周傳璘 ,肖永軍,蘇貴坡,曾慶棟
(1.孝感學(xué)院 物理與電子信息工程學(xué)院,湖北 孝感 432000;2.中國人民解放軍61491部隊(duì),河南 許昌 461131)
責(zé)任編輯:任健男
視頻目標(biāo)跟蹤是當(dāng)前計(jì)算機(jī)視覺中非?;钴S的一個(gè)研究領(lǐng)域,廣泛用于如機(jī)載、艦載、對(duì)空檢測(cè)等場(chǎng)合的軍用目標(biāo)。視頻目標(biāo)跟蹤是采用重心、形心或灰度等處理方法,結(jié)合目標(biāo)識(shí)別理論,對(duì)各種視頻目標(biāo)進(jìn)行跟蹤與識(shí)別處理。而視頻圖像處理技術(shù)(采集、處理及輸出)是目標(biāo)跟蹤中一個(gè)重要分支。在傳統(tǒng)的視頻處理方案中,視頻采集及處理主要由分立元件構(gòu)成,電路復(fù)雜、可靠性差。隨著半導(dǎo)體及集成電路技術(shù)發(fā)展,許多集成度高,功能強(qiáng)大的視頻編解碼芯片日漸主宰應(yīng)用市場(chǎng)。TMS320DM64X系列DSP具有多種視頻外設(shè)接口,無需復(fù)雜的外圍電路,即可與大多數(shù)視頻編解碼芯片無縫連接。根據(jù)項(xiàng)目實(shí)際需求,筆者以TMS320DM642為核心,搭配一些外圍視頻編解碼芯片(如SAA7113H和SAA7126H)和其他芯片,設(shè)計(jì)了光電目標(biāo)跟蹤視頻的采集及處理系統(tǒng),用于采集及處理由CCD輸出的25 f/s的視頻流,結(jié)合一定算法,提取出目標(biāo)存在情況下的光斑坐標(biāo)位置信息,通過異步串行口將坐標(biāo)信息輸出,為下一級(jí)控制電路提供依據(jù)。
TMS320DM642(簡(jiǎn)稱DM642)是TI公司推出的一款針對(duì)多媒體處理應(yīng)用的定點(diǎn)DSP。C6000系列CPU采用哈佛結(jié)構(gòu),其程序總線與數(shù)據(jù)總線分開,取指令與執(zhí)行指令可以并行運(yùn)行。主要由程序取指、分配及譯碼單元、2個(gè)對(duì)稱的數(shù)據(jù)通路(A和B)、2個(gè)對(duì)稱的通用寄存器組、2組對(duì)稱的功能單元(每組4個(gè))、控制寄存器組和控制邏輯以及中斷邏輯等組成。主要具有以下特點(diǎn):
1)600 MHz時(shí)鐘頻率,4800 MI/s(兆指令/秒)的處理能力。
2)改進(jìn)的超長(zhǎng)指令字(VLIW)DSP核,CPU內(nèi)包含了64個(gè)32位的通用寄存器和8個(gè)功能單元。
3)1056 kbyte的片內(nèi)存儲(chǔ)器,可構(gòu)成兩級(jí)Cache結(jié)構(gòu)(包括程序Cache和數(shù)據(jù)Cache)。
4)2個(gè)外部存儲(chǔ)器接口,即1個(gè)64位寬度(EMIFA)和 1個(gè) 16位寬度 (EMIFB)。 支持與同步存儲(chǔ)器(SDRAM,SBSRAM,ZBTSRAM)和非同步存儲(chǔ)器(SRAM,EPROM,F(xiàn)lash等)的無縫接口。增強(qiáng)的DMA控制器(EDMA),具有64個(gè)獨(dú)立的DMA通道。
5)3個(gè)多通道緩沖串行口(McBSP),3個(gè)32位通用計(jì)時(shí)器(Timer),16 個(gè)通用 I/O 引腳(GPIO),3.3 V I/O,1.2 V或1.4 V內(nèi)核電壓。
6)3個(gè)可配置的VP(視頻)端口,可靈活配置成視頻捕獲或視頻輸出和TSI(傳輸流接口)模式。
根據(jù)系統(tǒng)功能需求,設(shè)計(jì)方案如圖1所示。系統(tǒng)以DM642為核心,由CCD攝像頭采集的圖像數(shù)據(jù),經(jīng)視頻解碼器SAA7115芯片轉(zhuǎn)換為BT.656格式的數(shù)字信號(hào),送入DM642進(jìn)行處理。一方面將處理后的視頻圖像寫入輸出幀緩沖FIFO中,控制視頻編碼芯片SAA7121將其轉(zhuǎn)換為PAL或NTSC標(biāo)準(zhǔn)制式的模擬電視信號(hào)輸出。另一方面通過一定的算法處理,提取出目標(biāo)位置信息,并通過RS-232串口,將數(shù)據(jù)輸出。由一片CPLD實(shí)現(xiàn)系統(tǒng)時(shí)鐘的管理,協(xié)調(diào)各芯片的工作時(shí)序,并進(jìn)行Flash分頁、邏輯控制和相關(guān)寄存器配置等。
圖1 基于DM642的系統(tǒng)框圖
因?yàn)镈M642作為統(tǒng)一程序/數(shù)據(jù)空間的第2級(jí)緩存,空間僅為256 kbyte,需要通過EMIF接口外擴(kuò)SDRAM以增加系統(tǒng)的存儲(chǔ)空間。該系統(tǒng)的SDRAM選用MT48LC4M32B2,其主要特點(diǎn)為:同步訪問,讀寫操作需要時(shí)鐘;動(dòng)態(tài)存儲(chǔ),芯片需要定時(shí)刷新。動(dòng)態(tài)存儲(chǔ)器中同步技術(shù)的應(yīng)用,使得芯片的讀寫速度從以前的60~70 ns減少到目前的6~7 ns,非常適用于圖像處理等需要大容量存儲(chǔ)器的應(yīng)用場(chǎng)合。
DM642的EMIF可以靈活地設(shè)置SDRAM地址的結(jié)構(gòu)參數(shù),包括列地址數(shù)目(頁的大?。?、行地址數(shù)目(每個(gè)bank中頁的數(shù)量)以及存儲(chǔ)體的數(shù)量(打開的頁面數(shù)量)。通過設(shè)置上述參數(shù),DSP最多能夠同時(shí)激活SDRAM中4個(gè)不同頁,這些頁可以集中在一個(gè)CE空間中,也可以跨越多個(gè)CE空間,一個(gè)存儲(chǔ)體一次只能打開一頁。C64x的EMIF還支持SDRAM的自刷新模式,并采用LRU(Least Recently Used)的頁面置換策略,可以提供更高的接口性能。圖2為C64x EMIFA與64 Mbit SDRAM的接口模式。
圖2 C64x EMIFA與SDRAM的接口模式
DM642有3個(gè)視頻端口外圍設(shè)備。這些視頻端口外設(shè)可作為視頻采集端口,視頻顯示端口,或作為傳輸流接口采集端口(TSI)。視頻端口由A和B兩個(gè)通道組成,兩個(gè)通道之間存在一個(gè)可分開的5120 byte的采集/顯示緩沖區(qū)。整個(gè)端口經(jīng)常被配置成只進(jìn)行視頻采集或者視頻顯示。
本系統(tǒng)硬件設(shè)計(jì)中,使用兩個(gè)視頻端口,其中可再分的視頻端口0連接SAA7115HL解碼器用作視頻輸入端口,該口通過一個(gè)RCA類型的視頻插座和一個(gè)4針的低噪聲S-Video接口連接到視頻源(CCD攝像機(jī)),視頻端口2連接視頻編碼器SAA7121作為視頻輸出至電視機(jī)顯示。DM642與SAA7115和SAA7121的連接接口見圖3,DM642對(duì)視頻編解碼芯片的控制均采用I2C總線進(jìn)行編程實(shí)現(xiàn)。
圖3 DM642與編解碼芯片接口
軟件系統(tǒng)執(zhí)行流程如圖4所示。系統(tǒng)上電初始化后,開始接收CCD視頻圖像,對(duì)輸入圖像進(jìn)行加權(quán)均值濾波的預(yù)處理,以濾除圖像噪聲,接著進(jìn)行自適應(yīng)閾值分割,以求出最佳閾值,并對(duì)目標(biāo)進(jìn)行判斷。如果符合光斑需求,認(rèn)為目標(biāo)存在,并按照一定算法計(jì)算目標(biāo)位置信息,最終輸出有效的目標(biāo)位置信息;如果目標(biāo)不存在,則直接輸出某一特定信息。
圖4 系統(tǒng)算法執(zhí)行流程
圖像的預(yù)處理有多種的濾波方法,如中值濾波、均值濾波和加權(quán)均值濾波等。加權(quán)均值濾波是對(duì)均值濾波的改進(jìn),對(duì)于鄰域內(nèi)距當(dāng)前像素越近的點(diǎn),其加權(quán)系數(shù)就越大,則像素的加權(quán)值就最大。該算法對(duì)信標(biāo)光斑邊緣具有較強(qiáng)的保留能力,在一定程度上克服了均值濾波濾除噪聲的同時(shí)使得目標(biāo)邊緣模糊化嚴(yán)重的缺陷,且算法較為簡(jiǎn)單,本系統(tǒng)中采用該算法進(jìn)行圖像預(yù)處理。
圖像選取3×3的鄰域,為避免除法運(yùn)算,濾波算法采用下式計(jì)算
式中:“<<”表示左移;“>>”表示右移;f(x,y)為輸入至濾波器的原始圖像;g(x,y)為處理后圖像。
圖像的自適應(yīng)閾值分割法是指通過對(duì)圖像進(jìn)行逐像素掃描并將像素標(biāo)記為對(duì)象或背景來實(shí)現(xiàn)對(duì)圖像的分割,對(duì)像素的標(biāo)記取決于像素灰度級(jí)大于還是小于閾值T[5]。算法的實(shí)現(xiàn)步驟如下:
1)求出圖像中最小和最大的灰度值Z1和Zk,令閾值初值 T0=(Z1+Zk)/2。
2)根據(jù)閾值Tk將圖像分割成目標(biāo)和背景兩部分,求出兩部分的平均灰度值ZO和ZB
式中:f(i,j)是圖像上(i,j)點(diǎn)的灰度值;N(i,j)是(i,j)點(diǎn)的權(quán)重系數(shù)。
3)求出新的閾值 Tk+1=(ZO+ZB)/2。
4)如果Tk=Tk+1或≤ε(ε為一較小的值),則結(jié)束,否則k←k+1,轉(zhuǎn)到步驟2)重新計(jì)算。
DM642需要完成的最核心的工作就是對(duì)視頻進(jìn)行目標(biāo)光斑的位置信息提取,常用的光斑中心提取方法有很多,如質(zhì)心定位法、形心定位法、峰值定位法、匹配定位法和投影中心法[4-7]。不同的定位方法得到位置精度也不一樣,文獻(xiàn)[7]對(duì)各種方法進(jìn)行了討論。因質(zhì)心定位法充分反映了目標(biāo)的能量分布狀況,在理想的情況下定位精度小于0.05個(gè)像素,且適用的光斑半徑范圍大?;诖?,為避免計(jì)數(shù)溢出的問題發(fā)生,筆者選用了改進(jìn)的質(zhì)心定位算法[6]。
若目標(biāo)區(qū)域?yàn)?,則質(zhì)心的位置為
式中:xi,j和 yi,j分別為目標(biāo)區(qū)域中像元(i,j)的橫縱坐標(biāo);f(i,j)為像元(i,j)的灰度值;T 為像素閾值。
為驗(yàn)證系統(tǒng)硬件設(shè)計(jì)及軟件處理算法的有效性,進(jìn)行了相關(guān)的測(cè)試實(shí)驗(yàn)。通過CCD采集約25 s、共500幀的模擬視頻圖像,經(jīng)DM642處理后送入計(jì)算機(jī)上的視頻采集卡保存視頻圖像,并利用計(jì)算機(jī)的異步串行口(SCI)接收并提取DM642輸出的具有一定格式的數(shù)據(jù),將接收數(shù)據(jù)送入Matlab中繪圖,圖5為計(jì)算機(jī)視頻采集到的經(jīng)過DM642視頻端口2輸出回顯的視頻照片,光斑平均灰度值為250,背景平均灰度值為140,圖6為經(jīng)DM642輸出的目標(biāo)坐標(biāo)隨時(shí)間的變化數(shù)據(jù)曲線。
圖5 DM642處理后輸出的視頻圖像
圖6 DM642輸出的光斑坐標(biāo)
視頻圖像跟蹤是目前較為活躍的一個(gè)研究領(lǐng)域,而視頻圖像采集及目標(biāo)位置信息提取成敗是整個(gè)跟蹤系統(tǒng)的關(guān)鍵。筆者以DM642為核心,設(shè)計(jì)了視頻圖像采集及處理系統(tǒng),介紹了系統(tǒng)的硬件設(shè)計(jì)及軟件算法處理,分別介紹了加權(quán)均值濾波、自適應(yīng)閾值分割、質(zhì)心提取算法,最后進(jìn)行了系統(tǒng)采集CCD模擬圖像提取目標(biāo)光斑坐標(biāo)的實(shí)驗(yàn)。經(jīng)實(shí)驗(yàn)證實(shí),該系統(tǒng)工作可靠,能在一定背景干擾下穩(wěn)定提取目標(biāo)信息。本文的創(chuàng)新點(diǎn)是采用“TMS320DM642+編解碼芯片”對(duì)CCD輸入模擬圖像采集、處理,并應(yīng)用一系列算法在一定背景干擾下成功提取出目標(biāo)坐標(biāo)位置信息,通過串口發(fā)送。
[1]李方慧,王飛,何佩琨.TMS320C6000系列DSPs原理與應(yīng)用[M].2版.北京:電子工業(yè)出版社,2003.
[2]劉瓊,安濤,金鋼,等.基于DM642視頻采集處理系統(tǒng)硬件設(shè)計(jì)[J].微計(jì)算機(jī)信息,2007,23(2):180-182.
[3]王躍宗,劉京會(huì).TMS320DM642 DSP應(yīng)用系統(tǒng)設(shè)計(jì)與開發(fā)[M].北京:人民郵電出版社,2009.
[4]TICompany.TMS320DM642 video imaging fixed-point digital signal processor data manual[EB/OL].[2010-03-21].http://focus.ti.com/lit/ds/symlink/tms320dm642.pdf.
[5]李曉峰.星地激光通信鏈路原理與技術(shù)[M].北京:國防工業(yè)出版社,2007.
[6]李曉峰,羅彤,鄧科.采用CCD的空間光通信光斑位置提取重心算法的分析及實(shí)驗(yàn)[J].光通信技術(shù),2004(6):13-15.