CUDA基本使用方法

在介绍OpenCV中GPU模块使用之前,先回顾下CUDA的一般使用方法,其基本步骤如下:

1.主机代码执行;2.传输数据到GPU;3.确定grid,block大小;

4.调用内核函数,GPU运行程序;5.传输结果到CPU;6.继续主机代码执行。

下图是两个向量相加的简单示例程序和处理流图。

注意的问题:cu,cpp文件的组织

内核函数和其wrapper函数置于cu文件中。

在cpp文件声明wrapper函数,并调用wrapper函数。

wrapper函数的声明定义需加extern "C"。

OpenCV中GPU模块的使用

使用的步骤与CUDA的基本使用方法类似,只是OpenCV中GPU模块,已经封装的内核函数的调用,其使用步骤如下:

1.验证OpenCV是否已启用GPU模块。

2.上传待处理数据到GPU (Mat --> GpuMat)。

3.调用OpenCV支持的GPU的处理函数。

4.下载处理结果到CPU (GpuMat ---> Mat)。

其示例程序如下,完成颜色转换,BGR2GRAY。

最新文章

  1. Java接口中的方法
  2. 【BZOJ-3573】米特运输 树形DP
  3. EF4.1之贪婪加载和延迟加载
  4. What does addScalar do?
  5. 【剑指offer 面试题12】打印1到最大的n位数
  6. [jobdu]栈的压入、弹出序列
  7. jquery.validation.js的自定义方法
  8. MSSQL2005 导出excel文件
  9. Android addView动态给Activity添加View组件
  10. boost signal2 slot_base
  11. PHP正则提取HTML中img的url值
  12. CentOS 如何使用第三方软件库-EPEL与RPMForge、RPMFusion软件库
  13. ggplot2 geom相关设置—点重合处理(jitter)
  14. CF #368 div2
  15. 剑指offer 判断树是不是对称的
  16. 数组的map方法
  17. Taurus.MVC 2.3 开源发布:增强属性Require验证功能,自带WebAPI文档生成功能
  18. 忘记加入spring-aop-4.3.16.RELEASE.jar出错
  19. 安装Office2016遇到“无法流式传输Office”问题
  20. RSA key format is not supported

热门文章

  1. struts2之登陆拦截
  2. P3254——DP&&入门
  3. MyBatis插件原理
  4. oracle 分配表权限给用户的写法
  5. Java HashMap实现原理分析
  6. iosselect插件
  7. 51 Nod 1572 宝岛地图
  8. LVS集群之DR模式
  9. chromedriver安装
  10. Final——Nishang