秦 妍,梁 臻,婁 陽(yáng)
(1.北京市科學(xué)技術(shù)研究院城市安全與環(huán)境科學(xué)研究所,北京 100054;2.北京郵電大學(xué)現(xiàn)代郵政學(xué)院,北京 100876)
有關(guān)分析表明,大多數(shù)工業(yè)和建筑施工作業(yè)環(huán)境中發(fā)生的安全隱患事故,與工作人員是否佩戴安全防護(hù)裝備有關(guān)[1-2]。因此,為了保證員工在作業(yè)時(shí)安全防護(hù)裝備穿戴的完整性、正確性,在其進(jìn)入施工作業(yè)現(xiàn)場(chǎng)之前,進(jìn)行防護(hù)裝備檢查尤為必要[3-4]。傳統(tǒng)的管理方法主要是通過(guò)人工手段進(jìn)行監(jiān)督,但是這種方法效率較低,所受的主觀因素較多,容易疏忽對(duì)較小的安全防護(hù)裝備的檢查。近年來(lái),許多學(xué)者應(yīng)用監(jiān)控?cái)z像頭和計(jì)算機(jī)視覺(jué)技術(shù)來(lái)自動(dòng)獲取、分析和檢測(cè)施工人員的安全防護(hù)裝備,相關(guān)方法可以分為基于特征分類(lèi)的方法和基于深度學(xué)習(xí)的檢測(cè)算法兩大類(lèi)。
第一類(lèi)方法中,學(xué)者通常利用幾何特征、方向梯度直方圖(Histogram of Oriented Gradient,HOG)特征和顏色特征對(duì)安全裝備進(jìn)行檢測(cè),這些方法往往只關(guān)注于對(duì)安全帽的識(shí)別。例如,Li 等[5]根據(jù)顏色空間變換和顏色特征檢測(cè)安全帽,采用頭部定位的方法檢測(cè)頭盔的佩戴情況。Mneymneh 等[6]用HOG特征描述安全帽的形狀,用六角錐體顏色模型(Hue-Saturation-Value,HSV) 顏色特征描述顏色,結(jié)合這兩個(gè)特征對(duì)安全帽進(jìn)行檢測(cè)。Park 等[7]提取了整幅圖像的HOG 特征,然后將特征輸入支持向量機(jī)(Support Vector Machine,SVM) 中,進(jìn)而檢測(cè)安全帽。傳統(tǒng)的檢測(cè)方法在特定的環(huán)境下可以取得良好效果,但在真實(shí)復(fù)雜的環(huán)境中,其準(zhǔn)確率較低、計(jì)算開(kāi)銷(xiāo)較大、泛化能力不足,難以應(yīng)用在真實(shí)場(chǎng)景中。
隨著機(jī)器學(xué)習(xí)方法的發(fā)展,深度學(xué)習(xí)作為計(jì)算機(jī)視覺(jué)領(lǐng)域的一個(gè)研究熱點(diǎn),越來(lái)越多的研究者采用基于深度學(xué)習(xí)的方法實(shí)現(xiàn)個(gè)人安全防護(hù)裝備的檢測(cè)。Nath 等[8]將未知的安全裝備圖像與已知的安全裝備圖像進(jìn)行匹配,以搜索輸入圖像中可能的安全裝備信息。一些學(xué)者利用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN) 模型對(duì)安全裝備進(jìn)行分類(lèi)。例如,Wu 等[9]采用K 最鄰近分類(lèi)算法(KNearest Neighbors,KNN) 從視頻中捕捉移動(dòng)的物體,然后將其輸入CNN 模型,對(duì)行人、頭部和頭盔進(jìn)行分類(lèi)。Pradana 等[10]利用CNN 模型對(duì)工作人員佩戴的5 種安全裝備的情況進(jìn)行了分類(lèi)。Akbarzadeh、Wu 等[11-12]采用更快的區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Faster Region Convolutional Neural Network,F(xiàn)aster R-CNN) 模型檢測(cè)工作人員佩戴安全裝備的情況,檢測(cè)建筑現(xiàn)場(chǎng)的人體以及檢測(cè)安全帽和安全背心。Wu 等[13]采用單發(fā)多框架檢測(cè)器(Single Shot MultiBox Detector,SSD) 算法檢測(cè)施工人員是否戴安全帽及判斷安全帽的顏色。隨著一階段檢測(cè)模型(You Only Look Once,YOLO) 目標(biāo)檢測(cè)算法的發(fā)展,一些學(xué)者利用修改YOLO v3 算法[14-15]、YOLO v4算法[15-17]的網(wǎng)絡(luò)結(jié)構(gòu)來(lái)檢測(cè)施工現(xiàn)場(chǎng)工人的安全帽,大大提高了準(zhǔn)確性和實(shí)時(shí)性。但是這些方法在實(shí)際應(yīng)用中往往存在一些缺陷,比如Pradana 等[10]提出的方法不適用于室外環(huán)境,Wu 等[12]提出的方法無(wú)法實(shí)現(xiàn)實(shí)時(shí)檢測(cè),Long 等[18]提出的方法無(wú)法確定安全帽是否戴在頭上[13],Wu 等[19]提出的方法只適用于行人直立的場(chǎng)景和簡(jiǎn)單的背景,Park 等[20]提出的方法容易受到照明條件的影響。
綜上所述,近年來(lái),基于目標(biāo)檢測(cè)的算法被廣泛應(yīng)用于工作人員安全防護(hù)裝備的檢測(cè)任務(wù)中。在目前的應(yīng)用中,單個(gè)目標(biāo)提取的特征較為明顯,模型易于判斷,但是在檢測(cè)裝備較多、環(huán)境更為復(fù)雜、光線(xiàn)較弱的情況下,模型的檢測(cè)精度不佳,安全裝備的佩戴位置難以判斷。針對(duì)以上問(wèn)題,綜合施工作業(yè)環(huán)境下人員的需要穿戴安全裝備的特點(diǎn),本文提出了一種基于YOLO v4 算法和DeepSort 算法的多目標(biāo)檢測(cè)方法,結(jié)合目標(biāo)檢測(cè)與目標(biāo)跟蹤算法,通過(guò)分析安全防護(hù)裝備檢測(cè)框與人體檢測(cè)框的IoU 值與相對(duì)位置關(guān)系判斷施工人員佩戴安全裝備的情況,對(duì)不合格的情況進(jìn)行報(bào)警,以此來(lái)保證員工在進(jìn)入施工作業(yè)現(xiàn)場(chǎng)時(shí)其安全防護(hù)裝配的完整性和正確性。本文的創(chuàng)新點(diǎn)和貢獻(xiàn)如下。
1) 由于建筑施工具有環(huán)境復(fù)雜、光線(xiàn)不穩(wěn)定的特點(diǎn),本文利用統(tǒng)計(jì)方法對(duì)攝像頭獲取的數(shù)據(jù)進(jìn)行了擴(kuò)充,以解決模型泛化性能低的問(wèn)題。
2) 本文通過(guò)計(jì)算安全防護(hù)裝備檢測(cè)框與人體檢測(cè)框的交并比(Intersection over Union,IoU) 值,進(jìn)而將兩者匹配,檢測(cè)施工人員身上佩戴的安全裝備,以分析出未佩戴防護(hù)裝備的信息。
3) 本文通過(guò)安全防護(hù)裝備檢測(cè)框與人體檢測(cè)框的相對(duì)位置關(guān)系來(lái)判斷安全裝備是否在人體的合理的位置上,以此分析工作人員是否正確佩戴防護(hù)裝備。
為了保證員工在進(jìn)入施工作業(yè)環(huán)境之前正確佩戴了相應(yīng)的安全防護(hù)裝備,本文擬采用數(shù)據(jù)增強(qiáng)、目標(biāo)檢測(cè)以及目標(biāo)追蹤等技術(shù)解決此問(wèn)題。首先,采用基于統(tǒng)計(jì)的數(shù)據(jù)增強(qiáng)方法,對(duì)數(shù)據(jù)集進(jìn)行擴(kuò)充;其次,利用YOLO v4 目標(biāo)檢測(cè)算法模型檢測(cè)出人體目標(biāo),利用DeepSort 目標(biāo)跟蹤算法對(duì)人體進(jìn)行跟蹤;然后,利用YOLO v4 算法進(jìn)行安全裝備的檢測(cè);接著,遍歷每一個(gè)人的檢測(cè)框,分析安全裝備與人體檢測(cè)框的IoU 重疊比,找到屬于每個(gè)人體檢測(cè)框的安全裝備;之后,根據(jù)重疊比進(jìn)行人體區(qū)域內(nèi)是否包含全部安全裝備的判斷,根據(jù)人體檢測(cè)框與安全裝備檢測(cè)框的相對(duì)位置關(guān)系進(jìn)行裝備佩戴位置是否正確的判斷;最后,若檢測(cè)到工人未佩戴齊全或佩戴方式錯(cuò)誤,顯示出需要佩戴的安全裝備信息或佩戴錯(cuò)誤的裝備信息并進(jìn)行報(bào)警。
本文應(yīng)用的YOLO v4 算法是Bochkovskiy 等于2020 年提出的一種目標(biāo)檢測(cè)算法,在利用YOLO v4算法進(jìn)行人體檢測(cè)時(shí),由于畫(huà)面變化復(fù)雜、光線(xiàn)不穩(wěn)定等因素,容易出現(xiàn)掉幀現(xiàn)象,即某一幀檢測(cè)不出人體的存在,無(wú)法進(jìn)行準(zhǔn)確的定位,所以本文采用了DeepSort 算法對(duì)檢測(cè)到的人體進(jìn)行跟蹤,避免出現(xiàn)掉幀導(dǎo)致檢測(cè)失敗的現(xiàn)象,DeepSort 是一種多目標(biāo)跟蹤算法。根據(jù)相關(guān)資料和實(shí)際應(yīng)用場(chǎng)景,本文檢測(cè)的安全裝備包括便攜式氣體檢測(cè)儀、安全帽、安全繩以及礦用安全帽燈,算法的總體流程見(jiàn)圖1。
圖1 本文算法的總體流程圖
根據(jù)光照條件的不同,施工現(xiàn)場(chǎng)的圖片質(zhì)量不一,若輸入視頻幀的圖像亮度與訓(xùn)練集圖像的亮度相差較大,會(huì)發(fā)生圖片特征模糊的問(wèn)題,造成對(duì)人員安全防護(hù)裝備的漏檢或誤檢。訓(xùn)練集中的圖片亮度均在正常范圍內(nèi),模型對(duì)該亮度條件上的輸入具有較好的泛化效果,但是當(dāng)輸入圖片的亮度變化較為劇烈時(shí),模型較難正確識(shí)別監(jiān)控視頻中人員所穿戴的安全防護(hù)裝備,此時(shí)模型的泛化性較差。
針對(duì)這個(gè)問(wèn)題,本文提出了一種基于統(tǒng)計(jì)的數(shù)據(jù)增強(qiáng)方法,對(duì)獲取的圖像進(jìn)行R、G、B 信息的統(tǒng)計(jì),計(jì)算它們的均值,然后設(shè)置一個(gè)閾值,并在此均值上進(jìn)行增加和減少操作,使新圖像的R、G、B 值在一定范圍內(nèi)波動(dòng),以擴(kuò)充數(shù)據(jù)集,具體原理見(jiàn)圖2,這種方式能有效避免亮度差異導(dǎo)致的模型泛化性能低的問(wèn)題。
圖2 基于統(tǒng)計(jì)的數(shù)據(jù)增強(qiáng)方法
對(duì)于工作人員安全防護(hù)裝備的檢測(cè),包括三方面研究?jī)?nèi)容:一是人員匹配,用于將檢測(cè)到的裝備與相應(yīng)的施工人員進(jìn)行匹配;二是數(shù)量檢測(cè),用于檢測(cè)每個(gè)施工人員的安全裝備是否佩戴齊全;三是位置檢測(cè),用于檢測(cè)施工人員的安全裝備是否佩戴正確。
2.2.1 安全裝備與人員的匹配
對(duì)于工作人員是否完整地、正確地佩戴安全裝備這一問(wèn)題,關(guān)鍵是解決安全裝備與每位工作人員的匹配,從而對(duì)每位人員的佩戴狀態(tài)進(jìn)行分析。本文首先利用YOLO v4 模型和DeepSort 算法得到人體和安全裝備目標(biāo)的檢測(cè)框信息;其次,遍歷每一個(gè)人體的檢測(cè)框,將檢測(cè)得到的人體與安全裝備的信息進(jìn)行對(duì)比,計(jì)算它們之間的IoU 值,即兩個(gè)邊界框交集和并集之比;然后,通過(guò)設(shè)定閾值,并與它們之間的IoU 值進(jìn)行比較,從而判斷安全裝備是否依附在人體上;最后,將依附在人體上的裝備與人體進(jìn)行匹配對(duì)應(yīng),得到每個(gè)人員佩戴的所有安全裝備信息。裝備與人員進(jìn)行匹配的關(guān)鍵步驟是計(jì)算兩者的檢測(cè)框IoU 值,其過(guò)程見(jiàn)圖3。通過(guò)計(jì)算交并比,判斷裝備是否依附在人體上,若該值大于設(shè)定的閾值,則認(rèn)為此人員佩戴了這個(gè)設(shè)備;否則,認(rèn)為該設(shè)備沒(méi)有依附在此人員身上。
圖3 安全裝備與人體檢測(cè)框計(jì)算交并比示意圖
2.2.2 安全防護(hù)裝備的數(shù)量檢測(cè)
上文已經(jīng)對(duì)檢測(cè)出的每個(gè)安全裝備匹配了相應(yīng)的工作人員,安全防護(hù)裝備的數(shù)量檢測(cè)工作在此基礎(chǔ)上進(jìn)行。根據(jù)人體檢測(cè)結(jié)果,遍歷每位工作人員與依附在他們身上的安全裝備,并對(duì)這些安全裝備進(jìn)行分析,檢查檢測(cè)框內(nèi)是否包含所需的4 種安全裝備(安全帽、礦用安全帽燈、氣體檢測(cè)儀和安全繩),從而判斷工作人員是否完整佩戴了安全防護(hù)裝備,并對(duì)未佩戴的設(shè)備進(jìn)行顯示及報(bào)警。該算法的具體流程見(jiàn)圖4。
圖4 安全防護(hù)裝備的數(shù)量檢測(cè)算法流程圖
2.2.3 安全防護(hù)裝備的位置檢測(cè)
對(duì)于安全防護(hù)裝備佩戴方式是否正確的問(wèn)題,主要是利用人體與裝備檢測(cè)框之間的相對(duì)位置關(guān)系進(jìn)行判斷。在利用YOLO v4 模型和DeepSort 算法對(duì)人體進(jìn)行檢測(cè)和跟蹤后,實(shí)時(shí)獲取人體檢測(cè)框,設(shè)置閾值將人體檢測(cè)框分為上、中、下三部分,判斷每個(gè)安全裝備是否在正確的區(qū)域,從而判斷工作人員是否正確佩戴了相應(yīng)的安全裝備,人體檢測(cè)框區(qū)域劃分見(jiàn)圖5。
圖5 對(duì)人體檢測(cè)框分區(qū)域示意圖
本文設(shè)置安全帽、礦用安全帽燈應(yīng)該在人體檢測(cè)框上部區(qū)域,安全繩應(yīng)位于人體檢測(cè)框的中部區(qū)域,氣體檢測(cè)儀可以位于人體檢測(cè)框的中部區(qū)域或下部區(qū)域,如果設(shè)備不在合理的區(qū)域內(nèi),及時(shí)顯示佩戴錯(cuò)誤的安全裝備并進(jìn)行報(bào)警。該算法的具體流程見(jiàn)圖6。
圖6 安全防護(hù)裝備的位置檢測(cè)算法流程圖
2.2.4 整體檢測(cè)流程
以安全帽的檢測(cè)為例,整體檢測(cè)流程見(jiàn)圖7。首先,檢測(cè)人體區(qū)域與安全帽的區(qū)域,得到兩者的檢測(cè)框。其次,計(jì)算兩者的IoU 值,根據(jù)設(shè)定的閾值來(lái)判斷安全帽是否依附在人體上,若是,說(shuō)明該人員佩戴了安全帽;否則,說(shuō)明該人員未佩戴安全帽。然后,檢查安全帽的佩戴位置是否正確,根據(jù)設(shè)定的規(guī)則,安全帽應(yīng)該位于人體檢測(cè)框的上部;若不是,說(shuō)明該人員佩戴方式錯(cuò)誤。最后,根據(jù)判斷結(jié)果顯示未佩戴安全帽或佩戴位置錯(cuò)誤的信息并進(jìn)行報(bào)警。其他個(gè)人安全防護(hù)裝備,如礦用安全帽燈、氣體檢測(cè)儀、安全繩等檢測(cè)方法與之類(lèi)似。
圖7 安全帽檢測(cè)流程圖
本文實(shí)驗(yàn)的環(huán)境配置見(jiàn)表1,本文實(shí)驗(yàn)所用的數(shù)據(jù)集均自主利用攝像頭采集,在施工場(chǎng)所拍攝工作人員正確佩戴、錯(cuò)誤佩戴以及部分佩戴安全防護(hù)裝備情況的圖片以及視頻。之后,利用圖像標(biāo)注工具,對(duì)人體以及安全防護(hù)裝備進(jìn)行標(biāo)注?;跀z像頭獲取的數(shù)據(jù),按照3:1:1 的比例劃分訓(xùn)練集、驗(yàn)證集和測(cè)試集。在訓(xùn)練中,epoch 設(shè)置為300,batch_size 設(shè)置為64,其他參數(shù)為默認(rèn)。
表1 實(shí)驗(yàn)環(huán)境配置
本文使用目標(biāo)檢測(cè)領(lǐng)域普遍采用的4 項(xiàng)評(píng)價(jià)指標(biāo)對(duì)本文所用目標(biāo)檢測(cè)模型進(jìn)行評(píng)估,分別是準(zhǔn)確率(Precision)、召回率(Recall)、平均精度(Average Precision,AP) 與平均精度均值(mean Average Precision,mAP)。其中,準(zhǔn)確率和召回率的計(jì)算公式為
式中:TP為真陽(yáng)性樣本數(shù)(正確檢測(cè)樣本數(shù));FP為假陽(yáng)性樣本數(shù)(誤檢樣本數(shù));FN 為假陰性樣本數(shù)(漏檢樣本數(shù))。
本文利用獲取的實(shí)驗(yàn)數(shù)據(jù),選取了Faster RCNN 模型、YOLO v3 模型以及YOLO v4 模型進(jìn)行對(duì)比,將以上幾個(gè)指標(biāo)進(jìn)行評(píng)價(jià),實(shí)驗(yàn)結(jié)果見(jiàn)表2。由表2 可知,YOLO v4 是一種檢測(cè)效果優(yōu)異的檢測(cè)模型,在本文實(shí)驗(yàn)類(lèi)別上的檢測(cè)精度較高,該方法的處理速度約為每秒18 張圖片,基本能滿(mǎn)足對(duì)安全裝備的實(shí)時(shí)檢測(cè)需求。
表2 目標(biāo)檢測(cè)模型對(duì)比結(jié)果
本文使用多目標(biāo)跟蹤準(zhǔn)確度(Multiple Object Tracking Accuracy,MOTA) 和多目標(biāo)跟蹤精度(Multiple Object Tracking Precision,MOTP) 兩個(gè)指標(biāo)對(duì)本文采用目標(biāo)跟蹤模型進(jìn)行綜合評(píng)估。MOTA利用錯(cuò)誤率計(jì)算跟蹤器的準(zhǔn)確性,其表達(dá)式為
式中:G 為真實(shí)目標(biāo)的總數(shù);IDs 為當(dāng)前時(shí)刻所有ID切換的數(shù)量。MOTP 利用重疊率計(jì)算跟蹤器的精確率,其表達(dá)式為
式中:d 為目標(biāo)的檢測(cè)框與跟蹤框的距離;C 為檢測(cè)框與跟蹤框匹配的數(shù)目。
本文將Sort 算法與DeepSort 算法進(jìn)行對(duì)比,對(duì)比結(jié)果見(jiàn)表3。由表3 可知,DeepSort 算法由于加入了表觀特征和運(yùn)動(dòng)特征,跟蹤準(zhǔn)確度和精確率均高于Sort 算法。
表3 目標(biāo)跟蹤模型對(duì)比結(jié)果
為探究真實(shí)環(huán)境下的檢測(cè)效果,利用網(wǎng)絡(luò)攝像頭對(duì)獲取的圖像進(jìn)行實(shí)時(shí)檢測(cè),分析圖像中的工作人員是否完整正確地佩戴了安全裝備。首先,讓工作人員佩戴齊全所有的安全裝備,在沒(méi)有遮擋的情況下,該模型能準(zhǔn)確地、全面地檢測(cè)出所有的安全裝備(見(jiàn)圖8);然后,在工作人員進(jìn)行正常作業(yè)時(shí),對(duì)安全裝備進(jìn)行定位及檢測(cè)(見(jiàn)圖9),該模型能檢測(cè)出每位人員佩戴安全裝備的情況,實(shí)時(shí)顯示裝備信息并對(duì)未佩戴或佩戴錯(cuò)誤的裝備進(jìn)行提醒和警告。
圖9 真實(shí)場(chǎng)景檢測(cè)效果展示
本文將施工作業(yè)場(chǎng)景下工作人員需要佩戴的安全防護(hù)裝備檢測(cè)任務(wù)分為兩個(gè)子任務(wù)進(jìn)行,分別是人體檢測(cè)和安全裝備檢測(cè)。通過(guò)攝像頭采集數(shù)據(jù),利用YOLO v4 算法和DeepSort 算法對(duì)人體和安全防護(hù)裝備進(jìn)行檢測(cè),然后通過(guò)訓(xùn)練好的模型來(lái)獲取人體和安全防護(hù)裝備的檢測(cè)框,計(jì)算檢測(cè)框之間的IoU 值和相對(duì)位置,判斷該工作人員是否完整正確地佩戴了安全裝備,然后輸出最終的檢測(cè)結(jié)果并進(jìn)行報(bào)警。實(shí)驗(yàn)結(jié)果表明,本文方法平均檢測(cè)精度較高,可滿(mǎn)足工業(yè)應(yīng)用的精確度要求,實(shí)現(xiàn)智能化的實(shí)時(shí)監(jiān)控。未來(lái)研究中,可以對(duì)安全裝備的類(lèi)型進(jìn)行擴(kuò)展,檢測(cè)更多的相關(guān)裝備,還可以與人體行為檢測(cè)相結(jié)合,進(jìn)一步排查不安全因素,加強(qiáng)施工人員的安全保障。