張培宣,陳曉東, ,孔帥,季少鵬,季順迎,
(1.大連理工大學 工業裝備結構分析國家重點實驗室,遼寧 大連 116023;2.大連理工大學 白俄羅斯國立大學聯合學院,遼寧 大連 116023;3.中國船舶科學研究中心,江蘇 無錫 214082)
隨著全球氣候變暖,北極海冰快速消融,使得北極航道的開發逐漸引起人們關注[1-2]。冰載荷是極地冰區航行船舶的主要設計參數,而海冰厚度是冰載荷確定過程中的主要參數[3-5]。其次,海冰厚度還是海冰災害風險評估的主要指標之一。渤海遼東灣是我國冰情最嚴重的地區之一,每年對其冰情進行評估時,都需要大量使用到海冰厚度以及密集度等參數[6]。另外,海冰厚度也是冰區海洋結構設計的關鍵參數。在計算海洋工程設計的控制載荷—海冰作用力時需要使用到海冰厚度等參數信息[7]。由此可見,海冰厚度參數大量應用于極地船舶冰載荷分析、海冰災害評估以及海工結構設計等重要領域[8]。
我國系統性的海冰信息監測始于20 世紀60 年代初期,相繼發展了沿岸站臺測量、沿岸冰調查、破冰船海冰調查、衛星遙感、航空遙感和平臺定點觀測等觀測手段[9-11]。現有條件下極地船舶獲取海冰信息的主要方式為衛星遙感[12-13]。高分辨率的衛星圖像和數據產品可以提供船只航行路線上大范圍的海冰信息,從而幫助其選擇最佳航道[14-15]。但衛星遙感監測的采樣頻率較低,一般存在1 d 以上預報延遲,因此不適用于船舶的短期航線規劃[16-17]。據此,本文提出利用船側視頻圖像數據,通過機器視覺相關算法完成海冰厚度參數的實時提取。現行機器視覺技術系統主要由光學照明系統、成像系統和視覺信息處理系統等部分組成,能夠完成包括特征提取、模式識別、語義理解等功能并大范圍應用于產品瑕疵檢測、視頻監控分析以及自動和輔助駕駛等領域[18]。
“雪龍”號在極地航行過程中需要實時監測航行區域的冰面類型以及海冰厚度等數據[19-20]。現有圖像分析軟件無法做到對于海冰參數準確、有效地識別,所以只能采用人工識別的方法[21-23]。但人工識別不僅耗費人力,而且在一些數據的得出上耗時過長,因此,開發新型圖像分析軟件來完成海冰參數的實時監測,對于極地船舶的航行具有極高的重要性[24-26]。
Hough 變換是一種從圖像空間到參數空間的映射關系,其將圖像空間中復雜的邊緣特征映射為參數空間中的聚類檢測問題,使得Hough 變換方法成為提取邊緣線條特征的強有力工具[27]。基于上述優點和特性,Hough 變換算法被廣泛應用于運動目標的識別與軌跡監測等領域[28]。
根據上述介紹以及海冰翻轉時截面邊緣線的幾何特征,本文提出基于Hough 變換的機器視覺方法,以此實現海冰厚度參數的自動識別,并利用“雪龍”號北極實地走航數據對上述方法進行適用性與可靠性的分析。
采用船側視頻圖像提取海冰厚度參數時,海冰翻轉時的截面幾何形狀是測量冰厚的主要依據。如圖1所示,因為海冰斷裂后截面較為平整,所以海冰翻轉時截面兩側邊緣線近似平行。

圖1 “雪龍”號科考船北極航行中的冰厚測量示例[29]Fig.1 Example of ice thickness measurement during the Arctic voyage of Xuelong scientific research ship[29]
參考現行人工測量方法中以海冰兩側邊緣平行線之間距離作為海冰厚度的基本思想,設計開發海冰厚度的自動識別程序。程序總體流程分為3 部分:圖像邊緣線檢測、線段檢測與平行線檢測。在圖像邊緣線檢測中根據灰度梯度變化情況,利用sobel 算子完成邊緣線檢測;線段檢測中利用Hough 變換,識別邊緣線中的線段,并輸出線段的角度和極徑參數;在平行線檢測中,根據海冰翻轉時的幾何特征制定線段組夾角、距離以及間距3 種判定條件。最后,當有邊緣線段組滿足平行線判斷條件時輸出海冰厚度參數[30-31]。
線段識別是檢測圖像中平行線的基礎。但一張圖像中所包含的線段幾乎是無限的,所以無法在圖像中直接判斷,因此引入Hough 變換[32]。Hough 變換的基礎是建立極坐標空間,用(ρ,θ)表示空間各點,并根據極坐標變換將圖像中所有直線用空間各點(ρ,θ)表示。根據直線在極坐標系與直角坐標系間轉換關系得式(1),公式為

式中,ρ為原點到該直線的垂直距離;x、y為圖像中任意點的坐標;θ為垂線與x軸的夾角。
Hough 變換后得出極坐標空間與圖像空間滿足下述關系:極坐標空間中任意點(ρ,θ)都代表圖像空間中的一條直線,并將此直線記作l(ρ,θ);圖像空間中任意點(x,y)對應于極坐標空間中一條三角函數線。
由此可知,當圖像中有一定數量的邊緣點(即經過邊緣檢測后被檢測出來的邊緣像素點)位于l(ρ,θ)上時,極坐標空間中會有相同數量的三角函數線經過(ρ,θ)點,如圖2a 所示。利用上述特性可以實現邊緣線中的線段識別。實現方法為建立累計數組,并定義l(ρ,θ)中包含的邊緣點數量為累加量N(ρ,θ)。因為真實線段中包含超過一定數量的邊緣點,所以需要設立相應的閾值Nw進行判斷。若N(ρ,θ)大于設定閾值Nw,則認為圖像空間中的l(ρ,θ)真實存在[33-34]。將上述變換過程應用于真實圖像,并在極坐標空間中框選出所有累加量滿足閾值Nw的(ρ,θ)點得到圖2b。圖2b 中框選的5 個(ρ,θ)點代表圖像中真實存在的5 條邊緣線段。

圖2 邊緣線段識別結果Fig.2 Recognition result of edge segment
應用Hough 變換方法處理“雪龍”號走航實測圖像的過程中發現,當閾值Nw取為累加量中最大值Nmax的1/20 時,程序能較好地識別出圖像中的線段并輸出近似線段參數。程序實際應用后識別得到圖3b 所示的邊緣線段。

圖3 邊緣線段識別結果Fig.3 Recognition result of edge segment
雖然通過Hough 變換能夠識別海冰翻轉過程中的邊緣線段,但計算機仍無法識別出屬于同一塊海冰的線段組。為此需要根據線段參數完成線段組的平行判斷。在完成海冰兩側邊緣平行線的識別過程中,必須綜合考慮海冰幾何特征與邊緣線段參數[35-36]。本文采用夾角、長度以及間距3 類不同判據完成對平行線的判別,并據此提取海冰厚度參數。
2.3.1 線段組的夾角(Δθ)條件判斷
海冰截面翻轉后上下表面投影線段角度較為接近,因此,當兩條線段的夾角(Δθ)較大時,認為這兩條線段不屬于同一塊海冰的翻轉截面。在程序實現過程中,需要利用Hough 變換識別得到的線段角度參數來計算線段組夾角(Δθ)。如圖4a 所示,夾角較大的線段組明顯不屬于同一塊海冰的截面邊緣線。
在判斷過程中需設定角度閾值 Δθc,當線段組滿足Δθ <Δθc時,認為兩線段滿足角度近似條件。
2.3.2 線段組的長度條件判斷RL
當圖像中出現兩塊及以上海冰同時處于翻轉過程中且多塊海冰位置近似平行時,識別結果會發生誤判。如圖4b 所示,圖中兩塊海冰的4 條邊緣線段角度近似但L1、L3不屬于同一塊海冰,而代表同一塊海冰的兩線段組L1、L2和L3、L4各自滿足長度近似。據此設立線段組長度比值判據RL。程序執行過程中設定判斷閾值Rc,當RL<Rc時,認為兩條平行線滿足長度近似條件。

