当前位置:首页 » 文件管理 » matlab读取文件夹图片

matlab读取文件夹图片

发布时间: 2022-02-23 07:10:40

㈠ matlab 读取不同文件夹下不同图片,进行处理。

不知道你从哪里找来这么一段代码,简单看了一下,这段代码的功能是,搜索指定文件夹的子目录中所有扩展名为jpg的文件,并把文件的路径名保存到jpgpath这样一个cell数组中,每行代表一个子目录。

存在以下问题:
1、这段代码并不包括你所说的拼接图片的功能。
2、第一个for循环的if语句没有考虑文件夹中除了子目录还可能有文件存在,这是一个很愚蠢的错误。
3、第二个for循环用来搜索各子目录中的jpg文件,并把文件的路径名保存在一个2维cell数组中。这个做法也是比较愚蠢的,因为各子目录中的jpg文件数量可能相差很多,这种存储方式不可取。

在现有代码基础上改写实现拼接图片的功能并不困难,但需要明确一些问题:
1、文件是否有顺序问题(按什么排序)?
2、纵向还是横向拼接?
3、如果各图片的宽(或高)不同,怎样处理?可选的方式至少有以下几种:
(1)按最大宽度,对于较小宽度的图片,不足部分以某种颜色填充;
(2)按最大宽度,对于较小宽度的图片,放大以适应最大宽度(又可区分是否锁定宽高比);
(3)按最小宽度,对于较大宽度的图片,剪切多余的部分(又可细分为保留哪个部分);
(4)按最小宽度,对于较大宽度的图片,缩小以适应最小宽度。
4、保存的文件怎样命名、保存在什么位置?可以考虑与子目录同名(加上jpg扩展名),存放在所指定的文件夹中(而不是子目录中)

㈡ 用MATLAB如何读取一个文件夹里的图片

1、查看图片所在的位置。

㈢ 怎样用matlab读取一个文件夹下的多个子文件夹中的多个jpg图片,急用啊~~~

这个简单,参考如下:

imgPath='E:/imageData/';%图像库路径

imgDir=dir([imgPath'*.jpg']);%遍历所有jpg格式文件

fori=1:length(imgDir)%遍历结构体就可以一一处理图片了

img=imread([imgPathimgDir(i).name]);%读取每张图片

(3)matlab读取文件夹图片扩展阅读:

需要先遍历所有子文件夹,然后依次再遍历每个子文件夹下的图片,程序如下。

imgDataPath='E:/imageData/';

imgDataDir=dir(imgDataPath);%遍历所有文件

fori=1:length(imgDataDir)

if(isequal(imgDataDir(i).name,'.')||...%去除系统自带的两个隐文件夹

isequal(imgDataDir(i).name,'..')||...

~imgDataDir(i).isdir)%去除遍历中不是文件夹的

continue;

end

imgDir=dir([imgDataPathimgDataDir(i).name'/*.jpg']);

forj=1:length(imgDir)%遍历所有图片

img=imread([imgDataPathimgDataDir(i).name'/'imgDir(j).name]);

end

end

ImgDir返回一个包含每个图像名称、日期、字节、isdir和datenum的结构。一般情况下,我们只需要用图片的名称来完成图片的遍历工作

㈣ 怎么用MATLAB批量读取一个文件夹里面的图片 并进行处理呢

1 图像按编号命名:1.jpg, 2.jpg,....,n.jpg
2 循环读图
I=cell(1,n);
for i=1:n
imageName=strcat(num2str(i),'.jpg');
I{i} = imread(imageName);
end
3 处理图像
-----------------------
如果图像很多,那么最好这样,第二步和第三步合并
for i=1:n
imageName=strcat(num2str(i),'.jpg');
I = imread(imageName);
处理当前图像
end

㈤ matlab读取文件夹下jpg图片并计算每个图片白色像素点数量

file_path='c:a';
img_path_list=dir(strcat(file_path,'*.jpg'));
img_num=length(img_path_list);
ifimg_num>0
forj=1:img_num
image_name=img_path_list(j).name;
I=imread(strcat(file_path,image_name));
r=I(:,:,1)==255;
g=I(:,:,2)==255;
b=I(:,:,3)==255;
L=r&g&b;
value{j}=sum(L(:));
end
end

㈥ 利用Matlab中的imread怎么读取图片

方法/步骤

1、在matlab软件中,读取图像数据(载入)利用的是imread函数,主要有以下4种方式:

A = imread(filename, fmt)

[X, map] = imread(...)

[...] = imread(filename)

[...] = imread(URL,...)

[...] = imread(...,Param1,Val1,Param2,Val2...)

作为初步以及最为常见的方式,采取第一种讲解。

如下图所示即为将载入的图片,图片格式(jpg) :

㈦ 关于MATLAB逐一读取一个文件夹中的图片

myfile通过dir读取的是结构体,其中有name属性。一般需要文件名,此外还有文件大小,是文件还是文件夹。

㈧ matlab中读取文件夹中的所有图像

一、先用cd命令进入所在文件夹;
二、定义变量例如apath,令apath=dir;
三、文件名变量name=apath(i,1).name;
四、图像数据pic=imread(name);
五、将读出的图像数据保存,用什么命令你自己查查,这个应该不难。

㈨ matlab 从文件夹中找图片的程序

比如你想读取所有jpg格式的文件

filename=dir('*.jpg');
然后
filename(i).name
就是第i张图片的名称了,你就可以读取了
比如
A=imread(filename(1).name);

你可以指定某文件夹下进行搜索,默认是current dictionary

㈩ 有没有大神指点一下,我想用MATLAB读取按顺序读取一个文件夹里的图片,

你首先把文件名都改成
001.jpg
002.jpg
003.jpg
……
然后
for i=1:n
picname=['00',num2str(i),'.jpg'];
II=imread(picname);
end

热点内容
公众号云服务器 发布:2024-10-27 04:15:14 浏览:795
如何设置第二个窗口密码 发布:2024-10-27 04:06:50 浏览:317
java插入算法 发布:2024-10-27 03:40:42 浏览:812
浙江服务器dns地址云空间 发布:2024-10-27 03:31:19 浏览:677
编译器的读音 发布:2024-10-27 03:31:11 浏览:474
逆水寒和魔兽哪个配置高 发布:2024-10-27 03:30:35 浏览:908
java可变长度数组 发布:2024-10-27 03:30:35 浏览:401
linux查询命令的版本 发布:2024-10-27 03:24:38 浏览:977
编程3次方 发布:2024-10-27 03:19:48 浏览:20
如何提取手机缓存视频 发布:2024-10-27 02:55:26 浏览:371