沈邦躍,何建新,曾強宇
(1.成都信息工程大學電子工程學院,四川成都 610225;2.中國氣象局大氣探測重點開放實驗室,四川成都 610225)
天氣雷達是探測災害性天氣過程的有效手段,天氣雷達數據是研究天氣形成原因以及預測分析的重要信息,對災害性天氣過程的精確預警預報有著重要作用。隨著相控陣雷達技術發展,雷達數據探測精度和分辨率越來越高,隨之增大的是雷達數據的數據量,數據的傳輸和存儲壓力增大。天氣雷達數據壓縮技術將數據進行實時壓縮處理,減緩傳輸和儲存壓力,提高雷達的業務能力,因而受到越來越多的關注。
天氣雷達數據壓縮分為有損壓縮和無損壓縮。有損壓縮通過損失一定的數據信息獲得更高的壓縮率,在實際應用中,根據不同應用環境去掉不需要的信息或降低精度實現有損壓縮。無損壓縮較有損壓縮的壓縮率更低,但能夠完整保存數據,實際應用中,原始數據使用無損壓縮保存。無損壓縮和有損壓縮的選擇取決于用戶需求,在進行數據精度要求不高的定性分析時,使用有損壓縮能夠進一步提高壓縮率,而進行對數據的精度要求較高的定量計算時,數據失真會影響天氣過程的分析和數據同化,雷達數據精度決定了分析結果的準確性。因此,有損壓縮不適合對數據保真度要求較高的應用需求,需通過無損壓縮來進行完整數據的保存。
現有壓縮算法大多基于圖像處理,在圖像壓縮算法中有很多可以借鑒的壓縮算法思路。在基于圖像的壓縮算法中,Liu 等[1]基于線性預測、整數小波變換(IWT)與輸出系數處理和Huffman 編碼相結合,提出一種改進的無損壓縮算法,該算法能夠更好地壓縮紋理復雜和分辨率高的圖像。M Waleed 等[2]將可逆顏色變換(RCT)與雙層Burrows-Wheeler 壓縮算法(BBWCA)相結合,增加圖像像素的重復性,增強冗余度,從而更好地壓縮。Xin 等[3]提出一種關于圖像的可壓縮指示函數,給出表示位置所需的平均位數的閾值,針對二值圖像、灰度圖像和多分量圖像,采用形狀對圖像進行編碼,使用形狀和位置來表示二值圖像,能夠有效進行圖像無損壓縮。這些圖像的壓縮思路可以提供基于數據壓縮的理論支持以及新的研究思路,在數據壓縮方便優化算法性能。
天氣雷達數據有損壓縮研究中,陳威等[4]詳細描述了對多普勒天氣雷達回波數據進行小波變換和對變換系數進行嵌入式零樹編碼(embedded zero tree wavelet coding,EZW)的過程,實現對回波數據的有損壓縮,明顯優化了峰值信噪比。潘志剛等[5]提出了一種可以根據數據的分塊大小來自適應選擇不同量化比特率的算法。陳璐等[6]提出了由3 部分組成的混合壓縮算法,分別是預壓縮、有損壓縮和無損壓縮。能夠有效地根據需求來對氣象雷達數據進行壓縮。李朋等[7]提出了一種幀間自適應分塊量化的壓縮算法FD-BAQ。這種算法在幾乎不增加復雜度的情況下提高了BAQ的壓縮性能,但在壓縮過程中會得到較大的量化誤差,可能造成數據的較大失真。
天氣雷達探測數據無損壓縮研究中,黃云仙等[8]提出了基于階梯量化的壓縮算法,并使用MED 預測,能夠有效實現氣象雷達的數據壓縮。Zeng 等[9]提出了一種預測算法,基于時間和空間對天氣雷達數據進行無損壓縮,利用殘差數據和運動向量代替原始值進行熵編碼,較次優算法的壓縮性能提高了26%。夏正[10]分別研究了LMS 預測算法、分塊預測算法和MED 預測算法的原理,并使用雷達回波數據對各算法的壓縮效果進行驗證和對比。結果表明,幾種算法中,采用MED 二維預測算法對雷達回波數據預測變換后,殘差數據的熵值最小。曾強宇等[11]提出了應用雙偏振的天氣雷達技術數據壓縮算法DPRC,解決了傳統通用的無損壓縮算法壓縮率相對低下的技術缺陷,對高分辨的雙線偏振天氣雷達的組網技術提供了有力支持。
現有天氣雷達數據壓縮算法主要針對新一代天氣雷達數據,但經過雙偏振和相控陣兩次技術進步,天氣雷達的數據量增加了100 倍以上,數據壓縮技術需要針對相控陣天氣雷達數據特點進行壓縮性能研究。文本利用相控陣天氣雷達的高時空相關性,提出基于超分辨率的相控陣天氣雷達無損壓縮算法,將超分辨率和預測編碼結合,能有效降低數據相關冗余,實現無損壓縮。這對于解決先進天氣雷達數據傳輸與存儲等實際問題,建立天氣雷達數據壓縮體系具有重要意義。
新一代天氣雷達系統目前已經成功在全世界穩定運行了二十多年,通過機械掃描的方式,自動改變雷達天線的方位角和俯仰角來完成體掃。這種雷達掃描的方法是在嚴格保證雷達數據質量精度的前提情況下,雷達最快速度可保證以每6 min連續進行14 層掃描。在這種雷達掃描方法處理下的雷達資料還可以用于實現對大中尺度氣象過程中如對臺風、暴雨天氣等災害的實時監測分析預報和分析預警,對于進一步增強對災害性氣象過程的實時監視分析與分析預報的水平將有一個很大提高。龍卷等小尺度強對流天氣形成時間短、發展快、持續時間短,新一代天氣雷達無法對龍卷等天氣過程進行有效探測[12]。相控陣天氣雷達系統可實現在嚴格保證觀測數據質量精度的前提情況下對系統進行實時快速的掃描,采用的陣列天線是以具有大量頻率相同特性的輻射單位所構成,各個天線單元的輻射相位頻率與輻射幅度方向均為完全自主和可控,可以同時進行多個高精度波束的指向,完成對任意一個方向上返波的觀測。相控陣天氣雷達系統可以在短短1 min時間內就完成體掃,同時得到大量準確的天氣信息[13]。
成都信息工程大學聯合南京恩瑞特實業有限公司研制了X 波段雙線偏振相控陣天氣雷達CHARTORXPARD,2021年5月雷達在江蘇省興化市氣象局架設完畢,投入強對流天氣過程觀測。CHARTOR-XPARD雷達采用了全新設計的大角度掃描低副瓣雙極化波導縫隙相控陣天線,如圖1所示。雙偏振相控陣雷達不僅可以探測云和降水區域的反射率因子(Z)、徑向速度(V)和速度譜寬(W),還可以獲得差分反射率(ZDR)、差分傳播相移(ΦDP)、差分傳播相移率(KDP)以及偏振相關系數(ρhv)等偏振參量。利用差分雙線偏振分析技術可直接測定各種天氣目標云的差分反射率因子、差分傳播相移、退偏振比和其他各種物理參數,以及直接利用計算機對所有上述物理參數進行數值解析,判斷目標云相態的空間分布,粒子形態結構與粒子大小的空間分布規律和各種降水天氣粒子云的運動特性等(如冰雹、雪、雨、冰晶等)。天線陣面技術指標見表1。

