蓝冠注册《Q374919 》本教程展示了相同的应用程序,但在本例中,我们将使用Coral USB加速器进行推理。结果是令人印象深刻的,蓝冠招商 因为推理时间从1 – 2秒在树莓Pi CPU上减少到55 – 80毫秒在Edge TPU上。
看一下下面的视频,比较一下在Raspberry Pi CPU上执行推理的应用程序的推理速度:Raspberry Pi, TensorFlow Lite和Qt/QML:对象检测示例。
如果你在一台配备USB 3.0端口的电脑上测试这个例子,你会有更好的性能(在我的笔记本电脑上7 – 9毫秒)。这是因为,蓝冠注册 直到树莓派3型号B+(在本教程中考虑的一个),只有USB 2.0端口可用。这限制了数据传输带宽之间的边缘TPU和树莓Pi本身。
好消息是树莓派4型号B配备了USB 3.0接口。
本教程中使用的硬件
Qt:下载,交叉编译和安装在树莓派
TensorFlow Lite:下载和交叉编译树莓派
珊瑚USB加速器:下载并安装Edge TPU运行时
边缘TPU -覆盆子Pi对象检测app
总结
本教程中使用的硬件
珊瑚USB加速器
树莓Pi 3模型B+
覆盆子π相机
树莓派3 – 7英寸触摸屏显示
2根挠性电缆用于树莓Pi(用于相机和显示器)
2 x树莓派3 B+电源- 5V 2.5A(用于树莓派和显示)
这些是附属链接(除了珊瑚USB加速器链接)。这意味着如果你点击链接,购买推广项目,我们将收到一个小的附属委员会在没有额外的成本给你,产品的价格是相同的。如果您觉得没问题,我们将非常感谢您对我们工作和网站的支持。
Qt:下载,交叉编译和安装在树莓派
让我们来看看交叉编译和部署Raspberry Pi的Qt 5.12。它提供了执行此步骤的所有细节。在这里,您还可以找到如何设置Qt Creator来将Qt应用程序部署到Raspberry Pi。
TensorFlow Lite:下载和交叉编译树莓派
在上一篇教程中已经介绍了为Raspberry Pi和主Linux操作系统编译TensorFlow Lite的内容:Raspberry Pi、蓝冠官网TensorFlow Lite和Qt/QML:对象检测示例。
珊瑚USB加速器:下载并安装Edge TPU运行时
我们需要安装珊瑚边TPU运行时访问USB加速器。这个运行时包括Python库、c++ API文件和一个用于我们的目标平台的共享库(libedgetpuso)。下面给出了Linux和Raspberry Pi所需的步骤。珊瑚网站的Linux设置和树莓派部分也有描述。
Linux主机(Debian / Ubuntu)
如果你想在你的Linux主机上测试珊瑚USB加速器,你必须为x86_64平台安装edget TPU运行时,如下所示。
wget https://dl.google.com/coral/edgetpu_api/edgetpu_api_latest.tar.gz
- o edgetpu_api.tar.gz——trust-server-names
焦油xzf edgetpu_api.tar.gz
cd edgetpu_api
bash。/ install.sh
覆盆子π
必须在Raspberry Pi上执行相同的命令才能为ARM平台安装edge TPU运行时。
wget https://dl.google.com/coral/edgetpu_api/edgetpu_api_latest.tar.gz
- o edgetpu_api.tar.gz——trust-server-names
焦油xzf edgetpu_api.tar.gz
cd edgetpu_api
bash。/ install.sh
注意:下载并安装edge TPU运行时后,不要忘记同步Linux主机上的Raspberry Pi系统根文件夹。关于sysroot是什么以及为什么需要它的进一步信息,请检查Cross-compile和deploy Qt 5.12 For Raspberry Pi,第4节-创建和配置sysroot。
我们使用rsync来同步我们的Linux主机sysroot和Raspberry Pi;raspberrypi_ip是我们的Raspberry Pi的网络接口名称或IP地址。
cd sysroot
rsync -avz pi@raspberrypi_ip:/lib sysroot
rsync -avz pi@raspberrypi_ip:/usr/包含sysroot/usr
rsync -avz pi@raspberrypi_ip:/usr/lib sysroot/usr
rsync -avz pi@raspberrypi_ip:/opt/vc sysroot/opt
接下来,我们需要将sysroot中的符号链接调整为相对的,因为这个文件夹结构同时存在于我们的计算机和树莓Pi中。
wget https://raw.githubusercontent.com/riscv/riscv-poky/master/scripts/sysroot-relativelinks.py
chmod + x sysroot-relativelinks.py
。/ sysroot-relativelinks.py sysroot
边缘TPU -覆盆子Pi对象检测app
这个应用程序是开源的,它托管在GitHub上的Git存储库中。这款应用程序与在Raspberry Pi, TensorFlow Lite和Qt/QML中开发的应用程序基本相同:对象检测示例。主要区别如下。
使用TensorFlow Lite c++ API进行Edge TPU。
使用为Edge TPU定制的人工神经网络模型:MobileNet SSD v2 (COCO)。然而,这个例子工作与任何MobileNet SSD模型。