• 大小: 3KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-03
  • 语言: Matlab
  • 标签: matlab  

资源简介

利用matlab实现的lzw编码,能够高效无损压缩图片,gif——lzw

资源截图

代码片段和文件信息

function [outputout_combtable] = lzwencode(X)
%函数输入
% X : 输入二维图像矩阵
%函数输出
% output :压缩后的十进制码流
% out_comb :转换成二进制码流并且合并后在转换成十进制码流
% table : 编码过程中形成的字串表
%创建时间 2015.05.16
X=im2uint8(X);
[mn]=size(X);
vector=reshape(X1m*n);
vector=double(vector);


tmp.c=0;
tmp.lastCode=-1;
tmp.prefix=[];
tmp.codeLength=1;

%初始化字串表
function []=newTable

tmp.c=0;
tmp.lastCode=-1;
tmp.prefix=[];
tmp.codeLength=1;
table.nextCode=2;

table.codes(1:65538)=tmp;

for c=1:257
    tmp.c=c;
    tmp.lastCode=-1;
    tmp.prefix=[];
    tmp.codeLength=1;
    table.codes(table.nextCode)=tmp;
    table.nextCode=table.nextCode+1;
end;

end

%执行添加字串表项工作
    function []=addCode(lastCodec)
        tmp.c=c;
        tmp.lastCode=lastCode;
        tmp.prefix=[];
        tmp.codeLen

评论

共有 条评论