Подтвердить что ты не робот

100% библиотека Java для декодирования без потерь JPEG

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

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

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

4b9b3361

Ответ 1

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

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

С уважением.

Ответ 2

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

Ответ 3

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

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

В принципе, это будет работать:

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

Раскрытие информации: Я являюсь основным разработчиком/хранителем библиотеки.

Ответ 4

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

Ответ 5

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