本發明屬于漏水檢測定位技術領域,具體涉及一種供水管道泄漏檢測定位方法。
背景技術:
自來水管道泄漏檢測與定位是管道維護修理的重要前提。據官方統計,國內600多個城市供水管網的平均漏損率超過20%,最高達60%以上。我國大部分地區只有在自來水大面積泄漏,甚至管道爆裂的情況下才能判斷出泄漏發生。因此,及時檢測并定位出泄漏發生點對于水資源的節約具有重要意義。
實際中的管道漏水信號是由泄漏信號和各種背景噪聲混合而成。泄漏信號可以認為是平穩信號,環境噪聲包括自來水流動引起的管道振動噪聲、機動車行駛造成的地面震動、施工引起的噪音等,由于外界干擾噪聲不一定滿足平穩條件,會對泄漏檢測帶來極大困難。
因此,首先為了提升在低信噪比時的泄漏檢測效果,本發明以泄漏信號和噪聲的頻譜特征的差別為出發點,提出了基于譜減法和頻譜方差的泄漏檢測算法。譜減法是一種有效的語音增強算法,其算法復雜度低,實時性強,本發明將其應用在對泄漏信號的檢測上。首先,應用該算法對噪聲的頻譜進行估計,再通過“譜相減”使漏水信號得到增強。頻譜方差是利用泄漏信號的頻譜特性差異較大,而背景噪聲的頻譜特性差異較小,從而識別出泄漏信號。接下來,為了減小時延估計誤差進而提高算法的定位精度,提出了一種基于bp神經網絡的漏水定位法,利用誤差反向傳播機制,根據輸出值與期望值計算誤差,再由誤差來逐層修改權值,使得誤差最小,從而完成網絡訓練,構建出基于bp神經網絡的濾波系統,進而利用廣義相關得到較為準確的時延估計,實現漏水點的精確定位。
在分析算法原理的基礎上,在不同信噪比條件下進行仿真實驗。實驗結果表明,該方法在低信噪比和復雜多變的環境條件下也能取得較好的檢測定位效果。
技術實現要素:
為了解決上述問題,本發明提供一種供水管道泄漏檢測定位方法,所述方法對傳感器采集的信號進行增強,然后計算增強后信號的頻譜方差,采用雙門限法進行判斷,若頻譜方差處在門限范圍內則說明存在泄漏,再進行漏水點定位,利用bp神經網絡構成濾波器,將漏水信號從噪聲中分離,對漏水信號進行廣義相關,根據信噪比選擇性能好的權函數進行時延估計,得到三個傳感器的時延后,利用漏水定位模型進行計算,得到漏水點位置信息;
進一步地,所述方法包括:
s1:將漏水信號進行譜減增強;
s2:計算s1中增強后信號的頻譜方差;
s3:采用單參數的雙門限檢測識別泄漏信號,并確定門限閾值;
s4:進行泄漏檢測,并輸出檢測結果;
s5:對s4中輸出的檢測結果,通過帶通濾波去除帶外噪聲;
s6:進行神經網絡濾波,去除帶內噪聲;
s7:進行廣義相關;
s8:對s7中廣義相關的結果進行時延估計,并通過漏水定位模型進行計算,得到漏水點位置信息,完成漏水定位;
進一步地,所述s7具體為:在權函數選擇的過程中,根據信噪比選擇性能好的權函數進行時延估計,得到三個傳感器的時延后,利用所述漏水定位模型進行計算,得到漏水點位置信息;
進一步地,所述漏水定位模型為三傳感器定位模型,所述模型將傳感器等距離分布在供水管網周圍,其中距離漏點最近的三個傳感器節點編號分別為1,2,3,它們之間的距離為l,傳感器1,2距離漏點的位置分別設為d1和d2,通過相關法測得傳感器1和2,2和3之間的時延分別為d12和d23,漏水信號所在管道上的傳播速度ν:ν=l/d23,漏點距傳感器1和2的距離及分別為
進一步地,所述s1中譜減法的計算具體如下:
s11:對輸入漏水信號s(n)進行預處理,所述預處理包括預加重和加窗分幀;
s12:對帶噪的泄漏信號進行短時傅里葉分析,計算得到每一幀信號的短時能量譜|ym(ω)|2;
s13:在應用譜減法對漏水信號進行增強之前,進行噪聲譜估計,得到噪聲譜估計值
s14:對s13中結果開平方根后得到泄漏信號的頻譜幅度值
進一步地,所述s2中信號頻譜方差的計算具體如下:
s21:假設輸入信號為s(n),每幀的長度為n,通過dft將信號從時域變換到頻域計算頻譜值:
用一個矩陣來記錄各頻率分量|s(ω)|的值;
s22:計算各個分量的均值:
s23:計算上一步驟中增強后的泄漏信號的頻譜方差值:
進一步地,所述s3具體為:
s31:設置兩個門限閾值t1和t2,求出噪聲模型頻譜方差的平均值
s32:閾值t1設置為
進一步地,所述s4具體為:
s41:當參數d高于閾值t2時,是泄漏信號;
s42:通過d高于或低于t1位置,來判斷泄漏信號的起止點;
s43:統計高于閾值的信號幀數,如果幀數大于輸入信號總幀數的四分之一,則判定為泄漏,并輸出信號,否則為無泄漏;
進一步地,所述s6中利用神經網絡進行時延估計的過程中,其過程分為兩個階段:第一個階段是學習過程,第二個階段是工作過程;
進一步地,所述學習過程為:
1)選擇泄漏環境下的樣本數據作為訓練樣本;
2)對樣本數據進行預處理,在進行神經網絡預測之前,對原始數據進行歸一化處理,使其數據規范在[-1,1]之間;
3)構造訓練樣本,在實驗條件下經噪聲抑制后的信號采樣序列作為目標向量,在實際情況下測得含有不同噪聲的漏水信號,得到的采樣序列作為輸入信號;
進一步地,所述工作過程為:
a)選取三層結構的bp神經網絡建立預測模型;輸入層、隱含層、輸出層對應的節點數目分別為1、40和1,隱含層輸出層函數分別為tansig和purelin函數;
b)訓練網絡;訓練網絡之前,還需要設置訓練參數,其中最大訓練步長net.trainparam.epochs為10000,最小均方誤差net.trainparam.goal為0.05,以及學習速率設為0.01等;
c)在神經網絡建立完成以后,對采集得到的漏水信號進行帶內、帶外噪聲抑制;
本發明的有益效果如下:
1)采用雙門限法進行判斷,若頻譜方差處在門限范圍內則說明存在泄漏,精確度更高;
2)采用“無泄漏估計法”估計噪聲譜對信噪比的提升更加明顯;
3)使用譜減法對帶噪的泄漏信號進行降噪處理,有效地提高漏水信號的信噪比會有助于泄漏檢測有效性的提升;
4)利用噪聲與泄漏信號頻譜特性的差異,噪聲的頻譜均勻的分布在各個頻率分段,且各頻率分量較小,對其頻譜計算方差的值也較小,而泄漏信號的頻譜波動較大,對其計算頻譜方差的值也大。因此,采用閾值判別法可以有效提高泄漏檢測的準確率;
5)在復雜多變的地下供水環境中,高精度的時延估計不易實現。提出一種基于bp神經網絡的漏水定位方法。它借助神經網絡的學習性對不同環境下的漏水信號進行預處理,然后利用廣義相關法進行準確的時延估計,提高漏水點的定位精度。
附圖說明
圖1為本發明所述漏水定位模型;
圖2為本發明所述泄漏檢測的算法流程圖;
圖3為本發明所述基于神經網絡定位法模型圖;
圖4為本發明所述方法的總體框架圖;
圖5為本發明所述方法驗證時的原始及加噪漏水信號波形圖;
圖6為本發明所述方法驗證時在不同信噪比下短時頻譜方差圖;
圖7為本發明所述方法得到交通高峰期的原始及濾波后的波形和頻譜圖;
圖8為本發明所述神經網絡訓練誤差曲線;
圖9為本發明所述白噪聲條件下的網絡訓練與時延估計情況;
圖10為本發明所述有色噪聲條件下的網絡訓練與時延估計情況;
圖11為本發明所述不同信噪比下神經網絡訓練精度;
圖12為本發明所述snr為5db時的各廣義相關函數圖像;
圖13為本發明所述snr為-5db時的各廣義相關函數圖像。
具體實施方式
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細描述。應當理解,此處所描述的具體實施例僅僅用于解釋本發明,并不用于限定本發明。相反,本發明涵蓋任何由權利要求定義的在本發明的精髓和范圍上做的替代、修改、等效方法以及方案。進一步,為了使公眾對本發明有更好的了解,在下文對本發明的細節描述中,詳盡描述了一些特定的細節部分。對本領域技術人員來說沒有這些細節部分的描述也可以完全理解本發明。
下面結合附圖和具體實施例對本發明作進一步說明,但不作為對本發明的限定。下面為本發明的舉出最佳實施例:
如圖1-圖13所示,本發明提供一種供水管道泄漏檢測定位方法,所述方法對傳感器采集的信號進行增強,然后計算增強后信號的頻譜方差,采用雙門限法進行判斷,若頻譜方差處在門限范圍內則說明存在泄漏,再進行漏水點定位,利用bp神經網絡構成濾波器,將漏水信號從噪聲中分離,對漏水信號進行廣義相關,根據信噪比選擇性能好的權函數進行時延估計,得到三個傳感器的時延后,利用漏水定位模型進行計算,得到漏水點位置信息,所述方法包括:
s1:將漏水信號進行譜減增強;
s2:計算s1中增強后信號的頻譜方差;
s3:采用單參數的雙門限檢測識別泄漏信號,并確定門限閾值;
s4:進行泄漏檢測,并輸出檢測結果;
s5:對s4中輸出的檢測結果,通過帶通濾波去除帶外噪聲;
s6:進行神經網絡濾波,去除帶內噪聲;
s7:進行廣義相關時延估計;
s8:利用s7中的時延估計結果,通過漏水定位模型,得到漏水點位置信息,完成漏水定位。
所述8具體為:在權函數選擇的過程中,根據信噪比選擇性能好的權函數進行時延估計,得到三個傳感器的時延后,利用所述漏水定位模型進行計算,得到漏水點位置信息。
所述漏水定位模型為三傳感器定位模型,所述模型將傳感器等距離分布在供水管網周圍,其中距離漏點最近的三個傳感器節點編號分別為1,2,3,它們之間的距離為l,傳感器1,2距離漏點的位置分別設為d1和d2,通過相關法測得傳感器1和2,2和3之間的時延分別為d12和d23,漏水信號所在管道上的傳播速度ν:ν=l/d23,漏點距傳感器1和2的距離及分別為
所述s1中譜減法的計算具體為:
s11:對輸入漏水信號s(n)進行預處理,所述預處理包括預加重和加窗分幀;
s12:對帶噪的泄漏信號進行短時傅里葉分析,計算得到每一幀信號的短時能量譜|ym(ω)|2;
s13:在應用譜減法對漏水信號進行增強之前,進行噪聲譜估計,得到噪聲譜估計值
s14:對s13中結果開平方根后得到泄漏信號的頻譜幅度值
所述s2中信號頻譜方差的計算具體如下:
s21:假設輸入信號為s(n),每幀的長度為n,通過dft將信號從時域變換到頻域計算頻譜值:
用一個矩陣來記錄各頻率分量|s(ω)|的值;
s22:計算各個分量的均值:
s23:計算上一步驟中增強后的泄漏信號的頻譜方差值:
所述s3具體為:
s31:設置兩個門限閾值t1和t2,求出噪聲模型頻譜方差的平均值
s32:閾值t1設置為
所述s4具體為:
s41:當參數d高于閾值t2時,是泄漏信號;
s42:通過d高于或低于t1位置,來判斷泄漏信號的起止點;
s43:統計高于閾值的信號幀數,如果幀數大于輸入信號總幀數的四分之一,則判定為泄漏,并輸出信號,否則為無泄漏。
所述s6中利用神經網絡進行濾波的過程中,其過程分為兩個階
段:第一個階段是學習過程,第二個階段是工作過程。
所述學習過程為:
1)選擇泄漏環境下的樣本數據作為訓練樣本;
2)對樣本數據進行預處理,在進行神經網絡預測之前,對原始數據進行歸一化處理,使其數據規范在[-1,1]之間;
3)構造訓練樣本,在實驗條件下經噪聲抑制后的信號采樣序列作為目標向量,在實際情況下測得含有不同噪聲的漏水信號,得到的采樣序列作為輸入信號。
所述工作過程為:
a)選取三層結構的bp神經網絡建立預測模型;輸入層、隱含層、輸出層對應的節點數目分別為1、40和1,隱含層、輸出層函數分別為tansig和purelin函數;
b)訓練網絡;訓練網絡之前,還需要設置訓練參數,其中最大訓練步長net.trainparam.epochs為10000,最小均方誤差net.trainparam.goal為0.05,以及學習速率設為0.01等;
c)在神經網絡建立完成以后,對采集得到的漏水信號進行帶內、帶外噪聲抑制。
本發明提供一種供水管道泄漏檢測定位方法定位,所述方法基于系統模型,該系統模型如圖1所示,將傳感器等距離分布在供水管網周圍,其中距離漏點最近的三個傳感器節點編號分別為1,2,3,它們之間的距離為l,傳感器1,2距離漏點的位置分別設為d1和d2,通過相關法可以測得傳感器1和2,2和3之間的時延分別為d12和d23,由此可以先求得漏水信號所在管道上的傳播速度ν為:
ν=l/d23(1)
然后根據位置關系可以得到如下關系式:
將式(1)代入式(2)可以得到漏點距傳感器1和2的距離分別為:
因此,通過三傳感器定位模型,既能求出管道漏水信號的傳播速度,又能得到漏點距離兩端傳感器的位置,從而實現漏點定位。
基于譜減法和頻譜方差的泄漏信號檢測方法原理如圖2所示,譜減法是一種對信號增強去噪的有效算法。譜減法是在假設背景噪聲信號是短時平穩的加性噪聲,原始信號和噪聲不相關的情況下提出的。譜減法具有計算量小、算法簡單,易于實現和去噪效果良好的特點,應用十分廣泛。其效果相當于在變換域對帶噪信號進行了某種濾波處理,從而得到較為純凈的信號頻譜。
帶噪聲的信號ym(n)可以表示為:
ym(n)=sm(n)+dm(n),m=1,2,…;n=0,1,…,n-1(4)
其中dm(n)為噪聲信號,sm(n)為純凈的泄漏信號。m表示信號分析幀序號,n表示信號分析幀長。對上式兩端同時做傅里葉變換得:
ym(ω)=sm(ω)+dm(ω)(5)
其中,ym(ω)、sm(ω)和dm(ω)分別對應ym(n),sm(n)和dm(n)進行傅里葉變換后的頻譜密度。對其取平方,可以得到ym(ω)的短時能量譜:
|ym(ω)|2=|sm(ω)|2+|dm(ω)|2+sm(ω)·dm(ω)*+sm(ω)*·dm(ω)(6)
由上式得:
因為假設sm(n)和dm(n)獨立,所以sm(ω)和dm(ω)也獨立,而且假設dm(ω)為零均值的高斯分布,所以:
可得:
|ym(ω)|2=|sm(ω)|2+|dm(ω)|2(9)
由于平穩噪聲的頻譜在泄漏前后可以認為基本沒有變化,這樣可以通過泄漏前的所謂“寂靜段”來估計噪聲的能量譜|dm(ω)|2。基于短時譜幅度估計的信號增強技術的目的就是設法得到|sm(ω)|的估計
這樣就可以得到增強后的泄漏信號:
定義第m個頻率分量的增益函數為:
可得:
sm(ω)=gm(ω)·ym(ω)(13)
也就是說,對帶噪信號的每個頻譜分量乘以一個系數gm(w),得到去噪后泄漏信號的頻譜。利用原帶噪泄漏信號的相位譜來代替估計之后的信號的相位譜。再對它進行傅里葉逆變換就可以得到去噪聲的泄漏信號。
實際信號和混雜在其中的噪聲信號的頻譜特性相差很大。泄漏信號的有效部分集中在500~3000hz這一頻段,并且各個頻段的幅度值波動劇烈,而信號在短時間內是平穩的,反映在頻域就是集中在極窄的頻段,而在其他頻段的譜值近似為零。因此對泄漏信號計算頻譜方差,將會得到一個較大的值。白噪聲是在實際應用中最廣泛存在的噪聲,它的功率譜則較為平坦,分布的頻帶寬,且譜值較小,對其頻譜計算方差,得到的值較小,并且明顯小于泄漏信號的頻譜方差值。因此,可以根據頻譜方差來區別泄漏信號和噪聲信號。
信號頻譜方差的計算具體過程如下:
(1)假設輸入信號為s(n),每幀的長度為n。通過dft將信號從時域變換到頻域計算頻譜值:
用一個矩陣來記錄各頻率分量|s(ω)|的值。
(2)計算各個分量的均值:
(3)計算頻譜方差值:
從式(16)中可以看出,頻譜方差反映的是信號頻域各分量的起伏程度,頻譜隨頻率的變化越劇烈,則d的值越大。而對于白噪聲信號,其頻譜起伏較平緩且分布的頻段寬。因此頻譜方差較小。由此,就可以根據頻譜方差來檢測目標信號。
bp神經網絡是一種以誤差反向傳播(errorbackpropagation,bp)為基礎的前向網絡,圖3為其拓撲結構,它由輸入層、隱含層、輸出層三部分組成,其中每層都可以包含多個神經元節點作為單獨的輸入,層與層之間實現全連接,同一層之間的神經元無連接。
如圖3所示的神經網絡結構圖,則可推算得出網絡的實際輸出以及期望輸出分別為:
d(n)=[d1,d2,…,dj](18)
則第n次迭代的誤差為:
ej(n)=dj(n)-yj(n)(19)
所以得到誤差能量定義為:
在誤差反向傳播過程中,根據最速下降法,計算出誤差對權值的梯度,再沿著梯度的反方向進行權值調整,
根據微分的鏈式規則,得到梯度的計算方法:
引入局部梯度的概念:
對于輸出層來說,傳遞函數一般為線性函數,因此其導數記為常數k,學習率為η,代入上式得出神經元權值的修正量:
漏水定位的關鍵技術就是傳感器之間接收信號的時延估計,通常,兩路信號時間延遲可通過對兩路信號的互相關函數進行峰值檢測進行估計。如圖1中,假設漏水點發出的信號為s(n),則
其中,傳感器1與2所接收到的信號分別為s1(n)和s2(n),n1(n)和n2(n)為噪聲信號,α為衰減因子,ts為采樣周期。s1(n)和s2(n)的互相關函數定義為:
根據平穩隨機過程自相關函數的性質,有
則得到,即傳感器1與2間的時延為:
本發明涉及到基于譜減法和頻譜方差的泄漏信號檢測算法,算法原理如圖2所示。把譜減增強算法與頻譜方差結合起來。首先使用譜減法對帶噪的泄漏信號進行降噪處理,有效地提高漏水信號的信噪比會有助于泄漏檢測有效性的提升。之后利用噪聲與泄漏信號頻譜特性的差異,噪聲的頻譜均勻的分布在各個頻率分段,且各頻率分量較小,對其頻譜計算方差的值也較小。噪聲信號的頻譜方差相對于泄漏信號的頻譜方差值有明顯差異。最后通過設置合適的閾值準確地識別出泄漏信號,判斷出泄漏發生。
具體算法的實現步驟為:
1)對輸入漏水信號s(n)進行預處理,包括預加重、加窗分幀。
2)對帶噪的泄漏信號進行短時傅里葉分析。計算得到每一幀信號的短時能量譜|ym(ω)|2。
3)在應用譜減法對漏水信號進行增強之前,首先進行噪聲譜估計,得到噪聲譜估計值
4)開平方根后得到泄漏信號的頻譜幅度值
5)使用頻譜方差進行泄漏檢測,計算上一步驟中增強后的各幀信號
6)本發明采用單參數的雙門限檢測法,在檢測泄漏信號過程中只有一個參數“頻譜方差d”,然后用雙門限來識別泄漏信號。設置兩個門限閾值t1和t2,當參數d高于閾值t2時判斷為泄漏信號,再從d在什么時候高于或低于t1來判斷泄漏信號的起止點。其中,閾值t1設置為
7)在泄漏檢測算法運行過程中,統計高于閾值的信號幀數,如果幀數大于輸入信號總幀數的四分之一,則判定為泄漏,并輸出信號。否則為無泄漏。
泄漏定位算法原理如圖3所示。所述方法的總體思路是:廣義相關法進行時延估計結果較為準確,然而需要大量先驗知識和統計特性來決定權函數的使用,這對于地下漏水檢測系統而言不易實現,因此以bp神經網絡為基礎結合廣義相關法構成神經網絡定位法。而常見的廣義相關加權函數包括:roth處理器、scot(平滑相干變換)、phat(相位變換)、eckart、ml(最大似然)這5種,再加上傳統相關法共可得到6種預濾波器模型進行優化,在歸納出常用的6種權函數之后,首先在實驗室條件下采集無噪聲或高信噪比時的供水管道漏水信號,然后采集不同噪聲情況下的漏水信號。對不同情況下的漏水信號進行離散采樣,構成一維行向量矩陣以便神經網絡使用。為了克服廣義相關法需要大量先驗條件這一弊端,需要利用神經網絡的學習功能和自適應性。在進行多次實驗后,決定搭建三層結構的bp神經網絡。
其中輸入層的節點數為1,輸入內容為漏水信號采樣點所構成的一維行向量矩陣。隱含層選用tansig函數作為激勵函數,隱含層的節點數為40,輸出層的神經元個數為1。選用purline作為輸出函數,網絡的建立語句為:
bpnet=newff(minmax(p),[41],{'tansig','purelin'},'traingdx','learngdm')(29)
輸出內容為經過神經網絡濾波后的離散信號,算法采用最速下降法來進行誤差反向傳播,經過神經網絡的多次迭代可以得到針對混合噪聲的具有濾波功能的bp神經網絡。接下來使用廣義相關法,選取合適的權函數并進行峰值檢測,這樣得到的時延估計更加精準。最后通過公式3,即可確定漏水點的位置,圖3所示為神經網絡定位法的結構模型。在對5000hz由氣泡爆破、水流沖擊介質等產生高頻帶外噪聲以及傳感器電信號帶入的500hz低頻帶外噪聲處理之后,還需要防止與漏水信號同頻段的噪聲干擾。此時就可利用經帶通濾波處理后的數據作為神經網絡的輸入并建立bp神經網絡以進行漏點定位。本系統采用三層結構的bp神經網絡,其中輸入層的神經元節點數為1個,目標向量為經過前面數據處理后信號的采樣序列,是在實驗條件下得到;其輸入向量為實際情況中含有各種未知噪聲情況下的信號采樣序列。網絡的隱含層常用的激勵函數包括tansig和logisg,經過網絡訓練,對于達到同樣的期望誤差,tansig的訓練步長要小于logsig,因此這里選用tansig函數作為激勵函數,經過神經網絡的多次訓練測試得到隱含層節點數為40,輸出層的神經元個數為1,采用最速下降法進行誤差反向傳播,經過多次迭代得到訓練好的神經網絡,通過實際情況來驗證方法的可行性。
在利用神經網絡進行時延估計的過程中,其過程分為兩個階段:第一個階段是學習過程,第二個階段是工作過程,具體步驟如下:
1)選取樣本數據構造訓練樣本。由于供水管道深埋于地下,其所處環境復雜多變,是一個不穩定的非線性系統,因此必須選擇正常環境下的樣本數據,否則抽取到的奇異樣本會降低網絡的預測能力。對樣本數據進行預處理。在進行神經網絡預測之前,要對原始數據進行歸一化處理,使其數據規范在[-1,1]之間。
2)構造訓練樣本。在實驗條件下經噪聲抑制后的信號采樣序列作為目標向量,然后在實際情況下測得了含有不同噪聲的漏水信號,得到的采樣序列作為輸入信號。
3)選取三層結構的bp神經網絡建立預測模型。輸入層、隱含層、輸出層對應的節點數目分別為1、40和1,隱含層輸出層函數分別為tansig和purelin函數。
4)訓練網絡。在訓練網絡之前,還需要設置訓練參數,其中最大訓練步長net.trainparam.epochs為10000,最小均方誤差net.trainparam.goal為0.05,以及學習速率設為0.01等。
在神經網絡建立完成以后,對測得的漏水信號進行帶內、帶外噪聲抑制。本發明提出的供水管道泄漏檢測定位模型總體分為兩個部分:首先進行泄漏檢測,當檢測到泄漏發生后,接下來進行漏水點的定位。其總體框架如圖4所示,實驗結果表明:無論采用何種噪聲估計方式,譜減法均可提升漏水信號的信噪比;而采用“無泄漏估計法”估計噪聲譜對信噪比的提升最為明顯。接下來在對頻譜方差算法仿真驗證時,首先計算噪聲模型的頻譜方差,確定好雙門限閾值t1和t2,再計算譜減增強后各信號幀的頻譜方差。如圖5所示,在0.3秒之前和3.6秒之后是沒有泄漏發生的寂靜段。如圖5所示三幅圖像分別是未疊加噪聲、信噪比為5db和信噪比為-5db,三種背景噪聲條件下計算得到的短時頻譜方差圖像。圖中平行于橫軸的虛線為閾值t1的圖像,實線是閾值t2的圖像。平行于縱軸的實線標記為泄漏信號的開始端,虛線標記為泄漏信號結束端。由圖像可見,基于譜減法和頻譜方差的信號檢測方法不僅在高信噪比情況下有很好的區分能力,在低信噪比情況下依然有強大的性能。即使在信噪比為-5db時,僅在2.7秒處出現一次誤判,但不影響總體算法的有效性,泄漏信號段和背景噪聲段的波形依然差異明顯。
圖6所示為歸一化后的信號幅值。計算圖6所示信號的頻譜方差,結果表明,在輸入信號信噪比從-5db到5db變化的10個梯度間,噪聲模型的頻譜方差值最大不超過30,而增強后漏水信號的頻譜方差值均在680以上。二者差異明顯,通過設置合適的閾值可以有效檢測出泄漏信號。
綜上所述,無論是從仿真圖像還是計算數據均反映出基于譜減法和頻譜方差的泄漏信號檢測方法檢測效果明顯,有效性強。在完成泄漏檢測以后,需要對漏水進行準確定位。如圖7所示分別為交通高峰期測得的漏水信號的波形和頻譜以及經過帶通濾波后的情況。在得到交通高峰期的漏水信號,經過帶通濾波可以減小帶外噪聲,經過這樣處理后,對所得到的信號進行采樣,采樣點構成的矩陣作為輸入向量,在夜間噪聲較小時對測得的信號進行采樣,構成的矩陣作為目標向量,對神經網絡進行訓練,訓練情況如圖8所示。顯然,經過9991次訓練達到了0.64%的誤差精度,接下來將交通高峰期的另一段漏水信號作為測試輸入,輸出得到經過bp神經網絡濾波的信號。按相同的步驟處理傳感器1,2在交通高峰期的漏水信號,接下來采用廣義相關法來求得時間延遲。
在進行預濾波的過程中首先要選擇權函數,常見的權函數包括:基本相關,roth處理,scot平滑相干變換,phat相位變換,eckart,ml最大似然權函數這6種。在選擇權函數時,應確保在互相關函數中有一個尖峰而不是一個寬峰,且在高分辨率和穩定性之間有一個兼顧。在漏水定位方面,對bp神經網絡和廣義相關進行了可行性分析之后,接下來分別就不同的噪聲類型、信噪比、廣義相關法的加權函數以及神經網絡參數這四種變量對算法精度的影響進行分析,進而得出完整實驗結論。不同噪聲類型對算法的影響。在保證其他變量相同的情況下,依次混入的信號噪聲為高斯白噪聲、有色噪聲這兩種進行算法結果的比較。首先混入白噪聲,其訓練誤差如圖9(a)所示,再將經神經網絡濾波后的傳感器1和2的信號進行廣義相關,得到的互相關函數圖像如圖9(b)所示。接下來混入頻率在500-2000hz的有色噪聲后相當于增加帶內噪聲,其神經網絡訓練結果與兩傳感器的廣義互相關函數分別如圖10中(a)和10(b)所示。
在混入白噪聲的情況下,神經網絡訓練精度經1599步達到期望誤差0.001,而混入有色噪聲的訓練精度經10000步僅達到0.0024,說明含白噪聲的網絡訓練精度優于含有色噪聲的情況。
不同信噪比對算法精度的影響,以混入高斯白噪聲為例,在10db到-12db的范圍內改變信噪比,讓信號通過bp神經網絡,其中10db和-12db下得到的誤差曲線如圖11所示,將多個信噪比下的誤差結果整理到下表中,可以發現信噪比越高,神經網絡的訓練結果越理想,利用廣義相關的定位越準確。
下表為不同信噪比下的網絡訓練結果
算法本身參數設置也會對定位精度造成影響。bp算法參數的設置主要包括隱含層節點數、傳輸函數、訓練方法這些方面。研究對象定為含高斯白噪聲信噪比為10db的漏水信號,首先在含有不同隱含層節點數的網絡中進行訓練,設最大步長為10000步,改變隱含層的節點數并進行多次訓練得到訓練精度的均值,訓練樣本為5000時,訓練結果如下表所示,可以得到隱含層的最優節點數為17,此時訓練誤差精度最小且為0.00234,結果表明隱含層節點數對誤差精度有影響但影響較小,節點數的增加對于運算時間和運算量影響更大。
下表為隱含層節點與神經網絡的訓練精度對照表
而對于傳輸函數來說,隱含層常用的傳輸函數為logsig和tansig,對于同一個信號,在相同的最大步長內,tansig的訓練精度要高于logsig,所以選擇tansig作為隱含層的傳輸函數。廣義相關法的權函數也對算法精度有影響,常見的權函數有5種,再加上傳統相關法(cc),一共6種處理方法。分別采用不同的方法對同一漏水信號進行廣義相關處理,當傳感器1的信噪比snr1為10db,傳感器2的信噪比snr2為5db時,其不同的廣義相關函數圖像如圖12所示。
當傳感器1的信噪比snr1為10db,傳感器2的信噪比snr2為-5db時,其不同的廣義相關函數圖像如圖13所示,可以看到當snr1=10db且snr2=-5db,隨著信噪比的下降,之前相關函數峰值較為尖銳的scot和roth已淹沒在噪聲中,而cc、phat的峰值也隨之變得平緩并易受到次峰的影響。反觀ml和eckart的峰值尖銳度并沒有隨信噪比的下降而有顯著變化。綜上所述,在選擇廣義相關函數進行漏水定位時,當傳感器接收到信號的信噪比較高時,選擇phat和scot權函數的定位效果較好;當其信噪比較低時,選擇ml和eckart權函數的定位效果較好。
以上所述的實施例,只是本發明較優選的具體實施方式的一種,本領域的技術人員在本發明技術方案范圍內進行的通常變化和替換都應包含在本發明的保護范圍內。