基于matlab的人脸识别技术

合集下载

毕业设计基于matlab

毕业设计基于matlab

毕业设计基于matlab毕业设计基于MATLAB的应用一、引言毕业设计是大学生在校期间的重要任务之一,它是对所学知识的综合运用和实践能力的考验。

在选择毕业设计的题目时,很多学生会选择基于MATLAB的设计,因为MATLAB是一种功能强大的工具,可以帮助学生完成各种复杂的计算和数据分析任务。

本文将探讨毕业设计基于MATLAB的应用。

二、MATLAB的功能和特点MATLAB是一种高级的技术计算语言和环境,它具有许多强大的功能和特点。

首先,MATLAB可以进行各种数值计算,如矩阵运算、方程求解、插值和拟合等。

其次,MATLAB还可以进行数据可视化,通过绘制图表和图像,直观地展示数据的分布和趋势。

此外,MATLAB还支持编写脚本和函数,以实现自动化的计算和分析。

三、基于MATLAB的毕业设计案例1. 图像处理图像处理是MATLAB的一个重要应用领域,许多毕业设计都选择了基于MATLAB的图像处理项目。

例如,可以设计一个基于MATLAB的人脸识别系统,通过图像处理算法提取人脸特征并进行比对。

另外,还可以设计一个基于MATLAB的图像滤波器,对图像进行去噪或增强等处理。

2. 信号处理信号处理是另一个常见的MATLAB应用领域。

可以设计一个基于MATLAB的音频压缩算法,通过信号处理技术减少音频文件的大小而不影响音质。

此外,还可以设计一个基于MATLAB的语音识别系统,通过分析声音信号提取语音特征并进行识别。

3. 数据分析数据分析是MATLAB的又一个重要应用领域。

可以设计一个基于MATLAB的数据挖掘系统,通过分析大量的数据,发现其中的规律和趋势。

此外,还可以设计一个基于MATLAB的金融模型,通过对金融数据的分析和建模,预测股票价格或者进行投资策略优化。

四、毕业设计的步骤和注意事项进行毕业设计时,需要按照一定的步骤进行,并注意一些事项。

首先,需要明确设计的目标和要求,确定所需的数据和算法。

其次,需要进行详细的设计和实现,编写MATLAB代码并进行测试。

人脸识别核心算法及MATLAB代码

人脸识别核心算法及MATLAB代码

人脸识别核心算法在检测到人脸并定位面部关键特征点之后,主要的人脸区域就可以被裁剪出来,经过预处理之后,馈入后端的识别算法。

识别算法要完成人脸特征的提取,并与库存的已知人脸进行比对,完成最终的分类。

我们在这方面的主要工作包括:∙基于LGBP的人脸识别方法问题:统计学习目前已经成为人脸识别领域的主流方法,但实践表明,基于统计学习的方法往往会存在“推广能力弱”的问题,尤其在待识别图像“属性”未知的情况下,更难以确定采用什么样的训练图像来训练人脸模型。

鉴于此,在对统计学习方法进行研究的同时,我们还考虑了非统计模式识别的一类方法。

思路:对于给定的人脸图像,LGBP方法首先将其与多个不同尺度和方向的Gabor滤波器卷积(卷积结果称为Gabor特征图谱)获得多分辨率的变换图像。

然后将每个Gabor特征图谱划分成若干互不相交的局部空间区域,对每个区域提取局部邻域像素的亮度变化模式,并在每个局部空间区域内提取这些变化模式的空间区域直方图,所有Gabor特征图谱的、所有区域的直方图串接为一高维特征直方图来编码人脸图像。

并通过直方图之间的相似度匹配技术(如直方图交运算)来实现最终的人脸识别。

在FERET四个人脸图像测试集合上与FERET97的结果对比情况见下表。

由此可见,该方法具有良好的识别性能。

而且LGBP方法具有计算速度快、无需大样本学习、推广能力强的优点。

参见ICCV2005表.LGBP方法与FERET'97最佳结果的对比情况∙基于AdaBoost的Gabor特征选择及判别分析方法问题:人脸描述是人脸识别的核心问题之一,人脸识别的研究实践表明:在人脸三维形状信息难以准确获取的条件下,从图像数据中提取多方向、多尺度的Gabor特征是一种合适的选择。

