Overslaan naar inhoud

Snelstartgids: Raspberry Pi en Pi-camera met YOLOv5 en YOLOv8

Deze uitgebreide handleiding is bedoeld om je reis te versnellen met YOLO objectdetectiemodellen op een Raspberry Pi met behulp van een Pi-camera. Of je nu een student, hobbyist of professional bent, deze gids is ontworpen om je in minder dan 30 minuten op weg te helpen. De instructies zijn uitvoerig getest om installatieproblemen tot een minimum te beperken, zodat jij je kunt richten op het gebruik van YOLO voor jouw specifieke projecten.



Kijken: Raspberry Pi 5 updates en verbeteringen.

Vereisten

  • Raspberry Pi 3, 4 of 5
  • Pi Camera
  • 64-bits Raspberry Pi-besturingssysteem

Sluit de Pi Camera aan op je Raspberry Pi via een CSI kabel en installeer het 64-bit Raspberry Pi besturingssysteem. Controleer je camera met het volgende commando:

libcamera-hello

Je zou een videofeed van je camera moeten zien.

Kies je YOLO versie: YOLOv5 of YOLOv8

Deze gids biedt je de flexibiliteit om te beginnen met ofwel YOLOv5 of YOLOv8. Beide versies hebben hun unieke voordelen en toepassingen. De keuze is aan jou, maar onthoud dat het doel van de handleiding niet alleen een snelle installatie is, maar ook een robuuste basis voor je toekomstige werk met objectdetectie.

Hardwarespecificaties: In een oogopslag

Om je te helpen bij het maken van een weloverwogen hardwarebeslissing, hebben we de belangrijkste hardwarespecificaties van de Raspberry Pi 3, 4 en 5 in de onderstaande tabel samengevat:

Functie Raspberry Pi 3 Raspberry Pi 4 Raspberry Pi 5
CPU 1,2 GHz quad-core ARM Cortex-A53 1,5 GHz Quad-core 64-bits ARM Cortex-A72 2,4 GHz quad-core 64-bits Arm Cortex-A76
RAM 1 GB LPDDR2 2 GB, 4 GB of 8 GB LPDDR4 Details nog niet beschikbaar
USB-poorten 4 x USB 2.0 2 x USB 2.0, 2 x USB 3.0 2 x USB 3.0, 2 x USB 2.0
Netwerk Ethernet & Wi-Fi 802.11n Gigabit Ethernet & Wi-Fi 802.11ac Gigabit Ethernet met PoE+ ondersteuning, Dual-band 802.11ac Wi-Fi®
Prestaties Langzamer, kan lichtere YOLO modellen vereisen Sneller, kan complexe YOLO modellen uitvoeren Details nog niet beschikbaar
Benodigd vermogen 2,5 A voeding 3,0A USB-C voeding Details nog niet beschikbaar
Officiële documentatie Link Link Link

Zorg ervoor dat je de instructies volgt die specifiek zijn voor jouw Raspberry Pi-model voor een soepel installatieproces.

Snel aan de slag met YOLOv5

In dit gedeelte wordt uitgelegd hoe je YOLOv5 kunt instellen op een Raspberry Pi met een Pi Camera. Deze stappen zijn ontworpen om compatibel te zijn met de libcamera camera stack die geïntroduceerd is in Raspberry Pi OS Bullseye.

Noodzakelijke pakketten installeren

  1. Update de Raspberry Pi:

    sudo apt-get update
    sudo apt-get upgrade -y
    sudo apt-get autoremove -y
    
  2. Kloon de YOLOv5 repository:

    cd ~
    git clone https://github.com/Ultralytics/yolov5.git
    
  3. Installeer de vereiste afhankelijkheden:

    cd ~/yolov5
    pip3 install -r requirements.txt
    
  4. Installeer voor Raspberry Pi 3 compatibele versies van PyTorch en Torchvision (sla over voor Raspberry Pi 4):

    pip3 uninstall torch torchvision
    pip3 install torch==1.11.0 torchvision==0.12.0
    

Aanpassen detect.py

Om TCP streams via SSH of de CLI in te schakelen zijn kleine aanpassingen nodig in detect.py.

  1. Open detect.py:

    sudo nano ~/yolov5/detect.py
    
  2. Zoek en wijzig de is_url regel om TCP streams te accepteren:

    is_url = source.lower().startswith(('rtsp://', 'rtmp://', 'http://', 'https://', 'tcp://'))
    
  3. Geef commentaar op de view_img lijn:

    # view_img = check_imshow(warn=True)
    
  4. Opslaan en afsluiten:

    CTRL + O -> ENTER -> CTRL + X
    

TCP-stream starten met Libcamera

  1. Start de TCP stream:

    libcamera-vid -n -t 0 --width 1280 --height 960 --framerate 1 --inline --listen -o tcp://127.0.0.1:8888
    

Houd deze terminalsessie actief voor de volgende stappen.

Voer YOLOv5 inferentie uit

  1. Voer de YOLOv5 detectie uit:

    cd ~/yolov5
    python3 detect.py --source=tcp://127.0.0.1:8888
    

Snel aan de slag met YOLOv8

Volg deze sectie als je in plaats daarvan YOLOv8 wilt instellen. De stappen lijken op elkaar, maar zijn aangepast aan de specifieke behoeften van YOLOv8.

Noodzakelijke pakketten installeren

  1. Update de Raspberry Pi:

    sudo apt-get update
    sudo apt-get upgrade -y
    sudo apt-get autoremove -y
    
  2. Installeer de ultralytics Python verpakking:

    pip3 install ultralytics
    
  3. Herstart:

    sudo reboot
    

TCP-stream starten met Libcamera

  1. Start de TCP stream:

    libcamera-vid -n -t 0 --width 1280 --height 960 --framerate 1 --inline --listen -o tcp://127.0.0.1:8888
    

Voer YOLOv8 inferentie uit

Om inferentie uit te voeren met YOLOv8 kun je het volgende Python codefragment gebruiken:

from ultralytics import YOLO

model = YOLO('yolov8n.pt')
results = model('tcp://127.0.0.1:8888', stream=True)

while True:
    for result in results:
        boxes = result.boxes
        probs = result.probs

Volgende stappen

Gefeliciteerd met het succesvol instellen van YOLO op je Raspberry Pi! Ga voor meer informatie en ondersteuning naar Ultralytics en Stichting Kasjmir Wereld.

Erkenningen en citaten

Deze gids is oorspronkelijk gemaakt door Daan Eeltink voor Kashmir World Foundation, een organisatie die zich inzet voor het gebruik van YOLO voor het behoud van bedreigde diersoorten. We erkennen hun pionierswerk en educatieve focus op het gebied van objectdetectietechnologieën.

Voor meer informatie over de activiteiten van Kashmir World Foundation kun je terecht op hun website.



Gemaakt op 2023-11-12, Bijgewerkt op 2024-02-03
Auteurs: glenn-jocher (2)

Reacties