OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
cv::cuda 命名空间参考

类  BackgroundSubtractorFGD
 该类通过建立和维护背景模型来区分前景和背景像素。更多...
 
类  BackgroundSubtractorGMG
 背景/前景分割算法更多...
 
类  BackgroundSubtractorMOG
 基于高斯混合的背景/前景分割算法更多...
 
类  BackgroundSubtractorMOG2
 基于高斯混合的背景/前景分割算法更多...
 
类  BroxOpticalFlow
 使用 Brox 等人的光流算法 ([43]) 计算两幅图像之间光流的类。更多...
 
类  BufferPool
 用于 CUDA 流的缓冲区池更多...
 
类  CannyEdgeDetector
 Canny 边缘检测器的基类。: 更多...
 
类  CascadeClassifier
 用于对象检测的级联分类器类。支持 HAAR 和 LBP 级联。: 更多...
 
类  CLAHE
 对比度受限自适应直方图均衡化的基类。: 更多...
 
类  卷积
 卷积(或互相关)运算符的基类。: 更多...
 
类  CornernessCriteria
 角点准则计算的基类。: 更多...
 
类  CornersDetector
 角点检测器的基类。: 更多...
 
类  DenseOpticalFlow
 稠密光流算法的基本接口。更多...
 
类  DensePyrLKOpticalFlow
 用于计算稠密光流的类。更多...
 
类  DescriptorMatcher
 用于匹配关键点描述符的抽象基类。更多...
 
类  DeviceInfo
 提供查询指定 GPU 属性功能的类。更多...
 
类  DFT
 作为cv::AlgorithmDFT运算符的基类。: 更多...
 
类  DisparityBilateralFilter
 使用联合双边滤波细化视差图的类。: 更多...
 
类  Event
 
结构体  EventAccessor
 能够从 cuda::Event 获取 cudaEvent_t 的类。更多...
 
类  FarnebackOpticalFlow
 使用 Gunnar Farneback 算法计算稠密光流的类。更多...
 
类  FastFeatureDetector
 使用 FAST 方法进行特征检测的包装类。更多...
 
类  FastOpticalFlowBM
 
类  Feature2DAsync
 CUDA 异步 2D 图像特征检测器和描述符提取器的抽象基类。更多...
 
结构体  FGDParams
 
类  Filter
 所有 CUDA 过滤器的通用接口。: 更多...
 
结构体  GpuData
 
类  GpuMat
 带有引用计数的 GPU 内存的基存储类。更多...
 
类  GpuMatND
 
类  HOG
 该类实现了方向梯度直方图 ([65]) 对象检测器。更多...
 
类  HostMem
 带有引用计数,封装了 CUDA 中特殊内存类型分配函数的类。更多...
 
类  HoughCirclesDetector
 圆检测算法的基类。: 更多...
 
类  HoughLinesDetector
 线检测算法的基类。: 更多...
 
类  HoughSegmentDetector
 线段检测算法的基类。: 更多...
 
类  ImagePyramid
 
类  查找表
 使用查找表的变换的基类。更多...
 
类  NvidiaHWOpticalFlow
 使用 NVIDIA Optical Flow SDK 的光流算法的基本接口。更多...
 
类  NvidiaOpticalFlow_1_0
 使用 NVIDIA 光流硬件和 Optical Flow SDK 1.0 计算两幅图像之间光流向量的类。更多...
 
类  NvidiaOpticalFlow_2_0
 使用 NVIDIA 光流硬件和 Optical Flow SDK 2.0 计算两幅图像之间光流向量的类。更多...
 
类  OpticalFlowDual_TVL1
 Zach、Pock 和 Bischof Dual TV-L1 光流方法的实现。更多...
 
类  ORB
 实现了 ORB (oriented BRIEF) 关键点检测器和描述符提取器的类。更多...
 
类  SparseOpticalFlow
 稀疏光流算法的基本接口。更多...
 
类  SparsePyrLKOpticalFlow
 用于计算稀疏光流的类。更多...
 
类  StereoBeliefPropagation
 使用信念传播算法计算立体对应的类。: 更多...
 
类  StereoBM
 使用块匹配算法计算立体对应(视差图)的类。: 更多...
 
类  StereoConstantSpaceBP
 使用恒定空间信念传播算法计算立体对应的类。: 更多...
 
类  StereoSGM
 该类实现了修改后的 H. Hirschmuller 算法 [128]。限制和差异如下:更多...
 
类  Stream
 此类封装了一个异步调用队列。更多...
 
结构体  StreamAccessor
 能够从 cuda::Stream 获取 cudaStream_t 的类。更多...
 
类  SURF_CUDA
 用于从图像中提取加速鲁棒特征 (SURF) 的类。: 更多...
 
类  TargetArchs
 提供一组静态方法来检查 CUDA 模块是为哪个 NVIDIA* 卡架构构建的类。更多...
 
类  TemplateMatching
 模板匹配的基类。: 更多...
 

枚举

枚举  AlphaCompTypes {
  ALPHA_OVER ,
  ALPHA_IN ,
  ALPHA_OUT ,
  ALPHA_ATOP ,
  ALPHA_XOR ,
  ALPHA_PLUS ,
  ALPHA_OVER_PREMUL ,
  ALPHA_IN_PREMUL ,
  ALPHA_OUT_PREMUL ,
  ALPHA_ATOP_PREMUL ,
  ALPHA_XOR_PREMUL ,
  ALPHA_PLUS_PREMUL ,
  ALPHA_PREMUL
}
 