使用Gabor特征进行人脸识别的典型方法包括弹性图匹配方法(EGM)和Gabor特征判别分类法(GFC)。

EGM在实用中需要解决关键特征点的定位问题,而且其速度也很难提高;而GFC则直接对下采样的Gabor特征用PCA降维并进行判别分析,尽管这避免了精确定位关键特征点的难题,但下采样的特征维数仍然偏高,而且简单的下采样策略很可能遗漏了非常多的有用特征。

matlab神经网络43个案例分析

matlab神经网络43个案例分析

MATLAB神经网络43个案例分析简介神经网络(Neural Network)是一种模拟人类神经元行为的计算模型,它通过对大量输入数据进行训练,学习到输入和输出之间的复杂关系。

MATLAB是一个强大的数学计算工具,具有丰富的神经网络函数和工具箱,可以用于神经网络的设计、训练和应用。

本文将介绍43个使用MATLAB进行神经网络分析的案例,主要包括神经网络的基本概念、神经网络模型的建立、参数的调整和优化等方面。

二级标题1: 基本概念在开始具体的案例分析之前,首先理解神经网络的基本概念是非常重要的。

三级标题1: 神经元神经网络的基本单元是神经元(Neuron),它模拟了生物神经元的工作原理。

神经元接收多个输入信号,并通过一个激活函数产生输出信号。

常用的激活函数包括Sigmoid函数、ReLU函数等。

三级标题2: 神经网络的结构神经网络由多层神经元组成,通常包括输入层、隐藏层和输出层。

输入层接收外部输入,隐藏层用于处理中间信息,输出层产生最终的输出。

三级标题3: 前向传播和反向传播神经网络的训练过程主要包括前向传播和反向传播两个步骤。

前向传播是通过输入数据按照网络结构进行计算,得到输出结果。

反向传播是根据输出结果与真实结果之间的误差,通过调整网络参数来提高模型性能。

二级标题2: 案例分析三级标题4: 案例1: 图像分类本案例通过使用神经网络和MATLAB工具箱,对手写数字图像进行分类。

首先,将图像数据转化为向量形式,并通过网络进行训练。

然后,将训练好的网络用于分类未知图像,并评估分类性能。

三级标题5: 案例2: 时序预测本案例使用神经网络来预测时间序列数据。

通过对历史数据进行训练,建立时序模型,并利用该模型来预测未来的数据。

通过调整网络结构和参数,提高预测准确性。

三级标题6: 案例3: 异常检测本案例利用神经网络进行异常检测。

通过对正常数据进行训练,建立正常模型,并使用该模型检测异常数据。

通过调整网络的灵敏度和阈值,提高异常检测的性能。

基于Labview_Matlab的人脸识别系统设计与实现

基于Labview_Matlab的人脸识别系统设计与实现
隧道超近间距。新隧道与两条既有隧道 中心线的距离均为 17.5m,相邻隧道衬砌间的 最小净距仅为 5m。
超浅埋段长。隧道通过金家街小学操场 及教学楼和简易房。K0+49.97- K0+253, 地表杂填土厚 0.9~4.8m,基岩顶面距隧道顶 部 1.5~6.2m。 2.4 地面建筑及危房覆盖率高
在 K0+173~K0+253 里程上,沿隧道轴 线宽 80m 范围内居民密集,地面建筑多为 1-6 层砖混结构旧房及简易平房砌筑结构,为七十 年代初期建筑。
(2)爆破后沿岩体的切割面(或称爆裂面)应 具有一定的平整度,并能保持原岩体自身的稳 定性, 从而保证爆破效果及隧道内的安全, 即 光面和稳定控制爆破。 3.2 控制爆破基准
根据《爆破安全规程》( G B 6 7 2 2 - 8 6 ) 对
(1l) 其中 为混合成分的比例因子,即用高斯 混合模型来对概率分布矩阵 B 建模 和 分 别为高斯混合模型的均值和协方差矩阵
图像。
2.4 特征提取
首先对合法人员进行图像采集建立以每
人 5 幅不同表情像的归一化图像为标准的图
像库, 再对库进行 H M M 训练, 就是要为每个
类别确定一组经过优化的 H M M 参数, 每个模
型可以用单幅或多幅图像进行训练,训练步骤
如下:
(1)对人脸进行Gabor小波变换,求出特征
结,并将其作为观测向量,即
1 引言
随着城市交通及地铁隧道的大量修建,穿 越密集建筑物(住宅区)进行小净距浅埋隧道施 工已成为建筑施工企业和工程技术人员亟待 攻克的科技难题。大连市椒金山新建隧道采 用暗挖法施工, 通过优化控制爆破方案, 合理 选择爆破参数对获取理想震动效果,控制地面 沉降,减少围岩扰动及地表建筑物影响起到了 关键作用。该隧道的控制爆破施工是在交通 不中断、相邻隧道净间距小、洞顶覆盖层薄 的困难条件下进行的,本项目控制爆破技术的 成功应用标志着我国超长小净距隧道控制爆 破施工的一个重大突破。

