当前位置:文档之家› 人脸识别算法

人脸识别算法

人脸识别算法
人脸识别算法

人脸识别算法

目前在人脸定位领域,几何模型匹配方法得到了广泛的使用。

本文对几何模型匹配方法进行了研究,提出了一套完整的人脸定位算法。在预处理部分,采用了特别的增强人脸特征与脸部皮肤之间对比度的方法及局域取

阈值二值化方法,改进了预处理的效果。在图像分割部分,实现了经典的分合算

法,并且使用成组算法改进了分合的效果。在人脸匹配部分,实现了基于眼睛和

嘴的几何模型匹配,并对评价函数的构造进行了研究。

在Microsoft Windows 98平台上Borland Delphi 3.0开发环境下,采用上述算法编制了人脸定位的软件。实验证明,该软件对于尺寸足够大的清晰的正面单个/多个人脸情形能够正确检测定位,典型耗时为3~40秒钟。

最后,本文探讨了几何匹配算法和分合算法的优缺点,提出了进一步工作的方向。

关键词:人脸定位,几何匹配,分合算法,二值化,图像分割,成组算法,评价

函数。

In the area of human face locating, methods using a geometric face model(geometrical matching) are widely used.

This paper studied a method of geometrical matching and presented a complete set of algorithms for human face locating. In the section of preprocessing, special methods to enhance the contrast between face

features and face skin and a local thresholding method were employed so that the result of the preprocessing was improved. In the section of image segmentation, the classical split-merge algorithm was applied, and the result improved by a grouping algorithm. In the section of face matching, an algorithm using a geometric model based on eyes and mouth was presented. Discussion was conducted on the construction of evaluation functions.

Under Microsoft Windows 98 and Borland Delphi 3.0, a face locating software was developed using the algorithms mentioned above. Experiments showed that the software is capable of detect and locate front-view

face(s) which is(are) big and clear enough. The typical time consumed is 3~30

seconds.

In the end, this paper probed into the advantages and disadvantages of the geometrical matching and the split-merge algorithms, and put forward suggestions to future work.

Key words: Face locating, geometrical matching, split-merge, thresholding, image segmentation, grouping, evaluation function.

摘要 (1)

Abstract (2)

目录 (3)

第一章引言 (4)

1.1 人脸定位概述及其与人脸识别的关系 (4)

1.2 人脸定位算法 (5)

1.3 分割算法和区域生长 (6)

1.4 论文的主要工作 (7)

第二章一种有效的分割算法: 分合算法 (8)

2.1 人脸定位中的图像分割 (8)

2.2 分合算法描述 (9)

2.3 成组算法 (13)

2.4 形状属性的计算 (14)

第三章预处理和几何匹配 (19)

3.1 预处理 (19)

3.2 几何匹配算法 (24)

第四章软件的组成和操作 (28)

4.1 软件的组成 (28)

4.2 软件的操作 (30)

第五章论文工作总结 (32)

6.1 关于几何匹配算法和分合算法的总结 (32)

6.2 将来工作的展望 (34)

6.3 致谢 (34)

参考文献 (35)

这个毕设所涉及到的是人脸的定位和识别。简单来说,所谓人脸的定位,就是在照片(静态图像)或视频(动态图像)中标出人脸所在的位置,把人脸选取出来。而人脸的识别就是把选取出来的人脸与数据库中已有的人脸进行比较,找出匹配的档案来。有的文献把人脸的定位和识别统称为人脸识别,定位和识别则是

两个主要的步骤。完整的人脸识别系统涉及到决定照片或视频中有无人脸,并计

数,定位,定出大小,然后根据数据库识别出个人,可能的话还要识别表情,以

及根据脸的图像做出描述(瓜子脸,丹凤眼等等就是日常生活中“描述”的例子),

或者反过来根据描述挑选匹配的人脸图像。

在日常生活中,我们主要根据脸来识别一个人。交谈中,我们往往看着对方的脸,尤其是眼睛。脸上的表情也是进行交谈的一个重要部分。所以,人脸在人

与人的交流过程中起着极其重要的作用。这就决定了在现代社会中,使用计算机

自动进行人脸的定位和识别工作有着重要的意义。其应用领域包括很多方面,比

如身份鉴别,保安系统,人机交互界面等等。

人脸识别系统虽然有诱人的应用前景,但是在现实中却还没有开始大规模的使用。其主要原因之一就是用计算机自动进行人脸的定位和识别十分困难,目前

的识别效果(正确率,速度)不如其他的生物识别技术,如指纹识别,视网膜识

别等等。人们在日常生活中就进行了大量的人脸定位和识别工作,当然全部是由

人的视觉系统和大脑“自动”进行的。目前还不清楚人的视觉系统和大脑的工作

原理,因此这项人可以轻而易举完成的任务,对于目前还只会死板地执行程序指

令的计算机来说却是极端困难。困难主要存在于两个方面:

1.人脸的图像数据具有高度的随机性。光照条件,脸的偏向,表情,发型,胡

子,化妆,衣饰(眼镜,帽子)等等略有变化,就可以给识别系统带来巨大的困难。

2.人脸的图像数据量巨大。目前出于计算量的考虑,人脸定位和识别算法研究

大多使用尺寸很小的灰度图像。一张64,64像素的256级灰度图像就有4096 个数据,每个数据有256种可能的取值。定位和识别算法一般都很复杂,在人脸库较大的情况下,计算量十分大,很多情况下速度令人难以忍受。而灰度数据事实上是丧失了象色彩,运动等等的有用信息的。如果要使用全部的有用信息,计算量就更大了。

因此,研究人脸的定位和识别不仅仅有实用上的考虑,而且对人们理解人脑的工作方式、研究人工智能和数字图像处理有重要的意义。

从模型匹配的方法来看,目前的人脸定位算法可以粗略地分为两大类:第一类是利用人脸各器官之间的几何关系的方法;第二类是利用标准人脸图像或者其

变换结果直接或者经特征提取后进行匹配的方法。第一类方法利用了明显的先验

知识,因而方法简单明了,执行速度较快,对人脸的方向和表情有一定的适应性

(在一定的变化范围内面部特征的相对几何关系变化很小), 但是准确率往往不高(漏判和误判),而且对预处理要求高,依赖于所有面部特征都完整地被提取,

所以对转角较大的侧脸, 光照极度不均匀, 部分脸被遮蔽(眼镜, 围巾等)适应性不好。第二类方法利用了更多的图像信息, 准确率高,不易受欺骗;缺点是计算量大,而且使用的人脸模板受人脸库中已有资料的影响,可能会有通用性不

好的问题(比如不同人种的人脸模板不能通用)。

利用人脸各器官之间的几何关系的方法的典型例子可以参见Shi-Hong Jeng, (1)Hong Yuan Mark Liao等人的文章。而利用标准人脸图像或者其变换结果直接

或者经特征提取后进行匹配的方法的典型例子可以参见Toshiaki Kondo和Hong

(2)Yan的工作。

我认为利用人脸各器官之间的几何关系的方法可以作为完整的人脸定位算

法的一个基础,就是说利用几何匹配先大致找到图像中的人脸(可能含有很多

错误),然后使用利用标准人脸图像或者其变换结果直接或者经特征提取后进行

匹配的方法来确证,剔除实际不是人脸的区域。这样既可以利用第一类方法的速

度优势,又可以利用第二类方法的准确度优势。

从一幅图中,按一定规则划分出感兴趣的部分或区域叫做分割。对于利用人

脸各器官之间的几何关系的人脸定位方法来说,分割算法是十分重要而关键的。

在这里,感兴趣的部分是人脸的器官(眼睛,嘴巴,眉毛,鼻子等等)。分割算

法如果能够有效地把人脸器官和脸的其他部分分离开来,并且保持器官的完整性

(比如嘴巴没有破碎成几段),就是成功地达到了目的。

分割算法是数字图像处理中非常经典的课题,有着众多的算法可供选择。这些算法各有所长,但是没有哪一种是普适的。最常见的几类方法是:按像素或处

理过的像素的灰度值进行分割(其实就是取阈值做二值化);提取边缘,利用边

缘进行分割;区域生长方法。

区域生长方法寻找互相连接在一起,并有相同特征的像素所形成的区域(我把这样的区域称作特征块或者“物体”),是实现图像分割的一种重要方法。区

域是一个二维连通区,所以生成区域的办法大致有三类:局部法:这是根据像素

的性质或像素的临近像素的性质决定像素分在什么区域;总体法:这是根据遍及

整幅图中大量像素的性质决定把一群像素划分到一个区域中;分裂合并法(简称

分合):这是利用状态空间技术分裂或合并区域,用图结构表示区域和边界,这

