-
Verwandte Anmeldungen
-
Diese Anmeldung beansprucht Priorität für die internationale Anmeldung Nr. PCT/US09/30068, eingereicht am 4. Januar 2009, die Priorität für die vorläufige US-Anmeldung Nr. 61/019 159, eingereicht am 4. Januar 2008, beanspruchte. Jede dieser Anmeldungen ist hiermit in ihrer Gesamtheit per Referenz eingebunden.
-
Fachgebiet der Erfindung
-
Diese Erfindung betrifft allgemein dreidimensionale Bildgebung und insbesondere die Optimierung der Berechnung eines globalen Kamerawegs, der in einer dreidimensionalen Rekonstruktion verwendet wird.
-
Hintergrund
-
In einem Verfahren zur dreidimensionalen Bildrekonstruktion wird eine Anzahl von Bildern oder Bildsätzen eines Objekts von einer Kamera erfasst, die auf einem Weg über die Oberfläche des Objekts fährt. Informationen aus diesem Informationskatalog können dann verwendet werden, um basierend auf dem Kameraweg und einzelnen dreidimensionalen Messungen, die entlang des Kamerawegs erfasst wurden, ein dreidimensionales Modell des Objekts zu rekonstruieren. Der Weg der Kamera kann sehr lang und komplex sein, was eine Bewegungsschätzung von Bild zu Bild bedingt, die entlang dessen Länge erhebliche Fehler akkumuliert. Diese Fehler können zu einer Vielfalt an Rekonstruktionsbildfehlern in einem sich ergebenden dreidimensionalen Modell führen, wie etwa doppelten Oberflächen, wenn der Kameraweg den gleichen Bereich mit einem Fehler in der Kameraposition zwischen den beiden Abtastungen zweimal abtastet.
-
Während es vielfältige Techniken zur Minimierung von Fehlern entlang eines gesamten Kamerawegs gibt, bleibt ein Bedarf an verbesserten globalen Wegoptimierungstechniken, die für die Verwendung mit datenintensiven Wegoptimierungen, die für die hochgenaue dreidimensionale Rekonstruktion typisch sind, geeignet sind.
-
Zusammenfassung
-
Die globale Wegoptimierung wird verwendet, um einen Kameraweg zu verfeinern, der verwendet wird, um ein dreidimensionales Bild eines Dentalobjekts zu rekonstruieren. Bei der Zahnabtastung mit Handgeräten können häufig räumliche Verbindungen zwischen nicht aufeinanderfolgenden Datenrahmen, wie etwa zwischen getrennten Kamerawegsegmenten für bukkale und linguale Zahnoberflächen, hergestellt werden, und diese räumlichen Verbindungen können verwendet werden, um Bewegungsschätzparameter in einem globalen Optimierungsverfahren zu minimieren.
-
Ein hier offenbartes Verfahren umfasst das Erfassen eines Datensatzes von einer Oberfläche eines Dentalobjekts mit einem Handabtastgerät aus jeder einer Folge bzw. Sequenz von Stellungen entlang eines Kamerawegs, wodurch eine Vielzahl bzw. Mehrzahl von Datensätzen bereitgestellt wird, das Verbinden jeder der Stellungen in der Stellungsfolge mit einer räumlichen Verbindung zu einer vorhergehenden Stellung einer ein nächsten Stellung, wodurch mehrere räumliche Verbindungen bereitgestellt werden; das Bestimmen wenigstens einer nicht sequentiellen räumlichen Verbindung zwischen zwei nicht sequentiellen der Stellungen; das Durchführen einer globalen Bewegungsoptimierung, um einen Fehler zwischen den mehreren räumlichen Verbindungen und der wenigstens einen nicht sequentiellen räumlichen Verbindung zu optimieren, wodurch optimierte Kamerastellungsdaten bereitgestellt werden; und das Rekonstruieren eines dreidimensionalen Modells des Dentalobjekts unter Verwendung der optimierten Kamerastellungsdaten und der Vielzahl bzw. Mehrzahl von Datensätzen.
-
Das Handabtastgerät kann eine Strukturlichtabtastvorrichtung bzw. ein Structured-Light-Scanner sein. Das Handabtastgerät kann eine Laufzeitabtastvorrichtung bzw. ein Time-of-Flight-Scanner sein. Das Handabtastgerät kann eine videobasierte Abtastvorrichtung sein.
-
Die Abfolge von Stellungen entlang des Kamerawegs kann unter Verwendung einer Hardware-basierten Positionierung bestimmt werden.
-
Die globale Bewegungsoptimierung kann das Erzeugen einer Konsistenz zwischen Bewegungsparametern zwischen den Stellungen unter Verwendung eines überbestimmten Systems von Bewegungsgleichungen umfassen.
-
Die Abfolge von Stellungen kann aufeinanderfolgende Schlüsselrahmenpaare bzw. Schlüsselframepaare bzw. Schlüsseleinzelbildpaare bzw. Keyframes umfassen, wobei ein oder mehrere zusätzliche Datensätze aus einer oder mehreren zusätzlichen Stellungen zwischen jedem aufeinanderfolgenden Schlüsselrahmenpaar erfasst werden können. Die Rekonstruktion des dreidimensionalen Modells kann das Hinzufügen dreidimensionaler Modelldaten basierend auf dem einen oder den mehreren zusätzlichen Datensätzen und den einen oder mehreren zusätzlichen Stellungen umfassen. Die aufeinanderfolgenden Schlüsselrahmenpaare können aus einem größeren Satz an Stellungen unter Verwendung einer Metrik zum Auswerten einer Qualität einer sich ergebenden dreidimensionalen Rekonstruktion ausgewählt werden. Die aufeinanderfolgenden Schlüsselrahmenpaare können unter Verwendung einer graphischen Analyse ausgewählt werden.
-
Die wenigstens eine nicht sequentielle räumliche Verbindung kann zwei aus der Folge von Stellungen verbinden, die um eine wesentlich größere Entfernung entlang des Kamerawegs als entlang der Oberfläche des Dentalobjekts getrennt sind.
-
Das dreidimensionale Modell des Dentalobjekts kann ein vollständiges Bogenmodell umfassen.
-
Das dreidimensionale Modell des Dentalobjekts kann eine kieferorthopädische Komponente umfassen.
-
Das Dentalobjekt kann Zahnfleisch und/oder Weichteile umfassen.
-
Das Bestimmen der wenigstens einen nicht sequentiellen räumlichen Verbindung kann das Bestimmen der wenigstens einen nicht sequentiellen räumlichen Verbindung basierend auf dem Datensatz für jede der zwei nicht sequentiellen Stellungen umfassen. Das Bestimmen der wenigstens einen nicht sequentiellen räumlichen Verbindung kann das Bestimmen der wenigstens einen nicht sequentiellen räumlichen Verbindung basierend auf einer Überlappung in den dreidimensionalen Daten umfassen, die aus dem Datensatz für jede der zwei nicht sequentiellen Stellungen rekonstruiert wird. Das Bestimmen der wenigstens einen nicht sequentiellen räumlichen Verbindung kann das Anzeigen eines Bereichs für einen oder mehrere Kandidatenverbindungen auf einer Benutzerschnittstelle und das Empfangen einer ergänzenden Abtastung des Bereichs umfassen.
-
Der Kameraweg kann einen virtuellen Kameraweg umfassen, der aus zwei oder mehr verschiedenen physischen Kamerawegen zusammengesetzt ist.
-
Die globale Bewegungsoptimierung kann einen Abgleich rekonstruierter dreidimensionaler Daten aus den Datensätzen in einem globalen Koordinatensystem optimieren. Die globale Bewegungsoptimierung kann die Konsistenz der Stellungsfolge entlang des Kamerawegs in einem globalen Koordinatensystem verbessern. Die globale Bewegungsoptimierung kann Fehler in Bewegungsschätzparametern, die als eine Funktion einer oder mehrerer Drehungen und/oder Translationen und/oder einer gekoppelten Drehung und Translation und/oder einer entkoppelten Drehung und Translation ausgedrückt werden, minimieren.
-
Ein hier offenbartes Computerprogrammprodukt führt die folgenden Schritte aus: Erfassen eines Datensatzes von einer Oberfläche eines Dentalobjekts mit einem Handabtastgerät aus jeder einer Abfolge von Stellungen entlang eines Kamerawegs, wodurch eine Vielzahl von Datensätzen bereitgestellt wird; Verbinden jeder der Stellungen in der Stellungsfolge mit einer räumlichen Verbindung zu einer vorhergehenden Stellung und einer nächsten Stellung, wodurch mehrere räumliche Verbindungen bereitgestellt werden; Bestimmen wenigstens einer nicht sequentiellen räumlichen Verbindung zwischen zwei nicht sequentiellen der Stellungen; Durchführen einer globalen Bewegungsoptimierung, um einen Fehler zwischen den mehreren räumlichen Verbindungen und der wenigstens einen nicht sequentiellen räumlichen Verbindung zu minimieren, wodurch optimierte Kamerastellungsdaten bereitgestellt werden; und Rekonstruieren eines dreidimensionalen Modells des Dentalobjekts unter Verwendung der optimierten Kamerastellungsdaten und der mehreren Datensätze.
-
Das Handabtastgerät kann eine Strukturlichtabtastvorrichtung sein. Das Handabtastgerät kann eine Laufzeitabtastvorrichtung sein. Das Handabtastgerät kann eine videobasierte Abtastvorrichtung sein.
-
Die globale Bewegungsoptimierung kann das Erzeugen der Konsistenz zwischen Bewegungsparametern zwischen den Stellungen unter Verwendung eines überbestimmten Systems von Bewegungsgleichungen umfassen.
-
Die Abfolge von Stellungen kann aufeinanderfolgende Schlüsselrahmenpaare umfassen, wobei ein oder mehrere zusätzliche Datensätze aus einer oder mehreren zusätzlichen Stellungen zwischen jedem aufeinanderfolgenden Schlüsselrahmenpaar erfasst werden können. Die Rekonstruktion des dreidimensionalen Modells kann das Hinzufügen dreidimensionaler Daten basierend auf dem einen oder den mehreren zusätzlichen Datensätzen und der einen oder den mehreren zusätzlichen Stellungen umfassen. Die aufeinanderfolgenden Schlüsselrahmenpaare können unter Verwendung einer Metrik zum Auswerten einer Qualität einer sich ergebenden dreidimensionalen Rekonstruktion aus einem größeren Satz an Stellungen ausgewählt werden. Die aufeinanderfolgenden Schlüsselrahmenpaare können unter Verwendung einer graphischen Analyse ausgewählt werden.
-
Die wenigstens eine nicht sequentielle räumliche Verbindung kann zwei der Stellungsfolgen verbinden, die um eine wesentlich größere Entfernung entlang des Kamerawegs als entlang der Oberfläche des Dentalobjekts getrennt sein können.
-
Kurze Beschreibung der Zeichnungen
-
Die Erfindung und die folgende detaillierte Beschreibung gewisser ihrer Ausführungsformen sind unter Bezug auf die folgenden Figuren zu verstehen.
-
1 zeigt ein dreidimensionales Abtastsystem.
-
2 zeigt eine schematische Darstellung eines optischen Systems für eine dreidimensionale Abtastvorrichtung.
-
3 zeigt eine Verarbeitungspipeline zum Gewinnen dreidimensionaler Daten von einer Videoabtastvorrichtung.
-
4A und 4B stellen Kamerawege für eine dreidimensionale Abtastvorrichtung dar.
-
5 zeigt ein Benutzerschnittstellenbild, wo von einem Software-Tool zusätzliche Daten abgefragt werden.
-
6A und 6B stellen akkumulierte Fehler in Kamerawegen dar.
-
7 ist ein Flussdiagramm eines dreidimensionalen Rekonstruktionsverfahrens einschließlich globaler Wegoptimierung für verbesserte Genauigkeit.
-
8 zeigt ein Rekonstruktionsverfahren für ein Dentalobjekt unter Verwendung numerischer Optimierung.
-
Detaillierte Beschreibung
-
Im folgenden Text sollten Verweise auf Elemente im Singular so verstanden werden, dass dazu auch Elemente im Plural und umgekehrt gehören, sofern nichts anderes ausdrücklich erklärt ist oder aus dem Text hervorgeht. Grammatikalische Konjunktionen sollen jede und alle disjunktiven und konjunktiven Kombinationen verknüpfter Teilsätze, Sätze, Wörter u. ä. zum Ausdruck bringen, sofern nichts anderes erklärt ist oder aus dem Kontext hervorgeht.
-
In den hier beschriebenen Systemen und Verfahren wird eine Anzahl von Techniken für die globale Bewegungsoptimierung verwendet, um die Genauigkeit dreidimensionaler Rekonstruktionen basierend auf dem Kameraweg zu verbessern.
-
Die folgende Beschreibung erklärt detailliert Abtasttechnologien und konzentriert sich auf zahnmedizinische Anwendungen dreidimensionaler Bildgebung; jedoch wird deutlich sein, dass Varianten, Anpassungen und Kombinationen der nachstehenden Verfahren und Systeme für Leute mit gewöhnlichen Kenntnissen der Technik offensichtlich werden. Während zum Beispiel ein bildbasiertes System beschrieben wird, können nichtbildbasierte Abtasttechniken, wie etwa Infrarotlaufzeittechniken oder Techniken mit strukturiertem Licht, die gemusterte Projektionen verwenden, in ähnlicher Weise die Rekonstruktion auf Basis des Kamerawegs, die von den hier beschriebenen Vorteilen profitieren kann, verwenden. Während als ein anderes Beispiel die digitale Zahnmedizin eine nützliche Anwendung der verbesserten Genauigkeit ist, die sich aus den hier beschriebenen Techniken ergibt, kann die globale Wegoptimierung auch nutzbringend verwendet werden, um dreidimensionale Animationsmodelle oder dreidimensionale Abtastungen für Anwendungen des maschinellen Sehens oder für Abbildungsanwendungen sein. Alle derartigen Varianten, Anpassungen und Kombinationen sollen in den Schutzbereich dieser Offenbarung fallen.
-
In der folgenden Beschreibung bezeichnet der Begriff ”Bild” allgemein einen zweidimensionalen Satz von Pixeln, die eine zweidimensionale Ansicht eines Gegenstands in einer Bildebene bilden. Der Begriff ”Bildsatz” bezeichnet allgemein einen Satz verwandter zweidimensionaler Bilder, die zu dreidimensionalen Daten aufgelöst werden könnten. Der Begriff ”Punktwolke” bezeichnet allgemein einen dreidimensionalen Satz von Punkten, die eine dreidimensionale Ansicht des Gegenstands bilden, die aus einer Anzahl zweidimensionaler Bilder rekonstruiert ist. In einem dreidimensionalen Bilderfassungssystem kann eine Anzahl solcher Punktwolken auch registriert und zu einer Gesamtpunktwolke kombiniert werden, die aus Bildern aufgebaut ist, die durch eine sich bewegende Kamera erfasst sind. Somit wird verständlich sein, dass Pixel allgemein zweidimensionale Daten bezeichnen und Punkte allgemein dreidimensionale Daten bezeichnen, sofern keine andere Bedeutung speziell angegeben ist oder aus dem Kontext hervorgeht.
-
Die Begriffe ”dreidimensionales Modell”, ”dreidimensionale Oberflächendarstellung”, ”digitale Oberflächendarstellung”, ”dreidimensionale Oberflächenkarte” u. ä. sollen im Gebrauch hierin jede dreidimensionale Oberflächenkarte eines Objekts bezeichnen, z. B. eine Punktwolke von Oberflächendaten, einen Satz zweidimensionaler Polygone oder alle anderen alle oder einige Oberflächen eines Objekts darstellenden Daten, die man über die Erfassung und/oder Verarbeitung dreidimensionaler Abtastdaten erhalten könnte, sofern keine andere Bedeutung angegeben ist oder anderweitig aus dem Kontext hervorgeht. Eine ”dreidimensionale Darstellung” kann jede der zuvor beschriebenen dreidimensionalen Oberflächendarstellungen wie auch volumetrische und andere Darstellungen aufweisen, sofern keine andere Bedeutung angegeben ist oder anderweitig aus dem Kontext hervorgeht.
-
Allgemein bezeichnen die Begriffe ”Rendern” oder ”Rendering” bzw. ”Wiedergeben” bzw. ”Wiedergabe” eine zweidimensionale Visualisierung eines dreidimensionalen Objekts, z. B. zur Anzeige auf einem Monitor. Allerdings wird verständlich sein, dass vielfältige dreidimensionale Renderingtechnologien existieren und mit den hierin offenbarten Systemen und Verfahren nutzbringend zum Einsatz kommen können. Beispielsweise können die hierin beschriebenen Systeme und Verfahren eine holografische Anzeige, eine autostereoskopische Anzeige, eine Anaglyphenanzeige, eine am Kopf angeordnete Stereoanzeige oder jede andere zweidimensionale und/oder dreidimensionale Anzeige nutzbringend verwenden. Somit sollte Rendering in der Beschreibung hierin weitgefasst interpretiert werden, sofern keine andere Bedeutung angegeben ist oder anderweitig aus dem Kontext hervorgeht.
-
Im Gebrauch hierin soll der Begriff ”Dentalobjekt” allgemein Gegenstände bezeichnen, die mit der Zahnmedizin zusammenhängen. Dazu können intraorale Strukturen gehören, z. B. das Gebiß und noch typischer das menschliche Gebiß, z. B. einzelne Zähne, Quadranten, Vollbogen, Bogenpaare (die getrennt oder in Bißlagen verschiedener Typen liegen können), Weichteile u. ä. sowie Knochen und alle anderen stützenden oder umliegenden Strukturen. Im Gebrauch hierin bezeichnet der Begriff ”intraorale Strukturen” sowohl natürliche Strukturen in einem Mund gemäß der vorstehenden Beschreibung als auch künstliche Strukturen, z. B. jedes der nachstehend beschriebenen Dentalobjekte, die im Mund vorhanden sein könnten. Zu Dentalobjekten können ”Restaurationen” gehören, die allgemein so aufgefasst werden können, dass dazu Komponenten gehören, die die Struktur oder Funktion des vorhandenen Gebisses wiederherstellen, z. B. Kronen, Brücken, Facetten, Inlays, Onlays, Amalgame, Komposite und verschiedene Teilstrukturen, z. B. Stumpfkappen u. ä., wie auch temporäre Restaurationen zum Gebrauch während der Fertigung einer permanenten Restauration. Zu Dentalobjekten kann auch eine ”Prothese” gehören, die Gebiß durch entfernbare oder permanente Strukturen ersetzt, z. B. Zahnersatz, Teilprothesen, Implantate, gehaltene Prothesen u. ä. Ferner können zu Dentalobjekten auch ”Appliances” bzw. ”Apparaturen” zählen, die zum Korrigieren, Ausrichten oder anderweitigen temporären oder permanenten Einstellen des Gebisses verwendet werden, z. B. entfernbare kieferorthopädische Apparaturen, chirurgische Stents, Bruxismusapparaturen, Schnarchschienen, Apparaturen zur indirekten Bracketplazierung u. ä. Außerdem können zu Dentalobjekten ”Kleinteile” gehören, die am Gebiß längere Zeit befestigt werden, z. B. Implantathalterungen, Implantatabutments, kieferorthopädische Brackets und andere kieferorthopädische Komponenten. Zu Dentalobjekten können auch ”Übergangskomponenten” aus zahntechnischer Herstellung zählen, z. B. Zahnmodelle (vollständig und/oder partiell), Wax-ups, Ausschmelzformen u. ä. sowie Schalen, Unterlagen, Formen und andere Komponenten, die bei der Fertigung von Restaurationen, Prothesen u. ä. zum Einsatz kommen. Kategorisieren lassen sich Dentalobjekte auch als natürliche Dentalobjekte, z. B. die Zähne, Knochen und andere zuvor beschriebene intraorale Strukturen, oder als künstliche Dentalobjekte, z. B. Restaurationen, Prothesen, Apparaturen, Kleinteile und Übergangskomponenten aus zahntechnischer Herstellung wie zuvor beschrieben.
-
Solche Begriffe wie z. B. ”digitales Dentalmodell”, ”digitaler Zahnabdruck” u. ä. sollen dreidimensionale Darstellungen von Dentalobjekten bezeichnen, die in verschiedenen Aspekten der Erfassung, Analyse, Verordnung und Herstellung verwendet werden können, sofern keine andere Bedeutung anderweitig angegeben ist oder aus dem Kontext hervorgeht. Solche Begriffe wie z. B. ”Dentalmodell” oder ”Zahnabdruck” sollen ein physisches Modell bezeichnen, z. B. eine gegossene, gedruckte oder anderweitig gefertigte physische Ausprägung eines Dentalobjekts. Sofern nicht anders angegeben, kann der Begriff ”Modell” in alleiniger Verwendung ein physisches Modell und/oder ein digitales Modell bezeichnen.
-
Zudem wird ferner verständlich sein, dass solche Begriffe wie z. B. ”Tool” oder ”Steuerelement” in ihrer Verwendung zur Beschreibung von Aspekten einer Benutzeroberfläche allgemein vielfältige Techniken bezeichnen sollen, die auf einer grafischen Benutzeroberfläche oder anderen Benutzerschnittstelle zum Einsatz kommen können, um Benutzereingaben zu empfangen, die die Verarbeitung auslösen oder steuern, darunter z. B. Dropdownlisten, Optionsfelder, Cursor- und/oder Hausaktionen (Auswahl nach Punkt, Auswahl nach Bereich, Drag-and-Drop-Operationen usw.), Kontrollkästchen, Befehlszeilen, Texteingabefelder, Meldungen und Alarme, Fortschrittsanzeigen usw. Zu einem Tool oder Steuerelement kann auch jede physische Hardware im Zusammenhang mit der Benutzereingabe gehören, z. B. eine Maus, eine Tastatur, eine Anzeige, ein Tastenblock, ein Trackball und/oder jedes andere Gerät, das physische Eingaben von einem Benutzer empfängt und die physischen Eingaben in eine Eingabe zur Verwendung in einem computergestützten System umwandelt. Somit sollten in der folgenden Beschreibung die Begriffe ”Tool”, ”Steuerelement” u. ä. weitgefasst interpretiert werden, sofern keine spezifischere Bedeutung anderweitig angegeben ist oder aus dem Kontext hervorgeht.
-
1 zeigt ein dreidimensionales Abtastsystem, das mit den hierin beschriebenen Systemen und Verfahren verwendet werden kann. Allgemein kann das System 100 eine Kamera 102 aufweisen, die Bilder von einer Oberfläche 106 eines Objekts 104 erfasst, z. B. eines Dentalpatienten, und die Bilder zu einem Computer 108 weiterleitet, der eine Anzeige 110 sowie ein oder mehrere Benutzereingabegeräte 112, 114 aufweisen kann, z. B. eine Maus 112 oder eine Tastatur 114. Die Kamera 102 kann auch ein integriertes Ein- oder Ausgabegerät 116 aufweisen, z. B. eine Steuereingabe (z. B. Taste, Touchpad, Rändelrad) oder eine Anzeige (z. B. LCD- oder LED-Anzeige), um Statusinformationen zu liefern.
-
Zur Abtastvorrichtung
102 kann jede Kamera oder jedes Kamerasystem gehören, die oder das zur Erfassung von Bildern geeignet ist, aus denen eine dreidimensionale Punktwolke oder andere dreidimensionale Daten rückgewonnen werden können. Beispielsweise kann die Abtastvorrichtung
102 ein System mit mehreren Aperturen gemäß der Offenbarung in der
US-A-7372642 (Rohály et al.) nutzen, deren gesamter Inhalt hierin durch Verweis aufgenommen ist. Wenngleich Rohály ein System mit mehreren Aperturen offenbart, wird deutlich sein, dass jedes System mit mehreren Aperturen ähnlich verwendet werden kann, das zum Rekonstruieren einer dreidimensionalen Punktwolke aus einer Anzahl zweidimensionaler Bilder geeignet ist. In einer Ausführungsform mit mehreren Aperturen kann die Abtastvorrichtung
102 mehrere Aperturen aufweisen, darunter eine Mittelapertur, die entlang einer optischen Mittelachse einer Linse positioniert ist, die einen Mittelkanal für die Abtastvorrichtung
102 zusammen mit etwaiger zugeordneter Abbildungshardware bildet. In solchen Ausführungsformen kann der Mittelkanal ein herkömmliches Videobild des abgetasteten Gegenstands liefern, während eine Anzahl axial versetzter Kanäle Bildsätze ergibt, die Disparitätsinformationen enthalten, die bei der dreidimensionalen Rekonstruktion einer Oberfläche zum Einsatz kommen können. In anderen Ausführungsformen können eine separate Videokamera und/oder ein separater Kanal vorgesehen sein, um das gleiche Ergebnis zu erreichen, d. h. ein Video eines Objekts, das einer dreidimensionalen Abtastung des Objekts zeitlich entspricht, vorzugsweise aus derselben Perspektive oder aus einer Perspektive mit einer festen, bekannten Beziehung zur Perspektive der Abtastvorrichtung
102. Die Abtastvorrichtung
102 kann auch oder stattdessen eine stereoskopische, trioskopische oder andere Mehrfachkamera oder andere Konfiguration aufweisen, in der eine Anzahl von Kameras oder optischen Wegen in fester Relation zueinander gehalten werden, um zweidimensionale Bilder eines Objekts aus einer Anzahl unterschiedlicher Perspektiven zu erhalten. Die Abtastvorrichtung
102 kann eine geeignete Verarbeitung zum Ableiten einer dreidimensionalen Punktwolke aus einem Bildsatz oder einer Anzahl von Bildsätzen aufweisen, oder jeder zweidimensionale Bildsatz kann zu einem externen Prozessor gesendet werden, der z. B. im später beschriebenen Computer
108 enthalten ist. In anderen Ausführungsformen kann die Abtastvorrichtung
102 strukturiertes Licht, Laserabtastung, tachymetrische Streckenmessung oder jede andere Technologie nutzen, die zum Erfassen dreidimensionaler Daten oder zweidimensionaler Daten geeignet ist, die zu dreidimensionalen Daten aufgelöst werden können. Obwohl die später beschriebenen Techniken Videodaten nutzbringend verwenden können, die durch ein videobasiertes dreidimensionales Abtastsystem erfasst werden, wird verständlich sein, dass jedes andere dreidimensionale Abtastsystem mit einem Videoerfassungssystem ergänzt werden kann, das geeignete Videodaten oder Bilddaten zeitgleich oder anderweitig synchronisiert mit der Erfassung dreidimensionaler Daten erfasst.
-
In einer Ausführungsform ist die Abtastvorrichtung 102 eine frei positionierbare Handsonde mit mindestens einem Benutzereingabegerät 116, z. B. einer Taste, einem Hebel, einer Wählscheibe, einem Rändelrad, einem Schalter o. ä. zur Benutzersteuerung des Bilderfassungssystems 100, z. B. zum Starten und Stoppen von Abtastungen. In einer Ausführungsform kann die Abtastvorrichtung 102 zur Dentalabtastung geformt und bemessen sein. Insbesondere kann die Abtastvorrichtung 102 zur intraoralen Abtastung und Datenerfassung geformt und bemessen sein, z. B. durch Einführung in einen Mund eines Abbildungsobjekts und Führen über eine intraorale Oberfläche 106 in einem geeigneten Abstand, um Oberflächendaten von Zähnen, Zahnfleisch usw. zu erfassen. Über ein solches kontinuierliches Datenerfassungsverfahren kann die Abtastvorrichtung 102 eine Punktwolke von Oberflächendaten mit ausreichender räumlicher Auflösung und Genauigkeit erfassen, um Dentalobjekte, z. B. Prothetik, Kleinteile, Apparaturen u. ä. daraus herzustellen, entweder direkt oder über vielfältige Zwischenverarbeitungsschritte. In anderen Ausführungsformen können Oberflächendaten von einem Dentalmodell, z. B. einer Dentalprothese, erfasst werden, um die richtige Anpassung mit Hilfe einer früheren Abtastung des entsprechenden Gebisses, z. B. einer für die Prothese präparierten Zahnoberfläche, zu gewährleisten.
-
Obwohl in 1 nicht gezeigt, wird deutlich sein, dass eine Anzahl ergänzender Beleuchtungssysteme während der Bilderfassung nutzbringend zum Einsatz kommen kann. Beispielsweise kann die Umgebungsbeleuchtung mit einer oder mehreren Punktleuchten verstärkt werden, die das Objekt 104 beleuchten, um die Bilderfassung zu beschleunigen und die Schärfentiefe (oder räumliche Auslösungstiefe) zu verbessern. Zudem oder stattdessen kann die Abtastvorrichtung 102 auch eine Stroboskop-, eine Blitz- oder irgendeine andere Lichtquelle aufweisen, um die Beleuchtung des Objekts 104 während der Bilderfassung zu ergänzen.
-
Das Objekt 104 kann jedes Objekt, jede Ansammlung von Objekten, jeder Abschnitt eines Objekts oder jeder andere Gegenstand sein. Insbesondere kann im Hinblick auf die hierin diskutierten Dentaltechniken das Objekt 104 ein menschliches Gebiß aufweisen, das aus einem Mund eines Dentalpatienten intraoral erfasst wird. Eine Abtastung kann eine dreidimensionale Darstellung des Gebisses teilweise oder vollständig gemäß einem speziellen Zweck der Abtastung erfassen. Dadurch kann die Abtastung ein digitales Modell eines Zahns, eines Quadranten von Zähnen oder einer vollen Ansammlung von Zähnen mit zwei gegenüberliegenden Bogen sowie Weichteilen oder allen anderen relevanten intraoralen Strukturen erfassen. Die Abtastung kann mehrere Darstellungen erfassen, z. B. eine Zahnoberfläche vor und nach der Präparation für eine Restaurierung. Wie später erwähnt, können diese Daten für die anschließende Modellierung zum Einsatz kommen, z. B. die Gestaltung einer Restaurierung oder die Bestimmung einer Randlinie dafür. Während der Abtastung kann ein Mittelkanal der Abtastvorrichtung 102 oder eines separaten Videosystems ein Video des Gebisses vom Standpunkt der Abtastvorrichtung 102 aus erfassen. In anderen Ausführungsformen, in denen z. B. eine vervollständigte Anfertigung an eine Oberflächenpräparation virtuell testangepasst wird, kann die Abtastung eine Dentalprothese aufweisen, z. B. ein Inlay, eine Krone oder jede andere Dentalprothese, dentale Kleinteile, eine dentale Apparatur o. ä. Das Objekt 104 kann auch oder stattdessen ein Dentalmodell aufweisen, z. B. einen Gipsabguß, ein Wax-up, einen Abdruck oder einen Negativabdruck eines Zahns, von Zähnen, Weichteilen oder eine gewisse Kombination daraus.
-
Der Computer 108 kann z. B. einen Personalcomputer oder eine andere Verarbeitungsvorrichtung aufweisen. In einer Ausführungsform umfasst der Computer 108 einen Personalcomputer mit einer Dual-2,8-GHz-Opteron-Zentraleinheit, 2 Gigabyte Schreib-/Lesespeicher, einem TYAN-Thunder-K8WE-Motherboard und einer 250-Gigabyte-Festplatte mit 10.000 U/min. In einer derzeitigen Ausführungsform kann das System so betrieben werden, dass es mehr als fünftausend Punkte pro Bildsatz in Echtzeit mit Hilfe der hierin beschriebenen Techniken erfasst und eine Gesamtpunktwolke aus mehreren Millionen Punkten speichert. Natürlich kann diese Punktwolke weiterverarbeitet werden, um der anschließenden Datenhandhabung Rechnung zu tragen, z. B. durch Dezimieren der Punktwolkendaten oder Erzeugen eines entsprechenden Gitters aus Oberflächendaten. Im Gebrauch hierin bedeutet der Begriff ”Echtzeit” allgemein eine Situation ohne beobachtbare Latenz zwischen Verarbeitung und Anzeige. In einem videobasierten Abtastsystem bezeichnet Echtzeit insbesondere die Verarbeitung in der Zeit zwischen Rahmen von Videodaten, die je nach spezifischen Videotechnologien zwischen etwa fünfzehn Rahmen pro Sekunde und etwa dreißig Rahmen pro Sekunde variieren kann. Allgemeiner können Verarbeitungsfähigkeiten des Computers 108 je nach Größe des Objekts 104, Geschwindigkeit der Bilderfassung und gewünschter räumlicher Auflösung dreidimensionaler Punkte variieren. Der Computer 108 kann auch Peripheriegeräte aufweisen, z. B. eine Tastatur 114, Anzeige 110 und Maus 112 zum Nutzerdialog mit dem Kamerasystem 100. Die Anzeige 110 kann eine Touchscreenanzeige sein, die Benutzereingaben über direkten physischen Dialog mit der Anzeige 110 empfangen kann. In einem weiteren Aspekt kann die Anzeige eine autostereoskopische Anzeige o. ä. aufweisen, die Stereobilder anzeigen kann.
-
Kommunikationsabläufe zwischen dem Computer 108 und der Abtastvorrichtung 102 können jede geeignete Kommunikationsverbindung verwenden, z. B. eine Drahtverbindung oder eine drahtlose Verbindung, z. B. auf der Grundlage von IEEE 802.11 (auch als drahtloses Ethernet bekannt), BlueTooth oder jedes anderen geeigneten drahtlosen Standards, z. B. mit Hilfe eines Hochfrequenz, Infrarot- oder anderen drahtlosen Kommunikationsmediums. Bei der medizinischen Bildgebung oder anderen sensiblen Anwendungen kann die drahtlose Bildübertragung von der Abtastvorrichtung 102 zum Computer 108 geschützt sein. Der Computer 108 kann Steuersignale für die Abtastvorrichtung 102 erzeugen, die zusätzlich zu Bilderfassungsbefehlen herkömmliche Kamerabedienungen aufweisen können, z. B. Fokus oder Zoom.
-
In einem Beispiel für den allgemeinen Betrieb eines dreidimensionalen Bilderfassungssystems 100 kann die Abtastvorrichtung 102 zweidimensionale Bildsätze mit einer Videofrequenz erfassen, während die Abtastvorrichtung 102 über eine Oberfläche des Gegenstands geführt wird. Die zweidimensionalen Bildsätze können zum Computer 108 zur Ableitung dreidimensionaler Punktwolken weitergeleitet werden. Die dreidimensionalen Daten für jeden neu erfassten zweidimensionalen Bildsatz können abgeleitet und mit Hilfe einer Anzahl unterschiedlicher Techniken an vorhandene dreidimensionale Daten angepasst oder ”angefügt” werden. Ein solches System kann eine Kamerabewegungsabschätzung nutzen, damit die Position der Kamera 102 nicht unabhängig nachverfolgt werden muß. Ein nützliches Beispiel für eine solche Technik ist in der gemeinsamen US-Anmeldung Nr. 11/270,135, eingereicht am 9. November 2005, beschrieben, deren gesamter Inhalt hierin durch Verweis aufgenommen ist. Allerdings wird deutlich sein, dass dieses Beispiel keine Einschränkung darstellt und dass die hierin beschriebenen Grundsätze auf einen breiten Bereich dreidimensionaler Bilderfassungssysteme anwendbar sind.
-
Die Anzeige 110 kann jede Anzeige aufweisen, die zum Videorendering oder Rendering mit anderen Raten mit einer Detailstufe geeignet ist, die den erfassten Daten entspricht. Zu geeigneten Anzeigen zählen Kathodenstrahlanzeigen, Flüssigkristallanzeigen, Leuchtdiodenanzeigen u. ä. Allgemein kann die Anzeige 110 mit dem Computer 108 betrieblich gekoppelt und fähig sein, Anzeigesignale von ihm zu empfangen. Diese Anzeige kann eine Bildröhre oder einen Flachbildschirm, eine dreidimensionale Anzeige (z. B. eine Anaglyphenanzeige), eine autostereoskopische dreidimensionale Anzeige oder jede andere geeignete zweidimensionale oder dreidimensionale Renderinghardware aufweisen. In einigen Ausführungsformen kann die Anzeige eine Touchscreenschnittstelle aufweisen, die z. B. kapazitive, resistive oder akustische Oberflächenwellen-(auch Dispersivsignal genannt)Touchscreentechnologien oder jede andere geeignete Technologie zum Erfassen physischer Interaktionen mit der Anzeige 110 verwendet.
-
Das System 100 kann ein computernutzbares oder computerlesbares Medium aufweisen. Das computernutzbare Medium 118 kann einen oder mehrere Speicherchips (oder andere Chips, z. B. einen Prozessor, der Speicher aufweist), optische Platten, magnetische Platten oder andere magnetische Medien usw. aufweisen. In verschiedenen Ausführungsformen kann das computernutzbare Medium 118 entfernbaren Speicher (z. B. ein USB-Bauelement, ein Bandlaufwerk, eine externe Festplatte usw.), abgesetzten Speicher (z. B. netzwerkangebundenen Speicher), flüchtigen oder nichtflüchtigen Computerspeicher usw. aufweisen. Das computernutzbare Medium 118 kann computerlesbare Befehle zur Ausführung durch den Computer 108 enthalten, um die hierin beschriebenen Verfahren, wie etwa das unter Bezug auf 3 im Detail beschriebene Verfahren, durchzuführen. Ferner oder stattdessen kann das computernutzbare Medium 118 auch Daten speichern, die von der Abtastvorrichtung 102 empfangen werden, ein dreidimensionales Modell des Objekts 104 speichern, Computercode zum Rendering und zur Anzeige usw. speichern.
-
2 veranschaulicht ein optisches System 200 für eine dreidimensionale Abtastvorrichtung, das mit den hierin beschriebenen Systemen und Verfahren verwendet werden kann, z. B. für die zuvor anhand von 1 beschriebene Abtastvorrichtung 102.
-
Das optische System 200 kann eine primäre optische Einrichtung 202 aufweisen, die in jeder Art von Bildverarbeitungssystem zum Einsatz kommen kann. Allgemein bezeichnet eine primäre optische Einrichtung hierin ein optisches System mit einem optischen Kanal. Normalerweise benutzt dieser optische Kanal mindestens eine Linse gemeinsam und hat eine gemeinsam benutzte Bildebene im optischen System, obwohl in der folgenden Beschreibung Varianten davon ausdrücklich beschrieben werden oder anderweitig aus dem Kontext hervorgehen können. Das optische System 200 kann eine einzelne Primärlinse, eine Gruppe von Linsen, eine Objektivlinse, Spiegelsysteme (u. a. traditionelle Spiegel, digitale Spiegelsysteme, digitale Lichtprozessoren o. ä.), Konfokalspiegel und alle anderen optischen Einrichtungen aufweisen, die zur Verwendung mit den hierin beschriebenen Systemen geeignet sind. Das optische System 200 kann z. B. in einem stereoskopischen oder anderen Mehrfachbilder-Kamerasystem verwendet werden. zu anderen optischen Einrichtungen können holografische optische Elemente o. ä. gehören. In verschiedenen Konfigurationen kann die primäre optische Einrichtung 202 eine oder mehrere Linsen aufweisen, z. B. eine Objektivlinse (oder Linsengruppe) 202b, eine Feldlinse 202d, eine Relaislinse 202f usw. Die Objektivlinse 202b kann an oder nahe der Eintrittspupille 202a des optischen Systems 200 liegen. Die Feldlinse 202d kann an oder nahe einer ersten Bildebene 202c des optischen Systems 200 liegen. Die Relaislinse 202f kann Lichtstrahlenbündel im optischen System 200 weiterleiten. Ferner kann das optische System 200 solche Komponenten wie z. B. Aperturelemente 208 mit einer oder mehreren Aperturen 212, eine Refokussiereinrichtung 210 mit einem oder mehreren Refokussierelementen 204, eine oder mehrere Sampling-Einrichtungen 218 und/oder eine Anzahl von Sensoren 214a, 214b, 214c aufweisen.
-
Das optische System
200 kann zum Active Wavefront Sampling gestaltet sein, was so zu verstehen ist, dass es jede Technik umfasst, die zum Abtasten einer Folge oder Ansammlung optischer Daten von einem Objekt
220 oder Objekten verwendet wird, darunter optische Daten, die dazu beitragen, zweidimensionale oder dreidimensionale Kennwerte des Objekts
220 zu detektieren, wobei optische Daten zur Detektion von Bewegung verwendet werden, optische Daten zur Geschwindigkeitsmessung oder Objektverfolgung o. ä. verwendet werden. Nähere Einzelheiten eines optischen Systems, das als optisches System
200 von
2 zum Einsatz kommen kann, liefert die
US-A-7372642 , deren gesamter Inhalt hierin durch Verweis aufgenommen ist. Allgemeiner wird verständlich sein, dass
2 zwar eine Ausführungsform eines optischen Systems
200 darstellt, aber zahlreiche Varianten möglich sind. Ein herausragendes Merkmal des optischen Systems in Bezug auf die spätere Diskussion ist der Einsatz eines optischen Mittelkanals, der herkömmliche Video- oder Standbilder an einem der Sensoren
214b zeitgleich mit einem oder mehreren Bildern von versetzten Stellen (z. B. an
214a und
214c) erfasst, die dreidimensionale Informationen erfassen. Dieses Mittelkanalbild kann auf einer Benutzeroberfläche präsentiert werden, damit es, wie nachstehend beschrieben, von einem Benutzer während einer Benutzersitzung kontrolliert, markiert oder anderweitig manipuliert werden kann.
-
3 zeigt ein dreidimensionales Rekonstruktionssystem 300, das eine Hochgeschwindigkeitspipeline und eine Hochgenauigkeitspipeline verwendet. Im Allgemeinen zielt die Hochgeschwindigkeitsverarbeitungspipeline 330 darauf ab, dreidimensionale Daten in Echtzeit, wie etwa mit einer Videobildrate, die von einer zugehörigen Anzeige verwendet wird, bereitzustellen, während die Hochgenauigkeitsverarbeitungspipeline 350 darauf abzielt, die höchstmögliche Genauigkeit aus Abtastvorrichtungsmessungen in Abhängigkeit von allen externen Berechnungs- oder Zeitbeschränkungen, die von der Systemhardware oder einer beabsichtigten Verwendung der Ergebnisse auferlegt werden, bereitzustellen. Eine Datenquelle 310, wie etwa die vorstehend beschriebene Abtastvorrichtung 102, stellt Bilddaten oder ähnliches an das System 300 bereit. Die Datenquelle 310 kann zum Beispiel Hardware, wie etwa LED-Ringlichter, Wandsensoren, einen Bilddigitalisierer (Framegrabber), einen Computer, ein Betriebssystem und jede andere geeignete Hardware und/oder Software zum Gewinnen von Daten, die in einer dreidimensionalen Rekonstruktion verwendet werden, umfassen. Bilder von der Datenquelle 310, wie etwa Mittelkanalbilder, die herkömmliche Videobilder enthalten, und Seitenkanäle, die Disparitätsdaten enthalten, die verwendet werden, um Tiefeninformationen wiederzugewinnen, können an den Echtzeitverarbeitungskontroller 316 weitergeleitet werden. Der Echtzeitverarbeitungskontroller 316 kann auch Kamerasteuerinformationen oder andere Rückmeldungen an die Datenquelle 310 bereitstellen, die in der anschließenden Datenerfassung verwendet werden sollen, oder zum Spezifizieren von Daten, die bereits in der Datenquelle 310 erhalten wurden, die von dem Echtzeitverarbeitungskontroller 316 benötigt werden. Bilder mit voller Auflösung und zugehörige Bilddaten können in einem Vollauflösungsbildspeicher 322 gehalten werden. Die gespeicherten Bilder können zum Beispiel während der Verarbeitung an den Hochgenauigkeitsverarbeitungskontroller 324 bereitgestellt oder für die Bildüberprüfung durch einen menschlichen Benutzer während nachfolgenden Verarbeitungsschritten gespeichert werden.
-
Der Echtzeitverarbeitungskontroller 316 kann in Echtzeit Bilder oder Rahmen zur Rekonstruktion von dreidimensionalen Oberflächen aus den zweidimensionalen Quelldaten an die Hochgeschwindigkeits-(Videoraten-)Verarbeitungspipeline 330 bereitstellen. In einer beispielhaften Ausführungsform können zweidimensionale Bilder aus einem Bildsatz, wie etwa Seitenkanalbildern, von einem zweidimensionalen Bildregistrierungsmodul 332 registriert werden. Basierend auf den Ergebnissen der zweidimensionalen Bildregistrierung kann ein dreidimensionales Punktwolken-Generierungsmodul 334 eine dreidimensionale Punktwolke oder eine andere dreidimensionale Darstellung erzeugen. Die dreidimensionalen Punktwolken von einzelnen Bildsätzen können von einem dreidimensionalen Anfügungsmodul 336 kombiniert werden. Schließlich können die angefügten Messungen von einem dreidimensionalen Erzeugungsmodul 338 zu einem dreidimensionalen Modell kombiniert werden. Das sich ergebende Modell kann als ein dreidimensionales Hochgeschwindigkeitsmodell 340 gespeichert werden.
-
Der Hochgenauigkeitsverarbeitungskontroller 324 kann Bilder oder Rahmen an die Hochgenauigkeitsverarbeitungspipeline 350 bereitstellen. Separate Bildsätze können eine zweidimensionale Bildregistrierung haben, die von einem zweidimensionalen Bildregistrierungsmodul 352 durchgeführt wird. Basierend auf den Ergebnissen der zweidimensionalen Bildregistrierung kann von einem dreidimensionalen Punktwolkengenerierungsmodul 354 eine dreidimensionale Punktwolke oder eine andere dreidimensionale Darstellung erzeugt werden. Die dreidimensionalen Punktwolken von einzelnen Bildsätzen können unter Verwendung eines dreidimensionalen Anfügungsmoduls 356 verbunden werden. Die globale Bewegungsoptimierung, auf die hier auch als globale Wegoptimierung oder globale Kamerawegoptimierung Bezug genommen wird, kann von einem globalen Bewegungsoptimierungsmodul 357 durchgeführt werden, um Fehler in dem sich ergebenden dreidimensionalen Modell 358 zu verringern. Im Allgemeinen kann der Weg der Kamera, während sie die Rahmen gewinnt, als ein Teil des dreidimensionalen Rekonstruktionsverfahrens berechnet werden. In einem Nachverarbeitungsverfeinerungsverfahren kann die Berechnung des Kamerawegs optimiert werden, das heißt, die Akkumulation von Fehlern entlang der Länge des Kamerawegs kann durch ergänzende Rahmen-Rahmen-Bewegungsschätzung mit einigen oder der gesamten globalen Weginformationen minimiert werden. Basierend auf globalen Informationen, wie etwa einzelnen Rahmen von Daten in dem Bildspeicher 322, dem dreidimensionalen Hochgeschwindigkeitsmodell 340 und Zwischenergebnissen in der Hochgenauigkeitsverarbeitungspipeline 350 kann das Hochgenauigkeitsmodell 370 verarbeitet werden, um Fehler in dem Kameraweg und sich ergebende Bildfehler in dem rekonstruierten Modell zu verringern. Als eine weitere Verfeinerung kann von einem Gitterprojektionsmodul 360 ein Gitter auf das Hochgeschwindigkeitsmodell projiziert werden. Die sich ergebenden Bilder können durch ein Verwölbungsmodul 362 verwölbt oder verformt werden. Verwölbte Bilder können verwendet werden, um die Ausrichtung und das Anfügen zwischen Bildern, zum Beispiel durch Verringern des Anfangsfehlers in einer Bewegungsschätzung, zu erleichtern. Die verwölbten Bilder können an das zweidimensionale Bildregistrierungsmodul 352 bereitgestellt werden. Die Rückmeldung des dreidimensionalen Hochgenauigkeitsmodells 370 in die Pipeline kann wiederholt werden, bis eine Metrik, wie etwa eine Anfügungsgenauigkeit oder eine minimale Fehlerschwelle, erhalten wird.
-
Verschiedene Aspekte des Systems 300 von 3 sind nachstehend detaillierter beschrieben. Es sollte verstanden werden, dass vielfältige Verarbeitungsmodule oder Schritte, die von den in dieser Figur gezeigten Modulen vorausgesetzt werden, vom Wesen her beispielhaft sind und dass die Reihenfolge der Verarbeitung oder die Verarbeitungsschrittfolge modifiziert, weggelassen, wiederholt, umsortiert oder ergänzt werden kann, ohne vom Schutzbereich dieser Offenbarung abzuweichen.
-
4A zeigt ein Objekt 410 zur Bildgebung zusammen mit einem Weg 415, dem eine Kamera folgen kann, während eine dreidimensionale Abtastung einer Oberfläche des Objekts 410 erhalten wird. Die Richtung des Wegs 415 ist allgemein durch einen Pfeil 416 angegeben. Das Objekt 410 kann (wie gezeigt) ein oberer Zahnabdruck oder jedes andere Objekt sein, für das dreidimensionale Oberflächendaten gesucht werden. An einem Startpunkt 420 startend kann die Kamera einem Bogen 430 zu einem zweiten Punkt 422 folgen. Die Kamera kann dann einem Segment 432 zu einem dritten Punkt 424 folgen. Die Kamera kann dann einem zweiten Bogen 434 zu einem vierten Punkt 426 folgen. Die Kamera kann dann einem zweiten Segment 436 folgen, um ungefähr zu dem Startpunkt 420 zurückzukehren. Es sollte bemerkt werden, dass der Weg 415, dem die Kamera folgt, eher unregelmäßig als gleichmäßig ist, und dass, während ein bestimmter Weg 415 abgebildet ist, allgemeiner jeder Weg von der Kamera genommen werden kann, einschließlich Wegen, die auf sich selbst kehrtmachen, identische Bereiche zwei oder mehr Mal überqueren und/oder verschiedene Oberflächen des Objekts 410 ganz auslassen. Es sollte auch bemerkt werden, dass der Kameraweg 415 nutzbringend zu dem Startpunkt 420 zurückkehren kann, dies aber für die dreidimensionale Rekonstruktion, wie hier beschrieben, nicht unbedingt erforderlich ist. Die Kamera kann hunderte oder tausende von Bildern oder mehr aufnehmen, während die Kamera den Weg um ein derartiges Dentalobjekt herum durchquert.
-
4B zeigt Stellen, an denen zusätzliche Abtastdaten nutzbringend erfasst werden könnten, um die Genauigkeit einer dreidimensionalen Rekonstruktion zu verbessern. Zum Beispiel können Bögen 440, 442, 444 und 446 abgetastet werden (z. B. von dem Kameraweg durchquert werden), um Querverbindungen zwischen verschiedenen Längen des Kamerawegs bereitzustellen. Daten könnten zum Beispiel nutzbringend aus jedem Bereich erfasst werden, der die Rechengenauigkeit einer dreidimensionalen Rekonstruktion verbessern kann, wie etwa Bereiche, in denen die Länge eines Kamerawegs zwischen zwei Messungen der Oberfläche (z. B. Bildsätze oder Bilddaten) erheblich größer als der Abstand zwischen zwei entsprechenden Oberflächenstellen in dem Weltkoordinatensystem für den Kameraweg ist. Es wird zu schätzen gewusst, dass dies ein Euklidischer Abstand oder jeder geeignete Ersatz für den Abstand sein kann. zum Beispiel kann die Länge des Kamerawegs in Form der Anzahl von Kamerawegsegmenten oder der Anzahl von Kamerawegsegmenten von Schlüsselrahmen zu Schlüsselrahmen zwischen zwei Kamerastellungen im Euklidischen Raum gemessen werden. Als ein anderes Beispiel kann dies Bereiche umfassen, wo es nicht gelingt, dass separate dreidimensionale Messungen für einen allgemeinen Bereich des rekonstruierten dreidimensionalen Modells aufeinander registriert werden, oder wo andere Hinweise auf akkumulierte Fehler in dem globalen Kameraweg vorhanden sein könnten.
-
5 zeigt eine Benutzerschnittstelle, die eine graphische Abfrage nach zusätzlichen Abtastdaten darstellt. Nachdem die Kamera dem vorstehend dargestellten Weg 415 folgt, kann ein Software-Tool verwendet werden, um verschiedene Stellen zu bestimmen, wo zusätzliche Daten nutzbringend erfasst werden könnten, wie etwa zwei Rahmen mit Bilddaten, die einen Kandidaten für einen akkumulierten Fehler in dem Kameraweg relativ zueinander, darstellen, um den akkumulierten Fehler in einem globalen Kameraweg zum Beispiel unter Verwendung jedes der vorstehend beschriebenen Verfahren zu verringern. Ein Monitor 510 kann ein Bild 520 zum Beispiel als eine dreidimensionale Rekonstruktion des abgetasteten Gegenstands anzeigen, und ein Pfeil 530 kann auf dem Monitor 510 angezeigt werden, der anzeigt, wo zusätzliches Abtasten empfohlen wird. Der Benutzer kann dann weiterhin eine Abtastvorrichtung, wie etwa die Abtastvorrichtung 102 von 1, verwenden, um den durch den Pfeil 530 angezeigten Bereich abzutasten. Allgemeiner können Bereiche für zusätzliches Abtasten für einen Benutzer in einer graphischen Benutzerschnittstelle bestimmt werden, die ein aus dem Kameraweg rekonstruiertes dreidimensionales Modell zusammen mit Pfeilen oder anderen Bezeichnungen oder graphischen Anmerkungen, die einen empfohlenen Abtastweg darstellen, anzeigt. Nachdem ein Benutzer einen Kameraweg mit zusätzlichen Abtastungen anreichert, können die sich ergebenden Daten verwendet werden, um Differenzen (d. h. Fehler) in dem globalen Kameraweg, wie hier im Allgemeinen über diese Offenbarung hinweg beschrieben, aufzulösen.
-
6A stellt einen Kameraweg in einem Weltkoordinatensystem dar. Die Kamera startet an einem Startpunkt 610 und folgt, wie durch einen Pfeil 625 angezeigt, in einer Richtung gegen den Uhrzeigersinn einem Weg 620 und kehrt zu einem Endpunkt zurück, der in einem festen Koordinatensystem, wie etwa einem beliebig ausgewählten Weltkoordinatensystem, mit dem Startpunkt 610 zusammenfällt.
-
6B zeigt einen Kameraweg in einem Kamerakoordinatensystem. Wenn eine Kamera den Weg 620 in dem Weltkoordinatensystem durchquert, können sich Fehler in einem berechneten Kameraweg 635 akkumulieren, so dass ein gemessener Endpunkt 640 als sich von dem gemessenen Startpunkt 630 in dem Koordinatensystem weg befindend erscheint, obwohl diese Punkte in dem Weltkoordinatensystem identisch sind. In einem Aspekt können eine oder mehrere Querverbindungen wie die vorstehend unter Bezug auf 4 beschriebenen verwendet werden, um akkumulierte Fehler in dem berechneten Kameraweg 635 zu mildern.
-
7 ist ein Flußdiagramm für ein dreidimensionales Rekonstruktionsverfahren einschließlich der globalen Wegoptimierung für verbesserte Genauigkeit.
-
Das Verfahren 700 kann, wie in Schritt 710 gezeigt, mit der Vorverarbeitung beginnen. Es wird verstanden, dass die hier beschriebene Vorverarbeitung die Verfügbarkeit einer Anzahl von Rahmen von Bilddaten voraussetzt, aus denen ein Kameraweg und ein dreidimensionales Modell rekonstruiert werden können. Die Informationen für die dreidimensionale Rekonstruktion können auf vielfältige Arten erzeugt werden, einschließlich von der Projektion mit strukturiertem Licht kommend, auf Bildabschattung basierender dreidimensionaler Rekonstruktion oder Disparitätsdaten. Disparitätsdaten können durch ein herkömmliches Bild plus ein oder mehrere andere Kanäle oder Seitenkanäle erzeugt werden. Die Vorverarbeitung kann das Bestimmen der Anzahl verfügbarer Rahmen, der Zeitdauer, in der alle die Rahmen genommen wurden, des Überlappungsbetrags zwischen benachbarten Rahmen, die Bestimmung und Eliminierung von Rahmen mit verwischten oder übel verzerren Bildern und jegliche andere geeigneten Verarbeitungsschritte umfassen. Eine Schätzung der Anzahl erwünschter Schlüsselrahmen kann anfänglich während des Vorverarbeitungsschritts bestimmt werden.
-
Wie in Schritt 712 gezeigt, können Schlüsselrahmen aus allen Rahmen von Daten ausgewählt werden, die von einer Abtastvorrichtung entlang eines Kamerawegs erfasst werden. Im Allgemeinen können Rechenkosten gesenkt werden, indem gewisse Daten gespeichert werden und gewisse Berechnungen und Verarbeitungsschritte ausschließlich unter Bezug auf Schlüsselrahmen durchgeführt werden. Im Prinzip sollten diese Schlüsselrahmen in einer Weise miteinander in Beziehung gebracht werden, die eine Charakterisierung eines Kamerawegs, typischerweise durch die Registrierung überlappender dreidimensionaler Daten in jeweiligen Schlüsselrahmen erlaubt. verschiedene Verfahren sind in der Technik bekannt, um eine Teilmenge von Rahmen aus Daten als Schlüsselrahmen auszuwählen, einschließlich von Techniken, die auf einer Bildüberlappung, einem Kamerawegabstand, der Anzahl dazwischenkommender Nicht-Schlüsselrahmen und so weiter basieren. Zum Beispiel können Schlüsselrahmen basierend auf der Zeitdauer ab einem unmittelbar vorhergehenden Schlüsselrahmen ausgewählt werden. Schlüsselrahmen können auch oder stattdessen basierend auf einem Bildüberlappungsbetrag von dem vorhergehenden Schlüsselrahmen und/oder einem Kandidaten für einen folgenden Schlüsselrahmen (wenn verfügbar) ausgewählt werden. Zu wenig Überlappung macht die Rahmen-Rahmen-Registrierung schwierig. Zu viel Überlappung führt zu größeren Anzahlen von Schlüsselrahmen und daher größeren Datenmengen, die analysiert werden müssen. Schlüsselrahmen können basierend auf einer räumlichen Verschiebung ausgewählt werden, was bedeutet, dass für den Überlappungsbetrag von einem Schlüsselrahmen zum nächsten eine Obergrenze auferlegt wird. Schlüsselrahmen können auch basierend auf einer sequentiellen Verschiebung ausgewählt werden. Diese Art von sequentieller Verschiebung könnte zum Beispiel bedeuten, dass jeder zehnte Rahmen als ein Schlüsselrahmen ausgewählt wird. In einem Aspekt können Schlüsselrahmen basierend auf jeder beliebigen Anzahl passender Kriterien ausgewählt werden, während Daten erfasst werden. In einem anderen Aspekt können Schlüsselrahmenpaare post noc bestimmt werden, indem alle möglichen Kandidatenschlüsselrahmen untersucht werden. Alle möglichen Schlüsselrahmenpaare können untersucht werden, und Kandidaten können zum Beispiel entfernt werden, wo es nicht ausreichend Überlappung gibt, um eine Anfügung bzw. Anheftung zu bilden. Noch allgemeiner kann jede Technik, die zum Auswählen einer Teilmenge von Rahmen in einem Datensatz geeignet ist, nutzbringend verwendet werden, um Schlüsselrahmen zur Verarbeitung auszuwählen, um die Rechenkomplexität zu verringern.
-
Wenn einmal alle Schlüsselrahmen ausgewählt wurden, kann eine zusätzliche Verarbeitung durchgeführt werden. Zum Beispiel können volle Bilddaten (Mitten- und Seitenkanalbilder mit voller Auflösung) für jeden Schlüsselrahmen zusammen mit Bildsignaturdaten, Punktwolkenschwerpunktberechnungen und jeglichen anderen gemessenen oder berechneten Daten gespeichert werden, um die Verwendung der Schlüsselrahmen in einem dreidimensionalen Rekonstruktionsverfahren, wie hier beschrieben, zu unterstützen.
-
Wie in Schritt 714 gezeigt, können Kandidatenanfügungen bestimmt werden. Im Allgemeinen ist eine Anfügung eine Beziehung zwischen zwei getrennten dreidimensionalen Messungen aus zwei verschiedenen Kamerapositionen. Wenn einmal eine Anfügung festgelegt ist, können eine Drehung und eine Translation für den Weg einer Kamera zwischen den zwei verschiedenen Kamerapositionen bestimmt werden. In einer komplementären Weise können die dreidimensionalen Messungen aus den zwei verschiedenen Kamerapositionen in einen Abschnitt eines dreidimensionalen Modells kombiniert werden. Kandidatenanfügungen können um jeden Schlüsselrahmen herum, wie etwa von dem Schlüsselrahmen zu einigen oder allen der Rahmen aus Daten zwischen dem Schlüsselrahmen und benachbarten Schlüsselrahmen, analysiert werden. Anfügungen können auf den ursprünglich abgebildeten Rahmen basieren. Es kann auch nützlich sein, zweidimensionale Bilder während der Registrierung und anderen Schritten in einem Anfügungsverfahren zu verformen oder zu verwölben, um die Genauigkeit und/oder Geschwindigkeit jeder Anfügungsberechnung zu verbessern. Anfügungen können auch oder stattdessen auf anderen beobachteten epipolaren Beziehungen in Quellendaten basieren.
-
Wie in Schritt 716 gezeigt, können Anfügungen für den kompletten Kameraweg aus der Gesamtheit von Kandidatenanfügungen ausgewählt werden. Die Auswahl von Anfügungen kann z. B. basierend auf dem kleinsten berechneten Fehler in sich ergebenden Abschnitten des dreidimensionalen Modells berechnet werden.
-
Wie in Schritt 718 gezeigt, kann eine graphische Analyse durchgeführt werden, wobei die Schlüsselrahmen und das zugehörige Anfügen verwendet werden, um einen globalen Weg für die Kamera zu berechnen, der verwendet wird, um ein dreidimensionales Modell zu erhalten. Die graphische Analyse kann jeden Schlüsselrahmen als einen Knoten oder Scheitel und jede Anfügung als einen Rand zwischen einem Paar von Knoten betrachten. Ein Schlüsselrahmen wird als ein Startpunkt ausgewählt. Eine Breiten- oder Tiefen-Erstsuche kann durch die Graphik durchgeführt werden, um Anfügungen zu bestimmen, die den aktuellen Schlüsselrahmen mit einem anderen Schlüsselrahmen verbinden können. Jeder Schlüsselrahmen wird markiert, während die Graphik verarbeitet wird. Eine Prüfung kann durchgeführt werden, um zu erkennen, ob alle Schlüsselrahmen innerhalb der Graphik erreicht wurden. Wenn durch das Durchqueren der Anfügungen in der graphischen Analyse nicht alle Schlüsselrahmen erreicht wurden, wird die größte Teilgraphik bestimmt. Diese Teilgraphik kann untersucht werden, um zu erkennen, ob das gesamte dreidimensionale Bild modelliert werden kann.
-
Es kann sein, dass gewisse Teilgraphiken nicht notwendig sind, um die dreidimensionale Bildgebung zu vollenden. Wenn die Kamera über einem bestimmten Bereich einer Oberfläche eines Objekts verweilte oder wenn die Kamera mehrere Male auf einem Bereich schleifte, kann/können die zugehörigen Teilgraphiken) nicht benötigt werden. Wenn eine getrennte Teilgraphik bestimmt wird, die benötigt wird, um die dreidimensionale Bildgebung abzuschließen, kann eine wahlweise Verzweigung zurück zu Schritt 712 durchgeführt werden. Zum Beispiel kann ein Satz von Schlüsselrahmen ausgewählt worden sein, der kein ausreichendes Anfügen von einem Schlüsselrahmen an den nächsten Schlüsselrahmen hatte. Durch Wählen eines anderen Satzes von Schlüsselrahmen kann ausreichendes Anfügen erzielt werden, um eine vollständige Graphik aller benötigten Aspekte der dreidimensionalen Bildgebung zu erhalten. Ein Schlüsselrahmen, der zu spärlich ist, was bedeutet, dass er nicht ausreichend Anfügungen hat, um zum Aufbauen einer Graphik beizutragen, kann anzeigen, dass ein anderer Satz von Schlüsselrahmen ausgewählt werden sollte. Basierend auf der graphischen Analyse kann ein globaler Weg ausgewählt werden, und die Graphik kann dann analysiert werden, um die Wegberechnung zu optimieren.
-
Wie in Schritt 720 gezeigt, kann eine numerische Optimierung durchgeführt werden, um Fehler in dem berechneten Kameraweg basierend auf verfügbaren Daten für den kompletten Kameraweg, wie etwa Querverbindungen, die zeitlich auseinanderliegende Messungen miteinander verknüpfen, zu verringern. Im Allgemeinen ist es das Ziel einer numerischen Optimierung, einen berechneten Fehler basierend auf einer Fehlerfunktion für den Kameraweg und/oder einem rekonstruierten dreidimensionalen Modell zu minimieren. Eine nützliche Formulierung des Fehlerminimierungsproblems für einen globalen Kameraweg wird nachstehend vorgestellt.
-
Es kann einen Satz von Kandidatenkamerapositionen und Ausrichtungen geben, die auf ein Weltkoordinatensystem bezogen sind. Auf eine Kameraposition und Ausrichtung kann insgesamt als eine Kamerastellung Bezug genommen werden. Es kann ein Satz von gemessenen Rahmen-Rahmen-Kamerabewegungen geben. Auf eine Kameratranslation und Drehung kann insgesamt als eine Kamerabewegung Bezug genommen werden. Auf eine gemessene Kamerabewegung kann in dem Koordinatensystem als eine Kamerastellung Bezug genommen werden. Ein Beispielsatz für drei Schlüsselrahmen kann aus drei Kamerapositionen A, B und C erhalten werden, von denen jede auf einen Ursprung O eines Weltkoordinatensystems im dreidimensionalen Raum bezogen werden kann. Neben der Position dieser Punkte kann eine Kamera an jedem dieser Punkte eine unterschiedliche Ausrichtung haben. Auf eine Kombination der Position und Ausrichtung wird im Allgemeinen als eine Kamerastellung Bezug genommen. zwischen jedem dieser Punkte gibt es Bewegungsparameter einschließlich einer Translation (einer Positionsänderung) und einer Drehung (einer Änderung der Ausrichtung). Die Beziehung zwischen einem Punkt X, der in dem Weltkoordinatensystem als XO ausgedrückt wird, und dem gleichen Punkt XA, der in dem A-Koordinatensystem ausgedrückt wird, kann durch Gleichung (1) gegeben sein: XA = ROAXO + TOA (1)
-
ROA ist die Drehung, die Punkte aus dem Welt- in das A-Koordinatensystem bringt. TOA ist die Translation des Weltkoordinatensystems auf das A-Koordinatensystem. Es sollte verstanden werden, dass Symbole X und T eher einen Vektor als einen Skalar darstellen können, wobei X z. B. x-, y- und z-Koordinatenwerte umfasst. Ferner sollte verstanden werden, dass das Symbol R eine Matrix darstellen kann. Die Gleichungen (2) und (3) können in ähnlicher Weise jeweils die Transformation zwischen dem Welt- und den B- und C-Koordinatensystemen darstellen: XB = ROBXO + TOB (2) XC = ROCXO + TOC (3)
-
Durch Neuanordnen können die Gleichungen (1) und (2) wie folgt dargestellt werden: XO = R –1 / OA(XA - TOA) = R –1 / OB(XB – TOB) (4)
-
Die Darstellung eines Punkts in einem Kamerakoordinatensystem kann auf den gleichen Punkt in einem anderen Koordinatensystem bezogen werden. Zum Beispiel können wie in den Gleichungen 1–3 Koordinaten eines Punkts X von dem A-Koordinatensystem wie folgt in das B-Koordinatensystem transformiert werden: XB = RABXA + TAB (5)
-
Die Drehung RAB dreht Punkte von dem A- in das B-Koordinatensystem, und TAB ist die Positionsverschiebung des Ursprungs des A-Koordinatensystems in das B-Koordinatensystem.
-
In einer Optimierung kann die Stellung jeder Kamera basierend auf gemessenen Transformationen zwischen Kamerastellungen optimiert werden. Das heißt, eine Anzahl von Kamera-Welt- oder Welt-Kamera-Drehungen und Translationen ROn, und TOn kann durchgeführt werden. Es wird zu schätzen gewusst, dass das Weltkoordinatensystem beliebig ist, und eine dieser Transformationen kann praktischerweise eine Identitätsrotation mit Nulltranslation sein, oder es kann eine Übertragung mit konstanter Bewegung auf alle Kamerastellungen angewendet werden, ohne die zugrundeliegende Optimierung zu verändern.
-
Die Drehungen und Translationen können für viele Kamerapaare gemessen werden. Für die i-te derartige Rahmen-Rahmen-Bewegung sei eine der Kameras des Paars die Kamera A und die andere sei die Kamera B. Dies kann auch als die i-te Anfügung betrachtet werden, welche die Kamerastellungen für A und B betrifft. Sei R i / AB die gemessene Drehung, die Punkte in dem A-System in das B-System bringt, und T i / AB seien die Koordinaten der A-Position, wie in Gleichung (5) in dem B-System ausgedrückt.
-
Die Drehungen und Translationen für alle Kameras ROn und TOn können optimiert werden. Es wird zu schätzen gewusst, dass, während diese Ausdrücke und die folgende Diskussion mit Begriffen von Drehungen und Translationen von den einzelnen Kamerakoordinatensystemen auf ein einziges Weltkoordinatensystem besetzt werden, diese Charakterisierung nicht gedacht ist, um die Allgemeinheit dieser Offenbarung einzuschränken. Eine ähnliche oder komplementäre Analyse kann unter Verwendung der Umkehrung dieser Transformationen oder jeder anderen Transformation oder Sammlung von Transformationen (wenngleich typischerweise nicht notwendigerweise starre Transformationen) durchgeführt werden, die fähig sind, einen Kameraweg durch mehrere Stellungen zu beschreiben. Die Nebenbedingungen für die Kamerabewegung von einer Stellung A in eine andere Stellung B für eine i-te Anfügung oder Beziehung können relativ zu einem Weltkoordinatensystem als Drehungen R i / C,OA und R i / C,OB und Translationen T i / C,OA und T i / C,OB ausgedrückt werden. Diese Beziehung wird ferner durch den Kameraweg von A nach B beschränkt, der wie folgt als eine Drehung und eine Translation ausgedrückt werden kann: R i / C,AB = R i / C,OB(R i / C,OA)–1 (6) T i / C,AB = T i / C,OB – R i / C,ABT i / C,OA (7)
-
Es ist zu beachten, dass diese Beziehungen mit ausreichenden Anfügungen ein überbestimmtes System für Bewegungsbedingungsgleichungen bilden können. Unter Verwendung dieser Gleichungen als einen Ausgangspunkt kann die numerische Optimierung für die Rotations- und Translationskomponenten jeder Kamerastellung basierend auf den gemessenen Anfügungen durchgeführt werden.
-
In einer entkoppelten Optimierung können Rotations- und Translationskomponenten unabhängig optimiert werden. Dieser Ansatz kann allgemein verwendet werden, wenn es Bedingungen für eine Komponente (z. B. Drehung) gibt, die nicht von der anderen Komponente abhängen. Wenn ein Kandidatensatz von Kameradrehungen R i / C gegeben ist, können die entsprechenden Kamera-Kamera-Drehungen R i / C,AB berechnet werden, die jeder der gemessenen Kamera-Kamera-Drehungen R i / AB entsprechen. Die entsprechenden Restdrehungen, die in einem fehlerfreien Kameraweg die Identität sein sollten, sind gegeben durch R i / residuum,AB = R i / C,AB (R i / AB )–1. Eine skalarwertige Drehkostenfunktion er, die von den Kandidatenkameradrehungen abhängt, kann berechnet werden.
-
-
In Gleichung (8) gibt logSO(3)(R) einen Achswinkelvektor ν zurück, welcher der Drehung R entspricht. Mit anderen Worten gibt logSO(3)(R) den Vektor ν zurück, der eine Kreuzproduktmatrix [ν]X hat, die der Matrixlogarithmus von R ist.
-
Als nächstes kann eine ähnliche skalarwertige Kostenfunktion für die Translation berechnet werden, die von den Kandidatendrehungen und Translationen abhängt.
-
-
In einem herkömmlichen entkoppelten Ansatz zum Lösen dieser simultanen Gleichungssysteme kann die Rotationsfehlerfunktion in einen Quaternionausdruck umgewandelt werden, um das numerische Problem zur Lösung in ein lineares Gleichungssystem zu übersetzen, wie zum Beispiel in Combining two-view constraints for motion estimation, Govindu V., Proc. of the Int. Conf. an Computer Vision and Pattern Recognition, Bd. 2, S. 218–225 (Juli 2001), beschrieben. Während dieser Ansatz numerisch praktisch sein kann, bringt er nicht die Einheitsnormbedingung für die Quaternionslösung zur Geltung, was zu einer Ungenauigkeit führen kann. Folglich kann in einem Aspekt ein Wegoptimierungsverfahren verbessert werden, indem die Gleichung (8) für die Drehung als nichtlineare Optimierung minimiert wird und die Gleichung (9) für die Translation als nichtlineare Optimierung minimiert wird. In einem anderen Aspekt kann das rechnerisch effizientere lineare Gleichungssystem verwendet werden, um eine Anfangsschätzung für eine iterative Optimierung zu erzeugen, die eine nichtlineare Optimierung verwendet.
-
Allgemeiner kann der vorstehend beschriebene entkoppelte Ansatz dabei scheitern, im Sinne einer maximalen Wahrscheinlichkeit ein wirklich optimales Ergebnis bereitzustellen, wenn er keine Informationen aus dem Translationsanteil der Anfügungen beim Bestimmen der Drehung verwenden kann. Nichtsdestotrotz zielt ein erheblicher Umfang an Arbeit auf diesem Gebiet darauf ab, die Nachteile der entkoppelten Optimierung zu überwinden, wie zum Beispiel in A solution for the registration of multiple 3D point sets using unit quaternations, Beenjemaa R. und F. Shmitt, Proc ECCV 1998, S. 34–50 (Juni 1998); Global registration of multiple 3D point sets via optimization-on-a-manifold, Krishnan S., Lee P. Y., Moore J. B., Venkatasubramanian S., Eurographics Symp. Geometry Processing (2005); und Simultanteous registration of multiple corresponding point sets, Williams J., Bennamoun M., Computer Vision and Image Understanding, Bd. 81, Nr. 1, S. 117–142 (2001), beschrieben.
-
In einem hier offenbarten Aspekt kann stattdessen ein gekoppelter Ansatz zur Optimierung verwendet werden, um den Gesamtfehler in einem Kameraweg zu minimieren. Um eine gekoppelte Optimierung zu erzielen, kann eine Gewichtung verwendet werden, um die Beiträge von Rotations- und Translationskomponenten zu einer kombinierten Kostenfunktion abzugleichen:
-
Mehrere Ansätze können verwendet werden, um den relativen Beitrag von Translationen und Drehungen zu gewichten. In einer Ausführungsform werden die Gewichte als Matrizen ausgedrückt, wobei verschiedene Anfügungen basierend auf einer Anzahl von Faktoren verschiedene Gewichtungen erhalten. Zum Beispiel können die Gewichte auf der Anzahl von Punkten in einer Anfügung (z. B. dem gemeinsamen Inhalt), der Qualität einer bestimmten dreidimensionalen Messung und/oder jeglichen anderen Faktoren, welche die bekannte Zuverlässigkeit einer Anfügung beeinflussen, basieren. In einem Ansatz können die Gewichtsmatrizen auch den Anisotropiefehler in den einzelnen gesammelten Punkten, wie etwa aufgrund der Erfassung von Tiefeninformationen aus Disparitätsmessungen, berücksichtigen, was zu einer Meßgenauigkeit führt, die mit dem Abstand von der Kamera variiert.
-
In manchen Fällen kann die Gleichung (10) umformuliert werden, so dass die Rotations- und Translationsgewichte für jede Anfügung entkoppelt werden (d. h. W
i / C ist blockdiagonal). Insbesondere kann dies in dem Fall passieren, in dem die Bewegungsanfügungen aus dreidimensionalen Punktentsprechungen mit Isotropiepunktfehler rückgewonnen werden. In diesem Fall kann die optimale Lösung für eine gegebene Anfügung i zwischen Stellungen A und B die von der Stellung A gesehene Punktwolke mit der von der Stellung B gesehenen in Entsprechung bringen. Wenn
jeweils die Positionen der Mitte der Punktwolke in den A- und B-Systemen sind, dann wird r
i / t in Gleichung (10) basierend auf der Kandidatenkamerastellung durch die Restverschiebung zwischen den Punktwolkenmitten ersetzt. Diese letztere Restverschiebung kann ausedrückt werden als:
Die Gleichung (10) kann dann umformuliert werden als:
-
Im Allgemeinen können durch Minimieren von Gleichung (10) sowohl Rotationsfehler als auch Translationsfehler gleichzeitig minimiert werden. Die Gewichtsmatrizen können zum Beispiel gemäß „First Order Error Propagation of the Procrustes Method for 3D Attitude Estimation" von Leo Dorst, IEEE Transactions an Pattern Analysis and Machine Intelligence, Bd. 27, Nr. 2, Februar 2005, S. 221–9, die hierin insgesamt durch Verweis aufgenommen ist, gewählt werden. Wenn einmal ein konsistenter Satz von Bewegungsparametern erzeugt wurde, kann das dreidimensionale Modell aktualisiert werden.
-
Wenn der Gesamtfehler oder ein Teil des Fehlers minimiert wurde, kann der sich ergebende Wert ausgewertet werden. Der Eichzustand der Abtastvorrichtung und zugehöriger Ausrüstung kann basierend auf den minimierten Fehlerwerten ausgewertet werden. Wenn ein minimierter Fehler jenseits eine gewisse Schwelle fällt, dann kann eine Eichung für die Abtastvorrichtung und die zugehörige Hardware empfohlen werden. Der Schwellwert kann auf der spezifischen Abtastvorrichtungs-Hardwareausrüstung empirisch bestimmt werden oder kann für ein gegebenes System mit der Zeit experimentell erlernt werden. Wenn ein System neu ist oder frisch abgeglichen wurde, können minimierte Erwartungsfehlerwerte erhalten werden. Wenn minimierte Fehlerwerte von diesen Erwartungswerten abweichen, kann eine Eichzustandsauswertungsmarkierung gesetzt werden, die anzeigt, dass das Tool geeicht werden sollte. Folglich kann in einem Aspekt eine gekoppelte (oder entkoppelte) Fehlerfunktion verwendet werden, um eine Eichung zu überprüfen und zu bestimmen, wann die Neueichung einer Vorrichtung angemessen ist.
-
Wie in Schritt 722 gezeigt, kann das Überabtasten durchgeführt werden, um ein dreidimensionales Modell mit Daten von Nicht-Schlüsselrahmen anzureichern. Im Allgemeinen kann das Überabtasten jede Technik zum Hinzufügen von Daten zu einem Ergebnis umfassen. Während zum Beispiel die vorstehend beschriebene globale Optimierung sich allgemein auf die Optimierung zwischen Schlüsselrahmen in einem zusammenhängenden Kameraweg bezieht, kann das sich ergebende optimierte dreidimensionale Modell ergänzt werden, indem Nicht-Schlüsselrahmen mit einem oder mehreren nahegelegenen Schlüsselrahmen in einer Weise registriert werden, die kleine lokale Rekonstruktionsflecken erzeugt, die zusätzliche dreidimensionale Details enthalten, die aus Nicht-Schlüsselrahmen verfügbar ist. Oder das Überabtasten kann durchgeführt werden, indem der entsprechende Kameraweg für Nicht-Schlüsselrahmen entsprechend einem global optimierten Weg für die Schlüsselrahmen korrigiert wird. Folglich kann die Überabtastung in einem Aspekt allgemeiner als jede Verwendung optimierter Daten verstanden werden, um zugehörige nicht optimierte Daten in einen Kameraweg oder ein dreidimensionales Modell aufzunehmen.
-
8 zeigt ein Rekonstruktionsverfahren 800 unter Verwendung der vorstehend beschriebenen numerischen Optimierung. In einem Aspekt kann diese Optimierungstechnik nutzbringend angewendet werden, um Fehler in einem Kameraweg zu minimieren, in dem räumliche Verbindungen zwischen nicht sequentiellen Kamerastellungen (oder entsprechenden Datensätzen, die verwendet werden, um dreidimensionale Oberflächendaten wiederherzustellen) bestimmt werden können. Wenn zum Beispiel ein Abtastweg eine bukkale Oberfläche abdeckt, der eine okklusale oder linguale Oberfläche folgt, könnten viele räumliche Verbindungen zwischen nicht zusammenhängenden Kamerawegsegmenten mit jeder Oberfläche in Verbindung gebracht werden. Unter diesen Bedingungen kann eine globale Optimierung die Genauigkeit einer dreidimensionalen Rekonstruktion durch Verringerung von Fehlern in den Bewegungsschätzparametern für den Kameraweg erheblich verbessern. Es versteht sich, dass das offenbarte Verfahren auch oder stattdessen in einem Computerprogramm, einem Computerprogrammprodukt oder einer Vorrichtung, die jedes beliebige der Vorstehenden verkörpert, ausgeführt werden kann.
-
Wie in Schritt 802 gezeigt, kann das Verfahren mit dem Erfassen von Datensätzen, wie etwa einem Datensatz von einer Oberfläche eines Dentalobjekts mit einem Handabtastgerät, aus jeder einer Folge von Stellungen entlang eines Kamerawegs beginnen, wodurch eine Vielzahl von Datensätzen bereitgestellt wird. Das Handabtastgerät kann zum Beispiel die vorstehend beschriebene Videoabtastvorrichtung sein. Das Handabtastgerät kann stattdessen jede andere Art von Handabtastgerät umfassen, das für das intraorale Abtasten von Zähnen geeignet ist, wie etwa eine Laufzeitabtastvorrichtung, eine Strukturlichtabtastvorrichtung und so weiter. Die Datensätze können alle entsprechenden Daten sein, die für jede Kamerastellung erfasst werden, die verwendet werden, um dreidimensionale Daten rückzugewinnen.
-
Es sollte sich verstehen, dass der Kameraweg in diesem Zusammenhang einem physischen Kameraweg entsprechen kann, der den tatsächlich von einer Abtastvorrichtung während einer Abtastung genommenen Weg beschreibt, oder der Kameraweg auch oder stattdessen einen virtuellen Kameraweg umfassen kann, der aus mehreren verschiedenen physischen Kamerawegen oder anderen virtuellen Kamerawegen, die einander schneiden, gebildet wird. Ein derartiger virtueller Kameraweg kann immer erzeugt werden, wenn Stellungen von zwei oder mehr physischen Wegen in einem globalen Koordinatensystem verknüpft werden können, wie es zum Beispiel durch dreidimensionales Registrieren von zwei verschiedenen Abtastungen des gleichen physischen Gegenstands etabliert ist. Die Verwendung virtueller Kamerawege kann zum Beispiel besonders nützlich sein, wenn aus Daten, die während zwei oder mehrerer unterbrochener Abtastsitzungen erfasst werden, eine große Abtastung, wie etwa eine vollständige Bogenabtastung, erzeugt wird. Unter diesen Bedingungen kann die globale Optimierung eines virtuellen Kamerawegs verwendet werden, um die Konsistenz der kombinierten Daten in einem globalen Koordinatensystem zu verbessern.
-
Wie in Schritt 804 gezeigt, kann jede einzelne der Stellungen in der Abfolge von Stellungen durch eine räumliche Verbindung, wie etwa Bewegungsschätzparameter oder andere Kameraweginformationen, mit einer vorhergehenden Stellung und einer nächsten Stellung in Verbindung gebracht werden. Es sollte sich auch verstehen, dass, während ein System den Kameraweg aus dreidimensionalen Messungen an jeder Kameraposition und Ausrichtung erschließen kann, der Kameraweg auch oder stattdessen unter Verwendung eines Hardware-basierten Positionsbestimmungssystems basierend z. B. auf Beschleunigungsmessern, einem Geopositionsbestimmungssystem, externen Positionssensoren, Messwertgebern in einem Gelenkarm oder jeder anderen Kombination von Sensoren und Techniken, die zum Erfassen der Kameraposition und/oder Ausrichtung mit ausreichender Genauigkeit für die dreidimensionale Rekonstruktion geeignet sind, erhalten werden kann.
-
Diese räumlichen Verbindungsdaten spiegeln den physischen Kameraweg in der Reihenfolge, in der Daten erfasst wurden, wider, wodurch mehrere räumliche Verbindungen bereitgestellt werden, die den Kameraweg während des Erfassungsverfahrens kennzeichnen. Die Abfolge von Stellungen kann zum Beispiel, wie vorstehend allgemein beschrieben, aus Schlüsselrahmen (oder aufeinanderfolgenden Schlüsselrahmenpaaren) bestehen, wobei zusätzliche Datensätze aus einer oder mehreren zusätzlichen Stellungen zwischen jedem aufeinanderfolgenden Schlüsselrahmenpaar erfasst werden. Schlüsselrahmen können nutzbringend verwendet werden, um z. B. die Rechenkomplexität der Wegoptimierung zu verringern, während ein zusammenhängender Kameraweg aus sequentiellen Stellungen beibehalten wird. Nachdem die Wegoptimierung vollständig ist, können basierend auf dem einen oder den mehreren zusätzlichen Datensätzen und der einen oder den mehreren zusätzlichen Stellungen zwischen Schlüsselrahmen zusätzliche dreidimensionale Daten hinzugefügt werden. Wie vorstehend beschrieben, können Schlüsselrahmen unter Verwendung einer Metrik, um eine Qualität einer sich ergebenden dreidimensionalen Rekonstruktion, eine Qualität der geschätzten Bewegungsparameter zwischen Stellungen, einen Überlappungsgrad in dem abgetasteten Gegenstand auszuwerten, einer graphischen Analyse oder einer anderen nützlichen Technik oder Metrik, aus einem größeren Satz an Stellungen ausgewählt werden.
-
Wie in Schritt 806 gezeigt, kann wenigstens eine nicht sequentielle räumliche Verbindung zwischen zwei Nicht-Sequentiellen der Stellungen basierend auf dem Datensatz für jede der zwei nicht sequentiellen Stellungen bestimmt werden. Somit können zum Beispiel zwei Datensätze von einem bukkalen und lingualen Abtastsegment basierend auf der Kameraposition, den aus den jeweiligen Datensätzen rückgewonnen dreidimensionalen Daten oder irgendwelchen anderen während eines Abtastverfahrens erfassten anderen Daten aufeinander bezogen werden. In einem Aspekt kann eine Metrik, wie etwa ein Verhältnis eines räumlichen Abstands zwischen zwei Datensätzen zu der Länge eines dazwischen kommenden Kamerawegs, verwendet werden, um Kandidaten für nicht sequentielle räumliche Verbindungen zu bestimmen. Folglich kann/können die nicht sequentielle/n räumliche/n Verbindung/en zwei der Stellungsabfolgen, die durch eine erheblich größere Entfernung entlang des Kamerawegs als entlang der Oberfläche des Dentalobjekts getrennt sind, in Verbindung bringen. Dies kann auf dem Datensatz für jede der zwei nicht sequentiellen Stellungen basieren, wie etwa der Verwendung von Kamerastellungsdaten, um eine Oberflächenposition zu bestimmen oder durch Bestimmen einer Überlappung in den rekonstruierten dreidimensionalen Daten, die unter Verwendung des Datensatzes für zwei nicht sequentielle Stellungen erhalten werden. Dies kann auch das Anzeigen eines Bereichs für eine oder mehrere Kandidatenverbindungen auf einer Benutzerschnittstelle und das Empfangen einer ergänzenden Abtastung des Bereichs, wie vorstehend zum Beispiel unter Bezug auf 5 beschrieben, umfassen.
-
Wie in Schritt 808 gezeigt, kann eine globale Bewegungsoptimierung auf dem Kameraweg durchgeführt werden, um einen Fehler zwischen den mehreren räumlichen Verbindungen und der wenigstens einen nicht sequentiellen räumlichen Verbindung zu minimieren, wodurch ein optimierter Kameraweg bereitgestellt wird. Dabei kann zum Beispiel jede der vorstehend beschriebenen Optimierungstechniken verwendet werden. Allgemeiner kann dies jede Technik zur Minimierung von Fehlern in Bewegungschätzparametern, die als eine Funktion einer oder mehreren Drehungen und/oder Translationen, und/oder einer gekoppelten Drehung und Translation und/oder einer entkoppelten Drehung und Translation ausgedrückt werden, und/oder jede Technik zum Abgleichen der dreidimensionalen Daten, die aus den Datensätzen in einem globalen Koordinatensystem rekonstruiert werden, oder zum Verbessern einer Konsistenz der Abfolge von Stellungen entlang des Kamerawegs in dem globalen Koordinatensystem umfassen.
-
Wie in Schritt 810 gezeigt, kann ein dreidimensionales Modell des Dentalobjekts unter Verwendung bekannter Techniken basierend auf dem optimierten Kameraweg und der Vielzahl von Datensätzen rekonstruiert werden.
-
Folglich haben die Anmelder durch Beobachten der tatsächlichen Kamerawege, die für intraorales Abtasten von Zähnen typisch sind, verbesserte Techniken zur Fehlerminimierung ausgearbeitet, wenn der Kameraweg für die dreidimensionale Rekonstruktion verwendet wird. Insbesondere haben die Anmelder durch die Beobachtung, dass intraorales Abtasten häufig eine Anzahl benachbarter relativ gerader globaler Wege, wie etwa für linguale, okklusale und bukkale Oberflächen (wie teilweise durch den relativ beschränkten Mundzugang zu relativ großen Gebissoberflächen bestimmt) verwendet, und durch die Beobachtung, dass das intraorale Abtasten regelmäßig zu früheren Abtastpositionen zurückkehrt, eine Optimierungstechnik ausgearbeitet, welche die räumliche Beziehung zwischen gewissen nicht aufeinanderfolgenden Datenrahmen ausnutzt. Der beschriebene Ansatz löst das Problem widersprüchlicher Daten für lokale Messungen unter Verwendung einer Fehlerminimierungstechnik, die sich mit dem Kameraweg einschließlich des Zusammenhangs zwischen nicht aufeinanderfolgenden Datenrahmen global beschäftigt. Dies kann insbesondere für Abtastungen nutzbringend sein, die das Zahnfleisch, Weichteile, vollständige Bögen, kieferorthopädische Komponenten und ähnliches abdecken, wo das Abtasten einer großen Fläche typischerweise mehrere Durchläufe über verschiedene Bereiche der abgetasteten Oberfläche mit sich bringt.
-
Es versteht sich, dass zahlreiche Änderungen, Modifikationen, Neuanordnungen, Weglassungen und Hinzufügungen an dem vorstehend beschriebenen Verfahren möglich sind, ohne vom Schutzbereich dieser Offenbarung abzuweichen. Während zum Beispiel 8 ein Verfahren darstellt, in dem räumliche Verbindungen bestimmt werden, nachdem der Kameraweg zusammengesetzt ist, kann dies erheblich abweichen, wenn zum Beispiel aus den in jeder Stellung erfassten dreidimensionalen Daten Stellungs-Stellungs-Verbindungen gefolgert werden. Alle derartigen Änderungen, wie sie für jemanden mit gewöhnlichen Kenntnissen der Technik offensichtlich sind, sollen in den Schutzbereich dieser Offenbarung fallen.
-
Es wird deutlich sein, dass jedes, das vorstehende System und/oder die Verfahren, in Hardware, Software oder jeder Kombination aus diesen, die für die hier beschriebenen Datenerfassungs- und Modellierungstechnologien geeignet sind, realisiert werden kann. Dies umfasst die Realisierung in einem oder mehreren Mikroprozessoren, Mikrokontrollern, eingebetteten Mikrokontrollern, programmierbaren digitalen Signalprozessoren oder anderen programmierbaren Vorrichtungen zusammen mit internem und/oder externem Speicher. Dies kann auch oder stattdessen eine oder mehrere anwendungsspezifische integrierte Schaltungen, programmierbare Gate-Arrays, programmierbare logische Anordnungskomponenten oder jede andere Vorrichtung oder Vorrichtungen umfassen, die konfiguriert werden können, um elektronische Signale zu verarbeiten. Es wird ferner deutlich sein, dass eine Realisierung computerausführbaren Code umfassen kann, der unter Verwendung einer strukturierten Programmiersprache, wie etwa C, einer objektorientierten Programmiersprache, wie etwa C++ oder jeder anderen höheren oder niedrigeren Programmiersprache (einschließlich Assemblersprachen, Hardwarebeschreibungssprachen und Datenbankprogrammiersprachen und Technologien), erzeugt wird, der gespeichert, kompiliert oder übersetzt werden kann, um auf einer der vorstehenden Vorrichtungen ebenso wie heterogenen Kombinationen von Prozessoren, Prozessorarchitekturen oder Kombinationen unterschiedlicher Hardware und Software zu laufen. Folglich wird hier in einem Aspekt ein Computerprogrammprodukt offenbart, das computerausführbaren Code aufweist, der, wenn er auf einem oder mehreren Rechenvorrichtungen ausgeführt wird, irgendwelche und/oder alle der vorstehend beschriebenen Schritte ausführt. Gleichzeitig kann die Verarbeitung über Vorrichtungen, wie etwa eine Kamera und/oder einen Computer und/oder eine Fertigungseinrichtung und/oder ein Dentallabor und/oder einen Server in einer Anzahl von Weisen verteilt werden, oder die gesamte Funktionalität kann in eine dedizierte unabhängige Vorrichtung integriert werden. Alle derartigen Permutationen und Kombinationen sollen innerhalb den Schutzbereich der vorliegenden Offenbarung fallen.
-
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 Patentliteratur
-
- US 7372642 A [0042, 0053]
-
Zitierte Nicht-Patentliteratur
-
- IEEE 802.11 [0047]
- Govindu V., Proc. of the Int. Conf. an Computer Vision and Pattern Recognition, Bd. 2, S. 218–225 (Juli 2001) [0084]
- A solution for the registration of multiple 3D point sets using unit quaternations, Beenjemaa R. und F. Shmitt, Proc ECCV 1998, S. 34–50 (Juni 1998) [0085]
- Global registration of multiple 3D point sets via optimization-on-a-manifold, Krishnan S., Lee P. Y., Moore J. B., Venkatasubramanian S., Eurographics Symp. Geometry Processing (2005) [0085]
- Simultanteous registration of multiple corresponding point sets, Williams J., Bennamoun M., Computer Vision and Image Understanding, Bd. 81, Nr. 1, S. 117–142 (2001) [0085]
- „First Order Error Propagation of the Procrustes Method for 3D Attitude Estimation” von Leo Dorst, IEEE Transactions an Pattern Analysis and Machine Intelligence, Bd. 27, Nr. 2, Februar 2005, S. 221–9 [0089]