陳 偉,楊 毅,李小毛,劉 遠(yuǎn),張 鑫
(上海大學(xué)機(jī)電工程與自動(dòng)化學(xué)院,上海200444)
無人水面艇(unmanned surface vehicle,USV)是一種新型的海上智能體,可以用來執(zhí)行偵察、反潛、巡邏等軍事任務(wù),以及搜救、導(dǎo)航、水文地理勘察等民用任務(wù).無人水面艇視覺系統(tǒng)的作用是代替人眼,對海上的目標(biāo)以及障礙物進(jìn)行檢測、跟蹤和測量,并進(jìn)行場景和行為的理解[1].基于視覺的海上船艇檢測是無人水面艇視覺系統(tǒng)最主要的任務(wù)之一,是實(shí)現(xiàn)無人水面艇對海上船艇進(jìn)行識(shí)別和跟蹤的基礎(chǔ),因此研究海上船艇的特征模型和目標(biāo)檢測方法,對無人水面艇的發(fā)展具有重要意義.
在過去的十幾年里,目標(biāo)檢測一直是計(jì)算機(jī)視覺領(lǐng)域的研究熱點(diǎn),國內(nèi)外許多學(xué)者在這方面進(jìn)行了大量的研究,取得了一些令人矚目的成果.Viola等[2]使用Haar-like特征,提出了AdaBoost算法框架,在人臉檢測上取得了較好的成果;Dalal等[3]提出了將方向梯度直方圖(histogram of oriented gradient,HOG)作為特征,利用支持向量機(jī)(support vector machine,SVM)訓(xùn)練分類器進(jìn)行行人檢測,在MIT(Massachusetts Institute of Technology)行人數(shù)據(jù)集上的檢測效果不錯(cuò).除此之外,目標(biāo)檢測的研究還聚焦在自然界中一般物體的檢測.基于自然界中的大部分物體都具有運(yùn)動(dòng)能力,會(huì)產(chǎn)生非剛體形變的特性,Felzenszwalb等[4]提出了混合多尺度可變形部件模型(mixture of multiscale deformable part model,MMDPM),該模型基于HOG特征進(jìn)行改進(jìn),對于目標(biāo)的多視角問題,采用了多組件策略;而對于目標(biāo)本身的形變問題,則采用了基于圖結(jié)構(gòu)(pictorial structure)的部件模型策略.然而,這些傳統(tǒng)的目標(biāo)檢測算法有一個(gè)共同點(diǎn),即均采用了“滑窗式”搜索策略.這種策略是通過將分類器在圖像的每一個(gè)窗口位置上滑動(dòng)遍歷,來檢測目標(biāo)在圖像中的位置,這里滑動(dòng)窗口的數(shù)量和分類器的檢測尺度是線性相關(guān)的.在單一尺度下,對每張圖像分類器大概需要測試104~105個(gè)窗口;而在多尺度下,測試窗口的數(shù)量會(huì)以幾個(gè)數(shù)量級(jí)增長.此外,現(xiàn)今的檢測器還要求對目標(biāo)的寬高比進(jìn)行預(yù)測,那么測試窗口數(shù)量將會(huì)達(dá)到106~107個(gè).顯然,這種“窮盡式”的檢測方法會(huì)生成很多冗余窗口,導(dǎo)致計(jì)算量大且非常耗時(shí)[5].因此,很多采用這種方法的目標(biāo)檢測系統(tǒng),都會(huì)選擇一些較簡單的分類器,這些簡單的分類器往往采用較弱的特征模型,通過得到較快的計(jì)算速度來彌補(bǔ)滑窗式搜索策略帶來的弊端.但是,采用弱特征模型雖然提升了分類器的計(jì)算速度,卻降低了檢測率和檢測精度.
針對上述問題,本工作提出了一種基于目標(biāo)候選(object proposal)的檢測算法.目標(biāo)候選是一類方法的統(tǒng)稱,最早的目標(biāo)候選方法是由Alexe等[6]提出,并引出了目標(biāo)性(objectness)的概念.目標(biāo)性概念的提出是基于感知心理學(xué)和神經(jīng)性學(xué)的發(fā)現(xiàn)[7].人類的視覺系統(tǒng)在識(shí)別目標(biāo)前可以感知并定位到目標(biāo)的位置,這個(gè)能力使得人類可以快速準(zhǔn)確地識(shí)別目標(biāo),但是傳統(tǒng)的滑窗式目標(biāo)檢測方法違背了這種人類視覺系統(tǒng)對圖像的理解機(jī)制,故非常耗時(shí).為了使計(jì)算機(jī)視覺也具備人類視覺系統(tǒng)的這種能力,目標(biāo)性算法的原理是:在分類器對圖像窗口進(jìn)行檢測前,先對所有窗口進(jìn)行目標(biāo)性評(píng)分.評(píng)分越高的窗口包含目標(biāo)的可能性就越大,舍棄那些評(píng)分較低的窗口,只把那些評(píng)分較高的窗口輸入到分類器中檢測目標(biāo),這樣評(píng)分較高的窗口就是檢測算法的目標(biāo)候選.不同的目標(biāo)候選方法產(chǎn)生的窗口數(shù)量也不同,目前較為先進(jìn)的方法是通過產(chǎn)生1 000~2 000個(gè)窗口就能達(dá)到96%以上的目標(biāo)召回率(recall rate),與106~107個(gè)滑動(dòng)窗口相比,檢測速度可以達(dá)到幾個(gè)數(shù)量級(jí)的提升.
近幾年,國內(nèi)外學(xué)者對目標(biāo)候選算法的研究主要分為超像素合并(superpixel merging)、種子分割(seed segmentation)以及目標(biāo)性評(píng)分(objectness scoring)這3類.Uijlings等[8]提出了基于超像素合并的selective search算法,該算法通過人工設(shè)計(jì)的特征和相似度函數(shù)合并超像素生成目標(biāo)候選框,且不需要通過任何學(xué)習(xí)的方法獲取參數(shù);Carreira等[9]提出了基于種子分割的CPMC(constrained parametric min-cuts)算法,該算法隨機(jī)初始化多個(gè)種子點(diǎn),每個(gè)種子點(diǎn)生成一個(gè)前景/背景的分割,以此來獲取目標(biāo)候選框;Zitnick等[10]提出了基于目標(biāo)性評(píng)分的邊緣框(edge box)算法,該算法利用圖像的邊緣信息生成目標(biāo)候選框,通過結(jié)構(gòu)化森林邊緣檢測器生成邊緣圖,在邊緣圖上建立評(píng)分函數(shù)對窗口進(jìn)行評(píng)分,最后選取評(píng)分較高的窗口作為最終的目標(biāo)候選框.Edge box算法計(jì)算速度快,且生成的目標(biāo)候選框定位精度高,可滿足USV視覺檢測系統(tǒng)的應(yīng)用需求.
本工作基于邊緣框算法進(jìn)行改進(jìn),獲取船艇的目標(biāo)候選框.結(jié)合較強(qiáng)的HOG特征對船艇進(jìn)行建模,利用機(jī)器學(xué)習(xí)的方法進(jìn)行訓(xùn)練,得到了一個(gè)復(fù)雜的具有5 796維特征向量的分類器,用于海上船艇的檢測.此外,本工作還基于USV在海天環(huán)境下的運(yùn)行場景,結(jié)合海天線的特性,進(jìn)一步提升算法的檢測性能.本算法的概況如圖1所示.
圖1 本算法概況Fig.1 Overview of this algorithm
給定一張?jiān)紙D像(見圖2(a),關(guān)注“上海大學(xué)學(xué)報(bào)自然科學(xué)版”微信公眾號(hào),使用菜單欄“小程序”掃描圖片觀看視頻).首先,利用一個(gè)結(jié)構(gòu)化的邊緣檢測器[11],獲取圖像中每個(gè)像素點(diǎn)的邊緣響應(yīng);然后,將這些邊緣響應(yīng)組合在一起得到原始圖像的邊緣圖.直接得到的邊緣圖相對比較緊密,通過執(zhí)行一個(gè)簡單的非極大值抑制(non-maximal suppression,NMS)獲取邊緣響應(yīng)的局部最大值,從而得到一張相對稀疏的邊緣圖(見圖2(b)).邊緣圖中每個(gè)像素p都有一個(gè)邊緣值mp和一個(gè)邊緣方向θp,其物理意義分別是邊緣的梯度幅值以及梯度變化最大的方向.
算法的基本思想是:與輪廓重疊多的邊界框(bounding box)完整包圍目標(biāo)的可能性比較小(如圖2(c)中的綠色方框),而那些與輪廓重疊少的邊界框更可能完整地包圍目標(biāo)(見圖2(d)中的綠色方框).從邊緣圖來看,對于那些被直的輪廓所連接的邊緣有比較高的相似度,而那些沒有被連接或者被高曲率的輪廓所連接的邊緣相似度就比較低.為了使相似度的計(jì)算效率更高,對邊緣進(jìn)行分組,得到一系列的邊緣群組(edge group),然后只計(jì)算邊緣群組之間的相似度.算法獲取邊緣群組的方法是通過不斷地連結(jié)8連通的邊緣點(diǎn),直到邊緣點(diǎn)兩兩之間的方向角度差值的總和大于一個(gè)閾值π/2.
給定邊緣群組的集合si∈S,計(jì)算每對相鄰邊緣群組之間的相似度.對于邊緣群組si和sj之間的相似度a(si,sj)的計(jì)算公式為
式中:θi和θj為2個(gè)邊緣群組的平均方向;θij為其平均位置xi和xj之間的角度;γ值是用來控制方向?qū)ο嗨贫鹊拿舾行缘?本算法中取γ=2.在算法具體實(shí)施過程中,為了提高計(jì)算效率,當(dāng)2個(gè)邊緣群組之間的距離大于2個(gè)像素時(shí),其相似度被設(shè)置為0;此外,當(dāng)2個(gè)邊緣群組的相似度小于0.05時(shí),其相似度也被設(shè)置為0.
圖2 邊緣框算法示意圖Fig.2 Diagram of edge box algorithm
給定邊緣群組的集合S,且計(jì)算得到其兩兩之間的相似度后,通過建立一個(gè)評(píng)分函數(shù)對候選邊界框b評(píng)分.首先,計(jì)算邊緣群組si中所有像素p的邊緣值總和,記為mi;然后,選取邊緣群組si中任意一個(gè)像素的位置,記為xi.
對于每一個(gè)邊緣群組si,計(jì)算一個(gè)連續(xù)值wb(si)∈[0,1],用來衡量si是否完全包含在邊界框b中.如果si完全包含在邊界框b,則令wb(si)=1;如果si完全處于邊界框b外,令wb(si)=0.定義Sb為與邊界框b邊界相重疊的邊緣群組si的集合,對于所有的si∈Sb,令wb(si)=0;同理,如果b,則令wb(si)=0,這是因?yàn)樵谶@種情況下,該邊緣群組si的所有像素不是完全處于邊界框b外,而是與邊界框b相重疊.對于所有剩下的邊緣群組siSb的計(jì)算公式為
式中:T為開始于t1∈Sb,結(jié)束于t|T|=si的有序路徑;a(tj,tj+1)為邊緣群組之間的相似度.如果不存在這樣的路徑,則令wb(si)=1.因此,式(2)的物理意義就是一條尋找相似度最高的路徑.在具體實(shí)施算法過程中,因?yàn)槌蓪Φ倪吘壢航M相似度大部分都為0,所以該公式的計(jì)算效率很高.利用計(jì)算所得的wb(si),對邊界框b進(jìn)行評(píng)分:
式中,bw,bh分別為邊界框的寬度和高度.式(3)的物理意義是根據(jù)邊界框包圍邊緣的情況,對該邊界框包含目標(biāo)的可能性進(jìn)行評(píng)分.由于更大的邊界框會(huì)包含更多的邊緣,故用一個(gè)κ值來抵消這個(gè)偏差,本算法取κ=1.5.
最后,我們發(fā)現(xiàn)那些處于邊界框內(nèi)部的邊緣的重要性比那些處于邊界框附近邊緣的低.因此,對評(píng)分公式(3)進(jìn)行改進(jìn),將邊界框內(nèi)部的邊緣值從評(píng)分hb中減掉,改進(jìn)后的評(píng)分公式為
式中,bin的寬度和高度分別為bw/2和bh/2.實(shí)驗(yàn)表明,使用評(píng)分公式獲得的目標(biāo)候選框比使用評(píng)分公式hb獲得的目標(biāo)候選框有更高的定位精度.
為了尋找到定位精度更高的目標(biāo)候選框,需要設(shè)計(jì)搜索策略.衡量一個(gè)邊界框定位精度的標(biāo)準(zhǔn)是IoU(intersection over union),它是將候選邊界框和真值框(ground truth box)的交集除以它們之間的并集計(jì)算得到的值.IoU的值越高,候選邊界框的定位精度就越高,也就越接近真值框.在理想的情況下IoU=1,此時(shí)候選邊界框和真值框重合.根據(jù)國際上普遍使用的PASCAL準(zhǔn)則,當(dāng)IoU大于0.5時(shí)認(rèn)定該候選邊界框定位并檢測到了目標(biāo).但是,通過分析USV視覺檢測系統(tǒng)的應(yīng)用場景可知,當(dāng)目標(biāo)候選框和真值框的IoU大于0.5時(shí),目標(biāo)檢測算法提取目標(biāo)候選框的HOG特征向量輸入到分類器中,仍然被分類器判定為負(fù)樣本的情況,這時(shí)目標(biāo)就被漏檢了.因此,為了盡量避免漏檢情況的發(fā)生,本算法將提高IoU閾值.在算法具體實(shí)施過程中,本算法取IoU閾值δ=0.8,大于國際上的PASCAL準(zhǔn)則(δ=0.5).
在搜索候選邊界框時(shí),首先以不同的位置、尺度、寬高比在邊緣圖上滑動(dòng)窗口,步長大小由參數(shù)α決定,指定相鄰邊界框的IoU等于α.由于本算法取IoU閾值為δ=0.8,故根據(jù)實(shí)驗(yàn)表明,α=δ-0.05=0.75是一個(gè)比較理想的取值.
最后,將剩下的候選邊界框根據(jù)評(píng)分大小進(jìn)行排序,選取前1 000個(gè)評(píng)分較大的候選邊界框作為最終目標(biāo)候選框.本算法對這1 000個(gè)目標(biāo)候選框提取HOG特征向量,輸入到分類器中檢測船艇在圖像中的位置.
由于USV主要的工作場景是在海面上,因此USV視覺檢測系統(tǒng)所采集的圖像最基本的特征是圖像包含海天線.如圖3(a)所示,海天線將圖像劃分為3個(gè)區(qū)域:天空區(qū)域、海面區(qū)域和海天線區(qū)域[12].船艇在海上航行只會(huì)處于海面區(qū)域和海天線區(qū)域,而不會(huì)處于天空區(qū)域.基于這樣一個(gè)特性,本工作進(jìn)一步改進(jìn)目標(biāo)候選框生成算法,對1 000個(gè)評(píng)分較大的目標(biāo)候選框再次進(jìn)行篩選.剔除完全處于海天線區(qū)域上方的目標(biāo)候選框(見圖3(a)中的紅色方框),而保留處于海天線下方以及與海天線相交的目標(biāo)候選框(見圖3(a)中的綠色方框).這樣,就可以直觀地感覺到,通過海天線預(yù)判能剔除將近一半的目標(biāo)候選框.同理,只在剩下的目標(biāo)候選框中提取HOG特征向量,輸入到分類器對船艇目標(biāo)進(jìn)行檢測.最終,基于海天線改進(jìn)的船艇檢測算法在檢測速度以及檢測性能上都得到了進(jìn)一步的提升.
此外,本工作采用了一種簡單的基于邊緣圖的海天線檢測算法,來獲取用于篩選目標(biāo)候選框的海天線.由于在生成目標(biāo)候選框時(shí)已經(jīng)計(jì)算得到邊緣圖,故通過在邊緣圖上執(zhí)行一個(gè)簡單的Hough變化[13-14],就能得到海天線在圖像中的位置信息(見圖3(b)中藍(lán)色線條).
圖3 基于海天線改進(jìn)算法示意圖Fig.3 Diagram of improving algorithm based on sea-sky line
HOG特征是由Dalal等[3]提出,最早被用于行人的檢測,取得了較好的效果.如今,在計(jì)算機(jī)視覺和圖像處理領(lǐng)域中,HOG特征已經(jīng)成為目標(biāo)檢測最常用的特征描述子之一,其主要原理是:在一副圖像中,局部目標(biāo)的外表和形狀能夠被梯度或邊緣的方向密度分布較好地描述.因此,HOG特征的本質(zhì)是利用了梯度的統(tǒng)計(jì)信息,而梯度主要存在于邊緣的地方,這一點(diǎn)和本工作基于邊緣提取的目標(biāo)候選框相契合.由于從邊緣圖中提取的目標(biāo)候選框保留了圖像中較多的邊緣信息,因此本工作采用HOG特征作為船艇的特征描述子是合理的,實(shí)驗(yàn)結(jié)果也驗(yàn)證了這一觀點(diǎn).
本工作根據(jù)船艇的外形特點(diǎn),對船艇進(jìn)行特征建模,將特征模型的寬高比設(shè)計(jì)為3:1,特征窗口的大小設(shè)計(jì)為192×64(pixel).HOG特征的細(xì)胞單元格(cell)尺寸設(shè)計(jì)為8×8(pixel).每個(gè)細(xì)胞單元格的直方圖通道數(shù)目(bin)設(shè)置為9個(gè).
由于局部光照的變化以及前景/背景對比度的變化會(huì)使梯度強(qiáng)度發(fā)生較大的變化,因此需要對梯度強(qiáng)度做歸一化處理.HOG特征在一個(gè)塊(block)中進(jìn)行梯度強(qiáng)度的歸一化處理,這里根據(jù)海面上的光照變化的情況,設(shè)計(jì)塊的大小為2×2(cell),即16×16(pixel);塊移動(dòng)的步長設(shè)計(jì)為8×8(pixel).通過這樣對船艇進(jìn)行建模,船艇的HOG特征描述子的特征維數(shù)為
本工作采用線性核的支持向量機(jī)訓(xùn)練分類器,其訓(xùn)練步驟如圖4所示.初始的正樣本是由船艇的所有真值框組成,總數(shù)為2 000個(gè).然后,選擇與真值框重疊面積占20%~50%的目標(biāo)候選框作為最初的負(fù)樣本.為了避免選取近似的重復(fù)的負(fù)樣本,將重疊面積超過70%的2個(gè)負(fù)樣本,選擇其中一個(gè)丟棄.最終,從所有負(fù)樣本中隨機(jī)選取10 000個(gè)作為SVM訓(xùn)練的負(fù)樣本.直觀地來看,這樣的負(fù)樣本篩選方法對分類器來說是比較困難的,因?yàn)檫@些負(fù)樣本有一部分和正樣本很接近,這也意味著更接近決策邊界.但是,通過選擇這樣的負(fù)樣本進(jìn)行訓(xùn)練,得到的分類器就具有更好的初始分類能力.事實(shí)上,通過實(shí)驗(yàn)也驗(yàn)證了這一觀點(diǎn).
在得到初始分類器后,為了提升分類器的性能,本工作還設(shè)計(jì)了一個(gè)再訓(xùn)練的過程.將初始分類器在負(fù)樣本原圖(不包含船艇目標(biāo))上進(jìn)行船艇目標(biāo)的檢測,這樣檢測到的所有矩形框很明顯都不是目標(biāo),屬于誤報(bào)(false positives).這些誤報(bào)的矩形框?qū)τ诜诸惼鱽碚f,就是一個(gè)難例(hard example).把這些難例保存為圖像,加入到初始的負(fù)樣本集合中,重新進(jìn)行分類器的訓(xùn)練.這樣,通過再訓(xùn)練得到的分類器就具有更好的分類能力,也就是具有更好的檢測船艇目標(biāo)的能力.再訓(xùn)練的過程是可以迭代進(jìn)行的,直到分類器的性能沒有明顯提升為止.這樣的訓(xùn)練方法稱為自舉法(bootstrap).本工作通過進(jìn)行初始負(fù)樣本選擇策略,經(jīng)過2次迭代訓(xùn)練后,分類器的性能就達(dá)到了峰值.
圖4 分類器訓(xùn)練步驟Fig.4 Training procedure of classifier
實(shí)驗(yàn)用到的視頻序列是由USV視覺系統(tǒng)的機(jī)載攝像頭采集所得,視頻記錄了船艇目標(biāo)在不同環(huán)境下的運(yùn)動(dòng)情況.攝像頭采集所得的圖像分辨率為1920×1080(pixel),將其降采樣為640×480(pixel)進(jìn)行處理.本工作使用的實(shí)驗(yàn)平臺(tái)為VS2013+OpenCV2.4.9,系統(tǒng)環(huán)境為Windows10,CPU頻率為3.1 GHz,內(nèi)存為4 GB.
本實(shí)驗(yàn)將提出的目標(biāo)候選檢測算法和傳統(tǒng)的滑窗式檢測算法在相同條件下進(jìn)行了比較,驗(yàn)證算法的有效性和優(yōu)越性.對于滑窗式檢測算法,本工作采用相同的HOG特征模型,用相同的機(jī)器學(xué)習(xí)方法(如SVM)對其進(jìn)行分類器的訓(xùn)練.在保證實(shí)驗(yàn)條件相同后,使用2種不同的船艇檢測算法,在相同的視頻圖像中對船艇目標(biāo)進(jìn)行檢測.此外,為了研究在不同尺度及光照條件下2種算法的檢測性能,實(shí)驗(yàn)使用了多種在不同環(huán)境下拍攝的視頻圖像,結(jié)果如圖5所示.
在圖5中,藍(lán)色方框表示目標(biāo)船艇的真值框,綠色方框表示算法檢測到的目標(biāo)框.左列圖像是本算法的檢測結(jié)果,右列圖像是傳統(tǒng)滑窗式算法的檢測結(jié)果.分析實(shí)驗(yàn)結(jié)果,對比圖5(c),(d)可以發(fā)現(xiàn),本算法檢測的目標(biāo)框與真值框具有更大的重疊面積,表明本算法具有更高的檢測精度,這是因?yàn)楸舅惴ㄊ腔趫D像邊緣信息提取的目標(biāo)候選框,所以更加貼近船艇的邊緣.此外,從圖中還可以發(fā)現(xiàn)傳統(tǒng)滑窗式算法檢測到的一些目標(biāo)框并不包含船艇,這些目標(biāo)框?qū)儆谡`報(bào)(見圖5(b),(f),(h)).相對地,在相同的條件下本算法生成的目標(biāo)框誤報(bào)較少.最后,在不同的尺度和光照條件下對比圖5(a),(c),(e),(g)可以發(fā)現(xiàn),本算法對尺度變化和光照變化都具有較強(qiáng)的魯棒性.
然后,本工作在1 435張包含船艇的圖像上分別用2種算法對船艇目標(biāo)進(jìn)行檢測.檢測規(guī)定,如果目標(biāo)檢測框和真值框之間的IoU值大于0.7,就視該目標(biāo)框檢測到了目標(biāo),并認(rèn)為這是一個(gè)正確的檢測.表1列出了2種算法在一些檢測指標(biāo)上的對比.分析表1數(shù)據(jù)可以發(fā)現(xiàn),本算法的檢測率更高,誤報(bào)更少,這樣的檢測率和誤報(bào)也滿足USV視覺檢測系統(tǒng)的應(yīng)用場景.
圖5 不同尺度及光照條件下2種算法的檢測結(jié)果Fig.5 Detection results of two algorithms under different scales and illumination conditions
表1 2種算法檢測性能對比Table 1 Comparing the detection performance of two algorithms
最后,通過實(shí)驗(yàn)驗(yàn)證了本算法在檢測速度上的優(yōu)勢.因?yàn)樗惴ǖ臋z測時(shí)間與被檢測圖像的分辨率有關(guān),所以圖像的分辨率越大,所包含的像素點(diǎn)就越多,算法的檢測時(shí)間也就越長.基于這點(diǎn)考慮,本工作分別在幾種常用的圖像分辨率上進(jìn)行對比實(shí)驗(yàn),結(jié)果如表2所示.分析表2數(shù)據(jù)可以發(fā)現(xiàn),在所有圖像分辨率下進(jìn)行船艇檢測,本算法檢測船艇所需的時(shí)間更少.在圖像分辨率為640×480(pixel)時(shí),本算法檢測速度是滑窗式算法的2.3倍;在圖像分辨率為1 280×720(pixel)時(shí),本算法檢測速度是滑窗式算法的3.3倍;在圖像分辨率為1 920×1 080(pixel)時(shí),本算法檢測速度是滑窗式算法的9.0倍.可見,圖像分辨率越大,本算法的速度優(yōu)勢越明顯.由于現(xiàn)在對圖像的清晰度要求越來越高,生產(chǎn)的攝像頭分辨率也越來越大,很多攝像頭都至少達(dá)到了1 080 P,甚至2 K級(jí)別,因此本算法更具有實(shí)際意義.
表2 在不同圖像分辨率下2種算法檢測時(shí)間對比Table 2 Comparing the detection time of two algorithms in different image resolutions ms
本工作通過加入海天線預(yù)判進(jìn)一步改進(jìn)算法,通過實(shí)驗(yàn)對比2個(gè)版本算法的檢測性能,驗(yàn)證改進(jìn)算法的有效性.需要注意的是,本工作在4.1節(jié)的實(shí)驗(yàn)結(jié)果均是未加入海天線預(yù)判所得的算法結(jié)果.與4.1節(jié)的實(shí)驗(yàn)方案類似,本實(shí)驗(yàn)也在1 435張包含船艇的圖像上分別用2個(gè)版本的算法對船艇目標(biāo)進(jìn)行檢測.仍然規(guī)定目標(biāo)框和真值框之間的IoU值大于0.7時(shí),是一個(gè)正確的檢測.表3列出了2個(gè)版本算法在一些檢測指標(biāo)上的對比.分析表3的數(shù)據(jù)可以發(fā)現(xiàn),2個(gè)版本的算法在檢測率上是相同的,這是因?yàn)榧尤牒L炀€預(yù)判并不會(huì)剔除包含船艇的目標(biāo)候選框.另外,加入海天線預(yù)判的算法誤報(bào)更少,因?yàn)榧尤牒L炀€預(yù)判剔除了算法在天空區(qū)域的誤報(bào).
表3 2個(gè)版本算法檢測性能對比Table 3 Comparing the detection performance of two versions of the algorithms
本工作還通過實(shí)驗(yàn)驗(yàn)證了加入海天線預(yù)判的算法具有更快的檢測速度.與4.1節(jié)的實(shí)驗(yàn)方案類似,本實(shí)驗(yàn)還是在幾種常用的圖像分辨率上進(jìn)行檢測速度的對比,結(jié)果如表4所示.分析表4數(shù)據(jù)可以發(fā)現(xiàn),在所有圖像分辨率下進(jìn)行船艇檢測,加入海天線預(yù)判的算法所需時(shí)間更少.在圖像分辨率為640×480(pixel)時(shí),加入海天線預(yù)判的算法檢測速度提升到原來的1.5倍;在圖像分辨率為1 280×720(pixel)時(shí),加入海天線預(yù)判的算法檢測速度提升到原來的1.6倍;在圖像分辨率為1 920×1 080(pixel)時(shí),加入海天線預(yù)判的算法檢測速度提升到原來的1.7倍.由于未加入海天線預(yù)判算法的檢測速度已經(jīng)相當(dāng)快,因此檢測速度的提升倍數(shù)并不是很明顯(相較于滑窗式檢測算法提升的倍數(shù)).但是,對USV視覺檢測系統(tǒng)來說,檢測速度的提升終究是有意義的,因?yàn)闄z測速度越快,USV獲取的船艇位置信息就越及時(shí),對USV后續(xù)任務(wù)的執(zhí)行都有積極的作用.
表4 在不同圖像分辨率下2個(gè)版本算法檢測時(shí)間對比Fig.4 Comparing the detection time of two versions of the algorithms in different image resolutions ms
最后,本工作在多目標(biāo)、惡劣海況以及復(fù)雜背景條件下對算法性能進(jìn)行實(shí)驗(yàn)驗(yàn)證,該實(shí)驗(yàn)結(jié)果如圖6所示.在圖6中,藍(lán)色方框表示目標(biāo)船艇的真值框,綠色方框表示算法檢測到的目標(biāo)框,其中(a)為在多目標(biāo)條件下算法的檢測結(jié)果;(b)為在惡劣海況條件(4級(jí)海況)下算法的檢測結(jié)果;(c),(d)為在復(fù)雜背景下算法的檢測結(jié)果.從結(jié)果中可以發(fā)現(xiàn),算法在多目標(biāo)以及惡劣海況條件下仍具有較好的檢測性能,但是在復(fù)雜背景下算法的檢測性能并不好,時(shí)常會(huì)出現(xiàn)誤報(bào),因?yàn)樗惴▽⒈尘爸械慕ㄖ餀z測為船艇目標(biāo).根據(jù)大量的實(shí)驗(yàn)表明,本算法在復(fù)雜背景下的檢測率并不高,但是由于USV在海上運(yùn)行時(shí)處于復(fù)雜背景的情況較少,故并不影響算法的實(shí)用性.
圖6 在不同條件下的算法性能Fig.6 Algorithm performances under different conditions
本工作提出了一種基于目標(biāo)候選的USV海上船艇檢測算法.該算法基于邊緣框算法進(jìn)行改進(jìn),提取圖像的邊緣信息,并建立目標(biāo)性評(píng)分函數(shù)來獲取目標(biāo)候選框.在此基礎(chǔ)上,本工作使用HOG特征作為特征描述子,對船艇目標(biāo)進(jìn)行特征建模,采用自舉法迭代訓(xùn)練分類器,提升分類器性能.此外,本工作基于USV在海天環(huán)境下的運(yùn)行場景,加入海天線的預(yù)判進(jìn)一步改進(jìn)算法,提升了對船艇的檢測性能.實(shí)驗(yàn)結(jié)果表明,本算法能夠快速、準(zhǔn)確地檢測船艇目標(biāo),并達(dá)到了較高的檢測率,誤報(bào)較少,對尺度以及光照條件的變化也具有較強(qiáng)的魯棒性.當(dāng)然,本算法也存在缺陷,如對正面船艇的檢測率不高,這是因?yàn)镠OG特征模型對視角變化的魯棒性較差;此外,在復(fù)雜背景下本算法存在較多誤報(bào),檢測率也有待提高.
本工作未來的研究主要集中在2個(gè)方向:①進(jìn)一步提升算法的檢測率,考慮采用更復(fù)雜的特征模型,如用詞袋(bag of word,BOW)模型代替HOG特征模型對船艇進(jìn)行建模;②進(jìn)一步提升算法的檢測速度,使算法檢測速度能更加接近實(shí)時(shí),這對USV視覺檢測系統(tǒng)具有重大的意義.