时要利用局部和总体的合并与分裂准则。

我在毕业设计中采用的是区域生长方法中的分合算法。分合算法70年代就(3)提出,发展至今已经是一种非常成熟的经典算法,被由Horowitz和Pavlidis

广泛用于图像分割的应用,比如卫星遥感照片的自动分割等。这种方法被证明效

果较好,但是计算和存储量大。

我的论文工作的目标是寻找一种切实可行的人脸定位算法,并且编制出演示的软件。我采用的是分合的分割算法和几何匹配的算法。算法和软件的实现采用

的是Borland Delphi 3。Windows位图的基本操作和一些数字图像处理的基本操

作来自钟立晨老师所编制的模块,其余的各模块是由我自己编写的,包括:演示

软件主程序;图像的预处理;分合算法;几何人脸匹配算法;基本的链表,堆栈

和队列的数据结构。

在引言中已经说明了图像分割的基本概念和常见的算法类型。这里更加详细地讨论在人脸定位中图像分割的方法。

图像分割的目的是把人脸的器官与脸的其他部分分离开来,并保存每个器官的完整性。在照片中,人脸比较明显而易辨别的特征主要是面部器官:眼睛,嘴

巴,鼻子和眉毛。鼻子往往与脸的反差不大,因此通常用鼻孔代替。这几个面部

特征在灰度图像中一般比周围区域暗。尤其是眼睛和嘴巴在绝大部分情况下都清

晰可见。因此图像分割可以利用的特征就是:灰度比周围区域暗的区域。在我的

毕业设计中,为了减少图像分割这一步的运算量,预处理的时候就对图像做了二

值化。因此事实上分割的对象已经是黑白图像,分割简化为找出所有黑色的连通

区域,它们都成为人脸器官的候选者。

对分割算法有两个要求:

1. 一定的抗噪声能力。经过二值化的黑白图像中,难免会有很多与主旨无关的

细碎黑色像素连接了本应分开的特征,而某些单一的特征也可能会破碎成几块。要求分割算法具有一定的能力抵抗这些噪声,将应该分开的特征分开,应该成为整体的部分连起来。

2. 运行速度要快。人脸定位和识别系统常常作为实时应用,在这些场合要求系

统的运行不能耗时过长,否则就失去意义了。从几何匹配方法来看,最耗时的步骤就是图像分割这一步。所以这一步的速度决定了整个人脸定位方法的运行速度。

由于我们需要的是能够把黑色连通的区域分别标记出来的分割算法,选择区域生长法就是最自然的了。

在区域生长法中,有两类算法最常见:分合算法和运行长度表方法。分合算

法抗噪声能力好一些,所以它成为了我首选的算法。但是经过实践发现它的最大

弱点是计算量大,而且计算量随问题规模的增长是非线性的,这就导致对大的或

者复杂图像的处理时间很长。运行长度表方法优点是速度快,缺点则是没有多少

抗噪声能力。

下面具体描述分合算法和我在它的实现中的一些考虑。具体的模块组织见

4.1“软件的组成”。

要事先说明的一点是,现在个人计算机的内存一般都有几十M以上,对于人脸定位的应用绰绰有余,所以运行在个人计算机上的算法完全不必为了节省内存空间而做专门的考虑。但是如果希望算法能够运行在数字图像处理芯片上,就需

要做改写以适应节省内存的要求了。

分合算法的目的是把图像分割为许多这样的区域:具有某种共同特征并且相互连通的像素分在同一个区域,而特征不同或者不相互连通的像素分在不同的区

域。(我使用的连通性定义是四连通。关于四连通和八连通的概念参见Kenneth

(4))。 R. Castleman

判定区域R内的像素是不是具有共同的特征需要均匀性判据H(R),H(R)为True表示区域均匀(从而可以认为像素具有共同的特征),否则表示不均匀。

一般应用的均匀性判据往往是区域内的灰度比较均匀,比如区域内最大和最小的

(5)灰度值之差不超过一定阈值。在我的应用中,因为图像已事先做了二值化,

所以均匀性的判定有所不同。我只关心黑色的区域,因为只有黑色区域可能代表

人脸特征。当一个区域中黑色像素占了绝大部分时,我就认为它是均匀的。具体

的判据将在算法中给出。

分合算法采用金字塔数据结构。首先讨论以像素计的边长是2的整数次幂的正方形图像。塔的底层(第0层)是原始图像(在我的应用中是已经过二值化的图像)。用相邻排作正方形的四个像素作为子结点,计算上一层相应像素的取值。

这样每上溯一层(层编号加1),像素数目成为原来的1/4。当整幅图只剩下一个像素时,金字塔构造完毕(见图1)。数据结构某一层中的一个像素事实上代j表了第0层中2个像素组成的一个数据方块(j是该层编号)。为

图1 金字塔数据结构

了表示和计算方便起见,用编码来代表这样的一个数据块。设数据结构中最高一

层的编号为n,则这个编码共有n位。把一个方块内的四个子方块按照图2顺时针标记为1,2,3,4。为了表示一个数据块,我们首先把原始图像划分成四个正方形,第一位编码就描述该数据块落在了1,2,3,4中哪个正方形里。然后

对包含该数据块的正方形再划分为四个小正方形,第二位编码就描述该数据块落

在了哪个小正方形里。如此反复,直到某个小正方形恰好是该数据块,此后的编

码就全部取0,表示不必再细分。例如图2所示的3层金字塔结构:

图2 数据块编码规则

对于一幅普通的图像,一般都不会恰好是正方形,边长也不会恰好是2的整数次幂。我便以128×128的方块作为基本单位,用m×n个这样的方块对图像做覆盖。遇到图像中某个部分填不满一个方块的情形,就补上白色(白色不作为特

征,看成空白)。每个方块都产生自己的一个7层金字塔数据结构,相互独立地

运行分裂算法和合并算法。在相邻归并算法中,不处于同一个128×128划分块

但是相邻的数据块应该被归入同一个特征块,所以数据块编码需要在全图像内唯

一。我使用的数据块编码是在每个金字塔7位编码的基础上再加两位,分别表示

在m×n个128×128划分块中该数据块所处的划分块的x和y位置。因此完整的编码是9位。

根据子结点像素计算父结点像素时常用的是灰度平均法。我的应用中有所不同:如果四个像素中白色占了3块以上则父结点像素赋值为白色;如果黑白2:2对角分布也赋值为白色;如果黑色占了三块以上则赋值为黑色;如果黑白2:2各占据一侧则赋值为黑色。这样的好处是可以消除一部分不紧密的连接(2:2对角分布),而保留所有可能的紧密的连接(2:2同侧分布)。

图3 2:2对角和2:2同侧分布

(5)分合算法的思路是:

1.任取一层数据结构,检验其均匀性H,若对于该结构中某一区域R有

H(R)=false,则分裂这个区域为4个子区;若4个彼此相邻属于同一个

父结点的区域R,…,R满足H(R?R?R?R)=true,则合并它们成k1k4k1k2k3k4 为单一区域。当不再有区域可分裂或合并时,停止分割。

2.如果二任意相邻区域R和R(可以不属于同一个父结点;可以有不同的ij

大小)使得H(R?R)=true,则合并它们。 ij

分割算法的描述如下:

1.把金字塔数据结构中起始某个中间层的数据块编码全部压入工作堆栈

RgStack。

2.从RgStack弹出一个数据块编码Code。如果Code代表的数据块不均匀,

就把Code分裂为四个数据块,再把颜色为黑色的那些块的编码压入堆栈

RgStack。如果均匀,或者Code代表的已经是不可分的像素,那么把Code 压入中间结果堆栈RgCode。

3.反复执行2,直至堆栈RgStack空。

有两点值得解释一下。首先,我在程序中采用整形数来保存数据块编码,这样较字符串而言更加方便了计算(子结点或父结点编码的计算,数据块坐标的计

算等等)。其次,我使用了递归方法产生中间层所有数据块的编码,相对于多重循环而言,不仅使程序书写简洁,而且起始的中间层号可以方便地修改,而多重循环结构要修改起始层则必须加或减循环的层数。

合并算法的描述如下:

1.把中间层里所有均匀的数据块的编码存入工作队列RgA。

2.从RgA出队一个编码Code。在RgA中寻找和Code属于同一个父结点的其

他数据块。如果找不齐所有四个,那么把Code和找到的都从RgA删除,

而压入中间接果数组RgCode。如果找齐了,那么把这四个编码都从RgA

删除,而把父结点的数据块编码入队到RgA中。

3.反复执行2,直至队RgA空。

需要说明的一点:步骤1虽然是属于合并这部分的,但是在执行分裂时就可以方便地做掉,节省代码和时间。

