楊 彬, 王同喜
(1.長江大學(xué) 體育學(xué)院,湖北 荊州 434020;2.長江大學(xué) 計算機科學(xué)學(xué)院,湖北 荊州 434020)
運動目標(biāo)跟蹤是視頻監(jiān)控系統(tǒng)中非常重要的一個環(huán)節(jié),近年來,已經(jīng)逐漸成為一個研究熱點[1-4].在運動目標(biāo)跟蹤中,傳統(tǒng)粒子濾波方法存在粒子退化現(xiàn)象難以有效解決,缺乏通用性,重要密度函數(shù)選擇困難,重采樣設(shè)計難度大等問題.文獻[5]采用人工魚群算法改進重要密度函數(shù),提出了一種改進的粒子濾波運動目標(biāo)跟蹤方法.該方法提高了重要密度函數(shù)的通用性,取得了令人滿意的目標(biāo)追蹤結(jié)果.文獻[6]提出了一種改進的壓縮感知(compressed sensing,CS)算法,以解決由于運動目標(biāo)紋理變化大,以及目標(biāo)被遮擋而導(dǎo)致跟蹤誤差大、跟蹤丟失等問題.算法采用設(shè)置Sigmoid函數(shù)響應(yīng)閾值.文獻[7]提出基于改進的CamShift目標(biāo)跟蹤算法.通過將背景顏色設(shè)置為初始搜索窗口顏色直方圖模型中最小分量值對應(yīng)的色彩值,增大目標(biāo)與背景區(qū)域之間的顏色差值,解決相似背景的干擾問題.
將Mean-Shift算法用于跟蹤籃球運動視頻目標(biāo)的算法,并設(shè)計一種DSP-FPGA硬件實現(xiàn)框架.實驗證明,提出的方法能夠準(zhǔn)確跟蹤運動目標(biāo).
目標(biāo)跟蹤即對視頻圖像進行精確定位,并使用跟蹤窗口來鎖定目標(biāo)的位置、速度、加速度等信息,同時記錄目標(biāo)的軌跡,從而了解目標(biāo)的變化和目的,以便完成更高一級的識別任務(wù).目標(biāo)跟蹤系統(tǒng)的工作流程框圖如圖1所示.特征提取和目標(biāo)跟蹤算法是組成目標(biāo)跟蹤的兩個部分.目標(biāo)特征一般分成以下幾種:
(1) 將目標(biāo)的輪廓作為特征;
(2) 將目標(biāo)的紋理作為特征;
(3) 將目標(biāo)區(qū)域的顏色直方圖作為特征.
Mean-Shift算法早在1975年即由Fukunaga等提出[8-10],真正發(fā)展起來是在1995年,Yizong Cheng發(fā)表的一篇關(guān)于Mean-Shift算法的文章,其在Mean-Shift算法中加入了kernel的概念,并加入了權(quán)重系數(shù),極大地擴大了Mean-Shift算法的應(yīng)用空間、圖像平滑、圖像分割、tracking等一系列應(yīng)用.其中,Mean-Shift算法在量度空間的多維空間數(shù)據(jù)點:
(1)
式中:K(x)為核函數(shù)(又稱窗函數(shù));h為核函數(shù)的大小(又稱核函數(shù)的寬帶).兩種典型的核函數(shù)包括高斯核KN(x)和Epanechnikov核KE(x).正太核函數(shù)定義如下:
(2)
該核函數(shù)的輪廓函數(shù)kN(x)為:
(3)
為了得到具有支撐特點的核函數(shù),正太核函數(shù)通常進行對稱截取.
Epanechnikov核函數(shù)定義如下:
(4)
該核函數(shù)的輪廓函數(shù)kE(x)為:
(5)
并且其在邊界不可微.Mean-Shift向量為:
(6)
式中,Y1是新的目標(biāo)中心,g(x)=-k′(x)是核函數(shù)k(x)的影子核.在迭代過程中,目標(biāo)定位完成的判斷依據(jù)是Mean-Shift向量的模值小于給定閾值.
將基于Mean-Shift算法的目標(biāo)跟蹤過程分成4步完成:
(1) 首先構(gòu)建一個包含運動目標(biāo)的搜索窗,并初始化其大小和位置.
(2) 計算被跟蹤目標(biāo)的色彩直方圖.將其他的色彩空間的值轉(zhuǎn)化到HSI空間,再對其中的H分量做1D直方圖計算.
(3) 輸入待搜索圖像,并運行算法,獲取新搜索窗位置和大小.
(4) 輸入下一幀待搜索圖像,用上一步獲得的值更新窗位置和大小,轉(zhuǎn)到步驟(2)繼續(xù)運行.
從上述步驟可以看出,Mean-Shift算法是一個迭代尋找局部模式的過程,該迭代過程可以用式(7)表示:
(7)
(8)
(9)
其中,加權(quán)因子
(10)
為了獲得運動目標(biāo)的新位置y1,基于Mean-Shift過程迭代,搜尋鄰域內(nèi)該密度估計的極大值:
(11)
式中,x∈[0,∞)中除有限集點外,設(shè)k′(x)始終存在.
提出的實時目標(biāo)跟蹤的硬件系統(tǒng)主要構(gòu)成有:現(xiàn)場可編程陣列FPGA、可編程邏輯芯片組CPLD、核心芯片TMS320C6416T作為數(shù)字信號處理器,使用的開發(fā)板如圖2所示.
首先,為了滿足A / D輸入視頻信號的需求,模擬視頻信號要經(jīng)預(yù)處理圖像傳感器固定、濾波和放大.然后,該信號由具有8 bit的高速率A / D轉(zhuǎn)換器采樣,輸出的信號直接發(fā)送到FPGA,在執(zhí)行其他函數(shù)的同時,該系統(tǒng)繼續(xù)運行預(yù)處理算法.
由FPGA處理過的數(shù)據(jù)經(jīng)DSP芯片讀取后,通過FPGA實現(xiàn)雙口RAM內(nèi)存,并行運行跟蹤算法.特征發(fā)生芯片組(UPD6464)由DSP的多信道緩沖串行端口控制,最后再添加UPD6464特征信號到該模擬信號.這樣,所計算的數(shù)據(jù)信號最終顯示在顯示器上.
為了驗證提出方法的準(zhǔn)確性,進行了實驗驗證.算法2和本文方法是基于本文的高速目標(biāo)跟蹤系統(tǒng),算法1和3是基于AVT21開發(fā)板的.其中算法1是AVT21開發(fā)板的質(zhì)心跟蹤算法,算法2是基于金字塔相關(guān)性[14]的跟蹤算法,算法3是AVT21開發(fā)板上的相位相關(guān)跟蹤算法.實驗所用的籃球運動視頻圖像序列如圖3所示.
利用重疊Ak評價嵌入式跟蹤器的性能,量化為:
(12)
式中:TTk是跟蹤器的邊界框,GTk是實際邊界框.
由表1可以看出,本文算法獲得了最好的平均重疊,此外,不同大小跟蹤區(qū)域運行速度結(jié)果顯示,本文算法的運行時間快于算法2和算法4,稍慢于算法1質(zhì)心跟蹤算法,均表明嵌入式開發(fā)中算法設(shè)計并非越復(fù)雜越好.
表1 各方法運行結(jié)果對比
Mean-Shift算法在聚類、圖像平滑、分割、跟蹤等方面有著廣泛的應(yīng)用.本文將Mean-Shift算法用以追蹤籃球運動視頻目標(biāo),基于Mean-Shift過程進行迭代獲得運動目標(biāo)的新位置,實現(xiàn)運動目標(biāo)追蹤.還設(shè)計了一種硬件系統(tǒng),具有高速處理器DSP和FPGA.實驗證明,提出的方法能夠準(zhǔn)確跟蹤運動目標(biāo).