Tensorflow Android Demo 测试

目录

下载源码:

​​​​​安装 Android Studio:

 

编译

调试手机连接问题

应用安装

主要参考文献:


测试环境: Ubuntu 18.04

 

下载源码:

实际只是用examples/android文件夹下的,但是tensorflow没有提供单独的文件夹下载,所以这里要下载整个tensorflow

git clone --recurse-submodules https://github.com/tensorflow/tensorflow.git

​​​​​安装 Android Studio:

在AS官网下载页面https://developer.android.com/studio#downloads 选择相应系统版本的压缩包下载.

参考https://developer.android.com/studio/install?hl=zh-cn 安装 AS, SDK和NDK

NDK不需要单独下载,在选择好要使用的版本的SDK后,在SDK tools 里勾选NDK即可,如下图

 

编译

打开前面下载的tensorflow中的android文件夹为工程文件夹

将 Gradle Scripts/build.gradle中的第45行

def nativeBuildSystem = 'bazel' 修改为
def nativeBuildSystem = 'none'

然后就可以编译了.

调试手机连接问题

编译成功后,在用手机调试安装时,我又遇到了AS无法识别手机的情况(尽管开启了USB调试),然后参照https://blog.csdn.net/w19961009/article/details/54952777这篇博文进行设置

首先在未连接手机的情况下,在terminal 中输入lsusb,获取当前usb设备列表

然后将手机与电脑连接,再次输入lsusb获取新的usb列表,前后对比即可找到自己的手机usbid,主要找到 xxxx:yyyy一共八位字符,然后

sudo vim /etc/udev/rules.d/90-android.rules

新建90-android.rules文件(此处推测前面的数字与手机的系统版本有关,之前试过51不起作用,换成90就可以了,我的系统是安卓9.0),将上面找到的xxxx:yyyy 分别写入下面的位置

SUBSYSTEM=="usb", ATTRS{idVendor}=="xxxx", ATTRS{idProduct}=="yyyy", MODE="0666"

然后保存退出,修改文件权限

chmod a+x /etc/udev/rules.d/90-android.rules

随后执行下面命令,重启udev

sudo /etc/init.d/udev restart 

然后在AS上面工具栏手机列表位置下拉选择Troubleshoot device connections

在打开窗口中next->next->到最后一个页面,点击Restart ADB server

等ADB重启后应该就可以正确识别手机设备了,可以插拔两次试试,注意手机屏幕弹出的调试请求要确认

 

应用安装

本来以为这样应该就可以了,没想到又碰到了下载模型一直连接失败,多次尝试发现应该是GFW的原因,连接不上storage.google,试了各种代理也不行(此处吐槽一下AS的代理是真的难用),后面找到了下载models的网址就直接在浏览器下载后copy到对应文件夹了

就是这几个models:

我上传到了限速云,有需要的可以自取:

链接: https://pan.baidu.com/s/1aIu7R37ChRAM1eH-oz-Elg 提取码: mmy5 复制这段内容后打开百度网盘手机App,操作更方便哦

 

因为手动下载了需要的models,所以需要把原来下载的代码注释掉,在android文件夹下面的Gradle Scripts/download-models.gradle中找到下面内容全部注释

然后把下载的models(不要copy文件夹,直接复制文件)到project.ext.TMP_DIR

在build.gradle中可以找到TMP_DIR的定义(project.ext.TMP_DIR = project.buildDir.toString() + '/downloads')所以应该知道copy到哪了吧

然后重新构建,在运行就可以正常启动了~安装成功后手机上会多出4个APP.

 

 

主要参考文献:

