Python 在图像比较之前要遵循哪些预处理步骤?

Python 在图像比较之前要遵循哪些预处理步骤?,python,scipy,scikit-image,Python,Scipy,Scikit Image,例如,我尝试使用skimage-SSIM查找两幅图像之间的相似性。代码块如下所示 from skimage.measure import compare_ssim as ssim from skimage import io from skimage.transform import resize a = io.imread("http://ecx.images-amazon.com/images/I/51PV4Dd8wAL._AC_UL246_SR190,246_.jpg",as_grey=

例如,我尝试使用
skimage-SSIM
查找两幅图像之间的相似性。代码块如下所示

from skimage.measure import compare_ssim as ssim
from skimage import io
from skimage.transform import resize

a = io.imread("http://ecx.images-amazon.com/images/I/51PV4Dd8wAL._AC_UL246_SR190,246_.jpg",as_grey=False,dtype="float64")
b = io.imread("http://ecx.images-amazon.com/images/I/914ZHE6JolL._UY500_.jpg",as_grey=False,dtype="float64")

a = resize(a,b.shape)
ssim(a, b,multichannel=True)
0.21009350738786017
我得到的相似性分数如下

from skimage.measure import compare_ssim as ssim
from skimage import io
from skimage.transform import resize

a = io.imread("http://ecx.images-amazon.com/images/I/51PV4Dd8wAL._AC_UL246_SR190,246_.jpg",as_grey=False,dtype="float64")
b = io.imread("http://ecx.images-amazon.com/images/I/914ZHE6JolL._UY500_.jpg",as_grey=False,dtype="float64")

a = resize(a,b.shape)
ssim(a, b,multichannel=True)
0.21009350738786017
虽然这两张图片都是相同的,其中一张图片的方向稍微有点偏,但我在这个比较中得到的分数非常低。在计算比较图像之前,是否缺少任何预处理步骤。如果是这样,在比较图像之前我应该考虑什么?< /P>
提前谢谢

只要调整图像大小以放大/缩小以匹配其他图像,就会产生结构上的差异。 当您缩小图像时,一些值被聚合(比如像素化)。放大时,会再次修改值。因此,在这两种情况下,所有通道中的信息都会丢失/聚集

这总是会产生结构性差异。
Ssim最好用于原始大小相同的图像。(未调整大小)

仅调整图像大小以放大/缩小以匹配其他图像总是会产生结构差异。 当您缩小图像时,一些值被聚合(比如像素化)。放大时,会再次修改值。因此,在这两种情况下,所有通道中的信息都会丢失/聚集

这总是会产生结构性差异。 Ssim最好用于原始大小相同的图像。(未调整大小)