Изображение OpenEXR (.exr)

Academy Стандарт

OpenEXR е професионален HDR формат за изображения, използван във филмови и визуални ефекти. Поддържа 16-битови half и 32-битови пиксели с плаваща запетая, множество канали и слоеве.

Проверка и метаданни

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

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

Поверително - файловете никога не напускат устройството ви

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

Байтов подпис на заглавката (сигнатурни байтове)

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

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

76 2F 31 01

ASCII ПРЕДСТАВЯНЕ: v/1.

Стандартизация: Academy Software Foundation (ASWF) Open Standard

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

Контейнерна архитектураРазширяем контейнер на блокове, който поддържа произволни канали, части и слоеве с дълбочинни данни
КомпресияPIZ (уейвлет), ZIP/ZIPS, RLE, B44/B44A, DWAA/DWAB (DCT със загуби) или без компресия
Поредност на байтовете (Endianness)Младши байт първи (Little-Endian, Intel x86)
Цветови пространстваLinear ACEScg, ACES2065-1, Linear Rec.709, Произволни координати на цветността
Канали и структураПроизволни имена на канали (R, G, B, A, Z-depth, Normal, WorldPos, MotionVectors, Cryptomatte)
Максимални размериПрактически неограничен размер (поддържа плочки за дълбоко приближаване и многогигапикселови граници на платното)
ПрозрачностПълноценен алфа канал с плаваща запетая и масиви от обемни проби за дълбочинно композиране
Поточно предаване и прогресивно зарежданеПоточно четене по редове или плочки за бързо частично четене на кадри и рендиране на прокси изображения

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

Технически атрибутEXR (Текущ)HDRTIFFPNG
Динамичен обхват16-битов half и 32-битов float с линейно кодиране8-битов споделен експонент (RGBE)Цяло число 8/16-bit или 32-bit floatСтандартно 8-битово / 16-битово цяло число
Многоканални рендер пасовеНеограничен брой произволно именувани канали и частиСамо RGBОграничена поддръжка на слоевеСамо RGBA
Използване в индустриятаШироко използван в работните процеси за визуални ефекти и 3D продукцияНаследено 3D осветление / панорамаПредпечат и фотографияПоддръжката зависи от програмата.
Управление на цветоветеВградена интеграция с ACES и OpenColorIOСпециална гама/линейно кодиранеICC тагове за профилsRGB/ICC тагове

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

Изображението се показва напълно тъмно или преекспонирано, с ярки бели петна.

Първопричина: Липсва трансформация от линейно цветово пространство към sRGB дисплей или е зададено неправилно ACES цветово пространство.

Възстановяване: Приложете ACEScg или трансформация на тоналната крива от линейно към sRGB в HDR Viewer на File2File.app.

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

Сложните парсери на OpenEXR на блокове трябва стриктно да валидират дефинициите на каналите и границите на плочките, за да избегнат проблеми с безопасността на паметта.

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

  • Целочислено препълване при изчисляване на стъпката на многоканалния буфер в libopenexr.
  • Четене извън границите на heap паметта при декомпресиране на поток PIZ или DWAA.
  • Отказ на услугата чрез дълбоко вложена рекурсия в заглавката на многокомпонентни блокове.

Най-добри практики за защита: Декодирайте EXR файлове в изолирани WebAssembly компилации с безопасно управление на паметта и строги ограничения за размерите на плочките.

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

2020OpenEXR 3.0 е пуснат под егидата на Academy Software Foundation и осъвременява многопоточната обработка.
2013OpenEXR 2.0 въвежда композиране с Deep Data и структури с няколко части на изображението.
2003След използването му във филма „Хари Потър“ Industrial Light & Magic публикува OpenEXR като отворен код под модифициран BSD лиценз.
1999Инженерите на ILM Florian Kainz, Rod Bogart и Drew Hess създават формата като заместител на 8-битовите Cineon/DPX.

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

  • Вградената поддръжка на 16-битов half-float (FP16) и 32-битов float (FP32) запазва широк диапазон на яркост - от пряка слънчева светлина до дълбоки сенки.
  • Архитектурата с произволен брой канали обединява всички 3D рендер пасове (beauty, diffuse, specular, depth, cryptomatte) в един файл.
  • DWAA и DWAB са кодеци със загуби, предназначени за ефективна компресия на изображението; видимите разлики може да са фини или забележими според настройките и съдържанието.

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

  • Файловете са големи при запис на некомпресирани многослойни 4K/8K рендер пасове с дълбочина 32 бита.
  • В потребителския софтуер декомпресирането на много канали натоварва процесора и паметта.
  • За правилно показване на стандартни sRGB дисплеи са нужни трансформации за управление на цветовете (ACES или OCIO).

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

  • Industrial Light & Magic изобретява 16-битовия тип данни с плаваща запетая „half“ специално за формата OpenEXR.
  • Първите четири сигнатурни байта на всеки EXR файл са 0x76 0x2F 0x31 0x01, което съответства на ASCII низа „v/1\x01“.
  • OpenEXR поддържа „Deep Data“, при което един пиксел съхранява множество цветови и дълбочинни проби на различни разстояния през полупрозрачен дим и облаци.

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

Защо OpenEXR се използва в някои работни процеси за визуални ефекти?

Запазва HDR данни с висока точност и поддържа множество канали, части и данни за дълбочина при композиция.

Каква е разликата между half float и float в EXR?

Half float използва 16 бита на цветен канал и осигурява динамичен обхват от 30 стъпки при половината от размера на файла спрямо пълен 32-битов float, което го прави предпочитан за основните рендери.

Как мога да конвертирам EXR в стандартен PNG или JPG?

Можете да конвертирате EXR файлове в изображения PNG или JPG с тонално мапиране чрез File2File.app направо в браузъра.