Remove SURF points according to scales

2 vues (au cours des 30 derniers jours)
muhammad faiz
muhammad faiz le 30 Déc 2016
Hai,
I would like to remove any SURF points that having scales less than 2. how can i do that?
please help.
  2 commentaires
John D'Errico
John D'Errico le 30 Déc 2016
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 le 30 Déc 2016
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.

Connectez-vous pour commenter.

Réponses (2)

KSSV
KSSV le 30 Déc 2016
[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 commentaires
Image Analyst
Image Analyst le 30 Déc 2016
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 le 2 Nov 2020
It's really helpful for me! Thanks for sharing!

Connectez-vous pour commenter.


Anand
Anand le 30 Déc 2016
% 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);

Community Treasure Hunt

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

Start Hunting!

Translated by