人脸识别(带全部程序)

人脸识别(带全部程序)

摘要基于图象处理的机器视觉与智能识别技术是图象处理的前沿和人工智能研究领域的重要分支,机器识别的方法在于研究合适的计算模型,然后利用机器来实现简单的智能判决。

本文以“人”目标的检测为研究对象,采用归一化方案和主动轮廓算法提取采样图象中的目标信息,即图象特征,并利用一定的先验知识对该信息进行判断,达到检测和识别“人”目标的目的。

目标检测是识别的前提工作,本文通过加权灰度分析寻找一个可以逼近我们感兴趣目标的图象点(即目标点),并在此基础上建立直角坐标系,分割采样图,解决多个目标检测的问题。

目标匹配是目标跟踪,识别领域的基本思想,在本课题中鉴于采样图获取目标的位置,角度和形态差异,直接进行目标匹配显然是不可行的。

本文采用归一化的思想,通过角度修正,坐标平移和坐标伸缩,得到目标的标准尺寸和形态。

与传统归一化算法的区别在于,本文并不采用某个标准模板作为参考,因而可以防止非“人”目标在归一化之后具有和“人”目标相似的尺寸和形态。

轮廓检测一直是目标的识别算法中最基本也最困难的问题,传统的轮廓检测方案往往受采样图的实际效果影响较大,造成提取轮廓模糊或存在断点乃至严重的轮廓失真。

通常的解决方案是采用相应的后续修正算法,让目标轮廓尽量保持连续。

本文在目标归一化的基础上,采用主动轮廓算法,较好的解决了轮廓对目标的贴近及其本身连续性问题,避免了复杂的后续修正工作。

通常情况下的目标识别往往可以对识别过的目标进行标记或能很快提取其不变特征,不至于影响其他目标判断。

然而“人”目标的形态会随时间发生随机的改变,不容易提取其不变性特征,鉴于人数统计的客观要求,不能容许对同一个人重复计数。

本文通过对上一次目标检测和目标识别的结果以及当前目标检测结果进行综合验算的方法,来判断是否对当前采样图进行识别判断,在解决了重复计数问题的同时大大降低了系统的实时处理数据量。

