Image Warping#
Detailed Description#
Function Documentation#
buildWarpAffineMaps()#
void cv::cuda::buildWarpAffineMaps(
InputArray M,
bool inverse,
Size dsize,
OutputArray xmap,
OutputArray ymap,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Builds transformation maps for affine transformation.
See also
Parameters
buildWarpAffineMaps()#
void cv::cuda::buildWarpAffineMaps(
Mat M,
bool inverse,
Size dsize,
GpuMat & xmap,
GpuMat & ymap,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Here is the call graph for this function:
buildWarpAffineMaps()#
void cv::cuda::buildWarpAffineMaps(
UMat M,
bool inverse,
Size dsize,
GpuMat & xmap,
GpuMat & ymap,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Here is the call graph for this function:
buildWarpPerspectiveMaps()#
void cv::cuda::buildWarpPerspectiveMaps(
InputArray M,
bool inverse,
Size dsize,
OutputArray xmap,
OutputArray ymap,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Builds transformation maps for perspective transformation.
See also
Parameters
buildWarpPerspectiveMaps()#
void cv::cuda::buildWarpPerspectiveMaps(
Mat M,
bool inverse,
Size dsize,
GpuMat & xmap,
GpuMat & ymap,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Here is the call graph for this function:
buildWarpPerspectiveMaps()#
void cv::cuda::buildWarpPerspectiveMaps(
UMat M,
bool inverse,
Size dsize,
GpuMat & xmap,
GpuMat & ymap,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Here is the call graph for this function:
pyrDown()#
void cv::cuda::pyrDown(
InputArray src,
OutputArray dst,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Smoothes an image and downsamples it.
See also
Parameters
src— Source image.dst— Destination image. Will have Size((src.cols+1)/2, (src.rows+1)/2) size and the same type as src .stream— Stream for the asynchronous version.
pyrUp()#
void cv::cuda::pyrUp(
InputArray src,
OutputArray dst,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Upsamples an image and then smoothes it.
Parameters
src— Source image.dst— Destination image. Will have Size(src.cols2, src.rows2) size and the same type as src .stream— Stream for the asynchronous version.
remap()#
void cv::cuda::remap(
InputArray src,
OutputArray dst,
InputArray xmap,
InputArray ymap,
int interpolation,
int borderMode = BORDER_CONSTANT,
Scalar borderValue = Scalar(),
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Applies a generic geometrical transformation to an image.
The function transforms the source image using the specified map:
with the WARP_RELATIVE_MAP flag :
Values of pixels with non-integer coordinates are computed using the bilinear interpolation.
See also
Parameters
src— Source image.dst— Destination image with the size the same as xmap and the type the same as src .xmap— X values. Only CV_32FC1 type is supported.ymap— Y values. Only CV_32FC1 type is supported.interpolation— Interpolation method (see resize ). INTER_NEAREST , INTER_LINEAR and INTER_CUBIC are supported for now. The extra flag WARP_RELATIVE_MAP can be ORed to the interpolation method (e.g. INTER_LINEAR | WARP_RELATIVE_MAP)borderMode— Pixel extrapolation method (see borderInterpolate ). BORDER_REFLECT101 , BORDER_REPLICATE , BORDER_CONSTANT , BORDER_REFLECT and BORDER_WRAP are supported for now.borderValue— Value used in case of a constant border. By default, it is 0.stream— Stream for the asynchronous version.
resize()#
void cv::cuda::resize(
InputArray src,
OutputArray dst,
Size dsize,
double fx = 0,
double fy = 0,
int interpolation = INTER_LINEAR,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Resizes an image.
See also
Parameters
src— Source image.dst— Destination image with the same type as src . The size is dsize (when it is non-zero) or the size is computed from src.size() , fx , and fy .dsize— Destination image size. If it is zero, it is computed as:\[ \texttt{dsize = Size(round(fx*src.cols), round(fy*src.rows))} \]Either dsize or both fx and fy must be non-zero.
fx— Scale factor along the horizontal axis. If it is zero, it is computed as:\[ \texttt{(double)dsize.width/src.cols} \]fy— Scale factor along the vertical axis. If it is zero, it is computed as:\[ \texttt{(double)dsize.height/src.rows} \]interpolation— Interpolation method. INTER_NEAREST , INTER_LINEAR , INTER_CUBIC , and INTER_AREA are supported.stream— Stream for the asynchronous version.
rotate()#
void cv::cuda::rotate(
InputArray src,
OutputArray dst,
Size dsize,
double angle,
double xShift = 0,
double yShift = 0,
int interpolation = INTER_LINEAR,
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Rotates an image around the origin (0,0) and then shifts it.
See also
Parameters
src— Source image. Supports 1, 3 or 4 channels images with CV_8U , CV_16U or CV_32F depth.dst— Destination image with the same type as src . The size is dsize .dsize— Size of the destination image.angle— Angle of rotation in degrees.xShift— Shift along the horizontal axis.yShift— Shift along the vertical axis.interpolation— Interpolation method. Only INTER_NEAREST , INTER_LINEAR , and INTER_CUBIC are supported.stream— Stream for the asynchronous version.
warpAffine()#
void cv::cuda::warpAffine(
InputArray src,
OutputArray dst,
InputArray M,
Size dsize,
int flags = INTER_LINEAR,
int borderMode = BORDER_CONSTANT,
Scalar borderValue = Scalar(),
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Applies an affine transformation to an image.
Note
In-place operation is not supported. If src and dst refer to the same data, the behavior is undefined.
See also
Parameters
src— Source image. CV_8U , CV_16U , CV_32S , or CV_32F depth and 1, 3, or 4 channels are supported.dst— Destination image with the same type as src . The size is dsize . In-place operation (src == dst) is not supported and will result in an error.**dsize— Size of the destination image.flags— Combination of interpolation methods (see resize) and the optional flag WARP_INVERSE_MAP specifying that M is an inverse transformation ( dst=>src ). Only INTER_NEAREST , INTER_LINEAR , and INTER_CUBIC interpolation methods are supported.borderModeborderValuestream— Stream for the asynchronous version.
warpAffine()#
void cv::cuda::warpAffine(
InputArray src,
OutputArray dst,
Mat M,
Size dsize,
int flags = INTER_LINEAR,
int borderMode = BORDER_CONSTANT,
Scalar borderValue = Scalar(),
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Here is the call graph for this function:
warpAffine()#
void cv::cuda::warpAffine(
InputArray src,
OutputArray dst,
UMat M,
Size dsize,
int flags = INTER_LINEAR,
int borderMode = BORDER_CONSTANT,
Scalar borderValue = Scalar(),
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Here is the call graph for this function:
warpPerspective()#
void cv::cuda::warpPerspective(
InputArray src,
OutputArray dst,
InputArray M,
Size dsize,
int flags = INTER_LINEAR,
int borderMode = BORDER_CONSTANT,
Scalar borderValue = Scalar(),
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Applies a perspective transformation to an image.
See also
Parameters
src— Source image. CV_8U , CV_16U , CV_32S , or CV_32F depth and 1, 3, or 4 channels are supported.dst— Destination image with the same type as src . The size is dsize .dsize— Size of the destination image.flags— Combination of interpolation methods (see resize ) and the optional flag WARP_INVERSE_MAP specifying that M is the inverse transformation ( dst => src ). Only INTER_NEAREST , INTER_LINEAR , and INTER_CUBIC interpolation methods are supported.borderModeborderValuestream— Stream for the asynchronous version.
warpPerspective()#
void cv::cuda::warpPerspective(
InputArray src,
OutputArray dst,
Mat M,
Size dsize,
int flags = INTER_LINEAR,
int borderMode = BORDER_CONSTANT,
Scalar borderValue = Scalar(),
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Here is the call graph for this function:
warpPerspective()#
void cv::cuda::warpPerspective(
InputArray src,
OutputArray dst,
UMat M,
Size dsize,
int flags = INTER_LINEAR,
int borderMode = BORDER_CONSTANT,
Scalar borderValue = Scalar(),
Stream & stream = Stream::Null() )
#include <opencv2/cudawarping.hpp>
Here is the call graph for this function: