Kurze Erklärung
project "Face Expressionserkennung" zielt darauf ab, menschliche Gesichtsausdrücke mithilfe der CNN -Methode (Faltungsstufe Neural Network) zu erkennen. Der CNN -Algorithmus wird angewendet, um visuelle Daten wie Gesichtsbilder im Graustufenformat zu analysieren, das dann in sieben Kategorien grundlegender Ausdrücke eingeteilt wird: glücklich, traurig, wütend, schockiert, Angst, Ekel und neutral. Dieses Modell wird mit Datensatz fer2013 geschult und erfolgreich eine Genauigkeit von 91,67% nach dem Training für 500 Epoche erreicht.
Projektziele
Projekt "Gesichtsausdruckerkennung" ist das Ende des Kurskurs für künstliche Intelligenz, in dem in diesem Projekt Erfolge erzielt werden müssen, einschließlich:
Entwicklung eines Systems zur Einführung des Gesichtsausdrucks auf der Grundlage künstlicher Intelligenz.
Dieses System wird erwartet, dass sie Emotionen identifizieren können, die automatisch und genau aus Mimik ausstrahlen.
- Experimentieren mit Algorithmen für maschinelles Lernen, um die Genauigkeit von Mimik zu erhöhen.
In diesem Projekt wird der CNN -Algorithmus getestet, um zu verstehen, inwieweit dieses Modell komplexe Muster in Gesichtszeichnungen erkennen kann. Diese Bemühungen umfassen auch die Optimierung der Modellparameter, zusätzliche Schulungsdaten und die Verwendung von Datenerweiterungsmethoden.
-
Tech Stack verwendet
Framework: Python verwendet Bibliothek wie TensorFlow/schwer, um CNN zu implementieren.
Datensatz: Der verwendete Datensatz ist fer2013 (Gesichtsausdruckerkennung 2013), das 35.887 Face Graustufenbilder mit Abmessungen von 48x48 Pixel enthält. Diese Bilder sind mit einem Etikett ausgestattet, das sieben grundlegende Ausdruckskategorien enthält.
Werkzeuge: -
-
numpy und pandas für Datenmanipulation.
- Matplotlib für die Visualisierung.
Haar Cascade für die Gesichtserkennung der Kamera.
Wütend
-
Neutral
-
überrascht
-
Besorgt
-
Ekelhaft
-
Das Problem und wie ich damit umgehe
-
- Das Problem der Beleuchtungsunterschiede, die die Genauigkeitsstufe beeinflussen.
Beleuchtungsvariationen können die Genauigkeit des Modells beeinflussen. Um dies zu überwinden, wird die Normalisierung von Daten durchgeführt, um sicherzustellen, dass die Beleuchtung im Bild einheitlicher ist, damit die Muster im Gesichtsbild besser erkannt werden können.
Komplexität ähnlicher Ausdrücke.
Einige Ausdrücke wie "Angst" und "überrascht" haben ähnliche Eigenschaften, die von Modellen schwer zu unterscheiden sind. Die angewandte Lösung besteht darin, Datenvergrößerung wie Rotation, Zoom, Umdrehen und Kontraständerungen zur Verbesserung der Fähigkeit der Modelle der Verallgemeinerung neuer Daten auszuführen.
Datensatz, der recht begrenzt ist
Der Datensatz fer2013, obwohl ziemlich groß, deckt zwar weltweit keine Vielzahl von Gesichtsvariationen ab. Um den Datensatz zu bereichern, verwende ich die Datenerweiterungstechnik und füge Daten aus anderen relevanten Quellen hinzu, um eine bessere Darstellung von Gesichtsausdrücken zu erstellen.
-
Lektionen gelernt
Dieses Projekt bietet in den Teilen von Einblicke, wie künstliche Intelligenz -basierte Systeme verwendet werden können, um die Gesichtsausdrücke zu erkennen. Der Entwicklungsprozess zeigt seine Bedeutung:
-
Daten PRA-permessia zur Bewältigung von Beleuchtungsproblemen und Verbesserung der Datenqualität.
Experiment mit Trainingsparametern, um optimale Kombinationen zu erhalten, z. B. die Anzahl der Epoche, die Lernrate und die Chargengröße.
Erhöhen Sie die Vielfalt der Schulungsdaten durch Augmentation, um die Leistung des Modells der realen Daten zu verbessern.
- Durch die Überwindung bestehender Herausforderungen ist es diesem Projekt gelungen, ein Einführungsmodell des Gesichtsausdrucks aufzubauen, das auf verschiedene Anwendungen wie die Interaktion zwischen Mensch und Komputer, emotionale Analyse und psychologische Überwachung angewendet werden kann.