dat文件头为
1651 1 80000000 0 10
固定标识 数据格式 基地址 页类型 长度
数据格式:1-十六进制 2-十进制 3-十进制长整型 4-十进制浮点型
页类型: 0-数据 1-程序 ?
长度: 装入数据的长度
clear clc I=imread('F=4.bmp'); I=rgb2gray(I); I=imrotate(I,-90); [s1,s2]=size(I); Num=s1*s2/4; fid=fopen('image.dat','w'); fprintf(fid,'1651 1 0 000000 0%X\n',s1*s2/4); for i=1:4:(s1*s2-3) fprintf(fid,'0X% 02X% 02X% 02X% 02X\n',double(I(i+3:-1:i))); end fclose(fid);
同样,把Dat转会bmp
I2=data(2:end,1); %去除第一行文件头数据和无用的列 I2(find(I2<0))=I2(find(I2<0))+2^32; %将有符号数转化为无符号数 tmp(:,4)=fix(I2/(2^24)); tmp2=mod(I2,2^24); tmp(:,3)=fix(tmp2/(2^16)); tmp2=mod(tmp2,2^16); tmp(:,2)=fix(tmp2/(2^8)); tmp2=mod(tmp2,2^8); tmp(:,1)=tmp2; Ir=reshape(tmp',sqrt(4*length(I2)),sqrt(4*length(I2))); %将像素放回原图像的相应位置 imshow(Ir); %显示处理后的图像