相邻归并算法的描述如下:

1.从RgCode中弹出一个编码,压入工作堆栈RgStack。

2.从RgStack中弹出一个编码Code,将它入队到RgA。扫描RgCode,把所

有与Code相邻的数据块的编码都压入堆栈RgStack。

3.反复执行2,直至栈RgStack空。此时RgA里面存有的一系列数据块编码

就是属于同一个特征块的,可以用来计算这个特征块的形状属性并保存起

来。具体计算方法见2.4“形状属性的计算”。

4.反复执行1-2-3,直至栈RgCode空。

这里有两点值得说明。首先,相邻归并算法是三个算法中最耗时的,占去了分合算法中绝大部分的运行时间(对一幅182×248单人脸灰度图像做试验,分裂,合并,相邻归并共用3224毫秒,其中相邻归并占了3074毫秒)。而且其耗时随问题规模是非线性增长的。对于小而简单的图像,分合算法可以很快(3秒钟),可是对于较大或较复杂的图像,分合算法往往耗时很长(20~40秒)。这么大的差别就是来自于非线性增长的计算量。其次,判断两个编码所代表的数据块是否相邻的函数在相邻归并算法中被频频调用,它的效率会大大影响整个算

法执行的时间。我曾经采用计算两个数据块中心的x向和y向距离,然后与半边长之和比较的方法来判断数据块是否相邻,方法直观,代码较少,但是由于涉及了浮点运算,并且对每一个编码都要做完整的一套计算,导致运行速度很慢。现

在采用的是分析两个编码在各位上的组合方式,从大尺度开始一位一位进行检查,只要发现这两个数据块在某一尺度上不可能相邻,就马上做出不相邻的判断,

除非它们能够一直保留到被证实符合一种相邻的编码组合。具体方法描述较繁,

这里省略。采用这种方法之后,虽然代码长度增加了很多,但是执行效率却大大

提高了。

引入成组算法出于如下事实:一些本属于同一个脸部器官的特征块在分合之后仍然是分开的。分开的特征块的中心、大小、取向等等参数相对于一个代表完

整的器官的特征块而言都是错误的,导致后面的几何匹配得不到正确结果。成组

算法就是用来把挨得足够近的可能本属于同一个器官的特征块合并起来(尽管它

(1)们并不是连通的)。算法实现参考了Shi-Hong Jeng, Hong Yuan Mark Liao等

的工作。算法有两个特点:1. 合并半径取决于待合并的特征块的大小(一个重

要参数-最大合并半径N事先指定),特征块越大,则合并半径越小;2. 如max

果待合并的两个数据块中任一个大于N,那么它们必须位于同一主轴上(主轴max的定义在形状属性的计算中介绍)才能合并。下面的伪代码描述了成组算法,其

中N(i)代表第i个块B包含的像素个数,N代表图像中特征块的总数。 ib Grouping

N := 1 N max

R := 8 – 6 * (N-1) / (N-1) max

i :=1 N b

N(i) = N

“找到所有位于B的r邻域内的特征块{B}” ij

{B} ?φ j

“从{B}中找出离B最近的块B” jik

(N(k) < N) (B与B位于同一根主轴上) maxki

“把B和B合并” ik

Grouping

合并后的特征块的各个形状属性都要重新计算,具体方法见2.4“形状属性的计算”。

二值化后的原始图像直接用黑和白的像素表示。在用分合算法分割之后,每一个连通的黑色特征块就由一组数据块编码来表示,编码所代表的数据块(可能

是来自金字塔数据结构中不同的层次)在一起组成了该特征块。但是这样仍然不

能方便地进行几何匹配。为了进行几何匹配,需要知道每一个特征块的位置,大

小,倾角及大概的形状。这些参数统称为形状属性。从组成一个特征块的数据块

编码来计算这个特征块的形状属性是继分合算法之后的重要步骤。由于它与分合

算法结合更紧密(因为不同的分割算法导致不同的计算形状参数的方法),所以

把它放在分合算法这部分来介绍。

图像用f(x,y)来表示,x,y分别是横、纵坐标(已经离散化,所以下面都使用求和而不是积分),f(x,y)是该坐标处的灰度值。用字母B代表特征块。设

2}组成,B包含的像素个数为N,边长为D(N = D),特征块由一组正方形数据块{Biiiiii

其中心(也就是重心)坐标为。N和可以从数据块编码通过计算得

(x,y)(x,y)iiiii到,方法较简单,这里就不赘述了。形状属性的计算就是要把特征块的形状属性

都用N(或D)和表达出来。 (x,y)iiii

1.特征块的位置:

特征块的位置用它的重心来表示。重心坐标计算公式如下:

xf(x,y)yf(x,y),,

(x,y),B(x,y),B,,, xyf(x,y)f(x,y),,(x,y),B(x,y),B

在我的应用中,像素都是黑白的,即f(x,y)只有两种取值:0(黑)或者255 (白),而特征块所包含的像素一定是黑色的(这是特征块的定义决定的)。所

以在公式中完全可以把f(x,y)省略(为了方便,下面的公式中都直接略去了f(x,y)),直接写作:

xy,,(x,y),B(x,y),B, ,,xyNN

经过简单推导得到用N和表达的重心坐标: (x,y)iii

NxNy,,iiiiii, ,,xyNN,,iiii

其中是特征块包含的像素个数,即特征块的大小。 N,1,(x,y),B

2.特征块的取向:

,,)来表示。特特征块的取向用特征块的主轴的倾角(规定取值范围,~22

(6)征块的主轴定义为使转动惯量I(θ)取值最小的转轴。可以证明(证明略),

(4)主轴一定穿过重心,而且使转动惯量取极值的倾角θ满足条件:

,211tan2,,其中μ,μ,μ是三个二阶中心矩 ,112002,,,2002

由此可以得到:

,k21,111,,,,,k为整数 tan(),22,,2002

由于θ取值范围的规定,k的所有可能取值只有-1,0,1。

,,算法中对k的所有三个可能取值分别计算θ,舍弃不在内的值。然,~22 ’’’’后分别检查转动惯量二阶导I(θ)的符号,使得I(θ)>0的才是能够令I(θ)

’’取极小值的主轴倾角θ。检查I(θ) 的符号所依据的公式是:

''I(,),cos2,(,,,),2sin2,, 200211

计算主轴倾角θ要用到中心矩。中心矩的一般定义和详细讨论可参见

(6)Robert M. Haralick 和 Linda G. Shapiro 的 Computer and Robot Vision。

特征块B的(j+k)阶中心矩μ为(注意这里同样略去了f(x,y)): jk jk ,,(x,x)(y,y),jk(x,y),B

经简单计算可以得到:

2222,,,x,Nx,,,y,Ny ,,xy,Nxy,,,200211(x,y),B(x,y),B(x,y),B

22因此问题转化为求。 xy,x和y,,,(x,y),B(x,y),B(x,y),B

这一部分的推导比较繁琐,结果如下:

xy,xy,Nxy ,,,iii(x,y),BiB(x,y),i

212222x,x,D(12x,D,1) ,,,,iii12(,)(,)xy,BiBxy,ii

212222y,y,D(12y,D,1) ,,,,iii12(,)(,)xy,BiBxy,ii

有了这些公式,特征块的取向就可以由特征块所包含的数据块的编码计算出来了。

3.特征块的外接矩形

特征块的外接矩形定义为长边平行于主轴且与特征块外接的矩形。

为了求得外接矩形,对特征块做坐标变换:把坐标原点挪到重心处,再逆时’q。在新坐标系下找出所有数据块顶点针旋转坐标系θ,得到的新坐标系记为po

(每个数据块有四个顶点)坐标的最值p,p,q,q。易知在新坐标系下minmaxminmax

外接矩形的四个顶点坐标为(p,q),(p,q),(p,q),(p,minminminmaxmaxminmaxq),特征块重心到矩形四条边的距离分别是L1 = - p,L2 = p,W1 = - q,maxminmaxminW2 = q。将坐标系反变换回去(先顺时针旋转θ再平移),就得到了原坐标max

系下特征块的外接矩形的四个顶点坐标。参见图4。

图4 外接矩形的计算

最后讨论一下两个特征块(“物体”)合并时形状属性的计算。设B和B12这两个特征块合并成了B。

基于PCA算法的人脸识别毕业设计论文

太原科技大学 毕业设计(论文) 设计(论文)题目:基于PCA算法的人脸识别

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期: Ⅰ

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日 Ⅰ

人脸识别过程和相关算法(2013)

人 脸 识 别 过 程 图1 人脸识别流程图 1. 人脸的检测和定位:检测图中有没有人脸,将人脸从背景中分割出来,获 取人脸或人脸上的某些器官在图像上的位置。 2. 特征提取:提取特征点,构造特征矢量;多个样本图像的空间序列训练出 一个模型,它的参数就是特征值;模版匹配法用相关系数做特征;而大部分神经网络方法则直接使用归一化后的灰度图像作为输入,网络的输出就是识别结果,没有专门的特征提取过程。 3. 识别:将带识别的图像或特征与人脸数据库里的特征进行匹配,进而将给 出的人脸图像与数据库中的某一个人脸图像及其名字,相关性对应起来。 人脸检测方法 基于知识的方法 a) 优点:规则简单。 视频捕获图像预处理人脸检测人脸特征提取人脸识别人脸数据库比对

