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 (___“随机”)
将每个标签中指定比例的文件随机分配到新的数据存储中。
例子
按百分比分割标签
创建一个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
对象
输入数据存储,指定为ImageDatastore
对象。要创建ImageDatstore
从图像数据中,使用imageDatastore
函数。
p
- - - - - -要拆分的文件比例
区间(0,1)中的标量|正整数标量
要分割的文件比例,指定为间隔(0,1)中的标量或正整数标量。
如果
p
是在区间(0,1)中,那么它表示分配给每个标签的文件的百分比imds1
.如果p
不会产生大量的文件,是吗splitEachLabel
四舍五入到最接近的整数。如果
p
是整数,那么它表示每个标签要分配给的文件的绝对数量imds1
.至少应该有p
与每个标签相关联的文件。
数据类型:双
p1,…,pN
- - - - - -比例表
区间(0,1)中的标量|正整数标量
比例列表,指定为区间(0,1)中的标量或正整数标量。如果比例在区间(0,1)内,那么它们表示分配给输出数据存储的每个标签的文件的百分比。如果比例是整数,则它们表示每个标签分配给输出数据存储的文件的绝对数量。当比例表示百分比时,它们的和不得大于1。当比例表示文件数量时,必须有足够的文件与每个标签相关联,以满足每个比例。
数据类型:双
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。
在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字
在报价。
例子:[imds1 imds2] = splitEachLabel(imds,0.5,'Exclude','demos')
包括
- - - - - -包括的标签
分类的、逻辑的或数字的向量|字符向量的单元格数组|字符串数组
要包含的标签,指定为逗号分隔的对,由“包括”
类型的标签名称的向量、单元格数组或字符串数组标签
财产。名称中的一个标签必须匹配标签
属性。
数据类型:字符
|细胞
|字符串
排除
- - - - - -要排除的标签
分类的、逻辑的或数字的向量|字符向量的单元格数组|字符串数组
要排除的标签,指定为逗号分隔的对,由“排除”
类型的标签名称的向量、单元格数组或字符串数组标签
财产。每个名称定义一个与数据存储相关联的标签,并且必须与中的名称相匹配标签
.选项不能与“包括”
选择。
数据类型:字符
|细胞
|字符串
输出参数
imds1, imds2
—输出数据存储
ImageDatastore
对象
输出数据存储,返回为ImageDatastore
对象。imds1
包含每个标签中指定比例的文件洛桑国际管理发展学院
,imds2
包含其余文件。
imds1,…,imdsM
—输出数据存储列表
ImageDatastore
对象
输出数据存储的列表,返回为ImageDatastore
对象。列表中元素的数量比所列比例的数量多1。每个新的数据存储都包含每个标签的比例洛桑国际管理发展学院
定义为p1,…,pN
.任何剩余的文件被分配到第m个数据存储。
扩展功能
线程环境
使用MATLAB®在后台运行代码backgroundPool
或使用并行计算工具箱™加速代码ThreadPool
.
这个函数完全支持基于线程的环境。金宝app有关更多信息,请参见在线程环境中运行MATLAB函数.
版本历史
在R2016a中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。