Class SURF
Class for extracting Speeded Up Robust Features from an image.
Implements
Inherited Members
Namespace: OpenCvSharp.XFeatures2D
Assembly: OpenCvSharp.dll
Syntax
public class SURF : Feature2D, ICvPtrHolder
Constructors
| Improve this Doc View SourceSURF(IntPtr)
Creates instance by raw pointer cv::SURF*
Declaration
protected SURF(IntPtr p)
Parameters
Type | Name | Description |
---|---|---|
IntPtr | p |
Properties
| Improve this Doc View SourceExtended
false means that the basic descriptors (64 elements each) shall be computed. true means that the extended descriptors (128 elements each) shall be computed
Declaration
public bool Extended { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
HessianThreshold
Threshold for the keypoint detector. Only features, whose hessian is larger than hessianThreshold are retained by the detector. Therefore, the larger the value, the less keypoints you will get. A good default value could be from 300 to 500, depending from the image contrast.
Declaration
public double HessianThreshold { get; set; }
Property Value
Type | Description |
---|---|
System.Double |
NOctaveLayers
The number of images within each octave of a gaussian pyramid. It is set to 2 by default.
Declaration
public int NOctaveLayers { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
NOctaves
The number of a gaussian pyramid octaves that the detector uses. It is set to 4 by default. If you want to get very large features, use the larger value. If you want just small features, decrease it.
Declaration
public int NOctaves { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
Upright
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.
Declaration
public bool Upright { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
Methods
| Improve this Doc View SourceCreate(Double, Int32, Int32, Boolean, Boolean)
The SURF constructor.
Declaration
public static SURF Create(double hessianThreshold, int nOctaves = 4, int nOctaveLayers = 2, bool extended = true, bool upright = false)
Parameters
Type | Name | Description |
---|---|---|
System.Double | hessianThreshold | Only features with keypoint.hessian larger than that are extracted. |
System.Int32 | nOctaves | The number of a gaussian pyramid octaves that the detector uses. It is set to 4 by default. If you want to get very large features, use the larger value. If you want just small features, decrease it. |
System.Int32 | nOctaveLayers | The number of images within each octave of a gaussian pyramid. It is set to 2 by default. |
System.Boolean | extended | false means basic descriptors (64 elements each), true means extended descriptors (128 elements each) |
System.Boolean | upright | false means that detector computes orientation of each feature. true means that the orientation is not computed (which is much, much faster). |
Returns
Type | Description |
---|---|
SURF |
DisposeManaged()
Releases managed resources
Declaration
protected override void DisposeManaged()