楊亦樂 高瑋瑋 馬曉峰
摘? 要: 為了實(shí)現(xiàn)對(duì)視頻中的行人進(jìn)行實(shí)時(shí)、準(zhǔn)確的人數(shù)統(tǒng)計(jì),提出了一種基于深度學(xué)習(xí)的計(jì)數(shù)方法。首先,通過K-means聚類方法優(yōu)化檢測(cè)模型的先驗(yàn)框;其次,使用實(shí)際場(chǎng)景下獲取的行人圖像對(duì)深度學(xué)習(xí)模型YOLO-v3進(jìn)行訓(xùn)練;然后利用Deep sort在線多目標(biāo)跟蹤算法跟蹤多個(gè)行人并分別獲取其軌跡;最后通過計(jì)數(shù)線法判斷行人數(shù)量。該方法計(jì)數(shù)準(zhǔn)確率可達(dá)89.2%,每幀檢測(cè)時(shí)間可達(dá)65ms,且場(chǎng)景適應(yīng)性強(qiáng),魯棒性好,可滿足實(shí)時(shí)行人計(jì)數(shù)要求。
關(guān)鍵詞: 深度學(xué)習(xí);人數(shù)統(tǒng)計(jì);多目標(biāo)跟蹤
【Abstract】: In order to realize real-time and accurate population statistics of pedestrians in video, a counting method based on deep learning is proposed.Firstly, the priori box of the detection model is optimized by k-means clustering method.Secondly, the deep learning model YOLO-v3 is trained by using pedestrian images obtained in real scenes.Then Deep sort online multi-object tracking algorithm is used to track multiple pedestrians and obtain their trajectories respectively.Finally, the number of pedestrians is determined by counting line method.The counting accuracy of this method is up to 89.2%, and the detection time of each frame is up to 65ms. In addition, it has strong scene adaptability and good robustness, which can meet the requirements of real-time pedestrian counting.
【Key words】: Deep learning; People counting; Multi-target tracking
0? 引言
隨著城市化進(jìn)程加快,各個(gè)行業(yè)對(duì)行人人數(shù)統(tǒng)計(jì)的需求與日俱增。近年來,隨著深度學(xué)習(xí)在圖像處理方面的應(yīng)用,大大推進(jìn)了視頻監(jiān)控技術(shù)的發(fā)展,利用這一技術(shù),能夠準(zhǔn)確分析視頻內(nèi)容,獲取量化數(shù)據(jù),使管理者能做出更加合理與高效的決策。
現(xiàn)有的基于視頻的人數(shù)統(tǒng)計(jì)系統(tǒng)所采用的算法可以分為3類:基于高斯過程回歸的行人計(jì)數(shù)方法[1],這類方法復(fù)雜度低,但是需要手動(dòng)調(diào)整回歸參數(shù),不適用于多種不同的場(chǎng)景,其魯棒性較差;基于幀差法的計(jì)數(shù)方法[2],該方法在單一且人群稀疏的場(chǎng)
景下計(jì)數(shù)效果較好,但是要求視頻拍攝背景穩(wěn)定,對(duì)硬件設(shè)別要求高,建模復(fù)雜,不適用于多種環(huán)境下的計(jì)數(shù);基于目標(biāo)檢測(cè)跟蹤的方法[3],這類方法場(chǎng)景適應(yīng)性強(qiáng),魯棒性高,但是在人群密集伴隨著嚴(yán)重遮擋的情況下檢測(cè)效果較弱,其行人計(jì)數(shù)準(zhǔn)確度依賴于目標(biāo)檢測(cè)與跟蹤算法的性能。近年來,也出現(xiàn)了一些通過深度學(xué)習(xí)對(duì)行人計(jì)數(shù)的方法[4,5],此類方法在傳統(tǒng)的檢測(cè)思路的基礎(chǔ)上,提高了在各個(gè)步驟上的性能,提升了計(jì)數(shù)的準(zhǔn)確性。
在基于目標(biāo)檢測(cè)的跟蹤方法的基礎(chǔ)上,提出使用YOLO-v3(You Only Look Once) 深度學(xué)習(xí)模型對(duì)行人進(jìn)行檢測(cè),再使用Deep Sort(Simple Online And Real-time Tracking With A Deep Association Metric)實(shí)時(shí)多目標(biāo)跟蹤算法跟蹤檢測(cè)出的行人目標(biāo),最后再使用過線計(jì)數(shù)法對(duì)行人完成人數(shù)統(tǒng)計(jì)。
1? 方法
行人人數(shù)統(tǒng)計(jì)的過程主要包括行人檢測(cè)、行人跟蹤和行人計(jì)數(shù)3個(gè)步驟。首先,通過優(yōu)化過的YOLO-v3對(duì)視頻中的每一幀進(jìn)行行人檢測(cè);然后,引入Deep Sort算法對(duì)多個(gè)行人進(jìn)行跟蹤,通過跟蹤序號(hào)獲取每個(gè)行人的運(yùn)動(dòng)軌跡;最后,比較運(yùn)動(dòng)軌跡與計(jì)數(shù)線的位置關(guān)系,完成行人計(jì)數(shù),實(shí)現(xiàn)人數(shù)自動(dòng)統(tǒng)計(jì)。具體算法流程如圖1所示。
1.1? 行人檢測(cè)
為了取得良好的行人跟蹤效果,就要準(zhǔn)確、快速的檢測(cè)出行人。在目前的目標(biāo)檢測(cè)方法中,使用深度學(xué)習(xí)的檢測(cè)方法在準(zhǔn)確度與速度表現(xiàn)上尤為突出。YOLO-v3[6]是一種實(shí)時(shí)端到端的實(shí)時(shí)深度學(xué)習(xí)目標(biāo)檢測(cè)算法,它參照了深度殘次網(wǎng)絡(luò)的結(jié)構(gòu)后,在Darknet-19的基礎(chǔ)上添加了殘差單元,并且在卷積層后面增加了批量歸一化來代替隨機(jī)去除數(shù)據(jù)的操作來防止過擬合,在加深了網(wǎng)絡(luò)深度的同時(shí),又避免了梯度消失、梯度爆炸、過擬合的問題。將19個(gè)卷積層的Darknet-19加深至53個(gè)卷積層的Darknet-53,其檢測(cè)速度依然滿足實(shí)時(shí)的要求。YOLO-v3將Darknet-53作為特征提取的骨干網(wǎng)絡(luò),更多的卷積層提供多尺度檢測(cè)的基礎(chǔ),在參考FPN結(jié)構(gòu)后,在3個(gè)尺度上進(jìn)行預(yù)測(cè),每個(gè)尺度預(yù)測(cè)有3個(gè)不同的先驗(yàn)框,這使得YOLO-v3無論在大目標(biāo)還是小目標(biāo)的檢測(cè)上都有一個(gè)更好的表現(xiàn),在行人檢測(cè)方面有著不錯(cuò)的表現(xiàn)。為了更好的檢測(cè)行人,提出使用k-means聚類算法以及對(duì)實(shí)際場(chǎng)景下的行人圖像進(jìn)行訓(xùn)練的遷移學(xué)習(xí)方法優(yōu)化YOLO-v3。
1.1.1? K-means聚類
K-means算法是一種高效、快速的聚類算法,主要用于大樣本數(shù)據(jù)集。它采用距離作為相似性的評(píng)價(jià)指標(biāo),兩個(gè)樣本之間的距離越小,則相似度越高。該算法認(rèn)為簇是由距離靠近的對(duì)象組成的,最終結(jié)果是得到k個(gè)獨(dú)立的簇。