基于DSP的人臉識別系統(tǒng)設(shè)計
3 系統(tǒng)軟件設(shè)計
系統(tǒng)硬件調(diào)試成功后,需要提供一定的軟件算法等,以實現(xiàn)軟件和硬件的結(jié)合,在此設(shè)計中,SRAM是擴展在DSP處理器EMIF上的,DSP處理器通過讀信號的觸發(fā)將有效奇偶場數(shù)據(jù)分別存儲為兩個一維數(shù)組,以供處理。
3.1 DSP的圖像預(yù)處理
TVP5147芯片輸出的圖像數(shù)據(jù)并非RGB格式,而是以YUV格式輸出的。需要通過DSP處理器轉(zhuǎn)換成RGB格式,才能進行圖像的預(yù)處理,轉(zhuǎn)換公式如式(4)所示
DSP將圖像數(shù)據(jù)讀入內(nèi)存空間,然后對其進行運算,將得到的RGB分別放到對應(yīng)的存儲單元,并算出灰度值Gray,運算公式如式(5)所示
將最后得到的灰度值存放到對應(yīng)的數(shù)組當中。每張圖片由兩場圖片構(gòu)成,所以完整的圖片分辨率為720×576。但是對于系統(tǒng)本身無需對其每一個像素都進行轉(zhuǎn)換,所以截取其中320×240進行存儲,這樣每場的分辨率為320×120,大大降低了由YUV到灰度圖像預(yù)處理和臉部定位的時間,提高了系統(tǒng)的性能。
3.2 人臉判別流程
將得到的320×240的圖片經(jīng)過人臉的檢測后,將截取人臉的部分作為人臉樣本。設(shè)計時,人臉的所有樣本都將在顯示器上顯示出來,降低了人臉錯誤檢測的可能,一定程度上提高系統(tǒng)的準確性。
人臉的樣本分辨率為24×24,作為576維的一維向量輸入至PCA。圖8(a)為計算PCA投影矩陣的流程圖,圖8(b)為KNN分類器的工作流程圖,其中訓練樣本經(jīng)過PCA投影后的數(shù)值,不需要在每次識別中重新計算,可以作為初始化時的計算,也可存儲于掉電非易失介質(zhì)中,如Flash存儲器中,可以提高設(shè)備的運行效率,降低運算量。
如圖8所示,KNN分類器可以判斷最接近的分類,但是并不能拒絕分類,于是產(chǎn)生了任何人的臉都將被分到內(nèi)置樣本集的一類中。這樣的分類方式是不可取的,所以必須加入是否拒絕的判定,流程圖如圖9所示。
如流程圖中顯示,當樣本點經(jīng)過PCA降維后,輸送至KNN分類器進行分類,所得到的結(jié)果一定可以判定為第K類,此時不能急于定論,先求出待測點與K類標號的樣本點的歐氏距離之和sum。定義兩個閾值a和b,如果suma值則判定為第一類;如果sum>b值則判定為拒絕類;如果sum介于a和b值之間,則引入精度控制量accuracy,計算出sum與a的差值,如若小于精度控制量accuracy,則判定為第K類,否則拒絕分類。由這樣的過程,間接解決了樣本錯分和無法判否的問題。
4 試驗結(jié)果
該實驗中,選定a的值為12 400,b的值為16 200,這兩個值的確定需要進行大量的實驗,從中找出規(guī)律。x的值的大小直接影響識別的效果,文中分別選取x=4和x=5進行了測試。
(1)x=4時:程序在測試可識別庫中的分屬12個人的36幅人臉圖像時,正確識別出其中的33幅,其余3幅圖像均被判否,0個判錯。程序在測試不可識別庫中的分屬3個人的33幅人臉圖像時,22幅圖像被成功判否,11幅被誤判;
(2)x=5時:程序在測試可識別庫中的分屬12個人的36幅人臉圖像時,正確識別出其中的25幅,其余l(xiāng)l幅圖像均被判否,O幅判錯。程序在測試不可識別庫中的分屬3個人的33幅人臉圖像時,28幅圖像被成功判否,5幅被誤判。
分析上面的實驗數(shù)據(jù)可知,x=4時,可識別庫的識別率為91.6%,不可識別庫的判否率為66.7%。x=5時,可識別庫的識別率為69.4-%,不可識別庫的判否率為84.8%。因此,應(yīng)用于不同的場合時,應(yīng)選擇不同的x值,當要求盡可能拒絕外來人臉時,可選x值為5,當要求盡量識別已知人臉時,可選x值為4。
5 結(jié)束語
此人臉識別系統(tǒng)的構(gòu)建,充分考慮了其推廣性,未采用USB攝像頭作為圖像采集設(shè)備,而以通用視頻標準的模擬攝像頭取而代之,因此用戶在攝像頭選擇的時候,可以更加自由。同時該設(shè)備支持多種接口輸入,除了普通的R-jack口之外,還提供了Svideo,YPbPr和RGB等輸入方式。該設(shè)備的識別精度可達90%以上,基本滿足了識別要求。系統(tǒng)實時性好、攜帶方便,可以通過程序的修改推廣到動態(tài)圖像跟蹤、運動檢測等領(lǐng)域。
評論