胡培培 李丹
摘 ?要:一場(chǎng)突如其來(lái)的新冠疫情,對(duì)我國(guó)公共衛(wèi)生制度體系及社會(huì)經(jīng)濟(jì)發(fā)展都造成了重大影響。由于新型冠狀病毒很容易在人群之間傳播,進(jìn)而導(dǎo)致聚集性感染。針對(duì)此問(wèn)題,提出了一種基于YOLOv4-tiny以及DEEPSORT算法的人流量檢測(cè)及反饋應(yīng)用。在訓(xùn)練模型時(shí)使用vocc2012數(shù)據(jù)集中含有人類的圖像作為訓(xùn)練集,使得模型只對(duì)人類進(jìn)行檢測(cè)。
關(guān)鍵詞:YOLOv4-tiny;目標(biāo)檢測(cè);疫情;人群;DEEPSORT
中圖分類號(hào):TP391.4 ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2096-4706(2021)14-0071-04
Abstract: The sudden arrival of COVID-19 epidemic has had a major impact on China’s public health system and socio-economic development. Because the Corona virus spreads easily among crowd, so it easily leads to clustering infection. To solve this problem, a people traffic detection and feedback application based on YOLOv4-tiny and DEEPSORT algorithm is proposed. When training the model, the image containing human in the vocc2012 data set is used as the training set, so that the model can only detect human.
Keywords: YOLOv4-tiny; target detection; epidemic situation; crowd; DEEPSORT
0 ?引 ?言
由于全球還沒(méi)有對(duì)新型冠狀病毒疫苗接種的普及,特別是對(duì)最近傳染力,危害性更強(qiáng)的“德爾塔”等變異的新冠病毒沒(méi)有一種有效的疫苗進(jìn)行保護(hù)。所以在未來(lái)比較長(zhǎng)的一段時(shí)間內(nèi),我們?nèi)匀粫?huì)采取戴口罩,保持社交距離,勤洗手等預(yù)防措施來(lái)保護(hù)自己。針對(duì)上述問(wèn)題,急需一種可以部署到任何地方的輕量化,計(jì)算力要求大的安全監(jiān)控系統(tǒng)在一些人流量密度較大的區(qū)域進(jìn)行監(jiān)控,如果人流量超出某一規(guī)定的范圍能及時(shí)反饋給行政管理人員,確保能進(jìn)行發(fā)現(xiàn)和規(guī)避風(fēng)險(xiǎn)。
卷積式的神經(jīng)網(wǎng)絡(luò)在這些年里有著飛速的進(jìn)步,其在對(duì)目標(biāo)的檢測(cè)及信息識(shí)別等技術(shù)方面都有著很高的水平和地位,根據(jù)該算法的工作流程可將對(duì)目標(biāo)進(jìn)行檢測(cè)的算法大致分為兩個(gè)類型,一種是以faster r-CNN 2為主要代表的Two-stage神經(jīng)網(wǎng)絡(luò)算法,它所要檢測(cè)的目標(biāo)主要可以分為兩個(gè)部分:(1)通過(guò)專門模塊去生成候選框,尋找前景;(2)調(diào)整邊界框。另一種計(jì)算方法也就是以ssd3、yolo1作為主要函數(shù)代表One-stage函數(shù)算法,它是直接基于anchor直接進(jìn)行分類以及調(diào)整邊界框。Two-Stage很明顯檢測(cè)的精度要高一點(diǎn),但是檢測(cè)速度慢;One-Stage放棄了高精度,但是換來(lái)了速度,速度比Two-Stage算法快很多。在這個(gè)應(yīng)用中選擇的是YOLOv4算法,簡(jiǎn)要概括原因就是速度差不多的精度碾壓;精度差不多的速度碾壓。在統(tǒng)計(jì)人流量上面選擇目前比較主流的DEEPSORT算法,所以YOLOv4及DEEPSORT算法因其高效性和對(duì)資源較低的需求成為部署在這類設(shè)備上面的最佳選擇。
1 ?YOLO系列簡(jiǎn)介
YOLO(you only look once)指只需要瀏覽一次就可以識(shí)別出圖中的物體的類別和位置。一個(gè)典型的Region-base方法的流程是這樣的:先通過(guò)計(jì)算機(jī)圖形學(xué)的方法,對(duì)圖片進(jìn)行分析,找出若干個(gè)可能存在物體的區(qū)域,將這些區(qū)域裁剪下來(lái),放入一個(gè)圖片分類器中,由分類器分類。
因?yàn)閅OLO這樣的Region-free方法只需要一次掃描,也被稱為單階段(1-stage)模型。在YOLOv1算法中的工作者將一個(gè)新的圖片目標(biāo)劃分分割成7×7個(gè)小小的格子,每個(gè)小格子分別可以用來(lái)預(yù)測(cè)兩個(gè)目標(biāo)boundingbox,如果某一個(gè)新的圖像已經(jīng)在圖片目標(biāo)圖的中心位置掉入一個(gè)新的網(wǎng)格預(yù)測(cè)單元中,則作者認(rèn)為這就是這個(gè)圖像目標(biāo)屬于一個(gè)網(wǎng)格預(yù)測(cè)單元而它負(fù)責(zé)進(jìn)行監(jiān)督或者檢測(cè)這個(gè)圖像目標(biāo)。對(duì)每個(gè)被節(jié)點(diǎn)切割的最小節(jié)點(diǎn)單元格可以進(jìn)行空間預(yù)測(cè)(包括置信度、邊界和圖框上的節(jié)點(diǎn)位置),每個(gè)節(jié)點(diǎn)boundingbox都可能需要4個(gè)相同的空間數(shù)值,該符號(hào)可用來(lái)準(zhǔn)確地分別表示它們的空間位置,(center_x,center_y,width,height),YOLOv4-tiny的一項(xiàng)貢獻(xiàn)就是把檢測(cè)到的問(wèn)題直接變成了回歸的問(wèn)題。YOLOv4在與efficientdet性能相同的條件下,推理的速度比其快了兩倍。與YOLOv3相比ap與fps分別增加了10%與12%。YOLOv4-tiny提出了一種實(shí)時(shí)、精度較高的目標(biāo)檢查模型。
1.1 ?主干網(wǎng)絡(luò)
CspNet(cross stage paritial network)主要目的是從數(shù)據(jù)網(wǎng)絡(luò)推理架構(gòu)設(shè)計(jì)的一個(gè)視角出發(fā)來(lái)研究解決數(shù)據(jù)推理中關(guān)于數(shù)據(jù)分析計(jì)算需求量多的復(fù)雜問(wèn)題。CspNet的一些研究工作人員一致認(rèn)為存在推理網(wǎng)絡(luò)計(jì)算機(jī)中誤差太大的一個(gè)問(wèn)題其實(shí)應(yīng)該認(rèn)為是由于推理網(wǎng)絡(luò)中的優(yōu)化推理過(guò)程使其中的一個(gè)梯度推理信息不被重復(fù)使用造成。因此我們可以采用公式cross-stage-partial-connections先將一個(gè)基礎(chǔ)層的每個(gè)特征層和映射分別劃分并作為兩個(gè)組成部分,然后再考慮利用其橫跨兩個(gè)階段的層次結(jié)構(gòu)將它們分別進(jìn)行層次合并,在大大減少我們計(jì)算單個(gè)數(shù)據(jù)量的難度同時(shí),也就是可以有效地充分保證其進(jìn)行計(jì)算的數(shù)據(jù)準(zhǔn)確率。
1.2 ?SPP4模塊
在YOLOv4中,對(duì)SPP進(jìn)行了修改以保證輸出為空間維度。最大池化的核大小為k={1×1、5×5、9×9、13×13}。將來(lái)自不同核大小池化后的特征圖串聯(lián)在一起作為輸出。
1.3 ?PAN4模塊
PAN模塊在YOLOv4中通過(guò)先自頂向下的方式進(jìn)行上采樣,使得特征圖維度變?yōu)樵瓉?lái)的2倍,再自底向上完成下采樣,使得維度變?yōu)樵瓉?lái)的一半,通過(guò)這一模塊完成圖像的特征融合,最后輸出三個(gè)head完成預(yù)測(cè)。
1.4 ?YOLOv4-tiny4
YOLOv4-tiny(網(wǎng)絡(luò)結(jié)構(gòu)圖1)的網(wǎng)絡(luò)結(jié)構(gòu)只有38層,訓(xùn)練參數(shù)只有5 918 006個(gè),屬于輕量化模型,而YOLOv4的網(wǎng)絡(luò)結(jié)構(gòu)共有168層,訓(xùn)練參數(shù)有64 363 101個(gè),YOLOv4-tiny的訓(xùn)練參數(shù)比YOLOv4少了近十倍左右,所以大大精簡(jiǎn)了網(wǎng)絡(luò)結(jié)構(gòu),這使得YOLOv4-tiny在進(jìn)行圖像檢測(cè)時(shí)具有比YOLOv4較大的速度優(yōu)勢(shì)。在進(jìn)行特征提取,YOLOv4-tiny并沒(méi)有與YOLOv4一樣采用Mish激活函數(shù),并且在特征加強(qiáng)層只采用了一個(gè)特征金字塔(即FPN網(wǎng)絡(luò)),也沒(méi)有像YOLOv44一樣采用向下取樣的方式。YOLOv4-tiny使用leakyReLU作為激活函數(shù),但它仍然和YOLOv4一樣采用的是CSPnet網(wǎng)絡(luò)結(jié)構(gòu),并且對(duì)特征提取網(wǎng)絡(luò)進(jìn)行通道分割,將經(jīng)過(guò)卷積后輸出的特征層通道切割為兩部分,并且只取第二部分。YOLOv4-tiny具有能夠同時(shí)實(shí)現(xiàn)目標(biāo)的分類與回歸,也能夠?qū)崿F(xiàn)參數(shù)共享,以及防止出現(xiàn)過(guò)擬合等特點(diǎn)。
2 ?DEEPSORT算法簡(jiǎn)介
DEEPSORTg這是多媒體目標(biāo)計(jì)算跟蹤(multi-object tracking)中比較常見的用到的一種跟蹤算法,是一種detection based tracking的目標(biāo)計(jì)算跟蹤方法。這個(gè)算法的一個(gè)核心確實(shí)也就是我們?cè)趯?shí)際的應(yīng)用中得到的一個(gè)可以使用較為廣泛的算法,其中最重要的就是兩種算法:卡爾曼濾波算法和匈牙利算法。卡爾曼濾波器的算法流程可以從詳細(xì)分為如下兩個(gè)步驟,預(yù)測(cè)與數(shù)據(jù)更新。此種定義的算法將運(yùn)動(dòng)目標(biāo)位于一個(gè)運(yùn)動(dòng)空間的一個(gè)狀態(tài)時(shí)間邊界函數(shù)定義為一個(gè)作為8個(gè)正態(tài)時(shí)間分布的運(yùn)動(dòng)向量。預(yù)測(cè):確定當(dāng)前在上一幀的移動(dòng)目標(biāo)已經(jīng)成功經(jīng)過(guò)了一次移動(dòng),通過(guò)預(yù)測(cè)計(jì)算上一幀的移動(dòng)目標(biāo)框和移動(dòng)速度等各種移動(dòng)參數(shù),預(yù)測(cè)可以得出當(dāng)前幀的移動(dòng)目標(biāo)框和速度位置及其移動(dòng)速度等各種預(yù)測(cè)參數(shù)。更新:對(duì)正常預(yù)測(cè)值和兩個(gè)觀察點(diǎn)的分布預(yù)測(cè)值,兩個(gè)正常狀態(tài)點(diǎn)之間的分布預(yù)測(cè)狀態(tài)之間的差值進(jìn)行了一次線性化加權(quán),得到目前預(yù)測(cè)系統(tǒng)所需要進(jìn)行預(yù)測(cè)的分布狀態(tài)。匈牙利分配算法:它所說(shuō)的一個(gè)需要有效幫助我們解決的一個(gè)問(wèn)題其實(shí)就是一個(gè)相似度上的分配矩陣問(wèn)題,在mot10主要的步驟中它本身就是一個(gè)用于分配和計(jì)算相似度的,得到前后兩幀相似度分配的矩陣。匈牙利矩陣算法目標(biāo)是一種指通過(guò)快速求解該相似度上的矩陣,從而精確來(lái)源地實(shí)現(xiàn)前后兩幀真實(shí)度相匹配的計(jì)算目標(biāo)。
3 ?實(shí)驗(yàn)及結(jié)果
3.1 ?數(shù)據(jù)集
本文主要采用的是一個(gè)原始數(shù)據(jù)集,它采用了voc2012數(shù)據(jù)集,提取得出其中共計(jì)12 000張有人類生活中出現(xiàn)的圖片進(jìn)行了訓(xùn)練,選取其中300張數(shù)據(jù)集作為測(cè)試集,選取其中余下的5 000張圖片進(jìn)行作為訓(xùn)練集。
3.2 ?實(shí)驗(yàn)對(duì)比
在進(jìn)行訓(xùn)練之前進(jìn)行了對(duì)是否采取YOLOv4-tiny模型訓(xùn)練的效果進(jìn)行對(duì)比結(jié)果如圖2所示。從圖中我們能清楚直觀地感受到基于YOLOv4-tiny模型進(jìn)行檢測(cè)的好處,擁有豐富檢測(cè)目標(biāo)的背景,可以獲得實(shí)時(shí)的,高精度的檢測(cè)結(jié)果,能夠完全滿足我們對(duì)此的要求。
3.3 ?模型訓(xùn)練
在colab平臺(tái)上對(duì)YOLOv4-tiny模型進(jìn)行訓(xùn)練和測(cè)試,YOLOv4-tiny的迭代次數(shù)為4 800,GPU為TeslaT4。從訓(xùn)練過(guò)程圖得知YOLOv4-tiny在訓(xùn)練迭代到1 800輪之后損失值處于收斂狀態(tài)。圖像如圖3所示。
以map作為模型評(píng)價(jià)指標(biāo),最終訓(xùn)練結(jié)果得到Y(jié)OLOv4-tiny的map為79%。79%的map在大多數(shù)應(yīng)用場(chǎng)景下能夠輕松勝任。把訓(xùn)練好的模型拿到1660Ti的機(jī)器上測(cè)試發(fā)現(xiàn)YOLOv4-tiny能夠達(dá)到35幀左右的檢測(cè)速度,畫面流暢。再通過(guò)DEEPSORT算法進(jìn)行人流量檢測(cè)。結(jié)果如圖4所示。
通過(guò)在一些人流量密集區(qū)域的監(jiān)控設(shè)備上部署一個(gè)檢測(cè)反饋系統(tǒng),整個(gè)系統(tǒng)由3個(gè)子系統(tǒng)構(gòu)成。監(jiān)控系統(tǒng)負(fù)責(zé)圖像的輸入,將圖像提取到檢測(cè)系統(tǒng)中,檢測(cè)系統(tǒng)根據(jù)YOLOv4-tiny以及DEEPSORT算法實(shí)現(xiàn)人類識(shí)別以及人流量檢測(cè),檢測(cè)系統(tǒng)通過(guò)網(wǎng)絡(luò)接口與示警系統(tǒng)相連接,當(dāng)檢測(cè)系統(tǒng)監(jiān)測(cè)出人流量超過(guò)某一特定的值時(shí),通過(guò)網(wǎng)絡(luò)接口反饋給示警系統(tǒng),示警系統(tǒng)通過(guò)聲音、圖片、視頻等形式可以向行政管理人員反饋該區(qū)域的人流量密集程度。
4 ?結(jié) ?論
本文所實(shí)現(xiàn)的是人流量密集區(qū)域部署監(jiān)控設(shè)備,當(dāng)人流量超過(guò)規(guī)定值是進(jìn)行一個(gè)反饋,從而幫助管理人員及時(shí)發(fā)現(xiàn)和規(guī)避風(fēng)險(xiǎn)。YOLOv4-tiny的map能達(dá)到79%,完全能部署到大部分監(jiān)控系統(tǒng)并能完成實(shí)時(shí)監(jiān)測(cè)任務(wù)。
參考文獻(xiàn):
[1] LIU W,ANGUELOV D,ERHAN D,et al. SSD:single shot MultiBox detector [C]//Computer Vision – ECCV 2016.[S.L.]:Springer,Cham,2016:21-37.
[2] HE K,GKIOXARI G,DOLLAR P,et al. Mask R-CNN [C]//2017 IEEE International Conference on Computer Vision (ICCV).Venice:IEEE,2017(2):2980–2988.
[3] GIRSHICK R. Fast R-CNN [C]//2015 IEEE International Conference on Computer Vision (ICCV).Santiago:IEEE,2015(1):1440-1448.
[4] REN S Q,HE K M,GIRSHICK R,et al. Faster R-CNN:Towards Real-Time Object Detection with Region Proposal Networks [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2017,39(6):1137-1149.
[5] REDMON J,DIVVALA S,GIRSHICK R,et al. You Only Look Once:Unified, Real-Time Object Detection [C]//2016 IEEE Conference on Computer Vision and Pattern Recognition(CVPR).Las Vegas:IEEE,2016:779-788.
[6] REDMON J,F(xiàn)ARHADI A. YOLO9000:Better,F(xiàn)aster,Stronger [C]//2017 IEEE Conference on Computer Vision and Pattern Recognition(CVPR).Honolulu:IEEE,2017:6517-6525.
[7] ZHANG L,LI Y,NEVATIA R. Global data association for multi-object tracking using network flows [C]//2008 IEEE Conference on Computer Vision and Pattern Recognition.Anchorage:IEEE,2008:1–8.
[8] PIRSIAVASH H,RAMANAN D,F(xiàn)OWLKES C C. Globally-optimal greedy algorithms for tracking a variable number of objects [C]//CVPR 2011.Colorado Springs:IEEE,2011:1201–1208.
[9] BERCLAZ J,F(xiàn)LEURET F,TURETKEN E,ET AL. Multiple Object Tracking Using K-Shortest Paths Optimization [J].//IEEE Transactions on Pattern Analysis and Machine Intelligence,2011,33(9):1806–1819.
[10] YANG B,NEVATIA R. An online learned CRF model for multi-target tracking [C]//2012 IEEE Conference on Computer Vision and Pattern Recognition.2012:2034–2041.
作者簡(jiǎn)介:胡培培(1999.06—),男,漢族,四川德陽(yáng)人,本科在讀,研究方向:高級(jí)算法。