邱文英,于正林,陳艦波
(長(zhǎng)春理工大學(xué) 機(jī)電工程學(xué)院,長(zhǎng)春130022)
對(duì)于可視目標(biāo)的識(shí)別與跟蹤是圖像處理、計(jì)算機(jī)視覺、模式識(shí)別等領(lǐng)域的重要課題。目標(biāo)識(shí)別跟蹤系統(tǒng)是實(shí)現(xiàn)可視目標(biāo)的識(shí)別與跟蹤的重要手段,它能對(duì)目標(biāo)進(jìn)行直觀的跟蹤并且在低空使用較雷達(dá)優(yōu)越,在跟蹤冷目標(biāo)時(shí)較紅外優(yōu)越,特別是在跟蹤近距目標(biāo)時(shí),它具有顯示直觀、有利于截獲和跟蹤目標(biāo)、跟蹤精度高的特點(diǎn),這就使得這個(gè)系統(tǒng)在軍事或者民用上都有很大的發(fā)展?jié)摿Γ?]。隨著軍事及民用領(lǐng)域?qū)δ繕?biāo)跟蹤需求的快速發(fā)展,對(duì)動(dòng)態(tài)目標(biāo)跟蹤系統(tǒng)特別是系統(tǒng)的實(shí)時(shí)性和魯棒性提出了更高的要求。筆者提出基于DM6437 為開發(fā)平臺(tái)采集處理圖像,以PC 機(jī)為上位機(jī)選定目標(biāo)并控制整個(gè)系統(tǒng)的運(yùn)行,采用Mean Shift 跟蹤算法對(duì)選定的目標(biāo)進(jìn)行跟蹤,很好地滿足了對(duì)系統(tǒng)實(shí)時(shí)性和魯棒性的要求。
系統(tǒng)由CCD 攝像頭、下位機(jī)和上位機(jī)組成,如圖1所示,下位機(jī)為DM6437 開發(fā)板,上位機(jī)為PC 機(jī)。下位機(jī)通過(guò)圖像采集卡把采集的圖像存儲(chǔ)到內(nèi)存中并對(duì)圖像作初步的預(yù)處理,上位機(jī)從下位機(jī)內(nèi)存中讀取圖像,設(shè)定跟蹤目標(biāo)及跟蹤算法發(fā)送指令給下位機(jī)完成對(duì)系統(tǒng)控制管理和資料交換等任務(wù),下位機(jī)執(zhí)行算法和跟蹤目標(biāo)并將跟蹤圖像發(fā)送給上位機(jī)顯示。波門會(huì)對(duì)選定的目標(biāo)進(jìn)行實(shí)時(shí)跟蹤,并在系統(tǒng)界面上顯示相對(duì)于系統(tǒng)窗口上的原點(diǎn)目標(biāo)的實(shí)時(shí)坐標(biāo)。

圖1 系統(tǒng)原理圖
本系統(tǒng)的目標(biāo)檢測(cè)跟蹤系統(tǒng)的硬件框圖如圖2 所示,其中DSP 在系統(tǒng)中起著關(guān)鍵作用,PC 機(jī)與DM6437開發(fā)板之間的串口部分,完全控制管理資料和指令交換等任務(wù),這就構(gòu)成了圖像信號(hào)采集和目標(biāo)跟蹤系統(tǒng)[2]。
下位機(jī)即為DM6437 開發(fā)板,它是由LVDS 轉(zhuǎn)換、DSP 和FPGA 組成,如圖2 所示。LVDS 轉(zhuǎn)換是視頻解碼模塊,實(shí)現(xiàn)從視頻接口傳入的由攝像頭采集到的模擬圖像序列進(jìn)行模數(shù)轉(zhuǎn)換,轉(zhuǎn)換為適合FPGA、DSP 等芯片處理的數(shù)字圖像。對(duì)來(lái)自LVDS 的數(shù)字圖像信號(hào),F(xiàn)PGA 一方面對(duì)其進(jìn)行預(yù)處理,對(duì)采集來(lái)的圖像進(jìn)行去除彩色信息,并對(duì)圖像進(jìn)行壓縮,將原圖像的寬高縮小至原有的1/2后,將圖像數(shù)據(jù)交給DSP 做進(jìn)一步的目標(biāo)檢測(cè)跟蹤處理,同時(shí)FPGA 將一路圖像信號(hào)存儲(chǔ)于PCI 圖像緩存模塊,用于上位機(jī)的顯示。

