张帆
(中国科学院长春光机所,吉林 长春 130033)
卷积运算普遍应用在图像模糊、图像锐化以及卷积神经网络、目标识别等数字图像处理中,是图像预处理的关键步骤。根据卷积计算操作单一化、算法简便的特点,结合FPGA资源循环复用和并行处理结构,实现了基于FPGA的图像卷积计算[1-4]。但是图像卷积计算要求遍历图像所有像素点,图像像素越多,计算时间越长;同时在图像处理中涉及多级联卷积计算,例如卷积神经网络计算时,其并行性差,导致图像处理实时性很难得到保证,因此对基于FPGA的图像卷积计算方式的研究显得尤为重要[5-6]。
目前对于提升FPGA图像处理中卷积计算时间的研究主要分为硬件和软件两个方面。其中基于硬件电路的设计方法简单,根据图像卷积处理目的设计出特定的电路结构,以满足图像处理需求[7-8]。这种方法能够有效地实现卷积计算,但是不具有通用性,实用价值不高。所以基于FPGA算法处理图像数据的方法更具有研究意义。结合FPGA的高速处理能力和并行计算特点,设计算法框架以实现降低资源消耗,提升图像处理速率的目的[9-10]。文献中提出多种方法,包括基于FPGA设计一种卷积计算IP核,通过对IP核参数设置,实现对不同窗口大小、不同系数的卷积计算[11]。利用FPGA的并行机制以及分布式,用查找表代替乘法器,降低图像运算量[12]。采用异步接收发送以及流水线结构,实现图像数据准确传输及计算[13-16]。文献中提出的基于FPGA卷积计算是根据系统获取图像数据后,通过不同的卷积计算方法减少图像处理时间,提高图像处理效率。……