圖4 邊緣線段組錯誤判斷示例Fig.4 Error judgment example of edge segment group
2.3.3 線段組的間距 ΔD條件判斷
在識別過程中可能有滿足上述夾角和長度判斷條件但線段組仍無法代表海冰邊緣線的情況,如圖4c所示。為此引入間距判斷條件。
如圖5 所示,假設直角坐標系下存在兩條直線l1和l2,在l1和l2上各取線段組AB、EF 和CD、GH。此時線段組AB、CD 以及EF、GH 均滿足夾角和長度判斷條件。但如圖6 所示,圖6c 中所識別線段組為有效識別的冰塊翻轉截面,而圖6f 中所識別線段組則為誤識別結果。分析上述假設發現,判斷條件Δθ ≤Δθc只代表直線l1和l2的整體性質,因此存在線段組滿足夾角判斷條件但仍相交的情況。所以無法用夾角和長度判據識別出所有線段組相交情況。為此引入間距判據,其中,間距 ΔD定義為兩線段在極坐標下線間距離與在直角坐標下線間距離的差值。當 ΔD小于閾值ΔDc時,線段組滿足近似平行[37]。

圖5 兩直線相交原理分析Fig.5 Principle analysis of intersection of two straight lines
利用“雪龍”號第八次北極科考走航視頻數據,對程序進行適用性分析,在圖6 和圖7 中列舉出多種實地航行情況下海冰厚度檢測圖。分析有效判斷中多張原始圖像可知,當海冰圖像滿足兩側邊緣輪廓清晰且無其他線段干擾時程序適用性良好。對有效識別中冰厚識別結果分析可知,自動識別程序適用于任意長度的海冰冰塊且識別線段覆蓋海冰冰塊兩側邊緣線的主要部分。

圖6 基于Hough 變換的海冰厚度識別Fig.6 Identifications of sea ice thickness based on Hough transformation

圖7 基于Hough 變換的海冰厚度識別Fig.7 Identifications of sea ice thickness based on Hough transformation
對于失效判斷中原始圖像以及Hough 變換結果分析可知,當海冰邊緣線與周圍環境對比度較低時,Hough 變換無法有效檢測圖像中冰塊的邊緣線段。另外,當冰塊本身邊緣線與其他環境線段混雜時,程序會誤判海冰冰塊邊緣線,導致最終檢測結果失效。
為實現海冰厚度參數的自動識別,在程序執行過程中引入線段組夾角閾值、長度閾值以及間距閾值。而上述判斷閾值變化直接影響海冰圖像的識別率以及誤判率,其中,識別率為滿足程序中各類判斷閾值的圖片總數與輸入圖片總數之比,誤判率為滿足程序中各類判斷閾值但不符合實際海冰邊緣線情況的圖片總數與輸入圖片總數之比。因此,需要利用實地走航數據分析3 類不同判斷閾值對于圖片識別率及誤判率的影響,選取最優閾值使得識別結果具有較高的識別率與準確率。
在原始數據的選擇過程中,本文從近1 周實際航行視頻中等時間間隔的截取了2 000 余張海冰圖像進行分析,并人工分辨出1 078 張含海冰翻轉截面的可識別圖像,另外按照海冰所處位置、圖片中所含海冰翻轉截面個數以及邊緣輪廓線是否清晰等不同情況,將所有可識別圖像人工分為109 種不同類別。根據上述可識別原始圖像,本文對于夾角、長度以及間距3 類判斷閾值開展了數據試驗。
3.2.1 線段組夾角判斷閾值
在其余判斷閾值固定不變的情況下,將夾角判斷閾值 Δθc選取為0°~4°來開展數據試驗。試驗結果如圖8 所示。從試驗結果可知,圖像識別率與誤判率均隨夾角閾值的增大而升高,說明當閾值放寬后,圖像識別率逐步提升,但相應閾值寬松會導致程序誤判率升高。因此,選取最佳判斷閾值時需要綜合考慮。

