制作VOC类型数据集,生成txt,生成lmdb

时间:2021-10-30 03:57:23

前言:数据样式参照PASCALVOC

需要文件链接:http://pan.baidu.com/s/1gfeHDMN 密码:o7h0 

链接:http://pan.baidu.com/s/1nve53Wd 密码:jbtt

一:生成txt

1:搜集图片,或者视频数据等,利用标注工具,形成图片信息以及注释信息。

标注工具,自己编写的,效果如下:

制作VOC类型数据集,生成txt,生成lmdb


2:通过xml文件以及图片信息形成ImageSets/Main/trainval.txt,test.txt,val.txt,trainval.txt

我将上述生成的JPEGImages与Annotations目录放入VOC2007目录下(替换了),然后新建ImageSets\Main目录

如下:

制作VOC类型数据集,生成txt,生成lmdb

运行makefile文件会在ImageSets\Main下生成如下文件:

制作VOC类型数据集,生成txt,生成lmdb

制作VOC类型数据集,生成txt,生成lmdb内容大概如下:

制作VOC类型数据集,生成txt,生成lmdb


到此步骤是可以拿去训练faster rcnn等网络了。但是工程化的话,生成txt文档还是不行的,下面接受生成lmdb的方法。

二:生成lmdb(仿照SSD) 

因为此步骤需要用到SSD\tools下的create_annoset.py文件,所以我直接在SSD目录下进行对应的操作。项目目录如下,绿色的理解就行:

制作VOC类型数据集,生成txt,生成lmdb制作VOC类型数据集,生成txt,生成lmdb

VOC07下面有这样几个文件:

制作VOC类型数据集,生成txt,生成lmdb

1:create_list.sh生成trainval.txt,,test_size_name.txt,test.txt

create_list.sh主要用来生成trainval.txt,test.txt,将文件名和配置文件写入同一文件。

运行create_list.sh

制作VOC类型数据集,生成txt,生成lmdb

2:编写labelmap_voc.prototxt。

其中labelmap_vox.prototxt是类别标签,如下,根据实际情况,增加item

制作VOC类型数据集,生成txt,生成lmdb

3:create_data.sh生成lmdb文件。

运行create_data.sh;生成如下:

制作VOC类型数据集,生成txt,生成lmdb

制作完成!