LBP人脸检测算法

2016-03-17 03:23逄晖
移动信息 2016年4期
关键词:二进制直方图纹理

逄晖



LBP人脸检测算法

逄晖

北京工商大学计算机与信息工程学院,北京 100048

纹理特征提取方法一直是模式识别和研究的热点。在近50年的研究中,许多研究人员提出了多种纹理特征提取方法,诸如Grayscale共生矩阵[2]、小波理论[3]、分形理论[4]、马尔可夫[5]等,突出的问题。这些方法都过大的增加计算复杂性,对于背景噪音或照度不均匀纹理Image的情况下,都基于Local Binary Patterns算和非线性流形学习算法等距映射的Cube World Model Editor组合Human Face Recognition算法往往不能够提出这些治疗方法的效果。运营商采用的Human Face Image,然后非线性流形学习算法等距映射的CUBE WORLD MODEL EDITOR高维纹理特征数据降维的Human Face Recognition系统纹理特征提取给脸部数据的几何形状的精髓。最后,数据维数的减少作为分类输入面部分类。实验结果表明,该算法可以面对Image分类好,尤其是小样本下一个。

算法;检测;LOCAL;BINARY;PATTERN;特征

T.奥贾拉等人于1996年提出了局部二Value模式算法(Local Binary Patterns,LOCAL BINARY PATTERN)[6],用于纹理特征的描述。局部二元模式是用来描述操作的局部纹理图像的特征;它具有显著优点灰度不变性和旋转不变性。局部二元模式算法简单,容易理解,计算复杂度小,对不同光照强度敏感,可以描述图像的局部纹理特征,这引起研究者的关注。在过去的十年,国家研究学者对局部二元模式的算法进行了深入研究,并提出了各种局部二进制模式改进算法,诸如:FLOCAL BINARY PATTERN[7]、LTP[8]、CBP[9]、LOCAL BINARY PATTERNV[10]、TPLOCAL BINARY PATTERN[11]、FPLOCAL BINARY PATTERN[11]、MS-LOCAL BINARY PATTERN[13]、CLOCAL BINARY PATTERN[12]等,并将其广泛应用于Image分割、Human Face Recognition、Image检索等领域[15-18]。其中,相对于局部纹理特征提取和纹理更加全面,完整,并取得了良好的效果描述局部二元模式算法等局部二元模式算法的改进。此外,所提取的特征是图像的局部纹理特征。基本的:LOCAL BINARY PATTERN Operator是一种Grayscale范围内的纹理度量,它是从自定义纹理,其使用固定窗思想结构分析,再利用统计整体特征提取的方法而得。局部二元模式算法通常被定义为一个3×3窗口,以窗口中心点的Grayscale Value为阈Value对窗口内其他Pixels作二Value化处理,然后根据Pixels不同位置进行加权求和得到该窗口的LOCAL BINARY PATTERNValue。LOCAL BINARY PATTERN Operator刚提出来的时候,基本的概念就是Image纹理中某个指定的中心Pixel(gc)及其周围紧邻的八个Pixel(g0-g7)所组成的局部Area,如图1所示。

图1 一个标准的LBP算子区域

基本方法里所用的是经过处理后所得到的Grayscale Image,每一个Pixel的Grayscale Value是0~255中的一个Value。当指定了某一个Pixel作为中心Pixel之后(此时暂不考虑Image边界上的Pixel),其周围的八个Pixel的Grayscale Value即可随之确定下来。我们以中心Pixel(go)的Grayscale Value作为阈Value(threshold value),将周边相邻的八个Pixel的Grayscale Value与阈Value进行比较,如果某相邻Pixel的Grayscale Value大于或等于该阈Value,则令该Pixel的赋Value为1;如果相邻Pixel的Grayscale Value小于该阈Value,则令该Pixel的赋Value为0。这样,在顺次将周围Pixel的Grayscale Value与阈Value进行比较之后,你可以得到一个局部二元模式(局部二元模式)。接着,从第一像素的左上角(去)开始时,右值2“(N =0,1......7)的周围给每个像素的转弯,和像素值后的顺时针顺序门槛富二进制值相乘。最后,当每一个Pixel都依次进行了上述运算之后,将所有八个Pixel运算所得的结果相加,即为该中心Pixel的LOCAL BINARY PATTERN Value,现举例说明LOCAL BINARY PATTERN。

