第二次作業

2022-08-31 10:51:11 字數 2665 閱讀 4409

《資料壓縮導論(第4版)》page 66

2 利用程式huff_enc和huff­_dec進行以下操作(在每種情況下,利用由被壓縮影象生成的碼本)。

(a)對sena、sensin和omaha影象時行編碼。

檔名壓縮前大小

壓縮後大小

壓縮比omaha 

64kb

58kb

90 %

sinan

64kb

61kb 

95% 

sena  

64kb

57kb

89% 

4  乙個信源從符號集a=中選擇字母,概率為p(a1)=0.15,p(a2)=0.04,p(a3)=0.26,p(a4)=0.05,p(a5)=0.50。

(a)計算這個信源的熵。

(b)求這個信源的霍夫曼碼。

(c)求(b)中**的平均長度及其冗餘度。

答:(a)h=-∑p(ai)logp(ai)

=-0.15*log0.15-0.04*log0.04-0.26*log0.26-0.05*log0.05-0.5*log0.5

=1.818(bits/symbol)

(b)a1:001

a2:0000

a3:01

a4:0001

a5:1

(c)平均長度l=3*0.15+4*0.04+2*0.26+4*0.05+1*0.5=1.83(bits/symbol)

冗餘度=l-h=0.012

5  乙個符號集a=,其概率為p(a1)=0.1,p(a2)=0.3,p(a3)=0.25,p(a4)=0.35,使用以下過程找出一種霍夫曼碼:

(a)本章概述的第一種過程:

(b)最小方差過程。

解釋這兩種霍夫曼碼的區別。

答:(a)a1:001

a2:01

a3:000

a4:1

平均碼長l=3*0.1+2*0.3+3*0.25+1*0.35=2

(b)

a1:11

a2:01

a3:10

a4:00

平均碼長l=2*0.1+2*0.3+2*0.25+2*0.35=2

第一種過程:

s2=0.1(3-2)2+0.3(2-2)2+0.25(3-2)2+0.35(1-2)2

=0.70

第二種過程:

s2=0.1(2-2)2+0.3(2-2)2+0.25(2-2)2+0.35(2-2)2

=0所以第二種過程比第一種過程優

6在本書配套的資料中有幾個影象和語音檔案。

(a) 編寫一段程式,計算其中一些影象和語音檔案的一階熵。

(b) 選擇乙個影象檔案,計算其二階熵。試解釋一階熵與二階熵的差別。

(c) 對於(b)中所有的影象檔案,計算其相鄰畫素之差的熵,試解釋你的發現。

答:

檔名

一階熵

二階熵

差分熵

berk.raw

7.151537

6.705169

8.976150

gabe.raw

7.116338

6.654578

8.978236

earth.img

4.770801

2.568358

3.962697

omaha.img

6.942426

4.488626

6.286834

sena.img

6.834299

3.625204

3.856989

sensin.img

7.317944

4.301673

4.541547

test.txt

4.315677

3.122731

6.099982

影象檔案的二階熵小於差分熵小於一階熵

第二次作業

execise02 1.查詢85年以後出生的學生姓名 性別和出生日期 2.列表顯示所有可能的學生選課組合 學號 課程號 3.查詢1 2 4班中陳姓同學的資訊 4.查詢所有及格的學生姓名 所選課程名及所得分數 5.統計各門課程的及格人數 課程編號 課程名 及格人數 6.統計各門課程的總人數 及格人數和...

第二次作業

第一題 p1 1 遞迴寫法,效率低 include 1.寫乙個函式返回引數值為1的個數 比如 15 0000 1111 4個1 程式原型 int count one bits unsigned int value int fuc int x else return 0 void mainp1 p1 ...

第二次作業

檔名稱 516.cpp 作 者 闕文榮 完成日期 2016 年 3 月 11 日 版 本 號 v1.1 對任務及求解方法的描述部分 用while語句控制輸出 輸入描述 略 問題描述 現在北京有一套房子,200萬,假設房價每年 10 乙個軟體工程師每年固定能賺40萬。他想買這套房子,多大的 率能夠忍受...