Deepstream Pipeline
Deepstream 官方文档
- NVIDIA DeepStream Plugin Manual (opens new window)
- NVIDIA DeepStream SDK API Reference (opens new window)
- NVIDIA DeepStream SDK (opens new window)
Deepstream 结构及流程
DeepStream参考应用程序是基于GStreamer的解决方案,由一组GStreamer插件组成,这些插件封装了低级API,以形成完整的图形。该参考应用程序具有接受来自各种来源(如Camera,RTSP输入,编码文件输入)的输入的能力,并且还支持多流/源功能。由NVIDIA实现并作为DeepStream SDK的一部分提供的GStreamer插件列表包括:
- Stream Muxer插件(Gst-nvstreammux),可从多个输入源形成一批缓冲区。
- 基于NVIDIA®TensorRT™的插件(Gst-nvinfer)分别用于主要和次要(主要对象的属性分类)检测和分类。
- 基于OpenCV的跟踪器插件(Gst-nvtracker),用于具有唯一ID的对象跟踪。
- Multi Stream Tiler插件(Gst-nvmultistreamtiler),用于形成2D帧数组。
- 屏幕显示(OSD)插件(Gst-nvdsosd),可使用生成的元数据在合成框架上绘制阴影框,矩形和文本。
- 消息转换器(Gst-nvmsgconv)和消息代理(Gst-nvmsgbroker)插件结合使用,可以将分析数据发送到云中的服务器。
Deepstream 元数据结构
下图所示的元数据是Deepstream数据传递的基本单元:
Gst-nvmsgconv 插件将附加到缓冲区的NVDS_EVENT_MSG_META(NvDsEventMsgMeta)类型的元数据解析为frame meta的user metadata,并生成架构有效负载。 对于批处理缓冲区,一帧中所有对象的元数据必须在相应的frame meta之下。