Giter Club home page Giter Club logo

my-pytorch_yolov1's Introduction

PyTorch_YOLOv1

这个YOLOv1项目是配合我在知乎专栏上连载的《YOLO入门教程》而创建的:

https://zhuanlan.zhihu.com/c_1364967262269693952

感兴趣的小伙伴可以配合着上面的专栏来一起学习,入门目标检测。

另外,这个项目在小batch size 的情况,如batch size=8,可能会出现nan的问题,经过其他伙伴的调试, 在batch size=8时,可以把学习率lr跳到2e-4,兴许就可以稳定炼丹啦! 我自己训练的时候,batch size 设置为16或32,比较大,所以训练稳定。

当然,这里也诚挚推荐我的另一个YOLO项目,训练更加稳定,性能更好呦

https://github.com/yjh0410/PyTorch_YOLO-Family

配置环境

  • 我们建议使用anaconda来创建虚拟环境:
conda create -n yolo python=3.6
  • 然后,激活虚拟环境:
conda activate yolo
  • 配置环境: 运行下方的命令即可一键配置相关的深度学习环境:
pip install -r requirements.txt 

网络结构

  • Backbone: ResNet-18
  • Neck: SPP

训练所使用的tricks

  • 多尺度训练 (multi-scale)

数据集

VOC2007与VOC2012数据集

读者可以从下面的百度网盘链接来下载VOC2007和VOC2012数据集

链接:https://pan.baidu.com/s/1qClcQXSXjP8FEnsP_RrZjg

提取码:zrcj

读者会获得 VOCdevkit.zip压缩包, 分别包含 VOCdevkit/VOC2007VOCdevkit/VOC2012两个文件夹,分别是VOC2007数据集和VOC2012数据集.

实验结果

VOC2007 test 测试集

Model Input size mAP Weight
YOLOv1 320×320 64.6 -
YOLOv1 416×416 69.6 -
YOLOv1 512×512 72.2 -
YOLOv1 608×608 73.3 github

大家可以点击表格中的github来下载模型权重文件。

训练模型

运行下方的命令可开始在VOC数据集上进行训练:

python train.py \
        --cuda \
        -d voc \
        -ms \
        --batch_size 32 \
        --lr 0.001 \
        --max_epoch 150 \
        --lr_epoch 90 120 \

测试模型

运行下方的命令可开始在VOC数据集上进行训练:

python test.py \
        --cuda \
        -d voc \
        -size 416 \
        --weight path/to/weight \

验证模型

运行下方的命令可开始在VOC数据集上进行训练:

python eval.py \
        --cuda \
        -d voc \
        -size 416 \
        --weight path/to/weight \

my-pytorch_yolov1's People

Contributors

adenialzz avatar hit-k544 avatar yjh0410 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.