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...