張 博
(長(zhǎng)沙師范學(xué)院 信息科學(xué)與工程學(xué)院,長(zhǎng)沙 410100)
隨著計(jì)算機(jī)技術(shù)的興起與發(fā)展,計(jì)算機(jī)能夠?qū)σ曈X(jué)信息進(jìn)行相應(yīng)的處理與應(yīng)用,極大推動(dòng)了計(jì)算機(jī)視覺(jué)的興起與發(fā)展, 受到了多個(gè)領(lǐng)域的關(guān)注,相對(duì)應(yīng)的研究也逐漸增多。 在計(jì)算機(jī)視覺(jué)領(lǐng)域中,關(guān)鍵部分就是對(duì)動(dòng)態(tài)圖像進(jìn)行處理與分析,以此來(lái)獲取有效的、有用的信息。 動(dòng)態(tài)圖像會(huì)隨著時(shí)間變化產(chǎn)生相應(yīng)的變化, 并能夠表示為空間位置函數(shù),存在著豐富的信息, 其處理過(guò)程涉及多種領(lǐng)域知識(shí),例如圖像分析領(lǐng)域、計(jì)算機(jī)視覺(jué)領(lǐng)域、人工智能領(lǐng)域等。 動(dòng)態(tài)圖像分析是現(xiàn)今計(jì)算機(jī)領(lǐng)域中發(fā)展較為活躍的分支,對(duì)其進(jìn)行深入探究具有現(xiàn)實(shí)意義。
就現(xiàn)有研究成果來(lái)看,主流目標(biāo)跟蹤算法主要包含7 類,分別為基于對(duì)比度的目標(biāo)跟蹤算法(一種基于改進(jìn)混合高斯模型的運(yùn)動(dòng)目標(biāo)檢測(cè)算法[1]),該算法主要利用背景與目標(biāo)之間的對(duì)比度對(duì)目標(biāo)進(jìn)行識(shí)別與跟蹤,優(yōu)勢(shì)為對(duì)目標(biāo)姿勢(shì)變化適應(yīng)性較強(qiáng),劣勢(shì)為目標(biāo)識(shí)別能力較差,無(wú)法應(yīng)用在背景復(fù)雜目標(biāo)跟蹤中;基于區(qū)域匹配相關(guān)的目標(biāo)跟蹤算法(基于邊緣匹配的平面目標(biāo)跟蹤[2]),該算法以圖像目標(biāo)全局信息為基礎(chǔ),例如顏色、紋理等對(duì)目標(biāo)進(jìn)行識(shí)別與跟蹤,優(yōu)勢(shì)為目標(biāo)識(shí)別精度較高,劣勢(shì)為運(yùn)算量大;基于特征點(diǎn)的目標(biāo)跟蹤算法(基于特征點(diǎn)的KLT 實(shí)時(shí)目標(biāo)跟蹤算法實(shí)現(xiàn)[3]),該算法選取多個(gè)奇異點(diǎn),作為圖像目標(biāo)特征點(diǎn),對(duì)其進(jìn)行提取、保存等操作,對(duì)目標(biāo)進(jìn)行實(shí)時(shí)跟蹤。 優(yōu)勢(shì)為目標(biāo)跟蹤精度較高,劣勢(shì)為目標(biāo)跟蹤時(shí)效性較差;基于變形模板的目標(biāo)跟蹤算法(復(fù)雜背景下基于自適應(yīng)模板更新的目標(biāo)跟蹤算法研究[4]),該算法以目標(biāo)模板為基礎(chǔ), 通過(guò)模板紋理方向變形檢索圖像中的目標(biāo),優(yōu)勢(shì)為適應(yīng)較為復(fù)雜的背景,劣勢(shì)為耗費(fèi)時(shí)間較長(zhǎng);基于光流的目標(biāo)跟蹤算法(基于運(yùn)動(dòng)預(yù)測(cè)的優(yōu)化光流目標(biāo)跟蹤算法[5]),該算法以目標(biāo)光流場(chǎng)為依據(jù),通過(guò)聚類速度相近的光流場(chǎng)區(qū)域,即可完成目標(biāo)的提取與跟蹤,優(yōu)勢(shì)為運(yùn)算量較小,適合跟蹤速度較大的目標(biāo),劣勢(shì)為算法對(duì)噪聲較為敏感;基于機(jī)器學(xué)習(xí)的目標(biāo)跟蹤算法(基于機(jī)器學(xué)習(xí)的單線激光雷達(dá)進(jìn)行車輛識(shí)別與跟蹤方法研究[6]),算法應(yīng)用機(jī)器學(xué)習(xí)理論將目標(biāo)跟蹤問(wèn)題轉(zhuǎn)化為目標(biāo)分類問(wèn)題,即分類圖像中的目標(biāo)與背景,確定目標(biāo)的位置,優(yōu)勢(shì)為計(jì)算量較小,目標(biāo)跟蹤可信度較大,劣勢(shì)為算法較容易陷入局部最優(yōu);基于貝葉斯濾波的目標(biāo)跟蹤算法(用于目標(biāo)跟蹤的智能群體優(yōu)化濾波算法[7]),該算法應(yīng)用先驗(yàn)信息對(duì)目標(biāo)的當(dāng)前狀態(tài)進(jìn)行估計(jì),實(shí)現(xiàn)目標(biāo)跟蹤,優(yōu)勢(shì)為目標(biāo)跟蹤精度較大,劣勢(shì)為隨著先驗(yàn)信息的增加,算法速度逐漸減緩,無(wú)法跟蹤速度較快的目標(biāo)。
在現(xiàn)有研究成果的基礎(chǔ)上,本文提出基于卡爾曼預(yù)測(cè)粒子濾波的復(fù)雜場(chǎng)景圖像目標(biāo)跟蹤算法研究。
此研究采用ViBe 算法對(duì)復(fù)雜場(chǎng)景圖像中背景進(jìn)行提取與建模,為后續(xù)目標(biāo)狀態(tài)轉(zhuǎn)移模型的構(gòu)建提供便利與支撐。
復(fù)雜場(chǎng)景圖像背景提取步驟如下所示:
步驟一:假設(shè)復(fù)雜場(chǎng)景圖像背景模型表達(dá)式為
式中:M(x)表示背景模型;pN表示背景像素點(diǎn),總數(shù)量為N。
依據(jù)式(1)對(duì)背景模型進(jìn)行初始化,以此為基礎(chǔ),從第二幀開(kāi)始對(duì)圖像背景進(jìn)行相應(yīng)的檢測(cè)。
步驟二:對(duì)圖像中的背景與前景進(jìn)行判斷。 比較背景模型M(x)與圖像像素p(x),并對(duì)相似度進(jìn)行計(jì)算,計(jì)算公式為
式中:U 表示待分類像素與背景模型的相似度;SR(p(x))表示以圖像某像素點(diǎn)為中心,以R 為半徑的球體。
則圖像背景與前景的判斷規(guī)則為
式中:Umin表示給定閾值,以此為基礎(chǔ)來(lái)判定圖像的背景與前景。
步驟三:在背景模型M(x)中,隨機(jī)選取一個(gè)樣本,對(duì)像素值進(jìn)行替代,完成背景模型的實(shí)時(shí)更新與提取。
為了提升圖像目標(biāo)跟蹤的精確性,構(gòu)建模型需要與實(shí)際目標(biāo)運(yùn)動(dòng)符合[8]。 現(xiàn)今應(yīng)用較為廣泛的狀態(tài)轉(zhuǎn)移模型為仿射模型與自回歸模型[9]。 其中,仿射模型表達(dá)式為
自回歸模型表達(dá)式為
式中:ax,ay,bx,by表示線性參數(shù);ux與uy表示高斯噪聲,并且兩者相互獨(dú)立。
為了滿足圖像目標(biāo)的跟蹤需求,此研究以目標(biāo)顏色直方圖為基礎(chǔ),構(gòu)建圖像目標(biāo)觀測(cè)模型[10]。在目標(biāo)跟蹤的初始幀,需要對(duì)目標(biāo)進(jìn)行手動(dòng)選擇,設(shè)定初始時(shí)刻目標(biāo)為T0,對(duì)應(yīng)的顏色直方圖為H0。 在目標(biāo)跟蹤過(guò)程中,設(shè)定候選目標(biāo)為T,對(duì)應(yīng)的顏色直方圖為H。 目標(biāo)觀測(cè)模型就是通過(guò)比較H0與H 之間的相似度,來(lái)實(shí)現(xiàn)目標(biāo)的觀測(cè)與粒子權(quán)重的計(jì)算。
依據(jù)復(fù)雜場(chǎng)景圖像目標(biāo)跟蹤需求,選取Bhattacharyya 距離方法對(duì)直方圖之間相似度進(jìn)行計(jì)算。Bhattacharyya 距離計(jì)算公式為
式(6)計(jì)算得到的dBhattacharyya(H0,H)數(shù)值越大,表明直方圖之間的相似程度越低,dBhattacharyya(H0,H)數(shù)值越小,表明直方圖之間的相似程度越高。
粒子權(quán)重?cái)?shù)值計(jì)算公式為
式中:ω 表示粒子權(quán)重?cái)?shù)值;δc表示選取的固定常數(shù),取值范圍為0~1。
通過(guò)式(7)可知,隨著dBhattacharyya(H0,H)數(shù)值的增大,粒子權(quán)重?cái)?shù)值呈現(xiàn)逐漸下降趨勢(shì),即直方圖的相似程度越低,粒子權(quán)重?cái)?shù)值越大。
基于卡爾曼預(yù)測(cè)粒子濾波估計(jì)圖像目標(biāo)狀態(tài)過(guò)程實(shí)質(zhì)上就是目標(biāo)狀態(tài)預(yù)測(cè)及其修正過(guò)程,具體如下所示:
假設(shè)圖像目標(biāo)狀態(tài)數(shù)學(xué)描述為
式中:xk表示當(dāng)前幀的圖像目標(biāo)狀態(tài);A 與B 分別表示狀態(tài)轉(zhuǎn)移矩陣與狀態(tài)控制矩陣;xk-1表示前一幀的圖像目標(biāo)狀態(tài);uk-1表示前一幀的高斯噪聲;wk-1表示前一幀的隨機(jī)狀態(tài)噪聲。
通過(guò)構(gòu)建目標(biāo)觀測(cè)模型即可獲得圖像目標(biāo)觀測(cè)量,表達(dá)式為
式中:zk表示圖像目標(biāo)觀測(cè)量;G 表示狀態(tài)觀測(cè)矩陣;vk表示觀測(cè)噪聲。
為了方便研究的進(jìn)行,設(shè)定隨機(jī)狀態(tài)噪聲與觀測(cè)噪聲相互獨(dú)立,兩者均符合正態(tài)分布,即可將其轉(zhuǎn)換為
式中:Q 與P 分別表示隨機(jī)狀態(tài)噪聲與觀測(cè)噪聲對(duì)應(yīng)的協(xié)方差。 常規(guī)情況下,Q 與P 是隨著時(shí)間產(chǎn)生變化的,但是為了研究的便利,認(rèn)定兩者均為常量。
當(dāng)?shù)螖?shù)為k 時(shí),圖像目標(biāo)狀態(tài)估計(jì)誤差表示為
式中:ek表示目標(biāo)狀態(tài)估計(jì)誤差;表示目標(biāo)狀態(tài)估計(jì)誤差修正值。
則均方誤差表達(dá)式為
當(dāng)均方誤差達(dá)到最小值時(shí),即可獲得圖像目標(biāo)狀態(tài)預(yù)測(cè)方程組,定義為
相應(yīng)的圖像目標(biāo)狀態(tài)修正方程組表達(dá)式為
式中:Kk表示修正控制系數(shù);Pk表示修正后的估計(jì)誤差;表示修正后的估計(jì)值。
通過(guò)上述過(guò)程完成了圖像目標(biāo)狀態(tài)的精確估計(jì),確定了每幀圖像目標(biāo)的運(yùn)動(dòng)狀態(tài),為后續(xù)圖像目標(biāo)跟蹤的實(shí)現(xiàn)提供依據(jù)。
在目標(biāo)跟蹤過(guò)程中,能夠依據(jù)粒子權(quán)值估計(jì)粒子的狀態(tài),估計(jì)公式為
式中:X 表示粒子狀態(tài)的估計(jì)結(jié)果;ωi表示粒子權(quán)重?cái)?shù)值。
依據(jù)粒子濾波的原理,推出復(fù)雜場(chǎng)景圖像目標(biāo)跟蹤算法,具體步驟如下所示:
步驟一:初始化。 手動(dòng)選取目標(biāo)模板,并計(jì)算對(duì)應(yīng)直方圖。 與此同時(shí),依據(jù)先驗(yàn)分布構(gòu)建初始狀態(tài)樣本集,表達(dá)式為
步驟三:計(jì)算粒子權(quán)重?cái)?shù)值,并對(duì)其進(jìn)行歸一化處理,即:
步驟四:圖像目標(biāo)狀態(tài)估計(jì),將估計(jì)結(jié)果記為xk。
步驟五:累計(jì)求和處理粒子集權(quán)重,利用均勻分布的隨機(jī)數(shù)來(lái)對(duì)粒子集進(jìn)行重新采樣,生成新的粒子集。
步驟六:重復(fù)進(jìn)行步驟二到步驟五,直到鎖定圖像目標(biāo)的具體位置為止。
綜上所述,此研究應(yīng)用卡爾曼預(yù)測(cè)粒子濾波實(shí)現(xiàn)了復(fù)雜場(chǎng)景圖像目標(biāo)的跟蹤,為圖像信息應(yīng)用提供充足的幫助。
為了驗(yàn)證提出算法的應(yīng)用性能,應(yīng)用引言所述7種主流算法(編號(hào)1~7)與提出算法進(jìn)行實(shí)驗(yàn),通過(guò)對(duì)比分析顯示提出算法的應(yīng)用性能,具體如下文所述。
為了驗(yàn)證提出算法是否能夠改善現(xiàn)有主流算法存在的問(wèn)題,構(gòu)建圖像目標(biāo)仿真模型,表達(dá)式為
為了方便實(shí)驗(yàn)的進(jìn)行, 設(shè)定uk與vk均值為0,方差為10 與1。 同時(shí),設(shè)置卡爾曼預(yù)測(cè)粒子濾波方法中粒子數(shù)量為100,閾值取值為30,迭代次數(shù)為100 次。
定量分析即選取一個(gè)評(píng)價(jià)指標(biāo)對(duì)圖像目標(biāo)跟蹤效果進(jìn)行數(shù)值評(píng)價(jià)。 實(shí)驗(yàn)以圖像目標(biāo)跟蹤誤差的方差作為評(píng)價(jià)指標(biāo),其計(jì)算公式為
以式(20)為依據(jù),通過(guò)實(shí)驗(yàn)計(jì)算每個(gè)算法應(yīng)用后的RMSE 數(shù)值,具體數(shù)據(jù)如表1 所示。
表1 RMSE 數(shù)據(jù)表Tab.1 RMSE data sheet
常規(guī)情況下,RMSE 數(shù)值越小,表明圖像目標(biāo)跟蹤誤差越小,則算法的應(yīng)用性能越好。 如表1 數(shù)據(jù)所示, 與7 種主流算法相比較, 提出算法的RMSE數(shù)值最小,表明提出算法的目標(biāo)跟蹤誤差最小。
實(shí)驗(yàn)選取某段視頻為依據(jù),將視頻中運(yùn)動(dòng)車輛作為實(shí)驗(yàn)對(duì)象,采用7 種主流算法與本文算法對(duì)其進(jìn)行跟蹤,獲得結(jié)果如圖1 所示。
圖1 圖像目標(biāo)跟蹤結(jié)果示意圖Fig.1 Schematic diagram of image target tracking results
如圖1 所示,主流算法與提出算法均能夠跟蹤到圖像目標(biāo),但是7 種主流算法搜索窗口變化性較大,跟蹤窗口內(nèi)包含著較多背景圖像,這非常容易造成后續(xù)目標(biāo)跟蹤的失敗。 而本文算法目標(biāo)跟蹤窗口較為規(guī)范,并且窗口內(nèi)包含背景信息較少,更有利于后續(xù)目標(biāo)的跟蹤。
為了增加實(shí)驗(yàn)結(jié)論的準(zhǔn)確性,在不同背景復(fù)雜度下進(jìn)行實(shí)驗(yàn), 驗(yàn)證算法在不同場(chǎng)景下的適用性。以背景復(fù)雜度為自變量進(jìn)行實(shí)驗(yàn),獲得圖像目標(biāo)跟蹤結(jié)果如圖2 所示。
圖2 不同背景復(fù)雜度下目標(biāo)跟蹤結(jié)果示意圖Fig.2 Schematic diagram of target tracking results under different background complexity
如圖2 所示,相較于7 種主流算法來(lái)看,本文算法目標(biāo)跟蹤誤差較小,主要是因?yàn)楸疚乃惴ㄔ谀繕?biāo)跟蹤前對(duì)圖像背景進(jìn)行了相應(yīng)的提取,可以有效降低背景在目標(biāo)跟蹤過(guò)程中的影響,從而降低了目標(biāo)跟蹤誤差。
圖像目標(biāo)跟蹤時(shí)間也是顯示算法應(yīng)用效果的重要指標(biāo)之一。 常規(guī)情況下,圖像目標(biāo)跟蹤時(shí)間越短,表明算法應(yīng)用效果更佳。 通過(guò)實(shí)驗(yàn)獲得圖像目標(biāo)跟蹤時(shí)間如表2 所示。
表2 圖像目標(biāo)跟蹤時(shí)間數(shù)據(jù)表Tab.2 Image target tracking time data t/(ms)
如表2 數(shù)據(jù)所示,與7 種主流算法相比較,本文算法圖像目標(biāo)跟蹤時(shí)間較短,能夠更及時(shí)地獲得目標(biāo)跟蹤結(jié)果。
此研究利用卡爾曼預(yù)測(cè)粒子濾波推出了新的復(fù)雜場(chǎng)景圖像目標(biāo)跟蹤算法,通過(guò)實(shí)驗(yàn)得到其平均RMSE 值為9.08,平均跟蹤時(shí)間為10.30 ms,充分證實(shí)了提出算法具備較好的應(yīng)用效果,能夠滿足復(fù)雜場(chǎng)景圖像目標(biāo)跟蹤需求,為計(jì)算機(jī)視覺(jué)發(fā)展提供助力。