\subset

Создайте подмножество datastore или установленный на файл

Синтаксис

subds = subset(ds,indices)

Описание

пример

subds = subset(ds,indices) возвращает подмножество, содержащее файлы, соответствующие indices. Подмножество subds имеет тот же тип как вход.

  • если вход ds является datastore, то вывод outds является datastore того же типа.

  • если вход ds является объектом DsFileSet, то вывод subds является также объектом DsFileSet.

Примеры

свернуть все

Заставьте datastore изображений возразить и затем создать подмножество того datastore изображений.

Создайте datastore изображений imds для всех файлов изображений в демонстрационной папке. Затем отобразите свойство Files imds.

folders = fullfile(matlabroot,'toolbox','matlab',{'demos','imagesci'});
exts = {'.jpg','.png','.tif'};
imds = imageDatastore(folders,'LabelSource','foldernames','FileExtensions',exts);
imds.Files
ans =

  8×1 cell array

    {'...\matlab\toolbox\matlab\demos\cloudCombined.jpg'}
    {'...\matlab\toolbox\matlab\demos\example.tif'      }
    {'...\matlab\toolbox\matlab\demos\landOcean.jpg'    }
    {'...\matlab\toolbox\matlab\demos\ngc6543a.jpg'     }
    {'...\matlab\toolbox\matlab\demos\street1.jpg'      }
    {'...\matlab\toolbox\matlab\demos\street2.jpg'      }
    {'...\matlab\toolbox\matlab\imagesci\corn.tif'      }
    {'...\matlab\toolbox\matlab\imagesci\peppers.png'   }

Создайте datastore подмножества subimds, который содержит первые четыре файла imds, и исследуйте свойство Files subimds.

indices = 1:4; 
subimds = subset(imds,indices); 
subimds.Files
ans =

  4×1 cell array

    {'...\matlab\toolbox\matlab\demos\cloudCombined.jpg'}
    {'...\matlab\toolbox\matlab\demos\example.tif'      }
    {'...\matlab\toolbox\matlab\demos\landOcean.jpg'    }
    {'...\matlab\toolbox\matlab\demos\ngc6543a.jpg'     }

Сделайте datastore изображений, и затем создайте datastore подмножества, содержащий только заданный процент файлов, случайным образом выбранных из исходного datastore.

Создайте imageDatastore для всех файлов изображений в демонстрационной папке и отобразите свойство Files. Этот datastore содержит 8 файлов.

folders = fullfile(matlabroot,'toolbox','matlab',{'demos','imagesci'});
exts = {'.jpg','.png','.tif'};
imds = imageDatastore(folders,'LabelSource','foldernames','FileExtensions',exts);
imds.Files
ans =

  8×1 cell array

    {'...\matlab\toolbox\matlab\demos\cloudCombined.jpg'}
    {'...\matlab\toolbox\matlab\demos\example.tif'      }
    {'...\matlab\toolbox\matlab\demos\landOcean.jpg'    }
    {'...\matlab\toolbox\matlab\demos\ngc6543a.jpg'     }
    {'...\matlab\toolbox\matlab\demos\street1.jpg'      }
    {'...\matlab\toolbox\matlab\demos\street2.jpg'      }
    {'...\matlab\toolbox\matlab\imagesci\corn.tif'      }
    {'...\matlab\toolbox\matlab\imagesci\peppers.png'   }

Создайте набор индексов, который представляет случайным образом выбранное подмножество, содержащее 60% файлов.

nFiles = length(imds.Files);
RandIndices = randperm(nFiles);
nSixtyPercent = round(0.6*nFiles);
indices = RandIndices(1:nSixtyPercent)
indices =

     8     6     4     5     1

Создайте datastore подмножества submids с помощью indices и исследуйте его свойство Files.

subimds = subset(imds,indices); 
subimds.Files
ans =

  5×1 cell array

    {'...\matlab\toolbox\matlab\imagesci\peppers.png'   }
    {'...\matlab\toolbox\matlab\demos\street2.jpg'      }
    {'...\matlab\toolbox\matlab\demos\ngc6543a.jpg'     }
    {'...\matlab\toolbox\matlab\demos\street1.jpg'      }
    {'...\matlab\toolbox\matlab\demos\cloudCombined.jpg'}

Входные параметры

свернуть все

Введите datastore или установленный на файл, заданный как объект ImageDatastore или объект DsFileSet.

Индексы файлов, чтобы включать в подмножество, заданное как вектор индексов или логический вектор.

  • Вектор индексов должен содержать индексы файлов, чтобы включать в подмножество subds.

  • Логический вектор должен иметь ту же длину как количество файлов во входе ds. Метод subset создает подмножество subds, содержащий файлы, соответствующие элементам в логическом векторе, которые имеют значение true.

Элементы indices должны быть уникальными.

Типы данных: double | logical

Смотрите также

| |

Введенный в R2019a