我拍摄了两张带有交叉点的图像,现在我正在尝试比较这两张图像并找出移动的距离和角度。如何使用MATLAB执行此操作?非常感谢你!
答案 0 :(得分:1)
对齐同一场景的两张图像为called image registration。如果您有权访问图像处理工具箱,则可以找到functions到help you的数量。
答案 1 :(得分:0)
如果图像被旋转,则互相关(维基百科称之为Phase correlation)将不起作用。但是,无论旋转,缩放,剪切和平移如何,都会有related method based on log-polar coordinates。
如果您必须匹配任意图像,此方法最佳。使用其他方法可以更好地匹配已知形状或暗线。
答案 2 :(得分:0)
如果这些黑线总是在图像中,并且它们非常接近直线(不会被扭曲成曲线),那么更好的方法是使用Hough transform或Radon transform(类型的不同的思考做同样事情的方法)找到两条黑线,然后比较它们的位置。
首先反转图像,使线条变为亮白色(大值),然后进行霍夫变换。每个图像的输出将是两个亮白点,您可以从中进行峰值检测。每个峰的坐标告诉您线的角度和偏移。
我还没有在MATLAB中做过这个,但我看到了很多例子和文档:
hough
,houghlines
和houghpeaks
函数