DE102016206010B4 - Systeme und Verfahren zur Klassifizierung und Angleichung von hochgradig ähnlichen oder selbstähnlichen Mustern - Google Patents

Systeme und Verfahren zur Klassifizierung und Angleichung von hochgradig ähnlichen oder selbstähnlichen Mustern Download PDF

Info

Publication number
DE102016206010B4
DE102016206010B4 DE102016206010.4A DE102016206010A DE102016206010B4 DE 102016206010 B4 DE102016206010 B4 DE 102016206010B4 DE 102016206010 A DE102016206010 A DE 102016206010A DE 102016206010 B4 DE102016206010 B4 DE 102016206010B4
Authority
DE
Germany
Prior art keywords
features
training images
training
image
model
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
DE102016206010.4A
Other languages
English (en)
Other versions
DE102016206010A1 (de
Inventor
Simon Barker
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.)
Cognex Corp
Original Assignee
Cognex 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 Cognex Corp filed Critical Cognex Corp
Publication of DE102016206010A1 publication Critical patent/DE102016206010A1/de
Application granted granted Critical
Publication of DE102016206010B4 publication Critical patent/DE102016206010B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/449Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
    • G06V10/451Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
    • G06V10/454Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Abstract

Ein Verfahren zum Trainieren eines Bildverarbeitungssystems zur Erschaffung eines geometrischen Modells, das Verfahren umfassend die Schritte vonErlangen eines ersten Satzes von Trainingsbildern eines ersten Werkstücks und eines zweiten Satzes von Trainingsbildern eines zweiten Werkstücks;Auswählen von mindestens einem Trainingsbild von einem von dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern als mindestens ein Ausgangsbild;Trainieren von mindestens einem Ausgangswert-Angleichungsmodell von dem mindestens einen Ausgangsbild;Erfassen der Trainingsbilder im ersten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild ausgewählt wurden, unter Verwendung von dem mindestens einen Ausgangswert-Angleichungsmodell, um einen ersten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild im ersten Satz von Trainingsbildern zu erhalten;Erfassen der Trainingsbilder im zweiten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild ausgewählt wurden, unter Verwendung von dem mindestens einen Ausgangswert-Angleichungsmodell, um einen zweiten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild im zweiten Satz von Trainingsbildern zu erhalten;Identifizieren von ersten entsprechenden Merkmalen von dem ersten Satz von Trainingsbildern, wobei die ersten entsprechenden Merkmale unter den Trainingsbildern im ersten Satz stabil sind;Identifizieren von zweiten entsprechenden Merkmalen von dem zweiten Satz von Trainingsbildern, wobei die zweiten entsprechenden Merkmale unter den Trainingsbildern im zweiten Satz stabil sind;Identifizieren von mindestens einem gemeinsamen Merkmal unter den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen;Extrahieren von einem oder mehreren unterscheidenden Merkmalen von dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern auf Grundlage der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und des mindestens einen gemeinsamen Merkmals unter den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen, wobei das eine oder die mehreren unterscheidenden Merkmale zwischen zwei Sätzen von Trainingsbildern Merkmalen entsprechen, die zwischen den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen verschieden sind, und verwendet werden können, um zwischen dem ersten Werkstück und dem zweiten Werkstück zu differenzieren;Erstellen eines Angleichungsmodells unter Verwendung von mindestens einem der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und des mindestens einen gemeinsamen Merkmals; undErstellen eines Klassifizierungsmodells unter Verwendung des einen oder der mehreren unterscheidenden Merkmale.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft die Klassifizierung und die Angleichung von hochgradig ähnlichen oder selbstähnlichen Mustern.
  • HINTERGRUND DER ERFINDUNG
  • Fortgeschrittene Bildverarbeitungssysteme werden zunehmend bei einer Vielfalt von Produktions- und Qualitätskontroll-Prozessen verwendet. Bildverarbeitung ermöglicht die Erfassung von schnellen, akkuraten und reproduzierbaren Ergebnissen bei der Produktion von Massenprodukten und Spezialanfertigungen. Typische Bildverarbeitungssysteme können einschließen: eine oder mehrere Kameras mit, zum Beispiel, Solid-State Charge-Coupled-Device-(CCD)-Bildgebungselementen, die auf einen bestimmten Bereich gerichtet werden können, bildverarbeitende Elemente, die Bilder aufnehmen und übertragen können, einen Computer zum Betrieb der Bildverarbeitungssoftware-Anwendung und fähig, die aufgenommenen Bilder zu verarbeiten und eine Apparatur, um den bestimmten Bereich angemessen auszuleuchten.
  • Bildverarbeitungsanwendungen können die Inspektion von Komponenten und ihrer Oberflächen einschließen, um Defekte, die die Qualität beeinträchtigen können, zu erkennen. Wo hinreichend schwere Defekte erkannt werden, kann ein Teil einer Oberfläche als defekt oder sogar inakzeptabel markiert werden. Typischerweise nehmen fortgeschrittene Bildverarbeitungssysteme ein Bild von einem Muster über die Kamera auf und analysieren den Umriss eines bestimmten Teils des Musters, wie etwa einer vorgegebenen Markierung. Bildverarbeitungssysteme, wie etwa das Produkt PatMax®, erhältlich bei Cognex Corporation aus Natick, Massachusetts, können eine große Zahl von Echtzeitberechnungen, die in einem kurzen Zeitrahmen durchgeführt werden, verarbeiten. Das ermöglicht insbesondere die Bestimmung der Koordinaten innerhalb eines Bildreferenzsystems für jeden analysierten Punkt in dem betrachteten Bereich und deren Korrelation durch Wiederholung mit einem gewünschten Muster. Bildverarbeitungssysteme können die Lage verschiedener Punkte auf dem aufgenommenen Bild im Vergleich zu gespeicherten Punkten auf einem Modell-Bild kartieren und bestimmen, ob die aufgenommenen Bildpunkte innerhalb eines akzeptablen Wertebereichs relativ zu den Modell-Bildpunkten fallen. Zusätzlich kann ein System unter Verwendung verschiedener Entscheidungsalgorithmen entscheiden, ob das betrachtete Muster in einer bestimmten Rotation, Skalierung und Position dem gewünschten Suchmuster entspricht. In diesem Fall kann das System bestätigen, dass das betrachtete Muster tatsächlich das Muster, nachdem das System sucht, ist, und kann spezifische Aufgaben ausführen, zum Beispiel die Position oder Orientierung des Musters korrigieren, Objekte aus einer Fertigungsstraße entnehmen oder in sie einsortieren und die Objekte in einer Fertigungsstraße zählen.
  • Verfahren nach dem Stand der Technik zur Erfassung einen Musters liefern oft eine falsche Erfassung von gleichbleibenden Merkmalen, d.h. Merkmalen, die auf allen von einer bestimmten Ansicht ausgenommenen Bildern gleichbleibend auftauchen. Das mag Veränderungen der Lage des Merkmals geschuldet sein, Änderungen der Lichtbedingungen, etc. Darüber hinaus können Verfahren nach dem Stand der Technik keine Erfassung von unterscheidenden Merkmalen liefern, die auf Bildern auftauchen, die ähnlichen Objekten entsprechen. Was benötigt wird, ist ein Verfahren, um das Training eines Bildverarbeitungssystems zur Wahrnehmung gleichbleibender und unterscheidender Merkmales bei einem hohen Grad von Variabilität zu ermöglichen.
  • US 8 331 650 B2 offenbart ein Verfahren zur Feststellung eines Defekts in einem industriellen Teil, wobei ein Eingabebild empfangen wird, das mit einem industriellen Teil assoziiert ist, ein Modelltyp empfangen wird, das mit dem Eingabebild assoziiert ist, und ein Modellbild erhalten wird, das jenem Modelltyp entspricht. Das Verfahren registriert und vergleicht anschließend das Eingabebild mit dem Modellbild, um Differenzvektoren zwischen den Bildern zu bestimmen.
  • ZUSAMMENFASSUNG
  • Der vorliegenden Erfindung liegt das Problem zugrunde, ein Trainingsverfahren für Bildverarbeitungssysteme bereitzustellen, das ein Klassifizierungsmodell erstellen kann, mit dem verschiedene Werkstücke klassifiziert und voneinander differenziert werden können. Das der Erfindung zugrunde liegende Problem wird durch die Gegenstände der unabhängigen Patentansprüche gelöst.
  • Bereitgestellt werden Verfahren und Systeme zur Klassifizierung und Angleichung von hochgradig ähnlichen oder selbstähnlichen Mustern. Ein selbstähnliches Muster ist ein Muster, das bei mindestens einer zweidimensionalen Transformation ein ähnliches Erscheinungsbild hat. Die offenbarten Verfahren extrahieren ein oder mehrere unterscheidende Merkmale aus Trainingsbildern, die verwendet werden können, um zwischen zwei Werkstücken zu differenzieren.
  • Unter manchen Gesichtspunkten wird ein computergestütztes Verfahren für das Training eines Bildverarbeitungssystems zum Erstellen geometrischer Modelle bereitgestellt. Das Verfahren umfasst: Erlangung eines ersten Satzes von Trainingsbildern eines ersten Werkstücks und eines zweiten Satzes von Trainingsbildern eines zweiten Werkstücks, Auswählen von mindestens einem Trainingsbild von einem von dem ersten Satz von Trainingsbildern und von dem zweiten Satz von Trainingsbildern als mindestens ein Ausgangsbild und Trainieren von mindestens einem Ausgangswert-Angleichungsmodell aus mindestens einem Ausgangsbild. Das Verfahren umfasst ferner: Erfassung der Trainingsbilder in dem ersten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild unter Verwendung des mindestens einen Ausgangswert-Angleichungsmodells ausgewählt wurden, um einen erste Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild in dem ersten Satz von Trainingsbildern zu erlangen, und Erfassung der Trainingsbilder in dem zweiten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild unter Verwendung des mindestens einen Ausgangswert-Angleichungsmodells ausgewählt wurden, um einen zweiten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild in dem zweiten Satz von Trainingsbildern zu erlangen. Das Verfahren umfasst ferner: Die Identifizierung erster entsprechender Merkmale aus dem ersten Satz von Trainingsbildern, wobei die ersten entsprechenden Merkmale unter den Trainingsbildern im ersten Satz stabil sind, und die Identifizierung zweiter entsprechender Merkmale aus dem zweiten Satz von Trainingsbildern, wobei die zweiten entsprechenden Merkmale unter den Trainingsbildern im zweiten Satz stabil sind, um mindestens ein gemeinsames Merkmal unter den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen zu identifizieren. Das Verfahren umfasst ferner: die Extraktion eines oder mehrerer unterscheidender Merkmale aus dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern, basiert auf den ersten, den zweiten entsprechenden Merkmalen und dem mindestens einen gemeinsamen Merkmal unter den ersten entsprechenden und den zweiten entsprechenden Merkmalen, wobei das eine oder die mehreren unterscheidenden Merkmale zwischen den zwei Sätzen von Trainingsbildern Merkmalen entsprechen, die zwischen den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen verschieden sind, und verwendet werden können, um zwischen dem ersten Werkstück und dem zweiten Werkstück zu differenzieren, die Erstellung eines Angleichungsmodells unter Verwendung von mindestens einem der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und dem mindestens einen gemeinsamen Merkmal und die Erstellung eines Klassifizierungs-Modells unter Verwendung des einen oder der mehreren unterscheidenden Merkmale.
  • Unter manchen Gesichtspunkten wird ein computergestütztes Verfahren für das Training eines Bildverarbeitungssystems zum Erstellen geometrischer Modelle bereitgestellt. Das Verfahren umfasst: Erlangung eines ersten Satzes von Trainingsbildern, die ein Muster darstellen, das Training eines Ausgangswert-Angleichungsmodells anhand eines ersten Trainingsbildes des Satzes von Trainingsbildern und die Erfassung von Trainingsbildern von dem Satz von Trainingsbildern außer dem ersten Trainingsbild zur Erlangung eines ersten Satzes von relativen Positionen unter den Trainingsbildern durch Verwendung des Angleichungsmodells. Das Verfahren umfasst auch die Identifizierung gemeinsamer Merkmale von den Trainingsbildern durch Extrahieren von Merkmalen von jedem der Trainingsbilder, Kartieren der extrahierten Merkmale unter Verwendung des ersten Satzes von relativen Positionen und Anwendung einer Korrespondenz-Metrik auf die kartierten Merkmale und Erstellung eines Angleichungsmodells für das Muster unter Verwendung eines ersten Teil-Satzes der gemeinsamen Merkmale, die von einem ersten Satz von Trainingsbildern abgeleitet sind, die in einen ersten Bereich des Musters fallen, wobei die Merkmale des ersten Teil-Satzes von gemeinsamen Merkmalen unter den Trainingsbildern im ersten Satz stabil sind. Das Verfahren umfasstauch die Identifizierung eines zweiten Bereichs innerhalb der Trainingsbilder, die Identifizierung eines zweiten Teil-Satzes von gemeinsamen Merkmalen, die von einem zweiten Satz von Trainingsbildern abgeleitet sind, die in den zweiten Bereich fallen, wobei die Merkmale des zweiten Teil-Satzes von gemeinsamen Merkmalen unter den Trainingsbildern im zweiten Satz stabil sind, die Extraktion von einem oder mehreren unterscheidenden Merkmalen von dem ersten Satz von gemeinsamen Merkmalen und dem zweiten Satz von gemeinsamen Merkmalen, wobei die ein oder mehreren differenzierenden Merkmale Merkmalen entsprechen, die zwischen dem ersten Teil-Satz von gemeinsamen Merkmalen und dem zweiten Teil-Satz von gemeinsamen Merkmalen verschieden sind, und dazu verwendet werden können, um zwischen einem Bereich, der eine Referenzmarke enthält, und dem zweiten Bereich zu unterschieden, und die Erstellung eines Klassifikationsmodells aus einem oder mehreren unterscheidenden Merkmalen.
  • Unter manchen Gesichtspunkten wird ein System für das Training eines Bildverarbeitungssystems zum Erstellen geometrischer Modelle bereitgestellt. Das System umfasst eine Kamera, die zum Aufnehmen von Bildern konfiguriert ist, und einen Prozessor in Verbindung mit der Kamera. Der Prozessor ist dazu konfiguriert, einen ersten Satz von Trainingsbildern eines ersten Werkstücks und einen zweiten Satz von Trainingsbildern eines zweiten Werkstücks zu erhalten, mindestens ein Trainingsbild von einem von dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern als mindestens ein Ausgangsbild auszuwählen und mindestens ein Ausgangswert-Angleichungsmodell von dem mindestens einen Ausgangsbild zu trainieren. Der Prozessor ist auch dazu konfiguriert, die Trainingsbilder zu erfassen in dem ersten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild ausgewählt wurden, unter Verwendung des mindestens einen Ausgangswert-Angleichungssystems, um einen ersten Satz von relativen Positionen zu dem mindestens einen Ausgangbild für jedes Trainingsbild in dem ersten Satz von Trainingsbildern zu erhalten, und die Trainingsbilder zu erfassen in dem zweiten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild ausgewählt wurden, unter Verwendung des mindestens einen Ausgangswert-Angleichungsmodells, um einen zweiten Satz von relativen Positionen zu dem mindestens einen Ausgangbild für jedes Trainingsbild in dem zweiten Satz von Trainingsbildern zu erhalten. Der Prozessor ist auch dazu konfiguriert, erste entsprechende Merkmale aus dem ersten Satz von Trainingsbildern zu identifizieren, wobei die ersten entsprechenden Merkmale unter den Trainingsbildern im ersten Satz stabil sind, zweite entsprechende Merkmale aus dem zweiten Satz von Trainingsbildern zu identifizieren, wobei die zweiten entsprechenden Merkmale unter den Trainingsbildern im zweiten Satz stabil sind, mindestens ein gemeinsames Merkmal innerhalb der ersten entsprechenden Merkmale und der zweiten entsprechenden Merkmale zu identifizieren. Der Prozessor ist auch dazu konfiguriert, ein oder mehrere unterscheidende Merkmale zu extrahieren aus dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern, auf Grundlage der ersten, der zweiten entsprechenden Merkmale, wobei die ein oder mehreren unterscheidenden Merkmale zwischen zwei Sätzen von Trainingsbildern Merkmalen entsprechen, die zwischen den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen verschieden sind, und dazu benutzt werden können, zwischen dem ersten Werkstück und dem zweiten Werkstück zu unterscheiden, ein Angleichungsmodell zu erstellen unter Verwendung von mindestens einem der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und mindestens eines gemeinsamen Merkmals und ein Klassifizierungs-Modell unter Verwendung des einen oder der mehreren unterscheidenden Merkmale zu erstellen.
  • Unter manchen Gesichtspunkten wird ein System für das Training eines Bildverarbeitungssystems zum Erstellen geometrischer Modelle bereitgestellt. Das System umfasst eine Kamera, die zum Aufnehmen von Bildern konfiguriert ist, und einen Prozessor in Verbindung mit der Kamera. Der Prozessor ist dazu konfiguriert, einen ersten Satz von Trainingsbildern, die ein Muster darstellen, zu erhalten, ein Ausgangswert-Angleichungsmodell anhand eines ersten Trainingsbildes des Satzes von Trainingsbildern zu trainieren und Trainingsbilder zu erfassen von dem Satz von Trainingsbildern außer dem ersten Trainingsbild zur Erlangung eines ersten Satzes von relativen Positionen unter den Trainingsbildern durch Verwendung des Angleichungsmodells. Der Prozessor ist auch dazu konfiguriert, gemeinsame Merkmale von den Trainingsbildern zu identifizieren durch Extrahieren von Merkmalen von jedem der Trainingsbilder, Kartieren der extrahierten Merkmale unter Verwendung des ersten Satzes von relativen Positionen und Anwendung einer Korrespondenz-Metrik auf die kartierten Merkmale und ein Angleichungsmodell zu erstellen für das Muster unter Verwendung eines ersten Teil-Satzes der gemeinsamen Merkmale, die von einem ersten Satz von Trainingsbildern abgeleitet sind, die in einen ersten Bereich des Musters fallen, wobei die Merkmale des ersten Teil-Satzes von gemeinsamen Merkmalen unter den Trainingsbildern in ersten Satz stabil sind. Der Prozessor ist auch dazu konfiguriert, einen zweiten Bereichs innerhalb der Trainingsbilder zu identifizieren, einen zweiten Teil-Satz von gemeinsamen Merkmalen zu identifizieren, die von einem zweiten Satz von Trainingsbildern abgeleitet sind, die in den zweiten Bereich fallen, wobei die Merkmale des zweiten Teil-Satzes von gemeinsamen Merkmalen unter den Trainingsbildern in zweiten Satz stabil sind, ein oder mehrere unterscheidende Merkmale zu extrahieren von dem ersten Satz von gemeinsamen Merkmalen und dem zweiten Satz von gemeinsamen Merkmalen, wobei die ein oder mehreren unterscheidenden Merkmale Merkmalen entsprechen, die zwischen dem ersten Teil-Satz von gemeinsamen Merkmalen und dem zweiten Teil-Satz von gemeinsamen Merkmalen verschieden sind, und dazu verwendet werden können, um zwischen einem Bereich, der eine Referenzmarke enthält, und dem zweiten Bereich zu unterschieden, und ein Klassifikationsmodell aus einem oder mehreren unterscheidenden Merkmalen zu erstellen.
  • Diese und andere Ausführungsformen werden detaillierter im Rest der Beschreibung beschrieben, mit Bezug die Zeichnungen.
  • Figurenliste
    • 1 zeigt ein beispielhaftes Bildverarbeitungssystem, in Übereinstimmung mit manchen Ausführungsformen;
    • 2 zeigt ein beispielhaftes Blickfeld in einem Bildverarbeitungssystem;
    • 3a zeigt beispielhafte Blickfelder eines Werkstücks in einem Bildverarbeitungssystem;
    • 3b zeigt beispielhafte Blickfelder eines Werkstücks in einem Bildverarbeitungssystem;
    • 4 zeigt beispielhafte gemeinsame Merkmale unter Trainingsbildern desselben Satzes und unter Trainingsbildern verschiedener Sätze, in Übereinstimmung mit manchen Ausführungsformen;
    • 5 zeigt beispielhafte unterscheidende Merkmale unter Trainingsbildern verschiedener Sätze, in Übereinstimmung mit manchen Ausführungsformen;
    • 6a zeigt einen beispielhaften Trainingsprozess, in Übereinstimmung mit manchen Ausführungsformen;
    • 6b zeigt einen beispielhaften Laufzeitprozess, in Übereinstimmung mit manchen Ausführungsformen;
    • 7a zeigt beispielhafte unterscheidende Merkmale unter Trainingsbildern verschiedener Sätze, nachdem die Merkmale angeglichen und im Vergleich zu einer Oberansicht eines Objekts gezeigt wurden, in Übereinstimmung mit manchen Ausführungsformen;
    • 7b zeigt beispielhafte Merkmale, angeglichen bei einer Rotation von 180 Grad, und unterscheidende Merkmale für ein Modell in unterschiedlichen Orientierungen, in Übereinstimmung mit manchen Ausführungsformen;
    • 8 zeigt ein Beispiel von fehlerhafter Angleichung von Merkmalen durch ein Bildverarbeitungssystem;
    • 9a zeigt beispielhafte Merkmale eines ursprünglichen Modells und die unterscheidenden Merkmale eines Verwechslungsmodells, in Übereinstimmung mit manchen Ausführungsformen;
    • 9b zeigt beispielhafte Merkmale eines ursprünglichen Modells und die unterscheidenden Merkmale eines Verwechslungsmodells, in Übereinstimmung mit manchen Ausführungsformen;
    • 10 zeigt angeglichene Merkmale an einem Objekt, basiert auf einem beispielhaften Bewertungs-Algorithmus, in Übereinstimmung mit manchen Ausführungsformen;
    • 11 zeigt fehlerhaft angeglichene Merkmale an einem Objekt, basiert auf einen beispielhaften Bewertungs-Algorithmus, in Übereinstimmung mit manchen Ausführungsformen; und
    • 12 zeigt ein exemplarisches Verfahren zum Training eines Bildverarbeitungssystems, in Übereinstimmung mit manchen Ausführungsformen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die verschiedenen Gesichtspunkte der vorliegenden Erfindung werden jetzt mit Bezug auf die beigefügten Zeichnungen beschrieben, worin gleiche Bezugsnummern in mehreren Ansichten ähnlichen Elementen entsprechen. Es versteht sich jedoch, dass die Zeichnungen und die sich hiernach darauf beziehende ausführliche Beschreibung nicht beabsichtigen, den beanspruchten Gegenstand auf die bestimmte offenbarte Form zu beschränken.
  • Ein Nachteil von typischen Bildverarbeitungssystemen besteht darin, dass sie typischerweise Trainingsvorgänge unter Verwendung eines einzigen Trainingsbildes durchführen. Weil industrielle Prozesse oft einen hohen Grad an Variabilität aufweisen, kann die Auswahl eines einzigen Trainingsbildes potentiell das Muster und/oder Modell verzerren, im Bezug auf die Variationen, die bei einem speziellen einzelnen Trainingsbild auftreten. Die Variationen können zum Beispiel einschließen: Änderungen der Belichtungsbedingungen und/oder der Richtung von Lichtquellen, kleine Änderungen der Perspektive („Ebenen-Wackeln“) Hintergrundrauschen, Rotation und/oder Translation von Merkmalen innerhalb des Bildes etc. Wie festgestellt kann bei der Verwendung von einem einzigen Trainingsbild jede dieser Variablen, die in dem Trainingsbild eingeschlossen sind, eine Verzerrung bei dem Mustern bewirken, das vom Bildverarbeitungssystem zur Identifizierung von Merkmalen während der Laufzeit verwendet wird. Sollte zum Beispiel das einzige Trainingsbild eine mangelhafte Darstellung eines Merkmals beinhalten, hätte das trainierte Modell eine Verzerrung hin zu Bildern, die ähnliche mangelhafte Darstellungen dieses Merkmals beinhalten, eingebaut. Dies kann in falsch-negative, z.B., Entscheidungen des Bildverarbeitungssystems führen, dass ein Merkmal nicht vorhanden ist, während es tatsächlich auf einem Bild vorhanden ist.
  • Ein Ansatz, die bekannten Nachteile der Verwendung von Einzelbildtraining zu vermeiden, ist, eine Vielzahl von Trainingsbildern zu verwenden und Bild-Mittelung durchzuführen, um ein gemitteltes Trainingsbild zu erstellen. Bei solchen Systemen wird eine Vielzahl von Bildern genommen und ein Mittelwert jedes Pixels berechnet, um das gemittelte Trainingsbild zu erstellen. Ein bekannter Nachteil solcher Mittelungs-Techniken ist, dass Ränder innerhalb des gemittelten Trainingsbildes durch den Mittelungsvorgang unscharf werden können. Zusätzlich könnten fehlerhafte Merkmale innerhalb des Bildes, die nur auf bestimmten Bildern auftauchen, nicht vollständig entfernt werden. Wenn ein Bild zum Beispiel ein sehr helles fehlerhaftes Merkmal auf einem ersten Trainingsbild und nicht auf einem zweiten Trainingsbild enthält, wird das gemittelte Trainingsbild ein Merkmal mittlerer Helligkeit enthalten. Dennoch ist dieses Merkmal verglichen mit dem erwünschten Trainingsbild noch fehlerhaft. Zusätzlich erfordert das Durchführen der Mittelwertberechnung von Trainingsbildern extrem genaue Angleichung der individuellen Bilder im Mittelwert.
  • Verfahren und Systeme für die Klassifizierung und Angleichung von hochgradig ähnlichen oder selbstähnlichen Mustern werden bereitgestellt. Wie oben diskutiert ist ein selbstähnliches Muster ein Muster, das bei mindestens einer zweidimensionalen Transformation ein ähnliches Erscheinungsbild hat. Zum Beispiel hat ein Quadrat mit einer kleinen Einkerbung auf einer Seite ein ähnliches Erscheinungsbild, wenn es um 90, 180 und 270 Grad gedreht wird.
  • 1 ist ein beispielhaftes Blockdiagramm eines Bildverarbeitungssystems 100. Das Bildverarbeitungssystem 100 kann ein Aufnahmegerät 105, zum Beispiel eine Kamera oder einen Scanner, einschließen, das ein Bild von einem Objekt 110 mit einem oder mehreren Merkmalen 115 erstellen kann. Das Aufnahmegerät kann auch ein Charge Coupled Device (CCD) oder ein anderes System für die Erlangung angemessener Bildinformation, wie CMOS-Sensoren, einschließen. Vom Aufnahmegerät 105 erstellte Bilddaten (oder Pixel) können eine Bildintensität darstellen, zum Beispiel Farbe oder Helligkeit jedes Punktes in der Bildfläche innerhalb der Auflösung des Aufnahmegeräts 105. Das Aufnahmegerät 105 kann digitale Bilddaten über einen Kommunikationsweg 120 an ein Bildanalysesystem 125 übertragen. Das Bildanalysesystem 125 kann einen konventionellen Digital-Daten-Prozessor umfassen, etwa die bildverarbeitenden Systeme des Typs, der kommerziell verfügbar ist, zum Bespiel von Cognex Corporation. Das Bildanalysesystem 125 kann auch einen konventionellen Mikrocomputer oder beispielhafte Computergeräte umfassen. Andere Formen von Schnittstellen können verwendet werden, einschließend, u.a., ein Table, ein Smartphone, Personal Digital Assistants (PDAs) und/oder andere Schnittstellen. Entsprechend der Gesichtspunkte der Offenbarung kann das Aufnahmegerät 105 verarbeitende Fähigkeiten einschließen, um die Funktion des Bildanalysesystems 125 durchzuführen. Bei solchen Ausführungsformen gibt es keinen Bedarf für ein separates Bildanalysesystem. In weiteren alternativen Ausführungsformen kann ein Aufnahmegerät für Trainingszwecke operativ mit einem Bildanalysesystem verbunden werden. Wenn das Training vollendet ist, können ein geeignetes Modell oder geeignete Modelle für Verwendung während der Laufzeit auf dem Aufnahmegerät gespeichert werden.
  • Das Bildanalysesystem 125 kann in Übereinstimmung mit den Lehren der vorliegenden Offenbarung programmiert werden, um ähnliche und distinktive Merkmale bei einer Vielzahl von Bildern zu identifizieren, um angemessene Erkennungs- und Erfassungsinformationen für das Training eines Bildverarbeitungssystems zu erstellen. Das Bildanalysesystem 125 kann einen oder mehrere zentrale Prozessierungseinheiten (Prozessoren) 130, Hauptspeicher 135, Input/Output-Systeme 145 und ein oder mehrere Laufwerke oder eine andere Form von Massenspeicher 140 haben. Veranschaulichend verbindet das Input/Output-System 145 mit dem Kommunikationsweg 120 zwischen dem Aufnahmegerät 105 und dem Bildanalysesystem 125. Das Bildanalysesystem 125 kann konfiguriert werden durch Programmierungs-Instruktionen in Übereinstimmung mit den Lehren der vorliegenden Erfindung, um die neue Multibild -trainierte Mustererkennung und-Erfassung der vorliegenden Erfindung durchzuführen. Alternative Hardware- und/oder Softwarekonfigurierungen können verwendet werden, um die Prinzipien der vorliegenden Erfindung umzusetzen. Besonders können die Lehren der vorliegenden Erfindung bei Software, Hardware, Firmware und/oder Kombinationen davon umgesetzt werden. Ferner können während der Laufzeit, im Gegensatz zur Trainingszeit, zusätzliche Komponenten im Bildverarbeitungssystem 100 eingeschlossen sein, zum Beispiel ein Förderband oder eine anderer Montagebandapparat.
  • In Übereinstimmung mit einer veranschaulichenden Ausführungsform der vorliegenden Erfindung kann das Bildverarbeitungssystem 100 dazu verwendet werden, ein Trainingsmodell zu erstellen, das bei einer Vielzahl von Bildverarbeitungssystemen, die ähnliche Komponenten verwenden, verwendet werden kann. Daher kann das Bildverarbeitungssystem 100 dazu verwendet werden, ein Trainings-Modell zu erstellen, das bei einer Vielzahl von Bildverarbeitungssystemen, die ähnliche Bestandteile verwenden, verwendet werden kann.
  • Fachleute würden verstehen, dass, während die vorliegende Erfindung im Bezug auf ein Bildverarbeitungssystem 100 beschrieben ist, die Prinzipien der vorliegenden Erfindung bei einer Vielzahl von unterschiedlichen Ausführungsformen verwendet werden können. Von daher kann die Bezeichnung Bildverarbeitungssystem alternative Systeme einschließen. Allgemeiner können die Prinzipien der vorliegenden Erfindung bei jedem System, dass Unter-Muster auf Bildern erfasst, umgesetzt werden. Zum Beispiel kann eine Ausführungsform ein konventionelles Bildverarbeitungssystem einschließen, das eine Einzel-Kamera umfasst, die mit einem Einzel-Computer operativ verbunden ist, der für die Verarbeitung von Bildern programmiert ist, etc. Allerdings können die Prinzipien der vorliegenden Erfindung bei anderen Geräten und/oder Systemen verwendet werden, die Untermuster auf Bildern erfassen. Zum Beispiel ein Vision-Sensor, wie das Produkt „Checker“, das bei Cognex Corporation erhältlich ist, oder ein anderes Gerät, dass Belichtungsquellen, Bild-Aufnahmefähigkeiten und/oder -Verarbeitungsfähigkeiten umfasst. Solche Vision-Sensoren können trainiert und/oder konfiguriert werden über separate Module, etwa einen Cognex Vision View. Bei solchen Ausführungsformen kann der Verwender den Vision-Sensor trainieren, eine Vielzahl von Teilen statt eines einzelnen Teils zu verwenden. Der Verwender kann ein erstes Teil auswählen, es vor den Sensor platzieren und dem System anzeigen, dass das Trainingsteil positioniert ist.
  • Zusätzliche Teile können ähnlich trainiert werden. Der Verwender kann den Trainingsschritt kontrollieren, indem er z.B. eine graphische Benutzeroberfläche (GUI) und/oder Knöpfe oder andere Kontrolloberflächen verwendet, die entweder auf dem Trainingsmodul und/oder auf dem Vision-Sensor selbst lokalisiert sind. Ferner kann die Funktionalität der vorliegenden Erfindung in Handheld-Geräte, drahtlos kompatible Geräte etc. eingebaut sein. Entsprechend sollte der Begriff Bildverarbeitungssystem breit interpretiert werden, um alle solche Systeme und Geräte zu umfassen, die eine oder mehrere Lehren der vorliegenden Erfindung verwenden können.
  • Multibild-Erfassung
  • Entsprechend den Gesichtspunkten der Offenbarung werden Systeme und Verfahren zur Durchführung von Multibild-Training zur Muster-Erkennung und Erfassung bereitgestellt. In Übereinstimmung mit einer veranschaulichenden Ausführungsform der vorliegenden Erfindung erhält ein Bildverarbeitungssystem zuerst N Trainingsbilder der Bildfläche. Veranschaulichend enthalten alle „N“ Bilder Variationen voneinander. Eines der N Bilder kann als ein Ausgangsbild ausgewählt werden und die anderen N-1 Bilder werden dann zu dem ausgewählten Bild erfasst. Diese Erfassung funktioniert als eine „grobe“ Angleichung jedes der Bilder mit dem ausgewählten Ausgangsbild, was erfordern kann, dass die anderen Bilder translatiert und/oder rotiert werden, sodass die Bilder angemessen erfasst werden. Ein Fachmann würde verstehen, dass die Erfassung nicht dieselbe Präzision erfordert, wie sie bei Mittelungs-Techniken nach Stand der Technik erforderlich ist.
  • Bei manchen Ausführungsformen können die Auswahl- und Erfassungs-Schritte wiederholt werden, sodass eine Vielzahl von den N Bildern als das Ausgangsbild verwendet wird. Zum Beispiel kann das System, indem es jedes der N Bilder als ein Ausgangsbild wiederholt, eine Datenbank von entsprechenden Bildmerkmalen aufbauen, die verwendet werden können, um ein Modell von Merkmalen, die bei den Bildern untereinander stabil sind, zu erstellen. Zum Beispiel kann, für eine spezielle Ortstoleranz, Winkeltoleranz, Bildbruchteil, ein Merkmal bei einem Satz von Bildern stabil sein, wenn es bei einer Anzahl von Bildbruchteilen gefunden werden kann, die über einem Schwellenwert liegt. Ein Merkmal kann als in einem Bildbruchteil gefunden angesehen werden, wenn zum Beispiel das Zentrum der Merkmale innerhalb einer Ortstoleranz und die Orientierung des Merkmals innerhalb einer Winkeltoleranz ist.
  • Die Merkmale, die einen Satz von entsprechenden Bild-Merkmalen darstellen, können zu dem Modell hinzugefügt werden. Um eine Datenbank von entsprechenden Bild-Merkmalen zu erstellen, kann jedes der Merkmale unter Verwendung eines Rand-Prüfwerkzeuges, oder anderer konventioneller Techniken, um Konturen in Bildverarbeitungssystemen zur Deckung zu bringen, zur Deckung gebracht werden. Zum Beispiel können Merkmale, die für das Modell ausgewählt werden, Merkmale sein, die die maximale Distanz unter den entsprechenden Merkmalen auf jedem der Bilder, wo das Merkmal auftaucht, minimieren. Das dem Modell hinzuzufügende Merkmal kann einen Mittelwert der Merkmale umfassen, von jedem der Bilder, auf denen das Merkmal auftaucht.
  • Der Prozess kann sich fortsetzten, bis jedes Merkmal, dass eine Schwellenwert-Anforderung erfüllt, als ein Merkmal entsprechend dem Modell hinzugefügt worden ist. Schwellenwerte können zum Beispiel eine Ortstoleranz von zwei Pixeln, eine Winkeltoleranz von zehn Grad und einen Bildbruchteil von 0,75 einschließen. Durch Verwendung eines Benutzer-definierten Schwellenwerts kann der Benutzer den gewünschten Grad von Konsistenz auf Bildern für ein Merkmal bestimmen, das in das Trainings-Modell für das Bildverarbeitungssystem eingebaut werden soll. Das resultierende Modell kann die stabilen Merkmale darstellen, die bei mindestens einer Schwellenwert-Anzahl der N Trainingsbilder gefunden werden, zum Beispiel einem Bildbruchteil von 0,75. Das Modell kann dann dazu verwendet werden, um ein Angleichungs/Prüfwerkzeug auf der Grundlage des Satzes von Merkmalen zu trainieren.
  • Um zusätzlich stabile Merkmale für ein einzelnes Muster bei mehreren Trainingsbildern zu identifizieren, kann es bei manchen Ausführungsformen erwünscht sein, die Variation zwischen ähnlichen, aber unterschiedlichen Mustern zu identifizieren. Die Verwendung von typischen Bildverarbeitungssystemen zur Unterscheidung zwischen zwei ähnlichen Mustern kann ziemlich problematisch sein. Zum Beispiel zeigt 2 ein beispielhaftes Blickfeld 200 eines Bildverarbeitungssystems. Das spezielle Blickfeld zeigt vier Shunt-Ringe (202, 204, 206 und 208) desselben Typs. Typische Bildverarbeitungssysteme können Probleme haben, zu bestimmen auf welcher Seite, z.B. Ober- oder Unterseite, die Shunt-Ringe liegen. Konkret liegen die Shunt-Ringe 202 und 204 auf ihrer Oberseite, während die Shunt-Ringe 206 und 208 auf ihrer Unterseite liegen. Die in 2 gezeigten Shunt-Ringe haben einige stabile Merkmale und sie haben auch einige unterscheidende Merkmale. Die Seite, Orientierung und allgemeine Position der Shunt-Ringe, und allgemein von ähnlichen Teilen, die unterscheidende Merkmale haben, macht es oft besonders schwer für Bildverarbeitungssysteme zu bestimmen, dass Teile des Blickfelds mit einem besonderen Typ von Teilen übereinstimmen.
  • Eine zusätzliche Komplikation kann sein, dass verschiedene Exemplare eines Teils signifikante Variationen bei ihren Merkmalen haben können, sogar wenn die zwei Exemplare in derselben Position sind und sie vom Bildverarbeitungssystem auf dieselbe Weise beobachtet werden. Das wird in 3a verdeutlicht, die, allgemein bei 300, Bilder zweier Shunt-Ringe (302 und 304) in derselben Position zeigt. Es ist klar, dass, obwohl die Bilder verschiedenen Instanzen desselben Teils entsprechen, die zwei Bilder signifikant unterscheidende Merkmale zeigen. Bei anderen Instanzen können zwei Teile, die gemeinsame Merkmale teilen, viele unterscheidende Merkmale haben und deshalb können sie verschiedenen Typen von Teilen entsprechen. Gute Angleichungsmodelle für Ober- und Unteransichten können beide eine hohe Bewertung erzielen, wenn sie gegen die Laufzeitbilder angeglichen werden, die entweder Ober- oder Unteransichten des Teils zeigen, weil Ober- und Unteransichten eine Mehrheit von Merkmalen teilen können. Gemäß Ausführungsformen, um zwischen Ober- und Unteransichten zu unterscheiden, können Laufzeitbilder an der gefundenen Position wieder bewertet werden mit einem Paar von Modellen, die auf die Merkmale trainiert sind, die die Oberansicht von der Unteransicht und beziehungsweise umgekehrt die Unteransicht von der Oberansicht unterscheiden. Diese „unterscheidenden Modelle“ können nicht für die Angleichung verwendet werden, weil ihre wahrscheinlich kleine Anzahl von Merkmalen keine hochakkurate Positionsabschätzung ergeben wird und es für Suchalgorithmen auf Grundlage von Modellen, die auf eine kleine Anzahl von Merkmalen trainiert sind, unwahrscheinlich ist, dass sie robust sind.
  • Entsprechend ist es wünschenswert, Bildverarbeitungssysteme zu haben, die unterscheidende Merkmale für jede unterschiedliche Ansicht eines Teils identifizieren können. Ferner ist es auch für das Bildsystem wünschenswert, mehrere Bilder von jeder Ansicht eines Teils zu benutzten, um unterscheidende Merkmale zu identifizieren. Gemäß Gesichtspunkten der vorliegenden Offenbarung wird ein Bildverarbeitungssystem trainiert, unterscheidende Merkmale zwischen zwei oder mehr verschiedenen Sätzen von Trainingsbildern zu extrahieren. Das System kann trainiert werden, Unterschiede zu tolerieren, zum Beispiel zu bestimmen, dass Instanzen von Objekten mit signifikanten Variationen oder unterscheidenden Merkmalen Objekten desselben Typs entsprechen. Das System kann ferner darauf trainiert werden, Unterschiede zwischen unterschiedlichen Objekten hervorzuheben, die auch einige gemeinsame Merkmale teilen. Ein Fachmann würde verstehen, dass ein „Objekt“ eine große Vielfalt von Dingen umfassen kann, wie Artikel, Gegenstände, Geräte, Entitäten, Zeichen. Zum Beispiel können die offenbarten Systeme und Verfahren unterschiedliche Merkmale zweier ähnlicher Zeichen identifizieren, etwa des Buchstabens „B“ und der Zahl „8“. Nur zur Veranschaulichung, gemäß Gesichtspunkten der vorliegenden Offenbarung, können die offenbarten Verfahren und Systeme zur Zeichenerkennung verwendet werden. In dem besonderen Beispiel von „Bs“ und „8en“ könnte das System erste die gemeinsamen Merkmale zwischen den zwei Zeichen identifizieren, wodurch es Zeichen identifiziert, die entweder „Bs“ oder „8en“ sind. Dann könnte das System unterscheidende Merkmale zwischen den zwei Zeichen differenzieren, wodurch es sie unterscheidet und die Zeichen entsprechend klassifiziert. Zum Beispiel kann das Modell 90-Grad-Winkel identifizieren, um ein „B“ von einer „8“ zu unterscheiden. Um vergleichbar eine „8“ von einem „B“ zu unterscheiden, kann das Modell 45-Grad-Linien nach links vom zentralen x, das im Zentrum der 8 gebildet wird, identifizieren. Ein beispielhaftes System für die akkurate Identifizierung und Klassifizierung von Bs und 8en kann zwei Modelle trainieren: Eines für das vollständige „B“-Zeichen und eines für das vollständige „8“-Zeichen. Das System würde beide Modelle laufen lassen, um zwei Positionen zu bekommen. Bei der Position des „8“-Zeichens, würde das Modell das differentielle Modell bewerten, das trainiert wurde, um eine „8“ von einem „B“ zu unterscheiden. Bei der Position des „B“-Zeichens, würde das Modell das differentielle Modell bewerten, das trainiert wurde, um ein „B“ von einer „8“ zu unterscheiden, zum Beispiel das Modell mit den 90-Grad-Winkeln.
  • Die Fähigkeit, unterscheidende Merkmale zu extrahieren, kann wichtig sein, um ein geläufiges Problem bei Bildverarbeitungssystemen zu lösen. Einige Objekte können unter Rotation fast symmetrisch sein, dennoch würden einige Anwendungen die Fähigkeit erfordern, verlässlich zwischen verschiedenen Positionen zu unterscheiden. Dies ist in 3b veranschaulicht, die, allgemein bei 350, Bilder zweier Objekte (352 und 354) zeigt. Es ist klar, dass die zwei Bilder demselben Objekt entsprechen. Dennoch ist das Objekt in zwei verschiedenen Positionen aufgenommen und daher zeigen die zwei Bilder einen kleine Satz von unterscheidenden Merkmalen.
  • Gemäß Gesichtspunkten der Offenbarung, extrahieren die offenbarten Systeme und Verfahren unterscheidende Merkmale von ähnlichen Objekten. Konkret verwendet das offenbarte System separate Sätze (Klassen) von Trainingsbildern, wobei jeder Satz Instanzen von einer gemeinsamen Ansicht eines Stücks enthält. Zum Beispiel gibt es beim oben in Verbindung mit 2 diskutierten Shunt-Ring-Fall zwei Sätze (Klassen), ein Satz enthält Bilder von der Oberansicht und ein anderer Satz enthält Bilder der Unteransicht. Das offenbarte System kann erst eine Sammlung von Modellen trainieren. Zur Laufzeit können diese Modelle verwendet werden, um zum Beispiel akkurate Angleichungen und auch Klassifizierungen von vorgefundenen Instanzen des Werkstücks zu erstellen.
  • Gemäß Gesichtspunkten der vorliegenden Offenbarung kann ein erster Schritt des Trainingsprozesses die Erstellung von gemeinsamen Merkmalen aus einzelnen Sätzen von Trainingsdaten einschließen. Zum Beispiel sind Verfahren zur Erstellung gemeinsamer Merkmale beschrieben im U.S. Patent No. 8,315,457 , betitelt „System and Method for Performing Multi-image Training for Pattern Recognition and Registration“, das hiermit durch Referenz in seiner Gesamtheit hierin aufgenommen wird. Im Fall der Shunt-Ringe von 2 gibt es zwei Sätze von Trainingsbildern wie oben diskutiert. 4 zeigt gemeinsame Merkmale auf Trainingsbildern desselben Satzes und auf Trainingsbildern verschiedener Sätze, in Übereinstimmungen mit manchen Ausführungsformen. 4 veranschaulicht allgemein bei 400 die gemeinsamen Merkmale. Speziell ist Bild 402 eine Ansicht der Oberseite des Shunt-Rings und Bild 404 ist eine Ansicht der Unterseite des Shunt-Rings. Bild 402 kann mit einem Ausgangsbild des ersten Trainingssatzes übereinstimmen und Bild 404 kann mit einem Ausgangsbild des zweiten Trainingssatzes übereinstimmen. Jeder einzelne Satz von Trainingsbildern kann gemeinsame Merkmale auf den Bildern innerhalb des Trainingssatzes haben. Zusätzlich können die Trainingsbilder eines Satzes gemeinsame Merkmale mit den Trainingsbildern des zweiten Satzes haben. Zum Beispiel sind, auf 4, die Merkmale von den einzelnen die Oberseite des Shunt-Rings (402) zeigenden Trainingsbildern, die gemeinsam auf den Trainingsbildern des Satzes sind, mit einer schwarzen Linie überlagert gezeigt auf dem Bild 402 des Shunt-Rings. Vergleichbar sind die Merkmale von den einzelnen die Unterseite des Shunt-Rings (404) zeigenden Trainingsbildern, die gemeinsam bei den Trainingsbildern des Satzes sind, auch mit einer schwarzen Line überlagert gezeigt auf dem Bild 404 des Shunt-Rings. Aber die zwei Trainingssätze haben, wie oben diskutiert, gemeinsame Merkmale untereinander. Die gemeinsamen Merkmale für jeden Satz von Trainingsbildern sind auf den Bildern von 4 mit einer weißen Linie überlagert auf beiden Bildern gezeigt. Gemäß manchen Ausführungsformen können die unterscheidenden Merkmale zwischen zwei Sätzen von Trainingsbildern den Merkmalen entsprechen, die zwischen den gemeinsamen Merkmalen jedes Satzes verschieden sind, zum Beispiel Unterschiede zwischen den Merkmalen, die auf den Bildern 402 und 404 mit weißen Linien gezeigt sind.
  • Gemäß Gesichtspunkten der vorliegenden Offenbarung können zwei zusammengesetzte Modelle von den gemeinsamen Merkmalen trainiert werden. Ein zusammengesetztes Modell, wie hier verwendet, kann einem Modell entsprechen, das gemeinsame Merkmale umfasst, die bei einer Mehrzahl von Trainingsbildern gefunden werden. Diese zusammengesetzten Modelle können im Laufzeitprozess verwendet werden, wie unten diskutiert. Weiter kann das System die gemeinsamen Merkmale verwenden, um Merkmale zu extrahieren, die für jedes Modell einzigartig sind. Das kann zum Beispiel dadurch erreicht werden, dass die gemeinsamen Merkmale mit einem Ausgangsbild zur Deckung gebracht werden und die Merkmale, die mit dem Ausgangsbild nicht zur Deckung gebracht werden können, können in das differentielle Modell aufgenommen werden.
  • Dies ist in 5 veranschaulicht, die beispielhafte unterscheidende Merkmale unter den Trainingsbildern verschiedener Sätze zeigt, in Übereinstimmung mit manchen Ausführungsformen. 5 zeigt allgemein bei 500 zwei Ausgangsbilder für die zwei Sätze von Trainingsdaten: Ein Bild, das der Oberseite des Shunt-Rings 502 entspricht und ein anderes Bild, das der Unterseite des Shunt-Rings 504 entspricht. Gemäß Gesichtspunkten der vorliegenden Offenbarung kann das Bildverarbeitungssystem die Merkmale von zwei zusammengesetzten Modellen vergleichen. Merkmale eines Modells, die keinerlei Merkmalen in dem anderen Modell entsprechen, werden als für dieses Modell einzigartig betrachtet und umfassen die unterscheidenden Merkmale von diesem Modell. Die unterscheidenden Merkmale, die dem ersten und zweiten zusammengesetzten Modell entsprechen, sind in 502 beziehungsweise 504 veranschaulicht, als schwarze Linien die die Ausgangsmodelle überlagern. Ein Fachmann würde verstehen, dass andere Verfahren verwendet werden, um die unterscheidenden Merkmale zu erstellen.
  • Auf Grundlage der obigen Diskussion ist ein Trainingsprozess gemäß Gesichtspunkten der Offenbarung in 6a veranschaulicht. Zuerst kann der Prozess gemeinsame Merkmale aus einzelnen Sätzen von Trainingsdaten erstellen (Schritt 602). Auf Grundlage der gemeinsamen Merkmale kann das Verfahren zusammengesetzte Modelle trainieren (Schritt 604). Dann kann das Verfahren die gemeinsamen Merkmale extrahieren, die für jedes Modell, das in Schritt 602 trainiert wurde, einzigartig sind (Schritt 606). Auf Grundlage dieser einzigartigen Merkmale, z.B. der unterscheidenden Merkmale, kann der Prozess ein differentielles Modell trainieren (Schritt 608).
  • Gemäß Gesichtspunkten der Offenbarung kann ein Laufzeit-Prozess 600 drei Schritte umfassen, wie in 6b veranschaulicht. Erstens kann der Prozess die zwei zusammengesetzten Modelle laufen lassen und die Ergebnisse sammeln (Schritt 652). Das ist oft wünschenswert, wenn eine akkurate Angleichung benötigt wird. Zweitens kann der Prozess die Ergebnisse filtern und jene finden, die überlappen und ausreichend nah in der Bewertung sein können, um als verwechselbar angesehen zu werden (Schritt 654). Überlappende Ergebnisse können identifiziert werden, zum Beispiel entsprechend der Verfahren, die in U.S. Patent No. 7,016,539 beschrieben sind, dessen Inhalte in ihrer Gesamtheit hierin einbezogen werden. Drittens kann der Prozess die verwechselbaren Ergebnisse wieder beurteilen, unter Verwendung der differentiellen Modelle, und kann das Ergebnis des Modells mit der höchsten Bewertung auswählen (Schritt 656). Wenn es zum Beispiel zwei trainierte Muster gibt, z.B. ein „B“ und eine „8“, gibt es zwei entsprechende zusammengesetzte Modelle, eins für jedes Muster, und zwei differentielle Modelle, eines trainiert von den Merkmalen des „B“-Musters, die nicht im „8“-Muster gefunden werden, und eines trainiert von den Merkmalen im „8“-Muster, die aber nicht im „B“ gefunden werden. Der Prozess kann beide zusammengesetzten Modelle laufen lassen, um eine Angleichung der Muster auf dem Laufzeitbild zu finden. Wenn beide Modelle an einen überlappenden Bereich angleichen und ihre Bewertungen nah beieinander sind, kann es eine Unsicherheit geben, ob eine „8“ oder ein „B“ an der gefunden Stelle ist. Der Prozess kann dann die differentiellen Modelle laufen lassen, um Bewertungen bei jeder der angeglichenen Positionen zu erzeugen. Details über die differentiellen Modelle können in US 7,016,539 und US 6,658,145 gefunden werden, deren Inhalte in ihrer Gesamtheit hierin aufgenommen werden.
  • Gemäß Gesichtspunkten der vorliegenden Offenbarung kann das offenbarte System ein Modell trainieren, dass auf mehr als zwei Sätzen von Trainingsdaten basiert, indem es differentielle Modelle für jedes Paar von Trainingsdatensätze trainiert. Zum Beispiel könnte bei einem Objektzeichenerkennungssystem, wo „8“, „B“ und „6“ als verwechselbar befunden werden, das offenbarte System die folgenden differentiellen Modelle trainieren: 8-B, B-6 und 8-6. Dieser Ansatz ist wünschenswert, weil, sobald mehrere Sätze hinzugefügt werden, die Anzahl von Merkmalen, die einzigartig für jeden dieser Sätze ist, schließlich auf eine Zahl fallen wird, die klein genug ist, das Training eines Modells auszuschließen. Obwohl es zum Beispiel ausreichende Merkmale zum Trainieren eines 8-B-differentiellen Modells geben könnte, könnte es nicht genug geben, um ein 8-B6 (d.h. ein Modell, das Merkmale enthält, die bei einer „8“ aber nicht bei einem „B“ oder einer „6“ auftauchen) zu trainieren.
  • Wenn ein Modell auf mehr als zwei Sätzen von Trainingsdaten basiert, wären der erste und der zweite Schritt während der Laufzeit wie oben beschrieben; aber der dritte Schritt könnte zusätzliche Logik verwenden, um mit einer unwahrscheinlichen Situation umzugehen, wo die differentiellen Modelle so bewerten, dass 8 höher als 6 bewertet wird, 6 höher als B bewertet wird, aber B höher als 8 bewertet wird. Gemäß alternativen Gesichtspunkten der Offenbarung, kann das System einen Klassifikator, zum Beispiel eine Support-Vektor-Maschine trainieren, um die Fehlerrate des Klassifikators zu minimieren. Der Input des Klassifikators können die Bewertungen der verschiedenen differentiellen Modelle sein und der Output kann die Wahrscheinlichkeit für jedes Modell sein. Der Klassifikator kann trainiert werden, um die Fehlerrate zu minimieren, und kann als Teil des Trainings lernen, jeden der Inputs unterschiedlich zu gewichten.
  • Um die Ergebnisse der offenbarten Klassifizierungs- und Angleichungsverfahren zu bewerten, wurden zwei zusammengesetzte Modelle trainiert, ein erste Modell entsprechend einer Oberansicht eines Objekts und ein zweites Modell entsprechend einer Unteransicht desselben Objekts, eines Shunt-Rings. Diese zwei Modelle wurden über einen Testsatz laufen gelassen. Für jede Instanz wurde die Bewertungs-Differenz zwischen dem korrekten Modell und dem inkorrekten Modell aufgenommen. Die Tabelle zeigt die minimale Bewertungs-Differenz und die mittlere Bewertungs-Differenz für jede der zwei Klassen, entsprechend der Draufsicht und der Unteransicht. An jeder Stelle wurde die Differenz in der Bewertung zwischen dem korrekten Modell und dem falschen Modell unter Verwendung ihrer besten Angleichungen über den Testsatz berechnet. Tabelle 1: Bewertungs-Differenzen unter ausschließlicher Verwendung von zusammengesetzten Modellen
    Klasse Oberansicht Unteransicht
    Minimum 0,061 0,151
    Mittelwert 0,171 0,238
  • Derselbe Testsatz wird verwendet, um die unten in Tabelle 2 dargestellten Ergebnisse zu bekommen, aber die zusammengesetzten Modelle wurden nur verwendet, um die Angleichungen für jede Instanz zu erhalten. Die gemeldeten Bewertungen basieren auf differentiellen Modellen und, wie unten veranschaulicht, zeigen eine erhöhte Fähigkeit für das Bildverarbeitungssystem, zwischen Ober- und Unterseiten zu unterscheiden. 7a zeigt die differentiellen Modelle, die verwendet wurden, um die Ergebnisse in Tabelle 2 zu erhalten. Konkret zeigt 7a, allgemein bei 700, die unterscheidenden Merkmale in schwarzen Linien bei Trainingsbildern von verschiedenen Sätzen, nachdem die Merkmale angeglichen und gegen ein Oberansichtsbild eines Objekts gezeigt wurden. Die Bilder zeigen die differentiellen Modell-Merkmale der Oberansicht 702 und Unteransicht 704 des Objekts, die dieselben Merkmale wie in 5 gezeigt sind, aber in diesem Fall sind beide angeglichen und gegen ein Bild, das die Oberansicht zeigt, gezeigt. Das demonstriert, dass die Merkmale des Modells, das auf die Unteransicht trainiert wurde, nicht mit jeglichen Merkmalen in der Oberansicht übereinstimmen. Tabelle 2 zeigt die Bewertungs-Differenzen unter Verwendung der differentiellen Modelle. Die Tabelle veranschaulicht signifikante Verbesserung bei den Bewertungen im Vergleich zu den in Tabelle 1 gemeldeten Bewertungen. Tabelle 2: Bewertungs-Differenzen unter Verwendung von differentiellen Modellen
    Klasse Oberansicht Unteransicht
    Minimum 0,242 0,423
    Mittelwert 0,751 0,654
  • Mit Verweis auf 3b erscheinen die zwei Objekte (352 und 354) rotationssymmetrisch, ohne es jedoch zu sein. Typische Trainingssysteme haben Schwierigkeiten, Objekte zu orientieren, die sehr nah an der Rotationssymmetrie sind. 7b zeigt allgemein bei 750 die gemeinsamen und unterscheidenden Merkmale zwischen den zwei Objekten 352 und 354. Konkret ist Objekt 354 um 180° gedreht und das System identifiziert die gemeinsamen Merkmale, die durch weiße Linien (752) veranschaulicht sind. Dies zeigt, wie das Muster bei einer 180 Grad-Rotation selbstähnlich ist. Zusätzlich identifiziert das System die unterscheidenden Merkmale zwischen den Objekten 352 und 354, d.h. ein Objekt orientiert bei 0 und 180 Grad, was durch schwarze Linien (754) veranschaulicht wird.
  • Gemäß Gesichtspunkten der Offenbarung kann der Trainingsprozess das Trainieren eines Anfangsmodells einschließen, zum Beispiel eines Musters, trainiert anhand einer Bildregion in einem zufälligen Koordinatensystem, von einem ersten Trainingsbild. Der Prozess kann das Anfangsmodell verwenden, um Angleichungen gegen einen Satz von weiteren Trainingsbildern zu erhalten, zum Beispiel von Bildern, die eine ungefähre Position mit einem Winkel innerhalb + / - 45 Grad zeigen. Zusätzlich kann der Prozess ein zusammengesetztes Modell bilden, das zur Laufzeit dazu verwendet werden kann, Angleichung durchzuführen. Dann kann das Verfahren das trainierte zusammengesetzte Modell gegen ein oder mehrere Trainingsbilder laufen lassen, um das inkorrekte Ergebnis mit der höchsten Bewertung zu finden, zum Beispiel die inkorrekte Stelle mit der höchsten Bewertung. Das spezielle Bild mit dem inkorrekten Ergebnis mit der höchsten Bewertung kann als Verwechslungsposition verwendet werden.
  • Die Verwechslungsposition kann verwendet werden, um ein Paar von differentiellen Modellen zu trainieren, „korrekte Stelle von inkorrekter Stelle“ und „inkorrekte Stelle von korrekter Stelle“. Diese differentiellen Modelle können zur Laufzeit dazu verwendet werden zu verifizieren, dass eine gefundene Position wirklich zu dem erwünschten Modell gehört, d.h. keine Übereinstimmung mit der inkorrekten Stelle mit der höchsten Bewertung ist, wie sie in dem Trainingsdatensatz gefunden wurde. Konkret kann der Prozess die Verwechslungsposition auf jedes der Trainingsbilder anwenden und die resultierenden Bildregionen aus jenen Trainingsbildern, die auf die Verwechslungsposition fallen, extrahieren. Schließlich kann das Verfahren ein Paar von differentiellen Modellen trainieren, die auf den differentiellen Merkmalen des korrekten (oder des ursprünglichen Modells) und dieses neuen „Verwechslungs“-Modells basieren. Der Laufzeitprozess kann das ursprüngliche zusammengesetzte Modell, trainiert an der korrekten Stelle, laufen lassen und das differentielle Model verwenden, um zu verifizieren, das die zurückgegebene Position sich auf eine Instanz des ursprünglich trainierten Musters und nicht des Verwechslungsmusters bezieht.
  • Gemäß alternativer Ausführungsformen kann der Verwechslungsbereich tatsächlich dieselben Pixel-Daten enthalten, aber die Orientierung um 180 Grad umgekehrt sein. Deshalb kann es in diesen Fällen nur ein zusammengesetztes Modell geben, das anhand der ursprünglichen Position trainiert wurde. Um die Merkmale für das differentielle Modell zu identifizieren, können die Merkmale aus dem ursprünglichen Model für einen ersten Satz von Merkmalen verwendet werden, die für das Training eines differentiellen Modells verwendet werden, und dieselben Merkmale, rotiert um 180 Grad, können für den zweiten Satz verwendet werden.
  • Tabelle 3 zeigt im Folgenden die Bewertungs-Differenzen zwischen dem korrekt angeglichenen Ergebnis und dem invertierten Positions-Ergebnis, z.B. 180 Grad rotiert. Eine beachtenswerte Sache bei der Untersuchung dieser Bewertungen ist, dass die Merkmal-Geometrie auf diesen Bildern einen hohen Grad von Varianz aufweist, aufgrund von Unterschieden der Beleuchtungsrichtung, die Änderungen von internen Schatten und Belichtung verursachen. Konkret zeigt Tabelle 3 die minimalen und mittleren Bewertungs-Differenzen für das „Angleichungsmodell“, das dem Unterschied bei den Bewertungen zwischen der korrekten Position und der bei 180 Grad für das ursprünglich trainierte für die Angleichung verwendete zusammengesetzte Modell entspricht, und für das „Differentielle Modell“, das dem Unterschied bei den Bewertungen zwischen den zwei differentiellen Modellen entspricht, eines trainiert auf 0-von-180 Grad und eines auf 180-von-0 Grad. Tabelle 3: Bewertungs-Differenzen zwischen korrekt angeglichenem Ergebnis und rotiertem Ergebnis
    Bewertungsmodell Angleichungsmodell Differentielles Modell
    Minimale Bewertungs-Differenz 0,026 0,116
    Mittlere Bewertungs-Differenz 0,082 0,367
  • Gemäß Gesichtspunkten der Offenbarung können Systeme und Verfahren Anwendungen auf ähnliche Bereiche auf den Trainingsbildern haben. Zum Beispiel kann eine Referenzmarke manchmal auf inkorrekten Positionen auf einem Trainingsbild hoch bewertet werden. Das differentielle Modell kann verwendet werden, um die Ergebnisse zur Laufzeit herauszufiltern. Dies wird in 8 veranschaulicht, die, allgemein bei 800, die zurückgegebenen Angleichungen unter Verwendung eines auf ein Kreuz trainierten Modells zeigt. Die mit „0“ markierte Instanz (802) ist die korrekte Stelle eines Kreuzes. Die mit „1“ markierte Instanz (804) ist die Verwechslungsstelle. Das „Kreuz“-Modell kann von dem Bildsystem falsch angeglichen werden, weil die Arme des Kreuzes eine ähnliche Breite wie andere auf dem Bild gefundene Merkmale haben.
  • 9a, allgemein bei 902, zeigt die Merkmale des Verwechslungsmodells mit durchgezogenen Linien 904, der ursprünglichen Stelle angeglichen, und die unterscheidenden Merkmale des ursprünglichen Modells in gestrichelten Linien 906.
  • 9b, allgemein bei 952, zeigt die Merkmale des ursprünglichen Modells mit durchgezogenen Linien 954, der Verwechslungsstelle falsch angeglichen, und die unterscheidenden Merkmale des Verwechslungsmodells in gestrichelten Linien 956.
  • Das Trainingsverfahren zur Identifizierung von inkorrekten Positionen auf Trainingsbildern kann zum Beispiel einschließen: Das Training eines Anfangsmodells aus einem ersten Trainingsbild und die Verwendung des Anfangsmodells, um Angleichungen gegen einen Satz von weiteren Trainingsbildern zu erhalten, zum Beispiel mit ungefähren Positionen mit einem Winkel der innerhalb von +/-45 Grad sein kann. Dann kann das Trainingsverfahren ein zusammengesetztes Modell bilden, das zur Laufzeit dazu verwendet werden kann, Angleichung durchzuführen. Das Trainingsverfahren kann auch das Laufenlassen des trainierten zusammengesetzten Modells gegen ein oder mehrere der Trainingsbilder einschließen, um das inkorrekte Ergebnis mit der höchsten Bewertung zu finden. Die entsprechende Position kann als Verwechslungsposition verwendet werden. Die Verwechslungsposition und der Satz von Trainingsbildern können verwendet werden, um die zusammengesetzten Merkmale für den von der Verwechslungsposition identifizierten Bereich zu extrahieren. Dann kann der Prozess einen Satz von differentiellen Merkmalen konstruieren, indem er die zum Training des zusammengesetzten Modells mit den im vorigen Schritt extrahierten Merkmalen vergleicht. Schließlich kann der Trainingsprozess ein differentiellen Modell auf Grundlage der differentiellen Merkmale trainieren.
  • Tabelle 4 zeigt im Folgenden die Bewertungs-Differenzen zwischen dem korrekt angeglichenen Ergebnis und dem inkorrekten Ergebnis mit der höchsten Bewertung. Konkret zeigt Tabelle 4 die minimalen und mittleren Bewertungs-Differenzen für das „Angleichungsmodell“, das dem Unterschied bei den Bewertungen zwischen der korrekten Position und der Verwechslungspose für das ursprünglich trainierte für die Angleichung verwendete zusammengesetzte Modell entspricht, und für das „Differentielle Modell“, das dem Unterschied bei den Bewertungen zwischen den Kreuz-von-Ecke und Ecke-von-Kreuz differentiellen Modellen entspricht. Im Fall des differentiellen Modells wurden keine inkorrekten Ergebnisse gefunden und die korrekten Bewertungen waren sehr hoch. Tabelle 4: Bewertungs-Differenzen zwischen korrekt angeglichenem Ergebnis und inkorrektem Ergebnis mit der höchsten Bewertung
    Bewertungsmodell Angleichungsmodell Differentielles Modell
    Minimale Bewertungs-Differenz 0,311 0,999
    Mittlere Bewertungs-Differenz 0,328 0,999
  • Die differentiellen Modelle in den obigen Experimenten wurden mit ausgeschaltetem Clutter bewertet. Clutter wird erschaffen, wenn zusätzliche unerwartete Merkmale, z.B. Merkmale, die im trainierten Modell nicht vorkommen, zur Laufzeit an der Stelle des Angleichungsmodells gefunden werden. Der bewertende Algorithmus der Laufzeit kann Clutter entweder ignorieren oder Clutter gegen die finale Bewertung zählen. Um Clutter-Bewertung im differentiellen Modell anzuschalten, müssten beim bewertenden Algorithmus Merkmale ignoriert werden, die mit Angleichungsmerkmalen zur Deckung gebracht wurden, die nicht auch differentielle Merkmale waren.
  • 10 zeigt die Ergebnisse des bewertenden Algorithmus', der in Verbindung mit dem differentiellen Model verwendet wurde. Die mit dem differentiellen Modell korrekt angeglichenen Merkmale sind in weiß gezeigt. Die in schwarz gezeigten Merkmale entsprechen der Angleichung des zusammengesetzten Modells der Oberansicht des Shunts. Dies sind die Merkmale, die auch als ähnlich zu denen der Unteransicht betrachtet werden. Bei der Bewertung des differentiellen Modells ist es wichtig, Laufzeitmerkmale nicht zu zählen, die diesen trainierten Merkmalen als Clutter entsprechen, sie sollten einfach ignoriert werden. Zum Beispiel würde auf dem in 10 gezeigten Bild jedes Merkmal, das den Merkmalen aus nur dem schwarzen Angleichungsmodell entspricht, vom bewertenden Algorithmus ignoriert werden und als Clutter nicht berücksichtig werden.
  • Bei typischen Bewertungsmethodik zählen trainierte Merkmale, die zur Laufzeit gefunden werden, positiv für die Bewertung, trainierte Merkmale, die auf dem Laufzeitbild fehlen, zählen negativ für die Bewertung und zusätzliche unerwartete Laufzeitmerkmale, d.h. Clutter, zählen auch negativ für die Bewertung. Gemäß Gesichtspunkten der Offenbarung, können die vorgeschlagenen Verfahren, statt der Bildung und des Laufenlassens von zwei differentiellen Modellen, ein einzelnes differentielles Modell konstruieren, mit den Merkmalen, die die korrekte Position von der Verwechslungsposition unterscheiden positiv gewichtet. Das offenbarte Verfahren kann dann die Merkmale aus dem Verwechslungs-Schwellenwert zu demselben Modell hinzufügen, aber diese würden negativ gewichtet werden. Zur Laufzeit können die Merkmale für die korrekte Position positiv für die Bewertung zählen, die fehlenden Merkmale können negativ zählen und Clutter kann auch negativ zählen. Gemäß alternativen Gesichtspunkten würden die Merkmale aus dem Verwechslungsmodell negativer als Clutter für die Bewertung zählen.
  • 11 zeigt falsch angeglichene unterscheidende Merkmale auf Grundlage eines beispielhaften bewertenden Algorithmus. Wenn LaufzeitMerkmale an diesen Stellen lokalisiert sind, dann könnte der bewertende Algorithmus sie als schwere Strafe (d.h. über und jenseits von einer Betrachtung als Clutter) zuweisen. Zum Beispiel würden alle Merkmale, die mit inkorrekt angeglichenen differentiellen Merkmalen zur Deckung gebracht wurden, gezeigt als dicke schwarze Linien in 11 (1100), in größerem Ausmaß als Clutter bestraft werden.
  • Gemäß alternativen Gesichtspunkten, wäre eine andere Möglichkeit, einen Klassifikator zu trainieren auf der Grundlage der unterscheidenden Merkmale, zum Beispiel eine Support-Vektor-Maschine.
  • Das System und die Verfahren, die hierin beschrieben sind, können verschiedene Anwendungen haben, also werden einige nicht-beschränkende Beispiele im Folgenden zur Veranschaulichung beschrieben. Manche Anwendungen können zum Beispiel die Identifizierung eines Zahnrads, dem ein Zahn fehlt, und die weitere Identifizierung einer Orientierung des Zahnrads, dem ein Zahn fehlt, einschließen. Eine andere Anwendung kann ein Trainingsbild einschließen, auf dem ein Bereich ausgewählt ist, um ein Modell zu sein. Ein großes Trainingsbild kann zum Beispiel ein Bild eines Wafers sein und ein Ziel kann ein Kennzeichen sein, zum Beispiel ein kleines Kreuz in dem Wafer, das einzigartig, aber sehr ähnlich zu anderen Kreuzen ist. Weil ein Wafer viele Kreuze hat, die ähnlich sind, könnte das Modell viele Kreuze identifizieren, weil es darauf trainiert wäre, Kreuze zu identifizieren. Die offenbarten Systeme und Verfahren können verwendet werden, um das Zielkreuz von den falsch positiven zu unterscheiden, da sonst eine Instanz eines Musters inkorrekt mit etwas anderen verwechselt werden kann.
  • 12 zeigt ein beispielhaftes Verfahren 1200 für ein Bildverarbeitungssystem, um geometrische Modelle zu erschaffen, gemäß Gesichtspunkten der Offenbarung. Das Verfahren kann einschließen: Erlangung eines ersten Satzes von Trainingsbildern eines ersten Werkstücks und eines zweiten Satzes von Trainingsbildern eines zweiten Werkstücks 1202, Auswählen von mindestens einem Trainingsbild von einem von dem ersten Satz von Trainingsbildern und von dem zweiten Satz von Trainingsbildern als mindestens ein Ausgangsbild 1204 und Trainieren von mindestens einem Ausgangswert-Angleichungsmodell von dem mindestens einen Ausgangsbild 1206. Das Verfahren kann auch umfassen: Erfassung der Trainingsbilder in dem ersten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild unter Verwendung des mindestens einen Ausgangswert-Angleichungsmodells ausgewählt wurden, um einen ersten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild in dem ersten Satz von Trainingsbildern 1208 zu erlangen, und Erfassung der Trainingsbilder in dem zweiten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild unter Verwendung des mindestens einen Ausgangswert-Angleichungsmodells ausgewählt wurden, um einen zweiten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild in dem zweiten Satz von Trainingsbildern 1210 zu erlangen. Das Verfahren kann auch einschließen: Die Identifizierung erster entsprechender Merkmale aus dem ersten Satz von Trainingsbildern, der zweiten entsprechenden Merkmale aus dem zweiten Satz von Trainingsbildern und mindestens eines gemeinsamen Merkmals unter den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen 1212. Das Verfahren kann auch einschließen: die Extraktion eines oder mehrerer unterscheidender Merkmale aus dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern, basiert auf den ersten, den zweiten entsprechenden Merkmalen und dem mindestens einen gemeinsamen Merkmal unter den ersten entsprechenden und den zweiten entsprechenden Merkmalen, wobei das eine oder die mehreren unterscheidenden Merkmale verwendet werden können, um zwischen dem ersten Werkstück und dem zweiten Werkstück 1214 zu differenzieren, die Erstellung eines Angleichungsmodells unter Verwendung von mindestens einem der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und dem mindestens einen gemeinsamen Merkmal 1216 und die Erstellung eines Klassifizierungs-Modells unter Verwendung des einen oder der mehreren unterscheidenden Merkmale 1218.
  • Der hierin beschriebene Gegenstand kann bei einer digitalen elektronischen Schaltung umgesetzt werden, oder bei Computer-Software, Firmware oder Hardware, einschließlich der in dieser Beschreibung offenbarten strukturellen Mittel und strukturellen Äquivalente davon, oder bei einer Kombination von ihnen. Der hierin beschriebene Gegenstand kann als ein oder mehrere Computerprogramm-Produkte umgesetzt werden, etwa ein oder mehrere Computerprogramme, greifbar verkörpert auf einem Informationsträger (z.B. auf einem maschinenlesbaren Speichergerät) oder verkörpert als ein sich ausbreitendes Signal für die Ausführung durch, oder zur Kontrolle der Operationen von, Datenverarbeitungsgeräten (z.B. ein programmierbarer Prozessor, ein Computer oder mehrere Computer). Ein Computerprogramm (auch bekannt als ein Programm, Software, Software-Anwendung oder Code) kann in jeglicher Form von Programmiersprache geschrieben sein, einschließlich kompilierte und interpretierte Sprachen, und es kann in jeglicher Form verteilt werden, einschließlich als ein stand-alone-Programm oder als ein Modul, eine Komponente, eine Subroutine oder eine andere Einheit, die für die Verwendung in einer Computerumgebung geeignet ist. Ein Programm entspricht nicht notwendigerweise einer Datei. Ein Programm kann in einem Teil einer Datei gespeichert werden, die andere Programme oder Daten enthält, in einer einzelnen Datei, die für das betreffende Programm bestimmt ist, oder in mehreren koordinierten Dateien (z.B. Dateien, die ein oder mehrere Module, Unterprogramme oder Teile des Codes speichern). Ein Computerprogramm kann verteilt werden, um auf einem oder auf mehreren Computern aufgeführt zu werden, an einem Standort oder verteilt auf mehrere Standorte und verbunden durch ein Kommunikationsnetzwerk.
  • Die Prozesse und logischen Flüsse, die in dieser Beschreibung beschrieben werden, einschließlich der Verfahrensschritte des hierin beschriebenen Gegenstands, können von einem oder mehreren programmierbaren Prozessoren durchgeführt werden, unter Ausführung eines oder mehrerer Computerprogramme, um die Funktionen des hierin beschriebenen Gegenstands durch die Bearbeitung von Input-Daten und die Erzeugung von Output-Daten durchzuführen. Die Prozesse und logischen Flüsse können auch durchgeführt werden von, und Apparaturen des hierin beschriebenen Gegenstands können umgesetzt werden als, Spezialzweck-Logikschaltung, z.B. einem FPGA (feldprogrammierbarer Gate-Array) oder einem ASIC (anwendungsspezifischer integrierter Schaltkreis).
  • Prozessoren, die geeignet für die Ausführung eines Computerprogramms sind, schließen beispielsweise Mikroprozessoren für sowohl allgemeine als auch spezielle Zwecke und jeglichen einen oder mehrere Prozessoren jeglicher Art von digitalem Computer ein. Im Allgemeinen wird ein Computer Anweisungen und Daten von einem Festwertspeicher oder einem Arbeitsspeicher oder beiden erhalten. Die essentiellen Elemente eines Computers sind ein Prozessor für die Ausführung von Anweisungen und ein oder mehrere Speichergeräte zum Speichern von Anweisungen und Daten. Im Allgemeinen wird ein Computer auch einschließen, oder operativ gekoppelt sein, um Daten zu erhalten von, oder Daten zu übertragen an, oder beides, ein oder mehrere Massenspeichergeräte zum Speichern von Daten, z.B. Magnet-, magnetooptische Platten oder optische Platten. Informationsträger, die geeignet sind, um Computerprogrammanweisungen und - daten zu verkörpern, schließen alle Formen von nichtflüchtigen Speichern ein, einschließlich beispielshalber Halbleiterspeichergeräte (z.B. EPROM, EEPROM und Flash-Memory-Geräte); Magnetplatten (z.B. interne Festplatten oder entfernbare Platten); magnetooptische Platten und optische Platten (z.B. CD und DVD-Platten). Der Prozessor und der Speicher können ergänzt werden von, oder aufgenommen werden in, Logikschaltungen für spezielle Zwecke.
  • Um Interaktion mit dem Verwender bereitzustellen, kann der hierin beschriebene Gegenstand eingebaut sein in einen Computer mit Displaygerät, z.B. ein CRT (Kathodenstrahlröhre)- oder LCD (Flüssigkristallanzeige)-Monitor zur Anzeige von Information für den Verwender und mit einer Tastatur und einem Zeigegerät (z.B. einer Maus oder einem Trackball), wodurch der Verwender Input für den Computer liefern kann. Andere Arten von Geräten können auch verwendet werden, um Interaktion mit dem Benutzer bereitzustellen. Zum Beispiel kann Feedback an den Benutzer in Form von sensorischem Feedback (z.B. visuellem Feedback, auditivem Feedback oder taktilem Feedback) geliefert werden und Input vom Verwender kann in jeder Form, einschließlich akustisch, Sprache und taktilen Inputs, entgegengenommen werden.
  • Der hierin beschriebene Gegenstand kann in einem Computersystem umgesetzt werden, das eine Backend-Komponente (z.B. ein Datenserver), eine Middleware-Komponente (z.B. ein Applikationsserver) oder eine Frontend-Komponente (z.B. ein Client-Computer mit einer graphischen Benutzeroberfläche oder ein Webbrowser, durch den ein Verwender mit einer Umsetzung des hierin beschriebenen Gegenstands interagieren kann) einschließt, oder jegliche Kombination von solchen Backend-, Middleware- und Frontend-Komponenten. Die Komponenten des Systems können durch jegliche Form oder jegliches Medium der digitalen Datenkommunikation verbunden sein, z.B. ein Kommunikationsnetzwerk. Beispiele von Kommunikationsnetzwerken schließen ein lokales Netzwerk („LAN“) und ein Weitverkehrsnetz („WAN“), z.B. das Internet, ein.
  • Es versteht sich, dass der offenbarte Gegenstand in seiner Anwendung nicht auf die Konstruktionsdetails und auf die Anordnungen der Komponenten beschränkt ist, die in der folgenden Beschreibung dargelegt oder in den Zeichnungen veranschaulicht sind. Der offenbarte Gegenstand ist zu anderen Ausführungsformen fähig und dazu, in verschiedenen Wegen ausgeübt und ausgeführt zu werden. Auch versteht es sich, dass die Ausdrucksweise und Wortwahl, die hierin benutzt wird, dem Zweck der Beschreibung dient und nicht als beschränkend betrachtet werden sollte.
  • Von daher werden die Fachleute anerkennen, dass die Konzeption, auf der diese Offenbarung beruht, leicht als eine Grundlage verwendet werden kann, um andere Strukturen, Verfahren und Systeme zur Ausführung der verschiedenen Zwecke des offenbarten Gegenstands zu entwerfen.

Claims (17)

  1. Ein Verfahren zum Trainieren eines Bildverarbeitungssystems zur Erschaffung eines geometrischen Modells, das Verfahren umfassend die Schritte von Erlangen eines ersten Satzes von Trainingsbildern eines ersten Werkstücks und eines zweiten Satzes von Trainingsbildern eines zweiten Werkstücks; Auswählen von mindestens einem Trainingsbild von einem von dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern als mindestens ein Ausgangsbild; Trainieren von mindestens einem Ausgangswert-Angleichungsmodell von dem mindestens einen Ausgangsbild; Erfassen der Trainingsbilder im ersten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild ausgewählt wurden, unter Verwendung von dem mindestens einen Ausgangswert-Angleichungsmodell, um einen ersten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild im ersten Satz von Trainingsbildern zu erhalten; Erfassen der Trainingsbilder im zweiten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild ausgewählt wurden, unter Verwendung von dem mindestens einen Ausgangswert-Angleichungsmodell, um einen zweiten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild im zweiten Satz von Trainingsbildern zu erhalten; Identifizieren von ersten entsprechenden Merkmalen von dem ersten Satz von Trainingsbildern, wobei die ersten entsprechenden Merkmale unter den Trainingsbildern im ersten Satz stabil sind; Identifizieren von zweiten entsprechenden Merkmalen von dem zweiten Satz von Trainingsbildern, wobei die zweiten entsprechenden Merkmale unter den Trainingsbildern im zweiten Satz stabil sind; Identifizieren von mindestens einem gemeinsamen Merkmal unter den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen; Extrahieren von einem oder mehreren unterscheidenden Merkmalen von dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern auf Grundlage der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und des mindestens einen gemeinsamen Merkmals unter den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen, wobei das eine oder die mehreren unterscheidenden Merkmale zwischen zwei Sätzen von Trainingsbildern Merkmalen entsprechen, die zwischen den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen verschieden sind, und verwendet werden können, um zwischen dem ersten Werkstück und dem zweiten Werkstück zu differenzieren; Erstellen eines Angleichungsmodells unter Verwendung von mindestens einem der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und des mindestens einen gemeinsamen Merkmals; und Erstellen eines Klassifizierungsmodells unter Verwendung des einen oder der mehreren unterscheidenden Merkmale.
  2. Das Verfahren aus Anspruch 1, wobei die ersten entsprechenden Merkmale und die zweiten entsprechenden Merkmale stabil sind, wenn sie bei einer Anzahl von Trainingsbildern identifiziert werden, die größer als ein Schwellenwert ist.
  3. Das Verfahren aus Anspruch 1, wobei das erste Werkstück ein Werkstück in einer ersten Position und das zweite Werkstück das Werkstück in einer zweiten Position ist.
  4. Das Verfahren aus Anspruch 1, wobei das erste Werkstück ein anderes Werkstück als das zweite Werkstück ist.
  5. Das Verfahren aus Anspruch 1, wobei die ersten entsprechenden Merkmale gemeinsame Merkmale zwischen dem Ausgangsbild und den Trainingsbildern des ersten Satzes umfassen.
  6. Das Verfahren aus Anspruch 5, wobei der Schritt der Identifizierung der ersten entsprechenden Merkmale umfasst: Extrahieren von Merkmalen von den Trainingsbildern des ersten Satzes von Trainingsbildern; Kartieren der extrahierten Merkmale unter Verwendung des ersten Satzes von relativen Positionen; und Anwenden einer Korrespondenz-Metrik auf die kartierten Merkmale, um die ersten entsprechenden Merkmale zu identifizieren.
  7. Das Verfahren aus Anspruch 1, wobei die zweiten entsprechenden Merkmale gemeinsame Merkmale zwischen dem Ausgangsbild und den Trainingsbildern des zweiten Satzes umfassen.
  8. Das Verfahren aus Anspruch 7, wobei der Schritt der Identifizierung der ersten entsprechenden Merkmale umfasst: Extrahieren von Merkmalen von den Trainingsbildern des zweiten Satzes von Trainingsbildern; Kartieren der extrahierten Merkmale unter Verwendung des zweiten Satzes von relativen Positionen; und Anwenden einer Korrespondenz-Metrik auf die kartierten Merkmale, um die zweiten entsprechenden Merkmale zu identifizieren.
  9. Das Verfahren aus Anspruch 1, wobei der Schritt der Identifizierung von mindestens einem gemeinsamen Merkmal umfasst: Kartieren der ersten entsprechenden Merkmale und der zweiten entsprechenden Merkmale; und Anwenden einer Korrespondenz-Metrik auf die kartierten Merkmale, um das mindestens eine gemeinsame Merkmal zu identifizieren.
  10. Das Verfahren aus Anspruch 1, wobei das mindestens eine Ausgangsbild ein erstes Ausgangsbild von dem ersten Satz von Trainingsbildern und ein zweites Ausgangbild von dem zweiten Satz von Trainingsbildern umfasst.
  11. Das Verfahren von Anspruch 10, wobei der Schritt des Trainierens von mindestens einem Ausgangswert-Angleichungsmodell umfasst: Trainieren eines ersten Ausgangswert-Angleichungsmodells von dem ersten Ausgangsbild; und Trainieren eines zweiten Ausgangswert-Angleichungsmodells von dem zweiten Ausgangsbild.
  12. Das Verfahren aus Anspruch 11, wobei der Schritt des Erfassens der Trainingsbilder im ersten Satz von Trainingsbildern umfasst: Das Erfassen der Trainingsbildern im ersten Satz von Trainingsbildern, die nicht als das erste Ausgangsbild ausgewählt wurden, unter Verwendung des ersten Ausgangswert-Angleichungsmodells, um einen ersten Satz von relativen Positionen zu dem ersten Ausgangsbild für jedes Trainingsbild im ersten Satz von Trainingsbildern zu erhalten.
  13. Das Verfahren aus Anspruch 11, wobei der Schritt des Erfassens der Trainingsbilder im zweiten Satz von Trainingsbildern umfasst: Das Erfassen der Trainingsbildern im zweiten Satz von Trainingsbildern, die nicht als das zweite Ausgangsbild ausgewählt wurden, unter Verwendung des zweiten Ausgangswert-Angleichungsmodells, um einen zweiten Satz von relativen Positionen zu dem zweiten Ausgangsbild für jedes Trainingsbild im zweiten Satz von Trainingsbildern zu erhalten.
  14. Ein Verfahren zum Training eines Bildverarbeitungssystems zur Erschaffung eines geometrischen Modells, das Verfahren umfassend die Schritte von: Erlangen eines Satzes von Trainingsbildern, die ein Muster abbilden; Trainieren eines Ausgangswert-Angleichungsmodell von einem ersten Trainingsbild eines Satzes von Trainingsbildern; Erfassen von Trainingsbildern in dem Satz von Trainingsbildern außer dem ersten Trainingsbild, um einen ersten Satz von relativen Positionen unter den Trainingsbildern unter Verwendung des Angleichungsmodells zu erhalten; Identifizieren von gemeinsamen Merkmalen aus den Trainingsbildern durch Extraktion von Merkmalen von jedem der Trainingsbilder, Kartieren der extrahierten Merkmale unter Verwendung des ersten Satzes von relativen Positionen und Anwendung einer Korrespondenz-Metrik auf die kartierten Merkmale; Erstellen eines Angleichungsmodells für das Muster unter Verwendung eines ersten Teil-Satzes der gemeinsamen Merkmale, die von einem ersten Satz von Trainingsbildern abgeleitet sind, die in einen ersten Bereich des Musters fallen, wobei die Merkmale des ersten Teil-Satzes von gemeinsamen Merkmalen unter den Trainingsbildern im ersten Satz stabil sind; Identifizieren eines zweiten Bereichs innerhalb der Trainingsbilder; Identifizieren eines zweiten Teil-Satzes von gemeinsamen Merkmalen, die von einem zweien Satz von Trainingsbildern abgeleitet sind, die in den zweiten Bereich fallen, wobei die Merkmale des zweiten Teil-Satzes von gemeinsamen Merkmalen unter den Trainingsbildern im zweiten Satz stabil sind; Extrahieren von einem oder mehreren unterscheidenden Merkmalen aus dem ersten Teil-Satz von gemeinsamen Merkmalen und dem zweiten Teil-Satz von gemeinsamen Merkmalen, wobei das eine oder die mehreren unterscheidenden Merkmale Merkmalen entsprechen, die zwischen dem ersten Teil-Satz von gemeinsamen Merkmalen und dem zweiten Teil-Satz von gemeinsamen Merkmalen verschieden sind, und verwendet werden können, um zwischen einem Bereich, der eine Referenzmarke enthält, und dem zweiten Bereich zu differenzieren; und Erstellen eines Klassifizierungsmodells von dem einen oder den mehreren unterscheidenden Merkmalen.
  15. Das Verfahren aus Anspruch 14, wobei der Schritt der Identifizierung des zweiten Bereichs das Laufenlassen eines Angleichungsmodells für das Muster über die Trainingsbilder und das Identifizieren eines Bereichs, wo das Angleichungsmodell für das Muster eine hohe Bewertung ergibt, aber der Bereich keine Instanz des Musters enthält, umfasst.
  16. Ein System zum Training eines Bildverarbeitungssystems zur Erschaffung eines geometrischen Modells, umfassend: Eine Kamera, die konfiguriert ist, um Bilder aufzunehmen; und einen Prozessor in Verbindung mit der Kamera, der konfiguriert ist zum: Erlangen eines ersten Satzes von Trainingsbildern eines ersten Werkstücks und eines zweiten Satzes von Trainingsbildern eines zweiten Werkstücks; Auswählen von mindestens einem Trainingsbild von einem von dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern als mindestens ein Ausgangsbild; Trainieren von mindestens einem Ausgangswert-Angleichungsmodell von dem mindestens einen Ausgangsbild; Erfassen der Trainingsbilder im ersten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild ausgewählt wurden, unter Verwendung von dem mindestens einen Ausgangswert-Angleichungsmodell, um einen ersten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild im ersten Satz von Trainingsbildern zu erhalten; Erfassen der Trainingsbilder im zweiten Satz von Trainingsbildern, die nicht als das mindestens eine Ausgangsbild ausgewählt wurden, unter Verwendung von dem mindestens einen Ausgangswert-Angleichungsmodell, um einen zweiten Satz von relativen Positionen zu dem mindestens einen Ausgangsbild für jedes Trainingsbild im zweiten Satz von Trainingsbildern zu erhalten; Identifizieren von ersten entsprechenden Merkmalen von dem ersten Satz von Trainingsbildern, wobei die ersten entsprechenden Merkmale unter den Trainingsbildern im ersten Satz stabil sind; Identifizieren von zweiten entsprechenden Merkmalen von dem zweiten Satz von Trainingsbildern, wobei die zweiten entsprechenden Merkmale unter den Trainingsbildern im zweiten Satz stabil sind; Identifizieren von mindestens einem gemeinsamen Merkmal unter den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen; Extrahieren von einem oder mehreren unterscheidenden Merkmalen von dem ersten Satz von Trainingsbildern und dem zweiten Satz von Trainingsbildern auf Grundlage der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und des mindestens einen gemeinsamen Merkmals unter den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen, wobei das eine oder die mehreren unterscheidenden Merkmale zwischen zwei Sätzen von Trainingsbildern Merkmalen entsprechen, die zwischen den ersten entsprechenden Merkmalen und den zweiten entsprechenden Merkmalen verschieden sind, und verwendet werden können, um zwischen dem ersten Werkstück und dem zweiten Werkstück zu differenzieren; Erstellen eines Angleichungsmodells unter Verwendung von mindestens einem der ersten entsprechenden Merkmale, der zweiten entsprechenden Merkmale und des mindestens einen gemeinsamen Merkmals; und Erstellen eines Klassifizierungsmodells unter Verwendung des einen oder der mehreren unterscheidenden Merkmale.
  17. Ein System zum Training eines Bildverarbeitungssystems zur Erschaffung eines geometrischen Modells, umfassend: Eine Kamera, die konfiguriert ist, um Bilder aufzunehmen; und einen Prozessor in Verbindung mit der Kamera, der konfiguriert ist zum: Erlangen eines Satzes von Trainingsbildern, die ein Muster abbilden; Trainieren eines Ausgangswert-Angleichungsmodell von einem ersten Trainingsbild eines Satzes von Trainingsbildern; Erfassen von Trainingsbildern in dem Satz von Trainingsbildern außer dem ersten Trainingsbild, um einen ersten Satz von relativen Positionen unter den Trainingsbildern unter Verwendung des Angleichungsmodells zu erhalten; Identifizieren von gemeinsamen Merkmalen aus den Trainingsbildern durch Extraktion von Merkmalen von jedem der Trainingsbilder, Kartieren der extrahierten Merkmale unter Verwendung des ersten Satzes von relativen Positionen und Anwendung einer Korrespondenz-Metrik auf die kartierten Merkmale; Erstellen eines Angleichungsmodells für das Muster unter Verwendung eines ersten Teil-Satzes der gemeinsamen Merkmale, die von einem ersten Satz von Trainingsbildern abgeleitet sind, die in einen ersten Bereich des Musters fallen, wobei die Merkmale des ersten Teil-Satzes von gemeinsamen Merkmalen unter den Trainingsbildern im ersten Satz stabil sind; Identifizieren eines zweiten Bereichs innerhalb der Trainingsbilder; Identifizieren eines zweiten Teil-Satzes von gemeinsamen Merkmalen, die von einem zweiten Satz von Trainingsbildern abgeleitet sind, die in den zweiten Bereich fallen, wobei die Merkmale des zweiten Teil-Satzes von gemeinsamen Merkmalen unter den Trainingsbildern im zweiten Satz stabil sind; Extrahieren von einem oder mehreren unterscheidenden Merkmalen aus dem ersten Teil-Satz von gemeinsamen Merkmalen und dem zweiten Teil-Satz von gemeinsamen Merkmalen, wobei das eine oder die mehreren unterscheidenden Merkmale Merkmalen entsprechen, die zwischen dem ersten Teil-Satz von gemeinsamen Merkmalen und dem zweiten Teil-Satz von gemeinsamen Merkmalen verschieden sind, und verwendet werden können, um zwischen einem Bereich, der eine Referenzmarke enthält, und dem zweiten Bereich zu differenzieren; und Erstellen eines Klassifizierungsmodells von dem einen oder den mehreren unterscheidenden Merkmalen.
