Skip to main content

在带有 AI Kit 的 Raspberry Pi 上的 Clip 应用

简介

CLIP(对比语言-图像预训练)是一个在各种(图像,文本)对上训练的神经网络。它可以用自然语言指令来预测给定图像最相关的文本片段,而无需直接针对该任务进行优化,类似于 GPT-2 和 3 的零样本能力。我们发现 CLIP 在 ImageNet 上的"零样本"性能与原始 ResNet50 相匹配,而无需使用原始的 128 万个标记示例中的任何一个,克服了计算机视觉中的几个主要挑战。

本 wiki 将教您如何在 Raspberry Pi5Recomputer r1000 上部署 clip 应用,clip 将在 AI kit 上进行推理。

准备硬件

适用于 Recomputer R1000

reComputer r1000Raspberry Pi AI Kit

适用于 Raspberry Pi 5/CM5

reComputer R1125reComputer AI R2130reComputer AI Industrial R2145
reComputer Industrial R20xxreComputer Industrial R21xx

安装 Hailo 软件并验证安装

更新系统

sudo apt update
sudo apt full-upgrade
note

有时您在更新过程中可能会遇到以下问题。

Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB]
Get:2 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
Get:3 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
Get:4 http://archive.raspberrypi.com/debian bookworm InRelease [39.0 kB]
Reading package lists... Done
E: Release file for http://deb.debian.org/debian/dists/bookworm/InRelease is not valid yet (invalid for another 58d 8h 26min 35s). Updates for this repository will not be applied.
E: Release file for http://deb.debian.org/debian-security/dists/bookworm-security/InRelease is not valid yet (invalid for another 84d 18h 23min 59s). Updates for this repository will not be applied.
E: Release file for http://archive.raspberrypi.com/debian/dists/bookworm/InRelease is not valid yet (invalid for another 84d 13h 13min 5s). Updates for this repository will not be applied.
E: Release file for http://deb.debian.org/debian/dists/bookworm-updates/InRelease is not valid yet (invalid for another 85d 0h 52min 29s). Updates for this repository will not be applied.

这是因为 Raspberry Pi 上的时间设置不正确,您需要使用以下命令手动设置 Raspberry Pi 上的时间:

# This command only you can connect google.com
sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"

设置好 raspberry 时间后,您可以更新您的 raspberry。

设置 pcie 为 gen2/gen3(gen3 比 gen2 更快)

将以下文本添加到 /boot/firmware/config.txt

#Enable the PCIe external connector

dtparam=pciex1

#Force Gen 3.0 speeds

dtparam=pciex1_gen=3

note

如果您想使用 gen2,请注释掉 dtparam=pciex1_gen=3

安装 hailo-all 并重启

在 Raspberry Pi5 上打开终端,输入以下命令来安装 Hailo 软件。

sudo apt install hailo-all
sudo apt-get -y install libblas-dev nlohmann-json3-dev
sudo reboot

检查软件和硬件

在 Raspberry Pi5 上打开终端,输入以下命令来检查 hailo-all 是否已安装。

hailortcli fw-control identify

正确的结果如下所示:

pir

在 Raspberry Pi5 上打开终端,输入以下命令来检查 hailo-8L 是否已连接。

lspci | grep Hailo

正确的结果如下所示:

pir

运行项目

安装项目

git clone https://github.com/hailo-ai/hailo-CLIP.git
cd hailo-CLIP
./install.sh

运行项目

输入以下命令,您将看到一个 clip 演示:

 source setup_env.sh
clip_app --input demo

如果您想使用自己的摄像头,在确保 raspberry 连接了您自己的摄像头后,您应该输入以下命令:

clip_app --input /dev/video0

结果

在下面显示的视频中,您可以看到当我输入"banana"时,CLIP 模型识别出香蕉,当我输入"apple"时,模型识别出苹果。您只需要输入不同的单词,CLIP 模型就会识别不同的物体。

技术支持与产品讨论

感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。

Loading Comments...