Maschinelles Lernen und neuronale Netze - Seite 38

 

Echtzeit-Objekterkennung und -verfolgung mit YOLOv8 auf benutzerdefiniertem Datensatz: Vollständiges Tutorial



Echtzeit-Objekterkennung und -verfolgung mit YOLOv8 auf benutzerdefiniertem Datensatz: Vollständiges Tutorial

In diesem Video-Tutorial stellt der Moderator einen benutzerdefinierten Datensatz mit Bildern von Autos, Lastwagen, Motorrädern, Pickups, Flugzeugen und Wohnmobilen vor, der verwendet wird, um die Implementierung von YOLOv8 mit Erkennung und Verfolgung zu demonstrieren. Sie erläutern die Bedeutung eines ausgewogenen Datensatzes und bieten Schritt-für-Schritt-Anleitungen zum Navigieren im GitHub-Repository, zum Einrichten der erforderlichen Umgebung und zum Implementieren der Objektverfolgung mithilfe des Deep-Sort-Algorithmus. Der Moderator erörtert auch die Konfusionsmatrix und die Bedeutung von Trainings- und Validierungsverlusten, während er die Genauigkeit des Modells testet, indem er die Inferenz mit einem von Google Drive heruntergeladenen Demovideo durchführt. Abschließend geben sie die Notizbuchdatei für die Zusammenarbeit an Interessierte weiter.

  • 00:00:00 In diesem Abschnitt des Video-Tutorials stellt der Moderator einen öffentlich zugänglichen Datensatz mit mehreren Klassen vor, der etwa 4680 Bilder von Autos, Lastwagen, Motorrädern, Pickups, Flugzeugen und Wohnmobilen enthält. Der Datensatz ist nicht ausgewogen, da er von Autoanmerkungen mit etwa 8.389 Annotationen überrepräsentiert ist, während andere Annotationen sehr niedrig sind. Das Dataset wird jedoch für dieses Tutorial verwendet, aber wenn Sie ein Projekt implementieren oder ein öffentlich verfügbares Dataset verwenden, ist es wichtig sicherzustellen, dass das Dataset ausgewogen ist. Das Video stellt auch ein GitHub-Repository vor, das für das Projekt verwendet wird, und bietet Schritt-für-Schritt-Anleitungen zur Implementierung von YOLO V8 mit Erkennung und Verfolgung für jeden benutzerdefinierten Datensatz. Die Anweisungen umfassen das Klonen des Repositorys, das Installieren von Abhängigkeiten, das Implementieren der Objektverfolgung mit Deep Sor,t und das Herunterladen eines Beispielvideos zum Testen.

  • 00:05:00 In diesem Abschnitt des Videos erläutert der Moderator die Bibliotheken, die zum Anzeigen von Bildern und Schulungsinformationen verwendet werden, und zeigt, wie die erforderliche Umgebung für YOLOv8 mithilfe von Google Colab eingerichtet wird. Der Präsentator klont das GitHub-Repository für YOLOv8, installiert die erforderlichen Bibliotheken und navigiert zum Erkennungsordner. Der Moderator zeigt dann, wie der erforderliche benutzerdefinierte Datensatz von Roboflow heruntergeladen und entpackt wird, um die Ordner „Train“, „Test“ und „Validation“ zu erhalten.

  • 00:10:00 In diesem Abschnitt des Videos erläutert der Moderator die Implementierung der Objektverfolgung mit dem Deep-Sort-Algorithmus. Sie laden die Deep-Sort-Dateien herunter und entpacken sie, bevor sie die Verwirrungsmatrix zeigen, die ein Diagramm ist, das zeigt, wie gut ein Modell mit verschiedenen Klassen umgeht. Sie erklären, dass die Konfusionsmatrix anzeigt, dass das Modell Wohnmobile in 67 % der Fälle korrekt erkennt, sie aber manchmal als einfache Autos klassifiziert. Sie diskutieren auch die Bedeutung von Trainings- und Validierungsverlusten und wie sie die Modellvorhersage für Validierungsbatches überprüfen. Schließlich laden sie die Gewichte für das benutzerdefinierte Modell von Google Drive herunter und validieren sie, wobei sie zeigen, dass die mittlere durchschnittliche Genauigkeit hoch ist, wenn IOU bei 50 % liegt.

  • 00:15:00 In diesem Abschnitt testet der Präsentator die Genauigkeit des Modells, indem er mithilfe eines von seinem Google Drive heruntergeladenen Demovideos eine Inferenz mit dem konstruierten Modell durchführt. Das Video zeigt Autos und Lastwagen auf einer Autobahn, und die Ergebnisse zeigen, dass das Modell mit einer eindeutigen ID, die jedem Objekt zugewiesen ist, gut funktioniert und auch eine Verfolgung möglich ist. Die in diesem Tutorial verwendete Collab-Datei ist in ihrem GitHub-Repository verfügbar. Ein weiteres Video wird ebenfalls getestet, und die Ergebnisse sind ähnlich gut, wobei einige Fälle verbessert werden müssen. Der Präsentator teilt mit, dass er Objekterkennungs-Tracking mit YOLOv8 in einem benutzerdefinierten Datensatz implementiert hat, und teilt die Collab-Notebook-Datei mit Interessierten.
 

Segmentierung und Verfolgung von Objekten in Echtzeit mit YOLOv8 auf einem benutzerdefinierten Datensatz: Vollständiges Tutorial



Segmentierung und Verfolgung von Objekten in Echtzeit mit YOLOv8 auf einem benutzerdefinierten Datensatz: Vollständiges Tutorial

Dieses Video-Tutorial ist eine umfassende Anleitung zur Verwendung von YOLOv8 für die Objektsegmentierung in Echtzeit und die Verfolgung benutzerdefinierter Datensätze. Das Tutorial geht durch den gesamten Prozess, einschließlich des Importierens von Datensätzen, des Trainierens benutzerdefinierter Modelle mit YOLOv8- und Deep-Sort-Algorithmen und des Testens der Modelle in Demovideos. Der Referent stellt Code und Bibliotheken bereit, die für die Implementierung erforderlich sind, und präsentiert die Ergebnisse der Vorhersagen des Modells. Sie erklären auch die Konfusionsmatrix und stellen Links bereit, um auf die Ausgabevideos und Polardateien auf GitHub zuzugreifen. Insgesamt ist dieses Tutorial eine großartige Ressource für alle, die mehr über Objektsegmentierung und -verfolgung mit YOLOv8 erfahren möchten.

  • 00:00:00 In diesem Abschnitt behandelt das Video-Tutorial die Verwendung von YOLOv8 für die Segmentierung und Nachverfolgung von benutzerdefinierten Datensätzen. Das Tutorial geht Schritt für Schritt durch die Implementierung und verwendet ein Repository, um bei der Implementierung zu helfen. Der Referent erklärt, wie man die erforderlichen Bibliotheken und Abhängigkeiten importiert und wie man auf einen Drohnenverkehrsdatensatz von Roboflow zugreift und ihn herunterlädt. Der zum Importieren des Datensatzes erforderliche Code wird ebenfalls bereitgestellt, zusammen mit Anweisungen zur erfolgreichen Ausführung des Codes. Es wird betont, dass es wichtig ist, das vollständige Video anzusehen, um die Kernkonzepte vollständig zu verstehen.

  • 00:05:00 In diesem Abschnitt erläutert der Referent, wie benutzerdefinierte Modelle für die Objektverfolgung mit YOLOv8- und Deep-Sort-Algorithmen trainiert werden. Sie erwähnen das Verfahren zum Herunterladen eines Datensatzes von Roboflow in das Google Colab-Notebook, zum Herunterladen von Deep Sort-Dateien und zum Trainieren der benutzerdefinierten Modelle zum Erkennen verschiedener Klassen von Objekten, einschließlich Fahrrädern, Bussen, Autos und Lastwagen. Der Sprecher teilt die Ergebnisse der Modellvorhersage im Validierungsbatch, speicherte die Modellgewichte in Google Drive und lud ein Demovideo herunter, um die Leistung des Modells zu testen. Sie erklären die Konfusionsmatrix und wie sie die Genauigkeit des Modells für verschiedene Klassen von Objekten offenbart. Insgesamt bietet das Video ein vollständiges Tutorial zur Objektsegmentierung und -verfolgung in Echtzeit mit YOLOv8 für benutzerdefinierte Datensätze.

  • 00:10:00 In diesem Abschnitt des Videos testet der Moderator das Modell anhand von zwei Demovideos und präsentiert die Ergebnisse. Das Modell ist in der Lage, Objekte genau zu erkennen und zu verfolgen, jedem Objekt eine eindeutige ID zuzuweisen und Spuren zu erstellen, um ihrer Bewegung zu folgen. Der Moderator stellt einen Link für den Zugriff auf das Ausgabevideo und die Polardatei auf GitHub bereit.

  • 00:15:00 In diesem Abschnitt präsentiert der Referent die Ergebnisse seines Projekts zur Objektsegmentierung und -verfolgung mit YOLOv8 auf einem benutzerdefinierten Datensatz. Der Sprecher zeigt seine Ausgabevideos und erwähnt, dass die Erkennungen sehr gut sind, und die Zuschauer können die Dateien herunterladen, um die Ergebnisse selbst zu sehen. Der Sprecher erinnert die Zuschauer auch daran, den Kanal für zukünftige Videos zu neuen Themen zu abonnieren.
 

