翟歲兵

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