【发布时间】:2019-02-22 19:09:12
【问题描述】:
我有两个图像 image1 和 image2 表示为 2D numpy 数组。我想找到两者之间的差异图像,我认为它只是diff = image1-image2。但是,问题在于两张图片的大小不同,像素尺度也不同。
image1 具有形状 (600, 600) 和像素比例 = 2.757/5 弧秒。 image2 具有形状 (641, 641) 和像素比例 = 0.275 弧秒。它们都经过了归一化处理,使得二维数组中像素的总和为 1。
获取逐像素差异(差异图像)是没有意义的,除非它们都具有相同的像素比例,并且为了获得差异,它们必须具有相同的形状。我对如何做到这一点感到困惑,因为如果我对其中一个进行过采样或欠采样以达到相同的像素比例,那么形状仍然会有所不同。这可能吗?
【问题讨论】:
-
ndimage.zoom 可以使图像具有相同的形状。如果像素比例很重要,则无需进行任何计算:只需说图像不同,因为其中一张显示的区域比另一张大。
-
我认为您应该考虑每张图像所跨越的实际距离。然后将较小的(以实际距离单位)图像与较大图像的像素比例进行比较,对齐图像(您必须找到它们之间的对应关系以进行比较......它是主要点吗?),然后您将较大的图像裁剪到较小图像的边界。然后,你可以比较
标签: python python-3.x image numpy pixel