b)缺点:难以将人类知识转化为明确的规则。 基于特征的方法 c)优点:可以依据面部器官的几何关系进行人脸检测。 d)缺点:光照、噪声和遮挡可能使得人脸的边界特征被弱化,从而使得算 法难以使用。 基于模版匹配的方法 e)优点:简单高效。 f)缺点:难以应对各种不同的成像条件;关于人脸模式和非人脸模式不存 在一个清晰的、明确的界限。 基于外观的方法 g)优点:通过大量的样本训练使得人脸识别的精确度高。 h)缺点:算法复杂。 基于肤色的系统 i)优点:不受人脸姿态变化的影响。 j)缺点:受光照等外在因素影响较大。

人脸识别方法 基于几何特征的识别方法 a)优点: i.符合人类识别人脸的机理,易于理解。 ii.对每幅图像只需存储一个特征矢量,存储量小。 iii.对光照变化不太敏感。 b)缺点: i.从图像中抽取稳定的几何特征比较困难,特别是特征受到遮挡时。 ii.对强烈的表情变化和姿态变化的鲁棒性较差。 iii.一般几何特征只描述了部件的基本形状与结构关系,忽略了局部细微特征,造成部分信息丢失,该方法比较适合于人脸图像粗分类。基于统计的识别方法:隐马尔可夫法 c)优点:人脸识别率高。 d)缺点:算法实现复杂。 基于连接机制的方法 e)优点: i.能够根据有代表性的样本自我学习,具有鲁棒性和自适应性。 ii.以并行的方式处理信息,配以硬件实现,可以显著地提高速度。 f)缺点:算法实现复杂。

人脸识别系统的原理与发展

人脸识别系统的原理与发展 一、引言 人脸识别系统以人脸识别技术为核心,是一项新兴的生物识别技术,是当今国际科技领域攻关的高精尖技术。它广泛采用区域特征分析算法,融合了计算机图像处理技术与生物统计学原理于一体,利用计算机图像处理技术从视频中提取人像特征点,利用生物统计学的原理进行分析建立数学模型,具有广阔的发展前景。2012年4月,铁路部门宣布车站安检区域将安装用于身份识别的高科技安检系统人脸识别系统;可以对人脸明暗侦测,自动调整动态曝光补偿,人脸追踪侦测,自动调整影像放大; 二、概述 人脸识别系统概述 广义的人脸识别实际包括构建人脸识别系统的一系列相关技术,包括人脸图像采集、人脸定位、人脸识别预处理、身份确认以及身份查找等;而狭义的人脸识别特指通过人脸进行身份确认或者身份查找的技术或系统。生物特征识别技术所研究的生物特征包括脸、指纹、手掌纹、虹膜、视网膜、声音(语音)、体形、个人习惯(例如敲击键盘的力度和频率、签字)等,相应的识别技术就有人脸识别、指纹识别、掌纹识别、虹膜识别、视网膜识别、语音识别(用语音识别可以进行身份识别,也可以进行语音内容的识别,只有前者属于生物特征识别技术)、体形识别、键盘敲击识别、签字识别等。 人脸识别系统功能模块 人脸捕获与跟踪功能:人脸捕获是指在一幅图像或视频流的一帧中检测出人像并将人像从背景中分离出来,并自动地将其保存。人像跟踪是指利用人像捕获技术,当指定的人像在摄像头拍摄的范围内移动时自动地对其进行跟踪。 人脸识别比对:人脸识别分核实式和搜索式二种比对模式。核实式是对指将捕获得到的人像或是指定的人像与数据库中已登记的某一对像作比对核实确定其是否为同一人。搜索式的比对是指,从数据库中已登记的所有人像中搜索查找是否有指定的人像存在。 人脸的建模与检索:可以将登记入库的人像数据进行建模提取人脸的特征,并将其生成人脸模板(人脸特征文件)保存到数据库中。在进行人脸搜索时(搜索式),将指定的人像进行建模,再将其与数据库中的所有人的模板相比对识别,最终将根据所比对的相似值列出最相似的人员列表。

人脸识别主要算法原理

人脸识别主要算法原理 主流的技术基本上可以归结为三类,即:基于几何特征的方法、基于模板的方法和基于模型的方法。 1. 基于几何特征的方法是最早、最传统的方法,通常需要和其他结合才能有比较好的效果; 2. 基于模板的方法可以分为基于相关匹配的方法、特征脸方法、线性判别分析方法、奇异值分解方法、神经网络方法、动态连接匹配方法等。 3. 基于模型的方法则有基于隐马尔柯夫模型,主动形状模型和主动外观模型的方法等。 1. 基于几何特征的方法 人脸由眼睛、鼻子、嘴巴、下巴等部件构成,正因为这些部件的形状、大小和结构上的各种差异才使得世界上每个人脸千差万别,因此对这些部件的形状和结构关系的几何描述,可以做为人脸识别的重要特征。几何特征最早是用于人脸侧面轮廓的描述与识别,首先根据侧面轮廓曲线确定若干显著点,并由这些显著点导出一组用于识别的特征度量如距离、角度等。Jia 等由正面灰度图中线附近的积分投影模拟侧面轮廓图是一种很有新意的方法。 采用几何特征进行正面人脸识别一般是通过提取人眼、口、鼻等重要特征点的位置和眼睛等重要器官的几何形状作为分类特征,但Roder对几何特征提取的精确性进行了实验性的研究,结果不容乐观。

可变形模板法可以视为几何特征方法的一种改进,其基本思想是:设计一个参数可调的器官模型(即可变形模板),定义一个能量函数,通过调整模型参数使能量函数最小化,此时的模型参数即做为该器官的几何特征。 这种方法思想很好,但是存在两个问题,一是能量函数中各种代价的加权系数只能由经验确定,难以推广,二是能量函数优化过程十分耗时,难以实际应用。基于参数的人脸表示可以实现对人脸显著特征的一个高效描述,但它需要大量的前处理和精细的参数选择。同时,采用一般几何特征只描述了部件的基本形状与结构关系,忽略了局部细微特征,造成部分信息的丢失,更适合于做粗分类,而且目前已有的特征点检测技术在精确率上还远不能满足要求,计算量也较大。 2. 局部特征分析方法(Local Face Analysis) 主元子空间的表示是紧凑的,特征维数大大降低,但它是非局部化的,其核函数的支集扩展在整个坐标空间中,同时它是非拓扑的,某个轴投影后临近的点与原图像空间中点的临近性没有任何关系,而局部性和拓扑性对模式分析和分割是理想的特性,似乎这更符合神经信息处理的机制,因此寻找具有这种特性的表达十分重要。基于这种考虑,Atick提出基于局部特征的人脸特征提取与识别方法。这种方法在实际应用取得了很好的效果,它构成了FaceIt人脸识别软件的基础。 3. 特征脸方法(Eigenface或PCA)

基于matlab的人脸识别算法(PCA)

