Radiance HDR (.hdr)

Radiance Стандарт

Radiance RGBE (HDR) е основополагащият формат с висок динамичен диапазон, разработен за синтетичната система за изображения Radiance, съхраняващ фотометрично точни стойности на осветеността с помощта на споделен 8-битов експонент.

Инспектиране и метаданни

Операционните системи и файловите анализатори идентифицират HDR файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

100% поверително конвертиране в браузъра - файловете никога не напускат вашето устройство

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на хедъра (Magic Bytes)

Операционните системи и файловите анализатори идентифицират HDR файлове чрез проверка на началната двоична байтова последователност:

HEX ПОДПИС (ОФСЕТ 0):

23 3F 52 41 44 49 41 4E 43 45 0A

ASCII ПРЕДСТАВЯНЕ: #?RADIANCE\n

Стандартизация: Radiance Synthetic Imaging System Standard

Технически спецификации

Контейнерна архитектураASCII header ending with empty line followed by resolution string and binary RLE scanlines
КомпресияAdaptive adaptive run-length encoding (RLE) applied per-channel scanline
Поредност на байтовете (Endianness)Big-Endian / Network byte order
Цветови пространстваLinear Rec.709 RGB with CIE chromaticity coordinates
Канали и структураRGBE: Red, Green, Blue (8-bit mantissas) + shared 8-bit Exponent
Максимални размериPractically unlimited (32-bit unsigned resolution strings)
ПрозрачностNone (physical radiant luminance measurements)
Стрийминг и прогресивно зарежданеSequential scanline-by-scanline streaming playback

Техническа сравнителна матрица: HDR спрямо конкуренти

Технически атрибутHDR (Текущ)EXRTIFFJPEG
Пикселно кодиране32-bit RGBE (споделен 8-битов експонент)16-bit half / 32-bit float на каналЦяло число 8/16-bit или 32-bit float8-битово гама-кодирано цяло число
Основно приложение360-градусово осветление на околната среда (IBL)VFX многопасово композиранеФотография и предпечатСтандартна уеб графика
Обхват на динамичния диапазон76 порядъка (10^-38 до 10^38)Практически неограничен диапазон с плаваща запетаяВарира според цветовата дълбочинаОграничен 8-битов SDR диапазон
Поддържани каналиСамо RGBНеограничени произволни каналиМножество произволни каналиRGB / CMYK

Често срещани режими на повреда и ръководство за хекс възстановяване

Изображението показва хоризонтални ивици по цялата ширина на кадъра.

Първопричина: Повреден байт за броя на дължината на серията (RLE) при декомпресия на ред.

Възстановяване: Възстановете повредените маркери на редовете с помощта на File2File HDR Repair или конвертирайте в EXR.

Анализ на сигурността и вектори на атака към парсера

Декодерите за Radiance HDR често парсират ASCII заглавни редове с помощта на несвързани низови рутини, които могат да предизвикат препълване на стек буфера (stack buffer overflows).

Известни вектори на атака

  • Неограничени извиквания на sprintf/sscanf при четене на резолюционни низове ('-Y %d +X %d').
  • Писане извън рамките на паметта (heap out-of-bounds write) по време на декомпресия на деформиран RLE ред.
  • Препълване на цяло число (integer overflow) при получаване на целеви 32-битови буфери с плаваща запетая.

Защитни добри практики:

Исторически произход и етапи

2000Пол Дебевек популяризира базираното на HDR изображения осветление (IBL) в компютърната графика с помощта на Radiance .hdr файлове.
1997Адаптивното кодиране с дължина на серията (RLE) на редове е стандартизирано за намаляване на размерите на файловете.
1989Грег Уорд изобретява 32-битовото пикселно кодиране RGBE и формата .hdr в Националната лаборатория Лорънс Бъркли.

Основни предимства и плюсове

  • Компактен отпечатък в паметта от 32 бита на пиксел, обхващащ 76 порядъка на физическата светлинна осветеност.
  • Универсална поддръжка в софтуерите за 3D рендериране (Blender, Unreal Engine, Unity, Cinema 4D) за 360-градусови карти на околната среда.
  • Проста и надеждна файлова структура, лесно реализируема на всички софтуерни платформи.

Технически ограничения и минуси

  • В екстремно тъмни региони може да се появи квантуващо нанизиране (banding) поради кодирането със споделен 8-битов експонент.
  • RGB каналите не могат да съхраняват отрицателни числа или произволни многопасови слоеве.
  • До голяма степен заменен от OpenEXR за производство на визуални ефекти с множество пасове.

Интересни технически факти

  • Всеки Radiance HDR файл започва с текстовия заглавен ред '#?RADIANCE' или '#?RGBE'.
  • Форматът е създаден за симулиране на физическо архитектурно осветление при проектиране на сгради преди тяхното построяване.
  • Емблематичната статия на Пол Дебевек от 1997 г. на SIGGRAPH „Възстановяване на карти на сиянието с висок динамичен диапазон от фотографии" използва този формат, за да революционизира CGI осветлението.

Често задавани технически въпроси

За какво се използва HDRI файл в 3D?

HDRI (.hdr) файловете се използват като 360-градусови панорамни карти на околната среда за осигуряване на фотореалистично реално осветление, сенки и отражения върху 3D обекти.

Как работи RGBE 32-битовото кодиране?

Вместо да съхранява три отделни числа с плаваща запетая, RGBE използва по 8 бита за червено, зелено и синьо, плюс споделен 8-битов експонент, побирайки пълния HDR динамичен диапазон в едва 4 байта на пиксел.

Мога ли да конвертирам HDR в JPG?

Да. File2File.app може да прави тонов мапинг и да конвертира 32-битови Radiance HDR файлове в стандартни JPG или PNG изображения директно във вашия браузър.