Verkehrszeichen- und Ampelerkennung und Farberkennung mit YOLOv8



Verkehrszeichen- und Ampelerkennung und Farberkennung mit YOLOv8

Dieses YouTube-Tutorial zeigt die Verwendung von YOLOv8 für die Verkehrszeichenerkennung und Farberkennung. Der Moderator stellt den Datensatz vor, der 17 verschiedene Klassen von Verkehrszeichen mit einer ausgewogenen Bildverteilung enthält. Das YOLOv8-Modell wird über 100 Epochen trainiert und verfeinert, was zu guten mittleren durchschnittlichen Präzisionswerten für iou50 und ioub50 führt. Der Moderator demonstriert, wie die Konfusionsmatrix interpretiert und das Modell anhand des Validierungsdatensatzes validiert wird. Das Modell wird dann auf zwei Demovideos getestet, die beide genaue Erkennungsergebnisse zeigen. Insgesamt schneidet YOLOv8 bei der Erkennung von Verkehrszeichen und Ampeln gut ab.

  • 00:00:00 In diesem Abschnitt des Video-Tutorials stellt der Moderator den Verkehrszeichen-Datensatz vor, der zum Trainieren des YOLOv8-Modells zur Verkehrszeichenerkennung verwendet wird. Der Datensatz enthält 17 verschiedene Klassen von Verkehrszeichen mit insgesamt 2093 Bildern für Trainings-, Validierungs- und Testzwecke. Der Datensatz ist ausgewogen, was bedeutet, dass alle Klassen eine nahezu gleiche Verteilung von Bildern haben, mit Ausnahme von grünen Ampeln, die eine etwas höhere Anzahl von Bildern haben. Der Moderator zeigt auch, wie man den Datensatz von RoboFlow in das Google Colab-Notebook importiert und die notwendigen Bibliotheken für die Implementierung von YOLOv8 installiert, einschließlich Ultralytics- und Glob-Bibliotheken zum Verwalten von Dateipfaden sowie Bild- und Anzeigebibliotheken zum Anzeigen von Eingabe- und Ausgabebildern. Der Präsentator bietet auch Optionen zum Installieren von YOLOv8, entweder durch Klonen des GitHub-Repositorys oder durch Installieren aus dem Ultralytics-Paket über Pip.

  • 00:05:00 iou50 sind gute Indikatoren für die Leistung des trainierten YOLOv8-Modells bei der Verkehrszeichen- und Farberkennungsaufgabe. Das Modell wurde mit einem großen Datensatz trainiert und über 100 Epochen feinabgestimmt, was zu einer mittleren durchschnittlichen Genauigkeit mit ioub50 von 95,8 % und einer durchschnittlichen durchschnittlichen Genauigkeit mit ioub 50 von 81,3 % führte. Die besten Gewichtungen mit der höchsten mittleren durchschnittlichen Genauigkeit wurden als „best.pt“ gespeichert. Insgesamt sind die Ergebnisse für die Erkennung von 17 verschiedenen Klassen von Verkehrszeichen und Ampeln im Bilddatensatz recht gut.

  • 00:10:00 In diesem Abschnitt des Videos erklärt der Moderator die verschiedenen Dateien, die im Schulungsordner gespeichert werden, nachdem das YOLOv8-Modell zur Erkennung von Verkehrszeichen und Ampeln sowie zur Farberkennung ausgeführt wurde. Diese Dateien enthalten die Konfusionsmatrix, die F1-Kurve, die Präzisionskurve, die Erinnerungskurve und die Modellleistung für jede Epoche. Sie demonstrieren auch, wie die Konfusionsmatrix interpretiert wird und wie das Modell anhand des Validierungsdatensatzes unter Verwendung der besten Gewichtungen des Modells validiert wird. Schließlich schlagen sie vor, dass das Training des Modells für eine längere Dauer die mittlere durchschnittliche Genauigkeit der Ergebnisse weiter verbessern könnte.

  • 00:15:00 In diesem Abschnitt des Videos validiert der Präsentator das Modell anhand der Bilder des Validierungsdatensatzes und erhält eine beeindruckende Punktzahl für die durchschnittliche Hauptpräzision. Das Modell wird dann in zwei Demovideos getestet, wo es Schilder wie „Nicht links abbiegen“, „Parken“, „Rotlicht“ und mehr erfolgreich erkennt. Die Demovideos werden von der Pixel-Website heruntergeladen und dann auf Google Drive hochgeladen. Die ausgegebenen Videos werden angezeigt und weisen genaue Erkennungsergebnisse auf. Insgesamt zeigt das Modell eine gute Leistung bei der Erkennung von Verkehrszeichen und Ampeln mit YOLOv8.
 

Erkennung und Segmentierung von Schlaglöchern mit YOLOv8 (Bilder & Videos)| Benutzerdefinierter Datensatz | Vollständiger Leitfaden



Erkennung und Segmentierung von Schlaglöchern mit YOLOv8 (Bilder & Videos)| Benutzerdefinierter Datensatz | Vollständiger Leitfaden

