張神德, 陳國棟
(福州大學(xué)物理與信息工程學(xué)院,福建 福州 350108)
據(jù)統(tǒng)計(jì)僅僅2012-2014兩年間塔式起重機(jī)安全事故就有162起,其中因?yàn)楦鞣N缺陷導(dǎo)致的事故占總事故的87.04%[1],近幾年來的事故數(shù)目不減反增,塔式起重機(jī)由于其事故的多發(fā)性已經(jīng)成為工地危險(xiǎn)源之一。現(xiàn)有的針對(duì)塔式起重機(jī)的安全管理監(jiān)督還是以人工檢查為主,然而人工檢查成本高,檢查人員的人身安全得不到保障,且塔式起重機(jī)隨著樓層的增高不斷增加標(biāo)準(zhǔn)節(jié),常常高達(dá)幾十米,許多偏僻而又危險(xiǎn)的角落難以被察覺。在日常的搬運(yùn)、承重、轉(zhuǎn)移作業(yè)中存在出現(xiàn)裂縫、開裂等潛在的安全隱患。
基于深度學(xué)習(xí)的目標(biāo)檢測技術(shù)研究一直是熱門領(lǐng)域,算法已經(jīng)逐漸成熟,識(shí)別捕捉能力也越來越好,以R-CNN為代表的兩階段檢測方法檢測精度良好,以YOLO[2]為代表的單階段檢測不依賴候選區(qū)的方法則擁有極佳的識(shí)別效率,兩種方法都被廣泛應(yīng)用于缺陷檢測領(lǐng)域,諸如鋼板缺陷、路面裂縫、橋體缺陷、工件銹跡等等,都取得了良好的效果。針對(duì)塔式起重機(jī)存在的安全隱患與監(jiān)督檢查困難問題提出基于YOLO的裂縫識(shí)別方法,配合無人機(jī)等工具進(jìn)行拍攝監(jiān)督,識(shí)別出缺陷時(shí)從圖像中提取缺陷并通過圖像處理算法進(jìn)行定量分析,最終得出數(shù)據(jù)為專業(yè)人員進(jìn)行安全評(píng)估提供部分?jǐn)?shù)據(jù)參考,幫助塔式起重機(jī)在拆裝與工程作業(yè)過程中更好得安全維護(hù)與監(jiān)督,為工程施工提供更好的保障。實(shí)驗(yàn)表明在塔式起重機(jī)的安全檢查中具有很高的使用價(jià)值。
YOLO算法將識(shí)別過程統(tǒng)一為一個(gè)回歸過程,相對(duì)于兩階段檢測方法更加輕量高效,在YOLO v1中通過前特征提取網(wǎng)絡(luò)中卷積降維得到固定大小的特征圖如圖1所示。然而該種方法雖然速度非??斓蔷炔顝?qiáng)人意,特別是針對(duì)相互靠的很近的目標(biāo)或很小的識(shí)別目標(biāo)的捕捉較差。在YOLO的第二代算法中針對(duì)第一代出現(xiàn)的問題進(jìn)行了改進(jìn),在上一代的基礎(chǔ)上卷積層進(jìn)行了批歸一化,增加了多尺度和更高分辨率的圖像做輸入。在刪除了全連接層的同時(shí)引入了Anchor Boxes的先驗(yàn)框機(jī)制,以Darknet-19 特征提取網(wǎng)絡(luò)為基礎(chǔ),實(shí)現(xiàn)了更好的識(shí)別效果,同時(shí)網(wǎng)絡(luò)也更容易訓(xùn)練[4]。
圖1 YOLO
YOLOv3繼承了YOLOv1,v2的優(yōu)點(diǎn),Darknet-53更深的網(wǎng)絡(luò)結(jié)構(gòu)可以獲得更好的特征信息,同時(shí)YOLOv3增加了多尺度融合的特征預(yù)測目標(biāo),充分捕捉各種尺度下的信息特征,精度大大提高,最后再經(jīng)過非極大抑制算法下得到最好的目標(biāo)識(shí)別結(jié)果,如圖2。
圖2 YOLOv3結(jié)構(gòu)
YOLOv3犧牲了一部分識(shí)別速度改善了前兩代算法對(duì)小目標(biāo)識(shí)別捕捉不敏感的缺點(diǎn)[6]。識(shí)別精度雖比較Faster RCNN算法[7]等稍低但識(shí)別速度非??鞚M足實(shí)時(shí)快速捕捉的需求更適合針對(duì)塔式起重機(jī)缺陷識(shí)別中通過無人機(jī)等方式對(duì)裂縫等缺陷的快速識(shí)別。參考塔吊實(shí)際裂縫檢測中出現(xiàn)的問題和需求,選擇YOLOv3作為識(shí)別定位算法,通過定位獲取的圖像中裂縫所在位置,返回坐標(biāo),根據(jù)YOLOv3捕獲的信息提取裂縫進(jìn)行進(jìn)一步的定量分析操作。由此來完成塔吊裂縫的定位、定量工作。
數(shù)據(jù)集以各類塔式起重機(jī)承重裂縫、變形裂縫和斷裂裂縫為基礎(chǔ),為了達(dá)到更好的識(shí)別效果加入了1202張與塔式起重機(jī)標(biāo)準(zhǔn)節(jié)材質(zhì)類似或與塔式起重機(jī)裂縫紋路相似的經(jīng)過篩選后獲得的鐵軌裂縫、工件裂縫、鋼板裂縫和器材裂縫圖片共計(jì)7206張。實(shí)際使用時(shí)以識(shí)別目標(biāo)并為圖像處理算法提取目標(biāo)為主,故不對(duì)裂縫分類訓(xùn)練時(shí)統(tǒng)一命名為crack。
如果數(shù)據(jù)集不夠大則模型效果差強(qiáng)人意,因此為了擴(kuò)大數(shù)據(jù)集,在7206張塔式起重機(jī)裂縫和類似裂縫的數(shù)據(jù)集基礎(chǔ)下為了檢測效果對(duì)數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng):為提高檢測效果,對(duì)現(xiàn)有的數(shù)據(jù)集進(jìn)行數(shù)據(jù)擴(kuò)展來增加數(shù)據(jù)集的基數(shù),包括:將部分圖片進(jìn)行隨機(jī)數(shù)值的隨機(jī)旋轉(zhuǎn)后,再進(jìn)行90°的旋轉(zhuǎn);對(duì)部分圖片的進(jìn)行橫向或者縱向隨機(jī)方向的平移;以(0.9,1.1)的比例對(duì)部分圖片進(jìn)行水平或豎直方向拉伸或者壓縮等。通過數(shù)據(jù)增強(qiáng)手段來擴(kuò)充數(shù)據(jù)集的基數(shù),幫助提高訓(xùn)練效果。如圖3所示:
圖3 數(shù)據(jù)增強(qiáng)
實(shí)驗(yàn)在64位Window 10操作系統(tǒng)上進(jìn)行,CPU采用Inter Core i7-7700K,GPU采用NVIDIA GeForce GTX 1080Ti,內(nèi)存16GB,顯存11GB。
訓(xùn)練時(shí)參數(shù)設(shè)置如表1所示,其中初始化設(shè)置學(xué)習(xí)率為0.001,當(dāng)?shù)翐p失表現(xiàn)收斂時(shí)可停止訓(xùn)練。根據(jù)比較保存損失最小的模型參數(shù)由此來完成訓(xùn)練。
表1 訓(xùn)練參數(shù)
為評(píng)價(jià)對(duì)塔式起重機(jī)進(jìn)行定位的性能,針對(duì)訓(xùn)練后的網(wǎng)絡(luò)進(jìn)行測試,計(jì)算其對(duì)目標(biāo)的召回率和準(zhǔn)確率:
其中,TP為正確預(yù)測為塔吊裂縫的個(gè)數(shù),F(xiàn)P為將未能預(yù)測個(gè)數(shù),F(xiàn)N為錯(cuò)誤預(yù)測的個(gè)數(shù)。mAP為平均精度。
訓(xùn)練好的模型識(shí)別效果如圖4所示,實(shí)驗(yàn)結(jié)果表明mAP可達(dá)80.53%,且平均識(shí)別速度達(dá)到37f/s,基于YOLOv3算法的良好識(shí)別能力基本滿足捕捉檢查時(shí)裂縫的能力。在成功捕捉目標(biāo)時(shí),基于YOLOv3所提供的目標(biāo)坐標(biāo)等位置圖片位置信息對(duì)目標(biāo)區(qū)域進(jìn)行提取。
圖4 識(shí)別結(jié)果
通過YOLOv3與區(qū)域圖像提取我們可以得到目標(biāo)區(qū)域圖像。但是目標(biāo)檢測算法只能實(shí)現(xiàn)定位能力,具體幾何參數(shù)需要針對(duì)提取的圖像區(qū)域進(jìn)行圖像處理,如圖5所示。
圖5 裂縫區(qū)域提取
算法操作基于灰度圖像進(jìn)行所以首先將圖像轉(zhuǎn)換為灰度圖像并針對(duì)轉(zhuǎn)化后的圖像進(jìn)行圖像增強(qiáng),選擇分段式線性變換[8]提高圖像的對(duì)比度與品質(zhì),對(duì)于提取的裂縫圖像光度較暗的區(qū)域需要灰度拉伸,設(shè)置K值進(jìn)行灰度擴(kuò)展;相對(duì)應(yīng)的光度較強(qiáng)的區(qū)域灰度壓縮如圖6:
圖6 分段式線性變換與灰度直方圖
為了消除圖像中離散的噪點(diǎn),需要對(duì)處理后的圖像濾波處理,中值濾波相對(duì)于均值濾波等算法針對(duì)椒鹽和脈沖噪聲處理效果良好。經(jīng)過實(shí)驗(yàn)3×3為模板的中值濾波降噪效果良好,消除噪點(diǎn)的同時(shí)不會(huì)對(duì)裂縫的細(xì)節(jié)過分模糊化。實(shí)現(xiàn)降噪后的圖像可以閥值分割處理提取裂縫語義模型,如圖7所示實(shí)驗(yàn)通過比較最小誤差法和Otsu最大類間方差法的處理效果可以明顯看出Otsu的處理效果更好,從圖中捕捉裂縫輪廓,排除了大量干擾信息。類間方差核心公式如圖8所示。
圖7 最小誤差法與Otsu
獲取的圖像進(jìn)行膨脹腐蝕處理。膨脹腐蝕相當(dāng)于給與圖像一個(gè)濾波處理窗口,膨脹后腐蝕即消除一些無用的噪點(diǎn)同時(shí)保持裂縫區(qū)域的完整性、連續(xù)性輪廓。膨脹與腐蝕核心公式與效果如圖8所示。最后消除孤立噪聲并優(yōu)化處理,就此目標(biāo)區(qū)域圖像裂縫以二值圖像的形式并提取了較為完整的裂縫。
圖8 圖像處理流程
根據(jù)獲取的像素圖像遍歷像素后經(jīng)過輪廓跟蹤和區(qū)域面積測量可以很快得到面積、寬度、長度、周長等數(shù)據(jù)。本例中面積為379pixel,周長156pixel,縱深74pixel。上述數(shù)據(jù)都是基于像素值計(jì)算的,實(shí)際應(yīng)用時(shí)獲取拍攝距離d即可換算實(shí)際尺寸。由d換算出單位像素R(mm/pixel)、R1(mm2/pixel)。即可計(jì)算實(shí)際尺寸[9]。實(shí)驗(yàn)與實(shí)際數(shù)據(jù)對(duì)比得方法數(shù)據(jù)誤差在5%~18%區(qū)間。
實(shí)驗(yàn)表明識(shí)別精度mAP達(dá)80.53%基本滿足需求。針對(duì)捕捉后拍攝的圖像進(jìn)行一系列圖像處理算法獲取裂縫基于像素值的面積、周長、縱深等數(shù)據(jù),幫助專業(yè)人員對(duì)塔式起重機(jī)存在的危險(xiǎn)進(jìn)行評(píng)估和判斷,針對(duì)裂縫嚴(yán)重程度做出相應(yīng)的處理方案。取代傳統(tǒng)的人工檢查,保障檢查人員的人身安全又提高了檢測效率。具有廣泛的應(yīng)用前景和實(shí)際價(jià)值。
提出的方案具有極大的實(shí)用價(jià)值和應(yīng)用前景。但是也存在一些待解決問題:
1)YOLOv3犧牲了部分速度換取更好的識(shí)別精度,但識(shí)別精度仍有改善的空間,特別是應(yīng)用于工地復(fù)雜環(huán)境下仍然存在誤識(shí)別和漏識(shí)別等
2)針對(duì)圖像處理算法處理捕捉區(qū)域獲取裂縫參數(shù)仍有改進(jìn)的空間,處理后的裂縫圖像有時(shí)會(huì)出現(xiàn)不連續(xù)等問題,計(jì)算參數(shù)與實(shí)際值誤差還有提升的空間。
3)完成定量定位工作的同時(shí)還需引入定性工作,針對(duì)裂縫要有危險(xiǎn)等級(jí)的評(píng)定和提供相應(yīng)的處理意見,才能建立一個(gè)完整的檢測體系。針對(duì)上述問題下一步工作可通過改進(jìn)YOLOv3的網(wǎng)絡(luò)結(jié)構(gòu),針對(duì)損失函數(shù)進(jìn)行加權(quán),對(duì)識(shí)別框采用k-means等聚類算法進(jìn)行維度聚類等方法改善模型的性能。針對(duì)圖像處理嘗試更多區(qū)域分割算法等讓處理后的圖像更加貼近原始裂縫。而針對(duì)塔吊裂縫的危險(xiǎn)定級(jí)國內(nèi)還沒有相關(guān)的標(biāo)準(zhǔn),可以參考其他裂縫領(lǐng)域的定級(jí)評(píng)價(jià)指標(biāo),同時(shí)結(jié)合實(shí)際工程中處理經(jīng)驗(yàn),建立一個(gè)完整的裂縫定性體系。