人脸表情识别的实现

在春节前,终于完成了人脸表情识别的实现,在这里简述一下实现的基本原理。
首先是人脸识别,可以采用的方法是基于SVM支持向量机来对人脸进行提取,opencv自带有识别功能较好xml文件,在data文件中,可以直接调用。
但是在实现识别的过程当中,我仍然尝试了自己训练xml文件并使用,其中训练人脸识别的xml训练分为4步:
1、准备好样本文件,分为正样本和负样本,其中正样本为不同的人脸图像,网上可以找到很多库;负样本为其他的图像,需要保证的是不包含人脸,且差别越大越好,正负比例约为1:2~3。
2、将正样本进行尺寸调整,减小尺寸会减少训练时间,我的尺寸规定为24*24。
3、使用cmd读取正负样本的名称,正文本名称需加上相对路径,转化为两个txt文件。
4、分别使用opencv自带的opencv_createsamples.exe和opencv_haartraining.exe文件来对txt文件进行训练,分别生成vec文件和xml文件。
我参照的博客地址:http://www.cnblogs.com/tornadomeet/archive/2012/03/28/2420936.html
这时,就可以使用训练出来的xml文件识别出人脸部位了。
接下来是表情的识别,我采用的是BP 神经网络对人脸表情的特征识别,具体参照的是车牌识别的识别。
其中包括将表情文件打包 ,BP训练表情生成xml文件,预测函数预测表情类型,输出参数和识别度。
在做好可以识别出表情步骤后,合并以上步骤,即以下4步:
1、训练BP文件
2、调取摄像头获得图像
3、图像识别抠出人脸部分
4、人脸部分的表情识别
代码已上传:
http://download.csdn.net/detail/qq_34470213/9744999

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在之前讲到的人脸测试后,提取出人脸来,并且保存下来,以供训练或识别是用,提取人脸的代码如下: [html]view...
    专属守护阅读 4,363评论 0 0
  • 一点背景知识 OpenCV 是一个开源的计算机视觉和机器学习库。它包含成千上万优化过的算法,为各种计算机视觉应用提...
    沬日十七阅读 4,597评论 0 4
  • 图像识别主要用到了两个第三方的框架:OpenCV和TesseractOCR,OpenCV用来做图像处理,定位到身份...
    方弟阅读 14,020评论 9 52
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,195评论 4 61
  • 《朱子治家格言》 黎明即起,洒扫庭除,要内外整洁;既昏便息,关锁门户,必亲自检点。一粥一饭,当思来处不易;半丝半缕...
    c5646c213098阅读 1,085评论 0 1