圖2 系統(tǒng)硬件結(jié)構(gòu)圖
DSP 讀取由FPGA 處理后的圖像,執(zhí)行有串口接收的上位機(jī)發(fā)送的指令,執(zhí)行跟蹤算法,完成各種處理運(yùn)算。把跟蹤的圖像再由接口發(fā)送給上位機(jī),以完成主控計(jì)算機(jī)和DSP 之間的大量信息交換,顯示跟蹤結(jié)果。
PC 機(jī)是整個(gè)系統(tǒng)的控制中心,功能包括通過(guò)串口向DSP 發(fā)送指令,從串口接收DSP 的目標(biāo)跟蹤結(jié)果,用UDP 協(xié)議接收FPGA 發(fā)送的圖像并顯示。
由攝像頭采集圖像傳輸給LVDS 作數(shù)模轉(zhuǎn)換,F(xiàn)PGA對(duì)LVDS 傳遞來(lái)的圖像進(jìn)行去除彩色信息處理并將寬高縮小至原有圖像的1/2 后,使用UDP 協(xié)議傳至上位機(jī)及DSP,并將圖像送顯。
預(yù)處理主要是濾波,其作用為:除去噪聲,增強(qiáng)對(duì)系統(tǒng)跟蹤目標(biāo)有用的信號(hào),為更好地實(shí)現(xiàn)系統(tǒng)的功能創(chuàng)造良好的條件。在實(shí)際應(yīng)用中最簡(jiǎn)單實(shí)用的是均值濾波器和中值濾波器。經(jīng)過(guò)對(duì)兩種濾波器認(rèn)真比較,擬采用對(duì)圖像邊緣損害較小的中值濾波器。

圖3 系統(tǒng)軟件結(jié)構(gòu)圖
波門是在PC 機(jī)上顯示的視場(chǎng)中一直框住目標(biāo)的矩形框,是實(shí)際上的處理窗口[3]。由于在目標(biāo)的跟蹤過(guò)程中可能會(huì)發(fā)生反轉(zhuǎn)、遮擋、距離或者其他形狀上的變化,為此對(duì)系統(tǒng)做了一定的改變,保證了系統(tǒng)擁有一定的抗干擾能力,使得波門跟蹤的目標(biāo)不會(huì)輕易丟失。
運(yùn)動(dòng)目標(biāo)跟蹤算法是目標(biāo)跟蹤系統(tǒng)的核心,其基本思想是當(dāng)監(jiān)控場(chǎng)景中我們感興趣的目標(biāo)進(jìn)入或者出現(xiàn)運(yùn)動(dòng)時(shí),能夠準(zhǔn)確檢測(cè)出該目標(biāo),并能夠從背景圖像中將其準(zhǔn)確地分離出來(lái)。目標(biāo)跟蹤算法發(fā)展到今天有很多種,常用的目標(biāo)跟蹤算法有自適應(yīng)波門跟蹤算法、邊緣跟蹤算法、記憶外推跟蹤算法、相關(guān)跟蹤算法和形心跟蹤算法等[4]。
在目標(biāo)跟蹤的過(guò)程中無(wú)論是從內(nèi)部算法的復(fù)雜性還從外部抗各種干擾的能力來(lái)看,各個(gè)算法各有利弊,沒有一種算法能達(dá)到特別完備的效果。在外界因素中包括光線或背景的變化、目標(biāo)的運(yùn)動(dòng)狀態(tài)及變形和目標(biāo)在運(yùn)動(dòng)過(guò)程中的遮擋等,這些都是影響系統(tǒng)跟蹤效果的關(guān)鍵因素。因此,我們必須根據(jù)目標(biāo)跟蹤的實(shí)際情況來(lái)選擇最適合當(dāng)前場(chǎng)景的目標(biāo)跟蹤算法。
通過(guò)對(duì)多種算法認(rèn)真探究和比較,本文所設(shè)計(jì)的系統(tǒng)擬采用核方法中最具代表性的Mean Shift 算法。
Mean Shift 算法是一種基于核密度估計(jì)的算法,Mean Shift 向量總是指向概率密度增加最大的方向。在引入核函數(shù)和權(quán)重的情況下,Mean Shift 的形式:

