Image Datasets

Concrete image dataset classes.

Classes

ImageDataset – labeled images (classification or regression) UnlabeledImageDataset – images without labels

class src.image_dataset.ImageDataset(root: str, lazy: bool = True, labels_file: str | None = None)[source]

Bases: LabeledDataset

Labeled image dataset supporting two storage layouts.

CSV mode (labels_file provided):

Images are stored flat inside root. A CSV file maps each filename to its label (string for classification, numeric for regression).

Folder mode (labels_file is None):

Images are stored inside per-class subdirectories of root. The label of each image is the name of its parent subdirectory.

Parameters:
  • root – Path to the directory containing the image files (or subdirectories in folder mode).

  • lazy – If True (default), images are loaded on demand; if False, all images are loaded into memory at construction time.

  • labels_file – Path to the CSV file (filename → label). Pass None to use the folder-hierarchy mode.

Raises:
  • TypeError – If any argument has an unexpected type.

  • FileNotFoundError – If root or labels_file does not exist.

class src.image_dataset.UnlabeledImageDataset(root: str, lazy: bool = True)[source]

Bases: UnlabeledDataset

Image dataset without labels (flat folder, no CSV required).

Parameters:
  • root – Path to the directory containing image files.

  • lazy – If True (default), images are loaded on demand.

Raises:

TypeError – If any argument has an unexpected type.