趙俊清,邊 原,劉 寅,王冬明
(中鐵電氣化局集團(tuán)有限公司 設(shè)計(jì)研究院,北京 100166)
BIM(Building Information Modeling)技術(shù)應(yīng)用于工程設(shè)計(jì)、建造和管理,可以為工程技術(shù)人員對各種建筑信息作出正確理解和高效應(yīng)對,進(jìn)而可以提高生產(chǎn)效率、節(jié)約成本和縮短工程建設(shè)工期。
雖然BIM 技術(shù)具有上述優(yōu)點(diǎn),但是BIM 運(yùn)維管理具有工作量大、步驟繁多等特點(diǎn),圖像識別技術(shù)可以從海量圖片或視頻中快速提取出學(xué)習(xí)過的物體或人物,因而將該技術(shù)應(yīng)用在BIM 運(yùn)維管理中。圖像識別技術(shù)在計(jì)算機(jī)視覺領(lǐng)域如今十分普遍,有很多識別圖像的算法,如SLAM,YOLO[1]等。目前,鐵路系統(tǒng)的運(yùn)維管理較為傳統(tǒng),單個系統(tǒng)間獨(dú)立運(yùn)行,信息不能得到及時的更新和維護(hù),在BIM 運(yùn)維管理的信息化系統(tǒng)中引入圖像識別技術(shù),可以很好地實(shí)現(xiàn)設(shè)備模型的狀態(tài)更新管理。
YOLO(You Only Look Once)是單階經(jīng)典檢測器,能夠?qū)崟r快速地對目標(biāo)進(jìn)行檢測,并且能夠達(dá)到比較高的準(zhǔn)確率。YOLO 的提出者把檢測目標(biāo)的任務(wù)變成對目標(biāo)區(qū)域預(yù)測及對類別預(yù)測的回歸問題,該方法利用單個神經(jīng)網(wǎng)絡(luò)直接預(yù)測物品邊界和類別概率,從而實(shí)現(xiàn)端到端的物品檢測。此方法的檢測速度很快,基礎(chǔ)版的速度可以達(dá)到實(shí)時45 幀/s,F(xiàn)ast YOLO(輕量級YOLO 版本,使用9 個卷積層,并且卷積層中使用更少的卷積核)可以達(dá)到155 幀/s。YOLO 分 為YOLO V1、YOLO V2 和YOLO V3[2]算法,此外鞠默然等人[3]根據(jù)YOLO V3 算法的改進(jìn),檢測小目標(biāo)物體。李星辰等人[4]提出了融合YOLO V3 的多目標(biāo)檢測和跟蹤算法。
YOLO V1 產(chǎn)生于2015 年,采用一階結(jié)構(gòu)完成物體的檢測,包括物體的類別和位置。其具體算法為采用卷積神經(jīng)網(wǎng)絡(luò)對特征進(jìn)行提取,缺點(diǎn)主要是對小物體、比例不常見物體以及邊框檢測效果不準(zhǔn)確,對物體的定位不精確。
YOLO V2 產(chǎn)生于2016 年,對網(wǎng)絡(luò)結(jié)構(gòu)、先驗(yàn)框的設(shè)計(jì)和訓(xùn)練技巧進(jìn)行了改進(jìn),比YOLO V1 版本更加準(zhǔn)確、快速,范圍更廣識別物體類別更廣。
(1)在網(wǎng)絡(luò)結(jié)構(gòu)方面,YOLO V2 提出全新的網(wǎng)絡(luò)結(jié)構(gòu)DarkNet,提高識別精度,加快速度;
(2)在先驗(yàn)框的設(shè)計(jì)方面,YOLO V2 設(shè)置了一定數(shù)量的預(yù)選框,使模型不用直接預(yù)測物體的尺度和物體坐標(biāo),只需要預(yù)測先驗(yàn)框距離真實(shí)物體的偏移,進(jìn)一步降低預(yù)測難度;
(3)在訓(xùn)練技巧方面,YOLO V2 可以做到對不同尺度的圖片進(jìn)行訓(xùn)練,對多階段訓(xùn)練過程進(jìn)行優(yōu)化,使訓(xùn)練出的模型能夠適應(yīng)多種不同場景的要求。
YOLO V3 產(chǎn)生于2018 年,對網(wǎng)絡(luò)結(jié)構(gòu)、網(wǎng)絡(luò)特征和后續(xù)計(jì)算3 個地方進(jìn)行了改進(jìn),提高對小物體的檢測能力。在網(wǎng)絡(luò)結(jié)構(gòu)方面,YOLO V3 提出了基于V2 的改進(jìn)版網(wǎng)絡(luò)結(jié)構(gòu)DarkNet-53,如圖1 所示。采用殘差思想,使模型更易收斂;設(shè)置多層特征圖,有利于多尺度和小物體檢測;取消池化層。在網(wǎng)絡(luò)特征方面采用多尺度預(yù)測,有利于檢測不同大小的物體。在后續(xù)計(jì)算方面,YOLO V3 使用Logistic 函數(shù)替代Softmax 函數(shù)。進(jìn)一步做到多類別預(yù)測。
YOLO V3 的優(yōu)點(diǎn)是速度快、通用性強(qiáng)、背景誤檢率低;缺點(diǎn)是位置的準(zhǔn)確性和召回率低。
DarkNet-53 包含53 個卷積層,由5 個殘差塊構(gòu)成[2]。每個殘差塊由多個殘差單元組成,通過輸入與2 個數(shù)碼累積造型(DBL)單元進(jìn)行殘差操作,構(gòu)件殘差單元。其中,DBL 單元包含卷積、批歸一化和leaky ReLU 激活函數(shù)。通過引入殘差單元增大網(wǎng)絡(luò)深度,避免梯度消失。
YOLO V3 對輸入圖片進(jìn)行了5 次降采樣,分別在最后3 次降采樣中對目標(biāo)進(jìn)行預(yù)測。最后3 次降采樣中包含了3 個尺度目標(biāo)檢測的特征圖。小特征圖提供深層次的語義信息,大特征圖則提供目標(biāo)的位置信息,小特征圖經(jīng)過上述采樣后與大特征圖融合,因此,該模型既可以檢測大目標(biāo),也可以檢測小目標(biāo)。
BIM 按照生產(chǎn)階段劃分可以大致分為4 個階段:設(shè)計(jì),生產(chǎn)制造,施工,運(yùn)維。其中,運(yùn)維階段工作內(nèi)容繁多且數(shù)據(jù)信息量大,很多工作如果用人工處理則工作量大并且成本高,圖像識別技術(shù)在BIM運(yùn)維領(lǐng)域可以節(jié)省很大的人工工作量,節(jié)約工作時間,提高工作效率,典型的應(yīng)用場景有異物入侵、設(shè)備更新等。
鐵路接觸網(wǎng)、列車軌道、火車隧道內(nèi)經(jīng)常會有垃圾袋、鳥類、風(fēng)箏等異物入侵,導(dǎo)致列車無法正常運(yùn)行,出現(xiàn)進(jìn)行停車、暫停運(yùn)行、晚點(diǎn)等不良后果。如果在接觸網(wǎng)桿上、軌道旁、隧道內(nèi)安裝攝像頭,通過運(yùn)行圖像識別程序自動監(jiān)控、識別異物并報警,維護(hù)人員可以及時了解到異物出現(xiàn)的時間和地點(diǎn),馬上進(jìn)行處理。這樣可以在很大程度上避免列車出現(xiàn)事故,同時免除了巡檢人員長時間、長距離在軌道旁行走檢查。
在鐵路線路運(yùn)維期間,需要經(jīng)常對設(shè)備進(jìn)行維護(hù)和更新。通過攝像頭對設(shè)備進(jìn)行監(jiān)控、掃描和識別就可進(jìn)行設(shè)備更新的線上管理,可以減輕工作人員手工錄入的繁多的工作量。系統(tǒng)對設(shè)備實(shí)時監(jiān)控,當(dāng)檢測到設(shè)備更新時,便可自動掃描并對設(shè)備圖片進(jìn)行識別,將新的設(shè)備圖片和位置錄入系統(tǒng)。
當(dāng)發(fā)生火情時通過圖像識別技術(shù)對火情發(fā)生地點(diǎn)進(jìn)行定位,控制中心可及時查詢相應(yīng)周圍環(huán)境和設(shè)備情況,為及時疏散人群和處理災(zāi)情提供重要信息。此外,圖像識別技術(shù)也可用于建筑施工安全風(fēng)險預(yù)警,包括機(jī)械傷害事故以及未佩戴安全帽的情況[5-7]。
圖像識別技術(shù)如果應(yīng)用到地鐵或車站的視頻中可以對實(shí)時人流量進(jìn)行估計(jì)。通過統(tǒng)計(jì)某一時刻或一段時間內(nèi)鏡頭下人的數(shù)量可以估算出此時的人數(shù),從而為車站交通疏導(dǎo)、周邊服務(wù)工作做出指引。
通過圖像識別技術(shù)的人臉識別,還可以搜索逃犯等特定人物,輔助公安工作。查找保安位置,在消防報警時,在BIM 上快速定位所在位置,并查看周邊疏散通道和重要設(shè)備等。
圖像識別技術(shù)同樣可以用于施工進(jìn)度管理[8],通過識別施工現(xiàn)場照片反應(yīng)施工進(jìn)度,再通過Revit 和Access 對識別結(jié)果進(jìn)行管理,即可實(shí)現(xiàn)對施工進(jìn)度的實(shí)時動態(tài)管理。
圖像識別技術(shù)的輸入有2 種數(shù)據(jù)源:通過采集攝像頭得到的影像數(shù)據(jù)包括視頻數(shù)據(jù)和圖片數(shù)據(jù);通過標(biāo)注視像數(shù)據(jù)得到的訓(xùn)練數(shù)據(jù)生成的設(shè)備設(shè)施特征庫。利用圖像識別技術(shù),將這2 種數(shù)據(jù)處理后導(dǎo)入鐵路BIM 綜合運(yùn)維管理系統(tǒng),在系統(tǒng)中可以得到設(shè)備的狀態(tài)信息,即有位置變化的數(shù)據(jù),從而實(shí)現(xiàn)對運(yùn)維BIM 的位置狀態(tài)信息的監(jiān)測。鐵路BIM 綜合運(yùn)維管理系統(tǒng)可以在此基礎(chǔ)上對BIM 進(jìn)行更新,完成后續(xù)運(yùn)維操作,如圖2 所示。
圖2 基于圖像識別技術(shù)的鐵路BIM 運(yùn)維模型維護(hù)
YOLO V3 技術(shù)的具體應(yīng)用包括4 個步驟:環(huán)境配置、圖片標(biāo)注、訓(xùn)練數(shù)據(jù)、測試圖片,流程圖如圖3 所示。
圖3 總體流程
在使用YOLO 之前需要配置darknet 環(huán)境,若電腦有獨(dú)立顯示器,需要安裝darknet 的GPU 版本,否則安裝CPU 版本。安裝GPU 版本的步驟為:
(1)安裝CUDA 及CUDNN;(2)安裝Microsoft VS 2015;(3)安裝Open CV 3.4.0;(4)下載darknet源碼并解壓縮,運(yùn)行生成darknet.exe 文件當(dāng)生成darknet.exe 文件后環(huán)境就配置成功了。
在配置好環(huán)境之后,可以對圖片進(jìn)行標(biāo)注學(xué)習(xí)操作。
(1)收集相關(guān)圖片
針對想要更新的設(shè)備或物體,通過篩選攝像頭對其拍攝的圖片,得到相關(guān)的影像數(shù)據(jù),如圖4 所示。將圖片放到2 個文件夾中,是train_images,用于訓(xùn)練使用,一個是val_images,用于驗(yàn)證使用。
圖4 圖片收集
(2)使用LableImg 制作標(biāo)簽
使用LableImg 軟件對所有采集到的圖片進(jìn)行標(biāo)注,用長方形框出目標(biāo)物體,便于系統(tǒng)訓(xùn)練數(shù)據(jù)使用,如圖5 所示。
在開始訓(xùn)練數(shù)據(jù)之前,還有一些文件需要準(zhǔn)備,包括以下內(nèi)容。
(1)train.txt 和val.txt
train.txt 文件包含train_images 中所有圖片的路徑,每個圖片一行,val.txt 文件包含val_images 中所有圖片的路徑,每個圖片一行。
(2)XX.names
將所有物品的類名放到這個文件中。
(3)XX.data
放入物品類別數(shù)量和參考文件路徑。
(4)YOLOV3-KD.cfg_train
通過復(fù)制builddarknetx64cfgYOLOV3.cfg 文件得到,并做相應(yīng)修改。
(5)下載預(yù)訓(xùn)練權(quán)重darknet53.conv.74
訓(xùn)練數(shù)據(jù)的命令為:
darknet.exe detector train data/XX.data cfg/YOLOV3-XX.cfg_train darknet53.conv.74
在訓(xùn)練時需要觀察顯示框中出現(xiàn)的loss 值,當(dāng)avg loss 在多個迭代中沒有下降時可以停止訓(xùn)練。當(dāng)樣本集為3 個類別、70 張圖片時,訓(xùn)練時間大概為15 min。
測試圖片的命令為:
darknet.exe detector test data/KD.data cfg/YOLOV3-KD.cfg_test backup/KD_YOLOV3_2000.weights data/test1.jpg -thresh 0.5
將文件名改為相應(yīng)的名稱后,可以對圖片進(jìn)行測試,以下為對車站座椅和滅火器箱的檢測結(jié)果,如圖6 所示。
經(jīng)過多次實(shí)驗(yàn)表明,圖片識別的正確率為100%。可能由于目前實(shí)驗(yàn)數(shù)據(jù)較少且圖片清晰,所以圖像正確識別率較高,但該算法在鐵路BIM 綜合運(yùn)維管理系統(tǒng)中應(yīng)用于特定設(shè)備設(shè)施的識別是可行的。
本文介紹YOLO 算法,對圖像識別技術(shù)在BIM運(yùn)維管理中的應(yīng)用進(jìn)行詳細(xì)闡述,最后介紹了如何使用YOLO 方法應(yīng)用于鐵路BIM 綜合運(yùn)維管理系統(tǒng)。若在鐵路BIM 綜合運(yùn)維管理系統(tǒng)中引入空間定位技術(shù),結(jié)合目前的圖像識別技術(shù),即可實(shí)現(xiàn)鐵路設(shè)備設(shè)施BIM 位置的實(shí)時更新,保持與現(xiàn)實(shí)一致,從而為實(shí)現(xiàn)數(shù)字孿生和智慧化運(yùn)維管理打下基礎(chǔ)。