在 Java 中获取图像质量与 ImageMagick 的 "identify" 命令相同
Get image quality in Java in the same way as ImageMagick's "identify" command
我正在尝试使用 Java 获得图像质量,但我很难找到可以做到这一点的任何 API。
我偶然发现了 ImageMagick 命令 identify
,它工作得很好,但我想知道是否有 Java API 可以做类似的事情。
Here is ImageMagick command that I found
如何使用 Java 获得图像的质量?
The ImageMagick website 有一个页面列出了多种编程语言的 API,包括 Java。这些可用于从 Java 程序中获取质量。
列出的两个 Java 库是 JMagick and Im4java:
JMagick provides an object-oriented Java interface to ImageMagick. Im4java is a pure-java interface to the ImageMagick command-line.
请注意,JMagick link 似乎已损坏。网络搜索表明 GitHub 上的 htechblue/jmagick 分支是最近维护的替代品。
这些库中的任何一个都应该可以从 Java 程序中获取质量。
要计算图像的压缩率,您可以将实际文件大小与存储图像时得到的大小进行比较 "raw"。
例如,一个 1024x1024 的 jpeg 文件,真彩色 (24bpp) 为 384Kb,您将得到 (384x1024) / (1024x1024x3) = 0.125 的比率,这意味着 jpeg 生成的文件占原始图像的 12% .
无需解压缩图像。
我正在尝试使用 Java 获得图像质量,但我很难找到可以做到这一点的任何 API。
我偶然发现了 ImageMagick 命令 identify
,它工作得很好,但我想知道是否有 Java API 可以做类似的事情。
Here is ImageMagick command that I found
如何使用 Java 获得图像的质量?
The ImageMagick website 有一个页面列出了多种编程语言的 API,包括 Java。这些可用于从 Java 程序中获取质量。
列出的两个 Java 库是 JMagick and Im4java:
JMagick provides an object-oriented Java interface to ImageMagick. Im4java is a pure-java interface to the ImageMagick command-line.
请注意,JMagick link 似乎已损坏。网络搜索表明 GitHub 上的 htechblue/jmagick 分支是最近维护的替代品。
这些库中的任何一个都应该可以从 Java 程序中获取质量。
要计算图像的压缩率,您可以将实际文件大小与存储图像时得到的大小进行比较 "raw"。
例如,一个 1024x1024 的 jpeg 文件,真彩色 (24bpp) 为 384Kb,您将得到 (384x1024) / (1024x1024x3) = 0.125 的比率,这意味着 jpeg 生成的文件占原始图像的 12% .
无需解压缩图像。