Я хотел бы активно сжать некоторые научные 16-битные файлы изображений в градациях серого, но без уменьшения динамического диапазона. Это возможно?
Я понимаю, что формат JPEG использует сжатие с потерями и, следовательно, изменчиво агрессивно, но поддерживает только 8 бит на канал цвета.
Формат PNG поддерживает 16-битные изображения в градациях серого, но поддерживает только сжатие без потерь, что ограничивает степень сжатия файлов.
Формат TIFF также поддерживает 16-битные изображения в градациях серого, но, насколько мне известно, не поддерживает стандартное сжатие 16-битных изображений с потерями.
jpeg
hdr
black-and-white
file-format
image-compression
Кристофер Брунс
источник
источник
Ответы:
Похоже, что вы ищете JPEG2000. Он имеет ряд параметров, включая 16-битное сжатие с потерями и лучшие коэффициенты сжатия, чем JPEG. Он не получил такого широкого распространения, как хотелось бы (по целому ряду причин), и может иметь некоторые проблемы с патентами, которые могут затруднить использование в определенных ситуациях, но в остальном он соответствует вашим потребностям.
Лично, если бы я был на вашем месте, я бы сказал, что хранилище дешево и использовал бы PNG, который является правильно определенным и бесплатным стандартом.
источник
JPEG2000, и вы также можете посмотреть на OpenEXR, потому что он поддерживается видеооборудованием.
источник
Максимальный динамический диапазон линейного 8-битного кодирования составляет всего 8 ступеней, однако динамический диапазон, который можно сохранить с помощью нелинейного кодирования, безграничен.
Поэтому я бы посоветовал вам применить сильную кривую тона к изображениям, и тогда вы сможете использовать стандартный JPEG без потери динамического диапазона. Если вы хотите использовать исходные изображения, преобразуйте их в 16-битные и примените обратную тональную кривую.
Это, конечно, если динамический диапазон является вашей единственной задачей. Если вам также необходимо сохранить тональный диапазон, вам, возможно, придется свернуть собственное сжатие с потерями ...
источник