for文内で作成した​imageDatas​toreの結合

13 ビュー (過去 30 日間)
so ss
so ss 2022 年 3 月 7 日
コメント済み: so ss 2022 年 3 月 13 日
1つのフォルダの中に3つのサブフォルダがありそれぞれにimageが何枚かずつ保存されている場合、
以下のように親となるフォルダを指定しまとめてイメージデータストアを作成できることは確認しました。
%参照したいimageが含まれるサブフォルダの手前までのパス
datasetpath = " ";
imds = imageDatastore(path,'IncludeSubfolders',true,'LabelSource','foldernames');
対して、以下のようにfor文内でそれぞれサブフォルダごとのイメージデータストアを作成して結合させることで上記と同じイメージデータストアを作成することは可能でしょうか。
%参照したいimageが含まれるサブフォルダのパス
datasetpath = [" "," "," "];
for i=1:length(datasetpath)
path = datasetpath{i};
imds = imageDatastore(path,'IncludeSubfolders',true,'LabelSource','foldernames');
end

採用された回答

Hernia Baby
Hernia Baby 2022 年 3 月 7 日
2つ方法があります
1. combine関数 でデータストアを統合する
imdsCombined = combine(imdsdsL,imdsdsR);
2. cellで複数のpathを格納して読み込む
imdsCombined = datastore({'path to dsL', 'path to dsR'},'Type','tall')
  3 件のコメント
Atsushi Ueno
Atsushi Ueno 2022 年 3 月 9 日
>上記と同じimdsを作成することは可能でしょうか
CombinedDatastore オブジェクトは複数のimdsを纏めた物で各imdsの中身迄は融合されません
だから、質問の答えはNOですね。
so ss
so ss 2022 年 3 月 13 日
事細かに説明いただき有難うございます。

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!