崔鵬,張汝波
(1.哈爾濱工程大學計算機科學與技術學院,黑龍江 哈爾濱150001;2.哈爾濱理工大學 計算機科學與技術學院,黑龍江哈爾濱150080)
主成分分析(principal component analysis,PCA)與線性判別分析(linear discriminant analysis, LDA)是基于子空間特征提取的2種重要方法,它們成功地用于人臉識別[1-4].然而PCA與LDA作用于圖像時,產(chǎn)生的向量空間通常有非常高的維數(shù),使得PCA與LDA難于執(zhí)行[5-8].此外,由于PCA屬于無監(jiān)督學習,自動進行聚類,但其一旦偏離分類方向,會產(chǎn)生非常大的錯誤;LDA屬于監(jiān)督學習,需要人工對未標記數(shù)據(jù)進行大量的標注,需要耗費大量的人力和物力.半監(jiān)督學習的訓練樣本由少量的有標記樣本以及大量的無標記樣本組成.在學習過程中,根據(jù)少量有標記樣本選擇初始的約束條件,進行聚類或分類[9-12].離散余弦變換(discrete cosine transform,DCT)的一些特殊屬性使它成為人臉識別的一種有效變換,它能夠降低數(shù)據(jù)維數(shù)以避免奇異性,并減少PCA以及LDA的計算代價[13-16].本文提出了一種約束聚類最優(yōu)DCT(constrained clustering-based optimal discrete cosine transform,CCODCT)系數(shù)選擇法,將每個DCT系數(shù)與判別系數(shù)(discriminant coefficient,DC)聯(lián)系起來,通過選取較大DC值對應的DCT系數(shù),得到最優(yōu)DCT系數(shù)陣,實現(xiàn)數(shù)據(jù)降維.
本文提出的半監(jiān)督CCODCT系數(shù)選擇法的人臉識別的過程如下:
1)將圖像數(shù)據(jù)庫隨機劃分為訓練集與測試集;
2)計算所有訓練圖像的DCT系數(shù);
3)通過預掩模選擇圖像的DCT系數(shù),選取中頻有效信息;
4)根據(jù)有標記的訓練樣本種子集,計算初始聚類中心,采用半監(jiān)督約束聚類對圖像進行聚類;
5)根據(jù)獲得的分類,計算判別系數(shù),得到判別系數(shù)(DC)陣;
6)對DC陣的列向量按照降序排列,分別選取前n(n為想要的特征數(shù))個最大值,并標記它們相應的位置;
7)選取每個列向量前n個最大值對應的DCT系數(shù),得到n×P的最優(yōu)DCT系數(shù)陣,其中n?K;
8)對測試集用分類器計算識別率,文中采用的是最小歐式測度分類器.
DCT特征提取由2個階段組成.在第1階段,應用DCT到整個圖像以獲取DCT系數(shù).然后,在第2階段選擇一些系數(shù)構建特征向量.DCT系數(shù)陣的維數(shù)與輸入圖像的維數(shù)相同.實際上,DCT自身并不能降低數(shù)據(jù)維數(shù),它將大多數(shù)信號信息壓縮在一個比較小的百分比中.一張M×N圖像對應一個二維矩陣,其DCT系數(shù)陣可進行如下計算:
其中:
式中:A(m,n)是圖像陣在位置(m,n)處的灰度值,D(p,q)是DCT系數(shù)陣在位置(p,q)處的值.因而對整張圖像DCT變換,可以獲得相同維數(shù)的系數(shù)陣.
通常DCT系數(shù)分成3個頻帶,即低頻、中頻及高頻.低頻與光照條件相關,高頻表示噪聲及小的變化,中頻系數(shù)包含了有用信息及建立圖像的基本結構.圖1說明了一張典型的人臉圖像和它的DCT系數(shù)的頻率分布.圖1(b)為第1階段采用DCT變換后,DCT系數(shù)的頻帶分布.圖1(c)為帶狀(ZM)掩模,通過帶狀掩模與原始圖像相乘得到第2階段選擇的DCT系數(shù),包括中頻有效信息.可看出中頻系數(shù)在人臉識別中是更適合的候選.
圖1 典型圖像DCT系數(shù)頻率分布以及ZM掩模Fig.1 DCT frequency distribution of a typical image and ZM masking
圖2為80×80圖像,對應DCT陣在不同ZM掩模提取的圖像.通過選擇適當?shù)难谀#梢赃_到降低數(shù)據(jù)維數(shù)的目的.
圖2 80×80圖像在不同ZM掩模下提取的圖像Fig.2 80×80 image with different ZM maskings
在前面對圖像的DCT陣進行了預掩模,達到了維數(shù)的初步約簡,接下來要對圖像進行分類.本文采用半監(jiān)督約束K-Means進行聚類.
1)首先計算各Sh的均值作為各個類別的初始聚類中心:
由式(2)得到k個初始類別中心.
2)數(shù)據(jù)集的K-Means聚類產(chǎn)生X的k個劃分,以使K-Means目標函數(shù)是局部最小的(極小值).根據(jù)K-Means產(chǎn)生X的k個劃分,每個劃分為一個類集分配每個數(shù)據(jù)點到聚類(h*為類別標簽):
3)根據(jù)得到k個劃分,可計算t+1次迭代的聚類中心:
4)設定約束K-Means的收斂條件:
式中:ε為一個接近0的正數(shù),重復執(zhí)行2)~4)直至算法收斂.經(jīng)過半監(jiān)督約束聚類,對每個數(shù)據(jù)點進行了分類,類別標簽為h.
傳統(tǒng)系數(shù)選擇法如Zigzag,ZM掩模以及對它們的修改選擇DCT系數(shù)陣的固定元素,雖然它們很簡單,但并不一定對所有數(shù)據(jù)庫都高效.本文提出一種判別系數(shù)(DC)選擇法,能夠根據(jù)判別系數(shù)大小選擇DCT系數(shù),從而提高正確識別率.目的是要找到數(shù)據(jù)庫的這些判別系數(shù),并統(tǒng)計分析數(shù)據(jù)庫中與每個DCT系數(shù)相關聯(lián)的所有圖像,稱此方法為基于判別系數(shù)最優(yōu) DCT(optimal discrete cosine transform,ODCT)系數(shù)選擇法.判別系數(shù)的特征是有最小的類內(nèi)變化,最大的類間變化.ODCT與PCA、LDA等不同,它利用類間與類內(nèi)方差.PCA與LDA試圖獲得變換域中能最大化特征判別的變換,而ODCT搜索原始域中最好的判別特征.DC選擇法與預掩模組合使其對有限數(shù)量的訓練樣本健壯.ODCT沒有基于LDA法中常見的奇異性問題.ODCT可作為一種獨立的降低特征維數(shù)算法與其他方法組合,ODCT-PCA、ODCTLDA是PCA、LDA的2種改進方法.
定義DC值依賴于2種屬性:類間的大變化與類內(nèi)的小變化,可通過將類間方差與類內(nèi)方差來估計DC值,其中圖像類別為半監(jiān)督聚類確定的類別.在此方式下,希望能估計判別系數(shù)的較大值.大小為M×N圖像的DCT矩陣如下:
訓練集的每個DCT系數(shù)aij(i=1,2,…,M,j= 1,2,…,N)的DC值,可進行如下估計.
1)將每張DCT圖像由2D進行1D向量化,得到訓練圖像庫的(M×N)×P維DCT陣T:
2)計算類內(nèi)方差和:
3)計算所有訓練樣本的方差:
4)計算位置(i,j)判別系數(shù):
式中:d(i,j)表示判別系數(shù)陣M在位置(i,j)處的DC值.
5)判別系數(shù)陣M標準化:
式中:min(M(∶))表示M陣中的最小值,max(M(∶))表示M陣中的最大值.DC的高值意味著高判別能力,它們的值被標準化為0~1.
由于DC系數(shù)選擇法是一種統(tǒng)計分析,訓練樣本數(shù)影響其有效性.當每類有足夠的樣本數(shù)可用時,DC是一種優(yōu)化的DCT系數(shù)選擇法.
在前面提到DCT域被分為3個頻帶.在這些頻帶中,中頻適合正確的識別.圖3為在不同數(shù)據(jù)庫中取前60個最大DC值對應的掩模.可以看出高DC值主要分布在低頻以及中頻部分,高頻部分很少,這與DCT系數(shù)的分布相同.根據(jù)3個頻帶的屬性,限定DC的搜索區(qū)域,避免由少量訓練樣本產(chǎn)生不合理結果.限定搜索區(qū)域會降低計算代價,在搜索區(qū)域取值1,其余位置取0,得到一個基于DC值的掩模,將掩模與DCT陣相乘,就可得到基于DC值的最優(yōu)DCT系數(shù)陣.圖3為ORL數(shù)據(jù)庫圖像以及在不同DCT掩模下的重構圖像.
圖4為ORL數(shù)據(jù)庫圖像以及在不同DCT掩模下的重構圖像.
圖3 不同數(shù)據(jù)庫上選取前60個最大DC值對應的掩模Fig.3 Masking on different database with top 60 largest DC
圖4 ORL數(shù)據(jù)庫圖像及在不同DCT掩模下重構的圖像Fig.4 Images in ORL and reconstructed image with different DCT masking
圖5為Yale數(shù)據(jù)庫圖像以及在不同DCT掩模下的重構圖像.
圖5 Yale數(shù)據(jù)庫圖像在不同DCT掩模下重構的圖像Fig.5 Images in Yale and reconstructed image with different DCT masking
為評估提出的方法,將提出的方法在人臉數(shù)據(jù)庫上進行了仿真.實驗用MATLAB7.0編程;在所有的仿真中采用了交叉校驗的方法,將數(shù)據(jù)庫分為訓練集與測試集,在50組可能的訓練與測試集下進行了仿真,結果為50輪運行結果的平均.為表示訓練樣本數(shù)量對不同方法的影響,每種方法使用不同訓練圖像數(shù)量執(zhí)行仿真.
4.1.1 ORL人臉數(shù)據(jù)庫
ORL數(shù)據(jù)庫包含400張人臉圖像,40個人每人10張圖像.每人圖像在表情、細節(jié)、姿勢與尺寸等方面有變化.選取每人m(1≤m≤9)張圖像,共40m張圖像作為訓練集圖像;其余的40(10-m)張圖像作為測試集.
4.1.2 Yale人臉數(shù)據(jù)庫
Yale人臉數(shù)據(jù)庫包含有重要變化的圖像,包括對象戴眼鏡、光照以及表情變化.數(shù)據(jù)庫包括165張正面人臉圖像,15個人每人11張圖像.選取每人n (1≤n≤10)張圖像,共15n張圖像作為訓練集圖像;其余的15(11-n)張圖像作為測試集.
4.2.1 不同系數(shù)選擇法的比較
傳統(tǒng)方法系數(shù)選擇法如Zigzag、ZM非常流行,比較了Zigzag以及ZM與ODCT法組合的6種方法識別率.ODCT為最優(yōu)DCT系數(shù)選擇法;ZM-ODCT先對DCT圖像先進行 ZM預掩模,然后再進行ODCT系數(shù)選擇;CCODCT為基于約束聚類最優(yōu)DCT系數(shù)選擇;ZM-CCODCT先對圖像DCT陣進行ZM預掩模,然后進行CCODCT系數(shù)選擇;Zigzag-CCODCT先進行Zigzag預掩模,然后進行CCODCT系數(shù)選擇.
圖6為6種不同方法在ORL與Yale人臉數(shù)據(jù)庫上的識別率.由圖6(a)可以看到Zigzag選擇法的識別率最低.ODCT與ZM-ODCT的識別率較高,最高識別率達到95.5%.CCODCT與ZM-CCODCT在DCT數(shù)較少時,識別率稍低于ODCT與ZM-ODCT,但當DCT數(shù)達到60以上時,獲得了接近ODCT的識別率.Zigzag-CCODCT表現(xiàn)不夠穩(wěn)定,在DCT數(shù)為20時達到最高識別率,而后隨著DCT數(shù)增加,識別率反而下降.由圖6(b)可以看出CCODCT的識別率優(yōu)于其他方法,而采用Zigzag法以及Zigzag-CCODCT的識別率相對較低,這是由于Zigzag沒有考慮到圖像的先驗信息;ZM-ODCT、ODCT以及ZMCCODCT也獲得較好的識別率.
圖6 6種不同系數(shù)選擇法在ORL和Yale上的識別率Fig.6 Recognition rate of 6 different methods on ORL and Yale
4.2.2 系數(shù)選擇法與PCA組合
傳統(tǒng)的PCA是無監(jiān)督學習,將系數(shù)選擇法與其組合,得到4種組合方法,避免了小樣本問題以及求解特征值的奇異性問題.ODCT-PCA先應用ODCT選擇最優(yōu)DCT系數(shù),然后采用PCA投影;ZM-ODCTPCA先應用ZM預掩模選擇DCT陣,并求最優(yōu)DCT系數(shù),然后應用PCA投影;Zigzag-PCA先應用Zigzag進行DCT系數(shù)選擇,然后應用PCA投影;ZMCCODCT-PCA先應用ZM預掩模選擇DCT系數(shù),再應用CCODCT選擇最優(yōu)DCT系數(shù),最后應用PCA投影.
圖7為ODCT與PCA組合法在ORL與Yale人臉數(shù)據(jù)庫上的識別率.由圖7(a)中所示,Zigzag-PCA的識別率最差;ODCT的識別率最高,其在DCT數(shù)為5時,識別率就達到了82%,在20處就達到了峰值95%;ODCT-PCA、ZM-ODCT-PCA以及ZM-CCODCTPCA也獲得了較高的識別率.在圖7(b)中考慮了光照問題,Zigzag法放棄特征向量的前3個系數(shù),ZM預掩模放棄DCT陣的前2行2列.在5種方法中,ZM-ODCT-PCA的識別率要優(yōu)于其他方法;ZMCCODCT-PCA、ODCT-PCA以及ODCT的識別率接近最優(yōu);Zigzag-PCA的識別率最差,在DCT數(shù)5時僅為68%,峰值達到90%.
圖7 ODCT與PCA組合法在ORL和Yale上的識別率Fig.7 Recognition rate of ODCT and PCA combination methods on ORL and Yale
4.2.3 系數(shù)選擇法與LDA組合
傳統(tǒng)的LDA是監(jiān)督學習,需要有所有訓練樣本的類別標記信息.對LDA組合法在人臉數(shù)據(jù)庫上進行了測試.ODCT-LDA先應用ODCT系數(shù)選擇,然后進行LDA投影;ZM-ODCT-LDA先應用ZM預掩模,接著利用ODCT系數(shù)選擇,然后LDA投影;ZMCCODCT-LDA先應用 ZM 預掩模,接著應用CCODCT,然后進行LDA投影;Zigzag-LDA先應用Zigzag進行系數(shù)選擇,然后進行LDA投影.
圖8為ODCT與LDA組合法在ORL與Yale人臉數(shù)據(jù)庫上的識別率.如圖8(a)所示,ODCT在DCT數(shù)為5時,獲得82%的識別率高于其他4種LDA法,當DCT數(shù)為20時,識別率達到95%,并隨著DCT數(shù)的增加,識別率穩(wěn)定在95%左右.ODCTLDA、ZM-ODCT-LDA以及Zigzag-LDA的初始識別率在70%左右,隨著DCT數(shù)增加它們的識別率最高達到99%左右,當DCT數(shù)高100時,識別率開始下降,在DCT數(shù)30~105范圍內(nèi),它們的識別率最高.ZM-CCODCT的初始階段識別率為72%,當DCT數(shù)為50時,識別率達到95%,并隨著DCT數(shù)增加,其識別率與ODCT接近在95%左右.由圖8(b)可以看到ZM-CCODCT-LDA在開始階段獲得了較高的識別率,而ODCT隨著DCT數(shù)增加,其識別率要優(yōu)于其他方法;Zigzag-LDA的識別率最差,其最高達到85%左右;ZM-ODCT-LDA與ODCT-LDA的識別率最高達到88%左右.
圖8 ODCT與LDA組合法在ORL和Yale上的識別率Fig.8 Recognition rate of ODCT and LDA combination methods on ORL and Yale
表1 不同方法在ORL數(shù)據(jù)庫上的識別率Table 1 Recognition rate of different methods on ORL%
表2 不同方法在Yale數(shù)據(jù)庫上的識別率Table 2 Recognition rate of different methods on Yale%
表1和表2為不同方法在ORL以及Yale數(shù)據(jù)庫上的識別率比較.可以看到Zigzag與Zigzag-PCA作為無監(jiān)督學習方法,它們的識別率最低;ODCT、ZM-ODCT、ODCT-LDA、ZM-ODCT-LDA以及Zigzag-LDA為監(jiān)督學習方法,它們的識別率最高; CCODCT、 ZM-CCODCT、 Zigzag-CCODCT、 ZMCCODCT-PCA以及ZM-CCODCT-LDA為半監(jiān)督學習方法.在算法的執(zhí)行時間上,雖然半監(jiān)督學習方法的執(zhí)行時間稍高于監(jiān)督學習方法,但它們用較小的代價,獲得了與監(jiān)督學習方法近似的識別率.
本文提出了一種CCODCT系數(shù)選擇法.其優(yōu)點在于:
1)利用少量的標記信息作為約束集,減少了人工標記樣本的工作量.
2)對DCT陣進行預掩模,達到降低計算代價的目的.
3)通過計算判別系數(shù),選擇少量的最優(yōu)DCT系數(shù),進一步降低數(shù)據(jù)維數(shù);由于無需計算特征值問題,有效地解決了小樣本問題.
4)ODCT是數(shù)據(jù)依賴的,其性能優(yōu)于傳統(tǒng)系數(shù)選擇法,能根據(jù)數(shù)據(jù)庫的不同,選擇不同的掩模.
5)將此系數(shù)選擇法與PCA和LDA進行組合,可用于解決任何特征提取問題.
由于CCODCT需要聚類,因而標記信息的選取、時間復雜度以及對不同數(shù)據(jù)庫的魯棒性問題都影響著算法的性能.今后的工作是降低算法的時間復雜度,并在有光照、表情以及姿態(tài)變化的大型人臉數(shù)據(jù)庫上對其進行評估,以使算法具有更好的魯棒性.
[1]KIRBY M,SIROVICH L.Application of the Karhunen-Loeve procedure for the characterization of human faces[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1990,12(1):103-108.
[2]牛星,席志紅,金子正秀.基于改進AAM的人臉特征點提?。跩].應用科技,2011,38(4):35-38.
NIU Xing,XI Zhihong,MASAHIDE Kaneko.Face feature points extraction based on refined AAM[J].Applied Science and Technology,2011,38(4):35-38.
[3]TURK M,PENTLAND A.Eigenfaces for recognition[J].International Journal of Cognitive Neuroscience,1991,3 (1):71-86.
[4]蘇景龍,林天威,王科俊,等.視頻流下的人臉檢測與跟蹤[J].應用科技,2011,38(3):5-11.
SU Jinglong,LIN Tianwei,WANG Keijun,et al.Face detection and tracking in video[J].Applied Science and Technology,2011,38(3):5-11.
[5]ZHUANG X S,DAI D Q.Improved discriminant analysis for high-dimensional data and its application to face recognition[J].Pattern Recognition,2007,40(5):1570-1578.
[6]GAO Q X,ZHANG L,ZHANG D.Face recognition using FLDA with single training image per-person[J].Applied Mathematics and Computation,2008,205(12):726-734.
[7]ZHAO H T,YUEN P C.Incremental linear discriminant analysis for face recognition[J].IEEE Trans Syst Man Cybern B,2008,38(1):210-211.
[8]趙穎.基于改進的核判別分析的人臉識別算法研究[J].哈爾濱理工大學學報,2010,15(3):19-22.
ZHAO Ying.Research on the improved kernel discriminant analysis based on face recognition algorithm[J].Journal of Harbin University of Science and Technology,2010,15 (3):19-22.
[9]BASU S.Semi-supervised clustering:probabilistic models,algorithms and experiments[D].Austin:The University of Texas,2005:32-33.
[10]ZHU X J.Semi-supervised learning literature survey[R].Madison:University of Wisconsin-Madison,2005:28-31.
[11]ZHANG S W,LEI Y K,WU Y H.Semi-supervised locally discriminant projection for classification and recognition[J].Knowledge-Based Systems,2011,24(2):341-346.
[12]CAI D,HE X F,HAN J W.Semi-supervised discriminant analysis[C]//IEEE International Conference on Computer Vision.Rio de Janeiro,Brazil,2007:205-211.
[13]DABBAGHCHIAN S,GHAEMMAGHAMI M,AGHAGOLZADEH A.Feature extraction using discrete cosine transform and discrimination power analysis with a face recognition technology[J].Pattern Recognition,2010,43:1431-1440.
[14]CHEN W,ER M J,WU S.PCA and LDA in DCT domain[J].Pattern Recognition Letters,2005,26:2474-2482.
[15]JIANG J,F(xiàn)ENG G.Robustness analysis on facial image description in DCT domain[J].Electronics Letters,2007,43(24):356-357.
[16]CHOI J,CHUNG Y S,KIM K H.Face recognition using energy probability in DCT domain[C]//IEEE International Conference on Multimedia and Expo.Toronto,2006: 1549-1552.