胥 維,段 云,王博楠
(1.北京礦冶研究總院,北京 100160;2.礦冶科技集團(tuán)有限公司,北京 100160)
礦巖塊度分布是評(píng)價(jià)巖石爆破效果的主要參數(shù)之一,可以為爆破參數(shù)設(shè)計(jì)和優(yōu)化提供數(shù)據(jù)依據(jù)。礦巖塊度測(cè)量方法研究可以追溯到19世紀(jì)末,澳大利亞學(xué)者Rozival首次用線段法測(cè)量巖石的粒度組成。1960年Bapon通過(guò)照片取樣,將線段法引入礦巖塊度的測(cè)量。礦巖塊度分布的研究經(jīng)歷了半個(gè)多世紀(jì),產(chǎn)生了多種測(cè)量方法。歸納現(xiàn)有測(cè)量方法,可以分為兩大類,一類是直接測(cè)量方法,另一類是間接測(cè)量方法[1]。直接測(cè)量方法是對(duì)爆破后巖石的塊度直接進(jìn)行測(cè)量,從而獲得塊度分布信息。直接測(cè)量法主要有篩分法、二次爆破巖塊統(tǒng)計(jì)法和爆堆直接測(cè)量法。直接測(cè)量法費(fèi)時(shí)費(fèi)力、測(cè)量人員安全難以保障,逐漸被以圖像分析法為代表的間接測(cè)量方法代替。
早在1995年,加拿大滑鐵盧大學(xué)的富蘭克林開發(fā)的Wipfrag視覺(jué)系統(tǒng)就能用于測(cè)量巖石塊度信息[2]。Wipfrag第二代系統(tǒng)[3]包括圖像輸入輸出、塊體在線分析、比例尺標(biāo)定、場(chǎng)景轉(zhuǎn)換、塊體特征參量設(shè)定、報(bào)表輸出等功能,該系統(tǒng)處理一張圖像大概需要4 s,針對(duì)灰度特征復(fù)雜的巖堆圖像,可以結(jié)合人工操作如縮放和合并、鼠標(biāo)手動(dòng)編輯、刪除和繪制線條等方式進(jìn)行更準(zhǔn)確的圖像分割,使得獲取巖石塊體信息更真實(shí)。類似的塊度自動(dòng)分析系統(tǒng)還有美國(guó)富科斯博公司研發(fā)的95PSD顆粒尺寸分布儀器,其原理是利用顆粒弦長(zhǎng)關(guān)系反映塊度分布規(guī)律,但是局限性在于只適用于傳送帶上的塊度分割。呂林[4]基于國(guó)外Split巖體分析系統(tǒng),利用 Matlab強(qiáng)大的計(jì)算能力,開發(fā)出一個(gè)能對(duì)露天臺(tái)階坡面進(jìn)行巖體分割的算法模型,提高了裂隙巖體尺寸的計(jì)算效率,充分發(fā)揮了Split軟件自動(dòng)分割提取的優(yōu)勢(shì)。國(guó)內(nèi)外研究成果中不缺乏礦巖塊度測(cè)量軟件,但沒(méi)有真正實(shí)現(xiàn)從圖像采集到塊度信息分析全流程的自動(dòng)化、智能化。圖像采集方面,這些軟件都需要人工采集圖像,每次采集的距離和角度難以固定,不能實(shí)現(xiàn)自動(dòng)連續(xù)采集圖像;圖像分析方面,這些軟件需要大量用戶交互,對(duì)每張圖片調(diào)整不同的閾值,以獲取良好的分割效果,難以自動(dòng)分析批量圖像的塊度信息。
近年來(lái),隨著卷積神經(jīng)網(wǎng)絡(luò)的出現(xiàn),基于深度學(xué)習(xí)的計(jì)算機(jī)視覺(jué)算法開始快速發(fā)展。深度學(xué)習(xí)方法的主要優(yōu)點(diǎn)是,只要有足夠的訓(xùn)練數(shù)據(jù)、合理的網(wǎng)絡(luò)模型、充足的算力,訓(xùn)練出的模型就有良好的泛化性能和魯棒性,在從未見(jiàn)過(guò)的數(shù)據(jù)上,模型也能取得接近甚至超過(guò)人類水平的預(yù)測(cè)效果,而不需要依賴用戶干預(yù)或者設(shè)置特定的閾值。
本論文綜合應(yīng)用物聯(lián)網(wǎng)、深度學(xué)習(xí)等技術(shù)開發(fā)礦巖塊度自動(dòng)分析系統(tǒng),該系統(tǒng)能夠在無(wú)人參與情況下連續(xù)工作,自動(dòng)采集與篩選適合塊度分析的圖像樣本,并能通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)信息共享,最終在Web界面實(shí)現(xiàn)塊度信息展示。本文主要工作如下:
1)創(chuàng)建電動(dòng)輪狀態(tài)分類數(shù)據(jù)集,開發(fā)電動(dòng)輪卸礦圖像自動(dòng)采集系統(tǒng)。
2)提出一種基于U-Net模型的塊度信息自動(dòng)分析算法。
3)搭建塊度信息在線云平臺(tái),整合自動(dòng)分析算法,實(shí)現(xiàn)對(duì)大容量流數(shù)據(jù)的實(shí)時(shí)分析和塊度信息可視化。
本系統(tǒng)由基于MobileNet分類模型的圖像采集子系統(tǒng)、云平臺(tái)圖像分析子系統(tǒng)和Web用戶界面三部分組成。該系統(tǒng)的結(jié)構(gòu)如圖1所示。數(shù)據(jù)采集子系統(tǒng)由工業(yè)電腦、高精度工業(yè)相機(jī)、4G無(wú)線傳輸裝置組成。工業(yè)相機(jī)用于捕捉每輛電動(dòng)輪料斗達(dá)到最大高度時(shí)的卸礦圖像,工業(yè)電腦用于部署基于MobileNet的圖像分類模型和基于網(wǎng)絡(luò)編程的圖像傳輸程序。云平臺(tái)基于Django框架搭建,分為圖像接收模塊、圖像分析模塊、圖像存儲(chǔ)模塊、用戶管理模塊。用戶界面基于Lay UI框架和Echarts圖表庫(kù)實(shí)現(xiàn),用于粒度信息可視化。
圖1 礦巖塊度自動(dòng)分析系統(tǒng)Fig.1 Automatic analysis system of ore fragmentation
系統(tǒng)硬件包括工業(yè)電腦、工業(yè)相機(jī)、DTU、開關(guān)電源等。硬件參數(shù)信息如表1所示,滿足戶外惡劣環(huán)境下連續(xù)工作的需求。采集系統(tǒng)安裝在旋回破碎站中控室外壁,安裝示意圖如圖2所示,采集示意圖如圖3所示。為保證拍攝質(zhì)量,進(jìn)行多次現(xiàn)場(chǎng)實(shí)驗(yàn),最終相機(jī)幀率、曝光率等參數(shù)設(shè)置如表2時(shí),達(dá)到最佳采集效果。
表1 采集系統(tǒng)硬件信息Table 1 Acquisition system hardware information
圖2 采集系統(tǒng)安裝示意圖(單位:m)Fig.2 Installation diagram of the acquisition system
圖3 采集系統(tǒng)采集示意圖Fig.3 Schematic diagram of an acquisition system
表2 相機(jī)采集最優(yōu)參數(shù)設(shè)置Table 2 Optimal parameter setting of camera acquisition
文獻(xiàn)[5]認(rèn)為旋回破碎站智能圖像采集系統(tǒng)應(yīng)滿足以下要求:①自動(dòng)“感知”樣本圖像的存在;②自動(dòng)從休眠狀態(tài)轉(zhuǎn)為工作狀態(tài);③判斷當(dāng)前電動(dòng)輪料斗是空斗還是滿斗;④自動(dòng)“丟棄”不滿足分析要求的圖像(如模糊的圖像);⑤通過(guò)網(wǎng)絡(luò)“共享信息”;⑥如果沒(méi)有監(jiān)測(cè)到進(jìn)一步的活動(dòng)則進(jìn)入休眠狀態(tài)。傳統(tǒng)的距離傳感器觸發(fā)方式難以滿足以上復(fù)雜的判斷邏輯,得益于深度學(xué)習(xí)的出現(xiàn),基于卷積神經(jīng)網(wǎng)絡(luò)的圖像分類器能夠?qū)⑾鄼C(jī)視野中的圖像分為滿足圖像分析要求和不滿足圖像分析要求兩類,實(shí)現(xiàn)對(duì)電動(dòng)輪卸料圖像的自動(dòng)、準(zhǔn)確采集。其中滿足圖像分析要求的圖像只包括電動(dòng)輪卸料時(shí)料斗達(dá)到最大高度且料斗中有礦石的圖像,如圖4所示。不滿足圖像分析要求的圖像主要包括以下幾種情況:①無(wú)電動(dòng)輪出現(xiàn)的圖像,如圖5(a);②有電動(dòng)輪出現(xiàn)但是電動(dòng)輪還沒(méi)有開始卸礦的圖像,如圖5(b);③電動(dòng)輪卸完礦石的空斗圖像,如圖5(c);④電動(dòng)輪卸完礦石離開旋回破碎站的圖像,如圖5(d);⑤低光照時(shí),運(yùn)動(dòng)模糊的圖像,如圖5(e);⑥揚(yáng)塵擋住相機(jī)視野的圖像,如圖5(f)。
圖4 滿足圖像分析要求的圖像Fig.4 Image meeting image analysis requirements
圖5 不滿足圖像分析要求的圖像Fig.5Images that do not meet the requirements of image analysis
數(shù)據(jù)集質(zhì)量是提升深度學(xué)習(xí)模型性能的關(guān)鍵。在二分類問(wèn)題中,類別不平衡問(wèn)題將會(huì)降低模型泛化性能、降低系統(tǒng)魯棒性[6]。本論文使用的分類數(shù)據(jù)集共520張圖像,來(lái)自國(guó)內(nèi)某露天礦山旋回破碎站。使用GT4905高精度工業(yè)相機(jī),編寫Python腳本調(diào)用OpenCV的運(yùn)動(dòng)物體檢測(cè)函數(shù),每次電動(dòng)輪出現(xiàn)在相機(jī)視野中,相機(jī)就會(huì)自動(dòng)采集,采集多次電動(dòng)輪卸料全過(guò)程圖像,用于訓(xùn)練適合精準(zhǔn)、自動(dòng)采集的二分類模型。采集時(shí)間為2021年4月22日到4月29日,持續(xù)一周時(shí)間,共采集7 000張圖像,每張圖片大小均為2 448×1 632。從這7 000張圖像中精選出260張滿足分析要求的高質(zhì)量圖像,標(biāo)記為類別Qualified,選出260張不滿足分析要求的圖像(包含圖5中的所有情況),標(biāo)記為類別Unqualified。按9∶1劃分訓(xùn)練集與驗(yàn)證集,訓(xùn)練集共468張圖像,Qualified和Unqualified類別各234張圖像。
采集程序部署在NI CVS-1458嵌入式工業(yè)電腦中,NI CVS-1458采用包含兩個(gè)處理單元的異構(gòu)處理架構(gòu):①四核Intel Atom處理器,運(yùn)行Windows 7嵌入式操作系統(tǒng)的處理器,用于通信和信號(hào)處理;②Spartan-6 FPGA協(xié)處理器,對(duì)硬件實(shí)現(xiàn)高速控制和自定義觸發(fā)。異構(gòu)處理器提升了計(jì)算機(jī)視覺(jué)程序的運(yùn)行速度,但NI CVS仍屬于嵌入式設(shè)備,外存僅32 GB,所以本文選擇了MobileNet V1圖像分類模型。MobileNet[7]是谷歌團(tuán)隊(duì)針對(duì)手機(jī)等嵌入式設(shè)備研發(fā)的一種輕量級(jí)深度神經(jīng)網(wǎng)絡(luò),使用深度可分離卷積降低模型參數(shù)量,從而降低模型的存儲(chǔ)空間。模型結(jié)構(gòu)如圖6所示,包含1個(gè)普通卷積層、6個(gè)尺寸不同的深度可分離卷積層、5個(gè)相同尺寸的深度可分離卷積層、1個(gè)平均池化層、1個(gè)全連接層和1個(gè)Softmax層,所有層后面都會(huì)經(jīng)過(guò)批歸一化操作,除全連接層和Softmax層,其它層均連接Re LU非線性激活函數(shù)。
圖6 MobileNet V1模型結(jié)構(gòu)Fig.6 MobileNet V1 model structure
MobileNet V1有很多版本復(fù)現(xiàn)代碼,本文實(shí)驗(yàn)代碼基于Kearas官方版本修改,實(shí)驗(yàn)在臺(tái)式機(jī)上進(jìn)行,處理器為因特爾酷睿i5,內(nèi)存為16 GB。為增強(qiáng)模型泛化能力、解決數(shù)據(jù)量不足的問(wèn)題,引入遷移學(xué)習(xí)[8]的理念,具體流程為先在ImageNet公有數(shù)據(jù)集預(yù)訓(xùn)練MobileNet模型,模型收斂后在本文分類數(shù)據(jù)集上進(jìn)行訓(xùn)練微調(diào)。訓(xùn)練Epoch(在訓(xùn)練集上的迭代次數(shù))設(shè)為100次,讀取數(shù)據(jù)的批量大小設(shè)為32。使用前文準(zhǔn)備好的數(shù)據(jù)集作為輸入,所有輸入圖像經(jīng)過(guò)雙三次插值、圖像填充等操作調(diào)整為224×224×3大小,將像素值歸一化到[-1,1]范圍輸入MobileNet模型。使用交叉熵?fù)p失函數(shù)計(jì)算當(dāng)前模型預(yù)測(cè)值與真實(shí)值的差異,完整的損失函數(shù)值變化見(jiàn)圖7。由圖7可知,在第80個(gè)Epoch后,損失趨近于0,不再降低,模型收斂,最終模型top1準(zhǔn)確率為98.08%,模型訓(xùn)練總時(shí)間為3 h,每張圖片推理用時(shí)1~2 s,滿足應(yīng)用需求。圖8為模型在驗(yàn)證集上的預(yù)測(cè)效果,圖中Class為類別,Probability為模型推理的類別概率,取值范圍為0~1。
圖7 MobileNet訓(xùn)練損失及驗(yàn)證損失曲線Fig.7 MobileNet training loss and verification loss curve
圖像自動(dòng)采集系統(tǒng)采集到電動(dòng)輪卸礦圖像,通過(guò)4G網(wǎng)絡(luò)上傳云平臺(tái),由云平臺(tái)部署的圖像自動(dòng)分析程序計(jì)算礦石的二維幾何信息。本文圖像自動(dòng)分析算法基于兩個(gè)U-Net模型。算法分為三層,第一層是基于U-Net的車斗區(qū)域分割模型,第二層是基于U-Net的礦石分割模型,第三層是基于OpenCV圖像處理庫(kù)的輪廓查找函數(shù)和輪廓幾何信息計(jì)算函數(shù)。算法架構(gòu)圖如圖9所示。第一層用于剔除圖像中與礦石無(wú)關(guān)的背景區(qū)域,第二層用于分割每個(gè)礦石輪廓,第三層為統(tǒng)計(jì)層,統(tǒng)計(jì)每個(gè)輪廓面積和等效直徑。圖10(a)所示的原始圖像經(jīng)過(guò)第一層算法處理,輸出如圖10(b)所示;經(jīng)過(guò)第二層算法處理,輸出如圖10(c)所示;經(jīng)過(guò)第三層的輪廓查找算法處理,輸出如圖10(d)所示;最終等效直徑計(jì)算結(jié)果如圖11所示。本算法在計(jì)算過(guò)程中不涉及參數(shù)調(diào)整、閾值設(shè)定,實(shí)現(xiàn)了礦石圖像幾何特征的自動(dòng)計(jì)算。
圖9 圖像自動(dòng)分析算法架構(gòu)圖Fig.9 Architecture of automatic image analysis algorithm
圖10 各層算法處理后的輸出結(jié)果Fig.10 Output results of each layer algorithm processing
圖11 等效直徑分布圖Fig.11 Distribution of equivalent diameter
在深度學(xué)習(xí)領(lǐng)域,數(shù)據(jù)集的獲取途徑主要有兩種,自定義數(shù)據(jù)集和公共數(shù)據(jù)集,本文的車斗分割模型在公共數(shù)據(jù)集中并無(wú)先例,需要自定義數(shù)據(jù)集。自動(dòng)采集系統(tǒng)采集的電動(dòng)輪卸料圖像存放在云服務(wù)器文件系統(tǒng)中,這些數(shù)據(jù)構(gòu)成分割模型的原始數(shù)據(jù),從原始數(shù)據(jù)中挑選出25張圖像,使用Labelme工具進(jìn)行標(biāo)注,如圖12所示。編寫Python腳本,將標(biāo)注生成的json文件轉(zhuǎn)換為Pascal VOC2007圖像分割標(biāo)準(zhǔn)數(shù)據(jù)集格式,用于模型訓(xùn)練。
圖12 使用Labelme軟件標(biāo)記車斗區(qū)域Fig.12 Annotate the body area with Labelme
車斗區(qū)域分割模型基于Keras官方版本的U-Net程序修改,訓(xùn)練集和驗(yàn)證集圖像數(shù)量之比為9∶1,實(shí)驗(yàn)硬件環(huán)境與前文分類模型相同,車斗區(qū)域特征簡(jiǎn)單,經(jīng)過(guò)4輪迭代,訓(xùn)練集損失下降到0.074,模型訓(xùn)練過(guò)程中,損失函數(shù)變化曲線如圖13所示。
圖13 車斗區(qū)域分割模型損失函數(shù)變化曲線Fig.13 Variation curve of loss function of vehicle body area segmentation model
使用Io U(交并比)和PA(像素準(zhǔn)確率)作為車斗分割模型的性能評(píng)價(jià)指標(biāo),兩個(gè)指標(biāo)分?jǐn)?shù)越高,模型分割性能越好,計(jì)算結(jié)果如表3。
表3 車斗區(qū)域分割模型IoU與PA指標(biāo)Table 3 Io U and PA indexes of vehicle body area segmentation model /%
其中Io U計(jì)算公式如式(1):
PA計(jì)算公式如式(2):
式中:假陽(yáng)性(FP)表示背景類像素被分類為車斗區(qū)域類的像素?cái)?shù)量,真陽(yáng)性(TP)表示車斗區(qū)域類被分類為車斗區(qū)域類的像素?cái)?shù)量,假陰性(FN)表示車斗區(qū)域類被分類為背景類的像素?cái)?shù)量,真陰性(TN)表示背景類被分類為背景類的像素?cái)?shù)量。
礦石分割模型將車斗區(qū)域分割模型的輸出作為輸入,分割出每個(gè)礦石。礦石分割主要困難如下:①單張圖像各空間域的光照不均,不同時(shí)間自然光照強(qiáng)度不同;②礦石沒(méi)有固定的形狀和大小,紋理特征復(fù)雜;③礦石之間相互堆疊,難以分割。本文使用文獻(xiàn)[9]開源的巖石語(yǔ)義分割數(shù)據(jù)集,該數(shù)據(jù)集包括950張?jiān)紙D像和對(duì)應(yīng)的標(biāo)注圖像,按9∶1劃分訓(xùn)練集和驗(yàn)證集,實(shí)驗(yàn)的軟硬件環(huán)境與車斗區(qū)域分割模型一致,經(jīng)過(guò)9輪迭代,模型趨于收斂。訓(xùn)練過(guò)程中,損失函數(shù)變化曲線如圖14所示,模型IoU和PA計(jì)算結(jié)果如表4所示。
圖14 礦石分割模型損失函數(shù)變化曲線Fig.14 Variation curve of loss function of the ore segmentation model
表4 礦石分割模型IoU與PA指標(biāo)Table 4 IoU and PA indexes of the ore segmentation model/%
為實(shí)現(xiàn)對(duì)采集端圖像進(jìn)行實(shí)時(shí)分析和計(jì)算結(jié)果展示,解決信息孤島問(wèn)題[10],需要搭建云平臺(tái)。此外云平臺(tái)還應(yīng)具有數(shù)據(jù)查詢、用戶管理等功能。云平臺(tái)后端基于Django框架開發(fā),前端界面基于Lay UI框架,平臺(tái)架構(gòu)如圖15所示。平臺(tái)基于B/S架構(gòu),用戶可以使用任意裝有瀏覽器的設(shè)備訪問(wèn),無(wú)需安裝其它軟件或插件。圖16為礦巖塊度信息顯示界面,使用不同顏色的曲線區(qū)分D10、D25、D50、D75、D90粒度數(shù)據(jù)。
圖15 云平臺(tái)架構(gòu)圖Fig.15 Cloud platform architecture
圖16 塊度信息查詢界面Fig.16 Fragmentation information query interface
礦巖塊度數(shù)據(jù)為爆破效果評(píng)價(jià)提供定量信息。本文開發(fā)了一套礦巖塊度分析系統(tǒng),該系統(tǒng)由圖像采集子系統(tǒng)、圖像分析子系統(tǒng)和可視化界面組成。本系統(tǒng)可以自動(dòng)采集旋回破碎站的電動(dòng)輪實(shí)時(shí)卸料圖像,并上傳云平臺(tái),使用基于U-Net的圖像分割算法自動(dòng)分析當(dāng)前圖像的塊度信息。以上流程均實(shí)現(xiàn)無(wú)人化、智能化,因此可以不間斷分析當(dāng)前破碎站的塊度信息,為整個(gè)礦山的爆破效果評(píng)價(jià)提供數(shù)據(jù)支持,為實(shí)現(xiàn)智能化爆破提供可靠依據(jù)。