Code Monkey home page Code Monkey logo

mxnet-yolo's Introduction

YOLO-v2: Real-Time Object Detection

Still under development. 71 mAP(darknet) and 74mAP(resnet50) on VOC2007 achieved so far.

This is a pre-released version.

What's new

This repo is now deprecated, I am migrating to the latest Gluon-CV which is more user friendly and has a lot more algorithms in development.

  • Pretrained YOLOv3 models which achiveve 81%+ mAP on VOC and near 37% mAP on COCO: Model Zoo.

  • Object Detection model tutorials.

This repo will not receive active development, however, you can continue use it with the mxnet 1.1.0(probably 1.2.0).

Disclaimer

This is a re-implementation of original yolo v2 which is based on darknet. The arXiv paper is available here.

Demo

demo1

Getting started

  • Build from source, this is required because this example is not merged, some custom operators are not presented in official MXNet. Instructions
  • Install required packages: cv2, matplotlib

Try the demo

  • Download the pretrained model(darknet as backbone), or this model(resnet50 as backbone) and extract to model/ directory.
  • Run
# cd /path/to/mxnet-yolo
python demo.py --cpu
# available options
python demo.py -h

Train the model

cd /path/to/where_you_store_datasets/
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
# Extract the data.
tar -xvf VOCtrainval_11-May-2012.tar
tar -xvf VOCtrainval_06-Nov-2007.tar
tar -xvf VOCtest_06-Nov-2007.tar
ln -s /path/to/VOCdevkit /path/to/mxnet-yolo/data/VOCdevkit
  • Create packed binary file for faster training
# cd /path/to/mxnet-ssd
bash tools/prepare_pascal.sh
# or if you are using windows
python tools/prepare_dataset.py --dataset pascal --year 2007,2012 --set trainval --target ./data/train.lst
python tools/prepare_dataset.py --dataset pascal --year 2007 --set test --target ./data/val.lst --shuffle False
  • Start training
python train.py --gpus 0,1,2,3 --epoch 0
# choose different networks, such as resnet50_yolo
python train.py --gpus 0,1,2,3 --network resnet50_yolo --data-shape 416 --pretrained model/resnet-50 --epoch 0
# see advanced arguments for training
python train.py -h

mxnet-yolo's People

Contributors

liumusicforever avatar zhreshold 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.