用于Lucas kanade逼近的SIFT仿射变换矩阵的关键点

时间:2018-06-19 15:08:57

标签: python-3.x opencv computer-vision

我已经从两个不同的场景计算出SIFT关键点。我需要给一个初始的仿射变换矩阵,以便为卢卡斯·坎达近似创建一个模板。

基本上从第一个场景中获取模板图像,然后将该模板强加到下一个场景中。更正关键点位置错误。

任何解决此问题的线索,将不胜感激。

1 个答案:

答案 0 :(得分:0)

为了从关键点获得仿射变换,您需要调用opencv函数“ getAffineTransform(keypoints_vector1,keypoiints_vector2)”。这将返回您所需的矩阵。例如:

假设您有2个图像的两个关键点向量:

vector<Point2f> vec1;
vector<Point2f> vec2;

假设您有需要的名字“ affine_mat”的垫子

Mat affine_mat( 2, 3, CV_32FC1 );

您将opencv函数称为:

 affine_mat= getAffineTransform( vec1, vec2);

此仿射矩阵将帮助您继续进行LK方法。