You need to enable JavaScript to run this app.
导航

DLStreamer 官方模板(Beta)

最近更新时间2024.04.10 10:24:29

首次发布时间2024.01.12 10:25:28

本文介绍了单源单输出官方数据流模板。单源单输出模板适用于视频数据流,表示从单个输入节点获取视频流,经过一系列处理后,将处理结果推送到单个输出节点。

注意

基于 DLStreamer 框架的视频数据流功能尚处于 Beta 阶段,仅适用于进行功能测试。如果您在使用过程中遇到问题,请通过工单向我们反馈。

基本信息

您可以在边缘智能控制台的官方模板列表访问本模板。下图展示了本模板的基本信息。
图片

版本列表

本模板提供如下可用版本。

版本名称

说明

v1-rtsp源-物体检测-事件推送

从 RTSP 源拉流作为输入,使用模型服务进行物体检测,然后将检测结果转换为消息并推送到数据流事件中心进行输出。

v2-摄像头设备-物体检测-虚拟时序设备

从接入一体机的摄像头设备拉取视频流作为输入,使用模型服务进行物体检测,然后将检测结果转换为消息并推送到虚拟时序设备进行输出。

v3-rtsp源-物体检测-对象分析-事件推送

从 RTSP 源拉流作为输入,使用模型服务进行物体检测,然后执行 ROI 和越线分析,最后将分析结果转换为消息并推送到数据流事件中心进行输出。

v4-rtmp源-物体检测-对象分析-ekuiper推送

从 RTMP 源拉流作为输入,使用模型服务进行物体检测,然后执行 ROI 和越线分析,最后将分析结果转换为消息并推送到时序数据流进行输出。

使用说明

v1-rtsp源-物体检测-事件推送

版本说明
v1 版本的数据流包含以下环节:

  1. 从 RTSP 源拉取视频流数据,对视频流进行解码并形成一批视频帧,作为模型服务的输入。
  2. 使用模型服务检测视频帧中的特定对象(如行人、车辆等)并对检测到的对象进行标识。
  3. 将结果转换为 JSON 格式的消息元数据,然后推送到边缘智能控制台的数据流事件中心。

使用前提

  • 一体机采用 ×86 架构。
  • 您已经在一体机上完成以下准备工作:
    • 部署一个“物体检测”类型的模型服务。相关操作,请参见部署模型服务
    • 为一体机开启“状态监控”功能。相关操作,请参见开启状态监控

使用 v1 版本

说明

您可以使用官方模板下的版本来创建和部署数据流实例。具体操作,请参见创建和部署数据流实例
以下仅罗列使用当前版本时您需要留意的配置。

  1. 基于数据流版本创建一个数据流实例。

    • 模板:选择 官方模板/视频数据流/dlstreamer官方模板
    • 版本:选择 v1-rtsp源-物体检测-事件推送
    • 一体机:选择一个一体机以部署该数据流实例。您选择的一体机需要满足使用前提中的要求。
  2. 在数据流实例中进行数据流编排,为各个节点设置控制参数。

    说明

    关于节点控制参数的详细解释,请参见视频数据流节点

    节点

    控制参数

    类型

    是否必须

    说明

    RTSP拉流

    location

    String

    RTSP 流的 URL。

    identifier

    String

    RTSP 流的标识符。

    latency

    Integer

    要缓存的毫秒数。取值范围:0~4294967295,默认值:2000。

    视频解码器

    N/A

    无需设置。

    物体检测

    model-service

    String

    用于推理的模型服务。

    inference-region

    String

    指定进行推理的区域。可选项:

    • full-frame:在整帧上进行推理
    • roi-list:只在 ROI 区域内进行推理

    inference-interval

    Integer

    指定连续跳过进行推理的批次数量。取值范围:0~2147483647,默认值:5。

    结果绘制

    N/A

    无需设置。

    消息转换

    frame-interval

    Integer

    生成有效载荷的帧间隔。取值范围:0~4294967295,默认值:30。

    conditions

    String

    使用 JSON Path 语法,针对消息元数据设置过滤条件。关于消息元数据的参数结构,请参见数据流事件

    actions

    Array

    条件满足时需要执行的操作列表。可选项:

    • send:发送消息。
    • not send:不发送消息。

    send_image

    Boolean

    是否发送图像数据。默认值:true。

    enable_extra_info

    Boolean

    是否发送额外信息。默认值:true。

    事件推送

    N/A

    无需设置。

v2-摄像头设备-物体检测-虚拟时序设备

版本说明
v2 版本的数据流包含以下环节:

  1. 从接入一体机的摄像头设备获取视频流数据,对视频流进行解码并形成一批视频帧,作为模型服务的输入。
  2. 使用模型服务检测视频帧中的特定对象(如行人、车辆等)并对检测到的对象进行标识。
  3. 将带有检测信息的结果转换为 JSON 格式的消息元数据,然后推送到同一台一体机上的虚拟时序设备。

