aihot  2017-05-27 09:59:38  OpenCV |   查看评论   

 它目前仅在GPU设备上开发和测试。这包括离散GPU(NVidia,AMD)以及集成芯片(AMD APU和intel HD设备)。

 
ocl模块可以在“modules”目录下找到。在“modules / ocl / src”中,您可以找到围绕直接内核调用的cpp类的源代码。内核可以在“modules / ocl / src / kernel”中找到。样本可以在“samples / ocl”下找到。精度测试可以在“modules / ocl / test”中找到,性能测试在“module / ocl” / PERF“。
 
如果一个功能支持4通道运算符,那么它应该也支持3通道运算符,因为在oclMat中所有的三通道矩阵(即RGB图像)均由4通道矩阵表示。这意味着3通道图像具有最后一个通道未使用的4通道空间。
 
 
 
1.getDevice:返回设备列表;
 
2.setDevice:设置adevice并初始化它;
 
3. setBinpath:如果调用此函数并设置有效路径,OCL模块将首次将编译内核保存到地址,并重新加载二进制文件,可以在运行时节省编译时间;
 
4.getoclContext:返回指向opencl上下文的指针;
 
5. getoclCommandQueue:返回指向opencl命令队列的指针;
 
6.class :: oclMat:OpenCV C ++ 1-D或2-D密集数组类,oclMat是Mat的镜像,具有ocl特征的扩展;
 
7. oclMat :: convertTo:该方法将源像素值转换为目标数据类型,最终应用饱和转换,以避免可能的溢出;
 
8. oclMat :: copyTo:将矩阵复制到另一个;
 
9. oclMat :: setTo:将所有或部分数组元素设置为指定值;
 
10.absdiff:计算两个数组之间或数组和ascalar之间的每个元素绝对差;
 
11.add:计算两个数组之间或数组与标量之间的每个元素加法;
 
12.减去:计算两个数组之间或数组与标量之间的每个元素减法;
 
13.乘法:计算两个数组之间或数组与标量之间的每元素乘数;
 
14.除法:计算两个数组之间或数组与标量之间的每个元素的分隔;
 
15.bitwise_and:在两个数组之间或数组和标量之间按位计算元素 ;
 
16.bitwise_or:在两个数组之间或数组和标量之间计算每个元素的bitwise_or;
 
17.bitwise_xor:计算两个数组之间或数组与标量之间的每个元素的bitwise_xor;
 
18.bitwise_not:函数按位不计算源数组的每元素逐位反转;
 
19.cartToPolar:计算2d矢量的大小和角度;
 
20.极坐标:计算由相应元素和角度表示的每个2D矢量的笛卡尔坐标;
 
21.比较:执行两个数组的每个元素比较或数组和标量值;
 
22.exp:计算输入数组的每个元素的指数;
 
23.log:计算输入数组的每个元素的日志;
 
24.LUT:执行数组的查找表变换;
 
25.幅度:计算由x和y阵列的相应元素形成的2D矢量的大小;
 
26.翻转:以三种不同的方式(行和列索引为0)翻转数组;
 
27.meanStdDev:为每个通道独立计算阵列元素的平均值和标准偏差M,并通过输出参数返回;
 
28.合并:从多个单通道阵列组成多通道阵列;
 
29.分割:将多通道阵列分割成单独的单通道阵列;
 
30.规范:计算绝对阵列范数,绝对差异范数或相对差异范数;
 
31.相位:计算由x和y的相应元素形成的每个2D矢量的旋转角度;
 
32.pow:将输入数组的每个元素提升到p;
 
33.转置:转置矩阵;
 
34.dft(cv :: dft):执行浮点矩阵的前向或逆离散傅里叶变换(1D或2D);
 
35.gemm(cv :: gemm):执行广义矩阵乘法;
 
36.countNonZero:返回src中的非零元素数;
 
37.minMax:在整个数组或子数组中找到全局最小和最大值;
 
38.MaxMaxLoc:找到最小和最大元素值及其位置;
 
39. sum:返回每个通道的矩阵元素的总和;
 
40. sqrSum:返回每个通道的矩阵元素的平方和;
 
41.索贝尔:使用Sobel算子计算第一个x或y空间图像导数 ;
 
42.Scharr:使用Scharr算子计算第一个x或y空间图像导数;
 
43. GaussianBlur:将源图像与指定的高斯内核进行卷积;
 
44.boxFilter:使用框过滤器平滑图像;
 
45.拉普拉斯算子:通过使用Sobel算子计算第二个x和y的积分计算源图像的拉普拉斯算子;
 
46.卷积:与内核卷曲图像;
 
47.双边过滤器:对图像应用双边滤波器;
 
48.copyMakeBorder:在图像周围形成边框;
 
49.扩张:使用指定的结构化元素来扩展源图像,该结构元素确定采用最大值的像素邻域的形状 ;
 
50.侵蚀:使用指定的结构元素侵蚀源图像,该结构元素确定采用最小值的像素邻域的形状;
 
51.形态特征:腐蚀和膨胀的包装物;
 
52.pyrDown(cv :: pyrDown):平滑图像并对其进行缩减;
 
53.pyrUp(cv :: pyrUp):对图像进行上采样,然后平滑;
 