枚举  ConnectedComponentsAlgorithmsTypes {
  CCL_DEFAULT = -1 ,
  CCL_BKE = 0
}
 连通分量算法。更多...
 
枚举  DemosaicTypes {
  COLOR_BayerBG2BGR_MHT = 256 ,
  COLOR_BayerGB2BGR_MHT = 257 ,
  COLOR_BayerRG2BGR_MHT = 258 ,
  COLOR_BayerGR2BGR_MHT = 259 ,
  COLOR_BayerBG2RGB_MHT = COLOR_BayerRG2BGR_MHT ,
  COLOR_BayerGB2RGB_MHT = COLOR_BayerGR2BGR_MHT ,
  COLOR_BayerRG2RGB_MHT = COLOR_BayerBG2BGR_MHT ,
  COLOR_BayerGR2RGB_MHT = COLOR_BayerGB2BGR_MHT ,
  COLOR_BayerBG2GRAY_MHT = 260 ,
  COLOR_BayerGB2GRAY_MHT = 261 ,
  COLOR_BayerRG2GRAY_MHT = 262 ,
  COLOR_BayerGR2GRAY_MHT = 263
}
 
枚举  FeatureSet {
  FEATURE_SET_COMPUTE_10 = 10 ,
  FEATURE_SET_COMPUTE_11 = 11 ,
  FEATURE_SET_COMPUTE_12 = 12 ,
  FEATURE_SET_COMPUTE_13 = 13 ,
  FEATURE_SET_COMPUTE_20 = 20 ,
  FEATURE_SET_COMPUTE_21 = 21 ,
  FEATURE_SET_COMPUTE_30 = 30 ,
  FEATURE_SET_COMPUTE_32 = 32 ,
  FEATURE_SET_COMPUTE_35 = 35 ,
  FEATURE_SET_COMPUTE_50 = 50 ,
  GLOBAL_ATOMICS = FEATURE_SET_COMPUTE_11 ,
  SHARED_ATOMICS = FEATURE_SET_COMPUTE_12 ,
  NATIVE_DOUBLE = FEATURE_SET_COMPUTE_13 ,
  WARP_SHUFFLE_FUNCTIONS = FEATURE_SET_COMPUTE_30 ,
  DYNAMIC_PARALLELISM = FEATURE_SET_COMPUTE_35
}
 提供 CUDA 计算功能的枚举。更多...
 
枚举  MomentsOrder {
  FIRST_ORDER_MOMENTS = 1 ,
  SECOND_ORDER_MOMENTS = 2 ,
  THIRD_ORDER_MOMENTS = 3
}
 图像矩的阶。更多...
 

函数

void abs (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 计算每个矩阵元素的绝对值。
 
void absdiff (InputArray src1, InputArray src2, OutputArray dst, Stream &stream=Stream::Null())
 计算两个矩阵(或一个矩阵与标量)的逐元素绝对差。
 
void absdiffWithScalar (InputArray src1, Scalar src2, OutputArray dst, Stream &stream=Stream::Null())
 计算矩阵与标量的逐元素绝对差。
 
Scalar absSum (InputArray src, InputArray mask=noArray())
 返回矩阵元素的绝对值之和。
 
void add (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1, Stream &stream=Stream::Null())
 计算矩阵-矩阵或矩阵-标量之和。
 
void addWeighted (InputArray src1, double alpha, InputArray src2, double beta, double gamma, OutputArray dst, int dtype=-1, Stream &stream=Stream::Null())
 计算两个数组的加权和。
 
void addWithScalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1, Stream &stream=Stream::Null())
 计算矩阵-标量和。
 
void alphaComp (InputArray img1, InputArray img2, OutputArray dst, int alpha_op, Stream &stream=Stream::Null())
 使用每幅图像中包含的 alpha 不透明度值合成两幅图像。
 
void bilateralFilter (InputArray src, OutputArray dst, int kernel_size, float sigma_color, float sigma_spatial, int borderMode=BORDER_DEFAULT, Stream &stream=Stream::Null())
 对传入图像执行双边滤波。
 
