MQ算术编码原理及实现

MQ算术编码器原理及实现

郭晴

北京邮电大学信息与通信工程学院,北京(100876)

E-mail:

摘 要:JPEG2000标准中, MQ算术编码是熵编码的主要部分。MQ算术编码器是一种基于上下文的自适应二进制算术编码器。它基于上下文以利于解除信源相关性,利用条件交换和概率估计状态机中的贝叶斯学习过程实现符号概率模型自适应过程,采用位填充技术解决编码中的进位问题,是一种高效率物理可实现的压缩编码算法。本文从算术编码的基本原理入手,详细分析JPEG2000标准提供的MQ编码器编码原理,以及编码流程。利用C语言编程实现JPEG2000标准要求的MQ算术编码器,并分析MQ算术编码器中上下文引入对压缩效率的影响。

关键词:JPEG2000 ;算术编码;MQ算数编码器

中图分类号:TN911.21

1. 引言

随着多媒体技术的不断运用发展,图像压缩要求更高的性能和新的特征。为了满足静止图像在特殊领域编码的需求,JPEG2000作为一个新的标准处于不断的发展中,这种新的标准更加注重图像的可伸缩表述[1]。

算术编码是一种变长信源编码技术,其卓越性能使其在多媒体领域得到了越来越广泛的应用 [2]。JPEG2000标准中,提高图像压缩性能的关键技术之一就是MQ算术编码。MQ算术编码器是一种基于上下文的自适应二进制算术编码器,它继承了IBM的ABIC(自适应双层图像压缩)中Q编码器无乘法的近似和位缓存的策略,增加了条件交换和概率估计状态机中的贝叶斯学习过程,是一种高效率物理可实现的压缩编码算法,非常具有研究价值。

2. 算术编码

2.1编码原理简述

算术编码是一种非分组码。编码时信源符号序列连续的进入编码器,通过编码器的运算得到连续的输出。通常算术编码是讲一条信源符号序列映射成一条码序列,这样的码序列有时也称为码字。算术编码的实质就是,将一条信源信息序列映射到[0,1)区间中的一个子区间,这种映射是一种一一对应关系,以保证唯一译码,然后取这个子区间内的一点所代表的数值作为码字。只要码长合适,就可以保证唯一可译。而当信源序列长度足够大时,每信源符号的平均码长接近信源的熵[2]。

虽然其编码效率很高,但仍然存在缺陷。首先,其运算需要精确的实数加法和乘法,这些运算在有限精度的计算机上实现是非常困难的。正是这个原因使得算术编码从提出到实际应用相差了近二十年之久。直到Rissanen和Pasco分别提出了一个先进后出算法和一个先进先出算法,并由此证明了算术编码可以用有限精度处理技术逼近。Rubin吸收了两个算法的精华,利用有限精度寄存器,讨论了一般算术编码的实现方法。在此基础上,Witten,Neal和Cleary做了进一步地精细化,并给出了一个完整的C语言程序。

算术编码的另一缺陷是编码速度太低,这是因为编码迭代过程中含有整数乘除运算,这些运算对于软件执行和硬件设计是十分不利的。

为此Langdon和Rissanen提出了一个用移位和加法实现二进制算术编码的方法,并成功地应用于黑白二值图象的压缩编码。二进制算术编码是一种步进式编码译码过程。它不需

要等到待编序列完全输入编码器,就可以在序列输入的同时输出编码码字。它同时也解决了算术编码的精度问题。

2.2二进制算术编码

如前所述,二进制算术编码是一种增长型编码译码过程,序列进入编码器的同时可以得到编码输出,而不需要等到所有序列完全进入编码器。

以消息“cacbad”为例说明编码过程。开始时,整个区间是一个半开半闭区间R0=[0,1),由各个符号概率仍然分解为四个部分:[0.5, 0.62),(0.62, 0.70),[0.70, 0.86),[0.86, 0.9)以代表a,b,c,d区间。计数器Count初始设为0。

第一个符号为c,所属区间R1=[0.5,0.9)完全属于[0.5,1),为情况2因此编码输出1bit:1。同时根据情况2改变区间大小为R2=[0.0,0.8)。由于Count=0,因此不用输出任何码字。

