本文将指导您使用Google Coral USB加速器在RaspberryPi上设置和运行您的第一个机器学习模型。
它是什么?
珊瑚USB加速器是一种USB设备,提供Edge TPU作为计算机的协处理器。 Linux
的硬件上运行经过预训练的TensorFlow Lite模型的推理。
硬件先决条件
如前所述,加速器需要运行Ubunutu10.0
或更高版本的计算机。在本指南中,我们将在计算机上使用RaspberryPi。除了RaspberryPi,您还需要一根USB-A到micro-USB电缆,RaspberryPi的电源,microSD卡和USB-A到USB-C电缆。
设置您的RaspberryPi
在您的microSD上安装最新版本的Raspbian
,然后将其插入RaspberryPi。如果您可以访问RaspberryPi的专用键盘,鼠标和显示器,则可以跳过后续步骤。如果您无法访问RaspberryPi的专用外围设备,请继续并将RaspberryPi连接到您的个人网络并启用SSH。完成此操作后,继续并通过笔记本电脑打开RaspberryPi和SSH。
设置软件
wget
下载软件开发套件。要安装wget
,请在终端中键入以下命令。
sudo apt-get install wget
然后键入以下命令。
$ wget http://storage.googleapis.com/cloud-iot-edge-pretrained-models/edgetpu_api.tar.gz
$ tar -xvzf edgetpu_api.tar.gz
然后运行安装脚本-
$ cd python-tflite-source
$ bash ./install.sh
您会遇到以下消息-
“During normal operation, the Edge TPU Accelerator may heat up, depending on the computation workloads and operating frequency. Touching the metal part of the device after it has been operating for an extended period may lead to discomfort and/or skin burns. As such, when running at the default operating frequency, the device is intended to safely operate at an ambient temperature of 35C or less. Or when running at the maximum operating frequency, it should be operated at an ambient temperature of 25C or less.”
使用Accelerator时要牢记这一点。如果您打算长时间使用该板,请考虑使用主动或被动冷却。
运行您的第一个ML模型
我们在上一步中下载的软件包含Edge TPU Python module
,该模块提供了用于图像分类和对象检测的简单API。在此示例中,我们将使用对象检测API。演示代码可以在/home/pi/python-tflite-source/edgetpu/demo
。
该示例脚本旨在对图像执行对象识别。您可以使用包含日常对象的标准图像,并使用下面提到的代码在ML模型中运行它们。
$ python3 ./object_detection.py \
--model python-tflite-source/edgetpu/test_data/ \
mobilenet_ssd_v2_coco_quant_postprocess_edgetpu.tflite \
--label python-tflite-source/edgetpu/test_data/coco_labels.txt \
--input "file path of input image" \
--output "file name and path of output image"
如果您在RaspberryPi上运行SSH,则可以使用scp
命令将输出映像复制到笔记本电脑。
前进
现在,您已经运行了第一个程序,可以修改该程序并尝试其他操作。您可以通过降低阈值级别来开始分类模型的置信度。这将导致模型显示其可以识别的对象的结果,但是模型对它的正确性没有足够的信心。这样做可以帮助您了解推理模型的工作原理以及影响识别模型置信度的因素。在对TensorFlow的代码和工作方式充满信心之后,可以继续向RaspberryPi添加摄像机。这将消除传输需要参考的图像的需要。稍后,您也可以考虑在RaspberryPi上增加一个小的LCD,这几乎使对笔记本电脑的需求变得多余。在对TPU加速器有足够的信心之后,您可以继续使用连接到RaspberryPi的摄像机来推断实时图像和对象跟踪。
可能性是无限的,更正和改进的范围是无限的。