基于星载SAR 的原始数据压缩算法

2013-06-10 03:25雍延梅郑陶冶
中国电子科学研究院学报 2013年1期
关键词:比特率压缩算法码字

雍延梅,郑陶冶

(中国电子科技集团公司第38 研究所,合肥 230088)

0 引 言

由于合成孔径雷达(SAR)具有全天时、全天候的工作能力,使它成为一种在星载和机载遥感应用中非常有效的科学设备,越来越得到世界各国的重视。随着SAR 技术向多波段、多极化、高分辨方向发展,从而使星载SAR 的原始数据量变得越来越大。由于受到星上设备的数据处理能力和下行链路带宽的制约,卫星的数据传输和存储系统的能力是有限的。虽然采取降低雷达PRF、降低系统带宽、减少A/D 变换器的位数等方法可以降低数据率,但都会使系统性能恶化以至不能满足实际应用的需要。因此必须采取一种能提供较高压缩比和较低编码/解码误差的高效SAR 原始数据压缩算法,对SAR的原始数据进行有效的压缩处理。

对BAQ、VQ 和TCVQ 三种算法加以研究,给出了BAQ、VQ 和TCVQ 算法的概述及相应的仿真结果,最后对以上算法的综合性能做一个总结。

1 算法概述

在合成孔径雷达中,雷达接收信号的幅度满足瑞利分布,相位是0 ~2π 弧度之间的均匀分布。当回波信号经下变频电路和正交解调电路解调变为相互正交的I 和Q 两路基带信号时,两路信号为相互独立的,并在距离向和方位向具有缓变方差特性的零均值高斯分布信号。考虑到在方位向或距离向的一小段时间间隔内,信号的动态范围远小于整个回波数据集的动态范围,所以可以把具有缓慢时变方差特性的整个回波数据集沿方位和距离向分成若干个小块,从而每一小块数据可以认为是具有稳态特性的零均值高斯分布,并且其分布可由标准差唯一确定。块大小的选择应遵循以下原则:块必须足够小以保证每一小块中SAR 数据的恒定,同时块又必须足够大以保证能有效估计出每一块的σ。以上对SAR 原始数据的分块处理构成了SAR 原始数据压缩的基础。

数据压缩算法中最早得到实际应用的为分块自适应量化(BAQ)算法[1],其具有计算简单、实施方便的特点。该算法已成功地应用于Magellan 任务和SIR-C 任务,分别实现了8 位到2 位和8 位到4 位的数据压缩。为了进一步提高数据的压缩比和压缩质量,不断有更多的算法被提出,如基于时域的矢量量化(VQ)、栅格编码矢量量化(TCVQ)、Universal TCQ(UTCQ)[2]、变比特率矢量量化(VarVQ),以及基于变换域的FFT-BAQ、DCT-BAQ、WHT-BAQ[3]等,每种方法都有其优点和特定的应用场合。当然,压缩性能的提高是以计算量的增大为代价的。一般来说,基于变换域的算法可以取得更高的压缩质量,但同时要进行大尺寸块的变换操作,从而导致计算量的急剧增大,难以用硬件实时实现。考虑到数据传输的下行信道存在信道噪声,变长码相比于定长码会引起更多的信道失真,因此在实际应用时,定长码具有较强的鲁棒性,相对于信道噪声不敏感。

1.1 BAQ(block adaptive quantization)分块自适应量化

BAQ 算法采用一个自适应量化器,根据估计出的每一个小块输入数据的标准差来控制最优量化器以实现对输入信号的有效压缩,如图1 所示。雷达接收的I和Q 通道模拟信号先经过A/D 变换器转化为每样本n位(一般为8 位)的数字信号,然后通过块自适应量化器把每样本n 位的信号编码处理为每样本m 位的信号,从而实现原始数据压缩,再把经BAQ 压缩过的数据进行打包处理,然后下传到地面或在星上记录下来。在地面可根据每一块数据对应的σ,进行数据解码操作以恢复雷达原始数据。一般地,块的大小取为32×32 或64×64(方位×距离)。BAQ 编码原理图,如图1 所示。

图1 BAQ 编码原理图

1.2 VQ (Vector Quantization)矢量量化

矢量量化(VQ)[4]是标量量化的自然推广,具有比标量量化优越得多的性能,在图像压缩中得到广泛的重视和应用。

维数为k,尺寸为N 的矢量量化器定义为从k维欧几里德空间Rk到一包括N 个输出点的有限集合C 的映射,即Q:Rk→C,其中C = {y0,y1,…,yN-1},yi∈Rk,i∈Γ ={0,1,…,N -1}。集合C 称为码书,其尺寸(大小)为N。码书的N 个元素称为码字,它们均为Rk中的矢量。

输入矢量空间Rk通过尺寸为N 的量化器Q后,被分割为N 个互不重叠的区域或胞腔,这个过程称为输入矢量空间的划分。对i∈Γ,胞腔Ri定义为

根据胞腔的定义,有

显然标量量化就是矢量量化中矢量维数为1 的退化形式。VQ 的编码原理图,如图2 所示。

图2 VQ 编码原理图

1.3 TCVQ(Trellis-Coded Vector Quantization)栅格编码矢量量化

栅格编码矢量量化利用卷积编码使量化矢量之间具有相关性,并利用信号空间扩展来增大量化信号间的欧氏距离,从而达到提高量化增益的目的。在同样的编码率下,栅格编码矢量量化可以取得更优于矢量量化的压缩性能[6~8]。

设矢量维数为k,编码率为R,则对每一个矢量,需要的编码比特位数为kR。不同于矢量量化方法采用大小为2kR的码本,然后用长度为kR 的码字索引代表该矢量,栅格编码矢量量化方法生成大小为2kR+1的码本,并将其划分为四个子集,设为D0,D1,D2,D3,其大小均为2kR-1。然后,对每一个矢量,搜寻每个子集中与之欧式距离最小的码字,得到相应的码字索引,用R -1 位来表示,剩下的1 位用于选择子集号。为了得到子集号,采用(2,1,3)卷积码,其状态图如图3 所示[9]。

图3 (2,1,3)卷积码状态图

定义失真度为所选择码字与输入矢量的欧式距离,设输入矢量序列长度为l,目的就是要找到一条最佳路径,使得整条路径的总失真度最小。如果每个节点均有2m条路径进入和离去(其中m 为大于等于1 的整数),则共有2ml条路经可供选择。编码采用维特比算法,搜寻最小失真路径,从而得到编码序列。解码采用相同形式的状态图,由编码序列卷积输出得到子集号,结合子集中的码字索引,查表得到解码矢量。TCVQ 的原理图,如图4 所示。

图4 TCVQ 框图

2 仿真结果

2.1 信噪比对比

对一幅大小为1024×1024 的SAR 原始信号进行压缩所得到的结果,见表1。原始信号每个采样点采样位数为8 位,编码率为编码后每个采样点的平均比特数,数据块分块大小为32×32。从中可以看出,在相同的编码率之下,VQ 的压缩效果明显优于BAQ,而TCVQ的性能优于VQ。表中为对应不同的压缩算法和编码率时的解压缩信号的信噪比。因BAQ 算法的特点,只能做整数级的编码,编码率为1 bit 时,因只有0、1 两个数值,不能保持SAR 数据的信息,这里不予考虑。

表1 不同压缩算法性能对比

2.2 计算量对比

压缩性能的提高是以计算量的增大为代价的。如果将矢量的维数控制在6 以内,矢量编码时码字的搜索可以通过查表来完成。TCVQ 相比于VQ,需要做维特比搜索操作,计算量有比较大的增加。设分块大小为N ×N,数据压缩比为4(8 位的采样数据压缩为2 位),以上算法所需计算量,见表2,VQ与TCVQ 的码字搜索可采用查表的方法来完成。

表2 不同算法所需计算量

由表2 可见,VQ 的计算量与BAQ 的计算量大体相当,TCVQ 计算量有比较大的增加。

在对硬件的需求方面,VQ 和TCVQ 因为要保存码书,因此需要额外的ROM 存储单元,其大小取决于码书的大小。以实现8 位压缩到2 位的VQ 编码为例,首先进行一个8 位压缩到4 位的BAQ 编码,输入矢量维数为4,则码书大小为216,所需要的ROM 存储单元为64 K,对系统来说,这并不是多大的负担。TCVQ 编码因为要保留4 个码书,每个码书的大小为相同编码率的VQ 编码的一半,所以总的ROM 存储单元需求是VQ 编码的两倍。

2.3 信道误比特率对解压缩信号信噪比的影响

BAQ 编码以首位表示符号位,即为折叠二进制码(FBC),对应于自然二进制码,当信道传输中有误码时,折叠码由此而产生的失真误差功率较小。

