Coder Social home page Coder Social logo

cscg / yolo-python-rtsp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from foschmitz/yolo-python-rtsp

0.0 1.0 0.0 56.51 MB

Object detection using deep learning with Yolo, OpenCV and Python via Real Time Streaming Protocol (RTSP)

License: MIT License

Python 100.00%

yolo-python-rtsp's Introduction

Object Detection with Yolo, OpenCV and Python via Real Time Streaming Protocol (RTSP)

Object detection using deep learning with Yolo, OpenCV and Python via Real Time Streaming Protocol (RTSP)

Recognized objects are stored in date seperated in folders per class for further training or face recognition.

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.

Dependencies

  • opencv
  • numpy
  • imageio ( version 2.4.1 )

pip install numpy opencv-python imageio sudo pip3 install imageio==2.4.1

Note: Python 2.x is not supported

YOLO (You Only Look Once)

Download the pre-trained YOLO v3 weights file from this link or for tiny weights for slower machines 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

$ wget https://pjreddie.com/media/files/yolov3-tiny.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 --input sampledata/commuters.mp4 --config cfg/yolov3.cfg --weights yolov3.weights --classes cfg/yolov3.txt

For RTSP simply put the RTSP URL as --input

$ python yolo_opencv.py --input rtsp://xxxxx:1935/live/sys.stream --framestart 100 --framelimit 100 --config cfg/yolov3-tiny.cfg --weights yolov3-tiny.weights --classes cfg/yolov3.txt

Arguments

parameter type description
input String /path/to/input/stream
outputfile String /path/to/outputfile
outputdir String /path/to/outputdir
framestart Int start detecting at frame x (int)
framelimit Int stop after x (int) frames and save the video in case of streams. 0 no limit
config String /path/to/config/file
weights String /path/to/weights/file
classes String /path/to/classes/file
invertcolor Boolean in case of BGR streams
fpsthrottle Int in case of slower machines to keep up with a stream

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().

Credits

This project is based on Arun Ponnusamy's Object Detection OpenCV

Sample video footage from Videvo - Free Stock Video Footage

yolo-python-rtsp's People

Contributors

foschmitz avatar mitchross avatar

Watchers

James Cloos avatar

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.