劉金浩,孫冬梅
(北京交通大學(xué)計(jì)算機(jī)與信息技術(shù)學(xué)院,北京100044)
隨著移動(dòng)信息時(shí)代已經(jīng)到來(lái),智能手機(jī)等移動(dòng)通信設(shè)備已經(jīng)在日常生活中普及,在移動(dòng)設(shè)備介入人們生活的方方面面的同時(shí),也加大了移動(dòng)設(shè)備被不法分子攻破時(shí)所帶來(lái)的風(fēng)險(xiǎn)。而基于生物特征識(shí)別的認(rèn)證方式,例如掌紋,指紋和虹膜,因其具有唯一性,持久性和不可忘記性,克服了傳統(tǒng)認(rèn)證方式的缺陷,成為一項(xiàng)極具競(jìng)爭(zhēng)力的技術(shù)。其中,掌紋區(qū)域較大因而不需要很高的圖像分辨率,使用一般移動(dòng)設(shè)備上所配備的攝像頭便可滿足需求,使得掌紋識(shí)別在移動(dòng)平臺(tái)上的應(yīng)用具有先天優(yōu)勢(shì)。
在之前的掌紋識(shí)別系統(tǒng)中,掌紋ROI定位方法[1-7]一般分為3步:
1)對(duì)圖像進(jìn)行二值化處理;
2)提取手掌區(qū)域邊緣;
3)利用形態(tài)學(xué)方法定位指間谷點(diǎn)并根據(jù)指間谷點(diǎn)定位感興趣區(qū)。
但在使用移動(dòng)設(shè)備采集掌紋圖像時(shí)由于光照以及背景復(fù)雜,很難比較穩(wěn)定的提取到準(zhǔn)確的手掌區(qū)域邊緣并影響最終掌紋ROI的定位精度。另一方面,由于移動(dòng)設(shè)備具有存儲(chǔ)空間稀缺,計(jì)算能力相對(duì)較弱的特點(diǎn),一些已經(jīng)在人臉分割領(lǐng)域十分成熟但需要較大運(yùn)算能力的算法,例如AAM[8]、CLM[9]等在移動(dòng)設(shè)備上運(yùn)算速度較慢,不適宜移植到移動(dòng)平臺(tái)上。
因此,文中提出一種基于移動(dòng)設(shè)備的掌紋ROI定位算法,該算法利用Haar隨機(jī)森林回歸投票[10]算法學(xué)習(xí)谷點(diǎn)附近紋理特征,并綜合考慮谷點(diǎn)附近形態(tài)學(xué)特征,從而定位指間谷點(diǎn)并獲得最終的掌紋ROI區(qū)域,在移動(dòng)設(shè)備上保持較快運(yùn)算速度的同時(shí)獲得提高定位的準(zhǔn)確度。
Haar隨機(jī)森林回歸投票算法[10]類似于Hough-Tree[11]算法,與其不同的是其對(duì)圖像類別不做區(qū)分,且葉子節(jié)點(diǎn)只存儲(chǔ)平均偏移而不是訓(xùn)練樣本,從而節(jié)省了存儲(chǔ)空間。該算法分為訓(xùn)練和檢測(cè)兩部分。
在特征點(diǎn)附近[-dmax,dmax]范圍內(nèi)隨機(jī)選取一系列坐標(biāo)點(diǎn)z,以z為中心提取大小為m×m的樣本圖像,計(jì)算其haar特征f(z),并記錄點(diǎn)z與特征點(diǎn)的偏移量d。使用{fi,di}來(lái)訓(xùn)練隨機(jī)森林,學(xué)習(xí)偏移量d與特征f之間的關(guān)系。
在樹的訓(xùn)練過(guò)程中,使用
達(dá)到最小時(shí)的特征fi以及閾值t作為節(jié)點(diǎn)分割的標(biāo)準(zhǔn),其中G({di})=Nlog|Σ|,Σ為di構(gòu)成向量的協(xié)方差矩陣。當(dāng)樹到達(dá)最大深度或節(jié)點(diǎn)中樣本數(shù)小于預(yù)先設(shè)定的最小樣本數(shù)時(shí)停止分割,葉子節(jié)點(diǎn)的權(quán)重即為1/σxσy,(x,y)為落在該葉子節(jié)點(diǎn)上樣本的偏移量。
在檢測(cè)時(shí),對(duì)于樣本圖像每隔間隔n選取大小為m×m的樣本,記錄其中心位置fj并計(jì)算其特征fj,將特征fj輸入隨機(jī)森林得到多組該樣本中心點(diǎn)與特征點(diǎn)的偏移量和與之對(duì)應(yīng)的權(quán)重的預(yù)測(cè)值{dj,wj},對(duì)于每個(gè)預(yù)測(cè)值,均在pj+dj的位置權(quán)重增加wj,匯總所有樣本的投票結(jié)果最終獲得關(guān)于特征點(diǎn)的響應(yīng)圖像。
算法流程圖如圖1所示,首先不斷的檢測(cè)當(dāng)前獲取到的圖像中是否有手掌出現(xiàn)且在適當(dāng)?shù)奈恢?,在檢測(cè)到手掌出現(xiàn)且在適當(dāng)位置的同時(shí)劃分出谷點(diǎn)ROI,隨后分別計(jì)算指間中線以及谷點(diǎn)ROI對(duì)于谷點(diǎn)位置的響應(yīng)圖像,結(jié)合指間中線與響應(yīng)圖像確定谷點(diǎn),最后根據(jù)谷點(diǎn)位置定位掌紋ROI區(qū)域。
圖1 算法流程圖
如圖2所示,參照J(rèn)S Kim等人[12]的手掌檢測(cè)方法,在攝像頭采集的實(shí)時(shí)圖像上疊加手形輪廓線,用于引導(dǎo)用戶將五指張開并放在適當(dāng)?shù)奈恢?。在輪廓線上食指與中指間谷點(diǎn)和無(wú)名指與小拇指間谷點(diǎn)的上下各存在兩條檢測(cè)線,我們?cè)赮cbcr空間上利用膚色檢測(cè)[13]將檢測(cè)線上的像素點(diǎn)分為膚色點(diǎn)和非膚色點(diǎn)。當(dāng)兩組檢測(cè)線均同時(shí)滿足以下兩個(gè)條件時(shí)判斷手掌已經(jīng)處于合適的位置,并將上下兩條檢測(cè)線內(nèi)的正方形區(qū)域作為谷點(diǎn)ROI以便后續(xù)定位谷點(diǎn)位置。
1)頂部檢測(cè)線左側(cè)和右側(cè)像素點(diǎn)為膚色點(diǎn),中間部分像素點(diǎn)為非膚色點(diǎn);
2)底部檢測(cè)線上像素點(diǎn)全部為膚色點(diǎn)。
圖2 手掌檢測(cè)示意圖
從谷點(diǎn)ROI頂部邊界線開始,從左向右計(jì)算所有像素點(diǎn)與膚色空間中心點(diǎn)的歐式距離,根據(jù)閾值將像素點(diǎn)分為膚色點(diǎn)和非膚色點(diǎn),如圖3(b)所示,兩個(gè)手指的邊界點(diǎn)即為膚色狀態(tài)發(fā)生轉(zhuǎn)換的位置。如圖3(a)所示,沿谷點(diǎn)ROI頂部向下每隔3像素掃描一次,重復(fù)20次或者檢測(cè)線上全部為膚色點(diǎn)時(shí)停止,得到所有邊界點(diǎn)對(duì)并計(jì)算中點(diǎn),最后擬合所有中點(diǎn)得到指間中線。
首先訓(xùn)練Haar隨機(jī)森林。我們將訓(xùn)練集所有圖像根據(jù)人工標(biāo)定的谷點(diǎn)位置進(jìn)行歸一化,對(duì)于每幅訓(xùn)練圖像在谷點(diǎn)附近35像素距離內(nèi)隨機(jī)取15個(gè)大小為20×20像素的正方形圖像用于隨機(jī)森林的訓(xùn)練,兩個(gè)谷點(diǎn)各訓(xùn)練一組具有10棵樹的Haar隨機(jī)森林,其中每棵樹的最大深度為200,每個(gè)節(jié)點(diǎn)中樣本數(shù)小于5時(shí)停止生長(zhǎng)。
圖3 指間中線定位示意圖
對(duì)待檢測(cè)圖像進(jìn)行縮放和旋轉(zhuǎn),使得兩個(gè)谷點(diǎn)ROI的中心與訓(xùn)練集中兩個(gè)谷點(diǎn)的平均位置對(duì)齊,在谷點(diǎn)ROI內(nèi)每隔3像素取大小為20×20像素的正方形圖像,計(jì)算其Haar特征后輸入與該谷點(diǎn)對(duì)應(yīng)的隨機(jī)森林。對(duì)于每個(gè)正方形樣本,Haar隨機(jī)森林均會(huì)輸出一組投票,其中每張投票包括一個(gè)預(yù)測(cè)為谷點(diǎn)的位置p′以及該位置的權(quán)重w′,權(quán)重w′越大則該投票的可信度越高,匯總所有投票結(jié)果便得到谷點(diǎn)ROI區(qū)域內(nèi)對(duì)于谷點(diǎn)位置的響應(yīng)圖像。如圖4所示,響應(yīng)圖像中某一位置的權(quán)重越大,該位置為谷點(diǎn)的可能性就越高。
圖4 響應(yīng)圖像示意圖
為了綜合考慮谷點(diǎn)附近的形態(tài)學(xué)特征與紋理特征,將指間中線疊加在關(guān)于谷點(diǎn)的響應(yīng)圖像上,選取指間中線沿線上權(quán)重最大的五個(gè)位置計(jì)算它們的平均值作為最終的谷點(diǎn)預(yù)測(cè)位置。如圖5所示,根據(jù)Zhang[14]的掌紋ROI劃分方法,兩谷點(diǎn)距離為L(zhǎng),在距離兩谷點(diǎn)連線的位置取邊長(zhǎng)為L(zhǎng)的正方形區(qū)域作為掌紋ROI。
圖5 ROI定位示意圖
由于以往的掌紋數(shù)據(jù)庫(kù)大多均為使用固定設(shè)備在封閉環(huán)境下采集,為了驗(yàn)證本文所提出的算法的有效性,我們?cè)谑覂?nèi)和室外兩種環(huán)境環(huán)境下使用移動(dòng)設(shè)備采集50人份的掌紋作為掌紋數(shù)據(jù)庫(kù),并在該掌紋庫(kù)上與JS Kim等人[12]提出的移動(dòng)平臺(tái)下的掌紋ROI定位算法進(jìn)行比對(duì)實(shí)驗(yàn)。
我們?cè)贏ndroid系統(tǒng)上實(shí)現(xiàn)掌紋圖像采集系統(tǒng),該系統(tǒng)包括本文算法中的手掌檢測(cè)功能,在檢測(cè)到手掌后將手掌圖像和檢測(cè)線位置一并記錄,以便在后續(xù)實(shí)驗(yàn)中使用。我們使用該系統(tǒng)在多種Android手機(jī)上共采集50人的左手手掌圖像,其中每人在不同場(chǎng)景下采集12張手掌圖像,包括6張?jiān)谑覂?nèi)拍攝,6張?jiān)谑彝馀臄z。隨后采用人工標(biāo)定的方式對(duì)這600張掌紋圖像的谷點(diǎn)進(jìn)行標(biāo)定。
我們將采集的圖像分為訓(xùn)練集和測(cè)試集,訓(xùn)練集包括30人共360張掌紋圖像,其余20人共240張掌紋圖像作為測(cè)試集。在訓(xùn)練時(shí)為了使模型獲得一定尺度和角度的適應(yīng)性,我們?cè)?.9到1.1之間每隔0.05選取α作為縮放因子對(duì)原始圖像進(jìn)行縮放,在正負(fù)12度內(nèi)每隔6度選取β作為旋轉(zhuǎn)因子對(duì)原始圖像進(jìn)行旋轉(zhuǎn),因此我們一共有9 000個(gè)手掌圖像樣本作為訓(xùn)練集,6 000個(gè)手掌圖像樣本作為測(cè)試集。對(duì)于每個(gè)谷點(diǎn),訓(xùn)練一個(gè)由10棵樹組成的隨機(jī)森林,每棵樹的訓(xùn)練集為從9 000個(gè)樣本中隨機(jī)抽取的3 000個(gè)樣本。對(duì)于每幅訓(xùn)練樣本在以谷點(diǎn)為中心偏移在[-35,35]像素的區(qū)域內(nèi),隨機(jī)選取15個(gè)大小為20×20像素的圖像計(jì)算其Haar特征和到谷點(diǎn)的偏移(從全部Haar特征[15]中隨機(jī)選擇700個(gè)參與訓(xùn)練)。根據(jù)文獻(xiàn)[16]的結(jié)論,在樹的訓(xùn)練過(guò)程中當(dāng)節(jié)點(diǎn)上樣本數(shù)大于500時(shí)只從中隨機(jī)選擇500個(gè)樣本用于訓(xùn)練該節(jié)點(diǎn),從而加速訓(xùn)練過(guò)程。當(dāng)樹的深度達(dá)到200或者節(jié)點(diǎn)中樣本數(shù)小于5時(shí)停止生長(zhǎng)。
在Intel(R)Core(TM)i5-4210U CPU@1.7 Hz 2.40 GHz平臺(tái)上進(jìn)行準(zhǔn)確度實(shí)驗(yàn),使用Matlab平臺(tái)實(shí)現(xiàn)算法并與JS Kim等人[12]的方法進(jìn)行比較。使用算法預(yù)測(cè)的谷點(diǎn)位置與人工標(biāo)定的谷點(diǎn)位置之間的歐式距離作為準(zhǔn)確度的衡量標(biāo)準(zhǔn),準(zhǔn)確度對(duì)比結(jié)果如表1。
表1 定位準(zhǔn)確度測(cè)試結(jié)果
由上表數(shù)據(jù)可以看出,本文算法在室內(nèi)和室外環(huán)境下具有較高的定位準(zhǔn)確度,而JS Kim等人[12]中的方法在室外環(huán)境下準(zhǔn)確度下降明顯。
在Android平臺(tái)上借助NDK實(shí)現(xiàn)本文算法,并在MX5手機(jī)上進(jìn)行速度測(cè)試,各階段平均耗時(shí)如表2。
表2 計(jì)算速度測(cè)試結(jié)果
從上表可以看出,本文算法在移動(dòng)設(shè)備上依然保持較快的計(jì)算速度。
隨著移動(dòng)設(shè)備的普及,對(duì)掌紋ROI定位算法提出了更高的要求。以往基于形態(tài)學(xué)的谷點(diǎn)定位方法具有計(jì)算速度快的特點(diǎn),但在移動(dòng)環(huán)境下光照與背景更為復(fù)雜時(shí)定位精度下降明顯,本文將其與基于紋理特征的定位方法相結(jié)合,在速度與準(zhǔn)確度之間做出平衡,使算法更適用于移動(dòng)平臺(tái)。未來(lái)的研究重點(diǎn)將放在繼續(xù)優(yōu)化算法速度以及研究定位算法準(zhǔn)確度的提升可以為掌紋識(shí)別的準(zhǔn)確度帶來(lái)多大提升。
[1]張建新,歐宗瑛,劉典婷.基于移動(dòng)設(shè)備的掌紋驗(yàn)證系統(tǒng)[J].計(jì)算機(jī)工程,2010,36(4):164-165.
[2]薛延學(xué),劉敏,馬思欣,等.復(fù)雜背景下基于二維OTSU和膚色分割結(jié)合的掌紋圖像分割方法[J].西安理工大學(xué)學(xué)報(bào),2015(3):353-359.
[3]許爽,索繼東,趙繼印.自動(dòng)找點(diǎn)的掌紋圖像定位分割方法[J].計(jì)算機(jī)工程與技術(shù),2011,32(9):3102-3105.
[4]高亞男,于肇賢,梁建霞.基于移動(dòng)攝像頭的掌紋識(shí)別研究[J].北京信息科技大學(xué)學(xué)報(bào):自然科學(xué)版,2015(1):70-74.
[5]F Li,Neera.Mobile based palmprint recognition system[C]//International Conference on Control,Automation and Robotics.2015:233-237.
[6]Marc Franzgrote,Christian Borg,Benjamin J.Tobias Ries,et al.Palmprint Verification on MobilePhonesUsingAcceleratedCompetitive Code[C]//International Conference on Hand-based Biometrics,2011:1-6.
[7]Li F,Neera.Mobile based palmprint recognition system[C]//International Conference on Control,2015:233-237.
[8]Edwards GJ,Taylor CJ,Cootes TF.Interpreting face images using active appearance models[C]//IEEE International Conference on Automatic Face&Gesture Recognition,1998:145-149.
[9]Cristinacce D,Cootes TF.Feature detection and tracking with constrained local models[C]//British Machine Vision Conference,2006:929-938.
[10]Lindner C,Thiagarajah S,Wilkinson JM,et al.Fully automatic segmentation of the proximal femur using random forest regression voting[J].IEEE Transactions on Medical Imaging,2013,32(8):1462-72.
[11]Gall J,Lempitsky V.Class-Specific hough forests for object detection[C]//Conference on Computer Vision and Pattern Recognition,2009:1022-1029.
[12]Kim JS,Li G,Son B,et al.An empirical study of palmprint recognition for mobile phones[J].IEEE Transactions on Consumer Electronics,2015,61(3):311-319.
[13]Singh S,Chauhan DS,Vatsa M,et al.A robust skin color based face detection algorithm[J].Tamkang journal of science and engineering,2003(6):227-234.