美文网首页
查看 cityscapes 数据集图片格式

查看 cityscapes 数据集图片格式

作者: 谢小帅 | 来源:发表于2019-06-24 20:46 被阅读0次

    单个样本 4 个数据:[color, instanceIds, labelIds, polygons]

    查看图片重包含的 种类 id实例 id

    import cv2
    import os
    import numpy as np
    
    ROOT = '/nfs/xs/Cityscapes/gtFine/train/bremen'
    
    color_img = cv2.imread(os.path.join(ROOT, 'bremen_000000_000019_gtFine_color.png'))
    instanceId_img = cv2.imread(os.path.join(ROOT, 'bremen_000000_000019_gtFine_instanceIds.png'), cv2.IMREAD_ANYDEPTH)
    labelId_img = cv2.imread(os.path.join(ROOT, 'bremen_000000_000019_gtFine_labelIds.png'), cv2.IMREAD_ANYDEPTH)
    
    print(color_img.shape)  # (1024, 2048, 3)
    
    # np img -> tuple list
    colors = [tuple(color_img[i][j]) for i in range(1024) for j in range(2048)]
    print(len(colors))  # 2097152
    colors = set(colors)  # remove duplicate colors
    print(len(colors))  # 11
    print(colors)
    # {(153, 153, 153), (142, 0, 0), (0, 220, 220), (232, 35, 244), (70, 70, 70),
    # (152, 251, 152), (0, 0, 0), (128, 64, 128), (35, 142, 107), (32, 11, 119), (180, 130, 70)}
    
    
    print(instanceId_img.shape)  # (1024, 2048)
    print(np.unique(instanceId_img))
    # [ 1  3  4  7  8 11 17 20 21 22 23
    # 26000 26001 26002 26003   # 26, 4 instances
    # 33000 33001 33002]        # 33, 3 instances
    # x1000 can clearly show on depth_16 image
    
    print(labelId_img.shape)  # (1024, 2048)
    print(np.unique(labelId_img))
    # [ 1  3  4  7  8 11 17 20 21 22 23 26 33]
    

    instanceId 在处理多个实例时,先将 classId ×10,再累计 +1,好处是 ×10 后的实例灰度值更大,在 depth_16 上更明显。

    bremen_000000_000019_gtFine_instanceIds.png

    Cityscapes 原有 labels

    labels = [
        #       name                     id    trainId   category            catId     hasInstances   ignoreInEval   color
        Label(  'unlabeled'            ,  0 ,      255 , 'void'            , 0       , False        , True         , (  0,  0,  0) ),
        Label(  'ego vehicle'          ,  1 ,      255 , 'void'            , 0       , False        , True         , (  0,  0,  0) ),
        Label(  'rectification border' ,  2 ,      255 , 'void'            , 0       , False        , True         , (  0,  0,  0) ),
        Label(  'out of roi'           ,  3 ,      255 , 'void'            , 0       , False        , True         , (  0,  0,  0) ),
        Label(  'static'               ,  4 ,      255 , 'void'            , 0       , False        , True         , (  0,  0,  0) ),
        Label(  'dynamic'              ,  5 ,      255 , 'void'            , 0       , False        , True         , (111, 74,  0) ),
        Label(  'ground'               ,  6 ,      255 , 'void'            , 0       , False        , True         , ( 81,  0, 81) ),
        Label(  'road'                 ,  7 ,        0 , 'flat'            , 1       , False        , False        , (128, 64,128) ),
        Label(  'sidewalk'             ,  8 ,        1 , 'flat'            , 1       , False        , False        , (244, 35,232) ),
        Label(  'parking'              ,  9 ,      255 , 'flat'            , 1       , False        , True         , (250,170,160) ),
        Label(  'rail track'           , 10 ,      255 , 'flat'            , 1       , False        , True         , (230,150,140) ),
        Label(  'building'             , 11 ,        2 , 'construction'    , 2       , False        , False        , ( 70, 70, 70) ),
        Label(  'wall'                 , 12 ,        3 , 'construction'    , 2       , False        , False        , (102,102,156) ),
        Label(  'fence'                , 13 ,        4 , 'construction'    , 2       , False        , False        , (190,153,153) ),
        Label(  'guard rail'           , 14 ,      255 , 'construction'    , 2       , False        , True         , (180,165,180) ),
        Label(  'bridge'               , 15 ,      255 , 'construction'    , 2       , False        , True         , (150,100,100) ),
        Label(  'tunnel'               , 16 ,      255 , 'construction'    , 2       , False        , True         , (150,120, 90) ),
        Label(  'pole'                 , 17 ,        5 , 'object'          , 3       , False        , False        , (153,153,153) ),
        Label(  'polegroup'            , 18 ,      255 , 'object'          , 3       , False        , True         , (153,153,153) ),
        Label(  'traffic light'        , 19 ,        6 , 'object'          , 3       , False        , False        , (250,170, 30) ),
        Label(  'traffic sign'         , 20 ,        7 , 'object'          , 3       , False        , False        , (220,220,  0) ),
        Label(  'vegetation'           , 21 ,        8 , 'nature'          , 4       , False        , False        , (107,142, 35) ),
        Label(  'terrain'              , 22 ,        9 , 'nature'          , 4       , False        , False        , (152,251,152) ),
        Label(  'sky'                  , 23 ,       10 , 'sky'             , 5       , False        , False        , ( 70,130,180) ),
        Label(  'person'               , 24 ,       11 , 'human'           , 6       , True         , False        , (220, 20, 60) ),
        Label(  'rider'                , 25 ,       12 , 'human'           , 6       , True         , False        , (255,  0,  0) ),
        Label(  'car'                  , 26 ,       13 , 'vehicle'         , 7       , True         , False        , (  0,  0,142) ),
        Label(  'truck'                , 27 ,       14 , 'vehicle'         , 7       , True         , False        , (  0,  0, 70) ),
        Label(  'bus'                  , 28 ,       15 , 'vehicle'         , 7       , True         , False        , (  0, 60,100) ),
        Label(  'caravan'              , 29 ,      255 , 'vehicle'         , 7       , True         , True         , (  0,  0, 90) ),
        Label(  'trailer'              , 30 ,      255 , 'vehicle'         , 7       , True         , True         , (  0,  0,110) ),
        Label(  'train'                , 31 ,       16 , 'vehicle'         , 7       , True         , False        , (  0, 80,100) ),
        Label(  'motorcycle'           , 32 ,       17 , 'vehicle'         , 7       , True         , False        , (  0,  0,230) ),
        Label(  'bicycle'              , 33 ,       18 , 'vehicle'         , 7       , True         , False        , (119, 11, 32) ),
        Label(  'license plate'        , -1 ,       -1 , 'vehicle'         , 7       , False        , True         , (  0,  0,142) ),
    ]
    

    相关文章

      网友评论

          本文标题:查看 cityscapes 数据集图片格式

          本文链接:https://www.haomeiwen.com/subject/jmdaqctx.html