如何检测主观图像质量

20

对于一个图片上传工具,我希望能够自动检测图像的(主观)质量,并给出一个质量评分。

我有以下启发式想法来实现这个目标:

  • 显然将分辨率纳入评分之中。
  • 将图像压缩为JPG(75%),再解压并比较JPG大小和解压后大小以得到比率。图像越模糊,比率越高。

很明显,如果要对大型的图片进行评分,我的方法将耗费大量的计算和内存资源,尽管在我的场景下这样做是可行的(服务器性能强,上传不频繁),而且如果图像超过一定分辨率,我可以始终在更昂贵的步骤周围建立一个“短路”。

还有别的尝试方法吗?或者有没有更高效的实现方式呢?


我删除了Python标签,因为它似乎不相关。 - Ian Hopkinson
似乎你正在测量图像的分辨率、对比度和清晰度,这是“客观”的,与“主观质量”非常不同。主观质量是由观看者感受到的,无法通过程序确定,因为即使两个人也不会达成一致意见。 - Galghamon
这就是机器学习方法发挥作用的地方。但目前的结果并不令人惊讶,通常需要大量的计算能力。 - Anonymous
这篇由周旺、哈米德·谢赫和艾伦·C·博维克所写的论文可能会是那些需要此类功能的人的起点。https://ece.uwaterloo.ca/~z70wang/publications/icip02.pdf - eremzeit
1
这是一个深奥难解的问题。几乎任何用于鉴定质量的算法都会在简单的反例上失败(例如,你的方法可能会将一个由清晰的随机噪点组成的图像评为高质量,因为这样的图像不易压缩)。我一直在研究这个问题,几乎得出结论:这样的算法只能存在于严格定义的图像范围内,而其他严格定义的图像范围则需要各自的算法。一个有效而通用的答案是无价的。 - Joseph Myers
1
这篇文章 https://towardsdatascience.com/automatic-image-quality-assessment-in-python-391a6be52c11 可能会有所帮助。 - scc
5个回答

11

评估图像(音频或视频同理)质量并不是一项容易的任务,有许多出版物探讨这个问题。

很多方面都取决于图像的性质——对于人工创建的图像(如图表),适用于不同的标准,对于自然图像(如照片)也是如此。必须考虑到微妙的影响,例如颜色遮罩、亮度遮罩、对比度感知。对于某些图像来说,给定的压缩比是完全足够的,而对于另一些图像,它将导致显著的质量损失。

这里有一份免费的出版物,简要介绍了图像质量评估的主题。

你提到的方法——压缩图像并将结果与原始图像进行比较——远非完美。你打算使用什么度量标准?MSE?每个块的MSE?确实很容易实现,但结果很难解释(考虑具有高频成分和没有高频成分的图像)。

如果您想进一步深入研究图像质量评估领域,机器学习社区也做了很多研究。


6
您可以尝试查看图像的EXIF标签(使用类似exiftool的工具),您得到的结果会有很大不同。例如,在我的单反相机上,您甚至可以知道拍摄时哪些对焦点是活动的。还可能有关于压缩质量的信息。
另一个要检查的是图像直方图-注意偏向左侧的图像,这表明曝光不足或有很多过饱和的像素。
对于图像模糊,您可以查看傅里叶变换的高频分量,这可能已经访问与JPG压缩相关的参数。
这是一个有点棘手的领域,因为您可能能够实施的大多数“规则”都可以出于艺术效果而打破。

6
我想反驳“显然合并分辨率”的观点。分辨率并不能告诉你什么。我可以将图像按比例缩放2倍,使像素数量增加4倍。这完全没有添加任何信息,也不会提高质量。
我不确定“压缩为JPG”这个想法。JPG是一种面向照片的算法。并非所有的图像都是照片。此外,蓝天压缩得很好。均匀灰色甚至更好。你认为确切的云朵类型决定图像质量吗?
锐度也是一个不好的想法,原因类似。景深与图像质量并不是简单相关的。在黑色背景下拍摄的物品将有很多像素具有相当低的强度,这是故意的。同样,这并不表示曝光不足,因此直方图本身并不是一个好的质量指标。

3

但是如果这些照片是“商业性的”呢?如果这些照片是日常物品并且故意不艺术化,那么现有技术的价值还存在吗?

如果我雇佣了数百人拍摄公园长椅的照片,我想要快速知道哪些照片质量更好(对焦、光线充足),哪些照片质量较差。我不想要猫、人、日落等照片。

或者,如果这些照片应该是目录中商品的图片?没有模特,只有服装。图像质量处理是否有帮助?


1
我也非常有兴趣了解照片模糊程度的计算方法。
这样做怎么样:
1. 压缩成JPEG格式后,测量图像的字节大小 2. 将图像缩小到四分之一 3. 使用一些基本插值方法将其放大4倍 4. 使用JPEG压缩该版本 5. 比较两个压缩图像的大小。
如果大小没有显著减小(超过某个百分比阈值),则缩小和放大不会丢失太多信息,因此原始图像与被缩放的图像相同。

这里的逻辑是什么?如果图像模糊,大小差异会更大吗? - sarfrazanwar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接