国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種Face—age判定方法的設(shè)計

2015-12-25 08:56周楓李德強(qiáng)黃達(dá)毅徐永紅李千目
軟件 2015年7期
關(guān)鍵詞:圖像處理

周楓++李德強(qiáng)++黃達(dá)毅++徐永紅++李千目

摘要:通過人臉圖像對年齡進(jìn)行識別具有很大的挑戰(zhàn)。年齡識別會受到諸多干擾因素的影響,如性別、健康、生活方式等等。本文設(shè)計了一種基于主成份分析人臉圖片的年齡識別方法,選用FG-NET數(shù)據(jù)庫的圖片作為測試樣本,挑選了測試集和訓(xùn)練集。論文對選擇的圖片作直方圖均衡化,直接計算圖片的歐氏距離并判別近鄰,之后,對圖片進(jìn)行人臉提取矯正等預(yù)處理后進(jìn)行測試,最后使用本文方法對人臉提取后的圖片進(jìn)行測試和實驗。

關(guān)鍵詞:面部年齡判別;圖像處理;主成份分析

中圖分類號:TP391. 41

文獻(xiàn)標(biāo)識碼:A

DOI:10.3969/j.issn.1003-6970.2015.07.010

0 引言

在圖像處理領(lǐng)域非常重要的一個組成部分就是人臉,通過對人臉面部圖像處理,可以產(chǎn)生很多實際應(yīng)用,包括進(jìn)行人臉檢測、人臉識別和表情分析等。人臉圖像的處理,尤其是年齡屬性分析,日益被眾多科研機(jī)構(gòu)關(guān)注,在多媒體通信、人機(jī)交互和信息安全中起到重要作用。例如,通過面部年齡屬性判定方法,一家公司想要針對某年齡段的消費者進(jìn)行產(chǎn)品設(shè)計,只要通過購物區(qū)的監(jiān)控設(shè)備,非常容易地捕獲消費者的年齡統(tǒng)計信息。同樣,面部年齡屬性判定方法也可以監(jiān)督購買煙酒顧客中有沒有出現(xiàn)可能的未成年人。

目前主流的基于圖像年齡識別方法主要包括:利用顱頜面發(fā)展理論與面部皮膚皺紋分析用來創(chuàng)建人體模型,該方法適用于年輕人的粗年齡估計;利用老化圖案子空間方法表示衰老的人臉圖像,該方法根據(jù)在子空間的投影來重建的面部圖像;利用回歸方法,其回歸系數(shù)根據(jù)帶有如二次模型的回歸函數(shù)的訓(xùn)練數(shù)據(jù)估計,通過制定一個半定規(guī)劃問題或EM算法來處理年齡的不確定性。

事實上,目前面部年齡判別方法的準(zhǔn)確率普遍偏低,原因在于隨著年齡的增長,人臉部的變化難以預(yù)測,并且因人而異,比如,健康狀況、面部保養(yǎng)和化妝都會使得人的外貌發(fā)生潛移默化的變化,這些為識別模型的建立帶來許多未知的因素。

本文選用FG-NET數(shù)據(jù)庫的圖片作為測試樣本,挑選了部分作為測試集和訓(xùn)練集,引入主成份分析等算法進(jìn)行了面部年齡判別設(shè)計,并對實驗結(jié)果進(jìn)行分析。

1 面部年齡屬性判定方法的設(shè)計

主成份分析( Principal Component Analysis)算法,是一種對變量進(jìn)行線性變換,并根據(jù)貢獻(xiàn)率選出數(shù)貢獻(xiàn)率較高的變量作為測試依據(jù)的一種多元統(tǒng)計分析方法。

面部年齡屬性判定就是當(dāng)給定一張人臉圖像(測試圖片),就可以根據(jù)已有的人臉數(shù)據(jù)庫(訓(xùn)練圖片),利用特定的方式將給定的測試圖片和每一張訓(xùn)練圖片作比較。比較的方式有直接計算歐氏距離,或是將它們投影到計算出的空間中,得到投影向量再比較歐氏距離,歐式距離較小者即為近鄰。然后根據(jù)近鄰的年齡類別,得出測試樣本所屬的類別,然后判別樣本測試所得的類別與其實際所屬類別是否一致。最后將測試結(jié)構(gòu)進(jìn)行記錄,整合。

