如何比较两个图像的质量?

时间:2012-06-27 13:43:50

标签: matlab image-processing image-comparison image-enhancement

我在特定的图像上应用了两种不同的图像增强算法并得到了两个合成图像,现在我想比较这两个图像的质量,以便找到这两种算法的有效性,并找到更合适的基于这两个图像的特征向量的比较。在这种情况下,我应该比较哪些合适的特征向量?

Iam在上下文中询问比较图像的纹理特征以及哪个特征向量更合适。

我需要数学支持来验证基于图像评估的任何一种算法的有效性,例如使用Constrast和Variance。那么有没有更多的方法呢?

4 个答案:

答案 0 :(得分:3)

更好的方法是通过比较图像光谱来做一些噪声/信号比?

答案 1 :(得分:1)

Slayton是对的,你需要一个指标和一种衡量它的方法,这本身就是一个学术项目。但是,我可以直接想到一种方法,不确定它对你手头的具体任务是否有意义:


<强>公制: 所有像素的abs(colour difference)之和。越低,图像越相似。

方式: 对于每个像素,获取原始图像和处理图像之间的LAB空间中的绝对色差(或精确的距离)并将其相加。不要破坏你的一天试图理解完整的维基百科文章和编码,这是以前做过的。尝试重复使用this PHP implementation中的方法getDistanceLabFrom(Color color)getDistanceRgbFrom(Color color)
当我需要一种匹配jpg图片中像素颜色的方法时,它对我来说就像一个魅力 - 这基本上是相同的原则。


它背后的理论(就我的有限理解而言):它正在对rgb或(更好的)实验室色彩空间进行数学抽象,作为一个三维空间,然后计算距离,这就是它运作良好的原因 - 以及从一维视角看颜色代码时,我几乎没有工作。

答案 2 :(得分:1)

通常的方法是从参考图像(一个好的图像)开始,然后在其上添加一些噪声(以受控方式)。

然后,您的算法应尽可能地从添加的噪声中删除。结果很容易与信噪比进行比较(见维基百科)。

现在,这种方法很容易应用于简单的噪声模型,但如果你的目标是改善更复杂的外观问题,你必须设计一种应用噪声的方法,这并不容易。

另一种常见的方法是使用slayton推荐的方法:让所有同事欣赏算法的输出,然后平均他们的印象。

答案 3 :(得分:0)

如果只有2张图像而没有参考(最高质量)图像,那么您可以在那里看到我的粗鲁解决方案/ bash脚本:https://photo.stackexchange.com/questions/75995/how-do-i-compare-two-similar-images-sharpness/117823#117823

它获取2个文件名并输出更高质量的文件名。假定图像的内容相同(相同的源图像)。 还是可以上当的。