黨偉超, 史云龍, 白尚旺, 高改梅, 劉春霞
(太原科技大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院, 山西 太原 030024)
目前,采煤機(jī)械化程度越來越高,為了保障井下生產(chǎn)工作的正常運(yùn)轉(zhuǎn)和用電安全,煤礦通常都會(huì)制定井下配電室巡檢制度。一般情況下,巡檢制度要求巡檢人員檢查各儀表和信號(hào)裝置是否指示正常;檢查導(dǎo)線、設(shè)備開關(guān)、接觸器和接線端有無過熱及打火現(xiàn)象;檢查設(shè)備的工作噪聲有無明顯變化,并對(duì)配電裝置、儀表表面和室內(nèi)環(huán)境進(jìn)行清掃。由此可見,一套完整的巡檢行為通常包含多個(gè)具體的巡檢動(dòng)作,這些具體巡檢動(dòng)作可分為站立檢測(cè)、下蹲檢測(cè)、來回走動(dòng)、站立記錄和坐下記錄5類。但是,在實(shí)際巡檢過程中,有時(shí)巡檢人員并未按規(guī)定要求完成必要的巡檢動(dòng)作,這種行為會(huì)導(dǎo)致事故發(fā)生的概率大大增加[1]。當(dāng)前大部分煤礦企業(yè)主要通過檢查紙質(zhì)記錄及人工查看監(jiān)控視頻方式來監(jiān)督巡檢人員的工作,這類做法成本高、效率低。為此,有學(xué)者提出利用深度學(xué)習(xí)技術(shù)對(duì)井下配電室巡檢行為進(jìn)行識(shí)別。楊清翔等[2]采用區(qū)域建議網(wǎng)絡(luò)生成井下行人候選區(qū)域,采用動(dòng)態(tài)自適應(yīng)池化方法對(duì)不同特點(diǎn)的池化域進(jìn)行自適應(yīng)池化操作,提高了網(wǎng)絡(luò)訓(xùn)練和檢測(cè)的速度。莫宏偉等[3]將OHEM(Online Hard Example Mining)算法和批量規(guī)范化算法與Faster R-CNN算法進(jìn)行改進(jìn)結(jié)合,可以有效識(shí)別出靜態(tài)圖像中存在的小樣本特征。王琳等[4]結(jié)合PSPnet(金字塔場(chǎng)景解析網(wǎng)絡(luò))中的金字塔池化單元,引入充分的上下文信息,提出了井下行人檢測(cè)網(wǎng)絡(luò)YOLOv2_PPM,提升了井下行人檢測(cè)的準(zhǔn)確率。李偉山等[5]對(duì)RPN(區(qū)域候選網(wǎng)絡(luò))結(jié)構(gòu)進(jìn)行了改進(jìn),提出了一種“金字塔RPN”結(jié)構(gòu),并利用特征融合技術(shù)將底層特征和高層語義特征進(jìn)行融合來共同實(shí)現(xiàn)目標(biāo)的分類。李現(xiàn)國(guó)等[6]基于DenseNet網(wǎng)絡(luò)和ResNet網(wǎng)絡(luò)改進(jìn)SSD(Single Shot MultiBox Detector)網(wǎng)絡(luò)的基礎(chǔ)網(wǎng)絡(luò)和輔助網(wǎng)絡(luò),提出了一種井下視頻行人檢測(cè)方法。王勇[7]通過研究背景差分法原理,分析了基于混合高斯建模的背景構(gòu)造原理,在諸多不確定性因素下,實(shí)現(xiàn)了序列視頻的自適應(yīng)背景構(gòu)建。
綜上可知,現(xiàn)有研究方法的重點(diǎn)在于視頻動(dòng)作的分類,并取得了較好效果。但在實(shí)際應(yīng)用中,對(duì)于端到端的視頻檢測(cè)任務(wù),不僅需要識(shí)別巡檢動(dòng)作的類別,還需要預(yù)測(cè)巡檢動(dòng)作發(fā)生的開始時(shí)間和結(jié)束時(shí)間。并且這類研究以監(jiān)督學(xué)習(xí)的方式訓(xùn)練網(wǎng)絡(luò),監(jiān)督學(xué)習(xí)需要標(biāo)注視頻的每一幀,存在數(shù)據(jù)集制作繁瑣、訓(xùn)練時(shí)間較長(zhǎng)等問題。因此,基于弱監(jiān)督學(xué)習(xí)的動(dòng)作定位問題也逐漸引起關(guān)注。目前,弱監(jiān)督動(dòng)作定位方法有2類:第1類是自上向下的方法,這類方法首先學(xué)習(xí)一個(gè)視頻級(jí)別的分類器,然后通過檢查產(chǎn)生的時(shí)間類激活映射(Temporal Class Activation Map,TCAM)[8]來獲得特征幀的注意力。TCAM被用來生成自上而下的、類感知的注意力映射。Wang Limin等[9]使用注意力權(quán)重對(duì)動(dòng)作進(jìn)行定位,同時(shí)提出了弱監(jiān)督行為識(shí)別和時(shí)序行為檢測(cè)任務(wù)。K.K. Singh等[10]提出了一種在訓(xùn)練過程中隨機(jī)隱藏部分幀的模型,該模型能夠在剩余幀中學(xué)習(xí)區(qū)分度較低的動(dòng)作特征。第2類是自下向上的方法,這類方法從原始數(shù)據(jù)中直接預(yù)測(cè)時(shí)間注意力,在視頻分類任務(wù)中優(yōu)化注意力,將注意力值高的部分視為動(dòng)作部分,其他視為背景部分。Zhong Jiaxing等[11]提出了一種擦除模型,擦除部分視頻片段后,可以更好地學(xué)習(xí)剩余視頻中的特征。但上述方法均非常依賴視頻分類模型,導(dǎo)致了在沒有視頻幀級(jí)別標(biāo)注的條件下很難區(qū)分動(dòng)作幀和背景幀。
在井下配電室場(chǎng)景中,監(jiān)控視頻視為由動(dòng)作幀和背景幀組成。其中,動(dòng)作幀為存在巡檢動(dòng)作的視頻幀,背景幀為無人在配電室中巡檢的視頻幀。為了降低數(shù)據(jù)集的制作成本并準(zhǔn)確地區(qū)分配電室監(jiān)控視頻中的動(dòng)作幀和背景幀,本文提出了一種基于條件變分自編碼器的巡檢行為檢測(cè)模型。該模型主要由判別注意力模型和生成注意力模型組成,利用判別注意力模型完成巡檢行為的分類任務(wù),對(duì)分類結(jié)果進(jìn)行后處理,完成巡檢行為的定位任務(wù)。為了提高定位任務(wù)的精度,加入基于條件變分自編碼器的生成注意力模型,利用條件變分自編碼器與解碼器的生成對(duì)抗對(duì)視頻的潛在特征進(jìn)行學(xué)習(xí)。在公共數(shù)據(jù)集和自制的井下配電室數(shù)據(jù)集上進(jìn)行測(cè)試,均取得了較為理想的結(jié)果。
由于不需視頻幀級(jí)別的標(biāo)簽,弱監(jiān)督學(xué)習(xí)方法通常是通過聚合所有相關(guān)視頻幀的特征進(jìn)行分類。視頻中的背景幀和動(dòng)作幀通?;祀s在一起,背景幀很容易被識(shí)別為動(dòng)作幀而影響檢測(cè)精度。為了區(qū)分背景幀和動(dòng)作幀,巡檢行為檢測(cè)模型需要捕獲它們之間的潛在差異。因此,增加生成注意力模型來模擬基于注意力的視頻特征,通過優(yōu)化生成注意力模型來學(xué)習(xí)注意力。巡檢行為檢測(cè)模型總體框架如圖1所示。
圖1 巡檢行為檢測(cè)模型總體框架Fig.1 Overall framework of inspection behavior detection model
首先利用特征提取模型分別提取出井下配電室監(jiān)控視頻的RGB特征與光流特征。然后將獲取到的RGB特征與光流特征輸入注意力模塊中進(jìn)行訓(xùn)練,其中,RGB特征與光流特征分開訓(xùn)練。網(wǎng)絡(luò)訓(xùn)練過程分為2個(gè)階段交替進(jìn)行:第1個(gè)階段凍結(jié)注意力模塊和分類模塊,訓(xùn)練條件變分自編碼器;第2個(gè)階段凍結(jié)條件變分自編碼器,訓(xùn)練注意力模塊和分類模塊。最后對(duì)判別注意力模型的輸出進(jìn)行后處理,最終輸出視頻中包含巡檢動(dòng)作的時(shí)間區(qū)間、動(dòng)作標(biāo)簽及置信度,即完成了巡檢動(dòng)作的分類及定位。
在完整的巡檢監(jiān)控視頻中采樣T幀視頻為1個(gè)片段,將這個(gè)片段切割為RGB幀,并使用TV-L1算法將RGB幀轉(zhuǎn)換為光流幀,再將光流幀轉(zhuǎn)換為矩陣數(shù)據(jù);將RGB和光流數(shù)據(jù)切分成若干不重疊的片段,每個(gè)片段為16幀。將這些片段輸入經(jīng)過Kinetics數(shù)據(jù)集預(yù)訓(xùn)練的I3D[12]網(wǎng)絡(luò)進(jìn)行特征提取,以獲得每個(gè)片段的1 024維特征(圖1)。在巡檢行為檢測(cè)模型訓(xùn)練過程中,RGB和光流特征將分開進(jìn)行訓(xùn)練。
注意力模塊用于提取特征幀的注意力,動(dòng)作幀會(huì)得到更高的注意力得分,相反,背景幀的注意力得分較低。特征xt(xt為第t(t=1,2,…,T)幀的特征,且xt∈Rd,R為實(shí)數(shù)集,d為特征維度)輸入注意力模塊后,得到注意力λt(λt為第t幀的注意力)。注意力Attention的表達(dá)式為
(1)
式中:Q為查詢值;K為鍵值;V為輸出值;softmax為邏輯回歸模型;dK為鍵值的維度。
巡檢行為檢測(cè)模型在注意力模塊中引入了多頭注意力機(jī)制[13]。多頭注意力機(jī)制可以描述為將Q、K和V分別用不同的、經(jīng)過訓(xùn)練的線性投影對(duì)dQ、dK和dV維進(jìn)行線性投影h次,然后將它們拼接起來并再次投影,得到最后的結(jié)果。dQ為查詢值的維度,dV為輸出值的維度。多頭注意力的表達(dá)式為
MultiHead(Q,K,V)=Concat(head1,
head2,…,headh)WO
(2)
(3)
在特征提取過程中,特征xt作為注意力模塊的輸入,dQ、dK、dV與xt的維度相同,輸出為特征的對(duì)應(yīng)權(quán)重。通過式(1)—式(3)可計(jì)算得到特征對(duì)應(yīng)的注意力。
判別注意力模型主要完成巡檢動(dòng)作分類任務(wù)。分類模塊是判別注意力模型的主要組成部分。判別注意力模型將注意力λt作為權(quán)重,連同視頻特征xt一起輸入分類模塊,產(chǎn)生視頻的前景特征xfg∈Rd:
(4)
使用1-λt作為權(quán)重來計(jì)算視頻的背景特征xbg∈Rd:
(5)
分類模塊利用前景和背景特征訓(xùn)練網(wǎng)絡(luò),輸出為該特征對(duì)應(yīng)每一分類的分?jǐn)?shù),即為特征的軟分類。在訓(xùn)練判別注意力模型期間,同時(shí)優(yōu)化注意力模塊和分類模塊。
(6)
KL(qφ(zt|xt,λt)‖pψ(zt|λt))
(7)
巡檢行為檢測(cè)模型包含條件變分自編碼器、分類模塊、解碼器、注意力4個(gè)模塊,為了使各個(gè)模塊在訓(xùn)練中優(yōu)化網(wǎng)絡(luò)參數(shù),從而提升巡檢行為檢測(cè)的準(zhǔn)確率,下面分別定義各自的損失函數(shù)。
定義條件變分自編碼器損失函數(shù)lCVAE為
KL(qφ(zt|xt,λt)‖pψ(zt|λt))≈
KL(qφ(zt|xt,λt)‖pψ(zt|λt))
(8)
(log2Σφ)(m)-1]
(9)
定義分類模塊損失函數(shù)le為
(10)
式中:lfg為前景損失函數(shù);α為平衡前景損失值和背景損失值的超參數(shù);lbg為背景損失函數(shù);pθ為分類網(wǎng)絡(luò),該網(wǎng)絡(luò)由一個(gè)全連接層和softmax層構(gòu)成;y為標(biāo)簽。
定義解碼器損失函數(shù)lre為
(11)
TCAM是某時(shí)間步上特定類的激活映射,可以為特征幀標(biāo)記指定動(dòng)作的注意力,確保輸出的時(shí)間區(qū)間與目標(biāo)動(dòng)作相對(duì)應(yīng)。給定一個(gè)帶有標(biāo)簽y的視頻,TCAM可表示為
(12)
(13)
(14)
在模型每一輪迭代訓(xùn)練中,先最小化lCVAE,然后最小化損失函數(shù)l:
l=le+γ1lre+γ2lguide
(15)
式中γ1和γ2分別為平衡解碼器損失值和注意力模塊損失值的超參數(shù)。
對(duì)分類模塊輸出的軟分類值進(jìn)行后處理,完成定位任務(wù)。將分類分?jǐn)?shù)高于閾值的分類均視為該部分可能的動(dòng)作類別,并為每一個(gè)動(dòng)作類別生成對(duì)應(yīng)的時(shí)間區(qū)間([time_start,time_end])和動(dòng)作分類置信度(confidence)。其中,[time_start,time_end]為動(dòng)作發(fā)生的開始時(shí)間和結(jié)束時(shí)間,單位為s;confidence為動(dòng)作分類置信度。輸出結(jié)果如圖1所示。
在后處理過程中,為了更精準(zhǔn)地完成動(dòng)作定位任務(wù),使用注意力區(qū)分背景幀和動(dòng)作幀,使用TCAM區(qū)分出包含特定動(dòng)作類別的幀,兩者相乘得到加權(quán)TCAM。過濾掉加權(quán)TCAM低于閾值的部分,將剩下部分在整段特征中的位置索引用于動(dòng)作定位。池化檢測(cè)出的每一個(gè)時(shí)間區(qū)間的加權(quán)TCAM,以得到置信度。
實(shí)驗(yàn)中所使用的數(shù)據(jù)集全部取自于井下配電室監(jiān)控視頻,并剪裁出其中包含清晰巡檢動(dòng)作的片段共174個(gè),這些片段涵蓋了站立檢測(cè)、下蹲檢測(cè)、來回走動(dòng)、站立記錄和坐下記錄5種動(dòng)作類別,如圖2所示。
(e) 坐下記錄圖2 巡檢動(dòng)作分類Fig.2 Inspection action classification
在這些動(dòng)作片段中,挑出76個(gè)動(dòng)作片段作為訓(xùn)練集,另外的98個(gè)動(dòng)作片段作為測(cè)試集,其中每一個(gè)動(dòng)作片段時(shí)長(zhǎng)大約為8 s,并且只包含一個(gè)動(dòng)作類別。
實(shí)驗(yàn)遵循THUMOS14數(shù)據(jù)集[15]給出的標(biāo)準(zhǔn)評(píng)估方案,記錄了在不同的交并比(IoU)閾值下的平均精度均值(mAP)。其中,當(dāng)IoU為0.5時(shí)得到的mAP最具代表性,記為mAP@0.5。同時(shí)為了分析分類性能,記錄了檢測(cè)出正確動(dòng)作類別的數(shù)量占對(duì)應(yīng)動(dòng)作真值數(shù)量的百分比。最終結(jié)果為5次以上運(yùn)行結(jié)果的平均值。
巡檢行為檢測(cè)模型是在PyTorch環(huán)境、單個(gè)NVIDIA GeForce GTX 1060 GPU上進(jìn)行樣本訓(xùn)練,使用Adam優(yōu)化器,學(xué)習(xí)率為0.001,每批數(shù)據(jù)量大小為32,每10次迭代測(cè)試一次。實(shí)驗(yàn)中,設(shè)置α為0.03,β為0.1,γ1在RGB流中設(shè)置為0.5,在光流中設(shè)置為0.3,γ2設(shè)置為0.1,隱變量z的維度為128,r設(shè)置為1,σ設(shè)置為1。后處理中,RGB閾值設(shè)置為0.03,光流閾值設(shè)置為0.08。
在注意力模塊中,頭的數(shù)量h為4,丟棄率dropout為0.1,輸入為1 024維的特征,輸出為特征對(duì)應(yīng)的注意力。注意力模塊包括縮放點(diǎn)積注意力層和1個(gè)全連接層。在分類模塊中,輸入為1 024維的帶權(quán)特征,輸出為該特征對(duì)應(yīng)的6個(gè)分類的得分。分類模塊由1個(gè)全連接層構(gòu)成。編碼器輸入為1 024維的特征和其對(duì)應(yīng)的注意力,輸出為128維的隱變量z。編碼器模塊包括3個(gè)全連接層,各層節(jié)點(diǎn)數(shù)依次為128、128和256。解碼器輸入為128維的隱變量z和特征的注意力,輸出為1 024維的重構(gòu)特征。解碼器模塊包括3個(gè)全連接層,各層節(jié)點(diǎn)數(shù)依次為128、128和1 024。
為了更好地評(píng)估巡檢行為檢測(cè)模型性能,在THUMOS14數(shù)據(jù)集和自制的巡檢行為數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)。在訓(xùn)練期間,訓(xùn)練集只提供每個(gè)視頻的分類標(biāo)簽。
在THUMOS14數(shù)據(jù)集中,視頻被分為20類動(dòng)作。按照慣例,選取200個(gè)視頻作為訓(xùn)練集,212個(gè)視頻作為測(cè)試集。每一個(gè)視頻平均包含15.5個(gè)動(dòng)作片段,每個(gè)動(dòng)作實(shí)例為幾秒到幾分鐘不等的片段。
在THUMOS14數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn),不同弱監(jiān)督動(dòng)作定位模型在THUMOS14數(shù)據(jù)集上的檢測(cè)結(jié)果對(duì)比見表1。
表1 不同模型在THUMOS14數(shù)據(jù)集上的檢測(cè)結(jié)果Table 1 Detection results of different models on the THUMOS14 dataset %
從表1可看出,Hide-and-Seek模型[10]的mAP@0.5為6.8%,這是由于在訓(xùn)練過程中隱藏了區(qū)分度較高的幀,導(dǎo)致檢測(cè)效果不佳;UntrimmedNet模型[9]的mAP@0.5為13.7%,這是由于在檢測(cè)時(shí)動(dòng)作邊界的動(dòng)作幀與背景幀存在混淆,導(dǎo)致定位效果不佳;SEOC模型[11]的mAP@0.5為15.9%,這是由于對(duì)包含多個(gè)不同動(dòng)作的視頻分類不準(zhǔn)確,導(dǎo)致檢測(cè)效果不佳;本文模型的mAP@0.5達(dá)到17.0%,優(yōu)于其他幾種模型,這表明本文模型相比其他幾種模型可做出更準(zhǔn)確的預(yù)測(cè)。
由于可獲得的配電室監(jiān)控視頻有限,導(dǎo)致自制的巡檢行為數(shù)據(jù)集的數(shù)據(jù)量較小。所以,采用遷移學(xué)習(xí)的方法,將經(jīng)過THUMOS14數(shù)據(jù)集訓(xùn)練后的模型參數(shù)遷移到自制的巡檢行為數(shù)據(jù)集上繼續(xù)訓(xùn)練。在巡檢行為數(shù)據(jù)集上的動(dòng)作檢測(cè)率見表2,由表2可看出,下蹲檢測(cè)動(dòng)作的分類準(zhǔn)確率并不高,這是由于下蹲檢測(cè)動(dòng)作與坐下記錄動(dòng)作極為相似,部分下蹲檢測(cè)動(dòng)作被識(shí)別為坐下記錄動(dòng)作,從而導(dǎo)致了這2個(gè)動(dòng)作的混淆。
表2 本文模型在巡檢行為數(shù)據(jù)集上的動(dòng)作檢測(cè)率Table 2 The action detection rate of this model on the inspection behavior dataset
本文模型在巡檢行為數(shù)據(jù)集上的結(jié)果見表3, 對(duì)比表3和表1可看出,在自制的巡檢行為數(shù)據(jù)集上的預(yù)測(cè)結(jié)果比在THUMOS14數(shù)據(jù)集上更加準(zhǔn)確。這是由于在井下配電室監(jiān)控視頻中,場(chǎng)景較為固定,巡檢動(dòng)作分類較少,使得模型檢測(cè)結(jié)果更佳。這也同時(shí)說明了本文模型更適用于井下配電室巡檢行為檢測(cè)場(chǎng)景。
表3 本文模型在巡檢行為數(shù)據(jù)集上的檢測(cè)結(jié)果Table 3 Detection results of this model on the inspection behavior dataset
將訓(xùn)練完成的參數(shù)輸入到巡檢行為檢測(cè)模型,對(duì)井下配電室監(jiān)控視頻進(jìn)行動(dòng)作分類及定位。輸入一段井下配電室監(jiān)控視頻,模型將對(duì)這段監(jiān)控視頻進(jìn)行動(dòng)作分類與定位,同時(shí)生成動(dòng)作檢測(cè)文件,其中包含動(dòng)作發(fā)生的時(shí)間區(qū)間、類別及置信度。依據(jù)動(dòng)作檢測(cè)文件將視頻進(jìn)度(time)、當(dāng)前動(dòng)作類別(label)和置信度(score)標(biāo)記在監(jiān)控視頻左上方作為最終檢測(cè)結(jié)果輸出,如圖3所示,視頻總長(zhǎng)度為130 s,當(dāng)前視頻播放進(jìn)度為14.88 s,巡檢人員正在執(zhí)行下蹲檢測(cè),置信度為0.88,表示模型認(rèn)為在當(dāng)前視頻幀中最可能存在下蹲檢測(cè)動(dòng)作,且存在的概率為88%,證明了巡檢行為檢測(cè)模型在實(shí)際場(chǎng)景中的有效性。
圖3 檢測(cè)結(jié)果Fig.3 Detection results
(1) 基于條件變分自編碼器的巡檢行為檢測(cè)模型由判別注意力模型和生成注意力模型組成,利用判別注意力模型完成巡檢行為的分類任務(wù),對(duì)分類結(jié)果進(jìn)行后處理,完成巡檢行為的定位任務(wù)。利用加入基于條件變分自編碼器的生成注意力模型對(duì)視頻的潛在特征進(jìn)行學(xué)習(xí),以提高定位任務(wù)的精度。該模型提高了巡檢工作效率,降低了訓(xùn)練成本。
(2) 為了盡可能地捕捉視頻特征間的微小差異,利用條件變分自編碼器來構(gòu)造基于不同注意力時(shí)不同特征的分布,解決了弱監(jiān)督動(dòng)作定位中動(dòng)作幀和背景幀易混淆的問題,具有較高的檢測(cè)精度,在THUMOS14數(shù)據(jù)集上,mAP@0.5達(dá)到了17.0%,并將模型參數(shù)遷移到自制的巡檢行為數(shù)據(jù)集上繼續(xù)訓(xùn)練,在自制的巡檢行為數(shù)據(jù)集上mAP@0.5達(dá)到了24.0%,滿足了井下配電室巡檢行為檢測(cè)精度要求。
(3) 實(shí)驗(yàn)結(jié)果表明,檢測(cè)精度還存在很大的提升空間,在接下來的工作中,可通過擴(kuò)充行為檢測(cè)數(shù)據(jù)集的樣本數(shù)量和類型,以得到更高的檢測(cè)精度,或通過優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)提高模型的泛化能力。