Shortcuts

城市景观

class torchvision.datasets.Cityscapes(root: Union[str, Path], split: str = 'train', mode: str = 'fine', target_type: Union[List[str], str] = 'instance', transform: Optional[Callable] = None, target_transform: Optional[Callable] = None, transforms: Optional[Callable] = None)[source]

Cityscapes 数据集。

Parameters:
  • root (str 或 pathlib.Path) – 数据集的根目录,其中包含目录 leftImg8bitgtFinegtCoarse

  • split (string, optional) – 使用的图像分割,如果模式为“fine”,则为traintestval,否则为traintrain_extraval

  • mode (string, optional) – 使用的质量模式,finecoarse

  • target_type (stringlist, 可选) – 使用的目标类型,instance, semantic, polygoncolor。也可以是一个列表,以输出包含所有指定目标类型的元组。

  • transform (callable, optional) – 一个函数/变换,接收一个PIL图像并返回一个变换后的版本。例如,transforms.RandomCrop

  • target_transform (callable, optional) – 一个函数/转换,它接收目标并对其进行转换。

  • transforms (callable, optional) – 一个函数/转换,它接收输入样本及其目标作为输入,并返回转换后的版本。

示例

获取语义分割目标

dataset = Cityscapes('./data/cityscapes', split='train', mode='fine',
                     target_type='semantic')

img, smnt = dataset[0]

获取多个目标

dataset = Cityscapes('./data/cityscapes', split='train', mode='fine',
                     target_type=['instance', 'color', 'polygon'])

img, (inst, col, poly) = dataset[0]

在“粗略”集上进行验证

dataset = Cityscapes('./data/cityscapes', split='val', mode='coarse',
                     target_type='semantic')

img, smnt = dataset[0]
Special-members:

__getitem__(index: int) Tuple[Any, Any][source]
Parameters:

index (int) – 索引

Returns:

(image, target) 其中 target 是一个包含所有目标类型的元组,如果 target_type 是一个包含多个项目的列表。否则,如果 target_type="polygon",则 target 是一个 json 对象,否则是图像分割。

Return type:

tuple