翟歲兵
摘?要:在嵌入式Linux環(huán)境下使用OpenCV網(wǎng)絡(luò)攝像機(jī)解決了不受控制程序中自動(dòng)面部檢測和跟蹤的問題,檢測到的面部與相應(yīng)的人和軌跡相關(guān)聯(lián)。現(xiàn)實(shí)場景和實(shí)時(shí)限制的動(dòng)態(tài)特性使我們的任務(wù)變得復(fù)雜。與之前使用廣角相機(jī)和OpenCV混合的工作不同,我們探索了單個(gè)OpenCV相機(jī)可以預(yù)期的限制。在縮小模式下檢測并跟蹤行人,然后使用調(diào)度程序選擇要放大的人。放大后,我們回到廣域模式,解決人與人,面對面和面對面數(shù)據(jù)關(guān)聯(lián)問題。在挑戰(zhàn)室內(nèi)不受控制的條件下的廣泛實(shí)驗(yàn)證明了所提出的系統(tǒng)的有效性。
關(guān)鍵詞:嵌入式Linux環(huán)境;人臉檢測跟蹤;OpenCV
1 簡介
本文介紹了一種全自動(dòng)OpenCV人臉檢測和跟蹤系統(tǒng),該系統(tǒng)非常適合真實(shí)場景中的這些挑戰(zhàn)。據(jù)我們所知,所提出的方法是第一個(gè)使用單個(gè)OpenCV攝像機(jī)解決高分辨率人臉圖像與人和軌跡的關(guān)聯(lián)。相機(jī)以縮小模式開始,檢測并跟蹤行人,根據(jù)調(diào)度程序放大下一張臉,以高分辨率捕捉臉部圖像,然后縮小。然后,它解決了人與人,面對面和面對面的關(guān)聯(lián)問題。最后,記錄高分辨率面部以及相應(yīng)的人和軌跡。
2 基于嵌入式Linux環(huán)境下OpenCV人臉跟蹤系統(tǒng)
我們提出的系統(tǒng)有兩種模式,縮小模式和放大模式。我們從OpenCV攝像機(jī)接收圖像序列,并在這兩種模式之間切換,以便在遠(yuǎn)場場景中捕捉來自多個(gè)人的面部。
在縮小模式下,如果觀察對象的任務(wù)尚未開始,我們會(huì)從常規(guī)CCTV攝像機(jī)中檢測和跟蹤圖像序列中感興趣的對象。然后觸發(fā)攝像機(jī)調(diào)度模塊以確定調(diào)度并基于其狀態(tài)信息為每個(gè)對象分配資源。根據(jù)從攝像機(jī)調(diào)度獲得的有序列表,OpenCV攝像機(jī)通過加權(quán)循環(huán)方法依次更接近地查看每個(gè)對象。每當(dāng)我們回到縮小模式時(shí),我們將當(dāng)前幀與存儲(chǔ)的列表相關(guān)聯(lián),直到整個(gè)過程完成。
攝像機(jī)調(diào)度模塊。在從跟蹤中獲得每個(gè)對象的狀態(tài)信息之后,然后觸發(fā)相機(jī)調(diào)度模塊以確定調(diào)度并分配資源以觀察視圖中的每個(gè)對象。由于視野中的人數(shù)多于攝像機(jī)的數(shù)量,因此不希望攝像機(jī)在他/她整個(gè)停留在場景期間花費(fèi)所有資源僅觀察一個(gè)人而忽略所有其他人。這里,考慮加權(quán)循環(huán)方法。攝像機(jī)依次觀察每個(gè)對象,并將剩余的時(shí)間用于放大模式和縮小模式之間。
在放大模式下執(zhí)行面部檢測和關(guān)聯(lián)。
3 實(shí)驗(yàn)結(jié)果與分析
我們在實(shí)驗(yàn)中使用現(xiàn)成的索尼OpenCV網(wǎng)絡(luò)攝像機(jī)SNC-RZ50N。該相機(jī)提供大范圍的平移角度(-170°→+170°),傾斜角度(-90°→+25°)和大變焦比(26倍光學(xué))。接收640×480圖像的最大幀速率為30 fps。我們在室內(nèi)不受控制的場景中進(jìn)行了長達(dá)30米的實(shí)驗(yàn)。我們已將系統(tǒng)安裝在非合作科目走過的走廊中。挑戰(zhàn)在于每個(gè)受試者的觀察期很短,通常為5秒,這意味著放大操作必須快速進(jìn)行。
在連續(xù)運(yùn)行五個(gè)小時(shí)的過程中,我們的系統(tǒng)可以檢測并跟蹤47人。在跟蹤的47人中,有21人正朝著包含臉部圖像的相機(jī)移動(dòng)。我們的系統(tǒng)成功捕獲了21個(gè)人的19個(gè)不同面孔。19個(gè)面與相應(yīng)的軌跡相關(guān)聯(lián)。選擇要放大的對象和面對關(guān)聯(lián)的過程,跟蹤多個(gè)人。人們的數(shù)字表示根據(jù)調(diào)度程序放大的順序。選擇放大的人用藍(lán)色矩形中突出顯示。被跟蹤的人和相關(guān)的面部分別用相同的顏色標(biāo)記。
在關(guān)聯(lián)模塊中,最佳分配由OpenCV算法解決。如果兩個(gè)檢測響應(yīng)之間的距離大于閾值,我們拒絕該分配。當(dāng)在放大模式中檢測到面部時(shí),執(zhí)行面對面關(guān)聯(lián)。每當(dāng)相機(jī)縮放到廣域模式時(shí)執(zhí)行人對人關(guān)聯(lián),而如果檢測到的臉部沒有與縮小模式中的任何人相關(guān)聯(lián),則執(zhí)行面對面關(guān)聯(lián)。
采用多目標(biāo)跟蹤中的度量,對象純度和ID切換來驗(yàn)證關(guān)聯(lián)模塊的有效性。對象純度(OP)定義為檢測到的面部/人與模塊正確關(guān)聯(lián)的幀與包含面部/人的幀的總數(shù)的比率。ID開關(guān)(IDS)記錄面部/人員更改其ID的總次數(shù)。值越高,OP的性能越好;值越低,IDS的性能越好。結(jié)果總結(jié)在下表中。
4 結(jié)論
我們提出了一種新穎的實(shí)時(shí)系統(tǒng),使用OpenCV攝像頭獲取高分辨率人臉。面部與相應(yīng)的人和軌跡相關(guān)聯(lián)。我們已經(jīng)在各種真實(shí)的室內(nèi)和室外場景中驗(yàn)證了我們的方法。使用OpenCV攝像機(jī)進(jìn)行實(shí)時(shí)物體檢測,跟蹤和關(guān)聯(lián)遠(yuǎn)未解決。我們絕不會(huì)聲稱在這里完全解決了它,還有許多工作要做,我們未來的工作將集中在改進(jìn)現(xiàn)有系統(tǒng)并將當(dāng)前系統(tǒng)擴(kuò)展到多個(gè)攝像機(jī)。
參考文獻(xiàn):
[1]梁路宏,艾海舟.基于人臉檢測的人臉跟蹤算法[J].計(jì)算機(jī)工程與應(yīng)用,2001,37(17):42-45.
[2]胡一帆,胡友彬,李騫,等.基于視頻監(jiān)控的人臉檢測跟蹤識別系統(tǒng)研究[J].計(jì)算機(jī)工程與應(yīng)用,2016,52(21):1-7.
項(xiàng)目:陜西省教育廳專項(xiàng)科學(xué)研究計(jì)劃(基于Linux與OpenCV的教室人數(shù)檢測統(tǒng)計(jì)系統(tǒng)研究18JK0933)