1 LOCAL BINARY PATTERN特征的描述

原始的LOCAL BINARY PATTERN Operator定义为在3×3的窗口内,以窗口中心Pixels为阈Value,将相邻的八个Pixels的Grayscale Value与其进行比较,若周围PixelsValue大于中心Pixels Value,则该Pixel的位置被标记为1,否则为0。因此,八个点3×3附近通过比较可以产生8位二进制数(通常为一个十进制数,是局部二进制模式代码,共256种),以获得像素局部二元模式值的窗口的中心,并使用此值区域,以反映纹理信息。如图2所示。

图2   

LOCAL BINARY PATTERN的改进版本:

原来的局部二元模式提出后,研究人员不断提出它的各种改进和优化。

1.1 圆形LOCAL BINARY PATTERN Operator

基本局部二元模式运营的最大的缺点在于它仅覆盖固定半径,这显然不能满足不同频率要求的规模和结构中的一个小区域。为了适应不同的尺度纹理特征,以及实现灰度和旋转不变的要求等,为鳌古拉局部二元模式操作得到了改善,3×3邻域扩展到任何附近,并具有圆形附近正方形附近取代,局部二元模式操作改进,允许附近的圆半径R有任意数量的像素的。由此得到局部二元模式操作,如圆形区域R含有P的采样点的半径。

图3   

1.2 LOCAL BINARY PATTERN旋转不变模式

从LOCAL BINARY PATTERN的定义可以看出,LOCAL BINARY PATTERN Operator是Grayscale不变的,但却不是旋转不变的。Image的旋转就会得到不同的LOCAL BINARY PATTERN Value。

Maenpaa,又将局部二元模式操作扩展提出了局部二元模式操作旋转不变性,即不断旋转的圆形居委会给予一系列初始定义局部二进制模式的价值,以最小者为准,因为相邻的价值局部二元模式值域。图4给出了求取旋转不变的LOCAL BINARY PATTERN的过程示意图,图中Operator下方的数字表示该Operator对应的LOCAL BINARY PATTERN Value,图中所示的八种LOCAL BINARY PATTERN模式,转不变加工后,造成局部二元模式值旋转不变性为15。这是数字对应的旋转不变局部二元模式方式的八局部二元模式为00001111。

图4 旋转不变的LBP示意

1.3 LOCAL BINARY PATTERN等价模式

一个LOCAL BINARY PATTERN Operator可以产生不同的二进制模式,局部二元模式算子含P采样点会产生P2模式区域R圆弧。显然,与在附近的采样点的增加,二进制模式的类型是急剧增加。例如:5×5个居委会20个采样点,220=1.048,576种二进制模式。无论对于提取或纹理贴图这么多双价值模型识别,分类和访问信息是不利的。同时,太多的那种表达模式质地是不利的。例如,当局部二元模式运营商纹理分类和人脸识别,常采用统计直方图局部二元模式方式来表达信息的图像,更多的物种将会使数据模式是太大,太稀疏直方图。因此,需要对原有的局部二元模式模式维数降低,从而减少数据量,使得壳体能的图像信息最好代表。为了解决过度二进制模式的问题,提高了统计,奥亚拉提出要采取“等效模型”(统一模式)来局部二元模式操作模式的类型降维。奥亚拉所以,在实际的图像,绝大多数局部二元模式从过渡1-0或0-1只有两次。因此,奥亚拉将“等效模型”的定义是:从循环从1-0对应的二进制数的局部二元模式的两倍过渡0-1或对应二进制模式局部二元模式被称为一个等价类。如00000000(0过渡),00000111(只包含一种过渡从0到1),10001111(首先由一个跳转到0,然后从0跳到1次,共两个转变的)是等效的模式类。比其他类型的类属性的等效模型以外的模式,称为混合模式的类别,如10010111(共四个跳跃)(这是我个人的理解,不知道对不对)。通过这样的改进,二进制模式的类型大大降低,而不会丢失任何信息。图案从原来减少物种2P P(P-1)+ 2种,其中P表示邻域集合的采样点的数量。为八个采样点,二进制模式从原来256种58种减少,这使得特征矢量的尺寸更小,并且可以减小高频噪声引起的影响,3×3邻域。

