论文部分内容阅读
近年来,图像信息科学在生活中被越来越广泛地应用,图像信息提取技术也相应成为了该领域的研究热点,其中图像小波变换算法和K近邻分类算法作为常用图像特征提取算法及分类算法,广泛存在于各类图像信息提取系统之中,应用于场景识别、基于内容的图像搜索引擎、刑侦图像分类、计算机机器视觉等各个领域。然而随着实际工程中图像数量与规模的日益增长,以及人们对高性能低功耗计算越来越迫切的需求,图像小波变换算法和K近邻分类算法的现有实现方案正愈发显得捉襟见肘,使用FPGA+CPU架构的全新异构计算系统为探索该类算法的高效实现提供了可能。与超级计算机或分布式计算系统的解决方案相比,使用FPGA+CPU架构的异构计算系统体现出了成本低、占用空间少、可修复性较好等优点;与采用GPU实现的异构系统相比,采用FPGA具有低功耗、高能效等优势。综上,本文采用FPGA架构的新型异构系统,对图像小波变换和K近邻分类这两种图像信息提取技术中的关键算法进行OpenCL异构并行加速研究。本文设计了两种图像小波变换算法FPGA异构加速实现方案,方案一采用行卷积内核与列卷积内核实现;方案二采用行卷积内核与矩阵转置内核,通过内核复用的方式进行实现。结合并行奇偶排序和并行冒泡排序的特点,本文设计了一种K近邻分类算法FPGA异构加速实现方案,将算法拆分为相似度计算内核与相似度排序内核,在相似度排序内核中的不同阶段采用K并行奇偶排序与K并行冒泡排序,达到了精简硬件结构,优化硬件资源的目的。最后对图像小波变换算法和K近邻分类算法进行了异构并行加速实现。采用AOCL工具提供的优化方法,对FPGA加速设备端内核进行了向量化处理以及多条流水线复制等优化,提高了FPGA系统资源利用率,并提升了系统性能。在对比项上采用了CPU平台实现以及GPU平台实现,并从算法的计算速度和能量转换效率上做出了详细的对比分析。测试采用不同的公用图片库和数据集,结果符合理论预期。本文设计的FPGA平台的图像小波变换异构并行加速方案相比GPU平台实现能效比提高了23.7%;K近邻分类算法排序阶段采用并行奇偶排序结合并行冒泡排序的方案进行异构并行加速实现,在能效比方面比仅采用k并行冒泡提升了18%。