DE102023104829A1 - Objektklasseninpainting - bzw. manipulieren in Digitalbildern unter Einsatz von klassenspezifischen Inpainting-Neuronalen- Netzwerken - Google Patents

Objektklasseninpainting - bzw. manipulieren in Digitalbildern unter Einsatz von klassenspezifischen Inpainting-Neuronalen- Netzwerken Download PDF

Info

Publication number
DE102023104829A1
DE102023104829A1 DE102023104829.5A DE102023104829A DE102023104829A1 DE 102023104829 A1 DE102023104829 A1 DE 102023104829A1 DE 102023104829 A DE102023104829 A DE 102023104829A DE 102023104829 A1 DE102023104829 A1 DE 102023104829A1
Authority
DE
Germany
Prior art keywords
class
neural network
specific
manipulating
modulating
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.)
Pending
Application number
DE102023104829.5A
Other languages
English (en)
Inventor
Haitian Zheng
Zhe Lin
Jingwan Lu
Scott Cohen
Elya Shechtman
Connelly Barnes
Jianming Zhang
Ning Xu
Sohrab Amirghodsi
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 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 Inc filed Critical Adobe Inc
Publication of DE102023104829A1 publication Critical patent/DE102023104829A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/77Retouching; Inpainting; Scratch removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • 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
    • 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
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • 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
    • G06N3/094Adversarial learning
    • 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
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • 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/20092Interactive image processing based on input by user
    • G06T2207/20104Interactive definition of region of interest [ROI]

Landscapes

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

Abstract

Die vorliegende Offenbarung betrifft Systeme, Verfahren und nichttemporäre computerlesbare Medien zum Generieren von manipulierten Digitalbildern unter Einsatz eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes. Die offenbarten Systeme setzen beispielsweise ein klassenspezifisches kaskadiertes modulierendes manipulierendes neuronales Netzwerk ein, das kaskadierte modulierende Decodiererschichten beinhaltet, um Ersetzungspixel, die eine bestimmte Zielobjektklasse abbilden, zu generieren. Veranschaulichungshalber setzen die offenbarten Systeme in Reaktion auf eine Nutzerauswahl eines Ersetzungsbereiches und einer Zielobjektklasse ein klassenspezifisches kaskadiertes modulierendes manipulierendes neuronales Netzwerk entsprechend der Zielobjektklasse ein, um ein manipuliertes Digitalbild, das eine Instanz der Zielobjektklasse innerhalb des Ersetzungsbereiches abbildet, zu generieren. Darüber hinaus trainieren die offenbarten Systeme bei einer oder mehreren Ausführungsformen klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerke entsprechend einer Vielzahl von Zielobjektklassen, so beispielsweise entsprechend einer Himmel-Objektklasse, einer Wasser-Objektklasse, einer Boden-Objektklasse oder einer Mensch-Objektklasse.

