用于JPEG无损解码的100%Java库
我正在寻找一个100%Java的库,可以用jpeg无损压缩解码JPEG图像。
我知道ImageIO和JAI已经可以解码这些图像,但它们需要一个本机代码,并不是所有操作系统都存在。
我会考虑开源和关闭源解决方案,如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”)
希望有所帮助 –
佩里