王金岑,郭曉丹*,路家琪,徐 彰
(1.南京信息工程大學電子與信息工程學院,江蘇 南京 210044;2.南京信息工程大學人工智能學院,江蘇 南京 210044)
隨著計算機技術、數據通信技術、圖像處理技術的不斷創新與發展,傳統的視頻監控系統已逐步向智能化、無人化、集成化轉變[1-4]。智能安防系統從20 世紀末開始發展,到如今已經得到大規模普及,其蓬勃發展的勢頭受到業界廣泛關注[5-8]。
傳統的視頻監控系統只包含簡單的畫面采集和傳輸,在檔案室、倉庫等無人環境中需要由專門人員在固定的時間查看監控區域,當不法分子或可疑人員闖入時,需要人為進行判斷,無法快速并及時地對安全事故做出反應,難以滿足日益增長的智能安防需求[9-11]。此外這類無人場合對環境參數如溫度、濕度都有較高要求,也需要對火災的發生及時作出反應,已有的方法是另外設置一套環境監測系統來解決上述問題,但這樣增加了成本且集成度不高。并且大部分單獨的環境檢測系統無法遠程報警,只能現場發出警報[12-13],當現場無人值守時,無法對檢測系統發出的警報及時做出反應,容易發生安全事故,造成生命財產損失。
針對上述問題,本文研究并設計了一種在Robei EDA 環境下開發[14]的基于FPGA[15-17]的智能安防系統,實現了視頻監控、環境監測、遠程報警的集成化。系統使用多種數字圖像處理技術,可以智能檢測入侵的可疑目標;環境監測系統智能監測溫度、濕度、煙霧、火焰等環境因素;當發生安全隱患時系統自動報警,在現場報警的同時通過無線傳輸技術將報警信息發送到指定人員的手機上,第一時間阻止安全事故的發生。此外系統還可通過云端網絡技術搭建智能監控組網,可以同時監控多個遠距離場景。
Robei EDA 軟件是一種由青島若貝公司開發、全新的面向對象的可視化芯片設計軟件,可以支持基于Verilog 語言的集成電路前端設計與驗證。Robei EDA 工具具備可視化架構設計、核心算法編程、自動代碼生成、語法檢查、編譯仿真與波形查看等功能。設計完成后可以自動生成Verilog 代碼,可以應用于FPGA 和ASIC 設計流程。
系統的整體架構可以分為五個部分,即門禁檢測系統、多傳感器融合的入侵監測系統、環境數據及火災監測系統、無線報警系統、多節點監控組網系統。
系統的工作流程如下:門禁檢測系統作為安防系統的第一道防線,若來人通過指紋驗證即判斷為合法人員進入,非法入侵報警取消。入侵監測系統中的超聲波模塊、無線雷達探測模塊和攝像頭模塊將作為第二道防線,若來人在指紋驗證未通過的情況下繼續闖入,系統在探測到人體的存在后判斷為非法入侵并發出警報,同時攝像頭自動捕捉并跟蹤畫面中入侵的可疑人員。此外,系統對于室內火焰、煙霧和濕度等信息進行監控,如果室內出現明火、煙霧或過于潮濕時發出警報。使用WiFi 通信技術連接上位機,接收人員入侵、環境參數異常等報警信息,并自動生成報警日志。在WiFi 短距離通信的基礎上,通過SIM 卡發短信的方式,實現超遠距離實時報警。多節點監控組網系統可以定位系統的位置,將數據傳輸到云端,構建多節點智能監控網。圖1、圖2 分別是系統的總體框圖和實物圖。

圖1 系統總體結構框圖

圖2 系統實物圖
門禁檢測系統由ATK-301 指紋識別模塊組成,可以通過串口進行驅動,誤檢率底。
門禁檢測系統作為安防系統的第一道防線,對未知身份者進行第一次篩查,若指紋認證通過,則系統判定為有權限進入,后續入侵警報解除。若指紋認證未通過,則后續入侵監測系統繼續工作,實時監控非法闖入者。
多傳感器融合的入侵監測系統由超聲波探測器、無線雷達探測器、紅外溫度傳感器、OV5640 攝像頭、LCD 顯示屏、WiFi 攝像頭、舵機云臺組成,構成第二道防線,對非法闖入者進行實時監測。
超聲波模塊實時探測系統前方的距離,若有人非法闖入,探測距離發生變化,將會觸發警報。添加人體檢測模塊和紅外溫度傳感器,減少誤檢率。
OV5640 攝像頭作為主攝像頭,通過幀間差分法[18],對闖入目標進行實時監測并框選,將其顯示在LCD 屏幕上,并將非法闖入的警報信息通過無線報警系統傳輸至上位機和手機接收端。采用了直方圖拉伸算法,加強了在黑夜、濃霧天氣等環境下的監測效果。
WiFi 攝像頭作為輔助攝像頭,與舵機云臺相結合,檢測到非法入侵時,將監控畫面中心實時跟蹤入侵人員,并將拍攝到入侵者的圖像通過無線網絡傳輸手機APP 上,對一些主攝像頭的監控死角進行拍攝,從而達到無死角的監控效果。
環境數據及火災監測系統由火焰傳感器、煙霧傳感器、CO 傳感器、GY-39 環境監測模塊組成。旨在對室內的環境數據進行監測并判斷是否發生火災及其他事故。報警信息與環境信息組合成信息數據幀,由無線報警系統實時發送至上位機和手機接收端,及時提醒管理人員室內發生的事故類型。
無線報警系統由 WiFi 模塊、藍牙模塊、SIM900A 模塊、電腦上位機、手機APP、手機短信接收端組成。旨在提高系統的實際價值,實現不同距離的無線報警,且通過更加友好的人機交互界面提高使用者的用戶體驗。系統通過WiFi 模塊向電腦上位機傳輸報警信息和環境數據,實現較短距離的無線傳輸功能;通過SIM900A 模塊驅動SIM 卡向手機發送報警短信,實現超距離報警。
多節點智能監控組網系統由ATK-S1216 北斗定位模塊和云網絡數據傳輸模塊組成。
將系統投放至多個區域,通過高精度定位系統確定各子系統位置,子系統將監測信息和位置信息上傳至云網絡,通過云端上位機統一處理各子系統的數據,實現智能監控組網。圖3 是智能監控組網結構示意圖。