使用前提

  • 一体机采用 ×86 架构。
  • 您已经在一体机上完成以下准备工作:
    • 部署一个“物体检测”类型的模型服务。相关操作,请参见部署模型服务
    • 接入一个摄像头设备。
    • 接入一个虚拟时序设备。

使用 v2 版本

说明

您可以使用官方模板下的版本来创建和部署数据流实例。具体操作,请参见创建和部署数据流实例
以下仅罗列使用当前版本时您需要留意的配置。

  1. 基于数据流版本创建一个数据流实例。

    • 模板:选择 官方模板/视频数据流/dlstreamer官方模板
    • 版本:选择 v2-摄像头设备-物体检测-虚拟时序设备
    • 一体机:选择一个一体机以部署该数据流实例。您选择的一体机需要满足使用前提中的要求。
  2. 在数据流实例中进行数据流编排,为各个节点设置控制参数。

    说明

    关于节点控制参数的详细解释,请参见视频数据流节点

    节点

    控制参数

    类型

    是否必须

    说明

    摄像头设备

    device

    String

    从一体机已经接入的设备中选择一个摄像头设备。

    device-tag

    String

    显示了已选择设备的标签。

    identifier

    String

    为设备设置一个标识符。

    latency

    Integer

    要缓存的毫秒数。取值范围:0~4294967295,默认值:2000。

    视频解码器

    N/A

    无需设置。

    物体检测

    model-service

    String

    用于推理的模型服务。

    inference-region

    String

    指定进行推理的区域。可选项:

    • full-frame:在整帧上进行推理
    • roi-list:只在 ROI 区域内进行推理

    inference-interval

    Integer

    指定连续跳过进行推理的批次数量。取值范围:0~2147483647,默认值:5。

    结果绘制

    N/A

    无需设置。

    消息转换

    frame-interval

    Integer

    生成有效载荷的帧间隔。取值范围:0~4294967295,默认值:30。

    conditions

    String

    使用 JSON Path 语法,针对消息元数据设置过滤条件。关于消息元数据的参数结构,请参见数据流事件

    actions

    Array

    条件满足时需要执行的操作列表。可选项:

    • send:发送消息。
    • not send:不发送消息。

    send_image

    Boolean

    是否发送图像数据。默认值:true。

    enable_extra_info

    Boolean

    是否发送额外信息。默认值:true。

    虚拟时序设备

    device

    String

    从一体机已经接入的设备中选择一个虚拟时序设备。

v3-rtsp源-物体检测-对象分析-事件推送

版本说明
v3 版本的数据流包含以下环节:

  1. 从 RTSP 源拉取视频流数据,对视频流进行解码并形成一批视频帧,作为模型服务的输入。
  2. 使用模型服务检测视频帧中的特定对象(如行人、车辆等),并分析目标是否有在 ROI 区域出现或跨越边界线的行为。
  3. 将带有分析信息的结果转换为 JSON 格式的消息元数据,然后推送到边缘智能控制台的数据流事件中心。

使用前提

  • 一体机采用 ×86 架构。
  • 您已经在一体机上完成以下准备工作:
    • 部署一个“物体检测”类型的模型服务。相关操作,请参见部署模型服务
    • 为一体机开启“状态监控”功能。相关操作,请参见开启状态监控

使用 v3 版本

说明

您可以使用官方模板下的版本来创建和部署数据流实例。具体操作,请参见创建和部署数据流实例
以下仅罗列使用当前版本时您需要留意的配置。

  1. 基于数据流版本创建一个数据流实例。

    • 模板:选择 官方模板/视频数据流/dlstreamer官方模板
    • 版本:选择 v3-rtsp源-物体检测-对象分析-事件推送
    • 一体机:选择一个一体机以部署该数据流实例。您选择的一体机需要满足使用前提中的要求。
  2. 在数据流实例中进行数据流编排,为各个节点设置控制参数。

    说明

    关于节点控制参数的详细解释,请参见视频数据流节点

    节点

    控制参数

    类型

    是否必须

    说明

    RTSP拉流

    location

    String

    RTSP 流的 URL。

    identifier

    String

    RTSP 流的标识符。

    latency

    Integer

    要缓存的毫秒数。取值范围:0~4294967295,默认值:2000。

    视频解码器

    N/A

    无需设置。

    物体检测

    model-service

    String

    用于推理的模型服务。

    inference-region

    String

    指定进行推理的区域。可选项:

    • full-frame:在整帧上进行推理
    • roi-list:只在 ROI 区域内进行推理

    inference-interval

    Integer

    指定连续跳过进行推理的批次数量。取值范围:0~2147483647,默认值:5。

    对象跟踪

    tracking-type

    String

    跟踪算法。可选项:

    • short-term-imageless(默认)
    • zero-term
    • zero-term-imageless

    对象分析

    roi-filters

    N/A

    绘制 ROI 区域。更多信息,请参见对象分析节点说明

    line-crossings

    N/A

    绘制绊线。更多信息,请参见对象分析节点说明

    结果绘制

    N/A

    无需设置。

    消息转换

    frame-interval

    Integer

    生成有效载荷的帧间隔。取值范围:0~4294967295,默认值:30。

    conditions

    String

    使用 JSON Path 语法,针对消息元数据设置过滤条件。关于消息元数据的参数结构,请参见数据流事件

    actions

    Array

    条件满足时需要执行的操作列表。可选项:

    • send:发送消息。
    • not send:不发送消息。

    send_image

    Boolean

    是否发送图像数据。默认值:true。

    enable_extra_info

    Boolean

    是否发送额外信息。默认值:true。

    事件推送

    N/A

    无需设置。

