一种气象雷达数据混合压缩算法*
2017-03-31李重阳
陈 璐 马 可 李重阳
(1.西安航天天绘数据技术有限公司 西安 710100)(2.西安电子工程研究所 西安 710100)
一种气象雷达数据混合压缩算法*
陈 璐1马 可2李重阳2
(1.西安航天天绘数据技术有限公司 西安 710100)(2.西安电子工程研究所 西安 710100)
针对气象雷达数据压缩的问题,提出了一种气象雷达数据压缩混合算法。该算法由预压缩、有损压缩和无损压缩三个步骤组成。首先根据气象雷达数据说明不同用户对数据的需求;其次介绍预压缩算法,并按照不同用户的需求,提出可以采用无损压缩和有损压缩两种数据压缩算法对气象雷达数据进行压缩;最后给出混合压缩算法的流程图,并利用实测数据验证该混合压缩算法的有效性。
气象雷达; 数据压缩; 混合压缩算法
Class Number TN958
1 引言
气象雷达能够准确快速地观测气象的变化过程,对预测暴雨、冰雹等灾害天气起到重要作用[1~2]。为了更准确快速地预测气象灾害,往往需要多部气象雷达进行组网并共享数据[3~4]。而气象雷达的观测目标是面目标,与传统雷达相比,其生成的数据量较大,不利于数据的传输与共享。因此,在实际工作中需要先对气象雷达数据进行压缩,然后再进行数据传输与共享[5~6]。
目前,国内外进行的气象数据压缩多是基于特征图像的压缩[7],或是基于特征点的筛选[8],其着重于对图像或是特征数据的压缩。本文则着重于对气象原始数据进行压缩,亦可针对不同的用户需求,灵活地裁剪气象需求,以达到更高的压缩率。
本文在说明了气象雷达数据种类与特点后,介绍了一种气象雷达数据混合压缩算法,该算法由预压缩、有损压缩和无损压缩三部分组成。针对不同的用户需求,该算法可以灵活地将气象雷达数据进行压缩。
2 气象雷达数据种类与特点
以某型双偏振气象雷达[9~10]为例,一个典型的体扫观测模式(观测距离150km,库长100m,角度分辨率1°,数据种类9种,数据位宽8bit/16bit,层数24,扫描速度18°/s),如不采取压缩措施,8bit位宽的单次体扫就会生成约100M的数据,耗时约8min。若在汛期24小时开机观测,一天就会占用约18G硬盘空间。如希望在网上被10个用户同时浏览,则需要约20Mb/s的带宽才能满足要求。16bit位宽的数据硬盘和网络需求还要加倍。显然,这么大的硬盘占用这么高的带宽需求是不现实的。因此,选择一种好的气象雷达数据压缩算法,能够大大减少磁盘空间占用,同时网络的负载也会更小,提高用户体验满意度。
双偏振多普勒气象雷达生成的数据有以下九种:未进行地物对消的强度数据DBT,进行地物对消的强度数据DBZ,速度V,谱宽W,差分反射率ZDR,双极化比相差KDP,极化差分相位PHIDP,双极化相关系数RHOHV,粒子分类数据HCLASS。
不同用户对气象雷达数据需求不同:普通气象观测人员只关心DBZ;需要进行气象预测和其它特殊需求的人员关心DBZ、V、HCLASS;科研人员则对所有的九种数据都需要。因此,对于只需求部分数据的人员,在进行数据压缩时可以忽略部分数据信息,这样可以提高压缩效率,这种数据压缩算法称为有损压缩算法[11~12];而对于科研人员,则需要对气象雷达数据全部保留,这类数据压缩算法称为无损压缩算法[13~14]。
3 数据压缩算法
3.1 预压缩算法[15]
气象雷达在工作时,只要径向上的库没有数据,其数值即为0(如晴朗天气,强对流天气的某些方位、俯仰角度)。因此,一个气象径向数据往往存在着很多连续的0。如果能在径向数据生成或刚接收时就利用一种简单的算法,将这些连续的0压缩起来,无疑可以提高后续步骤的效率。这种算法称为预压缩算法。
预压缩算法基于16-bit数据段,并不包含数据包头部的压缩。基于效率的考虑,预压缩算法对单独一个或者两个0不进行压缩。应用了预压缩算法的数据段是从16-bit压缩码开始的。这个压缩码代表着忽略的0的个数或者紧跟的数据字节数。
预压缩算法原理简单,计算量极小,适用于8bit或16bit数据,即使在不采用任何后续压缩算法的情况下,其数据压缩率也十分可观,特别在数据有多个连续0的情况下(晴朗天气)尤其显著。更为重要的是,预压缩算法保留了数据的全部信息,属于无损压缩。因此,在数据生成时就应用此算法,可以提高传输效率,也减小了后续压缩算法的计算压力。
3.2 无损压缩算法
无损压缩算法重在保留数据全部信息的基础上压缩数据,最大限度地去除冗余信息是无损压缩追求的目标。有很多成熟的无损压缩算法:Huffman编码,属于统计式压缩法,主要根据源数据符号发生概率进行编码;算术编码,比Huffman更为复杂的熵编码方法,压缩率更高,但方法复杂,编码速度慢,适用于图片、文本数据的压缩;Lz系列算法,基于字典压缩的算法,衍生了lz77,lz78,lzs,lzw等算法,广泛应用于WinRar,WinZip软件中,适用于各种类型数据的压缩[16~18]。
对于HCLASS数据,其包含的数据为:非气象目标、雨、湿雪、雪、霰、冰雹。一个HCLASS数据占用8bit或16bit,但其值仅有6种。因此,利用一个字节代表2个HCLASS数据,如表1所示。
从表1中可以看出,可用一个字节的前四位表达一个HCLASS数据,后四位表达下一个HCLASS数据。这样对于8bit数据,处理后的数据大小为处理前的1/2;而16bit数据仅为处理前的1/4。
对于其它类型的数据,一种可以考虑的算法是将相邻的数据相减,保存其差值。因其差值较小,可以在此基础上应用其他压缩算法。但在强对流天气下,相邻的库之间也可能存在着较大差值,且正负值不确定。因此,针对除HCLASS外的数据专用无损压缩算法还在研究,目前直接使用成熟的商用压缩算法进行压缩。
3.3 有损压缩算法
在气象雷达实际应用中,面向的使用对象不同,所需的数据类型、大小也不同。例如,针对科研人员,需要传输所有数据;而对于气象观测人员,主要传输部分DBZ数据及HCLASS粒子识别数据;而对于防雹作业人员,依据其作业距离远近及观测设备的显示分辨率,传输部分DBZ数据及HCLASS粒子识别数据即可满足其使用要求。因此,从用户需求角度出发,很多原始数据是多余的,可以适当裁剪,这种数据压缩方法称作有损压缩算法。而数据裁剪主要分为三个部分:类型裁剪、长度裁剪和精度裁剪。
数据类型裁剪先判断用户属于何种类型,针对不同类型的用户发送其相应需求的数据。例如,科研人员需要全部数据;而气象观测人员则主要关注DBZ,V及HCLASS数据;而防雹人员只关心DBZ及HCLASS数据。
数据长度裁剪,以上文中提到的某型双偏振多普勒气象雷达为例,该雷达一个径向的数据可包含150km的数据信息,分别存储在近1500个库中。实际应用中,用户可能仅需要显示100km以内的天气状况,且用户提供给显示区域的大小也仅为600*600像素,不可能显示下1500个库。这种情况下就需要数据长度的裁剪。以体扫模式为例,简要的数据裁剪算法如下:
1) 根据用户显示距离裁剪
设用户显示的距离为L,库长为N,数据库数为BinData,则用户需要的库数
BinNum=Min(Floor(L/N),BinData)
Floor函数为向上取整函数,因为用户需要的库数是经计算得出的,L/N的值可能不是整数。Min函数选择Floor(L/N)与BinData里较小数值的数。
2) 根据用户显示分辨率裁剪
设用户提供的显示区域分辨率为y*y,那么一个径向库数据显示的像素数x=ceil(y/2)。若x>BinNum,说明显示像素数大于数据库数,将数据不裁剪全部发给用户,这种情况发生概率较小。若x 设i为第i个显示像素(1 通过显示距离和显示分辨率裁剪数据,能够在满足用户显示需求的基础上压缩数据。以本节初始的例子为例,可将一个径向的数据由1500个裁减至600个,压缩效果显著。 3) 根据数据精度裁剪 目前,某型双偏振气象雷达信号处理器可产生8bit或16bit两种大小的数据。数据类型与对应的取值范围如表2所示。 通过表2可以看出,虽然16bit数据表达范围更广、精度更高,但8bit数据对于非科研需求已经能够满足。将16bit数据先转换成8bit数据再进行储存,可以直接减少一半存储空间。因数据表达不是线性的,所以基本的转换思路是通过16bit数据计算出真实值,再反推出8bit数据值。 结合以上各种类型的气象雷达数据压缩算法,提出了一种气象雷达数据混合压缩算法,流程如图1所示。 1) 先将原始数据经过预压缩,压缩掉其中的连续的0。本操作可在数据刚接收时完成,以提高数据传输效率; 图1 数据混合压缩算法流程图 2) 依据用户需求,对数据进行有损压缩; 3) 对裁剪后的数据应用无损压缩算法,生成压缩后的数据。 以上文中的某双偏振多普勒气象雷达来测试本文提出的数据混合压缩算法。其中数据位数为16bit,用户为防冰雹作业人员,关心100km内的数据情况,显示分辨率为600*600,无损压缩算法基于Lzw算法。原始数据提供晴天及对流两种天气,其组合反射率图如图2所示。 (a)晴空数据 (b)对流数据图2 气象雷达组合反射率图 对于这两组数据应用数据混合压缩算法,结果如表3所示(数据1为晴空数据,数据2为对流天气数据)。定义压缩比为原始数据大小除以压缩后数据大小。 表3 数据混合压缩算法测试结果 本测试是在仅考虑数据状态下的测试结果,在实际使用中,需要对数据添加额外的封装信息及冗余信息,故实际结果略有不同。 本测试采用的压缩方法,在无损压缩阶段,采用了CRC循环冗余校验确保数据准确性;在有损压缩阶段,依据用户需求对数据进行裁剪,最大程度上保留了用户关心的信息,经过实际验证,其结果是可靠的。 从算法测试结果看,应用了本文提出的数据混合压缩算法的数据最高可以达到2911压缩比,即使在天气情况复杂,数据保存全面的情况下也能达到18的压缩比,极大地节约了硬盘空间及网络资源。 本文介绍了一种气象雷达数据混合压缩算法。该方法由不同算法组成,包含预压缩算法、有损压缩算法及无损压缩算法。每一种算法又包含了不同步骤,本文依次对其进行了分析。最后,以某型双偏振多普勒气象雷达典型体扫模式生成数据为例,说明了该数据混合压缩算法满足应用要求,符合预期。这种数据混合压缩算法已应用于某型双偏振多普勒气象雷达数据存储及传输中,极大地减少了硬盘及网络资源占用。 [1] 胡继荣.气象雷达数据的传输方式和算法的基本研究[J].电子设计工程,2016,24(4):125-127. HU Jirong. Researches on efficient radar data transmission for weather service networks[J]. Electronic Design Engineering,2016,24(4):125-127. [2] 陈威,李凤昌,章建军,等.基于小波零树的雷达回波数据的压缩[J].计算机工程与应用,2004,40(6):217-219. CHEN Wei, LI Fengchang, ZHANG Jianjun, et al. Data Compression of Radar Signal Based on Wavelet Zero-tree[J]. Computer Engineering and Applications,2004,40(6):217-219. [3] 艾未华,黄云仙,白雪,等.嵌入式零树编码在天气雷达回波数据压缩中的应用[J].计算机应用与软件,2004,21(11):56-57,101. AI Weihua, HUANG Yunxian, BAI Xue, et al. Weather Radar Data Compression Based on Zerotree Wavelet Algorithm[J]. Computer Applications and Software,2004,21(11):56-57,101. [4] 马宁,朱福萌,尹志军,等.改进游程编码在天气雷达数据压缩中的应用[J].解放军理工大学学报(自然科学版),2004,5(6):88-90. MA Ning, ZHU Fuyin, YIN Zhijun, et al. Advanced RLE Coding for Weather Radar Data Compression[J]. Journal of PLA University of Science and Technology(Natural Science Edition),2004,5(6):88-90. [5] 叶红,安东升.基于小波变化的卫星云图压缩方法[J].计算机工程与科学,2004,26(10):60-62. YE Hong, AN Dongsheng. Satellite Cloud Imagery Compression Based on Wavelet Transform[J]. Computer Engineering and Science,2004,26(10):60-62. [6] 程敏,翁宁泉,刘庆,等.基于时间序列分段的气象数据压缩算法[J].计算机系统应用,2014,23(8):125-129. CHENG Min, WENG Ningquan, LIU Qing, et al. Meteorological Data Compression Algorithm Based on Time-Series Segmentation[J]. Computer Systems & Applications,2014,23(8):125-129. [7] 曾玲,饶志宏.几种数据压缩算法的比较[J].通信技术,2002(9):12-15. ZENG Ling, RAO Zhihong. Comparision of Several Kinds of Algorithms for Data Compression[J]. Communications Technology,2002(9):12-15. [8] 张昊琳,叶飞跃,任恩茂,等.矢量图压缩的关键点保持算法研究[J].计算机工程与应用,2015(11):238-241,265. ZHANG Haolin, YE Feiyue, REN Enmao, et al. Research of keeping key point algorithm in vector compression[J]. Computer Engineering and Applications,2015(11):238-241,265. [9] 刘应军,顾松山,周雨华,等.新一代天气雷达体扫模式的比较分析[J].气象,2006,32(1):44-50. LIU Yingjun, GU Songshan, ZHOU Yuhua, et al. Comparison of CINRAD/SA Volume Coverage Patterns on Algorithms Output[J]. Meteorological Monthly,2006,32(1):44-50. [10] 李重阳,苏小敏,吴凡.气象雷达数据压缩方法分析[J].信息与电脑,2015(16):87-88. LI Chongyang, SU Xiaomin, WU Fan. Analysis of weather radar data compression method[J]. China Computer & Communication,2015(16):87-88. [11] 易洛锋.新一代气象雷达数据分析及存储系统的设计及实现[D].成都:电子科技大学,2013:10-35. YI Luofeng. Design and Implementation of a New Generation Weather Radar Data Analysis and Storage System[D]. Chengdu: University of Electronic Science and Technology of China,2013:10-35. [12] 李啸.多普勒气象雷达原始回波数据混合压缩算法研究[D].南京:南京邮电大学,2011:5-55. LI Xiao. Research on Doppler Weather Radar Raw Reflectivity Data Hybird Compression Algorithm[D]. Nanjing: Nanjing University of Posts and Telecommunications,2011:5-55. [13] 郑翠芳.几种常用无损数据压缩算法研究[J].计算机技术与发展,2011,21(9):73-76. ZHENG Cuifang. Research of Several Common Lossless Data Compression Algorithms[J]. Computer Technology and Development,2011,21(9):73-76. [14] 许海英.气象雷达原始回波数据无损压缩算法研究[D].成都:电子科技大学,2007:22-45. XU Haiying. Research on lossless compression algorithm for radar raw data[D]. Chengdu: University of Electronic Science and Technology of China,2007:22-45. [15] 刘林.基于LZW优化算法的雷达数据压缩技术[J].舰船科学技术,2015,37(11):120-123. LIU Lin. Radar data optimization technique based on LZW compression algorithm[J]. Ship Science and Technology,2015,37(11):120-123. [16] 黄云仙,马烁,艾未华,等.一种新的多普勒天气雷达回波数据无损压缩[J].解放军理工大学学报(自然科学版),2012,13(2):232-236. HUANG Yunxian, MA Shuo, AI Weihua, et al. Novel lossless compression of Doppler weather radar data[J]. Journal of PLA University of Science and Technology(Natural Science Edition),2012,13(2):232-236. [17] 常传文,茅文深.雷达数据无损压缩研究[J].舰船电子工程,2008,28(4):103-105. CHANG Chuanwen, MAO Wenshen. Research on Radar Data Lossless Compression[J]. Ship Electronic Engineering,2008,28(4):103-105. [18] 王志刚,常传文,茅文深,等.LZW算法优化及在雷达数据压缩中的应用[J].计算机与数字工程,2009,37(1):32-34,164. WANG Zhigang, CHANG Chuanwen, MAO Wenshen. LZW Algorithm Optimizing and the Application in Radar Data Compression[J]. Computer and Digtal Engineering,2009,37(1):32-34,164. A New Hybrid Data Compression Algorithm for Weather Radar CHEN Lu1MA Ke2LI Chongyang2 (1. Xi’an Aerospace Remote Sensing Data Technology Co., Ltd, Xi’an 710100) (2. Xi’an Electronic Engineering Research Institute, Xi’an 710100) In order to solve the problem of data compression of meteorological radar, a hybrid algorithm of radar data compression is proposed. The algorithm consists of three steps including pre-compression, lossy compression and lossless compression. Firstly, the paper introduced the weather radar data illustrate the different needs of users for data; Secondly, according to the practical requirements of the diverse users, it proposed the adoption of lossless compression and lossy compression algorithm for the data; Finally, the flow chart of hybrid compression algorithm was presented and verified based on the actual data. weather radar, data compression, hybrid compression algorithm 2016年9月13日, 2016年10月20日 中国气象局开放基金资助项目;预研基金资助项目(编号:40405080401)资助。 陈璐,女,硕士,工程师,研究方向:图像处理技术。马可,男,硕士,工程师,研究方向:雷达总体技术。李重阳,男,硕士,工程师,研究方向:气象雷达技术。 TN958 10.3969/j.issn.1672-9722.2017.03.0084 数据混合压缩算法
5 实测结果
6 结语