基于SURF算法的图像匹配

发布时间:2024年01月18日

基础理论

2006Herbert Bay提出了SURF算法,该算法是对SIFT算法的改进,不仅继承了SIFT算法的优点,而且比SIFT算法速度快。下面是SURF算法的步骤。

1)建立积分图像

2)构建尺度空间

3)筛选特征点

4)计算特征点主方向

5)特征描述子生成

Matlab代码

%% 读取图像
I1= imread('baby1.JPG');  
I1=imresize(I1,0.6);     
I1=rgb2gray(I1);  
I2= imread('baby2.JPG');  
I2=imresize(I2,0.6);  
I2=rgb2gray(I2);?
%% 寻找特征点  
points1 = detectSURFFeatures(I1);  
points2 = detectSURFFeatures(I2);  ?
%% 计算描述向量  
[f1, vpts1] = extractFeatures(I1, points1);  
     [f2, vpts2] = extractFeatures(I2, points2); 
%% 进行匹配  
indexPairs = matchFeatures(f1, f2, 'Prenormalized', true) ;  
matched_pts1 = vpts1(indexPairs(:, 1)); 
matched_pts2 = vpts2(indexPairs(:, 2));  
?%% 显示
figure;
showMatchedFeatures(I1,I2,matched_pts1,matched_pts2,'montage');  
legend('matched points 1','matched points 2');    

输出图像

文章来源:https://blog.csdn.net/qq_20660115/article/details/135664745
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。