專(zhuān)利名稱(chēng)::一種基于局部敏感哈希的相似人臉快速檢索方法
技術(shù)領(lǐng)域:
:本發(fā)明屬于計(jì)算機(jī)圖像檢索領(lǐng)域,涉及一種從圖像庫(kù)中快速檢測(cè)與查詢(xún)圖像具有相似人臉的方法。
背景技術(shù):
:隨著視覺(jué)監(jiān)控設(shè)備的廣泛使用以及數(shù)字圖像拍攝設(shè)備的普及,數(shù)字圖像已成為重要的信息存儲(chǔ)方式。根據(jù)圖像內(nèi)容進(jìn)行有效的圖像檢索具有重要的意義。本發(fā)明中涉及的相似人臉是指具有相似的臉型,其不同于人臉識(shí)別。人臉識(shí)別關(guān)注人臉的特殊性,提取與其它人臉具區(qū)別性的特征。從圖像庫(kù)中檢索具有相似人臉的圖像具有廣泛的應(yīng)用前景。(I)在視覺(jué)監(jiān)控中可通過(guò)人臉圖像進(jìn)行基于人臉內(nèi)容的檢索,以提高視覺(jué)監(jiān)控中大量視頻數(shù)據(jù)的查找問(wèn)題。(2)在大量的人臉圖像數(shù)據(jù)中檢索相似人臉以提供用戶(hù)在發(fā)型、美容、飾品等方面的指導(dǎo)。(3)各種需要進(jìn)行人臉相似度匹配的各種互聯(lián)網(wǎng)娛樂(lè)應(yīng)用,比如:查找與你最像的名人,查找與你最具有夫妻相的明星。當(dāng)前人臉相似度研究方面的成果較少,當(dāng)前中國(guó)專(zhuān)利局公開(kāi)了兩個(gè)人臉相似度方面的專(zhuān)利:2002年公開(kāi)了“人臉元數(shù)據(jù)生成與人臉相似度計(jì)算”(申請(qǐng)?zhí)?2817359.7)的專(zhuān)利申請(qǐng)文檔,該專(zhuān)利主要采用人臉的反差指標(biāo)和對(duì)稱(chēng)指標(biāo)來(lái)描述人臉。2009年公開(kāi)了“一種人臉相似度匹配方法及裝置”(申請(qǐng)?zhí)?200910130506.3),該專(zhuān)利主要采用尺度不變特征變換SIFT來(lái)描述圖像,并通過(guò)SIFT描述子的方向、位置、梯度直方圖等計(jì)算人臉的相似性。在人臉識(shí)別研究方面,當(dāng)前在國(guó)內(nèi)外有較多的文章發(fā)表。當(dāng)前廣泛使用的人臉特征主要分為:幾何特征、PCA、不變特征。基于幾何特征方法的基本思想是提取面部顯著特征(例如眉毛,眼睛,鼻子,嘴巴等)的相對(duì)位置和相對(duì)大小作為特征參數(shù),再輔以人臉輪廓的形狀信息,形成特征向量,最后利用適當(dāng)?shù)木嚯x度量和分類(lèi)方法對(duì)特征向量加以分類(lèi)。PCA方法主要將人臉圖像通過(guò)主成份分析(PCA)提取出人臉的主要特征,降低特征維度,同時(shí)該方法需要進(jìn)行學(xué)習(xí)。不變特征是指提取對(duì)各種外在變化不敏感的人臉特征。該類(lèi)方法引入局部紋理特征,擴(kuò)展空頻變換特征,擴(kuò)展灰度統(tǒng)計(jì)特征,擴(kuò)展幾何結(jié)構(gòu)特征。
發(fā)明內(nèi)容本發(fā)明針對(duì)現(xiàn)有技術(shù)的不足,提供了一種基于局部敏感哈希的相似人臉快速檢索方法。本發(fā)明方法的基本思想是從直觀的角度出發(fā)來(lái)考察人臉的相似性??傮w上,相似人臉主要體現(xiàn)在人臉臉型的相似上,因此,人臉臉型特征作為本發(fā)明方法的主要特征。同時(shí)人們?cè)谄ヅ湎嗨迫四槙r(shí),還考察眼睛的位置和大小,嘴巴位置。本發(fā)明方法的具體步驟為:步驟(I)通過(guò)人臉檢測(cè)獲取圖像中的人臉區(qū)域。步驟(2)在人臉區(qū)域進(jìn)行眼睛和嘴巴的檢測(cè),并提取眼睛和嘴巴特征;提取眼睛和嘴巴特征包括:眼睛的大小特征、雙眼的距離特征、眼睛的對(duì)比度特征、眼睛與嘴巴的距離特征。步驟(3)通過(guò)膚色檢測(cè)提取人臉區(qū)域的膚色像素。步驟(4)提取膚色分布特征;該特征提取首先依據(jù)雙眼的位置對(duì)人臉進(jìn)行傾斜校正;然后依據(jù)眼睛和嘴巴的位置來(lái)劃分人臉;最后提取每個(gè)劃分中膚色像素的占有率作為膚色分布特征。步驟(5)依據(jù)人臉膚色分布特征、眼睛和嘴巴特征構(gòu)建人臉?biāo)饕龓?kù);該索引過(guò)程采用局部敏感哈希方法來(lái)構(gòu)建索引庫(kù)。步驟(6)對(duì)查詢(xún)圖像采用步驟(I)-步驟(4)的方法提取人臉特征,并通過(guò)局部敏感哈希方法在人臉?biāo)饕龓?kù)中檢索得到具有相似人臉的候選圖像。步驟(7)對(duì)候選圖像進(jìn)行基于歐式距離的驗(yàn)證,并對(duì)候選圖像進(jìn)行排序。本發(fā)明相對(duì)于現(xiàn)有技術(shù)具有以下有益效果:本發(fā)明檢索圖像的速度比較快,可應(yīng)用于具有大規(guī)模圖像庫(kù)的情況下的人臉相似檢索。圖1表示本發(fā)明的流程圖2多個(gè)眼睛選擇示意圖3人臉傾斜校正樣例;圖4人臉劃分不意具體實(shí)施例方式下面將結(jié)合附圖對(duì)本發(fā)明加以詳細(xì)說(shuō)明,應(yīng)指出的是,所描述的實(shí)施例僅便于對(duì)本發(fā)明的理解,而對(duì)其不起任何限定作用。本發(fā)明方法的具體步驟為:步驟(I)通過(guò)人臉檢測(cè)獲取圖像中的人臉區(qū)域。步驟(2)在人臉區(qū)域進(jìn)行眼睛和嘴巴的檢測(cè),并提取眼睛和嘴巴特征;提取眼睛和嘴巴特征包括:眼睛的大小特征、雙眼的距離特征、眼睛的對(duì)比度特征、眼睛與嘴巴的距離特征。步驟(3)通過(guò)膚色檢測(cè)提取人臉區(qū)域的膚色像素。步驟(4)提取膚色分布特征;該特征提取首先依據(jù)雙眼的位置對(duì)人臉進(jìn)行傾斜校正;然后依據(jù)眼睛和嘴巴的位置來(lái)劃分人臉;最后提取每個(gè)劃分中膚色像素的占有率作為膚色分布特征。步驟(5)依據(jù)人臉膚色分布特征、眼睛和嘴巴特征構(gòu)建人臉?biāo)饕龓?kù);該索引過(guò)程采用局部敏感哈希方法來(lái)構(gòu)建索引庫(kù)。步驟(6)對(duì)查詢(xún)圖像采用步驟(I)-步驟(4)的方法提取人臉特征,并通過(guò)局部敏感哈希方法在人臉?biāo)饕龓?kù)中檢索得到具有相似人臉的圖像。在本發(fā)明中,其輸入的圖像為數(shù)字圖像進(jìn)行處理。本發(fā)明方法處理的圖像可以針對(duì)各種圖像編碼格式。在此實(shí)施例中假定輸入的圖像已經(jīng)是解碼的位像。在以下的敘述中,圖像就是指數(shù)字圖像,不再具體指明。本實(shí)施例中主要介紹在圖像庫(kù)中檢測(cè)具有相似人臉圖像的方法,其可用于視覺(jué)監(jiān)控?cái)?shù)據(jù)的檢索,美容指導(dǎo),各種需要進(jìn)行人臉相似度匹配的各種互聯(lián)網(wǎng)娛樂(lè)應(yīng)用。本發(fā)明方法同樣可以適用其它需要進(jìn)行人臉相似度檢索的各種應(yīng)用場(chǎng)合。下面將參考附圖進(jìn)一步介紹本發(fā)明的實(shí)施例。圖1是一個(gè)流程框圖,表示了本發(fā)明的流程圖。整個(gè)相似人臉檢索方法分為兩個(gè)過(guò)程:索引過(guò)程和查詢(xún)過(guò)程。索引過(guò)程用于對(duì)索引圖像提取特征后以局部敏感哈希的方式進(jìn)行索引,便于查詢(xún)時(shí)快速的搜索到具有相似人臉的圖像。查詢(xún)過(guò)程是在局部敏感哈希構(gòu)建的索引庫(kù)的基礎(chǔ)上,對(duì)輸入的查詢(xún)圖像與索引圖像進(jìn)行基于局部敏感哈希的近似最近鄰查找得到相似人臉圖像,該查詢(xún)過(guò)程通過(guò)使用局部敏感哈希來(lái)提高效率。參考圖1中提取人臉區(qū)域子單元,用于提取圖像中的人臉區(qū)域。如果圖像中沒(méi)有人臉則不對(duì)該圖像進(jìn)行索引。人臉提取方法主要采用haar特征和Adaboost級(jí)聯(lián)分類(lèi)器,該方法可參考論文(PaulViola,MichaelJ.Jones,RobustReal-TimeFaceDetection,InternationalJournalofComputerVision,May2004,Volume57,Issue2,pp137-154)。由于圖像中的人臉可能存在側(cè)臉的問(wèn)題,因此,當(dāng)前已經(jīng)有學(xué)習(xí)好的側(cè)臉檢測(cè)adaboost人臉模型。在本實(shí)施例中,不考慮側(cè)臉的情況,主要檢測(cè)正面人臉,因此在加載adaboost人臉模型時(shí)只加載整理adaboost人臉模型,具體的實(shí)現(xiàn)可參考o(jì)pencv開(kāi)源圖像處理庫(kù)。同時(shí),為了提高人臉檢測(cè)的效率,對(duì)圖像的寬或者高大于800像素的圖像進(jìn)行尺度的縮放,縮放不改變圖像寬和高的比。縮放到目標(biāo)圖像的寬和高都需要小于800即可。在本實(shí)施例中,為了應(yīng)對(duì)圖像中人臉的不同大小,采用的尺度因子為1.1,檢測(cè)的最小窗口大小設(shè)定為32*32像素。如果在一幅圖像中檢測(cè)到多個(gè)人臉區(qū)域,則對(duì)每個(gè)人臉區(qū)域提取特征并進(jìn)行索引;如果在圖像中沒(méi)有檢測(cè)到人臉區(qū)域,則不對(duì)該圖像進(jìn)行索引。經(jīng)過(guò)人臉區(qū)域檢測(cè)后,得到若干個(gè)人臉區(qū)域圖像,并將人臉圖像縮放到固定尺度,在本實(shí)施例中,設(shè)定的固定人臉尺度為128*128像素。參考圖1中眼睛和嘴巴檢測(cè)子單元,用于在人臉區(qū)域圖像中檢測(cè)眼睛和嘴巴。檢測(cè)嘴巴和眼睛的方法采用人臉檢測(cè)一`樣的方法,其區(qū)別在于學(xué)習(xí)好的adaboost模型不同,眼睛采用眼睛的adaboost模型,嘴巴采用嘴巴的adaboost模型。已經(jīng)有學(xué)習(xí)好的adaboost模型可在網(wǎng)上下載(https://code.ros.0rg/trac/opencv/browser/trunk/opencv/data/haarcascades/haarcascade_eye.xmlrev=1125)。如果在人臉區(qū)域中沒(méi)有檢測(cè)到眼睛,則認(rèn)為該人臉區(qū)域是一個(gè)錯(cuò)誤的檢測(cè),因此不再對(duì)該人臉區(qū)域進(jìn)行特征提取和索引。如果僅檢測(cè)到一個(gè)眼睛,則通過(guò)已有眼睛的位置估計(jì)另外一個(gè)眼睛的位置。在估計(jì)另一眼睛位置時(shí),假設(shè)兩個(gè)眼睛在同一水平上,大小一致,并且以圖像的中軸對(duì)稱(chēng)分布,因此可通過(guò)公式X2=W-Xl;Y2=Yl;得到估計(jì)眼睛的坐標(biāo)(Χ2,Υ2),其中(Χ1,Υ1)為檢測(cè)得到的眼睛坐標(biāo)位置。如果檢測(cè)得到的眼睛數(shù)目大于2,則假設(shè)兩眼基本水平分布,通過(guò)兩眼構(gòu)建的直線(xiàn)與X軸的夾角最小來(lái)選擇最為準(zhǔn)確的人眼匹配。以附圖2多個(gè)眼睛選擇示意圖所示,圖中存在三個(gè)檢測(cè)得到的眼睛,用橢圓表示,分別為:Τ1、Τ2、Τ3。Tl、Τ2連線(xiàn)與水平線(xiàn)的夾角為A3,Tl、Τ3連線(xiàn)與水平線(xiàn)的夾角為Al,Τ2、Τ3連線(xiàn)與水平線(xiàn)的夾角為Α2。由于A3是Al、Α2、A3三個(gè)角度中最小的,因此選擇Tl和Τ2為準(zhǔn)確檢測(cè)的雙眼,Τ3為誤檢測(cè)。由于嘴巴檢測(cè)率不是很高,在沒(méi)有檢測(cè)到嘴巴的情況下,本發(fā)明方法通過(guò)預(yù)先設(shè)定位置和大小來(lái)確定。在本實(shí)施例中,眼睛檢測(cè)設(shè)定的最小窗口大小為16*16像素,采用的尺度因子為1.1。嘴巴檢測(cè)設(shè)定的最小窗口大小為25*15像素,采用的尺度因子為1.1。無(wú)法檢測(cè)到嘴巴情況下,設(shè)定的位置為:(36,86),寬高分別為:56,30。參考圖1中的眼睛和嘴巴特征提取子單元,用于在眼睛和嘴巴檢測(cè)的基礎(chǔ)上提取眼睛和嘴巴特征,包括:眼睛的大小特征、雙眼的距離特征、眼睛的對(duì)比度特征、眼睛與嘴巴的距離特征。眼睛的大小特征用眼睛檢測(cè)時(shí)得到的窗口大小來(lái)衡量。雙眼的距離特征是指檢測(cè)得到的雙眼窗口的中心位置之間的歐式距離。眼睛的對(duì)比度特征是指:在眼睛區(qū)域進(jìn)行均值二值化后,黑色像素?cái)?shù)和白色像素?cái)?shù)的比。眼睛與嘴巴的距離特征是指:雙眼中心點(diǎn)的平均高度與嘴巴中心點(diǎn)高度的差值。參考圖1中的人臉膚色檢測(cè)子單元,用于檢測(cè)人臉區(qū)域中的膚色像素。膚色像素的分布反映了人臉的總體形狀。膚色檢測(cè)當(dāng)前獲得了廣泛的研究,已經(jīng)有很多比較方便實(shí)現(xiàn)的方法。在本實(shí)施例中,采用閾值法以提高膚色像素檢測(cè)的效率。如果像素的r、g、b值滿(mǎn)足以下條件(1-3),則認(rèn)為是一個(gè)膚色像素。(l)r>95且g>40,且b>20;(2)r>g,且r>b;(3)max-min>15,且Ir_b|>15;其中max和min分別為r,g,b的最大值和最小值。參考圖1中的膚色分布特征提取子單元,用于對(duì)人臉膚色提取反映人臉形狀的特征。該特征提取首先依據(jù)雙眼的位置對(duì)人臉進(jìn)行傾斜校正;然后依據(jù)眼睛和嘴巴的位置來(lái)劃分人臉;最后提取每個(gè)劃分中膚色像素的占有率作為膚色分布特征。人臉傾斜校正首先計(jì)算雙眼之間連線(xiàn)與X軸的夾角(a),然后通過(guò)圖像旋轉(zhuǎn)操作,將圖像旋轉(zhuǎn)a角度,最后將膚色圖像進(jìn)行裁剪得到128*128像素大小的人臉膚色圖。旋轉(zhuǎn)方法采用近鄰差值。人臉傾斜校正的的一個(gè)具體樣例見(jiàn)參考圖3所示,在該樣例中旋轉(zhuǎn)角度為10度。人臉的劃分依據(jù)眼睛和嘴巴的位置,見(jiàn)參考圖4.在本實(shí)施例中,將眼睛和嘴巴之間的距離劃分5個(gè)等分,同時(shí)在嘴巴下面取同樣大小的一個(gè)等分。通過(guò)統(tǒng)計(jì)等分中內(nèi)的膚色像素?cái)?shù)量與像素總數(shù)量的比作為人臉臉型的特征;這樣可得到6個(gè)人臉臉型特征。參考圖1中的局部敏感哈希索引子單元,用于對(duì)提取的人臉特征向量進(jìn)行索弓丨,以便于在查詢(xún)時(shí)快速查找到具有近鄰的人臉特征向量。特征向量之間的是否近鄰?fù)ㄟ^(guò)歐式距離進(jìn)行表示,而局部敏感哈希通過(guò)哈希函數(shù)在歐式距離具有近似近鄰的快速訪(fǎng)問(wèn)特性。敏感哈希的基木思想是:通過(guò)一組哈希函數(shù),把相似的數(shù)據(jù)對(duì)象哈希到相同的沖突桶中,使得越相似的數(shù)據(jù)對(duì)象被哈希到相同沖突桶中的概率越高。在查詢(xún)時(shí),查詢(xún)的對(duì)象經(jīng)過(guò)相同的哈希函數(shù)哈希得到的沖突捅中的數(shù)據(jù)對(duì)象作為候選,接著在候選對(duì)象集合上,計(jì)算查詢(xún)對(duì)象與候選集中數(shù)據(jù)對(duì)象之間的距離。LSH的具體描述可參考論文:MayurDataretc.,Locality-sensitivehashingschemebasedonp—stabledistributions,inProceedingsofthetwentiethannualsymposiumonComputationalgeometry,pp.253-262,2004。本實(shí)施例中米用MIT大學(xué)的E2LSH包進(jìn)行實(shí)現(xiàn),其網(wǎng)站地址:http://www.mit.edu/andoni/LSH/。為了構(gòu)建一個(gè)適合本人臉特征庫(kù)的哈希表以及滿(mǎn)足系統(tǒng)的內(nèi)存需求,需要確定LSH的R,1-J,n,d四個(gè)參數(shù)。本實(shí)施例首先通過(guò)E2LSH包中的computeOptimalParameters方法估計(jì)參數(shù),其中參數(shù)設(shè)定為:半徑R為10,成功概率1-為0.9,特征維數(shù)dimension為:10.以及對(duì)應(yīng)的待索引的人臉特征列表,用于測(cè)試的樣例人臉特征列表。通過(guò)該方法獲得用于構(gòu)建LSH數(shù)據(jù)索引表的參數(shù)結(jié)構(gòu)RNNParametersT。然后調(diào)用initLSH_WidthDataSet方法,其參數(shù)為上述獲得的LSH參數(shù)結(jié)構(gòu),以及待索引的人臉特征列表;返回的結(jié)果就是索引好的結(jié)構(gòu)表PRNearNeighborStructT。該結(jié)構(gòu)表即可用于進(jìn)行快速近似近鄰查詢(xún)。為了便于下次的運(yùn)行,本實(shí)施例對(duì)該結(jié)構(gòu)表內(nèi)容進(jìn)行了序列化的操作。在查詢(xún)階段,輸入的查詢(xún)圖像以上述索引階段一樣的方式,提取人臉區(qū)域,檢測(cè)眼睛與嘴巴,并提取眼睛和嘴巴的特征,再進(jìn)行人臉膚色檢測(cè),提取膚色分布特征。從而,查詢(xún)圖像被表示為維度為10的人臉特征向量。參考圖1中的局部敏感哈希查詢(xún)子單元根據(jù)查詢(xún)圖像的人臉特征向量去查詢(xún)LSH的索引表,得到候選近似人臉圖像集合;查詢(xún)過(guò)程是首先通過(guò)E2LSH包中的getRNearNeighbors方法,其參數(shù)為索引階段構(gòu)建的結(jié)構(gòu)表PRNearNeighborStructT。返回結(jié)果存儲(chǔ)在一個(gè)數(shù)組中。參考圖1中的候選圖像驗(yàn)證排序子單元,根據(jù)查詢(xún)圖像和候選圖像的人臉特征向量歐式距離來(lái)進(jìn)行排序。由于候選的圖像已經(jīng)遠(yuǎn)遠(yuǎn)小于圖像庫(kù)中的圖像,因此,采用順序方法計(jì)算查詢(xún)圖像人臉特征與候選圖像人臉特征之間的歐式距離;然后根據(jù)得到的歐式距離,通過(guò)快速排序方法得到相似人臉的排序。最后通過(guò)一個(gè)數(shù)量閾值和歐式距離閾值選擇相似人臉圖像。在本實(shí)施例中,數(shù)量閾值設(shè)定為5.歐式距離閾值設(shè)定為6。歐式距離小于6的候選人臉圖像的前5張圖像作為本方法得到的相似人臉圖像。權(quán)利要求1.一種基于局部敏感哈希的相似人臉快速檢索方法,其特征在于該方法包括如下步驟:步驟(I)通過(guò)人臉檢測(cè)獲取圖像中的人臉區(qū)域;步驟(2)在人臉區(qū)域進(jìn)行眼睛和嘴巴的檢測(cè),并提取眼睛和嘴巴特征;步驟(3)通過(guò)膚色檢測(cè)提取人臉區(qū)域的膚色像素;步驟(4)提取膚色分布特征;步驟(5)依據(jù)人臉膚色分布特征、眼睛和嘴巴特征構(gòu)建人臉?biāo)饕龓?kù);步驟(6)對(duì)查詢(xún)圖像采用步驟(I)-步驟(4)的方法提取人臉特征,并通過(guò)局部敏感哈希方法在人臉?biāo)饕龓?kù)中檢索得到具有相似人臉的候選圖像;步驟(7)對(duì)候選圖像進(jìn)行基于歐式距離的驗(yàn)證,并對(duì)候選圖像進(jìn)行排序。2.如權(quán)利要求1所述的方法,其特征在于:步驟(2)中提取眼睛和嘴巴特征包括:眼睛的大小特征、雙眼的距離特征、眼睛的對(duì)比度特征、眼睛與嘴巴的距離特征。3.如權(quán)利要求1所述的方法,其特征在于:步驟(4)中提取膚色分布特征是依據(jù)眼睛和嘴巴的位置來(lái)劃分人臉,并提取每個(gè)劃分中膚色像素的占有率作為膚色分布特征。4.如權(quán)利要求1所述的方法,其特征在于:步驟(5)依據(jù)人臉特征構(gòu)建人臉?biāo)饕龓?kù)采用的是局部敏感哈希方法。5.如權(quán)利要求3所述的方法,其特征在于:依據(jù)眼睛和嘴巴的位置來(lái)劃分人臉的方式,其首先依據(jù)雙眼的位置對(duì)人臉進(jìn)行傾斜校正。全文摘要本發(fā)明涉及一種基于局部敏感哈希的相似人臉快速檢索方法?,F(xiàn)有方法難于適應(yīng)大規(guī)模圖像庫(kù)的快速檢索。本發(fā)明首先對(duì)圖像進(jìn)行索引,通過(guò)人臉區(qū)域檢測(cè)、眼睛和嘴巴特征檢測(cè)和特征提取、膚色檢測(cè)、人臉膚色分布特征提取等步驟將圖像表示為人臉特征向量;然后利用局部敏感哈希方法對(duì)人臉特征向量構(gòu)建索引。在查詢(xún)相似人臉圖像時(shí),首先將輸入的查詢(xún)圖像以索引階段一樣的方式提取人臉特征向量;并利用局部敏感哈希查詢(xún),得到候選相似人臉圖像集合;最后根據(jù)查詢(xún)圖像和候選圖像之間的歐式距離確認(rèn)和排序最終的相似人臉圖像。本發(fā)明方法基于局部敏感哈希索引方法提高了查詢(xún)時(shí)的速度。文檔編號(hào)G06F17/30GK103207898SQ20131008756公開(kāi)日2013年7月17日申請(qǐng)日期2013年3月19日優(yōu)先權(quán)日2013年3月19日發(fā)明者傅政軍,姚金良,孫占長(zhǎng),滕韜,潘滿(mǎn)永,朱沛生,任永,周逸青申請(qǐng)人:天格科技(杭州)有限公司