DE102016100132B4 - Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen - Google Patents

Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen Download PDF

Info

Publication number
DE102016100132B4
DE102016100132B4 DE102016100132.5A DE102016100132A DE102016100132B4 DE 102016100132 B4 DE102016100132 B4 DE 102016100132B4 DE 102016100132 A DE102016100132 A DE 102016100132A DE 102016100132 B4 DE102016100132 B4 DE 102016100132B4
Authority
DE
Germany
Prior art keywords
spatial
patterns
cells
light
projection
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.)
Active
Application number
DE102016100132.5A
Other languages
English (en)
Other versions
DE102016100132A1 (de
Inventor
Sukhan Lee
Quang-Lam Bui
Jianying Shi
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.)
Sungkyunkwan University Foundation for Corporate Collaboration
GM Global Technology Operations LLC
Original Assignee
Sungkyunkwan University Foundation for Corporate Collaboration
GM Global Technology Operations LLC
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 Sungkyunkwan University Foundation for Corporate Collaboration, GM Global Technology Operations LLC filed Critical Sungkyunkwan University Foundation for Corporate Collaboration
Publication of DE102016100132A1 publication Critical patent/DE102016100132A1/de
Application granted granted Critical
Publication of DE102016100132B4 publication Critical patent/DE102016100132B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • 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
    • G01B11/2513Measuring 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 with several lines being projected in more than one direction, e.g. grids, patterns

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)

Abstract

