基于Tensorflow的人脸表情识别算法研究.docx
《基于Tensorflow的人脸表情识别算法研究.docx》由会员分享,可在线阅读,更多相关《基于Tensorflow的人脸表情识别算法研究.docx(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、广东东软学院本科生毕业设计(论文)本科毕业设计(论文) 基于tensorflow的表情识别算法实现 Expression recognition algorithm based on tensorflow 院 (系)计算机学院专 业软件工程班 级16软件6班学 号16210120626学生姓名何丽嫦指导教师商丽娟提交日期2020年 4 月 19 日毕业设计(论文)原创性声明本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指导下,独立进行的设计(研究)工作及取得的成果,论文中引用他人的文献、数据、图件、资料均已明确标注出,论文中的结论和结果为本人独立完成,不包含他人已经发表或撰写的作品
2、及成果。对本文的研究作出贡献的个人和集体,均已在论文中作了明确的说明。本人完全意识到本声明的法律结果由本人承担。毕业论文作者(签字): 签字日期: 年 月 日成绩评定成绩项论文成绩(百分制)折合比例实得成绩(折合分)指导教师成绩30%评阅教师成绩20%答辩成绩50%总评成绩注:毕业设计(论文)成绩按百分制评定。答辩成绩不及格的(评分低于60分的),则该毕业设计(论文)总评成绩为答辩成绩。内容摘要随着时代的发展,大数据已经慢慢的成为互联网时代的主流,以及机器学习、人工智能、计算机视觉逐渐广布在大众生活中,单一的人脸识别技术已经比较成熟的应用在军事、医疗、公共社会等场所中,进而将人脸表情识别推向更
3、高度的热潮。每个人的人脸都是独一无二的,人脸表情是当人们面对面交流时很难被察觉的、带有隐藏的情绪意义的人体情绪,经常标明人们极力压制和暗藏的情绪情感,所以通过机器与软件的结合进行表情识别可以清楚的得知该人的情绪。人脸表情辨别的研究还有很长的路要走,将以变化多端的模式不断持续的影响我们的日常。本文题目为基于tensorflow的人脸表情识别算法的研究。科研学家把面部表情识别主要将表情划分为七个种类,整个人脸表情识别研究将会划分为四个过程:数据预处理、卷积神经网络的搭建、模型的训练与人脸表情的识别界面的设计,第一部分包括对数据集的预处理和利用卷积网络搭建的神经网络与训练模型,第二部分为加载模型进行
4、人脸表情识别测试,其中创新点就是使用pyqt5进行GUI界面设计封装,增加系统的界面简洁性与用户体验感。其中最大的难点就是搭建卷积神经网络与训练的过程花费的时间。关键词: 人脸表情识别 深度学习 人工智能Abstract With the development of the times, big data has gradually become the mainstream of the Internet era, as well as machine learning, artificial intelligence, computer vision gradually spread i
5、n public life, a single face recognition technology has been more mature in military, medical, public society and other places, and then face expression recognition to a higher upsurge. Everyones face is unique. Microexpression is a kind of subtle expression with certain emotional meaning that is di
6、fficult to be detected face to face. It often expresses the depressed and hidden emotional feelings. Therefore, through the combination of machine and software to recognize the expression, the emotion of the person can be clearly known. Facial expression recognition technology will continue to affec
7、t our lives in many ways.This question is the research of facial expression recognition algorithm based on tensorflow. Facial expression recognition mainly divides expression into seven categories, and the whole facial expression recognition research is mainly divided into two processes: the trainin
8、g of convolutional neural network model and the recognition test of facial expression. The first part includes the preprocessing of data set and the neural network and training model built by convolutional network. The second part is the loading model for facial expression recognition test, in which
9、 innovation Point is to use pyqt5 for GUI interface design and encapsulation, to increase the systems interface simplicity and user experience. The biggest difficulty is to process and analyze the numerical value of face image.Key words: facial expression recognition deep learning artificial intelli
10、gence目 录第一章 绪论11.1研究背景及意义11.2 国内外研究现状11.3 本文组织结构2第二章 Tensorflow相关基础知识32.1 Tensorflow介绍32.1.1tensorflow计算图32.1.2tensorflow数据读取32.1.3运行模型(会话)42.2 Tensorflow平台特性42.3 Tensorflow环境配置5第三章 基于Tensorflow人脸表情识别63.1 数据集与预处理63.1.1数据集的选择63.1.2数据集的预处理63.2 搭建卷积神经网络83.2.1GoogleNet原理83.2.2深度卷积神经网络模型83.3 模型训练与测试113.3
11、.1模型训练113.3.2模型测试133.4本章小结15第四章 系统设计与实现174.1 系统设计174.1.1系统功能需求174.1.2系统模块流程174.2相关技术174.2.1pyqt5介绍174.2.2opencv介绍184.2.3具体设计184.3 系统运行效果214.4 本章小结23第五章 总结245.1 工作总结245.2 不足与展望24参考文献25致谢26II广东东软学院本科生毕业设计(论文)第一章 绪论1.1研究背景及意义如今,科技发达,信息流通,科技发展跟着时代变换的脚步,迅速的发展成为巨大的影响力,人际交往主流从面对面交流到书信到电话,到现在许多程序的面世,与人交谈只用花
12、蝼蚁之力。我们已经踏入这个新的打数据的时代,一个数据迅速增长的时代。每天生成着巨量数据,被挖掘且运用在不同的范畴,生活也越来越方便。人工智能、人机交互、自动化也开始出现在人们的眼前,人工智能技术中的生物特征识别技术更加为重中之重,通过数据的收集,将人类的生物特征或行为特征进行分析,从而进行特征的识别。人脸识别已经运用在许多领域中,如近期热点人脸支付,也是通过该技术进行的。人脸包含了许多信息,脸部是含有最多信息的标注,世上没有完全相同的两张脸,没有完全相同的脸部信息,人与人交往中往往都是面对面交谈,脸部是最为重要以及突出的特征。当人们除去语言外,能表达信息还有表情以肢体动作,所以表情是人类的第二
13、语言,经过表现在脸部的思维情绪来传播信息。而且表情还是浮现在表面无法被轻易隐藏的,轻微的器官抽动都是表情变动的特征,可以传递出人的情绪变动,所以表情识别成为了深度学习的其中一个热点。目前,一个高效率、高性能的人脸表情识别系统是非常被需要的,它能够尽责任的被运用在普通日常的许多场景中。许多研究都将人脸表情分为七大类:正常,生气,蔑视,厌恶,恐惧,开心和伤心。在工作中,可以作为趣味性的增加到上下班打卡系统中,只有以开心的表情才能打卡成功,可以提高员工的热情等等。表情识别一直都在研究热门中,而tensorflow便携、高效、可扩展用于人脸表情的研究也是对此的一种推进。在本文中主要结合tensorfl
14、ow对人脸表情识别进行研究,制作一个GUI界面进行人脸表情识别认证。1.2 国内外研究现状最早横空出世在人们眼前的表情辨别是在20世纪70年代,距离现在已经过去了很长一段时间,但是表情识别的热度居高不下,仍为时下热点,特别由于现在处于一个每天都有海量数据产生的时代,表情识别的展开绝对不失为是一个充满挑战性与可行性的科研研究题目。面部表情作为传递人类内心活动以及情绪的最直接方式,研究人脸表情识别的源头是由PEkman和WVFriesen于1971年,将面部表情这么复杂的一个事物,划分并设定为6种情绪:诧异、快乐、悲哀、恐惧、讨厌、愤怒,而后又增加了没有表情变化的情绪种类:正常;并非零碎的详细有安
15、排地创建了人脸表情图象库,里面包含详细讲诉了如何区分每一种表情的面部特色变动,包括脸部器官等细微变化都一一记录下来。而不得不提的就是表情识别的历史里程碑:面部肌肉行为编码系统(F:Facical A: Action C:Coding S:System),也是由两位伟大的学家提出的。2019 年 Vanita Jain 等人提出了一种融合局部特彾和全局特彾的面部表情识别模型,该模型经过将人脸器官作为划分的根据,划分出多个区域,并仔细选择有助于减少冗余的感关趣区域来提取局部特征。国内张正友博士,也曾罗列出表情识别的重要性以及主要内容:人脸表情识别被认为在现代人工智能化与人机交互技术中的占领着一个比
16、较重要的位置,最近几年该研究也得到不通过领域的深刻关注,顺势飙升而成为现世最受关注的热点之一,许多科学研究学者纷繁研讨以及提出许多提高识别效率的应用方法。而非动态情绪图象的搭建使用多层深度网络学习的方式也是今日倍受关注的一种人脸情绪识选择:The Third Emotion Recognition in the Wild Challenge的表情识别方式是在卷积神经网络的基础上实现的。前馈神经网络作为卷积神经网络的组成部分,它所包含的人工神经元能够对覆盖在其区域内四周的一些周围神经元做出适当的呼应,对于大型数据图像具有良好的大规模图像处理性能。也给表情识别研究带来飞速进步。2019 年彭兇霖等
17、人提出一种分层任务学习的人脸表情识别并且以现有的卷积神经网络为基础模型,建造双层树的分类器,对旧时惯用的输出层的平面 softmax分类器进行替换且同时间内完成构建深度多任务学习框架,将人脸表情识别推上更深层次。人脸表情识别系统主要是对于人脸的检测和对于人脸表情的识别分类组成并且逐步将其运用到跨领域范畴,将其放置于不同的依附体中,如软件,网络摄像头等等。1.3 本文组织结构本研究论文主要包罗讲诉了五大个章节:第一章为绪论部分主要对人类脸部表情识别研究的背景与意义进行了了解与收集,最终以文案合集编写的方式显示出来,还有由古至今的国内国外关于人脸表情识别相应的具有重大意义的研究进行了分析并阐述。第
18、二章为讲述tensorflow主流应用以及本文运用到的相关基础知识。本章主要介绍了tensorflow搭建时所需要用到的主要依赖包进行详细阐述,主要详细讲诉tensorflow的优点以及时效性、关注点与tensorflow与深度学习框架的结合使用的相干常识与应用。第三章主要讲述基于tensorflow框架并且搭建卷积神经网络从而进行对人脸表情识别算法的准备与研究。描述研究前期准备工作,包括获取数据集、表情分类、搭建卷积神经网络模型与训练过程。第四章为系统设计与实现为了符合大众性以及优化使用者的体验感,提高了界面的美观性以及简洁性。使用opencv和pyqt5进行了GUI界面的设计,本章主要讲述
19、GUI界面的设计原理与步骤。第五章为全文总结对该论文与系统设计一切执行过的任务与具体内容进行细致的总结,分析优缺点以及不足之处,并提出自己对未来人脸表情识别的发展所持有的观点。第二章 Tensorflow相关基础知识2.1 Tensorflow介绍2.1.1tensorflow计算图“Tensorflow”于2015年11月出现在大众视野中,是由谷歌在基于DistBelief基础上所研发的numerical computation允许多人分享的开源软件库。他灵活的适应性加速了科研人员一系列的训练模型设计完成,在海量数据集的模型训练中更是拔得头筹,成为开源社区中最为欢迎的深度学习框架。“Tens
20、orflow”的命名由来可以看作是将本身名词划分为两个特有名词,“Tensor”张量,该概念本是扩大数学量且表达到物理量上,而在tensorflow中是一个基础并代表的是某节点a数据向节点b移动传递数据,通常可以用多维数组去定义张量,更加容易被理解与接受,即数据结构。“Flow”数据流、飞,数据按照流的形式进行计算、互相转化的过程,即计算模型。Tensorflow是一个将复合的数据组成结构通过使用计算图的方式进行分析和处理传输过程的程序设计系统。计算图是在“node-edge-node”转换模式下传输数据的非形象概念。Tensorflow的根本计算模型解释为向量a、b强势的向节点add进行传输
21、,如下图2-1-1所示。图2-1-1 节点与向量关系图2.1.2tensorflow数据读取现有文章中对于Tensorflow数据的处理普遍会划分为有一共四种存取数据的通用方法:1、Feeding(供给数据)用Python编程语言来对数据进行控制处理后把被处理的数据供给到计算图中。2、tf.data API(文件读取)将待处理的文件数据用一个输入管道进行数据的读取。3、Preloaded data(预加载数据)使用一个constant常量对数据进行加载,仅对于数据量较小而言。4、QueueRunner(队列管理器)通过协调与创建一到多条线程,通过其从文件中读取records到数据流图,如果数据
22、量较大,太耗内存,所以这时最好使用该方法,当需要对特殊文件格式如csv文件进行一系列的数据读取,继而可以带有选择性的运用具有高效性、通用性并行于一体的tensorflow一种特定规范格式TFRecords格式。2.1.3运行模型(会话)在Tensorflow框架中能够划分以三种模式进行会话可以分为:1、普通调用Sess.run需要明确调用会话生成函数以及使用完成后,关闭会话函数回收资源,使用该模式时必要明确的Sess.close关掉会话,不然会造成资源泄露的问题,代码如下:Sess = tf.Session()Sess.run()Sess.close()2、可以经过使用Python编程的(Wi
23、th as)上下文管理器进行封装创建会话,可以解决不正常退出程序而导致的资源泄露问题,当程序结束时上下文管理器时会主动封锁一切资源,代码如下:With tf.Session() as Sess: Sess.run()2.2 Tensorflow平台特性Tensorflow后端是利用C+、CUDA进行保障高效性,其资料库中拥有海量辅佐函数来简化构建图的任务,容易上手,简单易用。其接口可以被使用于C/C+语言以及Python等,其余的编程语言也能够通过SWIG工具来间接运用该接口。Tensorflow系统计算任务可以是通过计算图来体现其本身不包含各种计算函数,所以在开始编程前,需要在运用前先通过导
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Tensorflow 表情 识别 算法 研究
限制150内