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一起进行滤波操作.

  • 相关阅读:
    好用的QT连接
    c指针点滴-指针与类型
    c指针点滴5-指针变量计算
    c指针点滴4-指针的值
    c指针点滴三(指针运算)
    c语言指针点滴1
    c指针点滴2之比大小
    c指针点滴1
    linux安装redis
    支付宝支付接口流程
  • 原文地址:https://www.cnblogs.com/dwdxdy/p/2541387.html
Copyright © 2011-2022 走看看