資源簡(jiǎn)介
數(shù)字圖像處理中的編碼技術(shù)。本程序?qū)斎氲膱D像進(jìn)行哈夫曼huffman編碼,顯示原圖像的熵、編碼后的平均碼字長(zhǎng)度、并能夠根據(jù)編碼重建出圖像。本程序使用C++混合編程,已經(jīng)編譯生成了Matlab庫(kù)文件,無(wú)需再與C++鏈接
代碼片段和文件信息
function?x?=?HuffmanDecoding(y)
%-------------------------------------------------------------------------%
%該函數(shù)由Huffman編碼的結(jié)果解碼還原出圖像,并將結(jié)果儲(chǔ)存域x中。
%-------------------------------------------------------------------------%
sz?=?double(y.size);
m?=?sz(1);
n?=?sz(2);??????????????????????????????????????????%獲取原始圖像大小
xmin?=?y.min;
map?=?HuffmanTable(double(y.hist));?????????????????%獲取編碼表
code?=?cellstr(char(‘‘?‘0‘?‘1‘));
link?=?[2;?0;?0];
left?=?[2?3];
found?=?0;
tofind?=?length(map);
while?length(left)?&?(found?????look?=?find(strcmp(map?code{left(1)}));????????%該字串是否存在于map中
????if?look?????????????????????????????????????????%如果是
????????link(left(1))?=?-look;??????????????????????%指向map中
????????left?=?left(2:end);?????????????????????????%刪除當(dāng)前節(jié)段
??????
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????1921078??2009-12-17?00:42??bailixiahudutu.bmp
?????文件???????1516??2008-11-11?08:39??HuffmanDecoding.m
?????文件???????1668??2008-11-11?08:32??HuffmanEncoding.m
?????文件???????1741??2008-11-11?08:18??HuffmanTable.m
?????文件??????66614??2008-10-26?20:47??P5.bmp
?????文件????????413??2008-11-11?14:04??R5.m
?????文件??????53426??2008-11-11?01:42??Result5_1.JPG
?????文件??????23737??2008-11-11?08:03??Result5_2.JPG
?????文件???????1126??2008-11-11?01:25??unravel.c
?????文件??????20480??2008-11-11?08:01??unravel.mexw32
-----------?---------??----------?-----??----
??????????????2091799????????????????????10
評(píng)論
共有 條評(píng)論