提交图片识别
请求方式: POST(HTTPS)
请求地址: https://openapi.waiqin365.com/api/ai/v1/submitAiCognition/{openid}/{timestamp}/{digest}/{msg_id}
在线调试
请求包体:
{
"bizId": 5122096114208480004,
"images": [{
"imageType": "2",
"imageUrl": "http://image-test.waiqin365.com/5164504684863877680/user_defined/201906/20190625133915796_4bba710b_CAMERA_11001999244.jpg"
}]
}
请求信息
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
bizId | Long | 是 | 业务ID,不允许重复,且必须为Long类型,不能超过19位;提交图片后可根据该id查询识别结果 |
images | [] | 是 | 图片列表,一组照片最多不超过10张 |
images.imageType | CHAR(1) | 是 | 0-表示不传入陈列类型,由外勤365AI服务器自动识别照片返回照片的陈列类型 1-低温拍照 2-货架 3-堆头 4-端架 5-收银台 6-形象好陈列 7-冷风柜 8-单开门冰箱 9-双开门冰箱 10-卧柜 21-热饮机 24-割箱 25-挂架/挂网 26-侧柜; 外勤365AI服务器按照传入的陈列类型识别返回对应的结果 |
images.imageUrl | VARCHAR(200) | 是 | 图片URL地址,可以直接访问的图片地址 |
返回结果:
{
"return_code": "0",
"return_msg": "响应信息",
"msg_id": "{ msg_id }",
"response_data": "<<DATA>>"
}
数据DATA示例:
{
"bizId": 5122096114208480004,
"images": [{
"imageId": 6604454490876496254,
"imageUrl": "http://image-test.waiqin365.com/5164504684863877680/user_defined/201906/20190625133915796_4bba710b_CAMERA_11001999244.jpg"
}]
}
响应信息
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
bizId | Long | 是 | 业务ID,不允许重复,且必须为Long类型,不能超过19位;提交图片后可根据该id查询识别结果 |
images | [] | 是 | 识别结果 |
images.imageId | Long | 是 | 外勤365图片ID |
images.imageUrl | VARCHAR(200) | 是 | 图片URL地址 |
实时查询识别结果
说明: 识别结果是"秒出",所以您不用等待,可以实时查询识别结果。
请求方式: POST(HTTPS)
请求地址: https://openapi.waiqin365.com/api/ai/v1/queryAiResult/{openid}/{timestamp}/{digest}/{msg_id}
在线调试
请求包体:
{
"bizId": 5122096114208480004
}
请求信息
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
bizId | Long | 是 | 业务ID |
返回结果:
{
"return_code": "0",
"return_msg": "响应信息",
"msg_id": "{ msg_id }",
"response_data": "<<DATA>>"
}
数据DATA示例:
{
"aiResults": [
{
"state": "1",
"imageId": 8838268655639990915,
"imageUrl": "http://image-test.waiqin365.com/5164504684863877680/user_defined/201906/20190625133915796_4bba710b_CAMERA_11001999244.jpg",
"repeat": 0,
"imageType": "2",
"imageLayout": 6,
"product_purity": "13%",
"product_proportion": "13%",
"fridge_fullness": "100%",
"fridge_door_struc": "0",
"column_num":5,
"height":3,
"area":2.5,
"units": [
{
"serial_num":1,
"layer": 6,
"repeat": 0,
"score": 0.998,
"skuId": "baiyin_meinianda_002",
"waiqin365_product_id": "8838268655639990915",
"x1": 570,
"x2": 624,
"y1": 1103,
"y2": 1291
},
{
"serial_num":2,
"layer": 3,
"repeat": 0,
"score": 0.976,
"skuId": "baiyin_meinianda_003",
"waiqin365_product_id": "7415268698419990369",
"x1": 671,
"x2": 725,
"y1": 1109,
"y2": 1289
}
]
},
{
"state": "1",
"imageId": 8588886420339156064,
"imageUrl": "http://image-test.waiqin365.com/5164504684863877680/user_defined/201906/20190626142022976_36194458_CAMERA_21002002281.jpg",
"repeat": 1,
"imageType": "2",
"imageLayout": 5,
"product_purity": "15%",
"product_proportion": "15%",
"fridge_fullness": "100%",
"fridge_door_struc": "0",
"column_num":4,
"height":4,
"area":3.6,
"units": [
{
"serial_num":1,
"layer": 5,
"repeat": 1,
"score": 0.894,
"skuId": "baiyin_meinianda_018",
"waiqin365_product_id": "8838268655639990915",
"x1": 1603,
"x2": 1801,
"y1": 3854,
"y2": 4415
},
{
"serial_num":2,
"layer": 4,
"repeat": 0,
"score": 0.994,
"skuId": "baiyin_meinianda_019",
"waiqin365_product_id": "4125268655639990951",
"x1": 504,
"x2": 712,
"y1": 1047,
"y2": 1126
}
]
}
],
"bizId": "5122096114208480001",
"state": "1"
}
响应信息
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
bizId | Long | 是 | 业务ID |
state | CHAR(1) | 是 | 识别状态:1-已处理,0-处理中;一组照片全部识别完成就返回已处理,只要有一张照片没有识别完成就是处理中 |
aiResults | [] | 是 | 一组照片中每张照片的识别结果 |
aiResults.state | CHAR(1) | 是 | 图片识别状态:0-识别失败,1-识别成功,2-识别中 |
aiResults.imageId | Long | 是 | 外勤365图片ID |
aiResults.imageUrl | VARCHAR(200) | 是 | 图片URL地址 |
aiResults.imageType | CHAR(1) | 是 | 陈列类型:1-低温拍照 2-货架 3-堆头 4-端架 5-收银台 6-形象好陈列 7-冷风柜 8-单开门冰箱 9-双开门冰箱 10-卧柜 21 热饮机 24-割箱 25-挂架/挂网 26-侧柜 |
aiResults.imageLayout | CHAR(1) | 是 | 总层数;陈列类型为货架、端架、冰箱时才有返回值 |
aiResults.product_purity | VARCHAR(20) | 是 | 本品纯净度=本品排面数/(本品排面数+竞品排面数+未识别排面数);陈列类型为冰箱的时候才有返回值 |
aiResults.product_proportion | VARCHAR(20) | 是 | 本品冰箱占比=本品排面数/(本品排面数+竞品排面数+未识别排面数+空位数);陈列类型为冰箱的时候才有返回值 |
aiResults.fridge_fullness | VARCHAR(20) | 是 | 冰箱饱满度=(本品排面数+竞品排面数+未识别排面数)/(本品排面数+竞品排面数+未识别排面数+空位数);陈列类型为冰箱的时候才有返回值 |
aiResults.fridge_door_struc | CHAR(1) | 是 | 0-单开门 1-多开门 2其他;陈列类型为冰箱的时候才有返回值 |
aiResults.column_num | INT | 是 | 列的数量;陈列类型为割箱的时候才有返回值 |
aiResults.height | INT | 是 | 所有列中最高列的高度;陈列类型为割箱的时候才有返回值 |
aiResults.area | FLOAT | 是 | 地堆面积;陈列类型为地堆的时候才有返回值 |
aiResults.units | [] | 是 | 识别出的SKU集合 |
aiResults.units.waiqin365_product_id | VARCHAR(20) | 是 | 外勤365商品ID |
aiResults.units.serial_num | INT | 是 | SKU的序号:一张照片从左到右从上到下进行排序;序号可以帮助还原SKU在图片中的相对位置;标注序号的范围包括本品、竞品、未识别、空位;陈列类型为货架、端架、冰箱时才有返回值 |
aiResults.units.layer | INT | 是 | SKU所在层数;陈列类型为货架、端架、冰箱时才有返回值 |
aiResults.units.repeat | INT | 是 | 0-不和其他照片重复的SKU,1-和其他照片重复的SKU;对于货架的陈列场景,外勤365把一组照片中两两去重,找出和其他照片重复的SKU,企业可以根据该返回值实现货架拼接去重 |
aiResults.units.skuId | VARCHAR(20) | 是 | SKU识别码,‘NULL_SKU'表示空位,‘ALL_SKU’表示未识别 |
aiResults.units.score | FLOAT | 是 | 识别SKU可信度 :越接近1可信度越高 |
aiResults.units.x1 | INT | 是 | SKU的左上角顶点横坐标X1;对角线的两个顶点可以确定一个矩形 |
aiResults.units.y1 | INT | 是 | SKU的左上角顶点纵坐标Y1 |
aiResults.units.x2 | INT | 是 | SKU的右下角顶点横坐标X2 |
aiResults.units.y2 | INT | 是 | SKU的右下角顶点纵坐标Y2 |