关键字 |
数据压缩,Rice算法,曲线拟合,Verilog。 |
介绍 |
无损数据压缩技术通过从应用程序源数据中去除冗余来保持源数据的准确性,这允许从压缩数据中重建精确的原始数据。在解压过程中,通过恢复删除的冗余[5],从压缩数据中重建原始源数据。重建的数据是原始源数据的精确副本。无损压缩用于以下情况:原始数据和解压缩数据必须相同,或者原始数据的偏差可能是有害的[7]。无损数据压缩已被建议用于许多空间科学探索任务的应用,要么增加科学回报,要么减少对机载内存、站接触时间和数据存档量的要求。雷竞技网页版 |
有损压缩通过识别和删除不必要的信息来减少比特。有损方法最常用于压缩声音、图像或视频。无损压缩方案是可逆的,因此可以重建原始数据,而有损方案接受一些数据损失,以实现更高的压缩[5]。 |
大米算法 |
Rice算法采用变长编码压缩方法[1]。变长编码是一种压缩方法,将较短的码字分配给预期出现频率较高的数据[6]。Rice算法的主要优点是能适应低熵源到高熵源。 |
图1显示了Rice算法的框图。 |
它主要由预处理程序和自适应熵编码器两部分组成。预处理器的功能是将数据样本解关联,然后将其映射为适合自适应熵编码器[1]的符号。 |
A.自适应熵编码器中的压缩选项 |
不同的压缩选项有[1],[2]: |
•基本序列编码 |
•拆分样本选项 |
•低熵选项 |
•没有压缩选项 |
选择为给定数据集提供最大压缩的选项。 |
B.预处理器 |
1)预测器:最简单的预测编码器之一是线性一阶单位延迟预测器,如图2所示。 |
在图2输出中,Δi将是输入数据符号与前面数据符号的差值,称为预测误差。δi被称为预测误差映射函数[1]。 |
2)映射器:根据预测valueA¯害怕一个一个½¯害怕一个½¯害怕害怕一个½¯½,预测误差映射器,它可以将每个预测误差值,Δ我,一个n位非负整数,δ,适合处理的熵编码器[6]。 |
表I说明了在将单位延迟预测器应用于值从0到255[1],[2]的8位数据样本后,预测误差映射器的操作。 |
预测误差映射函数: |
(1) |
(2) |
采用曲线拟合的改进rice算法 |
曲线拟合是最适合一组数据点的曲线或数学函数的过程。通过曲线拟合得到一个方程,它可以在曲线[3],[8]上任意位置找到点。它可能涉及插值,其中需要一个精确拟合数据的平滑函数。当拟合曲线在数据集范围之外使用时,称为外推。因此预测下一个数据值(¯害怕一个½¯害怕一个½¯害怕害怕一个½¯½)是可能的,这个方法[11]。对于一组输入,分配一个唯一的函数,该函数会针对不同的输入集[4]进行更新。 |
A.改进rice算法中的多项式曲线拟合 |
j阶多项式的一般形式为: |
(3) |
本文采用最小二乘曲线法,最终得到数据(y)与函数f(x)之间误差最小的曲线。 |
使用最小二乘方法的任何错误的一般表达式是: |
(4) |
将式(3)的形式代入一般最小二乘误差式(4) |
(5) |
其中n个数据点,i个当前数据点,j阶多项式。 |
最合适的曲线将在直线和数据点[10]之间给出最小的误差。因此,目标是最小化eq.(5),并找到相应的系数ak, a0的值。为了最小化eq.(5),取误差对每个系数a0, ak的导数,其中k= 1,2 ....J,将每个值都设为零。 |
(6) |
用矩阵形式表示方程如下 |
I =1..............n |
为了知道a0, ak的值,求解eq. (7) |
() |
可采用以下解决方法: |
(7) |
因此 |
(8) |
利用式(8)求出系数a0、ak的值,最后得到一个适合数据点的多项式方程[4]。然后将系数值量化,这些值然后在用于预测下一组值的函数中实现。量子化函数系数以及δ值和表示所使用的压缩选项的ID被传输到接收器[1]。结果,在接收端,数据可以重建而没有任何错误,这意味着这些结果在无损压缩。 |
B.改进rice算法的特例 |
在特殊情况下,采用改进的rice算法实现了一种获得更高压缩的方法。这种特殊情况适用于压缩的输入信号与曲线拟合得到的信号在初始阶段重叠时。现有的rice算法查找相应的delta (δ)值,并对所有δ值应用压缩选项。改进的rice算法排除初始δ=0值,然后应用压缩选项。举例说明了这种特殊情况。 |
图3为特殊情况下的输入信号 |
图4为对图3所示的输入信号使用rice算法得到的delta值 |
图5为改进rice算法中输入信号与曲线拟合得到的函数图 |
图6显示了实际delta值和特殊情况下得到的delta值。通过特殊情况得到的增量值比实际的增量值少 |
为了理解基于图5和图6所示曲线拟合的改进rice算法的使用,考虑上面的例子。如果δ值包含一个零块,后面跟着其他数字,也就是说,如果δ值为0,0,0,0,0,0,13,6,5,28,27,30,29,0,0,0 |
然后,采用改进的rice算法传输数据所需的比特数更少。这是因为初始的6个零没有用于进一步的处理(即压缩选项没有应用于这些初始零值)。因此,只需从δ =13到δ =0之间的δ值,就可以选择最佳压缩选项。因此传输的数据将由更少的比特组成。由于数据块中的样本数量是恒定的(在本例中,块中的样本数量是16),在接收端通过将未指定的位置填充为零来重建数据。 |
仿真结果与比较研究 |
图7显示了8个输入样本和曲线拟合函数的图形 |
图8显示了映射水稻算法获得的输出 |
图9为使用rice算法的输出波形,这是使用Verilog HDL在ModelSim中仿真得到的结果。C5和byte5表示使用第五次分割采样选项压缩的数据 |
图10为采用改进rice算法映射得到的值。通过曲线拟合得到函数值 |
图11显示的是经过压缩数据的改进rice算法输出波形,这是在ModelSim中使用Verilog HDL进行仿真得到的结果。 |
对于使用ModelSim的模拟,输入数据从文件读取到变量a。函数参数(f_mat)被计算并量化(f_mat_quantized)。每个点的函数(f)值使用这些量化值计算。进一步测定δ (Adelta)值。Adelta使用所有可能的压缩选项进行压缩,并选择位数最少的压缩数据进行传输。这里选择第二次分割样本选项(C2),因为与使用的其他选项相比,比特数(c2_bit)是最小的。C2中的压缩数据位转换为字节并存储在byte2中。 |
对于上面的例子,当使用rice算法时,压缩数据中的比特数为52(图9 c5_bit)。而使用改进的rice算法压缩数据的比特数为34(图:11 c2_bit)。因此,采用改进的rice算法后,压缩数据的比特数减少。 |
图12表示高度变化的输入和曲线拟合信号 |
图13为使用rice算法对图12中输入映射的delta值 |
图14为采用改进rice算法得到的图12中输入的映射增量值 |
上图中delta, error, theta等变量在Rice算法中是用数据值减去预测值,用eq.(1) &(2)求得的。这里即使有n个输入,也只有(n-1)个输出出现在输出端,因为有单元延迟预测器。 |
在曲线拟合的情况下,一个特定的函数被分配到数据集,用它可以预测下一个值,然后可以通过从数据值中减去预测值来计算误差值,使用eq.(2) &(3)获得delta和theta值。这里如果有n个输入,在输出也将有n个值 |
A.基于曲线拟合的rice算法与改进rice算法的比较 |
•在rice算法中,我们预测下一个数据将与当前数据相似。 |
而在基于曲线拟合的改进rice算法中,对给定的输入集建立一个函数,可以根据这个函数预测数据。这将导致更小的δ值。当这些δ值被用于压缩时,与现有的rice算法相比,最终压缩的数据包含更少的比特。因此,通过曲线拟合,传输的数据位大大减少。这导致了更高的压缩比 |
•在rice算法中,在向接收端发送数据压缩后,传输第一个输入数据的参考值、(n-1)个δ值以及所使用的压缩选项对应的ID。 |
而在改进的rice算法中,将函数系数、δ的n个值以及压缩选项对应的ID传输给接收机。 |
•改进的rice算法采用无损压缩。因此,在接收机上可以重建精确的信号,而没有任何损失。 |
•当修改算法的特殊情况下,可以实现更高的压缩。 |
结论 |
本文对基于曲线拟合的rice算法和改进的rice算法进行了比较。为了评价改进的rice算法的性能,给出了不同的真实世界信号并记录了相应的输出,然后将其与rice算法在相同输入集下的输出进行比较。在采用曲线拟合的改进rice算法中,根据输入数据集生成函数,并利用函数预测接下来的值。Rice算法仅用于冗余数据集。而在改进的rice算法中,实现了曲线拟合,可以用于任何以特定方式变化的实时信号。因此,该方法在数据变化较大的行业中得到了广泛的应用。过程控制工业。仿真结果表明,改进的rice算法在使用真实信号时,压缩效果更好。利用改进的rice算法和曲线拟合技术进行无损压缩,可以重建原始信号。 |
表格一览 |
|
表1 |
|
数字一览 |
|
|
|
|
|
图1 |
图2 |
图3 |
图4 |
图5 |
|
|
|
|
|
图6 |
图7 |
图8 |
图9 |
图10 |
|
|
|
|
图11 |
图12 |
图13 |
图14 |
|
参考文献 |
- 空间数据系统咨询委员会,绿皮书第2期,2006年12月
- CCSDS,蓝皮书第2期,2012年5月
- Medioni, Gerard和Yoshio Yasumoto。“角检测和曲线表示使用立方< i> B样条。”计算机视觉,图形学和图像处理39.3(1987): 267-278。
- 理查森,马克·H·和大卫·l·福门蒂。频率响应测量的全局曲线拟合使用有理分式多项式法。国际模态分析会议。1985.
- S. Khalid,数据压缩入门,第二版,圣马特奥,CA: Morgan Kaufmann, 2000。
- R. F. Rice和J. R. Plaunt,“用于航天器电视数据有效压缩的自适应变长编码”,IEEE Trans。Commun。Techno.Vol。COM-19,第一部分,第889-897页,1971年12月。
- t.a.韦尔奇,“高性能数据压缩技术”,IEEE Trans。第一版。第17卷,no。1984年6月,第8-19页。
- 索克斯,E.和丹尼尔。“用b样条进行多边形曲线的数据约简。”计算机辅助设计31.8(1999): 507-515。
- 梁,梅勒K,和杨宜宏。曲线拟合中的动态双条算法。模式识别23.1(1990): 69-79。
- 一田,Kozo,清野武和藤一吉本。分段三次多项式一遍法曲线拟合ACM事务数学软件(TOMS)3.2(1977): 164-174。
- 维克斯,托马斯J.,罗纳德E.瓦姆布尔斯,查尔斯K.曼。曲线拟合与线性:拉曼光谱中的数据处理。AppliedSpectroscopy55.4(2001): 389-393。
|