给出两个相同大小的单色图像。两者都预先对齐/锚定到一个共同点。原始图像的某些点确实移动到新图像中的新位置,但不是线性方式。
下面是原始(红色)和变换图像(绿色)叠加的图片。我现在正在寻找的是""个人"积分转移"。
起初我想到了整个矩阵的简单平均相关性或某种相位相关性,但我想知道是否有更好的方法。
我已经找到了link,但它没有那么多帮助。目前我在Matlab中实现了这一点,但这不应该是我想的。
更新为清晰起见:我有数百个这样的图像对,我想比较它们的相似程度。它不一定是最花哨的算法,而且很容易实现并且能够很好地估计相似性。
答案 0 :(得分:1)
非正统的方法使用RASL来对齐图像对。这里有一个python实现:https://github.com/welch/rasl,它也是 提供了RASL作者原始MATLAB实现的链接。
你可以给RASL一对相关的图像,它将解决 最好的转换(缩放,旋转,翻译,你选择) 覆盖图像中的像素。变换参数向量 找到每个图像,参数的差异说明它们之间的“相距甚远”(就变换参数而言)
这不是预期用途 RASL,用于对齐大量相关图像,同时对齐和照明的变化无关紧要。但我只是在一对抖动的图像上尝试了它,它运行得很快。 我可以添加一个明确执行此操作的shell命令(我是python实现的作者)如果我收到鼓励:)(今天,你需要编写几行python来加载你的图像并返回结果对齐差)。
答案 1 :(得分:0)
您可以尝试使用光流。 http://www.mathworks.com/discovery/optical-flow.html。
它通常用于测量物体从第T帧到第T + 1帧的移动,但您也可以在您的情况下使用它。你会得到一张地图,告诉你"偏移" Image1中的每个点都移动到Image2。 然后,如果你想要一个能给你一个"距离"在图像之间,您可以平均像素值或类似的东西。