我想测试两张图片是否匹配,部分匹配也很重要。问题是这些图像受到很强的噪声干扰,并且可能会以未知角度旋转。这些图像中显示的对象大致上始终具有相同的比例大小。
这些图像从俯视角度进行区域扫描。 "线" 大多数是墙壁,其他对象大多是树木和不同种类的植物。
另一个问题是左边的图像非常模糊,而右边的线条非常细。为了弥补这种差异,我使用了膨胀处理。上传的图像就是处理后的结果。
虽然可以轻松地看出这些图像几乎完美匹配,但是我的算法并不认同这一点。我的第一个想法是基于特征的匹配,但是匹配效果很差。只有-90°、0°和90°的旋转角度才能工作。尽管大多数描述符都具有旋转不变性(在过去的项目中确实如此),但在这个例子中,旋转不变性似乎失效了。
我的第二个想法是将图像分成几个较小的片段,然后使用模板匹配。因此,我对图像进行了分割,在人眼看来它们很容易匹配。这一步的目标是将不同的墙壁和树木/植物进行分割。
上面一行是左侧图像的局部,下面是右侧图像的局部。在分割后,片段再次进行了膨胀处理。
如前所述,模板匹配失败了,轮廓匹配也失败了。我认为对图像进行膨胀处理非常重要,因为在分割之前,人眼几乎无法匹配这些片段。在分割后进行的另一次膨胀处理使得这更加容易。
这些图像从俯视角度进行区域扫描。 "线" 大多数是墙壁,其他对象大多是树木和不同种类的植物。
另一个问题是左边的图像非常模糊,而右边的线条非常细。为了弥补这种差异,我使用了膨胀处理。上传的图像就是处理后的结果。
虽然可以轻松地看出这些图像几乎完美匹配,但是我的算法并不认同这一点。我的第一个想法是基于特征的匹配,但是匹配效果很差。只有-90°、0°和90°的旋转角度才能工作。尽管大多数描述符都具有旋转不变性(在过去的项目中确实如此),但在这个例子中,旋转不变性似乎失效了。
我的第二个想法是将图像分成几个较小的片段,然后使用模板匹配。因此,我对图像进行了分割,在人眼看来它们很容易匹配。这一步的目标是将不同的墙壁和树木/植物进行分割。
上面一行是左侧图像的局部,下面是右侧图像的局部。在分割后,片段再次进行了膨胀处理。
如前所述,模板匹配失败了,轮廓匹配也失败了。我认为对图像进行膨胀处理非常重要,因为在分割之前,人眼几乎无法匹配这些片段。在分割后进行的另一次膨胀处理使得这更加容易。