1多媒体技术基础课程课外实践题目姓名:黄宁宁学号:1109070112专业:软件工程班级:11级java2一、香农-范诺编码有一幅40个像素的组成的灰度图像,灰度共有5级,分别用符号A、B、C、D、E表示。40个像素中出现灰度A的像素有15个,出现灰度B的像素有7个,出现灰度C的像素有7个,出现灰度D的像素有6个,出现灰度E的像素有5个。(1)对5个符号用香农-范诺算法进行编码。(2)计算该图像可能获得的压缩比的实际值。【实验目的】综合考察学生对香农-范诺编码的使用。解:根据题意,可得符号的编码图1-1及每个符号在图像中出现的次数表1-2。图1-1表1-2符号出现的次数分配的代码需要的位数A150030B70114C71014ABCDE010101012(1)用香农—范诺算法对5个符号A、B、C、D、E的编码分别为00、01、10、110、111;(2)按照常规编码方法,表示5个符号最少需要3位,如用000表示A,001表示B,010表示C,011表示D,100表示E,其余3个代码(101,110,111)不用。这就意味每个像素用3位,编码这幅图像总共需要120位;而用香农—范诺算法进行编码需要的总30+14+14+18+15=91;因此,实际的压缩比为120:91≈1.32:1。二、霍夫曼编码1.有一幅40个像素的组成的灰度图像,灰度共有5级,分别用符号A、B、C、D、E表示。40个像素中出现灰度A的像素有15个,出现灰度B的像素有7个,出现灰度C的像素有7个,出现灰度D的像素有6个,出现灰度E的像素有5个。(1)对5个符号用霍夫曼算法进行编码。(2)计算该图像可能获得的压缩比的实际值。2.字母A,B,C,D,E已被编码,相应的出现概率如下:p(A)=0.16,p(B)=0.51,p(C)=0.09,p(D)=0.13,p(E)=0.11,求霍夫曼编码及平均码长。【实验目的】综合考察学生对霍夫曼编码的使用。解:1.每个符号在图像中出现的次数如表2-1,霍夫曼编码如图2-2。D611018E5111153表2-1图2-2(1)用霍夫曼算法对5个符号A、B、C、D、E进行编码分别为0、100、101、110、111;(2)按照常规编码算法,5个符号至少要用3位组成的代码表示,编码40个像素需要40×3=120(位);而实际使用的总位数为15+21+21+18+15=90(位)。因此,压缩比的实际值为120:90≈1.33。2.符号的霍夫曼编码如图2-2-1:符号出现的次数分配的代码需要的位数A15015B710021C710121D611018E511115A(15)B(7)E(5)D(6)C(7)101010104图2-2-1符号A、B、C、D、E的霍夫曼编码分别为100、0、111、101、110;平均码长为:(51+48+39+33+27)÷100=1.98(位/符号)三、算术编码1符号00011011概率0.10.40.20.3初始区间[0,0.1)[0.1,0.5)[0.5,0.7)[0.7,1)已知信源概率如上表,输入0111110010,求编码输出是多少?2.符号00011011概率0.10.40.20.3初始区间[0,0.1)[0.1,0.5)[0.5,0.7)[0.7,1)已知信源概率分布如上表,输出值为0.134,求译码消息是多少?【实验目的】综合考察学生对算术编码的使用。解:1.B(0.51)1)A(0.16)C(0.09)E(0.11)D(0.13)010101015编码输出为0.46582.译码消息为01,00,11,10四、词典编码中的LZ77算法待编码的数据流,用LZ77算法对数据流进行编码。123456789101112EATATEATEATA【实验目的】综合考察学生对LZ77算法的使用。6解:LZ77算法的编码过程如表4-1:表4-1步骤位置匹配串字符输出11—E(0,0)E22—A(0,0)A33—T(0,0)T44ATE(2,2)E57ATEA(3,3)A611TA(3,1)A五、词典编码中的LZSS算法待编码的数据流,用LZSS算法对数据流进行编码。位置1234567891011字符AABBCBBAABC【实验目的】综合考察学生对LZSS算法的使用,并与LZ77算法作比较,发现LZSS的优点。了解LZSS算法在哪些文档压缩程序中使用。解:LZSS算法的编码过程如表5-1:表5-1步骤位置匹配串输出11—A22AA33—B44BB55—C66BB(3,2)78AAB(7,3)811CC六、词典编码中的LZ78算法LZ78算法的译码消息为(0,A)(0,E)(1,C)(3,E)(4,A)(2,E),求编码字符流。(要列出词典)【实验目的】综合考察学生对LZ78算法的使用,并与LZ77算法作比较,发现LZ78算法最大的优点是什么。7解:表6-1步骤输入词典1(0,A)A2(0,E)E3(1,C)AC4(3,E)ACE5(4,A)ACEA6(2,E)EE编码字符流为:AEACACEACEAEE七、词典编码中的LZW算法1.待编码的数据流,用LZW算法对数据流进行编码。(要求列出词典)位置1234567891011字符ABBABCBACBA2.译码消息为:122473,用LZW算法对其进行译码,写出编码字符流与词典。【实验目的】综合考察学生对LZW算法的使用,并与LZ77算法作比较,发现LZW算法最大的优点是什么。并了解该算法在哪些图像文件中使用。解:1.LZW算法的编码如表7-1:表7-1步骤位置词典输出(1)A(2)B(3)C11(4)AB(1)22(5)BB(2)33(6)BA(2)44(7)ABC(4)56(8)CB(3)67(9)BAC(6)79(10)CBA(8)8———(1)2.LZW算法的编码如表7-2:8表7-2步骤输入代码词典输出(1)A(2)B(3)C1(1)——A2(2)(4)ABB3(2)(5)BBB4(4)(6)BAAB5(7)(7)ABAABA6(3)(8)ABACC八、音频文件的数据量的计算方法1.用44.1kHz采样频率采样,每个样本使用16位采样精度存储,则录制一分钟的立体声节目,音频WAV文件的存储量?2.使用22.05kHz的采样频率和8位采样精度,录制一分钟调幅音频的WAV文件存储量?【实验目的】综合考察学生对音频文件的数据量的计算公式的的使用。解:1.WAV文件的存储量是44100×16×2÷8×60=10.584MB/min2.WAV文件的存储量是22050×8×1÷8×60=1.323MB/min九、子带编码(SBC)写出子带编码的基本思想和工作流程。【实验目的】综合考察学生对子带编码的使用和工作原理。答:基本思想:使用一组带通滤波器把输入声音信号的频带分成若干个连续的频段,每个频段称为子带。对每个子带中的声音信号采用单独的编码方案去编码。在信道上传送时,将每个子带的代码复合起来。在接收端译码时,将每个子带的代码单独译码,然后把它们组合起来,还原成原来的声音信号。工作流程:首先用一组带通滤波器将输入信号分成若干子带信9号,然后将这些子带信号通过频率搬移变成基带信号,再对它们分别进行采样,量化编码后再将子带的信码合路成一个总信码传输到接收端。量化编码可以采用PCM、DPCM等方式。在接收端,把总信码分成各子带信码,再进行插值,频率搬移到原来的位置,带通滤波然后相加得到重建信号。各子带的带宽可以是相同的也可以是不相同的,相同的称为等带宽子带编码,不同的称为变带宽子带编码。等带宽子带编码的优点是便于硬件实现。变带宽编码中,常用的子带划分方法是令各子带的宽度随频率的增加而增加。也就是低频子带宽度较窄,高频宽度较大。这种划分方法不仅和语音信号的功率相匹配,也和语音信号的可懂度或清晰度随频率变化的关系相匹配。语音信号频带中具有相同带宽的子带对语音可懂度的影响不同,低频的影响大一些,高频的影响小一些。在等带宽分割时,对不同子带分配不同的比特数,等带宽编码也能获得比较好的重建语音质量。十、真彩色、伪彩色与直接色写出三种色彩的定义与差别?并例举三种色彩分别应用到哪些图像中。【实验目的】综合考察学生对三种色彩的使用并了解三种色彩分别应用到哪些图像中。答:三种色彩的定义分别为:真彩色:真彩色是指图像中的每个像素值都分成R、G、B三个基色分量,每个基色分量直接决定其基色的强度,这样产生的色彩称为真彩色。伪彩色:伪彩色(Pseudo-color)图像的每个像素值实际上是一个索引值或代码,该代码值作为色彩查找表CLUT(ColorLook-UpTable)10中某一项的入口地址,根据该地址可查找出包含实际R、G、B的强度值。这种用查找映射的方法产生的色彩称为伪彩色。直接色:(directcolor)每个像素值分成R,G,B分量,每个分量作为单独的索引值对它做变换。也就是通过相应的彩色变换表找出基色强度,用变换后得到的R,G,B强度值产生的彩色称为直接色。它的特点是对每个基色进行变换。三种色彩的差别:描述一幅图像需要使用图像的属性。图像的属性包含分辨率、像素深度、真/伪彩色、图像的表示法和种类等。搞清真彩色、伪彩色与直接色的含义,对于编写图像显示程序、理解图像文件的存储格式有直接的指导意义,也不会对出现诸如这样的现象感到困惑:本来是用真彩色表示的图像,但在VGA显示器上显示的图像颜色却不是原来图像的颜色。应用:真彩色:由RGB形成的图像;伪彩色:用于65K色以下的显示方式中;直接色:通过相应的彩色变换表找出基色强度。十一、图像的种类什么是矢量图,什么是位图?并写出二者的区别?【实验目的】综合考察学生对图像种类了解。答:1.(1)矢量图是根据几何特性来绘制图形,矢量可以是一个点或一条线,矢量图只能靠软件生成,文件占用内在空间较小,因为这种类型的图像文件包含独立的分离图像,可以自由无限制的重新组11合。它的特点是放大后图像不会失真,和分辨率无关,适用于图形设计、文字设计和一些标志设计、版式设计等。(2)位图图像(bitmap),亦称为点阵图像或绘制图像,是由称作像素(图片元素)的单个点组成的。这些点可以进行不同的排列和染色以构成图样。当放大位图时,可以看见赖以构成整个图像的无数单个方块。扩大位图尺寸的效果是增大单个像素,从而使线条和形状显得参差不齐。然而,如果从稍远的位置观看它,位图图像的颜色和形状又显得是连续的。2.矢量图与位图最大的区别是,它不受分辨率的影响。因此在印刷时,可以任意放大或缩小图形而不会影响出图的清晰度,可以按最高分辨率显示到输出设备上。位图由像素组成,只要有足够多的不同色彩的像素,就可以制作出色彩丰富的图象,逼真地表现自然界的景象;但是缩放和旋转容易失真,同时文件容量较大。矢量图由数学向量组成,文件容量较小,在进行放大、缩小或旋转等操作时图象不会失真;但是不易制作色彩变化太多的图象。十二、JPEG压缩编码写出JPEG算法的主要计算步骤,并对每一步作出具体的说明。【实验目的】综合考察学生对JPEG算法的使用。答:JPEG算法的主要计算步骤:(1)正向离散余弦变换。使用正向离散余弦变换(FDCT)把空间域表示的图变换成频率域表示的图。(2)量化。使用加权函数对DCT系数进行量化,这个加权函数对于人的视觉系统是最佳的。量化是对经过FDCT变换后的频率系数12进行量化。量化的目的是减小非“0”系数的幅度以及增加“0”值系数的数目。量化是图像质量下降的最主要原因。(3)Z字形编码。量化后的系数要重新编排,目的是为了增加连续的“0”系数的个数,就是“0”的游程长度,方法是按照Z字形的式样编排。(4)使用差分脉冲编码调制对直流系数进行编码。JPEG算法使用了差分脉冲调制编码(DPCM)技术,对相邻图像块之间量化DC系数的差值(Delta)进行编码。(5)使用行程长度编码对交流系数进行编码。量化AC系数的特点是1×64矢量中包含有许多“0”系数,并且许多“0”是连续的,因此使用非常简单和直观的游程长度编码(RLE)对它们进行编码。(6)熵编码。使用霍夫曼可变字长编