Object Detector App
Overview
A real-time object recognition application using Google’s TensorFlow Object Detection API and OpenCV.
Creating accurate machine learning models capable of localizing and identifying multiple objects in a single image remains a core challenge in computer vision. The TensorFlow Object Detection API is an open source framework built on top of TensorFlow that makes it easy to construct, train and deploy object detection models.
Dependencies
Special Note
- OpenCV 3.1 might crash on OSX after a while, so that’s why I had to switch to version 3.0. See open issue and solution here.
- Moving the
.read()
part of the video stream in a multiple child processes did not work. However, it was possible to move it to a separate thread.
How to run
conda env create -f environment.yml
python object_detection_app.py
/python object_detection_multithreading.py
Optional arguments (default value):
- Device index of the camera
--source=0
- Width of the frames in the video stream
--width=480
- Height of the frames in the video stream
--height=360
- Number of workers
--num-workers=2
- Size of the queue
--queue-size=5