滕 飛, 劉 清, 郭建明, 周雅琪
武漢理工大學(xué)自動(dòng)化學(xué)院,武漢430070
我國(guó)內(nèi)河航運(yùn)資源非常豐富,有長(zhǎng)江水系、珠江水系、京杭運(yùn)河與淮河水系、黑龍江與松花江水系等,其中部分內(nèi)河航段狹窄,彎曲,險(xiǎn)淺,且航道內(nèi)船舶數(shù)量大,種類多,導(dǎo)致海事監(jiān)管量大,成本高,風(fēng)險(xiǎn)突出.融合了AIS、GIS、GPS、VTS、CCTV系統(tǒng)等的“電子巡航”是海事監(jiān)管的發(fā)展趨勢(shì)[1].如何提高CCTV系統(tǒng)的主動(dòng)性和智能化,如實(shí)時(shí)監(jiān)控船舶航行、停泊及作業(yè)秩序,實(shí)現(xiàn)對(duì)船舶的航跡跟蹤、安全預(yù)警、違法處置、信息服務(wù)等功能已成為如今的研究熱點(diǎn)[2].
然而,內(nèi)河環(huán)境場(chǎng)景復(fù)雜,尤其在光照變化、視角變化或者其他船只對(duì)目標(biāo)船舶遮擋嚴(yán)重的情況下,目前的船舶跟蹤算法效果欠佳.
依據(jù)目標(biāo)表示方式的不同,目前的船舶跟蹤算法一般可分為基于變形模板、基于特征、基于模型的方式.變形模板中較常用的是主動(dòng)輪廓模型.文獻(xiàn)[3]提出了一種自動(dòng)選擇主動(dòng)輪廓線初始控制點(diǎn)的方法,能跟蹤多個(gè)海事運(yùn)動(dòng)目標(biāo).此類跟蹤算法抗干擾能力強(qiáng),適合可變形目標(biāo)的跟蹤,但對(duì)初始化輪廓的要求較高,且計(jì)算復(fù)雜,實(shí)時(shí)性差.文獻(xiàn)[4]提出了基于灰度特征的多模板匹配跟蹤算法,能夠在艦船被部分遮擋的情況下對(duì)艦船實(shí)現(xiàn)魯棒的跟蹤,但在背景中存在相似目標(biāo)時(shí)容易發(fā)生誤匹配.文獻(xiàn)[5]采用基于模型的跟蹤算法,提出用2D或3D Haar小波對(duì)目標(biāo)進(jìn)行實(shí)時(shí)跟蹤.該算法精度較高,對(duì)簡(jiǎn)單背景的海事監(jiān)控目標(biāo)跟蹤效果較好.然而,船只種類形狀各不相同,難以建立完整的樣本庫,其難點(diǎn)在于如何獲得目標(biāo)的精確幾何模型.文獻(xiàn)[6]提出了TLD(tracking-learningdetection)跟蹤框架,并應(yīng)用于長(zhǎng)期無約束視頻流的人臉識(shí)別和人體跟蹤,其精確度較高,實(shí)時(shí)性較好,魯棒性很強(qiáng).本文根據(jù)TLD算法對(duì)短期跟蹤器和目標(biāo)檢測(cè)器進(jìn)行改進(jìn),再應(yīng)用到內(nèi)河CCTV系統(tǒng)的船舶識(shí)別與跟蹤中.實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的算法在船舶跟蹤的實(shí)時(shí)性、準(zhǔn)確性和魯棒性方面成效很好.
TLD框架是由一個(gè)LK短期跟蹤器、一個(gè)目標(biāo)檢測(cè)器、一個(gè)在線學(xué)習(xí)模塊構(gòu)成,其組成框架和工作流程見圖1.LK短期跟蹤器遞歸地跟蹤目標(biāo),通過一種半監(jiān)督學(xué)習(xí)機(jī)制在線建立目標(biāo)檢測(cè)器來精確定位目標(biāo).短期跟蹤器、目標(biāo)檢測(cè)器相互獨(dú)立但同步工作,同時(shí)在線學(xué)習(xí)機(jī)制確保LK短期跟蹤器、目標(biāo)檢測(cè)器實(shí)時(shí)更新,使得該算法可以在攝像頭劇烈抖動(dòng)、背景不斷變化、目標(biāo)自身劇烈運(yùn)動(dòng),甚至目標(biāo)從視角范圍消失后再次出現(xiàn)在視野中等復(fù)雜環(huán)境時(shí)仍能實(shí)時(shí)而準(zhǔn)確地跟蹤目標(biāo).
圖1 TLD組成框架和工作流程圖Figure 1 Diagram of TLD framework
TLD框架下的短期跟蹤器采用的是LK光流法.這是一種遞歸的跟蹤方法,即假設(shè)給定目標(biāo)在t時(shí)刻的位置,跟蹤算法根據(jù)目標(biāo)在第t時(shí)刻的位置信息計(jì)算目標(biāo)在第t+1時(shí)刻的位置[7].LK算法的核心是計(jì)算運(yùn)動(dòng)物體的光流.計(jì)算光流的步驟如下:
步驟1 圖像滿足亮度恒定,即圖像場(chǎng)景中目標(biāo)的像素在幀間運(yùn)動(dòng)時(shí)外觀保持不變.在此約束條件下有
式中,I代表t時(shí)刻的圖像,J代表t+1時(shí)刻的圖像,X代表的是圖像的二維坐標(biāo)信息,d代表像素點(diǎn)由前一幀到當(dāng)前幀的位移向量.式(1)表明,某一像素點(diǎn)在前后兩幀中可能會(huì)改變它的位置,但保持相同的像素值.
步驟2 圖像滿足時(shí)間連續(xù)假設(shè),或者稱運(yùn)動(dòng)為“小運(yùn)動(dòng)”.在此約束條件下有
式中,I′(X)代表前一幀圖像在位置X的梯度.此約束條件限制了d的取值在很小的數(shù)值范圍內(nèi),于是可以得到
由式(3)可知,d是未定的.它的解空間是一條線而不是一個(gè)點(diǎn)(即孔徑問題),于是引入第3個(gè)約束條件.
步驟3 圖像空間一致性.在一個(gè)場(chǎng)景中,同一表面上臨近的點(diǎn)具有相似的運(yùn)動(dòng),在圖像平面上的投影也在臨近區(qū)域[8].因此,求解d就變成求解
式中,W為具體應(yīng)用中某個(gè)像素的某鄰域范圍,于是根據(jù)最小二乘法將式(4)轉(zhuǎn)化為
由式(6)計(jì)算出d后,就可以根據(jù)式(1)由像素點(diǎn)在前一幀的位置計(jì)算像素點(diǎn)在當(dāng)前幀的位置.
應(yīng)用這種方法必須滿足的一個(gè)前提條件是目標(biāo)在整個(gè)圖像序列都是可見的.由于短期跟蹤器沒有建立目標(biāo)的模型,如果當(dāng)目標(biāo)遇到遮擋或者目標(biāo)移出視角范圍之外而再次出現(xiàn)在視角范圍之內(nèi)時(shí),就會(huì)跟蹤失敗.即便上述情況沒有發(fā)生,當(dāng)目標(biāo)發(fā)生姿態(tài)改變或者外界光照條件發(fā)生改變時(shí),LK短期跟蹤器也會(huì)出現(xiàn)“漂移”.TLD算法采用向前向后誤差和歸一化相關(guān)系數(shù)兩種誤差檢測(cè)機(jī)制來校驗(yàn)LK短期跟蹤結(jié)果[9]:
1)向前向后誤差
向前向后誤差定義為
式中,p是像素在前一幀的位置,設(shè)LK(p)是像素在當(dāng)前幀的位置,p"=LK-1(LK(p))是對(duì)像素在當(dāng)前幀的位置應(yīng)用LK短期跟蹤器“逆跟蹤”得到的像素在前一幀的對(duì)應(yīng)位置.ε是這兩個(gè)位置的歐氏距離,即向前向后誤差.當(dāng)所有像素的向前向后誤差的中值大于某一閾值時(shí),就表明LK短期跟蹤器跟蹤失敗.
2)歸一化相關(guān)系數(shù)NCC
歸一化相關(guān)系數(shù)定義為
式中,μ1、μ2、σ1、σ2分別代表x周圍鄰域P1、P2的均值和方差.只有當(dāng)某對(duì)應(yīng)像素對(duì)的歸一化相關(guān)系數(shù)值NCC大于某一閾值時(shí),對(duì)應(yīng)像素點(diǎn)的跟蹤結(jié)果才是足夠可信的.
由式(8)可知,像素對(duì)的歸一化相關(guān)系數(shù)值NCC的求解較繁瑣,故以NCC值校驗(yàn)像素的LK短期跟蹤結(jié)果計(jì)算代價(jià)很高.為了根據(jù)式(6)求得某像素的位移向量d,就應(yīng)確保該像素處G可逆.由數(shù)學(xué)理論知,當(dāng)G滿秩(秩為2),即G有兩個(gè)較大的特征值時(shí),G一定可逆.與這一條件所對(duì)應(yīng)的幾何約束為:在圖像紋理區(qū)域中,存在兩個(gè)方向均有明顯梯度的區(qū)域.于是本文通過驗(yàn)證像素的兩個(gè)方向是否均存在明顯梯度來校驗(yàn)該像素的LK短期跟蹤結(jié)果是否有效,即設(shè)定一個(gè)合理的閾值λ(λ>0),使得min(λ1,λ2)>λ,其中λ1和λ2分別為矩陣G的特征值.不難看出,G在角點(diǎn)處有兩個(gè)較大的特征值,所以這些角點(diǎn)是“可用于跟蹤的良好特征點(diǎn)”.此性質(zhì)說明了提出的特征值約束條件很好地保留了基于圖像角點(diǎn)的像素跟蹤結(jié)果,從而也證明了用特征值的約束條件對(duì)像素的LK短期跟蹤結(jié)果進(jìn)行校驗(yàn)的可行性與準(zhǔn)確性.
概括以上算法的過程如下:在前一幀目標(biāo)區(qū)域中均勻地初始化一些點(diǎn)后,利用LK光流法遞歸地跟蹤這些點(diǎn),并根據(jù)向前向后誤差檢測(cè)機(jī)制和特征值約束條件來濾除一些跟蹤結(jié)果較差的點(diǎn),然后根據(jù)剩下的點(diǎn)計(jì)算目標(biāo)在當(dāng)前幀的位置.當(dāng)LK短期跟蹤器跟蹤失敗時(shí),停止LK短期跟蹤器的跟蹤.
在LK短期跟蹤過程中,由于沒有對(duì)目標(biāo)建模,故當(dāng)目標(biāo)遇到遮擋或者目標(biāo)移出視角范圍之外時(shí),短期跟蹤器很容易跟蹤失敗[10].因此,短期跟蹤器一旦跟蹤失敗,就應(yīng)重新初始化,以確保能夠在無約束的視頻流中長(zhǎng)期穩(wěn)健地跟蹤目標(biāo).TLD框架采用由滑動(dòng)窗和級(jí)聯(lián)分類器構(gòu)成的目標(biāo)檢測(cè)器來精確定位目標(biāo).滑動(dòng)窗對(duì)輸入圖像進(jìn)行遍歷,然后由級(jí)聯(lián)分類器對(duì)目標(biāo)候選區(qū)域進(jìn)行判斷,以確定目標(biāo)候選區(qū)域是否為跟蹤的目標(biāo).級(jí)聯(lián)分類器采用了方差濾波器和隨機(jī)厥分類器[11],在此基礎(chǔ)上本文還提出增加對(duì)候選區(qū)域的模板匹配,以增強(qiáng)算法的準(zhǔn)確性.
1)方差濾波器
對(duì)于選定的跟蹤目標(biāo)區(qū)域,首先計(jì)算其區(qū)域方差
對(duì)候選目標(biāo)區(qū)域的區(qū)域方差也可用“積分圖”的方式類似求出.方差濾波器過濾掉候選目標(biāo)區(qū)域方差小于0.5σ2的區(qū)域,于是可以很快過濾掉均勻的背景區(qū)域.
2)隨機(jī)厥分類器
隨機(jī)厥分類器選取的是船舶的隨機(jī)厥特征.每棵隨機(jī)厥都是由一些像素對(duì)的灰度值的差值構(gòu)成的,其計(jì)算方式描述如圖2所示.
圖2中有3棵厥,每棵厥包括了4組像素對(duì).其中白色點(diǎn)和黑色點(diǎn)都對(duì)應(yīng)于輸入圖像中對(duì)應(yīng)位置的像素.如果白色點(diǎn)所對(duì)應(yīng)的原始圖像的像素灰度值大于黑色點(diǎn)所對(duì)應(yīng)的像素灰度值,就令該特征值為1;否則就為0[12],即
所有的這些二進(jìn)制特征最后組合成一個(gè)特征值F.假設(shè)選取了s個(gè)特征,每棵厥將產(chǎn)生一個(gè)0~(2s-1)的特征值[13].獲得這個(gè)特征值F后,就可由訓(xùn)練數(shù)據(jù)求出后驗(yàn)概率P(y=1|F),最后取所有厥的后驗(yàn)概率的平均值,并把計(jì)算結(jié)果作為判斷此候選目標(biāo)區(qū)域?qū)儆诟信d趣目標(biāo)的置信度[14]檢測(cè)器過濾掉Ppos小于0.5的候選區(qū)域.
圖2 隨機(jī)厥特征描述與計(jì)算Figure 2 Random fern feature description and calculation
經(jīng)過上述處理,輸入圖像中目標(biāo)候選區(qū)域已大大減少,但因內(nèi)河環(huán)境下的背景雜亂以及多尺度的影響,僅由上述步驟還不足以獲得目標(biāo)在當(dāng)前幀的位置.因此,必須對(duì)檢測(cè)結(jié)果進(jìn)行聚類判斷,并與LK短期跟蹤結(jié)果進(jìn)行融合,才能得到最終的目標(biāo)位置.然而,這種方法相對(duì)復(fù)雜,計(jì)算量大,而且對(duì)于不同復(fù)雜度不同精度的聚類方法,得到的最終結(jié)果具有不確定性.于是本文對(duì)此進(jìn)行改進(jìn),用模板匹配方法對(duì)檢測(cè)結(jié)果進(jìn)行篩選并整合,再與LK短期跟蹤結(jié)果進(jìn)行融合.考慮到模板匹配的計(jì)算代價(jià)也相對(duì)較高,本文將在線模板空間的數(shù)目限制在一個(gè)小的范圍內(nèi)(實(shí)驗(yàn)中選取在線模板空間中的模板數(shù)目為10).計(jì)算模板相似度的公式為
式(13)中其取值范圍為[-1,1].根據(jù)式(13)調(diào)整后,N(P1,P2)的取值范圍為[0,1],其值越接近于1,表明與在線模板空間越相似.最終將某一候選區(qū)域與模板空間的相似度定義為N(P,W),W為模板空間,med表示取所有相似度的中值.只有當(dāng)目標(biāo)候選區(qū)域和模板空間的相似度大于等于0.7時(shí)才把當(dāng)前候選區(qū)域加入到在線模板中,同時(shí)替換掉模板空間中當(dāng)前相似度最低的模板,以保持模板空間中數(shù)目的穩(wěn)定.這種模板匹配方法能夠在滿足內(nèi)河船舶跟蹤實(shí)時(shí)性的基礎(chǔ)上對(duì)目標(biāo)船舶外形進(jìn)行建模,并適應(yīng)其外觀姿態(tài)的不斷變化.算法改進(jìn)后的在線檢測(cè)器的流程圖如圖3所示:
圖3 檢測(cè)部分流程圖Figure 3 Flow chart of detection
在線學(xué)習(xí)模塊是在線建立目標(biāo)檢測(cè)器,并完成對(duì)跟蹤器、檢測(cè)器的學(xué)習(xí)和更新.TLD框架充分利用視頻序列中目標(biāo)的運(yùn)動(dòng)屬性,采用包含生長(zhǎng)事件(即P專家)和修剪事件(即N專家)的半監(jiān)督方式對(duì)目標(biāo)建模[15].生長(zhǎng)事件假定目標(biāo)的運(yùn)動(dòng)構(gòu)成一條平滑的軌跡,然后在目標(biāo)的運(yùn)動(dòng)軌跡上尋找訓(xùn)練的正樣本,通過LK短期跟蹤結(jié)果把所有可能包含目標(biāo)的區(qū)域都加入到在線模型中,實(shí)現(xiàn)模型局部最優(yōu)化;修剪事件則在目標(biāo)的運(yùn)動(dòng)軌跡之外尋找訓(xùn)練的負(fù)樣本,并剔除在線模型中已經(jīng)不能適應(yīng)目標(biāo)狀態(tài)變化的模板,實(shí)現(xiàn)模型全局最優(yōu)化[16].最終使在線模型和目標(biāo)的真實(shí)模型趨于一致,在線學(xué)習(xí)模塊示意圖如圖4所示:
圖4 在線學(xué)習(xí)模塊示意圖Figure 4 Diagram of online learning module
在線學(xué)習(xí)模塊充分利用了視頻序列中包含的大量結(jié)構(gòu)化的數(shù)據(jù)信息,使得最終目標(biāo)檢測(cè)器的性能較初始檢測(cè)器有了很大提高.
為了驗(yàn)證改進(jìn)后的跟蹤算法在內(nèi)河CCTV系統(tǒng)船舶跟蹤中的有效性和先進(jìn)性,本文對(duì)算法進(jìn)行了實(shí)現(xiàn),采用從內(nèi)河航道CCTV系統(tǒng)采集到的視頻進(jìn)行跟蹤實(shí)驗(yàn),并以其中兩個(gè)典型實(shí)驗(yàn)素材為例來對(duì)原TLD框架和改進(jìn)后的算法進(jìn)行若干性能比較.為了得到較為公平的比較結(jié)果,采用與原作者相同的精度、召回度、平均位置誤差等性能指標(biāo)定義,并將兩種算法在兩個(gè)實(shí)驗(yàn)素材中各運(yùn)行5次,取其平均值作為各算法的對(duì)應(yīng)比較值.實(shí)驗(yàn)硬件均采用Intel(R)Core(TM)2 Duo CPU,2.00GHz,2G內(nèi)存的筆記本電腦,需要的軟件配置包括visual studio 2008,opencv2.3等,最終得到如表1所示的跟蹤性能.
表1 跟蹤性能比較Table 1 Performance analysis
實(shí)驗(yàn)1的素材是從長(zhǎng)江海事局調(diào)研的CCTV監(jiān)控視頻,整段視頻包括660幀,選擇最右邊的船舶作為跟蹤目標(biāo)(第1幀為手工選擇需要跟蹤的目標(biāo)),并截取算法在第54、156、266、343、426、578、636幀的跟蹤結(jié)果,如圖5所示.第54、156幀目標(biāo)向左運(yùn)動(dòng)向大船靠近,第266、343、426幀顯示目標(biāo)被大船小部分遮擋,大部分遮擋,直至全局遮擋時(shí)的跟蹤情況,結(jié)果表明改進(jìn)后的算法在目標(biāo)遇到較大范圍遮擋時(shí)仍能保持實(shí)時(shí)跟蹤船舶,且保持較高的跟蹤精度.第578、636幀對(duì)應(yīng)著遮擋減弱,目標(biāo)朝著相反方向分離的過程.在整個(gè)過程中,算法對(duì)目標(biāo)船舶都取得了較好的跟蹤效果.
第2個(gè)實(shí)驗(yàn)素材取自浙江湖州港航處CCTV系統(tǒng)接近黃昏時(shí)刻的監(jiān)控畫面,整段視頻包括658幀.選擇右邊的船舶作為跟蹤目標(biāo)(第1幀為手工選擇需要跟蹤的目標(biāo)),并截取算法在第54、243、426、558、636幀的跟蹤結(jié)果,如圖6所示.可以觀察到光照變化對(duì)視頻清晰度的影響,尤其是當(dāng)跟蹤目標(biāo)越來越靠近岸邊攝像頭發(fā)生視角變化時(shí)目標(biāo)限位框的變化,顯然可以看出本文算法始終實(shí)時(shí)跟蹤目標(biāo)并保持較高的精度,證明該算法對(duì)光照和視角變化也具有一定的魯棒性.
圖5 船舶間存在遮擋的跟蹤結(jié)果Figure 5 Tracking results when ships suffer occlusions
圖6 光照和視角變化時(shí)的船舶跟蹤效果Figure 6 Tracking results when ships suffer lumination and viewpoint change
本文基于對(duì)TLD框架的研究,將改進(jìn)后的算法應(yīng)用于內(nèi)河CCTV系統(tǒng)的船舶識(shí)別和跟蹤中.實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的算法在應(yīng)對(duì)光照變化、攝像機(jī)視角變化以及遇到遮擋等情況下仍能對(duì)船舶有效跟蹤,且保持較高的跟蹤精度和實(shí)時(shí)性.
雖然本文采取的算法在跟蹤精度和魯棒性上都比現(xiàn)有的算法有了較大提高,但因內(nèi)河水域船舶種類多,數(shù)量多,所以如何在內(nèi)河復(fù)雜環(huán)境下提取出船舶的更有效的特征以及如何實(shí)現(xiàn)多特征融合將會(huì)是一系列新的挑戰(zhàn).
[1]張敬東,王瑋.淺析智能視頻技術(shù)在海事管理中的應(yīng)用[J].中國(guó)水運(yùn),2010,10(12):140-154.
ZHANG Jindong,WANG Wei.Analyze intelligent video technology in the application of maritime management[J].China Water Transport,2010,10(12):140-154.(in chinese)
[2]郭寶云.CCTV系統(tǒng)目標(biāo)定位與跟蹤技術(shù)改進(jìn)方法的研究[D].大連:大連海事大學(xué),2012.
GUO Baoyun.The improvement about research on object location and tracking technology based on CCTV system[D].Dalian:Dalian Maritime University,2012.(in chinese)
[3]張明杰,李翠華,劉明業(yè).基于主動(dòng)輪廓線模型的海面運(yùn)動(dòng)目標(biāo)跟蹤[J].計(jì)算機(jī)工程,2006,32(6):34-36.
ZHANGMingjie,LICuihua,LIUMingye.Ships tracking based on active contour model[J].Computer Engineering,2006,32(6):34-36.(in Chinese)
[4]卓炳榮.海面背景下的紅外艦船目標(biāo)識(shí)別跟蹤技術(shù)研究[D].國(guó)防科學(xué)技術(shù)大學(xué),2011.
ZHUOBingrong.The research on infrared ship recognition[D].National University of Defense Technology,2011.(in Chinese)
[5]GODEC M,ROTH P M,BISCHOF H.Hough-based tracking of non-rigid objects[C]//IEEE International Conference on Computer Vision,2011:81-88.
[6]KALAL Z,MIKOLAJCZYK K,MATAS J.Face-TLD:tracking-learning-detection applied to faces[C]//IEEE International Conference on Image Processing,2010:3789-3792.
[7]HORN B K P,SCHUNCK B G.Determining optical f low[J].Artif icial Intelligence,1981,17(1):185-203.
[8]BARRON J L,FLEET D J,BEAUCHEMIN S S.Performance of optical f low techniques[J].International Journal of Computer Vision,1994,12(4):43-77.
[9]KALAL Z,MIKOLAJCZYK K,MATAS J.Forwardbackward error: automatic detection of tracking failures[C]//International Conference on Pattern Recognition,2010:2756-2759.
[10]GUO Y L,HSU S,SAw HNEY H S.Robust object matching for persistent tracking with heterogeneous features[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2007,29(5):824-839.
[11]KALAL Z,MIKOLAJCZYK K,MATASJ.Online learning of robust object detectors during unstable tracking[C]//IEEE International Conference on Computer Vision,2009:1417-1424.
[12]BOSCHA,ZISSERMANA,MUOZX.Image Classif ication using random forests and ferns[C]//IEEE International Conference on Computer Vision,2007:1-8.
[13]OZUYSAL M,CALONDER M,LEPETIT V.Fast keypoint recognition using random ferns[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2010,32(1):448-461.
[14]LEPETIT V,FUA P.Keypoint recognition using randomized trees[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2006,28(9):1465-1479.
[15]KALAL Z,MIKOLAJCZYK K,MATASJ.P-N learning:bootstrapping binary classif iers by structural constraints[C]//IEEE Conference on Computer Vision,2010:49-56.
[16]KALAL Z,MIKOLAJCZYK K,MAYAS J.Trackinglearning-detection[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2012,34(7):1409-1422.