3.基于matlab的人脸识别算法 3.1 问题描述 对于一幅图像可以看作一个由像素值组成的矩阵,也可以扩展开,看成一个矢量,如一幅 N*N 象素的图像可以视为长度为N2 的矢量,这样就认为这幅图像是位于N2 维空间中的一个点,这种图像的矢量表示就是原始的图像空间,但是这个空间仅是可以表示或者检测图像的许多个空间中的一个。不管子空间的具体形式如何,这种方法用于图像识别的基本思想都是一样的,首先选择一个合适的子空间,图像将被投影到这个子空间上,然后利用对图像的这种投影间的某种度量来确定图像间的相似度,最常见的就是各种距离度量。因此,本次试题采用PCA算法并利用GUI实现。 对同一个体进行多项观察时,必定涉及多个随机变量X1,X2,…,Xp,它们都是的相关性, 一时难以综合。这时就需要借助主成分分析来概括诸多信息的主要方面。我们希望有一个或几个较好的综合指标来概括信息,而且希望综合指标互相独立地各代表某一方面的性质。 任何一个度量指标的好坏除了可靠、真实之外,还必须能充分反映个体间的变异。如果有一项指标,不同个体的取值都大同小异,那么该指标不能用来区分不同的个体。由这一点来看,一项指标在个体间的变异越大越好。因此我们把“变异大”作为“好”的标准来寻求综合指标。3.1.1 主成分的一般定义 设有随机变量X1,X2,…,Xp,其样本均数记为,,…,,样本标准差记为S1,S2,…,Sp。首先作标准化变换,我们有如下的定义: (1) 若C1=a11x1+a12x2+ … +a1pxp,…,且使 Var(C1)最大,则称C1为第一主成分; (2) 若C2=a21x1+a22x2+…+a2pxp,…,(a21,a22,…,a2p)垂直于(a11,a12,…,a1p),且使Var(C2)最大,则称C2为第二主成分; (3) 类似地,可有第三、四、五…主成分,至多有p个。 3.1.2 主成分的性质 主成分C1,C2,…,Cp具有如下几个性质: (1) 主成分间互不相关,即对任意i和j,Ci 和Cj的相关系数 Corr(Ci,Cj)=0 i j (2) 组合系数(ai1,ai2,…,aip)构成的向量为单位向量, (3) 各主成分的方差是依次递减的,即 Var(C1)≥Var(C2)≥…≥Var(Cp)

基于eigenfaces的人脸识别算法实现大学论文

河北农业大学 本科毕业论文(设计) 题目:基于Eigenfaces的人脸识别算法实现 摘要 随着科技的快速发展,视频监控技术在我们生活中有着越来越丰富的应用。在这些视频监控领域迫切需要一种远距离,非配合状态下的快速身份识别,以求能够快速识别所需要的人员信息,提前智能预警。人脸识别无疑是最佳的选择。可以通过人脸检测从视频监控中快速提取人脸,并与人脸数据库对比从而快速识别身份。这项技术可以广泛应用于国防,社会安全,银行电子商务,行政办公,还有家庭安全防务等多领域。 本文按照完整人脸识别流程来分析基于PCA(Principal Component Analysis)的人脸识 别算法实现的性能。首先使用常用的人脸图像的获取方法获取人脸图像。本文为了更好的分析基于PCA人脸识别系统的性能选用了ORL人脸数据库。然后对人脸数据库的图像进行了简单的预处理。由于ORL人脸图像质量较好,所以本文中只使用灰度处理。接着使用PCA提取人脸特征,使用奇异值分解定理计算协方差矩阵的特征值和特征向量以及使用最近邻法分类器欧几里得距离来进行人脸判别分类。 关键词:人脸识别PCA算法奇异值分解定理欧几里得距离

ABSTRACT With the rapid development of technology, video surveillance technology has become increasingly diverse applications in our lives. In these video surveillance urgent need for a long-range, with rapid identification of non-state, in order to be able to quickly identify people the information they need, advance intelligence warning. Face recognition is undoubtedly the best choice. Face detection can quickly extract human faces from video surveillance, and contrast with the face database to quickly identify identity. This technology can be widely used in national defense, social security, bank e-commerce, administrative offices, as well as home security and defense and other areas. In accordance with the full recognition process to analyze the performance of PCA-based face recognition algorithm. The first to use the method of access to commonly used face images for face images. In order to better analysis is based on the performance of the PCA face recognition system selected ORL face database. Then the image face database for a simple pretreatment. Because ORL face image quality is better, so this article uses only gray scale processing. Then use the PCA for face feature extraction using singular value decomposition theorem to calculate the covariance matrix of the eigenvalues and eigenvectors, and use the Euclidean distance of the nearest neighbor classifier to the classification of human face discrimination. KEYWORDS: face recognition PCA algorithm SVD Euclidean distance

人脸识别主要算法原理

人脸识别主要算法原理 主流的人脸识别技术基本上可以归结为三类,即:基于几何特征的方法、基于模板的方法和基于模型的方法。 1. 基于几何特征的方法是最早、最传统的方法,通常需要和其他算法结合才能有比较好的效果; 2. 基于模板的方法可以分为基于相关匹配的方法、特征脸方法、线性判别分析方法、奇异值分解方法、神经网络方法、动态连接匹配方法等。 3. 基于模型的方法则有基于隐马尔柯夫模型,主动形状模型和主动外观模型的方法等。 1. 基于几何特征的方法 人脸由眼睛、鼻子、嘴巴、下巴等部件构成,正因为这些部件的形状、大小和结构上的各种差异才使得世界上每个人脸千差万别,因此对这些部件的形状和结构关系的几何描述,可以做为人脸识别的重要特征。几何特征最早是用于人脸侧面轮廓的描述与识别,首先根据侧面轮廓曲线确定若干显著点,并由这些显著点导出一组用于识别的特征度量如距离、角度等。Jia 等由正面灰度图中线附近的积分投影模拟侧 面轮廓图是一种很有新意的方法。 采用几何特征进行正面人脸识别一般是通过提取人眼、口、鼻等重要特征点的位置和眼睛等重要器官的几何形状作为分类特征,但Roder对几何特征提取的精确性进行了实验性的研究,结果不容乐观。

可变形模板法可以视为几何特征方法的一种改进,其基本思想是: 设计一个参数可调的器官模型(即可变形模板),定义一个能量函数,通过调整模型参数使能量函数最小化,此时的模型参数即做为该器官的几何特征。 这种方法思想很好,但是存在两个问题,一是能量函数中各种代价的加权系数只能由经验确定,难以推广,二是能量函数优化过程十分耗时,难以实际应用。基于参数的人脸表示可以实现对人脸显著特征的一个高效描述,但它需要大量的前处理和精细的参数选择。同时,采用一般几何特征只描述了部件的基本形状与结构关系,忽略了局部细微特征,造成部分信息的丢失,更适合于做粗分类,而且目前已有的特征点检测技术在精确率上还远不能满足要求,计算量也较大。 2. 局部特征分析方法(Local Face Analysis) 主元子空间的表示是紧凑的,特征维数大大降低,但它是非局部化的,其核函数的支集扩展在整个坐标空间中,同时它是非拓扑的,某个轴投影后临近的点与原图像空间中点的临近性没有任何关系,而局部性和拓扑性对模式分析和分割是理想的特性,似乎这更符合神经信息处理的机制,因此寻找具有这种特性的表达十分重要。基于这种考虑,Atick提出基于局部特征的人脸特征提取与识别方法。这种方法在实际应用取得了很好的效果,它构成了FaceIt人脸识别软件的 基础。 3. 特征脸方法(Eigenface或PCA)

人脸识别算法都有哪些

主流的人脸识别技术基本上可以归结为三类,即:基于几何特征的方法、基于模板的方法和基于模型的方法。 1. 基于几何特征的方法 人脸由眼睛、鼻子、嘴巴、下巴等部件构成,正因为这些部件的形状、大小和结构上的各种差异才使得世界上每个人脸千差万别,因此对这些部件的形状和结构关系的几何描述,可以做为人脸识别的重要特征。几何特征最早是用于人脸侧面轮廓的描述与识别,首先根据侧面轮廓曲线确定若干显著点,并由这些显著点导出一组用于识别的特征度量如距离、角度等。Jia 等由正面灰度图中线附近的积分投影模拟侧面轮廓图是一种很有新意的方法。 采用几何特征进行正面人脸识别一般是通过提取人眼、口、鼻等重要特征点的位置和眼睛等重要器官的几何形状作为分类特征,但Roder对几何特征提取的精确性进行了实验性的研究,结果不容乐观。 可变形模板法可以视为几何特征方法的一种改进,其基本思想是:设计一个参数可调的器官模型(即可变形模板),定义一个能量函数,通过调整模型参数使能量函数最小化,此时的模型参数即做为该器官的几何特征。 2. 局部特征分析方法(Local Face Analysis) 主元子空间的表示是紧凑的,特征维数大大降低,但它是非局部化的,其核函数的支集扩展在整个坐标空间中,同时它是非拓扑的,某个轴投影后临近的点与原图像空间中点的临

