![]() |
OpenCV 4.13.0
开源计算机视觉库 (Open Source Computer Vision)
|
类 | |
| 类 | cv::fastcv::FCVMSER |
| 用于灰度图像的 MSER 斑点检测器。 更多... | |
| 类 | cv::fastcv::QcAllocator |
| Qualcomm 自定义分配器。该分配器使用 Qualcomm 的内存管理函数。 更多... | |
| 类 | cv::fastcv::QcResourceManager |
| FastCV 分配的资源管理器。此类管理活动分配。 更多... | |
函数 | |
| void | cv::fastcv::arithmetic_op (InputArray src1, InputArray src2, OutputArray dst, int op) |
| 两个矩阵的算术加法和减法运算。针对 Qualcomm 处理器进行了优化。 | |
| void | cv::fastcv::bilateralFilter (InputArray _src, OutputArray _dst, int d, float sigmaColor, float sigmaSpace, int borderType=BORDER_DEFAULT) |
| 对图像应用双边滤波,考虑每个像素邻域的 d 像素直径。此过滤器不支持就地(inplace)操作。 | |
| void | cv::fastcv::bilateralRecursive (cv::InputArray src, cv::OutputArray dst, float sigmaColor=0.03f, float sigmaSpace=0.1f) |
| 递归双边滤波。 | |
| void | cv::fastcv::buildPyramid (InputArray src, OutputArrayOfArrays pyr, int nLevels, bool scaleBy2=true, int borderType=cv::BORDER_REFLECT, uint8_t borderValue=0) |
| 从单个原始图像构建 float32 图像金字塔 - 图像根据预设层级相继缩小。此 API 同时支持 ORB 缩放和二分之一缩小。 | |
| void | cv::fastcv::calcHist (InputArray _src, OutputArray _hist) |
| 计算输入图像的直方图。该函数以优化方式实现了 8u 单通道图像 256 级直方图计算的特定用例。 | |
| void | cv::fastcv::dsp::Canny (InputArray _src, OutputArray _dst, int lowThreshold, int highThreshold, int apertureSize=3, bool L2gradient=false) |
| 应用于 8 位灰度图像的 Canny 边缘检测器。 | |
| void | cv::fastcv::clusterEuclidean (InputArray points, InputArray clusterCenters, OutputArray newClusterCenters, OutputArray clusterSizes, OutputArray clusterBindings, OutputArray clusterSumDists, int numPointsUsed=-1) |
| 在 D 维空间中将 N 个输入点聚类为 K 个聚类。接受 8 位无符号整数点。在 Qualcomm 处理器上提供比 cv::kmeans 更快的执行速度。 | |
| void | cv::fastcv::DCT (InputArray src, OutputArray dst) |
| 该函数对输入图像执行 8x8 正向离散余弦变换。接受 8 位无符号整数类型的输入,并生成 16 位有符号整数类型的输出。在 Qualcomm 处理器上提供比 cv::dct 更快的执行速度。 | |
| void | cv::fastcv::FAST10 (InputArray src, InputArray mask, OutputArray coords, OutputArray scores, int barrier, int border, bool nmsEnabled) |
| 根据掩码从图像中提取 FAST10 角点和分数。掩码指定了检测器应忽略的像素。专为 Qualcomm 处理器上的角点检测设计,提供更高的速度。 | |
| void | cv::fastcv::dsp::fcvdspdeinit () |
| 反初始化 FastCV DSP 环境。 | |
| int | cv::fastcv::dsp::fcvdspinit () |
| 初始化 FastCV DSP 环境。 | |
| void | cv::fastcv::dsp::FFT (InputArray src, OutputArray dst) |
| 计算实值矩阵的一维或二维快速傅里叶变换。对于二维情况,输入和输出矩阵的宽度和高度必须是 2 的幂。对于一维情况,矩阵的高度必须为 1,而宽度必须是 2 的幂。 | |
| void | cv::fastcv::FFT (InputArray src, OutputArray dst) |
| 计算实值矩阵的一维或二维快速傅里叶变换。对于二维情况,输入和输出矩阵的宽度和高度必须是 2 的幂。对于一维情况,矩阵的高度必须为 1,而宽度必须是 2 的幂。接受 8 位无符号整数数组,而 cv::dft 接受浮点或复数数组。 | |
| void | cv::fastcv::fillConvexPoly (InputOutputArray img, InputArray pts, Scalar color) |
| 绘制凸多边形。该函数用指定颜色填充凸多边形的内部。要求宽度和步长(stride)必须是 8 的倍数。 | |
| void | cv::fastcv::dsp::filter2D (InputArray _src, OutputArray _dst, int ddepth, InputArray _kernel) |
| 使用非可分算子过滤图像。 | |
| void | cv::fastcv::filter2D (InputArray _src, OutputArray _dst, int ddepth, InputArray _kernel) |
| 使用非可分算子进行 NxN 相关运算。最大到算子宽度一半的边界将被忽略。 | |
| void | cv::fastcv::gaussianBlur (InputArray _src, OutputArray _dst, int kernel_size=3, bool blur_border=true) |
| sigma = 0 且具有正方形算子尺寸的高斯模糊。处理边界的方式与 cv::GaussianBlur 不同,会导致输出略有差异。 | |
| void | cv::fastcv::gemm (InputArray src1, InputArray src2, OutputArray dst, float alpha=1.0, InputArray src3=noArray(), float beta=0.0) |
| 两个浮点矩阵的矩阵乘法 R = a*A*B + b*C,其中 A、B、C、R 是矩阵,a、b 是常数。针对 Qualcomm 处理器进行了优化。 | |
| cv::MatAllocator * | cv::fastcv::getQcAllocator () |
| 获取默认的 Qualcomm 分配器。该函数返回一个指向默认 Qualcomm 分配器的指针,该分配器针对 DSP 使用进行了优化。 | |
| void | cv::fastcv::houghLines (InputArray src, OutputArray lines, double threshold=0.25) |
| 执行霍夫直线检测。 | |
| void | cv::fastcv::IDCT (InputArray src, OutputArray dst) |
| 该函数对输入图像执行 8x8 逆离散余弦变换。在 Qualcomm 处理器上,逆变换情况下的执行速度比 cv::dct 更快。 | |
| void | cv::fastcv::dsp::IFFT (InputArray src, OutputArray dst) |
| 计算复值矩阵的一维或二维逆快速傅里叶变换。对于二维情况,输入和输出矩阵的宽度和高度必须是 2 的幂。对于一维情况,矩阵的高度必须为 1,而宽度必须是 2 的幂。 | |
| void | cv::fastcv::IFFT (InputArray src, OutputArray dst) |
| 计算复值矩阵的一维或二维逆快速傅里叶变换。对于二维情况,输入和输出矩阵的宽度和高度必须是 2 的幂。对于一维情况,矩阵的高度必须为 1,而宽度必须是 2 的幂。 | |
| void | cv::fastcv::integrateYUV (InputArray Y, InputArray CbCr, OutputArray IY, OutputArray ICb, OutputArray ICr) |
| YCbCr420 图像的积分图。注意:输入高度应为 2 的倍数。输入宽度和步长应为 16 的倍数。输出步长应为 8 的倍数。针对 Qualcomm 处理器进行了优化。 | |
| void | cv::fastcv::matmuls8s32 (InputArray src1, InputArray src2, OutputArray dst) |
| 两个 int8_t 类型矩阵的矩阵乘法。使用有符号整数输入/输出,而 cv::gemm 使用浮点输入/输出。matmuls8s32 在 Qualcomm 处理器上提供更高的速度。 | |
| int | cv::fastcv::meanShift (InputArray src, Rect &rect, TermCriteria termCrit) |
| 应用均值漂移(meanshift)程序并获取最终收敛位置。该函数将均值漂移程序应用于原始图像(通常是概率图)并获取最终收敛位置。当达到所需精度或最大迭代次数时,收敛位置搜索将停止。算法中使用的矩(Moments)是以浮点数计算的。该函数与 cv::meanShift 并非位精确一致,但在 Snapdragon 处理器上提供了更好的延迟表现。 | |
| void | cv::fastcv::merge (InputArrayOfArrays mv, OutputArray dst) |
| 从多个单通道 CV_8U 矩阵创建一个多通道矩阵。针对 Qualcomm 处理器进行了优化。 | |
| cv::Moments | cv::fastcv::moments (InputArray _src, bool binary) |
| 计算图像像素强度的所有三阶及以下矩。结果返回在 cv::Moments 结构中。此函数 cv::fastcv::moments() 使用浮点计算矩,而 cv::moments() 使用双精度浮点计算矩。 | |
| void | cv::fastcv::normalizeLocalBox (InputArray _src, OutputArray _dst, Size pSize, bool useStdDev) |
| 计算图像的局部减法和对比度归一化。图像的每个像素都通过以该像素为中心的色块的均值和标准差进行归一化。针对 Qualcomm 处理器进行了优化。 | |
| void | cv::fastcv::remap (InputArray src, OutputArray dst, InputArray map1, InputArray map2, int interpolation, int borderValue=0) |
| 对灰度 CV_8UC1 图像应用通用的几何变换。 | |
| void | cv::fastcv::remapRGBA (InputArray src, OutputArray dst, InputArray map1, InputArray map2, int interpolation) |
| 使用双线性或最近邻插值对 4 通道 CV_8UC4 图像应用通用几何变换。 | |
| void | cv::fastcv::resizeDown (cv::InputArray _src, cv::OutputArray _dst, Size dsize, double inv_scale_x, double inv_scale_y) |
| 使用指定的缩放因子或尺寸缩小图像。此函数支持单通道 (CV_8UC1) 和双通道 (CV_8UC2) 图像。 | |
| void | cv::fastcv::sepFilter2D (InputArray _src, OutputArray _dst, int ddepth, InputArray _kernelX, InputArray _kernelY) |
| 使用可分算子进行 NxN 相关运算。如果 srcImg 和 dstImg 指向同一地址且 srcStride 等于 dstStride,则会进行就地操作。最大到算子宽度一半的边界将被忽略。处理溢出的方式与 OpenCV 不同,该函数将对中间结果和最终结果进行右移。 | |
| void | cv::fastcv::sobel (InputArray _src, OutputArray _dx, OutputArray _dy, int kernel_size, int borderType, int borderValue) |
| 从源亮度数据创建不带归一化的 2D 梯度图像。计算 X 方向 1 阶导数或 Y 方向 1 阶导数,或同时计算两者。 | |
| void | cv::fastcv::sobel3x3u8 (InputArray _src, OutputArray _dst, OutputArray _dsty=noArray(), int ddepth=CV_8U, bool normalization=false) |
| 从源亮度数据创建不带归一化的 2D 梯度图像。该函数在 3x3 邻域上计算中心差分,然后将结果与 Sobel 算子卷积,最大到算子宽度一半的边界将被忽略。 | |
| void | cv::fastcv::sobelPyramid (InputArrayOfArrays pyr, OutputArrayOfArrays dx, OutputArrayOfArrays dy, int outType=CV_8S) |
| 从图像金字塔创建梯度金字塔。注意:在梯度计算期间会忽略边界。 | |
| void | cv::fastcv::split (InputArray src, OutputArrayOfArrays mv) |
| 将 CV_8U 多通道矩阵拆分为多个 CV_8UC1 矩阵。针对 Qualcomm 处理器进行了优化。 | |
| void | cv::fastcv::dsp::sumOfAbsoluteDiffs (cv::InputArray _patch, cv::InputArray _src, cv::OutputArray _dst) |
| 图像与 8x8 模板的绝对差之和(SAD)。 | |
| void | cv::fastcv::dsp::thresholdOtsu (InputArray _src, OutputArray _dst, bool type) |
| 使用大津法(Otsu's method)对灰度图像进行二值化。如果像素值大于阈值,则将其设置为 max(255);否则设置为 min(0)。搜索使类内方差最小化的阈值。 | |
| void | cv::fastcv::thresholdRange (InputArray src, OutputArray dst, int lowThresh, int highThresh, int trueValue, int falseValue) |
| 根据一对阈值对灰度图像进行二值化。二值化后的图像将处于用户选择的两个值中。该函数在 Snapdragon 处理器上提供了更好的延迟表现。 | |
| void | cv::fastcv::trackOpticalFlowLK (InputArray src, InputArray dst, InputArrayOfArrays srcPyr, InputArrayOfArrays dstPyr, InputArray ptsIn, OutputArray ptsOut, InputArray ptsEst, OutputArray statusVec, cv::Size winSize=cv::Size(7, 7), cv::TermCriteria termCriteria=cv::TermCriteria(cv::TermCriteria::MAX_ITER|cv::TermCriteria::EPS, 7, 0.03f *0.03f)) |
| 使用 Lucas-Kanade 算法计算稀疏光流。接受 8 位无符号整数图像。在 Qualcomm 处理器上提供更快的执行速度。 | |
| void | cv::fastcv::trackOpticalFlowLK (InputArray src, InputArray dst, InputArrayOfArrays srcPyr, InputArrayOfArrays dstPyr, InputArrayOfArrays srcDxPyr, InputArrayOfArrays srcDyPyr, InputArray ptsIn, OutputArray ptsOut, OutputArray statusVec, cv::Size winSize=cv::Size(7, 7), int maxIterations=7) |
| LK 跟踪函数 v1 版本的重载。 | |
| void | cv::fastcv::warpAffine (InputArray _src, OutputArray _dst, InputArray _M, Size dsize, int interpolation=INTER_LINEAR, int borderValue=0) |
| 使用提供的变换矩阵对输入图像执行仿射变换。 | |
| void | cv::fastcv::warpPerspective (InputArray _src, OutputArray _dst, InputArray _M0, Size dsize, int interpolation, int borderType, const Scalar &borderValue) |
| 使用透视变换对图像进行变换,与 cv::warpPerspective 相同,但并非位精确一致。 | |
| void | cv::fastcv::warpPerspective2Plane (InputArray _src1, InputArray _src2, OutputArray _dst1, OutputArray _dst2, InputArray _M0, Size dsize) |
| 使用相同的变换对两个图像进行透视变换。适用时使用双线性插值。例如,同时对一个灰度图像和一个 alpha 图像进行变换,或对两个颜色通道进行变换。 | |
| void cv::fastcv::arithmetic_op | ( | InputArray | src1, |
| InputArray | src2, | ||
| OutputArray | dst, | ||
| int | op ) |
#include <opencv2/fastcv/arithm.hpp>
两个矩阵的算术加法和减法运算。针对 Qualcomm 处理器进行了优化。
| src1 | 第一源矩阵,可以是 CV_8U、CV_16S、CV_32F 类型。注意:减法运算不支持 CV_32F |
| src2 | 与 src1 类型和尺寸相同的第二源矩阵 |
| dst | 与源矩阵类型相同的结果矩阵 |
| op | 操作类型 - 0 表示加法,1 表示减法 |
| void cv::fastcv::bilateralFilter | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| int | d, | ||
| float | sigmaColor, | ||
| float | sigmaSpace, | ||
| int | borderType = BORDER_DEFAULT ) |
#include <opencv2/fastcv/bilateralFilter.hpp>
对图像应用双边滤波,考虑每个像素邻域的 d 像素直径。此过滤器不支持就地(inplace)操作。
| _src | 类型为 CV_8UC1 的输入图像 |
| _dst | 与 _src 类型相同的目标图像 |
| d | 算子尺寸(可以是 5、7 或 9) |
| sigmaColor | 颜色空间中的滤波器 sigma。典型值为 50.0f。增大该值意味着增加颜色差异较大的相邻像素对平滑结果的影响。 |
| sigmaSpace | 坐标空间中的滤波器 sigma。典型值为 1.0f。增大该值意味着增加算子尺寸距离内较远相邻像素对平滑结果的影响。 |
| borderType | 用于外推图像外部像素的边界模式 |
| void cv::fastcv::bilateralRecursive | ( | cv::InputArray | src, |
| cv::OutputArray | dst, | ||
| float | sigmaColor = 0.03f, | ||
| float | sigmaSpace = 0.1f ) |
#include <opencv2/fastcv/smooth.hpp>
递归双边滤波。
与传统的双边滤波不同,这里的平滑实际上是在梯度域执行的。该算法声称在图像质量和计算效率方面都比原始双边滤波更高效。参见杨庆雄(Yang Qingxiong)教授在 ECCV2012 发表的论文《Recursive Bilateral Filtering》中的算法描述。该函数与 cv::bilateralFilter 并非位精确一致,但在 Snapdragon 处理器上提供了更好的延迟表现。
| src | 输入图像,应具有一个 CV_8U 通道 |
| dst | 具有一个 CV_8U 通道的输出数组 |
| sigmaColor | 颜色空间中的 Sigma,值越大,算法平滑的颜色差异越多 |
| sigmaSpace | 坐标空间中的 Sigma,值越大,平滑的像素距离越远 |
| void cv::fastcv::buildPyramid | ( | InputArray | src, |
| OutputArrayOfArrays | pyr, | ||
| int | nLevels, | ||
| bool | scaleBy2 = true, | ||
| int | borderType = cv::BORDER_REFLECT, | ||
| uint8_t | borderValue = 0 ) |
#include <opencv2/fastcv/pyramid.hpp>
从单个原始图像构建 float32 图像金字塔 - 图像根据预设层级相继缩小。此 API 同时支持 ORB 缩放和二分之一缩小。
| src | 8U 或 32F 类型的输入单通道图像 |
| pyr | 包含 nLevels 个缩小图像副本的输出数组 |
| nLevels | 要生成的金字塔层数 |
| scaleBy2 | 用于将图像缩小 2 倍或按 1/(2)^(1/4) 因子缩小(近似为 0.8408964,即 ORB 缩小),浮点图像不支持 ORB 缩放 |
| borderType | 如何处理边界,选项包括 BORDER_REFLECT(映射到 FASTCV_BORDER_REFLECT)、BORDER_REFLECT_101(映射到 FASTCV_BORDER_REFLECT_V2)和 BORDER_REPLICATE(映射到 FASTCV_BORDER_REPLICATE)。其他边界类型映射到 FASTCV_BORDER_UNDEFINED(忽略边界像素)。目前,边界仅支持二分之一缩小,ORB 缩放会忽略边界。浮点图像也会忽略边界 |
| borderValue | 填充边界应使用的值,浮点图像会忽略此项 |
| void cv::fastcv::calcHist | ( | InputArray | _src, |
| OutputArray | _hist ) |
#include <opencv2/fastcv/histogram.hpp>
计算输入图像的直方图。该函数以优化方式实现了 8u 单通道图像 256 级直方图计算的特定用例。
| _src | 类型为 CV_8UC1 的输入图像 |
| _hist | 类型为 int 的 256 级输出直方图 |
| void cv::fastcv::dsp::Canny | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| int | lowThreshold, | ||
| int | highThreshold, | ||
| int | apertureSize = 3, | ||
| bool | L2gradient = false ) |
#include <opencv2/fastcv/edges_dsp.hpp>
应用于 8 位灰度图像的 Canny 边缘检测器。
| void cv::fastcv::clusterEuclidean | ( | InputArray | points, |
| InputArray | clusterCenters, | ||
| OutputArray | newClusterCenters, | ||
| OutputArray | clusterSizes, | ||
| OutputArray | clusterBindings, | ||
| OutputArray | clusterSumDists, | ||
| int | numPointsUsed = -1 ) |
#include <opencv2/fastcv/cluster.hpp>
在 D 维空间中将 N 个输入点聚类为 K 个聚类。接受 8 位无符号整数点。在 Qualcomm 处理器上提供比 cv::kmeans 更快的执行速度。
| points | 类型为 8u 的点数组,每一行代表一个点。尺寸为 N 行 D 列,可以是不连续的。 |
| clusterCenters | 类型为 32f 的初始聚类中心数组,每一行代表一个中心。尺寸为 K 行 D 列,可以是不连续的。 |
| newClusterCenters | 类型为 32f 的结果聚类中心数组,每一行代表找到的中心。尺寸设为 K 行 D 列。 |
| clusterSizes | 类型为 uint32 的结果聚类成员计数数组,尺寸设为 1 行 K 列。 |
| clusterBindings | 类型为 uint32 的结果点索引数组,每个索引说明相应点属于哪个聚类。尺寸设为 1 行 numPointsUsed 列。 |
| clusterSumDists | 类型为 32f 的结果距离之和数组,每个数字是每个聚类中心与其所属点之间距离的总和。尺寸设为 1 行 K 列 |
| numPointsUsed | 要进行聚类的点数,范围从 0 到 numPointsUsed-1(含)。如果为负,则设为 N。 |
| void cv::fastcv::DCT | ( | InputArray | src, |
| OutputArray | dst ) |
#include <opencv2/fastcv/ipptransform.hpp>
该函数对输入图像执行 8x8 正向离散余弦变换。接受 8 位无符号整数类型的输入,并生成 16 位有符号整数类型的输出。在 Qualcomm 处理器上提供比 cv::dct 更快的执行速度。
| src | 类型为 CV_8UC1 的输入图像 |
| dst | 类型为 CV_16SC1 的输出图像 |
| void cv::fastcv::FAST10 | ( | InputArray | src, |
| InputArray | mask, | ||
| OutputArray | coords, | ||
| OutputArray | scores, | ||
| int | barrier, | ||
| int | border, | ||
| bool | nmsEnabled ) |
#include <opencv2/fastcv/fast10.hpp>
根据掩码从图像中提取 FAST10 角点和分数。掩码指定了检测器应忽略的像素。专为 Qualcomm 处理器上的角点检测设计,提供更高的速度。
| src | 8 位灰度图像 |
| mask | 可选掩码,指示哪些像素应从角点检测中忽略。其尺寸应为图像宽度和高度的 k 倍,其中 k = 1/2, 1/4 , 1/8 , 1, 2, 4 和 8。更多详情请参阅 FastCV 中 fcvCornerFast9InMaskScoreu8 函数的文档 |
| coords | 类型为 CV_32S 的输出数组,包含检测到的角点的交错 x, y 位置 |
| scores | 可选输出数组,包含检测到的角点的分数。分数是仍能验证检测到的角点的最高阈值。分数越高表示角点特征越强。例如,分数为 108 的角点强于分数为 50 的角点 |
| barrier | FAST 阈值。阈值用于比较中心像素的亮度值与围绕该像素的圆上的像素之间的差异 |
| border | 图像上、下、右、左忽略的像素数。如果低于 4,则默认设为 4 |
| nmsEnabled | 启用非极大值抑制(NMS)以剔除弱关键点 |
| void cv::fastcv::dsp::fcvdspdeinit | ( | ) |
#include <opencv2/fastcv/dsp_init.hpp>
反初始化 FastCV DSP 环境。
该函数释放由 'fcvdspinit' 函数设置的资源和环境。应在用例或程序退出前调用它,以确保所有 DSP 资源都被正确清理且不发生内存泄漏。
| int cv::fastcv::dsp::fcvdspinit | ( | ) |
#include <opencv2/fastcv/dsp_init.hpp>
初始化 FastCV DSP 环境。
该函数设置 DSP 运行所需的环境和资源。必须在用例或程序的最开始调用一次,以确保在执行任何 DSP 相关操作之前,DSP 已正确初始化。
| void cv::fastcv::dsp::FFT | ( | InputArray | src, |
| OutputArray | dst ) |
#include <opencv2/fastcv/fft_dsp.hpp>
计算实值矩阵的一维或二维快速傅里叶变换。对于二维情况,输入和输出矩阵的宽度和高度必须是 2 的幂。对于一维情况,矩阵的高度必须为 1,而宽度必须是 2 的幂。
| src | 类型为 CV_8UC1 的输入数组。对于二维情况,矩阵的尺寸必须是 2 的幂;在一维情况下,高度必须为 1,而宽度必须是 2 的幂。 |
| dst | 类型为 CV_32FC2 的计算后的 FFT 矩阵。FFT 的实部(Re)和虚部(Im)系数存储在不同的通道中。因此 dst 的尺寸为 (srcWidth, srcHeight) |
| void cv::fastcv::FFT | ( | InputArray | src, |
| OutputArray | dst ) |
#include <opencv2/fastcv/fft.hpp>
计算实值矩阵的一维或二维快速傅里叶变换。对于二维情况,输入和输出矩阵的宽度和高度必须是 2 的幂。对于一维情况,矩阵的高度必须为 1,而宽度必须是 2 的幂。接受 8 位无符号整数数组,而 cv::dft 接受浮点或复数数组。
| src | 类型为 CV_8UC1 的输入数组。对于二维情况,矩阵的尺寸必须是 2 的幂;在一维情况下,高度必须为 1,而宽度必须是 2 的幂。 |
| dst | 类型为 CV_32FC2 的计算后的 FFT 矩阵。FFT 的实部(Re)和虚部(Im)系数存储在不同的通道中。因此 dst 的尺寸为 (srcWidth, srcHeight) |
| void cv::fastcv::fillConvexPoly | ( | InputOutputArray | img, |
| InputArray | pts, | ||
| Scalar | color ) |
#include <opencv2/fastcv/draw.hpp>
绘制凸多边形。该函数用指定颜色填充凸多边形的内部。要求宽度和步长(stride)必须是 8 的倍数。
| img | 要绘制的图像。应具有最多 4 个 8 位通道 |
| pts | 多边形点坐标数组。应包含 N 个双通道或 2*N 个单通道 32 位整数元素 |
| color | 绘制多边形的颜色,存储为 B, G, R 和 A(如果支持) |
| void cv::fastcv::dsp::filter2D | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| int | ddepth, | ||
| InputArray | _kernel ) |
#include <opencv2/fastcv/blur_dsp.hpp>
使用非可分算子过滤图像。
| _src | 类型为 CV_8UC1 的输入图像,源尺寸应大于 176*144 |
| _dst | 类型为 CV_8UC1、CV_16SC1 或 CV_32FC1 的输出图像 |
| ddepth | 输出图像的深度 |
| _kernel | 滤波器算子数据 |
| void cv::fastcv::filter2D | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| int | ddepth, | ||
| InputArray | _kernel ) |
#include <opencv2/fastcv/blur.hpp>
使用非可分算子进行 NxN 相关运算。最大到算子宽度一半的边界将被忽略。
| _src | 类型为 CV_8UC1 的输入图像 |
| _dst | 类型为 CV_8UC1、CV_16SC1 或 CV_32FC1 的输出图像 |
| ddepth | 输出图像的深度 |
| _kernel | 滤波器算子数据 |
| void cv::fastcv::gaussianBlur | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| int | kernel_size = 3, | ||
| bool | blur_border = true ) |
#include <opencv2/fastcv/blur.hpp>
sigma = 0 且具有正方形算子尺寸的高斯模糊。处理边界的方式与 cv::GaussianBlur 不同,会导致输出略有差异。
| _src | 类型为 CV_8UC1 的输入图像 |
| _dst | 类型为 CV_8UC1 的输出图像 |
| kernel_size | 滤波器算子尺寸。3、5、11 其中之一 |
| blur_border | 如果设为 true,边界将通过对相邻值进行 0 填充来模糊(恒定边界的一种变体)。如果设为 false,则忽略最大到算子宽度一半的边界(例如 3x3 情况下为 1 像素)。 |
| void cv::fastcv::gemm | ( | InputArray | src1, |
| InputArray | src2, | ||
| OutputArray | dst, | ||
| float | alpha = 1.0, | ||
| InputArray | src3 = noArray(), | ||
| float | beta = 0.0 ) |
#include <opencv2/fastcv/arithm.hpp>
两个浮点矩阵的矩阵乘法 R = a*A*B + b*C,其中 A、B、C、R 是矩阵,a、b 是常数。针对 Qualcomm 处理器进行了优化。
| src1 | 类型为 CV_32F 的第一源矩阵 |
| src2 | 类型为 CV_32F 的第二源矩阵,行数与 src1 的列数相同 |
| dst | 类型为 CV_32F 的结果矩阵 |
| alpha | src1 和 src2 的乘法因子 |
| src3 | 可选的类型为 CV_32F 的第三个矩阵,将被加到矩阵乘积中 |
| beta | src3 的乘法因子 |
| cv::MatAllocator * cv::fastcv::getQcAllocator | ( | ) |
#include <opencv2/fastcv/allocator.hpp>
获取默认的 Qualcomm 分配器。该函数返回一个指向默认 Qualcomm 分配器的指针,该分配器针对 DSP 使用进行了优化。
| void cv::fastcv::houghLines | ( | InputArray | src, |
| OutputArray | lines, | ||
| double | threshold = 0.25 ) |
#include <opencv2/fastcv/hough.hpp>
执行霍夫直线检测。
| src | 包含二进制轮廓的输入 8 位图像。宽度和步长应能被 8 整除 |
| lines | 输出数组,包含 (x1, y1, x2, y2) 形式的检测直线,所有数字均为 32 位浮点数 |
| 阈值 (threshold) | 控制检测直线的最小长度。值必须在 0.0 到 1.0 之间。接近 1.0 的值会减少检测到的直线数量。接近 0.0 的值会检测更多直线,但可能带有噪声。推荐值为 0.25。 |
| void cv::fastcv::IDCT | ( | InputArray | src, |
| OutputArray | dst ) |
#include <opencv2/fastcv/ipptransform.hpp>
该函数对输入图像执行 8x8 逆离散余弦变换。在 Qualcomm 处理器上,逆变换情况下的执行速度比 cv::dct 更快。
| src | 类型为 CV_16SC1 的输入图像 |
| dst | 类型为 CV_8UC1 的输出图像 |
| void cv::fastcv::dsp::IFFT | ( | InputArray | src, |
| OutputArray | dst ) |
#include <opencv2/fastcv/fft_dsp.hpp>
计算复值矩阵的一维或二维逆快速傅里叶变换。对于二维情况,输入和输出矩阵的宽度和高度必须是 2 的幂。对于一维情况,矩阵的高度必须为 1,而宽度必须是 2 的幂。
| src | 类型为 CV_32FC2 的输入数组,包含存储在不同通道中的 FFT 实部和虚部系数。对于二维情况,矩阵尺寸必须是 2 的幂;在一维情况下,高度必须为 1,而宽度必须是 2 的幂。 |
| dst | 类型为 CV_8U 的计算后的 IFFT 矩阵。该矩阵为实值,不含虚部成分。因此 dst 的尺寸为 (srcWidth, srcHeight) |
| void cv::fastcv::IFFT | ( | InputArray | src, |
| OutputArray | dst ) |
#include <opencv2/fastcv/fft.hpp>
计算复值矩阵的一维或二维逆快速傅里叶变换。对于二维情况,输入和输出矩阵的宽度和高度必须是 2 的幂。对于一维情况,矩阵的高度必须为 1,而宽度必须是 2 的幂。
| src | 类型为 CV_32FC2 的输入数组,包含存储在不同通道中的 FFT 实部和虚部系数。对于二维情况,矩阵尺寸必须是 2 的幂;在一维情况下,高度必须为 1,而宽度必须是 2 的幂。 |
| dst | 类型为 CV_8U 的计算后的 IFFT 矩阵。该矩阵为实值,不含虚部成分。因此 dst 的尺寸为 (srcWidth, srcHeight) |
| void cv::fastcv::integrateYUV | ( | InputArray | Y, |
| InputArray | CbCr, | ||
| OutputArray | IY, | ||
| OutputArray | ICb, | ||
| OutputArray | ICr ) |
#include <opencv2/fastcv/arithm.hpp>
YCbCr420 图像的积分图。注意:输入高度应为 2 的倍数。输入宽度和步长应为 16 的倍数。输出步长应为 8 的倍数。针对 Qualcomm 处理器进行了优化。
| Y | 8UC1 YCbCr420 图像的输入 Y 分量。 |
| CbCr | 8UC1 YCbCr420 图像的输入 CbCr 分量(交错)。 |
| IY | CV_32S 单通道输出 Y 积分图,尺寸为 (Y 高度 + 1)*(Y 宽度 + 1) |
| ICb | CV_32S 单通道输出 Cb 积分图,尺寸为 (Y 高度/2 + 1)*(Y 宽度/2 + 1) |
| ICr | CV_32S 单通道输出 Cr 积分图,尺寸为 (Y 高度/2 + 1)*(Y 宽度/2 + 1) |
| void cv::fastcv::matmuls8s32 | ( | InputArray | src1, |
| InputArray | src2, | ||
| OutputArray | dst ) |
#include <opencv2/fastcv/arithm.hpp>
两个 int8_t 类型矩阵的矩阵乘法。使用有符号整数输入/输出,而 cv::gemm 使用浮点输入/输出。matmuls8s32 在 Qualcomm 处理器上提供更高的速度。
| src1 | 类型为 CV_8S 的第一源矩阵 |
| src2 | 类型为 CV_8S 的第二源矩阵 |
| dst | 类型为 CV_32S 的结果矩阵 |
| int cv::fastcv::meanShift | ( | InputArray | src, |
| Rect & | rect, | ||
| TermCriteria | termCrit ) |
#include <opencv2/fastcv/shift.hpp>
应用均值漂移(meanshift)程序并获取最终收敛位置。该函数将均值漂移程序应用于原始图像(通常是概率图)并获取最终收敛位置。当达到所需精度或最大迭代次数时,收敛位置搜索将停止。算法中使用的矩(Moments)是以浮点数计算的。该函数与 cv::meanShift 并非位精确一致,但在 Snapdragon 处理器上提供了更好的延迟表现。
| src | 8 位、32 位整数或 32 位浮点灰度图像,通常是基于对象直方图计算的概率图 |
| rect | 初始搜索窗口位置,同时返回最终收敛的窗口位置 |
| termCrit | 用于完成均值漂移的准则,包含两个终止准则:1) epsilon:所需精度;2) max_iter:最大迭代次数 |
| void cv::fastcv::merge | ( | InputArrayOfArrays | mv, |
| OutputArray | dst ) |
#include <opencv2/fastcv/channel.hpp>
从多个单通道 CV_8U 矩阵创建一个多通道矩阵。针对 Qualcomm 处理器进行了优化。
| mv | 待合并矩阵的输入向量;mv 中的所有矩阵必须为 CV_8UC1 类型且具有相同尺寸。注意:矩阵数量可以是 2、3 或 4。 |
| dst | 深度为 CV_8U 且尺寸与 mv[0] 相同的输出数组;通道数将是矩阵数组中矩阵的总数 |
| cv::Moments cv::fastcv::moments | ( | InputArray | _src, |
| bool | binary ) |
#include <opencv2/fastcv/moments.hpp>
计算图像像素强度的所有三阶及以下矩。结果返回在 cv::Moments 结构中。此函数 cv::fastcv::moments() 使用浮点计算矩,而 cv::moments() 使用双精度浮点计算矩。
| _src | 类型为 CV_8UC1、CV_32SC1、CV_32FC1 的输入图像 |
| binary | 如果为 true,则假设图像为二进制(0x00 为黑,0xff 为白),否则假设图像为灰度。 |
| void cv::fastcv::normalizeLocalBox | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| Size | pSize, | ||
| bool | useStdDev ) |
#include <opencv2/fastcv/blur.hpp>
计算图像的局部减法和对比度归一化。图像的每个像素都通过以该像素为中心的色块的均值和标准差进行归一化。针对 Qualcomm 处理器进行了优化。
| _src | 输入图像,应具有 CV_8U 或 CV_32F 单通道 |
| _dst | 输出数组,应为单通道,如果 src 为 CV_8U 类型则为 CV_8S,如果 src 为 CV_32F 类型则为 CV_32F |
| pSize | 用于均值和标准差计算的色块尺寸 |
| useStdDev | 如果为 1,则均值和标准差都用于归一化;如果为 0,则仅使用均值 |
| void cv::fastcv::remap | ( | InputArray | src, |
| OutputArray | dst, | ||
| InputArray | map1, | ||
| InputArray | map2, | ||
| int | interpolation, | ||
| int | borderValue = 0 ) |
#include <opencv2/fastcv/remap.hpp>
对灰度 CV_8UC1 图像应用通用的几何变换。
| src | 第一输入图像数据,类型为 CV_8UC1 |
| dst | 输出图像数据,类型为 CV_8UC1 |
| map1 | 浮点 CV_32FC1 矩阵,每个元素作为源图像中映射位置的列坐标 |
| map2 | 浮点 CV_32FC1 矩阵,每个元素作为源图像中映射位置的行坐标。 |
| interpolation | 仅支持 INTER_NEAREST 和 INTER_LINEAR 插值 |
| borderValue | 恒定像素值 |
| void cv::fastcv::remapRGBA | ( | InputArray | src, |
| OutputArray | dst, | ||
| InputArray | map1, | ||
| InputArray | map2, | ||
| int | interpolation ) |
#include <opencv2/fastcv/remap.hpp>
使用双线性或最近邻插值对 4 通道 CV_8UC4 图像应用通用几何变换。
| src | 第一输入图像数据,类型为 CV_8UC4 |
| dst | 输出图像数据,类型为 CV_8UC4 |
| map1 | 浮点 CV_32FC1 矩阵,每个元素作为源图像中映射位置的列坐标 |
| map2 | 浮点 CV_32FC1 矩阵,每个元素作为源图像中映射位置的行坐标。 |
| interpolation | 仅支持 INTER_NEAREST 和 INTER_LINEAR 插值 |
| void cv::fastcv::resizeDown | ( | cv::InputArray | _src, |
| cv::OutputArray | _dst, | ||
| Size | dsize, | ||
| double | inv_scale_x, | ||
| double | inv_scale_y ) |
#include <opencv2/fastcv/scale.hpp>
使用指定的缩放因子或尺寸缩小图像。此函数支持单通道 (CV_8UC1) 和双通道 (CV_8UC2) 图像。
| _src | 输入图像数据,类型为 CV_8UC1 或 CV_8UC2。 |
| _dst | 输出图像数据,类型为 CV_8UC1 或 CV_8UC2。 |
| dsize | 输出图像的期望尺寸。如果为空,则使用 inv_scale_x 和 inv_scale_y 计算。 |
| inv_scale_x | 宽度的逆缩放因子。如果提供了 dsize,则忽略此参数。 |
| inv_scale_y | 高度的逆缩放因子。如果提供了 dsize,则忽略此参数。 |
| void cv::fastcv::sepFilter2D | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| int | ddepth, | ||
| InputArray | _kernelX, | ||
| InputArray | _kernelY ) |
#include <opencv2/fastcv/blur.hpp>
使用可分算子进行 NxN 相关运算。如果 srcImg 和 dstImg 指向同一地址且 srcStride 等于 dstStride,则会进行就地操作。最大到算子宽度一半的边界将被忽略。处理溢出的方式与 OpenCV 不同,该函数将对中间结果和最终结果进行右移。
| _src | 类型为 CV_8UC1 的输入图像 |
| _dst | 类型为 CV_8UC1、CV_16SC1 的输出图像 |
| ddepth | 输出图像的深度 |
| _kernelX | x 方向的滤波器算子数据 |
| _kernelY | Y 方向的滤波器算子数据(对于 CV_16SC1,kernelX 和 kernelY 应相同) |
| void cv::fastcv::sobel | ( | InputArray | _src, |
| OutputArray | _dx, | ||
| OutputArray | _dy, | ||
| int | kernel_size, | ||
| int | borderType, | ||
| int | borderValue ) |
#include <opencv2/fastcv/edges.hpp>
从源亮度数据创建不带归一化的 2D 梯度图像。计算 X 方向 1 阶导数或 Y 方向 1 阶导数,或同时计算两者。
| _src | 类型为 CV_8UC1 的输入图像 |
| _dx | 存储水平梯度的缓冲区。大小必须为 (dxyStride)*(height) 字节。如果为 NULL,则不计算水平梯度。 |
| _dy | 存储垂直梯度的缓冲区。大小必须为 (dxyStride)*(height) 字节。如果为 NULL,则不计算垂直梯度 |
| kernel_size | Sobel 算子尺寸,支持 3x3, 5x5, 7x7 |
| borderType | 边界类型,支持 BORDER_CONSTANT, BORDER_REPLICATE |
| borderValue | 恒定边界的边界值 |
| void cv::fastcv::sobel3x3u8 | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| OutputArray | _dsty = noArray(), | ||
| int | ddepth = CV_8U, | ||
| bool | normalization = false ) |
#include <opencv2/fastcv/edges.hpp>
从源亮度数据创建不带归一化的 2D 梯度图像。该函数在 3x3 邻域上计算中心差分,然后将结果与 Sobel 算子卷积,最大到算子宽度一半的边界将被忽略。
| _src | 类型为 CV_8UC1 的输入图像 |
| _dst | 如果给定了 _dsty,则是存储水平梯度的缓冲区;否则,输出 |dx|+|dy| 的 8 位图像。缓冲区大小为 (srcwidth)*(srcheight) 字节 |
| _dsty | (可选)存储垂直梯度的缓冲区。尺寸必须为 (srcwidth)*(srcheight)。 |
| ddepth | 输出图像的深度:CV_8SC1, CV_16SC1, CV_32FC1 |
| normalization | 是否对结果进行归一化 |
| void cv::fastcv::sobelPyramid | ( | InputArrayOfArrays | pyr, |
| OutputArrayOfArrays | dx, | ||
| OutputArrayOfArrays | dy, | ||
| int | outType = CV_8S ) |
#include <opencv2/fastcv/pyramid.hpp>
从图像金字塔创建梯度金字塔。注意:在梯度计算期间会忽略边界。
| pyr | 单通道 8 位图像的输入金字塔。仅支持连续图像。 |
| dx | 与 pyr 尺寸相同的水平 Sobel 梯度金字塔 |
| dy | 与 pyr 尺寸相同的垂直 Sobel 梯度金字塔 |
| outType | 输出数据类型,可以是 CV_8S、CV_16S 或 CV_32F |
| void cv::fastcv::split | ( | InputArray | src, |
| OutputArrayOfArrays | mv ) |
#include <opencv2/fastcv/channel.hpp>
将 CV_8U 多通道矩阵拆分为多个 CV_8UC1 矩阵。针对 Qualcomm 处理器进行了优化。
| src | 深度为 CV_8U 的输入 2、3 或 4 通道矩阵 |
| mv | 尺寸为 src.channels() 的 CV_8UC1 矩阵输出向量 |
| void cv::fastcv::dsp::sumOfAbsoluteDiffs | ( | cv::InputArray | _patch, |
| cv::InputArray | _src, | ||
| cv::OutputArray | _dst ) |
#include <opencv2/fastcv/sad_dsp.hpp>
图像与 8x8 模板的绝对差之和(SAD)。
| _patch | 第一输入图像数据,类型为 CV_8UC1 |
| _src | 输入图像数据,类型为 CV_8UC1 |
| _dst | 输出图像数据,类型为 CV_16UC1 |
| void cv::fastcv::dsp::thresholdOtsu | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| bool | type ) |
#include <opencv2/fastcv/thresh_dsp.hpp>
使用大津法(Otsu's method)对灰度图像进行二值化。如果像素值大于阈值,则将其设置为 max(255);否则设置为 min(0)。搜索使类内方差最小化的阈值。
| _src | 输入 8 位灰度图像。缓冲区大小为 srcStride*srcHeight 字节。 |
| _dst | 输出 8 位二值化图像。缓冲区大小为 dstStride*srcHeight 字节。 |
| type | 阈值类型,可以是 0 或 1。注意:对于阈值类型=0,如果像素值大于阈值,则设置为 maxValue;否则设为零。对于阈值类型=1,如果像素值大于阈值,则设置为零;否则设为 maxValue。 |
| void cv::fastcv::thresholdRange | ( | InputArray | src, |
| OutputArray | dst, | ||
| int | lowThresh, | ||
| int | highThresh, | ||
| int | trueValue, | ||
| int | falseValue ) |
#include <opencv2/fastcv/thresh.hpp>
根据一对阈值对灰度图像进行二值化。二值化后的图像将处于用户选择的两个值中。该函数在 Snapdragon 处理器上提供了更好的延迟表现。
| src | 8 位灰度图像 |
| dst | 与输入图像尺寸和类型相同的输出图像,可以与输入图像相同 |
| lowThresh | 用于二值化的低阈值 |
| highThresh | 用于二值化的向阈值 |
| trueValue | 如果源像素在阈值对定义的闭区间范围内,则分配给目标像素的值 |
| falseValue | 如果源像素在阈值对定义的闭区间范围外,则分配给目标像素的值 |
| void cv::fastcv::trackOpticalFlowLK | ( | InputArray | src, |
| InputArray | dst, | ||
| InputArrayOfArrays | srcPyr, | ||
| InputArrayOfArrays | dstPyr, | ||
| InputArray | ptsIn, | ||
| OutputArray | ptsOut, | ||
| InputArray | ptsEst, | ||
| OutputArray | statusVec, | ||
| cv::Size | winSize = cv::Size(7, 7), | ||
| cv::TermCriteria | termCriteria = cv::TermCriteria(cv::TermCriteria::MAX_ITER|cv::TermCriteria::EPS, 7, 0.03f *0.03f) ) |
#include <opencv2/fastcv/tracking.hpp>
使用 Lucas-Kanade 算法计算稀疏光流。接受 8 位无符号整数图像。在 Qualcomm 处理器上提供更快的执行速度。
| src | 类型为 8U 的输入单通道图像,初始运动帧 |
| dst | 类型为 8U 的输入单通道图像,最终运动帧,应具有与初始帧相同的尺寸和步长 |
| srcPyr | 从初始运动帧构建的金字塔 |
| dstPyr | 从最终运动帧构建的金字塔 |
| ptsIn | 起始点的初始子像素坐标数组,应包含 32F 2D 元素 |
| ptsOut | 计算出的最终点输出数组,应包含 32F 2D 元素 |
| ptsEst | 最终点的估计输入数组,应包含 32F 2D 元素,可以为空 |
| statusVec | 指示每个特征状态的 int32 值输出数组,可以为空 |
| winSize | 用于光流搜索的窗口尺寸。宽度和高度必须为奇数。建议值为 5、7 或 9 |
| termCriteria | 包含最大迭代次数、最大 epsilon 和停止条件的终止准则 |
| void cv::fastcv::trackOpticalFlowLK | ( | InputArray | src, |
| InputArray | dst, | ||
| InputArrayOfArrays | srcPyr, | ||
| InputArrayOfArrays | dstPyr, | ||
| InputArrayOfArrays | srcDxPyr, | ||
| InputArrayOfArrays | srcDyPyr, | ||
| InputArray | ptsIn, | ||
| OutputArray | ptsOut, | ||
| OutputArray | statusVec, | ||
| cv::Size | winSize = cv::Size(7, 7), | ||
| int | maxIterations = 7 ) |
#include <opencv2/fastcv/tracking.hpp>
LK 跟踪函数 v1 版本的重载。
| src | 类型为 8U 的输入单通道图像,初始运动帧 |
| dst | 类型为 8U 的输入单通道图像,最终运动帧,应具有与初始帧相同的尺寸和步长 |
| srcPyr | 从初始运动帧构建的金字塔 |
| dstPyr | 从最终运动帧构建的金字塔 |
| srcDxPyr | srcPyr 的 X 方向 Sobel 导数金字塔 |
| srcDyPyr | srcPyr 的 Y 方向 Sobel 导数金字塔 |
| ptsIn | 起始点的初始子像素坐标数组,应包含 32F 2D 元素 |
| ptsOut | 计算出的最终点输出数组,应包含 32F 2D 元素 |
| statusVec | 指示每个特征状态的 int32 值输出数组,可以为空 |
| winSize | 用于光流搜索的窗口尺寸。宽度和高度必须为奇数。建议值为 5、7 或 9 |
| maxIterations | 尝试的最大迭代次数 |
| void cv::fastcv::warpAffine | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| InputArray | _M, | ||
| Size | dsize, | ||
| int | interpolation = INTER_LINEAR, | ||
| int | borderValue = 0 ) |
#include <opencv2/fastcv/warp.hpp>
使用提供的变换矩阵对输入图像执行仿射变换。
该函数根据变换矩阵执行两种类型的操作
| _src | 输入图像。支持的格式:
|
| _dst | 输出图像。将与 src 类型相同,尺寸由 dsize 指定 |
| _M | 2x2/2x3 仿射变换矩阵(逆向映射) |
| dsize | 输出尺寸
|
| interpolation | 插值方法。仅适用于 CV_8UC1 输入的 2x3 变换。选项:
|
| borderValue | 边界像素的恒定像素值。仅适用于单通道输入的 2x3 变换。 |
| void cv::fastcv::warpPerspective | ( | InputArray | _src, |
| OutputArray | _dst, | ||
| InputArray | _M0, | ||
| Size | dsize, | ||
| int | interpolation, | ||
| int | borderType, | ||
| const Scalar & | borderValue ) |
#include <opencv2/fastcv/warp.hpp>
使用透视变换对图像进行变换,与 cv::warpPerspective 相同,但并非位精确一致。
| _src | 输入 8 位图像。 |
| _dst | 输出 8 位图像。 |
| _M0 | 3x3 透视变换矩阵。 |
| dsize | 输出图像的尺寸。 |
| interpolation | 插值方法。仅支持 cv::INTER_NEAREST, cv::INTER_LINEAR 和 cv::INTER_AREA。 |
| borderType | 像素外推方法。仅支持 cv::BORDER_CONSTANT, cv::BORDER_REPLICATE 和 cv::BORDER_TRANSPARENT。 |
| borderValue | 用于恒定边界情况的值。 |
| void cv::fastcv::warpPerspective2Plane | ( | InputArray | _src1, |
| InputArray | _src2, | ||
| OutputArray | _dst1, | ||
| OutputArray | _dst2, | ||
| InputArray | _M0, | ||
| Size | dsize ) |
#include <opencv2/fastcv/warp.hpp>
使用相同的变换对两个图像进行透视变换。适用时使用双线性插值。例如,同时对一个灰度图像和一个 alpha 图像进行变换,或对两个颜色通道进行变换。
| _src1 | 第一输入 8 位图像。缓冲区大小为 src1Stride*srcHeight 字节。 |
| _src2 | 第二输入 8 位图像。缓冲区大小为 src2Stride*srcHeight 字节。 |
| _dst1 | 第一个变换后的输出图像(对应 src1)。缓冲区大小为 dst1Stride*dstHeight 字节,类型为 CV_8UC1 |
| _dst2 | 第二个变换后的输出图像(对应 src2)。缓冲区大小为 dst2Stride*dstHeight 字节,类型为 CV_8UC1 |
| _M0 | 3x3 透视变换矩阵(逆向映射) |
| dsize | 输出图像尺寸 |