开发者

SURF interest point parameters

开发者 https://www.devze.com 2023-03-25 17:10 出处:网络
I want to give alternative interest points as input to SURF using the -p1 command (I\'m using the authors implementation: http://www.vision.ee.ethz.ch/~surf/download.html). But I\'m not sure what to m

I want to give alternative interest points as input to SURF using the -p1 command (I'm using the authors implementation: http://www.vision.ee.ethz.ch/~surf/download.html). But I'm not sure what to make of the parameters.

I need to give x,y,a,b,c for each interest point, and according to the README, a=c and radius= 1/a^2 (with [a,b;b,c] being the entries of the second moment matrix). But when I look at an output file of surf's IP detection, the a,c parameter is always very small (e.g. 0.003). If radius=1/a^2, then that would give a region radius of 1/(0.003^2) > 100.000 pixels. Am I misinterpreting the README file, or are the a,c parameters that surf retu开发者_高级运维rns incorrect?


I think the README file is misleading. If you see the code. its actually a = 1/ radius^2. That puts the radius around 20 pixels in your example. go thru the main.cpp in the library to see how the a is calculated.


Krish is probably right about the radius. I don't remember unfortunately. About the other parameters you can use.

double image size: -d This is good if you need high-precision interest points and descriptors for e.g. 3D reconstruction. If you use your own interest points, you can try -d to use smaller descriptor regions (only if you are sure that your interest points have a high precision).

custom lobe size: -ms 3 This defines the lobe size of the interest point detector. You don't need that if you have your own interest points.

number of octaves: -oc 4 This determines how many scales you want to analyze. If you use your own interest points, this is not needed.

initial sampling step: -ss 2 Sampling step for the Hessian detector. Not needed if you use your own interest points.

U-SURF (not rotation invariant): -u This might be interesting for you. It does not use orientation invariance. This makes it faster for images sets that are taken with an upright camera as for robots for example.

extended descriptor (SURF-128): -e Use the extended descriptor if you want to do 3D reconstruction and robust point matches. Somehow, it does not work so good for object recognition. Use smaller descriptor for OR.

descriptor size: -in 4 This defines square size/numbers of the descriptor window (default 4x4). If you reduce this number to e.g. 2, it will produce a 16-dimensional descriptor, which is not so bad for object recognition.

Hope that helps.

0

精彩评论

暂无评论...
验证码 换一张
取 消