-
Die vorliegende Erfindung betrifft Verfahren und Vorrichtungen zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten für virtuelle Objekte sowie ein Computerprogramm mit Instruktionen zur Durchführung eines solchen Verfahrens. Die Erfindung betrifft zudem ein Anzeigegerät für virtuelle Objekte, in dem ein erfindungsgemäßes Verfahren oder eine erfindungsgemäße Vorrichtung eingesetzt wird.
-
Bereits seit Jahren lässt sich eine zunehmende Verbreitung digitaler Technologien in der Gesellschaft feststellen. Es steht zu erwarten, dass diese Digitalisierung der Gesellschaft im Alltag deutlich zunehmen wird. Virtual-, Augmented- und Mixed-Reality-Technologien und -Anwendungen stellen eine besondere Ausprägung der Digitalisierung dar. Bei Virtual Reality (VR) taucht der Nutzer in eine vollständige virtuelle, computergenerierte Welt ein. Für diesen Zweck werden üblicherweise Head-Mounted-Display-Geräte (HMD) genutzt.
-
Bei Augmented Reality (AR), auf Deutsch „erweiterte Realität“, handelt es sich um die Anreicherung der Wahrnehmung der realen Welt durch virtuelle Elemente, die im dreidimensionalen Raum ortskorrekt registriert sind und eine Echtzeitinteraktion erlauben. Für die Darstellung von AR-Anzeigen können beispielsweise Datenbrillen genutzt werden. Eine Datenbrille wird wie eine normale Brille getragen, weist aber eine oder mehrere Projektionseinheiten oder Anzeigen auf, mit deren Hilfe dem Träger der Brille Informationen vor die Augen oder direkt auf die Netzhaut projiziert werden können. Die Brille ist dabei so gestaltet, dass der Träger auch die Umgebung wahrnehmen kann. Neue Technologien für Datenbrillen, beispielsweise Lichtfeldtechnologie, Fortschritte in der verwendeten Batterietechnik sowie der Einstieg großer Unternehmen in diese lassen eine steigende Akzeptanz dieser Geräte erwarten. Eine weitere Möglichkeit für die Darstellung von AR-Inhalten besteht in der Verwendung von Tablets oder Smartphones. In diesem Fall betrachtet der Nutzer auf dem Bildschirm des Geräts die reale Umgebung, die kontinuierlich von einer Kamera des Geräts gefilmt wird. Das Bild der realen Umgebung wird dabei durch zusätzliche virtuelle Inhalte angereichert, die ortskorrekt in das Bild eingefügt werden. Daneben existiert die sogenannte Spatial AR (SAR), auf Deutsch „räumliche erweiterte Realität“, auch als Projection-based AR (PbAR) bezeichnet, auf Deutsch „projektionsbasierte erweiterte Realität“. Bei dieser werden durch einen Projektor Bildinformationen so in die reale Umwelt projiziert, dass diese aus Perspektive (meist) einzelner Anwender die lagerichtige Wahrnehmung virtueller 3D-Geometrien erlauben. Bei allen oben genannten Geräten handelt es sich um Anzeigegeräte für virtuelle Objekte.
-
Bei Mixed Reality (MR), auf Deutsch „gemischte Realität“, werden Elemente von Virtual Reality und Augmented Reality verbunden, d.h. die reale Welt wird mit virtuellen Umgebungen verbunden, sodass eine neue Umwelt entsteht. Der Nutzer interagiert zeitgleich mit der realen und einer virtuellen Umgebung. Physikalische Objekte der realen Welt haben dabei Einfluss auf digitale Elemente. Oftmals wird der Begriff „Mixed Reality“ aber auch praktisch synonym zu Augmented Reality benutzt.
-
Virtual Reality, Augmented Reality und Mixed Reality können unter dem Kürzel xR zusammengefasst werden. Das Kürzel xR steht dabei für „any-R‟, also eine beliebige Ausprägung von AR, VR oder MR.
-
Insgesamt ist absehbar, dass xR-Geräte, d.h. Systeme zur Präsentation von Augmented Reality, Virtual Reality oder Mixed Reality, bei Endkunden zunehmend stärker im Einsatz sein werden.
-
Eine mögliche Anwendung von xR-Technologien besteht darin, dass mehrere Nutzer virtuell zusammen an einem Objekt arbeiten. Beispielsweise beschreibt die
US 2013/0135180 A1 ein System für die verteilte Zusammenarbeit mehrerer Nutzer. Ein aktiver Nutzer trägt eine Datenbrille, die mit einem zentralen Rechner verbunden ist. Der zentrale Rechner empfängt Umgebungsinformationen von der Datenbrille und generiert daraus ein Raummodell. Zudem empfängt der zentrale Rechner Informationen zu einem Objekt, an dem gearbeitet werden soll, sowie Eingaben des aktiven Nutzers sowie weiterer Nutzer. Unter Berücksichtigung der Eingaben der Nutzer wird ein virtuelles Abbild des Objektes in das Raummodell eingefügt und dem aktiven Nutzer angezeigt.
-
Des Weiteren besteht die Möglichkeit, dass mehrere Anwender gemeinsam eine erweiterte Realität erleben, d.h. sie sehen gleichzeitig eine augmentierte Information in einem gemeinsamen virtuellen Szenario. Beispielsweise beschreibt
DE 10 2018 203 865 A1 ein Verfahren zum Bereitstellen von Informationen durch ein Augmented-Reality-Gerät. Bei dem Verfahren werden Informationen zu den Blickpunkten von Nutzern geteilt. Dabei können die Nutzer Anwender eines Augmented-Reality-Gerätes sein, die Ermittlung der Blickpunkte kann aber auch bei Nutzern erfolgen, die kein Augmented-Reality-Gerät benutzen. Die geteilten Informationen können dann als Grundlage für eine Reihe von Anwendungen dienen und ermöglichen die Verwirklichung einer geteilten erweiterten Realität. Beispielsweise wird der Blickpunkt eines zweiten Nutzers in einer Augmented-Reality-Anzeige eines ersten Nutzers eingeblendet.
-
Die
US 2014/0368534 A1 beschreibt ein Verfahren zur Darstellung eines virtuellen Objekts mittels eines HMDs. Für einen ersten Benutzer und einen zweiten Benutzer werden Position, Orientierung und Sichtfeld in einer gemeinsamen Umgebung bestimmt. Darüber hinaus wird eine gemeinsame optimale Positionierung eines gemeinsam betrachteten virtuellen Objekts in Bezug auf den ersten Benutzer und den zweiten Benutzer bestimmt. Die optimale Positionierung umfasst einen durch ein lokales Koordinatensystem definierten Ort. Die Objekt- und Positionsdaten in der gemeinsamen Umgebung werden zwischen dem ersten Benutzer und dem zweiten Benutzer geteilt, um die Darstellung des gemeinsam betrachteten virtuellen Objekts an diesem Ort zu ermöglichen.
-
Eine mögliche Anwendung eines gemeinsamen virtuellen Szenarios besteht darin, dass ein Nutzer anderen Personen ein Produkt ohne räumliche Beschränkungen präsentiert. Allerdings müssen dazu verschiedene xR-Geräte im Rahmen einer gemeinsamen Live-Sitzung kombiniert werden, d.h. die teilnehmenden Personen verwenden jeweils ein eigenes Gerät, nehmen dabei aber am gleichen virtuellen Szenario teil.
-
Bei einer solchen Anwendung erzeugt jedes xR-Gerät seinen eigenen Ankerpunkt im Raum für sein Koordinatensystem, d.h. den Ursprung des Koordinatensystems. Lage und Orientierung des Koordinatensystems werden üblicherweise durch die physische Position des Nutzers zu dem Zeitpunkt bestimmt, zu dem die jeweilige xR-Software gestartet wird oder durch einen systemabhängigen Kalibriervorgang vorab festgelegt. Speziell für AR-Geräte, aber nicht auf diese beschränkt, besteht nun folgende Problematik. Jedes am virtuellen Szenario teilnehmende xR-Gerät hat seinen eigenen Ursprung für das eigene Koordinatensystem bestimmt. Wenn nun ein erstes Gerät ein virtuelles Objekt im Raum platziert, sehen andere Geräte dieses Objekt an einer Position im Raum. Beispielsweise kann es passieren, dass das Objekt im Raum zu schweben scheint, obwohl es aus Sicht des ersten Geräts auf einem Tisch abgestellt wurde. Es ist daher erforderlich, die Koordinatensysteme der beteiligten xR-Geräte in Bezug auf ein gemeinsames Koordinatensystem zu registrieren. Dazu können z.B. geteilte Ankerpunkte oder mathematische Transformationen zwischen den Koordinatensystemen genutzt werden.
-
Hinsichtlich geteilter Ankerpunkte besteht eine erste Möglichkeit in der Verwendung von Cloud-Ankerpunkten, bei denen 3D-Merkmalskarten der Umgebung die Basis für den Ankerpunkt bilden. Zur Erzeugung der Merkmalskarte kartiert ein Gerät mit Hilfe seiner Kamera die Umgebung um einen Bereich von Interesse aus verschiedenen Positionen und Blickwinkeln. Der Nutzer übermittelt die resultierende 3D-Merkmalskarte und den Ankerpunkt an einen Cloud-Dienst. Andere Geräte können die 3D-Merkmalskarte und den Ankerpunkt vom Cloud-Dienst herunterladen. Durch einen Abgleich der visuellen Merkmale der Szene mit der 3D-Merkmalskarte kann dann der Ankerpunkt lokalisiert werden. Bei dieser Lösung ist es erforderlich, dass die beteiligen Geräte in der Lage sind, ihre Umgebung zu kartieren. Eine eventuell unterschiedliche Qualität der Kartierung, z.B. aufgrund unterschiedlicher Kameraparameter oder Lichtverhältnisse, hat unmittelbar Einfluss auf die Registrierung. Zudem ist eine funktionierende Datenanbindung an den Cloud-Dienst erforderlich.
-
Eine weitere Möglichkeit besteht in der Verwendung von zusätzlicher Hardware für das Geräte-Tracking. Beispielsweise kann an jedem der beteiligten mobilen xR-Geräte ein UWBbasiertes (UWB: Ultra-Wide Bandwidth; Ultra-Breitband) Abstandsmessungsmodul befestigt, das in der Lage ist, sich selbst in Bezug auf die Umgebung zu lokalisieren. Während sich die Benutzer unabhängig voneinander bewegen, werden die Positionen der AR-Geräte in ihren lokalen Systemen und die entsprechenden Abstandsmessungen gesammelt. Bei dieser Lösung muss zusätzliche Hardware erworben und installiert werden.
-
Schließlich besteht die Möglichkeit, ein physisches Objekt, z.B. ein 2D-Objekt wie einen QR-Code oder ein 3D-Objekt, bereitzustellen, das den Geräten bekannt ist und als Ankerpunkt benutzt wird. Bei dieser Lösung muss das physische Objekt im Vorfeld bereitgestellt werden. Zudem darf seine Position nicht verändert werden.
-
Hinsichtlich mathematischer Transformationen zwischen den Koordinatensystemen kann die Punktwolkenregistrierung genutzt werden. Dabei wird eine räumliche Transformation, z.B. Skalierung, Rotation und Translation, anhand einer Ausrichtung zweier Punktwolken bestimmt. Die Punktwolken umfassen die physisch gleichen Punkte, aber der Ursprung der Koordinatensysteme und somit die Koordinaten der Punkte sind unterschiedlich. Sofern mindestens vier 3D-Punkte je Punktwolke vorliegen, kann eine Transformationsmatrix für die Transformation zwischen den Koordinatensystemen berechnet werden. Mathematische Transformationen zwischen den Koordinatensystemen werden auch bei der Verwendung von Cloud-Ankerpunkten oder verschiedenen Tracking-Verfahren genutzt. Voraussetzung für die Registrierung ist lediglich, dass die erforderlichen Punktwolken im gleichen Raum ermittelt werden.
-
Des Weiteren beschreibt
WO 2019/143572 A1 ein Verfahren zur AR- und VR-Kollaboration in gemeinsam genutzten Räumen. Es werden Geräte-Trackingdaten eines ersten HMDs in einem ersten Koordinatensystem und von dem ersten HMD erzeugte Skelett-Trackingdaten empfangen. Darüber hinaus werden Geräte-Trackingdaten von einem zweiten HMD in einem zweiten Koordinatensystem und von dem zweiten HMD erfasste Bilddaten empfangen. Aus den erfassten Bilddaten werden zweite Skelett-Trackingdaten erzeugt, die potenzielle Benutzer des ersten HMDs repräsentieren. Die erzeugten zweiten Skelett-Trackingdaten werden in das zweite Koordinatensystem transformiert. Die erzeugten zweiten Skelett-Trackingdaten werden mit den von dem ersten HMD gesendeten Geräte-Trackingdaten verglichen, um den Benutzer des ersten HMDs unter den potenziellen Benutzern zu identifizieren. Unter Verwendung der Skelett-Trackingdaten, die aus den erfassten Bilddaten erzeugt wurden, die den identifizierten Benutzer des ersten HMDs darstellen, wird ein Standort des identifizierten Benutzers des ersten HMDs im zweiten Koordinatensystem bestimmt. Basierend auf den Geräte-Trackingdaten des ersten HMDs im ersten Koordinatensystem und dem Standort des identifizierten Benutzers des ersten HMDs im zweiten Koordinatensystem wird eine Transformation zwischen dem ersten und zweiten Koordinatensystem bestimmt.
-
Es ist eine Aufgabe der Erfindung, eine Lösung zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten für virtuelle Objekte bereitzustellen, die keine zusätzliche Hardware benötigt.
-
Diese Aufgabe wird durch Verfahren mit den Merkmalen der Ansprüche 1 und 2, durch ein Computerprogramm mit Instruktionen gemäß Anspruch 10 und durch Vorrichtungen mit den Merkmalen der Ansprüche 11 und 12 gelöst. Bevorzugte Ausgestaltungen der Erfindung sind Gegenstand der abhängigen Ansprüche.
-
Gemäß einem ersten Aspekt der Erfindung umfasst ein Verfahren zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten für virtuelle Objekte die Schritte:
- - Vorgeben von Sollpositionen für ein zweites Anzeigegerät durch ein erstes Anzeigegerät, wobei die Sollpositionen Positionen sind, in die das zweite Anzeigegerät gebracht werden soll;
- - Empfangen von Informationen des zweiten Anzeigegeräts in Bezug auf die Sollpositionen durch das erste Anzeigegerät, wenn sich das zweite Anzeigegerät aus Sicht des ersten Anzeigegeräts jeweils in einer Sollposition befindet; und
- - Bestimmen einer Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts auf Basis der Sollpositionen und der Informationen.
-
Gemäß einem weiteren Aspekt der Erfindung umfasst ein Computerprogramm Instruktionen, die bei Ausführung durch einen Computer den Computer zur Ausführung der folgenden Schritte zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten für virtuelle Objekte veranlassen:
- - Vorgeben von Sollpositionen für ein zweites Anzeigegerät durch ein erstes Anzeigegerät, wobei die Sollpositionen Positionen sind, in die das zweite Anzeigegerät gebracht werden soll;
- - Empfangen von Informationen des zweiten Anzeigegeräts in Bezug auf die Sollpositionen durch das erste Anzeigegerät, wenn sich das zweite Anzeigegerät aus Sicht des ersten Anzeigegeräts jeweils in einer Sollposition befindet; und
- - Bestimmen einer Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts auf Basis der Sollpositionen und der Informationen.
-
Der Begriff Computer ist dabei breit zu verstehen. Insbesondere umfasst er auch mobile Geräte und andere prozessorbasierte Datenverarbeitungsvorrichtungen.
-
Das Computerprogramm kann beispielsweise für einen elektronischen Abruf bereitgestellt werden oder auf einem computerlesbaren Speichermedium gespeichert sein.
-
Gemäß einem weiteren Aspekt der Erfindung weist eine Vorrichtung zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten für virtuelle Objekte auf:
- - einen Positionsgenerator zum Vorgeben von Sollpositionen für ein zweites Anzeigegerät, wobei die Sollpositionen Positionen sind, in die das zweite Anzeigegerät gebracht werden soll;
- - eine Schnittstelle zum Empfangen von Informationen des zweiten Anzeigegeräts in Bezug auf die Sollpositionen, wenn sich das zweite Anzeigegerät aus Sicht eines ersten Anzeigegeräts jeweils in einer Sollposition befindet; und
- - ein Rechenmodul zum Bestimmen einer Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts auf Basis der Sollpositionen und der Informationen.
-
Aus Sicht eines bereits eingemessenen Anzeigegeräts werden für ein einzumessendes Anzeigegerät mehrere Sollpositionen vorgegeben, die das bereits eingemessene Anzeigegerät in seiner augmentierten Szenerie anzeigt. Der Nutzer des einzumessenden Anzeigegeräts bringt nun das einzumessende Anzeigegerät nacheinander in die angezeigten Sollpositionen. Jedes Mal, wenn sich das einzumessende Anzeigegerät in einer der Sollpositionen befindet, werden vom einzumessenden Anzeigegerät Informationen an das bereits eingemessene Anzeigegerät übermittelt. Der Umstand, dass sich das einzumessende Anzeigegerät in einer der Sollpositionen befindet, kann vom Nutzer beispielsweise über die Betätigung einer Taste oder Schaltfläche, vorzugsweise am einzumessenden Anzeigegerät, oder über einen Sprachbefehl oder eine Geste bestätigt werden. Aus den übermittelten Informationen und den bekannten Sollpositionen kann das bereits eingemessene Anzeigegerät nun eine Transformationsvorschrift für die Koordinatensysteme der beiden Anzeigegeräte berechnen.
-
Gemäß einem weiteren Aspekt der Erfindung umfasst ein Verfahren zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten für virtuelle Objekte die Schritte:
- - Empfangen von durch ein erstes Anzeigegerät vorgegebenen Sollpositionen durch ein zweites Anzeigegerät, wobei die Sollpositionen Positionen sind, in die das zweite Anzeigegerät gebracht werden soll;
- - Bestimmen von Informationen in Bezug auf die Sollpositionen durch das zweite Anzeigegerät, wenn sich das zweite Anzeigegerät aus Sicht des ersten Anzeigegeräts jeweils in einer Sollposition befindet; und
- - Bestimmen einer Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts auf Basis der Sollpositionen und der Informationen.
-
Gemäß einem weiteren Aspekt der Erfindung umfasst ein Computerprogramm Instruktionen, die bei Ausführung durch einen Computer den Computer zur Ausführung der folgenden Schritte zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten für virtuelle Objekte veranlassen:
- - Empfangen von durch ein erstes Anzeigegerät vorgegebenen Sollpositionen durch ein zweites Anzeigegerät, wobei die Sollpositionen Positionen sind, in die das zweite Anzeigegerät gebracht werden soll;
- - Bestimmen von Informationen in Bezug auf die Sollpositionen durch das zweite Anzeigegerät, wenn sich das zweite Anzeigegerät aus Sicht des ersten Anzeigegeräts jeweils in einer Sollposition befindet; und
- - Bestimmen einer Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts auf Basis der Sollpositionen und der Informationen.
-
Der Begriff Computer ist dabei breit zu verstehen. Insbesondere umfasst er auch mobile Geräte und andere prozessorbasierte Datenverarbeitungsvorrichtungen.
-
Das Computerprogramm kann beispielsweise für einen elektronischen Abruf bereitgestellt werden oder auf einem computerlesbaren Speichermedium gespeichert sein.
-
Gemäß einem weiteren Aspekt der Erfindung weist eine Vorrichtung zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten für virtuelle Objekte auf:
- - eine Schnittstelle zum Empfangen von durch ein erstes Anzeigegerät vorgegebenen Sollpositionen, wobei die Sollpositionen Positionen sind, in die ein zweites Anzeigegerät gebracht werden soll;
- - ein Positionsbestimmungsmodul zum Bestimmen von Informationen in Bezug auf die Sollpositionen, wenn sich das zweite Anzeigegerät aus Sicht eines ersten Anzeigegeräts jeweils in einer Sollposition befindet; und
- - ein Rechenmodul zum Bestimmen einer Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts auf Basis der Sollpositionen und der Informationen.
-
Aus Sicht eines einzumessenden Anzeigegeräts empfängt das einzumessende Anzeigegerät von einem bereits eingemessene Anzeigegerät Informationen zu mehreren Sollpositionen, die das bereits eingemessene Anzeigegerät in seiner augmentierten Szenerie anzeigt. Der Nutzer des einzumessenden Anzeigegeräts bringt nun das einzumessende Anzeigegerät nacheinander in die angezeigten Sollpositionen. Jedes Mal, wenn sich das einzumessende Anzeigegerät in einer der Sollpositionen befindet, werden vom einzumessenden Anzeigegerät Informationen in Bezug auf die jeweilige Sollposition bestimmt. Der Umstand, dass sich das einzumessende Anzeigegerät in einer der Sollpositionen befindet, kann vom Nutzer beispielsweise über die Betätigung einer Taste oder Schaltfläche, vorzugsweise am einzumessenden Anzeigegerät, oder über einen Sprachbefehl oder eine Geste bestätigt werden. Aus den empfangenen Sollpositionen und den ermittelten Informationen kann das einzumessende Anzeigegerät nun eine Transformationsvorschrift für die Koordinatensysteme der beiden Anzeigegeräte berechnen.
-
Die erfindungsgemäße Lösung, ein Anzeigegerät für virtuelle Objekte zu verwenden, um ein anderes Anzeigegerät für virtuelle Objekte räumlich zu registrieren, hat den Vorteil, dass die Registrierung unabhängig von der Verfügbarkeit einer funktionierenden Datenanbindung an einen Cloud- oder Web-Dienst ist. Zudem wird keine zusätzliche Hardware benötigt, sodass die Lösung kostengünstig umgesetzt werden kann. Es ist ausreichend, wenn die beteiligten Anzeigegeräte über ein lokales Netzwerk oder das Internet miteinander verbunden sind bzw. kommunizieren können. Wenn die Anzahl beteiligter Anzeigegeräte zunimmt, kann die Kalibrierphase abgekürzt werden, indem neu kalibrierte Anzeigegeräte ihrerseits für die Kalibrierung weiterer einzumessender Anzeigegeräte genutzt werden. Für eine hohe Genauigkeit der Kalibrierung ist es allerdings vorteilhaft, die Kalibrierung immer mit dem ersten Anzeigegerät auszuführen, um die Fehlerkette kurz und auftretende Fehler so gering wie möglich zu halten. Fehler können z.B. durch leichte Ungenauigkeiten beim Halten der Geräte in die Sollpositionen sowie allgemein durch die Präzision der verwendeten Trackingsysteme entstehen. Nimmt man ein bereits kalibriertes Gerät für weitere Kalibrierungen, können sich die bereits vorhandenen Fehler fortpflanzen.
-
Gemäß einem Aspekt der Erfindung werden die Sollpositionen vom ersten Anzeigegerät in Form von virtuellen Registrierungsobjekten dargestellt. Das zweite Anzeigegerät befindet sich dabei aus Sicht des ersten Anzeigegeräts in einer Sollposition, wenn es sich in Übereinstimmung mit einem virtuellen Registrierungsobjekt befindet. Vorzugsweise sind die virtuellen Registrierungsobjekte dabei virtuelle Modelle des zweiten Anzeigegeräts. Durch die Verwendung virtueller Registrierungsobjekte ist für den Nutzer des einzumessenden Anzeigegeräts leicht ersichtlich, in welche Positionen er das einzumessende Anzeigegerät bringen muss. Handelt es sich bei den virtuellen Registrierungsobjekten zudem noch um virtuelle Modelle des einzumessenden Anzeigegeräts, ist es für den Nutzer besonders einfach, das einzumessende Anzeigegerät möglichst exakt in die Sollposition zu bringen. Dazu ist es zudem vorteilhaft, wenn es sich bei dem bereits eingemessenen Anzeigegerät um eine Datenbrille handelt.
-
Gemäß einem Aspekt der Erfindung sind die Informationen in Bezug auf die Sollpositionen Koordinaten der Position des zweiten Anzeigegeräts im Koordinatensystem des zweiten Anzeigegeräts. Die Transformationsvorschrift wird dann auf Basis der Koordinaten der Position des zweiten Anzeigegeräts im Koordinatensystem des zweiten Anzeigegeräts und von Koordinaten der Sollpositionen im Koordinatensystem des ersten Anzeigegeräts bestimmt. Durch die Bereitstellung von Koordinaten liegen beiden Anzeigegeräten nach dem Abarbeiten der Sollpositionen jeweils zwei Punktwolken mit gleicher Anzahl an Punkten je Gerät mit Koordinaten für die Sollpositionen vor. Bei den Punkten handelt es sich um 3D-3D-Korrespondenzen. Sofern mindestens vier 3D-Punkte je Punktwolke vorliegen, kann nun eine Transformationsmatrix für die Transformation zwischen den Koordinatensystemen berechnet werden.
-
Gemäß einem Aspekt der Erfindung wird das zweite Anzeigegerät in einer vorgegebenen Reihenfolge in die Sollpositionen gebracht. Dies erleichtert eine Zuordnung der ermittelten Koordinaten und somit die Berechnung der Transformationsvorschrift.
-
Gemäß einem Aspekt der Erfindung werden die Transformationsvorschriften von den Anzeigegeräten verwendet, um ein Koordinatensystem-Objekt des jeweils anderen Anzeigegeräts zu generieren. Mittels der Transformationsvorschrift bzw. der Transformationsmatrix können die relative Position und Drehung des Koordinatensystems eines Anzeigegeräts in der augmentierten Szenerie des jeweils anderen Anzeigegeräts berechnet werden. Aus der so bestimmten relativen Position und Drehung kann wiederum ein entsprechendes Koordinatensystem-Objekt generiert werden. Dies erlaubt es, darzustellende virtuelle Objekte eines Anzeigegeräts als Kind-Objekte im Koordinatensystem-Objekt im jeweils anderen Anzeigegerät zu platzieren. Objekte in der augmentierten Szenerie eines Anzeigegeräts können so direkt in der augmentierten Szenerie des anderen Anzeigegeräts präsentiert werden, ohne dass eine zusätzliche Konversion der Koordinaten erforderlich ist.
-
Gemäß einem Aspekt der Erfindung wird ein generiertes Koordinatensystem-Objekt an zumindest ein weiteres Anzeigegerät für virtuelle Objekte übermittelt. Die beschriebene Lösung kann auch für mehr als zwei beteiligte Anzeigegeräte genutzt werden. Durch die Übermittlung von Koordinatensystem-Objekten können die Anzeigegeräte in die Lage versetzt werden, Objekte in der augmentierten Szenerie weiterer Anzeigegerät zu präsentieren.
-
Besonders vorteilhaft wird ein erfindungsgemäßes Verfahren oder eine erfindungsgemäße Vorrichtung in einem Anzeigegerät für virtuelle Objekte eingesetzt, beispielsweise in einer Datenbrille, in einem Smartphone, in einem Tablet oder in einem Projektor.
-
Weitere Merkmale der vorliegenden Erfindung werden aus der nachfolgenden Beschreibung und den angehängten Ansprüchen in Verbindung mit den Figuren ersichtlich.
- 1 zeigt schematisch eine Datenbrille als Beispiel für ein Anzeigegerät für virtuelle Objekte;
- 2 zeigt schematisch ein Verfahren zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten aus Sicht eines bereits eingemessenen Anzeigegeräts;
- 3 zeigt eine erste Ausführungsform einer Vorrichtung zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten, die in einem bereits eingemessenen Anzeigegerät verwendet werden kann;
- 4 zeigt eine zweite Ausführungsform einer Vorrichtung zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten, die in einem bereits eingemessenen Anzeigegerät verwendet werden kann;
- 5 zeigt schematisch ein Verfahren zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten aus Sicht eines einzumessenden Anzeigegeräts;
- 6 zeigt eine erste Ausführungsform einer Vorrichtung zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten, die in einem einzumessenden Anzeigegerät verwendet werden kann;
- 7 zeigt eine zweite Ausführungsform einer Vorrichtung zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten, die in einem einzumessenden Anzeigegerät verwendet werden kann;
- 8 stellt schematisch eine Kalibrierungsphase dar;
- 9 veranschaulicht die Verwendung von Koordinatensystem-Objekten;
- 10 zeigt schematisch die Anzeige eines virtuellen Modells eines Anzeigegeräts als Sollposition; und
- 11 zeigt schematisch zwei aus der Kalibrierungsphase resultierende Punktwolken für die Berechnung einer Transformationsmatrix.
-
Zum besseren Verständnis der Prinzipien der vorliegenden Erfindung werden nachfolgend Ausführungsformen der Erfindung anhand der Figuren detaillierter erläutert. Es versteht sich, dass sich die Erfindung nicht auf diese Ausführungsformen beschränkt und dass die beschriebenen Merkmale auch kombiniert oder modifiziert werden können, ohne den Schutzbereich der Erfindung zu verlassen, wie er in den angehängten Ansprüchen definiert ist.
-
1 zeigt schematisch eine Datenbrille 1 als Beispiel für ein Anzeigegerät für virtuelle Objekte. Die Datenbrille 1 hat eine Kamera 2 zum Erfassen von Umgebungsdaten einer Umgebung der Datenbrille 1. Mittels einer Posenbestimmungsvorrichtung 3 kann anhand der Umgebungsdaten eine Pose der Datenbrille 1 bestimmt werden. Die Posenbestimmungsvorrichtung 3 kann dazu beispielsweise Kanten oder markante Punkte in den Bilddaten detektieren und auswerten. Mittels einer Grafikeinheit 4 kann die Anzeige der Datenbrille 1 entsprechend der ermittelten Pose angepasst werden. Dazu können die Posenbestimmungsvorrichtung 3 und die Grafikeinheit 4 miteinander Daten austauschen. Die von der Grafikeinheit 4 generierte Anzeige wird durch eine Projektionseinheit 5 eingeblendet. Im Beispiel in 1 wird ein monokulares Display genutzt, d.h. nur vor einem Auge des Nutzers ist ein Display angeordnet. Die vorliegend beschriebene Lösung kann selbstverständlich auch mit einer Datenbrille 1 mit einem binokularen Display, bei dem pro Auge ein Display genutzt wird, oder mit einem binokularen Display, bei dem für beide Augen ein gemeinsames Display genutzt wird, realisiert werden.
-
2 zeigt schematisch ein Verfahren zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten aus Sicht eines bereits eingemessenen ersten Anzeigegeräts. Bei dem Verfahren werden durch das erste Anzeigegerät Sollpositionen für ein zweites Anzeigegerät vorgegeben 10, die z.B. in Form von virtuellen Registrierungsobjekten durch das erste Anzeigegerät dargestellt werden. Ein solches virtuelles Registrierungsobjekt kann insbesondere ein virtuelles Modell des zweiten Anzeigegeräts sein. Wenn sich das zweite Anzeigegerät aus Sicht des ersten Anzeigegeräts jeweils in einer Sollposition befindet, werden durch das erste Anzeigegerät Informationen des zweiten Anzeigegeräts in Bezug auf die Sollpositionen empfangen 11. Das zweite Anzeigegerät befindet sich aus Sicht des ersten Anzeigegeräts insbesondere dann in einer Sollposition, wenn es sich in Übereinstimmung mit einem virtuellen Registrierungsobjekt befindet. Vorzugsweise wird das zweite Anzeigegerät dabei in einer vorgegebenen Reihenfolge in die Sollpositionen gebracht. Auf Basis der Sollpositionen und der empfangenen Informationen bestimmt 12 das erste Anzeigegerät dann eine Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts. Bei den Informationen in Bezug auf die Sollpositionen handelt es sich zu diesem Zweck vorzugsweise um Koordinaten der Position des zweiten Anzeigegeräts im Koordinatensystem des zweiten Anzeigegeräts. Beim Bestimmen 12 der Transformationsvorschrift können dann zusätzlich die Koordinaten der Sollpositionen im Koordinatensystem des ersten Anzeigegeräts genutzt werden. Die Transformationsvorschrift kann vom ersten Anzeigegerät verwendet werden, um ein Koordinatensystem-Objekt des zweiten Anzeigegeräts zu generieren.
-
3 zeigt eine vereinfachte schematische Darstellung einer ersten Ausführungsform 30 zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten, die in einem bereits eingemessenen ersten Anzeigegerät verwendet werden kann. Die Vorrichtung 30 hat einen Positionsgenerator 32 zum Vorgeben von Sollpositionen Pi für ein zweites Anzeigegerät B, die z.B. in Form von virtuellen Registrierungsobjekten durch das erste Anzeigegerät dargestellt werden können. Ein solches virtuelles Registrierungsobjekt kann insbesondere ein virtuelles Modell des zweiten Anzeigegeräts B sein. Über eine Schnittstelle 31 können, wenn sich das zweite Anzeigegerät B aus Sicht des ersten Anzeigegeräts jeweils in einer Sollposition Pi befindet, Informationen Ri des zweiten Anzeigegeräts B in Bezug auf die Sollpositionen Pi empfangen werden. Das zweite Anzeigegerät B befindet sich aus Sicht des ersten Anzeigegeräts insbesondere dann in einer Sollposition Pi, wenn es sich in Übereinstimmung mit einem virtuellen Registrierungsobjekt befindet. Vorzugsweise wird das zweite Anzeigegerät B dabei in einer vorgegebenen Reihenfolge in die Sollpositionen Pi gebracht. Ein Rechenmodul 33 kann dann eine Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts B auf Basis der Sollpositionen Pi und der Informationen Ri bestimmen. Bei den Informationen Ri in Bezug auf die Sollpositionen Pi handelt es sich zu diesem Zweck vorzugsweise um Koordinaten KBi der Position des zweiten Anzeigegeräts B im Koordinatensystem des zweiten Anzeigegeräts B. Beim Bestimmen der Transformationsvorschrift können dann zusätzlich die Koordinaten KAi der Sollpositionen im Koordinatensystem des ersten Anzeigegeräts genutzt werden. Die Transformationsvorschrift kann durch die Vorrichtung 30 genutzt werden oder über die Schnittstelle 31 zur weiteren Verwendung bereitgestellt werden, z.B. um ein Koordinatensystem-Objekt des zweiten Anzeigegeräts B zu generieren.
-
Der Positionsgenerator 32 und das Rechenmodul 33 können von einem Kontrollmodul 34 gesteuert werden. Über eine Benutzerschnittstelle 36 können gegebenenfalls Einstellungen des Positionsgenerators 32, des Rechenmoduls 33 oder des Kontrollmoduls 34 geändert werden. Die in der Vorrichtung 30 anfallenden Daten können bei Bedarf in einem Speicher 35 der Vorrichtung 30 abgelegt werden, beispielsweise für eine spätere Auswertung oder für eine Nutzung durch die Komponenten der Vorrichtung 30. Der Positionsgenerator 32, das Rechenmodul 33 sowie das Kontrollmodul 34 können als dedizierte Hardware realisiert sein, beispielsweise als integrierte Schaltungen. Natürlich können sie aber auch teilweise oder vollständig kombiniert oder als Software implementiert werden, die auf einem geeigneten Prozessor läuft, beispielsweise auf einer GPU oder einer CPU. Die Schnittstelle 31 kann auch getrennt in einen Eingang und einen Ausgang implementiert sein.
-
4 zeigt eine vereinfachte schematische Darstellung einer zweiten Ausführungsform einer Vorrichtung 40 zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten, die in einem bereits eingemessenen ersten Anzeigegerät verwendet werden kann. Die Vorrichtung 40 weist einen Prozessor 42 und einen Speicher 41 auf. Beispielsweise handelt es sich bei der Vorrichtung 40 um einen Computer oder eine andere prozessorbasierte Datenverarbeitungsvorrichtung. Im Speicher 41 sind Instruktionen abgelegt, die die Vorrichtung 40 bei Ausführung durch den Prozessor 42 veranlassen, die Schritte gemäß einem der beschriebenen Verfahren auszuführen. Die im Speicher 41 abgelegten Instruktionen verkörpern somit ein durch den Prozessor 42 ausführbares Programm, welches das erfindungsgemäße Verfahren realisiert. Die Vorrichtung 40 hat einen Eingang 43 zum Empfangen von Informationen. Vom Prozessor 42 generierte Daten werden über einen Ausgang 44 bereitgestellt. Darüber hinaus können sie im Speicher 41 abgelegt werden. Der Eingang 43 und der Ausgang 44 können zu einer bidirektionalen Schnittstelle zusammengefasst sein.
-
Der Prozessor 42 kann eine oder mehrere Prozessoreinheiten umfassen, beispielsweise Mikroprozessoren, digitale Signalprozessoren oder Kombinationen daraus.
-
Die Speicher 35, 41 der beschriebenen Ausführungsformen können sowohl volatile als auch nichtvolatile Speicherbereiche aufweisen und unterschiedlichste Speichergeräte und Speichermedien umfassen, beispielsweise Festplatten, optische Speichermedien oder Halbleiterspeicher.
-
5 zeigt schematisch ein Verfahren zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten aus Sicht eines einzumessenden zweiten Anzeigegeräts. Bei der Verfahren werden durch das zweite Anzeigegerät Sollpositionen empfangen 20, die durch ein erstes Anzeigegerät vorgegebenen werden und z.B. in Form von virtuellen Registrierungsobjekten durch das erste Anzeigegerät dargestellt werden. Ein solches virtuelles Registrierungsobjekt kann insbesondere ein virtuelles Modell des zweiten Anzeigegeräts sein. Wenn sich das zweite Anzeigegerät aus Sicht des ersten Anzeigegeräts jeweils in einer Sollposition befindet, werden durch das zweite Anzeigegerät Informationen in Bezug auf die Sollpositionen bestimmt 21. Das zweite Anzeigegerät befindet sich aus Sicht des ersten Anzeigegeräts insbesondere dann in einer Sollposition, wenn es sich in Übereinstimmung mit einem virtuellen Registrierungsobjekt befindet. Vorzugsweise wird das zweite Anzeigegerät dabei in einer vorgegebenen Reihenfolge in die Sollpositionen gebracht. Auf Basis der Sollpositionen und der bestimmten Informationen bestimmt 22 das zweite Anzeigegerät dann eine Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts und einem Koordinatensystem des zweiten Anzeigegeräts. Bei den Informationen in Bezug auf die Sollpositionen handelt es sich zu diesem Zweck vorzugsweise um Koordinaten der Position des zweiten Anzeigegeräts im Koordinatensystem des zweiten Anzeigegeräts. Beim Bestimmen 22 der Transformationsvorschrift können dann zusätzlich die Koordinaten der Sollpositionen im Koordinatensystem des ersten Anzeigegeräts genutzt werden. Die Transformationsvorschrift kann vom zweiten Anzeigegerät verwendet werden, um ein Koordinatensystem-Objekt des ersten Anzeigegeräts zu generieren.
-
6 zeigt eine vereinfachte schematische Darstellung einer ersten Ausführungsform einer Vorrichtung 50 zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten, die in einem einzumessenden zweiten Anzeigegerät verwendet werden kann. Die Vorrichtung 50 hat eine Schnittstelle 51, über die Sollpositionen Pi empfangen werden können. Die Sollpositionen Pi werden dabei von einem ersten Anzeigegerät A vorgegeben und von diesem z.B. in Form von virtuellen Registrierungsobjekten dargestellt. Ein solches virtuelles Registrierungsobjekt kann insbesondere ein virtuelles Modell des zweiten Anzeigegeräts sein. Ein Positionsbestimmungsmodul 52 ist dazu eingerichtet, Informationen Ri in Bezug auf die Sollpositionen Pi zu bestimmen, wenn sich das zweite Anzeigegerät aus Sicht des ersten Anzeigegeräts A jeweils in einer Sollposition Pi befindet. Das zweite Anzeigegerät befindet sich aus Sicht des ersten Anzeigegeräts A insbesondere dann in einer Sollposition Pi, wenn es sich in Übereinstimmung mit einem virtuellen Registrierungsobjekt befindet. Vorzugsweise wird das zweite Anzeigegerät dabei in einer vorgegebenen Reihenfolge in die Sollpositionen Pi gebracht. Ein Rechenmodul 53 kann dann eine Transformationsvorschrift zwischen einem Koordinatensystem des ersten Anzeigegeräts A und einem Koordinatensystem des zweiten Anzeigegeräts auf Basis der Sollpositionen Pi und der bestimmten Informationen Ri bestimmen. Bei den Informationen Ri in Bezug auf die Sollpositionen Pi handelt es sich zu diesem Zweck vorzugsweise um Koordinaten KBi der Position des zweiten Anzeigegeräts im Koordinatensystem des zweiten Anzeigegeräts. Beim Bestimmen der Transformationsvorschrift können dann zusätzlich die Koordinaten KAi der Sollpositionen im Koordinatensystem des ersten Anzeigegeräts A genutzt werden. Die Transformationsvorschrift kann durch die Vorrichtung 50 genutzt werden oder über die Schnittstelle 51 zur weiteren Verwendung bereitgestellt werden, z.B. um ein Koordinatensystem-Objekt des ersten Anzeigegeräts A zu generieren.
-
Das Positionsbestimmungsmodul 52 und das Rechenmodul 53 können von einem Kontrollmodul 54 gesteuert werden. Über eine Benutzerschnittstelle 56 können gegebenenfalls Einstellungen des Positionsbestimmungsmoduls 52, des Rechenmoduls 53 oder des Kontrollmoduls 54 geändert werden. Die in der Vorrichtung 50 anfallenden Daten können bei Bedarf in einem Speicher 55 der Vorrichtung 50 abgelegt werden, beispielsweise für eine spätere Auswertung oder für eine Nutzung durch die Komponenten der Vorrichtung 50. Das Positionsbestimmungsmodul 52, das Rechenmodul 53 sowie das Kontrollmodul 54 können als dedizierte Hardware realisiert sein, beispielsweise als integrierte Schaltungen. Natürlich können sie aber auch teilweise oder vollständig kombiniert oder als Software implementiert werden, die auf einem geeigneten Prozessor läuft, beispielsweise auf einer GPU oder einer CPU. Die Schnittstelle 51 kann auch getrennt in einen Eingang und einen Ausgang implementiert sein.
-
7 zeigt eine vereinfachte schematische Darstellung einer zweiten Ausführungsform einer Vorrichtung 60 zum Registrieren von Koordinatensystemen von zumindest zwei Anzeigegeräten, die in einem einzumessenden zweiten Anzeigegerät verwendet werden kann. Die Vorrichtung 60 weist einen Prozessor 62 und einen Speicher 61 auf. Beispielsweise handelt es sich bei der Vorrichtung 60 um einen Computer oder eine andere prozessorbasierte Datenverarbeitungsvorrichtung. Im Speicher 61 sind Instruktionen abgelegt, die die Vorrichtung 60 bei Ausführung durch den Prozessor 62 veranlassen, die Schritte gemäß einem der beschriebenen Verfahren auszuführen. Die im Speicher 61 abgelegten Instruktionen verkörpern somit ein durch den Prozessor 62 ausführbares Programm, welches das erfindungsgemäße Verfahren realisiert. Die Vorrichtung 60 hat einen Eingang 63 zum Empfangen von Informationen. Vom Prozessor 62 generierte Daten werden über einen Ausgang 64 bereitgestellt. Darüber hinaus können sie im Speicher 61 abgelegt werden. Der Eingang 63 und der Ausgang 64 können zu einer bidirektionalen Schnittstelle zusammengefasst sein.
-
Der Prozessor 62 kann eine oder mehrere Prozessoreinheiten umfassen, beispielsweise Mikroprozessoren, digitale Signalprozessoren oder Kombinationen daraus.
-
Die Speicher 55, 61 der beschriebenen Ausführungsformen können sowohl volatile als auch nichtvolatile Speicherbereiche aufweisen und unterschiedlichste Speichergeräte und Speichermedien umfassen, beispielsweise Festplatten, optische Speichermedien oder Halbleiterspeicher.
-
8 stellt schematisch eine Kalibrierungsphase dar. Ein Nutzer 6 mit einem bereits kalibrierten ersten Anzeigegerät A, in diesem Beispiel einer Datenbrille, hält ein zu kalibrierendes zweites Anzeigegerät B in seiner Hand, in diesem Beispiel ein Smartphone. Die beiden Anzeigegeräte A, B sollen in einem gemeinsamen virtuellen Szenario verwendet werden. Sie sind über ein lokales Netzwerk oder das Internet miteinander verbunden. Für das Registrieren der Koordinatensysteme der beiden Anzeigegeräte A, B werden vom ersten Anzeigegerät A mindestens vier Sollpositionen Pi für das zweite Anzeigegerät B vorgegeben. In 8 geschieht dies in Form von virtuellen Registrierungsobjekten Mi, z.B. virtuellen 3D-Modellen des zweiten Anzeigegeräts B, die vom ersten Anzeigegerät A in dessen augmentierten Szenario dargestellt werden. Der Nutzer 6 hält das zweite Anzeigegerät B in seiner Hand und bringt es, vorzugsweise in einer vorgegebenen Reihenfolge, in Übereinstimmung mit den Sollpositionen Pi. Wenn sich das zweite Anzeigegerät B in Übereinstimmung mit einer Sollposition Pi befindet, sendet es seine zugehörigen Koordinaten an das erste Anzeigegerät A. Zudem erhält es vom ersten Anzeigegerät A die Koordinaten der Sollpositionen Pi. Nachdem alle Sollpositionen Pi abgearbeitet wurden, liegen in beiden Anzeigegeräten A, B jeweils zwei Sätze von Koordinaten für die Sollpositionen Pi vor. Aus diesen Koordinaten kann dann eine Transformationsmatrix für die Konversion der Koordinatensysteme berechnet werden.
-
Unter Verwendung der Transformationsmatrix können die Position und Drehung des Koordinatensystems des zweiten Anzeigegeräts B in der Szenerie des ersten Anzeigegeräts A bestimmt werden. Diese können wiederum verwendet werden, um ein Koordinatensystem-Objekt CAb für das Koordinatensystem des zweiten Anzeigegeräts B in der Szenerie des ersten Anzeigegeräts A zu erzeugen.
-
Ebenso können unter Verwendung der Transformationsmatrix die Position und Drehung des Koordinatensystems des ersten Anzeigegeräts A in der Szenerie des zweiten Anzeigegeräts B bestimmt werden. Diese können wiederum verwendet werden, um ein Koordinatensystem-Objekt CBa für das Koordinatensystem des ersten Anzeigegeräts A in der Szenerie des zweiten Anzeigegeräts B zu erzeugen.
-
Darzustellende virtuelle Objekte in Bezug auf das erste Anzeigegerät A können als Kind-Objekte im Koordinatensystem-Objekt CBa platziert werden. Objekte in der augmentierten Szenerie des ersten Anzeigegeräts A können so direkt in der augmentierten Szenerie des zweiten Anzeigegeräts B präsentiert werden, ohne dass eine zusätzliche Konversion der Koordinaten erforderlich ist. Dies kann beispielsweise unter Verwendung des aus der Laufzeit- und Entwicklungsumgebung „Unity“ des Unternehmens Unity Technologies bekannten „Object Parenting“ oder eines ähnlichen Ansatzes erfolgen.
-
Die beschriebene Lösung ist auch für mehr als zwei beteiligte Anzeigegeräte anwendbar. Mit der Datenbrille, d.h. dem ersten Anzeigegerät A, werden dazu die Koordinatensätze für die Anzeigegeräte B und C verarbeitet. Dem ersten Anzeigegerät A liegen daraufhin CAb und CAc vor. In diesem Fall bestimmen die Anzeigegeräte B und C aber nicht nur CBa und CCa, sondern auch CAb und CAc und teilen diese. Alternativ können CAb und CAc auch vom ersten Anzeigegerät A bereitgestellt werden.
-
9 veranschaulicht, wie in der Szenerie vom zweiten Anzeigegerät B nach der Erzeugung von CBa das Koordinatensystem-Objekt CAc als Kind-Objekt im CBa platziert wird. In der Szenerie vom zweiten Anzeigegerät B können dann alle Objekte in Bezug auf das weitere Anzeigegerät C als Kind-Objekt Oc im Koordinatensystem-Objekt CAc platziert werden. Entsprechendes wird für das weitere Anzeigegerät C vorgegangen.
-
10 zeigt schematisch die Anzeige eines virtuellen Modells eines Anzeigegeräts B als Sollposition. Zu sehen ist das das virtuelle Modell des zweiten Anzeigegeräts B als virtuelles Registrierungsobjekt Mi in einer vom ersten Anzeigegerät dargestellten augmentierten Szenerie. Ebenfalls zu sehen ist das reale zweite Anzeigegerät B, das vom Nutzer 6 in Übereinstimmung mit dem virtuellen Modell gebracht werden soll. Dies gelingt besonders leicht, wenn es sich beim bereits eingemessenen ersten Anzeigegerät um eine Datenbrille handelt, da der Nutzer 6 in diesem Fall beide Hände frei hat.
-
11 zeigt schematisch zwei aus der Kalibrierungsphase resultierende Punktwolken PWi für die Berechnung einer Transformationsmatrix. Die Punktwolken umfassen die physisch gleichen Punkte, aber der Ursprung der Koordinatensysteme und somit die Koordinaten der Punkte sind unterschiedlich. Im Rahmen einer Punktwolkenregistrierung kann nun anhand einer Ausrichtung der beiden Punktwolken PWi eine räumliche Transformation, z.B. Skalierung, Rotation und Translation, bestimmt. Dabei werden 3D-3D-Korrespondenzen bestimmt, Dazu kann beispielsweise die Methodik der direkten linearen Transformation (DLT) verwendet werden. Sofern mindestens vier 3D-Punkte je Punktwolke PWi vorliegen, kann eine Transformationsmatrix für die Transformation zwischen den Koordinatensystemen berechnet werden.
-
Bezugszeichenliste
-
- 1
- Datenbrille
- 2
- Kamera
- 3
- Posenbestimmungsvorrichtung
- 4
- Grafikeinheit
- 5
- Projektionseinheit
- 6
- Nutzer
- 10
- Vorgeben von Sollpositionen
- 11
- Empfangen von Informationen in Bezug auf die Sollpositionen
- 12
- Bestimmen einer Transformationsvorschrift
- 20
- Empfangen von Sollpositionen
- 21
- Bestimmen von Informationen in Bezug auf die Sollpositionen
- 22
- Bestimmen einer Transformationsvorschrift
- 30
- Vorrichtung
- 31
- Schnittstelle
- 32
- Positionsgenerator
- 33
- Rechenmodul
- 34
- Kontrollmodul
- 35
- Speicher
- 36
- Benutzerschnittstelle
- 40
- Vorrichtung
- 41
- Speicher
- 42
- Prozessor
- 43
- Eingang
- 44
- Ausgang
- 50
- Vorrichtung
- 51
- Schnittstelle
- 52
- Positionsbestimmungsmodul
- 53
- Rechenmodul
- 54
- Kontrollmodul
- 55
- Speicher
- 56
- Benutzerschnittstelle
- 60
- Vorrichtung
- 61
- Speicher
- 62
- Prozessor
- 63
- Eingang
- 64
- Ausgang
- A
- Erstes Anzeigegerät
- B
- Zweites Anzeigegerät
- C
- Weiteres Anzeigegerät
- KAi
- Koordinaten der Sollpositionen
- KBi
- Koordinaten der Positionen des zweiten Anzeigegeräts
- Mi
- Virtuelles Registrierungsobjekt
- Pi
- Sollposition
- PWi
- Punktwolke
- Ri
- Information in Bezug auf Sollposition