一、 下载模型:https://download.csdn.net/download/OEMT_301/12506854
https://download.csdn.net/download/OEMT_301/12506844
二、 删除tfrecords_、train_model文件夹下所有文件
三、 准备数据集
1、将自己的图像拷贝到VOC2007\JPEGImages文件下,将标注的xml文件拷贝到VOC2007\Annotations文件下。
2、执行VOC2007文件下spilt.py,会在VOC2007\ImageSets\Main文件下生成4个txt文件。
3、修改datasets文件下的pascalvoc_common.py的26行标签内容
4、修改datasets文件下的pascalvoc_to_tfrecords.py
第67行SAMPLES_PER_FILES,该参数为多少个xml生成一个.tfrecords文件
第82行文件格式
5、执行tf_convert_data.py,完成会在tfrecords_文件下生成.tfrecord文件
四、 模型配置
1、 修改datasets文件下pascalvoc_2007.py
第50行NUM_CLASSES,该值为识别目标数
第30、36、42行的TRAIN_STATISTICS、TEST_STATISTICS、SPLITS_TO_SIZES的参数,其中TRAIN_STATISTICS中的person: (20, 20),第一个参数为图像数量,第二个为标签数量,这两个值都可以大于实际数量
2、 修改nets文件下ssd_vgg_300.py第96、97行的识别目标数+1
3、 修改eval_ssd_network.py第66行识别个数+1
4、 修改train_ssd_network.py文件
第27行数据格式为’NHWC’
第135行识别个数+1
第154行训练次数,这里可以随意设置一个数值,其中None为无限循环
5、 修改train_ssd_network.py文件第185-192行相应参数
6、 执行train_ssd_network.py,执行结果会保存在train_model文件下。
五、 利用自己模型进行识别
1、修改notebooks文件下demo_test.py第43行为对应模型数字
2、修改第60行显示阈值及重合度阈值
3、修改第108行识别图像
4、执行demo_test.py进行识别
六、 我这里训练样本和次数都不够,因此结果较差。
七、 参考:https://blog.csdn.net/zzz_cming/article/details/81131523