This repo is a deepstream tool kit contains some interfaces.
- Deepstream 6.0.1+
- GStreamer 1.14.5
- Cuda 11.4+
- NVIDIA driver 470.63.01+
- TensorRT 8+
- Python 3.6
Follow deepstream official doc to install dependencies.
Deepstream docker is more recommended.
Please refer to the tensorrtx for pretrained models and serialized TensorRT engine.
Or download from Google driver.
Now available:
- yolov5s
- retinaface
- arcface
To run the demo gui.
python3 gui.py
Make sure all PATH are right.
- Choose the mode:
- OSD: on screen display
- Record: back stage
- Add resource:
You can add resource before the pipeline starts or during the runtime.
- URI: uri of rtsp stream input.
- UID/name/framerate:
- unique id of each source, can't be re-used.
- name of source
- set max framerate of the source, notice only works if set-framerate is smaller than the source's own max framerate.
- enable/inROI/class-id/area:
- enable the analytics or not
- inROI to count object inside/outside the ROI
- class-id to count a specific class
- area:start with the name of this area, followed with vertexes in pairs spaced with commas. e.g. area1,500;500;1400;500;1400;900;500;900
- Play: start pipeline.
- Stop: stop the whole pipeline.
- Quit: quit app.
- Delete:
- delete uid: input the uid of source you want to delete, then press DELETE button.
- Get state of a specific source: doble click a source in listbox.
Class Pipeline contains all basic operations about Gstreamer-pipeline.
Class Source_Pool contains operations about input sources.
To control the Gstreamer-pipeline, two parallel threading are necessary.