DE102018006050A1 - Parallaxenkorrektur in der Virtuellen Realität - Google Patents

Parallaxenkorrektur in der Virtuellen Realität Download PDF

Info

Publication number
DE102018006050A1
DE102018006050A1 DE102018006050.1A DE102018006050A DE102018006050A1 DE 102018006050 A1 DE102018006050 A1 DE 102018006050A1 DE 102018006050 A DE102018006050 A DE 102018006050A DE 102018006050 A1 DE102018006050 A1 DE 102018006050A1
Authority
DE
Germany
Prior art keywords
perspective
triangle
digital content
module
generating
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
DE102018006050.1A
Other languages
English (en)
Inventor
Stephen Joseph DiVerdi
Ana Belén Serrano Pacheu
Aaron Phillip Hertzmann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Inc filed Critical Adobe Inc
Publication of DE102018006050A1 publication Critical patent/DE102018006050A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/122Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/128Adjusting depth or disparity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/271Image signal generators wherein the generated image signals comprise depth maps or disparity maps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • H04N13/279Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals the virtual viewpoint locations being selected by the viewers or determined by tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Optics & Photonics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

Beschrieben werden der Parallaxenkorrektur in der Virtuellen Realität dienende Techniken und Systeme, die dafür konfiguriert sind, die Parallaxe für einen VR-Digitalcontent, der von einem einzigen Ursprungspunkt aus aufgenommen worden ist, zu korrigieren. Bei einem Beispiel wird ein Parallaxenkorrekturmodul eingesetzt, um Artefakte mit Entstehung bei einer Änderung von dem dem VR-Digitalcontent entsprechenden Ursprungspunkt zu einem neuen Sichtpunkt in Bezug auf eine Ausgabe des VR-Digitalcontents zu korrigieren. Es kann eine Vielzahl von Techniken seitens des Parallaxenkorrekturmoduls zur Parallaxenkorrektur eingesetzt werden. Beispiele für diese Techniken beinhalten eine Tiefenfilterung, eine Grenzidentifizierung, eine Verwischungsdetektion, eine Netzbeschneidung, eine Zuverlässigkeitsschätzung, eine Unscharfstellung und eine Fehlerdiffusion, die in der Beschreibung erläutert werden.