其中:GH(xi-x)=|H|-1/2G(H-1/2(xi-x));G(x)為一個(gè)單位核函數(shù);H 為一個(gè)正定的對(duì)稱d×d 矩陣,我們一般稱之為帶寬矩陣;w(xi)≥0 是一個(gè)賦給采樣點(diǎn)xi的權(quán)重。
在實(shí)際工程應(yīng)用中,帶寬矩陣H 一般特定地取為一個(gè)對(duì)角矩陣,甚至更簡(jiǎn)單地被取為:H=h2I,在本文中我們也采用H=h2I 這種形式。因此Mean Shift 向量可寫為
給定一個(gè)初始點(diǎn)x,核函數(shù)G(X),容許誤差ε,Mean Shift 算法循環(huán)的執(zhí)行下面三步,直至結(jié)束條件滿足:
1)計(jì)算Mean Shift 向量mh(x);2)把mh(x)賦給x;3)如果‖mh(x)-x‖<ε,結(jié)束循環(huán);否則,繼續(xù)執(zhí)行1)。
在目標(biāo)跟蹤系統(tǒng)中,理想情況下候選模型與目標(biāo)模型的概率密度分布是一樣的,但是實(shí)際上二者之間存在著差異,因此需要用相似性函數(shù)來(lái)描述目標(biāo)模型與候選模型之間的相似程度。本文使用Bhattacharyya 系數(shù)(巴氏系數(shù))作為Mean Shift 跟蹤算法中相似性函數(shù),即:

如圖4 所示(其中R 為相似度門限),在每幀圖像中通過(guò)Mean Shift 算法得到的關(guān)于目標(biāo)有用信息用于下一幀的迭代匹配。按照上述方法就能對(duì)選定的目標(biāo)進(jìn)行有效跟蹤。

圖4 Mean Shift 跟蹤算法流程圖
本文實(shí)驗(yàn)是在TI 公司的DSP 集成開發(fā)環(huán)境CCS 平臺(tái)上進(jìn)行的,實(shí)驗(yàn)結(jié)果如圖5 所示。測(cè)試視頻通過(guò)DM6437 開發(fā)板的視頻輸入接口輸入,在PC 機(jī)上手動(dòng)選擇穿白色上衣的女子為跟蹤目標(biāo),目標(biāo)跟蹤結(jié)果通過(guò)視頻輸出端口輸送到PC 機(jī)上顯示。通過(guò)實(shí)驗(yàn)結(jié)果我們可以看到Mean Shift 算法能對(duì)選定的目標(biāo)進(jìn)行較好的跟蹤。

圖5 目標(biāo)跟蹤結(jié)果
本文設(shè)計(jì)的系統(tǒng)及采用的跟蹤算法對(duì)選定的目標(biāo)有較好的跟蹤效果,也較好地滿足了對(duì)系統(tǒng)實(shí)時(shí)性和魯棒性的要求。但是該系統(tǒng)在目標(biāo)運(yùn)動(dòng)速度過(guò)快時(shí),會(huì)發(fā)生目標(biāo)丟失的情況,這就需要一種預(yù)測(cè)機(jī)制(比如粒子濾波)預(yù)測(cè)當(dāng)前幀目標(biāo)所處的位置來(lái)作為迭代的起始點(diǎn)。由此可見,目標(biāo)跟蹤系統(tǒng)并沒有一種通用的系統(tǒng),我們要根據(jù)實(shí)際情況來(lái)設(shè)計(jì)滿足要求的跟蹤系統(tǒng)。
[1] 趙淵.基于DM6437 的視頻目標(biāo)跟蹤算法實(shí)現(xiàn)與優(yōu)化[D].成都:電子科技大學(xué),2010.
[2] 路文明.基于DSP 的目標(biāo)檢測(cè)與跟蹤系統(tǒng)設(shè)計(jì)[D].長(zhǎng)沙:湖南大學(xué),2012.
[3] 楚來(lái)國(guó).基于DSP 的運(yùn)動(dòng)目標(biāo)識(shí)別與跟蹤的系統(tǒng)設(shè)計(jì)[J].江蘇大學(xué)學(xué)報(bào):自然科學(xué)版,2002,23(1):75-78.
[4] 蔡榮太.視頻目標(biāo)跟蹤算法綜述[J].視頻應(yīng)用與工程,2010,12(34):135-138.
[5] 余松煜.數(shù)字圖像處理[M].上海:上海交通大學(xué)出版社,2007.
[6] 蔣建國(guó).基于TMS320DM6437 的運(yùn)動(dòng)目標(biāo)實(shí)時(shí)檢測(cè)與跟蹤[J].合肥工業(yè)大學(xué)學(xué)報(bào):自然科學(xué)版,2011,7(34):1007-1010.
[7] 劉瑞禎,于仕琪.OpenCV 教程[M].北京:北京航天航空大學(xué)出版社,2007.