/caffe-yolo

YOLO (Real-Time Object Detection) in caffe

Primary LanguagePython

YOLO in caffe

Introduction

This is a caffe implementation of the YOLO:Real-Time Object Detection

Note, the caffe models are not trained in caffe, but converted from darknet's (.weight) files (http://pjreddie.com/darknet/yolo/).

The converter is consisted of three steps:

  • initialize the caffe network and weights from .prototxt file, which is generated from darknet's (.cfg) file
  • read the weights from pre-trained darknet's (.weight) file
  • replace the initialized weights with the weights in pre-trained darkenet's (.weight) file

Model files

These caffemodel files have been converted for you.

Convert yolo's (.weight) files to caffemodel

If you want to create the caffemodel files from yolo's (.weights) files on your own,

  • first, you need to download the pretrained yolo weight files in the darknet official website (http://pjreddie.com/darknet/yolo/)

  • after that, run create_yolo_caffemodel.py to create the caffemodel from yolo's (.weight) files

    • "python create_yolo_caffemodel.py -m train_val_prototxt.filename -w yoloweights_filename -o caffemodel_filename"

    replace train_val_prototxt.filename with /your/path/to/yolo_train_val.prototxt (yolo_small, yolo_tiny), yoloweights_filename with /your/path/to/yolo.weights (yolo-small, yolo-tiny), and caffemodel_filename with your output caffemodel name,

    e.g. "python create_yolo_caffemodel.py -m yolo_train_val.prototxt -w yolo.weights -o yolo.caffemodel"

Main file usage

run yolo_main.py to do yolo object detection for the input image

  • "python yolo_main.py -m model_filename -w weight_filename -i image_filename"

replace model_filename with /your/path/to/yolo_small_deploy.prototxt or yolo_tiny_deploy.prototxt, weight_filename with /your/path/to/yolo_tiny.caffemodel or yolo_small.caffemodel and image_filename with the target image file

Requirements

  • Caffe, pycaffe

  • Opencv2

Copyrights

According to the LICENSE file of the original code,

  • Me and original author hold no liability for any damages

  • Do not use this on commercial!

ToDoList

Generate caffe prototxt files from darknet cfg files