![]() |
OpenCV 4.12.0
开源计算机视觉
|
主题 | |
| 色彩空间处理 | |
| 直方图计算 | |
| 结构分析与形状描述 | |
| 霍夫变换 | |
| 特征检测 | |
类 | |
| 类 | cv::cuda::CannyEdgeDetector |
| Canny 边缘检测器的基类。 : 更多... | |
| 类 | cv::cuda::TemplateMatching |
| 模板匹配的基类。 : 更多... | |
枚举 | |
| 枚举 | cv::cuda::ConnectedComponentsAlgorithmsTypes { cv::cuda::CCL_DEFAULT = -1 , cv::cuda::CCL_BKE = 0 } |
| 连通分量算法。 更多... | |
#include <opencv2/cudaimgproc.hpp>
连通分量算法。
| 枚举器 | |
|---|---|
| CCL_DEFAULT | 用于 8 向连通性的 BKE [12] 算法。 |
| CCL_BKE | 用于 8 向连通性的 BKE [12] 算法。 |
| void cv::cuda::bilateralFilter | ( | InputArray | src, |
| OutputArray | dst, | ||
| int | kernel_size, | ||
| float | sigma_color, | ||
| float | sigma_spatial, | ||
| int | borderMode = BORDER_DEFAULT, | ||
| Stream & | stream = Stream::Null() ) |
#include <opencv2/cudaimgproc.hpp>
对传入图像执行双边滤波。
| src | 源图像。目前仅支持 (channels != 2 && depth() != CV_8S && depth() != CV_32S && depth() != CV_64F)。 |
| dst | 目标图像。 |
| kernel_size | 核窗口大小。 |
| sigma_color | 颜色空间中的滤波 sigma。 |
| sigma_spatial | 坐标空间中的滤波 sigma。 |
| borderMode | 边界类型。详情请参阅 borderInterpolate。目前支持 BORDER_REFLECT101、BORDER_REPLICATE、BORDER_CONSTANT、BORDER_REFLECT 和 BORDER_WRAP。 |
| 流 | 用于异步版本的流。 |
| void cv::cuda::blendLinear | ( | InputArray | img1, |
| InputArray | img2, | ||
| InputArray | weights1, | ||
| InputArray | weights2, | ||
| OutputArray | result, | ||
| Stream & | stream = Stream::Null() ) |
#include <opencv2/cudaimgproc.hpp>
对两张图像执行线性混合。
| img1 | 第一张图像。目前仅支持 CV_8U 和 CV_32F 深度。 |
| img2 | 第二张图像。必须与 img1 具有相同的大小和类型。 |
| weights1 | 第一张图像的权重。必须与 img1 具有相同的大小。目前仅支持 CV_32F 类型。 |
| weights2 | 第二张图像的权重。必须与 img2 具有相同的大小。目前仅支持 CV_32F 类型。 |
| result | 目标图像。 |
| 流 | 用于异步版本的流。 |
| void cv::cuda::connectedComponents | ( | InputArray | image, |
| OutputArray | labels, | ||
| int | connectivity, | ||
| int | ltype, | ||
| cv::cuda::ConnectedComponentsAlgorithmsTypes | ccltype ) |
#include <opencv2/cudaimgproc.hpp>
计算二值图像的连通分量标记图像。
该函数以二值图像作为输入,并执行连通分量标记。输出图像中,每个连通分量都被分配了一个唯一的标签(整数值)。ltype 指定输出标签图像的类型,这是一个根据标签总数或源图像总像素数的重要考虑因素。ccltype 指定要使用的连通分量标记算法,目前支持 BKE [12],详见 ConnectedComponentsAlgorithmsTypes。请注意,输出中的标签不要求是连续的。
| image | 要标记的 8 位单通道图像。 |
| labels | 目标标记图像。 |
| connectivity | 用于标记过程的连通性。目前支持 8 向连通性。 |
| ltype | 输出图像标签类型。目前支持 CV_32S。 |
| ccltype | 连通分量算法类型(详见 ConnectedComponentsAlgorithmsTypes)。 |
| void cv::cuda::connectedComponents | ( | InputArray | image, |
| OutputArray | labels, | ||
| int | connectivity = 8, | ||
| int | ltype = CV_32S ) |
#include <opencv2/cudaimgproc.hpp>
这是一个重载的成员函数,为方便起见而提供。它与上述函数的唯一区别在于其接受的参数。
| image | 要标记的 8 位单通道图像。 |
| labels | 目标标记图像。 |
| connectivity | 用于标记过程的连通性。目前支持 8 向连通性。 |
| ltype | 输出图像标签类型。目前支持 CV_32S。 |
| Ptr< CannyEdgeDetector > cv::cuda::createCannyEdgeDetector | ( | double | low_thresh, |
| double | high_thresh, | ||
| int | apperture_size = 3, | ||
| bool | L2gradient = false ) |
#include <opencv2/cudaimgproc.hpp>
创建 cuda::CannyEdgeDetector 的实现。
| low_thresh | 滞后过程的第一个阈值。 |
| high_thresh | 滞后过程的第二个阈值。 |
| apperture_size | Sobel 算子的孔径大小。 |
| L2gradient | 指示是否应使用更精确的 \(L_2\) 范数 \(=\sqrt{(dI/dx)^2 + (dI/dy)^2}\) 计算图像梯度幅值(L2gradient=true),或者更快的默认 \(L_1\) 范数 \(=|dI/dx|+|dI/dy|\) 是否足够(L2gradient=false)的标志。 |
| Ptr< TemplateMatching > cv::cuda::createTemplateMatching | ( | int | srcType, |
| int | 方法, | ||
| Size | user_block_size = Size() ) |
#include <opencv2/cudaimgproc.hpp>
创建 cuda::TemplateMatching 的实现。
| srcType | 输入源类型。目前支持 CV_32F 和 CV_8U 深度图像(1..4 通道)。 |
| 方法 | 指定将模板与图像进行比较的方式。 |
| user_block_size | 您可以使用字段 user_block_size 设置特定的块大小。如果保留其默认值 Size(0,0),将使用块大小的自动估计(为速度优化)。通过改变 user_block_size,您可以以牺牲速度为代价来减少内存需求。 |
目前支持 CV_8U 深度图像的以下方法:
目前支持 CV_32F 图像的以下方法:
| void cv::cuda::meanShiftFiltering | ( | InputArray | src, |
| OutputArray | dst, | ||
| int | sp, | ||
| int | sr, | ||
| TermCriteria | criteria = TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS, 5, 1), | ||
| Stream & | stream = Stream::Null() ) |
#include <opencv2/cudaimgproc.hpp>
对源图像的每个点执行均值漂移滤波。
| src | 源图像。目前仅支持 CV_8UC4 图像。 |
| dst | 目标图像,包含映射点的颜色。它与 src 具有相同的大小和类型。 |
| sp | 空间窗口半径。 |
| sr | 颜色窗口半径。 |
| criteria | 终止条件。详见 TermCriteria。 |
| 流 | 用于异步版本的流。 |
它将源图像的每个点映射到另一个点。结果是,每个点都拥有了新的颜色和新的位置。
| void cv::cuda::meanShiftProc | ( | InputArray | src, |
| OutputArray | dstr, | ||
| OutputArray | dstsp, | ||
| int | sp, | ||
| int | sr, | ||
| TermCriteria | criteria = TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS, 5, 1), | ||
| Stream & | stream = Stream::Null() ) |
#include <opencv2/cudaimgproc.hpp>
执行均值漂移过程,并将处理后的点(它们的颜色和位置)的信息存储在两张图像中。
| src | 源图像。目前仅支持 CV_8UC4 图像。 |
| dstr | 目标图像,包含映射点的颜色。其大小和类型与 src 相同。 |
| dstsp | 目标图像,包含映射点的位置。其大小与 src 大小相同。类型为 CV_16SC2。 |
| sp | 空间窗口半径。 |
| sr | 颜色窗口半径。 |
| criteria | 终止条件。详见 TermCriteria。 |
| 流 | 用于异步版本的流。 |
| void cv::cuda::meanShiftSegmentation | ( | InputArray | src, |
| OutputArray | dst, | ||
| int | sp, | ||
| int | sr, | ||
| int | minsize, | ||
| TermCriteria | criteria = TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS, 5, 1), | ||
| Stream & | stream = Stream::Null() ) |
#include <opencv2/cudaimgproc.hpp>
对源图像执行均值漂移分割并消除小片段。
| src | 源图像。目前仅支持 CV_8UC4 图像。 |
| dst | 分割后的图像,其大小和类型与 src 相同(主机或 GPU 内存)。 |
| sp | 空间窗口半径。 |
| sr | 颜色窗口半径。 |
| minsize | 最小片段大小。较小的片段将被合并。 |
| criteria | 终止条件。详见 TermCriteria。 |
| 流 | 用于异步版本的流。 |