孫智文,秦志亮,彭若松,馬林偉,馬本俊,劉雪芹,趙杰臣
1. 青島哈爾濱工程大學(xué)創(chuàng)新發(fā)展中心,山東 青島 266000
2. 哈爾濱工程大學(xué) 青島創(chuàng)新發(fā)展基地,山東 青島 266000
霧是海上的一種自然天氣現(xiàn)象,是低層大氣中的水汽經(jīng)過凝結(jié)而形成的??諝鈱?duì)水分的容納有一定限度,當(dāng)?shù)蛯涌諝鉁囟冉档停宜偭砍^了臨界溫度條件下的飽和水汽量,多余的水汽便凝結(jié)出來與空氣中的微小顆粒物相結(jié)合而形成霧[1]。霧具備極其多的反射面,光線無法穿透霧,只能被霧所反射回來,所以霧通常呈白色,大大降低了海面上的能見度,為海上交通帶來了不便,嚴(yán)重時(shí)會(huì)對(duì)國家和人民生命財(cái)產(chǎn)造成巨大損失。此外,由于海霧的存在,利用光學(xué)設(shè)備所采集到的海面船只圖像具有嚴(yán)重的模糊感,這使得計(jì)算機(jī)視覺識(shí)別工作受到極大影響,因此在對(duì)圖像進(jìn)行目標(biāo)檢測(cè)識(shí)別前,需要對(duì)船只圖像進(jìn)行有無海霧影響判別,如果有海霧影響需要先對(duì)其進(jìn)行圖像去霧處理,再送到目標(biāo)檢測(cè)模型中進(jìn)行船只識(shí)別。目前,圖像去霧算法根據(jù)處理方式不同,主要分為圖像增強(qiáng)去霧、圖像復(fù)原去霧和利用深度學(xué)習(xí)方法去霧3 類方式[2]。
通過在海島礁平臺(tái)安裝非合作光學(xué)目標(biāo)安全感知系統(tǒng),可以對(duì)海島礁周緣海域進(jìn)行光學(xué)監(jiān)控和實(shí)時(shí)識(shí)別。海上船只識(shí)別檢測(cè)主要有3 種方法:一是基于傳統(tǒng)船舶定位識(shí)別,主要依靠船舶交通服務(wù)(vessel traffic service,VTS)、自動(dòng)雷達(dá)標(biāo)繪儀(automatic radar plotting aid,ARPA)[3]以及船舶自動(dòng)識(shí)別系統(tǒng)(automatic identification system,AIS)[4]等實(shí)現(xiàn)對(duì)船舶的識(shí)別;二是利用圖像特征提取算法提取數(shù)字圖像相關(guān)信息特征,運(yùn)用機(jī)器學(xué)習(xí)中的分類器對(duì)圖像提取特征的深度和維度進(jìn)行分類和識(shí)別檢測(cè);第3 種是基于深度學(xué)習(xí)方法進(jìn)行目標(biāo)識(shí)別檢測(cè),不同于前兩者,運(yùn)用深度學(xué)習(xí)的方法提高了圖像特征提取的深度和維度,有著更好的分類效果,具有更高的船只識(shí)別率。
本文針對(duì)海上船只識(shí)別存在的海霧遮擋、目標(biāo)識(shí)別困難等問題,采用優(yōu)化改進(jìn)后的數(shù)字圖像暗通道先驗(yàn)去霧算法和YOLOv4 算法,對(duì)改進(jìn)后的船只去霧和識(shí)別檢測(cè)算法進(jìn)行了比對(duì)實(shí)驗(yàn)驗(yàn)證。通過對(duì)比實(shí)驗(yàn)驗(yàn)證,優(yōu)化改進(jìn)后的數(shù)字圖像暗通道先驗(yàn)去霧算法結(jié)合YOLOv4 算法提高了船舶識(shí)別精度,達(dá)到了實(shí)時(shí)識(shí)別檢測(cè)的要求。
本文依托安裝在海島礁上的全景光學(xué)監(jiān)控系統(tǒng),采集海島礁周緣光學(xué)視頻圖像,結(jié)合基于圖像復(fù)原的暗通道先驗(yàn)去霧算法對(duì)輸入圖像進(jìn)行預(yù)先處理,再利用YOLOv4 等深度學(xué)習(xí)算法完成對(duì)海面非合作目標(biāo)船只的識(shí)別檢測(cè)。
1.1.1 先驗(yàn)知識(shí)
相比于晴天所拍攝的能見度較高的圖像而言,霧天所拍攝的圖像在一定程度上影響了人們的可視范圍,給海上船舶識(shí)別造成了不便。將霧天引入圖像處理的領(lǐng)域來看,有霧圖像相比于無霧圖像丟失了許多細(xì)節(jié),導(dǎo)致圖像失真,為了進(jìn)一步還原圖像的真實(shí)效果,在對(duì)有霧圖像進(jìn)行特征分析后,可運(yùn)用暗通道先驗(yàn)去霧算法等方法對(duì)圖像進(jìn)行去霧處理。
He 等[5]通過大量統(tǒng)計(jì)觀察得出一個(gè)結(jié)論,對(duì)于所有無霧圖像而言,圖像每個(gè)像素的紅綠藍(lán)三基色通道都存在某個(gè)通道的灰度值低于另外2 個(gè)通道情況。這說明在一個(gè)像素鄰域內(nèi)很可能存在某個(gè)像素的紅綠藍(lán)三基色通道最小值趨近于0。則其數(shù)學(xué)式為
式中:?(x)為像素x的鄰域,y為該鄰域內(nèi)的像素,表示取三通道最小值?;谶@個(gè)結(jié)論,可以直接評(píng)估出霧霾的厚度,并恢復(fù)出高質(zhì)量圖像,得到高質(zhì)量的深度圖,用于后續(xù)圖像識(shí)別檢測(cè)。
遍歷原始有霧船舶圖像的紅綠藍(lán)三基色通道,選出所有的最小灰度值,組合成一幅暗通道圖像,選取一個(gè)大小合適的矩形窗,窗口的中心坐標(biāo)為像素的坐標(biāo)。然后求取矩形窗中灰度最小的那個(gè)值,將其視為中心像素點(diǎn)的灰度值,從而得到輸入圖像的暗通道圖像,如圖1 所示。圖1(a)為輸入的彩色圖像原圖,圖1(b)為圖1(a)經(jīng)過上述處理后的圖像。
圖1 彩色圖像及其對(duì)應(yīng)的暗通道圖像
1.1.2 計(jì)算透射率
在計(jì)算機(jī)視覺領(lǐng)域,對(duì)于有霧圖像的數(shù)學(xué)模型定義為
式中:I(x)為觀測(cè)到的有霧圖像;J(x)為需要恢復(fù)的無霧圖像;A為全局大氣光值;t(x)為透射率,描述了光通過介質(zhì)投射到攝像頭過程中沒有被散射的部分。
假設(shè)大氣光值A(chǔ)是一個(gè)定值,利用大氣光對(duì)成像模型做歸一化處理,等式兩邊除以大氣光值,得
式中:c為彩色船舶圖像的三通道,t(x)為透射率。由于廣泛性認(rèn)為在圖像局部區(qū)域的霧氣較為均衡,并結(jié)合前人研究設(shè)定透射率t(x)為常數(shù),將透射率定義為t(x),求最小通道和最小值濾波,可得
結(jié)合公式
對(duì)式(1)變形可得
在現(xiàn)實(shí)生活中,無論怎樣的天氣情況,空氣中總是懸浮著一些細(xì)小顆粒影響視覺,看遠(yuǎn)方仍然能感受到一定程度的霧的影響,因此為貼合實(shí)際情況,引入了參數(shù) ω保留一些霧影響,此時(shí)的表達(dá)式為
1.1.3 估計(jì)和優(yōu)化大氣光值
大氣光值的估計(jì)計(jì)算也是圖像去霧過程中的一個(gè)重要環(huán)節(jié),其準(zhǔn)確性將直接影響霧圖成像方程的結(jié)果,誤差過大將會(huì)導(dǎo)致圖像的去霧性能降低,如何更加準(zhǔn)確地估計(jì)出大氣光值是去霧算法的一個(gè)重點(diǎn)研究?jī)?nèi)容。在許多場(chǎng)景中,存在類似大氣光的白色物體,想要精準(zhǔn)地估計(jì)出大氣光值存在極大的困難,不準(zhǔn)確的值會(huì)影響去霧的最終效果,出現(xiàn)去霧圖像亮度偏暗等現(xiàn)象。因此,針對(duì)處理過后的圖片出現(xiàn)色彩失真的現(xiàn)象,通過優(yōu)化算法中大氣光值計(jì)算方法進(jìn)行改進(jìn)。本文改進(jìn)的大氣光值優(yōu)化方法為:
1)構(gòu)建一個(gè)評(píng)價(jià)函數(shù)F(x),其滿足以下表達(dá)式:
2)當(dāng)圖片初次進(jìn)行4 等分后,選擇滿足評(píng)價(jià)函數(shù)條件的區(qū)域并且再次進(jìn)行四等分,如此迭代,直到確定符合評(píng)價(jià)函數(shù)閾值的候選區(qū)域,圖像迭代過程如圖2 所示。
圖2 四分法分割示意
式中n是該區(qū)域內(nèi)像素點(diǎn)的個(gè)數(shù)。
3)計(jì)算候選區(qū)域中的差值,對(duì)各差值進(jìn)行比較,最大的作為候選區(qū)域,認(rèn)為候選區(qū)域內(nèi)的像素平均值是大氣光值的估計(jì)值[6],定義S(x)是該區(qū)域中所有像素值的累加結(jié)果,則大氣光值A(chǔ)的表達(dá)式為
1.1.4 圖像復(fù)原
當(dāng)透射率值較低時(shí),會(huì)導(dǎo)致J的值偏大,可通過設(shè)置閾值T0來忽略透射率最小值,當(dāng)t(x) 1.2.1 YOLOv4 目標(biāo)檢測(cè)算法及優(yōu)化 Joseph Redmon 于2015 年發(fā)表了一步走策略端到端的實(shí)時(shí)目標(biāo)檢測(cè)算法YOLO(you only look once)。YOLO 系列算法是基于一個(gè)單獨(dú)神經(jīng)網(wǎng)絡(luò)達(dá)到了由輸入的采集圖像到輸出圖像目標(biāo)類別位置的目的,沒有單獨(dú)的求取感興趣區(qū)域的過程,而是把目標(biāo)檢測(cè)過程中識(shí)別、定位類比為一個(gè)回歸過程進(jìn)行求解[7]。YOLOv 系列目標(biāo)檢測(cè)算法是和單步多框目標(biāo)檢測(cè)算法(single shot multibox detector,SSD)同為單階段目標(biāo)檢測(cè)算法,具有運(yùn)算速度快的特點(diǎn),在經(jīng)過一系列改進(jìn)后,除了運(yùn)算速度的進(jìn)一步提升,其識(shí)別準(zhǔn)確率也有了極大提高[8]。 YOLOv4 是在YOLOv3 基礎(chǔ)[9]上對(duì)其網(wǎng)絡(luò)模型結(jié)構(gòu)和訓(xùn)練技巧等方面進(jìn)行了一些改進(jìn),使得檢測(cè)性能得到進(jìn)一步的提升,其總體檢測(cè)思路沒有發(fā)生太大變化。YOLOv4 完整網(wǎng)絡(luò)框架如圖3 所示,主要包含CBM、CBL、Res unit、CSPX、空間金字塔池化網(wǎng)絡(luò)(spatial pyramid pooling,SPP)共5 個(gè)基本組件。CBM 為Yolov4 網(wǎng)絡(luò)結(jié)構(gòu)中的最小組件,由Conv+Bn+Mish 激活函數(shù)三者組成;CBL 由Conv+Bn+Leaky_relu 激活函數(shù)三者組成;Res unit 借鑒了Resnet 網(wǎng)絡(luò)中的殘差結(jié)構(gòu),讓網(wǎng)絡(luò)可以構(gòu)建的更深;CSPX 借鑒了CSPNet 網(wǎng)絡(luò)結(jié)構(gòu),由3 個(gè)卷積層和X個(gè)Res unint 模塊Concate 組成;SPP 部分采用池化核大小分別為1×1、5×5、9×9、13×13 的最大池化的方式,進(jìn)行多尺度融合。 圖3 YOLOv4 網(wǎng)絡(luò)模型 相比于YOLOv3 算法,YOLOv4 實(shí)現(xiàn)了算法上守正出奇的創(chuàng)新和各種先進(jìn)算法的集成創(chuàng)新。在結(jié)構(gòu)方面,YOLOv4 主干特征提取網(wǎng)絡(luò)由Darknet-53 改為了CSPDarknet-53,將resblock_body的結(jié)構(gòu)進(jìn)行修改,使用了CSPnet 結(jié)構(gòu)。同時(shí)在對(duì)CSPdarknet53 的最后一個(gè)特征層進(jìn)行3 次卷積后新增了SPP[10]結(jié)構(gòu),分別利用4 個(gè)不同尺度的最大池化進(jìn)行處理,極大地增加感受野,分離出最顯著的上下文特征。YOLOv4 在訓(xùn)練方面,還引入了Mosaic、DropBlock 正則化[11]、類標(biāo)簽平滑[12]、Mish 激活函數(shù)[13]、CIoU-loss[14]等技巧??偟膩碚f,YOLOv4 通過引入各類前人的研究技術(shù)并且將其組合,使YOLOv4 實(shí)現(xiàn)了速度和精度的平衡,具有更強(qiáng)的泛化性,更適合于工程應(yīng)用。 本文檢測(cè)目標(biāo)為海上非合作目標(biāo)船只,在檢測(cè)識(shí)別的過程中容易受到海面復(fù)雜氣象條件、復(fù)雜背景、光學(xué)圖像船只尺度大小不一、圖像分辨率不高和海浪遮擋等不利因素的干擾,影響船只整體信息的獲取。鑒于此,針對(duì)特定船只檢測(cè)識(shí)別的場(chǎng)景,本文在YOLOv4 算法的基礎(chǔ)上進(jìn)行進(jìn)一步的優(yōu)化,首先在YOLOv4 主干特征提取網(wǎng)絡(luò)中引入了混合空洞卷積方法[15],以獲得更多尺度的信息,增大特征圖的感受野;其次根據(jù)本文船只數(shù)據(jù)集的中實(shí)際船只的尺寸大小,利用K-means++聚類計(jì)算先驗(yàn)框[16]提前確定合適大小的先驗(yàn)框,節(jié)省了大量計(jì)算資源。在進(jìn)行計(jì)算驗(yàn)證過程中,采用64 位windows10 操作系統(tǒng),深度學(xué)習(xí)框架為Tensorflow。 1.2.2 混合空洞卷積方法 淺層的特征圖有利于獲取更加豐富的位置信息,同時(shí)也有利于對(duì)細(xì)小的目標(biāo)進(jìn)行檢測(cè)識(shí)別,而深層的特征圖往往擁有更多的語義信息和更廣的感受野[17]。為了獲取更大的感受野,通常通過池化層和卷積層來達(dá)到目的,但這樣在提供更大感受野的同時(shí),其分辨率會(huì)進(jìn)一步降低,容易導(dǎo)致空間信息和數(shù)據(jù)丟失。 為了進(jìn)一步增加感受野,并且保證原特征圖的大小恒定,從而代替原有的上采樣和下采樣操作,本文引入了空洞卷積方法。相比于普通卷積的不同,空洞卷積(dilated convolution)引入了擴(kuò)張率[18](dilation rate),擴(kuò)張率不同,其感受野大小也不同,普通卷積方法和空洞卷積方法對(duì)比如圖4 所示。 圖4 普通卷積和空洞卷積的對(duì)比 由圖4 可知,卷積核大小同為3×3,但分別起到了5×5和7×7的卷積效果,所以感受野有所增大,并且值得肯定的是參數(shù)量并沒有增多。具體的計(jì)算公式為 式中:k為空洞卷積的卷積核,k′為等效卷積核,d為空洞數(shù),RFi+1為第i+1層的感受野,RFi為第i層的感受野,Si為前面總層數(shù)的步長(zhǎng)之積。圖5 為連續(xù)做3 次空洞率為2 的空洞卷積結(jié)果,圖6 為做3 次空洞率分別為1、2、3 的空洞卷積結(jié)果。 圖5 連續(xù)做空洞率為2 的空洞卷積示意 圖6 空洞率分別為1、2、3 的空洞卷積示意 在空洞卷積過程中,輸入的采樣變得十分稀疏,感受野不連續(xù)從而導(dǎo)致局部信息丟失,較遠(yuǎn)距離上的一些信息可能并無關(guān)聯(lián)??斩淳矸e通過少數(shù)幾次的連續(xù)卷積后就能生成較大的感受野(如圖5 所示),不利于對(duì)小尺度目標(biāo)的檢測(cè),使得在檢測(cè)目標(biāo)時(shí)不能同時(shí)兼顧大小目標(biāo)?;诖?,改進(jìn)的YOLOv4 運(yùn)用了混合卷積模塊,將不同空洞率的空洞卷積(如圖6 所示)進(jìn)行融合,增加特征層的感受野并且不改變特征圖分辨率。改進(jìn)的YOLOv4 主干特征提取網(wǎng)絡(luò)如圖7所示。 圖7 改進(jìn)YOLOv4 的主干特征提取網(wǎng)絡(luò) 1.2.3 K-means++聚類計(jì)算先驗(yàn)框 在YOLOv2 到Y(jié)OLOv4 算法中,為了提高檢測(cè)模型的精度,利用K-means 聚類的方法來確定先驗(yàn)框,但是也存在一些問題,例如:K 值是人為事先給定,許多時(shí)候難以確定具體應(yīng)該分為幾類;初始聚類的中心坐標(biāo)選擇存在一定難度,好的初始值有利于得到有效的聚類結(jié)果,反之則無法得到;K-means 聚類算法需要對(duì)樣本不斷地進(jìn)行分類調(diào)整,聚類中心也在不斷更新,所以耗費(fèi)了大量的計(jì)算資源。 針對(duì)K-means 存在的問題,本文在改進(jìn)的模型當(dāng)中采用了K-means++聚類算法,具體實(shí)現(xiàn)流程及2 個(gè)算法流程間對(duì)比如圖8 所示。Kmeans 聚類算法中利用歐幾里得公式計(jì)算真實(shí)框和先驗(yàn)框的距離,在本模型中為了適應(yīng)船只數(shù)據(jù)集中船只多尺度的特點(diǎn),采用先驗(yàn)框和聚類中心的交并比(intersection over union,IOU)作為Kmeans 聚類的參數(shù)。 圖8 K-means 和K-means++聚類算法對(duì)比 具體計(jì)算公式為 式中:b為樣本數(shù)據(jù)集的先驗(yàn)框,c為船只聚類中心。 經(jīng)過計(jì)算,得到改進(jìn)YOLOv4 算法的候選框初始尺寸為[(21 11),(37 16),(51 32),(66 20),(81 56),(108 32),(176 51),(214 91),(445 152)]。 本文對(duì)同一組有霧圖片分別運(yùn)用直方圖均衡去霧算法、Retinex 去霧算法、AODNet 去霧算法、暗通道先驗(yàn)算法和改進(jìn)的暗通道先驗(yàn)算法進(jìn)行去霧處理,針對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行了分析和對(duì)比,不同算法去霧效果對(duì)比如圖9 所示。通過圖9 從視覺效果角度對(duì)去霧效果進(jìn)行分析得到: 圖9 去霧效果視覺對(duì)比 1)基于直方圖均衡的去霧算法在一定程度上改善了圖像去霧的視覺效果,增強(qiáng)了圖片的信息特征,但圖像色彩失真較為嚴(yán)重,具有明顯的塊效應(yīng)。 2)基于Retinex 去霧算法相比于直方圖均衡去霧算法有了明顯的效果改善,但仔細(xì)觀察可以看出,Retinex 去霧算法對(duì)色彩的還原較差,并且存在圖像降質(zhì)的現(xiàn)象。 3)基于深度學(xué)習(xí)的AODNet 使用的數(shù)據(jù)集中,許多有霧場(chǎng)景是通過合成得來,其去霧效果的適應(yīng)性一般,很多圖像去霧還原不夠準(zhǔn)確,部分圖像去霧不明顯。 4)暗通道先驗(yàn)去霧算法對(duì)大部分的有霧圖像有著較好的去霧效果,但是在包含大區(qū)域天空的圖像去霧后會(huì)存在光暈現(xiàn)象,并且處理過后的圖片亮度經(jīng)常偏暗。 5)改進(jìn)后的暗通道先驗(yàn)去霧算法無論是在去霧效果還是在色彩還原上都表現(xiàn)出了最佳的效果,但是針對(duì)濃度過大的霧無法實(shí)現(xiàn)完全去霧。 由于視覺分析可能帶有主觀性,因此引入圖像質(zhì)量評(píng)價(jià)指標(biāo),用客觀的數(shù)據(jù)評(píng)價(jià)各圖像去霧算法的實(shí)際效果。具體客觀評(píng)價(jià)指標(biāo)為圖像信息熵、標(biāo)準(zhǔn)差、灰度均值、平均梯度。計(jì)算過程中,利用信息熵來表示圖像所包含的信息量,圖像信息熵越大,圖像所包含的細(xì)節(jié)信息就越豐富;圖像標(biāo)準(zhǔn)差是用來反映圖像的像素平均值和該圖像像素值的離散程度,標(biāo)準(zhǔn)差越大,圖像的對(duì)比度就有所增加;灰度代表圖像在各像素點(diǎn)的亮度,反映圖像色彩深淺,灰度均值代表某一灰度圖中各像素點(diǎn)灰度值的平均值,灰度均值越大,圖像就越亮;平均梯度是用來描述圖像清晰度的一個(gè)指標(biāo),通常認(rèn)為平均梯度值越大,圖像的清晰度就越高,包含更多的圖像信息。 分別選取A、B、C 共3 個(gè)圖作為對(duì)比實(shí)驗(yàn)對(duì)象進(jìn)行計(jì)算,相關(guān)評(píng)價(jià)指標(biāo)樣圖和結(jié)果見圖10 和表1~3。 表1 圖A 客觀評(píng)價(jià)指標(biāo) 表2 圖B 客觀評(píng)價(jià)指標(biāo) 表3 圖C 客觀評(píng)價(jià)指標(biāo) 圖10 評(píng)價(jià)指標(biāo)樣圖 相較于原圖而言,經(jīng)過去霧算法處理過后的圖片從整體上來說,信息熵有所增加,說明圖像中包含更多的細(xì)節(jié)信息;標(biāo)準(zhǔn)差也有所增加,說明圖像質(zhì)量在一定程度上有了提升;平均梯度也是呈上升趨勢(shì),提高了圖像的清晰度。由于樣本圖像數(shù)量受限,不能完全保證經(jīng)過改進(jìn)的暗通道先驗(yàn)算法處理過后的圖像在各個(gè)參數(shù)都處于最佳,但仍能看出一定趨勢(shì),改進(jìn)的暗通道先驗(yàn)去霧算法處理過后的圖像,在參數(shù)方面表現(xiàn)優(yōu)異。 通過網(wǎng)上下載、現(xiàn)場(chǎng)實(shí)拍以及部分開源船只數(shù)據(jù)集,收集篩選了船只圖像1 200 張,利用labeling 軟件對(duì)船只進(jìn)行標(biāo)注,得到VOC2007 格式的數(shù)據(jù)集。其中,選取0.8 比例的圖片作為訓(xùn)練集,0.2 比例的圖片作為驗(yàn)證集。 為了橫向?qū)Ρ菷aster-RCNN、YOLOv4 以及改進(jìn)YOLOv4 算法的有效性,本次對(duì)比實(shí)驗(yàn)利用平均檢測(cè)精度(average precision,AP)、均值平均檢測(cè)精度(mean average precision,mAP)對(duì)檢測(cè)結(jié)果進(jìn)行識(shí)別效果評(píng)價(jià),測(cè)試圖片主要包含漁船、快艇、貨船以及客輪共4 類。同時(shí)通過訓(xùn)練好的Faster-RCNN(faster regions with CNN features)算法、YOLOv4 和改進(jìn)的YOLOv4 模型對(duì)其進(jìn)行檢測(cè)識(shí)別,并且將閾值設(shè)定為0.5,其結(jié)果如表4 所示。 從表4 可以看出,改進(jìn)后的YOLOv4 算法具有最高的mAP,總體上AP 值高于其余2 種模型,船只檢測(cè)性能優(yōu)于Faster-RCNN 算法和YOLOv4算法。其中改進(jìn)YOLOv4 算法的mAP 為93.18%,比原YOLOv4 算法高出0.33%,比Faster-RCNN 算法高出28.38%。分析對(duì)比4 種船只的檢測(cè)結(jié)果,對(duì)快艇的檢測(cè)精度最高,考慮到快艇的形狀特征以及顏色特征較為明顯,并且在數(shù)據(jù)集中快艇的數(shù)量最多,因此具有較好檢測(cè)識(shí)別效果;而客輪的樣本最少,并且其形狀特征不如另外3 種船只分明,因此其識(shí)別率最低,從此可以看出樣本均衡性對(duì)模型檢測(cè)性能具有重要的影響。 將Faster-RCNN、YOLOv4 以及改進(jìn)YOLOv4船只檢測(cè)模型運(yùn)用到實(shí)際場(chǎng)景中,分別選取單一船只場(chǎng)景和多船只場(chǎng)景進(jìn)行對(duì)比,其檢測(cè)結(jié)果如圖11 所示。 圖11 3 種算法檢測(cè)效果對(duì)比 對(duì)圖11 進(jìn)行分析可以看出,改進(jìn)后的YOLOv4船只檢測(cè)模型具有最佳的檢測(cè)性能,具有最高的船只識(shí)別率,F(xiàn)aster-RCNN 船只檢測(cè)模型的漏檢率最高。改進(jìn)后的YOLOv4 算法在小尺度目標(biāo)船只識(shí)別方面有所進(jìn)步,但是更小尺度的船只以及遮擋較為嚴(yán)重的船只仍然難以識(shí)別,出現(xiàn)了漏檢的情況。 為了進(jìn)一步驗(yàn)證海霧對(duì)船只檢測(cè)識(shí)別的影響,利用改進(jìn)后的YOLOv4 算法對(duì)其進(jìn)行了實(shí)驗(yàn),分別對(duì)有霧圖像和去霧圖像進(jìn)行船只檢測(cè)識(shí)別。從圖12 中可看出,去霧前部分船只未能被識(shí)別,但去霧后識(shí)別到的船只數(shù)量增加;對(duì)單一船只的識(shí)別準(zhǔn)確率也有所提升。但是在實(shí)驗(yàn)中發(fā)現(xiàn),海霧濃度過大對(duì)船只檢測(cè)識(shí)別的影響是不可逆的,經(jīng)過去霧處理后仍然無法實(shí)現(xiàn)對(duì)船只的檢測(cè)識(shí)別。 圖12 圖像去霧前后船只檢測(cè)識(shí)別效果對(duì)比 在實(shí)驗(yàn)過程中,對(duì)Faster-RCNN、YOLOv4 以及改進(jìn)YOLOv4 的算法檢測(cè)時(shí)間進(jìn)行了統(tǒng)計(jì)分析,結(jié)果如表5 所示。Faster-RCNN 算法的平均運(yùn)行時(shí)間最長(zhǎng),平均每張圖片需要花費(fèi)1.21 s,YOLOv4 平均每張圖片需要花費(fèi)0.385 s,改進(jìn)的YOLOv4 算法平均每張圖片需要花費(fèi)0.316 s。 表5 3 種模型的平均檢測(cè)時(shí)間s 針對(duì)海上非合作目標(biāo)船只檢測(cè)識(shí)別的場(chǎng)景來看,F(xiàn)aster-RCNN 船只檢測(cè)模型的識(shí)別速率較慢,難以滿足本場(chǎng)景下的實(shí)施目標(biāo)檢測(cè)要求,并且其精度相比于本文算法也有所不足。而基于改進(jìn)YOLOv4 的目標(biāo)檢測(cè)算法可以做到實(shí)時(shí)檢測(cè)的同時(shí)兼顧了檢測(cè)精度,具有良好的工程應(yīng)用性。 經(jīng)過大量實(shí)驗(yàn)后發(fā)現(xiàn),改進(jìn)后的YOLOv4 算法能夠基本滿足對(duì)海上非合作目標(biāo)船只進(jìn)行識(shí)別的功能,但若是海上天氣過于極端,例如海霧較大、可視距離極近,那么圖像去霧無法完成,同時(shí)也無法完成對(duì)船只的識(shí)別,后續(xù)需要對(duì)其繼續(xù)進(jìn)行研究,提出新的解決方案。 1)本文對(duì)基于圖像復(fù)原的海上圖像去霧算法進(jìn)行了研究,對(duì)暗通道先驗(yàn)算法進(jìn)行了優(yōu)化改進(jìn)。通過和幾種主流去霧算法的去霧效果進(jìn)行計(jì)算對(duì)比,在薄霧情況下,改進(jìn)后的暗通道去霧算法的去霧效果和圖像色彩還原均表現(xiàn)出了極佳效果。 2)本文對(duì)YOLOv4 檢測(cè)算法進(jìn)行了優(yōu)化改進(jìn)。改進(jìn)YOLOv4 算法中運(yùn)用空洞卷積代替普通卷積,引入了K-means++聚類算法,節(jié)省了大量的計(jì)算資源。將Faster-RCNN 模型、YOLOv4 模型和改進(jìn)YOLOv4 模型進(jìn)行計(jì)算對(duì)比,比較其mAP值。改進(jìn)后的YOLOv4 算法具有較高的檢測(cè)精度和較好的實(shí)時(shí)性,為海面船只實(shí)時(shí)識(shí)別提供了一定的技術(shù)支持。在計(jì)算過程中,改進(jìn)YOLOv4 算法對(duì)數(shù)據(jù)集中4 種類型船只的檢測(cè)精度存在一定差異,說明樣本均衡性對(duì)改進(jìn)算法的船只識(shí)別檢測(cè)精度具有一定影響,數(shù)據(jù)集需要注意樣本均衡。1.2 改進(jìn)后的YOLOv4 目標(biāo)檢測(cè)算法
2 實(shí)驗(yàn)結(jié)果分析
2.1 去霧算法對(duì)比及結(jié)果分析
2.2 船只識(shí)別算法對(duì)比及結(jié)果分析
3 結(jié)論