新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA的人臉檢測系統(tǒng)設(shè)計(jì)

基于FPGA的人臉檢測系統(tǒng)設(shè)計(jì)

作者: 時間:2011-12-21 來源:網(wǎng)絡(luò) 收藏

近年來,以人臉、虹膜、視網(wǎng)膜、指紋、聲音、基因等生物特征作為識別手段的生物特征識別技術(shù)漸漸發(fā)揮出了很好的作用。這類識別屬于模式識別范疇,相比傳統(tǒng)的識別方式更安全、穩(wěn)定和方便[1]。其中,人臉識別因具有友好、方便、直接等優(yōu)點(diǎn)而成為一個熱門研究領(lǐng)域。

本文引用地址:http://m.butianyuan.cn/article/190889.htm

鑒于的并行高速處理特點(diǎn)以及設(shè)計(jì)、擴(kuò)展的靈活性,本論文采用來實(shí)現(xiàn)系統(tǒng)的設(shè)計(jì)。

1 系統(tǒng)方案設(shè)計(jì)

目前,根據(jù)是否使用人臉區(qū)域的色彩特征,將算法分為兩大類:針對彩色圖像的基于膚色檢測的算法和針對灰度圖像的基于灰度信息的算法。

本文綜合采用基于彩色圖像的膚色檢測方法和基于幾何特征的灰度檢測方法對人臉區(qū)域進(jìn)行實(shí)時跟蹤檢測。

1.1 基于的人臉檢測方案設(shè)計(jì)

本設(shè)計(jì)選取的是一種由粗及精的方法,綜合采用基于彩色圖像的膚色檢測方法和基于幾何特征的灰度檢測方法。首先基于膚色檢測在一個大的攝像頭范圍內(nèi)捕捉人臉區(qū)域,在一個最佳范圍內(nèi)定位人臉候選區(qū),實(shí)現(xiàn)人臉的粗定位,這一模塊大大減小了后續(xù)部分的搜索范圍,降低了系統(tǒng)的運(yùn)算量。在此基礎(chǔ)上,在膚色檢測所圈定的區(qū)域中,利用先驗(yàn)人臉的幾何特征,實(shí)現(xiàn)人臉檢測的目的。

本設(shè)計(jì)的算法部分在傳統(tǒng)膚色檢測算法的基礎(chǔ)上加入圖像預(yù)處理模塊、色彩平衡模塊、自適應(yīng)閾值二值化模塊、形態(tài)學(xué)濾波模塊等實(shí)現(xiàn)人臉的粗定位;在此基礎(chǔ)上,對定位出來的人臉區(qū)域進(jìn)行中值濾波、邊緣檢測等處理,如圖1所示。

69.jpg

基于上述基本算法,本系統(tǒng)最終需要搭建CMOS攝像頭、FPGA核心圖像處理單元、LCM顯示人臉區(qū)域這樣一個完整的人臉圖像處理以及檢測定位系統(tǒng)。系統(tǒng)整體架構(gòu)如圖2所示。

圖2中左部分是CMOS攝像頭設(shè)備及其控制電路,它輸出主要的數(shù)字視頻數(shù)據(jù)給CMOS Sensor Data Capture模塊,同時從該模塊獲得MCLK信號。另外,攝像頭電路需要通過I2C進(jìn)行配置,它們之間傳遞的信號主要有SDAT和SCLK。

中間的FPGA模塊主要完成輸入設(shè)備和輸出設(shè)備的配置、控制等功能,并完成從輸入到輸出的數(shù)據(jù)傳輸,是設(shè)計(jì)的核心單元。其中,主要包含CMOS攝像頭電路的數(shù)據(jù)獲取、圖像類型轉(zhuǎn)換、LCM顯示設(shè)備控制器、SDRAM控制器、I2C配置控制器等模塊。SDRAM控制器主要是用作幀緩存和圖像獲取(拍照功能);LCM控制器主要是輸出HS(行同步信號)、VS(場同步信號)、顯示數(shù)據(jù)以及顯示時鐘給LCM;圖像格式轉(zhuǎn)換模塊主要是實(shí)現(xiàn)數(shù)據(jù)格式到RGB格式的轉(zhuǎn)換,以方便后續(xù)顯示及處理。

本設(shè)計(jì)采用Altera公司的FPGA(EP2C35F672C6)作為核心處理芯片,全部模塊功能通過純硬件實(shí)現(xiàn)。采用Verilog語言編程,系統(tǒng)具有很好的便攜性、實(shí)時性、可擴(kuò)展性和移植性。

2 圖像預(yù)處理算法及實(shí)現(xiàn)

在本設(shè)計(jì)中,使用圖像預(yù)處理技術(shù)來消除環(huán)境因素對人臉檢測的影響,主要有快速中值濾波、形態(tài)學(xué)濾波和邊緣檢測。

2.1 快速中值濾波

中值濾波是一種基于統(tǒng)計(jì)排序理論的、能有效抑制噪聲的非線性信號處理技術(shù)[2]。其基本原理是把數(shù)字圖像或數(shù)字序列中一點(diǎn)的值用該點(diǎn)的一個鄰域中各點(diǎn)值的中值代替,讓周圍的像素值接近真實(shí)值,從而消除孤立的噪聲點(diǎn)。

在本設(shè)計(jì)中,選用快速中值濾波[3]來進(jìn)行圖像預(yù)處理,在快速實(shí)現(xiàn)濾波輸出的同時節(jié)省了比較邏輯單元的個數(shù),減少了資源占用率。

2.2 形態(tài)學(xué)濾波

形態(tài)學(xué)濾波器被廣泛地應(yīng)用于圖像處理和目標(biāo)識別領(lǐng)域。它的基本思想是[4]利用具有一定形態(tài)的結(jié)構(gòu)元素作為“探針”,在圖像中不斷移動來度量圖像的結(jié)構(gòu)信息,考察圖像各部分之間的相互關(guān)系,進(jìn)而提取圖像的結(jié)構(gòu)特征。

本文所述形態(tài)學(xué)濾波的目的是檢測大小為256×256像素的8位灰度圖像中的弱小目標(biāo)。在本文中,主要實(shí)現(xiàn)了腐蝕、膨脹、開運(yùn)算和閉運(yùn)算,并在此基礎(chǔ)上通過級聯(lián)開運(yùn)算和閉運(yùn)算對圖像進(jìn)行預(yù)處理。

經(jīng)過形態(tài)學(xué)濾波后,二值化后的圖像變得“黑白分明”,更符合實(shí)際的二值結(jié)果,去除了噪聲點(diǎn)或背景區(qū)域的干擾。

2.3 邊緣檢測

圖像邊緣檢測可以簡化圖像處理,廣泛應(yīng)用于圖像分割、圖像識別、紋理分析等領(lǐng)域。在數(shù)學(xué)上可以利用其亮度變化曲線的一階、二階導(dǎo)數(shù)來描述兩種不同的邊緣[5]。

本文采用Sobel邊緣檢測算子做硬件實(shí)現(xiàn),并且用于實(shí)時人臉檢測系統(tǒng)。Sobel邊緣檢測算子是綜合圖像每一個像素點(diǎn)的上下左右亮度加權(quán)和,接近模板中心的權(quán)值較大[6]。

70.jpg

從圖3和圖4可知,Sobel算子x方向和y方向的濾波分別突出了圖像的橫向和縱向的邊緣,灰度連續(xù)的部分削弱。經(jīng)過Sobel邊緣檢測之后,lena圖像的邊緣信息被提取了出來,檢測效果比較理想。

3 人臉檢測與實(shí)現(xiàn)

3.1 圖像采集和顯示

71.jpg

本系統(tǒng)中,通過攝像頭采集圖像做人臉檢測。同時,視頻檢測的結(jié)果需要通過顯示系統(tǒng)顯示結(jié)果,因此需要視頻采集電路和顯示電路[7]。

3.2 二值化及系統(tǒng)實(shí)現(xiàn)

3.2.1 人臉矩形位置確定

本設(shè)計(jì)中,利用了人臉的幾何形狀特征來精確地定位人臉區(qū)域。這里的人臉區(qū)域是指包含了人臉主要特征部位(如眼睛、鼻子、嘴巴)的一個矩形區(qū)域。

圖5給出了人臉幾何形狀的模型圖。根據(jù)人們的先驗(yàn)知識,可以假設(shè)人臉長度約是寬度的1倍到1.5倍,即:iFaceHeight1.5iFaceWidth。

以上圖作為模型,并且根據(jù)人們的先驗(yàn)經(jīng)驗(yàn),可以找出二值化后人臉區(qū)域的左右邊緣、上下邊緣以及人臉中心位置點(diǎn),這樣就可以在人臉面部區(qū)域畫一個矩形框,進(jìn)而確定人臉的上、下、左、右邊緣的位置。

3.2.2 系統(tǒng)測試結(jié)果分析

圖6和圖7是一個攝像頭采集到圖像,經(jīng)過膚色檢測二值化后加入形態(tài)學(xué)濾波,去除周圍環(huán)境類膚色區(qū)域影響的結(jié)果圖,人臉的膚色區(qū)域檢測效果較好。

72.jpg

本文綜合采用基于彩色圖像的膚色檢測方法和基于幾何特征的灰度檢測方法,設(shè)計(jì)的人臉檢測系統(tǒng)能較好地檢測人臉。下一步工作中,需對本系統(tǒng)從如下幾方面做出改進(jìn):

(1)在進(jìn)行膚色二值化時,可以采用自適應(yīng)閾值方法代替固定的統(tǒng)計(jì)得出的經(jīng)驗(yàn)閾值,即可針對不同的圖像進(jìn)行二值化,膚色檢測的效果更好。

(2)實(shí)現(xiàn)人臉面部五官的精確定位,以提高人臉檢測的精確度。

(3)光照平衡模塊的小波變換方法實(shí)現(xiàn)。采用的方法是利用小波變換[8]做3級分解,然后再對3級之后的低通濾波分量LL3做灰度平均,并且將LL3中的每個像素都賦值為該均值,相當(dāng)于對圖像做了亮度的歸一,從而去掉了圖像中的光照成分,最后做小波重構(gòu)即可。本文中已驗(yàn)證此方法可行。

(4)實(shí)現(xiàn)復(fù)雜背景下[9]的人臉區(qū)域檢測定位以及分割技術(shù)。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