A real-time object recognition application using Google's TensorFlow Object Detection API and OpenCV.
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
- Get video from HLS stream rather than webcam '--stream-input=http://somertmpserver.com/hls/live.m3u8'
- Send stream to livestreaming server '--stream-output=--stream=http://somertmpserver.com/hls/live.m3u8'
- Device index of the camera
pytest -vs utils/
- 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.