DE102017007714A1 - Verbessertes Bemalen von Objekten durch die Verwendung von Perspektiven oder Transfers in einer digitalen Medienumgebung - Google Patents

Verbessertes Bemalen von Objekten durch die Verwendung von Perspektiven oder Transfers in einer digitalen Medienumgebung Download PDF

Info

Publication number
DE102017007714A1
DE102017007714A1 DE102017007714.2A DE102017007714A DE102017007714A1 DE 102017007714 A1 DE102017007714 A1 DE 102017007714A1 DE 102017007714 A DE102017007714 A DE 102017007714A DE 102017007714 A1 DE102017007714 A1 DE 102017007714A1
Authority
DE
Germany
Prior art keywords
dimensional
painting
digital
computing device
digital image
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
DE102017007714.2A
Other languages
English (en)
Inventor
Zhili Chen
Srinivasa Madhava Phaneendra Angara
Duygu Ceylan Aksit
Byungmoon Kim
Gahye Park
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of DE102017007714A1 publication Critical patent/DE102017007714A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Abstract

Es werden hierin Techniken und Systeme beschrieben, die eine verbesserte Bemalung von Objekten in digitalen Bildern mittels der Verwendung von Perspektiven und Transfers in einer digitalen Medienumgebung unterstützen. In einem Beispiel interagiert ein Benutzer mit einem zweidimensionalen digitalen Bild in einer Benutzerschnittstelle, die von einem Computer ausgegeben wird, um eine digitale Bemalung aufzutragen. Die Rechnervorrichtung passt ein dreidimensionales Modell an ein Objekt im Bild an, zum Beispiel das Gesicht. Das Objekt, das an das dreidimensionale Modell angepasst ist, wird verwendet, um die Ausgabe einer Vielzahl von Perspektiven einer Ansicht des Objekts zu unterstützen, mit der ein Benutzer interagieren kann, um das Objekt digital zu bemalen. Dabei wird die durch die Benutzereingaben vorgegebene digitale Bemalung von der Rechnervorrichtung direkt auf eine zweidimensionale Texturkarte des Objekts aufgebracht. Dies kann das Transferieren einer digitalen Bemalung zwischen Objekten durch eine Rechnervorrichtung unterstützen, indem die digitale Bemalung unter Verwendung von jeweiligen zweidimensionalen Texturkarten transferieren wird.

Description

  • Hintergrund
  • Benutzer sammeln und teilen eine ständig wachsende Anzahl von digitalen Bildern, da es immer mehr Vorrichtungen gibt, die zur Erfassung dieser digitalen Bilder verwendet werden können, sowie Techniken, mit denen die digitalen Bilder geteilt werden können, wie zum Beispiel soziale Netzwerke, Nachrichtenübermittlung und so weiter. Dabei wurden Techniken entwickelt, um den digitalen Bildern digitale Bemalung hinzuzufügen. Zum Beispiel können Benutzer Tiermerkmale auf ein Gesicht eines Benutzers in einem digitalen Bild als virtuelle Gesichtsbemalung zeichnen bzw. malen, um auf unterhaltsame Weise digitale Bilder zu erstellen, die für andere Benutzer von Interesse sein könnten.
  • Konventionelle Techniken, um dies zu tun, können jedoch schwierig auszuführen sein und es mangelt ihnen an Realismus. Beispielsweise kann es für den Benutzer schwierig sein, digitale Bemalung auf ein Gesicht eines Benutzers in einem zweidimensionalen digitalen Bild auf eine realistische Art und Weise aufzutragen bzw. zu malen, welche die Konturen und die Form des Gesichts berücksichtigt. Dementsprechend können die Ergebnisse dieser konventionellen Technik realitätsfem sein und sind daher auf comicartige Karikaturen beschränkt. In einem anderen Beispiel wurden konventionelle Techniken entwickelt, die eine direkte Interaktion mit einer dreidimensionalen Oberfläche unterstützen. Diese Interaktion erfordert jedoch spezielle Kenntnisse des Anwenders, um direkt auf die dreidimensionale Oberfläche zu malen. Diese konventionellen Techniken, die drei Dimensionen umfassen, beinhalten zum Beispiel die Interaktion mit und das Auftragen einer digitalen Bemalung bzw. einer digitalen Bemalung als Teil einer definierten dreidimensionalen Oberfläche. Dabei werden komplexe, nicht-intuitive Manipulationen (zum Beispiel dreidimensionale Rotationen und Translationen) eingesetzt, um digitale Bemalung aufzutragen, die als Teil der definierten dreidimensionalen Oberfläche gespeichert wird. Dies beschränkt diese konventionellen Techniken darauf, durch erfahrene Anwender benutzt zu werden, und schränkt die Anwendbarkeit dieser digitalen Bemalung auf die definierte dreidimensionale Oberfläche ein.
  • Zusammenfassung
  • Hierin werden Techniken und Systeme beschrieben, die eine verbesserte Objektmalerei in digitalen Bildern durch die Anwendung von Perspektiven und Transfers in einer digitalen Medienumgebung unterstützen. In einem Beispiel interagiert ein Benutzer mit einem zweidimensionalen digitalen Bild in einer Benutzerschnittstelle, die von einem Computer ausgegeben wird, um digitale Bemalung aufzutragen. Um dies zu unterstützen, passt die Rechnervorrichtung ein dreidimensionales Modell an ein Objekt im Bild an, zum Beispiel das Gesicht. Das Objekt, das an das dreidimensionale Modell angepasst wurde, wird verwendet, um eine Vielzahl von Perspektiven einer Ansicht des Objekts auszugeben, mit der ein Benutzer interagieren kann, um das Objekt digital zu bemalen. Benutzereingaben können zum Beispiel vom Computer empfangen werden, um das Gesicht eines Benutzers zu drehen, um eine Bemalung auf die Wange eines Benutzers aufzutragen. So kann eine Perspektive erzeugt werden, die zunächst nicht als Teil des zweidimensionalen digitalen Bildes enthalten ist, um die Möglichkeit des Benutzers, das Objekt zu bemalen, zu verbessern.
  • Als Teil hiervon wird die durch die Benutzereingaben spezifizierte digitale Bemalung direkt von der Rechnervorrichtung auf eine zweidimensionale Texturkarte des Objekts aufgebracht, im Gegensatz zu einer dreidimensionalen Oberfläche in konventionellen Techniken. Auf diese Weise können vereinfachte Steuer- und Kontrollelemente zum digitalen Bemalen unterstützt werden. Dies kann auch den Transfer einer digitalen Bemalung bzw. einer digitalen Bemalung durch eine Rechnervorrichtung zwischen Objekten unterstützen, indem die digitale Bemalung mit Hilfe von entsprechenden zweidimensionalen Texturkarten transferiert wird. Somit ist der Anwender nicht gezwungen, das digitale Bild manuell neu zu erstellen.
  • Diese Zusammenfassung stellt eine Auswahl von Konzepten in vereinfachter Form vor, die weiter unten in der detaillierten Beschreibung weiter beschrieben werden. Daher ist diese Zusammenfassung nicht dazu bestimmt, wesentliche Merkmale des beanspruchten Gegenstands zu identifizieren, und sie soll auch nicht dazu dienen, den Bereich des beanspruchten Gegenstands zu bestimmen.
  • Figurenliste
  • Die detaillierte Beschreibung ist unter Bezugnahme auf die nebenstehenden Abbildungen beschrieben. Die in den Abbildungen dargestellten Entitäten können sich auf eine oder mehrere Entitäten beziehen, und in der Beschreibung mag sich wechselweise auf die Entität(en) im Singular oder im Plural bezogen werden.
    • 1 stellt eine digitale Medienumgebung in einer beispielhaften Implementierung dar, die es ermöglicht, Techniken zur Verbesserung der Objektmalerei durch die Anwendung von Perspektive oder Transfers einzusetzen.
    • 2 stellt ein System in einer beispielhaften Implementierung dar, das den Betrieb eines Objektmalmoduls von 1 in größerem Detail zeigt.
    • 3 zeigt eine beispielhafte Implementierung der Erkennung eines Objekts und von Orientierungspunkte innerhalb des Objekts in einem digitalen Bild durch die Verwendung des Objekterkennungsmoduls und die Anpassung des Objekts an ein 3D-Modell durch ein 3D-Objektanpassungsmodul von 2.
    • 4 zeigt eine beispielhafte Implementierung, bei der ein Perspektivwechsel eingesetzt wird, um digitale Bemalung auf ein Objekt in einem digitalen Bild aufzubringen, wobei das Objekt in einer Form verwendet wird, in der es an ein dreidimensionales Modell der 2 und 3 angepasst ist.
    • 5 zeigt eine beispielhaften Implementierung, bei der eine Funktionseinheit zum zweidimensionalen Bemalen verwendet wird, um direkt auf eine zweidimensionale Texturkarte eines Objekts mit Hilfe eines Objektbemalkontroll- und/oder -steuermoduls von 2 zu malen.
    • 6 und 7 zeigen beispielhafte Implementierungen, bei denen eine digitale Bemalung zwischen Objekten mittels zweidimensionaler Texturkarten von Objekten transferiert wird.
    • 8 zeigt eine beispielhafte Implementierung, in der semantische Etiketten verwendet werden, um das Auftragen einer digitalen Bemalung bzw. einer digitalen Bemalung bzw. einer digitalen Bemalung auf ein Objekt in einem digitalen Bild zu steuern und/oder zu kontrollieren.
    • 9 ist ein Flussdiagramm, das ein Verfahren in einer beispielhaften Implementierung darstellt, bei dem eine Perspektive eines Objekts in einem zweidimensionalen digitalen Bild geändert wird, um den Empfang einer digitalen Bemalung bzw. einer digitalen Bemalung zu ermöglichen.
    • 10 ist ein Flussdiagramm, das ein Verfahren in einer beispielhaften Implementierung darstellt, bei dem digitale Bemalung in einem oder mehreren digitalen Bildern mittels zweidimensionaler Texturkarten von einem Objekt auf ein anderes transferiert wird.
    • In 11 ist ein beispielhaftes System mit verschiedenen Komponenten einer beispielhaften Vorrichtung gezeigt, das bzw. die als beliebiger Typ einer Rechnervorrichtung implementiert werden kann, wie beschrieben und/oder mit Bezug auf die 1-10 verwendet werden kann, um Ausführungsformen der hierin beschriebenen Techniken zu implementieren.
  • Detaillierte Beschreibung
  • Übersicht
  • Das digitale Bemalen von Objekten in einem digitalen Bild hat sich zu einer beliebten Methode entwickelt, mit der Benutzer zum Beispiel über soziale Netzwerke, Chats, Messaging und so weiter miteinander interagieren können, um das Interesse an digitalen Bildern zu erhöhen. Einige Objekte sind jedoch mit konventionellen Techniken nur schwer digital zu bemalen. Ein Beispiel dafür sind Gesichter und andere Objekte, die eine Vielzahl von Konturen aufweisen. Das Auftragen einer digitalen Bemalung bzw. einer digitalen Bemalung auf ein Gesicht einer Person in einem digitalen Bild kann beispielsweise mit herkömmlichen Techniken schwierig sein, da herkömmliche Einschränkungen bei der Betrachtung dieser Konturen aus einer einzigen Perspektive bestehen. Aus diesem Grund kann der Anwender nicht ohne weiteres verstehen, wie sich die Konturen auf das Auftragen einer digitalen Bemalung bzw. einer digitalen Bemalung auf das Objekt auswirken, zum Beispiel wie man digitale Bemalung auf eine verschwindende Oberfläche aufträgt. Als Konsequenz hiervon kann es konventionelle Techniken an Realismus mangeln und diese mögen für den beabsichtigten Zweck versagen, wie zum Beispiel die Nachahmung einer tatsächlichen physischen Bemalung, die auf das Objekt aufgetragen wird.
  • Dementsprechend werden hierin Techniken und Systeme beschrieben, die eine verbesserte Objektbemalung in digitalen Bildern durch die Anwendung von Perspektiven und Transfers in einer digitalen Medienumgebung unterstützen. In einem Beispiel interagiert ein Benutzer mit einem zweidimensionalen digitalen Bild in einer Benutzerschnittstelle, die von einer Rechnervorrichtung ausgegeben wird. Im Rahmen dieser Interaktion erhält die Rechnervorrichtung eine Eingabe, die angibt, dass die digitale Bemalung auf ein Objekt im digitalen Bild, zum Beispiel ein Gesicht, aufgetragen werden soll.
  • Daraufhin passt die Rechnervorrichtung ein dreidimensionales Modell an das Objekt an, zum Beispiel das Gesicht. Dies kann auf verschiedene Weise geschehen, zum Beispiel mittels einer Erkennung von Orientierungspunkte im Objekt, zum Beispiel Augen- und Mundwinkel, Nasenspitze und so weiter. Diese Orientierungspunkte werden dann dazu verwendet, das Objekt an die entsprechenden Orientierungspunkte des dreidimensionalen Modells anzupassen.
  • Das Objekt, das an das dreidimensionale Modell angepasst ist, wird somit dazu verwendet, die Ausgabe einer Vielzahl von Perspektiven einer Ansicht des Objekts zu unterstützen, mit der ein Benutzer interagieren kann, um das Objekt digital zu bemalen. Benutzereingaben können zum Beispiel vom Computer empfangen werden, um das Gesicht eines Benutzers von einer ursprünglichen Perspektive, in welcher der Benutzer direkt auf eine Kamera blickt, zu drehen, um eine gedrehte Perspektive zu erhalten, in der ein zusätzlicher Teil des Gesichts des Benutzers betrachtet werden kann, zum Beispiel eine Seite der Wange des Benutzers. Benutzereingaben können dann in dieser gedrehten Perspektive empfangen werden, um die Wange des Benutzers zu bemalen. Nach der Fertigstellung wird die Perspektive wieder zur ursprünglichen Perspektive zurückgestellt, wobei die digitale Bemalung auf das Objekt aufgetragen ist. Auf diese Weise kann der Benutzer intuitiv mit verschiedenen Perspektiven eines Objekts interagieren, um eine digitale Bemalung aufzutragen, ohne über detaillierte Kenntnisse der komplizierten konventionellen dreidimensionalen Maltechniken zu verfügen.
  • Dabei wird die durch die Benutzereingaben spezifizierte digitale Bemalung von der Rechnervorrichtung direkt auf eine zweidimensionale Texturkarte des Objekts aufgebracht, zum Beispiel das Gesicht, und nicht auf das dreidimensionale Modell, an welches das Objekt angepasst ist. Eine zweidimensionalen Texturkarte wird verwendet, um zu beschreiben, wie das Objekt an das dreidimensionale Modell angepasst wird, indem die Punkte des Modells auf die Orientierungspunkte des Objekts ausgerichtet werden, zum Beispiel in einem Gesicht auf die Augen, die Nasenspitze und so weiter. Auf diese Weise zeigt die Texturkarte die Entsprechung von Teilen des Objekts mit den entsprechenden Teilen des dreidimensionalen Modells an. Diese wird dann verwendet, um das Objekt aus dem digitalen Bild über das dreidimensionale Modell zu „wickeln“, um es im dreidimensionalen Raum darzustellen. Diese Anzeige wird dann durch Benutzerinteraktion manipuliert, um verschiedene Perspektiven des Objekts zu betrachten, zum Beispiel die Front, die Seite, und dazwischenliegende Stellungen.
  • In einer hierin beschriebenen Implementierung wird anstatt das dreidimensionale Modell, welches das Objekt beinhaltet, digital zu Bemalen eine Funktionseinheit zum zweidimensionalen Malen verwendet, um direkt auf die zweidimensionale Texturkarte zu malen. Dies hat zahlreiche Vorteile. In einem solchen Beispiel unterstützt dies die Verwendung einer vereinfachten zweidimensionalen Mal-Funktionseinheit zum digitalen Bemalen der zweidimensionalen Texturkarte, die Steuerelemente beinhaltet, die für den Benutzer leicht verständlich sind (zum Beispiel einfache Pinselauswahl), im Gegensatz zu den Steuerelementen, die von herkömmlichen Funktionseinheiten zum dreidimensionalen Malen verwendet werden, die spezielles Wissen benötigen, um das Modell zu manipulieren und die digitale Bemalung dreidimensional auf das Modell anzuwenden.
  • Ein weiterer Vorteil ist, dass die digitale Bemalung problemlos zwischen Objekten innerhalb desselben digitalen Bildes oder zwischen verschiedenen digitalen Bildern transferiert werden kann. Beispielsweise kann die Abbildung bzw. das Mapping aus dem dreidimensionalen Modell (zum Beispiel das Gesicht) und die zweidimensionalen Texturkarten so konfiguriert werden, dass sie universell für alle Objekte des gleichen Typs sind. Beispielsweise können Gesichter, die mit demselben dreidimensionalen Modell modelliert werden, zweidimensionale Texturkarten mit übereinstimmenden Konfigurationen verwenden, zum Beispiel korrespondierende Punkte und Polygone, die aus diesen Punkten gebildet werden.
  • Eine digitale Bemalung, die auf ein erstes Gesicht aufgetragen wird, kann zum Beispiel leicht von einer zweidimensionalen Texturkarte des ersten Gesichts auf eine zweidimensionale Texturkarte eines zweiten Gesichts transferiert werden auf Grund von Entsprechungen zwischen den Karten. Auf diese Weise kann dieselbe digitale Bemalung auf mehrere Objekte, die sich ein Modell teilen, transferiert werden, ohne dass die digitale Bemalung manuell neu erstellt werden muss. In den nachfolgenden Abschnitten werden diese und andere Beispiele näher erläutert, einschließlich der Verwendung semantischer Etiketten, um zu kontrollieren bzw. zu steuern, wo die digitale Bemalung auf das Objekt aufgebracht werden kann, um beispielsweise zu verhindern, dass eine digitale Bemalung auf die Augen eines Gesichts aufgetragen wird. Obwohl im Folgenden Objekte beispielhaft als Gesichter beschrieben werden, können die Objekte jedes beliebige Objekt umfassen, das sich im dreidimensionalen Raum modellieren lässt.
  • In der folgenden Diskussion wird zunächst ein Beispiel für eine digitale Medienumgebung beschrieben, in der die hierin beschriebenen Techniken zum Einsatz kommen können. Anschließend werden beispielhafte Vorgehensweisen beschrieben, die sowohl in der digitalen Medienumgebung als auch in anderen Umgebungen ausgeführt werden können. Folglich beschränkt sich das Ausführen der beispielhaften Prozeduren nicht auf die beispielhafte Umgebung, und die beispielhafte Umgebung beschränkt sich nicht auf das Ausführen der Beispielprozeduren.
  • Beispielhafte Umgebung
  • 1 ist eine Darstellung einer digitalen Medienumgebung 100 in einer beispielhaften Implementierung, die für die Anwendung der hierin beschriebenen Techniken geeignet ist. Die dargestellte digitale Medienumgebung 100 beinhaltet eine Rechnervorrichtung 102, welche für die Anwendung beim digitalen Malen von Objekten in digitalen Bildern konfiguriert ist, welche auf verschiedene Weise konfiguriert sein kann.
  • Die Rechnervorrichtung 102 kann zum Beispiel als Desktop-Computer, Laptop-Computer, mobile Vorrichtung (welche beispielsweise eine handgehaltene Konfiguration wie ein Tablett oder ein Mobiltelefon annimmt) und so weiter konfiguriert sein. So kann die Rechnervorrichtung 102 von Vollressourcen-Vorrichtungen, welche über erhebliche Speicher- und Prozessorressourcen verfügen (zum Beispiel PCs, Spielkonsolen), bis hin zu einer Vorrichtung mit geringen Ressourcen, welche nur über begrenzte Speicher- und/oder Verarbeitungsressourcen verfügt (zum Beispiel mobile Vorrichtungen), reichen. Darüber hinaus kann, obwohl eine einzelne Rechnervorrichtung 102 gezeigt ist, die Rechnervorrichtung 102 repräsentativ für eine Vielzahl von verschiedenen Vorrichtungen sein, wie zum Beispiel mehrere Server, die von einem Unternehmen verwendet werden, um Operationen „über die Cloud“ auszuführen, wie weiter in Bezug auf 11 beschrieben.
  • Die Rechnervorrichtung 102 ist ein Bildverarbeitungssystem 104 enthaltend dargestellt. Das Bildverarbeitungssystem 104 ist zumindest teilweise in Hardware implementiert, um zweidimensionale digitale Bilder 106 zu transformieren, die im Folgenden aus Gründen der Kürze auch als „digitale Bilder“ und „Bilder 106“ bezeichnet werden. Die Transformation von Bildern umfasst das Erstellen, Bearbeiten und anderweitiges Modifizieren von digitalen Bildern 106, die auf einem computerlesbaren Speichermedium des Rechners 106 gespeichert sind. Ein Beispiel für eine solche Funktionalität ist als ein Objektbemalungsmodul 108 dargestellt. Das Objektbemalungsmodul 108 ist zumindest teilweise in Hardware der Rechnervorrichtung 102 implementiert (zum Beispiel Operationen, die auf einem computerlesbaren Speichermedium gespeichert und auf einem Verarbeitungssystem ausführbar sind), um eine digitale Bemalung auf Objekte in digitalen Bildern 106 aufzubringen.
  • Ein Beispiel hierfür zeigt ein digitales Bild, das in einer Benutzeroberfläche einer Anzeigevorrichtung 110 der Rechnervorrichtung 102 gerendert wurde. Wie dargestellt, beinhaltet die Benutzeroberfläche ein erstes, ein zweites und ein drittes Objekt, welche in diesem Beispiel ein erstes Gesicht 112, ein zweites Gesicht 114 und ein drittes Gesicht 116 sind. Diese Techniken sind gleichermaßen auch auf alle anderen Objekt anwendbar, die in einem zweidimensionalen digitalen Bild enthalten sind, welche dreidimensional modelliert werden können. Das Objektbemalungsmodul 108 wird in diesem Beispiel von einem Benutzer verwendet, um das erste Gesicht 112, das zweite Gesicht 114 und das dritte Gesicht 116 des digitalen Bildes 106 so zu transformieren, dass diese die digitalen Bemalungen 118, 120 bzw. 122 enthalten.
  • Das Objektbemalungsmodul 108 kann zum Beispiel Werkzeuge und Befehle in einer Benutzeroberfläche ausgeben, die von einem Benutzer ausgewählt werden können, um ein Erscheinungsbild einer digitalen Bemalung bzw. einer digitalen Bemalung zu erzeugen, die auf einer Oberfläche von Objekten innerhalb des digitalen Bildes angewendet ist. Wie in der Benutzeroberfläche der Anzeigevorrichtung 110 gezeigt, ist die digitale Bemalung 118, 120 bzw. 122 eine Gesichtsbemalung, welche das Aufbringen einer Bemalung im wirklichen Leben auf die Oberflächen der Gesichter imitiert, wie sie häufig im Karneval, bei Kindergeburtstagen und so weiter gefunden wird. Mit konventionellen Techniken ist es jedoch eine Herausforderung, derartiges, wie etwa das Auftragen der digitalen Bemalung auf ein Objekt mit verschwindender Kontur, wie zum Beispiel die Wange und die Seite der Gesichter, auf einem zweidimensionalen digitalen Bild zu tun.
  • Die hierin beschriebenen Techniken unterstützen jedoch die Generierung verschiedener Perspektiven des Objekts, zum Beispiel der Gesichter, so dass ein Benutzer eine Oberfläche des Objekts mit erhöhter Genauigkeit digital bemalen kann. Ein Beispiel hierfür ist in der folgenden Beschreibung mit Bezug auf 2-4 näher beschrieben. Darüber hinaus kann diese digitale Bemalung direkt auf eine zweidimensionale Texturkarte angewendet werden und unterstützt somit die Verwendung einer Funktionseinheit zum zweidimensionalen Bemalen, wie mit Bezug auf 5 näher beschrieben, sowie die Übertragung auf verschiedene Objekte, wie mit Bezug auf 6 und 7 näher beschrieben. Semantische Etiketten, die als Teil eines dreidimensionalen Modells zur Erzeugung der verschiedenen Perspektiven definiert sind, können auch zur Kontrolle bzw. Steuerung des Auftragens der digitalen Bemalung verwendet werden, zum Beispiel zur Beschränkung des Auftragens einer digitalen Bemalung bzw. einer digitalen Bemalung auf bestimmte Teile des Objekts, wie zum Beispiel die Augen eines Benutzers, wie sie in Bezug auf 8 näher beschrieben werden.
  • 2 zeigt ein System 200 in einer beispielhaften Implementierung, das Techniken unterstützt, um eine digitale Bemalung auf ein Objekt in einem zweidimensionalen digitalen Bild 106 aufzubringen. Zunächst wird das Objektbemalungsmodul 108 initiiert, um das Auftragen einer digitalen Bemalung bzw. einer digitalen Bemalung auf ein digitales Bild 106 zu unterstützen. Das digitale Bild 106 kann zum Beispiel aus dem Speicher 202 (zum Beispiel lokal oder fern der Rechnervorrichtung 102 von 1) abgerufen werden und auf einer Anzeigevorrichtung 110 von 1 angezeigt werden. Dann wird eine Benutzereingabe empfangen, die anzeigt, dass das Auftragen einer digitalen Bemalung bzw. einer digitalen Bemalung auf ein Objekt im digitalen Bild 106 gewünscht wird, wie zum Beispiel die Eingabe eines „Malmodus“, die Auswahl einer Darstellung eines digitalen Malvorgangs in einer Benutzeroberfläche und so weiter.
  • In Antwort darauf wird ein Objekterkennungsmodul 204 durch das Objektbemalungsmodul 108 initiiert. Das Objekterkennungsmodul 204 ist zumindest teilweise in Hardware der Rechnervorrichtung 102 implementiert, um ein Objekt 206 und Orientierungspunkte 208 innerhalb des Objektes 206 auf der Grundlage eines 3D-Modells 210 zu erkennen, wobei ein Beispiel davon im Folgenden beschrieben und in einer entsprechenden Abbildung dargestellt wird.
  • 3 zeigt eine beispielhafte Implementierung 300 der Erkennung des Objekts 206 und der Orientierungspunkte 208 mit dem Objekt in einem digitalen Bild 106 unter Verwendung des Objekterkennungsmoduls 204 und der Anpassung des Objekts 206 an ein 3D-Modell 210 durch ein 3D-Objektanpassungsmodul 212 von 2. Diese Implementierung wird anhand der ersten, zweiten und dritten Stufen 302, 304, 306 veranschaulicht. Im ersten Schritt 302 erhält das Objekterkennungsmodul 204 ein 3D-Modell 210. Das 3D-Modell 210 weist definierte Punkte 308 auf, die verwendet werden, um das Objekt 206, zum Beispiel das Gesicht des Benutzers, an das Modell anzupassen. Dementsprechend beginnt das Objekterkennungsmodul 204 mit der Erkennung des Objekts 206, indem es zunächst die Orientierungspunkte 208 des Objekts 206 im digitalen Bild 106 lokalisiert, welche den definierten Punkten 308 des 3D-Modells 210 entsprechen.
  • Das Objekterkennungsmodul 204 erkennt zum Beispiel zuerst die Lage der Augen als Orientierungspunkte 208 im digitalen Bild 106. Dies kann im Rahmen einer Bildsuche erfolgen, die proximal zu einer von einem Benutzer angegebenen Position beginnt, um zum Beispiel ein bestimmtes Objekt in einem Bild mit mehreren Objekten zu spezifizieren. Eine Benutzereingabe kann zum Beispiel erzeugt werden, indem unter Verwendung einer Cursorsteuervorrichtung oder unter Verwendung einer Berührungsbildschirmfunktionalität mittels Verwendung einer Geste auf eines der Gesichter 112, 114, 116 „geklickt“ wird, wie sie von der Anzeigevorrichtung 110 angezeigt werden. Dies kann auch automatisch und ohne Benutzereingriff erfolgen, zum Beispiel in Fällen, in denen das digitale Bild 106 ein einzelnes oder primäres Objekt (zum Beispiel das größte Objekt) enthält.
  • Wie in der zweiten Stufe 304 gezeigt, kann, nachdem die Lage der Augen als Orientierungspunkte 208 innerhalb des digitalen Bildes 106 erkannt wurde, das Objekterkennungsmodul 204 einen Bereich innerhalb des digitalen Bildes 206 erweitern, um andere Orientierungspunkte 208 zu lokalisieren. Diese anderen Orientierungspunkte 208, wie sie durch die Punkte 308 des 3D-Modells 210 definiert sind, können Kanten und Ränder der Augen, der Nase, des Kinns und der Augenbrauen beinhalten, sowie andere Orientierungspunkte 208, unter Verwendung von Bildsuche und Objekterkennung.
  • Das erkannte Objekt 206 wird dann von einem 3D-Objektanpassungsmodul 212 an das 3D-Modell 210 angepasst. In der dritten Stufe 306 werden zum Beispiel die Orientierungspunkte 208 des Objekts 206 mit den entsprechenden Punkten 308 des 3D-Modells 210 abgeglichen bzw. „gematcht“. Diese Korrespondenz wird verwendet, um eine Kombination des Objekts 206 zu erzeugen, das an das 3D-Objektmodul 210 angepasst ist. Mit anderen Worten wird die Korrespondenz der Orientierungspunkte 208 des Objekts 206 mit den entsprechenden Punkten des 3D-Modells 210 verwendet, um das Objekt „über“ das 3D-Modell zu wickeln, so dass das Objekt an das 3D-Modell 214 des Systems 200 von 2 angepasst ist.
  • Als Teil dieser Anpassung kann das 3D-Modell 210 semantische Etiketten 216 enthalten, die entsprechenden Teilen des Objekts 206 zugeordnet sind. Die semantischen Etiketten 216 können zum Beispiel definieren, welche Teile des Objekts 206 die Augen 310, Nase 312, Lippen 314 und so weiter umfassen, wie in der dritten Stufe 306 von 3 gezeigt. Dies kann dann zur Kontrolle bzw. Steuerung des Auftragens einer digitalen Bemalung bzw. einer digitalen Bemalung auf diese Teile verwendet werden, wobei ein Beispiel davon mit Bezug auf 8 näher beschrieben wird.
  • Das an das Objektmodell 214 angepasste Objekt wird dann einem Objektbemalungssteuer- und/oder -kontrollmodul 218 als Eingabe zur Verfügung gestellt, um dazu verwendet zu werden, eine Vielzahl verschiedener Perspektiven des Objekts 206 zu erzeugen, die in einer Benutzeroberfläche betrachtet werden können. Ein Beispiel davon ist im Folgenden beschrieben und in einer entsprechenden Abbildung dargestellt.
  • 4 zeigt eine beispielhafte Implementierung 400, in der ein Wechsel der Perspektive verwendet wird, um eine digitale Bemalung auf ein Objekt in einem digitalen Bild aufzubringen, unter Verwendung des an das dreidimensionale Modell 214 von 2 angepassten Objekts. Diese beispielhafte Implementierung 400 wird anhand der ersten Stufe 402, zweiten Stufe 404, dritten Stufe 406, vierten Stufe 408, fünften Stufe 410, sechsten Stufe 412, siebten Stufe 414 und achten Stufe 416 gezeigt.
  • In der ersten Stufe 402 wird ein digitales Bild 106 vom Objektbemalungsmodul 108 von 2 empfangen. Das digitale Bild 106 beinhaltet das erste Gesicht 112, das zweite Gesicht 114 und das dritte Gesicht 116. Eine Benutzereingabe wird dann empfangen, um auf die Ansicht der ersten Seite 112 in der Benutzeroberfläche zu „zoomen“, wie auf der zweiten Stufe 404 gezeigt.
  • In der dritten Stufe 406 erhält das Objektbemalungsmodul 108 eine Benutzereingabe, um das digitale Bemalen des ersten Gesichts 112 zu initiieren. In Antwort darauf verwendet das Objektbemalungsmodul 108 das Objekterkennungsmodul 204 und das 3D-Objektanpassungsmodul 212, um das Objekt an das 3D-Modell 214 anzupassen, wie zuvor in Bezug auf 2 und 3 beschrieben. Dieses wird dann von dem Objektbemalungssteuer- und/oder - kontrollmodul 218 verwendet, um die Ausgabe des Objekts in der Benutzungsoberfläche zu kontrollieren bzw. zu steuern, um die Navigation zwischen verschiedenen Perspektiven des Objekts zu unterstützen.
  • Im gezeigten Beispiel möchte ein Anwender eine digitale Bemalung um ein Auge und auf die Wange des ersten Gesichtes 112 auftragen. Dementsprechend wird die Kombination des Objekts (zum Beispiel das erste Gesicht) mit dem 3D-Modell verwendet, um eine Perspektive des ersten Gesichts 112 so zu verändern, dass eine Seite der Benutzeroberfläche, die im zweidimensionalen digitalen Bild 106 ursprünglich nicht sichtbar war, nun durch Manipulation im dreidimensionalen Raum sichtbar ist. Der Benutzer kann zum Beispiel das erste Gesicht 112 mit Hilfe einer Cursorsteuervorrichtung oder einer Geste „greifen und ziehen“, um das Objekt aus der gewünschten Perspektive zu betrachten.
  • In der vierten Stufe 408 wird in der Benutzeroberfläche eine Option 418 ausgegeben, mit der die Farbe der digitalen Bemalung ausgewählt werden kann, die auf das erste Gesicht 112 aufgetragen werden soll. In der fünften Stufe 410 wird die digitale Bemalung 420 auf das erste Gesicht 112 in der geänderten Perspektive aufgetragen. Auf diese Weise erhält der Anwender eine vergrößerte Sicht auf das Objekt, die ihm aus dem zweidimensionalen digitalen Bild 106 ansonsten nicht zur Verfügung stehen würde. Sobald die digitale Bemalung 420 wie gewünscht aufgetragen wurde, wird eine Option angeboten, um die digitale Bemalung zu speichern 422, wie in der sechsten Stufe 412 gezeigt. Die Auswahl der Option „Pose zurückstellen“ 424 wird verwendet, um eine Ansicht des Objekts in eine ursprüngliche Perspektive, wie sie im Digitalbild 106 enthalten ist, zurück zu versetzen, wobei dieses jedoch die digitale Bemalung 420 beinhaltet. Wie in der achten Stufe 416 gezeigt, ist die digitale Bemalung 420 daher so konfiguriert, dass sie den Konturen des ersten Gesichts 112 folgt, die realistisch und natürlich sind, und die Bemalung wird auf eine intuitive Art und Weise aufgetragen, ohne dass Kenntnisse über fortgeschrittene 3D-Objektmanipulationstechniken erforderlich sind.
  • Wie in 2 dargestellt, akzeptiert das Objektzeichen- und Steuermodul 218 zum Beispiel Benutzereingaben 220, um das digitale Bild 106 digital zu bemalen. Dies geschieht durch die Verwendung einer zweidimensionalen Texturkarte 222, um eine 2D-Bildtexturkarte 22 zu bilden, auf welche die digitale Bemalung 224 aufgetragen wird, im Gegensatz zu einer herkömmlichen Anwendung zum digitalen Malen auf eine dreidimensionalen Oberfläche, die Kenntnisse über komplizierte dreidimensionale Malfunktionseinheiten erfordert, um die digitale Bemalung dreidimensional zu navigieren und abzubilden.
  • 5 zeigt eine beispielhafte Implementierung 500, bei der eine Funktionseinheit 502 zum zweidimensionalen Malen eingesetzt wird, um direkt auf eine zweidimensionale Texturkarte 222 eines Objekts zu malen. Die zweidimensionale Texturkarte 222 wird aus einer Vielzahl von Polygonen gebildet. Die Polygone der zweidimensionalen Texturkarte 222 können zum Beispiel zumindest teilweise basierend auf der Übereinstimmung der Orientierungspunkte 208 des Objekts 206 mit den Punkten 308 des 3D-Modells 210 definiert werden. Durch die Implementierung in zwei Dimensionen kann eine Funktionseinheit 502 zum zweidimensionalen Malen verwendet werden, um direkt auf die zweidimensionale Texturkarte 222 zu malen, die dann über das 3D-Modell 210 „gestreckt“ wird, um die Darstellung zu unterstützen, die im dreidimensionalen Raum navigierbar ist, wie in Bezug auf 4 beschrieben.
  • Als ein Ergebnis kann ein Benutzer leicht zwischen verschiedenen Perspektiven eines Objekts in einem zweidimensionalen digitalen Bild 106 navigieren und eine digitale Bemalung auftragen, indem er leicht verständliche Techniken anwendet, die von der Funktionseinheit 502 zum zweidimensionalen Malen unterstützt werden. Indem direkte auf die zweidimensionale Texturkarte 222 gemalt wird, werden auch Techniken unterstützt, um die digitale Bemalung zwischen Objekten innerhalb eines digitalen Bildes und/oder auf ein anderes digitales Bild zu übertragen bzw. zu transferieren, wovon ein Beispiel wie folgt beschrieben und in entsprechenden Abbildungen gezeigt wird.
  • 6 zeigt eine beispielhafte Implementierung 600, in der eine digitale Bemalung zwischen Objekten mittels zweidimensionaler Texturkarten von Objekten transferiert wird. 6 wird unter Verwendung der ersten, zweiten und dritten Stufen 602, 604, 606 dargestellt. In der ersten Stufe 602 wird die digitale Bemalung 420 mit Hilfe einer zweidimensionalen Texturkarte auf das erste Gesicht 112 aufgetragen.
  • In der zweiten Stufe 604 wird eine Benutzereingabe empfangen, die anzeigt, dass die digitale Bemalung 420 von dem ersten Gesicht 112 auf das zweite Gesicht 114 transferiert werden soll, indem zum Beispiel auf das zweite Gesicht „geklickt“ wird. In Reaktion darauf transferiert das Objektbemalungssteuer- und/oder - kontrollmodul 218 die digitale Bemalung 420 von einer 2D-Texturkarte des ersten Gesichts auf eine 2D-Textur des zweiten Gesichts 114. Ein Ergebnis davon wird in der Benutzeroberfläche als digitale Bemalung 608 angezeigt. Dieser Prozess kann auch für das dritte Gesicht 116 fortgesetzt werden, um die digitale Bemalung 420 zur Anzeige als digitale Bemalung 610 zu transferieren. Die zweidimensionalen Texturkarten können somit verwendet werden, um die digitale Bemalung 420 auf andere Objekte zu transferieren, ohne die digitale Bemalung manuell neu zu erstellen. Ein ausführliches Beispiel hierfür wird im Folgenden beschrieben.
  • 7 zeigt auch eine beispielhafte Implementierung 700, in der eine digitale Bemalung mittels zweidimensionaler Objekt-Texturkarten zwischen Objekten transferiert wird. 7 wird unter Verwendung der ersten, zweiten und dritten Stufen 702, 704, 706 dargestellt. In der ersten Stufe 702 sind ein 3D-Modell 210 und die dazugehörige zweidimensionale Texturkarte 222 gezeigt. Wie bereits beschrieben, definiert die zweidimensionale Texturkarte 222, wie das Objekt dem 3D-Modell 210 entspricht, und diese kann daher verwendet werden, um das Objekt zu einer 3D-Ausgabe zu wickeln, wie in 4 gezeigt.
  • Wie in der zweiten Stufe 704 gezeigt, interagiert ein Benutzer mit dem digitalen Bild, um eine digitale Bemalung 708 auf das zweite Gesicht 114 aufzutragen. Die digitale Bemalung 708 wird jedoch mit Hilfe der Funktionseinheit 502 zum zweidimensionalen Malen direkt auf die zweidimensionale Texturkarte 222 aufgetragen. Als solches wird auf diese Weise definiert, welche Teile (zum Beispiel Polygone und Teile von Polygonen) der zweidimensionalen Texturkarte 222 eine Bemalung erhalten, die als Teil des digitalen Bildes 106 ausgegeben wird.
  • Wie bereits beschrieben, definiert die zweidimensionale Texturkarte 222, welche Orientierungspunkte 208 des Objekts 206 den Punkten des 3D-Modells 210 entsprechen. Dementsprechend können unterschiedliche zweidimensionale Texturkarten für verschiedene Objekte verwendet werden (zum Beispiel das erste Gesicht 112, das zweite Gesicht 114 und das dritte Gesicht 116), um zu definieren, wie diese Objekte an das 3D-Modell 210 angepasst sind. Allerdings haben die zweidimensionalen Texturkarten 222, die von diesen verschiedenen Objekten verwendet werden, eine entsprechende Struktur, zum Beispiel ähnliche Orientierungspunkte 208, und es werden Beziehungen zwischen den Orientierungspunkte verwendet, um Polygone zu bilden, welche die Karten definieren. Durch die Nutzung dieser entsprechenden Struktur der Karten kann die digitale Bemalung von dem zweiten Gesicht 114 auf das erste Gesicht 112 und das dritte Gesicht 116 transferiert werden, indem entsprechende zweidimensionale Texturkarten verwendet werden, wie im dritten Schritt 706 gezeigt wird. Auf diese Weise kann die digitale Bemalung problemlos zwischen Objekten in einem digitalen Bild 706 und/oder zu einem anderen digitalen Bild transferiert werden.
  • Darüber hinaus kann dies die Verwendung von „vorkonfigurierten“ Sammlungen digitaler Bemalungen unterstützen, die vom Benutzer durch Interaktion mit einer Benutzeroberfläche zur Anwendung auf entsprechende Objekte ausgewählt werden können. Beispielsweise kann das Objekterkennungsmodul 204 von 2 verwendet werden, um einen Objekttyp in einem digitalen Bild 106 zu erkennen. In Antwort darauf erhält das Objekterkennungsmodul 204 eine digitale Bemalung 224 und/oder sogar 3D-Modelle 210, die dem erkannten Objekttyp entsprechen. Dies kann verwendet werden, um das erkannte Objekt so zu konfigurieren, dass es die Bemalung empfängt.
  • Mit Bezug zurück zu 2 können, wie zuvor beschrieben, semantische Etiketten 216 für entsprechende Teile der 2D-Texturkarte 222 auf Basis des 3D-Modells 210 spezifiziert werden. Die 2D-Texturkarte 222 kann zum Beispiel festlegen, welche Polygone den Augen, dem inneren Mund und so weiter eines Benutzers entsprechen. Dieses kann dann von einem semantischen Kontroll- und/oder Steuermodul 226 des Objektbemalungssteuer- und/oder -kontrollmoduls 218 zur Kontrolle bzw. Steuerung des Auftragens einer digitalen Bemalung bzw. der digitalen Bemalung 224 auf der Grundlage dieser semantischen Etiketten 216 verwendet werden, wofür im Folgenden ein Beispiel beschrieben und in einer entsprechenden Abbildung gezeigt wird.
  • 8 zeigt eine beispielhafte Implementierung 800, in der semantische Etiketten verwendet werden, um das Auftragen einer digitalen Bemalung auf ein Objekt in einem digitalen Bild 106 zu steuern bzw. zu kontrollieren. Diese beispielhafte Implementierung 800 wird anhand der ersten und zweiten Stufe 802, 804 gezeigt. In der ersten Stufe 802 wird die digitale Bemalung 806 auf ein Gesicht 808 in einem digitalen Bild 106 aufgetragen, zum Beispiel mit den Techniken von 4 gemalt oder mit den Techniken von 6 und 7 transferiert.
  • In der zweiten Stufe 804 wird die digitale Bemalung 806 an einen neuen Ort gebracht, der ein Auge 810 des Benutzers beinhaltet. Das semantische Kontroll- und/oder Steuermodul 226 verwendet semantische Etiketten 216, die Polygonen zugeordnet sind, die dem Auge entsprechen, um zu verhindern, dass die digitale Bemalung 806 auf das Auge 810 aufgetragen wird. Auf diese Weise kann das semantische Kontroll- und/oder Steuermodul 226 automatisch und ohne Benutzereingriff realistische Ergebnisse erhalten und ermöglicht so die Positionierung der digitalen Bemalung 806 an verschiedenen Stellen auf dem Gesicht 808, ohne dass der Benutzer die digitale Bemalung 806 manuell modifizieren muss. Es werden auch andere Beispiele betrachtet, wie zum Beispiel die Kontrolle bzw. Steuerung, welche Bemalungen auf bestimmte Teile eines Objektes angewendet werden dürfen, Kontrast, Farbtöne, Helligkeit und so weiter.
  • Beispielprozeduren
  • Die folgende Diskussion beschreibt Techniken, die unter Verwendung der zuvor beschriebenen Systeme und Vorrichtungen implementiert werden können. Aspekte der einzelnen Verfahren können in Hardware, Firmware, Software oder einer Kombination davon implementiert werden. Die Prozeduren werden als eine Gruppe von Blöcken dargestellt, die Operationen spezifizieren, die von einer oder von mehreren Vorrichtungen ausgeführt werden, und sind nicht notwendigerweise auf die Reihenfolgen beschränkt, die für die Ausführung der Operationen durch die jeweiligen Blöcke angezeigt werden. In Teilen der folgenden Ausführungen wird auf 1 bis 8 verwiesen.
  • 9 zeigt eine Prozedur 900 in einer beispielhaften Implementierung, bei der die Perspektive eines Objekts in einem zweidimensionalen digitalen Bild geändert wird, um den Empfang einer digitalen Bemalung zu ermöglichen. Das Objekt im zweidimensionalen digitalen Bild ist so konfiguriert, dass es die Manipulation im dreidimensionalen Raum unterstützt (Block 902). In einem Beispiel wird ein Objekterkennungsmodul 204 verwendet, um ein Objekt 206 und Orientierungspunkte 208 des Objekts innerhalb des digitalen Bildes 106 zu erkennen. Die Orientierungspunkte 208 des Objekts 206 werden dann an die entsprechenden Punkte 308 eines 3D-Modells 210 angepasst, um die Ausgabe verschiedener Perspektiven des Objekts zu unterstützen, wie etwa um das Objekt im dreidimensionalen Raum zu bewegen.
  • In Antwort auf eine Benutzereingabe wird eine Perspektive des konfigurierten Objekts, wie es in einer Benutzeroberfläche angezeigt wird, geändert, um das konfigurierte Objekt im dreidimensionalen Raum zu manipulieren (Block 904). Der Benutzer kann zum Beispiel eine Cursorsteuervorrichtung (zum Beispiel Maus), eine Geste, eine sprachliche Äußerung und so weiter verwenden, um die Benutzereingabe bereitzustellen, um eine Bewegung des konfigurierten Objekts im dreidimensionalen Raum in einer Benutzeroberfläche zu veranlassen, so dass der Benutzer einen Teil des Objekts sehen kann, der zuvor in dem zweidimensionalen digitalen Bild 106 nicht sichtbar war, wie etwa die Wange eines Benutzers, wie in 4 gezeigt.
  • Es wird eine Benutzereingabe empfangen, die eine digitale Bemalung spezifiziert, welche auf das Objekt aufgebracht werden soll, mittels Interaktion mit der geänderten Perspektive des Objekts in der Benutzeroberfläche (Block 906). Der Benutzer kann zum Beispiel mit einer Funktionseinheit 502 zum zweidimensionalen Malen interagieren, um die digitale Bemalung aufzutragen. In Antwort darauf wird eine zweidimensionale Texturkarte 222 des zweidimensionalen digitalen Bildes digital bemalt, basierend auf der spezifizierten digitalen Bemalung (Block 908). Auf der Grundlage der zweidimensionalen Texturkarte wird eine Anzeige des Objekts im zweidimensionalen digitalen Bild mit der spezifizierten digitalen Bemalung ausgegeben (Block 910).
  • 10 stellt eine Prozedur 1000 in einer beispielhaften Implementierung dar, in welcher eine digitale Bemalung in einem oder in mehreren digitalen Bildern mittels zweidimensionaler Texturkarten von einem Objekt auf ein anderes transferiert bzw. übertragen wird. Es wird mindestens eine Benutzereingabe empfangen, in der die digitale Bemalung spezifiziert wird, die auf ein Objekt in einem zweidimensionalen digitalen Bild aufgetragen werden soll (Block 1002), zum Beispiel um das Objekt manuell digital zu bemalen, wie in 4 als Teil eines digitalen Quellbildes gezeigt. In einem anderen Beispiel kann der Benutzer eine Option in einer Benutzeroberfläche auswählen, um eine vorkonfigurierte digitale Bemalung zu wählen, wie sie auf Teile einer zweidimensionalen Texturkarte einer Quelle angewendet ist.
  • Die digitale Bemalung, die auf Teile einer zweidimensionalen Texturkarte angewendet ist, wird auf die entsprechenden Teile einer zweidimensionalen Texturkarte im zweidimensionalen digitalen Bild transferiert (Block 1004). Auch dies kann wiederum ausgehend von einer manuell eingegebenen digitalen Bemalung oder einer ausgewählten vorkonfigurierten digitalen Bemalung aus erfolgen. Unabhängig davon, wie die digitale Bemalung entstanden ist, wird die digitale Bemalung dann zwischen den entsprechenden Teilen der zweidimensionalen Texturkarten transferiert. Das Objekt wird dann im zweidimensionalen digitalen Bild in einer Benutzeroberfläche so dargestellt, dass es die digitale Bemalung enthält (Block 1006), zum Beispiel gerendert von einer Anzeigevorrichtung 110 aus 1.
  • Beispielhaftes System und beispielhafte Vorrichtung
  • 11 zeigt allgemein bei 1100 ein beispielhaftes System, das eine beispielhafte Rechnervorrichtung 1102 beinhaltet, welche für ein oder mehrere Rechnersysteme und/oder -vorrichtungen repräsentativ ist, welche die verschiedenen hierin beschriebenen Techniken implementieren können. Dies wird dadurch veranschaulicht, dass es das Bildverarbeitungssystem 104 enthält. Die Rechnervorrichtung 1102 kann zum Beispiel ein Server eines Diensteanbieters, eine Vorrichtung, die einem Client zugeordnet ist (zum Beispiel eine Clientvorrichtung), ein System-on-Chip und/oder eine andere geeignete Rechnervorrichtung oder ein anderes geeignetes Rechensystem sein.
  • Die dargestellte beispielhafte Rechnervorrichtung 1102 umfasst ein Verarbeitungssystem 1104, ein oder mehrere computerlesbare Medien 1108 und eine oder mehrere Eingabe-/Ausgabeschnittstellen 1106, die kommunikativ miteinander gekoppelt sind. Auch wenn nicht dargestellt, kann die Rechnervorrichtung 1102 weiter einen Systembus oder ein anderes Daten- und Befehlsübertragungssystem enthalten, der bzw. das die verschiedenen Komponenten miteinander koppelt. Ein Systembus kann eine beliebige Busstruktur oder eine Kombination verschiedener Busstrukturen umfassen, wie zum Beispiel einen Speicherbus oder Speichercontroller, einen Peripheriebus, einen universellen seriellen Bus und/oder einen Prozessor oder lokalen Bus, der eine der verschiedenen Busarchitekturen verwendet. Eine Vielzahl weiterer Beispiele, wie zum Beispiel Steuer- und Datenleitungen, werden ebenfalls in Betracht gezogen.
  • Das Verarbeitungssystem 1104 steht stellvertretend für die Funktionalität, eine oder mehrere Operationen mit Hardware auszuführen. Dementsprechend kann das Verarbeitungssystem 1104 zumindest teilweise in Hardwareelementen implementiert werden, die als Prozessoren, Funktionsblöcke und so weiter konfiguriert werden können. Dies kann die Implementierung in Hardware als anwendungsspezifische integrierte Schaltung oder andere Logikbausteine beinhalten, die aus einem oder mehreren Halbleitern bestehen. Die Hardware-Elemente sind nicht durch die Materialien, aus denen sie geformt werden, oder die darin verwendeten Verarbeitungsmechanismen begrenzt. Beispielsweise können Prozessoren aus Halbleiter(n) und/oder Transistoren (zum Beispiel elektronische integrierte Schaltungen (ICs)) bestehen. In diesem Zusammenhang können von einem Prozessor ausführbare Anweisungen elektronisch ausführbare Anweisungen sein.
  • Die computerlesbaren Medien 1108 sind als elektronischen Speicher 1112 enthaltend dargestellt. Der elektronische Speicher 1112 stellt die Speicherkapazität dar, die einem oder mehreren computerlesbaren Medien zugeordnet ist. Der elektronische Speicher 1112 kann flüchtige Medien (zum Beispiel Speicher mit wahlfreiem Zugriff (RAM)) und/oder nichtflüchtige Medien (zum Beispiel Nur-LeseSpeicher (ROM), Flash-Speicher, optische Platten, Magnetplatten und so weiter) enthalten. Der elektronische Speicher 1112 kann sowohl fest verbaute Medien (zum Beispiel RAM, ROM, eine feste Festplatte und so weiter) als auch Wechselmedien (zum Beispiel Flash-Speicher, Wechselfestplatte, optische Diskette und so weiter) umfassen. Die computerlesbaren Medien 1108 können auf verschiedene andere Weisen konfiguriert sein, wie weiter unten beschrieben.
  • Die Eingabe-/Ausgabeschnittstelle(n) 1106 sind repräsentativ für eine Funktionalität, die es einem Benutzer ermöglicht, Befehle und Informationen in die Rechnervorrichtung 1102 einzugeben, sowie für den Benutzer und/oder andere Komponenten oder Vorrichtungen, die verschiedene Eingabe-/Ausgabevorrichtungen verwenden, Informationen zu präsentieren. Beispiele für Eingabevorrichtungen umfassen eine Tastatur, eine Cursorsteuervorrichtung (zum Beispiel eine Maus), ein Mikrofon, ein Scanner, eine Berührungsfunktionalität (zum Beispiel kapazitive oder andere Sensoren, die so konfiguriert sind, dass sie physische Berührungen erkennen), eine Kamera (zum Beispiel eine Kamera, die sichtbare oder nicht sichtbare Wellenlängen wie Infrarot-Frequenzen verwenden kann, um Bewegungen, die keine Berührungen beinhalten, als Gesten zu erkennen), und so weiter. Beispiele für Ausgabevorrichtungen umfassen eine Anzeigevorrichtung (zum Beispiel ein Monitor oder Projektor), einen Lautsprecher, einen Drucker, eine Netzwerkkarte, ein Vorrichtung für taktiles Feedback und so weiter. Daher kann die Rechnervorrichtung 1102 auf verschiedene Weise konfiguriert werden, wie weiter unten beschrieben, um die Interaktion mit dem Benutzer zu unterstützen.
  • Verschiedene Techniken mögen hierin im allgemeinen Kontext von Software, Hardware-Elementen oder Programm-Modulen beschrieben sein. Im Allgemeinen umfassen solche Module Routinen, Programme, Objekte, Elemente, Komponenten, Datenstrukturen und so weiter, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Die hierin verwendeten Begriffe „Modul“, „Funktionalität“ und „Komponente“ stellen im Allgemeinen Software, Firmware, Hardware oder eine Kombination davon dar. Die Eigenschaften der hierin beschriebenen Techniken sind plattformunabhängig, was bedeutet, dass die Techniken auf einer Vielzahl kommerzieller Computerplattformen mit einer Vielzahl von Prozessoren implementiert sein können.
  • Eine Implementierung der beschriebenen Module und Techniken kann auf irgendeiner Form von computerlesbaren Medien gespeichert oder übertragen werden. Die computerlesbaren Medien können eine Vielzahl von Medien enthalten, auf welche die Rechnervorrichtung 1102 zugreifen kann. Computerlesbare Medien können beispielsweise „computerlesbare Speichermedien“ und „computerlesbare Signalmedien“ sein.
  • „Computerlesbare Speichermedien“ können sich auf Medien und/oder Vorrichtungen beziehen, die eine dauerhafte und/oder nicht vorübergehende Speicherung von Informationen ermöglichen, im Gegensatz zur reinen Signalübertragung, zu Trägerwellen oder Signalen als solchen. Computerlesbare Speichermedien beziehen sich somit auf nicht signaltragende Medien. Die computerlesbaren Speichermedien umfassen Hardware wie flüchtige und nichtflüchtige, entfernbare und nicht entfernbare Medien und/oder Speichervorrichtungen, die in einem Verfahren oder einer Technologie implementiert sind, die für die Speicherung von Informationen wie computerlesbare Anweisungen, Datenstrukturen, Programmmodule, Logik-Elemente/Schaltungen oder andere Daten geeignet sind. Beispiele für computerlesbare Speichermedien können unter anderem RAM, ROM, EEPROM, Flash-Speicher oder andere Speichertechnologien, CD-ROM, DVD oder andere optische Speicher, Festplatten, Magnetkassetten, Magnetbänder, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder andere Speichermedien, greifbare Medien oder Herstellungsgegenstände beinhalten, die geeignet sind, die gewünschten Informationen zu speichern und auf die ein Computer zugreifen kann.
  • „Computerlesbare Signalmedien“ kann sich auf ein signalführendes Medium beziehen, das so konfiguriert ist, dass es Befehle an die Hardware der Rechnervorrichtung 1102, zum Beispiel über ein Netzwerk, übermittelt. Signalmedien können typischerweise computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten in einem modulierten Datensignal enthalten, wie zum Beispiel Trägerwellen, Datensignalen oder anderen Transportmechanismen. Zu den Signalmedien gehören auch beliebige Informationsausliefermedien. Der Begriff „moduliertes Datensignal“ bezeichnet ein Signal, bei dem eine oder mehrere seiner Eigenschaften so eingestellt oder verändert sind, dass Informationen im Signal kodiert sind. Als Kommunikationsmedien gelten zum Beispiel drahtgebundene Medien, wie etwa ein drahtgebundenes Netzwerk oder eine direkte Verbindung, sowie drahtlose Medien wie akustische, Funk-, Infrarot- und andere drahtlose Medien.
  • Wie zuvor beschrieben, sind computerlesbare Medien 1108 und andere Hardware-Elemente repräsentativ für Module, programmierbare Logikbausteine und/oder festverdrahtete Logikbausteine, die in einer Hardware-Form implementiert sind, die in einigen Ausführungsformen verwendet werden kann, um zumindest einige Aspekte der hierin beschriebenen Techniken zu implementieren, wie zum Beispiel eine oder mehrere Anweisungen auszuführen. Hardware kann Komponenten einer integrierten Schaltung oder eines Systems-on-Chip, eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), ein komplexes programmierbares Logikbauelement (CPLD) und andere Implementierungen in Silizium oder anderer Hardware umfassen. In diesem Zusammenhang kann die Hardware als Verarbeitungsvorrichtung fungieren, welche Programmaufgaben ausführt, die definiert sind durch Anweisungen und/oder Logik, die von der Hardware verkörpert wird, sowie als Hardware, die dazu dient, Anweisungen zur Ausführung zu speichern, zum Beispiel die zuvor beschriebenen computerlesbaren Speichermedien.
  • Kombinationen des Vorstehenden können auch zur Implementierung verschiedener hierin beschriebener Techniken verwendet werden. Dementsprechend können Software, Hardware oder ausführbare Module als eine oder mehrere Anweisungen und/oder Logik implementiert werden, die auf irgendeiner Form von computerlesbaren Speichermedien und/oder durch ein oder mehrere Hardwareelemente verkörpert sind. Die Rechnervorrichtung 1102 kann so konfiguriert werden, dass es bestimmte Anweisungen und/oder Funktionen entsprechend den Software- und/oder Hardwaremodulen implementiert. Dementsprechend kann die Implementierung eines Moduls, das von der Rechnervorrichtung 1102 als Software ausführbar ist, zumindest teilweise in Hardware erreicht werden, zum Beispiel durch die Verwendung von computerlesbaren Speichermedien und/oder Hardware-Elementen des Verarbeitungssystems 1104. Die Anweisungen und/oder Funktionen können von einer oder mehreren Vorrichtungen (zum Beispiel einer oder mehreren Rechnervorrichtung(en) 1102 und/oder einem oder mehreren Verarbeitungssystem(en) 1104) ausgeführt werden, um Techniken, Module und Beispiele, die hierin beschrieben sind, zu implementieren.
  • Die hierin beschriebenen Techniken können durch verschiedene Konfigurationen der Rechnervorrichtung 1102 unterstützt werden und sind nicht auf die spezifischen Beispiele der hierin beschriebenen Techniken beschränkt. Diese Funktionalität kann auch ganz oder teilweise durch die Anwendung eines verteilten Systems realisiert werden, zum Beispiel über eine „Cloud“ 1110 über eine Plattform 1112 wie unten beschrieben.
  • Die Cloud 1110 beinhaltet und/oder ist repräsentativ für eine Plattform 1112 von Ressourcen 1114. Die Plattform 1112 abstrahiert die zugrundeliegende Funktionalität von Hardware- (zum Beispiel Server) und Software-Ressourcen 1114 der Cloud 1110. Die Ressourcen 1114 können Anwendungen und/oder Daten umfassen, die genutzt werden können, während die Computerverarbeitung auf Servern ausgeführt wird, die von der Rechnervorrichtung 1102 entfernt sind. Ressourcen 1114 können auch Dienste umfassen, die über das Internet und/oder über ein Teilnehmernetzwerk, wie zum Beispiel ein Mobilfunk- oder WLan-Netzwerk, bereitgestellt werden.
  • Die Plattform 1112 kann Ressourcen und Funktionen abstrahieren, um die Rechnervorrichtung 1102 mit anderen Rechnervorrichtungen zu verbinden. Die Plattform 1112 kann auch zum Abstrahieren einer Skalierung von Ressourcen dienen, um ein entsprechendes Maß an Skalierung für die Nachfrage nach den Ressourcen 1114 bereitzustellen, die über die Plattform 1112 implementiert werden. Dementsprechend kann in einer Ausführungsform mit miteinander verbundenen Vorrichtungen die Implementierung der hierin beschriebenen Funktionalität im gesamten System 1100 verteilt sein. Beispielsweise kann die Funktionalität zum Teil auf der Rechnervorrichtung 1102 sowie auch mittels der Plattform 1112, welche die Funktionalität der Cloud 1110 abstrahiert, implementiert werden.
  • Schlussfolgerung
  • Obwohl die Erfindung in einer Sprache beschrieben wurde, die spezifisch für strukturelle Merkmale und/oder Verfahrensaktionen ist, sei verstanden, dass die in den beigefügten Ansprüchen definierte Erfindung nicht notwendigerweise auf die beschriebenen spezifischen Merkmale oder Aktionen beschränkt ist. Vielmehr werden die spezifischen Merkmale und Aktionen als beispielhafte Formen der Implementierung der beanspruchten Erfindung offenbart.

Claims (20)

  1. In einer digitalen Medienumgebung zur Verbesserung der digitalen Bemalung eines Objekts in einem zweidimensionalen digitalen Bild mittels der Verwendung von Perspektiven, eine Rechenvorrichtung, umfassend: ein Verarbeitungssystem, das konfiguriert ist, eine oder mehrere Operationen auszuführen; und ein computerlesbares Speichermedium, auf dem Anweisungen gespeichert sind, welche, wenn sie von dem Verarbeitungssystem ausgeführt werden, das Verarbeitungssystem veranlassen, Operationen auszuführen, welche umfassen: Konfigurieren des Objekts im zweidimensionalen digitalen Bild, um die Manipulation im dreidimensionalen Raum zu unterstützen: Ändern einer Perspektive des konfigurierten Objekts, wie sie in einer Benutzerschnittstelle angezeigt wird, in Antwort auf eine Benutzereingabe, um das konfigurierte Objekt im dreidimensionalen Raum zu manipulieren; Empfangen einer Benutzereingabe, die eine digitale Bemalung spezifiziert, welche auf das Objekt aufzubringen ist mittels Interaktion mit der geänderten Perspektive des Objekts in der Benutzeroberfläche; Bemalen einer zweidimensionalen Texturkarte des zweidimensionalen digitalen Bildes basierend auf der spezifizierten digitalen Bemalung; und Ausgeben einer Anzeige des Objekts in dem zweidimensionalen digitalen Bild als mit der angegebenen digitalen Bemalung versehen, basierend auf der zweidimensionalen Texturkarte.
  2. Rechenvorrichtung nach Anspruch 1, wobei die Operationen ferner das Empfangen einer Benutzereingabe umfassen, um das Malen des Objekts in dem zweidimensionalen digitalen Bild zu initiieren, und wobei das Konfigurieren in Antwort auf den Empfang ausgeführt wird.
  3. Rechenvorrichtung nach Anspruch 1 oder 2, wobei das Konfigurieren umfasst: Erkennen von Orientierungspunkten des Objekts in dem zweidimensionalen digitalen Bild; Anpassen eines dreidimensionalen Modells an das Objekt basierend auf den Orientierungspunkten, um das Objekt so zu konfigurieren, dass es die Manipulation im dreidimensionalen Raum in einer Benutzerschnittstelle unterstützt; und wobei die Änderung der Perspektive des konfigurierten Objekts auf der Anpassung an das dreidimensionale Modell beruht.
  4. Rechenvorrichtung nach einem der vorangegangenen Ansprüche, wobei das dreidimensionale Modell semantische Etiketten umfasst, die Teilen des dreidimensionalen Modells zugeordnet sind, und wobei die Operationen ferner ein Steuern und/oder Kontrollieren des Malens auf die zweidimensionale Texturkarte basierend zumindest teilweise auf den semantischen Etiketten umfassen.
  5. Rechenvorrichtung nach Anspruch 4, wobei das Steuern und/oder Kontrollieren ein Verhindern des Auftragens der Bemalung auf mindestens einen Teil der Texturkarte, der mindestens einem Teil des dreidimensionalen Modells entspricht, basierend auf einem entsprechenden semantischen Etikett umfasst.
  6. Rechenvorrichtung nach Anspruch 5, wobei das entsprechende semantische Etikett einen bestimmten Teil eines Gesichts identifiziert.
  7. Rechenvorrichtung nach einem der vorstehenden Ansprüche, wobei die Operationen weiterhin umfassen: Empfangen von mindestens einer Benutzereingabe, welche die digitale Bemalung spezifiziert, die auf ein zweites Objekt aufgetragen werden soll; Transferieren der digitalen Bemalung, wie sie auf Teile der zweidimensionalen Texturkarte aufgebracht ist, an entsprechende Teile einer zweiten zweidimensionalen Texturkarte des zweiten Objekts; und Anzeigen des zweiten Objektes in der Benutzeroberfläche als mit der digitalen Bemalung versehen.
  8. Rechenvorrichtung nach einem der vorstehenden Ansprüche, wobei das Objekt ein Gesicht beinhaltet.
  9. In einer digitalen Medienumgebung zum Transferieren einer digitalen Bemalung zwischen zweidimensionalen digitalen Bildobjekten, ein Verfahren, das durch eine Rechenvorrichtung implementiert ist, wobei das Verfahren umfasst: Empfangen, durch die Rechenvorrichtung, von mindestens einer Benutzereingabe, welche die digitale Bemalung spezifiziert, die auf ein Objekt in einem zweidimensionalen digitalen Bild aufgebracht werden soll; Transferieren, durch die Rechenvorrichtung, der digitalen Bemalung, wie sie auf Teile einer zweidimensionalen Quelltexturkarte aufgetragen ist, auf entsprechende Teile einer zweidimensionalen Texturkarte des Objekts in dem zweidimensionalen digitalen Bild; und Anzeigen, durch die Rechenvorrichtung, des Objekts in dem zweidimensionalen digitalen Bild in einer Benutzerschnittstelle als mit der digitalen Bemalung versehen.
  10. Verfahren nach Anspruch 9, wobei die digitale Bemalung auf Teile der zweidimensionalen Texturkarte der Quelle aufgebracht wird mittels: Konfigurieren, durch die Rechenvorrichtung, eines Quellobjekts, das in zwei Dimensionen implementiert ist, um die Manipulation im dreidimensionalen Raum zu unterstützen; Ändern, durch die Rechenvorrichtung, einer Perspektive des konfigurierten Quellobjekts, wie sie in einer Benutzerschnittstelle angezeigt wird, in Antwort auf eine Benutzereingabe, um das konfigurierte Quellobjekt im dreidimensionalen Raum zu manipulieren; Empfangen, durch die Rechenvorrichtung, einer Benutzereingabe, welche die digitale Bemalung spezifiziert, die auf das konfigurierte Quellobjekt aufgebracht werden soll mittels Interaktion mit der geänderten Perspektive des konfigurierten Quellobjekts in der Benutzerschnittstelle; und Bemalen, durch die Rechnervorrichtung, der zweidimensionalen Quelltexturkarte, basierend auf der spezifizierten digitalen Bemalung, die auf das konfigurierte Quellobjekt angewendet wird.
  11. Verfahren nach Anspruch 10, wobei sowohl das Quellobjekt als auch das Objekt in dem zweidimensionalen digitalen Bild enthalten sind.
  12. Verfahren nach Anspruch 10, wobei das Quellobjekt in einem zweidimensionalen digitalen Bild enthalten ist, das separat zu dem zweidimensionalen digitalen Bild ist, welches das Objekt beinhaltet.
  13. Verfahren nach einem der Ansprüche 10 bis 12, wobei das Konfigurieren umfasst: Erkennen, durch die zumindest eine Rechenvorrichtung, von Orientierungspunkten des Quellobjekts; Anpassen, durch die zumindest eine Rechenvorrichtung, eines dreidimensionalen Modells an das Quellobjekt basierend auf den Orientierungspunkten, um das Quellobjekt so zu konfigurieren, dass es die Manipulation im dreidimensionalen Raum unterstützt; und wobei die Änderung der Perspektive des konfigurierten Objekts auf der Anpassung an das dreidimensionale Modell beruht.
  14. Verfahren nach einem der Ansprüche 9 bis 13, wobei Teilen der zweidimensionalen Texturkarte semantische Etiketten zugeordnet sind, und weiter umfassend Steuern und/oder Kontrollieren, durch die Rechenvorrichtung, des Bemalens der Teile der zweidimensionalen Texturkarte basierend zumindest teilweise auf den semantischen Etiketten.
  15. Verfahren nach Anspruch 14, wobei das Steuern und/oder Kontrollieren ein Verhindern des Auftragens der digitalen Bemalung auf mindestens einen Teil der zweidimensionalen Texturkarte basierend auf einem entsprechenden semantischen Etikett umfasst.
  16. In einer digitalen Medienumgebung zur Verbesserung der digitalen Bemalung eines Objekts in einem zweidimensionalen digitalen Bild mittels der Verwendung von Perspektiven, ein System, umfassend: Mittel zum Erkennen von Orientierungspunkten des Objekts in dem zweidimensionalen digitalen Bild; Mittel zum Anpassen eines dreidimensionalen Modells an das Objekt basierend auf den Orientierungspunkten, um das Objekt so zu konfigurieren, dass es die Manipulation im dreidimensionalen Raum in einer Benutzerschnittstelle unterstützt; und Mittel zum digitalen Bemalen des Objekts in einer Benutzerschnittstelle durch Ändern einer Perspektive des konfigurierten Objekts, wie sie in einer Benutzerschnittstelle angezeigt ist, in Antwort auf eine Benutzereingabe, um das konfigurierte Objekt im dreidimensionalen Raum zu manipulieren, und zum Bemalen einer zweidimensionalen Texturkarte des zweidimensionalen digitalen Bildes basierend auf der spezifizierten digitalen Bemalung.
  17. System nach Anspruch 16, wobei die Mittel zum Erkennen konfiguriert sind, eine Benutzereingabe zum Initiieren des Bemalens des Objekts in dem zweidimensionalen digitalen Bild zu empfangen, welche das Objekt in dem zweidimensionalen digitalen Bild aus einer Vielzahl von Objekten in dem zweidimensionalen digitalen Bild spezifiziert.
  18. System nach Anspruch 16 oder 17, wobei die Mittel zum digitalen Bemalen konfiguriert sind, die digitale Bemalung von der zweidimensionalen Texturkarte auf eine andere zweidimensionale Textur eines anderen Objekts zu transferieren.
  19. System nach Anspruch 18, wobei das andere Objekt in einem zweidimensionalen digitalen Bild enthalten ist, das unterschiedlich von dem zweidimensionalen digitalen Bild ist, welches das Objekt enthält.
  20. System nach einem der Ansprüche 16 bis 19, wobei das Objekt ein Gesicht ist.
DE102017007714.2A 2016-10-19 2017-08-16 Verbessertes Bemalen von Objekten durch die Verwendung von Perspektiven oder Transfers in einer digitalen Medienumgebung Pending DE102017007714A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/297,938 2016-10-19
US15/297,938 US10755459B2 (en) 2016-10-19 2016-10-19 Object painting through use of perspectives or transfers in a digital medium environment

Publications (1)

Publication Number Publication Date
DE102017007714A1 true DE102017007714A1 (de) 2018-04-19

Family

ID=60037282

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017007714.2A Pending DE102017007714A1 (de) 2016-10-19 2017-08-16 Verbessertes Bemalen von Objekten durch die Verwendung von Perspektiven oder Transfers in einer digitalen Medienumgebung

Country Status (5)

Country Link
US (1) US10755459B2 (de)
CN (1) CN107967709B (de)
AU (1) AU2017213546B2 (de)
DE (1) DE102017007714A1 (de)
GB (1) GB2555521B (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11922540B2 (en) 2020-02-14 2024-03-05 Perfect Mobile Corp. Systems and methods for segment-based virtual application of facial effects to facial regions displayed in video frames
US11404086B2 (en) 2020-02-14 2022-08-02 Perfect Mobile Corp. Systems and methods for segment-based virtual application of makeup effects to facial regions displayed in video frames

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9518530D0 (en) * 1995-09-11 1995-11-08 Informatix Inc Image processing
US6268865B1 (en) * 1998-01-13 2001-07-31 Disney Enterprises, Inc. Method and apparatus for three-dimensional painting
JP2000090289A (ja) * 1998-07-13 2000-03-31 Sony Corp 画像処理装置および画像処理方法、並びに媒体
US8660319B2 (en) * 2006-05-05 2014-02-25 Parham Aarabi Method, system and computer program product for automatic and semi-automatic modification of digital images of faces
US8040355B2 (en) * 2007-07-23 2011-10-18 Disney Enterprises, Inc. Three-dimensional location-based texture transfers
US8482569B2 (en) * 2008-08-28 2013-07-09 Pixar Mesh transfer using UV-space
US20090231356A1 (en) * 2008-03-17 2009-09-17 Photometria, Inc. Graphical user interface for selection of options from option groups and methods relating to same
JP4569670B2 (ja) 2008-06-11 2010-10-27 ソニー株式会社 画像処理装置、画像処理方法およびプログラム
US8587608B2 (en) * 2008-08-29 2013-11-19 Adobe Systems Incorporated Preventing pixel modification of an image based on a metric indicating distortion in a 2D representation of a 3D object
US8654143B2 (en) 2009-09-30 2014-02-18 Adobe Systems Incorporated System and method for non-uniform loading of digital paint brushes
US9202309B2 (en) * 2011-09-01 2015-12-01 Adobe Systems Incorporated Methods and apparatus for digital stereo drawing
US8908904B2 (en) * 2011-12-28 2014-12-09 Samsung Electrônica da Amazônia Ltda. Method and system for make-up simulation on portable devices having digital cameras
EP2755164A3 (de) 2013-01-09 2017-03-01 Samsung Electronics Co., Ltd Anzeigevorrichtung und Steuerungsverfahren zur Anpassung der Augen eines fotografierten Benutzers
GB201502018D0 (en) 2015-02-06 2015-03-25 Knyttan Ltd 2D graphical coding to create a 3D image

Also Published As

Publication number Publication date
US10755459B2 (en) 2020-08-25
CN107967709B (zh) 2023-06-20
CN107967709A (zh) 2018-04-27
GB2555521A (en) 2018-05-02
AU2017213546B2 (en) 2021-12-02
AU2017213546A1 (en) 2018-05-10
GB2555521B (en) 2021-04-07
GB201713605D0 (en) 2017-10-11
US20180108160A1 (en) 2018-04-19

Similar Documents

Publication Publication Date Title
DE102020110662A1 (de) Simultane positionsbestimmung und kartenerstellung (slam) für mehrere benutzer
DE112019005750T5 (de) Erlernen des Erzeugens synthetischer Datensätze zum Trainieren neuronalerNetze
DE102017010210A1 (de) Bild-Matting mittels tiefem Lernen
DE102018006247A1 (de) Digitalbildvervollständigung unter Verwendung des Deep Learning
DE102017009049A1 (de) Ermöglichen von Transformationen Skizze-zu-Gemälde
DE102006032484B4 (de) Auf Gesichtsmerkmale örtlich begrenztes und umfassendes Echtzeit-Video-Morphing
CN111754517A (zh) 使用神经网络的交互式图像抠图
US20110316845A1 (en) Spatial association between virtual and augmented reality
US11010932B2 (en) Method and apparatus for automatic line drawing coloring and graphical user interface thereof
DE102017007967A1 (de) Verarbeiten und rendern eines dreidimensionalen Modells
US20140289663A1 (en) Producing Artwork Based on an Imported Image
DE112019000687T5 (de) Fotorealistische dreidimensionale texturierung unter verwendung kanonischer ansichten und eines zweistufigen ansatzes
DE112016002711T5 (de) Darstellung von virtuellem Realität-Inhalt einschliesslich Gesichtspunktübergängen um Simulatorkrankheit zu verhindern
DE102017012116A1 (de) Vorschauerzeugung aus panoramischen Bildern
DE102018001136A1 (de) Interaktive Farbpalettenschnittstelle zum digitalen Malen
DE102016014188A1 (de) Erzeugung eines 3-D-Modells aus 2-D-Bildern
DE102020007465A1 (de) Steuern bzw. Regeln eines neuronalen Netzwerkes durch zwischengeschaltete Latenträume
EP3718086A1 (de) Avataranimation
DE102014011901A1 (de) Auf einem Vorrichtungskontext basierende Benutzerschnittstelle
DE102015009222A1 (de) Malpinsel- und Flüssigkeitssimulation
DE112022002079T5 (de) Hochpräzise semantische bildbearbeitung mit neuronalen netzen für systeme und anwendungen zur erzeugung synthetischer daten
DE202016107451U1 (de) Systeme zur interaktiven Darstellung eines sichtbaren Teils einer Rendering-Oberfläche auf einem Benutzergerät
DE102019005884A1 (de) Schnittstellen und Techniken zum Einpassen von 2D-Anleitungsvideos in 3D-Tutorials in der virtuellen Realität
DE102017007714A1 (de) Verbessertes Bemalen von Objekten durch die Verwendung von Perspektiven oder Transfers in einer digitalen Medienumgebung
DE112020000725T5 (de) Objektpositionierung und bewegung in dreidimensionalem inhalt

Legal Events

Date Code Title Description
R081 Change of applicant/patentee

Owner name: ADOBE INC., SAN JOSE, US

Free format text: FORMER OWNER: ADOBE SYSTEMS INCORPORATED, SAN JOSE, CALIF., US

R082 Change of representative

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

R012 Request for examination validly filed