一種基于膚色模型的皮膚識(shí)別方法
【專(zhuān)利摘要】本發(fā)明涉及一種基于膚色模型的皮膚識(shí)別方法,步驟如下:1)對(duì)圖像進(jìn)行人臉識(shí)別,獲取人臉區(qū)域;2)對(duì)步驟1)獲取的人臉區(qū)域進(jìn)行均值計(jì)算,獲取平均膚色;3)根據(jù)步驟2)獲取的平均膚色計(jì)算當(dāng)前圖像的膚色概率映射表;4)根據(jù)步驟3)獲取的膚色概率映射表對(duì)當(dāng)前圖像進(jìn)行膚色識(shí)別,并獲得當(dāng)前圖像的膚色概率的結(jié)果圖。本發(fā)明通過(guò)使用人臉檢測(cè)后的膚色均值來(lái)構(gòu)建膚色模型,能夠適應(yīng)各種條件下拍照的圖片,應(yīng)用范圍實(shí)現(xiàn)更廣的覆蓋。并且本發(fā)明所述的方法不需要進(jìn)行訓(xùn)練數(shù)據(jù)的積累,極易進(jìn)行實(shí)施;不需要與龐大的訓(xùn)練數(shù)據(jù)進(jìn)行比對(duì),運(yùn)行效率提高。通過(guò)膚色模型進(jìn)行識(shí)別,識(shí)別準(zhǔn)確率高,克服在過(guò)亮或過(guò)暗的情況下,皮膚識(shí)別不準(zhǔn)確的不足。
【專(zhuān)利說(shuō)明】一種基于膚色模型的皮膚識(shí)別方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及圖像識(shí)別方法,更具體地說(shuō),涉及一種基于膚色模型的皮膚識(shí)別方法?!颈尘凹夹g(shù)】
[0002]皮膚識(shí)別的目標(biāo)是從圖像中自動(dòng)地識(shí)別人體的皮膚區(qū)域,并且根據(jù)識(shí)別出的皮膚區(qū)域進(jìn)行美容美化操作。而現(xiàn)有技術(shù)中,對(duì)圖像中人體的皮膚識(shí)別存在誤識(shí)別率高、需要構(gòu)建數(shù)據(jù)庫(kù)的時(shí)間久和步驟麻煩、實(shí)現(xiàn)復(fù)雜、程序運(yùn)行效率低等不足。
[0003]中國(guó)發(fā)明專(zhuān)利申請(qǐng)201110185739.0公開(kāi)了一種模式識(shí)別和圖像處理【技術(shù)領(lǐng)域】中的一種光照自適應(yīng)的人體膚色檢測(cè)方法,通過(guò)收集訓(xùn)練數(shù)據(jù)庫(kù),用訓(xùn)練數(shù)據(jù)庫(kù)來(lái)訓(xùn)練基礎(chǔ)膚色模型和光照模型,并用基礎(chǔ)膚色模型對(duì)待檢測(cè)圖像的像素點(diǎn)進(jìn)行篩選,從光照模型中找出一個(gè)和待檢測(cè)圖像最接近的光照模型,用該模型對(duì)待檢測(cè)圖像和基礎(chǔ)膚色模型進(jìn)行修正,修正后的待檢測(cè)圖像經(jīng)修正后的基礎(chǔ)膚色模型檢測(cè)后輸出。
[0004]但上述發(fā)明的技術(shù)方案主要是根據(jù)數(shù)據(jù)庫(kù)來(lái)構(gòu)建膚色模型,必然存在有很大的局限性。當(dāng)軟件定義的數(shù)據(jù)庫(kù)中的訓(xùn)練數(shù)據(jù)都偏于黑暗的情況時(shí),偏亮的照片的皮膚檢測(cè)得到的較黑的部分就會(huì)被自動(dòng)識(shí)別為皮膚,導(dǎo)致誤識(shí)別率;當(dāng)軟件定義的數(shù)據(jù)庫(kù)中的訓(xùn)練數(shù)據(jù)都偏于明亮的情況時(shí),偏暗的照片的皮膚檢測(cè)得到的結(jié)果是會(huì)有很大部分不被識(shí)別,誤識(shí)別率更高;當(dāng)軟件定義的數(shù)據(jù)庫(kù)中的訓(xùn)練數(shù)據(jù)偏平衡的時(shí)候,較暗或者較亮的皮膚都不會(huì)被識(shí)別出來(lái)。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種識(shí)別率高、實(shí)現(xiàn)簡(jiǎn)單高效、運(yùn)行效率高的一種基于膚色模型的皮膚識(shí)別方法。
[0006]本發(fā)明的技術(shù)方案如下:
[0007]一種基于膚色模型的皮膚識(shí)別方法,步驟如下:
[0008]I)對(duì)圖像進(jìn)行人臉識(shí)別,獲取人臉區(qū)域;
[0009]2)對(duì)步驟I)獲取的人臉區(qū)域進(jìn)行均值計(jì)算,獲取平均膚色;
[0010]3)根據(jù)步驟2)獲取的平均膚色計(jì)算當(dāng)前圖像的膚色概率映射表;
[0011]4)根據(jù)步驟3)獲取的膚色概率映射表對(duì)當(dāng)前圖像進(jìn)行膚色識(shí)別,并獲得當(dāng)前圖像的膚色概率的結(jié)果圖。
[0012]作為優(yōu)選,步驟2)具體為:
[0013]2.1)初始化原始皮膚模型;
[0014]2.2)計(jì)算整個(gè)圖像的顏色均值,作為初始皮膚的閾值;
[0015]2.3)根據(jù)步驟2.2)獲取得的初始皮膚的閾值計(jì)算人臉區(qū)域的平均膚色。
[0016]作為優(yōu)選,步驟2.1)中,初始化原始皮膚模型的步驟如下:
[0017]2.1.1)創(chuàng)建膚色模型,大小為256*256 ;
[0018]2.1.2)依次對(duì)膚色模型進(jìn)行賦值,具體偽代碼如下;[0019]
預(yù)設(shè)臨時(shí)變量AlphaValue、nMax、1、j為整數(shù)類(lèi)型。
膚色模型變量為SkinModel[256][256]
For( i=0; i<2 5 6; i+十)
{
判斷i是否大于128,如果大于128,則AlphaValue為255,否則為i*2;
計(jì)算獲得nMax的值,計(jì)算公式為nMax = min(256, AlphaValue*2);
For(j=0;j<n M ax ;j++)
{
計(jì)算對(duì)應(yīng)位置的膚色模型的值,計(jì)算公式為SkinModel[i]Q] =AlphaValue - (J/2);
}
For(j=n M ax.j <2 5 6 ;j+十)
{
初始對(duì)應(yīng)位置的膚色模 型的值為0;
}
}
[0020]
o
[0021]作為優(yōu)選,步驟2.2)具體為:
[0022]2.2.1)遍歷整個(gè)圖像的像素點(diǎn),將紅色通道、綠色通道、藍(lán)色通道的顏色值累加,得到顏色累加值;
[0023]2.2.2)將顏色累加值除以像素點(diǎn)的總數(shù),得到紅色通道、綠色通道、藍(lán)色通道的均值,作為初始皮膚的閾值。
[0024]作為優(yōu)選,步驟2.3)具體為:
[0025]2.3.1)根據(jù)如下公式計(jì)算平均膚色的黑白值:
[0026]GRAYl=0.299*RED+0.587*GREEN+0.114*BLUE
[0027]其中,GRAYl為灰度圖的當(dāng)前像素點(diǎn)的灰度值;RED、GREEN、BLUE分別為圖像的當(dāng)前像素點(diǎn)的紅、綠、藍(lán)通道的顏色值;
[0028]2.3.2)將步驟2.3.1)中的黑白值作為閾值,用來(lái)排除人臉區(qū)域非皮膚的部分;
[0029]并依次遍歷人臉區(qū)域里的像素點(diǎn)的顏色值,根據(jù)如下公式獲得平均膚色:
[0030]skin=SkinModel[red][blue];
[0031]其中,skin為經(jīng)過(guò)皮膚模型的顏色映射后的皮膚值;SkinModel為步驟2.1)的初始化原始皮膚模型;red為紅色通道的顏色值;blue為藍(lán)色通道的顏色值。
[0032]作為優(yōu)選,步驟3)所述的膚色概率映射表通過(guò)如下步驟獲取:
[0033]3.1)創(chuàng)建膚色概率映射表,大小為256*256 ;
[0034]3.2)依次對(duì)膚色概率映射表進(jìn)行賦值,具體偽代碼如下;
[0035]
【權(quán)利要求】
1.一種基于膚色模型的皮膚識(shí)別方法,其特征在于,步驟如下: .1)對(duì)圖像進(jìn)行人臉識(shí)別,獲取人臉區(qū)域; .2)對(duì)步驟1)獲取的人臉區(qū)域進(jìn)行均值計(jì)算,獲取平均膚色;. 3)根據(jù)步驟2)獲取的平均膚色計(jì)算當(dāng)前圖像的膚色概率映射表; .4)根據(jù)步驟3)獲取的膚色概率映射表對(duì)當(dāng)前圖像進(jìn)行膚色識(shí)別,并獲得當(dāng)前圖像的膚色概率的結(jié)果圖。
2.根據(jù)權(quán)利要求1所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,步驟2)具體為: .2.1)初始化原始皮膚模型; . 2.2)計(jì)算整個(gè)圖像的顏色均值,作為初始皮膚的閾值; .2.3)根據(jù)步驟2.2)獲取得的初始皮膚的閾值計(jì)算人臉區(qū)域的平均膚色。
3.根據(jù)權(quán)利要求2所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,步驟2.1)中,初始化原始皮膚模型的步驟如下: .2.1.1)創(chuàng)建膚色模型,大小為256*256 ; .2.1.2)依次對(duì)膚色模型進(jìn)行賦值,具體偽代碼如下;
4.根據(jù)權(quán)利要求3所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,步驟2.2)具體為: 2.2.1)遍歷整個(gè)圖像的像素點(diǎn),將紅色通道、綠色通道、藍(lán)色通道的顏色值累加,得到顏色累加值; 2.2.2)將顏色累加值除以像素點(diǎn)的總數(shù),得到紅色通道、綠色通道、藍(lán)色通道的均值,作為初始皮膚的閾值。
5.根據(jù)權(quán)利要求4所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,步驟2.3)具體為: .2.3.1)根據(jù)如下公式計(jì)算平均膚色的黑白值:
GRAYl=0.299*RED+0.587*GREEN+0.114*BLUE 其中,GRAYl為灰度圖的當(dāng)前像素點(diǎn)的灰度值;RED、GREEN、BLUE分別為圖像的當(dāng)前像素點(diǎn)的紅、綠、藍(lán)通道的顏色值; .2.3.2)將步驟2.3.1)中的黑白值作為閾值,用來(lái)排除人臉區(qū)域非皮膚的部分; 并依次遍歷人臉區(qū)域里的像素點(diǎn)的顏色值,根據(jù)如下公式獲得平均膚色: skin=SkinModel[red][blue]; 其中,skin為經(jīng)過(guò)皮膚模型的顏色映射后的皮膚值;SkinModel為步驟2.1)的初始化原始皮膚模型;red為紅色通道的顏色值;blue為藍(lán)色通道的顏色值。
6.根據(jù)權(quán)利要求5所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,步驟3)所述的膚色概率映射表通過(guò)如下步驟獲取: .3.1)創(chuàng)建膚色概率映射表,大小為256*256 ; .3.2)依次對(duì)膚色概率映射表進(jìn)行賦值,具體偽代碼如下; 預(yù)設(shè)臨時(shí)變量 1、j、SkinRed_Left、AlphaValue、Offset、TempAlphaValue> OffsetJ 為整數(shù)類(lèi)型; 膚色概率映射表的變量為SkinProbability [256] [256]; SkinRed為步驟2.2. 2)計(jì)算得到的紅色通道的均值;SkinBlue為步驟2.2.2)計(jì)算得到的藍(lán)色通道的均值;預(yù)設(shè) SkinRed_Left 的值,計(jì)算公式為:SkinRed—Left = SkinRed - 128
For(i=0;i<256;i 十十)
{
計(jì)算 Offset 的值,公式為 Offset 二 inax(0?niin(255,1- SkinRed Left)); 判斷Offset的值是否小于P8如果小于的,話則AlphaValue=Offset*2;如果大于等于128 的話,則 AlphaYalue=255
For (j-() ;j <25 6:j ++)
{
計(jì)算 OffsetJ 的值,公式為 OffsetJ = max(03 j - SkinBtoe);
Irp- TerripAlphaValue 的值,公式為T(mén)empAlphaValue = max(AlphaWlue - (OffsetJ *2), 0); 判斷 TempAlphaValue 的值。如果大于 160 的話,_ SkinProbability[i][j]的值為 255;
如果小于 90 的話,則 SkinPfobability[i][j]的值為 0;否則 SkiiiProbability[i][j]的值為T(mén)empAlpbaVlue — 30;
}
}
0
7.根據(jù)權(quán)利要求6所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,步驟4)通過(guò)如下公式進(jìn)行實(shí)現(xiàn):
SkinColor=SkinProbabiIity[red][blue] 其中,skinColor為結(jié)果圖的膚色概率值;SkinProbability為膚色概率映射表;red為像素點(diǎn)的紅色通道的顏色值;blue為像素點(diǎn)的藍(lán)色通道的顏色值。
8.根據(jù)權(quán)利要求1所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,步驟I)當(dāng)人臉區(qū)域識(shí)別失敗時(shí),將整個(gè)圖像定義為人臉區(qū)域。
9.根據(jù)權(quán)利要求1所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,用于識(shí)別的圖像包括數(shù)字圖像文件、視頻文件、gif動(dòng)畫(huà)文件。
10.根據(jù)權(quán)利要求9所述的基于膚色模型的皮膚識(shí)別方法,其特征在于,如果識(shí)別的圖像為視頻文件或gif動(dòng)畫(huà)文件,則將圖像文件截取為單幀圖像,分別識(shí)別完各個(gè)單幀圖像后,再還原為視頻文件或gif動(dòng)畫(huà)文件。
【文檔編號(hào)】G06K9/00GK103455790SQ201310252620
【公開(kāi)日】2013年12月18日 申請(qǐng)日期:2013年6月24日 優(yōu)先權(quán)日:2013年6月24日
【發(fā)明者】張偉, 傅松林, 張長(zhǎng)定 申請(qǐng)人:廈門(mén)美圖網(wǎng)科技有限公司