Dieses Video zeigt, wie Sie mit YOLOv8 einen benutzerdefinierten Datensatz für die Erkennung und Segmentierung von Schlaglöchern erstellen. Der Moderator zeigt die Schritte zum Klonen und Kommentieren von Bilddaten und empfiehlt die Verwendung von Google Collab zum Trainieren des Modells. Notwendige Abhängigkeiten für YOLOv8 werden ebenfalls besprochen, sowie die Einrichtung des Datensatzes und das Trainieren des Modells. Das Modell erreichte eine mittlere durchschnittliche Genauigkeit von 0,532 für die Erkennung und 0,531 für die Segmentierung und zeigte eine gute Leistung bei der Erkennung von Schlaglöchern in Videos. Der Moderator beendet das Video, nachdem er das benutzerdefinierte Modell validiert und gute Ergebnisse erzielt hat.

  • 00:00:00 In diesem Abschnitt des Videos demonstriert der Autor, wie man mit YOLOv8 einen benutzerdefinierten Datensatz für die Erkennung und Segmentierung von Schlaglöchern erstellt. Der Autor verwendet Roboflow, um seinen eigenen Arbeitsbereich und sein eigenes Projekt zu erstellen, und erklärt, wie wichtig es ist, einen öffentlichen Plan für den Arbeitsbereich auszuwählen, um den Datensatz nach Google Colab exportieren zu können. Der Autor zeigt auch, wie man Videos oder Bilder importiert oder öffentlich verfügbare Datensätze klont, um die eigenen zu ergänzen. Abschließend zeigt der Autor, wie man Bilder und Anmerkungen klont, was letztendlich zu einem Datensatz von 50 Bildern für die Erkennung und Segmentierung von Schlaglöchern führt.

  • 00:05:00 In diesem Abschnitt des Videos demonstriert der Moderator, wie Bilddaten für die Schlaglocherkennung und Segmentierung mit YOLOv8 geklont und mit Anmerkungen versehen werden. Sie beginnen damit, die verbleibenden 46 Bilder aus dem ursprünglichen Datensatz zu klonen, wodurch sich die Gesamtzahl auf 96 Bilder erhöht. Der Annotationsprozess umfasst das Verbinden von Punkten in einer Polygonform, um die Position des Schlaglochs auf jedem Bild anzuzeigen. Der Moderator zeigt dann, wie die Anmerkungen gespeichert und jedem Bild zugewiesen werden. Der Prozess ist zeitaufwändig, aber er kann leicht durchgeführt werden, indem Sie die im Video beschriebenen Schritte befolgen.

  • 00:10:00 In diesem Abschnitt des Videos erläutert der Moderator den Prozess des Annotierens eines Datensatzes zur Schlaglocherkennung und -segmentierung. Er demonstriert, wie ein Datensatz mit dem Annotationstool generiert wird, und fährt dann damit fort, das Modell mit dem YOLOv8-Algorithmus in Google Collab zu trainieren. Der Moderator erwähnt auch, dass man das Modell auf RoboFlow mit einem einzigen Klick und ohne Codierung trainieren kann, aber er empfiehlt die Verwendung von Google Collab, um neue Dinge zu lernen. Das Video zeigt, wie Sie die erforderlichen Bibliotheken importieren und ein GitHub-Repository klonen, bevor Sie das Arbeitsverzeichnis festlegen und Abhängigkeiten installieren.

  • 00:15:00 In diesem Abschnitt des Videos gibt der Moderator Anweisungen zum Installieren der erforderlichen Abhängigkeiten für YOLOv8 und Segmentierung und betont, dass es wichtig ist, dies vor dem Training zu tun, um später Bibliotheksprobleme zu vermeiden. Der Moderator geht auch durch das Importieren des Datensatzes von RoboFlow in den Google-Ordner und das Herunterladen sowie das Einrichten des Datensatzspeicherorts und das Trainieren des Modells. Der Präsentator bestätigt und behebt außerdem einen Fehler in der Datei „predict.py“, die für die Nachverfolgung angepasst wurde.

  • 00:20:00 Schlaglöcher mit einer mittleren Genauigkeit von 0,532 bei einem IOU von 50 und 0,218 bei einem IOU von 0,50 bis 0,95 erkennen. Das Modell wurde an einem Beispielvideo getestet und zeigte eine gute Leistung bei der Erkennung von Schlaglöchern. Die angezeigte Konfusionsmatrix zeigt die Verteilung der Daten auf verschiedene Klassen. Insgesamt funktioniert das Modell gut bei der Erkennung von Schlaglöchern.

  • 00:25:00 In diesem Abschnitt des Videos versucht der Moderator, das benutzerdefinierte Modell für Schlaglocherkennung und Segmentierung mit YOLOv8 zu validieren. Sie stießen auf ein Problem, bei dem das Modell Schlaglöcher in 50 % der Fälle nicht erkannte, was zu einem leeren Bildschirm führte. Der Moderator fügte dann den besten DOT-Gewichtungspfad hinzu und konnte das Problem beheben. Anschließend zeigten sie die Vorhersage auf dem Validierungsbatch an und erreichten eine mittlere durchschnittliche Genauigkeit von 0,538 für die Erkennung und 0,531 für die Segmentierung. Das Modell wurde in mehreren Demovideos getestet und hat gut funktioniert, und der Moderator schließt das Video ab.
 

YOLOv8 Benutzerdefinierte Objekterkennung und -verfolgung | Schiffserkennung | Vollständiges Tutorial



YOLOv8 Benutzerdefinierte Objekterkennung und -verfolgung | Schiffserkennung | Vollständiges Tutorial

Das YouTube-Tutorial behandelt die Implementierung von YOLOv8 mit Deep-Sort-Objektverfolgung in einem benutzerdefinierten Datensatz zur Schiffserkennung. Das Video erläutert, wie Sie den Datensatz von RoboFlow herunterladen, ein Projekt in Expense ID einrichten und das Modell in Google Colab trainieren. Das Trainingsskript wurde über 70 Epochen ausgeführt und ergab eine mittlere durchschnittliche Präzision von 0,968 mit IOU 50. Der Moderator analysiert die Verlust- und Durchschnittspräzisionsdiagramme, um zu zeigen, dass das Training für mehr Epochen bessere Ergebnisse liefert. Anschließend demonstrieren sie, wie das Modell anhand eines Validierungsdatensatzes validiert wird, und zeigen die mittlere durchschnittliche Genauigkeit auf Bildern des Validierungsdatensatzes. Schließlich zeigen sie einige Demovideos des Modells in Aktion, einschließlich eines Beispiels einer falschen Vorhersage.

  • 00:00:00 In diesem Abschnitt behandelt das Video-Tutorial den Datensatz für das Projekt zur benutzerdefinierten Objekterkennung und -verfolgung, das rund 794 Bilder von Schiffen enthält, die von Drohnen mit nur einer Klasse namens „Board“ oder „Shape“ erfasst wurden. Das Tutorial zeigt dann, wie Sie den Datensatz von RoboFlow herunterladen und in Google Colab oder Expense ID exportieren, das 25 kostenlose Credits und eine Tesla T4- oder V100-GPU zum Trainieren von Modellen für maschinelles Lernen bietet. Schließlich behandelt das Tutorial das Einrichten eines Projekts in Expense ID und das Öffnen eines Jupyter-Notebooks mit Expense-Serveroptionen zum Trainieren des YOLOv8-Objekterkennungsmodells für das Dataset.

  • 00:05:00 In diesem Abschnitt des YouTube-Tutorials erklärt der Kursleiter die Projekteinstellung und stellt einen GitHub-Repo-Link bereit, um YOLO v8 mit Deep-Sort-Objektverfolgung auf einem benutzerdefinierten Schiffserkennungsdatensatz zu implementieren. Das Video zeigt, wie Sie das GitHub-Repo in ein Google Colab-Notebook klonen und die erforderlichen Bibliotheken mit pip installieren. Das Notebook-Skript wird ausführlich erklärt, einschließlich des Importierens der Bildbibliothek, des Festlegens aktueller Arbeitsverzeichnisse und des Herunterladens vorab trainierter Modelle. Der Kursleiter betont, wie wichtig es ist, das Skript in der richtigen Reihenfolge auszuführen und alle erforderlichen Bibliotheken zu installieren, bevor die Schulungs-, Test- oder Validierungsskripts ausgeführt werden, um Fehler zu vermeiden.

  • 00:10:00 In diesem Abschnitt erklärt der Referent, wie man einen Datensatz mit Schiffsbildern von RoboFlow herunterlädt und die Objektverfolgung mit DeepSort implementiert. Anschließend trainieren sie ein YOLOv8-Modell auf dem Schiffsdatensatz, legen den Speicherort des Datensatzes und die Standardbildgröße fest, bevor sie das Trainingsskript für 70 Epochen ausführen. Die Ergebnisse zeigen eine gute mittlere durchschnittliche Genauigkeit von 0,968 mit IOU 50, was bedeutet, dass das Modell 96,8 % der Schiffe in den Bildern korrekt identifiziert hat. Die Gewichtsdatei wird im Zugordner gespeichert, und eine Verwirrungsmatrix zeigt, dass das Modell bei der Erkennung des Vorhandenseins eines Schiffes zu 96 % genau war, mit einer Fehlerrate von 4 %. Der Trainingsverlust nimmt kontinuierlich ab, was darauf hinweist, dass das Training für mehr Epochen zu besseren Ergebnissen führt.

  • 00:15:00 In diesem Abschnitt des Videos analysiert der Moderator das Verlustdiagramm und das Diagramm der durchschnittlichen Präzision, um zu zeigen, dass der Trainingsverlust kontinuierlich abnimmt und die mittlere durchschnittliche Präzision kontinuierlich zunimmt, wenn die Epochen zunehmen. Anschließend demonstrieren sie, wie das Modell an einem Validierungsdatensatz validiert wird, und zeigen die mittlere durchschnittliche Genauigkeit mit iou50 auf Validierungsdatensatzbildern, die 96,4 % und die mittlere durchschnittliche Genauigkeit mit iou50 bis 95 71,6 % beträgt. Der Präsentator zeigt dann einige Demovideos unter Verwendung des Skripts „predict.pi“, indem er die besten Modellgewichte durchläuft, um das Modell in mehreren Videos zu testen, und demonstriert, wie das Modell Boards erkennen und jedem Objekt eindeutige IDs zuweisen kann. Schließlich zeigen sie ein Beispiel für eine falsche Vorhersage des Modells.
 

YOLOv8 und VGG16 für Gesicht, Geschlechtserkennung, Gesichtszählung und Personenverfolgung | Benutzerdefinierter Datensatz



YOLOv8 und VGG16 für Gesicht, Geschlechtserkennung, Gesichtszählung und Personenverfolgung | Benutzerdefinierter Datensatz

Das Video-Tutorial erklärt den Prozess der Gesichtserkennung, Geschlechtsklassifizierung, Gesichtszählung und Personenverfolgung mit den Modellen YOLOv8 und VGG16. Das Tutorial behandelt verschiedene Aspekte der Implementierung und des Trainings dieser Modelle, einschließlich Datenaufbereitung, Datenerweiterung, Feinabstimmung des vortrainierten VGG16-Modells, Verwendung von Transfer Learning und Training des YOLOv8-Modells für die Gesichtserkennung. Der Referent erklärt außerdem, wie man ein Google Drive in ein Google Colab-Notebook einbindet, auf Bilddatensätze zugreift und diese konvertiert, benötigte Bibliotheken herunterlädt und die Objektverfolgung mit Deepsort integriert. Das Tutorial enthält detaillierte Codeerklärungen zum Zeichnen von Begrenzungsrahmen um erkannte Objekte, zum Integrieren des Geschlechtsklassifizierungsmodells, zum Zählen der Anzahl der Gesichter in einem Frame und zum Zuweisen jedes erkannten Gesichts mit deepsort.update zu einer eindeutigen ID.

  • 00:00:00 In diesem Abschnitt des Video-Tutorials wird der Workflow für die Gesichtserkennung mit Geschlechtsklassifizierung und Gesichtszählung mit Tracking mit YOLOv8 und VGG16 erklärt. Der erste Schritt besteht darin, den Datensatz mit Bildern von Männern und Frauen vorzubereiten, um das VGG16-Modell für die Geschlechtserkennung zu trainieren, gefolgt vom Training des YOLOv8-Modells für die Gesichtserkennung. Bei der Gesichtserkennung von YOLOv8 erfolgt die Geschlechtsklassifizierung anhand des trainierten VGG16-Modells. Die Objektverfolgung wird dann mit Deepsort implementiert, wobei jedem erkannten Gesicht oder jeder erkannten Person eine eindeutige ID zugewiesen wird. Das Notebook ist in neun Schritte unterteilt, darunter das Importieren erforderlicher Bibliotheken, das Mounten von Google Drive, das Laden des Datensatzes, das Konvertieren von Bildern und Beschriftungen in Arrays, das Anwenden von Datenerweiterungen, das Feinabstimmen des VGG16-Modells auf Geschlechtsklassifizierungsdaten, das Zeichnen von Trainings- und Validierungsverlusten und Testen mit einem Beispielbild.

  • 00:05:00 In diesem Abschnitt erläutert der Referent verschiedene Bibliotheken und Funktionen, die zum Konvertieren von Bildern in Numpy-Arrays und umgekehrt verwendet werden können. Sie erklären auch die Verwendung einer kategorialen Bibliothek mit zwei Bindestrichen und das Konzept sequentieller und funktionaler Ansätze zum Anordnen von Schichten im neuronalen Netzwerk. Die abgeflachte Schicht wird zum Konvertieren mehrdimensionaler Eingaben in eindimensionale verwendet, während die dichte Schicht zum Definieren der Größe der Ausgabeschicht verwendet wird. Darüber hinaus diskutieren sie die Verwendung von Transfer Learning mit dem VGG16-Modell und den Import von Train-Test-Split-, Numpy- und OS-Bibliotheken. Schließlich erwähnen sie die Verwendung der gdob-Bibliothek für den Zugriff auf alle Dateien in einem Ordner und die zufällige Bibliothek für das Mischen von Bilddatensätzen.

  • 00:10:00 In diesem Abschnitt erklärt das Video, wie Sie ein Google Drive mit einem Google Colab-Notebook bereitstellen, um auf einen Datensatz zuzugreifen, der im ZIP-Format hochgeladen wird. Der Datensatz enthält Bilder von Gesichtern von Männern und Frauen, und das Video zeigt, wie Sie den Ordner mit diesen Bildern entpacken und darauf zugreifen können. Unter Verwendung der Glob-Bibliothek greift das Video auf alle Bilddateien in den Datensatzordnern zu und konvertiert sie in ein Array-Format mit Beschriftungen, die angeben, ob das Bild ein Mann- oder ein Frauengesicht ist. Das Video zeigt ein Beispielbild und erklärt, wie die Variable image files alle Bilddateipfade des Ordners men und women enthält, die mit cb2.im read ausgelesen werden können.

  • 00:15:00 In diesem Abschnitt erklärt der Referent, wie sie ihren Datensatz für die Gesichts- und Geschlechtserkennung aufbereitet haben. Sie erstellten einen „Männer“- und einen „Frauen“-Ordner, veränderten die Größe der darin enthaltenen Bilder und wandelten sie in Arrays um, die dann in einer Datenliste gespeichert wurden. Sie fügten die entsprechenden Labelwerte in eine Labelliste ein, mit 1 für Frauen und 0 für Männer. Die Daten- und Etikettenlisten wurden dann mit NumPy in Arrays umgewandelt. Der Referent demonstriert auch die Datenaugmentation mit Hilfe eines Bilddatengenerators, der mehrere Bilder aus einem einzigen Bild generiert, indem er verschiedene Transformationen anwendet. Anschließend optimierten sie ein vortrainiertes VGG16-Modell auf ihrem Geschlechtsklassifikationsdatensatz und implementierten die Softmax-Aktivierung, um die Ausgabeschicht zu definieren. Die Ausgabegröße wurde auf 2 gesetzt, um entweder Männer oder Frauen zu klassifizieren.

  • 00:20:00 In diesem Abschnitt des Video-Tutorials demonstriert der Referent das VGG16-Modell zur Gesichts- und Geschlechtserkennung und zeigt, wie es mit einem allgemeinen Klassifizierungsdatensatz trainiert wird. Das Modell wird im .H5-Format gespeichert und seine Genauigkeit, Validierungsgenauigkeit und Verlustanteile werden berechnet. Mit cv2.dsize wird das Bild auf die Größe 100 x 100 geändert und in ein Array konvertiert, und das Modell sagt voraus, ob das Bild einen Mann oder eine Frau enthält. Im nächsten Teil des Tutorials wird das YOLOv8-Modell mit einem Gesichtsdatensatz trainiert, um Gesichter zu erkennen und eine eindeutige ID für die Nachverfolgung zuzuweisen. Der Sprecher erwähnt auch, dass die Gesichtszählung mithilfe eines einfachen Codes implementiert wird, der der Datei „predict.pi“ hinzugefügt wird. Insgesamt gliedert sich das Tutorial in sieben Schritte.

  • 00:25:00 In diesem Abschnitt stellt der Moderator das GitHub-Repository vor, das er verwenden wird, um die Objektverfolgung mit Deep Sort zu implementieren, sowie das YOLO V8-Modell für die Gesichtsreduzierung. Sie besprechen, wie sie Gesichter erkennen und eine Geschlechterklassifizierung durchführen, bevor sie Deep-Sort-Objektverfolgungscode integrieren, um jeder Person eine eindeutige ID zuzuweisen. Der Präsentator legt dann sein aktuelles Verzeichnis als Klon-Repository fest und installiert alle erforderlichen Bibliotheken und Abhängigkeiten, die für das Skript benötigt werden. Sie laden den Datensatz auch von RoboFlow in ihr Google Colab-Notebook herunter, stoßen jedoch auf Probleme, weil sie ein privates Konto haben.

  • 00:30:00 Verwenden Sie die Gewichte des vortrainierten YOLOv8-Modells für die Gesichtserkennung. Der Datensatz wird heruntergeladen und in meinem Google Drive-Konto gespeichert, und ich habe bereits ein YOLOv8-Modell für 80 Epochen zur Gesichtserkennung trainiert. Das trainierte Modell wurde bereits gespeichert und die Gewichte wurden in das Google Colab-Notizbuch heruntergeladen. Die Deep-Sort-Dateien werden ebenfalls in das Notebook heruntergeladen, da die Objektverfolgung mit Deep-Sort implementiert wird. Außerdem wurde ein VGG16-Modell für die Geschlechtserkennung trainiert, und die .h5-Datei des Modells wurde gespeichert und in das Google Drive-Konto heruntergeladen. Die Beispielvideos werden von Google Drive heruntergeladen, um das Skript „predict.pi“ zu testen, das den Geschlechtsklassifizierungscode und die Gesichtszählung enthält.

  • 00:35:00 In diesem Abschnitt erklärt der Sprecher den Code, der hinzugefügt wurde, um die Objektverfolgung mit Deep Sort zu implementieren. Der Deep-Sort-Objektverfolgungsport wird initialisiert, und eine Funktion wird definiert, um die vom YOLOv8-Modell empfangene Ausgabe in ein kompatibles Format für Deep-Sort umzuwandeln. Die UI-Box-Funktion erstellt Begrenzungsrahmen um die erkannten Objekte, während die Draw-Box-Funktion die UI-Box aufruft und Randfunktionen zeichnet, um ein abgerundetes Rechteck für den Text zu zeichnen. Der Deep-Sort-Tracking-Code ist zusammen mit der Möglichkeit zum Zeichnen von Spuren integriert. Der Sprecher erklärt dann den Code für die Geschlechtsklassifizierung und die Zählfunktion in der Paint-Datei. Die Zählfunktion wird verwendet, um jedes Objekt in jedem Rahmen zu zählen. Insgesamt erklärt der Code, wie X1-, Y1-, X2- und Y2-Ausgabewerte von YOLOv8 in Mittenkoordinaten, Höhen- und Breitenwerte für die Objektverfolgung mithilfe von Deep Sort konvertiert werden, wodurch Objekterkennung und Objektverfolgung in einer realen Anwendung implementiert werden.

  • 00:40:00 In diesem Abschnitt erörtert der Referent die Konvertierung des YOLOv8-Modells in die xcyc-Zentrumskoordinaten des Begrenzungsrahmens sowie Breite und Höhe des Begrenzungsrahmens, um es mit Deep-Sort-Objektverfolgung kompatibel zu machen. Sie erklären auch, wie die Funktion „Farbe für Beschriftung berechnen“ den erkannten Objekten eindeutige Farben zuweist und die Funktion „Dash-Rand zeichnen“ ein Rechteck über dem Begrenzungsrahmen erstellt, in dem die Beschriftung und der Konfidenzwert geschrieben werden. Der Sprecher spricht auch über die Geschlechtsklassifikatorklasse und wie sie geladen und in jedem Frame des Videos verwendet wird, um das Geschlecht der erkannten Objekte zu klassifizieren. Darüber hinaus erwähnen sie die UI-Dash-Box-Funktion und die Draw-Dash-Box-Funktion, die verwendet werden, um Begrenzungsrahmen zu erstellen und die Gender-Classifier-Funktion aufzurufen.

  • 00:45:00 In diesem Abschnitt erklärt der Moderator, wie das Geschlechtsklassifizierungsmodell verwendet wird, um zu erkennen, ob ein Gesicht zu einem Mann oder einer Frau gehört. Nach dem Erkennen des Gesichts werden nur die Begrenzungsrahmenkoordinaten an das Geschlechtsklassifikationsmodell weitergegeben. Das Modell sagt dann voraus, ob das Gesicht einem Mann oder einer Frau gehört, und die Beschriftung wird entsprechend über dem Begrenzungsrahmen hinzugefügt. Der Moderator erklärt dann die Funktion count, die ein Wörterbuch namens Foundry-classes verwendet, um die Anzahl der im Rahmen erkannten Gesichter zu speichern. Die Anzahl wird in der Benutzeroberfläche über dem Video oder Bild angezeigt.

  • 00:50:00 In diesem Abschnitt erklärt der Sprecher, dass die Anzahl der im aktuellen Frame erkannten Gesichter im Foundry-Klassenwörterbuch in der FaceDetails-Klasse gespeichert wird. Das Wörterbuch enthält zwei Werte, die Schlüsselvariable, die "Gesicht" enthält, und die Wertvariable, die enthält, wie viele Gesichter im aktuellen Rahmen erkannt wurden. Der Sprecher verwendet die Zählfunktion, um anzuzeigen, wie viele Gesichter in jedem Frame erkannt wurden, und weist jedem erkannten Gesicht mit deepsort.update eine eindeutige ID zu. Der Sprecher erstellt auch eine allgemeine Klasse, eine Klassifizierungsklasse und eine Gefahrenklasse. Die Modellerkennungen werden in mehreren Demovideos getestet und der Sprecher zeigt die Ergebnisse der Erkennungen in jedem Frame.
 

Personenzähler mit YOLOv8 und Objektverfolgung | Personenzählung (Betreten und Verlassen)



Personenzähler mit YOLOv8 und Objektverfolgung | Personenzählung (Betreten und Verlassen)

Das Video erklärt, wie man mit YOLOv8 und Objektverfolgung einen Personenzähler erstellt. Der Prozess umfasst das Erkennen von Objekten mit eindeutigen IDs, das Finden der Mittelkoordinate des erkannten Objekts, das Verfolgen von Objekten mit Deep SORT und das Erkennen, wenn Objekte bestimmte Linien überqueren, um die Anzahl der Personen zu zählen, die einen bestimmten Bereich betreten und verlassen. Die eindeutigen IDs werden in Listen gespeichert, um die Personen zu zählen, die den Bereich betreten und verlassen, und die Zählungen werden grafisch mit grünen und roten Kreisen angezeigt. Das Video enthält auch Code für das Projekt und demonstriert die Ausgabe des Systems in Echtzeit.

  • 00:00:00 In diesem Abschnitt des Video-Tutorials erklärt der Moderator, wie man mit YOLO V8 und Objektverfolgung einen Personenzähler erstellt. Der Prozessablauf beginnt mit der Implementierung der Objekterkennung von YOLO V8, um Personen zu erkennen und jedem erkannten Objekt eine eindeutige ID zuzuweisen. Dann wird die Zentrumskoordinate des erkannten Objekts gefunden, gefolgt von der Objektverfolgung mit Deep SORT, das jedem erkannten Objekt eine eindeutige ID zuweist. Anschließend werden Linien gezogen, um zu erkennen, wenn eine Person sie überquert, und ihre eindeutige ID wird einer Liste hinzugefügt. Schließlich wird die Länge der Liste ermittelt, um die Gesamtzahl der Personen zu erhalten, die jede Linie überqueren.

  • 00:05:00 In diesem Abschnitt erklärt das Video den Prozess der Personenzählung mit YOLOv8 und der Objektverfolgung. Das Verfahren umfasst das Verfolgen der Mittelkoordinate des Begrenzungsrahmens des Objekts und das Erkennen, wenn es eine grüne Linie kreuzt. Die eindeutige ID des Objekts wird dann zu einer Liste hinzugefügt, die verwendet wird, um die Gesamtzahl der Objekte zu berechnen, die die Linie passiert haben. Der Prozess wird Bild für Bild wiederholt, und die Zählung wird jedes Mal erhöht, wenn ein Objekt die Linie passiert. Das Video demonstriert auch den für dieses Projekt verwendeten Code, der das Installieren von Abhängigkeiten und die Verwendung der Deep-Sort-Objektverfolgungsmethode umfasst.

  • 00:10:00 In diesem Abschnitt des Videos lädt der Moderator die Deep Sort-Dateien herunter und öffnet das Predict-Skript, um die notwendigen Änderungen für seine Projektanforderungen vorzunehmen. Der Präsentator entfernt Spuren und unnötige Daten und erstellt mithilfe des Videoeingangs zwei Zeilen zum Aufwärts- und Abwärtszählen. Sie finden die Koordinatenpunkte für jede Linie, wodurch sie die Anzahl der Personen verfolgen können, die jede Linie überquert haben, sowie die Gesamtzahl. Der Moderator zeigt seinen Bildschirm, um zu demonstrieren, wie man die Koordinaten findet, und betont, wie wichtig es ist, sich auf den richtigen Bereich zu konzentrieren.

  • 00:15:00 In diesem Abschnitt erklärt der Referent, wie man die Koordinaten für die Linie definiert und eine leere Liste erstellt. Die Koordinaten der Linie werden aus einem vorherigen Schritt kopiert, und die leere Liste speichert die eindeutige ID der Objekte, die sie kreuzen. Das Skript berechnet auch die Breite und Höhe des Begrenzungsrahmens und speichert die eindeutige ID in der entsprechenden Liste, je nachdem, ob die Person nach oben oder unten geht. Der Sprecher bietet eine visuelle Darstellung der in diesem Abschnitt verwendeten Punkte und Koordinaten.

  • 00:20:00 In diesem Abschnitt des Videos erklärt der Sprecher den Code für das People Counter-Projekt mit YOLOv8 und Object Tracking. Sie durchlaufen die CX- und CY-Koordinaten, die die Mittelpunktkoordinaten des Begrenzungsrahmens darstellen, und wie sie verwendet werden, um einen Kreis und ein Rechteck um das erkannte Objekt zu zeichnen. Der Referent erklärt auch, wie die eindeutige ID und Bezeichnung jedes Objekts mithilfe der Funktion cv2.puttext zum Rechteck hinzugefügt werden. Schließlich erklären sie, wie die eindeutige ID in der leeren Liste gespeichert wird, wenn die CX-Koordinate des Objekts eine bestimmte Linie kreuzt, was einen Ein- oder Ausgang anzeigt.

  • 00:25:00 In diesem Abschnitt erklärt der Präsentator, wie die eindeutige ID in die Gesamtzahlliste für aufsteigende und absteigende Personen eingefügt wird. Wenn die Mittenkoordinate je nach Zählung die Linie über- oder unterschreitet, wird sie in die entsprechende Liste eingefügt. Die Länge jeder Liste stellt die Anzahl der auf- und absteigenden Personen dar, die grafisch durch zwei Kreise dargestellt wird, wobei grün für aufsteigende Personen und rot für absteigende Personen steht. Der Präsentator betont das Definieren globaler Gesamtanzahl- und Gesamtabwärtsvariablen und das Erstellen einer Linie mit cb2.9. Der Code verwendet den CPU/DPM-Kreis, um die kreisförmige Darstellung der Zählung zu erstellen. Der Moderator erinnert die Zuschauer daran, sicherzustellen, dass die Laufzeit als GPU festgelegt ist, und die Sitzung kann einige Sekunden dauern, um die erforderlichen Dateien herunterzuladen.

  • 00:30:00 In diesem Abschnitt demonstriert der Sprecher, wie man ein Skript herunterlädt und ausführt, das YOLOv8 und Objektverfolgung verwendet, um die Anzahl der Personen zu zählen, die einen bestimmten Bereich in einem Video betreten und verlassen. Das Skript unterteilt das Video in Frames und verarbeitet sie einzeln, um die Bewegung der Personen zu verfolgen und sie zu zählen, wenn sie bestimmte Linien überqueren. Das Ergebnis ist ein kommentiertes Video, das in Echtzeit die Anzahl der Personen anzeigt, die den Bereich betreten und verlassen. Der Sprecher zeigt auch das Ausgabevideo und erklärt, wie das Skript erfolgreich die Bewegung der Menschen zählt.

  • 00:35:00 In diesem Abschnitt demonstriert das Video-Tutorial die Verwendung von YOLOv8 und Objektverfolgung, um Personen zu zählen, die einen bestimmten Bereich betreten und verlassen. Das System zählt Personen, die eine Linie auf dem Bild überqueren, und zeigt die Zählung je nach Bewegungsrichtung entweder als Aufwärtszählung oder als Abwärtszählung an. Die Skriptdatei für das System wird ebenfalls geteilt, und die Zuschauer werden ermutigt, den Kanal zu abonnieren und einen Daumen nach oben zu hinterlassen.
 

Objekterkennung, Verfolgung, Unschärfe und Zählung in Echtzeit mit YOLOv8: Eine Schritt-für-Schritt-Anleitung



Objekterkennung, Verfolgung, Unschärfe und Zählung in Echtzeit mit YOLOv8: Eine Schritt-für-Schritt-Anleitung

Dieses Tutorial konzentriert sich auf die Implementierung von Objektunschärfe und Zählung mit Objekterkennung und -verfolgung in Echtzeit mit YOLOv8. Das Tutorial enthält Schritte zum Herunterladen der erforderlichen Dateien, einschließlich Deep Sort-Dateien für die Objektverfolgung und ein Beispielvideo zum Testen. Das Tutorial verwendet die CV2-Bibliothek von OpenCV zum Verwischen der erkannten Objekte und stellt Code für die Objekterkennung, Verfolgung und Verwischung bereit. Der Referent demonstriert den Vorgang zum Bestimmen der Koordinaten des Begrenzungsrahmens, zum Zuschneiden des Bildes und zum Anwenden der Unschärfefunktion. Darüber hinaus erklärt der Moderator den Code zum Zählen der Gesamtzahl von Objekten in jedem Frame mithilfe eines Wörterbuchs und demonstriert, wie der Code Objekte erkennt, verfolgt und unkenntlich macht, während er die Gesamtzahl von Objekten in jedem Frame anzeigt. Insgesamt sind die Ergebnisse gut und ein GitHub-Repository für das Projekt wird in der Beschreibung bereitgestellt.

  • 00:00:00 In diesem Abschnitt des Tutorials liegt der Schwerpunkt auf dem Verwischen der erkannten Objekte und dem Zählen der Anzahl der Objekte in jedem Bild. Das Tutorial verwendet YOLOv8 zur Objekterkennung mit Tracking-ID und Trails. Das Tutorial bietet eine Schritt-für-Schritt-Anleitung von der Auswahl der GPU-Laufzeit bis zum Ausführen der Skripts zum Herunterladen der erforderlichen Dateien, einschließlich Deep-Sort-Dateien für die Objektverfolgung, und ein Beispielvideo zum Testen. Das Tutorial hebt auch die Verwendung der CV2-Bibliothek von OpenCV zum Verwischen der erkannten Objekte hervor und stellt Code zum Implementieren von Objekterkennung, -verfolgung und -verwischen bereit.

  • 00:05:00 In diesem Abschnitt erklärt das Video-Tutorial, wie die bei der Echtzeit-Objekterkennung und -verfolgung mit YOLOv8 erkannten Objekte unkenntlich gemacht werden. Um dies zu implementieren, muss man die Koordinaten des Begrenzungsrahmens kennen, der den oberen linken Scheitelpunkt und den unteren rechten Scheitelpunkt enthält, und dann das Objekt innerhalb dieses Begrenzungsrahmens verwischen. Die Koordinaten sind in der Datei "predict.pi" gespeichert und man kann diese Werte zum Weichzeichnen der Objekte erhalten.

  • 00:10:00 In diesem Abschnitt des Videos erklärt der Sprecher, wie das Objekt innerhalb des Begrenzungsrahmens des erkannten Objekts unkenntlich gemacht wird. Er bestimmt zuerst die Koordinaten des Begrenzungsrahmens, bevor er das Bild so zuschneidet, dass er nur den Bereich enthält, in dem sich der Begrenzungsrahmen befindet. Dann wendet er die Unschärfefunktion mit CV2 Punktunschärfe an und stellt das Blutverhältnis ein, das die Unschärfe des Bereichs bestimmt. Der Sprecher demonstriert den Prozess, indem er das Skript schreibt und ausführt.

  • 00:15:00 In diesem Abschnitt des Videos demonstriert der Moderator, wie Objektunschärfe mit YOLOv8 für Objekterkennung, -verfolgung und -zählung in Echtzeit implementiert wird. Nachdem Sie einige kleinere Korrekturen vorgenommen und das Skript ausgeführt haben, zeigt der Präsentator die Ergebnisse der Funktion zum Verwischen von Objekten, die gut funktioniert. Als Nächstes erklärt der Moderator den Code zum Zählen der Gesamtzahl von Objekten in jedem Bild, was das Erstellen eines Wörterbuchs beinhaltet, das den Objektnamen und die Häufigkeit enthält, mit der es im aktuellen Bild erscheint. Der Moderator zeigt den Code für diesen Teil nicht, damit das Video nicht zu lang wird.

  • 00:20:00 In diesem Abschnitt erläutert der Moderator die Zählfunktion, die Schlüssel und Werte aus einem Wörterbuch extrahiert, das Objektnamen und deren Anzahl enthält (die Anzahl der Erscheinungen im aktuellen Frontframe). Diese Funktion erstellt ein Rechteck und überlagert es mit dem Text, der anzeigt, wie oft das Objekt erschienen ist. Der Moderator demonstriert auch, wie der Code Objekte erkennt und verfolgt, sie unkenntlich macht und die Gesamtzahl der Objekte in jedem Frame anzeigt. Die Ergebnisse sind gut, und ein GitHub-Repository für das Projekt wird in der Beschreibung bereitgestellt.
 

