ssd训练自己的数据集

来源:互联网 发布:淘宝图片盾保护入口 编辑:程序博客网 时间:2024/06/07 10:06

1.准备数据集   利用labelimg 工具得到图片和对应的xml文件

然后将数据及利用编程得到train,trainval,val,test等txt文件,其中存储的是图片的名字没有后缀的,例如图片名字为1.jpg则其中存储的是1,每个图片存储一行

2.将数据集放入一个文件夹中例如~/data/VOCdevkit文件夹   然后在该文件夹下创建几个文件夹如下:

cd data/VOCdevkitmkdir mydatacd mydatamkdir Annotationsmkdir ImageSetsmkdir JPEGImagescd ImageSetsmkdir Layoutmkdir Mainmkdir Segmentation

将准备的图片数据移动到JPEGImages中,将xml文件移动到Annotations文件夹下

将上面得到的所有txt文本文件存储在Main文件夹下

数据准备完毕


3.进行数据转化

将caffe-ssd下的data下的VOC0712中的3个文件(create_list.sh,create_data.sh,labelmap_voc.prototxt)复制下来然后在data目录下创建个文件夹命名为mydata,放入mydata文件夹下然后修改其中的文件

修改create_list.sh

for name in VOC2007 VOC2012: 

修改至

for name in mydata:        #mydata为上面创建的文件夹名字,里面存储的是数据图片和xml等文件夹


修改create_data.sh   修改其中的路径即可

至于最后一个prototxt文件表示的是类别标签 然后根据需要进行修改即可

然后在caffe-ssd/examples/下创建个mydata用来存储lmdb数据

然后执行

1.create_list.sh

2.create_data.sh

至此创建lmdb数据结束


4.训练数据


修改caffe-ssd/examples/ssd/ssd_pascal.py文件将其中的  类别  一些文件名称  还有测试图片数目修改即可

然后执行该Python文件即可训练


原创粉丝点击