第二个符号为a,区间调整为R3=[0.0, 0.24)。由于整个区间属于前半部分,为情况1,因此输出1bit:0,同时区间调整为R4[0.0,0.48)。仍然属于前半部分。继续输出0,调整区间到R5=[0.0,0.96)。

第三个符号为c,区间调整至R6=[0.48,0.864)。不需要输出任何码字也不需要调整区间。 第四个符号是b。区间调整至R7=[0.5952,0.672),属于情况2,输出1,调整区间R8=

[0.1904,0.344)。情况1,输出0,调整区间为R9=[0.3808,0.688)。

此时区间属于情况3,因此我们对计数器加1:Count=1,同时调整区间为R10=[0.2616,0.876)。

第五个符号是a,区间调整为R11=[0.2616,0.44592),情况1,输出0,同时调整区间R12=[0.5232,0.89184)。此时计数器大于0,因此输出计数器值1bit:1。新的区间为情况1,因此输出1,调整至R13=[0.0464,0.78368)。

最后一个符号是d,区间调整至R14=[0.709952,0.78368)。情况2,输出1,调整为R15=[0.419904,0.56736)。此时我们结束编码,可以用此区间内任意值作为码字输出。不妨取0.5,则二进制表示为0.1000000b,可以添加任意多个0以满足位数要求。

因此作为唯一可译编码,编码过程中输出的码字与最后区间内任一数值结合,串起来即实际16bit编码:1001 0011 1100 0000。可以看到,前9bit为增长编码过程输出,最后7bit为从区间中选择与前9bit共同组成16bit编码。

详细编码过程如图1:

图1 “cacbad”二进制算术编码过程图

3. MQ算术编码器原理

3.1 MQ编码器结构

JPEG2000标准中的MQ编码器结构如图2所示,编码器输入由待编码位D和上下文矢量CX构成,他们是由EBCOT (嵌入式位平面失真率可优化编码)成对产生的。CX是位平面编码中根据邻域相关性归纳而来的概率统计模型,共有l9种。即对于不同的CX,符号概率不相同。

图2 MQ编码器结构图

3.2递归区间划分以及编码近似

递归概率区间分割的ELIAS编码是二进制算术编码的基础[3]。算术编码器首先按符号概率将符号分为大概率符号MPS和小概率符号LPS。区间划分时,LPS区间在MPS区间之前。如图2:

图3 MQ编码器编码区间示意图

当对MPS进行编码时,LPS子区间间隔就被加到编码串上。因而对每一位进行编码时,必须预先知道LPS子间隔的大小和MPS的代表符号。编码过程就是对输入的每一位进行判定,不断地改变编码串C的值,使它指向当前间隔底端。编码过程用二进制分数加法代替整数码字的串加,概率越大的二进制位可以用分数位进行编码,从而减少编码的位数,达到压缩的效果。

假设A为当前问隔,而Qe为LPS的估计概率。那么对间隔进行准确的划分,必须满足以下式子:

MPS子区间间隔=A-(Qe*A) (1)

LPS子区间间隔=Qe*A (2)

为了避免硬件较难实现的乘法运算,在JPEG2000中用下面式子代替来避免乘法运算:

MPS子区间间隔=A-(Qe*A) (3)

LPS子区间间隔=Qe*A (4)

编码时对运算进行简化,直接用小概率符号概率Qe代替LPS区间长度Qe*A,以消除乘法运算。当对MPS进行编码时,编码串的值加上Qe,而间隔减少为A-Qe 。而当对LPS进行编码时,编码串C不变,间隔减小为Qe。然后根据需要对A和C进行归一化,使A落在0.75~1.5的区间内(原始全概率区间为[0,1.5),0.75为中点值)[4]。其相应的整形表示为保持A大于0x8000。若小于这个值,则通过重整化过程,对寄存器C和A进行左移位处理。

由于区间分割采用这样的近似,可能在某些时候使LPS的概率比MPS的大。如当A值为0.75,而Q为0.5时,MPS的概率就为A-Qe =0.25。为避免这种倒置现象,当LPS的间隔比MPS大时,就对它们进行互换。