近性没有任何关系,而局部性和拓扑性对模式分析和分割是理想的特性,似乎这更符合神经信息处理的机制,因此寻找具有这种特性的表达十分重要。基于这种考虑,Atick提出基于局部特征的人脸特征提取与识别方法。这种方法在实际应用取得了很好的效果,它构成了FaceIt人脸识别软件的基础。 3. 特征脸方法(Eigenface或PCA) 特征脸方法是90年代初期由Turk和Pentland提出的目前最流行的算法之一,具有简单有效的特点, 也称为基于主成分分析(principal component analysis,简称PCA)的人脸识别方法。 特征子脸技术的基本思想是:从统计的观点,寻找人脸图像分布的基本元素,即人脸图像样本集协方差矩阵的特征向量,以此近似地表征人脸图像。这些特征向量称为特征脸(Eigenface)。 实际上,特征脸反映了隐含在人脸样本集合内部的信息和人脸的结构关系。将眼睛、面颊、下颌的样本集协方差矩阵的特征向量称为特征眼、特征颌和特征唇,统称特征子脸。特征子脸在相应的图像空间中生成子空间,称为子脸空间。计算出测试图像窗口在子脸空间的投影距离,若窗口图像满足阈值比较条件,则判断其为人脸。 基于特征分析的方法,也就是将人脸基准点的相对比率和其它描述人脸脸部特征的形状参数或类别参数等一起构成识别特征向量,这种基于整体脸的识别不仅保留了人脸部件之间的拓扑关系,而且也保留了各部件本身的信息,而基于部件的识别则是通过提取出局部轮廓信息及灰度信息来设计具体识别算法。

人脸识别几种解决方案的对比_人脸识别技术原理介绍

人脸识别几种解决方案的对比_人脸识别技术原理介绍 人脸识别概要人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行脸部的一系列相关技术,通常也叫做人像识别、面部识别。人脸识别特点非强制性:用户不需要专门配合人脸采集设备,几乎可以在无意识的状态下就可获取人脸图像,这样的取样方式没有强制性; 非接触性:用户不需要和设备直接接触就能获取人脸图像; 并发性:在实际应用场景下可以进行多个人脸的分拣、判断及识别; 除此之外,还符合视觉特性:以貌识人的特性,以及操作简单、结果直观、隐蔽性好等特点。 人脸识别技术原理分析人脸识别主要分为人脸检测(face detecTIon)、特征提取(feature extracTIon)和人脸识别(face recogniTIon)三个过程。 人脸检测:人脸检测是指从输入图像中检测并提取人脸图像,通常采用haar特征和Adaboost算法训练级联分类器对图像中的每一块进行分类。如果某一矩形区域通过了级联分类器,则被判别为人脸图像。 特征提取:特征提取是指通过一些数字来表征人脸信息,这些数字就是我们要提取的特征。常见的人脸特征分为两类,一类是几何特征,另一类是表征特征。几何特征是指眼睛、鼻子和嘴等面部特征之间的几何关系,如距离、面积和角度等。由于算法利用了一些直观的特征,计算量小。 不过,由于其所需的特征点不能精确选择,限制了它的应用范围。另外,当光照变化、人脸有外物遮挡、面部表情变化时,特征变化较大。所以说,这类算法只适合于人脸图像的粗略识别,无法在实际中应用。 表征特征利用人脸图像的灰度信息,通过一些算法提取全局或局部特征。其中比较常用的特征提取算法是LBP算法。LBP方法首先将图像分成若干区域,在每个区域的像素640x960邻域中用中心值作阈值化,将结果看成是二进制数。

基于PCA的人脸识别算法实现毕业论文

基于PCA的人脸识别算法实现毕业论文 目录 前言 (1) 第一章人脸识别系统概述 (2) 第一节人脸识别的研究概况 (2) 第二节人脸识别的发展趋势 (3) 一、多数据融合与方法综合 (4) 二、动态跟踪人脸识别系统 (4) 三、基于小波神经网络的人脸识别 (4) 四、三维人脸识别 (4) 五、适应各种复杂背景的人脸分割技术 (4) 六、全自动人脸识别技术 (4) 第三节人脸识别技术的主要难点 (4) 一、复杂条件下人脸的检测和关键点定位 (5) 二、光照问题 (5) 三、资态问题 (5) 四、表情问题 (5) 五、遮挡问题 (5) 第四节人脸识别流程 (5) 一、人脸图像采集 (6) 二、预处理 (6) 三、特征提取 (6) 第五节本章小结 (7) 第二章人脸图像的获取 (9) 第一节人脸图像获取 (9) 第二节人脸分割 (9) 第三节人脸数据库 (10) 第四节本章小结 (11) 第三章人脸图像的预处理 (12)

第一节人脸图像格式 (12) 一、JPEG格式 (12) 二、JPEG2000格式 (12) 三、BMP格式 (13) 四、GIF格式 (13) 五、PNG格式 (13) 第二节人脸图像常用预处理方法 (14) 一、灰度变化 (14) 二、二值化 (15) 三、直方图均衡 (15) 四、图像滤波 (15) 五、图像锐化 (17) 六、图像归一化 (18) 第三节本章小结 (19) 第四章人脸识别 (20) 第一节主成分分析基本理论 (20) 一、什么是主成分分析? (20) 二、例子 (20) 三、基变换 (21) 四、方差 (23) 五、PCA求解:特征根分解 (27) 六、PCA的假设 (28) 七、总结: (28) 八、在计算机视觉领域的应用 (30) 第二节基于PCA人脸识别算法的实现 (31) 一、创建数据库 (32) 二、计算特征脸 (32) 三、人脸识别 (34) 第三节本章小结 (36) 结论 (37) 致谢 (38) 参考文献 (39) 附录 (40) 一、英文原文 (40) 二、英文翻译 (53)

人脸识别技术的主要研究方法

1、绪论 人脸识别是通过分析脸部器官的唯一形状和位置来进行身份鉴别。人脸识别是一种重要的生物特征识别技术,应用非常广泛。与其它身份识别方法相比,人脸识别具有直接、友好和方便等特点,因而,人脸识别问题的研究不仅有重要的应用价值,而且在模式识别中具有重要的理论意义,目前人脸识别已成为当前模式识别和人工智能领域的研究热点。本章将简单介绍几种人脸识别技术的研究方法。 关键词:人脸识别 2、人脸识别技术的主要研究方法 目前在国内和国外研究人脸识别的方法有很多,常用的方法有:基于几何特征的人脸识别方法、基于代数特征的人脸识别方法、基于连接机制的人脸识别方法以及基于三维数据的人脸识别方法。人脸识别流程图如图2.1所示: 图2.1人脸识别流程图 3、基于几何特征的人脸识别方法 基于特征的方法是一种自下而上的人脸检测方法,由于人眼可以将人脸在不此研究人员认为有一个潜在的假设:人脸或人脸的部件可能具有在各种条件下都不会改变的特征或属性,如形状、肤色、纹理、边缘信息等。基于特征的方法的目标就是寻找上述这些不变特征,并利用这些特征来定位入脸。这类方法在特定的环境下非常有效且检测速度较高,对人脸姿态、表情、旋转都不敏感。但是由于人脸部件的提取通常都借助于边缘算子,因此,这类方法对图像质量要求较高,对光照和背景等有较高的要求,因为光照、噪音、阴影都极有可能破坏人脸部件的边缘,从而影响算法的有效性。 模板匹配算法首先需要人TN作标准模板(固定模板)或将模板先行参数化(可变模板),然后在检测人脸时,计算输入图像与模板之间的相关值,这个相关值通常都是独立计算脸部轮廓、眼睛、鼻子和嘴各自的匹配程度后得出的综合描述,最后再根据相关值和预先设定的阈值来确定图像中是否存在人脸。基于可变模板的人脸检测算法比固定模板算法检测效果要好很多,但是它仍不能有效地处理人脸尺度、姿态和形状等方面的变化。 基于外观形状的方法并不对输入图像进行复杂的预处理,也不需要人工的对人脸特征进行分析或是抽取模板,而是通过使用特定的方法(如主成分分析方法(PCA)、支持向量机(SVM)、神经网络方法(ANN)等)对大量的人脸和非人脸样本组成的训练集(一般为了保证训练得到的检测器精度,非人脸样本集的容量要为人脸样本集的两倍以上)进行学习,再将学习而成的模板或者说分类器用于人脸检测。因此,这也是j 种自下而上的方法。这种方法的优点是利用强大的机器学习算法快速稳定地实现了很好的检测结果,并且

人脸识别PCA算法matlab实现及详细步骤讲解

