劉喜文,何 崗,楊賢文,張永杰,吳昳霏,郭晨光
(1.中國石油天然氣管道通信電力工程有限公司 衛星通信事業部,河北 廊坊 065000;2.武漢倍特威視系統有限公司 技術部,湖北 武漢 430070;3.北京航天愛威電子技術有限公司 工程部,北京 100039)
在石化、電力、煤礦及建筑生產企業施工過程中,容易引發各種安全事故,事故涉及的原因多種多樣,包括管理、人員素質、設備工具、以及其它各種問題。統計某石化企業事故原因,分析其中由于違章違紀作業導致事故的占46.5%,管理不善導致的事故占25.7%,人員素質與安全意識導致的事故占21.8%,其它原因導致的事故占6%。由此可見,由于違規操作或違反規定引起事故占比達68.3%,成為引發事故的主要原因。在石化、電力、煤礦、及建筑生產施工現場等危險場所作業時,均有佩戴安全帽的要求。不按規范佩戴安全帽將有非常重大安全的隱患。安全帽對人體頭部受外力傷害起保護作用,主要保護頭部,防高空物體墜落,防物體打擊、碰撞。
目前在視頻監控系統普遍使用的情況下,網絡和高清監控已經具備通過攝像機來采集作業現場視頻圖像的條件,通過視頻分析安全帽的顏色、輪廓、佩戴者的身形和各類觀察視角的變化因素,發現在戶外真實場景下,安全帽識別的準確性、普適性還是個難點[1]。
石油工地一般具有舊的模擬監控系統,為節約成本,開發一套基于GB28181協議的安全視頻監控平臺,其將私有協議的視頻監控攝像頭的實時視頻流轉成滿足國標協議的流,平臺兼容市場絕大主流品牌攝像機。整個系統的架構包括3個主要部分:①監控設備上采集的視頻源與智能分析引擎;②服務端上的策略管理與智能報警服務器;③客戶端上的智能報警瀏覽系統(包含處理單路視頻的單個瀏覽系統,或是包含大量攝像機的大型網絡瀏覽系統)。這些模塊可以在單臺計算機上,也可分布在不同計算機上。
智能分析引擎是系統的核心,對視頻源進行底層次的處理。策略管理與智能報警服務器主要通過預設的報警管理條件對處理過的視頻流進行高層次的分析,判斷是否符合報警條件。結合視頻行為分析技術和現場實際情況的研究,提出了活動目標提取+安全帽輪廓匹配+顏色提取+多層神經網絡分類+統計學模型的多層組合邏輯解決方法。圖1所示為系統整體軟件架構圖。
在安全帽識別系統的設計過程中,發現以下幾個因素對安全帽識別在室外環境下的識別率影響較大。
攝像機安裝需滿足以下條件[2]:

圖1 系統軟件架構
針對可變焦的球機,安裝位置角度較為寬泛。選用多預置位模塊,鏡頭變焦倍率在x23倍,可以觀察到更遠的如200 m~300 m遠的人,固定好攝像機、穩定成像的情況下通過多預置位切換分析視角和方位,最多可以支持4個~25個預置位。
針對槍機的安裝角度建議:攝像機光軸與地平面夾角至少15°,確保投影場景形成一定景深效果,攝像機與地面平行的軸盡量保持平行,不要傾斜安裝。
針對槍機安裝高度建議:在能看清目標的情況下盡可能高,室內建議2.5 m以上,室外建議至少5 m以上。表1列出了幾種常見的場景安裝參數(以下參數僅作參考建議)。

