主要内容

splitEachLabel

按比例分割ImageDatastore标签

描述

例子

imds1, imds2= splitEachLabel(洛桑国际管理发展学院p分割图像文件洛桑国际管理发展学院到两个新的数据存储中,imds1而且imds2.新的数据存储imds1包含第一个p文件从每个标签和imds2包含每个标签的剩余文件。p可以是0到1之间的数字,表示分配给每个标签的文件的百分比imds1,或表示每个标签中要分配给的文件的绝对数量的整数imds1

例子

imds1,…,imdsM= splitEachLabel(洛桑国际管理发展学院p1,…,pN将数据存储拆分为N + 1新的数据存储。第一个新的数据存储imds1包含第一个p1来自每个标签的文件,下一个新的数据存储imds2包含下一个p2文件,等等。如果p1,…,pN表示文件数,则它们的和必须不超过原始数据存储中最小标签中的文件数洛桑国际管理发展学院

例子

___= splitEachLabel (___“随机”)将每个标签中指定比例的文件随机分配到新的数据存储中。

例子

___= splitEachLabel (___名称,值使用一个或多个名称-值对参数指定新数据存储的属性。例如,您可以指定要使用哪些标签进行分割“包括”、“labelname”

例子

全部折叠

创建一个ImageDatastore对象,并根据其所在文件夹的名称标记每个图像。生成的标签名称为演示而且imagesci

imds = imageDatastore(fullfile(matlabroot,“工具箱”matlab的, {“演示”“imagesci”}),...“LabelSource”“foldernames”“FileExtensions”, {“jpg”“使用”“.tif”});洛桑国际管理发展学院。标签
Ans = demo demo demo demo demo demo imagesci imagesci

中的文件创建两个新的数据存储洛桑国际管理发展学院.第一个数据存储imds60属性的文件的前60%演示标签和前60%的文件imagesci标签。第二个数据存储imds40包含每个标签中剩下的40%的文件。如果应用于标签的百分比没有产生完整的文件数,则splitEachLabel四舍五入到最接近的整数。

[imds60,imds40] = splitEachLabel(imds,0.6)
imds60 = ImageDatastore属性:Files:{'…\matlab\toolbox\matlab\demos\cloudCombined.jpg';’……\ matlab \ matlab工具箱\ \ demo \ example.tif”;\matlab\toolbox\matlab\demos\landOcean.jpg标签:[演示;演示;演示……ReadFcn: @readDatastoreImage imds40 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\street1.jpg';’……\ matlab \ matlab工具箱\ \ demo \ street2.jpg”;\matlab\toolbox\matlab\imagesci\peppers.png'}标签:[demo;演示; imagesci] ReadFcn: @readDatastoreImage

创建一个ImageDatastore对象,并根据其所在文件夹的名称标记每个图像。生成的标签名称为演示而且imagesci

imds = imageDatastore(fullfile(matlabroot,“工具箱”matlab的, {“演示”“imagesci”}),...“LabelSource”“foldernames”“FileExtensions”, {“jpg”“使用”“.tif”});洛桑国际管理发展学院。标签
Ans = demo demo demo demo demo demo imagesci imagesci

中的文件创建两个新的数据存储洛桑国际管理发展学院.第一个数据存储imds1属性的第一个文件演示标记和第一个文件imagesci标签。第二个数据存储imds2包含每个标签的剩余文件。

[imds1,imds2] = splitEachLabel(imds,1)
imds1 = ImageDatastore属性:Files:{'…\matlab\toolbox\matlab\demos\cloudCombined.jpg';\matlab\toolbox\matlab\imagesci\corn.tif'}标签:[demo;imagesci] ReadFcn: @readDatastoreImage imds2 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\example.tif';’……\ matlab \ matlab工具箱\ \ demo \ landOcean.jpg”;\matlab\toolbox\matlab\demos\ngc6543 .jpg标签:[演示;演示;演示……ReadFcn: @readDatastoreImage

创建一个ImageDatastore对象,并根据其所在文件夹的名称标记每个图像。生成的标签名称为演示而且imagesci

imds = imageDatastore(fullfile(matlabroot,“工具箱”matlab的, {“演示”“imagesci”}),...“LabelSource”“foldernames”“FileExtensions”, {“jpg”“使用”“.tif”});洛桑国际管理发展学院。标签
Ans = demo demo demo demo demo demo imagesci imagesci

中的文件创建三个新的数据存储洛桑国际管理发展学院.第一个数据存储imds60属性的文件的前60%演示标签和前60%的文件imagesci标签。第二个数据存储imds10包含每个标签下10%的文件。第三个数据存储imds30包含每个标签中剩下的30%的文件。如果应用于标签的百分比没有产生完整的文件数,则splitEachLabel四舍五入到最接近的整数。

[imds60, imds10, imds30] = splitEachLabel(imds,0.6,0.1)
imds60 = ImageDatastore属性:Files:{'…\matlab\toolbox\matlab\demos\cloudCombined.jpg';’……\ matlab \ matlab工具箱\ \ demo \ example.tif”;\matlab\toolbox\matlab\demos\landOcean.jpg标签:[演示;演示;演示……ReadFcn: @readDatastoreImage imds10 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\street1.jpg'}标签:demos ReadFcn: @readDatastoreImage imds30 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\street2.jpg';\matlab\toolbox\matlab\imagesci\peppers.png'}标签:[demo;imagesci] ReadFcn: @readDatastoreImage

创建一个ImageDatastore对象,并根据其所在文件夹的名称标记每个图像。生成的标签名称为演示而且imagesci

imds = imageDatastore(fullfile(matlabroot,“工具箱”matlab的, {“演示”“imagesci”}),...“LabelSource”“foldernames”“FileExtensions”, {“jpg”“使用”“.tif”});洛桑国际管理发展学院。标签
Ans = demo demo demo demo demo demo imagesci imagesci

中的文件创建三个新的数据存储洛桑国际管理发展学院.第一个数据存储imds1属性的第一个文件演示标记和第一个文件imagesci标签。第二个数据存储imds2包含每个标签的下一个文件。第三个数据存储imds3包含每个标签的剩余文件。

[imds1, imds2, imds3] = splitEachLabel(imds,1,1)
imds1 = ImageDatastore属性:Files:{'…\matlab\toolbox\matlab\demos\cloudCombined.jpg';\matlab\toolbox\matlab\imagesci\corn.tif'}标签:[demo;imagesci] ReadFcn: @readDatastoreImage imds2 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\example.tif';\matlab\toolbox\matlab\imagesci\peppers.png'}标签:[demo;imagesci] ReadFcn: @readDatastoreImage imds3 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\landOcean.jpg';’……\ matlab \ matlab工具箱\ \ demo \ ngc6543a.jpg”;\matlab\toolbox\matlab\demos\street1.jpg标签:[演示;演示;演示…… and 1 more categorical] ReadFcn: @readDatastoreImage

创建一个ImageDatastore对象,并根据其所在文件夹的名称标记每个图像。生成的标签名称为演示而且imagesci

imds = imageDatastore(fullfile(matlabroot,“工具箱”matlab的, {“演示”“imagesci”}),...“LabelSource”“foldernames”“FileExtensions”, {“jpg”“使用”“.tif”});洛桑国际管理发展学院。标签
Ans = demo demo demo demo demo demo imagesci imagesci

中的文件创建两个新的数据存储洛桑国际管理发展学院从每个标签中随机抽取。第一个数据存储imds1属性包含一个随机文件演示标签和一个随机文件imagesci标签。第二个数据存储imds2包含每个标签的剩余文件。

[imds1, imds2] = splitEachLabel(imds,1,“随机”
imds1 = ImageDatastore属性:Files:{'…\matlab\toolbox\matlab\demos\street2.jpg';\matlab\toolbox\matlab\imagesci\corn.tif'}标签:[demo;imagesci] ReadFcn: @readDatastoreImage imds2 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\cloudCombined.jpg';’……\ matlab \ matlab工具箱\ \ demo \ example.tif”;\matlab\toolbox\matlab\demos\landOcean.jpg标签:[演示;演示;演示……ReadFcn: @readDatastoreImage

创建一个ImageDatastore对象,并根据其所在文件夹的名称标记每个图像。生成的标签名称为演示而且imagesci

imds = imageDatastore(fullfile(matlabroot,“工具箱”matlab的, {“演示”“imagesci”}),...“LabelSource”“foldernames”“FileExtensions”, {“jpg”“使用”“.tif”});洛桑国际管理发展学院。标签
Ans = demo demo demo demo demo demo imagesci imagesci

中的文件创建两个新的数据存储洛桑国际管理发展学院,只包括带有演示标签。第一个数据存储imds60属性的文件的前60%演示标签和第二个数据存储imds40属性包含剩余40%的文件演示标签。

[imds60, imds40] = splitEachLabel(imds,0.6,“包括”“演示”
imds60 = ImageDatastore属性:Files:{'…\matlab\toolbox\matlab\demos\cloudCombined.jpg';’……\ matlab \ matlab工具箱\ \ demo \ example.tif”;\matlab\toolbox\matlab\demos\landOcean.jpg标签:[演示;演示;演示……ReadFcn: @readDatastoreImage imds40 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\street1.jpg';\matlab\toolbox\matlab\demos\street2.jpg'}标签:[demos;ReadFcn: @readDatastoreImage

同样,您只能分割演示通过排除imagesci标签。

[imds60, imds40] = splitEachLabel(imds,0.6,“排除”“imagesci”
imds60 = ImageDatastore属性:Files:{'…\matlab\toolbox\matlab\demos\cloudCombined.jpg';’……\ matlab \ matlab工具箱\ \ demo \ example.tif”;\matlab\toolbox\matlab\demos\landOcean.jpg标签:[演示;演示;演示……ReadFcn: @readDatastoreImage imds40 = ImageDatastore with properties: Files:{'…\matlab\toolbox\matlab\demos\street1.jpg';\matlab\toolbox\matlab\demos\street2.jpg'}标签:[demos;ReadFcn: @readDatastoreImage

输入参数

全部折叠

输入数据存储,指定为ImageDatastore对象。要创建ImageDatstore从图像数据中,使用imageDatastore函数。

要分割的文件比例,指定为间隔(0,1)中的标量或正整数标量。

  • 如果p是在区间(0,1)中,那么它表示分配给每个标签的文件的百分比imds1.如果p不会产生大量的文件,是吗splitEachLabel四舍五入到最接近的整数。

  • 如果p是整数,那么它表示每个标签要分配给的文件的绝对数量imds1.至少应该有p与每个标签相关联的文件。

数据类型:

比例列表,指定为区间(0,1)中的标量或正整数标量。如果比例在区间(0,1)内,那么它们表示分配给输出数据存储的每个标签的文件的百分比。如果比例是整数,则它们表示每个标签分配给输出数据存储的文件的绝对数量。当比例表示百分比时,它们的和不得大于1。当比例表示文件数量时,必须有足够的文件与每个标签相关联,以满足每个比例。

数据类型:

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:[imds1 imds2] = splitEachLabel(imds,0.5,'Exclude','demos')

要包含的标签,指定为逗号分隔的对,由“包括”类型的标签名称的向量、单元格数组或字符串数组标签财产。名称中的一个标签必须匹配标签属性。

数据类型:字符|细胞|字符串

要排除的标签,指定为逗号分隔的对,由“排除”类型的标签名称的向量、单元格数组或字符串数组标签财产。每个名称定义一个与数据存储相关联的标签,并且必须与中的名称相匹配标签.选项不能与“包括”选择。

数据类型:字符|细胞|字符串

输出参数

全部折叠

输出数据存储,返回为ImageDatastore对象。imds1包含每个标签中指定比例的文件洛桑国际管理发展学院,imds2包含其余文件。

输出数据存储的列表,返回为ImageDatastore对象。列表中元素的数量比所列比例的数量多1。每个新的数据存储都包含每个标签的比例洛桑国际管理发展学院定义为p1,…,pN.任何剩余的文件被分配到第m个数据存储。

扩展功能

版本历史

在R2016a中引入