基于ADSP-BF561的視頻跟蹤系統(tǒng)的研究與實(shí)現(xiàn)
智能化是現(xiàn)代視頻監(jiān)控系統(tǒng)的重要發(fā)展方向,目標(biāo)跟蹤成為發(fā)展過程中一項(xiàng)不可缺少的重要功能。智能監(jiān)控技術(shù)是指在不依賴人為干預(yù)的情況下,采用計(jì)算機(jī)技術(shù)和圖像處理技術(shù)對(duì)攝像機(jī)拍攝的圖像數(shù)據(jù)進(jìn)行自動(dòng)分析,實(shí)現(xiàn)對(duì)圖像內(nèi)容含義的理解以及對(duì)客觀場(chǎng)景的解釋。智能監(jiān)控算法流程如圖1所示。
本文引用地址:http://cafeforensic.com/article/201610/306211.htm本文在研究視頻跟蹤系統(tǒng)相關(guān)算法和硬件結(jié)構(gòu)的基礎(chǔ)上,設(shè)計(jì)一套基于ADSP-BF561的視頻跟蹤系統(tǒng),通過控制攝像機(jī)姿態(tài)實(shí)現(xiàn)對(duì)監(jiān)控場(chǎng)景中的運(yùn)動(dòng)目標(biāo)進(jìn)行自動(dòng)識(shí)別和跟蹤,符合現(xiàn)代視頻監(jiān)控系統(tǒng)向智能化發(fā)展的趨勢(shì)。
1 系統(tǒng)總體設(shè)計(jì)方案
嵌入式處理器中數(shù)字信號(hào)處理器(Digital Signal Processor,DSP)具有強(qiáng)大的數(shù)字信號(hào)處理功能,適用于視頻圖像、語音等大量數(shù)據(jù)的實(shí)時(shí)處理。ADSP—BF561是一款集音頻、視頻圖像處理和控制于一身的雙核DSP,具有高速的內(nèi)核時(shí)鐘、靈活的存儲(chǔ)器架構(gòu)和專用的視頻接口,在視頻圖像處理方面具有較大優(yōu)勢(shì)。
采用ADSP—BF561作為處理器設(shè)計(jì)視頻跟蹤系統(tǒng)硬件平臺(tái),系統(tǒng)平臺(tái)由DSP處理器、攝像機(jī)、監(jiān)視器和云臺(tái)等部分組成,系統(tǒng)結(jié)構(gòu)如圖2所示。硬件結(jié)構(gòu)中攝像機(jī)和云臺(tái)兩部分固定為一體,云臺(tái)的運(yùn)動(dòng)反映攝像機(jī)監(jiān)控姿態(tài)的調(diào)整。DSP通過對(duì)攝像機(jī)采集的視頻圖像數(shù)據(jù)進(jìn)行跟蹤圖像處理,獲取運(yùn)動(dòng)目標(biāo)所在位置,并在監(jiān)視器上實(shí)時(shí)顯示監(jiān)控圖像。DSP根據(jù)目標(biāo)位置信息發(fā)送云臺(tái)控制指令,控制云臺(tái)運(yùn)動(dòng),調(diào)整攝像機(jī)監(jiān)控姿態(tài),使運(yùn)動(dòng)目標(biāo)保持在監(jiān)控中心附近,實(shí)現(xiàn)自動(dòng)跟蹤功能。
2 硬件設(shè)計(jì)
2.1 硬件系統(tǒng)總體設(shè)計(jì)
系統(tǒng)采用嵌入式ADSP—BF561為核心處理器構(gòu)建視頻跟蹤系統(tǒng)硬件平臺(tái)。系統(tǒng)硬件平臺(tái)主要由BF561處理器、2自由度云臺(tái)攝像機(jī)、RS232轉(zhuǎn)換器、存儲(chǔ)器、視頻編碼器、視頻解碼器、監(jiān)視器、復(fù)位電路、下載調(diào)試接口、電源和時(shí)鐘等部分組成,硬件系統(tǒng)結(jié)構(gòu)組成如圖3所示。
圖像采集設(shè)備和跟蹤單元采用2自由度云臺(tái)攝像機(jī),該模塊內(nèi)部集成了攝像系統(tǒng)、云臺(tái)系統(tǒng)及通信系統(tǒng)3部分。由攝像機(jī)采集視頻信號(hào)并通過視頻解碼芯片送至DSP,經(jīng)視頻圖像分析確定跟蹤目標(biāo)位置,由模擬彩色電視機(jī)作為監(jiān)視器顯示監(jiān)控視頻圖像。與此同時(shí),DSP通過發(fā)送相應(yīng)命令控制云臺(tái)運(yùn)動(dòng),實(shí)現(xiàn)了運(yùn)動(dòng)目標(biāo)始終處于監(jiān)控范圍內(nèi),完成自動(dòng)跟蹤功能。
2.2 視頻編解碼器
視頻編解碼器是視頻跟蹤系統(tǒng)的重要組成部分,攝像機(jī)輸出的視頻信號(hào)和監(jiān)視器直接播放的視頻信號(hào)均為模擬信號(hào)。視頻信號(hào)在進(jìn)入DSP處理前必須進(jìn)行A/D轉(zhuǎn)換成數(shù)字信號(hào),DSP處理后的視頻信號(hào)也需要進(jìn)行D/A轉(zhuǎn)換。
視頻解碼器即完成A/D轉(zhuǎn)換功能的器件,系統(tǒng)采用ADI公司的ADV7183A。ADV7183A是一款集成式視頻解碼器,無需任何配置便能自動(dòng)檢測(cè)NTSC、PAL和SECAM制式的模擬基帶電視信號(hào),并轉(zhuǎn)換成YUV4:2:2格式的數(shù)字視頻信號(hào)。BF561與ADV7183A接口原理如圖4所示。
2.3 視頻編碼器
視頻編碼器即完成D/A轉(zhuǎn)換功能的器件,系統(tǒng)采用ADI公司的ADV7179。ADV7179為集成式視頻編碼器,其可將ITU-656格式的YUV4:2:2數(shù)字視頻信號(hào)轉(zhuǎn)換成PAL、NTSC等標(biāo)準(zhǔn)制式模擬電視信號(hào)。因ADV7179需要用I2C總線對(duì)其進(jìn)行配置,但BF561內(nèi)部并未集成I2C總線,因此利用軟件模擬I2C總線進(jìn)行通信。BF561與ADV7179接口原理如圖5所示。
2.4 RS232轉(zhuǎn)換器
系統(tǒng)選用Winyork公司MCC-INOS云臺(tái)攝像機(jī),它支持工業(yè)標(biāo)準(zhǔn)RS232總線,標(biāo)準(zhǔn)UART可通過RS232電平轉(zhuǎn)換獲得,所采用的電平轉(zhuǎn)換芯片為ADM3202,其與BF561接口電路如圖6所示。將RS232總線經(jīng)電平轉(zhuǎn)換后與DSP通用異步收發(fā)器接口相連,進(jìn)而與攝像機(jī)的云臺(tái)進(jìn)行通信。
3 軟件設(shè)計(jì)
3.1 DSP雙核資源規(guī)劃
系統(tǒng)采用ADI公司的DSP芯片BF561作為主處理器,BF561內(nèi)有雙核獨(dú)特結(jié)構(gòu),給系統(tǒng)設(shè)計(jì)帶來方便。BF561雙核獨(dú)特結(jié)構(gòu),既可相互獨(dú)立運(yùn)行,也可協(xié)調(diào)處理并行運(yùn)行,提高運(yùn)算速度。根據(jù)視頻跟蹤處理算法,可對(duì)A核和B核工作進(jìn)行合理分配,使其既相互獨(dú)立互不干擾,同時(shí)共同完成自動(dòng)視頻跟蹤功能。其中,A核主要工作是完成運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤,B核主要工作內(nèi)容是完成云臺(tái)運(yùn)動(dòng)控制算法的實(shí)現(xiàn),共享存儲(chǔ)器L2作為雙核公共存儲(chǔ)器主要用于雙核間的信息交互。其具體工作內(nèi)容如下:
(1)A核。完成視頻圖像采集存儲(chǔ)至外存儲(chǔ)器中;將外存儲(chǔ)器中的圖像數(shù)據(jù)傳輸至內(nèi)核存儲(chǔ)器中;進(jìn)行運(yùn)動(dòng)目標(biāo)檢測(cè)及跟蹤運(yùn)算,計(jì)算出目標(biāo)質(zhì)心坐標(biāo)并求出目標(biāo)跟蹤矩形框。
(2)B核。根據(jù)A核計(jì)算得到的目標(biāo)質(zhì)心坐標(biāo),實(shí)現(xiàn)云臺(tái)運(yùn)動(dòng)控制算法;通過串口通信控制云臺(tái)攝像機(jī)跟蹤運(yùn)動(dòng)目標(biāo);將原視頻圖像增加目標(biāo)跟蹤矩形框,完成視頻數(shù)據(jù)實(shí)時(shí)輸出至監(jiān)視器。
(3)共享存儲(chǔ)器L2。存儲(chǔ)A核與B核通信數(shù)據(jù)與共享數(shù)據(jù),主要包括跟蹤目標(biāo)質(zhì)心坐標(biāo)、目標(biāo)跟蹤矩形框參數(shù)信息和云臺(tái)靜止標(biāo)志信息等。
根據(jù)系統(tǒng)規(guī)劃可知,BF561采用雙核協(xié)同工作方式,其雙核并行工作結(jié)構(gòu)流程如圖7所示。
3.2 視頻采集
DSP采用PPI0進(jìn)行整場(chǎng)圖像模式采集,并將整場(chǎng)圖像數(shù)據(jù)存放于外部存儲(chǔ)器SDRAM中。攝像機(jī)輸出復(fù)合視頻信號(hào)經(jīng)視頻解碼器AD7183轉(zhuǎn)換成每秒25幀,每幀625行,每行864點(diǎn)像素,每點(diǎn)像素2 Byte視頻信號(hào),由PPI0以DMA方式傳輸至SDRAM,并以PAL整場(chǎng)模式存儲(chǔ),完成視頻采集。其PPI0 DMA具體配置如下:
*Pppi0_CONTROL=0x0183;//輸入模式,整場(chǎng)模式,32包裝模式
*Pppi0_FRAME=625;//接收總行數(shù)
*Pdmal_0_X_COUNT=864*2/32;//每行接收包次數(shù),32 Byte包裝
*Pdmal_0_Y_COUNT=625;//接收總行數(shù)
*Pdmal_0_X_MODIFY=32;//傳輸間隔
*Pdmal_0_Y_MODIFY=32;//傳輸間隔
3.3 運(yùn)動(dòng)目標(biāo)檢測(cè)及跟蹤
運(yùn)動(dòng)目標(biāo)檢測(cè)及跟蹤算法為系統(tǒng)軟件的核心,現(xiàn)被處理視頻亮度信息(Frame_Compress)存儲(chǔ)于片上共享存儲(chǔ)器L2中,并在DSP的A核中實(shí)現(xiàn)運(yùn)動(dòng)目標(biāo)檢測(cè)和跟蹤算法,求出目標(biāo)質(zhì)心坐標(biāo)與跟蹤矩形框四頂點(diǎn)坐標(biāo)參數(shù)。
運(yùn)動(dòng)目標(biāo)檢測(cè)及跟蹤核心算法程序流程如圖8所示,首先將已壓縮的連續(xù)3幀圖像進(jìn)行三幀差分運(yùn)算得到灰度圖像*Gray_Image,并經(jīng)二值化、形態(tài)學(xué)濾波處理獲得準(zhǔn)確的運(yùn)動(dòng)目標(biāo)圖像* Binary_Image。目標(biāo)圖像通過連通域標(biāo)記處理得到一組與圖像大小一致的標(biāo)記信息*Conneted_Image,并經(jīng)卡爾曼跟蹤模型確定面積最大目標(biāo)在本幀圖像的位置參數(shù),包括目標(biāo)質(zhì)心坐標(biāo)(X_CENT,Y_CENT)和跟蹤矩形框四頂點(diǎn)坐標(biāo)((X_Left,Y_Up),(X_Right,Y_Up),(X_Left,Y_Down),(X_Right,Y_Down))。
由于運(yùn)動(dòng)目標(biāo)檢測(cè)及跟蹤算法是針對(duì)壓縮后的圖像進(jìn)行處理,故目標(biāo)質(zhì)心坐標(biāo)和跟蹤矩形框四頂點(diǎn)坐標(biāo)均需放大4倍處理,進(jìn)而還原成實(shí)際圖像參數(shù)值。最后將得到的實(shí)際目標(biāo)坐標(biāo)及跟蹤矩形框四頂點(diǎn)坐標(biāo)存放于共享內(nèi)存L2中,使得B核可直接調(diào)用。
3.4 云臺(tái)控制
云臺(tái)運(yùn)轉(zhuǎn)控制由BF561中的B核處理完成,B核調(diào)用共享內(nèi)存L2中的目標(biāo)質(zhì)心坐標(biāo)(X_CENT,Y_CENT),實(shí)現(xiàn)對(duì)云臺(tái)的控制。為實(shí)現(xiàn)對(duì)運(yùn)動(dòng)目標(biāo)的有效跟蹤,需在實(shí)際有效分辨率為720×576圖像進(jìn)行三級(jí)虛擬線圈劃分,具體劃分參數(shù)如圖9所示。
系統(tǒng)通過判斷目標(biāo)質(zhì)心坐標(biāo)是否超出虛擬線圈,決定云臺(tái)是否旋轉(zhuǎn),并結(jié)合所選攝像機(jī)云臺(tái)性能特點(diǎn),將云臺(tái)移動(dòng)所需角度和角速度進(jìn)行設(shè)定。采用多級(jí)線圈,較好地解決了一級(jí)線圈的不足,不僅使目標(biāo)盡可能地處于中心附近,同時(shí)也可根據(jù)目標(biāo)移動(dòng)的速度調(diào)整攝像機(jī)的旋轉(zhuǎn)速度,從而使攝像機(jī)旋轉(zhuǎn)更加平穩(wěn),獲得更好的跟蹤效果。
3.5 視頻輸出
監(jiān)控的視頻圖像存儲(chǔ)于外部存儲(chǔ)器SDRAM中,并由B核控制PPI1輸出至視頻編碼器,實(shí)現(xiàn)在監(jiān)視器上的實(shí)時(shí)播放。在視頻數(shù)據(jù)輸出前,可在原圖像的基礎(chǔ)上增加目標(biāo)跟蹤矩形框進(jìn)行輔助顯示,其矩形框4頂點(diǎn)坐標(biāo)存儲(chǔ)于共享內(nèi)存L2中,B核可直接在原圖像數(shù)據(jù)中增加矩形框數(shù)據(jù)。
BF561視頻圖像輸出方法不同,系統(tǒng)采用在緩存中靜態(tài)建立一個(gè)整場(chǎng)模式的方法,即存儲(chǔ)器內(nèi)已是標(biāo)準(zhǔn)ITU-656視頻格式,此時(shí)按地址順序直接通過PPI輸出即可。PPI以DMA的方式進(jìn)行傳送,具體配置如下:
4 系統(tǒng)測(cè)試
運(yùn)動(dòng)目標(biāo)自動(dòng)跟蹤系統(tǒng),主要通過控制云臺(tái)攝像機(jī)的姿態(tài)使運(yùn)動(dòng)目標(biāo)保持在監(jiān)控范圍內(nèi),并通過輔助矩形框鎖定目標(biāo)加以提示。當(dāng)監(jiān)控范圍內(nèi)出現(xiàn)運(yùn)動(dòng)目標(biāo)時(shí),監(jiān)視器內(nèi)便出現(xiàn)跟蹤矩形框鎖定運(yùn)動(dòng)目標(biāo)。如果運(yùn)動(dòng)目標(biāo)移動(dòng)至距離監(jiān)控畫面邊緣一定距離時(shí),攝像機(jī)將轉(zhuǎn)動(dòng)使目標(biāo)回到監(jiān)控畫面中心附近。跟蹤效果監(jiān)控畫面如圖10所示,系統(tǒng)自動(dòng)識(shí)別運(yùn)動(dòng)人員并用矩形框鎖定,如圖10(a);當(dāng)運(yùn)動(dòng)目標(biāo)移動(dòng)至監(jiān)控窗口內(nèi)一定范圍時(shí),云臺(tái)發(fā)生轉(zhuǎn)動(dòng)如圖10(b)和圖10(c)。
5 結(jié)束語
文中基于ADSP-BF561為核心處理器設(shè)計(jì)一套自動(dòng)視頻跟蹤系統(tǒng),對(duì)智能監(jiān)控系統(tǒng)中關(guān)鍵技術(shù)的實(shí)現(xiàn)進(jìn)行研究,包括運(yùn)動(dòng)目標(biāo)檢測(cè)、目標(biāo)跟蹤算法、硬件平臺(tái)搭建及攝像機(jī)的運(yùn)動(dòng)控制等。實(shí)驗(yàn)表明,系統(tǒng)可快速自動(dòng)識(shí)別運(yùn)動(dòng)目標(biāo)并進(jìn)行跟蹤,且具有一定的實(shí)時(shí)性及穩(wěn)定性。由于時(shí)間限制,系統(tǒng)在設(shè)計(jì)上仍然存在不足,在多個(gè)方面仍需進(jìn)一步完善。
評(píng)論