1. 图片分析相关接口
图片分析
1.1. 图片分析
基础信息
路径: /v1/api/imageAnalyze/analyzeEvent
请求方法: POST
请求参数
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
Content-Type | application/json | 是 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
channelId | string | 否 | 通道号 | |
deviceUuid | string | 否 | 算力设备uuid 为空默认用core | |
aiPaasAlgoId | string | 是 | 算法唯一key 参考‘查询设备算法包详情’接口 | |
imageData | object | 是 | 图片信息 | |
|─imageType | integer | 否 | 1: gsp的uri, 2: 图片base64 | |
|─imageUri | string | 否 | 图片地址,支持上传文件返回的uri | |
|─imageData | string | 否 | 图片二进制内容的base64编码 | |
|─imageFeature | string | 否 | 图片feature | |
customSettings | object | 否 | 检测参数 | |
|─labels | object | 否 | 标记信息 | |
|─algoCabinName | string | 否 | 算法唯一key | |
|─version | string | 否 | V2.0.0 | 算法仓规范协议版本,默认 V2.0.0 |
|─rulesParams | array | 否 | 事件布控参数 | |
|─ | object | |||
|─eventType | string | 否 | 卡片event type 参考‘算法卡片列表查询’接口 | |
|─ruleId | integer | 否 | 规则 ID 用于区分相同 eventType 的不同规则 | |
|─areas | array | 否 | 检测区域 | |
|─ | object | |||
|─areaId | integer | 否 | 区域id,不能重复 | |
|─points | array | 否 | 封闭多边形区域 | |
|─ | object | |||
|─x | number | 否 | The X coordinate of this Point2D . |
|
|─y | number | 否 | The Y coordinate of this Point2D . |
|
|─areaType | string | 否 | 区域类型,支持["POLYGON"],如无特殊说明,请填写 "POLYGON | |
|─masks | array | 否 | 屏蔽区域 | |
|─ | object | |||
|─maskId | integer | 否 | 区域id,不能重复 | |
|─points | array | 否 | 封闭多边形区域 | |
|─ | object | |||
|─x | number | 否 | The X coordinate of this Point2D . |
|
|─y | number | 否 | The Y coordinate of this Point2D . |
|
|─maskType | string | 否 | 区域类型,支持["POLYGON"],如无特殊说明,请填写 "POLYGON | |
|─extendParams | object | 否 | 扩展参数 | |
|─targetMin | number | 否 | 目标边长占图片边长最小比例,范围0-1 | |
|─targetMax | number | 否 | 目标边长占图片的最大比例,范围0-1 | |
|─targetTypes | array | 否 | 目标类型列表,支持人员:PERSON 车辆:CAR 电动车:ELECTRIC_BIKE 火焰:FIRE 烟雾:SMOKE 油品:OIL_SPILL 设施:FIRE_EQUIPMENT | |
|─ | string | |||
|─threshold | object | 否 | 事件阈值 {eventType:float},不填充时,使用默认值,值示例: {"RUN":0.6} | |
|─key | object | |||
|─custom | object | 否 | 事件自定义子项参数 | |
|─key | object | |||
|─custom | object | 否 | 自定义参数信息 | |
|─key | object |
Body示例:
{
"channelId": "",
"aiPaasAlgoId": "",
"imageData": {
"imageType": 0,
"imageUri": "",
"imageData": "",
"imageFeature": ""
},
"customSettings": {
"labels": {
"algoCabinName": "",
"version": "V2.0.0"
},
"rulesParams": [
{
"eventType": "",
"ruleId": 0,
"areas": [
{
"areaId": 0,
"points": [
{
"x": 0.0,
"y": 0.0
}
],
"areaType": ""
}
],
"masks": [
{
"maskId": 0,
"points": [
{
"x": 0.0,
"y": 0.0
}
],
"maskType": ""
}
],
"extendParams": {
"targetMin": 0.0,
"targetMax": 0.0,
"targetTypes": [
""
],
"threshold": {
"": {}
},
"custom": {
"": {}
}
}
}
],
"custom": {
"": {}
}
}
}
返回数据
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
content-type | application/json;charset=UTF-8 | 否 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
code | integer | 否 | 返回值code | |
msg | string | 否 | 返回值消息 | |
data | object | 否 | 具体的返回值 | |
|─recvTs | string | 否 | 图片解析毫秒时间戳 | |
|─alarmEvents | array | 否 | 目标信息 | |
|─ | object | |||
|─ruleId | integer | 否 | 规则 ID | |
|─eventType | string | 否 | 报警事件类型 | |
|─subType | string | 否 | 报警事件子类型 | |
|─targets | array | 否 | 目标信息 | |
|─ | object | |||
|─areaId | string | 否 | 事件对应的区域id | |
|─points | array | 否 | 归一化坐标 | |
|─ | object | |||
|─x | number | 否 | The X coordinate of this Point2D . |
|
|─y | number | 否 | The Y coordinate of this Point2D . |
|
|─targetScore | number | 否 | 置信度 | |
|─targetType | string | 否 | 目标类型 | |
|─custom | object | 否 | 事件自定义子项响应参数 | |
|─key | object |
响应示例:
{
"code": 0,
"msg": "",
"data": {
"recvTs": "",
"alarmEvents": [
{
"ruleId": 0,
"eventType": "",
"subType": "",
"targets": [
{
"areaId": "",
"points": [
{
"x": 0.0,
"y": 0.0
}
],
"targetScore": 0.0,
"targetType": "",
"custom": {
"": {}
}
}
]
}
]
}
}
1.2. 添加图片仓配置
基础信息
路径: /v1/api/imageAnalyze/addPictureConfig
请求方法: POST
请求参数
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
Content-Type | application/json | 是 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
aiPaasAlgoId | string | 是 | 算法包ID | |
eventType | string | 是 | 卡片类型 | |
iou | number | 否 | IOU阈值 0-1 | |
timeInterval | integer | 否 | 报警间隔 0-86400秒 |
Body示例:
{
"aiPaasAlgoId": "",
"eventType": "",
"iou": 0.0,
"timeInterval": 0
}
返回数据
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
content-type | application/json;charset=UTF-8 | 否 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
code | integer | 否 | 返回值code | |
msg | string | 否 | 返回值消息 | |
data | object | 否 | 具体的返回值 |
响应示例:
{
"code": 0,
"msg": "",
"data": null
}
1.3. 删除图片仓配置
基础信息
路径: /v1/api/imageAnalyze/deletePictureConfig
请求方法: POST
请求参数
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
Content-Type | application/json | 是 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
aiPaasAlgoId | string | 是 | 算法包ID | |
eventType | string | 是 | 卡片类型 |
Body示例:
{
"aiPaasAlgoId": "",
"eventType": ""
}
返回数据
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
content-type | application/json;charset=UTF-8 | 否 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
code | integer | 否 | 返回值code | |
msg | string | 否 | 返回值消息 | |
data | object | 否 | 具体的返回值 |
响应示例:
{
"code": 0,
"msg": "",
"data": null
}
1.4. 查看图片仓配置
基础信息
路径: /v1/api/imageAnalyze/getPictureConfig
请求方法: POST
请求参数
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
Content-Type | application/json | 是 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
eventType | string | 是 | 卡片类型 | |
aiPaasAlgoId | string | 是 | 算法包ID |
Body示例:
{
"eventType": "",
"aiPaasAlgoId": ""
}
返回数据
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
content-type | application/json;charset=UTF-8 | 否 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
code | integer | 否 | 返回值code | |
msg | string | 否 | 返回值消息 | |
data | object | 否 | 具体的返回值 | |
|─aiPaasAlgoId | string | 否 | 算法唯一key | |
|─eventType | string | 否 | 卡片类型 | |
|─iou | number | 否 | iou阈值 IOU阈值 |
|
|─timeInterval | integer | 否 | 时间间隔,单位s | |
|─thresholdRun | integer | 否 | 算法阈值 | |
|─type | integer | 否 | 1 标识系统默认 2 标识 用户可配置 1 标识系统默认 2 标识用户可配置 |
响应示例:
{
"code": 0,
"msg": "",
"data": {
"aiPaasAlgoId": "",
"eventType": "",
"iou": 0.0,
"timeInterval": 0,
"thresholdRun": 0,
"type": 0
}
}
1.5. 更新图片仓配置
基础信息
路径: /v1/api/imageAnalyze/updatePictureConfig
请求方法: POST
请求参数
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
Content-Type | application/json | 是 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
eventType | string | 是 | 卡片类型 算法卡片 |
|
iou | number | 否 | IOU阈值 0-1 | |
timeInterval | integer | 否 | 报警间隔 0-86400秒 | |
aiPaasAlgoId | string | 是 | 算法包id |
Body示例:
{
"eventType": "",
"iou": 0.0,
"timeInterval": 0,
"thresholdRun": 0,
"aiPaasAlgoId": ""
}
返回数据
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
content-type | application/json;charset=UTF-8 | 否 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
code | integer | 否 | 返回值code | |
msg | string | 否 | 返回值消息 | |
data | object | 否 | 具体的返回值 |
响应示例:
{
"code": 0,
"msg": "",
"data": null
}
1.6. 查询设备算法包详情
基础信息
Path: /v1/api/imageAnalyze/algorithm/getDeviceAlgos
Method: POST
请求参数
Headers
参数名称 | 参数值 | 是否必须 | 备注 |
---|---|---|---|
Content-Type | application/json | 是 |
Body
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
deviceUuid | string | 是 | 设备uuid | |
installed | boolean | 否 | 是否被安装 | |
algoCapacitys | integer[] | 否 | 算法能力列表 1: 视频流 2: 图片流 3: 图片分析 | |
algoType | string | 否 | 算法类型 | |
channelUuids | string[] | 否 | 通道uuid,取所有通道类型交集。和 algoCapacity 二选一 | |
algoBusinessType | string | 否 | 算法商业化分类 FACE(人脸), STRUCTURE(结构化), ALARM(警戒), SAFETY(安监), MCLZ(明厨亮灶), etc... | |
cabinCategory | integer | 否 | - 1: 人脸、结构化算法- 2: 长尾算法仓 |
Body示例:
{
"deviceUuid": "DE-35bedb9f27a340039520cc4846a48925",
"installed": true,
"algoCapacitys": [
3
],
"algoType": "",
"channelUuids": [
""
],
"algoBusinessType": "",
"cabinCategory": 2
}
返回数据
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
content-type | application/json;charset=UTF-8 | 否 |
Body
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
code | integer | 否 | 状态码 | |
msg | string | 否 | 状态描述 | |
data | object | 否 | 具体的返回值 | |
|─total | integer | 否 | 数量 | |
|─list | object[] | 否 | 设备信息返回 | |
|─captureEventMaxNum | integer | 否 | 图片布控内包含卡片的最大数量 | |
|─installedTime | string | 否 | 该算法包安装的时间,Unix 时间戳,单位是毫秒 | |
|─description | string | 否 | 算法包功能描述 | |
|─algoName | string | 否 | 算法包名称 | |
|─source | integer | 否 | - 1: 手动导入- 2: 系统初始化 | |
|─aiPaasUploadId | string | 否 | 用户上传后生成的id,如为空表示系统自带的算法包 | |
|─uploadedUuid | string | 否 | 上传完成后生成的uuid | |
|─aiPaasAlgoId | string | 否 | aipaas算法包algo_id | |
|─algoUuid | string | 否 | 算法包uuid | |
|─vendor | string | 否 | GPU产商: NVIDIA, AXERA | |
|─algoType | string | 否 | 算法包具体类型,同一种算法包对不同的vendor、不同分析源类型均不同 | |
|─algoBusinessType | string | 否 | 算法商业化分类 FACE(人脸), STRUCTURE(结构化), ALARM(警戒), SAFETY(安监), MCLZ(明厨亮灶), etc | |
|─algoBusinessTypeName | string | 否 | 算法商业化分类描述(简短) 人脸,结构化,警戒,安监,明厨亮灶 etc | |
|─videoEventMaxNum | integer | 否 | 视频布控内包含卡片的最大数量 | |
|─deviceUuid | string | 否 | 算力单元的uuid | |
|─accelerator | string | 否 | GPU型号: 如2070,T4,AX630... | |
|─creator | string | 否 | 创建的用户 | |
|─replicas | integer | 否 | 算法包安装的复本数量 | |
|─uploadedTime | string | 否 | 算法包上传时间,Unix 时间戳,单位是毫秒 | |
|─algoHighLevelType | string | 否 | NORMAL(常规); HIGH(带高阶功能) | |
|─analyzeEventMaxNum | integer | 否 | 图片分析内包含卡片的最大数量 | |
|─streamVideoQuota | integer | 否 | 如果存在视频流能力该字段不为0 | |
|─streamCaptureQuota | integer | 否 | 如果存在抓拍流能力该字段不为0 | |
|─uri | string | 否 | 算法包在存储服务的地址uri,可能为空 | |
|─url | string | 否 | 算法包url地址 | |
|─installedUuid | string | 否 | 算法包安装成功后存在,表示此次安装的uuid。升级或重新安装后会改变。 | |
|─algoVersion | string | 否 | 算法版本 | |
|─status | string | 否 | 算法包运行状态:Running,Pending... | |
|─analyzeQuota | integer | 否 | 如果存在图片分析能力该字段不为0 |
响应示例:
{
"code": 0,
"msg": "成功"
}
1.7. 算法卡片列表查询
基础信息
路径: /v1/api/imageAnalyze/cardListForPic
请求方法: POST
请求参数
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
Content-Type | application/json | 是 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
algoUuid | string | 是 | 算法包uuid |
Body示例:
{
"algoUuid": "AG-001"
}
返回数据
Headers:
名称 | 值 | 必须 | 备注 |
---|---|---|---|
content-type | application/json;charset=UTF-8 | 否 |
Body:
名称 | 类型 | 必须 | 默认值 | 备注 |
---|---|---|---|---|
code | integer | 否 | 返回值code | |
msg | string | 否 | 返回值消息 | |
data | array | 否 | 具体的返回值 | |
|─ | object | |||
|─algoCardUuid | string | 否 | 算法卡片uuid | |
|─algoCardType | string | 否 | 算法卡片的类型,等同于eventType | |
|─algoCardTypeName | string | 否 | 算法卡片名称 |
响应示例:
{
"code": 0,
"msg": "",
"data": [
{
"algoCardUuid": "",
"algoCardType": "",
"algoCardTypeName": ""
}
]
}