关键词:目标检测归一化主动轮廓计数ABSTRACTThe technology based on image processing and machine vision is in the forefront of the Intelligent Recognition of image processing and it is the important research branch of artificial intelligence plant. The identificational method is to find a suitable model, and then using machines to achieve simple intelligent judgment. In this paper, we study the recognition and judgement of the target of human beings. We use the normalization program and an active contour to extract algorithm information of the object and image characteristics from sampling image .Then, we make use of some prior knowledge of this information to reach the judgement which cause to the identification of "people" Goals.Target detection is the premise of recognition. According to Gray weighted analysis we can find an interesting target which is close to us the image point (that may be the goal points). On basis of this, we can establishmen a Cartesian coordinates and segment from the sampling image to solve the numbers of targets detection problem.Target matching and target tracking is the basic ideology of identification area, in the light of the issue of uncertained sampling image.It is hard to gain the position, Morphological differences in perspective .So matching the target directly is obviously not feasible. In this paper, incording to the idea of normalization program, such as angle correction, coordinate translation and telescopic coordinates, we can obtain standard sizes and shapes of objects. In a different with traditional algorithm ,it doesn’t use standard templates as a reference. thus we can prevent the other targets from getting similar size and morphology of “people” target s.Contour detection is always be the is the most fundamental and most difficult problem of objective recognition algorithm, traditional contour detection program often suffers from the inactual results of sampling map greatly, which causes Fuzzy result of contour extraction and breakpoints in contour or even serious distortion of the contours. The usual solution is to adopt corresponding amendments to the follow-up algorithms for object contours to maintain continuous. Based on the goal of normalization and active contour algorithm issue in this paper, wo can solve the problem to get profile of the target close to his own continuity and void the complex follow-up rectification works.Under normal circumstances , the target recognition can often be solved byidentifing the target or extracting its invariant feature as soon as possible. Thus, it will not affect judgment of other goals. However, "people" target patterns will have random changes over time. So it is not easy to extract its invariant features. Giving the statistical number of objectives is not allowed to repeat the same individual counts. Based on result of previous target detection and the identification of goals in current , we can use the integrated calculation method to determine the necessity of identifing and judging of the current sampling plan . In a result , we solve the problem of counting repeatly and reduce the amount of date in a real-time processing.Keywords: target detecting , normalization, active contour, count.目录中文摘要 (I)英文摘要......................................................................................................................................... I I 1 绪论. (1)1.1 研究背景 (1)1.2 研究现状 (2)1.3 论文结构安排 (3)2 计数系统的目标检测 (4)2.1 引言 (4)2.2 基于图象的成象系统存在的技术瓶颈 (4)2.3 图象采集方案 (5)2.4 目标检测 (6)3 图象目标的归一化处理 (10)3.1 引言 (10)3.2 图象归一化的基本问题 (10)3.3 归一化转动角参数的确定 (12)3.4 轮廓平面上目标区域的确定 (14)3.5 参照尺度的确定和比例调整 (17)4 主动轮廓算法 (23)4.1 引言 (23)4.2 主动轮廓算法的优势 (22)4.3 主动轮廓算法的图象模型 (24)4.4 模型工作机制 (26)4.5 轮廓的初步检测 (27)4.6 基于SUSAN算子的角点检测 (28)4.7 提取带凹陷特征的目标轮廓 (31)5 仿真实现 (34)5.1 目标检测仿真 (34)5.2 归一化的仿真 (38)5.3 主动轮廓仿真 (41)5.4 计数部分仿真 (44)5.5 实时性分析 (46)6 硬件实现 (48)6.1 引言 (48)6.2 TMS320C5502的功能介绍 (48)6.3 硬件设计 (49)6.4 工作原理 (53)7 结束语 (55)致谢 (57)参考文献 (58)附录: 一 (60)二 (67)1绪论1.1研究背景在我们生存的世界中,存在着多种多样的可被我们所感知的信号,从而帮助我们去了解周围的环境。

利用Matlab进行图像处理与图像识别的实例

利用Matlab进行图像处理与图像识别的实例

利用Matlab进行图像处理与图像识别的实例引言:在现代科技的发展中,图像处理和图像识别成为了热门的研究领域。

利用计算机视觉技术对图像进行处理和分析,可以广泛应用于医学影像、安防监控、人脸识别等领域。

而Matlab作为一款功能强大的科学计算软件,提供了丰富的图像处理和识别工具箱,极大地便利了研究者在图像领域的工作。

本文将通过几个实例来介绍如何利用Matlab进行图像处理和图像识别。

一、Matlab中的图像处理工具箱Matlab提供了大量的图像处理函数和工具箱,方便用户进行图像的处理和分析。

其中,图像处理工具箱是最常用的一部分。

通过该工具箱,用户可以对图像进行滤波、增强、分割等操作。

例如,可以用imfilter函数进行均值滤波,用imadjust函数对图像进行直方图均衡化。

