基于DSP的人臉識別系統設計
1.3 KNN分類(lèi)器的構建
KNN的實(shí)現分訓練和識別兩步。訓練時(shí),把每類(lèi)樣本降維后的結果作為KNN的輸入。K近鄰算法將一個(gè)測試點(diǎn)x分類(lèi)為與它最接近的K個(gè)近鄰中出現最多的那個(gè)類(lèi)別,從測試樣本點(diǎn)開(kāi)始生長(cháng),不斷擴大區域,直到包含進(jìn)K個(gè)訓練樣本點(diǎn)為止,并且把測試樣本點(diǎn)的類(lèi)別歸為這最近K個(gè)訓練樣本點(diǎn)中出現頻率最大的類(lèi)別。如圖3所示,圓圈表示待識別數據所處的位置,選擇K值為3時(shí),選中實(shí)線(xiàn)圓中的3個(gè)數據,識別結果為三角形代表的類(lèi);選擇K值為5時(shí),選中虛線(xiàn)圓中的5個(gè)數據,識別結果為正方形代表的類(lèi)。所以選取恰當的K值對分類(lèi)的結果有很大影響。如果K值選取過(guò)大時(shí),可能能較正確地分類(lèi),但是同時(shí)犧牲了性能,提高了計算復雜度。如果K值選取過(guò)小,則大大降低了計算復雜度,但是可能會(huì )影響分類(lèi)的準確性。本文引用地址:http://dyxdggzs.com/article/151846.htm
2 系統硬件設計
系統設計時(shí)選用DSP6713,這是TI公司生產(chǎn)的C6000系列的浮點(diǎn)處理器,其采用了VLIW體系結構,指令運行的等效周期數較低,運行速度較快。圖像的采集采用了PAL制式輸出的普通攝像頭加上TI公司生產(chǎn)的圖像編碼芯片TVP5147,該芯片支持多種制式,多種接口輸入,并可以輸出YUV格式的視頻數據,同時(shí)提供行同步信號和垂直同步信號等。數據暫存使用CPLD和SRAM實(shí)現。設計系統構成,如圖4所示。
2.1 TVP5147芯片
系統上電時(shí),DSP首先對TVP5147初始化,其通過(guò)I2C總線(xiàn)實(shí)現,DSP自帶I2C總線(xiàn)控制器。芯片I2C地址是由芯片引腳I2CA的電平控制的,如該引腳接高電平,則I2C寫(xiě)地址為0xB8,否則為OxBB。
假如系統初始化為從Y[9..O]端口輸出10位的YUV混合視頻數據,則可知道其輸出符合以下時(shí)序,如圖5所示。
圖中第一行為DATACLK信號,其為T(mén)VP5147芯片提供的數據時(shí)鐘信號,第二行為數據Y[9…0],當每一行圖像開(kāi)始之前,會(huì )有4個(gè)SAV信號,同樣,結束之后也有4個(gè)EAV信號,如圖5所示,數據是YCbCr格式,每個(gè)像素點(diǎn)的數據為4個(gè)數據組成,一次為Cb,Y,Cr,Y。而由圖5中可以看出AVID信號為高電平時(shí),表明當前的數據為有效數據。這為CPLD采集有效數據提供了參考信號。同時(shí)TVP5147芯片還輸出FID信號,該信號為奇偶場(chǎng)指示信號。
2.2 CPLD讀寫(xiě)SRAM
存儲器選擇了DS1265AB,它是SRAM存儲器,具有存儲速度快的優(yōu)點(diǎn),并能夠在系統掉電時(shí)保存數據10年。DS1265具有1 MB的容量,20根地址線(xiàn),8根數據線(xiàn),另有WE,OE,CE信號輸入端。
CPLD選用EPM7128具有價(jià)格便宜、計數頻率高等優(yōu)點(diǎn)。將存儲器SRAM接到CPLD的IO引腳上,配合時(shí)序便能達到對SRAM讀寫(xiě)的要求,原理圖,如圖6所示。
編寫(xiě)CPLD程序使得輸出時(shí)序滿(mǎn)足SRAM的存儲要求,當然對于設計的具體要求,利用兩片SRAM分別存儲奇偶場(chǎng)的數據,SRAM的切換是由奇偶場(chǎng)信號FID控制多片74HC245實(shí)現的,詳細過(guò)程,如圖7所示。當FID處于高電平時(shí),此時(shí)M1和M4使能,此時(shí)CPLD將地址信號CPLDaddr輸入SRAM1中,DSP將地址信號DSPaddr輸入至SRAM2中,同時(shí)M6和M8使能,由圖中可以看出,此時(shí)CPLD正向SRAM1寫(xiě)入數據,而DSP正從SRAM2中讀取數據,同時(shí)M10使能,CPLD的信號CPLDctl控制SRAM1的讀寫(xiě),而DSP的信號DSPctl控制SRAM2的讀寫(xiě),當FID轉為低電平時(shí),正好將SRAM1和SRAM2實(shí)現了交換。以這種方式構建的系統,能同時(shí)將視頻的兩場(chǎng)數據同時(shí)記錄下來(lái),實(shí)現了CPLD和DSP的有機結合。至此CPLD的任務(wù)就是將有效的圖像數據存儲到對應的SRAM中,當TVP5147芯片AVID引腳上升沿時(shí),置地址為初始值00h,即從首地址依次往后寫(xiě)入。每一個(gè)數據時(shí)鐘信號DATACLK上升沿時(shí)將TVP5147輸出的Y[9…2]存儲到當前地址單元,Y0和Y1位舍棄,因為所選擇的SRAM數據位為8位,當放棄Y0和Y1位后,降低了圖像數據的精度,但對識別效果的影響卻很小,然后隨著(zhù)DATACLK每次上升沿的來(lái)臨,CPLD將地址單元加1,這樣實(shí)現每一場(chǎng)數據的寫(xiě)入。當切換至另一場(chǎng)數據時(shí),執行的過(guò)程相同,只是存儲的對象被74HC245強制更改,如此循環(huán),便可將每場(chǎng)數據記錄下來(lái)。
2.3 圖像輸出系統的設計
系統設計時(shí)為了減輕負擔,采用電視監控的方法,將小型電視機通過(guò)TI公司的視頻編碼芯片THS8135連接至DSP總線(xiàn),將得到的YUV數據通過(guò)THS8135直接輸出至電視AV的視頻接收端,并且通過(guò)DSP可以將一些信息顯示到電視屏幕上,這樣使得識別的過(guò)程更加人性化。
評論