Vortrainierte Cascade Image-Klassifikation

Wichtig

Der Support für Machine Learning Studio (klassisch) endet am 31. August 2024. Es wird empfohlen, bis zu diesem Datum auf Azure Machine Learning umzustellen.

Ab dem 1. Dezember 2021 können Sie keine neuen Ressourcen in Machine Learning Studio (klassisch) mehr erstellen. Bis zum 31. August 2024 können Sie die vorhandenen Ressourcen in Machine Learning Studio (klassisch) weiterhin verwenden.

Die Dokumentation zu ML Studio (klassisch) wird nicht mehr fortgeführt und kann künftig nicht mehr aktualisiert werden.

Erstellt ein vortrainiertes Bildklassifikationsmodell für frontale Gesichtsabbildungen mithilfe der OpenCV-Bibliothek.

Kategorie: OpenCV-Bibliotheksmodule

Hinweis

Gilt nur für: Machine Learning Studio (klassisch)

Ähnliche Drag & Drop-Module sind im Azure Machine Learning-Designer verfügbar.

Modulübersicht

In diesem Artikel wird beschrieben, wie Sie das Modul Vortrainierte kaskadierte Bildklassifizierung in Machine Learning Studio (klassisch) verwenden, um Gesichter in Bildern zu erkennen.

Das Modell basiert auf der OpenCV-Bibliothek . Die OpenCV-Bibliothek enthält eine Liste vordefinierter Modelle, die jeweils für die Erkennung eines bestimmten Objekttyps optimiert sind.

Weitere Informationen zum vortrainierten Modell

Dieses Bilderkennungsmodell wurde bereits mit einem großen Korpus von Bildern trainiert, der häufig für Bilderkennungsaufgaben verwendet wird. Dieses spezielle Klassifizierungsmodell wurde für die Gesichtserkennung optimiert und verwendet den Viola-Jones Objekterkennungsalgorithmus. Der Zweck des Modells besteht darin, Bilder zu identifizieren, die ein menschliches Gesicht in der Frontalansicht enthalten.

Obwohl derzeit nur ein OpenCV-Bildklassifizierungsmodell bereitgestellt wird, sind in späteren Versionen möglicherweise zusätzliche vortrainierte Modelle verfügbar.

Verwenden eines vortrainierten Modells

Wenn Sie über eine Reihe von Bildern verfügen, die Sie analysieren möchten, geben Sie sie wie in diesem Thema beschrieben als Eingabe für das Modul Score Model an und fügen dieses Modul an, das das vortrainierte OpenCV-Bibliotheksmodell bereitstellt.

Das Modul Score Model verwendet das Bildklassifizierungsmodell, um zu bestimmen, ob das Bild ein menschliches Gesicht enthält, und gibt eine Wahrscheinlichkeitsbewertung für jedes Bild zurück, das als Eingabe verwendet wird.

Modelle, die auf der vortrainierten Kaskadierten Bildklassifizierung basieren, können nicht für neue Bilddaten neu trainiert werden.

Das Format, in dem das Modell gespeichert wird, ist nicht mit den Modulen Train Model und Cross-Validate Model kompatibel.

Konfigurieren der vortrainierten Kaskadierten Bildklassifizierung

