用于JPEG无损解码的100%Java库

我正在寻找一个100%Java的库,可以用jpeg无损压缩解码JPEG图像。

我知道ImageIOJAI已经可以解码这些图像,但它们需要一个本机代码,并不是所有操作系统都存在。

我会考虑开源和关闭源解决方案,如ImageIO插件或独立。

很久以前,Marco Schmidt写了一篇方便的“Java库来读写像素图像文件”。 它已经从网上消失了,但仍然可以使用Wayback Machine 查看它(如2009年所见)。 我不知道那里是否有任何无损 JPEG解码器,但它可能是一个开始搜索的好地方。

TwelveMonkeys ImageIO已经支持无损JPEG一段时间了。

我认为它开始时使用与rii-mango / JPEGLosslessDecoder相同的代码库,但它的主要区别/优点是它使用标准的ImageIO API。

基本上,这将工作:

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

披露:我是图书馆的主要开发者/维护者。

请看看David Clunie的伟大作品,这真是最好的方法!
[更新09/2017] D. Clunie更新了他的编解码器
http://www.pixelmed.com/jpeg.html
http://www.dclunie.com/pixelmed/software/codec/

这是一个独立的JPEG编解码器,可实现选择性块编校,以便在去识别时使用。 它还支持无损JPEG图像的解压缩。

问候。

你可以试试ImageMagick和他的开源Java界面JMagick ,我看到它稳定而快速。

找到了可以做你想做的Grossroots DiCoM 。 它具有Java绑定。 该库非常强大,它是用C ++编写的。 您将不得不构建它并导入构建的jar文件。 我读了一个jpeg-lossless DICOM文件,并使用这个例子将其转换为BuffredImage。

似乎你可能在这里有一个答案: 我无法获得ImageReaderByFormatName(“jpeg-lossless”)

希望有所帮助 –

佩里