图像处理工具箱的使用非常简单,只需要调用相应的函数并传入参数即可。

二、实例1:图像滤波图像滤波是图像处理中常用的操作之一。

通过滤波可以去除图像中的噪声或者增强图像的细节。

在Matlab中,可以使用不同的滤波函数来实现不同的效果。

下面以均值滤波和中值滤波为例来介绍。

1. 均值滤波均值滤波是一种简单的线性滤波方法。

在Matlab中,可以使用imfilter函数来进行均值滤波。

例如,对一张灰度图像进行均值滤波的代码如下:```img = imread('image.jpg');h = fspecial('average', [3 3]);filtered_img = imfilter(img, h, 'replicate');```上述代码中,imread函数用于读取图像,fspecial函数用于创建一个3x3的均值滤波模板,imfilter函数用于对图像进行滤波操作。

'replicate'参数表示在边界处使用边界像素值进行补充。

2. 中值滤波中值滤波是一种非线性滤波方法,常用于去除椒盐噪声。

Matlab在智能控制与自动化系统中的应用案例

Matlab在智能控制与自动化系统中的应用案例

Matlab在智能控制与自动化系统中的应用案例智能控制与自动化系统是当今科技领域的热门话题,它涉及到诸多领域,如机器学习、人工智能、机器视觉等。

而Matlab作为一种功能强大的编程语言和软件工具,被广泛应用于智能控制与自动化系统中。

本文将探讨Matlab在该领域中的应用案例,并分析其在实际系统中的作用。

一、机器学习机器学习是智能控制与自动化系统中不可或缺的一部分。

通过机器学习算法,系统可以根据大量的数据进行学习和预测,从而实现自动化控制。

Matlab提供了丰富的机器学习工具和函数,极大地简化了机器学习的实现过程。

以图像识别为例,在智能控制与自动化领域,图像识别广泛应用于人脸识别、物体检测等场景。

Matlab中的图像处理工具箱提供了多种图像特征提取、分类和识别的算法,方便了图像识别的实现。

通过Matlab,可以使用深度学习库来实现卷积神经网络(CNN),从而提高图像识别的精确度和效率。

二、控制系统设计控制系统设计是智能控制与自动化系统中的核心任务。

Matlab提供了丰富的工具箱和函数,支持不同领域的控制系统设计,如PID控制、模糊控制、自适应控制等。

以PID控制为例,PID是一种经典的控制算法,在许多自动化系统中得到广泛应用。

Matlab中的控制系统工具箱可以帮助工程师快速设计和调整PID控制器参数,并通过仿真验证控制效果。

此外,Matlab还提供了优化工具箱,可以根据系统的性能指标,自动优化控制器参数,从而进一步提高控制系统的性能。

三、机器视觉机器视觉是智能控制与自动化系统中的另一个重要领域。

它通过图像和视频数据,实现对现实世界的理解和感知。

Matlab提供了强大的图像处理和计算机视觉工具箱,可以帮助开发人员快速实现各种机器视觉应用。

在工业自动化领域,机器视觉可以用于检测和识别产品缺陷,提高生产线的质量和效率。

通过Matlab,可以利用图像处理和模式识别算法,实现对产品的自动检测和分类。

此外,Matlab的计算机视觉工具箱还提供了特征提取和目标跟踪等功能,可用于实现自动导航和无人车等应用。

cascade级联原理matlab

cascade级联原理matlab

cascade级联原理matlab【cascade级联原理matlab】是指在Matlab中使用级联分类器算法进行目标检测的一种方法。

级联分类器是一种非常高效的目标检测算法,被广泛应用于人脸识别、行人检测等领域。

在本文中,我们将逐步回答有关【cascade级联原理matlab】的问题,分析其原理、方法和应用。

一、什么是级联分类器?级联分类器是一种由多个强分类器串联而成的目标检测算法。

它采用了级联式的分类器结构,每个级联阶段包含多个强分类器。

在级联的每个阶段中,首先会使用一个弱分类器进行初步的筛选,然后通过增加级联分类器的强度,徐徐提取目标区域特征,最终得到准确的目标检测结果。

