occlusion

Occlusion stechniken in der Computer Vision

Stefan
6 Min Read
occlusion

Computer-Vision-Modelle lernen das Modellieren einer Aufgabe anhand eines Trainingssatzes. Allerdings neigen sie wie alle Deep-Learning-Modelle dazu, die ihnen angezeigten Daten zu überanpassen und in der Praxis zu falschen Schlussfolgerungen zu gelangen.

Occlusion stechniken

In diesem Beitrag geben wir einen Überblick über occlusion stechniken in der Computervision und diskutieren, wie auf occlusion basierende Datenerweiterungstechniken eingesetzt werden können, um das Problem der Überanpassung in der Computervision zu bekämpfen .

Was ist occlusion in der Computer Vision?

Occlusion stechniken in der Computervision blockieren während der Trainingszeit einen Teil eines Bildes und fordern das Netzwerk auf, zu lernen, sich nicht auf kanonische Merkmale zu verlassen.

Wenn wir beispielsweise ein Objekterkennungsmodell trainieren möchten, um Hunde zu erkennen, verfügen wir möglicherweise nur über Trainingsdaten, bei denen der Kopf des Hundes zu sehen ist. Wenn wir uns die Class Activation Map (CAM) ansehen (die Pixel, die am meisten zu einer Vorhersage beitragen), sehen wir möglicherweise, dass sich das Netzwerk bei seinen Vorhersagen stark auf den Kopf des Hundes verlässt.

Aber was passiert, wenn der Kopf des Hundes hinter einem Busch ist? Wir möchten, dass unser Netzwerk in der Lage ist, solche Situationen zu verallgemeinern. Daher kann es von Vorteil sein, einige Trainingsbilder zu verdecken, um den Kopf des Hundes zu verbergen und das Netzwerk dazu zu zwingen, einen Hund anhand anderer Teile seiner Form zu identifizieren.

Vorgänger-occlusion stechniken

Die Forschung an occlusion stechniken zum Trainieren von Deep-Learning-Computer-Vision-Modellen ist nicht ganz neu und begann bereits 2017.

Zufälliges Löschen – Ein zufälliger rechteckiger Abschnitt des Bildes wird gelöscht und durch verrauschte Pixel ersetzt. In einer Trainingspipeline wird das zufällige Löschen normalerweise an einer zufälligen Stelle und mit einer zufälligen Breite und Höhe innerhalb eines festgelegten Bereichs implementiert. Zufällige Löschungen können auch probabilistisch angewendet werden.

Ausschnitt – zufällige Quadrate werden aus dem Bild ausgeschnitten. Im ursprünglichen Ausschnittpapier wird diese Erweiterung dadurch implementiert, dass diese Pixel nur vor der ersten Schicht des CNN verborgen werden, was bedeutet, dass nachgelagerte verbundene Schichten die verborgenen Pixel immer noch erkennen können.

Versteckspiel – Teilen Sie das Bild in ein Raster ein und verbergen Sie mit einer gewissen Wahrscheinlichkeit zufällig ausgewählte Rasterabschnitte. Dies ähnelt der Rastermaske, aber hier werden zufällig ausgewählte Raster entfernt.

Gittermaske – Zeichnen Sie ein Gitter über das Bild und verbergen Sie alle Quadrate des Gitters.

Modernste occlusionstechniken

Aus alten Techniken sind neue Techniken entstanden, die den Stand der Technik in der Computer Vision-Modellierung durch Datenerweiterung vorantreiben .

CutMix – Ein Abschnitt des Bildes wird zufällig ausgeschnitten und durch einen Abschnitt aus einem anderen Bild ersetzt. Dadurch muss das Modell nicht nur Vorhersagen rund um die occlusion treffen, sondern auch lernen, sich nicht zu stark auf die Umgebung zu verlassen, in der es normalerweise ein bestimmtes Objekt oder eine Klassenbezeichnung findet.

Mosaik – Mosaik ist nicht direkt eine occlusion stechnik, erreicht aber ein ähnliches Ziel. Mosaik fügt 4 Bilder in einem Fenster zusammen und verschiebt und schneidet sie dabei zufällig. Dies zwingt das Modell, um verdeckte Objekte an der Seite herum zu lernen, Objekte in unterschiedlichen Kontexten zu identifizieren und Objekte in unterschiedlichen Teilen des Bildes zu identifizieren, was die Widerstandsfähigkeit verbessert.

Ein praktisches occlusion sbeispiel (Schach)

Nehmen wir an, wir möchten ein Objekterkennungsmodell trainieren, um Schachfiguren zu erkennen. Wir haben einen Schachdatensatz zusammengestellt und unseren Schachdatensatz auf Roboflow öffentlich gemacht .

Bei begrenzten Trainingsdaten ist es möglich, dass unser Modell Schachfiguren nur in einer nicht verdeckten Weise sieht, wie in diesem Bild:

Dennoch muss unser Modell zum Zeitpunkt der Inferenz möglicherweise Vorhersagen zu Schachfiguren treffen, die verdeckt sind, wie in diesem Bild:

Daher kann es von Vorteil sein, mit dem Hinzufügen einiger occlusion serweiterungen zu unseren Trainingsdaten zu experimentieren, um die Widerstandsfähigkeit unseres Modells zu verbessern.

Abschluss

Mithilfe von occlusion stechniken können Sie die Ausfallsicherheit Ihres Computer-Vision-Modells verbessern, indem Sie Ihrem Modell beibringen, kanonische Merkmale eines Bildes zu verallgemeinern.

Die moderne Computer Vision-Forschung erweitert immer wieder die Grenzen effektiver Strategien zur Erweiterung von occlusion sdaten.

occlusion ist eine wichtige Datenerweiterungsstrategie, die Sie ausprobieren sollten, wenn Sie glauben, dass Ihr Modell zu stark auf bestimmte Merkmale in Ihrem Trainingssatz abgestimmt ist.

Viel Spaß beim Verschließen und wie immer viel Spaß beim Training.

Zitieren Sie diesen Beitrag

Verwenden Sie den folgenden Eintrag, um diesen Beitrag bei Ihrer Recherche zu zitieren:

Jacob Solawetz . (6. November 2020). occlusionstechniken in der Computervision. Roboflow-Blog: https://blog.roboflow.com/occlusion-computer-vision/

Besprechen Sie diesen Beitrag

Wenn Sie Fragen zu diesem Blogbeitrag haben, starten Sie eine Diskussion im Roboflow-Forum .