Verfahren (100) zum Untersuchen eines Objekts (40) in einem Sichtfeld (35) unter Verwendung eines Systems zum maschinellen Sehen mit einer digitalen Kamera (10), wobei das Verfahren (100) umfasst, dass:
eine Vielzahl digital erzeugter Lichtmuster (302, 304, 330) sequentiell auf das Objekt (40) in dem Sichtfeld (35) projiziert wird (114), wobei die digital erzeugten Lichtmuster (302, 304, 330) erste und zweite Begrenzungslinienmuster (302, 304), die binäre Streifenmuster umfassen, und erste (330) und zweite räumliche Muster enthalten;
mithilfe der digitalen Kamera (10) eine Vielzahl von Bildern (15), die das Objekt (40) enthalten, aufgenommen werden (116), wobei jedes Bild (15) einem der projizierten Lichtmuster (302, 304, 330) zugeordnet ist;
räumliche Zellen (311) in dem Sichtfeld (35) gefunden werden (122), indem Codes in dem ersten (330) und zweiten räumlichen Muster, die Begrenzungslinien in dem ersten (330) und zweiten räumlichen Muster repräsentieren, mit Begrenzungslinien abgeglichen werden, die auf der Grundlage entweder des ersten (302) oder des zweiten (304) Begrenzungslinienmusters ermittelt werden (124);
die räumlichen Zellen (311) decodiert werden;
die decodierten räumlichen Zellen mit den Begrenzungslinien abgeglichen werden (126); und
dreidimensionale Punktwolkendaten (3D-Punktwolkenkdaten) des Objekts (40) auf der Grundlage der decodierten räumlichen Zellen, die mit den Begrenzungslinien abgeglichen wurden, erzeugt werden (128);
wobei das erste räumliche Projektionsmuster (330) ein räumliches Projektionsmuster mit vollem Umfang umfasst, das eine Vielzahl von Projektionsmustersätzen (320) enthält, die in eine nominell vertikale Richtung angeordnet sind, wobei jeder Projektionsmustersatz (320) eine Vielzahl von Projektionszellen (321) enthält, die entlang einer Linie horizontal angeordnet sind, wobei jede Projektionszelle (321) einen 3×3 Block aus Projektionszellen (311) enthält, der eine zufällig erzeugte Codezeichenfolge mit 9 Bit enthält, die dem 3×3 Block aus Projektionszellen (311) entspricht, wobei jedes Bit der Codezeichenfolge mit 9 Bit einen Lichtwert von 1 oder einen Lichtwert von 0 aufweist; und
wobei die räumlichen Zellen (311) decodiert werden, indem jeder gefundenen räumlichen Zelle (311) ein Lichtwert von 1 oder 0 zugeordnet wird und die Lichtwerte mit den Codes in dem ersten (330) und zweiten räumlichen Muster abgeglichen werden, welche den Projektionsmustersätzen (320) entsprechen.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Offenbarung betrifft Systeme zum maschinellen Sehen.
  • HINTERGRUND
  • Die hier bereitgestellte Hintergrundbeschreibung dient dem Zweck einer allgemeinen Darstellung des Kontexts der Offenbarung. Die Arbeit der gegenwärtig genannten Erfinder, sofern sie in diesem Hintergrundabschnitt beschrieben ist, sowie Aspekte der Beschreibung, die zum Zeitpunkt des Einreichens nicht anderweitig als Stand der Technik ausgewiesen sind, werden weder explizit noch implizit als Stand der Technik gegen die vorliegende Offenbarung anerkannt.
  • Bildgebungssysteme werden in Produktionsumgebungen eingesetzt, um stationäre Komponenten automatisch zu untersuchen. Bildgebungssysteme versuchen dreidimensionale Informationen (3D-Informationen) über ein Objekt in einem Sichtfeld für Qualitätsuntersuchungen, Nachbauten, Robotik und ähnliche Systeme zu ermitteln. Derartige Systeme verwenden eine Strukturbeleuchtung als Teil eines Stereo-Bildgebungssystems, um Licht auf ein Sichtfeld zu projizieren, wobei digitale Bilder eines Objekts in dem Sichtfeld aufgenommen werden und geometrische Verfahren und Decodierungstechniken verwendet werden, um Tiefenschärfen bzw. Bildtiefen [engl.: image depth] unter Verwendung der digitalen Bilder zu berechnen.
  • Die Druckschrift US 2012/0 133 954 A1 offenbart ein Verfahren zum Messen der Position eines Objekts, bei dem eine Projektionseinheit ein erstes Lichtmuster mit hellen und dunklen Abschnitten, ein zweites Lichtmuster mit hellen und dunklen Abschnitten, die schmaler als diejenigen des ersten Lichtmusters sind und eine Begrenzungslinie gemeinsam mit dem ersten Lichtmuster aufweisen, und ein drittes Lichtmuster, bei dem die Positionen der hellen und dunklen Abschnitte des zweiten Lichtmusters vertauscht sind, nacheinander auf das Objekt projiziert. Von jedem der Lichtmuster wird ein Bild aufgenommen und auf der Grundlage des zweiten und dritten aufgenommenen Bildes wird die Begrenzungslinie zwischen den hellen und dunklen Abschnitten des ersten Bilds berechnet, um eine Position des Objekts zu messen.
  • In der Druckschrift US 2013/0 314 696 A1 ist ein Verfahren zur Projektion eines Verbund-Codierungsmusters offenbart, das aus einer Trägerschicht mit Referenzmarkierungen, etwa Streifen, und einer Codierungsschicht mit eindeutigen Codewörtern besteht. Durch die Trägerschicht mit Referenzmarkierungen können Verzerrungen in der Codierungsschicht korrigiert werden.
  • Die Druckschrift WO 2013/ 132 494 A1 offenbart ein Verfahren zur kontaktlosen Messung der Geometrie einer dreidimensionalen Szene, bei dem mehrere und sich überlappende Lichtmuster mit unterschiedlichen Wellenlängen und/oder Polaritäten gleichzeitig darauf projiziert werden. In den sich überlappenden Lichtmustern sind alle Stellen durch die kombinierte Anordnung von Codeelementen von einem oder mehreren der sich überlappenden Lichtmuster codiert. Das von der Szene reflektierte codierte Licht wird für jede Wellenlänge und/oder Polarität verarbeitet, um separate Codewörter zu liefern. Daraus wird mit Stereoabgleich und Triangulation der Abstand zu der Szene berechnet.
  • In der Druckschrift US 2013/0 125 408 A1 ist ein portables Koordinatenmessgerät mit einem Gelenkarm offenbart, an dem eine Sonde mit einer berührungslosen dreidimensionalen Messvorrichtung angebracht ist, die codiertes strukturiertes Licht auf ein Objekt emittieren kann, um dreidimensionale Koordinaten eines Punkts auf dem Objekt zu bestimmen.
  • Die Druckschrift „Pattern codification strategies in structured light systems“ von J. Salvi et al. in Pattern Recognition 37, 2004, S. 827 - 849 beschreibt Verfahren mit Zeitmultiplex, bei denen Codemuster sequentiell nacheinander auf ein Objekt projiziert werden, und sie offenbart Codierungsverfahren beruhend auf Graustufen, bei denen ein Graustufenspektrum zum Codieren der Punkte eines Musters verwendet wird.
  • ZUSAMMENFASSUNG
  • Ein System zum maschinellen Sehen mit einer digitalen Kamera kann verwendet werden, um ein Objekt in einem Sichtfeld zu untersuchen. Ein Verfahren zum Untersuchen des Objekts umfasst, dass eine Vielzahl digital erzeugter Lichtmuster, die erste und zweite Begrenzungslinienmuster und erste und zweite räumliche Muster umfassen, auf das Objekt in dem Sichtfeld projiziert werden. Eine Vielzahl von Bildern, die das Objekt enthalten, wird mithilfe der digitalen Kamera aufgenommen, wobei jedes Bild einem der projizierten Lichtmuster zugeordnet ist. Es werden räumliche Zellen in dem Sichtfeld gefunden, indem Codes in dem ersten und zweiten räumlichen Muster mit Begrenzungslinien abgeglichen werden, die auf der Grundlage entweder des ersten oder des zweiten Begrenzungslinienmusters ermittelt wurden. Die räumlichen Zellen werden in dem Sichtfeld gefunden, indem Codes in den ersten und zweiten räumlichen Mustern mit Begrenzungslinien abgeglichen werden, die auf der Grundlage entweder des ersten oder des zweiten Begrenzungslinienmusters ermittelt wurden. Die räumlichen Zellen werden decodiert und mit den Begrenzungslinien abgeglichen.
  • Auf der Grundlage der decodierten räumlichen Zellen, die mit den Begrenzungslinien abgeglichen wurden, werden dreidimensionale Punktwolkendaten (3D-Punktwolkendaten) des Objekts erzeugt.
  • Die vorstehenden Merkmale und Vorteile und andere Merkmale und Vorteile der vorliegenden Lehren ergeben sich leicht aus der folgenden genauen Beschreibung einiger der besten Arten und anderer Ausführungsformen, um die vorliegenden Lehren auszuführen, die in den beigefügten Ansprüchen definiert sind, wenn sie in Verbindung mit den beiliegenden Zeichnungen gelesen wird.
  • Figurenliste
  • Es werden nun eine oder mehrere Ausführungsformen anhand von Beispielen mit Bezug auf die beiliegenden Zeichnungen beschrieben, in denen:
    • 1 auf schematische Weise ein beispielhaftes System zum maschinellen Sehen in Übereinstimmung mit der Offenbarung veranschaulicht, das einen Bilddetektor (eine Kamera), einen dazu benachbarten steuerbaren Lichtprojektor, einen Kamera/Projektor-Controller und einen analytischen Controller umfasst;
    • 2 auf schematische Weise eine Routine zum Erzeugen von 3D-Punktwolken in Übereinstimmung mit der Offenbarung zeigt, um eine 3D-Punktwolke von einem FOV von Bildern zu erzeugen, die unter Verwendung einer digitalen Kamera aufgenommen wurden;
    • 3-1 auf schematische Weise eine Ausführungsform des ersten Begrenzungslinienprojektionsmusters in Übereinstimmung mit der Offenbarung zeigt, das an den Projektor zur optischen Projektion in das FOV hinein übermittelt werden kann und das eine Vielzahl von nominell vertikalen Streifen enthält, welche als ein erstes binäres Streifenmuster erzeugt werden können, bei dem Zellen der Bildbits zwischen einem Wert 1 (Licht) und einem Wert 0 (kein Licht) abwechseln;
    • 3-2 auf schematische Weise eine Ausführungsform des zweiten Begrenzungslinienprojektionsmusters in Übereinstimmung mit der Offenbarung zeigt, das an den Projektor zur optischen Projektion in das FOV hinein übermittelt werden kann und das eine Vielzahl von nominell vertikalen Streifen enthält, welche als ein erstes binäres Streifenmuster erzeugt werden können, bei dem Zellen der Bildbits zwischen einem Wert 0 (kein Licht) und einem Wert 1 (Licht) abwechseln;
    • 3-3 auf schematische Weise einen Abschnitt eines räumlichen Projektionsmusters in der Form eines 3×3-Blocks von Zellen in Übereinstimmung mit der Offenbarung zeigt, welches ein räumliches Muster bereitstellt, das durch 9 Bits codiert werden kann, wobei jedes Bit einer der Zellen entspricht;
    • 3-4 auf schematische Weise einen Projektionsmustersatz in Übereinstimmung mit der Offenbarung zeigt, der drei Zeilen enthält, die aus einer Vielzahl von horizontal benachbarten 3x3-Blöcken von Zellen zusammengesetzt ist, wobei jeder der 3×3-Blöcke von Zellen auf einer zufällig erzeugten Codezeichenfolge mit 9 Bit beruht, die analog zu dem räumlichen 3×3-Muster ist, das mit Bezug auf 3-3 beschrieben ist; und
    • 3-5 ein Beispiel für ein erstes räumliches Projektionsmuster mit vollem Umfang in Übereinstimmung mit der Offenbarung zeigt, das erzeugt wird, indem der Projektionsmustersatz, der mit Bezug auf 3-4 gezeigt ist, über die Projektionsauflösung des Projektors hinweg wiederholt wird.
  • GENAUE BESCHREIBUNG
  • Mit Bezug nun auf die Zeichnungen, bei denen die Darstellungen nur zur Veranschaulichung bestimmter beispielhafter Ausführungsformen und nicht zur Einschränkung derselben gedacht sind, veranschaulicht 1 auf schematische Weise ein beispielhaftes System zum maschinellen Sehen mit einem Bildrekorder (einer Kamera) 10 und mit einem dazu benachbarten steuerbaren Lichtprojektor 50, die beide mit einem Kamera/Projektor-Controller 20 und einem analytischen Controller 60 signaltechnisch verbunden sind. Ein Systemauslösemechanismus 30 ist mit der Kamera 10, mit dem Projektor 50 und mit dem Controller 20 signaltechnisch verbunden.
  • Die Kamera 10 ist vorzugsweise eine Vorrichtung zum Aufzeichnen von digitalen Bildern, die in der Lage ist, ein zweidimensionales Bild (2D-Bild) 15 eines Sichtfelds (FOV) 35 in Ansprechen auf ein Auslösesignal aufnehmen, das von dem Auslösemechanismus 30 erzeugt wird. In einer Ausführungsform wird eine Stereokamera nicht benötigt, da ein einziges Bild mit einem darauf überlagerten oder projizierten Muster wie hier beschrieben ausreicht, um die Gestalt und Tiefe des Objekts in dem FOV 35 herzuleiten. Als Definition ist ein Bild eine beliebige visuell wahrnehmbare Darstellung, die ein Sichtfeld repräsentiert. Ein Bild kann in einer Ausführungsform das gesamte oder einen Teil des reflektierten Lichts in dem Sichtfeld aus einem Spektrum des sichtbaren Lichts umfassen, einschließlich einer Rot-Grün-Blau-Reflektion (RGB-Reflektion), einer Schwarz-Weiß-Reflektion, einer Grauskala-Reflektion oder einer beliebigen anderen geeigneten oder wünschenswerten Reflektion. Vorzugsweise wird ein Bild aufgenommen und in einem nicht vorübergehenden Speichermedium aufgezeichnet, etwa in einem nicht vorübergehenden digitalen Datenspeichermedium oder in einem Fotografiefilm.
  • Die Kamera 10 kann sich an einer beliebigen Position und Orientierung relativ zu dem FOV 35 befinden. In einer Ausführungsform enthält das FOV 35 ein Objekt 40, das auf einer beweglichen Ebene 45 orientiert ist, die sich in einer vorbestimmten Distanz 22 zu der Kamera 10 und dem Lichtprojektor 50 befindet. Das Objekt 40 ist eine strukturelle Entität mit Merkmalen, die beispielsweise unter anderem räumliche Dimensionen, Materialien und Oberflächenendbehandlungen umfasst, welche die Reflektivität anzeigen. In einer Ausführungsform kann das Objekt 40 eine Komponente oder eine Fläche an einem Fahrzeug in einer Montageanlage sein.
  • In einer Ausführungsform ist das auf der beweglichen Ebene 45 orientierte Objekt 40 auf einem ersten Transportsystem 42 montiert, welches das Objekt 40 in einem linearen Pfad 41 mit einer bekannten Geschwindigkeitsrate befördert und die Kamera 10 und der Lichtprojektor 50 sind an einem zweiten Transportsystem 12 montiert, das sie in einem entsprechenden linearen Pfad mit der bekannten Geschwindigkeitsrate über eine festgelegte Distanz befördert. Der lineare Pfad 41, in welchem das Objekt 40, die Kamera 10 und der Lichtprojektor 50 befördert werden, enthält das FOV 35 und der externe Auslösemechanismus 30 überwacht das FOV 35.
  • In einer Ausführungsform ist das von der Kamera 10 aufgenommene 2D-Bild 15 eine Bitmap-Bilddatei in der Form eines Grauskalenbilds mit 8-Bit, welches das FOV 35 repräsentiert. Andere Ausführungsformen des 2D-Bilds 15 können ein 2D-Farbbild umfassen, das ohne Einschränkung durch eine Hue-Saturation-Intensity (HSI-Triplets) oder Rot-, Grün-, Blau-Primärfarben (RGB-Primärfarben) des FOV 35 oder andere Bilddarstellungen repräsentiert wird. Die Kamera 10 enthält einen Bildaufnahmesensor, der mit dem Kamera/Projektor-Controller 20 signaltechnisch verbunden ist, welcher eine digitale Signalverarbeitung (DSP) auf dem 2D-Bild 15 ausführt. Der BildaufnahmeSensor nimmt Pixel in dem FOV 35 mit einer vorbestimmten Auflösung auf und der Kamera/Projektor-Controller 20 erzeugt eine Bitmap-Bilddatei 25 des FOV 35, z.B. eine 8-Bit-Bitmap der Pixel, die das FOV 35 mit einer vordefinierten Auflösung repräsentiert. Der Kamera/Projektor-Controller 20 erzeugt die Bitmap-Bilddatei 25, die an den Controller 20 übermittelt wird. In einer Ausführungsform ist die Bitmap-Bilddatei 25 eine codierte Datendatei, die in einem nicht vorübergehenden digitalen Datenspeichermedium gespeichert ist. Die Bitmap-Bilddatei 25 enthält eine digitale Repräsentation eines 2D-Bilds, das ein oder mehrere Objekte 40 mit einem projizierten und darauf überlagerten codierten Lichtmuster enthalten kann, und sie repräsentiert ein ursprüngliches Bild des FOV 35, das von der Kamera 10 mit der ursprünglichen Auflösung aufgenommen wurde. Beispielhafte überlagerte codierte Lichtmuster sind mit Bezug auf 3-1 bis 3-5 beschrieben. Das 2D-Bild 15 enthält das Objekt 40 mit einem darauf projizierten, überlagerten codierten Lichtmuster so, wie es in dem FOV 35 aufgenommen wurde. Der Bildaufnahmesensor der Kamera 10 nimmt das 2D-Bild 15 des FOV 35 mit einer Standarddefinitions-Nennauflösung auf, beispielsweise mit 640x480 Pixel. Alternativ kann der Bildaufnahmesensor der Kamera 10 das 2D-Bild 15 mit einer hochauflösenden Nennauflösung aufnehmen, beispielsweise mit 1440x1024 Pixel oder mit einer anderen geeigneten Auflösung. Der Bildaufnahmesensor der Kamera 10 nimmt das 2D-Bild 15 vorzugsweise in der Form einer Vielzahl von Standbildern auf. Das 2D-Bild 15 wird zur Speicherung und Analyse in die Bitmap-Bilddatei 25 umgewandelt.
  • Der Lichtprojektor 50 kann eine beliebige bekannte digitale Lichtverarbeitungsprojektorvorrichtung (DLP-Projektorvorrichtung) sein, die ausgestaltet ist, um optische Bilder in Ansprechen auf digitale Eingabesignale mit einer bekannten Projektionsauflösung zu erzeugen. Als nicht einschränkendes Beispiel kann der Projektor in einer Ausführungsform eine Projektionsauflösung von 854x480 Pixel aufweisen.
  • Der Kamera/Projektor-Controller 20 erzeugt auf digitale Weise Lichtmuster 55, die an den Lichtprojektor 50 übermittelt werden, welcher die Lichtmuster 55 optisch in das FOV 35 hineinprojiziert. Beispielhafte Lichtmuster 55, die in das FOV 35 hineinprojiziert werden, werden mit Bezug auf 3-1 bis 3-5 im Detail beschrieben.
  • Das beispielhafte System zum maschinellen Sehen stellt ein Kamerasystem mit strukturiertem Licht bereit, das aus dem Lichtprojektor 50, der Kamera 10 und dem Kamera/Projektor-Controller 20 besteht. Die Kamera 10 weist einen Universal-IO-Anschluss (GPIO-Anschluss) auf und der Lichtprojektor 50 und der Kamera/Projektor-Controller 20 verwenden VGA-Verbinderanschlüsse (Videographics Array-Verbinderanschlüsse). Der VGA-Anschluss des Controllers 20 ist mit dem VGA-Anschluss des Lichtprojektors 50 verbunden, um die Projektion von Mustern zu steuern und der VGA-Anschluss des Controllers 20 ist auch mit dem GPIO-Anschluss der Kamera 10 verbunden, um die Blendengeschwindigkeit und den Start der Bildaufnahme zu steuern. Die Hardwareverbindung synchronisiert das Timing zwischen dem Lichtprojektor 50 und der Kamera 10.
  • In Ansprechen auf externes Auslösesignal 31 von dem Auslöser 30 an den GPIO-Anschluss der Kamera 10 öffnet die Kamera 10 ihre Blende für eine voreingestellte Blendenzeit, die mit einer bevorzugten Belichtungszeit verbunden ist. In einer Ausführungsform weist das Auslösesignal 31 eine Impulsbreite mit mindestens 1 µs auf. Die Kamerablendengeschwindigkeit umfasst eine Verzögerungszeit in der Größenordnung von weniger als 10 µs. Die voreingestellte Blendenzeit ist für eine geeignete Belichtungszeit eingestellt. Nachdem die Kamera 10 die Blende geschlossen hat, kann es eine Verzögerung in der Größenordnung von 1 ms zur Datenaufnahme geben, nach welcher die Daten an den Controller 20 übertragen werden. Die Datenübertragungszeit an den Controller liegt in der Nähe von 30 ms und sie ist eine mit Bezug auf das Kameramodell, welches eine vorbestimmte Bildaufnahme- und Übertragungsrate (Rahmen pro Sekunde) aufweist, festgelegte Größe. Folglich beträgt in einer Ausführungsform die Gesamtzykluszeit vom Starten des Auslösers bis zum Ende der Datenübertragung weniger als 40 ms.
  • Controller, Steuerungsmodul, Modul, Steuerung, Steuerungseinheit, Prozessor und ähnliche Begriffe bezeichnen eine beliebige oder verschiedene Kombinationen aus einer oder mehreren anwendungsspezifischen integrierten Schaltungen (ASICs), elektronischen Schaltungen, zentralen Verarbeitungseinheiten (vorzugsweise Mikroprozessoren) mit zugehörigem Arbeitsspeicher und Massenspeicher (Festwertspeicher, programmierbarer Festwertspeicher, Speicher mit wahlfreiem Zugriff, Festplattenlaufwerk usw.), die ein oder mehrere Software- oder Firmwareprogramme oder Routinen ausführen, kombinatorischen Logikschaltungen, Eingabe/Ausgabe-Schaltungen und - Vorrichtungen, geeigneten Signalaufbereitungs- und Pufferschaltungen und anderen Komponenten, um die beschriebene Funktionalität bereitzustellen, die eine Datenspeicherung und eine Datenanalyse umfasst. Software, Firmware, Programme, Anweisungen, Routinen, Code, Algorithmen und ähnliche Begriffe bezeichnen beliebige von einem Controller ausführbare Anweisungssätze, die Kalibrierungen und Nachschlagetabellen umfassen.
  • 2 zeigt auf schematische Weise eine Routine 100 zum Erzeugen einer 3D-Punktwolke, um eine 3D-Punktwolke von einem FOV aus Bildern zu erzeugen, die unter Verwendung einer digitalen Kamera aufgenommen wurden, beispielsweise unter Verwendung einer Ausführungsform des Systems zum maschinellen Sehen, das mit Bezug auf 1 beschrieben ist, welches einen Bildrekorder (eine Kamera) 10 und einen dazu benachbarten steuerbaren Lichtprojektor 50 umfasst, die beide mit einem Kamera/Projektor- Controller 20 signaltechnisch verbunden sind, der mit einem Auslösemechanismus 30 und einem analytischen Controller 60 signaltechnisch verbunden ist. Tabelle 1 wird als Schlüssel bereitgestellt, bei dem die numerisch beschrifteten Blöcke und die zugehörigen Funktionen wie folgt offengelegt sind, entsprechend der Routine 100 zum Erzeugen einer 3D-Punktwolke. Tabelle 1
    BLOCK BLOCKINHALTE
    110 Daten aufnehmen
    112 Auslösen
    114 Codierte Projektionsmuster sequentiell erzeugen und in FOV hinein projizieren
    116 Für jedes Projektionsmuster synchron eine Bitmap-Bilddatei des FOV aufnehmen
    120 Bitmap-Bilddateien des FOV für alle Projektionsmuster dekodieren
    122 Epipolare Linien mit Begrenzungslinien in einer niedrigeren Schicht abgleichen, um einen Mittelpunkt von räumlichen Zellen in dem FOV zu finden
    124 Die räumlichen Zellen dekodieren
    126 Die decodierten räumlichen Zellen mit Begrenzungslinien in der niedrigeren Schicht abgleichen
    128 Auf der Grundlage der decodierten räumlichen Zellen eine 3D-Punktwolke erzeugen
  • Insgesamt enthält die Routine 100 zum Erzeugen einer 3D-Punktwolke ein Datenaufnahmesegment 110 und ein Segment 120 zum Verarbeiten und Dekodieren von Daten. In einer Ausführungsform benötigt das Datenaufnahmesegment 110 etwa 180 ms zur Ausführung von einem Zeitpunkt der Auslöserinitialisierung bis Daten in der Form mehrerer Bitmap-Bilddateien des FOV für die Projektionsmuster an das Segment 120 zum Verarbeiten und Dekodieren von Daten übermittelt werden, und das Segment 120 zum Verarbeiten und Dekodieren von Daten benötigt etwa 80 ms zur Ausführung, um 3D-Punktwolkendaten zu erzeugen.
  • Das Datenaufnahmesegment 110 wird wie folgt ausgeführt. In Ansprechen auf ein Auslöseereignis (112) übermittelt der Kamera/Projektor-Controller 20 sequentielle Botschaften in der Form mehrerer digital erzeugter Lichtmuster 55 an den Projektor 50 zur optischen Projektion in das FOV 35 hinein (114). Das Auslöseereignis kann durch ein Objekt verursacht werden, beispielsweise ein Objekt 40, das sich vollständig innerhalb des FOV 35 bewegt, oder durch ein anderes geeignetes Auslöseereignis. Die Kamera 10 nimmt synchron eine Bitmap-Bilddatei des FOV 35 mit dem Objekt 40 auf, wobei jedes der Lichtmuster 55 darauf projiziert wird (116). Der Kamera/Projektor-Controller 20 erzeugt die Lichtmuster 55 auf digitale Weise sequentiell, was umfasst, dass eines der Lichtmuster 55 an dem Projektor 50 zur optischen Projektion in das FOV 35 hinein übermittelt wird, der Kamera 10 befohlen wird, eine Blende der Kamera 10 für eine Belichtungszeitspanne zu öffnen und eine Bitmap-Bilddatei mit der Kamera 10 aufzunehmen und diese an den Kamera/Projektor-Controller 20 entsprechend einem der Lichtmuster 55 zu übermitteln. Der Prozess wird wiederholt, bis alle Lichtmuster 55 in das FOV hineinprojiziert wurden und entsprechende Bitmap-Bilddateien des FOV aufgenommen wurden. In einer Ausführungsform umfasst dies, dass vier Lichtmuster 55 projiziert werden und vier sequentielle Bitmap-Bilddateien aufgenommen werden.
  • 3-1 bis 3-5 zeigen jeweils schematisch eine Ausführungsform der Lichtmuster 55, die zur optischen Projektion in das FOV 35 hinein an den Projektor 50 gesendet werden, welche erste und zweite Projektionsmuster 302 bzw. 304 und ein erstes räumliches Muster 330 umfassen. 3-1 zeigt auf schematische Weise eine Ausführungsform des ersten Begrenzungslinienprojektionsmusters 302, das zur optischen Projektion in das FOV 35 hinein an den Projektor 50 übermittelt werden kann. In einer Ausführungsform enthält das erste Begrenzungslinienprojektionsmuster 302 eine Vielzahl nominell vertikaler Streifen, das als ein erstes binäres Streifenmuster 305 erzeugt werden kann, bei dem Zellen der Bildbits zwischen einem Wert von 1 (Licht) wie es als Beispiel in einer Zelle 301 gezeigt ist, und einem Wert von 0 (kein Licht), wie es als Beispiel in einer Zelle 303 gezeigt ist, in einer nominell horizontalen Richtung abwechseln. In einer Ausführungsform weist jede der Zellen 301, 303 usw. eine Auflösung von 4x4 Pixel auf. In einer Ausführungsform wird die Auflösung mit 4x4 Pixel als Feinauflösung oder Feinauflösungsmuster bezeichnet. Das erste binäre Streifenmuster 305 wird über jede horizontale Linie hinweg mit der Auflösung des Projektors wiederholt, um das erste Begrenzungslinienmuster 302 zu bilden. Folglich besteht das resultierende Bild, das in das FOV hineinprojiziert wird, aus einer Vielzahl abwechselnder schwarzer und weißer Streifen an einer ersten Stelle.
  • 3-2 zeigt auf schematische Weise eine Ausführungsform des zweiten Begrenzungslinienprojektionsmusters 304, das zur optischen Projektion in das FOV 35 hinein an den Projektor 50 übermittelt werden kann. In einer Ausführungsform enthält das zweite Begrenzungslinienprojektionsmuster 304 eine Vielzahl nominell vertikaler Streifen, die als ein zweites binäres Streifenmuster 308 erzeugt werden können, bei dem Zellen der Bildbits Umkehrungen der Bildbits in dem ersten Begrenzungslinienprojektionsmuster 302 sind und daher zwischen einem Wert von 0 (kein Licht), wie als Beispiel in einer Zelle 307 gezeigt ist, und einem Wert von 1 (Licht), wie beispielsweise in einer Zelle 309 gezeigt ist, in einer nominell horizontalen Richtung abwechseln. In einer Ausführungsform repräsentiert jede der Zellen 307, 309 usw. eine Auflösung von 4x4 Pixel. Das zweite binäre Streifenmuster 308 wird über jede horizontale Linie hinweg mit der Auflösung des Projektors wiederholt, um das zweite Begrenzungslinienmuster 304 zu bilden. Folglich besteht das resultierende Bild, das in das FOV hinein projiziert wird, aus einer Vielzahl abwechselnder schwarzer und weißer Streifen an einer zweiten Stelle. In einer Ausführungsform kann ein einziges der ersten und zweiten Begrenzungslinienprojektionsmuster 302, 304 geeignet sein, um Begrenzungslinien zur Konstruktion einer dreidimensionalen Punktwolke (3D-Punktwolke) aus 2D-Bildern zu schätzen. Das Verwenden sowohl des ersten als auch des zweiten Begrenzungslinienprojektionsmusters 302, 304 verbessert die Robustheit und die Genauigkeit beim Erkennen feiner Begrenzungslinien, die gemeinsame Begrenzungslinien und Begrenzungsmittellinien umfassen.
  • 3-3 zeigt auf schematische Weise einen Abschnitt eines räumlichen Projektionsmusters in der Form eines räumlichen 3×3-Musters aus Zellen 310, die ein räumliches Muster aus Zellen bereitstellen, das mit 9 Bits codiert werden kann, wobei jedes Bit einer der Zellen entspricht, was beispielsweise bei Zelle 311 gezeigt ist. In einer Ausführungsform weist jede der Zellen eine Auflösung von 8×8 Pixel auf. Die Auflösung mit 8×8 Pixel wird als grob oder als Muster mit grober Auflösung bezeichnet. Der Abschnitt des räumlichen Projektionsmusters ist in einer Ausführungsform ein zufällig erzeugtes räumliches 3×3-Muster. Wie gezeigt kann jedes räumliche 3×3-Muster aus Zellen 310 durch einen Binärcode in der Form einer Codezeichenfolge mit 9 Bit repräsentiert werden, die einen binären Wert von 010111010 aufweist, wobei der Wert 0 kein Licht anzeigt und der Wert 1 Licht für eine entsprechende Zelle anzeigt. Der binäre Wert wird in einen dezimalen Wert von 186 übersetzt, wenn sich das am wenigstens signifikante Bit in der oberen linken Ecke des räumlichen 3×3-Musters von Zellen 310 befindet und sich das signifikanteste Bit in der unteren rechten Ecke des räumlichen 3×3-Musters aus Zellen 310 befindet. Ein Fachmann kann räumliche 3×3-Muster und zugehörige binäre und dezimale Werte für alle möglichen Kombinationen daraus entwickeln.
  • 3-4 zeigt auf schematische Weise einen Projektionsmustersatz 320, der drei Zeilen enthält, die aus einer Vielzahl horizontal benachbarter räumlicher 3×3-Muster aus Zellen 321 zusammengesetzt ist, die entlang einer nominal horizontalen Linie angeordnet sind, wie als Beispiel in einem räumlichen 3×3-Muster aus Zellen 321 gezeigt ist, wobei jedes räumliche 3×3-Muster aus Zellen 321 auf einer zufällig erzeugten Codezeichenfolge mit 9 Bit analog zu dem räumlichen 3×3-Muster aus Zellen 310, das mit Bezug auf 3-3 beschrieben ist, beruht. Die Größe jede der Zellen in jedem der Zellenblöcke beträgt 8x8 Pixel. Vorzugsweise gibt es keinen sich wiederholenden Code für jeden anderen der zufällig erzeugten 3×3 Zellenblöcke in jeder der Zeilen. Die 3×3-Zellenblöcke können 200 eindeutige Codes aus 800 Pixeln in der horizontalen Richtung erzeugen. In einer Ausführungsform werden mindestens 9 Bits zur Codierung benötigt, um eine symmetrische Darstellung zu erzielen. Es gibt keinen Unterschied zwischen einem zufällig erzeugten und einem vorbestimmten Muster. Jedoch ist das zufällige Erzeugen der Muster, die mit jedem der räumlichen 3x3-Muster verbunden sind, leichter auszuführen als das Herstellen vorbestimmter Muster. Da das Muster zufällig erzeugt wird, muss das Muster gespeichert und als Nachschlagetabelle in einem anschließend ausgeführten Decodierungsalgorithmus 120 verwendet werden. Der Code kann für die ersten drei Zeilen erzeugt werden, d.h. für jeden Projektionsmustersatz 320 und dann für nachfolgende Zeilen wiederholt werden, bis das Musterbild in dem vollen Umfang gefüllt ist, wie mit Bezug auf 3-5 beschrieben ist.
  • 3-5 zeigt ein Beispiel für ein erstes räumliches Projektionsmuster 330 mit vollem Umfang, das erzeugt wird, indem der Projektionsmustersatz 320, der mit Bezug auf 3-4 gezeigt ist, in einer nominell vertikalen Richtung über die Projektionsauflösung des Projektors hinweg wiederholt wird, welche in einer Ausführungsform 854×480 Pixel beträgt. In einer Ausführungsform kann die Größe jeder Zelle 8×8 Pixel oder eine andere geeignete Menge von Pixeln in Abhängigkeit von der Konfiguration des Hardwaresystems betragen, wobei der Arbeitsabstand, die Projektorauflösung und die Kameraauflösung berücksichtigt werden. Ein zweites (nicht gezeigtes) räumliches Projektionsmuster mit vollem Umfang ist eine Lichtumkehrung des mit Bezug auf 3-5 gezeigten dritten Musters 330, d.h. jede der Zellen mit einem Wert 0 wird in eine Zelle mit einem Wert 1 umgeformt und jede der Zellen mit einem Wert 1 wird in eine Zelle mit einem Wert 0 umgeformt. Das dritte Projektionsmuster 330 mit vollem Umfang und das vierte Projektionsmuster mit vollem Umfang in der Form der Lichtumkehrung des dritten Musters 330 werden als räumliche Muster bezeichnet und sie werden für eine grobe Bitmap-Codierung verwendet.
  • Wieder mit Bezug auf 2 enthält das Segment 120 zur Verarbeitung und Decodierung von Daten einen Prozess zum Bewerten der Bitmap-Bilddateien des FOV für alle Schichten der Projektionsmuster, der umfasst, dass epipolare Linien in den räumlichen Projektionsmustern 330, die in 3-4 gezeigt sind, mit Begrenzungslinien in einer oder mehreren der niedrigeren Schichten abgeglichen werden, die die ersten und zweiten Begrenzungslinienmuster 302 und 304 umfassen, um einen Mittelpunkt von räumlichen Zellen in dem FOV zu finden (122). Dieser Schritt nutzt die in 3-1 und 3-2 gezeigten Feinauflösungsmuster 302, 304, die eine Auflösung von 4×4 Pixel aufweisen, welche die Hälfte der Auflösung mit 8×8 Pixel des groben Auflösungsmusters in den räumlichen Projektionsmustern 330 ist, die in 3-4 gezeigt sind, was ermöglicht, dass die mit den ersten und zweiten Begrenzungslinienmustern 302, 304 verbundenen Feinauflösungsmuster verwendet werden können, um die epipolaren Linien in den räumlichen Projektionsmustern 330 zu finden. Dies wird ausgeführt, um Begrenzungslinien in den Bitmap-Bilddateien des FOV für alle vier Projektionsmuster zu detektieren. Dem Dekodieren der Zellen der räumlichen Projektionsmuster 330 folgt eine Begrenzungsliniendetektion (124), um Regionen in jeder der Schichten der Projektionsmuster zu bilden. Die decodierten Zellen der räumlichen Projektionsmuster 330 werden mit Begrenzungslinien in dem ersten und zweiten Begrenzungslinienmuster 302 und 304 abgeglichen (126), und die Ausgabe wird für eine 3D-Triangulation bereitgestellt, um eine 3D-Punktwolke zu erzeugen (128). Die 3D-Punktwolke ist die Ausgabe des Systems und sie kann von dem Controller 20 an eine andere Stelle zur Verwendung in einer speziellen Anwendung gesendet werden.
  • Zum Decodieren des räumlichen Musters werden 3×3-Zellenblöcke bewertet und unter Verwendung einer Nachschlagetabelle decodiert, die auf den vorab erzeugten räumlichen 3×3-Mustern beruht, wobei jedes der räumlichen 3×3-Muster durch einen binären Code repräsentiert wird, der für jede Zelle einen Wert von 0, der kein Licht anzeigt, und einen Wert von 1 enthält, der Licht anzeigt.
  • Jede vertikale Begrenzungslinie jeder Zelle in den räumlichen Projektionsmustern 330 weist eine gemeinsame Begrenzungslinie in dem ersten und zweiten Begrenzungslinienmuster 302 und 304 auf. Diese Informationen können verwendet werden, um die Begrenzungslinien abzugleichen und um ihren binären Code entweder als einen Wert von 0 (kein Licht) oder als einen Wert von 1 (Licht) zu definieren. Der Controller durchsucht die Daten entlang epipolarer Linien, um Blöcke von räumlichen 3×3-Mustern zum Decodieren zu wählen. Nach dem Decodieren der räumlichen Projektionsmuster 330 übernehmen die Begrenzungslinien in dem ersten und zweiten Begrenzungslinienmuster 302 und 304 die decodierten Werte und verfeinern ihre entsprechenden Werte. Diese Begrenzungslinien werden mit Begrenzungslinien in dem ersten und zweiten Begrenzungslinienmuster 302 und 304 ausgerichtet und unter Verwendung von 3x3-Blöcken, die die Begrenzungslinien enthalten, decodiert.
  • Epipolare Linien stehen in Beziehung zur Epipolargeometrie, welche die Geometrie mit Bezug auf die Entsprechung von Orten ist, wobei geometrische Beziehungen zwischen den 3D-Punkten und deren Projektionen auf die 2D-Bilder zu Beschränkungen zwischen Bildpunkten führen, die durch die Kamera erzeugt werden, welche eine 3D-Szene betrachtet, und diese Beziehungen werden auf der Grundlage der Annahme hergeleitet, dass die Kameras durch ein Lochkameramodell angenähert werden können.
  • Die genaue Beschreibung und die Zeichnungen oder Figuren unterstützen und beschreiben die vorliegenden Lehren, aber der Umfang der vorliegenden Lehren wird allein durch die Ansprüche definiert. Obwohl einige der besten Arten und andere Ausführungsformen zum Ausführen der vorliegenden Lehren im Detail beschrieben wurden, existieren verschiedene alternative Konstruktionen und Ausführungsformen, um die vorliegenden Lehren, die in den beigefügten Ansprüchen definiert sind, in die Praxis umzusetzen.

