吳燕菊,胡峰源,徐嶄,董岱豪
(陸軍工程大學(xué)指揮控制工程學(xué)院,江蘇南京 210001)
近年來(lái),為加強(qiáng)涉密場(chǎng)所如值班室、實(shí)驗(yàn)室等的安全管理,各級(jí)管理部門不僅出臺(tái)了一系列管理制度,還通過(guò)加裝監(jiān)控設(shè)備如攝像頭等進(jìn)行實(shí)時(shí)監(jiān)管。然而,在對(duì)視頻中違規(guī)行為進(jìn)行識(shí)別時(shí),目前仍多采用安全泄密事件發(fā)生后的人工鑒別方式。
在監(jiān)控視頻中檢測(cè)違規(guī)行為,一方面需要耗費(fèi)大量人力和精力。另一方面,依靠人工檢測(cè)的方式容易出現(xiàn)誤報(bào)和漏檢,同時(shí)也無(wú)法實(shí)現(xiàn)實(shí)時(shí)處置和預(yù)報(bào)。因此,如何從海量監(jiān)控視頻中提取有用信息并提高對(duì)違規(guī)行為的識(shí)別能力,對(duì)于加強(qiáng)涉密場(chǎng)所的安全管控具有重要的應(yīng)用價(jià)值。
目標(biāo)檢測(cè)提供了識(shí)別涉密場(chǎng)所敏感行為的一種方法。本文結(jié)合監(jiān)控設(shè)備中敏感行為的目標(biāo)特征,梳理了該領(lǐng)域存在的技術(shù)難點(diǎn),并總結(jié)了傳統(tǒng)目標(biāo)檢測(cè)方法和深度學(xué)習(xí)檢測(cè)方法的基本流程。同時(shí),提出了一種基于YOLOv5 的涉密場(chǎng)所敏感行為檢測(cè)方法,分析了采用的數(shù)據(jù)集及檢測(cè)結(jié)果,這些研究成果對(duì)未來(lái)涉密場(chǎng)所敏感行為檢測(cè)方面的研究具有重要參考價(jià)值和推動(dòng)作用。
所謂涉密場(chǎng)所[1],即保密要害部位,是指集中制作、存放、保管國(guó)家涉密載體、涉密信息的專門場(chǎng)所。
敏感行為,是指有可能引發(fā)泄密或者危及涉密人員人身安全的行為。本文主要側(cè)重泄密行為,設(shè)定在涉密場(chǎng)所攜帶手機(jī)和滯留手機(jī)為敏感行為。
1)實(shí)際數(shù)據(jù)與訓(xùn)練數(shù)據(jù)差異性較大
訓(xùn)練數(shù)據(jù)上大部分來(lái)自網(wǎng)絡(luò),目標(biāo)多位于中央,光照條件好。實(shí)際涉密場(chǎng)所內(nèi)較昏暗,監(jiān)控?cái)z像頭在采集視頻時(shí)畫質(zhì)較差,分辨率和像素低,不易從視頻中更好地提取特征,如若天氣糟糕時(shí)會(huì)進(jìn)一步惡化,影響著目標(biāo)檢測(cè)的質(zhì)量。
2)目標(biāo)尺度復(fù)雜多變
目標(biāo)處于移動(dòng)狀態(tài),容易隨著角度和距離等參數(shù)發(fā)生相對(duì)變化。監(jiān)控?cái)z像頭位置較高時(shí),容易產(chǎn)生模糊目標(biāo)和小目標(biāo),二者較近時(shí),容易產(chǎn)生目標(biāo)不全,或者大的目標(biāo)出現(xiàn);另外,不同的拍攝角度也會(huì)產(chǎn)生不同的效果,從而加大了檢測(cè)難度。
目標(biāo)檢測(cè)算法根據(jù)是否運(yùn)用了深度神經(jīng)網(wǎng)絡(luò),將其分為傳統(tǒng)的目標(biāo)檢測(cè)算法和基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法。
2.1.1 傳統(tǒng)目標(biāo)檢測(cè)算法
傳統(tǒng)目標(biāo)檢測(cè)算法流程如圖1所示。
圖1 傳統(tǒng)目標(biāo)檢測(cè)算法流程
首先,在目標(biāo)圖像上利用滑動(dòng)窗口依次選取以下候選區(qū)域,而后對(duì)這部分區(qū)域利用SIFT,HOG 等進(jìn)行特征提取,最后使用預(yù)先訓(xùn)練好的分類器,例如SVM進(jìn)行分類。就傳統(tǒng)目標(biāo)算法而言,存在兩大缺陷[2]:
1)滑動(dòng)窗口選擇區(qū)域,選擇時(shí)針對(duì)性不強(qiáng),時(shí)間復(fù)雜度高。
2)人工選擇設(shè)計(jì)的目標(biāo)多樣,魯棒性不足。
2.1.2 深度學(xué)習(xí)目標(biāo)檢測(cè)
深度學(xué)習(xí)目標(biāo)檢測(cè)算法是人工神經(jīng)網(wǎng)絡(luò)的改進(jìn),并且是一種常用的AI技術(shù)圖像目標(biāo)檢測(cè)算法,相比傳統(tǒng)目標(biāo)檢測(cè)算法在檢測(cè)性能和效果上獲得了明顯改善。文獻(xiàn)[3]中提到針對(duì)人群中檢測(cè)異常行為時(shí)存在的高算法復(fù)雜度和低精確度的問(wèn)題,提出了基于改進(jìn)的SSD算法,該算法將特征提取網(wǎng)絡(luò)替換成了輕量級(jí)別網(wǎng)絡(luò),減少了模型內(nèi)參數(shù),加快了模型運(yùn)行速度,從而能夠更加精確地檢測(cè)異常行為。文獻(xiàn)[4]提出了傳統(tǒng)目標(biāo)檢測(cè)算法在特征提取上存在不足,因此在YOLOv3 網(wǎng)絡(luò)中采取了合并歸一化到卷積層、修改損失參數(shù)、添加池化等方式以提升網(wǎng)絡(luò)的性能和檢測(cè)精度。然而該算法仍然存在運(yùn)行速度慢、使用范圍小、靈活性差等問(wèn)題。為提高涉密場(chǎng)所的安全性能,本文利用YOLOv5 模型來(lái)檢測(cè)敏感行為,該模型具有小尺度、低成本部署和高靈活性等優(yōu)點(diǎn),檢測(cè)速度快[5]。
YOLOv5 是一種基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法,它是YOLO[6](You Only Look Once) 家族的代表算法。根據(jù)使用深度和寬度兩種參數(shù)控制4種結(jié)構(gòu),主要包括的結(jié)構(gòu)有YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x,深度上依次加深,寬度亦然,精度上雖在不斷提高,但是速度上不能互相匹配,在不斷降低。考慮到Y(jié)OLOv5s 是4 者中最輕量化且深度與寬度最小,因此本文采用YOLOv5s網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行模型訓(xùn)練,其網(wǎng)絡(luò)主要可以分為4 部分:輸入端、骨干網(wǎng)絡(luò)、頭部網(wǎng)絡(luò)和輸出端[6]。
訓(xùn)練的具體流程如圖2所示。
圖2 目標(biāo)檢測(cè)算法處理流程圖
由于涉密場(chǎng)所的保密性,且存在實(shí)際數(shù)據(jù)與訓(xùn)練數(shù)據(jù)差異性較大的問(wèn)題,所以本文通過(guò)自建數(shù)據(jù)集訓(xùn)練模型,主要來(lái)源于在模擬涉密場(chǎng)所環(huán)境以及各種天氣下拍攝的敏感行為視頻,并將視頻進(jìn)行分幀,如圖3所示。
圖3 部分?jǐn)?shù)據(jù)集展示
針對(duì)存在的目標(biāo)尺度復(fù)雜多變的問(wèn)題,本文采用數(shù)據(jù)增強(qiáng)技術(shù)對(duì)樣本進(jìn)行隨機(jī)裁剪、縮放和旋轉(zhuǎn),以增加訓(xùn)練樣本的多樣性和豐富性,最終得到12 000張圖片,如圖4所示。
使用標(biāo)注軟件Labelimg[7]對(duì)原始數(shù)據(jù)進(jìn)行標(biāo)注,所有數(shù)據(jù)集采用YOLO 格式進(jìn)行標(biāo)注。圖片標(biāo)注過(guò)程如圖5所示,標(biāo)注結(jié)果以XML格式存儲(chǔ),XML文件中包括圖像信息、目標(biāo)名稱、目標(biāo)所在位置等信息。
圖5 標(biāo)注圖片
將XML 文件轉(zhuǎn)換成YOLO v5s訓(xùn)練所需要的TXT文件,如圖6所示,并將數(shù)據(jù)集劃分為訓(xùn)練集和驗(yàn)證集,其比例為4:1,如表1所示。
表1 數(shù)據(jù)集分類
圖6 部分TXT文檔展示
3.3.1 環(huán)境配置
本文采用深度學(xué)習(xí)框架PyTorch進(jìn)行YOLOv5s模型的訓(xùn)練,其余軟件環(huán)境和版本如表2所示。
表2 實(shí)驗(yàn)環(huán)境配置
其中操作系統(tǒng)為Windows11,處理器為11th Gen Intel(R) Core(TM) i7-11370H,主頻為3.30Hz,使用本地GPU,輸入圖像大小為640 mm×640 mm;輸入通道數(shù)為2,選代次數(shù)設(shè)置為300 次,在Anaconda3 創(chuàng)建的虛擬環(huán)境中進(jìn)行訓(xùn)練其屬于一個(gè)開(kāi)源的Python 發(fā)行版本,可以利用conda進(jìn)行package和environment的配置且包含Python 相關(guān)的配套工具,同時(shí)在CUDA 和CUDNN解決GPU在運(yùn)行時(shí)的復(fù)雜問(wèn)題。
3.3.2 數(shù)據(jù)集評(píng)價(jià)
在YOLOv5學(xué)習(xí)中,會(huì)使用精確度(Precision)和召回率(Recall)作為評(píng)估參數(shù)。精確度描述的是實(shí)際預(yù)測(cè)正確的數(shù)據(jù)在正樣本數(shù)據(jù)中的比例;召回率描述在數(shù)據(jù)集合中正類別被確切檢測(cè)出來(lái)的比值。兩者公式分別為式(1)和式(2)。
其中,NTP為預(yù)測(cè)正確的數(shù)據(jù)樣本數(shù)目,NFP為預(yù)測(cè)錯(cuò)誤的數(shù)據(jù)樣本數(shù)目,NFN其中為出現(xiàn)錯(cuò)漏的樣本數(shù)目。
平均精度均值(mean Average Precision,mAP)是精確度和召回率的綜合平均精度(average、precision)的平均值,如式(3)和式(4)所示:
其中,P、r分別為精確度和召回率,k表示種類,K表示實(shí)驗(yàn)的種數(shù)總和。
3.3.3 算法訓(xùn)練
如圖7所示將搭建好的YOLOv5s的環(huán)境,根據(jù)硬件配置及逆行參數(shù)的設(shè)置,如圖7所示。
圖7 參數(shù)調(diào)試
如圖8所示,模型訓(xùn)練到200次時(shí)開(kāi)始收斂,其中訓(xùn)練集的BOX是bounding box(邊界框)定位損失,可以看出模型預(yù)測(cè)框與真實(shí)框差值逐漸變小,準(zhǔn)確度越來(lái)越高;Objectness 為置信度損失,可以看出其損失越來(lái)越小,對(duì)于目標(biāo)的檢測(cè)準(zhǔn)確度越高;Classification 是分類損失,可以看出損失基本為0,分類上的準(zhǔn)確度越高。另外看出訓(xùn)練集中的損失函數(shù)變化總體已經(jīng)降到最低水平。Prection 和Recall 都處于逐步上升的趨勢(shì),符合本實(shí)驗(yàn)預(yù)期結(jié)果,對(duì)于兩者形成的面積,即為所求的測(cè)試集mAp_0.5值,其最大值可以達(dá)到95.2%。
圖8 訓(xùn)練結(jié)果
訓(xùn)練后的YOLOv5s最佳模型如圖9所示。
圖9 訓(xùn)練后的最佳模型
直接檢測(cè)圖片,完成一張640×384 mm 的目標(biāo)圖片,檢測(cè)大概需要0.1s,檢測(cè)速度較快,如圖10所示。
圖10 檢測(cè)識(shí)別過(guò)程
然后對(duì)攜帶手機(jī)和滯留手機(jī)的視頻進(jìn)行檢測(cè)識(shí)別,最終效果如圖11所示。
圖11 系統(tǒng)檢測(cè)效果圖
結(jié)合YOLOv5s 訓(xùn)練模型,將其運(yùn)用到檢測(cè)系統(tǒng)中,具體流程如圖12所示。
圖12 系統(tǒng)檢測(cè)流程圖
將訓(xùn)練后所得的模型文件放于源代碼中,進(jìn)行系統(tǒng)的測(cè)試與實(shí)現(xiàn),本系統(tǒng)由羅技4K 高清攝像頭負(fù)責(zé)進(jìn)行實(shí)時(shí)拍攝,并自動(dòng)上傳到軟件中進(jìn)行檢測(cè),同時(shí)也支持由于特殊情況下的人工手動(dòng)上傳。檢測(cè)效果如圖13所示。
圖13 系統(tǒng)檢測(cè)效果圖
從結(jié)果中可以看出。界面可劃分為以下5 個(gè)區(qū)域:
1)敏感行為留存區(qū):存在違規(guī)攜帶手機(jī)和使用手機(jī)進(jìn)行拍攝的行為會(huì)被捕獲出來(lái)。
2)風(fēng)險(xiǎn)等級(jí)預(yù)警提示區(qū):發(fā)現(xiàn)敏感行為后會(huì)立即發(fā)出預(yù)警以及對(duì)應(yīng)風(fēng)險(xiǎn)等級(jí)。
3)敏感行為次數(shù)統(tǒng)計(jì)區(qū):統(tǒng)計(jì)一天內(nèi)敏感行為的次數(shù)。
4)人員類別、相關(guān)地點(diǎn)、所屬單位等信息的歷史記錄區(qū),以便后期進(jìn)行相關(guān)的提醒教育處理。
5)視頻顯示區(qū):將實(shí)時(shí)視頻在界面中展示。
該系統(tǒng)能夠動(dòng)態(tài)檢測(cè)敏感行為,識(shí)別出攜帶手機(jī)、拍照等行為,并提供實(shí)時(shí)報(bào)警和歷史記錄,為管理人員提供決策支持,從而提高了涉密場(chǎng)所的安全系數(shù)。
基于YOLOv5 的涉密場(chǎng)所敏感行為檢測(cè)系統(tǒng),通過(guò)自建數(shù)據(jù)集對(duì)YOLOv5s模型進(jìn)行訓(xùn)練,得到訓(xùn)練權(quán)重文件,對(duì)所需架構(gòu)進(jìn)行搭建,完成涉密場(chǎng)所敏感行為的檢測(cè)。提高對(duì)于涉密場(chǎng)所視頻監(jiān)控下的安全系數(shù),對(duì)后續(xù)涉密場(chǎng)所敏感行為檢測(cè)研究具有一定參考價(jià)值和推動(dòng)作用。