摘要
作为机器视觉领域最热门的研究方向之一,人脸识别技术凭借其非接触性且安全可靠的优点,在移动支付、智能安防、智慧城市等领域有着极高的应用价值。卷积神经网络的发展,使人脸识别算法的准确率大幅度提升,已超越人类水平,应用前景更加广泛。然而相较于传统算法,基于卷积神经网络的人脸识别算法拥有更多的参数量和计算量,对硬件资源要求更为苛刻,使得其在部署到移动终端使用的过程中存在困难。因此,基于软硬件协同设计,实现高效快速的人脸识别算法具有很强的现实意义。 本文基于深度可分离卷积设计了一种人脸识别算法,模型参数量和计算量均减少了一半,通过引入量化操作,使用低精度数值进行计算,降低了数据访存次数和带宽需求;通过优化网络结构和损失函数,在不增加模型参数量的前提下,提升了模型性能;对数据集进行预处理并调整训练策略,大幅提升了模型的识别准确率。在卷积神经网络加速器设计方面,将卷积计算逐层展开并按行拆分,设计出高数据复用率和高并行度的卷积计算模块;通过流水线操作和双缓存机制,降低了数据访存次数和数据传输延时。最后,设计FPGA验证系统,在ZynqXC7Z035芯片上编写控制代码,完成了人脸识别算法的验证。 本文基于深度可分离卷积设计的人脸识别算法,在LFW数据集上达到了94.4%的准确率,在自制的实验室人脸数据库上达到了95.5%的准确率。时钟频率为100MHz时,基于FPGA平台设计的卷积神经网络加速器有效计算能力达到52.9GOPS,性能功耗比为10.3GOPS/W。人脸图像大小为160*160时,算法在FPGA验证平台上识别速度可达25FPS。本文的研究对未来高准确率实时人脸识别系统的移动终端实现具有一定的参考价值。