袁 珍
國家統計局數據顯示,僅2019年一年就發生較大火災802起,重大火災8起.火災不僅危害到人民的生命安全和財產安全,還給國民經濟帶來重大損失,特別是在一些特殊場合,例如高層建筑、人員密集場所、貴重物品倉庫、危險品堆放和加工場所等,消防安全顯得尤為重要.
傳統的消防監控系統一般在設計和使用時都存在一定的局限性,過于依賴使用場所,或依賴于人工監管[1].消防設備、監控終端等使用的范圍受到很大限制,無法實現靈活、多場景、多系統的交互和共享.研發和推廣具備智能報警功能的消防聯動系統可以較好地解決目前消防管理面臨的困境.
物聯網技術的發展使得具有上述特點的消防聯動智能報警系統能夠得以實現.在消防管理中引入物聯網技術,一方面可以增強企業和社區的消防管理能力,提高監管效率;另一方面有利于提升社會應對各種自然災害和人為破壞等險情的能力,及早預防和控制災情,減少經濟損失.
目前市面上已有的消防聯動報警系統普遍具有較強針對性,例如針對人員密集,或易燃易爆危險場所,這些系統雖能在特定場景中發揮作用,但通用性較差,轉移場景后常常無法適用,導致報警效率大大降低.
文中設計的消防聯動智能報警系統針對以上問題作了改進,能實現消防傳感器的遠程無線接入和各站點之間的互連通信,靈活性強.系統可根據實際需要,添加或減少傳感器及反向控制設備,并配合物聯網管理平臺,實時顯示各種消防設備的狀態,供管理人員查看[2].另外,系統通過對監控視頻進行圖像處理,可初步判斷是否存在火苗,據此發出火災預警.
下文主要闡述消防聯動智能報警系統的設計和實現過程,包括硬件系統和軟件系統的技術實現.硬件系統主要介紹無線傳感網絡的搭建,軟件系統重點闡述如何基于圖像處理技術實現火災預警.
本系統的硬件主體是無線傳感網絡,主要功能是各類傳感器的狀態報告、初步火災預警和反向控制.本文搭建的無線傳感網絡主要使用在各種室內環境下,尤其是化學化工類實驗室、檔案室、貴重物品倉庫等.針對現場環境,設置不同的傳感器進行數據采集,以此將地理位置上分散的采集點連接成一個星型拓撲無線傳感網絡,如圖1所示.通過單片機將采集到的傳感器數據發送給控制器進行判定,對信息進行丟棄/預警的處理,再將處理過的信息推送至云端Web平臺,用戶可以在平臺上獲得信息,不受位置限制.

圖1 無線傳感網絡框架圖
搭建無線傳感網絡需要的主要硬件及其功能如表1所示.

表1 系統主要硬件及功能
傳感器節點通過Zigbee與終端節點CC2530單片機無線連接,CC2530集合射頻收發器和增強型8051CPU于一體,在開發時兼容了8051的業界標準,可以使用普通的51編譯器編程開發,降低了開發的難度.CC2530結合了領先的RF(射頻)收發器的優良性能,可以建立強大的網絡節點,系統內置可編程閃存,使得它尤其適合超低功耗要求的系統,是目前廣泛應用的SoC(片上系統)解決方案.信息采集終端電路如圖2所示.

圖2 信息采集終端電路
在主控制器的選擇上,需要考慮主控制器必須全時間運行,還要保證終端節點采集的信息能夠順利發送至云端.除了傳感器信息外,還需要處理監控設備傳輸來的視頻流,因此主控制器必須具備一定的數據處理和存儲能力,并且在數據處理速度上也有一定的要求.因此本系統選用集成ARM單片機和DSP芯片的LM3S5749,此芯片功耗低、運算精準,同時具備主控功能和數據處理功能.
網關模塊的作用是將主控端與云平臺建立WiFi聯系,用戶可以通過Web端或者移動終端讀取到環境狀態信息,同時也可以用WiFi的方式反向發送控制命令.
大部分的火災傳感器都有局限性,例如煙霧傳感器不適用在某些火焰煙霧小的應用場合.對于某些貴重物品倉庫、檔案館和機房的防火工作,僅僅靠傳感器監測準確性較差,可以通過增加火災監控視頻的智能判定,做到萬無一失.
火災視頻檢測是通過數字圖像處理技術完成對視頻監控傳輸過來視頻流的檢測分析.目前國內外研究火災視頻實時智能檢測的算法非常多,通過對比和分析不同算法的優勢和弊端,最后確定使用OpenCV作為本系統火災視頻檢測的實現手段.OpenCV是一個開源的輕量級跨平臺計算機視覺軟件庫,它可以使用多種語言編程實現,本文選擇使用時下流行的Python語言,在Linux操作系統測試和運行.使用OpenCV進行視頻處理,優點在于處理速度快,實現方法簡單,可以實現流暢的視頻實時輸出.這也是目前圖像處理方面的通用選擇.
在火焰識別時,遇到的難點主要有幾個方面:
①火災發生時火焰一般是由小到大發展,特別是火災初期的火焰小,密度低,不易識別,有些常用圖像識別算法的識別率較低.
②火災時火焰種類繁多,顏色上大部分是黃色,但也有部分金屬火焰是白色、綠色或藍色.從體積上看,有些材料的火焰大、煙小,有些材料則相反.這些都給識別增加了難度[3].
③圖片或視頻中很可能出現類火物體的干擾,例如明黃色物體、燈光、某些材料反光,增加了誤判的可能[3].
因此本文在傳統的圖像處理方法基礎上,針對以上存在的問題進行改進,提出一種更適合火災初期火焰的實時檢測方法,并對其進行可行性實驗.
首先將攝像頭遠程傳輸得到的視頻流通過OpenCV進行處理,將視頻拆分為幀,得到的每一幀都視為一張圖片.此步驟將視頻檢測轉化為了圖像檢測,降低了處理難度.由于使用火災視頻智能檢測的一般是無人場合,圖像在大部分時間內是靜止不動的,因此給火災監控視頻的智能判定帶來了很大方便,可以利用差分法對相鄰兩幀圖片運算,以確認圖片是否存在動態變化,若無變化,則不用進行后續處理,可提高檢測效率.
當確認圖片存在動態變化區域時,需要使用RGB和HIS顏色空間聯合判定動態區域是否存在疑似火焰.
火焰的RGB空間規則是R>G>B,R>RT,RT表示紅色R的設置閾值.但是在RGB顏色空間中,三種顏色的取值與目標顏色之間的聯系并不直觀.而HIS空間是一種人眼看起來比較直觀的顏色空間,因此需要進行空間轉換.RGB空間轉換為HIS空間的規則如下[4?5]:

火焰的HIS空間規則為:
判定時的閾值需要根據多次實驗確定,并結合環境等因素動態調整.例如一般的火焰顏色認定為明亮的黃色,常用判定閾值為H:0~60、S:20~100、I:100~255;火焰若處在露天環境,則需要將I閾值調大些.對于某些特殊顏色火焰的判定,需要重新選取閾值.閾值的選取能夠影響到火焰檢測的準確率.本文案例中,為了提高精準度,在模擬特殊顏色火焰的場所,取多個顏色閾值進行多次判定,再綜合提取結果[4].
以上是基于顏色規則檢驗圖片中是否存在疑似火焰區域,此方法的缺陷是不能很好地排除類火物體.為了降低誤判概率,本文在判定火災預警前,還要與目標區域的傳感器參數作綜合對比,排除人造光源等類火情況.最終才判定是否為火災預警,發出預警信息.火災視頻檢測的流程如圖3所示.

圖3 圖像處理流程
在上述理論基礎上,使用OpenCV結合Python語言編寫出測試程序,選取互聯網上某些火災圖片進行火焰識別的性能測試,對程序判定有火焰存在的區域使用方框標出.在所取的50個樣本圖片中,火災識別率高達86%,部分測試結果如圖4所示.

圖4 圖像處理的測試結果
在信息發布端采用C語言作為開發語言,大大降低了開發難度.并結合MySQL數據庫,存儲不同節點的位置、狀態等信息,可以滿足服務器的使用需求.
系統利用了RSTP(快速生成樹)協議實現信息的發布.RSTP是一種主機和服務器之間的雙向通信協議,可以實現聲音和影像等多媒體信息的傳送.本系統中數據量相對較小,使用起來更加流暢.
在信息接收和發布端,軟件需要實現的功能是:以指定的時間間隔,將各個傳感器的編號、狀態等數據通過網絡設備推送至服務器,最終發布在用戶終端,供管理人員隨時查看.在火災預警功能上,當主控制器結合視頻流檢測結果和傳感器狀態,判定有火災出現,則從用戶終端上彈出彈窗,并發出報警音,提示管理員緊急處理.用戶終端(PC)的系統框架及報警時彈出彈窗分別如圖5和圖6所示.

圖5 正常運行時系統結構圖

圖6 有火災預警時彈出彈窗
本系統基于無線傳感網絡與圖像處理技術進行設計和實現.可對消防設備靈活地增減,擴展性強,適用于普遍復雜的應用環境,同時結合了圖像識別技術,能自動對獲取的圖像數據進行檢測識別,準確地判定火災.實驗證明本系統能準確智能報警,性能好,克服了傳統報警器誤判率高的缺陷,有較高的研究意義與推廣價值.