Android Things 给物联网设备带来基于 TensorFlow 的机器学习和计算机视觉

  • Sergio De Simone
  • 汪欣

2017 年 2 月 16 日

话题:移动Android语言 & 开发TensorFlow

最近发布的 Android Things 开发者预览 2(DP2)使得TensorFlow更容易用于物联网设备上的机器学习和计算机视觉。此外,它还针对几个物联网平台扩展了 USB 音频,增加了对英特尔 Joule的支持,并通过新的Native PIO API使本地驱动程序可直接使用。

DP2 提供了一个现成的 TensorFlow 库,已经为 ARM 和 x86 平台做了预构建,只要添加一行代码到 build.gradle 文件就可以使用该库。DP2 中包含的示例演示了如何构建一个支持 TensorFlow 的应用程序,对连接的相机捕获的图像进行分类,如果有可用的扬声器,还能说出结果。该示例使用Google Inception深度卷积神经网络架构建立了推理模型,并将推理模型提供给 TensorFlow。

通过新的Native PIO API,DP2 还支持使用现有的纯 C/C++ 驱动程序,许多开发人员已经编写了这些与外设(如灯、门锁等)进行通信的驱动程序。Native PIO API 允许开发人员使用 C 或 C++ 代码扩展基于 Java 的 Android Things 应用程序,这些代码可以和 Android Things 框架绑定在一起。例如,驱动程序可以生成常规的 Android KeyEvent 来响应引脚的触发动作,或者将 GPS 位置提供给 Android 位置 API。新的 API 还允许开发人员通过在NativeActivity中调用 Native PIO API,完全以 C/C++ 编写他们的 Android Things 应用程序。

最后一点,DP2 为英特尔 Edison 和树莓派 3 带来了 USB 音频支持,并引入了对英特尔 Joule 平台的支持,这使得所支持的硬件平台总数达到了 4 个。

Android Things 是 Google 的物联网平台,旨在让开发人员能够通过将通常的 Android API 和 Google 的云服务集成到特定的Things 支持库来编写物联网应用程序,就像他们编写移动应用程序那样,从而提供访问传感器和执行器的功能,并使开发人员能够用用户驱动程序来产生自定义的硬件事件注入到他们的应用程序中。Android Things 使用Google Weave作为其通信平台。

查看英文原文: Android Things Brings TensorFlow-Based Machine Learning and Computer Vision to IoT Devices


感谢冬雨对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

移动Android语言 & 开发TensorFlow