丁咚,邱曉峰
(上海煙草集團有限責(zé)任公司上海卷煙廠,上海 200082)
近年來,人工智能技術(shù)的崛起受到了社會各界的高度關(guān)注,深度學(xué)習(xí)作為人工智能技術(shù)的重要分支推動著傳統(tǒng)制造業(yè)運營模式的轉(zhuǎn)型,受到了業(yè)界的廣泛認(rèn)可。圖像識別作為深度學(xué)習(xí)中重要應(yīng)用領(lǐng)域之一,其核心為卷積神經(jīng)網(wǎng)絡(luò),相較于傳統(tǒng)的神經(jīng)網(wǎng)絡(luò),其主要優(yōu)勢在于權(quán)重共享以及局部空間信息的有效利用[1]。當(dāng)前,工業(yè)領(lǐng)域中較為常用的深度學(xué)習(xí)算法有目標(biāo)檢測算法和人體關(guān)鍵點算法等,其中,地面異物的檢測有助于增強生產(chǎn)車間的安全管理,保證現(xiàn)場工作人員的人身安全,常見的地面異物包括機油滴漏、地面積水等。
在實際生產(chǎn)過程中,設(shè)備器件老化、螺栓松動等問題會引起機油、水的異常滲出,并滴落在過道上,若不進行及時清理可能會引發(fā)安全事故。為了能夠及時應(yīng)對此類問題,通常情況下,生產(chǎn)車間會配置巡檢人員定時對現(xiàn)場的異常情況進行排查,事實上,這些人員工作量不飽和,且無法承擔(dān)其他非現(xiàn)場的工作,導(dǎo)致了車間人力資源的浪費。本文針對地面機油滴落場景,如圖1所示,采用了一種基于YOLO的檢測模型,基于現(xiàn)場采集的地面數(shù)據(jù),對現(xiàn)場過道異常情況進行實時分析,并對異常情況進行實時報警、預(yù)警,實現(xiàn)對生產(chǎn)車間的智能巡檢。
本文將機油滴漏識別算法的構(gòu)建分為以下三部分,即數(shù)據(jù)處理、模型訓(xùn)練以及模型優(yōu)化,整體流程如圖2所示。
目標(biāo)檢測模型主要可以分為兩類,即雙階段(two stage)和單階段(one stage)。常用的雙階段目標(biāo)檢測模型有RCNN、fast RCNN以及faster RCNN,常用的單階段檢測模型有YOLO和SSD。Girshick等人提出了RCNN網(wǎng)絡(luò),將卷積神經(jīng)網(wǎng)絡(luò)和支持向量機相結(jié)合應(yīng)用于目標(biāo)檢測任務(wù)中[2]:在RCNN網(wǎng)絡(luò)基礎(chǔ)上減少了重復(fù)運算,將回歸與分類網(wǎng)絡(luò)一起進行訓(xùn)練,提升了模型速度;將候選區(qū)域生成、特征提取、分類、回歸四個步驟進行聚合,進一步地提升了模型效率。單階段的檢測模型YOLO,實現(xiàn)了單個網(wǎng)絡(luò)完成整個檢測流程,并將目標(biāo)檢測作為回歸問題進行處理;在候選框的基礎(chǔ)上進行回歸,得到候選框的偏移值,并采用多尺度特征圖用于檢測。在YOLO基礎(chǔ)上調(diào)整了網(wǎng)絡(luò)結(jié)構(gòu),采用了多尺度輸出,使得模型適用于小目標(biāo)檢測。
深度學(xué)習(xí)模型依賴于大規(guī)模數(shù)據(jù)的支持,而數(shù)據(jù)量的提升帶來了人力和時間上的大量投入。針對上述問題,本文采用數(shù)據(jù)合成的方式人工生成訓(xùn)練數(shù)據(jù),將采集到的背景和素材進行隨機融合,得到具有與真實樣本相似特征的數(shù)據(jù)。
分別采集背景數(shù)據(jù)和機油數(shù)據(jù),通過摳圖的方式提取機油,并將機油樣本保存為背景透明的圖像,再以隨機的方式將機油樣本與背景數(shù)據(jù)進行匹配融合。在合成過程中,增加了旋轉(zhuǎn)、亮度調(diào)整等操作來增強樣本的多樣性,同時也提升了數(shù)據(jù)的真實性,由于數(shù)據(jù)合成時其位置是已知的,因此同時能夠獲取數(shù)據(jù)標(biāo)注。這種數(shù)據(jù)合成的方式優(yōu)勢在于節(jié)省了數(shù)據(jù)采集以及人工標(biāo)注的時間[3]。
本文采用基于YOLO的檢測模型實現(xiàn)對車間地面機油滴漏的識別,模型結(jié)構(gòu)如圖3所示。
在數(shù)據(jù)預(yù)處理中,采用了Mosaic數(shù)據(jù)增強方法來豐富訓(xùn)練數(shù)據(jù)的多樣性,分別對四張圖像進行翻轉(zhuǎn)、縮放、色域變化等操作,將經(jīng)過圖像增強后的四張圖像進行拼接,拼接后的新圖像將作為模型的輸入,每一張拼接后圖像包含了拼接前四張圖像的所有信息,因此,在很大程度上豐富了待檢測對象的背景。
在神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)上,使用了跨階段局部網(wǎng)絡(luò)(CSP)作為模型主體(backbone)來提取圖像特征,選用了后融合的方式,使得模型在反向傳遞中,融合節(jié)點前的梯度的差異最大化,相較于瓶頸結(jié)構(gòu),CSP結(jié)構(gòu)減少了算力消耗,平衡了每一層的計算,避免了梯度信息的重復(fù)利用,在提升了模型的準(zhǔn)確率的同時減少了網(wǎng)絡(luò)參數(shù)量;在此基礎(chǔ)上,將模型前三層卷積層替換成了focus結(jié)構(gòu),對于每一張?zhí)卣饔成鋱D,每隔一個像素進行采樣并組合,原特征映射圖被拆分為四份,將四張圖像進行通道維度上的拼接(concatenate),此時通道數(shù)擴大了4倍,空間信息分布至通道維度上,再對新特征映射圖進行卷積,相較于直接對原圖進行卷積,focus模塊擴大了卷積核的覆蓋區(qū)域,因此,該結(jié)構(gòu)的優(yōu)勢可以總結(jié)為以下幾點,在下采過程中擴大了感受視野,并且空間信息得到了最大程度的保留,另外,相較于修改前的三層卷積,focus結(jié)構(gòu)降低了參數(shù)量,提升了模型計算速度[4]。
在Neck結(jié)構(gòu)中采用特征金字塔(FPN)和路徑增強(PAN)。由于不同尺度的特征映射圖包含了不同的信息,淺層特征映射圖通常包含更多的低級特征(如紋理信息)且尺寸較大,而深層特征映射圖通常包含更多的語義信息,淺層特征有利于模型進行定位,而深層特征有利于模型進行分類。首先,空間金字塔結(jié)構(gòu)主要分為兩條路徑,一條路徑自底向上,該路徑與傳統(tǒng)卷積層相似,提取圖像特征并減小圖像尺寸,另一條路徑自頂向下,其輸入為第一條路徑的輸出,以上采樣的方式對特征映射圖尺寸進行放大,兩條路徑之間相同尺度的特征映射圖相互連接,該結(jié)構(gòu)提升了模型對小目標(biāo)物體的識別率,并保留了更多的語義特征。在此基礎(chǔ)上,路徑增強結(jié)構(gòu)在特征金字塔后再次采用自底向上的結(jié)構(gòu),將淺層大尺度定位特征向深層傳遞。因此,通過將特征金字塔與路徑增強結(jié)構(gòu)相結(jié)合,既增強了語義信息,同時也保留了定位特征[5]。
針對不同尺寸的目標(biāo),網(wǎng)絡(luò)輸出層設(shè)置了三種不同尺度的輸出,輸出結(jié)果為基于預(yù)設(shè)的錨定框的相對位置、置信度以及類別概率。
訓(xùn)練中,采用了GIoU損失函數(shù)和Focal損失函數(shù)分別對預(yù)測框和預(yù)測結(jié)果進行約束。其中,GIoU損失函數(shù)定義如下:
其中,IoU為預(yù)測框與標(biāo)注框的交并比,Ac為預(yù)測框與標(biāo)注框外界的最小矩形面積,U為預(yù)測框與標(biāo)注框的并集。
Focal損失函數(shù)定義如下:
其中,p為預(yù)測置信度和類別概率,γ因子增加了錯分類樣本的權(quán)重,α因子平衡正負(fù)樣本。
本文采用了Adam優(yōu)化算法來迭代更新網(wǎng)絡(luò)參數(shù),批尺寸(batch size)為16,初始學(xué)習(xí)率為1×10-4,訓(xùn)練迭代次數(shù)設(shè)置為100,在訓(xùn)練過程中,采用了余弦學(xué)習(xí)率衰減方法對學(xué)習(xí)率進行調(diào)整。
本文中使用人工合成和真實數(shù)據(jù)的混合數(shù)據(jù)作為模型的訓(xùn)練數(shù)據(jù)。采集了生產(chǎn)車間的地面作為實驗背景、滴落的機油樣本作為實驗素材,每張地面背景圖像中隨機合成了1~5片機油樣本,共合成了一千張圖像作為訓(xùn)練數(shù)據(jù)集。生成的訓(xùn)練數(shù)據(jù)的效果如圖4所示。將合成數(shù)據(jù)訓(xùn)練得到的初版模型進行測試,將測試數(shù)據(jù)中效果較差的真實數(shù)據(jù)加入訓(xùn)練數(shù)據(jù)后再次進行訓(xùn)練,迭代優(yōu)化模型直至模型達(dá)到測試標(biāo)準(zhǔn)[6]。
在待測試區(qū)域隨機倒5片機油,測試前需要確定能夠通過相機觀察到機油位置,使用模型對地面滴漏機油進行識別。對于每片機油,若模型能夠?qū)⑵渥R別,則視為識別成功,反之則識別失敗,對上述測試過程重復(fù)5次,并記錄每次的實驗結(jié)果。
本文選用精確率(precision)和召回率(recall)作為量化標(biāo)準(zhǔn),精確率和召回率計算公式如下所示:
其中,TP表示真正類,F(xiàn)P表示假正類,F(xiàn)N表示假負(fù)類。
實驗的量化結(jié)果如表1所示,可視化效果如圖5所示。通過觀察實驗結(jié)果可以得出,模型在不同拍攝條件下均能夠檢測出機油的位置,且模型在準(zhǔn)確率和召回率兩個指標(biāo)上分別達(dá)到了100%和94.1%。針對漏檢數(shù)據(jù)進行統(tǒng)計,當(dāng)前模型能夠檢測的最小機油面積占比為0.03%。結(jié)合上述分析可以證明當(dāng)前模型在機油滴漏檢測任務(wù)中的有效性。
表1 實驗結(jié)果
本文采用深度學(xué)習(xí)模型對地面滴落的機油進行識別,為了節(jié)省人工標(biāo)注以及數(shù)據(jù)采集的時間,采用了一種人工合成的方式生成訓(xùn)練數(shù)據(jù),使用了YOLO目標(biāo)檢測模型對生成數(shù)據(jù)進行訓(xùn)練,得到一種輕量級的檢測模型,并通過實驗證明了該模型的有效性。