DE19983341B4 - Verfahren und Einrichtung zur Erfassung stereoskopischer Bilder unter Verwendung von Bildsensoren - Google Patents

Verfahren und Einrichtung zur Erfassung stereoskopischer Bilder unter Verwendung von Bildsensoren Download PDF

Info

Publication number
DE19983341B4
DE19983341B4 DE19983341T DE19983341T DE19983341B4 DE 19983341 B4 DE19983341 B4 DE 19983341B4 DE 19983341 T DE19983341 T DE 19983341T DE 19983341 T DE19983341 T DE 19983341T DE 19983341 B4 DE19983341 B4 DE 19983341B4
Authority
DE
Germany
Prior art keywords
image
target object
light
lines
structured light
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE19983341T
Other languages
English (en)
Other versions
DE19983341T1 (de
Inventor
Walter J. Chandler Mack
Jean-Charles Phoenix Korta
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE19983341T1 publication Critical patent/DE19983341T1/de
Application granted granted Critical
Publication of DE19983341B4 publication Critical patent/DE19983341B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/207Image signal generators using stereoscopic image cameras using a single 2D image sensor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/246Calibration of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/254Image signal generators using stereoscopic image cameras in combination with electromagnetic radiation sources for illuminating objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals

Abstract

Einrichtung zum Aufnehmen eines dreidimensionalen Abbilds eines Zielobjekts einschließlich seiner Oberflächenstruktur (Textur), aufweisend:
eine eine Beugungseinrichtung (17) aufweisende Lichtquelle (16) zum Erzeugen eines auf das Zielobjekt gerichteten strukturierten Lichts;
ein mit der Beugungseinrichtung (17) gekoppeltes Filter (18) zum Codieren des auf das Zielobjekt gerichteten strukturierten Lichts derart, daß benachbarte Teile des strukturierten Lichts voneinander unterscheidbar sind; und
eine Mehrzahl von Bildaufnahmeeinrichtungen (22–24) zum Aufnehmen von Bildern des Zielobjekts, wobei die Mehrzahl von Bildaufnahmeeinrichtungen umfaßt:
eine erste monochrome Bildaufnahmeeinrichtung (22) zum Aufnehmen eines ersten Abbilds wenigstens eines Teils der Oberfläche des Zielobjekts;
eine zweite monochrome Bildaufnahmeeinrichtung (23) zum Aufnehmen eines zweiten Abbilds wenigstens eines Teils der Oberfläche des Zielobjekts und
wenigstens eine Farbbildaufnahmeeinrichtung (24) zum Aufnehmen von Oberflächenstrukturdaten des Zielobjekts,
wobei das erste und das zweite Abbild verwendet werden, um ein dreidimensionales Abbild wenigstens eines Teils des Zielobjekts zu erzeugen.

Description

  • Die Erfindung bezieht sich auf Einrichtungen und Verfahren eines dreidimensionalen Abbilds eines Zielobjekts einschließlich seiner Oberflächenstruktur (Textur).
  • Die Bildung dreidimensionaler (3-D)Modelle von Objekten macht es möglich, daß die Modelle unter vielen unterschiedlichen Winkeln betrachtet werden können, anders als bei zweidimensionalen (2-D)Modellen, die nur unter einem Winkel betrachtet werden können. Ein Verfahren zur Erzeugung von 3-D-Modellen besteht darin, eine Vielzahl von Bildern der realen Objekte aus unterschiedlichen Positionen aufzunehmen und die Unterschiede in den Objektprojektionen auszunutzen. Diese Vielzahl von Bildern kann geeignet sein, 3-D-Modelle des Objekts zu erzeugen. Sobald ein 3-D-Modell erzeugt worden ist, kann das 3-D-Modell in eine virtuelle Welt gesetzt und dort, wie etwa bei Fotos oder Fernsehen, mit anderen geteilt werden. Insbesondere wird die kommerzielle Lebensfähigkeit von 3-D-Modellen von der Unterhaltungs-, Werbe- und Simulationsindustrie gefordert.
  • Die Wünschbarkeit und Vorteile der Erzeugung von 3-D-Modellen von Objekten sind leicht zu verstehen, und viele Tools wurden zur Erzeugung von 3-D-Modellen entwickelt. Beispielsweise ermöglicht 3-D-Software, wie 3-D-Studio MAX von Kinetix, San Francisco, Kalifornien, dem Benutzer die Erzeugung von 3-D-Modellen ähnlich der Art, wie ein Künstler einen Klumpen Ton zum Modellieren eines Objekts brauchen würde, nur digital. Beispielsweise schmelzen Tools, wie "Metaballs", die Kugeln mit zugehörigen Einflußparametern sind, zur Bildung des gewünschten Objekts zusammen. Für die detaillierteren Objekte können "Polygone", wie Dreiecke oder Quadrate, die einen kleinen Abschnitt des zu erzeugenden Objekts definieren, verwendet werden. Ein anderes Beispiel sind "splines", welche einen Oberflächenbereich eines erzeugenden Objekts definierende Kurven sind. Einzelheiten der Erzeugung von 3-D-Modellen mittels Software können bei George Maestri, "Digital Character Animation" (New Riders Publishing, 1996) gefunden werden. Aufgrund der Komplexität und Schwierigkeit der Erzeugung von 3-D-Modellen mit Software wurden viele abgeschreckt, ausgenommen solche mit speziellen Kenntnissen auf dem Sachgebiet. Beispielsweise können Benutzer sowohl künstlerische als auch technische Qualifikationen benötigen. Außerdem können Jahre der Erfahrung not wendig sein, bevor die Techniken der 3-D-Modellierung gemeistert werden können. Aufgrund dieser Hindernisse ist der Durchschnittsverbraucher in der Regel nicht in der Lage, die 3-D-Software zum Generieren von 3-D-Modellen zu verwenden.
  • Die Erzeugung von 3-D-Daten ist relativ langsam und, wie oben erwähnt, für einen Durchschnittsverbraucher zeitraubend und beschwerlich. Die Verwendung eines 3-D-Abbildungsgerätesystems, das Bilder von Objekten, die nachfolgend zum Erzeugen von 3-D-Daten verwendet werden können, aufnehmen kann, ermöglicht Benutzern ohne spezielle Befähigung die rasche und einfache Generierung von 3-D-Modellen von reellen Objekten. Demgemäß ist die vorliegende Erfindung auf ein Verfahren und eine Einrichtung zur Erfassung stereoskopischer Bilder mit Abbildungsgeräten gerichtet, die nachfolgend zum Erzeugen von 3-D-Daten verwendet werden können, die ihrerseits zum Erzeugen von 3-D-Modellen von Zielobjekten benutzt werden.
  • Aus der DE 195 16 656 A1 ist ein Verfahren zum Erfassen der dreidimensionalen Form von Ojekten bekannt, bei dem das Objekt strukturiert beleuchtet wird, Abbilder des Objekts mit Hilfe von wenigstens drei Aufnahmeeinrichtungen aus verschiedenen Positionen heraus aufgenommen und die Bildinformationen verwendet werden, um ein dreidimensionales Abbild zu erzeugen. Ein ähnliches Verfahren ist bekannt aus H. Ernst, „Einführung in die digitale Bildverarbeitung: Grundlagen und industrieller Einsatz mit zahlreichen Beispielen", Franzis-Verlag GmbH, 1991, Seiten 278–288. Aus der Offenlegungsschrift DE 42 40 940 A1 ist ein Verfahren zum Erfassen eines dreidimensionalen Abbilds einer Figur mit Hilfe einer rechnergestützten Verarbeitung der von mehreren im Raum verteilt angeordneten Kameras erfaßten Bilder bekannt. Der vom Rechner ermittelte, die Figur darstellende Datensatz wird an eine Fertigungsmaschine übertragen, die zur Nachbildung der Figur dient.
  • Aus dem US-Patent 4,525,858 ist ein Verfahren zum Interpretieren von Interferenzmustern von Abbildern bekannt, wobei die Muster Interferogramme interferierenden Lichtes oder Moiré-Muster darstellen, die erzeugt werden, wenn ein Objekt durch ein Gitter beleuchtet wird. Die Druckschrift beschreibt eine Transformation eines optisch erzeugten zweidimensionalen Interferenzmusters, das für eine dreidimensionale Oberfläche repräsentativ ist, wobei das Interferenzmuster in ein elektronisches Abbild transformiert wird.
  • Aufgabe der Erfindung ist es, das Aufnehmen eines dreidimensionalen Abbilds eines Zielobjekts zu verbessern, indem zusätzlich auch die Oberflächenstruktur erfaßt wird.
  • Diese Aufgabe wird erfindungsgemäß durch eine Einrichtung mit den Merkmalen des Anspruchs 1, eine Einrichtung mit den Merkmalen des Anspruchs 11, ein Ver fahren mit den Merkmalen des Anspruchs 18 bzw. ein Verfahren mit den Merkmalen des Anspruchs 29 gelöst.
  • Vorteilhafte und/oder bevorzugte Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
  • Im folgenden wird die Erfindung anhand von in den Zeichnungen dargestellten bevorzugten Ausführungsformen näher beschrieben, wobei:
  • 1 ein Ausführungsbeispiel eines dreidimensionalen (3-D)Abbildungsgerätesystems darstellt;
  • 2 ein anderes Ausführungsbeispiel eines 3-D-Abbildungsgerätesystems zeigt;
  • 3a ein stereoskopisch abzubildendes Zielobjekt darstellt, 3b ein stereoskopisches Bild des Zielobjekts zeigt, 3c extrahierte 3-D-Daten darstellt und 3d die auf 3-D-Daten gebildete Oberflächenstruktur darstellt;
  • 4 ein Verfahrensbeispiel zum Erfassen struktureller Lichtdaten eines Zielobjekts unter Verwendung sichtbarer Lichtquellen und Texturdaten darstellt;
  • 5 ein Verfahrensbeispiel zum Erfassen strukturierter Lichtdaten eines Zielobjekts unter Verwendung nicht-sichtbarer Lichtquellen- und Texturdaten darstellt;
  • 6 ein Beispiel eines Kalibrierungsverfahrens zeigt;
  • 7 ein nach einem ausgewählten Koordinatensystem kalibriertes Abbildungsgerät darstellt;
  • 8a ein Beispiel eines Kalibrierungszielobjekts und 8b8d Ansichten des Kalibrierungszielobjekts aus der Perspektive des Abbildungssensors bei dessen Kalibrierung darstellt;
  • 9 ein Ausführungsbeispiel eines Instruments zum Bestimmen einer Pinhole-Länge eines zu kalibrierenden Abbildungsgeräts ist;
  • 10 ein anderes Ausführungsbeispiel eines Kalibrierungszielobjekts ist;
  • 11 ein Ausführungsbeispiel eines 3-D-Datenextraktionsverfahrens aus einem stereoskopischen Bild eines Objekts darstellt und
  • 12 eine andere Ansicht eines Beispiels für ein 3-D-Daten-Extraktionsverfahren zeigt.
  • Bei der Erzeugung dreidimensionaler (3-D)Modelle von realen Objekten werden mehrere Bilder der realen Objekte aus unterschiedlichen Positionen aufgenommen, um die Unterschiede in den Objektprojektionen auszunutzen. Die Vielzahl von Bildern kann beispielsweise durch ein Abbildungsgerät, wie einen Camcorder oder eine Digitalkamera mit einem Abbildungs- bzw. Bildsensor aufgenommen werden. Der Bildsensor weist in der Regel eine lichtempfindliche Pixelmatrix auf, wobei jedes Pi xel einen auf das Pixel fallenden Lichtstrahl erfaßt. Daher ist die Kombination der Pixel innerhalb der Pixelmatrix bzw. des Pixelfeldes in der Lage, ein Bild aus dem einfallenden Licht zu erfassen. Generell sollte eine Oberfläche des in ein 3-D-Modell zu rekonstruierenden Objekts in wenigstens zwei Bildern vorhanden sein, da die Rekonstruktion auf dem Oberflächenschnitt der beiden Bilder basiert. Diese mindestens zwei Bilder (d.h. stereoskopische Bilder) des Objekts mit den oben genannten Charakteristika sind geeignet zur nachfolgenden Verarbeitung in 3-D-Modelle.
  • Bei der Aufnahme eines stereoskopischen Bildes eines Objektes sind einige Vorgaben zu berücksichtigen. Zunächst sollte das Objekt nicht seine Position oder seine Form ändern, während die Bilder aufgenommen werden. Als zweites sollte das Objekt so ausgebildet sein, daß die Merkmale seiner Oberfläche für alle Bilder identisch angeordnet sind. Dies trifft nicht zu für spiegelnde Reflexionen, bei denen sich die Merkmalspositionen ändern, wenn der Ort des Aufnahmegeräts geändert wird. Als drittes sollte der Lichtstrahlengang im wesentlichen geradlinig sein, damit die Erfindung in der richtigen Weise funktionieren kann. Mit anderen Worten, die Projektion eines Bildes sollte aufgrund von Änderungen in ihrem Strahlengang nicht verzerrt sein. Beispielsweise sollte kein Glas im Strahlengang des projizierten Lichts sein, da Glas die Tendenz hat, den Lichtstrahlengang zu verändern. Ein Fachmann wird jedoch erkennen, daß ein Bild bezüglich Diskrepanzen kompensiert werden kann, wenn die erwähnten Bedingungen während der stereoskopischen Bilderfassung existieren.
  • 3a3c zeigen ein Beispiel, wie 3-D-Daten von einem Zielobjekt (nachstehend auch Targetobjekt genannt) extrahiert werden. 3a ist das Targetobjekt, in diesem Falle ein Gesicht. Durch Aufnehmen von Bildern des Objekts aus unterschiedlichen Positionen unter Verwendung eines Abbildungsgeräts können Gesicht 33 und Gesicht 34 so aufgenommen werden, wie es in 3b dargestellt ist, die ein stereoskopisches Bild des Gesichts zeigt. Es läßt sich verifizieren, daß sich die Projektion des von dem Abbildungsgerät aufgenommenen Gesichts vorhersehbar ändert, wenn die Position des Abbildungsgeräts geändert wird. Zu beachten ist, daß die von dem Abbildungsgerät aufgenommenen Bilder nur zweidimensionale (2-D) Daten enthalten, da jedes Bild in der Ebene des zweidimensionalen Bildsensors enthalten ist. An einem Schnitt von wenigstens zwei Bildern einer Gesichtsoberfläche aus zwei unterschiedlichen Positionen kann jedoch ein Tiefe-Z-Wert für jeden Punkt in einem Bild gewonnen werden, der einen entsprechenden Punkt in dem anderen Bild in Bezug auf ein beliebiges Koordinatensystem mit X, Y, Z-Koordinaten hat, der beiden Bildsensoren gemeinsam ist. Außerdem können die Positionen der beiden entsprechenden Punkte in den beiden Bildsensoren, ausgedrückt durch X', Y'-Koordinaten in der Bildebene, zur Erzeugung eines 3-D-Punkts (d.h. X, Y, Z-Wert) kombiniert wer den, der einer der Punkte in 3-D-Daten sein kann. Daher sind 3-D-Daten eine Vielzahl von Punkten im 3-D-Raum, identifiziert innerhalb eines Koordinatensystems zum Bilden eines 3-D-Punkt-Bildes des Targetobjekts, von dem ein Beispiel in 3c dargestellt ist. Die Gewinnung des X, Y, Z-Werts eines Punkts im Targetobjekt wird weiter unten beschrieben werden. Beispiel für 3-D-Abbildungsgerätesysteme zum Erfassen stereoskopischer Bilder von Objekten werden jetzt beschrieben werden.
  • 1 zeigt ein Ausführungsbeispiel eines 3-D-Abbildungsgerätesystems. Das dargestellte 3-D-Abbildungsgerätesystem 10 ist mit zwei Abbildungsgeräten (auch Bildaufnahmegeeräte genannt) gezeigt, die zur Vereinfachung des Verständnisses für die Erfindung als linkes Abbildungsgerät 12 und rechtes Abbildungsgerät 13 bezeichnet sind. Die Bezeichnung wird in der ganzen Beschreibung verwendet, wobei jedoch für einen Fachmann beim Lesen der Beschreibung klar ist, daß die Bezeichnung austauschbar ist und daß die Erfindung ferner auch dort anwendbar ist, wo mehr als zwei Abbildungsgeräte verwendet werden, oder unter geeigneten Bedingungen, bei denen nur ein Abbildungsgerät verwendet wird. Jedes Abbildungsgerät 12 und 13 weist einen Bildsensor 14 und 15 auf, der zum Aufnehmen bzw. Erfassen eines Bildes von einem Targetobjekt geeignet ist. Das 3-D-Abbildungsgerätesystem 10 kann ein Rechengerät 19 zur Verarbeitung eines von den Abbildungsgeräten 12 und 13 erfaßten stereoskopischen Bildes in 3-D-Daten aufweisen. Das Rechengerät kann ein Mikroprozessor, eine arithmetische Logikeinheit (ALU) oder irgendein anderes Gerät sein, das Dateninformationen zu verarbeiten vermag. Bei einem Ausführungsbeispiel kann das Rechengerät 19 sogar die 3-D-Daten in Abhängigkeit von der Ausbildung der zugrundeliegenden Software zu 3-D-Modellen verarbeiten. Beispielsweise können 3-D-Daten "trianguliert" werden (d.h. die Objektoberfläche wird durch Bilden von Dreiecken mit jeweils drei Punkten der 3-D-Daten gebildet) unter Verwendung konventioneller Algorithmen, z.B. des Delaunay's Algorithmus. Ein Fachmann wird erkennen, daß andere Algorithmen einschließlich geeigneter geometrischer Strukturen verwendet werden können. Ein Beispiel einer triangulierten Struktur ist in 3d dargestellt. Texturdaten können auf die triangulierte Struktur angewandt werden, beispielsweise durch Verwendung von True Space, einer von Caligary, Mountain View, Kalifornien, kommerziell erhältlichen Software. Generell enthalten Texturdaten Materialinformationen, wie physikalische Oberflächeneigenschaften eines Objekts und können auch Farbinformationen des Objekts enthalten. Alternativ können die Bilder in den Abbildungsgeräten 12 und 13 gespeichert werden, um sie zu einem späteren Zeitpunkt zu verarbeiten, wodurch die Notwendigkeit eines Rechengeräts in dem 3-D-Abbildungsgerätesystem entfällt. Generell wird eine "Kalibrierungs-"Information, wie sie weiter unten beschrieben werden wird, in Bezug auf das 3-D-Abbildungsgerätesystem 10 in einem Speichergerät gespeichert, das Bestandteil des Rechengeräts 19 oder mit letzterem gekoppelt sein kann. In einem 3-D-Abbildungssystem 10, bei dem kein Rechengerät 19 verwendet wird, kann das System 10 ein Speichergerät zum Speichern von Kalibrierungsinformationen enthalten, oder die Kalibrierungsinformationen können separat von dem System sein und eingeführt werden, wenn die stereoskopischen Bilder in 3-D-Daten umgewandelt werden.
  • Das 3-D-Abbildungsgerätesystem 10 kann ferner ein Lichtgerät 16 zum Projizieren eines Ursprungslichtbündels und ein Beugungsgerät 17 zum Aufteilen des Lichtbündels in ein geeignetes Muster von Linien, Gittern, Punkten oder irgendwelchen anderen geometrischen Mustern aufweisen. Beispielsweise kann das Beugungsgerät ein im Handel erhältliches Gerät von Digital Optics Corporation, Charlotte, North Carolina, oder von Rochester Photonics, Rochester, New York, sein. Der Ausdruck "strukturiertes Licht" soll Strukturen mit Linien, Streifen, segmentierten Linien, Gittern, Punkten usw. bedeuten, die von einer Lichtquelle erzeugt werden. Der Zweck für das strukturierte Licht besteht in der Schaffung einer Struktur auf dem Targetobjekt, die von einem Rechengerät leicht erkennbar ist. Mit anderen Worten, es ist für das Rechengerät schwierig, einen Punkt in einem Bild mit dem entsprechenden Punkt in einem anderen Bild allein aufgrund von Informationen, gewonnen aus natürlichen Merkmalen des Targetobjekts in Übereinstimmung zu bringen. Wenn beispielsweise ein menschliches Gesicht das in 3-D zu modellierende Objekt ist und das Auge das in Übereinstimmung zu bringende Merkmal ist, kann das Rechengerät nicht zwischen den beiden Augen in dem anderen entsprechenden Bild oder den anderen Merkmalen unterscheiden. Durch Verwendung strukturierten Lichts können die Konturen des Objekts von einem Rechengerät beispielsweise nach dem Ort der vertikalen Linien leicht in Beziehung gebracht werden. Bei einem Ausführungsbeispiel kann jede vertikale Linie in dem strukturierten Licht codiert werden, um eine vertikale Linie von einer anderen zu unterscheiden. Ein Codieren ist erwünscht, wo die Kontur eines Targetobjekts beispielsweise bewirkt, daß die vertikalen Linien verschmelzen. In diesem Falle kann es sein, daß das Rechengerät durch Springen von einer vertikalen Linie auf eine andere fehlerhaft arbeitet. Durch Vorsehen eines Codes für jede Linie stellt das den Code für die vertikale Linie kennende Rechengerät einen Fehler fest, wenn sich der Code der verfolgten Linie ändert, und es kann in der Lage sein, zurückzuverfolgen, um den Fehler zu korrigieren. Die Linien können unter Verwendung eines geeigneten Filters 18 codiert werden, das beispielsweise mit einem Ende des Beugungsgeräts 17 gekoppelt ist. Der Code kann beispielsweise die Segmentation der vertikalen Linie in ein Muster sein, das sich von den anderen, in enger Nachbarschaft befindli chen vertikalen Linien unterscheidet. Das Filter 18 kann Schlitze aufweisen, die das Emittieren des in vertikale Linien strukturierten Lichts ermöglichen, jedoch Sperrabschnitte in den Schlitzen entsprechend den gewünschten segmentierten Mustern der vertikalen Linien haben.
  • Ein Ausführungsbeispiel der Lichtquelle 16 kann ein Laseremitter sein. Die Lichtquelle 16 und das Beugungsgerät 17 können ein Laserlicht, beispielsweise vertikale Linien auf das Targetobjekt projizieren. Die Beschreibung der vertikalen Linien sollte jedoch keineswegs als den Umfang der Erfindung beschränkend interpretiert werden. Beispielsweise können horizontale Linien in Abhängigkeit von der Orientierung der Kameras verwendet werden. Ferner kann ein Punktgitter oder eine Anordnung segmentierter Linien usw. verwendet werden. 4 zeigt ein Beispiel für das Erfassen eines stereoskopischen Bildes eines Targetobjekts unter Verwendung einer sichtbaren Lichtquelle und Texturdaten. Block 41 stellt ein strukturiertes Licht dar, das auf das Targetobjekt von einer Lichtquelle 16 projiziert wird. Bei Projektion des strukturierten Lichts stellt Block 42 ein stereoskopisches Bild des von den linken 12 und rechten 13 Abbildungsgeräten des 3-D Abbildungsgerätesystems 10 erfaßten Objekts dar. Sobald das stereoskopische Bild des Objekts mit einem strukturierten Licht (d.h. strukturierten Lichtdaten) erfaßt worden ist, stellt Block 43 die abgeschaltete Lichtquelle 16 dar. Block 44 stellt gleichzeitig oder so zeitgleich wie möglich ein Bild dar, das von einem der linken 12 und rechten 13 Abbildungsgeräte zur Gewinnung der Texturdaten aufgenommen wurde. Obwohl Mehrfachbilder von dem linken 12 und rechten 13 Abbildungsgerät zur Gewinnung von Texturdaten aufgenommen werden können, kann ein Einzelbild von einem Abbildungsgerät generell ausreichend sein. Der Grund für die Gleichzeitigkeit liegt in der möglichst engen Abstimmung des stereoskopischen Bildes mit den strukturellen Lichtdaten auf das Bild mit Texturdaten. Zu beachten ist jedoch, daß die Gleichzeitigkeit dann unwichtig wird, wenn das 3-D-Abbildungsgerätesystem 10 und das Targetobjekt relativ stationär sind. Bei einem Ausführungsbeispiel können die Texturdaten außerdem unabhängig von dem stereoskopischen Bild sein, beispielsweise dann, wenn die Texturdaten unter Verwendung konventioneller Methoden computererzeugt werden, ist kein Texturbild erforderlich.
  • Bei einem anderen Ausführungsbeispiel kann die Lichtquelle 16 Licht im infraroten Bereich (allgemein als Licht mit einer Wellenlänge von mehr als 780 nm angesehen) emittieren. In diesem Falle kann der Bildsensor 14, 15 des Abbildungsgeräts 12, 13 so konstruiert sein, daß er die gleichzeitige Erfassung von Texturdaten aus sichtbarem Licht und infraroten, strukturierten Lichtdaten ermöglicht. Die Bildsensoren 14, 15 können so eingerichtet sein, daß sie gleichzeitig sichtbares und infrarotes Licht bei geeigneter Verwendung von Farbfiltern erfassen. Beispielsweise kann ein Bildsensor mit einem 2 × 2 Quadrat-Muster von roten, grünen, blauen (RGB) und infraroten (IR) Pixeln unter Verwendung von kommerziell erhältlichen Farbfiltermatrix (CFA)-Materialien gebildet werden, der die Tatsache ausnutzt, daß diese Materialien fÜr IR-Strahlung durchlässig sind. Durch eine einfache Übereinanderanordnung von zwei CFA-Farben (z.B. R, B), die keine überlappende Durchlässigkeit im sichtbaren Bereich des Spektrums haben, ist es möglich, ein zusammengesetztes Filterelement zu erzeugen, welches das sichtbare Licht blockiert und nur IR durchläßt. Wenn zwei Filter zur Bildung des zusammengesetzten Filters verwendet werden, so hat jedes der beiden Filter ein für sichtbare Strahlung durchlässiges Spektrum, das von dem anderen getrennt ist, so daß es praktisch keine Durchlässigkeit des sichtbaren Lichts durch das resultierende zusammengesetzte Filter aus der Kombination der beiden Filter gibt. Wenn mehr als zwei Filter verwendet werden, so hat jedes Filter ein für sichtbare Strahlung durchlässiges Spektrum derart, daß das resultierende zusammengesetzte Filter im wesentlichen opak (undurchlässig) für sichtbares Licht ist. Dieses zusammengesetzte Filterelement ist daher ein IR-Paß-Filter, da jedes der für das zusammengesetzte Filter verwendeten Komponentenfilter für IR im wesentlichen transparent ist. Das Herstellen der CFAs erfolgt durch photolithographische Methoden, die aus der Halbleiterindustrie bekannt sind. Weitere Informationen über RGB und IR-Bildsensoren können in einer anhängigen Anmeldung mit dem Titel "Infraroter Pixelsensor und Infrarot-Signalkorrektur" gefunden werden.
  • 5 zeigt ein Beispiel für die Aufnahme struktureller Lichtdaten eines Targetobjekts unter Verwendung einer Quelle nicht-sichtbaren Lichts und von Texturdaten. Block 51 stellt die Quelle nicht-sichtbaren Lichts dar, die strukturiertes Licht auf das Targetobjekt wirft. Block 52 stellt ein stereoskopisches Bild dar, das von dem linken Abbildungsgerät 12 und dem rechten Abbildungsgerät 13 aufgenommen ist. Block 53 stellt von wenigstens einem der Abbildungsgeräte 12, 13 generierte Farbausgangssignale (z.B. rot, blau, grün) für texturierte Daten und von beiden Abbildungsgeräten 12, 13 erzeugte Ausgangssignale aus nicht-sichtbarem Licht (z.B. infrarot) zum Verarbeiten von strukturierten Lichtdaten dar.
  • Bei einem anderen Ausführungsbeispiel weist das Abbildungsgerätesystem 10 eine Kombination von monochromen Abbildungsgeräten, z.B. Schwarz- und Weiß-Abbildungsgeräten und Farbabbildungsgeräten auf. Wenn Farbabbildungsgeräte zur Aufnahme sowohl der Texturdaten als auch der strukturierten Lichtdaten des Targetobjekts verwendet werden, ist die Auflösung der strukturierten Lichtdaten generell ein Kompromiß. Dies rührt daher, daß Farbe generell durch drei oder mehr Pixel (z.B. rote, grüne und blaue) definiert wird, die auch zum Definieren eines Punktes in dem Merkmal verwendet werden, so daß Positionsinformationen über eine Gruppe von Pixel verteilt sind. Durch Verwendung eines Pixels zur Definition einer Punktposition in dem Merkmal kann eine höhere Auflösung gewonnen werden. Bei Verwendung von monochromen Abbildungsgeräten zur Erfassung von Positionsinformationen des Merkmals kann ein höherer Genauigkeitsgrad erreicht werden.
  • 2 zeigt ein Ausführungsbeispiel des oben beschriebenen 3-D-Abbildungsgerätesystems. Das 3-D-Abbildungsgerätesystem 20 kann ein Paar von monochromen Abbildungsgeräten enthalten, die hier als linkes monochromes Abbildungsgerät 22 und rechts monochromes Abbildungsgerät 320 bezeichnet sind. Das Paar von monochromen Abbildungsgeräten 22, 23 erfaßt ein stereoskopes Bild eines Targetobjekts, das strukturelle Lichtdaten des Objekts enthält. Das strukturierte Licht wird von einer Lichtquelle 16 und einem Beugungsgerät 17 in einer zuvor beschriebenen Weise erzeugt. Wenn eine Codierung des strukturierten Lichts erwünscht ist, kann ein geeignetes Filter 18 mit dem Beugungsgerät 17 gekoppelt werden. Das 3-D-Abbildungsgerätesystem 20 weist ferner ein Farbabbildungsgerät 24 auf, das die Texturdaten des Targetobjekts erfaßt. Wenn Texturdaten gewonnen werden sollen, wird verhindert, daß die Lichtquelle 16 strukturiertes Licht emittiert, wenn das Licht im sichtbaren Spektrum liegt. Wenn sich dagegen das Licht im nicht-sichtbaren Spektrum befindet, können die monochromen Abbildungsgeräte 22, 23 und das Farbabbildungsgerät 24 ein Bild des Targetobjekts gleichzeitig aufnehmen. In diesem Falle sollten die monochromen Abbildungsgeräte in der Lage sein, strukturierte Lichtdaten aufzunehmen, die von dem Licht im nicht-sichtbaren Spektrum erzeugt werden. Wenn beispielsweise die Quelle nicht-sichtbaren Lichts in der zuvor beschriebenen Weise ein Infrarotlichtemitter ist, können die monochromen Abbildungsgeräte aus einem Infrarotabbildungsgerät bestehen. Zu beachten ist, daß alle drei Abbildungsgeräte 22, 23, 24 in Bezug auf ein ausgewähltes Koordinatensystem derart kalibriert sein sollten, daß die erfaßten Positionsinformationen, die von den monochromen Abbildungsgeräten 22, 23 gewonnen sind, mit den Texturdaten des Farbabbildungsgeräts 24 kombiniert werden können, um ein 3-D-Modell mit einem höheren Auflösungsgrad zu bilden. Bevor stereoskope Bilder aufgenommen werden, sollten alle Abbildungsgeräte in einem 3-D-Abbildungsgerätesystem kalibriert werden, wie es sich aus der Beschreibung weiter unten ergibt.
  • Unter Bezugnahme beispielsweise auf 1 wird die Kalibrierung der Abbildungsgeräte 12 und 13 durchgeführt, um jede Position und Orientierung der Abbildungsgeräte zu bestimmen, bevor stereoskope Bilder aufgenommen werden. Durch die Kalibrierung werden die Abbildungsgeräte in ein ausgewähltes Koordinatensystem eingefügt, das weiter unten beschrieben werden wird und dem zur Erzeugung der 3-D-Daten verwendeten Rechengeräte ermöglicht, die relative Position der Abbildungsgeräte in dem ausgewählten Koordinatensystem zu kennen. Wenn die Position der Abbildungsgeräte bekannt ist, können Merkmale der aufgenommenen stereoskopen Bilder zusammen korreliert werden, um ein kombiniertes Eingangssignal für die Bildung der 3-D-Daten bei der 3-D-Modellierung zu bilden. Um diesen Punkt darzustellen, stelle man sich zwei Abbildungsgeräte im 3-D-Raum vor, die ein Bild desselben Objekts aufnehmen, um ein linkes Bild und ein rechtes Bild des Objekts als stereoskope Abbildung des Objekts zu bilden. Aufgrund der Differenzen in den beiden Bildern kann die stereoskope Anpassung stattfinden. Stereoskope Anpassung ist ein Prozeß, bei dem ein Punktmerkmal in einem Bild mit dem entsprechenden Punktmerkmal in dem anderen Bild in Übereinstimmung gebracht wird. Während das menschliche visuale System die verschiedenen Merkmale des linken Bildes und des rechten Bildes geeignet bestimmen und die beiden Bilder miteinander korrelieren kann, benötigt ein Rechengerät zur Durchführung einer ähnlichen Funktion die Definition der verschiedenen Merkmale, ausgedrückt in Koordinaten eines Koordinatensystems. Die relevanten Informationen aus dieser Aktivität ist der Satz von Koordinaten für jedes Bild, der den Ort der Merkmale in dem Bild bestimmt. Der Koordinatensatz dieser Merkmale in allen Bildern kann zusammen mit der Position der Abbildungsgeräte, mit der jedes Bild aufgenommen wurde, danach zur Bestimmung des Ursprungsorts im 3-D-Raum des identifizierten Merkmals verwendet werden.
  • 6 zeigt ein Ausführungsbeispiel zum Durchführen der Kalibrierung. Zu Kalibrierungszwecken können insgesamt wenigstens 6 Positionswerte für eine vollständige Beschreibung der Position und Orientierung eines Abbildungsgeräts in Bezug auf ein ausgewähltes Koordinatensystem erforderlich sein. Zu beachten ist, daß die Positionswerte für jedes Abbildungsgerät in dem 3-D-Abbildungsgerätesystem bestimmt werden. Bei einem Ausführungsbeispiel kann das Abbildungsgerät als ein Abbildungssensor 15 mit einem Pinhole P definiert werden, das aus dem Zentrum und normal zum Abbildungssensor 15 bei einer vorgegebenen Länge vorspringt (d.h. Pinholelänge, die weiter unten beschrieben werden wird), wie in 7 gezeigt ist. Ein Pinhole eines Abbildungsgeräts ist ein fiktiver Raumpunkt, der in fester Distanz und normal zu dem Zentrum des Abbildungssensors angeordnet ist, wo das gesamte einfallende Licht entsprechend einem Bild in das Abbildungsgerät einfällt, um das Bild auf den Abbildungssensor zu projizieren. Die Position des Abbildungsgeräts kann durch die Position des Pinholes in einem ausgewählten Koordinatensystem bestimmt werden. Bei einem Ausführungsbeispiel kann das ausgewählte Koordinatensystem ein kartesisches Koordinatensystem sein, dessen Ursprung und X, Y, Z-Achsen willkürlich angeordnet sind, wobei drei der Positionswerte X, Y, Z entsprechend der Position des Pinholes in dem ausgewählten Koordinatensystem sind. Bei einem anderen Ausführungsbeispiel kann ein Polarkoordinatensystem verwendet werden, und in ähnlicher Weise können der Ursprung und Radius, Seitenwinkel, Längenwinkelbezug derart willkürlich konzipiert sein, daß die Position des Pinholes in dem ausgewählten Koordinatensystem nach Radius, Längenwinkel und Seitenwinkel definiert ist.
  • Die Orientierung des Abbildungsgeräts kann durch die Orientierung des Bildsensors mit Bezug auf das gewählte Koordinatensystem bestimmt werden. Beim Bestimmen der Orientierung des Abbildungssensors kann jedes Abbildungsgerät als Abbildungsgerät-Koordinatensystem konzipiert sein. Beispielsweise kann der Ursprung des Abbildungsgerät-Koordinatensystems das Pinhole des Abbildungsgeräts sein. Die Z'-Achse des Abbildungsgerät-Koordinatensystems kann die durch das Pinhole und das Zentrum des Abbildungssensors verlaufende Achse sein. Die X'-Achse und die Y'-Achse des Abbildungsgerät-Koordinatensystems können parallel zu einer horizontalen bzw. vertikalen Seite des Abbildungssensors verlaufen. Ein Fachmann wird erkennen, daß verschiedene Ursprünge und Orientierungen der Achse für das Abbildungsgerät-Koordinatensystem verwendet werden können. Bei einem Ausführungsbeispiel kann ein Polarkoordinatensystem verwendet werden, bei dem ursprünglich ein zu kalibrierendes Abbildungsgerät in einer Orientierung im ausgewählten Koordinatensystem angeordnet werden kann, wobei das Pinhole im Ursprung des ausgewählten Koordinatensystems und das Zentrum des Abbildungssensors auf der Z-Achse des ausgewählten Koordinatensystems liegen kann, wobei der Bildsensor die Z-Achse in einem Abstand von einer Pinholelänge schneidet. Die X'-Achse und die Y'-Achse des Abbildungssensors können parallel zur X-Achse bzw. zur Y-Achse des ausgewählten Koordinatensystems verlaufen. Wenn das Pinhole nach Radius, Longitudinalwinkel, Seitenwinkel zu seiner aktuellen Position in dem gewählten Koordinatensystem bewegt wird, so bewegt sich auch der Bildsensor aus seiner ursprünglichen Orientierung in eine bekannte Orientierung, die als Referenzorientierung in dem ausgewählten Koordinatensystem bezeichnet wird. Die aktuelle Orientierung des Bildsensors kann als Abweichung von der Referenzorientierung gemessen werden. Bei einem Ausführungsbeispiel kann die Abweichung über die restlichen drei Positionswerte bestimmt werden, welche Cx, Cy und Rollbewegung entsprechen, was weiter unten genauer beschrieben werden wird. Zu beachten ist, daß die Orientierung so gewählt ist, daß das Bildebenenzentrum auf der durch den Ursprung des gewählten Koordinatensystems und den Pinholeort liegt gebildeten Achse, wie oben beschrieben wurde.
  • In einem Ausführungsbeispiel kann ein Kalibrierungstarget zur Bestimmung der Position und Orientierung des Abbildungsgeräts in einem ausgewählten Koordinatensystem verwendet werden. Zu Darstellungszwecken wird das Polarkoordinatensystem verwendet. Ein Ausführungsbeispiel eines Kalibrierungstargets 75 mit einem durch einen Punkt auf jeder Ecke 76 und auf dem Zentrum 77 dargestellten Rhombus mit insgesamt fünf Punkten entsprechend der Darstellung 8a kann verwendet werden. Es ist für den Fachmann jedoch klar, daß andere Konfigurationen und Profile zum Erreichen eines gewünschten Ergebnisses verwendet werden können. Zu beachten ist, daß ein Kalibrierungstarget eine Zeichnung oder Punktsätze auf einem Blatt Papier oder ein aktuelles Objekt sein kann. Wenn ein aktuelles Objekt verwendet wird, sollte das Objekt Merkmale haben, die als Referenzpunkte nutzbar gemacht werden können. Als Beispiel kann eine Fläche eines Kubusses als Kalibrierungsobjekt verwendet werden, wobei die Flächenecken als Referenzpunkte dienen, mit evtl. einem anderen Referenzpunkt, der im Zentrum von dem Schnitt von zwei diagonalen imaginären Linien definiert ist, wobei jede Linie zwei Ecken der Oberfläche verbindet.
  • Zurückkommend auf 7, kann die Koordinate des Pinholes P des Abbildungsgeräts 13 entsprechend einem ausgewählten Koordinatensystem definiert werden, dessen Ursprung beispielsweise des Zentrum des Kalibrierungstargets 75 ist und das eine X-Achse hat, die horizontal zum Kalibrierungstarget verläuft, eine Y-Achse, die vertikal zum Kalibrierungstarget sein kann, und eine Z-Achse, die normal zum Kalibrierungstarget verläuft, wie dargestellt. Zu beachten ist, daß das gewählte Koordinatensystem für alle zu kalibrierenden Abbildungsgeräte in einem 3-D-Abbildungsgerätesystem das gleiche sein sollte, damit jedes Abbildungssystem ein gemeinsames ausgewähltes Koordinatensystem hat. Die Koordinate des Pinholes P kann nach Radius, Seitenwinkel und Höhenwinkel entsprechend drei Positionswerten mit Bezug auf den Zentralpunkt 77 des Kalibrierungstargets 75 definiert werden. Radius, Seitenwinkel und Längenwinkel können bekanntlich aus der Beschreibung der Position in dem kartesischen Koordinatensystem, definiert durch die X, Y und Z-Achse, in geeigneter Weise erzeugt werden.
  • Die Orientierung des Bildsensors 15 kann durch dessen Zentrum 72 mit Bezug auf eine vom Zentralpunkt 77 des Kalibrierungstargets 75 definierte Achse M und die Koordinate des Pinholes P bestimmt werden. Der Zentralpunkt 77 des Kalibirierungstargets 75, der auf der Achse M liegt, wird am Abbildungssensor 17 abgebildet, was die Abweichung 74 vom Zentrum 72 des Bildsensors 15 mit Bezug auf die Achse M darstellt. Aus der Abweichung 74 kann das Zentrum 72 des Bildsensors 15 mit der Achse M dadurch ausgerichtet werden, daß der Bildsensor 15 um die X'-Achse (Cx) und die Y'-Achse (Cy) mit Bezug auf das Pinhole P in dem oben beschriebenen Abbildungsgerät-Koordinatensystem solange gedreht wird, bis Zentrum 72 dem Ort der Abweichung 74 entspricht. Die Winkelwerte von Cx und Cy entsprechen zwei der restlichen Positionswerte. Die Rollbewegung des Bildsensors 15 definiert die Rotationsorientierung des Bildsensors 15 in der Z'-Achse des Abbildungsgerät-Koordinatensystems. Die Rollbewegung wird durch Drehen des Bildsensors 15 entlang der Z'-Achse kompensiert, bis die Y-Achse der Koordinate parallel zu der Y'-Achse des Bildsensors beispielsweise aus der Perspektive des Bildsensors verläuft. Der Winkelwert der Rollbewegung entspricht dem verbleibenden Positionswert.
  • Zu beachten ist, daß die exemplarischen sechs Positionswerte durch die Aufeinanderfolge diktiert werden können, in der die Werte angelegt werden. Mit anderen Worten, Positionswerte für eine Folge brauchen nicht austauschbar mit den Positionswerten für eine andere Folge zu sein. Beispielsweise können Positionswerte, die für die Folge: Cx, Cy, Rollbewegung, Länge, Breite, Radius gewonnen worden sind, von Positionswerten abweichen, die für die Folge: Rollen, Cx, Cy, Länge, Breite, Radius, gewonnen worden sind. Daher werden Positionswerte mit der Folge der Positionswerteaufnahmen identifiziert.
  • Zurückkommend auf 6 ist zu beachten, daß die dargestellte Folge nicht als Beschränkung angesehen werden sollte, und ein Fachmann wird erkennen, daß andere Sequenzen verwendet werden können. Block 61 stellt dar, wie die Pinholelänge, das ist der Längenabstand des Pinholes rechtwinklig und zentral zum Bildsensor, bestimmt wird. Die Pinholelänge für jedes Abbildungsgerät in dem 3-D-Abbildungsgerätesystem sollte bestimmt werden. Die Pinholelänge (manchmal bekannt als Brennpunktlänge) ist generell angegeben in der Herstellerspezifikation des Abbildungsgeräts. Um eine genauere Pinholelänge für die individuellen Abbildungsgeräte zu gewinnen, kann das folgende Gerät gemäß Darstellung in 9 verwendet werden.
  • Die Genauigkeit der Pinholelänge PL ist deshalb wichtig, weil aus der Pinholelänge abgetastete Punkte eines Targetobjekts in eine Koordinate auf dem Abbildungssensor übersetzt werden können. Zum Zwecke der Darstellung wird das rechte Abbildungsgerät 13 verwendet. Die Pinholelänge PL des Abbildungsgeräts 13 kann dadurch bestimmt werden, daß das Abbildungsgerät 13 auf eine Schiene 91 gesetzt wird, die zwei rechte Winkel 93, 95 hat, die entlang der Achse der Schiene 91 hin- und herlaufen. Die beiden rechten Winkel 93, 95 können als erster Winkel 93 und zweiter Winkel 95 bezeichnet werden. Ferner sollte wenigstens eine der definierenden Längen eines Winkels (gewöhnlich als horizontale oder vertikale Länge bezeichnet) für jeden Winkel bekannt sein. Bei diesem Beispiel ist die horizontale Halblänge des zweiten Winkels 95 bekannt, die A ist, sowie die horizontale Halblänge des ersten Winkels 93, die B ist. Die horizontale Halblänge B sollte kleiner gemacht werden als die horizontale Halblänge A. Das Verhältnis R ist dann das Verhältnis der horizontalen Halblänge B zur horizontalen Halblänge A. Beide Winkel sollten so montiert sein, daß die Mittellinie der Schiene 91 normal zu den beiden Winkelstücken verläuft. Außerdem sollte das Zentrum der Winkel 93, 95 mit dem Zentrum der Schiene 91 zusammenfallen. Der erste 93 und der zweite Winkel 95 sollten außerdem parallel zueinander verlaufen. Der erste Winkel 93 muß außerdem verschieblich sein und stets die obigen Bedingungen erfüllen. Durch Verschieben des ersten Winkels 93 in der Richtung des Abbildungsgeräts 13 bei stationärem zweiten Winkel 95 bis zu einer bestimmten Distanz auf der Schiene 91, und zwar aus der Perspektive des Abbildungssensors 15, fallen die Projektionen der winkeldefinierenden Längen auf dem Bildsensor zusammen. An diesem Punkt fällt das Bild der horizontalen Länge B des ersten Winkels bzw. Winkelstücks 93 und das Bild der horizontalen Länge A des zweiten Winkels bzw. Winkelstücks 95 durch das Pinhole P und projiziert dieselbe Länge X an derselben Stelle des Abbildungssensors 15, wie in 6 gezeigt. Ist der Abstand zwischen dem ersten Winkelstück 93 und dem zweiten Winkelstück 95, gemessen als C auf der Schiene 91, bekannt, und die Projektionslänge auf dem Bildsensor mit X gemessen, so kann die Pinholelänge PL durch die Formel definiert werden: PL = X·C/(A·(1 – R))
  • Generell wird die Messung innerhalb des Abbildungsgeräts in Pixeleinheiten bestimmt. Zu beachten ist, daß die Pinholelänge PL ihre Dimension aus der Projektion X gewinnt. Da die Projektion X in Pixeleinheiten gemessen wird, wird auch die Pinholelänge PL in Pixeleinheiten gemessen, was in der Praxis angemessen ist.
  • Im folgenden wird wieder auf 6 Bezug genommen. Block 62 stellt die Bestimmung von Cx und Cy des Abbildungssensors dar. 8b zeigt ein Bild des Kalibrierungstargets 75, aufgenommen von einem Abbildungssensor 15. Aus dem aufgenommenen Bild wird der Abbildungssensor 15 rechnerisch derart bewegt, daß das Zentrum 72 des Abbildungssensors mit dem abgebildeten Zentrum 77 des Kalibrierungstargets 75 zusammenfällt. Die Bewegung in Pixeleinheiten auf der X'-Achse und auf der Y'-Achse in Bezug auf die Abbildungsgerätekoordinate entspricht dem Cx bzw. Cy. Da, wie vorstehend beschrieben, die Pinholelänge bekannt ist, können Cx und Cy alternativ auch in Ausdrücken der Winkeldrehung um die X'-Achse und Y'-Achse bezüglich des Pinholes P definiert werden. Wenn das Targetzentrum 77 mit dem Zentrum 72 des Abbildungssensors 15 zusammenfällt, ist das Bildzentrum mit der durch das Pinhole und den Ursprung des ausgewählten Koordinatensystems verlaufenden Achse M ausgerichtet (vgl. 7). Durch Cx und Cy kann die Orientierung des Abbildungssensors 15 mit Bezug auf die Achse M und das Pinhole P bestimmt werden. Da das Kalibrierungstarget 77 auf das Zentrum des Abbildungssensors 15 aus der Abbildungssensor-Perspektive umgesetzt wird, werden auch die das Kalibrierungstarget darstellenden Eckpunkte 75 rechnerisch bewegt, um die Ansicht vom Bildsensor in dessen neuer Position darzustellen. Das umgesetzte Kalibrierungstarget ist durch 8c dargestellt.
  • Weiter unten wird als Beispiel ein Fragmentprogramm in Visual Basic angegeben, welches die obige Beschreibung darstellt.
  • Für das Beispiel sind die folgenden Definitionen erforderlich:
    VERTEX2D beschreibt einen Punkt eines Bildes. Seine relevanten Komponenten sind die x und y Koordinaten (d.h. dx, dy);
    VTXLIST2D ist eine Liste von VERTEX2D-Objekten mit zugehörigem Haushaltsspeicher (d.h. Kalibrierungstarget, wobei Komponente 0 der Zentralpunkt, Komponente 1 der oberste Punkt, Komponente 2 der tiefste Punkt, Komponente 3 der linke Punkt, Komponente 4 der rechte Punkt ist);
    VERTEX3D beschreibt einen Punkt im 3-D-Raum. Seine maßgeblichen Komponenten sind die x, y und z-Koordinaten (dx, dy, dz); und
    VTXLIST3D ist eine Liste von VERTEX3D-Objekten.

    Public Sub gs_UndoCoxCoyWjm(InVec As VTXLIST2D, res As VTXLIST2D, Coff As VERTEX2D)

    'Die Offsets werden in Coff zurückgeführt.
    Dim v1 As VERTEX3D
    Dim v2 As VERTEX3D
    Dim v3 As VERTEX3D
    Dim vtx2tmpl As VERTEX2D
    Dim vRot As VERTEX3D
    Dim dCosAngle As Double
    Dim dAngle As Double
    Dim i As Integer
    'Drücke die x und y-Offsets aus
    Coff.dx = v2.dx
    Coff.dy = v2.dy
    'Simuliere den Effekt der Aufhebung der Mittelpunktverschiebung des Abbildungsgeräts
    'Gewinne den Normal- und Drehwinkel
    v1.dx = 0
    v1.dy = 0
    v1.dz = f2_dCAMF
    v2.dx = InVec.vx2A(0).dx
    v2.dy = InVec.vx2A(0).dy
    v2.dz = f2_dCAMF
    Call gs_CosWinkel3 (v1, v2, dCosWinkel)'Gewinne den Kosinus des Winkels zwischen v1 und v2'
    Call gs_ArcCos (dCosWinkel, dWinkel) 'Gewinne den Winkel aus dem Kosinus
    Call gs_orth3 (v1, v2, vRot) 'Gewinne einen Orthogonalvektor zu der von v1 und v2 aufgespannten Ebene. Dies ist der Vektor, um den das Bild gedreht werden muß, um den Mittelpunkt in das Zentrum der Bildebene zu bringen.
    'Rotiere alle Vektoren in der Target-Vertices (Scheitelpunkt) Liste, um den Cx und Cy-Effekt aufzuheben
    Für i = 0 bis InVec.1NumVertex – 1
    v1.dx = InVec.vx2A(i).dx
    v1.dy = InVec.vx2A(i).dy
    v1.dz = dCAMF 'dCAMF ist der Abstand vom Abbildungssensor zu den Pinholeorten (in Pixeln)
    Call gs_rot3dVec(dWinkel, vRot, v1, v2)
    Call gs_project3Planar(f2_dCAMF, v2, v3)
    res.vx2A(i).dx = v3.dx
    res.vx2A(i).dy = v3.dy
    res.vx2A(i).bFlag = True
    Next i
    End Sub
  • Block 63 der 6 stellt die Bestimmung der Rollbewegung des Abbildungssensors dar. Die Rollbewegung ist die Drehung des Abbildungssensors um die Z-Achse des Abbildungsgerät-Koordinatensystems, wobei in diesem Falle die Z'-Achse der Achse M durch das Pinhole P und das Zentrum des Abbildungssensors 15 entspricht. Im folgenden wird auf 8c Bezug genommen. Sobald der Abbildungssensor umgesetzt ist, so daß das Zentrum 72 des Abbildungssensors mit dem Targetzentrum 77 zusammenfällt, wird die Projektion der Y-Achse des Targets 75 auf den Bildsensor mit einer Y'-Achse verglichen, die aus der Abbildungssensorperspektive durch das Zentrum und parallel zu den Vertikalseiten des Abbildungssensors 15 verläuft. Die Winkelabweichung zwischen der Y-Achse und der Y'-Achse ist die Rollbewegung des Abbildungssensors. Die Rollbewegung wird durch rechnerisches Drehen des Abbildungssensors entlang der Achse M solange kompensiert, bis die Y-Achse des Kalibrierungstargets parallel zu der Y'-Achse des Abbildungssensors verläuft. Wenn die Rollbewegung kompensiert ist, werden auch die das Kalibrierungstarget darstellenden Eckpunkte rechnerisch bewegt, um aus der Perspektive des Bildsensors die Ansicht aufgrund der Rollbewegungskompensation darzustellen. Das Kalibrierungstarget 75 ist nach der Rollbewegungskompensation in 8d dargestellt.
  • Weiter unten ist ein Beispiel für ein Programm in Visual Basic angegeben, welches die obige Beschreibung darstellt:
    Public Sub gs_UndoRollWjm(src As VTXLIST2D, res As VTXLIST2D, dTwist As Double) 'dTwist ist der festgestellte Rollwinkel'
    'aufhören der Rollbewegung nach Korrektur der Abbildungsgeräte-Orientierung für Cx, Cy
    Dim dalpha1 As Double
    Dim dalpha2 As Double
    Dim dAlpha As Double
    Dim v1 As VERTEX3D
    Dim v2 As VERTEX3D
    Dim i As Integer
    'rotation around die z axis with angle defined by atn x/y
    dalpha1 = Atn(src.vx2A(1).dx/src.vx2A(1).dy)
    dalpha2 = Atn(src.vx2A(2).dx/src.vx2A(2).dy)
    dAlpha = (dalpha1 + dalpha2)/2'take arithmetic mean
    dTwist = –dAlpha·90/const_PI
    'simulate undoing the roll on the five calibration points of the image
    For i = LBound(src.vx2A) To UBound(src.vx2A)
    v1.dx = src.vx2A(i).dx
    v1.dy = src.vx2A(i).dy
    v1.dz = 0
    Call gs_rot3dZ(dAlpha, v1, v2)
    res.vx2A(i).dx = v2.dx
    res.vx2A(i).dy = v2.dy
    Next i
    End Sub
  • Block 64 der 6 stellt die Bestimmung der Breitenposition des Pinholes dar. Die Breite bestimmt die vertikale Position des Pinholes in Bezug auf das Kalibrierungstarget. Die Breitenposition des Pinholes wird bestimmt durch den Abstand zwischen dem obersten Punkt (Scheitel) und dem Mittelpunkt und den Abstand zwischen dem untersten bzw. Bodenpunkt und dem Mittelpunkt des Kalibrierungstargets. Der Abbildungssensor wird rechnerisch radial um den Zentralpunkt des Kalibrierungstargets in einer Ebene bewegt, die durch die Y-Achse und den Pinholeort definiert ist. Die Orientierung des Abbildungsgeräts hält die Bedingung bei, daß das Zentrum des Abbildungssensors auf der durch das Zentrum des Kalibrierungstargets und das umgesetzte Pinhole definierten Achse bleibt. Der Abbildungssensor wird solange bewegt, bis der Abstand zwischen dem Scheitel und dem Zentralpunkt und der Abstand zwischen dem Tiefstpunkt und dem Zentralpunkt aus der Sicht des Abbildungssensors gleich sind. An diesem Punkt wurde das Pinhole rechnerisch in die X-Z-Ebene bewegt, und der Winkel, um den sich der Abbildungssensor rechnerisch bewegt hat, ist die Breite. Die Eckpunkte, welche das Kalibrierungstarget darstellen, werden rechnerisch transformiert, um die Ansicht aus der Abbildungssensorperspektive aufgrund der Positionsänderung des Abbildungssensors darzustellen.
  • Unten wird als Beispiel für ein Programm in Visual Basic angegeben, welches die obige Beschreibung darstellt:
    Public Sub gs_UndoLatitudeWjm(src As VTXLIST2D, res As VTXLIST3D, proj As VTXLIST2D, DLatitude As Double)
    'Find out the latitude through comparison of the angles from midpoint in both
    'directions of y
    Dim dm1 As Double
    Dim dm2 As Double
    Dim dm3 As Double
    Dim v1 As VERTEX3D
    Dim v2 As VERTEX3D
    Dim v3 As VERTEX3D
    Dim v4 As VERTEX3D
    Dim i As Integer
    Dim dAlpha As Double
    dm1 = src.vx2A(1).dy/f2_dCAMF
    dm2 = src.vx2A(2).dy/f2_dCAMF
    If Abs(dm1 + dm2) > 0.000000000001 Then
    dm3 = 2·dm1·dm2/(dm1 + dm2)
    dAlpha = Atn(dm3) – const_PI/2
    Else
    dm3 = 1E+100
    dAlpha = 0
    End If
    'range of dalpha is –90 to +90 deg
    If dAlpha < –const_PI/2 Then
    dAlpha = dAlpha + const_PI
    End If
    dLatitude = dAlpha·190/const_PI
    Dim vpLatVec As VERTEX3D
    Dim vp1 As VERTEX3D
    Dim vp2 As VERTEX3D
    Dim vp3 As VERTEX3D
    Dim vp4 As VERTEX3D
    Dim vp5 As VERTEX3D
    Dim vl1 As VERTEX3D
    Dim vl2 As VERTEX3D
    Dim vPt As VERTEX3D
    'correct the display:
    'create a vector which is tilted into the direction of the latitude
    vpLatVec.dx = 0
    vpLatVec.dy = Cos(dAlpha)
    vpLatVec.dz = Sin(dAlpha)
    vp1.dx = 0
    vp1.dy = 0
    vp1.dz = 0
    Call gs_vec3ToNormalPlane(vpLatVec, vp2, vp3)
    vp4.dx = 1
    vp4.dy = 0
    vp4.dz = 0
    vp5.dx = vpLatVec.dx
    vp5.dy = vpLatVec.dy
    vp5.dz = vpLatVec.dz
    'shift the plane from the pin hole to the center of the ccd
    vp1.dz = vp1.dz – f2_dCAMF
    vp2.dz = vp2.dz – f2_dCAMF
    vp3.dz = vp3.dz – f2_dCAMF
    vp4.dz = vp4.dz – f2_dCAMF
    vp5.dz = vp5.dz – f2_dCAMF
    vl1.dx = 0
    vl1.dy = 0
    vl1.dz = 0
    res.vx3A(0).dx = src.vx2A(0).dx
    res.vx3A(0).dy = src.vx2A(0).dy
    res.vx3A(0).dz = –f2_dCAMF
    'simulate un-doing the latitude
    For i = 1 To 4
    vl2.dx = src.vx2A(i).dx
    vl2.dy = src.vx2A(i).dy
    vl2.dz = –f2_dCAMF
    If i < 3 Then
    Call gf_bPlaneLineIntersection(vp1, vp4, vp5, vl1, vl2, vPt)
    Else
    Call gf_bPlaneLineIntersection (vp1, vp2, vp3, vl1, vl2, vPt)
    End If
    'rotate around the x axis
    vPt.dz = vPt.dz + f2_dCAMF
    Call gs_rot3dX(–dAlpha, vPt, v3)
    'shift everything back by the f distance
    v3.dz = v3.dz – f2_dCAMF
    res.vx3A(i) = v3
    'project into the image sensor plane
    Call gs_project3Planar(–f2_dCAMF, v3, v4)
    proj.vx2A(i).dx = v4.dx
    proj.vx2A(i).dy = v4.dy
    Next i
    End Sub
  • Block 65 der 6 stellt die Bestimmung der Longitudinalposition des Pinholes dar. Die Länge bestimmt die Position des Pinholes in der X-Achse in Bezug auf das ausgewählte Koordinatensystem. Die Länge wird durch den Abstand zwischen dem linken Punkt und dem Mittelpunkt und dem Abstand zwischen dem rechten Punkt und dem Mittelpunkt des Kalibrierungstargets nach der Abbildung im Abbildungssensor bestimmt. Der Abbildungssensor wird rechnerisch radial um das Kalibrierungstarget in der X-Z-Ebene bewegt. Die Orientierung des Abbildungsgeräts wird so geändert, daß das Zentrum des Abbildungssensors auf der vom Zentrum des Kalibrierungstargets und dem umgesetzten Pinhole definierten Achse bleibt. Der Bildsensor wird solange bewegt, bis der Abstand zwischen dem linken Punkt und dem Mittelpunkt gleich dem Abstand zwischen dem rechten Punkt und dem Mittelpunkt aus der Sicht des Abbildungssensors ist. An diesem Punkt ist der Winkel der Pinholebewegung die Länge. Die Eckpunkte, welche das Kalibrierungstarget darstellen, werden rechnerisch transformiert, um die Ansicht aus der Abbildungssensorperspektive aufgrund der Positionsänderung des Abbildungssensors darzustellen.
  • Unten wird als Beispiel ein Programm in Visual Basic angegeben, welches die obige Beschreibung darstellt:
    Public Sub gs_UndoLongitudeWjm(src As VTXLIST3D, res As VTXLIST2D, dLongitude As Double)
    'Find out the longitude through comparison of the angles from midpoint in both
    'directions of x
    Dim dm1 As Double
    Dim dm2 As Double
    Dim dm3 As Double
    Dim v1 As VERTEX3D
    Dim v2 As VERTEX3D
    Dim v3 As VERTEX3D
    Dim v4 As VERTEX3D
    Dim i As Integer
    Dim dA As Double
    Dim dAlpha As Double
    'first get the project of point 3 into the yz plane
    Call gs_project3Planar(–f2_dCAMF, src.vx3A(3), v1)
    Call gs_project3Planar(–f2_dCAMF, src.vx3A(4), v2)
    'next find out what angle we have from 0 point to point 3
    'in the xz plane
    dm1 = v1.dx/v1.dz
    dm2 = v2.dx/v2.dz
    If Abs(dm1 + dm2) > 0.000001 Then
    dm3 = 2·dm1·dm2/(dm1 + dm2)
    Else
    dm3 = 1000000
    End If
    dAlpha = const_PI/2 – Atn(dm3)
    If dAlpha > const_PI/2 Then dAlpha = dAlpha – const_PI/2
    dLongitude = dAlpha·190/const_PI
    'simulate undoing of longitude
    For i = 0 To 4
    v2 = src.vx3A(i)
    'simulate shift into the pin hole plane, by making z 0
    v2.dz = v2.dz + f2_dCAMF
    'rotate around the y axis
    Call gs_rot3dY(dAlpha, v2, v3)
    'shift everything back by the f distance
    v3.dz = v3.dz – f2_dCAMF
    res.vx3A(i) = v3
    'project into the image sensor plane
    Call gs_project3Planar(–f2_dCAMF, v3, v4)
    proj.vx2A(i).dx = v4.dx
    proj.vx2A(i).dy = v4.dy
    Next i
    End Sub
  • Block 66 der 6 zeigt die Bestimmung des Radius des Pinholes. Der Radius ist der Abstand zwischen dem Pinhole und dem Ursprung des ausgewählten Koordinatensystems. Der Radius kann beispielsweise in der folgenden Weise bestimmt werden. Aus dem Kalibrierungstarget ist der Abstand zwischen dem Eckpunkt und dem Zentralpunkt des Kalibrierungstargets bekannt. Von dem Bildsensor kann der abgebildete Eckpunkt und der Zentralpunkt des Kalibrierungstar gets in Pixeln gemessen werden. Da die Pinholelänge bekannt ist, kann der Radius durch die folgende Formel definiert werden: Radius = PL·(A'/X'),wobei A' der Abstand zwischen einem Eckpunkt und einem Zentralpunkt des Kalibrierungstargets und X' die abgebildete Distanz des Eckpunkts und des Zentralpunkts auf dem Abbildungssensor ist.
  • Weiter unten wird als Beispiel ein Programm in Visual Basic angegeben, welches die obige Beschreibung darstellt:
    Public Sub gs_DetermineDistanceWjm(src As VTXLIST3D, res As VTXLIST3D, proj As VTXLIST2D, dDistance As Double)
    res = src
    End Sub
  • In den Fällen, in denen die Längenänderungen entsprechend den relativen Punkten im Kalibrieruingstarget 75 relativ klein sind, ist es erwünscht, einen zusätzlichen Kalibrierungspunkt zu installieren, der aus der Ebene vorspringt, wobei das Kalibrierungstarget 75 näher an den Abbildungssensor in Bezug auf die restlichen Targetpunkte 76, 77 herangerückt wird. Da der zusätzliche Punkt näher am Abbildungssensor ist, ist der Punkt für eine Änderung in der Richtung des Abbildungssensors empfindlicher als die Punkte 76, 77 auf dem Kalibrierungstarget 75. 10 stellt ein Beispiel eines Kalibrierungstargets 101 in einer Rhombusform mit einem Punkt 108 dar, der normal von der Ebene des Kalibrierungstargets 101 vorsteht. Dies wird dadurch erreicht, daß eine Dreiecksebene aus der Anordnungs ebene des Kalibrierungstargets 101 in der dargestellten Weise angeordnet wird. Der Auslegerwinkel kann 45° sein. Ein Kalibrierungspunkt 108 wird auf das vorspringende Dreieck in einer solchen Weise angeordnet, daß der Punkt 108 mit dem linken Punkt 102 und dem rechten Punkt 104 des Kalibrierungstargets 101 ausgerichtet ist.
  • Zurückkommend auf die Bestimmung der Breitenposition gemäß Block 64 in 6, bestimmt der Abbildungssensor, der eine Breite in Bezug auf das Kalibrierungstarget 101 hat, den vorspringenden Punkt 108 entweder oberhalb oder unterhalb einer X-Achse, die durch den linken Punkt 102 und den rechten Punkt 104 des Kalibrierungstargets 101 verläuft. Der Abbildungssensor wird rechnerisch solange vertikal bewegt, bis der Punkt 108 sowohl mit dem linken Punkt 102 als auch dem rechten Punkt 104 ausgerichtet ist. An diesem Punkt entspricht die Winkeldistanz der Pinholebewegung der Breite. Bezugnehmend auf die Bestimmung der Länge gemäß Block 65 in 6, bestimmt der Abbildungssensor, der eine Länge in Bezug auf das Kalibrierungstarget 101 hat, den vorspringenden Punkt 108 in einer Distanz vom Kalibrierungstarget 101. Als Beispiel kann das Verhältnis entsprechend der Distanz zwischen dem vorspringenden Punkt 108 mit dem rechten Punkt 104 in der Ebene des Kalibrierungstargets 101 und der Distanz zwischen dem rechten Punkt 104 und dem linken Punkt 102 vorausbestimmt werden, so daß das Verhältnis berechnet wird, wenn der Abbildungssensor rechnerisch solange horizontal bewegt wird, bis das vorgegebene Verhältnis erreicht ist. An diesem Punkt entspricht die Winkeldistanz der Bewegung des Pinholes der Länge.
  • Wenn die sechs Positionswerte für jeden Abbildungssensor der Abbildungsgeräte in dem 3-D-Abbildungsgerätesystem bekannt sind, ist die Kalibrierung abgeschlossen. Das zur Erzeugung von 3-D-Daten verwendete Rechengerät ist in der Lage, die relative Position der Abbildungssensoren in dem ausgewählten Koordinatensystem durch Rückwärtsverfolgen der gewonnenen Positionswerte zu kennen. Wenn die genommene Folge beispielsweise Cx, Cy, Rollbewegung, Breite, Länge, Radius ist, so kennt das Rechengerät durch Rückwärtsfolge, d.h. Berechnen der Folge Radius, Länge, Breite, Rollbewegung, Cy, Cx die Position des Abbildungssensors.
  • Nach Ausführung der Kalibrierung an jedem der Abbildungsgeräte in dem 3-D-Abbildungsgerätesystem und vor Aufnehmen stereoskoper Bilder durch die Abbildungsgeräte 12 und 13 entsprechend Darstellung in 1 beispielsweise, sollten anfänglich Marken auf dem Targetobjekt 20 gesetzt werden, welche die Konturen oder Merkmale des Objekts entsprechend Darstellung in 3a umreißen. Beispielsweise können vertikale Linien 21 gleichmäßig auf Objekt 20 gelegt werden. Zu beachten ist jedoch, daß mehr Linien 21 in Zonen des Objekts 20 hinzugefügt werden, wo es Feinmerkmale, wie beispielsweise die Augen oder die Nase, gibt. Die Vertikallinien 21 können auf das Objekt 20 unter Verwendung fluoreszierender Farbe gezeichnet werden, die nur in der Dunkelheit sichtbar ist, so daß Strukturdaten in der Dunkelheit gewonnen werden können. Alternativ kann die verwendete Farbe im sichtbaren Spektrum unsichtbar, jedoch sichtbar für Strahlung außerhalb des sichtbaren Spektrums, beispielsweise Infrarot oder ultraviolettes Licht sein. Alternativ können die vertikalen Linien 21 unter Verwendung einer Lichtquelle 16, wie eines Infrarotlasers oder sichtbaren Lasers auf das Objekt 20 projiziert werden. Es ist klar, daß die Beschreibung von Vertikallinien nicht als den Umfang der Erfindung beschränkend interpretiert werden darf. So können beispielsweise in Abhängigkeit von der Orientierung der Abbildungsgeräte 12 und 13 horizontale Linien verwendet werden. Außerdem kann in Abhängigkeit von der Ausbildung des Beugungsgeräts 17 ein Gitter mit gleichmäßigen Punkten auf das Objekt projiziert werden.
  • Unter Verwendung strukturierten Lichts als Beispiel zur Erleichterung des Verständnisses projizieren die Lichtquelle 16 mit dem Beugungsgerät 17 ein strukturiertes Licht, in diesem Falle vertikale Linien, auf das Targetobjekt. Mit dem projizierten strukturierten Licht wird ein stereoskopes Bild des Objekts von dem linken Abbildungsgerät 12 und dem rechten Abbildungsgerät 13 des 3-D-Abbildungsgerätsystems 10 erfaßt. 11 ist ein Ablaufdiagramm eines Ausführungsbeispiels, das die Extraktion von 3-D-Daten aus einem stereoskopen Bild eines Objekts mit einem linken Bild und einem rechten Bild darstellt. Block 112 zeigt die Bestimmung der Anzahl von vertikalen Linien, die von dem rechten Abbildungssensor entsprechend den auf das Targetobjekt unter Verwendung strukturierten Lichts projizierten Vertikallinien erfaßt werden. Block 114 zeigt die Bestimmung der Anzahl von Vertikallinien, die von dem linken Abbildungssensor ebenfalls entsprechend der auf das Targetobjekt projizierten Vertikallinien detektiert werden. Block 116 zeigt das Abstimmen der von dem rechten Abbildungssensor detektierten Vertikallinien mit den von dem linken Abbildungssensor detektierten Vertikallinien in einer korrelierenden Weise. Block 118 zeigt das Einstellen eines ersten Zählers bei 1, wobei die erste korrelierende Vertikallinie, detektiert am rechten Abbildungssensor, betrachtet wird. Block 120 zeigt die Umwandlung der korrelierenden Vertikallinien in eine Vielzahl von Punkten. Typischerweise wird der Abstand zwischen den Punkten in Pixeleinheiten gemessen; beispielsweise kann ein Punkt aus der Vertikallinie pro jeweils 5 Pixel gebildet werden. Zu beachten ist, daß durch Steuerung der Anzahl korrelierender Vertikallinien und der Anzahl von aus jeder Vertikallinie umzusetzenden Punkten eine gewünschte Anzahl von Punkten in den 3-D-Daten gewinnen lassen kann. Block 122 zeigt die Bestimmung der Anzahl von aus der Vertikallinie umgewandelten Punkten und die Einstellung eines zweiten Zählers bei 1, der den bezeichneten Punkt als ersten Punkt berücksichtigt. Block 124 zeigt das Berechnen einer "Sichtlinie", die ausgeht von dem bezeichneten Punkt und durch das Pinhole des rechten Abbildungsgeräts läuft, um die Linie im 3-D-Raum zu projizieren. An einem bestimmten Punkt in der Sichtlinie bei unbekannter Koordinate schneidet der Punkt eine vertikale Linie in dem Targetobjekt, welche mit der Vertikallinie korreliert, aus der der bezeichnete Punkt hervorgeht. Der Schnittpunkt auf dem Targetobjekt entspricht auch der Position des bezeichneten Punktes im rechten Abbildungssensor. Bei einem anderen Ausführungsbeispiel kann die Sichtlinie für den rechten Abbildungssensor in der folgenden Weise erzeugt werden.
  • Unter Bezugnahme auf 7 ist die Position des Pinholes P des rechten Abbildungsgeräts 15 in dem ausgewählten Koordinatensystem aus der Kalibrierung des rechten Abbildungsgeräts bekannt. Zu beachten ist, daß ein Pinhole P in einem festen Abstand PL vom Zentrum des Abbildungssensors und normal zu diesem angeordnet ist. In diesem Beispiel soll der Abbildungssensor 15 eine 640 × 480 Pixelmatrix enthalten. Ein Fachmann wird jedoch erkennen, daß andere Matrixgrößen auch verwendet werden können. Unter Verwendung von Pinhole P als Ursprung eines Abbildungsgeräte-Koordinatensystems kann jeder Punkt im Abbildungssensor 15 seine Referenz aus dem Pinhole P in Pixelwerten (ΔX', ΔY', PL) erhalten, wobei ΔX' die Abweichung in der X'-Achse der Position des bezeichneten Punkts vom Zentrum des Abbildungssensors 15, ΔY' die Abweichung auf der Y'-Achse der Position des bezeichneten Punkts vom Zentrum des Abbildungssensors 15, PL ein bekannter Festwert ist, der eine feste Distanz auf der Z'-Achse ist, wobei alle drei Werte in Pixeleinheiten gemessen werden. Da die Pinhole-Koordinate in dem ausgewählten Koordinatensystem bekannt ist, kann unter Verwendung dieser Koordinate und der Werte (ΔX', ΔY', PL) entsprechend dem bezeichneten Punkt eine Gleichung entsprechend der Sichtlinie für den bezeich neten Punkt erzeugt werden. 12 zeigt eine Sichtlinie L1, welche den bezeichneten Punkt des rechten Abbildungssensors 15 darstellt.
  • Block 126 stellt das Bestimmen eines Punktes in der korrelierenden Vertikallinie des linken Abbildungssensors 14 dar, der dem bezeichneten Punkt des rechten Abbildungssensors 15 entspricht. Sobald der entsprechende Punkt bestimmt ist, kann eine die Sichtlinie des entsprechenden Punktes darstellende Gleichung gewonnen werden, da die Koordinate des linken Pinholes in dem ausgewählten Koordinatensystem durch Kalibrierung bekannt ist und der Positionswert des Punktes in der unmittelbar zuvor beschriebenen Weise bestimmt werden kann. 12 zeigt eine Sichtlinie L2, die den entsprechenden Punkt des linken Abbildungssensors 14 darstellt. Bei einem Ausführungsbeispiel kann der korrespondierende Punkt in dem linken Abbildungssensor 14 durch "Verfolgen" der Sichtlinie L1 des rechten Abbildungssensors 15 auf den linken Abbildungssensor 14 bestimmt werden. Da die korrelierenden Vertikallinien in dem linken und rechten Abbildungssensor der gleichen Vertikallinie im Targetobjekt entsprechen, ist der Schnittpunkt der Sichtlinie vom rechten Abbildungssensor und der Vertikallinie im Targetobjekt, gesehen vom linken Abbildungssensor, der korrespondierende Punkt des bezeichneten Punkts für den rechten Abbildungssensor. Eine Analogie wird zur Erläuterung von Block 126 als Hilfe für das Verständnis dieses Prozesses verwendet.
  • Es sei angenommen, daß der bezeichnete Punkt D1 in der Vertikallinie, abgebildet auf dem rechten Abbildungssensor 15, einen Lichtstrahl L1 emittieren kann, der das rechte Pinhole PR des Abbildungsgeräts 13 und den Raum durchläuft. Das linke Abbildungsgerät 12 wäre in der Lage, diesen Lichtstrahl L1 auf seinem Abbildungssensor 14 aus seinem Sichtfeld zu detektieren. Der Schnitt des detektierten Lichtstrahls L1 und der Vertikallinie in dem linken Abbildungssensor 14 kann in Korrelation mit der Vertikallinie im rechten Abbildungssensor 15, aus dem der bezeichnete Punkt hervorgeht, bestimmt werden. Der Schnittpunkt D2 wäre der korrespondierende Punkt des bezeichneten Punkts D1 im linken Abbildungssensor. Aus dem Schnittpunkt D2 kann ein Lichtstrahl L2 projiziert werden, der das linke Pinhole PL des linken Abbildungssensors durchläuft und den Lichtstrahl L1 schneidet. Der Schnittpunkt der beiden Lichtstrahlen L1 und L2 wird die X, Y, Z-Koordinate in dem ausgewählten Koordinatensystem eines Punkts im Targetobjekt sein, der dem bezeichneten Punkt im rechten Abbildungssensor ent spricht und ein Punkt der 3-D-Daten des Targetobjekts ist. Selbstverständlich wird in der Realität die obige Beschreibung mathematisch durchgeführt.
  • Weiter unten wird ein Beispiel für ein in Visual Basic geschriebenes Programm gegeben, das zur Veranschaulichung eines mathematischen Verfahrens zur Durchführung der obigen Beschreibung verwendet wird.
    tc_MakeLineOfSight vx2A,ln3A, objA
  • 'Das erste obige Verfahren stellt die Erzeugung einer rechten Sichtlinie vom rechten Abbildungssensor dar, wobei die Koordinaten der rechten Sichtlinie dem ausgewählten Koordinatensystem aus der Kalibrierung entsprechen.
    tc_Ln3ObjMakeLn2 ln3A, ln2A, objB
  • 'Das zweite obige Verfahren stellt das Umsetzen der rechten Sichtlinie aus dem rechten Abbildungssensor in dem ausgewählten Koordinatensystem in ein linkes Abbildungsgerät-Koordinatensystem dar. Die rechte Sichtlinie wird auf dem linken Abbildungssensor verfolgt.
    If gf_bContourLineIntersection(ln2A, cn2B, vx2B)
  • 'Das dritte obige Verfahren stellt das Auffinden des Schnitts der verfolgten rechten Sichtlinie auf dem linken Abbildungssensor und der auf dem linken Abbildungssensor abgebildeten Vertikallinie in Korrelation mit der Vertikallinie auf dem rechten Abbilddungssensor dar, von dem die rechte Sichtlinie ausgeht.
    Call tc_MakeLineOfSight(Vx2B, ln3B, objB)
  • 'Das vierte obige Verfahren stellt das Erzeugen einer linken Sichtlinie aus dem linken Abbildungssensor aus dem Schnittpunkt und der Koordinate des linken Pinholes des linken Abbildungsgeräts in dem ausgewählten Koordinatensystem dar.
    If gf_bLineDistance3D(ln3A, ln3B, vx3A, dDist) = unwahr, dann 'Ergebnis in vx3A
  • 'Das fünfte obige Verfahren stellt das Auffinden des Schnitts der rechten und linken Sichtlinien dar, wobei ohne Auftreten eines Schnitts der Punkt, an dem die rechte Sichtlinie der linken Sichtlinie am nächsten kommt, als Schnittpunkt bezeichnet wird.
  • Die unten angegebene Subroutine stellt das erste Verfahren in weiteren Details dar:
    Public Sub tc_MakeLineOfSight(vx2In As VERTEX2D, In3Out As LINE3D, obj2D As Object
    Dim vx2A As VERTEX2D
    Dim dDist As Double
    dDist = 50
    vx2A.dx = vx2In.dx – obj2D.f2_iCAMCx/2 'obj2D 'determines the center X'-axis of the image sensor'
    vx2A.dy = vx2In.dy – obj2D.f2_iCAMCy/2 'determines the center Y'-axis of the image sensor'
  • 'Die obigen beiden Zeilen stellen die Bestimmung des Zentrums des rechten Abbildungssensors und die Kennzeichnung als Koordinate (0,0) im rechten Abbildungsgerät-Koordinatensystem dar.
    In3Out.vx3A.dx = obj2D.f2_dLOSStart·vx2A.dx/obj2D.f2_dCAMF
    In3Out.vx3A.dy = obj2D.f2_dLOSStart·vx2A.dy/obj2D.f2_dCAMF
    In3Out.vx3A.dZ = –obj2D.f2_dLOSStart
  • 'Obige drei Zeilen stellen die Kennzeichnung eines Startpunkts für die rechte Sichtlinie dar, wobei die Koordinate im rechten Abbildungsgerät-Koordinatensystem definiert ist.
    In3Out.vx3B.dx = obj2D.f2_dLOSEnd·vx2A.dx/obj2D.f2_dCAMF
    In3Out.vx3B.dy = obj2D.f2_dLOSEnd·vx2A.dy/obj2D.f2_dCAMF
    In3Out.vx3B.dZ = –obj2D.f2_dLOSEnd
  • 'Obige drei Zeilen stellen die Bezeichnung eines Endpunkts für die rechte Sichtlinie dar, wobei die Koordinate in dem rechten Abbildungsgerät-Koordinatensystem definiert ist'.
  • 'Zu beachten ist, daß der Startpunkt und der Endpunkt benutzerdefiniert sein können, so daß der Abstand zwischen dem Startpunkt und dem Endpunkt ausreichend ist, um das Targetobjekt zu schneiden. Wenn beispielsweise das Targetobjekt 4 Fuß vom rechten Bildsensor entfernt ist, kann der Startpunkt bei 0,5 Fuß und der Endpunkt bei 6 Fuß angeordnet werden.'
    Call gs_XformCameraToWorld(In3Out.vx3A, In3Out.vx3A, obj2D)
    Call gs_XformCameraToWorld(In3Out.vx3B, In3Out.vx3B, obj2D)
  • 'Transformieren der Koordinaten des Startpunkts und des Endpunkt aus Koordinaten im rechten Abbildungsgerät-Koordinatensystem in Koordinaten in dem gewählten Koordinatensystem.'
    End Sub
  • 'Die weiter unten angegebene Subroutine stellt die Umwandlung von Punkten im Abbildungsgerät-Koordinatensystem in Koordinaten im ausgewählten Koordinatensystem dar.'
    Public Sub gs_XformCameraToWorldWjm(vx3In As VERTEX3D, vx3Out As VERTEX3D, obj2D As Object)
    Dim v1 As VERTEX3D
    Dim v2 As VERTEX3D
    Dim vRot As VERTEX3D
    Dim dCosAngle As Double
    Dim dAngle As Double
    Dim dTwist As Double
    Dim dLongitude As Double
    Dim dLatitude As Double
    Dim dDistance As Double
    Call gs_rot3DC0xC0yWjm(vx3In, obj2D, False, v2)
    v1 = v2
  • 'Die obige Aufrufroutine kompensiert die Orientierung von Cx und Cy-Werten des Abbildungsensors zum Transformieren des rechten Abbildungsgerät-Koordinatensystems in das gewählte Koordinatensystem. Die Kompensation des Cy-Werts kann durch eine Winkeldrehung in der X'-Achse gewonnen werden, welche die Position der Y'-Z'-Ebene ändert. Der Startpunkt und der Endpunkt der rechten Sichtlinie werden durch den Betrag der Winkeldrehung zur Änderung in der Y'-Z'-Ebene kompensiert. Die Kompensation des Cx-Werts kann durch die Winkeldrehung in der Y'-Achse gewonnen werden, welche die Position der X'-Z'-Ebene ändert. Der Startpunkt und der Endpunkt der rechten Sichtlinie werden durch den Winkeldrehungsbetrag zur Änderung in der Y'-Z'-Ebene kompensiert. Wenn die Orientierung Cx und Cy für das rechte Abbildungsgerät kompensiert wird, wird das Zentrum des rechten Abbildungssensors mit dem Pinhole des rechten Abbildungsgeräts und dem Ursprung des ausgewählten Koordinatensystems ausgerichtet. Die neue Position des Startpunkts und des Endpunkts der rechten Sichtlinie berücksichtigt die Wahrnehmung der Punkte von der geänderten Position des rechten Abbildungssensors.'
    dTwist = obj2D.f2_dCAMTtwist·const_PI/190
    Call gs_rot3dZ(–dTwist, v1, v2)
    v1 = v2
  • 'Die obige Aufrufroutine kompensiert die Rollbewegung des rechten Abbildungssensors mit Bezug auf das ausgewählte Koordinatensystem. Die Kompensation des Rollwerts, der durch eine Winkeldrehung in der Z'-Achse gewonnen werden kann, was die Position der X'-Y'-Ebene ändert. Der Startpunkt und der Endpunkt der rechten Sichtlinie werden durch den Winkeldrehungsbetrag für die Änderung in der X'-Y'-Ebene kompensiert. Die neue Position des Startpunkts und des Endpunkts der rechten Sichtlinie berücksichtigt die Erfassung der Punkte aus der geänderten Position des rechten Abbildungssensors.'
  • 'Bewegen um f entlang z-Achse, um uns in das Zentrum der Welt zu bewegen
    dDistance = obj2D.f2_dCAMZ
    v1.dZ = v1.dZ + dDistance
  • 'Die obigen drei Zeilen zeigen die Kompensation des Radius des transformierten rechten Abbildungsgerät-Koordinatensystems. Zu beachten ist, daß nach der Kompensation von Cx, Cy und der Rollbewegung das rechte Abbildungsgerät-Koordinatensystem mit dem ausgewählten Koordinatensystem ausgerichtet ist und den Ursprung am Pinhole des rechten Abbildungsgeräts hat. Durch Bewegen des Ursprungs am Pinhole in den Ursprung des ausgewählten Koordinatensystems berücksichtigt die Position des Startpunkts und des Endpunkts der rechten Sichtlinie die Wahrnehmung der Punkte mit dem rechten Abbildungssensor im Ursprung. Dies geschieht durch Kompensieren des Radius, des Breitenwinkels und des Längenwinkels des rechten Abbildungsgerät-Koordinatensystems auf das Koordinatensystem in das gewählte Koordinatensystem.'
    dLatitude = obj2D.f2_dCAMTIat·const_PI/190
    Call gs_rot3dX(–dLatitude, v1, v2)
    v1 = v2
  • 'Die obigen drei Zeilen stellen die Kompensation des Breitenwinkels dar.'
    dLongitude = obj2D.f2_dCAMTlong·const_PI/190
    Call gs_rot3dY(–dLongitude, v1, v2)
    v1 = v2
  • 'Die obigen drei Zeilen stellen die Kompensation des Längenwinkels dar.'
    vx3Out = v2
    End Sub
  • Unten werden Code-Beispiele für den Subroutinenaufruf zur Kompensation der Orientierung Cx und Cy-Werte des Abbildungssensors zum Transformieren des rechten Abbildungsgerät-Koordinatensystems in das gewählte Koordinatensystem angegeben.'

    Public Sub gs_rot3d0xC0yWjm(vx3In As VERTEX3D, obj2D As Object, forward As Boolean, vx3Out As VERTEX3D)
    Dim vx2v1 As VERTEX2D
    Dim vx2v2 As VERTEX2D
    Dim vx3v1 As VERTEX3D
    Dim vx3v2 As VERTEX3D
    Dim vx3Rot As VERTEX3D
    Dim DCosAngle As Double
    Dim dAngle As Double
    'create the corrected 2d coordinates
    vx2v1.dx = obj2D.f2_iCAMC0x – obj2D.f2_iCAMCx/2
    vx2v1.dy = obj2D.f2_iCAMC0y – obj2D.f2_iCAMCy/2
    'undo cox,coy through a rotation around the normal which is spanned by pinhole,cox,coy, and pinhole,0,0 ((z,x,y) as unit vectors)'
    'build 3d vectors for the two known points
    vx3v1.dx = 0
    vx3v1.dy = 0
    vx3v1.dZ = obj2D.f2_dCAMF
    vx3v2.dx = vx2v2.dx
    vx3v2.dy = vx2v2.dy
    vx3v2.dZ = Obj2D.f2_dCAMF
    'get the rotation angle and the normal vector
    Call gs_CosAngle3(vx3v1, vx3v2, dCosAngle)
    Call gs_ArcCosAngle, dAngle)
    If bForward = False Then
    dAngle = –dAngle
    End If
    Call gs_orth3(vx3v1, vx3v2, vx3Rot)
    Call gs_rot3dVec(dAngle, vx3Rot, vx3In, vx3Out)
    End Sub
  • 'Die Subroutine unten stellt das zweite Verfahren mit weiteren Einzelheiten dar.'
    Public Sub tc_Ln3ObjMakeLn2(In3A As LINE3D, In2A As LINE2D, obj2D As Object)
    Dim vx2A As VERTEX2D
    Dim vx2B As VERTEX2D
    Dim vx3AWorld As VERTEX3D
    Dim vx3ACam As VERTEX3D
    Dim vx3BWorld As VERTEX3D
    Dim vx3BCam As VERTEX3D
    'transform the 3D line into camera coordinates
    vx3AWorld = In3A.vx3A
    vx3BWorld = In3A.vx3B
    Call gs_XformWorldToCamera(vx3AWorld, vx3ACam, vx2A, obj2D)
  • 'Die oben angegebene Aufrufroutine transformiert den Startpunkt der rechten Sichtlinie in dem gewählten Koordinatensystem in eine Koordinate in der linken Abbildungssensorebene des linken Abbildungsgerät-Koordinatensystems.'
    Call gs_XformWorldToCamera(vx3Bworld, vx3Bcam, vx2B, obj2D)
  • 'Die obige Aufrufroutine transformiert den Endpunkt der rechten Sichtlinie in dem gewählten Koordinatensystem in eine Koordinate in der linken Abbildungssensorebene des linken Abbildungsgerät-Koordinatensystems.'
    In2A.vx2A = vx2A
    In2A.vx2B = vx2B
    End Sub
  • 'Unten wird eine beispielsweise Aufrufroutine zum Transformieren eines Punktes in dem gewählten Koordinatensystem in einen Punkt in dem Abbildungsgerät-Koordinatensystem angegeben. Die unten stehende Routine kann auf den Startpunkt und den Endpunkt der rechten Sichtlinie angewendet werden.'
    Public Sub gs_XformWorldToCameraWjm(vx3In As VERTEX3D, vx3Out As VERTEX3D, obj2D As Object)
    Dim dAlpha As Double
    Dim dBeta As Double
    Dim dF As Double
    Dim dDistance As Double
    Dim dLongitude As Double
    Dim dLatitude As Double
    Dim dTwist As Double
    Dim vx3Rot As VERTEX3D
    Dim iC0x As Integer
    Dim iC0y As Integer
    Dim iCx As Integer
    Dim iCy As Integer
    Dim vx3v1 As VERTEX3D
    Dim vx3v2 As VERTEX3D
    dLongitude = obj2D.f2_dCAMTlong·3.1415926/180
    dLatitude = obj2D.f2_dCAMTIat·3.1415926/180
    dTwist = obj2D.f2_dCAMTtwist·3.1415926/180
    dF = obj2D.f2_dCAMF
    dDistance = obj2D.f2_dCAMZ
    Call gs_rot3dY(–dLongitude, vx3In, vx3v2)
  • 'Die obige Aufrufroutine wendet einen Längenwinkel des Pinholes des linken Abbildungsgeräts auf einen Punkt in dem gewählten Koordinatensystem an.'
    vx3v1 = vx3v2
    Call gs_rot3dX(dLatitude, vx3v1, vx3v2)
  • 'Die obige Aufrufroutine appliziert einen Breitenwinkel des Pinholes des linken Abbildungsgeräts auf den Punkt in dem gewählten Koordinatensystem.'
    vx3v1= vx3v2
    vx3v1.dZ = vx3v1.dZ – dDistance
  • 'Die obige Aufrufroutine appliziert einen Radius des Pinholes des linken Abbildungsgeräts auf den Punkt in dem gewählten Koordinatensystem.'
    Call gs_rot3dZ(dTwist, vx3v1, vx3v2)
  • 'Die obige Aufrufroutine appliziert eine Rollbewegung des linken Abbildungsgeräts auf den Punkt in dem gewählten Koordinatensystem.'
    vx3v1 = vx3v2
    'apply c0x,c0y
    Call gs_rot3dC0xC0yWjm(vx3v1, obj2D, True, vx3v2)
  • 'Die obige Aufrufroutine appliziert eine Cx und Cy des Abbildungssensors auf den Punkt in dem ausgewählten Koordinatensystem.'
    vx3v1 = vx3v2
    vx3Out = vx3v2
    End Sub
  • Zu beachten ist, daß nach der Transformation der Koordinaten des Startpunkts und des Endpunkts im rechten Abbildungsgerät-Koordinatensystem in Koordinaten im linken Abbildungsgerät-Koordinatensystem das Pinhole des linken Abbildungsgeräts, das der Ursprung des linken Abbildungsgerät-Koordinatensystem sein kann, zum Projizieren des transformierten Startpunkts und des Endpunkts auf dem linken Abbildungssensor verwendet werden kann. Anders ausgedrückt, aus den bekannten Koordinaten des Startpunkts und des Endpunkts im linken Abbildungsgerät-Koordinatensystem, der bekannten Koordinate des linken Pinholes, können zwei Gleichungen bestimmt werden, entsprechend der Sichtlinie des Startpunkts und des Endpunkts. Aus der bekannten Pinholelänge des linken Abbildungsgeräts können die beiden Punkte auf dem Ort des linken Abbildungssensors bestimmt werden. Aus den beiden lokalisierten Punkten kann eine Linie auf dem linken Abbildungssensor gezogen werden, die der Sichtlinie des ersten Abbildungsgeräts, wahrgenommen von dem linken Abbildungssensor entspricht.
  • Im Block 126 bestimmt das Rechengerät die X, Y, Z-Koordinaten des entsprechenden Punkts D2 (siehe 12) am linken Abbildungssensor 14, und un ter Verwendung der bekannten X, Y, Z-Koordinate des linken Pinholes PL, bestimmt durch Kalibrierung, wird eine Gleichung abgeleitet, die eine durch einen entsprechenden Punkt D2 und das linke Pinhole PL laufende Linie L2 darstellt. Block 128 zeigt das Rechengerät beim Berechnen der X, Y, Z-Koordinate eines Punkts auf dem Objekt, der dem bezeichneten Punkt auf dem rechten Abbildungssensor entspricht, und zwar unter Verwendung der aus Block 124 und Block 126 abgeleiteten Gleichungen. Zu beachten ist, daß die Gleichungen Variablen haben, ausgedrückt durch die Pinhole-Koordinate, welche nach einer Koordinate in dem gewählten Koordinatensystem definiert ist. Daher wird die X, Y, Z-Koordinate des Punktes auf dem Objekt zu einer Koordinate in dem gewählten Koordinatensystem. Block 130 stellt die Bestimmung dar, wenn es mehrere Punkte auf der zu verarbeitenden Vertikallinie gibt, und wenn dies so ist, wird der Zähler inkrementiert, und die in den Blöcken 120130 dargestellten Schritte werden ausgeführt. Block 132 zeigt die Bestimmung für den Fall, daß es mehrere zu verarbeitende vertikale Linien gibt. Blöcke 120132 stellen dar, ob es mehrere zu verarbeitende vertikale Linien gibt, wobei der Zähler inkrementiert und der Prozeß wiederholt wird. Anderenfalls ist die Extraktion der 3-D-Daten beendet, und der Prozeß steht still.

Claims (35)

  1. Einrichtung zum Aufnehmen eines dreidimensionalen Abbilds eines Zielobjekts einschließlich seiner Oberflächenstruktur (Textur), aufweisend: eine eine Beugungseinrichtung (17) aufweisende Lichtquelle (16) zum Erzeugen eines auf das Zielobjekt gerichteten strukturierten Lichts; ein mit der Beugungseinrichtung (17) gekoppeltes Filter (18) zum Codieren des auf das Zielobjekt gerichteten strukturierten Lichts derart, daß benachbarte Teile des strukturierten Lichts voneinander unterscheidbar sind; und eine Mehrzahl von Bildaufnahmeeinrichtungen (2224) zum Aufnehmen von Bildern des Zielobjekts, wobei die Mehrzahl von Bildaufnahmeeinrichtungen umfaßt: eine erste monochrome Bildaufnahmeeinrichtung (22) zum Aufnehmen eines ersten Abbilds wenigstens eines Teils der Oberfläche des Zielobjekts; eine zweite monochrome Bildaufnahmeeinrichtung (23) zum Aufnehmen eines zweiten Abbilds wenigstens eines Teils der Oberfläche des Zielobjekts und wenigstens eine Farbbildaufnahmeeinrichtung (24) zum Aufnehmen von Oberflächenstrukturdaten des Zielobjekts, wobei das erste und das zweite Abbild verwendet werden, um ein dreidimensionales Abbild wenigstens eines Teils des Zielobjekts zu erzeugen.
  2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß eine Datenverarbeitungseinrichtung (19) das erste Abbild, das zweite Abbild und die Oberflächenstrukturdaten verarbeitet und ein dreidimensionales Modell wenigstens eines Teils des Zielobjekts erzeugt.
  3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Erzeugung des dreidimensionalen Modells wenigstens eines Teils des Zielobjekts umfaßt: Extrahieren einer Mehrzahl von dreidimensionalen Daten entsprechenden Punkten aus dem ersten und dem zweiten Abbild; und Ausbilden von Linien zwischen den mehreren Punkten in Übereinstimmung mit einem vorgegebenen Algorithmus, so daß eine Oberflächenstruktur eines Teils des Zielobjekts gebildet wird.
  4. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Lichtquelle, die das strukturierte Licht erzeugt, Licht im nicht-sichtbaren Spektralbereich emittiert und die erste und die zweite monochrome Bildaufnahmeeinrichtung das erste und das zweite Abbild in dem nicht-sichtbaren Spektralbereich aufnehmen.
  5. Einrichtung nach Anspruch 4, dadurch gekennzeichnet, daß das erste und das zweite Abbild und die Oberflächenstrukturdaten gleichzeitig aufgenommen werden.
  6. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Lichtquelle, die das strukturierte Licht erzeugt, Licht im sichtbaren Spektralbereich erzeugt und die erste und die zweite Bildaufnahmeeinrichtung das erste und das zweite Abbild im sichtbaren Spektralbereich aufnehmen.
  7. Einrichtung nach Anspruch 6, dadurch gekennzeichnet, daß die Erzeugung des auf das Zielobjekt gerichteten strukturierten Lichts dann unterbrochen wird, wenn die Oberflächenstrukturdaten von der Farbbildaufnahmeeinrichtung aufgenommen werden.
  8. Einrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß das strukturierte Licht Anordnungen von Linien, Gittern, Flecken und/oder segmentierten Linien umfaßt.
  9. Einrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß das strukturierte Licht aus Lichtlinien besteht und daß die Codierung des strukturierten Lichts darüber hinaus die Codierung der Lichtlinien in segmentierte Lichtlinien derart einschließt, daß benachbarte Lichtlinien unterschiedliche Segmentierungen aufweisen.
  10. Einrichtung nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, daß die Bildaufnahmeeinrichtungen Camcorder und/oder Digitalkameras umfassen.
  11. Einrichtung zum Aufnehmen eines dreidimensionalen Abbilds eines Zielobjekts einschließlich seiner Oberflächenstruktur, aufweisend: eine eine Beugungseinrichtung (17) aufweisende Lichtquelle (16) zum Erzeugen eines auf das Zielobjekt gerichteten strukturierten Lichts; ein mit der Beugungseinrichtung (17) gekoppeltes Filter (18) zum Codieren des auf das Zielobjekt gerichteten strukturierten Lichts derart, daß benachbarte Teile des Lichts voneinander unterscheidbar sind, wobei die Lichtquelle, die das strukturierte Licht erzeugt, Licht im nicht-sichtbaren Spektralbereich emittiert; und eine Mehrzahl von Bildaufnahmeeinrichtungen (12, 13; 2224) zum Aufnehmen von Abbildern des Zielobjekts, wobei die Bildaufnahmeeinrichtungen ein erstes Abbild wenigstens eines Teils der Oberfläche des Zielobjekts, ein zweites Abbild wenigstens eines Teils der Oberfläche des Zielobjekts und Oberflächenstrukturdaten des Zielobjekts aufnehmen, wobei das erste, das zweite Abbild und die Oberflächenstrukturdaten gleichzeitig aufgenommen werden, wobei die Einrichtung das erste und das zweite Abbild verwendet, um ein dreidimensionales Abbild wenigstens eines Teils des Zielobjekts zu erzeugen.
  12. Einrichtung nach Anspruch 11, dadurch gekennzeichnet, daß eine Datenverarbeitungseinrichtung (19) das erste Abbild, das zweite Abbild und die Oberflächenstrukturdaten verarbeitet und eine dreidimensionales Modell wenigstens eines Teils des Zielobjekts erzeugt.
  13. Einrichtung nach Anspruch 12, dadurch gekennzeichnet, daß die Erzeugung eines dreidimensionalen Modells wenigstens eines Teils des Zielobjekts umfaßt: Extrahieren einer Mehrzahl von den dreidimensionalen Daten entsprechenden Punkten aus dem ersten Abbild und dem zweiten Abbild; und Ausbilden von Linien zwischen der Mehrzahl von Punkten in Übereinstimmung mit einem vorgegebenen Algorithmus, um eine Oberflächenform für den Teil des Zielobjekts zu erzeugen.
  14. Einrichtung nach einem der Ansprüche 11 bis 13, dadurch gekennzeichnet, daß die Bildaufnahmeeinrichtungen, die das erste und das zweite Abbild aufnehmen, so ausgebildet sind, daß sie Abbilder im nicht-sichtbaren Spektralbereich der Lichtquelle des strukturierten Lichts aufnehmen können.
  15. Einrichtung nach einem der Ansprüche 11 bis 14, dadurch gekennzeichnet, daß das strukturierte Licht Anordnungen von Linien, Gittern, Punkten und/oder segmentierten Linien umfaßt.
  16. Einrichtung nach einem der Ansprüche 11 bis 14, dadurch gekennzeichnet, daß das strukturierte Licht aus Lichtlinien besteht und daß die Codierung des strukturierten Lichts darüber hinaus das Codieren der Lichtlinien in segmentierte Lichtlinien derart einschließt, daß benachbarte segmentierte Lichtlinien unterschiedliche Segmentierungsstrukturen aufweisen.
  17. Einrichtung nach einem der Ansprüche 11 bis 16, dadurch gekennzeichnet, daß die Bildaufnahmeeinrichtungen Camcorder und/oder Digitalkameras umfassen.
  18. Verfahren zum Aufnehmen eines dreidimensionalen Abbilds eines Zielobjekts einschließlich seiner Oberflächenstruktur, umfassend: Projizieren (41) eines codierten strukturierten Lichts auf das Zielobjekt, wobei die Codierung benachbarte Teile des strukturierten Lichts unterscheidbar macht; Erzeugen eines dreidimensionalen Abbilds wenigstens eines Teils des Zielobjekts, indem ein erstes Abbild und ein zweites Abbild des Zielobjekts aufgenommen werden (42), wobei das erste Abbild und das zweite Abbild von jeweils wenigstens einer monochromen Bildaufnahmeeinrichtung ausgenommen werden; und Aufnehmen (44) von Oberflächenstrukturdaten des Zielobjekts, wobei die Oberflächenstrukturdaten durch wenigstens eine Farbbildaufnahmeeinrichtung aufgenommen werden.
  19. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß das erste und das zweite Abbild so aufgenommen werden, daß sie sich überlappen.
  20. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß mit Hilfe einer Datenverarbeitungseinrichtung das räumliche Abbild und die Oberflächenstrukturdaten verwendet werden, um ein dreidimensionales Modell wenigstens eines Teils des Zielobjekts zu erzeugen.
  21. Verfahren nach Anspruch 20, dadurch gekennzeichnet, daß die Erzeugung des dreidimensionalen Modells des Teils des Zielobjekts umfaßt: Extrahieren einer Mehrzahl von dem dreidimensionalen Daten entsprechenden Punkten aus dem ersten und dem zweiten Abbild; und Ausbilden von Linien zwischen der Mehrzahl von Punkten in Übereinstimmung mit einem vorgegebenen Algorithmus derart, daß eine Oberflächenform des Teils des Zielobjekts gebildet wird.
  22. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß das strukturierte Licht in einem nicht-sichtbaren Spektralbereich emittiert wird und daß das erste und das zweite Abbild in diesem nicht-sichtbaren Spektralbereich aufgenommen werden.
  23. Verfahren nach Anspruch 22, dadurch gekennzeichnet, daß das erste und das zweite Abbild und die Oberflächenstrukturdaten gleichzeitig aufgenommen werden.
  24. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß das strukturierte Licht im sichtbaren Spektralbereich emittiert wird.
  25. Verfahren nach Anspruch 24, dadurch gekennzeichnet, daß das Projizieren des strukturierten Lichts auf das Zielobjekt unterbrochen wird (43), wenn die Oberflächenstrukturdaten aufgenommen werden.
  26. Verfahren nach einem der Ansprüche 18 bis 25, dadurch gekennzeichnet, daß das strukturierte Licht Anordnungen von Linien, Gittern, Punkten und/oder segmentierten Linien umfaßt.
  27. Verfahren nach einem der Ansprüche 18 bis 25, dadurch gekennzeichnet, daß das strukturierte Licht aus Lichtlinien besteht und daß die Codierung des strukturierten Lichts darüber hinaus eine Codierung der Lichtlinien in segmentierte Lichtlinien derart einschließt, daß benachbarte segmentierte Lichtlinien unterschiedliche Segmentierungsstrukturen aufweisen.
  28. Verfahren nach einem der Ansprüche 18 bis 27, dadurch gekennzeichnet, daß das erste und das zweite Abbild und die Oberflächenstrukturdaten durch eine Mehrzahl von Bildaufnahmeeinrichtungen aufgenommen werden, wobei jede der Bildaufnahmeeinrichtungen entweder ein Camcorder oder eine Digitalkamera ist.
  29. Verfahren zum Aufnehmen eines dreidimensionalen Abbilds eines Zielobjekts einschließlich seiner Oberflächenstruktur, umfassend: Projizieren (41) eines codierten strukturierten Lichts auf ein Zielobjekt, wobei das Codieren des strukturierten Lichts benachbarte Teile des strukturierten Lichts unterscheidbar macht, wobei das strukturierte Licht im nicht-sichtbaren Spektralbereich emittiert wird; Erzeugen eines dreidimensionalen Abbilds wenigstens eines Teils des Zielobjekts, indem ein erstes Abbild und ein zweites Abbild des Zielobjekts in dem nicht-sichtbaren Spektralbereich aufgenommen werden (42); und Aufnehmen (44) von Oberflächenstrukturdaten des Zielobjekts, wobei das erste und das zweite Abbild und die Oberflächenstrukturdaten gleichzeitig aufgenommen werden.
  30. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß sich das erste und das zweite Abbild überlappen.
  31. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß eine Datenverarbeitungseinrichtung verwendet wird, um das räumliche Abbild und die Oberflächenstrukturdaten derart zu verarbeiten, daß ein dreidimensionales Modell wenigstens eines Teils des Zielobjekts erzeugt wird.
  32. Verfahren nach Anspruch 31, dadurch gekennzeichnet, daß die Erzeugung eines dreidimensionalen Modells des Teils des Zielobjekts umfaßt: Extrahieren einer Mehrzahl von den dreidimensionalen Daten entsprechenden Punkten aus dem ersten und dem zweiten Abbild; und Ausbilden von Linien zwischen der Mehrzahl von Punkten in Übereinstimmung mit einem vorgegebenen Algorithmus, um eine Oberflächenform des Teils des Zielobjekts zu bilden.
  33. Verfahren nach Anspruch 29, dadurch gekennzeichnet, daß mehrere Bildaufnahmeeinrichtungen das erste und das zweite Abbild aufnehmen, wobei die Bildaufnahmeeinrichtungen so ausgebildet sind, daß sie von der Lichtquelle emittiertes und dann reflektiertes Licht in dem nicht-sichtbaren Spektralbereich aufnehmen.
  34. Verfahren nach einem der Ansprüche 29 bis 33, dadurch gekennzeichnet, daß das strukturierte Licht Anordnungen von Linien, Gittern, Punkten und/oder segmentierten Linien aufweist.
  35. Verfahren nach einem der Ansprüche 29 bis 33, dadurch gekennzeichnet, daß das strukturierte Licht Lichtlinien aufweist und die Codierung des strukturierten Lichts ferner eine Codierung der Lichtlinien in segmentierte Lichtlinien derart einschließt, daß eine segmentierte Lichtlinie und eine benachbarte segmentierte Lichtlinie verschiedene Segmentierungsstrukturen haben.
DE19983341T 1998-06-30 1999-05-20 Verfahren und Einrichtung zur Erfassung stereoskopischer Bilder unter Verwendung von Bildsensoren Expired - Fee Related DE19983341B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/108,907 US6377700B1 (en) 1998-06-30 1998-06-30 Method and apparatus for capturing stereoscopic images using image sensors
US09/108,907 1998-06-30
PCT/US1999/011284 WO2000000926A1 (en) 1998-06-30 1999-05-20 Method and apparatus for capturing stereoscopic images using image sensors

Publications (2)

Publication Number Publication Date
DE19983341T1 DE19983341T1 (de) 2002-07-11
DE19983341B4 true DE19983341B4 (de) 2007-07-05

Family

ID=22324751

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19983341T Expired - Fee Related DE19983341B4 (de) 1998-06-30 1999-05-20 Verfahren und Einrichtung zur Erfassung stereoskopischer Bilder unter Verwendung von Bildsensoren

Country Status (8)

Country Link
US (1) US6377700B1 (de)
JP (1) JP2002519791A (de)
KR (1) KR100407436B1 (de)
AU (1) AU4093499A (de)
DE (1) DE19983341B4 (de)
GB (1) GB2354661B (de)
TW (1) TW533355B (de)
WO (1) WO2000000926A1 (de)

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6858826B2 (en) * 1996-10-25 2005-02-22 Waveworx Inc. Method and apparatus for scanning three-dimensional objects
JP2001165638A (ja) * 1999-02-19 2001-06-22 Sanyo Electric Co Ltd 三次元モデル提供装置及びその方法
US6751344B1 (en) * 1999-05-28 2004-06-15 Champion Orthotic Investments, Inc. Enhanced projector system for machine vision
JP4658787B2 (ja) * 2000-02-21 2011-03-23 シャープ株式会社 画像合成装置
US7660444B2 (en) * 2000-02-24 2010-02-09 Nokia Corporation Method and apparatus for user recognition using CCD cameras
US6775397B1 (en) * 2000-02-24 2004-08-10 Nokia Corporation Method and apparatus for user recognition using CCD cameras
JP3867512B2 (ja) * 2000-06-29 2007-01-10 富士ゼロックス株式会社 画像処理装置および画像処理方法、並びにプログラム
US6795200B1 (en) * 2000-11-13 2004-09-21 Point Grey Research Inc. Method and system for dimensioning boxes or other cuboid objects
US6997387B1 (en) * 2001-03-28 2006-02-14 The Code Corporation Apparatus and method for calibration of projected target point within an image
JP2003294416A (ja) * 2002-04-03 2003-10-15 Eng Kk ステレオ画像処理装置
US20030202124A1 (en) * 2002-04-26 2003-10-30 Alden Ray M. Ingrained field video advertising process
US7257236B2 (en) 2002-05-22 2007-08-14 A4Vision Methods and systems for detecting and recognizing objects in a controlled wide area
US7174033B2 (en) 2002-05-22 2007-02-06 A4Vision Methods and systems for detecting and recognizing an object based on 3D image data
US7103212B2 (en) 2002-11-22 2006-09-05 Strider Labs, Inc. Acquisition of three-dimensional images by an active stereo technique using locally unique patterns
EP1594085A4 (de) * 2003-02-13 2008-02-27 Nec Corp Einrichtung und verfahren zur erkennung unbefugter personen
DE10315923A1 (de) * 2003-04-08 2004-10-28 Tbs Holding Ag Verfahren und Anordnung zur berührungslosen Detektion von Daten unebener Flächen
US7557966B2 (en) * 2004-08-11 2009-07-07 Acushnet Company Apparatus and method for scanning an object
AU2013251233B2 (en) * 2004-08-12 2014-09-04 Bioscrypt, Inc. Apparatus and method for performing enrollment of user biometric information
CA2615316C (en) * 2004-08-12 2013-02-12 A4 Vision S.A. Device for contactlessly controlling the surface profile of objects
AU2011253652B2 (en) * 2004-08-12 2013-08-01 Bioscrypt, Inc. Apparatus and method for performing enrollment of user biometric information
US7646896B2 (en) * 2005-08-02 2010-01-12 A4Vision Apparatus and method for performing enrollment of user biometric information
US9117107B2 (en) * 2004-08-12 2015-08-25 Bioscrypt, Inc. Device for biometrically controlling a face surface
DE112004003011A5 (de) * 2004-08-25 2007-08-09 Tbs Holding Ag Verfahren und Anordnung zur optischen Aufnahme biometrischer Daten
WO2006074310A2 (en) * 2005-01-07 2006-07-13 Gesturetek, Inc. Creating 3d images of objects by illuminating with infrared patterns
US8144118B2 (en) * 2005-01-21 2012-03-27 Qualcomm Incorporated Motion-based tracking
DE102005013045B4 (de) * 2005-03-18 2013-03-14 Siemens Aktiengesellschaft Fluoreszenz-Scanner für molekulare Signaturen
DE102005013043A1 (de) * 2005-03-18 2006-09-28 Siemens Ag Mobiler Fluoreszenz-Scanner für molekulare Signaturen
DE102005013042A1 (de) * 2005-03-18 2006-09-28 Siemens Ag Einrichtung zur Erzeugung von 3D-Fluoreszenz-oder Lumineszenz-Scans
DE102005013044B4 (de) * 2005-03-18 2007-08-09 Siemens Ag Fluoreszenz-Scanner
WO2006124935A2 (en) 2005-05-17 2006-11-23 Gesturetek, Inc. Orientation-sensitive signal output
GB0515915D0 (en) * 2005-08-02 2005-09-07 Isis Innovation Method and system for three-dimensional data capture
US20070047774A1 (en) * 2005-08-31 2007-03-01 Artiom Yukhin Method and apparatus for performing enrollment of 2D and 3D face biometrics
EP1946567A4 (de) * 2005-10-04 2009-02-18 Eugene J Alexander Einrichtung zum erzeugen dreidimensionaler oberflächenmodelle beweglicher objekte
US9330324B2 (en) 2005-10-11 2016-05-03 Apple Inc. Error compensation in three-dimensional mapping
US8400494B2 (en) 2005-10-11 2013-03-19 Primesense Ltd. Method and system for object reconstruction
US8390821B2 (en) 2005-10-11 2013-03-05 Primesense Ltd. Three-dimensional sensing using speckle patterns
US8223208B2 (en) 2005-11-10 2012-07-17 Motion Analysis Corporation Device and method for calibrating an imaging device for generating three dimensional surface models of moving objects
US20070229850A1 (en) * 2006-04-04 2007-10-04 Boxternal Logics, Llc System and method for three-dimensional image capture
KR100801087B1 (ko) * 2006-07-05 2008-02-11 삼성전자주식회사 스트럭처드 라이트를 이용한 이동체 감지 시스템 및 방법,상기 시스템을 포함하는 이동 로봇
EP2613281B1 (de) * 2006-12-29 2014-08-13 Qualcomm Incorporated Bearbeitung virtueller Objekte mithilfe eines erweiterten interaktiven Systems
TWI433052B (zh) 2007-04-02 2014-04-01 Primesense Ltd 使用投影圖案之深度製圖
US8494252B2 (en) 2007-06-19 2013-07-23 Primesense Ltd. Depth mapping using optical elements having non-uniform focal characteristics
US20090103783A1 (en) * 2007-10-19 2009-04-23 Artec Ventures System and Method for Biometric Behavior Context-Based Human Recognition
WO2009061423A2 (en) * 2007-11-05 2009-05-14 Doubleshot, Inc. Methods and systems for navigation and terrain change detection
US8050468B2 (en) * 2008-03-05 2011-11-01 Honeywell International Inc. Fingerprint acquisition system
US8643641B2 (en) * 2008-05-12 2014-02-04 Charles G. Passmore System and method for periodic body scan differencing
US8456517B2 (en) 2008-07-09 2013-06-04 Primesense Ltd. Integrated processor for 3D mapping
DE102008047413A1 (de) * 2008-09-16 2010-04-15 Hella Kgaa Hueck & Co. Vorrichtung und Verfahren zur Detektion von Objekten
US8786682B2 (en) * 2009-03-05 2014-07-22 Primesense Ltd. Reference image techniques for three-dimensional sensing
US8717417B2 (en) * 2009-04-16 2014-05-06 Primesense Ltd. Three-dimensional mapping and imaging
WO2011013079A1 (en) * 2009-07-30 2011-02-03 Primesense Ltd. Depth mapping based on pattern matching and stereoscopic information
US8830227B2 (en) * 2009-12-06 2014-09-09 Primesense Ltd. Depth-based gain control
US8982182B2 (en) * 2010-03-01 2015-03-17 Apple Inc. Non-uniform spatial resource allocation for depth mapping
US9098931B2 (en) 2010-08-11 2015-08-04 Apple Inc. Scanning projectors and image capture modules for 3D mapping
EP2643659B1 (de) 2010-11-19 2019-12-25 Apple Inc. Tiefenkartierung mit zeitkodierter beleuchtung
US9167138B2 (en) 2010-12-06 2015-10-20 Apple Inc. Pattern projection and imaging using lens arrays
US20120242795A1 (en) 2011-03-24 2012-09-27 Paul James Kane Digital 3d camera using periodic illumination
US9030528B2 (en) 2011-04-04 2015-05-12 Apple Inc. Multi-zone imaging sensor and lens array
KR101188357B1 (ko) * 2011-04-21 2012-10-08 정제교 기설정 배율각을 가진 다중투사광의 2차원 영상획득을 통한 3차원 인식 방법
TWI477885B (zh) * 2011-07-05 2015-03-21 Danic Ind Co Ltd 三維成像系統及方法
TWI510056B (zh) * 2011-12-27 2015-11-21 Hon Hai Prec Ind Co Ltd 3d成像模組及3d成像方法
KR101709844B1 (ko) 2012-02-15 2017-02-23 애플 인크. 맵핑 장치 및 맵핑하기 위한 방법
JP6112807B2 (ja) * 2012-09-11 2017-04-12 株式会社キーエンス 形状測定装置、形状測定方法および形状測定プログラム
DK2909807T3 (da) 2012-10-17 2020-04-14 Cathx Res Ltd Forbedringer i forhold til undervandsbilleddannelse til undervandsundersøgelser
CN104903680B (zh) * 2012-11-07 2019-01-08 阿泰克欧洲公司 控制三维物体的线性尺寸的方法
US11509880B2 (en) * 2012-11-14 2022-11-22 Qualcomm Incorporated Dynamic adjustment of light source power in structured light active depth sensing systems
CN103278141B (zh) * 2013-03-06 2016-05-18 北京工业大学 婴幼儿睡眠监控系统及方法
US10349037B2 (en) 2014-04-03 2019-07-09 Ams Sensors Singapore Pte. Ltd. Structured-stereo imaging assembly including separate imagers for different wavelengths
CN105222724B (zh) * 2015-09-10 2018-09-18 北京天远三维科技股份有限公司 多线阵列激光三维扫描系统及多线阵列激光三维扫描方法
US10542245B2 (en) * 2017-05-24 2020-01-21 Lg Electronics Inc. Mobile terminal and method for controlling the same
US10614292B2 (en) 2018-02-06 2020-04-07 Kneron Inc. Low-power face identification method capable of controlling power adaptively
CN108961195B (zh) * 2018-06-06 2021-03-23 Oppo广东移动通信有限公司 图像处理方法及装置、图像采集装置、可读存储介质和计算机设备
US11282231B2 (en) * 2018-12-21 2022-03-22 Sony Group Corporation Camera rig with multiple sensors
US11051001B2 (en) 2019-05-29 2021-06-29 Avigilon Corporation Method and system for generating a two-dimensional and a three-dimensional image stream
US11836940B2 (en) * 2020-06-15 2023-12-05 Zebra Technologies Corporation Three-dimensional sensor acuity recovery assistance
WO2023139254A1 (en) * 2022-01-24 2023-07-27 Trinamix Gmbh Enhanced material detection by stereo beam profile analysis

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4525858A (en) * 1983-01-03 1985-06-25 General Electric Company Method and apparatus for reconstruction of three-dimensional surfaces from interference fringes
DE4240940A1 (de) * 1992-12-06 1994-06-09 Robert Prof Dr Ing Massen Automatisierte Kreation von individualisierten Puppen und Masken
DE19516656A1 (de) * 1995-05-05 1996-11-14 Fraunhofer Ges Forschung Verfahren zum Erfassen der dreidimensionalen Form von Objekten

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4639878A (en) * 1985-06-04 1987-01-27 Gmf Robotics Corporation Method and system for automatically determining the position and attitude of an object
DE8808293U1 (de) * 1988-06-28 1989-07-27 Siemens Ag, 1000 Berlin Und 8000 Muenchen, De
DE4115401C2 (de) * 1991-05-10 1994-04-14 Rainer Dr Uhl Fluoreszenz-Meßvorrichtung zum Bestimmen der Ionenkonzentration eines Untersuchungsobjekts, das mit einem Fluoreszenzfarbstoff eingefärbt ist, dessen Anregungsmaximum sich in Abhängigkeit von der zu bestimmenden Ionenkonzentration ändert
US5548418A (en) * 1994-01-14 1996-08-20 Dcs Corporation Holographic structured light generator
AU1742895A (en) * 1994-06-09 1996-01-04 Kollmorgen Instrument Corporation Stereoscopic electro-optical system for automated inspection and/or alignment of imaging devices on a production assembly line
US6028672A (en) * 1996-09-30 2000-02-22 Zheng J. Geng High speed three dimensional imaging method
US5615003A (en) * 1994-11-29 1997-03-25 Hermary; Alexander T. Electromagnetic profile scanner
US5771310A (en) * 1996-12-30 1998-06-23 Shriners Hospitals For Children Method and apparatus for recording three-dimensional topographies
JPH1062154A (ja) * 1996-08-15 1998-03-06 Oki Electric Ind Co Ltd 測定値処理方法、形状の再構成方法および形状の再構成装置
US5832107A (en) * 1996-09-19 1998-11-03 Optical Gaging Products, Inc. Optical system for stereoscopically measuring feature heights based on lateral image offsets
US5864640A (en) * 1996-10-25 1999-01-26 Wavework, Inc. Method and apparatus for optically scanning three dimensional objects using color information in trackable patches
US5838428A (en) * 1997-02-28 1998-11-17 United States Of America As Represented By The Secretary Of The Navy System and method for high resolution range imaging with split light source and pattern mask
WO1999060525A1 (en) * 1998-05-15 1999-11-25 Tricorder Technology Plc Method and apparatus for 3d representation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4525858A (en) * 1983-01-03 1985-06-25 General Electric Company Method and apparatus for reconstruction of three-dimensional surfaces from interference fringes
DE4240940A1 (de) * 1992-12-06 1994-06-09 Robert Prof Dr Ing Massen Automatisierte Kreation von individualisierten Puppen und Masken
DE19516656A1 (de) * 1995-05-05 1996-11-14 Fraunhofer Ges Forschung Verfahren zum Erfassen der dreidimensionalen Form von Objekten

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ERNST, H.: "Einführung in die digitale Bildverar- beitung: Grundlagen und industrieller Einsatz mit zahlreichen Beispielen" Franzis-Verlag GmbH, 1991, S. 278-288
ERNST, H.: "Einführung in die digitale Bildverar- beitung: Grundlagen und industrieller Einsatz mit zahlreichen Beispielen" Franzis-Verlag GmbH, 1991,S. 278-288 *

Also Published As

Publication number Publication date
JP2002519791A (ja) 2002-07-02
GB2354661B (en) 2002-12-04
WO2000000926A1 (en) 2000-01-06
US6377700B1 (en) 2002-04-23
AU4093499A (en) 2000-01-17
GB0031147D0 (en) 2001-01-31
TW533355B (en) 2003-05-21
GB2354661A (en) 2001-03-28
DE19983341T1 (de) 2002-07-11
KR100407436B1 (ko) 2003-11-28
KR20010053347A (ko) 2001-06-25

Similar Documents

Publication Publication Date Title
DE19983341B4 (de) Verfahren und Einrichtung zur Erfassung stereoskopischer Bilder unter Verwendung von Bildsensoren
DE112020004813B4 (de) System zur Erweiterung von Sensorsystemen und Bildgebungssystemen mit Polarisation
DE102012112322B4 (de) Verfahren zum optischen Abtasten und Vermessen einer Umgebung
DE102012112321B4 (de) Vorrichtung zum optischen Abtasten und Vermessen einer Umgebung
DE69826753T2 (de) Optischer Profilsensor
DE102008002730B4 (de) Verfahren und Vorrichtung zur 3D-Rekonstruktion
DE69726025T2 (de) Verfahren und vorrichtung zum erhalten einer dreidimensionalen form
DE102006055758B4 (de) Verfahren zur Kalibrierung von Kameras und Projektoren
DE102009023896B4 (de) Vorrichtung und Verfahren zum Erfassen einer Pflanze
DE202012104890U1 (de) Vorrichtung zum optischen Abtasten und Vermessen einer Umgebung
DE102008002725B4 (de) Verfahren und Vorrichtung zur 3D-Rekonstruktion
WO2006024254A1 (de) Verfahren und vorrichtung zur darstellung eines digitalen bildes auf einer geometrisch und photometrisch nicht-trivialen oberfläche
DE112011105371T5 (de) Vorrichtung zum Synthetisieren von dreidimensionalen Bildern zum Visualisieren der Fahrzeugumgebung und zugehöriges Verfahren
EP3396409A1 (de) Verfahren zur kalibrierung einer kamera und eines laserscanners
DE4130237A1 (de) Verfahren und vorrichtung zur dreidimensionalen optischen vermessung von objektoberflaechen
WO2007079805A1 (de) Erstellung eines abstandsbildes
DE19525561C2 (de) 3D-Meßvorrichtung
DE10135300A1 (de) Verfahren und Einrichtung zum Messen dreidimensionaler Information
DE102011104216A1 (de) Verfahren und Vorrichtung zum dreidimensionalen Erfassen von Objekten sowie Computerprogrammprodukt
DE102016100132B4 (de) Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen
DE102012023623B4 (de) Verfahren zum Zusammensetzen von Teilaufnahmen einer Oberfläche eines Objektes zu einer Gesamtaufnahme des Objektes und System zum Erstellen einer Gesamtaufnahme eines Objektes
EP2019961B1 (de) Verfahren zum erzeugen von bildinformationen
EP3628995A1 (de) Kalibriervorlage und kalibrierverfahren zum geometrischen kalibrieren einer vielzahl von kameras eines kamera-arrays
DE102017010683B4 (de) Verfahren zur automatischen Wiederherstellung eines eingemessenen Zustands eines Projektionssystems
WO2016202562A1 (de) Streifenprojetionsverfahren, streifenprojektionsvorrichtung und computerprogrammprodukt

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee