【问题标题】:Creating a "generic" Tensorflow Android app with Python code使用 Python 代码创建“通用”Tensorflow Android 应用程序
【发布时间】:2016-11-23 02:12:20
【问题描述】:

我使用 Kivy 和 Pycharm 在 python 2.7 中创建了一个 Tensorflow 图像分类应用程序。我使用自己的数据创建了自定义图形和标签文件。该应用程序运行良好,可以做我想做的事。我花了几个月的时间学习和编码才达到这一点。我这个“旅程”的最后一部分是尝试将应用程序移植到 android 平台(我也想做 Windows 或 Web 应用程序——但今天这似乎不是一个真正的选择......)我已经使用 Bazel 创建了 Tensorflow Android Camera Demo 应用程序,它在我的 Galaxy S5 上运行良好。然而,在花了几天时间搜索所有参考资料后,我可以在谷歌搜索、Packt(和其他)书籍等方面做得很好,我陷入了僵局。我的问题是,这个论坛中是否有人对我描述的从工作 Python 应用程序创建 Android 应用程序的方法有任何建议?我将非常感谢这样做的人的任何帮助。

【问题讨论】:

  • 你可能需要为 python-for-android 制作一个 Tensorflow 配方。我不知道这需要什么。
  • 我要解决的问题是如何使用我创建的工作项目(在 Pycharm 中)创建一个 Android(或其他“独立”可执行应用程序)。基本问题是 tensorflow 的导入(在我的 python 代码中),当我尝试构建应用程序时无法识别。所以我想我的问题可能会被重述为:如何使用一种能够在构建的应用程序中识别和集成 Tensorflow(作为导入)的方法来构建我的应用程序?
  • Tensorflow 是一个复杂的模块,需要针对 android 环境进行编译,但我不知道具体需要做什么,也不知道它与正常的 Tensorflow 构建有何关系。要使其工作,您需要制作一个 python-for-android 配方 (python-for-android.readthedocs.io/en/latest/recipes) 来告诉 python-for-android 如何编译并将其包含在 APK 中。如果您在 kivy 支持渠道上提问,我们可以帮助您尝试,但我不知道任何预先存在的 Tensorflow 配方可供使用。

标签: android python tensorflow kivy


【解决方案1】:

我使用自己的数据创建了自定义图形和标签文件

由于您已经训练了 TensorFlow 模型,因此可以相对轻松地将其导入 Android 应用。

TensorFlow Android demo app 现在可以在 Android Studio 中构建,而无需使用 Bazel。您应该能够将 Inception v3 图像分类器模型替换为您自己的模型。

在此处查看我的博客文章,了解有关如何使用 Java TensorFlowInferenceInterface 类与您的预训练模型进行交互的更多信息:
https://medium.com/@daj/using-a-pre-trained-tensorflow-model-on-android-e747831a3d6

至于如何将 Python 应用程序移植到 Android,我不知道有什么简单的方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-14
    • 2017-11-26
    相关资源
    最近更新 更多