Das Bildklassifizierungsmodell in Machine Learning wurde bereits mit einem großen Dataset trainiert und ist für einen bestimmten Bildtyp optimiert. Daher müssen Sie lediglich einen Satz von Bildern als Bewertungsdataset bereitstellen. Als Ausgabe generiert das Modul eine Bewertung, die angibt, ob jedes Bild den Zielbildtyp enthält.

  1. Bereiten Sie das Dataset mit Bildern vor, das Sie für die Bewertung verwenden möchten, und importieren Sie es. Im Allgemeinen sollten alle Bilder im Dataset die gleiche Größe haben.

    Sie fügen die Bilder ihrem Experiment mithilfe des Moduls Import Images (Bilder importieren ) hinzu. Lesen Sie die Hilfe zum Importieren von Images genau, um sicherzustellen, dass die verwendeten Images die Anforderungen erfüllen. Sie müssen auch sicherstellen, dass auf die Images in der definierten Speicheroption zugegriffen werden kann.

  2. Fügen Sie ihrem Experiment in Studio (klassisch) das Modul Pretrained Cascade Image Classification (Vortrainierte Kaskadierte Bildklassifizierung ) hinzu. Sie finden dieses Modul in der Kategorie OpenCV-Bibliothek .

  3. Wählen Sie eine der vortrainierten Klassifizierer aus der Liste unter Vortrainierte Klassifizierung aus.

    Derzeit ist nur ein Klassifizierer verfügbar: frontales Gesicht, das standardmäßig ausgewählt ist.

  4. Skalierungsfaktor: Geben Sie einen Wert ein, der angibt, wie viel die Bildgröße bei jeder Bildskala reduziert wird.

    In der OpenCV-Bibliothek ist der Klassifizierer so konzipiert, dass seine Größe leicht "geändert" werden kann, um die objekte von Interesse in unterschiedlichen Größen finden zu können. Dies ist effizienter als das Ändern der Größe des Images selbst. Daher sollte die Überprüfungsprozedur mehrmals in unterschiedlichen Skalierungen ausgeführt werden, um ein Objekt unbekannter Größe im Bild zu finden.

    Es wird empfohlen, verschiedene Skalierungsfaktoren auszuprobieren, um die besten Bildklassifizierungsergebnisse zu erhalten.

  5. Mindestanzahl von Nachbarn: Geben Sie eine ganze Zahl ein, die die Mindestanzahl überlappender Rechtecke darstellt, die erforderlich sind, um zu erkennen, dass ein Gesicht in einem Bereich enthalten ist.

    In der OpenCV-Bibliothek erkennt der Klassifizierer Objekte unterschiedlicher Größe im Eingabebild. Die erkannten Objekte werden als Liste von Rechtecke zurückgegeben. Der Neighbors-Parameter steuert, wie viele mögliche Übereinstimmungen erforderlich sind, um als erkanntes Gesicht oder Feature zu qualifizieren. Daher erhöht die Erhöhung dieses Werts tendenziell die Genauigkeit auf Kosten der Abdeckung.

    Beispiele für die Berechnung von Nachbarn finden Sie in diesem Artikel in der Dokumentation zur OpenCv-Bibliothek: Eigenfaces in OpenCV.

  6. Optional können Sie die folgenden Einstellungen verwenden, um die Bildgröße für das Modell anzugeben, damit bessere Vorhersagen getroffen werden können. Images, die nicht den Anforderungen entsprechen, werden entfernt:

    • Mindesthöhe: Geben Sie die Pixelhöhe des kleinsten Bilds ein. Wenn Sie einen Wert für diese Eigenschaft angeben, werden Bilder, die kleiner als diese sind, ignoriert.

    • Maximale Höhe. Geben Sie die Pixelbreite des größten Bilds ein. Wenn Sie einen Wert für diese Eigenschaft angeben, werden Bilder, die größer als diese sind, ignoriert.

    • Mindestbreite: Geben Sie die Pixelbreite des kleinsten Bilds ein. Wenn Sie einen Wert für diese Eigenschaft angeben, werden Bilder, die kleiner als diese sind, ignoriert.

    • Maximale Breite: Geben Sie die Pixelbreite des größten Bilds ein. Wenn Sie einen Wert für diese Eigenschaft angeben, werden Bilder, die größer als diese sind, ignoriert.

  7. Verbinden das für die Bewertung verwendete Bilddataset.

  8. Fügen Sie Ihrem Experiment das Modul Score Model hinzu, und verbinden Sie die vortrainierte Bildklassifizierung und Ihr Dataset mit Bildern.

  9. Führen Sie das Experiment aus.

Ergebnisse

Die Ausgabe von Score Model enthält den Bildnamen, die bewertete Bezeichnung und die Wahrscheinlichkeitsbewertung für die Bezeichnung (entweder 0 oder 1). Der Klassifizierer gibt "1" aus, wenn das Bild wahrscheinlich das Objekt (ein Gesicht) und andernfalls "0" zeigt. Beispiel:

