Remove SURF points according to scales

1 次查看(过去 30 天)
Hai,
I would like to remove any SURF points that having scales less than 2. how can i do that?
please help.
  2 个评论
John D'Errico
John D'Errico 2016-12-30
HUH? Slow down. Ask your question clearly.
Apparently you have a surface, generated by surf. I think?
You don't want to plot some part of the surface?
What is a scale? Maybe something that you weigh yourself with?
muhammad faiz
muhammad faiz 2016-12-30
i'm sorry...its a SURF points from the computer vision toolbox. (SURF detector). Basically, i have lot of SURF points generated by the SURF detector from the image that i have. However, i only needs points that have Scales highers than 0.5. therefore, i want remove any points lower than that scale.

请先登录,再进行评论。

回答(2 个)

KSSV
KSSV 2016-12-30
[x,y,z] = peaks(100) ;
figure(1)
surf(x,y,z)
% remove less then 2
z(z<2) = NaN ;
figure(2)
surf(x,y,z)
  3 个评论
Image Analyst
Image Analyst 2016-12-30
That's why it helps to list toolboxes in the Products section. I did that for you but you should do it yourself from now on.
Priodyuti Pradhan
Priodyuti Pradhan 2020-11-2
It's really helpful for me! Thanks for sharing!

请先登录,再进行评论。


Anand
Anand 2016-12-30
% Read an image
I = imread('cameraman.tif');
% Compute SURF features
points = detectSURFFeatures(I);
% Filter out points with scale less than 2
newPoints = points( points.Scale<2 );
% Plot points
imshow(I);
hold on;
plot(newPoints);

类别

Help CenterFile Exchange 中查找有关 Image Processing and Computer Vision 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by