[][src]Struct opencv::xfeatures2d::SURF_CUDA

pub struct SURF_CUDA { /* fields omitted */ }

Class used for extracting Speeded Up Robust Features (SURF) from an image. :

The class SURF_CUDA implements Speeded Up Robust Features descriptor. There is a fast multi-scale Hessian keypoint detector that can be used to find the keypoints (which is the default option). But the descriptors can also be computed for the user-specified keypoints. Only 8-bit grayscale images are supported.

The class SURF_CUDA can store results in the GPU and CPU memory. It provides functions to convert results between CPU and GPU version ( uploadKeypoints, downloadKeypoints, downloadDescriptors ). The format of CPU results is the same as SURF results. GPU results are stored in GpuMat. The keypoints matrix is inline formula matrix with the CV_32FC1 type.

  • keypoints.ptr<float>(X_ROW)[i] contains x coordinate of the i-th feature.
  • keypoints.ptr<float>(Y_ROW)[i] contains y coordinate of the i-th feature.
  • keypoints.ptr<float>(LAPLACIAN_ROW)[i] contains the laplacian sign of the i-th feature.
  • keypoints.ptr<float>(OCTAVE_ROW)[i] contains the octave of the i-th feature.
  • keypoints.ptr<float>(SIZE_ROW)[i] contains the size of the i-th feature.
  • keypoints.ptr<float>(ANGLE_ROW)[i] contain orientation of the i-th feature.
  • keypoints.ptr<float>(HESSIAN_ROW)[i] contains the response of the i-th feature.

The descriptors matrix is inline formula matrix with the CV_32FC1 type.

The class SURF_CUDA uses some buffers and provides access to it. All buffers can be safely released between function calls.

See also

SURF

Note:

  • An example for using the SURF keypoint matcher on GPU can be found at opencv_source_code/samples/gpu/surf_keypoint_matcher.cpp

Implementations

impl SURF_CUDA[src]

impl SURF_CUDA[src]

pub fn default() -> Result<SURF_CUDA>[src]

the default constructor

pub fn new(
    _hessian_threshold: f64,
    _n_octaves: i32,
    _n_octave_layers: i32,
    _extended: bool,
    _keypoints_ratio: f32,
    _upright: bool
) -> Result<SURF_CUDA>
[src]

the full constructor taking all the necessary parameters

C++ default parameters

  • _n_octaves: 4
  • _n_octave_layers: 2
  • _extended: false
  • _keypoints_ratio: 0.01f
  • _upright: false

pub fn create(
    _hessian_threshold: f64,
    _n_octaves: i32,
    _n_octave_layers: i32,
    _extended: bool,
    _keypoints_ratio: f32,
    _upright: bool
) -> Result<Ptr<SURF_CUDA>>
[src]

Parameters

  • _hessianThreshold: Threshold for hessian keypoint detector used in SURF.
  • _nOctaves: Number of pyramid octaves the keypoint detector will use.
  • _nOctaveLayers: Number of octave layers within each octave.
  • _extended: Extended descriptor flag (true - use extended 128-element descriptors; false - use 64-element descriptors).
  • _keypointsRatio:
  • _upright: Up-right or rotated features flag (true - do not compute orientation of features; false - compute orientation).

C++ default parameters

  • _n_octaves: 4
  • _n_octave_layers: 2
  • _extended: false
  • _keypoints_ratio: 0.01f
  • _upright: false

Trait Implementations

impl Boxed for SURF_CUDA[src]

impl Drop for SURF_CUDA[src]

impl SURF_CUDATrait for SURF_CUDA[src]

impl Send for SURF_CUDA[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.