Giter Club home page Giter Club logo

pytorch-yolo-v3-kaist's Introduction

Disclaimer

I stop working on this repository. If you would like to see further updates, please take a look my new repository

PyTorch YOLO V3 KAIST

Hi! This repository was made for doing my final project of my undergraduate program. Try to apply PyTorch YOLO-V3 from eriklindernoen with modification for KAIST Dataset. Now it supports 4 channels (RGB + Infrared) images.

Installation

$ git clone https://github.com/jas-nat/PyTorch-YOLO-V3-KAIST.git
$ cd PyTorch-YOLO-V3-KAIST/
$ sudo pip3 install -r requirements.txt
Download pretrained weights

if you wan use pretrained darknet-53 on IMAGENET weights, please download darknet53.conv.74,and put it into weights/

Conversion Label to YOLO format

Go to label_transform and find a code to transform the annotations to YOLO format. Check the flag and directories inside the file depending on your directories.

To train

There are 2 training files. The first one is train-kaist_single.py which is mainly based on [packyan] (https://github.com/packyan/PyTorch-YOLOv3-kitti) and train-kaist_all.py which is based on the orignal author eriklindernoen. If you want to do training on RGB or infrared images, use train-kaist_single.py, and if you want to do 4 channels at the same time (RGB+Infrared / Multispectral), use train-kaist_all.py.

Please be aware of the followings:

  1. Configure .cfg and .data file in config -channels: 4 for multispectral, 3 for RGB, and 1 for infrared only -location of training files and validations
  2. Run the training files

Testing Detection with real image samples

You can use detect.py to run some samples after finishing the training. Please be aware of the followings:

  1. Load the correct weights and directory for sample images
  2. Write the correct name for the output directories

Plot Precision

Run plot.py to plot precision from test_data_map.txt

Notice

I am not an expert of this field yet. I am just doing it for my own research purporse. If you ask questions, I will try my best to answer it.

Paper

YOLOv3: An Incremental Improvement

Joseph Redmon, Ali Farhadi

Abstract
We present some updates to YOLO! We made a bunch of little design changes to make it better. We also trained this new network that’s pretty swell. It’s a little bigger than last time but more accurate. It’s still fast though, don’t worry. At 320 × 320 YOLOv3 runs in 22 ms at 28.2 mAP, as accurate as SSD but three times faster. When we look at the old .5 IOU mAP detection metric YOLOv3 is quite good. It achieves 57.9 AP50 in 51 ms on a Titan X, compared to 57.5 AP50 in 198 ms by RetinaNet, similar performance but 3.8× faster. As always, all the code is online at https://pjreddie.com/yolo/.

[Paper] [Original Implementation]

Credit

@article{yolov3,
  title={YOLOv3: An Incremental Improvement},
  author={Redmon, Joseph and Farhadi, Ali},
  journal = {arXiv},
  year={2018}
}

pytorch-yolo-v3-kaist's People

Contributors

jas-nat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

pytorch-yolo-v3-kaist's Issues

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.