FPGA实现的智能人脸识别算法研究与优化

需积分: 42 220 下载量 142 浏览量 更新于2024-08-09 收藏 2.45MB PDF 举报
该资源是一份关于智能人脸识别算法及其在FPGA实现的硕士论文摘要,作者韩建强,导师李海华,来自上海交通大学微电子学与固体电子学专业。论文探讨了人脸识别技术,包括算法原理、发展及前景,并重点研究了在Xilinx VirtexII Pro FPGA上的硬件实现。 在组合逻辑加法器部分,文中提到了一个仿真图,展示了不同的设计方法对资源占用和速度的影响。一种是自定义的流水线加法器,另一种是直接使用加号由综合器生成。自定义的流水线加法器在速度上更优,达到2.5ns的最快时钟周期,但需要32个基本逻辑单元。相比之下,直接使用+号让综合器处理,只用了18个逻辑单元,但速度较慢,为11ns。这表明,为了优化系统速度,可以采用自定义的流水线设计,而如果侧重于节省面积,则选择自动综合的方法更为合适。 接着,论文转到16位乘法器的设计,提到了三种实现方式:反复式乘法器(移位累加乘法器)、阵列式乘法器和树状结构乘法器。反复式乘法器占用面积最小,但需要最多的时钟周期;阵列式乘法器速度快,但其延迟和面积会随着乘数和被乘数位数的增加而增加;而树状结构乘法器则在现代设计中较为常见,可能是因为它在速度和面积之间提供了较好的平衡。 在人脸识别算法部分,论文详述了整个流程,包括人脸检测、人眼定位、预处理和识别。人脸检测选择了Adaboost算法,因为它的速度和精度俱佳;人眼定位采用了小块合并算法,该算法快速、准确且对实时性要求较低;预处理阶段采用直方图均衡加平滑,简单且效率高;识别阶段则结合PCA和ICA算法,以减少姿态和光照对识别的影响。 最后,论文在Xilinx ISE软件环境下,使用Verilog HDL对算法进行了RTL硬件建模,并对C++算法进行了优化。通过仿真和软件算法对比,评估了误差,并在VirtexII Pro FPGA上实现了综合。研究还涵盖了硬件平台如SDRAM、RS-232串口、JTAG的使用,以及OPB总线仲裁机制的比较和设计。合理利用软硬件资源,确保了项目的有效进展和设计调试的效率。