更新时间:2022-03-17 GMT+08:00
分享

创建云上入侵检测作业

功能介绍

该API可分析视频流。提供了区域入侵、过线入侵检测功能。当有人或车触发入侵或过线条件,会上报告警信息。

  • 视频编码格式支持H264或者H265。

调试

您可以在API Explorer中调试该接口。

URI

  • URI格式
    POST /v2/{project_id}/services/c-intrusiondetection-cloud/tasks
  • 参数说明

    参数

    是否必选

    类型

    说明

    project_id

    String

    服务所在区域对应的项目ID,获取方法请参见获取项目ID

请求

  • 请求样例(VIS输入+DIS输出)
    POST /v2/6204a5bd270343b5885144cf9c8c158d/services/c-intrusiondetection-cloud/tasks
    {
        "name":"intrusiondetectio_cloud_0",
        "description":"intrusiondetectio task test",
        "input":{
            "type":"vis",
            "data":[
                {
                    "stream_name":"intrusiondetectio",
                    "index":0
                }
            ]
        },
        "output":{
            "dis":{
                "stream_name":"dis-intrusion"
            }
        },
        "service_version":"3.0",
        "resource_order_id": "840a5cf90d4a4bbaa71f251dfe8fe64e",
        "service_config":{
            "common":{
                "car_detection_sw":0,
                "person_detection_sw":1,
                "detection_min_size":60,
                "detection_max_size":1080,
                "line_detection_sw":1,
                "region_detection_sw":1,
                "loitering_detection_sw":0,
                "target_roi":"{\"lines\":[{\"data\":[[560,680],[1185,506]],\"properties\":{\"side1_name\":\"Side1\",\"side2_name\":\"Side2\"}}],\"polygons\":[{\"data\":[[0,0],[0,1080],[1920,1080],[1920,0]]}]}",
                "image_compression_ratio":90,
                "render_result_sw":1,
                "render_roi_sw":1
            }
        }
    }
  • 参数说明

    参数

    是否必选

    类型

    说明

    name

    String

    作业名称,只能由中文、字母(a~zA~Z)、数字(0~9)、中划线(-)、下划线(_)组成,长度范围为[1,100]。

    description

    String

    作业描述信息,最大长度为500字符长度。

    input

    Object

    视频数据输入列表,目前云上入侵检测支持以下输入类型:
    • vis:从视频接入服务中读取视频数据。

    详细参数定义参见task.input(任务输入参数)

    service_version

    String

    功能版本号,版本号为3.0。

    resource_order_id

    String

    购买的算法能力包ID,在服务界面购买算法能力包获取。

    output

    Object

    结果数据的输出列表,目前支持将结果输出到您指定的通道中,输出类型为“dis”

    详细参数定义参见task.output(任务输出参数)

    service_config

    Object

    服务的算法配置,配置参数见ServiceConfig参数说明

  • service_config中common参数说明

    字段

    是否必选

    类型

    说明

    car_detection_sw

    Int

    对应控制台的界面参数“车检测开关”

    检测车开关:

    • 0:表示不检测。
    • 1:表示检测。

    默认值为0。

    person_detection_sw

    Int

    对应控制台的界面参数“人检测开关”

    检测人开关:

    • 0:表示不检测。
    • 1:表示检测。

    默认值为1。

    detection_min_size

    Int

    对应控制台的界面参数“检测目标最小像素值”

    检测目标的长宽最小像素值,取值范围为[60, 4000],默认值为60。

    detection_max_size

    Int

    对应控制台的界面参数“检测目标最大像素值”

    检测目标的长宽最大像素值,取值范围为[1080, 4000],默认值为1080。

    line_detection_sw

    Int

    对应控制台的界面参数“过线检测开关”

    过线入侵检测开关:

    • 0:表示关闭。
    • 1:表示开启。

    默认值为1。

    region_detection_sw

    Int

    对应控制台的界面参数“区域检测开关”

    区域入侵检测开关:

    • 0:表示关闭。
    • 1:表示开启。

    默认值为1。

    loitering_detection_sw

    Int

    对应控制台的界面参数“徘徊检测开关”

    徘徊检测开关:
    • 0:表示关闭。
    • 1:表示开启。

    默认值为0。检测范围与areaSetting区域设置一致。

    target_roi

    String

    对应控制台的界面参数“检测区域设置”

    表示检测区域,该字段为JSON格式的字符串,API调用时需要加转义符。详细JSON格式参见target_roi(目标区域)

    例如:

    {"lines":[{"data":[[560,680],[1185,506]],"properties":{"side1_name":"Side1","side2_name":"Side2"}}],"polygons":[{"data":[[0,0],[0,1080],[1920,1080],[1920,0]]}]}

    参数没有携带时,默认区域为整个视频帧。

    直线与区域默认位置如图1所示。

    image_compression_ratio

    Int

    对应控制台的界面参数“图片压缩比”

    图片压缩百分比,取值范围为[20,100]。

    默认值:90,表示图片压缩比为90%。

    render_result_sw

    Int

    对应控制台的界面参数“目标框渲染开关”

    输出图像是否绘制告警目标边框,取值范围:

    • "0":表示不绘制;
    • "1":表示用红色绘制告警目标边框。

    默认值为0。

    render_roi_sw

    Int

    对应控制台的界面参数“检测区域渲染开关”

    输出图像是否绘制检测区域,取值范围:

    • "0":表示不绘制;
    • "1":表示用黄色绘制用户设定区域。

    默认值为0。

  • 当target_roi参数未设置时,直线与区域默认位置如图1所示,其中Wframe为帧宽度,Hframe为帧高度。
    图1 直线与区域默认位置
    • 直线两端点point_1与point_2默认值为:
      • point_1=(¼Wframe, ½Hframe)
      • point_2=(¾Wframe, ½Hframe)
    • 默认区域为整个视频帧。

响应

  • 响应样例
    [
      { 
        "id": "63eac48bf3704e8bb30af7f244fdcf3d"
      }
    ]
  • 返回作业ID列表

    参数

    类型

    说明

    id

    String

    作业ID。

检测结果

  • 输出JSON数据流到DIS指定的通道,包括告警结构化数据和图片数据。
  • JSON结果示例:
    {
        "event_type":196609,
        "timestamp":1581753322,
        "stream_id":"08eeab92-d822-483a-bc60-eb3db54360f7",
        "message_id":"849D1326-4FC8-11EA-8F73-0242AC110004",
        "image_base64":"/9j/4AAQSkZJRgA...",
        "task_id":"63eac48bf3704e8bb30af7f244fdcf3d",
        "data":{
            "event_set":[
                {
                    "start_position":"in",
                    "end_position":"in",
                    "bounding_box":{
                        "y":327,
                        "h":216,
                        "x":876,
                        "w":105
                    },
                    "category":0,
                    "detection_id":"83BFC020-4FC8-11EA-9F93-0242AC110004"
                }
            ]
        }
    }
  • JSON格式说明

    字段

    类型

    说明

    stream_id

    String

    该字段为VIS视频流名称。

    event_type

    Uint64

    快速标识入侵检测服务的输出消息类型,入侵检测事件其值固定为196609, 对应16进制为 0x 0000 0000 0003 0001,徘徊检测事件其值固定为196610,对应16进制为 0x 0000 0000 0003 0002

    task_id

    String

    作业ID。

    message_id

    String

    告警ID,生成的唯一告警事件UUID

    timestamp

    Uint64

    触发告警时间点的时间戳。

    image_base64

    String

    告警时刻输入的视频图像的Base64编码结果。

    data

    Object

    业务输出内容

  • data参数格式说明

    字段

    类型

    说明

    event_set

    List<Object>

    输出事件列表。

  • event_set参数格式说明

    字段

    类型

    说明

    bounding_box

    Object

    告警输出对象的矩形框。

    detection_id

    String

    告警目标对应的UUID。

    category

    Int

    告警目标的类型:
    • 0:人
    • 1:车
    • 2:其他

    start_position

    String

    表示入侵开始位置:

    • 如果是过线入侵,则是入侵开始所在线一侧的名字。
    • 如果是区域入侵,则是“in”或者“out”
      • in:表示入侵开始在区域里面。
      • out:表示入侵开始在区域外面。

    end_position

    String

    表示入侵结束位置:

    • 如果是过线入侵则是入侵结束所在线一侧的名字。
    • 如果是区域入侵,则是“in”或者“out”
      • in:表示入侵结束在区域里面。
      • out:表示入侵结束在区域外面。
  • bounding_box参数格式说明

    字段

    类型

    说明

    x

    Int

    矩形框左上角横坐标

    y

    Int

    矩形框左上角纵坐标

    w

    Int

    矩形框宽度

    h

    Int

    矩形框高度

返回值

  • 正常

    201

  • 异常

    返回值

    说明

    400 Bad Request

    请求错误,具体返回错误码请参考错误码

    401 Unauthorized

    鉴权失败。

    403 Forbidden

    没有操作权限。

    404 Not Found

    找不到资源。

    500 Internal Server Error

    服务内部错误

    503 Service Unavailable

    服务不可用。

相关文档