DeepStream SDK 官方文档DeepStream 6.0 Release Notes
DeepStream SDK Development Guide
DeepStream SDK API Reference
DeepStream Plugin Manual
DeepStream Python API
NVIDIA DeepStream概述
DeepStream 是使用开源 GStreamer 框架构建的优化图形架构,用于构建具有AI能力的应用程序的流分析工具包。它以流作为输入,即从USB/CSI/RTSP相机中获取流数据,DeepStream SDK 可以作为许多视频分析解决方案的基础层。
DeepStream 提供不同系统平台下的安装方法,包括:Jetson平台,Ubuntu系统下的dGPU(独立显卡),RedHat系统下的dGPU(独立显卡)。
DeepStream SDK核心部分由几个硬件加速器插件组成,这些插件使用各种加速器,例如:VIC,GPU,DLA,NVDEC和NVENC。通过在专用加速器中执行所有计算繁重的操作,DeepStream可以为视频分析应用程序实现最高性能。
DeepStream 建立在 CUDA-X 堆栈的多个 NVIDIA 库的基础上,例如:CUDA,tensorRT,Triton Inference服务器,多媒体库。
deepstream
被拆分成Group组的形式进行积木搭建,Group组的详细介绍,参考: Configuration Groups 。每个具体的Group组,有很多配置参数。
deepstream
的初衷,就是按照功能拆分成小插件,以插件化搭积木形式快速构建深度学习应用,使用者不需要深入理解每个小插件的开发方式。
DeepStream pipelines
Python易于使用,并且在创建AI模型时被数据科学家和深度学习专家广泛采用。NVIDIA引入了Python绑定,以帮助您使用Python构建高性能的AI应用程序。DeepStream Python应用程序使用“ Gst-Python” API操作来构造管道,并使用探测函数访问管道中各个点的数据。
deepstream-app
DeepStream Reference Application - deepstream-app
源码:/opt/nvidia/deepstream/deepstream-6.0/sources/apps/sample_apps/deepstream-app
deepstream-app
是deepstream SDK中的一个例程可执行程序,功能强大。
Deepstream6.0支持tensorRT8.0.1。tensorRT 8.x与tensorRT 7.x版本不兼容,tensorRT 7.x生成的引擎,在tensorRT 8.x中不可用,故需要重新生成引擎。
安装教程 - 官方文档
$ sudo rm -rf /usr/local/deepstream /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstnv* /usr/bin/deepstream* /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libnvdsgst*
/usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream*
/opt/nvidia/deepstream/deepstream*
$ sudo rm -rf /usr/lib/x86_64-linux-gnu/libv41/plugins/libcuvidv4l2_plugin.so
/opt/nvidia/deepstream/deepstream/
路径中的 uninstall.sh
文件;PREV_DS_VER as 4.0
;sudo ./uninstall.sh
;$ sudo apt install \
libssl1.0.0 \
libgstreamer1.0-0 \
gstreamer1.0-tools \
gstreamer1.0-plugins-good \
gstreamer1.0-plugins-bad \
gstreamer1.0-plugins-ugly \
gstreamer1.0-libav \
libgstrtspserver-1.0-0 \
libjansson4 \
gcc \
make \
git \
python3
dpkg -l | grep gstreamer
安装CUDA的时候,勾选“Driver”驱动,表示安装驱动。
参考博客: Ubuntu安装显卡驱动教程
参考博客:Ubuntu下CUDA的安装及配置(run方式)
注意版本对齐:
参考博客:【Ubuntu版】TensorRT安装教程
librdkafka (to enable Kafka protocol adaptor for message broker).
git clone https://github.com/edenhill/librdkafka.git
cd librdkafka
git reset --hard 7101c2310341ab3f4675fc565f64f0967e135a6a
./configure
# 编译
make -j8
# 安装
# 默认的安装位置为:/usr/local/lib/librdkafka*
sudo make install
sudo mkdir -p /opt/nvidia/deepstream/deepstream-6.0/lib
sudo cp -r /usr/local/lib/librdkafka* /opt/nvidia/deepstream/deepstream-6.0/lib
安装教程 - 官方文档
使用deb方式安装。
deepstream-6.0_6.0.0-1_amd64.deb
sudo apt-get install ./deepstream-6.0_6.0.0-1_amd64.deb
使用 tar 包安装。
deepstream_sdk_v6.0.0_x86_64.tbz2
# 解压
sudo tar -xvf deepstream_sdk_v6.0.0_x86_64.tbz2 -C /
# 安装
cd /opt/nvidia/deepstream/deepstream-6.0/
sudo ./install.sh
# 修改配置
sudo ldconfig
sudo apt update
sudo apt install python3-gi python3-dev python3-gst-1.0 -y
cd /opt/nvidia/deepstream/deepstream-6.0/lib
python3 setup.py install
使用 Docker 容器方式安装,略…
deepstream-app --version-all
# 输出
deepstream-app version 5.1.0
DeepStreamSDK 5.1.0
CUDA Driver Version: 10.2
CUDA Runtime Version: 10.2
TensorRT Version: 7.1
cuDNN Version: 8.0
libNVWarp360 Version: 2.0.1d3
deepstream-app
deepstream-app
简单例程deepstream-app
的用法deepstream-app --help
deeptream-app
# path_to_config_file 是配置文件的路径
deepstream-app -c <path_to_config_file>
# 进入 samples 目录
cd /opt/nvidia/deepstream/deepstream/samples
deepstream-app -c ./configs/deepstream-app/source4_1080p_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt
或者
deepstream-app -c /opt/nvidia/deepstream/deepstream/samples/configs/deepstream-app/source4_1080p_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt
cd /opt/nvidia/deepstream/deepstream/sources
git clone https://github.com/NVIDIA-AI-IOT/deepstream_python_apps
# 运行例子1
cd /opt/nvidia/deepstream/deepstream/sources/deepstream_python_apps/apps/deepstream-test1
python3 deepstream_test_1.py /opt/nvidia/deepstream/deepstream/samples/streams/sample_720p.h264
sample
应用GStreamer
缓存rm ${HOME}/.cache/gstreamer-1.0/registry.x86_64.bin
请查看 README.md
文档: sources/apps/sample_apps