AI Tutorial

Mastering YOLOv7: A Comprehensive Guide to Custom Object Detection

YOLOv7 tutorial - Fine-tuning for custom object detection

Das YOLOv7-Modell verstehen: Ein leistungsstarkes Werkzeug zur Objekterkennung

YOLOv7 ist ein fortschrittlicher Algorithmus zur Objekterkennung, der wegen seiner Hochgeschwindigkeitsgenauigkeit und innovativen Funktionen erhebliche Aufmerksamkeit erregt hat. Mit Geschwindigkeiten von 5 FPS bis 160 FPS am Arbeitsplatz repräsentiert es die Spitze der Technologie zur Echtzeit-Objekterkennung.

Warum YOLOv7 wählen?

Mit einer beeindruckenden durchschnittlichen Präzisionsgenauigkeit (AP) von 56,8% für Echtzeitanwendungen bei 30 FPS oder höher auf GPUs wie der V100 übertrifft YOLOv7 seine Wettbewerber und frühere Iterationen des YOLO-Rahmens. Es ist besonders für die GPU-Berechnung optimiert, was die YOLOv7-tiny-Variante zur idealen Wahl für mobile Geräte und Edge-Server macht.

Hauptmerkmale von YOLOv7

  • Kosteneffektives Training: Eines der hervorstechendsten Merkmale von YOLOv7 ist die Fähigkeit, effektiv auf kleinen Datensätzen zu trainieren, wodurch die Notwendigkeit vortrainierter Gewichte entfällt.
  • Gemeinschaftliche Anerkennung: Das offizielle Papier, "YOLOv7: Trainable Bag-of-Freebies Sets New State-of-the-Art for Real-Time Object Detectors", veröffentlicht im Juli 2022, hat innerhalb eines Monats nach seiner Veröffentlichung über 4,3k Sterne auf GitHub erhalten, was die Beliebtheit des Modells verdeutlicht.

Einführung in YOLOv7

Am Ende dieses Leitfadens werden Sie lernen, wie Sie das YOLOv7-Modell mit einem benutzerdefinierten Datensatz neu trainieren und einfache Vorhersagen auf Ihren eigenen Bildern durchführen können.

Schritt 1: Laden Sie Ihren Datensatz hoch

Ihre erste Aufgabe besteht darin, Ihren Datensatz auf Google Drive hochzuladen. Dieser Leitfaden verwendet den BCCD-Datensatz von der Roboflow-Website, aber Sie können jeden Datensatz im YOLO-kompatiblen Format verwenden.

Stellen Sie sicher, dass Sie den richtigen Pfad zu Ihren Datenordnern in der Konfigurationsdatei angeben. Ein einfaches data.yaml-Dateiformat könnte wie folgt aussehen:

path: ../path/to/data
train: train/images
val: val/images

Schritt 2: Erstellen Sie ein Notizbuch

Gehen Sie als Nächstes zu Google Colab, um ein neues Notizbuch zu erstellen. Um die Trainingsgeschwindigkeit zu erhöhen, ändern Sie den Laufzeittyp auf GPU, indem Sie zum Tab "Runtime" gehen und "Change runtime type" mit "GPU" als Hardwarebeschleuniger auswählen.

Schritt 3: Vorbereitung des Codes

Verbinden wir jetzt Google Drive, klonen das YOLOv7-Repository und installieren die notwendigen Abhängigkeiten:

from google.colab import drive
dr = drive.mount('/content/drive')

!git clone https://github.com/WongKinYiu/yolov7.git
%cd yolov7
!pip install -r requirements.txt

Laden Sie das YOLOv7-Modell herunter:

Für dieses Tutorial werden wir das YOLOv7-tiny-Modell herunterladen. Sie finden verschiedene Modelle im Repository.

Schritt 4: Trainieren Sie Ihr Modell!

Nachdem das Modell eingerichtet ist, können Sie mit dem Training beginnen. Passen Sie die Parameter nach Bedarf an und stellen Sie sicher, dass der Modell- und Datenpfad im gesamten Dokument konsistent bleibt.

!python train.py --img 640 --batch 16 --epochs 50 --data data.yaml --weights yolov7-tiny.pt

Schritt 5: Testen der Vorhersagen

Nach dem Training können Sie Vorhersagen mit einem Bild aus dem Validierungsdatensatz durchführen. Ändern Sie einfach den Pfad im --source-Argument, um verschiedene Bilder zu testen:

!python detect.py --weights runs/train/exp/weights/best.pt --img 640 --conf 0.25 --source valid/images

Überwachung des Trainingsprozesses

Das Modell wird während des gesamten Trainingsprozesses Echtzeitmetriken bereitstellen. Sie können ein Experimentverfolgungstool wie Weights & Biases (W&B) integrieren, um detaillierte Berichte zu erhalten.

Fazit: Nutzen Sie die Kraft von YOLOv7

Mit erweiterten Funktionen und Benutzerfreundlichkeit ist YOLOv7 ein Vorreiter beim Entwickeln und Bereitstellen von Anwendungen zur Objekterkennung. Während sich die Gemeinschaft weiterentwickelt, können Sie sich auf innovativere Modelle und Anwendungen freuen.

Warum wenden Sie nicht Ihr neu erlerntes YOLOv7-Wissen an, indem Sie Ihre eigene KI-Anwendung erstellen? Bleiben Sie dran für weitere Tutorials, die Ihr Verständnis und Ihre Fähigkeiten in diesem aufregenden Bereich weiter vertiefen werden!

Weiterlesen

Tutorial on improving AI image resolution using ESRGAN techniques.
GPT-3 powered application tutorial with NextJS and Replit

Hinterlasse einen Kommentar

Alle Kommentare werden vor der Veröffentlichung geprüft.

Diese Website ist durch hCaptcha geschützt und es gelten die allgemeinen Geschäftsbedingungen und Datenschutzbestimmungen von hCaptcha.