Claims (7)

  1. Verfahren (100) zum Untersuchen eines Objekts (40) in einem Sichtfeld (35) unter Verwendung eines Systems zum maschinellen Sehen mit einer digitalen Kamera (10), wobei das Verfahren (100) umfasst, dass: eine Vielzahl digital erzeugter Lichtmuster (302, 304, 330) sequentiell auf das Objekt (40) in dem Sichtfeld (35) projiziert wird (114), wobei die digital erzeugten Lichtmuster (302, 304, 330) erste und zweite Begrenzungslinienmuster (302, 304), die binäre Streifenmuster umfassen, und erste (330) und zweite räumliche Muster enthalten; mithilfe der digitalen Kamera (10) eine Vielzahl von Bildern (15), die das Objekt (40) enthalten, aufgenommen werden (116), wobei jedes Bild (15) einem der projizierten Lichtmuster (302, 304, 330) zugeordnet ist; räumliche Zellen (311) in dem Sichtfeld (35) gefunden werden (122), indem Codes in dem ersten (330) und zweiten räumlichen Muster, die Begrenzungslinien in dem ersten (330) und zweiten räumlichen Muster repräsentieren, mit Begrenzungslinien abgeglichen werden, die auf der Grundlage entweder des ersten (302) oder des zweiten (304) Begrenzungslinienmusters ermittelt werden (124); die räumlichen Zellen (311) decodiert werden; die decodierten räumlichen Zellen mit den Begrenzungslinien abgeglichen werden (126); und dreidimensionale Punktwolkendaten (3D-Punktwolkenkdaten) des Objekts (40) auf der Grundlage der decodierten räumlichen Zellen, die mit den Begrenzungslinien abgeglichen wurden, erzeugt werden (128); wobei das erste räumliche Projektionsmuster (330) ein räumliches Projektionsmuster mit vollem Umfang umfasst, das eine Vielzahl von Projektionsmustersätzen (320) enthält, die in eine nominell vertikale Richtung angeordnet sind, wobei jeder Projektionsmustersatz (320) eine Vielzahl von Projektionszellen (321) enthält, die entlang einer Linie horizontal angeordnet sind, wobei jede Projektionszelle (321) einen 3×3 Block aus Projektionszellen (311) enthält, der eine zufällig erzeugte Codezeichenfolge mit 9 Bit enthält, die dem 3×3 Block aus Projektionszellen (311) entspricht, wobei jedes Bit der Codezeichenfolge mit 9 Bit einen Lichtwert von 1 oder einen Lichtwert von 0 aufweist; und wobei die räumlichen Zellen (311) decodiert werden, indem jeder gefundenen räumlichen Zelle (311) ein Lichtwert von 1 oder 0 zugeordnet wird und die Lichtwerte mit den Codes in dem ersten (330) und zweiten räumlichen Muster abgeglichen werden, welche den Projektionsmustersätzen (320) entsprechen.
  2. Verfahren (100) nach Anspruch 1, wobei das Aufnehmen (116) einer Vielzahl von Bildern (15) umfasst, dass eine Vielzahl zweidimensionaler Bilder (2D-Bilder) (15) sequentiell aufgenommen wird, wobei jedes der 2D-Bilder (15) einem der projizierten Lichtmuster (302, 304, 330) zugeordnet ist.
  3. Verfahren (100) nach Anspruch 1, wobei das binäre Streifenmuster des ersten Begrenzungslinienmusters (302) eine Vielzahl von nominell vertikalen Streifen enthält, wobei Zellen (301, 303) des Streifenmusters zwischen einem Lichtwert von 1 und einem Lichtwert von 0 entlang einer horizontalen Linie abwechseln.
  4. Verfahren (100) nach Anspruch 3, wobei die Zellen (301, 303) des Streifenmusters zwischen einem Lichtwert von 1 und einem Lichtwert von 0 entlang einer horizontalen Linie in einer Feinauflösung abwechseln.
  5. Verfahren (100) nach Anspruch 3, wobei jede der Zellen (301, 303) eine Auflösung von 4×4 Pixeln aufweist.
  6. Verfahren (100) nach Anspruch 1, wobei das zweite Begrenzungslinienmuster (304) ein binäres Streifenmuster umfasst, wobei Zellen (307, 309) des zweiten Projektionsmusters eine Lichtumkehrung zu den Zellen (301, 303) des ersten Projektionsmusters (302) sind.
  7. Verfahren (100) nach Anspruch 1, wobei das zweite räumliche Projektionsmuster ein räumliches Projektionsmuster umfasst, das eine Lichtumkehrung des ersten räumlichen Projektionsmusters (330) ist.
DE102016100132.5A 2015-01-08 2016-01-05 Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen Active DE102016100132B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/592,125 2015-01-08
US14/592,125 US9500475B2 (en) 2015-01-08 2015-01-08 Method and apparatus for inspecting an object employing machine vision

Publications (2)

Publication Number Publication Date
DE102016100132A1 DE102016100132A1 (de) 2016-07-14
DE102016100132B4 true DE102016100132B4 (de) 2018-10-04

Family

ID=56233957

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016100132.5A Active DE102016100132B4 (de) 2015-01-08 2016-01-05 Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen

Country Status (3)

Country Link
US (1) US9500475B2 (de)
CN (1) CN105787426B (de)
DE (1) DE102016100132B4 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9948920B2 (en) 2015-02-27 2018-04-17 Qualcomm Incorporated Systems and methods for error correction in structured light
US10068338B2 (en) * 2015-03-12 2018-09-04 Qualcomm Incorporated Active sensing spatial resolution improvement through multiple receivers and code reuse
US9846943B2 (en) 2015-08-31 2017-12-19 Qualcomm Incorporated Code domain power control for structured light
TWI610292B (zh) * 2015-11-19 2018-01-01 瑞鼎科技股份有限公司 驅動電路及其運作方法
KR102457891B1 (ko) * 2017-10-30 2022-10-25 삼성전자주식회사 이미치 처리 방법 및 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120133954A1 (en) 2009-07-29 2012-05-31 Canon Kabushiki Kaisha Measuring apparatus, measuring method, and program
US20130125408A1 (en) 2010-01-20 2013-05-23 Faro Technologies, Inc. Coordinate measurement machines with removable accessories
WO2013132494A1 (en) 2012-03-09 2013-09-12 Galil Soft Ltd System and method for non-contact measurement of 3d geometry
US20130314696A1 (en) 2012-05-24 2013-11-28 Qualcomm Incorporated Transmission of Affine-Invariant Spatial Mask for Active Depth Sensing

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7440590B1 (en) * 2002-05-21 2008-10-21 University Of Kentucky Research Foundation System and technique for retrieving depth information about a surface by projecting a composite image of modulated light patterns
DE10304111B4 (de) * 2003-01-31 2011-04-28 Sirona Dental Systems Gmbh Aufnahmeverfahren für ein Bild eines Aufnahmeobjekts
US7499584B2 (en) * 2004-10-21 2009-03-03 Mitutoyo Corporation Smear-limit based system and method for controlling vision systems for consistently accurate and high-speed inspection
US7683341B2 (en) * 2006-11-06 2010-03-23 Digirad Corporation Using large field-of-view data to improve small field-of-view imaging
US8326020B2 (en) 2007-02-28 2012-12-04 Sungkyunkwan University Foundation Structural light based depth imaging method and system using signal separation coding, and error correction thereof
US7986321B2 (en) * 2008-01-02 2011-07-26 Spatial Integrated Systems, Inc. System and method for generating structured light for 3-dimensional image rendering
US8842183B2 (en) * 2008-08-08 2014-09-23 Snap-On Incorporated Image-based inventory control system with automatic calibration and image correction
US9030486B2 (en) * 2008-08-22 2015-05-12 University Of Virginia Patent Foundation System and method for low bandwidth image transmission

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120133954A1 (en) 2009-07-29 2012-05-31 Canon Kabushiki Kaisha Measuring apparatus, measuring method, and program
US20130125408A1 (en) 2010-01-20 2013-05-23 Faro Technologies, Inc. Coordinate measurement machines with removable accessories
WO2013132494A1 (en) 2012-03-09 2013-09-12 Galil Soft Ltd System and method for non-contact measurement of 3d geometry
US20130314696A1 (en) 2012-05-24 2013-11-28 Qualcomm Incorporated Transmission of Affine-Invariant Spatial Mask for Active Depth Sensing

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
J. Salvi et al. in Pattern Recognition 37, 2004, S. 827 - 849
J. Salvi et al.; "Pattern codifcation strategies in structured light systems"; Pattern Recognition 37, 2004, S. 827 – 849 *

