Function mindspore::dataset::LFW

Function Documentation

inline std::shared_ptr<LFWDataset> mindspore::dataset::LFW(const std::string &dataset_dir, const std::string &task = "people", const std::string &usage = "all", const std::string &image_set = "funneled", bool decode = false, const std::shared_ptr<Sampler> &sampler = std::make_shared<RandomSampler>(), const std::shared_ptr<DatasetCache> &cache = nullptr)

Function to create a LFWDataset.

Note

When usage is ‘people’, the generated dataset has two columns [“image”, “label”]; When task is ‘pairs’, the generated dataset has three columns [“image1”, “image2”, “label”].

Parameters
  • dataset_dir[in] Path to the root directory that contains the dataset.

  • task[in] Set the task type of reading LFW, support “people” and “pairs” (default = “people”).

  • usage[in] The image split to use, support “10fold”, “train”, “test” and “all” (default = “all”, will read samples including train and test).

  • image_set[in] Image set of image funneling to use, support “original”, “funneled” and “deepfunneled” (default = “funneled”).

  • decode[in] Decode the images after reading.

  • sampler[in] Shared pointer to a sampler object used to choose samples from the dataset. If sampler is not given, a RandomSampler will be used to randomly iterate the entire dataset (default = RandomSampler()).

  • cache[in] Tensor cache to use (default=nullptr, which means no cache is used).

Returns

Shared pointer to the LFWDataset.

Example
/* Define dataset path and MindData object */
std::string folder_path = "/path/to/lfw_dataset_directory";
std::shared_ptr<Dataset> ds = LFW(folder_path);

/* Create iterator to read dataset */
std::shared_ptr<Iterator> iter = ds->CreateIterator();
std::unordered_map<std::string, mindspore::MSTensor> row;
iter->GetNextRow(&row);

/* Note: In LFW dataset, each data dictionary owns keys "image" and "label" */
auto image = row["image"];