void bitwise_and (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 执行两个矩阵(或矩阵与标量)的逐元素位与运算。
 
void bitwise_and_with_scalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 执行矩阵与标量的逐元素位与运算。
 
void bitwise_not (InputArray src, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 执行按元素位反转。
 
void bitwise_or (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 执行两个矩阵(或矩阵与标量)的逐元素位或运算。
 
void bitwise_or_with_scalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 执行矩阵与标量的逐元素位或运算。
 
void bitwise_xor (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 执行两个矩阵(或矩阵与标量)的逐元素位异或运算。
 
void bitwise_xor_with_scalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 执行矩阵与标量的逐元素位异或运算。
 
void blendLinear (InputArray img1, InputArray img2, InputArray weights1, InputArray weights2, OutputArray result, Stream &stream=Stream::Null())
 对两张图像执行线性混合。
 
void buildWarpAffineMaps (InputArray M, bool inverse, Size dsize, OutputArray xmap, OutputArray ymap, Stream &stream=Stream::Null())
 构建用于仿射变换的变换映射。
 
void buildWarpAffineMaps (Mat M, bool inverse, Size dsize, GpuMat &xmap, GpuMat &ymap, Stream &stream=Stream::Null())
 
void buildWarpAffineMaps (UMat M, bool inverse, Size dsize, GpuMat &xmap, GpuMat &ymap, Stream &stream=Stream::Null())
 
void buildWarpPerspectiveMaps (InputArray M, bool inverse, Size dsize, OutputArray xmap, OutputArray ymap, Stream &stream=Stream::Null())
 构建用于透视变换的变换映射。
 
void buildWarpPerspectiveMaps (Mat M, bool inverse, Size dsize, GpuMat &xmap, GpuMat &ymap, Stream &stream=Stream::Null())
 
void buildWarpPerspectiveMaps (UMat M, bool inverse, Size dsize, GpuMat &xmap, GpuMat &ymap, Stream &stream=Stream::Null())
 
void calcAbsSum (InputArray src, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 
void calcHist (InputArray src, InputArray mask, OutputArray hist, Stream &stream=Stream::Null())
 计算给定掩码下,单通道 8 位图像的直方图。
 
void calcHist (InputArray src, OutputArray hist, Stream &stream=Stream::Null())
 计算单通道 8 位图像的直方图。
 
void calcNorm (InputArray src, OutputArray dst, int normType, InputArray mask=noArray(), Stream &stream=Stream::Null())
 
void calcNormDiff (InputArray src1, InputArray src2, OutputArray dst, int normType=NORM_L2, Stream &stream=Stream::Null())
 
void 使用块匹配算法计算两幅图像的光流。*‍/calcOpticalFlowBM (const GpuMat &prev, const GpuMat &curr, Size block_size, Size shift_size, Size max_range, bool use_previous, GpuMat &velx, GpuMat &vely, GpuMat &buf, Stream &stream=Stream::Null())
 计算两幅图像的光流,使用块匹配算法。
 
void calcSqrSum (InputArray src, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 
void calcSum (InputArray src, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 
void cartToPolar (InputArray x, InputArray y, OutputArray magnitude, OutputArray angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 将笛卡尔坐标转换为极坐标。
 
void cartToPolar (InputArray xy, OutputArray magnitude, OutputArray angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 将笛卡尔坐标转换为极坐标。
 
void cartToPolar (InputArray xy, OutputArray magnitudeAngle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 将笛卡尔坐标转换为极坐标。
 
void compare (InputArray src1, InputArray src2, OutputArray dst, int cmpop, Stream &stream=Stream::Null())
 比较两个矩阵(或一个矩阵与标量)的元素。
 
void compareWithScalar (InputArray src1, Scalar src2, OutputArray dst, int cmpop, Stream &stream=Stream::Null())
 比较矩阵与标量的元素。
 
void connectedComponents (InputArray image, OutputArray labels, int connectivity, int ltype, cv::cuda::ConnectedComponentsAlgorithmsTypes ccltype)
 计算二值图像的连通分量标记图像。
 
void connectedComponents (InputArray image, OutputArray labels, int connectivity=8, int ltype=CV_32S)
 
void connectivityMask (const GpuMat &image, GpuMat &mask, const cv::Scalar &lo, const cv::Scalar &hi, Stream &stream=Stream::Null())
 计算泛洪填充分量标记的掩码。
 
void convertFp16 (InputArray _src, OutputArray _dst, Stream &stream=Stream::Null())
 Converts an array to half precision floating number.
 
Moments convertSpatialMoments (Mat spatialMoments, const MomentsOrder order, const int momentsType)
 cuda::spatialMoments 返回的空间图像矩转换为 cv::Moments
 
void copyMakeBorder (InputArray src, OutputArray dst, int top, int bottom, int left, int right, int borderType, Scalar value=Scalar(), Stream &stream=Stream::Null())
 Forms a border around an image.
 
int countNonZero (InputArray src)
 计数非零矩阵元素。
 
void countNonZero (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 
Ptr< cuda::BackgroundSubtractorFGDcreateBackgroundSubtractorFGD (const FGDParams &params=FGDParams())
 创建FGD背景减法器。
 
Ptr< cuda::BackgroundSubtractorGMGcreateBackgroundSubtractorGMG (int initializationFrames=120, double decisionThreshold=0.8)
 创建GMG背景减法器。
 
Ptr< cuda::BackgroundSubtractorMOGcreateBackgroundSubtractorMOG (int history=200, int nmixtures=5, double backgroundRatio=0.7, double noiseSigma=0)
 创建高斯混合背景减除器。
 
Ptr< cuda::BackgroundSubtractorMOG2createBackgroundSubtractorMOG2 (int history=500, double varThreshold=16, bool detectShadows=true)
 创建MOG2背景减除器。
 
Ptr< FiltercreateBoxFilter (int srcType, int dstType, Size ksize, Point anchor=Point(-1, -1), int borderMode=BORDER_DEFAULT, Scalar borderVal=Scalar::all(0))
 创建一个归一化的二维盒式滤波器。
 
Ptr< FiltercreateBoxMaxFilter (int srcType, Size ksize, Point anchor=Point(-1, -1), int borderMode=BORDER_DEFAULT, Scalar borderVal=Scalar::all(0))
 创建最大值滤波器。
 
Ptr< FiltercreateBoxMinFilter (int srcType, Size ksize, Point anchor=Point(-1, -1), int borderMode=BORDER_DEFAULT, Scalar borderVal=Scalar::all(0))
 创建最小值滤波器。
 
Ptr< CannyEdgeDetectorcreateCannyEdgeDetector (double low_thresh, double high_thresh, int apperture_size=3, bool L2gradient=false)
 创建 cuda::CannyEdgeDetector 的实现。
 
Ptr< cuda::CLAHEcreateCLAHE (double clipLimit=40.0, Size tileGridSize=Size(8, 8))
 创建 cuda::CLAHE 的实现。
 
Ptr< FiltercreateColumnSumFilter (int srcType, int dstType, int ksize, int anchor=-1, int borderMode=BORDER_DEFAULT, Scalar borderVal=Scalar::all(0))
 创建垂直一维盒式滤波器。
 
void createContinuous (int rows, int cols, int type, OutputArray arr)
 创建连续矩阵。
 
Ptr< ConvolutioncreateConvolution (Size user_block_size=Size())
 创建 cuda::Convolution 的实现。
 
Ptr< FiltercreateDerivFilter (int srcType, int dstType, int dx, int dy, int ksize, bool normalize=false, double scale=1, int rowBorderMode=BORDER_DEFAULT, int columnBorderMode=-1)
 创建广义导数(Deriv)运算符。
 
Ptr< DFTcreateDFT (Size dft_size, int flags)
 创建 cuda::DFT 的实现。
 
Ptr< cuda::DisparityBilateralFiltercreateDisparityBilateralFilter (int ndisp=64, int radius=3, int iters=1)
 创建 DisparityBilateralFilter 对象。
 
Ptr< FiltercreateGaussianFilter (int srcType, int dstType, Size ksize, double sigma1, double sigma2=0, int rowBorderMode=BORDER_DEFAULT, int columnBorderMode=-1)
 创建高斯滤波器。
 
Ptr< GeneralizedHoughBallardcreateGeneralizedHoughBallard ()
 创建 [16] 中广义霍夫变换的实现。
 
Ptr< GeneralizedHoughGuilcreateGeneralizedHoughGuil ()
 创建 [116] 中广义霍夫变换的实现。
 
Ptr< CornersDetectorcreateGoodFeaturesToTrackDetector (int srcType, int maxCorners=1000, double qualityLevel=0.01, double minDistance=0.0, int blockSize=3, bool useHarrisDetector=false, double harrisK=0.04)
 创建 cuda::CornersDetector 的实现。
 
GpuMat createGpuMatFromCudaMemory (int rows, int cols, int type, size_t cudaMemoryAddress, size_t step=Mat::AUTO_STEP)
 从现有 GPU 内存创建 GpuMat 的绑定重载。
 
GpuMat createGpuMatFromCudaMemory (Size size, int type, size_t cudaMemoryAddress, size_t step=Mat::AUTO_STEP)
 
Ptr< CornernessCriteriacreateHarrisCorner (int srcType, int blockSize, int ksize, double k, int borderType=BORDER_REFLECT101)
 创建 Harris 角点准则的实现。
 
Ptr< HoughCirclesDetectorcreateHoughCirclesDetector (float dp, float minDist, int cannyThreshold, int votesThreshold, int minRadius, int maxRadius, int maxCircles=4096)
 创建 cuda::HoughCirclesDetector 的实现。
 
Ptr< HoughLinesDetectorcreateHoughLinesDetector (float rho, float theta, int threshold, bool doSort=false, int maxLines=4096)
 创建 cuda::HoughLinesDetector 的实现。
 
Ptr< HoughSegmentDetectorcreateHoughSegmentDetector (float rho, float theta, int minLineLength, int maxLineGap, int maxLines=4096, int threshold=-1)
 创建 cuda::HoughSegmentDetector 的实现。
 
Ptr< ImagePyramidcreateImagePyramid (InputArray img, int nLayers=-1, Stream &stream=Stream::Null())
 
Ptr< FiltercreateLaplacianFilter (int srcType, int dstType, int ksize=1, double scale=1, int borderMode=BORDER_DEFAULT, Scalar borderVal=Scalar::all(0))
 创建拉普拉斯(Laplacian)运算符。
 
Ptr< FiltercreateLinearFilter (int srcType, int dstType, InputArray kernel, Point anchor=Point(-1, -1), int borderMode=BORDER_DEFAULT, Scalar borderVal=Scalar::all(0))
 创建不可分离的线性二维滤波器。
 
Ptr< LookUpTablecreateLookUpTable (InputArray lut)
 创建 cuda::LookUpTable 的实现。
 
Ptr< FiltercreateMedianFilter (int srcType, int windowSize, int partition=128)
 对源图像的每个点执行中值滤波。
 
Ptr< CornernessCriteriacreateMinEigenValCorner (int srcType, int blockSize, int ksize, int borderType=BORDER_REFLECT101)
 创建 2x2 导数协变矩阵的最小特征值(角点准则)的实现。
 
Ptr< FiltercreateMorphologyFilter (int op, int srcType, InputArray kernel, Point anchor=Point(-1, -1), int iterations=1)
 创建二维形态学滤波器。
 
void createOpticalFlowNeedleMap (const GpuMat &u, const GpuMat &v, GpuMat &vertex, GpuMat &colors)
 
Ptr< FiltercreateRowSumFilter (int srcType, int dstType, int ksize, int anchor=-1, int borderMode=BORDER_DEFAULT, Scalar borderVal=Scalar::all(0))
 创建水平一维盒式滤波器。
 
Ptr< FiltercreateScharrFilter (int srcType, int dstType, int dx, int dy, double scale=1, int rowBorderMode=BORDER_DEFAULT, int columnBorderMode=-1)
 创建垂直或水平的 Scharr 运算符。
 
Ptr< FiltercreateSeparableLinearFilter (int srcType, int dstType, InputArray rowKernel, InputArray columnKernel, Point anchor=Point(-1,-1), int rowBorderMode=BORDER_DEFAULT, int columnBorderMode=-1)
 创建可分离线性滤波器。支持就地处理。
 
Ptr< FiltercreateSobelFilter (int srcType, int dstType, int dx, int dy, int ksize=3, double scale=1, int rowBorderMode=BORDER_DEFAULT, int columnBorderMode=-1)
 创建 Sobel 运算符。
 
Ptr< cuda::StereoBeliefPropagationcreateStereoBeliefPropagation (int ndisp=64, int iters=5, int levels=5, int msg_type=CV_32F)
 创建 StereoBeliefPropagation 对象。
 
Ptr< cuda::StereoBMcreateStereoBM (int numDisparities=64, int blockSize=19)
 创建 StereoBM 对象。
 
Ptr< cuda::StereoConstantSpaceBPcreateStereoConstantSpaceBP (int ndisp=128, int iters=8, int levels=4, int nr_plane=4, int msg_type=CV_32F)
 创建 StereoConstantSpaceBP 对象。
 
Ptr< cuda::StereoSGMcreateStereoSGM (int minDisparity=0, int numDisparities=128, int P1=10, int P2=120, int uniquenessRatio=5, int mode=cv::cuda::StereoSGM::MODE_HH4)
 创建 StereoSGM 对象。
 
Ptr< TemplateMatchingcreateTemplateMatching (int srcType, int method, Size user_block_size=Size())
 创建 cuda::TemplateMatching 的实现。
 
void cvtColor (InputArray src, OutputArray dst, int code, int dcn=0, Stream &stream=Stream::Null())
 将图像从一个颜色空间转换为另一个颜色空间。
 
void demosaicing (InputArray src, OutputArray dst, int code, int dcn=-1, Stream &stream=Stream::Null())
 将图像从 Bayer 模式转换为 RGB 或灰度。
 
bool deviceSupports (FeatureSet feature_set)
 检查当前设备是否支持给定功能
 
void dft (InputArray src, OutputArray dst, Size dft_size, int flags=0, Stream &stream=Stream::Null())
 对浮点矩阵执行前向或逆向离散傅里叶变换(1D 或 2D)。
 
void divide (InputArray src1, InputArray src2, OutputArray dst, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
 计算矩阵-矩阵或矩阵-标量除法。
 
void divideWithScalar (InputArray src1, Scalar src2, OutputArray dst, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
 计算矩阵-标量除法。
 
void drawColorDisp (InputArray src_disp, OutputArray dst_disp, int ndisp, Stream &stream=Stream::Null())
 为视差图像着色。
 
void ensureSizeIsEnough (int rows, int cols, int type, OutputArray arr)
 确保矩阵的大小足够且类型正确。
 
void equalizeHist (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 均衡灰度图像的直方图。
 
void evenLevels (OutputArray levels, int nLevels, int lowerLevel, int upperLevel, Stream &stream=Stream::Null())
 计算均匀分布的水平。
 
void exp (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 计算每个矩阵元素的指数。
 
void fastNlMeansDenoising (const GpuMat &src, GpuMat &dst, float h, int search_window=21, int block_size=7, Stream &stream=Stream::Null())
 
void fastNlMeansDenoising (InputArray src, OutputArray dst, float h, int search_window=21, int block_size=7, Stream &stream=Stream::Null())
 使用非局部均值去噪算法 http://www.ipol.im/pub/algo/bcm_non_local_means_denoising 进行图像去噪,并进行了一些计算优化。期望噪声为高斯白噪声。
 
void fastNlMeansDenoisingColored (const GpuMat &src, GpuMat &dst, float h_luminance, float photo_render, int search_window=21, int block_size=7, Stream &stream=Stream::Null())
 
void fastNlMeansDenoisingColored (InputArray src, OutputArray dst, float h_luminance, float photo_render, int search_window=21, int block_size=7, Stream &stream=Stream::Null())
 针对彩色图像的 fastNlMeansDenoising 函数的修改版本。
 
void findMinMax (InputArray src, OutputArray dst, InputArray mask=noArray(), Stream &stream=Stream::Null())
 
void findMinMaxLoc (InputArray src, OutputArray minMaxVals, OutputArray loc, InputArray mask=noArray(), Stream &stream=Stream::Null())
 
void flip (InputArray src, OutputArray dst, int flipCode, Stream &stream=Stream::Null())
 围绕垂直、水平或两个轴翻转二维矩阵。
 
void gammaCorrection (InputArray src, OutputArray dst, bool forward=true, Stream &stream=Stream::Null())
 用于校正图像色彩伽马的例程。
 
void gemm (InputArray src1, InputArray src2, double alpha, InputArray src3, double beta, OutputArray dst, int flags=0, Stream &stream=Stream::Null())
 执行广义矩阵乘法。
 
int getCudaEnabledDeviceCount ()
 返回已安装的启用 CUDA 的设备数量。
 
int 获取设备 ()
 返回由 cuda::setDevice 设置或默认初始化的当前设备索引。
 
void graphcut (GpuMat &terminals, GpuMat &leftTransp, GpuMat &rightTransp, GpuMat &top, GpuMat &bottom, GpuMat &labels, GpuMat &buf, Stream &stream=Stream::Null())
 通过图割算法对 2D 正则 4 连通图进行标记。
 
void graphcut (GpuMat &terminals, GpuMat &leftTransp, GpuMat &rightTransp, GpuMat &top, GpuMat &topLeft, GpuMat &topRight, GpuMat &bottom, GpuMat &bottomLeft, GpuMat &bottomRight, GpuMat &labels, GpuMat &buf, Stream &stream=Stream::Null())
 通过图割算法对 2D 正则 8 连通图进行标记。
 
void histEven (InputArray src, GpuMat hist[4], int histSize[4], int lowerLevel[4], int upperLevel[4], Stream &stream=Stream::Null())
 
void histEven (InputArray src, OutputArray hist, int histSize, int lowerLevel, int upperLevel, Stream &stream=Stream::Null())
 计算具有均匀分布直方图的等级。
 
void histRange (InputArray src, GpuMat hist[4], const GpuMat levels[4], Stream &stream=Stream::Null())
 
void histRange (InputArray src, OutputArray hist, InputArray levels, Stream &stream=Stream::Null())
 计算由 levels 数组确定的直方图。
 
void inRange (InputArray src, const Scalar &lowerb, const Scalar &upperb, OutputArray dst, Stream &stream=Stream::Null())
 检查数组元素是否介于两个标量之间。
 
void integral (InputArray src, OutputArray sum, Stream &stream=Stream::Null())
 计算积分图像。
 
void interpolateFrames (const GpuMat &frame0, const GpuMat &frame1, const GpuMat &fu, const GpuMat &fv, const GpuMat &bu, const GpuMat &bv, float pos, GpuMat &newFrame, GpuMat &buf, Stream &stream=Stream::Null())
 使用提供的光流(位移场)插值帧(图像)。
 
void labelComponents (const GpuMat &mask, GpuMat &components, int flags=0, Stream &stream=Stream::Null())
 执行连通分量标记。
 
void log (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 计算每个矩阵元素绝对值的自然对数。
 
void lshift (InputArray src, Scalar val, OutputArray dst, Stream &stream=Stream::Null())
 
void lshift (InputArray src, Scalar_< int > val, OutputArray dst, Stream &stream=Stream::Null())
 执行图像的逐像素右左位移(通过常数值)。
 
void magnitude (InputArray x, InputArray y, OutputArray magnitude, Stream &stream=Stream::Null())
 
void magnitude (InputArray xy, OutputArray magnitude, Stream &stream=Stream::Null())
 计算复杂矩阵元素的幅值。
 
void magnitudeSqr (InputArray x, InputArray y, OutputArray magnitude, Stream &stream=Stream::Null())
 
void magnitudeSqr (InputArray xy, OutputArray magnitude, Stream &stream=Stream::Null())
 计算复杂矩阵元素的平方幅值。
 
void max (InputArray src1, InputArray src2, OutputArray dst, Stream &stream=Stream::Null())
 计算两个矩阵(或一个矩阵与一个标量)的逐元素最大值。
 
void maxWithScalar (InputArray src1, Scalar src2, OutputArray dst, Stream &stream=Stream::Null())
 计算矩阵与标量的逐元素最大值。
 
void meanShiftFiltering (InputArray src, OutputArray dst, int sp, int sr, TermCriteria criteria=TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS, 5, 1), Stream &stream=Stream::Null())
 对源图像的每个点执行均值漂移滤波。
 
void 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())
 执行均值漂移过程,并将处理后的点(其颜色和位置)信息存储在两张图像中。
 
void 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())
 对源图像执行均值漂移分割并消除小片段。
 
void meanStdDev (InputArray mtx, OutputArray dst, Stream &stream=Stream::Null())
 
void meanStdDev (InputArray mtx, Scalar &mean, Scalar &stddev)
 
void meanStdDev (InputArray src, OutputArray dst, InputArray mask, Stream &stream=Stream::Null())
 计算矩阵元素的平均值和标准差。
 
void meanStdDev (InputArray src, Scalar &mean, Scalar &stddev, InputArray mask)
 
void merge (const GpuMat *src, size_t n, OutputArray dst, Stream &stream=Stream::Null())
 将多个单通道矩阵合并为一个多通道矩阵。
 
void merge (const std::vector< GpuMat > &src, OutputArray dst, Stream &stream=Stream::Null())
 
void min (InputArray src1, InputArray src2, OutputArray dst, Stream &stream=Stream::Null())
 计算两个矩阵(或一个矩阵与一个标量)的逐元素最小值。
 
void minMax (InputArray src, double *minVal, double *maxVal, InputArray mask=noArray())
 查找全局最小和最大矩阵元素并返回其值。
 
void minMaxLoc (InputArray src, double *minVal, double *maxVal, Point *minLoc, Point *maxLoc, InputArray mask=noArray())
 查找全局最小和最大矩阵元素,并返回其值及位置。
 
void minWithScalar (InputArray src1, Scalar src2, OutputArray dst, Stream &stream=Stream::Null())
 计算矩阵与标量的逐元素最小值。
 
Moments moments (InputArray src, const bool binaryImage=false, const MomentsOrder order=MomentsOrder::THIRD_ORDER_MOMENTS, const int momentsType=CV_64F)
 计算光栅化形状的所有三阶矩。
 
void mulAndScaleSpectrums (InputArray src1, InputArray src2, OutputArray dst, int flags, float scale, bool conjB=false, Stream &stream=Stream::Null())
 对两个傅里叶频谱执行逐元素乘法并缩放结果。
 
void mulSpectrums (InputArray src1, InputArray src2, OutputArray dst, int flags, bool conjB=false, Stream &stream=Stream::Null())
 对两个傅里叶频谱执行逐元素乘法。
 
void multiply (InputArray src1, InputArray src2, OutputArray dst, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
 计算矩阵-矩阵或矩阵-标量按元素乘积。
 
void multiplyWithScalar (InputArray src1, Scalar src2, OutputArray dst, double scale=1, int dtype=-1, Stream &stream=Stream::Null())
 计算矩阵与标量的逐元素乘积。
 
void nonLocalMeans (const GpuMat &src, GpuMat &dst, float h, int search_window=21, int block_size=7, int borderMode=BORDER_DEFAULT, Stream &stream=Stream::Null())
 
void nonLocalMeans (InputArray src, OutputArray dst, float h, int search_window=21, int block_size=7, int borderMode=BORDER_DEFAULT, Stream &stream=Stream::Null())
 执行纯粹的非局部均值去噪,无任何简化,因此速度不快。
 
double norm (InputArray src1, InputArray src2, int normType=NORM_L2)
 返回两个矩阵的差值。
 
double norm (InputArray src1, int normType, InputArray mask=noArray())
 返回矩阵的范数(或两个矩阵的差值范数)。
 
void normalize (InputArray src, OutputArray dst, double alpha, double beta, int norm_type, int dtype, InputArray mask=noArray(), Stream &stream=Stream::Null())
 对数组的范数或值范围进行归一化。
 
int numMoments (const MomentsOrder order)
 返回小于或等于最大图像矩 order 的图像矩数量。
 
void phase (InputArray x, InputArray y, OutputArray angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 计算复数矩阵元素的极角。
 
void phase (InputArray xy, OutputArray angle, bool angleInDegrees=false, Stream &stream=Stream::Null())
 计算复数矩阵元素的极角。
 
void polarToCart (InputArray magnitude, InputArray angle, OutputArray x, OutputArray y, bool angleInDegrees=false, Stream &stream=Stream::Null())
 将极坐标转换为笛卡尔坐标。
 
void polarToCart (InputArray magnitude, InputArray angle, OutputArray xy, bool angleInDegrees=false, Stream &stream=Stream::Null())
 将极坐标转换为笛卡尔坐标。
 
void polarToCart (InputArray magnitudeAngle, OutputArray xy, bool angleInDegrees=false, Stream &stream=Stream::Null())
 将极坐标转换为笛卡尔坐标。
 
void pow (InputArray src, double power, OutputArray dst, Stream &stream=Stream::Null())
 将每个矩阵元素提升到指定幂。
 
void printCudaDeviceInfo (int device)
 
void printShortCudaDeviceInfo (int device)
 
void projectPoints (const GpuMat &src, const Mat &rvec, const Mat &tvec, const Mat &camera_mat, const Mat &dist_coef, GpuMat &dst, Stream &stream=Stream::Null())
 
void pyrDown (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 平滑图像并对其进行下采样。
 
void pyrUp (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 对图像进行上采样然后平滑。
 
void rectStdDev (InputArray src, InputArray sqr, OutputArray dst, Rect rect, Stream &stream=Stream::Null())
 计算积分图像的标准差。
 
void reduce (InputArray mtx, OutputArray vec, int dim, int reduceOp, int dtype=-1, Stream &stream=Stream::Null())
 将矩阵降维为向量。
 
void registerPageLocked (Mat &m)
 页面锁定矩阵内存并将其映射到设备。
 
void remap (InputArray src, OutputArray dst, InputArray xmap, InputArray ymap, int interpolation, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
 对图像应用通用几何变换。
 
void reprojectImageTo3D (GpuMat disp, GpuMat &xyzw, Mat Q, int dst_cn=4, Stream &stream=Stream::Null())
 
void reprojectImageTo3D (InputArray disp, OutputArray xyzw, InputArray Q, int dst_cn=4, Stream &stream=Stream::Null())
 将视差图像重新投影到3D空间。
 
void 重置设备 ()
 明确销毁并清理当前进程中与当前设备关联的所有资源。
 
void resize (InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR, Stream &stream=Stream::Null())
 调整图像大小。
 
void rotate (InputArray src, OutputArray dst, Size dsize, double angle, double xShift=0, double yShift=0, int interpolation=INTER_LINEAR, Stream &stream=Stream::Null())
 围绕原点 (0,0) 旋转图像,然后对其进行平移。
 
void rshift (InputArray src, Scalar val, OutputArray dst, Stream &stream=Stream::Null())
 
void rshift (InputArray src, Scalar_< int > val, OutputArray dst, Stream &stream=Stream::Null())
 对图像执行按像素右移常量值操作。
 
static void scaleAdd (InputArray src1, double alpha, InputArray src2, OutputArray dst, Stream &stream=Stream::Null())
 将缩放后的数组加到另一个数组(dst = alpha*src1 + src2)
 
void setBufferPoolConfig (int deviceId, size_t stackSize, int stackCount)
 
void setBufferPoolUsage (bool on)
 BufferPool 管理(必须在创建 Stream 之前调用)
 
void setDevice (int device)
 为当前线程设置并初始化设备。
 
void setGlDevice (int device=0)
 为当前线程设置并初始化 CUDA 设备,支持 OpenGL 互操作性。
 
void solvePnPRansac (const Mat &object, const Mat &image, const Mat &camera_mat, const Mat &dist_coef, Mat &rvec, Mat &tvec, bool use_extrinsic_guess=false, int num_iters=100, float max_dist=8.0, int min_inlier_count=100, std::vector< int > *inliers=NULL)
 从3D-2D点对应关系中查找物体姿态。
 
void spatialMoments (InputArray src, OutputArray moments, const bool binaryImage=false, const MomentsOrder order=MomentsOrder::THIRD_ORDER_MOMENTS, const int momentsType=CV_64F, Stream &stream=Stream::Null())
 计算光栅化形状的所有三阶空间矩。
 
void split (InputArray src, GpuMat *dst, Stream &stream=Stream::Null())
 将多通道矩阵的每个平面复制到一个数组中。
 
void split (InputArray src, std::vector< GpuMat > &dst, Stream &stream=Stream::Null())
 
void sqr (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 计算每个矩阵元素的平方值。
 
void sqrIntegral (InputArray src, OutputArray sqsum, Stream &stream=Stream::Null())
 计算平方积分图像。
 
Scalar sqrSum (InputArray src, InputArray mask=noArray())
 返回矩阵元素的平方和。
 
void sqrt (InputArray src, OutputArray dst, Stream &stream=Stream::Null())
 计算每个矩阵元素的平方根。
 
void subtract (InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1, Stream &stream=Stream::Null())
 计算矩阵-矩阵或矩阵-标量差。
 
void subtractWithScalar (InputArray src1, Scalar src2, OutputArray dst, InputArray mask=noArray(), int dtype=-1, Stream &stream=Stream::Null())
 计算矩阵与标量的差值。
 
Scalar sum (InputArray src, InputArray mask=noArray())
 返回矩阵元素的和。
 
void swapChannels (InputOutputArray image, const int dstOrder[4], Stream &stream=Stream::Null())
 原位交换图像的颜色通道。
 
double threshold (InputArray src, OutputArray dst, double thresh, double maxval, int type, Stream &stream=Stream::Null())
 对每个数组元素应用固定级别的阈值。
 
void transformPoints (const GpuMat &src, const Mat &rvec, const Mat &tvec, GpuMat &dst, Stream &stream=Stream::Null())
 
void transpose (InputArray src1, OutputArray dst, Stream &stream=Stream::Null())
 转置矩阵。
 
void unregisterPageLocked (Mat &m)
 取消矩阵内存映射并使其再次可分页。
 
void warpAffine (InputArray src, OutputArray dst, InputArray M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
 对图像应用仿射变换。
 
void warpAffine (InputArray src, OutputArray dst, Mat M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
 
void warpAffine (InputArray src, OutputArray dst, UMat M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
 
void warpPerspective (InputArray src, OutputArray dst, InputArray M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
 对图像应用透视变换。
 
void warpPerspective (InputArray src, OutputArray dst, Mat M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
 
void warpPerspective (InputArray src, OutputArray dst, UMat M, Size dsize, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, Scalar borderValue=Scalar(), Stream &stream=Stream::Null())
 
Stream wrapStream (size_t cudaStreamMemoryAddress)
 绑定重载,用于从现有 CUDA 运行时 API 流指针 (cudaStream_t) 中存储的地址创建 Stream 对象。
 

函数文档

◆ createMedianFilter()

Ptr< Filter > cv::cuda::createMedianFilter ( int srcType,
int windowSize,
int partition = 128 )

对源图像的每个点执行中值滤波。

参数
srcType源图像类型。目前仅支持 CV_8UC1 图像。
windowSize用于滤波的核大小。使用 (windowSize x windowSize) 滤波器。
partition指定工作负载的并行粒度。此参数应由 GPU 专家在优化性能时使用。

输出已使用中值滤波公式进行滤波的图像。

该算法的详细信息可在以下文献中找到:Green, O., 2017. "Efficient scalable median filtering using histogram-based operations", IEEE Transactions on Image Processing, 27(5), pp.2217-2228。