基于TMS320C6713的人臉識(shí)別系統(tǒng)設(shè)計(jì)
假如系統(tǒng)初始化為從Y[9..O]端口輸出10位的YUV混合視頻數(shù)據(jù),則可知道其輸出符合以下時(shí)序,如圖5所示。本文引用地址:http://www.ex-cimer.com/article/163044.htm
圖中第一行為DATACLK信號(hào),其為TVP5147芯片提供的數(shù)據(jù)時(shí)鐘信號(hào),第二行為數(shù)據(jù)Y[9…0],當(dāng)每一行圖像開始之前,會(huì)有4個(gè)SAV信號(hào),同樣,結(jié)束之后也有4個(gè)EAV信號(hào),如圖5所示,數(shù)據(jù)是YCbCr格式,每個(gè)像素點(diǎn)的數(shù)據(jù)為4個(gè)數(shù)據(jù)組成,一次為Cb,Y,Cr,Y。而由圖5中可以看出AVID信號(hào)為高電平時(shí),表明當(dāng)前的數(shù)據(jù)為有效數(shù)據(jù)。這為CPLD采集有效數(shù)據(jù)提供了參考信號(hào)。同時(shí)TVP5147芯片還輸出FID信號(hào),該信號(hào)為奇偶場指示信號(hào)。
2.2 CPLD讀寫SRAM
存儲(chǔ)器選擇了DS1265AB,它是SRAM存儲(chǔ)器,具有存儲(chǔ)速度快的優(yōu)點(diǎn),并能夠在系統(tǒng)掉電時(shí)保存數(shù)據(jù)10年。DS1265具有1 MB的容量,20根地址線,8根數(shù)據(jù)線,另有WE,OE,CE信號(hào)輸入端。
CPLD選用EPM7128具有價(jià)格便宜、計(jì)數(shù)頻率高等優(yōu)點(diǎn)。將存儲(chǔ)器SRAM接到CPLD的IO引腳上,配合時(shí)序便能達(dá)到對(duì)SRAM讀寫的要求,原理圖,如圖6所示。
編寫CPLD程序使得輸出時(shí)序滿足SRAM的存儲(chǔ)要求,當(dāng)然對(duì)于設(shè)計(jì)的具體要求,利用兩片SRAM分別存儲(chǔ)奇偶場的數(shù)據(jù),SRAM的切換是由奇偶場信號(hào)FID控制多片74HC245實(shí)現(xiàn)的,詳細(xì)過程,如圖7所示。當(dāng)FID處于高電平時(shí),此時(shí)M1和M4使能,此時(shí)CPLD將地址信號(hào)CPLDaddr輸入SRAM1中,DSP將地址信號(hào)DSPaddr輸入至SRAM2中,同時(shí)M6和M8使能,由圖中可以看出,此時(shí)CPLD正向SRAM1寫入數(shù)據(jù),而DSP正從SRAM2中讀取數(shù)據(jù),同時(shí)M10使能,CPLD的信號(hào)CPLDctl控制SRAM1的讀寫,而DSP的信號(hào)DSPctl控制SRAM2的讀寫,當(dāng)FID轉(zhuǎn)為低電平時(shí),正好將SRAM1和SRAM2實(shí)現(xiàn)了交換。以這種方式構(gòu)建的系統(tǒng),能同時(shí)將視頻的兩場數(shù)據(jù)同時(shí)記錄下來,實(shí)現(xiàn)了CPLD和DSP的有機(jī)結(jié)合。至此CPLD的任務(wù)就是將有效的圖像數(shù)據(jù)存儲(chǔ)到對(duì)應(yīng)的SRAM中,當(dāng)TVP5147芯片AVID引腳上升沿時(shí),置地址為初始值00h,即從首地址依次往后寫入。每一個(gè)數(shù)據(jù)時(shí)鐘信號(hào)DATACLK上升沿時(shí)將TVP5147輸出的Y[9…2]存儲(chǔ)到當(dāng)前地址單元,Y0和Y1位舍棄,因?yàn)樗x擇的SRAM數(shù)據(jù)位為8位,當(dāng)放棄Y0和Y1位后,降低了圖像數(shù)據(jù)的精度,但對(duì)識(shí)別效果的影響卻很小,然后隨著DATACLK每次上升沿的來臨,CPLD將地址單元加1,這樣實(shí)現(xiàn)每一場數(shù)據(jù)的寫入。當(dāng)切換至另一場數(shù)據(jù)時(shí),執(zhí)行的過程相同,只是存儲(chǔ)的對(duì)象被74HC245強(qiáng)制更改,如此循環(huán),便可將每場數(shù)據(jù)記錄下來。
2.3 圖像輸出系統(tǒng)的設(shè)計(jì)
系統(tǒng)設(shè)計(jì)時(shí)為了減輕負(fù)擔(dān),采用電視監(jiān)控的方法,將小型電視機(jī)通過TI公司的視頻編碼芯片THS8135連接至DSP總線,將得到的YUV數(shù)據(jù)通過THS8135直接輸出至電視AV的視頻接收端,并且通過DSP可以將一些信息顯示到電視屏幕上,這樣使得識(shí)別的過程更加人性化。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)硬件調(diào)試成功后,需要提供一定的軟件算法等,以實(shí)現(xiàn)軟件和硬件的結(jié)合,在此設(shè)計(jì)中,SRAM是擴(kuò)展在DSP處理器EMIF上的,DSP處理器通過讀信號(hào)的觸發(fā)將有效奇偶場數(shù)據(jù)分別存儲(chǔ)為兩個(gè)一維數(shù)組,以供處理。
3.1 DSP的圖像預(yù)處理
TVP5147芯片輸出的圖像數(shù)據(jù)并非RGB格式,而是以YUV格式輸出的。需要通過DSP處理器轉(zhuǎn)換成RGB格式,才能進(jìn)行圖像的預(yù)處理,轉(zhuǎn)換公式如式(4)所示
DSP將圖像數(shù)據(jù)讀入內(nèi)存空間,然后對(duì)其進(jìn)行運(yùn)算,將得到的RGB分別放到對(duì)應(yīng)的存儲(chǔ)單元,并算出灰度值Gray,運(yùn)算公式如式(5)所示
將最后得到的灰度值存放到對(duì)應(yīng)的數(shù)組當(dāng)中。每張圖片由兩場圖片構(gòu)成,所以完整的圖片分辨率為720×576。但是對(duì)于系統(tǒng)本身無需對(duì)其每一個(gè)像素都進(jìn)行轉(zhuǎn)換,所以截取其中320×240進(jìn)行存儲(chǔ),這樣每場的分辨率為320×120,大大降低了由YUV到灰度圖像預(yù)處理和臉部定位的時(shí)間,提高了系統(tǒng)的性能。
3.2 人臉判別流程
將得到的320×240的圖片經(jīng)過人臉的檢測后,將截取人臉的部分作為人臉樣本。設(shè)計(jì)時(shí),人臉的所有樣本都將在顯示器上顯示出來,降低了人臉錯(cuò)誤檢測的可能,一定程度上提高系統(tǒng)的準(zhǔn)確性。
評(píng)論