我对make实在不熟悉。所以我不明白 2 个教程(“TensorFlow Makefile”和“TensorFlow Raspberry Pi Examples”)中这些步骤的含义,以使我在笔记本电脑上的项目在树莓派 2 上运行
TensorFlow Makefile:
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/makefile
TensorFlow Raspberry Pi 示例:
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/pi_examples
据我所知,“TensorFlow Makefile”会将tensorflow源lib转换为可执行文件。 “TensorFlow Raspberry Pi Examples”意味着将您的项目转换为可执行文件,然后在
your_project/gen/bin/your_project
中运行该文件
tensorflow/contrib/pi_examples/label_image/gen/bin/label_image
因此,如果我的笔记本电脑上有一个项目,并且想要将我的项目加载到 Pi 2 中(“TensorFlow Makefile”已经完成)。我只是将其复制到我的 pi 2 并执行以下操作:
make -f tensorflow/my_project/Makefile
然后运行:
tensorflow/my_project/gen/bin/my_project
这就是如何让你的项目在树莓派 2 上运行,对吗?
这仅适用于可以选择从(大概)x86(_64?)架构笔记本电脑到 ARM 架构 Raspberry Pi 交叉编译的 Makefile。
不过,你很幸运:Google 在 TensorFlow 的
Makefile
中包含了在架构之间进行交叉编译的选项!
如果您查看 Makefile 的第 123 行,您将看到有关此内容的注释。
默认在我们编译的同一系统上运行。 如果要交叉编译,则应该覆盖命令行上的所以,只需像这样制作项目:
TARGET
,例如make -f tensorflow/contrib/makefile/Makefile TARGET=ANDROID
$ make -f tensorflow/contrib/makefile/Makefile TARGET=PI
这将为 RPi 编译 TensorFlow。
顺便说一句,如果可以的话,通过从 git 提取源代码或通过 USB 将其传输到 RPi 上并在那里构建,在 RPi 上编译 TensorFlow 可能会更容易。
您可以阅读这篇关于运行tensorflow模型的文章,我的文章摘要是关于在树莓派中安装tflite以运行TensorFlow模型: