Core Operations on Matrices#

Detailed Description#

Classes#

Name

Description

class cv::cuda::LookUpTable

Base class for transform using lookup table. View details

Function Documentation#

copyMakeBorder()#

void cv::cuda::copyMakeBorder(
InputArray src,
OutputArray dst,
int top,
int bottom,
int left,
int right,
int borderType,
Scalar value = Scalar(),
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

Forms a border around an image.

Parameters

  • src — Source image. CV_8UC1 , CV_8UC4 , CV_32SC1 , and CV_32FC1 types are supported.

  • dst — Destination image with the same type as src. The size is Size(src.cols+left+right, src.rows+top+bottom) .

  • top — Number of top pixels

  • bottom — Number of bottom pixels

  • left — Number of left pixels

  • right — Number of pixels in each direction from the source image rectangle to extrapolate. For example: top=1, bottom=1, left=1, right=1 mean that 1 pixel-wide border needs to be built.

  • borderType — Border type. See borderInterpolate for details. BORDER_REFLECT101 , BORDER_REPLICATE , BORDER_CONSTANT , BORDER_REFLECT and BORDER_WRAP are supported for now.

  • value — Border value.

  • streamStream for the asynchronous version.

createLookUpTable()#

Ptr< LookUpTable > cv::cuda::createLookUpTable(InputArray lut)

#include <opencv2/cudaarithm.hpp>

Creates implementation for cuda::LookUpTable .

Parameters

  • lut — Look-up table of 256 elements. It is a continuous CV_8U matrix.

flip()#

void cv::cuda::flip(
InputArray src,
OutputArray dst,
int flipCode,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

Flips a 2D matrix around vertical, horizontal, or both axes.

See also

flip

Parameters

  • src — Source matrix. Supports 1, 3 and 4 channels images with CV_8U, CV_16U, CV_32S or CV_32F depth.

  • dst — Destination matrix.

  • flipCode — Flip mode for the source:

    • 0 Flips around x-axis.

    • 0 Flips around y-axis.

    • < 0 Flips around both axes.

  • streamStream for the asynchronous version.

merge()#

void cv::cuda::merge(
const GpuMat * src,
size_t n,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

Makes a multi-channel matrix out of several single-channel matrices.

See also

merge

Parameters

  • src — Array/vector of source matrices.

  • n — Number of source matrices.

  • dst — Destination matrix.

  • streamStream for the asynchronous version.

merge()#

void cv::cuda::merge(
const std::vector< GpuMat > & src,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

split()#

void cv::cuda::split(
InputArray src,
GpuMat * dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

Copies each plane of a multi-channel matrix into an array.

See also

split

Parameters

  • src — Source matrix.

  • dst — Destination array/vector of single-channel matrices.

  • streamStream for the asynchronous version.

split()#

void cv::cuda::split(
InputArray src,
std::vector< GpuMat > & dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

transpose()#

void cv::cuda::transpose(
InputArray src1,
OutputArray dst,
Stream & stream = Stream::Null() )

#include <opencv2/cudaarithm.hpp>

Transposes a matrix.

See also

transpose

Parameters

  • src1 — Source matrix. 1-, 4-, 8-byte element sizes are supported for now.

  • dst — Destination matrix.

  • streamStream for the asynchronous version.