-1

提前感谢您的帮助,我的问题是我在 Matlab 中进行 LZW 压缩,我通过选择对话框选择图像,然后通过imread命令读取图像,我不知道该怎么做或怎么做有是 LZW 算法,但是如何将图像引用到该算法,这是我的尝试,这是错误的,我的问题是在imread我应该投入什么达到 LZW_Encoding 算法以及压缩后如何存储数据之后

[filename pathname] = uigetfile({'*.tiff';'*.bmp'},'File Selector');
image=strcat(pathname,filename);
pic=imread(image);
[output,table] = LZW_Encoding(uint8(pic));
fid = fopen('EN_Lzw.txt','w');
fprintf(fid,'%c',output);
fclose(fid);

问候Wadoo

LZW_Encoding 是一个开源函数,我的问题不在于 LZW 函数,而是如何将图像引用到它以及如何编写编码后的文本文件

http://www.mathworks.com/matlabcentral/fileexchange/4899-lzw-compression-algorithm/content/lzw2norm.m

http://www.mathworks.com/matlabcentral/fileexchange/4899-lzw-compression-algorithm/content/norm2lzw.m

4

1 回答 1

-1

尝试使用以下代码:

pic=rgb2gray(pic);
[m, n]=size(pic);
pictmp=reshape(bw',1,m*n);

然后对 pictmp 应用 LZW 函数。

于 2013-11-18T16:13:49.173 回答