%FaceRec.m %PCA人脸识别修订版,识别率88% %calc xmean,sigma and its eigen decomposition allsamples=[];%所有训练图像 for i=1:40 for j=1:5 a=imread(strcat('e:\ORL\s',num2str(i),'\',num2str(j),'.jpg')); %imshow(a); b=a(1:112*92);%b是行矢量1×N,其中N=10304,提取顺序是先列后行,即从上 到下,从左到右 b=double(b); allsamples=[allsamples;b];%allsamples是一个M*N矩阵,allsamples中每一行数 据代表一张图片,其中M=200 end end samplemean=mean(allsamples);%平均图片,1×N for i=1:200xmean(i,:)=allsamples(i,:)-samplemean;%xmean是一个M×N矩阵,xmean 每一行保存的数据是“每个图片数据-平均图片” end; %获取特征值及特征向量 sigma=xmean*xmean';%M*M阶矩阵 [v d]=eig(sigma); d1=diag(d); %按特征值大小以降序排列 dsort=flipud(d1); vsort=fliplr(v); %以下选择90%的能量 dsum=sum(dsort); dsum_extract=0; p=0; while(dsum_extract/dsum<0.9) p=p+1; dsum_extract=sum(dsort(1:p)); end i=1; %(训练阶段)计算特征脸形成的坐标系 base=xmean'*vsort(:,1:p)*diag(dsort(1:p).^(-1/2)); %base是N×p阶矩阵,除以dsort(i)^(1/2)是对人脸图像的标准化(使其方差为1) %详见《基于PCA的人脸识别算法研究》p31 %xmean'*vsort(:,i)是小矩阵的特征向量向大矩阵特征向量转换的过程 %while(i<=p&&dsort(i)>0) %base(:,i)=dsort(i)^(-1/2)*xmean'*vsort(:,i);%base是N×p阶矩阵,除以dsort(i)^(1/2)是对人脸图像的标准化(使其方差为1) %详见《基于PCA的人脸识别算法研究》p31 %i=i+1;%xmean'*vsort(:,i)是小矩阵的特征向量向大矩阵特 征向量转换的过程 %end %以下两行add by gongxun将训练样本对坐标系上进行投影,得到一个M*p阶矩阵allcoor allcoor=allsamples*base;%allcoor里面是每张训练人脸图片在M*p子空间中的一个点,即在子空间中的组合系数, accu=0;%下面的人脸识别过程中就是利用这些组合系数来进行识别

人脸识别主要算法原理

人脸识别主要算法原理

人脸识别主要算法原理 主流的人脸识别技术基本上可以归结为三类,即:基于几何特征的方法、基于模板的方法和基于模型的方法。 1. 基于几何特征的方法是最早、最传统的方法,通常需要和其他算法结合才能有比较好的效果; 2. 基于模板的方法可以分为基于相关匹配的方法、特征脸方法、线性判别分析方法、奇异值分解方法、神经网络方法、动态连接匹配方法等。 3. 基于模型的方法则有基于隐马尔柯夫模型,主动形状模型和主动外观模型的方法等。 1. 基于几何特征的方法 人脸由眼睛、鼻子、嘴巴、下巴等部件构成,正因为这些部件的形状、大小和结构上的各种差异才使得世界上每个人脸千差万别,因此对这些部件的形状和结构关系的几何描述,可以做为人脸识别的重要特征。几何特征最早是用于人脸侧面轮廓的描述与识别,首先根据侧面轮廓曲线确定若干显著点,并由这些显著点导出一组用于识别的特征度量如距离、角度等。Jia 等由正面灰度图中线附近的积分投影模拟侧面轮廓图是一种很有新意的方法。 采用几何特征进行正面人脸识别一般是通过提取人眼、口、鼻等重要特征点的位置和眼睛等重要器官的几何形状作为分类特征,但

Roder对几何特征提取的精确性进行了实验性的研究,结果不容乐观。 可变形模板法可以视为几何特征方法的一种改进,其基本思想是:设计一个参数可调的器官模型(即可变形模板),定义一个能量函数,通过调整模型参数使能量函数最小化,此时的模型参数即做为该器官的几何特征。 这种方法思想很好,但是存在两个问题,一是能量函数中各种代价的加权系数只能由经验确定,难以推广,二是能量函数优化过程十分耗时,难以实际应用。基于参数的人脸表示可以实现对人脸显著特征的一个高效描述,但它需要大量的前处理和精细的参数选择。同时,采用一般几何特征只描述了部件的基本形状与结构关系,忽略了局部细微特征,造成部分信息的丢失,更适合于做粗分类,而且目前已有的特征点检测技术在精确率上还远不能满足要求,计算量也较大。 2. 局部特征分析方法(Local Face Analysis) 主元子空间的表示是紧凑的,特征维数大大降低,但它是非局部化的,其核函数的支集扩展在整个坐标空间中,同时它是非拓扑的,某个轴投影后临近的点与原图像空间中点的临近性没有任何关系,而局部性和拓扑性对模式分析和分割是理想的特性,似乎这更符合神经信息处理的机制,因此寻找具有这种特性的表达十分重要。基于这种考虑,Atick提出基于局部特征的人脸特征提取与识别方法。这种方

人脸识别算法

基于人工神经网络的人脸识别系统 童志军090739 第一部分:引言 在计算机控制上可靠的个人身份识别的需求引发了用生物特征替代密码和身份证进行识别的趋势。由于密码会被泄露给不合法的用户并且身份证会被骗子盗取所以密码和身份证会被轻易的破坏,生物特征识别的出现能够很好的解决传统分类方法的问题。生物特征包括人的虹膜、视网膜、面部轮廓、指纹、签名力度变化和语音等特征,这些特征可以用于人物识别。由于生物特征不能被轻易的盗取和分享,所以生物特征识别相比于传统安全措施有很大的优势,人脸识别系统积极稳固的特点使它在人物识别中脱颖而出。 人脸识别系统包括人脸核实和人脸识别两个阶段。在核实阶段,系统根据人物特征的先验知识进行核实,这就是说,系统要判断当前待识别人物是否为骗子。在人脸识别阶段,先验特征并不知道,系统只能根据最大似然准则进行识别。这篇文章的最初目的是对使用人工神经网络来人脸检测和识别的性能进行评价,文章的剩余部分就是这样组织的:第二部分描述了系统的过程图和人脸识别系统的各个模块;第三部分详尽说明了预处理、特征提取和目标系统的分类的方法;第四部分展示了和讨论了实验结果,第五部分得出结论。 第二部分:系统综述 正如图1所示,推荐的人脸识别算法包含入学和识别/分类两个阶段,它包含图像获取,人脸检测、学习、识别和核实。 图1 人脸识别系统结构图 A 入学阶段 使用网络照相机获得图片并储存在数据库中,然后对图片进行检测和训练。训练时,使用几何学和光学标准化方法对脸部图片进行预处理,采用几种特征提取的方法提取脸部图片特

征,然后把这些特征数据存在数据库中作为用户标识。 B 识别/实验证明阶段 再次获得用户脸部生理数据,此系统使用数据辨别用户或者分类用户标识。虽然身份鉴定需要把获得的生物特征信息与数据库中所有用户的数据进行模板匹配,身份核实仅需要把生物特征信息与主要特性进行模板匹配,所以身份识别与实验证明在内在复杂性上截然不同。识别阶段包含图像获取、面部检测、面部识别几个模块。 1)图像获取/人脸检测模块 人脸检测通常检测和提取与人脸特征相关的恰当信息,图像需要几何和尺寸校正以便可以识别。在这个模块中需要去除与脸部不相关的背景或场景。这个系统不仅能够实时识别脸部而且在不同的光照、不同的肤色、有胡须和刘海的情况下也能很好的工作。 图像检测中的图像获取模块是为了寻找和提取只含有脸部的部分,这个系统是基于使用Adaboost算法的长方形特征,系统输出的是包含面部特征的长方形和包含面部特征提取的图像。 2)人脸识别/核实模块 人脸识别模块包含预处理、特征提取、子模块分类,系统输入是来源于照相机和数据库的面部图像,首先把它变为几何和光照上标准化的形式,在特征提取阶段,用矢量特征代表图像,识别的分类结果由匹配的的程度决定。 第三部分:方法论 A 预处理 预处理是为了减少和消除由于光照引起的面部的失真,它通过标准化和增强面部图像来提高系统识别率。由于系统的稳定性取决于预处理的好坏,所以预处理很关键。通过明确的标准化过程,系统增强了抵抗尺寸、姿势、面部表情和光照的能力。光学标准化包括去除几何标准图像的平均值,以标准化值缩放像素比例,估计整个扭曲的图像。光学标准化技术包括直方图均衡和同态滤波。 1)直方图均衡 直方图均衡是最通用的直方图规格化和灰度转换方法,它的目的是为了处理后的图像在所有的灰度级均匀分布。为了增强图像质量和提高人脸识别的性能通常将它用于太亮或太暗的图像,它改变了图像灰度相对范围,使一些重要特征变得显而易见。 直方图均衡的步骤如下: 1.对一个N*M的图像,创建两个长度为G的矩阵H和T,并将它们初始化为0 2.形成图像直方图:扫描每一个像素值,并把对应每一个像素值的数目记在H矩阵中 H[p]=H[p]+1 3.累加直方图H,并保存在H中 H[0]=H[0] H[p]= H[p-1]+ H[p] For p=1 to G-1 step 1 4. G-1 T[p]=H[p] MN ,重新扫描图像并且输出图像灰度级像素q,其中q=T[P]. 2) 同态滤波

