zoukankan      html  css  js  c++  java
  • 【OpenCV学习】CudaOpenCVImageFilter

    最近在学习,利用CUDA加速图像处理方面知识.

    下面主要介绍codeproject上的一个项目例子.利用cuda进行图像滤波处理.

    网址:http://www.codeproject.com/Articles/206036/Image-Filters-using-CPU-and-GPU

    其处理流程如下:

    其中,也可以从视频文件中读取数据,进行处理.

    主要类图如下所示:

    ISingleImageFilter是抽象类,提供接口,SingleImageFilter实现抽象类的基类,增加一些属性成员变量.

    利用虚函数实现多态,通过指向基类的指针调用不同子类的函数实现.

    思考点:

    1).其类体的设计,以及类之间的继承关系,比较好.

    利用虚函数来实现不同的滤波操作,实现cpu,gpu,gpu上是否使用纹理等不同版本的滤波操作.

    2).基于cuda的滤波实现,利用内核函数入口的指针,分离内核函数的实现,便于利用nvcc来编译内核函数.

    3).基于cuda的滤波的优化扩展,只需修改其内核函数的实现,以及相应的指针即可.

    4).更多滤波操作的扩展,只需继承SingleImageFilter类,并实现虚函数FilterImage(char *imageData)即可.

    后期工作:

    1).针对不同的滤波操作,在cuda实现,提供其优化版本.

    2).新建MultiImageFilter接口,使其可以让Multi Image一起进行滤波操作.

  • 相关阅读:
    动态规划_leetcode70
    动态规划_leetcode64
    动态规划_leetcode63
    PHP处理base64编码字符串
    PHP解决h5页面跨域
    PHP对象转数组
    jQuery 正则
    mysql重置密码
    yii框架学习(获取插入后的id)
    nginx 之 root和alias
  • 原文地址:https://www.cnblogs.com/dwdxdy/p/2541387.html
Copyright © 2011-2022 走看看