賈森君,王琴
(1.舟山市知創科技開發有限公司,浙江舟山316000;2.浙江海洋大學,浙江舟山 316022)
船舶在復線橋區通航時,不僅船舶受到橋墩的阻水作用,引起墩側水流流速梯度增大,致使橫向通航面積減少,而且駕駛員的視線受到橋梁阻擋,因而誘發的海損事故,這種現象稱為巷道效應[1]。巷道效應的發生不僅給船舶駕駛員的心理造成極大的壓力,也是船舶在狹航道河段通航的主要事故因素[2]。因此,降低橋區河段通航安全風險具有重大的現實意義。
目前,在橋區河段通行主要是通過增加引航措施來降低通航風險,如劉明俊等[3]提出增加引航變量,擬定通航辦法,引導駕駛員通航操作,但是該方法受到船舶駕駛員個人主觀因素影響。此外,目前將機器視覺技術應用于船舶航行領域已成為一個新興的研究方向,柳晨光等[4]提出基于單目視覺的水面艦艇的定位方法;王益義[5]提出基于計算機視覺的船舶身份識別;鄒木春等[6]提出基于雙目視覺的船舶升沉檢測方法都具有良好的實驗結果。但橋區水流環境復雜,船舶舵機控制困難,圖像處理時需排除海陸空三相干擾因素,因此針對船舶橋區通航方面的相關研究較少。本文針對上述問題,提出以采用Canndy算子提取均衡化灰度圖像輪廓,再使用改進后的Hough Transform算法檢測橋墩位置,從而為模糊控制提供橋墩位置參數和航向偏差參數。而模糊控制單元可以對圖像處理后的數據進行模糊推理,減少復雜水流環境對船舶安全航行的影響。本系統的研究不但可為船舶駕駛人員提供相對合理的船舶橋區通航建議,而且是無人駕駛船舶在復雜地形和水流環境下導航避障的可靠方法。
船舶在橋區航行主要采集的是橋墩位置信息,因此CCD點陣采集圖像水平方向信息至關重要。為提高船舶航向偏差精度與減小興波干擾,CCD點陣理論上應安裝于船舶上層建筑的中軸線位置。避障系統架構如圖1所示,主要包括特征對象(橋梁)、CCD點陣、圖像處理單元、模糊控制單元與船舶舵機。該系統中,橋梁的圖像信息有CCD點陣采集后輸入至駕駛室的計算機上,圖片處理單元以灰度化、均衡化、高斯降噪、Canndy算子邊緣檢測、霍夫變換以及垂直投影的算法實現橋墩位置標定。計算機再將標定的位置與中心線對比,計算出航向偏差值輸入給模糊控制單元。模糊控制單元將偏差值與設定值對比后進行微分處理,經由模糊化、模糊推理、反模糊操作后實現對船舶舵機的自動操控。

圖1 船舶避障系統架構圖
CCD點陣采集的圖像為RGB真彩色圖像,楊紅梅等[7]根據黎曼空間色差原理提出HVS色彩掩蔽特性,指出人眼視細胞對綠色最敏感,紅色次之,對藍色敏感性最低。因此,為獲得識別度較大的橋梁灰度圖像,將RGB像素點帶入以下數學模型:

式中,R(x,y,),G(x,y),B(x,y)是指在RGB圖像中坐標為(x,y)像素的紅綠藍3個通道的分量。灰度化圖像如圖2所示。

圖2 灰度化圖像
光照環境的變化會對機器處理視覺圖像造成較大干擾,因而在人工環境下LED燈源的布置顯得尤為重要。但在自然環境下,無法針對橋梁進行燈源布置,攝取的橋梁平面圖像質量與天氣因素呈現相關性。針對上述問題,本文先通過對攝取的圖像進行原始灰度直方圖繪制,由于原始圖像存在較大的灰度集中現象,因而灰度直方圖主要集中于某幾塊區域,如圖3所示。將原始灰度直方圖數據進行累計概率分布,實現像素點與灰度的重新映射,其映射方程為

式中:n為像素個數總和;nk為當前像素個數;k為灰度級個數。將以上灰度化的像素點帶入映射公式,拉伸原始灰度直方圖,實現灰度直方圖均衡化。

圖3 原始灰度直方圖

圖4 均衡化灰度直方圖
本文所使用的Canndy算子,主要是以亮度梯度為核心的多級邊緣檢測算子。從船舶駕駛人員角度出發,橋墩與天空背景具有明顯的亮度梯度。并且經過均衡化處理明顯提升了暗部的色差,因而對提升橋墩墩側與墩內的亮度梯度具有明顯的作用,因而更容易提取。Canndy算子帶有平滑濾波器的降噪功能,為降低模板卷積運算對圖像清晰度的影響,采用小模板Guass濾波器對圖像單像素噪點進行處理,將均衡化灰度像素帶入Gauss公式:

