matlab-将图片的像素内容读入到文本文件

下面这些是源程序,目的是为了将图片的像素保存到文本文件:

  • pict=imread('rice.png');
  • fid=fopen('pixel.txt','w');
  • [row,column]=size(pict);
  • for i=1:row
  •     for j=1:column
  •         fprintf(fid,'%d\t',pixel(i,j));
  •     end
  •     fprintf('\n');
  • end
  • fclose(fid);

此图像是256*256的,结果是能够正常读入,可是打开txt文本以后发现只有一行,很明显在for循环语句中的换行操作fprintf('\n')没有起到作用。修改方法为,加上fid,即fprintf(fid,'\n'),如此,就能够正常显示了。

最终的程序如下:

  • pict=imread('rice.png');
  • fid=fopen('pixel.txt','w');
  • [row,column]=size(pict);
  • for i=1:row
  •     for j=1:column
  •         fprintf(fid,'%d\t',pixel(i,j));
  •     end
  •     fprintf(fid,'\n');
  • end
  • fclose(fid);

你可能感兴趣的:(matlab学习)