主要内容

imageageAtastore.

图像数据的数据存储

描述

用A.图像数据存储对象来管理图像文件的集合,其中每个单独的图像适合内存,但整个图像集合不一定适合内存。您可以创建一个图像数据存储使用imageageAtastore.函数,指定其属性,然后使用对象函数导入和处理数据。

创建

描述

imds=图像数据存储(地点)创建一个数据存储imds来自由指定的图像数据集合地点.

例子

imds=图像数据存储(地点,名称、值)指定其他参数和参数特性对于imds使用一个或多个名称-值对参数。

输入参数

展开全部

数据存储中包含的文件或文件夹,指定为路径或a数据文件集目的。

  • 路径 - 将路径指定为字符向量,字符向量,字符串标量或字符串数​​组的单元格数组,其中包含本地或远程的文件或文件夹的位置。

    • 本地文件或文件夹 - 指定地点作为文件或文件夹的本地路径。如果文件不在当前文件夹中,则本地路径必须指定完整或相对路径。指定文件夹的子文件夹中的文件不会自动包含在数据存储区中。指定本地路径时,可以使用通配符(*)。此字符指定数据存储区包括匹配文件夹中的所有匹配文件或所有文件。

    • 远程文件或文件夹 - 指定地点成为文件或文件夹的完整路径,作为表单的统一资源定位器(URL)HDFS:/// path_to_file.有关更多信息,请参阅使用远程数据.

  • 数据文件集对象 - 您也可以指定地点作为一个数据文件集目的。有关更多信息,请参阅matlab.io.datastore.DsFileSet.

什么时候地点表示一个文件夹,数据存储区仅包括支持的文件格式并忽略任何其他格式。金宝app要在数据存储区中指定要包含的文件扩展名的自定义列表,请参阅文件扩展名财产。

这个imageageAtastore.函数支持有一个文件金宝appimformats.格式。

例子:'file1.jpg'

例子:“../dir/data/file1.png”

例子:{'C:\dir\data\file1.tif','C:\dir\data\file2.tif'}

例子:'c:\ dir \ data \ *。jpg'

名称-值对参数

指定可选的逗号分隔的字符对名称、值论点。名称是参数名和价值是相应的价值。名称必须出现在引号内。您可以按任意顺序指定多个名称和值对参数,如下所示:name1,value1,...,namen,valuen.

例子:imds = imageageataStore('c:\ dir \ imagedata','fileextensions',{'。jpg','。tif'})

子文件夹包含标志,指定为逗号分隔的配对'insertumbfolders'真的要么假的. 具体说明真的包括每个文件夹或文件夹中的所有文件和子文件夹假的仅包含每个文件夹中的文件。

如果您没有指定'insertumbfolders',则默认值为假的.

例子:'insertumubfolders',真实

数据类型:符合逻辑的|双倍的

图像文件扩展,指定为逗号分隔对'fileextensions'和字符矢量,字符向量,字符串标量或字符串数​​组的字符矢量。指定的扩展不需要imformats.格式,并且可以使用空引号''表示没有扩展的文件。如果您没有指定'fileextensions'那么imageageAtastore.自动包含所有图像imformats.指定路径中的扩展。如果要包含扩展imformats.不识别,然后指定所有扩展名。

例子:'fileextensions','。jpg'

例子:'fileextensions',{'。jpg','。png'}

数据类型:char|细胞|细绳

备用文件系统根路径,指定为逗号分隔对组成“AlternateFileSystemRoots”和字符串向量或单元格数组。使用“AlternateFileSystemRoots”在本地计算机上创建数据存储,但需要访问和处理另一台计算机上的数据(可能是不同的操作系统)。此外,当使用并行计算工具箱™和该数据处理数据时马铃薯®并行服务器™,并且数据存储在您的本地计算机上,数据副本可在不同的平台云或群集计算机上使用,您必须使用“AlternateFileSystemRoots”要关联根路径。

  • 要关联一组彼此等效的根路径,请指定“AlternateFileSystemRoots”作为字符串向量。例如

    [“Z:\datasets”,“/mynetwork/datasets”]

  • 要关联多组与数据存储等效的根路径,请指定“AlternateFileSystemRoots”作为包含多行的单元数组,其中每行代表一组等效根路径。将单元格数组中的每一行指定为字符串向量或字符向量的小区数组。例如:

    • 指定“AlternateFileSystemRoots”作为串向量的单元阵列。

      {[“z:\ datasets”,“/ mynetwork / datasets”]; ... [y:\ datasets“,”/ mynetwork2 / datasets“,”s:\ datasets“]}

    • 或者,指定“AlternateFileSystemRoots”作为字符向量的单元阵列的单元阵列。

      {{'z:\ datasets','/ mynetwork / datasets'}; ... {'y:\ datasets','/ mynetwork2 / datasets','s:\ datasets'}}

价值“AlternateFileSystemRoots”必须满足这些条件:

  • 包含一行或多行,其中每行指定一组等效根路径。

  • 每行指定多个根路径,每个根路径必须至少包含两个字符。

  • 根路径是唯一的,并且不是彼此的子文件夹。

  • 至少包含一个指向文件位置的根路径条目。

有关更多信息,请参阅设置用于在不同计算机或群集上处理的数据存储.

例子:[“Z:\datasets”,“/mynetwork/datasets”]

数据类型:细绳|细胞

提供标签数据的源,指定为逗号分隔对,由'labelsource'“没有”要么'foldernames'.如果“没有”标签财产是空的。如果'foldernames'指定,然后根据文件夹名称分配标签并存储在标签财产。您可以稍后通过访问来修改标签标签property直接。

数据类型:char|细绳

除了这些名称 - 值对之外,还可以指定此页面上的任何属性作为名称值对,除了文件财产。

特性

展开全部

图像数据存储属性描述数据并指定如何从数据存储中读取数据。您可以指定图像数据存储使用名称值对参数创建数据存储对象时属性。要在创建对象后查看或修改属性,请使用点表示法。

例如,您可以创建一个图像数据存储对象并指定“ReadFcn”范围:

imds=图像数据存储('peppers.png',“ReadFcn”,@ customReader);
或者,您可以分配“ReadFcn”@客户阅读器在创建图像数据存储:
imds=图像数据存储('peppers.png');imds.readfcn = @customreader;

包含在数据存储中的文件,作为字符向量,字符向量,字符串标量或字符串数​​组的单元格数组。每个字符向量或字符串是文件的完整路径。这个地点争论在imageageAtastore.数据存储功能定义文件创建数据存储时。

例子:{'c:\ dir \ data \ file1.jpg';'c:\ dir \ data \ file2.jpg'}

数据类型:char|细胞|细绳

此属性是只读的。

用于构建数据存储的文件夹,作为字符向量的单元格数组返回。单元数组的方向为列向量。每个字符向量都是指向包含数据文件的文件夹的路径。这个地点争论在imageageAtastore.数据存储功能定义文件夹创建数据存储时。

数据类型:细胞

调用中要读取的图像文件数函数,指定为正整数标量。每次呼唤到功能最多读取阅读图像。

数据存储中文件的文件标签,指定为向量,单元格数组或字符串数​​组。阵列中标签的顺序对应于数据存储区中关联文件的顺序。如果您指定“LabelSource”、“foldernames”创建时图像数据存储对象,然后文件的标签名称是包含它的文件夹的名称。如果您没有指定“LabelSource”、“foldernames”那么标签是一个空的单元格数组或字符串数​​组。如果你改变了文件属性创建数据存储后标签不自动更新属性以合并添加的文件。

数据类型:分类|细胞|符合逻辑的|双倍的|单身的|细绳

读取图像数据的功能,指定为函数句柄。该函数必须将图像文件名作为输入拍摄,然后输出相应的图像数据。例如,如果客户阅读器是读取图像数据的指定函数,那么它必须具有类似的签名:

函数数据=customreader(文件名)。。。结束
如果存在多个输出参数,那么imageageAtastore.仅使用第一个参数并忽略其余的。

使用readfcn.不推荐转换或预处理2-D图像。出于识别的文件格式imformats.,指明readfcn.降低了的性能imageageAtastore.. 有关转换和预处理图像的更有效方法,请参见用于深度学习的图像预处理(深度学习工具箱).

例子:@客户阅读器

数据类型:功能手柄

此属性是只读的。

支持写入的格式列表,作为字符串的金宝app行向量返回。此属性指定使用时可能的输出格式书面语从数据存储区写入输出文件。

数据类型:细绳

此属性是只读的。

默认输出格式,作为字符串标量返回。此属性指定使用时的默认格式书面语从数据存储区写入输出文件。

数据类型:细绳

目标函数

counteanceLabel. 计算IMAGEDATASTORE标签中的文件
hasdata 确定数据是否可读取
numpartitions. 数据存储区分区数量
划分 分区数据存储
预习 预览数据存储中的数据子集
在数据存储区中读取数据
readall 阅读数据存储中的所有数据
阅读贴图 从数据存储读取指定的图像
书面语 将数据存储写入文件
重置 将数据存储重置为初始状态
洗牌 洗牌数据存储中的所有数据
拆分标签 按比例拆分ImageDatastore标签
子集 创建数据存储或文件集的子集
转变 转换数据存储
结合 合并来自多个数据存储的数据
是可分派的 确定数据存储是否已分配
易怒 确定数据存储是否可洗牌

例子

全部崩溃

创建一个图像数据存储与所有.tif.MATLAB®路径及其子文件夹中的文件。使用文件夹名称作为标签名称。

imds = imagedataStore(fullfile(matlabroot,'工具箱','matlab'),......'insertumbfolders',真的,'fileextensions','.tif','labelsource','foldernames')
IMDS = IMAGEDATASTORE具有属性:文件:{'... \ MATLAB \ TOOLBOX \ MATLAB \ DEMOS \ example.tif';'... \ matlab \ toolbox \ matlab \ imagesci \ corn.tif'}标签:[演示;ImagesCi] ReadSize:1 ReadFCN:@ReadDataStoreImage

创建一个图像数据存储对象包含四个图像,并预览第一个图像。

imds = imageageatastore({'Street1.jpg','Street2.jpg','peppers.png','玉米。'})
imds=具有以下属性的ImageDatastore:文件:{'..\matlab\toolbox\matlab\demos\street1.jpg';'\matlab\toolbox\matlab\demos\street2.jpg';'\matlab\toolbox\matlab\imagesci\peppers.png'。。。还有1个}ReadSize:1标签:{}ReadFcn:@readDatastoreImage
imshow(预览(IMDS));

一次只读第二个和第三张图像。

对于i=2:3 img=readimage(imds,i);结束

阅读所有四个图像并查看第三个图像。

imgs = Readall(IMDS);imshow(imgs {3})

限制

  • 使用readfcn.不推荐转换或预处理2-D图像。出于识别的文件格式imformats.,指明readfcn.降低了的性能imageageAtastore.. 有关转换和预处理图像的更有效方法,请参见用于深度学习的图像预处理(深度学习工具箱).

在R2015B中介绍