OpenCV 4.11.0
开源计算机视觉
|
枚举 | |
枚举 | 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()) |
在输入图像副本周围形成边界并用指定的 borderType 填充。 | |
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()) |
从大图像中裁剪子图像,将其调整为特定大小,并形成顶部/左侧边界并用指定的 borderType 填充。 | |
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()) |
围绕垂直轴、水平轴或两个轴翻转二维矩阵。 | |
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 度的倍数。函数 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()) |
转置矩阵。 | |
#include <opencv2/cann_interface.hpp>
插值算法
枚举值 | |
---|---|
INTER_NEAREST | 最近邻插值 |
INTER_LINEAR | 双线性插值 |
INTER_CUBIC | 双三次插值 |
INTER_AREA | 使用像素面积关系进行重采样。对于图像抽取,这可能是一种更好的方法,因为它可以提供无摩尔纹的结果。但是,当图像被放大时,它类似于 INTER_NEAREST 方法。 |
INTER_MAX | 插值代码掩码 |
void cv::cann::copyMakeBorder | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
int | top, | ||
int | bottom, | ||
int | left, | ||
int | right, | ||
int | borderType, | ||
const Scalar & | value = Scalar() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::copyMakeBorder | ( | const InputArray | src, |
OutputArray | dst, | ||
int | top, | ||
int | bottom, | ||
int | left, | ||
int | right, | ||
int | borderType, | ||
const Scalar & | value = Scalar() ) |
#include <opencv2/cann_interface.hpp>
在输入图像副本周围形成边界并用指定的 borderType 填充。
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 | 边界类型。仅支持 cv::BorderTypes::BORDER_CONSTANT 和 cv::BorderTypes::BORDER_REPLICATE。 |
值 | 如果 borderType==BORDER_CONSTANT,则为边界 BGR 或 YUV 值。 |
AscendMat cv::cann::crop | ( | const AscendMat & | src, |
const Rect & | 矩形, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
AscendMat cv::cann::crop | ( | InputArray | src, |
const Rect & | 矩形, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
裁剪二维数组。该函数根据给定的 cv::Rect 裁剪矩阵。输出矩阵必须与输入矩阵具有相同的深度,大小由给定的矩形大小指定。
src | 输入数组。 |
矩形 | 用于裁剪数组的矩形 |
流 | AscendStream 用于异步版本。 |
void cv::cann::cropResize | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
const Rect & | 矩形, | ||
尺寸 | dsize, | ||
双精度浮点数 | fx, | ||
双精度浮点数 | fy, | ||
int | interpolation ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::cropResize | ( | const InputArray | src, |
OutputArray | dst, | ||
const Rect & | 矩形, | ||
尺寸 | dsize, | ||
双精度浮点数 | fx, | ||
双精度浮点数 | fy, | ||
int | interpolation ) |
#include <opencv2/cann_interface.hpp>
从大图像中裁剪子图像,并将其调整为特定大小。
src | 输入数组。 |
dst | 输出数组。它具有 dsize 尺寸(当它不为零时)或根据 src.size()、fx 和 fy 计算出的尺寸;dst 的类型与 src 相同。 |
矩形 | 用于裁剪数组的矩形 |
dsize | 输出图像大小;如果它等于零,则计算方式与 cv::resize 相同。 |
fx | 沿水平轴的缩放因子;当它等于 0 时,计算方式为 \[(双精度浮点数)dsize.width/src.cols\] |
fy | 沿垂直轴的缩放因子;当它等于 0 时,计算方式为 \[(双精度浮点数)dsize.height/src.rows\] |
插值方法 | 插值方法,此处仅支持 INTER_NEAREST 和 INTER_LINEAR。(参见 cv.cann.InterpolationFlags) |
void cv::cann::cropResizeMakeBorder | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
const Rect & | 矩形, | ||
尺寸 | dsize, | ||
双精度浮点数 | fx, | ||
双精度浮点数 | fy, | ||
int | 插值方法, | ||
int | top, | ||
int | left, | ||
const int | borderType, | ||
标量 | value = Scalar() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::cropResizeMakeBorder | ( | const InputArray | src, |
OutputArray | dst, | ||
const Rect & | 矩形, | ||
尺寸 | dsize, | ||
双精度浮点数 | fx, | ||
双精度浮点数 | fy, | ||
int | 插值方法, | ||
int | top, | ||
int | left, | ||
const int | borderType, | ||
标量 | value = Scalar() ) |
#include <opencv2/cann_interface.hpp>
从大图像中裁剪子图像,将其调整为特定大小,并形成顶部/左侧边界并用指定的 borderType 填充。
src | 输入数组。 |
dst | 输出数组;它具有 Size(dsize.height + top, dsize.width + left) 的大小。 |
矩形 | 用于裁剪数组的矩形 |
dsize | 调整大小。 |
fx | 沿水平轴的缩放因子; |
fy | 沿垂直轴的缩放因子; |
插值方法 | 插值方法,仅支持 INTER_NEAREST 和 INTER_LINEAR。(参见 cv.cann.InterpolationFlags) |
borderType | 边界外推方法,仅支持 cv::BorderTypes::BORDER_CONSTANT 和 cv::BorderTypes::BORDER_REPLICATE。 |
值 | 如果 borderType==BORDER_CONSTANT,则为边界 BGR 或 YUV 值。 |
top | 顶部填充的像素数 |
left | 左侧填充的像素数 |
void cv::cann::flip | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
int | flipCode, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::flip | ( | InputArray | src, |
OutputArray | dst, | ||
int | flipCode, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
围绕垂直轴、水平轴或两个轴翻转二维矩阵。
src | 源矩阵。 |
dst | 目标矩阵。 |
flipCode | 源的翻转模式
|
流 | AscendStream 用于异步版本。 |
void cv::cann::merge | ( | const AscendMat * | src, |
size_t | n, | ||
AscendMat & | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
从几个单通道矩阵创建一个多通道矩阵。
src | 源矩阵的数组/向量。 |
n | 源矩阵的数量。 |
dst | 目标矩阵。 |
流 | AscendStream 用于异步版本。 |
void cv::cann::merge | ( | const AscendMat * | src, |
size_t | n, | ||
OutputArray & | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::merge | ( | const std::vector< AscendMat > & | src, |
AscendMat & | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::merge | ( | const std::vector< AscendMat > & | src, |
OutputArray & | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::resize | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
尺寸 | dsize, | ||
双精度浮点数 | fx, | ||
双精度浮点数 | fy, | ||
int | 插值方法, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::resize | ( | InputArray | src, |
OutputArray | dst, | ||
尺寸 | dsize, | ||
双精度浮点数 | fx, | ||
双精度浮点数 | fy, | ||
int | 插值方法, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
将图像 src 调整大小到指定尺寸。
src | 输入图像 |
dst | 输出图像;它具有 dsize 尺寸(当它不为零时)或根据 src.size()、fx 和 fy 计算出的尺寸;dst 的类型与 src 相同。 |
dsize | 输出图像大小;如果它等于零,则计算方式为 \[dsize = Size(round(fx*src.cols), round(fy*src.rows))\] dsize 或 fx 和 fy 必须有一个不为零。 |
fx | 沿水平轴的缩放因子;当它等于 0 时,计算方式为 \[(双精度浮点数)dsize.width/src.cols\] |
fy | 沿垂直轴的缩放因子;当它等于 0 时,计算方式为 \[(双精度浮点数)dsize.height/src.rows\] |
插值方法 | 插值方法(参见 cv.cann.InterpolationFlags) |
流 | AscendStream 用于异步版本。 |
void cv::cann::rotate | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
int | rotateMode, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::rotate | ( | InputArray | src, |
OutputArray | dst, | ||
int | rotateCode, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
将二维数组旋转 90 度的倍数。函数 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 |
流 | AscendStream 用于异步版本。 |
void cv::cann::split | ( | const AscendMat & | src, |
AscendMat * | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
将多通道矩阵的每个平面复制到一个数组中。
src | 源矩阵。 |
dst | 单通道矩阵的目标数组/向量。 |
流 | AscendStream 用于异步版本。 |
void cv::cann::split | ( | const AscendMat & | src, |
std::vector< AscendMat > & | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::split | ( | const InputArray | src, |
AscendMat * | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::split | ( | const InputArray | src, |
std::vector< AscendMat > & | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::transpose | ( | const AscendMat & | src, |
AscendMat & | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。
void cv::cann::transpose | ( | InputArray | src, |
OutputArray | dst, | ||
AscendStream & | stream = AscendStream::Null() ) |
#include <opencv2/cann_interface.hpp>
转置矩阵。
src | 源矩阵。 |
dst | 目标矩阵。 |
流 | AscendStream 用于异步版本。 |