华为机器学习服务(ML Kit) 提供机器学习套件,为开发者应用机器学习能力开发各类应用提供优质体验。得益于华为长期技术积累,ML Kit 为开发者提供简单易用、服务多样、技术领先的机器学习能力,助力开发者更快更好的开发各类 AI 应用。
使用这个 SDK 开发一个翻译拍照小程序。
适合人群: 对华为 HMS Core 有兴趣的技术人员
引子
想必有很多小伙伴喜欢外出旅游,能去海外玩一圈那是更好不过了,旅游前大家一定会对吃、穿、住、行、游玩路线做各种攻略,然后满怀期待的出发…
想象中的旅游
出发前,想象中的旅游目的地可能有漂亮建筑:
好吃的美食:漂亮的小姐姐:悠闲的生活:
实际中的旅游
但现实中,大家如果到了语言不通的地方,大概率可能会遇到如下麻烦:
让人懵圈的地图:
梦幻菜单:魔性的路标指示牌:商场中琳琅满目的商品:太难了
拍照翻译帮你忙
有了华为 HMS ML Kit 文本识别和翻译服务,以上这些都不是问题,今天就来给大家介绍一下,怎么样使用华为 HMS ML Kit 提供的 SDK 来开发一个拍照翻译服务。简单来讲完成拍照翻译小应用的开发只需要两大步:
文本识别
先拍张照片获取图片,然后把获取的图像帧送到华为 HMS ML Kit 文本识别服务做文本识别。华为文本识别服务同时提供离线 SDK(端侧)和云侧两种方式,端侧免费可实时检测,云侧识别种类和精度更高。本次实战我们采用云侧提供的能力。
| 文本识别特性 | 规格(HMS 4.0 ) |
|---|---|
| 端侧 | 支持中日韩 |
| 云侧多语种 | 中、英、法、西、泰语等 19 个语种 |
| 倾斜识别 | 30 度倾斜情况下依然可以识别 |
| 弯曲文字支持 | 支持 45 度弯曲情况下依然可以成功识别 |
| 文字跟踪 | 端侧支持跟踪 |
以上规格仅供参考,具体以华为开发者联盟官网为准
翻译
将识别后的文字送到华为 HMS MLKit 翻译服务做文本翻译,就可以获取到想要翻译后的结果了。翻译是云侧提供的服务。
| 文本翻译特性 | 规格(HMS 4.0) |
|---|---|
| 多语种 | 7 个语种 中、英、法、西、土、阿、泰 |
| 时延 | 300ms/100 字 |
| BLEU 值 | >30 |
| 动态术语配置 | 支持 |
| 以上规格仅供参考,具体以华为开发者联盟官网为准 |
拍照翻译 APP 开发实战
上面说了太多的废话,直接切入正题吧
1 开发准备
由于使用了云侧的服务,需要到华为的开发者联盟注册开发者账号,并且在云端开通这些服务,这里就不细讲了,直接按照官方的的 AppGallery Connect 配置、开通服务部分操作步骤进行即可:
注册开发者,开通服务参考请戳:
1.1 在项目级 gradle 里添加华为 maven 仓
打开 AndroidStudio 项目级 build.gradle 文件。增量添加如下 maven 地址:
buildscript { repositories { maven {url 'http://developer.huawei.com/repo/'} } }allprojects { repositories { maven { url 'http://developer.huawei.com/repo/'} } }
1.2 在应用级的 build.gradle 里面加上 SDK 依赖
集成 SDK。(由于使用云侧能力,只引入 SDK 基础包即可)
dependencies{ implementation 'com.huawei.hms:ml-computer-vision:1.0.2.300' implementation 'com.huawei.hms:ml-computer-translate:1.0.2.300' }
1.3 在 AndroidManifest.xml 文件里面申请相机和存储权限
要使应用程序能够在用户从华为应用市场安装您的应用程序后,自动将最新的机器学习模型更新到用户设备,请将以下语句添加到该应用程序的 AndroidManifest.xml 文件中:
关注
打赏
