OpenEXR
? формат графических файлов для хранения изображений с
широким динамическим диапазоном яркости
(HDRI). Создан
Industrial Light and Magic
, описание формата является открытым стандартом, а основное ПО для работы с ним распространяется под открытой лицензией, сходной с
BSD license
.
Значения цветности в каждом канале записываются в 16-битном формате с плавающей запятой (т. н.
Число половинной точности
? half precision; S5E10). Каждое значение содержит: знаковый бит, 5 бит экспоненты, 10 бит мантиссы. Также поддерживаются редко используемые режимы с 32 битами и с 24 битами на канал.
Поддерживается сжатие как с потерями, так и без них.
[2]
Позволяет хранить произвольное количество каналов в одном файле, в том числе: альфа-канал (общий или раздельный для каналов R, G, B), канал глубины, определяемые пользователем данные.
Формат был создан в 1999?2000 годах. В 2003 году была опубликована его спецификация и набор ПО для работы с ним.
OpenEXR может использовать различные методы сжатия:
[2]
- Без потерь:
- PIZ ? на основе вейвлет-преобразований; типичное сжатие в 2?3 раза
- ZIP ? с использованием библиотеки
zlib
; типичное сжатие около 2 раз
- RLE ? сжатие на 1/4?1/3
- С потерями:
- PXR24 ? сжатие 32-битных данных в формате с плавающей запятой, путём округления до 24 бит и сжатия разницы между смежными пикселями при помощи zlib
- B44 ? блоки 4 на 4 пикселя (32 байта) сжимаются до 14 байт. Только для 16-битных каналов с типом HALF
- B44A ? более совершенный вариант B44, который сжимает одноцветные области 4×4 пикселя до 3 байт
OpenEXR использовался при создании фильмов:
Гарри Поттер и философский камень
,
Люди в чёрном 2
,
Банды Нью-Йорка
,
Знаки
,
Tears of Steel
[3]
и других работах студии ILM.