理论教育 边缘检测算法及其GPU优化研究现状

边缘检测算法及其GPU优化研究现状

时间:2023-06-23 理论教育 版权反馈
【摘要】:边缘检测算法是图像处理中的重要算法之一,国内外有不少人研究边缘检测算法或Canny边缘检测算法,其中也不乏优秀成果。GPU优化是最重要也是最困难的工作,目前国内外也有不少相关的研究。国内外鲜有人在NVIDIA Tegra K1异构计算平台上利用GPU优化Canny边缘检测算法,Canny边缘检测算法在GPU上的性能仍然有很大的提升空间。

边缘检测算法及其GPU优化研究现状

边缘检测算法图像处理中的重要算法之一,国内外有不少人研究边缘检测算法或Canny边缘检测算法,其中也不乏优秀成果。比如董鸿燕通过论述边缘检测的基础理论,归纳并评述了边缘检测的几种主要方法和几种边缘检测算法评价标准,分析了边缘检测中存在的难点,指出当前边缘检测研究中存在的几个问题,并提出了相关问题的解决方案。Saining Xie和Zhuowen Tu等人开发了一种新的边缘检测方法,通过充分利用卷积神经网络的模型进行图像的深度学习并进行图像与图像之间的预测,主要解决了边缘检测和目标边界检测之间的混淆。Canny论述了传统的边缘检测方法,并提出了更为有效的Canny边缘检测算子,并详细解释了Canny边缘检测算子的实现方式。许宏科、秦严严、陈会茹等人在Canny边缘检测算法的基础上实现高斯滤波方差和高低阈值自适应取值,并且在噪声环境中具有更优的检测效果和自适应性。这些研究的共同点在于都是从边缘检测的原理和检测效果的角度研究边缘检测算法,实现或研发出一个更优的边缘检测算法。

随着科技的迅猛发展,当前图像处理算法所面临的更加重要的问题是图像处理算法的性能问题,边缘检测算法也不例外。同时,单一地增加CPU的晶体管数量来提升性能的传统方式遇到了能耗和散热瓶颈。随着GPU计算能力和可编程性不断提高,为这一问题的解决带来了真正的契机,将图像处理算法移植到GPU计算平台上,并通过细粒度调优提高图像处理算法的性能一直是研究热点。相关人士在该领域有了一些优秀的探索和理论,比如Shane Cook在书中介绍了CUDA编程,并且以NVIDIA GPU为例详细阐述了相关GPU架构和编程模型。Timothy G.Mattson、Beverly A.Sanders和Berna L.Massingill等人从寻找并行性、算法结构、支持结构和实现机制等角度深入介绍了并行编程模式的分类、定义、实现、选择及应用,同时提供了从问题描述到最终编码的完整解决方案。NVIDIA官方提供的CUDA编程指南,详细介绍了CUDA编程模型,为开发者提供了详细的编程开发指南。

GPU优化是最重要也是最困难的工作,目前国内外也有不少相关的研究。NVIDIA官方提供的NVIDIA GPU优化文档,详细介绍了所有NVIDIA GPU的架构特性以及优化策略。孟小华和彭爽等人将大规模的图像处理移植到GPU平台上,并初步实现了对图像的实时处理,并在一定程度上缓解了图像处理的性能瓶颈问题。梁军等人通过优化矩阵转置算法和拉普拉斯滤波算法,研究了NVIDIA Tegra K1的片外访存,说明了片外访存的合理使用和优化的重要性。贾海鹏等人在不同GPU平台底层硬件架构的基础上,以拉普拉斯滤波为例,从多个角度考察不同优化方法在不同GPU硬件平台上对性能的影响。贾海鹏论述了GPU的两种不同编程模型,对GPU平台的并行优化进行了深层次的研究,针对规则应用和非规则应用提出了面向GPU计算平台的若干优化关键技术。通过编译器指令进行细节优化也是值得我们注意的。关于Canny边缘检测算法的GPU移植和优化,大多数人做得并不理想,并没有开发出GPU强大的计算能力和结合算法的特性优化。比如张龙将Canny边缘检测算法移植到GPU上,但并没有根据算法和硬件特性优化算法。Yuancheng Luo和RamaniDuraiswam在NVIDIA GPU上实现了并行的Canny边缘检测算法,但也仅仅通过片上内存的使用与优化实现了1.6~3.8倍的性能加速比。目前这些对Canny边缘检测算法的研究还远远没有发挥GPU强大的计算能力。(www.daowen.com)

国内外鲜有人在NVIDIA Tegra K1异构计算平台上利用GPU优化Canny边缘检测算法,Canny边缘检测算法在GPU上的性能仍然有很大的提升空间。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