美文网首页深度学习的各种骚套路机器学习
faster-RCNN_TF训练自己的数据集

faster-RCNN_TF训练自己的数据集

作者: 大海龟啦啦啦 | 来源:发表于2020-06-24 20:57 被阅读0次

我使用的faster-RCNN的代码是最原始的一个python版本(https://github.com/smallcorgi/Faster-RCNN_TF
给自己标记数据的工具为LabelImg(https://github.com/tzutalin/labelImg),关于怎么用这个工具制作自己的数据集,参见(https://www.jianshu.com/p/4451e6cc1d67

因为俺也是初学者嘛,不怎么会改代码,因此我把自己的数据直接处理成了VOC2007的结构,这样我只需要去修改classes的类别,不用担心文件的路径。

修改的文件

  1. Faster-RCNN_TF/lib/datasets/pascal_voc.py

    修改红色的地方,可以把其中的类改成自己定义的那些类,但是第一行的background不能动,那个相当于是背景类。
    如果你想强行来训练PNG图片的话,就把图中黄色圈圈的jpg改成png
  2. Faster-RCNN_TF/lib/networks/VGGnet_train.py



    改成你的类别数 + 1,因为有一个背景类别。

  3. Faster-RCNN_TF/lib/networks/VGGnet_test.py



    同上进行修改。

  4. Faster-RCNN_TF/tools/demo.py



    同1中进行修改即可

注:修改完了之后要删除修改的文件对应的pyc编译文件

训练自己的数据

训练前要把官方的数据替换掉,如果你拿原始数据训练过,还需要把load的数据和模型删掉。
需要删除的文件在这三个目录下面:

Faster-RCNN_TF/output/faster_rcnn_end2end/voc_2007_trainval/
Faster-RCNN_TF/data/cache/
Faster-RCNN_TF/data/VOCdevkit2007/annotations_cache/

准备进行训练

进入Faster-RCNN_TF/lib目录make一下,再进入Faster-RCNN_TF目录执行

./experiments/scripts/faster_rcnn_end2end.sh gpu 0 VGG16 pascal_voc

训练到最后会报错,提示 --weights: expected one argument, 这时候需要添加我们训练好的模型路径。在训练阶段,这个问题可以通过修改shell脚本faster_rcnn_end2end.sh来解决,做如下修改:

--weights ${NET_FINAL} \
修改为
--weights output/faster_rcnn_end2end/voc_2007_trainval/VGGnet_fast_rcnn_iter_70000.ckpt \

这样即可完成我们自己数据集的训练和测试!!

相关文章

  • faster-RCNN_TF训练自己的数据集

    我使用的faster-RCNN的代码是最原始的一个python版本(https://github.com/smal...

  • TX2 +caffe +ssd/ubuntu16.04+caff

    1.SSD安装及训练自己的数据集 - CSDN博客 2.caffe-SSD训练自己的数据集 - CSDN博客 3....

  • CS231N学习记录

    数据集:训练集+验证集+测试集 交叉验证:当训练数据太小时,为了更好地利用数据,那么将训练数据集划分成n份,其中n...

  • sklearn学习 — 数据集

    sklearn数据集 1. 数据集的划分 训练集 : (占数据集比重高) 用于训练,构建模型 测试集 : 在模型...

  • 神经网络优化1

    数据划分 数据集分类 通常会将数据集分层三类: 训练集(Training Sets):采用训练集进行训练时,通过改...

  • 2.封装kNN算法之数据分割

    训练数据集与测试数据集 当我们拿到一组数据之后,通常我们需要把数据分割成两部分,即训练数据集和测试数据集。训练数据...

  • 洛杉矶房价预测

    制作训练集、评测集 交叉验证 数据有限,发挥数据本来的效率 数据的训练集合评测集的矛盾a. 如果用更多的数据去训练...

  • 基于Keras实现Kaggle2013--Dogs vs. Ca

    【下载数据集】 下载链接--百度网盘关于猫的部分数据集示例 【整理数据集】 将训练数据集分割成训练集、验证集、测试...

  • Caffe学习记录02

    用AlexNet训练自己的数据集 参考资料 本篇重点在于讲述如何讲自己的数据集转化为Caffe能用的数据集,至于具...

  • 高数没用?看看机器学习的公式,验证下微积分都还给老师没

    KNN分类 K-近邻算法,把数据集分为训练数据集和测试数据集,用训练数据集导入KNN,对于一个数据向量,计算此数据...

网友评论

    本文标题:faster-RCNN_TF训练自己的数据集

    本文链接:https://www.haomeiwen.com/subject/tmprfktx.html