MR-Systeme können mehrere Kameras verwenden, die Bilder müssen jedoch beim Rendern ausgerichtet werden. Allerdings ist die Bildausrichtung ein herausforderndes Problem. Daher hat Microsoft in einer Patentanmeldung mit dem Titel „Method for Image Alignment Using Corner and Line Features“ eine Lösung vorgeschlagen
Natürlich gibt es in der Branche bereits Methoden zur Nutzung von Winkelmerkmalen zur Bildausrichtung. Das Identifizieren von Ecken in einem Bild und das Ausrichten des Bildes anhand der identifizierten Ecken ist jedoch ein zeitaufwändiger und rechenintensiver Vorgang.
Was Microsoft vorschlägt, ist eine effektivere Verbesserungstechnologie, mit der eine bessere Funktionsanpassung erreicht werden kann. Die Erfindung führt hauptsächlich eine Hybridmethode ein, die Eckmerkmale und Linienmerkmale verwendet, um eine visuelle Ausrichtung durchzuführen. Diese Lösung führt dazu, dass beim Ausrichtungsprozess weniger Einschränkungen erforderlich sind, wodurch die Recheneffizienz und der Merkmalsabgleich verbessert werden.
Abbildung 11 zeigt eine Beispielumgebung 1100, in der ein Benutzer eine am Kopf montierte Kamera 1105 und eine externe Kamera 1110 verwendet. Wie bereits erwähnt, müssen die von diesen beiden Kameras generierten Bildinhalte aufeinander abgestimmt werden. Bei der Umgebung 1100 kann es sich jedoch um eine Umgebung mit wenig Licht oder um eine Umgebung mit geringem Kontrast im Hinblick auf den Wärmegradienten oder den Kontrast handeln.
Nachdem das Objekt spät in der Nacht abgekühlt ist, kann der Temperaturgradient der Umgebung normalerweise gleichmäßig sein. In diesem Fall kann das Temperaturprofil oder der Temperaturgradient der Umgebung unter einem bestimmten isothermen Schwellenwert 1115 liegen. In diesem Fall versagen herkömmliche Techniken zum Ausrichten von Inhalten möglicherweise. Die von Microsoft beschriebene Ausführungsform bietet eine Lösung für solche Szenarien.
Abbildung 12 zeigt einen beispielhaften Eckenerkennungsprozess 1200, der zum Ausrichten von Bildern verwendet werden kann. Abbildung 12 zeigt ein erstes Bild 1205, das von der am Kopf montierten Kamera 1105 aus Abbildung 11 erzeugt wurde, und ein zweites Bild 1210, das von der externen Kamera 1110 erzeugt wurde.
Führen Sie Eckenerkennungsvorgänge durch, um die im Bild vorhandenen „Ecken“ zu identifizieren. Beispielsweise können Ausführungsformen verwendet werden, um Eckmerkmale im ersten Bild zu identifizieren. Mit anderen Worten: Es ist möglich, eine Reihe von Pixeln in einem Bild zu identifizieren, die einem Winkel
entsprechenEine „Ecke“ bezieht sich auf ein Pixel oder Pixel mit ungleichmäßiger Intensität, bei dem ein erster Block benachbarter Pixel horizontal in Bezug auf das eine oder die mehreren Pixel positioniert ist und ein dritter Block von Pixeln vertikal in Bezug auf das eine oder die mehreren Pixel positioniert ist . Zwei benachbarte Pixelblöcke. Mit anderen Worten: Eine Ecke ist als eine Menge von einem oder mehreren Pixeln definiert, die sich von benachbarten Ecken in X- und Y-Richtung relativ zur Pixelmenge abheben.
Identifizieren Sie die Eckmerkmale 1215 im ersten Bild 1205 und identifizieren Sie auch die Eckmerkmale im zweiten Bild 1210. Daher wurde das Eckmerkmal 1225 erfolgreich identifiziert. Es ist zu beachten, dass das Winkelmerkmal 1225 dem Winkelmerkmal 1215
entsprichtUm Bildinhalte auszurichten, hat diese Ausführungsform die Aufgabe, einen Schwellenwert von 1230 Ecken zu identifizieren. Die Schwellenanzahlen der Ecken müssen einander entsprechen. Mit anderen Worten: Mehrere im ersten Bild 1205 identifizierte Ecken müssen identifiziert werden und müssen mehreren im zweiten Bild 1210 identifizierten Ecken entsprechen
Wenn diese Schwellenwerte erfüllt sind, können Ausführungsformen einen Bildausrichtungsvorgang durchführen, um ein Überlagerungsbild 1235 zu erzeugen, bei dem es sich um ein Bild handelt, in dem Inhalte aus dem zweiten Bild 1210 ausgerichtet und dann mit dem entsprechenden Inhalt aus dem ersten Bild 1205 überlagert werden.
Die Eckenerkennung und -ausrichtung ist ein rechenintensiver Vorgang. Wenn die Übereinstimmung zwischen den erkannten Ecken und dem Bild nicht gut genug ist, kann der gesamte Vorgang fehlschlagen. Beispielsweise erfordert die Methode, die nur Eckpunkte verwendet, die Identifizierung von mindestens fünf Eckpunkten aus einem Bild und deren anschließende Zuordnung zu den entsprechenden Eckpunkten im zweiten Bild. Bei geringem Kontrast kann selbst die Identifizierung von 5 entsprechenden Eckpunkten eine Herausforderung sein
Nachdem eine ausreichende Anzahl von Ecken identifiziert wurde, verwendet die Ausführungsform dann ein Bewegungsmodell, um 3D-Rotationen zu identifizieren, um den Bildinhalt vom ersten oder zweiten Bild an das andere anzupassen, indem verschiedene Drehungen und Transformationen durchgeführt werden, um die 5 Ecken aneinander auszurichten Bild. Die Durchführung einer solchen Ausrichtung ist rechenintensiv.
Deshalb müssen wir die Einschränkungen reduzieren, die bestehen, wenn nur Winkelmethoden verwendet werden. Abbildung 13 zeigt eine solche Technik.
Der Prozess der Eckpunkt- und Linienpunkterkennung 1300 ist in Abbildung 13 dargestellt. Dieser Prozess umfasst eine Kombination aus dem Eckpunkterkennungsvorgang 1200 und dem Linienpunkterkennungsvorgang in Abbildung 12. Es ist zu beachten, dass der Eckenerkennungsvorgang und der Linienerkennungsvorgang gleichzeitig ausgeführt werden
Normalerweise ist es einfacher, die entsprechenden „Linien“ im Bild zu identifizieren als die Ecken, daher ist der Linienerkennungsprozess normalerweise schneller als der Eckenerkennungsprozess. Da beide Prozesse parallel ablaufen können und der Linienerkennungsprozess schneller ist, hat das Hinzufügen des Linienerkennungsprozesses keinen negativen Einfluss auf die Geschwindigkeit des gesamten Ausrichtungsprozesses
Durch die Verwendung von Linien zum Ausrichten von Bildern können beim Ausrichtungsprozess weniger Ecken verwendet werden, was zu gelockerten Einschränkungen und einer allgemein einfacheren Ausrichtung führt. Besonders bei niedrigen Temperaturen ist die Notwendigkeit der Verwendung weniger Ecken sehr vorteilhaft, da es schwierig sein kann, Ecken zu finden und anzupassen
Eine „Linie“ ist definiert als eine Gruppe von einem oder mehreren Pixeln, die eine gleichmäßige Intensität relativ zum horizontal positionierten ersten benachbarten Pixelblock des oder der Pixelsätze haben und eine gleichmäßige Intensität relativ zum Satz von einem oder mehreren Pixeln haben mehr Pixel Die ungleichmäßige Intensität des vertikal positionierten zweiten Pixelblocks in der Nähe. Alternativ haben sie eine ungleichmäßige Intensität in Bezug auf einen horizontal positionierten ersten benachbarten Pixelblock aus einem oder mehreren Pixelsätzen und eine gleichmäßige Intensität in Bezug auf einen vertikal positionierten zweiten benachbarten Pixelblock in Bezug auf einen oder mehrere Pixelsätze
In Abbildung 13 sind ein erstes Bild 1305 und ein zweites Bild 1310 dargestellt, die das Bild in Abbildung 12 darstellen. Abbildung 13 zeigt auch eine Implementierungsmethode, die Eckmerkmale 1315 im ersten Bild 1305
erkennen kannBei der Erkennung von Eckmerkmalen im ersten Bild 1305 werden gleichzeitig auch Linienmerkmale erkannt, wie in den Linienmerkmalen 1320 und 1325 gezeigt. Im Allgemeinen können wir mehr Linien erkennen, als Ecken erkannt werden können
Führen Sie Winkel- und Linienoperationen am zweiten Bild 1310 durch. Zur Veranschaulichung identifiziert die Ausführungsform Eckmerkmale 1330. Parallel zum Eckenerkennungsvorgang erkennen Ausführungsformen gleichzeitig Linien im zweiten Bild 1310, wie etwa Linienmerkmale 1335 und Linienmerkmale 1340.
Bitte beachten Sie, dass das Eckmerkmal 1330 dem Eckmerkmal 1315 entspricht; das Linienmerkmal 1335 dem Linienmerkmal 1320. Linienmerkmal 1340 entspricht Linienmerkmal 1325. Ausführungsformen können diese Korrespondenzen identifizieren und dann ein Bewegungsmodell generieren oder verwenden, das zum Ausrichten dieser Merkmalspunkte untereinander geeignet ist
Basierend auf dem Erfindungsprinzip haben wir den ersten Schwellenwert als 1345 definiert. Der erste Schwellenwert bezieht sich auf die Anzahl entsprechender Winkelmerkmale, die in den beiden Bildern identifiziert werden müssen, um sie auszurichten. Gleichzeitig definieren wir auch einen zweiten Schwellenwert von 1350. Der zweite Schwellenwert bezieht sich auf die Anzahl der entsprechenden Zeilenmerkmale, die in beiden Bildern identifiziert werden müssen, damit sie übereinstimmen
Die Erfüllung des ersten Schwellenwerts 1345 und des zweiten Schwellenwerts 1350 ermöglicht Ausführungsformen, Inhalte aus dem ersten Bild 1305 und dem zweiten Bild 1310 auszurichten, um ein Überlagerungsbild 1355 zu erzeugen. Es ist erwähnenswert, dass sich der Schwellenwert normalerweise auf die Gesamtzahl der Ecken und Linien bezieht, die erkannt werden müssen.
Nachdem Sie den Komfort und die Geschwindigkeit der Erkennung von Linienmerkmalen verstanden haben, fragen Sie sich möglicherweise, warum Ausführungsformen nur auf Linienerkennungsvorgängen basieren und die Durchführung von Eckenerkennungsvorgängen vermeiden. Der Grund dafür ist, dass das Erkennen von Linien in einem Bild zu Blendenproblemen führen kann.
Das Folgende ist der neu geschriebene Inhalt: Gemäß Abbildung 14 können wir das Aperturproblem erkennen, das heißt, die Aperturmehrdeutigkeit beträgt 1400. In Abbildung 14 ist das Liniensegment 1405 Teil einer gesamten Linie. Aperturmehrdeutigkeit 1400 bezieht sich auf die Tatsache, dass mehrere verschiedene Teile einer Linie sich möglicherweise (aber fälschlicherweise) auf das identifizierte Liniensegment 1405 beziehen
Zum Beispiel kann das Liniensegment 1410 ein Pixelblock sein, der mit dem Liniensegment 1405 übereinstimmt, obwohl es sich tatsächlich an der falschen Stelle oder Stelle befindet. In ähnlicher Weise kann das Liniensegment 1415 oder das Liniensegment 1420 Pixelblöcke enthalten, die Pixel im Liniensegment 1405 abbilden oder mit ihnen übereinstimmen können. Ein solches Szenario führt zu Unklarheiten im Ausrichtungsprozess.
Daher reicht es als Technologie nicht aus, sich auf den Leitungserkennungsprozess selbst zu verlassen. Mit anderen Worten: Durch die Verwendung von Kombinationen aus Linien und Winkeln können Ausführungsformen gelockerte Einschränkungen verwenden, wodurch die Recheneffizienz verbessert wird.
Ein Beispielprozessablauf 1500 ist in Abbildung 15 dargestellt. Zunächst wird eine Reihe von Bildern erfasst, beispielsweise ein Bild 1505 einer am Kopf montierten Kamera und ein Bild 1510 einer externen Kamera. Bei diesen Bildern kann es sich um Wärmebilder handeln. Der Temperaturgradient oder Kontrast 1520 im Bild kann unter einem bestimmten Kontrastschwellenwert 1525 liegen. Daher kann es ziemlich schwierig sein, eine ausreichende Anzahl von Ecken in einem Bild zu identifizieren. In diesem Fall kann ein Hybridansatz verwendet werden, um eine Kombination aus Ecken und Linien zu erkennen und so eine Ausrichtung zu erreichen
Übertragen Sie das Bild der Kopfkamera 1505 und das Bild der externen Kamera 1510 in den Winkeldetektor 1530 und den Zeilendetektor 1535. Diese beiden Detektoren laufen gleichzeitig und haben keine Abhängigkeiten voneinander
Bitte beachten Sie, dass der Liniendetektor 1535 bei der Erkennung von Linien im Allgemeinen schneller ist als der Eckdetektor 1530 bei der Erkennung von Winkeln. Mit anderen Worten: Die Verzögerungszeit des Zeilendetektors 1535 ist kürzer als die Verzögerungszeit des Eckdetektors 1530
Eckdetektor 1530 analysiert die beiden Bilder und identifiziert Eckpunkte 1545 in den Bildern. In ähnlicher Weise analysiert der Zeilendetektor 1535 die beiden Bilder und identifiziert die Zeilen 1550 in den Bildern. Die Ausführungsform führt dann die Ausrichtung 1555 durch, indem entsprechende Ecken und Linien innerhalb der beiden Bilder identifiziert werden.
Um die Ausrichtung durchzuführen, muss eine Schwellenwertanzahl an Linien und Ecken bestimmt werden. Der Übereinstimmungsschwellenwert ist relevanter als der Schwellenwert zur Identifizierung der Anzahl der Ecken oder Linien. Ausführungsformen fügen dann die identifizierten Ecken und Linien in ein 3D-Modell 1560 ein, beispielsweise ein Bewegungsmodell. Anschließend werden Modellanpassungsvorgänge 1565 am Modell 1560 durchgeführt, um ein Bild zu drehen, zu verschieben und/oder zu transformieren, um entsprechende Ecken und Linien im anderen Bild anzupassen oder auszurichten.
Mit anderen Worten: Bei der Durchführung eines Neuprojektionsvorgangs verwendet die Ausführungsform die identifizierten Ecken und Linien, um den Inhalt eines Bildes mit dem Inhalt eines anderen Bildes auszurichten
Verwandte Patente: Microsoft-Patent |. Bildausrichtung mithilfe von Eck- und Linienfunktionen
Die Microsoft-Patentanmeldung mit dem Titel „Bildausrichtung mithilfe von Eck- und Linienmerkmalen“ wurde ursprünglich im Februar 2022 eingereicht und kürzlich vom US-Patent- und Markenamt veröffentlicht.
Das obige ist der detaillierte Inhalt vonDas AR/VR-Patent von Microsoft schlägt die Verwendung von Winkel- und Linienfunktionen für die Bildausrichtung mehrerer Kameras vor. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!