使用 Python 的 TensorFlow Lite 非常适合基于 Linux 的嵌入式设备,例如 树莓派 和 带有 Edge TPU 的 Coral 设备 等。
本页面展示了如何在几分钟内使用 Python 运行 TensorFlow Lite 模型。您只需要一个 TensorFlow 模型 转换为 TensorFlow Lite。(如果您还没有转换模型,可以使用示例中提供的模型进行实验,链接如下。)
关于 TensorFlow Lite 运行时包
为了快速开始使用 Python 执行 TensorFlow Lite 模型,您可以只安装 TensorFlow Lite 解释器,而不是所有 TensorFlow 包。我们称这个简化的 Python 包为 tflite_runtime
。
tflite_runtime
包的大小只是完整 tensorflow
包的一小部分,它包含运行 TensorFlow Lite 推理所需的最小代码 - 主要包括 Interpreter
Python 类。这个小包非常适合您只想执行 .tflite
模型,并且不想浪费磁盘空间存储大型 TensorFlow 库的情况。
为 Python 安装 TensorFlow Lite
您可以在 Linux 上使用 pip 安装
python3 -m pip install tflite-runtime
支持的平台
这些平台提供预构建的 tflite-runtime
Python 轮子
- Linux armv7l(例如,运行 32 位 Raspberry Pi OS 的 Raspberry Pi 2、3、4 和 Zero 2)
- Linux aarch64(例如,运行 Debian ARM64 的 Raspberry Pi 3、4)
- Linux x86_64
如果您想在其他平台上运行 TensorFlow Lite 模型,则应使用 完整的 TensorFlow 包,或 从源代码构建 tflite-runtime 包。
如果您使用的是带有 Coral Edge TPU 的 TensorFlow,则应遵循相应的 Coral 设置文档。
使用 tflite_runtime 运行推理
您现在需要从 tflite_runtime
中导入 Interpreter
,而不是从 tensorflow
模块中导入。
例如,在您安装了上面的包之后,复制并运行 label_image.py
文件。它(可能)会失败,因为您没有安装 tensorflow
库。要修复它,请编辑文件中的这行代码
import tensorflow as tf
使其改为
import tflite_runtime.interpreter as tflite
然后更改这行代码
interpreter = tf.lite.Interpreter(model_path=args.model_file)
使其改为
interpreter = tflite.Interpreter(model_path=args.model_file)
现在再次运行 label_image.py
。就是这样!您现在正在执行 TensorFlow Lite 模型。
了解更多
有关
Interpreter
API 的更多详细信息,请阅读 在 Python 中加载和运行模型。如果您有 Raspberry Pi,请查看有关如何在 Raspberry Pi 上使用 TensorFlow Lite 运行目标检测的 视频系列。
如果您使用的是 Coral ML 加速器,请查看 GitHub 上的 Coral 示例。
要将其他 TensorFlow 模型转换为 TensorFlow Lite,请阅读有关 TensorFlow Lite 转换器 的信息。
如果您想构建
tflite_runtime
轮子,请阅读 构建 TensorFlow Lite Python 轮子包