DE102017006558A1 - Semantische lnstanzebenensegmentierung - Google Patents

Semantische lnstanzebenensegmentierung Download PDF

Info

Publication number
DE102017006558A1
DE102017006558A1 DE102017006558.6A DE102017006558A DE102017006558A1 DE 102017006558 A1 DE102017006558 A1 DE 102017006558A1 DE 102017006558 A DE102017006558 A DE 102017006558A DE 102017006558 A1 DE102017006558 A1 DE 102017006558A1
Authority
DE
Germany
Prior art keywords
training
bounding
medium
pixel
bounding box
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE102017006558.6A
Other languages
English (en)
Other versions
DE102017006558B4 (de
Inventor
Brian Price
Scott Cohen
Jimei Yang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of DE102017006558A1 publication Critical patent/DE102017006558A1/de
Application granted granted Critical
Publication of DE102017006558B4 publication Critical patent/DE102017006558B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Image Analysis (AREA)

Abstract

Bestimmte Aspekte implizieren eine semantische Segmentierung von Objekten in einem digitalen visuellen Medium durch Bestimmen eines Kennwertes für jedes Pixel des digitalen visuellen Mediums, der eine Wahrscheinlichkeit dafür darstellt, dass jedes Pixel den Objekten, die mit Begrenzungsrahmen innerhalb des digitalen visuellen Mediums verknüpft sind, entspricht. Eine Instanzebenenmarkierung, die eine Markierung für jedes der Pixel des digitalen visuellen Mediums entsprechend den Objekten ergibt, wird teilweise auf Grundlage einer den Kennwert für jedes Pixel des digitalen visuellen Mediums beinhaltenden Kollektivwahrscheinlichkeitsabbildung bestimmt. Bei einigen Aspekten wird der Kennwert für jedes Pixel entsprechend jedem Begrenzungsrahmen durch ein Vorhersagemodell, das von einem neuronalen Netzwerk trainiert wird, bestimmt.

Description

  • Technisches Gebiet
  • Die vorliegende Offenbarung betrifft allgemein computerimplementierte Verfahren und Systeme zur digitalen Bildverarbeitung und insbesondere die semantische Segmentierung von digitalen Medien auf einer Instanzebene.
  • Hintergrund
  • Mit den Fortschritten bei Digitalkameras, Smartphones und anderen Technologien haben auch die Fähigkeiten beim Erfassen und Nutzen von Bildern und Zugreifen auf diese beständig zugenommen. Insbesondere verwenden heutzutage Firmen auf Onlineplattformen routinemäßig digitale visuelle Medien für Präsentationen, Anzeigen, Personalwerbung, Merchandising und zu anderen Zwecken. Auf ähnliche Weise verwenden Einzelpersonen heutzutage routinemäßig digitale visuelle Medien zu Zwecken der Kommunikation, Unterhaltung oder Arbeit.
  • Die zunehmend verbreitete Verwendung von digitalen visuellen Medien hat zu einer Zunahme bei der Verwendung von Systemen und Verfahren zum Verarbeiten von derartigen visuellen Medien geführt (beispielsweise zur Modifikation oder Manipulation eines digitalen Bildes oder Videos). So kann ein digitales Bild beispielsweise Merkmale oder Objekte (beispielsweise eine Person, ein Haustier, ein Auto und dergleichen) beinhalten, die ein Nutzer auswählen und bewegen, modifizieren, kopieren, einfügen oder hinsichtlich der Größe verändern will. Als Reaktion auf dieses Bedürfnis von Nutzern sind einige Digitalobjektauswahlsysteme entwickelt worden, die ermöglichen, dass ein Nutzer Objekte innerhalb eines digitalen visuellen Mediums (beispielsweise eines Digitalbildes) identifiziert, auswählt und markiert. Bei einigen derartigen Systemen kann die Identifizierung eines Objektes in einem digitalen visuellen Medium einen Prozess beinhalten, der wenigstens teilweise automatisiert ist.
  • Bei einem Beispiel verwendet ein herkömmliches System Verfahren zur Detektion (das heißt zum Identifizieren eines Objektes in einem Medium) und Segmentierung (beispielsweise zur Unterteilung des Mediums in Segmente entsprechend dem Objekt), die das Erzeugen einer Anzahl von Begrenzungsrahmen (bounding boxes) für eine Instanz eines Objektes beinhalten. Die Begrenzungsrahmen beinhalten Rechtecke (oder Quadrate), die einen Satz von Pixeln definieren, die dem Ort wenigstens eines Abschnittes des Objektes entsprechen. Die Segmentierung wird auf Grundlage der gegebenen Begrenzungsrahmen berechnet. Dieser Lösungsansatz erlaubt für eine gegebene Objektinstanz mehrere Segmentierungen. Der Lösungsansatz gibt zudem oftmals mehrere überlappende Kandidaten für eine einzelne Objektinstanz aus, wobei verschiedene Klassenmarkierungen bei jeder der von der Segmentierung bestimmten Instanzen zum Einsatz kommen. Die verschiedenen Klassenmarkierungen können zu einer falschen Markierung des Objektes führen. Daher versagt dieser Lösungsansatz bei der Erstellung einer tatsächlichen instanzbasierten Segmentierung eines Bildes.
  • Bei einem weiteren Beispiel verwendet ein herkömmliches System ein semantisches Segmentierungsverfahren, das alle Pixel einer gegebenen Objektklasse markiert. Bei einem gegebenen Digitalbild, das beispielsweise drei Menschen beinhaltet, markiert das System alle Pixel, die den drei Menschen entsprechen, als „Personen“-Klasse, ohne die Personen voneinander zu unterscheiden. Auf ähnliche Weise bieten, wenn eine Person auf dem Bild eine andere Person berührt (wenn also beispielsweise zwei Personenobjekte überlappen), herkömmliche Systeme keine Möglichkeit, diese voneinander zu trennen, was eine Darstellung (beispielsweise eine Bildmaske) ergibt, die beiden Menschen anstatt jeder Person einzeln als individuellem Zielobjekt entspricht.
  • Bestehende Segmentierungslösungsalgorithmen können daher (unter anderem) die vorstehend beschriebenen Nachteile aufweisen.
  • Zusammenfassung
  • Ein exemplarischer Aspekt der vorliegenden Offenbarung impliziert die semantische Segmentierung von Zielobjekten in einem digitalen visuellen Medium auf einer Instanzebene. Eine Verarbeitungsvorrichtung empfängt beispielsweise einen Satz von Begrenzungsrahmen, der einem Satz von Zielobjekten in einem digitalen visuellen Medium entspricht. Für jeden der Begrenzungsrahmen bestimmt die Verarbeitungsvorrichtung einen Kennwert für jedes Pixel des digitalen visuellen Mediums. Der Kennwert stellt eine Wahrscheinlichkeit dafür dar, dass jedes Pixel den Zielobjekten, die den Begrenzungsrahmen entsprechen, entspricht. Die Verarbeitungsvorrichtung erzeugt eine Instanzebenenmarkierung, die eine Markierung für jedes der Pixel des digitalen visuellen Mediums entsprechend den Zielobjekten teilweise auf Grundlage einer Kollektivwahrscheinlichkeitsabbildung, die den Kennwert für jedes Pixel des digitalen visuellen Mediums beinhaltet, ergibt.
  • Ein weiterer exemplarischer Aspekt der vorliegenden Offenbarung impliziert ein automatisches Segmentieren eines digitalen visuellen Mediums. Eine Verarbeitungsvorrichtung empfängt beispielsweise ein digitales visuelles Medium mit einem ersten Begrenzungsrahmen entsprechend einem Objekt innerhalb eines digitalen visuellen Mediums. Die Verarbeitungsvorrichtung erzeugt auf Grundlage des ersten Begrenzungsrahmens einen Satz von zusätzlichen Begrenzungsrahmen entsprechend dem Objekt innerhalb des digitalen visuellen Mediums. Der erste Begrenzungsrahmen und die zusätzlichen Begrenzungsrahmen bilden in Kombination einen Begrenzungsrahmensatz. Die Verarbeitung erzeugt zudem einen Satz von Abstandsabbildungen entsprechend dem Begrenzungsrahmensatz. Die Verarbeitungsvorrichtung konkateniert bzw. verkettet das digitale visuelle Medium mit jeder Abstandsabbildung in dem Satz von Abstandsabbildungen zum Erzeugen eines Satzes von Trainingspaaren. Ein neuronales Netzwerk wird zum Segmentieren von Pixeln des digitalen visuellen Mediums entsprechend dem Objekt auf Grundlage der Trainingspaare trainiert.
  • Die illustrativen Merkmale sind nicht zur Beschränkung oder Festlegung der Offenbarung aufgeführt, sondern stellen vielmehr Beispiele zur Förderung des Verständnisses dar. Zusätzliche Aspekte werden in der Detailbeschreibung erläutert, wobei eine weitere Beschreibung dort erfolgt.
  • Figurenliste
  • Die genannten und weitere Merkmale, Ausführungsformen und Vorteile der vorliegenden Offenbarung erschließen sich besser beim Studium der nachfolgenden Detailbeschreibung in Zusammenschau mit der begleitenden Zeichnung. Die Patent- oder Anmeldungsakte enthält wenigstens eine Zeichnungsfigur, die in Farbe ausgefertigt ist. Kopien der Veröffentlichung des Patentes oder der Patentanmeldung mit der Farbzeichnung bzw. den Farbzeichnungen werden vom Patentamt auf Antrag und nach Zahlung der entsprechenden Gebühr zur Verfügung gestellt.
    • 1 ist ein Blockdiagramm zur Darstellung eines Beispiels für eine Netzwerkumgebung zur semantischen Segmentierung von digitalen visuellen Medien entsprechend einem Aspekt der vorliegenden Offenbarung.
    • 2 ist ein Flussdiagramm zur Darstellung eines Beispiels für einen Prozess zum Trainieren eines neuronalen Netzwerkes zur Segmentierung eines digitalen visuellen Mediums entsprechend einem Aspekt der vorliegenden Offenbarung.
    • 3 ist ein Blockdiagramm zur Darstellung eines Beispiels für ein neuronales Netzwerk für den Einsatz eines Segmentierungsmodells entsprechend einem Aspekt der vorliegenden Offenbarung.
    • 4 ist ein Flussdiagramm zur Darstellung eines Beispiels für die Segmentierung eines Bildes durch ein trainiertes neuronales Netzwerk entsprechend einem Aspekt der vorliegenden Offenbarung.
    • 5 ist ein Flussdiagramm zur Darstellung eines Beispiels für einen Prozess der Instanzebenenmarkierung eines Zielobjektes in einem digitalen visuellen Medium entsprechend einem Aspekt der vorliegenden Offenbarung.
    • 6 zeigt Beispiele für Bilder, die entsprechend einem Aspekt der vorliegenden Offenbarung segmentiert und markiert sind.
    • 7 ist ein Flussdiagramm zur Darstellung eines Beispiels für einen Prozess des Bestimmens der Genauigkeit einer Instanzebenensegmentierung entsprechend einem Aspekt der vorliegenden Offenbarung.
    • 8 ist ein aufgetragener Graph zur visuellen Darstellung von Ausgabeinstanzen, die gegen Ground-Truth-Instanzen (Instanzen der direkten Beobachtung) aufgetragen sind, entsprechend einem Aspekt der vorliegenden Offenbarung.
    • 9 zeigt Beispiele für Darstellungen eines Vergleiches von Segmentierungsprozessen unter Verwendung einer Metrik entsprechend einem Aspekt der vorliegenden Offenbarung.
    • 10 ist ein Blockdiagramm eines exemplarischen Rechensystems zur semantischen Segmentierung von digitalen visuellen Medien entsprechend einem Aspekt der vorliegenden Offenbarung.
  • Detailbeschreibung
  • Bestimmte Aspekte implizieren Systeme, Verfahren und computerlesbare Medien, die Techniken zur Segmentierung eines digitalen visuellen Mediums aus einem Begrenzungsrahmen in dem digitalen visuellen Medium und zur passenden Markierung einer jeden Instanz eines Zielobjektes auf einer Pixelebene einsetzen. Wie vorstehend erläutert worden ist, können herkömmliche Lösungen zur Bildsegmentierung mehrere Segmente für eine gegebene Objektinstanz erzeugen. Bestimmte hier beschriebene Aspekte erzeugen ein einziges Segment entsprechend einer Objektinstanz durch Trainieren eines neuronalen Netzwerkes zum Detektieren und Segmentieren des Objektes unter Verwendung eines mit dem Objekt verknüpften Begrenzungsrahmens. Der Begrenzungsrahmen kann einen vieleckigen Rahmen beinhalten, der das Objekt umgibt, mit dem Objekt überlappt oder auf andere Weise mit dem Objekt in dem digitalen visuellen Medium verknüpft ist, um einen Satz von Pixeln zu definieren, die mit einem Ort des Objektes in dem Medium verknüpft sein können. Bei einem Aspekt wird eine Segmentierung durch ein System unter Verwendung eines neuronalen Netzwerkes eingesetzt, das durch einen randomisierten Satz von Begrenzungsrahmen für ein Zielobjekt trainiert wird. Das neuronale Netzwerk beinhaltet ein Faltungscodierer-/Decodierernetzwerk und setzt die Begrenzungsrahmen bei dem neuronalen Netzwerk ein, um eine Binärmaske entsprechend dem Zielobjekt zu bilden. Sobald das neuronale Netzwerk trainiert ist, wird ein digitales visuelles Medium (beispielsweise ein Bild), das den Zielobjekten entsprechende Begrenzungsrahmen beinhaltet, in das neuronale Netzwerk eingegeben. Das System bestimmt einen Kennwert entsprechend der Wahrscheinlichkeit dafür, dass jedes Pixel eines jeden der Begrenzungsrahmen dem jeweiligen Zielobjekt entspricht. Die Kennwerte erzeugen eine Wahrscheinlichkeitsabbildung für jeden der Begrenzungsrahmen. Gewichtungen werden bei der Wahrscheinlichkeitsabbildung für jeden Begrenzungsrahmen auf Grundlage eines Klassenkennwertes (beispielsweise eines Wertes, der einer Wahrscheinlichkeit dafür entspricht, dass ein Pixel zu einer bestimmten Klasse gehört), der mit jedem Begrenzungsrahmen verknüpft ist, angewendet. Eine Kollektivwahrscheinlichkeitsabbildung wird aus den Wahrscheinlichkeitsabbildungen für jeden der Begrenzungsrahmen bestimmt, um eine Instanzebenenmarkierung der Zielobjekte in dem digitalen visuellen Medium zu erzeugen. Bei einigen Aspekten werden die Pixel als Teil einer Optimierung, so beispielsweise als dichtes Conditional-Random-Feld markiert.
  • Bei einem Beispiel wird ein neuronales Faltungsnetzwerk trainiert, um einen Begrenzungsrahmen entsprechend dem Zielobjekt zu empfangen und die Genauigkeit der Segmentierung für das Zielobjekt zu bestimmen. Der Begrenzungsrahmen wird durch eine Nutzereingabe oder auch durch vorherige Bildverarbeitungsverfahren (beispielsweise durch einen Detektionsalgorithmus) empfangen. Das neuronale Netzwerk wird mit Begrenzungsrahmen variierender Genauigkeiten für das Zielobjekt trainiert. Eine Kreativeinrichtung oder ein anderes geeignetes System, das das neuronale Netzwerk implementiert, erzeugt beispielsweise zusätzliche Begrenzungsrahmen für das Zielobjekt. Die zusätzlichen Begrenzungsrahmen werden mit beliebigen Dimensionen bzw. Abmessungen auf Grundlage des gegebenen Begrenzungsrahmens erzeugt. Das System erzeugt sodann Abstandsabbildungen entsprechend jedem der Begrenzungsrahmen und konkateniert bzw. verkettet das digitale visuelle Medium mit jeder der Abstandsabbildungen zur Erzeugung von Trainingspaaren zur Eingabe in das neuronale Netzwerk. Das System trainiert das Netzwerk sodann unter Verwendung der Trainingspaare zur Erzeugung von Binärmasken des Zielobjektes.
  • Entsprechend wird das Segmentierungsmodell des neuronalen Netzwerkes derart trainiert, dass es eine hohe Toleranz hinsichtlich der Platzierung und der Abmessungen bzw. Dimensionen des Begrenzungsrahmens aufweist. Insbesondere kann eine gewünschte Segmentierung eines Zielobjektes unter eingeschränkter Berücksichtigung der Positionsbeziehung zwischen dem Zielobjekt und dem jeweiligen Begrenzungsrahmen bestimmt werden. Das Zielobjekt kann beispielsweise gänzlich innerhalb eines Begrenzungsrahmens, teilweise innerhalb eines Begrenzungsrahmens oder auch außerhalb des Begrenzungsrahmens befindlich sein. Die Fähigkeit des Segmentierungsmodells, das Zielobjekt bei jedem dieser Szenarios zu segmentieren, rührt daher, dass die eingesetzte Trainingsstrategie auf einem neuronalen Netzwerk beruht. Das trainierte neuronale Netzwerk empfängt anschließend Begrenzungsrahmen und ergibt eine Einzelsegmentierung des digitalen visuellen Mediums. Bei einigen Aspekten stellt dies eine Verbesserung gegenüber herkömmlichen Systemen bereit, die detektionsbasierte Instanzsegmentierungsverfahren einsetzen, die mehrere überlappende und redundante Segmentierungen erzeugen.
  • Die Instanzebenensegmentierungsverfahren entsprechend Aspekten der vorliegenden Offenbarung ermöglichen im Gegensatz zu herkömmlichen Instanzsegmentierungsverfahren (beispielsweise Systemen, die ein abrufbasiertes Verfahren verwenden) ein Markieren der Pixel eines Zielobjektes sowohl entsprechend der mit dem Zielobjekt verknüpften Klasse wie auch Instanz. Insbesondere ermöglichen die Verringerung der Anzahl von Begrenzungsrahmen und die Anwendung von Gewichtungen bei den Begrenzungsrahmen auf Grundlage eines Klassenkennwertes, dass das System eine Klasse, die mit einem Zielobjekt verknüpft ist, vorhersagt und zudem zwischen mehreren Zielobjekten in einem visuellen Medium derselben Klasse unterscheidet.
  • In der Zeichnung ist 1 ein Diagramm einer Netzwerkumgebung 100, in der ein oder mehrere Aspekte der vorliegenden Offenbarung umgesetzt sein können. Die Umgebung 100 beinhaltet Nutzervorrichtungen, so beispielsweise Nutzervorrichtungen 102A bis 102N. Jede der Nutzervorrichtungen ist über ein Netzwerk 106 entweder mit einer Kreativeinrichtung 108 oder einer Marketingeinrichtung oder auch mit beiden verbunden. Ein Nutzer der Nutzervorrichtungen nutzt über das Netzwerk 106 verschiedene Produkte, Apps bzw. Anwendungen oder Dienste, die von der Kreativeinrichtung 108 unterstützt werden.
  • Die Nutzervorrichtung entspricht verschiedenen Nutzern. Beispiele für Nutzer beinhalten unter anderem Berufskreative oder kreative Amateure, die Kreativwerkzeuge verwenden, um Content bzw. Inhalt zu erzeugen, zu bearbeiten, zu verfolgen oder zu verwalten, Marketingfachleute, die Marketingwerkzeuge verwenden, um Onlinecontent bzw. Inlineinhalt zu erzeugen, zu bearbeiten, zu verfolgen oder zu verwalten oder auch um Onlinemarketingprozesse zu verwalten, Endnutzer, Administratoren, Nutzer, die Bildwerkzeuge verwenden, um Bilder zu erstellen, zu bearbeiten, zu verfolgen oder zu verwalten, Werbetreibende, Verlage, Entwickler, Content- bzw. Inhaltsinhaber, Content- bzw. Inhaltsverwalter, Content- bzw. Inhaltsersteller, Content- bzw. Inhaltsbetrachter, Content- bzw. Inhaltskonsumenten, Designer, Editoren oder eine beliebige Kombination aus diesen Nutzern oder auch einen beliebigen anderen Nutzer, der Digitalwerkzeuge verwendet, um digitale Vorgänge (digital experiences) zu erstellen, zu bearbeiten, zu verfolgen oder zu verwalten.
  • Digitalwerkzeuge beinhalten im Sinne der vorliegenden Beschreibung ein Werkzeug, das zur elektronischen Wahrnehmung einer Funktion oder Durchführung eines Arbeitsablaufes verwendet wird. Beispiele für ein Digitalwerkzeug beinhalten unter anderem ein Erstellungswerkzeug, ein Content- bzw. Inhaltsbearbeitungswerkzeug, ein Content- bzw. Inhaltsveröffentlichungswerkzeug, ein Content- bzw. Inhaltsverfolgungswerkzeug, ein Content- bzw. Inhaltsverwaltungswerkzeug, ein Content- bzw. Inhaltsdruckwerkzeug, ein Content- bzw. Inhaltskonsumwerkzeug, eine beliebige Kombination aus diesen Werkzeugen oder ein beliebiges anderes Werkzeug, das zum Erstellen, Bearbeiten, Verwalten, Erzeugen, Verfolgen, Konsumieren oder Wahrnehmen einer beliebigen anderen Funktion oder Durchführen eines beliebigen anderen Arbeitsablaufes im Zusammenhang mit dem Content bzw. Inhalt verwendet wird. Digitalwerkzeuge beinhalten die Kreativeinrichtung 108. Ein digitaler Vorgang beinhaltet im Sinne des Vorliegenden einen Vorgang, der von einer elektronischen Vorrichtung konsumiert werden kann. Beispiele für ein digitalen Vorgang beinhalten die Content- bzw. Inhaltserstellung, die Content- bzw. Inhaltsbearbeitung, die Content- bzw. Inhaltsverfolgung, die Content- bzw. Inhaltsveröffentlichung, das Posten von Content bzw. Inhalt, das Content- bzw. Inhaltsdrucken, das Content- bzw. Inhaltsverwalten, das Content- bzw. Inhaltsbetrachten, das Content- bzw. Inhaltskonsumieren, eine beliebige Kombination aus diesen Vorgängen oder auch einen beliebigen anderen Arbeitsablauf oder eine Funktion, die im Zusammenhang mit dem Content bzw. Inhalt auftreten kann. Content bzw. Inhalt beinhaltet im Sinne des Vorliegenden elektronischen Content bzw. Inhalt. Beispiele für Content bzw. Inhalt beinhalten unter anderem Bilder, Videos, Websites, Webpages, Nutzerschnittstellen, Menüobjekte, Werkzeugmenüs, Magazine, Diashows, Animationen, Postings in sozialen Netzwerken (social post), Kommentare, Blogs, Datenfeeds, Audioobjekte, Anzeigen, Vektorgrafiken, Bitmaps, Dokumente, eine beliebige Kombination aus einem oder mehreren Contents bzw. Inhalten oder einen beliebigen anderen elektronischen Content bzw. Inhalt.
  • Beispiele für Nutzervorrichtungen beinhalten unter anderem einen Personalcomputer (PC), einen Tabletcomputer, einen Desktopcomputer, eine Verarbeitungseinheit, eine beliebige Kombination aus diesen Vorrichtungen oder eine beliebige andere geeignete Vorrichtung mit einem oder mehreren Prozessoren. Jede Nutzervorrichtung beinhaltet wenigstens eine Anwendung, die von der Kreativeinrichtung 108 unterstützt wird. Es sollte einsichtig sein, dass die nachfolgende Beschreibung anhand der Nutzervorrichtung 102A als Beispiel erfolgt und dass auch eine andere Nutzervorrichtung Verwendung finden kann. Beispiele für das Netzwerk 106 beinhalten unter anderem das Internet, ein Ortsbereichsnetzwerk (LAN), ein drahtloses Bereichsnetzwerk, ein drahtgebundenes Bereichsnetzwerk, ein Großbereichsnetzwerk und dergleichen.
  • Die Kreativeinrichtung 108 beinhaltet eine oder mehrere Engines zur Bereitstellung eines oder mehrerer digitaler Vorgänge für den Nutzer. Die Kreativeinrichtung 108 kann unter Verwendung eines oder mehrerer Server, einer oder mehrerer Verarbeitungsvorrichtungen, einer oder mehrerer Plattformen mit entsprechenden Anwendungsprogrammierschnittstellen, einer Cloudinfrastruktur oder dergleichen implementiert sein. Darüber hinaus kann jede Engine auch unter Verwendung eines oder mehrerer Server, einer oder mehrerer Verarbeitungsvorrichtungen, einer oder mehrerer Plattformen mit entsprechenden Anwendungsprogrammierschnittstellen, einer Cloudinfrastruktur oder dergleichen implementiert sein. Die Kreativeinrichtung 108 beinhaltet zudem eine Datenspeichereinheit 112. Die Datenspeichereinheit 112 kann als eine oder mehrere Datenbanken oder auch als ein oder mehrere Datenserver implementiert sein. Die Datenspeichereinheit 112 beinhaltet Daten, die von den Engines der Kreativeinrichtung 108 verwendet werden.
  • Ein Nutzer der Nutzervorrichtung 102A besucht eine Webpage oder einen Appstore, um Apps bzw. Anwendungen ausfindig zu machen, die von der Kreativeinrichtung 108 unterstützt werden. Die Kreativeinrichtung 108 stellt die Anwendungen als „Software as a Service“ (SaaS, Software als Dienst) oder als eigenständige Anwendung, die auf der Nutzervorrichtung 102A installiert werden kann, oder auch als Kombination aus beidem bereit. Der Nutzer richtet bei der Kreativeinrichtung 108 einen Account ein, indem er Nutzerdetails bereitstellt und Logindetails erzeugt. Alternativ kann die Kreativeinrichtung 108 auch automatisch Logindetails für den Nutzer in Reaktion auf den Empfang der Nutzerdetails erstellen. Bei einigen Aspekten wird der Nutzer zudem aufgefordert, einen Anwendungsverwalter zu installieren. Der Anwendungsverwalter ermöglicht, dass der Nutzer die Installation von verschiedenen Anwendungen verwaltet, die von der Kreativeinrichtung 108 unterstützt werden, und auch andere Funktionalitäten, so beispielsweise Aktualisierungen, einen Teilnehmeraccount und dergleichen, im Zusammenhang mit den Anwendungen verwaltet. Die Nutzerdetails werden von einer Nutzerverwaltungsengine 116 empfangen und als Nutzerdaten 118 in der Datenspeichereinheit 112 gespeichert. Bei einigen Aspekten beinhalten die Nutzerdaten 118 des Weiteren Accountdaten 120, unter denen die Nutzerdetails gespeichert sind.
  • Der Nutzer kann sich entweder für einen Probeaccount entscheiden oder eine Zahlung tätigen, was von der vom Nutzer gewählten Art des Accounts und der Teilnahme abhängt. Alternativ kann die Zahlung auf dem Produkt oder der Anzahl von Produkten, das/die der Nutzer wählt, beruhen. Auf Grundlage von Zahlungsdetails des Nutzers wird ein Nutzerbetriebsprofil 122 von der Berechtigungsengine 124 erzeugt. Das Nutzerbetriebsprofil 122 wird in der Datenspeichereinheit 112 gespeichert und gibt die Berechtigung eines Nutzers, verschiedene Produkte oder Dienste zu nutzen, an. Das Nutzerbetriebsprofil 122 gibt zudem die Art der Nutzung an, das heißt gratis, probeweise, als Student, preisreduziert oder bezahlt.
  • Bei einem Aspekt können die Nutzerverwaltungsengine 116 und die Berechtigungsengine 124 eine einzige Engine sein, die die Funktionalitäten der beiden Engines wahrnimmt.
  • Der Nutzer installiert sodann verschiedene Anwendungen, die von der Kreativeinrichtung 108 unterstützt werden, über eine Anwendungsdownloadverwaltungsengine 126. Anwendungsinstallierer oder Anwendungsprogramme 128, die in der Datenspeichereinheit 112 vorhanden sind, werden von der Anwendungsdownloadverwaltungsengine 126 abgerufen und direkt oder über den Anwendungsverwalter für den Nutzer verfügbar gemacht. Bei einem Aspekt werden sämtliche Anwendungsprogramme 128 abgerufen und über eine Schnittstelle des Anwendungsverwalters für den Nutzer bereitgestellt. Bei einem weiteren Aspekt werden dem Nutzer Anwendungsprogramme 128, für die der Nutzer auf Grundlage des Nutzerbetriebsprofils ausgewählt werden kann, angezeigt. Der Nutzer wählt sodann die Anwendungsprogramme 128 oder die Anwendungen, die er herunterladen will, aus. Die Anwendungsprogramme 128 werden sodann durch den Anwendungsverwalter über die Anwendungsdownloadverwaltungsengine 126 auf die Nutzervorrichtung 102A heruntergeladen. Entsprechende Daten im Zusammenhang mit dem Download werden in dem Nutzerbetriebsprofil 122 aktualisiert. Ein Anwendungsprogramm 128 ist ein Beispiel für das Digitalwerkzeug. Die Anwendungsdownloadverwaltungsengine 126 verwaltet zudem einen Prozess des Bereitstellens von Updates für die Nutzervorrichtung 102A.
  • Bei Download, Installation und Start eines Anwendungsprogramms wird der Nutzer bei einem Aspekt gebeten, Logindetails bereitzustellen. Es wird erneut eine Prüfung durch die Nutzerverwaltungsengine 116 und die Berechtigungsengine 124 vorgenommen, um sicherzustellen, dass der Nutzer zur Nutzung des Anwendungsprogramms berechtigt ist. Bei einem anderen Aspekt wird dem Anwendungsprogramm ein direkter Zugang gewährt, wenn der Nutzer bereits in dem Anwendungsverwalter eingeloggt ist.
  • Der Nutzer verwendet ein oder mehrere Anwendungsprogramme 128 zum Erstellen eines oder mehrerer Projekte oder Assets. Darüber hinaus verfügt der Nutzer innerhalb eines jeden Anwendungsprogramms über einen Arbeitsbereich. Der Arbeitsbereich beinhaltet im Sinne der vorliegenden Beschreibung die Einstellungen des Anwendungsprogramms, die Einstellungen der Werkzeuge oder die Einstellungen der Nutzerschnittstelle, die von dem Anwendungsprogramm bereitgestellt werden, und eine beliebige andere Einstellung oder beliebige andere Eigenschaften, die für das Anwendungsprogramm spezifisch sind. Jeder Nutzer verfügt über einen Arbeitsbereich. Der Arbeitsbereich, die Projekte oder die Assets werden sodann als Anwendungsprogrammdaten 130 in der Datenspeichereinheit 112 durch eine Synchronisierungsengine 132 gespeichert. Die Anwendungsprogrammdaten 130 können für den Nutzer spezifisch sein oder auch auf Grundlage einer Rechteverwaltung mit anderen Nutzern geteilt werden.
  • Die Anwendungsprogrammdaten 130 beinhalten ein oder mehrere Assets 140. Die Assets 140 können ein gemeinsam genutztes Asset sein, das der Nutzer mit anderen Nutzern zu teilen wünscht oder das der Nutzer auf einem Marktplatz anbieten will. Die Assets 140 können auch über mehrere Anwendungsprogramme 128 hinweg geteilt werden. Jedes Asset beinhaltet Metadaten 142. Beispiele für die Metadaten 142 beinhalten unter anderem Zeichensatz, Farbe, Größe, Form, Koordinaten, eine beliebige Kombination hieraus und dergleichen. Zusätzlich beinhaltet jedes Asset bei einem Aspekt zudem eine Datei. Beispiele für die Datei beinhalten unter anderem ein Bild 144, einen Text 146, ein Video 148, einen Zeichensatz 150, ein Dokument 152, eine Kombination hieraus oder dergleichen. Bei einem anderen Aspekt beinhaltet ein Asset lediglich die Metadaten 142. Die Anwendungsprogrammdaten 130 beinhalten zudem Projektdaten 154 und Arbeitsbereichsdaten 156. Bei einem Aspekt beinhalten die Projektdaten 154 die Assets 140. Bei einem weiteren Aspekt sind die Assets 140 eigenständige Assets. Auf ähnliche Weise können die Arbeitsbereichsdaten 156 bei einem Aspekt Teil der Projektdaten 154 sein, während sie bei einem anderen Aspekt eigenständig sind.
  • Eine Segmentierungsengine 103 wird zum Manipulieren eines oder mehrerer der Assets 140 verwendet. Die Segmentierungsengine 103 setzt beispielsweise ein neuronales Netzwerk oder andere geeignete Mittel ein, um ein digitales visuelles Medium (beispielsweise das Bild 144, das Video 148) zu segmentieren und Zielobjekte innerhalb des digitalen visuellen Mediums auf einer Instanz oder einem Pixel, einer Ebene, zu markieren. Insbesondere bestimmt die Segmentierung bzw. Segmentierungsengine 103 entsprechend einigen Aspekten die Genauigkeit von Segmentierungen bei gegebenem Begrenzungsrahmen aus einem Detektionsalgorithmus, wandelt mehrere potenziell überlappende detektionsbasierte Segmentierungen in eine Instanzebenenmarkierung des Mediums um und bewertet die Genauigkeit des Ergebnisses unter Verwendung einer Bewertungsmetrik, die dafür konfiguriert ist, sowohl mit der Ausgabe der detektionsbasierten wie auch der semantischen segmentierungsbasierten Verfahren umzugehen. Die Bewertungsmetrik erstellt beispielsweise eine Eins-zu-Eins-Abbildung des Ergebnisses und von Ground-Truth-Instanzen, ohne dass irgendwelche Schnitt-durch-Vereinigung-Schwellen (intersection-over-union threshold) oder Detektionskennwerte erforderlich wären. Im Sinne des Vorliegenden bezeichnet „Segment“ oder „Segmentierung“ einen Prozess des Unterteilens von digitalen visuellen Medien in mehrere Bereiche oder Sätze von Pixeln. Bei einigen Aspekten besteht das Ziel der Segmentierung in der Vereinfachung oder Änderung der Darstellung eines Bildes zu etwas, das aussagekräftiger und leichter zu analysieren ist (beispielsweise mit Blick auf den Ort von Objekten oder Grenzen in einem Bild oder Video). Bei einigen Aspekten ist das Ergebnis der Segmentierung ein Satz von Pixeln (beispielsweise eine Maske), die ein Objekt oder Grenzen in dem visuellen Medium identifizieren. Bei anderen Aspekten verwendet die Segmentierungsengine 103 zudem ein neuronales Netzwerk oder ein anderes geeignetes Mittel zur Kategorisierung oder Markierung von identifizierten Objekten auf Grundlage einer Kategorie oder Klasse, die mit dem Objekt verknüpft ist (beispielsweise „Auto“, „Person“, „Bus“ und dergleichen mehr). Die Segmentierungsengine 103 identifiziert und markiert beispielsweise jede Instanz oder ein Pixel eines identifizierten Objektes auf Grundlage einer dem Objekt zugewiesenen Klasse. Bei einem weiteren Beispiel verwendet die Segmentierungsengine 103 das neuronale Netzwerk oder ein anderes geeignetes Mittel zur Unterscheidung zwischen Objekten innerhalb desselben visuellen Mediums und mit derselben Klasse, die mit den Objekten verknüpft ist (beispielsweise „Auto 1“ versus „Auto 2“, „Person 1“ versus „Person 2“).
  • Der Nutzer kann über eine oder mehrere Nutzervorrichtungen verfügen. Die Anwendungsprogrammdaten 130 sind für den Nutzer von einer beliebigen Vorrichtung aus zugänglich, darunter einer Vorrichtung, die nicht zur Erstellung der Assets 140 verwendet worden ist. Dies wird von der Synchronisierungsengine 132 bewerkstelligt, die die Anwendungsprogrammdaten 130 in der Datenspeichereinheit 112 speichert und die Anwendungsprogrammdaten 130 für einen Zugriff durch den Nutzer oder durch andere Nutzer über eine beliebige Vorrichtung zugänglich macht. Vor einem Zugriff auf die Anwendungsprogrammdaten 130 durch den Nutzer von einer anderen Vorrichtung oder durch einen anderen Nutzer muss der Nutzer oder der andere Nutzer gegebenenfalls Logindetails zur Authentifizierung bereitstellen, wenn er noch nicht eingeloggt ist. In anderen Fällen werden, wenn der Nutzer oder der andere Nutzer eingeloggt ist, ein neu erstelltes Asset oder Aktualisierungen an den Anwendungsprogrammdaten 130 in Echtzeit bereitgestellt. Die Arbeitsbereichsdaten 156 ermöglichen, dass die Synchronisierungsengine 132 dieselbe Arbeitsbereichskonfigurierung für den Nutzer auf einer beliebigen anderen Vorrichtung oder für den anderen Nutzer auf Grundlage von Rechteverwaltungsdaten bereitstellt.
  • Bei verschiedenen Aspekten können verschiedene Arten von Synchronisierung erreicht werden. Der Nutzer kann beispielsweise einen Zeichensatz oder eine Farbe von der Nutzervorrichtung 102A unter Verwendung eines ersten Anwendungsprogramms auswählen und den Zeichensatz oder die Farbe in einem zweiten Anwendungsprogramm auf einer anderen Vorrichtung verwenden. Teilt der Nutzer den Zeichensatz oder die Farbe mit anderen Nutzern, so können auch die anderen Nutzer den Zeichensatz oder die Farbe nutzen. Bei einigen Aspekten erfolgt die Synchronisierung in Echtzeit. Auf ähnliche Weise kann die Synchronisierung eines beliebigen Typs der Anwendungsprogrammdaten 130 durchgeführt werden.
  • Segmentierung
  • 2 ist ein Flussdiagramm 200 eines exemplarischen Prozesses zum Trainieren eines neuronalen Netzwerkes zur Segmentierung eines digitalen visuellen Mediums entsprechend einem Aspekt der vorliegenden Offenbarung.
  • Bei Block 202 wird ein Ground-Truth-Bild empfangen, das einen Begrenzungsrahmen beinhaltet, der einem Zielobjekt innerhalb des Ground-Truth-Bildes entspricht. Bei einigen Aspekten wird das Ground-Truth-Bild von einem neuronalen Netzwerk empfangen. Die Segmentierungsengine 103 der Kreativeinrichtung 108 setzt beispielsweise ein neuronales Netzwerk ein, um ein eingegebenes visuelles Medium zu empfangen und eine Maske zur Darstellung von Pixeln eines Zielobjektes innerhalb des visuellen Mediums darzustellen. Der Begrenzungsrahmen kann manuell durch den Nutzer oder die Entität zu dem Ground-Truth-Bild hinzugefügt werden, kann automatisch durch die Kreativeinrichtung 108 oder ein anderes System zu dem Ground-Truth-Bild hinzugefügt werden oder kann durch andere geeignete Mittel hinzugefügt werden.
  • Bei Block 204 werden zusätzliche Begrenzungsrahmen zufällig für das Ground-Truth-Bild erzeugt. Bei einigen Aspekten werden die zusätzlichen Begrenzungsrahmen unter Verwendung eines Jitterbetriebsvorganges oder anderer geeigneter Mittel zum Erzeugen von mehreren Begrenzungsrahmen aus einem ursprünglichen Begrenzungsrahmen erzeugt. Bei einem Beispiel beinhaltet der Jitterbetriebsvorgang das Hinzufügen eines Zufallsrauschens zu den Pixeln in dem Ground-Truth-Bild, das den Begrenzungsrahmen darstellt, um zusätzliche beliebige Begrenzungsrahmen mit variierenden Größen und Formen zu erstellen. Die zusätzlichen Begrenzungsrahmen entsprechen wie der Begrenzungsrahmen, der mit dem Ground-Truth-Bild empfangen worden ist, dem Zielobjekt innerhalb des Ground-Truth-Bildes. Das Ground-Truth-Bild kann beispielsweise das Bild eines Hundes beinhalten. Jeder der Begrenzungsrahmen kann dem Bild des Hundes entsprechen.
  • Bei Block 206 wird eine Abstandsabbildung des Ground-Truth-Bildes für jeden der Begrenzungsrahmen erzeugt. Bei einigen Aspekten wird die Abstandsabbildung durch Bestimmen des Abstandes von jedem Pixel des Ground-Truth-Bildes zu einem jeweiligen Begrenzungsrahmen erzeugt. Die Bestimmung ist gegenüber der Platzierung des jeweiligen Begrenzungsrahmens unempfindlich. Ist einer der Begrenzungsrahmen innerhalb des Ground-Truth-Bildes gegeben, so sind die Pixel des Bildes entlang dem Begrenzungsrahmen als Satz Se definiert, wobei die Pixel innerhalb des Begrenzungsrahmens als Satz si, definiert sind und die Pixel außerhalb des Begrenzungsrahmens als Satz so definiert sind. Es wird eine Abstandsabbildung D erzeugt, die dieselbe Breite und Höhe wie das Ground-Truth-Bild aufweist. Die Abstandsabbildung am Ort eines jeden Pixels des Bildes wird unter Verwendung der nachfolgenden Beziehungen bestimmt. D ( p i ) = { 128 m i n p j S e | p i p j | ,   i f   p i S i , 128,                            i f   p i S e , 128 + m i n p j S e | p i p j | ,   i f   p i S o ,
    Figure DE102017006558A1_0001
  • Hierbei bezeichnet | pi - pj | den euklidischen Abstand zwischen dem Ort pi eines Pixels des Ground-Truth-Bildes und dem Ort pj eines Pixels des Begrenzungsrahmens. Bei einigen Aspekten werden die Werte von D zwischen 0 und 255 zur effizienteren Datenspeicherung in der Datenspeichereinheit 112 oder einer anderen geeigneten Speichervorrichtung trunkiert.
  • Bei Block 208 wird das Ground-Truth-Bild mit der Abstandsabbildung für jeden Begrenzungsrahmen konkateniert bzw. verkettet oder auf andere Weise kombiniert, um einen Satz von Trainingspaaren zu erzeugen. Enthält das Ground-Truth-Bild beispielsweise fünf Begrenzungsrahmen, was fünf Abstandsabbildungen entsprechend jedem der fünf Begrenzungsrahmen ergibt, so wird das Ground-Truth-Bild mit jeder der fünf Abstandsabbildungen konkateniert bzw. verkettet, um fünf Trainingspaare zu erzeugen. Bei einigen Aspekten wird der Betriebsvorgang der Konkatenierung bzw. Verkettung von der Segmentierungsengine 103 der Kreativeinrichtung 108 bewerkstelligt, wobei die Distanzabbildungen mit den Kanälen des Ground-Truth-Bildes konkateniert bzw. verkettet werden.
  • Bei Block 210 werden die Trainingspaare zum Trainieren des neuronalen Netzwerkes 300 verwendet. Bei einigen Aspekten wird jedes der Trainingspaare in das neuronale Netzwerk eingegeben.
  • 3 ist ein Blockdiagramm zur Darstellung eines Beispiels für ein neuronales Netzwerk 300, das für den Einsatz eines Segmentierungsmodells entsprechend einem Aspekt der vorliegenden Offenbarung trainierbar ist. Die Trainingspaare, die unter Verwendung des in 2 beschriebenen Prozesses erzeugt werden, werden in das neuronale Netzwerk eingegeben, um eine Binärinstanzmaske entsprechend dem Zielobjekt innerhalb des Ground-Truth-Bildes vorherzusagen. Bei einigen Aspekten wird die Binärinstanzmaske mit dem Ground-Truth-Bild verglichen, um die Binärinstanzmaske zu bestimmen. Das neuronale Netzwerk 300 wird zur Berichtigung einer Ungenauigkeit angepasst.
  • Das neuronale Netzwerk 300 ist ein Faltungscodierer-/Decodierernetzwerk („CEDN“), das einen Faltungscodierer 302 und einen Faltungsdecodierer 304 beinhaltet. Der Faltungscodierer beinhaltet ein Netzwerk von Neuronen, die eine Sequenz von Faltungsschichten 306 und Max-Pooling-Schichten 308 bilden. Jede der Faltungsschichten 306 in dem Faltungscodierer 302 beinhaltet einen Satz von lernfähigen Filtern oder Kernels. Die Filter, die in der ersten Faltungsschicht 306 gelegen sind, sind bezüglich der Abmessungen bzw. Dimensionen (beispielsweise bezüglich der Breite und Höhe) des konkatenierten bzw. verketteten Ground-Truth-Bildes und der Abstandsabbildung gefaltet (convolve). Die Filter in nachfolgenden Schichten sind bezüglich der Ausgabe der vorherigen Schicht 306 gefaltet. Bei einigen Beispielen wird das Punktprodukt zwischen den Einträgen des Filters und dem Trainingspaar berechnet, um eine zweidimensionale Aktivierungsabbildung des Filters zu erzeugen, die die Aktivierung der Filter bewirkt, wenn diese einen spezifischen Typ von Merkmal (beispielsweise einen Begrenzungsrahmen) an einer Raumposition in dem Trainingspaar erfassen. Die Filter in der ersten Faltungsschicht 306 verfügen über vier Kanäle zur Aktualisierung der Parameter des Faltungscodierers 302 während des Trainings. Die Max-Pooling-Schichten 308 führen ein nichtlineares Herabtasten (downsampling) durch. Die Max-Pooling-Schichten 308 unterteilen beispielsweise die Eingabe in einen Satz von nichtüberlappenden Rechtecken und geben das Maximum für jeden Teilbereich der nichtüberlappenden Rechtecke aus. Die Max-Pooling-Schicht verringert die Raumgröße der Eingabe zur Verringerung der Parametermenge und Berechnung in dem Netzwerk. Bei einigen Aspekten wird der Faltungscodierer 302 mit einem Klassifizierungsnetzwerk (beispielsweise VGG-16-Parameter) initialisiert, wobei der Extrakanal von Filtern in der ersten Faltungsschicht 306 mit Nullen initialisiert wird.
  • Der Faltungsdecodierer 304 beinhaltet ein Netzwerk mit Entfaltungsschichten 310 und Unpooling-Schichten 312 zur Rekonstruktion von Details des Bildes. Bei der Rekonstruktion kann „von grob nach fein“ gelten. Der Faltungsdecodierer 304 wird mit Gauß'schen Zufallsvariablen initialisiert. Zu Beginn einer jeden Trainingsphase werden die Trainingspaare mit den Daten entsprechend den gemischten Trainingspaaren beliebig neu abgetastet.
  • 4 zeigt ein Flussdiagramm der Segmentierung eines Bildes durch ein trainiertes neuronales Netzwerk 300 entsprechend einem Aspekt der vorliegenden Offenbarung. Ein Ground-Truth-Bild 400 beinhaltet ein Bild mit zwei Hunden. Das Zielobjekt des Ground-Truth-Bildes 400 beinhaltet denjenigen der Hunde, der am weitesten innerhalb eines Begrenzungsrahmens 402 positioniert ist, der mit dem Ground-Truth-Bild 400 empfangen wird. Eine Abstands wird aus dem Ground-Truth-Bild 402 erzeugt. Bei einigen Aspekten wird die Abstands unter Verwendung des in Block 206 von 2 beschriebenen Prozesses erzeugt. Die Abstands beinhaltet einen Begrenzungsrahmen 406 entsprechend dem Begrenzungsrahmen 402 des Ground-Truth-Bildes 400. Das Ground-Truth-Bild 400 und die Abstands werden konkateniert bzw. verkettet und bilden ein Trainingspaar, das in das neuronale Netzwerk 300 eingegeben wird. Das Trainingspaar wird in die dem Faltungscodierer 302 und dem Faltungsdecodierer 304 zu eigenen Netzwerke eingegeben, um eine Binärmaske 408 zu erzeugen. Die Binärmaske 408 stellt die Pixel des Zielobjektes (beispielsweise des Hundes) in dem Ground-Truth-Bild 400 entsprechend dem Begrenzungsrahmen 402 dar. Bei zusätzlichen und alternativen Aspekten kann die Ausgabe des Netzwerkes eine Abbildung entsprechend der Wahrscheinlichkeit des Vordergrundes des Ground-Truth-Bildes 400 über ein kontinuierliches Intervall (beispielsweise 0 bis 1) im Gegensatz zu einer Binärmaske (beispielsweise 0 und 1) beinhalten. Bei einigen Aspekten kann der Prozess für jedes Trainingspaar entsprechend jedem Begrenzungsrahmen, der für das Zielobjekt des Ground-Truth-Bildes 400 erzeugt wird, wiederholt werden.
  • Instanzebenenmarkierung
  • 5 ist ein Flussdiagramm 500 eines exemplarischen Prozesses der Instanzebenenmarkierung eines Zielobjektes in einem digitalen visuellen Medium entsprechend einem Aspekt der vorliegenden Offenbarung. Obwohl der Prozess hier in Verbindung mit dem in 2 beschriebenen Segmentierungsprozess beschrieben wird, kann der Instanzmarkierungsprozess auch bei digitalen visuellen Medien angewendet werden, die auf Grundlage anderer bekannter Verfahren segmentiert werden, ohne dass dies vom Umfang der vorliegenden Offenbarung abweichen würde.
  • Bei Block 502 wird ein Satz von Begrenzungsrahmen und entsprechende Objektinformation für einen Satz von Zielobjekten empfangen. Bei einigen Aspekten sind die Begrenzungsrahmen in einem digitalen visuellen Medium (beispielsweise einem Bild) beinhaltet und entsprechen einem oder mehreren Zielobjekten in dem Bild. Bei einigen Aspekten werden die Begrenzungsrahmen aus einem Detektionsalgorithmus oder anderen Mitteln zum Detektieren der Zielobjekte innerhalb des digitalen visuellen Mediums bestimmt. Bei einem weiteren Beispiel überlappen einer oder mehrere der Begrenzungsrahmen. Die Objektinformation beinhaltet Information entsprechend dem digitalen visuellen Medium oder dem Zielobjekt innerhalb des digitalen visuellen Mediums. Bei einigen Aspekten beinhaltet die Objektinformation Klassenmarkierungen oder Klassenkennwerte entsprechend den Zielobjekten, die den Begrenzungsrahmen entsprechen. Beispielsweise beinhaltet jeder Begrenzungsrahmen eine Klassenmarkierung zur Identifizierung der Klasse des Bildes, die mit dem Begrenzungsrahmen verknüpft ist. Bei einem anderen Beispiel stellt der Klassenkennwert eine Wahrscheinlichkeit dafür dar, dass ein Pixel in dem Begrenzungsrahmen einem Objekt innerhalb der identifizierten Klasse entspricht. Bei anderen Aspekten wird der Klassenkennwert durch einen alternativen Prozess bestimmt, so beispielsweise durch Implementieren eines Objektvorschlagsalgorithmus zur Ausgabe eines Begrenzungsrahmens und eines separaten Klassifizierungsalgorithmus zur Bestimmung einer Klasse und eines zugehörigen Klassenkennwertes entsprechend dem Begrenzungsrahmen.
  • Bei einigen Aspekten ist die Anzahl von Begrenzungsrahmen in dem empfangenen Satz verringert. Einige der Begrenzungsrahmen werden beispielsweise unter Verwendung einer NMS-Operation (Non-Maxima Suppression NMS) verringert. Bei einigen Aspekten beinhaltet die Segmentierungsengine 103 Anweisungen zum Einsetzen der Operation. Die NMS-Operation ist beispielsweise allgemein dafür einsetzbar, überlappende Begrenzungsrahmen zu bestimmen, eine Überlappungsschwelle zur Bestimmung dessen, ob ein beliebiger der Begrenzungsrahmen in einem gewissen Verhältnis oder mit einem gewissen Prozentanteil bei oder über der Überlappungsschwelle überlappt, einzusetzen und derartige Begrenzungsrahmen als redundant auszusondern.
  • Bei Block 504 wird ein Pixelkennwert für jedes Pixel innerhalb eines jeden Begrenzungsrahmens des digitalen visuellen Mediums bestimmt. Der Pixelkennwert oder die Wahrscheinlichkeit für jedes Pixel entspricht der Wahrscheinlichkeit dafür, dass das Pixel dem Zielobjekt, das mit jedem Begrenzungsrahmen verknüpft ist, entspricht. Bei einigen Aspekten wird der Pixelkennwert von dem neuronalen Netzwerk auf Grundlage des bei dem Prozess von 4 erläuterten Trainings bestimmt. Der Kennwert für jedes Pixel bildet eine Vordergrundwahrscheinlichkeitsabbildung. Eine Vordergrundwahrscheinlichkeitsabbildung beinhaltet für jedes Pixel innerhalb eines Begrenzungsrahmens beispielsweise einen Prozentanteil entsprechend der Wahrscheinlichkeit dafür, dass das Pixel dem Zielobjekt entspricht. Bei einigen Aspekten wird auch eine Hintergrundwahrscheinlichkeitsabbildung für jeden Begrenzungsrahmen unter Verwendung des Pixelkennwertes bestimmt. Die Hintergrundwahrscheinlichkeitsabbildung beinhaltet für jedes Pixel innerhalb des Begrenzungsrahmens einen Prozentanteil entsprechend der Wahrscheinlichkeit dafür, dass das Pixel dem Hintergrund (beispielsweise einem Abschnitt des digitalen visuellen Mediums in dem Begrenzungsrahmen, der nicht das Zielobjekt ist) entspricht. In diesem Zusammenhang sollten die Prozentanteile für jedes Pixel in der Vordergrundwahrscheinlichkeitsabbildung und den Hintergrundwahrscheinlichkeitsabbildungen derart normiert oder skaliert sein, dass die Summe der Prozentanteilswerte gleich 1 (beispielsweise 100%) ist. Die Prozentanteilsabbildungen können als zweidimensionale Matrix mit Einträgen dargestellt werden, die den Pixeln in dem digitalen visuellen Medium oder innerhalb eines Begrenzungsrahmens des digitalen visuellen Mediums entsprechen.
  • Bei einigen Aspekten werden dem verbleibenden Satz von Begrenzungsrahmen Gewichtungen zugewiesen. Die Gewichtungen können unter Verwendung der Klassenkennwerte zugewiesen werden, die in der mit den Begrenzungsrahmen empfangenen Objektinformation beinhaltet sind. Die Gewichtungen können zur Aktualisierung der Wahrscheinlichkeitsabbildungen verwendet werden. Es können beispielsweise die nachfolgenden Beziehungen dafür verwendet werden, eine Gewichtung für jeden Begrenzungsrahmen zuzuweisen, um gewichtete Vordergrund- und Hintergrundwahrscheinlichkeitsabbildungen zu bestimmen: P i f w = s i × P i f ,
    Figure DE102017006558A1_0002
    P i b w = 1 P i f ,
    Figure DE102017006558A1_0003
    wobei gilt: P i f
    Figure DE102017006558A1_0004
    ist die Vordergrundwahrscheinlichkeitsabbildung, P i b
    Figure DE102017006558A1_0005
    ist die Hintergrundwahrscheinlichkeitsabbildung, si ist der Klassenkennwert für das Zielobjekt entsprechend dem Begrenzungsrahmen, P i f w
    Figure DE102017006558A1_0006
    ist die gewichtete Vordergrundwahrscheinlichkeitsabbildung und P i b w
    Figure DE102017006558A1_0007
    ist die gewichtete Hintergrundwahrscheinlichkeitsabbildung.
  • Bei Block 506 wird eine Kollektivwahrscheinlichkeitsabbildung bestimmt. Die Kollektivwahrscheinlichkeitsabbildung entspricht einem Produkt der Wahrscheinlichkeitsabbildungen. Bei einigen Aspekten wird eine Kollektivvordergrundwahrscheinlichkeitsabbildung beispielsweise auf Grundlage eines Produktes der Vordergrundwahrscheinlichkeitsabbildungen für jeden der Begrenzungsrahmen bestimmt. Bei einem anderen Beispiel wird eine Kollektivhintergrundwahrscheinlichkeitsabbildung auf Grundlage eines Produktes der Hintergrundwahrscheinlichkeitsabbildungen für jeden der Begrenzungsrahmen bestimmt. Die Kollektivhintergrundwahrscheinlichkeitsabbildung Pbc wird beispielsweise unter Verwendung der gewichteten Hintergrundwahrscheinlichkeitsabbildung für jeden der verbleibenden Begrenzungsrahmen auf Grundlage der nachfolgenden Beziehung bestimmt: P b c = i = 1 N P i b w
    Figure DE102017006558A1_0008
  • Hierbei ist N die Anzahl der Begrenzungsrahmen in dem verbleibenden Satz. Bei einigen Aspekten sind die Kollektivhintergrundwahrscheinlichkeitsabbildung und die gewichteten Vordergrundwahrscheinlichkeitsabbildungen für jeden Begrenzungsrahmen normiert.
  • Eine Instanzebenenmarkierung für jedes Pixel des Zielobjektes wird auf Grundlage der Kollektivwahrscheinlichkeitsabbildung bestimmt. Bei einigen Aspekten kann die Instanzebenenmarkierung unter Verwendung eines vollständig verbundenen Conditional-Random-Field-Modells („CRF“) bestimmt werden. Insbesondere kann die nachfolgende Objektbeziehung eingesetzt werden: E ( 1 ) = i φ u ( l i ) + i < j φ p ( l i , l j )
    Figure DE102017006558A1_0009
  • Hierbei ist I die Markierungszuweisung für alle Pixel, wobei die unären bzw. monadischen (unary) Potenziale als φu(Ii) = -log(P(Ii)) definiert sind und P(Ii) die an dem Pixel i gegebene normierte Wahrscheinlichkeit der Wahrscheinlichkeitsabbildung der Markierung Ii ist. Bei einigen Beispielen weisen Paarpotenziale die nachfolgende Form auf: φ p ( l i , l j ) = w × µ ( l i , l j ) × exp ( | p i p j | 2 2 θ α 2 | I i I j | 3 2 θ β 2 )
    Figure DE102017006558A1_0010
  • Hierbei ist w eine Linearkombinationsgewichtung, µ(Ii, Ij) ist die Kompatibilität der Markierung zu einer benachbarten Markierung (Beispielsweise kann eine Person, die neben einer weiteren Person steht, eine hohe Kompatibilität aufweisen, während die Wahrscheinlichkeit dafür, dass ein Auto neben einem Swimmingpool steht, eine niedrige Kompatibilität ergeben kann), während (θα, θβ Hyperparameter sind, die die Effektivbereiche der Kernels steuern bzw. regeln. Bei einigen Aspekten sanktioniert (penalize) das Paarpotenzial eine Markierungsnichtübereinstimmung zwischen naheliegenden Pixeln mit ähnlichen oder denselben Farben. Die Sanktionierung verringert die Fehlalarmdetektion. Das CRF-Modell wird auf Grundlage einer effizienten Mean-Field-Näherung optimiert.
  • Jedem Pixel wird eine Instanzebenenmarkierung Ii zugewiesen. Die Kategoriemarkierung des Pixels entspricht der Detektionsmarkierung, die mit dem ursprünglichen Begrenzungsrahmen, in dem sich das Pixel befindet, verknüpft ist.
  • 6 zeigt Beispiele für Bilder, die entsprechend einem Aspekt der vorliegenden Offenbarung segmentiert und markiert sind. Bilder 600A, 600B stellen Bilder zur Eingabe in ein trainiertes neuronales Netzwerk (beispielsweise das neuronale Netzwerk 300 von 3 und 4) dar. Das Bild 600A ist ein Bild mit mehreren Autos. Jedes Auto stellt ein Zielobjekt in dem Bild 600A dar und beinhaltet einen Satz von Begrenzungsrahmen entsprechend jedem Auto. Das Bild 600B stellt die Autos mit einer verringerten Anzahl von Begrenzungsrahmen dar. Bei einigen Beispielen wird die Anzahl von Begrenzungsrahmen unter Verwendung einer NMS-Operation, wie bei Block 504 von 5 beschrieben worden ist, verringert. Die Darstellung 600C ist die Ausgabemaske zur Darstellung der Pixel der Autos in dem Bild 600A, das auf einer Instanzebene, wie bei Block 510 von 5 beschrieben wird, segmentiert und markiert ist. Jedes Auto ist in der Segmentierung und Markierung unterscheidbar, obwohl es derselben Kategorie angehört. Eine Darstellung 600D ist eine Maske eines Ground-Truth-Bildes der Autos zur Verifizierung der Genauigkeit der Darstellung 600C.
  • Das Bild 602A ist ein Bild mit einem Sofa in einem Zimmer. Das Sofa stellt ein Zielobjekt in dem Bild 602A dar. Ein Satz von Begrenzungsrahmen entsprechend dem Sofa ist in dem Bild 602A beinhaltet. Das Bild 602B stellt das Sofa mit einer verringerten Anzahl von Begrenzungsrahmen dar. Die Darstellung 602C ist die Ausgabemaske zur Darstellung der Pixel des Sofas in dem Bild 602A. Die Darstellung 602D ist eine Maske eines Ground-Truth-Bildes des Sofas zur Verifizierung der Genauigkeit der Darstellung 600C. Wie aus einem Vergleich der Darstellungen 600C, 602C mit den Darstellungen 600D, 602D ersichtlich ist, ist das System darauf trainiert, die Zielobjekte in den Bildern 600A, 600B genau zu identifizieren.
  • Genauigkeit der Instanzebenensegmentierung
  • 7 ist ein Flussdiagramm eines Beispiels für einen Prozess zur Bestimmung der Genauigkeit einer Instanzebenensegmentierung entsprechend einem Aspekt der vorliegenden Offenbarung. Bei einigen Aspekten kann der Prozess bei einer Ausgabeinstanz angewandt werden, die unter Verwendung eines der hier beschriebenen Verfahren sowie einer Ground-Truth-Instanz eines visuellen Mediums bestimmt wird. Der Prozess kann jedoch auch bei einer Ausgabeinstanz angewandt werden, die unter Verwendung eines beliebigen bekannten Verfahrens zur Instanzebenensegmentierung bestimmt wird, ohne vom Umfang der vorliegenden Offenbarung abzugehen.
  • Bei Block 702 werden Knoten einer Ausgabeinstanz gegen eine Ground-Truth-Instanz mittels eines Eins-zu-Eins-Abgleichs aufgetragen. Die Knoten für die Ausgabeinstanzen entsprechen Pixeln eines Zielobjektes, die in einem Bild beinhaltet sind, das entsprechend der vorliegenden Offenbarung segmentiert ist (beispielsweise Darstellung 600C von 6). Die Knoten für die Ground-Truth-Instanzen entsprechen Pixeln eines Zielobjektes, das in einem Ground-Truth-Bild beinhaltet ist (beispielsweise Darstellung 600D von 6). Eine Eins-zu-Eins-Abbildung wird zur Bestimmung dessen eingesetzt, ob entsprechende Knoten zwischen dem Zielobjekt in den Ausgabeinstanzen und dem Zielobjekt in den Ground-Truth-Instanzen gleich sind.
  • Bei einigen Aspekten wird die Ähnlichkeit oder Differenz zwischen entsprechenden Knoten unter Verwendung eines Schnitt-durch-Vereinigung-Wertes (intersection-over-union value) gemessen. Ein Schnitt-durch-Vereinigung-Wert wird für jedes entsprechende Knotenpaar bestimmt.
  • 8 ist ein aufgetragener Graph 800 zur Bereitstellung einer vereinfachten visuellen Darstellung von Ausgabeinstanzen, die gegen Ground-Truth-Instanzen aufgetragen sind, entsprechend einem Aspekt der vorliegenden Offenbarung. Die Ausgabeinstanzen entsprechen den Segmenten, die durch die Segmentierung entsprechend den hier offenbarten Verfahren bestimmt werden. Die Pixel sind auf der Seite 802 des aufgetragenen Graphs 800 durch Knoten A bis E dargestellt. Die Ground-Truth-Instanzen entsprechen Segmenten der Ground-Truth-Instanzen. Die Pixel der Ground-Truth-Instanzen sind auf der Seite 804 des aufgetragenen Graphs 800 durch Knoten X bis Z dargestellt. Für eine Eins-zu-Eins-Abbildung muss die Anzahl von Knoten auf jeder Seite des aufgetragenen Graphs 800 gleich sein. Da die Seite 802 mehr Knoten, die Pixel der Ausgabeinstanzen darstellen, beinhaltet, wird eine geeignete Anzahl von Knoten hinzugefügt, um zu bewirken, dass die Anzahl von Knoten auf der Seite 804 zur Anzahl von Knoten auf der Seite 802 gleich ist. Die zusätzlichen Knoten N1-N2 werden beispielsweise auf der Seite 804 für fünf Knoten auf jeder Seite des aufgetragenen Graphs 800 hinzugefügt. Die Knoten N1-N2 sind Nullobjekte, die 0 Pixeln entsprechen.
  • Bei einigen Aspekten stellt der aufgetragene Graph 800 einen bipartiten Graph G = (U, V, E) dar, wobei U ein Satz von Vertices bzw. Scheiteln in dem Graph zur Darstellung der vorhergesagten Segmente (beispielsweise der Ausgabeninstanzen) ist, V die Ground-Truth-Segmente (beispielsweise die Ground-Truth-Instanzen) darstellt und E den Satz von Kanten zwischen U und V (beispielsweise die möglichen Abbildungen zwischen U und V, die durch die gepunkteten Pfeile angedeutet sind) darstellt. Für eine Bijektion f: U→V wird die Bijektion f* bestimmt, um den Durchschnitt-durch-Vereinigung-Wert über die abgebildeten Segmente oder entsprechenden Knoten unter Verwendung der nachfolgenden Beziehung zu maximieren: f * ( U , V ) = arg  max f u U | u f * ( u ) | | u f * ( u ) |
    Figure DE102017006558A1_0011
  • Hierbei bezeichnen u und f*(u) die Knoten oder Pixel in den Ausgabe- beziehungsweise Ground-Truth-Instanzen. Bei einigen Aspekten wird die Bijektion f* auf Grundlage des ungarischen Algorithmus oder anderer geeigneter Mittel zur Lösung eines Zuweisungsproblems minimiert.
  • Wie in 7 dargestellt ist, wird eine Bestimmung dahingehend vorgenommen, ob die Klassenkonsistenz für die Zielobjekte in der Metrik durchgesetzt werden sollte oder ob die Metrik klassenagnostisch ist und nicht berücksichtigt werden sollte, wie bei Block 704 gezeigt ist. Wird bestimmt, dass die Metrik klassenunabhängig ist (werden die Klassen also beispielsweise nicht berücksichtigt), so fährt der Prozess mit dem Abbilden aller Ausgabeinstanzen gegen die Ground-Truth-Instanzen fort (beispielsweise jeden der Knoten A-E auf der Seite 802 gegen jeden der entsprechenden Knoten X-Z und N1-N2 auf der Seite 804 von 8), wie bei Block 706 beschrieben ist. Für jedes Paar von entsprechenden Instanzen oder Knoten wird dem Paar ein Schnitt-durch-Vereinigung-Wert auf Grundlage des Maßes der Differenzen oder Ähnlichkeiten zwischen den Instanzen zugeteilt. Wird bestimmt, dass für die Metrik erforderlich ist, dass die Klasse korrekt markiert wird (wird die Klasse also beispielsweise berücksichtigt), so fährt der Prozess mit dem Abbilden der Ausgabeinstanzen gegen die Ground-Truth-Instanzen fort, wobei der Schnitt-durch-Vereinigung-Wert für entsprechende Knoten, bei denen die Klassen nicht passen, wie bei Block 708 gezeigt ist, auf 0 gesetzt wird.
  • Wie bei Block 710 gezeigt ist, wird nunmehr eine Bestimmung dahingehend vorgenommen, ob der aggregierte Kennwert des Abgleichs größenabhängig (ob beispielsweise die Größen der Ausgabe- und Ground-Truth-Darstellungen der Zielobjekte berücksichtigt werden) oder größenunabhängig (ob beispielsweise die Größen nicht berücksichtigt werden) ist. Bei einigen Aspekten sanktioniert ein größenabhängiger Kennwert die Ausgabeinstanz bei Fehlen eines größeren Objektes stärker als bei einem kleineren Objekt, während der größenunabhängige Kennwert das Fehlen von großen und kleinen Objekten gleichermaßen sanktioniert.
  • Wird bestimmt, dass der Kennwert größenunabhängig ist, so wird bestimmt, dass der Kennwert die normierte Summe der Schnitt-durch-Vereinigung-Kennwerte für jede Abbildung ist, wie bei Block 712 beschrieben ist. Wie wiederum bei dem aufgetragenen Graph 800 von 8 dargestellt ist, beinhaltet der Kennwert die normierte Summe der Schnitt-durch-Vereinigung-Kennwerte für entsprechende Knotenpaare A/X, B/Y, C/Z, D/N1 und E/N2. Die nachfolgende Beziehung stellt die normierte Summe der Schnitt-durch-Vereinigung-Kennwerte für jede Abbildung dar: S i ( U , V ) = 1 | U | u U λ u | u f * ( u ) | | u f * ( u ) |
    Figure DE102017006558A1_0012
  • Wie in 7 dargestellt ist, ist, wenn bestimmt wird, dass der Kennwert größenabhängig ist, der Kennwert die Summe der Schnitt-durch-Vereinigung-Kennwerte, gewichtet mit der Größe der Bereiche, wie bei Block 714 dargestellt ist. Die nachfolgende Beziehung stellt die gewichtete Summe der Schnitt-durch-Vereinigung-Kennwerte für jede Abbildung dar. S p ( U , V ) = u U λ u | u f * ( u ) | | u f * ( u ) | '
    Figure DE102017006558A1_0013
    λ u = | u f * ( u ) | x U x f * ( x )
    Figure DE102017006558A1_0014
  • Sind die Kennwerte mit der Größe gewichtet, so kann die Beziehung auch zur Summe der Schnitte, geteilt durch die Summe der Vereinigungen vereinfacht werden: S p ( U , V ) = u U | u f * ( u ) | u U | u f * ( u ) |
    Figure DE102017006558A1_0015
  • Bei Block 716 wird der Kennwert derart angepasst, dass jeweils falsche Positiva und falsche Negativa oder Genauigkeits- und Recall-Bewertungen sanktioniert werden. Bei einigen Aspekten entspricht ein falsches Positivum einem falsch markierten Objekt (beispielsweise einem Zielobjekt mit einer unkorrekten Kategoriemarkierung). Ein falsches Negativum entspricht einem fehlenden Objekt (beispielsweise einem Zielobjekt, dem keine Markierung zugewiesen oder das als Hintergrund betrachtet worden ist). Es wird eine Abgleichsmessung bestimmt, ohne die Durchschnitte-durch-Vereinigung-Schwellen zu verwenden (beispielsweise dort, wo lediglich eine Anzahl von Abbildungen über der Schwelle gezählt wird), und es werden sowohl die Genauigkeit (beispielsweise falsche Positiva) wie auch der Recall (beispielsweise falsche Negativa) erfasst. Die nachfolgende Beziehung stellt eine Standardvorgehensweise beim Bestimmen der Abgleichsmessung dar: 2 × P × R P + R = 2 × m | U | × m | V | m | U | + m | V | = 2 × m | U | + | V |
    Figure DE102017006558A1_0016
  • Hierbei sind P und R die Genauigkeits- beziehungsweise Recall-Werte, während m die Anzahl der Abgleiche (beispielsweise die Summe der Schnitt-durch-Vereinigung-Werte) ist.
  • 9 zeigt Beispiele für Darstellungen eines Vergleiches von Segmentierungsprozessen unter Verwendung der in 7 beschriebenen Metrik entsprechend einem Aspekt der vorliegenden Offenbarung. Die Darstellungen 900A, 902A entsprechen Ergebnissen eines Segmentierungsprozesses entsprechend dem sogenannten Hypercolumn-Verfahren, das beschrieben wird bei „Hypercolumns for Object Segmentation and Fine-grained Localization" von B. Hariharan, P. Arbelaez, R. Girshick, J. Malik, veröffentlicht bei „Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition", 2015, Seiten 447 bis 456. Die konturierten Umrisse des Objektes nahe an einem Zielobjekt (beispielsweise gemäß Definition durch die Begrenzungsrahmen) in dem Bild stellen das Segmentierungsergebnis unter Verwendung des Hypercolumn-Verfahrens dar.
  • Die Darstellungen 900B, 902B entsprechen Ergebnissen eines Segmentierungsprozesses entsprechend Aspekten der vorliegenden Offenbarung. Die konturierten Umrisse des Zielobjektes stellen das Segmentierungsergebnis unter Verwendung von Prozessen entsprechend Aspekten der vorliegenden Offenbarung dar. Jede der Darstellungen 900A, 902B und der Darstellungen 900A, 902B wird mit den Darstellungen 900C, 902C verglichen, um die Genauigkeit der Ergebnisse des Prozesses zu bewerten. Wie durch die Darstellungen von 9 angegeben ist, passen die Segmentierungsergebnisse, die sich aus einem der Aspekte der vorliegenden Offenbarung ergeben, wie aus den Darstellungen 900B, 900C ersichtlich ist, am besten zur Segmentierung des Ground-Truth-Bildes.
  • Es kann ein geeignetes Rechensystem programmiert werden, um die hier beschriebenen Betriebsvorgänge durchzuführen. 10 ist ein Beispiel für ein Blockdiagramm eines exemplarischen Rechensystems zu semantischen Segmentierung von digitalen visuellen Medien entsprechend einem Aspekt der vorliegenden Offenbarung. Jede der Nutzervorrichtungen 102A bis 102N, die Kreativeinrichtung 108, eine Komponente hiervon oder auch andere geeignete Systeme implementieren einige oder alle der dargestellten Komponenten. Obwohl diese Komponenten derart dargestellt sind, dass sie zum selben Rechensystem 1000 gehören, kann das Rechensystem 1000 auch verteilt sein.
  • Das Rechensystem 1000 beinhaltet wenigstens einen Prozessor 1002, einen Speicher 1004, eine Speichervorrichtung 1006, Eingabe-/Ausgabeperipheriegeräte 1008, Kommunikationsperipheriegeräte 1010 und einen Schnittstellenbus 1012. Der Schnittstellenbus 1012 ist dafür konfiguriert, Daten, Steuerungen bzw. Regelungen und Befehle zwischen den verschiedenen Komponenten des Rechensystems 1000 zu kommunizieren, zu übertragen und zu transferieren. Der Speicher 1004 und die Speichervorrichtung 1006 beinhalten computerlesbare Speichermedien, so beispielsweise RAM, ROM, elektrisch löschbare programmierbare Nur-Lese-Speicher (EEPROM), Festplattenlaufwerke, CD-ROMs, optische Speichervorrichtungen, magnetische Speichervorrichtungen, elektronische nichtflüchtige Computerspeicher, so beispielsweise Flash®-Speicher, und andere physische Speichermedien. Einige dieser computerlesbaren Speichermedien können dafür konfiguriert sein, Anweisungen oder Programmcodes zu speichern, die Aspekte der Offenbarung verkörpern. Der Speicher 1004 und die Speichervorrichtung 1006 beinhalten zudem computerlesbare Signalmedien. Ein computerlesbares Signalmedium beinhaltet ein sich ausbreitendes Datensignal mit darauf verkörpertem computerlesbarem Programmcode. Ein derartiges sich ausbreitendes Signal nimmt eine Vielzahl von Formen an, darunter unter anderem elektromagnetisch, optisch oder eine beliebige Kombination hieraus. Das computerlesbare Signalmedium beinhaltet ein beliebiges computerlesbares Medium, das kein computerlesbares Speichermedium ist und das ein Programm zur Verwendung in Verbindung mit dem Rechensystem 1000 kommunizieren, verbreiten oder transportieren kann.
  • Des Weiteren beinhaltet der Speicher 1004 ein Betriebssystem, Programme und Anwendungen. Der Prozessor 1002 ist dafür konfiguriert, die gespeicherten Anweisungen auszuführen, und beinhaltet beispielsweise eine Logikverarbeitungseinheit, einen Mikroprozessor, einen digitalen Signalprozessor sowie andere Prozessoren. Der Speieher 1004 und/oder der Prozessor 1002 können virtualisiert sein und innerhalb eines anderen Rechensystems, beispielsweise eines Cloudnetzwerks oder einer Datenzentrale, gehostet sein. Die Eingabe- und Ausgabeperipheriegeräte 1008 beinhalten Nutzerschnittstellen, so beispielsweise eine Tastatur, einen Bildschirm, ein Mikrofon, einen Lautsprecher, andere Eingabe-/Ausgabevorrichtungen und Rechenkomponenten, so beispielsweise graphische Verarbeitungseinheiten, serielle Ports, parallele Ports, einen universellen seriellen Bus und andere Eingabe-/Ausgabeperipheriegeräte. Die Eingabe-/Ausgabeperipheriegeräte 1008 sind mit dem Prozessor 1002 über beliebige der Ports, die mit dem Schnittstellenbus 1012 gekoppelt sind, verbunden. Die Kommunikationsperipheriegeräte 1010 sind dafür konfiguriert, die Kommunikation zwischen dem Rechensystem 1000 und anderen Rechenvorrichtungen über ein Kommunikationsnetzwerk zu vereinfachen, und beinhalten beispielsweise einen Netzwerkschnittstellencontroller, ein Modem, drahtlose und drahtgebundene Schnittstellenkarten, eine Antenne und andere Kommunikationsperipheriegeräte.
  • Obwohl der vorliegende Erfindungsgegenstand anhand spezifischer Aspekte detailliert beschrieben worden ist, sollte sich einem Fachmann auf dem einschlägigen Gebiet beim Erlangen eines Verständnisses des Vorbeschriebenen erschließen, dass Änderungen, Abwandlungen und Äquivalente für diese Aspekte ohne Weiteres erstellt werden können. Entsprechend sollte einsichtig sein, dass die vorliegende Offenbarung lediglich zu Beispielszwecken und nicht zur Beschränkung vorgestellt worden ist und die Einbeziehung derartiger Änderungen, Abwandlungen und Hinzufügungen zu dem vorliegenden Erfindungsgegenstand nicht ausschließt, wie sich einem Fachmann auf dem einschlägigen Gebiet ohne Weiteres darlegt. Die hier beschriebenen Verfahren und Systeme können in einer Vielzahl von anderen Formen verkörpert sein. Des Weiteren können verschiedene Auslassungen, Ersetzungen und Änderungen an der Form der hier beschriebenen Verfahren und Systeme vorgenommen werden, ohne vom Wesen der vorliegenden Offenbarung abzugehen. Die begleitenden Ansprüche und ihre Äquivalente sollen all diese Formen oder Abwandlungen abdecken, so sie dem Umfang und Wesen der vorliegenden Offenbarung entsprechen.
  • Man beachte, dass in der vorliegenden Beschreibung, außer dies ist explizit anders angegeben, die Verwendung von Begriffen wie „verarbeiten“, „berechnen“, „rechnen“, „bestimmen“ und „identifizieren“ oder dergleichen Handlungen oder Prozesse einer Rechenvorrichtung, so beispielsweise eines oder mehrerer Computer oder einer ähnlichen elektronischen Rechenvorrichtung oder von solchen Vorrichtungen, bezeichnen, die Daten manipulieren oder transformieren, die als physische, elektronische oder magnetische Quantitäten innerhalb von Speichern, Registern oder anderen Informationsspeichervorrichtungen, Übertragungsvorrichtungen oder Anzeigevorrichtungen der Rechenplattform dargestellt werden.
  • Das hier beschriebene System oder die hier beschriebenen Systeme sind nicht auf eine bestimmte Hardwarearchitektur oder Konfiguration beschränkt. Eine Rechenvorrichtung kann beispielsweise eine geeignete Anordnung von Komponenten sein, die ein Ergebnis bereitstellen, das von einer oder mehreren Eingaben abhängt. Geeignete Rechenvorrichtungen beinhalten mikroprozessorbasierte Mehrzweckcomputersysteme, die auf gespeicherte Software zugreifen, die das Rechensystem von einer Allzweckrecheneinrichtung zu einer einen oder mehrere Aspekte des vorliegenden Erfindungsgegenstandes implementierenden spezialisierten Recheneinrichtung programmiert oder konfiguriert. Eine beliebige Programmierung, ein Scripting oder eine andere Art von Sprache oder Kombinationen von Sprachen können zur Implementierung der hier vorgestellten Lehren in Software zur Verwendung beim Programmieren oder Konfigurieren einer Rechenvorrichtung verwendet werden.
  • Aspekte der hier beschriebenen Verfahren können im Betrieb derartiger Rechenvorrichtungen zum Einsatz kommen. Die Reihenfolge der Blöcke, die bei den vorbeschriebenen Beispielen dargestellt sind, kann variiert werden. So können Blöcke beispielsweise umgeordnet, kombiniert oder zu Teilblöcken zerlegt werden. Bestimmte Blöcke oder Prozesse können parallel ausgeführt werden.
  • Die hier verwendete bedingungsbehaftete Sprache, so beispielsweise unter anderem „kann/können“, „könnte/könnten“ und dergleichen mehr, soll, außer dies ist explizit anders angegeben oder innerhalb des Verwendungskontextes anders zu verstehen, bedeuten, dass bestimmte Beispiele Elemente oder Schritte beinhalten, während andere Beispiele dies nicht tun. Eine derartige bedingungsbehaftete Sprache soll im Allgemeinen nicht implizieren, dass Merkmale, Elemente oder Schritte bei einem oder mehreren Beispielen auf irgendeine Art erforderlich sind oder dass ein oder mehrere Beispiele - ob nun mit einer Eingabe oder Aufforderung des Bedieners oder ohne - unbedingt eine Logik zur Entscheidung dessen beinhalten müssen, ob diese Merkmale, Elemente oder Schritte beinhaltet sind oder bei einem beliebigen bestimmten Beispiel durchgeführt werden müssen.
  • Die Begriffe „umfassen“, „beinhalten“, „aufweisen“ und dergleichen sind Synonyme, werden im einschließenden Sinne und ohne Beschränkung verwendet und schließen zusätzliche Elemente, Merkmale, Handlungen, Betriebsvorgänge und dergleichen mehr nicht aus. Zudem wird der Begriff „oder“ im einschließenden Sinne (und nicht im ausschließenden Sinne) verwendet, sodass bei seiner Verwendung zur Verbindung einer Liste von Elementen der Begriff „oder“ eines, einige oder alle der Elemente in der Liste bezeichnet. Die Verwendung von „geeignet zu“ oder „konfiguriert zu“ bezeichnet im Sinne des Vorliegenden eine offene und einschließende Sprache, die Vorrichtungen nicht ausschließt, die zur Durchführung von zusätzlichen Aufgaben und Schritten ausgelegt oder konfiguriert sind. Zusätzlich soll die Verwendung von „auf Grundlage“ dahingehend offen und einschließend sein, dass ein Prozess, ein Schritt, eine Berechnung oder eine andere Handlung „auf Grundlage“ einer oder mehrerer aufgeführter Bedingungen oder Werte in der Praxis auch auf zusätzlichen Bedingungen oder Werten über die aufgeführten hinausgehend beruhen kann. Auf ähnliche Weise soll die Verwendung von „wenigstens teilweise auf Grundlage“ dahingehend offen und einschließend sein, dass ein Prozess, ein Schritt, eine Berechnung oder eine andere Handlung „wenigstens teilweise auf Grundlage“ einer oder mehrerer aufgeführter Bedingungen oder Werte in der Praxis auch auf zusätzlichen Bedingungen oder Werten über die aufgeführten hinausgehend beruhen kann. Überschriften, Listen und Nummerierungen dienen, so sie hier beinhaltet sind, lediglich der einfacheren Erläuterung und sollen nicht beschränkend sein.
  • Die vorbeschriebenen verschiedenen Merkmale und Prozesse können unabhängig voneinander verwendet werden oder können auf verschiedene Weisen kombiniert werden. Alle möglichen Kombinationen und Unterkombinationen sollen in den Umfang der vorliegenden Offenbarung fallen. Darüber hinaus können bestimmte Verfahrens- oder Prozessblöcke bei einigen Implementierungen wegfallen. Die hier beschriebenen Verfahren und Prozesse sollen nicht auf eine beliebige spezielle Abfolge beschränkt sein. Vielmehr können die Blöcke oder Zustände in beliebigen Reihenfolgen, so diese geeignet sind, durchgeführt werden. Die beschriebenen Blöcke oder Zustände können beispielsweise in einer Reihenfolge durchgeführt werden, die eine andere als die speziell offenbarte ist, oder es können mehrere Blöcke oder Zustände zu einem einzigen Block oder Zustand kombiniert werden. Die exemplarischen Blöcke oder Zustände können seriell, parallel oder auf andere Weise ausgeführt werden. Blöcke oder Zustände können zu den offenbarten Beispielen hinzugefügt oder aus diesen entfernt werden. Auf ähnliche Weise können die hier beschriebenen exemplarischen Systeme und Komponenten auch auf andere Weise als die beschriebene konfiguriert sein. Es können beispielsweise Elemente zu den offenbarten Beispielen hinzugefügt, aus diesen entfernt oder in diesen umgeordnet werden.
  • 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 Nicht-Patentliteratur
    • „Hypercolumns for Object Segmentation and Fine-grained Localization“ von B. Hariharan, P. Arbelaez, R. Girshick, J. Malik, veröffentlicht bei „Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition“, 2015, Seiten 447 bis 456 [0067]

Claims (20)

  1. Computerimplementiertes Verfahren zur semantischen Segmentierung eines oder mehrerer Objekte in einem digitalen visuellen Medium, umfassend: durch eine Verarbeitungsvorrichtung erfolgendes Empfangen eines Satzes von Begrenzungsrahmen, der einem Satz von Zielobjekten innerhalb des digitalen visuellen Mediums potenziell entspricht; durch die Verarbeitungsvorrichtung für jeden aus dem Satz von Begrenzungsrahmen erfolgendes Bestimmen eines Pixelkennwertes für jedes Pixel des digitalen visuellen Mediums entsprechend dem Satz von Begrenzungsrahmen, wobei der Pixelkennwert eine Wahrscheinlichkeit dafür darstellt, dass jedes Pixel dem Satz von Zielobjekten, der mit dem Satz von Begrenzungsrahmen verknüpft ist, entspricht; und durch die Verarbeitungsvorrichtung erfolgendes Bestimmen einer Instanzebenenmarkierung, wobei die Instanzebenenmarkierung eine Markierung für jedes der Pixel des digitalen visuellen Mediums entsprechend dem Satz von Zielobjekten wenigstens teilweise auf Grundlage einer den Pixelkennwert für jedes Pixel beinhaltenden Kollektivwahrscheinlichkeitsabbildung beinhaltet.
  2. Computerimplementiertes Verfahren nach Anspruch 1, wobei wenigstens zwei Zielobjekte des Satzes von Zielobjekten aus derselben Klasse sind und wobei das Bestimmen der Instanzebenenmarkierung ein Unterscheiden der Pixel entsprechend einem ersten Objekt der wenigstens zwei Zielobjekte von den Pixeln des digitalen visuellen Mediums entsprechend einem zweiten Objekt der wenigstens zwei Zielobjekte beinhaltet.
  3. Computerimplementiertes Verfahren nach Anspruch 1 oder 2, wobei das Bestimmen des Pixelkennwertes ein Einsetzen eines durch ein neuronales Netzwerk trainierten Vorhersagemodells umfasst.
  4. Computerimplementiertes Verfahren nach Anspruch 3, wobei das Verfahren des Weiteren ein Trainieren des neuronalen Netzwerkes umfasst, wobei das Trainieren umfasst: durch die Verarbeitungsvorrichtung erfolgendes Empfangen eines visuellen Trainingsmediums mit einem ersten Begrenzungsrahmen entsprechend einem Trainingszielobjekt innerhalb des visuellen Trainingsmediums; durch die Verarbeitungsvorrichtung und auf Grundlage des ersten Begrenzungsrahmens erfolgendes Erzeugen einer Mehrzahl von Begrenzungsrahmen entsprechend dem Trainingszielobjekt innerhalb des visuellen Trainingsmediums, wobei der erste Begrenzungsrahmen und die Mehrzahl von Begrenzungsrahmen zusammen einen Trainingssatz von Begrenzungsrahmen bilden; durch die Verarbeitungsvorrichtung erfolgendes Erzeugen einer Mehrzahl von Abstandsabbildungen, wobei jede Abstandsabbildung in der Mehrzahl von Abstandsabbildungen einem jeweiligen Begrenzungsrahmen des Trainingssatzes von Begrenzungsrahmen entspricht; durch die Verarbeitungsvorrichtung erfolgendes Konkatenieren bzw. Verketten des visuellen Trainingsmediums mit jeder Abstandsabbildung in der Mehrzahl von Abstandsabbildungen zum Erzeugen einer Mehrzahl von Trainingsabbildungen; und durch die Verarbeitungsvorrichtung und auf Grundlage wenigstens eines Trainingspaares aus der Mehrzahl von Trainingspaaren erfolgendes Trainieren des neuronalen Netzwerkes zum Segmentieren von Pixeln des visuellen Trainingsmediums entsprechend dem Trainingszielobjekt.
  5. Computerimplementiertes Verfahren nach Anspruch 4, wobei das neuronale Netzwerk ein Faltungscodierer-/Decodierernetzwerk ist, das beinhaltet: ein Faltungscodierernetzwerk mit einer oder mehreren Faltungsschichten zum Trainieren von Filtern zum Erkennen eines oder mehrerer Merkmale des einen oder der mehreren Zielobjekte und einer oder mehreren Pooling-Schichten zum Manipulieren einer Raumgröße des wenigstens einen Trainingspaares; und ein Faltungsdecodierernetzwerk mit einer oder mehreren Entfaltungsschichten und einer oder mehreren Unpooling-Schichten zum Rekonstruieren von Details des digitalen visuellen Mediums, wobei das Trainieren des neuronalen Netzwerkes auf Grundlage des wenigstens einen Trainingspaares ein Eingeben des wenigstens einen Trainingspaares in den Faltungscodierer und den Faltungsdecodierer zum Erzeugen einer Binärinstanzmaske entsprechend dem Trainingszielobjekt beinhaltet.
  6. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei der Satz von Begrenzungsrahmen auf Grundlage eines Objektdetektionsalgorithmus empfangen wird, wobei das Empfangen des Satzes von Begrenzungsrahmen ein Empfangen von Klassenkennwerten, die mit dem Satz von Begrenzungsrahmen verknüpft sind, beinhaltet.
  7. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei der Satz von Begrenzungsrahmen auf Grundlage eines Objektdetektionsalgorithmus empfangen wird, wobei Klassenkennwerte entsprechend dem Satz von Begrenzungsrahmen auf Grundlage eines Klassifizierungsalgorithmus empfangen werden.
  8. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei die Kollektivwahrscheinlichkeitsabbildung auf Grundlage einer Mehrzahl von Wahrscheinlichkeitsabbildungen für jeden Begrenzungsrahmen aus dem Satz des Satzes von Begrenzungsrahmen erzeugt wird, wobei jede Wahrscheinlichkeitsabbildung aus der Mehrzahl von Wahrscheinlichkeitsabbildungen auf Grundlage von Klassenkennwerten entsprechend jedem Begrenzungsrahmen gewichtet wird.
  9. Computerimplementiertes Verfahren nach einem der vorhergehenden Ansprüche, wobei das Bestimmen der Instanzebenenmarkierung ein Verwenden von Wahrscheinlichkeiten der Kollektivwahrscheinlichkeitsabbildung beinhaltet, um eine Kompatibilität zwischen benachbarten Pixeln entsprechend wenigstens einem aus dem Satz von Zielobjekten zu identifizieren, wobei die Kompatibilität unter Verwendung eines Conditional-Random-Field-Modells identifiziert wird.
  10. Rechensystem zur semantischen Segmentierung eines oder mehrerer Objekte in einem digitalen visuellen Medium, wobei das Rechensystem umfasst: Mittel zum Speichern einer Mehrzahl von digitalen Medien, wobei die digitalen Medien ein digitales visuelles Medium mit einem Begrenzungsrahmensatz beinhalten, wobei der Begrenzungsrahmensatz wenigstens einen Begrenzungsrahmen beinhaltet, der einem Zielobjekt innerhalb des digitalen visuellen Mediums potenziell entspricht; und Mittel zum für jeden Begrenzungsrahmen in dem Begrenzungsrahmensatz erfolgenden Bestimmen eines Pixelkennwertes für jedes Pixel des digitalen visuellen Mediums entsprechend jedem Begrenzungsrahmen des Begrenzungsrahmensatzes, wobei der Pixelkennwert eine Wahrscheinlichkeit dafür darstellt, dass jedes Pixel dem Zielobjekt, das mit dem wenigstens einen Begrenzungsrahmen verknüpft ist, entspricht, wobei das Mittel kommunikativ mit dem Mittel zum Speichern der Mehrzahl von digitalen Medien gekoppelt ist; und Mittel zum Bestimmen einer Instanzebenenmarkierung für Pixel des digitalen visuellen Mediums entsprechend jedem Begrenzungsrahmen des Begrenzungsrahmensatzes wenigstens teilweise auf Grundlage einer den Pixelkennwert für jedes Pixel beinhaltenden Kollektivwahrscheinlichkeitsabbildung.
  11. Rechensystem nach Anspruch 10, wobei das digitale visuelle Medium ein zweites Zielobjekt innerhalb des digitalen visuellen Mediums beinhaltet, wobei das zweite Zielobjekt von dem Zielobjekt getrennt ist und eine zu dem Zielobjekt passende Klasse aufweist, wobei das Mittel zum Bestimmen der Instanzebenenmarkierung ein Mittel zum Unterscheiden der Pixel entsprechend dem Zielobjekt von den Pixeln entsprechend dem zweiten Objekt beinhaltet.
  12. Rechensystem nach Anspruch 10 oder 11, wobei das Mittel zum Bestimmen des Pixelkennwertes ein neuronales Netzwerk und ein von dem neuronalen Netzwerk trainiertes Vorhersagemodell beinhaltet.
  13. Rechensystem nach Anspruch 12, des Weiteren umfassend ein Mittel zum Trainieren des neuronalen Netzwerkes mittels Durchführen von Betriebsvorgängen, die umfassen: auf Grundlage eines visuellen Trainingsmediums mit einem Trainingszielobjekt und einem ersten Begrenzungsrahmen entsprechend dem Trainingszielobjekt erfolgendes Erzeugen einer Mehrzahl von Begrenzungsrahmen entsprechend dem Trainingszielobjekt, wobei der erste Begrenzungsrahmen und die Mehrzahl von Begrenzungsrahmen zusammen einen Trainingssatz von Begrenzungsrahmen bilden; Erzeugen einer Mehrzahl von Abstandsabbildungen, wobei jede Abstandsabbildung in der Mehrzahl von Abstandsabbildungen einem jeweiligen Begrenzungsrahmen des Trainingssatzes von Begrenzungsrahmen entspricht; Konkatenieren bzw. Verknüpfen des visuellen Trainingsmediums mit jeder Abstandsabbildung in der Mehrzahl von Abstandsabbildungen zum Erzeugen einer Mehrzahl von Trainingspaaren; und durch die Verarbeitungsvorrichtung und auf Grundlage wenigstens eines Trainingspaares aus der Mehrzahl von Trainingspaaren erfolgendes Trainieren des neuronalen Netzwerkes zum Segmentieren von Pixeln des visuellen Trainingsmediums entsprechend dem Trainingszielobjekt.
  14. Rechensystem nach Anspruch 13, wobei das neuronale Netzwerk ein Faltungscodierer-/Decodierernetzwerk ist, das beinhaltet: ein Faltungscodierernetzwerk mit einer oder mehreren Faltungsschichten zum Trainieren von Filtern zum Erkennen eines oder mehrerer Merkmale des Zielobjektes und einer oder mehreren Pooling-Schichten zum Manipulieren einer Raumgröße des wenigstens einen Trainingspaares; und ein Faltungsdecodierernetzwerk mit einer oder mehreren Entfaltungsschichten und einer oder mehreren Unpooling-Schichten zum Rekonstruieren von Details des digitalen visuellen Mediums.
  15. Rechensystem nach Anspruch 13 oder 14, wobei das Mittel zum Trainieren des neuronalen Netzwerkes Mittel zum Durchführen des Betriebsvorganges des Trainierens des neuronalen Netzwerkes zum Segmentieren der Pixel durch Eingeben des wenigstens einen Trainingspaares in einen Faltungscodierer und einen Faltungsdecodierer des neuronalen Netzwerks zum Erzeugen einer Binärinstanzmaske entsprechend dem Trainingszielobjekt beinhaltet.
  16. Rechensystem nach einem der Ansprüche 10 bis 15, wobei die Kollektivwahrscheinlichkeitsabbildung auf Grundlage einer Mehrzahl von Wahrscheinlichkeitsabbildungen für jeden Begrenzungsrahmen des Begrenzungsrahmensatzes erzeugt wird, wobei jede Wahrscheinlichkeitsabbildung aus der Mehrzahl von Wahrscheinlichkeitsabbildungen auf Grundlage von Klassenkennwerten entsprechend jedem Begrenzungsrahmen gewichtet ist.
  17. Rechensystem nach einem der Ansprüche 10 bis 16, wobei das Mittel zum Bestimmen der Instanzebenenmarkierung Mittel zum Verwenden von Wahrscheinlichkeiten der Kollektivwahrscheinlichkeitsabbildung beinhaltet, um eine Kompatibilität zwischen benachbarten Pixeln entsprechend wenigstens einem von dem einen oder den mehreren Zielobjekten zu identifizieren, wobei die Kompatibilität unter Verwendung eines Conditional-Random-Field-Modells identifiziert wird.
  18. Nichttemporäres computerlesbares Medium mit Programmcode, der von einer darauf gespeicherten Verarbeitungsvorrichtung ausgeführt werden kann, wobei der Programmcode umfasst: Programmcode zum Empfangen eines digitalen visuellen Mediums mit einem ersten Begrenzungsrahmen entsprechend einem Objekt innerhalb des digitalen visuellen Mediums; Programmcode zum auf Grundlage des ersten Begrenzungsrahmens erfolgenden Erzeugen einer Mehrzahl von Begrenzungsrahmen entsprechend dem Objekt innerhalb des digitalen visuellen Mediums, wobei der erste Begrenzungsrahmen und die Mehrzahl von Begrenzungsrahmen zusammen einen Begrenzungsrahmensatz bilden; Programmcode zum Erzeugen einer Mehrzahl von Abstandsabbildungen, wobei jede Abstandsabbildung in der Mehrzahl von Abstandsabbildungen einem jeweiligen Begrenzungsrahmen des Begrenzungsrahmensatzes entspricht; Programmcode zum Konkatenieren bzw. Verketten des digitalen visuellen Mediums mit jeder Abstandsabbildung in der Mehrzahl von Abstandsabbildungen zum Erzeugen einer Mehrzahl von Trainingspaaren; und Programmcode zum auf Grundlage der Trainingspaare erfolgenden Trainieren eines neuronalen Netzwerkes zum Segmentieren von Pixeln des digitalen visuellen Mediums entsprechend dem Objekt.
  19. Nichttemporäres computerlesbares Medium nach Anspruch 18, wobei der Programmcode des Weiteren umfasst: Programmcode zur semantischen Segmentierung eines Satzes von Zielobjekten innerhalb eines von einem trainierten neuronalen Netzwerk empfangenen eingegebenen visuellen Mediums durch: Empfangen eines oder mehrerer Begrenzungsrahmen, die dem Satz von Zielobjekten potenziell entsprechen; für jeden von dem einen oder den mehreren Begrenzungsrahmen erfolgendes Bestimmen eines Kennwertes für jedes Pixel für das eingegebene visuelle Medium, wobei der Kennwert eine Wahrscheinlichkeit dafür darstellt, dass jedes Pixel dem Satz von Zielobjekten entspricht; und Bestimmen einer Instanzebenenmarkierung, die eine Markierung für jedes der Pixel des eingegebenen visuellen Mediums entsprechend dem Satz von Zielobjekten wenigstens teilweise auf Grundlage einer den Kennwert für jedes Pixel des eingegebenen visuellen Mediums beinhaltenden Kollektivwahrscheinlichkeitsabbildung ergibt.
  20. Nichttemporäres computerlesbares Medium nach Anspruch 18 oder 19, wobei der Programmcode zum Erzeugen der Mehrzahl von Abstandsabbildungen für jede Abstandsabbildung Programmcode zum Bestimmen eines Abstandes von jedem Pixel des visuellen Trainingsmediums zu dem jeweiligen Begrenzungsrahmen umfasst, wobei die Mehrzahl von digitalen Abbildungen zu dem visuellen Trainingsmedium passende Abmessungen bzw. Dimensionen aufweist.
DE102017006558.6A 2016-10-18 2017-07-11 Semantische lnstanzebenensegmentierung Active DE102017006558B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/296,845 2016-10-18
US15/296,845 US10424064B2 (en) 2016-10-18 2016-10-18 Instance-level semantic segmentation system

Publications (2)

Publication Number Publication Date
DE102017006558A1 true DE102017006558A1 (de) 2018-04-19
DE102017006558B4 DE102017006558B4 (de) 2023-05-25

Family

ID=59771725

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017006558.6A Active DE102017006558B4 (de) 2016-10-18 2017-07-11 Semantische lnstanzebenensegmentierung

Country Status (5)

Country Link
US (1) US10424064B2 (de)
CN (1) CN107958460B (de)
AU (1) AU2017206291B2 (de)
DE (1) DE102017006558B4 (de)
GB (1) GB2555896B (de)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10719939B2 (en) * 2014-10-31 2020-07-21 Fyusion, Inc. Real-time mobile device capture and generation of AR/VR content
US10192129B2 (en) 2015-11-18 2019-01-29 Adobe Systems Incorporated Utilizing interactive deep learning to select objects in digital visual media
US11568627B2 (en) 2015-11-18 2023-01-31 Adobe Inc. Utilizing interactive deep learning to select objects in digital visual media
US10571454B2 (en) * 2017-03-13 2020-02-25 Lucidyne Technologies, Inc. Method of board lumber grading using deep learning techniques
KR102629651B1 (ko) * 2017-04-04 2024-01-29 로베르트 보쉬 게엠베하 신경망 이미지 프로세싱을 사용하는 3d 경계 박스들로서의 직접 차량 검출
US10223610B1 (en) * 2017-10-15 2019-03-05 International Business Machines Corporation System and method for detection and classification of findings in images
US10977844B2 (en) 2017-11-29 2021-04-13 Adobe Inc. Presenting multiple image segmentations
CN108345890B (zh) * 2018-03-01 2022-10-28 腾讯科技(深圳)有限公司 图像处理方法、装置和相关设备
US10157331B1 (en) * 2018-03-08 2018-12-18 Capital One Services, Llc Systems and methods for image preprocessing to improve accuracy of object recognition
US10740647B2 (en) 2018-03-14 2020-08-11 Adobe Inc. Detecting objects using a weakly supervised model
US11244195B2 (en) * 2018-05-01 2022-02-08 Adobe Inc. Iteratively applying neural networks to automatically identify pixels of salient objects portrayed in digital images
CN117710647A (zh) * 2018-06-20 2024-03-15 祖克斯有限公司 从机器学习模型输出推断出的实例分割
JP7295234B2 (ja) 2018-07-17 2023-06-20 エヌビディア コーポレーション 自律運転マシンのための回帰ベースの線分検出
CN109101907B (zh) * 2018-07-28 2020-10-30 华中科技大学 一种基于双边分割网络的车载图像语义分割系统
US20200065706A1 (en) * 2018-08-24 2020-02-27 Htc Corporation Method for verifying training data, training system, and computer program product
CN109285162A (zh) * 2018-08-30 2019-01-29 杭州电子科技大学 一种基于局部区域条件随机场模型的图像语义分割方法
CN109300115B (zh) * 2018-09-03 2021-11-30 河海大学 一种面向对象的多光谱高分辨率遥感影像变化检测方法
CN109446933B (zh) * 2018-10-12 2021-10-12 浙江科技学院 一种基于卷积神经网络的道路场景语义分割方法
RU2697649C1 (ru) 2018-10-23 2019-08-15 Общество с ограниченной ответственностью "Аби Продакшн" Способы и системы сегментации документа
WO2020102417A1 (en) * 2018-11-15 2020-05-22 Magic Leap, Inc. Systems and methods for performing self-improving visual odometry
EP3679521A1 (de) * 2018-11-16 2020-07-15 Google LLC Segmentierung von objekten durch verfeinerung von formpriorverteilungen
US11580729B2 (en) * 2019-11-22 2023-02-14 Intelinair, Inc. Agricultural pattern analysis system
US10643093B1 (en) * 2018-11-19 2020-05-05 International Business Machines Corporation Automated bounding box generation for objects in an image
CN109801307A (zh) * 2018-12-17 2019-05-24 中国科学院深圳先进技术研究院 一种全景分割方法、装置及设备
US11562171B2 (en) 2018-12-21 2023-01-24 Osaro Instance segmentation by instance label factorization
US11282208B2 (en) 2018-12-24 2022-03-22 Adobe Inc. Identifying target objects using scale-diverse segmentation neural networks
US10339424B1 (en) * 2019-01-22 2019-07-02 StradVision, Inc. Method and device of neural network operations using a grid generator for converting modes according to classes of areas to satisfy level 4 of autonomous vehicles
US10373317B1 (en) * 2019-01-22 2019-08-06 StradVision, Inc. Learning method and learning device for attention-driven image segmentation by using at least one adaptive loss weight map to be used for updating HD maps required to satisfy level 4 of autonomous vehicles and testing method and testing device using the same
US10325371B1 (en) * 2019-01-22 2019-06-18 StradVision, Inc. Method and device for segmenting image to be used for surveillance using weighted convolution filters for respective grid cells by converting modes according to classes of areas to satisfy level 4 of autonomous vehicle, and testing method and testing device using the same
US10325179B1 (en) * 2019-01-23 2019-06-18 StradVision, Inc. Learning method and learning device for pooling ROI by using masking parameters to be used for mobile devices or compact networks via hardware optimization, and testing method and testing device using the same
US11521010B2 (en) * 2019-01-23 2022-12-06 Motional Ad Llc Automatically choosing data samples for annotation
US10410352B1 (en) * 2019-01-25 2019-09-10 StradVision, Inc. Learning method and learning device for improving segmentation performance to be used for detecting events including pedestrian event, vehicle event, falling event and fallen event using edge loss and test method and test device using the same
US10402977B1 (en) * 2019-01-25 2019-09-03 StradVision, Inc. Learning method and learning device for improving segmentation performance in road obstacle detection required to satisfy level 4 and level 5 of autonomous vehicles using laplacian pyramid network and testing method and testing device using the same
CN109886272B (zh) * 2019-02-25 2020-10-30 腾讯科技(深圳)有限公司 点云分割方法、装置、计算机可读存储介质和计算机设备
CN110211052A (zh) * 2019-03-29 2019-09-06 北京工业大学 一种基于特征学习的单幅图像去雾方法
CN110008962B (zh) * 2019-04-11 2022-08-12 福州大学 基于注意力机制的弱监督语义分割方法
CN110111340B (zh) * 2019-04-28 2021-05-14 南开大学 基于多路割的弱监督实例分割方法
CN111862106B (zh) * 2019-04-30 2023-09-29 曜科智能科技(上海)有限公司 基于光场语义的图像处理方法、计算机装置、及存储介质
SG10201905273VA (en) * 2019-06-10 2019-08-27 Alibaba Group Holding Ltd Method and system for evaluating an object detection model
CN110490202B (zh) * 2019-06-18 2021-05-25 腾讯科技(深圳)有限公司 检测模型训练方法、装置、计算机设备和存储介质
GB2586678B (en) 2019-07-22 2022-06-22 Adobe Inc Utilizing multiple object detection models to automatically select user-requested objects in images
US11468550B2 (en) 2019-07-22 2022-10-11 Adobe Inc. Utilizing object attribute detection models to automatically select instances of detected objects in images
US11107219B2 (en) 2019-07-22 2021-08-31 Adobe Inc. Utilizing object attribute detection models to automatically select instances of detected objects in images
US11302033B2 (en) 2019-07-22 2022-04-12 Adobe Inc. Classifying colors of objects in digital images
US11631234B2 (en) 2019-07-22 2023-04-18 Adobe, Inc. Automatically detecting user-requested objects in images
CN110473211B (zh) * 2019-08-13 2021-11-12 上海眼控科技股份有限公司 一种弹簧片的数量的检测方法及设备
EP3786842A1 (de) 2019-08-30 2021-03-03 Tata Consultancy Services Limited Verfahren und system für semantische änderungsdetektion unter verwendung einer tiefen neuronalen netzwerkmerkmalskorrelation
CN110533046B (zh) * 2019-08-30 2022-03-29 北京地平线机器人技术研发有限公司 一种图像实例分割方法、装置、计算机可读存储介质及电子设备
US11127139B2 (en) * 2019-09-18 2021-09-21 Adobe Inc. Enhanced semantic segmentation of images
KR102436512B1 (ko) * 2019-10-29 2022-08-25 삼성전자주식회사 부호화 방법 및 그 장치, 복호화 방법 및 그 장치
US11348246B2 (en) * 2019-11-11 2022-05-31 Adobe Inc. Segmenting objects in vector graphics images
US11120280B2 (en) * 2019-11-15 2021-09-14 Argo AI, LLC Geometry-aware instance segmentation in stereo image capture processes
EP3825956B1 (de) * 2019-11-21 2022-06-22 Dassault Systèmes Verarbeitung eines 3d-signals eines formattributs über einem realen objekt
US11200455B2 (en) * 2019-11-22 2021-12-14 International Business Machines Corporation Generating training data for object detection
US11501525B2 (en) * 2019-11-26 2022-11-15 Toyota Research Institute, Inc. Systems and methods for panoptic image segmentation
US10769198B1 (en) 2020-02-06 2020-09-08 Caastle, Inc. Systems and methods for product identification using image analysis from image mask and trained neural network
US11468110B2 (en) 2020-02-25 2022-10-11 Adobe Inc. Utilizing natural language processing and multiple object detection models to automatically select objects in images
US11416711B2 (en) * 2020-03-09 2022-08-16 Nanotronics Imaging, Inc. Defect detection system
US11055566B1 (en) 2020-03-12 2021-07-06 Adobe Inc. Utilizing a large-scale object detector to automatically select objects in digital images
US11244188B2 (en) * 2020-04-10 2022-02-08 Inception Institute of Artificial Intelligence, Ltd. Dense and discriminative neural network architectures for improved object detection and instance segmentation
US11847771B2 (en) * 2020-05-01 2023-12-19 Samsung Electronics Co., Ltd. Systems and methods for quantitative evaluation of optical map quality and for data augmentation automation
CN111627029B (zh) * 2020-05-28 2023-06-16 北京字节跳动网络技术有限公司 图像实例分割结果的获取方法及装置
US11657230B2 (en) * 2020-06-12 2023-05-23 Adobe Inc. Referring image segmentation
CN116137913A (zh) 2020-07-17 2023-05-19 智动科技有限公司 用于对象分割的方法、数据处理系统、计算机程序产品和计算机可读介质
US11335004B2 (en) 2020-08-07 2022-05-17 Adobe Inc. Generating refined segmentation masks based on uncertain pixels
CN112132832B (zh) * 2020-08-21 2021-09-28 苏州浪潮智能科技有限公司 一种增强图像实例分割的方法、系统、设备及介质
CN112184738B (zh) * 2020-10-30 2022-09-13 北京有竹居网络技术有限公司 一种图像分割方法、装置、设备及存储介质
US20220164909A1 (en) * 2020-11-25 2022-05-26 Ncr Corporation Frictionless Patron Monitoring
CN113516665A (zh) * 2020-12-16 2021-10-19 腾讯科技(深圳)有限公司 图像分割模型的训练方法、图像分割方法、装置、设备
US11676279B2 (en) 2020-12-18 2023-06-13 Adobe Inc. Utilizing a segmentation neural network to process initial object segmentations and object user indicators within a digital image to generate improved object segmentations
US11587234B2 (en) 2021-01-15 2023-02-21 Adobe Inc. Generating class-agnostic object masks in digital images
US11972569B2 (en) 2021-01-26 2024-04-30 Adobe Inc. Segmenting objects in digital images utilizing a multi-object segmentation model framework
US20220261593A1 (en) * 2021-02-16 2022-08-18 Nvidia Corporation Using neural networks to perform object detection, instance segmentation, and semantic correspondence from bounding box supervision
US11875510B2 (en) 2021-03-12 2024-01-16 Adobe Inc. Generating refined segmentations masks via meticulous object segmentation
CN113159026A (zh) * 2021-03-31 2021-07-23 北京百度网讯科技有限公司 图像处理方法、装置、电子设备和介质
US11854255B2 (en) * 2021-07-27 2023-12-26 Ubkang (Qingdao) Technology Co., Ltd. Human-object scene recognition method, device and computer-readable storage medium
US11869118B2 (en) * 2021-09-22 2024-01-09 Samsung Electronics Co., Ltd. Generating a synthetic ground-truth image using a dead leaves model
CN113947771B (zh) * 2021-10-15 2023-06-27 北京百度网讯科技有限公司 图像识别方法、装置、设备、存储介质以及程序产品
US20230274560A1 (en) * 2022-02-28 2023-08-31 Zebra Technologies Corporation Using Image Processing to Identify Produce

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8300936B2 (en) * 2007-04-03 2012-10-30 Flashfoto, Inc. System and method for improving display of tuned multi-scaled regions of an image with local and global control
US8644600B2 (en) * 2007-06-05 2014-02-04 Microsoft Corporation Learning object cutout from a single example
US9443314B1 (en) * 2012-03-29 2016-09-13 Google Inc. Hierarchical conditional random field model for labeling and segmenting images
US9129192B2 (en) * 2013-12-16 2015-09-08 Adobe Systems Incorporated Semantic object proposal generation and validation
CN105981041A (zh) * 2014-05-29 2016-09-28 北京旷视科技有限公司 使用粗到细级联神经网络的面部关键点定位
CN104217225B (zh) * 2014-09-02 2018-04-24 中国科学院自动化研究所 一种视觉目标检测与标注方法
WO2016054778A1 (en) * 2014-10-09 2016-04-14 Microsoft Technology Licensing, Llc Generic object detection in images
JP6650677B2 (ja) * 2015-02-26 2020-02-19 キヤノン株式会社 映像処理装置、映像処理方法、およびプログラム
KR102592076B1 (ko) * 2015-12-14 2023-10-19 삼성전자주식회사 딥러닝 기반 영상 처리 장치 및 방법, 학습 장치
CN106295678B (zh) * 2016-07-27 2020-03-06 北京旷视科技有限公司 神经网络训练与构建方法和装置以及目标检测方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
„Hypercolumns for Object Segmentation and Fine-grained Localization" von B. Hariharan, P. Arbelaez, R. Girshick, J. Malik, veröffentlicht bei „Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition", 2015, Seiten 447 bis 456

Also Published As

Publication number Publication date
DE102017006558B4 (de) 2023-05-25
GB2555896A (en) 2018-05-16
CN107958460B (zh) 2023-09-08
CN107958460A (zh) 2018-04-24
AU2017206291A1 (en) 2018-05-10
AU2017206291B2 (en) 2021-06-17
US20180108137A1 (en) 2018-04-19
GB201711693D0 (en) 2017-09-06
GB2555896B (en) 2019-12-04
US10424064B2 (en) 2019-09-24

Similar Documents

Publication Publication Date Title
DE102017006558B4 (de) Semantische lnstanzebenensegmentierung
DE112019005750T5 (de) Erlernen des Erzeugens synthetischer Datensätze zum Trainieren neuronalerNetze
DE102017010210A1 (de) Bild-Matting mittels tiefem Lernen
DE102017009049A1 (de) Ermöglichen von Transformationen Skizze-zu-Gemälde
DE102018006247A1 (de) Digitalbildvervollständigung unter Verwendung des Deep Learning
DE112020002213T5 (de) Ermittlung von Bildeffekten
DE102017124573A1 (de) Systeme und verfahren zum beschneiden von neuronalen netzen für eine betriebsmitteleffiziente folgerung
DE102019008221A1 (de) Interaktives Bildmattieren unter Verwendung neuronaler Netze
DE112016005059T5 (de) Unterkategorienbewusste faltende neuronale Netzwerke zur Objekterfassung
DE112019001044T5 (de) Verfahren und vorrichtung für maschinelles lernen, programm, gelerntes modell und diskriminiervorrichtung
DE102019006149A1 (de) Begrenzungsbewusste Objektentfernung und Contentfüllung
DE102020007951A1 (de) Einsetzen eines der Einfärbung dienenden neuronalen Netzwerkes zum Generieren von eingefärbten Bildern auf Grundlage interaktiver Farbkanten
DE112011104487T5 (de) Verfahren und System zur prädiktiven Modellierung
DE102017005964A1 (de) Techniken zum Auswählen von Objekten in Bildern
DE112021000392T5 (de) Leistungsfähiges kommentieren der grundwahrheit
DE112016005473T5 (de) Verfahren zur standortbezogenen Werbung und System dafür
DE112020005732T5 (de) Erzeugen von trainingsdaten zur objekterkennung
DE102023104829A1 (de) Objektklasseninpainting - bzw. manipulieren in Digitalbildern unter Einsatz von klassenspezifischen Inpainting-Neuronalen- Netzwerken
DE102017006557A1 (de) Verwenden von Markierungen zum Verfolgen von hochfrequenten Offsets für Patchabgleichsalgorithmen
DE112021003680T5 (de) Deterministisch lernende videoszenenerkennung
DE102018113621A1 (de) Verfahren zum Trainieren eines konvolutionellen neuronalen Netzwerks zum Verarbeiten von Bilddaten zur Anwendung in einem Fahrunterstützungssystem
DE102012025349A1 (de) Bestimmung eines Ähnlichkeitsmaßes und Verarbeitung von Dokumenten
DE112022001468T5 (de) Selektives unkenntlichmachen von bildern
DE102019000178A1 (de) Interaktives System zum automatischen Synthetisieren einer contentsensitiven Füllung
EP3876157B1 (de) Computerimplementiertes verfahren und system zum erzeugen synthetischer sensordaten und trainingsverfahren

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: ADOBE INC., SAN JOSE, US

Free format text: FORMER OWNER: ADOBE SYSTEMS INCORPORATED, MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: MUELLER-BORE & PARTNER PATENTANWAELTE PARTG MB, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final