敖邦乾,楊 莎,劉小雍,葉振環(huán)
(1.遵義師范學(xué)院工學(xué)院,貴州 遵義 563006;2.遵義師范學(xué)院物理與電子科學(xué)學(xué)院,貴州 遵義 563006)
無(wú)人水面艇(unmanned surface vessel,USV)經(jīng)常被用于執(zhí)行特殊且不適合載人的任務(wù),能完成情報(bào)收集、環(huán)境監(jiān)測(cè)、水面搜救和水文地理勘查等任務(wù),應(yīng)用十分廣泛。對(duì)于正在執(zhí)行任務(wù)的USV進(jìn)行檢測(cè)跟蹤,可以有效實(shí)施操作及控制。其中,基于區(qū)域的跟蹤[1]對(duì)整個(gè)圖像區(qū)域進(jìn)行搜索,通過(guò)對(duì)比運(yùn)動(dòng)目標(biāo)相鄰兩幀的位置變化實(shí)現(xiàn)區(qū)域跟蹤;基于活動(dòng)輪廓的算法[2]將運(yùn)動(dòng)目標(biāo)的邊界輪廓作為跟蹤模板,并對(duì)輪廓進(jìn)行實(shí)時(shí)的跟蹤;基于模型的方法[3]通過(guò)對(duì)運(yùn)動(dòng)模板的外形特征建立2D或3D模型來(lái)完成跟蹤任務(wù)。這些算法中,基于區(qū)域的跟蹤方法需要搜索整個(gè)圖像區(qū)域,計(jì)算量大,實(shí)時(shí)性較差;基于活動(dòng)輪廓的跟蹤方法,目標(biāo)輪廓的更新比較困難;基于模型的跟蹤方法則難以建立精確的模型,且易受外界影響。
基于特征的跟蹤方法[4]通過(guò)提取運(yùn)動(dòng)目標(biāo)的物理特征,利用相關(guān)的跟蹤算法實(shí)現(xiàn)對(duì)目標(biāo)有效的跟蹤,其中,MeanShift是基于迭代收斂到概率最大的局部極大的非參數(shù)估計(jì)法[5];Camshift則是對(duì)MeanShift的一種改進(jìn)[6],通過(guò)調(diào)整核函數(shù)來(lái)適應(yīng)跟蹤目標(biāo)在圖像中的大小,能有效解決目標(biāo)變形和遮擋的問(wèn)題,同時(shí)算法對(duì)系統(tǒng)資源要求不高,時(shí)間復(fù)雜度低,在較簡(jiǎn)單背景下能夠取得較好的跟蹤效果,但是傳統(tǒng)的CamShift只對(duì)HSV中的H分量進(jìn)行統(tǒng)計(jì)分析,易導(dǎo)致跟蹤特征單一,當(dāng)背景較為復(fù)雜或有許多與目標(biāo)顏色相似像素干擾的情況下,會(huì)導(dǎo)致跟蹤失敗,文獻(xiàn)[7]引入S分量,通過(guò)構(gòu)建H-S二維直方圖對(duì)原算法進(jìn)行改進(jìn);文獻(xiàn)[8]繼續(xù)加入V分量,組成三維直方圖跟蹤模板進(jìn)一步改進(jìn)了算法,跟蹤性能得到了進(jìn)一步的提升,但是這類方法只是單純地考慮顏色直方圖,忽略了目標(biāo)的空間分布特性。
為了提升目標(biāo)跟蹤效果的魯棒性,文獻(xiàn)[9]提出將MeanShift與Kalman濾波相結(jié)合的跟蹤方法,充分發(fā)揮Kalman濾波器的預(yù)測(cè)功能和MeanShift跟蹤器的搜索功能,提高了跟蹤的精度和實(shí)時(shí)性;文獻(xiàn)[10]提出了一種改進(jìn)的CamShift和Kalman組合的目標(biāo)跟蹤算法,能對(duì)被嚴(yán)重阻擋或在與目標(biāo)顏色相近的背景環(huán)境下的運(yùn)動(dòng)目標(biāo)進(jìn)行連續(xù)跟蹤。
對(duì)于運(yùn)動(dòng)的跟蹤目標(biāo),當(dāng)運(yùn)動(dòng)目標(biāo)發(fā)生形變或遮擋時(shí),需要進(jìn)行大量的計(jì)算,同時(shí)跟蹤的實(shí)時(shí)性較差,魯棒性不是很強(qiáng),本文針對(duì)以上的問(wèn)題,提出一種基于目標(biāo)邊緣檢測(cè)的改進(jìn)CamShift和Kalman濾波相結(jié)合的跟蹤算法,改進(jìn)了當(dāng)跟蹤目標(biāo)與環(huán)境顏色相近時(shí)魯棒性較差的問(wèn)題,同時(shí)對(duì)于快速運(yùn)動(dòng)及被障礙物遮擋的跟蹤目標(biāo)也具有很好的跟蹤性能。
RGB顏色空間對(duì)光線較為敏感,為了減少光照變化對(duì)檢測(cè)目標(biāo)的影響,將需要檢測(cè)跟蹤的目標(biāo)圖像從RGB顏色空間轉(zhuǎn)換到HSV顏色空間,轉(zhuǎn)換后效果如圖1所示,其中,HSV顏色空間的h值計(jì)算如下:
圖1 被跟蹤目標(biāo)原始及轉(zhuǎn)換后的圖像Fig.1 The original image and converted image of the target
(1)
式(1)中,r(紅色)、g(綠色)、b(藍(lán)色)分別表示在RGB顏色空間中的坐標(biāo)值,其取值為[0, 1]。在HSV顏色空間中,h取值范圍為[0, 360],它的值被歸一化為介于0和180之間以匹配8位灰度圖像(0,255),HSV顏色空間的s值為:
(2)
HSV顏色空間的v值為:
(3)
本文算法采用HSV色彩空間進(jìn)行處理,對(duì)于前方目標(biāo)由于轉(zhuǎn)向及變速等引起的形狀及顏色變化具有一定的魯棒性,通過(guò)分離出其中的H(色調(diào))分量進(jìn)行該區(qū)域的色調(diào)直方圖計(jì)算,得到目標(biāo)模板的顏色直方圖,根據(jù)獲得的顏色直方圖將原始輸入圖像轉(zhuǎn)化成顏色概率分布圖像,即輸入圖像在已知目標(biāo)顏色直方圖的條件下的顏色概率密度分布圖,同時(shí)對(duì)其進(jìn)行歸一化處理,如圖2所示。其中包含了目標(biāo)在當(dāng)前幀中的相干信息,對(duì)于輸入圖像中的每一個(gè)像素點(diǎn),建立目標(biāo)模型顏色直方圖:
圖2 目標(biāo)原始及歸一化直方圖Fig.2 The original histogram and normalized histogram
(4)
式(4)中,u,m,δ,|R|分別表示顏色向量、被量化的級(jí)數(shù)、Kronecker Delta函數(shù)和區(qū)域R內(nèi)的像素點(diǎn)個(gè)數(shù),h(x,y)為像素點(diǎn)(x,y)色度分量H量化后的值。對(duì)于目標(biāo)區(qū)域內(nèi)的像素,可得到該像素屬于目標(biāo)像素的概率,而對(duì)于非目標(biāo)區(qū)域內(nèi)的像素,該概率為0,這是一個(gè)反向投影過(guò)程。
算法設(shè)定閾值或最大迭代次數(shù)并進(jìn)行迭代,通過(guò)尋找目標(biāo)中心在當(dāng)前幀中的位置來(lái)進(jìn)行檢測(cè)跟蹤,首先在顏色概率分布圖中選擇搜索窗口的大小和初始位置,然后計(jì)算搜索窗口的質(zhì)心位置。設(shè)像素點(diǎn)(x,y)位于搜索窗口內(nèi),I(x,y)為顏色直方圖的反向投影圖中該像素點(diǎn)對(duì)應(yīng)的直方圖概率值:
I(x,y)={H(u)|h(x,y)=u},(x,y)∈R
(5)
搜索目標(biāo)窗口步驟如下:
步驟1 計(jì)算零階矩m00,搜索窗口內(nèi)所有點(diǎn)的概率之和:
(6)
計(jì)算一階矩及概率在x,y方向的加權(quán)和:
(7)
步驟2 計(jì)算搜索窗口的質(zhì)心(xc,yc):
(8)
步驟3 設(shè)置初始化窗口大小,其中寬度為s,長(zhǎng)度為l:
(9)
步驟4 計(jì)算二階矩:
(10)
則目標(biāo)運(yùn)動(dòng)窗口的方向?yàn)椋?/p>
(11)
初始化式(9)得到移動(dòng)跟蹤窗口,根據(jù)式(11)提供的運(yùn)動(dòng)方向,將其移動(dòng)到式(8)目標(biāo)的質(zhì)心位置,判斷跟蹤窗口的移動(dòng)距離是否大于設(shè)定的閾值,若是,則重復(fù)步驟1到步驟4的搜索過(guò)程,直到相鄰搜索窗口的質(zhì)心變化小于給定的閾值或者達(dá)到迭代次數(shù)的最大值,同時(shí)為了實(shí)現(xiàn)連續(xù)跟蹤,將上一幀圖像搜索窗口的大小、質(zhì)心作為下一幀搜索窗口的大小和質(zhì)心,如此循環(huán)迭代,則可以完成對(duì)運(yùn)動(dòng)目標(biāo)的連續(xù)跟蹤,具體流程圖如圖3所示。
圖3 Camshift跟蹤算法流程圖Fig.3 The flow chart of Camshift tracking algorithm
將目標(biāo)的RGB圖像轉(zhuǎn)換成HSV圖片空間后,對(duì)外界光照變化有了較強(qiáng)的魯棒性,但當(dāng)運(yùn)動(dòng)目標(biāo)的顏色與運(yùn)行環(huán)境顏色區(qū)域比較接近或運(yùn)動(dòng)目標(biāo)被障礙物遮擋時(shí),其跟蹤效果則很容易受到干擾,如圖4所示,在目標(biāo)附近區(qū)域,由于被跟蹤目標(biāo)與環(huán)境顏色比較相似,因此其概率直方圖也混淆有環(huán)境顏色的概率,目標(biāo)的跟蹤窗口有較大的誤差,容易丟失目標(biāo),而在遇到被障礙物遮擋時(shí),其跟蹤窗口無(wú)法進(jìn)行均值計(jì)算,也很容易丟失目標(biāo),需要進(jìn)一步的優(yōu)化算法設(shè)計(jì)。
圖4 跟蹤目標(biāo)顏色與環(huán)境相似直方圖Fig.4 The histogram of similarity between target and environment
本文使用Canny邊緣檢測(cè)算法[11]來(lái)對(duì)跟蹤目標(biāo)進(jìn)行邊緣的提取,加強(qiáng)其跟蹤的魯棒性,具體設(shè)計(jì)如下:
表1 像素點(diǎn)I(x,y)為中心的3×3高斯濾波器Tab.1 3×3 Gaussian filter centered on pixel I (x, y)
(12)
步驟2 沿著x軸和y軸使用Sobel算子(Sx,Sy)來(lái)計(jì)算圖形中每個(gè)像素點(diǎn)的梯度強(qiáng)度和方向,判斷其邊緣是水平、垂直還是對(duì)角線的。
(13)
(14)
(15)
(16)
Angle(θ)=arctan(Gy/Gx)
(17)
步驟3 應(yīng)用非極大值抑制使得邊界變細(xì)的同時(shí)銳化邊緣部分,消除邊緣檢測(cè)算法帶來(lái)的雜散響應(yīng),對(duì)于每個(gè)像素,如果它是先前計(jì)算的梯度方向的局部最大值M(x,y),則保留該值;反之,它的像素值會(huì)被歸零并且被極大值抑制。
(18)
步驟4 經(jīng)過(guò)步驟3的處理,在保留下來(lái)的值中,確認(rèn)強(qiáng)像素點(diǎn)是否位于邊緣的最終圖中,應(yīng)用雙閾值檢測(cè)來(lái)確定真實(shí)的和潛在的邊緣,根據(jù)經(jīng)驗(yàn)設(shè)定兩個(gè)閾值minVal和maxVal,任何強(qiáng)度梯度高于maxVal的像素都是邊緣,任何強(qiáng)度梯度低于minVal的像素都不是邊緣并丟棄,在minVal和maxVal之間具有強(qiáng)度梯度的像素,只有當(dāng)它們連接到具有高于maxVal的強(qiáng)度梯度的像素才被認(rèn)為是邊緣,通過(guò)抑制孤立的弱邊緣最終完成邊緣檢測(cè)。
Canny邊緣檢測(cè)算法能較好地完成環(huán)境中物體的輪廓邊緣檢測(cè),但是其對(duì)目標(biāo)以外的物體也能進(jìn)行無(wú)差別的輪廓檢測(cè),如圖5 所示。只有綜合考慮兩種算法,結(jié)合它們的優(yōu)點(diǎn),才能改進(jìn)跟蹤效果,本文使用Camshift算法和Canny邊緣檢測(cè)算法共同組成目標(biāo)的跟蹤模板,設(shè)計(jì)不同的權(quán)值ρcs、ρcn,假設(shè)跟蹤過(guò)程中Camshift算法和Canny算法的反向投影分別為Fcs、Fcn,則加權(quán)后得到的合成反向投影為:
圖5 不同環(huán)境下跟蹤目標(biāo)邊緣提取Fig.5 The edge extraction in different environment
(19)
從式(19)可以看出,在跟蹤過(guò)程中,加入的Canny邊緣檢測(cè)算法和原來(lái)的Camshift跟蹤算法共同作用于跟蹤目標(biāo),當(dāng)目標(biāo)顏色與環(huán)境顏色較為相近時(shí),邊緣檢測(cè)算法占有較大的權(quán)值,可以抑制環(huán)境的影響,而當(dāng)目標(biāo)顏色與環(huán)境不同時(shí),Camshift算法占有較大的權(quán)值比重,在總的概率密度分布圖中可以自適應(yīng)地調(diào)整相應(yīng)的權(quán)值來(lái)增加系統(tǒng)跟蹤算法的魯棒性。
經(jīng)過(guò)上述設(shè)計(jì)以后,跟蹤系統(tǒng)對(duì)環(huán)境顏色的變化不敏感,具有較強(qiáng)的穩(wěn)定性,但是當(dāng)跟蹤目標(biāo)部分或者全部被障礙物遮擋時(shí),上述設(shè)計(jì)的算法就容易丟失目標(biāo),而且上述設(shè)計(jì)的算法對(duì)運(yùn)動(dòng)目標(biāo)的下一步動(dòng)作無(wú)法做出預(yù)測(cè),對(duì)快速運(yùn)動(dòng)的目標(biāo)的普適性較差。
Kalman濾波[12]和粒子濾波[13]是比較常用的兩種預(yù)測(cè)目標(biāo)下一幀位置的算法,Kalman濾波是一種線性計(jì)算算法,具有計(jì)算量小、實(shí)時(shí)性高等特點(diǎn),Kalman濾波算法在目標(biāo)跟蹤領(lǐng)域得到了廣泛的應(yīng)用,尤其對(duì)動(dòng)態(tài)目標(biāo)的跟蹤檢測(cè),由于其算法很容易控制,并具有較強(qiáng)的魯棒性,在工程上得到了廣泛的應(yīng)用。該算法的核心為采用信號(hào)和噪聲的狀態(tài)空間模型,主要是通過(guò)在狀態(tài)上和時(shí)間上的不斷更新來(lái)完成對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行跟蹤,其模型如圖6所示。算法利用系統(tǒng)的觀測(cè)值來(lái)更新系統(tǒng)的狀態(tài)向量,是一種對(duì)隨機(jī)信號(hào)進(jìn)行最優(yōu)估計(jì)的實(shí)時(shí)遞推算法,濾波器通過(guò)輸入的系統(tǒng)觀測(cè)量對(duì)隨機(jī)信號(hào)進(jìn)行估計(jì),更新后得到的信號(hào)作為濾波器的輸出,其不斷地把協(xié)方差進(jìn)行遞歸,從而估算出系統(tǒng)的最優(yōu)值。
圖6 Kalman濾波模型Fig.6 Kalman filtering model
Kalman濾波預(yù)測(cè)算法有兩個(gè)重要的方程:
系統(tǒng)狀態(tài)方程:
X(k)=AX(k-1)+BU(k)+W(k)
(20)
系統(tǒng)測(cè)量值方程:
Z(k)=HX(k)+V(k)
(21)
式(20)、式(21)中,X(k)和X(k-1)為k時(shí)刻和k-1時(shí)刻的狀態(tài)向量;Z(k)為k時(shí)刻的系統(tǒng)狀態(tài)測(cè)量向量;A、B、H分別表示狀態(tài)轉(zhuǎn)移矩陣、控制矩陣以及測(cè)量矩陣;U(k)為外部輸入控制量;W(k)和V(k)分別表示狀態(tài)過(guò)程噪聲和測(cè)量噪聲,通常應(yīng)用中假設(shè)成零均值高斯白噪聲,服從正態(tài)分布,即Noise~Guasian(0,σ),協(xié)方差矩陣分別為R和Q。 算法主要包括預(yù)測(cè)與更新兩個(gè)階段,其對(duì)系統(tǒng)的預(yù)測(cè)公式組為:
1) 狀態(tài)預(yù)測(cè)公式:
X(k|k-1)=AX(k-1|k-1)+BU(k)
(22)
2) 相對(duì)應(yīng)的誤差協(xié)方差預(yù)測(cè)公式:
P(k|k-1)=AP(k-1|k-1)AT+Q
(23)
現(xiàn)在狀態(tài)的預(yù)測(cè)結(jié)果更新公式組為:
3) 狀態(tài)校正公式:
X(k|k)=X(k|k-1)+
Kg(k)[Z(k)-HX(k|k-1)]
(24)
4) 誤差協(xié)方差校正公式:
P(k|k)=[I-Kg(k)H]P(k|k-1)
(25)
5) Kalman增益系數(shù)公式:
Kg(k)=P(k|k-1)HT·
[HP(k|k-1)HT+R]-1
(26)
(27)
協(xié)方差矩陣Q和R分別為:
(28)
Kalman算法對(duì)于運(yùn)動(dòng)速度過(guò)快或者被遮擋的目標(biāo),能夠比較精確地預(yù)測(cè)其在下一幀視頻圖像中可能出現(xiàn)的位置,很大程度上解決了外界動(dòng)態(tài)環(huán)境變化所引起的跟蹤失敗問(wèn)題,在實(shí)際工程應(yīng)用中具有較大的應(yīng)用價(jià)值。本文基于HSV顏色空間,同時(shí)加入Canny邊緣檢測(cè)算法改進(jìn)CamShift跟蹤算法,在對(duì)運(yùn)動(dòng)目標(biāo)與環(huán)境顏色相近時(shí)的檢測(cè)跟蹤時(shí),很大地加強(qiáng)了跟蹤檢測(cè)的光魯棒性;同時(shí),Kalman算法的加入,使其在高速運(yùn)動(dòng)或有障礙物時(shí)不至于丟失目標(biāo),使其能連續(xù)跟蹤,其流程圖如圖7所示。
圖7 本文算法流程圖Fig.7 The flow chart of this article
為驗(yàn)證本文算法的實(shí)用性及優(yōu)越性,設(shè)置如表2所示的軟硬件及參數(shù)環(huán)境,三種算法在正常環(huán)境情況下,跟蹤的效率差距不是很大,不影響系統(tǒng)的檢測(cè)跟蹤性能,因此本文進(jìn)行了兩種較極端情況下的仿真測(cè)試。
表2 軟硬件環(huán)境及相關(guān)參數(shù)Tab.2 The H/S environment and related parameters
本文使用Bhattacharyya距離[14](BH系數(shù))d(y)和有效幀率[15-16]ω作為其衡量標(biāo)準(zhǔn)。BH系數(shù)ρ(0<ρ<1)用于衡量CamShift算法中檢測(cè)模塊與目標(biāo)模塊的相似程度,其值越大,表示其相似度越高,算法跟蹤效果越好;有效幀率ω則表示在目標(biāo)跟蹤過(guò)程中檢測(cè)到的有效幀數(shù)與總幀數(shù)的比值,用來(lái)衡量目標(biāo)跟蹤算法的有效性。而判斷某一幀是否為有效幀的方法仍然可以采用BH系數(shù),設(shè)定適當(dāng)?shù)拈撝?,?dāng)BH系數(shù)超過(guò)這個(gè)閾值時(shí),則認(rèn)為其為有效幀。
測(cè)試1 運(yùn)動(dòng)目標(biāo)顏色與環(huán)境顏色相似時(shí)測(cè)試效果
從圖8可以看出,當(dāng)跟蹤目標(biāo)顏色與環(huán)境顏色相近時(shí),傳統(tǒng)的CamShift算法仍然可以跟蹤目標(biāo),但是其跟蹤窗口會(huì)變大,總是要滯后幾幀,隨著顏色的越來(lái)越接近,這種滯后會(huì)更嚴(yán)重,而且當(dāng)跟蹤目標(biāo)遇到有與其顏色相近的類似目標(biāo)時(shí),可能還會(huì)檢測(cè)到其他目標(biāo),導(dǎo)致檢測(cè)到的有效幀減少,其測(cè)試效果如圖8(a)所示;CamShift和Kalman濾波相結(jié)合的算法,由于加入了Kalman濾波預(yù)測(cè)算法,跟蹤窗口基本接近于物體的物理長(zhǎng)寬度,能較好地跟蹤目標(biāo),其測(cè)試結(jié)果如圖8(b)所示;本文算法綜合了CamShift和Kalman濾波的優(yōu)點(diǎn),同時(shí)加入了跟蹤目標(biāo)的邊緣檢測(cè)算法,因此其跟蹤窗口能實(shí)時(shí)準(zhǔn)確地跟蹤到目標(biāo),不存在延時(shí)和失真等現(xiàn)象,尤其是在遇到顏色與跟蹤目標(biāo)顏色相近的障礙物或者其他物體時(shí)跟蹤效果更好,采用的顏色直方圖和邊緣檢測(cè)算法相結(jié)合的算法,對(duì)跟蹤目標(biāo)而言,其是唯一的,因此檢測(cè)效果會(huì)更好,測(cè)試結(jié)果如圖8(c)所示。
圖8 不同算法測(cè)試效果Fig.8 The test result of different algorithms
對(duì)三種算法的BH系數(shù)進(jìn)行了比較,如圖9所示,本文算法中的BH系數(shù)達(dá)到最高,且在遇到與跟蹤目標(biāo)顏色相近的其他物體或在跟蹤目標(biāo)與環(huán)境顏色相近的極端情況時(shí),也能達(dá)到很好的效果,其BH系數(shù)基本保持不變,同時(shí)表3中也對(duì)比了三種算法的有效幀率,本文算法可以達(dá)到對(duì)跟蹤目標(biāo)的完全有效跟蹤,具有良好的穩(wěn)定性和魯棒性。
圖9 不同算法BH系數(shù)Fig.9 BH coefficient of different algorithms
表3 顏色相似時(shí)的測(cè)試結(jié)果Tab.3 The effective frames in similar colors
測(cè)試2 有遮擋干擾下的測(cè)試結(jié)果
在跟蹤目標(biāo)穿過(guò)障礙物時(shí),傳統(tǒng)的CamShift算法在跟蹤目標(biāo)遇到障礙物時(shí),跟蹤窗口會(huì)停留在目標(biāo)消失的最后位置,并且其窗口也會(huì)不停地變化,但是當(dāng)目標(biāo)出現(xiàn)在障礙物的前方時(shí),跟蹤窗口還是停留在原來(lái)的位置,并不會(huì)隨著目標(biāo)的重新出現(xiàn)而繼續(xù)匹配窗口,其測(cè)試效果如圖10(a)所示,同時(shí)從圖11中也可以看出,其BH系數(shù)快速地降為零,目標(biāo)繼續(xù)運(yùn)動(dòng)后,CamShift算法失去了目標(biāo),可能導(dǎo)致跟蹤失??;CamShift和Kalman濾波相結(jié)合的算法在遇到障礙物時(shí),可以達(dá)到較好的效果,其BH系數(shù)也可以在跟蹤目標(biāo)穿過(guò)障礙物時(shí),比較快速地恢復(fù)到一個(gè)穩(wěn)定的值,同時(shí)不會(huì)丟失目標(biāo),如圖10(b)所示;本文算法中,其BH系數(shù)在整個(gè)跟蹤過(guò)程中都比較穩(wěn)定,在遇到障礙物時(shí),其值會(huì)減小,但是當(dāng)跟蹤目標(biāo)重新出現(xiàn)時(shí),跟蹤窗口馬上匹配目標(biāo),BH系數(shù)也快速地恢復(fù)到一個(gè)比較穩(wěn)定的值,不會(huì)產(chǎn)生較大的波動(dòng),整個(gè)跟蹤過(guò)程BH系數(shù)都很穩(wěn)定,沒(méi)有明顯的波動(dòng)變化過(guò)程,其測(cè)試效果如圖10(c)所示。對(duì)于復(fù)雜環(huán)境中經(jīng)常被障礙物遮擋的跟蹤目標(biāo),在整個(gè)跟蹤過(guò)程中都能表現(xiàn)出很好的跟蹤性能,從表4的對(duì)比中也可以看出,本算法的有效率是最高的。
圖10 有障礙物環(huán)境測(cè)試效果Fig.10 The test results with obstacle
圖11 有障礙物環(huán)境下BH系數(shù)Fig.11 The BH coefficients of different algorithms
表4 有障礙物時(shí)測(cè)試結(jié)果Tab.4 The effective frames in different algorithms
由于環(huán)境變化的復(fù)雜性,以及光照強(qiáng)度的不斷變化,增加了對(duì)特定目標(biāo)檢測(cè)跟蹤的難度,本文提出結(jié)合Canny邊緣檢測(cè)的改進(jìn)CamShift跟蹤算法,該算法克服了目標(biāo)與環(huán)境顏色相近時(shí)無(wú)法檢測(cè)或檢測(cè)目標(biāo)誤差較大的難點(diǎn),同時(shí)Kalman算法對(duì)目標(biāo)的預(yù)測(cè),尤其是有障礙物時(shí)的目標(biāo)跟蹤,具有較強(qiáng)的魯棒性。仿真測(cè)試實(shí)驗(yàn)結(jié)果表明,算法極大地改進(jìn)了原始CamShift算法在目標(biāo)檢測(cè)跟蹤上的缺陷,本文所設(shè)計(jì)算法的跟蹤效果比較穩(wěn)定,具有較大的應(yīng)用價(jià)值。