表1 天線陣面技術指標

圖1 興化CHARTOR-XPARD 相控陣雷達
CHARTOR-XPARD 雙偏振相控陣使用多波束技術,可以同時對多個仰角進行觀測,在一個PPI 中,回波數據中有大量的無效數據。單層仰角數據中,共有360個徑向,每個徑向上有1667 個距離庫,反射率數據精度為0.5 dBZ。在雷達探測掃描過程中,會產生大量的無效數據,得到的體掃數據中存在小于或大于閾值的數值或者對應區域在大氣中不存在天氣過程,這些區域的距離庫所表示的就是無效數據。因為無效數據的大規模重復產生,天氣回波數據存在很大程度的間隙。無效數據又可簡單分成以下兩種:一類為隨機分配的數據產生的非拖尾的無效數據;另一種數據是位于徑向尾端,在徑向尾端被逆向到一個非零值的部分,叫作拖尾的無效數據[11]。根據江蘇興化相控陣雷達數據,可以得出在有天氣過程時,無效數據占據40%~50%,其中拖尾無效數據占據15%~27%,并且無效數據的占比隨著仰角增加而下降;在無天氣過程時,無效數據占據82%~95%,其中拖尾無效數據占據59%~74%,并且無效數據占比隨著仰角增加而增加。如圖2所示,在數據預處理時,直接將拖尾無效數據去除,不會影響數據完整度,并可以進一步提高壓縮率。

