陳彥希,劉新斌,董鵬,丁德紅
(1.國網湖南省電力有限公司常德供電分公司,常德415000;2.湖南文理學院,常德415000)
隨著我國經濟的快速發展,人們越來越重視工地的施工安全,迫切提高施工的安全水平。采用視頻監控的方式監管工地,能夠有效提高工地的安全水平,但普通的視頻監控系統一般采用有線網絡的方式傳輸,不適用于電網小型基建工地這類位置經常變換且偏遠的工地。所以我們采用4G 網絡的方式傳輸視頻信號,文獻[2,6]中也提出了采用4G 網絡的方式傳輸視頻信號,但其部署方式太過復雜、成本過高、系統不成熟和穩定性不高,而我們采用文獻[7]中提到的用專用4G 攝像機通過接入螢石云的方式轉發視頻信號,視頻傳輸保密程度高、傳輸穩定且螢石云在攝像機數量不超過10 臺的情況下可以免費使用,從而節省了系統成本,但是螢石云提供的視頻查看軟件具有一定的限制,所以我們在螢石云服務的基礎上調用接口設計軟件,優化界面,新增報警功能。這樣系統就非常符合電網小型基建工地遠程視頻監控的使用。
文獻[3]中提出了傳統視頻監控技術單一、資源大量浪費等問題,并引入人臉識別功能增強工地監控的智能性,我們考慮到工地安全員、項目經理、監理等相關負責人存在經常不去工地查看施工情況的問題,引入了人臉識別考勤,文獻[4]中也提到以人臉識別進行考勤,但他們采用單獨的Android 前端設備進行考勤的方式,增加了系統成本。我們采用前端抓拍后端比對人臉的方式進行工地考勤,大大減少了建設成本,且采用調用成熟人臉識別離線接口的方式替代文獻[5]中使用傳統的在基礎人臉識別算法上改進的方式,提高了識別的準確性和系統的穩定性。
眾所周知,安全帽是工地員工的生命的一個重要保護措施,但許多工人仍然忽視這一問題,常常需要安全員去人工監管,但人工監管不能夠時時刻刻進行監管,不少工人仍會存在僥幸心理不戴安全帽,所以將安全帽識別加入工地監控系統很有必要。可以消除工人僥幸心理,提高工地安全監管效率,目前市場上也有許多類似的檢測方法,檢測安全帽的方法大致分為兩種,第一種是基于機器學習的安全帽檢測方法,如文獻[1]提出了一種基于YOLOv3 算法和SVM 分類器的方法進行安全帽識別的方法,這種方法雖然精準但是速度較慢且對服務器壓力較大,不適用于我們這種位置不同的多路視頻流檢測,并且技術難度大,我們采用另一種檢測方式,既通過人臉定位安全帽潛在區域,對該區域進行RGB 像素點遍歷,計算出視覺紅色和視覺黃色在該區域所占比例,若所占比例高達80%則認為佩戴了安全帽。該方法雖然準確性沒有深度學習檢測的方法高,但是速度快,算法簡單穩定,正好符合電網小型基建工地的檢測使用。
國網常德供電公司需要一款部署在手機、桌面終端的管控軟件。該軟件能實現對電網小型基建等施工過程和施工安全的全過程監控,方便公司實時掌握施工進度和施工過程影像資料,及時發現安全隱患,為突發事件提供較為精準的、有依據性的過程資料與證據,確保施工過程中的安全、質量可追溯。同時,可以節約公司和項目管理人員往返施工現場的時間,有利于施工現場安全管控及時準確,提高工作效率。
根據實際場景的要求,我們為系統劃分了六個功能需求。
(1)采用4G 網絡對偏遠地區工地實時視頻監控;
(2)建立完善的員工信息庫,要求信息導入和編輯便捷;
(3)建立完善的異常報警信息庫和工地信息庫;
(4)對工地負責人進行人臉識別并記錄,按工作月考勤,次數不達標報警;
(5)對不戴安全帽的人員,取證并報警;
(6)能夠動態檢測,畫面有變化才錄像,采用128GB SD 卡保存錄像。
根據系統特點,采用典型的C/S 架構,由工地的前端設備(采集端)、云服務器上的遠程視頻監控系統(服務端)和Android 實時查看軟件(客戶端)共三部分構成。每個工地有1 個采集端,各工地視頻設備均相同,采集端分布在市內各個電力基建工地,各采集端設備均通過4G 網絡接入螢石云,等待客戶端的調用。
本文中,前端設備采用海康威視型號為DS-2CD7847FWD 的智能網絡攝像機,該攝像機支持4G網絡、螢石云、人臉抓拍、移動偵測和斷網續傳功能完全符合系統需要。

