Can I give multiple labels to a single file in ImageDatastore

8 views (last 30 days)
Can I give multiple categorical labels to a single file in ImageDatastore. For example I have an outdoor photograph which contains a Dog, Tree and Sky. I have Inceptionv3 running in Python with all files in one directory, and the muliple labels held in txt files of same names and want to rebuild this in MATLAB. The only option I can find is ('LabelSouce','foldernames'). Is it possible to add multiple labels to a single file in the Datastore, or do I need to add the file 3 times, once for each label, or use a different method?
  11 Comments

Sign in to comment.

Answers (1)

Jayanti
Jayanti on 4 Apr 2025
Hi,
To assign multiple labels to a single image in MATLAB, you can use a combination of “imageDatastore” and “arrayDatastore”.
Start by preparing a cell array where each cell contains a categorical array of labels corresponding to each image. Create an “arrayDatastore” with this cell array. Use the “combine” function to merge the image and label datastores.
For example, if you have two images, you can set up the combined datastore as shown below:
labelCellArray = cell(2, 1);
labelCellArray{1} = categorical(["ball" "dog" "cat"]);
labelCellArray{2} = categorical(["tree" "sky"]);
labelDs = arrayDatastore(labelCellArray);
dsTrain = combine(imds, labelDs);
Hope this will be helpful!

Categories

Find more on Image Data Workflows in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!