近期刚好跑CenterNet有这个需求
但是手动将VOC转成COCO是一件麻烦的过程, 网上的教程零零落落的
即使你这次转成功了, 下次如果还有需求, 估计又得找教程
于是就整合了一些开源的代码
编成一份可以几乎是一条指令就快速生成转成COCO数据集的
目前只有for目标检测转换的部分, 其余的任务我尚未接触过
在这边安利一下VOC_to_COCO
使用文档如下
VOC_to_COCO
update 2019.10.5
最简单的VOC数据集转换为COCO数据集方式
修改路径后, 只要一条指令就能转换
任何报错请issue我
-
请先确认你的VOC如下面的格式
VOC |-- Annotations |-- all xml files |-- JPEGImages |-- all your samples |-- ImageSets |-- 。。。。
-
克隆本仓到你指定的地址
git clone https://github.com/Stephenfang51/VOC_to_COCO
-
cd 到VOC_to_COCO 编辑 voc_to_coco.py修改以下3点
- 设定验证集样本数, 如果设定为100, 则将从你的样本随机提取100个作为验证集
- 设定测试集样本数
- VOC Annotations 资料夹路径(最后面的"/"务必加上, 否则报错)
例如
val_files_num = 100 test_files_num = 100 voc_annotations = '././VOC/Annotations/' #remember to modify the path
修改到这边已经结束
-
执行生成, 确认是python3版本以上解释器, 否则报错
python3 voc_to_coco.py
-
COCO 数据集已经生成与VOC同一主目录下
就是这么简单 !