朱學海 羅隕飛
(力鴻智信(北京)科技有限公司 北京 100102)
水尺計重[1]是一種適用于大宗散裝固體、價值較低、一般衡器計重困難等貨物的計重方法,通過對船舶六面吃水進行觀測,求得船舶的排水量,減去船舶自重和其他物件重量,計算裝卸貨物的重量。計量結(jié)果的準確性會受計重過程中因素的影響,目前,隨著國際貿(mào)易的發(fā)展,散裝貨船日益大型化,貨物價值不斷提高,貨物買賣方對水尺計重的計量準確性要求越來越高[2]。傳統(tǒng)的人工讀數(shù)方法是由專業(yè)的水尺計重工作人員攀爬舷梯或租用小型船舶等水上交通工具,在盡可能靠近吃水刻度線的位置通過人眼觀測直接進行讀數(shù),或采用手持錄像設備拍攝水尺標記位置的錄像后統(tǒng)一進行讀數(shù)。該方法需要花費較長的時間和較大的成本,水尺鑒定人員的人身安全不易保證,而且讀數(shù)的最終確定容易受到主觀因素的干擾,缺乏客觀性。
近些年,隨著人工智能科學技術(shù)的迅速發(fā)展,一系列新型的水尺測量設備被研究開發(fā)出來,這些設備以激光、雷達和圖像識別等為檢測分析原理進行測量[3-6],圖像識別處理技術(shù)日益發(fā)展與完善[7-9],并陸續(xù)應用到船舶水尺測量的檢測研究工作[10-13]。利用該技術(shù)對船舶水尺圖像進行分析和檢測,可準確完整地獲得并記錄船舶吃水數(shù)據(jù),不僅可以避免目測引起的主觀意向問題,且便于后續(xù)數(shù)據(jù)查詢,避免商業(yè)貿(mào)易糾紛。圖像處理技術(shù)的應用可以使人與計算機優(yōu)勢互補,提高測量數(shù)據(jù)的準確性和測量效率[14]。
LeonZX-IDSS智能水尺測定系統(tǒng)包括船舶吃水影像采集系統(tǒng)(硬件系統(tǒng))和數(shù)據(jù)圖像處理分析系統(tǒng)(軟件系統(tǒng))2部分,2系統(tǒng)彼此相連,詳見圖1。
圖1 測定系統(tǒng)組成
影像采集系統(tǒng)包含穩(wěn)定采集支架(手持伸縮桿或固定支架)、攝像裝置、可操作云臺和照明補光設備4部分;處理分析系統(tǒng)識別分析程序主要分為圖片抽幀、水尺字符和吃水線檢測、水尺讀數(shù)計算和結(jié)果數(shù)據(jù)界面顯示4部分。影像采集系統(tǒng)和處理分析系統(tǒng)由手持終端通過無線/有線網(wǎng)絡連接,水尺鑒定操作人員可以手持終端單人操作,進行水尺影像的拍攝和讀數(shù)。
水尺測定系統(tǒng)能夠獲得拍攝質(zhì)量優(yōu)良的水尺影像[15],用影像采集系統(tǒng)采集船舶吃水影像,操作簡單便捷,搭載穩(wěn)定性好,適用性廣。數(shù)據(jù)圖像處理分析系統(tǒng)對水尺影像采用抽幀轉(zhuǎn)換技術(shù),制成符合識別要求數(shù)量的圖像文件;采用機器視覺技術(shù)[16],基于神經(jīng)網(wǎng)絡的深度學習算法[17],準確定位、識別局部二值化后水尺圖像中的字符和吃水線,根據(jù)識別的字符和吃水線,計算出船舶水尺影像的吃水讀數(shù)。
船舶水尺標記字符包括2類:水尺數(shù)字和英文字母。其中,水尺數(shù)字是0到9的10個阿拉伯數(shù)字的組合,英文字母為大寫字母M。要獲取準確的水尺讀數(shù),識別圖片字符的信息至關(guān)重要。圖像數(shù)據(jù)可以當成一種二維像素網(wǎng)格,而卷積神經(jīng)網(wǎng)絡[18]是一種專門處理具有類似網(wǎng)格狀結(jié)構(gòu)數(shù)據(jù)的前饋神經(jīng)網(wǎng)絡,它包括卷積層、激活函數(shù)和池化層,可以看作是一個由一系列相互連接的關(guān)聯(lián)單元組成的系統(tǒng),當輸入一些外部刺激時,這個系統(tǒng)便會相應地作出反應,進而激活整個系統(tǒng)[19]。若輸入一張二維圖像A,采用二維核B進行卷積計算,其卷積結(jié)果為:S(i,j)=其中,RA和CA分別為二維圖像A的行數(shù)和列數(shù);RB和CB分別為二維核 B 的行數(shù)和列數(shù);i,j滿足 i<RA+RB-1,j<CA+CB-1。
卷積神經(jīng)網(wǎng)絡的卷積計算一般包括多層卷積,從低層次的特征開始,隨著卷積層級的提升,對所得特征不斷進行提取與壓縮,最終得到較高層次、更加可靠的特征,利用最后一層特征完成字符的分類與回歸。
對于水尺智能讀數(shù)來說,除字符分類的問題外,還需要解決字符的定位問題,本文采用Faster R-CNN[20]算法。Faster R-CNN網(wǎng)絡結(jié)構(gòu)包括卷積神經(jīng)網(wǎng)絡、區(qū)域候選網(wǎng)絡、ROI池化層和分類4部分。圖片的特征圖通過以卷積層、探測層、池化層搭配的卷積神經(jīng)網(wǎng)絡來提??;區(qū)域候選網(wǎng)絡通過分類器分類得到圖像前景和背景,同時剔除不合適的候選框進而獲得精確的候選框;ROI池化層分為特征圖和候選框,ROI池化層將每個候選框?qū)奶卣鲌D區(qū)域切分為固定份數(shù),并對每一份進行最大池化以實現(xiàn)固定大小的輸出;分類分為圖像識別和精確框2部分,每個候選框?qū)儆谀愁惖母怕释ㄟ^全連接層和分類器獲得,同時,其位置偏移量利用框回歸分析獲得。Faster R-CNN算法訓練分為利用訓練好的網(wǎng)絡模型訓練區(qū)域候選網(wǎng)絡、利用訓練好的區(qū)域候選網(wǎng)絡得到候選框、首次訓練Fast R-CNN網(wǎng)絡、第二次訓練區(qū)域候選網(wǎng)絡、利用訓練好的區(qū)域候選網(wǎng)絡得到候選框、第二次訓練Fast R-CNN網(wǎng)絡6步。
通過Faster R-CNN對字符進行識別定位時,會存在部分識別字符的外邊框未與字符相切,導致邊框大小與實際字符大小出現(xiàn)偏離的情況(圖2)。如矩形邊框abcd與字符8所處情形所示,這會對最后的水尺智能讀數(shù)的計算產(chǎn)生較大影響,因此,需要對識別后的外邊框進行矯正,使其矯正后的外邊框與字符保持相切的水平。此時,可以使用灰度值遍歷的方法調(diào)整字符外邊框,首先,遍歷外邊框abcd里的所有灰度像素點,設定字符像素值閾值,然后遍歷上邊框ab的像素點,若ab上的像素值均小于所設定的閾值,則將ab下移1個像素距離,繼續(xù)遍歷,直到遍歷得到的像素值大于設定閾值,此時,繼續(xù)下移一定數(shù)量的像素點距離進行檢驗,確保每次遍歷像素值均大于設定閾值,則將滿足條件的首次出現(xiàn)的上邊框a1b1記為字符上端相切邊框。依次按此方法遍歷字符8的右、下和左邊框,所有遍歷結(jié)束之后,得到字符的相切外邊框ABCD,該邊框即為矯正后的字符外邊框。
圖2 字符邊框矯正
對船舶吃水線進行識別時,吃水線附近船舶背景顏色會對識別效果產(chǎn)生一定的影響,針對不同顏色背景下的水線識別,可采取不同的識別算法。一般情況下,紅色和黑色背景顏色的船體采用RG雙通道像素差分法,該方法可快速識別水線,得到水線的坐標信息。水尺圖像中,船體背景處于水線的上部分,水體處于水線的下部分,從上到下圖像的像素分布變化呈現(xiàn)一定的規(guī)律性(圖3),圖中從左到右分別是識別的水尺圖像、R通道和G通道以及R-G像素面積圖、R通道像素面積差分圖、R-G像素面積差分圖,船體背景色為紅色,水體顏色偏墨綠色,R通道和G通道以及R-G像素面積在背景區(qū)和水體區(qū)變化平穩(wěn),而在水線處各通道的像素面積會產(chǎn)生突變,出現(xiàn)陡坡,在R和R-G像素面積差分圖上的量化指標也能體現(xiàn)出這種變化趨勢,在水線處會出現(xiàn)極值。
圖3 水尺圖像R-G像素差分
其他情況的水線檢測采用基于Faster R-CNN的深度學習算法,整個學習過程主要包括樣本制作、模型訓練、試驗校正等步驟。先采集抽取jpg格式的水尺圖片制成訓練樣本,訓練樣品制作過程中較為關(guān)鍵的是對水線的標定,水線標定的基本原則是既滿足Faster R-CNN算法要求,又能對識別后的水線進行準確擬合,標定基本思路是水線分割標框,標框中心線與水線平齊;將制作好的樣本置入?yún)^(qū)域候選和識別網(wǎng)絡進行迭代訓練,得到訓練模型之后通過調(diào)用模型對驗證用水尺圖片進行水線識別,進而調(diào)整參數(shù),優(yōu)化模型;最后,根據(jù)多數(shù)水線位置信息排除被誤識別的非水線,預測出未識別出的水線,實現(xiàn)水線的完全擬合,達到準確檢測和識別水線的目的。
一般情況下,船舶水尺標記中的字符呈一條垂線豎直排列,字符高度均為10 cm,2字符間的間隔距離也為10 cm,水尺標記字符,水線經(jīng)過識別和定位后,根據(jù)分析高度與實際高度的對比求出水尺讀數(shù)(圖4)。假定水尺圖像中的字符高度為LA,水線以上最近字符下端離水線的距離為LB,相鄰字符下端間的距離為LC,水線以上最近字符對應的讀數(shù)為L,則讀取的水尺讀數(shù)X可以按公式X=L-0.1LB/LA或X=L-0.2LB/LC計算得出。
圖4 水尺圖像字符和水線識別
當攝像裝置鏡頭方向與船體水尺字符存在偏離角而導致水尺圖像中字符產(chǎn)生較大畸變,或是船體水尺標記字符自身刻繪傾斜時,處理分析系統(tǒng)會對畸變數(shù)字和水線間距進行校正,根據(jù)校正后的水尺圖像擬合情況,分析系統(tǒng)即可計算得出該水尺圖片的水尺讀數(shù)。對每一個采集到的水尺影像,分析系統(tǒng)都會抽取百余幀圖像進行識別分析檢測,獲取每一幀的水尺智能讀數(shù),排除離群值之后取水尺影像的平均值作為最終讀數(shù),盡可能保證水尺智能讀數(shù)的準確性。
水尺計重專業(yè)作業(yè)人員攜帶系統(tǒng)設備到天津港和黃驊港碼頭進行測試。所選擇的船舶為工作船(已裝完煤炭貨物,等待水尺計重確定貨重的船舶),影像采集時間受現(xiàn)場作業(yè)時間限制。水尺影像采集完成之后,在計重現(xiàn)場由水尺作業(yè)人員和船方大副逐一對影像進行查看并確認人工參比讀數(shù),人工測試執(zhí)行行業(yè)標準SN/T 3023.2—2012《進出口商品重量鑒定規(guī)程 第2部分:水尺記重》;另外,將影像導入智能測試系統(tǒng),經(jīng)過規(guī)范化的條件參數(shù)設定,由系統(tǒng)測試分析給出系統(tǒng)智能讀數(shù)。最后,將船舶的智能讀數(shù)和人工讀數(shù)按照標準SN/T 3023.2—2012進行計算,結(jié)合水尺計重中的其他有關(guān)參數(shù),得出智能貨重和人工貨重。將智能讀數(shù)與人工讀數(shù)、智能貨重和人工貨重進行了對比分析,智能測試系統(tǒng)的讀數(shù)精度為0.001 m,人工讀數(shù)精度為0.01 m,合格標準設定為二者讀數(shù)差值絕對值在0.02 m以內(nèi),貨重差值分數(shù)在3‰以內(nèi)。測試分析得到黃驊港和天津港各46條船,共552個水尺影像的人工和智能讀數(shù)結(jié)果及貨重結(jié)果,詳見表 1、圖 5、圖 6。
表1 智能和人工測試比較
圖5 讀數(shù)偏差曲線
圖6 貨重偏差率曲線
將所有數(shù)據(jù)進行分析,結(jié)果表明,在常規(guī)的水尺計重工作情形下,與人工參比讀數(shù)做對比,若除去船體和影像拍攝質(zhì)量的原因,只考慮系統(tǒng)軟件本身的影響,黃驊港水尺影像的系統(tǒng)讀數(shù)合格率可達到97.67%,天津的合格率可達96.15%。以裝煤貨重來衡量整條船的測試合格率,黃驊港的合格率為95.65%,天津的合格率為93.48%,詳見表2。
表2 比較結(jié)果統(tǒng)計
為解決水尺計重過程中船舶六面水尺讀數(shù)的非客觀性問題,可采取基于深度學習的智能水尺測定系統(tǒng)進行測定的辦法,通過采集系統(tǒng)和分析系統(tǒng)分別獲取和識別水尺影像。利用基于Faster R-CNN的深度學習算法來識別確定船舶水尺字符,通過邊框矯正算法精調(diào)識別的水尺字符位置,通過RG雙通道像素差分法和深度學習算法來識別確認吃水線。采取基于深度學習的智能水尺測定系統(tǒng)進行水尺讀數(shù)測定精度可達0.001 m,1個水尺影像采取百余幀圖像讀數(shù)排除離群值之后再取平均值,可以使讀數(shù)準確率維持在較高的水平。水尺影像拍攝的規(guī)范性會影響系統(tǒng)的讀數(shù)準確性,因此,需要考慮完善采集系統(tǒng)功能結(jié)構(gòu),提高作業(yè)人員的操作水平。