-
Angesichts der technologischen Fortschritte bei Rechenvorrichtungen ist Online-Einkaufen im Vergleich zu herkömmlichen Methoden, bei denen reale Verkaufsstellen aufgesucht werden, zu einem zunehmend bevorzugten Mechanismus für Kunden geworden. Ungeachtet des Komforts, den Online-Einkaufsplattformen bieten, können Kunden dort nicht sehen, wie ein bestimmter Modeartikel, der in einem Produktbild dargestellt ist, tatsächlich aussieht, wenn der Kunde ihn trägt. Um für Kunden eine Vorschau darauf bereitzustellen, wie der Modeartikel aussieht, schätzen herkömmliche virtuelle Anprobekabinen die Körperform eines Kunden unter Nutzung eines dreidimensionalen Modells. Derartige herkömmliche dreidimensionale Modelle können unter Nutzung verschiedener Methoden generiert werden, so beispielsweise unter Nutzung von Tiefenerfassungskameras, durch Schätzen der dreidimensionalen Form des Körpers eines Kunden unter Nutzung von zweidimensionalen Bildern und dergleichen mehr. Obwohl diese Methoden Simulationen von Modeartikeln so, als würde der Kunde sie tragen, ermöglichen, bedingen derartige herkömmliche Methoden hohe Kosten für Hardware und Rechenressourcen, die zum Sammeln und Auswerten von dreidimensionalen Bilddaten erforderlich sind.
-
Um diesen Problemen zu begegnen, greifen einige herkömmliche Methoden auf zweidimensionale RGB-Bilder (Rot-Grün-Blau RGB) zurück, ohne dreidimensionalen Daten einzusetzen. Diese herkömmlichen Methoden stellen darauf ab, ein neues Bild zu generieren, das über einem Produktbild in einem entsprechenden Bereich eines Bildes eines Kunden eingeblendet wird. Derartige Methoden der Bildeinblendung stellen jedoch gegebenenfalls wichtige Aspekte im Bild eines Kunden, so beispielsweise die Körperpose des Kunden, sowie wichtige Aspekte im Bild des Produktes, so beispielsweise materialtypische Verformungen des Produktes, visuelle Muster des Produktes und dergleichen mehr, nicht akkurat dar. Im Ergebnis geben herkömmliche Methoden, die nur auf zweidimensionaler Information beruhen, oftmals Bilder eines Produktes aus, die über einem Kunden eingeblendet werden, jedoch die realistische Wirkung dessen, wie das Produkt aussieht, wenn der Kunde es tatsächlich trägt, nicht darstellen können. Infolgedessen werden für Online-Einkaufskunden Vorschauen auf Modeartikel bereitgestellt, die das reale Aussehen des Modeartikels dann, wenn der jeweilige Kunde ihn trägt, nicht akkurat darstellen können.
-
Zusammenfassung
-
Beschrieben wird das Generieren eines synthetisierten Bildes einer Kleidung tragenden Person. Ein IBVTON-System (Image-Based Virtual Try-On IBVTON, bildbasiertes virtuelles Anprobieren) empfängt ein zweidimensionales Referenzbild, das eine ein Kleidungsstück tragende Person abbildet. Das IBVTON-System empfängt des Weiteren ein zweidimensionales Bild der Zielkleidung, mit der die Person bekleidet werden soll und die einen Modeartikel darstellen kann, dessen Erwerb ein Kunde auf einem Online-Marktplatz ins Auge fasst. Um das synthetisierte Bild der die Zielkleidung tragenden Person zu generieren, generiert das IBVTON-System ein formverändertes Bild der Zielkleidung unter Nutzung eines geometrisch abgleichenden Moduls. Das geometrisch abgleichende Modul implementiert ein Modell maschinellen Lernens, das darauf trainiert wird, Ähnlichkeiten und Unterschiede zwischen formveränderten und nicht formveränderten Bildern desselben Kleidungsstücks unter Nutzung eines Multiskalen-Patchadversativverlustes (englisch: multi-scale patch adversarial loss) zu erkennen, der durch Entnehmen von Patches mehrerer Größen aus denselben entsprechenden Orten der formveränderten und nicht formveränderten Bilder desselben Kleidungsstücks bestimmt wird. Das geometrisch abgleichende Modul generiert das formveränderte Bild der Zielkleidung auf Grundlage des die Person abbildenden Referenzbildes derart, dass die Zielkleidung derart formverändert wird, dass sie zu der bestimmten Körperpose und zu Eigenschaften der Person passt.
-
Um den Multiskalen-Patchadversativverlust zu berechnen, der von dem geometrisch abgleichenden Modul beim Generieren der formveränderten Version der Zielkleidung verarbeitetet wird, greift das IBVTON-System auf verschiedene Bildpaare zu, die jeweils ein Referenzbild einer ein Kleidungsstück tragenden Person und ein Produktbild, das das Kleidungsstück ohne die es tragende Person abbildet, beinhalten. Das IBVTON-System ist des Weiteren dafür konfiguriert, eine kleidungsunabhängige Personendarstellung der Person herzuleiten, die die Pose der Person, die Körperform der Person und einen oder mehrere reservierte Bereiche, die der individuellen Identität der Person entsprechen, so beispielsweise Haar- und Gesichtsbereiche, beschreibt. Das IBVTON-System generiert eine gewarpte bzw. formveränderte Textilie durch Abbilden des Produktbildes auf die kleidungsunabhängige Personendarstellung und generiert eine gewarpte bzw. formveränderte Ground-Truth bzw. Basis-Textilie (englisch: ground truth warped cloth) durch Extrahieren einer Maske des Kleidungsstücks aus dem Referenzbild. Patchpaare mehrerer Skalen werden aus denselben entsprechenden Bereichen sowohl der generierten formveränderten Textilie wie auch der formveränderten Basis-Textilie in Bereichen entnommen, die gänzlich in einen Textilienbereich der formveränderten Textilie und der formveränderten Basis-Textilie fallen (beispielsweise aus Bereichen, die keine Kante der formveränderten Textilie oder der formveränderten Basis-Textilie beinhalten). Berechnet wird der Multiskalen-Patchadversativverlust schließlich durch einen Vergleich eines jeden der Paare von Patches und eine Bestimmung dessen, ob der Patch aus der formveränderten Textilie dieselbe lokale Textur wie der Patch aus der formveränderten Basis-Textilie teilt.
-
Das IBVTON-System trainiert das geometrisch abgleichende Modul unter Nutzung der Patchpaare durch Bereitstellen von Paaren von Patches aus denselben entsprechenden Bereichen, die dieselbe lokale Textur teilen, als Positivtrainingsbeispiele und durch Bereitstellen von Paaren von Patches, die aus verschiedenen bzw. anderen Bereichen stammen oder die keine lokalen Texturen teilen, als Negativtrainingsbeispiele. Das IBVTON-System implementiert sodann ein Anprobemodul, das dafür konfiguriert ist, ein synthetisiertes Bild zu generieren, das die Person abbildet, die anstatt der Kleidung, die die Person in dem Referenzbild trägt, die formveränderte Zielkleidung trägt.
-
Die vorliegende Zusammenfassung führt in vereinfachter Form eine Auswahl von Konzepten ein, die nachstehend in der Detailbeschreibung weiter beschrieben werden. Als solches soll die vorliegende Zusammenfassung wesentliche Merkmale des beanspruchten Erfindungsgegenstandes weder identifizieren, noch soll sie als Hilfe beim Bestimmen des Umfanges des beanspruchten Erfindungsgegenstandes verstanden werden.
-
Figurenliste
-
Die Detailbeschreibung erfolgt anhand der begleitenden Figuren.
- 1 ist eine Darstellung einer Umgebung einer exemplarischen Implementierung, die dafür betreibbar ist, die hier beschriebenen Techniken zur Formveränderung einer Textilie einzusetzen.
- 2 zeigt eine exemplarische Implementierung, bei der das bildbasierte virtuelle Anprobesystem von 1 ein synthetisiertes Bild einer formveränderte Kleidung tragenden Person unter Nutzung der hier beschriebenen Techniken generiert.
- 3 zeigt eine exemplarische Implementierung einer kleidungsunabhängigen Personendarstellung, die von dem bildbasierten virtuellen Anprobesystem von 1 generiert wird.
- 4 zeigt eine exemplarische Implementierung eines geometrisch abgleichenden Moduls des bildbasierten virtuellen Anprobesystems von 1.
- 5 zeigt eine exemplarische Implementierung eines Anprobemoduls des bildbasierten virtuellen Anprobesystems von 1.
- 6 zeigt eine exemplarische Implementierung des Trainierens des geometrisch abgleichenden Moduls des bildbasierten virtuellen Anprobesystems von 1 unter Nutzung eines Multiskalen-Patchadversativverlustes.
- 7 ist ein Flussdiagramm mit der Abbildung einer Prozedur bei einer exemplarischen Implementierung zum Generieren eines synthetisierten Bildes einer formveränderte Kleidung tragende Person unter Nutzung der hier beschriebenen Techniken.
- 8 ist ein Flussdiagramm mit der Abbildung einer Prozedur bei einer exemplarischen Implementierung zum Trainieren eines geometrisch abgleichenden Moduls zum Generieren eines synthetisierten Bildes mit einem Multiskalen-Patchadversativverlust unter Nutzung der hier beschriebenen Techniken.
- 9 zeigt ein exemplarisches System, das verschiedene Komponenten einer exemplarischen Vorrichtung beinhaltet, die als Rechenvorrichtung so, wie sie eingesetzt wird und/oder anhand von 1 bis 8 beschrieben wird, implementiert sein kann, um die hier beschriebenen Techniken zu implementieren.
-
Detailbeschreibung
-
Übersicht
-
Angesichts der technologischen Fortschritte bei Rechenvorrichtungen sind Online-Marktplätze und E-Commerce-Plattformen im Vergleich zum physischen Aufsuchen von realen Verkaufsstellen zu einem bevorzugten Mechanismus des Einkaufens geworden. Ein Nachteil des Einkaufens auf Online-Marktplätzen und E-Commerce-Plattformen ist das Nichtvorhandensein einer physischen Umgebung, die sonst in einer realen Verkaufsstelle geboten wird, so beispielsweise das Nichtvorhandensein einer physischen Umkleidekabine, in der Einkaufende Kleidungsstücke anprobieren, um eine Vorschau darauf zu erhalten, wie die Kleidung passt, bevor sie eine Kaufentscheidung treffen. Um diesen Nachteil auszugleichen, ermöglichen herkömmliche Methoden Nutzern unter Nutzung computergenerierter Grafiken eine Vorschau darauf zu erhalten, wie ein Kleidungsstück aussehen wird. Diese herkömmlichen Methoden ermöglichen, dass Nutzer eine Vorstellung davon bekommen, wie sie verschiedene Kleidung tragen, ohne dass erforderlich wäre, dass die Nutzer die Kleidung physisch tragen. Zu diesem Zweck nutzen herkömmliche Anprobesysteme Computergrafiken, die dreidimensionale Modelle eines Nutzers wie auch von Kleidung, die der Nutzer tragen soll, unter Nutzung geometrischer Transformationen und physischer bzw. physikalischer Randbedingungen, die aus den dreidimensionalen Modellen hergeleitet werden, erstellen. Gleichwohl erfordern diese herkömmlichen Anprobesysteme eine manuelle Eingabe und beträchtliche Mengen an rechen- und netzwerktechnischen Ressourcen, um sowohl Information, die zum Erstellen der dreidimensionalen Modelle erforderlich ist, zu sammeln wie auch die Modelle zu erstellen.
-
Um die Menge der rechen- und netzwerktechnischen Ressourcen, die von diesen herkömmlichen virtuellen Anprobesystemen sonst benötigt werden, zu verringern, bedienen sich einige herkömmliche Systeme einer Methode, bei der ein Vorschaubild eines Zielkleidung tragenden Nutzers im Stile eines bedingungsbehafteten bzw. konditionellen Bildgenerierungsproblems generiert wird. Bei einer derartigen Methode der bedingungsbehafteten bzw. konditionellen Bildgenerierung wird, wenn zwei Bilder, nämlich eines einer Person und eines einer Zielkleidung, gegeben sind, ein neues Bild mit dem Ziel synthetisiert, die ursprüngliche Körperform und Pose der Person beizubehalten und dabei Eigenschaften des Kleidungsstücks, so beispielsweise Textur, Logo, Beschriftung und dergleichen, zu erhalten. Derartige herkömmliche Methoden verformen die Zielkleidung, damit diese auf das Personenbild abgestimmt ist, unter Nutzung von Techniken der bedingungsbehafteten bzw. konditionellen Bildgenerierung, so beispielsweise unter Nutzung einer Bild-zu-Bild-Translation. Um Unschärfe und andere Artefakte, die sich aus diesen Techniken der bedingungsbehafteten bzw. konditionellen Bildgenerierung ergeben, zu einzubeziehen, berücksichtigen verschiedene Methoden Pixel-zu-Pixel-Verluste (beispielsweise L1- und L2-Verluste), den perzeptiven Verlust und den adversativen Verlust (englisch: adversarial loss). Gleichwohl geben diese herkömmlichen Methoden synthetisierte Bilder weiterhin mit beträchtlicher Unschärfe wieder und können die Eigenschaften der Zielkleidung nicht angemessen bewahren. Diese herkömmlichen Methoden sind zudem darauf beschränkt, synthetisierte Bilder dann zu generieren, wenn das Personenbild und das Zielbild als Vorbedingung zur Synthese grob abgestimmt werden. Derartige herkömmliche Methoden können daher gegebenenfalls nicht mit umfassenden Transformationen oder nach Bedarf eingesetzten Transformationen umgehen, die dafür benötigt werden, für einen Nutzer eine Echtzeitvorschau darauf, wie die Zielkleidung aussehen wird, bereitzustellen.
-
Entsprechend wird das Formverändern von Textilien unter Nutzung eines Multiskalen-Patchadversativverlustes (englisch: multi-scale patch adversarial loss) beschrieben. Ein IBVTON-System empfängt ein Referenzbild, das eine Kleidung tragende Person abbildet, und ein Bild der Zielkleidung, mit der die in dem Referenzbild abgebildete Person bekleidet werden soll. Um ein synthetisiertes Bild der Person, die in dem Referenzbild abgebildet ist und anstatt der Kleidung, die ursprünglich in dem Referenzbild abgebildet ist, die Zielkleidung trägt, zu generieren, generiert das IBVTON-System eine textilienunabhängige Personendarstellung der in dem Referenzbild abgebildeten Person und nutzt die textilienunabhängige Personendarstellung als Modell zum Generieren einer formveränderten Version der Zielkleidung auf eine Weise, die visuelle Eigenschaften sowohl der Zielkleidung wie auch der in dem Referenzbild abgebildeten Person beibehält. Die formveränderte Version der Zielkleidung wird unter Nutzung einer lernfähigen Thin-Plate-Spline-Transformation verformt, die von einem faltungstechnischen neuronalen Netzwerk ausgegeben wird, um die Zielkleidung auf die durch die kleidungsunabhängige Personendarstellung beschriebenen Attribute abzustimmen. Parameter für das faltungstechnische neuronale Netzwerk werden mit paarweise vorhandenen Bildern der Zielkleidung und einer die Zielkleidung tragenden Person trainiert, ohne dass eine Angabe der von Interesse seienden explizit entsprechenden Punkte in den Bildern der Zielkleidung und der die Zielkleidung tragenden Person erforderlich wäre.
-
Das faltungstechnische neuronale Netzwerk wird hier im Kontext eines geometrisch abgleichenden Moduls beschrieben, das die kleidungsunabhängige Personendarstellung und ein Bild der Zielkleidung als Eingaben nutzt und eine posenkohärente formveränderte Version der Zielkleidung wie auch eine Kompositionsmaske generiert, die Details der Zielkleidung, die in dem synthetisierten Bild erhalten bleiben sollen, angibt. Die Kompositionsmaske ermöglicht die Ausgabe eines glatten bzw. stetigen synthetisierten Bildes und greift auf Transformationen für verschiedene Körperformen und Körperposen zu, damit das synthetisierte Bild, das von dem IBVTON-System ausgegeben wird, die persönliche Identität der in dem Referenzbild abgebildeten Person beibehält.
-
Das geometrisch abgleichende Modul ist dafür konfiguriert, realistische synthetisierte Bilder auszugeben, indem es einem Training unter Nutzung eines Multiskalen-Patchadversativverlustes unterzogen wird, der Details der Kleidungstextur beibehält, um feindetaillierte Eigenheiten in Bildern der Zielkleidung besser zu modellieren. Der Multiskalen-Patchadversativverlust wird bestimmt, indem Paare von Patches mehrerer Skalen aus denselben entsprechenden Orten von Bildern einer formveränderten Textilie und einer entsprechenden formveränderten Basis-Textilie (ground truth cloth) entnommen werden. Die formveränderte Basis-Textilie für ein Kleidungsstück kann ein Bild eines das Kleidungsstück tragenden Models betreffen, wodurch eine realitätskonforme Grundlage dafür bereitgestellt wird, wie die Wirkung des Kleidungsstücks dann, wenn eine Person es trägt, visuell aussehen sollte, wenn man die Körperform und die Körperpose der Person berücksichtigt.
-
Aus den entnommenen Patches kann ein lokaler Verlust bestimmt werden, um anzugeben, ob ein Paar von Patches denselben lokalen Bereich darstellt und dieselbe lokale Textur sowohl in der vorhergesagten formveränderten Textilie wie auch in der formveränderten Basis-Textilie aufweist. Der Multiskalen-Patchadversativverlust wird zusammen mit dem Pixel-zu-Pixel-Verlust benutzt, um ein formverändertes Bild der Zielkleidung zu generieren, das anschließend von einem Anprobemodul des IBVTON-Systems benutzt werden kann, um ein synthetisiertes Bild auszugeben, das die Person abbildet, die die formveränderte Zielkleidung anstatt der in dem ursprünglichen Referenzbild abgebildeten Kleidung trägt. Auf diese Weise generieren die hier beschriebenen Techniken synthetisierte Bilder, die keine visuellen Artefakte der Formveränderung und des Bleeding aufweisen, die sonst bei herkömmlichen Methoden generiert werden, während die Menge der netzwerk- und rechentechnischen Ressourcen, die man hierfür benötigt, verringert wird.
-
Exemplarische Umgebung
-
1 ist eine Darstellung einer Digitalmedienumgebung 100 bei einer exemplarischen Implementierung, die dafür betreibbar ist, die hier beschriebenen Techniken einzusetzen. Die dargestellte Umgebung 100 beinhaltet eine Rechenvorrichtung 102, die bei verschiedenen Konfigurationen implementiert sein kann. Die Rechenvorrichtung 102 kann beispielsweise als Desktopcomputer, Laptop-Computer, mobile Vorrichtung (beispielsweise unter Annahme einer Handkonfiguration wie bei einem Tablet oder Mobiltelefon) und dergleichen mehr konfiguriert werden. Die Rechenvorrichtung 102 kann daher von einer über vollständige Ressourcen verfügenden Vorrichtung mit beträchtlichen Speicher- und Prozessorressourcen (beispielsweise PCs, Spielekonsolen) zu einer über geringe Ressourcen verfügenden Vorrichtung mit beschränkten Speicher- und/oder Verarbeitungsressourcen (beispielsweise mobile Vorrichtungen) reichen. Obwohl zudem eine einzige Rechenvorrichtung 102 gezeigt ist, kann die Rechenvorrichtung 102 mehrere verschiedene Vorrichtungen darstellen, so beispielsweise mehrere Server, die Vorgänge „über die Cloud“ durchführen, wie anhand 9 beschrieben wird.
-
Die Rechenvorrichtung 102 ist derart dargestellt, dass sie ein IBVTON-System 104 beinhaltet. Das IBVTON-System 104 stellt eine Funktionalität dar, bei der die Rechenvorrichtung 102 ein Referenzbild 106 einer Person und ein Bild einer Zielkleidung 108 empfängt und ein synthetisiertes Bild 110 generiert, das die in dem Referenzbild 106 abgebildete Person abbildet, die jedoch anstelle der Kleidung 112, die die Person in dem Referenzbild 106 trägt, die Zielkleidung 108 trägt. Das synthetisierte Bild 110 wird generiert, indem die Zielkleidung 108 auf eine Weise generiert wird, die die Körperform und die Pose der Person in dem Referenzbild 106 berücksichtigt und dabei einzigartige bzw. eindeutige persönliche Eigenschaften, so beispielsweise Haar- und Gesichtsbereiche der Person in dem Referenzbild 106, beibehält.
-
Um das synthetisierte Bild 110 zu generieren, setzt das IBVTON-System 104 ein Darstellungsmodul 114, eine Entnahmemodul 116, ein geometrisch abgleichendes Modul 118, ein Anprobemodul 120 und ein Wiedergabemodul 122 ein. Das Darstellungsmodul 114, das Entnahmemodul 116, das geometrisch abgleichende Modul 118, das Anprobemodul 120 und das Wiedergabemodul 122 sind jeweils wenigstens teilweise in Hardware der Rechenvorrichtung 102 (beispielsweise unter Nutzung eines Verarbeitungssystems und computerlesbarer Speichermedien) implementiert, wie nachstehend noch detaillierter anhand 9 beschrieben wird.
-
Ist das Referenzbild 106 gegeben, so ist das Darstellungsmodul 114 dafür konfiguriert, eine textilienunabhängige Personendarstellung der in dem Referenzbild 106 abgebildeten Person zu generieren. Die textilienunabhängige Personendarstellung beinhaltet Information zur Beschreibung einer Körperform, einer Körperpose sowie bestimmter Bereiche (beispielsweise Gesichts- und Haarbereiche), die das Aussehen der Person in dem Referenzbild 106 unabhängig von der Kleidung 112 beschreiben, wie nachstehend anhand 3 noch detaillierter beschrieben wird. Das Darstellungsmodul 114 ist des Weiteren dafür konfiguriert, eine formveränderte Textilie und eine formveränderte Basis-Textilie für ein Kleidungsstück bereitzustellen, die von dem IBVTON-System 104 dafür genutzt werden können, das geometrisch abgleichende Modul 118 zu trainieren, wie nachstehend noch detaillierter anhand 4 bis 6 beschrieben wird.
-
Das Entnahmemodul 116 ist dafür konfiguriert, die formveränderte Textilie und die formveränderte Basis-Textilie von dem Darstellungsmodul 114 zu empfangen und Paare von Patches aus demselben entsprechenden Ort der formveränderten Textilie und der formveränderten Basis-Textilie zu entnehmen. Jedes Paar von Patches wird mit gleicher Größe aus einem Ort der jeweiligen formveränderten Textilie und der formveränderten Basis-Textilie, der gänzlich in einen Textilienbereich fällt, derart entnommen, dass die Entnahme keinen Abschnitt der formveränderten Textilie oder der formveränderten Basis-Textilie beinhaltet, der eine Kante einer Textilie oder einen anderen Bildartefakt, der nicht die Textilie abbildet, darstellt. Das Entnahmemodul 116 entnimmt zufällig Patchpaare mehrerer verschiedener Größen aus der formveränderten Textilie und der formveränderten Basis-Textilie, die von dem IBVTON-System 104 dafür benutzt werden, das geometrisch abgleichende Modul 118 unter Nutzung sowohl eines Multiskalen-Patchadversativverlustes wie auch eines Verlustes kleinster absoluter Abweichungen oder L1-Verlustes zu trainieren, wie nachstehend noch detaillierter anhand 5 beschrieben wird. Der Multiskalen-Patchadversativverlust bezeichnet einen lokalen Verlust, der bestimmt, ob ein Patch aus der formveränderten Textilie und ein Patch aus der formveränderten Basis-Textilie denselben lokalen Bereich darstellen und dieselbe Textur teilen.
-
Nach erfolgtem Training mit dem Multiskalen-Patchadversativverlust stellt das geometrisch abgleichende Modul 118 eine Funktionalität dar, die eine formveränderte Version der Zielkleidung 118 auf Grundlage der kleidungsunabhängigen Personendarstellung der in dem Referenzbild 106 abgebildeten Person generiert. Durch Trainieren des geometrisch abgleichenden Moduls 118 mit dem Multiskalen-Patchadversativverlust kann das IBVTON-System 104 die formveränderte Version der Zielkleidung 108 mittels einer elastischen Transformation derart generieren, dass diese zur Körperform und Pose der in dem Referenzbild 106 abgebildeten Person passt, während Texturdetails der Zielkleidung 108, so beispielsweise Materialeigenschaften, Logos, eingearbeitete Musterungen und dergleichen mehr, erhalten bleiben. Auf diese Weise stellt die formveränderte Version der Zielkleidung 108, die von dem geometrisch abgleichenden Modul generiert wird, eine grobe Abstimmung der formveränderten Version der Zielkleidung 108 als Abstimmung auf eine Körperform und Pose der in dem Referenzbild 106 abgebildeten Person dar.
-
Das geometrisch abgleichende Modul 118 kommuniziert die formveränderte Zielkleidung sodann an das Anprobemodul 120, das eine Funktionalität darstellt, die ein Bild einer die formveränderte Zielkleidung tragenden Person generiert. Zu diesem Zweck generiert das Anprobemodul 120 eine verkettete Eingabe der kleidungsunabhängigen Personendarstellung und der formveränderten Kleidung zur als Ausgabe erfolgenden Wiedergabe eines Bildes der die formveränderte Kleidung tragenden Person und einer Kompositionsmaske, die eine Maske der formveränderten Kleidung darstellt, die aus dem Ausgabebild der die formveränderte Kleidung tragenden Person hergeleitet ist, und zwar ohne die Person. Unter Nutzung der Kompositionsmaske verschmilzt das Anprobemodul 120 die formveränderte Kleidung und das Bild der die formveränderte Kleidung tragenden Person zur Verbesserung der Abstimmung und zur Beseitigung einer Unschärfe aus dem sich ergebenden Bild der die formveränderte Zielkleidung tragenden Person. Auf diese Weise vermeidet das Anprobemodul 120 das unnatürliche Aussehen synthetisierter Bilder, die mittels herkömmlicher Methoden generiert werden, die entweder direkt formveränderte Kleidung in das Bild der Zielperson einfügen oder das synthetisierte Bild unter Nutzung eines einzigen Vorwärtsdurchganges (forward pass) durch ein Encoder-Decoder-Netzwerk generieren. Um das realistische Aussehen des sich ergebenden synthetisierten Bildes der die Zielkleidung tragenden Person sicherzustellen, ist das IBVTON-System 104 dafür konfiguriert, das Anprobemodul 120 unter Nutzung sowohl eines perzeptiven Verlustes sowie auch eines Verlustes kleinster absoluter Abweichungen oder L1-Verlustes zu trainieren, wie nachstehend noch detaillierter anhand 6 beschrieben wird.
-
Das Wiedergabemodul 122 stellt eine Funktionalität dar, die eine Anzeige einer Information ausgibt, die von dem IBVTON-System 104 berücksichtigt und generiert wird, so beispielsweise das Referenzbild 106, das Bild der Zielkleidung 108 und das synthetisierte Bild 110. Das Wiedergabemodul 122 ist des Weiteren dafür konfiguriert, eine Nutzerschnittstelle für das IBVTON-System 104 zu generieren und auszugeben, die Steuerungen bzw. Regelungen beinhalten kann, um das synthetisierte Bild 110, wenn ein Referenzbild 106 und ein Bild der Zielkleidung 108 gegeben sind, zu generieren und die Information, die von dem IBVTON-System 104 berücksichtigt und generiert wird, anzuzeigen.
-
Das Referenzbild 106, das Bild der Zielkleidung 108, das synthetisierte Bild 110 und andere Information, die von dem IBVTON-System 104 verarbeitet oder generiert wird, können in einem Speicher der Rechenvorrichtung 102 gespeichert werden, wie nachstehend anhand 9 noch beschrieben wird. Alternativ oder zusätzlich ist das IBVTON-System 104 dafür konfiguriert, das Referenzbild 106, das Bild der Zielkleidung 108, das synthetisierte Bild 110 und zusätzliche Information, wie nachstehend anhand 2 bis 8 noch detaillierter beschrieben wird, an einem Remote-Speicherort für eine nachfolgende Abfrage und/oder einen nachfolgenden Zugriff durch die Rechenvorrichtung 102 oder andere Rechenvorrichtungen bereitzustellen. Das IBVTON-System 104 kann Information beispielsweise an einen Remote-Speicher 124 oder direkt an eine andere Rechenvorrichtung über das Netzwerk 126 kommunizieren.
-
Nach erfolgter Betrachtung einer exemplarischen Digitalmedienumgebung folgt nunmehr eine Diskussion eines exemplarischen Systems, das benutzt werden kann, um ein synthetisiertes Bild einer Zielkleidung tragenden Person entsprechend Aspekten der vorliegenden Offenbarung zu generieren.
-
2 zeigt ein exemplarisches System 200, das dafür genutzt werden kann, entsprechend den hier beschriebenen Techniken ein synthetisiertes Bild zu generieren, das eine formveränderte Zielkleidung tragende Person abbildet, wenn ein zweidimensionales Bild der andere Kleidung tragenden Person und ein zweidimensionales Bild der Zielkleidung gegeben sind. Bei dem dargestellten Beispiel beinhaltet das System 200 Module des IBVTON-Systems 104, die anhand 1 eingeführt worden sind, so beispielsweise das Darstellungsmodul 114, das Entnahmemodul 116, das geometrisch abgleichende Modul 118 und das Anprobemodul 120. Das System 200 kann auf einer beliebigen geeigneten Vorrichtung oder auf einer Kombination von Vorrichtungen implementiert sein. Bei einem Beispiel ist das System 200 auf einer Rechenvorrichtung (beispielsweise der Rechenvorrichtung 102 von 1) implementiert. Bei einem anderen Beispiel ist das System 200 auf mehr als einer Rechenvorrichtung implementiert, wie nachstehend noch detaillierter anhand 9 beschrieben wird.
-
Bei dem exemplarischen System 200 empfängt das IBVTON-System 104 das Referenzbild 106. Entsprechend einer oder mehreren Implementierungen wird das Referenzbild 106 zusammen mit einer Angabe einer Zielkleidung, mit der die in dem Referenzbild 106 abgebildete Person bekleidet werden soll, so beispielsweise der Zielkleidung 108, empfangen. Alternativ oder zusätzlich kann das IBVTON-System 104 eine Angabe der Zielkleidung im Anschluss an den Empfang des Referenzbildes 106 empfangen. Das Referenzbild 106 stellt ein zweidimensionales Bild dar, das eine Person und optional eine Person, die ein oder mehrere Kleidungsstücke trägt, abbildet. Die Zielkleidung 108 ist zudem ein zweidimensionales Bild, das wenigstens ein Zielkleidungsstück ohne eine es tragende Person abbildet, so beispielsweise in einem Vorschaubild für ein Kleidungsstück, das von beliebigen anderen Bildobjekten oder Artefakten, die auf einem Online-Marktplatz bereitgestellt werden, isoliert ist.
-
Beim Empfangen des Referenzbildes 106 ist das Darstellungsmodul 114 dafür konfiguriert, eine textilienunabhängige Personendarstellung 202 für die in dem Referenzbild 106 abgebildete Person zu generieren. Die textilienunabhängige Personendarstellung 202 stellt Information dar, die von dem IBVTON-System 104 dafür benutzt wird, die Zielkleidung zu verformen, um ein Bild der die formveränderte Zielkleidung 218 tragenden Person zu generieren, so beispielsweise das in 1 dargestellte synthetisierte Bild 110. Insbesondere beinhaltet die textilienunabhängige Personendarstellung 202 eine Posen-Heatmap 204, eine Körperform 206 sowie einen oder mehrere reservierte Bereiche 208 für eine in dem Referenzbild 106 abgebildete Person, die kollektiv einen Satz von Merkmalen darstellen, die als Vorbedingung zur Beschränkung des von dem IBVTON-System 104 durchgeführten Prozesses des Generierens des synthetisierten Bildes 110 genutzt werden.
-
3 zeigt eine exemplarische Implementierung 300 einer textilienunabhängigen Personendarstellung 202, die aus einem Referenzbild 106 durch das Darstellungsmodul 114 generiert wird. Die kleidungsunabhängige Personendarstellung 202 stellt Information dar, die von dem IBVTON-System 104 dafür benutzt wird, Zielkleidung zu verformen, um ein Bild der die formveränderte Zielkleidung 218 tragenden Person, so beispielsweise das in 1 dargestellte synthetisierte Bild 110, zu generieren. Insbesondere beinhaltet die textilienunabhängige Personendarstellung 202 eine Posen-Heatmap 204, eine Körperform 206 sowie einen oder mehrere reservierte Bereiche 208 für eine in dem Referenzbild 106 abgebildete Person, die kollektiv einen Satz von Merkmalen darstellen, der als Vorbedingung zur Beschränkung des von dem IBVTON-System 104 durchgeführten Prozesses des Generierens des synthetisierten Bildes 110 genutzt wird.
-
Die Posen-Heatmap 204 stellt Information dar, die eine Körperpose der in dem Referenzbild 106 abgebildeten Person beschreibt und die infolgedessen Auswirkungen auf die Verformung der Zielkleidung hat, die in dem Bild der die formveränderte Zielkleidung 218 tragenden Person dargestellt werden soll. Bei einigen Implementierungen generiert das Darstellungsmodul 114 die Posen-Heatmap 204 unter Nutzung eines bekannten Posenschätzers, so beispielsweise unter Nutzung des Posenschätzers, der beschrieben ist bei: „Realtime Multiperson 2D Pose Estimation Using Part Affinity Fields“ von Z. Cao, T. Simon, S.-E. Wei und Y. Sheikh (CVPR 2017). Die Posen-Heatmap 204 kann Koordinaten umfassen, die eine Anzahl von Schlüsselpunkten darstellen, die wiederum die Pose der in dem Referenzbild 106 abgebildeten Person darstellen. Bei einigen Implementierungen generiert das Darstellungsmodul 114 die Posen-Heatmap 204 unter Nutzung von 18 Schlüsselpunkten. Um deren räumliches Layout zu unterstützen, wird jeder Schlüsselpunkt auf eine Heatmap mit einer hxh-Pixel-Umgebung, die den Schlüsselpunkt umgibt, transformiert, wobei h eine beliebige geeignete Anzahl von Pixeln, so beispielsweise 11×11 Pixel, darstellt, die sonst mit Einsen und Nullen gefüllt sind. Jede Heatmap, die aus den Schlüsselpunkten generiert wird, wird zudem in einer x-Kanal-Posen-Heatmap gestapelt, die von dem Darstellungsmodul 114 als Posen-Heatmap 204 ausgegeben wird, wobei x der Anzahl von Schlüsselpunkten entspricht, die von dem Darstellungsmodul 114 beim Generieren der Posen-Heatmap 204 benutzt werden.
-
Die Körperform 206 stellt Information dar, die verschiedene Bereiche (beispielsweise Arme, Beine, Rumpf und dergleichen) des Körpers der in dem Referenzbild 106 abgebildeten Person beschreibt. Um die Körperform 206 zu generieren, ist das Darstellungsmodul 114 dafür konfiguriert, einen Human-Parser (human parser) zu implementieren, der eine Humansegmentierungskarte berechnet, in der verschiedene Bereiche verschiedene entsprechende Körperteile darstellen. Bei einigen Implementierungen implementiert das Darstellungsmodul 114 einen Human-Parser unter Nutzung bekannter Techniken. Das Darstellungsmodul 114 wandelt die Segmentierungskarte, die unter Nutzung des Human-Parsers hergeleitet worden ist, sodann in eine Einzelkanal-Binärmaske um, bei der „Einsen“ in der Binärmaske Bereiche des menschlichen Körpers (mit Ausnahme von Gesicht und Haar) angeben, während „Nullen“ in der Binärmaske Bereiche des Referenzbildes 106 darstellen, die keine Teile des menschlichen Körpers darstellen. Das Darstellungsmodul 114 nimmt sodann ein Downsampling der Binärmaske auf eine niedrigere Auflösung vor, was beim Vermeiden von Artefakten hilft, die sonst auftreten würden, wenn Abschnitte eines menschlichen Körpers so, wie sie durch die Körperform 206 und die Zielkleidung angegeben werden, nicht zueinander passen. Die einem Downsampling unterzogene Binärmaske wird sodann durch das Darstellungsmodul 114 als Körperform 206 ausgegeben.
-
Die reservierten Bereiche 208 stellen Information dar, die physische bzw. physikalische Attribute der in dem Referenzbild 106 abgebildeten Person darstellt, so beispielsweise Gesichtsattribute, Hautattribute, Haarattribute und dergleichen, wodurch das IBVTON-System 104 in die Lage versetzt wird, die Identität der in dem Referenzbild 106 abgebildeten Person beim Generieren des synthetisierten Bildes 110 zu erhalten. Um die reservierten Bereiche 208 zu generieren, implementiert das Darstellungsmodul 114 einen Human-Parser, so beispielsweise den Human-Parser, der zur Herleitung der Körperform 206 implementiert worden ist. Unter Nutzung des Human-Parsers extrahiert das Darstellungsmodul 114 RGB-Kanäle (Rot-Grün-Blau RGB) aus Gesichts-, Haut- und Haarbereichen der in dem Referenzbild 106 abgebildeten Person in Form von Merkmalskarten, die beim Generieren des Bildes der die formveränderte Zielkleidung 218 tragenden Person erhalten werden sollen.
-
Jedes von der Posen-Heatmap
204, der Körperform
206 und dem einen oder den mehreren reservierten Bereichen
208 sind Merkmalskarten, die benutzt werden können, um das Aussehen der in dem Referenzbild
106 abgebildeten Person unabhängig von der Kleidung, die die in dem Referenzbild
106 abgebildete Person trägt, so beispielsweise die in
1 dargestellte Kleidung
112, zu beschreiben. Das Darstellungsmodul
114 nimmt eine Größenanpassung der Merkmalskarten, die durch die Posen-Heatmap
204, die Körperform
206 und den einen oder die mehreren reservierten Bereiche
208 dargestellt werden, auf eine gemeinsame Auflösung vor und verkettet die Merkmalskarten, um die textilienunabhängige Personendarstellung
202 zu bilden. Mathematisch kann die textilienunabhängige Personendarstellung entsprechend Gleichung 1 dargestellt werden, wobei p die textilienunabhängige Personendarstellung bezeichnet, m eine Höhe der verketteten Merkmalskarten bezeichnet, n eine Breite der verketteten Merkmalskarten bezeichnet und k die Anzahl der Kanäle für die Merkmalskarten bezeichnet.
-
Die textilienunabhängige Personendarstellung 202 kann sodann von dem geometrisch abgleichenden Modul 118 benutzt werden, um ein formverändertes Bild der Zielkleidung auf eine Weise zu generieren, die die Körperform und die Pose der in dem Referenzbild 106 abgebildeten Person beibehält.
-
Wie in 2 dargestellt ist, kommuniziert das Darstellungsmodul 114 die textilienunabhängige Personendarstellung 202 an das geometrisch abgleichende Modul 118 zusammen mit der Zielkleidung 108. Das geometrisch abgleichende Modul 118 ist dafür konfiguriert, eine formveränderte Zielkleidung 210 zu generieren, die das Ergebnis der Formveränderung der Zieltextilie 108, die zu der textilienunabhängigen Personendarstellung 202 passen soll, darstellt. Damit das geometrisch abgleichende Modul 118 die visuell realistische formveränderte Zielkleidung 210 ausgibt, ist das IBVTON-System 104 dafür konfiguriert, das geometrisch abgleichende Modul 118 unter Nutzung eines Multiskalen-Patchadversativverlustes zu trainieren, der unter Nutzung von Multiskalen-Patches 212, die von dem Entnahmemodul 116 generiert werden, berechnet wird. Die Multiskalen-Patches 212 stellen eine Sammlung von verschiedenen Patchpaaren dar, wobei jedes Patchpaar einen Patch, der aus einem Bereich einer formveränderten Textilie 214 entnommen ist, und einen weiteren Patch, der aus demselben entsprechenden Bereich der formveränderten Basis-Textilie 216 entnommen ist, beinhaltet.
-
Entsprechend einer oder mehreren Implementierungen stellt die formveränderte Textilie 214 eine Version bzw. Instanz der formveränderten Zielkleidung 210 dar, die von dem geometrisch abgleichenden Modul 118 derart generiert wird, dass Information, die von dem geometrisch abgleichenden Modul 118 ausgegeben wird, anschließend von dem IBVTON-System 104 dafür benutzt werden kann, das geometrisch abgleichende Modul weiter zu trainieren. Entsprechend einer oder mehreren Implementierungen stellt die formveränderte Basis-Textilie 216 eine Basis-Darstellung der Person dar, die die formveränderte Zielkleidung 218, die von dem Anprobemodul 120 generiert worden ist, trägt, wie nachstehend noch detaillierter beschrieben wird. Auf diese Weise kann Information, die vom dem Anprobenodul 120 ausgegeben wird, von dem IBVTON-System 104 benutzt werden, um das geometrisch abgleichende Modul weiter zu trainieren. Das IBVTON-System 104 ist dafür konfiguriert, das geometrisch abgleichende Modul 118 unter Nutzung von Multiskalen-Patches 212 zu trainieren, die aus verschiedenen Paaren einer formveränderten Textilie 214 und einer formveränderten Basis-Textilie 216 entnommen sind. Um das geometrisch abgleichende Modul 118 anfänglich zu trainieren, empfängt das IBVTON-System 104 daher verschiedene Paare einer formveränderten Textilie 214 und einer formveränderten Basis-Textilie 216 von einem entfernten Ort, so beispielsweise von einer anderen Rechenvorrichtung, über ein Netzwerk 126, wie in 1 dargestellt ist.
-
Für jedes Paar aus einer formveränderten Textilie 214 und einer formveränderten Basis-Textilie 216 nimmt das Entnahmemodul 116 eine pseudozufällige Extraktion von Patchpaaren verschiedener Größen aus denselben entsprechenden Orten der jeweiligen formveränderten Textilie 214 und der formveränderten Basis-Textilie 216 vor. Jeder der Multiskalen-Patches 212 ist aus einem Bereich der formveränderten Textilie 214 oder der formveränderten Basis-Textilie 216 entnommen, der nur die Textilie beinhaltet (der beispielsweise keine Kante der abgebildeten Textilie oder keinen Abschnitt, der andere Artefakte, die nicht der Textilie entsprechen, beinhaltet, so beispielsweise Abschnitte einer Person, die in der formveränderten Basis-Textilie sonst dargestellt sind, Hintergrundabschnitte eines Bildes und dergleichen mehr). Die Multiskalen-Patches 212 werden sodann von dem IBVTON-System 104 benutzt, um das geometrisch abgleichende Modul 118 mit einem Multiskalen-Patchadversativverlust zu trainieren, um die formveränderte Zielkleidung 210 zu generieren, wie nachstehend noch detaillierter anhand 4 bis 6 beschrieben wird.
-
Das trainierte geometrisch abgleichende Modul 118 ist daher dafür konfiguriert, die formveränderte Zielkleidung 210 zu generieren, wenn die textilienunabhängige Personendarstellung 202 und die Zielkleidung 108 gegeben sind, und die formveränderte Zielkleidung 210 an das Anprobemodul 120 zu kommunizieren. Obwohl die formveränderte Zielkleidung 210 grob auf die Körperform 206 der in dem Referenzbild 106 abgebildeten Person ausgerichtet ist, stellt das Anprobemodul 120 eine Funktionalität des IBVTON-Systems 104 dafür bereit, die formveränderte Zielkleidung 210 zusammen mit der textilienunabhängigen Personendarstellung 202 zu verschmelzen, um ein synthetisiertes Bild auszugeben, so beispielsweise ein Bild einer Person, die die formveränderte Zielkleidung 218 trägt. Wenn die verkettete Eingabe der textilienunabhängigen Personendarstellung 202 und der formveränderten Zielkleidung 210 gegeben sind, gibt das Anprobemodul 120 gleichzeitig ein Personenbild wieder, sagt eine Kompositionsmaske vorher und verschmilzt das wiedergegebene Personenbild mit der formveränderten Zielkleidung 210 unter Nutzung der Kompositionsmaske, um die die formveränderte Zielkleidung 218 tragende Person auszugeben. Wie nachstehend noch detaillierter anhand 6 beschrieben wird, ist das IBVTON-System 104 dafür konfiguriert, das Anprobemodul 120 dafür zu trainieren, die Abweichung zwischen dem Bild der Person, die die formveränderte Zielkleidung 218 trägt, und der formveränderten Basis-Textilie 216 entsprechend der formveränderten Zielkleidung 210 zu minimieren.
-
Nach erfolgter Betrachtung eines exemplarischen Systems, das zum Generieren eines synthetisierten Bildes einer Zielkleidung tragenden Person nutzbar ist, werden nunmehr exemplarische Implementierungen des Generierens eines synthetisierten Bildes einer Zielkleidung tragenden Person entsprechend Aspekten der vorliegenden Offenbarung betrachtet.
-
4 zeigt eine exemplarische Implementierung 400 des geometrisch abgleichenden Moduls 118 des IBVTON-Systems 104 von 1 beim Generieren der formveränderten Zielkleidung 210 entsprechend den hier beschriebenen Techniken. Zum Generieren der formveränderten Zielkleidung 210 empfängt das geometrisch abgleichende Modul 118 eine textilienunabhängige Personendarstellung 202 und ein zweidimensionales Bild der Zielkleidung 402, mit der die durch die textilienunabhängige Personendarstellung 202 dargestellte Person bekleidet werden soll. Auf diese Weise stellt die Zielkleidung 402 eine Version bzw. Instanz der Zielkleidung 108, wie in 1 dargestellt ist, dar.
-
Das geometrisch abgleichende Modul
118 beinhaltet zwei faltungstechnische neuronale Netzwerke
404 und
406, die dafür konfiguriert sind, Merkmale aus der jeweiligen textilienunabhängigen Personendarstellung
202 und der Zielkleidung
402 zu extrahieren. Insbesondere stellen die faltungstechnischen neuronalen Netzwerke
404 und
406 eine Funktionalität bereit, um ein Eingabebild (beispielsweise die textilienunabhängige Personendarstellung
202 oder die Zielkleidung
402) zu empfangen und eine Merkmalskarte auszugeben, die auf hoher Ebene gegebene bzw. abstrakte Merkmale des empfangenen Eingabebildes beschreibt. Mathematisch kann die Merkmalskarte, die von jedem der faltungstechnischen neuronalen Netzwerke
404 und
406 ausgegeben wird, wie in Gleichung 2 dargestellt werden, wobei h×w ein dichtes räumliches Gitter von d-dimensionalen lokalen Deskriptoren für das jeweilige Eingabebild darstellt:
-
Bei einigen Implementierungen stellen die faltungstechnischen neuronalen Netzwerke 404 und 406 jeweils ein vortrainiertes faltungstechnisches neuronales VGG-16-Netzwerk dar. Hierbei sind die faltungstechnischen neuronalen Netzwerke 404 und 406 in einer siamesischen Konfiguration derart angeordnet, dass die eingegebene textilienunabhängige Personendarstellung 202 und die Zielkleidung 402 durch zwei identische Netzwerke, die Parameter teilen, geleitet werden. Die Bildmerkmale, die von den faltungstechnischen neuronalen Netzwerken 404 und 406 erzeugt werden, werden sodann an die Korrelationsabgleichsschicht 408 weitergeleitet, die eine Funktionalität darstellt, um die Merkmale, die von den faltungstechnischen neuronalen Netzwerken 404 und 406 ausgegeben werden, zu einem Einzeltensor zur Eingabe in das Regressionsnetzwerk 410 zu kombinieren.
-
Beim Generieren des Einzeltensors identifiziert die Korrelationsabgleichsschicht
408 zu Beginn alle Paare von Ähnlichkeiten zwischen Deskriptoren, die von den faltungstechnischen neuronalen Netzwerken
404 und
406 ausgegeben werden. Die Korrelationsabgleichsschicht
408 berechnet sodann Ähnlichkeitskennwerte aus den Paaren von Ähnlichkeiten und normiert die Ähnlichkeitskennwerte derart, dass zweideutige Abgleichstreffer sehr schwach gewichtet werden. Mathematisch ausgedrückt bedeutet dies, dass bei einer exemplarischen Implementierung, bei der die Ausgaben der faltungstechnischen neuronalen Netzwerke
404 und
406 L2-normierte Dichtemerkmalskarten f
A, f
B ∈ ℝ
h×w×d sind, eine Korrelationskarte, die von der Korrelationsschicht ausgegeben wird, als c
AB E ℝ
h×w×(h×w) dargestellt werden kann, die an jeder Position das Skalarprodukt eines Paares von individuellen Deskriptoren f
A ∈ f
a und f
B ∈ f
b enthält, wie in Gleichung 3 dargestellt ist.
-
In Gleichung 3 bezeichnen (i,j) und (ik,jk) einzelne Merkmalspositionen in den h×w-Dichtemerkmalskarten, während k = h(jk - 1) + ik eine Hilfsindexierungsvariable für (ik, jk) darstellt. Um zweideutige Abgleichstreffer unter den paarweise gegebenen Ähnlichkeitskennwerten zu entfernen, wendet das geometrisch abgleichende Modul 118 eine kanalbasierte Normierung der Korrelationskarte auf jeden räumlichen Ort an, um die endgültige Versuchsentsprechungskarte fAB zu erzeugen. Diese kanalbasierte Normierung nimmt zunächst ein Nullen negativer Korrelationen vor, worauf ein L2-Normieren folgt.
-
Der Einzeltensor, der von der Korrelationsabgleichsschicht 408 ausgegeben wird, wird sodann an das Regressionsnetzwerk 410 kommuniziert. Das Regressionsnetzwerk 410 stellt eine Funktionalität des geometrisch abgleichenden Moduls 118 dar, um Parameter der räumlichen Transformation für die textilienunabhängige Personendarstellung 202 und die Zielkleidung 402 beim Generieren der formveränderten Zielkleidung 210 zu schätzen. Bei einigen Implementierungen werden diese Parameter der räumlichen Transformation aus der Liste von Versuchsentsprechungen geschätzt, die in dem Einzeltensor, der von der Korrelationsabgleichsschicht 408 ausgegeben wird, beinhaltet sind. Parameter der räumlichen Transformation werden beginnend mit einem neuronalen Netzwerk mit zwei gestapelten Blöcken von faltungstechnischen Schichten geschätzt, gefolgt von einer Batch-Normierung der ReLU-Nichtlinearität (Rectified Linear Unit ReLU), worauf man unter Nutzung einer vollständig verbundenen (fully-connected) Schicht, die eine Regression an den Parametern der räumlichen Transformation vornimmt, zum Ende kommt. Auf diese Weise ist das Regressionsnetzwerk 410 dafür konfiguriert, räumliche Transformationen sowohl für die textilienunabhängige Personendarstellung 202 wie auch die Zielkleidung 402 unter Nutzung eines faltungstechnischen Regressionsnetzwerkes zu schätzen. Alternativ oder zusätzlich kann das Regressionsnetzwerk 410 zur Nutzung vollständig verbundener Schichten konfiguriert sein.
-
Das Regressionsnetzwerk 410 leitet die Parameter der räumlichen Transformation sodann an ein formveränderndes TPS-Modul 412 (Thin Plate Spine bzw. Spline TPS) des geometrisch abgleichenden Moduls 118 weiter. Das formverändernde TPS-Modul 412 nutzt die räumlichen Parameter, um das zweidimensionale Bild der Zielkleidung 402 der Form nach zu verändern und die formveränderte Zielkleidung 210 auszugeben. Das formverändernde TPS-Modul 412 schätzt zunächst eine affine Transformation zum Generieren der formveränderten Zielkleidung 210. Bei einigen Implementierungen stellt die affine Transformation eine lineare Transformation mit n Freiheitsgraden dar, die eine Translation, eine Rotation, eine nichtisotrope Skalierung und eine Scherung modellieren kann, wobei n eine beliebige ganze Zahl (beispielsweise 6) bezeichnet.
-
Die geschätzte affine Transformation wird sodann von dem formverändernden TPS-Modul 412 benutzt, um die textilienunabhängige Personendarstellung 202 und die Zielkleidung 402 unter Nutzung bekannter Techniken bildlich abzustimmen, und zwar beispielsweise mittels einer Bildresamplingschicht. Die abgestimmten Bilder der Kleidung der textilienunabhängigen Personendarstellung 202 und der Zielkleidung 402 werden sodann von dem formverändernden TPS-Modul 412 durch ein zweites geometrisch schätzendes Netzwerk zugeleitet, das dafür konfiguriert ist, die 18 Parameter einer Thin-Plate-Spline-Transformation zu schätzen. Das formverändernde TPS-Modul 412 gibt schließlich eine Schätzung der geometrischen Transformation aus, die dafür erforderlich ist, die Zielkleidung 402 zu der formveränderten Zielkleidung 210 der Form nach zu verändern, indem die beiden Transformationen zu einem Thin-Plate-Spline zusammengefügt werden.
-
Mathematisch kann die Ausgabe der formveränderten Zielkleidung
210 gemäß Beschreibung in
4 dargestellt werden, wobei c die Zielkleidung bezeichnet, ĉ die formveränderte Zielkleidung
210 bezeichnet, θ die Parameter der räumlichen Transformation, die von dem Regressionsnetzwerk
410 ausgegeben werden, bezeichnet und T den Thin-Plate-Spline, der von dem formverändernden TPS-Modul
412 ausgegeben wird, bezeichnet.
-
Um die Qualität der formveränderten Zielkleidung 210, die von dem geometrisch abgleichenden Modul 118 ausgegeben wird, zu verbessern, ist das IBVTON-System 104 dafür konfiguriert, die Pipeline des geometrisch abgleichenden Moduls 118 auf End-to-End-Basis unter Nutzung des L1-Verlustes 414 zu trainieren. Der L1-Verlust 414 bezeichnet einen pixelbasierten Verlust zwischen der formveränderten Zielkleidung 210 . und der Basis für die formveränderte Zielkleidung 210, so beispielsweise die formveränderte Basis-Textilie 216, wie in 2 gezeigt ist. Mathematisch kann der L1-Verlust 414 wie in Gleichung 5 beschrieben werden, wobei p die textilienunabhängige Personendarstellung bezeichnet und ct die formveränderte Basis-Textilie 216 bezeichnet.
-
Zusätzlich zum Trainieren des geometrisch abgleichenden Modells 118 unter Nutzung eines pixelbasierten L1-Verlustes ist das IBVTON-System 104 dafür konfiguriert, das geometrisch abgleichende Modell 118 in einer überwachten Lernumgebung unter Nutzung eines Multiskalen-Patchadversativverlustes (Multi-Scale Patch Adversarial MSPA) 416 zu trainieren, der auf Grundlage der Multiskalen-Patches 212, die von dem Entnahmemodul 116 generiert werden, bestimmt wird, wie nachstehend noch detaillierter anhand 6 beschrieben wird.
-
5 zeigt eine exemplarische Implementierung 500 des Anprobemoduls 120 des IBVTON-Systems 104 von 1 beim Generieren eines synthetisierten Bildes, das eine formveränderte Zielkleidung 218 tragende Person abbildet, entsprechend den hier beschriebenen Techniken. Zum Generieren des synthetisierten Bildes der die formveränderte Zielkleidung 218 tragenden Person empfängt das Anprobemodul 120 die textilienunabhängige Personendarstellung 202, die von dem Darstellungsmodul 114 generiert wird, und die formveränderte Zielkleidung 210, die von dem geometrisch abgleichenden Modul 118 generiert wird.
-
Das Anprobemodul 120 leitet die verkettete Eingabe der textilienunabhängigen Personendarstellung 202 und der formveränderten Zielkleidung 210 an ein Encoder-Decoder-Netzwerk 502 weiter und gibt eine vorhergesagte Kompositionsmaske 504 wie auch ein Personenbild 506 aus. Wie hier beschrieben wird, stellt die Kompositionsmaske 504 eine Segmentierungsmaske der formveränderten Zielkleidung 210 dar, die gegen die Personendarstellung 202 abgegrenzt werden kann, die allen umgebenden Kontext für die mit der formveränderten Zielkleidung 210 zu bekleidende Person im Unterschied zu der formveränderten Zielkleidung 210 selbst codiert.
-
Bei einigen Ausführungsformen kann das Encoder-Decoder-Netzwerk 502 als faltungstechnisches neuronales Netzwerk implementiert werden, so beispielsweise unter Nutzung der UNnet-Framework-Architektur, implementiert werden. Bei einer derartigen Implementierung beinhaltet das Encoder-Decoder-Netzwerk einen Kontraktionspfad und einen Expansionspfad. Der Kontraktionspfad folgt der Architektur eines faltungstechnischen Netzwerkes und stellt eine Funktionalität dar, um mehrere Faltungen wiederholt anzuwenden, auf die jeweils eine rektifizierende lineare Einheit (ReLU) und ein Downsampling folgen, um die Anzahl von Merkmalskanälen, die in einer Ausgabemerkmalskarte beinhaltet sind, zu erhöhen. Der Expansionspfad des Encoder-Decoder-Netzwerkes 502 stellt ein Upsampling der Merkmalskarte, die von dem Kontraktionspfad ausgegeben wird, dar, gefolgt von einer Durchführung von Aufwärtsfaltungen (up-convolutions), um die Anzahl von Merkmalskanälen zu verringern und die Merkmalskarte zur Berücksichtigung eines Verlustes zu beschneiden (crop). Die finale Schicht des Encoder-Decoder-Netzwerkes 502 kann dafür benutzt werden, merkmalsresultierende Merkmalsvektoren auf eine gewünschte Anzahl von Bildklassenetiketten (beispielsweise Klassifizierungsetiketten, die jedem Pixel der vorhergesagten Kompositionsmaske 504 und des Personenbildes 506 zugewiesen werden) abzubilden.
-
Die Kompositionsmaske
504 kann von dem Anprobemodul
120 dafür genutzt werden, das synthetisierte Bild
110 zu generieren, das das Personenbild
506 und die formveränderte Zielkleidung
210 beinhaltet, die als synthetisiertes Endergebnis verschmolzen sind, das die die formveränderte Zielkleidung
218 tragende Person darstellt, wie anhand von
2 beschrieben worden ist. Mathematisch bedeutet dies, dass das synthetisierte Bild
110, das die die formveränderte Zielkleidung
218 tragende Person beinhaltet, in Gleichung 5 als I
o dargestellt wird, wobei I
r das Personenbild
506 bezeichnet, M die Kompositionsmaske
504 bezeichnet und ⊙ eine elementbasierte Matrixmultiplikation bezeichnet.
-
Um das Anprobemodul
120 zu trainieren, ist das IBVTON-System
104 dafür konfiguriert, sowohl den L1-Verlust 414 wie auch den perzeptiven Verlust
510 zu nutzen, um die Abweichung zwischen dem synthetisierten Bild
110 und dem Basis-Bild
512 zu minimieren. Bei einigen Implementierungen kann der perzeptive Verlust
510 wie in Gleichung 6 als L
VGG definiert sein.
-
In Gleichung 6 bezeichnet ϕ
i(I) die Merkmalskarte eines Bildes / der i-ten Schicht in dem visuellen Perzeptionsnetzwerk ϕ, das als faltungstechnisches Deep-Netzwerk zur umfassenden Bilderkennung konfiguriert sein kann. In Gleichung 6 bezeichnet I
t das Basis-Bild
512 für das synthetisierte Bild
110, dargestellt durch I
o. Schichten des faltungstechnischen Netzwerkes i ≥ 1 stellen jeweils „conv1_2“, „conv2_2“, „conv3_2“, „conv4_2“ und „conv5_2“ dar. Jede faltungstechnische Schicht wird benutzt, um eine Merkmalsdarstellung zu erlernen, die Contentinformation eines Eingabebildes codiert. Diese codierte Darstellung kann von dem IBVTON-System
104 genutzt werden, um ein Bild, dessen Form beim Generieren einer formveränderten Textilie verändert werden soll, besser zu verstehen. Um möglichst viele Eigenschaften der Zielkleidung zu bewahren, wird die Kompositionsmaske M einem Biasing unterworfen, um die formveränderte Kleidung auszuwählen, indem eine L1-Regularisierung ||1 - M||
1 auf M angewendet wird. Die sich ergebende Verlustfunktion für das Anprobemodul
120 ist in Gleichung 7 als L
TOM dargestellt.
-
Nach erfolgter Betrachtung eines Anprobemoduls, das dafür nutzbar ist, ein synthetisiertes Bild für eine in einem Referenzbild abgebildete Person und ein Zielkleidungsstück zu generieren, wird nunmehr die Bestimmung des Multiskalen-Patchadversativverlustes zum Trainieren des geometrisch abgleichenden Moduls entsprechend den hier beschriebenen Techniken betrachtet.
-
6 zeigt eine exemplarische Implementierung 600 des IBVTON-Systems 104 beim Bestimmen eines Multiskalen-Patchadversativverlustes zum Trainieren des geometrisch abgleichenden Moduls 118 entsprechend den hier beschriebenen Techniken. Bei dem dargestellten Beispiel empfängt das geometrisch abgleichende Modul 118 als Eingabe die Personendarstellung 202 und eine In-Shop-Textilie 602 und gibt eine formveränderte Textilie 604 für die In-Shop-Textilie aus. Die In-Shop-Textilie 602 stellt ein Bild der von der Person in dem Referenzbild 106 getragenen Kleidung 112 in einer Anzeige dar, die unabhängig davon ist, dass diese von der Person getragen wird.
-
Sind die textilienunabhängige Personendarstellung 202 und die In-Shop-Textilie 602 als Eingaben gegeben, so ist das geometrisch abgleichende Modul 118 dafür konfiguriert, die formveränderte Textilie 604 auf eine Weise auszugeben, die zu derjenigen ähnlich ist, die zum Generieren des Bildes der die formveränderte Zielkleidung 218 tragenden Person benutzt wird, wie anhand von 2 beschrieben worden ist. Das Entnahmemodul 116 nutzt sodann die formveränderte Textilie 604 als Eingabe, um Multiskalen-Patches 606 zur Nutzung beim Bestimmen des Multiskalen-Patchadversativverlustes 416 zu generieren.
-
Im Ergebnis empfängt das Anprobemodul 120 das Referenzbild 106, aus dem die textilienunabhängige Personendarstellung 202 hergeleitet worden ist, und eine formveränderte Basis-Maske 608 für die formveränderte Textilie 604, so beispielsweise ein Basis-Bild, das von dem Anprobemodul 120, wie anhand von 5 beschrieben worden ist, generiert worden ist. Das Anprobemodul 120 generiert eine formveränderte Basis-Textilie 610, indem das Referenzbild 106 und die formveränderte Basis-Maske 608 unter Nutzung des Maskenkompositionsmoduls 508 des Anprobemoduls 120 verarbeitet werden. Das Entnahmemodul 116 nutzt die formveränderte Basis-Textilie 610 sodann als Eingabe zum Generieren von Multiskalen-Patches 612 zur Nutzung beim Bestimmen des Multiskalen-Patchadversativverlustes 416.
-
Das Entnahmemodul
116 ist dafür konfiguriert, Multiskalen-Patches
606 und
612 aus der jeweiligen formveränderten Textilie
604 und der formveränderten Basis-Textilie
610 an denselben entsprechenden Orten in Bereichen zu entnehmen, die nur Textilienabschnitte der formveränderten Textilie
604 oder der formveränderten Basis-Textilie
610 beinhalten. Um den Multiskalen-Patchadversativverlust
416 zu bestimmen, ist das Entnahmemodul
116 als Lokalpatch-Diskriminator konfiguriert, der ein Paar von beschnittenen Patches aus denselben entsprechenden Bereichen der formveränderten Textilie
604 und der formveränderten Basis-Textilie
610 als Positivbeispiel und ein Paar von Patches aus verschiedenen bzw. anderen Bereichen als Negativbeispiel erkennt. In mathematischer Darstellung bedeutet dies, dass der Multiskalen-Patchadversativverlust
416 durch L
ms-adv in Gleichung 8 dargestellt wird.
-
In Gleichung 8 ist ein Positivbeispiel, das von dem Entnahmemodul 116 identifiziert wird, mit (Dpatch(.) = 1) bezeichnet, während ein Negativtrainingsbeispiel mit (Dpatch(.) = 0) bezeichnet ist. Die Multiskalen-Patches 606 und 612 können als p1i(ŵc, si) und p2i(ŵc, si) der Größe si × si dargestellt werden, wobei j einer Anzahl von beschnittenen Patches der Größe si × si entspricht. Auf diese Weise kann der Multiskalen-Patchadversativverlust 416 von dem IBVTON-System 104 genutzt werden, um das geometrisch abgleichende Modul 118 beim Ausgeben der formveränderten Zielkleidung 210 zu trainieren.
-
Nach erfolgter Betrachtung exemplarischer Details des Generierens eines synthetisierten Bildes einer formveränderte Zielkleidung tragenden Person werden nunmehr exemplarische Prozeduren zum Darstellen von Aspekten der Techniken betrachtet.
-
Exemplarische Prozeduren
-
Die nachfolgende Diskussion beschreibt Techniken, die unter Nutzung der vorher beschriebenen Systeme und Vorrichtungen implementiert werden können. Aspekte einer jeden der Prozeduren können in Hardware, Firmware, Software oder einer Kombination hieraus implementiert sein. Die Prozeduren sind als Satz von Blöcken gezeigt, die Operationen spezifizieren, die von einer oder mehreren Vorrichtungen durchgeführt werden und die nicht unbedingt auf diejenigen Reihenfolgen, die zum Durchführen der Operationen durch die jeweiligen Blöcke gezeigt sind, beschränkt sind. In Abschnitten der nachfolgenden Diskussion wird auf 1 bis 6 verwiesen.
-
7 zeigt eine Prozedur 700 bei einer exemplarischen Implementierung des Generierens eines synthetisierten Bildes, das eine Person abbildet, die ein formverändertes Bild einer Zielkleidung trägt, unter Nutzung der hier beschriebenen Techniken. Es wird ein Referenzbild, das eine ein Kleidungsstück tragende Person abbildet, empfangen (Block 702). Das Darstellungsmodul 114 des IBVTON-Systems 104 empfängt beispielsweise das Referenzbild 106, das eine die Kleidung 112 tragende Person abbildet. Zudem wird ein Bild der Zielkleidung, mit der die Person bekleidet werden soll, empfangen. Das Darstellungsmodul 114 empfängt beispielsweise die Zielkleidung 108. Sowohl das Referenzbild 106 wie auch die Zielkleidung 108 stellen zweidimensionale Bilder dar. Bei einigen Implementierungen kann das Referenzbild 106 von einem Nutzer der Rechenvorrichtung, der das IBVTON-System 104 implementiert, empfangen werden, und es kann die Zielkleidung 108 von einem Online-Marktplatz empfangen werden.
-
Es wird sodann ein formverändertes Bild der Zielkleidung unter Nutzung eines geometrisch abgleichenden Moduls generiert, das mit einem Multiskalen-Patchadversativverlust trainiert ist (Block 706). Das geometrisch abgleichende Modul 118 des IBVTON-Systems 104 bezieht beispielsweise eine textilienunabhängige Personendarstellung 202 für die in dem Referenzbild 106 abgebildete Person und nutzt die textilienunabhängige Personendarstellung 202 zum Generieren einer formveränderten Zielkleidung 210 durch Abbilden der Zielkleidung 108 auf die textilienunabhängige Personendarstellung 202. Bei einigen Implementierungen wird die textilienunabhängige Personendarstellung 202 von dem Darstellungsmodul 114 generiert und an das geometrisch abgleichende Modul 118 kommuniziert. Das geometrisch abgleichende Modul 118 ist dafür konfiguriert, die formveränderte Zielkleidung 210 zu generieren, indem es unter Nutzung eines Multiskalen-Patchadversativverlustes 416 wie auch eines L1-Verlustes 414 trainiert wird, um eine Thin-Plate-Spline-Transformation zu konfigurieren, die die Zielkleidung 108 so, dass diese zu der textilienunabhängigen Personendarstellung 202 passt, der Form nach verändert. Der Multiskalen-Patchadversativverlust 416 kann unter Nutzung von Multiskalen-Patches 214, die von dem Entnahmemodul 116 des IBVTON-Systems 104 generiert werden, bestimmt werden, wie beispielsweise in dem Ablauf von 8 dargestellt ist.
-
Das formveränderte Bild der Zielkleidung wird sodann auf die Person in dem Referenzbild abgestimmt (Block 708). Das Anprobemodul 120 des IBVTON-Systems 104 stimmt die formveränderte Zielkleidung 210 beispielsweise auf die textilienunabhängige Personendarstellung 202 ab und gibt ein Bild einer die formveränderte Zielkleidung 218 tragenden Person aus, das ein synthetisiertes Bild 110 ist, das von dem IBVTON-System 104 ausgegeben wird. Zu diesem Zweck generiert das Anprobemodul 120 eine vorhergesagte Kompositionsmaske 504 wie auch ein Personenbild 506, indem die textilienunabhängige Personendarstellung 202 und die formveränderte Zielkleidung 206 durch ein Encoder-Decoder-Netzwerk geleitet werden. Das Anprobemodul 120 implementiert sodann ein Maskenkompositionsmodul 508, um das synthetisierte Bild zu generieren, indem das Personenbild 506 zusammen mit der formveränderten Zielkleidung 210 unter Nutzung von Parametern, die von der Kompositionsmaske 504 spezifiziert werden, verschmolzen wird. Ein synthetisiertes Bild, das die das formveränderte Bild der Zielkleidung anstatt des Kleidungsstücks tragende Person abbildet, wird sodann ausgegeben (Block 710). Das Wiedergabemodul 122 des IBVTON-Systems 104 gibt beispielsweise eine Anzeige des synthetisierten Bildes 110 aus, das eine die formveränderte Zielkleidung 218 tragende Person abbildet.
-
8 zeigt eine Prozedur 800 bei einer exemplarischen Implementierung des Trainierens eines geometrisch abgleichenden Moduls zum Ausgeben einer formveränderten Textilie für ein Zielkleidungsstück unter Nutzung eines Multiskalen-Patchadversativverlustes entsprechend den hier beschriebenen Techniken. Es werden mehrere Bildpaare werden, wobei jedes Bildpaar ein Referenzbild, das eine ein Kleidungsstück tragende Person abbildet, und ein Produktbild, das das Kleidungsstück ohne die es tragende Person abbildet, beinhaltet (Block 802). Das Darstellungsmodul 114 des IBVTON-Systems 104 empfängt beispielsweise das Referenzbild 106, das die die Kleidung 112 tragende Person abbildet. Ein Bild der Zielkleidung, mit der die Person bekleidet werden soll, wird ebenfalls empfangen. Das Darstellungsmodul 114 empfängt beispielsweise die Zielkleidung 108. Sowohl das Referenzbild 106 wie auch die Zielkleidung 108 stellen zweidimensionale Bilder dar. Bei einigen Implementierungen kann das Referenzbild 106 von einem Nutzer der Rechenvorrichtung, die das IBVTON-System 104 implementiert, empfangen werden, und es kann die Zielkleidung 108 von einem Online-Marktplatz empfangen werden.
-
Sodann wird eines der Bildpaare ausgewählt (Block 804). Das Darstellungsmodul 114 wählt beispielsweise ein Bildpaar aus, das das Referenzbild 106 und die Zielkleidung 108 umfasst. Für das ausgewählte Bildpaar wird eine kleidungsunabhängige Personendarstellung aus dem Referenzbild hergeleitet (Block 806). Das Darstellungsmodul 114 generiert beispielsweise eine textilienunabhängige Personendarstellung 202, die eine Posen-Heatmap 204 zur Beschreibung einer Körperpose der in dem Referenzbild 106 abgebildeten Person, eine Körperform 206 zur Definition einer Körperform der in dem Referenzbild 106 abgebildeten Person und reservierte Bereiche 208, die Gesichts-, Haar- und Hautbereichen der in dem Referenzbild 106 abgebildeten Person entsprechen, beinhaltet.
-
Sodann wird ein formveränderte Textilie generiert, indem das Produktbild auf die kleidungsunabhängige Personendarstellung (Block 808) abgebildet wird. Das geometrisch abgleichende Modul 118 des IBVTON-Systems 104 bezieht beispielsweise eine textilienunabhängige Personendarstellung 202 für die in dem Referenzbild 106 abgebildete Person und nutzt die textilienunabhängige Personendarstellung 202 zum Generieren der formveränderten Zielkleidung 210 durch Abbilden der Zielkleidung 108 auf die textilienunabhängige Personendarstellung 202. Sodann wird eine formveränderte Basis-Textilie für das Kleidungsstück bestimmt (Block 810). Bei einigen Implementierungen wird die formveränderte Basis-Textilie für das IBVTON-System 104 als ein Bild aus einem Paar von Produktbildern bereitgestellt, so beispielsweise als Bild eines isolierten Kleidungsobjektes und als Bild eines das Kleidungsobjekt tragenden Models, wobei das Bild des das Kleidungsobjekt tragenden Models die formveränderte Basis-Textilie für das Bild des isolierten Kleidungsobjektes darstellt.
-
Mehrere Paare von Patches werden sodann aus denselben entsprechenden Orten in der formveränderten Textilie und der formveränderten Basis-Textilie entnommen (Block 812). Das Entnahmemodul 116 des IBVTON-Systems 104 generiert beispielsweise Multiskalen-Patches 606 aus der formveränderten Textilie 604 und generiert Multiskalen-Patches 612 aus der formveränderten Basis-Textilie 610. Jeder der Multiskalen-Patches 606 weist einen entsprechenden Patch in den Multiskalen-Patches 612 auf, die Entnahmen aus vollständigen Textilienbereichen bzw. vollständig textilen Bereichen der jeweiligen formveränderten Textilie 604 und der formveränderten Basis-Textilie 610 darstellen. Orte, an denen das Entnahmemodul 106 die Multiskalen-Patches 212 entnimmt, werden auf pseudozufällige Weise identifiziert und miteinander verglichen, um zu bestimmen, ob die Patches dieselbe lokale Textur teilen und infolgedessen denselben Bereichen der entnommenen Textilien entsprechen. Das IBVTON-System 104 ist dafür konfiguriert, diesen Prozess des Entnehmens von Multiskalen-Patches 202 für verschiedene der mehreren Bildpaare zu wiederholen, was dadurch angegeben ist, dass der Pfeil zu Block 804 zurückkehrt.
-
Unter Nutzung der Multiskalen-Patches wird das geometrisch abgleichende Modul darauf trainiert, eine formveränderte Textilie, wenn ein Zielkleidungstück gegeben ist, unter Nutzung des Multiskalen-Patchadversativverlustes, der unter Nutzung wenigstens einiger der Patches berechnet wird, auszugeben (Block 814). Das IBVTON-System 104 trainiert das geometrisch abgleichende Modul 118 unter Nutzung der Multiskalen-Patches 212 durch Bereitstellen von Paaren von Patches aus denselben entsprechenden Bereichen, die dieselbe lokale Textur teilen, als Positivtrainingsbeispiele und Bereitstellen von Paaren von Patches aus verschiedenen bzw. anderen Bereichen oder ohne geteilte lokale Texturen als Negativtrainingsbeispiele. Zusätzlich zum Trainieren des geometrisch abgleichenden Moduls 118 unter Nutzung eines Multiskalen-Patchadversativverlustes 416 kann das IBVTON-System 104 das geometrisch abgleichende Modul 118 unter Nutzung des L1-Verlustes 414 trainieren. Auf diese Weise wird das geometrisch abgleichende Modul 118 dafür trainiert, visuell realistische Bilder der formveränderten Zielkleidung auszugeben, die grob auf die textilienunabhängige Personendarstellung 202 abgestimmt ist, damit im Anschluss eine Verarbeitung durch das Anprobemodul 120 erfolgen kann, um ein synthetisiertes Bild 110 zu generieren, das eine die formveränderte Zielkleidung 218 tragende Person abbildet.
-
Nach erfolgter Beschreibung exemplarischer Prozeduren entsprechend einer oder mehreren Implementierungen werden nunmehr ein exemplarisches System und eine exemplarische Vorrichtung betrachtet, die zum Implementieren der verschiedenen hier beschriebenen Techniken eingesetzt werden können.
-
Exemplarisches System und exemplarische Vorrichtung
-
9 zeigt bei 900 allgemein ein exemplarisches System, das eine exemplarische Rechenvorrichtung 902 beinhaltet, die ein oder mehrere Rechensysteme und/oder eine oder mehrere Vorrichtungen darstellt, die die hier beschriebenen verschiedenen Techniken implementieren können. Dies ist durch Einbeziehung des IBVTON-Systems 104 (Image-Based Virtual Try-On IBVTON) dargestellt. Die Rechenvorrichtung 902 kann beispielsweise ein Server eines Dienstanbieters, eine Vorrichtung, die einem Client zugeordnet ist (beispielsweise eine Clientvorrichtung), ein On-Chip-System und/oder eine beliebige andere geeignete Rechenvorrichtung oder ein solches Rechensystem sein.
-
Die exemplarische Rechenvorrichtung 902 beinhaltet, wie dargestellt ist, ein Verarbeitungssystem 904, ein oder mehrere computerlesbare Medien 906 und eine oder mehrere I/O-Schnittstellen 908, die kommunikationstechnisch miteinander gekoppelt sind. Obwohl dies nicht gezeigt ist, kann die Rechenvorrichtung 902 des Weiteren einen Systembus oder ein anderes Daten- und Befehlsübertragungssystem beinhalten, das die verschiedenen Komponenten miteinander koppelt. Ein Systembus kann eine beliebige Busstruktur oder eine Kombination aus verschiedenen Busstrukturen beinhalten, so beispielsweise einen Speicher- bzw. Memorybus oder einen Speicher- bzw. Memorycontroller, einen Peripheriebus, einen universellen seriellen Bus und/oder einen Prozessor- oder Lokalbus, der eine Vielzahl von Busarchitekturen einsetzt. Eine Vielzahl von weiteren Beispielen, so beispielsweise Steuer- bzw. Regel- und Datenleitungen, ist ebenfalls einbezogen.
-
Das Verarbeitungssystem 904 stellt eine Funktionalität zur Durchführung eines oder mehrerer Vorgänge unter Nutzung von Hardware dar. Entsprechend ist das Verarbeitungssystem 904 derart dargestellt, dass es Hardwareelemente 910 beinhaltet, die als Prozessoren, funktionelle Blöcke und dergleichen mehr konfiguriert sein können. Dies kann eine Implementierung in Hardware als anwendungsspezifische integrierte Schaltung oder als andere Logikvorrichtung, die unter Nutzung eines oder mehrerer Halbleiter gebildet ist, beinhalten. Die Hardwareelemente 910 sind nicht durch die Materialien, aus denen sie gebildet sind, oder durch die Verarbeitungsmechanismen, die zum Einsatz kommen, beschränkt. Die Prozessoren können beispielsweise aus einem Halbleiter / Halbleitern und/oder Transistoren (beispielsweise elektronischen integrierten Schaltungen (ICs)) bestehen. In diesem Zusammenhang können prozessorseitig ausführbare Anweisungen elektronisch ausführbare Anweisungen sein.
-
Die computerlesbaren Speichermedien 906 sind derart dargestellt, dass sie einen Memory/Speicher 912 beinhalten. Der Memory/Speicher 912 bietet eine Memory-/Speicherkapazität, die einem oder mehreren computerlesbaren Medien zugeordnet ist. Die Memory-/Speicherkomponente 912 kann flüchtige Medien (so beispielsweise einen Speicher mit wahlfreiem Zugriff (RAM)) und/oder nichtflüchtige Medien (so beispielsweise einen Nur-Lese-Speicher (ROM), einen Flash-Speicher, optische Platten, magnetische Platten und dergleichen mehr) beinhalten. Die Memory-/Speicherkomponente 912 kann feste Medien (beispielsweise RAM, ROM, ein Festplattenlaufwerk und dergleichen mehr) wie auch entfernbare Medien (beispielsweise einen Flash-Speicher, ein entfernbares Festplattenlaufwerk, eine optische Platte und dergleichen mehr) beinhalten. Die computerlesbaren Medien 906 können auf vielerlei Arten, wie nachstehend noch beschrieben wird, konfiguriert sein.
-
Eine Eingabe-/Ausgabe-Schnittstelle / Eingabe-/Ausgabe-Schnittstellen 908 bietet/bieten eine Funktionalität, die ermöglicht, dass ein Nutzer Befehle und Information in die Rechenvorrichtung 902 eingibt, und die zudem ermöglicht, dass dem Nutzer und/oder anderen Komponenten oder Vorrichtungen Information unter Nutzung verschiedener Eingabe-/Ausgabevorrichtungen präsentiert wird. Beispiele für Eingabevorrichtungen beinhalten eine Tastatur, eine Cursorsteuer- bzw. Regelvorrichtung (beispielsweise eine Maus), ein Mikrofon, einen Scanner, eine Berührungsfunktionalität (beispielsweise kapazitive oder andere Sensoren, die dafür konfiguriert sind, eine physische Berührung zu detektieren), eine Kamera (die beispielsweise sichtbare oder unsichtbare Wellenlängen, so beispielsweise Infrarotfrequenzen, dafür einsetzen kann, Bewegungen als Gesten, die keine Berührung implizieren, zu erkennen), und dergleichen mehr. Beispiele für Ausgabevorrichtungen beinhalten eine Anzeigevorrichtung (beispielsweise einen Monitor oder Projektor), Lautsprecher, einen Drucker, eine Netzwerkkarte, eine taktil-reaktive Vorrichtung und dergleichen mehr. Daher kann die Rechenvorrichtung 902 auf vielerlei Arten, wie nachstehend noch beschrieben wird, konfiguriert sein, um die Nutzerinteraktion zu unterstützen.
-
Verschiedene Techniken können hier im allgemeinen Kontext von Software, Hardwareelementen oder Programmmodulen beschrieben werden. Allgemein beinhalten derartige Module Routinen, Programme, Objekte, Elemente, Komponenten, Datenstrukturen und dergleichen mehr, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Die Begriffe „Modul“, „Funktionalität“ und „Komponente“ bezeichnen im Sinne des Vorliegenden allgemein Software, Firmware, Hardware oder eine Kombination hieraus. Die Merkmale der hier beschriebenen Techniken sind plattformunabhängig, was bedeutet, dass die Techniken auf einer Vielzahl von handelsüblichen Rechenplattformen mit einer Vielzahl von Prozessoren implementiert sein können.
-
Eine Implementierung der beschriebenen Module und Techniken kann auf einer bestimmten Form von computerlesbaren Medien gespeichert sein oder über diese übertragen werden. Die computerlesbaren Medien können eine Vielzahl von Medien beinhalten, auf die von der Rechenvorrichtung 1002 bzw. 902 zugegriffen werden kann. Beispiels- und nicht beschränkungshalber können computerlesbare Medien „computerlesbare Speichermedien“ und „computerlesbare Signalmedien“ beinhalten.
-
„Computerlesbare Speichermedien" können Medien und/oder Vorrichtungen bezeichnen, die eine dauerhafte und/oder nichttemporäre Speicherung von Information im Gegensatz zur bloßen Signalübertragung, zu Trägerwellen oder zu Signalen per se ermöglichen. Computerlesbare Speichermedien bezeichnen daher nichtsignaltragende Medien. Computerlesbare Speichermedien beinhalten Hardware, so beispielsweise flüchtige und nichtflüchtige, entfernbare und nichtentfernbare Medien und/oder Speichervorrichtungen, die in einem Verfahren oder einer Technologie implementiert sind, die zur Speicherung von Information geeignet ist, so beispielsweise als computerlesbare Anweisungen, Datenstrukturen, Programmmodule, Logikelemente/Schaltungen oder andere Daten. Beinhalten können Beispiele für computerlesbare Speichermedien unter anderem RAM, ROM, EEPROM, Flash-Speicher oder eine andere Speichertechnologie, CD-ROM, DVD oder einen anderen optischen Speicher, Festplatten, Magnetkassetten, Magnetbänder, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder eine andere Speichervorrichtung, physische Medien oder Elemente, die dafür geeignet sind, dass gewünschte Information gespeichert wird, und auf die ein Computer zugreifen kann.
-
„Computerlesbare Signalmedien" können signaltragende Medien bezeichnen, die dafür konfiguriert sind, Anweisungen an die Hardware der Rechenvorrichtung 1002 bzw. 902 beispielsweise über ein Netzwerk zu übermitteln. Signalmedien können typischerweise computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten in einem modulierten Datensignal verkörpern, so beispielsweise Trägerwellen, Datensignale oder einen anderen Transportmechanismus. Signalmedien beinhalten zudem beliebige Informationsverteilungsmedien. Der Begriff „moduliertes Datensignal“ bezeichnet ein Signal, bei dem eine oder mehrere Eigenschaften derart eingestellt oder verändert sind, dass Information in dem Signal codiert ist. Beispiels- und nicht beschränkungshalber beinhalten Kommunikationsmedien drahtgebundene Medien, so beispielsweise ein drahtgebundenes Netzwerk oder eine direkt verdrahtete Verbindung, und drahtlose Medien, so beispielsweise akustische, hochfrequenzbasierte, infrarote und andere drahtlose Medien.
-
Wie vorstehend beschrieben worden ist, stellen die Hardwareelemente 910 und die computerlesbaren Medien 906 Module, eine programmierbare Vorrichtungslogik und/oder eine feste Vorrichtungslogik dar, die in Form von Hardware implementiert sind, die bei einigen Ausführungsformen dafür eingesetzt werden kann, wenigstens einige Aspekte der hier beschriebenen Techniken beispielsweise zur Durchführung einer oder mehrerer Anweisungen zu implementieren. Die Hardware kann Komponenten einer integrierten Schaltung oder eines On-Chip-Systems, eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), eine komplexe programmierbare Logikvorrichtung (CPLD) und andere Implementierungen in Silizium oder anderer Hardware beinhalten. In diesem Zusammenhang kann Hardware als Verarbeitungsvorrichtung wirken, die Programmaufgaben wahrnimmt, die durch Anweisungen und/oder eine Logik definiert sind, die durch die Hardware verkörpert sind, wie auch Hardware, die zur Speicherung von Anweisungen zur Ausführung benutzt wird, so beispielsweise durch die vorbeschriebenen computerlesbaren Speichermedien.
-
Kombinationen des Vorbeschriebenen können zudem zur Implementierung verschiedener hier beschriebener Techniken eingesetzt werden. Entsprechend können Software, Hardware oder ausführbare Module als eine oder mehrere Anweisungen und/oder Logik implementiert sein, die in irgendeiner Form von computerlesbaren Speichermedien und/oder durch ein oder mehrere Hardwareelemente 910 verkörpert sind. Die Rechenvorrichtung 902 kann dafür konfiguriert sein, bestimmte Anweisungen und/oder Funktionen entsprechend Software- und/oder Hardwaremodulen zu implementieren. Entsprechend kann eine als Software gegebene Implementierung eines Moduls, das von der Rechenvorrichtung 902 ausführbar ist, auch wenigstens teilweise in Hardware erreicht werden, so beispielsweise unter Nutzung computerlesbarer Speichermedien und/oder Hardwareelemente 910 des Verarbeitungssystems 904. Die Anweisungen und/oder Funktionen können von einem oder mehreren Elementen (beispielsweise einer oder mehreren Rechenvorrichtungen 902 und/oder einem oder mehreren Verarbeitungssystemen 904) ausführbar/betreibbar sein, um die hier beschriebenen Techniken, Module und Beispiele zu implementieren.
-
Die hier beschriebenen Techniken können von verschiedenen Konfigurationen der Rechenvorrichtung 902 unterstützt werden und sind nicht auf die spezifischen Beispiele für die hier beschriebenen Techniken beschränkt. Diese Funktionalität kann zudem gänzlich oder in Teilen unter Nutzung eines verteilten Systems implementiert sein, so beispielsweise über eine „Cloud“ 914 mittels einer Plattform 916, wie nachstehend noch beschrieben wird.
-
Die Cloud 914 beinhaltet eine Plattform 916 für Ressourcen 918 und/oder stellt diese dar. Die Plattform 916 abstrahiert die zugrunde liegende Funktionalität der Hardware- (beispielsweise Server) und Softwareressourcen der Cloud 914. Die Ressourcen 918 können Anwendungen bzw. Apps und/oder Daten beinhalten, die eingesetzt werden können, während eine Computerverarbeitung auf Servern ausgeführt wird, die von der Rechenvorrichtung 902 entfernt sind. Die Ressourcen 918 können zudem Dienste beinhalten, die über das Internet und/oder über ein Teilnehmernetzwerk, so beispielsweise ein zellenbasiertes oder ein Wi-Fi-Netzwerk, bereitgestellt werden.
-
Die Plattform 916 kann Ressourcen und Funktionen abstrahieren, um die Rechenvorrichtung 902 mit anderen Rechenvorrichtungen zu verbinden. Die Plattform 916 kann zudem dazu dienen, die Skalierung von Ressourcen zu abstrahieren, um einen entsprechenden Skalierungsgrad für bestehenden Bedarf an den Ressourcen 918, die über die Plattform 916 implementiert sind, bereitzustellen. Entsprechend kann bei einer Ausführungsform mit wechselseitig verbundenen Vorrichtungen eine Implementierung der hier beschriebenen Funktionalität über das System 900 verteilt sein. Die Funktionalität kann teilweise beispielsweise auch auf der Rechenvorrichtung 902 wie auch über die Plattform 916, die die Funktionalität der Cloud 914 abstrahiert, implementiert sein.
-
Schlussbemerkung
-
Obwohl die Erfindung in einer Sprache beschrieben worden ist, die für strukturelle Merkmale und/oder methodische Vorgänge spezifisch ist, sollte einsichtig sein, dass die in den beigefügten Ansprüchen definierte Erfindung nicht unbedingt auf die beschriebenen spezifischen Merkmale oder Vorgänge beschränkt ist. Vielmehr sind die spezifischen Merkmale und Vorgänge als exemplarische Formen der Implementierung der beanspruchten Erfindung offenbart.