这一步是唯一的我无法客观测试的步骤。每个安卓设备都不一样。如果你在这一步中碰到什么问题,我建议你升级安卓到6.0版。对于我朋友的Moto G手机,开奖,就必须把下面的命令里面的–g选项去掉: $ adb install -r -g bazel-bin/tensorflow/examples/android/tensorflow_demo.apk 至此,你就可以在安卓设备上使用TensorFlow和Inception分类器了。我发现最有趣的是这个分类器偶尔出错的时候。需要注意的是,原版的Inception分类器只能识别ImageNet挑战里出现的1000种图片分类。 使用定制化的图片分类器 为了能对我们自己的图片来做分类,我们必须先用我们移动设备的图片文件数据重新训练,并把训练结果放入assets目录 首先我们要编译图片训练优化器: $ cd ~/tensorflow $ bazel build tensorflow/python/tools:optimize_for_inference 然后再用这个训练优化器对我们自己的图片数据做训练: $ bazel-bin/tensorflow/python/tools/optimize_for_inference \ –input=tf_files/retrained_graph.pb \ –output=tensorflow/examples/android/assets/retrained_graph.pb –input_names=Mul \ –output_names=final_result 把训练后的标签放入assets目录 $ cp ~/tensorflow/tf_files/retrained_labels.txt ~/tensorflow/tensorflow/examples/android/assets/ 编辑TensorflowImageListener.java $ gedit ~/tensorflow/tensorflow/examples/android/src/org/tensorflow/demo/TensorFlowImageListener.java 我们需要编辑这个文件以能识别我们自己的图片:替换下面这些行的参数所对应的变量值并保存(如果你想回退到原有的文件内容,你可以在这里找到备份文件): private static final int INPUT_SIZE = 299; private static final int IMAGE_MEAN = 128; private static final float IMAGE_STD = 128; private static final String INPUT_NAME = “Mul:0”; private static final String OUTPUT_NAME = “final_result:0”; private static final String MODEL_FILE = “file:///android_asset/retrained_graph.pb”; private static final String LABEL_FILE = “file:///android_asset/retrained_labels.txt”; 重新编译APK $ cd ~/tensorflow $ bazel build //tensorflow/examples/android:tensorflow_demo 重新安装APK $ adb install -r -g bazel-bin/tensorflow/examples/android/tensorflow_demo.apk 好的,到这时候我们就可以在安卓设备上使用定制化的分类器了!研究人员和爱好者可以利用这个技术来想出更多的点子并付诸实验。例如我想到的一个点子:就是让分类器能学会通过识别不健康的叶子来发现营养不良或者有植物病的植物。如果你想了解如何进一步压缩图片文件,以及在iPhone上做同样的事,你可以关注这里的Pete Warden的教程。 希望我已经能激励到你,让你等不及开始要想出一些新点子了。请关注我的 Twitter 账号@wagonhelm 或主题 #TensorFlow,并分享你的想法。 Justin Francis Justin居住在加拿大西海岸的一个小农场。这个农场专注于朴门道德和设计的农艺。在此之前,他是一个非营利性社区合作社自行车商店的创始人和教育者。在过去的两年中,他住在一艘帆船上,全职探索和体验加拿大的乔治亚海峡。但现在他的主要精力都放在了学习机器学习。 :COO、执行总编、主编、高级编译、主笔、运营总监、客户经理、咨询总监、行政助理等 9 大岗位全面开放。 简历投递:j[email protected] HR 微信:13552313024 (责任编辑:本港台直播) |