模型管理
模型添加
EdgeBoard开发管理平台支持EasyDL模型、BML模型、Paddle模型和EdgeBoard SDK(暂不支持自行添加)。
模型文件格式只支持zip格式。
Paddle模型
Paddle模型是指通过PaddlePaddle框架或其开源套件等工具训练的模型,并导出适合在端上部署的静态图模型文件,可以通过Netron工具打开其网络结构。
EdgeBoard开发管理平台支持物体检测模型和单图单标签的图像分类模型,具体支持网络请参考EdgeBoard支持的模型,其他网络模型暂不支持。
Paddle模型包含两个文件夹,config和model,内部文件名称是固定,比如config文件中包含一个配置文件config.json,model文件夹中包含模型文件和标签文件,分别命名为model、params、label_list.txt,如果训练后导出的静态图模型不是该名称,可以自行更改。
Paddle模型提供了两个示例文件可供格式参考。
物体检测模型格式
示例结构
图像分类模型格式
示例结构
config.json详解
{
"version": 1.0,
"networkType": "detection",
"networkName": "yolov3",
"threshold": 0.35,
"transforms": [{
"action": "Resize",
"width": 608,
"height": 608,
"interpolation": "bilinear"
},
{
"action": "Normalize",
"mean": [123.675, 116.28, 103.53],
"scale": [0.0171248, 0.017507, 0.0174292]
},
{
"action": "ConvertFormat",
"format": "RGB"
}
]
}
"version"
:模型格式版本,目前仅为1.0
"networkType"
:网络类型,目前只包含检测模型detection,分类模型classification,
"networkName"
:网络名称,如果是yolov3模型,该字段的值必须为yolov3
"threshold"
:阈值,若推理结果的score值小于阈值则会被过滤
"action": "Resize"
:图像缩放,指图像输入模型前的预处理操作之一
"action": "Normalize"
:图像归一化,指图像输入模型前的预处理操作之一
"action": "ConvertFormat"
:图像颜色空间格式,一般分为RGB和BGR两种
"width" && "height"
:模型输入尺寸
"interpolation"
:图像插值,一般分为bilinear、nearest、cubic
"format"
:图像颜色空间格式
"mean"
:图像处理均值
"scale"
:图像缩放系数
注意:config.json文件内的mean、scale计算方式与训练模型时的计算方式可能不同,在使用设备进行模型推理时,需要将训练模型的mean和std换算成EdgeBoard中的mean和scale。
一般图像归一化处理有如下两种方式:
例如R为一张图片中一个像素点的R通道的值
①(R / 255 – mean) / std
②(R – eb_mean) * eb_scale(EdgeBoard处理方式)
如果训练模型的mean和std为第一种计算方式,就需要通过如下运算,计算为EdgeBoard的处理方式。
EdgeBoard中的mean值 = mean * 255
EdgeBoard中的scale值 = 1 / ( 255 * std )
label.list文件详解
0 face
1 face_mask
注意:label.list文件内容,内容结构必须为index【空格】label
的格式,才能被正确调用。
模型压缩方式
将训练好的模型按照上述方式配置完成之后,需要压缩成zip格式的压缩包上传到管理平台,注意:压缩时直接选择config和model两个文件夹打包,不能多一层打包目录。可参考如下操作视频
EasyDL模型格式
EasyDL模型是指通过EasyDL平台或者BML平台训练生成的EdgeBoard专项适配模型,需要输入正确的序列号,并联网激活后,才可以正常使用
EasyDL模型联网鉴权
首次添加或使用EasyDL模型,需要设备在能够连接外网的情况下,激活模型,才能正常使用,EdgeBoard连接外网方式可参考EdgeBoard访问外网的方法
注意:激活时,必须保证设备能够访问外网,同时设备时间为当前时间,可通过系统配置页面更改系统时间。
EdgeBoard模型格式
EdgeBoard SDK是指百度自研的EdgeBoard专用技能SDK,暂不支持用户自行添加。
EdgeBoard SDK目前包含了人体检测、人体属性识别、人体关键点、安全帽佩戴合规检测、烟火检测、车牌识别、车辆检测、车型识别、动态车流、车辆属性等能力。并推出定制化的EdgeBoard场景化盒子,相关购买链接请参考:百度AI市场aim.baidu.com,相关文档参考EdgeBoard场景化产品使用说明,后续会加入更多百度自研模型,开放更多的能力为广大客户。
模型修改
支持对上传后的模型进行内容修改,点击 编辑 按钮,进入模型修改页面。
注意:模型ID为累加的数值,存放于数据库中,从0开始计算,针对每一个添加的模型,不论删除与否,每个模型ID具有唯一性。
模型删除
对已添加的模型,可以进行删除操作。
效果验证
模型添加后,可以线上验证模型效果,点击效果验证按钮
进入效果验证页面,点击上传按钮,从本地选取一张预测图片
结果如下:
左侧为渲染后的结果图片,右侧为图片的推理结果
“index”:标签号
“label”:标签
“location”:检测框位置,height和width为检测框的高和宽,left和top为左上角坐标值
“score”:置信度