目前,視頻運動(dòng)控制卡的研究已經(jīng)成為熱點(diǎn)。本文針對TI公司的視頻高速處理芯片TMS320DM642,設計了對目標物體進(jìn)行視頻實(shí)時(shí)跟蹤的運動(dòng)控制卡。筆者希望通過(guò)本文分享DM642平臺應用中的一些經(jīng)驗。 1 系統方案與原理 系統主要由視頻解碼器、CPLD采集控制、TMS320-DM642、視頻編碼器等部分組成。其總體框架如圖1所示。CCD攝像頭攝取視頻圖像,輸出標準 PAL制式的模擬視頻信號。視頻解碼器收到模擬視頻信號,將其轉換為標準格式的數字視頻數據流,由CPLD控制視頻解碼器將數據采集到高速緩存中暫存,避免了數字視頻數據長(cháng)時(shí)間占用DSP外部總線(xiàn)。然后DSP的EDMA控制器通過(guò)DMA方式從高速緩存中將視頻數據搬運到SDRAM中,采集到的視頻數據經(jīng)過(guò) DSP圖像處理后,一方面通過(guò)視頻編碼器將圖像數據以PAL制式的模擬信號傳送給視頻轉換盒,然后通過(guò)USB接口連接PC,顯示跟蹤結果。另一方面, DSP通過(guò)串口發(fā)送與目標物體三維坐標相關(guān)的控制命令,從而控制驅動(dòng)器操縱舵機,實(shí)現對目標物體的跟蹤與抓取。 ![]() 2 圖像采集的CPLD控制 系統采用CPLD控制視頻解碼器SAA7111A采集圖像數據,送到高速緩存。SAA7111A芯片提供了很多同步信號來(lái)實(shí)現系統工作同步,邏輯控制器對這些信號進(jìn)行邏輯運算,完成同步控制。 圖2為控制圖像采集的邏輯框圖。其中虛線(xiàn)框部分由CPLD完成。CPLD上電后,首先使D觸發(fā)器輸出為高電平,控制FIFO寫(xiě)信號或門(mén)中的1路信號為高電平,這樣FIFO寫(xiě)信號禁止,從而關(guān)閉圖像采集開(kāi)關(guān)。行計數器和像素計數器處于等待計數狀態(tài)。待DSP、SAA7111A、EDMA和FIFO初始化完成后,由DSP發(fā)出啟動(dòng)圖像采集的信號。在VREF為高電平且HREF為所要行時(shí),行計數器開(kāi)始計數,達到512行時(shí)行計數器復位。同時(shí),在HREF為高電平且像素是想要的像素時(shí),像素計數器開(kāi)始計數,并在達到512個(gè)像素時(shí)計數器復位。經(jīng)過(guò)SAA7111解碼得到的PAL制式的圖像最大分辨率為720× 576,要求采集的圖像大小為512×512像素,只取其中部分像素。SAA7111A的像素時(shí)鐘LLC2頻率為13.5 MHz,作為CPLD的工作時(shí)鐘。由SAA7111A的時(shí)序圖可知,輸出圖像分為奇偶單場(chǎng)。奇偶單場(chǎng)中的VREF高電平都對應行有效,單場(chǎng)為288行 (288個(gè)HREF);輸出VREF低電平表示場(chǎng)消隱信號,為25行(25個(gè)HREF)。由于單場(chǎng)為256行,要求采集圖像為512行,所以不采集單場(chǎng)有效行的前16行和后16行圖像數據。此處設計行計數器是用來(lái)達到取中間256行有效像素的目地。圖3為采集一場(chǎng)圖像的時(shí)序仿真圖。同樣,輸出的HREF高電平表示1行有效像素,為720個(gè)LLC2周期,每行要求只采集中間的512個(gè)像素。因此編寫(xiě)像素計數器,目地是在HREF上升沿出現后,取中間的512 個(gè)像素作為有用的像素。 ![]() ![]() 3 DSP的軟件系統設計 3.1 雙目視覺(jué)算法 本文所采用的攝像機的空間關(guān)系如圖4所示。假設C1與C2攝像機的焦距相等,各內部參數也相等,且2個(gè)攝像機的光軸平行,x軸重合。由于光軸與圖像平面垂直,故2個(gè)攝像機的圖像坐標系x軸重合,y軸平行。因此,將第1個(gè)攝像機沿其z軸平移一段距離后與第2個(gè)攝像機完全重合。 當雙攝像機這樣配置時(shí),2個(gè)攝像機坐標系只相差x軸方向上的1個(gè)平移,將平移距離1記為b。 如圖4所示,O1O2為C1及C2坐標的x軸。PO1O2平面與2個(gè)圖像平面I1及I2的交線(xiàn)分別為E1和E2。由于2個(gè)圖像平面位于同一平面,則E1與 E2為該平面上的同一直線(xiàn)。又由于圖像平面平行于x軸,故E1和E2與x軸平行。P1和P2分別為O1P與I1,及O2P與I2的交點(diǎn),則P1與P2分別在E1和E2上。事實(shí)上,一幅圖像上的任一點(diǎn),在另一幅圖像上的對應點(diǎn)只可能位于1條特定的被稱(chēng)為極線(xiàn)的直線(xiàn)上,而E1和E2就是此系統的2條極線(xiàn)。 ![]() 假設C1坐標系為x1y1z1,C2坐標系為x2y2z2。在上述攝像機配置下,若任何空間點(diǎn)P的坐標在C1坐標系下為(x1,y1,zz),在C2坐標系下為(x1-b,y1,z1)。由中心攝影的比例關(guān)系可得: ![]() ![]() 可見(jiàn),由P1與P2的圖像坐標(u1,v1)、(u2,v2)可求出空間點(diǎn)P的三維坐標x1、y2、z1。 上述公式組中,b稱(chēng)為基線(xiàn)(baseline)長(cháng)度,(u1-u2)稱(chēng)為視差(disparity)。分析表明,基線(xiàn)長(cháng)度越長(cháng),x1、y1、z1的計算相對誤差越小。但基線(xiàn)長(cháng)度不可太長(cháng),否則,由于物體各部分的互相遮擋,2個(gè)攝像機可能不能同時(shí)觀(guān)察到P點(diǎn)。視差是由于雙攝像機位置不同,使P點(diǎn)在圖像中投影點(diǎn)的位置不同引起的。由z1式可見(jiàn),P點(diǎn)的距離越遠(即z1越大),視差越小。事實(shí)上,當P點(diǎn)趨于無(wú)窮遠時(shí),O1P與O2P趨于平行,視差趨于零。 3.2 嵌入式實(shí)時(shí)系統DSP/BIOS設置 本文對嵌入式實(shí)時(shí)系統DSP/BIOS的配置分為4個(gè)部分: ①系統設置。配置系統的存儲器為外部SDRAM,并指定存儲地址。 ②實(shí)時(shí)分析。指定調試函數,用于記錄系統運行時(shí)間和調試結果。 ③任務(wù)調度。采用RF5框架,定義了4個(gè)執行任務(wù),分別完成視頻輸入、處理、控制、輸出。 ④同步控制。用于完成上位機對目標物體的設定。 系統DSP/BIOS設置如圖5所示。 ![]() ![]() 圖8中第1行為視頻跟蹤卡應用在由舵機搭建手臂上,對三維空間小球的實(shí)時(shí)跟蹤效果圖。第2行為視頻控制卡反饋回PC機的4路圖像:第1路為左攝像頭拍攝的真實(shí)圖像,第2路為右攝像頭拍攝的真實(shí)圖像,第3路為對第1路圖像中的小球進(jìn)行顏色識別后圖像分割的效果圖,第4路為對第2路圖像中的小球進(jìn)行顏色識別后圖像分割的效果圖。 ![]() ![]() 結語(yǔ) 本文設計的視頻檢測運動(dòng)控制卡,可以在三維空間內準確定位目標物體,同時(shí)采用動(dòng)態(tài)跟蹤的方式對目標物體進(jìn)行夾取。采用DSP與CPLD相結合的方式,并嵌入實(shí)時(shí)DSP/BIOS操作系統,提高了系統對視頻處理的速度。該系統定位準確,功耗低,適合應用于移動(dòng)機器人等領(lǐng)域。 參考文獻 1. Wu Liming.Li Dongdong.Wang Guitang Design of Realtime Image Acquisition System of IC Wafer 2007 2. 孫詠.黃丹丹.任俊.李志能 CPLD在DSP實(shí)時(shí)圖像采集系統中的應用 [期刊論文] -江南大學(xué)學(xué)報(自然科學(xué)版)2006(2) 3. 龔乃建.尹崗 DM642的I2C總線(xiàn)配置與應用 [期刊論文] -單片機與嵌入式系統應用2008(7) 4. 曹磊.范彩霞 基于RF5框架的視頻處理系統研究 [期刊論文] -單片機與嵌入式系統應用2008(6) 作者: 張衍儒 (山東大學(xué)) 武潁 (哈爾濱工程大學(xué)) 來(lái)源:《單片機與嵌入式系統應用 》 2009(7) |