MATLAB批量将图片转换为二进制文件(.mat)

生成mat文件

pt = 'E:\diabetic-retinopathy-detection\sample_gt\'; %读取路径   
ext = '*.tif';   
dis = dir([pt ext]);   %数组操作
nms = {dis.name};   
   
a = rgb2gray(imread([pt nms{1}]));   %将图片格式准换为灰度图像
IMAGES = zeros(size(a,1),size(a,2),length(nms));%创建存储图片数据的三维数组   
   
for k = 1:length(nms)   
    nm = [pt nms{k}]; %nm存储每张图片的路径(包括图片名)D:\Workspace\Matlab\1.bmp   
    image = rgb2gray(imread(nm));   
    IMAGES(:,:,k)=image; %将第k张图片存储到三维数组的第k页   
end   
save IMAGES_mat IMAGES; %将数组存储为mat格式  

注意事项:
1.pt是文件夹路径,最后一定要带“\”;
2.ext是扩展名,根据图片后缀进行修改;
3.dis表示一个结构体,内部存储了图片的路径与名称;
4.save命令是将IMAGES存储到IMAGRES_mat中,这个mat文件的文件名是IMAGRES_mat,变量名是IMAGRES。

加载mat文件

image=load(IMAGRES);

image=load(IMAGRES,variables);

image=load(IMAGRES,'-mat',variables);

image=load(IMAGRES,'-ascii')

查看mat文件

whos -file image 

你可能感兴趣的:(matlab)