`

matlab将图片转换成asc码txt文本格式

阅读更多

matlab将图片转换成asc码

 

function img2txt(imfile,varargin);

% using an ASCII character for every stepx pixels in x-dimension
ramp=['@@@@@@@######MMMBBHHHAAAA&&GGhh9933XXX222255SSSiiiissssrrrrrrr;;;;;;;;:::::::,,,,,,,........'];
% the 'ramp' vector represents characters in order of intensity
im=imread(imfile);
im=mean(im,3);

fid=fopen(strcat([imfile,'.txt']),'w');
stepx=5;
if length(varargin)>0,
stepx=varargin{1};
end
stepy=2*stepx;
sizx=fix(size(im,2)/stepx);
sizy=fix(size(im,1)/stepy);
lumin=zeros(sizy,sizx);
for j=1:stepy,
for k=1:stepx,
lumin=lumin+im(j:stepy: (sizy-1)*stepy+j,k:stepx: (sizx-1)*stepx+k);
end
end
str=ramp(fix(lumin/(stepx*stepy)/256*length(ramp))+1);
for h=1:sizy,
fwrite(fid,[str(h,: ),10,13]);
end
fclose(fid);

 

 

原图

输入命令

>> img2txt('12.jpg',1)

可以看到效果

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics