All Projects → tztztztztz → Yolov2.pytorch

tztztztztz / Yolov2.pytorch

Licence: mit
YOLOv2 algorithm reimplementation with pytorch

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Yolov2.pytorch

Yolo2 Pytorch
YOLOv2 in PyTorch
Stars: ✭ 1,393 (+4393.55%)
Mutual labels:  yolo, darknet, yolo2
Pytorch Caffe Darknet Convert
convert between pytorch, caffe prototxt/weights and darknet cfg/weights
Stars: ✭ 867 (+2696.77%)
Mutual labels:  yolo, darknet, yolo2
Pytorch Yolo2
Convert https://pjreddie.com/darknet/yolo/ into pytorch
Stars: ✭ 941 (+2935.48%)
Mutual labels:  yolo, darknet, yolo2
Yolo 9000
YOLO9000: Better, Faster, Stronger - Real-Time Object Detection. 9000 classes!
Stars: ✭ 1,057 (+3309.68%)
Mutual labels:  yolo, darknet, yolo2
Tracking With Darkflow
Real-time people Multitracker using YOLO v2 and deep_sort with tensorflow
Stars: ✭ 515 (+1561.29%)
Mutual labels:  yolo, darknet, yolo2
Tracking-with-darkflow
Real-time people Multitracker using YOLO v2 and deep_sort with tensorflow
Stars: ✭ 522 (+1583.87%)
Mutual labels:  yolo, darknet, yolo2
VideoRecognition-realtime-autotrainer-alerts
State of the art object detection in real-time using YOLOV3 algorithm. Augmented with a process that allows easy training of the classifier as a plug & play solution . Provides alert if an item in an alert list is detected.
Stars: ✭ 36 (+16.13%)
Mutual labels:  yolo, darknet, yolo2
DarkMark
Marking up images for use with Darknet.
Stars: ✭ 62 (+100%)
Mutual labels:  yolo, darknet
MXNet-YOLO
mxnet implementation of yolo and darknet2mxnet converter
Stars: ✭ 17 (-45.16%)
Mutual labels:  darknet, yolo2
Yolo annotation tool
Annotation tool for YOLO in opencv
Stars: ✭ 17 (-45.16%)
Mutual labels:  yolo, darknet
Alturos.yolo
C# Yolo Darknet Wrapper (real-time object detection)
Stars: ✭ 308 (+893.55%)
Mutual labels:  yolo, yolo2
live-cctv
To detect any reasonable change in a live cctv to avoid large storage of data. Once, we notice a change, our goal would be track that object or person causing it. We would be using Computer vision concepts. Our major focus will be on Deep Learning and will try to add as many features in the process.
Stars: ✭ 23 (-25.81%)
Mutual labels:  yolo, darknet
darknet2caffe
Conversion of yolo from DarkNet to Caffe
Stars: ✭ 25 (-19.35%)
Mutual labels:  yolo, darknet
object-tracking
Multiple Object Tracking System in Keras + (Detection Network - YOLO)
Stars: ✭ 89 (+187.1%)
Mutual labels:  yolo, darknet
DarkHelp
C++ wrapper library for Darknet
Stars: ✭ 65 (+109.68%)
Mutual labels:  yolo, darknet
Node Yolo
Node bindings for YOLO/Darknet image recognition library
Stars: ✭ 364 (+1074.19%)
Mutual labels:  yolo, darknet
darknet ros
Robotics Operating System Package for Yolo v3 based on darknet with optimized tracking using Kalman Filter and Optical Flow.
Stars: ✭ 51 (+64.52%)
Mutual labels:  yolo, darknet
Tensorflow 2.x Yolov3
YOLOv3 implementation in TensorFlow 2.3.1
Stars: ✭ 300 (+867.74%)
Mutual labels:  yolo, darknet
Bmw Yolov4 Training Automation
This repository allows you to get started with training a state-of-the-art Deep Learning model with little to no configuration needed! You provide your labeled dataset or label your dataset using our BMW-LabelTool-Lite and you can start the training right away and monitor it in many different ways like TensorBoard or a custom REST API and GUI. NoCode training with YOLOv4 and YOLOV3 has never been so easy.
Stars: ✭ 533 (+1619.35%)
Mutual labels:  yolo, darknet
Ssds.pytorch
Repository for Single Shot MultiBox Detector and its variants, implemented with pytorch, python3.
Stars: ✭ 570 (+1738.71%)
Mutual labels:  yolo, darknet

Yolov2 Pytorch Implementation

This repository aims to learn and understand the YOLO algorithm. I am a beginner of deep learning, and I found the best way to learn a deep learning algorithm is to implement it from scratch. So if you also feel this way, just follow this repo! The code in this projects is clear and easier to understand, and I also documented it as much as possible.

Purpose

  • [x] train pascal voc
  • [x] multi-GPUs support
  • [x] test
  • [x] pascal voc validation
  • [x] data augmentation
  • [x] pretrained network
  • [x] reorg layer
  • [x] multi-scale training
  • [ ] reproduce original paper's mAP

Main Results

training set test set [email protected] [email protected]
this repo VOC2007+2012 VOC2007 72.7 74.6
original paper VOC2007+2012 VOC2007 76.8 78.6

Running time: ~19ms (52FPS) on GTX 1080

Prerequisites

  • python 3.5.x
  • pytorch 0.4.1
  • tensorboardX
  • opencv3
  • pillow

Preparation

First clone the code

git clone https://github.com/tztztztztz/yolov2.pytorch.git

Install dependencies

pip install -r requirements.txt

Then create some folder

mkdir output 
mkdir data

Demo

Download the pretrained weights

wget http://pjreddie.com/media/files/yolo-voc.weights

You can run the demo with cpu mode

python demo.py

Or with gpu mode

python demo.py --cuda true

Training on PASCAL VOC

Prepare the data

  1. Download the training data.

    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
    wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar
    
    # download 2012 data
    wget http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
    
  2. Extract the training data, all the data will be in one directory named VOCdevit. We use $VOCdevit to represent the data root path

    tar xvf VOCtrainval_06-Nov-2007.tar
    tar xvf VOCtest_06-Nov-2007.tar
    tar xvf VOCdevkit_08-Jun-2007.tar
    
    # 2012 data
    tar xvf VOCtrainval_11-May-2012.tar
    
  3. It should have this basic structure

    $VOCdevkit/                           # development kit
    $VOCdevkit/VOCcode/                   # VOC utility code
    $VOCdevkit/VOC2007                    # image sets, annotations, etc.
    
  4. Create symlinks for the PASCAL VOC dataset

    cd yolov2.pytorch
    mkdir data
    cd data
    mkdir VOCdevkit2007
    cd VOCdevkit2007
    ln -s $VOCdevit/VOC2007 VOC2007
    
    # mkdir VOCdevkit2012
    # cd VOCdevkit2012
    # ln -s $VOCdevit/VOC2012 VOC2012
    

Download pretrained network

cd yolov2.pytorch
cd data
mkdir pretrained
cd pretrained
wget https://pjreddie.com/media/files/darknet19_448.weights

Train the model

python train.py --cuda true

If you want use multiple GPUs to accelerate the training. you can use the command below.

python train.py --cuda true --mGPUs true

NOTE: Multi-scale training uses more GPU memory. If you have only one GPU with 8G memory, it's better to set multi-scale=False in config/config.py. See link.

Testing

python test.py --cuda true
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].