如何找到 JPG 质量?

如何找到 JPG 质量?

当我使用 GIMP 保存 JPG 文件时,我可以调整保存的质量,范围从 0 到 100(我使用 89)。我似乎使用过一款应用来查看保存文件中的这个数字,但如果我这样做了,我无论如何也想不出它到底是多少。有什么建议吗?

答案1

一旦保存,就无法再分辨其质量。

(保存时设置质量只是告诉软件您可以接受多少损失,但一旦保存,丢失的就丢失了。您需要一个人来判断某些东西是否好看。)

嗯,我想我错了。我仍然认为上面的内容是正确的,但是图像魔术师identify证明我错了吗?

识别-verbose myimage.jpg

图片:myimage.jpg
  格式:JPEG(联合图像专家组 JFIF 格式)
  类:DirectClass
  几何:358x240+0+0
  分辨率:300x300
  [...]
  压缩:JPEG
  品质:90
  方向:未定义
  [...]

我不知道测试中的图像是如何保存的,但它没有任何 EXIF 数据。图像中还能保留质量吗?

答案2

补充 Arjan 的回答:

ImageMagickidentify似乎实际上查看了 JPEG 图像内部来猜测用于对其进行编码的质量设置。

ImageMagick 的源代码(为免费软件欢呼 :-))包含以下行

/*
  Determine the JPEG compression quality from the quantization tables.
*/
sum=0;
for (i=0; i < NUM_QUANT_TBLS; i++)
{
  if (jpeg_info.quant_tbl_ptrs[i] != NULL)
    for (j=0; j < DCTSIZE2; j++)
      sum+=jpeg_info.quant_tbl_ptrs[i]->quantval[j];

coders/jpeg.c在我最新版本的 ImageMagick 源代码中,第 843 行以下)。

我对 JPEG 了解不够多,无法真正理解,但它似乎做了类似本文所述的事情:

使用 Visual C# .NET 确定 JPEG 质量因素(链接于 2018 年 1 月失效;2015 年存档于 archive.org

所以是的,identify实际上可以仅从压缩文件中确定 JPEG 的质量设置(尽管结果可能并不总是完全准确)。

答案3

正如 Arjan 提到的identify -verbose myimage.jpg那样。由于 imagemagick 是一个 CLI 工具,它可能对脚本有用。这种方法identify -verbose myimage.jpg | grep ...非常慢。我建议像这样使用 IM

identify -format '%Q' myimage.jpg

它的速度快得多。

答案4

Picasa 3 具有显示 jpeg 质量的属性窗格,但它目前已不再使用。 Picasa 3 迪克·马斯特森

相关内容