创建边缘高密度人群统计作业-CreateCrowdCountEdgeTasks
功能介绍
该接口用于创建边缘高密度人群统计作业。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
POST /v2/{project_id}/services/c-crowdcount-edge/tasks
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
project_id | 是 | String | 参数解释: 用户项目ID。获取方法参见获取项目ID和名称。 约束限制: 不涉及。 取值范围: 只能由英文字母和数字组成,且长度为[1-64]个字符。 默认取值: 不涉及。 |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
X-Auth-Token | 是 | String | 参数解释: 用户Token,获取方法参见认证鉴权。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
name | 是 | String | 参数解释: 作业名称。 约束限制: 不涉及。 取值范围: 只能由中文、字母(a~z A~Z)、数字(0~9)、中划线(-)、下划线(_)组成。长度范围为[1,100]。 默认取值: 不涉及。 |
description | 否 | String | 参数解释: 作业描述信息。 约束限制: 不涉及。 取值范围: 长度范围为[0,500]。 默认取值: 不涉及。 |
schedule | 否 | TaskSchedule object | 参数解释: 定时任务参数,定时周期仅支持周模式。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
input | 是 | TaskInput object | 参数解释: 作业的输入配置。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
output | 是 | TaskOutput object | 参数解释: 作业的输出配置,至少需要配置一项输出方式。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
config | 否 | CrowdCountServiceConfig object | 参数解释: 作业配置参数。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
service_version | 是 | String | 参数解释: 服务版本号。 约束限制: 不涉及。 取值范围: 输入需要满足正则:^[a-z0-9.]{3,32}$。 默认取值: 不涉及。 |
is_saved_as_template | 否 | Boolean | 参数解释: 是否把作业配置保存成模板。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
resource_order_id | 否 | String | 参数解释: 资源订单id,与关联算法挂钩。非商用白名单的算法就不用填,商用算法就为必填项。 约束限制: 非商用白名单的算法就不用填,商用算法就为必填项。 取值范围: 输入需要满足正则:^[a-z0-9-_]{4,36}$。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
type | 是 | String | 参数解释: 计划任务的类型。 约束限制: 使用计划任务时必填。 取值范围: 可选类型为weekly(每周执行),monthly(每月执行)。 默认取值: 不涉及。 |
timezone | 是 | String | 参数解释: 用户所处的时区,精确到分钟。 约束限制: 使用计划任务时必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
days_of_week | 否 | Array of integers | 参数解释: 作业会在一周的哪几天执行,1~7分别指代星期一至星期日。 约束限制: 当且仅当计划任务类型为weekly时,该字段需填且必填。 取值范围: 最小值:1 最大值:7 数组长度:1 - 7 默认取值: 不涉及。 |
days_of_month | 否 | Array of integers | 参数解释: 作业会在一个月的哪几天执行,1~31分别指代一个月中的1日至31日。 约束限制: 当且仅当计划任务类型为monthly时,该字段需填且必填。 取值范围: 最小值:1 最大值:31 默认取值: 不涉及。 |
periods | 否 | Array<Array<>> | 参数解释: 时间段模式配置,指定周计划或者月计划中具体每天作业的执行时间段,至少需指定一个时间段。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
type | 是 | String | 参数解释: 作业的输入类型,创建时必填,编辑时video_source 模式不支持切换为其他IVA模式的type。创建时可选类型有obs(对象存储服务存储的文件仅云上作业支持), url(指定的文件地址或取流地址 仅云上作业支持), edgecamera(绑定在IEF的边缘摄像头仅边缘作业支持),restful(从自定义的流媒体服务器通过Restful接口获取流地址。云上,边缘均作业支持), vcn(VCN设备仅边缘作业支持),video_source(视频源类型),建议使用video_source类型,其他类型为了兼容老业务,后续将废弃。 约束限制: 不涉及。 取值范围: 枚举值: 默认取值: 不涉及。 |
data | 是 | Array of TaskInputData objects | 参数解释: 作业的输入详情,必填。针对不同的输入类型有不同的配置。创建时允许填写多路输入,但更新时只允许填写一路输入。 约束限制:
取值范围: 数组长度:[1, 50]。 默认取值: 不涉及。 |
vcn | 否 | TaskInputVcn object | 参数解释: VCN服务器信息。 约束限制: 仅输入类型为vcn时必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
video_source_id | 否 | String | 参数解释: 视频源id。 约束限制: 当输入类型为video_source时必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
stream_name | 否 | String | 参数解释: 视频流名称。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
bucket | 否 | String | 参数解释: OBS桶名。 约束限制: 当输入为obs类型时必填。 取值范围: 长度限制为[0, 63]。 默认取值: 不涉及。 |
path | 否 | String | 参数解释: OBS的路径。 约束限制: 当输入为obs类型时必填。 取值范围: 长度限制为[0, 1023]。 默认取值: 不涉及。 |
url | 否 | String | 参数解释: url输入源的地址或者获取视频流地址的restful请求地址。 约束限制: 当输入为url类型或者edgerestful类型时必填。 取值范围: 长度限制为[0, 1000]。 默认取值: 不涉及。 |
headers | 否 | Object | 参数解释: 获取视频流地址的restful请求携带的请求头。整体呈json格式,以键值对的形式表示请求头和取值。 约束限制: 当输入为edgerestful类型时可选。 取值范围: 组数取值范围为[0, 10]。 默认取值: 不涉及。 |
certificate_check | 否 | Boolean | 参数解释: 是否需要对https请求进行证书校验。 约束限制: 当输入为edgerestful类型时必填。 取值范围: 默认取值: 不涉及。 |
rtsp_path_in_response | 否 | String | 参数解释: restful请求返回的body中,视频流地址的路径。 约束限制: 当输入为edgerestful类型时必填。 取值范围: 长度范围为[0, 1024]。 默认取值: 不涉及。 |
device_id | 否 | String | 参数解释: VCN设备ID。 约束限制: 当输入为vcn类型时必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
stream_type | 否 | Integer | 参数解释: 准备进行分析的码流。取值范围为1~3,其中1代表主码流,2代表子码流1,3代表子码流2。 约束限制: 当输入为vcn类型时选填。 取值范围: [1, 3]。 默认取值: 不涉及。 |
id | 否 | String | 参数解释: IEF挂载的边缘设备的ID。 约束限制: 当输入为edgecamera类型时必填。 取值范围: 长度范围为[0, 63]。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
ip | 是 | String | 参数解释: VCN服务器的IP地址。 约束限制: 仅输入类型为vcn时必填。 取值范围: 不涉及。 默认取值: 不涉及。 |
port | 是 | Integer | 参数解释: VCN服务器的端口号。 约束限制: 仅输入类型为vcn时必填。 取值范围: [0, 65535]。 默认取值: 不涉及。 |
username | 是 | String | 参数解释: VCN服务器的账号名。 约束限制: 仅输入类型为vcn时需填且必填。 取值范围: 需要满足正则表达式^.{1,100}$。 默认取值: 不涉及。 |
password | 是 | String | 参数解释: VCN服务器的与账号对应的密码。 约束限制: 仅输入类型为vcn时必填。 取值范围: 需要满足正则表达式^.{1,1000}$。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
obs | 否 | TaskOutputObs object | 参数解释: 输出为obs类型时的配置信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
dis | 否 | TaskOutputDis object | 参数解释: 输出为dis类型时的配置信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
webhook | 否 | TaskOutputWebhook object | 参数解释: 输出为webhook类型时的配置信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
event_center | 否 | Boolean | 参数解释: 是否把告警发送至事件中心,云上作业该字段有效。 约束限制: 不涉及。 取值范围: 默认取值: false |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
bucket | 是 | String | 参数解释: OBS桶名。 约束限制: 选用obs类型输出时必填。 取值范围: 校验规则:^[a-z0-9](?!.[-.][-.].)([a-z0-9-.]{1,61})[a-z0-9]$ 长度范围为[0, 63]。 默认取值: 不涉及。 |
path | 是 | String | 参数解释: OBS的路径。 约束限制: 选用obs类型输出时必填。 取值范围: 校验规则:^(?![/.\s])(?!.//.)([^:*?"<>|]{0,1023})(?<![.\s])$ 长度范围为[0, 1023]。 默认取值: 不涉及。 |
data_category | 否 | Array of strings | 参数解释: 作业输出数据类别的列表,仅部分服务需要。当输出类型下有这个列表时,表示希望这个输出类型下存放dataCategory列表内的数据。 约束限制: 不涉及。 取值范围: 数组长度限制为[0, 10]。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
stream_name | 是 | String | 参数解释: DIS流名称。 约束限制: 选用dis类型输出时必填。 取值范围: 数组长度限制为[0, 64]。 默认取值: 不涉及。 |
data_category | 否 | Array of strings | 参数解释: 作业输出数据类别的列表,仅部分服务需要。当输出类型下有这个列表时,表示希望这个输出类型下存放dataCategory列表内的数据。 约束限制: 不涉及。 取值范围: 数组长度限制为[0, 10]。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
url | 是 | String | 参数解释: 结果回调地址。 约束限制: 选用webhook类型输出时必填。 取值范围: 数组长度限制为[0, 1000]。 默认取值: 不涉及。 |
headers | 是 | Object | 参数解释: 结果回调时需要携带的请求头,整体呈json格式,以键值对的形式表示请求头和取值。 约束限制: 选用webhook类型输出时必填。 取值范围: 组数限制为[1, 10]。 默认取值: 不涉及。 |
data_category | 否 | Array of strings | 参数解释: 作业输出数据类别的列表,仅部分服务需要。当输出类型下有这个列表时,表示希望这个输出类型下存放dataCategory列表内的数据。 约束限制: 不涉及。 取值范围: 数组长度限制为[0, 10]。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
common | 否 | CrowdCountCommon object | 参数解释: 作业运行时指定的具体的自定义配置项,由服务发布者定义。整体呈json格式,具体配置项参见相应算法服务的说明。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
alarm_threshold | 否 | String | 参数解释: 人数告警阈值列表,当视频帧中出现大于等于该阈值的人数时,通过JSON输出告警图片。该字段的输入情况如下:可以针对每个ROI区域输入不同的告警阈值,每个输入用空格进行分隔。
约束限制: 不涉及。 取值范围: 正整数 默认取值: 50 |
sampling_time_interval | 否 | Integer | 参数解释: 视频采样处理时间间隔,单位秒。默认10秒采样一次视频画面,两次处理将会间隔N帧画面。 约束限制: 不涉及。 取值范围: [5, 3600]。 默认取值: 10 |
alert_mode | 否 | String | 参数解释: 告警模式。共有两种告警模式,分别为single和periodic。 约束限制: 不涉及。 取值范围: 枚举值。 默认取值: single |
banner_detection_sw | 否 | Integer | 参数解释: 横幅检测开关。当打开横幅检测开关时,会对视频画面中的ROI区域进行横幅检测。为0时表示关闭,为1时表示打开。 约束限制: 不涉及。 取值范围: [0, 1]。 默认取值: 0 |
banner_threshold | 否 | String | 参数解释: 横幅告警阈值列表。该参数的用法可以参考alarm_threshold字段。 约束限制: 不涉及。 取值范围: 正整数 默认取值: 1 |
visualization_output_sw | 否 | Integer | 参数解释: 可视化输出开关。默认每个ROI区域检测到的人数大于告警阈值时,只会发送原图信息。只有打开可视化开关后,才会将检测到的行人和横幅进行可视化输出。可视化场景如下: 约束限制: 不涉及。 取值范围: [0, 1]。 默认取值: 0 |
density_sw | 否 | Integer | 参数解释: 密度估计开关。用户可自定义是否启用密度估计模型来评估人数统计结果。推荐当人数较多、告警人数阈值较大的场景启用密度估计模型;当人数较少、告警人数阈值较低的场景可不用密度估计模型。 约束限制: 不涉及。 取值范围: [0, 1]。 默认取值: 1 |
image_compression_ratio | 否 | Integer | 参数解释: 对应控制台的界面参数“图片压缩比”。默认值为90,表示图片压缩比为90%。 约束限制: 不涉及。 取值范围: [20, 100]。 默认取值: 90 |
target_roi | 否 | String | 参数解释: 对应控制台的界面参数“检测区域设置”。
约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 参数没有携带时,默认区域为整个视频帧。 |
响应参数
状态码: 200
参数 | 参数类型 | 描述 |
|---|---|---|
tasks | Array of TaskResponse objects | 参数解释: VIAS平台创建作业的作业id列表。 取值范围: 不涉及。 |
状态码: 400
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 参数解释: 错误码。 取值范围: 不涉及。 |
error_msg | String | 参数解释: 错误信息描述。 取值范围: 不涉及。 |
detail | String | 参数解释: 错误详情。 取值范围: 不涉及。 |
params | Array of strings | 参数解释: 错误参数列举。 取值范围: 数组长度[0, 1]。 |
reason | String | 参数解释: 错误原因。 取值范围: 不涉及。 |
advice | String | 参数解释: 建议。 取值范围: 不涉及。 |
状态码: 500
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 参数解释: 错误码。 取值范围: 不涉及。 |
error_msg | String | 参数解释: 错误信息描述。 取值范围: 不涉及。 |
detail | String | 参数解释: 错误详情。 取值范围: 不涉及。 |
params | Array of strings | 参数解释: 错误参数列举。 取值范围: 数组长度[0, 1]。 |
reason | String | 参数解释: 错误原因。 取值范围: 不涉及。 |
advice | String | 参数解释: 建议。 取值范围: 不涉及。 |
请求示例
边缘高密度人群统计作业创建,使用输入源为video_source,输出为webhook。
POST /v2/{project_id}/services/c-crowdcount-edge/tasks { "name" : "crowdcount-edge-task", "description" : "Crowdcounttedetection task test", "input" : { "type" : "video_source", "data" : [ { "video_source_id" : "xxxxxxx-xxxxxxx-xxxxxxx-xxxxx-xxxxxx" } ] }, "output" : { "webhook" : { "url" : "https://127.0.0.1:8080/webhook", "headers" : { "x-auth-token" : "tokentest" } } }, "service_version" : "3.0", "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e", "config" : { "common" : { "banner_detection_sw" : 1, "banner_threshold" : "2", "alarm_threshold" : "5", "sampling_time_interval" : 8, "density_sw" : 1, "visualization_output_sw" : 1, "image_compression_ratio" : 80, "target_roi" : "{\"polygons\":[{\"data\":[[100,100],[1800,100],[1800,1000],[100,1000]]}]}" } } }边缘高密度人群统计作业创建,使用输入源为VCN,输出为dis。
POST /v2/{project_id}/services/c-crowdcount-edge/tasks { "name" : "crowdcount-edge-task", "description" : "Crowdcounttedetection task test", "input" : { "type" : "vcn", "data" : [ { "device_id" : "aec5857c-222f-4aa9-be39-23654e118886", "stream_type" : 2 } ], "vcn" : { "ip" : "127.0.0.1", "port" : 8080, "username" : "vcntest", "password" : "123456abcd" } }, "output" : { "dis" : { "stream_name" : "dis-test" } }, "service_version" : "3.0", "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e", "config" : { "common" : { "banner_detection_sw" : 1, "banner_threshold" : "2", "alarm_threshold" : "5", "sampling_time_interval" : 8, "density_sw" : 1, "visualization_output_sw" : 1, "image_compression_ratio" : 80, "target_roi" : "{\"polygons\":[{\"data\":[[100,100],[1800,100],[1800,1000],[100,1000]]}]}" } } }边缘高密度人群统计作业创建,使用输入源为边缘摄像头,输出为dis。
POST /v2/{project_id}/services/c-crowdcount-edge/tasks { "name" : "crowdcount-edge-task", "description" : "Crowdcounttedetection task test", "input" : { "type" : "edgecamera", "data" : [ { "id" : "aec5857c-222f-4aa9-be39-23654e118886", "index" : 0 } ] }, "output" : { "dis" : { "stream_name" : "crowdcount-edge" } }, "service_version" : "3.0", "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e", "config" : { "common" : { "banner_detection_sw" : 1, "banner_threshold" : "2", "alarm_threshold" : "5", "sampling_time_interval" : 8, "density_sw" : 1, "visualization_output_sw" : 1, "image_compression_ratio" : 80, "target_roi" : "{\"polygons\":[{\"data\":[[100,100],[1800,100],[1800,1000],[100,1000]]}]}" } } }边缘高密度人群统计作业创建,使用输入源为restful,输出为webhook。
POST /v2/{project_id}/services/c-crowdcount-edge/tasks { "name" : "crowdcount-edge-task", "description" : "Crowdcounttedetection task test", "input" : { "type" : "restful", "data" : [ { "url" : "https://restfultest", "certificate_check" : false, "node_id" : "aec5857c-222f-4aa9-be39-23654e118886", "rtsp_path_in_response" : "http://testpath" } ] }, "output" : { "webhook" : { "url" : "https://127.0.0.1:8080/webhook", "headers" : { "x-auth-token" : "tokentest" } } }, "service_version" : "3.0", "resource_order_id" : "840a5cf90d4a4bbaa71f251dfe8fe64e", "config" : { "common" : { "banner_detection_sw" : 1, "banner_threshold" : "2", "alarm_threshold" : "5", "sampling_time_interval" : 8, "density_sw" : 1, "visualization_output_sw" : 1, "image_compression_ratio" : 80, "target_roi" : "{\"polygons\":[{\"data\":[[100,100],[1800,100],[1800,1000],[100,1000]]}]}" } } }
响应示例
状态码: 200
创建服务作业成功。
{
"tasks" : [ {
"id" : "20690c67d71549c39085a3b28c18f24f"
} ]
} 状态码
状态码 | 描述 |
|---|---|
200 | 创建服务作业成功。 |
400 | 请求错误。 |
500 | 内部错误。 |
错误码
请参见错误码。