圖8 夾角閾值試驗曲線Fig.8 Experimental curve of angle threshold
分析可知,識別率和誤判率隨 Δθc變 化時的增長速率具有較大差異。據此提出最優閾值的選取標準:小于誤判率曲線的上升拐點且識別率曲線基本達到峰值。由圖8 可知,當 Δθc取值為2°時,滿足上述兩類條件。
3.2.2 線段組長度閾值
實際情況下海冰兩側邊緣線段應滿足長度近似的原則,據此引入長度判斷閾值Rc。當Rc取值為1~2.2 時進行數據試驗。試驗結果如圖9 所示,由圖9可知,當Rc接近1 時,圖片識別率小于60%,而當設定Rc為2 時識別率大于95%。所以在實際情況下大部分圖像的海冰兩側邊緣線段長度比值位于區間1~2 內。從圖9 中的識別率變化曲線能夠看出,當Rc為1.55 時識別結果滿足識別率高于90%、誤判率小于1%且誤判率曲線仍未發生上升突變。由此可知,長度判斷閾值Rc的最優取值為1.55。

圖9 長度閾值試驗曲線Fig.9 Experimental curve of length threshold
3.2.3 線段組間距閾值
為解決兩邊緣線段間距過近問題,引入間距閾值ΔDc。選取ΔDc為2~12 pt 進行數據試驗。試驗結果如圖10 所示,當ΔDc小于3 pt 時,圖像識別率小于75%,而ΔDc大于6 pt 時,圖像識別率均位于90%以上。產生上述情況是因為海冰兩側邊緣線段間不滿足角度的精確相等所以直角坐標下的線間距離與極坐標下的線間距離也不滿足精確相等。從圖10 中能夠看出,當ΔDc取值為9 pt 時,識別結果滿足識別率基本達到峰值、誤判率小于1%且誤判率曲線未發生上升突變的要求。

圖10 間距閾值試驗曲線Fig.10 Experimental curve of distance threshold
根據試驗統計采用基于Hough 變換的自動識別方法時,單張海冰圖像識別時間小于0.5 s,而人工測量方法因需對邊緣線段進行人工標記與測算所需時長約為30 s。通過對比處理時長可知,本文中方法降低了海冰厚度測量過程中的人工參與度,縮短了海冰厚度測量耗時并提升了識別效率。
本文中所提出的識別方法與現行人工測量方法在識別準確率上仍然存在差距。因為無法徹底消除誤判情況,所以本方法存在個別輸出結果不可信的情況。
作為海冰主要參數之一,海冰厚度在極地船舶冰載荷分析、海冰災害評估以及海工結構設計等方面具有關鍵作用。但因為極地特殊地理位置和惡劣環境條件的限制,現場數據獲取較為困難。據此,本文采用基于Hough 變換的機器視覺方法,通過對海冰翻轉過程中的表面輪廓線中平行線進行識別,完成海冰圖像中海冰厚度參數提取。
另外,本文利用“雪龍”號極地科考船實測數據進行試驗,整理試驗結果可得結論:(1)自動識別程序對于任意長度的海冰冰塊均適用且所識別邊緣線段能夠覆蓋海冰冰塊兩側邊緣線的主要部分;(2)夾角、長度以及間距3 類閾值判斷參數對于識別率以及誤判率的影響均滿足統一規律,綜合考慮識別率和準確率均可以得出最佳判斷閾值;(3)在誤判率小于1%的情況下,程序對于海冰圖像的識別率可以達到90%以上;(4)程序運行時間支持對海冰厚度參數的實時監測。上述試驗結論證明,程序滿足自動化識別及實時檢測的設計要求,并且具有較好的適用性、穩定性及準確性。