Skip to content

Commit ee5b4e8

Browse files
TheCodezfmassa
authored andcommitted
Add classes to Cityscapes (#739)
1 parent 4ffc28c commit ee5b4e8

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed

torchvision/datasets/cityscapes.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import json
22
import os
3+
from collections import namedtuple
34

45
import torch.utils.data as data
56
from PIL import Image
@@ -48,6 +49,48 @@ class Cityscapes(data.Dataset):
4849
img, smnt = dataset[0]
4950
"""
5051

52+
# Based on https://github.com/mcordts/cityscapesScripts
53+
CityscapesClass = namedtuple('CityscapesClass', ['name', 'id', 'train_id', 'category', 'category_id',
54+
'has_instances', 'ignore_in_eval', 'color'])
55+
56+
classes = [
57+
CityscapesClass('unlabeled', 0, 255, 'void', 0, False, True, (0, 0, 0)),
58+
CityscapesClass('ego vehicle', 1, 255, 'void', 0, False, True, (0, 0, 0)),
59+
CityscapesClass('rectification border', 2, 255, 'void', 0, False, True, (0, 0, 0)),
60+
CityscapesClass('out of roi', 3, 255, 'void', 0, False, True, (0, 0, 0)),
61+
CityscapesClass('static', 4, 255, 'void', 0, False, True, (0, 0, 0)),
62+
CityscapesClass('dynamic', 5, 255, 'void', 0, False, True, (111, 74, 0)),
63+
CityscapesClass('ground', 6, 255, 'void', 0, False, True, (81, 0, 81)),
64+
CityscapesClass('road', 7, 0, 'flat', 1, False, False, (128, 64, 128)),
65+
CityscapesClass('sidewalk', 8, 1, 'flat', 1, False, False, (244, 35, 232)),
66+
CityscapesClass('parking', 9, 255, 'flat', 1, False, True, (250, 170, 160)),
67+
CityscapesClass('rail track', 10, 255, 'flat', 1, False, True, (230, 150, 140)),
68+
CityscapesClass('building', 11, 2, 'construction', 2, False, False, (70, 70, 70)),
69+
CityscapesClass('wall', 12, 3, 'construction', 2, False, False, (102, 102, 156)),
70+
CityscapesClass('fence', 13, 4, 'construction', 2, False, False, (190, 153, 153)),
71+
CityscapesClass('guard rail', 14, 255, 'construction', 2, False, True, (180, 165, 180)),
72+
CityscapesClass('bridge', 15, 255, 'construction', 2, False, True, (150, 100, 100)),
73+
CityscapesClass('tunnel', 16, 255, 'construction', 2, False, True, (150, 120, 90)),
74+
CityscapesClass('pole', 17, 5, 'object', 3, False, False, (153, 153, 153)),
75+
CityscapesClass('polegroup', 18, 255, 'object', 3, False, True, (153, 153, 153)),
76+
CityscapesClass('traffic light', 19, 6, 'object', 3, False, False, (250, 170, 30)),
77+
CityscapesClass('traffic sign', 20, 7, 'object', 3, False, False, (220, 220, 0)),
78+
CityscapesClass('vegetation', 21, 8, 'nature', 4, False, False, (107, 142, 35)),
79+
CityscapesClass('terrain', 22, 9, 'nature', 4, False, False, (152, 251, 152)),
80+
CityscapesClass('sky', 23, 10, 'sky', 5, False, False, (70, 130, 180)),
81+
CityscapesClass('person', 24, 11, 'human', 6, True, False, (220, 20, 60)),
82+
CityscapesClass('rider', 25, 12, 'human', 6, True, False, (255, 0, 0)),
83+
CityscapesClass('car', 26, 13, 'vehicle', 7, True, False, (0, 0, 142)),
84+
CityscapesClass('truck', 27, 14, 'vehicle', 7, True, False, (0, 0, 70)),
85+
CityscapesClass('bus', 28, 15, 'vehicle', 7, True, False, (0, 60, 100)),
86+
CityscapesClass('caravan', 29, 255, 'vehicle', 7, True, True, (0, 0, 90)),
87+
CityscapesClass('trailer', 30, 255, 'vehicle', 7, True, True, (0, 0, 110)),
88+
CityscapesClass('train', 31, 16, 'vehicle', 7, True, False, (0, 80, 100)),
89+
CityscapesClass('motorcycle', 32, 17, 'vehicle', 7, True, False, (0, 0, 230)),
90+
CityscapesClass('bicycle', 33, 18, 'vehicle', 7, True, False, (119, 11, 32)),
91+
CityscapesClass('license plate', -1, -1, 'vehicle', 7, False, True, (0, 0, 142)),
92+
]
93+
5194
def __init__(self, root, split='train', mode='fine', target_type='instance',
5295
transform=None, target_transform=None):
5396
self.root = os.path.expanduser(root)

0 commit comments

Comments
 (0)