VQ 编码输出的是输入矢量对应的码字索引号,如果信道有噪声,则索引i 经过信道传输后可能会变成j,从而在解压缩时会引起额外的失真。为了减小这种失真,可对码字索引重新分配,使得由信道所造成的失真最小。

TCVQ 编码输出的是输入矢量对应的序列号和码字索引。对于码字索引,同样可以采取适当的码字索引分配算法以减小信道所造成的失真;对于因路径序列错误而引起的子集选择错误所引起的失真,选择适当的栅格形式以使卷积输出的错误限制在有限长度,同时结合码字索引分配算法,在减小因码字索引错误而造成的失真的同时,使得不同的子集中相同的码字索引所对应的码字之间的欧式距离最小,从而在因路径序列错误而导致子集选择错误时所引起的失真尽可能减小。

以上压缩算法在不同的信道误比特率时相应的解压缩信号信噪比,如图5 所示。其中VQ 编码和TCVQ 编码已经过码字索引优化。从中可以看出,当信道误比特率小于0.001 时,信道误比特率对解压缩信号信噪比的影响很小,同时相对于BAQ 编码,TCVQ 编码和VQ 编码对信道误比特率较为敏感。

图5 解压缩信号信噪比

2.4 实测数据压缩成像效果

未压缩的原始数据和经BAQ、VQ 和TCVQ 三种压缩算法压缩后的数据的成像结果,如图6 所示。原始数据每个采样点采样位数为8 位,压缩后每个采样点的比特数为2 位,数据块分块大小为32×32。

图6 同一压缩比下不同压缩算法所得数据成像结果

3 结 语

总体来说,相同的编码率之下,VQ 的压缩效果明显优于BAQ,而TCVQ 的性能优于VQ。针对VQ算法的编码特点,采取适当的码字索引分配算法以减小信道所造成的失真;对于TCVQ 算法,选择适当的网格形式以使卷积输出的错误限制在有限长度。如果通过近似查表完成矢量量化的编码,考虑到DSP 浮点乘法的实现代价与加法相当,则VQ 的计算量只是BAQ 的有限倍,算法成熟度高,其硬件实现的成本也是可以承受的,能够应用于星载SAR 原始数据压缩;随着VLSI 的飞速发展及算法成熟度的不断提高,在硬件允许的情况下,可以应用TCVQ 完成星载SAR 原始数据的压缩以取得更优的性能。

[1]KWOK R W T K.Johnson.Block Adaptive Quantization of Magellan SAR Data[J]. IEEE Transaction on Geoscience and Remote Sensing,1989,27(2):375-383.

[2]JAMES W O,MICHAEL W M,BOBBY R H,et al.Compression of Synthetic Aperture Radar Video Phase History Data Using Trellis-Coded Quantization Techniques[J].IEEE Transaction on Geoscience and Remote Sensing,1999,37(2):1080-1085.

[3]URSULA BENZ,KLAUS STRODL,ALBERTO MOREIRA.A Comparision of Several Algorithms for SAR Raw Data Compression[J].IEEE Transaction on Geoscience and Remote Sensing,1995,33(5):1266-1276.

[4]孙圣和,陆哲明. 矢量量化及其应用[M]. 北京:科学出版社,2002.

[5]LINDE Y,BUZO A,GRAY R M.An Algorithm for Vector Quantization[J]. IEEE Transaction on Communication,1980,28(1):84-95.

[6]KASNER J H,MARCELLING M W,HUNT B R.Universal Trellis Coded Quantization[J]. IEEE Transaction on Image Processing,1999,8(12):1677-1687.

[7] FISCHER T R,MICHAEL W M,WANG MIN. Trellis-Coded Vector Quantization[J]. IEEE Transaction on Information Theory,1991,37(6):1551-1566.

[8]HONG SHEN WANG,NADER MOAYERI.Trellis Coded Vector Quantization[J]. IEEE Transaction on Communication,1992,40(8):1273-1276.

[9]曹志刚,钱亚生. 现代通信原理[M]. 北京:清华大学出版社,1992:130-131.

猜你喜欢
比特率压缩算法码字
一个大范围混沌系统及其在DCSK 中的应用
基于参数识别的轨道电路监测数据压缩算法研究
放 下
数据链系统中软扩频码的优选及应用
放下
基于多个网络接口的DASH系统设计与实现
一种基于嵌入式实时操作系统Vxworks下的数据压缩技术
基于HBASE的大数据压缩算法的研究
基于能量分配提高纠错码误比特率性能的研究
长为{4,5,6}的完备删位纠错码的存在性*