孫璐陽 王全秀
近年來,中國經(jīng)濟(jì)的不斷發(fā)展,進(jìn)出口貿(mào)易量日益增長,其中礦石類貨物在我國港口外貿(mào)進(jìn)口貨物吞吐量中高居首位。礦石碼頭貨場作為礦石卸載、中轉(zhuǎn)的重要基礎(chǔ)設(shè)施,目前仍依賴于傳統(tǒng)的人工管理作業(yè)模式,存在著數(shù)據(jù)采集速度慢、數(shù)據(jù)誤差大、貨物跟蹤難、場地分配調(diào)度難等問題,難以滿足貨場管理的快速、準(zhǔn)確要求,嚴(yán)重影響了貨場的運行工作效率。為了解決上述問題,提高礦石貨場的工作效率,促進(jìn)礦石貨場的智能化管理,設(shè)計開發(fā)了基于航拍圖像的礦石貨場智能調(diào)度管理系統(tǒng)。
針對數(shù)據(jù)采集速度慢的問題,系統(tǒng)采用無人機(jī)代替人工巡邏,利用無人機(jī)航拍,使數(shù)據(jù)采集更加智能、快速、精準(zhǔn)。針對數(shù)據(jù)誤差大的問題,使用圖像識別和三維模型建立的方法使數(shù)據(jù)量化計算,更加精確。針對貨物跟蹤難的問題,將礦場全景圖在顯示設(shè)備上顯示,實現(xiàn)貨物可視化跟蹤。針對場地分配調(diào)度難的問題,借鑒計算機(jī)內(nèi)存分配算法思想,實現(xiàn)對貨場區(qū)域的合理分配和調(diào)度,從而提高貨場的管理效率和使用效率。
整個系統(tǒng)劃分為6個模塊。分別是圖像管理,礦堆檢測及標(biāo)注,模型建立與計算,場地智能分配及調(diào)度,數(shù)據(jù)庫設(shè)計,用戶管理。每個主要模塊下面又分別含有子模塊。系統(tǒng)結(jié)構(gòu)圖如下:
在本系統(tǒng)中,圖像采集模塊由無人機(jī),高清攝像頭,圖像存儲傳輸設(shè)備構(gòu)成,無人機(jī)在高空飛行,向下拍攝地面圖片,同時采集成像時的經(jīng)緯度高度信息;圖像拼接模塊利用拼接算法實現(xiàn)圖像的拼接,將無人機(jī)拍攝的圖片拼接成一張貨場全景大圖;圖像存儲采用專門設(shè)計的文件系統(tǒng),保存不同用途的圖片;礦堆檢測模塊采用深度學(xué)習(xí)和圖像處理相結(jié)合的方法,實現(xiàn)礦石堆的自動標(biāo)注,同時為防止出錯,添加人工輔助標(biāo)注的功能;計算模塊由貨場空閑場地區(qū)域計算出可存儲的礦石重量;調(diào)度模塊結(jié)合物流系統(tǒng)和計算模塊,運用科學(xué)的方法進(jìn)行場地分配與貨物調(diào)度;數(shù)據(jù)庫模塊存儲礦石貨場相關(guān)數(shù)據(jù),實現(xiàn)數(shù)據(jù)庫的增、刪、改、查等功能。
(一)圖像管理
本系統(tǒng)運行過程中需要對大量的圖片進(jìn)行處理,圖片的用途不一,后序處理過程也不同,為此,系統(tǒng)專門設(shè)計了圖像管理模塊,主要分為圖像采集、圖像存儲和圖像拼接三部分。
系統(tǒng)以無人機(jī)作為采集圖片的主要方式。無人機(jī)準(zhǔn)備就緒之后即可升空拍照,拍照時保持在同一水平高度,且保存照片的高度和經(jīng)緯度信息,拍照結(jié)束,回收無人機(jī),將照片導(dǎo)入圖像存儲部分。在采集用于拼接全景圖的圖片時,無人機(jī)按照特定的軌跡進(jìn)行拍攝,可以降低拼接的難度,提高效率。
系統(tǒng)在資源文件夾下,新建三個文件夾分別存儲貨場局部圖、貨場全景圖和供深度學(xué)習(xí)訓(xùn)練的圖片。系統(tǒng)運行時,利用文件操作,從相應(yīng)的文件夾中讀取圖片。
系統(tǒng)借助對圖像的預(yù)處理操作和圖像拼接的方式來得到礦石貨場的全景圖。該模塊通過對無人機(jī)采集的圖像集合進(jìn)行圖像的預(yù)處理,讀取并存取圖像的經(jīng)緯度等信息,獲取圖像的大小并適當(dāng)圖像的大小。借助opencv中的拼接功能并加以改進(jìn)來對圖像集合進(jìn)行拼接,得到礦石貨場的全景圖。
(二)礦堆檢測及標(biāo)注
1.自動檢測
自動檢測又分為深度學(xué)習(xí)檢測礦石堆模塊和OpenCv細(xì)節(jié)處理模塊。本系統(tǒng)基于Tensorflow框架進(jìn)行深度學(xué)習(xí)可以較準(zhǔn)確的檢測到貨堆,但是不能得到貨堆的準(zhǔn)確輪廓,Opencv可以貨堆的輪廓精確化,所以系統(tǒng)首先調(diào)用深度學(xué)習(xí)模塊,輸入為處理之后的礦場航拍圖像,輸出為帶標(biāo)記的航拍圖像,以及檢測到的每個貨堆的坐標(biāo)位置(矩形的左上角和右下角頂點);Opencv模塊獲取深度學(xué)習(xí)模塊的輸出作為自己的輸入,在每一個矩形區(qū)域內(nèi)對貨堆輪廓縮進(jìn)精確化,從而得到較為準(zhǔn)確的貨堆區(qū)域。
(1)深度學(xué)習(xí)檢測模塊
準(zhǔn)備階段主要包括:礦場圖片數(shù)據(jù)集收集、標(biāo)準(zhǔn)VOC數(shù)據(jù)集制作、VOC轉(zhuǎn)TFRecord格式、選擇預(yù)訓(xùn)練模型、模型訓(xùn)練。系統(tǒng)運行階段主要包括:調(diào)用訓(xùn)練好的模型文件、得到貨堆的坐標(biāo)并標(biāo)注。
本系統(tǒng)選用的是SSD物體檢測模型。SSD物體檢測模型在預(yù)測期間,網(wǎng)絡(luò)針對每個默認(rèn)框中的每個存在對象類別生成分?jǐn)?shù),并且對框進(jìn)行調(diào)整以更好地匹配對象形狀,之后,對分?jǐn)?shù)進(jìn)行非極大值抑制得到最終的預(yù)測結(jié)果。
(2)Opencv模塊
圖中藍(lán)色矩形的四角坐標(biāo)已知,可以得到藍(lán)色的輪廓。再用主動輪廓線算法在藍(lán)色區(qū)域內(nèi)對礦堆進(jìn)行提取和跟蹤,就可以得到紅色的礦石堆輪廓。
主動輪廓線模型,又叫做Snake模型。它對噪聲和對比度不敏感,能夠?qū)⒌V堆從具有復(fù)雜車轍等噪聲的地面背景中提取出來。Snake的能量函數(shù)分為內(nèi)部能量函數(shù)和外部能量函數(shù),其中內(nèi)部能量控制輪廓的平滑和連續(xù)。外部能量控制著收斂。
Snake模型的能量函數(shù)的具體表達(dá)式為:
通過求解上式的最小值,使輪廓曲線收斂在圖像的最大梯度點,而圖像的最大梯度一般在目標(biāo)的邊緣處取得,也即檢測出了目標(biāo)的邊緣。
2.手動標(biāo)注
本作品需要準(zhǔn)確標(biāo)注礦石堆,為了保證標(biāo)記的準(zhǔn)確性,就添加了手動標(biāo)注模塊,自動標(biāo)注后用戶可以進(jìn)行手動標(biāo)注來減少誤差。