逯雨辰,梅健強(qiáng)
(天津職業(yè)技術(shù)師范大學(xué) 電子工程學(xué)院,天津 300222)
公共場所人流密度監(jiān)控是對指定空間和時(shí)間范圍內(nèi)的人員數(shù)量信息進(jìn)行統(tǒng)計(jì)量化的方法,是實(shí)現(xiàn)人員身份識別的重要基礎(chǔ),對降低疫情常態(tài)化下交叉感染風(fēng)險(xiǎn)具有重要意義。當(dāng)前公共場所人流密度監(jiān)控大多通過人工目視方法進(jìn)行,檢測效率低、功能單一,易受監(jiān)控人員主觀因素影響造成統(tǒng)計(jì)錯(cuò)誤,且速度和精度難以滿足實(shí)時(shí)要求。視頻圖像分析監(jiān)控人流的方案十分具有前景,是計(jì)算機(jī)視覺領(lǐng)域長期活躍的基礎(chǔ)性問題,隨著計(jì)算機(jī)科學(xué)技術(shù)的不斷發(fā)展,越來越多基于人工智能,特別是基于深度學(xué)習(xí)的特征檢測技術(shù)不斷涌現(xiàn),成為目前視頻圖像分析監(jiān)控研究的熱點(diǎn)問題。
本裝置旨在通過TinyYOLOv2神經(jīng)網(wǎng)絡(luò)對數(shù)字圖像傳感器采集的圖像進(jìn)行處理,檢測圖像內(nèi)是否存在人臉目標(biāo)并對其進(jìn)行標(biāo)記,同時(shí)統(tǒng)計(jì)當(dāng)前圖像內(nèi)存在的目標(biāo)數(shù)量、估算本裝置單次運(yùn)行周期內(nèi)檢測到的目標(biāo)總數(shù),并最終實(shí)現(xiàn)監(jiān)控區(qū)域內(nèi)部人流量的目的。
YOLO算法作為一種“單階段”檢測算法,在處理圖片時(shí),首先會將圖片縮放為448×448像素,以匹配全連接層對于固定大小向量輸入的需求。此外,YOLO算法先將圖片分割為7×7的網(wǎng)格(grid),并允許每個(gè)網(wǎng)格出現(xiàn)2個(gè)邊界框,總計(jì)98個(gè)候選區(qū)域,隨后再對每個(gè)候選區(qū)域進(jìn)行目標(biāo)識別以及定位。YOLOv2算法在YOLO算法的基礎(chǔ)上進(jìn)一步優(yōu)化,采用了稱為Darknet-19的網(wǎng)絡(luò)模型結(jié)構(gòu),計(jì)算量減小約33%,速度更快、準(zhǔn)確率更高、可識別的對象更多。此外YOLOv2在YOLO的基礎(chǔ)上還進(jìn)行了以下改進(jìn):
(1)添加批歸一化(Batch Normalization),即通過在YOLO中的所有卷積層上添加批歸一化,平均精度均值(Mean Average Precision, mAP)提高了2%以上。
(2)使用高分辨率圖像微調(diào)分類模型,使mAP提高近4%。
(3)借鑒了Faster R-CNN的做法,采用先驗(yàn)框(Anchor Boxes),同時(shí)移除了全連接層與一個(gè)池化層,使網(wǎng)絡(luò)卷積層的輸出具有更高的分辨率。這項(xiàng)改進(jìn)將召回率提高88%,但降低了一些mAP。
(4)引入聚類提取先驗(yàn)框尺度(Dimension Cluster),即相較于Faster R-CNN手工設(shè)定先驗(yàn)框的做法,YOLOv2嘗試通過聚類分析的方法尋找更加合適的先驗(yàn)框。
(5)使用直接位置預(yù)測(Direct Location Prediction)的方法以提高模型的穩(wěn)定性。
(6)開創(chuàng)性的引入了直通層(Pass-through Layer)以更好的檢測出較小的目標(biāo)。
(7)使用多尺度訓(xùn)練(Multi-Scale Training)以應(yīng)對不同尺寸的圖像。
TinyYOLOv2是YOLOv2算法的輕量化版本,原理與YOLOv2相同但參數(shù)數(shù)量有所減少。TinyYOLOv2只有9個(gè)卷積層而YOLOv2有24個(gè),TinyYOLOv2以犧牲準(zhǔn)確度為代價(jià)獲得了比YOLOv2更快的速度與更少的計(jì)算量,適用于算力有限的嵌入式系統(tǒng)。
本裝置在設(shè)計(jì)目標(biāo)上追求輕量化、低功耗和可快速部署的特點(diǎn)。主要由以下三部分組成:數(shù)據(jù)處理與運(yùn)算單元、數(shù)字圖像傳感器及人機(jī)交互。數(shù)據(jù)處理與運(yùn)算單元使用K210核心系統(tǒng)實(shí)現(xiàn),數(shù)字圖像采集部分及人機(jī)交互界面分別使用OV2640數(shù)字圖像傳感器模塊以及2.8寸LCD液晶顯示屏。如圖1所示,本裝置使用OV2640數(shù)字圖像傳感器模塊采集圖像,并通過柔性電路板(Flexible Printed Circuit, FPC)排線與之連接將數(shù)據(jù)傳入K210核心系統(tǒng)進(jìn)行處理,最終將處理結(jié)果傳入由FPC排線連接的LCD液晶顯示屏中供用戶查閱,圖2為系統(tǒng)邏輯框圖。
圖1 裝置實(shí)物圖
圖2 系統(tǒng)邏輯框圖
裝置上電后即開始執(zhí)行預(yù)設(shè)好的程序。首先讀取預(yù)先存放在固件boot.py文件內(nèi)的腳本程序,隨后執(zhí)行該腳本程序。在腳本內(nèi),程序首先進(jìn)行各項(xiàng)外設(shè)、網(wǎng)絡(luò)的初始化,隨后進(jìn)入腳本主循環(huán)體。程序主體和腳本主循環(huán)程序流程圖如圖3和4所示。
模擬靜態(tài)測試使用了由中國科學(xué)院自動化研究所發(fā)布的人臉數(shù)據(jù)集CASIA-FaceV5作為數(shù)據(jù)來源模擬現(xiàn)實(shí)中存在的目標(biāo),該數(shù)據(jù)集包含了來自500個(gè)人的2 500張彩色人臉圖片。CASIA-FaceV5的面部圖像是用Logitech USB攝像頭在同一段時(shí)間內(nèi)拍攝的。其中包括研究生、工人、服務(wù)員等。所有的面部圖像都是24位彩色BMP文件,圖像分辨率為640×480。典型的類內(nèi)變化包括光照、姿態(tài)、表情、眼鏡、成像距離等。測試將使用該數(shù)據(jù)集內(nèi)100人的5張人臉圖片共100×5=500張圖片作為測試數(shù)據(jù)源。
圖3 程序主體流程圖
圖4 腳本主循環(huán)流程圖
為提高測試效率,本文使用開源計(jì)算機(jī)視覺庫OpenCV編寫測試程序。如圖5(a)所示為進(jìn)行單目標(biāo)檢測的模擬測試場景,15.6英寸的屏幕上以1幀/秒的速度動態(tài)顯示CASIA-FaceV5數(shù)據(jù)集的部分人臉圖片,設(shè)備通過攝像頭采集計(jì)算機(jī)屏幕的圖像進(jìn)行檢測,圖5(b)所示為檢測結(jié)果樣例,測試參數(shù)及結(jié)果如表1所示。
圖5 單目標(biāo)模擬測試場景及結(jié)果樣例
表1 單目標(biāo)模擬測試參數(shù)及結(jié)果
其中準(zhǔn)確率計(jì)算方式由以下公式給出:
由模擬靜態(tài)測試可見,本裝置在順光、近距(檢測距離≤1.5 m)且同時(shí)出現(xiàn)的目標(biāo)數(shù)較少(≤2個(gè)目標(biāo))的固定環(huán)境使用場景下可以達(dá)到接近90%的人數(shù)統(tǒng)計(jì)準(zhǔn)確率。此外,在目標(biāo)檢測準(zhǔn)確率方面,對于1.5米左右的目標(biāo)仍然能達(dá)到77.6%的檢測準(zhǔn)確率。在同時(shí)檢測到6個(gè)目標(biāo)的情況下仍然有平均7.9 FPS的處理速度,在面對多目標(biāo)同時(shí)出現(xiàn)的使用需求場景,本裝置的人數(shù)統(tǒng)計(jì)準(zhǔn)確率可以達(dá)到78%。
實(shí)景動態(tài)測試中,本裝置將被部署在非緊急情況下時(shí)建筑物的唯一出入口處,針對20分鐘內(nèi)通過該出入口的人員總數(shù)進(jìn)行統(tǒng)計(jì),以本裝置統(tǒng)計(jì)人數(shù)與人工計(jì)數(shù)相比對的方式測試本裝置在實(shí)際使用中的具體效果。測試最大檢測距離為2.3米,平均處理速度為12 FPS,最大移動目標(biāo)(移動目標(biāo)的移動速度參考人類正常步行速度,不超過1.5 m/s)檢測數(shù)量為5個(gè),最大靜態(tài)目標(biāo)檢測數(shù)量為6個(gè),其中面部可檢測角度(水平方向)為45°左偏~45°右偏,面部可檢測角度(垂直方向)為45°仰角~15°俯角(雙眼與鏡頭之間的視線與地面平行時(shí)視作基準(zhǔn)0°),具體測試結(jié)果如表2所示。
其中人數(shù)統(tǒng)計(jì)準(zhǔn)確率計(jì)算方式由如下公式給出:
表2 現(xiàn)實(shí)使用場景測試項(xiàng)目及結(jié)果
測試中發(fā)現(xiàn),本裝置在目標(biāo)距離超過2.3米后檢測成功率將會降低至不可接受的程度,推測受到如下因素制約:
(1)TinyYOLOv2相對于YOLOv2提高了速度但降低了準(zhǔn)確性,導(dǎo)致該在檢測小目標(biāo)時(shí)準(zhǔn)確度低。
(2)遠(yuǎn)于2.3米后,人臉目標(biāo)在圖像中過小,且TinyYOLOv2在處理圖像時(shí)會進(jìn)一步降低圖像分辨率,使得目標(biāo)難以被TinyYOLOv2檢測。
由于移動目標(biāo)成像模糊,導(dǎo)致TinyYOLOv2神經(jīng)網(wǎng)絡(luò)難以檢測,導(dǎo)致本裝置對移動目標(biāo)的效果弱于靜態(tài)目標(biāo),該現(xiàn)象在目標(biāo)移動速度增加時(shí)尤為明顯。如表2所示,以人工統(tǒng)計(jì)數(shù)為基準(zhǔn),本裝置在20分鐘內(nèi)對人員密集場所的人員數(shù)量統(tǒng)計(jì)準(zhǔn)確率為96.5%,達(dá)到預(yù)期效果。
本裝置使用TinyYOLOv2神經(jīng)網(wǎng)絡(luò)模型對人臉目標(biāo)進(jìn)行檢測,并實(shí)現(xiàn)了對一段時(shí)間內(nèi)途經(jīng)某一地點(diǎn)的總?cè)藬?shù)進(jìn)行統(tǒng)計(jì)的功能,可以輔助公共場所的管理人員對小范圍空間內(nèi)的人流進(jìn)行監(jiān)控,對場所進(jìn)行針對化管理。本裝置具有輕量化、功耗低、可快速部署、誤差小的特點(diǎn),具有一定的使用價(jià)值。