Получение значения пикселя изображения TIFF в Java

Пакет ImageIO не работает с изображениями .tif, и я не могу создать BufferedImage (класс, с которым я больше знаком) из файла .tif.

Как легко получить пиксельное значение изображения TIFF в Java? Как я могу сделать это FAST?

У меня нет опыта обработки изображений, и нам будет очень полезен некоторый пример кода!

Спасибо!

Ответ 1

Вам понадобится API расширенной визуализации Java: JAI для работы с изображениями TIFF.

Из описания JAI API:

TIFF

В дополнение к базовой спецификации, поддержка кодировщика и декодера PackBits, модифицированные кодировки (факс) Huffman и CCITT (факс), JPEG-in-TIFF (на TIFF Technical Note # 2) и схемы сжатия DEFLATE, могут обрабатывать изображения с 16- и 32-битные интегральные образцы и 32-битные сэмплы с плавающей запятой и могут считывать и записывать черепичные изображения всех поддерживаемых типов данных. Кроме того, декодер может распаковывать сжатые LZW-изображения.

Дополнительные возможности могут быть решены в будущем.

Одна страница многостраничного файла TIFF может загружаться наиболее легко, используя параметр страницы с оператором "TIFF", который задокументирован в комментариях класса javax.media.jai.operator.TIFFDescriptor. Здесь приведен пример кода, чтобы показать средство загрузки одной страницы многостраничного файла TIFF, используя непосредственно классы вспомогательных кодеков.

Попробуйте некоторые из этих руководств.