Matlab 如何利用RANSAC对SIFT匹配结果进行单应性估计
在图像匹配中,我使用Matlab找到了两幅图像的对应向量,现在我必须估计单应矩阵。有什么简单的方法吗? 提前感谢理查德·哈特利(Richard Hartley)和安德鲁·齐瑟曼(Andrew Zisserman)的书是解决此类问题的优秀资源,他们还提供了一组Matlab函数来执行常见任务。查看并从_x_lin.m下载文件Matlab 如何利用RANSAC对SIFT匹配结果进行单应性估计,matlab,sift,homography,matlab-cvst,Matlab,Sift,Homography,Matlab Cvst,在图像匹配中,我使用Matlab找到了两幅图像的对应向量,现在我必须估计单应矩阵。有什么简单的方法吗? 提前感谢理查德·哈特利(Richard Hartley)和安德鲁·齐瑟曼(Andrew Zisserman)的书是解决此类问题的优秀资源,他们还提供了一组Matlab函数来执行常见任务。查看并从_x_lin.m下载文件vgg_H_,该文件使用线性方法估计两组点之间的单应性。下面是一个例子(一些完全虚构的数字): 或者,下载文件ransacfithomography_vgg.m,使用RANSAC
vgg_H_,该文件使用线性方法估计两组点之间的单应性。下面是一个例子(一些完全虚构的数字):
或者,下载文件ransacfithomography_vgg.m
,使用RANSAC计算单应性。这一次,您必须为RANSAC提供一个更高的阈值
x1 = [ 10 20; 13 23; 45 35 ].';
x2 = [ 103 301; 106 305; 80 229 ].';
H = ransacfithomography_vgg(x1, x2, 0.02);
最简单的方法是使用计算机视觉系统工具箱中的estimateGeometricTransform
函数 感谢这些非常有用的资源!我需要另一个澄清:我有一个匹配点的向量,那么这些点和'x1','x2'之间的关系是什么?x1
是图1中的点向量,x2
是图2中的点向量。它们的大小应该相同,因为x1
中的每一行对应于x2
中同一行中的匹配点。好的,因此,对于每个匹配,我必须在x1中放置图像1的(x,y,1),在x2中放置图像2的对应点(x1,y1,1)。对吧?我发现了一篇非常有趣的论文:
x1 = [ 10 20; 13 23; 45 35 ].';
x2 = [ 103 301; 106 305; 80 229 ].';
H = ransacfithomography_vgg(x1, x2, 0.02);