DE102016206010.4A 2015-04-10 2016-04-11 Systeme und Verfahren zur Klassifizierung und Angleichung von hochgradig ähnlichen oder selbstähnlichen Mustern Active DE102016206010B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/683,948 2015-04-10
US14/683,948 US9639781B2 (en) 2015-04-10 2015-04-10 Systems and methods for classification and alignment of highly similar or self-similar patterns

Publications (2)

Publication Number Publication Date
DE102016206010A1 DE102016206010A1 (de) 2016-10-13
DE102016206010B4 true DE102016206010B4 (de) 2019-06-13

Family

ID=56986713

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016206010.4A Active DE102016206010B4 (de) 2015-04-10 2016-04-11 Systeme und Verfahren zur Klassifizierung und Angleichung von hochgradig ähnlichen oder selbstähnlichen Mustern

Country Status (2)

Country Link
US (1) US9639781B2 (de)
DE (1) DE102016206010B4 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10365639B2 (en) * 2016-01-06 2019-07-30 Kla-Tencor Corporation Feature selection and automated process window monitoring through outlier detection
EP3557521A4 (de) * 2016-12-19 2020-08-05 Kabushiki Kaisha Yaskawa Denki Bilderkennungsprozessor und steuergerät für industrielle vorrichtung
US10733744B2 (en) * 2017-05-11 2020-08-04 Kla-Tencor Corp. Learning based approach for aligning images acquired with different modalities
JP6676030B2 (ja) * 2017-11-20 2020-04-08 株式会社安川電機 把持システム、学習装置、把持方法、及び、モデルの製造方法
CN110197473B (zh) * 2018-02-27 2021-12-03 国科赛思(北京)科技有限公司 塑封器件真伪识别方法及装置
US11709925B1 (en) * 2018-09-27 2023-07-25 Amazon Technologies, Inc. Visual token passwords
KR102568853B1 (ko) * 2018-10-31 2023-08-21 삼성전자주식회사 전자 장치 및 그 제어 방법
IT201800010949A1 (it) * 2018-12-10 2020-06-10 Datalogic IP Tech Srl Metodo e dispositivo di rilevamento e classificazione di un oggetto
US11531840B2 (en) 2019-02-08 2022-12-20 Vizit Labs, Inc. Systems, methods, and storage media for training a model for image evaluation
US10467504B1 (en) * 2019-02-08 2019-11-05 Adhark, Inc. Systems, methods, and storage media for evaluating digital images

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658145B1 (en) 1997-12-31 2003-12-02 Cognex Corporation Fast high-accuracy multi-dimensional pattern inspection
US7016539B1 (en) 1998-07-13 2006-03-21 Cognex Corporation Method for fast, robust, multi-dimensional pattern recognition
US8315457B2 (en) 2007-12-21 2012-11-20 Cognex Corporation System and method for performing multi-image training for pattern recognition and registration
US8331650B2 (en) 2010-07-29 2012-12-11 Sharp Laboratories Of America, Inc. Methods, systems and apparatus for defect detection

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421458B2 (en) * 1998-08-28 2002-07-16 Cognex Corporation Automated inspection of objects undergoing general affine transformation
US6804416B1 (en) * 2001-03-16 2004-10-12 Cognex Corporation Method and system for aligning geometric object models with images

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658145B1 (en) 1997-12-31 2003-12-02 Cognex Corporation Fast high-accuracy multi-dimensional pattern inspection
US7016539B1 (en) 1998-07-13 2006-03-21 Cognex Corporation Method for fast, robust, multi-dimensional pattern recognition
US8315457B2 (en) 2007-12-21 2012-11-20 Cognex Corporation System and method for performing multi-image training for pattern recognition and registration
US8331650B2 (en) 2010-07-29 2012-12-11 Sharp Laboratories Of America, Inc. Methods, systems and apparatus for defect detection

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SZELISKI R.: Image Alignment and Stitching. In: Handbook of Mathematical Models in Computer Vision, 2006, S. 273–292. Springer [online]. <URL: https://doi.org/10.1007/0-387-28831-7_17>, In: DPMAprimo *

