image_processing.rst 29.1 KB

Image Processing

gpu::meanShiftFiltering

Performs mean-shift filtering for each point of the source image.

It maps each point of the source image into another point. As a result, you have a new color and new position of each point.

gpu::meanShiftProc

Performs a mean-shift procedure and stores information about processed points (their colors and positions) in two images.

gpu::meanShiftSegmentation

Performs a mean-shift segmentation of the source image and eliminates small segments.

gpu::integral

Computes an integral image and a squared integral image.

gpu::sqrIntegral

Computes a squared integral image.

gpu::columnSum

Computes a vertical (column) sum.

gpu::cornerHarris

Computes the Harris cornerness criteria at each image pixel.

gpu::cornerMinEigenVal

Computes the minimum eigen value of a 2x2 derivative covariation matrix at each pixel (the cornerness criteria).

gpu::mulSpectrums

Performs a per-element multiplication of two Fourier spectrums.

gpu::mulAndScaleSpectrums

Performs a per-element multiplication of two Fourier spectrums and scales the result.

gpu::dft

Performs a forward or inverse discrete Fourier transform (1D or 2D) of the floating point matrix.

Use to handle real matrices ( CV32FC1 ) and complex matrices in the interleaved format ( CV32FC2 ).

The source matrix should be continuous, otherwise reallocation and data copying is performed. The function chooses an operation mode depending on the flags, size, and channel count of the source matrix:

  • If the source matrix is complex and the output is not specified as real, the destination matrix is complex and has the dft_size size and CV_32FC2 type. The destination matrix contains a full result of the DFT (forward or inverse).
  • If the source matrix is complex and the output is specified as real, the function assumes that its input is the result of the forward transform (see the next item). The destionation matrix has the dft_size size and CV_32FC1 type. It contains the result of the inverse DFT.
  • If the source matrix is real (its type is CV_32FC1 ), forward DFT is performed. The result of the DFT is packed into complex ( CV_32FC2 ) matrix. So, the width of the destination matrix is dft_size.width / 2 + 1 . But if the source is a single column, the height is reduced instead of the width.

gpu::convolve

Computes a convolution (or cross-correlation) of two images.

gpu::ConvolveBuf

Class providing a memory buffer for the :ocv:func:`gpu::convolve` function.

struct CV_EXPORTS ConvolveBuf
{
    ConvolveBuf() {}
    ConvolveBuf(Size image_size, Size templ_size)
        { create(image_size, templ_size); }
    void create(Size image_size, Size templ_size);

private:
    // Hidden
};

gpu::ConvolveBuf::ConvolveBuf

The constructors.

Constructs an empty buffer that is properly resized after the first call of the :ocv:func:`gpu::convolve` function.

Constructs a buffer for the :ocv:func:`gpu::convolve` function with respective arguments.

gpu::matchTemplate

Computes a proximity map for a raster template and an image where the template is searched for.

gpu::remap

Applies a generic geometrical transformation to an image.

The function transforms the source image using the specified map:

\texttt{dst} (x,y) =  \texttt{src} (xmap(x,y), ymap(x,y))

Values of pixels with non-integer coordinates are computed using the bilinear interpolation.

gpu::cvtColor

Converts an image from one color space to another.

3-channel color spaces (like HSV, XYZ, and so on) can be stored in a 4-channel image for better perfomance.

gpu::threshold

Applies a fixed-level threshold to each array element.

gpu::resize

Resizes an image.

gpu::warpAffine

Applies an affine transformation to an image.

gpu::warpPerspective

Applies a perspective transformation to an image.

gpu::rotate

Rotates an image around the origin (0,0) and then shifts it.

gpu::copyMakeBorder

Forms a border around an image.

gpu::rectStdDev

Computes a standard deviation of integral images.

gpu::evenLevels

Computes levels with even distribution.

gpu::histEven

Calculates a histogram with evenly distributed bins.

gpu::histRange

Calculates a histogram with bins determined by the levels array.

gpu::calcHist

Calculates histogram for one channel 8-bit image.

gpu::equalizeHist

Equalizes the histogram of a grayscale image.

gpu::buildWarpPlaneMaps

Builds plane warping maps.

gpu::buildWarpCylindricalMaps

Builds cylindrical warping maps.

gpu::buildWarpSphericalMaps

Builds spherical warping maps.

gpu::pyrDown

Smoothes an image and downsamples it.

gpu::pyrUp

Upsamples an image and then smoothes it.

gpu::blendLinear

Performs linear blending of two images.

gpu::Canny

Finds edges in an image using the [Canny86]_ algorithm.