Zum Inhalt springen

Schnellstart-Anleitung: Raspberry Pi und Pi Kamera mit YOLOv5 und YOLOv8

Diese umfassende Anleitung soll dir den Einstieg in die YOLO Objekterkennungsmodelle auf einem Raspberry Pi mit einer Pi Kamera erleichtern. Egal, ob du Student, Hobbyist oder Profi bist, mit dieser Anleitung kannst du in weniger als 30 Minuten loslegen. Die Anleitungen sind sorgfältig getestet, um Probleme bei der Einrichtung zu minimieren, damit du dich auf die Nutzung von YOLO für deine speziellen Projekte konzentrieren kannst.



Pass auf: Raspberry Pi 5 Updates und Verbesserungen.

Voraussetzungen

  • Raspberry Pi 3, 4 oder 5
  • Pi Kamera
  • 64-bit Raspberry Pi Betriebssystem

Verbinde die Pi Camera über ein CSI-Kabel mit deinem Raspberry Pi und installiere das 64-Bit-Raspberry Pi-Betriebssystem. Überprüfe deine Kamera mit dem folgenden Befehl:

libcamera-hello

Du solltest einen Video-Feed von deiner Kamera sehen.

Wähle deine YOLO Version: YOLOv5 oder YOLOv8

Dieser Leitfaden bietet dir die Flexibilität, entweder mit YOLOv5 oder YOLOv8. Beide Versionen haben ihre eigenen Vorteile und Anwendungsfälle. Du hast die Wahl, aber vergiss nicht, dass das Ziel dieses Leitfadens nicht nur die schnelle Einrichtung ist, sondern auch eine solide Grundlage für deine zukünftige Arbeit in der Objekterkennung.

Hardware-Besonderheiten: Auf einen Blick

Damit du eine fundierte Hardware-Entscheidung treffen kannst, haben wir die wichtigsten Hardware-Eigenschaften des Raspberry Pi 3, 4 und 5 in der folgenden Tabelle zusammengefasst:

Feature Raspberry Pi 3 Raspberry Pi 4 Raspberry Pi 5
CPU 1.2GHz Quad-Core ARM Cortex-A53 1.5GHz Quad-Core 64-bit ARM Cortex-A72 2.4GHz Quad-Core 64-bit Arm Cortex-A76
RAM 1GB LPDDR2 2GB, 4GB oder 8GB LPDDR4 Details noch nicht verfügbar
USB-Anschlüsse 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
Netzwerk Ethernet & Wi-Fi 802.11n Gigabit Ethernet & Wi-Fi 802.11ac Gigabit Ethernet mit PoE+ Unterstützung, Dualband 802.11ac Wi-Fi®
Leistung Langsamer, erfordert möglicherweise leichtere YOLO Modelle Schneller, kann komplexe YOLO Modelle ausführen Details noch nicht verfügbar
Strombedarf 2,5A Stromversorgung 3.0A USB-C Stromversorgung Details noch nicht verfügbar
Offizielle Dokumentation Link Link Link

Bitte achte darauf, dass du die Anweisungen für dein Raspberry Pi-Modell befolgst, um einen reibungslosen Einrichtungsprozess zu gewährleisten.

Schnellstart mit YOLOv5

In diesem Abschnitt wird beschrieben, wie du YOLOv5 auf einem Raspberry Pi mit einer Pi Camera einrichtest. Diese Schritte sind so konzipiert, dass sie mit dem libcamera Kamera-Stack kompatibel sind, der in Raspberry Pi OS Bullseye eingeführt wurde.

Erforderliche Pakete installieren

  1. Aktualisiere den Raspberry Pi:

    sudo apt-get update
    sudo apt-get upgrade -y
    sudo apt-get autoremove -y
    
  2. Klone das Repository YOLOv5 :

    cd ~
    git clone https://github.com/Ultralytics/yolov5.git
    
  3. Installiere die erforderlichen Abhängigkeiten:

    cd ~/yolov5
    pip3 install -r requirements.txt
    
  4. Für den Raspberry Pi 3 installierst du kompatible Versionen von PyTorch und Torchvision (überspringe sie für den Raspberry Pi 4):

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

Ändern Sie detect.py

Um TCP-Streams über SSH oder die CLI zu aktivieren, sind geringfügige Änderungen in detect.py.

  1. Öffnen Sie detect.py:

    sudo nano ~/yolov5/detect.py
    
  2. Finde und ändere die is_url Zeile, um TCP-Streams zu akzeptieren:

    is_url = source.lower().startswith(('rtsp://', 'rtmp://', 'http://', 'https://', 'tcp://'))
    
  3. Kommentieren Sie die view_img Linie:

    # view_img = check_imshow(warn=True)
    
  4. Speichern und beenden:

    CTRL + O -> ENTER -> CTRL + X
    

Initiiere TCP-Stream mit Libcamera

  1. Starte den TCP-Stream:

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

Lass diese Terminalsitzung für die nächsten Schritte laufen.

YOLOv5 Inferenz durchführen

  1. Führe die YOLOv5 Erkennung durch:

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

Schnellstart mit YOLOv8

Folge diesem Abschnitt, wenn du stattdessen YOLOv8 einrichten möchtest. Die Schritte sind sehr ähnlich, aber auf die speziellen Bedürfnisse von YOLOv8 zugeschnitten.

Erforderliche Pakete installieren

  1. Aktualisiere den Raspberry Pi:

    sudo apt-get update
    sudo apt-get upgrade -y
    sudo apt-get autoremove -y
    
  2. Installieren Sie die ultralytics Python Paket:

    pip3 install ultralytics
    
  3. Neustart:

    sudo reboot
    

Initiiere TCP-Stream mit Libcamera

  1. Starte den TCP-Stream:

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

YOLOv8 Inferenz durchführen

Um die Inferenz mit YOLOv8 durchzuführen, kannst du den folgenden Python Codeausschnitt verwenden:

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

Nächste Schritte

Herzlichen Glückwunsch zur erfolgreichen Einrichtung von YOLO auf deinem Raspberry Pi! Für weitere Informationen und Unterstützung besuche Ultralytics und Kashmir World Foundation.

Danksagungen und Zitate

Dieser Leitfaden wurde ursprünglich von Daan Eeltink für die Kashmir World Foundation erstellt, eine Organisation, die sich für den Einsatz von YOLO zum Schutz bedrohter Arten einsetzt. Wir danken Daan Eeltink für seine Pionierarbeit und sein pädagogisches Engagement auf dem Gebiet der Objekterkennungstechnologien.

Weitere Informationen über die Aktivitäten der Kashmir World Foundation findest du auf deren Website.



Erstellt am 2023-11-12, Aktualisiert am 2024-02-03
Autoren: glenn-jocher (2)

Kommentare