蔣晶晶1,安博文2
?。?.上海海事大學(xué) 信息工程學(xué)院 電子工程系,上海 201306,;2.上海海事大學(xué) 信息工程學(xué)院,上海201306)
摘要:針對(duì)低空航拍視頻中的船舶檢測(cè)研究普遍存在因背景變化及水紋擾動(dòng)導(dǎo)致的識(shí)別效果不理想等問(wèn)題,提出了一種基于改進(jìn)型Vibe(Visual background extractor)算法的船舶檢測(cè)方法,。該方法在傳統(tǒng)Vibe算法基礎(chǔ)上融合了改進(jìn)型的Canny算子,,采取平滑濾波與自適應(yīng)閾值分割策略提高了船舶輪廓提取的準(zhǔn)確性。利用四方位結(jié)構(gòu)元素的形態(tài)學(xué)機(jī)制,,降低了水面波紋對(duì)目標(biāo)識(shí)別的干擾影響,。對(duì)于船舶檢測(cè)中的內(nèi)部空洞則選取了種子填充法進(jìn)行填充,最后根據(jù)船舶外輪廓實(shí)現(xiàn)對(duì)船舶目標(biāo)的框定,。實(shí)驗(yàn)結(jié)果表明,,所提出的改進(jìn)型Vibe算法的船舶檢測(cè)效果明顯優(yōu)于傳統(tǒng)方法,驗(yàn)證了其可行性與實(shí)用性,。
關(guān)鍵詞:船舶檢測(cè),;Vibe算法;Canny算子,;種子填充法
中圖分類號(hào):TP391.41文獻(xiàn)標(biāo)識(shí)碼:ADOI: 10.19358/j.issn.1674-7720.2017.10.013
引用格式:蔣晶晶,安博文.低空航拍視頻中基于Vibe算法的船舶檢測(cè)方法[J].微型機(jī)與應(yīng)用,,2017,36(10):44-47.
空中航拍技術(shù)作為目標(biāo)船舶動(dòng)態(tài)監(jiān)管的重要手段之一,具有成本低,、實(shí)現(xiàn)簡(jiǎn)單等諸多優(yōu)勢(shì),,但通過(guò)空中巡航方式進(jìn)行海事監(jiān)管時(shí),由視覺監(jiān)控實(shí)現(xiàn)目標(biāo)船舶的實(shí)時(shí)檢測(cè)成為了一大技術(shù)難題[1],。
當(dāng)前學(xué)術(shù)界對(duì)于目標(biāo)檢測(cè)的方法主要分為以下三類:幀間差分法,、背景減除法、光流法,。幀間差分法主要是利用視頻圖像序列連續(xù)兩幀或三幀的差異來(lái)檢測(cè)出運(yùn)動(dòng)區(qū)域,,但對(duì)于目標(biāo)的輪廓檢測(cè)很不理想,甚至無(wú)法檢測(cè)完整的目標(biāo)邊界,;背景減除法最主要的部分就是背景建模,,模型的好壞直接影響前景目標(biāo)的檢測(cè)效果;光流法是利用光流場(chǎng)的變化來(lái)檢測(cè)運(yùn)動(dòng)目標(biāo),,在理想狀態(tài)下檢測(cè)效果較好,,但是光照變化時(shí),,即使物體沒有運(yùn)動(dòng)也會(huì)被檢測(cè)出來(lái)[24],。Vibe算法是BARNICH O等知名學(xué)者在圖像處理領(lǐng)域提出的一種動(dòng)態(tài)目標(biāo)檢測(cè)方法[5],。該方法允許在多種動(dòng)態(tài)與靜態(tài)環(huán)境下進(jìn)行目標(biāo)檢測(cè),且經(jīng)過(guò)學(xué)術(shù)界諸多學(xué)者的研究考量,,證實(shí)了其良好的實(shí)時(shí)性和有效性,,成為了目標(biāo)檢測(cè)技術(shù)中具有重要意義的有效檢測(cè)算法,。但由于低空航拍視頻中的船舶目標(biāo)大小不一,、運(yùn)動(dòng)速度緩慢,以及無(wú)人機(jī)的不定向運(yùn)動(dòng)等影響,,傳統(tǒng)Vibe算法對(duì)船舶目標(biāo)的檢測(cè)效果不理想,,無(wú)法檢測(cè)到船舶的外輪廓信息,船舶內(nèi)部也存在大量空洞,。本文針對(duì)低空航拍視頻中船舶檢測(cè)問(wèn)題,,提出了一種基于改進(jìn)型Vibe算法的低空航拍視頻中的船舶檢測(cè)方法,將傳統(tǒng)Vibe算法與改進(jìn)型Canny算子邊緣檢測(cè)進(jìn)行融合,,并利用增強(qiáng)型種子填充法進(jìn)行船舶目標(biāo)優(yōu)化,,實(shí)現(xiàn)了低空航拍視頻中對(duì)船舶目標(biāo)的有效檢測(cè)。
1Vibe算法核心理論
Vibe算法首次將隨機(jī)選擇機(jī)制和鄰域傳播機(jī)制應(yīng)用于背景模型的建立與更新,,是一種基于樣本的背景建模方法[6],。該算法為每一個(gè)像素建立一個(gè)樣本集,此樣本集由過(guò)去時(shí)刻該位置與其鄰域位置像素值組成,,然后將現(xiàn)在此處的像素值與這個(gè)樣本集中的像素進(jìn)行對(duì)比來(lái)判斷此像素是否屬于背景,,再隨機(jī)地對(duì)背景模型進(jìn)行更新[7]。其基本原理主要包含背景模型初始化,、前景檢測(cè),、背景模型更新三大部分[810]。
假設(shè)圖像x處給定的歐式顏色空間像素值為V(x),,背景模型中的每個(gè)像素由N個(gè)背景樣本值組成:M(x)={v1,v2,…vN}(vi為索引是i的背景樣本值),。背景模型初始化就是選取V(x)的過(guò)程,隨機(jī)地從x的八鄰域NG(x)中選取N個(gè)樣本值來(lái)初始化背景模型M0(x)={V0(y|y∈NG(x))},。
前景檢測(cè)即像素分類的過(guò)程,,Vibe算法是通過(guò)比較2D空間中的歐式距離來(lái)對(duì)像素進(jìn)行分類的。如圖1所示,,記為以x為中心、R為半徑的區(qū)域,。通過(guò)比較SR(V(x))與M(x)交集的個(gè)數(shù)是否大于給定的閾值#min來(lái)進(jìn)行判斷,,若大于或者等于,則這個(gè)像素點(diǎn)x屬于背景點(diǎn),,即完成像素點(diǎn)是背景點(diǎn)還是前景點(diǎn)的分類,。
在更新單個(gè)像素樣本集中20個(gè)樣本值時(shí),因單個(gè)值的選取原則是隨機(jī)的,,所以模型中樣本值出現(xiàn)的概率呈指數(shù)型衰減,,那么該樣本集在T時(shí)刻不被更新的概率為(N-1)/N。若時(shí)間是連續(xù)的,那么在dt時(shí)間之后,,樣本集中的樣本值依然保留不被更新的概率則為:
2改進(jìn)型Vibe船舶檢測(cè)算法
因低空航拍視頻中待檢測(cè)船舶目標(biāo)較大且運(yùn)行較慢,,所以僅使用傳統(tǒng)的Vibe算法難以達(dá)到檢測(cè)完整性與準(zhǔn)確性的要求。本文所述Vibe算法主要是在傳統(tǒng)算法基礎(chǔ)上融合改進(jìn)型Canny算子來(lái)增強(qiáng)船舶目標(biāo)輪廓提取的完整性,,對(duì)于水面波紋采用四個(gè)方向的結(jié)構(gòu)元素進(jìn)行形態(tài)學(xué)處理的方法,,進(jìn)而優(yōu)化檢測(cè)結(jié)果。
2.1改進(jìn)型Vibe算法流程
本文所述的改進(jìn)型Vibe算法流程如圖2所示,。根據(jù)讀入的視頻幀,,將Vibe算法得到的前景目標(biāo)與改進(jìn)型Canny算子邊緣檢測(cè)后的邊緣特征圖進(jìn)行融合,從而得到航拍視頻中的船舶目標(biāo),。為了使船舶目標(biāo)更加完整與準(zhǔn)確,,方便后續(xù)的跟蹤,在得到前景目標(biāo)后進(jìn)行了目標(biāo)優(yōu)化與船舶框定,。
2.2改進(jìn)型Canny算子提取船舶輪廓
利用改進(jìn)型Canny算子進(jìn)行邊緣檢測(cè)的主要步驟如下:
(1)采用中值濾波代替高斯濾波來(lái)平滑圖像,,實(shí)驗(yàn)表明中值濾波對(duì)水面波紋的平滑效果比高斯濾波效果更好。
(2)結(jié)合傾斜方向梯度與原梯度方向信息,,采用兩個(gè)對(duì)角線模板計(jì)算圖像傾斜方向上的梯度,,45°和135°對(duì)角模板矩陣分別為Mat1和Mat2:
與45°對(duì)角模板對(duì)應(yīng)的梯度計(jì)算方法為:
G′1=f(x,y-1)+2f(x+1,y-1)-f(x-1,y)+f(x+1,y)-2f(x-1,y+1)-f(x,y+1)(4)
與135°對(duì)角模板對(duì)應(yīng)的梯度計(jì)算方法為:
G′2=-2f(x-1,y-1)-f(x,y-1)-f(x-1,y)+f(x+1,y)+f(x,y+1)+2f(x+1,y+1)(5)
對(duì)兩個(gè)傾斜方向上的梯度取平方根得:G2(x,y)=G′21+G′22。若x,、y方向上的圖像梯度為G1,,以對(duì)角模板提取傾斜方向的梯度圖像為G2,則綜合得到的圖像梯度為G3=max{G1,G2},,對(duì)G3進(jìn)行自適應(yīng)閾值分割處理得到邊緣圖像G4,。
這里的自適應(yīng)閾值分割采用的是最大類間方差法[11]。將圖像按灰度特性分為前景和背景兩部分,,定義參數(shù)如表1所示,。
假設(shè)一幅圖像的大小為M×N,,圖像背景較暗,,圖像中灰度值小于閾值T(前景)的像素個(gè)數(shù)為N0,大于閾值T(背景)的像素個(gè)數(shù)為N1。則可得前景像素點(diǎn)個(gè)數(shù)占整幅圖像的比例ω0=N0/(M×N),,背景像素點(diǎn)個(gè)數(shù)占整幅圖像的比例ω1=N1/(M×N),,ω0與ω1存在如下關(guān)系:
ω0+ω1=1(6)
圖像的總平均灰度計(jì)算方法為:
μ=ω0×μ0+ω1×μ1(7)
類間方差為:
g=ω0(μ0-μ)2+ω1(μ1-μ)2(8)
由式(7)、(8)可得g=ω0×ω1×(μ0-μ1)2,,采用遍歷的方法即可得到使類間方差最大的閾值T,。
2.3形態(tài)學(xué)濾波抑制水面雜波
由于低空航拍視頻中水面波紋震動(dòng)明顯,且拍攝方向的轉(zhuǎn)變會(huì)造成水面波紋的方向變化,,因此利用四種方向的結(jié)構(gòu)元素去濾除水面波紋噪聲對(duì)船舶目標(biāo)檢測(cè)的影響,。本文考慮了水平,、垂直、對(duì)角線等幾種不同尺寸的結(jié)構(gòu)特點(diǎn),,設(shè)計(jì)了如圖3所示的4種方向的結(jié)構(gòu)元素,。
設(shè)f(x, y)是輸入圖像,g(x, y)是結(jié)構(gòu)元素,。用結(jié)構(gòu)元素對(duì)圖像進(jìn)行腐蝕和膨脹運(yùn)算分別定義為:
(fΘg)(x,y)=min{f(x-i,y-j)-g(-i,-j)}(9)
(fg)(x,y)=max{f(x-i,y-j)+g(-i,-j)}(10)
形態(tài)學(xué)開運(yùn)算定義為:
fog=(fΘg)g(11)
對(duì)同一幅圖像分別用這四種方向的結(jié)構(gòu)元素進(jìn)行形態(tài)學(xué)開運(yùn)算,,再利用式(12)進(jìn)行融合,便可實(shí)現(xiàn)對(duì)水面雜波的濾除效果,。
f=mean(f1,f2,f3,f4)(12)
3目標(biāo)優(yōu)化與船舶框定
由于航拍視頻中船只目標(biāo)較大,,單純的種子填充不能夠滿足實(shí)際的需求,例如種子點(diǎn)不在搜索二值圖像的空洞內(nèi)而在外部,。本文的目標(biāo)優(yōu)化采用了相與的計(jì)算方法來(lái)填充灰度圖像的空洞現(xiàn)象,,具體算法步驟如下。
(1)選取圖像原點(diǎn)(0,0)作為種子點(diǎn),,對(duì)圖像進(jìn)行填充,,填充顏色設(shè)為白色,如圖4(a)所示,。
(2)理想情況下此時(shí)幀上只存在黑色空洞部分,,然后對(duì)灰度圖上的灰度像素值進(jìn)行顏色反轉(zhuǎn)計(jì)算,即灰度圖像素值為1時(shí)賦值0,,灰度圖像素值為0時(shí)賦值1,,得到的結(jié)果圖4(b)所示。
(3)將原圖5(a)與步驟(2)得到的圖像4(b)疊加得到全局的灰度圖像后再進(jìn)行腐蝕濾波處理得到圖5(e)所示的修復(fù)后的圖像,。
船舶框定的過(guò)程就是根據(jù)船舶的面積以及長(zhǎng)寬比對(duì)檢測(cè)到的前景目標(biāo)進(jìn)行篩選與外輪廓提取,,然后再根據(jù)外輪廓框定船舶目標(biāo),方便后期的船舶定位與跟蹤,。
4實(shí)驗(yàn)結(jié)果與分析
實(shí)驗(yàn)用到的視頻是由無(wú)人機(jī)在黃浦江流域拍攝的,,視頻分辨率為1 280×720;系統(tǒng)平臺(tái)為32位Windows 7系統(tǒng),;軟件實(shí)施平臺(tái)為VS2010和OpenCV2.4.8,。
圖5、圖6給出了垂直拍攝和非垂直拍攝兩組實(shí)驗(yàn)的對(duì)比實(shí)驗(yàn)結(jié)果,。在不同實(shí)驗(yàn)條件下,,不同算法提取的船舶目標(biāo)效果各不相同。本文所提出算法的檢測(cè)效果明顯優(yōu)于傳統(tǒng)Vibe算法,。具體分析結(jié)果如下:由圖5(b)和圖6(b)可以看出傳統(tǒng)Vibe算法對(duì)低空航拍視頻中無(wú)論是垂直拍攝還是非垂直拍攝的船舶目標(biāo)檢測(cè)效果都不太理想,船舶輪廓不清晰甚至嚴(yán)重缺損,,此外還存在一定的鬼影[1213],。Canny邊緣檢測(cè)后的結(jié)果圖如圖5(c)和圖6(c)所示,,可以實(shí)現(xiàn)船舶輪廓的基本提取,將其與Vibe算法的檢測(cè)結(jié)果進(jìn)行融合后得到如圖5(d)和6(d)所示的效果,,彌補(bǔ)了Vibe算法的輪廓檢測(cè)缺點(diǎn),。再對(duì)前景融合后的結(jié)果圖進(jìn)行目標(biāo)優(yōu)化,解決船舶空洞問(wèn)題,,使得船舶外輪廓連續(xù),,如圖5(e)和圖6(e)所示,便于根據(jù)船舶外輪廓進(jìn)行框定,。圖5(f)和圖6(f)顯示了用最小外接矩形對(duì)船舶目標(biāo)進(jìn)行連通域標(biāo)記后的檢測(cè)結(jié)果,。
表2為傳統(tǒng)Vibe算法和本文算法分別處理24幀連續(xù)的圖片所用時(shí)間的對(duì)比??梢娪捎诒疚脑趥鹘y(tǒng)Vibe算法基礎(chǔ)上增加了Canny邊緣檢測(cè)以及前景融合和目標(biāo)優(yōu)化,,算法運(yùn)行時(shí)間有所增加,但仍然能滿足實(shí)時(shí)檢測(cè)的要求,。
5結(jié)論
本文根據(jù)低空航拍視頻中船舶目標(biāo)檢測(cè)的實(shí)際需求,,以前景目標(biāo)檢測(cè)算法中最新的Vibe算法為基礎(chǔ),針對(duì)其檢測(cè)效果的缺點(diǎn)融合了改進(jìn)型Canny算子邊緣檢測(cè)算法,,并對(duì)融合后的前景目標(biāo)進(jìn)行優(yōu)化,。將理論算法與實(shí)際相結(jié)合,研究實(shí)現(xiàn)了基于改進(jìn)型Vibe算法的低空航拍視頻中的船舶檢測(cè)方法,。該方法適用于海事無(wú)人機(jī)進(jìn)行電子巡航時(shí)對(duì)船舶目標(biāo)的檢測(cè),。
參考文獻(xiàn)
[1] 元海文,肖長(zhǎng)詩(shī),文元橋,等.基于顯著性分析的HOG快速船舶檢測(cè)方法[J].中國(guó)航海,2016,39(01):69-73.
?。?] WREN B C, AZARBAYEJANI A, DARREL T, et al. Pfinder:realtime tracking of human body[J]. Transaction on Pattern Analysis and Machine Intelligence, 2015,19(7):780-785.
?。?] 庾鵬, 王旭, 仝天樂,等. 基于GrabCut算法和四幀差分法的目標(biāo)提取算法[J]. 微型機(jī)與應(yīng)用, 2016, 35(11):4042.
[4] BARRON B J L, FLEET D J, BEAUCHEMIN S S, et al. Performance of optical ow techniques[C]. Proceedings of the Conference on Computer Vision and Pattern Recognition, 2010:236-242.
?。?] BARNICH O, VAN ROOGENBROECK M. ViBe: a powerful random technique to estimate the background in video sequence[C]. International Conference on Acoustics Speech and Signal Processing(ICASSP),2009:945948.
?。?] 王輝,宋建新.一種基于閾值的自適應(yīng)Vibe目標(biāo)檢測(cè)算法[J].計(jì)算機(jī)科學(xué),2015,42(6A):154-157.
[7] BARNICH O, VAN ROOGENBROECK M, EVS B E, et al. ViBe: a universal background subtraction algorithm for video sequence[J]. IEEE Transactions on Image Processing, 2011,20(6):1709-1724.
?。?] MAHOOR E, MAGHSOUMI H, ASEMANI D. An improved motion detection algorithm using ViBe[C]. International Conference on Computing, Communication and Networking Technologies, 2015:1-5.
?。?] YANG W, ZENG P, FANG D. An improved algorithm for motion detection based on Vibe[J]. Icic Express Letters, 2015, 9(9):2475-2481.
[10] 余燁,曹明偉,岳峰. EVibe:一種改進(jìn)的Vibe運(yùn)動(dòng)目標(biāo)檢測(cè)算法[J].儀器儀表學(xué)報(bào), 2014, 35(4):924-931.
?。?1] 譚艷麗, 趙永強(qiáng). 一種改進(jìn)的二維Otsu閾值分割法[J]. 半導(dǎo)體光電, 2014, 35(5):937-940.
?。?2] 王珦磊, 唐加山. 一種基于YUV顏色空間自適應(yīng)陰影消除算法[J]. 微型機(jī)與應(yīng)用, 2016, 35(7):44-47.
[13] Dou Jianfang, Li Jianxun. Moving object detection based on improved VIBE and graph cutoptimization[J]. OptikInternational Journal for Light and Electron Optics, 2013, 124(23):6081-6088.