cityscape 数据集 mmsegmentation训练记录

项目场景:

MMSegmentation 是一个基于 PyTorch 的开源语义分割工具箱。它是 OpenMMLab 项目的一部分。

主分支与PyTorch 1.5+一起使用。


源码下载

训练源码地址:训练源码下载点这里
预处理脚本地址:cityscapesscripts
数据集下载:各大数据集,链接内有cityscape数据集,需有教育邮箱注册下载

安装

请参考get_started.md进行安装和dataset_prepare.md进行数据集准备。

问题描述

1.导入各类包的问题

mmcv说明文件有步骤;有个比较容易出错的就是脚本文件中导入包from要从给定的文件目录里导入,如下图
cityscape 数据集 mmsegmentation训练记录_第1张图片

2.图片格式转换(预处理)问题

在进行图片格式转换时,需先将数据集(gtFine、gtCoarse、leftImg8bit)与cityscapesscripts放至同一级目录下,否则会报错。如下:
cityscape 数据集 mmsegmentation训练记录_第2张图片
目录放好后,仅需要根据个人更改两个文件:cityscape 数据集 mmsegmentation训练记录_第3张图片
在lable.py里,可以将自己不感兴趣的trainId设为255,ignoreInEval设为True即可更改分类的数量:

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) ),

]
`
在createTrainIdLabelImgs.py中,将cityscapesPath设为该文件的上两级目录,如D:**\cityscapesscripts-master

3.error: unrecognized arguments:

在右上角点击edit configuration里面填写了parameters,但是在代码里把这个参数注释掉后就会无法识别。

总结

目前整理到的就这些,有什么疑问可以评论区互相探讨,一起进步呀!

附宝藏up主git网址:GitHub

你可能感兴趣的:(复现,网络,安全,windows,python)