表1 攝像機安裝高度角度參數
攝像機在光照過亮或過暗的情況下,對成像質量都有較嚴重的影響,穩定的光源能顯著提高成像質量,提升檢測結果的準確率。為保證24小時的監控需求,攝像機需根據現場環境光照情況,布設光源或特定攝像機,以及確定合適安裝位置。
對于光照條件較強的環境,盡量選擇超低照度攝像機(如日夜型攝像機);攝像機安裝位置盡量不要選在容易出現逆光的位置,容易使光照影響分析結果。若攝像機有固定強光源干擾,可安裝照明燈進行補償。如果是室外環境及背光環境,為了防止光線的影響,建議選用寬動態攝像機,具體環境及情況請參見文獻[3]。
對于光照條件差的環境,需在攝像機周圍安裝配備紅外燈或照明燈,由于夜晚燈光會吸引昆蟲等動物,需要避免光源與攝像機相距過近,否則昆蟲飛舞遮擋可能會影響攝像機檢測結果及鏡頭成像質量。正確安裝如圖2所示,紅外燈或照明燈須與攝像機間隔超過1 m。

圖2 攝像機安裝光源
在設計完整無縫覆蓋監控區域時,多個攝像機的位置選擇有一定要求:
例如無論哪一款攝像機,身高為H的人在視野邊緣處無法覆蓋顯示全身,只有看到全身完整影像的區域才算是分析有效區域。當在視野邊緣處布設下一個攝像時,如果前一個攝像機只能顯示人的頭部,而下一攝像機只能顯示人的腳部,這對分析結果將造成影響。正確的設計方法是使兩臺攝像機有部分重疊,從而使任意時刻至少有一臺攝像機能看到身高H的人物的完整影像,從而能對當前人的特征進行完整分析。
適用于智能視頻分析的場景與傳統監控的場景有一定區別。傳統監控場景是為監控人員觀看的視角而設計,其主要特點是以方便看清目標細節的方式進行監控,較多使用中短焦鏡頭,場景也較窄。但如果在智能視頻分析的場景下,上述監控環境易造成目標抖動嚴重且易遮擋整個視頻圖像區域,造成人和場景特征的分類以及對人的尺度特征影響較大,此類場景應用的分析效果不理想。因此對于智能視頻分析,要求在保證能提取到目標特征的情況下,盡量安裝廣角攝像機增大視野,增加攝像機高度,增大俯角,以自上而下的方式監控分析活動目標,特別是針對室內空間較小的環境[4]。
表2舉例展示了不同場景下攝像機安裝的實際視頻素材。分別包含了幾個經典的應用場景(室內,周界,道路,鐵路)的合適與不合適的攝像機安裝素材。左列為不合適的安裝方式。右側為正確的安裝方式。

表2 攝像機安裝場景對照
安全帽是一種紋理比較少,輪廓較為明顯,顏色相對單一的物體,在實際應用的監控視頻里,即使使用目前檢測效果非常好的SIFT(scale invariant feature transform)特征[5],或SURF(speeded up robust features)特征[6],也很難對安全帽這一紋理材質較少的物體的識別產生較好的效果。因此,提出了一系列識別安全帽的方法,包括使用輪廓,顏色以及邊緣特征對這一物體來做描述與識別。
基于知識的安全帽檢測方法,對比傳統的HOG/HAAR等方法[7],將輪廓匹配用于安全帽識別,實驗結果表明會有較好的魯棒性。
(1)輪廓提取。針對待檢測的視頻幀,首先利用Sobel算子提取待檢測區域的輪廓,并進行濾波,高斯平滑等處理,使線條平滑。然后對輪廓以固定值offset進行均勻采樣獲取采樣點,對每個輪廓采樣點按如下方式計算其輪廓描述子
其中,si表示每個輪廓采樣點,Fi表示所有采樣點,|·| 表示計算其個數。
分別統計每個采樣點的局部尺度S,根據采樣點的局部尺度,進行內插法獲得所有點的尺度,對所有點按尺度正比進行重采樣。重新計算采用點的各輪廓描述子。最終計算的輪廓描述子是一個順序排列的 |Fi| 維特征向量[8]。
(2)輪廓匹配。采用DTW(動態時間規劃算法)[9]來進行輪廓匹配。通過比較與其它算法,DTW時間效率是最優的。已知模版開輪廓s與待檢測閉合輪廓t,首先計算兩輪廓各個采樣點之間的特征矢量距離,得到距離矩陣D。 定義兩輪廓上任意兩采樣點的矢量距離為

