Pular para o conteúdo principal

Detecção de Objetos com YOLOv8 no reComputer R Series com Hailo-8L

Introdução​

YOLOv8 (You Only Look Once versão 8) é a série YOLO mais popular de modelos de detecção de objetos em tempo real. Ele se baseia nos pontos fortes de seus predecessores ao introduzir vários avanços em velocidade, precisão e flexibilidade. O Raspberry-pi-AI-kit é usado para acelerar a velocidade de inferência, apresentando um acelerador de inferência de rede neural de 13 TOPS construído em torno do chip Hailo-8L.

Este wiki demonstra a detecção de objetos usando YOLOv8 na R Series com e sem a aceleração do Raspberry-pi-AI-kit. O Raspberry Pi AI Kit melhora o desempenho do Raspberry Pi e libera seu potencial em aplicações de inteligência artificial e aprendizado de máquina, como varejo inteligente, tráfego inteligente e muito mais. Embora o Raspberry AI Kit seja projetado para o Raspberry Pi 5, nós o testamos em nosso gateway de borda alimentado por CM4. Animados em transformar nosso dispositivo de borda em um gateway IoT inteligente!

Preparar hardwares​

reComputer r1000Raspberry Pi AI Kit
reComputer AI Industrial R2100reComputer Industrial R20xxreComputer Industrial R21xxreComputer AI R2100

Executar este projeto​

Etapa 1: Instalar AI kit​

Se você estiver usando um dispositivo da série R2000 com aceleração de IA integrada, pode pular esta etapa.

pir

Etapa 2: Atualizar sistema e definir PCIe para Gen3​

Atualizar sistema​

Abra o terminal no reComputer R1000 e insira o comando a seguir para atualizar seu sistema.

sudo apt update
sudo apt full-upgrade

Definir PCIe para Gen3​

Abra o terminal no reComputer R1000 e insira o comando a seguir para configurar o reComputer R1000.

sudo raspi-config

Selecione a opção "6 Advanced Options"

pir

Em seguida, selecione a opção "A8 PCIe Speed"

pir

Escolha "Yes" para habilitar o modo PCIe Gen 3

pir

Clique em "Finish" para sair

pir

Etapa 3: Instalar o software Hailo e verificar a instalação​

Instalar o software Hailo​

Abra o terminal no reComputer R1000 e insira o comando a seguir para instalar o software Hailo.

sudo apt install hailo-all
sudo reboot

Verificar software e hardware​

Abra o terminal no reComputer R1000 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 reComputer R1000 e insira o comando a seguir para verificar se o hailo-8L foi conectado.

lspci | grep Hailo

O resultado correto é mostrado abaixo:

pir

Executar YOLOv8​

Abra o terminal no reComputer R1000 e insira o comando a seguir para executar o YOLOv8.

Observação: um monitor externo deve ser conectado via cabo HDMI durante a execução; caso contrário, a interface de visualização não será carregada.

git clone https://github.com/Seeed-Projects/Benchmarking-YOLOv8-on-Raspberry-PI-reComputer-r1000-and-AIkit-Hailo-8L.git
cd Benchmarking-YOLOv8-on-Raspberry-PI-reComputer-r1000-and-AIkit-Hailo-8L
bash ./run.sh object-detection-hailo

Resultado​

pir

Observação​

Se você estiver se conectando remotamente via SSH ou outros métodos e não tiver um monitor externo disponível, pode modificar o método de renderização de imagem no código para que a interface de visualização possa ser renderizada sem depender de um monitor externo.

Abra o arquivo de código de inferência object-detection-hailo.py, modifique a linha 165 e substitua toda a linha pelo seguinte código:

        pipeline_string += f"fpsdisplaysink video-sink=ximagesink name=hailo_display sync={self.sync} text-overlay={self.options_menu.show_fps} signal-fps-measurements=true "

Resultado​

Comparamos a velocidade de inferência do YOLOv8 para detecção de objetos com entrada de resolução 640*640 antes e depois da aceleração usando o AI kit. Os resultados mostram que, antes da aceleração, a velocidade de inferência era de apenas 0,75 FPS, enquanto após a aceleração, ela atingiu 29,5 FPS.

Perspectivas do Projeto​

Neste projeto, comparamos a velocidade de execução do YOLOv8 em detecção de objetos com e sem o kit de IA. O resultado mostra que o kit de IA pode melhorar significativamente o desempenho do dispositivo de borda. E, no futuro, iremos comparar a velocidade de execução do YOLOv8 em diferentes cenários, incluindo kits de IA de segmentação semântica e estimativa de pose após aceleração.

Suporte Técnico e Discussão de Produto​

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

Loading Comments...