1、图像通信第三章课后习题1.设有离散无记忆信源a0,a1,a2,a3,a4,a5,a6,包含每个字符ai的概率P(ai)如下表所示:符号a0a1a2a3a4a5a6概率0.250.200.150.150.10.10.05(1)计算该信源的熵;(2)用霍夫曼编码方法对此信源进行编码;(3)计算平均码长,并讨论霍夫曼编码性能。2.有4个符号a1,a2,a3,a4,概率分别为P1=0.4,P2=0.25,P3=0.25,P4=0.1,试对由以上四个符号组成的符号序列“a2a1a3a4”进行算术编码及解码。3.设有4个一位的符号序列在LPS和MPS中交替变化且Qe=0.1,如下表:S1LPSS2MPSS
2、3LPSS4MPS对上表中的符号序列进行QM编码和解码。4.DCT变换本身能不能压缩数据,为什么?请说明DCT变换编码的原理。5.请说明预测编码的原理,并画出DPCM编、解码的原理框图。6.设有如下图所示的8x8图像块f(m,n)(1)计算该图像的熵;f=4,4,4,4,4,4,4,4;4,5,5,5,5,5,4,3;4,5,6,6,6,5,4,3;4,5,6,7,6,5,4,3;4,5,6,6,6,5,4,3;4,5,5,5,5,5,4,3;4,4,4,4,4,4,4,3;4,4,4,4,4,4,4,3f = 4 4 4 4 4 4 4 4 4 5 5 5 5 5 4 3 4 5 6 6 6
3、 5 4 3 4 5 6 7 6 5 4 3 4 5 6 6 6 5 4 3 4 5 5 5 5 5 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 temp=zeros(1,256); for m=1:8; for n=1:8; if f(m,n)=0; i=1; else i=f(m,n); end temp(i)=temp(i)+1; endendtemp=temp./(8*8); H=0;for i=1:length(temp) if temp(i)=0; H=H; else H=H-temp(i)*log2(temp(i); endend HH =1.8179
4、Matlab实现截图:(2)对该图像作前值预测(即列差值,区域外像素值取零):,试给出误差图像及其熵值;f=4,4,4,4,4,4,4,4;4,5,5,5,5,5,4,3;4,5,6,6,6,5,4,3;4,5,6,7,6,5,4,3;4,5,6,6,6,5,4,3;4,5,5,5,5,5,4,3;4,4,4,4,4,4,4,3;4,4,4,4,4,4,4,3f = 4 4 4 4 4 4 4 4 4 5 5 5 5 5 4 3 4 5 6 6 6 5 4 3 4 5 6 7 6 5 4 3 4 5 6 6 6 5 4 3 4 5 5 5 5 5 4 3 4 4 4 4 4 4 4 3 4 4
5、 4 4 4 4 4 3 m=1:8; n=2:8; f1(m,1)=0; f1(m,n)=f(m,n-1)f1 = 0 4 4 4 4 4 4 4 0 4 5 5 5 5 5 4 0 4 5 6 6 6 5 4 0 4 5 6 7 6 5 4 0 4 5 6 6 6 5 4 0 4 5 5 5 5 5 4 0 4 4 4 4 4 4 4 0 4 4 4 4 4 4 4 temp1=zeros(1,256); for m=1:8; for n=1:8; if f1(m,n)=0; i=1; else i=f1(m,n); end temp1(i)=temp1(i)+1; endendtemp1
6、=temp1./(8*8); H1=0;for i=1:length(temp1) if temp1(i)=0; H1=H1; else H1=H1-temp1(i)*log2(temp1(i); endend H1H1 =1.8503Matlab截图:(3)对该图像块再作行差值;,再给出误差图像及其熵值; m=2:8; n=1:8; e(1,n)=0; e(m,n)=f1(m-1,n)e = 0 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 0 4 5 5 5 5 5 4 0 4 5 6 6 6 5 4 0 4 5 6 7 6 5 4 0 4 5 6 6 6 5 4 0 4 5
7、 5 5 5 5 4 0 4 4 4 4 4 4 4 temp2=zeros(1,256); for m=1:8; for n=1:8; if e(m,n)=0; i=1; else i=e(m,n); end temp2(i)=temp2(i)+1; endendtemp2=temp2./(8*8); H2=0;for i=1:length(temp2) if temp2(i)=0; H2=H2; else H2=H2-temp2(i)*log2(temp2(i); endend H2H2 =1.9900Matlab截图:(2)试比较上述3个熵值,你能得出什么结论?在从上述过程中我们用Matlab实现了对3个8*8图像块的求熵值,结果为:原始图像:H=1.8179列差值前向预测:H1=1.8503行差值前向预测:H2=1.9900发现熵在增大。从f、f1、e的矩阵的具体数值的观察,f矩阵的值为3到7之间,且相邻两个数变化差值很小,而f1中第一列变为了0,e的第一行和第一列均为0,比起f来说他们的数值更加具有跳变性,各个灰度值的出现更加不具有确定性。而熵越大,就代表着图像含有的信息量越丰富,各个灰度值的出现呈等概论分布的可能性也越大。而这就很好的解释了熵值增加的原因。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1