cityscapesScripts的Python项目详细描述
#城市景观数据集
此存储库包含用于检查、准备和评估城市景观数据集的脚本。这个大规模的数据集包含50个不同城市的街道场景中记录的各种立体视频序列,除了一组较大的20千个弱注释帧之外,还具有5千帧的高质量像素级注释。
详情和下载请访问:www.cityscapes-dataset.net
##数据集结构
城市景观数据集的文件夹结构如下:
< TT>{root}/{type}{video}/{split}/{city}/{city}{seq:0>;6}{frame:0>;6}{type}{ext}
< DL>
各个元素的含义是: > UL>root城市景观数据集的根文件夹。我们的许多脚本都会检查指向此文件夹的环境变量cityscapes数据集是否存在,并将其用作默认选择。键入数据的类型/形式,例如gtfine表示精细的地面真值,或leftimg8bit表示左8位图像。拆分拆分,即train/val/test/train_extra/demovideo。请注意,并非所有拆分都存在所有类型的数据。因此,不要惊讶于偶尔会发现空文件夹。城市记录这部分数据的城市。seq使用6位数字的序列号。帧使用6位数字的帧号。注意,在一些城市中,虽然记录的序列很长,但很少,而在一些城市中,记录的序列很短,其中只有第19帧被注释。ext文件的扩展名和可选的后缀,例如对于地面真值文件,\polygons.json类型的可能值
> UL>gtfine精细注释、2975次培训、500次验证和1525次测试。这种类型的注释用于验证、测试和可选的培训。注释使用包含各个多边形的json文件进行编码。此外,我们还提供png图像,其中像素值编码标签。有关详细信息,请参阅helpers/labels.py和preparation中的脚本。gtcoarse粗注释,可用于所有训练和验证图像以及另一组19998个训练图像(train_extra)。这些注释可以与gtfine一起使用,也可以单独用于弱监督设置中的培训。gtbboxcitypersons行人边界框注释,可用于所有培训和验证图像。请参阅helpers/labels\u citypersons.py以及[citypersons出版物(zhang等人,cvpr'17)](https://bitbucket.org/shanshanzhang/citypersons)了解更多详细信息。边界框的四个值是(x,y,w,h),其中(x,y)是其左上角,(w,h)是其宽度和高度。leftimg8bit8位LDR格式的左图像。这些是标准的带注释的图像。leftimg8bit\u模糊左侧图像为8位LDR格式,人脸和车牌模糊。请在原始图像上计算结果,但使用模糊图像进行可视化。感谢[mapillary](https://www.mapillary.com/)模糊图像。leftimg16位16位HDR格式的左图像。这些图像提供每像素16位的颜色深度,并包含更多信息,特别是在场景的非常暗或明亮的部分。警告:图像存储为16位PNG,这是非标准的,并非所有库都支持。右图8位8位LDR格式的右立体视图。右侧img16位16位HDR格式的右侧立体视图。时间戳以ns为单位记录的时间。每个序列的第一帧的时间戳始终为0。视差预计算的视差深度图。要获得视差值,请使用p>;0:d=(float(p)-1)计算每个像素p。/256.,而p=0是无效的测量值。警告:图像存储为16位PNG,这是非标准的,并非所有库都支持。摄像机内部和外部摄像机校准。有关详细信息,请参阅[cscalibration.pdf](docs/cscalibration.pdf)车辆车辆里程表、GPS坐标和车外温度。有关详细信息,请参阅[cscalibration.pdf](docs/cscalibration.pdf)随着时间的推移,可能会添加更多类型,而且并非所有类型最初都可用。如果您需要任何其他元数据来运行您的方法,请告诉我们。
< DL>拆分的可能值
> UL>train通常用于训练,包含2975个带有精细和粗略注释的图像val应用于验证超参数,包含500个带有精细和粗糙注释的图像。也可用于培训。测试用于在我们的评估服务器上进行测试。注释是不公开的,但为了方便起见,我们包括了ego载体注释和校正边界注释。train_extra可以选择用于训练,包含19998个带有粗略注释的图像演示视频可用于定性评估的视频序列,这些视频没有可用的注释##脚本
< DL>在名为scripts的文件夹中,数据集包含多个脚本 > UL>帮助程序其他脚本包含的帮助程序文件查看器查看图像和批注准备将基本事实注释转换为适合您的方法的格式评估验证您的方法注释用于标记数据集的注释工具请注意,所有文件的顶部都有一个小文档。最重要的文件 > UL>helpers/labels.py中心文件,定义所有语义类的id,并提供各种类属性之间的映射。helpers/labels\u citypersons.py定义所有citypersons行人类的id并提供各种类属性之间的映射的文件。查看器/cityscapesviewer.py查看图像并覆盖批注。准备/createTrainidLabelImgs.py将多边形格式的注释转换为带有标签ID的PNG图像,其中像素编码"序列ID",可以在labels.py中定义。
准备/createTrainidInstanceImgs.py将多边形格式的注释转换为具有实例ID的PNG图像,其中像素编码由"序列ID"组成的实例ID。准备/createpanopticimgs.py将标准PNG格式的注释转换为[CoCo全景分割格式](http://cocodataset.org/format data)。evaluation/evalpixellevelsemanticlabeling.py脚本来评估验证集上像素级的语义标记结果。此脚本还用于评估测试集上的结果。评估/评估评估velessmanticlabeling.py用于评估验证集上实例级语义标记结果的脚本。此脚本还用于评估测试集上的结果。evaluation/evalPanopticSemanticLabeling.py脚本来评估验证集上的全景分割结果。此脚本还用于评估测试集上的结果。setup.pyruncythonize_eval=python setup.py build_ext–inplace启用cython插件以加快计算速度。只为ubuntu测试。脚本可以通过PIP安装,即从脚本中安装:
sudo pip安装。
这将脚本作为名为cityscapesscripts的python模块安装,并公开以下工具,有关说明,请参见上文:
-csviewer
-cslabeltool
-csevalpixellevelsemanticlabeling
-csevalinstancelevelsemanticlabeling
-cspanopticsemanticlabelling
-cscreatetraindlabelimgs
-cscreatetrainidinstanceimgs
-cs创建全景图
请注意,对于图形工具,您还需要安装:
sudo apt install python tk python-qt4
##评估
在测试集上测试方法后,请在提供的测试图像上运行方法并提交结果:
www.cityscapes-dataset.net/提交/
对于语义标记,我们需要结果格式来匹配名为labelids的标签图像的格式。
因此,代码应该生成图像,其中每个像素的值对应于labels.py中定义的类id。
请注意,我们的评估脚本包含在scripts文件夹中,可用于在验证集上测试您的方法。
有关提交过程的详细信息,请访问我们的网站。
##联系人
如有任何问题、建议或意见,请随时与我们联系:
欢迎加入QQ群-->: 979659372
推荐PyPI第三方库