圖3 智能監控組網結構示意圖
本節將對系統采用的各個算法進行介紹。
采用幀間差分法檢測非法闖入者的位置,在顯示畫面上使用外接矩形框實時標注目標,實現對區域場景的入侵檢測與追蹤識別。圖4 介紹了移動目標檢測算法流程。

圖4 移動目標檢測算法流程圖
3.1.1 幀間差分法
將攝像頭采集的數據轉換為RGB 格式,之后將數據分成兩路,一路直接送入SDRAM 的寫通道1,由LCD 驅動模塊使能讀通道1,讀出后做為輸出數據1;另一路進行格式轉換,將RGB 轉換為灰度格式,寫入SDRAM 寫通道2,并將通道1 的寫使能延時一幀后作為通道2 的讀使能,得到兩個相差一幀的視頻數據流。差分模塊對兩個數據流做差,如果某一個像素點上前后兩幀的數據差值大于某一閾值,就認為該像素點上出現了移動物體。遍歷全部像素,即可確定移動目標的位置。差分公式如式(1)所示:
式中:x1為上一幀的圖像數據,x2為當前幀的圖像數據。
差分模塊處在攝像頭數據的時鐘域下,時鐘為24 MHz,二值化模塊處在LCD 時鐘域下,為25 MHz。雙端口RAM 模塊將差分結果存儲起來后讀出,解決跨時鐘域帶來的數據錯誤問題;使用兩個RAM 進行乒乓操作,避免讀寫同時進行造成顯示畫面撕裂。
對二值化的圖像使用中值濾波、高斯濾波和開運算進一步處理,增強圖像質量。遍歷所有像素點確定移動目標外接矩形框的頂點座標,與SDRAM讀通道1 輸出的RGB 圖像同時送入屏幕顯示,完成對畫面內移動目標的實時框選。
3.1.2 灰度轉換
使用公式將視頻由RGB 格式轉換為YCbCr格式:
3.1.3 中值濾波
中值濾波對于某些類型的隨機噪聲具有理想的降噪能力,對于消除椒鹽噪聲效果理想。在FPGA中,傳統的中值排序法較為耗費資源,采用快速中值法排序節省開銷。圖5 是中值濾波原理圖。

圖5 中值濾波原理圖
3.1.4 高斯濾波
在進行數學仿真或者誤差評估時,往往認為傳感器所引入的噪聲服從正態分布,這個時候高斯濾波器可以很好地消除高斯噪聲。高斯卷積模板為二維正態分布密度函數,如式(3)所示:
高斯濾波后圖像被平滑的程度取決于標準差。因此,高斯濾波比均值濾波的平滑效果更柔和,克服了邊界效應,可以較好地保留圖像的細節。
3.1.5 開運算
腐蝕是一種消除邊界點,使邊界向內部收縮的過程。可以用來消除小且無意義的物體。圖6 為以3×3 矩陣實現腐蝕。

圖6 腐蝕原理圖
腐蝕之后的圖像再進行膨脹,就是開運算。膨脹是將與物體接觸的所有背景點合并到該物體中,使邊界向外部擴張的過程。開運算可以填補物體中的空洞,使細小的溝道斷開,將狹窄的白線斷開,消除白點。圖7 為以3×3 矩陣實現膨脹。

圖7 膨脹原理圖
系統可以對于監控畫面中出現的移動目標進行進一步的識別,區分出人與動物。
通過觀察人體在行走時和貓、狗等常見動物移動時的姿態特征,發現人在行走時移動區域呈現一個非常明顯的豎立的矩形,而動物多為四肢爬行,在移動呈現出較為明顯的橫置矩形,基于此初步設計了人與動物的識別流程。
首先對監控區域進行移動目標檢測,當出現移動目標時,判斷移動目標的外接矩形是否滿足一定的長寬比,當滿足一個明顯的豎立矩形的長寬比例時,初步判斷為行人;若滿足明顯的橫置矩形的長寬比例,初步判斷為動物,否則為其他。
同時對畫面進行膚色檢測,將膚色區域的像素進行標注。膚色檢測的流程如圖8 所示。

