论文部分内容阅读
人脸检测最初是人脸识别问题中的一个子问题。关于人脸识别的研究最初开始于上个世纪六、七十年代,一直到现在仍然是一个研究的热点问题。最初的人脸识别在定义问题的时候主要针对假设人脸图像已经获得的情况进行,而并没有考虑人脸图像如何获得,因此人脸检测问题并未收到应有的重视。随着电子商务、安全监控等应用的发展,人脸识别成为最有潜力的生物身份验证手段,这种应用背景要求自动人脸识别系统能够对一般图像具有一定的识别能力,首先要求系统能够检测到人脸,由此所面临的一系列问题使得人脸检测开始作为一个独立的课题受到研究者的重视。人脸检测的问题定义是确认当前给定的图像或影像中是否存在人脸,并采用一定的搜索策略对存在的人脸的大小、在图像、影像中的位置和姿态进行标定。人脸检测问题的成功解决是一系列现代智能技术的先决条件。随着人脸检测研究的深入,各种检测算法也不断被提出来,而由Freund等提出的AdaBoost算法是这些方法中最有应用前景的一种。它是一种由弱分类器级联之后自动整合出一个强分类器的算法。Viola等人针对人脸检测的特点对此算法进行了改进,提出了一种基于Haar特征的Adaboost算法,并用这一算法学习出一个瀑布型正面人脸检测器,这种方法检测正确率高,速度快,是目前一种较为理想的人脸检测算法。本文主要针对该算法进行改进和应用。DaVinci技术是TI(德州仪器)公司针对高性能嵌入式数字多媒体应用提出的一种内涵丰富的综合体,包括了处理器、软件、开发工具与组件、服务支持四个方面的内容,是新一代数字多媒体技术的发展方向,其最大的特点是融合了DSP的高速运算能力和ARM的强大的外设管理能力,使之成为能适用于各种视频音频数字系统的高效多媒体平台。将人脸检测技术应用到嵌入式设备上是其能够得到广泛运用的必然要求,这将使其更加便捷地应用于生产生活。本文主要研究和实现了一个基于TI DaVinci平台的人脸检测算法。在DaVinci平台上的软件编程涉及到DSP端的编程和ARM端的编程,这是两个结构完全不一样的处理核,需要在完成各自功能的基础上使两个处理核达到协同工作的要求。这完全不同于以往单独的对DSP或ARM编程,DaVinci技术编程框架要求编程还必须符合TI的xDAIS和xDM编程规范。本文在实现算法功能的基础上对AdaBoost算法针对DaVinci平台进行算法上的优化和编程技术上的优化处理,使其能够达到实时性要求。