-
Technisches Gebiet
-
Die Erfindung betrifft Verfahren zum Betreiben von Datenbrillen, insbesondere zum Einsatz in einem Kraftfahrzeug.
-
Technischer Hintergrund
-
Es sind Datenbrillen, auch Head-mounted Displays genannt, bekannt, die mithilfe einer Anzeigevorrichtung eine Abbildung auf einer oder zwei Anzeigeflächen im Blickfeld des Trägers der Datenbrille anzeigen können. Die Anzeigeflächen entsprechen Reflexionsflächen, die Abbildungen in das Auge des Trägers der Datenbrille richten. Die Sichtöffnungen der Datenbrille sind transparent, so dass durch die Datenbrille die reale Umgebung in gewöhnlicher Weise wahrgenommen werden kann. Die Anzeigeflächen liegen in den Sichtöffnungen und können halbtransparent ausgebildet sein, so dass eine anzuzeigende Information, wie beispielsweise Text, Symbole, Graphiken, Videoanzeigen und dergleichen, die Wahrnehmung der Umgebung überlagernd angezeigt werden kann. Darüber hinaus sind auch Datenbrillen bekannt, die eine nicht-transparente Anzeige umfassen.
-
Die Informationen werden dem Träger der Datenbrille in der Regel kontaktanalog dargestellt, d.h. so dargestellt, dass die Information einem bestimmten Objekt in der Realumgebung überlagert ist bzw. an diesem orientiert ist oder dass die anzuzeigende Information in einer bestimmten Ausrichtung der Datenbrille bzw. deren Trägers angezeigt wird. Weiterhin ist es wünschenswert, die Information so darzustellen, dass sie in Bezug auf das Objekt in der Realumgebung perspektivisch korrekt erscheint, d.h. die Illusion entsteht, dass das Objekt der Realumgebung tatsächlich um das zusätzliche Merkmal der visuellen Information ergänzt wurde.
-
Um die Information entsprechend kontaktanalog auf den Anzeigeflächen der Datenbrille anzuzeigen, ist es notwendig, die Position des Objektes in der Umgebung und die Pose der Datenbrille, d.h. die 3D-Position als auch die 3D-Ausrichtung der Datenbrille, in Bezug zum Objekt zu kennen. Zur Bestimmung der Pose der Datenbrille kann in der Datenbrille eine Posenerkennungseinheit vorgesehen werden. Die Posenerkennungseinheit weist in der Regel eine Kamera und Recheneinrichtung, z.B. in Form eines Mikroprozessors auf. Mithilfe der Kamera aufgezeichnete Abbildungen der Umgebung des Trägers der Datenbrille können basierend auf hinterlegten Abbildungen bzw. Strukturen des Fahrzeuginnenraums die Pose der Datenbrille im Fahrzeuginnenraum festgestellt werden. Diesen Vorgang nennt man auch Tracking.
-
So ist aus der Druckschrift
DE 10 2014 206 623 A1 eine Vorrichtung zum Bestimmen der Pose einer Datenbrille bekannt, die eine Anzeige und eine Kamera umfasst. Die Vorrichtung ist ausgebildet, um Aufnahmen der Umgebung der Datenbrille mithilfe der Kamera zu erstellen, die Abbildung eines gespeicherten und vordefinierten Bereiches der Umgebung in den Aufnahmen der Kamera zu erkennen, ein Merkmal in der erkannten Abbildung des Bereiches zu erkennen und die Pose der Datenbrille unter Berücksichtigung des bestimmten Merkmals in den Aufnahmen zu bestimmen.
-
Eine Anzeige eines Anzeigebildes auf der Anzeigefläche der Datenbrille erfordert also die aufeinanderfolgende Ausführung eines Tracking-Prozesses, eines Rendering-Prozesses zum Aufbau der auf der Anzeigefläche anzuzeigenden Abbildung und eines Anzeige-Prozesses des Anzeigebilds. Die Zeitdauern, während der jeweils ein Tracking-Prozess, ein Rendering- Prozess und ein Anzeige- Prozess durchgeführt werden, werden Frames genannt, die hierfür benötigten Zeitdauern Frame-Dauern.
-
Die Frame-Dauern für die Berechnungen des Tracking-Prozesses und des Rendering-Prozesses können je nach Situation variieren, so dass sich die Frames zueinander verschieben. Die Auslastungen des Tracking-Prozesses und des Rendering-Prozesses hängen beispielsweise von der Pose der Datenbrille und Komplexität des anzuzeigenden Anzeigebilds ab.
-
Durch die unterschiedlichen Frame-Dauern des Tracking-Prozesses, des Rendering-Prozesses und des Anzeige-Prozesses erfolgt die Bearbeitung unsynchronisiert und die Latenz zwischen der Erfassung der Pose der Datenbrille im Tracking-Prozess und einer Anzeige des zugehörigen, die Pose berücksichtigenden Anzeigebilds kann sich aufgrund der aufeinanderfolgenden Ausführung der Prozesse verschlechtern.
-
Da die Anzeige des Anzeigebilds auf der Anzeigefläche bei einer konstanten Frame-Rate, d.h. bei konstanten Anzeigedauern, stets mit dem aktuellsten Anzeigebild erfolgt, kann dies dazu führen, dass dasselbe Anzeigebild in zwei aufeinanderfolgenden Frames angezeigt wird, wenn der zuvor durchgeführte Rendering-Prozess, der das nächste Anzeigebild erzeugen soll, zu spät beendet wird. Daher wird ein entsprechend aktualisiertes Anzeigebild erst mit dem nächsten Anzeige-Frame dargestellt.
-
Auch kann eine Aktualisierung des Anzeigebilds vor dem Beenden des Rendering-Prozesses abgeschlossen ist, jedoch zu Tearing-Lines führen, d.h. Bruchlinien innerhalb des Anzeigebilds, die für den Träger der Datenbrille störend sind.
-
Weiterhin führt die permanente Belastung durch die sich kontinuierlich aneinanderreihenden Ausführungen des Tracking-Prozesses, des Rendering-Prozesses und des Anzeigeprozesses zu einer hohen Belastung für die Datenverarbeitungseinrichtung, was zu einem erhöhten Energieverbrauch und Wärmeentwicklung innerhalb der Datenbrille führt.
-
Es ist daher Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren zum Bereitstellen eines Anzeigebildes in der Datenbrille zur Verfügung zu stellen, bei der keine verschlechterte Latenz durch übersprungene Anzeige-Frames auftritt und die Belastung der Datenverarbeitung in der Datenbrille begrenzt werden kann.
-
Offenbarung der Erfindung
-
Diese Aufgabe wird durch das Verfahren zum Betreiben einer Datenbrille gemäß Anspruch 1 sowie durch die Datenbrille gemäß dem nebengeordneten Anspruch gelöst.
-
Weitere Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.
-
Gemäß einem ersten Aspekt ist ein Verfahren zum Betreiben einer Datenbrille in einem Kraftfahrzeug vorgesehen, mit folgenden Schritten:
- - Durchführen eines Tracking-Prozesses, um eine aktuelle Pose der Datenbrille zu bestimmen;
- - Durchführen eines Rendering-Prozesses, um basierend auf bereitgestellten Anzeigeinformationen, die eine Position und Form eines oder mehrerer anzuzeigender virtuellen Objekte angeben, abhängig von der Pose der Datenbrille ein Anzeigebild zu erzeugen;
- - Durchführen eines Anzeige-Prozesses zum Anzeigen des Anzeigebilds auf einer oder mehrerer Anzeigeflächen der Datenbrille, wobei der Tracking-Prozess, der Rendering-Prozess und der Anzeigeprozess so synchronisiert ausgeführt werden, dass jedem der Prozesse die gleiche Frame-Dauer zugewiesen wird.
-
Eine Idee des obigen Verfahrens besteht darin, die Frame-Raten bzw. Frame-Dauern des Tracking-Prozesses, des Rendering-Prozesses und der Anzeige in einer Datenbrille zu synchronisieren, so dass für jeden der Prozesse eine identische Frame-Dauer festgelegt wird. Die Synchronisation der Frame-Dauer für die einzelnen Prozesse bestimmt sich durch die geringste Maximalfrequenz, die sich aus der Auslastung, insbesondere durch den Tracking- und den Rendering-Prozess, ergibt. Die Maximalfrequenz des Tracking-Prozesses ist abhängig von den Lichtverhältnissen und der tatsächlichen Pose der Datenbrille, während die Maximalfrequenz des Rendering-Prozesses von der Anzahl der darzustellenden, insbesondere kontaktanalog darzustellenden, virtuellen Objekte und deren Komplexitäten abhängen kann.
-
Durch Synchronisieren der Frame-Dauern des Tracking-Prozesses, des Rendering-Prozesses und des Anzeigeprozesses können zudem der Energieverbrauch und die Wärmeentwicklung in der Datenbrille bedarfsweise eingestellt werden. Die Synchronisierung ermöglicht es, eine doppelte Anzeige von Anzeigebildern oder ein Überspringen von Anzeigebildern und eine dadurch bewirkte Latenz zwischen der Generierung des Anzeigebildes und der Anzeige des entsprechenden Anzeigebilds zu vermeiden.
-
Weiterhin kann die synchronisierte Frame-Dauer gleich oder größer als diejenige Frame-Dauer gewählt werden, die der längsten Frame-Dauer entspricht, die von den Prozessen benötigt wird.
-
Ferner kann die Abfolge des Tracking-Prozesses, des Rendering-Prozesses und des Anzeigeprozesses für jeweils mehrere Anzeigebilder parallel durchgeführt werden, so dass gleichzeitig mindestens zwei der Prozesse, nämlich des Tracking-Prozesses, des Rendering-Prozesses und des Anzeigeprozesses gestartet werden.
-
Insbesondere kann die synchronisierte Frame-Dauer abhängig von einem Energieverbrauch des Durchführens der Prozesse eingestellt werden. Somit ist es möglich, durch bedarfsgerechte Anpassung der Frame-Dauer den Energieverbrauch in der Datenbrille einzuschränken.
-
Weiterhin kann der Tracking-Prozess in der Datenbrille ausgeführt werden, indem ein Kamerabild einer Datenbrillenkamera ausgewertet wird. Dies kann beispielsweise ein Erfassen eines oder mehrerer markanten Strukturen und das Bestimmen der relativen Position durch Mustererkennungsverfahren bezüglich der Ausrichtung und Position der Datenbrille umfassen.
-
Gemäß einer Ausführungsform kann die Anzeigeinformation von einem Fahrerassistenzsystem empfangen werden.
-
Gemäß einem weiteren Aspekt ist eine Datenbrille für ein Anzeigesystem in einem Kraftfahrzeug vorgesehen, wobei die Datenbrille ausgebildet ist, um:
- - einen Tracking-Prozess durchzuführen, um eine aktuelle Pose der Datenbrille zu bestimmen;
- - einen Rendering-Prozess durchzuführen, um basierend auf bereitgestellten Anzeigeinformationen, die eine Position und Form eines oder mehrerer anzuzeigender virtuellen Objekte angeben, abhängig von der Pose der Datenbrille ein Anzeigebild zu erzeugen;
- - einen Anzeige-Prozess zum Anzeigen des Anzeigebilds auf einer oder mehrerer Anzeigeflächen der Datenbrille durchzuführen,
wobei der Tracking-Prozess, der Rendering-Prozess und der Anzeige-Prozess so synchronisiert ausgeführt werden, dass jedem der Prozesse die gleiche Frame-Dauer zugewiesen wird.
-
Gemäß einem weiteren Aspekt ist ein Anzeigesystem in einem Kraftfahrzeug mit der obigen Datenbrille und einem Fahrerassistenzsystem vorgesehen, das ausgebildet ist, um zyklisch eine Anzeigeinformation zu empfangen.
-
Kurzbeschreibung der Zeichnungen
-
Ausführungsformen werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:
- 1 eine schematische Darstellung eines Anzeigesystems mit einer Datenbrille zum Einsatz in einem Kraftfahrzeug;
- 2 ein Flussdiagramm zur Veranschaulichung eines Verfahrens zum Betreiben der Datenbrille; und
- 3 eine Darstellung zur Veranschaulichung der Synchronisation von Frames für die Durchführung der einzelnen Prozesse.
-
Beschreibung von Ausführungsformen
-
1 zeigt eine schematische Darstellung eines Anzeigesystems 1 insbesondere zum Einsatz in einem Kraftfahrzeug. Das Anzeigesystem 1 umfasst ein Fahrerassistenzsystem 2, das in Kommunikationsverbindung 4 mit einer Datenbrille 3 steht. Die Kommunikationsverbindung 4 ist als ein Datenübertragungskanal ausgebildet, über den bidirektional Daten übertragen werden können. Die Kommunikationsverbindung 4 ist in der Lage, jegliche Art von Daten und Informationen zwischen dem Fahrerassistenzsystem 4 und der Datenbrille 3 zu übermitteln, beispielsweise basierend auf einer paketgebundenen Datenübertragung.
-
Die Datenbrille 3 ist mit zwei transparenten Sichtscheiben 32, die in einem Rahmen 31 in an sich bekannter Weise eingefasst sind. Der Rahmen 31 ist mit Brillenbügeln 33 versehen, so dass die Datenbrille 3 am Kopf eines Benutzers in an sich bekannter Weise getragen werden kann.
-
Die Sichtscheiben 32 sind weiterhin jeweils mit einer transparenten Anzeigefläche 35 versehen, auf der durch eine geeignete Einrichtung, wie zum Beispiel eine an dem Rahmen 31 angeordnete Anzeigeeinrichtung 36, ein Anzeigebild angezeigt werden kann. Die Anzeigeeinrichtung 36 kann einen Mikroprozessor oder eine vergleichbare Recheneinheit und eine Anzeigeeinheit, wie z.B. eine Projektionseinrichtung oder dergleichen, aufweisen. Die Anzeigeeinheit kann ausgebildet sein, ein elektronisch generiertes Anzeigebild auf die Anzeigefläche 35 einzublenden.
-
Durch die transparente Ausbildung der Anzeigefläche 35 kann das elektronisch generierte Bild die durch die Anzeigefläche 35 wahrnehmbare Realumgebung überlagern. Mithilfe der Anzeigeeinrichtung 36 kann eine Information, wie beispielsweise einen Text, ein Symbol, eine Videoinformation, eine Graphik oder dergleichen, auf einer oder beiden Anzeigeflächen 35 dargestellt werden.
-
Die Datenbrille 3 kann wie eine typische Sehhilfe an dem Kopf des Benutzers getragen werden, wobei die Datenbrille 3 mit dem Rahmen 31 auf der Nase des Benutzers aufliegt und die Bügel 33 an dem Kopf des Benutzers seitlich anliegen. Die Blickrichtung des Benutzers in Geradeausrichtung erfolgt dann durch die Sichtscheiben 32 im Wesentlichen durch die transparenten Anzeigeflächen 35, so dass die Blickrichtung des Benutzers der Ausrichtung der Datenbrille 3 entspricht oder davon abgeleitet werden kann.
-
Weiterhin kann die Datenbrille 3 mit einer Steuereinheit 37 versehen sein. Die Steuereinheit 37 kann in geeigneter Weise ausgebildet sein und Datenbrillenfunktionen und Funktionen des Anzeigesystems 2 auszuführen. Dazu kann das Fahrerassistenzsystem 2 mit der Datenbrille 3 in Verbindung stehen, um Anzeigeinformationen betreffend kontaktanalog oder nicht-kontaktanalog anzuzeigenden virtuellen Objekten an die Datenbrille 3 zu übermitteln. Die Anzeigeinformationen definieren die Position und Darstellung der virtuellen Objekte in Bezug auf das Fahrzeug, d.h. in einem Fahrzeugkoordinatensystem (Bezugsystem des Kraftfahrzeugs).
-
Beispielsweise kann die Steuereinheit 37 eine Posenerkennungsfunktion in Form eines Tracking-Prozesses ausführen, um eine Pose des Kopfes bzw. der Datenbrille in einem Fahrzeuginnenraum festzustellen. Die Pose einer Datenbrille 3 bezeichnet hierin die räumliche Position der Datenbrille 3 in einem fahrzeugfesten Koordinatensystem sowie deren dreidimensionale Ausrichtung. Die Steuereinheit 37 kann dazu mit einer geeigneten Datenbrillenkamera 38 verbunden sein, die etwa in Blickrichtung des Trägers der Datenbrille 3 gerichtet ist. Die Datenbrillenkamera 38 erfasst regelmäßig Kamerabilder und übermittelt diese an die Steuereinheit 37. Die Steuereinheit 37 wertet die Kamerabilder aus und versucht markante Strukturen des Fahrzeuginnenraums in dem Kamerabild aufzufinden, deren Positionen bekannt sind, und daraus die Pose der Datenbrille 3 zu ermitteln.
-
Das Fahrerassistenzsystem 2 kann diverse Einrichtungen, wie z.B. Umfelderfassungseinrichtungen 21 und dergleichen, aufweisen, und insbesondere Anzeigeinformationen generieren, durch die darzustellende virtuelle Objekte generiert werden. Eines oder mehrere der virtuellen Objekte können als kontaktanalog oder nicht-kontaktanalog darzustellend gekennzeichnet sein.
-
Weiterhin kann die Steuereinheit 37 in einem Rendering-Prozess aus den von dem Fahrerassistenzsystem 2 empfangenen Anzeigeinformationen und abhängig von der aktuellen Pose der Datenbrille 3 ein Anzeigebild zur Darstellung auf den Anzeigeflächen 35 generieren. Dazu kann die Steuereinheit 37 abhängig von der Pose der Datenbrille 3 die kontaktanalog anzuzeigenden virtuellen Objekte vom Fahrzeugkoordinatensystem in ein Bezugsystem der Datenbrille 3, insbesondere deren Anzeige, transformieren.
-
Anschließend wird die Anzeigeeinrichtung 36 angesteuert, um für eine vorbestimmte Zeitdauer das während des Rendering-Prozesses erstellte Anzeigebild anzuzeigen.
-
Das Verfahren, das in der Steuereinheit ausgeführt wird, wird nachfolgend anhand des Flussdiagramms der 2 näher erläutert.
-
In Schritt S1 werden über die Kommunikationsverbindung 4 Anzeigeinformationen von dem Fahrerassistenzsystem 2 empfangen oder durch Funktionen der Datenbrille 3 selbst bereitgestellt. Die Anzeigeinformationen definieren die Raumposition und die Form der kontaktanalog anzuzeigenden virtuellen Objekte oder die Anzeigeposition von auf der Anzeigefläche der Datenbrille 3 nicht-kontaktanalog anzuzeigenden Objekte, wie Nachrichten, Bahnmeldungen, Fahrzeugzustandsinformationen oder dergleichen.
-
Anschließend wird in Schritt S2 ein von der Datenbrillenkamera 3 erfasstes Kamerabild einem Tracking-Prozess zugeführt.
-
In Schritt S3 wird der Tracking-Prozess basierend auf dem Kamerabild der Datenbrillenkamera 38 gestartet. Der Tracking-Prozess ermittelt anhand von Mustererkennungsverfahren markante Strukturen im Fahrzeuginnenraum, deren Position bekannt ist, und ermittelt entsprechend eine Pose der Datenbrille 3 basierend auf dem erfassten Kamerabild.
-
In Schritt S4 wird nun ein Rendering-Prozess gestartet, der basierend auf den bereitgestellten Anzeigeinformationen und der ermittelten Pose der Datenbrille 3 die Anordnung von kontaktanalog anzuzeigenden virtuellen Objekten in dem anzuzeigenden Anzeigebild vornimmt. Dies erfolgt in an sich bekannter Weise, da eine kontaktanaloge Darstellung der kontaktanalog anzuzeigenden virtuellen Objekte und eine positionierte Darstellung der nicht-kontaktanalog anzuzeigenden virtuellen Objekte auf dem Anzeigebild erfolgt.
-
Anschließend wird in Schritt S5 in einem Anzeigeprozess die Anzeigeeinrichtung 36 angewiesen, das anzuzeigende Anzeigebild über die Anzeigeflächen 35 auszugeben. Dieses Verfahren wird zyklisch ausgeführt.
-
Das mit 2 veranschaulichte Verfahren wird synchronisiert so ausgeführt, dass die einzelnen Prozesse, nämlich der Tracking-Prozess T, der Rendering-Prozess R und der Anzeigeprozess A jeweils zueinander versetzt mit gleichen Frame-Dauern ausgeführt werden, wie es in 3 schematisch dargestellt ist. Das heißt, es können jeweils gleichzeitig ein Tracking-, ein Rendering- und ein Anzeigeprozess von aufeinanderfolgenden Anzeigebildern stattfinden. Dadurch, dass die Frame-Dauern identisch gewählt sind, finden die Prozesse zyklisch und zeitgleich statt.
-
Die Frame-Dauern sind zueinander so synchronisiert, dass diese der längsten geschätzten Frame-Dauer aller drei aufeinanderfolgender Prozesse entsprechen. Die Frame-Dauer kann abhängig von der jeweiligen Auslastung geschätzt werden. Die Auslastung hängt beim Tracking-Prozess insbesondere von den Lichtverhältnissen und der Pose der Datenbrille 3 ab. Beim Rendering-Prozess hängt die Auslastung von der Anzahl der darzustellenden virtuellen Objekte, insbesondere der kontaktanalog darzustellenden virtuellen Objekte, ab.
-
Für die optimale Leistungsfähigkeit wird die Frame-Dauer kleinstmöglich gewählt, d.h. entsprechend der Frame-Dauer desjenigen Prozesses, der zur Durchführung der entsprechenden Funktionen die längste Zeitdauer benötigt. Jedoch kann die Energieeinsparung, die synchronisierte Frame-Dauer entsprechend reduziert werden. Die Frame-Dauer wird von den jeweiligen Prozessen an die übrigen Prozesse kommuniziert, so dass die maximalen Frame-Dauern in jedem der Prozesse über jeden der Prozesse bekannt sind.
-
Die Frame-Dauern können kontinuierlich angepasst werden, um den Ablauf an sich verändernden Auslastungen der einzelnen Prozesse anzupassen. Diese Anpassung erfolgt so, dass kein Auslassen einer Anzeige eines durch den Rendering-Prozess generierten Anzeigebilds auftritt.
-
Durch die Synchronisation der Frame-Dauer können verdoppelte oder übersprungene Anzeigebilder vermieden werden, und es entsteht keine Latenz zwischen der erfassten Pose der Datenbrille und der Anzeige der daran angepassten virtuellen Objekte.
-
Bezugszeichenliste
-
- 1
- Anzeigesystems
- 2
- Fahrerassistenzsystem
- 21
- Umfelderfassungseinrichtung
- 3
- Datenbrille
- 31
- Rahmen
- 32
- Sichtscheiben
- 33
- Brillenbügel
- 35
- transparente Anzeigefläche
- 36
- Anzeigeeinrichtung
- 37
- Steuereinheit
- 38
- Datenbrillenkamera
- 4
- Datenübertragungskanal