You need to enable JavaScript to run this app.
导航
Coze联动DeepStream官方模板
最近更新时间:2024.12.17 10:49:09首次发布时间:2024.12.17 10:49:09

本文介绍了 Coze 联动 DeepStream 官方数据流模板。

基本信息

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

版本列表

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

版本名称

说明

摄像头-H264-物体检测-事件和时序推送

从接入边缘节点的摄像头设备拉取视频流并进行 h264 解码作为输入,使用模型服务进行物体检测,然后将检测结果转换为消息并推送到虚拟时序设备和数据流事件中心进行输出。

摄像头-H265-物体检测-事件和时序推送

从接入边缘节点的摄像头设备拉取视频流并进行 h265 解码作为输入,使用模型服务进行物体检测,然后将检测结果转换为消息并推送到虚拟时序设备和数据流事件中心进行输出。

使用说明

摄像头-H264-物体检测-事件和时序推送

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

  1. 读取摄像头设备的视频流数据,对视频流进行 h264 解码然后合流形成一批视频帧,作为模型服务的输入。
  2. 使用模型服务检测视频帧中的特定对象(如行人、车辆等)。
  3. 将带有检测信息的结果转换为 JSON 格式的消息元数据,然后分别推送到 Ekuiper 和边缘智能控制台的数据流事件中心。

使用前提

  • 您的边缘节点具有 GPU 并且处于在线状态。
  • 在边缘节点上完成以下准备工作:
    • 接入一个摄像头设备。边缘智能提供多种官方视频驱动模板(如 ONVIF、GB28281、USB-Camera 等),方便您接入摄像头设备。您可以参考相关官方驱动的教程,了解如何接入摄像头设备。更多信息,请参见官方驱动概述
    • 部署一个“物体检测”类型的模型服务。相关操作,请参见部署模型服务
  • 为边缘节点开启“负载水位”功能。相关操作,请参见编辑节点信息

使用步骤

说明

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

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

    • 模板:选择 官方模板/视频数据流/Coze联动DeepStream官方模板
    • 版本:选择 摄像头-H264-物体检测-事件和时序推送
    • 节点:选择一个节点以部署该数据流实例。您选择的节点需要满足使用前提中的要求。
  2. 在数据流实例中进行数据流编排,为各个算子设置控制参数。

    说明

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

    算子

    控制参数

    类型

    是否必须

    说明

    摄像头设备带分析

    device

    String

    从边缘节点已经接入的设备中选择一个摄像头设备。

    device-tag

    String

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

    identifier

    String

    摄像头设备的标识符。

    latency

    Integer

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

    roi-filters

    N/A

    绘制 ROI 区域。详见对象分析算子的说明。

    line-crossings

    N/A

    绘制绊线。详见对象分析算子的说明。

    h264解码器

    N/A

    无需设置。

    批量合流

    batch-size

    Integer

    批处理大小。取值范围:0~1024, 默认值:1。

    enable-padding

    Boolean

    对视频帧进行缩放时,是否使用黑色边条填充以保持输入纵横比。默认:false。

    height

    Integer

    输出的视频帧的高度,以像素为单位。取值范围:0~4294967295,默认值:720。

    width

    Integer

    输出的视频帧的宽度,以像素为单位。取值范围:0~4294967295,默认值:1280。

    物体检测

    model-service

    String

    用于推理的模型服务。

    input-process-mode

    String

    输入图像的处理方式。可选项:

    • Full_Frame:全帧
    • Clip_Object:剪辑对象

    interval

    Integer

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

    对象跟踪

    display-tracking-id

    Boolean

    是否在对象文本中显示跟踪 ID。默认值:true。

    enable-batch-process

    Boolean

    是否启用跨多个流的批处理。默认值:true。

    enable-past-frame

    Boolean

    是否启用将过去的帧轨迹添加到用户元信息中。默认值:false。

    tracking-algorithm

    String

    跟踪算法。可选项:

    • NVDCF_perf(默认)
    • NVDCF_Max_Perf
    • NVDCF_Accuracy

    tracker-height

    Integer

    跟踪器应当操作的帧高度,以像素为单位。取值范围:0~4294967295,默认值:384。

    tracker-width

    Integer

    跟踪器应当操作的帧宽度,以像素为单位。取值范围:0~4294967295,默认值:640。

    结果绘制

    display-bbox

    Boolean

    是否显示边界框。默认值:true。

    display-clock

    Boolean

    是否显示时钟。默认值:false。

    display-mask

    Boolean

    是否显示实例掩码。默认值:false。

    display-text

    Boolean

    是否显示文字。默认值:true。

    消息转换

    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

    无需设置。

    Ekuiper推送

    N/A

    无需设置。

    事件推送

    N/A

    无需设置。

摄像头-H265-物体检测-事件和时序推送

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

  1. 读取摄像头设备的视频流数据,对视频流进行 h265 解码然后合流形成一批视频帧,作为模型服务的输入。
  2. 使用模型服务检测视频帧中的特定对象(如行人、车辆等)。
  3. 将带有检测信息的结果转换为 JSON 格式的消息元数据,然后分别推送到 Ekuiper 和边缘智能控制台的数据流事件中心。

使用前提

  • 您的边缘节点具有 GPU 并且处于在线状态。
  • 在边缘节点上完成以下准备工作:
    • 接入一个摄像头设备。边缘智能提供多种官方视频驱动模板(如 ONVIF、GB28281、USB-Camera 等),方便您接入摄像头设备。您可以参考相关官方驱动的教程,了解如何接入摄像头设备。更多信息,请参见官方驱动概述
    • 部署一个“物体检测”类型的模型服务。相关操作,请参见部署模型服务
  • 为边缘节点开启“负载水位”功能。相关操作,请参见编辑节点信息

使用步骤

说明

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

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

    • 模板:选择 官方模板/视频数据流/Coze联动DeepStream官方模板
    • 版本:选择 摄像头-H265-物体检测-事件和时序推送
    • 节点:选择一个节点以部署该数据流实例。您选择的节点需要满足使用前提中的要求。
  2. 在数据流实例中进行数据流编排,为各个算子设置控制参数。

    说明

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

    算子

    控制参数

    类型

    是否必须

    说明

    摄像头设备带分析

    device

    String

    从边缘节点已经接入的设备中选择一个摄像头设备。

    device-tag

    String

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

    identifier

    String

    摄像头设备的标识符。

    latency

    Integer

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

    roi-filters

    N/A

    绘制 ROI 区域。详见对象分析算子的说明。

    line-crossings

    N/A

    绘制绊线。详见对象分析算子的说明。

    h265解码器

    N/A

    无需设置。

    批量合流

    batch-size

    Integer

    批处理大小。取值范围:0~1024, 默认值:1。

    enable-padding

    Boolean

    对视频帧进行缩放时,是否使用黑色边条填充以保持输入纵横比。默认:false。

    height

    Integer

    输出的视频帧的高度,以像素为单位。取值范围:0~4294967295,默认值:720。

    width

    Integer

    输出的视频帧的宽度,以像素为单位。取值范围:0~4294967295,默认值:1280。

    物体检测

    model-service

    String

    用于推理的模型服务。

    input-process-mode

    String

    输入图像的处理方式。可选项:

    • Full_Frame:全帧
    • Clip_Object:剪辑对象

    interval

    Integer

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

    对象跟踪

    display-tracking-id

    Boolean

    是否在对象文本中显示跟踪 ID。默认值:true。

    enable-batch-process

    Boolean

    是否启用跨多个流的批处理。默认值:true。

    enable-past-frame

    Boolean

    是否启用将过去的帧轨迹添加到用户元信息中。默认值:false。

    tracking-algorithm

    String

    跟踪算法。可选项:

    • NVDCF_perf(默认)
    • NVDCF_Max_Perf
    • NVDCF_Accuracy

    tracker-height

    Integer

    跟踪器应当操作的帧高度,以像素为单位。取值范围:0~4294967295,默认值:384。

    tracker-width

    Integer

    跟踪器应当操作的帧宽度,以像素为单位。取值范围:0~4294967295,默认值:640。

    结果绘制

    display-bbox

    Boolean

    是否显示边界框。默认值:true。

    display-clock

    Boolean

    是否显示时钟。默认值:false。

    display-mask

    Boolean

    是否显示实例掩码。默认值:false。

    display-text

    Boolean

    是否显示文字。默认值:true。

    消息转换

    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

    无需设置。

    Ekuiper推送

    N/A

    无需设置。

    事件推送

    N/A

    无需设置。

最佳实践

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

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