100% библиотека Java для декодирования JPEG без потерь - PullRequest
14 голосов
/ 18 апреля 2011

Я ищу библиотеку на 100% Java, которая могла бы декодировать изображения JPEG с jpeg-lossless сжатием.

Я знаю, что ImageIO и JAI уже могут декодировать эти изображения, но им нужен собственный код, который существует не для всех ОС.

Я бы рассматривал решения с открытым и закрытым исходным кодом, как плагин ImageIO или как отдельный.

Ответы [ 6 ]

4 голосов
/ 18 апреля 2011

Марко Шмидт давно написал удобный «Список библиотек Java для чтения и записи файлов пиксельных изображений».Сейчас его нет в сети, но все еще можно просмотреть с помощью Wayback Machine (как было показано в 2009 году)Я не знаю, есть ли там декодеры JPEG без потерь , но это может быть хорошим местом для начала поиска.

2 голосов
/ 04 сентября 2017

TwelveMonkeys ImageIO уже некоторое время поддерживает JPEG без потерь.

Я думаю, что он начинался с той же кодовой базы, что и rii-mango / JPEGLosslessDecoder , но главное отличие / преимущество в том, что он использует стандартный API ImageIO.

В основном это будет работать:

BufferedImage image = ImageIO.read(new File("my-lossless-jpeg.jpg"));

Раскрытие информации: я главный разработчик / сопровождающий библиотеки.

2 голосов
/ 11 января 2012

Пожалуйста, посмотрите на отличную работу Дэвида Клуни, это действительно лучший способ!
[Обновление 09/2017] Д. Клуни обновил свой кодек
http://www.pixelmed.com/jpeg.html
http://www.dclunie.com/pixelmed/software/codec/

Это автономный кодек JPEG, который реализует выборочное редактирование блоков для использования во время деидентификации. Он также поддерживает распаковку изображений JPEG без потерь.

Привет.

0 голосов
/ 01 декабря 2015

Найдено Grossroots DiCoM , который может делать то, что вы хотите. У него есть привязки для Java. Библиотека очень мощная и написана на C ++. Вам нужно будет собрать его и импортировать встроенный файл JAR. Я прочитал файл DICOM без потерь в формате JPEG и преобразовал его в BuffredImage, используя этот пример.

0 голосов
/ 26 апреля 2011

Вы можете попробовать ImageMagick и его интерфейс Java с открытым исходным кодом JMagick , я вижу, что он был стабильным и быстрым.

0 голосов
/ 26 апреля 2011

Кажется, у вас может быть ответ здесь: Я не могу получить ImageReaderByFormatName ("jpeg-lossless")

Надеюсь, это поможет -

Перри

...