2.影象sena,sinan,omaha編碼結果如下
影象
壓縮前
壓縮後
壓縮比sena
從表上可以看出,每個檔案壓縮之後的大小都不相同,這是因為影象之間冗餘度的問題。
4.(a)信源的熵:
h=-(0.15×log20.15+0.04×log20.04+0.26×log20.26+0.05×log20.05+0.5×log20.5)
=1.82bits
(b) 信源的霍夫曼碼
(c)**的平均長度及其冗餘度
l=3×0.15+4×0.04+2×0.26+1×0.5
=1.83bits
冗餘度=(1.83-1.82)=0.01bits
霍夫曼編碼:
a1: 001
a2: 01
a3: 000
a4: 1
平均長度=0.1×3+0.3×2+0.25×3+0.35×1=2bits
(b)a1: 11
a2: 01
a3: 10
a4: 00
**的平均長度為2位/符號。而碼字的平均長度是兩碼相同,那就是他們都是同樣有效的速率。然而,二碼的**長度為零的方差。這意味著如果我們在通訊系統中使用該**,我們將不會有任何問題與緩衝區控制。我們不能對第乙個**作出同樣的斷言。
參考書《資料壓縮導論(第4版)》page 30 第6題
(a)檔名
一階熵
二階熵
差分熵
earth.img
4.770801
2.568358
3.962697
berk.raw
7.151537
6.705169
8.976150
gabe.raw
7.116338
6.654578
8.978236
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
(b) 以(a)中的sena.img為例,二階熵 比一階熵明顯降低,說明影象中
相鄰畫素之間存在著很強的相關性。
(c)差分比二階熵略大一點,是兩者都考慮相鄰畫素之間相關性,所以熵較小;但二階熵是考慮相鄰畫素之間相關性後熵的下界,比差分熵更小一些。 計算其他影象的熵,可以得到相同的趨勢。
ps:此處是部分程式執行結果(圖想太多,只放部分)
第二次作業
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萬。他想買這套房子,多大的 率能夠忍受...