How to train a DAG with two inputs with a combined data store?
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have combined two data stores using the code
imdsCombined = combine(Stream1_imds,Stream2_imds)
The two datastores are combined as 1x2 cell array. Each cell has one datastore as shown below.

Then I wanted to split the labels of combined datastore for training and testing using the function
[imdsTrain,imdsTest] = splitEachLabel(imdsCombined,numTrainFiles);
The above step is necessary to train the network using
kkt_net_transfer = trainNetwork(imdsTrain,Combined_lgraph,Stream1_opts);
But I got an error "Check for missing argument or incorrect argument data type in call to function 'splitEachLabel'".
This is because of the non availablity of the labels in the combined datastore. I couldn't attach lables to the combined datastore and it was not supported.
We can combine two image datastores in many ways. I tried those methods but they are not suitable to train the network using trainNetwork().
I have used MATLAB version 2020a. Is there any solution?
0 Kommentare
Antworten (1)
Nivedita
am 20 Feb. 2025
In MATLAB, when you combine datastores using combine, it creates a CombinedDatastore object, which doesn't directly support label operations like splitEachLabel. To work around this, you can manually merge the files and labels from the individual datastores before splitting them. Here is a sample code for your reference:
% Extract files and labels from each datastore
files1 = Stream1_imds.Files;
labels1 = Stream1_imds.Labels;
files2 = Stream2_imds.Files;
labels2 = Stream2_imds.Labels;
% Concatenate files and labels
allFiles = [files1; files2];
allLabels = [labels1; labels2];
% Create a new ImageDatastore
imdsCombined = imageDatastore(allFiles, 'Labels', allLabels);
% Split the datastore
[imdsTrain, imdsTest] = splitEachLabel(imdsCombined, numTrainFiles);
% Train the network
kkt_net_transfer = trainNetwork(imdsTrain, Combined_lgraph, Stream1_opts);
0 Kommentare
Siehe auch
Kategorien
Mehr zu Image Data Workflows finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!