-
TECHNISCHES GEBIET
-
Die Offenbarung bezieht sich auf ein Maschinensichtsystem und auf Verfahren zum Erkennen eines Objekts von Interesse.
-
HINTERGRUND
-
Computer-Vision ist die wissenschaftliche Disziplin, um zu bewirken, dass Maschinen ”sehen” können, so dass sie Informationen aus einem Bild extrahieren und basierend auf den extrahierten Informationen eine Aufgabe ausführen oder ein Problem lösen können. Die Bilddaten können viele Formen annehmen, wie z. B. Standbilder, Video, Ansichten von mehreren Kameras oder mehrdimensionale Daten von einer medizinischen Abtastvorrichtung.
-
Bekannte Roboterwahrnehmungssysteme erreichen eine gewünschte Leistung und eine Zuverlässigkeit durch das Entwickeln spezifischer Beleuchtungsbedingungen, das Strukturieren der Betrachtungsbedingungen und das Ausnutzen der Prozesskonfiguration. Sie sind unter einem engen Bereich von Bedingungen flexibel, die nur in einer Teilmenge der Bedingungen der realen Welt funktionieren, wobei sie bei geringfügigen Änderungen der umgebenden Umwelt ausfallen können. Außerdem ist die Verarbeitungsgeschwindigkeit bekannter Systeme und in Beziehung stehender Techniken für eine effiziente Echtzeitverarbeitung nicht ausreichend. Schlüsselfertige kommerzielle Maschinensichtsysteme können langsam sein, wenn eine umfassendere Flexibilität eingeführt wird, und werden veranlasst, stabil zu arbeiten, indem der Bereich streng strukturiert wird. Die Verarbeitung des Suchens mit großem Sehfeld (FOV) nach Objekten in unerwarteten Orientierungen, die 5–10% des FOV einnehmen, könnte mehrere Sekunden oder mehr erfordern. Dies wird weiter verschlimmert, wenn nach Vorder-/Rück-/Seitenansichten gesucht wird, um den Ort und die Haltung eines Objekts genau zu finden. Außerdem können die Kosten, die dem Strukturieren der Umgebung für bekannte Automatisierungslösungen für Robotermaterialübertragungs- und -handhabungsanwendungen zugeordnet sind, das Drei- bis Zehnfache der Kosten betragen, die der Robotervorrichtung zugeordnet sind. Der Bereich der Produkte, die effizient gehandhabt werden können, kann in bekannten Automatisierungssystemen begrenzt sein und ist oft auf nur eine Handvoll von Ausführungen eingeschränkt. Außerdem sind derartige Systeme für eine andere Klasse von Produkten beschwerlich umzurüsten und langsam neu zu konfigurieren. Folglich sind vorhandene Automatisierungslösungen aufgrund der Probleme, die mit der Investition, den Betriebskosten, der Flexibilität und der Rekonfigurierbarkeit in Beziehung stehen, nicht leicht in Montageoperationen anwendbar, die mit einer breiten Vielfalt von Teilen umgehen.
-
ZUSAMMENFASSUNG
-
Ein Verfahren zum Erkennen eines bekannten Objekts in einem Sehfeld eines dreidimensionalen (3D-)Sichtsystems enthält das Erfassen einer Bitmap-Bilddatei des Sehfeldes unter Verwendung eines Maschinensichtsystems und das Ausführen einer ersten Merkmalsextraktion der Bitmap-Bilddatei, um Erscheinungsmerkmale zu erzeugen, die ein Farbhistogramm und ein Randrichtungshistogramm enthalten. Ein verringerter Suchraum wird basierend auf den Erscheinungsmerkmalen, die das Farbhistogramm und das Randrichtungshistogramm enthalten, identifiziert. Eine zweite Merkmalsextraktion der Bitmap-Bilddatei wird ausgeführt, um geometrische Merkmale zu identifizieren, die ein Standpunktmerkmalshistogramm und ein diesem zugeordnetes Ensemble von Formfunktionen enthalten. Die Erscheinungsmerkmale und die geometrischen Merkmale werden mit den Inhalten des verringerten Suchraums verschmolzen. Die verschmolzenen Erscheinungsmerkmale, geometrischen Merkmale und Inhalte des verringerten Suchraums werden mit mehreren vorgegebenen Teilansichten mehrerer bekannter Objekte verglichen, um eines der bekannten Objekte zu erkennen.
-
Die obigen Merkmale und Vorteile und weitere Merkmale und Vorteile der vorliegenden Lehren werden aus der folgenden ausführlichen Beschreibung einiger der besten Arten und anderer Ausführungsformen zum Ausführen der vorliegenden Lehren leicht ersichtlich, wie sie in den beigefügten Ansprüchen definiert sind, wenn sie im Zusammenhang mit den beigefügten Zeichnungen betrachtet werden.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Nun werden eine oder mehrere Ausführungsformen beispielhaft unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, wobei:
-
1 ein Maschinensichtsystem zum Erfassen, Verarbeiten und Speichern eines Bildes eines Sehfeldes (FOV), das einen Bilddetektor (eine Kamera) enthält, der (die) signaltechnisch mit einem Codierer verbunden ist, der signaltechnisch mit einem Controller verbunden ist, gemäß der Offenbarung schematisch veranschaulicht;
-
2 einen schematischen Blockschaltplan eines Objekterkennungsprozesses, um die Maschinenerkennung eines oder mehrerer bekannter Objekte in einem FOV einer Kamera durch das Kombinieren lokaler 2D-Merkmale und globaler 3D-Merkmale auszuführen, gemäß der Offenbarung zeigt;
-
3 die Vektoren für ein einzelnes Punktpaar Pt und Ps und einen zugeordneten Punktvektor, der Nachbarpunkte repräsentiert, in einer aus der Eingangspunktwolke extrahierten segmentierten Bilddatendatei gemäß der Offenbarung graphisch veranschaulicht;
-
4 ein Beispiel eines Standpunktkomponentenhistogramms, das die Winkel zwischen der Standpunktrichtung und jeder Normalen sammelt, gemäß der Offenbarung graphisch veranschaulicht; und
-
5 ein Beispiel eines Ensembles von Formfunktionen (ESF), das auf eine Punktwolke, die ein 3D-Objekt enthält, angewendet ist, gemäß der Offenbarung graphisch veranschaulicht.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Unter Bezugnahme auf die Zeichnungen, in der die Darstellungen nur für den Zweck des Veranschaulichens bestimmter beispielhafter Ausführungsformen und nicht für den Zweck des Einschränkens derselben dienen, veranschaulicht 1 schematisch ein beispielhaftes Maschinensichtsystem 100 zum Erfassen, Verarbeiten und Speichern eines Bildes eines Sehfeldes (FOV) 35, das einen Bilddetektor (eine Kamera) 10, der (die) signaltechnisch mit einem Codierer 20 verbunden ist, der signaltechnisch mit einem Controller 50 verbunden ist, enthält. Die Kamera 10 ist vorzugsweise eine Stereovorrichtung ist, die ein dreidimensionales (3D-)Bild 15 des FOV erfassen kann. Die Kamera 10 kann sich in irgendeiner Position und irgendeiner Orientierung bezüglich eines bekannten Objekts 40 in dem FOV 35 befinden, wobei das bekannte Objekt 40 in einer Ebene 45 orientiert ist. Das bekannte Objekt 40 ist eine strukturelle Entität, die vorgegebene Merkmale aufweist, beispielhaft einschließlich der räumlichen Ausdehnungen, der Materialien und der Oberflächenverarbeitungen, die unter anderem das Reflexionsvermögen angeben. Gleiche Bezeichnungen und gleiche Bezugszeichen beziehen sich überall in den Beschreibungen und den Zeichnungen auf gleiche Elemente.
-
In einer Ausführungsform befindet sich das durch die Kamera 10 erfasste 3D-Bild 15 in der Form eines 24-Bit-Stereobildes, das RGB-Werte (Rot-Grün-Blau-Werte) und Tiefenwerte enthält, die das FOV 35 repräsentieren. Andere Ausführungsformen des 3D-Bildes 15 können ohne Einschränkung ein 3D-Bild, das eine Schwarzweiß- oder eine Graustufendarstellung des 3D-FOV und andere Bilddarstellungen darstellt, enthalten. Die Kamera 10 enthält einen Bilderfassungssensor, der signaltechnisch mit dem Codierer 20 verbunden ist, der eine digitale Signalverarbeitung (DSP) an dem 3D-Bild 15 ausführt. Der Bilderfassungssensor erfasst das 3D-Bild 15 als mehrere Bildpunkte in dem FOV 35 mit einer vorgegebenen Auflösung, wobei der Codierer 20 die Bildpunkte in dem FOV 35 codiert, um eine Bitmap-Bilddatei 25 des FOV 35 zu erzeugen, z. B. eine 8-Bit-Bitmap der Bildpunkte, die den FOV 35 in einer vorgegebenen Auflösung repräsentieren. Die Bitmap-Bilddatei 25 wird zu dem Controller 50 übertragen. Die Bitmap-Bilddatei 25 ist eine codierte Datendatei, die in einer Ausführungsform in einem nichtflüchtigen digitalen Datenspeichermedium gespeichert ist. Die Bitmap-Bilddatei 25 enthält eine digitale Darstellung eines 3D-Bildes, das ein oder mehrere bekannte Objekte 40 enthalten kann, und repräsentiert ein Originalbild des FOV 35, das mit der Originalauflösung der Kamera 10 erfasst worden ist. Die mehreren bekannten Objekte 40 können alle von der gleichen Bauform sein oder können unähnliche Bauformen sein. Das durch die Kamera 10 erfasste 3D-Bild 15 des bekannten Objekts 40 enthält ausreichend Informationen, um die Position des bekannten Objekts 40 in Bezug auf die Kamera 10 auszuwerten und außerdem die Auswertung der Daten in der Bitmap-Bilddatei 25, um ein Farbton-Sättigungs-Wert- oder Helligkeits-Modell (HSV-Modell) und ein Farbhistogramm (CH) des FOV 35 zu erzeugen, zu erlauben. Die Form jedes bekannten Objekts 40 hängt von den relativen Betrachtungswinkeln und dem Abstand zwischen der Kamera 10 und dem bekannten Objekt 40 ab, nachdem den Einflüssen, die der Beleuchtung und dem Reflexionsvermögen zugeordnet sind, Rechnung getragen worden ist und die Kamera 10 geeicht worden ist.
-
Controller, Steuermodul, Modul, Steuerung, Steuereinheit, Prozessor und ähnliche Bezeichnungen bedeuten irgendeines oder verschiedene Kombinationen aus einem oder mehreren von einer oder mehreren anwendungsspezifischen integrierten Schaltungen (ASIC), einer oder mehreren elektronischen Schaltungen, einer oder mehrerer Zentraleinheiten (vorzugsweise eines oder mehrerer Mikroprozessoren) und dem zugeordneten Speicher und der zugeordneten Speichervorrichtung (Festwert-, programmierbarer Festwert-, Schreib-Lese-, Festplatten-Speicher usw.), die ein oder mehrere Software- oder Firmware-Programme oder eine oder mehrere Software- oder Firmware-Routinen ausführen, einer oder mehrerer kombinatorische Logikschaltungen, einer oder mehrerer Eingabe-/Ausgabeschaltungen und -vorrichtungen, einer geeigneten Signalaufbereitungs- und Pufferschaltungsanordnung und anderer Komponenten, um die beschriebene Funktionalität, einschließlich der Datenspeicherung und der Datenanalyse, bereitzustellen. Software, Firmware, Programme, Anweisungen, Routinen, Code, Algorithmen und ähnliche Bezeichnungen bedeuten irgendwelche controller-ausführbare Befehlssätze, einschließlich Eichungen und Nachschlagtabellen.
-
2 zeigt einen maschinenausgeführten sichtbasierten Objekterkennungsprozess 200 in der Form eines Blockschaltplans, um ein oder mehrere bekannte Objekte durch das Kombinieren lokaler 2D-Merkmale und globaler 3D-Merkmale in einer Bitmap-Bilddatei eines FOV zu erkennen. Die Bitmap-Bilddatei des FOV befindet sich in der Form einer Eingangspunktwolke 217, die unter Verwendung einer Ausführungsform des Maschinensichtsystems 100, das bezüglich 1 beschrieben worden ist, erfasst werden kann. Die Schritte des Objekterkennungsprozesses 200 werden vorzugsweise sequentiell mit erhöhter Komplexität ausgeführt, um Merkmale zu extrahieren, zu vergleichen und zu verfeinern, um ein Objekt unter Verwendung des Maschinensichtsystems 100 zu erkennen, das durch ein Robotersystem für das Materialmanagement, das Ergreifen und andere Operationen verwendet werden kann. Der Objekterkennungsprozess 200 verwendet die Objektsegmentierung und die Objekterkennung unter Verwendung identifizierbarer multimodaler Merkmale, die durch das Maschinensichtsystem 100 erfasst werden.
-
Der Ausführung des Objekterkennungsprozesses 200 geht die Ausführung eines Objekterkennungs-Trainingsprozess 250 voraus, der ein Prozess zum Sammeln mehrerer Teilansichten jedes von mehreren bekannten Objekten ist, der das Identifizieren globaler 3D-Merkmale und lokaler 2D-Merkmale enthält, die in einer Teilansichts-Datenbank 255 gespeichert sind und von einer Teilansichts-Datenbank 255 abrufbar sind. Vorzugsweise wird der Objekterkennungs-Trainingsprozess 250 offline ausgeführt, wobei die Ergebnisse in einer abrufbaren Form analysiert, verifiziert und erfasst werden.
-
Der Objekterkennungsprozess 200 beginnt von einer Verarbeitung auf unterer Ebene unter Verwendung erscheinungsbasierter Markierungen und geht zu einer Objektdarstellung auf hoher Ebene durch die Verschmelzung sowohl der 2D- als auch der 3D-Merkmale weiter, um die Maschinenerkennung eines oder mehrerer bekannter Objekte auszuführen.
-
Um den Betrieb des Objekterkennungsprozesses 200 beispielhaft zu beschreiben, wird eine beliebige Anordnung bekannter Objekte 211, 212, 213, 214 und 215 auf einer ebenen Fläche 216 als eine Bitmap-Bilddatei in der Form einer Eingangspunktwolke 217 unter Verwendung einer Ausführungsform des Maschinensichtsystems 100 (210) erfasst. Die bekannten Objekte 211, 212, 213, 214 und 215 enthalten einen Schalter 211, ein Radio 212, eine Feldflasche 213, eine Sprühflasche 214 und einen Griff 215, die für Veranschaulichungszwecke beliebig ausgewählt sind.
-
Die Eingangspunktwolke 217 wird der Segmentierung unterworfen, um die Daten, die die ebene Fläche 216 repräsentieren, aus der Eingangspunktwolke 217 (220) zu entfernen, was zu einer segmentierten Bilddatendatei 225 führt. Dies enthält das Identifizieren von Teilen der Eingangspunktwolke 217, die die ebene Fläche 216 repräsentieren, und das Entfernen dieser oder das anderweitige Nichtfunktionsfähig-Machen dieser, um sie folglich keiner weiteren Analyse zu unterwerfen.
-
Die segmentierte Bilddatendatei wird der 2D-Merkmalsextraktion (230) und der 3D-Merkmalsextraktion (240) unterworfen. Die 2D-Merkmalsextraktion (230) enthält das Identifizieren einzelner Elemente in der segmentierten Bilddatendatei 225 basierend auf den 2D-Erscheinungsmerkmalen. Die Extraktion der 2D-Erscheinungsmerkmale wird durch das Entwickeln eines Farbhistogramms (CH) 235 und eines Rand richtungshistogramms (EDH) 237 aus der segmentierten Bilddatendatei 225 ausgeführt. Das CH 235 basiert vorzugsweise auf einem Farbton-Sättigungs-Wert- oder Helligkeits-(HSV-)Modell des Farbraums, das einen Farbraum hinsichtlich der Komponenten Farbton, Sättigung und Wert definiert. Der Farbton gibt den Farbtyp im sichtbaren Spektrum an, wie z. B. rot, orange, gelb usw. Der Wert des Farbtons bewegt sich zwischen 0 und 179, mit Rot bei 0, Grün bei 60, Blau bei 120 usw. Die Sättigung gibt die Reinheit der Farbe an, wobei ein abnehmender Wert für die Sättigung einer Farbe ein zunehmendes Vorhandensein eines ”Grauanteils” oder ein zunehmendes Verblassen der Farbe angibt. Die Sättigung der Farbe bewegt sich zwischen 0 und 255, wobei 0 Schwarz-Grau-Weiß repräsentiert und 255 die reine Farbe des Spektrums repräsentiert. Der Wert oder die Helligkeit gibt die Intensität der Farbe an und bewegt sich zwischen 0 und 100%. Das HSV-Modell stellt eine nichtlineare Transformation des RGB-Farbraums bereit.
-
Das CH 235 repräsentiert eine Verteilung der Farben in der segmentierten Bilddatendatei 225 und enthält eine numerische Zählung der Bildpunkte, die Farben in jeder einer Liste der Farbbereiche über das Farbspektrum aufweisen. In einer Ausführungsform werden nur die Farbton- und Sättigungswerte verwendet, um die Beleuchtungswirkungen zu minimieren. Der Farbton variiert von 0 bis 179, während die Sättigung von 0 (Schwarz-Grau-Weiß) bis 255 (die reine Farbe des Spektrums) variiert. In einer Ausführungsform ist der Farbton in 15 Niveaus quantisiert, während die Sättigung in 16 Niveaus quantisiert ist. Das CH 235 stellt eine statistische Approximation einer zugrunde liegenden kontinuierlichen Verteilung der Farbwerte bereit.
-
Das EDH 237 ist ein Mehrklassenhistogramm, das die lokale Randverteilung erfasst, um die Häufigkeit und die Direktionalität der Helligkeitsänderungen eines in der segmentierten Bilddatendatei 225 erfassten Objekts darzustellen. Die segmentierte Bilddatendatei 225, die das 2D-Objekt repräsentiert, wird in 4 × 4 nicht überlappende rechteckige Bereiche aufgeteilt. In jedem Bereich berechnet das EDH 237 vier gerichtete Ränder (horizontal, vertikal, zwei Diagonalen) und einen nicht-gerichteten Rand.
-
Das CH 235 und das EDH 237 werden für jede von mehreren Teilansichten der bekannten Objekte, die in der Teilansichts-Datenbank 255 (260) gespeichert sind, mit den 2D-Erscheinungsmerkmalen verglichen, um den Suchraum in der segmentierten Bilddatendatei 225, die einem oder mehreren bekannten Objekten zugeordnet ist, einzugrenzen und zu verringern. Jene Teilansichten in der Teilansichts-Datenbank 255, die eine Gesamtähnlichkeit in der Erscheinung bezüglich der segmentierten Bilddatendatei 225 aufweisen, werden basierend auf einer verschmolzenen Entscheidung ausgewählt, die durch 2D-Farb- und Randrichtungs-Klassifizierer, die dem CH 235 bzw. dem EDH 237 zugeordnet sind, gegeben ist. Folglich wird ein verringerter Suchraum 265 der segmentierten Bilddatendatei 225 identifiziert.
-
Die segmentierte Bilddatendatei 225 wird der 3D-Merkmalsextraktion (240) unterworfen, die das Auswerten der geometrischen 3D-Merkmale, die ein Standpunktmerkmalshistogramm (VFH) 245 und ein Ensemble von Formfunktionen (ESF) 247 enthalten, für die Datenpunkte der segmentierten Bilddatendatei 255 enthält. Das VFH 245 enthält ein Punktmerkmalshistogramm (PFH) und ein Standpunktkomponentenhistogramm.
-
3 veranschaulicht graphisch die Vektoren für ein einzelnes Punktpaar Pt 320 und Ps 310, das irgendwelche zwei benachbarte oder nebeneinanderliegende Punkte in der aus der Eingangspunktwolke 217 extrahierten segmentierten Datendatei 255 repräsentiert, und einen zugeordneten Punktvektor 305. In einer Ausführungsform wird eine k-dimensionale oder eine k-d baumbasierte Suche nächster Nachbarn verwendet, um die Merkmale zu vergleichen. Ein k-d Baum ist eine den Raum aufteilende Datenstruktur zum Organisieren der Punkte in einem k-dimensionalen Raum zum Ausführen einer Suche, die einen mehrdimensionalen Suchschlüssel umfasst, z. B. Bereichssuchen und Suchen nächster Nachbarn. Die Prozesse der k-d baumbasierten Suche nächster Nachbarn sind bekannt. Das einzelne Punktpaar Pt 320 und Ps 310 stellt ein Beispiel der Elemente bereit, die ein Punktmerkmalshistogramm (PFH) des VFH 245 bevölkern. Der Punktvektor 305 ist eine Linie zwischen den Punkten Pt 320 und Ps 310. Diese Charakterisierung unter Verwendung des PFH des VFH 245 wird ausgeführt, um eine geometrische Beschreibung der Punkte, die in der segmentierten Bilddatendatei 225 enthalten sind, in einer Weise bereitzustellen, die eine Maschinenerkennung erlaubt. Der Punkt Ps 310 ist im Kontext erster 3D-Achsen charakterisiert, die us 312, vs 314 und ws 316 enthalten, wobei der Vektor ns 313 eine Normale für den Punkt ps 310 repräsentiert. Der Punkt Pt 320 ist im Kontext zweiter 3D-Achsen charakterisiert, die ut 322, vt 324 und wt 326 enthalten, wobei der Vektor nt 323 durch einen ersten Winkel θ 325 in einer ersten Ebene, die durch die Achsen u 322 und ω 326 definiert ist, und einen zweiten Winkel α 321 in einer zweiten Ebene, die durch die Achsen u 322 und v 324 definiert ist, charakterisiert ist.
-
Die ersten 3D-Achsen, die us 312, vs 314 und ws 316 enthalten, entsprechen den zweiten 3D-Achsen, die ut 322, vt 324 bzw. wt 326 enthalten, die entlang dem Punktvektor 305 verschoben sind. Der Vektor ns 313 repräsentiert eine Normale für den Punkt ps 310, die zu der ut-Achse 322 parallel ist, und definiert einen dritten Winkel φ 315, der sich zwischen dem Vektor ns 313 und dem Punktvektor 305 befindet. Der Vektor nt 323 repräsentiert eine Oberflächennormale für den Punkt pt 320 und ist durch einen ersten Winkel θ 325 in einer ersten Ebene, die durch die Achsen u 322 und ω 326 definiert ist, und einen zweiten Winkel α 321 in einer zweiten Ebene, die durch die Achsen u 322 und v 324 definiert ist, charakterisiert.
-
Das PFH codiert die Statistik der Form einer Punktwolke, z. B. der Eingangspunktwolke 217, die bezüglich 2 beschrieben worden ist, durch das Akkumulieren der geometrischen Beziehungen zwischen allen Punktpaaren der aus der Eingangspunktwolke 217 extrahierten segmentierten Bilddatendatei 225. Bei einem gegebenen Paar von Punkten in der Umgebung und ihrer Normalen, wie z. B. bezüglich 3 beschrieben ist, akkumuliert das PFH ein vierdimensionales Histogramm, das einen Kosinus des zweiten Winkels α 321, den Kosinus des dritten Winkels φ 315, den ersten Winkel θ 325 und den Abstand zwischen den Punkten Pt 320 und Ps 310, der auf die Umgebung normiert ist, enthält. Die PFH-Parameter enthalten die betrachteten Dimensionen, um das Histogramm zu berechnen, und die Anzahl der Klassen für jede der Dimensionen.
-
Die Winkel, die den ersten Winkel θ 325, den zweiten Winkel α 321 und den dritten Winkel φ 315 enthalten, repräsentieren paarweise den Schwenk-, den Neigungs- und den Gierwinkel, wobei die vorhergehenden Winkel für jedes Paar von Normalen für einen identifizierten Oberflächenfleck in einer segmentierten Bilddatendatei 225 bestimmt worden sind. Dieses Merkmal macht von den Farbinformationen keinen Gebrauch.
-
4 veranschaulicht graphisch ein Beispiel einer Standpunktkomponente, die durch das Sammeln eines Histogramms der relativen Winkel α 421 zwischen dem Standpunkt 412, einer durch die Linie 410 angegebenen zentralen Standpunktrichtung und jeder von mehreren Oberflächennormalen ni 405 für eine Eingangspunktwolke 417 berechnet wird, wobei die Eingangspunktwolke 417 der Eingangspunktwolke 217 entspricht, die bezüglich 2 beschrieben worden ist. Die Oberflächennormale ni 405 ist für einen einzigen Punkt der Eingangspunktwolke 417. Jeder Punkt der Eingangspunktwolke 417 weist eine (nicht gezeigte) Oberflächennormale auf. Die Linie 414 stellt eine Standpunktrichtung bereit, wobei die Linie 410 eine zentrale Standpunktrichtung ist, die zu der Standpunktrichtung mit einem Ursprungspunkt, der einem zentralen Punkt 420 der Eingangspunktwolke 417 entspricht, parallel ist. Die relativen Winkel α 421 werden verwendet, um die Standpunktkomponente zu konstruieren, die die Statistik der relativen Winkel α 421 zwischen der Oberflächennormalen ni 405 und der zentralen Standpunktrichtung 410 enthält. Die Standpunktkomponente wird durch das Sammeln eines Histogramms der Winkel berechnet, die die Standpunktrichtung 414 mit jeder Oberflächennormalen ni 405 bildet, das den Winkel zwischen der zentralen Standpunktrichtung, die zu jeder Oberflächennormalen ni 405 verschoben ist, enthält. Die zweite Komponente misst die relativen Schwenk-, Neigungs- und Gierwinkel, die bezüglich 3 beschrieben worden sind, die zwischen der Standpunktrichtung 410 an dem zentralen Punkt 420 und jeder der Normalen 405 auf der Oberfläche gemessen werden.
-
5 veranschaulicht graphisch ein Beispiel eines Ensembles der Formfunktionen (ESF), das auf eine Eingangspunktwolke angewendet ist, die ein 3D-Objekt 501 enthält, das außerdem gezeigt ist. Eine segmentierte Bilddatendatei 225, die das 3D-Objekt 501 enthält, das von einer Eingangspunktwolke extrahiert worden ist, ist bezüglich 2 beschrieben worden. Das 3D-Objekt 501 ist als eine nicht einschränkende Veranschaulichung eines 3D-Objekts gezeigt. Das ESF enthält die Histogramme der Formfunktionen bezüglich des 3D-Objekts 501, das das Ensemble D2 502 und das zugeordnete Histogramm 503, das Ensemble A3 504 und das zugeordnete Histogramm 505, das Ensemble D3 506 und das zugeordnete Histogramm 507 und das Ensemble Verhältnis 508 und des zugeordnete Histogramm 509 enthält. Jedes der Histogramme 503, 505, 507 und 509 enthält die Häufigkeit des Auftretens auf der vertikalen Achse in Bezug auf jede Linie. Das Ensemble D2 502 und das zugeordnete Histogramm 503 werden basierend auf den Abständen zwischen zufällig abgetasteten Punkten, die aus der Eingangspunktwolke, die das 3D-Objekt 501 repräsentiert, ausgewählt werden, entwickelt. Das Ensemble A3 504 und das zugeordnete Histogramm 505 werden basierend auf den eingeschlossenen Winkeln zwischen zwei zufälligen Linien, die aus der Eingangspunktwolke, die das 3D-Objekt 501 repräsentiert, ausgewählt werden, entwickelt. Das Ensemble D3 506 und das zugeordnete Histogramm 507 werden basierend auf den Bereichen, die durch drei zufällig ausgewählte Punkte aufgespannt werden, die aus der Eingangspunktwolke, die das 3D-Objekt 501 repräsentiert, ausgewählt werden, entwickelt. Das Ensemble Verhältnis 508 und das zugeordnete Histogramm 509 werden basierend auf den Verhältnissen der zufälligen Linien, die außerhalb der Oberfläche und in der Oberfläche des 3D-Objekts 501 liegen, die aus der Eingangspunktwolke, die das 3D-Objekt 501 repräsentiert, ausgewählt werden, entwickelt.
-
Unter Bezugnahme auf 2 werden das Standpunktmerkmalshistogramm (VFH) 245 und ein Ensemble der Formfunktionen (ESF) 247 und das Farbhistogramm (CH) 235 und ein Rand richtungshistogramm (EDH) 237 mit den Inhalten des verringerten Suchraums 265 der segmentierten Bilddatendatei 225 verglichen, um das Verschmelzen der Merkmale von dem VFH 245, dem ESF 247, dem CH 235, dem EDH 237 und der Inhalte des verringerten Suchraums 265 (270) auszuführen. Die Verschmelzung der obenerwähnten Merkmale ist basierend auf einem menschlichen Erkennungsweg motiviert, bei dem die menschliche Erkennung von der Verarbeitung auf unterer Ebene unter Verwendung erscheinungsbasierter Markierungen bis zu der Darstellung eines Objekts auf hoher Ebene durch die Verschmelzung mehrerer geometrischer Markierungen beginnt. Die Farbe und die Form transportieren die Informationen schnell, was eine visuelle Suche für das menschliche Wahrnehmungssystem in der physikalischen Welt nach dem Eingrenzen des Suchraums von der Teilansichts-Datenbank 255 durch die 2D-Erscheinungsmerkmale fördert. Jene Teilansichten in der Teilansichts-Datenbank 255, die eine Gesamtähnlichkeit in der Erscheinung bezüglich eines Eingangsobjekts aufweisen, werden basierend auf der verschmolzenen Entscheidung ausgewählt, die durch die 2D-Farb- und Randrichtungs-Klassifizierer gegeben ist.
-
Die Verschmelzung der Merkmale, die einer 2D-Verschmelzung zugeordnet ist, enthält das Vergleichen der 2D-Merkmale eines Objekts mit den Merkmalen der Teilansichten bekannter Objekte, die in der Teilansichts-Datenbank 255 gespeichert sind. Dies enthält das Vergleichen des CH 235 und des EDH 237 mit den Inhalten der Teilansichts-Datenbank 255. Eine gewichtete Summe wird verwendet, um die beiden Übereinstimmungsbewertungen zu kombinieren: S2d = ωSch + (1 – ω)Sedh [1] wobei Sch und Sedh die euklidischen Abstände zwischen den Test- und Trainingsmerkmalen in der Farb- bzw. der Randrichtung sind und in dem CH 235 und dem EDH 237 quantifiziert sind. Die Übereinstimmungsbewertungen werden unter Verwendung einer Maximumnormierung normiert. Der Term ω ist das Gewicht für eines der beiden Merkmale, der in einer Ausführungsform 0,6 ist.
-
In dem verringerten Suchraum wird ein adaptiver Erhöhungs-Lernalgorithmus (Adaboost-Lernalgorithmus), der die geometrischen 3D- und die 2D-Erscheinungsmerkmale kombiniert, ausgeführt, um die effektivsten Merkmale für die endgültige Entscheidung auszuwählen, die jeden Teil der segmentierten Bilddatendatei 225 mit einem der bekannten Objekte (280) korreliert. Die adaptive Erhöhung (Adaboost) ist eine Herangehensweise an das Maschinenlernen, die eine im hohen Grade genaue Vorhersageregel durch das Kombinieren vieler relativ schwacher und ungenauer Regeln oder Klassifizierer erzeugt. Solange wie jeder schwache Klassifizierer mit wenigstens 50% Erfolg arbeitet und die Fehler der verschiedenen Klassifizierer unabhängig sind, kann dann der Algorithmus durch das optimale Auswählen der Gewichte für die schwachen Klassifizierer die Fehlerrate verbessern. In diesem Fall werden vier schwache Klassifizierer verwendet, z. B. die beiden 2D-Merkmale, die das CH 235 und das EDH 237 enthalten, und die beiden 3D-Merkmale, die das VFH 245 und das ESF 247 enthalten.
-
Die Ausführung dieses Teils des Adaboost-Prozesses enthält beispielhaft das Setzen von h
n als den n-ten schwachen Klassifizierer und das Annehmen, dass y = h
n(x) die Ausgabe des Klassifizierers für die Eingabe x ist. In diesem Fall ist x das Eingangsobjekt und ist y ein binäres Etikett, das angibt, ob ein Objekt durch den schwachen Klassifizierer erkannt wird. Der starke Klassifizierer ist durch eine gewichtete Summe der schwachen Klassifizierer gegeben:
Ψ(x) = sign(Σ N / n=1αnhn(x)) [2] wobei α
n das durch AdaBoost gefundene skalare Gewicht, das die Wichtigkeit des schwachen Klassifizierers h
n angibt, ist, wobei N = 4 ist. Die Gewichte werden in einer iterativen Weise gemäß
bestimmt, wobei der Fehler ε
n wie folgt bestimmt wird.
-
-
In dieser Gleichung ist die Ausgabe yi ∊ {–1, +1) die Grundwahrheit für die Trainingsmenge und ist Dn(i) das Gewicht, das dem i-ten Trainingsbeispiel in der Runde n zugeordnet ist.
-
Folglich werden die Objektsegmentierung und die Objekterkennung unter Verwendung multimodaler Merkmale von beliebigen Standpunkten für Roboteranwendungen durch das Kombinieren sowohl lokaler 2D- als auch globaler 3D-Merkmale in eine multimodale Optimierung optimiert, um hohe Objekterkennungsraten und sehr niedrige falsche Alarme zu erreichen. Dies erlaubt das effiziente Verschmelzen geometrischer und visueller Merkmale in einer vereinheitlichten Weise, z. B. unter Verwendung von Adaboost, und das Klassifizieren sowohl texturierter als auch nicht texturierter Objekte von beliebigen Standpunkten unter Verwendung der Teilansichtsmodellierung. Die Teilansichtsanpassung ermöglicht eine grobe Schätzung der Haltung für eine schnelle Präzisionshaltungsausrichtung. Eine derartige Funktionalität erhöht die Autonomie des Roboters für die Objektmanipulation und die Mensch-Roboter-Zusammenarbeit für die Fertigung.
-
Abermals unter Bezugnahme auf 2 führen die Ergebnisse des effizienten Verschmelzens der geometrischen und der visuellen Merkmale in einer vereinheitlichten Weise, z. B. unter Verwendung von Adaboost, und das Klassifizieren sowohl texturierter als auch nicht texturierter Objekte von beliebigen Standpunkten unter Verwendung der Teilansichtsmodellierung zu dem Objekterkennungsprozess 200, der die Maschinenerkennung der bekannten Objekte 211, 212, 213, 214 und 215, wie z. B. des Schalters 211, des Radios 212, der Feldflasche 213, der Sprühflasche 214 bzw. des Griffs 215 (290), ausführt.
-
Eine sichtbasierte Herangehensweise, wie sie hier beschrieben ist, erkennt automatisch ein bekanntes Objekt in dem FOV. Diese Fähigkeit ermöglicht es einer Vorrichtung, z. B. einem Roboterarm, Objekte zum Ergreifen und/oder die Manipulation durch das Extrahieren der Merkmale über ein Objekt im Kontext seiner Umgebung mit einer flexiblen Anpassung für einen ausgedehnten Bereich von Objekten und Bedingungen, Orientierungen, Beleuchtung, Blickpunkten, Okklusionen, Hintergrund und räumlicher Kenntnis zu lokalisieren. Die hier beschriebene Herangehensweise setzt sowohl die Erscheinung als auch die Geometrie wirksam ein, um ein Objekt sowohl zu lokalisieren als auch zu erkennen, wobei sie die Bereichsinformationen von einem Tiefensensor in dem Haltungsoptimierungsalgorithmus verwenden kann, um die Genauigkeit zu erhöhen. Die Verwendung der multisensorischen Wahrnehmung beschleunigt die Klassifikation und das Suchen durch das Aufnehmen multisensorischer Wahrnehmungsaufmerksamkeitsmechanismen und durch das Entwickeln von Klassifizierer-Taxonomien für das schnelle Parsen durch eine umfassende Vielfalt von Objekten.
-
Ein Verfahren zur Objekterkennung, wie es hier beschrieben ist, fördert den Einsatz von Automatisierungssystemen durch das Bereitstellen hoher Niveaus der Flexibilität und der Rekonfigurierbarkeit. Die hier beschriebenen Konzepte ermöglichen die Flexibilität und die Konvertierbarkeit unter Verwendung einer minimalen Infrastruktur mit einem bestimmten Grad der Automatisierung der ersten Generation der humanoiden Roboter bei Montageoperationen, wie z. B. beim Aufnehmen aus Behältern oder der Materialhandhabung. Es ermöglicht außerdem eine robuste und autonome Montagefähigkeit, das Finden von Teilen in weniger strukturierten Umgebungen, die visuelle Bestätigung von Aufgaben und die leichte Manipulation komplexer und flexibler Teile. Das hier beschriebene System ermöglicht einem Roboterarm, die Rolle der Menschen am Montageband zu ergänzen und die Arbeiterzeit, die bei Routine-, nicht entscheidenden, sich wiederholenden Funktionen des Montageprozesses, die sich innerhalb der kurzfristigen Fähigkeiten geschickter humanoider Roboter befinden, verwendet wird, zu verringern. Das hier beschriebene System ermöglicht einem Roboterarm, halbstarre, starre, prismatische Teile verschiedener Formen und Gestalten handzuhaben, viele Objekte schnell zu detektieren und die Fähigkeit zu besitzen, Modelle für neue Objekte in einer halbautomatischen Weise zu lernen. Diese Fähigkeit ist notwendig und entscheidend, um Roboter zu ermöglichen, die mit Menschen unter Verwendung derselben Prozessinfrastruktur zusammenarbeiten können.
-
Die ausführliche Beschreibung und die Zeichnungen oder die Figuren sind für die vorliegenden Lehren unterstützend und beschreibend, wobei aber der Umfang der vorliegenden Lehren ausschließlich durch die Ansprüche definiert ist. Während einige der besten Arten und andere Ausführungsformen zum Ausführen der vorliegenden Lehren ausführlich beschrieben worden sind, sind verschiedene alternative Bauformen und Ausführungsformen zum Praktizieren der vorliegenden Lehren, die in den beigefügten Ansprüchen definiert sind, vorhanden.