用imwrite向磁盘写入一个文件时,应用语句如下:

[filename pathname]=uiputfile({'*.bmp';'*.tiff';'*.tif'}, '保存图像'); 
os=[pathname filename];
%进度条
% h= waitbar(0,'程序处理中,请耐心等待。。。');
% for i=1:100, % computation here %
% waitbar(i/100);
% end
% close(h) ;
imwrite(ozl,os);
figure,imshow(ozl,[]);
test=imread(os);
figure,imshow(test,[]);程序看起来没问题,可是结果总是显示出现的是test全白色。
修改后如下:
[filename pathname]=uiputfile({'*.bmp';'*.tiff';'*.tif'}, '保存图像');
os=[pathname filename];
%进度条
% h= waitbar(0,'程序处理中,请耐心等待。。。');
% for i=1:100, % computation here %
% waitbar(i/100);
% end
% close(h) ;
ozl=uint8(ozl);
imwrite(ozl,os);
figure,imshow(ozl,[]);
test=imread(os);
figure,imshow(test,[]);

程序中加入了:ozl=uint8(ozl);确保了数字范围,程序成立!