楊磊,劉美枝,高海,黨嬋娟
(山西大同大學物理與電子科學學院,山西大同037009)
運動目標跟蹤就是在連續(xù)圖像序列中根據(jù)目標所處的環(huán)境,充分利用一個或多個能夠表示運動目標的特征,實時搜索感興趣的目標(包括目標的位置,速度,加速度等)。根據(jù)運動目標的描述和相似性度量,跟蹤算法包括基于特征匹配、模型、主動輪廓、運動特性、區(qū)域的跟蹤算法。在目標跟蹤過程中,選用較好的目標特征和合適的搜索算法很重要。目標跟蹤算法主要從提高搜索匹配的速度和精度兩個方面來對運動目標的性能加以提高。
雖然近些年來,目標視頻跟蹤技術(shù)獲得了廣泛的研究并且取得了很大的進步,但是由于現(xiàn)實場景中各種因素的無規(guī)律變化都會影響視頻圖像中目標跟蹤的可靠性和穩(wěn)定性。比如,常見的圖像噪聲對跟蹤結(jié)果的干擾,光照強度和天氣變化對跟蹤的影響,目標外觀變化或者發(fā)生旋轉(zhuǎn),放縮,位移等各種復(fù)雜的變化,目標遮擋問題,目標快速運動時跟蹤穩(wěn)定性問題和實時性問題,復(fù)雜背景下的跟蹤問題,多傳感器跟蹤等,因此,設(shè)計出能夠在復(fù)雜環(huán)境中準確,穩(wěn)定,有效,快速地跟蹤目標的方法,仍然是一項具有挑戰(zhàn)性的任務(wù)和急需解決的課題[1-4]。
CamShift算法是一種連續(xù)自適應(yīng)的目標跟蹤算法,是在Meanshift算法的基礎(chǔ)上實現(xiàn)的。它利用目標的色彩模型變換,反向投影檢索技術(shù),自適應(yīng)核窗技術(shù)實現(xiàn)每一幀之間的快速移動[5-9],結(jié)合MeanShift算法在每一幀中實現(xiàn)梯度尋優(yōu),跟蹤目標質(zhì)心點,對目標形變具有很好的魯棒性[10]。
經(jīng)典的CamShift算法利用感興趣目標的顏色特征中H分量,建立H分量的直方圖模型,進而將H分量的直方圖模型轉(zhuǎn)化為色彩概率模型,最終得到反向概率密度投影圖。再由MeanShift算法根據(jù)反向概率密度投影圖和初始搜索窗口的位置,采用迭代方法移動搜索窗口的位置到質(zhì)心位置,如果移動距離大于設(shè)定的閾值,繼續(xù)迭代,直到搜索窗口的中心與質(zhì)心間的移動距離小于預(yù)設(shè)的閾值,或者迭代次數(shù)達到設(shè)定值,認為滿足收斂條件,無需迭代[11]。
表達顏色的色彩空間有很多種模型,常用的有RGB,YUV,HSV模型等。RGB模型常用于顯示,YUV模型常面向硬件的,HSV模型最符合人眼對色彩的感知,常用作視頻信號的傳輸。本文主要討論HSV模型。
HSV模型是根據(jù)顏色的直觀特性由A.R.Smith在1978年創(chuàng)建的一種色彩空間[12],這個模型中顏色的參數(shù)分別是色調(diào)(H),飽和度(S),亮度(V)。也被稱作六角椎體模型。色調(diào)是用角度度量,取值范圍是0°~360°,指的是顏色,飽和度指的是色彩的純度,取值范圍為0~1,值越大,顏色越飽和。亮度代表了感受到的光源能量的大小,它的取值是從0到1。
圖1 HSV顏色模型
該模型能較好的反映人對顏色的感知,而我們通常采集到的圖像是基于RGB模型的,將RGB空間轉(zhuǎn)化為HSV空間的轉(zhuǎn)化公式如下
其中:H代表色調(diào)分量,S代表飽和度分量,V代表亮度分量,r,g,b分別代表紅色,綠色,藍色分量。
CamShift算法有效克服了MeanShift算法模型無法更新、核窗寬固定的缺點,能夠根據(jù)目標角度的變化自適應(yīng)調(diào)節(jié)搜索窗口的大小[11]。
計算當前幀窗口的質(zhì)心位置:
計算該窗口的零階矩和二階矩:
再計算參數(shù):
定義下一幀中窗口的長度(l1),寬度(l2)和移動方向θ為:
自此,則完成了對跟蹤窗口的自適應(yīng)調(diào)整過程。CamShift算法實現(xiàn)過程如圖2所示。
圖2 CamShift算法流程圖
在實際跟蹤環(huán)境中,場景變化一般較大,CamShift算法有時很難保證魯棒性。當亮度變化過于劇烈,容易導(dǎo)致目標丟失。為了消除光照變化對目標跟蹤的影響,常用對光照變化不敏感的特征來降低其影響。經(jīng)常采用的特征就是紋理特征,它可以提供圖像區(qū)域的稀疏,平滑,規(guī)則性等特性,常用的紋理模型有灰度共生矩陣,小波紋理模型等。這些紋理模型近些年來,在紋理分類,圖像檢索,人臉分析等領(lǐng)域[13-16]得到廣泛的應(yīng)用。本文采用對光照變化不敏感,計算量小的局部二值特征來描述圖像的紋理信息,將感興趣目標的紋理信息,即局部二值模式(LBP)信息,以概率密度反向投影圖的形式與CamShift算法結(jié)合,應(yīng)用到目標跟蹤算法中,從理論上分析可以有效解決CamShift算法易受光照強度影響的問題,且能滿足跟蹤實時性的要求。
LBP紋理模型是一種用來描述圖像局部紋理特征的算子,具有灰度平移不變性和旋轉(zhuǎn)不變性等特點[13],所以近年來在紋理檢索、人臉分析等領(lǐng)域有廣泛的應(yīng)用。
其基本原理:定義一個3×3的窗口,Ix為像素點x處灰度值,以a為中心點,它的灰度值為Ia,它的鄰域的灰度值為:Ip(p=0,1…P-1),鄰域8個點的灰度值分別與中心點的灰度值進行差值比較,以窗口中心點灰度值為閾值對窗口其他像素做二值化處理。統(tǒng)一規(guī)定該模式中二進制碼的獲取方式為,由九點中方向開始,沿逆時針方向依次讀取,最后按像素不同位置進行加權(quán)求和,得到一個8位的二進制數(shù),就是該窗口的LBP模式,其大小就是該窗口的LBP值,最后用其LBP值代替中心像素點的灰度值。下圖是經(jīng)過LBP(8,1)算子得到的LBP模式的過程如圖3所示:
圖3 基本LBP算組示意圖
將閾值處理結(jié)果與一個權(quán)值模板對應(yīng)相乘求和,即可得到LBP值,該中心點的LBP的值為:Ia=LBP(8,1)=(01111010)2=122。在紋理特征提取的過程中,由于LBP算子的窗口是固定的,因而它不會隨圖像的內(nèi)容而改變,這樣提取出來的紋理特征存在一定的誤差,很難滿足不同紋理圖像的要求。
隨后,為了適應(yīng)不同尺度的紋理特征,Ojala等人[13]不斷對LBP算子進行改進和優(yōu)化,將3*3領(lǐng)域擴展到任意領(lǐng)域,采用圓形鄰域代替正方形領(lǐng)域。只要思想如下:在一幅灰度圖像上,定義半徑為R,鄰域內(nèi)采樣像素點個數(shù)為P,其中R,P都是大于零,編碼方法如下:
圖4 幾種LBP算子
優(yōu)化后的LBPP,R算子與固定窗口的算子計算差別不大,兩者的主要區(qū)別是定義在圓形鄰域上的算子可以進行擴展。
由該算子的計算過程知,只要圖像中各像素的相對位置保持不變,LBP模式也不變。那么由式(6)得到的LBP算子對任何單調(diào)的灰度變化都具有很好的魯棒性。
上述的LBPP,R算子只考慮了圖像的局部信息而忽略了紋理的另外一個重要特征,即對比度。若要準確地識別出圖像的紋理,需要將圖像表現(xiàn)出的模式和模式強度結(jié)合在一起,常用對比度表征模式強度。通常情況下,對比度的度量使用方差(variance)的定義,也是定義在圓形鄰域上:
經(jīng)過LBP編碼后的圖像,表達了其暗點、邊緣等局部特征,但這些特征的分布情況還沒有被完全表達,為了表達這些局部特征的空間結(jié)構(gòu),將編碼圖分塊,并采用上述算子得到紋理圖像,按照式(8)統(tǒng)計其紋理譜直方圖。
式中,M和N代表圖像的尺寸。此時LBP紋理直方圖不僅表達了圖像的區(qū)域特征,而且表達了連接區(qū)域特征形成的全局特征。
本文采用的紋理信息與色調(diào)信息的結(jié)合模式。具體操作如下:在轉(zhuǎn)化后的HSV顏色空間中,對其采用對比度均衡化處理。
在此基礎(chǔ)上,采用LBP8,1/VAR8,1算子提取圖像紋理信息,進而生成紋理信息直方圖,將此直方圖與H通道直方圖分別轉(zhuǎn)化為概率密度反向投影圖,將兩者的概率密度反向投影圖進行與運算,這樣做的目的是只保留目標局部二值模式特征的概率密度反向投影,把不運動的與目標顏色非常接近的背景濾除掉。將運算結(jié)果圖作為目標的紋理概率密度反向投影圖,然后與H通道的概率密度反向投影圖進行如式(8)所示的加權(quán)運算,生成最終的概率密度反向投影圖。
圖5 改進算法流程圖
本文使用兩組視頻圖像序列分別在光照強度變化和存在相似顏色干擾情況下對本文算法進行驗證,視頻采集率為每秒25幀。
本實驗主要研究攝像頭視場中,由于光照強度不斷變化,導(dǎo)致目標跟蹤失效問題。實驗跟蹤目標初始幀由人工選擇(采用矩形框)。為了驗證本文所提算法的有效性,分別采用傳統(tǒng)Camshift算法和本文改進算法對目標小車進行跟蹤,其跟蹤結(jié)果分別如圖6和圖7所示。
在圖6中,從第89幀到272幀表示在光照強度不斷變化情況下進行目標跟蹤。第89幀表示場景中存在微弱光線變化情況下的跟蹤結(jié)果。第89和94幀表示場景中存在局部暗光下的跟蹤情況,從第101幀的跟蹤結(jié)果圖知,由于背景中存在局部高光以及誤差累積,出現(xiàn)目標跟蹤丟失現(xiàn)象,第261幀和第267幀反映的是目標跑出視場后,再次進入的跟蹤情況,由圖可知從第101幀開始目標跟蹤失敗。由上面的實驗結(jié)果知:基于H分量的概率密度搜索出現(xiàn)了跟蹤丟失現(xiàn)象,這是因為H分量容易受光照強度變化的影響,這就導(dǎo)致不能更加精確的對目標進行跟蹤,使跟蹤產(chǎn)生較大的誤差,當誤差積累到一定閾值時就會致使跟蹤偏離,進而導(dǎo)致跟蹤失效。
圖6 傳統(tǒng)CamShift算法跟蹤部分幀結(jié)果
圖7與圖6顯示了在同一場景下的跟蹤結(jié)果圖。由圖6可知,當光線變強時,跟蹤過程中誤差逐漸變大。圖7中,當光照強度變化較大時,跟蹤誤差明顯減小。當背景中存在微弱光線變化干擾時,由第89幀可以看出,改進后的跟蹤算法的跟蹤誤差比圖6中第89幀的跟蹤誤差要小。當背景中存在局部暗光和高光時,由第94幀,第101幀,第261幀,第267幀知,該算法對光照具有魯棒性,即使目標在第261幀后跑出視場,第267幀重新回到視場后仍然可以很好地進行連續(xù)跟蹤。這是由于局部二值模式反映的是相鄰像素間像素的亮度變化,當圖像全局變亮時,局部二值模式值不變,所以可以得到較好的跟蹤效果。
圖7 改進算法跟蹤部分幀結(jié)果
本實驗是在室內(nèi)環(huán)境中存在相似色干擾物的情況下,對紅色小車進行跟蹤。實驗跟蹤目標初始幀同樣由人工選擇(采用矩形框)。圖8與圖9是對同一視頻中運動的小車分別采用傳統(tǒng)Camshift算法和本文算法進行跟蹤,視頻中目標小車和紅色中性筆的顏色相似,造成顏色干擾。
圖8中從第115幀到第249幀對目標小車跟蹤效果良好,第340幀到第375幀,目標小車和紅色中性筆重合,由于顏色相似,跟蹤框逐漸擴大,直到第400幀跟蹤狂幾乎占滿整個視場,目標丟失。這是由于傳統(tǒng)的CamShift算法是基于顏色直方圖特征的,所以顏色的干擾對算法的影響較大,一旦出現(xiàn)相似顏色干擾物,就無法找回目標,整個跟蹤過程就會失效。而采用本文算法的圖9在第340幀到第400幀,在目標小車逐漸靠近紅色中性筆到與紅色中性筆分離的過程中,跟蹤并沒有受到干擾物的影響,進而反映了本文算法對背景中存在相似顏色的干擾物具有較好的抗干擾性。
圖8 傳統(tǒng)CamShift算法跟蹤部分幀結(jié)果圖
圖9 本文算法跟蹤部分幀結(jié)果圖
本文分析了將顏色特征與局部二值模式特征結(jié)合起來的CamShift跟蹤算法?;舅枷胧欠謩e生成的圖像H通道概率密度反向投影和紋理圖概率密度反向投影,將兩者的概率密度反向投影進行相與運算,將運算后的概率密度反向投影圖與色調(diào)概率密度反向投影圖進行加權(quán)運算,得到最終的概率密度投影圖,然后采用MeanShift算法在概率密度投影圖上搜索目標。本文結(jié)合局部二值模式特征的跟蹤算法能夠解決傳統(tǒng)CamShift算法易受光照影響的缺點。由實驗結(jié)果知:相比傳統(tǒng)Camshift算法,本文算法對光照強度變化和顏色干擾具有一定的魯棒性。