Object detection inference from IP camera RTSP and video stream using GStreamer HW acceleration and OpenCV
- GStreamer 1.18.5-1 and OpenCV 4.5.1
- mkdir build
- cd build
- cmake ..
- make
./object-detection-inference --type=yolov4(or yolov4-tiny) --min_confidence=0.6 --link="rtsp://cameraip:port/somelivefeed"
- Weigths and .cfg files to download inside models folder from https://github.com/AlexeyAB/darknet/releases/tag/yolov4
./object-detection-inference --type=mobilenet --min_confidence=CONF_VALUE(for example 0.6) --link="rtsp://cameraip:port/somelivefeed"
- Caffemodel and Prototxt for deploying(download inside models folder): https://github.com/chuanqi305/MobileNet-SSD
./object-detection-inference --type=svm --link="rtsp://cameraip:port/somelivefeed"
./object-detection-inference --help
- Planning to restore and update inference on tensorflow models from object detection API
- Inference on pytorch models from torchvision object detection API
- Add support for inference with onnxruntime, openvino and tensorrt
- Multi-object Tracking (Sort?)
-
Using GStreamer to receive a video stream and process it with OpenCV:
https://stackoverflow.com/questions/10403588/adding-opencv-processing-to-gstreamer-application -
HoG + SVM detector:
https://github.com/opencv/opencv/blob/master/samples/cpp/peopledetect.cpp -
Train your own HoG detector:
https://github.com/opencv/opencv/blob/master/samples/cpp/train_HOG.cpp -
Object detection using dnn module:
https://github.com/opencv/opencv/blob/master/samples/dnn/object_detection.cpp -
Sort algorithm:
https://github.com/david8862/keras-YOLOv3-model-set/tree/master/tracking/cpp_inference/yoloSort