-
VERWANDTE ANMELDUNGEN
-
Die vorliegende Anmeldung beansprucht Priorität gegenüber der vorläufigen US-Pat. Anm. Ser. Nr.
63/185,278 , eingereicht am 6. Mai 2021, deren gesamte Offenbarungen hiermit durch Bezugnahme aufgenommen werden.
-
TECHNISCHES GEBIET
-
Mindestens einige der hierin offenbarten Ausführungsformen betreffen Bildsegmentierung im Allgemeinen und insbesondere, aber nicht darauf beschränkt, halbüberwachtes Training eines künstlichen neuronalen Netzwerks (KNN) zur Bildsegmentierung.
-
HINTERGRUND
-
Ein künstliches neuronales Netzwerk (KNN) verwendet ein Netzwerk aus Neuronen, um Eingaben in das Netzwerk zu verarbeiten und Ausgaben aus dem Netzwerk zu erzeugen.
-
Deep Learning wurde in vielen Anwendungsbereichen, wie zum Beispiel Computervision, Sprach-/Audioerkennung, Verarbeitung natürlicher Sprache, maschinelle Übersetzung, Bioinformatik, Arzneimittel design, medizinische Bildverarbeitung, Spiele usw., eingesetzt.
-
Figurenliste
-
Die Ausführungsformen sind beispielhaft und nicht als Einschränkung in den Figuren der beigefügten Zeichnungen veranschaulicht, in denen gleiche Bezugszeichen ähnliche Elemente angeben.
- Die 1 - 3 zeigen Techniken des halbüberwachten Trainings eines künstlichen neuronalen Netzwerks (KNN) zum Ausführen von Bildsegmentierung unter Verwenden mindestens zum Teil grober Labels gemäß einigen Ausführungsformen.
- 4 veranschaulicht ein Beispiel grober Labels für halbüberwachtes Training bei Bildsegmentierung gemäß einer Ausführungsform.
- 5 zeigt ein Verfahren zur Bildsegmentierung über halbüberwachtes Training gemäß einer Ausführungsform.
- 6 ist ein Blockdiagramm eines beispielhaften Computersystems, in dem Ausführungsformen der vorliegenden Offenbarung betrieben werden können.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Mindestens einige Aspekte der vorliegenden Offenbarung betreffen das halbüberwachte Training eines künstlichen neuronalen Netzwerks beim Ausführen von Bildsegmentierung unter Verwenden grober Labels.
-
Ein Bild einer Szene weist ein Array von Pixeln auf, die unterschiedliche Objekte in der Szene abbilden. Das Array von Pixeln kann in Gruppen, die jeweils einen Gegenstand von Interesse darstellen, unterteilt werden. Bei einem semantischen Segmentierungsvorgang ist ein Element von Interesse eine oder mehrere Instanzen einer Klasse von Objekten, wie Personen, Fahrzeuge, Straße, Gebäude usw. Bei einem Instanzsegmentierungsvorgang ist ein Element von Interesse eine Instanz einer Klasse von Objekten. Die panoptische Segmentierung identifiziert sowohl semantische Elemente, die jeweils eine Klasse von einer oder mehreren Objektinstanzen abbilden, als auch Instanzelemente, die jeweils eine einzige Objektinstanz in einer Klasse abbilden. Während des Bildsegmentierungsvorgangs kann jedes Pixel in dem Bild nach Klasse und/oder nach Instanz klassifiziert werden.
-
Wenn eine Technik zum überwachten maschinellen Lernen verwendet wird, um ein künstliches neuronales Netzwerk zu trainieren, um eine Bildsegmentierung auszuführen, ist es typisch, dass ein menschlicher Bediener Labels auf Trainingsbildern bereitstellt, um das künstliche neuronale Netzwerk zu lehren. Ein Label identifiziert ein wünschenswertes Bildsegmentierungsergebnis, wie es von dem menschlichen Bediener ausgeführt wird; und die Parameter des künstlichen neuronalen Netzwerks können unter Verwenden der Technik des überwachten maschinellen Lernens eingestellt werden, um seine Bildsegmentierungsergebnisse am besten mit den von menschlichen Bedienern identifizierten Labels abzugleichen. Es kann eine beträchtliche Menge an Bemühungen und Ressourcen erfordern, die Labels durch menschliche Bediener zu erstellen, um ein überwachtes Training eines künstlichen neuronalen Netzwerks basierend auf einer großen Anzahl von Bildern (zum Beispiel Videobildern) umzusetzen.
-
Mindestens einige Aspekte der vorliegenden Offenbarung behandeln die vorstehenden und andere Mängel und/oder Herausforderungen durch halbüberwachtes Training unter Verwenden grober Labels. Ein grobes Label identifiziert eine approximierte Grenze eines Bildsegments in einem Bild. Im Gegensatz dazu stellt ein feines Label die genaue Grenze des Bildsegments bereit, wie sie von einem menschlichen Bediener identifiziert wird. Ein grobes Label kann einen nützlichen Hinweis mit einem Grad an Ungenauigkeit nahe der Grenze des Bildsegments bereitstellen. Da das grobe Label weniger teuer zu erzeugen ist als ein entsprechendes feines Label, kann die Verwendung des groben Labels und des halbüberwachten Trainings den Aufwand und die Ressourcen reduzieren, die mit dem Training des künstlichen neuronalen Netzwerks verbunden sind, während eine große Anzahl von Trainingsbildern bestens genutzt wird.
-
Die 1 - 3 zeigen Techniken des halbüberwachten Trainings eines künstlichen neuronalen Netzwerks (KNN) zum Ausführen von Bildsegmentierung unter Verwendung mindestens zum Teil grober Labels gemäß einigen Ausführungsformen.
-
In den 1 - 3 sind Trainingsbilder A 101 und Bilder B 102 für das Training eines künstlichen neuronalen Netzwerks 111 zur Ausführung von Bildsegmentierung verfügbar.
-
Für die Bilder A 101 sind feine Labels 103 bereitgestellt; und die groben Labels 104 werden für die Bilder B 102 bereitgestellt, um den Aufwand und die Ressourcen, die mit der Erzeugung von Labels verbunden sind, zu reduzieren.
-
4 veranschaulicht ein Beispiel grober Labels für halbüberwachtes Training bei Bildsegmentierung gemäß einer Ausführungsform.
-
In 4 wird identifiziert, dass ein Bildsegment 134 eine approximierte Grenze 133 aufweist; und es wird identifiziert, dass ein weiteres Bildsegment 132 eine ungefähre Grenze 131 aufweist. Die Pixel der Bildsegmente (zum Beispiel 132 und 134) sind gekennzeichnet, um ihre Attribute (zum Beispiel Klasse und/oder Instanz) zu identifizieren. Einige der Pixel, zum Beispiel in der Fläche 135, sind nicht gekennzeichnet. Die groben Labels, die für das in 4 veranschaulichte Bild bereitgestellt sind, sind für Pixel nahe den Grenzen 131 und 133 weniger genau und für Pixel in dem Inneren der Bildsegmente 132 und 134 genauer. Somit stellen die groben Labels ungefähre Klassifizierungen der individuellen Pixel bei der Bildsegmentierung mit unterschiedlichen Konfidenzniveaugraden für die Pixel in den Bildern angesichts ihrer Abstände zu den Grenzen zu anderen Segmenten und ihrer Abstände zu der Mitte oder dem Inneren ihrer jeweiligen Segmente bereit.
-
Die groben Labels 104 für die Bilder 102 können beim Training des künstlichen neuronalen Netzwerks 111 nützlich sein, um seine Bildsegmentierungsfähigkeit zu verbessern.
-
In den 1 - 3 werden die Bilder 101 und 102 und ihre Labels 103 und 104 verwendet, um das künstliche neuronale Netzwerk 111 unter Verwenden einer überwachten maschinellen Lerntechnik zu trainieren. Das Training ist dazu konfiguriert, die Unterschiede zwischen den Bildsegmenten, die von dem künstlichen neuronalen Netzwerk 111 identifiziert werden, und den Bildsegmenten, die von den Labels 103 und 104 identifiziert werden, zu reduzieren.
-
Beispielsweise kann die Technik des überwachten maschinellen Lernens dazu konfiguriert werden, eine Verlustfunktion, die den Kreuzentropieverlust in Bezug auf die Labels 103 und 104 für die Bildsegmentierung beinhaltet, zu minimieren.
-
Die groben Labels 104 sind für einige gekennzeichnete Pixel weniger genau als für andere gekennzeichnete Pixel. Die Verlustfunktion, die basierend auf den groben Labels bewertet wird, kann auf eine Weise konstruiert werden, die gemäß der Genauigkeitsschätzung für das Kennzeichnen von Pixeln durch die groben Labels gewichtet wird. Beispielsweise können Pixel mit weniger genauem Kennzeichnen in der Nähe der Grenzen von Bildsegmenten, die durch die groben Labels identifiziert werden, kleinere Gewichte in der Kostenfunktion aufweisen als Pixel mit genauerem Kennzeichnen.
-
Nachdem das künstliche neuronale Netzwerk 111 an den Bildern 101 und 102 gemäß den feinen Labels 103 und groben Labels 104 trainiert wurde, kann das künstliche neuronale Netzwerk 111 verwendet werden, um Bildsegmentierung an den Bildern 102, die grobe Labels 104 aufweisen, auszuführen. Der von dem künstlichen neuronalen Netzwerk 111 als ein Lehrer ausgeführte Bildsegmentierungsvorgang erzeugt Soft-Labels 106 für die Bilder 102. Die Soft-Labels 106 können verwendet werden, um ein künstliches neuronales Netzwerk 112 als einen Schüler zu lehren oder zu trainieren.
-
Beispielsweise wird in 1 das künstliche neuronale Schülernetzwerk 112 an den Bildern 101 mit den feinen Labels 103 und den Bildern 102 mit den Soft-Labels 106 trainiert. Da die Soft-Labels 106 mit der Hilfe der feinen Labels 103 erzeugt werden, die zum Trainieren des künstlichen neuronalen Lehrernetzwerks 111 verwendet werden, sind die Soft-Labels 106 im Allgemeinen genauer als die groben Labels 104. Weiter beinhalten die Soft-Labels 106 Klassifizierungen von Pixeln in den Bildern 102, die nicht in den groben Labels 104 klassifiziert sind. Somit kann nach dem Training an den Bildern 101 und 102 gemäß den feinen Labels 103 und den Soft-Labels das künstliche neuronale Schülernetzwerk 112 das künstliche neuronale Lehrernetzwerk 112 übertreffen; und anschließend kann das künstliche neuronale Schülernetzwerk 112 das künstliche neuronale Lehrernetzwerk 111 bei der nächsten Iteration des Trainierens eines weiteren künstlichen neuronalen Schülernetzwerks ersetzen.
-
Beispielsweise kann die Technik des überwachten maschinellen Lernens dazu konfiguriert werden, eine Verlustfunktion zu minimieren, die den Kreuzentropieverlust in Bezug auf die feinen Labels 103 und die Soft-Labels 104 für die Bildsegmentierung beinhaltet. Beispielsweise kann beim Bewerten der Verlustfunktion die Technik des überwachten maschinellen Lernens dazu konfiguriert werden, die Wasserstein-Distanz (auch als Wasserstein-Metrik oder Kantorovich-Rubinstein-Metrik bekannt) für die Bereiche von Pixeln zu verwenden, die Labels/Klassifizierungen aufweisen, die von den groben Labels 104 zu den Soft-Labels 106 aktualisiert wurden.
-
In 2 werden die Bildsegmentierungsergebnisse des künstlichen neuronalen Lehrernetzwerks 111 verwendet, um die groben Labels 104 selektiv zu aktualisieren 113, um modifizierte Labels zu erzeugen.
-
Beispielsweise kann das Konfidenzniveau des Klassifizierungsergebnisses eines Pixels in den Bildern 102 durch das künstliche neuronale Lehrernetzwerk 111 während des Bildsegmentierungsvorgangs bewertet werden. Wenn das Konfidenzniveau über einem Schwellenwert liegt, kann das Klassifizierungsergebnis des Pixels, das von dem künstlichen neuronalen Lehrernetzwerk identifizierten wird, dazu verwendet werden, die entsprechende Klassifizierung in den groben Labels 104 zu aktualisieren, um die modifizierten Labels 108 für die Bilder 102 zu erzeugen.
-
Beispielsweise kann das Konfidenzniveau des Klassifizierungsergebnisses eines Pixels in den Bildern 102, das von dem künstlichen neuronalen Lehrernetzwerk 111 identifiziert wurde, mit dem geschätzten Konfidenzniveau des Klassifizierungsergebnisses des entsprechenden Pixels in den groben Labels 104 verglichen werden. Wenn das Klassifizierungsergebnis des künstlichen neuronalen Lehrernetzwerks 111 ein besseres Konfidenzniveau als die groben Labels 104 aufweist, kann das Klassifizierungsergebnis des Pixels, das von dem künstlichen neuronalen Lehrernetzwerk 111 identifiziert wird, dazu verwendet werden, die entsprechende Klassifizierung in den groben Labels 104 zu aktualisieren, um die modifizierten Labels 108 zu erzeugen. Beispielsweise kann die Ausgabe des künstlichen neuronalen Lehrernetzwerks 111 die Wahrscheinlichkeit, dass jedes Pixel in jeder Klasse klassifiziert wird, beinhalten. Je höher die Wahrscheinlichkeit ist, dass ein Pixel in eine Klasse klassifiziert wird, desto höher ist das Konfidenzniveau des Klassifizierungsergebnisses des Pixels in der Klasse. Der Schwellenwert zum Akzeptieren, dass ein Pixel in einer Klasse ist, kann ein vorbestimmter Wahrscheinlichkeitsschwellenwert über 0,5 oder ein vorbestimmtes Wahrscheinlichkeitsinkrement (z. B. 0,1) größer als die Klasse sein, die die nächsthöchste Wahrscheinlichkeit aufweist. Wenn das künstliche neuronale Lehrernetzwerk 111 ein hohes Vertrauen in die Bilder 102 aufweist, insbesondere für die nicht gekennzeichneten Bereiche, können neue modifizierte Labels 108 erzeugt werden. Optional können Bereiche mit groben Labels 104 auch aktualisiert werden, um die modifizierten Labels 108 zu erzeugen, wenn die Ausgabe des künstlichen neuronalen Lehrernetzwerks 111 eine Schwellenanforderung, die höher ist als die Anforderung zum Akzeptieren der Labels/Klassifizierungen für die zuvor nicht gekennzeichneten Bereichen, erfüllt.
-
Ähnlich dem Training des künstlichen neuronalen Schülernetzwerks 112 in 1, kann das künstliche neuronale Schülernetzwerk 112 in 2 an den Bildern 101 und 102 gemäß den feinen Labels 103 und den modifizierten Labels 108 trainiert werden. Das trainierte künstliche neuronale Schülernetzwerk 112 kann bei einer nächsten Iteration zu einem Lehrer befördert werden, um ein weiteres künstliches neuronales Schülernetzwerk zu trainieren.
-
In 3 können menschliche Eingaben 115 bereitgestellt werden, um die groben Labels 104 unter Verwenden der Segmentierungsergebnisse des künstlichen neuronalen Lehrernetzwerks 111 zu aktualisieren 113.
-
Beispielsweise kann eine grafische Benutzeroberfläche verwendet werden, um die Klassifizierungsergebnisse mit niedrigen Konfidenzniveaus derart zu präsentieren, dass ein menschlicher Bediener Unterstützung beim Kennzeichnen der schwierigen Szenarien leisten kann.
-
Beispielsweise kann die grafische Benutzeroberfläche die Bildsegmentierungsergebnisse für die Bilder 102 zur Überprüfung durch einen menschlichen Bediener präsentieren. Der menschliche Bediener kann die Ergebnisse visuell prüfen, um einige der Soft-Labels 106 zu befördern/zu genehmigen, die von dem künstlichen neuronalen Lehrernetzwerk 112 als feine Labels 103 identifiziert werden. Somit kann die Aktualisierung 113 das Neuklassifizieren einiger der Bilder 102 als fein Labels aufweisend beinhalten, die mindestens zum Teil mit der Unterstützung des künstlichen neuronalen Lehrernetzwerks 111 identifiziert werden und die die Bestätigung/Genehmigung von einem menschlichen Bediener aufweisen.
-
Basierend auf den Segmentierungsergebnissen, die von dem künstlichen neuronalen Netzwerk 111 für die Bilder und die menschliche Eingabe 115 erzeugt werden, kann die Aktualisierung 113 ausgeführt werden, um die aktualisierten Labels 110 zu erzeugen, um das künstliche neuronale Schülernetzwerk 112 zu trainieren.
-
Beispielsweise können die Bilder 101 und 102 von demselben Videoclip stammen. Somit kann die Ähnlichkeit zwischen den Szenen in den Bildern 101 und 102 hoch sein. Aus dem Videoclip kann eine kleine Anzahl von Bildern 101 zur Kommentierung durch einen menschlichen Bediener ausgewählt werden, um die feinen Labels 103 zu erzeugen. Die groben Labels 104 können von einem menschlichen Bediener und/oder von einem Softwaretool (z. B. basierend auf Videoobjektverfolgung, Begrenzungsrahmen) erzeugt werden. Durch die halbüberwachte Trainingsiteration des Lehrens eines künstlichen neuronalen Schülernetzwerks 112 unter Verwendung eines künstlichen neuronalen Lehrernetzwerks 112 können die groben Labels 104 mit gelegentlicher Hilfe durch die menschliche Eingabe 115 verbessert und akzeptiert werden. Somit kann das resultierende künstliche neuronale Netzwerk 111 und/oder 112 ein Leistungsniveau aufweisen, das einem künstlichen neuronalen Netzwerktraining auf den Bildern 101 und 102 entspricht, die beide feine Labels aufweisen. Die halbüberwachte Trainingstechnik kann jedoch den Aufwand und die Ressourcen beim Erzeugen der Labels für das Training drastisch reduzieren.
-
Bei einem anderen Beispiel stammen die Bilder 101 und feinen Labels 103 aus einer Bibliothek und/oder von Videoclips, die nicht mit den Videoclips der Bilder 102 in Beziehung stehen. Um ein künstliches neuronales Netzwerk dazu zu trainieren, Bilder 102 aus dem neuen Videoclip zu segmentieren, werden grobe Labels 104 erzeugt (z. B. als Begrenzungsrahmen oder schnelles Zeichnen von Grenzen von Bildern von Interesse). Die halbüberwachten Trainingstechniken der 1 - 3 können verwendet werden, um feine Labels für die Bilder 102 zu entwickeln und gleichzeitig das künstliche neuronale Netzwerk auf den Bildern 102 mit weniger menschlichem Aufwand beim Kennzeichnen der Bilder 102 zu trainieren.
-
5 zeigt ein Verfahren zur Bildsegmentierung über halbüberwachtes Training gemäß einer Ausführungsform. Beispielsweise können die Vorgänge der 5 unter Verwendung der Techniken der 1 - 3 mit groben Labels, die in 4 veranschaulicht sind, umgesetzt werden.
-
Bei Block 181 empfängt eine Rechenvorrichtung erste Daten, die erste Bilder 101 darstellen, und zweite Daten, die erste Bildsegmente in den ersten Bildern 101 identifizieren. Die ersten Bildsegmente, die in den zweiten Daten identifiziert sind, werden als genau und somit als feine Labels 103 der Bildsegmentierung der ersten Bilder 101 betrachtet.
-
Bei Block 183 empfängt eine Rechenvorrichtung weiter dritte Daten, die zweite Bilder 102 darstellen, und vierte Daten, die approximierten Bildsegmente in den zweiten Bildern 102 identifizieren. Die approximierten zweiten Bildsegmente können ungenaue Informationen über Bildsegmentierung der zweiten Bilder 102 und somit grobe Labels 104 aufweisen.
-
Bei Block 185 trainiert die Rechenvorrichtung unter Verwendung einer Technik des überwachten maschinellen Lernens ein erstes künstliches neuronales Netzwerk 111, um Bildsegmentierung an den ersten Bildern 101 und den zweiten Bildern 102 gemäß den feinen Labels 103 der ersten Bildsegmente auszuführen, die in den zweiten Daten identifiziert sind, und den groben Labels 104 der approximierten zweiten Bildsegmente, die in den vierten Daten identifiziert sind, ausführen.
-
Bei Block 187 führt die Rechenvorrichtung unter Verwendung des ersten künstlichen neuronalen Netzwerks 111 eine Bildsegmentierung der zweiten Bilder 102 aus, um fünfte Daten zu erzeugen, die dritte Bildsegmente in den zweiten Bildern 102 identifizieren.
-
Beispielsweise können die fünften Daten die Soft-Labels 106 in 1, die modifizierten Labels 108 in 2 oder die aktualisierten Labels 110 in 3 sein.
-
Beispielsweise können die fünften Daten erzeugt werden, indem die approximierten zweiten Bildsegmente, die durch die vierten Daten in den zweiten Bildern 102 identifiziert werden, basierend auf Konfidenzniveaus von Bildsegmenten in den zweiten Bildern, die durch das erste künstliche neuronale Netzwerk 111 identifiziert werden, aktualisiert werden.
-
Beispielsweise klassifiziert das erste künstliche neuronale Netzwerk 111 während des Vorgangs der Bildsegmentierung der zweiten Bilder 102 jedes jeweilige Pixel in den zweiten Bildern 102 für semantische Klassen- und/oder Objektinstanzen und das Konfidenzniveau der Klassifizierung(en). Wenn das Konfidenzniveau über einem Schwellenwert liegt, können die Klassifikation(en), die von dem ersten künstlichen neuronalen Netzwerk 111 identifiziert werden, als grundrichtig akzeptiert werden, um die groben Labels 104 zu aktualisieren und die modifizierten Labels 108, die feiner als die groben Labels sind, zu erzeugen.
-
Optional können die Konfidenzniveaus der Pixelklassifizierung bei der Bildsegmentierung gemäß den groben Labels 104 basierend auf Abständen zu Grenzen von Segmenten und/oder Abständen zu dem Inneren von Segmenten geschätzt werden. Somit können die Konfidenzniveaus der Pixelklassifizierung, die von dem ersten künstlichen neuronalen Netzwerk 111 ausgeführt wird, mit den Konfidenzniveaus entsprechender Pixel der groben Labels verglichen werden. Die Klassifizierungen, die höhere Konfidenzniveaus aufweisen, können in den modifizierten Labels 108 beibehalten werden.
-
Optional kann eine grafische Benutzeroberfläche dazu verwendet werden, die Bildsegmente, die von dem ersten künstlichen neuronalen Netzwerk 111 identifiziert werden, in den zweiten Bildern zu präsentieren. Die grafische Benutzeroberfläche ist dazu konfiguriert, die Überprüfung der Bildsegmentierungsergebnisse, die von dem ersten künstlichen neuronalen Netzwerk 111 ausgeführt wird, zu erleichtern. Menschliche Eingaben 115 können in der grafischen Benutzeroberfläche empfangen werden, um einige der Bildsegmente, die durch das erste künstliche neuronale Netzwerk 111 identifiziert werden, anzunehmen, abzulehnen oder zu modifizieren. Beispielsweise können einige Soft-Labels 106 als feine Labels akzeptiert und befördert werden. Beispielsweise können Soft-Labels mit Pixelklassifizierungen der niedrigsten Konfidenzniveaus und/oder unter einem Schwellenwert für eine priorisierte Präsentation in der grafischen Benutzeroberfläche zur Unterstützung durch einen menschlichen Bediener für ein verbessertes grobes Label ausgewählt werden. Einige Pixelklassifizierungen, die mit Soft-Labels 106 assoziiert sind und Konfidenzniveaus unter einem Schwellenwert aufweisen, können in erzeugten modifizierten Labels 108 verworfen werden, um nach dem Training des künstlichen neuronalen Schülernetzwerks 112 weitere Verbesserungen zu sein.
-
Bei Block 189 trainiert die Rechenvorrichtung weiter ein zweites künstliches neuronales Netzwerk 112 zum Ausführen von Bildsegmentierung an den ersten Bildern 101 und den zweiten Bildern 102 gemäß den ersten Bildsegmenten, die in den zweiten Daten identifiziert sind, und den dritten Bildsegmenten, die in den fünften Daten identifiziert sind.
-
Beispielsweise kann das Training des zweiten künstlichen neuronalen Netzwerks 112 dazu konfiguriert werden, eine Verlustfunktion basierend auf einem Wasserstein-Abstand zu den dritten Bildsegmenten, die in den fünften Daten identifiziert sind, zu minimieren; und die Verlustfunktion kann auf einer Kreuzentropie basieren, wobei die dritten Bildsegmente in den fünften Daten für die zweiten Bilder 102 identifiziert werden. Im Gegensatz dazu kann das Training des ersten künstlichen neuronalen Netzwerks 111 dazu konfiguriert sein, eine Verlustfunktion basierend auf einer Kreuzentropie mit den zweiten Bildsegmenten, die in den vierten Daten für die zweiten Bilder 102 identifiziert sind, zu minimieren.
-
Nach dem Training des zweiten künstlichen neuronalen Netzwerks 112 kann die Rechenvorrichtung das zweite künstliche neuronale Netzwerk 112 weiter verwenden, um Bildsegmentierung der zweiten Bilder 102 auszuführen, um sechste Daten zu erzeugen, die vierte Bildsegmente in den zweiten Bildern 102 identifizieren, ähnlich wie bei den Vorgängen in Block 187; und dann trainiert die Rechenvorrichtung weiter ein drittes künstliches neuronales Netzwerk weiter, um Bildsegmentierung an den ersten Bildern 101 und den zweiten Bildern 102 gemäß den ersten Bildsegmenten, die in den zweiten Daten identifiziert sind, und den vierten Bildsegmenten, die in den sechsten Daten identifiziert sind, ähnlich wie die Vorgänge in Block 189, auszuführen. Auf diese Weise können die Vorgänge in den Blöcken 187 und 189 bei Iterationen wiederholt werden, um die Soft-Labels, die von künstlichen neuronalen Netzwerken erzeugt werden, zu verbessern, um die groben Labels 104 zu verbessern und die Leistung der künstlichen neuronalen Netzwerke, die über das halbüberwachte Training erhalten werden, zu verbessern.
-
6 veranschaulicht eine beispielhafte Maschine eines Computersystems 200, in dem ein Satz von Anweisungen ausgeführt werden kann, um die Maschine zu veranlassen, eine oder mehrere der hierin erörterten Methodologien auszuführen. Bei einigen Ausführungsformen kann das Computersystem 200 einem Host-System entsprechen, das ein Speicherteilsystem beinhaltet, mit diesem gekoppelt ist oder dieses nutzt, oder kann verwendet werden, um die Vorgänge eines Segmentierungstools 206 auszuführen (z. B. um Anweisungen zum Ausführen von Vorgängen auszuführen, die dem unter Bezugnahme auf die 1 - 5 beschriebenen halbüberwachten Training entsprechen). Bei alternativen Ausführungsformen kann die Maschine mit anderen Maschinen in einem LAN, einem Intranet, einem Extranet und/oder dem Internet verbunden (z. B. vernetzt) sein. Die Maschine kann in der Funktion eines Servers oder einer Client-Maschine in einer Client-Server-Netzwerkumgebung, als eine Peer-Maschine in einer Peer-to-Peer- (oder verteilten) Netzwerkumgebung oder als eine Server- oder eine Client-Maschine in einer Cloud-Computing-Infrastruktur oder -Umgebung betrieben werden.
-
Die Maschine kann ein Server, ein Personal Computer (PC), ein Tablet-PC, eine Set-Top-Box (STB), ein persönlicher digitaler Assistent (PDA), ein Mobiltelefon, eine Web-Anwendung, ein Netzwerkrouter, ein Switch oder eine Bridge oder eine beliebige Maschine sein, die in der Lage ist, einen Satz von Anweisungen (aufeinanderfolgend oder anderswie), die Aktionen festlegen, die von dieser Maschine unternommen werden sollen, auszuführen. Weiter ist der Begriff „Maschine“, obwohl eine einzige Maschine veranschaulicht ist, außerdem dahingehend zu verstehen, dass er einen beliebigen Satz von Maschinen beinhaltet, die einzeln oder gemeinsam einen Satz (oder mehrere Sätze) von Anweisungen ausführen, um eine beliebige oder mehrere der hierin erörterten Methodologien auszuführen.
-
Das beispielhafte Computersystem 200 beinhaltet eine Verarbeitungsvorrichtung 202, einen Hauptspeicher 204 (z. B. einen Nur-Lese-Speicher (ROM), einen Flash-Speicher, einen dynamischen Direktzugriffsspeicher (DRAM) wie etwa einen synchronen DRAM (SDRAM) oder einen Rambus-DRAM (RDRAM, einen statischen Direktzugriffsspeicher (SRAM) usw.) und ein Datenspeichersystem 218, die über einen Bus 230 (der mehrere Busse beinhalten kann) miteinander kommunizieren.
-
Die Verarbeitungseinrichtung 202 stellt eine oder mehrere Allzweckverarbeitungseinrichtungen dar, wie etwa einen Mikroprozessor, eine Zentralverarbeitungseinheit oder dergleichen. Insbesondere kann die Verarbeitungseinrichtung ein Mikroprozessor für die Berechnung eines komplexen Anweisungssatzes (Complex Instruction Set Computing - CISC), ein Mikroprozessor für die Berechnung eines verringerten Anweisungssatzes (Reduced Instruction Set Computing - RISC), ein Mikroprozessor für sehr lange Anweisungswörter (Very Long Instruction Word - VLIW) oder ein Prozessor, der andere Anweisungssätze umsetzt, oder Prozessoren sein, die eine Kombination von Anweisungssätzen umsetzen. Die Verarbeitungseinrichtung 202 kann außerdem eine oder mehrere Spezialverarbeitungseinrichtungen sein, wie etwa eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), ein Prozessor für digitale Signale (digital signal processor - DSP), ein Netzwerkprozessor oder dergleichen. Die Verarbeitungseinrichtung 202 ist dazu konfiguriert, Anweisungen 226 zum Durchführen der in dieser Schrift erörterten Vorgänge und Schritte auszuführen. Das Computersystem 200 kann weiter eine Netzwerkschnittstelleneinrichtung 208 beinhalten, um über das Netzwerk 220 zu kommunizieren.
-
Das Datenspeichersystem 218 kann ein maschinenlesbares Speichermedium 224 (auch als ein computerlesbares Medium bekannt) beinhalten, auf dem ein oder mehrere Anweisungssätze 226 oder Software gespeichert sind, die eine oder mehrere der in dieser Schrift beschriebenen Vorgehensweisen oder Funktionen verkörpert. Die Anweisungen 226 können sich während ihrer Ausführung durch das Computersystem 200 außerdem vollständig oder mindestens teilweise in dem Hauptspeicher 204 und/oder in der Verarbeitungseinrichtung 202 befinden, wobei der Hauptspeicher 204 und die Verarbeitungseinrichtung 202 ebenfalls maschinenlesbare Medien bilden. Das maschinenlesbare Speichermedium 224, das Datenspeichersystem 218 und/oder der Hauptspeicher 204 können dem Speicher-Teilsystem entsprechen.
-
Bei einer Ausführungsform beinhalten die Anweisungen 226 Anweisungen zum Umsetzen einer Funktion, die einem Segmentierungstool 206 entspricht (z. B. Vorgänge des halbüberwachten Trainings, die unter Bezugnahme auf die 1 - 5 beschrieben sind). Während das maschinenlesbare Medium 224 in einer beispielhaften Ausführungsform als ein einziges Medium gezeigt ist, sollte der Begriff „maschinenlesbares Speichermedium“ als ein einziges Medium oder mehrere Medien, die den einen oder die mehreren Anweisungssätze speichern, beinhaltend betrachtet werden. Der Begriff „maschinenlesbares Medium“ ist außerdem so zu verstehen, dass er ein beliebiges Medium beinhaltet, das in der Lage ist, einen Satz von Anweisungen zur Ausführung durch die Maschine zu speichern oder zu kodieren und welche die Maschine veranlassen, eine oder mehrere der Methodologien der vorliegenden Offenbarung auszuführen. Der Begriff „maschinenlesbares Medium“ ist dementsprechend so zu verstehen, dass er, ohne darauf beschränkt zu sein, Festkörperspeicher und optische Medien und magnetische Medien beinhaltet.
-
Einige Teile der vorhergehenden detaillierten Beschreibungen wurden hinsichtlich Algorithmen und symbolischen Darstellungen von Vorgängen an Datenbits innerhalb eines Computerspeichers dargestellt. Diese algorithmischen Beschreibungen und Darstellungen sind die Wege, die von einem Fachmann der Datenverarbeitung verwendet werden, um die Substanz seiner Arbeit einem anderen Fachmann am effektivsten zu vermitteln. Ein Algorithmus ist hier und im Allgemeinen konzipiert, eine selbstkonsistente Abfolge an Vorgängen zu sein, die zu einem gewünschten Ergebnis führt. Die Vorgänge sind diejenigen, die physische Manipulationen physischer Mengen erfordern. In der Regel, aber nicht zwingend, nehmen diese Größen die Form von elektrischen oder magnetischen Signalen an, die dazu in der Lage sind, gespeichert, kombiniert, verglichen und anderweitig manipuliert zu werden. Es hat sich manchmal als praktisch erwiesen, hauptsächlich aus Gründen der gewöhnlichen Verwendung, diese Signale als Bits, Werte, Elemente, Symbole, Charakter, Begriffe, Zahlen oder dergleichen zu bezeichnen.
-
Es sollte jedoch berücksichtigt werden, dass all diese und ähnliche Begriffe mit den angemessenen physischen Größen zu assoziieren sind und lediglich praktische Etiketten sind, die auf diese Größen angewandt werden. Die vorliegende Offenbarung kann die Handlung und Prozesse eines Computersystems oder einer ähnlichen elektronischen Computereinrichtung betreffen, die Daten, die als physische (elektronische) Größen innerhalb der Register und Speicher des Computersystems dargestellt sind, manipuliert und in andere Daten umwandelt, die ähnlich als physische Größen innerhalb der Speicher oder Register des Computersystems oder anderer solcher Informationsspeichersysteme dargestellt sind.
-
Die vorliegende Offenbarung bezieht sich außerdem auf eine Vorrichtung zum Durchführen der Vorgänge in dieser Schrift. Diese Vorrichtung kann speziell für die beabsichtigten Zwecke konstruiert sein oder sie kann einen Allzweckcomputer beinhalten, der durch ein im Computer gespeichertes Computerprogramm wahlweise aktiviert oder neu konfiguriert wird. Ein derartiges Computerprogramm kann in einem computerlesbaren Speichermedium gespeichert werden, wie etwa, ohne darauf beschränkt zu sein, jede Art von Festplatte, was Disketten, optische Festplatten, CD-ROM und magnetisch-optische Festplatten, Nur-Lese-Speicher (ROM), Direktzugriffsspeicher (RAM), EPROM, EEPROM, magnetische oder optische Karten oder eine beliebige Art von Medien beinhaltet, die zum Speichern elektronischer Anweisungen geeignet und jeweils an einen Computersystembus gekoppelt sind.
-
Die in dieser Schrift vorgestellten Algorithmen und Anzeigen beziehen sich nicht grundsätzlich auf einen bestimmten Computer oder eine bestimmte andere Vorrichtung. Verschiedene Allzwecksysteme können mit Programmen gemäß den in dieser Schrift enthaltenen Lehren verwendet werden, oder es kann sich als vorteilhaft erweisen, eine spezialisiertere Vorrichtung zu konstruieren, um das Verfahren durchzuführen. Die Struktur für eine Reihe dieser Systeme wird wie in der nachfolgenden Beschreibung angegeben angezeigt. Zusätzlich wird die vorliegende Offenbarung nicht unter Bezugnahme auf eine bestimmte Programmiersprache beschrieben. Es versteht sich, dass eine Reihe von Programmiersprachen verwendet werden kann, um die hierin beschriebenen Lehren der Offenbarung umzusetzen.
-
Die vorliegende Offenbarung kann als ein Computerprogrammprodukt oder eine Software bereitgestellt sein, das/die ein maschinenlesbares Medium beinhalten kann, das darauf gespeicherte Anweisungen aufweist, die verwendet werden können, um ein Computersystem (oder andere elektronische Einrichtungen) zu programmieren, um einen Prozess gemäß der vorliegenden Offenbarung durchzuführen. Ein maschinenlesbares Medium beinhaltet einen beliebigen Mechanismus zum Speichern von Informationen in einer Form, die durch eine Maschine (z. B. einem Computer) gelesen werden kann. In einigen Ausführungsformen beinhaltet ein maschinenlesbares (z. B. computerlesbares) Medium ein durch eine Maschine (z. B. einen Computer) lesbares Speichermedium, wie etwa einen Festwertspeicher („ROM“), einen Direktzugriffsspeicher („RAM“), magnetische Festplattenspeichermedien, optische Speichermedien, Flash-Speicherkomponenten usw.
-
In dieser Beschreibung können verschiedene Funktionen und Vorgänge so beschrieben sein, dass sie durch Computeranweisungen durchgeführt oder veranlasst werden, um die Beschreibung zu vereinfachen. Der Fachmann wird jedoch erkennen, dass mit solchen Ausdrücken gemeint ist, dass die Funktionen aus der Ausführung der Computeranweisungen durch eine oder mehrere Steuerungen oder einen oder mehrere Prozessoren, wie beispielsweise einen Mikroprozessor, resultieren. Alternativ oder in Kombination können die Funktionen und Vorgänge unter Verwendung von Spezialschaltkreisen mit oder ohne Softwareanweisungen implementiert sein, wie etwa unter Verwendung einer anwendungsspezifischen integrierten Schaltung (ASIC) oder eines feldprogrammierbaren Gate-Arrays (FPGA). Ausführungsformen können unter Verwendung fest verdrahteter Schaltkreise ohne Softwareanweisungen oder in Kombination mit Softwareanweisungen umgesetzt sein. Somit sind die Techniken weder auf eine bestimmte Kombination von Hardware-Schaltung und Software noch auf eine bestimmte Quelle für die von dem Datenverarbeitungssystem ausgeführten Anweisungen beschränkt.
-
In der vorstehenden Beschreibung wurden Ausführungsformen der Offenbarung unter Bezugnahme auf spezifische beispielhafte Ausführungsformen davon beschrieben. Es versteht sich, dass verschiedene Modifikationen daran vorgenommen werden können, ohne von dem weiteren Geist und Schutzumfang der Offenbarung abzuweichen, wie sie in den folgenden Patentansprüchen dargelegt sind. Die Beschreibung und die Zeichnungen sind dementsprechend in einem veranschaulichenden und nicht in einem einschränkenden Sinne zu verstehen.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-