### Navigation

- index
- next |
- previous |
- OpenCV 3.0.0-dev documentation »
- OpenCV API Reference »
- cudaimgproc. CUDA-accelerated Image Processing »

# Feature Detection

## cuda::CornernessCriteria

class `cuda::``CornernessCriteria` : public `Algorithm`

Base class for Cornerness Criteria computation.

    class CV_EXPORTS CornernessCriteria : public Algorithm
    {
    public:
        virtual void compute(InputArray src, OutputArray dst, Stream& stream = Stream::Null()) = 0;
    };

## cuda::CornernessCriteria::compute

Computes the cornerness criteria at each image pixel.

C++:`` void `cuda::CornernessCriteria::``compute`(InputArray src, OutputArray dst, Stream& stream=Stream::Null())

  Parameters: | src – Source image. dst – Destination image containing cornerness values. It will have the same size as `src` and `CV_32FC1` type. stream – Stream for the asynchronous version.

## cuda::createHarrisCorner

Creates implementation for Harris cornerness criteria.

C++:`` Ptr<CornernessCriteria> `cuda::``createHarrisCorner`(int srcType, int blockSize, int ksize, double k, int borderType=BORDER_REFLECT101)

  Parameters: | srcType – Input source type. Only `CV_8UC1` and `CV_32FC1` are supported for now. blockSize – Neighborhood size. ksize – Aperture parameter for the Sobel operator. k – Harris detector free parameter. borderType – Pixel extrapolation method. Only `BORDER_REFLECT101` and `BORDER_REPLICATE` are supported for now.

See also

`cornerHarris()`

## cuda::createMinEigenValCorner

Creates implementation for the minimum eigen value of a 2x2 derivative covariation matrix (the cornerness criteria).

C++:`` Ptr<CornernessCriteria> `cuda::``createMinEigenValCorner`(int srcType, int blockSize, int ksize, int borderType=BORDER_REFLECT101)

  Parameters: | srcType – Input source type. Only `CV_8UC1` and `CV_32FC1` are supported for now. blockSize – Neighborhood size. ksize – Aperture parameter for the Sobel operator. borderType – Pixel extrapolation method. Only `BORDER_REFLECT101` and `BORDER_REPLICATE` are supported for now.

See also

`cornerMinEigenVal()`

## cuda::CornersDetector

class `cuda::``CornersDetector` : public `Algorithm`

Base class for Corners Detector.

    class CV_EXPORTS CornersDetector : public Algorithm
    {
    public:
        virtual void detect(InputArray image, OutputArray corners, InputArray mask = noArray()) = 0;
    };

## cuda::CornersDetector::detect

Determines strong corners on an image.

C++:`` void `cuda::CornersDetector::``detect`(InputArray image, OutputArray corners, InputArray mask=noArray())

  Parameters: | image – Input 8-bit or floating-point 32-bit, single-channel image. corners – Output vector of detected corners (1-row matrix with CV_32FC2 type with corners positions). mask – Optional region of interest. If the image is not empty (it needs to have the type `CV_8UC1` and the same size as `image` ), it specifies the region in which the corners are detected.

## cuda::createGoodFeaturesToTrackDetector

Creates implementation for `cuda::CornersDetector` .

C++:`` Ptr<CornersDetector> `cuda::``createGoodFeaturesToTrackDetector`(int srcType, int maxCorners=1000, double qualityLevel=0.01, double minDistance=0.0, int blockSize=3, bool useHarrisDetector=false, double harrisK=0.04)

  Parameters: | srcType – Input source type. Only `CV_8UC1` and `CV_32FC1` are supported for now. maxCorners – Maximum number of corners to return. If there are more corners than are found, the strongest of them is returned. qualityLevel – Parameter characterizing the minimal accepted quality of image corners. The parameter value is multiplied by the best corner quality measure, which is the minimal eigenvalue (see `cornerMinEigenVal()` ) or the Harris function response (see `cornerHarris()` ). The corners with the quality measure less than the product are rejected. For example, if the best corner has the quality measure = 1500, and the `qualityLevel=0.01` , then all the corners with the quality measure less than 15 are rejected. minDistance – Minimum possible Euclidean distance between the returned corners. blockSize – Size of an average block for computing a derivative covariation matrix over each pixel neighborhood. See `cornerEigenValsAndVecs()` . useHarrisDetector – Parameter indicating whether to use a Harris detector (see `cornerHarris()`) or `cornerMinEigenVal()`. harrisK – Free parameter of the Harris detector.

See also

`goodFeaturesToTrack()`

## Help and Feedback

You did not find what you were looking for?

- Ask a question on the Q&A forum.
- If you think something is missing or wrong in the documentation, please file a bug report.

### Navigation

- index
- next |
- previous |
- OpenCV 3.0.0-dev documentation »
- OpenCV API Reference »
- cudaimgproc. CUDA-accelerated Image Processing »