Description

  • Hintergrund
  • Bei VR-Digitalcontent (Virtuelle Realität VR), so beispielsweise bei VR-Digitalvideos oder VR-Digitalbildern, werden Kamerasysteme (beispielsweise eine Feldanordnung von Digitalkameras) zur Aufnahme von Bildszenen einer physischen Umgebung eingesetzt. Im Ergebnis wirkt der Ort des Kamerasystems innerhalb der physischen Umgebung beim Betrachten des Contents als Ursprungspunkt in Bezug auf den VR-Digitalcontent. Um den VR-Digitalcontent wiederzugeben, werden beispielsweise Panoramadigitalbilder für das linke und das rechte Auge von einer VR-Vorrichtung als stereoskopische Bilder zur Unterstützung der Tiefenwirkung angezeigt. Als Ergebnis dessen kann ein Nutzer mit verschiedenen Orientierungen in Bezug auf diese Anzeige am Ursprungspunkt durch Interaktion mit der VR-Vorrichtung, so beispielsweise durch eine Drehbewegung seines Kopfes, „herumschauen“.
  • Diese Technik bringt jedoch Probleme mit sich, da das Kamerasystem auf das vom Ursprungspunkt aus erfolgende Aufnehmen der physischen Umgebung beschränkt ist, weshalb die Anzeige des Contents durch herkömmliche VR-Vorrichtungen auf den Ursprungspunkt beschränkt ist. Obwohl der Nutzer zur korrekten Betrachtung verschiedener Teile der Bildszene eine Drehbewegung seines Kopfes vornehmen kann, wird beispielsweise eine Neupositionierung (beispielsweise eine Verschiebung) des Kopfes des Nutzers (beispielsweise zur Seite, nach oben und unten) nicht unterstützt oder führt zu einem Nichtfunktionieren der korrekten Aktualisierung der Ausgabe des VR-Digitalcontents durch herkömmliche VR-Vorrichtungen. Dies rührt daher, dass herkömmliche VR-Vorrichtungen die tiefenabhängige Parallaxe, bei der Objekte in der Bildszene in der Nähe des Ursprungspunktes (beispielsweise der Kamera) ein größeres Bewegungsausmaß als Objekte in größerer Entfernung vom Ursprungspunkt in der Bildszene aufweisen, nicht korrekt aktualisieren. Der Parallaxeneffekt hat eine starke Tiefenwirkung, die von Menschen genutzt wird, um reale Szenen korrekt zu deuten. Das Nichtfunktionieren der korrekten Reproduktion der Parallaxentiefenwirkung durch herkömmliche VR-Vorrichtungen beeinträchtigt daher die Wirklichkeitsnähe der Bildszene und kann sogar Übelkeit beim Nutzer hervorrufen, da das, was der Nutzer anschaut, der Bewegung des Kopfes des Nutzers zwischen verschiedenen Positionen nicht folgt.
  • Herkömmliche Techniken und Systeme, die zum Ausgleich dieses Problems verwendet werden, bedingen ein erheblich aufwändigeres Aufnehmen von Bildszenen und/oder erheblich kostenintensivere Vorrichtungen. Bei einem herkömmlichen Beispiel wird ein Kamerasystem verwendet, das mehrere Bilder einer statischen Szene aus verschiedenen Positionen aufnimmt. Diese herkömmliche Technik ist allerdings auf statische Szenen beschränkt und im Ergebnis nicht für andere Typen von VR-Digitalcontent, so beispielsweise für VR-Digitalvideos, geeignet. Bei einem anderen herkömmlichen Beispiel wird eine Lichtfeldkamera zur Aufnahme von einfallendem Licht einer Bildszene an mehreren verschiedenen Positionen verwendet. Lichtfeldkameras sind jedoch um Größenordnungen kostenintensiver als Kamerasysteme, die zum von einem einzigen Ursprungspunkt aus erfolgenden Aufnehmen von Bildszenen verwendet werden, und sind zudem nur begrenzt verfügbar.
  • Zusammenfassung
  • Es werden der Parallaxenkorrektur in der Virtuellen Realität dienende Techniken und Systeme beschrieben, die dafür konfiguriert sind, die Parallaxe von VR-Digitalcontent, der von einem einzigen Ursprungspunkt aus (beispielsweise für jedes Frame eines Videos oder eines statischen Digitalbildes) aufgenommen wird, zu korrigieren, um von jenem einzigen Ursprungspunkt weg erfolgende Positionsänderungen (beispielsweise Verschiebungen) zu unterstützen. Auf diese Weise sind diese Techniken in einem weiten Bereich von VR-Digitalcontents, die unter Verwendung gängiger Vorrichtungen aufgenommen werden können, einsetzbar. Die Techniken verbessern zudem die nutzerseitige Interaktion mit dem VR-Digitalcontent, damit dieser natürlich aussieht und eine realitätsnahe Interaktion mit einer Bildszene, die von dem VR-Digitalcontent aufgenommen wird, sogar in Echtzeit nachahmt, was bei Verwendung herkömmlicher Techniken nicht möglich ist.
  • Bei einem Beispiel wird ein Parallaxenkorrekturmodul eingesetzt, um Artefakte zu korrigieren, die bei einer Änderung des Sichtpunktes in Bezug auf eine Ausgabe des VR-Digitalcontents, so beispielsweise bei einer verschiebungsbedingten Neupositionierung des Kopfes eines Nutzers zur Seite, nach oben und unten und dergleichen mehr, verursacht werden. Es kann eine Vielzahl von Techniken seitens des Parallaxenkorrekturmoduls eingesetzt werden, um diese Artefakte zu korrigieren und die Parallaxe auszugleichen. Beispiele für diese Techniken beinhalten die Tiefenfilterung, die Grenzidentifikation, die Verwischungsdetektion, die Netzbeschneidung, die Zuverlässigkeitsschätzung, die Unscharfstellung und die Fehlerdiffusion, die in den nachfolgenden Sektionen noch beschrieben werden.
  • Die vorliegende Zusammenfassung bietet in vereinfachter Form eine Auswahl von Konzepten, 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 bei der Bestimmung des Umfangs des beanspruchten Erfindungsgegenstandes verwendet werden.
  • Figurenliste
  • Die Detailbeschreibung erfolgt anhand der begleitenden Figuren. In den Figuren dargestellte Entitäten können eine oder mehrere Entitäten angeben, weshalb Verweise auf eine oder mehrere Formen der Entitäten in der Diskussion gleichwertig vorgenommen werden können.
    • 1 ist eine Darstellung einer Umgebung bei einer exemplarischen Implementierung, die bei den hier beschriebenen Techniken zur Parallaxenkorrektur in der Virtuellen Realität verwendbar ist.
    • 2 beschreibt ein Beispiel für eine Positionsänderung (beispielsweise eine Verschiebebewegung) von einem Ursprungspunkt, der zum Betrachten von VR-Digitalcontent verwendet wird, zu einem anderen Sichtpunkt.
    • 3 zeigt ein System einer exemplarischen Implementierung zur detaillierteren Darstellung des Betriebs eines Contentverwaltermoduls und eines Parallaxenkorrekturmoduls von 1 wie auch eines Contentwiedergabemoduls.
    • 4 zeigt eine exemplarische Implementierung zur Darstellung einer Orientierungsänderung in Bezug auf eine Ausgabe von VR-Digitalcontent.
    • 5 zeigt eine exemplarische Implementierung zur Darstellung einer Positionsänderung in Bezug auf eine Ausgabe von VR-Digitalcontent.
    • 6 zeigt eine exemplarische Implementierung zur detaillierteren Darstellung des Betriebs eines Tiefenfiltermoduls des Parallaxenkorrekturmoduls.
    • 7 zeigt eine exemplarische Implementierung zur detaillierteren Darstellung des Betriebs eines Grenzidentifikationsmoduls des Parallaxenkorrekturmoduls.
    • 8 zeigt eine exemplarische Implementierung zur detaillierteren Darstellung des Betriebs eines Verwischungsdetektionsmoduls des Parallaxenkorrekturmoduls.
    • 9 und 10 zeigen exemplarische Implementierungen zur detaillierteren Darstellung des Betriebs eines Zuverlässigkeitsschätzungsmoduls des Parallaxenkorrekturmoduls.
    • 11 zeigt eine exemplarische Implementierung zur detaillierteren Darstellung des Betriebs eines Netzbeschneidungsmoduls des Parallaxenkorrekturmoduls.
    • 12 zeigt eine exemplarische Implementierung zur detaillierteren Darstellung des Betriebs eines Unscharfstellmoduls des Contentwiedergabemoduls von 3.
    • 13 zeigt eine exemplarische Implementierung zur detaillierteren Darstellung des Betriebs eines Fehlerdiffusionsmoduls des Contentwiedergabemoduls.
    • 14 ist ein Flussdiagramm zur Darstellung einer Prozedur bei einer exemplarischen Implementierung, bei der Parallaxenkorrekturen an VR-Digitalcontent zur Unterstützung einer Perspektivenänderung vorgenommen werden.
    • 15 zeigt ein exemplarisches System, das verschiedene Komponenten einer exemplarischen Vorrichtung beinhaltet, die als ein Typ von Rechenvorrichtung implementiert sein kann und die anhand 1 bis 14 beschrieben worden ist und/oder verwendet wird, um Ausführungsformen der hier beschriebenen Techniken zu implementieren.
  • Detailbeschreibung
  • Übersicht
  • Beschrieben werden der Parallaxenkorrektur in der Virtuellen Realität dienende Techniken und Systeme, die dafür konfiguriert sind, die Parallaxe von VR-Digitalcontent, der einen einzigen Ursprungspunkt (beispielsweise für jedes Frame eines Videos oder ein statisches Digitalbild) aufweist, zu korrigieren, um von jenem einzigen Ursprungspunkt weg erfolgende Positionsänderungen (beispielsweise Verschiebungen) zu unterstützen. Beinhalten kann dies das von einem einzigen Ursprungspunkt, beispielsweise einem Kamerasystem, aus erfolgende Aufnahmen, das Offline-Wiedergeben von Computergrafiken und dergleichen mehr. Auf diese Weise sind diese Techniken in einem weiten Bereich von VR-Digitalcontent einsetzbar, der unter Verwendung gängiger Vorrichtungen von einem einzigen Ursprungspunkt aus in Echtzeit aufgenommen werden kann. Des Weiteren verbessern die Techniken die nutzerseitige Interaktion mit dem VR-Digitalcontent, damit dieser natürlich aussieht und eine wirklichkeitsnahe Interaktion mit einer Bildszene, die von dem VR-Digitalcontent aufgenommen wird, nachahmt, was bei Verwendung herkömmlicher Techniken nicht möglich ist.
  • Bei einem Beispiel wird VR-Digitalcontent von einer VR-Vorrichtung, so beispielsweise von VR-Datenbrillen (Goggles) zum Betrachten eines VR-Digitalvideos, empfangen. Der VR-Digitalcontent wird einer Tiefenkarte (depth map) zugeordnet, die zusammen mit dem VR-Digitalcontent von einem Kamerasystem aufgenommen werden kann, aus stereoskopischen Digitalbildern, die als Teil des VR-Digitalcontents (beispielsweise auf Grundlage der Disparität) beinhaltet sind, berechnet werden kann, und dergleichen mehr. Der VR-Digitalcontent wird bei diesem Beispiel von einem einzigen Ursprungspunkt aus, beispielsweise von einem einzigen Ursprungspunkt aus für jeweilige Frames eines VR-Digitalvideos, aufgenommen. Um den VR-Digitalcontent wiederzugeben, erzeugt die VR-Vorrichtung ein Ursprungsdreiecksnetz, das Pixel und dreidimensionale Orte jener Pixel beinhaltet.
  • Die VR-Vorrichtung detektiert bei diesem Beispiel sodann eine Positionsänderung eines Nutzers unter Verwendung eines oder mehrerer Sensoren, so beispielsweise eine Positionsänderung im Stile einer Verschiebung zur Seite, nach oben und unten und dergleichen mehr, unter Verwendung eines Akzelerometers, einer Radarvorrichtung und dergleichen mehr. Die Positionsänderung des Nutzers ist von einer Orientierungsänderung des Nutzers verschieden, die beispielsweise beim „Herumschauen“ auf einer Anzeige des VR-Digitalcontents eingesetzt wird, obwohl die Orientierungsänderung bei diesem Beispiel auch von der VR-Vorrichtung detektiert und ausgeglichen werden kann.
  • In Reaktion hierauf erzeugt ein VR-Contentverwaltermodul der VR-Vorrichtung ein Perspektivendreiecksnetz zum Ausgleichen der Positionsänderung aus dem Ursprungsdreiecksnetz, das zur Wiedergabe des VR-Digitalcontents am Ursprung, wie vorstehend beschrieben worden ist, verwendet wird. Das Perspektivendreiecksnetz definiert beispielsweise eine Topologie in drei Dimensionen des Ursprungsdreiecksnetzes entsprechend einer Betrachtung auf Grundlage der Positionsänderung. Das Perspektivendreiecksnetz kann jedoch infolge dieser Änderung durch eine nicht korrekte Simulation der Parallaxe in dem Perspektivendreiecksnetz Artefakte entstehen lassen.
  • Entsprechend wird ein Parallaxenkorrekturmodul eingesetzt, um diese Artefakte derart zu korrigieren, dass ein korrigiertes Parallaxendreiecksnetz erzeugt wird, um den VR-Digitalcontent derart wiederzugeben, dass er bei Betrachtung durch einen Nutzer natürlich aussieht. Es kann eine Vielzahl von Techniken seitens des Parallaxenkorrekturmoduls zur Parallaxenkorrektur eingesetzt werden, wofür in den folgenden Abschnitten Beispiele beschrieben werden, darunter die Tiefenfilterung (6), die Grenzidentifikation (7), die Verwischungsdetektion (8), die Zuverlässigkeitsschätzung (9 und 10), die Netzbeschneidung (11), die Unscharfstellung (12) und die Fehlerdiffusion (13). Diese Techniken können allein oder in Kombination von dem Parallaxenkorrekturmodul der VR-Vorrichtung in Echtzeit eingesetzt werden, weshalb sie rechentechnisch effizient sind und den Betrieb der VR-Vorrichtung verbessern. Die Techniken sind zudem bei VR-Digitalcontent einsetzbar, der an einem einzigen Ursprungspunkt aufgenommen worden ist, und können daher in einem weiten Bereich von bestehendem VR-Digitalcontent eingesetzt werden, was bei Verwendung herkömmlicher VR-Vorrichtungen nicht möglich ist.
  • In der nachfolgenden Diskussion wird zunächst eine exemplarische Umgebung beschrieben, in der die hier beschriebenen Techniken eingesetzt werden können. Beispiele für Parallaxenkorrekturtechniken werden sodann unter Einsatz dieser Umgebung beschrieben. Zudem wird eine exemplarische Prozedur beschrieben, die in der exemplarischen Umgebung wie auch in anderen Umgebungen durchgeführt werden kann. Infolgedessen ist das Leistungsvermögen der exemplarischen Prozedur nicht auf die exemplarische Umgebung beschränkt, und die exemplarische Umgebung ist nicht auf das Leistungsvermögen der exemplarischen Prozedur beschränkt.
  • Exemplarische Umgebung
  • 1 ist eine Darstellung einer Digitalmediumumgebung 100 bei einer exemplarischen Implementierung, in der die hier beschriebenen der Parallaxenkorrektur in der Virtuellen Realität dienenden Techniken betreibbar sind. Die dargestellte Umgebung 100 beinhaltet eine VR-Vorrichtung 102 und einen Nutzer 104, der derart dargestellt ist, dass er mit einer wiedergegeben Ausgabe 108 des VR-Digitalcontents 106 durch die VR-Vorrichtung 102, beispielsweise in einem Wohnzimmer, interagiert. Der VR-Digitalcontent 106 ist derart dargestellt, dass er in einer Speichervorrichtung 110, so beispielsweise auf einem computerlesbaren Speichermedium, das nachstehend anhand 15 noch beschrieben wird, so, wie er von einem Kamerasystem 112 empfangen wird, gespeichert wird.
  • Die VR-Vorrichtung 102 kann auf vielerlei Arten konfiguriert sein, so beispielsweise als Brille oder Datenbrille (Goggles), die ein Nutzer 104, wie dargestellt ist, am Kopf trägt, als Mobiltelefon oder Tablet, als tragbare Vorrichtung, als eigenständige Vorrichtung (beispielsweise Schild) und dergleichen mehr. Die VR-Vorrichtung 102 beinhaltet bei diesem Beispiel eine Anzeigevorrichtung 114, Sensoren 116, ein VR-Contentverwaltermodul 118 und ein Parallaxenkorrekturmodul 120.
  • Das Kamerasystem 112 ist dafür konfiguriert, Digitalbilder 122 als Teil des VR-Digitalcontents 106 aufzunehmen. Dies kann als einzelnes Stereo-RGB-Video (Rot, Grün, Blau RGB) durchgeführt werden und wird einer Tiefenkarte 124 zugeordnet, die gegebenenfalls separat als Teil des VR-Digitalcontents 106 aufgenommen werden kann. Die VR-Vorrichtung 102 kann beispielsweise Sensoren 116 beinhalten, so beispielsweise strukturierte Gitteranordnungen, Time-of-Flight-Kameras und dergleichen mehr, um 3D-Koordinaten 128 von Pixeln 126, die in dem Digitalbild 122 beinhaltet sind, zu detektieren. In einem anderen Fall werden die Tiefenkarte 124 und die zugeordneten 3D-Koordinaten 128 der Pixel 126 aus den Digitalbildern 122 selbst, beispielsweise auf Grundlage der von entsprechenden Pixeln 126 in den stereoskopischen Digitalbildern 122 gezeigten Disparität, bestimmt. Eine Vielzahl weiterer Beispiele ist einbezogen, darunter die Verwendung von neuronalen Netzwerken als Teil des Maschinenlernens, die zur Herleitung der Tiefe und daher der 3D-Koordinaten der jeweiligen Pixel 126 in den Digitalbildern 122 verwendet werden.
  • Der VR-Digitalcontent 106 ist zudem dafür konfiguriert, von der VR-Vorrichtung 102 wiedergegeben zu werden. Diese Wiedergabe kann unter Verwendung einer Vielzahl von Ausgabevorrichtungen der VR-Vorrichtung 102 erfolgen. Ein Beispiel hierfür ist als Anzeigevorrichtung 114 dargestellt, die dafür konfiguriert ist, die optische Ausgabe des VR-Digitalcontents 106 an den Nutzer 104, beispielsweise für das linke und das rechte Auge des Nutzers 104, unter Verwendung stereoskopischer Digitalbilder 122 zu unterstützen. Weitere Beispiele für Ausgabevorrichtungen, die als Teil der VR-Vorrichtung 102 beinhaltet sein können, beinhalten eine Audioausgabe (beispielsweise über Lautsprecher), eine berührungsbasierte bzw. taktile Ausgabe (beispielsweise über eine haptische Vorrichtung) und dergleichen mehr. Auf diese Weise kann die Ausgabe des VR-Digitalcontents 106 dafür konfiguriert sein, eine immersive Wahrnehmung zu unterstützen, bei der ein Nutzer meint, „er wäre mittendrin“.
  • Beim vorliegenden Beispiel ist der VR-Digitalcontent 106 derart konfiguriert, dass jedes Digitalbild 112 (entweder für sich oder als Teil einer Abfolge von Frames) von einem einzigen Sichtpunkt (also Ort) aus, der im Folgenden Ursprungspunkt des Digitalbildes 122 genannt wird, aufgenommen wird. Das Digitalbild 122 kann beispielsweise als panoramisches Bild konfiguriert sein, das die Ansicht verschiedener Abschnitte des Bildes durch eine Drehbewegung des Kopfes des Nutzers 104 unterstützt, um beispielsweise wie bei dem dargestellten Beispiel auf verschiedene Teile eines Wohnzimmers zu schauen.
  • Wie vorstehend beschrieben worden ist, bewirkt diese Beschränkung des VR-Digitalcontents 106 Probleme bei herkömmlichen VR-Vorrichtungen mit Blick auf die Unterstützung von vom Ursprungspunkt weg erfolgenden Positionsänderungen, also bei Verschiebebewegungen zur Seite, nach oben und unten und dergleichen mehr. Die VR-Vorrichtung 102 kann beispielsweise eine von einem Ort zu einem anderen in Bezug auf die wiedergegebene Ausgabe 108 des VR-Digitalcontents erfolgende Positionsänderung des Nutzers 106 unter Verwendung der Sensoren 116, beispielsweise unter Verwendung eines Akzelerometers, einer Radarvorrichtung und dergleichen, detektieren. Diese Positionsänderung des Nutzers 104 ist daher von einer Orientierungsänderung des Nutzers 104 in Bezug auf die wiedergegebene Ausgabe 108, bei der der Nutzer 104 am Ursprungspunkt verbleibt, verschieden.
  • In Reaktion hierauf simuliert das VR-Contentverwaltermodul 118 eine Parallaxe, um die Positionsänderung auszugleichen. Dies kann zu Artefakten führen, die der Nutzer 104 durchaus wahrnimmt, so beispielsweise gezackte Kanten entlang einer Wand, verbundene Objekte, die in Wirklichkeit nicht verbunden sind, und dergleichen mehr. Entsprechend wird ein Parallaxenkorrekturmodul 120 von der VR-Vorrichtung 102 eingesetzt, damit der VR-Digitalcontent 106 bei der Wiedergabe diese Positionsänderung ausgleicht, sodass sich ein wirklichkeitsnahes und natürliches Aussehen ergibt.
  • 2 zeigt exemplarisch ein Beispiel 200 für eine Positionsänderung (beispielsweise eine Verschiebebewegung) von einem Ursprungspunkt 202, der zur Betrachtung des VR-Digitalcontents 106 verwendet wird, zu einem anderen Sichtpunkt 204. Wie bei diesem Beispiel dargestellt ist, ändert sich daher die Perspektive des Nutzers 104 in Bezug auf die Ausgabe des VR-Digitalcontents 106 durch die Verschiebebewegung von einem Ort zum anderen, ist also beispielsweise vom Ursprungspunkt verschieden. Es besteht ein Unterschied zu Orientierungsänderungen, bei denen verschiedene Abschnitte des VR-Digitalcontents 106 durch eine Dreh-, jedoch keine Verschiebebewegung, so beispielsweise beim „Herumschauen“ in einem Raum, betrachtet werden. Anwendbar sind diese Techniken daher bei dem VR-Digitalcontent 106, der an einem einzigen Ursprungspunkt aufgenommen worden ist, und können in einem weiten Bereich von bestehendem VR-Digitalcontent 106 eingesetzt werden, was bei Verwendung herkömmlicher VR-Vorrichtungen, die spezialisierte Vorrichtungen erfordern, nicht möglich ist. Diese spezialisierten Vorrichtungen benötigen zudem komplexe Speichermechanismen, die mehr. Rechen- und Speicherressourcen beanspruchen und die weit weniger als die kompakte 3D-Videodarstellung mittels äquirektangulärer Projektion (beispielsweise als sphärisches Panorama) erforscht sind, weshalb die hier beschriebenen Techniken eingesetzt werden können. Des Weiteren können die nachfolgenden Techniken von der VR-Vorrichtung 102 in Echtzeit ausgeführt werden und benötigen daher keine Vorverarbeitung des VR-Digitalcontents 106 vor Beginn der Ausgabe.
  • Im Allgemeinen können die Funktionalität sowie die Merkmale und Konzepte, die anhand der vorstehenden und nachstehenden Beispiele beschrieben werden, im Kontext der in diesem Abschnitt beschriebenen exemplarischen Prozeduren eingesetzt werden. Des Weiteren können die Funktionalität sowie die Merkmale und Konzepte, die anhand verschiedener Figuren und Beispiele in der vorliegenden Druckschrift beschrieben werden, untereinander ausgetauscht werden und sind nicht auf die Implementierung im Kontext einer bestimmten Figur oder Prozedur beschränkt. Blöcke, die verschiedenen dargestellten Prozeduren und den entsprechenden Figuren zugeordnet sind, können zudem gemeinsam Verwendung finden und/oder auf verschiedene Weisen kombiniert werden. Die jeweilige Funktionalität sowie die jeweiligen Merkmale und Konzepte, die hier anhand verschiedener exemplarischer Umgebungen, Vorrichtungen, Komponenten, Figuren und Prozeduren beschrieben werden, können in beliebigen geeigneten Kombinationen verwendet werden und sind nicht auf bestimmte Kombinationen, die bei den aufgeführten Beispielen in der vorliegenden Beschreibung dargestellt sind, beschränkt.
  • 3 zeigt ein System 300 bei einer exemplarischen Implementierung zur detaillierteren Darstellung des Betriebs des VR-Contentverwaltermoduls 118 und des Parallaxenkorrekturmoduls 120. Einleitend wird der VR-Digitalcontent 106 von dem VR-Contentverwaltermodul 118 empfangen. Der VR-Digitalcontent 106 kann beispielsweise von dem Kamerasystem 112 von 1 aufgenommen werden.
  • Der VR-Digitalcontent 106 beinhaltet ein Digitalbild 122 und eine Tiefenkarte 124. Die Tiefenkarte 124 kann auf vielerlei Arten erzeugt werden. Bei einem ersten Beispiel wird die Tiefenkarte 124 unter Verwendung von Tiefensensoren erzeugt, so beispielsweise unter Verwendung von strukturierten Lichtgittervorrichtungen, Time-of-Flight-Kameras, Radartechniken (beispielsweise mittels Rundsenden von Wi-Fi-Signalen) und dergleichen mehr. Bei einem weiteren Beispiel wird die Tiefenkarte 124 auf Grundlage der Digitalbilder 122 selbst erzeugt, so beispielsweise unter Verwendung von Standardcomputervisionstechniken, die gemeinsame Punkte zwischen den Bildern abgleichen, um deren Disparitäten und daher deren Tiefen zu berechnen. Unabhängig davon, ob die Tiefenkarte von Hardware aufgenommen oder unter Verwendung von Computervisionstechniken berechnet wird, kann die Tiefenkarte 124 die Disparitäten von Pixeln als Intensitäten codieren.
  • Beim vorliegenden Beispiel beginnt die Wiedergabe des VR-Digitalcontents 106 durch die VR-Vorrichtung 102 am Ursprungspunkt, sodass der VR-Digitalcontent 106 so wiedergegeben wird, wie er von einem jeweiligen Kamerasystem ursprünglich aufgenommen worden ist. Zu diesem Zweck wird der VR-Digitalcontent 106 von einem Dreiecksnetzerzeugungsmodul 302 verarbeitet, um ein Ursprungsdreiecksnetz 304 zu erzeugen. Das Ursprungsdreiecksnetz 304 wird erzeugt, um Pixel 126 an entsprechenden 3D-Koordinaten miteinander zu verbinden, so beispielsweise, um das RGBD-Digitalvideo zu bearbeiten, wobei jedes Pixel 126 „X“- und „Y“-Koordinaten sowie einen „Z“-Wert für die Tiefe zusammen mit einem Vertex-RGB-Farbwert erhält. Ebenfalls einbezogen sind andere Techniken, die dreidimensionale Koordinaten und Farbwerte beschreiben. Das Ursprungsdreiecksnetz 304 wird sodann von einem Contentwiedergabemodul 306 wiedergegeben, um wiedergegebene VR-Digitalcontents 308 zur Ausgabe durch die Anzeigevorrichtung 114 als Topografie zur Betrachtung durch den Nutzer 104, beispielsweise als stereoskopische Digitalbilder 122 zur Unterstützung der Tiefenwirkung, zu erzeugen.
  • Das VR-Contentverwaltermodul 118 beinhaltet zudem ein Perspektivendetektionsmodul 310, das ein Positionsbestimmungsmodul 312 und ein Orientierungsbestimmungsmodul 314 beinhaltet. Das Perspektivenbestimmungsmodul 312 ist in diesem Fall dafür konfiguriert zu detektieren, wann eine Perspektivenänderung bei einem Nutzer 104 infolge einer Bewegung weg vom Ursprungspunkt in Bezug auf die Ausgabe des VR-Digitalcontents 106 auftritt. Das Perspektivendetektionsmodul 312 kann (beispielsweise über eine API) beispielsweise Daten oder Signale von den Sensoren 116 empfangen und hieraus eine Positionsänderung (beispielsweise eine Verschiebebewegung) im Gegensatz zu einer Orientierungsänderung bestimmen.
  • Wie bei der exemplarischen Implementierung 400 von 4 gezeigt ist, sind die Sensoren 116 dafür konfiguriert, Orientierungsdaten 402 zu erzeugen, die von dem Orientierungsbestimmungsmodul 314 verwendbar sind, um eine wahrscheinliche Orientierung des Kopfes des Nutzers 104 beispielsweise im dreidimensionalen Raum zu verfolgen. Beim dargestellten Beispiel erfolgt dies zur Unterstützung dreier Freiheitsgrade (3DoF) als Drehung um eine seitliche Achse 404 (das heißt Nicken (pitch)), um eine senkrechte Achse 406 (das heißt Gieren (yaw)) und um eine Längsachse 408 (das heißt Rollen (roll)). Im Ergebnis sind die Orientierungsdaten 402 dafür verwendbar, Drehbewegungen des Kopfes des Nutzers 104 am Ursprungspunkt in Bezug auf die Aufnahme und die Ausgabe des VR-Digitalcontents 106 zu beschreiben.
  • Die Orientierungsdaten 402 können von einer Vielzahl von Arten von Sensoren 202, und zwar jeweils einzeln und in Kombination, erzeugt werden. Die Sensoren 116 können beispielsweise als Gyroskop, Akzelerometer, Magnetometer, Trägheitssensor und dergleichen mehr konfiguriert sein, um eine Bewegung, die der VR-Vorrichtung 102 zugeordnet ist, zu bestimmen. Beinhalten kann dies eine Bewegung der VR-Vorrichtung 102 selbst als Ganzes (beispielsweise eine Kopfbewegung) und/oder einer Steuerung bzw. Regelung, die kommunikationstechnisch mit der VR-Vorrichtung 102 beispielsweise unter Verwendung einer oder mehrerer Handsteuerungen bzw. Handregelungen gekoppelt ist. Bei einem weiteren Beispiel eines Headsets sind Licht emittierende Dioden (LEDs) am Umfang des Headsets angeordnet, um eine 360°-Verfolgung des Kopfes unter Verwendung einer externen Kamera, die von den Dioden emittiertes Licht detektiert, zu unterstützen.
  • Weitere Beispiele beinhalten die Nutzung des Sensors 116 als Kamera (beispielsweise Infrarotkamera) zur Detektion von Markierungen in einer physischen Umgebung, in der die VR-Vorrichtung 102 angeordnet ist (beispielsweise Ecken des in 1 dargestellten Tisches), und zur Detektion einer Bewegung in Bezug auf diese Markierungen durch Aufnahme aufeinanderfolgender Digitalbilder 122. Eine Vielzahl weiterer Beispiele ist ebenfalls einbezogen, darunter die Augenverfolgung, bei der eine Kamera zum Auge des Nutzers 114 (beispielsweise als Infrarotsensor) weist, um zu bestimmen, „wohin der Nutzer in Bezug auf Abschnitte der Anzeigevorrichtung 114 schaut“.
  • Unabhängig vom Format der Orientierungsdaten 402 ist das Orientierungsbestimmungsmodul 314 dafür konfiguriert, die Orientierungsdaten 402 zu einer Form zu abstrahieren, die die Orientierung beschreibt, die von dem VR-Contentwiedergabemodul 306 verwendet wird, um jeweilige Abschnitte des VR-Digitalcontents 106 wiederzugeben. Die Orientierungsdaten 402 können beispielsweise Orientierungsänderungen angeben, die dafür verwendbar sind, zwischen jeweiligen Abschnitten eines Frames des VR-Digitalcontents 106 am Ursprungspunkt zu navigieren. Auf diese Weise sind die Orientierungsdaten 402 zur Steuerung bzw. Regelung dessen verwendbar, welche Abschnitte des VR-Digitalcontents 106 (beispielsweise Abschnitte des Digitalbildes 122) von der Anzeigevorrichtung 114 am Ursprungspunkt in Bezug auf den VR-Digitalcontent 106 wiedergegeben werden und welche nicht.
  • Bei der exemplarischen Implementierung 500 von 5 sind die Sensoren 116 dafür konfiguriert, Positionsdaten 502 auszugeben, die von dem Positionsbestimmungsmodul 312 dafür verwendbar sind, eine Positionsänderung (beispielsweise durch eine Verschiebebewegung) derart zu bestimmen, dass verschiedene Perspektiven in Bezug auf eine wiedergegebene Ausgabe 108 des VR-Digitalcontents 106 verwirklicht werden. Bei dem dargestellten Beispiel bewegt sich der Nutzer 104 durch eine Verschiebebewegung beispielsweise von einem Ursprungspunkt 504 in Bezug darauf, wie der VR-Digitalcontent 106 aufgenommen worden ist, zu einem anderen Ort 506, der nicht der Ursprungspunkt 506 ist. Diese Ortsänderung kann von den Sensoren 116, so beispielsweise unter Verwendung eines Gyroskops, eines Akzelerometers, eines Magnetometers, eines Trägheitssensors, von Handsteuerungen bzw. Handregelungen, von Kameras zur Markierungsdetektion und dergleichen mehr, auf vielerlei Arten detektiert werden, um die der VR-Vorrichtung 102 zugeordnete Bewegung zu bestimmen. Die Positionsänderung und die entsprechende Perspektivenänderung in Bezug auf den VR-Digitalcontent 106 unterscheidet sich von der Orientierungsänderung gemäß 4, bei der der Nutzer am Ursprung verbleibt, an dem der VR-Digitalcontent 106 aufgenommen worden ist.
  • Wie wiederum in 3 dargestellt ist, werden von dem Perspektivendetektionsmodul 310 die Perspektivendaten 316 erzeugt, die die Perspektivenänderung beschreiben, die von der Bewegung weg vom Ursprungspunkt, beispielsweise einer dreidimensionalen Position eines Betrachters in Bezug auf den VR-Digitalcontent 106, verursacht wird. Die Orientierungsdaten 402 können ebenfalls erzeugt werden, um Orientierungsänderungen zu beschreiben. Die Perspektivendaten 316 werden sodann als Eingabe von dem Perspektivenänderungsmodul 318 empfangen und zur Erzeugung eines Perspektivendreiecksnetzes 320 unter Verwendung des Ursprungsdreiecksnetzes 304 verwendet.
  • Das Perspektivenänderungsmodul 318 kann das Perspektivendreiecksnetz 320 beispielsweise für einen Ausgleich dessen erzeugen, wie sich die Perspektive eines Nutzers in Bezug auf das Ursprungsdreiecksnetz 304 geändert hat. Dies erfolgt auf Grundlage einer Änderung der dreidimensionalen Koordinaten vom Ursprungspunkt zu dem Ort, der von den Perspektivendaten 304 beschrieben wird, sowie auf Grundlage dessen, wie jener Ort den 3D-Koordinaten 128 der Pixel 126 entspricht.
  • Wie vorstehend beschrieben worden ist, kann dies jedoch Artefakte als Teil des Perspektivendreiecksnetzes 320 entstehen lassen, die bei der Wiedergabe für den Nutzer sichtbar sind. Die Artefakte bedingten bislang, dass herkömmliche Techniken und Systeme auf eine Verarbeitung verzichten und stattdessen auf kostenintensive Kameras und die aufwändige Aufnahme von Bildern aus verschiedenen Perspektiven, die kein Video unterstützen, zurückgreifen. Entsprechend ist bei diesem Beispiel ein Parallaxenkorrekturmodul 120 dafür konfiguriert, ein korrigiertes Parallaxendreiecksnetz 322 zur Entfernung oder Minderung der Sichtbarkeit von Artefakten in dem Perspektivendreiecksnetz 320 zu erzeugen.
  • Das Parallaxenkorrekturmodul 120 kann eine Vielzahl von Funktionalitäten zur Parallaxenkorrektur einsetzen. Beispiele für diese Funktionalitäten sind durch entsprechende Module dargestellt und werden in der nachfolgenden Beschreibung detaillierter beschrieben, darunter ein Tiefenfiltermodul 324 (6), ein Grenzidentifikationsmodul 326 (7), ein Verwischungsdetektionsmodul 328 (8), ein Zuverlässigkeitsschätzungsmodul 330 (9 und 10) und ein Netzbeschneidungsmodul 332 ( 11). Beinhaltet sind zudem Korrekturtechniken, die von dem Contentwiedergabemodul 306 als Teil der Wiedergabe des VR-Digitalcontents 106 eingesetzt werden, wofür Beispiele ein Unscharfstellmodul 334 (12) und ein Fehlerdiffusionsmodul 336 ( 13) beinhalten. Die Funktionalitäten, die durch die entsprechenden Module dargestellt werden, können für sich oder in Kombination implementiert sein, um die Parallaxe in dem Perspektivendreiecksnetz 320 zu korrigieren, damit die Sichtbarkeit von Artefakten, die durch die Positionsänderung bei der Betrachtung der Topografie des Netzes hervorgerufen werden, verringert wird.
  • 6 zeigt eine exemplarische Implementierung 600 zur detaillierteren Darstellung des Betriebs des Tiefenfiltermoduls 324 des Parallaxenkorrekturmoduls 120. In der Praxis können Tiefenfehler des Perspektivendreiecksnetzes 320 klein sein und ein Auslaufen bzw. Ausfransen (bleeding) von Kanten von Dreiecken ineinander implizieren. In diesem Fall setzt das Tiefenfiltermodul 324 einen bilateralen Filter 602 und ein kantenspezifisches Glättungsmodul 604 ein, um Tiefenfilterdaten 606 zu erzeugen, um sowohl Bereiche zu glätten wie auch Diskontinuitäten im Zusammenhang mit der Tiefe in dem Perspektivendreiecksnetz 320 hervorzuheben.
  • Der bilaterale Filter 602 kann beispielsweise von dem Tiefenfiltermodul 120 als nichtlinearer und rauschverringernder Glättungsfilter für die Topografie des Perspektivendreiecksnetzes 320 eingesetzt werden. Zu diesem Zweck wird die Intensität eines jeden Pixels des Netzes durch einen gewichteten Durchschnitt von Intensitätswerten naheliegender Pixel ersetzt. Die Gewichtung kann beispielsweise auf einer Gauß'schen Verteilung beruhen und zudem radiometrische Differenzen, so beispielsweise Bereichsdifferenzen, Farbintensität, Tiefenabstand und dergleichen mehr, als Teil einer sechsdimensionalen Funktion berücksichtigen. Dies kann zur Glättung der Pixel 608 an demselben Objekt oder in einer ähnlichen Tiefe verwendet werden, wird jedoch nicht zur Glättung der Pixel 610, 612 für verschiedene Objekte oder stark verschiedene Tiefen verwendet. Auf diese Weise kann das Tiefenfiltermodul 324 Artefakte verringern, die als Teil der Erzeugung des Perspektivendreiecksnetzes 320 verursacht worden sind.
  • 7 zeigt eine exemplarische Implementierung 700 zur detaillierteren Darstellung des Betriebs des Grenzidentifikationsmoduls 326 des Parallaxenkorrekturmoduls 120. Bei diesem Beispiel ist das Grenzidentifikationsmodul 326 dafür konfiguriert, Grenzdaten 702 unter Verwendung eines Maschinenlernmoduls 704, das ein neuronales Netzwerk 706 implementiert, zu erzeugen. Das neuronale Netzwerk 706 beinhaltet ein Modell 708, das unter Verwendung des Maschinenlernens beim Trainieren von Digitalbildern dafür trainiert wird, Tiefendiskontinuitäten in Digitalbildern, die beispielsweise aus dem Perspektivendreiecksnetz 320 gebildet sind, zu identifizieren. Es kann eine Vielzahl neuronaler Netzwerke 706 eingesetzt werden, so beispielsweise faltungstechnische neuronale Deep-Netzwerke, faltungstechnische neuronale Netzwerke, überwachte neuronale Netzwerke und dergleichen mehr.
  • Die Grenzdaten 702, die die Grenzen Identifizieren, können sodann von dem Parallaxenkorrekturmodul 120 auf vielerlei Arten verwendet werden. Bei einem Beispiel werden die Grenzdaten 702 dafür verwendet, eine Tiefenkarte zu segmentieren und das Glättungsergebnis, wie vorstehend beschrieben worden ist, zu verbessern, indem stärkere Kantenrandbedingungen hinzugefügt werden, um eine bessere Schärfung von Kanten und eine Verringerung des Verlaufens bzw. Ausfransens (bleeding) zu erreichen. Bei einem weiteren Beispiel werden die Grenzdaten 702 dafür verwendet, dass das Netzbeschneidungsmodul 332, das anhand 11 noch detaillierter beschrieben wird, das Netz beschneidet. Weitere Beispiele, darunter die Verwendung von Werkzeugen, die über eine Nutzerschnittstelle zur manuellen Anpassung der Grenzdaten 714 bereitgestellt werden, sind ebenfalls einbezogen.
  • 8 zeigt eine exemplarische Implementierung 800 zur detaillierteren Darstellung des Betriebs des Verwischungsdetektionsmoduls 328 des Parallaxenkorrekturmoduls 220. Als Teil der Erzeugung des Perspektivendreiecksnetzes 320 wird eine Netztopologie erstellt, bei der jedes Pixel mit jedem benachbarten Pixel auch dann verbunden ist, wenn diese Pixel auf entgegengesetzten bzw. gegenüberliegenden Seiten einer Tiefendiskontinuität (beispielsweise der Silhouette einer Person vor einem Hintergrund) befindlich sind, was fehlerhafte „verwischte“ Dreiecke erzeugt. Entsprechend ist das Verwischungsdetektionsmodul 328 dafür konfiguriert, verwischte Dreiecke 802 in dem Perspektivendreiecksnetz 320, das sodann korrigiert werden kann, zu identifizieren, und zwar beispielsweise durch Filtern und Beschneiden des Netzes, wie anhand 11 noch beschrieben wird, und dergleichen mehr.
  • Das Verwischungsdetektionsmodul 328 kann die verwischten Dreiecke 802 auf vielerlei Arten identifizieren. Bei einem Beispiel wird ein Normalenvektoranalysemodul 804 verwendet, um die verwischten Dreiecke anhand dessen zu identifizieren, dass sie eine Oberflächennormale aufweisen, die (beispielsweise innerhalb eines Schwellenbetrages) nahezu senkrecht zur Sichtrichtung ist. Bei einem anderen Beispiel wird ein Dreieckskantenlängenanalysemodul 806 eingesetzt, um die verwischten Dreiecke anhand dessen zu identifizieren, dass sie wenigstens eine Kante aufweisen, die über einer Schwellenlänge ist. Bei einem weiteren Beispiel wird ein Dreiecksflächenanalysemodul 808 verwendet, um die verwischten Dreiecke 802 anhand dessen zu identifizieren, dass sie eine Oberflächenfläche aufweisen, die über einem Schwellenbetrag ist. Die verwischten Dreiecke 802 definieren daher Tiefendiskontinuitäten 810 in dem Perspektivendreiecksnetz 320, die sodann durch Filtern und/oder Netzbeschneiden korrigiert werden können.
  • 9 und 10 zeigen exemplarische Implementierungen 900, 1000 zur detaillierteren Darstellung des Betriebs des Zuverlässigkeitsschätzungsmoduls 330 des Parallaxenkorrekturmoduls 120. Tiefenkarten 124, die Digitalbilder 122 als Teil des VR-Digitalcontents 106 begleiten, werden als ein einziger Tiefenwert (beispielsweise als 3D-Koordinate 128) pro Pixel 126 ohne zusätzliche Information dargestellt. Diese Tiefenwerte sind jedoch Schätzungen, wobei einige Schätzungen gegenüber anderen Schätzungen größere Genauigkeit aufweisen. Entsprechend ist das Zuverlässigkeitsschätzungsmodul 330 bei diesem Beispiel dafür konfiguriert, Zuverlässigkeitswerte 902 zu erzeugen, die eine wahrscheinliche Genauigkeit der Pixeltiefenschätzung, das heißt der Zuverlässigkeitsgrades dahingehend, dass die Schätzung korrekt ist, angeben.
  • Bei diesem Beispiel werden die Zuverlässigkeitswerte 902 von einem Disparitätsbestimmungsmodul 904 auf Grundlage dessen erzeugt, wie ausgeprägt ein Treffer zwischen Pixelpaaren in den stereoskopischen Digitalbildern 906 ist. Dies bedeutet, dass für das Pixel 908 „p“ für ein stereoskopisches Bild für das linke Auge des Nutzers 104 mit zugeordneter Tiefe „d“ das entsprechende Pixel 910 für ein stereoskopisches Bild für das rechte Auge des Nutzers 104 zu finden ist. Es wird eine Umgebung „N“ um „p“ herum untersucht, um eine entsprechende Summe quadrierter Differenzen (SSD) mit der entsprechenden Umgebung „M“ um ein Pixel „q“ herum zu berechnen.
  • Wie in 10 gezeigt ist, werden Umgebungen 1002, 1004 durch Variieren der Anzahlen von Pixeln nach links oder rechts, beispielsweise „M1“, „M-1“, „M2“, „M-2“ und so weiter, verschoben. Ein exemplarischer Ausdruck der Zuverlässigkeitswerte 902 gibt die Disparität 1006 in Abhängigkeit von dem Fehler 1008 an. Eine guter Treffer und daher ein hoher Grad an Zuverlässigkeit weist einen niedrigen SSD-Wert bei „M1010 und einen hohen SSD-Wert 1020 bei umgebenden Pixeln, beispielsweise „M1“, „M-1“, „M2“, „M-2“ und so weiter, auf. Demgegenüber weist ein schlechter Treffer einen näheren SSD-Wert an jedem Ort und daher eine niedrigere Zuverlässigkeit auf. Die Differenz zwischen den Werten bei „M1“, „M-1“, „M2“, „M-2“ und so weiter wird als Zuverlässigkeit der Tiefe „d“ für das Pixel „p“ als Zuverlässigkeitswerte 902 unabhängig davon, wie die Tiefe ursprünglich berechnet worden ist, quantifiziert. Die Zuverlässigkeitswerte 902 werden sodann zur Unterstützung einer Vielzahl von Funktionalitäten verwendet, darunter das Unscharfstellen und das Netzbeschneiden, wie nachstehend noch beschrieben wird.
  • 11 zeigt eine exemplarische Implementierung 1100 zur detaillierteren Darstellung des Betriebs des Netzbeschneidungsmoduls 334 des Parallaxenkorrekturmoduls 120. Die exemplarische Implementierung 1100 wird unter Verwendung erster, zweiter und dritter Phasen 1102, 1104, 1106 dargestellt. Grenzkanten, die von dem Grenzidentifikationsmodul 326 als Teil der Grenzdaten 702 oder als Tiefendiskontinuitäten 810 identifiziert werden, werden bei diesem Beispiel beschnitten. Dies erfolgt durch Ersetzen einzelner Netzdreiecke, die „über Grenzkanten und Tiefendiskontinuitäten hinweg“ auftreten, durch zwei Netzdreiecke, und zwar eines für den Vordergrund und eines für den Hintergrund, mit Vertices an denselben „X/Y“-Positionen und mit verschiedenen „Z“-Tiefen. Dies kann auf vielerlei Arten erfolgen, so beispielsweise durch einen Pixelschattierer, der durch eine Grafikverarbeitungseinheit implementiert ist, um eine Echtzeitausgabe zu unterstützen. Dies wirkt im Sinne einer Verringerung optischer Artefakte, die durch verwischte Dreiecke, die über die Grenzkanten hinweg auftreten, verursacht werden.
  • Zu diesem Zweck identifiziert das Netzbeschneidungsmodul 332 zunächst, dass die Pixel 1108, 1110 an verschiedenen Seiten einer Tiefendiskontinuität auftreten (beispielsweise verschiedene Objekte implizieren) und durch eine Kante 1112 eines Netzdreiecks über diese Diskontinuität hinweg verbunden sind. Entsprechend erscheint die Kante 1112 bei einer Betrachtung durch den Nutzer von einem neuen Sichtpunkt 1114 aus, der nicht der Ursprungspunkt ist, als optischer Artefakt, wie in der ersten Phase 1102 gezeigt ist.
  • In der zweiten Phase 1104 wird die Kante 1112 des Netzes von dem Netzbeschneidungsmodul 332 beschnitten. Das Pixel 1116 wird sodann hinzugefügt, da es dieselben X/Y-Koordinaten des Pixels 1110, jedoch eine Tiefe, die zu dem Pixel 1108 passt, aufweist und über die Kante 1118 verbunden ist. Auf gleiche Weise wird das Pixel 1120 hinzugefügt, da es dieselben X/Y-Koordinaten des Pixels 1108, jedoch eine Tiefe, die zu dem Pixel 1110 passt, aufweist und über die Kante 1122 verbunden ist. Auf diese Weise werden zwei Dreiecke aus dem einem Dreieck, das den optischen Artefakt hervorgerufen hat, gebildet, indem das Netz beschnitten wird und indem der optische Artefakt bei einer Betrachtung von dem Sichtpunkt 1114 aus entfernt wird.
  • 12 zeigt eine exemplarische Implementierung 1200 zur detaillierteren Darstellung des Betriebs des Unscharfstellmoduls 334 des Contentwiedergabemoduls 306. Optische Artefakte, die bei der Erzeugung des Perspektivendreiecksnetzes 312 hervorgerufen werden, um einen neuen Sichtpunkt in Bezug auf die Ausgabe des VR-Digitalcontents 106 zu erzeugen, haben eine größere Wirkung auf die Wahrnehmung des Nutzers 104, wenn sie auffällig oder wahrnehmbar sind. Einige Typen von optischen Artefakten sind auffälliger als andere, so beispielsweise Kanten mit hohem Kontrast und zeitliches Zittern (temporal jitter). Demgegenüber ist die Unschärfe ein optischer Artefakt, der weniger auffällig ist, das heißt, der für den Nutzer 104 weniger wahrnehmbar ist.
  • Entsprechend wird bei diesem Beispiel das Unscharfstellmodul 334 dafür verwendet, eine Fläche 1202, die Artefakte enthalten kann, und eine Fläche 1204, die keine Artefakte enthält, zu identifizieren. Dies kann auf vielerlei Arten erfolgen, so beispielsweise auf Grundlage der verwischten Dreiecke 802 oder der berechneten Zuverlässigkeitswerte 902, wie vorstehend beschrieben worden ist. Das Unscharfstellmodul 334 kann beispielsweise einen Filter in der Fläche 1202, die Artefakte enthält, jedoch nicht in der Fläche 1204, die keine enthält, anwenden. Dies kann unter Verwendung einer pixelweise angewandten Gauß'schen Verwischung erfolgen, bei der der Radius eine Funktion der inversen Zuverlässigkeitswerte 902 der Pixel ist. Auf diese Weise wird die Sichtbarkeit der Artefakte durch das Unscharfstellmodul 334 in Echtzeit verringert.
  • 13 zeigt eine exemplarische Implementierung 1300 zur detaillierteren Darstellung des Betriebs des Fehlerdiffusionsmoduls 336 des Contentwiedergabemoduls 306. Beim vorherigen Beispiel werden die Zuverlässigkeitswerte 902 erzeugt, um die Qualität eines Treffers zu schätzen. Bei diesem Beispiel wird ein Fehlerdiffusionsmodul 336 verwendet, um Pixeltiefenverteilungen 1302 zur Schätzung eines Bereiches von Treffern akzeptabler Qualität zu erzeugen, in denen der SSD-Wert für jede Disparitätsumgebung unter einer Schwelle ist. Bei guten Treffern ist dieser Bereich eine einzige Disparität. In Bereichen ohne Textur (beispielsweise an der Wand 1304) kann dieser Bereich jedoch groß sein. In solch einem Fall ist die Tiefe zweideutig und wird daher als Bereich von Werten für jene Pixel unter Verwendung der Pixeltiefenverteilungen 1302 ausgedrückt.
  • Daher wird ein Pixel in dem Perspektivendreiecksnetz 320 von dem Contentwiedergabemodul 306 in der genauen Tiefe wiedergegeben, wenn der Zuverlässigkeitswert hoch ist, oder es wird entlang einer Linie auf Grundlage eines Bereiches von Tiefen, die es einnehmen kann, entsprechend der Spezifizierung durch die Pixeltiefenverteilungen 1302 verwischt. Dies erzeugt eine natürliche Verwischung, die eine korrekte Zweideutigkeit beim stereoskopischen Ergebnis zeigt und zudem im Sinne einer Parallaxenkorrektur als Teil des wiedergegebenen VR-Digitalcontents 308 wirkt.
  • Exemplarische Prozedur
  • Die nachfolgenden Erläuterungen beschreiben Techniken, die unter Verwendung der vorstehend beschriebenen Systeme und Vorrichtungen implementiert sein können. Aspekte der Prozedur können in Hardware, Firmware, Software oder einer Kombination hieraus implementiert sein. Die Prozedur wird 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 beschränkt sind, die zur Durchführung der Operationen durch die jeweiligen Blöcke gezeigt sind. In Teilen der nachfolgenden Diskussion wird Bezug auf 1 bis 11 genommen.
  • 14 zeigt eine Prozedur 1400 bei einer exemplarischen Implementierung, bei der Parallaxenkorrekturen an einem VR-Digitalcontent vorgenommen werden, um eine Perspektivenänderung zu unterstützen. Ein Ursprungsdreiecksnetz 304 wird von einem Dreiecksnetzerzeugungsmodul 302 auf Grundlage von Pixeln 126 und zugeordneten dreidimensionalen Koordinaten 128 einer Ursprungsperspektive in Bezug auf den VR-Digitalcontent 106 erzeugt (Block 1402).
  • Es werden Perspektivendaten 316 erzeugt, die eine Änderung von der Ursprungsperspektive in eine geänderte Perspektive in Bezug auf den VR-Digitalcontent beschreiben (Block 1404). Das Perspektivendetektionsmodul 310 kann beispielsweise Daten über eine Anwendungsprogrammierschnittstelle von Sensoren 116 beziehen, die dafür verwendbar sind, eine weg vom Ursprungspunkt erfolgende Positionsänderung und daher eine Perspektivenänderung in Bezug auf den VR-Digitalcontent 106 zu detektieren.
  • Ein Perspektivendreiecksnetz 320 wird auf Grundlage des Ursprungsdreiecksnetzes 304 und der Perspektivendaten 316 erzeugt (Block 1406), um die Positions- und Perspektivenänderung auszugleichen. Ein korrigiertes Parallaxendreiecksnetz 322 wird sodann von dem Parallaxenkorrekturmodul 120 erzeugt, das wenigstens einen Artefakt in dem Perspektivendreiecksnetz korrigiert (Block 1408). Beispiele für diese Funktionalität sind durch entsprechende Module dargestellt, darunter das Tiefenfiltermodul 324 ( 6), das Grenzidentifikationsmodul 326 (7), das Verwischungsdetektionsmodul 328 (8), das Zuverlässigkeitsschätzungsmodul 330 (9 und 10) und das Netzbeschneidungsmodul 332 (11). Der VR-Digitalcontent wird auf Grundlage des korrigierten Parallaxendreiecksnetzes 322 (Block 1410) von dem Contentwiedergabemodul 306 zur Anzeige durch die Anzeigevorrichtung 114 beispielsweise als stereoskopische Digitalbilder zur Betrachtung durch die jeweiligen Augen des Nutzers 104 wiedergegeben, siehe 308. Dies kann ein Wiedergeben unter Einsatz des Verwischungsmoduls 334 (12) und des Fehlerdiffusionsmoduls 336 (13) beinhalten.
  • Exemplarisches System und exemplarische Vorrichtung
  • 15 zeigt bei 1500 allgemein ein exemplarisches System, das eine exemplarische Rechenvorrichtung 1502 beinhaltet, die ein oder mehrere Rechensysteme und/oder eine oder mehrere solche Vorrichtungen darstellt, die die hier beschriebenen Techniken implementieren können. Dies ist durch Einbeziehung des Parallaxenkorrekturmoduls 120 dargestellt. Die Rechenvorrichtung 1502 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 Rechensystem sein.
  • Die exemplarische Rechenvorrichtung 1502 beinhaltet, wie dargestellt ist, ein Verarbeitungssystem 1504, ein oder mehrere computerlesbare Medien 1506 und eine oder mehrere I/O-Schnittstellen 1508, die kommunikationstechnisch miteinander gekoppelt sind. Obwohl dies nicht gezeigt ist, kann die Rechenvorrichtung 1502 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 Speicherbus oder einen Speichercontroller, 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 1504 stellt eine Funktionalität zur Durchführung einer oder mehrerer Operationen unter Verwendung von Hardware dar. Entsprechend ist das Verarbeitungssystem 1504 derart dargestellt, dass es das Hardwareelement 1510 beinhaltet, das als Prozessoren, funktionale Blöcke und dergleichen mehr konfiguriert sein kann. Dies kann eine Implementierung in Hardware als anwendungsspezifische integrierte Schaltung oder als andere Logikvorrichtung, die unter Verwendung eines oder mehrerer Halbleiter gebildet ist, beinhalten. Die Hardwareelemente 1510 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 Kontext können prozessorausführbare Anweisungen elektronisch ausführbare Anweisungen sein.
  • Die computerlesbaren Speichermedien 1506 sind derart dargestellt, dass sie eine Ablage / einen Speicher 1512 beinhalten. Die Ablage / der Speicher 1512 bietet eine Ablage-/Speicherkapazität, die einem oder mehreren computerlesbaren Medien zugeordnet ist. Die Ablage-/Speicherkomponente 1512 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 Ablage-/Speicherkomponente 1512 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 1506 können auf vielerlei Arten, wie nachstehend noch beschrieben wird, konfiguriert sein.
  • Eine Eingabe-/Ausgabe-Schnittstelle / Eingabe-/Ausgabe-Schnittstellen 1508 bieten eine Funktionalität, die ermöglicht, dass ein Nutzer Befehle und Information in die Rechenvorrichtung 1502 eingibt, und die zudem ermöglicht, dass dem Nutzer und/oder anderen Komponenten oder Vorrichtungen Information unter Verwendung 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 zu erkennen, die keine Berührung implizieren), und dergleichen mehr. Beispiele für Ausgabevorrichtungen beinhalten eine Anzeigevorrichtung (beispielsweise einen Monitor oder Projektor), Lautsprecher, einen Drucker, eine Netzwerkkarte, eine berührungsreaktive Vorrichtung und dergleichen mehr. Daher kann die Rechenvorrichtung 1502 auf vielerlei Arten, wie nachstehend noch beschrieben wird, konfiguriert sein, um die Nutzerinteraktion unterstützen.
  • Es sind hier verschiedene Techniken im allgemeinen Kontext von Software, Hardwareelementen oder Programmmodulen beschrieben worden. 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 herkömmlichen 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 1502 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 nicht signaltragende Medien. Computerlesbare Speichermedien beinhalten Hardware, so beispielsweise flüchtige und nichtflüchtige, entfernbare und nichtentfernbare Medien und/oder Speichervorrichtungen, die bei 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 Objekte, 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 1502 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 andere Transportmechanismen. Signalmedien beinhalten zudem beliebige Informationsverteilungsmedien. Der Begriff „moduliertes Datensignal“ bezeichnet ein Signal, bei dem eine oder mehrere Eigenschaften derart eingestellt oder geä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 Direktdrahtverbindung, und drahtlose Medien, so beispielsweise akustische, hochfrequenzbasierte, infrarote und andere drahtlose Medien.
  • Wie vorstehend beschrieben worden ist, stellen die Hardwareelemente 1510 und die computerlesbaren Medien 1506 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 Ausfü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 Kontext kann Hardware als Verarbeitungsvorrichtung wirken, die Programmaufgaben wahrnimmt, die durch Anweisungen und/oder eine Logik definiert sind, die durch Hardware verkörpert ist, wie auch Hardware, die zur Speicherung von Anweisungen zur Ausführung verwendet werden, so beispielsweise durch die vorbeschriebenen computerlesbaren Speichermedien.
  • Kombinationen des Vorbeschriebenen können zudem zur Implementierung verschiedener der hier beschriebenen 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 1510 verkörpert ist. Die Rechenvorrichtung 1502 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 ausführbar ist, auch wenigstens teilweise in Hardware erfolgen, so beispielsweise unter Verwendung computerlesbarer Speichermedien und/oder Hardwareelemente 1510 des Verarbeitungssystems 1504. Die Anweisungen und/oder Funktionen können von einem oder mehreren Objekten (beispielsweise einer oder mehreren Rechenvorrichtungen 1502 und/oder Verarbeitungssystemen 1504) 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 1502 unterstützt werden und sind nicht auf die spezifischen Beispiele für die hier beschriebenen Techniken beschränkt. Die Funktionalität kann zudem gänzlich oder in Teilen unter Verwendung eines verteilten Systems implementiert sein, so beispielsweise über eine „Cloud“ 1514 mittels einer Plattform 1516, wie nachstehend noch beschrieben wird.
  • Die Cloud 1514 beinhaltet eine Plattform 1516 für Ressourcen 1518 und/oder stellt diese dar. Die Plattform 1516 abstrahiert die darunterliegende Funktionalität der Hardware- (beispielsweise Server) und Softwareressourcen der Cloud 1514. Die Ressourcen 1518 können Anwendungen und/oder Daten beinhalten, die eingesetzt werden, während eine Computerverarbeitung auf Servern ausgeführt wird, die von der Rechenvorrichtung 1502 getrennt sind. Die Ressourcen 1518 können zudem Dienste beinhalten, die über das Internet und/oder über ein Teilnehmernetzwerk bereitgestellt werden, so beispielsweise ein zellenbasiertes oder ein Wi-Fi-Netzwerk.
  • Die Plattform 1516 kann Ressourcen und Funktionen abstrahieren, um die Rechenvorrichtung 1502 mit anderen Rechenvorrichtungen zu verbinden. Die Plattform 1516 kann dafür dienen, die Skalierung von Ressourcen zu abstrahieren, um einen entsprechenden Skalierungsgrad für bestehenden Bedarf an den Ressourcen 1518, die über die Plattform 1516 implementiert sind, bereitzustellen. Entsprechend kann bei einer Anordnung mit wechselseitig verbundenen Vorrichtungen eine Implementierung der hier beschriebenen Funktionalität über das System 1500 verteilt sein. Die Funktionalität kann teilweise auch auf der Rechenvorrichtung 1502 wie auch über die Plattform 1516, die die Funktionalität der Cloud 1514 abstrahiert, implementiert sein.
  • Schlussbemerkung
  • Obwohl die Erfindung in einer Sprache beschrieben worden ist, die für Strukturmerkmale 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.

