论文部分内容阅读
随着计算机视觉的快速发展,目标的识别与检测作为其重要的研究方向之一,近年来也取得了跨越式发展。新的识别算法不断提出,目标识别的准确率也随之不断提高。然而目标识别算法普遍存在的瓶颈是算法复杂度高,处理速度慢,这是因为在计算的过程中采用遍历图像(sliding window)的方式,耗费大量的时间,不能满足实际应用中的实时性要求。针对这一问题,Jasper Uijlings在IJCV上提出一种了新的方法,在目标检测之前加入预处理过程,通过产生的预测框(proposals)来代替遍历图像的计算方式,开创了一个新的研究方向。由程明明等人发表在CVPR2014上的BING代表了当前目标检测预处理研究领域的最高水平。在VOC2007数据集上,它可以将预测框的准确率大幅提高到96%,并且处理速度达到了300fps。BING算法中采用的是8?8大小的检测框,这是因为计算机中所能表示的最大数据类型是64位的,而8?8的检测框经过二值化后可以存在int64中。然而当检测图像过大或者过小时,对于其中的某些目标,只用8?8的检测窗口便不能准确的预测出目标框位置,可能出现漏检。本文中提出采用动态选择检测窗口的方法,针对不同图像大小,在8?8检测窗口的基础上增加不同尺寸的辅助检测窗口,防止漏检的发生。当检测图像的分辨率相对较低时,如VOC2007中的图像数据,平均在400*500大小,BING算法可以实现高速处理。然而目前图像和视频的分辨率越来越高,在处理高清图像时,BING算法的处理速度大幅下降,不能满足实时性要求。同时BING算法对PC机的配置要求也比较高,否则同样无法达到高速处理。对该算法进行深入分析后发现,评分过程中每个点的BING特征值按比特位分布在对应的比特平面上计算,然而各个比特平面间的计算是相互独立的。所以针对上述问题与特点,本文提出一种硬件并行化的结构,将算法的核心部分(分层和评分)采用硬件实现,使不同比特平面可以高速并行计算,并结合流水线的设计方法,提高系统吞吐率。一方面充分发挥FPGA的高效性,提高处理速度,使其能够适用于高清或者超高清情况。另一方面,由于软件实现方式对于运行环境要求较高,不能应用在移动端或者小型化等低功耗设备上,采用硬件实现方式拓展了BING算法的应用范围。