首先我们了解下 android系统常用的图像识别框架
一:调用一些不开源库进行识别
旷视的图像识别及 OCR 文字识别库,及其他厂家如阿里,百度,华为,腾讯的 OCR 文字识别库等。
二:调用一些开源库进行识别
一): tensorflow 训练自定义图像并识别
1. 是先在 ubuntu 上对很多图片进行训练得到自己的类别模型文件, xxx.pb 文件及 xxx_labels.txt 文件
2. 把上一步生成的文件放到 Android studio ( AS )工程里
3.AS 添加 tensorflow 依赖
4. 在 tensorflow 给的 android 工程上做改动,写出自己的工程
5. 运行工程开始识别。
要在 android 上使用 tensorflow ,官方提供两种方式工程:
一) tensorflow for mobile, 成熟,功能方法多
只需配置 buildgradle, 调用 tensorflow 相关接口进行识别
2) tensorflow lite. 轻量,允许设备端的机器学习模型的低延迟推断
下载移动端的模型 model 和标签 labels 文件并解压到 assert 下,导入 tensorflow 项目,调用 tensorflow 相关接口进行识别
注意此种方法不能直接使用 tensorflow 的模型,需要对模型进行转换。
二):