1.4 ε-LOCAL BINARY PATTERN算法

在传统的局部二元模式的基础上,研究人员提出ε-局部二进制模式,通过调整参数ε,可寻求目标更合适的分类特征子空间。在本文中,ε-局部二元模式来此子空间,不能直接 特征数据分类识别的子空间,但可使用非线性流形学习算法等距降维特征数据。由于ε-局部二元模式特征数据中提取的高维,非线性流形学习算法等距特征数据降维,可以减少一些最终获得相关性较低的数据本质上是几何特征数据。最后,支持向量机的选择(支持向量机,SVM)进行分类识别数据降维,因为SVM[4]在解决小样本,非线性数据的问题中有许多独特的优点。对比实验表明,该方法取得了良好的效果。LOCAL BINARY PATTERN首先计算Image中每个Pixels与其局部邻域点在Grayscale上的二Value关系;然后,对二Value关系按一定规则加权形成局部二Value模式;最后,采用多Area直方图序列作为Image的二Value模式。最基本的LOCAL BINARY PATTERN Operator[6]一般采用一个固定大小为3×3的矩形块,那么Image中对应3×3窗口的局部纹理T的分布可假设认为是局部area内Pixels Grayscale的联合分布密度,以Image中某个Pixels为中心点gc,对周围的八个Pixel g0-g7,纹理T的分布定义如下:显然,当ε=0时,ε-LOCAL BINARY PATTERN等价于LOCAL BINARY PATTERN。而且由定义可以看出:ε-LOCAL BINARY PATTERN在参数ε Value较小的情况下可以描述出更多的微小和细节纹理信息,而在参数εValue较大的情况下则更多地描述了轮廓信息,比如Image中的边缘等。

图5示出了ε对视觉纹理特征的效果。对于上面的分类识别问题的特点ε-本地二进制模式,总结了使用ε-本地二进制模式的优点是:通过二元模式改造后对应的ε-Local不同ε值采样,它将被映射到不同的子空间,并根据不同的分类识别培训目标确定最合适的子空间,使得分类识别越好;此外,相对于更不敏感,光线的变化,从而解决光照变化这个人脸识别的难题传统的局部二元模式操作方面ε-local二进制模式。

图5 不同ε值的ε-LBP描述出来的图像

考虑到LOCAL BINARY PATTERN纹理模型过于依赖中心点Pixels的Grayscale Value,本文提出一种CLOCAL BINARY PATTERN进行Human Face Recognition的方法。局部area由中心Pixels和局部差分符号数Value变换(10cal diffe.Rellcesign-magnitude transform,LDSMT)两部分进行表示。中心Pixels进行LOCAL BINARY PATTERN编码,记为CLOCAL BINARY PATTERN_C;LDSMT分成符号和数Value两个独忘的部分进行编码。分别记为CLOCAL BINARY PATTERN_S和CLOCAL BINARY PATTERN_M。首先对Human FaceImage进行一系列的预处理;首先通过CLOCAL BINARY PATTERN Operator对Human FaceImage进行特征提取,将CLOCAL BINARY PATTERN_C、CLOCAL BINARY PATTERN_s和CLOCAL BINARY PATTERN_M分别形成的直方图融合成最终的CLOCAL BINARY PATTERN直方图,进行直方图相似性度量,最后通过最近邻分类器进行Recognition。如图6所示。

图6 CLBP人脸识别算法

2 LOCAL BINARY PATTERN特征用于检测的原理

显而易见的是,上述提取的LOCAL BINARY PATTERN Operator在每个Pixel都可以得到一个LOCAL BINARY PATTERN“编码”,那么,对一幅Image(记录的是每个Pixel的Grayscale Value)提取其原始的LOCAL BINARY PATTERN Operator之后,得到的原始LOCAL BINARY PATTERN特征依然是“一幅图片”(记录的是每个Pixel的LOCAL BINARY PATTERN Value)。