圖1 系統架構圖
人臉識別考勤部分:
前端設備啟動之后,一直處于監控狀態,在監測到有人臉出現時自動進行抓拍,通過網絡將抓拍到的人臉推送至專用人臉識別云服務器,系統會自動監測到圖片,并將圖片讀入內存創建副本,對副本進行剪裁,剪裁后調用虹軟離線人臉檢測接口檢測人臉位置,獲取人臉位置后通過虹軟離線人臉特征接口提取該位置的人臉特征,在根據文件名判斷所屬工地,調取相應工地的員工人臉特征通過虹軟離線人臉比對接口進行比對,并判斷相似度最高的員工是否達到要求,將達到要求的記錄加入數據庫。
安全帽識別部分:
獲取圖像后會創建一個副本圖像,系統通過調用虹軟人臉檢測接口判斷人臉在圖像中的位置,并截取人臉上邊緣上人臉高度三分之一的區域,這個區域是安全帽的潛在區域。因為工地光線的原因,安全帽的紅色或黃色可能會存在很多情況,我們通過大量測試得到視覺紅色和視覺黃色的RGB 值范圍,為了更精確地判斷,我們將該范圍精細到很多小的范圍,范圍見表1。通過遍歷RGB 像素點得出在我們定義的視覺黃色和視覺紅色范圍的數量和總像素點的比值,若比值大于80%,我們就認為該員工有佩戴安全帽,未達到的將會加入報警列表,公司相關負責人可通過專用App 查看到帶照片的未戴安全帽報警信息。

圖2 人臉識別考勤流程圖圖

圖3 安全帽識別流程圖

表1 視覺紅色和視覺黃色的RGB 值范圍
遠程視頻監控部分:前端攝像頭通過4G 網絡與螢石云服務器建立加密連接,用戶通過手機App 向系統服務器發送登錄請求,系統驗證身份后檢測登錄token 是否過期,若過期將會向螢石云服務器發送登錄token 更新請求,并將更新后的登錄token 加密后發送給用戶,用戶解密后登錄系統專用客戶端,再向螢石云發送視頻預覽請求,此時前端攝像頭才會與螢石云服務器建立數據傳輸通道,將視頻數據通過螢石云轉發給用戶。
服務端主要功能是各個工地人臉和安全帽集中識別、員工信息管理、工地信息管理、數據交換和考勤管理。
服務端界面美觀,操作簡便,能夠設置工地的施工時間、裝修時間,自動進行考勤,對未帶安全帽報警和工地負責人工作月考勤次數未達標報警。
人臉識別部分采用虹軟離線人臉識別算法,該算法識別速度快、準確度高,能夠很好的完成預期考勤功能。
后臺數據庫采用MySQL,Web 服務采用WebServiceHost 類建立連接方式,Web 主要作用是負責服務器與客戶端通信,通信方式是以HTTP 的方式進行的,鑒于HTTP 協議存在可能被監聽的風險。所以在本系統中,對App 向服務器發送的數據,我們采用了多重加密手段,典型的方法是通過MD5 對數據接口簽名驗證和數據內容加密。具體方法是將數據請求的內容、當前時間戳和加密密鑰混合后計算該混合字符串的MD5值。將數據內容與計算出來的MD5 一起發往服務器。服務器接收到請求后,同樣根據數據內容和時間戳以及加密密鑰計算出一個MD5 值,且同一個時間戳的計算值只能驗證一次,若計算出的MD5 值與接收到的MD5 值相同,則驗證通過。
我們采用MySQL 數據庫,MySQL 作為輕量級數據庫相比DB2、Oracle 等具有部署靈活即時使用的特點,使用MySQL 數據庫有助于系統的部署和系統的擴展,非常符合項目要求。

圖4 服務端界面效果

圖5 現場畫面
客戶端采用Android App,客戶端主要實現工地視頻預覽和工地報警信息接收。App 在螢石云demo 的基礎上優化界面,刪除一些系統不需要的功能,內置token 獲取算法,第一次安裝時需要輸入使用密碼解鎖,解鎖后再次使用時會自動向系統服務器請求獲取登錄token。新增報警信息界面,使用okhttp 的方式與服務器進行通信,能夠查看報警信息列表和詳情頁。
本文設計并實現了一套完整的電網小型基建工地遠程視頻監控系統,首先通過大量的比對測試選出了合適的硬件設備和系統構架,在視頻監控的基礎上集成保障工地安全的人臉識別考勤、安全帽識別等功能。系統的組成包括基于.NET WinForm 框架構建的管理系統和基于Android 客戶端。開發環境為Visual Studio、Android Studio,使用C#語言和Java 語言對設計的系統進行實現,數據庫平臺為MySQL。通過本系統可以通過4G 網絡進行視頻監控,解決傳統的視頻監控系統安裝和配置困難的問題,實現了通電即可用。加入人臉識別算法和安全帽識別算法,實現24 小時無人值守。系統實現了對電網小型基建工地進行遠程視頻監控、工作人員身份識別并生成考勤打卡記錄和未帶安全帽員工報警功能,為類似基建項目的信息化管理提供借鑒。

圖6 App界面效果