李宗鑫,王啟曙,于娟娟
(1.92001 部隊,山東 青島 266000;2.煙臺幼兒師范高等??茖W校,山東 煙臺 266000)
海上艦船目標的檢測與識別是計算機視覺和人工智能領域關注的重要問題,其在軍事作戰(zhàn)應用、海上交通運輸、海事救援、海洋漁業(yè)等領域具有十分重要的意義。隨著可見光、紅外、合成孔徑雷達(Synthetic Aperture Radar,SAR)及衛(wèi)星遙感等成像技術的發(fā)展成熟,基于圖像處理、計算機視覺技術的艦船目標檢測與識別成為當前的研究熱點,具有廣闊的應用前景[1]。
一般而言,可見光圖像中艦船目標特征主要有顏色、輪廓、形狀以及紋理等,現(xiàn)有的艦船目標檢測識別算法大多依據(jù)此類特征,綜合運用圖像處理、機器學習等相關算法進行檢測識別。
艦船目標檢測識別算法一般可分為檢測和識別兩個階段。檢測階段多使用圖像處理相關算法,對圖像進行分割篩選獲取包含艦船目標的區(qū)域。常見的有閾值分割法、邊緣檢測法以及基于視覺顯著性的方法。閾值分割法有最小誤差閾值分割法[2]、多閾值分割法[3]、最大類間方差法[4]、最大熵法以及自適應閾值法[5]等。此類算法對背景或者艦船目標的顏色、紋理分析統(tǒng)計后得出分割閾值,優(yōu)點是分離精度高,但通用性一般。邊緣檢測算法通過計算圖像的邊緣特征提取目標區(qū)域,常用的如小波檢測[6]、Canny 邊緣檢測、霍夫變換[7]等?;谶吘壍姆指罘椒ㄐ枰B續(xù)的輪廓才能保證識別效果,當目標與背景顏色相近、邊緣特征不明顯時效果不理想。基于視覺顯著性模型(Visual Attention Mechanism,VAM)的方法可分為空域和頻域兩類。Itti 算法為典型的空域算法。譜殘差方法(Spectral Residual)是頻域方法的代表。閆成章等[8]提出了一種多尺度優(yōu)化閾值的顯著性檢測算法,對輸入圖像做金字塔分解,然后應用譜殘差法對圖像序列做顯著性檢測得到顯著性子圖,最后融合各子圖并進行閾值分割得到最終檢測結(jié)果。徐芳等[9]應用多顯著性檢測模型搜索海面目標生成顯著圖,圖像分割后使用梯度方向特征進行鑒別驗證,排除非艦船干擾。王剛等[10]利用大尺度圖像塊鄰域最大對比特 性(Image Path Maximum Contrast Measurement,IPMCM)獲取圖像顯著圖,并自適應分割感興趣區(qū)域,然后計算多尺度圖像塊鄰域最小對比度并進行最大值合并操作,最后以自適應閾值精確檢測目標位置?;谝曈X顯著性模型的方法實現(xiàn)簡單,在背景較為單一且目標特征較為明顯時效果較好。
艦船目標識別階段,多使用機器學習或模板匹配等方法進行驗證識別。常用的特征有LBP 特征、Hu 不變矩特征、SIFT 特征、HOG 特征和Harris 角點特征等。一些算法依據(jù)面積比、長寬比等構(gòu)建組合特征進行識別驗證[11-12]。近年來,隨著深度學習及神經(jīng)網(wǎng)絡算法的發(fā)展[13],基于CNN、R-CNN、YOLO 等的艦船目標檢測識別算法得到了廣泛應用[14-16],基于深度學習和神經(jīng)網(wǎng)絡的算法可自適應地分層學習目標特征,相比較于人工特征提取,泛化能力更強。
海上艦船種類較多,外觀、顏色等變化較大,但圖像場景相對單一,干擾目標相對較少。為提高檢測精度和算法處理速度,本文提出了一種基于全局對比度特征的艦船目標檢測識別方法。該方法包括3 個主要內(nèi)容:計算圖像各通道全局對比度特征圖并進行融合,得到顯著圖;采用Otsu 算法自適應分割圖像,獲取艦船目標待識別區(qū)域;使用HOG特征+SVM 分類器對候選區(qū)域圖像進行驗證識別,得到艦船目標檢測識別結(jié)果。實驗結(jié)果表明,本文提出的算法能夠有效檢測識別艦船目標,檢測識別準確率高,算法魯棒性好。
艦船目標檢測算法流程如圖1 所示。
圖1 艦船目標檢測算法流程
視覺顯著性檢測(Visual Saliency Detection)技術依據(jù)人類的視覺特點,對圖像中顯著性目標區(qū)域進行增強處理,降低背景干擾,廣泛應用于圖像處理及目標檢測。
1.1.1 全局對比度特征計算和圖像融合
輸入離散空間圖像p(x,y),將圖像從RGB 顏色空間轉(zhuǎn)換到HSV 顏色空間,求HSV 空間中每個特征通道的均值Hα、Sα、Vα,計算圖像各通道像素值與均值的距離,即原始圖像中各通道像素值與均值相減,由此得到像素點3 個通道的全局對比度特征值:
將Hα、Sα、Vα作為顯著圖中對應像素的特征分量,則顯著圖可表示為:
式中,α、β、γ為各通道全局對比度特征值所占權(quán)重。實際處理時,為弱化光照變化的影響,根據(jù)測試結(jié)果設置歸一化因子值為:
1.1.2 頻域濾波
使用高斯濾波器對融合后的顯著圖進行平滑 處理:
1.1.3 分塊壓縮處理
為了減小后期算法計算量,需要對顯著圖進行分塊壓縮處理,計算公式如下:
按照一定的分塊尺度將顯著圖分塊劃分。假設分塊尺寸為m×n,則圖像可劃分為M×N個子圖像塊(最后輸出的顯著圖的分辨率即為M×N),求圖像塊內(nèi)像素灰度均值,作為輸出后的壓縮圖像中對應像素灰度值。本文中m和n取值均為4,其中blk(i,j)(i,j)塊的值i∈[0,m),j∈[0,n)。經(jīng)過上述步驟處理得到包含艦船目標區(qū)域的顯著圖,如圖2 所示。顯著圖中,像素灰度值分布如圖3 所示,其中x和y軸為圖像二維坐標,z軸為像素灰度值??梢钥闯觯灤繕伺c背景區(qū)域?qū)Ρ榷容^高,具有二類可分性。
圖2 艦船目標及其顯著圖
圖3 艦船目標顯著圖像素值灰度分布
海上場景相對比較單一,除艦船、島嶼外,天空和海面區(qū)域占據(jù)大部分畫面,因此可使用灰度統(tǒng)計的方法計算出閾值t,對顯著圖進行二值分割,剔除海面和天空區(qū)域,保留艦船目標。
本文使用最大類間方差法(Otsu)對顯著圖進行二值化,分離艦船目標與背景圖像。對于圖像p(x,y),假設閾值T可將圖像分成前景和背景兩部分,其中,ω0為前景像素點占整幅圖像的比例,φ0為前景像素灰度均值,ω1為背景像素點占整幅圖像的比例,φ1為背景像素灰度均值,φ為整幅圖像的灰度均值。假設圖像中前景像素亮度值高于背景亮度,則類間方差為σ2:
采用遍歷法計算出使類間方差最大的閾值T,即為最佳分割閾值,分割結(jié)果如圖4 所示。
圖4 Otsu 分割結(jié)果
圖像二值化后,為了消除離散雜波點等非艦船目標干擾,提高艦船目標區(qū)域內(nèi)部的連續(xù)性,先進行形態(tài)學腐蝕膨脹處理,再對二值圖像進行連通區(qū)域查找,找出艦船目標區(qū)域輪廓,標記其小外接矩形,并按照最小外接矩形的面積及長寬比進行篩選過濾,最后在分塊壓縮后的圖像中提取該矩形區(qū)域作為待識別區(qū)域。為了避免過度分割,保證艦船候選區(qū)域的完整性,提取待識別區(qū)域時擴大10&的像素范圍。
方向梯度直方圖(Histogram of Oriented Gradient,HOG)是一種用來描述圖像局部區(qū)域邊緣梯度和方向的特征算子,能夠較好地反映目標的邊緣信息,對幾何和光學變化都有很好的不變性。本文使用HOG 特征對待識別圖像進行特征描述。
考慮到光學圖像中艦船目標尺度特點,設置block 尺寸為16×16,cell 尺寸為8×8,cell 特征向量維數(shù)設置為6 維,梯度直方圖方向Bin 的個數(shù)為9,檢測窗口大小為128×64 像素,滑動步長為8×8像素。Block 和cell 劃分,如圖5 所示。
圖5 Block 和cell 劃分
支持向量機(Support Vector Machine,SVM)是一種應用廣泛的統(tǒng)計學習方法,在非線性及高維模式識別中優(yōu)勢突出。SVM 通過最大化分類間隔找到一個最優(yōu)超平面對樣本點進行分類。如圖6 所示,平面中實線圓和虛線圓表示不同的樣本點,虛線l1和l2之間的距離為最大間隔。SVM 的目的是找到一條直線l(超平面),使之到兩類樣本點的最短距離相等,即d1=d2。
圖6 二維線性劃分的最優(yōu)超平面
定義線性可分情況下,樣本集S和判別函數(shù)f(x)分別為:
式中:(xi,yi)為樣本點;xi為n維樣本向量;yi為樣本點類別;f(x)>0 和f(x)<0 時對應于yi=1 和yi=-1 的數(shù)據(jù)點,判別函數(shù)f(x)=0 為對應的分類面方程(分類超平面)。
定義分類間隔d,即l1、l2之間的距離為:
約束條件:
求最優(yōu)分類超平面即求目標函數(shù)τ(φ)的最小值:
通常情況下,訓練樣本為線性不可分。此時,可通過引入松弛變量和核函數(shù),通過某種非線性映射,將低維的線性不可分轉(zhuǎn)換到高維線性可分,如圖7 所示。
圖7 映射關系
定義映射函數(shù)x=ω(x),則該問題可表述如下。
要求分類面φx+c=0 滿足:
使用核函數(shù)K(xi,xj)表示映射函數(shù)的乘積,即K(xi,xj)=ω(xi)ω(xj)。線性不可分時,核函數(shù)的作用就是將低維空間數(shù)據(jù)轉(zhuǎn)換為高維空間內(nèi)積,以減少計算量,簡化計算過程。
以下4 個核函數(shù)使用頻率較高。
(1)線性核函數(shù)(linear):
(2)多項式核函數(shù)(polynomial):
(3)徑向基(Radical Basis Function,RBF)核函數(shù)(高斯核函數(shù)):
(4)Sigmoid 核函數(shù):
式中,v、c為定義參數(shù)。
分類器訓練及識別階段使用具有n類分組的C 類支持向量機(n≥2)作為分類器。C 類支持向量機可通過異常值懲罰因子對樣本點進行不完全分類。核函數(shù)選擇徑向基核函數(shù)(Radial Basis Function,RBF)。分類器訓練時,首先計算樣本圖像HOG 特征,然后將計算的HOG 特征向量輸入到SVM 中進行分類器訓練,訓練完畢后得到可用于艦船目標識別的分類器。
2.3.1 樣本庫構(gòu)建
構(gòu)建樣本庫是艦船識別前一個非常重要的工作。樣本庫中樣本的數(shù)量、種類和質(zhì)量,直接關系到訓練的分類器的好壞。樣本庫分為正樣本和負樣本大兩類。正樣本為不同天氣、光照條件下的艦船圖像(軍艦、商船和多種類型船只),按照拍攝角度分成正面和側(cè)面兩個類別。負樣本為海面、天空、島嶼以及雜波干擾等非艦船目標。樣本庫共有正樣本2 572 張,側(cè)面1 700 張,正面872 張。樣本庫共有負樣本共計3 000 張。樣本庫示例如圖8 所示。
圖8 樣本示例
2.3.2 分類器訓練
分類器離線訓練時,將樣本圖像按照艦船正面、側(cè)面以及負樣本3 種類別進行標記,然后輸入到SVM 中進行訓練,得到用于艦船識別的分類器。由于SVM 中常用的核函數(shù)有線性核函數(shù)、多項式核函數(shù)、徑向核函數(shù)和Sigmoid 核函數(shù)4 種,因此文中對4 類核函數(shù)分別進行測試,以選取分類準確率高和計算復雜度較低的核函數(shù),提高識別效率,測試結(jié)果如表1 所示。
表1 不同核函數(shù)的分類性能
測試時,選擇C 類支持向量機。使用線性核函數(shù)時,懲罰系數(shù)設置為0.37;使用多項式核函數(shù)和sigmoid 核函數(shù)時,degree 參數(shù)設置為10,gamma參數(shù)設置為0.09,coef0 參數(shù)設置為1.0;使用徑向基核函數(shù)時,gamma 參數(shù)設置為0.09。通過測試結(jié)果可以看出,徑向基核函數(shù)分類準確率高且速度較快,用于艦船目標分類效果較好。因此,分類器離線訓練時采用徑向基核函數(shù)。
為驗證算法性能,選取270 張包含艦船目標的圖像進行測試,圖像尺寸為1 600×1 200。測試環(huán)境:CPU處理器為AMD Ryzen 5 3500U 2.1 GHz,內(nèi)存8 GB,系統(tǒng)Windows10 64 bit。算法各模塊執(zhí)行時間如表1 所示,檢測識別單幀圖像平均耗時182.202 ms。
表2 算法時間性能測試
設p為正確檢測數(shù)目,q為錯誤檢測數(shù)目,r為漏檢數(shù)目,定義漏檢率L即正確檢測識別出的艦船目標數(shù)占實際總數(shù)的比例,計算公式為:
定義準確率R為正確檢測識別出的艦船目標數(shù)占檢測出的艦船目標總數(shù)(包含錯誤的檢測識別)的比例,計算公式為:
由表3 可知,270 張測試圖像中,艦船目標總數(shù)為341 個,算法檢測識別出的艦船目標總數(shù)為362 個,漏檢13 個,錯誤檢測34 個,漏檢率為3.81&,檢測準確率為93.18&。
表3 算法測試結(jié)果
表4 為本文算法及另外3 種算法在相同測試環(huán)境下處理同一幅圖像時的時間性能和準確率測試結(jié)果。可以看出,本文提出的算法具備較高的準確率和時間效率。
表4 算法時間性能測試
針對光學圖像中海上艦船目標的檢測識別問題,提出了一種基于圖像顯著性特征的艦船目標檢測識別算法。該算法首先計算圖像各通道全局對比度特征值,融合并進行分塊壓縮后得到顯著圖,其次使用Otsu 算法分割圖像得到艦船目標候選區(qū)域,最后使用HOG 特征+SVM 分類器對候選區(qū)域圖像進行驗證識別,最終得到艦船目標檢測識別結(jié)果。實驗結(jié)果表明,該算法在復雜海天背景下檢測識別準確率較高,具有一定的抗干擾性,計算量小,檢測識別時間短,對艦船目標實時檢測系統(tǒng)設計具有一定的參考意義。