http://www.emgu.com
Create a SURF detector using the specific values
Namespace: Emgu.CV.XFeatures2DAssembly: Emgu.CV.Contrib (in Emgu.CV.Contrib.dll) Version: 3.0.0.2161 (3.0.0.2161)
Syntaxpublic SURF(
double hessianThresh,
int nOctaves = 4,
int nOctaveLayers = 2,
bool extended = true,
bool upright = false
)
Public Sub New (
hessianThresh As Double,
Optional nOctaves As Integer = 4,
Optional nOctaveLayers As Integer = 2,
Optional extended As Boolean = true,
Optional upright As Boolean = false
)
public:
SURF(
double hessianThresh,
int nOctaves = 4,
int nOctaveLayers = 2,
bool extended = true,
bool upright = false
)
new :
hessianThresh : float *
?nOctaves : int *
?nOctaveLayers : int *
?extended : bool *
?upright : bool
(* Defaults:
let _nOctaves = defaultArg nOctaves 4
let _nOctaveLayers = defaultArg nOctaveLayers 2
let _extended = defaultArg extended true
let _upright = defaultArg upright false
*)
-> SURF
Parameters
- hessianThresh
- Type: SystemDouble
Only features with keypoint.hessian larger than that are extracted.
good default value is ~300-500 (can depend on the average local contrast and sharpness of the image).
user can further filter out some features based on their hessian values and other characteristics
- nOctaves (Optional)
- Type: SystemInt32
The number of octaves to be used for extraction.
With each next octave the feature size is doubled
- nOctaveLayers (Optional)
- Type: SystemInt32
The number of layers within each octave
- extended (Optional)
- Type: SystemBoolean
false means basic descriptors (64 elements each),
true means extended descriptors (128 elements each)
- upright (Optional)
- Type: SystemBoolean
False means that detector computes orientation of each feature.
True means that the orientation is not computed (which is much, much faster).
For example, if you match images from a stereo pair, or do image stitching, the matched features likely have very similar angles, and you can speed up feature extraction by setting upright=true.
See Also