MATLAB批量读取图片及处理保存
(2016-06-30 09:23:21)
标签:
matlab批量读取图片及 |
分类: MATLAB |
首先的获取图像的存储的路径,比如我放的是D盘子文件夹中,我在利用MATLAB获取文件中所有图片里边已经介绍过了,此处就不一一介绍了。如果你不想获取全部图片可以在for循环中限定你要获取图像的数目或者将img_num设为你想读图片数目。
for j = 1:img_num %逐一读取图像
image_name
= img_path_list(j).name;% 图像名
image =
imread(strcat(file_path,image_name));
image=double(rgb2gray(image));
%将uint8型转换为double型,否则不能计算统计量
imshow(image);
f=getframe(gcf);
imwrite(f.cdata,['D:\huidu\',image_name]);%灰度图像的保存
end
file_path = 'D:\images\';% 图像文件夹路径
img_path_list =
dir(strcat(file_path,'*.jpg'));%获取该文件夹中所有jpg格式的图像
img_num = 25;%获取图像总数量
image1=0;
if img_num > 0 %有满足条件的图像
%-----------此处将图像转化为灰度图像,为防止数据溢出,强制转换为double类型,否则电脑默认为unit8.
%-----------利用getframe(gcf)获取当前显示图片的截屏,imwrite将图像写进想要保存的文件夹中。
%-------imwrite所存储的图像不会失真,保证了其原有的分辨率
end
完结~