1 下载SDK
或者自己选一个 开源模型
2 解压SDK
+app 简单的设置,模拟用户的项目
|---+libs 实际使用时需要复制到自己的项目里
|----arm64-v8a v8a的so
|----armeabi-v7a v7a的so
|----easyedge-sdk.jar jar库文件
|---+src/main
|---+assets
|----demo demo项目的配置,实际集成不需要
|----infer 也可能是其它命名,infer表示通用arm。实际使用时可以复制到自己的项目里
|---+java/com.baidu.ai.edge/demo
|---+infertest 通用Arm精简版测试,里面有SDK的集成逻辑
|--- MainActivity 通用Arm精简版启动Activity,会根据assets目录判断当前的模型类型,并运行同目录的一个Task。使用时需要修改里面的序列号
|--- TestInferClassifyTask 通用Arm精简版分类
|--- TestInferDetectionTask 通用Arm精简版检测
|--- TestInferOcrTask 通用Arm精简版OCR
|--- TestInferPoseTask 通用Arm精简版姿态
|--- TestInferSegmentTask 通用Arm精简版分割
|---+snpetest SNPE精简版测试
|--- MainActivity SNPE精简版启动Activity,会根据assets目录判断当前的模型类型,并运行同目录的一个Task。使用时需要修改里面的序列号
|--- TestSnpeClassifyTask SNPE精简版分类
|--- TestSnpeDetectionTask SNPE精简版检测
|---+ddktest DDK精简版测试
|--- MainActivity DDK精简版启动Activity,会根据assets目录判断当前的模型类型,并运行同目录的一个Task。使用时需要修改里面的序列号
|--- TestDDKClassifyTask DDK精简版分类
|--- TestDDKDetectionTask DDK精简版检测
|---+davincitest Davinci精简版测试
|--- MainActivity Davinci精简版启动Activity,会根据assets目录判断当前的模型类型,并运行同目录的一个Task。使用时需要修改里面的序列号
|--- TestDavinciClassifyTask Davinci精简版分类
|--- TestDavinciDetectionTask Davinci精简版检测
|----CameraActivity 摄像头扫描示例,里面有SDK的集成逻辑
|----MainActivity 启动Activity,使用时需要修改里面的序列号
|---- build.gradle 这里修改包名
+camera_ui UI模块,集成时可以忽略
3 将SDK中的文件添加到自己项目中
3.1 添加资源文件(demo可选)
3.2 添加so库文件
3.3 指定库路径
sourceSets {
main {
jni.srcDirs = []
jniLibs.srcDirs = ['src/main/libs']
}
}
3.4 添加依赖
dependencies {
...
implementation files('libs/easyedge-sdk.jar')
}
3.5 添加相机UI库(也可以自己实现)
修改settings.gradle
...
include ':camera_ui'
3.6添加Activity文件
3.7 在其他地方启动Activity
private void startUICameraActivity() {
Intent intent = new Intent(GoodsPageActivity.this, CameraActivity.class);
intent.putExtra("name", modelName);
intent.putExtra("model_type", modelType);
// intent.putExtra("serial_num", SERIAL_NUM);
intent.putExtra("soc", soc);
ActivityUtil.startActivityForResult(this,intent, 1);
}
4 测试