面部表情识别系统设计与实现毕业论文
2021-11-28 21:24:45
论文总字数:19815字
摘 要
面部表情识别是图像识别的重要领域,因为面部表情多种多样,面部表情图像背景杂乱,不同的表情特征相似度高,相同的表情特征的差异很小,因此面部表情识别仍然存在困难,传统的面部表情识别方法准确性不能满足需求。而且目前这一技术没有广泛的走近国内用户,国内的应用市场鲜有识别面部表情的APP。基于此,本文建立了基于Tensorflow的卷积神经网络模型,并使用了fer2013数据集,并且设计了基于Android平台的面部表情识别系统,使得面部表情识别技术能够广泛的走进国内用户。
本文研究了基于深度学习的表情识别技术,并将其与安卓手机端相结合,解决了目前这一技术没有广泛的走近国内用户,国内的应用市场鲜有识别面部表情的APP这一问题。本文的主要工作如下:
1)介绍了面部表情识别相干技术,包含卷积神经网络技术、表情识别相关算法、神经网络模型等。针对面部表情识别技术具体应用参考了前人的研究成果,设计了一种使用深度学习的表情识别方法。此表情识别方法利用了卷积神经网络和深度学习框架Tensorflow,得到了比较准确的结果。
2)本文利用该面部表情识别算法设计了一种面部表情识别系统:最初进行系统的整体架构的设计,然后设计了Android手机端的面部图像收集方法,以及Android手机端同服务器端的交互方式并基于此实现了基于Android的面部表情识别系统。
3)对设计好的基于Android的面部表情识别系统进行功能和准确度的测试,测试了安卓手机端调用图库的功能、手机端和服务器端交互的功能、服务器端进行面部表情识别的功能以及设计的面部表情算法的在验证集及测试集上的准确度。
关键词:面部表情识别 卷积神经网络 安卓手机端 深度学习
Abstract
Facial expression recognition is an important field of image recognition, because there are many kinds of facial expressions, the background of facial expression images is messy, different expression features have high similarity, and the difference of the same expression features is very small, so facial expression recognition still has difficulties. Traditional The accuracy of facial expression recognition method cannot meet the demand. And at present, this technology has not approached domestic users extensively, and there are few apps in the domestic application market that recognize facial expressions. Based on this, this article establishes a Tensorflow-based convolutional neural network model, and uses the fer2013 data set, and designs a facial expression recognition system based on the Android platform, so that facial expression recognition technology can widely enter domestic users.
This paper studies the expression recognition technology based on deep learning and combines it with the Android mobile phone to solve the problem that this technology has not widely approached domestic users, and there are few apps in the domestic application market that recognize facial expressions. The main work of this article is as follows:
1) Introduced the coherent technology of facial expression recognition, including convolutional neural network technology, expression recognition related algorithms, neural network model, etc. For the specific application of facial expression recognition technology, referring to the previous research results, a facial expression recognition method using deep learning is designed. This expression recognition method uses convolutional neural network and deep learning framework Tensorflow, and obtains more accurate results.
2) This paper uses this facial expression recognition algorithm to design a facial expression recognition system: initially, the overall architecture of the system is designed, and then the facial image collection method on the Android phone and the interaction between the Android phone and the server are designed based on Implemented an Android-based facial expression recognition system.
3) Test the function and accuracy of the designed facial expression recognition system based on Android, test the function of calling the gallery on the Android mobile phone, the function of interaction between the mobile phone and the server, the function and design of facial expression recognition on the server The accuracy of the facial expression algorithm in the verification set and test set.
Keywords: facial expression recognition, convolutional neural network, Android mobile phone, deep learning
第1章 绪论
1.1 研究背景和研究意义
如今,人工智能的概念已逐渐被越来越多的人理解和支持。图像识别是人工智能的重要组成部分,近年来已经取得了很大的成就。作为图像识别的一部分,面部识别逐渐成熟,在这种情况下,如果我们可以使用一些基于面部识别的算法,使计算机还可以观察表情和脸色,并区分人的情绪,那么计算机将能够更好的帮助人们,为人们日常生活所服务。
面部表情识别主要基于面部表情来评估彼此的心理情感并反映人们的内部活动,是人们揭示自己的个人情感的基本方式之一。根据著名心理学家A.Mehirabia早期的一项研究可知,人们主要的交流方式包括语言,语音和面部表情,其中有55%是通过面部表情来帮助理解彼此的情感和意图[1]。通过面部表情表达情感可以看出,通过面部表情表达情感的方式在日常生活中最为普遍,占有重要地位。
面部表情识别是人机交互中研究的热门领域,相比传统的手工提取特征难以全面的表征表情特征后的联系,深度学习可以挖掘数据更深层次的内在联系。然而,目前这一技术还没有广泛的走近国内用户,国内的应用市场鲜有识别面部表情的APP。
本次研究以面部表情识别为目标,致力于设计出一个基于机器学习的面部表情识别的安卓应用。识别过程所需的运算由云服务提供,可以显著提高识别速度,并且由于手机的方便性,此安卓应用可广泛应用于包括人机交互、智能控制、安全、医疗、通信等领域。
1.2 国内外研究现状
1.2.1 国外研究现状
面部识别技术的研究始于19世纪的国外,1872年,达尔文在其《人类和动物的表情》中证明了面部表情对于人和动物的普遍性,并揭示了其联系和区别[2]。然而直到1971年,Ikman和Friesen阐述了高兴、生气、吃惊、恐惧、厌恶和悲伤——六种基本情绪的定义,并通过仔细的对比和研究揭示了面部表情与肌肉运动之间的关系,开发了著名的Facial Action Coding System,面部表情识别才引起学术界的广泛关注[3]。由于面部表情技术的多样性和复杂性以及在生理和心理方面的专长,故表情识别的高难度致使其发展比指纹识别、虹膜识别以及人脸识别等技术要慢的多。1978年,Suwa等人分析了基于图像序列的自动面部表情识别,但是并未得到目前正在研究面部识别的关键人员——心理学家们的青睐[4]。表情识别迎来新的转机是在90年代初期,计算机技术高速发展为面部表情识别技术的研究提供了不可或缺的硬性条件。学术界相继出现多个表情大数据库,一些发达国家如英国、日本等都成立了专门研究面部表情识别的学术机构,由此,面部识别技术进入了快速发展的阶段。K.Mase和A.Pentland发现了根据面部表情变化与肌肉运动的关系来识别人脸面部表情的新技术,光流分析法宣告了人脸表情的自动识别的无限可能[5,6]。卡内基梅隆大学的机器人研究所、麻省理工学院的多媒体实验室以及东京大学和大坂大学等在面部表情识别方面都取得了杰出的研究成果,其中麻省理工学院最早定义了面部表情自动分析的概念,作出了更为卓越的贡献,这也成为之后的主体研究方向。东京大学的Hara和Kobayashi提出了首先定位面部特征点的位置,后将反向传播神经网络作为对面部表情进行分类依据的理念,也取得了相当不错的成果。
二十一世纪,得益于发展日益迅猛的计算机技术,面部表情技术正在进入快速发展的新时代。 面部表情识别的主要方法是特征提取和特征分类,有光流法,模型法和几何法作为提取图像特征的提取方法[7,8,9]。2006年,Mollahoseni等人将卷积神经网络模型中GoogleNet进行了改进用于面部表情并取得了良好的效果[10]。2011年,L.Zhan和D.Tjondronegoro利用面部肌肉的运动特性成功提取了3D Gabor特征,极大地提高了面部表情辨识率[11];2012年,Hinton和Alex Krizhevsky开发了著名的神经网络模型Alex Net,该方法应用了深度学习理论,最终取得了惊人的效果;2014年,GoogLeNet和VGG-Net获得了ImageNet2014计算机识别挑战竞赛的冠亚军[12,13]。GoogLeNet用的参数更少,但准确率更高。最终的Top-5错误率在验证集和测试集上都是6.67%。在2015年,微软亚洲研究院视觉计算组提出 “残差”的概念,利用跳跃式传播的概念进行神经网络结构的搭建,最终获得图像分类、定位、检测三个项目的冠军,最终前五项错误率降到了3.57%;同年,Luo利用PCA算法提取表情全局特征信息,再用LBP算法提取表情区域纹理特征,并将二者相融合得到融合特征,这种PCA和LBP相融合的特征提取算法克服了局部二值模式(LBP)算法的易受影响性和现有融合算法的不足[14],实验证明其识别率优于比两单一算法;2017年,Harit等将特征空间与Gabor-bank相结合识别人脸情绪,找到人脸特征基准后由神经结构进行训练[15],实验证实这种利用人脸基准点的Gabor滤波器组实现面部表情特征定位的方法切实有效;2019年,Huang等人证实Gabor能够减弱光照对图像特征提取的影响,拓宽了Gabor小波的应用领域[16]。
1.2.2 国内研究现状
人脸表情识别技术开始在国外使用,哈尔滨工业大学1997年在中国推出的人脸表情识别技术[17],因此我国该领域的研究起步较晚。然而,在中国科研人员的努力拼搏下,中国人脸表情识别技术取得显著成就。2003年,中国科学院自动化研究所召开了首届中国情感计算与智能交互学术会议,吸引了全计算机领域学者的目光[18]。2004年,东南大学中华文明学院提出了一种基于核偏最小二乘回归和典范相关分析的面部表情检测新方法,并在国内开发了一种自动面部表情检测系统[19]; 2006年,国家自然科学基金会正式开始对人脸表情识别技术的研究;同年,朱健翔等对特征矩阵进行特征选择并利用SVM和KNN进行分类,成功克服Gabor特征高维数的难题[20];2009年,徐文晖等人用k最近邻法在支持向量机中构建了面部表情信息。结果表明,该方法对面部表情识别效果显著;2011年,Sherman等人提出了turbo boost算法,该算法利用Hair函数提取面部表情图像的主要特征,然后通过弱分类器来进行面部表情分类;2012年,李玉朵等为解决表情识别小样本等问题,提出了一种特征提取算法,该算法结合了二维Gabor算法,PCA和线性Fisher判别方法[21];2017年,东南大学的唐川等人参加了面部表情识别竞赛,并以一篇基于深度学习算法的文章赢得胜利[22];2018年,付璐斯根据面部表情提取技术的难点,研究了面部表情特征提取过程的有效性,并完成了独立设计的实时远程面部表情检测系统[23];2019年,米扬对单个静态面部表情图像进行分类,实验表明深度信息的引入对于面部表情识别非常有利[24];同年,周本君在卷积神经网络方面对人脸表情识别方法进行了研究,研究改进了Alex Net网络的缺陷,并且成功开发了半径为10的LBP特征映射与CNN特征融合的方案,得到了较好的面部表情识别效果[25]。
1.3 研究内容和研究方法
针对面部表情识别系统,本文研究了一种基于CNN的面部表情识别算法,主要的研究内容如下:
1)研究了计算机视觉面部表情识别相关技术,包括卷积神经网络技术、Tensorflow框架、dlib特征提取方法等。对面部表情识别技术具体应用进行更详细的分析并参考以前的研究结果,并以此设计了一种利用了卷积神经网络和深度学习框架Tensorflow的表情识别方法,得到了比较准确的结果。
2)分析和总结了当前面部表情识别技术在国内发展的不足,尤其是国内的应用市场鲜有识别面部表情的APP。为了解决这一问题,本文设计了一种基于Android的面部表情识别系统,以实现能够在安卓手机端随时随地的进行面部表情识别,并对该系统进行了测试和评估。
本系统的表情识别算法部分使用python来编写,使用OpenCV、Tensorflow等软件和框架进行算法实现,使用Tensorflow框架构建用于面部表情识别的卷积神经网络框架和模型,并通过实验测试来优化该模型。对于安卓应用则利用Android Studio进行开发,利用okhttp框架将图像由手机端上传至服务器端,使用Python Flask框架进行服务器的部署。
1.4 论文组织结构
本文共有5个章节,研究内容如下:
第1章:总结了面部表情系统的背景和意义,国内外研究现状以及本文的主要研究内容。
请支付后下载全文,论文总字数:19815字
相关图片展示: