matlab读取一个文件的图片大小,Matlab读取文件夹中子文件夹中的图片并修改尺寸...

今天被师兄问到如何利用matlab批处理图片,觉得很简单嘛

就让他去百度 结果只百度到处理文件夹中图片的程序

好吧 这里放上如何处理文件夹中子文件夹的图片

现状:在一个名为casia的文件夹中,里面有很多子文件夹,每个子文件夹均以人名为文件件名,每个子文件夹中有一定数量的图片,如图所示

casia文件夹图示:

0818b9ca8b590ca3270a3433284dd417.png

casia文件夹中 子文件夹图示:

0818b9ca8b590ca3270a3433284dd417.png

目的:将casia文件夹中->每个子文件夹中的图片进行修改大小处理

code:

%图片路径

src='D:\casia';

%存取路径

des='D:\resize-casia';

pathlist1=dir(src);

filenum1=length(pathlist1);

filenamelist1={pathlist1.name};

%由于得到的filenamelist第一个是.第二个是..第三个才是文件夹名,

%故i从3开始

for i=3:filenum1

%做一次嵌套,目的是读取子文件夹中的图片

imgsrcpath=[src,'\',filenamelist1{i}];

imgdespath=[des,'\',filenamelist1{i}];

pathlist2=dir(imgsrcpath);

filenum2=length(pathlist2);

filenamelist2={pathlist2.name};

for j=3:filenum2

imgsrcpath1=[imgsrcpath,'\',filenamelist2{j}];

imgdespath1=[imgdespath,'\',filenamelist2{j}];

imgsrc=imread(imgsrcpath1);

%imgdes=imresize(imgsrc,[160,160],'bilinear');

imgdes=imresize(imgsrc,[160,160]);

imwrite(imgdes,imgdespath1);

end

%这个i用来看处理到第几个文件夹了

i

end

以上,即可完成处理

其实,关于图片大小的resize,如果只是涉及到一个文件夹内的图片大小处理,有个非常简单的方法,你首先需要一个看图工具,现在基本上所有看图工具都有批量转换尺寸的功能

0818b9ca8b590ca3270a3433284dd417.png

点击批量改尺寸后

0818b9ca8b590ca3270a3433284dd417.png

根据自己的需求修改即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值