Pular para o conteúdo principal

Aplicativo CLIP no Raspberry Pi com AI Kit

Introdução

CLIP(Contrastive Language-Image Pre-Training) é uma rede neural treinada em uma variedade de pares (imagem, texto). Ela pode ser instruída em linguagem natural para prever o trecho de texto mais relevante, dada uma imagem, sem otimizar diretamente para a tarefa, de forma semelhante às capacidades de zero-shot do GPT-2 e 3. Descobrimos que o CLIP iguala o desempenho do ResNet50 original no ImageNet em modo “zero-shot”, sem usar nenhum dos 1,28M exemplos rotulados originais, superando vários desafios importantes em visão computacional.

Este wiki ensinará você a implantar o aplicativo CLIP em um Raspberry Pi5 ou Recomputer r1000; o CLIP fará inferência no AI kit.

Preparar Hardware

Para Recomputer R1000

reComputer r1000Raspberry Pi AI Kit

Para Raspberry Pi 5/CM5

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

Instalar o Software Hailo e Verificar a Instalação

Atualizar o sistema

sudo apt update
sudo apt full-upgrade
nota

Às vezes você pode encontrar os seguintes problemas durante as atualizações.

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.

Isso acontece porque a hora no Raspberry Pi está configurada incorretamente, e você precisa definir manualmente a hora no Raspberry Pi com o comando abaixo:

# 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"

Após definir o horário do seu Raspberry, você pode atualizar o seu Raspberry.

Configurar PCIe para gen2/gen3 (gen3 é mais rápido que gen2)

Adicione o seguinte texto em /boot/firmware/config.txt

#Enable the PCIe external connector

dtparam=pciex1

#Force Gen 3.0 speeds

dtparam=pciex1_gen=3

nota

Se você quiser usar gen2, comente dtparam=pciex1_gen=3

Instalar hailo-all e reiniciar

Abra o terminal no Raspberry Pi5 e insira o comando a seguir para instalar o software Hailo.

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

Verificar Software e Hardware

Abra o terminal no Raspberry Pi5 e insira o comando a seguir para verificar se o hailo-all foi instalado.

hailortcli fw-control identify

O resultado correto é mostrado abaixo:

pir

Abra o terminal no Raspberry Pi5 e insira o comando a seguir para verificar se o hailo-8L foi conectado.

lspci | grep Hailo

O resultado correto é mostrado abaixo:

pir

Executar o Projeto

Instalar o Projeto

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

Executar o projeto

Digite o comando abaixo e você verá uma demo do CLIP:

 source setup_env.sh
clip_app --input demo

E se você quiser usar sua câmera, você deve digitar o comando abaixo depois de se certificar de que o Raspberry conectou a sua própria câmera:

clip_app --input /dev/video0

Resultado

No vídeo mostrado abaixo, você pode ver que, quando eu insiro "banana", o modelo CLIP reconhece uma banana, e quando eu insiro "apple", o modelo reconhece uma maçã. Você só precisa inserir palavras diferentes, e o modelo CLIP reconhecerá objetos diferentes.

Suporte Técnico & Discussão de Produtos

Obrigado por escolher nossos produtos! Estamos aqui para fornecer diferentes formas de suporte para garantir que sua experiência com nossos produtos seja o mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

Loading Comments...