許龍銘,黃雨泉,陳卓睿
(廣州城市理工學(xué)院 通信工程學(xué)院,廣東廣州,510800)
近年來(lái),人工智能、物聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)等新技術(shù)的進(jìn)步極大地推動(dòng)了機(jī)器人的發(fā)展及其在各個(gè)行業(yè)的落地化應(yīng)用。傳統(tǒng)的安防體系是“人防+物防”來(lái)實(shí)現(xiàn),可隨著人口老齡化加重、勞動(dòng)力成本飆升、安保人員流失率高等問(wèn)題,已經(jīng)難以適應(yīng)現(xiàn)代安防需求,安防機(jī)器人作為安防產(chǎn)業(yè)典型的高科技產(chǎn)品,屬于智能機(jī)器人的一個(gè)細(xì)分領(lǐng)域,已成為一個(gè)新的研究熱點(diǎn)。作為機(jī)器人的重要分支之一,安防機(jī)器人產(chǎn)品定位清晰明確,技術(shù)成熟度越來(lái)越高,已經(jīng)開始出現(xiàn)在銀行、商業(yè)中心、社區(qū)、政務(wù)中心等場(chǎng)景,成為了安防安保領(lǐng)域的一支新力量?,F(xiàn)在國(guó)內(nèi)外對(duì)于深度圖像的研究還處在初級(jí)階段,基于深度圖像的研究更是不多,因此本設(shè)計(jì)具有廣闊的研究空間。
基于樹莓派的安防機(jī)器人組成如圖1 所示,多軸轉(zhuǎn)動(dòng)相機(jī)是由多個(gè)支撐板多角度調(diào)節(jié)機(jī)構(gòu)和多個(gè)相機(jī)轉(zhuǎn)動(dòng)電機(jī)組成的一體功能模塊,通過(guò)Python 語(yǔ)言編程運(yùn)用圖像處理算法實(shí)現(xiàn)Haar 特征人臉檢測(cè),從而準(zhǔn)確的檢測(cè)到每個(gè)進(jìn)入該區(qū)域的人。多軸轉(zhuǎn)動(dòng)相機(jī)采集人臉數(shù)據(jù)后,返回人臉數(shù)據(jù)后由樹莓派進(jìn)行識(shí)別處理,再通過(guò)匹配實(shí)現(xiàn)記錄非法侵入人員信息,最終發(fā)出警報(bào),并儲(chǔ)存到系統(tǒng)中,以供管理員查看。同時(shí)也通過(guò) 2.4G 無(wú)線局域網(wǎng)的網(wǎng)絡(luò)共享實(shí)現(xiàn)云端 服務(wù)器api 調(diào)用存儲(chǔ)資源并記錄,并可通過(guò)無(wú)線終端操控。
圖1 系統(tǒng)結(jié)構(gòu)圖
硬件系統(tǒng)是每個(gè)產(chǎn)品的首要設(shè)計(jì),基于樹莓派的安防機(jī)器人的硬件組成結(jié)構(gòu)圖如圖2 所示,由多軸相機(jī)模塊進(jìn)行人臉收集,通過(guò)串口將人臉數(shù)據(jù)傳輸給終端控制模塊,視覺模塊進(jìn)行圖像處理,處理完成后將相關(guān)數(shù)據(jù)通過(guò)2.4G 無(wú)線局域網(wǎng)發(fā)送回樹莓派與云端儲(chǔ)存人臉數(shù)據(jù)進(jìn)行比較,如果不匹配,通過(guò)通信模塊控制電機(jī)驅(qū)動(dòng)模塊發(fā)出警報(bào)并啟用YOLOv3 視頻流檢測(cè)搭配全向驅(qū)動(dòng)模塊對(duì)該對(duì)象進(jìn)行跟蹤。因?yàn)闃漭蛇B著2.4G 無(wú)線局域網(wǎng),因此可以實(shí)現(xiàn)云端服務(wù)器 api 調(diào)用存儲(chǔ)資源并記錄,并可通過(guò)無(wú)線終端操控。
圖2 硬件組成結(jié)構(gòu)圖
CSI 攝像頭是整個(gè)硬件系統(tǒng)的核心,它承載了人員圖像收集的任務(wù)。CSI-2 接口是由MIPI 聯(lián)盟組織于2005 年發(fā)布的相機(jī)串行接口,基于CSI-2 攝像頭數(shù)據(jù)傳輸過(guò)程使用了數(shù)據(jù)差分信號(hào)對(duì)視頻中像素值進(jìn)行傳輸,同時(shí)CSI-2 傳輸接口能夠非常靈活的進(jìn)行精簡(jiǎn)或者擴(kuò)展,對(duì)于樹莓派等接口較少的應(yīng)用場(chǎng)景,CSI-2 接口可以只使用一組差分?jǐn)?shù)據(jù)信號(hào)線以及一組差分時(shí)鐘線就能夠完成攝像頭的數(shù)據(jù)串行傳輸過(guò)程,這樣便減少了負(fù)載,同時(shí)也能夠滿足一定的傳輸速率,同時(shí)CSI-2 接口也能夠擴(kuò)展其差分?jǐn)?shù)據(jù)線,從而滿足多組數(shù)據(jù)線并行傳輸?shù)母咚僖?,這也是本硬件系統(tǒng)選擇CSI 攝像頭的原因。
傳統(tǒng)車輛的轉(zhuǎn)向在一些特定的環(huán)境里面使用起來(lái)非常不便,在特殊安防領(lǐng)域使用傳統(tǒng)車輛運(yùn)載拼裝會(huì)消耗大量的人力、物力和時(shí)間。本安防機(jī)器人采用四個(gè)麥克納姆輪組成全向運(yùn)動(dòng)模式,能夠讓機(jī)器人不用轉(zhuǎn)動(dòng)機(jī)身就能任意角度平移、旋轉(zhuǎn)。麥克納姆輪是由輪轂和圍繞輪轂的輥?zhàn)咏M成的,輥?zhàn)邮且环N沒有動(dòng)力地從動(dòng)小滾輪,麥克納姆輪輥?zhàn)虞S線和輪轂軸線夾角是45 度,并且有互為鏡像關(guān)系的A、B 輪兩種,或者會(huì)被稱為左旋輪和右旋輪。通過(guò)對(duì)比傳統(tǒng)車輛,普通車輛在移動(dòng)的時(shí)候輪子都是向一個(gè)方向轉(zhuǎn),而使用麥輪的車子在做全向移動(dòng)的時(shí)候,每個(gè)麥輪的運(yùn)動(dòng)方向都不一樣,麥克納姆輪想要做到真正的全向移動(dòng),每個(gè)麥輪都需要一個(gè)單獨(dú)的電機(jī)來(lái)驅(qū)動(dòng),所以我們參考設(shè)計(jì)了一套控制系統(tǒng)來(lái)把握每個(gè)輪子的轉(zhuǎn)向和轉(zhuǎn)速,以實(shí)現(xiàn)整個(gè)安防機(jī)器的高機(jī)動(dòng)轉(zhuǎn)向,達(dá)到無(wú)死角安防監(jiān)控的目的。同時(shí)我們使用的車底底盤加裝麥克納姆輪之后是精心設(shè)計(jì)的正方形,是最為理想的車底盤,能夠適應(yīng)于各類地形、材質(zhì)的地面。
圖3 安防機(jī)器人麥克納姆驅(qū)動(dòng)組
CSI 攝像頭主控在系統(tǒng)中主要完成人臉識(shí)別以及數(shù)據(jù)傳輸功能,其中人臉識(shí)別通過(guò)機(jī)器視覺算法來(lái)判斷是否有人進(jìn)入,數(shù)據(jù)傳輸則是通過(guò)向通信模塊發(fā)送指令來(lái)聯(lián)網(wǎng)以及將處理后的數(shù)據(jù)發(fā)送到云端服務(wù)器中存儲(chǔ)。
CSI 攝像頭主控軟件開始后首先進(jìn)行系統(tǒng)初始化操作,完成人臉檢測(cè)需要用到的Haar Cascade 特征檢測(cè)算法庫(kù)函數(shù)的初始化以及串口初始化,后續(xù)才能調(diào)用算法來(lái)檢測(cè)人臉以及使用串口相關(guān)收發(fā)函數(shù)與通信模塊進(jìn)行通信。初始化完成后CSI 攝像頭進(jìn)行現(xiàn)場(chǎng)照片的拍攝,并對(duì)照片進(jìn)行人臉檢測(cè)。在檢測(cè)步驟中檢測(cè)到人臉則加載PDI 算法與云端儲(chǔ)存的人臉進(jìn)行比較,然后將數(shù)據(jù)通過(guò)通信模塊發(fā)送到云端服務(wù)器中,發(fā)送完成后再次進(jìn)行下一次拍攝檢測(cè)。如果在檢測(cè)步驟中沒有發(fā)現(xiàn)人臉則直接進(jìn)行下一次拍攝檢測(cè)。
圖4 CSI 攝像頭主控軟件流程圖
人臉檢測(cè)所使用的Haar 特征是一種有效的目標(biāo)檢測(cè)方法。它基于機(jī)器學(xué)習(xí)的方法,由大量的正負(fù)樣本圖像訓(xùn)練級(jí)聯(lián)函數(shù),然后用于檢測(cè)其他圖像中的對(duì)象。Haar 人臉檢測(cè)采用固定圖像大小,采用不同尺度的滑動(dòng)窗口依次滑動(dòng)整張圖像進(jìn)行檢測(cè),檢測(cè)過(guò)程選取當(dāng)前滑動(dòng)窗口對(duì)應(yīng)的圖像區(qū)域進(jìn)行檢測(cè)和分類,把對(duì)應(yīng)的區(qū)域放入第一個(gè)強(qiáng)分類器,只要強(qiáng)分類器的任意弱分類器判別此區(qū)域不含人臉,就結(jié)束檢測(cè),并滑動(dòng)窗口至下一區(qū)域。若第一個(gè)強(qiáng)分類器判別出該部分含有人臉,就會(huì)送入下一強(qiáng)分類器進(jìn)行再檢測(cè)和分類,此后的過(guò)程和第一個(gè)強(qiáng)分類器,檢測(cè)為無(wú)人臉即滑動(dòng)檢測(cè)下一區(qū)域,若檢測(cè)為有人臉,則傳至下一強(qiáng)分類器判別為有人臉,如果最后一個(gè)強(qiáng)分類器判別為有人臉,則以窗口作為整張圖片的人臉檢測(cè)框。此方法識(shí)別速度較快,可以同時(shí)檢測(cè)多個(gè)人臉有較高的識(shí)別成功率,并可以方便輸出人臉識(shí)別信息與云端服務(wù)器校對(duì),達(dá)到安全檢測(cè)的目的。
在識(shí)別到非法人物入侵后安防機(jī)器人需轉(zhuǎn)換工作模式對(duì)非法人物進(jìn)行跟蹤,在此處采用了YOLOv3 算法實(shí)現(xiàn)行人檢測(cè)以及非法人物的選定與標(biāo)識(shí)。YOLOv3 系列算法的基本原理是利用固定大小的圖像作為網(wǎng)絡(luò)輸入利用回歸思想獲得邊界框的位置及其所屬類別。其在目標(biāo)檢測(cè)精度和檢測(cè)速度上都達(dá)到較為先進(jìn)的水平。
本安防機(jī)器人通過(guò)加強(qiáng)YOLOv3 算法特征提取能力來(lái)減少人體遮擋目標(biāo)的漏檢現(xiàn)象,對(duì)遮擋行人這類小尺度目標(biāo)的實(shí)時(shí)檢測(cè)起到一定的改善作用。遮擋行人檢測(cè)是智能視頻監(jiān)控中急需解決的問(wèn)題,復(fù)雜場(chǎng)景下實(shí)時(shí)檢測(cè)算法的研究可以更好地服務(wù)于實(shí)時(shí)視頻監(jiān)控中的人員跟蹤以及預(yù)警報(bào)警需求。本安放機(jī)器人主要是在對(duì)YOLOv3 算法應(yīng)用修改的過(guò)程中通過(guò)對(duì)網(wǎng)絡(luò)結(jié)構(gòu)剪枝提高網(wǎng)絡(luò)泛化能力,防止過(guò)擬合。采用卷積層剪枝的方法精簡(jiǎn)網(wǎng)絡(luò)冗余以及在網(wǎng)絡(luò)全連接層引入SSP 層增強(qiáng)了網(wǎng)絡(luò)多尺度特征融合能力。網(wǎng)絡(luò)由1×1 和3×3 大小卷積交替進(jìn)行卷積計(jì)算,全連接層輸出為y1、y2、y3 多尺度檢測(cè)各減去5 層卷積層,實(shí)現(xiàn)相對(duì)原始算法更優(yōu)的檢測(cè)效果,一定程度上提高算法的檢測(cè)準(zhǔn)確率和檢測(cè)速度,也減輕了硬件系統(tǒng)運(yùn)行的負(fù)擔(dān)。損失函數(shù)是決定網(wǎng)絡(luò)訓(xùn)練算法效果的重要因素之用于表示模型預(yù)測(cè)值和真實(shí)值間的偏差程度,本機(jī)器人的算法損失函數(shù)計(jì)算公式仍沿用YOLOv3 算法,綜合邊界框預(yù)測(cè)誤差、置信度誤差和分類預(yù)測(cè)誤差3 方面。
同時(shí)安防機(jī)器人針對(duì)主要安防場(chǎng)景制作遮擋行人數(shù)據(jù)集。目前主流COCO 公共行人數(shù)據(jù)集并沒有針對(duì)封閉、區(qū)域性場(chǎng)景做優(yōu)化。由于安防機(jī)器人需要以仰視角度采集圖像,攝像頭的傾斜觀察視角與人員運(yùn)動(dòng)交互過(guò)程中不同程度的遮擋與視角深度變化都會(huì)造成目標(biāo)尺度的多樣性,需要專門的訓(xùn)練集來(lái)提高整個(gè)算法的參數(shù)準(zhǔn)確性。數(shù)據(jù)集中包含公共交通樞紐、物流倉(cāng)儲(chǔ)、辦公樓宇走道等一系列場(chǎng)景照片。在收集圖片同時(shí)對(duì)原始圖片進(jìn)行縮放、裁剪、翻轉(zhuǎn)、改變對(duì)比度來(lái)增強(qiáng)圖像數(shù)據(jù),提高了模型的檢測(cè)精度,具有更好的泛化效果,提高魯棒性。同時(shí)本數(shù)據(jù)集具有一定的適用通用性,可運(yùn)在多個(gè)主流檢測(cè)神經(jīng)網(wǎng)絡(luò)算法,為后續(xù)產(chǎn)品算法升級(jí)迭代以及不同工作場(chǎng)景的切換提供了輔助作用。
在本安防機(jī)器人的設(shè)計(jì)中,PID 的算法控制是非常重要的一環(huán)。PID 就是對(duì)輸入偏差進(jìn)行比例積分微分運(yùn)算,運(yùn)算的疊加結(jié)果去控制執(zhí)行機(jī)構(gòu),在自動(dòng)化控制領(lǐng)域中有非常重要的應(yīng)用。本安放機(jī)器人在多個(gè)模塊控制中采用了增量式PID,增量型 PID 是對(duì)位置型 PID 取增量,這時(shí)控制器輸出的是相鄰兩次采樣時(shí)刻所計(jì)算的位置值之差,得到的結(jié)果是增量,即在上一次的控制量的基礎(chǔ)上需要增加(負(fù)值意味減少)控制量根據(jù)增量式公式可以很好地看出,一旦確定了 Kp、Ti、Td,只要使用前后三次測(cè)量值的偏差,即可由公式求出控制增量而得出的控制量Δu(k)對(duì)應(yīng)的是近幾次位置誤差的增量,而不是對(duì)應(yīng)與實(shí)際位置的偏差??刂圃隽喀(k)的確定僅與最近3 次的采樣值有關(guān),容易通過(guò)加權(quán)處理獲得比較好的控制效果,并且在系統(tǒng)發(fā)生問(wèn)題時(shí),增量式不會(huì)嚴(yán)重影響系統(tǒng)的工作,可以保證安防機(jī)器人在遇到突發(fā)情況時(shí)仍保證控制驅(qū)動(dòng)系統(tǒng)正常運(yùn)作。本安放機(jī)器人充分開發(fā)增量式PID 潛力并運(yùn)用在圖像采集時(shí)多軸相機(jī)控制與麥克納姆輪全向控制。
完成了系統(tǒng)的整體設(shè)計(jì)后需要大量的實(shí)驗(yàn)與測(cè)試數(shù)據(jù)來(lái)測(cè)試本安防機(jī)器上是否能投入實(shí)際應(yīng)用。首先將設(shè)備打開,連接上2.4G 無(wú)線局域網(wǎng)后,通過(guò)改變經(jīng)過(guò)安防守衛(wèi)區(qū)域的陌生人人數(shù),從而獲取陌生人入侵情況下多次警報(bào)檢驗(yàn)的正確率,并將相關(guān)數(shù)據(jù)記錄表。在通過(guò)人數(shù)分別為1-6 個(gè),每次改變?nèi)藬?shù)后均保證檢測(cè)次數(shù)為100 次,得到系統(tǒng)測(cè)試數(shù)據(jù)如表1 所示。由表1 的測(cè)試數(shù)據(jù)分析可以看出在通過(guò)人數(shù)為1-3 人時(shí)系統(tǒng)能保證100%的檢測(cè)正確率,而通過(guò)人數(shù)增加到4 人時(shí)檢測(cè)正確率雖然有所下降,但仍然保持在95%以上。而當(dāng)通過(guò)人數(shù)增加到6 人時(shí)報(bào)警正確率有較大程度地降低,因此整個(gè)系統(tǒng)的在同時(shí)通過(guò)人數(shù)在1-4 人時(shí)能保證較高的檢測(cè)正確率。
表1 安防機(jī)器人測(cè)試數(shù)據(jù)
本文基于樹莓派硬件平臺(tái)搭配相機(jī)視覺模塊人臉特征檢測(cè)來(lái)人臉檢測(cè),并將檢測(cè)數(shù)據(jù)通過(guò)處理實(shí)時(shí)與云端數(shù)據(jù)進(jìn)行配對(duì)比對(duì),結(jié)合電機(jī)驅(qū)動(dòng)系統(tǒng)搭配增量式PID 算法及YOLO 實(shí)時(shí)視頻流檢測(cè)實(shí)現(xiàn)區(qū)域安防管理,能夠廣泛運(yùn)用于倉(cāng)儲(chǔ)、交通樞紐區(qū)域。整個(gè)安防機(jī)器人識(shí)別率高、報(bào)警及時(shí),能夠做到全天候24 小時(shí)高可靠性工作,是系統(tǒng)投入商用的基本保證。