计算机工程与应用 ›› 2009, Vol. 45 ›› Issue (1): 183-185.DOI: 10.3778/j.issn.1002-8331.2009.01.056

• 图形、图像、模式识别 • 上一篇    下一篇

基于CUDA的双三次B样条缩放方法

桂叶晨,冯前进,刘 磊,陈武凡   

  1. 南方医科大学 生物医学工程学院,广州 510515
  • 收稿日期:2008-07-22 修回日期:2008-09-27 出版日期:2009-01-01 发布日期:2009-01-01
  • 通讯作者: 桂叶晨

Parellel bicubic B-spine interpolation algorithms for image zooming based on CUDA

GUI Ye-chen,FENG Qian-jin,LIU Lei,CHEN Wu-fan   

  1. The Department of Biomedical Engineering,Southern Medical University,Guangzhou 510515,China
  • Received:2008-07-22 Revised:2008-09-27 Online:2009-01-01 Published:2009-01-01
  • Contact: GUI Ye-chen

摘要: Nvidia在GeForce 8系列显卡上推出的CUDA(统一计算设备架构)技术使GPU通用计算(GPGPU)从图形硬件流水线和高级绘制语言中解放出来,开发人员无须掌握图形学编程方法即可在单任务多数据模式(SIMD)下完成高性能并行计算。研究了CUDA的设计思想和编程方式,改进了基于双三次B样条曲面的图像缩放算法,使用多个线程将计算中耗时的B样条重采样部分改造成SIMD模式,并分别采用CUDA中全局存储器和共享存储器策略在CUDA上完成图像缩放的全过程。实验结果表明,基于CUDA的B样条曲面并行插值方法成功实现了硬件加速,相对于CPU上运行的B样条缩放算法,其执行效率明显提高,易于扩展,对于大规模数据处理呈现出良好的实时处理能力。

关键词: 双三次B样条, 统一计算设备架构(CUDA), 图形处理器(GPU), 图像缩放, 重采样

Abstract: The new launch of CUDA(Compute Unified Device Architecture) technology by Nvidia has freed GPGPU(Computation on the Graphic Processing Unit) technology from the graphics fixed pipeline and high-level shader language,allowing the design and implementation of SIMD(Single Instruction,Multiple Data) parallel algorithms on a much more simple way than previous method based on texture rendering.In this paper,the core concept of CUDA is first studied,then bi-cubic B-spline algorithm for image zooming is redesigned into SIMD mode according to CUDA programming model,so that time-consuming resampling part during the whole process can be implemented by parallel threads.Finally,implementation of this SIMD parallel algorithm using global memory and shared memory is detailed respectively.The result shows that this modified method based on CUDA is with high efficiency compared with the traditional Bi-cubic B-Spine interpolation algorithm implemented on CPU,can be easily extended,and shows great potential in real-time processing.

Key words: Bi-cubic B-spine, Compute Unified Device Architecture(CUDA), Graphic Processing Unit(GPU), image zooming, resampling