class torchvision.datasets.FGVCAircraft(root: Union[str, Path], split: str = 'trainval', annotation_level: str = 'variant', transform: Optional[Callable] = None, target_transform: Optional[Callable] = None, download: bool = False)[source]

FGVC Aircraft Dataset.

The dataset contains 10,000 images of aircraft, with 100 images for each of 100 different aircraft model variants, most of which are airplanes. Aircraft models are organized in a three-levels hierarchy. The three levels, from finer to coarser, are:

  • variant, e.g. Boeing 737-700. A variant collapses all the models that are visually

    indistinguishable into one class. The dataset comprises 100 different variants.

  • family, e.g. Boeing 737. The dataset comprises 70 different families.

  • manufacturer, e.g. Boeing. The dataset comprises 30 different manufacturers.

  • root (str or pathlib.Path) – Root directory of the FGVC Aircraft dataset.

  • split (string, optional) – The dataset split, supports train, val, trainval and test.

  • annotation_level (str, optional) – The annotation level, supports variant, family and manufacturer.

  • transform (callable, optional) – A function/transform that takes in a PIL image and returns a transformed version. E.g, transforms.RandomCrop

  • target_transform (callable, optional) – A function/transform that takes in the target and transforms it.

  • download (bool, optional) – If True, downloads the dataset from the internet and puts it in root directory. If dataset is already downloaded, it is not downloaded again.


__getitem__(idx: int) Tuple[Any, Any][source]

index (int) – Index


Sample and meta data, optionally transformed by the respective transforms.

Return type:



Access comprehensive developer documentation for PyTorch

View Docs


Get in-depth tutorials for beginners and advanced developers

View Tutorials


Find development resources and get your questions answered

View Resources