华为机器学习服务提供的最新SDK版本参见:ML Kit最新版本,该版本优化了各个服务的使用体验。
如果您是初次集成华为机器学习服务,请使用最新版本的SDK,不涉及升级,可以参考:集成HMS Core SDK。
如果您已经集成了华为机器学习服务SDK的老版本,您需要将您集成的SDK升级至最新版本。新版本在SDK的名称,能力包的集成方法方面有优化,因此建议您在升级前,参照如下内容完成必要的准备工作。
如果您只使用华为机器学习服务提供的云端能力,包括:云端文本识别、文档识别、云端图片分类、地标识别,您只需将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision)修改为:
- dependencies{
- implementation 'com.huawei.hms:ml-computer-vision-cloud:2.0.0.300'
- }
如果您只使用了云端图片分类、地标识别,您只需将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision)修改为:
- dependencies{
- implementation 'com.huawei.hms:ml-computer-vision-cloud:1.0.4.300'
- }
如果您使用了端侧能力,第一步,需要将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision)修改为:
- dependencies{
- // 如果集成多个模块,可以将各个模块一起添加。
- implementation 'com.huawei.hms:ml-computer-vision-ocr:2.0.0.300'
- implementation 'com.huawei.hms:ml-computer-vision-classification:1.0.4.300'
- implementation 'com.huawei.hms:ml-computer-vision-object:1.0.4.300'
- implementation 'com.huawei.hms:ml-computer-vision-face:1.0.4.300'
- }
第二步,如果您使用Full SDK方式集成了人脸检测服务,首先,需要将集成的能力包删除(com.huawei.hms:ml-computer-vision-face-recognition-model),然后,参考如下说明进行升级:
1. 如果您的应用使用了人脸检测服务的如下接口:
您可以引入表情检测能力包:
- dependencies{
- // 引入表情检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-emotion-model:1.0.4.300'
- }
2. 如果您的应用使用了人脸检测服务的如下接口:
您可以引入特征检测能力包:
- dependencies{
- // 引入特征检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-feature-model:1.0.4.300'
- }
3. 如果您的应用使用了人脸检测服务的如下接口:
getFaceKeyPoint(int keyPointType)
您可以引入轮廓+关键点检测能力包:
- dependencies{
- // 引入人脸轮廓+关键点检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-shape-point-model:1.0.4.300'
- }
4. 下述四个接口为基础接口,只要引入上述任一个或多个包即可支持。
若集成了其他服务的能力包,将能力包版本号按照ML Kit最新版本进行升级即可。
如果您只使用了华为机器学习服务提供的云端能力,包括:云端文本识别、文档识别,拍照购物,您只需将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision)修改为:
- dependencies{
- implementation 'com.huawei.hms:ml-computer-vision-cloud:2.0.0.300'
- }
如果您只使用了云端身份证识别、文本翻译、语种检测、云端图片分类、地标识别,您只需将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision)修改为:
- dependencies{
- implementation 'com.huawei.hms:ml-computer-vision-cloud:1.0.4.300'
- }
如果您使用了端侧能力,第一步,需要将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision)修改为:
- dependencies{
- // 如果集成多个模块,可以将各个模块一起添加。
- implementation 'com.huawei.hms:ml-computer-vision-ocr:2.0.0.300'
- implementation 'com.huawei.hms:ml-computer-vision-icr:1.0.4.300'
- implementation 'com.huawei.hms:ml-computer-vision-classification:1.0.4.300'
- implementation 'com.huawei.hms:ml-computer-vision-object:1.0.4.300'
- implementation 'com.huawei.hms:ml-computer-vision-face:1.0.4.300'
- implementation 'com.huawei.hms:ml-computer-vision-segmentation:1.0.4.301'
- }
第二步,
1. 如果您使用Full SDK方式集成了人脸检测服务,首先,需要将集成的能力包删除(com.huawei.hms:ml-computer-vision-face-recognition-model),然后,参考如下说明进行升级:
a. 如果您的应用使用了人脸检测服务的如下接口:
您可以引入表情检测能力包:
- dependencies{
- // 引入表情检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-emotion-model:1.0.4.300'
- }
b. 如果您的应用使用了人脸检测服务的如下接口:
您可以引入特征检测能力包:
- dependencies{
- // 引入特征检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-feature-model:1.0.4.300'
- }
c. 如果您的应用使用了人脸检测服务的如下接口:
getFaceKeyPoint(int keyPointType)
您可以引入轮廓+关键点检测能力包:
- dependencies{
- // 引入人脸轮廓+关键点检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-shape-point-model:1.0.4.300'
- }
d. 下述四个接口为基础接口,只要引入上述任一个或多个包即可支持。
2. 如果您集成了身份证识别服务,您可以参考如下说明进行升级。
a. 如果您的应用使用了身份证识别服务的如下接口:
getIcrAnalyzer(MLIcrAnalyzerSetting setting)
您可以将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision-icr)升级到最新版本,若集成了身份证识别能力包,需要将能力包升级到最新版本。
- dependencies{
- // 引入基础SDK
- implementation 'com.huawei.hms:ml-computer-vision-icr:1.0.4.300'
- // 引入身份证识别能力包
- implementation 'com.huawei.hms:ml-computer-card-icr-cn-model:1.0.4.300'
- }
b. 如果您的应用使用了身份证识别服务的如下接口:
getRemoteIcrAnalyzer(MLRemoteIcrAnalyzerSetting setting)
MLRemoteIcrAnalyzerSetting.Factory
您可以将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision-cloud或com.huawei.hms:ml-computer-vision-icr)升级到最新版本:
- dependencies{
- // 引入基础SDK
- implementation 'com.huawei.hms:ml-computer-vision-cloud:1.0.4.300'
- }
c. 如果您的应用使用了身份证识别服务的如下接口:
您可以删除集成的SDK基础依赖(com.huawei.hms:ml-computer-vision-cloud或com.huawei.hms:ml-computer-vision-icr)和质量检测插件(com.huawei.hms:ml-computer-card-qa-plugin),同时把身份证识别服务插件更新到最新版本,若您集成了身份证识别能力包,需要将能力包升级到最新版本。
- dependencies{
- // 引入身份证识别plugin包
- implementation ('com.huawei.hms:ml-computer-card-icr-cn-plugin:1.0.4.300') {
- // 使用端侧能力时,可以排除云侧相关依赖,降低生成的APK包大小。如果您使用的是云端身份证识别能力,需要删除下面两行配置
- exclude group: 'com.huawei.hms', module: 'ml-computer-net'
- exclude group: 'com.huawei.hms', module: 'ml-computer-card-qa-plugin'
- }
- // 引入身份证识别能力包
- implementation 'com.huawei.hms:ml-computer-card-icr-cn-model:1.0.4.300'
- }
若集成了其他服务的能力包,将能力包版本号按照ML Kit最新版本进行升级即可。
如果您使用Full SDK方式集成了人脸检测服务,首先,需要将集成的能力包删除(com.huawei.hms:ml-computer-vision-face-recognition-model),然后,参考如下说明进行升级:
1. 如果您的应用使用了人脸检测服务的如下接口:
您可以引入表情检测能力包:
- dependencies{
- // 引入表情检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-emotion-model:1.0.4.300'
- }
2. 如果您的应用使用了人脸检测服务的如下接口:
您可以引入特征检测能力包:
- dependencies{
- // 引入特征检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-feature-model:1.0.4.300'
- }
3. 如果您的应用使用了人脸检测服务的如下接口:
getFaceKeyPoint(int keyPointType)
您可以引入轮廓+关键点检测能力包:
- dependencies{
- // 引入人脸轮廓+关键点检测能力包。
- implementation 'com.huawei.hms:ml-computer-vision-face-shape-point-model:1.0.4.300'
- }
4. 下述四个接口为基础接口,只要引入上述任一个或多个包即可支持。
如果您集成了身份证识别服务,您可以参考如下说明进行升级。
1. 如果您的应用使用了身份证识别服务的如下接口:
getIcrAnalyzer(MLIcrAnalyzerSetting setting)
您可以将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision-icr)升级到最新版本,若集成了身份证识别能力包,需要将能力包升级到最新版本。
- dependencies{
- // 引入基础SDK
- implementation 'com.huawei.hms:ml-computer-vision-icr:1.0.4.300'
- // 引入身份证识别能力包
- implementation 'com.huawei.hms:ml-computer-card-icr-cn-model:1.0.4.300'
- }
2. 如果您的应用使用了身份证识别服务的如下接口:
getRemoteIcrAnalyzer(MLRemoteIcrAnalyzerSetting setting)
MLRemoteIcrAnalyzerSetting.Factory
您可以将集成的SDK基础依赖(com.huawei.hms:ml-computer-vision-cloud或com.huawei.hms:ml-computer-vision-icr)升级到最新版本:
- dependencies{
- // 引入基础SDK
- implementation 'com.huawei.hms:ml-computer-vision-cloud:1.0.4.300'
- }
3. 如果您的应用使用了身份证识别服务的如下接口:
您可以删除集成的SDK基础依赖(com.huawei.hms:ml-computer-vision-cloud或com.huawei.hms:ml-computer-vision-icr)和质量检测插件(com.huawei.hms:ml-computer-card-qa-plugin),同时把身份证识别服务插件更新到最新版本,若您集成了身份证识别能力包,需要将能力包升级到最新版本。
- dependencies{
- // 引入身份证识别plugin包
- implementation ('com.huawei.hms:ml-computer-card-icr-cn-plugin:1.0.4.300') {
- // 使用端侧能力时,可以排除云侧相关依赖,降低生成的APK包大小。如果您使用的是云端身份证识别能力,需要删除下面两行配置
- exclude group: 'com.huawei.hms', module: 'ml-computer-net'
- exclude group: 'com.huawei.hms', module: 'ml-computer-card-qa-plugin'
- }
- // 引入身份证识别能力包
- implementation 'com.huawei.hms:ml-computer-card-icr-cn-model:1.0.4.300'
- }
如果您集成了银行卡识别服务,您需要把银行卡识别服务插件更新到最新版本,若您集成了银行卡识别能力包,需要将能力包升级到最新版本。
- dependencies{
- // 引入银行卡识别plugin包
- implementation 'com.huawei.hms:ml-computer-card-bcr-plugin:2.0.0.300'
- // 引入银行卡识别能力包
- implementation 'com.huawei.hms:ml-computer-card-bcr-model:2.0.0.300'
- }
若集成了其他服务的能力包,将能力包版本号按照ML Kit最新版本进行升级即可。
如果您集成了语音合成(TTS)服务,您需要将依赖的SDK版本升级为:
- dependencies{
- // 引入语音合成服务SDK
- implementation 'com.huawei.hms:ml-computer-voice-tts:2.0.0.401'
- }
同时,需要在语音合成回调中(MLTtsCallback callback = new MLTtsCallback()),增加onAudioAvailable方法:
- MLTtsCallback callback = new MLTtsCallback() {
- @Override
- public void onAudioAvailable(String taskId, MLTtsAudioFragment audioFragment, int offset, Pair<Integer, Integer> range,
- Bundle bundle){
- // 音频流处理逻辑。
- }
- }
此方法用于将合成的音频流返回到您的App,使用此方法,您可以自行处理语音合成服务生成的音频流,具体使用方法请参见:语音合成(开发步骤)。
若集成了其他服务的能力包,将能力包版本号按照ML Kit最新版本进行升级即可。