参考文档

  1. https://blog.csdn.net/weixin_35653315/article/details/71028523 Pascal VOC 数据集介绍
  2. https://blog.csdn.net/zhangjunbob/article/details/52769381 PASCAL VOC数据集分析
  3. https://blog.csdn.net/yiweibian/article/details/70208706 Mxnet(3)-SSD训练自己的数据

安装依赖库

因为ssd例程python代码依赖于cv2、matplotlib和numpy等模块,所以需要先安装这些模块

sudo apt-get install python-opencv python-matplotlib python-numpy

准备训练集

选定需要检测的目标类型:

  • [x] bicycle
  • [x] tricycle
  • [x] motorbike
  • [x] car
  • [x] bus
  • [x] minibus
  • [x] truck
  • [ ] person
  • [ ] car-back
  • [ ] bus-back
  • [ ] minibus-back
  • [ ] truck-back
  • [ ] van-back

检测场景:

  • [x] 停车场

检测方向:

  • [x] 车头
#!/bin/bash

# 读取所有图片文件,并保存文件列表到文本文件中
rm test.txt -rf
rm trainval_temp.txt -rf
rm trainval.txt -rf
find ../../JPEGImages -name *.jpg | cut -d '/' -f4 | cut -d '.' -f1 >> trainval_temp.txt

# 进行图片列表随机排序
shuf trainval_temp.txt -o trainval.txt

# 截取部分图片保存到测试集列表文件中
head -1000 trainval.txt >> test.txt
sed -i '1,1000d' trainval.txt

rm trainval_temp.txt -rf

创建软链接到ssd/data目录

ln -s /opt/xyl/data/ /opt/xyl/incubator-mxnet/example/ssd/data/VOCdevkit

修改tools/prepare_pascal.sh



修改目标检测的分类类别

对应文件在mxnet-path/example/ssd/dataset/names/pascal_voc.names,内容和上面训练集的类别对应:

bicycle
tricycle
motorbike
car
bus
minibus
truck

生成rec数据文件



进行训练

转换训练模型到部署模型

cd /opt/xyl/incubator-mxnet/example/ssd
python deploy.py --epoch 240 --network=resnet50 --num-class=7

注意:deploy.py的参数需要根据自己的训练情况进行设置

C++部署测试

results matching ""

    No results matching ""