Datasets
- class fgvc.datasets.BinarySegmentationDataset(coco_dict: dict, transform: Compose, **kwargs)
- get_image(idx: int) Tuple[ndarray, str]
Get i-th image and its file path in the dataset.
- get_image_bboxes(idx: int) Tuple[ndarray, ndarray, str]
Get image and detection bounding boxes of i-th element in the dataset.
- get_image_mask(idx: int) Tuple[ndarray, ndarray, str]
Get image and segmentation mask of i-th element in the dataset.
- plot_image_bboxes(idx: int, *, preds: List[dict] | None = None, ax=None, plot_text=True)
Visualize image with detection bounding boxes of i-th element in the dataset.
- plot_image_mask(idx: int, apply_transform: bool = False, ax1=None, ax2=None)
Visualize image with segmentation mask of i-th element in the dataset.
- class fgvc.datasets.ImageDataset(df: DataFrame, transform: Compose | Compose, **kwargs)
- apply_transforms(image: Image) Tensor
Apply augmentation transformations on the image.
- get_class_id(idx: int) int
Get class id of i-th element in the dataset.
- get_image(idx: int) Tuple[Image, str]
Get i-th image and its file path in the dataset.
- class fgvc.datasets.PoisonDataset(df: DataFrame, transform: Compose | Compose, **kwargs)
- class fgvc.datasets.PredictionDataset(image_paths: list, transform: Compose | Compose, **kwargs)
- class fgvc.datasets.TaxonomyDataset(df: DataFrame, transform: Compose | Compose, **kwargs)
- get_family_id(idx: int) int
Get family id of i-th element in the dataset.
- get_genus_id(idx: int) int
Get genus id of i-th element in the dataset.
- fgvc.datasets.get_dataloaders(train_data: ~pandas.core.frame.DataFrame | list | dict | None, val_data: ~pandas.core.frame.DataFrame | list | dict | None, augmentations: str, image_size: tuple, model_mean: tuple = (0.485, 0.456, 0.406), model_std: tuple = (0.229, 0.224, 0.225), batch_size: int = 32, num_workers: int = 8, *, transforms_fns: ~typing.Dict[str, callable] | None = None, transforms_kws: dict | None = None, dataset_cls: ~typing.Type[~fgvc.datasets.image_dataset.ImageDataset] = <class 'fgvc.datasets.image_dataset.ImageDataset'>, dataset_kws: dict | None = None, dataloader_kws: dict | None = None) Tuple[DataLoader, DataLoader, tuple, tuple]
Create training and validation augmentation transformations, datasets, and DataLoaders.
The method is generic and allows to create augmentations and datasets of any given class.
- Parameters:
train_data – Training data of any type supported by Dataset defined using dataset_cls.
val_data – Validation data of any type supported by Dataset defined using dataset_cls.
augmentations – Name of augmentations to use (light, heavy, …).
image_size – Image size used for resizing in augmentations.
model_mean – Model mean used for input normalization in augmentations.
model_std – Model mean used for input normalization in augmentations.
batch_size – Batch size used in DataLoader.
num_workers – Number of workers used in DataLoader.
transforms_fns – A dictionary with names of augmentations (light, heavy, …) as keys and corresponding functions to create training and validation augmentations as values.
transforms_kws – Additional keyword arguments for the transformation function.
dataset_cls – Dataset class that implements __len__ and __getitem__ functions and inherits from torch.utils.data.Dataset PyTorch class.
dataset_kws – Additional keyword arguments for the Dataset class.
dataloader_kws – Additional keyword arguments for the DataLoader class.
- Returns:
trainloader – Training PyTorch DataLoader.
valloader – Validation PyTorch DataLoader.
(trainset, valset) – Tuple with training and validation dataset instances.
(train_tfm, val_tfm) – Tuple with training and validation augmentation transformations.