func_spiht_enc.m

来自「一些个 人收集的小波变换的程序」· M 代码 · 共 28 行

M
28
字号
function func_SPIHT_Enc(m,level,rate,out_stream)
% input:    m : input image in wavelet domain
%           level : wavelet decomposition level
%           rate  : bits per pixel
%           out_stream: output compression file stream

out=SPIHT_Enc(m,level,rate);
fid=fopen(out_stream,'wb');
fwrite(fid,out(1,1),'short');%16bits x_size
fwrite(fid,out(1,2),'uchar');%8bits  max_plane
fwrite(fid,out(1,3),'uchar');%8bits  levels
fwrite(fid,out(1,4),'float');%32bits rate
 
[nRow nColumn]=size(m);
OrigSize = nRow*nColumn;%size(Orig_I, 1);
max_bits = floor(rate * OrigSize);

for i=1:(max_bits-16-8-8-32)/8
    a=0;
    for j=0:7   
     a=a+out(1,8*(i-1)+j+5)*2^j;
    end 
    if a>255
        break;
    end
    fwrite(fid,a,'uchar');    
end
fclose(fid);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?