Object detection (YOLO, SSD, Faster R-CNN) with OpenCV and Python.
Switch branches/tags
Nothing to show
Clone or download
Latest commit 66d6a4f Oct 26, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
LICENSE Initial commit Jul 16, 2018
README.md Update README.md Oct 26, 2018
dog.jpg Add yolo opencv object detection Jul 16, 2018
object-detection.jpg Update sample output Jul 27, 2018
yolo_opencv.py Remove resizing to keep original aspect ratio Aug 19, 2018
yolov3.cfg Add yolo opencv object detection Jul 16, 2018
yolov3.txt Add yolo opencv object detection Jul 16, 2018


Object detection using deep learning with OpenCV and Python

OpenCV dnn module supports running inference on pre-trained deep learning models from popular frameworks like Caffe, Torch and TensorFlow.

When it comes to object detection, popular detection frameworks are

  • YOLO
  • SSD
  • Faster R-CNN

Support for running YOLO/DarkNet has been added to OpenCV dnn module recently.


  • opencv
  • numpy

pip install numpy opencv-python

Note: Python 2.x is not supported

YOLO (You Only Look Once)

Download the pre-trained YOLO v3 weights file from this link and place it in the current directory or you can directly download to the current directory in terminal using

$ wget https://pjreddie.com/media/files/yolov3.weights

Provided all the files are in the current directory, below command will apply object detection on the input image dog.jpg.

$ python yolo_opencv.py --image dog.jpg --config yolov3.cfg --weights yolov3.weights --classes yolov3.txt

Command format

$ python yolo_opencv.py --image /path/to/input/image --config /path/to/config/file --weights /path/to/weights/file --classes /path/to/classes/file

Checkout the blog post to learn more.

sample output :

Checkout the object detection implementation available in cvlib which enables detecting common objects in the context through a single function call detect_common_objects().

(SSD and Faster R-CNN examples will be added soon)