SSIM 的 Python 实现算是图像里蛮实用的一招,是在做压缩、超分、去噪那类质量对比的时候,效果直观。

用起来也不麻烦,scikit-image里的structural_similarity函数挺好用,配合imageio就能快速算出两张图的相似度值。

你只要装好库:

pip install scikit-image imageio

读图、转灰度、对齐尺寸,一行代码就能出结果:

ssim_value = measure.structural_similarity(image1, image2, multichannel=False)

这值范围在-1 到 1 之间,越接近 1 就越像。对了,如果你是彩色图,multichannel=True别忘了。

SSIM 背后的数学原理也不复杂,主要考虑了亮度对比度结构信息,相比 PSNR 之类的老方法,更贴近人眼视觉。想深入的可以看看公式部分。

对了,我还翻了个叫pyssim-master的源码包,里面貌似还有自定义实现,适合你想研究优化或改成自己的模块。

如果你是做图像压缩、传输质量评估或者搞图像增强算法的,这方法真的挺适合。