基于HMM的嵌入式人脸识别系统研究
4.4 人脸HMM模型的训练
为人脸图像库中每一个人脸建立一个HMM模型,用同一个人的5张不同人脸照片进行训练。按照子块划分方法,得到的2D-DCT变换系数矢量形成观察矢量序列。用观察矢量序列O={o1,o2,…,oT}进行训练,得到HMM模型参数。
首先对HMM模型λ={A,B,∏}进行初始化,通过自上而下均匀分割人脸图像得到训练数据。模型状态数N=6,与每一个状态有关的观察矢量序列用于得到观察概率矩阵B的初始估计,A和∏的初始值按人脸模型自左到右的结构给出。然后利用最大似然估计算法(Baum-Welch估计算法)重新估计模型参数,检测P(O|λ)的收敛条件。
如果满足式(3)条件,则模型已收敛,结束训练迭代过程;否则继续进行下一次训练。
此处,C为预先给定的阈值。
4.5 人脸图像识别
被识别的人脸图像用于训练过程相同的方法提取观察矢量序列,观察矢量序列的概率由人脸图像HMM模型计算出,即:
当满足式(4)时,被识别人脸对应人脸图像库中第k个人的人脸被识别出。
实验证明,此算法易于实现实时处理,不受脸部表情变化的影响,抗噪声能力强,鲁棒性好。但在人脸识别中的光照问题和姿态问题方面还有待于进一步的研究。
5 结论
基于嵌入式ARM9和HMM算法的人脸识别系统具有体积小,计算量小,运算速度快,性能稳定等特点,能够满足人们对识别设备小型化的需求。相信在不久的将来,基于嵌入式的人脸识别系统会在安检、身份验证、门禁系统、智能考勤等方面得到广泛应用。
本文作者创新点:
人脸识别是生物特征识别中一个重要的研究方向,是间接、无侵犯式身份识别的主要方法。在嵌入式系统进行人脸识别,能够实现人脸识别设备的便携化,将会极大地拓展识别设备的使用范围。识别使用HMM算法,有效地降低了识别算法的空间和时间复杂度,为实时识别提供了可能。
- Linux嵌入式系统开发平台选型探讨(11-09)
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- linux文件系统基础(02-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)