以人脸检测为例,级联分类器的第一阶段通常用来快速排除不可能是人脸的背景区域,第二阶段会进一步筛选人脸特征并排除非人脸区域,随着级联的进行,真实人脸区域会被逐步提取出来,从而实现高效准确地人脸检测。

二、级联分类器的原理是什么?级联分类器的原理基于AdaBoost算法,即自适应增强算法。

它通过训练一系列基分类器并将其级联,不断减小误检率,并确保高检测率,从而实现目标检测。

在训练过程中,每个基分类器的训练都是一个迭代过程,其中会根据上一轮分类错误的样本权重进行更新,使得分类器能够更加关注错误率高的样本,从而提高整体分类器的性能。

级联分类器的关键在于选择合适的特征和合适的分类器。

特征选择需要具有良好的区分度和抗干扰能力,常用的特征包括Haar特征、HOG特征等。

分类器的选择可以使用AdaBoost算法,也可以使用更高级的分类器,如SVM等。

三、如何在Matlab中实现级联分类器?在Matlab中,我们可以使用Viola-Jones算法来实现级联分类器。

这个算法可以通过训练分类器级联来快速检测图像中的目标。

一般来说,我们需要进行以下步骤来实现级联分类器:1. 数据准备:收集或生成包含正样本和负样本的训练数据,并将其转换为合适的格式。

2. 特征提取:使用Haar-like特征来对训练数据进行特征提取。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

人脸识别 摘要:人脸识别是一门新兴的科研项目,起始于上个世纪60年代。经过几十年的发展,现已成为一项最有上升潜力的人体特征识别技术。具有广泛的应用前景,它的工作原理是借由的生物特征来确认生物个体,利用MATLAB软件实现人脸信息的检测、定位与识别,在输入的整幅图像中寻找人脸区域,把图像分割成两个部分——人脸区域和非人脸区域,从而为后续的应用作准备。PCA法实现人脸边缘检测,确定其分布范围,设定门限阀值,实现人脸区域与非人脸区域的分割。再结合长宽比、目标面积等计算方法在图像中分割出人脸区域,经试验该方法能较为精确地定位单人脸图像,对多人脸图像定位不准确。

关键词:matlab; 人脸识别; 人脸定位; 边缘检测

1 引言 人脸识别技术是近年来随着图像处理技术、计算机技术、模式识别技术等的快速进步而出现的一种崭新新生物特征识别技术。相对与指纹、虹膜等其他生物特征识别技术,人脸识别具有直接、友好、方便的特点,尤其是对于个人来说,几乎无任何心理障碍,因此在商业、司法、监控和视频检索等众多领域有着广泛的应用前景。在“9.11”事件以后,各国都投入大量物力,人力研究并发展种类识别技术,使得人脸识别技术受 到了前所未有的重视。 如同人的指纹一样,人脸也具有唯一性,也可用来鉴别一个人的身份。人脸图像的自动识别系统较之指纹识别系统、DNA鉴定等更具方便性,然而人脸图像受很多因素的干扰,给识别带来很大难度。国外对于人脸图像识别的研究较早,现己有实用系统面世,只是对于成像条件要求较苛刻,应用范围也就较窄,国内也有许多科研机构从事这方而的研究,并己取得许多成果。 2 图像处理的Matlab实现 2.1 Matlab简介 由Math Work公司开发的Matlab语言语法限制不严格,程序设计自由度大,程序的可移植性好。Matlab还推出了功能强大的适应于图像分析和处理的工具箱,常用的有图像处理工具箱、小波分析工具箱及数字信号处理工具箱。利用这些工具箱,我们可以很方便的从各个方面对图像的性质进行深入的研究。Matlab图像处理工具箱支持索引图像、RGB图像、灰度图像、二进制图像并能操作.bmp、.jpg、.tif等多种图像格式文件。 2.1 数字图像处理及过程 图像是人类获取信息、表达信息和传递信息的重要手段。利用计算机对图像进行去除噪声、增强、复原、分割、提取特征等的理论、方法和技术称为数字图像处理。数字图像处理技术已经成为信息科学、计算机科学、工程科学、地球科学等诸多方面的学者研究图像的有效工具。数字图像处理主要包括图像变换、图像增强、图像编码、图像复原、图像重建、图像识别以及图像理解等内容。 3 matlab人脸识别系统 人脸识别是图像识别的一个重要分支,其基本结构如图所示。为了保证人脸的位置一致性,在一定程度上克服了背景、头发等冗余信息的干扰,首先要对人脸库中的图像进行一些预处理操作。紧接着,进行特征抽取,将得到的人脸特征和训练样本进行对比,根据相似程序的高低决定最后的识别结果。 图像采集 预处理 特征提取 测试 训练 特征匹配 目标 图像 提取库 识别结果 图1-1 人脸识别系统框图 3.1 图像的采集 3.1.1人脸图像的获取 图像的获取都是通过摄像头摄取,摄取的图像可以是真人也可以是人脸的图片,为了方便计算直接使用需要识别的人脸图像 。 3.1.2人脸检测 人脸检测主要任务是判断所给图像是否存在人脸,若存在人脸需要给出人脸的大小(区域面积),坐标位置,是否为二值图像 等信息。 3.2人脸图像的预处理 常应用于人脸图像的预处理方法有图像 类型转换、滤波去噪、灰度变换、边缘检测及二值化、尺寸归一化、作为通用人脸图像预处理模块要能够充分适应不同人脸库中图像在人脸大小、光照强度、成像系统等方面的任意性和差异性不能单独采用某种单一的滤波、灰度变换和边缘检测方法。灰度归一化等所以在本仿真系统中对上述的每种预处理方法全部加以实现的同时还对三种最常用预处理方法滤波去噪、灰度变换、边缘检测提供了多种不同的具体算法。 3.2.1滤波去噪 由于噪声给图像带来的失真和降质在特征提取之前采用滤波的方式来去除噪声是实际人脸识别系统中所必须的步骤。滤波的方法有很多如各种平滑滤波、各种锐化滤波等。在人脸图像预处理中使用较多的滤波是平滑滤波方法可分为以下三类线性滤波、中值滤波、自适应滤波。 (1)线性滤波最典型的线性滤波方法如采用邻域平均法的均值滤波器、采用邻域加权平均的高斯滤波和维纳滤波。线性滤波可以去除图像中某些特定类型的噪声如图像中的颗粒噪声高斯噪声、椒盐噪声等。对扫描得到的人脸图像根据其噪声类型一般采用此种滤波方法。考虑滤波模板大小对滤波效果影响较大仿真系统选择算法时对同种滤波算法提供了不同模板大小的情况。 (2)中值滤波法中值滤波法是一种非线性滤波方法它把像素及其邻域中的像素按灰度级进行排序然后选择该组的中间值作为输出像素值。中值滤波方法的最大优点是抑制噪声效果明显且能保护边界。对于使用基于整体的人脸识别算法的系统中由于失掉小区域的细节对特征提取影响较小所以这种滤波方法最受欢迎。 (3)自适应滤波自适应滤波能够根据图像的局部方差来调整滤波器的输出其滤波效果要优于线性滤波同时可以更好地保存图像的边缘和高频细节信息。 3.2.1灰度变换 灰度变换是图像增强技术中的一种。通过灰度变换可对原始图 像中的光照不均进行补偿使得待识别人脸图像遵循同一或相似的灰度分布。只有这样不同图像在特征提取和识别时才具有可比性。这一过程也被称作灰度归一化。常用在人脸识别系统中的灰度变换方法主要有基于图像统计特征的直方图均衡化、直方图规定化和灰度均值方差标准化三种方法。直方图均衡化和直方图规定化的灰度变换原理和实现方法可由matlab仿真来实现。三种灰度变换方法均能在一定程度上消除由于光照条件不同而 对人脸识别带来的影响。故在仿真系统中提供了三种灰度变换效果比较及选择界面用户可根据需要选用。 3.2.3 边缘检测 对输入人脸图像进行边缘检测是很多人脸识别系统在人脸粗定位及人脸主要器官眼睛、鼻子、嘴巴定位时采用的预处理方法。边缘检测的方法有很多主要有微分算子法、Sobel算子法、拉普拉斯算子法、canny算子法等。每种算子对不同方向边缘的检测能力和抑制噪声的能力都不同。所以和灰度变换及滤波去噪部分的设计思路相同在仿真系统中给出了canny、sobel、log、prewitt四种算子在不同灰度阈值下、不同方向的边缘检测算法使用者可从 检测结果中加以比较、选择合适的算法。图像类型转换、图像二值化、尺寸归一化也是一些人脸识别系统中经常使用的预处理方法。为了在不修改其他算法的基础上扩大系统处理图像的类型和范围将输入图像首先转换为统一的类型是多数人脸图像预处理中的第一步。仿真系统中通过调用MATLAB中提供的各种图像类型转换函数来实现TIF、JPG转换为BMP格式及彩色到灰度图像的转换对图像二值化采用了graythresh()函数来自动选择阈值的二值化方法尺寸归一化采用的算法是对人脸图像进行剪裁和尺寸缩放实现去除大部分头发、服饰和背景的干扰并将人脸图像大小统一。 3.3 特征提取 通过人脸特征点的检测与标定可以确定人脸图像中显著特征点的位置如眼睛、眉毛、鼻子、嘴巴等器官,同时还可以得到这些器官及其面部轮廓的形状信息的描述。根据人脸特征点检测与标定的结果,通过某些运算得到人脸特征的描述。 3.3.1 人脸识别的算法 通过判别图像中所有可能区域是否属于“人脸模式”的方法来实现人脸检测。这类方法有:特征脸法、人工神经网络法、支持向量机法;积分图像法。 本次使用的是PCA(主成分分析法)其原理是:利用K-L变换抽取人脸的主要成分,构成特征脸空间,识别时将测试图像投影到此空间,得到一组投影系数,通过与各个人脸图像比较进行识别。 对于一幅M*N的人脸图像,将其每列相连构成一个大小为D=M*N维的列向量。D就是人脸图像的维数,即是图像空间的维数。设n是训练样本的数目;Xj表示第j幅人脸图像形成的人脸向量,则所需样本的协方差矩阵为:

