本發(fā)明屬于計(jì)算機(jī)視覺和圖像處理技術(shù)領(lǐng)域,特別是涉及一種綜合膚色信息和紋理信息的基于模板匹配的人臉檢測(cè)方法。
背景技術(shù):
隨著當(dāng)今人工智能和機(jī)器視覺領(lǐng)域的快速發(fā)展,由于人臉識(shí)別具有非接觸性的特點(diǎn),因此在人機(jī)交互方面有著廣闊的應(yīng)用前景。人臉檢測(cè)作為人臉識(shí)別的基礎(chǔ),在圖像或視頻中如何快速精準(zhǔn)地檢測(cè)人臉的位置仍是當(dāng)今的研究熱點(diǎn)。
目前,主流的人臉檢測(cè)方法主要有三種:(1)基于膚色、邊緣、幾何關(guān)系等人臉特征的檢測(cè)方法,該類方法一般運(yùn)算速度較快,但缺點(diǎn)是受局部特征影響較大。(2)基于模板匹配的檢測(cè)方法,該類方法一般運(yùn)算量較大,匹配時(shí)間較長。(3)基于數(shù)據(jù)的檢測(cè)方法,該類方法通過統(tǒng)計(jì)知識(shí)提取人臉特征,優(yōu)點(diǎn)是檢測(cè)精度較高,但需要很大的數(shù)據(jù)集和較長的時(shí)間去訓(xùn)練,且該方法是一種黑盒算法,無法直觀地從內(nèi)部理解人臉檢測(cè)的原理。
基于膚色特征的人臉檢測(cè)方法屬于上述第一種方法,該方法利用膚色的聚類性篩選膚色區(qū)域,其計(jì)算量小,能夠快速地將人臉的待測(cè)區(qū)域分割出來。但膚色特征易受到類膚色背景和非人臉膚色區(qū)域干擾。
基于模板匹配的人臉檢測(cè)方法有兩個(gè)難點(diǎn):一是模板的選擇。模板匹配要求模板所含的信息簡(jiǎn)單有效,目前大多采用K-L變換后的“本征臉”作為檢測(cè)模板,但K-L變換中特征值分解的運(yùn)算量較大。二是模板匹配的掃描次數(shù)。模板匹配需要不斷變換模板的大小對(duì)輸入圖像進(jìn)行滑窗掃描,然而由于模板大小不確定,只能采取變換模板大小多次掃描的方式,因此其檢測(cè)時(shí)間會(huì)變長。這兩點(diǎn)都會(huì)嚴(yán)重影響檢測(cè)性能。
楊等[Yang Y,Xie C,Du L,et al.A new face detection algorithm based on skin color segmentation[C]//Chinese Automation Congress.IEEE,2015.]將膚色特征提取之后,通過判別每塊膚色區(qū)域是否滿足一定的對(duì)稱性來判斷是否是人臉,雖然該方法簡(jiǎn)便但準(zhǔn)確性較低,沒有深層次地去挖掘人臉圖像的特征。中國專利CN103632132A將膚色分割與模板匹配結(jié)合來進(jìn)行人臉檢測(cè),并使用連通區(qū)域標(biāo)記,其模板匹配也具有一定的自適應(yīng)性。但在進(jìn)行模板匹配時(shí),是采用直接計(jì)算各膚色連通區(qū)域的特征值,其運(yùn)算量較大,且易受大片非人臉膚色區(qū)域的影響,從而造成檢測(cè)率較低。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述問題,本發(fā)明的目的在于提供一種基于膚色分割和小波變換的人臉檢測(cè)方法。
為了達(dá)到上述目的,本發(fā)明提供的基于膚色分割和小波變換的人臉檢測(cè)方法包括按順序進(jìn)行的下列步驟:
1)輸入圖像膚色分割:對(duì)輸入圖像進(jìn)行光照補(bǔ)償,然后將光照補(bǔ)償后的圖像從RGB彩色空間轉(zhuǎn)換到Y(jié)CbCr彩色空間,通過設(shè)定閾值區(qū)間對(duì)膚色區(qū)域進(jìn)行分割,然后對(duì)分割后的區(qū)域進(jìn)行去噪處理和連通區(qū)域標(biāo)記;
2)輸入圖像特征提?。簩?duì)輸入圖像進(jìn)行小波變換,取小波變換后的圖像中水平頻率分量和垂直頻率分量兩個(gè)次高頻信息重構(gòu)圖像的類邊緣特征,然后對(duì)該重構(gòu)圖像進(jìn)行中值濾波,最終得到低維圖像;
3)變長模板匹配:將步驟1)中得到的連通區(qū)域?qū)Σ襟E2)中得到的低維圖像進(jìn)行掩模運(yùn)算,然后通過統(tǒng)計(jì)步驟1)中標(biāo)記的各連通區(qū)域的大小,針對(duì)不同連通區(qū)域制作不同大小的模板來對(duì)得到的連通區(qū)域進(jìn)行變長模板匹配,最終通過判斷與模板相關(guān)性的大小來完成人臉檢測(cè)過程。
在步驟1)中,所述的輸入圖像膚色分割的具體步驟如下:
(1.1)光照補(bǔ)償
選取輸入圖像亮度的前百分之五的平均值作為亮度補(bǔ)償參考值,利用該值作為系數(shù)與輸入圖像相乘,由此對(duì)輸入圖像進(jìn)行光照補(bǔ)償,其公式為:
其中Iori表示輸入圖像,sort0.05(·)表示取輸入圖像前百分之五的亮度成分,mean(·)表示取平均運(yùn)算,ref為亮度補(bǔ)償參考值,I為光照補(bǔ)償后的圖像;
(1.2)色彩空間轉(zhuǎn)換和膚色分割
將上述光照補(bǔ)償后的圖像從RGB彩色空間轉(zhuǎn)換到Y(jié)CbCr彩色空間,色彩空間轉(zhuǎn)換公式為:
光照補(bǔ)償后的圖像中每一點(diǎn)的像素點(diǎn)I(i,j)經(jīng)式(2)轉(zhuǎn)換后由IY(i,j)ICr(i,j)ICb(i,j)表示,其中i和j表示該像素點(diǎn)所在的行和列,然后通過式(3)將膚色區(qū)域篩選出來并用二值圖像表示,其中黑色表示“0”,白色表示“1”;
由此完成膚色分割;
(1.3)去噪和連通區(qū)域標(biāo)記
所述的去噪和連通區(qū)域標(biāo)記方法的具體步驟如下:
1.3.1)填補(bǔ)空洞:將上述分割后的區(qū)域中的小空洞填補(bǔ)好;
1.3.2)開運(yùn)算去除細(xì)小毛刺:本發(fā)明共進(jìn)行了兩次開運(yùn)算操作,分別采用5×5和9×9的方形算子作為開運(yùn)算單元,5×5算子用于去除一些細(xì)小的噪聲點(diǎn),9×9算子用于分割有微弱連接的連通區(qū)域,便于后續(xù)的連通區(qū)域標(biāo)記;
1.3.3)連通區(qū)域標(biāo)記:該步驟在整個(gè)去噪篩選過程中共使用兩次,第一次連通區(qū)域標(biāo)記在開運(yùn)算后,第二次連通區(qū)域標(biāo)記在完成所有去噪和篩選后作為膚色分割的輸出;
1.3.4)去除長寬比異常的連通區(qū)域:經(jīng)連通區(qū)域標(biāo)記得到連通區(qū)域Qi后,計(jì)算連通區(qū)域Qi的最大外接矩形的長li和寬wi;由于人臉的正常長寬比例大約是4:3,通過設(shè)置長寬比:
來剔除部分不合理區(qū)域,當(dāng)長寬比不合理時(shí),可判斷該區(qū)域非人臉,從而剔除該區(qū)域;考慮到脖子與人臉部分常連接在一起,本發(fā)明將T>3和T<0.33作為長寬比異常的區(qū)間;
1.3.5)去除面積較小的區(qū)域:計(jì)算每個(gè)連通區(qū)域的面積Si=sum(Qi),即統(tǒng)計(jì)每個(gè)連通區(qū)域像素點(diǎn)的個(gè)數(shù),設(shè)置與各連通區(qū)域的平均面積相關(guān)的門限來剔除較小的連通區(qū)域;連通區(qū)域的平均面積為:
本發(fā)明采用0.3倍的連通區(qū)域的平均面積Save作為剔除小塊區(qū)域的閾值;
1.3.6)去除面積結(jié)構(gòu)不合理的區(qū)域:計(jì)算連通區(qū)域的面積Si與最大外接矩形面積的比值本發(fā)明設(shè)置比值ri的閾值為ri≥0.5,將結(jié)構(gòu)不合理的區(qū)域剔除,完成篩選;
最終對(duì)經(jīng)上述去噪篩選后的連通區(qū)域重新進(jìn)行標(biāo)記而得到Q′i,總的連通區(qū)域面積為:
在步驟1.3.1)中,所述的填補(bǔ)空洞的步驟為:
1.3.1.1)遍歷二值圖像,將I(i,j)=0的像素點(diǎn)值標(biāo)記為待定點(diǎn),并標(biāo)記為Wait;
1.3.1.2)遍歷二值圖像,將靠近邊界的待定點(diǎn)標(biāo)記為False,即不進(jìn)行填補(bǔ)操作;
1.3.1.3)循環(huán)遍歷二值圖像,當(dāng)標(biāo)記為Wait的待定點(diǎn)的四鄰域點(diǎn)有False的標(biāo)記時(shí),將此待定點(diǎn)標(biāo)記為False,直到標(biāo)記為Wait的待定點(diǎn)不再增加時(shí),結(jié)束遍歷;
1.3.1.4)將標(biāo)記為Wait的待定點(diǎn)置為1,標(biāo)記為False的靠近邊界的待定點(diǎn)不改變?cè)瓉淼南袼刂怠?/p>
在步驟1.3.3)中,所述的連通區(qū)域標(biāo)記的步驟為:
1.3.3.1)從左至右,從上到下掃描開運(yùn)算后的圖像;
1.3.3.2)如果像素點(diǎn)為1,則:
a.若像素點(diǎn)上面點(diǎn)或左面點(diǎn)只有一個(gè)標(biāo)記,則復(fù)制該標(biāo)記;
b.若兩點(diǎn)有相同的標(biāo)記,則復(fù)制該標(biāo)記;
c.若兩點(diǎn)有不同標(biāo)記,則復(fù)制上面點(diǎn)的標(biāo)記且將這兩個(gè)標(biāo)記輸入等價(jià)表中構(gòu)成等價(jià)標(biāo)記集;
d.否則給該像素點(diǎn)分配一個(gè)新的標(biāo)記并將這一標(biāo)記輸入等價(jià)表;
1.3.3.3)若考慮更多的點(diǎn),則回到步驟1.3.3.2);
1.3.3.4)在等價(jià)表的每一等價(jià)標(biāo)記集中找到最低的標(biāo)記;
1.3.3.5)掃描二值圖像,用等價(jià)表中每個(gè)等價(jià)標(biāo)記集的最低標(biāo)記取代每一標(biāo)記;
經(jīng)連通區(qū)域標(biāo)記后的各個(gè)連通區(qū)域由Qi表示,其中i為連通區(qū)域的標(biāo)號(hào),最終標(biāo)記好的連通區(qū)域個(gè)數(shù)為n。
在步驟2)中,所述的輸入圖像特征提取的方法為:
用Haar小波對(duì)輸入圖像I進(jìn)行小波分解而得到小波圖像,為了便于顯示,將小波圖像的細(xì)節(jié)系數(shù)取絕對(duì)值并八倍放大;僅利用水平分量和垂直分量完成小波重構(gòu),最終得到圖像的類邊緣特征信息,對(duì)重構(gòu)后的圖像進(jìn)行中值濾波而使圖像模糊化,最后得到低維圖像并記為W。
在步驟3)中,所述的變長模板匹配的具體步驟如下:
3.1)掩模運(yùn)算
將步驟1)中膚色分割后得到的連通區(qū)域Q′對(duì)步驟2)中得到的低維圖像W進(jìn)行掩模運(yùn)算;
3.2)模板匹配
3.2.1)模板制作
具體方法為:在網(wǎng)上選取69張1寸免冠照片,并按照下述規(guī)則截取照片人臉區(qū)域作為模板制作的來源,其規(guī)則為:將兩個(gè)外側(cè)眼角間的距離作為截取部分的寬,并將長度方向位置固定;截取部分長和寬滿足長寬比4:3,鼻子下邊緣線對(duì)應(yīng)長的0.618的位置,以此來確定寬度方向的位置;最后將截取部分的圖像大小轉(zhuǎn)換成40×30像素;按照上述規(guī)則,得到了69張大小相同、位置近似的人臉;隨后,將這69張照片進(jìn)行前述的小波變換和重構(gòu),然后將重構(gòu)后的照片累加,通過中值濾波將相加后的圖像模糊化,隨后進(jìn)行歸一化,最終得到人臉匹配的模板;
3.2.2)變長模板匹配
變長模板匹配方法是對(duì)步驟1)中得到的已標(biāo)記的多個(gè)連通區(qū)域Qi分別進(jìn)行自適應(yīng)滑窗掃描;通過參考標(biāo)記后各個(gè)連通區(qū)域Qi的長和寬,選擇4種與連通區(qū)域Qi大小相關(guān)的模板進(jìn)行匹配;本發(fā)明默認(rèn)一個(gè)連通區(qū)域Qi中只有一個(gè)人臉,其步驟為:
3.2.2.1)將標(biāo)號(hào)為i的連通區(qū)域Q′i置1,其他標(biāo)號(hào)為非i的連通區(qū)域置-100,;
3.2.2.2)計(jì)算連通區(qū)域Q′i的長li和寬wi,并將連通區(qū)域Qi中上、下、左、右邊界所處的位置記錄下來;
3.2.2.3)取連通區(qū)域Q′i的長li和寬wi值中的最小值:當(dāng)取長為最小值時(shí),令寬為長的3/4倍;當(dāng)取寬為最小值時(shí),令長為寬的4/3倍,使長寬比滿足固定的4:3,最終得到的長和寬為和
3.2.2.4)根據(jù)和Wi*將原模板轉(zhuǎn)換成4種不同尺寸的匹配模板,分別為:
3.2.2.5)從連通區(qū)域Q′i的起始位置和開始進(jìn)行滑窗掃描,共執(zhí)行四次,每次掃描都變換一次掃描大小,且大小與步驟3.2.2.4)中的模板大小相同;每一次掃描所掃到的區(qū)域都與變換后相同大小的模板進(jìn)行相關(guān)運(yùn)算,比較兩者的相似度;最終把四次掃描后相關(guān)值ρi最大的位置Pi、區(qū)域大小和相關(guān)值ρi記錄下來,重新跳轉(zhuǎn)到步驟3.2.2.1);
相關(guān)值ρ值的計(jì)算公式為:
其中,μA、σA和μB、σB是向量A和向量B的均值和標(biāo)準(zhǔn)差,這里的向量A和向量B是由矩陣形式轉(zhuǎn)化的;
通過變長模板匹配后,每個(gè)連通區(qū)域Q′i都有一個(gè)相關(guān)值ρi最大的標(biāo)定區(qū)域,且其面積為相關(guān)值為ρi;將每一個(gè)面積相關(guān)值ρi都除以其對(duì)應(yīng)子集{ρi}的中值得選擇在閾值區(qū)間為內(nèi)的區(qū)域?yàn)槿四槄^(qū)域。
本發(fā)明提供的基于膚色分割和小波變換的人臉檢測(cè)方法具有如下有益效果(1)提出了一種新的圖像特征提取方式。通過對(duì)圖像進(jìn)行小波分解,將圖像的兩個(gè)次高頻成分提取出來重新構(gòu)造圖像,并對(duì)重構(gòu)圖像采用中值濾波進(jìn)行模糊,最終可以得到一種新的低維人臉特征。(2)本發(fā)明在膚色分割中去噪階段,從圖像結(jié)構(gòu)出發(fā),剔除了大部分不合理非人臉的膚色區(qū)域,減少了運(yùn)算量。(3)在模板匹配時(shí),將膚色分割的連通區(qū)域大小考慮進(jìn)來,針對(duì)不同大小的連通域設(shè)置不同的模板,實(shí)現(xiàn)了模板匹配的自適應(yīng)。
附圖說明
圖1為本發(fā)明提供的基于膚色分割和小波變換的人臉檢測(cè)方法流程圖。
圖2(a)、(b)分別為膚色分割前的圖像和膚色分割后的二值圖像。
圖3為本發(fā)明中去噪和連通區(qū)域標(biāo)記流程圖。
圖4為本發(fā)明中經(jīng)去噪和連通區(qū)域標(biāo)記后的效果圖。
圖5為本發(fā)明中輸入圖像特征提取方法示意圖。
圖6為本發(fā)明中掩模運(yùn)算效果圖。
圖7為本發(fā)明中模板制作過程步驟圖。
圖8為本發(fā)明中變長模板匹配過程示意圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明提供的基于膚色分割和小波變換的人臉檢測(cè)方法進(jìn)行詳細(xì)說明。
如圖1所示,本發(fā)明提供的基于膚色分割和小波變換的人臉檢測(cè)方法包括按順序進(jìn)行的下列步驟:
1)輸入圖像膚色分割:對(duì)輸入圖像進(jìn)行光照補(bǔ)償,然后將光照補(bǔ)償后的圖像從RGB彩色空間轉(zhuǎn)換到Y(jié)CbCr彩色空間,通過設(shè)定閾值區(qū)間對(duì)膚色區(qū)域進(jìn)行分割,然后對(duì)分割后的區(qū)域進(jìn)行去噪處理和連通區(qū)域標(biāo)記;
所述的輸入圖像膚色分割的具體步驟如下:
(1.1)光照補(bǔ)償
光照補(bǔ)償可提高膚色分割的準(zhǔn)確性,本發(fā)明選取輸入圖像亮度的前百分之五的平均值作為亮度補(bǔ)償參考值,利用該值作為系數(shù)與輸入圖像相乘,由此對(duì)輸入圖像進(jìn)行光照補(bǔ)償,其公式為:
其中Iori表示輸入圖像,sort0.05(·)表示取輸入圖像前百分之五的亮度成分,mean(·)表示取平均運(yùn)算,ref為亮度補(bǔ)償參考值,I為光照補(bǔ)償后的圖像;
(1.2)色彩空間轉(zhuǎn)換和膚色分割
由于膚色在YCbCr彩色空間中具有良好的聚類性,且膚色與亮度成分無關(guān),本發(fā)明將上述光照補(bǔ)償后的圖像從RGB彩色空間轉(zhuǎn)換到Y(jié)CbCr彩色空間,色彩空間轉(zhuǎn)換公式為:
光照補(bǔ)償后的圖像中每一點(diǎn)的像素點(diǎn)I(i,j)經(jīng)式(2)轉(zhuǎn)換后由IY(i,j)ICr(i,j)ICb(i,j)表示,其中i和j表示該像素點(diǎn)所在的行和列,然后通過式(3)將膚色區(qū)域篩選出來并用圖2所示的二值圖像表示,其中黑色表示“0”,白色表示“1”。
由此完成膚色分割。
(1.3)去噪和連通區(qū)域標(biāo)記
由于上述步驟(1.2)中得到的二值圖像存在很多細(xì)小的噪點(diǎn)和一些非人臉區(qū)域,因此需對(duì)上述分割后的區(qū)域進(jìn)行去噪和連通區(qū)域標(biāo)記。
如圖3所示,所述的去噪和連通區(qū)域標(biāo)記方法的具體步驟如下:
1.3.1)填補(bǔ)空洞:將上述分割后的區(qū)域中的小空洞填補(bǔ)好,步驟為:
1.3.1.1)遍歷二值圖像,將I(i,j)=0的像素點(diǎn)值標(biāo)記為待定點(diǎn),并標(biāo)記為Wait;
1.3.1.2)遍歷二值圖像,將靠近邊界的待定點(diǎn)標(biāo)記為False,即不進(jìn)行填補(bǔ)操作;
1.3.1.3)循環(huán)遍歷二值圖像,當(dāng)標(biāo)記為Wait的待定點(diǎn)的四鄰域點(diǎn)有False的標(biāo)記時(shí),將此待定點(diǎn)標(biāo)記為False,直到標(biāo)記為Wait的待定點(diǎn)不再增加時(shí),結(jié)束遍歷;
1.3.1.4)將標(biāo)記為Wait的待定點(diǎn)置為1,標(biāo)記為False的靠近邊界的待定點(diǎn)不改變?cè)瓉淼南袼刂怠?/p>
1.3.2)開運(yùn)算去除細(xì)小毛刺:本發(fā)明共進(jìn)行了兩次開運(yùn)算操作,分別采用5×5和9×9的方形算子作為開運(yùn)算單元,5×5算子用于去除一些細(xì)小的噪聲點(diǎn),9×9算子用于分割有微弱連接的連通區(qū)域,便于后續(xù)的連通區(qū)域標(biāo)記。
1.3.3)連通區(qū)域標(biāo)記:該步驟在整個(gè)去噪篩選過程中共使用兩次,第一次連通區(qū)域標(biāo)記在開運(yùn)算后,第二次連通區(qū)域標(biāo)記在完成所有去噪和篩選后作為膚色分割的輸出,其步驟為:
1.3.3.1)從左至右,從上到下掃描開運(yùn)算后的圖像;
1.3.3.2)如果像素點(diǎn)為1,則:
a.若像素點(diǎn)上面點(diǎn)或左面點(diǎn)只有一個(gè)標(biāo)記,則復(fù)制該標(biāo)記;
b.若兩點(diǎn)有相同的標(biāo)記,則復(fù)制該標(biāo)記;
c.若兩點(diǎn)有不同標(biāo)記,則復(fù)制上面點(diǎn)的標(biāo)記且將這兩個(gè)標(biāo)記輸入等價(jià)表中構(gòu)成等價(jià)標(biāo)記集;
d.否則給該像素點(diǎn)分配一個(gè)新的標(biāo)記并將這一標(biāo)記輸入等價(jià)表;
1.3.3.3)若考慮更多的點(diǎn),則回到步驟1.3.3.2);
1.3.3.4)在等價(jià)表的每一等價(jià)標(biāo)記集中找到最低的標(biāo)記;
1.3.3.5)掃描二值圖像,用等價(jià)表中每個(gè)等價(jià)標(biāo)記集的最低標(biāo)記取代每一標(biāo)記。
經(jīng)連通區(qū)域標(biāo)記后的各個(gè)連通區(qū)域由Qi表示,其中i為連通區(qū)域的標(biāo)號(hào),最終標(biāo)記好的連通區(qū)域個(gè)數(shù)為n。
1.3.4)去除長寬比異常的連通區(qū)域:經(jīng)連通區(qū)域標(biāo)記得到連通區(qū)域Qi后,計(jì)算連通區(qū)域Qi的最大外接矩形的長li和寬wi。由于人臉的正常長寬比例大約是4:3,通過設(shè)置長寬比:
來剔除部分不合理區(qū)域。當(dāng)長寬比不合理時(shí),可判斷該區(qū)域非人臉,從而剔除該區(qū)域??紤]到脖子與人臉部分常連接在一起,本發(fā)明將T>3和T<0.33作為長寬比異常的區(qū)間。
1.3.5)去除面積較小的區(qū)域。計(jì)算每個(gè)連通區(qū)域的面積Si=sum(Qi),即統(tǒng)計(jì)每個(gè)連通區(qū)域像素點(diǎn)的個(gè)數(shù)。主觀上可知,連通區(qū)域較大的部分應(yīng)屬于人臉,小的部分應(yīng)屬于開運(yùn)算無法剔除的小塊噪聲,因此可以設(shè)置與各連通區(qū)域的平均面積相關(guān)的門限來剔除較小的連通區(qū)域。連通區(qū)域的平均面積為:
本發(fā)明采用0.3倍的連通區(qū)域的平均面積Save作為剔除小塊區(qū)域的閾值。
1.3.6)去除面積結(jié)構(gòu)不合理的區(qū)域。計(jì)算連通區(qū)域的面積Si與最大外接矩形面積的比值正常結(jié)構(gòu)的人臉膚色區(qū)域應(yīng)占據(jù)其外接矩形的大部分,比值ri應(yīng)較大,而某些非人臉區(qū)域分布奇特,雖然外接矩形較大,但整體面積占矩形區(qū)域的比例較小,因此本發(fā)明設(shè)置比值ri的閾值為ri≥0.5,將結(jié)構(gòu)不合理的區(qū)域剔除,完成篩選;
最終對(duì)經(jīng)上述去噪篩選后的連通區(qū)域重新進(jìn)行標(biāo)記而得到Q′i,總的連通區(qū)域面積為:
經(jīng)上述去噪和連通區(qū)域標(biāo)記后的效果見圖4,圖中從左至右為經(jīng)上述6個(gè)步驟后獲得的效果圖。
2)輸入圖像特征提?。簩?duì)輸入圖像進(jìn)行小波變換,取小波變換后的圖像中水平頻率分量和垂直頻率分量兩個(gè)次高頻信息重構(gòu)圖像的類邊緣特征,然后對(duì)該重構(gòu)圖像進(jìn)行中值濾波,最終得到低維圖像;
本發(fā)明采用Haar小波作為輸入圖像特征提取的工具,Haar小波函數(shù)的定義為:
其尺度函數(shù)為:
尺寸為M×N的函數(shù)f(x,y)的二維離散小波變換是:
對(duì)應(yīng)反變換為
如圖5所示,所述的輸入圖像特征提取的方法為:
用Haar小波對(duì)輸入圖像I進(jìn)行小波分解而得到小波圖像,為了便于顯示,將小波圖像的細(xì)節(jié)系數(shù)取絕對(duì)值并八倍放大。本發(fā)明剔除和分量,僅利用水平分量和垂直分量完成小波重構(gòu),最終得到圖像的類邊緣特征信息,但重構(gòu)后的圖像中有許多距離相距較近的集群點(diǎn),若直接用這些集群點(diǎn)去匹配,會(huì)降低模板匹配的準(zhǔn)確率。因此為了將大面積分布的點(diǎn)轉(zhuǎn)換成面,提高對(duì)集群點(diǎn)的匹配效果,這里對(duì)重構(gòu)后的圖像進(jìn)行中值濾波而使圖像模糊化,最后得到低維圖像并記為W。
3)變長模板匹配:將步驟1)中得到的連通區(qū)域?qū)Σ襟E2)中得到的低維圖像進(jìn)行掩模運(yùn)算,然后通過統(tǒng)計(jì)步驟1)中標(biāo)記的各連通區(qū)域的大小,針對(duì)不同連通區(qū)域制作不同大小的模板來對(duì)得到的連通區(qū)域進(jìn)行變長模板匹配,最終通過判斷與模板相關(guān)性的大小來完成人臉檢測(cè)過程。
所述的變長模板匹配的具體步驟如下:
3.1)掩模運(yùn)算
將步驟1)中膚色分割后得到的連通區(qū)域Q′對(duì)步驟2)中得到的低維圖像W進(jìn)行掩模運(yùn)算,效果圖見圖6。通過將兩者結(jié)合起來,可以提高模板匹配檢測(cè)的準(zhǔn)確率。
3.2)模板匹配
3.2.1)模板制作
由于步驟2)中的輸入圖像特征提取方法是本發(fā)明的一個(gè)創(chuàng)新點(diǎn),并沒有類似的模板可以直接套用,因此本發(fā)明自行制作模板,具體制作過程見圖7。具體方法為:在網(wǎng)上選取69張1寸免冠照片,并按照下述規(guī)則截取照片人臉區(qū)域作為模板制作的來源,其規(guī)則為:將兩個(gè)外側(cè)眼角間的距離作為截取部分的寬,并將長度方向位置固定;截取部分長和寬滿足長寬比4:3,鼻子下邊緣線對(duì)應(yīng)長的0.618的位置,以此來確定寬度方向的位置。最后將截取部分的圖像大小轉(zhuǎn)換成40×30像素。按照上述規(guī)則,得到了69張大小相同、位置近似的人臉。隨后,將這69張照片進(jìn)行前述的小波變換和重構(gòu),然后將重構(gòu)后的照片累加,通過中值濾波將相加后的圖像模糊化,隨后進(jìn)行歸一化,最終得到人臉匹配的模板。由圖7可以看出,模板峰值主要分布在人眼、鼻子和嘴巴位置,且人眼相對(duì)其他部位較高。
3.2.2)變長模板匹配
變長模板匹配方法是對(duì)步驟1)中得到的已標(biāo)記的多個(gè)連通區(qū)域Qi分別進(jìn)行自適應(yīng)滑窗掃描。通過參考標(biāo)記后各個(gè)連通區(qū)域Qi的長和寬,選擇4種與連通區(qū)域Qi大小相關(guān)的模板進(jìn)行匹配,從而大大減少了普通模板匹配的運(yùn)算量。本發(fā)明默認(rèn)一個(gè)連通區(qū)域Qi中只有一個(gè)人臉。
如圖8所示,其步驟為:
3.2.2.1)將標(biāo)號(hào)為i的連通區(qū)域Q′i置1,其他標(biāo)號(hào)為非i的連通區(qū)域置-100,;
3.2.2.2)計(jì)算連通區(qū)域Q′i的長li和寬wi,并將連通區(qū)域Qi中上、下、左、右邊界所處的位置記錄下來;
3.2.2.3)取連通區(qū)域Q′i的長li和寬wi值中的最小值:當(dāng)取長為最小值時(shí),令寬為長的3/4倍;當(dāng)取寬為最小值時(shí),令長為寬的4/3倍,使長寬比滿足固定的4:3,最終得到的長和寬為和
3.2.2.4)根據(jù)和Wi*將原模板轉(zhuǎn)換成4種不同尺寸的匹配模板,分別為:
3.2.2.5)從連通區(qū)域Q′i的起始位置和開始進(jìn)行滑窗掃描,共執(zhí)行四次,每次掃描都變換一次掃描大小,且大小與步驟3.2.2.4)中的模板大小相同??紤]到相鄰像素的區(qū)域相似性較高,為了減少運(yùn)算量,選取掃描的方式為隔行匹配,具體躍過的行數(shù)由區(qū)域大小決定。每一次掃描所掃到的區(qū)域都與變換后相同大小的模板進(jìn)行相關(guān)運(yùn)算,比較兩者的相似度。最終把四次掃描后相關(guān)值ρi最大的位置Pi、區(qū)域大小和相關(guān)值ρi記錄下來,重新跳轉(zhuǎn)到步驟3.2.2.1)。
相關(guān)值ρ值的計(jì)算公式為:
其中,μA、σA和μB、σB是向量A和向量B的均值和標(biāo)準(zhǔn)差,這里的向量A和向量B是由矩陣形式轉(zhuǎn)化的。
通過變長模板匹配后,每個(gè)連通區(qū)域Q′i都有一個(gè)相關(guān)值ρi最大的標(biāo)定區(qū)域,且其面積為相關(guān)值為ρi。將每一個(gè)面積相關(guān)值ρi都除以其對(duì)應(yīng)子集{ρi}的中值得選擇在閾值區(qū)間為內(nèi)的區(qū)域?yàn)槿四槄^(qū)域。
經(jīng)過測(cè)試,本發(fā)明提供的方法能夠較為快速準(zhǔn)確地檢測(cè)出臉。