v4-rtmp源-物体检测-对象分析-ekuiper推送

版本说明
v4 版本的数据流包含以下环节:

  1. 从 RTMP 源拉取视频流数据,对视频流进行解码并形成一批视频帧,作为模型服务的输入。
  2. 使用模型服务检测视频帧中的特定对象(如行人、车辆等),并分析目标是否有在 ROI 区域出现或跨越边界线的行为。
  3. 将带有分析信息的结果转换为 JSON 格式的消息元数据,然后推送到同一台一体机上的时序数据流实例进行处理。

使用前提

  • 一体机采用 ×86 架构。
  • 您已经在一体机上完成以下准备工作:
    • 部署一个“物体检测”类型的模型服务。相关操作,请参见部署模型服务
    • 部署一个时序数据流实例,并且时序数据流使用“视频流输入源”作为输入节点。更多信息,请参见时序数据流节点

使用 v4 版本

说明

您可以使用官方模板下的版本来创建和部署数据流实例。具体操作,请参见创建和部署数据流实例
以下仅罗列使用当前版本时您需要留意的配置。

  1. 基于数据流版本创建一个数据流实例。

    • 模板:选择 官方模板/视频数据流/dlstreamer官方模板
    • 版本:选择 v4-rtmp源-物体检测-对象分析-ekuiper推送
    • 一体机:选择一个一体机以部署该数据流实例。您选择的一体机需要满足使用前提中的要求。
  2. 在数据流实例中进行数据流编排,为各个节点设置控制参数。

    说明

    关于节点控制参数的详细解释,请参见视频数据流节点

    节点

    控制参数

    类型

    是否必须

    说明

    RTMP拉流

    location

    String

    RTMP 流的 URL。

    identifier

    String

    RTMP 流的标识符。

    视频解码器

    N/A

    无需设置。

    物体检测

    model-service

    String

    用于推理的模型服务。

    inference-region

    String

    指定进行推理的区域。可选项:

    • full-frame:在整帧上进行推理
    • roi-list:只在 ROI 区域内进行推理

    inference-interval

    Integer

    指定连续跳过进行推理的批次数量。取值范围:0~2147483647,默认值:5。

    对象跟踪

    tracking-type

    String

    跟踪算法。可选项:

    • short-term-imageless(默认)
    • zero-term
    • zero-term-imageless

    对象分析

    roi-filters

    N/A

    绘制 ROI 区域。更多信息,请参见对象分析节点说明

    line-crossings

    N/A

    绘制绊线。更多信息,请参见对象分析节点说明

    结果绘制

    N/A

    无需设置。

    消息转换

    frame-interval

    Integer

    生成有效载荷的帧间隔。取值范围:0~4294967295,默认值:30。

    conditions

    String

    使用 JSON Path 语法,针对消息元数据设置过滤条件。关于消息元数据的参数结构,请参见数据流事件

    actions

    Array

    条件满足时需要执行的操作列表。可选项:

    • send:发送消息。
    • not send:不发送消息。

    send_image

    Boolean

    是否发送图像数据。默认值:true。

    enable_extra_info

    Boolean

    是否发送额外信息。默认值:true。

    Ekuiper推送

    N/A

    无需设置。

最佳实践

如果直接使用官方模板创建数据流实例,您将无法修改数据流的结构。而在实际使用过程中,官方模板版本中的数据流结构可能并不适合您的业务需求。这种情况下,您可以按如下方式来使用官方模板:

  1. 复制官方模板生成一个新的自定义模板。(新的自定义模板包含官方模板下的所有版本。)
  2. 在自定义模板中,找到适合您场景的版本,然后通过数据流编排,修改版本的数据流(如增删节点等)。
  3. 使用自定义模板创建数据流实例。