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

作者&投稿:赤禄 (若有异议请与网页底部的电邮联系)
利用Matlab中的imread怎么读取图片~

方法/步骤
1、在matlab软件中,读取图像数据(载入)利用的是imread函数,主要有以下4种方式:
A = imread(filename, fmt)
[X, map] = imread(...)
[...] = imread(filename)
[...] = imread(URL,...)
[...] = imread(...,Param1,Val1,Param2,Val2...)
作为初步以及最为常见的方式,采取第一种讲解。
如下图所示即为将载入的图片,图片格式(jpg) :


2、在命令窗口(Command Window)输入语句:
>> imdata = imread('haibao.jpg');
即读入图片数据保存在imdata矩阵中。如下所示,在Workspace可以看到该矩阵信息,是一个3维矩阵。


3、在读入图像数据后就可以进行各种算法操作,简单介绍几种常见的图片操作,如下代码可以将彩色图转为灰度图:
>> imdata = imread('haibao.jpg');

>> imgray = rgb2gray(imdata);

>> imshow(imgray);


4、图像二值化操作,如下所示即可:
>> imdata = imread('haibao.jpg');

>> lev = graythresh(imdata);

>> bwimg = im2bw(imdata,lev);

>> imshow(bwimg)
二值化后图像如下所示:

这样:
imgPath = 'E:/imageData/'; % 图像库路径
imgDir = dir([imgPath '*.jpg']); % 遍历所有jpg格式文件
for i = 1:length(imgDir) % 遍历结构体就可以一一处理图片了
img = imread([imgPath imgDir(i).name]); %读取每张图片
end

扩展资料:注意事项
imgDir返回的是一个结构体,包含每个图片name(名称),date(日期),bytes(字节数),isdir(是否为文件夹/目录),datenum(修改日期,连续日期号码)。一般我们仅需使用图片名称就可以完成图片遍历的工作
需要先遍历所有子文件夹,然后依次再遍历每个子文件夹下的图片。程序如下:
imgDataPath = 'E:/imageData/';
imgDataDir = dir(imgDataPath); % 遍历所有文件
for i = 1:length(imgDataDir)
if(isequal(imgDataDir(i).name,'.')||... % 去除系统自带的两个隐文件夹
isequal(imgDataDir(i).name,'..')||...
~imgDataDir(i).isdir) % 去除遍历中不是文件夹的
continue;
end
imgDir = dir([imgDataPath imgDataDir(i).name '/*.jpg']);
for j =1:length(imgDir) % 遍历所有图片
img = imread([imgDataPath imgDataDir(i).name '/' imgDir(j).name]);
end
end

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

2、输入命令I=imread('E:\1.jpg')。

3、点击右边工作区的名称为I的,可以查看图片的编码。

4、输入命令imsho(I),选择命令,右击,执行所选内容。

5、或选择命令,点击上端的“运行并前进”。

6、如图所示,图片就显示出来了。



  • 主要使用了imread函数,for循环指令,即函数imread用于读取图片文件中的数据,for用于读取所有图片。可以在matlab的命令窗口中输入doc imread或者help imread即可获得该函数的帮助信息。

clear;clc
[f,p]=uigetfile('*.*','选择图像文件');
if f
A=imread(strcat(p,f));
imshow(A);
end
  • 下面这段代码实现文件夹下所有图片的读入并以mat格式存储

