论文部分内容阅读
随着机器视觉、视频监控、目标识别等领域的发展,人脸检测技术的研究愈发受到重视,其不仅是人脸识别的一个关键步骤,也在身份识别和人机交互计算机科学等方面扮演非常重要的角色。在嵌入式设计领域,SoC(System on Chip)以集成度高、可靠性好、设计周期短等特点逐渐成为主流,因此,研究在软硬件协同设计的SoC平台下人脸检测系统的实现具有重要的实际意义。基于Haar-Like特征和积分图的AdaBoost人脸检测算法存在多个分类器级联,数据量较大,计算过程复杂,采用纯软件的方案难以满足系统的性能要求。本论文通过对系统进行合理的软硬件划分实现了基于SoC的人脸检测系统,在硬件平台实现系统的视频通路构建和专用加速模块的设计,包含实时图像的获取和传输通路、视频显示的驱动模块、图像预处理和积分图计算,本文设计的积分图硬件加速模块在提高计算速度的同时,相比于通常的积分图硬件实现节省了更多的硬件资源;软件部分实现了图像的检测、扫描窗口的缩放、检测结果的归并与系统的控制过程,并利用SoC平台的多核架构,实现了人脸检测过程在双核处理器上的并行处理。本文中的SoC实现平台使用了Xilinx公司推出的Zynq-7000可扩展处理平台,该平台集成了ARM处理器的软件可编程性与FPGA(Field-Programmable Gate Array)的硬件可编程性,适用于人脸检测、视频监视和汽车辅助驾驶等高端嵌入式应用的实现。人脸检测的实验过程分别选取了摄像头捕获的动态人脸检测以及不同背景下的静态人脸检测,实验结果验证了本系统的有效性与可靠性。对于静态图片分别采用单核,双核以及硬件加速后的人脸检测系统三种方案进行检测,并对检测速率进行了比较,从实验结果可以看出采用双核处理器以及硬件加速后的系统相对于单核系统有明显的性能提升。