毕设题目:Matlab人脸识别
Posted 紫极神光
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了毕设题目:Matlab人脸识别相关的知识,希望对你有一定的参考价值。
1 案例背景
1 BP神经网络概述
1.1 BP神经网络的内涵
BP神经网络是神经网络的一种经典结构,其结构简单、训练简单,是学习神经网络的一种输入算法,包含一个特定的模型(神经网络)和一个特定的训练算法[1,2,3]。神经网络被描述为多层神经元的叠加。外部输入首先通过连接传递给一组神经元。训练后,一些神经元之间的连接权值会很低,这意味着这些神经元之间的通信强度很低。通常使用“层”来表示一组神经元,最后一层神经元的输出是一维向量,可以代表分类任务中的特定类别。
1.2 BP神经网络原理
制造机器和机器控制是BP神经网络应用的最终目标。神经元在接收和处理信号后,会将结果传递给邻近的特定神经元,并建立一个神经网络来执行特定的任务:
layer_i=(layer_Ⅰ_1, layer_Ⅰ_2, …, layer_I_j, …, layer_I_K__) 。
layer_I-1层的神经元接收并处理信号后, 将信号传输到layer_I层的每个神经元。layer-i中的每个神经元都被接收并处理以产生新的信号。人工神经元实际上是一个逻辑回归模型, 其能输入线性组合并与SIGMOD函数映射, 以获得像“概率”的值。将x_2中最大的元素赋予值1,而其他元素被赋予值0,获得类标签。
1.3 BP神经网络技术在人脸识别中的应用
BP神经算法的核心是通过网络的误差函数计算出一个极小值,确定函数的权重分布,让神经网络的收敛处于一个相对平衡的状态,这样在网络接收到未知输入的时候,可以通过适当的输出来维持网络的稳定。BP神经元应用到人脸识别中,需要经过以下流程:第一,需要在人脸识别的样本特征中求出协方差矩阵,得出协方差矩阵的特征值,并计算出相应的特征向量,选取较大的特征根,定下特征向量,将第一步求出的特征向量与原始数据计算出一个乘积;第二,得到训练样本的主成分后,进入输入层进行训练,截取未知人脸的样本数据,与特征向量相乘进行分类识别,就能得到未知人脸的类别。
2 人脸识别技术
人脸识别算法利用卷积神经网络对大量的人脸图像进行深度学习,利用输入图像区分不同人脸的特征向量。在人脸识别算法中,每个人脸都被赋予了一组对应的特征值,机器从同一人的不同照片中提取特征值,并设定一个阈值,将其作为判断是否通过的标准。
人脸识别的应用场景很多。例如,对于智能相册的照片分类,其技术原理是将图像存储在与图像像素点阵相对应的数字矩阵中, 每个像素用一个数值的RGB表示, 无论它出现在图像中的什么位置, 它在数值分布上都会表现出一定的特征, 将所有与人脸识别相关的问题转化为基于数值矩阵的分类或回归问题。采用机器学习的方法定位人脸特征点,能够为每幅图像标记相应的特征点。人脸识别过程有4个关键步骤,即人脸检测、人脸对齐、人脸编码和人脸匹配。
(1)人脸检测。人脸检测的目的是找出人脸在图像中的位置。当在一张图片中发现一个人脸时,不管是什么样的人脸信息, 机器都会标记出人脸的坐标信息, 或者将人脸切割, 用HOG检测出人脸的位置, 然后计算出图像中的像素梯度。机器算法能够将图像转化为HOG, 进而得到人脸的位置信息。(2) 人脸对齐。人脸对齐是将不同角度的人脸图像对齐到同一标准的人脸形状中。机器算法首先会定位人脸上的特征点,然后通过几何变换将特征点对齐。
(3)人脸编码。人脸编码指将人脸图像的像素值转换为紧凑、可分辨的特征向量。在理想情况下,同一主题的所有面部信息都应该映射到相似的特征向量。
(4)人脸匹配。在人脸匹配模块构建中,将两个模板进行比对,度量两个人脸之间的相似度,判断两个人脸是否属于同一个人。
3 BP神经网络在人脸识别中的应用流程
3.1确定人脸识别的位置点
在进行人脸识别时需要确定机器算法,通过人脸数据库进行不同人脸形象的采集和抽取,确定特征点坐标,将左右眼的瞳孔、左右嘴角、眼眉外端、内端、鬓角鼻孔等20个特征点进行特征值定位,确定瞳孔、嘴角、两眉间的距离等关键信息,并将数据存储在处理器中。
3.2 预处理数据
第一,将人脸特征进行预处理处理后的样本作为原始样本,通过原始样本中数据采集的特征点确定出特征根,用特征根和原始样本数据进行比对。第二,从样本集中取一个样本(xp,yp),并将xp输入网络中,其中xp是输入向量,yp是期望输出向量。
3.3 人脸样本检验
第一,将BP神经网络算法中确定的神经元进行输入检验,将样本数据库中的数据与输入的数据进行对比。第二,调用MAT LAB神经网络工具箱, 构建BP神经网络, 在函数new ff中建立一个可训练的前馈网络。查准率和查全率的算法为:
[Precision l, Recall 1] =Precision_Recall(B, num_train) ;
disp(‘训练集查准率为:) , disp(Precision 1) ;
disp(‘训练集查准率为:) , disp(Recall 1) ;
disp(’------测试集(查准率和查全率)------’)
将对比图片和数据库中的图片进行比对,并确定判断的图片是否和选择的图片相匹配,如图1所示。
图1 BP神经网络检验对比
4 人脸识别技术应用中存在的问题及思考
“刷脸”逐渐成为新时期生物识别技术应用的主要领域,然而随之而来的风险问题也亟待解决。人脸识别包含实时检测攻击的视频人脸识别系统,如一个人眨眼和呼吸的视频,可以用来模拟验证,但是如果被不法分子构造并渲染一个三维建模, 将能欺骗人脸识别系统。2017年曾经曝出人脸识别只需要一张正面照片和换脸APP就能破解的问题。因此, 人脸识别监控技术应与公共设施的安全保密性密切结合,不允许随意增加使用权限。当下研究人员已经研究了各种人脸识别攻击技术,如活体识别、红外识别等,事实上更要加强法律规范。对于那些图谋不轨、试图钻技术漏洞的人,不仅要做好技术抵御,还要保留不法行为的证据,以法律约束公民的个人行为,确保公众的基本权益。
5 现成案例(代码+参考文献)
1【人脸表情识别】基于matlab GUI CNN人脸表情识别【含Matlab源码 787期】
2【人脸表情识别】基于matlab GUI稀疏表示人脸表情识别【含Matlab源码 786期】
3【人脸表情识别】基于matlab LBP+LPQ算法融合人脸表情识别【含Matlab源码 432期】
4【人脸表情识别】基于matlab PCA+SVM人脸表情识别评分系统【含Matlab源码 593期】
5【人脸识别】基于GUI FISHER线性判决人脸识别【含Matlab源码 605期】
6【人脸识别】基于matlab GUI BP神经网络人脸识别(含识别率)【含Matlab源码 891期】
7【人脸识别】基于matlab GUI Gabor+SVM比较PCA+SVM人脸识别【含Matlab源码 685期】
8【人脸识别】基于matlab GUI Haar分类器五官定位【含Matlab源码 686期】
9【人脸识别】基于matlab GUI KL变换人脸识别【含Matlab源码 859期】
10【人脸识别】基于matlab GUI LBP人脸识别【含Matlab源码 1282期】
11【人脸识别】基于matlab GUI LPP人脸特征提取【含Matlab源码 228期】
12【人脸识别】基于matlab GUI PCA+SVM人脸识别(准确率)【含Matlab源码 823期】
13【人脸识别】基于matlab GUI PC A人脸二维码识别【含Matlab源码 754期】
14【人脸识别】基于matlab GUI PCA人脸识别(识别率) 【含Matlab源码 802期】
15【人脸识别】基于matlab GUI高斯模型人脸识别定位【含Matlab源码 674期】
16【人脸识别】基于matlab GUI灰度化教室人数统计【含Matlab源码 602期】
17【人脸识别】基于matlab GUI人脸实时检测与跟踪【含Matlab源码 673期】
18【人脸识别】基于matlab HOG特征提取人脸识别【含Matlab源码 641期】
19【人脸识别】基于matlab PCA+LDA人脸识别【含Matlab源码 680期】
20【人脸识别】基于matlab二值膨胀差分和椒盐滤波教室内人数统计【含Matlab源码 251期】
21【人脸识别】基于matlab人脸识别检测脸、眼、鼻子和嘴【含Matlab码 178期】
6 Matlab毕设系列 —说明
Matlab毕设系列–说明
链接:https://qq912100926.blog.csdn.net/article/details/121363930
7 参考文献
[1]刘翌祥 .卡尔曼滤波在目标跟踪中的应用研究[J].电子世界. 2021,(18)
以上是关于毕设题目:Matlab人脸识别的主要内容,如果未能解决你的问题,请参考以下文章
android人脸识别活体识别人脸动作活体静默活体Demo源码实现讲解