在没有稳定互联网连接的情况下,如何将模型直接部署在树莓派设备上?本文将介绍支持的任务类型,并详细说明在树莓派上部署模型的步骤。
目前,树莓派支持以下任务类型:
这些任务类型覆盖了大多数机器学习和计算机视觉的应用场景,使得树莓派成为一个多功能的边缘计算设备。
首先,确保树莓派是4代或树莓派400,并且运行的是64位版本的Ubuntu系统。可以通过在树莓派的命令行中输入arch
命令来验证系统架构,确保输出为aarch64
。
接下来,在树莓派的终端中安装Docker。使用以下命令安装Docker:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
安装完成后,可以通过Docker容器来部署推理服务器。
推理API作为Docker容器提供,为树莓派进行了优化和配置。使用以下命令安装并运行推理服务器:
sudo docker run -it --rm -p 9001:9001 roboflow/roboflow-inference-server-arm-cpu
现在,可以将树莓派作为托管推理API的替代品来使用。
接下来,使用pip安装RoboflowPython包:
pip install roboflow
安装完成后,可以使用Roboflow包来运行模型推理。
要运行模型推理,使用以下代码,并替换API密钥、工作区和项目ID、项目版本和图像名称。可以在API文档中找到如何获取API密钥,以及如何找到工作区和项目ID。
from roboflow import Roboflow
rf = Roboflow(api_key="YOUR_PRIVATE_API_KEY")
project = rf.workspace("YOUR_WORKSPACE").project("YOUR_PROJECT")
model = project.version(VERSION_NUMBER, local="http://localhost:9001/").model
prediction = model.predict("YOUR_IMAGE.jpg", confidence=40, overlap=30)
print(prediction.json())
也可以在客户端-服务器环境中运行,并从网络上的另一台机器向树莓派发送图像进行推理。将local=
参数中的localhost
替换为树莓派的本地IP地址。
在树莓派400上观察到大约每秒1.3帧的性能。这些结果是在客户端-服务器环境中获得的(因此涉及一些轻微的网络延迟),并且模型大小为416x416。
如果需要更快的速度,可以尝试使用Luxonis OAK AI摄像头与树莓派一起使用,以加速模型。