

摘要:該文介紹了數據壓縮的基本原理及分類,詳細介紹了LZW算法及其在航空電子系統中的應用,并提出了改進方法。通過優化字典初始化和更新策略,改進的LZW算法可以減少編碼位數,避免字典飽和,從而有效提升壓縮效率。實驗結果表明,改進后的LZW算法在不同數據規模的測試中均展現出更低的壓縮率,驗證了該改進算法的有效性。
關鍵詞:航空電子系統;數據壓縮;LZW算法;字典優化
中圖分類號:TN911.2" " 文獻標識碼: A
文章編號:1009-3044(2025)12-0044-02
開放科學(資源服務) 標識碼(OSID)
0 引言
航空電子系統是現代飛機的重要組成部分,在確保飛機正常飛行、保障飛機信息傳遞、提高飛行安全、監控飛機狀態等方面發揮著關鍵作用。飛機飛行任務結束后,需要將航空電子系統存儲的各種信息下傳到地面,用于飛機數據分析與評估、維護與故障排查以及飛行員訓練與改進等。隨著航空電子系統功能的不斷擴展和集成度的不斷提高,其需要處理和存儲的數據量也急劇增加。盡管數據存儲和傳輸技術不斷發展,但現有技術的發展速度仍無法滿足信息快速增長的需求,僅靠增加通信帶寬和提高處理速度無法有效應對。因此,數據壓縮技術作為大數據時代的重要技術,對于提高航空電子系統數據的傳輸和存儲效率至關重要。優化數據壓縮方法可以提高數據壓縮效率,緩解數據存儲設備的壓力,是應對當前技術挑戰的關鍵策略之一[1]。
1 數據壓縮技術
1.1 數據壓縮原理
1948年,克勞德·香農在其論文中詳細論述了信息編碼的最佳方法,他被譽為“信息學之父”。這里的“最佳”指的是使用最少的字母或符號(即二進制位,信息的單位) 來傳遞消息。最少的信息量由消息本身的信息熵決定。信息熵是衡量信息不確定性的重要概念,反映了信息內容的豐富度。數據壓縮的核心目標是使用最少的比特數來表示信源信號,從而減少特定消息集合或數據采樣集合所占用的空間(空域、時域和頻域的空間) 。數據壓縮的本質是保留壓縮對象的有用信息,盡可能去除冗余信息,包括空間冗余、時間冗余和信息熵冗余。數據壓縮的有效性直接影響信息的傳輸和存儲效率。通俗地說,數據壓縮就是減小數據所占用存儲空間或傳輸帶寬的過程[2]。
1.2 數據壓縮算法分類
根據壓縮與解壓縮后的數據是否與原數據完全一致,壓縮算法可分為無損壓縮算法和有損壓縮算法。無損壓縮算法在解碼后,解碼出來的數據與原數據完全相同,壓縮后的數據信息不會損失。無損壓縮算法多應用于對數據存儲精度要求較高的領域,如文本文件、程序代碼和特定圖像格式,常見的無損壓縮算法包括Huffman編碼、LZ77編碼、LZW編碼和算術編碼等。有損壓縮算法允許在壓縮過程中丟失部分信息,因此解碼后的數據與原數據存在一定差異,但不會影響用戶對數據信息的理解和傳播。有損壓縮算法能夠大幅減小文件大小,在存儲和傳輸多媒體文件時尤為重要,特別是對于圖像、視頻和音頻等類型數據,常見的算法有JPEG、MPEG、MP3/AAC、WebP等[3]。
2 航空電子系統中的數據壓縮
2.1 數據壓縮算法選取
航空電子系統中的數據,例如傳感器數據、導航數據、飛行控制數據和飛機狀態監測數據等,具有較高的重要性,它們有助于提高飛行安全性和航班運營效率,任何信息的丟失或失真都可能導致嚴重后果。因此,對這些數據進行壓縮時必須采用無損壓縮算法,以確保壓縮與解壓縮過程中數據的準確性和完整性[4]。
Huffman算法實現簡單,但壓縮過程中需要先掃描一次數據,統計數據出現的概率頻次,然后再次掃描數據生成二叉樹進行編碼,這會增加設備的運行壓力。LZ77編碼在壓縮關聯性較強的數據時效果較好,但數據壓縮和解壓縮時間較長,且對關聯性較弱的數據壓縮效果較差。算術編碼的復雜度較高,實現難度較大。LZW算法壓縮與解壓縮速度快,且在壓縮過程中無須傳輸建立的碼表,節省了內存占用空間,在數據壓縮方面總體效果較好[5]。
2.2 LZW算法
LZW(Lempel-Ziv-Welch) 算法是一種廣泛應用的無損壓縮算法,其基本原理是利用字典編碼技術減少數據中的冗余信息,從而實現數據壓縮。該算法的核心思想是構建一個字典,用字典中的詞條替換數據中出現頻次較高的字符串,從而降低數據的空間冗余,達到數據壓縮的目的。圖1展示了LZW算法的編碼步驟。
2.3 改進LZW算法
針對航空電子系統數據的特點和LZW算法的編碼過程,本文對算法進行了改進,重點關注字典初始化和字典更新策略。
航空電子系統中的數據在內存中以十六進制存儲,這意味著實際數據表示中只有0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F這十六個字符的不同排列組合。因此,在數據壓縮過程中,無須將字典初始化為整個擴展ASCII字符集(256項) 。將字典初始化內容降低到16項,可以縮減字典大小,降低編碼位數,從而有效提升數據壓縮效果。
采用LRU(Least Recently Used) 的字典更新策略,即在字典達到最大容量后,通過統計排序找出當前字典中使用頻率最低的詞條,并用新詞條將其替換??朔藗鹘yLZW算法在字典被填滿后不再添加新詞條的局限性。傳統LZW算法的字典更新策略可能導致剩余數據無法被壓縮,影響數據壓縮效率和整體壓縮效果。LRU策略的動態更新機制可以保證新的高頻詞條被有效壓縮,提高算法的靈活性與適應性,提升數據整體壓縮效果[6-7]。
3 壓縮效果測試
3.1 壓縮率
壓縮率R代表壓縮后的數據占據原始數據的長度百分比。壓縮率越小,壓縮效果越好,反之則壓縮效果越差。計算公式如下:
[R=輸出數據流的長度(比特數)輸入數據流的長度(比特數)]" " " " "(1)
3.2 航空電子系統數據壓縮測試
實驗在一臺配備Intel Core i7-9700K 處理器、16 GB DDR內存和512 GB SSD的計算機上進行,該硬件配置能夠提供足夠的計算能力和存儲空間,確保數據處理過程的高效性和穩定性。實驗環境為Ubuntu 20.04操作系統,編程語言為C語言。實驗數據來自WQAR(無線快速存取記錄器) 工作時生成的日志文件,這些文件分別記錄了4小時、8小時和12小時的工作狀態和數據。為了清晰展示LZW算法與改進LZW算法在文件壓縮效果上的差異,表1列出了兩種算法處理不同時間長度的日志文件時的壓縮結果。
表1中三個不同大小數據的壓縮對比試驗結果顯示,LZW算法對三組數據的平均壓縮率為65.67%,改進LZW算法對三組數據的平均壓縮率為61%。經過比較可得出,改進LZW算法將數據的整體壓縮率降低了大約4.67%。
4 結束語
隨著航空電子系統復雜程度的不斷提高,航空電子系統數據的存儲變得越來越重要,數據壓縮技術可以提高數據壓縮效率,緩解數據存儲設備的壓力,確保系統的高效運行和數據的快速訪問。針對航空電子系統數據的特點以及傳統LZW算法編碼過程中存在的不足,本文對其字典初始化策略和字典更新策略進行改進,并進行了壓縮效果實驗測試。實驗結果表明,改進后的LZW算法可以有效減少數據存儲空間,為解決航空電子系統數據的傳輸和存儲問題提供參考。
參考文獻:
[1] 孟令紅.大數據時代廣電數據中心研究與設計[J].電子技術與軟件工程,2020(9):176-177.
[2] 柯爾特·麥克安利斯,亞歷克斯·海奇.數據壓縮入門:data compression for modern developers[M].王凌云,譯.北京:人民郵電出版社,2020.
[3] 趙文剛,楊宏博,楊寶明.數據壓縮算法在儲能電站中的應用研究[J].工業控制計算機,2022,35(2):54-55.
[4] 彭德強,宋新超,王春蕓.一種基于LZW算法的PDW數據壓縮方法[J].航天電子對抗,2014,30(3):62-64.
[5] 葉洪娜.一種改進的LZW-FSE數據壓縮算法研究[D].哈爾濱:哈爾濱理工大學,2021.
[6] CHENG X Y,LI B,WU J X,et al.A novel dictionary management scheme of LZW compression algorithm based on insignificant dictionary area[C]//2021 IEEE 6th International Conference on Signal and Image Processing (ICSIP).October 22-24,2021,Nanjing,China.IEEE,2021:975-979.
[7] 成小勇.LZW數據壓縮的改進與加密研究[D].南京:東南大學,2022.
【通聯編輯:梁書】