如何在Android Things上运行TensorFlow推理,例如对图像进行分类?

如何在Android Things上运行TensorFlow推理,例如对图像进行分类?,第1张

概述AndroidThings是否支持TensorFlow?TensorFlowAndroid示例能否移植到AndroidThings上运行?如果是这样,最简单的方法是什么?解决方法:简短的答案:是的,您确实可以在运行AndroidThings的嵌入式设备(例如RaspberryPi3)上运行TensorFlow.我们已经将TensorFlow图像分类应用程序移植到

Android Things是否支持TensorFlow? TensorFlow AndroID示例能否移植到AndroID Things上运行?如果是这样,最简单的方法是什么?

解决方法:

简短的答案:是的,您确实可以在运行AndroID Things的嵌入式设备(例如RaspBerry Pi 3)上运行TensorFlow.我们已经将TensorFlow图像分类应用程序移植到了AndroID Things.可用:https://github.com/androidthings/sample-tensorflow-imageclassifier.

长答案:要运行TensorFlow,您首先需要构建模型图并针对大型输入数据集进行训练.完成后,您可以根据经过训练的模型进行推理,以做出明智的决策.训练的第一部分是占用大量资源的资源,通常是事先完成的,而推理部分则相对较轻.这是推断部分,已移植为在运行AndroID Things的设备上运行.

以下总结了将TensorFlow集成到AndroID Things项目中时需要做的事情:

>首先,将TensorFlow AndroID推理库文件添加到您的项目中:tensorflow-android-Inference-Alpha-deBUG.aar@H_419_11@>接下来,在应用的build.gradle文件中添加一个依赖项,如下所示:
compile(名称:’tensorflow-android-Inference-Alpha-deBUG’,ext:’aar’)

要利用TensorFlow AndroID推理库,请实例化org.tensorflow.contrib.androID.TensorFlowInferenceInterface实例,以公开以下方法:

> initializeTensorFlow:使用模型图作为输入来初始化TensorFlow对象
> fillNodefloat:将输入数据复制到TensorFlow输入数组中
> runInference:运行推理并将结果保存在TensorFlow输出数组中
> readNodefloat:从TensorFlow输出数组读取并保存到自己的数组中

在图像分类器样本的TensorFlowImageClassifIEr.java中检查实现,以了解如何将输入传递给TensorFlow,运行推理以及从TensorFlow中提取输出标签.例如,在我们的图像分类示例中,当显示狗的图像时,我们的应用程序可以检测出哪种狗.

样本中的模型图是使用Google Inception V3 TensorFlow模型构建的,其训练集包含来自ImageNet的120万幅图像.如果要构建自己的模型图,请确保在分类器实现中相应地更新模型文件,标签文件和输入/输出名称.

简而言之,上面概述的使用TensorFlow AndroID Inference库作为gradle依赖项概述的方法提供了一种快速简便的方法,可将TensorFlow核心功能添加到任何AndroID项目中,甚至包括具有本机代码且需要NDK集成的复杂项目(例如the TensorFlow Android samples).这种方法还可以将主机平台扩展到当前不完全支持Bazel的主机平台,例如windows.

总结

以上是内存溢出为你收集整理的如何在Android Things上运行TensorFlow推理,例如对图像进行分类?全部内容,希望文章能够帮你解决如何在Android Things上运行TensorFlow推理,例如对图像进行分类?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1120981.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存