從而將輪廓匹配問題轉換為求解出一條最佳匹配路徑問題。D值在0-1之間,值越接近1 表示匹配越好。
根據一個安全帽輪廓,來對比其它輪廓和當前輪廓的匹配值,值越大相似度越大。在實驗中將此值根據經驗進行調整。用戶對檢測的靈敏度提高時,此值往小方向調整0.2,反之向接近1的方向調整0.6,精度變高,但漏檢測率會提升。
傳統技術方案遇到的問題會有以下情形,目標提取偏差,由于近似色塊、外形目標、燈光、環境光反射干擾,導致目標提取錯誤,造成漏檢和誤檢[10]。
圖3中,這是個典型的應用于無人值守開閉所的場景。人員在進入房間內時,畫面中會伴隨一系列環境光的急劇變化,當開、關門,開、關燈時,環境光與室內照明光線、攝像機的紅外輔助燈光交替出現、消失。看似單一的一個通道場景,在實踐中發現,各類背景的顏色、形狀、類似色塊,墻面和衣物漫反射的光線,會對安全帽目標部分準確提取、顏色分析、邊緣提取動作造成干擾。針對此情形,對比不同顏色空間RGB、HSI、LAB這3種模型。

圖3 各種場景環境下光線顏色變化
RGB(紅綠藍)顏色模型應用較為廣泛,適合于在數字圖像處理顯示領域,比如常用的顯示器屏幕顯示使用的就是RGB三通道模式。RGB模型也稱為加色法混色模型。它是以紅綠藍三色為原色光,通過三色互相疊加來實現混色的方法,由于其實現的簡單,因而廣泛用于各種顯示器及手機屏幕等各種發光體的顯示。其混色規律是:以等量的紅、綠、藍基色光混合。但是由于采集的目標是反射光,用RGB模型并不能很好反映色調的變化。
HSI(hue-saturation-intensity)顏色模型是美國色彩學家孟塞爾(H.A.Munseu)于1915年提出的,它反映了人的視覺系統感知彩色的方式,以色調(H)、飽和度(S)和強度(I)這3種基本特征量來感知顏色,詳細說明可參考文獻[11]。在HSI顏色模型的雙六棱錐表示,I是強度軸,色調H的角度范圍為[0,2π],其中,純紅色的角度為0,純綠色的角度為2π/3,純藍色的角度為4π/3。
Lab模式起源于國際照明委員會(CIE)在1931年所制定的一種測定顏色的國際標準。這項標準于1976年被改進,并且命名為Lab顏色模型。Lab顏色模型彌補了RGB和CMYK兩種色彩模式的不足。它是一種設備無關的顏色模型,也是一種基于生理特征的顏色模型,詳細說明可參考文獻[12]。Lab顏色空間比計算機顯示器甚至比人類視覺的色域都要大。a/b色域的表達方式,與要識別的紅黃藍黑等顏色對應,這為算法判斷安全帽的顏色提供了較好的依據,對于L值域的范圍要求弱,正好與現實中環境光照度多變的特性對應。
常用的顏色檢測模型有基于閾值的顏色范圍的檢測,參數化的高斯密度函數統計檢測以及非參數化的直方圖統計檢測等。
簡單的通過Lab顏色范圍來檢測安全帽顏色區域來判斷安全帽顏色區域,相當快速高效,在實時系統中具有一定的實際意義。例如,采用YCaCr顏色空間的CbCr平面,如果輸入的像素顏色落入給定的矩形閾值,就認定膚色區域,安全帽顏色區域同樣可以依據這種方式進行判斷檢測。采用的Lab顏色空間同樣取得了一定的效果。雖然這種方式比較快捷,但要取得更好的效果則需要考慮如何劃定這種顏色矩形區域,以及安全帽顏色的聚集程度。因此,提出了一種貝葉斯分類的方法,來檢測安全帽區域,實際應用中達到了很好的效果。這一方法包含了手工標注統計以及檢測兩個階段。
首先通過實時采集獲取到的圖像進行標注,獲取安全帽區域。對于不同種類的安全帽需要進行分類標注。然后對安全帽區域進行分塊統計。利用統計的結果再對待檢測圖像進行安全帽區域的提取。
在手工標注統計階段,對每一張圖片安全帽區域塊按Lab顏色空間進行統計,但是只用到了a,b兩個顏色通道而沒有統計L通道,L代表亮度,實際的監控視頻中光照變化范圍大比較敏感,L通道的值無法反應安全帽的區域。
對于每一個圖像點I(x,y),其顏色為c=c(x,y),則分別計算以下幾個統計特征:
(1)安全帽顏色在圖像中的概率P(s);
(2)每個顏色c在訓練集中的概率P(c);
(3)顏色c是安全帽顏色的概率P(c/s)。
基于以上的計算,利用貝葉斯公式,可以得到顏色c為安全帽顏色的概率
P(s/c)=P(c/s)P(s)/P(c)
針對每個安全帽區域塊,定義了一個高低閾值Tmax和Tmin,每一個P(s/c)>Tmax的圖像塊為安全帽區域,每一個P(s/c)>Tmin并且P(s/c) 由于受光線,圖像分辨率以及安全帽被部分遮擋等影響,SIFT一類的描述子在安全帽的識別上并不穩定,能穩定檢測安全帽紋理特性的特征描述子非常少。因此,提出了一種能夠適應光照,尺度以及遮擋等特性的描述這種紋理細節較少的物體的方法,圖4為安全帽模型建立步驟。 圖4 安全帽模型建立步驟 首先,針對安全帽原始模型,提取邊緣線段。直線提取算法(LSD)最初是由Von Gioi等提出的[14]。由于需要提取一個穩定的安全帽描述子,原始的直線提取算法對直線長度沒有限制,容易造成匹配不穩定。因此需在此基礎上做一些改進,使生成的線段長度相等。具體是通過設定一個線段長度閾值w,確保所有線段長度都至少能達到w閾值所達到的像素值。對原始LSD算法與改進后的算法結果對比,改進后的算法的線段提取方法更加穩定。 然后對安全帽模型圖建立遮罩區域并提取其矩形區域。 實際采集場景,頭戴安全帽在相機視角姿態方向尺度等各異,甚至存在手拿安全帽的情況,因此對安全帽的描述需要其適應旋轉與尺度的變化。確定起始點后,通過對提取的矩形區域做旋轉采樣,進行正反nr=8個方向的采樣。其中ml點為描述子起始點,為旋轉中心。每一個大的矩形包含4×4個塊。每個塊由一定量的像素組成。對于每個塊,統計其采樣值和角度信息,其中采樣值ns為 ns=σγRminn(lB) 其中,σ為當前的尺度,γ表示當前塊的線段像素的數據量復雜度信息,是歸一化的值,范圍在[0,1]之間。為0時表示當前塊沒有任何線段信息。Rmin表示最小的線段尺寸信息。n(lB) 表示線段數。 針對塊中的每個線段,其角度信息ai 式中:si表示線段的單位向量,gi表示梯度方向,tij表示描述子起始點lj與當前點的向量。下圖所示即為其中一個描述子的定義。對4×4的塊進行編碼,如圖5所示為邊緣特征描述子編碼方式,其中14號塊存在3條線段,a0,a1,a2分別為其角度信息。 圖5 邊緣特征描述子編碼方式 在完成場景以及模型的特征描述子構建后,對場景與模型進行特征匹配,匹配方式主要為尋找顯示候選起始點,對每個起始點與模型進行比對,即對比4×4個塊的編碼值,獲取歐式距離最小的描述子。然后通過kdtree搜索臨近點,對各線段搜索定位,進行精確匹配。 實際應用中,由于安全帽可能被不正確的佩戴,基于邊緣特征匹配方法由于能夠檢測到安全帽的佩戴方向,同時結合人體區域的檢測,判斷安全帽是否在頭部區域,綜合來判斷是否為不正確佩戴方式。提高準確率,減少誤報。 常見監控場景下,經常存在著樹枝隨風擺動,背景中物體的微小移動以及天空中的雨點或雪花,這些情況都會影響系統對安全帽目標的檢測和識別,需要對這些干擾目標進行濾波處理。 對安全帽目標檢測識別中可采用的方法有主成分分析、神經網絡方法、支持向量機、隱馬爾可夫模型、Adaboost算法等,類HAAR分類器作為機器視覺的基本算法,也被工業界廣泛的采用。本節主要針對濾除非人體的目標造成的誤檢進行眼鏡,為識別出安全帽,使用多層神經網絡,并運用CUDA加速算法,對系統進行分類優化[15]。 濾除目標干擾的分類器采用32層的神經網絡結構。由卷積層,池化層,route(路由)層,reorg(重構)層等網絡層構成。其網絡參數如圖6所示。由最后的檢測層輸出預測的類別概率值與檢測框坐標。其中,概率值可表示為 式中:Pr(Object) 表示檢測框包含目標的概率,BBgt表示基于訓練標簽的參考標準框(groud truth box),BBdt表示檢測到的邊界框。符號area(·) 表示框的面積。 圖6 多層神經網絡模型 每個檢測框包含5個參數,分別是stx,sty,tw,th以及Pr(Object)。 (stx,sty)表示檢測框的中心坐標,(tw,th) 表示檢測框的寬高。所采用的方法還預測了兩個類別的概率,即Pr(Class:人/Object) 和Pr(Class:安全帽/Object) 分別表示人和安全帽落入該檢測框的概率值,所以最后的輸出層共有13×13×125維的張量。 第25層和28層為route層。route層的作用是進行層的合并。30層輸出的大小是13×13,是指把圖片通過卷積或池化,最后縮小到一個13×13大小的格。每一個格的output數量是125(5×25),5是指對每一個13×13的小格配有5個邊框,25則是指每一個邊框輸出了25個浮點數。25個是YOLO 2對VOC的結構。 (1)數據集 準備安全帽識別數據。在訓練時為減少運算量,提高檢出的速度,將原來VOC訓練集進行重新采樣。采樣中分別對常規的紅黃藍白安全帽進行采樣,數量約為彩色 15 000 張,再轉換灰度為15 000張。圖7為部分樣例數據及處理結果示例。 圖7 安全帽訓練樣例與結果 (2)訓練平臺 訓練平臺是在PC機完成的,其主要配置為i7 6700k處理器主頻:4GHz,32G內存,以及一塊GTX1080 6GB顯卡。系統運行平臺是Windows 10。框架為Darknet。檢測器的檢測速度達到25幀/s,滿足實時性要求。 (3)訓練結果 將學習率設定在10E-5,在大約訓練迭代到4000次時,模型已經有一定效果。通過目標分類識別,可以進一步降低非人員誤報的機率,大約降低10%以上的誤報率。最后統計其在數據集上的查準率,查全率以及每秒識別幀數。結果見表3。 表3 測試集實驗結果 針對不同的使用場景,需要使用不同的優化算法。目前支持兩種典型場景:通道模式和場地模式。 通道模式,適用于進門場景。一般場景是結合門禁和人行閘機使用,如果沒有佩戴安全帽,則不會打開閘機,同時還能聯動音箱,發出友情提示“請佩戴安全帽進入!”或正確佩戴了安全帽,則直接打開閘機,允許用戶順利通過。 場地模式,是指在進入工作區內后,人員由于活動,會被全程跟蹤,當目標足夠清晰,頭部達到40×40個像素時,分析系統就會對是否佩戴安全帽做出持續分析判斷。如果被觀察者此時沒有佩戴安全帽,則會告警,抓拍圖片,同時將此信息和圖片發送給訂閱此服務的管理人員手機和電腦上。 系統在實際運行當中,統計誤報率為7%~11%,已經完全可以滿足無人值守的要求,同時隨著對現場環境的不斷自我學習,更新數據庫,調整算法參數,誤報率將會越來越低。2.3 安全帽邊緣特征識別



2.4 濾除目標干擾算法


2.5 算法驗證


3 結束語