圖2 不同天氣無效數據對比圖
CHARTOR-XPARD 相控陣雷達在獲取氣象雷達回波數據時,相鄰數據段之間總是存在高度的數據相關性。本文的壓縮算法旨在利用相鄰數據段之間的數據相關性來減少雷達數據的冗余?;赑PI,兩個徑向相鄰的氣象雷達距離數據庫與兩個空間相鄰的徑向距離數據庫高度相關,利用已傳塊數據預測下一塊數據。本文的天氣雷達數據壓縮算法是降低數據之間的相關性,通過預測算法改變數據的分布結構,以便熵編碼有效地壓縮存儲空間。如圖3所示,同一徑向內的相鄰距離庫以及相鄰徑向間距離庫大概率會出現數據相同或者相似的現象,通過幀內預測的方式降低數值的大小,再進行熵編碼能有效降低這種空間冗余。超分辨率重建是利用低分辨率數據重建出分辨率更高的回波數據,這就需要回波自身的冗余信息即回波的相關性。冗余信息可以對重建回波進行約束,使重建回波更接近原始回波。

圖3 不同參數的相鄰徑向相關系數
本文提出一種相控陣天氣雷達數據壓縮算法,算法流程如圖4所示,算法步驟如下。

圖4 壓縮算法流程
Step1:對天氣相控陣雷達回波數據進行預處理,將PPI 數據二倍下采樣(降低分辨率)得到下采樣數據;
Step2:將下采樣數據使用STV 超分辨率重建算法(self-adaptive total variation,STV)[14]得到重建數據,重建數據與原始數據進行差分得到重建殘差;
Step3:將下采樣數據經過幀內預測之后與原始下采樣數據作差得到預測殘差;
Step4:將預測殘差與重建殘差組合得到組合數據;
Step5:進行熵編碼,輸出碼流。
解碼端利用傳輸的模式以及預測殘差,可以恢復二倍下采樣數據。再利用下采樣數據通過STV 算法得到重建PPI,與傳輸的重建殘差數據補償得到原始PPI,解碼流程如圖5所示。該算法是一個無損的過程,能有效進行相控陣天氣雷達數據無損壓縮。

圖5 解碼流程
讀取體掃數據,1 個體掃數據包含5 層仰角數據,根據頭文件信息,將不同仰角層的各參數數據進行分類存儲。在頭文件信息中,頭文件所包含的基本參數大部分是相同的。在頭文件預處理時,將頭文件進行差分得到殘數數據,再進行熵編碼能更有效地較少數據量。
在數據塊預處理時,將數據映射至[0,160],能夠更有效地進行后續編碼處理,由于相控陣天氣雷達的反射率數據范圍是-10~70,反射率數據映射方法如下:
Data′=[(Data+10)×2]
在一個PPI 中,無效數據大量存在,其中包含拖尾無效數據。由于拖尾無效數據不會影響數據質量,直接去除拖尾無效數據可以減少大量傳輸數據量。去除拖尾無效數據之后再進行后續算法。
預測編碼使用的是幀內預測模式,能更好地減少數據塊間存在的數據空間的冗余,使用已傳數據來預測當前塊的值,通過傳輸模式與殘差來減少數據之間的相關冗余。幀內預測以4×4 的塊作為一個基本單位,在邊界沒有足夠距離庫時,使用補“0”的方法構成完整塊。本算法是在一個PPI 內進行,在同一層仰角相鄰徑向的距離庫以及同一徑向內相鄰的距離庫均具有較強相關性。在相鄰的距離庫之間,其數據大小很大概率會出現相同或者相似的值。相鄰的兩個距離庫之間的差值很小,通過預測算法可以得到數值很小的殘差數據塊,有效地改變了數據的數值分布,預測流程如圖6所示。

