matlab特征点提取

matlab特征点提取及匹配
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

提示:基于前辈的代码进行改进后可流畅运行。


使用步骤

代码如下(示例):


wahaha1 = imread('picture.jpg');
wahaha=rgb2gray(wahaha1);
scenceImage = imread('picture1.jpg');
sceneImage=rgb2gray(scenceImage);
boxPoints = detectSURFFeatures(wahaha);
scenePoints = detectSURFFeatures(sceneImage);

figure; 
imshow(wahaha);
title('左影像特征点');
hold on;
plot(selectStrongest(boxPoints, 100));
 
figure; 
imshow(sceneImage);
title('右影像特征点');
hold on;
plot(selectStrongest(scenePoints, 300));

 boxFeatures = extractFeatures(wahaha,boxPoints);
 sceneFeatures = extractFeatures(sceneImage,scenePoints);
boxPairs = matchFeatures(boxFeatures, sceneFeatures);


matchedBoxPoints = boxPoints(boxPairs(:, 1), :);
matchedScenePoints = scenePoints(boxPairs(:, 2), :);
figure;
showMatchedFeatures(wahaha, sceneImage, matchedBoxPoints, ...
    matchedScenePoints, 'montage');
title('Putatively Matched Points (Including Outliers)');

[tform, inlierBoxPoints, inlierScenePoints] = ...
    estimateGeometricTransform(matchedBoxPoints, matchedScenePoints, 'affine');
 
figure;
showMatchedFeatures(wahaha, sceneImage, inlierBoxPoints, ...
    inlierScenePoints, 'montage');
title('Matched Points (Inliers Only)');

有问题评论区留言共同讨论 __

posted @ 2021-04-27 19:42  yokon  阅读(69)  评论(0)    收藏  举报  来源