1.简介
DeepStream是NVIDIA推出的一个针对智能视频分析应用和多传感器处理的工具包,其主要特性为能够利用硬件加速技术将深度神经网络与其他的复杂处理任务带入流处理管道,让用户更专注于构建神经网络任务,而不是从头开始搭建端到端的解决方案。在以前,开发一个智能视频分析应用,用户除了需要构建神经网络,还需要考虑前端视频数据的获取、视频编解码、视频渲染等问题。然而这些问题的解决可能需要同时引入多个不同的开发工具包,诸如OpenCV,FFmpeg等。现在,通过DeepStream SDK便可以解决这些问题。
DeepStream的典型应用架构如图所示:
DeepStream 为各种基于物体检测、图像分类和实例分割的 AI 模型提供出色的吞吐量。为减少开发工作并提高吞吐量,开发者可以使用 TAO 工具套件中的高度准确的预训练模型,并通过 DeepStream 进行部署。下表显示了从数据提取、解码、图像处理到推理的端到端应用性能。这需要多个 1080p/30fps 流作为输入。请注意,在 Jetson Xavier NX 和 Jetson AGX Xavier 的 DLA 上运行可以释放 GPU 用于其他任务。
2.DeepStream安装
① 依赖库文件安装
sudo apt install \
libgstreamer1.0-0 \
gstreamer1.0-tools \
gstreamer1.0-plugins-good \
gstreamer1.0-plugins-bad \
gstreamer1.0-plugins-ugly \
gstreamer1.0-libav \
libgstreamer-plugins-base1.0-dev \
libgstrtspserver-1.0-0 \
libjansson4 \
libyaml-cpp-dev
② 安装DeepStream
sudo apt install deepstream-6.1 -y
(6.1只是示例,在Jetson设备安装完系统之后,都会有唯一对应版本的DeepStream安装包,我们使用该命令时按Tab键补全DeepStream的版本即可)
3.测试
示例位置:
cd /opt/nvidia/deepstream/deepstream-6.2/samples/configs/deepstream-app
运行命令:
deepstream-app -c source4_1080p_dec_preprocess_infer-resnet_preprocess_sgie_tiled_display_int8.txt
参考链接:
NVIDIA DeepStream 开发工具包 | NVIDIA 开发者
NVIDIA DeepStream SDK Developer Guide — DeepStream documentation 6.4 documentation