圖6 預測流程
幀內預測共有7 種預測模式,垂直、水平和DC 模式適用于變化平坦的區域,其他模式適用于紋理比較復雜的區域。當前數據塊與預測所需參考值位置如圖7所示,不同預測模式輸出是由A~L 參數權重不等的公式加權計算。

圖7 幀內預測參考位置圖
其中A~M 為已傳數據,a~p 為當前塊,通過7種模式預測,如圖8所示。

圖8 預測模式
在垂直模式下,預測塊上部的樣值按箭頭方向復制到預測塊。水平模式與垂直模式很相似,按照左部的樣值進行復制。其余模式正如名稱所示,適合進行有對應方向的紋理結構的預測。其中DC 模式、水平模式以及垂直模式使用次數最多,公式如下:
數據塊通過7 種預測模式進行預測,計算出每個預測模式輸出值與當前塊原始數據的SAD 值,編碼器將選擇出最優預測模式以及預測值作為最終預測輸出。
模式選擇用于確定最佳預測模式,輸出與原始數據最相似的預測值,最終得到殘差數據,如圖9所示。殘差數據是由原始數據與預測數據作差所得,通過SAD(sum of absolute difference)值來選擇最優預測模式。

圖9 模式選擇
其中,Pred(i,j)是經過預測模式輸出的預測塊,block(i,j)是當前數據塊,i和j分別是行數和列數,M和N表示當前塊的大小。SAD 是指當前數據塊與預測塊的絕對誤差和,當SAD 值越小,預測數據塊和原始數據塊越相似,表示預測效果更佳。選擇出SAD 值最小的預測模式和預測數據塊,通過傳輸殘差值能有效降低數據大小,改變數據結構分布。
在7 個預測輸出塊中,選出SAD 值最小的預測模式輸出塊,預測塊與原始數據作差得到殘差值,如圖10所示。最終傳輸的數據由整個數據塊變為模式加殘差值,預測編碼改變了塊的數值概率分布,殘差值集中在零值附近呈現高概率值分布,這種數據分布便于通過后續熵編碼提高壓縮效率。在解碼時,通過殘差塊與預測模式即可恢復原始數據,傳輸殘差塊和預測模式使最終殘差值的數據分布更加集中,也更適用于變長編碼的原理,能有效提高壓縮率。

圖10 預測輸出
自適應全變差算法是一種改進全變差正則化算法。正則化算法是用適定的解去逼近不適定的解,用一組與原不適定問題相“鄰近”的適定問題的解去逼近原問題的解。針對天氣雷達回波超分辨率重建,STV 是一種基于時間和空間的正則化重建算法。該方法對重建回波在引入時間先驗信息的同時,添加了相鄰仰角的空間先驗信息,對重建高分辨率進行約束,然后利用梯度下降算法求解得到高分辨率回波?,F有超分辨率重建算法有多種,本文提出壓縮概念所需超分辨率重建要求不高,選擇STV 算法作為本文算法。STV 算法簡易且能有效進行超分辨率重建,使用的先驗條件相對較少,利用STV 算法可以得到有效的重建殘差,更適用于數據壓縮算法。
超分辨率算法會有失真效果,本文經過下采樣數據重建原始數據數據,過程中會產生失真誤差,通過與原始數據進行差分得到失真誤差,傳輸失真誤差,在恢復數據時,通過超分辨率重建算法與失真誤差結合,從而達到無損的效果。如圖11所示,將原始數據PPI 二倍下采樣之后,通過STV 超分辨率重建算法得到重建數據,與原始數據差分得到重建殘差數據。將下采樣數據經過預測編碼的預測殘差數據與重建殘差數據組合,得到新的組合數據,該組合數據結合預測殘差和重建殘差信息。由于相鄰的徑向數據相關性強,得到的數據殘差數據分布均在“0”附近區域,使熵編碼能夠更有效地進行數據壓縮。

