DE202017106773U1 - Okulare Videostabilisierung - Google Patents

Okulare Videostabilisierung Download PDF

Info

Publication number
DE202017106773U1
DE202017106773U1 DE202017106773.4U DE202017106773U DE202017106773U1 DE 202017106773 U1 DE202017106773 U1 DE 202017106773U1 DE 202017106773 U DE202017106773 U DE 202017106773U DE 202017106773 U1 DE202017106773 U1 DE 202017106773U1
Authority
DE
Germany
Prior art keywords
hmd
user
intersection
image plane
sight
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.)
Active
Application number
DE202017106773.4U
Other languages
English (en)
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of DE202017106773U1 publication Critical patent/DE202017106773U1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0176Head mounted characterised by mechanical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • H04N13/383Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6812Motion detection based on additional sensors, e.g. acceleration sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0132Head-up displays characterised by optical features comprising binocular systems
    • G02B2027/0134Head-up displays characterised by optical features comprising binocular systems of stereoscopic type
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B2027/0178Eyeglass type
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0187Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Ein Computerprogrammprodukt umfassend Befehle, die, wenn sie auf einem auf dem Kopf tragbaren Gerät (HMD) ausgeführt werden, das HMD in Lage versetzen, ein computerimplementiertes Verfahren auszuführen, umfassend: beim Aufnehmen von Videobildern in einem Vorwärtsblickfeld (FOV) mit einer nach vorne gerichteten Videokamera, die an dem HMD befestigt ist, Aufnehmen von stereoskopischen Videobildern des linken und rechten Auges eines Nutzers des HMD mit einer zum linken und rechten Auge gerichteten Videokamera, die an dem HMD befestigt ist; basierend auf den aufgezeichneten stereoskopischen Videobildern des linken und rechten Auges des Nutzers des HMD Bestimmen von konvergierenden Blickrichtungen des Nutzers als Funktion der Zeit während eines Intervalls, das simultan zum Erfassen der Videobilder abläuft; und Stabilisieren der aufgezeichneten Videobilder durch Bewegungskompensation der nach vorne gerichteten Videokamera in Bezug auf die konvergierende Blickrichtung, mit einem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera.

Description

  • HINTERGRUND
  • Sofern hierin nicht anders angegeben, sind die in diesem Abschnitt beschriebenen Materialien nicht der Stand der Technik für die Ansprüche dieser Anmeldung und werden durch Aufnahme in diesen Abschnitt nicht als Stand der Technik anerkannt.
  • Es können verschiedene Technologien eingesetzt werden, um Nutzern elektronischen Zugriff auf Daten und Dienstleistungen in Kommunikationsnetzwerken zu bieten, und auch um eine Kommunikation zwischen Nutzern zu unterstützen. Beispielsweise können Geräte, wie Computer, Telefone und Minicomputer (PDAs) eingesetzt werden, um Informationen über Kommunikationsnetzwerke, einschließlich dem Internet, auszutauschen. Kommunikationsnetzwerke können dagegen Pfade und Links zu Servern bereitstellen, die Anwendungen, Inhalte und Dienstleistungen hosten können, auf die von Nutzern über Kommunikationsgeräte zugegriffen werden kann oder die von diesen genutzt werden können. Der Inhalt umfasst Text, Videodaten, Audiodaten und/oder sonstige Datentypen.
  • KURZDARSTELLUNG
  • In einem Aspekt bietet eine hier vorgestellte beispielhafte Ausführungsform, ein Computerprogrammprodukt mit Befehlen, die, wenn Sie von einem tragbaren, auf dem Kopf tragbaren Gerät (HMD) ausgeführt werden, das HMD in die Lage versetzen, ein computerimplementiertes Verfahren auszuführen, umfassend: bei der Aufnahme von Videobildern in einem Vorwärtsblickfeld (FOV) mit einer nach vorne gerichteten Videokamera, die an dem HMD befestigt ist, stereoskopische Videobilder des linken und rechten Auges eines HMD-Nutzers mit auf das linke und rechte Auge gerichteten Videokameras, die an dem HMD befestigt sind, aufzunehmen; basierend auf den aufgenommenen stereoskopischen Bildern des linken und rechten Auges des HMD-Nutzers, konvergierende Blickrichtungen des Nutzers als eine Funktion der Zeit während eines mit der Aufnahme der Videobilder simultan ablaufenden Intervalls zu bestimmen; und die aufgenommenen Videobilder durch Bewegungskompensation der nach vorne gerichteten Videokamera in Bezug auf die konvergierende Blickrichtung mit einem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera zu stabilisieren.
  • In einem anderen Aspekt stellt eine hier vorgestellte beispielhafte Ausführungsform, ein Computerprogrammprodukt mit Befehlen, die, wenn Sie von einem tragbaren, auf dem Kopf tragbaren Gerät (HMD) ausgeführt werden, das HMD in die Lage versetzen, ein computerimplementiertes Verfahren ausziführen, umfassend: bei der Aufnahme von Videobildern in einem Vorwärtsblickfeld (FOV) mit einer nach vorne gerichteten Videokamera, die an dem HMD befestigt ist, Augen-Blickrichtungen von mindestens entweder einem linken oder einem rechten Auge eines HMD-Nutzers mit einem Augen-Tracking-Gerät, das am HMD befestigt ist, aufzunehmen; basierend auf den aufgenommenen Augen-Blickrichtungen, Blickrichtungen des Nutzers als Funktion der Zeit während eines mit der Aufnahme der Videobilder gleichlaufenden Intervalls zu bestimmen; und die aufgenommenen Videobilder durch Bewegungskompensation der nach vorne gerichteten Videokamera in Bezug auf die Blickrichtungen mit einem Schnittpunkt der Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera zu stabilisieren.
  • In noch einem weiteren Aspekt stellt eine hier vorgestellte beispielhafte Ausführungsform ein auf dem Kopf tragbares Gerät (HMD) bereit, umfassend: eine nach vorne gerichtete Videokamera; ein Augen-Tracking-Gerät; einen Prozessor; und im Speicher abgelegte Anweisungen, die, wenn sie vom Prozessor ausgeführt werden, das HMD veranlassen, Vorgänge auszuführen, einschließlich: bei der Aufnahme von Videobildern in einem Vorwärtsblickfeld (FOV) mit der nach vorne gerichteten Videokamera, binokulare Augen-Blickrichtungen des linken und rechten Auges eines HMD-Nutzers mit dem Augen-Tracking-Gerät aufzunehmen; basierend auf den aufgenommenen binokularen Augen-Blickrichtungen des linken und rechten Auges eines HMD-Nutzers, konvergente Blickrichtungen des Nutzers als Funktion der Zeit während eines mit der Aufnahme der Videobilder gleichlaufenden Intervalls zu bestimmen; und die aufgenommenen Videobilder durch Bewegungskompensation der nach vorne gerichteten Videokamera in Bezug auf zu den konvergierenden Blickrichtungen mit einem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera zu stabilisieren.
  • Diese sowie andere Aspekte, Vorteile und Alternativen werden für den Fachmann durch das Lesen der folgenden ausführlichen Beschreibung mit Bezug auf die begleitenden Zeichnungen ersichtlich. Darüber hinaus versteht sich, dass diese Zusammenfassung und andere hier bereitgestellte Beschreibungen und Figuren nur der beispielhaften Veranschaulichung der Ausführungsformen dienen sollen und demgemäß zahlreiche Variationen möglich sind. Beispielsweise können Strukturelemente und Prozessschritte neu angeordnet, kombiniert, verteilt, beseitigt oder auf sonstige Weise verändert werden, während sie dennoch im Umfang der hier beanspruchten Ausführungsformen bleiben.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1A ist eine erste Ansicht eines beispielhaften tragbaren, auf dem Kopf tragbaren Geräts, gemäß einer beispielhaften Ausführungsform.
  • 1B ist eine zweite Ansicht eines beispielhaften tragbaren, auf dem Kopf tragbaren Geräts in 1A, gemäß einer beispielhaften Ausführungsform.
  • 1C veranschaulicht ein weiteres beispielhaftes tragbares, auf dem Kopf tragbares Gerät, gemäß einer beispielhaften Ausführungsform.
  • 1D veranschaulicht noch ein weiteres beispielhaftes tragbares, auf dem Kopf tragbares Gerät, gemäß einer beispielhaften Ausführungsform.
  • 2 ist ein Blockdiagramm eines tragbaren, auf dem Kopf tragbaren Geräts, gemäß einer beispielhaften Ausführungsform.
  • 3 ist ein vereinfachtes Blockdiagramm eines Kommunikationsnetzwerks, gemäß einer beispielhaften Ausführungsform.
  • 4A ist ein Blockdiagramm eines Computergeräts, gemäß einer beispielhaften Ausführungsform.
  • 4B zeigt ein Netzwerk mit Clustern von Computergeräten des in 4A gezeigten Typs gemäß einer beispielhaften Ausführungsform.
  • 5 ist eine konzeptionelle Veranschaulichung einer beispielhaften Videostabilisierungs-Basis zur Augenbewegung, gemäß einer beispielhaften Ausführungsform.
  • 6 ist ein Flussdiagramm, das ein beispielhaftes Verfahren einer Videostabilisierungs-Basis zur Augenbewegung, gemäß einer beispielhaften Ausführungsform, darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 1. Überblick
  • Ein auf dem Kopf tragbares Gerät (HMD) kann eine nach vorne gerichtete Videokamera beinhalten, konfiguriert, um Videobilder oder Videodaten (oder einfach ein „Video“) in einem Vorwärtsblickfeld (FOV) eines Nutzers oder Trägers des HMD aufzunehmen. Das von einer nach vorne gerichteten Videokamera eines auf dem Kopf tragbaren Geräts (HMD) aufgenommene Video kann instabil und verwackelt sein, besonders wenn der Nutzer sich bewegt. Bekannte Techniken für die Stabilisierung verwackelter und/oder instabiler Videobilder umfassen normalerweise zusätzliche Messungen, die die Bewegung der Videokamera bei der Aufnahme anzeigen, wie beispielsweise Messungen von Bewegungssensoren oder Ähnliches. Weitere Techniken können Formen analytischer Bewegungsmodellierung beinhalten, um Korrekturen auf verwackelte und/oder instabile Videobilder anzuwenden. Diese Techniken können jedoch rechenbedingt teuer sein und sind oft keine verlässlichen Indikatoren der tatsächlichen Bewegung einer Videokamera bei der Videoaufnahme.
  • Im Gegensatz zu sensorbasierten Messungen oder modellbasierten Schätzungen der Videokamerabewegung kann eine Augenbewegung und Blickrichtung eines Nutzers eine natürliche Basis für die Bewegungskorrektur einer Videokamera, die an einem von dem Nutzer tragbaren HMD befestigt ist, bieten. Im Allgemeinen ist das Auge/sind die Augen eines Nutzers auf ein bestimmtes Objekt oder auf Punkte in dem FOV fixiert und das Gehirn bewegt die Augen entgegen der Kopfbewegung, um den Fokus auf Objekte in der Umgebung aufrechtzuerhalten. Dadurch kann die Augenbewegung und Blickrichtung des Nutzers während der Videoaufnahme einen Hinweis auf (eine) Sehenswürdigkeit/Sehenswürdigkeiten im Vorwärtsblickfeld (FOV) bieten, die wiederum verwendet werden kann/können, um eine verlässliche und genaue Bewegungskompensation der nach vorne gerichteten Videokamera zu bestimmen und eine natürliche und rechenbedingt preiswerte Videostabilisierung zu ermöglichen.
  • In einer beispielhaften Ausführungsform kann die aus dem Augen-Tracking extrahierte Blickinformation „kollidiert“ werden, um einen Punkt einer Blickkonvergenz in dem Vorwärts-FOV des Nutzers zu bestimmen. Der Konvergenzpunkt kann dann auf einer Bildebene der nach vorne gerichteten Videokamera abgebildet werden. Beispielsweise kann das Mapping ein Pixel oder eine Gruppe von Pixeln identifizieren, die der konvergierenden Blickrichtung des Nutzers entsprechen. Dadurch werden unmittelbare Koordinaten auf dem Videobild der konvergierenden Blickrichtung des Nutzers bereitgestellt. Als eine Funktion der Zeit bietet diese Technik deshalb eine Trajektorie über Pixel in der Bildebene der nach vorne gerichteten Videokamera, die die Bewegung der nach vorne gerichteten Videokamera in Bezug auf die im Wesentlichen fixe Blickrichtung des Nutzers repräsentiert. Die Trajektorie entspricht demnach einem Bewegungspfad, der die Bewegung der Videokamera kompensiert. Die Trajektorie als Korrektur der Zeigerichtung der nach vorne gerichteten Kamera anzuwenden, kann daher die von der nach vorne gerichteten Videokamera aufgenommenen Videobilder stabilisieren.
  • In einer beispielhaften Ausführungsform kann ein tragbares HMD eine nach vorne gerichtete Kamera für die Aufnahme von Videobildern des Vorwärts-FOV eines Trägers (Nutzers) des HMD einschließen und kann auch auf die beiden Augen gerichtete Kameras einschließen, um die Augenbewegung und die Blickrichtung des linken und rechten Auges des Trägers zu erfassen. Noch spezieller kann eine auf das linke Auge gerichtete Kamera Videobilder des linken Auges des Trägers aufnehmen und eine auf das rechte Auge gerichtete Kamera kann Videobilder des rechten Auges des Trägers aufnehmen. Eine Videoaufnahme des linken und rechten Auges kann gleichzeitig mit einer Videoaufnahme des Vorwärts-FOV durch die nach vorne gerichtete Videokamera ausgeführt werden. Die linken und rechten Videobilder können kombiniert werden, um stereoskopische Videobilder der Augen des Trägers zu erstellen oder zu erzeugen. Die entsprechenden Blickrichtungen des linken und rechten Auges zu konvergieren, wie sie in den stereoskopischen Videobildern aufgenommen wurden, liefert die konvergierende Blickrichtung des Trägers, die dann auf der Bildebene der nach vorne gerichteten Videokamera für die Bildstabilisierung, wie oben beschrieben, abgebildet werden kann.
  • In einer beispielhaften Ausführungsform kann die Korrektur oder Kompensation der Bewegung der nach vorne gerichteten Videokamera in Echtzeit angewendet werden, da die nach vorne gerichteten Videobilder des FOV und die stereoskopischen Videobilder der Augen des Trägers gleichzeitig aufgenommen werden. In einer zusätzlichen oder alternativen beispielhaften Ausführungsform kann die Korrektur oder Kompensation der Bewegung der nach vorne gerichteten Videokamera auf die Zeit angewendet werden, die der gleichzeitigen Videobildaufnahme folgt.
  • In einer beispielhaften Ausführungsform kann die oben genannte Technik auf das Tracking nur eines Auges des HMD-Trägers angewendet werden. In diesem Fall muss die bestimmte Blickrichtung nicht unbedingt einer konvergierenden Blickrichtung entsprechen. Es kann jedoch immer noch eine Trajektorie auf der Bildebene der nach vorne gerichteten Videokamera bereitgestellt werden, die für die Bewegungskorrektur der nach vorne gerichteten Videokamera verwendet werden kann. Wenn die Blickrichtung zu einem sehr weit entfernten Punkt geht (z. B. „unendliche Brennweite“), kann die Differenz zwischen der Anwendung der Technik auf ein Auge oder auf zwei Augen unbedeutend werden.
  • 2. Beispielsysteme und Netzwerk
  • Im Allgemeinen können beispielhafte Ausführungsformen in einen tragbaren Computer implementiert sein oder die Form eines solchen annehmen, und werden hier als Beispiel veranschaulicht. Insbesondere können beispielhafte Ausführungsformen in Verbindung mit einem auf dem Kopf tragbaren Gerät (HMD) implementiert werden oder die Form eines solchen annehmen, das kommunikativ mit einem Computersystem verbunden sein kann, das Daten mit einem HMD austauscht, beispielsweise ein cloudbasiertes Serversystem, das Teil eines Netzwerks oder mit einem solchen verbunden sein kann.
  • Eine beispielhafte Ausführungsform kann jedoch auch in anderen Geräten implementiert sein oder deren Form annehmen. Dazu gehören u. a. Mobiltelefone. Beispielhafte Ausführungsformen können ferner ein nichtflüchtiges computerlesbares Speichermedium (oder Speichermedien) einschließen und/oder dessen Form annehmen, auf dem von einem oder mehreren Prozessoren ausführbare Programmanweisungen gespeichert sind, um die hier beschriebenen Funktionen bereitstellen zu können. Zusätzlich können beispielhafte Ausführungsformen auch darüber hinaus ein Gerät einschließen und/oder dessen Form annehmen, wie beispielsweise einen tragbaren Computer oder ein Mobiltelefon, oder ein Subsystem eines solchen Geräts, das ein solches nichtflüchtiges computerlesbares Speichermedium beinhaltet, auf dem die Programmanweisungen gespeichert sind.
  • a. Beispiel eines tragbaren Computersystems
  • Gemäß einer beispielhaften Ausführungsform kann ein tragbares Computersystem verschiedene Komponenten aufweisen, einschließlich eines oder mehrerer Prozessoren, eines oder mehrerer Speicher, eines oder mehrerer Sensorgeräte, eines oder mehrerer I/O-Geräte, eines oder mehrerer Kommunikationsgeräte und -schnittstellen und eines auf dem Kopf tragbaren Geräts (HMD), die alle kollektiv in einer Weise angeordnet sind, um das System für einen Nutzer tragbar zu machen. Das tragbare Computersystem kann auch eine Maschinensprachen-Logik einschließen (z. B. Software, Firmware und/oder Hardwareanweisungen), die in der einen oder anderen Form eines Speichers abgelegt ist und von dem einen oder anderen Prozessor des Systems ausgeführt werden kann, um ein oder mehrere Programme, Aufgaben, Anwendungen oder Ähnliches zu implementieren. Das tragbare Computersystem kann mit verschiedenen Formfaktoren konfiguriert sein, einschließlich, aber nicht beschränkt darauf, integriert in das HMD als vereinheitlichtes Paket, oder verteilt, mit einem oder mehreren Elementen in das HMD integriert und einem oder mehreren anderen separat tragbaren Elementen (z. B. als Bekleidungsstück, in einer Tasche eines Bekleidungsstücks, als Schmuckstück, usw.).
  • Obwohl oben als Komponente eines tragbaren Computersystems beschrieben, ist es manchmal zweckmäßiger ein HMD als tragbares Computersystem zu betrachten (oder dass es zumindest ein solches repräsentiert). Dementsprechend werden hier, sofern nichts anderes angegeben ist, die Begriffe „tragbares, auf dem Kopf tragbares Gerät“ (oder „tragbares HMD“) oder nur „auf dem Kopf tragbares Gerät“ (oder „HMD“) verwendet, um Bezug auf ein tragbares Computersystem, entweder in einer integrierten (vereinheitlichten Paket-)Form, einer verteilten (oder teilweise verteilten) Form oder in einer sonstigen tragbaren Form, zu nehmen.
  • 1A veranschaulicht ein beispielhaftes tragbares Computersystem 100, um Daten zu empfangen, zu übertragen und anzuzeigen. Gemäß einer beispielhaften Ausführungsform ist das tragbare Computersystem 100 als tragbares HMD in der Form einer Brille 102 in einer nach außen gerichteten Ansicht in 1A dargestellt. Es ist jedoch zu beachten, dass weitere Typen tragbarer Computergeräte zusätzlich oder alternativ verwendet werden können, einschließlich einer monokularen Display-Konfiguration, die nur ein Display-Element mit einem Objektiv aufweist.
  • Wie in 1A veranschaulicht, enthält die Brille 102 Rahmenelemente, zu denen Linsenrahmen 104 und 106 und eine Mittelrahmenstütze 108, Linsenelemente 110 und 112 und herausragende Seitenarme 114 und 116 gehören. Die Mittelrahmenstütze 108 und die herausragenden Seitenarme 114, 116 sind konfiguriert, um die Brille 102 auf dem Gesicht des Nutzers – und zwar jeweils an Nase und Ohren – zu befestigen. Jedes der Rahmenelemente 104, 106 und 108 sowie die herausragenden Seitenarme 114 und 116 können aus einer soliden Plastik- und/oder Metallstruktur oder aus einer hohlen Struktur des gleichen Materials geformt sein, damit Verdrahtung und Komponentenanschlüsse innen durch die Brille 102 verlaufen können. Jedes Linsenelement 110 und 112 kann ein Material enthalten, auf dem ein Bild oder eine Grafik, entweder direkt oder über eine Spiegelfläche, angezeigt werden kann. Zusätzlich kann zumindest ein Teil der Linsenelemente 110 und 112 ausreichend transparent sein, um es einem Nutzer zu ermöglichen, durch das Linsenelement hindurch zu blicken. Diese beiden Funktionen der Linsenelemente können kombiniert werden, beispielsweise kann eine erweiterte Realität oder ein Head-Up-Display bereitgestellt werden, bei dem die projizierten Bilder oder Grafiken über die Anzeige der realen Welt gelegt werden, die von dem Nutzer durch die Linsenelemente wahrgenommen wird.
  • Die herausragenden Seitenarme 114 und 116 können beides Verlängerungen sein, die sich jeweils vom Linsenrahmen 104 und 106 ausgehend erstrecken und Abschnitte beinhalten können, die hinter den Ohren des Nutzers positioniert werden, um die Brille 102 am Nutzer zu sichern. Die herausragenden Seitenarme 114 und 116 können die Brille 102 darüber hinaus am Nutzer halten, indem sie sich über einen Teil des Hinterkopfes des Nutzers erstrecken. Zusätzlich oder alternativ kann das tragbare Computersystem 100 mit einer auf dem Kopf tragbaren Helmstruktur verbunden oder darin integriert sein. Es bestehen darüber hinaus noch weitere Möglichkeiten.
  • Das tragbare Computersystem 100 kann auch ein Bordcomputersystem 118, eine nach vorne gerichtete Videokamera 120, einen Sensor 122, ein fingerbedienbares Touchpad 124 und eine Kommunikationsschnittstelle 126 enthalten. Das Bordcomputersystem 118 ist in der Darstellung am herausragenden Seitenarm 114 der Brille 102 positioniert; das Bordcomputersystem 118 kann jedoch auch an anderen Teilen der Brille 102 bereitgestellt werden. Das Bordcomputersystem 118 kann beispielsweise einen oder mehrere Prozessoren und eine oder mehrere Formen eines Speichers beinhalten. Das Bordcomputersystem 118 kann konfiguriert sein, um Daten von der Videokamera 120, dem Sensor 122, dem fingerbedienbaren Touchpad 124 und der drahtlosen Kommunikationsschnittstelle 126 (und möglicherweise von anderen Wahrnehmungsvorrichtungen und/oder Benutzerschnittstellen) zu empfangen und zu analysieren und Bilder für die Ausgabe durch die Linsenelemente 110 und 112 zu erzeugen.
  • Die nach vorne gerichtete Videokamera 120 ist in der Darstellung am herausragenden Seitenarm 114 der Brille 102 positioniert; die nach vorne gerichtete Videokamera 120 kann jedoch auch an anderen Teilen der Brille 102 angebracht sein. Die nach vorne gerichtete Videokamera 120 kann konfiguriert sein, um Videobilder in einem Vorwärts-FOV eines Trägers des HMD bei verschiedenen Auflösungen oder bei unterschiedlichen Bildfrequenzen aufzunehmen. Videokameras mit einem kleinen Formfaktor, wie etwa Kameras in Mobiltelefonen oder Webcams, können in ein beispielhaftes tragbares System 100 integriert sein. Obwohl in 1A nur eine nach vorne gerichtete Videokamera 120 dargestellt ist, können weitere Videokameras verwendet werden, und jedes dieser Geräte kann konfiguriert sein, um dieselbe Ansicht oder unterschiedliche Ansichten aufzunehmen. Die nach vorne gerichtete Videokamera 120 kann beispielsweise mindestens einen Teil einer von dem Nutzer wahrgenommenen Ansicht der realen Welt aufnehmen. Dieses nach vorne gerichtete Bild, das von der nach vorne gerichteten Videokamera 120 aufgenommen wird, kann verwendet werden, um eine erweiterte Realität zu erzeugen, indem die computergenerierten Bilder mit der vom Nutzer wahrgenommenen Ansicht der realen Welt interagieren.
  • Der Sensor 122 kann verwendet werden, um beispielsweise den Standort, die Ausrichtung und die Bewegungsinformationen zu messen und/oder zu bestimmen. Obwohl er als einzelne am herausragenden Seitenarm 116 der Brille 102 befestigte Komponente dargestellt ist, könnte der Sensor 122 in der Praxis mehr als einen Typ eines Sensorgeräts oder -elements einschließen, die an einem oder mehreren verschiedenen Teilen der Brille 102 bereitgestellt werden.
  • Als Beispiel nicht als Beschränkung könnte der Sensor 122 einen oder mehrere Bewegungsdetektoren (z. B. einen oder mehrere Gyroskope und/oder Beschleunigungsmesser), ein oder mehrere Magnetometer und ein Standortbestimmungsgerät (z. B. ein GPS-Gerät) einschließen. Gyroskope, Beschleunigungsmesser und Magnetometer können in eine konventionell als „inertiale Messeinheit“ (IMU) bezeichnete Einheit integriert sein. Eine IMU kann dagegen ein Teil eines „Attitude Heading Reference Systems“ (AHRS) sein, das (z. B. mithilfe des Bordcomputersystems 118) eine Zeigerichtung des HMD aus den IMU-Sensordaten, möglicherweise zusammen mit den Standortinformationen (z. B. aus einem GPS-Gerät), berechnet. Dementsprechend könnte der Sensor 122 ein AHRS einschließen oder ein Teil davon sein. Weitere Sensoreinrichtungen oder -elemente können im Sensor 122 enthalten sein und weitere Sensorfunktionen können von Sensor 122 ausgeführt werden.
  • Das gezeigte fingerbedienbare Touchpad 124, das am herausragenden Seitenarm 114 der Brille 102 montiert ist, kann von einem Nutzer verwendet werden, um Befehle einzugeben. Das fingerbedienbare Touchpad 124 kann jedoch an anderen Teilen der Brille 102 positioniert sein. Auch kann mehr als ein fingerbedienbares Touchpad an der Brille 102 angebracht sein. Das fingerbedienbare Touchpad 124 kann von einem Nutzer eingesetzt werden, um Befehle einzugeben. Das fingerbedienbare Touchpad 124 kann mindestens entweder eine Position oder eine Bewegung eines Fingers, unter anderem, über kapazitive Erfassung, resistive Erfassung oder einen akustischen Oberflächenwellenvorgang aufnehmen. Das fingerbedienbare Touchpad 124 kann in der Lage sein, die Fingerbewegung in eine Richtung parallel zur Pad-Oberfläche, in eine senkrecht zur Pad-Oberfläche verlaufende Richtung oder beides zu erfassen, und kann auch die Stärke des angewendeten Drucks erfassen. Das fingerbedienbare Touchpad 124 kann aus einer oder mehreren lichtdurchlässigen oder transparenten Isolierschicht(en) und einer oder mehreren lichtdurchlässigen oder transparenten Leitschicht(en) bestehen. Die Ränder des fingerbedienbaren Touchpads 124 können mit einer erhobenen, abgesenkten oder aufgerauten Oberfläche geformt sein, damit der Nutzer taktile Rückmeldung erhält, wenn der Finger des Nutzers den Rand des fingerbedienbaren Touchpads 124 erreicht. Obwohl in 1A nicht dargestellt, kann die Brille 102 ein oder mehrere zusätzliche fingerbedienbare Touchpads aufweisen, die beispielsweise am herausragenden Seitenarm 116 angebracht sind, die unabhängig von dem fingerbedienbaren Touchpad 124 bedient werden können, um eine doppelte und/oder unterschiedliche Funktion bereitzustellen.
  • Die Kommunikationsschnittstelle 126 kann eine Antenne und eine Transceivervorrichtung für die Unterstützung drahtgebundener und/oder drahtloser Kommunikationen zwischen dem tragbaren Computersystem 100 und einem Remote-Gerät oder einem Kommunikationsnetzwerk enthalten. Beispielsweise kann die Kommunikationsschnittstelle 126 drahtlose Kommunikationen, entweder eine oder alle aus 3G- und/oder 4G-Mobilfunktechnologien (z. B. CDMA, EVDO, GSM, UMTS, LTE, WiMAX), ebenso drahtlose lokale Netzwerk- oder Personal Area Network-Technologien, wie Bluetooth, Zigbee und WLAN (z. B.802.11A, 802.11B, 802.11g) unterstützen. Andere Typen drahtloser Zugangstechnologien könnten ebenfalls unterstützt werden. Die Kommunikationsschnittstelle 126 kann Kommunikationen zwischen dem tragbaren Computersystem 100 und einem oder mehreren Endgeräten, wie einem weiteren drahtlosen Kommunikationsgerät (z. B. einem Mobiltelefon oder einem weiteren tragbaren Computergerät), einem Nutzer an einem Computer in einem Kommunikationsnetzwerk oder einem Server oder Serversystem in einem Kommunikationsnetzwerk, ermöglichen. Die Kommunikationsschnittstelle 126 kann auch drahtgebundene Zugangskommunikationen, beispielsweise mit Ethernet- oder USB-Anschlüssen, unterstützen.
  • 1B veranschaulicht eine nach innen gerichtete Ansicht des tragbaren Computersystems 100 in 1A, die eine Ansicht des HMD mit einem Vorwärts-FOV eines Trägers des HMD zeigt. Zusätzlich zu einer Reihe von in 1A gezeigten Komponenten, veranschaulicht 1B auch die Brille 102, die eine auf das erste Auge gerichtete Videokamera 128, befestigt an einer Innenfläche der Mittelrahmenstütze 108, einschließt und konfiguriert ist, um ein Echtzeit-Video und/oder schnelle Standbilder des linken Auges eines Trägers des HMD 102 aufzunehmen. Zusätzlich ist eine auf das zweite Auge gerichtete Videokamera 130 dargestellt, befestigt an einer Innenfläche der Mittelrahmenstütze 108 und konfiguriert, um ein Echtzeit-Video und/oder schnelle Standbilder des rechten Auges eines Trägers des HMD 102 aufzunehmen. Wie unten beschrieben können die Echtzeit-Bilder des linken und rechten Auges des Trägers, in Kombination, stereoskopische Echtzeit-Videobilder und/oder schnelle Standbilder aufnehmen, die verarbeitet und analysiert werden können, um eine genaue Blickrichtung des HMD-Trägers 102 bereitzustellen. Die Verarbeitung und Analyse kann in Echtzeit ausgeführt werden, um Informationen zum Echtzeit-Blick und zur Augenbewegung zu erzeugen, und/oder zu einem späteren Zeitpunkt ausgeführt werden, um dieselben oder ähnliche Informationen nach dem Ereignis zu erzeugen. In weiteren beispielhaften Ausführungsformen können die zu den Augen gerichteten Kameras 128 und 130 durch andere Formen von Geräten ersetzt oder verstärkt werden, die in der Lage sind, Augenbewegungen zu verfolgen und/oder Augen-Tracking-Daten zu erfassen, die auf eine bestimmte Blickrichtung des Nutzers, als Funktion der Zeit, analysiert werden können.
  • Obwohl dies in den 1A oder 1B nicht unbedingt dargestellt ist, kann das HMD 102 ein oder mehrere Anzeigeelemente und/oder -komponenten enthalten, die für die Anzeige von Standbildern und/oder Videobildern (beweglichen Bildern) mit einem Vorwärts-FOV des Trägers konfiguriert sind. Anzeigeelemente und/oder Komponenten können Projektionselemente einschließen, wie Lichtwellenleiter oder Ähnliches, um virtuelle Bilder in ein Vorwärts-FOV zu kanalisieren, wo sie einem HMD-Träger angezeigt werden können.
  • Wenn das HMD 102 von einem Nutzer oder Träger getragen wird, kann ein Vorwärts-Blickfeld gleichzeitig durch die Linsenelemente 110 und 112 mit projizierten oder angezeigten Bildern (wie die Anzeigebilder 132 und 134) betrachtet werden. Dies ist in 1B durch das Blickfeld(FOV)-Objekt 136-L im linken Linsenelement 112 und durch dasselbe FOV-Objekt 136-R im rechten Linsenelement 110 dargestellt. Die Kombination der angezeigten Bilder und der realen Objekte, die im FOV beobachtet werden, kann ein Aspekt der oben angesprochenen erweiterten Realität sein. Zusätzlich können Bilder für die rechten und linken Linsenelemente erzeugt werden und einen virtuellen dreidimensionalen Raum schaffen, wenn das rechte und linke Bild von einem Träger des HMD zusammen dargestellt werden. Es können dann virtuelle Objekte erstellt werden, die so aussehen, als wären sie in dem aktuellen dreidimensionalen Raum, der transparent durch die Linsen zu sehen ist, positioniert und würden diesen abdecken.
  • In alternativen Ausführungsformen können auch andere Arten von Anzeigeelementen verwendet werden. Die Linsenelemente 110, 112 können zum Beispiel selbst Folgendes beinhalten: eine transparente oder halbtransparente Matrixanzeige, wie beispielsweise eine Elektrolumineszenzanzeige oder eine Flüssigkristallanzeige, einen oder mehrere Wellenleiter zur Beförderung eines Bilds zu den Augen des Nutzers, oder andere optische Elemente, die ein scharfes Bild nah an das Auge des Nutzers bringen können. Ein dazugehöriger Grafiktreiber kann innerhalb der Rahmenelemente 104 und 106 angeordnet sein, um eine solche Matrixanzeige anzutreiben. Alternativ oder zusätzlich dazu kann ein Abtastlasergerät, wie ein Schwachstromlaser oder eine LED-Quelle und ein begleitendes Scansystem verwendet werden, um eine Rasteranzeige direkt auf die Netzhaut eines oder mehrerer der Augen des Nutzers abzubilden. Der Nutzer kann dann die Rasteranzeige, basierend auf dem die Netzhaut erreichenden Licht, erkennen.
  • Obwohl es in den 1A und 1B nicht dargestellt ist, kann das tragbare System 100 auch eine oder mehrere Komponenten für eine Audioausgabe einschließen. Beispielsweise kann das tragbare Computersystem 100 mit Lautsprecher(n), Kopfhörer(n) und/oder Kopfhörerbuchse(n) ausgestattet sein. Es bestehen darüber hinaus noch weitere Möglichkeiten.
  • Während das tragbare Computersystem 100 der in den 1A und 1B dargestellten beispielhaften Ausführungsform als vereinheitlichtes Paket konfiguriert ist, das in die HMD-Komponente integriert ist, sind auch weitere Konfigurationen möglich. Beispielsweise kann, obwohl dies in den 1A und 1B nicht explizit dargestellt ist, das tragbare Computersystem 100 in eine verteilte Architektur implementiert sein, in der das gesamte oder ein Teil des Bordcomputersystems 118 fernbedient von der Brille 102 konfiguriert ist. Beispielsweise kann ein Teil oder das gesamte Bordcomputersystem 118 tragbar gemacht oder an Kleidung als Zubehörteil, beispielsweise in einer Tasche eines Kleidungsstücks oder an einem Gürtelclip, angebracht werden. In ähnlicher Weise können auch weitere in den 1A und/oder 1B als in die Brille 102 integrierte dargestellte Komponenten fernbedient von der HMD-Komponente konfiguriert sein. In einer solchen verteilten Architektur können bestimmte Komponenten immer noch in die HMD-Komponente integriert sein. Beispielsweise können ein oder mehrere Sensoren (z. B. ein Magnetometer, Gyroskop, usw.) in die Brille 102 integriert sein.
  • In einer beispielhaften verteilten Konfiguration kann die HMD-Komponente (einschließlich weiterer integrierter Komponenten) mit Remote-Komponenten, über die Kommunikationsschnittstelle 126 (oder über eine dedizierte Verbindung, die sich von der Kommunikationsschnittstelle 126 unterscheidet) kommunizieren. Als Beispiel können eine drahtgebundene (z. B. USB oder Ethernet) oder eine drahtlose (z. B. WLAN oder Bluetooth) Verbindung Kommunikationen zwischen einem Remote-Computersystem und einer HMD-Komponente unterstützen. Zusätzlich könnte eine solche Kommunikationsverbindung zwischen einer HMD-Komponente und weiteren Remote-Geräten, wie beispielsweise einem Laptop-Computer oder einem Mobiltelefon, implementiert sein.
  • 1C zeigt ein anderes tragbares Computersystem gemäß einer beispielhaften Ausführungsform, welche die Form eines HMD 152 annimmt. Das HMD 152 kann Rahmenelemente und Seitenarme, wie jene beinhalten, die in Bezug auf die 1A und 1B beschrieben sind. Das HMD 152 kann zusätzlich ein Bordcomputersystem 154 und eine nach vorne gerichtete Videokamera 156 beinhalten, wie sie in Bezug auf die 1A und 1B beschrieben sind. Die Videokamera 156 ist in der Figur an einem Rahmen des HMD 152 befestigt. Die Videokamera 156 kann jedoch genauso an anderen Positionen befestigt sein. Obwohl es nicht explizit dargestellt ist, können die HMDs in jeder der 1C und 1D zu den Augen gerichtete Videokameras und/oder andere Geräte oder Elemente einschließen, die für das Tracking der Augenbewegung eines Trägers des HMD konfiguriert sind.
  • Wie in 1C gezeigt, kann das HMD 152 eine einzelne Anzeige 158 umfassen, die mit dem Gerät gekoppelt sein kann. Die Anzeige 158 kann auf einem der Linsenelemente des HMD 152, wie dem in den 1A und 1B beschriebenen Linsenelement, gebildet werden und konfiguriert sein, um eine computergenerierte Grafik über die vom Nutzer wahrgenommene Ansicht der realen Welt zu legen. Die Anzeige 158 ist so dargestellt, dass sie in einer Mitte einer Linse des HMD 152 bereitgestellt wird, die Anzeige 158 kann sich jedoch auch in anderen Positionen befinden. Die Anzeige 158 ist über das Computersystem 154 steuerbar, das mit der Anzeige 158 über einen Lichtwellenleiter 160 gekoppelt ist.
  • 1D zeigt ein anderes tragbares Computersystem gemäß einer beispielhaften Ausführungsform, welche die Form eines HMD 172 annimmt. Das HMD 172 kann Seitenarme 173, eine Mittelrahmenstütze 174 und ein Brückenteil mit Nasenstück 175 beinhalten. Beim in 1D gezeigten Beispiel verbindet die Mittelrahmenstütze 174 die Seitenarme 173. Das HMD 172 beinhaltet keine Linsenrahmen mit Linsenelementen. Das HMD 172 kann zusätzlich ein Bordcomputersystem 176 und eine Videokamera 178 beinhalten, wie sie in Bezug auf die 1A und 1B beschrieben sind.
  • Das HMD 172 kann ein einzelnes Linsenelement 180 enthalten, das mit einem der Seitenarme 173 oder der Mittelrahmenstütze 174 verbunden ist. Das Linsenelement 180 kann eine Anzeige, wie die in den 1A und 1B beschriebene Anzeige, enthalten und konfiguriert sein, um eine computergenerierte Grafik über die vom Nutzer wahrgenommene Ansicht der realen Welt zu legen. In einem Beispiel kann das einzelne Linsenelement 180 mit der Innenseite (d.h. mit der Seite, die zu einem Teil des Kopfes eines Nutzers exponiert ist, wenn es von dem Nutzer getragen wird) des herausragenden Seitenarms 173 verbunden sein. Das einzelne Linsenelement 180 kann vor oder in der Nähe des Auges eines Nutzers positioniert sein, wenn das HMD 172 von einem Nutzer getragen wird. Beispielsweise kann das einzelne Linsenelement 180 unter der Mittelrahmenstütze 174, wie in 1D gezeigt, positioniert sein.
  • 2 ist ein Blockdiagramm, das Funktionskomponenten eines beispielhaften tragbaren Computersystems 202 gemäß einer beispielhaften Ausführungsform veranschaulicht. Wie in 2 dargestellt beinhaltet das beispielhafte tragbare Computersystem 202 eine oder mehrere Verarbeitungseinheiten 204, Datenspeicher 206, Transceiver 212, Kommunikationsschnittstellen 214, Benutzereingabe/ausgabe (I/O)-Geräte 216 und Sensorgeräte 228, die alle über einen Systembus 238 oder andere kommunikative Verbindungsvorrichtungen gekoppelt sein können. Diese Komponenten können angeordnet sein, um den Vorgang gemäß einer beispielhaften Ausführungsform eines tragbaren Computersystems, wie System 100, das in den 1A und 1B dargestellt ist, oder gemäß einem anderen tragbaren HMD zu unterstützen.
  • Das eine oder die mehreren Verarbeitungseinheiten 204 können einen oder mehrere Universalprozessoren (z. B. INTEL Mikroprozessoren) und/oder einen oder mehrere Spezialprozessoren (z. B. einen dedizierten digitalen Signalprozessor, einen anwendungsspezifischen integrierten Schaltkreis, usw.) enthalten. Dagegen kann der Datenspeicher 206 eine oder mehrere flüchtige und/oder nichtflüchtige Speicherkomponenten, wie magnetische oder optische Speicher oder Plattenspeicher, enthalten. Datenspeicher 206 kann insgesamt oder teilweise in die Verarbeitungseinheit 204, beispielsweise als Cache-Speicher oder Register, integriert sein. Wie im Weiteren gezeigt, ist der Datenspeicher 206 ausgestattet, um die Programmlogik 208 und die Programmdaten 210 aufzunehmen.
  • Die Programmlogik 208 kann Maschinensprachen-Anweisungen (z. B. Softwarecode, Firmwarecode, usw.) einschließen, die Routinen definieren, die von einem oder mehreren Verarbeitungseinheiten 204 ausgeführt werden können, um verschiedene darin beschriebene Funktionen auszuführen. Programmdaten 210 können Daten enthalten, die von einer oder mehreren Anwendungen oder von Programmen verwendet oder verarbeitet werden, die von einem oder mehreren Prozessoren ausgeführt werden können. Solche Daten können, unter anderem, Formen von Daten, programmspezifische Daten, Benutzerdaten, Eingabe/Ausgabedaten, Sensordaten oder sonstige Daten und Informationen enthalten, die im Laufe der Ausführung des einen oder der mehreren Programme oder Anwendungen empfangen, gespeichert, angerufen, übertragen, analysiert oder modifiziert werden.
  • Die Transceiver 212 und Kommunikationsschnittstellen 214 können konfiguriert sein, um eine Kommunikation zwischen dem tragbaren Computersystem 202 und einem oder mehreren Endgeräten, wie einem weiteren drahtlosen Kommunikationsgerät (z. B. einem Mobiltelefon oder einem weiteren tragbaren Computergerät), einem Nutzer an einem Computer in einem Kommunikationsnetzwerk oder einem Server oder Serversystem in einem Kommunikationsnetzwerk, zu ermöglichen. Die Transceiver 212 können mit einer oder mehreren Antennen gekoppelt sein, um drahtlose Kommunikationen zu ermöglichen, beispielsweise wie oben für die drahtlose Kommunikationsschnittstelle 126, die in 1A dargestellt ist, beschrieben. Die Transceiver 212 können auch mit einem oder mehreren drahtgebundenen Anschlüssen für drahtgebundene Kommunikationen, wie Ethernet oder USB, gekoppelt sein. Die Transceiver 212 und die Kommunikationsschnittstellen 214 können auch verwendet werden, um Kommunikationen in einer verteilten Architektur zu unterstützen, in der verschiedene Komponenten des tragbaren Computersystems 202 entfernt voneinander positioniert sind. In diesem Sinne kann der Systembus 238 Elemente und/oder Segmente beinhalten, die Kommunikation zwischen solchen verteilten Komponenten unterstützen.
  • Wie gezeigt, schließen die Benutzer-I/O-Geräte 216 eine Kamera 218, eine Anzeige 220, einen Lautsprecher 222, ein Mikrofon 224 und ein Touchpad 226 ein. Die Kamera 218 kann der nach vorne gerichteten Videokamera 120 und/oder den zu den Augen gerichteten Videokameras 128 und 130 entsprechen, die in der Diskussion der 1A und 1B oben beschrieben sind. Gleichermaßen kann die Anzeige 220 einer Bildverarbeitung und einem Anzeigesystem entsprechen, um Bilder für einen Nutzer (Träger) eines HMD sichtbar zu machen. Die Anzeige 220 kann, unter anderen Elementen, den ersten und zweiten Projektor 128 und 130 einschließen, die mit den Linsenelementen 112 bzw. 110 gekoppelt sind, um Bildanzeigen, wie oben für 1B beschrieben, zu erzeugen. Das Touchpad 226 kann dem fingerbedienbaren Touchpad 124, wie für 1A beschrieben, entsprechen. Der Lautsprecher 422 und das Mikrofon 224 können gleichermaßen den Komponenten entsprechen, auf die in der Diskussion zu den 1A und 1B Bezug genommen wird. Jedes der Benutzer-I/O-Geräte 216 könnte auch eine Gerätesteuerung und gespeicherte, ausführbare logische Anweisungen enthalten, wie auch eine Schnittstelle für die Kommunikation über den Systembus 238.
  • Die Sensorgeräte 228, die dem für 1A beschriebenen Sensor 122 entsprechen, schließen einen Standortsensor 230, einen Bewegungssensor 232, einen oder mehrere Magnetometer 234 und einen Ausrichtungssensor 236 ein. Der Standortsensor 230 kann einem globalen Positionierungssystem(GPS)-Gerät oder einem sonstigen Standortbestimmungsgerät (z. B. Mobiltelefonsystem Triangulationsgerät, usw.) entsprechen. Der Bewegungssensor 232 kann einem oder mehreren Beschleunigungsmessern und/oder einem oder mehreren Gyroskopen entsprechen. Eine typische Konfiguration kann drei Beschleunigungsmesser einschließen, die beispielsweise entlang von drei gegenseitig orthogonalen Achsen ausgerichtet sind. Es kann auch eine ähnliche Konfiguration von drei Magnetometern verwendet werden.
  • Der Ausrichtungssensor 236 kann ein AHRS einschließen oder ein Teil davon sein, um Theodolit-ähnliche Funktionen für die Bestimmung einer winkelförmigen Ausrichtung einer Referenz-Zeigerichtung des HMD in Bezug auf ein lokales terrestrisches Koordinatensystem bereitzustellen. Beispielsweise kann der Ausrichtungssensor einen Höhenwinkel im Verhältnis zu einem horizontalen und einem Azimuth-Winkel im Verhältnis zu Referenzrichtungen, wie einem geographischen (oder geodätischen) Norden, einer Vorwärts-Zeigerichtung des HMD, bestimmen. Weitere Winkel und Koordinatensysteme können ebenfalls eingesetzt werden, um die Ausrichtung zu bestimmen.
  • Jedes der Sensorgeräte 228 kann auch eine Gerätesteuerung und gespeicherte, ausführbare logische Anweisungen enthalten, wie auch eine Schnittstelle für die Kommunikation über den Systembus 238.
  • Es ist zu beachten, dass es zahlreiche spezifische Implementierungen eines tragbaren Computersystems oder tragbarer HMDs, wie das in 2 dargestellte tragbare Computersystem 202, geben kann. Darüber hinaus ist es für Fachleute leicht verständlich, wie eine solche Implementierung konzipiert und aufgebaut ist.
  • b. Beispielhaftes Netzwerk
  • In einer beispielhaften Ausführungsform kann ein HMD Kommunikationen mit einem Netzwerk und mit Geräten in einem Netzwerk oder kommunikativ verbunden mit einem Netzwerk unterstützen. Solche Kommunikationen können den Informationsaustausch zwischen dem HMD und einem anderen Gerät, wie einem weiteren angeschlossenen HMD, einem mobilen Computergerät (z. B. Mobiltelefon oder Smartphone) oder einem Server enthalten. Der Informationsaustausch kann Dienstleistungen und/oder Anwendungen unterstützen oder ein Teil davon sein, einschließlich, ohne Beschränkung, das Hochladen und/oder Herunterladen von Inhalten (z. B. Musik, Video, usw.) und Client-Server-Kommunikationen, unter anderem.
  • 3 veranschaulicht eine Ansicht eines Netzwerks 300, in dem sich ein oder mehrere HMDs an Kommunikationen beteiligen können. Wie dargestellt, schließt das Netzwerk 300 ein Datennetzwerk 302 ein, das jeweils mit einem Funkzugangsnetzwerk (RAN) 304, einem drahtlosen Zugangsnetzwerk 306 und einem drahtgebundenen Zugangsnetzwerk 308 verbunden ist. Das Datennetzwerk 302 kann das eine oder die mehreren miteinander verbundenen Kommunikationsnetzwerke, wie das Internet oder das Internet eingeschlossen, repräsentieren. Das Funkzugangsnetzwerk 304 kann das Mobilfunknetz eines Service-Providers repräsentieren, das beispielsweise 3G- und/oder 4G-Mobilfunktechnologien (z. B. CDMA, EVDO, GSM, UMTS, LTE, WiMAX) unterstützt. Das drahtlose Zugangsnetzwerk 306 kann ein drahtloses Heim- oder Hotspot-Netzwerk repräsentieren, das beispielsweise Bluetooth, ZigBee und WLAN (z. B.802.11A, 802.11B, 802.11g) unterstützt. Das drahtgebundene Zugangsnetzwerk 308 kann ein Heim- oder gewerbliches lokales Netzwerk repräsentieren, das beispielsweise Ethernet unterstützt.
  • Das Netzwerk 300 schließt auch ein Serversystem 310 ein, das mit dem Datennetzwerk 302 verbunden ist. Das Serversystem 310 kann eine Webseite oder eine sonstige netzwerkbasierte Einrichtung repräsentieren, um den Nutzern den einen oder anderen Servicetyp bereitzustellen. Beispielsweise kann das Serversystem 310 gemäß einer beispielhaften Ausführungsform einen sozialen Netzwerk Online-Dienst oder eine Webseite hosten. Als weiteres Beispiel kann das Serversystem 310 einen netzwerkbasierten Informations-Suchdienst bereitstellen. In einem noch weiteren Beispiel kann das Serversystem 310 Augen-Tracking-Daten von einem HMD empfangen und die analysierten Ergebnisse an das HMD zurücksenden.
  • 3 zeigt auch verschiedene Endbenutzer- und/oder Client-Geräte, die mit dem Netzwerk 300 über eines der drei Zugangsnetzwerke verbunden sind. Als Beispiel ist ein HMD 312 mit dem RAN 304 über eine Luftschnittstelle 313 (z. B. eine 3G- oder 4G-Technologie) verbunden und ein HMD 314 ist mit dem RAN 304 über eine Luftschnittstelle 315 (z. B. eine 3G- oder 4G-Technologie) verbunden. Auch als Beispiel ist ein HMD 316 mit dem drahtlosen Zugangsnetzwerk 306 über eine Luftschnittstelle 317 (z. B. eine WLAN-Technologie) verbunden. Zusätzlich und ebenfalls als Beispiel ist ein Mobiltelefon 318 dargestellt, verbunden mit dem RAN 304 über eine Luftschnittstelle 319, ein Smartphone 320 ist dargestellt, verbunden mit dem drahtlosen Zugangsnetzwerk 306 über eine Luftschnittstelle 321, und ein Laptop-Computer 322 ist dargestellt, verbunden mit dem drahtgebundenen Zugangsnetzwerk 308 über eine drahtgebundene Schnittstelle 323. Jedes Endbenutzergerät kann mit dem einen oder anderen netzwerkverbundenen Gerät über seine entsprechende Verbindung mit dem Netzwerk kommunizieren. Es kann für einige dieser Endbenutzergeräte auch möglich sein, direkt miteinander zu kommunizieren (oder mit anderen nicht dargestellten Endbenutzergeräten).
  • Jedes der HMDs 312, 314 und 316 ist so dargestellt, dass es von einem unterschiedlichen Nutzer getragen wird (jeder Nutzer wird von einem Cartoon-Gesicht repräsentiert), um mögliche nutzerbezogene Variablen, Umstände und Anwendungen, die mit dem jeweiligen HMD verbunden sein können, zu kennzeichnen. Beispielsweise kann das HMD 312 zu einem Zeitpunkt Inhalte in einen sozialen Netzwerk Online-Dienst hochladen, während das HMD 314 zur gleichen Zeit oder zu einem anderen Zeitpunkt eine Anfrage an einen netzwerkbasierten Informations-Suchdienst schicken könnte. Nutzer können miteinander und/oder mit dem Netzwerk über deren jeweilige HMDs interagieren. Andere Beispiele sind ebenfalls möglich. Für die Zwecke des größten Teils der Diskussion hier ist es normalerweise ausreichend, sich nur auf ein HMD zu beziehen, ohne Bezug auf den Nutzer (oder Träger) des HMD zu nehmen. Expliziter Bezug auf oder Diskussion eines Nutzers (oder Trägers) eines HMD wird ausgeführt, wenn es notwendig sein sollte.
  • c. Beispielhaftes Serversystem
  • Ein Netzwerkserver, wie das Serversystem 310 in 3, kann verschiedene Formen annehmen und in einer oder mehreren unterschiedlichen Weisen implementiert werden. 4A und 4B veranschaulichen zwei beispielhafte Ausführungsformen eines Serversystems: ein integriertes System, das ein repräsentatives Computergerät (4A) einschließt, und ein verteiltes System (4B), das mehrere repräsentative Computergeräte einschließt, sowie zusätzliche Systemelemente, die kommunikativ miteinander verbunden sind.
  • 4A ist ein Blockdiagramm eines Computergeräts 400 gemäß einer beispielhaften Ausführungsform. Das Computergerät 400 kann ein Benutzerschnittstellen-Modul 401, ein Netzwerk-Kommunikationsschnittstellen-Modul 402, einen oder mehrere Prozessoren 403 und einen Datenspeicher 404 einschließen, die alle über einen Systembus, ein Netzwerk oder sonstige Verbindungsmechanismen 405 verbunden sein können. Das Computergerät 400 kann jede Art von Gerät sein, das Daten empfangen und mit diesen empfangenen Daten verbundene Informationen bereitstellen kann. Beispielsweise kann das Gerät 400 die Form eines tragbaren Computergeräts annehmen oder als Teil darin enthalten sein, wie beispielsweise die HMDs 102, 152 oder 172, die mit Bezug auf die 1A1D beschrieben sind. Darüber hinaus kann, wie oben angesprochen, das Computergerät 400 auch die Form eines integrierten Serversystems annehmen oder darin enthalten sein. Computergerät 400 kann auch weitere Formen von Systemen annehmen und/oder als Teil darin enthalten sein. Das Benutzerschnittstellen-Modul 401 kann betriebsbereit sein, um Daten an externe Benutzereingabe/ausgabe-Geräte zu senden und/oder die Daten zu empfangen. Beispielsweise kann das Benutzerschnittstellen-Modul 401 konfiguriert sein, um Daten an Benutzereingabe-Geräte zu senden oder von dort zu empfangen, wie einer Tastatur, einem Nummernblock, einem Touchscreen, einer Computer-Maus, einem Trackball, einem Joystick und/oder sonstigen ähnlichen Geräten, die schon bekannt sind oder später entwickelt werden sollten. Das Benutzerschnittstellen-Modul 401 kann auch konfiguriert sein, um Ausgaben an Benutzeranzeigegeräte zu liefern, wie eine oder mehrere Kathodenstrahlröhren (CRT), Flüssigkristallanzeigen (LCD), Leuchtdiodenanzeigen (LEDs), Anzeigen mit digitaler Lichtverarbeitungs (DLP)-Technologie, Drucker, Glühbirnen und/oder ähnlichen Geräten, die schon bekannt sind oder später entwickelt werden sollten. Das Benutzerschnittstellen-Modul 401 kann auch konfiguriert sein, um (eine) Audioausgabe(n) zu erzeugen, beispielsweise als Lautsprecher, Lautsprecherbuchse, Audioausgabe-Anschluss, Audioausgabe-Gerät, Kopfhörer und/oder ähnliche Geräte, die schon bekannt sind oder später entwickelt werden sollten.
  • Das Netzwerk-Kommunikationsschnittstellen-Modul 402 kann eine oder mehrere drahtlose Schnittstellen 407 und/oder drahtgebundene Schnittstellen 408 enthalten, die konfigurierbar sind, um über ein Netzwerk, wie dem in 3 dargestellten Netzwerk 302, zu kommunizieren. Die drahtlosen Schnittstellen 407 können einen oder mehrere drahtlose Transceiver enthalten, wie einen Bluetooth-Transceiver, einen WLAN-Transceiver, der möglicherweise gemäß einem IEEE 802.11 Standard (z. B.802.11A, 802.11B, 802.11g) läuft, einem WiMAX-Transceiver, der möglicherweise gemäß einem IEEE 802.16 Standard läuft, und/oder andere Typen von drahtlosen Transceivern, die konfigurierbar sind, um über ein drahtloses Netzwerk zu kommunizieren. Die drahtgebundenen Schnittstellen 408 können einen oder mehrere drahtgebundene Transceiver enthalten, wie einen Ethernet-Transceiver, einen Universal Serial Bus(USB)-Transceiver oder einen ähnlichen Transceiver, der konfigurierbar ist, um über einen Draht, verdrillte Drähte, ein Koaxialkabel, einen Lichtwellenleiter, eine LWL-Übertragungsleitung oder eine sonstige physische Verbindung mit einem drahtgebundenen Netzwerk zu kommunizieren.
  • In einigen Ausführungsformen kann das Netzwerk-Kommunikationsschnittstellen-Modul 402 konfiguriert sein, um zuverlässige, sichere, komprimierte und/oder authentifizierte Kommunikationen bereitzustellen. Für jede hier beschriebene Kommunikation können Informationen bereitgestellt werden, um zuverlässige Kommunikationen (z. B. garantierte Nachrichtenübermittlung) zu gewährleisten, möglicherweise als Teil einer Nachrichten-Kopfzeile und/oder -Fußzeile (z. B. Paket/Nachrichten-Sequenzierungsinformationen, Kapselungs-Kopfzeile(n) und/oder -Fußzeile(n), Größe/Zeitinformationen und Übertragungsüberprüfungsinformationen, wie die zyklische Redundanzprüfung (CRC) und/oder Parity-Check-Werte). Kommunikationen können komprimiert und dekomprimiert werden, mithilfe eines oder mehrerer Kompressions- und/oder Dekompressionsalgorithmen und/oder Protokollen, wie, aber nicht beschränkt darauf, einen oder mehrere verlustfreie Datenkompressionsalgorithmen und/oder einem oder mehreren verlustreichen Datenkompressionsalgorithmen. Kommunikationen können sicher gemacht werden (z. B. codiert oder verschlüsselt werden) und/oder entschlüsselt/dekodiert werden, unter Verwendung von einem oder mehreren kryptographischen Protokollen und/oder Algorithmen, wie, aber nicht beschränkt darauf, DES, AES, RSA, Diffie-Hellman und/oder DSA. Weitere kryptographische Protokolle und/oder Algorithmen können ebenso oder zusätzlich zu den hier aufgelisteten verwendet werden, um die Kommunikationen zu sichern (und dann zu entschlüsseln/decodieren).
  • Der eine oder die mehreren Prozessoren 403 können einen oder mehrere Universalprozessoren und/oder einen oder mehrere Spezialprozessoren (z. B. dedizierte digitale Signalprozessoren, anwendungsspezifische integrierte Schaltkreise, usw.) enthalten. Der eine oder die mehreren Prozessoren 403 können konfiguriert sein, um computerlesbare Programmanweisungen 406, die in dem Datenspeicher 404 enthalten sind, und/oder andere hier beschriebene Anweisungen auszuführen.
  • Der Datenspeicher 404 kann ein oder mehrere computerlesbare Speichermedien enthalten, die von mindestens einem der Prozessoren 403 gelesen werden können oder auf die er zugreifen kann. Das eine oder die mehreren computerlesbaren Speichermedien können flüchtige und/oder nichtflüchtige Speicherkomponenten, wie z. B. optische, magnetische, organische oder sonstige Speicher oder Plattenspeicher, beinhalten, die ganz oder teilweise in mindestens einen des einen oder der mehreren Prozessoren 403 integriert sein können. In einigen Ausführungsformen kann der Datenspeicher 404 unter Verwendung eines einzelnen physischen Geräts (z. B. einem optischen, magnetischen, organischen oder sonstigen Speicher oder einer Plattenspeichereinheit) implementiert sein, während in anderen Ausführungsformen der Datenspeicher 404 unter Verwendung von zwei oder mehr physischen Geräten implementiert sein kann.
  • Computerlesbares Speichermedium, das mit Datenspeicher 404 und/oder anderen hier beschriebenen computerlesbaren Speichermedien verbunden ist, kann auch nichtflüchtige computerlesbare Speichermedien einschließen, wie etwa computerlesbare Speichermedien, die Daten für kurze Zeiträume speichern, wie Verzeichnisspeicher, Prozessorzwischenspeicher und/oder Arbeitsspeicher (RAM). Computerlesbares Speichermedium, das mit dem Datenspeicher 404 und/oder anderen hier beschriebenen computerlesbaren Speichermedien verbunden ist, kann auch nichtflüchtige computerlesbare Speichermedien beinhalten, die Programmcode und/oder Daten für längere Zeiträume speichern, wie beispielsweise sekundäre oder persistente Langzeitspeicher, schreibgeschützte Speicher (ROM), optische oder magnetische Datenträger und/oder schreibgeschützte Speicher auf CDs (CD-ROM). Computerlesbares Speichermedium, das mit Datenspeicher 404 und/oder anderen hier beschriebenen computerlesbaren Speichermedien verbunden ist, kann auch jedes andere flüchtige oder nichtflüchtige Speichersystem sein. Computerlesbares Speichermedium, das mit Datenspeicher 404 und/oder anderen hier beschriebenen computerlesbaren Speichermedien verbunden ist, kann beispielsweise als computerlesbares Speichermedium oder als physisches Speichergerät betrachtet werden.
  • Der Datenspeicher 404 kann computerlesbare Programmanweisungen 406 und möglicherweise zusätzliche Daten enthalten. In einigen Ausführungsformen kann der Datenspeicher 404 zusätzlich Speicher enthalten, der erforderlich ist, um zumindest einen Teil der hier beschriebenen Techniken, Verfahren und/oder zumindest einen Teil der Funktionen der hier beschriebenen Geräte und Netzwerke auszuführen.
  • 4B veranschaulicht, gemäß einer beispielhaften Ausführungsform, ein Netzwerk 406 mit den Rechnerverbunden 409a, 409b und 409c. In 4B können die Funktionen eines Netzwerkservers, wie dem Serversystem 310 in 3 unter den drei Rechnerverbunden 409a, 409b und 408c verteilt werden. Der Rechnerverbund 409a kann einen oder mehrere Rechnerverbunde 400a, Cluster-Speicherarrays 410a und Cluster-Router 411A enthalten, die über das lokale Cluster-Netzwerk 412a miteinander verbunden sind. Ähnlich kann der Rechnerverbund 409b einen oder mehrere Computergeräte 400b, Cluster-Speicherarrays 410b und Cluster-Router 411B enthalten, die über das lokale Cluster-Netzwerk 412b miteinander verbunden sind. Ähnlich kann der Rechnerverbund 409c einen oder mehrere Computergeräte 400c, Cluster-Speicherarrays 410c und Cluster-Router 411C enthalten, die über das lokale Cluster-Netzwerk 412c miteinander verbunden sind.
  • In einigen Ausführungsformen kann jeder Rechnerverbund 409a, 409b und 409c eine gleiche Anzahl an Computergeräten, eine gleiche Anzahl an Cluster-Speicherarrays und eine gleiche Anzahl an Cluster-Routern haben. In weiteren Ausführungsformen können jedoch einige oder alle Rechnerverbunde 409a, 409b und 409c eine unterschiedliche Anzahl an Computergeräten, eine unterschiedliche Anzahl an Cluster-Speicherarrays und/oder eine unterschiedliche Anzahl an Cluster-Routern haben. Die Anzahl der Computergeräte, Cluster-Speicherarrays und Cluster-Router in jedem Rechnerverbund kann vom Computer-Task oder den Tasks abhängen, die jedem Rechnerverbund zugeordnet wurde/wurden.
  • Die Cluster-Speicherarrays 410a, 410b und 410c der Rechnerverbunde 409a, 409b und 409c können Festplatten-Array-Steuerungen enthaltende Datenspeicher-Arrays sein, die konfiguriert sind, um den Lese- und Schreibzugriff auf Gruppen der Festplattenlaufwerke zu verwalten. Die Festplatten-Array-Steuerungen, allein oder in Verbindung mit ihren entsprechenden Computergeräten, können auch konfiguriert sein, um Backup- oder redundante Kopien der in den Cluster-Speicherarrays gespeicherten Daten zu verwalten, um sie vor Festplatten- oder sonstigen Cluster-Speicherarray-Störungen und/oder Netzwerkfehlern zu schützen, die verhindern, dass ein oder mehrere Computergeräte auf einen oder mehrere Cluster-Speicherarrays zugreifen können.
  • Die Cluster-Router 411A, 411B und 411C in den Rechnerverbunden 409a, 409b und 409c können Netzwerkkomponenten einschließen, die konfiguriert sind, um interne und externe Kommunikationen für die Rechnerverbunde bereitzustellen. Beispielsweise können die Cluster-Router 411A im Rechnerverbund 409a einen oder mehrere Internet-Schaltgeräte und/oder Routing-Geräte einschließen, die konfiguriert sind, um (i) lokale Netzwerkkommunikationen zwischen den Computergeräten 400a und den Cluster-Speicherarrays 401A über das lokale Cluster-Netzwerk 412a und/oder (ii) Großraumnetzwerke zwischen dem Rechnerverbund 409a und den Rechnerverbunden 409b und 409c über den Großraumnetzwerk-Anschluss 413a an das Netzwerk 406 zu liefern. Die Cluster-Router 411B und 411C können Netzwerkkomponenten ähnlich denen der Cluster-Router 411A enthalten, und die Cluster-Router 411B und 411C können ähnliche Netzwerkfunktionen für die Rechnerverbunde 409b und 409b ausführen, die die Cluster-Router 411A für den Rechnerverbund 409a ausführen.
  • 3. Videostabilisierung, basierend auf Augenbewegung und Blickrichtung
  • Ein Nutzer eines HMD kann Videodaten mit einer nach vorne gerichteten Kamera erfassen, während er das HMD trägt. Für eine Konfiguration, wie in den 1A und 1B dargestellt, hat die nach vorne gerichtete Videokamera (z. B. die nach vorne gerichtete Videokamera 120) eine FOV-Richtung, die in Bezug auf das HMD, das selbst normalerweise in einer festen Ausrichtung zum Träger bleibt, fix ist. Demnach bewegt sich die FOV-Richtung der nach vorne gerichteten Videokamera mit dem HMD, das sich demgemäß mit dem Träger bewegt. Die sich ergebenden aufgenommenen Videobilder beinhalten demnach die Bewegungen des Trägers. Die Bewegungen des Trägers, übertragen auf die Videobilder, können dazu führen, dass die Videobilder verwackelt oder auf andere Weise instabil erscheinen, wenn sie beim Abspielen betrachtet werden.
  • Im Allgemeinen verfolgt die Augen-Blickrichtung einer Person einen gegebenen Punkt oder eine gegebene Richtung in ihrem FOV, da sie sich im Verhältnis zum gegebenen Punkt oder der gegebenen Richtung bewegt. Dies bleibt normalerweise mindestens solange bestehen wie die Bewegung der Person anhält, und für Kopf- und/oder Körperbewegungen, die nicht so groß sind, dass sie einen Bereich der Augenbewegung, in dem die Augen-Blickrichtung auf den gegebenen Punkt fixiert bleiben kann, überschreitet. Die Fähigkeit und Tendenz zu einem relativ festen Blick, der effektiv die Bewegung des Körpers ausgleicht, ist eine natürliche Funktion des Gehirns bei seiner Verarbeitung visueller Daten und Steuerung der Augenbewegung. Es kann sowohl bewusste als auch unterbewusste Komponenten enthalten – z. B. eine bewusste Entscheidung einen festen Blick beizubehalten, wie auch eine freiwillige Blickfixierung. Für die meisten praktischen Zwecke reicht es aus, nur die Bewegung des Gesichts eines Trägers zu betrachten, wenn eine relative Bewegung und/oder Ausrichtung zwischen dem Vorwärts-FOV einer an einem HMD befestigten Videokamera und der Blickrichtung des Trägers des HMD diskutiert wird. Wenn nicht anders festgelegt, wird die Bewegung eines HMD-Trägers und die Bewegung (z. B. Verschiebung und/oder Änderung der Ausrichtung) des Träger-Gesichts hier als austauschbar betrachtet.
  • Gemäß beispielhafter Ausführungsformen kann ein auf dem Kopf tragbares Gerät, wie die in den 1A1D dargestellten tragbaren Computersysteme, das Eye-Gaze-Tracking eines HMD-Trägers nutzen, um die Augen-Blickrichtung als Funktion der Zeit während der Videoaufnahme mit einer nach vorne gerichteten Videokamera zu bestimmen, um die aufgenommenen Videobilder zu stabilisieren. Das Eye-Gaze-Tracking kann unter Verwendung einer oder mehrerer Augen-Tracking-Komponenten oder -Geräte des HMD, wie den zum Auge gerichteten Videokameras 128 und 130, ausgeführt werden, um der Augenbewegung zu folgen und sie zu messen. Während die Erfassung und Analyse der Augen-Tracking-Messungen und -Daten physische Ressourcen des HMD nutzen kann (z. B. zu den Augen gerichtete Kameravorgänge, Rechenleistung, usw.), repräsentieren die Blickrichtungs-Messungen selbst Informationen, die allen HMD-Komponenten kostenlos bereitgestellt werden, aber „kostenlos“ eher aufgrund der natürlichen Gehirnfunktion des HMD-Trägers. Die Blickrichtungs-Messungen können auch als „selbstreferenziell“ bezeichnet werden, da sie sich direkt auf den Punkt oder den Bereich des Interesses im Vorwärts-FOV beziehen.
  • In einem repräsentativen Szenario, in dem sich das nach vorne gerichtete Gesicht eines HMD-Trägers in Bezug auf eine anfängliche Richtung im Vorwärts-FOV bewegt, während die Augen des Trägers in die anfängliche Richtung durch eine Gegenbewegung zur Bewegung des Gesichts des Trägers fixiert bleiben (oder nahezu fixiert bleiben), kann die Augenbewegung des Trägers auf erfasste Videodaten angewendet werden, um eine Bewegung einer Videobild-Ebene in Bezug auf die anfängliche Richtung auszugleichen. Spezifischer werden die Videobild-Daten normalerweise in einer Bildebenen-Senkrechte (d.h. rechtwinklig) zur FOV-Richtung erfasst und aufgenommen. Demnach führt die Bewegung der nach vorne gerichteten Videokamera in Bezug auf die anfängliche Richtung dazu, dass sich das FOV über die Bildebene in Übereinstimmung mit der Bewegung bewegt. Diese Bewegung über die Bildebene, während die Videodaten erfasst und aufgenommen werden, ist das, was sprunghafte, verwackelte oder auf sonstige Weise instabile Videobilder erzeugen kann, insbesondere wenn die Bewegung einer nach vorne gerichteten Videokamera unabsichtlich oder auf andere Weise nur zufällig zur Bewegung des Trägers auftritt.
  • Gemäß beispielhafter Ausführungsformen kann die Augenbewegung des Trägers auf der Bildebene abgebildet werden, um die Bewegung des FOV über die Bildebene auszugleichen. Noch spezieller, wenn die aufgenommenen Videodaten verarbeitet werden, kann die abgebildete Augenbewegung genutzt werden, um die Videobilder effektiv neu zu positionieren, wo sie in der Bildebene erschienen wären, wenn die Bewegung des Trägers nicht aufgetreten wäre. Diese Neupositionierung kann in Echtzeit oder als Verarbeitung nach der Aufnahme ausgeführt werden. In beiden Fällen ist das Resultat ein stabilisiertes Video. Da die Bewegungskompensation die Augen-Blickrichtung als Funktion der Zeit nutzt, wird diese Technik als okulare Videostabilisierung bezeichnet.
  • 5 ist eine konzeptionelle Veranschaulichung einer okularen Videostabilisierung, gemäß beispielhafter Ausführungsformen. Als Beispiel zeigt 5 drei sequentielle Zeitinstanzen während der Videoaufnahme mit einer nach vorne gerichteten Videokamera 502; die drei Zeitinstanzen sind in drei Panels über die Figur, von links nach rechts, angeordnet und mit 1, 2 bzw. 3 gekennzeichnet. Jedes Panel zeigt ein Paar körperlose Augen 501-L (linkes Auge) und 501-R (rechtes Auge) von oben betrachtet. Die Augen haben einen binokularen Blick, der auf einen Punkt 507 im Vorwärts-FOV fixiert ist. Eine körperlose Cartoon-Nase 505 ist in jedem Panel dargestellt, um eine Zeigerichtung eines dazugehörigen (aber nicht sichtbaren) Gesichts in Bezug auf Punkt 507 und eine Winkelausrichtung der Augen in Bezug auf das Gesicht anzuzeigen. Die verschiedenen Richtungen über die Panels „in die die Nase zeigt“ können herangezogen werden, um eine Bewegung zu repräsentieren (d.h. sich verändernde Ausrichtung) des Gesichts von einem Panel zum nächsten. Ebenso verfolgt eine zum Auge gerichtete Videokamera 504-L in jedem Panel eine Bewegung des linken Auges 501-L und eine zum Auge gerichtete Videokamera 504-R verfolgt eine Bewegung des rechten Auges 501-R. Wie dargestellt, verfolgen die Winkelausrichtung der nach vorne gerichteten Videokamera 502 und der zu den Augen gerichteten Videokameras 504-L und 505-R die Richtung „in die die Nase zeigt.“ Dies entspricht der allgemein fixierten Ausrichtung des HMD im Verhältnis zum Kopf des Trägers. Um die Figur kurz zu halten, erscheinen diese numerischen Kennzeichnungen nur auf dem ersten Panel.
  • Offensichtlich und als Beispiel ändert sich die Ausrichtung der Nase 505 (und des nicht sichtbaren Gesichts) zusammen mit der nach vorne gerichteten Videokamera 502 und den zum Auge gerichteten Videokameras 504-L und 505-R von einem Panel zum nächsten in der Reihenfolge von links nach rechts in 5. Gleichzeitig bleibt die Blickrichtung des linken und rechten Auges auf den Punkt 507 fixiert. Dies ist von der linken und rechten Blickrichtung 503-L-1 und 503-R-1 in Panel 1, 503-L-2 und 503-R-2 in Panel 2 und 503-L-3 und 503-R-1 in Panel 3 repräsentiert.
  • Der Punkt 507 entspricht nicht notwendigerweise einem räumlichen Standort eines tatsächlichen physischen Objekts (obwohl es könnte), sondern eher einem Konvergenzpunkt des Blicks des linken und rechten Auges. Deshalb kann er als geometrisches Konstrukt betrachtet werden, das aus allgemeinen Grundsätzen der Trigonometrie bestimmt wird, wobei der Abstand zwischen zwei Augen die Basislinie bildet, und die Blickrichtung jedes Auges eines Trägers beispielsweise als jeweiliger Winkel betrachtet werden kann, der auf eine Ebene referenziert wird, die die Basislinie enthält. Ein Sichtlinien-Abstand zum konvergierenden Punkt kann dann ebenfalls bestimmt werden. Für praktische Berechnungszwecke ist es zweckmäßiger, die Blickrichtung jedes Auges eines HMD-Trägers mit Bezug auf eine oder mehrere fixe Positionen in dem HMD zu definieren. Beispielsweise kann eine Sichtlinie vom linken Auge 501-L zu einem Mittelpunkt in einer Bildebene der zum Auge gerichteten Videokamera 504-L eine Referenzrichtung für die Messung der Ausrichtung des linken Auges definieren und in ähnlicher Weise für das rechte Auge 504-R mit der zum Auge gerichteten Videokamera 504-R. Es ist zu beachten, dass für sehr weit entfernte Punkte die Blickrichtungen nicht konvergieren oder sich nicht schneiden könnten. In jedem Fall kann die binokulare Blickrichtung eines HMD-Trägers als Mitte des FOV des Trägers betrachtet werden. Tracking der binokularen Augen-Blickrichtung kann deshalb eine Referenzrichtung bereitstellen (z. B. die Mitte des FOV des Trägers), die verwendet werden kann, um eine Bewegung des FOV der nach vorne gerichteten Videokamera weg vom FOV des Trägers zu korrigieren.
  • 5 veranschaulicht auch, gemäß beispielhafter Ausführungsformen, die Position von Punkt 507 auf der Bildebene der nach vorne gerichteten Kamera 502 für jedes der Panel 1, 2 und 3, und auch wie eine Bewegung der Position in der Bildebene ausgeglichen wird. Spezifisch wird in Panel 1 eine Bildebene 506-1 direkt unter den veranschaulichenden Augen 501-L und 501-R gezeigt. Die Bildebene ist als zweidimensionales Gitter dargestellt und soll einen Pixelarray repräsentieren; die Größe des Gitters (Anzahl der Pixel in jeder Dimension) ist, wie gezeigt, beliebig und dient nur einer konzeptionellen Veranschaulichung. Ein schwarzer Punkt in einem Pixel nahe der Gittermitte repräsentiert die Bildposition von Punkt 507. Das heißt, der schwarze Punkt in der Mitte der Bildebene 506-1 repräsentiert eine binokulare Augen-Blickrichtung des Trägers, die an einer Pixelposition in der Bildebene abgebildet ist.
  • Dieselbe Bildebene ist in Panel 2 dargestellt, aber mit der Kennzeichnung 506-2, um zu markieren, dass sich ihre Ausrichtung im Verhältnis zu Punkt 507 mit der veränderten Ausrichtung der nach vorne gerichteten Videokamera 502 geändert hat. Als Resultat der Ausrichtungsänderung hat sich die Bildposition von Punkt 507, wieder als schwarzer Punkt dargestellt, zu einem anderen Pixel als in Panel 1 bewegt. Ein grauer Punkt zeigt die vorherige Pixelposition von Punkt 507 und ein gekrümmter Pfeil vom grauen Punkt zum schwarzen Punkt repräsentiert eine Trajektorie der Bewegung des Bildes von Punkt 507 in die Bildebene.
  • In Panel 3 ist erneut dieselbe Bildebene dargestellt, aber jetzt mit der Kennzeichnung 506-3, um eine weitere Änderung in der Ausrichtung im Verhältnis zu Punkt 507 mit der noch weiter veränderten Ausrichtung der nach vorne gerichteten Videokamera 502 zu markieren. Als Resultat der weiteren Ausrichtungsänderung hat sich die Bildposition von Punkt 507, wieder als schwarzer Punkt dargestellt, zu einem noch anderen Pixel als in Panel 2 bewegt. Zwei graue Punkte zeigen die vorherigen Pixelpositionen von Punkt 507 und ein gekrümmter Pfeil durch die grauen Punkte zum schwarzen Punkt repräsentiert eine weitere Trajektorie der Bewegung des Bildes von Punkt 507 in die Bildebene. Die Trajektorien in Panel 2 und 3 repräsentieren demnach eine Bewegung von Punkt 507 über die Bildebene, die sich aus einer Bewegung des Gesichts des Trägers ergibt, während die Daten der nach vorne gerichteten Videokamera erfasst werden. Das heißt, die Trajektorien verfolgen die Bewegung des FOV der nach vorne gerichteten Videokamera mit Bezug auf die Mitte des FOV eines Trägers, die aus der binokularen Augen-Blickrichtung des Trägers bestimmt wird.
  • Die Bewegungskompensation des Bildes von Punkt 507 über die Bildebene wird konzeptionell in den neu positionierten Bildebenen 508-1, 508-2 und 508-3 jeweils unter den Bildebenen-Darstellungen 506-1, 506-2 und 506-3 veranschaulicht. Als Beispiel wird Panel 1 herangezogen, um eine anfängliche FOV-Ausrichtung des Gesichts eines Trägers und die nach vorne gerichtete Videokamera 502 in Bezug auf den Punkt 507 darzustellen. Demnach gibt es eine Null- (keine) Verschiebung der neu positionierten Bildebene 508-1 in Bezug auf die Bildebene 506-1.
  • In Panel 2 ist die neu positionierte Bildebene 508-2 jedoch in Bezug auf die Bildebene 506-2, in Übereinstimmung mit der Trajektorie in der Bildebene 506-2 von Punkt 507, verschoben. Wie gezeigt, lässt die Verschiebung den Punkt 507 in der mittleren Pixelposition in der neu positionierten Bildebene 508-2 erscheinen, dies ist dieselbe wie die anfängliche Pixelposition in der Bildebene 506-1, zu Beginn der veranschaulichten Bewegung. Ein gestricheltes Rechteck in Panel 2 repräsentiert die ursprüngliche (nicht verschobene) Position der Bildebene.
  • In Panel 3 ist die neu positionierte Bildebene 508-3 in Bezug auf die Bildebene 506-3, in Übereinstimmung mit der Trajektorie in der Bildebene 506-3 von Punkt 507, verschoben. Wie gezeigt, lässt die Verschiebung den Punkt 507 in der mittleren Pixelposition in der neu positionierten Bildebene 508-3 erscheinen, dies ist wiederum dieselbe wie die anfängliche Pixelposition in der Bildebene 506-1, zu Beginn der veranschaulichten Bewegung. Ein gestricheltes Rechteck in Panel 3 repräsentiert die ursprüngliche (nicht verschobene) Position der Bildebene.
  • Gemäß beispielhafter Ausführungsformen wird das Verschieben des Bildes, wie es in den neu positionierten Bildebenen 508-2, 508-2 und 508-3 dargestellt ist, auf alle Pixel der jeweiligen Bildebene 506-2, 506-2 und 506-3 angewendet. Demnach kann das gesamte in den Videobilddaten aufgezeichnete FOV neu positioniert werden, um es an der Mitte des FOV eines Trägers auszurichten, die während der Videoaufnahme bestimmt wurde. Das Tracking der Augenbewegung des Trägers, während das Vorwärts-FOV-Video aufgenommen wird, kann eingesetzt werden, um die Augen-Blickrichtung des linken und rechten Auges zu bestimmen, und die analytische (geometrische) Konvergenz der Augen-Blickrichtungen ergibt die binokulare oder stereoskopische Blickrichtung als Funktion der Zeit. Die Trajektorien, die in der Bildebenen-Instanz in 5 dargestellt sind, repräsentieren eine Abbildung der binokularen Augen-Blickrichtung in den Bildebenen-Instanzen. Die aufgenommenen Bilder der nach vorne gerichteten Videokamera zu verschieben, verwandelt dadurch effektiv die Videobilder, wie sie von der sich bewegenden nach vorne gerichteten Videokamera 502 aufgenommen wurden, in Videobilder, wie sie von einer nach vorne gerichteten Videokamera mit übereinstimmenden Augenbewegungen aufgenommen worden wären. Das Resultat ist ein okular stabilisiertes Video.
  • In einer beispielhaften Ausführungsform kann die Augenbewegung als Funktion der Zeit unter Verwendung der Videokameras 504-L und 505-R verfolgt werden. Andere Augen-Tracking-Geräte und -Techniken können ebenfalls benutzt und angewendet werden. Beispielsweise kann die schnelle Erfassung aufeinanderfolgender Standbilder des linken und rechten Auges verarbeitet werden, um eine individuelle und stereoskopische Augen-Blickrichtung als Funktion der Zeit zu bestimmen. Zusätzliche Techniken können das Tracking von Reflexionen gesteuerter punktueller Beleuchtungen des Auges einschließen. Diese und andere Techniken können verwendet werden, um eine Augen-Blickrichtung als Funktion der Zeit während einer Videobildaufnahme durch eine nach vorne gerichtete Videokamera eines HMD zu bestimmen.
  • Gemäß beispielhafter Ausführungsformen kann das Verschieben oder Neupositionieren der aufgenommenen Videobilddaten in Echtzeit, zusammen mit der Videoaufnahme erfolgen. Zusätzlich oder alternativ kann die bestimmte stereoskopische Augen-Blickrichtung aufgezeichnet und auf einen Verschiebungsvorgang zu einem Zeitpunkt nach der Videoaufnahme angewendet werden. Bei gleichzeitiger Echtzeit-Verschiebung kann der Neupositionierungsvorgang durch einen oder mehrere Prozessoren des HMD ausgeführt werden, wie dem Bordcomputersystem 118 in 1A oder dem/den Prozessor(en) 204 in 2. Für eine Verschiebung nach dem Ereignis könnte die Verarbeitung durch einen oder mehrere Prozessoren des HMD ausgeführt werden und/oder durch ein Remote-Verarbeitungssystem, wie einen Server in einem Netzwerk.
  • Wie gesagt ist die natürliche Tendenz einer Augen-Blickrichtung einer Person, ein Objekt zu verfolgen, eine Reaktion auf die relative Bewegung zwischen der Augen-Blickrichtung und dem Objekt. Demnach kann sich die Bewegung eines Objekts im FOV einer nach vorne gerichteten Kamera eines HMD aus der Bewegung des Gesichts des Trägers in Bezug auf eine FOV-Position eines im Raum fixierten Objekts, einer Bewegung des Objekts durch einen Referenzrahmen, in dem die Gesichtsbewegung/-ausrichtung des Trägers fixiert ist, oder einer Kombination einer Bewegung in einem gemeinsamen Referenzrahmen sowohl in Bezug auf das Objekt als auch auf das Gesichts des Trägers ergeben. Die beispielhaften Ausführungsformen oben sind hinsichtlich einer Bewegung des Gesichts eines Trägers in Bezug auf ein Objekt oder einen Punkt in einer festen Position beschrieben. Dies ist teilweise eine Frage der Zweckmäßigkeit und liegt teilweise daran, dass die Techniken etwas mehr Relevanz für eine Bewegung des Gesichts eines Trägers haben können, da diese Art von Bewegung direkt an die nach vorne gerichtete Videokamera und dadurch auf die FOV-Bewegung, die besonders wahrnehmbar sein kann, übertragen wird. Die beschriebenen Grundsätze können jedoch auf eine relative Bewegung angewendet werden, die sich aus einem der oben genannten Gründe ergeben kann.
  • Als Beispiel könnte Punkt 507 in 5 ein (auf einem) Objekt sein, das sich in Bezug auf den Träger des HMD bewegt, wie beispielsweise ein Auto oder ein Flugzeug. Wenn der Träger das Objekt durch (in erster Linie) Bewegen seiner Augen verfolgt und nicht seines Kopfes, dann gilt immer noch die Veranschaulichung in 5. Das heißt, das FOV der Bildebene bleibt fix, während die Bewegung des Objekts in Bewegung über die Bildebene verwandelt wird, und die Augen-Blickrichtung verfolgt das sich bewegende Objekt und hält es (zumindest annähernd) in der binokularen FOV-Richtung der Augen fixiert.
  • Gemäß weiterer beispielhafter Ausführungsformen kann eine Bewegung eines Objekts in der Bildebene, wie die Bildebene 506-1, 506-2, 506-3, unterschieden werden als entweder entstehend aus einer Bewegung des Gesichts des Trägers oder aus einer Bewegung des Objekts im Raum (oder zumindest in erster Linie die eine oder die andere). Spezifisch können die oben beschriebenen Techniken auf zwei oder mehr unterschiedliche verfolgte Objekte über eine bestimmte Zeitdauer angewendet werden. Im Kontext von 5 könnte dies zwei oder mehr Instanzen von Punkt 507, jeweils verbunden mit einer unterschiedlichen Tracking-Instanz, entsprechen. Die Korrelationskoeffizienten zwischen den verschiedenen Trackings zu bestimmen, kann dann genutzt werden, um zu bestimmen, ob eine Bewegung über Pixel in der Bildebene, wie für die Bildebene 506-1, 506-2, 506-3 gezeigt, einer Änderung der Ausrichtung des HMD im Raum geschuldet ist oder einer Bewegung eines oder mehrerer Objekte des Raums im Blickfeld.
  • In weiteren beispielhaften Ausführungsformen kann eine Korrelation einer Blickrichtung und Pixelposition als eine Funktion der Zeit verwendet werden, um zu mutmaßen, dass ein Träger eines HMD auf ein Objekt blickt, das für den Träger von besonderem Interesse ist, im Gegensatz zu eher willkürlichen Blicken. Beispielsweise kann ein Träger, der ein Auto fährt, als eine Routineangelegenheit beim Autofahren, um sich schauen, Seitenstraßen, entgegenkommenden Verkehr beobachten, und so weiter. Während des Fahrens kann der Träger jedoch auch ein bestimmtes Objekt von Interesse bemerken, wie beispielsweise ein Werbeplakat oder eine Sehenswürdigkeit. Die Dauer der verschiedenen Blicke und ihre Korrelation mit Pixelpositionen in der Bildebene könnte verwendet werden, um Pixel, die Objekte von Interesse für den Träger des HMD enthalten, von solchen zu unterscheiden, die auf eher routinemäßige Aktionen oder Aufmerksamkeiten des Trägers bezogen sind.
  • Während die Techniken oben besonders für eine binokulare Blickrichtung gelten, einschließlich der Fähigkeit, den Sichtlinien-Abstand zu einem Objekt oder Punkt im Raum zu bestimmen, können die Grundsätze in Ausführungsformen auf das Tracking einer Blickrichtung nur eines Auges angepasst werden. In einer solchen Ausführungsform ist keine Entfernungsbestimmung möglich, aber durch das Konfigurieren einer nach vorne gerichteten Kamera in unmittelbarer Nähe einer auf ein einzelnes Auge gerichteten Kamera kann die Mitte der Bildebene der nach vorne gerichteten Kamera (oder eine Referenzposition der Bildebene) beliebig nahe (oder annähernd) an einer Referenz-Blickrichtung des einzelnen Auges ausgerichtet werden, wie es durch die zum Auge gerichtete Kamera bestimmt wird. Beispielsweise kann die Referenz-Blickrichtung so sein, dass sie senkrecht (rechtwinklig) zur Mitte einer Bildebene der zum Auge gerichteten Kamera liegt. Mit dieser Kalibrierung kann die von der zum Auge gerichteten Kamera gemessene Blickrichtung des einzelnen Auges direkt auf eine Blickrichtung im FOV der nach vorne gerichteten Kamera abgebildet werden. Obwohl dies nicht notwendigerweise so genau ist wie die binokulare Technik, könnte die Bildstabilisierung unter Verwendung des Einzelaugen-Trackings weniger kostenintensiv sein als die binokulare Technik, zumindest hinsichtlich der beteiligten Hardware und dem damit verbundenen Energieverbrauch.
  • 6 ist ein Flussdiagramm, das eine beispielhafte Ausführungsform eines Verfahrens 600 in einem tragbaren Computersystem, wie einem tragbaren HMD, für okulare Videostabilisierung veranschaulicht, so wie es oben in konzeptioneller und operationeller Hinsicht beschrieben ist. Das beispielhafte Verfahren 600 kann in ein tragbares HMD implementiert werden, das mit einer nach vorne gerichteten Videokamera, einer zum linken und zum rechten Auge gerichteten Videokamera, einem oder mehreren Prozessoren und einem Speicher ausgestattet ist, der Anweisungen speichert, die durch einen oder mehrere Prozessoren ausgeführt werden können, um das HMD zu veranlassen, verschiedene Verfahrensvorgänge, wie unten beschrieben, auszuführen. Der Speicher könnte die Form eines nichtflüchtigen computerlesbaren Speichermediums, wie eines magnetischen oder optischen Laufwerks oder ähnlichem, annehmen und die Anweisungen könnten für die Übertragung an einen Speicher des tragbaren, auf dem Kopf tragbaren Geräts, an einen Speicher eines Servers, oder beides, während der Herstellung, der Konfiguration oder (einem) anderen Verfahren, das für die Betriebsvorbereitung des tragbaren, auf dem Kopf tragbaren Geräts und/oder des Servers ausgeführt wird, bereitgestellt werden. Verschiedene Teile des Verfahrens können auch auf einem Server (oder einem anderen Computergerät oder einer anderen Plattform) implementiert sein, der nicht in das HMD integriert ist. Eine beispielhafte Ausführungsform eines solchen Verfahrens ist unten beschrieben.
  • Wie in Schritt 602 gezeigt, können, während die nach vorne gerichtete Videokamera des HMD Videobilder in einem Vorwärtsblickfeld (FOV) der nach vorne gerichteten Videokamera aufnimmt, stereoskopische Videobilder des linken und rechten Auges eines Nutzers des HMD mit der zum linken und zum rechten Auge gerichteten Videokamera des HMD aufgezeichnet werden.
  • In Schritt 604 werden die aufgezeichneten stereoskopischen Videobilder des linken und rechten Auges des Nutzers des HMD verwendet, um eine konvergierende Blickrichtung des Nutzers als Funktion der Zeit während eines Zeitraum zu bestimmen, der simultan zum Erfassen der Videobilder abläuft.
  • In Schritt 606 werden die aufgezeichneten Videobilder durch Bewegungskompensation der nach vorne gerichteten Videokamera in Bezug auf die konvergierende Blickrichtung stabilisiert, mit einem Schnittpunkt der konvergierenden Blickrichtung des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera.
  • Gemäß beispielhafter Ausführungsformen kann das Bestimmen der konvergierenden Blickrichtung des Nutzers als eine Funktion der Zeit während des Zeitraums, der simultan zum Erfassen der Videobilder abläuft, das Bestimmen der entsprechenden Blickwinkel des linken und rechten Auges des Nutzers als eine Funktion der Zeit aus den aufgezeichneten stereoskopischen Videobildern des linken und rechten Auges nach sich ziehen, und dann das Bestimmen eines Schnittpunkts der jeweiligen Blickwinkel, die auf das Vorwärts-FOV projiziert sind.
  • Ebenfalls gemäß beispielhafter Ausführungsformen kann das Kompensieren der Bewegung der nach vorne gerichteten Videokamera in Bezug auf die konvergierende Blickrichtung mit dem Schnittpunkt der konvergierenden Blickrichtung des Nutzers durch die Bildebene der nach vorne gerichteten Videokamera, das Bestimmen des Schnittpunkts der konvergierenden Blickrichtung des Nutzers mit der Bildebene in zwei- oder mehrmaliger Sequenz, wie beispielsweise manchmal zwei oder mehr aufgezeichnete Video-Frames, nach sich ziehen. Planare Koordinaten in der Bildebene jedes Schnittpunkts der Sequenz können dann bestimmt werden, und ein Schnittpunkt der Sequenz kann als Referenzpunkt in der Bildebene festgelegt werden. Das Videobild, das zu jedem entsprechenden Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichnet wird, kann dann verschoben werden, um die planaren Koordinaten des Schnittpunkts des entsprechenden Zeitpunkts an den planaren Koordinaten des Referenzpunkts auszurichten.
  • Gemäß weiteren beispielhaften Ausführungsformen kann die Bildebene einen regelmäßigen Pixelarray einschließen, so dass das Bestimmen der planaren Koordinaten in der Bildebene jedes Schnittpunkts der Sequenz, das Bestimmen von Pixelkoordinaten für jeden Schnittpunkt der Sequenz nach sich zieht. In dieser Konfiguration kann das Verschieben des zum jeweiligen Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichneten Videobilds, um die planaren Koordinaten des Schnittpunkts zum jeweiligen Zeitpunkt an den planaren Koordinaten des Referenzpunkts auszurichten, das Verschieben des zum jeweiligen Zeitpunkt aufgezeichneten Videobilds nach sich ziehen, um die Pixelkoordinaten des Schnittpunkts des entsprechenden Zeitpunkts an den Pixelkoordinaten des Referenzpunkts auszurichten.
  • In einer beispielhaften Ausführungsform kann das Kompensieren der Bewegung der nach vorne gerichteten Videokamera mit dem Schnittpunkt der konvergierenden Blickrichtung des Nutzers mit der Bildebene der nach vorne gerichteten Videokamera in Bezug auf die konvergierende Blickrichtung, das Bestimmen der Schnittpunkte der konvergierenden Blickrichtungen mit einer Bildebene als Funktion der Zeit während des Intervalls und dann das Verschieben der während des Intervalls aufgezeichneten Videobilder entlang der Trajektorie, um die Videobilder an einem gemeinsamen Punkt der Bildebene an jedem Moment während des Intervalls auszurichten, nach sich ziehen.
  • Gemäß weiterer beispielhafter Ausführungsformen kann das Verschieben der während des Intervalls entlang der Trajektorie aufgezeichneten Videobilder das Verschieben der während des Intervalls entlang der Trajektorie in Echtzeit aufgezeichneten Videobilder, während die konvergierenden Blickrichtungen bestimmt werden, nach sich ziehen. Zusätzlich oder alternativ kann das Verschieben der während des Intervalls entlang der Trajektorie aufgezeichneten Videobilder das Verschieben der während des Intervalls entlang der Trajektorie, zu einem Zeitpunkt, nachdem die konvergierenden Blickrichtungen bestimmt wurden, nach sich ziehen.
  • Es ist darüber hinaus zu beachten, dass die in 6 gezeigten Schritte den Vorgang einer beispielhaften Ausführungsform veranschaulichen sollen. Demnach könnten verschiedene Schritte geändert oder modifiziert werden, die Reihenfolge bestimmter Schritte könnte geändert werden und zusätzliche Schritte könnten hinzugefügt werden, und dennoch würde der gewünschte Vorgang insgesamt immer noch erreicht werden.
  • SCHLUSSFOLGERUNG
  • Es wurde hier beispielhaft eine veranschaulichende Ausführungsform beschrieben. Es versteht sich jedoch für Fachleute, dass Änderungen und Modifikationen an dieser Ausführungsform vorgenommen werden können, ohne vom wahren Umfang und Geist der Elemente, Produkte und Verfahren, an die sich die in diesen Ansprüchen definierte Ausführungsform richtet, abzuweichen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • IEEE 802.11 Standard [0063]
    • IEEE 802.16 Standard [0063]

Claims (20)

  1. Ein Computerprogrammprodukt umfassend Befehle, die, wenn sie auf einem auf dem Kopf tragbaren Gerät (HMD) ausgeführt werden, das HMD in Lage versetzen, ein computerimplementiertes Verfahren auszuführen, umfassend: beim Aufnehmen von Videobildern in einem Vorwärtsblickfeld (FOV) mit einer nach vorne gerichteten Videokamera, die an dem HMD befestigt ist, Aufnehmen von stereoskopischen Videobildern des linken und rechten Auges eines Nutzers des HMD mit einer zum linken und rechten Auge gerichteten Videokamera, die an dem HMD befestigt ist; basierend auf den aufgezeichneten stereoskopischen Videobildern des linken und rechten Auges des Nutzers des HMD Bestimmen von konvergierenden Blickrichtungen des Nutzers als Funktion der Zeit während eines Intervalls, das simultan zum Erfassen der Videobilder abläuft; und Stabilisieren der aufgezeichneten Videobilder durch Bewegungskompensation der nach vorne gerichteten Videokamera in Bezug auf die konvergierende Blickrichtung, mit einem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera.
  2. Computerprogrammprodukt nach Anspruch 1, wobei das Bestimmen der konvergierenden Blickrichtungen des Nutzers als Funktion der Zeit während des Intervalls, das simultan zum Erfassen der Videobilder abläuft, Folgendes umfasst: Bestimmen entsprechender Blickwinkel des linken und rechten Auges als Funktion der Zeit aus den aufgenommenen stereoskopischen Videobildern des linken und rechten Auges; und Bestimmen eines Schnittpunkts der entsprechenden auf das Vorwärts-FOV projizierten Blickwinkel.
  3. Computerprogrammprodukt nach Anspruch 1, wobei Kompensieren der Bewegung der nach vorne gerichteten Videokamera in Bezug auf die konvergierende Blickrichtung mit einem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera Folgendes umfasst: Bestimmen des Schnittpunkts der konvergierenden Blickrichtungen des Nutzers mit der Bildebene an jeder Sequenz zu zwei oder mehr Zeitpunkten; Bestimmen planarer Koordinaten in der Bildebene jedes Schnittpunkts der Sequenz; Festlegen eines Schnittpunkts der Sequenz als Referenzpunkt in der Bildebene; und Verschieben des Videobilds, das zu jedem entsprechenden Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichnet wird, um die planaren Koordinaten des Schnittpunkts des entsprechenden Zeitpunkts an den planaren Koordinaten des Referenzpunkts auszurichten.
  4. Computerprogrammprodukt nach Anspruch 3, wobei die Bildebene einen regelmäßigen Pixelarray umfasst, wobei Bestimmen der planaren Koordinaten in der Bildebene jedes Schnittpunkts der Sequenz umfasst, Pixelkoordinaten für jeden Schnittpunkt der Sequenz zu bestimmen; und wobei das Verschieben des zum jeweiligen Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichneten Videobilds, um die planaren Koordinaten des Schnittpunkts zum jeweiligen Zeitpunkt an den planaren Koordinaten des Referenzpunkts auszurichten, umfasst, das zum jeweiligen Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichnete Videobild zu verschieben, um die Pixelkoordinaten des Schnittpunkts des entsprechenden Zeitpunkts an den Pixelkoordinaten des Referenzpunkts auszurichten.
  5. Computerprogrammprodukt nach Anspruch 1, wobei das Kompensieren der Bewegung der nach vorne gerichteten Videokamera in Bezug auf die konvergierende Blickrichtung mit einem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera Folgendes umfasst: Bestimmen einer Trajektorie der Schnittpunkte der konvergierenden Blickrichtungen mit einer Bildebene als Funktion der Zeit während des Intervalls; und Verschieben der während des Intervalls entlang der Trajektorie aufgenommenen Videobilder, um die Videobilder an einem gemeinsamen Punkt auf der Bildebene für jeden Moment während des Intervalls auszurichten.
  6. Computerprogrammprodukt nach Anspruch 5, wobei Verschieben der während des Intervalls entlang der Trajektorie aufgenommenen Videobilder umfasst, die während des Intervalls entlang der Trajektorie während einer Verarbeitungszeit aufgenommenen Videobilder zu verschieben, wobei die Verarbeitungszeit eine der Folgenden ist: (i) Echtzeit, während die konvergierenden Blickrichtungen bestimmt werden, oder (ii) eine Zeit, nachdem die konvergierenden Blickrichtungen bestimmt wurden.
  7. Ein Computerprogrammprodukt umfassend Befehle, die, wenn sie auf einem auf dem Kopf tragbaren Gerät (HMD) ausgeführt werden, das HMD in Lage versetzen, ein computerimplementiertes Verfahren auszuführen, umfassend: beim Aufnehmen von Videobildern in einem Vorwärtsblickfeld (FOV) mit einer nach vorne gerichteten Videokamera, die an dem HMD befestigt ist, Augen-Blickrichtungen von zumindest einem linken oder einem rechten Auge eines Nutzers des HMD mit einem Augen-Tracking-Gerät, das an dem HMD befestigt ist, zu erfassen; basierend auf den erfassten Augen-Blickrichtungen, Bestimmen der Blickrichtungen des Nutzers als Funktion der Zeit während des Intervalls, das simultan zum Erfassen der Videobilder abläuft; und Stabilisieren der aufgezeichneten Videobilder durch Bewegungskompensation der nach vorne gerichteten Videokamera in Bezug auf die Blickrichtungen mit einem Schnittpunkt der Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera.
  8. Computerprogrammprodukt nach Anspruch 7, wobei das Erfassen der Augen-Blickrichtungen von zumindest entweder dem linken oder dem rechten Auge eines Nutzers des HMD mit dem Augen-Tracking-Gerät umfasst, die binokularen Augen-Blickrichtungen des linken und rechten Auges des Nutzers des HMD mit dem Augen-Tracking-Gerät zu erfassen; und wobei Bestimmen der Blickrichtungen des Nutzers als Funktion der Zeit während des Intervalls, das simultan zum Erfassen der Videobilder abläuft, Folgendes umfasst: Bestimmen entsprechender Blickwinkel des linken und rechten Auges als Funktion der Zeit aus den binokularen Augen-Blickrichtungen des linken und rechten Auges; und Bestimmen eines Schnittpunkts der entsprechenden auf das Vorwärts-FOV projizierten Blickwinkel.
  9. Computerprogrammprodukt nach Anspruch 7, wobei das Kompensieren der Bewegung der nach vorne gerichteten Videokamera in Bezug auf die Blickrichtungen mit einem Schnittpunkt der Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera Folgendes umfasst: Bestimmen des Schnittpunkts der Blickrichtungen des Nutzers mit der Bildebene an jeder Sequenz zu zwei oder mehr Zeitpunkten; Bestimmen planarer Koordinaten in der Bildebene jedes Schnittpunkts der Sequenz; Festlegen eines Schnittpunkts der Sequenz als Referenzpunkt in der Bildebene; und Verschieben des Videobilds, das zu jedem entsprechenden Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichnet wird, um die planaren Koordinaten des Schnittpunkts des entsprechenden Zeitpunkts an den planaren Koordinaten des Referenzpunkts auszurichten.
  10. Computerprogrammprodukt nach Anspruch 9, wobei die Bildebene einen regelmäßigen Pixelarray aufweist, wobei das Bestimmen der planaren Koordinaten in der Bildebene jedes Schnittpunkts der Sequenz umfasst, die Pixelkoordinaten für jeden Schnittpunkt der Sequenz zu bestimmen; und wobei das Verschieben des zum jeweiligen Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichneten Videobilds, um die planaren Koordinaten des Schnittpunkts zum jeweiligen Zeitpunkt an den planaren Koordinaten des Referenzpunkts auszurichten, umfasst, das zum jeweiligen Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichnete Videobild zu verschieben, um die Pixelkoordinaten des Schnittpunkts des entsprechenden Zeitpunkts an den Pixelkoordinaten des Referenzpunkts auszurichten.
  11. Computerprogrammprodukt nach Anspruch 7, wobei das Kompensieren der Bewegung der nach vorne gerichteten Videokamera in Bezug auf die Blickrichtungen mit einem Schnittpunkt der Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera Folgendes umfasst: Bestimmen einer Trajektorie der Schnittpunkte der Blickrichtungen mit einer Bildebene als Funktion der Zeit während des Intervalls; und Verschieben der während des Intervalls entlang der Trajektorie aufgenommenen Videobilder, um die Videobilder an einem gemeinsamen Punkt auf der Bildebene für jeden Moment während des Intervalls auszurichten.
  12. Computerprogrammprodukt nach Anspruch 11, wobei das Verschieben der während des Intervalls entlang der Trajektorie aufgenommenen Videobilder umfasst, die während des Intervalls entlang der Trajektorie während einer Verarbeitungszeit aufgenommenen Videobilder zu verschieben, wobei die Verarbeitungszeit eine der Folgenden ist: (i) Echtzeit, während die konvergierenden Blickrichtungen bestimmt werden, oder (ii) eine Zeit, nachdem die konvergierenden Blickrichtungen bestimmt wurden.
  13. Computerprogrammprodukt nach Anspruch 8, wobei das Augen-Tracking-Gerät eine linke und rechte zum Auge gerichtete Videokameras umfasst, und wobei Erfassen der binokularen Augen-Blickrichtungen des linken und rechten Auges des Nutzers des HMD mit dem Augen-Tracking-Gerät, umfasst, die stereoskopischen Videobilder des linken und rechten Auges des Nutzers des HMD mit der linken und rechten zum Auge gerichteten Videokamera zu erfassen.
  14. Ein auf dem Kopf tragbares Gerät (HMD), umfassend: eine nach vorne gerichtete Videokamera; ein Augen-Tracking-Gerät; einen Prozessor; und einen Speicher, in dem Anweisungen gespeichert sind, die, wenn sie von dem Prozessor ausgeführt werden, das HMD veranlassen die folgenden Vorgänge auszuführen: beim Aufnehmen von Videobildern in einem Vorwärtsblickfeld (FOV) mit der nach vorne gerichteten Videokamera, Erfassen binokularer Augen-Blickrichtungen des linken oder rechten Auges eines Nutzers des HMD mit dem Augen-Tracking-Gerät; basierend auf den erfassten binokularen Augen-Blickrichtungen des linken und rechten Auges des Nutzers des HMD, Bestimmen konvergierender Blickrichtungen des Nutzers als eine Funktion der Zeit während eines Intervalls, das simultan zum Erfassen der Videobilder abläuft; und Stabilisieren der aufgezeichneten Videobilder durch Bewegungskompensation der nach vorne gerichteten Videokamera in Bezug auf die konvergierenden Blickrichtungen, mit einem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit einer Bildebene der nach vorne gerichteten Videokamera.
  15. HMD nach Anspruch 14, wobei das Bestimmen der konvergierenden Blickrichtungen des Nutzers als Funktion der Zeit während des Intervalls, das simultan zum Erfassen der Videobilder abläuft, Folgendes umfasst: Bestimmen entsprechender Blickwinkel des linken und rechten Auges als Funktion der Zeit aus den erfassten binokularen Augen-Blickrichtungen des linken und rechten Auges; und Bestimmen eines Schnittpunkts der entsprechenden auf das Vorwärts-FOV projizierten Blickwinkel.
  16. HMD nach Anspruch 14, wobei das Kompensieren der Bewegung der nach vorne gerichteten Videokamera in Bezug auf die konvergierenden Blickrichtungen mit dem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit der Bildebene der nach vorne gerichteten Videokamera Folgendes umfasst: Bestimmen des Schnittpunkts der konvergierenden Blickrichtungen des Nutzers mit der Bildebene an jeder Sequenz zu zwei oder mehr Zeitpunkten; Bestimmen planarer Koordinaten in der Bildebene jedes Schnittpunkts der Sequenz; Festlegen eines Schnittpunkts der Sequenz als Referenzpunkt in der Bildebene, und Verschieben des Videobilds, das zu jedem entsprechenden Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichnet wird, um die planaren Koordinaten des Schnittpunkts des entsprechenden Zeitpunkts an den planaren Koordinaten des Referenzpunkts auszurichten.
  17. HMD nach Anspruch 16, wobei die Bildebene einen regelmäßigen Pixelarray umfasst, wobei Bestimmen der planaren Koordinaten in der Bildebene jedes Schnittpunkts der Sequenz umfasst, die Pixelkoordinaten für jeden Schnittpunkt der Sequenz zu bestimmen; und wobei Verschieben des zum jeweiligen Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichneten Videobilds, um die planaren Koordinaten des Schnittpunkts zum jeweiligen Zeitpunkt an den planaren Koordinaten des Referenzpunkts auszurichten, umfasst, das zum jeweiligen Zeitpunkt der einen oder mehreren Sequenzzeiten aufgezeichnete Videobild zu verschieben, um die Pixelkoordinaten des Schnittpunkts des entsprechenden Zeitpunkts an den Pixelkoordinaten des Referenzpunkts auszurichten.
  18. HMD nach Anspruch 14, wobei Kompensieren der Bewegung der nach vorne gerichteten Videokamera in Bezug auf die konvergierenden Blickrichtungen mit dem Schnittpunkt der konvergierenden Blickrichtungen des Nutzers mit der Bildebene der nach vorne gerichteten Videokamera Folgendes umfasst: Bestimmen einer Trajektorie der Schnittpunkte der konvergierenden Blickrichtungen mit einer Bildebene als Funktion der Zeit während des Intervalls; und Verschieben der während des Intervalls entlang der Trajektorie aufgenommenen Videobilder, um die Videobilder an einem gemeinsamen Punkt auf der Bildebene für jeden Moment während des Intervalls auszurichten.
  19. HMD nach Anspruch 18, wobei Verschieben der während des Intervalls entlang der Trajektorie aufgenommenen Videobilder umfasst, die während des Intervalls entlang der Trajektorie während einer Verarbeitungszeit aufgenommenen Videobilder zu verschieben, wobei die Verarbeitungszeit mindestens eine der Folgenden ist: (i) Echtzeit, während die konvergierenden Blickrichtungen bestimmt werden, oder (ii) eine Zeit, nachdem die konvergierenden Blickrichtungen bestimmt wurden.
  20. HMD nach Anspruch 14, wobei das Augen-Tracking-Gerät eine linke und rechte zum Auge gerichtete Videokamera umfasst, und wobei Erfassen der binokularen Augen-Blickrichtungen des linken und rechten Auges des Nutzers des HMD mit dem Augen-Tracking-Gerät, umfasst, die stereoskopischen Videobilder des linken und rechten Auges des Nutzers des HMD mit der linken und rechten zum Auge gerichteten Videokamera zu erfassen.
DE202017106773.4U 2016-12-06 2017-11-08 Okulare Videostabilisierung Active DE202017106773U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662430595P 2016-12-06 2016-12-06
US62/430,595 2016-12-06

Publications (1)

Publication Number Publication Date
DE202017106773U1 true DE202017106773U1 (de) 2018-03-07

Family

ID=60382036

Family Applications (2)

Application Number Title Priority Date Filing Date
DE202017106773.4U Active DE202017106773U1 (de) 2016-12-06 2017-11-08 Okulare Videostabilisierung
DE102017126116.8A Pending DE102017126116A1 (de) 2016-12-06 2017-11-08 Okulare Videostabilisierung

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE102017126116.8A Pending DE102017126116A1 (de) 2016-12-06 2017-11-08 Okulare Videostabilisierung

Country Status (6)

Country Link
US (1) US10591731B2 (de)
EP (1) EP3334148A1 (de)
CN (1) CN108156441B (de)
DE (2) DE202017106773U1 (de)
GB (1) GB2559237B (de)
WO (1) WO2018106390A1 (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10810773B2 (en) * 2017-06-14 2020-10-20 Dell Products, L.P. Headset display control based upon a user's pupil state
US11145124B2 (en) * 2017-08-30 2021-10-12 Ronald H. Winston System and method for rendering virtual reality interactions
WO2019154510A1 (en) 2018-02-09 2019-08-15 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
WO2019154509A1 (en) * 2018-02-09 2019-08-15 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
EP3750029A1 (de) * 2018-02-09 2020-12-16 Pupil Labs GmbH Vorrichtungen, systeme und verfahren zur vorhersage von parametern im zusammen mit dem blick unter verwendung eines neuronalen netzes
WO2019208005A1 (ja) * 2018-04-23 2019-10-31 ソニー株式会社 接眼光学系、医療用ビューア及び医療用ビューアシステム
US10432864B1 (en) * 2018-09-19 2019-10-01 Gopro, Inc. Systems and methods for stabilizing videos
US10833945B2 (en) * 2018-11-13 2020-11-10 International Business Machines Corporation Managing downloading of content
WO2020244752A1 (en) 2019-06-05 2020-12-10 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
EP3786767B1 (de) * 2019-07-29 2023-11-08 HTC Corporation Augenverfolgungsverfahren, kopfmontierte anzeige und computerlesbares speichermedium
US11320667B2 (en) * 2019-09-27 2022-05-03 Snap Inc. Automated video capture and composition system
CN112949370A (zh) * 2019-12-10 2021-06-11 托比股份公司 眼睛事件检测
US11720170B2 (en) * 2019-12-26 2023-08-08 Stmicroelectronics, Inc. Method, device, and system of measuring eye convergence angle
US20220269896A1 (en) * 2020-04-13 2022-08-25 Google Llc Systems and methods for image data management
KR20230079411A (ko) * 2020-09-30 2023-06-07 스냅 인코포레이티드 증강 현실 및 컴퓨터 비전 애플리케이션들을 위한 다목적 카메라들
EP4189463A1 (de) * 2020-12-18 2023-06-07 Google LLC Steuerbare kameraanordnung für kopfmontierte anzeigevorrichtungen
CN114721144A (zh) * 2021-01-04 2022-07-08 宏碁股份有限公司 裸视立体显示器及其控制方法
US11567569B2 (en) 2021-04-08 2023-01-31 Google Llc Object selection based on eye tracking in wearable device
WO2023009853A1 (en) * 2021-07-29 2023-02-02 Meta Platforms Technologies, Llc User interface to select field of view of a camera in smart glasses
US20230031871A1 (en) * 2021-07-29 2023-02-02 Meta Platforms Technologies, Llc User interface to select field of view of a camera in a smart glass
WO2023183337A1 (en) * 2022-03-21 2023-09-28 Headvantage Corporation Body worn camera, sensor and content delivery system
US11822736B1 (en) * 2022-05-18 2023-11-21 Google Llc Passive-accessory mediated gesture interaction with a head-mounted device

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070009034A1 (en) * 2005-07-05 2007-01-11 Jarno Tulkki Apparatuses, computer program product, and method for digital image processing
US20110228051A1 (en) * 2010-03-17 2011-09-22 Goksel Dedeoglu Stereoscopic Viewing Comfort Through Gaze Estimation
US8888287B2 (en) 2010-12-13 2014-11-18 Microsoft Corporation Human-computer interface system having a 3D gaze tracker
US8810666B2 (en) * 2012-01-16 2014-08-19 Google Inc. Methods and systems for processing a video for stabilization using dynamic crop
US8736692B1 (en) * 2012-07-09 2014-05-27 Google Inc. Using involuntary orbital movements to stabilize a video
JP5998863B2 (ja) 2012-11-09 2016-09-28 株式会社Jvcケンウッド 視線検出装置および視線検出方法
US9374532B2 (en) * 2013-03-15 2016-06-21 Google Inc. Cascaded camera motion estimation, rolling shutter detection, and camera shake detection for video stabilization
US10136810B2 (en) 2013-10-03 2018-11-27 Neuroscience Research Australia (Neura) Systems and methods for diagnosis and therapy of vision stability dysfunction
US9066014B2 (en) * 2013-10-11 2015-06-23 Facebook, Inc. Applying video stabilization to a multimedia clip
CN106030458B (zh) 2013-12-31 2020-05-08 谷歌有限责任公司 用于基于凝视的媒体选择和编辑的系统和方法
US9773349B2 (en) * 2014-02-19 2017-09-26 Daqri, Llc Active parallax correction
CN105718036B (zh) * 2014-12-04 2019-04-26 中芯国际集成电路制造(上海)有限公司 可穿戴式设备的信息交互方法和系统
US10395428B2 (en) * 2016-06-13 2019-08-27 Sony Interactive Entertainment Inc. HMD transitions for focusing on specific content in virtual-reality environments

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IEEE 802.11 Standard
IEEE 802.16 Standard

Also Published As

Publication number Publication date
GB2559237A (en) 2018-08-01
DE102017126116A1 (de) 2018-06-07
WO2018106390A1 (en) 2018-06-14
US10591731B2 (en) 2020-03-17
GB2559237B (en) 2021-03-10
CN108156441B (zh) 2021-07-30
CN108156441A (zh) 2018-06-12
US20180157045A1 (en) 2018-06-07
EP3334148A1 (de) 2018-06-13
GB201719623D0 (en) 2018-01-10

Similar Documents

Publication Publication Date Title
DE202017106773U1 (de) Okulare Videostabilisierung
DE112016004114T5 (de) Stereorenderingsystem
US8970495B1 (en) Image stabilization for color-sequential displays
US10715791B2 (en) Virtual eyeglass set for viewing actual scene that corrects for different location of lenses than eyes
EP3195595B1 (de) Technologien zur einstellung einer perspektive eines aufgenommenen bildes zur anzeige
US11715238B2 (en) Image projection method, apparatus, device and storage medium
KR102503029B1 (ko) 픽셀 재분할 최적화를 갖는 방법 및 디스플레이 디바이스
US20230269358A1 (en) Methods and systems for multiple access to a single hardware data stream
US11314323B2 (en) Position tracking system for head-mounted displays that includes sensor integrated circuits
US9442292B1 (en) Directional array sensing module
DE112013003257T5 (de) Verbesserte Informationsübertragung durch ein transparentes Display
DE112015002673T5 (de) Anzeige zur Informationsverwaltung
KR102120105B1 (ko) 헤드 마운티드 디스플레이 및 그 제어 방법
DE112016006066T5 (de) Analyse von umgebungslicht zur blickverfolgung
DE102018109428A1 (de) Fahrzeuginterne bewegungskorrektur für projizierte realität
US20140233100A1 (en) Image display apparatus and image display method
US10291896B2 (en) Display control methods and apparatuses and display devices
US20160358523A1 (en) Display control methods and apparatuses
DE102013213492A1 (de) Bildanpassung für kontaktanaloge Darstellungen auf Datenbrillen
CN112585673A (zh) 信息处理设备、信息处理方法及程序
WO2016046123A1 (de) Anzeigevorrichtung, die auf den kopf eines benutzers aufsetzbar ist, und verfahren zum steuern einer solchen anzeigevorrichtung
DE102020215664A1 (de) Mobile kalibration von displays für einen smart-helm
CN111949113A (zh) 应用于虚拟现实vr场景中的图像交互方法及装置
US11463674B1 (en) Imaging system and display apparatus incorporating super resolution using fixed focus cameras
US20230396752A1 (en) Electronic Device that Displays Virtual Objects

Legal Events

Date Code Title Description
R207 Utility model specification
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G02B0027220000

Ipc: G02B0030000000

R150 Utility model maintained after payment of first maintenance fee after three years
R151 Utility model maintained after payment of second maintenance fee after six years