(a)原始图像      (b)LBP图谱

LOCAL BINARY PATTERN的应用中,如纹理分类、Human Face analysis等,一般都不将LOCAL BINARY PATTERN Atlas作为Feature vector用于分类Recognition,而是采用LOCAL BINARY PATTERN特征谱的统计直方图作为Feature vector用于分类Recognition。

因为,从上面的analysis我们可以看出,这个“特征”跟位置信息是紧密相关的。这种“功能”,和判别分析的两个图像直接提取,这将是因为“的位置不对齐”,并产生较大的误差。后来,研究人员发现,一个图象可以被分成若干子小区,每个子像素中的每个小区被提取局部二元模式特征,然后建立在每个子小区统计直方图局部二元模式特征。在这种方式中,每个子小区中,直方图可以用来描述直方图组合物的数目的整个图象;例如:一个100×100像素尺寸的图像,划分为10×10= 100的子小区(通过各种方式来划分的小区)中,每个子小区的大小为10×10像素;在每个子小区的每个像素,提取局部二元模式特征,然后建立一个统计直方图;所以,这张照片有10×10子区域,并有直方图10×10,这直方图的10×10占据优势,我们可以描述这张图片。之后,我们用各种相似性度量功能,可以确定两个图像之间的相似性。

3 对LOCAL BINARY PATTERN Feature vector进行提取的步骤

(1)首先将检测窗口划分为16×16的小area。

(2)每个Pixels的面积小,八个像素与其相邻的Grayscale Value进行比较,如果周围像素的Value是比中心Pixels Value时,该Pixels的位置被标记为1,否则为0。因此,八个点3×3附近通过比较可以产生八个二进制数,以获得窗口的中心Pixels的局部二元模式Value。

(3)然后计算直方图,即,每个编号(假设为十进制局部二进制模式值)出现的频率的每个小区域,然后直方图被标准化。

(4)最后将得到的每个小area的统计直方图进行连接成为一个Feature vector,也就是整幅图的LOCAL BINARY PATTERN纹理Feature vector,然后便可利用SVM或者其他机器学习算法进行分类了。

[1]黄非非.基于LOCAL BINARY PATTERN的Human Face Recognition研究[D].重庆:重庆大学,2009.

[2]张文超,山世光,张洪明,等.基于局部 Gabor变化直方图序列的Human Face描述与Recognition[J].软件学报,2006,17(12):2548-2517.

[3]Turk M,Pentland A.Eigenfaces for recognition[J].Journal of Cognitive Neuroscience,1991,3(1):71-86.

[4]Zhao G,Pietikainen M.Dynamic texture recognition using local [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2007,29(6):915-928.

[5]李莉莉,李一民,蔡英.KPCA和SVM在Human Face Recognition中的应用[J].山西电子技术,2006(5):44-46.

[6]周颖颖,周振宇,孙宁,等.基于改进 LOCAL BINARY PATTERN特征的白细胞Recognition[J].生物医学工程研究,2005,24(4):242-246.

[7]孙宁,冀贞海,邹采荣,等.基于局部二元模式Operator的Human Face性别分类方法[J].华中科技大学学报:自然科学版,2007,35(1):177-181.

[8]刘丽,匡纲要.Image纹理特征提取方法综述[J].中国图象图形学报,2009(4):622-635.

[9]付蓉,石美红,陈惠娟.自适应局部二Value模式算法及其在织物疵点检测中的应用[J].纺织高校基础科学学报,2010,23(1):99-104.

TP391.41

A

1009-6434(2016)04-0081-03

猜你喜欢
二进制直方图纹理
符合差分隐私的流数据统计直方图发布
用二进制解一道高中数学联赛数论题
基于FPGA的直方图均衡图像增强算法设计及实现
有用的二进制
基于BM3D的复杂纹理区域图像去噪
有趣的进度
用直方图控制画面影调
使用纹理叠加添加艺术画特效
TEXTURE ON TEXTURE质地上的纹理
中考频数分布直方图题型展示