3.3自适应模型

前文描述的算术编码过程,均建立在已知各个符号概率的基础上。只有已知各符号概率才能根据其划分概率区间。而实际中各符号概率必须通过概率统计模型得到。模型提供了被编码符号的概率,编码算法利用相应概率实现对符号编码。JPEG2000中的算术编码采用基于上下文矢量的自适应模型。

一方面,符号概率的确定是一个自适应过程。利用概率转移有限状态机根据输入消息符号,实时调整符号概率。另一方面,其状态转移是基于上下文的过程。编码器输入不仅有消息序列D,还包括上下文CX。对于同一消息D,其上下文CX不同,则对应的符号概率并不一定相同。必须读取CX当前状态的符号概率来确定消息的符号概率,同时决定是否要转移到下一状态。符号概率的状态转移表由标准提供,共47种状态。

3.4位填充技术

在二进制算术编码中,由于编码过程采用增长传输技术,必须保证当前编码字节有进位时,不影响到编码器已经输出的字节。MQ算术编码器采用了位填充(bit-stuffing)技术解决进位问题[5]。

位填充技术的原理是在编码出现进位,造成缓存中上一待输出字节溢出时,将进位标志作为当前字节编码的一部分,而不加在上一码字上。

这种情况只会在上一码字为0xff时出现。同时为了便于译码,当上一字节为0xfe,且当前字节出现进位,使得上一字节变为0xff时,当前字节进位标志0仍然作为编码输出。这样在译码时,凡碰到码字为0xff,则对下一码字第一比特均按进位标志处理即可。

4. MQ算术编码器实现以及结果分析

4.1编码器流程

图4 MQ编码器总流程图

总流程如上图4。首先对编码器进行初始化INTENC,然后读入上下文CX和待编字D开始编码ENCODE。直到编码结束时,通过FLUSH过程清空寄存器完成编码。

ENCODE流程如下图5,编码时判断D为0还是为1。为0则进行0编码CODE0,为1则进行1编码CODE1。

图5 ENCODE流程图

CODE0编码时,判断0是否为大概率符号。若是则进行大概率符号编码CODEMPS,否则进行小概率符号编码。CODE1编码类似。流程如图6、7。

图6 CODE0流程图

图7 CODE1流程图

4.2结果及分析

首先考察不引入上下文CX时的压缩性能。只要在上下文生成时仅生成一种上下文CX(0),则信源相当于未引入上下文的单符号独立随机信源。0符号概率为70%时的压缩率。引入上下文后压缩率接近68%,性能有所提高。

由于测试的信源未经过JPEG2000前处理步骤,因此这个压缩率仅能提供一定参考。

5. 结论

本文给出了MQ算术编码器原理以及实现流程,利用简单的模型初步探讨了上下文CX在编码中的作用。要进行更深入的研究,必须对JPEG2000编码的其他模块做进一步的研究分析,理解CX在JPEG2000中的产生机制,将前面的模块与算术编码器结合起来,分析它们的性能。

参考文献

[1]

[2]

[3]

[4] 王芳, 汪伟. JPEG2000图像压缩标准及其应用 [J].光盘技术.第一期.2006,1:57-59. 田宝玉. 工程信息论 [M].北京邮电大学出版社.2004:108-116. 李文彬, 朱红. JPEG2000算术编码的研究及其FPGA设计 [J].遥测遥控. 26卷.2005, 5:38~40. JIN LI. Image Compression: The Mathematics of JPEG 2000 [J].Modern Signal Processing. Volume 46,

2003:185-221

[5] Tinku, Acharya, Ping-Sing, Tsai. JPEG2000 Standard for Image Compression: Concepts [J], Algorithms and

VLSI Architectures. JOHN WILEY & SONS, INC.2004:30~195.

The principle and realization of MQ arithmetic coding

GuoQing

Beijing University of Posts and Telecommunications (100876)

Abstract

MQ arithmetic coding is the most important part of entropy coding. MQ arithmetic coding is a context-based adaptive binary arithmetic encoder. It is based on the context in order to improve the coding efficiency. This paper explains the arithmetic coding theory, then further elaborated binary arithmetic coding theory and practical application of how to achieve finite precision arithmetic coder. Keywords: JPEG2000 arithmetic coding MQ-coder

MQ算术编码器原理及实现

郭晴

北京邮电大学信息与通信工程学院,北京(100876)

E-mail:

摘 要:JPEG2000标准中, MQ算术编码是熵编码的主要部分。MQ算术编码器是一种基于上下文的自适应二进制算术编码器。它基于上下文以利于解除信源相关性,利用条件交换和概率估计状态机中的贝叶斯学习过程实现符号概率模型自适应过程,采用位填充技术解决编码中的进位问题,是一种高效率物理可实现的压缩编码算法。本文从算术编码的基本原理入手,详细分析JPEG2000标准提供的MQ编码器编码原理,以及编码流程。利用C语言编程实现JPEG2000标准要求的MQ算术编码器,并分析MQ算术编码器中上下文引入对压缩效率的影响。

关键词:JPEG2000 ;算术编码;MQ算数编码器

中图分类号:TN911.21

1. 引言

随着多媒体技术的不断运用发展,图像压缩要求更高的性能和新的特征。为了满足静止图像在特殊领域编码的需求,JPEG2000作为一个新的标准处于不断的发展中,这种新的标准更加注重图像的可伸缩表述[1]。

算术编码是一种变长信源编码技术,其卓越性能使其在多媒体领域得到了越来越广泛的应用 [2]。JPEG2000标准中,提高图像压缩性能的关键技术之一就是MQ算术编码。MQ算术编码器是一种基于上下文的自适应二进制算术编码器,它继承了IBM的ABIC(自适应双层图像压缩)中Q编码器无乘法的近似和位缓存的策略,增加了条件交换和概率估计状态机中的贝叶斯学习过程,是一种高效率物理可实现的压缩编码算法,非常具有研究价值。

2. 算术编码

2.1编码原理简述

算术编码是一种非分组码。编码时信源符号序列连续的进入编码器,通过编码器的运算得到连续的输出。通常算术编码是讲一条信源符号序列映射成一条码序列,这样的码序列有时也称为码字。算术编码的实质就是,将一条信源信息序列映射到[0,1)区间中的一个子区间,这种映射是一种一一对应关系,以保证唯一译码,然后取这个子区间内的一点所代表的数值作为码字。只要码长合适,就可以保证唯一可译。而当信源序列长度足够大时,每信源符号的平均码长接近信源的熵[2]。

虽然其编码效率很高,但仍然存在缺陷。首先,其运算需要精确的实数加法和乘法,这些运算在有限精度的计算机上实现是非常困难的。正是这个原因使得算术编码从提出到实际应用相差了近二十年之久。直到Rissanen和Pasco分别提出了一个先进后出算法和一个先进先出算法,并由此证明了算术编码可以用有限精度处理技术逼近。Rubin吸收了两个算法的精华,利用有限精度寄存器,讨论了一般算术编码的实现方法。在此基础上,Witten,Neal和Cleary做了进一步地精细化,并给出了一个完整的C语言程序。

算术编码的另一缺陷是编码速度太低,这是因为编码迭代过程中含有整数乘除运算,这些运算对于软件执行和硬件设计是十分不利的。

为此Langdon和Rissanen提出了一个用移位和加法实现二进制算术编码的方法,并成功地应用于黑白二值图象的压缩编码。二进制算术编码是一种步进式编码译码过程。它不需

要等到待编序列完全输入编码器,就可以在序列输入的同时输出编码码字。它同时也解决了算术编码的精度问题。

2.2二进制算术编码

如前所述,二进制算术编码是一种增长型编码译码过程,序列进入编码器的同时可以得到编码输出,而不需要等到所有序列完全进入编码器。

以消息“cacbad”为例说明编码过程。开始时,整个区间是一个半开半闭区间R0=[0,1),由各个符号概率仍然分解为四个部分:[0.5, 0.62),(0.62, 0.70),[0.70, 0.86),[0.86, 0.9)以代表a,b,c,d区间。计数器Count初始设为0。

第一个符号为c,所属区间R1=[0.5,0.9)完全属于[0.5,1),为情况2因此编码输出1bit:1。同时根据情况2改变区间大小为R2=[0.0,0.8)。由于Count=0,因此不用输出任何码字。

第二个符号为a,区间调整为R3=[0.0, 0.24)。由于整个区间属于前半部分,为情况1,因此输出1bit:0,同时区间调整为R4[0.0,0.48)。仍然属于前半部分。继续输出0,调整区间到R5=[0.0,0.96)。

第三个符号为c,区间调整至R6=[0.48,0.864)。不需要输出任何码字也不需要调整区间。 第四个符号是b。区间调整至R7=[0.5952,0.672),属于情况2,输出1,调整区间R8=

[0.1904,0.344)。情况1,输出0,调整区间为R9=[0.3808,0.688)。

此时区间属于情况3,因此我们对计数器加1:Count=1,同时调整区间为R10=[0.2616,0.876)。

第五个符号是a,区间调整为R11=[0.2616,0.44592),情况1,输出0,同时调整区间R12=[0.5232,0.89184)。此时计数器大于0,因此输出计数器值1bit:1。新的区间为情况1,因此输出1,调整至R13=[0.0464,0.78368)。

最后一个符号是d,区间调整至R14=[0.709952,0.78368)。情况2,输出1,调整为R15=[0.419904,0.56736)。此时我们结束编码,可以用此区间内任意值作为码字输出。不妨取0.5,则二进制表示为0.1000000b,可以添加任意多个0以满足位数要求。

因此作为唯一可译编码,编码过程中输出的码字与最后区间内任一数值结合,串起来即实际16bit编码:1001 0011 1100 0000。可以看到,前9bit为增长编码过程输出,最后7bit为从区间中选择与前9bit共同组成16bit编码。

详细编码过程如图1:

图1 “cacbad”二进制算术编码过程图

3. MQ算术编码器原理

3.1 MQ编码器结构

JPEG2000标准中的MQ编码器结构如图2所示,编码器输入由待编码位D和上下文矢量CX构成,他们是由EBCOT (嵌入式位平面失真率可优化编码)成对产生的。CX是位平面编码中根据邻域相关性归纳而来的概率统计模型,共有l9种。即对于不同的CX,符号概率不相同。

图2 MQ编码器结构图

3.2递归区间划分以及编码近似

递归概率区间分割的ELIAS编码是二进制算术编码的基础[3]。算术编码器首先按符号概率将符号分为大概率符号MPS和小概率符号LPS。区间划分时,LPS区间在MPS区间之前。如图2:

图3 MQ编码器编码区间示意图

当对MPS进行编码时,LPS子区间间隔就被加到编码串上。因而对每一位进行编码时,必须预先知道LPS子间隔的大小和MPS的代表符号。编码过程就是对输入的每一位进行判定,不断地改变编码串C的值,使它指向当前间隔底端。编码过程用二进制分数加法代替整数码字的串加,概率越大的二进制位可以用分数位进行编码,从而减少编码的位数,达到压缩的效果。

假设A为当前问隔,而Qe为LPS的估计概率。那么对间隔进行准确的划分,必须满足以下式子:

MPS子区间间隔=A-(Qe*A) (1)

LPS子区间间隔=Qe*A (2)

为了避免硬件较难实现的乘法运算,在JPEG2000中用下面式子代替来避免乘法运算:

MPS子区间间隔=A-(Qe*A) (3)

LPS子区间间隔=Qe*A (4)

编码时对运算进行简化,直接用小概率符号概率Qe代替LPS区间长度Qe*A,以消除乘法运算。当对MPS进行编码时,编码串的值加上Qe,而间隔减少为A-Qe 。而当对LPS进行编码时,编码串C不变,间隔减小为Qe。然后根据需要对A和C进行归一化,使A落在0.75~1.5的区间内(原始全概率区间为[0,1.5),0.75为中点值)[4]。其相应的整形表示为保持A大于0x8000。若小于这个值,则通过重整化过程,对寄存器C和A进行左移位处理。

由于区间分割采用这样的近似,可能在某些时候使LPS的概率比MPS的大。如当A值为0.75,而Q为0.5时,MPS的概率就为A-Qe =0.25。为避免这种倒置现象,当LPS的间隔比MPS大时,就对它们进行互换。

3.3自适应模型

前文描述的算术编码过程,均建立在已知各个符号概率的基础上。只有已知各符号概率才能根据其划分概率区间。而实际中各符号概率必须通过概率统计模型得到。模型提供了被编码符号的概率,编码算法利用相应概率实现对符号编码。JPEG2000中的算术编码采用基于上下文矢量的自适应模型。

一方面,符号概率的确定是一个自适应过程。利用概率转移有限状态机根据输入消息符号,实时调整符号概率。另一方面,其状态转移是基于上下文的过程。编码器输入不仅有消息序列D,还包括上下文CX。对于同一消息D,其上下文CX不同,则对应的符号概率并不一定相同。必须读取CX当前状态的符号概率来确定消息的符号概率,同时决定是否要转移到下一状态。符号概率的状态转移表由标准提供,共47种状态。

3.4位填充技术

在二进制算术编码中,由于编码过程采用增长传输技术,必须保证当前编码字节有进位时,不影响到编码器已经输出的字节。MQ算术编码器采用了位填充(bit-stuffing)技术解决进位问题[5]。

位填充技术的原理是在编码出现进位,造成缓存中上一待输出字节溢出时,将进位标志作为当前字节编码的一部分,而不加在上一码字上。

这种情况只会在上一码字为0xff时出现。同时为了便于译码,当上一字节为0xfe,且当前字节出现进位,使得上一字节变为0xff时,当前字节进位标志0仍然作为编码输出。这样在译码时,凡碰到码字为0xff,则对下一码字第一比特均按进位标志处理即可。

4. MQ算术编码器实现以及结果分析

4.1编码器流程

图4 MQ编码器总流程图

总流程如上图4。首先对编码器进行初始化INTENC,然后读入上下文CX和待编字D开始编码ENCODE。直到编码结束时,通过FLUSH过程清空寄存器完成编码。

ENCODE流程如下图5,编码时判断D为0还是为1。为0则进行0编码CODE0,为1则进行1编码CODE1。

图5 ENCODE流程图

CODE0编码时,判断0是否为大概率符号。若是则进行大概率符号编码CODEMPS,否则进行小概率符号编码。CODE1编码类似。流程如图6、7。

图6 CODE0流程图

图7 CODE1流程图

4.2结果及分析

首先考察不引入上下文CX时的压缩性能。只要在上下文生成时仅生成一种上下文CX(0),则信源相当于未引入上下文的单符号独立随机信源。0符号概率为70%时的压缩率。引入上下文后压缩率接近68%,性能有所提高。

由于测试的信源未经过JPEG2000前处理步骤,因此这个压缩率仅能提供一定参考。

5. 结论

本文给出了MQ算术编码器原理以及实现流程,利用简单的模型初步探讨了上下文CX在编码中的作用。要进行更深入的研究,必须对JPEG2000编码的其他模块做进一步的研究分析,理解CX在JPEG2000中的产生机制,将前面的模块与算术编码器结合起来,分析它们的性能。

参考文献

[1]

[2]

[3]

[4] 王芳, 汪伟. JPEG2000图像压缩标准及其应用 [J].光盘技术.第一期.2006,1:57-59. 田宝玉. 工程信息论 [M].北京邮电大学出版社.2004:108-116. 李文彬, 朱红. JPEG2000算术编码的研究及其FPGA设计 [J].遥测遥控. 26卷.2005, 5:38~40. JIN LI. Image Compression: The Mathematics of JPEG 2000 [J].Modern Signal Processing. Volume 46,

2003:185-221

[5] Tinku, Acharya, Ping-Sing, Tsai. JPEG2000 Standard for Image Compression: Concepts [J], Algorithms and

VLSI Architectures. JOHN WILEY & SONS, INC.2004:30~195.

The principle and realization of MQ arithmetic coding

GuoQing

Beijing University of Posts and Telecommunications (100876)

Abstract

MQ arithmetic coding is the most important part of entropy coding. MQ arithmetic coding is a context-based adaptive binary arithmetic encoder. It is based on the context in order to improve the coding efficiency. This paper explains the arithmetic coding theory, then further elaborated binary arithmetic coding theory and practical application of how to achieve finite precision arithmetic coder. Keywords: JPEG2000 arithmetic coding MQ-coder


相关内容

  • 信息论与编码_论文
  • 信息论与编码之数据压缩 摘要: 在计算机科学和信息论中,数据压缩或者源编码是按照特定的编码机制用比未经编码少的数据位元(或者其它信息相关的单位)表示信息的过程.例如,如果我们将"compression"编码为"comp"那么这篇文章可以用较少的数据位表示.一种 ...

  • 算术编码算法
  • 实验三 算术编码 一. 实验内容 编程实现算术编码算法 二.实验环境 1. 计算机 2. Windows 2000 或以上 3. VC++ 6.0 三.实验目的 1. 进一步熟悉算术编码算法: 2. 掌握C 语言编程(尤其是数值的进制转换,数值与字符串之间的转换等) 四.实验要求 1. 提前预习实验 ...

  • 香农编码c++
  • <科学研究方法>课程学术报告 数字图像信源压缩之香农编码实现(基于VS2013C++) 陆顺杰 三年级 电子信息工程 1142051154 摘要: 本文首先介绍了数字图像信源压缩的必要性,然后讨论了各种编码的特性,最后基于VS2013C++实现对N信源符号的香农编码. 引言: 在数字图像 ...

  • 冯·诺依曼机原理的教学研究与应用
  • 第27卷 第10期 计算机工程与设计 2006年5月 V01.27 NO.10 ComputerEngineeringandDesign May2006 冯.诺依曼机原理的教学研究与应用 刘乃文 (山东师范大学信息科学与工程学院,山东济南250014) 摘要:经过对冯・诺依曼原理的深入研究,设计了一 ...

  • 多媒体技术基础及应用课后答案(新)
  • 第一章 习题及解答 一.选择题 1. 下列选项不属于感觉媒体的是: D . A. 音乐 B. 香味 C. 鸟鸣 D. 乐谱 2. 下列选项属于表示媒体的是: D A. 照片 B.显示器 C.纸张 D.条形码 3. 下列选项属于显示媒体的是: B A.图片 B.扬声器 C.声音 D.语言编码 4. 下 ...

  • 信息论基础
  • <信息论基础>课程教学大纲 课程编号:(0531305) 课程名称:信息论基础 参考学时:48 其中实验或上机学时:0 先修课及后续课:先修课:概率论.信号与系统 后续课:通信原理.数字图像处理.语音信号处理 说明部分 1.课程性质 本课程是电子信息类专业的技术基础课 2.课程教学的目的 ...

  • 从有损到无损的音频编解码框架
  • igital Si g nal Processing 文章编号:1002-8684(2010)12-0060-05 数字信号处理 AVS 无损音频编解码技术 从有损到无损的音频编解码框架 杨新辉1,舒海燕2,曲天书3,张 涛4,窦维蓓 5 论文·· (1. 中科开元信息技术(北京)有限公司,北京10 ...

  • 计算机考研知识点
  • 计算机学科专业基础综合 Ⅰ考查目标 计算机学科专业基础综合考试涵盖数据机构.计算机组成原理.操作系统和计算机网络等学科专业基础课程.要求考生比较系统地掌握上述专业基础课程的概念.基本原理和方法,能够运用所学的基本原理和基本方法分析.判断和解决有关理论问题和实际问题. Ⅱ考试形式和试卷结构 一.试卷满 ...

  • 计算机组成原理考点
  • 计算机组成原理 [考查目标] 1. 理解单处理器计算机系统中各部件的内部工作原理.组成结构以及相互连接方式,具有完整的计算机系统的整机概念. 2. 理解计算机系统层次化结构概念,熟悉硬件与软件之间的界面,掌握指令集体系结构的基本知识和基本实现方法. 3. 能够运用计算机组成的基本原理和基本方法,对有 ...