资讯 社区 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

商品检测API调用方法

接口描述

本文档主要说明定制化商品检测模型发布后获得的API如何使用,如有疑问可以通过以下方式联系我们:

  • 在百度智能云控制台内提交工单,咨询问题类型请选择人工智能服务
  • 进入EasyDL社区交流,与其他开发者进行互动

接口鉴权

  1. 进入EasyDL零售版的百度智能云控制台应用列表页面,如下图所示:

111.png

  1. 如果还未创建应用,请点击「创建应用」按钮进行创建。创建应用后,参考鉴权参考文档,使用API Key(AK)和Secret Key(SK)获取access_token

请求说明

请求示例

HTTP 方法:POST

请求URL: 请首先在EasyDL零售版进行定制商品检测模型训练,完成训练后申请上线,上线成功后可在服务列表中查看并获取url。

URL参数:

参数
access_token 通过API Key和Secret Key获取的access_token,参考鉴权认证机制文档

Header如下:

参数
Content-Type application/json

注意:如果出现336001和336002的错误码很可能是因为请求方式错误,与其他图像识别服务不同的是定制化图像识别服务以json方式请求。

Body请求示例:

{
    "image": "<base64数据>"
}

Body中放置请求参数,参数详情如下:

请求参数

参数 是否必选 类型 可选值范围 说明
image string - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式 注意请去掉头部
threshold number 0~1 可精确到小数点后两位,默认值为建议阈值,请在 我的模型列表-完整评估结果 查看推荐阈值。阈值(threshold),是正确结果的判定标准,例如阈值是0.6,置信度大于0.6的识别结果会被当作正确结果返回。
split_shelf boolean True/False True表示区分货架节数,False表示不区分货架节数。默认为False。当未开通货架层数识别服务功能时,传该参数不生效。

提示:image参数中“去掉头部”指的是图片经base64编码后的头部信息「data:image/jpeg;base64,」,如下图所示:

返回说明

排面数:同层同列去重后的SKU检测数量

开启模型服务功能可参考服务功能文档

返回参数

返回结果为JSON格式

字段 是否必选 类型 说明 需要开启的模型服务功能
recapture_score float 图片是对手机屏幕翻拍的可能性评分。翻拍判定方法:设定一个判定为翻拍图片的阈值,即如果recapture_score大于这个值,则认为这张图片是翻拍。请结合业务实际情况和实测结果进行设定阈值 商品陈列翻拍识别
statistics object{} 对于整张图片的综合识别统计结果 商品排面占比统计
+known_sku_num int 定制模型识别的SKU总数量 商品排面占比统计
+unknown_sku_num int 定制模型未识别的SKU总数量 商品排面占比统计
+known_sku_facing int 定制模型识别的SKU总排面数量,如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义 商品排面占比统计
+unknown_sku_facing int 定制模型未识别的SKU总排面数量,如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义 商品排面占比统计
+vacancy_num int 货架上的空位数量,如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义 商品排面占比统计
+share_of_shelf float 定制商品检测模型识别SKU的排面占比=
(known_sku_facing)/(known_sku_facing+
unknown_sku_facing)。
如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义
商品排面占比统计
+known_sku_proportion float 定制商品检测模型识别SKU的数量占比=
(known_sku_num)/(known_sku_num+
unknown_sku_num)
商品排面占比统计
+utilization float 货架利用率=
(known_sku_num)/(known_sku_num+
unknown_sku_num+vacancy_num)。
如果图片为非货架陈列场景(如冰柜、端架、普通货架等),结果不具参考意义
商品排面占比统计
sku_count array[object] 定制商品检测模型识别的各类SKU的总数和排面占比 商品排面占比统计
+name string 定制商品检测模型识别的SKU标签,SKU名称_品牌名称_规格参数,为在EasyDL零售版上创建SKU时填写的内容 商品排面占比统计
+sku_code string 定制商品检测模型识别的SKU编码,为在EasyDL零售版上创建SKU时填写的内容 商品排面占比统计
+sku_num int 定制商品检测模型识别的各类SKU的总数 商品排面占比统计
+proportion float 定制商品检测模型识别的各类SKU的数量占比=
sku_num/(known_sku_num+unknown_sku_num)
商品排面占比统计
+sku_facing int 定制商品检测模型识别的各类SKU的总排面数 商品排面占比统计
+sku_sos float 定制商品检测模型识别的各类SKU的排面数量占比=
sku_facing/(known_sku_facing+
unknown_sku_facing)。
如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义
商品排面占比统计
shelf_info array[object] 各组货架的每层货架的详细统计信息,如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义 商品排面占比统计
+shelf int 商品所在货架编号,”-1“表示未识别到货架,编号为图中货架最左从往右数依次增大 商品排面占比统计
+layer_info array[object] 各货架层的详细空位数信息 商品排面占比统计
++layer int 商品所在层数编号,”-1“表示未识别到层数,编号为从图中货架最上层往下依次增大 商品排面占比统计
++layer_vacancy int 每一层的空位数量 商品排面占比统计
++layer_known_sku_num int 每一层的可识别SKU数量 商品排面占比统计
++layer_unknown_sku_num int 每一层的未知SKU数量 商品排面占比统计
layer_count array[object] 图片中,各货架的总层数,如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义 商品陈列层数识别
+shelf int 商品所在货架编号,”-1“表示未识别到货架,编号为图中货架最左从往右数依次增大 商品陈列层数识别
+layer_num int 货架的总层数,如果图片为非货架陈列场景(如冰柜、端架、普通货架等),结果不具参考意义 商品陈列层数识别
layer_top int 判断是否拍摄到货架最上一层,0表示未拍摄到,1表示拍摄到,-1表示图片中未识别到货架 商品陈列层数识别
layer_complete int 表面货架是否拍摄完整,0表示不完整,1表示完整 商品陈列层数识别
scenes array[string] 图片中包含的陈列场景类型。返回所有场景去重后的集合,"GE"表示端架,"shelf"表示货架,"freezer"表示冰柜,"TG"表示地堆,"cutbox"表示割箱,"DL"表示地龙,"HS"表示挂钩货架,"OBS"表示斜口篮货架,"SGE"表示小端架,"barcounter"表示吧台,"HF"表示卧式冰柜,"OACR"表示冷风柜,"HGE"表示挂钩端架,"unknown"表示未识别到场景 商品陈列场景识别
log_id int 唯一的log id,用于问题定位 商品基本信息识别
results array[object] 图片中每个商品的详细信息 -
+name string SKU名称_品牌名称_规格参数 商品基本信息识别
+scene string 表示该SKU所在的陈列场景。"GE"表示端架,"shelf"表示货架,"freezer"表示冰柜,"TG"表示地堆,"cutbox"表示割箱,"DL"表示地龙,"HS"表示挂钩货架,"OBS"表示斜口篮货架,"SGE"表示小端架,"barcounter"表示吧台,"HF"表示卧式冰柜,"OACR"表示冷风柜,"HGE"表示挂钩端架,"unknown"表示未识别到场景 商品陈列场景识别
+shelf int 商品所在货架编号,"-1"表示未识别到货架,编号为图中货架最左从往右数依次增大,如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义 商品陈列层数识别
+layer int 商品所在层数编号,"-1"表示未识别到层数,编号为从图中货架最上层往下依次增大,如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义 商品陈列层数识别
+sku_sn string 商品的陈列排序序号,返回"A-B"或"A-B-C",如"2-1"或"2-1-1",其中A、B、C分别为数字,A代表同一货架层的横向顺序,从左至右依次增大;B代表同一货架的层纵向序号,从下至上依次增大;如果存在大商品上下陈列有小商品或包含小商品的情况,会出现C,从左至右依次增大。如果图片为非货架陈列场景(如堆箱、割箱、地龙等),结果不具参考意义 商品陈列层数识别
+sku_code string 商品编号,由用户在模型训练页面创建SKU时自定义 商品基本信息识别
+score float 置信度 商品基本信息识别
+location object{} 每个商品在图上的像素位置 商品基本信息识别
++left int 检测到的目标主体区域到图片左边界的像素距离 商品基本信息识别
++top int 检测到的目标主体区域到图片上边界的像素距离 商品基本信息识别
++width int 检测到的目标主体区域的像素宽度 商品基本信息识别
++height int 检测到的目标主体区域的像素高度 商品基本信息识别

建议翻拍判定方法

设定一个判定为翻拍图片的阈值,即如果recapture的score大于这个值,则认为这张图片是翻拍。通常有两中对应的业务模式:

注:以下数值均为建议值,实际应用的阈值请结合业务实际情况和实测结果进行设定

  1. 业务里查翻拍的原则是宁可错杀一千,也不愿错放一个的,那么可以把认为是翻拍的阈值放在0.8~0.95。
  2. 业务里查翻拍的原则是允许错放过一些翻拍的图片,但是查到的一定要对,那么可以把认为是翻拍的阈值放在0.98甚至0.99。
上一篇
门店管理
下一篇
地堆检测API调用方法