Claims (20)

  1. System in einer Digitalmediumumgebung zur Parallaxenkorrektur zum Ausgleich von Perspektivenänderungen in Bezug auf einen VR-Digitalcontent (Virtuelle Realität VR), wobei das System umfasst: ein Dreiecksnetzerzeugungsmodul, das wenigstens teilweise in der Hardware des VR-Systems implementiert ist, um ein Ursprungsdreiecksnetz auf Grundlage von Pixeln und zugeordneten dreidimensionalen Koordinaten einer Ursprungsperspektive in Bezug auf den VR-Digitalcontent zu erzeugen; ein Perspektivendetektionsmodul, das wenigstens teilweise in der Hardware des VR-Systems implementiert ist, um Perspektivendaten, die eine Änderung von der Ursprungsperspektive in eine geänderte Perspektive in Bezug auf den VR-Digitalcontent beschreiben, zu erzeugen; ein Perspektivenänderungsmodul, das wenigstens teilweise in der Hardware des VR-Systems implementiert ist, um ein Perspektivendreiecksnetz auf Grundlage des Ursprungsdreiecksnetzes und der Perspektivendaten zu erzeugen; ein Parallaxenkorrekturmodul, das wenigstens teilweise in der Hardware des VR-Systems implementiert ist, um ein korrigiertes Parallaxendreiecksnetz, das wenigstens einen Artefakt in dem Perspektivendreiecksnetz korrigiert, zu erzeugen; und ein Contentwiedergabemodul, das wenigstens teilweise in der Hardware des VR-Systems implementiert ist, um den VR-Digitalcontent auf Grundlage des korrigierten Parallaxendreiecksnetzes wiederzugeben.
  2. System nach Anspruch 1, wobei das Parallaxenkorrekturmodul des Weiteren ein Tiefenfiltermodul umfasst, um das korrigierte Parallaxendreiecksnetz wenigstens teilweise auf Grundlage einer Tiefenfilterung zu erzeugen.
  3. System nach Anspruch 1 oder 2, wobei das Parallaxenkorrekturmodul des Weiteren ein Grenzidentifikationsmodul umfasst, um das korrigierte Parallaxendreiecksnetz auf Grundlage einer Identifizierung von Tiefengrenzen als Teil eines Maschinenlernens unter Verwendung eines neuronalen Netzwerkes zu erzeugen.
  4. System nach einem der vorhergehenden Ansprüche, wobei das Parallaxenkorrekturmodul des Weiteren ein Verwischungsdetektionsmodul umfasst, um das korrigierte Parallaxendreiecksnetz auf Grundlage der Untersuchung von Dreiecken, die als Teil des Perspektivendreiecksnetzes beinhaltet sind, zu erzeugen.
  5. System nach einem der vorhergehenden Ansprüche, wobei die Untersuchung durch das Verwischungsdetektionsmodul auf einer Oberflächennormale, die sich einer Sichtrichtung eines jeweiligen Dreiecks annähert, einer Länge einer Kante des jeweiligen Dreiecks oder einer Fläche des jeweiligen Dreiecks beruht.
  6. System nach einem der vorhergehenden Ansprüche, wobei das Parallaxenkorrekturmodul des Weiteren ein Zuverlässigkeitsschätzungsmodul umfasst, um Zuverlässigkeitswerte, die Tiefen von Pixeln des Perspektivendreiecksnetzes zugeordnet sind, zu erzeugen.
  7. System nach Anspruch 6, wobei die Zuverlässigkeitswerte wenigstens teilweise auf der Disparität der Pixel in jeweiligen stereoskopischen Bildern als Teil des VR-Digitalcontents beruhen.
  8. System nach Anspruch 6 oder 7, des Weiteren umfassend ein Unscharfstellmodul, das dafür konfiguriert ist, Abschnitte des VR-Digitalcontents auf Grundlage der jeweiligen Zuverlässigkeitswerte für Pixel in jeweiligen Abschnitten unscharf zu stellen.
  9. System nach Anspruch 8, wobei das Ausmaß der Unscharfstellung der Abschnitte für Abschnitte, die niedrige Zuverlässigkeitswerte aufweisen, zunimmt und für Abschnitte, die hohe Zuverlässigkeitswerte aufweisen, abnimmt.
  10. System nach einem der vorhergehenden Ansprüche, wobei das Parallaxenkorrekturmodul des Weiteren ein Fehlerdiffusionsmodul umfasst, um das korrigierte Parallaxendreiecksnetz, in dem eine Tiefe wenigstens eines Pixels als Verteilung eines Bereiches von Tiefenwerten beschrieben wird, zu erzeugen.
  11. System nach einem der vorhergehenden Ansprüche, wobei das Parallaxenkorrekturmodul des Weiteren ein Netzbeschneidungsmodul umfasst, um das Perspektivendreiecksnetz auf Grundlage von identifizierten Grenzkanten oder Tiefendiskontinuitäten zu beschneiden.
  12. Verfahren, das durch eine VR-Vorrichtung (Virtuelle Realität VR) implementiert ist, in einer Digitalmediumumgebung zur Parallaxenkorrektur zum Ausgleich von Perspektivenänderungen in Bezug auf einen VR-Digitalcontent, wobei das Verfahren umfasst: durch die VR-Vorrichtung erfolgendes Erzeugen eines Ursprungsdreiecksnetzes auf Grundlage von Pixeln und zugeordneten dreidimensionalen Koordinaten einer Ursprungsperspektive in Bezug auf den VR-Digitalcontent; durch die VR-Vorrichtung erfolgendes Erzeugen von Perspektivendaten, die eine Änderung von der Ursprungsperspektive in eine geänderte Perspektive in Bezug auf den VR-Digitalcontent beschreiben; durch die VR-Vorrichtung erfolgendes Erzeugen eines Perspektivendreiecksnetzes auf Grundlage des Ursprungsdreiecksnetzes und der Perspektivendaten; durch die VR-Vorrichtung erfolgendes Erzeugen eines korrigierten Parallaxendreiecksnetzes, das wenigstens einen Artefakt in dem Perspektivendreiecksnetz korrigiert; und durch die VR-Vorrichtung erfolgendes Wiedergeben des VR-Digitalcontents auf Grundlage des korrigierten Parallaxendreiecksnetzes.
  13. Verfahren nach Anspruch 12, wobei das Erzeugen des korrigierten Parallaxendreiecksnetzes wenigstens teilweise auf einem Tiefenfiltern beruht.
  14. Verfahren nach Anspruch 12 oder 13, wobei das Erzeugen des korrigierten Parallaxendreiecksnetzes wenigstens teilweise auf einem Identifizieren von Tiefengrenzen als Teil eines Maschinenlernens unter Verwendung eines neuronalen Netzwerkes beruht.
  15. Verfahren nach einem der Ansprüche 12 bis 14, wobei das Erzeugen des korrigierten Parallaxendreiecksnetzes wenigstens teilweise auf einem Untersuchen von Dreiecken, die als Teil des Perspektivendreiecksnetzes beinhaltet sind, beruht.
  16. Verfahren nach Anspruch 15, wobei das Untersuchen auf einer Oberflächennormale, die sich einer Sichtrichtung eines jeweiligen Dreiecks annähert, einer Länge einer Kante des jeweiligen Dreiecks oder einer Fläche des jeweiligen Dreiecks beruht.
  17. Verfahren nach einem der Ansprüche 12 bis 16, wobei das Erzeugen des korrigierten Parallaxendreiecksnetzes wenigstens teilweise auf einem Erzeugen von Zuverlässigkeitswerten, die Tiefen von Pixeln des Perspektivendreiecksnetzes zugeordnet sind, beruht.
  18. Verfahren nach Anspruch 17, des Weiteren umfassend ein Unscharfstellen von Abschnitten des VR-Digitalcontents auf Grundlage der jeweiligen Zuverlässigkeitswerte für Pixel in jeweiligen Abschnitten.
  19. Verfahren nach einem der Ansprüche 12 bis 18, wobei das Erzeugen des korrigierten Parallaxendreiecksnetzes wenigstens teilweise auf einem Erzeugen des korrigierten Parallaxendreiecksnetzes, in dem eine Tiefe wenigstens eines Pixels als Verteilung eines Bereiches von Tiefenwerten beschrieben wird, beruht.
  20. System in einer Digitalmedienumgebung zur Parallaxenkorrektur zum Ausgleich von Perspektivenänderungen in Bezug auf einen VR-Digitalcontent (Virtuelle Realität VR), wobei das System umfasst: Mittel zum Erzeugen eines Ursprungsdreiecksnetzes auf Grundlage von Pixeln und zugeordneten dreidimensionalen Koordinaten einer Ursprungsperspektive in Bezug auf den VR-Digitalcontent; Mittel zum Erzeugen von Perspektivendaten, die eine Änderung von der Ursprungsperspektive in eine geänderte Perspektive in Bezug auf den VR-Digitalcontent beschreiben; Mittel zum Erzeugen eines Perspektivendreiecksnetzes auf Grundlage des Ursprungsdreiecksnetzes und der Perspektivendaten; Mittel zum Erzeugen eines korrigierten Parallaxendreiecksnetzes, das wenigstens einen Artefakt in dem Perspektivendreiecksnetz korrigiert; und Mittel zum Wiedergeben des VR-Digitalcontents auf Grundlage des korrigierten Parallaxendreiecksnetzes.