Description

  • Hintergrund
  • Auf dem Gebiet der Digitalbildbearbeitung sind computerimplementierte Modelle beim Erzeugen von realistischen Bildern aus zufällig herausgegriffenen Seeds oder unvollständigen, maskierten Digitalbildern zunehmend effektiv. Generativ-adversative Netzwerke (Generative Adversarial Networks GANs) oder Patch-Matching-Modelle haben Digitalbildsyntheseprozesse revolutioniert, was eine fotorealistische Wiedergabe komplizierter Szenen und das Inpainting (im Folgenden auch als Manipulieren bezeichnet) von Digitalbildern bei fehlenden oder beschädigten Pixeln ermöglicht. Ungeachtet der Fortschritte bei herkömmlichen Digitalbildsystemen, die diese Modelle einsetzen, leiden herkömmliche Systeme jedoch weiterhin an einer Anzahl von Nachteilen, und zwar insbesondere mit Blick auf Genauigkeit, Effizienz und Flexibilität der implementierenden Rechenvorrichtungen.
  • Zusammenfassung
  • Die vorliegende Offenbarung beschreibt eine oder mehrere Ausführungsformen von Systemen, Verfahren und nichttemporären computerlesbaren Medien, die eines oder mehrere der vorbeschriebenen Probleme oder auch andere Probleme im Stand der Technik durch Inpainting (im Folgenden auch als Manipulieren bezeichnet) von Digitalbildern lösen, um bestimmte Objektklassen unter Einsatz eines klassenspezifischen inpainting bzw. manipulierenden neuronalen Netzwerkes (classspecific inpainting neural network) abzubilden. Insbesondere setzen die offenbarten Systeme bei einer oder mehreren Ausführungsformen das Design eines neuronalen Netzwerkes ein, das beinhaltet: einen Codierer, der Multiskalenmerkmalsdarstellungen aus einem Eingabebild mit Löchern extrahiert, und einen Decodierer mit kaskadierten modulierenden Schichten auf jedem Auflösungsniveau. Bei einer oder mehreren Ausführungsformen wenden die offenbarten Systeme in jeder kaskadierten modulierenden Schicht des Decodierers beispielsweise eine Globalmodulation an, um eine grobe semantikbewusste Struktursynthese durchzuführen, und setzen sodann eine Raummodulation ein, um die Merkmalskarte auf räumlich adaptive Weise anzupassen. Die offenbarten Systeme trainieren ein oder mehrere inpainting bzw. manipulierende neuronale Netzwerke durch Maskieren einer spezifischen Objektklasse, so beispielsweise Himmel-Bereiche, aus Trainingsdigitalbildern. Das kaskadierte modulierende inpainting bzw. manipulierende neuronale Netzwerk lernt daher, maskierte Bereiche von Digitalbildern mit Pixeln, die die spezifizierte Objektklasse abbilden, zu manipulieren (inpainting). Die offenbarten Systeme können derartige klassenspezifische inpainting bzw. manipulierende neuronale Netzwerke in einer Vielzahl von Nutzerschnittstellenanwendungen einsetzen, um Zielobjektklassen in Digitalbildern effizient, flexibel und genau neu zu generieren oder zu synthetisieren.
  • Kurzbeschreibung der Zeichnung
  • Die vorliegende Offenbarung beschreibt eine oder mehrere Ausführungsformen der Erfindung mit zusätzlicher Spezifität und Detailliertheit anhand der begleitenden Figuren. Die nachfolgenden Absätze beschreiben die Figuren kurz.
    • 1 zeigt eine exemplarische Systemumgebung, in der ein klassenspezifisches bildinpainting bzw. bildmanipulierendes System entsprechend einer oder mehreren Ausführungsformen arbeitet.
    • 2 zeigt eine Übersicht über das Einsetzen eines klassenspezifischen kaskadierten modulierenden inpainting bzw. manipulierenden neuronalen Netzwerkes zum Generieren eines manipulierten (inpainting) Digitalbildes entsprechend einer oder mehreren Ausführungsformen.
    • 3 zeigt eine exemplarische Architektur eines kaskadierten modulierenden inpainting bzw. manipulierenden neuronalen Netzwerkes entsprechend einer oder mehreren Ausführungsformen.
    • 4 zeigt eine exemplarische Architektur einer kaskadierten modulierenden Schicht eines Decodierers eines kaskadierten modulierenden inpainting bzw. manipulierenden neuronalen Netzwerkes entsprechend einer oder mehreren Ausführungsformen.
    • 5 zeigt eine exemplarische Architektur des Einsetzens von Positionscodierungen in einem kaskadierten modulierenden inpainting bzw. manipulierenden neuronalen Netzwerk entsprechend einer oder mehreren Ausführungsformen.
    • 6 zeigt eine Übersicht über das Trainieren eines klassenspezifischen kaskadierten modulierenden inpainting bzw. manipulierenden neuronalen Netzwerkes entsprechend einer oder mehreren Ausführungsformen.
    • 7 zeigt ein Flussdiagramm des Trainierens eines klassenspezifischen kaskadierten modulierenden inpainting bzw. manipulierenden neuronalen Netzwerkes entsprechend einer oder mehreren Ausführungsformen entsprechend einer oder mehreren Ausführungsformen.
    • 8A bis 8C zeigen Nutzerschnittstellen, die zum Generieren eines inpainting bzw. manipulierten Digitalbildes eingesetzt werden, entsprechend einer oder mehreren Ausführungsformen.
    • 9A bis 9C zeigen zusätzliche Nutzerschnittstellen, die zum Generieren eines inpainting bzw. manipulierten Digitalbildes eingesetzt werden, entsprechend einer oder mehreren Ausführungsformen.
    • 10 zeigt exemplarische Ergebnisse des Generierens von manipulierten Digitalbildern unter Einsatz eines klassenspezifischen kaskadierten modulierenden inpainting bzw. manipulierenden neuronalen Netzwerkes, das darauf trainiert ist, Himmel-Bereiche für Digitalbilder zu generieren, entsprechend einer oder mehreren Ausführungsformen.
    • 11 zeigt eine Tabelle experimenteller Ergebnisse entsprechend einer oder mehreren Ausführungsformen.
    • 12 zeigt eine zusätzliche Tabelle experimenteller Ergebnisse entsprechend einer oder mehreren Ausführungsformen.
    • 13 zeigt ein schematisches Diagramm eines klassenspezifischen bildmanipulierenden Systems entsprechend einer oder mehreren Ausführungsformen.
    • 14 zeigt ein Flussdiagramm mit einer Abfolge von Handlungen zum Generieren eines manipulierten Digitalbildes unter Einsatz eines klassenspezifischen kaskadierten modulierenden inpainting bzw. manipulierenden neuronalen Netzwerkes entsprechend einer oder mehreren Ausführungsformen.
    • 15 zeigt ein Blockdiagramm einer exemplarischen Rechenvorrichtung entsprechend einer oder mehreren Ausführungsformen.
  • Detailbeschreibung
  • Die vorliegende Offenbarung beschreibt eine oder mehrere Ausführungsformen eines klassenspezifischen bildinpainting Systems (im Folgenden auch als bildmanipulierendes System bezeichnet), das manipulierte Digitalbilder unter Einsatz eines klassenspezifischen inpainting bzw. manipulierenden neuronalen Netzwerkes generiert. Bei einer oder mehreren Ausführungsformen setzt das klassenspezifische bildinpainting bzw. bildmanipulierende System kaskadierte modulierende Decodiererschichten ein, die eine Inferenz in mehrere Stufen (beispielsweise globale Vorhersage und lokale Verfeinerung) zerlegen. In jeder Decodiererschicht beginnt das klassenspezifische bildmanipulierende System beispielsweise mit einer Globalcodemodulation, die die Globalbereichsbildstrukturen erfasst, gefolgt von einer räumlich adaptiven Modulation, die die Globalvorhersagen verfeinert. Zusätzlich setzt das klassenspezifische bildmanipulierende System ein einzigartiges Konzept zum Trainieren des klassenspezifischen manipulierenden neuronalen Netzwerkes ein. Insbesondere generiert das klassenspezifische bildmanipulierende System klassensegmentierte Digitalbilder unter Einsatz eines panoptischen Segmentierungsalgorithmus und setzt sodann annotierte klassenspezifische Bereiche als Maskenbereiche für das Trainieren des klassenspezifischen manipulierenden neuronalen Netzwerkes ein. Durch Nutzen eines maskenkonditionierten adversativen Verlustes für das Training lernt das klassenspezifische bildmanipulierende System Parameter eines klassenspezifischen manipulierenden neuronalen Netzwerkes, das manipulierte Digitalbilder, die bestimmte Zielobjektklassen abbilden, genau, effizient und flexibel generiert.
  • Wie eben erwähnt worden ist, setzt das klassenspezifische bildmanipulierende System bei einer oder mehreren Implementierungen ein kaskadiertes modulierendes manipulierendes neuronales Netzwerk ein. Das klassenspezifische bildmanipulierende System setzt beispielsweise mehrere einem faltungstechnischen neuronalen Netzwerk zu eigene Codiererschichten ein, um ein Digitalbild auf verschiedenen Skalen / mit verschiedenen Auflösungen zu verarbeiten, um codierte Merkmalsvektoren zu generieren. Darüber hinaus setzt das klassenspezifische bildmanipulierende System diese codierten Merkmalsvektoren bei einer oder mehreren Implementierungen ein, um eine Bildcodierung (beispielsweise einen Globalmerkmalscode oder einen anderen Merkmalsvektor), die Globalmerkmale des Digitalbildes darstellt, zu generieren. Wie erwähnt worden ist, setzt das klassenspezifische bildmanipulierende System bei einer oder mehreren Implementierungen Codiererschichten ein, die Fourier-Faltungsblöcke beinhalten, um das Empfangsfeld des Codierers zu erweitern.
  • Zusätzlich setzt das klassenspezifische bildmanipulierende System eine einzigartige kaskadierte modulierende Decodiererarchitektur ein, um ein manipuliertes Digitalbild zu generieren. Veranschaulichungshalber beinhaltet jede kaskadierte modulierende Schicht einen Globalmodulationsblock und einen zusätzlichen Modulationsblock (so beispielsweise einen Raummodulationsblock oder einen anderen Globalmodulationsblock). Bei einer oder mehreren Ausführungsformen implementieren diese Modulationsblöcke verschiedene Modulationsvorgänge, um verschiedene Merkmalskartendarstellungen zu generieren. Ein Globalmodulationsblock wendet daher eine Modulation auf Grundlage eines Globalmerkmalscodes auf eine eingegebene Globalmerkmalskarte an, um eine neue Globalmerkmalskarte zu generieren. Auf ähnliche Weise kann ein Raummodulationsblock eine Raummodulation (beispielsweise auf Grundlage eines Raumtensors zusammen mit einem Globalmerkmalscode) auf eine eingegebene Lokalmerkmalskarte anwenden, um eine neue Lokalmerkmalskarte zu generieren.
  • Bei einigen Ausführungsformen setzt das klassenspezifische bildmanipulierende System 102 eine andere Architektur für ein klassenspezifisches manipulierendes neuronales Netzwerk ein. Bei einer oder mehreren Implementierungen setzt das klassenspezifische bildmanipulierende System 102 beispielsweise ein manipulierendes neuronales Netzwerk ein, das Codiererschichten und Decodiererschichten ohne kaskadierte modulierende Decodiererschichten beinhaltet. Daher kann das klassenspezifische bildmanipulierende System 102 eine Vielzahl von klassenspezifischen manipulierenden neuronalen Netzwerken einsetzen.
  • Wie vorstehend erwähnt worden ist, lernt das klassenspezifische bildmanipulierende System auch Parameter für das klassenspezifische manipulierende neuronale Netzwerk. Das klassenspezifische bildmanipulierende System verarbeitet beispielsweise ein Archiv von Digitalbildern unter Einsatz eines panoptischen Segmentierungsmodells, um Objekte entsprechend bestimmten Klassen, die in den Digitalbildern abgebildet sind, zu segmentieren. Das klassenspezifische bildmanipulierende System filtert diese Digitalbilder, die eine Zielobjektklasse abbilden, und setzt die entsprechenden Masken zum Trainieren des klassenspezifischen manipulierenden neuronalen Netzwerkes ein. Insbesondere setzt das klassenspezifische bildmanipulierende System das klassenspezifische manipulierende neuronale Netzwerk ein, um ein manipuliertes Digitalbild aus einem klassensegmentierten Digitalbild zu generieren. Das klassenspezifische bildmanipulierende System setzt sodann ein Diskriminatornetzwerk ein, um eine Authentizitätsvorhersage für das manipulierte Digitalbild zu generieren. Das klassenspezifische bildmanipulierende System bestimmt einen adversativen Verlust aus der Authentizitätsvorhersage und setzt den adversativen Verlust ein, um Parameter des klassenspezifischen manipulierenden neuronalen Netzwerkes zu modifizieren.
  • Bei einer oder mehreren Ausführungsformen setzt das klassenspezifische bildmanipulierende System eine Positionscodierung beim Trainieren und Implementieren des klassenspezifischen manipulierenden neuronalen Netzwerkes ein. Insbesondere bestimmt das klassenspezifische bildmanipulierende System Positionscodierungen, die Fourier-Merkmale von Merkmalskarten für verschiedene Schichten des klassenspezifischen manipulierenden neuronalen Netzwerkes wiedergeben. Das klassenspezifische bildmanipulierende System injiziert diese Positionscodierungen in die Eingabe des klassenspezifischen manipulierenden neuronalen Netzwerkes und jeder Schicht des Netzwerkes (das heißt Codiererschichten und Decodiererschichten), um die strukturelle Vorhersagefähigkeit des Modells zu verbessern.
  • Sobald das Training erfolgt ist, setzt das klassenspezifische bildmanipulierende System das klassenspezifische manipulierende neuronale Netzwerk zudem ein, um manipulierte Digitalbilder zu generieren. Insbesondere setzt das klassenspezifische bildmanipulierende System eine Vielzahl von Nutzerschnittstellen und entsprechende Arbeitsabläufe ein, um manipulierte Digitalbilder, die die Zielobjektklasse abbilden, unter Einsatz des klassenspezifischen manipulierenden neuronalen Netzwerkes zu generieren. Beispielsweise stellt das klassenspezifische bildmanipulierende System eine Nutzerschnittstelle mit einem Anfangsdigitalbild bereit. In Reaktion auf eine Nutzerinteraktion mit dem Digitalbild (beispielsweise das Malen eines neuen Himmel-Bereiches oder eine Segmentierungsauswahl zur Ersetzung eines bestehenden Himmel-Bereiches) setzt das klassenspezifische bildmanipulierende System das klassenspezifische manipulierende neuronale Netzwerk ein, um Ersetzungspixel, die eine Instanz der Zielobjektklasse abbilden, zu generieren. Daher kann das klassenspezifische bildmanipulierende System 102 einen Ersetzungsbereich generieren, der ein Zielobjekt, das in der Eingabe überhaupt nicht vorhanden ist (das aus dem Eingabebild beispielsweise maskiert ist), wiedergibt.
  • Wie vorstehend erwähnt worden ist, zeigen herkömmliche Systeme eine Anzahl von Unzulänglichkeiten oder Nachteilen insbesondere mit Blick auf die Genauigkeit, die Flexibilität und die Effizienz bei implementierenden Rechenvorrichtungen. Herkömmliche Systeme scheitern beispielsweise oftmals beim Generieren von plausiblen Bildstrukturen, wenn sie mit großen Löchern in komplexen Bildern konfrontiert sind. Veranschaulichungshalber generieren herkömmliche Systeme oftmals manipulierte Digitalbilder mit unrealistischem Content und visuellen Artefakten. Obwohl Patch-Matching-Konzepte beim Generieren von stationären Texturen oder beim Vervollständigen von einfachen Formen oftmals effektiv sind, können sie neue Texturen oder Bildstrukturen nicht vorspiegeln. Auf ähnliche Weise scheitern Deep-Learning-Konzepte oftmals beim Generieren von Content, der sowohl innerhalb eines Loches wie auch zu bestehendem Digitalcontent außerhalb des Loches konsistent ist. Mit anderen Worten, herkömmliche Systeme scheitern am Herleiten von semantischen Clues bzw. Hinweisen aus einem unvollständigen Digitalbild beim Weiterverbreiten von auf niedriger Ebene gegebenen visuellen Merkmalen in einem globalen Bereich.
  • Zusätzlich scheitern herkömmliche Systeme auch beim Generieren von Ersetzungspixeln für semantische Bereiche, die in der Eingabe überhaupt nicht vorhanden sind. Herkömmliche Systeme sind beispielsweise oftmals dafür ausgelegt, Pixel aus bekannten Bereichen zu borgen. Diese Systeme scheitern daher beim genauen Vervollständigen von semantischen Bereichen, wo diese in einem Eingabedigitalbild fehlen (oder maskiert sind).
  • Diese Ungenauigkeiten ergeben sich oftmals aus der fehlenden Flexibilität herkömmlicher Systeme. Ungenauigkeiten beim Manipulieren großer Löcher rühren beispielsweise teilweise vom Fehlen flexibler Netzwerkstrukturen her, die sowohl die Long-Range-Abhängigkeit wie auch die auf hoher Ebene gegebene Semantik eines Bildes erfassen kann. Daher fehlen Patching-Matching-Konzepten beispielsweise Mechanismen zum Modellieren von auf hoher Ebene gegebenen Semantiken zum Vervollständigen einer neuen semantischen Struktur innerhalb des Loches. Auf ähnliche Weise fehlen Deep-Learning-Konzepten strukturelle Konzepte zum Erfassen von semantischer Information zur globalen Strukturvervollständigung. Ein aktuelles Deep-Learning-Konzept - so wie es beschrieben ist bei „Large scale image completion via comodulated generative adversarial networks“ von Shengyu Zhao, Jonathan Cui, Yilun Sheng, Yue Dong, Xiao Liang, Eric I Chang und Yan Xu, veröffentlicht bei arXiv preprint arXiv:2103.10428 (2021) (im Folgenden „CoModGAN“) - setzt beispielsweise einen Comodulationsmechanismus ein, der codierte Bildmerkmale mit einer Globalcodemodulation decodiert. Dieses Konzept ist jedoch auf die Wiedergewinnung räumlicher oder anderer Merkmalsdetails beschränkt und setzt Skip-Verbindungen ein, die ungültige kontextbezogene Merkmale, die von einem Codierer generiert werden, an den Decodierer innerhalb des Loches weiterreichen. Viele neue manipulierende Modelle sind zudem dahingehend unflexibel, dass sie mit den neuesten GAN-Architekturen nicht kompatibel sind, so beispielsweise die Architektur, die beschrieben ist bei: „Analyzing and improving the image quality of StyleGAN“ von Tero Karras, Samuli Laine, Miika Aittala, Janne Hellsten, Jaakko Lehtinen und Timo Aila, veröffentlicht bei Proc. CVPR (2020) (im Folgenden StyleGAN2); die Quelle wird hiermit gänzlich durch Verweis mit aufgenommen.
  • Darüber hinaus sind herkömmliche Systeme auch bezüglich ihrer Codierungskonzepte ungenau. Einige herkömmliche Systeme setzen vollständige Faltungsmodelle ein, die unter langsamem Wachstum des effektiven Empfangsfeldes in frühen Stufen des Codierers leiden. Entsprechend kann das Einsetzen einer Faltung mit Stride innerhalb des Codierers ungültige Merkmale innerhalb des Lochbereiches erzeugen, was die Merkmalskorrektur auf der Decodierungsstufe noch problematischer macht. Entsprechend generieren herkömmliche Systeme oftmals zusätzliche Ungenauigkeiten beim Einsetzen von faltungstechnischen Codiererarchitekturen.
  • Darüber hinaus sind herkömmliche Systeme oftmals unflexibel und können keine bestimmten Zielobjektklassen beim Generieren von Ersetzungspixeln generieren. Herkömmliche generative Modelle sind bezüglich bestimmter Objekte, die beim Manipulieren eines Digitalbildes generiert werden, oftmals agnostisch. Entsprechend können diese Modelle keine Ersetzungspixel, die auf eine für einen bestimmten Kontext gewünschte Zielobjektklasse ausgerichtet sind, generieren. Einige herkömmliche Systeme sind zum Einfügen von Himmel-Flächen innerhalb eines Digitalbildes entwickelt worden. Herkömmliche Systeme sind jedoch oftmals nicht fähig, neuen, neuartigen Himmel zu generieren, sondern reproduzieren oder kopieren vielmehr vorhandene Himmel-Bilder. Darüber hinaus treten bei herkömmlichen Systemen Probleme der Kompatibilität mit Nicht-Himmel-Flächen auf. Insbesondere fügen herkömmliche Systeme Himmel-Flächen ein, die nicht zur Geometrie, Beleuchtung und anderen visuellen Merkmalen des Digitalbildes passen.
  • Zusätzlich sind herkömmliche Systeme oftmals ineffizient und erfordern ausufernde Rechenressourcen zur Implementierung. Systeme, die die eben erläuterten Belange der Genauigkeit und Flexibilität zu verbessern versuchen, verschärfen diese Ineffizienzen tendenziell weiter. Veranschaulichungshalber bedingt eine verbesserte Genauigkeit bei Deep-Learning-Konzepten oftmals zusätzliche gelernte Parameter und zusätzliche Rechenressourcen beim Speichern und der Verarbeitungsleistung, um die Deep-Learning-Modelle zu trainieren und zu implementieren.
  • Bei einer oder mehreren Ausführungsformen stellt das klassenspezifische bildmanipulierende System eine Vielzahl von Verbesserungen oder Vorteilen gegenüber herkömmlichen Systemen bereit. Durch Einsetzen eines kaskadierten modulierenden manipulierenden neuronalen Netzwerkes generieren eine oder mehrere Ausführungsformen des klassenspezifischen bildmanipulierenden Systems beispielsweise realistischere und genauere manipulierte Digitalbilder. Wie nachstehend (beispielsweise anhand 11) noch detaillierter erläutert wird, zeigen experimentelle Ergebnisse, dass exemplarische Ausführungsformen des klassenspezifischen bildmanipulierenden Systems die Genauigkeit im Vergleich zu herkömmlichen Systemen erheblich verbessern.
  • Zusätzlich kann das klassenspezifische bildmanipulierende System semantische Bereiche (so beispielsweise einen Himmel-Bereich), die in einem eingegebenen Digitalbild überhaupt nicht vorhanden (beispielsweise maskiert) sind, genau generieren. Durch Einsetzen eines klassenspezifischen manipulierenden neuronalen Netzwerkes kann das klassenspezifische bildmanipulierende System 102 Himmel-Bereiche (oder andere semantische Bereiche) aus einem Digitalbild vollständig ersetzen und dabei den neuen Bereich genau auf die kontextbezogenen Merkmale des übrigen Digitalbildes abstimmen.
  • Wie vorstehend erwähnt worden ist, setzt das klassenspezifische bildmanipulierende System bei einer oder mehreren Ausführungsformen kaskadierte modulierende Decodiererschichten ein. Bei einigen Implementierungen beinhalten diese kaskadierten modulierenden Decodiererschichten beispielsweise eine Globalcodemodulation (die Globalbereichsbildstrukturen erfasst) und eine räumlich adaptive Modulation (die die Globalvorhersagen auf räumlich variierende Weise verfeinert). Im Gegensatz zu herkömmlichen Systemen stellt das klassenspezifische bildmanipulierende System bei einer oder mehreren Implementierungen daher einen Mechanismus bereit, um verzerrte lokale Details zu berichtigen, was die manipulierten Pixel global und lokal kohärent zum Rest des Bildes macht. Bei einigen Ausführungsformen setzt das klassenspezifische bildmanipulierende System des Weiteren Modulationsblöcke (beispielsweise ohne Instanznormierung) ein, um das Design mit aktuelleren GAN-Architekturen, so beispielsweise mit StyleGAN2, kompatibel zu machen.
  • Darüber hinaus verbessert das klassenspezifische bildmanipulierende System bei einer oder mehreren Ausführungsformen zudem die Genauigkeit durch Einsetzen einer einzigartigen Codierungsstruktur. Das klassenspezifische bildmanipulierende System setzt beispielsweise Fast-Fourier-Faltungsblöcke innerhalb der Codiererschichten ein, was das Empfangsfeld des Codierers in frühen Stufen erweitert, um zu ermöglichen, dass der Netzwerkcodierer die globale Struktur besser erfasst. Das klassenspezifische bildmanipulierende System 102 setzt Fast-Fourier-Faltungsblöcke in jeder Codiererschicht (bei verschiedenen Auflösungen) ein, um Merkmale in frühen Stufen weiterzuverbreiten, was das Generieren von ungültigen Merkmalen innerhalb des Loches vermeidet und Ergebnisse verbessert.
  • Bei einer oder mehreren Ausführungsformen verbessert das klassenspezifische bildmanipulierende System die Genauigkeit des Weiteren durch Einsetzen von Positionscodierungen. Wie vorstehend erwähnt worden ist, generiert das klassenspezifische bildmanipulierende System Positionscodierungen, die Fourier-Merkmale für jede Merkmalskarte wiedergeben. Das klassenspezifische bildmanipulierende System setzt diese Positionscodierungen als Eingabe für das manipulierende neuronale Netzwerk sowie in Codiererschichten und Decodiererschichten ein, um die strukturelle Vorhersagegenauigkeit zu verbessern.
  • Zusätzlich verbessert das klassenspezifische bildmanipulierende System die Genauigkeit und die Flexibilität beim Generieren von Ersetzungspixeln für Digitalbilder, die eine oder mehrere Instanzen einer bestimmten Zielobjektklasse abbilden. Anstatt generische Ersetzungspixel zu generieren, stellt das klassenspezifische bildmanipulierende System eine verbesserte Genauigkeit und Flexibilität beim Generieren von Ersetzungspixeln, die eine gewünschte Objektklasse abbilden, bereit. Daher wählt eine Clientvorrichtung bei einer oder mehreren Implementierungen eine Zielobjektklasse aus, und das klassenspezifische bildmanipulierende System setzt ein entsprechendes klassenspezifisches manipulierendes neuronales Netzwerk ein, um Ersetzungspixel, die eine oder mehrere Instanzen der gewünschten Objektklasse abbilden, zu generieren. Durch Einsetzen eines klassenspezifischen manipulierenden neuronalen Netzwerkes setzt das klassenspezifische bildmanipulierende System darüber hinaus ein datengetriebenes generatives Modell ein, um diverse, neuartige Bereiche, die zu umgebenden Bildcontents kohärent sind, zu generieren.
  • Des Weiteren verbessert das klassenspezifische bildmanipulierende System die Genauigkeit und die Flexibilität nicht auf Kosten der Effizienz. Wie nachstehend noch detaillierter (beispielsweise anhand 12) erläutert wird, verbessert das klassenspezifische bildmanipulierende System bei einer oder mehreren Ausführungsformen die Genauigkeit im Vergleich zu herkömmlichen Systemen, ohne die Anzahl von Parametern, die zum Generieren des manipulierten Digitalbildes eingesetzt werden, zu vergrößern (und in einigen Fällen die Anzahl dieser Parameter zu verkleinern). Entsprechend verbessert das klassenspezifische bildmanipulierende System die Genauigkeit nicht zulasten der Effizienz des Computerspeichers und der Verarbeitungsleistung im Vergleich zu herkömmlichen Systemen (und verbessert sie in manchen Fällen sogar).
  • Zusätzliche Details im Zusammenhang mit dem klassenspezifischen bildmanipulierenden System werden nunmehr anhand der Figuren beschrieben. 1 zeigt beispielsweise ein schematisches Diagramm einer exemplarischen Systemumgebung zum Implementieren des klassenspezifischen bildmanipulierenden Systems 102 entsprechend einer oder mehreren Ausführungsformen. Eine Übersicht über das klassenspezifische bildmanipulierende System 102 ist anhand 1 gegeben. Anschließend folgt eine detailliertere Beschreibung der Komponenten und Prozesse des klassenspezifischen bildmanipulierenden Systems 102 anhand der nachfolgenden Figuren.
  • Wie gezeigt ist, beinhaltet die Umgebung einen/mehrere Server 104, eine Clientvorrichtung 108, eine Datenbank 112 und ein Netzwerk 114. Jede der Komponenten der Umgebung kommuniziert über das Netzwerk 114, wobei das Netzwerk 114 ein beliebiges geeignetes Netzwerk ist, über das Rechenvorrichtungen kommunizieren. Exemplarische Netzwerke werden nachstehend detaillierter anhand 12 erläutert.
  • Wie erwähnt worden ist, beinhaltet die Umgebung eine Clientvorrichtung 108. Die Clientvorrichtung 108 ist eine aus einer Vielzahl von Rechenvorrichtungen, darunter ein Smartphone, ein Tablet, ein intelligenter (smart) Fernseher, ein Desktopcomputer, ein Laptopcomputer, eine Vorrichtung für virtuelle Realität, eine Vorrichtung für erweiterte Realität oder eine andere Rechenvorrichtung, wie sie anhand 12 beschrieben wird. Obwohl 1 eine einzige Instanz der Rechenvorrichtung 108 zeigt, beinhaltet die Umgebung bei einigen Ausführungsformen mehrere verschiedene Clientvorrichtungen, die jeweils einem anderen Nutzer (beispielsweise einem Digitalbildbearbeiter) zugeordnet sind. Die Clientvorrichtung 108 kommuniziert mit dem Server / den Servern 104 über das Netzwerk 114. Die Clientvorrichtung 108 stellt für den Server / die Server 104 beispielsweise Information bereit, die Clientvorrichtungsinteraktionen (beispielsweise Digitalbildauswahlen, Nutzerinteraktionen zur Anforderung des Generierens oder Modifizierens von Digitalbildern oder eine andere Eingabe) angibt, und empfängt von dem Server / den Servern 104 Information, so beispielsweise generierte manipulierte Digitalbilder. In einigen Fällen stellt das klassenspezifische bildmanipulierende System 102 auf dem Server / den Servern 104 daher Information auf Grundlage einer Clientvorrichtungsinteraktion über die Clientvorrichtung 108 bereit und empfängt diese.
  • Wie in 1 gezeigt ist, beinhaltet die Clientvorrichtung 108 eine Clientanwendung 110. Insbesondere ist die Clientanwendung 110 eine Webanwendung, eine native Anwendung, die auf der Clientvorrichtung 108 installiert ist (beispielsweise eine Mobilanwendung, eine Desktopanwendung und dergleichen), oder eine cloudbasierte Anwendung, bei der die Funktionalität gänzlich oder in Teilen von dem Server / den Servern 104 übernommen wird. Auf Grundlage von Anweisungen seitens der Clientanwendung 110 präsentiert die Clientvorrichtung 108 dem Nutzer Information oder zeigt ihm diese an, darunter Digitalbilder, so beispielsweise manipulierte Digitalbilder, maskierte Digitalbilder und/oder auswählbare Optionen zum Generieren und Bearbeiten von Digitalbildern (beispielsweise zum Angeben von Objekten zur Entfernung und/oder Manipulation). In einigen Fällen beinhaltet die Clientanwendung 110 gänzlich oder in Teilen das klassenspezifische bildmanipulierende System 102 und/oder klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerke 116a bis 116n (oder andere klassenspezifische manipulierende neuronale Netzwerke).
  • Wie in 1 dargestellt ist, beinhaltet die Umgebung den Server / die Server 104. Der Server / die Server 104 nimmt/nehmen ein Generieren, Nachverfolgen, Speichern, Verarbeiten, Empfangen und Übertragen von elektronischen Daten vor, so beispielsweise von Angaben zu Clientvorrichtungsinteraktionen und/oder Pixeln von Digitalbildern. Der Server / die Server 104 empfängt/empfangen Daten von der Clientvorrichtung 108 beispielsweise in Form einer Angabe einer Clientvorrichtungsinteraktion, ein manipuliertes Digitalbild zu generieren. In Reaktion hierauf überträgt/übertragen der Server / die Server 104 Daten an die Clientvorrichtung 108, um zu veranlassen, dass die Clientvorrichtung 108 ein manipuliertes Digitalbild auf Grundlage der Clientvorrichtungsinteraktion anzeigt oder präsentiert.
  • Bei einigen Ausführungsformen kommuniziert/kommunizieren der Server / die Server 104 mit der Clientvorrichtung 108, um Daten über das Netzwerk 114 zu übertragen und/oder zu empfangen, darunter Clientvorrichtungsinteraktionen, manipulierte Digitalbilder und/oder andere Daten. Bei einigen Ausführungsformen umfasst/umfassen der Server / die Server 104 einen verteilten Server, bei dem der Server / die Server 104 eine Anzahl von Servervorrichtungen beinhaltet/beinhalten, die über das Netzwerk 114 verteilt und an verschiedenen physischen Orten befindlich sind. Der Server / die Server 104 umfasst/umfassen einen Contentserver, einen Anwendungsserver, einen Kommunikationsserver, einen Webhostingserver, einen multidimensionalen Server oder einen Server maschinellen Lernens. Der Server / die Server 104 greift/greifen des Weiteren auf die Datenbank 112 zu und setzt diese ein, um Information zu speichern und abzurufen, so beispielsweise ein generatives manipulierendes neuronales Netzwerk (beispielsweise die klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerke 116a bis 116n), gespeicherte Probedigitalbilder für das Training und/oder generierte manipulierte Digitalbilder.
  • Wie weiter in 1 gezeigt ist, beinhaltet/beinhalten der Server / die Server 104 zudem das klassenspezifische bildmanipulierende System 102 als Teil eines Digitalcontentbearbeitungssystems 106. Bei einer oder mehreren Implementierungen kann das Digitalcontentbearbeitungssystem 106 ein Speichern, Generieren, Modifizieren, Bearbeiten, Verbessern, Bereitstellen, Verteilen und/oder Teilen (Sharing) von Digitalcontent, so beispielsweise von Digitalbildern, vornehmen. Das Digitalcontentbearbeitungssystem 106 stellt für die Clientvorrichtung 108 beispielsweise Werkzeuge über die Clientanwendung 110 bereit, um Digitalbilder zu generieren und zu modifizieren.
  • Bei einer oder mehreren Ausführungsformen beinhaltet/beinhalten der Server / die Server 104 gänzlich oder in Teilen das klassenspezifische bildmanipulierende System 102. Das klassenspezifische bildmanipulierende System 102 arbeitet beispielsweise auf dem Server / den Servern, um ein generatives manipulierendes neuronales Netzwerk zum Generieren von manipulierten Digitalbildern zu trainieren. In einigen Fällen setzt das klassenspezifische bildmanipulierende System 102 lokal auf dem Server / den Servern 104 oder an einem anderen Netzwerkort (beispielsweise in der Datenbank 112) ein klassenspezifisches kaskadiertes modulierendes manipulierendes neuronales Netzwerk ein, das ein oder mehrere konstituierende neuronale Netzwerke beinhaltet, so beispielsweise ein neuronales Codierernetzwerk, ein neuronales Generatornetzwerk und/oder ein neuronales Diskriminatornetzwerk.
  • In einigen Fällen beinhaltet die Clientvorrichtung 108 das klassenspezifische bildmanipulierende System 102 gänzlich oder in Teilen. Die Clientvorrichtung 108 nimmt beispielsweise ein Generieren, Beziehen (beispielsweise Herunterladen) oder Einsetzen eines oder mehrerer Aspekte des klassenspezifischen bildmanipulierenden Systems 112, so beispielsweise bezüglich der klassenspezifischen kaskadierten modulierenden manipulierenden Netzwerke 116a bis 116n), von dem Server / den Servern 104 vor. Bei einigen Implementierungen ist, wie in 1 gezeigt ist, das klassenspezifische bildmanipulierende System 102 gänzlich oder in Teilen auf der Clientvorrichtung 108 befindlich. Das klassenspezifische bildmanipulierende System 102 beinhaltet beispielsweise eine Webhostinganwendung, die ermöglicht, dass die Clientvorrichtung 108 mit dem Server / den Servern 104 interagiert. Veranschaulichungshalber greift die Clientvorrichtung 108 bei einer oder mehreren Implementierungen auf eine Webpage zu, die von dem Server / den Servern 104 unterstützt und/oder gehostet wird.
  • Bei einer oder mehreren Ausführungsformen arbeiten die Clientvorrichtung 108 und der Server / die Server 104 zusammen, um das klassenspezifische bildmanipulierende System 102 zu implementieren. Bei einigen Ausführungsformen trainiert/trainieren der Server / die Server 104 beispielsweise eines oder mehrere der hier erläuterten neuronalen Netzwerke und stellt/stellen das eine oder die mehreren neuronalen Netzwerke für die Clientvorrichtung 108 zur Implementierung bereit (beispielsweise um manipulierte Digitalbilder auf der Clientvorrichtung 108 zu generieren). Bei einigen Ausführungsformen trainiert/trainieren der Server / die Server 104 ein oder mehrere neuronale Netzwerke, die Clientvorrichtung 108 fordert ein manipuliertes Digitalbild an, der Server / die Server 104 generiert/generieren ein manipuliertes Digitalbild unter Einsatz des einen oder der mehreren neuronalen Netzwerke und stellt/stellen das manipulierte Digitalbild für die Clientvorrichtung 108 bereit. Darüber hinaus unterstützt die Clientvorrichtung 108 bei einigen Implementierungen das Training des einen oder der mehreren neuronalen Netzwerke.
  • Obwohl 1 eine spezielle Anordnung der Umgebung zeigt, weist die Umgebung bei einigen Ausführungsformen eine andere Anordnung der Komponenten auf und/oder kann insgesamt eine andere Anzahl oder einen anderen Satz von Komponenten aufweisen. Wie erwähnt worden ist, ist das klassenspezifische bildmanipulierende System 102 beispielsweise durch die Clientvorrichtung 108 implementiert (beispielsweise gänzlich oder in Teilen darauf befindlich). Zusätzlich kommuniziert die Clientvorrichtung 108 bei einer oder mehreren Ausführungsformen direkt mit dem klassenspezifischen bildmanipulierenden System 102 unter Umgehung des Netzwerkes 114. Des Weiteren sind bei einigen Ausführungsformen die klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerke 116a bis 116n in der Datenbank 112 gespeichert und werden von dem Server / den Servern 104, der Clientvorrichtung 108 oder einer Vorrichtung dritter Seite vorgehalten.
  • Wie erwähnt worden ist, setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen ein klassenspezifisches kaskadiertes modulierendes manipulierendes neuronales Netzwerk ein, um manipulierte Digitalbilder zu generieren. 2 zeigt beispielsweise das klassenspezifische bildmanipulierende System 102 beim Generieren eines manipulierten Digitalbildes 208 aus einem Digitalbild 202 mit einem Ersetzungsbereich 204 unter Einsatz eines oder mehrerer der klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerke 116a bis 116n entsprechend einer oder mehreren Ausführungsformen.
  • Wie in 2 gezeigt ist, identifiziert das klassenspezifische bildmanipulierende System 102 das Digitalbild 202 mit einem Ersetzungsbereich 204. Bei einer oder mehreren Ausführungsformen identifiziert das klassenspezifische bildmanipulierende System 102 das Digitalbild 202 auf Grundlage einer oder mehrerer Nutzerinteraktionen auf einer Clientvorrichtung. Eine Clientvorrichtung kann beispielsweise ein Digitalbild (beispielsweise aus einem Archiv von Digitalbildern, die auf der Clientvorrichtung oder einem Remote-Server gespeichert sind) auswählen. Darüber hinaus kann das klassenspezifische bildmanipulierende System 102 eine Angabe einer Auswahl eines Bereiches des Digitalbildes zum Ersetzen, Manipulieren oder Ausfüllen empfangen.
  • Beinhalten kann der Ersetzungsbereich 204 beispielsweise eine Fläche, einen Abschnitt, eine Maske oder ein Loch innerhalb eines Digitalbildes zur Ersetzung, Abdeckung oder Füllung mit Ersetzungspixeln. Bei einigen Ausführungsformen identifiziert das klassenspezifische bildmanipulierende System 102 den Ersetzungsbereich 204 auf Grundlage einer Nutzerauswahl von Pixeln zum Bewegen, Entfernen, Abdecken oder Ersetzen aus einem Digitalbild. Veranschaulichungshalber kann eine Clientvorrichtung ein ablenkendes oder unerwünschtes Objekt oder einen solchen Bereich eines Digitalbildes auswählen. Das klassenspezifische bildmanipulierende System 102 kann das ablenkende oder unerwünschte Objekt oder einen solchen Bereich löschen oder entfernen und Ersetzungspixel generieren. In einigen Fällen identifiziert das klassenspezifische bildmanipulierende System 102 den Ersetzungsbereich 204 durch Generieren einer Digitalbildmaske mittels eines Segmentierungsmodells (beispielsweise mittels eines segmentierenden neuronalen Netzwerkes, das ein Objekt zum Bewegen oder Entfernen identifiziert).
  • Das klassenspezifische bildmanipulierende System 102 kann den Ersetzungsbereich 204 auf eine Vielzahl von Weisen identifizieren. Bei einigen Ausführungsformen wendet das klassenspezifische bildmanipulierende System 102 einen Segmentierungsalgorithmus an. Veranschaulichungshalber wendet das klassenspezifische bildmanipulierende System 102 ein einen Vordergrund, einen Hintergrund oder ein markantes Objekt segmentierendes Modell an. Auf ähnliche Weise wendet das klassenspezifische bildmanipulierende Modell 102 bei einigen Ausführungsformen einen panoptischen Segmentierungsalgorithmus an. Bei einigen Ausführungsformen wendet das klassenspezifische bildmanipulierende System 102 einen Nutzerauswahlsegmentierungsalgorithmus an, der ein Digitalobjekt entsprechend positiven, negativen, Begrenzungs- oder Bereichseingaben über ein Digitalbild segmentiert. Bei einigen Implementierungen stellt das klassenspezifische bildmanipulierende System 102 eine Vielzahl von Segmentierungsobjekten zur Anzeige bereit und empfängt eine Nutzerauswahl eines der Segmentierungsobjekte als Ersetzungsbereich 204.
  • Zusätzlich empfängt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Implementierungen eine Angabe einer Zielobjektklasse. Das klassenspezifische bildmanipulierende System 102 empfängt beispielsweise eine Auswahl des Ersetzungsbereiches 204 unter Einsatz eines Werkzeuges, das der Zielobjektklasse zugeordnet ist (beispielsweise unter Einsatz eines Himmel-Füllwerkzeuges oder eines Wasser-Füllwerkzeuges). Entsprechend empfängt das klassenspezifische bildmanipulierende System 102 bei einigen Ausführungsformen eine Auswahl des Ersetzungsbereiches 204 und der entsprechenden Zielobjektklasse über dieselbe Nutzerinteraktion (beispielsweise ein Himmel-Ersetzungssegmentierungswerkzeug, das zum Auswählen des bestehenden Himmels und zum Angeben einer gewünschten Ersetzung des Ersetzungsbereiches durch neuen Himmel eingesetzt wird). Bei einigen Ausführungsformen identifiziert das klassenspezifische bildmanipulierende System 102 einen Ersetzungsbereich (beispielsweise unter Einsatz eines Segmentierungsalgorithmus) und empfängt eine separate Nutzerinteraktion zum Identifizieren einer Zielobjektklasse, die den Ersetzungsbereich ersetzen soll (beispielsweise eine Auswahl eines Boden-Zielobjektes unter mehreren auswählbaren Zielobjektelementen).
  • Bei einigen Implementierungen bestimmt das klassenspezifische bildmanipulierende System 102 die Zielobjektklasse automatisch. Das klassenspezifische bildmanipulierende System 102 kann eine Klassifizierung beispielsweise entsprechend Pixeln in dem Ersetzungsbereich oder rings um diesen bestimmen. Bei einer oder mehreren Ausführungsformen setzt das klassenspezifische bildmanipulierende System 102 die Klassifizierung ein, um die Zielobjektklasse intelligent zu bestimmen. Das klassenspezifische bildmanipulierende System 102 kann daher beispielsweise bestimmen, dass der Ersetzungsbereich 204 vorher Himmel-Pixel (oder umgebende Pixel, die einen Himmel-Bereich angeben) abgebildet hat. In Reaktion hierauf kann das klassenspezifische bildmanipulierende System 102 einen neuen Himmel unter Einsatz des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes 116a generieren.
  • Wie gezeigt ist, setzt das klassenspezifische bildmanipulierende System 102 das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116a ein, um Ersetzungspixel für den Ersetzungsbereich 204 zu generieren. Insbesondere generiert das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116a Ersetzungspixel, die eine Instanz der Zielobjektklasse abbilden (beispielsweise neuen Himmel in Reaktion auf eine Angabe einer Himmel-Zielobjektklasse abbilden). Bei einigen Ausführungsformen bezeichnet der Begriff „neuronales Netzwerk“ ein maschinell lernendes Modell, das auf Grundlage von Eingaben auf das Generieren von Vorhersagen, das Bestimmen von Klassifizierungen oder das Nähern von unbekannten Funktionen trainiert und/oder eingestellt worden ist. Ein neuronales Netzwerk beinhaltet beispielsweise ein Modell von (beispielsweise in Schichten organisierten) wechselseitig verbundenen künstlichen Neuronen, die kommunizieren und lernen, komplexe Funktionen zu nähern und Ausgaben (beispielsweise generierte Digitalbilder) auf Grundlage von mehreren Eingaben, die für das neuronale Netzwerk bereitgestellt werden, zu generieren. In einigen Fällen bezeichnet ein neuronales Netzwerk einen Algorithmus (oder einen Satz von Algorithmen), der Techniken des Deep Learning zum Modellieren von auf hoher Ebene gegebenen Abstraktionen an Daten implementiert. Ein neuronales Netzwerk beinhaltet beispielsweise ein faltungstechnisches neuronales Netzwerk, ein rekurrentes neuronales Netzwerk (beispielsweise LSTM), ein neuronales Graphennetzwerk, ein generativ-adversatives neuronales Netzwerk oder eine andere Architektur.
  • Im Zusammenhang damit beinhaltet ein generativ-adversatives neuronales Netzwerk (oder „GAN“) ein neuronales Netzwerk, das über einen adversativen Prozess eingestellt oder trainiert worden ist, um ein Ausgabedigitalbild (beispielsweise aus einem eingegebenen Digitalbild) zu generieren. In einigen Fällen beinhaltet ein generativ-adversatives neuronales Netzwerk mehrere konstituierende neuronale Netzwerke, so beispielsweise ein neuronales Codierernetzwerk und ein oder mehrere neuronale Decodierer/Generator-Netzwerke. Ein neuronales Codierernetzwerk extrahiert beispielsweise latenten Code aus einem Rauschvektor oder aus einem Digitalbild. Ein neuronales Generatornetzwerk (oder eine Kombination von neuronalen Generatornetzwerken) generiert ein modifiziertes Digitalbild durch Kombinieren von extrahiertem latentem Code (beispielsweise aus dem neuronalen Codierernetzwerk). Während des Trainings analysiert ein neuronales Diskriminatornetzwerk im Wettbewerb mit dem neuronalen Generatornetzwerk ein generiertes Digitalbild, um eine Authentizitätsvorhersage durch eine Bestimmung dessen zu generieren, ob das generierte Digitalbild echt (beispielsweise aus einem Satz von gespeicherten Digitalbildern) oder gefälscht (beispielsweise nicht aus dem Satz von gespeicherten Digitalbildern) ist. Das neuronale Diskriminatornetzwerk veranlasst zudem, dass das klassenspezifische bildmanipulierende System 102 Parameter des neuronalen Codierernetzwerkes und/oder des einen oder der mehreren neuronalen Generatornetzwerke modifiziert, um gegebenenfalls Digitalbilder zu generieren, die das neuronale Diskriminatornetzwerk mit Blick auf die Angabe, dass ein generiertes Digitalbild ein echtes Digitalbild ist, austricksen.
  • In diesem Zusammenhang bezeichnet ein generativ-adversatives neuronales Netzwerk ein neuronales Netzwerk mit einer spezifischen Architektur oder einem spezifischen Zweck, so beispielsweise ein generatives manipulierendes neuronales Netzwerk. Ein generatives manipulierendes neuronales Netzwerk beinhaltet beispielsweise ein generativ-adversatives neuronales Netzwerk, das Pixel eines Digitalbildes mit Ersetzungspixeln manipuliert oder füllt. In einigen Fällen manipuliert ein generatives manipulierendes neuronales Netzwerk ein Digitalbild durch Ausfüllen von Lochbereichen (die durch Digitalbildmasken angegeben sind), die Pixel beinhalten, die als fehlerhaft, fehlend oder auf andere Weise unerwünscht bestimmt oder auf andere Weise bezeichnet worden sind. Wie vorstehend erwähnt worden ist, definiert eine Digitalbildmaske bei einigen Ausführungsformen einen Ersetzungsbereich unter Nutzung einer Segmentierung oder einer Maske, die Pixel, die innerhalb eines Digitalbildes entfernt oder ersetzt werden sollen, angeben, überlagern, abdecken oder hervorheben.
  • Entsprechend beinhaltet das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116a ein generatives manipulierendes neuronales Netzwerk, das einen Decodierer einsetzt, der eine oder mehrere kaskadierte modulierende Decodiererschichten beinhaltet (die beispielsweise darauf trainiert sind, Ersetzungspixel entsprechend einer Zielobjektklasse zu generieren). Wie in 2 gezeigt ist, beinhaltet das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116a mehrere kaskadierte modulierende Decodiererschichten 210 bis 216. Eine kaskadierte modulierende Decodiererschicht beinhaltet beispielsweise wenigstens zwei verbundene (beispielsweise kaskadierte) modulierende Blöcke zum Modulieren eines Eingabesignals beim Generieren eines manipulierten Digitalbildes. Veranschaulichungshalber kann eine kaskadierte modulierende Decodiererschicht einen ersten Globalmodulationsblock und einen zweiten Globalmodulationsblock beinhalten. Auf ähnliche Weise kann eine kaskadierte modulierende Decodiererschicht einen ersten Globalmodulationsblock (der Globalmerkmale analysiert und ein globales, räumlich invariantes Konzept einsetzt) und einen zweiten Raummodulationsblock (der Lokalmerkmale unter Einsatz eines räumlich variierenden Konzeptes analysiert) beinhalten. Zusätzliche Details im Zusammenhang mit Modulationsblöcken sind nachstehend (beispielsweise anhand 3 und 4) angegeben.
  • Wie dargestellt ist, trainiert das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Implementierungen mehrere klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerke 116a bis 116n. Das klassenspezifische bildmanipulierende System 102 trainiert verschiedene klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerke 116a bis 116n, um manipulierte Digitalbilder, die verschiedene Zielobjektklassen abbilden, zu generieren. Das erste klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116a entspricht beispielsweise einer Himmel-Objektklasse, das zweite klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116b entspricht einer Boden-Objektklasse, und das dritte klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116n entspricht einer Mensch-Objektklasse. Das klassenspezifische bildmanipulierende System 102 kann zudem ein klassenspezifisches kaskadiertes modulierendes manipulierendes neuronales Netzwerk entsprechend verschiedenen Zielobjektklassen trainieren (beispielsweise eine Wasser-Objektklasse, eine Eis-Objektklasse, eine Berg-Objektklasse, eine Auto-Objektklasse, eine Gebäude/Struktur-Objektklasse, eine Straße-Objektklasse, eine Baum-Objektklasse, eine Hund-Objektklasse oder eine Katze-Objektklasse).
  • Wie gezeigt ist, setzt das klassenspezifische bildmanipulierende System 102 das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116a (und die kaskadierten modulierenden Decodiererschichten 210 bis 216) ein, um das manipulierte Digitalbild 208 zu generieren. Insbesondere generiert das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 116a das manipulierte Digitalbild 208 durch Generieren von Ersetzungspixeln für den Ersetzungsbereich 204 entsprechend der Zielobjektklasse. Wie dargestellt ist, ist der Ersetzungsbereich 204 nunmehr mit Ersetzungspixeln gefüllt, die eine fotorealistische Instanz der Zielobjektklasse (beispielsweise Himmel) anstelle des Ersetzungsbereiches 204 abbilden.
  • Wie vorstehend erwähnt worden ist, setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Implementierungen ein einzigartiges kaskadiertes modulierendes manipulierendes neuronales Netzwerk, das kaskadierte modulierende Decodiererschichten beinhaltet, ein, um manipulierte Digitalbilder zu generieren. 3 zeigt eine exemplarische Architektur eines kaskadierten modulierenden manipulierenden neuronalen Netzwerkes 302 entsprechend einer oder mehreren Ausführungsformen.
  • Wie dargestellt ist, beinhaltet das kaskadierte modulierende manipulierende neuronale Netzwerk 302 einen Codierer 304 und einen Decodierer 306. Insbesondere beinhaltet der Codierer 304 mehrere Faltungsschichten 308a bis 308n auf verschiedenen Skalen / bei verschiedenen Auflösungen. Das klassenspezifische bildmanipulierende System 102 führt die Digitalbildeingabe 310 (beispielsweise eine Codierung des Digitalbildes) der ersten Faltungsschicht 308a zu, um einen codierten Merkmalsvektor auf einer höheren Skala (beispielsweise bei einer niedrigeren Auflösung) zu generieren. Die zweite Faltungsschicht 308b verarbeitet den codierten Merkmalsvektor auf der höheren Skala (bei der niedrigeren Auflösung) und generiert einen zusätzlichen codierten Merkmalsvektor (auf noch einer anderen höheren Skala / bei noch einer anderen niedrigeren Auflösung). Das klassenspezifische bildmanipulierende System 102 generiert diese codierten Merkmalsvektoren iterativ, bis die letzte / der höchsten Skala zu eigene Faltungsschicht 308n erreicht und eine letzte codierte Merkmalsvektordarstellung des Digitalbildes generiert worden ist.
  • Wie dargestellt ist, generiert das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen einen Globalmerkmalscode aus dem letzten codierten Merkmalsvektor des Codierers 304. Ein Globalmerkmalscode beinhaltet eine Merkmalsdarstellung des Digitalbildes aus einer globalen (beispielsweise auf einer hohen Ebene, auf einer hohen Skala, bei einer niedrigen Auflösung gegebenen) Perspektive. Beinhalten kann ein Globalmerkmalscode insbesondere eine Darstellung des Digitalbildes, die einen codierten Merkmalsvektor auf der höchsten Skala / bei der niedrigsten Auflösung (oder einen anderen codierten Merkmalsvektor, der eine Schwellenskala/Schwellenauflösung erfüllt) wiedergibt.
  • Wie dargestellt ist, wendet das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen eine einem neuronalen Netzwerk zu eigene Schicht (beispielsweise eine vollständig verbundene (fully connected) Schicht) auf den letzten codierten Merkmalsvektor an, um einen Stilcode 312 (beispielsweise einen Stilvektor) zu generieren. Zusätzlich generiert das klassenspezifische bildmanipulierende System 102 den Globalmerkmalscode durch Kombinieren des Stilcodes 312 mit einem Zufallsstilcode 314. Insbesondere generiert das klassenspezifische bildmanipulierende System 102 den Zufallsstilcode 314 durch Einsetzen einer einem neuronalen Netzwerk zu eigenen Schicht (beispielsweise unter Einsatz eines Mehrschichten-Perzeptrons), um einen eingegebenen Rauschvektor zu verarbeiten. Die dem neuronalen Netzwerk zu eigene Schicht bildet den eingegebenen Rauschvektor auf einen Zufallsstilcode 314 ab. Das klassenspezifische bildmanipulierende System 102 kombiniert (beispielsweise durch Konkatenieren bzw. Verketten, Hinzufügen bzw. Addieren oder Multiplizieren) den Zufallsstilcode 314 mit dem Stilcode 312, um den Globalmerkmalscode 316 zu generieren. Obwohl 3 ein bestimmtes Konzept zum Generieren des Globalmerkmalscodes 316 darstellt, kann das klassenspezifische bildmanipulierende System 102 eine Vielzahl von verschiedenen Konzepten zum Generieren eines Globalmerkmalscodes einsetzen, der codierte Merkmalsvektoren des Codierers 304 generiert (beispielsweise ohne den Stilcode 312 und/oder den Zufallsstilcode 314).
  • Wie vorstehend erwähnt worden ist, kann das klassenspezifische bildmanipulierende System 102 eine Bildcodierung unter Einsatz des Codierers 304 generieren. Eine Bildcodierung bezeichnet eine codierte Darstellung des Digitalbildes. Daher kann eine Bildcodierung einen oder mehrere Codierungsmerkmalsvektoren, einen Stilcode und/oder einen Globalmerkmalscode beinhalten.
  • Bei einer oder mehreren Ausführungsformen setzt das klassenspezifische bildmanipulierende System 102 mehrere Fourier-Faltungscodiererschichten ein, um eine Bildcodierung (beispielsweise die codierten Merkmalsvektoren, den Stilcode 312 und/oder den Globalmerkmalscode 316) zu generieren. Eine Fourier-Faltungscodiererschicht (oder eine schnelle Fourier-Faltung) umfasst beispielsweise eine Faltungsschicht, die nicht lokale Empfangsfelder und eine Kreuzskalenfusion innerhalb einer Faltungseinheit beinhaltet. Insbesondere kann eine schnelle Fourier-Faltung drei Arten von Berechnungen in einer einzigen Betriebseinheit beinhalten, nämlich einen lokalen Zweig, der eine Small-Kernel-Faltung durchführt, einen halbglobalen Zweig, der spektral gestapelte Bildpatches verarbeitet, und einen globalen Zweig, der ein Bildniveauspektrum manipuliert. Diese drei Zweige gehen komplementär mit verschiedenen Skalen um. Zusätzlich kann eine schnelle Fourier-Faltung einen mehrzweigigen Aggregationsprozess zur Kreuzskalenfusion beinhalten. Bei einer oder mehreren Ausführungsformen setzt das klassenspezifische bildmanipulierende System 102 beispielsweise eine Fast-Fourier-Faltungsschicht ein, wie sie beschrieben wird bei: „Fast fourier convolution, Advances in Neural Information Processing Systems“ von Lu Chi, Borui Jiang und Yadong Mu; 33 (2020); die Quelle ist hiermit in Gänze durch Verweis mit aufgenommen.
  • Insbesondere setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen Fourier-Faltungscodiererschichten für jede der Codiererfaltungsschichten 308a bis 308n ein. Daher setzt das klassenspezifische bildmanipulierende System 102 verschiedene Fourier-Faltungscodiererschichten mit verschiedenen Skalen/Auflösungen ein, um codierte Merkmalsvektoren mit einem verbesserten, nicht lokalen Empfangsfeld zu generieren.
  • Der Betrieb des Codierers 304 kann auch anhand von Variablen oder Gleichungen beschrieben werden, um die Funktionalität des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes 302 zu demonstrieren. Wie erwähnt worden ist, ist das kaskadierte modulierende manipulierende neuronale Netzwerk 302 beispielsweise ein Codierer-Decodierer-Netzwerk mit vorgeschlagenen kaskadierten modulierenden Blöcken in seiner Decodierungsstufe zur Bildmanipulation. Insbesondere beginnt das kaskadierte modulierende manipulierende neuronale Netzwerk 302 mit einem Codierer E, der das Teilbild und die Maske als Eingaben nimmt, um Multiskalenmerkmalskarten aus der eingegebenen Auflösung für die Auflösung 4×4 zu erzeugen: F e ( 1 ) , , F e ( L ) = E ( x ( 1 m ) , m ) ,
    Figure DE102023104829A1_0001
  • Hierbei ist F e ( i )
    Figure DE102023104829A1_0002
    das generierte Merkmal auf der Skala 1 ≤ i ≤ L (wobei L die höchste Skala oder Auflösung ist). Der Codierer ist durch einen Satz von Stride-2-Faltungen mit Residualverbindung (residual connection) implementiert.
  • Nach dem Generieren des höchsten Skalenmerkmals F e ( L )
    Figure DE102023104829A1_0003
    erzeugt eine vollständig verbundene Schicht, gefolgt von einer ℓ2-Normierung einen Globalstilcode s = fc ( F e ( L ) ) / fc ( F e ( L ) ) 2
    Figure DE102023104829A1_0004
    zur globalen Darstellung der Eingabe. Parallel zu dem Codierer erzeugt ein MLP-basiertes Abbildungsnetzwerk einen Zufallsstilcode w aus einem normierten Gauß'schen Zufallsrauschen z, wobei die Stochastizität des Generierungsprozesses simuliert wird. Das klassenspezifische bildmanipulierende System 102 fügt w mit s zusammen, um den endgültigen Globalcode g = [s; w] zum Decodieren zu erzeugen. Wie erwähnt worden ist, kann das klassenspezifische bildmanipulierende System 102 den letzten Globalcode als Bildcodierung für das Digitalbild einsetzen.
  • Wie vorstehend erwähnt worden ist, zeigen vollständige Faltungsmodelle bei einigen Implementierungen ein langsames Wachstum des effektiven Empfangsfeldes, und zwar insbesondere in der frühen Stufe des Netzwerkes. Entsprechend kann das Einsetzen einer Faltung mit Stride innerhalb des Codierers ungültige Merkmale innerhalb des Lochbereiches generieren, was die Merkmalskorrektur in der Decodiererstufe problematischer macht. Eine Fast-Fourier-Faltung (Fast Fourier Convolution FFC) kann frühe Schichten unterstützen, um ein Empfangsfeld zu erreichen, das ein gesamtes Bild abdeckt. Herkömmliche Systeme setzen bislang jedoch nur eine FFC in der Flaschenhalsschicht (bottleneck layer) ein, was rechentechnisch problematisch ist. Die enge Flaschenhalsschicht kann globale semantische Merkmale zudem nicht effektiv erfassen. Entsprechend ersetzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Implementierungen den Faltungsblock in dem Codierer durch eine FFC für die Codiererschichten. Die FFC ermöglicht, dass der Codierer Merkmale in einer frühen Stufe weiterverbreitet und so das Problem des Generierens ungültiger Merkmale innerhalb des Loches löst, was zu einer Verbesserung der Ergebnisse beiträgt.
  • Wie weiter in 3 gezeigt ist, beinhaltet das kaskadierte modulierende manipulierende neuronale Netzwerk 302 zudem den Decodierer 306. Wie gezeigt ist, beinhaltet der Decodierer 306 mehrere kaskadierte modulierende Schichten 320a bis 320n. Die kaskadierten modulierenden Schichten 320a bis 320n verarbeiten Eingabemerkmale (beispielsweise eingegebene Globalmerkmalskarten und eingegebene Lokalmerkmalskarten), um neue Merkmale (beispielsweise neue Globalmerkmalskarten und neue Lokalmerkmalskarten) zu generieren. Insbesondere arbeitet jede der kaskadierten modulierenden Schichten 320a bis 320n auf einer anderen Skala / bei einer anderen Auflösung. Daher nimmt die erste kaskadierte modulierende Schicht 320a Eingabemerkmale bei einer ersten Auflösung / auf einer ersten Skala und generiert neue Merkmale auf einer niedrigeren Skala / bei einer höheren Auflösung (beispielsweise durch Upsampling als Teil eines oder mehrerer Modulationsvorgänge). Auf ähnliche Weise arbeiten zusätzliche kaskadierte modulierende Schichten auf weiteren niedrigeren Skalen / bei weiteren höheren Auflösungen bis zum Generieren des manipulierten Digitalbildes auf einer Ausgabeskala / bei einer Ausgabeauflösung (beispielsweise auf der niedrigsten Skala / bei der höchsten Auflösung).
  • Darüber hinaus beinhaltet jede der kaskadierten modulierenden Schichten mehrere Modulationsblöcke. Wie in 3 gezeigt ist, beinhaltet die erste kaskadierte modulierende Schicht 320a beispielsweise einen Globalmodulationsblock und einen Raummodulationsblock. Insbesondere führt das klassenspezifische bildmanipulierende System 102 eine Globalmodulation mit Blick auf Eingabemerkmale des Globalmodulationsblocks durch. Darüber hinaus führt das klassenspezifische bildmanipulierende System 102 eine Raummodulation mit Blick auf Eingabemerkmale des Raummodulationsblocks durch. Mittels Durchführen sowohl einer Globalmodulation wie auch einer Raummodulation innerhalb jeder kaskadierten modulierenden Schicht verfeinert das klassenspezifische bildmanipulierende System 102 Globalpositionen, um genauere manipulierte Digitalbilder zu generieren.
  • Wie dargestellt ist, sind die kaskadierten modulierenden Schichten 3320a bis 320n derart kaskadiert, dass der Globalmodulationsblock dem Raummodulationsblock zugeführt wird. Insbesondere führt das klassenspezifische bildmanipulierende System 102 die Raummodulation in dem Raummodulationsblock auf Grundlage von Merkmalen durch, die in dem Globalmodulationsblock generiert werden. Veranschaulichungshalber setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen den Globalmodulationsblock ein, um ein Zwischenmerkmal zu generieren. Das klassenspezifische bildmanipulierende System 102 setzt sodann eine Faltungsschicht (beispielsweise ein faltungstechnisches 2-Schicht-Affinparameternetzwerk) ein, um das Zwischenmerkmal in einen Raumtensor umzuwandeln. Das klassenspezifische bildmanipulierende System 102 setzt den Raumtensor sodann dafür ein, die Eingabemerkmale, die von dem Raummodulationsblock analysiert werden, zu modulieren.
  • 4 stellt beispielsweise zusätzliche Details im Zusammenhang mit dem Betrieb der Globalmodulationsblöcke und der Raummodulationsblöcke entsprechend einer oder mehreren Ausführungsformen bereit. Insbesondere zeigt 4 einen Globalmodulationsblock 402 und einen Raummodulationsblock 403. Wie in 4 gezeigt ist, beinhaltet der Globalmodulationsblock 402 einen ersten Globalmodulationsvorgang 404 und einen zweiten Globalmodulationsvorgang 406. Des Weiteren beinhaltet der Raummodulationsblock 403 einen Globalmodulationsvorgang 408 und einen Raummodulationsvorgang 410.
  • Ein Modulationsblock (oder Modulationsvorgang) beinhaltet beispielsweise einen computerimplementierten Prozess zum Modulieren (beispielsweise Skalieren oder Verschieben) eines Eingabesignals entsprechend einer oder mehreren Bedingungen. Veranschaulichungshalber beinhaltet der Modulationsblock ein Verstärken von gewissen Merkmalen bei gleichzeitigem Entgegenwirken/Normieren dieser Verstärkungen, um den Vorgang innerhalb eines generativen Modells zu halten. Daher kann ein Modulationsblock (oder Modulationsvorgang) beispielsweise eine Modulationsschicht, eine Faltungsschicht und eine Normierungsschicht beinhalten. Die Modulationsschicht skaliert jedes Eingabemerkmal der Faltung, und die Normierung entfernt den Effekt der Skalierung aus der Statistik der Ausgabemerkmalskarten der Faltung.
  • Da eine Modulationsschicht eine Merkmalsstatistik modifiziert, beinhaltet ein Modulationsblock (oder Modulationsvorgang) oftmals ein oder mehrere Konzepte des Angehens dieser statistischen Änderungen. Ein Modulationsblock (oder Modulationsvorgang) kann beispielsweise einen computerimplementierten Prozess beinhalten, der eine Batchnormierung oder eine Instanznormierung einsetzt, um ein Merkmal zu normieren. Die Modulation wird durch Skalieren und Verschieben der normierten Aktivierung entsprechend affinen Parametern, die aus Eingabebedingungen vorhergesagt werden, erreicht. Auf ähnliche Weise ersetzen einige Modulationsprozeduren eine Merkmalsnormierung durch einen Demodulationsprozess. Daher kann ein Modulationsblock (oder Modulationsvorgang) eine Modulationsschicht, eine Faltungsschicht und eine Demodulationsschicht beinhalten. Bei einer oder mehreren Ausführungsformen beinhaltet ein Modulationsblock (oder Modulationsvorgang) beispielsweise diejenigen Modulationskonzepte, die bei StyleGAN2 beschrieben werden. Ein Modulationsblock kann einen oder mehrere Modulationsvorgänge beinhalten.
  • Darüber hinaus betrifft ein Globalmodulationsblock (oder Globalmodulationsvorgang) einen Modulationsblock (oder Modulationsvorgang), der ein Eingabesignal auf räumlich invariante Weise moduliert. Ein Globalmodulationsblock (oder Globalmodulationsvorgang) führt eine Modulation beispielsweise entsprechend Globalmerkmalen eines Digitalbildes (die beispielsweise über Koordinaten einer Merkmalskarte oder eines Bildes hinweg räumlich nicht variieren) durch. Ein Globalmodulationsblock beinhaltet daher beispielsweise einen Modulationsblock, der ein Eingabesignal entsprechend einer Bildcodierung (beispielsweise einem Globalmerkmalscode), die von einem Codierer generiert wird, moduliert. Ein Globalmodulationsblock kann mehrere Globalmodulationsvorgänge beinhalten.
  • Ein Raummodulationsblock (oder Raummodulationsvorgang) betrifft einen Modulationsblock (oder Modulationsvorgang), der ein Eingabesignal auf räumlich variierende Weise (beispielsweise entsprechend einer räumlich variierenden Merkmalskarte) moduliert. Insbesondere kann ein Raummodulationsblock (oder ein Raummodulationsvorgang) einen Raumtensor einsetzen, um ein Eingabesignal auf räumlich variierende Weise zu modulieren. Bei einer oder mehreren Ausführungsformen wendet ein Globalmodulationsblock eine Globalmodulation an, bei der affine Parameter über Raumkoordinaten hinweg einheitlich bzw. gleichmäßig sind. Ein Raummodulationsblock wendet eine räumlich variierende affine Transformation an, die über Raumkoordinaten hinweg variiert. Bei einigen Ausführungsformen kann ein Raummodulationsblock einen Raummodulationsvorgang in Kombination mit einem anderen Modulationsvorgang (beispielsweise einem Globalmodulationsvorgang und einem Raummodulationsvorgang) beinhalten.
  • Ein Raummodulationsvorgang kann beispielsweise eine räumlich adaptive Modulation beinhalten, wie sie beschrieben wird bei: „Semantic image synthesis with spatially-adaptive normalization“ von Taesung Park, Ming-Yu Liu, Ting-Chun Wang und Jun-Yan Zhu, veröffentlicht bei Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (2019); die Quelle wird hiermit in Gänze durch Verweis mit aufgenommen (im Folgenden Taesung genannt). Bei einigen Ausführungsformen setzt der Raummodulationsvorgang einen Raummodulationsvorgang mit einer anderen Architektur als bei Taesung ein, darunter eine Modulations-Faltungs-Demodulations-Pipeline, wie sie nachstehend noch detaillierter beschrieben wird.
  • Wie in 4 gezeigt ist, setzt das klassenspezifische bildmanipulierende System 102 daher einen Globalmodulationsblock 402 ein. Wie gezeigt ist, beinhaltet der Globalmodulationsblock 402 einen ersten Globalmodulationsvorgang 404 und einen zweiten Globalmodulationsvorgang 406. Insbesondere verarbeitet der erste Globalmodulationsvorgang 404 eine eingegebene Globalmerkmalskarte 402. Die eingegebene Globalmerkmalskarte 412 beinhaltet einen Merkmalsvektor, der von dem kaskadierten modulierenden manipulierenden neuronalen Netzwerk generiert wird und Globalmerkmale (beispielsweise auf hoher Ebene gegebene Merkmale oder Merkmale, die dem gesamten Digitalbild entsprechen) wiedergibt. Die Globalmerkmalskarte 412 beinhaltet daher beispielsweise einen Merkmalsvektor, der Globalmerkmale wiedergibt, die aus einem vorherigen Globalmodulationsblock einer kaskadierten Decodierungsschicht generiert werden. Die Globalmerkmalskarte 412 kann zudem einen Merkmalsvektor beinhalten, der den codierten Merkmalsvektoren entspricht, die von dem Codierer generiert werden (So kann das klassenspezifische bildmanipulierende System 102 in einer ersten Decodiererschicht beispielsweise einen codierten Merkmalsvektor, einen Stilcode, einen Globalmerkmalscode, eine Konstante, einen Rauschvektor oder einen anderen Merkmalsvektor als Eingabe einsetzen).
  • Wie gezeigt ist, beinhaltet der erste Globalmodulationsvorgang 404 eine Modulationsschicht 404a, eine Upsampling-Schicht 404b, eine Faltungsschicht 404c und eine Normierungsschicht 404d. Das klassenspezifische bildmanipulierende System 102 setzt die Modulationsschicht 404a insbesondere ein, um eine Globalmodulation der anfänglichen Globalmerkmalskarte 412 auf Grundlage eines Globalmerkmalscodes 414 (beispielsweise des Globalmerkmalscodes 316) durchzuführen. Insbesondere wendet das klassenspezifische bildmanipulierende System 102 eine Neuronalnetzwerkschicht (beispielsweise eine vollständig verbundene (fully connected) Schicht) auf den Globalmerkmalscode 414 an, um einen Globalmerkmalsvektor 416 zu generieren. Das klassenspezifische bildmanipulierende System 102 moduliert die anfängliche Globalmerkmalskarte 412 sodann unter Einsatz des Globalmerkmalsvektors 416.
  • Zusätzlich wendet das klassenspezifische bildmanipulierende System 102 die Upsampling-Schicht 404b (beispielsweise zum Modifizieren der Auflösungsskala) an. Des Weiteren wendet das klassenspezifische bildmanipulierende System 102 die Faltungsschicht 404c an. Zusätzlich wendet das klassenspezifische bildmanipulierende System 102 die Normierungsschicht 404d an, um den ersten Globalmodulationsvorgang 404 zu vervollständigen. Wie gezeigt ist, generiert der erste Globalmodulationsvorgang 404 ein Globalzwischenmerkmal 418. Insbesondere generiert das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen das Globalzwischenmerkmal 418 durch Kombinieren (beispielsweise Konkatenieren bzw. Verketten) der Ausgabe des ersten Globalmodulationsvorganges 404 mit einem codierten Merkmalsvektor 402 (beispielsweise aus einer Faltungsschicht des Codierers mit einer passenden Skalierung/Auflösung).
  • Wie dargestellt ist, setzt das klassenspezifische bildmanipulierende System 102 zudem einen zweiten Globalmodulationsvorgang 406 ein. Insbesondere wendet das klassenspezifische bildmanipulierende System 102 den zweiten Globalmodulationsvorgang 406 auf das Globalzwischenmerkmal 418 an, um eine neue Globalmerkmalskarte 422 zu generieren. Insbesondere wendet das klassenspezifische bildmanipulierende System 102 eine Globalmodulationsschicht 406a auf das Globalzwischenmerkmal 418 (beispielsweise mit Konditionierung an dem Globalmerkmalsvektor 416) an. Das klassenspezifische bildmanipulierende System 102 wendet zudem eine Faltungsschicht 406b und eine Normierungsschicht 406c an, um eine neue Globalmerkmalskarte 422 zu generieren. Wie gezeigt ist, wendet das klassenspezifische bildmanipulierende System 102 bei einigen Ausführungsformen eine räumliche Tendenz (spatial bias) beim Generieren der neuen Globalmerkmalskarte 422 an.
  • Des Weiteren setzt das klassenspezifische bildmanipulierende System 102, wie in 4 gezeigt ist, einen Raummodulationsblock 403 ein. Insbesondere beinhaltet der Raummodulationsblock 403 einen Globalmodulationsvorgang 408 und einen Raummodulationsvorgang 410. Der Globalmodulationsvorgang 408 verarbeitet eine eingegebene Lokalmerkmalskarte 424. Die eingegebene Lokalmerkmalskarte 424 beinhaltet beispielsweise einen Merkmalsvektor, der von dem kaskadierten modulierenden manipulierenden neuronalen Netzwerk generiert worden ist und Lokalmerkmale (beispielsweise auf niedriger Ebene gegebene, spezifische oder räumlich variierende Merkmale) wiedergibt. Die Lokalmerkmalskarte 424 beinhaltet daher beispielsweise einen Merkmalsvektor, der Lokalmerkmale wiedergibt, die von einem vorherigen Raummodulationsblock einer kaskadierten Decodiererschicht generiert werden. Die Globalmerkmalskarte 412 kann zudem einen Merkmalsvektor beinhalten, der den codierten Merkmalsvektoren entspricht, die von dem Codierer generiert werden (Beispielsweise kann das klassenspezifische bildmanipulierende System 102 in einer ersten Decodiererschicht einen codierten Merkmalsvektor, einen Stilcode, einen Rauschvektor oder einen anderen Merkmalsvektor einsetzen.
  • Wie gezeigt ist, setzt das klassenspezifische bildmanipulierende System 102 den Globalmodulationsvorgang 408 ein, um ein Lokalzwischenmerkmal 426 aus der Lokalmerkmalskarte 424 zu generieren. Insbesondere wendet das klassenspezifische bildmanipulierende System 102 eine Modulationsschicht 408a, eine Upsampling-Schicht 408b, eine Faltungsschicht 408c und eine Normierungsschicht 408d an. Darüber hinaus wendet das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen eine räumliche Tendenz (spatial bias) und ein Rundsenderauschen (broadcast noise) auf die Ausgabe des Globalmodulationsvorganges 408 an, um das Lokalzwischenmerkmal 426 zu generieren.
  • Wie in 4 dargestellt ist, setzt das klassenspezifische bildmanipulierende System 102 den Raummodulationsvorgang 410 ein, um eine neue Lokalmerkmalskarte 428 zu generieren. Der Raummodulationsvorgang 410 moduliert das Lokalzwischenmerkmal 426 auf Grundlage des Globalzwischenmerkmals 418. Insbesondere generiert das klassenspezifische bildmanipulierende System 102 einen Raumtensor 430 aus dem Globalzwischenmerkmal 418. Das klassenspezifische bildmanipulierende System 102 wendet beispielsweise ein faltungstechnisches Affinparameternetzwerk an, um den Raumtensor 430 zu generieren. Insbesondere wendet das klassenspezifische bildmanipulierende System 102 ein faltungstechnisches Affinparameternetzwerk an, um einen Zwischenraumtensor zu generieren. Das klassenspezifische bildmanipulierende System 102 kombiniert den Zwischenraumtensor mit dem Globalmerkmalsvektor 416, um den Raumtensor 430 zu generieren. Das klassenspezifische bildmanipulierende System 102 setzt den Raumtensor 430 ein, um das Lokalzwischenmerkmal 426 (unter Einsatz der Raummodulationsschicht 410a) zu modulieren und einen modulierten Tensor zu generieren.
  • Wie gezeigt ist, wendet das klassenspezifische bildmanipulierende System 102 zudem eine Faltungsschicht 410b auf den modulierten Tensor an. Insbesondere generiert die Faltungsschicht 410b eine gefaltete Merkmalsdarstellung aus dem modulierten Tensor. Zusätzlich wendet das klassenspezifische bildmanipulierende System 102 eine Normierungsschicht 410c auf die gefaltete Merkmalsdarstellung an, um die neue Lokalmerkmalskarte 428 zu generieren.
  • Obwohl als Normierungsschicht 410c dargestellt, wendet das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen eine Demodulationsschicht an. Das klassenspezifische bildmanipulierende System 102 wendet beispielsweise eine Modulations-Faltungs-Demodulations-Pipeline (beispielsweise eine allgemeine Normierung anstatt einer Instanznormierung) an. Dieses Konzept kann mögliche Artefakte (beispielsweise Wassertropfenartefakte), die durch die Instanznormierung hervorgerufen werden, vermeiden. Eine Demodulations-/Normierungsschicht beinhaltet eine Schicht, die jede Ausgabemerkmalskarte durch einen einheitlichen bzw. gleichmäßigen Demodulations-/Normierungswert skaliert (beispielsweise durch eine einheitliche bzw. gleichmäßige Standardabweichung anstelle der Instanznormierung, die eine datenabhängige konstante Normierung auf Grundlage der Inhalte der Merkmalskarten einsetzt).
  • Wie in 4 gezeigt ist, wendet das klassenspezifische bildmanipulierende System 102 bei einigen Ausführungsformen einen Verschiebungstensor 432 und ein Rundsenderauschen auf die Ausgabe des Raummodulationsvorganges 410 an. Der Raummodulationsvorgang 410 generiert beispielsweise ein normiertes/demoduliertes Merkmal. Das klassenspezifische bildmanipulierende System 102 generiert den Verschiebungstensor 432 zudem durch Anwenden des Affinparameternetzwerkes auf das Globalzwischenmerkmal 418. Das klassenspezifische bildmanipulierende System 102 kombiniert das normierte/demodulierte Merkmal, den Verschiebungstensor 432 und/oder das Rundsenderauschen, um die neue Lokalmerkmalskarte 428 zu generieren. Bei einer oder mehreren Ausführungsformen kombiniert das klassenspezifische bildmanipulierende System 102, wie gezeigt ist, zudem eine Rauschmodulation, um die neue Lokalmerkmalskarte 428 zu generieren.
  • Beim Generieren der neuen Globalmerkmalskarte 422 und der neuen Lokalmerkmalskarte 428 geht das klassenspezifische bildmanipulierende System 102 zu der nächsten kaskadierten modulierenden Schicht in dem Decodierer über. Das klassenspezifische bildmanipulierende System 102 setzt die neue Globalmerkmalskarte 422 und die neue Lokalmerkmalskarte 428 beispielsweise als Eingabemerkmale für eine zusätzliche kaskadierte modulierende Schicht auf einer anderen Skala / bei einer anderen Auflösung ein. Das klassenspezifische bildmanipulierende System 102 setzt die zusätzliche kaskadierte modulierende Schicht sodann ein, um zusätzliche Merkmalskarten (beispielsweise unter Einsatz eines zusätzlichen Globalmodulationsblocks und eines zusätzlichen Raummodulationsblocks) zu generieren. Das klassenspezifische bildmanipulierende System 102 kann Merkmalskaten unter Einsatz von kaskadierten modulierenden Schichten iterativ verarbeiten, bis es zu einer endgültigen Skalierung/Auflösung gelangt, um ein manipuliertes Digitalbild zu generieren.
  • Obwohl 4 den Globalmodulationsblock 402 und den Raummodulationsblock 403 zeigt, setzt das klassenspezifische bildmanipulierende System 102 bei einigen Ausführungsformen einen Globalmodulationsblock, gefolgt von (kaskadiert zu) einem weiteren Globalmodulationsblock ein. Das klassenspezifische bildmanipulierende System 102 ersetzt den Raummodulationsblock 403 beispielsweise durch einen zusätzlichen Globalmodulationsblock. Bei einer derartigen Ausführungsform ersetzt das klassenspezifische bildmanipulierende System 102 ein APN (und einen Raumtensor) und eine entsprechende Raummodulation, wie in 4 dargestellt ist, durch eine Skip-Verbindung. Das klassenspezifische bildmanipulierende System 102 setzt beispielsweise das Globalzwischenmerkmal ein, um eine Globalmodulation in Bezug auf den Lokalzwischenvektor durchzuführen. Daher kann das klassenspezifische bildmanipulierende System 102 einen ersten Globalmodulationsblock und einen zweiten Globalmodulationsblock einsetzen.
  • Wie erwähnt worden ist, kann der Decodierer auch anhand von Variablen und Gleichungen beschrieben werden, um den Betrieb des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes darzustellen. Wie erläutert worden ist, stapelt der Decodierer beispielsweise eine Sequenz von kaskadierten modulierenden Blöcken für das Upsampling der Eingabemerkmalskarte F e ( L ) .
    Figure DE102023104829A1_0005
    Jeder kaskadierte modulierende Block nimmt den Globalcode g als Eingabe, um das Merkmal entsprechend der Globaldarstellung des Teilbildes zu modulieren. Das klassenspezifische bildmanipulierende System 102 stellt darüber hinaus Mechanismen bereit, um einen lokalen Fehler nach der Vorhersage der Globalstruktur zu korrigieren.
  • Insbesondere setzt das klassenspezifische bildmanipulierende System 102 einen kaskadierten Modulationsblock ein, um das Problem sowohl des globalen wie auch des lokalen Generierens von kohärenten Merkmalen zu lösen. Auf abstrakter Ebene folgt das klassenspezifische bildmanipulierende System 102 dem nachfolgenden Konzept: (i) Zerlegung von globalen und lokalen Vektoren in getrennte Lokaldetails aus der Globalstruktur, (ii) Kaskade einer Global- und Raummodulation, die Lokaldetails aus Globalstrukturen vorhersagt. Bei einer oder mehreren Implementierungen setzt das klassenspezifische bildmanipulierende System 102 Raummodulationen, die aus dem Globalcode generiert werden, für bessere Vorhersagen ein (und sondert beispielsweise eine Instanznormierung aus, um das Design mit StyleGAN2 kompatibel zu machen).
  • Insbesondere nimmt die kaskadierte Modulation das Global- und das Lokalmerkmal F g ( i )
    Figure DE102023104829A1_0006
    und F l ( i )
    Figure DE102023104829A1_0007
    aus der vorherigen Skala und den Globalcode g als Eingabe und erzeugt die neuen Global- und Lokalmerkmale F g ( i + 1 )
    Figure DE102023104829A1_0008
    und F l ( i + 1 )
    Figure DE102023104829A1_0009
    auf der nächsten Skala / bei der nächsten Auflösung. Um den neuen Globalcode F g ( i + 1 )
    Figure DE102023104829A1_0010
    aus F g ( i )
    Figure DE102023104829A1_0011
    zu erzeugen, setzt das klassenspezifische bildmanipulierende System 102 eine Globalcodemodulationsstufe ein, die eine Modulations-Faltungs-Demodulations-Prozedur beinhaltet. Dies generiert ein einem Upsampling unterzogenes Merkmal X.
  • Infolge der beschränkten Ausdrucksfähigkeit (expressive power) des Globalvektors g beim Darstellen von visuellen 2d-Details und infolge der inkonsistenten Merkmale innerhalb und außerhalb des Loches generiert die Globalmodulation gegebenenfalls verzerrte Merkmale, die zum Kontext nicht konsistent sind (was detaillierter anhand 5 erläutert wird). Zum Ausgleich setzt das klassenspezifische bildmanipulierende System 102 eine Raummodulation ein, die genauere Merkmale generiert. Insbesondere nimmt die Raummodulation X als Raumcode und g als Globalcode, um das Eingabelokalmerkmal F l ( i )
    Figure DE102023104829A1_0012
    auf räumlich adaptive Weise zu modulieren.
  • Darüber hinaus setzt das klassenspezifische bildmanipulierende System 102 einen einzigartigen Raummodulations-Demodulations-Mechanismus ein, um mögliche „Wassertröpfchenartefakte“, die bei herkömmlichen Systemen durch die Instanznormierung hervorgerufen werden, zu vermeiden. Wie gezeigt ist, folgt die Raummodulation einer Modulations-Faltungs-Demodulations-Pipeline.
  • Insbesondere generiert das klassenspezifische bildmanipulierende System 102 für die Raummodulation einen Raumtensor A0 = APN(Y) aus dem Merkmal X durch ein faltungstechnisches 2-Schicht-Affinparameternetzwerk (Affine Parameter Network APN). Das klassenspezifische bildmanipulierende System 102 generiert indes einen Globalvektor a = fc(g) aus dem Globalcode g mit einer vollständig verbundenen Schicht (fc), um den Globalkontext zu erfassen. Das klassenspezifische bildmanipulierende System 102 generiert einen endgültigen Raumtensor A = A0 + α als Rundsendesummierung (broadcast summation) von A0 und a zur Skalierung des Zwischenvektors Y des Blocks mit dem elementweise gegebenen Produkt ⊙: Y ¯ = Y A
    Figure DE102023104829A1_0013
  • Darüber hinaus wird der modulierte Tensor Y zur Faltung mit einem lernbaren 3×3-Kernel K gefaltet, was ergibt: Y ^ = Y ¯ K
    Figure DE102023104829A1_0014
  • Zur raumbewussten Demodulierung wendet das klassenspezifische bildmanipulierende System 102 einen Demodulierungsschritt an, um die normierte Ausgabe Ỹ zu berechnen. Insbesondere kann das klassenspezifische bildmanipulierende System 102 davon ausgehen, dass die Eingabemerkmale Y unabhängige Zufallsvariablen mit Einheitsvarianz sind, wobei nach der Modulation die erwartete Varianz der Ausgabe nicht geändert wird, das heißt E y Y ^ [ Var ( y ) ] = 1.
    Figure DE102023104829A1_0015
    Entsprechend ergibt dies die Demodulationsberechnung: Y ˜ = Y ^ D
    Figure DE102023104829A1_0016
  • Hierbei ist D = 1 / K 2 E a A [ a 2 ]
    Figure DE102023104829A1_0017
    der Demodulationskoeffizient. Das klassenspezifische bildmanipulierende System 102 kann die vorstehende Gleichung mit Standardtensorrechenvorgängen implementieren.
  • Bei einer oder mehreren Implementierungen fügt das klassenspezifische bildmanipulierende System 102 zudem eine räumliche Tendenz (spatial bias) und ein Rundsenderauschen (broadcast noise) hinzu bzw. addiert diese. Das klassenspezifische bildmanipulierende System 102 fügt das normierte Merkmal Ỹ beispielsweise zu einem Verschiebungstensor B = APN(X) hinzu bzw. addiert diesen, der von einem weiteren Affinparameternetzwerk (APN) aus dem Merkmal X zusammen mit dem Rundsenderauschen n erzeugt wird, um das neue Lokalmerkmal F l ( i + 1 )
    Figure DE102023104829A1_0018
    zu erzeugen: F l ( i + 1 ) = Y ˜ + B + n
    Figure DE102023104829A1_0019
  • Wie vorstehend erwähnt worden ist, nimmt das klassenspezifische bildmanipulierende System 102 bei einigen Ausführungsformen auch eine Rauschmodulation vor. Insbesondere nimmt das klassenspezifische bildmanipulierende System 102 ein Rauschsampling (ℝ1×H×W) aus einer Normalverteilung vor und berechnet eine Rauschmodulationsfaktorstärke (ℝ1×H×W) über eine 3×3-Faltung und generiert das modulierte Rauschen n'. Das klassenspezifische bildmanipulierende System 102 bestimmt das Lokalmerkmal sodann folgendermaßen durch Hinzufügen bzw. Addieren der räumlichen Tendenz (spatial bias) und des Rauschens: F l ( i + 1 ) = Y ˜ + B + n '
    Figure DE102023104829A1_0020
  • Man betrachte beispielsweise den nachfolgenden exemplarischen Pseudocode des Raummodulationsvorganges 410. Insbesondere ist das Affinparameternetzwerk (APN) als 3-Schicht-Faltungsnetzwerk implementiert, das X als Eingabe nimmt, um Skalierungsparameter A und Verschiebungsparameter B zu generieren.
    Figure DE102023104829A1_0021
  • Als Nächstes nimmt die Raummodulation die Merkmalskarten X, Y und den Globalcode g als Eingaben für die Modulation Y:
    Figure DE102023104829A1_0022
    Figure DE102023104829A1_0023
  • Bei einer oder mehreren Ausführungsformen setzt das klassenspezifische bildmanipulierende System 102 ein neuronales Netzwerk ein, wie es in der am 4. Mai 2022 eingereichten Anmeldung Nr. 17/661,985 „Digital Image Inpainting utilizing a cascaded modulation inpainting neural network“ beschrieben ist; diese Quelle ist hiermit durch Verweis mit aufgenommen.
  • Wie vorstehend erwähnt worden ist, setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen zudem Positionscodierungen ein, um Strukturvorhersagen zu verbessern. 5 zeigt beispielsweise das Generieren und Einsetzen von Positionscodierungen entsprechend einer oder mehreren Ausführungsformen. Insbesondere zeigt 5 das Einfügen von Positionscodierungen 502a bis 502n in verschiedene Schichten des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes 302.
  • Positionscodierungen beinhalten eine digitale Darstellung eines Ortes oder einer Position von Objekten in einer Sequenz. Insbesondere beinhalten Positionscodierungen eine endlich dimensionale Darstellung (beispielsweise einen Vektor oder einen Tensor) des Ortes von Objekten in einer Sequenz. Ein Modell kann eine Positionscodierung daher einsetzen, um den Ort oder die Position eines Wertes in einer Sequenz zu bestimmen. Entsprechend ist die Positionscodierung bei einer oder mehreren Implementierungen von derselben Dimension wie bei der in Rede stehenden Sequenz. Eine Positionscodierung weist beispielsweise eine Dimension auf, die zur Auflösung/Dimension eines Merkmalsvektors einer Merkmalskarte (beispielsweise einer Globalmerkmalskarte oder einer Lokalmerkmalskarte) passt. Um Probleme mit variierenden Längen und Skalen zu lösen, setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen eine Positionscodierung ein, die eine Matrix oder eine andere digitale Darstellung einer endlichen Länge/Dimensionalität und eines festen Bereiches von Werten (beispielsweise zwischen einem vorbestimmten Satz von Werten) beinhaltet.
  • Bei einer oder mehreren Implementierungen setzt das klassenspezifische bildmanipulierende System 102 Fourier-Merkmale als Positionscodierung ein. Das klassenspezifische bildmanipulierende System 102 setzt beispielsweise die nachfolgenden Fourier-Merkmale für eine Positionscodierung eines Eintrages (beispielsweise eines Eintrages in einer Merkmalskarte) ein: PE = [ sin ( ω 0 i ) , cos ( ω 0 i ) , , sin ( ω 0 j ) , cos ( ω 0 j ) , , ]  
    Figure DE102023104829A1_0024
    ω 0 = 1 / s i z e
    Figure DE102023104829A1_0025
    ω 1 = 2 / s i z e
    Figure DE102023104829A1_0026
    ω 2 = 3 / s i z e
    Figure DE102023104829A1_0027
    ω n = 1
    Figure DE102023104829A1_0028
  • Hierbei ist i die diskrete Horizontalposition in einer Sequenz (beispielsweise in einer Merkmalskarte), j ist die diskrete Vertikalposition in einer Sequenz (beispielsweise in einer Merkmalskarte), ω ist eine variierende Frequenz (aus 1/size zu 1), die zum Codieren der Position eingesetzt wird, und n ist die Dimensionalität der Positionscodierung (und der entsprechenden Merkmalskarte). Daher gibt die Komponente sin(ω0i), cos(ω0i),..., die Höhendimension eines Eintrages einer Merkmalskarte wieder, während die Komponente sin(ω0j), cos(ω0j),..., die Breitendimension eines Eintrages einer Merkmalskarte wiedergibt. Wie vorstehend erwähnt worden ist, passt bei einer oder mehreren Implementierungen die Gesamtdimensionalität einer Positionscodierung zur Auflösung/Dimensionalität der entsprechenden Sequenz (beispielsweise Merkmalskarte). Daher kann jede Schicht des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes 302 Positionscodierungen mit einer Dimensionalität einsetzen, die zu den Merkmalsvektoren jener Schicht passt.
  • Bei einer oder mehreren Ausführungsformen gibt die vorstehende Gleichung für die Positionscodierung eine Positionscodierung für einen einzigen Eintrag wieder. Daher generiert das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Implementierungen Positionscodierungen, die eine Matrix von einzelnen Positionscodierungen für die Einträge (beispielsweise die Vektoren) einer Merkmalskarte beinhalten. Bei einer oder mehreren Ausführungsformen kombiniert das klassenspezifische bildmanipulierende System 102 (beispielsweise durch Konkatenieren bzw. Verketten, Hinzufügen bzw. Addieren, Multiplizieren und dergleichen) einzelne Positionscodierungen mit einzelnen Einträgen (beispielsweise Merkmalsvektoren) einer Merkmalskarte.
  • Die Positionscodierungen 502a bis 502b beinhalten beispielsweise Positionscodierungen für jeden Eintrag entsprechend Merkmalsvektoren in jeder entsprechenden Schicht des Netzwerkes. Bei einer oder mehreren Implementierungen verarbeitet das klassenspezifische bildmanipulierende System 102 beispielsweise einen 512×512-Satz von Eingabemerkmalen unter Einsatz der ersten Codiererschicht 308a. Das klassenspezifische bildmanipulierende System 102 kombiniert den Eingabemerkmalsvektor mit den Positionscodierungen 502a, die eine Dimensionalität aufweisen, die der ersten Codiererschicht 308a entspricht (beispielsweise 512×512-Positionscodierungen).
  • Wie dargestellt ist, generiert die erste Codiererschicht 308a einen Merkmalsvektor, der sodann von der zweiten Codiererschicht 308b bei einer anderen Auflösung/Dimensionalität (beispielsweise 256×256) analysiert wird. Das klassenspezifische bildmanipulierende System 102 generiert die Positionscodierungen 502b, die eine Dimensionalität entsprechend der zweiten Codiererschicht 308b aufweisen. Darüber hinaus kombiniert das klassenspezifische bildmanipulierende System 102 die Positionscodierungen 502b mit dem Merkmalsvektor, der von der ersten Codiererschicht 308a generiert wird. Die zweite Codiererschicht 308b verarbeitet sodann diesen kombinierten Positionsmerkmalsvektor. Darüber hinaus setzt das klassenspezifische bildmanipulierende System 102, wie gezeigt ist, ein ähnliches Konzept ein, um Positionscodierungen 502c, 502d mit zusätzlichen Codiererschichten 308c, 308n zu generieren und einzusetzen.
  • Darüber hinaus generiert das klassenspezifische bildmanipulierende System 102 auch Positionscodierungen für die kaskadierten modulierenden Decodiererschichten 502e bis 502n und setzt diese ein. Das klassenspezifische bildmanipulierende System 102 kombiniert die Positionscodierungen 502e bis 502n beispielsweise mit den Globalmerkmalskarten und den Lokalmerkmalskarten in jeder Schicht der kaskadierten modulierenden Decodiererschichten 502e bis 502n. Insbesondere generiert das klassenspezifische bildmanipulierende System 102 Positionscodierungen 502e bis 502n mit verschiedenen Dimensionalitäten entsprechend der Auflösung/Dimensionalität der kaskadierten Decodiererschichten 320a bis 320n. Veranschaulichungshalber setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen, wenn die kaskadierte Decodiererschicht 320b eine Auflösung/Dimensionalität von 8×8 aufweist, 8×8 Positionscodierungen für die Positionscodierungen 502e ein.
  • Bei einer oder mehreren Implementierungen nutzt das klassenspezifische bildmanipulierende System 102 eine oder mehrere der Positionscodierungen aus den Codiererschichten erneut für die Decodiererschichten. Das klassenspezifische bildmanipulierende System 102 setzt beispielsweise dieselbe Dimensionalität für die erste Codiererschicht 308a wie für die letzte Decodiererschicht 320n ein. Da diese dieselbe Dimensionalität aufweisen, setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Implementierungen dieselben Positionscodierungen für die Positionscodierungen 502a und die Positionscodierungen 502n ein. Bei anderen Ausführungsformen generiert das klassenspezifische bildmanipulierende System 102 separate Positionscodierungen.
  • Wie vorstehend erwähnt worden ist, setzt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen zudem ein einzigartiges Konzept zum Trainieren der klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerke ein. 6 zeigt als Beispiel eine Übersicht über das klassenspezifische bildmanipulierende System 102 beim Trainieren eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes entsprechend einer oder mehreren Ausführungsformen.
  • Insbesondere zeigt 6 eine Abfolge von Handlungen, die von dem klassenspezifischen bildmanipulierenden System 102 beim Trainieren eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes durchgeführt werden. Wie gezeigt ist, führt das klassenspezifische bildmanipulierende System 102 eine Handlung 602 des Empfangens von Digitalbildern, die eine Objektklasse abbilden, durch. Bei einer oder mehreren Implementierungen führt das klassenspezifische bildmanipulierende System 102 die Handlung 602 beispielsweise durch Zugreifen auf ein Archiv von Trainingsdigitalbildern durch. Identifizieren kann das klassenspezifische bildmanipulierende System 102 die Trainingsdigitalbilder, die eine Objektklasse abbilden, durch Einsetzen eines Segmentierungsmodells, so beispielsweise eines panoptischen Segmentierungsmodells, das Objekte und entsprechende Objektsegmentierungen identifiziert.
  • Wie in 6 gezeigt ist, führt das klassenspezifische bildmanipulierende System 102 zudem eine Handlung 606 des Generierens von vorhergesagten manipulierten Digitalbildern durch. Das klassenspezifische bildmanipulierende System 102 führt die Handlung 606 beispielsweise durch Bereitstellen von Digitalbildern, die die Objektklasse abbilden, für ein kaskadiertes modulierendes manipulierendes neuronales Netzwerk und Generieren von manipulierten Digitalbildern durch. Bei einigen Implementierungen setzt das klassenspezifische bildmanipulierende System 102 klassensegmentierte Digitalbilder ein, die Instanzen der Objektklasse aus den Digitalbildern blockieren, maskieren oder segmentieren. Das klassenspezifische bildmanipulierende System 102 setzt Masken, die von dem panoptischen Segmentierungsmodell bestimmt werden, beispielsweise ein, um Pixel, die Instanzen einer Objektklasse abbilden, zu blockieren oder zu entfernen, um wiederum klassensegmentierte Digitalbilder zu generieren. Das klassenspezifische bildmanipulierende System 102 setzt das kaskadierte modulierende manipulierende neuronale Netzwerk sodann ein, um vorhergesagte manipulierte Digitalbilder aus den klassensegmentierten Digitalbildern zu generieren.
  • Wie gezeigt ist, führt das klassenspezifische bildmanipulierende System 102 zudem eine Handlung 606 des Modifizierens von Parametern des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes durch, um ein klassenspezifisches kaskadiertes modulierendes manipulierendes neuronales Netzwerk 608 zu generieren. Insbesondere setzt das klassenspezifische bildmanipulierende System 102 das vorhergesagte manipulierte Digitalbild (aus Handlung 604) ein, um Parameter des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes zu modifizieren. Wie dargestellt ist, bestimmt das klassenspezifische bildmanipulierende System 102 einen adversativen Verlust aus dem manipulierten Digitalbild durch Einsetzen eines neuronalen Decodierernetzwerkes. Veranschaulichungshalber setzt das klassenspezifische bildmanipulierende System 102 das neuronale Decodierernetzwerk ein, um eine Authentizitätsvorhersage zu generieren, und bestimmt den adversativen Verlust aus der Authentizitätsvorhersage. Das klassenspezifische bildmanipulierende System 102 lernt sodann Parameter des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes aus dem adversativen Verlust.
  • Wie gezeigt ist, generiert das klassenspezifische bildmanipulierende System 102 durch auf diese Weise erfolgendes Modifizieren der Parameter des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk 608. Durch Trainieren des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes unter Einsatz von klassensegmentierten Digitalbildern lernt das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk, manipulierte Digitalbilder, die eine bestimmte Objektklasse abbilden, zu generieren.
  • Das klassenspezifische bildmanipulierende System 102 kann eine Vielzahl von verschiedenen klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerken generieren. Wie gezeigt ist, kann das klassenspezifische bildmanipulierende System 102 klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerke generieren, die darauf trainiert sind, eine Himmel-Objektklasse, eine Boden-Objektklasse, eine Wasser-Objektklasse und/oder eine Mensch-Objektklasse zu generieren. Das klassenspezifische bildmanipulierende System 102 kann das geeignete klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk unter mehreren klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerken in Reaktion auf eine bestimmte Anforderung eines manipulierten Digitalbildes auswählen. Identifiziert eine Clientvorrichtung einen Ersetzungsbereich beispielsweise durch eine Angabe einer Himmel-Objektklasse, so kann das klassenspezifische bildmanipulierende System 102 das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk auswählen, das darauf trainiert ist, Himmel-Bereiche (beispielsweise aus himmelsspezifischen klassensegmentierten Digitalbildern) zu generieren. Auf ähnliche Weise kann das klassenspezifische bildmanipulierende System 102 in Reaktion darauf, dass eine Clientvorrichtung einen Ersetzungsbereich durch eine Angabe einer Boden-Objektklasse auswählt, das klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerk auswählen, das darauf trainiert ist, Boden-Bereiche (beispielsweise aus bodenspezifischen klassensegmentierten Digitalbildern) zu generieren.
  • 7 zeigt als Beispiel zusätzliche Details im Zusammenhang mit dem klassenspezifischen bildmanipulierenden System 102 beim Trainieren eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes entsprechend einer oder mehreren Ausführungsformen. Wie gezeigt ist, identifiziert das klassenspezifische bildmanipulierende System 102 Digitalbilder 702 und setzt ein panoptisches Segmentierungsmodell 704 ein, um Digitalbilder, die eine Objektklasse 706 abbilden, und Segmentierungsmasken 708 zu identifizieren. Ein panoptisches Segmentierungsmodell beinhaltet ein computerimplementiertes Modell, das Pixeln in einem Digitalbild ein semantisches Etikett zuweist. Ein panoptisches Segmentierungsmodell beinhaltet beispielsweise ein maschinell lernendes Modell, das ein semantisches Etikett für jedes Pixel in einem Digitalbild vorhersagt und das Digitalbild hierdurch in semantisch etikettierte Bereiche segmentiert. Bei einigen Implementierungen setzt das klassenspezifische bildmanipulierende System 102 ein einem neuronalen Netzwerk zu eigenes panoptisches Segmentierungsmodell ein. Bei einer oder mehreren Implementierungen setzt das klassenspezifische bildmanipulierende System 102 beispielsweise ein panoptisch segmentierendes neuronales Netzwerk ein, wie es beschrieben ist bei: „Full Convolutional Networks for Panoptic Segmentation“ von Y. Li, H. Zhao, X. Qi, L. Wang, Z. Li, J. Sun und J. Jia, veröffentlicht bei CVPR 2021, arXiv:2012.00720v2.
  • Veranschaulichungshalber setzt das klassenspezifische bildmanipulierende System 102 das panoptische Segmentierungsmodell 704 ein, um alle Digitalbilder zu identifizieren, die Pixel mit dem semantischen Etikett „Himmel“ abbilden. Das klassenspezifische bildmanipulierende System 102 setzt diese Himmel-Digitalbilder als Digitalbilder, die eine Objektklasse 706 abbilden, ein. Das klassenspezifische bildmanipulierende System 102 identifiziert die Pixel, die die Himmel-Bereiche abbilden, und generiert die Segmentierungsmasken 708 aus diesen Pixeln. Das klassenspezifische bildmanipulierende System 102 generiert die Segmentierungsmasken 708 daher, um Instanzen der Objektklasse zu blockieren oder abzudecken.
  • Durch Anwenden der Segmentierungsmasken 708 generiert das klassenspezifische bildmanipulierende System 102 klassensegmentierte Digitalbilder. Insbesondere segmentiert das klassenspezifische bildmanipulierende System 102 die Objekteinstanzen aus den Digitalbildern, die die Objektklasse 706 abbilden. Ein klassensegmentiertes Digitalbild kann beispielsweise ein Digitalbild und eine Maske beinhalten, die eine oder mehreren Instanzen einer Objektklasse, die in dem Digitalbild abgebildet ist, abdeckt.
  • Wie in 7 gezeigt ist, generiert das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen auch dilatierte Segmentierungsmasken 710 und wendet diese an. Bei einer oder mehreren Ausführungsformen wendet das klassenspezifische bildmanipulierende System 102 beispielsweise einen Dilatierungsvorgang auf die Segmentierungsmasken 708 an, um die dilatierten Segmentierungsmasken 710 zu generieren. Ein Dilatierungsvorgang kann beispielsweise ein computerimplementiertes Modell oder einen Prozess zum Erweitern einer Maske oder von Pixeln einer Maske beinhalten. Veranschaulichungshalber kann ein Dilatierungsvorgang eine Maske um eine vorbestimmte Anzahl von Pixeln (beispielsweise drei Pixel oder fünf Pixel) erweitern, um die Größe der Maske zu dilatieren.
  • Da die Segmentierungsmasken 708 gegebenenfalls nicht alle Pixel einer Objektklasse abdecken, wendet das klassenspezifische bildmanipulierende System 102 bei einigen Ausführungsformen den Dilatierungsvorgang an und generiert die dilatierten Segmentierungsmasken 710, um die Wahrscheinlichkeit zu verringern, dass die klassensegmentierten Digitalbilder Pixel, die der Objektklasse entsprechen, beinhalten. Eine Segmentierung eines Himmel-Bereiches kann beispielsweise ein kleines Randfeld von Pixeln, die den Himmel abbilden, übrig lassen. Durch Anwenden eines Dilatierungsvorganges kann das klassenspezifische bildmanipulierende System 102 ein derartiges Randfeld von Pixeln beim Generieren von klassensegmentierten Digitalbildern segmentieren/abdecken/blockieren.
  • Wie gezeigt ist, setzt das klassenspezifische bildmanipulierende System 102 ein kaskadiertes modulierendes manipulierendes neuronales Netzwerk 712 ein, um die Digitalbilder, die die Objektklasse 706 abbilden, und die Segmentierungsmasken 708 (oder die dilatierten Segmentierungsmasken 710) zu verarbeiten. Insbesondere generiert das klassenspezifische bildmanipulierende System 102 klassensegmentierte Digitalbilder (durch Bereitstellen der Digitalbilder, die die Objektklasse 706 abbilden, und der Segmentierungsmasken 708 als Eingaben für das kaskadierte modulierende manipulierende neuronale Netzwerk 712). Wie vorstehend erwähnt worden ist, setzt das kaskadierte modulierende manipulierende neuronale Netzwerk 712 Codiererschichten und kaskadierte modulierende Decodiererschichten ein, um manipulierte Digitalbilder 714 zu generieren.
  • Zusätzlich setzt das klassenspezifische bildmanipulierende System 102 die manipulierten Digitalbilder 714 ein, um einen adversativen Verlust 720 zu bestimmen. Insbesondere setzt das klassenspezifische bildmanipulierende System 102 ein neuronales Diskriminatornetzwerk 716 ein. Wie vorstehend erläutert worden ist, analysiert das neuronale Diskriminatornetzwerk 716 Eingabedigitalbilder und generiert Authentizitätsvorhersagen. Das neuronale Diskriminatornetzwerk 716 kann beispielsweise eine reales Digitalbild (beispielsweise ein Digitalbild, das nicht von dem kaskadierten modulierenden manipulierenden neuronalen Netzwerk 712 generiert worden ist) nehmen und vorhersagen, ob das Digitalbild echt oder gefälscht ist. Bei einer oder mehreren Ausführungsformen vergleicht das klassenspezifische bildmanipulierende System 102 diese Authentizitätsvorhersage mit einem Authentizitätsetikett (beispielsweise echt oder falsch), um einen adversativen Verlust zu bestimmen. Das klassenspezifische bildmanipulierende System 102 setzt diesen adversativen Verlust ein, um das neuronale Diskriminatornetzwerk zu trainieren.
  • Auf ähnliche Weise kann das klassenspezifische bildmanipulierende System 102 das neuronale Diskriminatornetzwerk 716 auch einsetzen, um Digitalbilder, die von dem kaskadierten modulierenden manipulierenden neuronalen Netzwerk 712 generiert worden sind, zu analysieren. Wie gezeigt ist, setzt das klassenspezifische bildmanipulierende System 102 das neuronale Diskriminatornetzwerk 716 ein, um Authentizitätsvorhersagen 718 aus den manipulierten Digitalbildern 714 zu generieren. Das klassenspezifische bildmanipulierende System 102 vergleicht die Authentizitätsvorhersagen 718 mit Authentizitätsetiketten (beispielsweise Fälschungsetiketten) für die manipulierten Digitalbilder 714, um den adversativen Verlust 720 zu bestimmen.
  • Darüber hinaus setzt das klassenspezifische bildmanipulierende System 102, wie gezeigt ist, den adversativen Verlust 720 auch ein, um Parameter des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes 712 und/oder des neuronalen Diskriminatornetzwerkes 716 zu modifizieren. Das klassenspezifische bildmanipulierende System 102 setzt beispielsweise Techniken des Gradientenabstiegs (gradient descent) und der Rückführung (backpropagation) ein, um Gewichtungen interner Parameter über Schichten des kaskadierten modulierenden manipulierenden neuronalen Netzwerkes 712 und des neuronalen Diskriminatornetzwerkes 716 hinweg zu modifizieren. Auf diese Weise wird das neuronale Diskriminatornetzwerk 716 beim Unterscheiden zwischen echten und gefälschten Digitalbildern erfahrener. Das kaskadierte modulierende manipulierende Netzwerk 712 wird darüber hinaus beim Generieren von manipulierten Digitalbildern, die der Objektklasse entsprechen, erfahrener. Entsprechend lernt das klassenspezifische bildmanipulierende System 102 Parameter derart, dass das kaskadierte modulierende manipulierende neuronale Netzwerk zu dem klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerk 712 wird.
  • Bei einer oder mehreren Ausführungsformen lernt das klassenspezifische bildmanipulierende System 102 Parameter für ein generatives manipulierendes neuronales Netzwerk unter Einsatz einer maskierten Regularisierung. Veranschaulichungshalber setzt das klassenspezifische bildmanipulierende System 102 eine Technik der modifizierten Regularisierung, so beispielsweise die R1-Regularisierung, ein, die für das Manipulieren von Digitalbildern maßgeschneidert ist. Das klassenspezifische bildmanipulierende System 102 modifiziert beispielsweise einen R1-Regularisierungsterm, um rechentechnische Nachteile bezüglich eines Teilbildes zu vermeiden und daher eine bessere Trennung der Eingabebedingungen von generierten Ausgaben zu ermöglichen. In einigen Fällen modifiziert das klassenspezifische bildmanipulierende System 102 die R1-Regularisierung unter Einsatz einer Digitalbildmaske, um einen maskierten R1-Regularisierungsterm zu bilden. Durch Einsetzen der maskierten Regularisierung verringert oder beseitigt das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen schädliche Auswirkungen der Berechnung der Regularisierung auf den Hintergrund eines Digitalbildes. Bei einer oder mehreren Ausführungsformen setzt das klassenspezifische bildmanipulierende System 102 ein Trainingskonzept ein, das in der am 14. Februar 2022 eingereichten US-Patentanmeldung Nr. 17/650,967 „Learning parameters for generative inpainting neural networks utilizing object-aware training and masked regularization“ beschrieben ist; diese Quelle wird hiermit durch Verweis in Gänze mit aufgenommen. Bei einer oder mehreren Ausführungsformen vermeidet das klassenspezifische bildmanipulierende System 102 die Nutzung eines Manipulationsverlustes (so beispielsweise eines Wahrnehmungsverlustes).
  • Obwohl 2 bis 7 den Einsatz von kaskadierten modulierenden manipulierenden neuronalen Netzwerken darstellen, kann das klassenspezifische bildmanipulierende System 102 eine Vielzahl von manipulierenden neuronalen Netzwerken einsetzen. Das klassenspezifische bildmanipulierende System 102 kann beispielsweise das vorbeschriebene einzigartige Trainingskonzept mit Blick auf eine Vielzahl von manipulierenden neuronalen Netzwerken, auf die in dieser Offenbarung verwiesen wird, einsetzen. Bei einigen Ausführungsformen trainiert und verwendet das klassenspezifische bildmanipulierende System 102 ein klassenspezifisches manipulierendes neuronales Netzwerk mit Codierer- und Decodiererschichten, wobei jedoch keine kaskadierten modulierenden Schichten vorhanden sind. Daher kann die vorstehende Beschreibung mit Blick auf klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerke auch mit klassenspezifischen manipulierenden neuronalen Netzwerken implementiert werden, die Architekturen ohne kaskadierte modulierende Decodiererschichten aufweisen.
  • Obwohl 2 bis 7 zusätzlich das Generieren von manipulierten Digitalbildern für bestimmte Klassen (so beispielsweise Himmel, Wasser, Boden und dergleichen) darstellen, können diese Klassen auch Typen von Objekten innerhalb einer bestimmten Klasse beinhalten. Einsetzen kann das klassenspezifische bildmanipulierende System 102 beispielsweise ein erstes klassenspezifisches manipulierendes neuronales Netzwerk, das darauf trainiert ist, einen bewölkten Himmel (erste Klasse) zu generieren, und ein zweites klassenspezifisches manipulierendes neuronales Netzwerk, das darauf trainiert ist, einen blauen Himmel (zweite Klasse) zu generieren. So kann das klassenspezifische bildmanipulierende System 102 verschiedene klassenspezifische manipulierende neuronale Netzwerke einsetzen, um verschiedene Typen einer Klasse oder verschiedene Teilklassen (beispielsweise stürmisch, leuchtend, blau, bewölkt) zu generieren. Bei einer oder mehreren Ausführungsformen bestimmt das klassenspezifische bildmanipulierende System 102 einen bestimmten Typ einer Klasse auf Grundlage einer Nutzereingabe. Das klassenspezifische bildmanipulierende System 102 kann beispielsweise eine Textnutzereingabe (beispielsweise „bewölkter Himmel“) oder ein Digitalbild empfangen, das einen bestimmten Typ einer Klasse (beispielsweise ein Digitalbild, das einen bewölkten Himmel abbildet) abbildet, und sodann Ersetzungspixel für ein manipuliertes Digitalbild, das den Typ der Klasse abbildet, generieren. Jeder dieser Typen ist in dem überspannenden Begriff „Klasse“ im Sinne des Vorliegenden beinhaltet.
  • Wie vorstehend erwähnt worden ist, generiert das klassenspezifische bildmanipulierende System 102 bei einer oder mehreren Ausführungsformen zudem verschiedenen Nutzerschnittstellen zum Generieren von manipulierten Digitalbildern. 8A zeigt beispielsweise ein Digitalbild 806, das über eine Nutzerschnittstelle 804 einer Clientvorrichtung 802 abgebildet wird. In Reaktion auf eine Nutzerinteraktion über die Nutzerschnittstelle 804 kann das klassenspezifische bildmanipulierende System 102 einen Ersetzungsbereich für das Digitalbild identifizieren.
  • 8B zeigt als Beispiel die Nutzerschnittstelle 804 beim Identifizieren eines Himmel-Bereiches des Digitalbildes 806. Insbesondere empfängt das klassenspezifische bildmanipulierende System 102 eine Nutzerinteraktion (beispielsweise eine Nutzerauswahl) des Himmel-Bereiches 808, und zwar durch ein Klick-, Druck- oder ein anderes Auswahlereignis. Bei einer oder mehreren Ausführungsformen identifiziert das klassenspezifische bildmanipulierende System 102 den Himmel-Bereich 808 unter Einsatz eines Segmentierungsmodells. Das klassenspezifische bildmanipulierende System 102 setzt beispielsweise ein Segmentierungsmodell ein, das markante Objekte identifiziert, das Objekte auf Grundlage von Nutzerauswahlen segmentiert und/oder das alle Objekte in einem Digitalbild segmentiert. Das klassenspezifische bildmanipulierende System 102 setzt beispielsweise dasjenige Modell ein, das beschrieben ist bei: „Deep GrabCut for Object Selection“ von Ning Xu et al., veröffentlicht am 14. Juli 2017; diese Quelle wird hiermit durch Verweis mit aufgenommen. Alternativ setzt das klassenspezifische bildmanipulierende System 102 eines oder mehrere der Modelle ein, die beschrieben sind in: der am 31. Oktober 2017 eingereichten US-Patentanmeldung mit der Veröffentlichungsnummer 2019/0130229 und dem Titel „Deep Salient Content Neural Networks for Efficient Digital Object Segmentation“, in der am 13. Juli 2018 eingereichten US-Patentanmeldung Nr. 16/035,410 und dem Titel „Automatic Trimap Generation and Image Segmentation“ oder dem am 18. November 2015 eingereichten US-Patent Nr. 10,192,129 mit dem Titel „Utilizing Interactive Deep Learning to Select Objects in Digital Visual Media“; jede dieser Quellen wird hiermit durch Verweis in Gänze mit aufgenommen.
  • Auf diese Weise identifiziert das klassenspezifische bildmanipulierende System 102 einen Ersetzungsbereich. Bei einer oder mehreren Ausführungsformen identifiziert das klassenspezifische bildmanipulierende System 102 zudem eine Zielobjektklasse, die dem Ersetzungsbereich entspricht. Das klassenspezifische bildmanipulierende System 102 kann beispielsweise (über die Nutzerschnittstelle 804) eine Nutzerauswahl einer bestimmten Zielobjektklasse (beispielsweise Himmel, Boden, Wasser) empfangen, um die Ersetzungspixel für den Ersetzungsbereich einzubeziehen. Bei einigen Ausführungsformen identifiziert das klassenspezifische bildmanipulierende System 102 die Zielobjektklasse auf Grundlage einer Auswahl eines Zielobjektklassenauswahlelementes (beispielsweise einer Schaltfläche oder eines Reglers über die Nutzerschnittstelle 804). Bei einigen Ausführungsformen identifiziert das klassenspezifische bildmanipulierende System 102 die Zielobjektklasse auf Grundlage eines ausgewählten Werkzeuges. Das klassenspezifische bildmanipulierende System 102 kann beispielsweise eine Nutzerauswahl eines „Himmel-Ersetzungswerkzeuges“ empfangen. Bei der Auswahl des Himmel-Ersetzungswerkzeuges kann das klassenspezifische bildmanipulierende System 102 eine Auswahl des Himmel-Bereiches 808 empfangen, und es kann (da der Nutzer das Himmel-Ersetzungswerkzeug bereits identifiziert hat) das klassenspezifische bildmanipulierende System 102 die Zielobjektklasse als Himmel-Objektklasse identifizieren.
  • Bei einigen Implementierungen bestimmt das klassenspezifische bildmanipulierende System 102 die Zielobjektklasse durch Analysieren des Digitalbildes und/oder Ersetzungsbereiches. Das klassenspezifische bildmanipulierende System 102 kann beispielsweise ein panoptisches Segmentierungsmodell einsetzen, um ein Digitalbild zu analysieren und diejenigen Pixel eines Ersetzungsbereiches, die einer bestimmten semantischen Kategorie entsprechen, zu bestimmen. Das klassenspezifische bildmanipulierende System 102 kann diese semantische Kategorie als Zielobjektklasse einsetzen. Beim Identifizieren dessen, dass ein Ersetzungsbereich einen Himmel abbildet, kann das klassenspezifische bildmanipulierende System 102 daher eine Himmel-Zielobjektklasse auswählen. Auf ähnliche Weise kann das klassenspezifische bildmanipulierende System 102 beim Identifizieren dessen, dass ein Ersetzungsbereich einen Menschen abbildet, eine Mensch-Zielobjektklasse auswählen.
  • Beim Identifizieren des Himmel-Bereiches 808 und der Zielobjektklasse setzt das klassenspezifische bildmanipulierende System 102 ein klassenspezifisches manipulierendes neuronales Netzwerk ein, um ein manipuliertes Digitalbild, das eine neue Instanz der Objektklasse abbildet, zu generieren. Insbesondere wählt das klassenspezifische bildmanipulierende System 102 ein klassenspezifisches manipulierendes neuronales Netzwerk aus, das der Zielobjektklasse entspricht. Daher wählt das klassenspezifische bildmanipulierende System 102 beim Bestimmen einer Himmel-Zielobjektklasse ein klassenspezifisches manipulierendes neuronales Netzwerk aus, das darauf trainiert ist, Himmel-Bereiche zu generieren. Auf ähnliche Weise wählt das klassenspezifische bildmanipulierende System 102 beim Bestimmen einer Boden-Objektklasse (beispielsweise Gras-, Sandobjektklassen) ein klassenspezifisches manipulierendes neuronales Netzwerk aus, das darauf trainiert ist, Boden-Bereiche zu generieren.
  • Das klassenspezifische bildmanipulierende System 102 setzt zudem das klassenspezifische manipulierende neuronale Netzwerk ein, um ein manipuliertes Digitalbild zu generieren. Insbesondere generiert das klassenspezifische bildmanipulierende System 102 ein maskiertes Digitalbild und stellt das maskierte Digitalbild für das klassenspezifische manipulierende neuronale Netzwerk bereit. Veranschaulichungshalber generiert das klassenspezifische bildmanipulierende System 102 eine Maske, die den Himmel-Bereich 808 bedeckt, und wendet die Maske auf das Digitalbild 806 an, um den Himmel-Bereich 808 zu bedecken oder zu blockieren. Bei einer oder mehreren Ausführungsformen wendet das klassenspezifische bildmanipulierende System 102 zudem einen Dilatierungsvorgang an, um eine dilatierte Maske zu generieren. Wie vorstehend (anhand 7) erläutert worden ist, kann das klassenspezifische bildmanipulierende System 102 einen Dilatierungsvorgang auf eine Maske anwenden, um eine dilatierte Maske zu generieren. Das klassenspezifische bildmanipulierende System 102 kann sodann die dilatierte Maske einsetzen, um ein maskiertes Digitalbild zum Einsatz durch das klassenspezifische manipulierende neuronale Netzwerk zu generieren. Das klassenspezifische bildmanipulierende System 102 setzt das klassenspezifische manipulierende neuronale Netzwerk ein, um ein manipuliertes Digitalbild, das eine neue Instanz des Zielobjektes abbildet, zu generieren.
  • Als Beispiel zeigt 8C die Nutzerschnittstelle 804 beim Abbilden eines manipulierten Digitalbildes 812 mit Ersetzungspixeln 810, die den Himmel-Bereich 808 ersetzen. Wie gezeigt ist, setzt das klassenspezifische bildmanipulierende System 102 das klassenspezifische manipulierende neuronale Netzwerk ein, um Ersetzungspixel, die eine Instanz eines Himmels abbilden, zu generieren. Durch Einsetzen des klassenspezifischen manipulierenden neuronalen Netzwerkes generiert das klassenspezifische bildmanipulierende System 102 einen neuartigen, synthetisierten Himmel-Bereich, der sich mit der übrigen Szene aus dem Digitalbild 806 mischt. Darüber hinaus stellt das klassenspezifische bildmanipulierende System 102 für die Clientvorrichtung eine Flexibilität zum Steuern bzw. Regeln der Contents der Ersetzungspixel 810 bereit.
  • Obwohl 8A bis 8C die Ersetzung eines Himmel-Bereiches durch einen neuen Himmel-Bereich zeigen, kann das klassenspezifische bildmanipulierende System 102 auch Nutzerschnittstellen zum Hinzufügen einer Instanz einer Zielobjektklasse in einem Ersetzungsbereich generieren, der die Zielobjektklasse vorher nicht abgebildet hat. Das klassenspezifische bildmanipulierende System 102 kann einen Himmel-Bereich beispielsweise in einer Zone eines Digitalbildes, in der vorher kein Himmel war, generieren. Auf ähnliche Weise kann das klassenspezifische bildmanipulierende System 102 einen Wasser-Bereich in einer Zone eines Digitalbildes, die vorher kein Wasser abgebildet hat, generieren.
  • 9A zeigt als Beispiel ein Digitalbild 906, das über eine Nutzerschnittstelle 904 einer Clientvorrichtung 902 angezeigt wird. Das Digitalbild 906 bildet eine Naturszene mit einem Himmel und Bergen ab, bildet jedoch kein Wasser ab. Das klassenspezifische bildmanipulierende System 102 kann ein manipuliertes Digitalbild generieren, das neuartige generierte Pixel, die Wasser abbilden, abbildet. Wie in 9B gezeigt ist, empfängt das klassenspezifische bildmanipulierende System 102 eine Nutzerinteraktion (beispielsweise durch Malen oder Zeichnen) eines Ersetzungsbereiches 908. Das klassenspezifische bildmanipulierende System 102 identifiziert zudem eine Wasser-Zielobjektklasse. Insbesondere identifiziert das klassenspezifische bildmanipulierende System 102 die Wasser-Zielobjektklasse auf Grundlage einer Auswahl eines Wasser-Ersetzungswerkzeuges (oder auf Grundlage einer Auswahl eines anderen Wasser-Klassenauswahlelementes).
  • Wie in 9C gezeigt ist, setzt das klassenspezifische bildmanipulierende System 102 ein klassenspezifisches manipulierendes neuronales Netzwerk ein, um Ersetzungspixel 912, die eine Instanz der Zielobjektklasse (beispielsweise eines Sees) abbilden, zu generieren. Insbesondere generiert das klassenspezifische manipulierende neuronale Netzwerk einen See, der sich mit dem umgebenden Kontext des Digitalbildes mischt, obwohl das Digitalbild 906 kein Wasser abgebildet hat. So kann das klassenspezifische bildmanipulierende System 102 eine Nutzereingabe (beispielsweise mit einem Pinsel oder Flächeneingaben) empfangen und Ersetzungspixel eines manipulierten Digitalbildes 910, das eine oder mehrere neuartige Instanzen einer Zielobjektklasse abbildet, generieren.
  • Wie vorstehend erläutert worden ist, haben Forscher Experimente mit dem klassenspezifischen bildmanipulierenden System 102 durchgeführt, um Ergebnisse des Einsatzes einer exemplarischen Implementierung eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes zu analysieren. 10 zeigt beispielsweise exemplarische manipulierte Digitalbilder, die von exemplarischen Implementierungen des klassenspezifischen bildmanipulierenden Systems 102 generiert worden sind. Insbesondere hat das klassenspezifische bildmanipulierende System 102 die manipulierten Digitalbilder 1002c, 1004c aus den ursprünglichen Digitalbildern 1002b, 1004b generiert. Insbesondere hat das klassenspezifische bildmanipulierende System 102 die maskierten Digitalbilder 1002a, 1004a aus den ursprünglichen Digitalbildern 1002b, 1004b generiert und ein exemplarisches klassenspezifisches kaskadiertes modulierendes manipulierendes neuronales Netzwerk eingesetzt, um die manipulierten Digitalbilder 1002c, 1004c aus den maskierten Digitalbildern 1002a, 1004a zu generieren. Wie dargestellt ist, bilden die manipulierten Digitalbilder 1002c, 1004c neue, synthetisierte Instanzen einer Zielobjektklasse ab, die sich nahtlos mit dem Kontext der ursprünglichen Digitalbilder 1002b, 1004b mischen.
  • Forscher haben zudem zusätzliche objektive Experimente durchgeführt, um das klassenspezifische bildmanipulierende System 102 mit herkömmlichen Systemen zu vergleichen. Forscher haben beispielsweise ein Bildmanipulationsexperiment bei einer Auflösung von 512×512 an dem Places2-Datensatz durchgeführt. Eine experimentelle Ausführungsform des klassenspezifischen bildmanipulierenden Systems 102 („CM-GAN“) wurde mit dem Adam-Optimierer trainiert. Die Lernrate und die Chargengröße wurden auf 0,001 beziehungsweise 32 gesetzt. CM-GAN nimmt das der Größe nach geänderte Bild als Eingabe, sodass das Modell die Globalstruktur eines Bildes vorhersagen kann. Die Forscher haben eine Flip-Vergrößerung (flip augmentation) angewendet, um die Trainingsproben zu vergrößern.
  • Zur nummerischen Bewertung haben die Forscher die Werte PSNR, SSIM, FID (Frchet Inception Distance) und LPIPS (Perceptual Image Patch Similarity Distance) berechnet. Die Forscher haben zudem P-IDS/U-IDS [56] (Paired/Unpaired Inception Discriminative Score) zur Bewertung eingesetzt. Die Forscher haben, wie gezeigt ist, die Ergebnisse von CoModGAN, Lama und ProFill zusätzlich zu einer Vielzahl von anderen Systeme verglichen, darunter diejenigen, die beschrieben werden bei:
    • • „Resolution-robust large mask inpainting with fourier convolutions“ von Roman Suvorov, Elizaveta Logacheva, Anton Mashikhin, Anastasia Remizova, Arsenii Ashukha, Aleksei Silvestrov, Naejin Kong, Harshith Goka, Kiwoong Park und Victor Lempitsky, arXiv preprint arXiv:2109.07161 (2021) (im Folgenden „LaMa“);
    • • „High-resolution image inpainting with iterative confidence feedback and guided upsampling“ von Yu Zeng, Zhe Lin, Jimei Yang, Jianming Zhang, Eli Shechtman und Huchuan Lu, arXiv preprint arXiv:2005.11742 (2020) (im Folgenden „ProFill“);
    • • „Cr-fill: Generative image inpainting with auxiliary contextual reconstruction“ von Yu Zeng, Zhe Lin, Huchuan Lu und Vishal M. Patel, Proceedings of the IEEE International Conference on Computer Vision (2021) (im Folgenden „CRFill“);
    • • „Free-form image inpainting with gated convolution“ von Jiahui Yu, Zhe Lin, Jimei Yang, Xiaohui Shen, Xin Lu und Thomas S Huang, Proceedings of the IEEE International Conference on Computer Vision, Seiten 4471-4480 (2019) (im Folgenden „DeepFill v2“);
    • • „Generating diverse structure for image inpainting with hierarchical vq-vae“ von Jialun Peng, Dong Liu, Songcen Xu und Houqiang Li, Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Seiten 10775-10784 (2021) (im Folgenden „DiverseStructure“);
    • • „Edgeconnect: Generative image inpainting with adversarial edge learning“ von Kamyar Nazeri, Eric Ng, Tony Joseph, Faisal Z Qureshi und Mehren Ebrahimi, arXiv preprint arXiv: 1901.00212 (2019) (im Folgenden „EdgeConnect“);
    • • „High-fidelity pluralistic image completion with transformers“ von Ziyu Wan, Jingbo Zhang, Dongdong Chen und Jing Liao, arXiv preprint arXiv:2103.14031 (2021) (im Folgenden „ICT“);
    • • „Contextual residual aggregation for ultra high-resolution image inpainting“ von Zili Yi, Qiang Tang, Shekoofeh Azizi, Daesik Jang und Zhan Xu, Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, Seiten 7508-7517 (2020) (im Folgenden „HiFill“);
    • • „Structureflow: Image inpainting via structure-aware appearance flow“ von Yurui Ren, Xiaoming Yu, Ruonan Zhang, Thomas H. Li, Shan Liu und Ge Li, IEEE International Conference on Computer Vision (ICCV) (2019) (im Folgenden „StructureFlow“); und
    • • „Rethinking image inpainting via a mutual encoderdecoder with feature equalizations“ von Yibing Song Wei Huang Hongyu Liu, Bin Jiang und Chao Yang, Proceedings of the European Conference on Computer Vision (2020) (im Folgenden „MEDFE“).
  • 11 zeigt die Ergebnisse im Vergleich zu diesen anderen Systemen. Die Ergebnisse haben gezeigt, dass die experimentelle Ausführungsform des klassenspezifischen bildmanipulierenden Systems 102 (CM-GAN) alle anderen Verfahren hinsichtlich FID, U-IDS und P-IDS weit überflügelt. Im Vergleich zu LaMa hat CM-GAN den Wert FID um über 50% von 3,864 auf 1,749 verringert und verhält sich mit Blick auf LPIPS ähnlich, was durch die typischerweise unscharfen Ergebnisse von LaMa gegenüber den schärferen Ergebnissen von CM-GAN erklärt werden kann.
  • Zusätzlich zeigt 12 Inferenzkomplexitäten verschiedener Modelle. Wie gezeigt ist, weist die experimentelle Ausführungsform des klassenspezifischen bildmanipulierenden Systems 102 eine ähnliche Anzahl von Parametern (und bisweilen weniger) im Vergleich zu CoModGAN und LaMa auf.
  • 13 zeigt zusätzliche Details mit Blick auf Komponenten und Fähigkeiten des klassenspezifischen bildmanipulierenden Systems 102. Insbesondere zeigt 13 ein exemplarisches schematisches Diagramm des klassenspezifischen bildmanipulierenden Systems 102 auf einer exemplarischen Rechenvorrichtung 1300 (beispielsweise einer oder mehreren von der Clientvorrichtung 108 und/oder dem Server / den Servern 104). Wie in 13 gezeigt ist, beinhaltet das klassenspezifische bildmanipulierende System 102 einen unvollständigen Digitalbildern zugedachten Verwalter (Digitalbildverwalter) 1302, einen Codiererverwalter 1304, einen Kaskadenmodulationsdecodiererverwalter 1306, einen Manipulationsdigitalbildverwalter 1308, eine Nutzerschnittstellenverwalter 1310, eine Trainings-Engine 1312 und einen Speicherverwalter 1314.
  • Wie eben erwähnt worden ist, beinhaltet das klassenspezifische bildmanipulierende System 102 den unvollständigen Digitalbildern zugedachten Verwalter (Digitalbildverwalter) 1302. Insbesondere nimmt der unvollständigen Digitalbildern zugedachte Verwalter 1302 ein Beziehen, Identifizieren, Empfangen, Generieren und/oder Einsetzen von unvollständigen Digitalbildern vor. Wie vorstehend erläutert worden ist, kann der unvollständigen Digitalbildern zugedachte Verwalter (Digitalbildverwalter) 1302 beispielsweise ein unvollständiges Digitalbild empfangen, das ein Digitalbild mit einem Loch oder einer Maske, die einen Ersetzungsbereich darstellt, umfasst. Darüber hinaus kann der unvollständigen Digitalbildern zugedachte Bildverwalter (Digitalbildverwalter) 1302 auch eine Angabe einer Zielobjektklasse zum Ausfüllen eines Ersetzungsbereiches empfangen.
  • Wie vorstehend erwähnt worden ist, beinhaltet das klassenspezifische bildmanipulierende System 102 den Codiererverwalter 1304. Insbesondere nimmt der Codiererverwalter 1304 ein Verwalten, Trainieren, Vorhalten, Durchführen, Implementieren, Anwenden oder Einsetzen eines Codierers eines kaskadierten modulierenden manipulierenden neuronalen Netzwerkes vor. Der Codiererverwalter 1304 setzt die vorbeschriebenen Techniken beispielsweise ein, um codierte Merkmalsvektoren (beispielsweise einen Globalmerkmalscode) entsprechend einem unvollständigen Digitalbild zu generieren.
  • Wie gezeigt ist, beinhaltet das klassenspezifische bildmanipulierende System 102 zudem den Kaskadenmodulationsdecodiererverwalter 1306. Insbesondere nimmt der Kaskadenmodulationsdecodiererverwalter 1306 ein Trainieren, Verwalten, Vorhalten, Durchführen, Implementieren oder Anwenden eines kaskadierten modulierenden Decodierers eines kaskadierten modulierenden manipulierenden neuronalen Netzwerkes vor. Der Kaskadenmodulationsdecodiererverwalter 1306 wendet beispielsweise mehrere kaskadierte modulierende Schichten (wie vorstehend beschrieben) an, um Globalmerkmalskarten und Lokalmerkmalskarten zur Bestimmung von Ersetzungspixeln für einen Ersetzungsbereich zu generieren. Der Codiererverwalter 1304 und/oder der Kaskadenmodulationsdecodiererverwalter 1306 können zudem ein klassenspezifisches kaskadiertes modulierendes manipulierendes neuronales Netzwerk auswählen, das einer bestimmten Zielobjektklasse entspricht (beispielsweise aus einer Mehrzahl von klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerken entsprechend verschiedenen Zielobjektklassen).
  • Das klassenspezifische bildmanipulierende System 102 beinhaltet zudem den Manipulationsdigitalbildverwalter 1308. Der Manipulationsdigitalbildverwalter 1308 kann beispielsweise ein Identifizieren, Generieren, Bereitstellen und/oder Anzeigen eines manipulierten Digitalbildes vornehmen. Veranschaulichungshalber kann der Manipulationsdigitalbildverwalter 1308 Ersetzungspixel identifizieren (die von dem Kaskadenmodulationsdecodiererverwalter 1306 erzeugt werden), um ein manipuliertes Digitalbild zu generieren.
  • Das klassenspezifische bildmanipulierende System 102 beinhaltet zudem einen Nutzerschnittstellenverwalter 1310. Der Nutzerschnittstellenverwalter 1310 kann ein Verwalten, Generieren, Überwachen und/oder Bereitstellen von Nutzerschnittstellen vornehmen. Der Nutzerschnittstellenverwalter kann beispielsweise eine Nutzereingabe von einer oder mehreren Nutzerschnittstellen (die beispielsweise Nutzerauswahlen von Digitalbildern, Ersetzungsbildern und/oder Zielobjektklassen angeben) empfangen. Auf ähnliche Weise kann der Nutzerschnittstellenverwalter 1310 Nutzerschnittstellenelemente zur Anzeige über eine Anzeigevorrichtung einer Clientvorrichtung bereitstellen. Der Nutzerschnittstellenverwalter 1310 kann beispielsweise ein manipuliertes Digitalbild zur Anzeige über eine grafische Nutzerschnittstelle und ein Zielobjektklassenauswahlelement bereitstellen.
  • Das klassenspezifische bildmanipulierende System 102 beinhaltet zudem eine Trainings-Engine 1312. Die Trainings-Engine 1312 kann ein Lehren, Lernen und/oder Trainieren eines maschinell lernenden Modells, so beispielsweise eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes, vornehmen. Wie vorstehend beschrieben worden ist, kann die Trainings-Engine 1312 beispielsweise Parameter eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes auf Grundlage von vorhergesagten manipulierten Digitalbildern, die aus klassensegmentierten Trainingsdigitalbildern (beispielsweise unter Einsatz eines adversativen Verlustes) generiert worden sind, modifizieren.
  • Das klassenspezifische bildmanipulierende System 102 beinhaltet des Weiteren einen Speicherverwalter 1314. Der Speicherverwalter 1314 arbeitet zusammen mit einer oder mehreren Speichervorrichtungen (so beispielsweise der Datenbank 112) oder beinhaltet diese, wobei die Speichervorrichtungen verschiedene Daten speichern, so beispielsweise Digitalbilder 1314a (beispielsweise unvollständige Digitalbilder oder manipulierte Digitalbilder) und/oder ein kaskadiertes modulierendes generatives neuronales Netzwerk / kaskadierte modulierende generative neuronale Netzwerke 1314b (beispielsweise die verschiedenen Parameter/Schichten von Codierern und Decodierern, die vorstehend für verschiedene klassenspezifische kaskadierte modulierende manipulierende neuronale Netzwerke, die für verschiedene Objektklassen trainiert sind, beschrieben worden sind). Beinhalten kann der Speicherverwalter 1314 beispielsweise eine Speichervorrichtung, die Digitalbilder, die eine Objektklasse abbilden, umfasst, sowie ein neuronales Diskriminatornetzwerk und ein kaskadiertes modulierendes manipulierendes neuronales Netzwerk mit einem Codierer und einem Decodierer, wobei der Decodierer mehrere kaskadierte modulierende Schichten umfasst.
  • Bei einer oder mehreren Ausführungsformen ist jede der Komponenten des klassenspezifischen bildmanipulierenden Systems 102 in Kommunikation mit einer anderen unter Nutzung beliebiger geeigneter Kommunikationstechnologien. Zusätzlich sind die Komponenten des klassenspezifischen bildmanipulierenden Systems 102 in Kommunikation mit einer oder mehreren anderen Vorrichtungen, darunter einer oder mehreren der vorbeschriebenen Clientvorrichtungen. Es sollte einsichtig sein, dass ungeachtet dessen, dass die Komponenten des klassenspezifischen bildmanipulierenden Systems 102 in 13 getrennt gezeigt sind, beliebige der Teilkomponenten auch zu weniger Komponenten, so beispielsweise zu einer einzigen Komponente, kombiniert oder in mehr Komponenten unterteilt werden können, so dies bei einer bestimmten Implementierung dienlich ist. Obwohl die Komponenten von 13 zudem in Verbindung mit dem klassenspezifischen bildmanipulierenden System 102 beschrieben sind, können wenigstens einige der Komponenten zur Durchführung von Vorgängen in Verbindung mit dem klassenspezifischen bildmanipulierenden System 102 auch auf anderen Vorrichtungen innerhalb der Umgebung implementiert sein.
  • Die Komponenten des klassenspezifischen bildmanipulierenden Systems 102 beinhalten Software, Hardware oder beides. Die Komponenten des klassenspezifischen bildmanipulierenden Systems 102 beinhalten beispielsweise eine oder mehrere Anweisungen, die auf einem computerlesbaren Speichermedium gespeichert und durch Prozessoren einer oder mehrerer Rechenvorrichtungen (beispielsweise der Rechenvorrichtung 1300) ausführbar sind. Bei Ausführung durch den einen oder die mehreren Prozessoren veranlassen die computerausführbaren Anweisungen des klassenspezifischen bildmanipulierenden Systems 102, dass die Rechenvorrichtung 1300 die hier beschriebenen Verfahren durchführt. Alternativ umfassen die Komponenten des klassenspezifischen bildmanipulierenden Systems 102 Hardware, so beispielsweise eine Spezialzweckverarbeitungsvorrichtung, um eine gewisse Funktion oder Gruppe von Funktionen zu übernehmen. Zusätzlich oder alternativ beinhalten die Komponenten des klassenspezifischen bildmanipulierenden Systems 102 eine Kombination von computerausführbaren Anweisungen und Hardware.
  • Die Komponenten des klassenspezifischen bildmanipulierenden Systems 102, die die hier beschriebenen Funktionen übernehmen, können des Weiteren beispielsweise als Teil einer eigenständigen Anwendung, als Modul einer Anwendung, als Plug-in für Anwendungen, darunter Contentverwaltungsanwendungen, als Bibliotheksfunktion oder Funktionen, die von anderen Anwendungen aufgerufen werden können, und/oder als Cloudrechenmodell implementiert sein. Die Komponenten des klassenspezifischen bildmanipulierenden Systems 102 können daher als Teil einer eigenständigen Anwendung auf einer PC-Vorrichtung oder einer Mobilvorrichtung implementiert sein. Alternativ oder zusätzlich können die Komponenten des klassenspezifischen bildmanipulierenden Systems 102 in einer beliebigen Anwendung implementiert sein, die die Erstellung und Verteilung von Content für Nutzer ermöglicht, darunter unter anderem Anwendungen in ADOBE® EXPERIENCE MANAGER und CREATIVE CLOUD®, so beispielsweise PHOTOSHOP®, LIGHTROOMO und INDESIGNO. „ADOBE“, „ADOBE EXPERIENCE MANAGER“, „CREATIVE CLOUD“, „PHOTOSHOP“, „LIGHTROOM“ und „INDESIGN“ sind entweder eingetragene Marken oder Marken von Adobe Inc. in den Vereinigten Staaten und/oder anderen Ländern.
  • 1 bis 13, der entsprechende Text und die Beispiele bieten eine Anzahl von verschiedenen Systemen, Verfahren und nichttemporären computerlesbaren Medien zum Trainieren eines generativen manipulierenden neuronalen Netzwerkes über ein objektbewusstes Training und/oder eine maskierte Regularisierung zur genauen Manipulation von Digitalbildern. Zusätzlich zum Vorbeschriebenen können Ausführungsformen auch anhand von Flussdiagrammen beschrieben werden, die Handlungen zum Erreichen eines bestimmten Ergebnisses umfassen. 14 zeigt beispielsweise Flussdiagramme mit exemplarischen Sequenzen oder Abfolgen von Handlungen entsprechend einer oder mehreren Ausführungsformen.
  • Obwohl 14 Handlungen entsprechend bestimmten Ausführungsformen zeigt, können bei alternativen Ausführungsformen beliebige der in 14 gezeigten Handlungen weggelassen, hinzugefügt, umgeordnet und/oder modifiziert werden. Die Handlungen von 14 können als Teil eines Verfahrens durchgeführt werden. Alternativ kann ein nichttemporäres computerlesbares Medium Anweisungen umfassen, die bei Ausführung durch einen oder mehrere Prozessoren veranlassen, dass eine Rechenvorrichtung die Handlungen von 14 durchführt. Bei wieder anderen Ausführungsformen kann ein System die Handlungen von 14 durchführen. Zusätzlich können die hier beschriebenen Handlungen wiederholt oder parallel zueinander durchgeführt oder parallel zu verschiedenen bzw. anderen Instanzen derselben oder anderer ähnlicher Handlungen durchgeführt werden.
  • 14 zeigt eine exemplarische Abfolge von Handlungen 1400 zum Generieren eines manipulierten Digitalbildes unter Einsatz eines klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes. Insbesondere beinhaltet die Abfolge von Handlungen 1400 eine Handlung 1402 des Empfangens einer Angabe eines Ersetzungsbereiches eines Digitalbildes und einer Zielobjektklasse. Bei einer oder mehreren Ausführungsformen beinhaltet die Handlung 1402 beispielsweise ein über eine Nutzerschnittstelle einer Clientvorrichtung erfolgendes Empfangen einer Angabe eines Ersetzungsbereiches eines Digitalbildes und einer Zielobjektklasse.
  • Veranschaulichungshalber umfasst bei einer oder mehreren Ausführungsformen das Empfangen der Angabe des Ersetzungsbereiches und der Zielobjektklasse ein zur Anzeige über die Nutzerschnittstelle erfolgendes Bereitstellen des Digitalbildes; und ein über die Nutzerschnittstelle erfolgendes Empfangen einer Nutzerauswahl entsprechend dem Ersetzungsbereich unter Einsatz eines Auswahlwerkzeuges entsprechend der Zielobjektklasse. Darüber hinaus beinhaltet bei einer oder mehreren Ausführungsformen die Handlung 1402 ein Bestimmen des Ersetzungsbereiches unter Einsatz eines Segmentierungsmodells und der Nutzerauswahl.
  • Zusätzlich beinhaltet die Abfolge von Handlungen 1400 eine Handlung 1404 des Generierens von Ersetzungspixeln unter Einsatz eines klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes. Beispielsweise beinhaltet bei einer oder mehreren Ausführungsformen die Handlung 1404 ein Generieren von Ersetzungspixeln für den Ersetzungsbereich unter Einsatz eines klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes entsprechend der Zielobjektklasse.
  • Bei einer oder mehreren Implementierungen beinhaltet die Handlung 1404 ein Generieren einer Maske entsprechend dem Ersetzungsbereich; und ein Generieren der Ersetzungspixel aus der Maske und dem Digitalbild unter Einsatz des klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes. Darüber hinaus beinhaltet die Handlung 1404 bei einigen Implementierungen ein Generieren der Ersetzungspixel unter Einsatz eines klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes entsprechend wenigstens einer von einer Himmel-Objektklasse, einer Wasser-Objektklasse, einer Boden-Objektklasse oder einer Mensch-Objektklasse.
  • Bei einer oder mehreren Ausführungsformen umfasst das Generieren der Ersetzungspixel unter Einsatz eines klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes beispielsweise ein Generieren einer Bildcodierung unter Einsatz von Codierungsschichten des klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes. Das Generieren der Bildcodierung unter Einsatz der Codiererschichten des klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes umfasst darüber hinaus ein Generieren von Positionscodierungen entsprechend verschiedenen Auflösungen der Codiererschichten; und ein Generieren von mehreren Codierungsmerkmalsvektoren unter Einsatz der Codierungsschichten und der Positionscodierungen.
  • Des Weiteren umfasst bei einer oder mehreren Implementierungen das Generieren der Ersetzungspixel ein Generieren der Ersetzungspixel unter Einsatz von kaskadierten modulierenden Decodiererschichten des klassenspezifischen kaskadierten modulierenden manipulierenden Netzwerkes aus der Bildcodierung.
  • Darüber hinaus beinhaltet die Abfolge von Handlungen 1400 eine Handlung 1406 des Bereitstellens eines manipulierten Digitalbildes, das die Ersetzungspixel umfasst, derart, dass das manipulierte Digitalbild eine Instanz der Zielobjektklasse abbildet. Bei einer oder mehreren Ausführungsformen beinhaltet die Handlung 1406 ein zur Anzeige über die Clientvorrichtung erfolgendes Bereitstellen eines manipulierten Digitalbildes, das die Ersetzungspixel umfasst, derart, dass das manipulierte Digitalbild eine Instanz der Zielobjektklasse innerhalb des Ersetzungsbereiches abbildet.
  • Bei einer oder mehreren Implementierungen beinhaltet die Abfolge von Handlungen 1400 ein über eine Nutzerschnittstelle einer Clientvorrichtung erfolgendes Empfangen einer Angabe dessen, einen Himmel-Ersetzungsbereich eines Digitalbildes zu ersetzen; ein Generieren von mehreren Himmel-Ersetzungspixeln für den Himmel-Ersetzungsbereich unter Einsatz eines klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes, das darauf trainiert ist, Himmel-Bereiche für Digitalbilder zu generieren; und ein zur Anzeige über die Clientvorrichtung erfolgendes Bereitstellen eines manipulierten Digitalbildes, das die mehreren Himmel-Ersetzungspixel innerhalb des Himmel-Ersetzungsbereiches umfasst.
  • Bei einer oder mehreren Implementierungen beinhaltet die Abfolge von Handlungen 1400 beispielsweise ein Bestimmen des Himmel-Ersetzungsbereiches aus dem Digitalbild unter Einsatz eines Segmentierungsmodells. Zusätzlich beinhaltet bei einer oder mehreren Ausführungsformen die Abfolge von Handlungen 1400 ein Auswählen des klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes, das darauf trainiert ist, Himmel-Bereiche zu generieren, unter mehreren klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerken auf Grundlage der Angabe dessen, den Himmel-Ersetzungsbereich zu ersetzen.
  • Bei einigen Implementierungen beinhaltet die Abfolge von Handlungen 1400 des Weiteren ein Generieren der Himmel-Ersetzungspixel unter Einsatz von kaskadierten modulierenden Decodiererschichten des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes aus einer Bildcodierung. Zusätzlich umfasst bei einer oder mehreren Implementierungen das Generieren der Himmel-Ersetzungspixel ein Generieren von Positionscodierungen entsprechend verschiedenen Auflösungen der kaskadierten modulierenden Decodiererschichten.
  • Zusätzlich beinhaltet die Abfolge von Handlungen 1400 bei einer oder mehreren Implementierungen ein Generieren der Himmel-Ersetzungspixel unter Einsatz der kaskadierten modulierenden Decodiererschichten des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes, der Bildcodierung und der Positionscodierungen.
  • Bei einigen Implementierungen beinhaltet die Abfolge von Handlungen 1400 einen anderen Satz von Handlungen (beispielsweise von den in 14 gezeigten Handlungen verschiedene Handlungen). Bei einigen Implementierungen beinhaltet die Abfolge von Handlungen 1400 beispielsweise ein Generieren von klassensegmentierten Digitalbildern durch Segmentieren von Instanzen der Objektklasse aus den Digitalbildern; ein Generieren von mehreren vorhergesagten manipulierten Digitalbildern für die Objektklasse aus den klassensegmentierten Digitalbildern unter Einsatz des (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes; und ein Modifizieren von Parametern des (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes zum Generieren eines klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes unter Einsatz des neuronalen Diskriminatornetzwerkes und eines adversativen Verlustes.
  • Bei einigen Ausführungsformen umfasst das Segmentieren von Instanzen der Objektklasse aus den mehreren Bildern beispielsweise ein Bestimmen von Segmentierungsmasken entsprechend den Objektklassen aus den Digitalbildern; ein Generieren von dilatierten Segmentierungsmasken aus den Segmentierungsmasken unter Einsatz eines Dilatierungsvorganges; und ein Segmentieren der Instanzen der Objektklasse aus den Digitalbildern unter Einsatz der dilatierten Segmentierungsmasken.
  • Auf ähnliche Weise umfasst bei einigen Implementierungen das Generieren der mehreren vorhergesagten manipulierten Digitalbilder für die Objektklasse ein Generieren einer Bildcodierung unter Einsatz von Fourier-Faltungscodiererschichten des Codierers des klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes.
  • Darüber hinaus umfasst bei einer oder mehreren Ausführungsformen das Generieren der mehreren vorhergesagten manipulierten Digitalbilder für die Objektklasse ein Generieren der mehreren vorhergesagten manipulierten Digitalbilder aus der Bildcodierung unter Einsatz der kaskadierten modulierenden Schichten des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes, wobei eine gegebene kaskadierte modulierende Schicht einen Globalmodulationsblock und einen Raummodulationsblock umfasst.
  • Des Weiteren umfasst bei einigen Implementierungen das Modifizieren der Parameter des (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes zum Generieren des klassenspezifischen (kaskadierten modulierenden) manipulierenden neuronalen Netzwerkes ein Generieren einer Authentizitätsvorhersage aus einem vorhergesagten manipulierten Digitalbild unter Einsatz des neuronalen Diskriminatornetzwerkes; und ein Bestimmen des adversativen Verlustes auf Grundlage der Authentizitätsvorhersage.
  • Bei einer oder mehreren Ausführungsformen umfasst das Generieren der klassensegmentierten Digitalbilder ein aus den Digitalbildern erfolgendes Segmentieren von Instanzen von einer von einer Himmel-Objektklasse, einer Wasser-Objektklasse, einer Boden-Objektklasse oder einer Mensch-Objektklasse.
  • Ausführungsformen der vorliegenden Offenbarung können einen Spezialzweck- oder Allzweckcomputer, der Computerhardware beinhaltet, umfassen oder einsetzen, so beispielsweise einen oder mehrere Prozessoren und einen Systemspeicher, wie nachstehend noch detaillierter beschrieben wird. Ausführungsformen innerhalb des Umfanges der vorliegenden Offenbarung beinhalten zudem physische bzw. physikalische und andere computerlesbare Medien zum Tragen oder Speichern von computerausführbaren Anweisungen und/oder Datenstrukturen. Insbesondere können einer oder mehrere der hier beschriebenen Prozesse wenigstens teilweise als Anweisungen implementiert sein, die auf einem nichttemporären computerlesbaren Medium verkörpert und durch eine oder mehrere Rechenvorrichtungen (beispielsweise beliebige der hier beschriebenen Mediencontentzugriffsvorrichtungen) ausführbar sind. Allgemein empfängt ein Prozessor (beispielsweise ein Mikroprozessor) Anweisungen von einem nichttemporären computerlesbaren Medium (beispielsweise einem Speicher bzw. Memory) und führt diese Anweisungen aus, wodurch ein oder mehrere Prozesse, darunter einer oder mehrere der hier beschriebenen Prozesse, durchgeführt werden.
  • Computerlesbare Medien können beliebige verfügbare Medien sein, auf die ein Allzweck- oder Spezialzweckcomputersystem zugreifen kann. Computerlesbare Medien, die computerausführbare Anweisungen speichern, sind nichttemporäre computerlesbare Speichermedien (Vorrichtungen). Computerlesbare Medien, die computerausführbare Anweisungen tragen, sind Übertragungsmedien. Beispiels- und nicht beschränkungshalber können Ausführungsformen der Offenbarung daher wenigstens zwei eindeutig verschiedene Arten von computerlesbaren Medien umfassen, nämlich nichttemporäre computerlesbare Speichermedien (Vorrichtungen) und Übertragungsmedien.
  • Nichttemporäre computerlesbare Speichermedien (Vorrichtungen) beinhalten RAM, ROM, EEPROM, CD-ROM, SSDs (Solid State Drives) (beispielsweise auf Grundlage eines RAM), einen Flashspeicher, einen Phasenänderungsspeicher (PCM), andere Arten von Memory bzw. Speicher, einen anderen optischen Plattenspeicher, einen Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder ein beliebiges anderes Medium, das zum Speichern von gewünschten Programmcodemitteln in Form von computerausführbaren Anweisungen oder Datenstrukturen genutzt werden und auf das ein Allzweck- oder Spezialzweckcomputer zugreifen kann.
  • Ein „Netzwerk“ ist als ein oder mehrere Datenlinks definiert, die den Transport von elektronischen Daten zwischen Computersystemen und/oder Modulen und/oder anderen elektronischen Vorrichtungen ermöglichen. Wird Information über ein Netzwerk oder eine andere Kommunikationsverbindung (entweder festverdrahtet, drahtlos oder eine Kombination aus festverdrahtet oder drahtlos) an einen Computer übertragen oder für diesen bereitgestellt, so betrachtet der Computer die Verbindung in der Praxis als Übertragungsmedium. Übertragungsmedien können ein Netzwerk und/oder Datenlinks beinhalten, die zum Tragen von gewünschten Programmcodemitteln in Form von computerausführbaren Anweisungen oder Datenstrukturen genutzt werden können und auf die ein Allzweck- oder Spezialzweckcomputer zugreifen kann. Kombinationen des Vorbeschriebenen sollen ebenfalls im Umfang der computerlesbaren Medien beinhaltet sein.
  • Beim Verwirklichen von verschiedenen Computersystemkomponenten können Programmcodemittel zudem in Form von computerausführbaren Anweisungen oder Datenstrukturen automatisch von Übertragungsmedien auf nichttemporäre computerlesbare Speichermedien (Vorrichtungen) (oder umgekehrt) übertragen werden. Computerausführbare Anweisungen oder Datenstrukturen, die über ein Netzwerk oder einen Datenlink empfangen werden, können beispielsweise in einem RAM innerhalb eines Netzwerkschnittstellenmoduls (beispielsweise eines „NIC“) gepuffert und sodann gegebenenfalls an einen Computersystem-RAM und/oder an weniger flüchtige Computerspeichermedien (Vorrichtungen) auf einem Computersystem übertragen werden. Es sollte daher einsichtig sein, dass nichttemporäre computerlesbare Speichermedien (Vorrichtungen) in Computersystemkomponenten beinhaltet sein können, die ebenfalls (oder sogar primär) Übertragungsmedien einsetzen.
  • Computerausführbare Anweisungen umfassen beispielsweise Anweisungen und Daten, die bei Ausführung durch einen Prozessor veranlassen, dass ein Allzweckcomputer, ein Spezialzweckcomputer oder eine Spezialzweckverarbeitungsvorrichtung eine gewisse Funktion oder Gruppe von Funktionen übernehmen. Bei einigen Ausführungsformen werden computerausführbare Anweisungen durch einen Allzweckcomputer ausgeführt, um den Allzweckcomputer in einen Spezialzweckcomputer zu verwandeln, der Elemente der Offenbarung implementiert. Die computerausführbaren Anweisungen können beispielsweise Binaries, Anweisungen in einem Zwischenformat wie Assemblersprache oder sogar Quellcode sein. Obwohl der Erfindungsgegenstand in einer Sprache beschrieben worden ist, die für strukturelle Merkmale und/oder methodologische Handlungen spezifisch ist, sollte einsichtig sein, dass der in den beigefügten Ansprüchen definierte Erfindungsgegenstand nicht unbedingt auf die vorbeschriebenen Merkmale oder Handlungen beschränkt ist. Vielmehr sind die beschriebenen Merkmale und Handlungen als exemplarische Formen der Implementierung der Ansprüche offenbart.
  • Einem Fachmann auf dem Gebiet erschließt sich, dass die Offenbarung in Netzwerkrechenumgebungen mit vielen Arten von Computersystemkonfigurationen praktisch umgesetzt werden kann, darunter PCs, Desktopcomputer, Laptopcomputer, Nachrichtenprozessoren, Handvorrichtungen, Multiprozessorensysteme, mikroprozessorbasierte oder programmierbare Geräte der Unterhaltungselektronik, Netzwerk-PCs, Minicomputer, Mainframecomputer, Mobiltelefone, PDAs, Tablets, Pager, Router, Switches bzw. Schalter und dergleichen. Praktisch umgesetzt werden kann die Offenbarung auch in verteilten Systemumgebungen, wo lokale und entfernte (remote) Computersysteme, die (entweder durch festverdrahtete Datenlinks, drahtlose Datenlinks oder durch eine Kombination aus festverdrahteten und drahtlosen Datenlinks) über ein Netzwerk verbunden sind, gleichermaßen Aufgaben erledigen. In einer verteilten Systemumgebung können Programmmodule sowohl in lokalen wie auch entfernten (remote) Memoryspeichervorrichtungen befindlich sein.
  • Ausführungsformen der vorliegenden Offenbarung können zudem in Cloudrechenumgebungen implementiert sein. Im der vorliegenden Beschreibung ist „Cloudcomputing bzw. Cloudrechnen“ als Modell definiert, das einen On-Demand-Netzwerkzugriff auf einen geteilten Pool von konfigurierbaren Rechenressourcen ermöglicht. Cloudcomputing bzw. Cloudrechnen kann beispielsweise auf einem Marktplatz eingesetzt werden, um einen allumfassenden und bequemen On-Demand-Zugriff auf den geteilten Pool von konfigurierbaren Rechenressourcen anzubieten. Der geteilte Pool von konfigurierbaren Rechenressourcen kann über eine Virtualisierung schnell bereitgestellt und mit wenig Verwaltungsaufwand oder wenig Eingreifen eines Dienstanbieters freigegeben und sodann entsprechend skaliert werden.
  • Ein Cloudrechenmodell kann aus verschiedenen Eigenschaften zusammengesetzt sein, so beispielsweise On-Demand Self-Service, Broad Network Access, Resource Pooling, Rapid Elasticity, Measured Service und dergleichen. Ein Cloudrechenmodell kann zudem verschiedene Dienstmodelle anbieten, so beispielsweise „Software as a Service“ („SaaS“), „Platform as a Service“ („PaaS“) und „Infrastructure as a Service“ („IaaS“). Ein Cloudrechenmodell kann zudem unter Nutzung verschiedener Verwertungsmodelle eingesetzt werden, so beispielsweise Private Cloud, Community Cloud, Public Cloud, Hybrid Cloud und dergleichen. In der vorliegenden Beschreibung und in den Ansprüchen ist der Begriff „Cloudrechenumgebung“ eine Umgebung, in der Cloudrechnen bzw. Cloudcomputing eingesetzt wird.
  • 15 zeigt in Form eines Blockdiagramms eine exemplarische Rechenvorrichtung 1500 (beispielsweise die Rechenvorrichtung 1500, die Clientvorrichtung 108 und/oder den Server / die Server 104), die dafür konfiguriert sein kann, einen oder mehrere der vorbeschriebenen Prozesse durchzuführen. Es sollte einsichtig sein, dass das klassenspezifische bildmanipulierende System 102 Implementierungen der Rechenvorrichtung 1500 umfassen kann. Wie in 15 gezeigt ist, kann die Rechenvorrichtung einen Prozessor 1502, einen Speicher bzw. Memory 1504, eine Speichervorrichtung 1506, eine I/O-Schnittstelle 1508 und eine Kommunikationsschnittstelle 1510 umfassen. Des Weiteren kann die Rechenvorrichtung 1500 eine Eingabevorrichtung beinhalten, so beispielsweise einen berührungsempfindlichen Schirm (Touchscreen), eine Maus, eine Tastatur und dergleichen. Bei gewissen Ausführungsformen kann die Rechenvorrichtung 1500 weniger oder mehr Komponenten als die in 15 gezeigten umfassen. In 15 gezeigte Komponenten der Rechenvorrichtung 1500 werden nunmehr detaillierter beschrieben.
  • Bei bestimmten Ausführungsformen beinhaltet/beinhalten der Prozessor / die Prozessoren 1502 Hardware zum Ausführen von Anweisungen, so beispielsweise solchen, die ein Computerprogramm bilden. Bei einem Beispiel und nicht im Sinne einer Beschränkung kann/können der Prozessor / die Prozessoren 1502 zum Ausführen von Anweisungen die Anweisungen aus einem internen Register, einem internen Cache, dem Memory 1504 oder der Speichervorrichtung 1506 abrufen (oder holen) und sie decodieren und ausführen.
  • Die Rechenvorrichtung 1500 beinhaltet den Memory 1504, der mit dem Prozessor / den Prozessoren 1502 gekoppelt ist. Der Memory 1504 kann zum Speichern von Daten, Metadaten und Programmen zur Ausführung durch den Prozessor / die Prozessoren benutzt werden. Der Memory 1504 kann eines oder mehrere von flüchtigen und nichtflüchtigen Memorys beinhalten, so beispielsweise einen Speicher mit wahlfreiem Zugriff („RAM“), einen Nur-Lese-Speicher („ROM“), eine Solid-State-Disk („SSD“), einen Flash, einen Phasenänderungsspeicher („PCM“) oder andere Typen von Datenspeicher. Der Memory 1504 kann ein interner oder ein verteilter Memory sein.
  • Die Rechenvorrichtung 1500 beinhaltet eine Speichervorrichtung 1506 mit einem Speicher zum Speichern von Daten oder Anweisungen. Beispiels- und nicht beschränkungshalber kann die Speichervorrichtung 1506 ein nichttemporäres Speichermedium umfassen, wie es vorstehend beschrieben worden ist. Die Speichervorrichtung 1506 kann ein Festplattenlaufwerk (HDD), einen Flash-Speicher, ein USB-Laufwerk (Universeller Serieller Bus USB) oder eine Kombination aus diesen oder anderen Speichervorrichtungen beinhalten.
  • Die Rechenvorrichtung 1500 beinhaltet, wie gezeigt ist, zudem eine oder mehrere I/O-Vorrichtungen/Schnittstellen 1508 (I/O Input/Output), die dafür vorgesehen sind, einem Nutzer zu ermöglichen, eine Eingabe (so beispielsweise Nutzertastendrücke bzw. Nutzerstriche) für die Rechenvorrichtung 1500 bereitzustellen, eine Ausgabe von dieser zu empfangen und auf andere Weise Daten an diese und von dieser zu transferieren. Die I/O-Vorrichtungen/Schnittstellen 1508 können eine Maus, ein Tastenfeld (Keypad) oder eine Tastatur, einen berührungsempfindlichen Bildschirm (Touchscreen), eine Kamera, einen optischen Scanner, eine Netzwerkschnittstelle, ein Modem, andere bekannte I/O-Vorrichtungen oder eine Kombination aus derartigen I/O-Vorrichtungen/Schnittstellen 1508 beinhalten. Der berührungsempfindliche Bildschirm kann mit einer Schreibvorrichtung oder Finger aktiviert werden.
  • Die I/O-Vorrichtungen/Schnittstellen 1508 können eine oder mehrere Vorrichtungen zum Präsentieren einer Ausgabe gegenüber einem Nutzer beinhalten, darunter unter anderem eine Graphics Engine, eine Anzeige (beispielsweise einen Anzeigebildschirm), einen oder mehrere Ausgabetreiber (beispielsweise Anzeigetreiber), einen oder mehrere Audiolautsprecher und einen oder mehrere Audiotreiber. Bei manchen Ausführungsformen sind die Vorrichtungen/Schnittstellen 1508 dafür konfiguriert, grafische Daten für eine Anzeige zur Präsentation gegenüber einem Nutzer bereitzustellen. Die grafischen Daten können eine oder mehrere grafische Nutzerschnittstellen und/oder beliebigen anderen grafischen Content darstellen, so dieser für eine bestimmte Ausführungsform dienlich ist.
  • Die Rechenvorrichtung 1500 kann des Weiteren eine Kommunikationsschnittstelle 1510 beinhalten. Die Kommunikationsschnittstelle 1510 kann Hardware, Software oder beides beinhalten. Die Kommunikationsschnittstelle 1510 kann eine oder mehrere Schnittstellen zur Kommunikation (so beispielsweise zur paketbasierten Kommunikation) zwischen der Rechenvorrichtung und einer oder mehreren anderen Rechenvorrichtungen 1500 oder einem oder mehreren Netzwerken bereitstellen. Beispiels- und nicht beschränkungshalber kann die Kommunikationsschnittstelle 1510 einen Netzwerkschnittstellencontroller (NIC) oder einen Netzwerkadapter zur Kommunikation mit einem Ethernet oder einem anderen drahtbasierten Netzwerk oder einen drahtlosen NIC (WNIC) oder einen Drahtlosadapter zur Kommunikation mit einem Drahtlosnetzwerk, so beispielsweise einem Wl-Fl, beinhalten. Die Rechenvorrichtung 1500 kann des Weiteren einen Bus 1512 beinhalten. Der Bus 1512 kann Hardware, Software oder beides, die Komponenten der Rechenvorrichtung 1500 miteinander koppeln, beinhalten.
  • In der vorstehenden Beschreibung ist die Erfindung anhand spezifischer exemplarischer Ausführungsformen beschrieben worden. Verschiedene Ausführungsformen und Aspekte der Erfindung/Erfindungen werden anhand der hier erläuterten Details beschrieben, wobei die begleitende Zeichnung die verschiedenen Ausführungsformen zeigt. Die vorstehende Beschreibung und die Zeichnung sind für die Erfindung illustrativ und sollen nicht erfindungsbeschränkend gedeutet werden. Es sind zahlreiche spezifische Details beschrieben worden, um ein eingehendes Verständnis der verschiedenen Ausführungsformen der vorliegenden Erfindung zu ermöglichen.
  • Die vorliegende Erfindung kann in anderen spezifischen Formen verkörpert sein, ohne von ihrem Wesen oder ihren wesentlichen Eigenschaften abzugehen. Die beschriebenen Ausführungsformen sind in jeder Hinsicht nur als illustrativ und nicht als restriktiv zu betrachten. Die hier beschriebenen Verfahren können beispielsweise mit weniger oder mehr Schritten/Handlungen durchgeführt werden, oder es können die Schritte/Handlungen in anderen Reihenfolgen durchgeführt werden. Zusätzlich können die hier beschriebenen Schritte/Handlungen wiederholt oder parallel zueinander durchgeführt oder parallel zu anderen bzw. verschiedenen Versionen bzw. Instanzen derselben oder ähnlicher Schritte/Handlungen durchgeführt werden. Der Umfang der Erfindung ist daher durch die beigefügten Ansprüche und nicht durch die vorstehende Beschreibung gegeben. Alle Änderungen, die der Bedeutung und dem Äquivalenzbereich der Ansprüche entsprechen, sollen in deren Umfang umfasst sein.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • WO 17/661985 [0092]
    • US 17/650967 [0117]
    • US 2019/0130229 [0121]
    • US 16/035410 [0121]
    • US 10192129 [0121]

Claims (20)

  1. Nichttransitorisches bzw. nichttemporäres computerlesbares Medium, auf dem Anweisungen gespeichert sind, die bei Ausführung durch wenigstens einen Prozessor veranlassen, dass der wenigstens eine Prozessor Vorgänge durchführt, die umfassen: über eine Nutzerschnittstelle einer Clientvorrichtung erfolgendes Empfangen einer Angabe eines Ersetzungsbereiches eines Digitalbildes und einer Zielobjektklasse; Generieren von Ersetzungspixeln für den Ersetzungsbereich unter Einsatz eines klassenspezifischen Inpainting-Neuralen-Netzwerks bzw. eines manipulierenden neuronalen Netzwerkes entsprechend der Zielobjektklasse; und zur Anzeige über die Clientvorrichtung erfolgendes Bereitstellen eines inpainting bzw. manipulierten Digitalbildes, das die Ersetzungspixel umfasst, derart, dass das inpainting bzw. manipulierte Digitalbild eine Instanz der Zielobjektklasse innerhalb des Ersetzungsbereiches abbildet.
  2. Nichttemporäres computerlesbares Medium nach Anspruch 1, wobei das Empfangen der Angabe des Ersetzungsbereiches und der Zielobjektklasse umfasst: zur Anzeige über die Nutzerschnittstelle erfolgendes Bereitstellen des Digitalbildes; und über die Nutzerschnittstelle erfolgendes Empfangen einer Nutzerauswahl entsprechend dem Ersetzungsbereich unter Einsatz eines Auswahlwerkzeuges entsprechend der Zielobjektklasse.
  3. Nichttemporäres computerlesbares Medium nach Anspruch 2, des Weiteren umfassend: Bestimmen des Ersetzungsbereiches unter Einsatz eines Segmentierungsmodells und der Nutzerauswahl.
  4. Nichttemporäres computerlesbares Medium nach einem der vorhergehenden Ansprüche, des Weiteren umfassend Anweisungen, die bei Ausführung durch wenigstens einen Prozessor veranlassen, dass der wenigstens eine Prozessor Vorgänge durchführt, die umfassen: Generieren einer Maske entsprechend dem Ersetzungsbereich; und Generieren der Ersetzungspixel aus der Maske und dem Digitalbild unter Einsatz des klassenspezifischen manipulierenden neuronalen Netzwerkes.
  5. Nichttemporäres computerlesbares Medium nach einem der vorhergehenden Ansprüche, des Weiteren umfassend Anweisungen, die bei Ausführung durch wenigstens einen Prozessor veranlassen, dass der wenigstens eine Prozessor Vorgänge durchführt, die umfassen: Generieren der Ersetzungspixel unter Einsatz des klassenspezifischen manipulierenden neuronalen Netzwerkes entsprechend wenigstens einer von einer Himmel-Objektklasse, einer Wasser-Objektklasse, einer Boden-Objektklasse oder einer Mensch-Objektklasse.
  6. Nichttemporäres computerlesbares Medium nach einem der vorhergehenden Ansprüche, wobei das Generieren der Ersetzungspixel unter Einsatz des klassenspezifischen manipulierenden neuronalen Netzwerkes umfasst: Generieren einer Bildcodierung unter Einsatz von Codiererschichten eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes.
  7. Nichttemporäres computerlesbares Medium nach Anspruch 6, wobei das Generieren der Bildcodierung unter Einsatz der Codiererschichten des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes umfasst: Generieren von Positionscodierungen entsprechend verschiedenen Auflösungen der Codiererschichten; und Generieren von mehreren Codierungsmerkmalsvektoren unter Einsatz der Codiererschichten und der Positionscodierungen.
  8. Nichttemporäres computerlesbares Medium nach Anspruch 6 oder 7, wobei das Generieren der Ersetzungspixel umfasst: Generieren der Ersetzungspixel unter Einsatz von kaskadierten modulierenden Decodiererschichten des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes aus der Bildcodierung.
  9. System, umfassend: eine oder mehrere Speichervorrichtungen, die umfassen: Digitalbilder, die eine Objektklasse abbilden, und ein neuronales Diskriminatornetzwerk und ein Inpainting-Neurales-Netzwerk bzw. ein manipulierendes neuronales Netzwerk mit einem Codierer und einem Decodierer; und einen oder mehrere Prozessoren, die dafür konfiguriert sind, das System zu veranlassen zum: Generieren von klassensegmentierten Digitalbildern durch Segmentieren von Instanzen der Objektklasse aus den Digitalbildern; Generieren von mehreren vorhergesagten inpainting bzw. manipulierten Digitalbildern für die Objektklasse aus den klassensegmentierten Digitalbildern unter Einsatz des Inpainting-Neuronalen-Netzwerkes bzw. manipulierenden neuronalen Netzwerkes; und Modifizieren von Parametern des Inpainting-Neuronalen-Netzwerkes bzw. manipulierenden neuronalen Netzwerkes zum Generieren eines klassenspezifischen Inpainting-Neuronalen-Netzwerkes bzw. manipulierenden neuronalen Netzwerkes unter Einsatz des neuronalen Diskriminatornetzwerkes und eines adversativen Verlustes.
  10. System nach Anspruch 9, wobei das Segmentieren von Instanzen der Objektklasse aus den Digitalbildern umfasst: Bestimmen von Segmentierungsmasken entsprechend der Objektklasse aus den Digitalbildern; Generieren von dilatierten Segmentierungsmasken aus den Segmentierungsmasken unter Einsatz eines Dilatierungsvorganges; und Segmentieren der Instanzen der Objektklasse aus den Digitalbildern unter Einsatz der dilatierten Segmentierungsmasken.
  11. System nach Anspruch 9 oder 10, wobei das Generieren der mehreren vorhergesagten manipulierten Digitalbilder für die Objektklasse umfasst: Generieren einer Bildcodierung unter Einsatz von Fourier-Faltungscodiererschichten des Codierers des klassenspezifischen manipulierenden neuronalen Netzwerkes.
  12. System nach Anspruch 11, wobei das Generieren der mehreren vorhergesagten manipulierten Digitalbilder für die Objektklasse umfasst: Generieren der mehreren vorhergesagten manipulierten Digitalbilder aus der Bildcodierung unter Einsatz von mehreren kaskadierten modulierenden Schichten eines klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes, wobei eine gegebene kaskadierte modulierende Schicht einen Globalmodulationsblock und einen Raummodulationsblock umfasst.
  13. System nach einem der Ansprüche 9 bis 12, wobei das Modifizieren der Parameter des manipulierenden neuronalen Netzwerkes zum Generieren des klassenspezifischen manipulierenden neuronalen Netzwerkes umfasst: Generieren einer Authentizitätsvorhersage aus einem vorhergesagten inpainting bzw. manipulierten Digitalbild unter Einsatz des neuronalen Diskriminatornetzwerkes; und Bestimmen des adversativen Verlustes auf Grundlage der Authentizitätsvorhersage.
  14. System nach einem der Ansprüche 9 bis 13, wobei das Generieren der klassensegmentierten Digitalbilder umfasst: aus den Digitalbildern erfolgendes Segmentieren von Instanzen von einer von einer Himmel-Objektklasse, einer Wasser-Objektklasse, einer Boden-Objektklasse oder einer Mensch-Objektklasse.
  15. Computerimplementiertes Verfahren, umfassend: über eine Nutzerschnittstelle einer Clientvorrichtung erfolgendes Empfangen einer Angabe dessen, einen Himmel-Ersetzungsbereich eines Digitalbildes zu ersetzen; Generieren von Himmel-Ersetzungspixeln für den Himmel-Ersetzungsbereich unter Einsatz eines klassenspezifischen kaskadierten modulierenden Inpainting-Neuronalen-Netzwerkes bzw. manipulierenden neuronalen Netzwerkes, das darauf trainiert ist, Himmel-Bereiche für Digitalbilder zu generieren; und zur Anzeige über die Clientvorrichtung erfolgendes Bereitstellen eines inpainting bzw. manipulierten Digitalbildes, das die Himmel-Ersetzungspixel innerhalb des Himmel-Ersetzungsbereiches umfasst.
  16. Computerimplementiertes Verfahren nach Anspruch 15, des Weiteren umfassend: Bestimmen des Himmel-Ersetzungsbereiches aus dem Digitalbild unter Einsatz eines Segmentierungsmodells.
  17. Computerimplementiertes Verfahren nach Anspruch 15 oder 16, des Weiteren umfassend: Auswählen des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes, das darauf trainiert ist, Himmel-Bereiche zu generieren, unter mehreren klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerken auf Grundlage der Angabe dessen, den Himmel-Ersetzungsbereich zu ersetzen.
  18. Computerimplementiertes Verfahren nach einem der Ansprüche 15 bis 17, des Weiteren umfassend: Generieren der Himmel-Ersetzungspixel unter Einsatz von kaskadierten modulierenden Decodiererschichten des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes aus einer Bildcodierung.
  19. Computerimplementiertes Verfahren nach Anspruch 18, wobei das Generieren der Himmel-Ersetzungspixel umfasst: Generieren von Positionscodierungen entsprechend verschiedenen Auflösungen der kaskadierten modulierenden Decodiererschichten.
  20. Computerimplementiertes Verfahren nach Anspruch 19, des Weiteren umfassend: Generieren der Himmel-Ersetzungspixel unter Einsatz der kaskadierten modulierenden Decodiererschichten des klassenspezifischen kaskadierten modulierenden manipulierenden neuronalen Netzwerkes, der Bildcodierung und der Positionscodierungen.
DE102023104829.5A 2022-05-13 2023-02-28 Objektklasseninpainting - bzw. manipulieren in Digitalbildern unter Einsatz von klassenspezifischen Inpainting-Neuronalen- Netzwerken Pending DE102023104829A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/663,317 2022-05-13
US17/663,317 US20230368339A1 (en) 2022-05-13 2022-05-13 Object class inpainting in digital images utilizing class-specific inpainting neural networks

Publications (1)

Publication Number Publication Date
DE102023104829A1 true DE102023104829A1 (de) 2023-11-16

Family

ID=86052712

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102023104829.5A Pending DE102023104829A1 (de) 2022-05-13 2023-02-28 Objektklasseninpainting - bzw. manipulieren in Digitalbildern unter Einsatz von klassenspezifischen Inpainting-Neuronalen- Netzwerken

Country Status (5)

Country Link
US (1) US20230368339A1 (de)
CN (1) CN117058007A (de)
AU (1) AU2023201535A1 (de)
DE (1) DE102023104829A1 (de)
GB (1) GB2619381A (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240127410A1 (en) * 2022-10-03 2024-04-18 Adobe Inc. Panoptically guided inpainting utilizing a panoptic inpainting neural network
CN117726916B (zh) * 2024-02-18 2024-04-19 电子科技大学 一种图像分辨率融合增强的隐式融合方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017161985A1 (zh) 2016-03-24 2017-09-28 诸城市浩天药业有限公司 甜菊糖b苷晶型及制备方法和用途
US10192129B2 (en) 2015-11-18 2019-01-29 Adobe Systems Incorporated Utilizing interactive deep learning to select objects in digital visual media
US20190130229A1 (en) 2017-10-31 2019-05-02 Adobe Inc. Deep salient content neural networks for efficient digital object segmentation

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10074161B2 (en) * 2016-04-08 2018-09-11 Adobe Systems Incorporated Sky editing based on image composition
US10613726B2 (en) * 2017-12-22 2020-04-07 Adobe Inc. Removing and replacing objects in images according to a directed user conversation
US11042990B2 (en) * 2018-10-31 2021-06-22 Adobe Inc. Automatic object replacement in an image
GB2586678B (en) * 2019-07-22 2022-06-22 Adobe Inc Utilizing multiple object detection models to automatically select user-requested objects in images
US11481882B2 (en) * 2019-11-18 2022-10-25 Shinyfields Limited Systems and methods for selective replacement of objects in images
CN111354059B (zh) * 2020-02-26 2023-04-28 北京三快在线科技有限公司 图像处理方法及装置
CN113554658B (zh) * 2020-04-23 2024-06-14 北京达佳互联信息技术有限公司 图像处理方法、装置、电子设备及存储介质
US20210407051A1 (en) * 2020-06-26 2021-12-30 Nvidia Corporation Image generation using one or more neural networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10192129B2 (en) 2015-11-18 2019-01-29 Adobe Systems Incorporated Utilizing interactive deep learning to select objects in digital visual media
WO2017161985A1 (zh) 2016-03-24 2017-09-28 诸城市浩天药业有限公司 甜菊糖b苷晶型及制备方法和用途
US20190130229A1 (en) 2017-10-31 2019-05-02 Adobe Inc. Deep salient content neural networks for efficient digital object segmentation

Also Published As

Publication number Publication date
US20230368339A1 (en) 2023-11-16
CN117058007A (zh) 2023-11-14
GB202303646D0 (en) 2023-04-26
GB2619381A (en) 2023-12-06
AU2023201535A1 (en) 2023-11-30

Similar Documents

Publication Publication Date Title
Wang et al. MUSICAL: Multi-Scale Image Contextual Attention Learning for Inpainting.
Yu et al. Generative image inpainting with contextual attention
Demir et al. Patch-based image inpainting with generative adversarial networks
CN114092386A (zh) 缺陷检测方法和设备
DE102023104829A1 (de) Objektklasseninpainting - bzw. manipulieren in Digitalbildern unter Einsatz von klassenspezifischen Inpainting-Neuronalen- Netzwerken
DE102018006247A1 (de) Digitalbildvervollständigung unter Verwendung des Deep Learning
Wang et al. Laplacian pyramid adversarial network for face completion
DE102019007196A1 (de) Identifizieren von Zielobjekten unter Nutzung der skalierungsdiversen Segmentierung dienender neuronaler Netzwerke
CN109685801B (zh) 结合纹理特征和深度神经网络信息的皮肤镜图像处理方法
DE102022105471A1 (de) Generieren von modifizierten Digitalbildern unter Einsatz von tiefen visuellen angeleiteten Patchabgleichsmodellen zur Bildwiederherstellung
CN111696110A (zh) 场景分割方法及***
CN113516604B (zh) 图像修复方法
DE102023119479A1 (de) Lernen von Parametern für neuronale Netzwerke unter Nutzung eines semantischen Diskriminators und eines Objektebenendiskriminators
DE102023110001A1 (de) Anwenden eines objektbewussten Stiltransfers auf Digitalbilder
Campana et al. Variable-hyperparameter visual transformer for efficient image inpainting
DE102023125641A1 (de) Entfernen von störenden Objekten aus Digitalbildern
DE102023120640A1 (de) Gestaltete glyphen vermittels generativer ki
CN117011530A (zh) 一种水下图像实例分割方法、***、存储介质及电子设备
DE102023117605A1 (de) Mehrdimensionale Bildbearbeitung aus einem Eingabebild
DE102022119444A1 (de) Durchführen von interaktiven Digitalbildvorgängen unter Einsatz von modifizierten maschinell lernenden Modellen
Amirkolaee et al. Convolutional neural network architecture for digital surface model estimation from single remote sensing image
Chen et al. A multi-level feature integration network for image inpainting
Vitoria et al. Semantic image completion through an adversarial strategy
Wang et al. Near-infrared fusion for deep lightness enhancement
DE102023119505A1 (de) Iteratives Modifizieren von rekonstruierten Digitalbildern auf Grundlage von Änderungen an panoptischen Segmentierungskarten

Legal Events

Date Code Title Description
R012 Request for examination validly filed