Imagename Scored Labels (Bewertete Bezeichnungen) Scored Probabilities (Bewertete Wahrscheinlichkeiten)
MAN001.png true 1
TABLE001.PNG FALSE 0
CHAIR001.PNG FALSE 0

Tipp

Die Ausgabe enthält auch die RGB-Werte für alle Farbkanäle im Dataset. Aus diesem Grund wird empfohlen, dass Sie in Ihrem Experiment Spalten im Dataset auswählen verwenden, um nur die Ergebnisspalten auszugeben, um die Daten einfacher anzuzeigen.

Technische Hinweise

Das in diesem Modul bereitgestellte Gesichtserkennungsmodell basiert auf dem Viola-Jones Gesichtserkennungsalgorithmus. Weitere Informationen finden Sie in den folgenden Ressourcen:

  • In diesem Video werden die grundlegenden Konzepte der Gesichtserkennung erläutert, einschließlich einer Definition der Features vonUng und deren Verwendung in der Gesichtserkennung: Gesichtserkennung – Teil 1

  • In diesem Wikipedia-Artikel wird die methode beschrieben, die für den Klassifizierer verwendet wird, basierend auf dem Artikel von Navneet Dalal und Bill Triggs: Histogramm von orientierten Farbverläufen

  • Die Dokumentation zum Gesichtserkennungsalgorithmus, der in der OpenCV-Bibliothek bereitgestellt wird, finden Sie unter Cascade Classifier.

Hinweis

Dieses Modul gibt nicht die vollständige Sammlung von Informationen aus, die von der OpenCV-Bibliothek erzeugt werden. Insbesondere gibt dieses Modul nur die Vorhersage aus, ob ein Gesicht vorhanden ist oder nicht, und enthält nicht die Koordinaten des Gesichts oder andere Informationen.

Wenn Sie diese zusätzlichen Informationen benötigen, sollten Sie andere Bibliotheken verwenden, z. B . die gesichtserkennungs-API , die von Microsoft Cognitive Services bereitgestellt wird.

Modulparameter

Name Range type Standard Beschreibung
Vortrainierter Klassifizierer Liste PretrainedClassifier Frontale Gesichtsabbildung Vortrainierter Klassifizierer aus OpenCV-Standarddistribution.
Skalierungsfaktor >=1,0000000000000002 Float 1.1 Parameter, der angibt, um wie viel die Bildgröße bei jeder Bildskalierung verringert wird.
Mindestanzahl von Nachbarn >=0 Integer 3 Parameter, der angibt, wie viele Nachbarn jedes Kandidatenrechteck besitzen muss, damit es beibehalten wird.
Mindesthöhe >=1 Integer 100 Mögliche Mindesthöhe des Objekts (in Pixel). Objekte, die kleiner als dieser Wert sind, werden ignoriert.

Der Parameter ist optional.
Mindestbreite >=1 Integer 100 Mögliche Mindestbreite des Objekts (in Pixel). Objekte, die kleiner als dieser Wert sind, werden ignoriert.

Der Parameter ist optional.
Maximale Höhe >=1 Integer 200 Mögliche maximale Höhe des Objekts (in Pixel). Objekte, die größer als dieser Wert sind, werden ignoriert.

Der Parameter ist optional.
Maximale Breite >=1 Integer 200 Mögliche maximale Breite des Objekts (in Pixel). Objekte, die größer als dieser Wert sind, werden ignoriert.

Der Parameter ist optional.

Ausgaben

Name Type BESCHREIBUNG
Trainiertes Modell ILearner-Schnittstelle Trainiertes, binäres Klassifikationsmodell

Ausnahmen

Ausnahme Beschreibung
Fehler 0005 Eine Ausnahme tritt auf, wenn der Parameter kleiner als ein bestimmter Wert ist.

Eine Liste der Fehler, die für Studio-Module (klassisch) spezifisch sind, finden Sie unter Machine Learning Fehlercodes.

Eine Liste der API-Ausnahmen finden Sie unter Machine Learning REST-API-Fehlercodes.

Siehe auch

Importieren von Bildern
Pretrained Cascade Image Classification (Vortrainierte Kaskadenbildklassifizierung)