將經過Canndy算子運算的圖像先進行膨脹運算,再進行腐蝕運算。本次運算的卷積為(1,1,1,1,1)T數組。其目的在于擬合Canndy輪廓提取橋墩邊緣而造成的斷點現象,同時進一步增大傾角較大的橋墩輪廓傾角,有利于減少Hough Transform的運算范圍,提高運算速度。
為避免天空云團及海上其他船只通航對圖片采集的影響,采用Hough Transform算法來對圖片信息進行處理采集,將平面圖像像素問題轉化到統計學上累加極值問題。將像素點轉化的參數方程為

針對海峽橋墩受力特征及通航要求,因而支架大多具有較大傾角,并且之前閉運算已進一步增大輪廓傾角。對在角度在-5°~5°之間、步長為0.1°的所有像素點直線束進行累加求和,因而可排除橋面與橋上方通行車輛影響,得到5條直線峰值。

圖5 橋墩提取圖
采用垂直投影法計算圖像B分量在橫坐標的投影高度,據此對圖像進行分割,得到距垂直中心線最鄰近的兩條藍色粗直線作為通航橋墩。對分割后的圖像計算B分量垂直投影峰值做為橋墩墩內側坐標信息,以此為基礎計算橋墩間距與航向偏差。
船舶進入橋區河段后,圖像處理單元不斷將航向實際值輸出,模糊控制單元結合距離傳感器對實際輸出值進行采樣,將實際值與中心標定值進行負反饋運算,得到航向偏差。將航向偏差微分化處理得到偏差變化率,以進行超前控制。同時將微分值和精確值輸入模糊控制單元的隸屬函數。隸屬函數是模糊化處理的關鍵步驟,考慮到橋區航行對舵機靈敏度要求高,因此選擇三角隸屬函數進行模糊化處理。其中,隸屬函數的交疊系數數學模型:

式中:l為兩交疊隸屬函數定義域;d為交疊范圍在x區域的投影長度。陳鑫等[8]提出在足球機器人算法控制中交疊系數應控制在0.3~0.6之間,以保證系統模糊控制穩定性能與決策速度。因此,本文在仿真實驗中,選取0.5的交疊系數以保證舵機在橋區水流環境下的控制精度。
模糊推理機制是整個模糊控制單元的核心環節,模糊控制規則的好壞直接決定了無人駕駛船舶能否在橋區進行安全通航。本文參考胡旭躍等[9]的橋區通航問題綜述以及相關航海輪機駕駛人員走訪調查,得到針對巷道效應問題的模糊控制規則,其舵機角度模糊控制規則如表1所示。

表1 舵機角度模糊控制表
舵機模糊控制表通過Matlab Fuzzy工具箱中的Ifthen語言完成。當船舶航向偏差值較大且水流環境不利于航向矯正時,舵機會盡力增大反向輸出,以確保船舶能夠安全通過橋區。當船舶航行偏差值較大但水流環境有利于航向矯正時,舵機會減少反向輸出,以防止阻水作用導致動水方向改變,從而引起超調現象。當船舶航向偏差較小或水流環境變化較為平緩時,船舶通航主要以穩定性為主,以增強模糊控制單元的魯棒性能。模糊控制單元的流程如圖6所示。

圖6 模糊控制流程圖
本文通過高速攝影機在不同河段采集不同橋梁的RGB真彩色圖像,選取其中具有代表性的3組圖片,進行圖像處理實驗。本次進行圖像處理軟件選用MathWorks公司生產的商用數學軟件Matlab R2015b,實驗結果如表2所示。

表2 像處理實驗結果
本文將上述圖像處理結果保存至Matlab工作區域,由于樣本數量過少,因而未采用采樣方式進行數據挑選。為便于觀察模糊控制效果,Simulink以3 s一次的頻率讀取航向偏差值,采用Fuzzzy Logic Controller模塊導入上述模糊控制單元,其生成波形如圖8所示。在0~8.6 s內,由于船舶航行工況持續變化,模糊控制單元以盡力糾正航向偏差為主,因而模糊控制單元快速響應,造成連續超調,且出現較高峰值的現象。在8.6 s后,輸入的航向偏差變化較小,模糊控制單元延長反應時間,降低超調量以保證舵機控制的穩定性。

圖7 控制結果波形圖
本文所提出的船舶橋區通航避障方法結合了目前人工智能方面的研究成果,并且通過仿真實驗驗證該方法的可行性,為實現船舶通航的自動化與智能化提出了一種新的思路。雖然本文通過優化圖像處理算法在一定程度上實現陰雨天氣的橋區避障,但該方法仍存在夜間通航無法使用的不足之處,因此在圖像采集方面仍需在今后的研究中繼續優化。