54.columnSum:计算一个垂直(列)和;
 
55.blendLinear:执行两个图像的线性混合;
 
56.角哈里斯:计算哈里斯角;
 
57.cornerMinEigenVal:计算MinEigenVal;
 
58.calcHist:计算一个或多个数组的直方图;
 
59.重映射:使用指定的地图转换源图像;
 
60.调整大小:调整图像大小
 
61.warpAffine:使用指定矩阵转换源图像;
 
62.warpPerspective:对图像应用透视变换;
 
63.cvtColor:将图像从一个颜色空间转换为另一个;
 
64.阈值:将固定电平阈值应用于单通道阵列;
 
65.buildWarpPlaneMaps:构建平面变形图;
 
66.buildWarpCylindricalMaps:构建圆柱形弯曲图;
 
67.buildWarpSphericalMaps:构建球面翘曲图;
 
67.buildWarpPerspectiveMaps(ocl :: warpPerspective):构建透视变换的转换图;
 
69. buildWarpAffineMaps(ocl :: warpAffine):构建仿射变换的转换图;
 
70.类::PyrLKOpticalFlow(cv :: calcOpticalFlowPyrLK):用于计算光流的类;
 
71.PyrLKOpticalFlow :: sparse:计算稀疏特征集的光流;
 
72.PyrLKOpticalFlow :: dense:计算密集的光流;
 
73. PyrLKOpticalFlow :: releaseMemory:释放内部缓冲区内存;
 
74.内插帧:使用提供的光流(位移场)的内插帧(图像);
 
75. class :: OclCascadeClassifier:用于对象检测的级联分类器;
 
76. OclCascadeClassifier :: oclHaarDetectObjects:通过列表矩形返回检测到的对象;
 
77. struct :: MatchTemplateBuf:为matchTemplate函数提供内存缓冲区的类,加上它允许调整一些特定的参数;
 
78. matchTemplate(cv :: matchTemplate):计算栅格模板和模板搜索的图像的近程图;
 
79. Canny(cv :: Canny):使用Canny算法找到图像的边缘;
 
80. class :: BruteForceMatcher_OCL_base(cv :: DescriptorMatcher,cv :: BFMatcher):强力描述符匹配器,对于第一集中的每个描述符,此匹配器通过尝试每个人来找到第二个集合中最接近的描述符;
 
81. BruteForceMatcher_OCL_base :: match:从具有traindescriptors的查询集中找出每个描述符的最佳匹配;
 
82. BruteForceMatcher_OCL_base :: makeGpuCollection:以适当的格式为matchCollection函数执行一个训练描述符和掩码的GPU集合;
 
83. BruteForceMatcher_OCL_base :: matchDownload:将矩阵获取到viamatchSingle或matchCollection到带有DMatch的向量;
 
84. BruteForceMatcher_OCL_base :: matchConvert:将获得viamatchSingle或matchCollection的矩阵转换为带有DMatch的向量;
 
85. BruteForceMatcher_OCL_base :: knnMatch:从具有列车描述符的查询集中找到每个描述符的最佳匹配;
 
86. BruteForceMatcher_OCL_base :: knnMatchDownload:下载矩阵获得viaknnMatchSingle或knnMatch2Collection到带有DMatch的向量;
 
87. BruteForceMatcher_OCL_base :: knnMatchConvert:将获得的viaknnMatchSingle或knnMatch2Collection的矩阵转换为具有DMatch的CPU向量;
 
88. BruteForceMatcher_OCL_base :: radiusMatch:对于每个查询描述符,找到距离小于给定阈值的最匹配;
 
89. BruteForceMatcher_OCL_base :: radiusMatchDownload:将矩阵获取到viaradiusMatchSingle或radiusMatchCollection到具有DMatch的向量;
 
90.BruteForceMatcher_OCL_base :: radiusMatchConvert:将获得的raradiusMatchSingle或radiusMatchCollection的矩阵转换为带有DMatch的向量;
 
91. struct :: HOGDescriptor:该类实现了对象检测器的直方图;
 
92. HOGDescriptor :: getDescriptorSize:返回分类所需的系数数;
 
93. HOGDescriptor :: getBlockHistogramSize:返回块直方图大小;
 
94. HOGDescriptor :: setSVMDetector:设置线性SVM分类器的系数;
 
95. HOGDescriptor :: getDefaultPeopleDetector:返回用于人员检测的类别的系数(默认窗口大小);
 
96. HOGDescriptor :: getPeopleDetector48x96:返回用于人员检测的类别的系数(对于48x96窗口);
 
97. HOGDescriptor :: getPeopleDetector64x128:返回用于人员检测的类别的系数(对于64x128窗口);
 
98. HOGDescriptor :: detect:执行没有多尺度窗口的对象检测;
 
99.HOGDescriptor :: detectMultiScale:使用多尺度窗口执行对象检测;
 
100.HOGDescriptor :: getDescriptors:返回为整个图像计算的块描述符;
 

除特别注明外,本站所有文章均为 赢咖4注册 原创,转载请注明出处来自OpenCV的中OpenCL的模块函数

留言与评论(共有 0 条评论)
   
验证码:
[lianlun]1[/lianlun]