王林景, 高志宇, 姚鵬帥
(河南中醫(yī)藥大學 信息技術學院, 鄭州 450046)
傳感器具有一定的抗干擾性能及感知、 通信能力, 可以對目標的信息進行在線監(jiān)測和采集, 通過計算機技術和通信技術, 可將多個傳感器組合在一起形成一個傳感器網(wǎng)絡, 對一個區(qū)域中多個目標進行檢測, 在許多領域應用廣泛[1-3]. 在傳感器網(wǎng)絡的實際應用中, 存在較明顯的缺陷, 如傳感器節(jié)點的能量和寬帶有限, 給傳感器網(wǎng)絡數(shù)據(jù)傳輸?shù)木嚯x帶來巨大挑戰(zhàn). 為了減少傳感器網(wǎng)絡數(shù)據(jù)傳輸能耗, 提高傳感器網(wǎng)絡數(shù)據(jù)的傳輸質量, 在保證傳感器網(wǎng)絡數(shù)據(jù)質量的同時, 盡可能地減少傳輸數(shù)據(jù)量. 壓縮算法是目前一種重要的減少傳輸數(shù)據(jù)量的技術, 其可適當去除數(shù)據(jù)之間的冗余, 降低傳感器網(wǎng)絡數(shù)據(jù)存儲空間, 提高傳感器網(wǎng)絡數(shù)據(jù)傳輸速度和成功率, 因此設計一種效果良好的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法至關重要[4-6].
目前針對數(shù)據(jù)壓縮原理不同, 傳感器網(wǎng)絡數(shù)據(jù)壓縮算法可分為兩類: 無損數(shù)據(jù)壓縮算法和有損數(shù)據(jù)壓縮算法. 其中無損數(shù)據(jù)壓縮算法可對數(shù)據(jù)進行逆向恢復, 最早的無損數(shù)據(jù)壓縮算法為Shannon編碼的壓縮算法, 根據(jù)數(shù)據(jù)冗余特性, 引入信息熵理論計算出信息編碼的極限, 消除信息中的冗余, 但其壓縮效果不理想. 基于Huffman編碼的壓縮算法屬于無損數(shù)據(jù)壓縮算法, 其編碼效率高, 運算速度快, 但其需要相應的硬件配合, 因此傳感器網(wǎng)絡數(shù)據(jù)壓縮的成本較高[7-9]. 為了解決基于Huffman編碼壓縮算法的缺陷, 出現(xiàn)了基于算術編碼的壓縮算法, 其重構后的數(shù)據(jù)與原始數(shù)據(jù)完全一致, 壓縮效果上極大超過了Huffman編碼算法, 同時具有Huffman編碼算法的運算速度, 但由于其是一種無損數(shù)據(jù)壓縮算法, 因此只針對文檔數(shù)據(jù)進行壓縮, 而隨著信息技術、 多媒體技術的不斷發(fā)展, 無損數(shù)據(jù)壓縮算法無法獲得理想的數(shù)據(jù)壓縮效果[10]. 有損數(shù)據(jù)壓縮算法主要針對視頻、 圖像、 聲音等數(shù)據(jù)進行壓縮, 雖然重建后的數(shù)據(jù)與原始數(shù)據(jù)不同, 但不影響原始數(shù)據(jù)的表達信息, 主要算法有: 靜態(tài)圖像聯(lián)合專家小組的壓縮算法(joint picture expert group, JPEG)、 動態(tài)圖像聯(lián)合專家小組的壓縮算法(moving picture expert group, MPEG), 它們根據(jù)心理聲學機制, 去除掉看不見、 難聽見的數(shù)據(jù), 從而達到對視頻、 圖像和聲音進行壓縮[11-12]. JPEG算法主要針對靜止的圖像, 其從整體上對圖像進行處理, 壓縮時間消耗較長; MPEG算法有多個版本, 其主要針對視頻數(shù)據(jù)進行壓縮, 具有壓縮率高、 兼容性好等優(yōu)點, 但其只是從空間上對數(shù)據(jù)進行壓縮, 實際上數(shù)據(jù)在時間上也存在一定的冗余, 因此通用性較差, 對傳感器網(wǎng)絡數(shù)據(jù)壓縮很難達到理想效果[13-15].
為了解決傳感器網(wǎng)絡數(shù)據(jù)壓縮過程中存在的問題, 以改善傳感器網(wǎng)絡數(shù)據(jù)壓縮效果為目標, 本文提出一種基于時空相關性的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法, 分別從時間和空間上對傳感器網(wǎng)絡數(shù)據(jù)進行壓縮處理, 消除數(shù)據(jù)之間的冗余, 并采用具體仿真對比實驗分析本文算法的可行性和優(yōu)越性.
傳感器網(wǎng)絡在采集數(shù)據(jù)時, 外界因素將一些無用信息包含其中, 這些無用信息可統(tǒng)稱為噪聲, 用n(t)描述, 則傳感器網(wǎng)絡的原始數(shù)據(jù)可描述為
f(t)=s(t)+n(t),
(1)
其中s(t)表示無噪的傳感器網(wǎng)絡數(shù)據(jù)[16-17].
小波變換算法是一種空間變換域的數(shù)據(jù)處理技術, 對原始傳感器網(wǎng)絡數(shù)據(jù)通過一定尺度分解, 可產(chǎn)生不同大小的小波系數(shù)w(m,n), 無噪傳感器網(wǎng)絡數(shù)據(jù)的小波系數(shù)與分解尺度m成正比, 而噪聲與m成反比, 基于該特點可進行傳感器網(wǎng)絡數(shù)據(jù)消噪處理, 從空間上對傳感器網(wǎng)絡數(shù)據(jù)進行一定的壓縮, 在減少傳感器網(wǎng)絡數(shù)據(jù)規(guī)模的同時, 提高傳感器網(wǎng)絡數(shù)據(jù)質量, 算法步驟如下:
1) 采用小波變換對原始傳感器網(wǎng)絡數(shù)據(jù)進行m尺度分解得到多個小波系數(shù)w(m,n), 其中n表示小波系數(shù)編號;
2) 計算w(m,n)和w(m+1,n)兩個小波系數(shù)的關聯(lián)度
R(m,n)=w(m,n)·w(m+1,n);
(2)
3) 設
采用
(3)
對關聯(lián)度進行歸一化操作, 縮小其取值范圍;
4) 若滿足條件|NR(m,n)|≥λ, 則表示w(m,n)對應的有用傳感器網(wǎng)絡數(shù)據(jù), 其值保持不變; 否則其對應噪聲, 小波系數(shù)設置為零,λ的計算公式為
(4)
其中σ(m)表示Pw(m)的均方差;
5) 采用小波逆變換對處理后的小波系數(shù)進行重構, 消除傳感器網(wǎng)絡數(shù)據(jù)中的噪聲后, 減少了傳感器網(wǎng)絡數(shù)據(jù)存儲空間.
1.2.1 壓縮感知理論 去噪后的傳感器網(wǎng)絡數(shù)據(jù)可視為一個序列數(shù)據(jù)x, 其長度為N, 通常條件下, 該序列信號具有一定的非稀疏特性, 引入稀疏變換矩陣ψ∈N×N將其變換成稀疏數(shù)據(jù)f:
f=ψx.
(5)
基于壓縮傳感算法的工作原理, 根據(jù)稀疏信號與測量矩陣Φ∈M×N得到觀測數(shù)據(jù)y, 其長度為M, 且滿足條件:M?N, 觀測數(shù)據(jù)[18-20]為
y=Φf.
(6)
可以對觀測數(shù)據(jù)y進行l(wèi)0范數(shù)求解, 得到稀疏數(shù)據(jù)f的解:
將稀疏數(shù)據(jù)和測量矩陣進行合并可以產(chǎn)生:
(8)
根據(jù)式(5)可得x的精確解:
(9)
圖1 壓縮感知的工作原理
因此, 壓縮感知理論的工作過程如圖1所示.
1.2.2 數(shù)據(jù)重構算法 數(shù)據(jù)重構算法是壓縮感知理論的核心內容, 主要目的是從觀測數(shù)據(jù)中完整地恢復出原始數(shù)據(jù), 本文選擇正交匹配追蹤算法作為傳感器網(wǎng)絡的數(shù)據(jù)重構算法, 其工作步驟如下:
1) 對正交匹配追蹤算法的輸入向量進行相應設置;
3) 搜索傳感器網(wǎng)絡數(shù)據(jù)的支撐索引, 計算公式為
(10)
4) 在搜索到傳感器網(wǎng)絡數(shù)據(jù)的支撐索引中加入數(shù)據(jù)支撐集, 即
Λl=Λl-1∪{λl};
(11)
5) 對殘差按如下公式進行更新:
(12)
6) 輸出重構后的傳感器網(wǎng)絡數(shù)據(jù):
(13)
為提高傳感器網(wǎng)絡數(shù)據(jù)壓縮效果, 本文提出一種基于時空相關性的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法, 其工作原理為: 首先采集傳感器網(wǎng)絡原始數(shù)據(jù), 然后采用空間變換技術從空間上分析傳感器網(wǎng)絡數(shù)據(jù)之間的相關性, 進行去噪處理, 減少噪聲所占的空間資源, 最后根據(jù)傳感器網(wǎng)絡數(shù)據(jù)時間上的相關性, 引入壓縮感知算法對空間系數(shù)進行壓縮處理, 減少傳感器網(wǎng)絡數(shù)據(jù)冗余, 其原理如圖2所示.
圖2 基于時空相關性的傳感器網(wǎng)絡數(shù)據(jù)壓縮原理
為了分析基于時空相關性的傳感器網(wǎng)絡數(shù)據(jù)壓縮的有效性, 本文采用MATLAB 2018作為仿真測試平臺, 選擇傳感器網(wǎng)絡數(shù)據(jù)壓縮比、 傳感器網(wǎng)絡數(shù)據(jù)壓縮前后數(shù)據(jù)的相似度及傳感器網(wǎng)絡數(shù)據(jù)壓縮時間對實驗結果進行評價. 為了體現(xiàn)時空相關性的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法的優(yōu)越性, 選擇MPEG的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法、 文獻[15]的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法進行對比測試. 設傳感器網(wǎng)絡共有100個節(jié)點, 采集的數(shù)據(jù)為溫度、 濕度、 圖像、 聲音、 視頻, 傳感器節(jié)點的通信距離為10 m.
圖3 傳感器網(wǎng)絡數(shù)據(jù)壓縮比對比
壓縮比主要描述壓縮后的數(shù)據(jù)量占原始數(shù)據(jù)量的比例, 時空相關性的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法、 MPEG算法和文獻[15]算法的數(shù)據(jù)壓縮比對比結果如圖3所示. 由圖3可見, MPEG算法和文獻[15]算法的傳感器網(wǎng)絡數(shù)據(jù)壓縮比較高, 對于溫度、 濕度, 其壓縮比較小, 但對于圖像、 聲音、 視頻, 其壓縮比始終高于50%, 無法充分描述傳感器網(wǎng)絡數(shù)據(jù)的時間和空間相關性, 而時空相關性的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法對所有類型的數(shù)據(jù), 其壓縮比均較小, 能充分挖掘傳感器網(wǎng)絡數(shù)據(jù)的時間和空間相關性, 最大程度地去除了冗余數(shù)據(jù), 在相同條件下能獲得較優(yōu)異的傳感器網(wǎng)絡數(shù)據(jù)壓縮結果.
本文算法、 MPEG算法和文獻[15]算法的傳感器網(wǎng)絡數(shù)據(jù)壓縮前后的數(shù)據(jù)相似度(%)對比結果如圖4所示. 由圖4可見, 相對于MPEG算法和文獻[15]算法, 本文算法提高了壓縮前后的數(shù)據(jù)相似度, 即在保證壓縮比的同時, 保證了傳感器網(wǎng)絡數(shù)據(jù)的有效性, 可重構得到更理想的原始傳感器網(wǎng)絡數(shù)據(jù), 能描述更多的傳感器網(wǎng)絡原始數(shù)據(jù).
在傳感器網(wǎng)絡數(shù)據(jù)壓縮過程中, 算法的執(zhí)行速度十分重要, 本文采用傳感器網(wǎng)絡數(shù)據(jù)壓縮時間對算法的執(zhí)行速度進行評價. 本文算法、 MPEG算法和文獻[15]算法的傳感器網(wǎng)絡數(shù)據(jù)的壓縮時間(s)對比結果如圖5所示. 由圖5可見, 與基于MPEG算法和文獻[15]算法的壓縮時間相比, 本文算法的傳感器網(wǎng)絡數(shù)據(jù)壓縮時間大幅度降低, 加快了傳感器網(wǎng)絡數(shù)據(jù)壓縮速度, 在相同時間內, 可以處理更多的傳感器網(wǎng)絡數(shù)據(jù), 提高了傳感器網(wǎng)絡數(shù)據(jù)壓縮效率.
圖4 傳感器網(wǎng)絡數(shù)據(jù)壓縮前后的數(shù)據(jù)相似度對比
圖5 傳感器網(wǎng)絡數(shù)據(jù)壓縮效率對比
綜上所述, 為了解決當前傳感器網(wǎng)絡數(shù)據(jù)壓縮算法存在壓縮比小、 信息丟失嚴重等缺陷, 本文提出了一種基于時空相關性的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法. 首先采用小波變換技術從空間上對傳感器網(wǎng)絡數(shù)據(jù)進行處理, 去除噪聲所占的空間資源; 然后采用壓縮感知算法從時間上對傳感器網(wǎng)絡數(shù)據(jù)進行去冗余操作; 最后與其他傳感器網(wǎng)絡數(shù)據(jù)壓縮算法進行對比測試實驗. 實驗結果表明, 本文算法是一種速度快、 壓縮比小的傳感器網(wǎng)絡數(shù)據(jù)壓縮算法, 極大降低了傳感器網(wǎng)絡傳輸?shù)臄?shù)據(jù)量, 達到了傳感器網(wǎng)絡數(shù)據(jù)壓縮的目的, 具有廣闊的應用前景.