本文方法的思路是:使用主成份分析算法對數(shù)據(jù)進(jìn)行降維處理,利用K-L變換提取人臉圖像的主成份,構(gòu)成特征臉空間,將測試集的圖像投影到特征臉空間,得到投影向量,然后計算其與訓(xùn)練圖片投影得到的向量的歐氏距離,取較小值為近鄰。

(1)訓(xùn)練

假設(shè)訓(xùn)練圖片的對應(yīng)的矩陣大小為MxN,數(shù)量為n,設(shè)它們?yōu)閤i(0T設(shè)xi拉伸后對應(yīng)的矩陣為yi(0i依次排列,組成一個MxNxn的矩陣y=[y1 y2 y3…… yn]將矩陣?yán)旌髮⒌玫降南蛄縴取平均數(shù),得到平均臉:

計算每一張人臉與平均臉的差值:

因此得到協(xié)方差矩陣:

求協(xié)方差矩陣的特征值和特征向量,并根據(jù)此構(gòu)建特征臉空間。

由于協(xié)方差矩陣的維度是(MN)2,這部分實驗的圖片尺寸為60×160(不包括嘴)和90×160(包括嘴)。以不包括嘴的圖片為例,此時構(gòu)成的協(xié)方差矩陣的數(shù)據(jù)量就是(60×l60)2≈9.2×107,求解這樣一個大矩陣的特征值和特征向量,若用常規(guī)的方法,普通的計算機(jī)的運算速度根本無法支撐。因此采用一種非常巧妙的方法來完成這項任務(wù),也就是奇異值分解(SingularValue Decomposition,SVD)定理。奇異值分解是一種十分重要的矩陣分解方式,是矩陣分析中正規(guī)矩陣酋對角化的推廣。

設(shè)A為mxn階復(fù)矩陣,則存在m階酋陣U和n階酋陣V,使得 ,

我們的目的是利用svd分解求得一個非常大的協(xié)方差矩陣C的特征值以及對應(yīng)的特征向量。而由已知條件

因此采用另一種間接的方式,通過計算ATA的特征值和特征向量來得到AAT的特征值和特征向量。

因為AAT的維數(shù)為15200×15200,而ATA的維數(shù)為480×480,兩者相差1000倍,計算效率的差別可想而知。

首先,我們通過直接計算得到ATA,然后使用matlab自帶的函數(shù)——eig得到AAT的特征值和特征向量。

在matlab中,使用語句 就能得到ATA的特征值和特征向量。其中,D(i,i)為ATA的第i個特征值,而V(:,i)為其對應(yīng)的特征向量。同時,ATA的所有特征值D(i,i)也是AAT的所有非零特征值。di和vi為ATA的第i個特征值及特征向量,則我們可以得到AAT的第i個特征向量ui 在利用SVD方法求得協(xié)方差矩陣C的特征值 和其對應(yīng)的正交歸一化特征向量 后,根據(jù)特征值的貢獻(xiàn)率選取前p個最大特征值對應(yīng)的特征向量,這里的貢獻(xiàn)率 是指:

其中,a為設(shè)定好的貢獻(xiàn)率閾值。特征值 根據(jù)下標(biāo)i以降序排列。a百分比的選擇意味著訓(xùn)練樣本在前p個特征向量集上的投影擁有對應(yīng)百分比的能量。 由于

可以根據(jù)求得的特征向量構(gòu)建特征臉空間:

之后將訓(xùn)練集拉伸后的人臉圖像與平均臉的差值di投影到特征臉空間上

(2)測試 將測試集的圖片以相同方式處理,拉伸成M*N的列向量,與平均臉作差,然后投影到特征臉空間上,設(shè)得到的投影向量為Ωj,計算它和所有Ωj的歐式距離,之后根據(jù)KNN算法判斷最近鄰。

2 實驗與分析

FG-NET數(shù)據(jù)庫是包含了一定數(shù)量的臉部圖像的圖片數(shù)據(jù)庫,圖像中的人物年齡從0歲到69歲不等。這個數(shù)據(jù)庫的建立是為了幫助研究人員研究調(diào)查人類老化對臉部容貌的影響。數(shù)據(jù)庫被分成兩部分,A塊和B塊。A塊用來作人臉識別,而B塊依然在開發(fā)。數(shù)據(jù)庫負(fù)責(zé)人要求用戶在使用A塊的同時,也能傳輸圖片為B塊的發(fā)展作貢獻(xiàn)。A塊的數(shù)據(jù)庫包含了82個人的1002幅圖像,其中每個人都有6~18張的人臉正面圖像,這些圖像或是彩色圖或是灰度圖,并且附有圖像中人物的準(zhǔn)確年齡。所有的人臉圖像均是西方人,且82個人中有34位女性和48位男性,年齡從0歲到69歲不等。圖像的獲取途徑主要是對老舊圖片的掃描。圖1是部分FG-NET數(shù)據(jù)庫的原始圖片。

本文將年齡段進(jìn)行劃分,并從FG-NET的1002張圖片中選取600張,每個年齡段都有一定數(shù)量的測試圖片和訓(xùn)練圖片。并且每個年齡段的訓(xùn)練圖片數(shù)量均為測試圖片的4倍,具體的劃分見表1。

本文分別對兩種圖片類別進(jìn)行識別,并運用K=l,3,5所對應(yīng)的KNN方法所得到的結(jié)果全部列出。表2和表3分別是僅做直方圖均衡化圖片類別和進(jìn)行人臉提取后做直方圖均衡化的圖片類別得到的實驗結(jié)果。對于僅僅做直方圖均衡化的圖片類別,可以看出識別率并不是很高,就算是識別率最高的K=3的組別,識別率也只有29.16%,識別圖片35張。而上述的完全隨機(jī)的識別率和識別圖片分別是26.06%和31.26張。這里的識別效果僅僅比完全隨機(jī)的情況好了一點。因此,K值的帶來的識別差異,不同年齡組別的識別差異,都很難從數(shù)據(jù)中說明。

對于將人臉提取后做直方圖均衡化的圖片類別,相比未提取人臉的實驗,識別率提高了將近10%,因此基本可以斷定人臉提取對于識別率的上升非常有幫助。

不包括嘴和包括嘴的組別的識別率,在K=l和K=3的時候取得最大值,分別為41.66%和40.83%。并且在K=5的時候都有較低的識別率(35.83%,38.33%)。

同時,可以發(fā)現(xiàn),在不管是K的值如何,在低齡段的識別率都遠(yuǎn)遠(yuǎn)高于高齡段。0-9歲和10-19歲兩個類的識別率都差不多達(dá)到了50%,而20-29歲類的識別率約為25%,而剩下的3個高齡的類的識別率都非常的低。這個現(xiàn)象有兩個可能的原因。第一,訓(xùn)練集中從6個年齡類從低齡到高齡的圖片數(shù)為160,160,80,40,24,16,也就是不同年齡段的訓(xùn)練圖片數(shù)量非常不均勻,0-9歲和10-19歲類別的訓(xùn)練圖片比例都為33.33%,而最低的50-69類別的訓(xùn)練圖片比例僅為3.33%。第二,人在剛出生的時候臉部的差異較小,而隨著年齡的增大所表現(xiàn)出的老化現(xiàn)象因人而異,因此年齡較大的人臉圖片之間差距相對于低齡人臉圖片的差距要大很多。

由于經(jīng)過人臉提取之后,識別效果明顯變好,因此將其作為后續(xù)實驗所需的圖片。

根據(jù)本文的主成份分析算法的步驟,將包括嘴和不包括嘴的人臉提取圖片庫分別作為實驗圖片,我們可以得到兩種圖片類別的平均臉,如圖2所示。

由于訓(xùn)練集里低齡圖片占多數(shù),因此平均臉看起來像是一個低齡的人。在得到平均臉后,按主成份分析的步驟執(zhí)行,構(gòu)建出投影空間,對訓(xùn)練圖片和測試圖片進(jìn)行投影,得到投影矩陣之后進(jìn)行比對,比對的方法與上一章實驗類似(計算歐氏距離)。得到實驗結(jié)果后同樣列表表示,表4,5,6分別表示K=l,K=3,K=5的情況。

從實驗結(jié)果可以看出,包括嘴的組別的識別率較之前部分的識別率有了很明顯的提高,但包括嘴的組別還是處于較低的識別率。因此可以基本認(rèn)為,在人臉圖像的年齡估計,將嘴的部分去除會使得圖像的識別率大幅度提高。

再來看看K值對實驗結(jié)果的影響。這次的實驗結(jié)果和之前區(qū)別非常大,在所有實驗條件下,(包括嘴或者不包括嘴,a的值為0.98或是0.9),總的識別率基本上是隨著K的增大,識別率逐漸上升,在K=5時基本達(dá)到最大值。而之前的實驗在K=5的識別率是最差的??赡苁且驗樵谥鞒煞莘治鏊惴ㄏ拢コ袅瞬糠重暙I(xiàn)率非常低的因素,使得識別率上升,因此在測試階段計算得到的每一張圖片的前幾個近鄰都更加的可靠。這就使得在K值較高的情況下,因為計算偶然使得個別近鄰錯誤的風(fēng)險大大降低了。因此可以初步認(rèn)為,在識別率較高的情況下,更高的K值能夠得到更好的實驗結(jié)果。相反,在識別率較低的情況下,K值過高會反而使得識別率下降。所以說,在設(shè)定K值的時候,應(yīng)該估計一下實驗的識別率,根據(jù)此選擇最優(yōu)的K值。

同樣,貢獻(xiàn)率閾值的選擇也會對實驗的識別率產(chǎn)生影響??梢钥闯觯谏厦娴膶嶒灲Y(jié)果中,a=0.9和a=0.98會使得實驗結(jié)果產(chǎn)生非常細(xì)微的波動,在K值不同,圖片不同的情況下都有高有高有低,并且差別都非常小。因此很難判斷哪個a值的設(shè)定能使實驗結(jié)果更加好。但是在a=0.9的時候,所被采用的特征向量的數(shù)量會少很多,因此形成的投影矩陣就更加小,這回導(dǎo)致識別的速度更快。因此就識別速度這一點來說,在主成份分析算法中,a=0.9的選擇是更優(yōu)的。

3 結(jié)論

本文引入主成份分析算法實現(xiàn)了面部年齡屬性判定,并且對不包括嘴的圖片庫進(jìn)行了實驗。主成份分析算法有明顯更高的識別率和更高的識別速度,但是主成份分析也存在著協(xié)方差矩陣維數(shù)高等問題,這些需要后續(xù)深入研究。endprint

猜你喜歡
圖像處理
海戰(zhàn)場偵察圖像處理技術(shù)圖譜及應(yīng)用展望
人工智能輔助冠狀動脈CTA圖像處理和診斷的研究進(jìn)展
基于ARM嵌入式的關(guān)于圖像處理的交通信號燈識別
基于圖像處理的機(jī)器人精確抓取的設(shè)計與實現(xiàn)
機(jī)器學(xué)習(xí)在圖像處理中的應(yīng)用
Bayesian-MCMC算法在計算機(jī)圖像處理中的實踐
改進(jìn)壓縮感知算法的圖像處理仿真研究
基于圖像處理的定位器坡度計算
基于圖像處理的晶圓表面缺陷檢測
對圖像處理中ROF全變分模型的兩種算法的比較研究
巴楚县| 洛扎县| 延寿县| 京山县| 丰顺县| 德州市| 牡丹江市| 定日县| 如东县| 紫阳县| 海林市| 扎囊县| 图们市| 盐津县| 寿阳县| 宜丰县| 洛宁县| 秦安县| 伊春市| 灌云县| 泗阳县| 政和县| 屏山县| 凤台县| 廊坊市| 泸水县| 庆云县| 辉南县| 山东| 紫金县| 灌南县| 兴文县| 吉林省| 兴义市| 汾西县| 斗六市| 铜山县| 华阴市| 吐鲁番市| 木兰县| 宿迁市|