加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

MATLAB批量读取图片及处理保存

(2016-06-30 09:23:21)
标签:

matlab批量读取图片及

分类: MATLAB
    这几天在做图像批量读取,网上写了很多种算法,存储的方法也不各不相同。我就写写我自己用的方法吧,比较简单而且通俗易懂。
首先的获取图像的存储的路径,比如我放的是D盘子文件夹中,我在利用MATLAB获取文件中所有图片里边已经介绍过了,此处就不一一介绍了。如果你不想获取全部图片可以在for循环中限定你要获取图像的数目或者将img_num设为你想读图片数目。

file_path = 'D:\images\';% 图像文件夹路径
img_path_list = dir(strcat(file_path,'*.jpg'));%获取该文件夹中所有jpg格式的图像
img_num = 25;%获取图像总数量
image1=0;
if img_num > 0 %有满足条件的图像
        for j = 1:img_num %逐一读取图像                  
            image_name = img_path_list(j).name;% 图像名             
            image = imread(strcat(file_path,image_name));
%-----------此处将图像转化为灰度图像,为防止数据溢出,强制转换为double类型,否则电脑默认为unit8.
            image=double(rgb2gray(image));  %将uint8型转换为double型,否则不能计算统计量 
%-----------利用getframe(gcf)获取当前显示图片的截屏,imwrite将图像写进想要保存的文件夹中。
%-------imwrite所存储的图像不会失真,保证了其原有的分辨率   
            imshow(image);
            f=getframe(gcf);
            imwrite(f.cdata,['D:\huidu\',image_name]);%灰度图像的保存

       end
end

完结~

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有