Введение
Формат файла Logluv TIFF — это кодировка, используемая для хранения данных изображений с высоким динамическим диапазоном внутри TIFF-файла. Изначально она была разработана Грегом Уордом для хранения HDR-вывода его фотонного мэппера Radiance, в то время, когда объём памяти был критически важным фактором. Реализация в TIFF также позволила комбинировать его с алгоритмами сжатия изображений без значительных усилий по программированию. Таким образом, это следует рассматривать как разумный компромисс, обусловленный существующими ограничениями. Он имеет некоторое сходство с RGBE, наиболее успешным форматом хранения HDRI, более ранней разработкой Грега Уорда.
Logluv TIFF is an encoding used for storing high dynamic range imaging data inside a TIFF image. It was originally developed by Greg Ward for storing HDR output of his Radiance photonmapper at a time where storage space was a crucial factor. Its implementation in TIFF also allowed the combination with image compression algorithms without great programming effort. As such it has to be considered a smart compromise between the imposed limitations. It is slightly related to RGBE, the most successful HDRI storage format, an earlier invention of Greg Ward.
Подробности
Конструкция Logluv TIFF решает две конкретные задачи: хранение изображений с высоким динамическим диапазоном и обеспечение этого хранения в разумном объеме. Традиционные форматы изображений обычно хранят данные пикселей в цветовом пространстве RGB, используя 24 бита, по 8 бит на каждый цветовой компонент. Это ограничивает диапазон воспроизводимых цветов подмножеством всех видимых и различимых цветов, что приводит к появлению артефактов квантования и отсечения, заметных человеческому глазу. Использование триплета чисел с плавающей точкой для представления RGB было бы жизнеспособным решением, но это увеличило бы размер файла в четыре раза (по 32 бита на каждый цветовой компонент вместо 8 бит). Вместо RGB, LogLuv использует логарифм яркости и хроматические координаты CIELUV (u’, v’) для обеспечения перцептивно однородного цветового пространства. LogLuv выделяет 8 бит для каждой из координат u’ и v’, что позволяет кодировать всю видимую цветовую гамму с практически неразличимыми шагами. Для обеспечения необходимого высокого динамического диапазона с неразличимыми шагами яркости, LogLuv использует 16 бит для кодирования логарифма яркости в фиксированной точке с основанием 2, что обеспечивает диапазон EV почти в 128 ступеней. Таким образом, объем, занимаемый одним пикселем, составляет 32 бита (L16 + U8 + V8), что лишь незначительно больше, чем у стандартного 8-битного RGB-изображения.
Расширение
В попытке предотвратить увеличение объема данных, Logluv представлен в 24-битном формате, который довольно сложным способом квантует яркость до 10 бит и объединяет каналы U и V в 14-битное табличное значение.
Использование
Logluv TIFF широко используется в приложениях HDRI, таких как IBL и имитационное освещение на основе изображений. Чтение и запись изображений Logluv TIFF осуществляется с помощью LibTIFF. LibTIFF свободно доступен как в исходном коде, так и в различных бинарных пакетах для разных платформ.
Ресурсы
HDRI, в работе Райнхарда и др. в третьей главе обсуждается формат Logluv TIFF. Для тех, кто интересуется изображениями Logluv, множество примеров можно найти на странице Грега Уорда Ларсона.