人脸识别系统技术原理有哪些

要是说到人脸识别系统,大部分人多少都知道一点,但是相比于专业人员,了解就显得很浅显了。接下来,我们就技术原理方面的知识点为例,来为大家普及一下相关信息吧。 人脸识别技术包含三个部分: (1)人脸检测 面貌检测是指在动态的场景与复杂的背景中判断是否存在面像,并分离出这种面像。一般有下列几种方法: ①参考模板法首先设计一个或数个标准人脸的模板,然后计算测试采集的样品与标准模板之间的匹配程度,并通过阈值来判断是否存在人脸; ②人脸规则法由于人脸具有一定的结构分布特征,所谓人脸规则的方法即提取这些特征生成相应的规则以判断测试样品是否包含人脸; ③样品学习法这种方法即采用模式识别中人工神经网络的方法,即通过对面像样品集和非面像样品集的学习产生分类器; ④肤色模型法这种方法是依据面貌肤色在色彩空间中分布相对集中的规律来进行检测; ⑤特征子脸法这种方法是将所有面像集合视为一个面像子空间,并基于检

测样品与其在子孔间的投影之间的距离判断是否存在面像。 值得提出的是,上述5种方法在实际检测系统中也可综合采用。 (2)人脸跟踪 面貌跟踪是指对被检测到的面貌进行动态目标跟踪。具体采用基于模型的方法或基于运动与模型相结合的方法。此外,利用肤色模型跟踪也不失为一种简单而有效的手段。 (3)人脸比对 面貌比对是对被检测到的面貌像进行身份确认或在面像库中进行目标搜索。这实际上就是说,将采样到的面像与库存的面像依次进行比对,并找出最佳的匹配对象。所以,面像的描述决定了面像识别的具体方法与性能。目前主要采用特征向量与面纹模板两种描述方法: ①特征向量法该方法是先确定眼虹膜、鼻翼、嘴角等面像五官轮廓的大小、位置、距离等属性,然后再计算出它们的几何特征量,而这些特征量形成一描述该面像的特征向量。 ②面纹模板法该方法是在库中存贮若干标准面像模板或面像器官模板,在进行比对时,将采样面像所有象素与库中所有模板采用归一化相关量度量进行匹配。此外,还有采用模式识别的自相关网络或特征与模板相结合的方法。

人脸识别技术的主要研究方法

人脸识别技术的主要研 究方法 The manuscript was revised on the evening of 2021

1、绪论 人脸识别是通过分析脸部器官的唯一形状和位置来进行身份鉴别。人脸识别是一种重要的生物特征识别技术,应用非常广泛。与其它身份识别方法相比,人脸识别具有直接、友好和方便等特点,因而,人脸识别问题的研究不仅有重要的应用价值,而且在模式识别中具有重要的理论意义,目前人脸识别已成为当前模式识别和人工智能领域的研究热点。本章将简单介绍几种人脸识别技术的研究方法。 关键词:人脸识别 2、人脸识别技术的主要研究方法 目前在国内和国外研究人脸识别的方法有很多,常用的方法有:基于几何特征的人脸识别方法、基于代数特征的人脸识别方法、基于连接机制的人脸识别方法以及基于三维数据的人脸识别方法。人脸识别流程图如图2.1所示: 图2.1人脸识别流程图 3、基于几何特征的人脸识别方法 基于特征的方法是一种自下而上的人脸检测方法,由于人眼可以将人脸在不此研究人员认为有一个潜在的假设:人脸或人脸的部件可能具有在各种条件下都不会改变的特征或属性,如形状、肤色、纹理、边缘信息等。基于特征的方法的目标就是寻找上述这些不变特征,并利用这些特征来定位入脸。这类方法在特定的环境下非常有效且检测速度较高,对人脸姿态、表情、旋转都不敏感。但是由于人脸部件的提取通常都借助于边缘算子,因此,这类方法对图像质量要求较高,对光照和背景等有较高的要求,因为光照、噪音、阴影都极有可能破坏人脸部件的边缘,从而影响算法的有效性。 模板匹配算法首先需要人TN作标准模板(固定模板)或将模板先行参数化(可变模板),然后在检测人脸时,计算输入图像与模板之间的相关值,这个相关值通常都是独立计算脸部轮廓、眼睛、鼻子和嘴各自的匹配程度后得出的综合描述,最后再根据相关值和预先设定的阈值来确定图像中是否存在人脸。基于可变模板的人脸检测算法比固定模板算法检测效果要好很多,但是它仍不能有效地处理人脸尺度、姿态和形状等方面的变化。 基于外观形状的方法并不对输入图像进行复杂的预处理,也不需要人工的对人脸特征进行分析或是抽取模板,而是通过使用特定的方法(如主成分分析方法(PCA)、支持向量机(SVM)、神经网络方法(ANN)等)对大量的人脸和非人脸样本组成的训练集(一般为了保证训练得到的检测器精度,非人脸样本集的容量要为人脸样本集的两倍以上)进行学习,再将学习而成的模板或者说分类器用于人脸检测。因此,这也是j种自下而上的方法。这种方法的优点是利用强大的机器学习算法快速稳定地实现了很好的检测结果,并且该方法在复杂背景下,多姿态的人脸图像中也能得到有效的检测结果。但是这种方法通常需要遍历整个图片才能得到检测结果,并且在训练过程中需要大量的人脸与非人脸样本,以及较长的训练时间。近几年来,针对该方法的人脸检测研究相对比较活跃。 4、基于代数特征的人脸识别方法

人脸识别技术的几个主要研究方向

人脸识别技术的几个主要研究方向 1 引言 计算机人脸识别是指基于已知的人脸样本库,利用计算机分析图像和模式识别技术从静态或动态场景中,识别或验证一个或多个人脸。通常识别处理后可得到的基本信息包括人脸的位置、尺度和姿态信息。利用特征提取技术还可进一步抽取出更多的生物特征(如:种族、性别、年龄..) 。计算机人脸识别是目前一个非常活跃的研究课题,它可以广泛应用于保安系统、罪犯识别以及身份证明等重要场合。虽然人类对于人脸的识别能力很强,能够记住并辨识上千个不同的人脸,可是对于计算机则困难多了,其表现在:人脸表情丰富;人脸随年龄的增长而变化;发型、胡须、眼镜等装饰对人脸造成的影响;人脸所成图像受光照、成像角度以及成像距离等影响。 计算机人脸识别技术是近20年发展起来的,90年代更成为科研热点,仅从1990 年到1999年之间,EI 可检索到的相关文献多达数千篇,关于人脸识别的综述也屡屡可见[1] 。自动人脸识别系统包括两个主要技术环节首先是人脸检测和定位,然后是对人脸进行特征提取和识别(匹配)。本文着重介绍人脸识别技术的各类方法,通过对比指出各类方法的优缺点及今后的发展方向。 2 人脸检测和定位 人脸检测和定位即对于给定的一幅图像检测图像中是否有人脸,若有则确定其在图像中的位置,并从背景中分割出来。这是个极富挑战性的问题,因为人脸是非刚体,且人脸在图像中的大小和方向以及人的肤色和纹理等方面有很大的可变形。人脸检测问题主要有四种:(1)对于给定的一幅人脸图像,将其中的人脸定位并给出其位置;(2)在一幅混乱的单色场景图中检测出所有的人脸;(3)在彩色图像中检测(定位)所有人脸;(4)在某一视频序列中,检测和定位出所有人脸。文献[2]对人脸检测进行了较为详细的综述,指出常用的人脸检测方法有四种:(1)基于知识的方法;(2)基于人脸固定特征的方法;(3)基于模板匹配的方法;(4)基于外貌的方法(Appearance-based methods),在基于模板匹配的方法中所采用的是预先确定的模板,而在基于外貌的方法中其模板的选择是通过对一系列图像的学习而确定的。一般来说,基于外貌的方法依靠统计和学习技术来找出人脸和非人脸图像的相关特征。在该方法中有特征脸法、基于聚类的方法、神经网络方法和支持向量机的方法。CMU库是常用的人脸检测库,主要的算法评定指标为错误接受率(FAR)和错误拒绝率(ARR)。 3 人脸特征提取和识别 目前大部分研究主要是针对二维正面人脸图像,也有基于三维人脸模型的方法,还有一种所谓的混合系统的身份鉴定系统。 3.1 二维正面人脸识别 在对人脸图像进行特征提取和分类之前一般需要做几何归一化和灰度归一化。几何归一化是指根据人脸定位结果将图像中人脸变换到同一位置和同样大

相关主题
文本预览
相关文档 最新文档