OpenCV 4.10.0
开源计算机视觉
|
枚举 | |
enum | cv::cann::InterpolationFlags { cv::cann::INTER_NEAREST = 0 , cv::cann::INTER_LINEAR = 1 , cv::cann::INTER_CUBIC = 2 , cv::cann::INTER_AREA = 3 , cv::cann::INTER_MAX = 7 } |
插值算法 更多... | |
函数 | |
void | cv::cann::copyMakeBorder (const AscendMat &src, AscendMat &dst, int top, int bottom, int left, int right, int borderType, const Scalar &value=Scalar()) |
void | cv::cann::copyMakeBorder (const InputArray src, OutputArray dst, int top, int bottom, int left, int right, int borderType, const Scalar &value=Scalar()) |
在输入图像的副本周围形成并填充指定的边框类型。 | |
AscendMat | cv::cann::crop (const AscendMat &src, const Rect &rect, AscendStream &stream=AscendStream::Null()) |
AscendMat | cv::cann::crop (InputArray src, const Rect &rect, AscendStream &stream=AscendStream::Null()) |
裁剪一个二维数组。该函数通过给定的 cv::Rect 裁剪矩阵。输出矩阵必须与输入矩阵具有相同的深度,大小由给定矩形大小指定。 | |
void | cv::cann::cropResize (const AscendMat &src, AscendMat &dst, const Rect &rect, Size dsize, double fx, double fy, int interpolation) |
void | cv::cann::cropResize (const InputArray src, OutputArray dst, const Rect &rect, Size dsize, double fx, double fy, int interpolation) |
从大图像中裁剪子图像,并将其调整到特定大小。 | |
void | cv::cann::cropResizeMakeBorder (const AscendMat &src, AscendMat &dst, const Rect &rect, Size dsize, double fx, double fy, int interpolation, int top, int left, const int borderType, Scalar value=Scalar()) |
void | cv::cann::cropResizeMakeBorder (const InputArray src, OutputArray dst, const Rect &rect, Size dsize, double fx, double fy, int interpolation, int top, int left, const int borderType, Scalar value=Scalar()) |
从大图像中裁剪出小图像,将其调整到指定大小,并在顶部/左侧生成边界并填充指定边界类型。 | |
void | cv::cann::flip (const AscendMat &src, AscendMat &dst, int flipCode, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::flip (InputArray src, OutputArray dst, int flipCode, AscendStream &stream=AscendStream::Null()) |
围绕垂直、水平或两者同时翻转2D矩阵。 | |
void | cv::cann::merge (const AscendMat *src, size_t n, AscendMat &dst, AscendStream &stream=AscendStream::Null()) |
从多个单通道矩阵中创建一个多通道矩阵。 | |
void | cv::cann::merge (const AscendMat *src, size_t n, OutputArray &dst, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::merge (const std::vector< AscendMat > &src, AscendMat &dst, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::merge (const std::vector< AscendMat > &src, OutputArray &dst, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::resize (const AscendMat &src, AscendMat &dst, Size dsize, double fx, double fy, int interpolation, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::resize (InputArray src, OutputArray dst, Size dsize, double fx, double fy, int interpolation, AscendStream &stream=AscendStream::Null()) |
将图像src调整到指定大小或更小。 | |
void | cv::cann::rotate (const AscendMat &src, AscendMat &dst, int rotateMode, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::rotate (InputArray src, OutputArray dst, int rotateCode, AscendStream &stream=AscendStream::Null()) |
以90度为增量旋转2D数组。函数cv::rotate 可以以三种不同的方式旋转数组:顺时针旋转90度(rotateCode = ROTATE_90_CLOCKWISE)。顺时针旋转180度(rotateCode = ROTATE_180)。顺时针旋转270度(rotateCode = ROTATE_90_COUNTERCLOCKWISE)。 | |
void | cv::cann::split (const AscendMat &src, AscendMat *dst, AscendStream &stream=AscendStream::Null()) |
将多通道矩阵的每个平面复制到一个数组中。 | |
void | cv::cann::split (const AscendMat &src, std::vector< AscendMat > &dst, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::split (const InputArray src, AscendMat *dst, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::split (const InputArray src, std::vector< AscendMat > &dst, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::transpose (const AscendMat &src, AscendMat &dst, AscendStream &stream=AscendStream::Null()) |
void | cv::cann::transpose (InputArray src, OutputArray dst, AscendStream &stream=AscendStream::Null()) |
转置矩阵。 | |
void cv::cann::copyMakeBorder | ( | const InputArray | src, |
OutputArray | dst, | ||
int | top, | ||
int | bottom, | ||
int | left, | ||
int | right, | ||
int | borderType, | ||
const Scalar & | value = ] |
||
) |
在输入图像的副本周围形成并填充指定的边框类型。
src | 源图像。 | |
dst | 与src类型相同的目标图像,具体大小为 Size(src.cols+left+right, src.rows+top+bottom)。 | |
top | 顶部填充像素数 | |
bottom | 底部填充像素数 | |
left | 左侧填充像素数 | |
right | 右侧填充像素数指定从源图像矩形向外部扩展的像素数。例如,top=1, bottom=1, left=1, right=1 表示需要构建 1 像素宽的边界。 | |
borderType | 边界类型。支持的类型有only value | 如果 borderType==BORDER_CONSTANT,为边界 BGR 或 YUV 值。 |
AscendMat cv::cann::crop | ( | const AscendMat & | src, |
const Rect & | rect, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
AscendMat cv::cann::crop | ( | InputArray | src, |
const Rect & | rect, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
裁剪一个二维数组。该函数通过给定的 cv::Rect 裁剪矩阵。输出矩阵必须与输入矩阵具有相同的深度,大小由给定矩形大小指定。
src | 输入数组。 |
rect | 裁剪数组的矩形 |
stream | AscendStream 异步版本。 |
void cv::cann::cropResize | ( | const InputArray | src, |
OutputArray | dst, | ||
const Rect & | rect, | ||
Size | dsize, | ||
double | fx, | ||
double | fy, | ||
int | interpolation | ||
) |
从大图像中裁剪子图像,并将其调整到特定大小。
src | 输入数组。 |
dst | 输出数组。它具有大小 dsize(当它非零时)或从 src.size(),fx 和 fy 计算得到的大小;dst 的类型与 src 相同。 |
rect | 裁剪数组的矩形 |
dsize | 输出图像大小;如果等于零,则计算如下 cv::resize。 |
fx | 水平轴上的缩放因子;当它等于 0 时,计算如下 \[(𝚍𝚘𝚞𝚋𝚕𝚎)𝚍𝚜𝚒𝚣𝚎.𝚠𝚒𝚍𝚝𝚑/𝚜𝚛𝚌.𝚌𝚘𝚕𝚜\] |
fy | 垂直轴上的缩放因子;当它等于 0 时,计算如下 \[(𝚍𝚘𝚞𝚋𝚕𝚎)𝚍𝚜𝚒𝚣𝚎.𝚑𝚎𝚒𝚐𝚑𝚝/𝚜𝚛𝚌.𝚛𝚘𝚠𝚜\] |
interpolation | 插值方法,此处只支持 INTER_NEAREST 和 INTER_LINEAR。 (参见 cv.cann.InterpolationFlags) |
void cv::cann::cropResizeMakeBorder | ( | const InputArray | src, |
OutputArray | dst, | ||
const Rect & | rect, | ||
Size | dsize, | ||
double | fx, | ||
double | fy, | ||
int | interpolation, | ||
int | top, | ||
int | left, | ||
const int | borderType, | ||
Scalar | value = ] |
||
) |
从大图像中裁剪出小图像,将其调整到指定大小,并在顶部/左侧生成边界并填充指定边界类型。
src | 输入数组。 |
dst | 输出数组;它具有大小 Size(dsize.height + top, dsize.width + left)。 |
rect | 裁剪数组的矩形 |
dsize | 调整大小的大小; |
fx | 沿横向轴的缩放因子; |
fy | 沿垂直轴的缩放因子; |
interpolation | 插值方法,仅支持 INTER_NEAREST 和 INTER_LINEAR。 (参见 cv.cann.InterpolationFlags) |
borderType | 边界外推方法,仅支持 cv::BorderTypes::BORDER_CONSTANT 和 cv::BorderTypes::BORDER_REPLICATE。 |
value | 如果 borderType==BORDER_CONSTANT,为边界 BGR 或 YUV 值。 |
top | 顶部填充像素数 |
left | 左侧填充像素数 |
void cv::cann::flip | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
int | flipCode, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::flip | ( | InputArray | src, |
OutputArray | dst, | ||
int | flipCode, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
围绕垂直、水平或两者同时翻转2D矩阵。
src | 源矩阵。 |
dst | 目标矩阵。 |
flipCode | 源翻转模式
|
stream | AscendStream 异步版本。 |
void cv::cann::merge | ( | const AscendMat * | src, |
size_t | n, | ||
AscendMat & | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
从多个单通道矩阵中创建一个多通道矩阵。
src | 源矩阵数组/向量。 |
n | 源矩阵的数量。 |
dst | 目标矩阵。 |
stream | AscendStream 异步版本。 |
void cv::cann::merge | ( | const AscendMat * | src, |
size_t | n, | ||
OutputArray & | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::merge | ( | const std::vector< AscendMat > & | src, |
AscendMat & | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::merge | ( | const std::vector< AscendMat > & | src, |
OutputArray & | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::resize | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
Size | dsize, | ||
double | fx, | ||
double | fy, | ||
int | interpolation, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::resize | ( | InputArray | src, |
OutputArray | dst, | ||
Size | dsize, | ||
double | fx, | ||
double | fy, | ||
int | interpolation, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
将图像src调整到指定大小或更小。
src | 输入图像 |
dst | 输出图像;其尺寸为dsize(当它非零时)或从src.size()、fx和fy计算得到的尺寸;dst的类型与src相同。 |
dsize | 输出图像尺寸;如果它等于零,则如公式 \[𝚍𝚜𝚒𝚣𝚎 = 𝚂𝚒𝚣𝚎(𝚛𝚘𝚞𝚗𝚍(𝚏𝚡*𝚜𝚛𝚌.𝚌𝚘𝚕𝚜), 𝚛𝚘𝚞𝚗𝚍(𝚏𝚢*𝚜𝚛𝚌.𝚛𝚘𝚠𝚜))\] 要么dsize或fx和fy都非零。 |
fx | 水平轴上的缩放因子;当它等于 0 时,计算如下 \[(𝚍𝚘𝚞𝚋𝚕𝚎)𝚍𝚜𝚒𝚣𝚎.𝚠𝚒𝚍𝚝𝚑/𝚜𝚛𝚌.𝚌𝚘𝚕𝚜\] |
fy | 垂直轴上的缩放因子;当它等于 0 时,计算如下 \[(𝚍𝚘𝚞𝚋𝚕𝚎)𝚍𝚜𝚒𝚣𝚎.𝚑𝚎𝚒𝚐𝚑𝚝/𝚜𝚛𝚌.𝚛𝚘𝚠𝚜\] |
interpolation | 插值方法(参见 cv.cann.InterpolationFlags) |
stream | AscendStream 异步版本。 |
void cv::cann::rotate | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
int | rotateMode, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::rotate | ( | InputArray | src, |
OutputArray | dst, | ||
int | rotateCode, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
以90度为增量旋转2D数组。函数cv::rotate 可以以三种不同的方式旋转数组:顺时针旋转90度(rotateCode = ROTATE_90_CLOCKWISE)。顺时针旋转180度(rotateCode = ROTATE_180)。顺时针旋转270度(rotateCode = ROTATE_90_COUNTERCLOCKWISE)。
src | 输入数组。 |
dst | 与src同类型的输出数组。其大小与ROTATE_180相同,对于ROTATE_90_CLOCKWISE和ROTATE_90_COUNTERCLOCKWISE,行和列互换了。 |
rotateCode | 一个枚举值,用于指定如何旋转数组;参见枚举 RotateFlags |
stream | AscendStream 异步版本。 |
void cv::cann::split | ( | const AscendMat & | src, |
AscendMat * | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
将多通道矩阵的每个平面复制到一个数组中。
src | 源矩阵。 |
dst | 单通道矩阵的目标数组/向量。 |
stream | AscendStream 异步版本。 |
void cv::cann::split | ( | const AscendMat & | src, |
std::vector< AscendMat > & | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::split | ( | const InputArray | src, |
AscendMat * | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::split | ( | const InputArray | src, |
std::vector< AscendMat > & | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::transpose | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
void cv::cann::transpose | ( | InputArray | src, |
OutputArray | dst, | ||
AscendStream & | stream = AscendStream::Null() |
||
) |
转置矩阵。
src | 源矩阵。 |
dst | 目标矩阵。 |
stream | AscendStream 异步版本。 |