圖8 膚色檢測算法流程圖
之后再分析在第一步中判斷出的行人區域中是否包含膚色像素,若該區域膚色像素點的比例多于設定的閾值,判斷為行人。
上述情況大部分建立在白天情況下,在黑夜、濃霧天氣等光線較弱的情況下效果不太理想,基于上述考慮,采用了直方圖拉伸的方法,增強特殊環境下的監測效果。
權衡FPGA 資源的消耗與處理的延時,采用偽拉伸的方法。偽拉伸方法在前一幀統計圖像中灰度的最大和最小值,用來對本幀圖像進行拉伸處理。設f(x,y)為輸入圖像中所有像素的灰度值,它的最小灰度級A和最大灰度級B的定義如式(4)所示:
在第二幀進行拉伸,輸出拉伸后的圖像,如式(5)所示:
在對傳感器的數據進行處理時,會經常用到除法運算。編譯器自動生成的除法器,資源消耗較大,設計了一種模擬手算除法的除法器,成功減少消耗2 000 余個邏輯門資源,其流程圖如圖9 所示。

圖9 除法優化算法流程圖
使用C#設計系統的上位機,具有非常友好的人機交互界面,其界面功能大致分為以下幾個部分:
3.5.1 警報數據警報數據可分為:指紋驗證、非法入侵警報、移動目標檢測、火焰警報、煙霧警報、一氧化碳警報。
3.5.2 環境數據和系統閾值環境數據包括溫度、濕度、氣壓、海拔。系統閾值包括超聲波測距閾值和移動目標差分閾值。
3.5.3 模式切換
上位機可以切換系統至黑夜模式和正常模式。
3.5.4 電機控制
上位機控制WiFi 攝像頭旋轉,可切換為自動掃描、手動掃描模式。手動掃描模式可以自由控制攝像頭旋轉角度。
3.5.5 閾值修改
上位機可以手動修改閾值信息。針對不同的環境選擇合適的距離探測閾值和移動目標差分閾值,使系統對于不同的環境具有適應性,上位機功能如圖10 所示。

圖10 上位機功能簡介圖
系統上電后,各個子系統完成初始化后并行工作,同時將各個系統的數據無線傳輸至上位機,完成信息交互。
當部署多臺設備時,通過云端將每一臺設備的信息進行匯總處理,在組網終端實時監控設備列表中任意一臺設備的信息。
系統的具體實現流程如圖11 所示。

圖11 系統流程圖
系統發出警報之后自動生成報警日志,對警報的事件和時間進行記錄,方便日后查看。
門禁檢測系統作為安防系統的第一道防線,對未知身份者進行第一次篩查,若指紋認證通過,則系統判定為有權限進入,后續警報解除。若指紋認證未通過,則后續入侵監測系統繼續工作,實時監控非法闖入者。門禁檢測效果如圖12 所示。

圖12 門禁系統實現效果圖
多傳感器融合的入侵監測系統組成第二道防線,對非法闖入者進行實時監測。在監控畫面上實時顯示并跟蹤入侵者,并發送報警信息。入侵檢測實現效果如圖13 所示。

圖13 入侵檢測系統實現效果圖
火焰傳感器、煙霧傳感器、CO 傳感器分別在感應到明火和煙霧濃度、CO 濃度超標后產生報警信息,報警信息由無線報警系統分別發送至上位機和手機接收端,提醒管理人員室內發生的安全事故。
環境監測模塊實時監測室內的溫度、濕度、氣壓等信息,并將信息幀實時發送至上位機,管理人員可通過上位機實時監測室內環境。環境數據及火災監測系統實現效果如圖14 所示。

圖14 環境數據及火災監測系統實現效果圖
系統通過WiFi 模塊向電腦上位機傳輸報警信息和環境數據,驅動SIM900A 模塊驅動SIM 卡向手機發送報警短信,實現超遠距離的報警。系統自動生成報警日志,對警報的事件和時間進行記錄,方便監控人員日后的查看。無線報警系統實現效果如圖15 所示。

圖15 無線報警系統實現效果圖
多節點智能監控組網系統定位每個子系統的位置,將數據傳輸到云端,構建多節點智能監控組網。監控組網實現效果如圖16 所示。

圖16 監控組網系統實現效果圖
文中研究并設計了一種智能安防系統,詳細研究了系統的軟硬件設計并進行總體實驗測試。
文中設計的智能安防系統基于FPGA 以及Robei EDA 軟件,具有極強的可重構性和并行處理的速度優勢,系統集成化、小型化,降低了成本。系統使用多種圖像處理算法實時監測并跟蹤入侵目標,集成了環境監測和遠程報警系統,精度高、運行穩定、實時性強,適用于各種復雜的場合內長時間使用,達到了設計的初衷,具有一定的使用價值。