Ein Blick auf H.O.G Feature Descriptor

Bevor wir wissen, wie H.O.G funktioniert, lassen Sie uns wissen, was Gradienten in diesem Kontext sind. Nehmen Sie zum Beispiel das folgende Bild:

Farbverläufe im Bild

Wenn Sie Pixel für Pixel von links nach rechts treten, werden Sie feststellen, dass sich der Pixelwert nach einigen Schritten plötzlich ändert, dh von einer schwarzen niedrigeren Pixelzahl zu einer weißen höheren Pixelzahl. Diese plötzliche Änderung der Farbe wird als Farbverlauf bezeichnet, und der Übergang von einem dunkleren zu einem helleren Ton wird als positiver Farbverlauf und umgekehrt bezeichnet. Wenn wir von links nach rechts gehen, erhalten wir den horizontalen Gradienten und wie erwartet von oben nach unten einen vertikalen Gradienten.

Funktionsweise des HOG

HOG arbeitet mit einem Block, der einem Schiebefenster ähnelt. Ein Block wird als Pixelraster betrachtet, in dem Gradienten aus der Größe und Richtung der Änderung der Intensitäten des Pixels innerhalb des Blocks gebildet werden.

Dinge zu beachten: HOG arbeitet mit Graustufenbildern.

1 — Der erste Schritt wäre also, ein RGB-Bild in Graustufen zu konvertieren.

2 — Um einen genaueren Blick darauf zu werfen, konzentrieren wir uns auf ein solches Raster der Größe 8 * 8. Schauen Sie sich das folgende Bild an.

Im Block von 64 Pixeln werden für jedes Pixel horizontale und vertikale Gradienten berechnet. Wie im obigen Bild werden horizontale und vertikale Gradienten berechnet als:

Horizontaler Gradient: 120 -70 = 50
Vertikaler Gradient : 100 -50 = 50

3 — Sobald wir die Gradienten erhalten, versuchen wir, für jedes von 64 Pixeln etwas zu berechnen, das Gradientengröße und Gradientenwinkel genannt wird.

Mit diesen 64 Gradientenvektoren versuchen wir nun, sie auf 9 Vektoren zu komprimieren, um die maximale Struktur beizubehalten. Dazu versuchen wir, ein Histogramm von Größen und Winkeln zu zeichnen. Hier ist die x-Achse Winkel und sie sind in 9 Bins mit einer Größe von jeweils 20 Grad unterteilt.

Hinweis: Die Erstellung von 9 Behältern wird von den Autoren des HOG-Papiers entschieden. Es ist also überall ziemlich konstant.

Die obigen Ergebnisse gelten für ein 8 * 8-Raster und wir haben die Darstellung auf 9 Vektoren komprimiert.

4 – Wenn wir dieses 8 * 8-Raster über das gesamte Bild schieben und versuchen, die Histogrammergebnisse zu interpretieren, erhalten wir so etwas wie unten.

5 — Und wenn wir die Schweinemerkmale zeichnen, werden wir feststellen, dass die Struktur des Objekts oder Gesichts gut erhalten bleibt und alle unbedeutenden Merkmale verloren gehen.

Und solche Eingaben können von jedem maschinellen Lernalgorithmus genutzt werden, um die Klassifizierung oder Regression durchzuführen.

Es ist eine sehr leistungsfähige Technik, die noch heute verwendet wird und Objekterkennung kann ohne die Verwendung von schweren Architekturen von DL erreicht werden.

Der beste Ort, um HOG-Erkennungsfunktionen zu erhalten, ist die Bibliothek Dlib.

Nun, da Sie ein altes praktisches Werkzeug kennen, um ein Bild in einem komprimierten Format darzustellen und dennoch die Struktur beizubehalten, können Sie dies in viele Anwendungsfälle für Computer Vision integrieren.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

More: