我拍摄了 2 张带有交叉点的图像,现在我尝试比较这 2 张图像并找出移动的距离和角度。我如何使用 MATLAB 来做到这一点?非常感谢!

Pic3 Pic2

有帮助吗?

解决方案

对齐同一场景的两张图像是调用 图片注册。如果您有权访问图像处理工具箱,您可以在那里找到一些功能帮助您

请查看这些图片注册演示

其他提示

如果这些黑线始终出现在图像中,并且它们接近完全笔直(不会扭曲成曲线),则更好的方法是使用 霍夫变换 或者 氡变换 (思考做同一件事的不同方式)找到两条黑线,然后比较它们的位置。

您首先要反转图像,使线条呈亮白色(大值),然后进行霍夫变换。每个图像的输出将是两个明亮的白点,您可以从中进行峰值检测。每个峰的坐标告诉您线的角度和偏移。

我还没有在 MATLAB 中完成此操作,但我看到了许多示例和文档:

互相关(维基百科称之为相位相关)如果图像不起作用旋转。但是,有一个基于对数极坐标的相关方法无论旋转,缩放,剪切和平移,它都能正常工作。

如果您必须匹配任意图像,此方法最佳。使用其他方法可以更好地匹配已知形状或暗线。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top