Trainieren Sie YOLOv8 auf einem benutzerdefinierten Datensatz | Erkennung und Erkennung von Zeichensprachen-Alphabeten mit YOLOv8



Trainieren Sie YOLOv8 auf einem benutzerdefinierten Datensatz | Erkennung und Erkennung von Zeichensprachen-Alphabeten mit YOLOv8

Das Video demonstriert die Implementierung von YOLOv8 in einem benutzerdefinierten Datensatz zur Erkennung und Erkennung von Gebärdensprachalphabet. Der Prozess umfasst das Herunterladen des Datensatzes, das Trainieren des Modells für 50 Epochen und das Bewerten seiner Leistung unter Verwendung der Konfusionsmatrix und der Trainings- und Validierungsverluste. Der Moderator erörtert auch, wie die Vorhersagen des Modells für den Validierungsbatch und Bilder, die nicht für das Training verwendet werden, validiert werden, um zu bestimmen, wie es sich auf verschiedenen Bildern verhält. Das trainierte Modell wird dann anhand der Bilder des Validierungsdatensatzes validiert und getestet, und eine Demo-Videoinferenz wird mit guten Ergebnissen gezeigt. Insgesamt hebt das Video die Anwendung von YOLOv8 für benutzerdefiniertes Dataset-Training und Objekterkennung hervor.

  • 00:00:00 In diesem Abschnitt des Videos stellt der Moderator das Thema der Schulung von YOLOv8 zu benutzerdefinierten Daten für die Erkennung und Erkennung von Gebärdensprachalphabeten vor. Sie erklären den Prozess Schritt für Schritt und diskutieren, wie ein Erkennungs- und Erkennungssystem für Gebärdensprachen mithilfe von YOLOv8 implementiert werden kann. Der Präsentator importiert verschiedene Bibliotheken, einschließlich Betriebssystem, IPython-Anzeige und G-LOP, die zum Anzeigen von Konfusionsmatrizen, Trainings- und Validierungsverlusten und Testbildern benötigt werden. Der Moderator zeigt dann, wie der GPU-Zugriff überprüft wird, und definiert eine Hilfsvariable für die einfache Navigation zwischen verschiedenen Ordnern, die Datensatzbilder enthalten. Schließlich installieren sie Ultra Analytics mit „pip install“ und überprüfen, ob YOLOv8 installiert ist und einwandfrei funktioniert.

  • 00:05:00 In diesem Abschnitt demonstriert das Video den Prozess der Implementierung von YOLOv8 in einem benutzerdefinierten Datensatz zur Erkennung und Erkennung von Gebärdensprachalphabet. Der Datensatz wird von Roboflow heruntergeladen und das YOLOv8-Modell wird darauf für 50 Epochen trainiert. Die Confusion Matrix wird verwendet, um die Leistung des Modells zu bewerten und festzustellen, wie gut das Modell verschiedene Klassen erkennen und klassifizieren kann. Die Ergebnisse zeigen, dass das Modell das Alphabet A in 60 % der Fälle korrekt erkennen konnte, aber manchmal zu einer falschen Klassifizierung führte oder es nicht erkennen konnte. Insgesamt hebt das Video die Anwendung von YOLOv8 für benutzerdefiniertes Dataset-Training und Objekterkennung hervor.

  • 00:10:00 In diesem Abschnitt des Videos erläutert der Moderator die Konfusionsmatrix, die zeigt, wie gut das Modell mit verschiedenen Klassen umgegangen ist, sowie die Trainings- und Validierungsverluste, wobei die Box-Logs und der Klassifizierungsverlust die wichtigsten sind. Die Vorhersagen des Modells für den Validierungsbatch werden ebenfalls angezeigt, und die nicht für das Training verwendeten Bilder werden validiert, um zu bestimmen, wie sich das Modell auf verschiedenen Bildern verhält. Das benutzerdefinierte Modell wird dann anhand der Bilder des Validierungsdatensatzes validiert und getestet, gefolgt von einer Demo-Videoinferenz, die zeigt, dass das Modell Gebärdensprachalphabete mit guten Ergebnissen erkennt und erkennt. Schließlich werden die Zuschauer ermutigt, ihre eigenen Modelle mit dem bereitgestellten Videodatensatz zu testen.
 

YOLOv8-Segmentierung mit Objektverfolgung: Schritt-für-Schritt-Code-Implementierung | Google Colab | Fenster



YOLOv8-Segmentierung mit Objektverfolgung: Schritt-für-Schritt-Code-Implementierung | Google Colab | Fenster

Dieses Video-Tutorial bietet eine umfassende Anleitung zur Implementierung der YOLOv8-Segmentierung mit Deep-Sort-Tracking-ID plus Trails. Der Moderator führt die Zuschauer durch den Prozess des Imports der erforderlichen Skriptdateien, der Installation von Abhängigkeiten und der Einrichtung des erforderlichen Verzeichnisses für die Segmentierung und Objektverfolgung mit Deep Sort. Das Tutorial umfasst eine Demonstration der Objektverfolgung mit eindeutigen IDs und Bewegungsspuren sowie eine Diskussion über das GitHub-Repository, das Lösungscode mit einem Klick für YOLOv8-Segmentierung und Deep-Sort-Verfolgung bereitstellt. Das Tutorial stellt auch ein Patreon-Programm mit exklusivem Zugriff auf Video-Tutorials vor, die nicht auf den YouTube-Kanal hochgeladen werden. Insgesamt bietet das Tutorial eine schrittweise Erklärung der Codeimplementierung für die YOLOv8-Segmentierung mit Objektverfolgung.

  • 00:00:00 In diesem Abschnitt des Video-Tutorials werden die Zuschauer durch die Implementierung der YOLO V8-Segmentierung mit Deep-Sort-Tracking-ID plus Trails geführt. Das Tutorial bietet eine umfassende Erklärung des Codes mit einer Demonstration des Implementierungsprozesses auf Google Colab sowie auf Windows und Linux. Den Zuschauern wird auch ein neues Patreon-Programm vorgestellt, das exklusiven Zugang zu zwei bis drei Projekten pro Woche bietet, einschließlich Video-Tutorials, die nicht auf den YouTube-Kanal hochgeladen werden. Das Video endet mit einer Erörterung des GitHub-Repos, das den Ein-Klick-Lösungscode für die YOLO V8-Segmentierung und Deep-Sort-Verfolgung bereitstellt, was die Implementierung in benutzerdefinierten Datensätzen oder dem vortrainierten MS Coco-Datensatz erleichtert.

  • 00:05:00 In diesem Abschnitt führt der Präsentator die ersten Schritte zur Implementierung der YOLOv8-Segmentierung mit Objektverfolgung durch. Der erste Schritt besteht darin, das GitHub-Repo zu klonen und alle erforderlichen Skriptdateien zu importieren. Abhängigkeiten werden mithilfe der Datei setup.py installiert, und das erforderliche Verzeichnis wird für die Durchführung der Segmentierung und Objektverfolgung mit Deep Sort festgelegt. Der Präsentator lädt dann ein Beispielvideo zum Testen von Google Drive herunter und demonstriert, wie die Objektverfolgung mit eindeutigen IDs durchgeführt wird, die jedem Objekt zugewiesen werden, und Spuren, die die Bewegung jedes Objekts zeigen. Das Video endet mit einer Erklärung, wie man YOLOv8 auf einem Windows-System mit PyCharm implementiert.

  • 00:10:00 In diesem Abschnitt bietet der Referent eine Schritt-für-Schritt-Anleitung zur Implementierung der YOLOv8-Segmentierung mit Objektverfolgung in Google Colab unter Windows. Der Prozess umfasst das Klonen des GitHub-Repositorys, das Festlegen des aktuellen Verzeichnisses als Klonordner, das Installieren aller Abhängigkeiten und das Herunterladen der Deep-Sort-Dateien. Die Deep-Sort-Dateien sind für die Implementierung der Objektverfolgung mit dem Deep-Sort-Algorithmus erforderlich. Diese Dateien werden heruntergeladen und in den segmentierten Lernprogrammordner extrahiert. Der Sprecher erwähnt auch, dass mehrere Objektverfolgungsalgorithmen verfügbar sind, die anstelle von Deep Sort verwendet werden können.

  • 00:15:00 In diesem Abschnitt erörtert der Sprecher den Objektverfolgungsalgorithmus und stellt fest, dass er nach Tests festgestellt hat, dass der Deep-Sort-Algorithmus am besten funktioniert. Sie erklären, dass sie den SORT-Algorithmus für das Tracking im Skript verwenden werden. Der Sprecher lädt ein Demovideo herunter und zeigt den Code, der das vortrainierte YOLOv8-sec-BT-Modell erklärt, das für die Objektverfolgung verwendet wird. Sie diskutieren auch die verschiedenen Modelle von YOLOv8 und ihre Kompromisse zwischen Geschwindigkeit und Genauigkeit. Abschließend erklärt der Referent das Skript „predict.5“ und hebt hervor, wie die Farben der Begrenzungsrahmen für erkannte Objekte definiert werden.

  • 00:20:00 In diesem Abschnitt demonstriert der Sprecher die Funktion, die ein Rechteck um das erkannte Objekt erstellt, eine eindeutige ID und Bezeichnung zuweist und einen Begrenzungsrahmen erstellt. Sie erklären, wie die UI-Touchbox-Funktion verwendet wird, um den Begrenzungsrahmen und das obige Rechteck zu erstellen, während die CV-Punkt-Zwei-Rechteck-Funktion das Rechteck um das erkannte Objekt erstellt. Der Referent zeigt auch, wie die Draw Dash Boxing-Funktion die Mitte der Unterkante des Begrenzungsrahmens findet, um Trajektorien zu zeichnen, und jedem Objekt eine eindeutige ID zuweist. Insgesamt erklärt der Referent Schritt für Schritt die Codeimplementierung für die YOLOv8-Segmentierung mit Objektverfolgung.

  • 00:25:00 In diesem Abschnitt erläutert der Sprecher die Verwendung einer doppelseitigen Warteschlange (DQ) anstelle einer Liste zum Speichern von Daten. Der DQ wird verwendet, um Werte von Objekten zu speichern und die ID eines Objekts zu entfernen, das sich nicht im aktuellen Rahmen befindet. Die Daten werden zum Zeichnen von Spuren mit der CV2-Werkzeuglinie verwendet. Die Segmentierung wird durchgeführt und das Ausgabevideo zeigt die Spuren und erkannten Objekte mit eindeutig zugewiesener ID. Der Redner merkt an, dass das Skript länger dauern kann, um auf einer CPU ausgeführt zu werden, aber mit den gleichen Schritten auf einer GPU ausgeführt werden kann.
Grund der Beschwerde: