DE112016002023T5 - Interpolation von Ansichten zum Erzählen visueller Geschichten - Google Patents

Interpolation von Ansichten zum Erzählen visueller Geschichten Download PDF

Info

Publication number
DE112016002023T5
DE112016002023T5 DE112016002023.6T DE112016002023T DE112016002023T5 DE 112016002023 T5 DE112016002023 T5 DE 112016002023T5 DE 112016002023 T DE112016002023 T DE 112016002023T DE 112016002023 T5 DE112016002023 T5 DE 112016002023T5
Authority
DE
Germany
Prior art keywords
frames
video
frame
target
effect
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
DE112016002023.6T
Other languages
English (en)
Inventor
Maha El Choubassi
Yan Xu
Alexey M. Supikov
Oscar Nestares
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE112016002023T5 publication Critical patent/DE112016002023T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2625Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of images from a temporal image sequence, e.g. for a stroboscopic effect
    • H04N5/2627Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of images from a temporal image sequence, e.g. for a stroboscopic effect for providing spin image effect, 3D stop motion effect or temporal freeze effect
    • 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
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/207Image signal generators using stereoscopic image cameras using a single 2D image sensor
    • 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
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/2224Studio circuitry; Studio devices; Studio equipment related to virtual studio applications
    • H04N5/2226Determination of depth image, e.g. for foreground/background separation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2628Alteration of picture size, shape, position or orientation, e.g. zooming, rotation, rolling, perspective, translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • 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/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Computing Systems (AREA)
  • Studio Devices (AREA)
  • Processing Or Creating Images (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)

Abstract

Mehrere Frames eines Videos, das von einer Videokamera aufgezeichnet worden ist, und Tiefenkarten der mehreren Frames werden in einem Datenspeicher gespeichert. Eine oder mehrere Ziel-Videokamerapositionen werden bestimmt. Jeder Frame der mehreren Frames wird mit einer oder mehreren der Ziel-Videokamerapositionen verknüpft. Für jeden Frame werden einer oder mehrere synthetisierte Frames aus dem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen generiert, die mit diesem Frame verknüpft sind, indem ein Ansichten-Interpolationsalgorithmus auf diesen Frame unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird. Die Anwender können ihre Eingaben zu den neuen Kamerapositionen und anderen Kameraparametern über mehrere Eingabemodalitäten bereitstellen. Die synthetisierten Frames werden verkettet, um ein modifiziertes Video zu erstellen. Andere Ausführungsformen werden ebenfalls beschrieben und beansprucht.

Description

  • ERFINDUNGSGEBIET
  • Ein Aspekt dieser Offenbarung bezieht sich auf Bild- und Videoverarbeitung und insbesondere auf das Verwenden von Interpolation von Ansichten, um eine visuelle Geschichte aus einem Bild oder einem Video zu erstellen. Andere Aspekte werden ebenfalls beschrieben.
  • HINTERGRUND
  • Soziale Medien werden immer beliebter, und die Anwender haben ein großes Interesse daran, ihre Erlebnisse auf Social-Media-Sites mit anderen zu teilen. Ein Weg, auf dem Anwender ihre Erlebnisse mit anderen teilen können, besteht darin, dass sie mit ihrer mobilen Einrichtung (z. B. einem Mobiltelefon oder Tablet) Bilder erfassen oder Videos aufzeichnen und sie auf Social-Media-Sites posten, die es Menschen ermöglichen, Bilder und Videos mit anderen zu teilen.
  • Das Erzählen einer guten visuellen Geschichte beruht häufig auf dem Vorhandensein einer dynamischen Kameraperspektive, um auf gewisse Aspekte der Szene, die von Interesse sind, in zusätzlichen Details zu fokussieren und diese Aspekte in unterschiedlichen Winkeln zu zeigen. Allerdings stellen derzeitige Systeme, die das Teilen von visuellen Medien auf Social-Media-Sites ermöglichen, für den Anwender eingeschränkte Fähigkeiten bereit, den Kamerablickpunkt dynamisch zu steuern, sobald das Bild/Video erfasst ist. Die Praxis des dynamischen Steuerns des Kamerablickpunkts wird meist in Spielfilmen (z. B. Kinofilmen) und 3D-Spielen von Fachleuten verwendet, die Zugang zu ausgeklügelten und teuren Bildverarbeitungsgeräten haben. Für den gelegentlichen Anwender, der Bilder/Videos mit seiner eigenen mobilen Einrichtung erfasst, gibt es zum dynamischen Steuern des Kamerablickpunkts eingeschränkte Fähigkeiten, nachdem das Bild/Video erfasst worden ist.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Verschiedene Aspekte dieser Offenbarung werden als Beispiel und nicht einschränkend in den Figuren der zugehörigen Zeichnungen veranschaulicht, in denen gleiche Bezüge ähnliche Elemente bezeichnen. Es sei angemerkt, dass sich Bezugnahmen auf „eine“ Ausführungsform in dieser Offenbarung nicht notwendigerweise auf die gleiche Ausführungsform beziehen, und sie bedeuten wenigstens eine. Eine gegebene Figur kann auch verwendet werden, um die Merkmale mehr als einer Ausführungsform zu veranschaulichen, um die Gesamtanzahl an Zeichnungen zu reduzieren, und im Ergebnis sind möglicherweise nicht alle Elemente in der Zeichnung für eine gegebene Ausführungsform erforderlich.
  • 1 ist ein Blockschaltbild, das ein Bildverarbeitungssystem zum Erstellen eines Videos aus einem Bild gemäß einigen Ausführungsformen veranschaulicht.
  • 2 ist eine grafische Darstellung, die ein Bild veranschaulicht, das in ein Video animiert wird, gemäß einigen Ausführungsformen.
  • 3 ist ein Blockschaltbild, das ein Videoverarbeitungssystem zum Erstellen eines modifizierten Videos mit neuen Blickpunkten gemäß einigen Ausführungsformen veranschaulicht.
  • 4 ist eine grafische Darstellung, die einen Moment-Freeze-Effekt veranschaulicht, der auf ein Video angewendet wird, gemäß einigen Ausführungsformen.
  • 5 ist eine grafische Darstellung, die einen Zeit-Übergangseffekt veranschaulicht, der auf ein Video angewendet wird, gemäß einigen Ausführungsformen.
  • 6 ist eine grafische Darstellung, die einen Zeitlupen-Zeit-Übergangseffekt veranschaulicht, der auf ein Video angewendet wird, gemäß einigen Ausführungsformen.
  • 7 ist eine grafische Darstellung einer transportierbaren handgeführten Computereinrichtung, die eine Anwenderschnittstelle zum Erstellen einer visuellen Geschichte anzeigt, gemäß einigen Ausführungsformen.
  • 8 ist ein Blockschaltbild, das veranschaulicht, wie Komponenten des Bildverarbeitungssystems über eine Server-Plattform und eine Endanwenderplattform verteilt werden können, gemäß einigen Ausführungsformen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Mehrere Ausführungsformen werden jetzt unter Bezugnahme auf die beigefügten Zeichnungen erklärt. Immer wenn Aspekte der hier beschriebenen Ausführungsformen nicht explizit definiert werden, ist der Schutzbereich der Offenbarung hier nicht nur auf die gezeigten Teile begrenzt, die lediglich zur Veranschaulichung bestimmt sind. Während zahlreiche Details dargelegt werden, versteht es sich auch, dass einige Ausführungsformen ohne diese Details betrieben werden können. In anderen Beispielen sind allgemein bekannte Schaltungen, Strukturen und Techniken nicht ausführlich gezeigt worden, um so das Verständnis dieser Beschreibung nicht unverständlich zu machen.
  • Die Menschen sind davon begeistert, ihre Erlebnisse in Bildern und Videos zu erfassen und sie mit anderen zu teilen. Die Verbreitung von Smartphones mit Bild-/Video-Erfassungs-/Aufzeichnungsfähigkeiten, das Auftauchen neuer Kameraeinrichtungen (z. B. tragbare hochauflösende Camcorder) und die zunehmende Beliebtheit von sozialen Medien sind allesamt treibende Faktoren für dieses wachsende Interesse am Erfassen/Aufzeichnen und Teilen von Bildern und Videos. Ein Anwender kann eine visuelle Geschichte seiner eigenen Erlebnisse unter Verwendung von Bildern und/oder Videos erzählen. Allerdings zeigen Bilder und Videos, die typischerweise auf sozialen Medien geteilt werden, nur einen einzigen festen Blickpunkt (d. h. den Blickpunkt der Kamera, die das Bild oder Video ursprünglich erfasst hat). Die visuelle Geschichte des Anwenders würde verbessert werden, wenn der Anwender mehrere Blickpunkte eines Bildes oder Videos zeigen könnte.
  • Eindrucksvolle visuelle Effekte können durch Zeigen mehrerer Blickpunkte einer Szene erstellt werden. Zum Beispiel können mehrere Blickpunkte einer Szene erfasst werden, um einen Bullet-Time-Effekt zu generieren. Ein Bullet-Time-Effekt ist ein visueller Effekt, bei dem sich das Verstreichen der Zeit zu verlangsamen (oder zu stoppen) scheint, während die Kamera sich um das Objekt in der Szene herum zu bewegen scheint. Diese Art Effekt wurde zum Beispiel bekanntermaßen im Film „The Matrix“ verwendet. Die Produktion dieser Art von visuellem Effekt ist häufig mit dem Aufbau und dem Konfigurieren einer teuren Gruppe von Kameras verbunden. Typischerweise wird der Bullet-Time-Effekt durch Aufbau einer Gruppe von Kameras, die das Objekt umgeben, und dann Aktivieren der Gruppe von Kameras in schneller Abfolge (oder zeitgleich) erreicht. Die erfassten Bilder werden dann in einem Video zusammengesetzt. Allerdings ist das Erstellen dieser Arten von visuellen Effekten gewöhnlich mit dem Erwerb teurer Geräte verbunden. Auch wird eine große Menge an Videobearbeitungskompetenz benötigt, um solche visuellen Effekte zu erstellen. Des Weiteren sind die Blickpunkte, die von der Gruppe von Kameras erfasst werden können, durch die Anzahl der Kameras in der Gruppe und die spezielle Anordnung der Kameras begrenzt.
  • Herkömmliche Bilder und Videos ermöglichen im Nachhinein keine Änderung des Kamerablickpunkts, nachdem das Bild/Video erfasst/aufgezeichnet worden ist. Anders ausgedrückt: Sobald das Bild/Video erfasst/aufgezeichnet worden ist, hat der Anwender keine Kontrolle über den Kamerablickpunkt. Die Fähigkeit, den Kamerablickpunkt im Nachhinein zu steuern, würde dem Anwender eine sehr viel ausdrucksstärkere Weise zum Erzählen der visuellen Geschichte des Anwenders geben.
  • Die Ausführungsformen versetzen einen Anwender in die Lage, eine visuelle Geschichte zu erzählen, indem sie dem Anwender ermöglichen, den Kamerablickpunkt im Nachhinein virtuell zu bewegen (d. h. nach dem Erfassen/Aufzeichnen eines Bildes/Videos). Dies wird durch wirksames Einsetzen der Tiefen- und/oder Geometrieinformationen des Bildes/Videos erreicht. Ein Ansichten-Interpolationsalgorithmus kann die Tiefen- und/oder Geometrieinformationen des Bildes/Videos verwenden, um neue Blickpunkte für das Bild/Video zu generieren. Dies gibt dem Anwender die Kontrolle über den Kamerablickpunkt auch nachdem das Originalbild/-video erfasst/aufgezeichnet worden ist, so dass der Anwender seine eigene visuelle Geschichte erzählen kann, indem er gewisse Aspekte des erfassten/aufgezeichneten Bildes/Videos durch Bewegen des Kamerablickpunkts wie gewünscht betont und/oder herunterspielt. Die resultierenden interaktiven visuellen Medien sind sehr viel ansprechender als die statischen Bilder und Videos, die typischerweise auf Social-Media-Sites geteilt werden (bei denen der Blickpunkt feststeht, nachdem das Bild/Video erfasst/aufgezeichnet worden ist). Außerdem stellen die Ausführungsformen eine einfache und intuitive Weise für den Anwender bereit, den Kamerablickpunkt zu steuern, um dynamische visuelle Medien zu generieren.
  • 1 ist ein Blockschaltbild, das ein Bildverarbeitungssystem zum Erstellen eines Videos aus einem Bild gemäß einigen Ausführungsformen veranschaulicht. Das Bildverarbeitungssystem 100 enthält einen Datenspeicher 105, eine Bild-Anwender-Interaktionskomponente 110, eine Ziel-Kamerapositions-Generatorkomponente 115, eine Bildansichten-Interpolationskomponente 120 und eine Bild-Verkettungskomponente 125. Die Komponenten des Bildverarbeitungssystems 100 können auf Basis von anwendungsspezifischen integrierten Schaltungen (ASICs), einem universellen Mikroprozessor, einem Field Programmable Gate Array (FPGA), einer Digitalsignalsteuerung oder einem Satz logischer Hardwarestrukturen umgesetzt werden.
  • Das Bildverarbeitungssystem 100 arbeitet mit einem Bild 102 (d. h. einem stehenden Bild), um das Bild 102 in ein Video 130 zu konvertieren. Das Bild 102 kann ein digitales Bild einer Szene sein, das von einer Digitalkamera erfasst worden ist. Das Bild weist Farbpixel auf, die die erfasste Szene repräsentieren. Die Position, von der aus die Kamera die Szene erfasst hat, wird hier als die Originalkameraposition bezeichnet. Das Bild 102 weist eine mit ihm verknüpfte Tiefenkarte 103 auf, die Informationen aufweist, die sich auf den Abstand der Oberflächen der erfassten Szene von der Originalkameraposition beziehen. In einer Ausführungsform können sowohl das Bild 102 als auch die mit dem Bild 102 verknüpfte Tiefenkarte 103 aus einer tiefenerfassenden Digitalkamera abgerufen werden. In einer Ausführungsform werden das Bild 102 und die mit dem Bild verknüpfte Tiefenkarte 103 im Datenspeicher 105 gespeichert, damit das Bildverarbeitungssystem 100 damit arbeiten kann.
  • Die Bild-Anwender-Interaktionskomponente 110 stellt für einen Anwender eine Anwenderschnittstelle bereit und nimmt Anwendereingaben vom Anwender über die Anwenderschnittstelle an. Die Bild-Anwender-Interaktionskomponente 110 kann ein Bild (z. B. das im Datenspeicher 105 gespeicherte Bild 102) auf einem Display (nicht gezeigt) anzeigen und eine Schnittstelle für den Anwender zum Interagieren mit dem Bild bereitstellen. In einer Ausführungsform empfängt die Bild-Anwender-Interaktionskomponente 110 Anwendereingaben, die eines oder mehrere interessierende Objekte im Bild 102 und einen auf das Bild 102 anzuwendenden Effekt angeben. Zum Beispiel kann die Bild-Anwender-Interaktionskomponente 110 eine Anwenderschnittstelle bereitstellen, die es dem Anwender ermöglicht, eines oder mehrere interessierende Objekte im Bild 102 auszuwählen. Auch kann die Bild-Anwender-Interaktionskomponente 110 eine Anwenderschnittstelle bereitstellen, die es dem Anwender ermöglicht, einen auf das Bild 102 anzuwendenden Effekt auszuwählen. In einer Ausführungsform zeigt die Bild-Anwender-Interaktionskomponente 110 eine endliche Anzahl vordefinierter Effekte (d. h. Effekte, die vorab in das Bildverarbeitungssystem 100 geladen worden sind) auf dem Display an, aus denen der Anwender auswählen kann. Zum Beispiel könnten zu der Auswahl an Effekten folgende zählen, jedoch ohne darauf beschränkt zu sein: ein Schwenkeffekt, ein Rotationseffekt, ein Dolly-Zoom-Effekt (ein Effekt, der das Kamerablickfeld, den Fokus und den Zoom gemäß einer sich ändernden Kameraposition ändert) und ein Ken-Burns-Effekt (eine Kombination aus Schwenk und Zoom). In einer Ausführungsform stellt die Bild-Anwender-Interaktionskomponente 110 eine Anwenderschnittstelle bereit, die es dem Anwender ermöglicht, die Kamerabewegung wie gewünscht zu steuern. Solch eine Anwenderschnittstelle kann Eingaben von einem Touchscreen-Display, einem Beschleunigungsaufnehmer, einem Gyroskop oder irgendeiner Kombination daraus nutzen. Zum Beispiel kann der Anwender eine (x, y) Position auf dem Bild 102 berühren, damit sie der Mittelpunkt für die Kamerabewegung ist, und dann Pinch-Gesten mit zwei Fingern verwenden, um die Kamera in der z-Dimension näher oder weiter weg zu bewegen. Diese Bewegung entlang der z-Richtung kann mit schwenkenden und rotierenden Kamerabewegungen kombiniert werden, die anhand von Beschleunigungsaufnehmer- und/oder Gyroskopeingaben gemappt werden können. Die Bild-Anwender-Interaktionskomponente 110 empfängt Anwendereingaben und leitet die Anwendereingaben (z. B. die angegebenen interessierenden Objekte und den auf das Bild 102 anzuwendenden Effekt) an die Ziel-Kamerapositions-Generatorkomponente 115 weiter.
  • Die Ziel-Kamerapositions-Generatorkomponente 115 bestimmt eine oder mehrere Ziel-Kamerapositionen auf Basis der Anwendereingabe. Die Ziel-Kamerapositionen sind virtuelle Kamerapositionen (die sich von der Originalkameraposition unterscheiden), die verwendet werden, um neue Blickpunkte des Bildes 102 zu generieren, wie nachstehend weiter ausführlich beschrieben wird. Wie hier verwendet, kann sich eine Ziel-Kameraposition auf einen Ort einer virtuellen Kamera (z. B. im 3D-Raum) und eine Ausrichtung der virtuellen Kamera (z. B. in welche Richtung eine optische Achse der Kamera gewandt ist) beziehen. Zum Beispiel kann eine Ziel-Kameraposition sich von der Originalkameraposition durch Verschiebung (z. B. Änderung des Orts) und/oder in der Ausrichtung (z. B. Änderung der Neigung, Rollen und/oder Gieren) unterscheiden. In einer Ausführungsform bestimmt die Ziel-Kamerapositions-Generatorkomponente 115 automatisch die Ziel-Kamerapositionen auf Basis der interessierenden Objekte und des vom Anwender beabsichtigten Effekts (der z. B. von der Bild-Anwender-Interaktionskomponente 110 empfangen wird). In einer Ausführungsform bestimmt die Ziel-Kamerapositions-Generatorkomponente 115 auch eine zeitliche Abfolge der Ziel-Kamerapositionen, die eine Reihenfolge der Ziel-Kamerapositionen spezifiziert. Falls zum Beispiel das interessierende Objekt eine spezielle Person ist, die im Bild 102 erfasst worden ist, und der Effekt ein Zoom-In-Effekt ist, dann wird ein Satz Ziel-Kamerapositionen generiert, der mit einer Kameraposition beginnt, die relativ weit weg von der Person ist, gefolgt von Kamerapositionen, die sich näher an die Person heranbewegen. Die Ziel-Kamerapositions-Generatorkomponente 115 leitet die bestimmten Ziel-Kamerapositionen (und in einigen Ausführungsformen die zeitliche Abfolge der generierten Ziel-Kamerapositionen) an die Bildansichten-Interpolationskomponente 120 weiter.
  • Die Bildansichten-Interpolationskomponente 120 wendet einen Ansichten-Interpolationsalgorithmus auf das Bild an, um synthetisierte Bilder zu generieren. Ein synthetisiertes Bild ist im Wesentlichen ein Bild der ursprünglich erfassten Szene aus dem Blickpunkt einer Ziel-Kameraposition (die sich von der Originalkameraposition unterscheidet). Die Bildansichten-Interpolationskomponente 120 kann irgendeinen geeigneten Ansichten-Interpolationsalgorithmus verwenden, um synthetisierte Bilder zu generieren. In einer Ausführungsform verwendet der Ansichten-Interpolationsalgorithmus die Farbpixel des Bildes 102 und eine mit dem Bild verknüpfte Tiefenkarte 103, um die synthetisierten Bilder zu generieren. Die Bildansichten-Interpolationskomponente 120 kann ein synthetisiertes Bild für jede Ziel-Kameraposition generieren, die aus der Ziel-Kamerapositions-Generatorkomponente 115 empfangen wird. In einer Ausführungsform ordnet die Bildansichten-Interpolationskomponente 120 die synthetisierten Bilder gemäß der zeitlichen Abfolge der Ziel-Kamerapositionen. Die Bildansichten-Interpolationskomponente 120 leitet die synthetisierten Bilder an die Bild-Verkettungskomponente 125 zur weiteren Verarbeitung weiter.
  • Die Bild-Verkettungskomponente 125 verkettet die synthetisierten Bilder, um ein Video 130 zu erstellen. In einer Ausführungsform verkettet die Bild-Verkettungskomponente 125 die synthetisierten Bilder gemäß einer zeitlichen Abfolge der Ziel-Kamerapositionen, die von der Ziel-Kamerapositions-Generatorkomponente 115 generiert worden ist. Auf diese Weise ist das System in der Lage, ein Video 130 aus einem Bild 102 zu erstellen. Das Video 130 zeigt auf eine animierte Art die durch das Bild 102 erfasste Szene aus verschiedenen unterschiedlichen Blickpunkten, die ursprünglich nicht durch das Bild 102 erfasst worden waren.
  • Somit ermöglicht das Bildverarbeitungssystem 100 dem Anwender, eine animierte visuelle Geschichte anhand eines Bildes 102 zu erstellen. Das Bildverarbeitungssystem 100 ermöglicht es dem Anwender, zu spezifizieren, welche Objekte im Bild 102 von Interesse sind und welche Art von visuellem Effekt auf das Bild 102 angewendet werden soll. Auf Basis der Anwendereingaben erstellt das Bildverarbeitungssystem 100 automatisch ein Video 130 aus dem Bild 102, das Blickpunkte des Bildes 102 enthält, die ursprünglich nicht durch das Bild 102 erfasst worden waren. Auf diese Weise ermöglicht das Bildverarbeitungssystem 100 dem Anwender, den Blickpunkt des Bildes 102 im Nachhinein sogar zu ändern, nachdem das Bild 102 erfasst worden ist. Somit versetzt das Bildverarbeitungssystem 100 den Anwender in die Lage, eindrucksvolle visuelle Effekte auf eine einfache und intuitive Weise zu erstellen.
  • 2 ist eine grafische Darstellung, die ein Bild veranschaulicht, das in ein Video animiert wird, gemäß einigen Ausführungsformen. Wie oben erörtert worden ist, kann ein Ansichten-Interpolationsalgorithmus auf ein Bild 102 angewendet werden, um synthetisierte Bilder 205 aus dem Blickpunkt verschiedener unterschiedlicher Kamerapositionen zu generieren. In einer Ausführungsform werden die unterschiedlichen Kamerapositionen durch den Anwender spezifiziert oder auf Basis von Anwendereingaben bestimmt (z. B. durch Empfangen von Anwendereingaben über die Bild-Anwender-Interaktionskomponente 110). Die synthetisierten Bilder 205 werden durch Verketten der synthetisierten Bilder 205 zu einem Video animiert, so dass jedes synthetisierte Bild ein Frame des Videos 130 wird. In einer Ausführungsform ist auch das Bild 102 als ein Frame in dem Video enthalten. Das sich ergebende Video 130 enthält Blickpunkte, die ursprünglich nicht durch das Bild 102 erfasst worden waren.
  • 3 ist ein Blockschaltbild, das ein Videoverarbeitungssystem zum Erstellen eines modifizierten Videos mit neuen Blickpunkten gemäß einigen Ausführungsformen veranschaulicht. Das Videoverarbeitungssystem 300 enthält einen Datenspeicher 105, eine Video-Anwender-Interaktionskomponente 310, eine Ziel-Videokamerapositions-Generatorkomponente 315, eine Videoansichten-Interpolationskomponente 320 und eine Frame-Verkettungskomponente 325. Die Komponenten des Videoverarbeitungssystems 300 können auf Basis von anwendungsspezifischen integrierten Schaltungen (ASICs), einem universellen Mikroprozessor, einem Field Programmable Gate Array (FPGA), einer Digitalsignalsteuerung oder einem Satz logischer Hardwarestrukturen umgesetzt werden.
  • Das Videoverarbeitungssystem 300 arbeitet mit den Video-Frames 302 eines Videos, um das Video in ein modifiziertes Video 330 mit neuen Blickpunkten zu konvertieren. Das Video kann ein digitales Video sein, das von einer digitalen Videokamera aufgezeichnet worden ist. Jeder Frame des Videos weist Farbpixel auf, die eine durch diesen Frame erfasste Szene repräsentieren. Die Position, von der aus die Videokamera den Frame erfasst hat, wird hier als die Originalvideokameraposition für diesen Frame bezeichnet. Jeder Frame weist eine mit ihm verknüpfte Tiefenkarte auf, die Informationen aufweist, die sich auf den Abstand der Oberflächen der durch diesen Frame erfassten Szene (von der Originalvideokameraposition) beziehen. In einer Ausführungsform können sowohl die Video-Frames 302 als auch die mit den jeweiligen Video-Frames 302 verknüpften Tiefenkarten 303 aus einer tiefenerfassenden digitalen Videokamera abgerufen werden. In einer Ausführungsform kann die mit einem Frame verknüpfte Tiefenkarte durch Analysieren anderer Frames im Video hergeleitet werden, zum Beispiel unter Verwendung einer Structure-from-Motion-Technik. In einer Ausführungsform werden das Video (mit den Video-Frames 302) und die mit den jeweiligen Video-Frames 302 des Videos verknüpften Tiefenkarten 303 im Datenspeicher 105 gespeichert, damit das Videoverarbeitungssystem 300 damit arbeiten kann.
  • Die Video-Anwender-Interaktionskomponente 310 stellt für einen Anwender eine Anwenderschnittstelle bereit und nimmt Anwendereingaben vom Anwender über die Anwenderschnittstelle an. Die Video-Anwender-Interaktionskomponente 310 kann ein Video (z. B. das im Datenspeicher 105 gespeicherte Video) auf einem Display (nicht gezeigt) anzeigen und eine Schnittstelle für den Anwender zum Interagieren mit dem Video bereitstellen. In einer Ausführungsform empfängt die Video-Anwender-Interaktionskomponente 310 Anwendereingaben, die einen oder mehrere interessierende Frames im Video und einen auf das Video anzuwendenden Effekt angeben. Zum Beispiel kann die Video-Anwender-Interaktionskomponente 310 eine Anwenderschnittstelle bereitstellen, die es dem Anwender ermöglicht, einen oder mehrere interessierende Frames im Video auszuwählen. Auch kann die Video-Anwender-Interaktionskomponente 310 eine Anwenderschnittstelle bereitstellen, die es dem Anwender ermöglicht, einen auf das Video anzuwendenden Effekt auszuwählen. In einer Ausführungsform zeigt die Video-Anwender-Interaktionskomponente 310 eine endliche Anzahl vordefinierter Effekte (d. h. Effekte, die vorab in das Videoverarbeitungssystem 300 geladen worden sind) auf dem Display an, aus denen der Anwender auswählen kann. Zum Beispiel könnte die Auswahl an Effekten einen Moment-Freeze-Effekt, einen Zeit-Übergangseffekt und einen Zeitlupen-Zeit-Übergangseffekt beinhalten. In einer Ausführungsform stellt die Video-Anwender-Interaktionskomponente 310 eine Anwenderschnittstelle bereit, die es dem Anwender ermöglicht, die Videokamerabewegung wie gewünscht zu steuern. Solch eine Anwenderschnittstelle kann Eingaben von einem Touchscreen-Display, einem Beschleunigungsaufnehmer, einem Gyroskop oder irgendeiner Kombination daraus nutzen. Zum Beispiel kann der Anwender eine (x, y) Position auf einem Frame des Videos berühren, damit sie der Mittelpunkt für die Videokamerabewegung ist, und dann Pinch-Gesten mit zwei Fingern verwenden, um die Videokamera in der z-Dimension näher oder weiter weg zu bewegen. Diese Bewegung entlang der z-Richtung kann mit schwenkenden und rotierenden Videokamerabewegungen kombiniert werden, die anhand von Beschleunigungsaufnehmer- und/oder Gyroskopeingaben gemappt werden können. Die Video-Anwender-Interaktionskomponente 310 empfängt Anwendereingaben und leitet die Anwendereingaben (z. B. die angegebenen interessierenden Frames und den auf das Video anzuwendenden Effekt) an die Ziel-Videokamerapositions-Generatorkomponente 315 weiter.
  • Die Ziel-Videokamerapositions-Generatorkomponente 315 bestimmt eine oder mehrere Ziel-Videokamerapositionen auf Basis der Anwendereingabe. Die Ziel-Videokamerapositionen sind virtuelle Videokamerapositionen (die sich von der Originalvideokameraposition unterscheiden), die verwendet werden, um neue Blickpunkte des Videos zu generieren, wie nachstehend weiter ausführlich beschrieben wird. Wie hier verwendet, kann sich eine Ziel-Videokameraposition auf einen Ort einer virtuellen Videokamera (z. B. im 3D-Raum) und eine Ausrichtung der virtuellen Videokamera (z. B. in welche Richtung eine optische Achse der Kamera gewandt ist) beziehen. Zum Beispiel kann eine Ziel-Videokameraposition sich von der Originalvideokameraposition durch Verschiebung (z. B. Änderung des Orts) und/oder in der Ausrichtung (z. B. Änderung der Neigung, Rollen und/oder Gieren) unterscheiden. In einer Ausführungsform bestimmt die Ziel-Videokamerapositions-Generatorkomponente 315 automatisch die Ziel-Videokamerapositionen auf Basis der interessierenden Frames und des vom Anwender angegebenen Effekts (der z. B. von der Video-Anwender-Interaktionskomponente 310 empfangen wird). In einer Ausführungsform identifiziert die Ziel-Videokamera-Generatorkomponente 315 automatisch die interessierenden Frames. Zum Beispiel können die interessierenden Frames automatisch auf Basis des Detektierens von gewissen Emotionen in einem Frame identifiziert werden (z. B. auf der Basis von Gesichtserkennung, die einen traurigen oder glücklichen Gesichtsausdruck detektiert), durch Analysieren von Audiosignalen, die zum Video gehören (z. B. kann eine plötzliche Zunahme der Lautstärke einen interessierenden Frame angeben), oder durch Bestimmen, bei welchen Frames der Anwender am häufigsten anhält. In einer Ausführungsform bestimmt die Ziel-Videokamerapositions-Generatorkomponente 315 auch eine zeitliche Abfolge der Ziel-Videokamerapositionen, die eine Reihenfolge der Ziel-Videokamerapositionen spezifiziert. In einer Ausführungsform verknüpft die Ziel-Videokamerapositions-Generatorkomponente 315 jeden Frame des Videos mit einer oder mehreren der Ziel-Videokamerapositionen. Diese Verknüpfung spezifiziert den/die gewünschten Blickpunkt(e) für jeden Frame. Die Ziel-Videokamerapositions-Generatorkomponente 315 leitet die bestimmten Ziel-Videokamerapositionen (und in einigen Ausführungsformen die zeitliche Abfolge der Ziel-Videokamerapositionen und/oder die Verknüpfung von Frames zu Ziel-Videokamerapositionen) an die Videoansichten-Interpolationskomponente 320 weiter.
  • Die Videoansichten-Interpolationskomponente 320 wendet einen Ansichten-Interpolationsalgorithmus auf einen oder mehrere Frames des Videos an, um einen oder mehrere synthetisierte Frames zu generieren. Ein synthetisierter Frame ist im Wesentlichen ein Frame des Videos aus einem Blickpunkt einer Ziel-Videokameraposition (die sich von der Originalvideokameraposition für diesen Frame unterscheidet). In einer Ausführungsform generiert die Videoansichten-Interpolationskomponente 320 einen oder mehrere synthetisierte Frames für einen Frame des Videos aus dem Blickpunkt der Ziel-Kamerapositionen, die mit diesem Frame verknüpft sind. Die Videoansichten-Interpolationskomponente 320 kann irgendeinen geeigneten Ansichten-Interpolationsalgorithmus verwenden, um synthetisierte Frames zu generieren. In einer Ausführungsform verwendet der Ansichten-Interpolationsalgorithmus die Farbpixel eines Frame und eine mit dem Frame verknüpfte Tiefenkarte, um den/die synthetisierten Frame(s) zu generieren. In einer Ausführungsform ordnet die Videoansichten-Interpolationskomponente 320 die synthetisierten Frames gemäß der zeitlichen Abfolge der Ziel-Videokamerapositionen. Die Videoansichten-Interpolationskomponente 320 leitet die synthetisierten Frames an die Frame-Verkettungskomponente 325 zur weiteren Verarbeitung weiter.
  • Die Frame-Verkettungskomponente 325 verkettet die synthetisierten Frames, um ein modifiziertes Video 330 zu erstellen. In einer Ausführungsform verkettet die Frame-Verkettungskomponente 325 die synthetisierten Frames gemäß einer zeitlichen Abfolge der Ziel-Videokamerapositionen, die von der Ziel-Videokamerapositions-Generatorkomponente 315 bestimmt worden ist. Auf diese Weise ist das Videoverarbeitungssystem 300 in der Lage, ein modifiziertes Video 330 mit neuen Blickpunkten zu erstellen. Das modifizierte Video 330 zeigt die in dem Video aufgezeichneten Szenen aus verschiedenen Blickpunkten, die sich von den Blickpunkten, die ursprünglich vom Video aufgezeichnet worden sind, unterscheiden.
  • Somit ermöglicht das Videoverarbeitungssystem 300 dem Anwender, eine visuelle Geschichte anhand eines Videos zu erstellen. Das Videoverarbeitungssystem 300 ermöglicht es dem Anwender, zu spezifizieren, welche Frames im Video von Interesse sind und welche Art von visuellem Effekt auf das Video angewendet werden soll. Auf Basis der Anwendereingaben erstellt das Videoverarbeitungssystem 300 automatisch ein modifiziertes Video 330 aus dem Video, das Blickpunkte des Videos enthält, die ursprünglich nicht durch das Video aufgezeichnet worden waren. Auf diese Weise ermöglicht das Videoverarbeitungssystem 300 dem Anwender, den Blickpunkt des Videos im Nachhinein sogar zu ändern, nachdem das Video aufgezeichnet worden ist. Somit versetzt das Videoverarbeitungssystem 300 den Anwender in die Lage, eindrucksvolle visuelle Effekte auf eine einfache und intuitive Weise zu erstellen.
  • 4 ist eine grafische Darstellung, die einen Moment-Freeze-Effekt veranschaulicht, der auf ein Video angewendet wird, gemäß einigen Ausführungsformen. Ein Video, das von einer Videokamera aufgezeichnet worden ist, enthält Video-Frames 302. In einer Ausführungsform ist jeder Frame des Videos mit einer Tiefenkarte (d. h. den Tiefenkarten 303) verknüpft. Ein Moment-Freeze-Effekt kann auf das Video angewendet werden, um ein modifiziertes Video 330 (mit modifizierten Video-Frames 405) zu erstellen. Ein Moment-Freeze-Effekt ist ein visueller Effekt, bei dem die Zeit anzuhalten (oder „freeze“) scheint, während sich die Videokamera weiter bewegt. Der Moment-Freeze-Effekt beginnt bei einem interessierenden Frame. In einer Ausführungsform wird der interessierende Frame von einem Anwender ausgewählt. In einem Video, das zum Beispiel eine Gruppe von Menschen erfasst, die zusammen in die Luft springen, kann der Anwender den Frame als den interessierenden Frame auswählen, der den Moment erfasst, in dem jeder in der Gruppe in der Luft ist. Wie gezeigt wird, ist der interessierende Frame der Frame X, also wird der Moment-Freeze-Effekt auf den Frame X angewendet. Die modifizierten Video-Frames 405 sind bis zum Erreichen des Frame X die gleichen wie die Video-Frames 302. Der Moment-Freeze-Effekt wird durch Generieren von synthetisierten Frames erstellt, die die im Frame X erfasste Szene aus dem Blickpunkt mehrerer unterschiedlicher Videokamerapositionen repräsentieren. In einer Ausführungsform werden die unterschiedlichen Videokamerapositionen durch den Anwender spezifiziert (z. B. durch Empfangen von Anwendereingaben über die Video-Anwender-Interaktionskomponente 310). In einer anderen Ausführungsform werden die unterschiedlichen Videokamerapositionen automatisch vom Videoverarbeitungssystem 300 bestimmt (z. B. auf Basis der vordefinierten Videokamerabewegung für diesen Effekt). Die synthetisierten Frames können durch Anwenden eines geeigneten Ansichten-Interpolationsalgorithmus auf den Frame X unter Verwendung der Farbpixel des Frame X und der mit dem Frame X verknüpften Tiefenkarte generiert werden. Diese synthetisierten Frames werden verkettet, um einen visuellen Effekt zu erstellen, bei dem die Zeit anzuhalten (oder „freeze“) scheint, während sich die Videokamera weiter bewegt. Nachfolgende Frames, die auf den Moment-Freeze-Effekt folgen, können synthetisierte Frames aus dem Blickpunkt der Videokameraposition sein, bei der der Moment-Freeze-Effekt geendet hat, um die Kontinuität aufrechtzuerhalten. In einigen Fällen endet der Moment-Freeze-Effekt mit einer Videokameraposition, die an der gleichen Position wie eine Originalvideokameraposition ist. In diesem Fall können die auf den Moment-Freeze-Effekt folgenden Frames die gleichen wie die Video-Frames 302 sein (d. h. nicht synthetisierte Frames).
  • 5 ist eine grafische Darstellung, die einen Zeit-Übergangseffekt veranschaulicht, der auf ein Video angewendet wird, gemäß einigen Ausführungsformen. Ein Video, das von einer Videokamera aufgezeichnet worden ist, enthält Video-Frames 302. In einer Ausführungsform ist jeder Frame des Videos mit einer Tiefenkarte (d. h. den Tiefenkarten 303) verknüpft. Ein Zeit-Übergangseffekt kann auf das Video angewendet werden, um ein modifiziertes Video 330 (mit modifizierten Video-Frames 405) zu erstellen. Ein Zeit-Übergangseffekt ist ein visueller Effekt, bei dem sich die Videokamera herum bewegt, um Blickpunkte zu zeigen, die sich von den Blickpunkten unterscheiden, die ursprünglich durch ein Video aufgezeichnet worden sind. Der Zeit-Übergangseffekt wird zwischen einem interessierenden Start-Frame und einem interessierenden End-Frame angewendet. In einer Ausführungsform werden der interessierende Start-Frame und der interessierende End-Frame von einem Anwender ausgewählt. Wie gezeigt wird, ist der interessierende Start-Frame der Frame X, und der interessierende End-Frame ist der Frame Y, so dass der Zeit-Übergangseffekt auf die Frames zwischen dem Frame X und dem Frame Y angewendet wird. Die modifizierten Video-Frames 405 sind bis zum Erreichen des Frame X die gleichen wie die Video-Frames 302. Der Zeit-Übergangseffekt wird durch Generieren eines synthetisierten Frame für jeden Frame des Videos zwischen dem Frame X und dem Frame Y erstellt, aus dem Blickpunkt einer Videokameraposition, die sich von der Originalvideokameraposition für diesen Frame unterscheidet. In einer Ausführungsform werden die unterschiedlichen Videokamerapositionen durch den Anwender spezifiziert (z. B. durch Empfangen von Anwendereingaben über die Video-Anwender-Interaktionskomponente 310). In einer anderen Ausführungsform werden die unterschiedlichen Videokamerapositionen automatisch vom Videoverarbeitungssystem 300 bestimmt (z. B. auf Basis der vordefinierten Videokamerabewegung für diesen Effekt). Der synthetisierte Frame kann aus einem Original-Frame (z. B. den Frames X-Y) durch Anwenden eines geeigneten Ansichten-Interpolationsalgorithmus auf den Original-Frame unter Verwendung der Farbpixel des Original-Frame und der mit dem Original-Frame verknüpften Tiefenkarte generiert werden. Die synthetisierten Frames werden verkettet, um einen visuellen Effekt zu erstellen, bei dem sich die Videokamera herum bewegt, um Blickpunkte zu zeigen, die sich von den Blickpunkten unterscheiden, die im Video aufgezeichnet worden sind. Nachfolgende Frames, die auf den Zeit-Übergangseffekt folgen, können synthetisierte Frames vom Blickpunkt der Videokameraposition sein, bei der der Zeit-Übergangseffekt geendet hat, um die Kontinuität aufrechtzuerhalten. In einigen Fällen bewegt sich die Videokameraposition während des Zeit-Übergangseffekts herum und kehrt dann, am Ende des Zeit-Übergangseffekts, zu einer Originalvideokameraposition zurück. In diesem Fall können die auf den Zeit-Übergangseffekt folgenden Frames die gleichen wie die Video-Frames 302 sein (d. h. nicht synthetisierte Frames).
  • 6 ist eine grafische Darstellung, die einen Zeitlupen-Zeit-Übergangseffekt veranschaulicht, der auf ein Video angewendet wird, gemäß einigen Ausführungsformen. Ein Video, das von einer Videokamera aufgezeichnet worden ist, enthält Video-Frames 302. In einer Ausführungsform ist jeder Frame des Videos mit einer Tiefenkarte (d. h. den Tiefenkarten 303) verknüpft. Ein Zeitlupen-Zeit-Übergangseffekt kann auf das Video angewendet werden, um ein modifiziertes Video 330 (mit modifizierten Video-Frames 405) zu erstellen. Ein Zeitlupen-Zeit-Übergangseffekt ist ein visueller Effekt, bei dem sich die Zeit zu verlangsamen scheint (d. h. Zeitlupe), während sich die Videokamera herum bewegt, um Blickpunkte zu zeigen, die sich von den Blickpunkten unterscheiden, die ursprünglich durch das Video aufgezeichnet worden sind. Der Zeitlupen-Zeit-Übergangseffekt wird zwischen einem interessierenden Start-Frame und einem interessierenden End-Frame angewendet. In einer Ausführungsform werden der interessierende Start-Frame und der interessierend End-Frame von einem Anwender ausgewählt. Wie gezeigt wird, ist der interessierende Start-Frame der Frame X, und der interessierende End-Frame ist der Frame Y, so dass der Zeitlupen-Zeit-Übergangseffekt auf die Frames zwischen dem Frame X und dem Frame Y angewendet wird. Die modifizierten Video-Frames 405 sind bis zum Erreichen des Frame X die gleichen wie die Video-Frames 302. Der Zeitlupen-Zeit-Übergangseffekt wird durch Generieren mehrerer synthetisierter Frames für jeden Frame des Videos zwischen dem Frame X und dem Frame Y erstellt, aus dem Blickpunkt mehrerer Videokamerapositionen, die sich von der Originalvideokameraposition für diesen Frame unterscheiden. In einer Ausführungsform werden die unterschiedlichen Videokamerapositionen durch den Anwender spezifiziert (z. B. durch Empfangen von Anwendereingaben über die Video-Anwender-Interaktionskomponente 310). In einer anderen Ausführungsform werden die unterschiedlichen Videokamerapositionen automatisch vom Videoverarbeitungssystem 300 bestimmt (z. B. auf Basis der vordefinierten Videokamerabewegung für diesen Effekt). Die synthetisierten Frames können aus einem Original-Frame (z. B. den Frames X-Y) durch Anwenden eines geeigneten Ansichten-Interpolationsalgorithmus auf den Original-Frame unter Verwendung der Farbpixel des Original-Frame und der mit dem Original-Frame verknüpften Tiefenkarte generiert werden. Die synthetisierten Frames werden verkettet, um einen visuellen Effekt zu erstellen, bei dem sich die Zeit zu verlangsamen scheint (d. h. Zeitlupe), während sich die Videokamera herum bewegt, um Blickpunkte zu zeigen, die sich von den Blickpunkten unterscheiden, die im Video aufgezeichnet worden sind. Nachfolgende Frames, die auf den Zeitlupen-Zeit-Übergangseffekt folgen, können synthetisierte Frames vom Blickpunkt der Videokameraposition sein, bei der der Zeitlupen-Zeit-Übergangseffekt geendet hat, um die Kontinuität aufrechtzuerhalten. In einigen Fällen bewegt sich die Videokameraposition während des Zeitlupen-Zeit-Übergangseffekts herum und kehrt dann, am Ende des Zeitlupen-Zeit-Übergangseffekts, zu einer Originalvideokameraposition zurück. In diesem Fall können die auf den Zeitlupen-Zeit-Übergangseffekt folgenden Frames die gleichen wie die Video-Frames 302 sein (d. h. nicht synthetisierte Frames).
  • Der Ansichten-Interpolationsalgorithmus setzt wirksam Tiefeninformationen ein, um synthetisierte Bilder/Frames aus neuen Blickpunkten zu generieren. Allerdings weisen Tiefenkarten (d. h. die Tiefenkarte oder die Tiefenkarten 303) häufig verrauschte Werte auf, also kann in einer Ausführungsform Glättung auf eine Tiefenkarte angewendet werden, und die geglättete Tiefenkarte wird vom Ansichten-Interpolationsalgorithmus verwendet. Das Verwenden der geglätteten Tiefenkarte kann für die Wahrnehmung angenehmere synthetisierte Bilder/Frames generieren. In einer Ausführungsform weist die mit einem Bild/Frame verknüpfte Tiefenkarte nur Tiefeninformationen für einen Teil des Bildes/Frame auf (d. h. einen interessierenden Bereich, wie zum Beispiel den mittleren Bereich des ganzen Bildes/Frame). In einer Ausführungsform weist die Tiefenkarte, die mit einem Bild/Frame verknüpft ist, die gleiche Auflösung wie die Farbpixel des Bildes/Frame auf. Zum Beispiel können sowohl die Farbpixel als auch die Tiefenkarte des Bildes/Frame eine Auflösung von 640 × 480 aufweisen. In anderen Ausführungsformen kann die mit einem Bild/Frame verknüpfte Tiefenkarte eine geringere Auflösung als die Farbpixel des Bildes/Frame aufweisen. Zum Beispiel können die Farbpixel des Bildes/Frame eine Auflösung von 640 × 480 aufweisen, während die Tiefenkarte des Bildes/Frame eine geringere Auflösung von 128 × 96 aufweist. Das Verwenden einer Tiefenkarte mit einer geringeren Auflösung kann die Berechnungskomplexität und die Speicheranforderungen des Ansichten-Interpolationsalgorithmus reduzieren. Allerdings kann dies auch die Qualität der synthetisierten Bilder/Frames verringern, die durch den Ansichten-Interpolationsalgorithmus generiert werden.
  • In einer Ausführungsform wird eine Verlustfunktion bezüglich der gewünschten Tiefe/Disparität minimiert, um die optimale Tiefe/Disparität abzurufen, die dann verwendet werden kann, um die synthetisierten Bilder/Frames zu generieren. Es werden die Ziel-Tiefen-/-Disparitätswerte als d1, d2, ..., dN und die Originalwerte als o1, o2, ..., oM bezeichnet. Es sei dp,t der Vektor, der die unbekannten Werte an Eckpunkten des Polygons p des Gitters enthält. Es sei on die Tiefe/Disparität an irgendeinem Punkt im Polygon p, und wn sei der Vektor mit den Interpolationsgewichtungen, die jedem Eckpunkt des Polygons p für diesen Punkt zugeteilt sind. Zum Beispiel kann wn bilineare Interpolationsgewichtungen sein. Dann kann die quadratische Verlustfunktion lauten: E(d1, d2, ..., dN) = Ed(d1, d2, ..., dN) + αEs(d1, d2, ..., dN) + βEt(d1, d2, ..., dN)
  • Der Datenterm, die räumliche Verzerrung und die zeitliche Verzerrung werden jeweils wie folgt definiert als:
    Figure DE112016002023T5_0002
  • f(.) ist ein Maß der Wahrnehmungsverzerrung. Zum Beispiel ist ein mögliches Verzerrungsmaß die Summe der quadrierten Differenzen zwischen den Paaren d p,t / i und d p,t / j der Tiefen-/Disparitätswerte an den Eckpunkten des Polygons p. Der Datenterm schränkt die gewünschte Tiefe/Disparität d1, d2, ..., dN ein, so dass sie in der Nähe der Eingangstiefe/-disparität liegt. Gleichzeitig zwingen die Verzerrungsterme die Wahrnehmungseinschränkungen auf d1, d2, ..., dN, so dass die generierte Ansicht für die Wahrnehmung annehmbar ist. Es(d1, d2, ..., dN) gilt innerhalb des aktuellen Frame/Bildes, während Et(d1, d2, ..., dN) bei der Videointerpolation verwendet wird, um Verzerrungen, wie zum Beispiel Jitter über aufeinanderfolgende Frames, zu glätten. Selbstverständlich sind viele Varianten der Gleichungen möglich. Zum Beispiel können die Verzerrungsterme mit räumlich-zeitlicher Salienz gewichtet werden, so dass Flächen des Bildes/Frame, die für die Wahrnehmung wichtiger sind, zum Beispiel das Gesicht einer Person, stärker gewichtet werden.
  • 7 ist eine grafische Darstellung einer transportierbaren handgeführten Computereinrichtung, die eine Anwenderschnittstelle zum Erstellen einer visuellen Geschichte anzeigt, gemäß einigen Ausführungsformen. Die transportierbare handgeführte Computereinrichtung 700 kann ein Smartphone, ein Tablet, ein Laptop, ein Camcorder oder eine ähnliche Computereinrichtung sein. Die transportierbare handgeführte Computereinrichtung 700 kann ein Kameramodul 730, einen Lautsprecher 705, ein Touchscreen-Display 710, eine Taste 715 und andere Komponenten enthalten, die typischerweise in solchen Einrichtungen enthalten sind. In einer Ausführungsform ist das Kameramodul 730 eine tiefenerfassende Digitalkamera, die in der Lage ist, ein Bild und eine mit dem Bild verknüpfte Tiefenkarte zu erfassen. In einer Ausführungsform ist die tiefenerfassende Digitalkamera in der Lage, ein Video aufzuzeichnen und Tiefenkarten für Frames des Videos zu erfassen (d. h. eine tiefenerfassende digitale Videokamera). In einer Ausführungsform enthält die transportierbare handgeführte Computereinrichtung 700 einen Infrarot-Tiefensensor, um eine Tiefenkarte für ein Bild bzw. einen Frame zu erfassen oder die Tiefenwerte/Charakteristika einer Szene anders zu erfassen. In einer Ausführungsform enthält die transportierbare handgeführte Computereinrichtung 700 mehrere Digitalkameras, die sich an unterschiedlichen bekannten Positionen der transportierbaren handgeführten Computereinrichtung 700 befinden, und kann Tiefenwerte durch Analysieren von Bildern/Frames berechnen, die zeitgleich von einer oder mehreren Digitalkameras an unterschiedlichen bekannten Positionen erfasst worden sind.
  • Wie gezeigt wird, wird ein von der transportierbaren handgeführten Computereinrichtung 700 erfasstes Bild auf dem Touchscreen-Display 710 angezeigt. Das erfasste Bild enthält eine Szene mit verschiedenen Objekten, wie zum Beispiel einem Baum, Bergen und Menschen. Der Anwender kann mit der transportierbaren handgeführten Computereinrichtung 700 interagieren, um eine Person als ein interessierendes Objekt 720 auszuwählen. Zum Beispiel kann der Anwender dies machen, indem er auf dem Touchscreen-Display 710 der transportierbaren handgeführten Computereinrichtung 700 mit seinem Finger auf die Person tippt. Die transportierbare handgeführte Computereinrichtung 700 kann eine Anwenderschnittstelle auf dem Touchscreen-Display 710 der transportierbaren handgeführten Computereinrichtung 700 anzeigen, die es dem Anwender ermöglicht, einen anzuwendenden Effekt aus einer Liste vordefinierter Effekte auszuwählen (d. h. Effekte, die vorab auf die transportierbare handgeführte Computereinrichtung 700 oder in eine Anwendung, die auf der transportierbaren handgeführten Computereinrichtung 700 installiert ist, geladen worden sind). Zu den vordefinierten Effekten zählen, wie gezeigt wird, jedoch ohne darauf beschränkt zu sein: ein Schwenkeffekt, ein Rotationseffekt, ein Dolly-Zoom-Effekt und ein Ken-Burns-Effekt. Bei Auswählen eines vordefinierten Effekts wird der ausgewählte Effekt auf das Bild angewendet. In einer Ausführungsform enthält die transportierbare handgeführte Computereinrichtung 700 eine oder mehrere Komponenten des Bildverarbeitungssystems 100, wie zum Beispiel den Datenspeicher 105, die Bild-Anwender-Interaktionskomponente 110, die Ziel-Kamerapositions-Generatorkomponente 115, die Bildansichten-Interpolationskomponente 120 und die Bild-Verkettungskomponente 125, um ein Video aus dem erfassten Bild auf Basis von Anwendereingaben zu erstellen, wie oben beschrieben wird.
  • Die transportierbare handgeführte Computereinrichtung 700 kann ebenfalls ein Video, das sie aufgezeichnet hat, und eine Schnittstelle für den Anwender, um einen oder mehrere interessierende Frames aus dem Video auszuwählen, ebenso wie eine Schnittstelle anzeigen, um einen zur Anwendung auf das Video gewünschten Effekt auszuwählen. In einer Ausführungsform enthält die transportierbare handgeführte Computereinrichtung 700 eine oder mehrere Komponenten des Videoverarbeitungssystems 300, wie zum Beispiel den Datenspeicher 105, die Video-Anwender-Interaktionskomponente 310, die Ziel-Videokamerapositions-Generatorkomponente 315, die Videoansichten-Interpolationskomponente 320 und die Frame-Verkettungskomponente 325, um ein modifiziertes Video aus dem Video auf Basis von Anwendereingaben zu erstellen, wie oben beschrieben wird.
  • Die transportierbare handgeführte Computereinrichtung 700 kann einen oder mehrere Prozessoren und einen Speicher enthalten, der Anweisungen darin gespeichert hat, die den einen oder die mehreren Prozessoren dazu programmieren, irgendeine geeignete Kombination der bildverarbeitenden und videoverarbeitenden Operationen, die oben beschrieben werden, durchzuführen. Die verschiedenen Komponenten der transportierbaren handgeführten Computereinrichtung 700 können in einem Gehäuse der transportierbaren handgeführten Computereinrichtung 700 integriert sein.
  • 8 ist ein Blockschaltbild, das veranschaulicht, wie Komponenten des Bildverarbeitungssystems über eine Server-Plattform und eine Endanwenderplattform verteilt werden können, gemäß einigen Ausführungsformen. Eine Server-Plattform 810 und eine Endanwenderplattform 805 können miteinander über das Internet 820 kommunizieren. Die Endanwenderplattform 805 enthält eine bildgebende Sensoreinrichtung 815 (d. h. eine Digitalkameraeinrichtung), um Bilder zu erfassen. In einer Ausführungsform enthält die Endanwenderplattform 805 auch eine tiefenerfassende Einrichtung. Die Endanwenderplattform 805 kann die bildgebende Sensoreinrichtung 815 und die tiefenerfassende Einrichtung verwenden, um ein Bild und eine mit dem Bild verknüpfte Tiefenkarte zu erfassen. Die Endanwenderplattform 805 enthält auch eine Bild-Anwender-Interaktionskomponente 110. Die Bild-Anwender-Interaktionskomponente 110 kann irgendeine der Operationen, die oben in Bezug auf diese Komponente beschrieben werden, durchführen, einschließlich der Annahme von Anwendereingaben von einem Anwender der Endanwenderplattform, wie zum Beispiel eine Angabe eines interessierenden Objekts in einem erfassten Bild und eines gewünschten, auf das erfasste Bild anzuwendenden Effekts. Die Endanwenderplattform 805 kann das erfasste Bild, die mit dem erfassten Bild verknüpfte Tiefenkarte, eine Angabe eines oder mehrerer interessierender Objekte im erfassten Bild und eines gewünschten, auf das erfasste Bild anzuwendenden Effekts über das Internet 820 an die Server-Plattform 810 senden. In einer Ausführungsform ist die Endanwenderplattform 805 eine mobile Einrichtung (wie zum Beispiel eine transportierbare handgeführte Computereinrichtung 700).
  • Die Server-Plattform 810 enthält eine Ziel-Kamerapositions-Generatorkomponente 115, eine Bildansichten-Interpolationskomponente 120 und eine Bild-Verkettungskomponente 125. Die Server-Plattform 810 empfängt das erfasste Bild, die mit dem erfassten Bild verknüpfte Tiefenkarte, die Angabe eines oder mehrerer interessierender Objekte im erfassten Bild und des gewünschten, auf das erfasste Bild anzuwendenden Effekts. Die Ziel-Kamerapositions-Generatorkomponente 115, die Bildansichten-Interpolationskomponente 120 und die Bildverkettungskomponente 125 können irgendeine der Operationen durchführen, die oben in Bezug auf diese Komponenten beschrieben werden, um ein Video aus dem erfassten Bild auf Basis von Anwendereingaben zu erstellen. Das sich ergebende Video 130 wird über das Internet 820 an die Endanwenderplattform 805 gesendet. Alternativ kann das Video 130 in einem Datenspeicher 105 gespeichert werden, wo auf das Video 130 vom Anwender der Endanwenderplattform 805 oder von anderen Anwendern über das Internet 820 zugegriffen werden kann.
  • In einer Ausführungsform kann die Server-Plattform 810 ein Bild und eine mit dem Bild verknüpfte Tiefenkarte aus dem Datenspeicher 105 abrufen, wo das Bild und/oder die Tiefenkarte vorher erfasst oder anders produziert und dann im Datenspeicher 105 gespeichert worden sind. In solch einer Ausführungsform kommuniziert die Server-Plattform 810 mit dem Datenspeicher 105, um das Bild und die mit dem Bild verknüpfte Tiefenkarte abzurufen. Nach dem Verarbeiten des Bildes zum Generieren eines Videos 130 kann die Server-Plattform 810 dann das Video 130 im Datenspeicher 105 speichern oder sie kann das Video 130 einer Endanwenderplattform 805 zustellen. In all diesen Beispielen kann eine Kombination aus drahtgebundenen und drahtlosen Kommunikationsverknüpfungen, die über das Internet 820 laufen, bereitgestellt werden, um das Video in den Datenspeicher 105 oder in eine Cloud hochzuladen.
  • Allgemeiner gesagt: Die Komponenten des hier beschriebenen Bildverarbeitungssystems 100 können auf verschiedene Weisen über die Endanwenderplattform 805 und die Server-Plattform 810 verteilt sein, abhängig von Kriterien, zu denen Optimierung der Leistungsaufnahme, Erwägungen zur Bandbreite, gewünschte Antwortzeit (Latenzzeit), Speicher und irgendwelche anderen architektonischen oder Leistungskriterien zählen.
  • Die Komponenten des Videoverarbeitungssystems 300 können auf eine ähnliche Art über die Endanwenderplattform 805 und die Server-Plattform 810 verteilt sein. Zum Beispiel kann die Endanwenderplattform 805 ein Video aufzeichnen und Tiefenkarten für Frames des Videos erfassen (z. B. unter Verwendung einer tiefenerfassenden digitalen Videokameraeinrichtung). Die Endanwenderplattform 805 kann eine Video-Anwender-Interaktionskomponente 310 enthalten, die irgendeine der Operationen, die oben in Bezug auf diese Komponente beschrieben werden, durchführen kann. Zum Beispiel kann die Video-Anwender-Interaktionskomponente 310 Anwendereingaben von einem Anwender der Endanwenderplattform 805 annehmen, wie zum Beispiel eine Angabe eines oder mehrerer interessierender Frames und eines gewünschten, auf das Video anzuwendenden Effekts. Die Endanwenderplattform 805 kann die Frames des Videos, die mit den jeweiligen Frames verknüpften Tiefenkarten, eine Angabe eines oder mehrerer interessierender Frames und eines gewünschten, auf das Video anzuwendenden Effekts über das Internet 820 an die Server-Plattform 810 senden.
  • Die Server-Plattform 810 kann eine Ziel-Videokamerapositions-Generatorkomponente 315, eine Videoansichten-Interpolationskomponente 320 und eine Frame-Verkettungskomponente 325 enthalten. Die Server-Plattform 810 empfängt die Frames des Videos, die mit den jeweiligen Frames des Videos verknüpften Tiefenkarten, die Angabe eines oder mehrerer interessierender Frames und des gewünschten, auf das Video anzuwendenden Effekts. Die Ziel-Videokamerapositions-Generatorkomponente 315, die Videoansichten-Interpolationskomponente 320 und die Frame-Verkettungskomponente 325 können irgendeine der Operationen durchführen, die oben in Bezug auf diese Komponenten beschrieben werden, um auf Basis von Anwendereingaben ein modifiziertes Video aus dem Video zu erstellen, das von der Endanwenderplattform 805 aufgezeichnet worden ist. Die Server-Plattform 810 kann das modifizierte Video über das Internet 820 an die Endanwenderplattform 805 senden oder kann das modifizierte Video im Datenspeicher 105 speichern, wo vom Anwender der Endanwenderplattform 805 oder von anderen Anwendern über das Internet 820 auf das modifizierte Video zugegriffen werden kann.
  • In einer Ausführungsform kann die Server-Plattform 810 ein Video und mit Frames des Videos verknüpfte Tiefenkarten aus dem Datenspeicher 105 abrufen, wo das Video und die Tiefenkarten vorher aufgezeichnet oder anders produziert und dann im Datenspeicher 105 gespeichert worden sind. Nach dem Verarbeiten des Videos zum Generieren eines modifizierten Videos kann die Server-Plattform 810 dann das modifizierte Video im Datenspeicher 105 speichern, oder sie kann das Video der Endanwenderplattform 805 zustellen.
  • Eine Ausführungsform kann ein Produkt sein, bei dem ein maschinenlesbares Speichermedium Anweisungen darauf gespeichert hat, die eine oder mehrere Datenverarbeitungskomponenten (im Allgemeinen hier als ein „Prozessor“ bezeichnet) dazu programmieren, die oben beschriebenen Operationen durchzuführen. Zu Beispielen für maschinenlesbare Speichermedien zählen Nur-Lese-Speicher, Direktzugriffsspeicher, CD-ROMs, DVDs, Magnetbänder, optische Datenspeichermedien und Trägerwellen. Das maschinenlesbare Speichermedium kann auch über ein Netzwerk verteilt sein, so dass Softwareanweisungen auf eine verteilte Art gespeichert und ausgeführt werden. In anderen Ausführungsformen könnten einige dieser Operationen durch spezifische Hardwarekomponenten durchgeführt werden, die festverdrahtete Logik enthalten. Diese Operationen könnten alternativ durch irgendeine Kombination aus programmierten Datenverarbeitungskomponenten und festgelegten, festverdrahteten Schaltungskomponenten durchgeführt werden.
  • Eine Ausführungsform kann wie folgt beschrieben werden. Ein Verfahren zum Erstellen eines Videos aus einem Bild. Das Verfahren beinhaltet, ein Originalbild einer Szene zu speichern, das von einer Kamera an einer Originalkameraposition erfasst worden ist, wobei das Originalbild Farbpixel aufweist, die die Szene repräsentieren. Das Verfahren beinhaltet des Weiteren, eine Tiefenkarte des Originalbildes zu speichern, eine oder mehrere Ziel-Kamerapositionen zu bestimmen, die sich von der Originalkameraposition unterscheiden (wie es z. B. von der oben beschriebenen Ziel-Kamerapositions-Generatorkomponente 115 durchgeführt wird), synthetisierte Bilder aus einem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen durch Anwenden eines Ansichten-Interpolationsalgorithmus auf das Originalbild unter Verwendung der Farbpixel des Originalbildes und der Tiefenkarte des Originalbildes zu generieren (wie es z. B. von der oben beschriebenen Bildansichten-Interpolationskomponente 120 durchgeführt wird) und die synthetisierten Bilder zu verketten, um ein Video aus den synthetisierten Bildern zu erstellen (wie es z. B. von der oben beschriebenen Bildverkettungskomponente 125 durchgeführt wird). In einem Aspekt beinhaltet das Verfahren des Weiteren, von einem Anwender eine Angabe eines interessierenden Objekts im Originalbild zu empfangen, vom Anwender eine Auswahl eines auf das Originalbild anzuwendenden Effekts zu empfangen und die eine oder die mehreren Ziel-Kamerapositionen auf Basis des angegebenen interessierenden Objekts und des ausgewählten Effekts zu bestimmen. In einem Aspekt kann der ausgewählte Effekt irgendeiner der folgenden sein: ein Schwenkeffekt, ein Rotationseffekt, ein Dolly-Zoom-Effekt und ein Ken-Burns-Effekt. In einem Aspekt beinhaltet das Verfahren des Weiteren, dem Anwender eine endliche Anzahl vordefinierter Effekte anzuzeigen, damit der Anwender daraus auswählen kann. In einem Aspekt weist die Tiefenkarte des Originalbildes eine geringere Auflösung als die Farbpixel des Originalbildes auf. In einem Aspekt wird das Originalbild von einer tiefenerfassenden Digitalkamera erfasst, und die Tiefenkarte wird aus der tiefenerfassenden Digitalkamera abgerufen. Beispiele für diesen Ansatz, ein Video aus einem Bild zu erstellen, werden oben beschrieben (z. B. das Bildverarbeitungssystem 100).
  • Eine Ausführungsform kann wie folgt beschrieben werden. Eine transportierbare handgeführte Computereinrichtung zum Erstellen eines Videos aus einem Bild. Die transportierbare handgeführte Computereinrichtung enthält eine tiefenerfassende Digitalkamera, um ein Originalbild einer Szene zu erfassen und um eine Tiefenkarte des Originalbildes zu erfassen, wobei das Originalbild von der tiefenerfassenden Digitalkamera an einer Originalkameraposition erfasst wird und wobei das Originalbild Farbpixel aufweist, die die Szene repräsentieren. Die transportierbare handgeführte Computereinrichtung enthält des Weiteren einen Datenspeicher, um das Originalbild und die Tiefenkarte des Originalbildes zu speichern, und eine Ziel-Kamerapositions-Generatorkomponente, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, wobei sich die eine oder die mehreren Ziel-Kamerapositionen von der Originalkameraposition unterscheiden. Die transportierbare handgeführte Computereinrichtung enthält des Weiteren eine Bildansichten-Interpolationskomponente, um synthetisierte Bilder aus einem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen zu generieren, indem ein Ansichten-Interpolationsalgorithmus auf das Originalbild angewendet wird, wobei die Farbpixel des Originalbildes und die Tiefenkarte des Originalbildes und eine Bildverkettungskomponente zum Verketten der synthetisierten Bilder verwendet werden, um ein Video aus den synthetisierten Bildern zu erstellen. In einem Aspekt dient die Ziel-Kamerapositions-Generatorkomponente dazu, eine Angabe eines interessierenden Objekts im Originalbild und eine Angabe eines auf das Originalbild anzuwendenden Effekts zu empfangen, und die Ziel-Kamerapositions-Generatorkomponente dient dazu, die eine oder die mehreren Ziel-Kamerapositionen auf Basis des angegebenen interessierenden Objekts und des angegebenen Effekts zu bestimmen. In einem Aspekt kann der angegebene Effekt irgendeiner der folgenden sein: ein Schwenkeffekt, ein Rotationseffekt, ein Dolly-Zoom-Effekt und ein Ken-Burns-Effekt. In einem Aspekt enthält die transportierbare handgeführte Computereinrichtung des Weiteren ein Display und eine Bild-Anwender-Interaktionskomponente, um auf dem Display eine endliche Anzahl vordefinierter Effekte anzuzeigen, damit ein Anwender daraus auswählen kann. In einem Aspekt weist die Tiefenkarte des Originalbildes eine geringere Auflösung als die Farbpixel des Originalbildes auf. Beispiele für diesen Ansatz, ein Video aus einem Bild zu erstellen, werden oben beschrieben (z. B. das Bildverarbeitungssystem 100).
  • Eine Ausführungsform kann wie folgt beschrieben werden. Ein Produkt als Teil eines Bildverarbeitungssystems, das mit einem Originalbild einer Szene, das von einer Kamera an einer Originalkameraposition erfasst worden ist, und mit einer Tiefenkarte des Originalbildes arbeitet, wobei das Originalbild Farbpixel aufweist, die die Szene repräsentieren. Das Produkt weist ein computerlesbares Medium auf (z. B. ein „verteiltes“ Medium, wie zum Beispiel einen Teil eines Cloud-Computing-Systems, oder ein Medium, das sich vollständig innerhalb des Gehäuses einer Endanwenderplattform befindet), auf dem Anweisungen gespeichert sind, die einen Prozessor dazu programmieren, eine oder mehrere Ziel-Kamerapositionen zu bestimmen, die sich von der Originalkameraposition unterscheiden, synthetisierte Bilder aus einem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen zu generieren, indem ein Ansichten-Interpolationsalgorithmus auf das Originalbild angewendet wird, wobei die Farbpixel des Originalbildes und die Tiefenkarte des Originalbildes verwendet werden, und die synthetisierten Bilder zu verketten, um ein Video aus den synthetisierten Bildern zu erstellen. In einem Aspekt programmieren die gespeicherten Anweisungen den Prozessor dazu, eine Angabe eines interessierenden Objekts im Originalbild zu empfangen, eine Angabe eines auf das Originalbild anzuwendenden Effekts zu empfangen und die eine oder die mehreren Ziel-Kamerapositionen auf Basis des angegebenen interessierenden Objekts und des angegebenen Effekts zu bestimmen. In einem Aspekt kann der angegebene Effekt irgendeiner der folgenden sein: ein Schwenkeffekt, ein Rotationseffekt, ein Dolly-Zoom-Effekt und ein Ken-Burns-Effekt. Beispiele für diesen Ansatz, ein Video aus einem Bild zu erstellen, werden oben beschrieben (z. B. das Bildverarbeitungssystem 100).
  • Eine Ausführungsform kann wie folgt beschrieben werden. Ein System zum Erstellen eines Videos aus einem Bild. Das System enthält ein Mittel, um ein Originalbild einer Szene, das von einer Kamera an einer Originalkameraposition erfasst worden ist, und eine Tiefenkarte des Originalbildes zu speichern, wobei das Originalbild Farbpixel aufweist, die die Szene repräsentieren. Das System enthält des Weiteren Mittel, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, wobei die eine oder die mehreren Ziel-Kamerapositionen sich von der Originalkameraposition unterscheiden. Das System enthält des Weiteren ein Mittel, um synthetisierte Bilder aus einem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen zu generieren, indem ein Ansichten-Interpolationsalgorithmus auf das Originalbild angewendet wird, wobei die Farbpixel des Originalbildes und die Tiefenkarte des Originalbildes und ein Mittel zum Verketten der synthetisierten Bilder verwendet werden, um ein Video aus den synthetisierten Bildern zu erstellen. In einem Aspekt dient das Mittel, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, dazu, eine Angabe eines interessierenden Objekts im Originalbild und eine Angabe eines auf das Originalbild anzuwendenden Effekts zu empfangen, und das Mittel, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, bestimmt die eine oder die mehreren Ziel-Kamerapositionen auf Basis des angegebenen interessierenden Objekts und des angegebenen Effekts. Der angegebene Effekt kann irgendeiner der folgenden sein: ein Schwenkeffekt, ein Rotationseffekt, ein Dolly-Zoom-Effekt und ein Ken-Burns-Effekt. In einem Aspekt enthält das System des Weiteren ein Mittel, um einem Anwender eine endliche Anzahl vordefinierter Effekte anzuzeigen, damit der Anwender daraus auswählen kann. Beispiele für diesen Ansatz, ein Video aus einem Bild zu erstellen, werden oben beschrieben (z. B. das Bildverarbeitungssystem 100).
  • Eine Ausführungsform kann wie folgt beschrieben werden. Ein Verfahren zum Erstellen eines modifizierten Videos. Das Verfahren beinhaltet, mehrere Frames eines Videos zu speichern, das von einer Videokamera aufgezeichnet worden ist, wobei jeder Frame Farbpixel aufweist, die eine Szene repräsentieren. Das Verfahren beinhaltet des Weiteren, eine Tiefenkarte für jeden Frame der mehreren Frames zu speichern, eine oder mehrere Ziel-Videokamerapositionen zu bestimmen, jeden Frame der mehreren Frames mit einer oder mehreren der Ziel-Videokamerapositionen zu verknüpfen, für jeden Frame der mehreren Frames einen oder mehrere synthetisierte Frames aus einem Blickpunkt der einen oder der mehreren Ziel-Videokamerapositionen, die mit diesem Frame verknüpft sind, zu generieren, indem auf diesen Frame ein Ansichten-Interpolationsalgorithmus unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird, und die synthetisierten Frames zu verketten, um ein modifiziertes Video zu erstellen. In einem Aspekt beinhaltet das Verfahren des Weiteren, von einem Anwender eine Auswahl des einen oder der mehreren interessierenden Frames von den mehreren Frames zu empfangen, vom Anwender eine Auswahl eines auf den einen oder die mehreren interessierenden Frames anzuwendenden Effekts zu empfangen und die eine oder die mehreren Ziel-Videokamerapositionen auf Basis der ausgewählten interessierenden Frames und des ausgewählten Effekts zu bestimmen. In einem Aspekt kann der ausgewählte Effekt irgendeiner der folgenden sein: ein Moment-Freeze-Effekt, ein Zeit-Übergangseffekt und ein Zeitlupen-Zeit-Übergangseffekt. In einem Aspekt beinhaltet das Verfahren des Weiteren, dem Anwender eine endliche Anzahl vordefinierter Effekte anzuzeigen, damit der Anwender daraus auswählen kann. In einem Aspekt weist die Tiefenkarte eines Frame von den mehreren Frames eine geringere Auflösung als die Farbpixel dieses Frame auf. In einem Aspekt wird die Tiefenkarte wenigstens eines der Frames von den mehreren Frames unter Verwendung einer Structure-from-Motion-Technik hergeleitet. Beispiele für diesen Ansatz, ein modifiziertes Video zu erstellen, werden oben beschrieben (z. B. das Bildverarbeitungssystem 300).
  • Eine Ausführungsform kann wie folgt beschrieben werden. Eine transportierbare handgeführte Computereinrichtung zum Erstellen eines modifizierten Videos. Die transportierbare handgeführte Computereinrichtung enthält eine tiefenerfassende digitale Videokamera, um ein Video aufzuzeichnen, das mehrere Frames aufweist, und eine Tiefenkarte für jeden Frame der mehreren Frames zu erfassen, wobei jeder Frame der mehreren Frames Farbpixel aufweist, die eine Szene repräsentieren. Die transportierbare handgeführte Computereinrichtung enthält des Weiteren einen Datenspeicher, um die mehreren Frames des Videos und die Tiefenkarte für jeden Frame der mehreren Frames zu speichern, und eine Ziel-Videokamerapositions-Generatorkomponente, um eine oder mehrere Ziel-Videokamerapositionen zu bestimmen und jeden Frame der mehreren Frames mit einer oder mehreren der Ziel-Videokamerapositionen zu verknüpfen. Die transportierbare handgeführte Computereinrichtung enthält des Weiteren eine Videoansichten-Interpolationskomponente, um für jeden Frame der mehreren Frames einen oder mehrere synthetisierte Frames aus einem Blickpunkt der einen oder der mehreren Ziel-Videokamerapositionen, die mit diesem Frame verknüpft sind, zu generieren, indem auf diesen Frame ein Ansichten-Interpolationsalgorithmus unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird, und eine Frame-Verkettungskomponente, um synthetisierte Frames zu verketten, um ein modifiziertes Video zu erstellen. In einem Aspekt dient die Ziel-Videokamerapositions-Generatorkomponente dazu, eine Angabe eines oder mehrerer interessierender Frames von den mehreren Frames und eine Angabe eines auf den einen oder die mehreren interessierenden Frames anzuwendenden Effekts zu empfangen, wobei die Ziel-Videokamerapositions-Generatorkomponente die eine oder die mehreren Ziel-Videokamerapositionen auf Basis der angegebenen interessierenden Frames und des angegebenen Effekts bestimmt. In einem Aspekt kann der angegebene Effekt irgendeiner der folgenden sein: ein Moment-Freeze-Effekt, ein Zeit-Übergangseffekt und ein Zeitlupen-Zeit-Übergangseffekt. In einem Aspekt enthält die transportierbare handgeführte Computereinrichtung des Weiteren ein Display und eine Video-Anwender-Interaktionskomponente, um eine endliche Anzahl vordefinierter Effekte anzuzeigen, damit ein Anwender daraus auswählen kann. In einem Aspekt wird die Tiefenkarte wenigstens eines der Frames von den mehreren Frames unter Verwendung einer Structure-from-Motion-Technik hergeleitet. Beispiele für diesen Ansatz, ein modifiziertes Video zu erstellen, werden oben beschrieben (z. B. das Bildverarbeitungssystem 300).
  • Eine Ausführungsform kann wie folgt beschrieben werden. Ein Produkt als Teil eines Videoverarbeitungssystems, das mit mehreren Frames eines Videos, das von einer Videokamera aufgezeichnet worden ist, und Tiefenkarten der mehreren Frames arbeitet, wobei jeder Frame der mehreren Frames Farbpixel aufweist, die eine Szene repräsentieren. Das Produkt weist ein computerlesbares Medium auf (z. B. ein „verteiltes“ Medium, wie zum Beispiel einen Teil eines Cloud-Computing-Systems, oder ein Medium, das sich vollständig innerhalb des Gehäuses einer Endanwenderplattform befindet), auf dem Anweisungen gespeichert sind, die einen Prozessor dazu programmieren, eine oder mehrere Ziel-Videokamerapositionen zu bestimmen, jeden Frame der mehreren Frames mit einer oder mehreren der Ziel-Videokamerapositionen zu verknüpfen, für jeden Frame der mehreren Frames einen oder mehrere synthetisierte Frames aus einem Blickpunkt der einen oder der mehreren Ziel-Videokamerapositionen, die mit diesem Frame verknüpft sind, zu generieren, indem auf diesen Frame ein Ansichten-Interpolationsalgorithmus unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird, und die synthetisierten Frames zu verketten, um ein modifiziertes Video zu erstellen. In einem Aspekt programmieren die gespeicherten Anweisungen den Prozessor dazu, eine Angabe eines oder mehrerer interessierender Frames von den mehreren Frames zu empfangen, eine Angabe eines auf den einen oder die mehreren interessierenden Frames anzuwendenden Effekts zu empfangen und die eine oder die mehreren Ziel-Videokamerapositionen auf Basis der angegebenen interessierenden Frames und des angegebenen Effekts zu bestimmen. In einem Aspekt kann der angegebene Effekt irgendeiner der folgenden sein: ein Moment-Freeze-Effekt, ein Zeit-Übergangseffekt und ein Zeitlupen-Zeit-Übergangseffekt. Beispiele für diesen Ansatz, ein modifiziertes Video zu erstellen, werden oben beschrieben (z. B. das Bildverarbeitungssystem 300).
  • Eine Ausführungsform kann wie folgt beschrieben werden. Ein System zum Erstellen eines modifizierten Videos. Das System enthält Mittel, um mehrere Frames eines Videos, das von einer Videokamera aufgezeichnet worden ist, und eine Tiefenkarte für jeden Frame der mehreren Frames zu speichern, wobei jeder Frame Farbpixel aufweist, die eine Szene repräsentieren. Das System enthält des Weiteren ein Mittel, um eine oder mehrere Ziel-Videokamerapositionen zu bestimmen und jeden Frame der mehreren Frames mit einer oder mehreren der Ziel-Videokamerapositionen zu verknüpfen. Das System enthält des Weiteren ein Mittel, um für jeden Frame der mehreren Frames einen oder mehrere synthetisierte Frames aus einem Blickpunkt der einen oder der mehreren Ziel-Videokamerapositionen, die mit diesem Frame verknüpft sind, zu generieren, indem auf diesen Frame ein Ansichten-Interpolationsalgorithmus unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird, und ein Mittel, um synthetisierte Frames zu verketten, um ein modifiziertes Video zu erstellen. In einem Aspekt dient das Mittel, um eine oder mehrere Ziel-Videokamerapositionen zu bestimmen, dazu, eine Angabe eines oder mehrerer interessierender Frames von den mehreren Frames und eine Angabe eines auf den einen oder die mehreren interessierenden Frames anzuwendenden Effekts zu empfangen, und das Mittel, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, bestimmt die eine oder die mehreren Ziel-Kamerapositionen auf Basis der angegebenen Frames und des angegebenen Effekts. Der angegebene Effekt kann irgendeiner der folgenden sein: ein Moment-Freeze-Effekt, ein Zeit-Übergangseffekt und ein Zeitlupen-Zeit-Übergangseffekt. In einem Aspekt enthält das System des Weiteren ein Mittel, um einem Anwender eine endliche Anzahl vordefinierter Effekte anzuzeigen, damit der Anwender daraus auswählen kann. Beispiele für diesen Ansatz, ein modifiziertes Video zu erstellen, werden oben beschrieben (z. B. das Bildverarbeitungssystem 300).
  • Obwohl gewisse Ausführungsformen beschrieben und in den zugehörigen Zeichnungen gezeigt worden sind, versteht es sich, dass solche Ausführungsformen lediglich zur Veranschaulichung dienen und für die allgemeine Offenbarung nicht einschränkend sind, und dass diese Offenbarung nicht auf die gezeigten und beschriebenen spezifischen Bauarten und Anordnungen beschränkt ist, weil Durchschnittsfachleuten verschiedene andere Modifikationen einfallen können.

Claims (25)

  1. Verfahren zum Erstellen eines modifizierten Videos, das Folgendes umfasst: mehrere Frames eines Videos zu speichern, das von einer Videokamera aufgezeichnet worden ist, wobei jeder Frame Farbpixel aufweist, die eine Szene repräsentieren; eine Tiefenkarte für jeden Frame der mehreren Frames zu speichern; eine oder mehrere Ziel-Videokamerapositionen zu bestimmen; jeden Frame der mehreren Frames mit einer oder mehreren der Ziel-Videokamerapositionen zu verknüpfen; für jeden Frame der mehreren Frames einen oder mehrere synthetisierte Frames aus einem Blickpunkt der einen oder der mehreren Ziel-Videokamerapositionen zu generieren, die mit diesem Frame verknüpft sind, indem ein Ansichten-Interpolationsalgorithmus auf diesen Frame unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird; und die synthetisierten Frames zu verketten, um ein modifiziertes Video zu erstellen.
  2. Verfahren nach Anspruch 1, das des Weiteren Folgendes umfasst: von einem Anwender eine Auswahl eines oder mehrerer interessierender Frames von den mehreren Frames zu empfangen; von dem Anwender eine Auswahl eines auf den einen oder die mehreren interessierenden Frames anzuwendenden Effekts zu empfangen; und die eine oder die mehreren Ziel-Videokamerapositionen auf Basis der ausgewählten interessierenden Frames und des ausgewählten Effekts zu bestimmen.
  3. Verfahren nach Anspruch 2, wobei der ausgewählte Effekt irgendeiner der Folgenden ist: ein Moment-Freeze-Effekt, ein Zeit-Übergangseffekt und ein Zeitlupen-Zeit-Übergangseffekt.
  4. Verfahren nach einem der Ansprüche 2 oder 3, das weiterhin Folgendes umfasst: dem Anwender eine endliche Anzahl vordefinierter Effekte anzuzeigen, damit der Anwender daraus auswählen kann.
  5. Verfahren nach einem der Ansprüche 1–3, wobei die Tiefenkarte eines Frame von den mehreren Frames eine geringere Auflösung als die Farbpixel dieses Frame aufweist.
  6. Verfahren nach einem der Ansprüche 1–3, wobei eine Tiefenkarte wenigstens eines der Frames von den mehreren Frames unter Verwendung einer Structure-from-Motion-Technik hergeleitet wird.
  7. Transportierbare handgeführte Computereinrichtung zum Erstellen eines modifizierten Videos, die Folgendes umfasst: eine tiefenerfassende digitale Videokamera, um ein Video aufzuzeichnen, das mehrere Frames aufweist, und eine Tiefenkarte für jeden Frame der mehreren Frames zu erfassen, wobei jeder Frame der mehreren Frames Farbpixel aufweist, die eine Szene repräsentieren; einen Datenspeicher, um die mehreren Frames des Videos und die Tiefenkarte für jeden Frame der mehreren Frames zu speichern; eine Ziel-Videokamerapositions-Generatorkomponente, um eine oder mehrere Ziel-Videokamerapositionen zu bestimmen und jeden Frame der mehreren Frames mit einer oder mehreren der Ziel-Videokamerapositionen zu verknüpfen; eine Videoansichten-Interpolationskomponente, um für jeden Frame der mehreren Frames einen oder mehrere synthetisierte Frames aus einem Blickpunkt der einen oder der mehreren Ziel-Videokamerapositionen zu generieren, die mit diesem Frame verknüpft sind, indem ein Ansichten-Interpolationsalgorithmus auf diesen Frame unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird; und eine Frame-Verkettungskomponente, um synthetisierte Frames zu verketten, um ein modifiziertes Video zu erstellen.
  8. Transportierbare handgeführte Computereinrichtung nach Anspruch 7, wobei die Ziel-Videokamerapositions-Generatorkomponente dazu dient, eine Angabe eines oder mehrerer interessierender Frames von den mehreren Frames und eine Angabe eines auf den einen oder die mehreren interessierenden Frames anzuwendenden Effekts zu empfangen, und wobei die Ziel-Videokamerapositions-Generatorkomponente die eine oder die mehreren Ziel-Videokamerapositionen auf Basis der angegebenen interessierenden Frames und des angegebenen Effekts bestimmt.
  9. Transportierbare handgeführte Computereinrichtung nach Anspruch 8, wobei der angegebene Effekt irgendeiner der Folgenden ist: ein Moment-Freeze-Effekt, ein Zeit-Übergangseffekt und ein Zeitlupen-Zeit-Übergangseffekt.
  10. Transportierbare handgeführte Computereinrichtung nach einem der Ansprüche 8 oder 9, die des Weiteren Folgendes umfasst: ein Display; und eine Video-Anwender-Interaktionskomponente, um eine endliche Anzahl vordefinierter Effekte anzuzeigen, damit ein Anwender daraus auswählen kann.
  11. Transportierbare handgeführte Computereinrichtung nach einem der Ansprüche 7–9, wobei eine Tiefenkarte wenigstens eines der Frames von den mehreren Frames unter Verwendung einer Structure-from-Motion-Technik hergeleitet wird.
  12. Produkt für ein Videoverarbeitungssystem, das mit mehreren Frames eines Videos, das von einer Videokamera aufgezeichnet worden ist, und Tiefenkarten der mehreren Frames arbeitet, wobei jeder Frame der mehreren Frames Farbpixel aufweist, die eine Szene repräsentieren, wobei das Produkt Folgendes umfasst: ein computerlesbares Medium, das darauf Anweisungen gespeichert hat, die einen Prozessor dazu programmieren, eine oder mehrere Ziel-Videokamerapositionen zu bestimmen, jeden Frame der mehreren Frames mit einer oder mehreren der Ziel-Videokamerapositionen zu verknüpfen, für jeden Frame der mehreren Frames einen oder mehrere synthetisierte Frames aus einem Blickpunkt der einen oder der mehreren Ziel-Videokamerapositionen zu generieren, die mit diesem Frame verknüpft sind, indem auf diesen Frame ein Ansichten-Interpolationsalgorithmus unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird, und die synthetisierten Frames zu verketten, um ein modifiziertes Video zu erstellen.
  13. Produkt nach Anspruch 12, wobei die gespeicherten Anweisungen den Prozessor dazu programmieren, eine Angabe eines oder mehrerer interessierender Frames von den mehreren Frames zu empfangen, eine Angabe eines auf den einen oder die mehreren interessierenden Frames anzuwendenden Effekts zu empfangen und die eine oder die mehreren Ziel-Videokamerapositionen auf Basis der angegebenen interessierenden Frames und des angegebenen Effekts zu bestimmen.
  14. Produkt nach Anspruch 13, wobei der angegebene Effekt irgendeiner der Folgenden ist: ein Moment-Freeze-Effekt, ein Zeit-Übergangseffekt und ein Zeitlupen-Zeit-Übergangseffekt.
  15. System zum Erstellen eines modifizierten Videos, das Folgendes umfasst: Mittel, um mehrere Frames eines Videos, das von einer Videokamera aufgezeichnet worden ist, und eine Tiefenkarte für jeden Frame der mehreren Frames zu speichern, wobei jeder Frame Farbpixel aufweist, die eine Szene repräsentieren; Mittel, um eine oder mehrere Ziel-Videokamerapositionen zu bestimmen und jeden Frame der mehreren Frames mit einer oder mehreren der Ziel-Videokamerapositionen zu verknüpfen; Mittel, um für jeden Frame der mehreren Frames einen oder mehrere synthetisierte Frames aus einem Blickpunkt der einen oder der mehreren Ziel-Videokamerapositionen zu generieren, die mit diesem Frame verknüpft sind, indem ein Ansichten-Interpolationsalgorithmus auf diesen Frame unter Verwendung der Farbpixel dieses Frame und der Tiefenkarte dieses Frame angewendet wird; und Mittel, um die synthetisierten Frames zu verketten, um ein modifiziertes Video zu erstellen.
  16. System nach Anspruch 15, wobei das Mittel, um eine oder mehrere Ziel-Videokamerapositionen zu bestimmen, dazu dient, eine Angabe eines oder mehrerer interessierender Frames von den mehreren Frames und eine Angabe eines auf den einen oder die mehreren interessierenden Frames anzuwendenden Effekts zu empfangen, und wobei das Mittel, um eine oder mehrere Ziel-Videokamerapositionen zu bestimmen, die eine oder die mehreren Ziel-Videokamerapositionen auf Basis der angegebenen Frames und des angegebenen Effekts bestimmt.
  17. System nach Anspruch 16, wobei der ausgewählte Effekt irgendeiner der Folgenden ist: ein Moment-Freeze-Effekt, ein Zeit-Übergangseffekt und ein Zeitlupen-Zeit-Übergangseffekt.
  18. Verfahren zum Erstellen eines Videos aus einem Bild, das Folgendes umfasst: ein Originalbild einer Szene zu speichern, das von einer Kamera an einer Originalkameraposition erfasst worden ist, wobei das Originalbild Farbpixel aufweist, die die Szene repräsentieren; eine Tiefenkarte des Originalbildes zu speichern; eine oder mehrere Ziel-Kamerapositionen zu bestimmen, die sich von der Originalkameraposition unterscheiden; synthetisierte Bilder aus einem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen zu generieren, indem ein Ansichten-Interpolationsalgorithmus auf das Originalbild unter Verwendung der Farbpixel des Originalbildes und der Tiefenkarte des Originalbildes angewendet wird; und die synthetisierten Bilder zu verketten, um ein Video aus den synthetisierten Bildern zu erstellen.
  19. Verfahren nach Anspruch 18, das des Weiteren Folgendes umfasst: von einem Anwender eine Angabe eines interessierenden Objekts im Originalbild zu empfangen; von dem Anwender eine Auswahl eines auf das Originalbild anzuwendenden Effekts zu empfangen; und die eine oder die mehreren Ziel-Kamerapositionen auf Basis des angegebenen interessierenden Objekts und des ausgewählten Effekts zu bestimmen.
  20. Transportierbare handgeführte Computereinrichtung zum Erstellen eines Videos aus einem Bild, die Folgendes umfasst: eine tiefenerfassende Digitalkamera, um ein Originalbild einer Szene zu erfassen und um eine Tiefenkarte des Originalbildes zu erfassen, wobei das Originalbild von der tiefenerfassenden Digitalkamera an einer Originalkameraposition erfasst wird und wobei das Originalbild Farbpixel aufweist, die die Szene repräsentieren; einen Datenspeicher, um das Originalbild und die Tiefenkarte des Originalbildes zu speichern; eine Ziel-Kamerapositions-Generatorkomponente, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, wobei die eine oder die mehreren Ziel-Kamerapositionen sich von der Originalkameraposition unterscheiden; eine Bildansichten-Interpolationskomponente, um synthetisierte Bilder aus einem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen zu generieren, indem ein Ansichten-Interpolationsalgorithmus auf das Originalbild unter Verwendung der Farbpixel des Originalbildes und der Tiefenkarte des Originalbildes angewendet wird; und eine Bildverkettungskomponente, um die synthetisierten Bilder zu verketten, um ein Video aus den synthetisierten Bildern zu erstellen.
  21. Transportierbare handgeführte Computereinrichtung nach Anspruch 20, wobei die Ziel-Kamerapositions-Generatorkomponente dazu dient, eine Angabe eines interessierenden Objekts im Originalbild und eine Angabe eines auf das Originalbild anzuwendenden Effekts zu empfangen, und wobei die Ziel-Kamerapositions-Generatorkomponente dazu dient, die eine oder die mehreren Ziel-Kamerapositionen auf Basis des angegebenen interessierenden Objekts und des angegebenen Effekts zu bestimmen.
  22. Produkt für ein Bildverarbeitungssystem, das mit einem Originalbild einer Szene, das von einer Kamera an einer Originalkameraposition erfasst worden ist, und mit einer Tiefenkarte des Originalbildes arbeitet, wobei das Originalbild Farbpixel aufweist, die die Szene repräsentieren, wobei das Produkt Folgendes umfasst: ein nichtflüchtiges computerlesbares Medium, auf dem Anweisungen gespeichert sind, die einen Prozessor dazu programmieren, eine oder mehrere Ziel-Kamerapositionen zu bestimmen, die sich von der Originalkameraposition unterscheiden, synthetisierte Bilder aus einem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen zu generieren, indem ein Ansichten-Interpolationsalgorithmus auf das Originalbild unter Verwendung der Farbpixel des Originalbildes und der Tiefenkarte des Originalbildes angewendet wird, und die synthetisierten Bilder zu verketten, um ein Video aus den synthetisierten Bildern zu erstellen.
  23. Produkt nach Anspruch 22, wobei die gespeicherten Anweisungen den Prozessor dazu programmieren, eine Angabe eines interessierenden Objekts im Originalbild zu empfangen, eine Angabe eines auf das Originalbild anzuwendenden Effekts zu empfangen und die eine oder die mehreren Ziel-Kamerapositionen auf Basis des angegebenen interessierenden Objekts und des angegebenen Effekts zu bestimmen.
  24. System zum Erstellen eines Videos aus einem Bild, das Folgendes umfasst: Mittel, um ein Originalbild einer Szene, das von einer Kamera an einer Originalkameraposition erfasst worden ist, und eine Tiefenkarte des Originalbildes zu speichern, wobei das Originalbild Farbpixel aufweist, die die Szene repräsentieren; Mittel, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, wobei die eine oder die mehreren Ziel-Kamerapositionen sich von der Originalkameraposition unterscheiden; Mittel, um synthetisierte Bilder aus einem Blickpunkt der einen oder der mehreren Ziel-Kamerapositionen zu generieren, indem auf das Originalbild ein Ansichten-Interpolationsalgorithmus unter Verwendung der Farbpixel des Originalbildes und der Tiefenkarte des Originalbildes angewendet wird; und Mittel, um die synthetisierten Bilder zu verketten, um ein Video aus den synthetisierten Bildern zu erstellen.
  25. System nach Anspruch 24, wobei das Mittel, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, dazu dient, eine Angabe eines interessierenden Objekts im Originalbild und eine Angabe eines auf das Originalbild anzuwendenden Effekts zu empfangen, und wobei das Mittel, um eine oder mehrere Ziel-Kamerapositionen zu bestimmen, die eine oder die mehreren Ziel-Kamerapositionen auf Basis des angegebenen interessierenden Objekts und des angegebenen Effekts bestimmt.
DE112016002023.6T 2015-06-24 2016-05-19 Interpolation von Ansichten zum Erzählen visueller Geschichten Pending DE112016002023T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/749,483 US10701282B2 (en) 2015-06-24 2015-06-24 View interpolation for visual storytelling
US14/749,483 2015-06-24
PCT/US2016/033314 WO2016209438A1 (en) 2015-06-24 2016-05-19 View interpolation for visual storytelling

Publications (1)

Publication Number Publication Date
DE112016002023T5 true DE112016002023T5 (de) 2018-01-18

Family

ID=57586089

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016002023.6T Pending DE112016002023T5 (de) 2015-06-24 2016-05-19 Interpolation von Ansichten zum Erzählen visueller Geschichten

Country Status (3)

Country Link
US (1) US10701282B2 (de)
DE (1) DE112016002023T5 (de)
WO (1) WO2016209438A1 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9332285B1 (en) * 2014-05-28 2016-05-03 Lucasfilm Entertainment Company Ltd. Switching modes of a media content item
JP6702329B2 (ja) * 2015-09-03 2020-06-03 ソニー株式会社 映像処理装置、映像処理方法、及び、プログラム
US10264324B2 (en) * 2015-10-02 2019-04-16 Videoslick, Inc. System and method for group-based media composition
US10805367B2 (en) * 2017-12-29 2020-10-13 Facebook, Inc. Systems and methods for sharing content
US10984583B2 (en) * 2018-03-28 2021-04-20 Apple Inc. Reconstructing views of real world 3D scenes
CN108810511B (zh) * 2018-06-21 2019-08-30 华中科技大学 一种基于视点一致性的多视点压缩深度视频增强方法
CN111091592B (zh) * 2018-10-24 2023-08-15 Oppo广东移动通信有限公司 图像处理方法、图像处理装置、电子设备及可读存储介质
US10951904B2 (en) * 2018-12-14 2021-03-16 Apple Inc. Gaze-driven recording of video
JP7204522B2 (ja) * 2019-02-20 2023-01-16 三菱電機株式会社 情報処理装置、空気調和機コントローラ、携帯装置、及び生成制御方法
US11423510B2 (en) * 2019-10-28 2022-08-23 Samsung Electronics Co., Ltd System and method for providing dolly zoom view synthesis
US12003829B2 (en) * 2019-11-29 2024-06-04 Naver Corporation Electronic device for providing target video in sports play video and operating method thereof
CN111862183A (zh) * 2020-07-02 2020-10-30 Oppo广东移动通信有限公司 深度图像处理方法和系统、电子设备及存储介质
US20220406003A1 (en) * 2021-06-17 2022-12-22 Fyusion, Inc. Viewpoint path stabilization
US11849209B2 (en) * 2021-12-01 2023-12-19 Comoto Holdings, Inc. Dynamically operating a camera based on a location of the camera

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850352A (en) * 1995-03-31 1998-12-15 The Regents Of The University Of California Immersive video, including video hypermosaicing to generate from multiple video views of a scene a three-dimensional video mosaic from which diverse virtual video scene images are synthesized, including panoramic, scene interactive and stereoscopic images
US6940538B2 (en) * 2001-08-29 2005-09-06 Sony Corporation Extracting a depth map from known camera and model tracking data
US7162075B2 (en) * 2003-03-10 2007-01-09 Cranial Technologies, Inc. Three-dimensional image capture system
JP4069855B2 (ja) 2003-11-27 2008-04-02 ソニー株式会社 画像処理装置及び方法
US7292257B2 (en) 2004-06-28 2007-11-06 Microsoft Corporation Interactive viewpoint video system and process
US7577309B2 (en) * 2005-06-18 2009-08-18 Muralidhara Subbarao Direct vision sensor for 3D computer vision, digital imaging, and digital video
US8284204B2 (en) 2006-06-30 2012-10-09 Nokia Corporation Apparatus, method and a computer program product for providing a unified graphics pipeline for stereoscopic rendering
US8736672B2 (en) * 2006-08-24 2014-05-27 Reald Inc. Algorithmic interaxial reduction
US8136133B2 (en) 2007-11-13 2012-03-13 Walker Digital, Llc Methods and systems for broadcasting modified live media
US8154633B2 (en) * 2007-11-16 2012-04-10 Sportvision, Inc. Line removal and object detection in an image
US8073190B2 (en) * 2007-11-16 2011-12-06 Sportvision, Inc. 3D textured objects for virtual viewpoint animations
US8049750B2 (en) * 2007-11-16 2011-11-01 Sportvision, Inc. Fading techniques for virtual viewpoint animations
US8106924B2 (en) 2008-07-31 2012-01-31 Stmicroelectronics S.R.L. Method and system for video rendering, computer program product therefor
WO2011028837A2 (en) * 2009-09-01 2011-03-10 Prime Focus Vfx Services Ii Inc. System and process for transforming two-dimensional images into three-dimensional images
JP5942195B2 (ja) * 2010-10-27 2016-06-29 パナソニックIpマネジメント株式会社 3次元画像処理装置、3次元撮像装置および3次元画像処理方法
US8760499B2 (en) * 2011-04-29 2014-06-24 Austin Russell Three-dimensional imager and projection device
US9179126B2 (en) * 2012-06-01 2015-11-03 Ostendo Technologies, Inc. Spatio-temporal light field cameras
US9330718B2 (en) 2013-02-20 2016-05-03 Intel Corporation Techniques for adding interactive features to videos
US9235899B1 (en) * 2015-06-12 2016-01-12 Google Inc. Simulating an infrared emitter array in a video monitoring camera to construct a lookup table for depth determination

