之前做的一个demo,我想想还是分享出来吧。
1.准备工作
首先你可以参考我的另外一篇博客搭建自己的深度学习平台。
《深度学习完全攻略!(连载六:CUDA10.1+tensorflow+VS+anaconda3安装)》
不用多说了,记得安装VS,我安装的时VS2015.
进入anaconda promopt,执行对应的命令,安装依赖包
activate tensorflow-gpu
pip install cython
pip install python-opencv
pip install easydict
2.数据收集与使用
2.1 去这个地方下载别人写好的基于TF的代码。我不会写,就算写出来,也不一定可以用。
https://github.com/dBeker/Faster-RCNN-TensorFlow-Python3
2.2 在下载好的文件中进入,data\coco\PythonAPI,在命令行执行:
python setup.py build_ext --inplace
python setup.py build_ext install
2.3 下载VOC2007数据集,可以用我的,也可以自己去下载。
http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar
2.4 同时选中三个文件,右键解压缩,则会解压到同一个文件夹中,把此文件夹命名为VOCDevkit2007,并剪切到代码目录,/data下面。
2.5 在/data/目录下新建imagenet_weights文件夹,将与训练模型放到里面。预训练模型可以用我的。
2.6 将VOCDevkit2007数据集替换成自己的,主要涉及到VOCDevkit2007/VOC2007中三个部分的修改。可以用我的,已经收集了很多老鼠图片,也做了标注。
2.6.1 将收集好的图片放在JPEGImages中,命名格式统一为000000.jpg,往后推
2.6.2 将对应的标注文件放在Annotations中,命名格式统一为000000.xml,跟图片名字是对应的。
2.6.3 修改VOCDevkit2007\VOC2007\ImageSets\Main里面的txt文件。一般trainval大概占整个数据集的50%,test大概占整个数据集的50%;train大概是trainval的50%,val大概是trainval的50%。像我的数据集,数量就很少,所以test和val我用的数量就很少。
2.7 修改部分代码,适应自己的需求。
2.7.1 找到lib\datasets\pascal_voc.py文件,将里面的类别修改为自己的,比如说,我将类别修改为self._classes = ('__background__','mouse')
2.7.2 找到demo.py文件,做同样的修改。
2.8 开始训练,python train.py
2.9 将测试图片放在data\demo下,就可以运行python demo.py
我的部分运行结果。
有误识别的,我也没有调试。
我的数据集放在了百度云盘,有需要的,请公众号留邮箱。