foldername=dir('总文件夹名字')% 用于得出所有子文件夹的名字
for i=1:length(foldername)-2
    filename=strcat('总文件夹名字\',foldername(i+2).name);% 读取子文件夹的名字和路径
    filenmae_bmp=dir(strcat(filename,'\*.bmp'));% 读取子文件夹图片,bmp格式
    imagedata=imread(filename_bmp);% 读取图片
    save('存放路径\名字.mat',imagedata);
end



  1. 首先定义文件夹的名称:

    imgDir='.\coimg\';

    imgDir2='.\\coimg\\%s';  用于读取图片

  2. 具体代码:


    oldPwd = pwd;

    cd(imgDir);

    x = dir;

    listOfImages = [];

    for i = 1:length(x),

       if x(i).isdir == 0,

              listOfImages = [listOfImages; x(i)];

        end;

    end;

    cd(oldPwd);


    fid=imgDir2;

    for j = 1:length(listOfImages)

        fileName = listOfImages(j).name;

        rfid=sprintf(fid,fileName);

        Irgb=imread(rfid);

        Iset{j}=Irgb;

    end



用evil命令 把读入命令做成字符串和循环然后用evil 把字符串变成可执行语句

files=dir('*.jpg');for i=1:length(files)file=files(i).name;% some processI=readimagefunction(file);% other codeend


matlab怎么读
MATLAB 音标为[mætlæb],音为“迈特莱布”中文名为:矩阵实验室 MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验...

matlab怎么读
1、MATLAB 音标为[mætlæb],软件; 工程计算; 代码; 教程; 工具箱。2、[例句]Study on Single-Phase Active Power Filter and Its Simulation in Matlab单相有源电力滤波器及其MATLAB软件仿真研究。

matlab 怎么发音?
MATLAB的发音为[mæt] [læb](连读,t发弱音)。MATLAB是由美国MathWorks公司出品的数学软件用于算法开发、数据可视化、数据分析等。MATLAB由 Matrix 和 Laboratory 两个词的第一个音节组合而成。

matlab怎么读
MATLAB的读法为:MAT加上LAB。MATLAB是一个高性能的数值计算和可视化软件工具,广泛应用于各个领域。关于它的读法,我们可以从其名字组成进行分析:MATLAB名称解读:1. MAT:代表“矩阵”。在MATLAB中,矩阵是基本的数据结构,软件提供了强大的矩阵运算功能。2. LAB:意为“实验室”。MATLAB最初是为矩阵...

MATLAB如何读取mat文件?
使用matlab基本读取函数,可以进行mat文件读取操作。13.1 数据基本操作 本节介绍基本的数据操作,包括工作区的保存、导入和文件打开。13.1.1 文件的存储 MATLAB支持工作区的保存。用户可以将工作区或工作区中的变量以文件的形式保存,以备在需要时再次导入。保存工作区可以通过菜单进行,也可以通过命令窗口...

“MATLAB”应该怎么读,发音?
用汉语读是‘迈特赖波’用拼音读是‘mai(一声)te(一声)lai(四声)bo(一声)用猫语读是‘喵喵喵喵’用鸟语读是‘wie、wie、wie、wie’

如何用matlab读取excel里面的数据matlab读取excel文件数据的函数_百 ...
在MATLAB中,您可以使用xlsread函数来读取Excel文件中的数据。以下是读取Excel文件的基本步骤:使用xlsread函数指定要读取的Excel文件路径和文件名,并将数据存储在MATLAB的变量中。例如:data = xlsread('文件路径\\\\文件名.xlsx');请确保将文件路径\\\\文件名.xlsx替换为实际的Excel文件路径和文件名。2. ...

matlab如何读txt文件
1、首先,这里举例自己先制作一个txtde 文本文件,如下面页面的内容。2、将文本文件放入matlab的工作路径,方便读取操作。例如,如果我的文本文件在桌面上,我可以将matlab的工作路径更改为桌面。具体方法是单击matlab当前工作路径后的省略号,弹出选项选择文件夹,然后选择相应的路径。3、接下来,我们使用...

MATLAB读写二进制文件和设置读写方式
本文举例介绍MATLAB如何写入和读取二进制文件,同时介绍读写二进制文件的方式。第一,启动MATLAB,新建脚本(Ctrl+N),输入如下代码:close all; clear all; clc fileID1=fopen('test.bin','w'); A=[1:5]; fwrite(fileID1,A); fclose(fileID1); fileID2=fopen('test.bin','r'); B=...

matlab如何批量读取excel文件?
num = xlsread(filename, -1)输入后matlab将会打开相应的exel文件,用鼠标选择需要导入的数据区域,可以切换到想要的sheet。num = xlsread(filename, sheet)其中sheet用来指定读入excel文件的第几个sheet,此时的sheet取值大于1的整数。num = xlsread(filename,sheet, 'range')其中range指定一个矩形的...

广昌县13596303128: matlab如何打开某一文件夹下的.m文件? -
泷甘复方: 解决方案1: \)主程序开头添加addpath('program文件夹添加到当前运行的path中;e;program' 也就是把e:\ 解决方案2: m'd把要run的M文件改成function格式 然后再要用的地方调用function 如果之前没打开过的话就要先用命令打开,例如,把函...

广昌县13596303128: 请问matlab中如何从指定目录下读取文件,修改后保存到指定文件下? -
泷甘复方: 可以直接加入路径: d = fopen('C:\Users\Desktop\知网.txt');%单引号必须得有 fidf06=fopen('pathname\filename'); 使用fid直接加入路径读取即可; fid = fopen('X:\路径\*.JPG'); Matlab使用dir函数获得指定文件夹下的所有子文件夹和文件,并存...

广昌县13596303128: matlab读取文件夹中所有文件 -
泷甘复方: 写一个for循环 每次修改文件名 for i=1:803 ... if i<=9 name=['JULY7000',num2str(i),'.trtx']; elseif i<99 name=['JULY700',num2str(i),'.trtx']; else name=['JULY70',num2str(i),'.trtx']; end ... end%%%%%%%%%%%%%%%%%% 问题补充:目前关键问题...

广昌县13596303128: MATLAB中如何读取一个不知道名称的文件夹? -
泷甘复方: for i=1:100 s=strcat('c:\matlab7\work\step',int2str(i),'\data.txt')%dataprocess,产生一组data fid=fopen(s,'w'); fprintf(fid,'%f',data) fclose(fid); end 试试是不是你要的

广昌县13596303128: 怎样用matlab读取一个文件夹下的多个子文件夹中的多个jpg图片,急用啊~~~ -
泷甘复方: 这个简单,参考如下: imgPath='E:/imageData/';%图像库路径 imgDir=dir([imgPath'*.jpg']);%遍历所有jpg格式文件 fori=1:length(imgDir)%遍历结构体就可以一一处理图片了 img=imread([imgPathimgDir(i).name]);%读取每张图片 扩展资料: ...

广昌县13596303128: 怎么在matlab中读取文件夹名称 -
泷甘复方: dirs=dir('c:\*.sys'); % 用你需要的目录以及文件扩展名替换.读取某个目录的指定类型文件列表

广昌县13596303128: matlab如何读取文件? -
泷甘复方: %一次读取一个文件代码如下[filename,pathname]=uigetfile;data = importdata(filename);

广昌县13596303128: 想用matlab打开一个文件夹,然后自己选取文件夹中一幅图像读取
泷甘复方: clear;clc[f,p]=uigetfile('*.*','选择图像文件');if fA=imread(strcat(p,f));imshow(A);end

广昌县13596303128: Matlab中如何批量读取文件夹中的文件进行处理? -
泷甘复方: 1 图像按编号命名:1.jpg, 2.jpg,....,n.jpg2 循环读图 I=cell(1,n); for i=1:n imageName=strcat(num2str(i),'.jpg'); I{i} = imread(imageName); end3 处理图像----------------------- 如果图像很多,那么最好这样,第二步和第三步合并 for i=1:n imageName=strcat(num2str(i),'.jpg'); I = imread(imageName); 处理当前图像

广昌县13596303128: 用matlab怎样按顺序读取一个文件夹里所有的.dat文件 -
泷甘复方: p1=dir('E:\*.dat*');%自动读取文件夹里的dat文件[r1 c1]=size(p1); for i=1:r1FileN=p1(i).name;%文件的名字FileN=strcat('E:\',ImgN);%读取图片Data=load FileN %这就是载入 end

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网