曹維東,解 翠,韓 冰,董軍宇
(中國海洋大學(xué) 信息科學(xué)與工程學(xué)院,山東 青島 266000)
海洋鋒是指性質(zhì)明顯不同的兩種或兩種以上水體之間的狹窄過渡帶,是海洋環(huán)境參數(shù)的躍變帶,可用海水溫度、鹽度、密度、速度、顏色、葉綠素等要素來描述。鋒區(qū)中存在的強(qiáng)烈的湍流混合交換、水平輻合(輻散)和垂直運(yùn)動(dòng),不僅對航運(yùn)和漁業(yè)影響很大,而且對水下聲傳播、艦船航行安全、海上搜救等活動(dòng)也均有重要影響。作為重要的中尺度現(xiàn)象之一,海洋鋒的研究受到人們的關(guān)注和重視。而在海洋鋒的研究中,海洋鋒識(shí)別是其主要工作,因此,對海洋鋒識(shí)別算法的改進(jìn)十分重要。
梯度閾值法是一種傳統(tǒng)的海洋鋒識(shí)別方法,廣泛應(yīng)用于海洋鋒的識(shí)別研究中。但由于不同海域中海洋鋒的強(qiáng)度不一致,不同海域下的海洋鋒識(shí)別所需要的梯度閾值也不相同。在梯度閾值法中,確定合理的閾值比較困難,主要體現(xiàn)在不同的參數(shù)(如溫度、鹽度、葉綠素等)有不同的標(biāo)準(zhǔn),即使參數(shù)相同,不同的海域和不同的季節(jié),劃分和定義的標(biāo)準(zhǔn)也不相同。
基于深度學(xué)習(xí)的海洋鋒識(shí)別方法是目前較新的海洋鋒識(shí)別方法,圖像是海洋鋒識(shí)別研究的常見數(shù)據(jù)載體,得益于深度學(xué)習(xí)在圖像識(shí)別領(lǐng)域的快速發(fā)展,基于深度學(xué)習(xí)方法進(jìn)行海洋鋒識(shí)別可以避開傳統(tǒng)方法標(biāo)準(zhǔn)不統(tǒng)一問題,但是目前該類方法只能對目標(biāo)海域中是否存在海洋鋒做出判斷,無法對海洋鋒的形態(tài)細(xì)節(jié)進(jìn)行識(shí)別。
本文提出基于深度學(xué)習(xí)的海洋鋒自適應(yīng)梯度閾值識(shí)別方法。將Mask R-CNN算法應(yīng)用到海洋鋒識(shí)別問題中,并參考傳統(tǒng)梯度閾值法的思想,通過自適應(yīng)的閾值計(jì)算和鋒面調(diào)整過程,獲得精細(xì)的海洋鋒識(shí)別結(jié)果。
自20世紀(jì)70年代以來,識(shí)別海洋鋒的主流算法有梯度法(灰度梯度法)、灰度直方圖法和信息熵法。文獻(xiàn)[1]設(shè)計(jì)了新的濾波器,使用溫度梯度法檢測小尺度海面溫度鋒和葉綠素濃度鋒。文獻(xiàn)[2]利用Canny算子對噪聲的抑制作用,使用溫度梯度算法提取出了不同尺度的海洋鋒信息。文獻(xiàn)[3]通過形態(tài)學(xué)梯度理論對海面鋒進(jìn)行了各尺度信息的提取。文獻(xiàn)[4]使用Canny算子計(jì)算溫度梯度,利用形態(tài)學(xué)對經(jīng)Canny算子檢測出來的海洋鋒進(jìn)行連接、細(xì)化。文獻(xiàn)[5]將圖像中的鋒面視為圖像邊緣,視圖通過圖像邊緣檢測算法進(jìn)行海洋鋒識(shí)別。文獻(xiàn)[6]提出基于萬有引力模型的海洋鋒信息提取方法。文獻(xiàn)[7]提出一種基于Canny和數(shù)學(xué)形態(tài)學(xué)的海洋鋒檢測方法,基于數(shù)學(xué)形態(tài)學(xué)二值重構(gòu)及擊中擊不中算法,對檢測出來的海洋鋒進(jìn)行再處理,確保了海洋鋒的連續(xù)性及定位準(zhǔn)確性。文獻(xiàn)[8]改進(jìn)了海洋鋒檢測的灰度梯度法,在基于溫度梯度檢測海洋鋒的方法中引入形態(tài)學(xué)灰度重構(gòu)算法對溫度梯度計(jì)算結(jié)果進(jìn)行處理。文獻(xiàn)[9]闡述了利用遙感數(shù)據(jù)檢測海洋鋒的主要方法,理論分析了基于合成孔徑雷達(dá)(SAR)圖像的海洋鋒檢測方法的可行性。文獻(xiàn)[10]提出先將研究海域進(jìn)行合理劃分,再對不同分區(qū)采取不同的判別標(biāo)準(zhǔn)進(jìn)行鋒面識(shí)別。文獻(xiàn)[11]從實(shí)測水文資料分析、遙感資料分析和數(shù)值模擬等方面總結(jié)了中國近海海域海洋鋒的研究進(jìn)展。文獻(xiàn)[12]提出一種利用遙感海溫?cái)?shù)據(jù)探測海洋鋒的方法。
目前改進(jìn)的海洋鋒識(shí)別方法能夠改善對局部海域的海洋鋒識(shí)別精度,但是非局部海域識(shí)別標(biāo)準(zhǔn)不統(tǒng)一的問題仍然存在。事先劃分海域的方法,需要總結(jié)大量的經(jīng)驗(yàn)為海域劃分提供參考,且針對不同的海域,此工作不可重復(fù)利用,因此該方法不具有普適性。
近幾年深度學(xué)習(xí)快速發(fā)展,在圖像識(shí)別、語音識(shí)別、物體識(shí)別的等各種場景上取得了巨大的成功。卷積神經(jīng)網(wǎng)絡(luò)(CNN)在目前人工智能的發(fā)展中有著非常重要的地位。R-CNN是一種著重于解決圖像識(shí)別問題的卷積神經(jīng)網(wǎng)絡(luò),文獻(xiàn)[13]提出的改進(jìn)版本Mask R-CNN將解決的問題從圖像領(lǐng)域中的目標(biāo)檢測逐步過渡到像素級的實(shí)例分割。文獻(xiàn)[14]利用Mask R-CNN算法對RGB圖像上的目標(biāo)進(jìn)行識(shí)別與分割,并通過傳感器將二維圖像坐標(biāo)轉(zhuǎn)換成三維空間坐標(biāo),對目標(biāo)物體進(jìn)行三維建模,達(dá)到空間定位的目的。文獻(xiàn)[15]提出一種基于Mask R-CNN的地面標(biāo)識(shí)檢測方法,通過訓(xùn)練Mask RCNN神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)地面標(biāo)識(shí)特征。文獻(xiàn)[16]將深度學(xué)習(xí)應(yīng)用于多尺度SAR艦船目標(biāo)檢測,取得了很好的效果。文獻(xiàn)[17]將FC-LSTM(a Fully Connected-Long Short Term Memory)與CNN相結(jié)合提出CFCC-LSTM方法來預(yù)測海溫,成功提高了海溫預(yù)測的精度。文獻(xiàn)[18]提出一種基于CNN的渦旋檢測方法,將傳統(tǒng)的渦旋檢測問題轉(zhuǎn)化為一種二分類問題,能夠快速地從流場中識(shí)別出渦旋。文獻(xiàn)[19]將CNN應(yīng)用到海洋鋒識(shí)別過程中,可以識(shí)別出目標(biāo)海域中是否存在海洋鋒。文獻(xiàn)[20]提出海洋鋒檢測和細(xì)粒度位置的多尺度檢測框架。
基于深度學(xué)習(xí)的方法識(shí)別海洋鋒,即將人為經(jīng)驗(yàn)用在單張海溫梯度圖像的鋒區(qū)標(biāo)注上。雖然標(biāo)注圖片的工作耗費(fèi)時(shí)間,但是該工作可以重復(fù)利用并且可以很容易地應(yīng)用到其他海洋參數(shù)和研究海域中。目前在海洋鋒識(shí)別領(lǐng)域,與深度學(xué)習(xí)相結(jié)合的工作所能得到的最好的識(shí)別效果,是可以通過海域的海表溫度圖像判斷海域中是否存在海洋鋒,但該識(shí)別結(jié)果無法準(zhǔn)確描述海洋鋒的形態(tài)。
本文使用了2014年至2016年3年中共1 011份逐日海表溫度(SST)數(shù)據(jù)作為原始數(shù)據(jù)。原始數(shù)據(jù)的地理范圍為(118°E~131°E,23°N~40°N),精度為0.08°。原始數(shù)據(jù)的來源是全球海洋環(huán)流模式(Hybrid Coordinate Ocean Model)。原始數(shù)據(jù)以NetCDF格式存儲(chǔ)。借助python3.6的Pandas等數(shù)據(jù)處理包,將原始數(shù)據(jù)轉(zhuǎn)化為CSV表格數(shù)據(jù),表格數(shù)據(jù)的存儲(chǔ)內(nèi)容主要為經(jīng)緯度坐標(biāo)和對應(yīng)坐標(biāo)下的海表溫度值。
海洋鋒區(qū)中存在劇烈的海水參數(shù)躍變,而海水參數(shù)的梯度可以描述其變化的劇烈程度。因此,需要對海表溫度數(shù)據(jù)進(jìn)行梯度計(jì)算,從而將對應(yīng)經(jīng)緯坐標(biāo)下的溫度數(shù)據(jù)轉(zhuǎn)為梯度值數(shù)據(jù),以更好地表征海洋鋒。
2.2.1 梯度計(jì)算公式
梯度計(jì)算在每個(gè)數(shù)據(jù)點(diǎn)的3×3鄰域中進(jìn)行。對每一個(gè)數(shù)據(jù)點(diǎn)分別計(jì)算其垂直方向和水平方向的梯度值,再根據(jù)其水平和垂直梯度值求其總梯度值。
梯度G計(jì)算公式為:
(1)
其中:
(2)
(3)
其中,ΔX、ΔY分別是X、Y方向上的像元大小,Dx、Dy分別是水平、垂直方向的梯度大小。
2.2.2 海陸交界線處的特殊處理
梯度計(jì)算在每個(gè)數(shù)據(jù)點(diǎn)的3×3鄰域中進(jìn)行,在海陸交界部分的數(shù)據(jù)點(diǎn)的鄰域內(nèi)可能同時(shí)包含陸地與海洋,為避免梯度計(jì)算時(shí)交界處海水?dāng)?shù)據(jù)點(diǎn)受到陸地?cái)?shù)據(jù)點(diǎn)的影響,需要事先制定策略:在遍歷數(shù)據(jù)點(diǎn)過程中,首先對當(dāng)前數(shù)據(jù)點(diǎn)歸屬海水還是陸地進(jìn)行判斷,若是陸地?cái)?shù)據(jù)點(diǎn)則直接標(biāo)記,不再進(jìn)行梯度計(jì)算;若是海水?dāng)?shù)據(jù)點(diǎn)且其鄰域的3×3網(wǎng)格內(nèi)包含數(shù)據(jù)陸地點(diǎn),則將陸地?cái)?shù)據(jù)點(diǎn)替換為當(dāng)前海水?dāng)?shù)據(jù)點(diǎn),該策略的應(yīng)用效果如圖1所示。圖1(a)給出了早期渲染的梯度值圖像,由于沒有判斷陸地?cái)?shù)據(jù)點(diǎn),海洋點(diǎn)像素渲染范圍過大使其顏色侵蝕到了陸地像素點(diǎn)內(nèi)部;圖1(b)加入了陸地?cái)?shù)據(jù)點(diǎn)的判斷,但由于沒有設(shè)定鄰域內(nèi)包含陸地點(diǎn)的海水?dāng)?shù)據(jù)點(diǎn)的處理規(guī)則,導(dǎo)致陸地像素邊界有輕微外擴(kuò);圖1(c)應(yīng)用海陸交界線處的特殊處理策略,得到了最好的海陸交界線效果。
圖1 海陸交界像素細(xì)化過程Fig.1 Process of pixel refinement at the sea-land boundary
梯度數(shù)據(jù)需要被處理為圖像,才可以被進(jìn)一步標(biāo)注并用于深度學(xué)習(xí)的模型訓(xùn)練。
在Python3.6環(huán)境下,利用Matplotlib和PIL圖像處理包,將對應(yīng)經(jīng)緯度下的梯度值按實(shí)際經(jīng)緯關(guān)系映射為顏色,從而得到梯度值圖片。顏色映射規(guī)則為“jet”顏色圖,輸出圖像大小統(tǒng)一為340像素×260像素。部分梯度值網(wǎng)格數(shù)據(jù)可視化的結(jié)果圖像如圖2所示。海水部分的顏色是通過映射其對應(yīng)點(diǎn)位的梯度值而來,海水越高亮表示其對應(yīng)梯度值越高。
圖2 經(jīng)緯范圍為(118°E~131°E,23°N~40°N)的梯度數(shù)據(jù)渲染圖像Fig.2 Rendered image of gradient data in the range of latitude and longitude (118°E~131°E,23°N~40°N)
Mask R-CNN是在Faster R-CNN的基礎(chǔ)上,添加了一個(gè)與現(xiàn)有目標(biāo)檢測框并行的用于預(yù)測目標(biāo)掩碼的分支來擴(kuò)展Faster R-CNN。Mask R-CNN擁有簡潔明了的思想,對于Faster R-CNN來說,每個(gè)目標(biāo)對象有2個(gè)輸出:一個(gè)是類標(biāo)簽(class label),另一個(gè)是邊界框的抵消值(bounding-box offset)。在此基礎(chǔ)上,Mask R-CNN方法增加了第3個(gè)分支的輸出:目標(biāo)掩碼。目標(biāo)掩碼與已有的class和box輸出的不同在于它需要對目標(biāo)的空間布局有一個(gè)更精細(xì)的提取。
此外,Mask R-CNN將Faster R-CNN中的RoIPool改進(jìn)為RoIAlign以消除前者的粗糙量化,同時(shí)將提取的特征和像素精準(zhǔn)對齊。選取每個(gè)RoI分塊中的4個(gè)常規(guī)位置,使用雙線性插值計(jì)算每個(gè)位置的精確值,然后對結(jié)果進(jìn)行匯總。Mask R-CNN網(wǎng)絡(luò)模型架構(gòu)如圖3所示[13]。
圖3 Mask R-CNN網(wǎng)絡(luò)模型架構(gòu)Fig.3 Network model architecture of Mask R-CNN
本文使用基于Python的Tensorflow和Keras構(gòu)建完整的Mask R-CNN結(jié)構(gòu),其結(jié)構(gòu)示意圖如圖4所示。其中,backbone部分由Resnet101和FPN(Feature Pyramid Network)組成。
圖4 Mask R-CNN總體網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Overall network structure of Mask R-CNN
本文用于訓(xùn)練的樣本是通過2014年—2016年3年中共1 011天的海表溫度數(shù)據(jù)計(jì)算和渲染得到的梯度圖片。
由于梯度圖片上海洋鋒形態(tài)的多變性和形狀不固定性,海洋鋒圖片樣本的標(biāo)注需要標(biāo)注者始終遵循一致且合理的標(biāo)注標(biāo)準(zhǔn),存在較大困難。為簡化標(biāo)注工作,本文將訓(xùn)練樣本中研究范圍海域?yàn)?118°E~131°E,23°N~40°N)的海洋鋒預(yù)先劃分為9類,分別定義名字為front1~front9,標(biāo)注時(shí)需要分別標(biāo)注。front1~front9劃分的參考依據(jù)分別是:front1參考浙閩沿岸鋒;front2參考黑潮鋒;front3參考東海北部陸架鋒;front4參考江浙沿岸鋒;front5參考山東半島鋒;front6參考渤海沿岸鋒;front7參考朝鮮半島西鋒;front8參考朝鮮海峽鋒;front9參考朝鮮半島東部鋒。
在樣本標(biāo)注的過程中,需要以標(biāo)注參考圖(見圖5(a))為參考依據(jù),對連續(xù)的鋒區(qū)盡量劃分為一體,鋒區(qū)之間存在混合現(xiàn)象的要以參考圖為依據(jù)進(jìn)行截?cái)?沒有出現(xiàn)的鋒區(qū)則不標(biāo)注。標(biāo)注工作必須要在統(tǒng)一標(biāo)準(zhǔn)下進(jìn)行(見圖5(b))。
圖5 標(biāo)注參考圖和標(biāo)注圖示例Fig.5 Annotated reference map and annotated map examples
在訓(xùn)練過程中,主要針對epoch、學(xué)習(xí)率和學(xué)習(xí)沖量進(jìn)行了消融實(shí)驗(yàn)。最后選定訓(xùn)練時(shí)所使用的參數(shù)設(shè)置為:RPN錨點(diǎn)框尺寸為(16,32,64,128,256),RPN錨點(diǎn)比例為(0.5,1,2),RPN錨點(diǎn)步長為1,RPN的非極大值抑制閾值為0.7;此外,Epoch = 20,step_per_epoch=10,即針對本文使用的數(shù)據(jù)量batch_size為100左右,learning_rate=0.001,learning_momentum=0.9。
在觀察大量連續(xù)時(shí)間上的海溫梯度圖之后,可知中國東部逐日海溫梯度圖片可大致分為3類:第1類是海洋鋒都比較活躍且各類鋒比較獨(dú)立,表現(xiàn)為梯度圖片上各鋒區(qū)位置相對明顯,如圖6(a所示,這種情況常出現(xiàn)在每年的12月與1月前后;第2類是海洋鋒活躍且發(fā)生聚集,表現(xiàn)為梯度圖片上的部分鋒區(qū)連為一體難以準(zhǔn)確區(qū)分,如圖6(b)所示,這種情況常見于每年的2月與3月;第3類情況是海洋鋒強(qiáng)度較低,大部分鋒面消亡,表現(xiàn)為梯度圖片上高梯度區(qū)域大幅減少,如圖6(c) 所示,這種情況在每年夏季較為常見。其中第2類梯度圖片的誤檢和漏檢情況出現(xiàn)較多,且第2類圖片本身在人工標(biāo)注時(shí)就存在困難。
圖6 3類海溫梯度示意圖Fig.6 Schematic diagram of three types of sea temperature gradient
本文選取2017年、2018年共計(jì)100張日海表溫度數(shù)據(jù)的梯度圖片,使用深度學(xué)習(xí)模型進(jìn)行測試。部分測試結(jié)果展示如圖7所示,在測試結(jié)果中將檢測出的鋒面以掩膜進(jìn)行覆蓋,不同方框的掩膜表示不同的海洋鋒識(shí)別結(jié)果。
圖7 部分海洋鋒識(shí)別結(jié)果Fig.7 Recognition results of partly ocean fronts
本文分別統(tǒng)計(jì)9種鋒的識(shí)別準(zhǔn)確率,結(jié)果如表1所示。
表1 front1~front9識(shí)別準(zhǔn)確率統(tǒng)計(jì)結(jié)果Table 1 Statistical results of recognition accuracy of front1~front9
檢測結(jié)果存在部分海域漏檢、誤檢以及檢測結(jié)果邊緣不細(xì)致等問題,問題示例圖如圖8所示,圖中粗線框部位表現(xiàn)為高梯度值像素的漏檢,虛線框部位表現(xiàn)為檢測結(jié)果邊緣不細(xì)致。造成該問題的主要原因有:訓(xùn)練數(shù)據(jù)不充足,但是增加訓(xùn)練數(shù)據(jù)量需要耗費(fèi)大量時(shí)間;海洋鋒面邊緣十分不規(guī)則,即使在訓(xùn)練數(shù)據(jù)量充足的情況下,鋒面邊緣識(shí)別的情況也不可能十分完美。由于單純的深度學(xué)習(xí)方法識(shí)別海洋鋒的效果受限,因此有必要將深度學(xué)習(xí)處理出的海洋鋒識(shí)別結(jié)果進(jìn)行進(jìn)一步調(diào)整。
圖8 深度學(xué)習(xí)模型識(shí)別結(jié)果Fig.8 Recognition results of deep learning model
深度學(xué)習(xí)模型識(shí)別出的海洋鋒存在鋒面漏檢、誤檢以及邊緣不細(xì)致等問題,但是該結(jié)果中海洋鋒的主體位置和范圍是合理的,因此可以在此基礎(chǔ)上將鋒面進(jìn)行調(diào)整就能達(dá)到更理想的效果。根據(jù)傳統(tǒng)梯度閾值法的思路,局部海域可以找到一個(gè)合理閾值作為海洋鋒的劃分標(biāo)準(zhǔn)。同樣,在目前識(shí)別結(jié)果的每一條鋒面周圍也應(yīng)該存在這樣一個(gè)閾值,找到該閾值,然后根據(jù)這個(gè)閾值對當(dāng)前鋒面進(jìn)行收縮和擴(kuò)展就可以調(diào)整當(dāng)前鋒面的形態(tài)使其更加合理。通過此調(diào)整過程得出的鋒面由于在擴(kuò)展時(shí)無法越過低梯度區(qū)域,因此具有較好的獨(dú)立性和整體性,而單純地對局部海域使用梯度閾值法得到的鋒面無法保證這一點(diǎn)。為實(shí)現(xiàn)自適應(yīng)地計(jì)算閾值,需要預(yù)先對不同的閾值計(jì)算方法進(jìn)行比較,這部分內(nèi)容在4.3.2節(jié)進(jìn)行闡述。只要確定了閾值計(jì)算方法并且得到了深度學(xué)習(xí)訓(xùn)練出的識(shí)別模型,基于深度學(xué)習(xí)的自適應(yīng)梯度閾值識(shí)別方法就可以自動(dòng)地在新的梯度圖片上完成海洋鋒精細(xì)化識(shí)別的全過程。
基于深度學(xué)習(xí)的自適應(yīng)梯度閾值判別方法主要由2個(gè)部分操作構(gòu)成:第1部分是通過深度學(xué)習(xí)模型對海洋鋒進(jìn)行識(shí)別;第2部分是在第1部分的基礎(chǔ)上對海洋鋒進(jìn)行形態(tài)調(diào)整,此部分主要包含鋒面輪廓提取和鋒面閾值計(jì)算兩部分,圖9給出了鋒面輪廓提取結(jié)果的示例。
圖9 識(shí)別結(jié)果圖和原始梯度圖上的鋒面輪廓Fig.9 Front profile on recognition result map and original gradient map
完成這個(gè)過程需要的輸入是梯度圖、閾值計(jì)算方法和訓(xùn)練好的深度學(xué)習(xí)識(shí)別模型,其中閾值計(jì)算方法的確定在4.3.2節(jié)中通過實(shí)驗(yàn)得出。
算法步驟如下:
輸入梯度圖,閾值計(jì)算方法
輸出最終識(shí)別結(jié)果圖
步驟1讀入梯度圖像,使用深度學(xué)習(xí)模型進(jìn)行識(shí)別。
步驟2遍歷深度學(xué)習(xí)識(shí)別結(jié)果圖的像素。
步驟2.1根據(jù)顏色找到每一類鋒面的所有鋒點(diǎn)。
步驟2.2遍歷每個(gè)鋒點(diǎn)的3×3鄰域,若鄰域內(nèi)包含非鋒點(diǎn),則當(dāng)前鋒點(diǎn)標(biāo)記為鋒面邊緣點(diǎn)并記錄其位置。
步驟3根據(jù)深度學(xué)習(xí)識(shí)別結(jié)果圖中鋒面邊緣點(diǎn)的位置,將原梯度圖中的對應(yīng)點(diǎn)標(biāo)記為鋒點(diǎn)。
步驟4遍歷深度學(xué)習(xí)識(shí)別結(jié)果圖中的同一類鋒的所有鋒點(diǎn)的梯度值,根據(jù)計(jì)算閾值方法得到該類鋒的閾值。
步驟5遍歷梯度圖中的鋒點(diǎn)。
步驟5.1遍歷鋒點(diǎn)的3×3鄰域。
步驟5.2鄰域內(nèi)的點(diǎn)對應(yīng)的梯度值若大于該類鋒閾值,則將該點(diǎn)標(biāo)記為該類鋒鋒點(diǎn)。
步驟6將每一類鋒點(diǎn)渲染為不同顏色,輸出最終識(shí)別結(jié)果。
自適應(yīng)梯度閾值識(shí)別算法流程如圖10所示。
圖10 自適應(yīng)梯度閾值識(shí)別算法流程Fig.10 Procedure of adaptive gradient threshold recognition algorithm
4.3.1 識(shí)別精度的量化
由于海洋鋒識(shí)別工作中缺乏標(biāo)準(zhǔn)的對照結(jié)果,因此其識(shí)別的結(jié)果難以量化,導(dǎo)致各種識(shí)別方法之間的結(jié)果比較存在困難。為解決該問題,將人為標(biāo)注的梯度圖作為基準(zhǔn)圖,同時(shí),將算法處理結(jié)果圖進(jìn)行背景虛化以突出鋒面,然后把多余的輪廓線去除得到標(biāo)準(zhǔn)結(jié)果圖,最后以基準(zhǔn)圖和標(biāo)準(zhǔn)結(jié)果圖之間的交并比(IOU)值作為該識(shí)別方的量化精度,量化過程如圖11所示。本文將這種精度量化方式應(yīng)用到一些識(shí)別結(jié)果上,把精度量化的數(shù)字與鋒面識(shí)別效果的人為評價(jià)相比較,發(fā)現(xiàn)兩者符合度較高,可以證明這種精度的量化方式是合理的。
圖11 海洋鋒識(shí)別精度量化過程Fig.11 Process of quantification of ocean front recognition accuracy
4.3.2 閾值計(jì)算方法的比較
首先以每一類鋒包含的所有鋒點(diǎn)的梯度值的均值作為閾值計(jì)算方法進(jìn)行測試,獲得的最終識(shí)別結(jié)果如圖12(a)所示,其量化精度為92%左右。但該結(jié)果圖中鋒面過于狹窄,對高量區(qū)域的覆蓋效果不夠好,說明該閾值過大。因此,本文以均值的1/20為步長減少該閾值,依次取每一類鋒包含的所有鋒點(diǎn)的梯度值均值的9/10(18/20)、17/20、4/5(16/20)、3/4(15/20)、7/10(14/20)作為鋒的閾值計(jì)算比例,得到的識(shí)別結(jié)果如圖12(b)~圖12(f)所示,其量化精度變化曲線如圖13所示,在實(shí)驗(yàn)中使用3/4閾值時(shí)量化精度最高,可達(dá)到96.07%左右。
圖12 不同標(biāo)準(zhǔn)下的閾值鋒面調(diào)整結(jié)果Fig.12 Threshold front adjustment results under different standards
圖13 不同閾值計(jì)算方式下識(shí)別結(jié)果量化精度變化曲線Fig.13 Variation curve of quantification accuracy of recognition results under different threshold calculation methods
在以3/4均值作為閾值標(biāo)準(zhǔn)時(shí)(圖12(e)),在視覺效果上七號鋒會(huì)與四號、五號鋒發(fā)生覆蓋,說明在該閾值下,部分鋒區(qū)已經(jīng)難以區(qū)分彼此,該閾值過小。結(jié)合圖13中量化精度變化的規(guī)律,最合適的閾值應(yīng)該在均值的3/4左右。
這種自動(dòng)進(jìn)行的自適應(yīng)閾值計(jì)算方式,沒有與當(dāng)前使用的海洋鋒參數(shù)綁定(本文使用的海洋參數(shù)是海表溫度,通過其他海洋參數(shù)如鹽度和浮游生物聚集度等同樣可以計(jì)算梯度),因此可以不加改動(dòng)直接應(yīng)用于使用其他海洋參數(shù)的海洋鋒識(shí)別工作。本例中閾值計(jì)算方法的比較結(jié)果可能不具有普適性(即梯度值4/5均值可能并不總是最好的閾值標(biāo)準(zhǔn)),但自適應(yīng)梯度閾值識(shí)別方法可以在場景轉(zhuǎn)換時(shí),依據(jù)同樣的過程,在深度學(xué)習(xí)模型得出的初步識(shí)別結(jié)果的基礎(chǔ)上,根據(jù)不同閾值計(jì)算標(biāo)準(zhǔn)下鋒面調(diào)整結(jié)果的量化精度,自動(dòng)選取量化精度達(dá)到最大值時(shí)的閾值計(jì)算標(biāo)準(zhǔn),以適應(yīng)新的海域情況。
4.3.3 與深度學(xué)習(xí)模型直接識(shí)別結(jié)果的對比
調(diào)整后的鋒面圖與單純用Mask R-CNN模型識(shí)別的鋒面圖比較如圖14所示。圖14(a)是中粗線框部分有明顯的漏檢現(xiàn)象,虛線框部分的鋒面形態(tài)不理想,在圖14(b)中,調(diào)整后的鋒面對漏檢誤檢現(xiàn)象有明顯的改善,鋒面邊緣與梯度高亮區(qū)域的貼合效果也更好,這證明該調(diào)整策略是可行的。由于本文方法中的鋒面調(diào)整基于深度學(xué)習(xí)識(shí)別出的鋒面的輪廓,在合理的閾值下,不連通的高亮梯度區(qū)域不會(huì)被連接為同一鋒面,這保證了識(shí)別出的鋒面的獨(dú)立性,圖14(b)框中的高亮梯度區(qū)域未被劃分為七號或者八號鋒,說明該高亮梯度區(qū)域不與周圍其他高亮梯度區(qū)域相連通,應(yīng)該考慮在訓(xùn)練識(shí)別模型時(shí)作為獨(dú)立的鋒面進(jìn)行標(biāo)注。
圖14 調(diào)整后鋒面圖與單純用Mask R-CNN模型識(shí)別的鋒面圖結(jié)果比較Fig.14 Comparison of the results of adjusted front map and front map of simply using the Mask R-CNN model to identify
此外,將批量的單獨(dú)的深度學(xué)習(xí)結(jié)果圖通過4.3.1節(jié)中量化精度方式測量其精度,得出的精度值只有78%左右,與調(diào)整后量化精度96%相比相差較遠(yuǎn),這種精度差距也主要是由于深度學(xué)習(xí)直接輸出的識(shí)別結(jié)果中較多的漏檢和誤檢現(xiàn)象造成的。
由于深度學(xué)習(xí)的識(shí)別結(jié)果包含鋒區(qū)的初始位置和形態(tài),因此不必劃分海區(qū),后續(xù)的自適應(yīng)閾值計(jì)算和鋒面形態(tài)調(diào)整過程可以自動(dòng)進(jìn)行。而先劃分海區(qū),在分海區(qū)內(nèi)使用獨(dú)立閾值進(jìn)行海洋鋒識(shí)別的方法,難點(diǎn)在于海區(qū)劃分和每個(gè)海區(qū)內(nèi)的閾值確定,且這種方法一旦應(yīng)用在新的海域,所有的工作就要重新進(jìn)行。
本文提出的海洋鋒識(shí)別方法,難點(diǎn)主要集中在圖片標(biāo)注的過程,但是標(biāo)注工作的可重復(fù)利用性高。此方法在遷移使用于其他不同海域時(shí),只需要訓(xùn)練新的深度學(xué)習(xí)模型,其他部分不必做任何修改。此外,如果借助已訓(xùn)練好的模型進(jìn)行遷移學(xué)習(xí),可以大幅減少所需要的新的標(biāo)注圖片數(shù)量。因此,在將本文方法應(yīng)用在其他海域的海洋鋒識(shí)別時(shí),需要重做的工作只是標(biāo)注新的圖片幫助深度學(xué)習(xí)的模型進(jìn)行訓(xùn)練。
4.3.4 與傳統(tǒng)單一閾值方法識(shí)別結(jié)果的對比
基于深度學(xué)習(xí)的自適應(yīng)梯度閾值判別方法,可以針對front1~front9分別得到對應(yīng)的閾值,自動(dòng)地將對應(yīng)閾值應(yīng)用于不同的局部海域。如果將該方法中得出的front1~front9的8個(gè)不同閾值(圖中不含三號鋒)以傳統(tǒng)梯度閾值法分別作用于全圖,效果如圖15所示。較低的閾值會(huì)造成較近的鋒區(qū)之間相互交叉見(圖15(b)、圖15 (c)、圖15 (e)中虛線框區(qū)域),較高的閾值會(huì)造成鋒區(qū)破碎化嚴(yán)重(見圖15(a)、圖15 (d)、圖15 (f)、圖15 (g)、圖15 (h)中粗線框區(qū)域)。從該結(jié)果可以看出單一閾值難以對全局進(jìn)行統(tǒng)一劃分。
圖15 8個(gè)不同閾值以傳統(tǒng)梯度閾值法分別作用于全圖的結(jié)果Fig.15 Results of eight different threshold acting on whole figure by traditional gradient threshold method
此外,傳統(tǒng)閾值法的量化精度變化曲線如圖16所示。最高精度在94%左右,但是精度曲線變化沒有明顯規(guī)律,無法找到最合適的閾值。
圖16 傳統(tǒng)閾值法的精度變化曲線Fig.16 Accuracy change curve of traditional threshold method
本文提出基于深度學(xué)習(xí)的海洋鋒自適應(yīng)梯度閾值識(shí)別方法,該方法將Mask R-CNN算法應(yīng)用到海洋鋒識(shí)別研究中,以此獲得像素級的海洋鋒識(shí)別結(jié)果,并利用自適應(yīng)的梯度閾值對識(shí)別結(jié)果進(jìn)行自動(dòng)的二次精細(xì)化調(diào)整。實(shí)驗(yàn)結(jié)果表明,該方法可以在一個(gè)自動(dòng)化的過程下實(shí)現(xiàn)精細(xì)的海洋鋒識(shí)別,識(shí)別出的鋒面具有較好的獨(dú)立性和完整性。此外,該自動(dòng)化過程可以應(yīng)用于任意海洋參數(shù)和任意海域下的海洋鋒識(shí)別。本文方法深度學(xué)習(xí)部分的數(shù)據(jù)集不夠完整,導(dǎo)致Mask R-CNN模型識(shí)別結(jié)果精度不高,下一步將通過調(diào)整深度學(xué)習(xí)的模型結(jié)構(gòu)來提升其性能。