基于OpenCV的人脸年龄估计算法设计开题报告

 2021-11-21 16:15:01

1. 研究目的与意义(文献综述)

1.1 研究目的及意义

人的脸部特征包含着许多信息,根据人的面部属性可以分辨人的性别、年龄、人种等。人脸识别是根据人的面部特征进行识别的一种技术。人脸识别系统主要包括四个组成部分,分别为:人脸图像采集及检测、人脸图像预处理、人脸图像特征提取以及匹配与识别。人脸识别技术具有广泛的研究前景,此技术在不同的领域都发挥着作用。例如在国家安全、公共安全领域,可用于进行智能视频监控,公安布控等工作,在经济领域,可用于对银行卡、信用卡等持卡人的进行身份验证。在人脸识别技术的研究中,人脸年龄估计的研究极具潜力,在计算机视觉与模式识别等研究领域也有较重要的地位。

人脸年龄估计技术,就是根据采集到的人脸图像,去估计其年龄。同一人在不同的年龄阶段,面部特征有所区别,通过人脸识别得到的信息也不同。人脸年龄估计在人脸图像采集以及对采集到的信息进行处理时都存在不同的难点。首先,在采集人脸图像信息时,人的表情,环境的光线,以及采集的角度对于后续的分析都存在着影响。其次,在对年龄进行估计时,人的年龄增长对于面部特征的影响存在个体差异性,因此要正确识别年龄,对于技术要求较高。

opencv是一个跨平台计算机视觉库,可以实现图像处理和计算机视觉方面很多通用算法。计算机视觉市场巨大而且在不断发展,opencv致力于实时应用,可提高代码的执行速度,在人机互动、人脸识别、物体识别等方面有诸多应用。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

2. 研究的基本内容与方案

本文研究的主要内容是人脸年龄估计算法的设计。在设计算法之前,首先对深度学习、tensorflow框架、opencv以及卷积神经网络的原理进行研究。在深度学习的基础上,学习tensorflow框架、卷积神经网络的原理以及opencv的相关概念知识。最终的研究目标是将opencv获取的人脸图像,传输到训练好的卷积神经网络中,卷积神经网络经过层层处理后输出检测结果,完成对人脸的检测识别,实现年龄的正确估计。

本设计拟采用的程序设计语言为python语言,python是一种解释型脚本语言,可用于人工智能的开发。研究人脸年龄估计算法需要安装anaconda、pycharm等软件。在安装anaconda与pycharm软件后,在anaconda软件中首先配置好python与tensorflow的环境变量,并将opencv库引入pycharm软件,为算法的编写设计作准备。本设计拟采用的方案如下:(1)在tensorflow框架下建立卷积神经网络,此卷积神经网络包括输入层、卷积层、池化层、全连接层以及输出层。使用sgd作为反向传播的优化器,使损失函数最小化。随着迭代次数不断减小学习率。(2)将adience数据集作为卷积神经网络的训练集。经过多次训练改进卷积神经网络里的参数,直至卷积神经网络训练完成。(3)在pycharm中编写正式识别程序,调用opencv库中的函数获取图片并灰化,对图片中人脸进行检测。(4)将opencv检测到的人脸图片送入训练完成的卷积神经网络进行处理,并输出最终的人脸年龄估计结果。设计流程图如图1所示。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

3. 研究计划与安排

第1-3周:查阅相关文献资料,明确研究内容,了解研究所需理论基础。确定方案,完成开题报告。

第4-5周:熟悉掌握基本理论,完成英文资料的翻译,熟悉开发环境。

第6-9周:编程实现各算法,并进行仿真调试。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

4. 参考文献(12篇以上)

[1] 杨国亮,张雨.基于卷积神经网络的人脸年龄估计方法[j].北京联合大学学报(自然科学版),2018,32(1):59-64.

[2] 郭敏钢,宫鹤. 基于tensorflow对卷积神经网络的优化研究[j].计算机工程与应用,2020,56(1)

[3] 曹猛,田青,马廷淮, 陈松灿.人类面部属性估计研究:综述[j].软件学报,2019,30(7):2188-2207

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。