What exactly is the scale attribute that is calculated by detectSURFFeatures()?
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Title says it all. I'm aware that a higher scale means a "larger" feature, but I'm confused by the number of different scales. Consider this snippet, which is a slightly modified version of the example in the documentation to detect as much points as possible:
K>> I = imread('cameraman.tif');
K>> points = detectSURFFeatures(I, 'MetricThreshold',0);
K>> length(unique(points.Scale))
ans =
54
With default parameters detectSURFFeatures() uses 3 octaves and 4 scale levels. If I understood the SURF algorithm correctly this should limit the number of different scales to 3*4=12. Can someone help me out here?
0 Commenti
Risposte (2)
Jalaj Gambhir
il 5 Ago 2019
Hi,
You are confusing the 'scales' here. Each octave has fixed number of scale levels. detectSURFFeatures() does not return that value. This function returns the scale that is dependent on size of the image. You can verify this by resizing the image and then checking the unique scales returned. It would be different from 54.
Eric
il 30 Lug 2025
The source code for detectSURFFeatures is proprietary, but it purports to follow the original SURF paper where the local maxima of the approximately calculated DoH are interpolated in both image location and scale, i.e. the finally detected feature centers and scales are each generally non-integers. Bay et al. used 3x3 nonmaximum suppression from Neubeck and Van Gool and interpolation from Brown and Lowe.
- Brown and Lowe (2002) "Invariant features from interest point groups"
- Neubeck and Van Gool (2006) "Efficient non-maximum suppression"
- Bay et al. (2008) "Speeded-Up Robust Features (SURF)"
Applying detectSURFFeatures to an image containing solid circles will also demonstrate that Matlab's use of the word "Scale" in SURFPoints in fact refers to a physical length scale, not the scale-space scaling parameter. If t is the scaling parameter then the corresponding physical length scales are proportional to
.
0 Commenti
Vedere anche
Categorie
Scopri di più su Point Cloud Processing in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!