Inhaltsverzeichnis:
- Schritt 1: Zugriff auf Webcam
- Schritt 2: Gesichtserkennung
- Schritt 3: Datenerfassung
- Schritt 4: Ausbildung
- Schritt 5: Gesichtserkennung
- Schritt 6: Arduino programmieren
Video: Gesichtserkennung und -identifikation - Arduino Face ID mit OpenCV Python und Arduino. - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:17
Gesichtserkennung AKA Face ID ist heutzutage eine der wichtigsten Funktionen auf Mobiltelefonen.
Also, ich hatte eine Frage "Kann ich eine Gesichts-ID für mein Arduino-Projekt haben" und die Antwort ist ja …
Meine Reise begann wie folgt:
Schritt 1: Zugriff auf die Webcam
Schritt 2: Gesichtserkennung.
Schritt 3: Datenerhebung
Schritt 4: Ausbildung
Schritt 5: Gesichtserkennung
Schritt 6: Arduino programmieren
Ich werde alle Schritte unten erklären. Ich hoffe, dass Ihnen das weiterhilft.
Schritt 1: Zugriff auf Webcam
Der erste Schritt für die Gesichtserkennung bestand darin, Zugang zu einer Kamera oder einem Computer Vision zu haben. Da Indien gesperrt ist, war die billigste Lösung, die ich gefunden habe, die Webcam meines Computers zu verwenden, auf die ich mit einem Python-Programm mit dem OpenCV-Modul Zugriff hatte.
Sie denken vielleicht, was OpenCV ist, nicht wahr?
OpenCV (Open Source Computer Vision Library) ist eine Open-Source-Softwarebibliothek für Computer Vision und maschinelles Lernen. OpenCV wurde entwickelt, um eine gemeinsame Infrastruktur für Computer-Vision-Anwendungen bereitzustellen und den Einsatz der maschinellen Wahrnehmung in kommerziellen Produkten zu beschleunigen.
Wenn Opencv auf Ihrem Computer installiert ist, können Sie loslegen. Wenn nicht, befolgen Sie diesen Schritt.
Öffnen Sie die Eingabeaufforderung und geben Sie "pip install opencv" ein.
Warnung: Möglicherweise erhalten Sie eine Fehlermeldung wie "'pip' wird nicht als interner oder externer Befehl erkannt". für die Sie den Pfad Ihrer Pip-Installation zu Ihrer PATH-Systemvariablen hinzufügen müssen. Gehen Sie diesen Beitrag durch, es kann Ihnen helfen.
stackoverflow.com/questions/23708898/pip-i…
Sobald OpenCV installiert ist, können wir loslegen… Um zu überprüfen, ob es richtig installiert ist, öffnen Sie Ihren Python-Interpreter und importieren Sie die Bibliothek. Sehen Sie sich das Bild oben an, das Ihre Ausgabe sein sollte.
Laden Sie die Python-Datei "AccessTo_webcam.py" herunter und führen Sie sie aus. Dort habe ich alle nötigen Anmerkungen gemacht.
Los geht's, Jetzt haben Sie Zugriff auf die Webcam. Gut erledigt. fahren wir mit Schritt 2 fort.
Schritt 2: Gesichtserkennung
Mit Hilfe des gleichen OpenCV-Moduls müssen wir feststellen, ob sich ein Gesicht im Videostream befindet oder nicht.
OpenCV bietet eine Trainingsmethode oder vortrainierte Modelle, die als Cascade Classifier bezeichnet werden. Die vortrainierten Modelle befinden sich im Datenordner der OpenCV-Installation. Ich stelle diese Datei zur Verfügung, lade sie einfach herunter und lege sie in deinen Projektordner. Der Ordner, in dem die Datei "AccessTo_webcam.py" gespeichert ist. Wenn Sie noch keine erstellt haben, dann tun Sie es.
Laden Sie "haarcascade_frontalface_default" herunter und legen Sie es im Hauptprojektordner ab.
Laden Sie "Face_identification.py" herunter und legen Sie es im Hauptprojektordner ab. Alle Erklärungen sind darin enthalten.
Jetzt können Sie die Gesichter in einem Videostream identifizieren. Fahren wir also mit Schritt 3 fort.
Schritt 3: Datenerfassung
Um die Gesichter zu erkennen, müssen wir unser Python-Programm trainieren. Dafür brauchen wir einige Daten.
Die Datenerhebung ist eher der einfachste Schritt in diesem Projekt. Erstellen Sie einen Ordner namens "image_data" in Ihrem Hauptprojektordner. Erstellen Sie im Ordner "image_data" einige zusätzliche Ordner mit dem Namen der Person, in denen wir die Daten speichern. zum Beispiel:
Im Ordner "image_data" habe ich zwei weitere Ordner namens "HRK" und "Yahiya" angelegt. wie im obigen Bild gezeigt.
Erstellen Sie nun Ihre eigenen Ordner und benennen Sie sie.
Sobald die Ordner erstellt sind, beginnen Sie mit dem Sammeln von Bildern dieser bestimmten Person. Ich empfehle, ungefähr 20 Bilder pro Person zu sammeln. Sie können auch weitere Bilder hinzufügen, aber achten Sie darauf, dass die gesammelten Daten für alle Personen die gleiche Anzahl von Bildern enthalten. Es hilft, Genauigkeit zu liefern.
das war's jetzt gehen wir zu Schritt 4 über.
Schritt 4: Ausbildung
Kurz gesagt, wir werden alle Ordner und Bilder durchgehen, die im Ordner "image_data" vorhanden sind, und ein Wörterbuch erstellen, das die Label-ID und den entsprechenden Namen enthält. Gleichzeitig laden wir das Bild, um das Gesicht in jedem einzelnen Bild zu erkennen, das wir "Region of Interest" nennen, und erstellen eine ".yml"-Datei, die diese Informationen enthält.
Angenommen, Sie haben Daten zu Person X und Y erhoben.
Wir werden Person X als 1 kennzeichnen, was seine Label-ID ist, und der Name wird X selbst sein. Wir laden das Bild, um sein Gesicht zu finden, dh die Region von Interesse, und fügen die Daten an eine Liste an.
ähnliche Schritte werden für Person Y durchgeführt. Und schließlich erstellen wir eine ".yml"-Datei.
Laden Sie die Datei "face_trainer.py" herunter und legen Sie sie im Hauptprojektordner ab. Alle notwendigen Erläuterungen sind in dieser Datei selbst enthalten.
Wenn Sie dieses Programm ausführen, durchläuft es alle Bilder und erstellt zwei Dateien namens "labels.pickle" und "trainner.yml". Jetzt haben Sie Ihr eigenes Modell trainiert. Fahren wir also mit Schritt 5 fort.
Schritt 5: Gesichtserkennung
Wenn Sie alle Schritte richtig durchlaufen haben, haben Sie möglicherweise Ihre eigenen trainierten Daten erstellt. Jetzt werden wir diese Daten für die Gesichtserkennung verwenden.
Grundsätzlich werden wir unsere trainierten Modelle in die Python-Datei laden, auf unsere Webcam zugreifen und Gesichter im Videostream identifizieren und einen Vergleich oder eine Vorhersage zwischen dem aktuellen Gesicht, das im Videostream identifiziert wird, und dem trainierten Modell durchführen. Wenn die Daten übereinstimmen, sagen wir, dass die Person erkannt wird, so einfach ist es…
Laden Sie "face_recognise.py" herunter und führen Sie es aus. Darin sind alle notwendigen Informationen enthalten. Jetzt wurde Ihr Gesicht möglicherweise erkannt. Wenn die Genauigkeit nicht gut ist, versuchen Sie, die Daten zu aktualisieren. Wenn Sie alle bereit sind, fahren Sie mit Schritt 6 fort.
Schritt 6: Arduino programmieren
Der letzte und letzte Schritt ist die Programmierung von Arduino und die Bereitstellung eines Kommunikationsmodus zwischen Python und Arduino. Für die Kommunikation habe ich "Serielle Kommunikation" verwendet. Gehen Sie das oben verlinkte Video durch, um herauszufinden, wie die serielle Kommunikation funktioniert und um eine einzurichten. Alle erforderlichen Dateien finden Sie in der Videobeschreibung.
Wenn Sie das Video durchgegangen sind, dann lassen Sie mich Ihnen erklären, was ich getan habe. Wenn mein Gesicht erkannt wird, ist die bereitgestellte Label-ID 2. Sobald die Label-ID 2 ist, sende ich '1' als serielle Daten an meinen Arduino. Das wird meine LED-Chaser-Schaltung einschalten. Wenn die Label-ID eine andere als 2 ist, sende ich '0' als serielle Daten, wodurch meine LED-Chaser-Schaltung ausgeschaltet wird.
Laden Sie die Datei "ard_chaser.ino" herunter. Es ist ein einfaches LED-Chaser-Programm, das serielle Kommunikation verwendet.
Laden Sie auf ähnliche Weise "face_recogniser1.py" herunter, das die serielle Kommunikation zwischen Arduino und dem Python-Programm herstellt.
Da gehst du. Ich hoffe, Sie haben etwas Neues gelernt. Abonnieren Sie meinen YouTube-Kanal für mehr Informationen zu Python und Arduino. Teile dies, wenn es dir gefallen hat. Unterstützen Sie weiter.
Dankeschön.
Empfohlen:
Bewegungsaktivierte Cosplay Wings mit Circuit Playground Express - Teil 1: 7 Schritte (mit Bildern)
Bewegungsaktivierte Cosplay-Flügel mit Circuit Playground Express - Teil 1: Dies ist Teil 1 eines zweiteiligen Projekts, in dem ich Ihnen meinen Prozess zur Herstellung eines Paars automatisierter Feenflügel zeige. Der erste Teil des Projekts ist der Mechanik der Flügel, und der zweite Teil macht es tragbar und fügt die Flügel hinzu
Gesichtserkennung auf Raspberry Pi 4B in 3 Schritten
Gesichtserkennung auf Raspberry Pi 4B in 3 Schritten: In diesem Instructable werden wir die Gesichtserkennung auf Raspberry Pi 4 mit Shunya O / S mit der Shunyaface-Bibliothek durchführen. Shunyaface ist eine Bibliothek zur Gesichtserkennung/-erkennung. Das Projekt zielt darauf ab, die schnellste Erkennungs- und Erkennungsgeschwindigkeit mit
Raspberry Pi mit Node.js mit der Cloud verbinden – wikiHow
So verbinden Sie Raspberry Pi mit Node.js mit der Cloud: Dieses Tutorial ist nützlich für alle, die einen Raspberry Pi mit Node.js mit der Cloud, insbesondere mit der AskSensors IoT-Plattform, verbinden möchten. Sie haben keinen Raspberry Pi? Wenn Sie derzeit keinen Raspberry Pi besitzen, empfehle ich Ihnen, sich einen Raspberry Pi zuzulegen
Erste Schritte mit Python: 7 Schritte (mit Bildern)
Erste Schritte mit Python: Programmieren ist großartig! Es ist kreativ, macht Spaß und gibt Ihrem Gehirn ein mentales Training. Viele von uns wollen etwas über Programmieren lernen, aber überzeugen sich selbst davon, dass wir es nicht können. Vielleicht hat es zu viel Mathematik, vielleicht der Jargon, der erschreckend herumgeworfen wird
Gesichtserkennung in Echtzeit: ein End-to-End-Projekt – wikiHow
Echtzeit-Gesichtserkennung: ein End-to-End-Projekt: In meinem letzten Tutorial zur Erkundung von OpenCV haben wir AUTOMATIC VISION OBJECT TRACKING gelernt. Jetzt werden wir unsere PiCam verwenden, um Gesichter in Echtzeit zu erkennen, wie Sie unten sehen können: Dieses Projekt wurde mit dieser fantastischen "Open Source Computer Vision Library&qu