android图像识别app,TF-实现Android图像识别应用

效果

1c78ec8216ba?tdsourcetag=s_pctim_aiomsg

1.jpg

开发准备

一,使用hub训练自己的类别模型

①安装linux环境,推荐Ubuntu

②安装git,克隆tensorflow/hub项目

③进入hub项目,hub/examples/image_retraining目录下

放入自己的图片目录文件(不同类别的图片放在不同子目录下),如放入animal文件夹:

1c78ec8216ba?tdsourcetag=s_pctim_aiomsg

1.png

④在image_retraining目录打开命令终端,输入训练命令,详细参考文档Hub文档

sudo python3 retrain.py --image_dir ./animal \

--tfhub_module https://tfhub.dev/google/imagenet/mobilenet_v1_100_224/feature_vector/1

该命令用于生产轻量的手机模型数据,图片大小为224x224,开始训练如图:

1c78ec8216ba?tdsourcetag=s_pctim_aiomsg

1.png

注意在运行retrain.py之前,记得先使用pip添加相应依赖。

⑤训练完成

1c78ec8216ba?tdsourcetag=s_pctim_aiomsg

1.png

会在计算机/tmp目录下生成相应的pb文件和labels文件,这就是我们要的数据

1c78ec8216ba?tdsourcetag=s_pctim_aiomsg

1.png

二,使用AS开发图像识别应用

①将我们生成的pb文件和labels文件拷贝到项目assets目录下,如:

1c78ec8216ba?tdsourcetag=s_pctim_aiomsg

1.png

②AS项目添加tensorflow依赖

implementation 'org.tensorflow:tensorflow-android:+'

②根据tensorflow官方给出的安卓Demo,写出我们需要的TF Classify模块,当然我已经写好了,你可以直接下载Android_TF_Classify

1c78ec8216ba?tdsourcetag=s_pctim_aiomsg

1.png

注意tensorflow更新后INPUT_NAME和OUTPUT_NAME已经改变;

图片分类文件夹名为该类别识别出来的结果名,每类图片应大于20张,否则可能要出错,最好大于40张;

本例生成训练图片使用轻量的生成方式,正常生产pb文件是移动应用pb的8倍大小;

本例为一个demo,如需深入学习,请仔细研究文档;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值