百度大脑EasyEdge端模型生成部署攻略
EasyEdge是百度基于Paddle Mobile研发的端计算模型生成平台,能够帮助深度学习开发者将自建模型快速部署到设备端。只需上传模型,最快2分种即可生成端计算模型并获取SDK。本文介绍EasyEdge生成端计算模型,并集成到手机APP的流程。
采用模型:基于MobileNet 的SSD模型
SSD使用一个卷积神经网络实现“端到端”的检测:输入为原始图像,输出为检测结果,无需借助外部工具或流程进行特征提取、候选框生成等。
官方开源代码:https://github.com/PaddlePaddle/models/tree/develop/PaddleCV/ssd
采用数据集:PASCAL VOC
PASCAL VOC挑战赛是视觉对象的分类识别和检测的一个基准测试,提供了检测算法和学习性能的标准图像注释数据集和标准的评估系统。
PASCAL VOC图片集包括20个目录:
人类; 动物(鸟、猫、牛、狗、马、羊);
交通工具(飞机、自行车、船、公共汽车、小轿车、摩托车、火车);
室内(瓶子、椅子、餐桌、盆栽植物、沙发、电视)。
这些类别在label_list文件中都有列出来,但这个文件中多了一个类别,就是背景(background)
在AI Studio 进行训练得到预测模型和参数:
1 EasyEdge端计算模型生成流程
进入EasyEdge主页: ai.baidu.com/easyedge ,点击“立即使用”即可使用平台。
1.1上传深度学习模型
在目录【上传原模型】中:
1) 填写模型名称
2) 依次选择模型类型、模型框架、网络模型
3) 依次上传网络参数文件、网络结构文件、模型标签、其他配置文件(点击左侧划线处可查看上传要求)
对应关系如下:
网络参数文件:mobilenet-ssd-final-model
网络结构文件:mobilenet-ssd-final-params
模型标签:label_list
4) 自定义分组并描述模型功能
5) 提交上传
模型上传成功后,可以在【我的模型】中看到上传的模型。
1.2 生成端计算模型
成功上传模型后,在目录【生成端模型】中:
1) 选择模型
2) 选择并添加“芯片/硬件”、“操作系统”的组合,支持添加多种组合
3) 如需SDK支持离在线混合,需勾选同意EasyEdge在云端加密部署模型
4) 开始生成模型
在【我的模型】点击模型名称,即可查看端计算模型的生成状态
1.3 获取离线SDK
若某版本端计算模型已成功生成,则可点击右侧操作中的“获取SDK”,跳转到【SDK列表】下载Demo体验或正式的SDK
1.4 激活离线SDK
1) 在【SDK列表】页面下载SDK后,点击“获取序列号激活”,打开【序列号列表】
2) 选择鉴权方式:如需开发APP可选择按产品线鉴权,否则需按设备鉴权
3) 点击“新增序列号”,填写相关信息
Android或iOS操作系统的SDK可以选择按产品线激活,序列号与包名(Package Name/Bundle ID)绑定:
4) 用新增的序列号激活之前下载的SDK,参考开发文档:
Android 系统:https://ai.baidu.com/docs#/EasyEdge-Android-SDK/top
2 SDK集成到手机APP
开发平台:Android Studio 2.3
安卓虚拟机:Genymotion 2.7.2
测试平台:Android 9.0
2.1 替换申请的序列号
2.2 添加依赖:
运行虚拟机如报如下错误:
解决办法:
在同个build.gradle(app)页面,android{}中添加:
splits {
abi {
enable true
reset()
include 'x86','x86_64'
universalApk true
}
}
2.3 手机测试效果
3 意见建议
整体效果不错,优势在于生成模型非常快捷,集成也很方便。当然也有需要改进的地方,本次采用的物体检测SSD模型,SDK大小在25M,如生成的SDK能够进一步压缩,进而能减少APP的大小。
百度大脑EasyEdge端模型生成部署攻略的更多相关文章
- Windows Socket五种I/O模型——代码全攻略(转)
Winsock 的I/O操作: 1. 两种I/O模式 阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序.套接字 默认为阻塞模式.可以通过多线程技术进行处理. 非阻塞模式:执行I/O操 ...
- 图解:SQL Server SSIS包和job的部署攻略
原文:图解:SQL Server SSIS包和job的部署攻略 以下将建立一个SQL Server SSIS包 然后在job中使用这个包,并将job部署到目标机器 1. 首先建立ssis包,使用sql ...
- 宜信开源|数据库审核软件Themis的规则解析与部署攻略
一.介绍 Themis是宜信公司DBA团队开发的一款数据库审核产品,可帮助DBA.开发人员快速发现数据库质量问题,提升工作效率.其名称源自希腊神话中的正义与法律女神.项目取此名称,寓意此平台对数据库质 ...
- Confluence部署攻略 [转]
一.软件介绍 AtlassianConfluence(简称Confluence)是一个专业的wiki程序.它是一个知识管理的工具,通过它可以实现团队成员之间的协作和知识共享.Confluence不是一 ...
- 阿里云 centos7 django + uWSGI+Nginx + python3 部署攻略
centos7+nginx+python3+django+uwsgi配置Django 项目部署 1.租的服务器(选择centos)的话,需要在阿里云后台控制台开放几个端口,克隆一下已开放的端口,t ...
- Linux下Makefile的automake生成全攻略--转
http://www.yesky.com/120/1865620.shtml 作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便.一般情况下 ...
- EasyDSS流媒体服务器软件(支持RTMP/HLS/HTTP-FLV/视频点播/视频直播)-正式环境安装部署攻略
EasyDSS流媒体服务器软件,提供一站式的转码.点播.直播.时移回放服务,极大地简化了开发和集成的工作. 其中,点播功能主要包含:上传.转码.分发.直播功能,主要包含:直播.录像, 直播支持RTMP ...
- Java爬虫快速开发工具uncs的部署攻略
写在前面 uncs是java快速开发爬虫的工具,简单便捷,经过大量版本迭代和生产验证,可以适用大多数网站,推荐使用. 一.基本用法 1.1 开发包获取 目前只能在公司内网maven服务器获取到 < ...
- Linux下Makefile的automake生成全攻略
作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便.一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的M ...
随机推荐
- 用Kolla在阿里云部署10节点高可用OpenStack
为展现 Kolla 的真正实力,我在阿里云使用 Ansible 自动创建 10 台虚机,部署一套多节点高可用 OpenStack 集群! 前言 上次 Kolla 已经表示了要打 10 个的愿望,这次我 ...
- 在python开发工具PyCharm中搭建QtPy环境(详细)
在python开发工具PyCharm中搭建QtPy环境(详细) 在Python的开发工具PyCharm中安装QtPy5(版本5):打开“File”——“Settings”——“Project Inte ...
- php--->注册模式
注册模式 什么是注册树模式? 注册树模式当然也叫注册模式,注册器模式.注册树模式通过将对象实例注册到一棵全局的对象树上,需要的时候从对象树上采摘的模式设计方法. 优点:单例模式解决的是如何在整个项目中 ...
- 求LCM(a,b)=n的(a,b)的总对数(a<=b)
\(a={p_1} ^ {a_1} *{p_1} ^ {a_1} *..........*{p_n} ^ {a_n}\) \(b={p_1} ^ {b_1} *{p_1} ^ {b_1} *..... ...
- redis5.0 Cluster集群搭建
安装redis sudo apt update sudo apt install build-essential tcl cd ~ mkdir document/ cd document/ curl ...
- 共轭先验(conjugate prior)
共轭是贝叶斯理论中的一个概念,一般共轭要说是一个先验分布与似然函数共轭: 那么就从贝叶斯理论中的先验概率,后验概率以及似然函数说起: 在概率论中有一个条件概率公式,有两个变量第一个是A,第二个是B , ...
- maven jar 包问题
1. Failure to transfer... 这种错误基本是所需要的 jar 包不存在,或者下载不完整,可去本地仓库查看相关 jar 文件的完整性 解决方案: 删除对应 jar 包,重新下载(删 ...
- PuTTYTabManager汉化版
PuTTY Tab Manager(puttytm) V0.52 zh_CN 简体中文汉化版 功能 Putty是一款小巧好用免费的SSH客户端工具,但是不支持多标签管理,网上找了一些相关的putty多 ...
- Rust学习笔记一 数据类型
写在前面 我也不是什么特别厉害的大牛,学历也很低,只是对一些新语言比较感兴趣,接触过的语言不算多也不算少,大部分也都浅尝辄止,所以理解上可能会有一些偏差. 自学了Java.Kotlin.Python. ...
- asp.net EF core 系列 作者:懒懒的程序员一枚
asp.net core 系列 19 EFCore介绍写作逻辑一 .概述1.1 比较EF Core 和EF61.2 EF Core数据库提供程序 1.3 引用程序添加数据库提供程序1.4 获取Enti ...