DE102018006050.1A 2017-10-11 2018-07-31 Parallaxenkorrektur in der Virtuellen Realität Pending DE102018006050A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/730,478 2017-10-11
US15/730,478 US10701334B2 (en) 2017-10-11 2017-10-11 Virtual reality parallax correction

Publications (1)

Publication Number Publication Date
DE102018006050A1 true DE102018006050A1 (de) 2019-04-11

Family

ID=63667061

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018006050.1A Pending DE102018006050A1 (de) 2017-10-11 2018-07-31 Parallaxenkorrektur in der Virtuellen Realität

Country Status (5)

Country Link
US (2) US10701334B2 (de)
CN (2) CN114785996B (de)
AU (1) AU2018211217B2 (de)
DE (1) DE102018006050A1 (de)
GB (1) GB2567530B (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10701334B2 (en) 2017-10-11 2020-06-30 Adobe Inc. Virtual reality parallax correction
WO2020060749A1 (en) 2018-09-17 2020-03-26 Snap Inc. Creating shockwaves in three-dimensional depth videos and images
TWI757658B (zh) * 2018-11-14 2022-03-11 宏達國際電子股份有限公司 影像處理系統及影像處理方法
US11995854B2 (en) * 2018-12-19 2024-05-28 Nvidia Corporation Mesh reconstruction using data-driven priors
CN111726602B (zh) * 2019-03-22 2022-04-22 舜宇光学(浙江)研究院有限公司 异视场角摄像-显像系统的匹配方法及其系统和计算系统
CN110223257B (zh) * 2019-06-11 2021-07-09 北京迈格威科技有限公司 获取视差图的方法、装置、计算机设备和存储介质
US11178375B1 (en) * 2019-10-21 2021-11-16 Snap Inc. Input parameter based image waves
EP3840389A1 (de) * 2019-12-18 2021-06-23 Koninklijke Philips N.V. Kodierungsschema für videodaten
US20210327121A1 (en) * 2020-04-15 2021-10-21 Sirisilp Kongsilp Display based mixed-reality device
US11212503B1 (en) * 2020-07-14 2021-12-28 Microsoft Technology Licensing, Llc Dual camera HMD with remote camera alignment
US11206364B1 (en) * 2020-12-08 2021-12-21 Microsoft Technology Licensing, Llc System configuration for peripheral vision with reduced size, weight, and cost
US11615582B2 (en) * 2021-06-08 2023-03-28 Fyusion, Inc. Enclosed multi-view visual media representation
CN115079881B (zh) * 2022-06-16 2024-07-09 广州国威文化科技有限公司 基于虚拟现实的画面校正方法及系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6590573B1 (en) * 1983-05-09 2003-07-08 David Michael Geshwind Interactive computer system for creating three-dimensional image information and for converting two-dimensional image information for three-dimensional display systems
US8369607B2 (en) * 2002-03-27 2013-02-05 Sanyo Electric Co., Ltd. Method and apparatus for processing three-dimensional images
ATE347722T1 (de) * 2002-06-12 2006-12-15 Spatial Integrated Systems Inc Verfahren zur linearen raumabtastung und vorrichtung zur erzeugung eines numerischen 3d modells
US7583275B2 (en) * 2002-10-15 2009-09-01 University Of Southern California Modeling and video projection for augmented virtual environments
US20160267720A1 (en) * 2004-01-30 2016-09-15 Electronic Scripting Products, Inc. Pleasant and Realistic Virtual/Augmented/Mixed Reality Experience
US8199186B2 (en) 2009-03-05 2012-06-12 Microsoft Corporation Three-dimensional (3D) imaging based on motionparallax
CN102695070B (zh) * 2012-06-12 2014-06-04 浙江大学 一种立体图像的深度一致性融合处理方法
CN102868891B (zh) * 2012-09-18 2015-02-18 哈尔滨商业大学 基于支持向量回归多视角视频色差校正方法
JP2014067372A (ja) 2012-09-27 2014-04-17 Kddi Corp 運動視差再現プログラムおよび装置ならびにその三次元モデル生成プログラムおよび装置
CN103617647B (zh) * 2013-11-28 2016-04-13 中国人民解放军国防科学技术大学 一种用于夜视的车辆周围环境三维重构方法
US20150235408A1 (en) 2014-02-14 2015-08-20 Apple Inc. Parallax Depth Rendering
JP2015219634A (ja) * 2014-05-15 2015-12-07 株式会社リコー 画像処理プログラム、画像処理方法および画像処理装置
WO2018213131A1 (en) 2017-05-18 2018-11-22 Pcms Holdings, Inc. System and method for distributing and rendering content as spherical video and 3d asset combination
US10701334B2 (en) 2017-10-11 2020-06-30 Adobe Inc. Virtual reality parallax correction

Also Published As

Publication number Publication date
CN109660783A (zh) 2019-04-19
AU2018211217B2 (en) 2021-07-29
CN114785996B (zh) 2024-08-09
US11050994B2 (en) 2021-06-29
US10701334B2 (en) 2020-06-30
US20200296348A1 (en) 2020-09-17
CN114785996A (zh) 2022-07-22
GB2567530B (en) 2021-09-15
US20190110038A1 (en) 2019-04-11
GB201813076D0 (en) 2018-09-26
GB2567530A (en) 2019-04-17
AU2018211217A1 (en) 2019-05-02
CN109660783B (zh) 2022-05-27

Similar Documents

Publication Publication Date Title
DE102018006050A1 (de) Parallaxenkorrektur in der Virtuellen Realität
DE112020003794T5 (de) Tiefenbewusste Fotobearbeitung
DE112016004216T5 (de) Allgemeine Sphärische Erfassungsverfahren
DE69621509T2 (de) Verfahren zur Auswahl zweier Einzelbilder einer zweidimensionalen Bildsequenz als Basis für die Berechnung der relativen Tiefe von Bildobjekten
DE112016004114T5 (de) Stereorenderingsystem
DE102016013766A1 (de) Bildkompensation für ein verdeckendes auf Direktansicht beruhendes Erweiterte-Realität-System
US20150379720A1 (en) Methods for converting two-dimensional images into three-dimensional images
DE202014010843U1 (de) Ausrichten von bodenbasierten Bildern mit Luftbildern
EP3427474B1 (de) Bildverarbeitungsverfahren, bildverarbeitungsmittel und bildverarbeitungsvorrichtung zur erzeugung von abbildungen eines teils eines dreidimensionalen raums
US20120320152A1 (en) Stereoscopic image generation apparatus and method
CN102075694A (zh) 用于视频制作、后期制作和显示适应的立体编辑
DE202017104934U1 (de) Mehrstufiges Kameraträgersystem für die stereoskope Bildaufnahme
CN111105347B (zh) 一种生成带深度信息的全景图的方法、装置及存储介质
DE102007021518B4 (de) Verfahren zum Verarbeiten eines Videodatensatzes
DE102012223085A1 (de) Stereoskopisches abbildungssystem und verfahren dafür
DE112018006130T5 (de) Codierungsvorrichtung, codierungsverfahren, decodierungsvorrichtung und decodierungsverfahren
DE69715816T2 (de) Videoanzeigesystem zum Darstellen einer virtuellen dreidimensionalen Bildanzeige
DE112016001829T5 (de) Automatische Verbindung von Bildern unter Verwendung visueller Eigenschaftsquerverweise auf zugehörige Anwendungen
CN105719250A (zh) 基于简单背景的图像修复方法、系统及拍摄终端
DE102011008886A1 (de) Verfahren und Vorrichtung zur Stereobasis-Erweiterung von stereoskopischen Bildern und Bildfolgen
Angot et al. A 2D to 3D video and image conversion technique based on a bilateral filter
DE112017007791B4 (de) Steuereinrichtung für eine optische vorrichtung, steuerverfahren für eine optische vorrichtung und steuerprogramm für eine optische vorrichtung
EP3539085B1 (de) 3d-referenzierung
DE102018009313A1 (de) Erzeugen selektiver virtueller Langzeitbelichtungsbilder
DE112022004369T5 (de) Erfassung und wiedergabe von umgebungen

Legal Events

Date Code Title Description
R082 Change of representative

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

R012 Request for examination validly filed
R016 Response to examination communication