Schnelle Konturerkennung in 4K-Video: Farbe und komplexe Formen

Im vorherigen Teil, „Trainingssets aus Video - schnell und effizient“, haben wir über die Komplexität der Verwendung neuronaler Netze für jede Aufgabe gesprochen, die mit seltenen, ungewöhnlichen oder einfach komplexen Objekten verbunden ist. Schauen Sie sich unbedingt die Beispiele an, sie sind es wert.


Wie sich herausstellte, können klassische Computer-Vision-Algorithmen sehr hilfreich sein, um qualitativ hochwertige Trainingssätze zu erhalten. Natürlich ist dieser Ansatz nicht in allen Fällen anwendbar, mit denen man verstehen muss.

Was ist die Schwierigkeit?


Wie im vorherigen Teil gezeigt , ist die detaillierte manuelle Kennzeichnung von Sets ein sehr zeitaufwändiger Prozess und offen gesagt im Allgemeinen keine Option für eine gesunde Person. Die automatische Markierung, insbesondere bei Konturen, sieht viel interessanter aus, aber wie kann man die gewünschte Kontur schnell und genau ermitteln?

Mitgliedschaftsfunktion


Vielleicht lohnt es sich, mit der Mitgliedschaftsfunktion zu beginnen. Angenommen, das für uns interessante Objekt zeichnet sich durch eine helle Farbe aus, die im Kontext einer bestimmten Szene für das Objekt einzigartig ist:


Angesichts der Besonderheiten des Ansatzes (nämlich der Notwendigkeit solcher Szenen, die leicht zu "analysieren" sind) ist es recht einfach, eine Regel für die Auswahl von Beispielen zu formulieren, um einen Trainingssatz zu erhalten: Szenen, für die die Regel der Farbeindeutigkeit des gewünschten Objekts erfüllt wird, sind sehr nützlich (denken Sie daran, in allen schwierigen Fällen Sie müssen sich mit einem neuronalen Netzwerk befassen, das mit dem generierten Satz erfolgreich trainiert wurde.

Tatsächlich ist die Bedingung der Einzigartigkeit ein notwendiges Minimum, da auch an Farbe gearbeitet werden kann und sollte:


Farbabstand


Die Arbeit mit Farbe ist in diesem Fall ein sehr wichtiger Teil des gesamten Ansatzes. Tatsächlich kann die Zugehörigkeitsfunktion als Funktion der Nähe zu einer bestimmten Farbe mit einem festgelegten Schwellenwert implementiert werden:



Die vorhandene Lösung verwendet mehrere Delta E- Implementierungen als genauesten Standard. Zum Beispiel CIE94 im LCH-Farbraum (L * C * h):



Ein zu großer Schwellenwert für den Farbabstand kann den Pfad „durchbrechen“ und Pixel erfassen, die nicht mit dem gewünschten Objekt zusammenhängen. Zu klein - Wählt nur einen Teil des gewünschten Objekts aus. In diesem Zusammenhang erfordern komplexe Szenen Aufmerksamkeit, zum Beispiel:



Der Wal auf dem Foto ist für das Auge immer noch erkennbar (natürlich mit Schwierigkeiten), aber der Umriss ist bereits falsch aufgebaut. Gesamtes Beispiel:


Stellen Sie den Stromkreis wieder her


Angenommen, mit Farbe ist alles in Ordnung. Wie erhält man den gewünschten Umriss? Die Aufgabe ist nicht einfach, da das Ergebnis wahrscheinlich recht komplex ist, mit Hohlräumen, kleinen Elementen usw. Welche der Optionen für die wiederhergestellte Kontur für ein einzelnes Objekt ist korrekt?


Die Beleuchtung ist komplex, Schatten, Reflexe sind ein wesentlicher Bestandteil der dreidimensionalen Welt usw. Wir verwenden ein komplexeres Beispiel:


Der Algorithmus zum Erhalten eines solchen Ergebnisses ist wie folgt:



  1. Quellbild
  2. Auswahl der Scanschritte (leistungskritisch)
  3. horizontaler Scan
  4. vertikales Scannen und Schnittpunktanalyse zur Suche nach isolierten "Objekten"
  5. Erstellen eines Arrays von Metapixeln (um sowohl die Form als auch die internen Merkmale des Objekts zu identifizieren) und Nachbearbeitung (Filtern, Glätten usw.)
  6. "Vektorisierung" der wiederhergestellten Form des Objekts

Die Schnittanalyse macht es einfach, separate, nicht verwandte Bereiche zu lokalisieren. Durch Aktivieren des Scanlinien-Anzeigemodus können Sie sowohl den Ansatz selbst als auch die Auswirkung des Scanschritts auf das Endergebnis leicht erkennen. Achten Sie auf einen sehr einfachen Trick mit einem Rand, der den Eindruck, den Sie machen, erheblich verbessert:



Die Genauigkeit der rekonstruierten Schaltung lässt sich anhand des folgenden Beispiels leicht bewerten:



Abschließender Test


Mehr Objekte, mehr Konturen, bessere Genauigkeit, Haare und in 4K - wenn Sie Ihre Implementierung überprüfen, also mit Liedern und Tänzen.


Bis zum nächsten Mal und andere ebenso interessante Details.

Andere Ergebnisse





Verfolgen Sie die Entwicklung des Projekts


YouTube: RobotsCanSee
Telegramm: RobotsCanSeeUs

Source: https://habr.com/ru/post/de473780/


All Articles