付三麗
(三亞學院理工學院,海南三亞 572022)
隨著社會的進步與發(fā)展,一些公共場所在特殊時段交通繁忙。尤其是上下班高峰時段,車輛或物體總數(shù)超過其容量,導致消防、救援車輛等緊急車輛通行受阻。為降低公共安全事件發(fā)生的概率,有必要通過人工智能視覺技術,對人員密集場的人流量和密集度提前進行預判,以便于公共場所管理部門進行管理[1]。
本文的研究重點是對物體的檢測和跟蹤,最終將物體的數(shù)量保持在特定的監(jiān)視區(qū)域。管理決策者通過嵌入式視覺技術對特定區(qū)域的目標物體數(shù)量進行統(tǒng)計,當目標物體數(shù)量達到閾值時自主進行決定,并采取相應措施。
嵌入式視覺是指一種通過視覺方法理解周邊環(huán)境的機器。本文設計并實現(xiàn)了一種基于嵌入式機器視覺學習的目標檢測及特定目標模型特征的機器視覺識別應用系統(tǒng)[2]。機器視覺系統(tǒng)包括二部分,一是通過機器視覺對特定目標的檢測,二是對行人模型特征的提取。
在計算機PC 端YOLOv5 環(huán)境下建立行人模型,在樹莓派YOLOv5 環(huán)境下通過攝像頭實現(xiàn)對行人數(shù)量信息的視覺檢測,并在顯示界面實時統(tǒng)計出監(jiān)測的行人數(shù)量[3]。此外,視覺目標檢測系統(tǒng)可對視覺目標數(shù)量的閾值進行設定,當目標數(shù)量超過預期數(shù)值時,監(jiān)控畫面會進行實時計數(shù)報警提示。
嵌入式系統(tǒng)的主頻、功耗一般比較低,計算能力相對較弱。人工智能算法的復雜度較高,很多情況下需要服務器、GPU 的介入才能實現(xiàn)算法的實時性。然而,嵌入式系統(tǒng)也能滿足某些人工智能算法的需求,如人臉識別、語音識別等。嵌入式系統(tǒng)可以作為復雜人工智能產(chǎn)品的數(shù)據(jù)采集終端或人機交互終端,依靠云端服務器完成人工智能系統(tǒng)的復雜計算任務[4]。
隨著機器學習的發(fā)展,很多肉眼很難直接量化的特征可以通過深度學習算法的自動學習來獲取。很多通過傳統(tǒng)算法無法量化的特征也可以利用深度學習實現(xiàn)量化,特別是在圖像分類、目標識別等問題上有顯著作用。機器視覺主要是用計算機模擬人的視覺功能,從客觀事物的圖像中提取信息,進行處理并加以理解,最終用于實際檢測、測量和控制[5]。
行人監(jiān)測主要是通過行人模型識別器,在Python 下搭建行人識別環(huán)境。當有行人信息通過目標區(qū)域時,就會將目標行人框選出來,通過DeepSORT 算法對目標行人進行跟蹤,并將攝像頭監(jiān)測到的行人數(shù)量信息實時統(tǒng)計出來[6]。
傳統(tǒng)的行人檢測裝置主要是通過相關設備上搭載的攝像頭實現(xiàn)對行人信息進行采集,從而實現(xiàn)對目標信息的檢測,本文設計的行人信息檢測檢測是通過PC 端YOLOv5 環(huán)境下對行人圖片信息特征的標注、訓練,提取出行人圖像信息特征,建立行人模型文件。然后在樹莓派YOLOv5 環(huán)境下導入行人模型,并通過攝像頭實現(xiàn)對行人信息的實時檢測[7]。此外,通過DeepSORT 算法還可以對行人進行軌跡跟蹤及數(shù)量統(tǒng)計。
傳統(tǒng)目標跟蹤算法采取的是SORT 算法,由于SORT 算法是比較粗糙的追蹤算法,在物體發(fā)生遮擋時容易丟失ID。而DeepSORT 算法在SORT 算法的基礎上增加了級聯(lián)匹配和新軌跡的確認,性能更優(yōu)。本文設計的目標識別系統(tǒng)除了對目標信息進行檢測外,還能對目標進行實時跟蹤和計數(shù)[8]。
系統(tǒng)目標識別硬件涉及PC 端和可移動監(jiān)控平臺,其中PC端用于訓練目標識別的模型,可移動監(jiān)控平臺用于對目標區(qū)域行人數(shù)量信息進行實時檢測并統(tǒng)計數(shù)量。樹莓派處理器如圖1所示,它是一款基于ARM 的微型電腦主板,以SD/MicroSD 卡為數(shù)據(jù)存儲器,主板搭載有4 個USB 接口和1 個千兆以太網(wǎng)接口,可連接鍵盤、鼠標和網(wǎng)線,同時擁有模擬信號的視頻輸出接口和HDMI 高清視頻輸出接口。以上部件全部整合在一張僅比信用卡稍大的主板上,可以實現(xiàn)普通PC 機的基本功能,只需接通電視機和鍵盤,就能實現(xiàn)電子表格、文字處理、游戲、播放高清視頻等功能[9]。
目標識別系統(tǒng)軟件通過PC 端進行環(huán)境搭建。PC 端環(huán)境搭建需要Acona、Python、PyCharm 進行實驗測試環(huán)境的搭建。通過PyCharm 加載目標源文件、通過Acona 搭建目標測試的虛擬環(huán)境。行人模型是通過Lambel 軟件生成的,進行行人圖片信息標注,生成行人數(shù)據(jù)集。通過PyCharm 進行數(shù)據(jù)集的訓練,并生成best.pt 模型文件。然后將模型文件導入到樹莓派中,進行行人圖片、行人視頻、攝像頭行人信息的實時識別[10]。
樹莓派端配置好YOLOv5 環(huán)境后,導入行人模型文件即可進行行人信息的實時監(jiān)測。樹莓派行人模型目標測試結果及目標人數(shù)超過預期數(shù)值時的報警畫面如圖2、圖3 所示。
圖2 行人模型目標測試
圖3 目標人數(shù)監(jiān)測報警
通過圖2 可知監(jiān)測畫面實現(xiàn)了對目標人物信息的實時監(jiān)測,并將人物數(shù)量的信息在監(jiān)控畫面端進行了實時顯示。當監(jiān)控畫面人數(shù)超過預期數(shù)值的時候,設備將發(fā)出實時報警提示(圖3)。當目標區(qū)域監(jiān)控數(shù)值小于報警最大數(shù)值時,監(jiān)控畫面上的紅色報警提示信息消失,監(jiān)控畫面恢復正常的目標計數(shù)監(jiān)控狀態(tài)。
監(jiān)控程序包括目標識別代碼、相關數(shù)據(jù)包調(diào)用代碼,目標計數(shù)代碼,其中目標計數(shù)最大數(shù)值報警代碼如下:
上述代碼中的最大數(shù)值15 即為目標最大計數(shù)實時報警的上限閾值,報警閾值可以通過在程序中進行調(diào)整,實現(xiàn)目標計數(shù)報警數(shù)值的變化。
傳統(tǒng)基于視覺的目標識別是基于目標器件的識別器,通過攝像頭識別出特定目標模型,并將目標物體顯示出來。還有一類基于目標的模型識別通過PC 端將目標信息識別出來,并對目標信息進行特殊標簽備注。本文設計的機器目標視覺識別系統(tǒng)通過PC 端訓練、生成目標模型,通過樹莓派處理器搭載攝像頭識別目標物體,跟蹤其軌跡,并將目標物體的數(shù)量信息實時統(tǒng)計出來。此外,本文設計的視覺目標檢測模型增加了檢測目標數(shù)量超閾值實時報警的功能,并可以通過修改程序調(diào)整監(jiān)控最大人流量的閾值,實現(xiàn)監(jiān)測設備的無人值守監(jiān)測功能。
本文基于樹莓派處理器實現(xiàn)的機器視覺效果符合預期要求,但視覺識別的相關應用在功能方面還有很大的擴展空間,未來可以結合更復雜的視覺識別報警算法進行視覺識別反饋技術的更新拓展。本文設計的視覺識別檢測系統(tǒng)中應用了大量人工智能、機器學習等技術,對科研人員入門機器學習有一定參考價值。