Also Published As

Publication number Publication date
DE102016206010A1 (de) 2016-10-13
US9639781B2 (en) 2017-05-02
US20160300125A1 (en) 2016-10-13

Similar Documents

Publication Publication Date Title
DE102016206010B4 (de) Systeme und Verfahren zur Klassifizierung und Angleichung von hochgradig ähnlichen oder selbstähnlichen Mustern
EP2584493B1 (de) Verfahren zur Unterscheidung zwischen einem realen Gesicht und einer zweidimensionalen Abbildung des Gesichts in einem biometrischen Erfassungsprozess
DE60307967T2 (de) Bildverarbeitungsverfahren für die untersuchung des erscheinungsbildes
DE102016120775A1 (de) System und Verfahren zum Erkennen von Linien in einem Bild mit einem Sichtsystem
DE112014001658T5 (de) Nachverfolgungsverarbeitungsvorrichtung und Nachverfolgungsverarbeitungssystem, das damit ausgestattet ist, und Nachverfolgungsverarbeitungsverfahren
DE102011081668A1 (de) Vorrichtung und Verfahren zur Bestimmung der Form des Endes einer Schweißnaht
DE112020005932T5 (de) Systeme und verfahren zur segmentierung von transparenten objekten mittels polarisationsmerkmalen
EP1610270A2 (de) Verfahren zur qualitativen Beurteilung eines Materials mit mindestens einem Erkennungsmerkmal
WO2019002114A1 (de) Vorrichtung und verfahren zum rundum-inspizieren von behältnissen am transportband
DE102017116853A1 (de) System und Verfahren zur automatischen Auswahl von 3D-Ausrichtungsalgorithmen in einem Sehsystem
DE112019002848T5 (de) System und verfahren zum auffinden und klassifizieren von mustern in einem bild mit einem bildverarbeitungssystem
DE102017220752A1 (de) Bildverarbeitungsvorrichtung, Bildbverarbeitungsverfahren und Bildverarbeitungsprogramm
DE102014107143A1 (de) System und Verfahren zur effizienten Oberflächenmessung mithilfe eines Laserverschiebungssensors
DE102021115002A1 (de) Werkstückinspektions- und fehlererkennungssystem einschliesslich überwachung der werkstückbilder
DE102021100496A1 (de) Intelligentes Produktionslinienüberwachungssystem und Überwachungsverfahren
DE112016006921T5 (de) Schätzung der menschlichen Ausrichtung in Bildern unter Verwendung von Tiefeninformationen
DE102016100134B4 (de) Verfahren und Vorrichtung zum Untersuchen eines Objekts unter Verwendung von maschinellem Sehen
DE102017219244B4 (de) Inspektionsbedingungsbestimmungseinrichtung, inspektionsbedingungsbestimmungsverfahren und inspektionsbedingungsbestimmungsprogramm
DE102019216321A1 (de) Bildverarbeitungsvorrichtung
DE102014108924B4 (de) Ein halbüberwachtes Verfahren zum Trainiern eines Hilfsmodells zur Erkennung und Erfassung von Mehrfachmustern
DE102019115224A1 (de) System und verfahren zum auffinden und klassifizieren von linien in einem bild mittels eines schichtsystems
DE102016109027A1 (de) Verfahren zur Lageüberprüfung charakteristischer Punkte in Lichtverteilungen
WO2018007619A1 (de) Verfahren und einrichtung zur kategorisierung einer bruchfläche eines bauteils
EP3259703A1 (de) Mobilgerät zum erfassen eines textbereiches auf einem identifikationsdokument
WO2020160861A1 (de) Kalibrierung eines sensors für ein fahrzeug basierend auf objektseitigen und bildseitigen identifikationsindizes eines referenzobjektes

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009660000

Ipc: G06V0030194000