caffe_ssd训练衣服鞋分类

数据制作教程:http://blog.****.net/sinat_30071459/article/details/50723212

github 训练教程:https://github.com/weiliu89/caffe/tree/ssd

我们使用的是xml文件

1、保存xml到Annotations

新建一个文件夹,名字为Annotations,将xml文件全部放到该文件夹里。

2、将训练图片放到JPEGImages

新建一个文件夹,名字为JPEGImages,将所有的训练图片放到该文件夹里。 

3、ImageSets\Main里的四个txt文件

新建文件夹,命名为ImageSets,在ImageSets里再新建文件夹,命名为Main。

我们可以通过xml名字(或图片名),生成四个txt文件,即:

caffe_ssd训练衣服鞋分类

Annotations2v3t_2w_New.m,matlab文件用来生成train.txt, test.txt, trainval.txt, val.txt 四个文件(注意路径更改)。

create_train_test_txt.pypython生成txt的代码,注意路径修改以及为python3代码。

caffe_ssd训练衣服鞋分类

txt文件中的内容为

1. 000005  

2. 000027  

3. 000028  

4. 000033  

5. 000042  

6. 000045  

7. 000048  

8. 000058  


即图片名字(无后缀),test.txt是测试集,train.txt是训练集,val.txt是验证集,trainval.txt是训练和验证集.VOC2007中,trainval大概是整个数据集的50%,test也大概是整个数据集的50%;train大概是trainval的50%,val大概是trainval的50%。

这四个txt放在ImageSets\Main中。

4、修改lablemap_voc.prototxt文件label标签与展示。

5、使用create_list_hlg_fashion.sh产生list文件(注意路径修改)

6、使用create_data_hlg_fashion.sh产生lmdb文件(注意路径修改)

7、ssd_pascal_hlg_people_up_down_full_back.py修改生成训练网络描述层

8、训练命令开始训练

结果

caffe_ssd训练衣服鞋分类caffe_ssd训练衣服鞋分类

注意:两个数据集不能轻易地混合使用训练,切记!标签必须在同一个xml文件内,不然会使在不同的数据集上不同的负样本,从而相互影响!否则会出现Missing true_pos label:的问题。

参考:http://www.jianshu.com/p/4eaedaeafcb4