Also Published As

Publication number Publication date
US10701282B2 (en) 2020-06-30
WO2016209438A1 (en) 2016-12-29
US20160381341A1 (en) 2016-12-29

Similar Documents

Publication Publication Date Title
DE112016002023T5 (de) Interpolation von Ansichten zum Erzählen visueller Geschichten
DE112020003794T5 (de) Tiefenbewusste Fotobearbeitung
Massey et al. Salient stills: Process and practice
US10609332B1 (en) Video conferencing supporting a composite video stream
DE69725875T2 (de) Videobetrachtungserfahrungen mit hilfe von standbildern
DE112018007721T5 (de) Aufnehmen und modifizieren von 3D-Gesichtern unter Verwendung neuronaler Bild-und Zeitverfolgungsnetze
DE69734658T2 (de) Verfahren und system für virtuelle kinematographie
DE102018207088A1 (de) Bildanalyse ohne marker für augmented reality
US11871127B2 (en) High-speed video from camera arrays
CN110832583A (zh) 用于从多个图像帧生成概要故事板的系统和方法
DE112016004216T5 (de) Allgemeine Sphärische Erfassungsverfahren
DE112016004731T5 (de) Erweitern von Mehrfachansicht-Bilddaten mit synthetischen Objekten unter Verwendung von IMU und Bilddaten
DE112019001257T5 (de) Stabilisierung von video zur verringerung von kamera- und gesichtsbewegung
DE112017000017T5 (de) Kameraeinstellungsanpassung basierend auf vorhergesagten umgebungsfaktoren und nachverfolgungssysteme, die diese einsetzen
US9305398B2 (en) Methods for creating and displaying two and three dimensional images on a digital canvas
KR20130137608A (ko) 2차원 이미지들로부터 3차원 가상 투어들 발생
DE202014010969U1 (de) Kamerafähiges Mobilgerät
CN107529091B (zh) 视频剪辑方法及装置
US10084970B2 (en) System and method for automatically generating split screen for a video of a dynamic scene
DE112019007677T5 (de) Posenvorhersageverfahren, Modelltrainingsverfahren und Vorrichtung
CN109791558B (zh) 微动图的自动选择
CN111756996A (zh) 视频处理方法、视频处理装置、电子设备及计算机可读存储介质
DE112019002353T5 (de) Techniken zum umschalten zwischen immersionsebenen
DE102019218373A1 (de) Hemisphären-cubemap-projektionsformat inabbildungsumgebungen
US9092912B1 (en) Apparatus and method for parallax, panorama and focus pull computer graphics

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: HGF EUROPE LLP, DE

Representative=s name: HGF EUROPE LP, DE

R016 Response to examination communication