施震華,張 娜,包曉安,宋 杰
(1.浙江理工大學(xué) 信息學(xué)院,浙江 杭州 310018; 2.武漢理工大學(xué) 經(jīng)濟(jì)學(xué)院,湖北 武漢 430070)
近年來,隨著傳感器技術(shù)和多傳感器融合技術(shù)的不斷發(fā)展,多傳感器技術(shù)逐漸被應(yīng)用在日常生活領(lǐng)域,例如智慧農(nóng)業(yè)利用多傳感器采集溫室大棚的溫濕度、二氧化碳濃度、土壤濕度等參數(shù),以有效地監(jiān)控大棚環(huán)境,為農(nóng)業(yè)應(yīng)用提供了一種可靠的方案。隨著多傳感器技術(shù)應(yīng)用領(lǐng)域不斷拓寬,使用者對傳感器的測量精度和穩(wěn)定性也提出了更高的要求。
針對測量精度不足和穩(wěn)定性不夠等問題,文獻(xiàn)[1]提出了改進(jìn)的自適應(yīng)卡爾曼濾波,并在北斗偽距單點(diǎn)定位中的研究濾波問題中進(jìn)行了實(shí)驗(yàn)。該研究采用基于移動(dòng)窗口協(xié)方差估計(jì)的自適應(yīng)卡爾曼濾波算法,相比于傳統(tǒng)卡爾曼濾波的定位精度提高了50%,收斂速度提高了90%。文獻(xiàn)[2]提出了一種基于深度學(xué)習(xí)并利用特征圖加權(quán)融合實(shí)現(xiàn)目標(biāo)檢測的方法。該方法相比于之前的方法得到了更高的目標(biāo)檢測精度以及目標(biāo)檢測效果。但是,卡爾曼濾波也存在缺陷,當(dāng)目標(biāo)長時(shí)間被遮擋,會(huì)存在目標(biāo)丟失的情況。此外,深度學(xué)習(xí)也需要大量的數(shù)據(jù)集和訓(xùn)練集進(jìn)行訓(xùn)練,并不適用于大眾傳感器數(shù)據(jù)的分析。因此,面對不同的問題,應(yīng)該采用恰當(dāng)?shù)臄?shù)據(jù)融合方法進(jìn)行處理[3-5]。
目前,數(shù)據(jù)融合方法按融合方式分類可以分為3種:像素級(jí)融合、特征級(jí)融合和決策級(jí)融合。由于一般傳感器采集到的都是模擬信號(hào)或者數(shù)字信號(hào),對于智能家居或者應(yīng)用系統(tǒng)等場景的初步處理都是對像素級(jí)的數(shù)據(jù)量進(jìn)行融合,因此這種處理方法最為常見。像素級(jí)的方法主要有加權(quán)平均法、選舉決策法、卡爾曼濾波法和數(shù)理統(tǒng)計(jì)法[6-9]。與此相關(guān)的還有特征級(jí)融合和決策級(jí)融合,這兩種算法一般都需要在先驗(yàn)概率的前提下才能采用,對系統(tǒng)資源的要求比較高。對于傳感器的原始數(shù)據(jù)處理,像素級(jí)融合算法較為適合,其既可以被應(yīng)用在嵌入式芯片上,又可以提高系統(tǒng)的精確度和穩(wěn)定性。傳統(tǒng)的自適應(yīng)加權(quán)數(shù)據(jù)融合算法只是對噪聲信號(hào)作權(quán)值較小的處理,沒有進(jìn)行數(shù)值一致化檢測,對數(shù)據(jù)的準(zhǔn)確性有一定的干擾。此外,隨著數(shù)據(jù)量的不斷增加,其方差易出現(xiàn)僵化,不能及時(shí)體現(xiàn)數(shù)據(jù)的變化性,無法得到準(zhǔn)確的預(yù)測值[10]。針對該問題,本文將數(shù)值一致性檢測處理技術(shù)、時(shí)間特征和空間特征技術(shù)相結(jié)合,采用時(shí)間序列和空間序列對數(shù)據(jù)分批求其方差;然后利用數(shù)據(jù)一致性檢測對噪點(diǎn)進(jìn)行剔除。剔除后的數(shù)據(jù)的方差能較好地體現(xiàn)數(shù)據(jù)的真實(shí)性和波動(dòng)性,并得到自適應(yīng)因子;最后,通過自適應(yīng)加權(quán)法對數(shù)據(jù)進(jìn)行融合?;诖?,針對這種傳感器的本身方差特性和多傳感器協(xié)方差的影響,本文提出一種基于自適應(yīng)加權(quán)的數(shù)據(jù)融合算法,并通過仿真實(shí)驗(yàn)驗(yàn)證了所提方法的有效性。
自適應(yīng)加權(quán)算法指的是當(dāng)處理數(shù)據(jù)時(shí),能及時(shí)根據(jù)數(shù)據(jù)的特征進(jìn)行參數(shù)自我調(diào)整,不斷逼近目標(biāo)的過程,通常采用最小均方誤差的方法進(jìn)行逼近。其思想是在總均方誤差最小這一最優(yōu)條件下,根據(jù)各個(gè)傳感器所得到的測量值,以自適應(yīng)的方式尋找各個(gè)傳感器所對應(yīng)的最優(yōu)加權(quán)因子,使融合后的X值達(dá)到最優(yōu)。
設(shè)n個(gè)傳感器的方差分別為σ1,σ2,…,σn,直接估計(jì)真值為X,各傳感器的測量值分別為X1,X2,…,Xn,傳感器數(shù)據(jù)之間彼此相互獨(dú)立,并且是X的無偏估計(jì)[11]。各傳感器的加權(quán)因子分別為W1,W2,…,Wn則融合后的X值和加權(quán)因子滿足式(1)。
(1)
均方誤差是由含有噪聲的大量測量數(shù)據(jù)中估計(jì)的一個(gè)非隨機(jī)量,均方誤差值表示數(shù)據(jù)的離散程度。均方誤差越大,則各個(gè)同類傳感器測量獲得的數(shù)據(jù)越分散,測量得到的數(shù)據(jù)越不準(zhǔn)確。
總均方誤差為
(2)
X1,X2,…,Xn彼此獨(dú)立,并且為X的無偏估計(jì)。其中p和q表示第p個(gè)和第q個(gè)傳感器數(shù)據(jù)。
(3)
故σ2可寫成
(4)
基于無偏估計(jì)的總均方誤差為
(5)
由于總均方差σ2是關(guān)于各加權(quán)因子的多元二次函數(shù),因此σ2必然存在最小值[12]。σ2最小值可由式(6)得到。
(6)
根據(jù)多元函數(shù)求極值理論,可求出總均方差最小時(shí)所對應(yīng)的加權(quán)因子,如式(7)所示。
(7)
由于環(huán)境中存在各種噪聲或多徑效應(yīng),傳感器會(huì)出現(xiàn)測試結(jié)果偏差較大或者直接缺失的情況。上文描述的自適應(yīng)加權(quán)融合算法無法有效地處理這些偽數(shù)據(jù)。如果將這些數(shù)據(jù)進(jìn)行融合,會(huì)得到不準(zhǔn)確的結(jié)果。于是,需要對多傳感器的數(shù)據(jù)進(jìn)行一致化處理。
設(shè)有m個(gè)傳感器對某一對象進(jìn)行測量,首先對Xi(i=1,2,…,m)進(jìn)行數(shù)據(jù)檢驗(yàn)。檢驗(yàn)準(zhǔn)則是X1,X2,…,Xm的值和同組數(shù)據(jù)期望之差不應(yīng)超過給定門限ε。門限ε的值根據(jù)需求進(jìn)行調(diào)整。
(8)
過濾一些明顯偏離的數(shù)據(jù)之后,會(huì)造成數(shù)據(jù)的缺失。缺失會(huì)影響數(shù)據(jù)連續(xù)性和后續(xù)方差求取的準(zhǔn)確性,因此需要進(jìn)行補(bǔ)全處理。采用先前數(shù)據(jù)的數(shù)學(xué)期望進(jìn)行補(bǔ)全。利用數(shù)據(jù)期望的補(bǔ)全方法不會(huì)破壞方差的完整性,也不會(huì)影響當(dāng)前自適應(yīng)因子的大小。由于出現(xiàn)較大偏差的概率較小,故采取此方法可滿足要求。目前的使用方法大部分只是對傳感器數(shù)據(jù)進(jìn)行剔除,并沒有補(bǔ)齊空缺數(shù)據(jù)。雖然這種操作對整體數(shù)據(jù)影響不大,但是對于實(shí)時(shí)性較強(qiáng)的系統(tǒng)來說,會(huì)影響每次融合后的預(yù)估值,因此需要對剔除后的數(shù)據(jù)進(jìn)行補(bǔ)齊。當(dāng)剔除較大偏差以后,數(shù)據(jù)的分散情況更加集中,方差也會(huì)變得較小。若多個(gè)傳感器的方差一起變小,則可進(jìn)一步提高結(jié)果的精度。
分批估計(jì)方法是將數(shù)據(jù)分為時(shí)間特性和空間特性進(jìn)行分批處理。時(shí)間序列的處理可以對未來的趨勢進(jìn)行預(yù)判或者分析??臻g的處理主要是對當(dāng)前真實(shí)值的判斷和分析。針對實(shí)際的需要可以選擇相應(yīng)的方法,對時(shí)間或者空間的數(shù)據(jù)進(jìn)行協(xié)同分析,也可以增加數(shù)據(jù)的真實(shí)性和協(xié)同性。時(shí)間特性采用分時(shí)窗,且視窗之間有重疊,可以保證每個(gè)數(shù)據(jù)點(diǎn)至少同時(shí)存在于兩個(gè)不同時(shí)窗里(時(shí)窗大小以傳感器的特性決定),進(jìn)而求得一個(gè)標(biāo)準(zhǔn)道,或者說是普通疊加道,這樣就可以對每一道進(jìn)行做差比較。差值小則權(quán)系數(shù)較大,差值大則權(quán)系數(shù)小,相同疊加道的權(quán)系數(shù)和為1。當(dāng)確定每一道的權(quán)系數(shù)之后,做加權(quán)疊加。每個(gè)點(diǎn)的終點(diǎn)值,為它所在不同時(shí)窗所得值的平均,最后完成疊加。空間特性采用同一時(shí)間內(nèi)的傳感器數(shù)據(jù)進(jìn)行計(jì)算分析,可以同時(shí)獲得空間和時(shí)間上的權(quán)值并得到融合結(jié)果,也可以等效為時(shí)間上的另一個(gè)時(shí)窗。方差可以根據(jù)樣本的改變而改變,使得融合結(jié)果更貼近真實(shí)值,提高數(shù)據(jù)的準(zhǔn)確性和魯棒性[13]。
由于目前使用的分批數(shù)據(jù)融合算法大多是對數(shù)據(jù)的整體或者部分進(jìn)行計(jì)算,其對處于同一空間的傳感器的相關(guān)關(guān)系沒有進(jìn)行合理利用[14]。本文對傳感器的時(shí)序進(jìn)行融合,可實(shí)時(shí)得到傳感器的融合數(shù)據(jù)。每一次采集得到的數(shù)據(jù)都能得到一個(gè)當(dāng)前的估計(jì)值。利用時(shí)窗特性,能穩(wěn)定抓住本時(shí)段的傳感器數(shù)據(jù)波動(dòng),得到的數(shù)據(jù)不存在傳感器方差僵化的情況。同時(shí)對多個(gè)傳感器進(jìn)行數(shù)據(jù)采集時(shí),存在相同的變化趨勢,這種協(xié)方差特性給傳感器最優(yōu)權(quán)值的計(jì)算提供了依據(jù)。
(9)
計(jì)算每個(gè)傳感器時(shí)間段的融合值,即
(10)
將n個(gè)傳感器的數(shù)據(jù)按照空間的同一時(shí)間為一組,算出方差σi+,利用時(shí)間上和空間上的方差融合成一個(gè)各傳感器某一時(shí)刻方差σi+,融合方式采取式(9)的計(jì)算方式。由式(7)可知,自適應(yīng)加權(quán)因子主要由各傳感器的方差決定。于是,對各傳感器方差的處理就是對自適應(yīng)因子的處理。分時(shí)窗進(jìn)行方差的求解可以增強(qiáng)算法的實(shí)時(shí)性。目前的算法普遍求解一個(gè)預(yù)測值,實(shí)時(shí)性不強(qiáng)。本文提出的算法不僅具有時(shí)間特性,還具有空間特性。利用協(xié)方差可以得到傳感器之間的相關(guān)性,將橫向的數(shù)據(jù)求方差,得到空間上的一致性。然后將空間上的一致性和時(shí)間上的一致性進(jìn)行求解,得到一個(gè)最適合本系統(tǒng)的自適應(yīng)因子,從而得到預(yù)測值。
系統(tǒng)的穩(wěn)定性不易直接觀察得出。在推導(dǎo)過程中,以均方誤差最小為最優(yōu)條件,均方誤差越小,得到的結(jié)果越可靠。由于本文采取的方法都為無偏估計(jì),故無偏測量過程可以采用方差直接衡量以測量穩(wěn)定性。本文以方差為參考,方差越小證明系統(tǒng)越穩(wěn)定。
本文用n個(gè)傳感器中方差分別為σi的傳感器L做均值估計(jì)。設(shè)傳感器L的方差σL2為測量數(shù)據(jù),由上文可知多個(gè)傳感器自適應(yīng)加權(quán)時(shí)的最小均方誤差σmin2,則有
(11)
將兩者的結(jié)果進(jìn)行比較,可得
(12)
(13)
利用自適應(yīng)加權(quán)的方法比均值法得到的方差較小,理論上優(yōu)于均值法。由上文可知,當(dāng)剔除偏離較大的數(shù)值后,通過式(11)可以看出分批自適應(yīng)的分母整體增大,σmin2變小。經(jīng)過數(shù)值一致性檢測以后,基于分批自適應(yīng)取得的方差相較于傳統(tǒng)自適應(yīng)方差有了明顯改進(jìn)。
基于分批自適應(yīng)加權(quán)平均算法包括以下步驟:
步驟1計(jì)算k時(shí)刻σ′i和σi;
(14)
通過以上步驟,可以算出每個(gè)傳感器相應(yīng)的最優(yōu)加權(quán)因子,進(jìn)而得到一個(gè)最準(zhǔn)確的結(jié)果。在實(shí)驗(yàn)過程中,針對不同的場景,可自適應(yīng)算出最優(yōu)加權(quán)因子,可以泛化地應(yīng)用于多種場景。
本文在Windows10下的MATLAB R2018a環(huán)境下進(jìn)行仿真,模擬多濕度傳感器環(huán)境中多個(gè)傳感器進(jìn)行操作的實(shí)驗(yàn)。
為了驗(yàn)證本文所提出的理論分析能夠同時(shí)對多傳感器數(shù)據(jù)自適應(yīng)融合,給定估計(jì)真值X為常量時(shí),采用3種方法(均值法、自適應(yīng)加權(quán)無偏方法和基于分批自適應(yīng)加權(quán)無偏方法)對多個(gè)傳感器期望值做估計(jì)并做對比。以上3種方法均不考慮數(shù)據(jù)的不一致性[15]。
式(13)中,當(dāng)n越大,比值越來越穩(wěn)定。當(dāng)n趨近于無窮的時(shí)候,自適應(yīng)加權(quán)和多傳感器均值的方差比趨近于一個(gè)常量,說明傳感器的數(shù)量在一個(gè)臨界點(diǎn)時(shí),再增加傳感器的數(shù)量并不能增加測量精度。在不知道傳感器先驗(yàn)概率的情況下,可以計(jì)算出先驗(yàn)概率,根據(jù)先驗(yàn)概率進(jìn)行傳感器的布設(shè)。當(dāng)傳感器測量精度為90%時(shí),取傳感器數(shù)量為n/0.9。按照仿真實(shí)驗(yàn)數(shù)據(jù)和理論推導(dǎo),本文選擇10個(gè)傳感器作為仿真的實(shí)驗(yàn)對象。
現(xiàn)實(shí)生活中的噪聲屬于加性噪聲,由傳感器內(nèi)部噪聲和環(huán)境干擾等多種相對獨(dú)立因素產(chǎn)生的測量噪聲為相互獨(dú)立的白噪聲。多個(gè)相互獨(dú)立的隨機(jī)變量相加的和接近正態(tài)分布,因此測量噪聲的分布規(guī)律也是正態(tài)分布的。于是,添加均值大于真實(shí)值的正態(tài)分布作為噪聲波動(dòng)。本實(shí)驗(yàn)選取的10個(gè)傳感器數(shù)據(jù)如表1所示,大部分傳感器的均值都在20左右,傳感器6的噪聲比例加大,模擬現(xiàn)實(shí)環(huán)境中的單個(gè)傳感器不靈敏的情況。針對不同的場景,選擇的傳感器數(shù)量不一樣,傳感器數(shù)量多過,會(huì)增大數(shù)據(jù)量,浪費(fèi)傳感器資源。傳感器數(shù)目過少,導(dǎo)致測量數(shù)據(jù)不準(zhǔn)確,影響系統(tǒng)功能。因此,節(jié)約系統(tǒng)資源和平衡數(shù)據(jù)精度也是多傳感器數(shù)據(jù)融合的一個(gè)重要參考依據(jù)[16]。
本文的仿真模擬了高斯分布傳感器的情形,傳感器性能參數(shù)如表1所示。
表1 傳感器參數(shù)
由表1可以看出,模擬10個(gè)傳感器同時(shí)產(chǎn)生10組均值為20的正態(tài)分布數(shù)據(jù)。在檢測傳感器數(shù)據(jù)時(shí),模擬數(shù)據(jù)在范圍內(nèi)滿足高斯分布,由于設(shè)備自身限制、小概率噪聲干擾或者其他干擾,可能會(huì)出現(xiàn)小規(guī)模偏差。產(chǎn)生數(shù)據(jù)后,數(shù)據(jù)波形如圖1所示。
圖1 各傳感器的波形圖 Figure 1. The waveform of each sensor
由圖1可以看出,10個(gè)傳感器的數(shù)據(jù)在20上下波動(dòng),加大噪聲的傳感器6的波動(dòng)大于其他傳感器,傳感器1和傳感器2的波形則較為平穩(wěn)。將10個(gè)傳感器的數(shù)據(jù)繪成概率密度曲線,如圖2所示。
圖2 各傳感器的概率密度曲線Figure 2. Probability density curves for each sensor
由圖2可以看出,10個(gè)傳感器的數(shù)據(jù)在均值20左右形成正態(tài)分布,存在不同程度的偏移和噪聲干擾。
選取10個(gè)傳感器,每個(gè)傳感器500個(gè)點(diǎn),進(jìn)行數(shù)據(jù)仿真。利用均值法、自適應(yīng)加權(quán)法,分批自適應(yīng)加權(quán)法進(jìn)行數(shù)據(jù)的融合操作。均值法直接將同時(shí)間的一組數(shù)據(jù)相加平均,得到一個(gè)期望數(shù)值,同時(shí)算出其均方差。自適應(yīng)加權(quán)利用上述的自適應(yīng)加權(quán)融合方法算出估計(jì)值和均方差?;诜峙赃m應(yīng)的方法利用數(shù)據(jù)一致性檢驗(yàn)進(jìn)行剔除,補(bǔ)充缺失值,按時(shí)間和空間序列計(jì)算出融合方差,得到最優(yōu)權(quán)值,最后求出預(yù)測值和均方差。本文中分批處理的自適應(yīng)加權(quán)ε取4,可以視實(shí)驗(yàn)結(jié)果而定。
首先按照自適應(yīng)方法求出方差和最優(yōu)權(quán)值,再進(jìn)行一致化處理,得到處理后的傳感器的最優(yōu)權(quán)值如表2和表3所示。
表2 未數(shù)值一致性處理的傳感器最優(yōu)權(quán)值
表3 數(shù)值一致性處理后的傳感器最優(yōu)權(quán)值
由表2和表3可以得出,未經(jīng)數(shù)值一致性處理時(shí),單個(gè)傳感器權(quán)值的占比較大;當(dāng)進(jìn)行噪點(diǎn)剔除以后,每個(gè)傳感器最優(yōu)權(quán)值的分布較為穩(wěn)定。利用分批自適應(yīng)法計(jì)算出傳感器最優(yōu)權(quán)值以后,根據(jù)式(1)算出其預(yù)測值。以采集次數(shù)為橫坐標(biāo),以傳感器數(shù)值為縱坐標(biāo),畫出自適應(yīng)法、平均值法和基于分批自適應(yīng)法的數(shù)據(jù)融合波形,如圖3所示。
圖3 結(jié)果比較 Figure 3.Comparison of results
由圖3可以看出,均值法波動(dòng)較大,且偏離中間值較多;自適應(yīng)加權(quán)法波動(dòng)明顯減??;基于分批自適應(yīng)方法的波動(dòng)最為平穩(wěn),更接近于均中間值。將3種方法得到的融合結(jié)果繪成概率密度曲線,如圖4所示。
圖4 總體概率密度曲線Figure 4. The overall probability density curves
從圖4可以直觀看出,基于分批自適應(yīng)數(shù)據(jù)融合算法的均值和方差值對比于均值法有明顯的提升;對比于自適應(yīng)法基于分批自適應(yīng)數(shù)據(jù)融合算法的均值和均方根誤差也有了相應(yīng)的改進(jìn)。
為了更好地比較3種方法的均值和均方根誤差,本文對傳感器的一整段數(shù)據(jù)進(jìn)行融合,結(jié)果如表4所示。
表4 算法的均值和均方誤差比較
由表4可以得到,自適應(yīng)加權(quán)比均值法的均方根誤差減少了21%,均值精確度提升了2.1%;基于分批的自適應(yīng)加權(quán)比自適應(yīng)加權(quán)減少了10%,均值精確度提升了2.3%。因此,基于分批自適應(yīng)加權(quán)的方法均值最接近真實(shí)值,均方根誤差也在3種方法中最小。
基于分批的自適應(yīng)加權(quán)算法在自適應(yīng)加權(quán)的基礎(chǔ)上進(jìn)行了數(shù)值一致化檢測,去除了大部分噪點(diǎn),又將方差的求解分時(shí)間段和空間特性進(jìn)行求解,避免了方差值的僵化,有效降低了均方根誤差,提高了傳感器的精度。此種方法在方差較為嚴(yán)重或噪聲比較大的情況下,效果較為顯著。
在上述實(shí)驗(yàn)中,通過對比均值法、傳統(tǒng)自適應(yīng)法和基于分批自適應(yīng)法的均值預(yù)測值和均方根誤差,證明了本文提出方法的有效性。該方法的融合結(jié)果在精度、容錯(cuò)性方面優(yōu)于傳統(tǒng)的平均值估計(jì)算法和自適應(yīng)加權(quán)平均算法,特別是在傳感器的誤差較大或者單個(gè)傳感器測量噪聲影響較大時(shí),效果顯著。該方法可用于智能家居、智能農(nóng)業(yè)的傳感器數(shù)據(jù)檢測,將傳感器的信息進(jìn)行融合以得到更為可靠和精確的結(jié)果,更有效地進(jìn)行家居環(huán)境和生長環(huán)境的監(jiān)控和調(diào)整。
在多傳感器數(shù)據(jù)融合的過程中存在很多干擾,需要解決的問題也千差萬別。在單一傳感器測量時(shí),為了減少估計(jì)值的均方根誤差就必須增大測量數(shù)據(jù)的數(shù)量,但該操作會(huì)降低實(shí)時(shí)性[17],因此面對不同的場景需選擇不同的傳感器融合方法。在物聯(lián)網(wǎng)和嵌入式領(lǐng)域,對數(shù)據(jù)的處理大部分都是像素級(jí)別的數(shù)據(jù)融合,主要解決的問題是傳感器的精度和系統(tǒng)的穩(wěn)定性。數(shù)據(jù)融合算法在處理相同類型的數(shù)據(jù)和不同類型的數(shù)據(jù)時(shí)具有良好的前景。目前,在有關(guān)機(jī)器人的領(lǐng)域,利用深度學(xué)習(xí)訓(xùn)練模型尋找多種傳感器數(shù)據(jù)的內(nèi)在關(guān)系,是數(shù)據(jù)融合的一個(gè)典型的應(yīng)用。此外,模型的拓展性也是多傳感器數(shù)據(jù)融合領(lǐng)域中有待進(jìn)一步研究的方向[18-19]。