1()()mTiiiSxuxu (1)

其中U为训练样本的平均图像向量:

11miiuxn (2) 令A=[x1-u,x2-u,...xn-u],则有Sr=AAT,其维数为D×D。根据K-L变换原理,需要求得的新坐标系由矩阵AAT的非零特征值所对应的特征向量组成。直接计算的计算量比较大,所以采用奇异值分解(SVD)定理,通过求解ATA的特征值和特征向量来获得AAT的特征值和特征向量。 依据SVD定理,令li(i=1,2,…,r)为矩阵ATA的r个非零特征值,vi为ATA对应于li

的特征向量,则AAT的正交归一特征向量

Ui为: 1(1,2,...)iiiuAvirl

(3) 则“特征脸”空间为:w=(U1,U2,...,Un) 将训练样本投影到“特征脸”空间,得到一组投影向量Ω=wTu,构成人脸识别的数据库。在识别时,先将每一幅待识别的人脸图像投影到“特征脸”空间,再利用最邻近分类器比较其与库中人脸的位置,从而识别出该图像是否是库中的人脸,如果是,是哪一幅人脸。 以下为运行结果图:

原图像二值图像标记图像 标记图像 标记图像 图 1-2人脸定位图 测试图像

识别图像 图1-3人脸检测 不过该算法具有局限性,对于多张人脸基本上就不能准确定位如下图:

标记图像

图1-4失败的人脸定位图 4结论

特征脸算法(PCA)使得压缩前后的均方误差最小,且变换后的低维空间有很好的分辨能力,但是在种方法在处理人脸图像时,要将二维图像矩阵转换成一维的列向量,使图像的维数达到上万维,计算工作量非常大,特征提取速度慢。 为了克服传统PCA的不足,研究者们相继提出了二维PCA(2DPCA)方法、PCA+2DPCA等一些方法。 这些方法的提出不仅有效地解决了图像处理的高维问题,而且大大提高了人脸的识别率。 参考文献

相关文档
最新文档