Also Published As

Publication number Publication date
CN105787426A (zh) 2016-07-20
US9500475B2 (en) 2016-11-22
US20160202050A1 (en) 2016-07-14
DE102016100132A1 (de) 2016-07-14
CN105787426B (zh) 2019-07-12

Similar Documents

Publication Publication Date Title
DE19983341B4 (de) Verfahren und Einrichtung zur Erfassung stereoskopischer Bilder unter Verwendung von Bildsensoren
EP1173749B1 (de) Bildbearbeitung zur vorbereitung einer texturanalyse
DE102016100132B4 (de) Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen
DE102012112321B4 (de) Vorrichtung zum optischen Abtasten und Vermessen einer Umgebung
DE102015116047B4 (de) Prüfvorrichtung und Steuerverfahren für eine Prüfvorrichtung
DE3854348T2 (de) Verfahren und Vorrichtung zum Messen der Form einer dreidimensional gekrümmten Oberfläche.
DE10020893B4 (de) Verfahren zur optischen Formerfassung von Gegenständen
DE202012104890U1 (de) Vorrichtung zum optischen Abtasten und Vermessen einer Umgebung
DE102012112322A1 (de) Verfahren zum optischen Abtasten und Vermessen einer Umgebung
DE102008002725B4 (de) Verfahren und Vorrichtung zur 3D-Rekonstruktion
DE102015005267A1 (de) Informationsverarbeitungsvorrichtung, Verfahren dafür und Messvorrichtung
DE102014107143B4 (de) System und Verfahren zur Messung der Verschiebung einer Objektoberfläche
DE102009030644B4 (de) Berührungslose Erfassungseinrichtung
DE102011104216A1 (de) Verfahren und Vorrichtung zum dreidimensionalen Erfassen von Objekten sowie Computerprogrammprodukt
DE102016100134B4 (de) Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen
EP3628995A1 (de) Kalibriervorlage und kalibrierverfahren zum geometrischen kalibrieren einer vielzahl von kameras eines kamera-arrays
DE102016123194A1 (de) Messvorrichtung, Messverfahren und Produktfertigungsverfagren
EP2972071B1 (de) Vorrichtung zur vermessung eines schlachttierkörperobjekts
WO2016202562A1 (de) Streifenprojetionsverfahren, streifenprojektionsvorrichtung und computerprogrammprodukt
EP3320681B1 (de) Verfahren und vorrichtung zum abtasten von oberflächen mit einer stereokamera
EP3049757B1 (de) Fahrwerksvermessung bei umgebungslicht
DE102013224930B4 (de) Verfahren zum Auslesen eines zweidimensionalen Codes mittels einer Kamera zur dreidimensionalen optischen Vermessung von Objekten
DE102020201379A1 (de) Konturerkennungsvorrichtung, konturerkennungssystem und konturerkennungsverfahren
WO2018211057A1 (de) Marker basierter kamera-tracker
EP3798570B1 (de) Verfahren zur kalibrierung eines optischen messsystems, optisches messsystem und kalibrierobjekt für ein optisches messsystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: MANITZ FINSTERWALD PATENT- UND RECHTSANWALTSPA, DE

Representative=s name: MANITZ, FINSTERWALD & PARTNER GBR, DE

Representative=s name: MANITZ FINSTERWALD PATENTANWAELTE PARTMBB, DE

R082 Change of representative

Representative=s name: MANITZ FINSTERWALD PATENT- UND RECHTSANWALTSPA, DE

Representative=s name: MANITZ, FINSTERWALD & PARTNER GBR, DE

Representative=s name: MANITZ FINSTERWALD PATENTANWAELTE PARTMBB, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final