主要内容

结合

组合来自多个数据存储的数据

描述

例子

Dsnew = combine(ds1, ds2,…,dsN组合多个数据存储以创建CombinedDatastore对象返回的数据函数在输入数据存储上。

例子

Dsnew = combine(ds1, ds2,…,dsNReadOrder =订单根据指定的读顺序组合多个数据存储。读取顺序决定创建或CombinedDatastoreSequentialDatastore对象。

例子

全部折叠

创建一个在底层数据存储的映像对之间保持奇偶性的数据存储。例如,创建两个独立的图像数据存储,然后创建一个组合数据存储,从两个图像数据存储中读取相应的图像。

创建一个数据存储imds1表示三个图像的集合。

imds1 = imageDatastore({“street1.jpg”“street2.jpg”“peppers.png”});

创建第二个数据存储imds2通过变换图像imds1到灰度图像。

Imds2 = transform(imds1,@(x) im2gray(x));

创建一个组合的数据存储imds1而且imds2

imdsCombined = combine(imds1,imds2);

从组合的数据存储中读取第一对图像。这个组合数据存储上的每个读操作都会返回一对图像,表示为1——- - - - - -2单元阵列。

dataOut = read(imdsCombined)
dataOut =1×2单元格数组{480x640 uint8}

显示从组合数据存储中第一次读取的输出。

imshow (imtile (dataOut));

图中包含一个轴对象。axis对象包含一个image类型的对象。

创建一个数据存储,一个接一个地从两个映像数据存储读取数据。

创建一个ImageDatastoreds1的表示两个图像的集合。然后,创建第二个ImageDatastoreds2通过变换图像ds1的到灰度图像。结合ds1的而且ds2要创建SequentialDatastore对象。

ds1 = imageDatastore([“peppers.png”“street2.jpg”]);Ds2 = transform(ds1,@(x) im2gray(x));dsseq = combine(ds1,ds2,ReadOrder=“顺序”);

阅读前三张图片SequentialDatastore对象。每个读操作都在这个上面SequentialDatastore对象返回由1 × 1单元格数组表示的单个图像。

Img1 = read(dsseq);Img2 = read(dsseq);Img3 = read(dsseq);

输入参数

全部折叠

要组合的数据存储,指定为两个或多个逗号分隔的数据存储对象。有关内置数据存储的完整列表,请参见选择“文件格式”或“应用程序”的数据存储.您还可以指定自定义数据存储。

读取数据的顺序,指定为“相关”“顺序”

  • “相关”创建一个CombinedDatastore对象,该对象是来自每个底层数据存储的读操作的水平连接结果。

  • “顺序”创建一个SequentialDatastore对象,该对象在没有连接的情况下按顺序从底层数据存储中读取数据。

扩展功能

版本历史

在R2019a中引入

全部展开