官方源码文档readme: https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/android

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python的TensorFlow 2.0 Demo是一个展示和演示TensorFlow 2.0的示例程序。TensorFlow是一个开源的机器学习框架,它提供了丰富的工具和库,用于构建和训练各种人工智能模型。 TensorFlow 2.0 Demo可以帮助我们了解如何使用Python编写TensorFlow代码,构建和训练模型。在Demo中,我们可以看到一些预先定义好的模型,如卷积神经网络(CNN)和循环神经网络(RNN),以及一些常见的数据集,如MNIST手写数字数据集。 Demo中的代码可以帮助我们学习如何使用TensorFlow 2.0的新特性,如Eager Execution和tf.keras API。Eager Execution使得TensorFlow代码更加直观和易于调试,而tf.keras API提供了一种方便的方式来定义和训练神经网络模型。 另外,Demo还可以帮助我们了解TensorFlow 2.0的一些新功能,如动态图(Dynamic Graph)和AutoGraph。动态图允许我们动态地构建和修改计算图,而AutoGraph则可以将Python代码自动转化为高效的TensorFlow计算图。 通过运行TensorFlow 2.0 Demo,我们可以学习到如何使用Python和TensorFlow构建和训练机器学习模型,并熟悉TensorFlow 2.0的一些新特性和功能。这对于想要进一步了解和掌握深度学习和人工智能的人来说非常有帮助。 ### 回答2: Python TensorFlow 2.0 Demo 是一个用于展示 TensorFlow 2.0 版本的 Python 示例的演示程序。它旨在向用户展示如何使用 TensorFlow 2.0 进行机器学习和深度学习任务。 Python TensorFlow 2.0 Demo 演示了 TensorFlow 2.0 在数据处理、模型构建和训练等方面的功能。通过这个示例,用户可以了解 TensorFlow 2.0 的主要特点和用法。 在数据处理方面,Python TensorFlow 2.0 Demo 提供了许多常用的数据处理功能,例如加载数据集、数据集预处理、数据增强等。这些功能可以帮助用户准备数据用于模型的训练和评估。 在模型构建方面,Python TensorFlow 2.0 Demo 展示了如何使用 TensorFlow 2.0 构建各种类型的神经网络模型,包括卷积神经网络(CNN)、循环神经网络(RNN)和变分自编码器(VAE)等。用户可以学习如何定义模型的结构和参数,并将其编译为可训练的 TensorFlow 图。 在模型训练方面,Python TensorFlow 2.0 Demo 展示了如何使用 TensorFlow 2.0 进行模型的训练和评估。用户可以学习如何选择合适的优化器、损失函数和评估指标,并使用训练数据集对模型进行训练,并使用测试数据集对其进行评估。 总而言之,Python TensorFlow 2.0 Demo 可以帮助用户了解并学习如何使用 TensorFlow 2.0 进行机器学习和深度学习任务。通过这个演示程序,用户可以掌握 TensorFlow 2.0 的基本用法,并在实践中探索更多高级的功能和技巧。 ### 回答3: Python TensorFlow 2.0 是一个强大的深度学习框架,可以用于构建和训练各种机器学习模型。使用 Python TensorFlow 2.0,可以轻松地创建端到端的模型,处理大规模的数据集,以及进行模型的训练和推理。 在 TensorFlow 2.0 中,与之前版本相比,有一些重要的改进和新功能。其中最重要的是 Eager Execution(即动态图执行),它使得在 TensorFlow 中编写代码更加直观和简单,可以立即获得结果的反馈。另外,TensorFlow 2.0 还引入了一种新的高级 API——Keras,它提供了更简洁、易用的方式来定义和训练神经网络模型。 使用 TensorFlow 2.0 可以轻松地构建各种机器学习模型。例如,可以使用 TensorFlow 2.0 构建一个图像分类模型,对图像进行分类。首先,需要准备训练集和测试集的图像数据,然后使用 TensorFlow 2.0 的 Keras API 构建一个卷积神经网络模型。接下来,编写代码对模型进行训练,并使用测试集进行验证。通过迭代和调整模型的参数,可以获得更好的分类效果。 在实际使用 TensorFlow 2.0 进行机器学习任务时,通常还会使用一些其他的库和工具来辅助。例如,可以使用 NumPy 来处理和转换数据,使用 Matplotlib 来可视化结果,使用 Pandas 来进行数据处理和分析等等。同时,也可以利用 TensorFlow 的高级特性,如分布式训练和自定义损失函数等,来进一步提升模型的性能和效果。 总而言之,Python TensorFlow 2.0 是一个功能强大、易用的深度学习框架,可用于构建和训练各种机器学习模型。通过灵活的应用和结合其他工具和库,可以实现各式各样的机器学习任务,并获得良好的结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值