肖娟



摘 要 隨著社會主義現代科技以及信息化技術不斷的發展,水表日趨智能化,其需求也不斷擴大。為滿足需求——通過攝像頭智能監控水表指針的運動狀態來判斷水龍頭是否漏水或者忘記被關掉,提出了基于視頻分析的智能水表指針運動檢測算法。其基本思想是首先通過YIQ顏色空間獲得二值圖像;然后通過連通區域獲得指針質心以及方框,并通過邊緣提取獲得水表指針的輪廓,求輪廓的最長軸確定指針的方向;最后計算當前幀與參考幀的水表指針方向的夾角,從而判斷當前幀的水表指針是否有轉動。經實驗表明,本方法能有效定位指針,并能判斷水表指針在單位時間內的偏轉角度以及指針的運動狀態。
【關鍵詞】智能水表 運動檢測 連通區域
1 引言
近年來,隨著社會主義現代科技以及信息化技術不斷的發展,智能水表的需求也日趨擴大,例如,水表智能抄表、水表校準以及管理系統的設計等。另外,經常忘記關水龍頭、水龍頭沒擰緊或者水龍頭滴水的現象屢見不鮮,若能通過攝像頭智能監控水表指針運動狀態,獲得報警信息后及時通知相關人員進行處理,這樣既能節省水資源,又能為用戶使用水進行高效管理,更有利于城市的信息化、智能化、網絡一體化建設。
本文提出了一種基于視頻分析的指針運動檢測方法,能通過攝像頭實時監控水表指針是否運動,從而判斷水龍頭是否滴水等現象,并實時報警。
2 水表指針運動檢測
2.1 水表指針運動檢測總體框架
基于視頻分析的指針運動檢測方法的總體框架流程圖如圖1所示,具體實現步驟如下:
(1)基于圖像序列,判斷前一幀是否已檢測到目標方框(定位到水表指針的方框),如果是則進入第(2)步,獲得水表指針的方框與指針方向。否則在已獲得的方框內進行水表指針檢測,方法同步驟(2),不同的是步驟(2)進行的是全圖像的檢測。
(2)定位水表指針,首先通過YIQ顏色空間獲得二值圖像;然后通過連通區域獲得指針質心以及方框,并通過邊緣提取獲得水表指針的輪廓,求輪廓的最長軸確定指針的方向;最后計算當前幀與參考幀的水表指針方向的夾角。
(3)是否更新參考方向,此處可設為每隔N幀更新一次參考方向。如果更新,保存當前幀的位置,則跳至第(1)步;如果不更新,則進行下一步;
(4)求當前幀與參考幀指針方向的余弦夾角;
(5)判斷當前的夾角是否大于閾值,是則對滿足運動條件的幀數進行統計,否則進入下一幀,即跳至第(1)步;
(6)判斷步驟(5)獲得的統計數是否大于閾值,是則進行報警,否進入下一幀。
下面主要介紹水表指針的定位過程,主要步驟包括:圖像二值化,聯通區域標記、質心與方框定位以及求指針方向向量與夾角。
2.2 圖像二值化
針對水表指針的顏色(紅色),可將RGB顏色空間轉化到YIQ顏色空間。其中,Y表示圖像的亮度信息,I表示從橙色到青色的顏色變化,Q表示從綠色到品紅的顏色變化。其轉換公式如下所示。
從式(1)中可看出分量可用來檢測水表指針。因為水表指針為紅色,其紅色分量大,而綠色與藍色分量接近于0,得到的I分量較大。而白色與噪聲的RGB分量比較均勻,因此得到的I值非常小,接近于0。則可根據式(2)獲得水表指針的二值圖像W(x,y)。
其中,T為閾值,一般取10~20。
由于水表的周邊材料為銅,根據上面的方式會容易檢測到邊緣為前景。那么對于邊緣比較亮的地方來說,在RGB空間其綠色分量比較大,因此可根據其綠色分量去除邊緣。
為使準確獲得四個指針的所在區域及質心,需對二值圖像進行形態學操作,去除噪聲點以及小的團塊。這里采用先腐蝕一次后膨脹兩次的方式進行去噪處理。獲得最終的二值圖像如圖2(b)所示。
2.3 連通區域標記
連通區域標記指以連通成分為基礎,將二值圖像中的不同連通區域區分開來。標記結果將產生一張與原始二值圖大小相等的標記圖。在標記圖中,屬于不同連通區域的位置被賦予不同的標簽,則屬于相同的被賦予相同的標簽。具體實現步驟如下:
(1)找出二值圖像每行的所有起始點與終止點。起始點指每行中連續為前景的第一點;終止點為每行中連續為前景的最后一點。那么對于每行,連續產生的一個起始點和終止點形成一個分段,則第i行的j個分段記為,其中u,v分別為當前分段起始點與終止點的位置。
(2)對每行的起止點與終止點進行歸類。即將當前行的每一個分段與前一行的分段每個分段分別進行比較,若它們的分段有相交,則表明為同一個連通區域,則將兩個分段記為同一種標號。令第i行的j個分段為,前一行的第n個分段為,如果,則將兩個分段的標號賦予相同的標簽。如果不滿足條件,則為新的連通區域,則將其賦予新的標簽。
(3)根據分段的不同標簽賦予圖像不同連通區域的標簽。在第二步驟中已經獲得不同連通區域的每行的起止點與終止點,也就是獲得了每個連通區域的所有輪廓點坐標,根據坐標將每個連通區域內的所有坐標都賦予相同的標簽。
2.4 質心與方框定位
求每個連通區域的質心與方框。令第i個連通域的面積為si,域為Yi,則它的質心的計算公式如式(3)所示。
那么,每個連通區域的方框可以取為:
2.5 求指針的方向向量與夾角
獲得指針的質心與方框位置后,為能準確獲得指針的方向向量,對方框內的部分圖像從新進行檢測與定位,并通過邊緣檢測獲取每個指針的輪廓,求輪廓的最長軸作為指針的方向所在的直線。那么具體指針指向哪一個方向,可根據指針的外形特征,即取長軸的兩端點到質心最遠的那個方向作為指針方向,檢測結果如圖3所示。
令當前幀第i個方框質心的坐標為,長軸離質心最遠的端點為(xi,yi)。則可得它的方向向量為。令第i個方框中對應的參考方向為。則可通過式(5)獲得當前幀四個水表指針與參考水表指針的四個方向余弦角A1、A2、A3與A4,其中,,
若滿足下面條件,則認為水表指針在運動,其運動狀態用1表示。其中,T1為預設閾值。
3 實驗
本文測試數據來源于實際場景錄制的視頻。其測試環境為:visual studio2013,matlab R2014a, windows7,Intel Core(TM) i3-3220 cpu。其中,算法在visual studio2013上實現,結果示意圖通過matlab實現,如圖4所示。圖4的橫坐標為測試視頻的部分圖像序列,縱坐標為指針單位時間內偏轉的夾角。其指針的運動狀態依次為:靜止、緩慢、快速、緩慢。
從圖4中的曲線可以看出單位時間內偏轉角度的大小反映了水表指針的轉動快慢的狀態,單位時間內偏轉的角度越大,則水表指針轉動的越快,反之越慢,夾角接近0時,水表指針停止。另外,在75幀左右,夾角出現較大的波動,主要是由于光照變化大造成的影響,但通過累計幀數的統計以及運動判斷的閾值可以解決其對最終結果的影響。同時也可對輸出結果進行平滑處理。
4 結束語
為滿足智能水表的需求,本文提出了一種基于視頻分析的智能水表指針運動檢測的方法,經過實驗表明,本方法能有效地定位水表指針并能很好地判斷出指針的運動狀態,特別地,在水龍頭滴水時水表指針很慢的情況下,也能很好地判斷指針的運動狀態。但本文提出的方法只針對指針式的水表,另特別建議后期可通過單位時間內水表指針運動的速度判斷當前水的流量,結合數據挖掘與智能分析技術,進一步判斷是否為正常用水,則更能滿足水表的智能化需求。
參考文獻
[1]陳燕.指針式水表的圖像自動讀數判讀方法的研究[D].蘇州大學,2009.
[2]胡邦強.基于Hongh變換的指針式水表識別系統的研究與應用[D].電子科技大學,2016.
[3]姚靈.智能水表測量特性計算機矯正方法的風險與控制[J].自動化儀表,2016,37(02):99-101.
[4]張揚鵬.基于智能水表的水資源實時檢測管理系統的設計與實現[D].山東大學,2016.
[5]彭波,催永普等.基于膚色和唇色信息的人臉檢測方法的研究[J].計算機工程與設計,2005,26(06):1500-1502.
[6]高紅波,王衛星.一種二值圖像連通區域標記的新算法[J].計算機應用,2007,27(11):2776-2777,2785.
作者單位
深圳市賽為智能股份有限公司 廣東省深圳市518000