赞
踩
本文介绍如何使用 MATLAB 进行图像特征检测,包括 BRISK、MSER、FAST、Harris、SURF 和 MinEigen 特征检测方法,并展示相应的代码和结果图。
clc,clear;
I = imread('cameraman.tif');
points = detectBRISKFeatures(I);
figure(1),imshow(I); hold on;title('BRISK Features');
plot(points.selectStrongest(20));
参数说明:
MinContrast
:角及其周围区域之间的最小强度差。MinQuality
:角的最小可接受质量。NumOctaves
:实现的八度字节数。regions = detectMSERFeatures(I);
figure(2);subplot(211),imshow(I); hold on;title('MSER Features');
plot(regions,'showPixelList',true,'showEllipses',false);
subplot(212),imshow(I); hold on;plot(regions);
参数说明:
ThresholdDelta
:强度阈值级别之间的步长。RegionAreaRange
:区域的大小。MaxAreaVariation
:极值区域之间的最大面积变化。corners = detectFASTFeatures(I);
figure(3),imshow(I); hold on;title('FAST Features');
plot(corners.selectStrongest(50));
参数说明:
MinQuality
:角的最小可接受质量。MinContrast
:角和周围区域之间的最小强度差。corners = detectHarrisFeatures(I);
figure(4),imshow(I); hold on;title('Harris Features');
plot(corners.selectStrongest(50));
参数说明:
MinQuality
:角的最小可接受质量。FilterSize
:高斯滤波器尺寸。points = detectSURFFeatures(I);
figure(5),imshow(I); hold on;title('SURF Features');
plot(points.selectStrongest(10));
参数说明:
MetricThreshold
:最强的特征阈值。NumOctaves
:实现的八度字节数。NumScaleLevels
:每个八度的刻度级别数。corners = detectMinEigenFeatures(I);
figure(6);imshow(I); hold on;title('MinEigen Features');
plot(corners.selectStrongest(50));
参数说明:
MinQuality
:角的最小可接受质量。FilterSize
:高斯滤波器维度。每种特征检测方法都有其独特的优势和应用场景。本文展示了如何在 MATLAB 中使用这些方法进行特征检测,并对各自的参数进行了说明和调节。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。