圖11 超分辨率重建流程
在解碼端,先進行二倍下采樣可以得到預測殘差數據,利用預測殘差數據與預測模式可以得到完整的下采樣數據。再將下采樣數據輸入STV 重建算法,與所傳輸的重建殘差數據進行補償,便可完整重建PPI 數據。
熵編碼是指按信息熵原理進行的無損編碼方式,將數據輸入由新的編碼表示,來實現壓縮的效果。熵編碼是把一系列的數據信息轉換成另一種信息用于數據傳遞處理和數據保存處理的一種壓縮的碼流,輸入中的熵元素符號中可以同時包含可量化的變換系數、運動向量、預測和模型信息等。熵編碼可以有效去除數據元素符號之間的冗余,是保證數據編碼壓縮效率的有效工具。常用的熵編碼有游程編碼、哈夫曼編碼、LZW 編碼以及CAVLC 編碼等。
根據天氣雷達數據預測編碼后所得到的數據分布,殘差數據可以通過CAVLC 進行熵編碼。CAVLC 可自動按照編碼對象的元素情況,不斷地變化在編碼過程中所用到的碼表,動態地選擇編碼的碼表,可實現隨意地改變系數加前綴名的長度,來獲得更大的壓縮率。
在江蘇興化CHARTOR-XPARD 雙偏振相控陣雷達2021年8月數據集中隨機選取30 組數據進行測試,原始數據與殘差數據的概率分布如圖12所示。本文算法能夠有效改變數據分布,經過預測和超分辨率重建之后,數據主要分布在“0”附近區域,能夠更有效地進行熵編碼,提高壓縮效率,從殘差回波圖可以看出預測效果明顯。

圖12 殘差數據與原始數據概率密度對比
為驗證預測算法的性能,使用江蘇興化CHARTOR-XPARD 雙偏振相控陣雷達2021年8月20日22:25 降雨過程的探測數據進行預測算法的性能驗證。圖13(a)、(b)顯示了反射率數據原始數據PPI 以及數值分布,對比圖13(c)、(d)經過預測以及超分辨率重建所得殘差數據分布,可以明顯看出,殘差的數值分布在“0”附近區域,更有利于進行熵編碼壓縮數據冗余。圖14(a)、(b)顯示了徑向速度V原始數據PPI以及數值分布,對比圖14(c)、(d)經過預測以及超分辨率重建所得殘差數據分布,可以明顯看出,殘差的數值分布在“0”附近區域,更有利于進行熵編碼壓縮數據冗余。由圖13、14、15 可以看出,對于不同參數,本文壓縮算法均能夠有效改變數據的數值分布,消除數據之間的空間冗余,從而提高壓縮效率。

圖13 反射率原始與殘差對比圖

圖14 徑向速度原始與殘差對比圖

圖15 ZDR原始與殘差對比圖
為驗證本文算法的對相控陣天氣雷達數據的壓縮性能,對比幾種通用算法Gzip、WinZip、Bzip2 以及用于天氣雷達的線性預測壓縮算法LP[15]。對江蘇興化CHARTOR-XPARD 雙偏振相控陣雷達隨機選取30 組PPI 數據進行壓縮。表2 表明,本文算法能有效提高相控陣天氣雷達數據壓縮率,相比于通用算法的壓縮性能提高16%~22%。根據天氣情況的不同,壓縮率隨著數據量的變化而變化,一般情況下,晴天壓縮率更高,大面積降雨壓縮率較低。

表2 CHARTOR-XPARD 數據不同算法壓縮率比較
相控陣天氣雷達性能較CINRAD 雷達有大幅度提升,雷達數據精度的提升導致數據量急劇增長,增強了雷達對各種極端氣候環境的跟蹤探測能力。由于雷達數據量過大而不太方便實時傳送數據和數據保存,影響了相控陣天氣雷達業務化。使用本文預測算法可快速高效地實現相控陣天氣的雷達數據壓縮,可減少雷達數據之間數據的相關冗余性,實現對相控陣天氣的雷達數據進行的無損壓縮,比一般的通用數據壓縮算法壓縮率有明顯提高,為相控陣天氣雷達實現業務化提供技術支持?,F有相控陣天氣雷達數據壓縮率仍有提升的空間,針對相控陣雷達數據特點進行量化的有損壓縮算法以及結合應用需求的有損壓縮算法,適應雷達數據熵編碼算法,將是值得關注的研究方向。