DE102014108924B4 - A semi-supervised method for training an auxiliary model for multi-pattern recognition and detection - Google Patents

A semi-supervised method for training an auxiliary model for multi-pattern recognition and detection Download PDF

Info

Publication number
DE102014108924B4
DE102014108924B4 DE102014108924.3A DE102014108924A DE102014108924B4 DE 102014108924 B4 DE102014108924 B4 DE 102014108924B4 DE 102014108924 A DE102014108924 A DE 102014108924A DE 102014108924 B4 DE102014108924 B4 DE 102014108924B4
Authority
DE
Germany
Prior art keywords
model
pattern
training
procedure according
trained
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
DE102014108924.3A
Other languages
German (de)
Other versions
DE102014108924A1 (en
Inventor
Simon Barker
David J. Michael
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
Priority claimed from US13/955,120 external-priority patent/US9679224B2/en
Application filed by Cognex Corp filed Critical Cognex Corp
Publication of DE102014108924A1 publication Critical patent/DE102014108924A1/en
Application granted granted Critical
Publication of DE102014108924B4 publication Critical patent/DE102014108924B4/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/217Validation; Performance evaluation; Active pattern learning techniques

Abstract

Ein Verfahren zum Trainieren eines Modells zum Erkennen und Erfassen eines Musters in einem Maschinensichtsystem, wobei das Verfahren die folgenden Schritte umfasst:- Bereitstellung eines oder mehrerer Initialtrainingsbilder mit einem Bereich, der ein Muster, das trainiert werden soll, bestimmt, wobei das eine oder die mehreren Trainingsbilder von einer Datenbank geliefert werden, die eine Vielzahl von Trainingsbildern enthält;- Trainieren eines ersten Mustermodells aus dem einen oder mehreren Initialtrainingsbildern;- Iterieren über die verbliebenen Bilder und Auswahl der hoch bewerteten Bilder als Eingabe zum Modelltraining; und- Ausgabe eines trainierten Mustermodells, das Merkmale einschließt, die eine vorher bestimmte Anzahl der Vielzahl von Trainingsbildern gemeinsam haben, wobei das trainierte Mustermodell sich vom ersten Mustermodell unterscheidet.A method of training a model for recognizing and capturing a pattern in a machine vision system, the method comprising the steps of:- providing one or more initial training images having an area defining a pattern to be trained, the one or the a plurality of training images are supplied from a database containing a plurality of training images;- training a first sample model from the one or more initial training images;- iterating over the remaining images and selecting the high scoring images as input to model training; and- outputting a trained pattern model including features common to a predetermined number of the plurality of training images, the trained pattern model being different from the first pattern model.

Description

GEBIET DER ERFINDUNGFIELD OF THE INVENTION

Die vorliegende Erfindung bezieht sich auf eine Maschinenvision, bei der Bilder von Objekten mithilfe einer Kamera oder einer anderen Abbildungsvorrichtung erhalten werden, bei dem die Suche nach einem Zielmuster im Bild der Suche nach dem Muster auf dem Objekt, das dargestellt wird, entspricht.The present invention relates to machine vision in which images of objects are obtained using a camera or other imaging device, in which searching for a target pattern in the image corresponds to searching for the pattern on the object being represented.

HINTERGRUND DER ERFINDUNGBACKGROUND OF THE INVENTION

Es ist ein Problem, Maschinenvisionssysteme benutzerfreundlich und einem weiteren Kreis von möglichen Benutzern zugänglich zu machen. Es gibt verschiedene Aspekt, die für Benutzer klar verständlich sind (beispielsweise, wie man einen Satz von Trainingsbildern erzeugt) und was die „Ground Truth“ der Situation ist. Darüber hinaus allerdings ist die Anwendung vieler Aspekte von Training und Laufzeitvorgängen der Maschinenvisionssysteme schwieriger.Making machine vision systems user-friendly and accessible to a wider range of potential users is a problem. There are several aspects that are clear for users to understand (e.g. how to generate a set of training images) and what the "ground truth" of the situation is. In addition, however, many aspects of the training and run-time operations of machine vision systems are more difficult to apply.

Bei Maschinenvisionssystemen, bei denen Bilder von Objekten mithilfe einer Kamera oder einer anderen Abbildungsvorrichtung erhalten werden und bei denen ein Muster auf dem Objekts, das abgebildet ist, mithilfe eines Verfahrens gesucht wird, das auf einem Computer oder einer anderen Rechenvorrichtung ausgeführt wird. Wenn ein Satz Bilder gegeben ist, wobei jedes Bild mindestens ein Beispiel eines Zielmusters enthält, aber bei dem sich das Aussehen des Zielmusters ändern kann, kann es auch eine Herausforderung sein, einen minimalen Satz von Modellen zur Mustererkennung und -Erfassung, der für alle Bilder im Bildersatz anwendbar sind, zu identifizieren und zu trainieren, Das Verfahren zur Mustererkennung und -erfassung ist genauer in den US-Patentanmeldungen mit den Nummern 6.408.109, 6.658.145 und 7.016.539 beschrieben. Wird ein Muster erkannt, bestätigt das Verfahren zur Mustererkennung und -erfassung (oder das „Tool“, bzw. Hilfsprogramm), dass das gesichtete Muster tatsächlich das Muster ist, nach dem das Hilfsprogramm sucht, und fixiert dessen Position, Ausrichtung, Maßstab, Schräglauf und Blickwinkel. Ein Beispiel eines solchen Suchhilfprogramms ist das PatMax® von Cognex Corporation in Natick, Massachusetts, USA. Das Verfahren zur Mustererkennung und -erfassung ist ein Verfahren der geometrischen Mustersuche. Die hier beschriebenen Verfahren werden allgemein auf geometrische Mustersuche angewendet.In machine vision systems, where images of objects are obtained using a camera or other imaging device, and where a pattern on the object being imaged is sought using a method executed on a computer or other computing device. Given a set of images, where each image contains at least one example of a target pattern, but where the appearance of the target pattern may change, it can also be challenging to create a minimal set of pattern recognition and detection models common to all images are applicable in the set of images. The method of pattern recognition and detection is described in more detail in US Patent Application Nos. 6,408,109, 6,658,145 and 7,016,539. When a pattern is recognized, the pattern recognition and capture process (or the "tool" or utility) confirms that the pattern it sees is indeed the pattern the utility is looking for and fixes its position, orientation, scale, skew and perspective. An example of such a search utility is the PatMax® from Cognex Corporation of Natick, Massachusetts, USA. The pattern recognition and detection method is a geometric pattern search method. The methods described here are generally applied to geometric pattern searches.

Weitere lernfähige Systeme und Trainingsverfahren zur Mustererkennung und -erfassung in Bildersätzen sind in US 8,144,976 B1 , US 8,457,390 B1 und US 8,315,457 B2 beschrieben.Further adaptive systems and training methods for pattern recognition and detection in image sets are in US 8,144,976 B1 , US 8,457,390 B1 and U.S. 8,315,457 B2 described.

Beispielsweise kann ein Muster aus Elementen, die Kreise und Linien enthalten, bestehen. In Fig. schließt Muster 110 einen Kreis 112 und zwei diesen schneidende Linien 114, 116 ein; Muster 120 schließt einen Kreis 122 und ein Linienpaar 124, 126 ein; und Muster 130 schließt einen Kreis 132 und ein Linienpaar 134, 136 ein. Die Kreise können, was Radius und Liniendicke oder -anzahl betrifft, über den Bildersatz von trainierten Linien variieren. Dies kann insbesondere der Fall auf dem Gebiet von Halbleitern oder anderen Materialien sein, bei denen eine Vielzahl von Schichten auf einem Substrat abgelegt wird, was zu Verzerrungen der Merkmale auf jeder Schicht führen kann. Die Polarität der Muster kann ebenso innerhalb des Bildersatzes variieren (wie im Unterschied zwischen Muster 120 und Muster 130 gezeigt). Die Bilder können auch einen hohen Grad an Rauschen enthalten.For example, a pattern can consist of elements containing circles and lines. In Figure 1, pattern 110 includes a circle 112 and two intersecting lines 114, 116; pattern 120 includes a circle 122 and a pair of lines 124, 126; and pattern 130 includes a circle 132 and a pair of lines 134,136. The circles can vary in radius and line thickness or number across the image set of trained lines. This can be particularly the case in the field of semiconductors or other materials where a multiplicity of layers are deposited on a substrate, which can lead to distortions of the features on each layer. The polarity of the patterns can also vary within the image set (as shown in the difference between pattern 120 and pattern 130). The images can also contain a high level of noise.

Das Problem hat mindestens zwei Komponenten. Erstens besteht der Trainingsbildersatz aus Rauschbildern, so dass es schwierig ist, ein sauberes Modell aus einem einzigen Bild zu trainieren. Zweitens hat das Muster im Trainingsbildersatz ein unterschiedliches Aussehen, was das Trainieren eines einzigen Modells schwierig und während der Laufzeit fehlerhaft macht. Es ist daher Aufgabe der Erfindung, ein verbessertes System und Verfahren vorzuschlagen, welches ein einfaches und fehlerfreies Trainieren eines sauberen Modells auch mit einem verrauschten und unterschiedliche Varianten eines Musters enthaltenden Trainingsbildersatz erlaubt.The problem has at least two components. First, the training image set consists of noise images, so it is difficult to train a clean model from a single image. Second, the pattern in the training image set has a different appearance, making training a single model difficult and buggy at runtime. It is therefore the object of the invention to propose an improved system and method which allows simple and error-free training of a clean model even with a noisy training image set containing different variants of a pattern.

DARSTELLUNG DER ERFINDUNGPRESENTATION OF THE INVENTION

Um die Nachteile des Standes der Technik zu überwinden, verwenden die Systeme und Verfahren hier ein Modell zur Mustererkennung und -erfassung, um das Training durchzuführen. Ein Mustersuchmodell ist beispielsweise ein einziges Modell, das aus vielen Trainingsbildern trainiert wird. Bei einigen Ausführungsformen können zusammengesetzte Modelle eingesetzt werden, um entweder die Stabilität über Standardmodelle zur Mustererkennung und -erfassung zu verbessern und/oder um kleine Unterschiede im Aussehen eines Zielbereiches abzubilden. Zur Verbesserung der Stabilität kombinieren zusammengesetzte Modelle Daten von geräuschvollen (und anderweitig verzerrten) Trainingsbildern, die Beispiele von einzelnen darunterliegenden Mustern zeigen, um ein einziges stabiles Modell zu formen. Um das zu erreichen, verwendet ein Trainingselement, welches das Modell zur Mustererkennung und -erfassung einsetzt, die Eingabebilder und eine bekannte relative Lage oder Position (diese ist humanidentifiziert oder computerbestimmt).To overcome the disadvantages of the prior art, the systems and methods herein use a pattern recognition and detection model to perform the training. For example, a pattern search model is a single model that is trained from many training images. In some embodiments, composite models may be employed to either improve stability over standard pattern recognition and detection models and/or to accommodate small differences in appearance of a target area. To improve stability, composite models combine data from noisy (and otherwise distorted) training images showing examples of discrete underlying patterns to form a single stable model. To achieve this, a training element, which uses the model for pattern recognition and recognition, uses the input images and a known relative location or position (this is human-identified or computer-determined).

Um die kleinen Unterschiede im Aussehen eines Zielbereiches zu erklären, wird ein Trainingsverfahren eingesetzt, um einen Satz von Modellen zur Mustererkennung und -Erfassung zu trainieren, der den kompletten Bereich (oder zumindest einen großen Teil des kompletten Bereiches) des Aussehens des Zielmusters im Trainingssatz überspannt. Der Satz von Modellen zur Mustererkennung und -erfassung kann sich entweder als getrennte Beispiele von Mustermodellen zeigen oder als Mehrfachmustermodell. Ein Mehrfachmustermodell ist eine Ansammlung von Modellen zur Mustererkennung und -Erfassung. Die darunterliegenden Modelle können Standardmodelle zur Mustererkennung und -erfassung sein oder ein zusammengesetztes Mustermodell oder eine Kombination von beiden. Das Mehrfachmustermodell ist zum Einsatz bei der Formung von Zielen vorgesehen, deren Aussehen sehr unterschiedlich ist. Das Mehrfachmustermodell kann in verschiedenen modi laufen, um das vorbekannte Wissen des wahrscheinlichen zeitlichen Ablaufes des Aussehens des Modells auszunutzen. Der Einbau von Mehrfachmustermodellen in den Mehrfachmustermodellrahmen kann verwendet werden, um die Menge an Front End Processing zu reduzieren und so schrittweisen Leistungsgewinn über den Lauf von Beispielen separater Mustermodelle zu erhalten. Das Mehrfachmustermodell kann auch Ergebnisse seiner zusammengesetzten Modelle überprüfen, um Überlappung zu filtrieren, wenn beispielsweise Ergebnisse von zwei Modellen mit mehr als einer vom Benutzer bestimmten Schwelle überlappen; dann kann das Mehrfachmustermodell nur das besser passende Ergebnis (oder das mit den mehr Treffern) an den Benutzer zurückschicken.In order to explain the small differences in the appearance of a target area, a training method is used to train a set of pattern recognition and recognition models that span the complete range (or at least a large part of the complete range) of the appearance of the target pattern in the training set . The set of models for pattern recognition and detection can either manifest themselves as separate instances of pattern models or as a multiple pattern model. A multi-pattern model is a collection of models for pattern recognition and detection. The underlying models can be standard models for pattern recognition and detection, or a composite pattern model, or a combination of both. The multi-pattern model is intended for use in sculpting targets that vary widely in appearance. The multi-pattern model can be run in different modes to exploit prior knowledge of the likely timing of the model's appearance. The incorporation of multi-pattern models into the multi-pattern model framework can be used to reduce the amount of front end processing and thus obtain incremental performance gain over the running of instances of separate pattern models. The multi-pattern model can also check results of its composite models to filter overlap when, for example, results from two models overlap with more than a user-specified threshold; then the multi-pattern model can only return the better matching result (or the one with more matches) to the user.

Figurenlistecharacter list

Die untenstehende Erfindungsbeschreibung bezieht sich auf die beigefügten Zeichnungen, von denen

  • 1, bereits beschrieben, drei Beispiele von Bildern zeigt, wobei jedes ein Muster einschließt, gemäß des Verfahrens zur Mustererkennung und -Erfassung;
  • 2 ein schematisches Blockdiagramm eines Masinenvisionssystem zur Ausführung der Grundsätze der vorliegenden Erfindung gemäß eines Ausführungsbeispiels ist;
  • 3 ein Flussdiagramm eines Verfahrens zum Trainieren eines einzelnen Modells zur Mustererkennung und -Erfassung gemäß der Ausführungsbeispiele ist;
  • 4 ein Flussdiagramm eines Verfahrens zum Trainieren eines Mehrfachmustermodells und Messleistung eines gegenwärtig trainierten Ausgabemodells gemäß der Ausführungsbeispiele ist;
  • 5 ein Flussdiagramm eines Verfahrens zum Vorschlag und Einstufen von Kandidaten zur Addition zu der Ansammlung von Ausgabemodellen gemäß der Ausführungsbeispiele ist; und
  • 6 ein Flussdiagramm eines Verfahrens ist, um dem Benutzer den Kandidaten mit den meisten Treffern vorzuschlagen und Mehrfachmustermodelle auszugeben, gemäß der Ausführungsbeispiele.
The description of the invention below refers to the accompanying drawings, of which
  • 1 , already described, shows three examples of images, each including a pattern, according to the pattern recognition and detection method;
  • 2 Figure 12 is a schematic block diagram of a machine vision system for carrying out the principles of the present invention according to one embodiment;
  • 3 Figure 12 is a flow chart of a method for training a single model for pattern recognition and detection according to example embodiments;
  • 4 Figure 12 is a flow chart of a method for training a multi-pattern model and measurement performance of a currently trained output model according to example embodiments;
  • 5 Figure 12 is a flow chart of a method for proposing and ranking candidates for addition to the aggregation of output models according to the example embodiments; and
  • 6 Figure 12 is a flow chart of a method for suggesting the most-matching candidate to the user and outputting multiple pattern models, according to example embodiments.

FIGURENBESCHREIBUNGFIGURE DESCRIPTION

2 ist ein schematisches Blockdiagramm eines Maschinenvisionssystems 200, das eingesetzt werden kann, um die Grundlagen der vorliegenden Erfindung gemäß eines Ausführungsbeispiels zu trainieren. Das Maschinenvisionssystem 200 schließt eine Erfassungsvorrichtung 205 ein, die ein Bild eines Objektes 210 mit einem oder mehreren Merkmalen 215 erzeugt. Die Erfassungsvorrichtung 205 kann eine herkömmliche Videokamera oder einen Scanner umfassen. Eine solche Videokamera kann ein ladungsgekoppeltes Bauelement (charge coupled device CCD) oder ein anderes System zur Beschaffung entsprechender Bildinformationen sein, wie etwa die wohl bekannten CMOS-Sensoren. Bilddaten (oder Pixel), die von der Erfassungsvorrichtung 205 erzeugt werden, repräsentieren eine Bilddichte, beispielsweise Farbe oder Helligkeit an jedem Punkt in der Szene innerhalb der Auflösung der Erfassungsvorrichtung 205. Die Erfassungsvorrichtung 205 überträgt digitale Bilddaten über einen Kommunikationspfad 220 zu einem Bildanalysesystem 225. Das Bildanalysesystem 225 kann einen herkömmlichen digitalen Datenprozessor umfassen, wie etwa Visionsverarbeitungssysteme von Cognex Corporation. Das Bildanalysesystem 225 kann einen herkömmlichen Mikrocomputer oder ein anderes Beispiel einer Rechenvorrichtung umfassen. Andere Arten von Schnittstellen können eingesetzt werden, einschließlich beispielsweise persönliche Digitalassistenten (PDA) usw. Bei anderen Ausführungsformen kann die Erfassungsvorrichtung Verarbeitungsmöglichkeiten einschließen, um die Funktionen des Bildanalysesystems auszuführen. Bei solchen Ausführungsbeispielen gibt es keinen Bedarf für ein separates Bildanalysesystem. Bei weiteren alternativen Ausführungsbeispielen kann zu Trainingszwecken eine Erfassungsvorrichtung wirksam mit einem Bildanalysesystem verbunden werden. Wenn das Training durchgeführt wurde, kann oder können zum Einsatz während der Laufzeit ein entsprechendes Modell/entsprechende Modelle in der Erfassungsvorrichtung gespeichert werden. 2 1 is a schematic block diagram of a machine vision system 200 that may be employed to train the principles of the present invention according to one embodiment. The machine vision system 200 includes a sensing device 205 that generates an image of an object 210 having one or more features 215 . The capture device 205 may include a conventional video camera or scanner. Such a video camera can be a charge coupled device (CCD) or other system for obtaining appropriate image information, such as the well-known CMOS sensors. Image data (or pixels) generated by the capture device 205 represents an image density, such as color or brightness, at each point in the scene within the resolution of the capture device 205. The capture device 205 transmits digital image data over a communication path 220 to an image analysis system 225. The image analysis system 225 may comprise a conventional digital data processor, such as vision processing systems from Cognex Corporation. The image analysis system 225 may include a conventional microcomputer or other example of a computing device. Other types of interfaces may be deployed including, for example, personal digita assistant (PDA), etc. In other embodiments, the acquisition device may include processing capabilities to perform the functions of the image analysis system. In such embodiments, there is no need for a separate image analysis system. In further alternative embodiments, a detection device may be operatively connected to an image analysis system for training purposes. Once the training has been performed, a corresponding model(s) may be stored on the sensing device for use at runtime.

Das Bildanalysesystem 225 kann gemäß der Lehren der vorliegenden Erfindung programmiert werden, um ähnliche Merkmale unter der Vielzahl von Bildern zu suchen, um entsprechende Erkennungs- und Erfassungsinformationen zum Trainieren eines Maschinenvisionssystems zu erzeugen. Das Bildanalysesystem 225 kann eine oder mehrere zentrale Verarbeitungseinheiten (Prozessoren) 230, Hauptspeicher 235, Eingabe-/Ausgabesysteme 245 und ein oder mehrere Laufwerke oder eine andere Form der Massenspeicherung 240 aufweisen. Beispielsweise verbindet sich das Eingabe-/Ausgabesystem 245 mit dem Kommunikationspfad 220 zwischen der Erfassungsvorrichtung 205 und dem Bildanalysesystem 225. Das System 225 kann durch Programmierungsanweisungen gemäß der Lehren der vorliegenden Erfindung konfiguriert sein, um die neuartige, durch mehrere Bilder trainierte Mustererkennung und -Erfassung der vorliegenden Erfindung auszuführen. Fachleute werden es zu schätzen wissen, dass alternative Hardware- und/oder Softwarekonfigurationen verwendet werden können, um die Grundlagen der vorliegenden Erfindung umzusetzen. Insbesondere können die Lehren der vorliegenden Erfindung in Software, Hardware, Firmware und/oder all ihren Kombinationen umgesetzt werden. Weiterhin können während der Laufzeit, im Gegensatz zur Trainingszeit, zusätzliche Komponenten ins Maschinenvisionssystem 200 eingefügt werden. Beispielsweise können Objekte 215 auf einem Förderband oder einer anderen Montagelinie usw. gefördert werden.The image analysis system 225 can be programmed according to the teachings of the present invention to search for similar features among the plurality of images to generate corresponding recognition and detection information for training a machine vision system. Image analysis system 225 may include one or more central processing units (processors) 230, main memory 235, input/output systems 245, and one or more disk drives or other form of mass storage 240. For example, the input/output system 245 connects to the communication path 220 between the capture device 205 and the image analysis system 225. The system 225 can be configured by programming instructions according to the teachings of the present invention to implement the novel multi-image trained pattern recognition and capture of the carry out the present invention. Those skilled in the art will appreciate that alternative hardware and/or software configurations can be used to implement the principles of the present invention. In particular, the teachings of the present invention can be implemented in software, hardware, firmware, and/or any combination thereof. Furthermore, additional components can be inserted into the machine vision system 200 during runtime, as opposed to training time. For example, objects 215 may be conveyed on a conveyor belt or other assembly line, and so on.

Gemäß eines Ausführungsbeispiels der vorliegenden Erfindung, kann das Maschinenvisionssystem 200 verwendet werden, um das Trainingsmodell für ein Laufzeitmaschinenvisionssystem zu erzeugen. So kann das Maschinenvisionssystem 200 verwendet werden, um ein Trainingsmodell zu erzeugen, das in einer Vielzahl von Maschinenvisionssystemen, die ähnliche Komponenten einsetzen, verwendet werden kann.According to an embodiment of the present invention, the machine vision system 200 can be used to generate the training model for a run-time machine vision system. Thus, the machine vision system 200 can be used to create a training model that can be used in a variety of machine vision systems that employ similar components.

Darüber hinaus sollte festgehalten werden, dass das Musterelement (oder Mustererkennungs- und -Erfassungselement), wie hier gezeigt und beschrieben, und dessen zugehörige Modelle sich im Allgemeinen innerhalb des Bildanalysesystems 225 befinden. Allerdings kann entsprechend durchschnittlichem Fachwissen die Position und Speicherung der Elemente und Modelle höchst unterschiedlich sein.Additionally, it should be noted that the pattern element (or pattern recognition and detection element) as shown and described herein and its associated models reside generally within the image analysis system 225 . However, according to average specialist knowledge, the position and storage of the elements and models can be extremely different.

Es sollte festgehalten werden, dass, während die vorliegende Erfindung mit Bezug auf ein Maschinenvisionssystem 200 beschrieben wird, die Grundsätze der vorliegenden Erfindung bei einer Anzahl von verschiedenen Ausführungsformen eingesetzt werden kann. So sollte der Begriff Maschinenvisionssystem alternative Systeme einschließen. Allgemeiner gesagt, können die Grundprinzipien der vorliegenden Erfindung bei jedem System, das Teilmuster in Bildern erfasst, umgesetzt werden. Eine Ausführungsform kann beispielsweise ein herkömmliches Maschinenvisionssystem betreffen, das eine eigenständige Kamera umfasst, die aktiv mit einem eigenständigem Computer verbunden ist, der so programmiert ist, dass es Bilder usw. verarbeitet. Allerdings können die Grundsätze der vorliegenden Erfindung bei anderen Vorrichtungen und/oder Systemen eingesetzt werden, die Teilmuster in Bildern erfassen. Beispielsweise, ein Visionssensor, wie etwa das Produkt Checker, das von Cognex Corporation bezogen werden kann, oder eine andere Vorrichtung, die Beleuchtungsquellen, Bilderfassungsmöglichkeiten und/oder - Verarbeitungsmöglichkeiten umfasst. Solche Visionssensoren können über getrennte Module, wie etwa ein Cognex Vision View, trainiert und/oder konfiguriert werden. Bei solchen Ausführungsformen kann der Benutzer den Visionssensor mithilfe einer Vielzahl von Teilen anstatt mit einem einzigen Teil trainieren. Der Benutzer kann ein erstes Teil wählen, dieses vor dem Sensor platzieren und dem System mitteilen, dass das Trainingsteil in Position ist. Ein zweites (drittes usw.) Teil kann ähnlich trainiert werden. Der Benutzer kann den Trainingsschritt mithilfe beispielsweise eines grafischen Benutzerinterface (GUI) und/oder Knöpfen oder anderen Kontrolloberflächen, die am Trainingsmodul und/oder am Visionssensor selber angeordnet sind, kontrollieren. Weiterhin kann die Funktion der vorliegenden Erfindung in Handgeräte, drahtlose, kompatible Geräte usw. eingebaut werden. Der Begriff Maschinenvisionssystem sollte also breit ausgelegt werden, damit er all diese Systeme und Geräte umfasst, die ein oder mehrere der Lehren der vorliegenden Erfindung einsetzen können.It should be noted that while the present invention will be described with reference to a machine vision system 200, the principles of the present invention may be employed in a number of different embodiments. Thus, the term machine vision system should include alternative systems. More generally, the principles of the present invention can be implemented in any system that detects sub-patterns in images. For example, an embodiment may relate to a conventional machine vision system that includes a standalone camera that is actively connected to a standalone computer that is programmed to process images, etc. However, the principles of the present invention may be applied to other devices and/or systems that detect sub-patterns in images. For example, a vision sensor, such as the Checker product available from Cognex Corporation, or other device that includes illumination sources, image capture capabilities, and/or processing capabilities. Such vision sensors can be trained and/or configured via separate modules such as a Cognex Vision View. In such embodiments, the user can train the vision sensor using a plurality of parts rather than a single part. The user can choose a first piece, place it in front of the sensor and tell the system that the training piece is in position. A second (third, etc.) part can be trained similarly. The user can control the training step using, for example, a graphical user interface (GUI) and/or buttons or other control surfaces located on the training module and/or the vision sensor itself. Furthermore, the function of the present invention can be built into handheld devices, wireless compatible devices, and so on. Thus, the term machine vision system should be construed broadly to encompass all such systems and devices that can employ one or more of the teachings of the present invention.

Trainieren eines einzelnen Modell zur Mustererkennung und -ErfassungTrain a single model for pattern recognition and capture

Gemäß der Ausführungsbeispiele wird ein Modell zur Mustererkennung und -Erfassung aus vielen Bildern trainiert. Es wird zum Beispiel auf die US Patentanmeldung Nr. 8.315.457 verwiesen, deren Veröffentlichung hier unter Bezugnahme als nützliche Hintergrundinformation für eine genauere Beschreibung des Trainierens eines einzelnen Modells zur Mustererkennung und - erfassung eingeschlossen ist. Zusammengesetzte Modelle können verwendet werden, entweder um Stabilität über Standardmustermodelle zu verbessern oder um kleine Unterschiede im Aussehen eines Zielbereiches abzubilden. Ein hier umgesetztes Trainingselement trainiert einen Satz von Modellen zur Mustererkennung und -erfassung, der das gesamte Spektrum an Aussehen eines Zielbereiches in einem Satz von Trainingsbildern überspannt. Der Modellsatz kann ein einzelnes Modell zur Mustererkennung und -Erfassung oder eine Ansammlung von Modellen sein, die hier „Mehrfachmodell“ des Musters genannt wird. Das Mehrfachmodellelement ist für den Einsatz bei der Abbildung von Zielen vorgesehen, deren Aussehen sehr unterschiedlich ist. Das Mehrfachmodell kann in verschiedenen Modi laufen, um das vorbekannte Wissen über den möglichen Ablauf des Aussehens des Modells auszunutzen.According to the exemplary embodiments, a model for pattern recognition and detection is trained from many images. It will for example on the US Patent Application No. 8,315,457 reference, the publication of which is incorporated herein by reference as useful background information for a more detailed description of training a single model for pattern recognition and detection. Composite models can be used either to improve stability over standard pattern models or to map small differences in the appearance of a target area. A training element implemented here trains a set of pattern recognition and detection models that span the full spectrum of appearances of a target area in a set of training images. The model set can be a single model for pattern recognition and detection, or a collection of models, here called the "multiple model" of the pattern. The multiple model element is intended for use in mapping targets that vary widely in appearance. The multiple model can be run in different modes to take advantage of prior knowledge of the possible flow of the model's appearance.

Der hier benutzte Begriff „Trainingselement“ (oder Trainingsmodul) bezieht sich auf die nicht transitorische Ausführung der Schritte, die beim Erzeugen eines Trainingsmodells durchgeführt werden. Das Trainingselement ist Teil eines nicht transitorischen Computerprogramms, das ein (oder mehrere) Programm(e) oder Funktionen enthält, die sich der Ausführung einer bestimmten Aufgabe widmen. Jedes hier beschriebene und gezeigte Element (oder Modul) kann allein oder in Kombination mit anderen Modulen innerhalb des Maschinenvisionssystem eingesetzt werden. Das Trainingselement schafft das Trainingsmodell durch Trainieren eines Modellsatzes, der das ganze Spektrum von Trainingsbildern überspannt, die in der Datenbasis enthalten sind. Zusätzlich bezieht sich der hier benutzte Begriff „Modell zur Mustererkennung und -Erfassung“ oder „Mustermodell“ allgemein auf Mustermodelle, die in der Patentschrift '457 veröffentlicht sind, wenn nichts anderes vermerkt ist.As used herein, the term "training element" (or training module) refers to the non-transitory execution of the steps involved in creating a training model. The training element is part of a non-transitory computer program that contains one (or more) program(s) or functions dedicated to performing a specific task. Each element (or module) described and shown herein can be used alone or in combination with other modules within the machine vision system. The training element creates the training model by training a model set that spans the full range of training images contained in the database. Additionally, as used herein, the term “pattern recognition and detection model” or “pattern model” generally refers to pattern models disclosed in the '457 patent unless otherwise noted.

3 zeigt ein Flussdiagramm des Verfahrens 300, das von einem Trainingselement ausgeführt wird, um gemäß der Ausführungsbeispiele ein einzelnes Modell zur Mustererkennung und - Erfassung zu trainieren. In Schritt 310 ist der Initialschritt zum Algorithmus (der vom Benutzer oder vom Computer geliefert wird) ein Initialtrainingsbild und ein Bereich, der das zu trainierende Muster (ein „interessierender Bereich“) bestimmt, der ebenfalls vom Benutzer oder vom Computer geliefert wird. Das Verfahren 300 nimmt diese Eingabe and trainiert in Schritt 320 ein erstes (Initial-) Modell (P0) zur Mustererkennung und -Erfassung („PatMax“) mithilfe von Trainingsparametern in 325. In Schritt 330 durchläuft das System als Nächstes den Bildersatz (zumindest einen Teil oder einen Teilsatz der verbleibenden Trainingsbilder), wobei das Mustermodell P0 mit dem Bildersatz läuft, der vom Benutzer oder einem Computer geliefert wird und vorher in einer Datenbasis gespeichert war. Das System kann das Modell nach dem ganzen verbleibenden Trainingsbildersatz oder einem Teil des verbleibenden Bildersatzes durchsuchen und speichert die Ergebnistreffer, Positionen und passende Bereichsdaten. In Schritt 340 werden die Ergebnisse nach Treffern sortiert (und falls eine „Ground Truth“ erhalten wird, nach der Genauigkeit). Die „Ground Truth“ kann vom Benutzer geliefert oder vom Computer erzeugt werden. In Schritt 350 gibt das Verfahren das Topbild (Nc-1) ein (wobei Nc ein Parameter ist, der die Anzahl der Bilder bestimmt, die in das zusammengesetzte Modelltraining eingegeben werden) und trainiert in Schritt 360 ein zusammengesetztes Modell mithilfe der Positions- und Bereichsinformationen aus den Ergebnissen, die vorher im Durchlauf von P0 erzeugt wurden. 3 FIG. 3 shows a flow diagram of the method 300 performed by a training element to train a single model for pattern recognition and detection according to the exemplary embodiments. In step 310, the initial step to the algorithm (supplied by the user or the computer) is an initial training image and a region defining the pattern to be trained (a "region of interest"), also supplied by the user or the computer. The method 300 takes this input and in step 320 trains a first (initial) model (P 0 ) for pattern recognition and detection (“PatMax”) using training parameters in 325. In step 330 the system next iterates through the image set (at least a part or a subset of the remaining training images), the template model P 0 running on the image set supplied by the user or a computer and previously stored in a database. The system can search the model for all or part of the remaining training image set and stores the result hits, positions and matching region data. In step 340, the results are sorted by hit (and if ground truth is obtained, by accuracy). The ground truth can be user-supplied or computer-generated. At step 350 the method inputs the top image (N c -1) (where N c is a parameter that determines the number of images to input into the composite model training) and at step 360 trains a composite model using the position and range information from the results previously generated in the run of P 0 .

Wie in der US-Patentschrift Nummer 8.315.457 genauer beschrieben wird, wird Mehrfachbildertraining zur Mustererkennung und -Erfassung durchgeführt. Ein Maschinenvisionssystem erhält eine Vielzahl von („N“) Trainingsbildern. Ein Bild wird ausgewählt und die anderen (N-1) Bilder werden dann im Wesentlichen zu dem ausgewähltem Bild erfasst. Die Auswahl und Erfassung wird wiederholt, so dass jedes der N Bilder als das Grundlinienbild verwendet wird. Durch Wiederholung baut das Verfahren für jedes der N Bilder als Grundlinienbild eine Datenbasis von entsprochenen Merkmalen auf, die zum Aufbau eines Modells von Merkmalen genutzt werden kann, die unter den Bildern stabil sind. Dann werden Merkmale, die einen Satz von korrespondierenden Bildmerkmalen darstellen, zum Modell hinzugezählt. Um eine Datenbasis von entsprochenen Merkmalen aufzubauen, kann jedes der Merkmale mithilfe eines Grenzprüfungstools oder anderer herkömmlicher Techniken, entsprochen werden, um den Konturen im Maschinenvisionssystemen zu entsprechen. Beispielsweise sind die Merkmale, die für das Modell ausgewählt wurden, diejenigen, die die maximale Distanz unter den entsprechenden Merkmalen in jedem der Bilder, in denen das Merkmal erscheint, minimiert. Das Merkmal, das zum Modell hinzugefügt werden soll, kann einen Durchschnitt der Merkmale aus jedem der Bilder umfassen, in denen das Merkmal erscheint. Der Prozess geht weiter, bis jedes Merkmal, das eine Schwellenerfordernis erfüllt, erklärt ist. Das aus diesem Prozess folgende Modell stellt die stabilen Merkmale dar, die zumindest in der Schwellennummer der N Trainingsbilder gefunden wird. Dieses Verfahren (beschrieben in der Patentschrift '457) identifiziert die Merkmale, die genügend durch den Beweis der Trainingsbilder, dass sie stabile Merkmale sind, unterstützt werden. Das Modell kann dann verwendet werden, um eine Ausrichtung, Suche oder Prüfungstool mit dem Satz von Merkmalen zu trainieren.Like in the U.S. Patent Number 8,315,457 As described in more detail, multi-image training is performed for pattern recognition and detection. A machine vision system receives a large number of (“N”) training images. One image is selected and the other (N-1) images are then captured substantially to the selected image. The selection and acquisition is repeated such that each of the N images is used as the baseline image. By iteration, for each of the N images as a baseline image, the method builds a database of corresponding features that can be used to build a model of features that are stable among the images. Then features representing a set of corresponding image features are added to the model. To build a database of matched features, each of the features can be matched using a boundary checking tool or other conventional techniques to match the contours in machine vision systems. For example, the features chosen for the model are those that minimize the maximum distance among the corresponding features in each of the images in which the feature appears. The feature to be added to the model may include an average of the features from each of the images in which the feature appears. The process continues until each feature that meets a threshold requirement is declared. The model resulting from this process represents the stable features found at least in the threshold number of the N training images. This method (described in the '457 patent) identifies those features that are sufficiently supported by the evidence from the training images that they are stable features. The model can then be used to train an alignment, search, or validation tool with the set of features.

Mit Bezug auf 3 kann der Benutzer zusätzliche Modelltrainingsparameter 355 liefern, die bestimmen, welcher Teil der Nc Trainingsbilder ein spezielles Merkmal enthalten muss, damit es in das Ausgabemodell einfließt. Der Teil kann beispielsweise ein Prozentsatz sein, wie etwa 80% bis 90%, doch innerhalb des Durchschnittswissens und abhängig von der speziellen Anwendung, ist dies höchst variabel. Der Benutzer kann auch eine Näherungsschwelle für Merkmalen aus unterschiedlichen Trainingsbildern, die als Treffer angesehen werden, bestimmen.Regarding 3 the user can supply additional model training parameters 355 that determine which part of the Nc training images must contain a particular feature in order for it to be included in the output model. For example, the portion may be a percentage, such as 80% to 90%, but within the skill of the art and depending on the particular application, this is highly variable. The user can also determine a proximity threshold for features from different training images to be considered hits.

Trainieren eines Mehrfachmodells zur Mustererkennung und -ErfassungTrain a multiple model for pattern recognition and capture

4 zeigt ein Flussdiagramm eines Verfahrens 400 zum Trainieren eines Mehrfachmodells zur Mustererkennung und -Erfassung und misst gemäß der Ausführungsbeispiele Leistung eines gerade trainierten Ausgabemodells. In Schritt 410 sind die Initialeingaben für das Verfahren (im Allgemeinen von einem Benutzer, können aber auch von einem Computer geliefert werden): ein Trainingsbild (I0), ein Bereich R0, der das Ausmaß eines Musters innerhalb des Bildes I0 bestimmt, der Anfang des Musters (O0) innerhalb des Trainingsbildes I0 und ein Satz von Trainingsbildern {I1, I2, ...IN}, der das Spektrum des Aussehens des interessierenden Musters zeigt. 4 FIG. 4 shows a flow chart of a method 400 for training a multiple model for pattern recognition and detection and measuring performance of an output model being trained, according to the embodiments. At step 410, the initial inputs to the method are (generally from a user but may also be provided by a computer): a training image (I 0 ), a region R 0 that determines the extent of a pattern within image I 0 , the beginning of the pattern (O 0 ) within the training image I 0 and a set of training images {I 1 , I 2 ,...I N } showing the spectrum of appearance of the pattern of interest.

Das Verfahren verwendet diese Eingaben in Schritt 420, um ein erstes zusammengesetztes „PatMax“-Mustermodell (PCMOUT0) mithilfe des oben beschriebenen Verfahrens zum Trainieren eines einzelnen Modells zur Mustererkennung und -Erfassung, das in 3 gezeigt ist, gemäß den Parametern 422 des zusammengesetzten Modells zu trainieren. Die Trainingsparameter 424 werden beim Training des Ausgabemodells (TPOUT) verwendet und sind restriktiv genug, um sicher zu stellen, dass das trainierte Modell keine hohe Trefferquote von falschen Suchergebnissen bei der Suche innerhalb des vollen Satzes von Trainingsbildern erzeugt. Wenn der Mehrfachmodellrahmen der Mustererkennung und -Erfassung eingesetzt wird, dann wird PCMOUT 0 zum Ausgabemehrfachmodell PMMOUT hinzugezählt. Wird der Mehrfachmodellrahmen nicht verwendet, dann wird er als das erste Modell zur Mustererkennung und -Erfassung des Ausgabesatzes gespeichert (aus Gründen der Anschaulichkeit wird dies auch PMMOUT genannt).The method uses these inputs in step 420 to build a first composite "PatMax" pattern model (PCM OUT 0) using the method described above for training a single model for pattern recognition and detection, described in 3 is shown to train according to the parameters 422 of the composite model. The training parameters 424 are used in training the output model (TP OUT ) and are restrictive enough to ensure that the trained model does not produce a high incidence of false search results when searching within the full set of training images. If the multi-model framework of pattern recognition and detection is employed, then PCM OUT 0 is added to the output multi-model PMM OUT . If the multi-model framework is not used, then it is stored as the first model for pattern recognition and detection of the output set (this is also called PMM OUT for the sake of clarity).

In Schritt 430 verwendet das Verfahren als Nächstes die gleichen Eingaben (aus 410), um ein unterschiedliches (zweites) Modell PCMCAND0 zur Mustererkennung und -Erfassung mithilfe des vorher beschriebenen Algorithmus, der in 3 gezeigt wurde, für ein einzelnes Modell zur Mustererkennung und -Erfassung zu trainieren. Die Mustertrainingsparameter TPCAND 434, die bei diesem Verfahren eingesetzt werden, sind auch diejenigen zum Trainieren eines Modells, das ausschließlich dazu benutzt wird, Kandidaten zum Trainieren weiterer zusammengesetzter Ausgabemodelle zu finden. Diese Trainingsparameter 434 sollten lockerer sein als diejenigen, die zur Erzeugung des Ausgabemodells eingesetzt werden. Die herrschende Voraussetzung ist, dass PCMCAND0 in der Lage ist, ein vielfältigeres Spektrum von Trainingskandidaten vorzuschlagen als es mithilfe des restriktiver trainierten PCMOUT möglich wäre, doch alle falschen Suchergebnisse können vom Benutzer oder automatisch aufgrund von bekannten „Ground Truths“ zurückgewiesen werden. Beim Ausgabemodell kann PCMCAND0 entweder zu einem Mehrfachmodell PMMCAND zur Mustererkennung oder zu einem anderen Typen der Modellansammlung hinzugefügt werden oder in diesem gespeichert werden.Next, at step 430, the method uses the same inputs (from 410) to create a different (second) model PCM CAND 0 for pattern recognition and detection using the algorithm previously described, shown in FIG 3 has been shown to train for a single model for pattern recognition and capture. The pattern training parameters TP CAND 434 used in this method are also those for training a model that will be used exclusively to find candidates for training other composite output models. These training parameters 434 should be looser than those used to generate the output model. The prevailing premise is that PCM CAND 0 is able to suggest a more diverse range of training candidates than would be possible using the more restrictively trained PCM OUT , but any false search results may be rejected by the user or automatically based on known ground truths. In the output model, PCM CAND 0 can be added to or stored in either a multiple model PMM CAND for pattern recognition or another type of model collection.

Leistungsmessungperformance measurement

Bei Schritt 440 muss das System vor dem Beginn des Verfahrens zur Suche von Musterkandidaten und des Trainierens derjenigen, die als „Beste“ (höchste Trefferquote oder am passendsten) angesehen werden, zuerst die Leistung des gerade trainierten Ausgabemodells, d.h. PMMOUT messen. Um die Leistung zu messen, lässt das Verfahren das Modell über den ganzen Testsatz der Bilder laufen und berechnet eine kombinierte Trefferquote, die auf 0 initialisiert wird. Wenn PMMOUT das Muster in einem Bild mit einer Trefferquote (der Trefferquotenbereich liegt zwischen 0 und 1) größer als die vom Benutzer definierte Vertrauensschwelle findet, dann wird dieser Treffer zum kombinierten Ergebnis hinzugefügt. Wenn allerdings PMMOUT das Muster nicht in einem Bild mit einer Trefferquote größer als die vom Benutzer definierte Vertrauensschwelle findet, wird 1 vom kombinierten Ergebnis abgezogen. Andere, ähnliche Ergebnisfunktionen können von Benutzern mit durchschnittlichem Wissen umgesetzt werden und können eine Messung der Ausrichtungsgenauigkeit einschließen, falls „Ground Truth“-Daten vorliegen.At step 440, prior to beginning the process of finding pattern candidates and training those considered "best" (highest match rate or best fit), the system must first measure the performance of the output model being trained, ie, PMM OUT . To measure performance, the method runs the model over the entire test set of images and calculates a combined hit rate, initialized to 0. If PMM OUT finds the pattern in an image with a match score (the match score range is from 0 to 1) greater than the user-defined confidence threshold, then that match is added to the combined result. However, if PMM OUT does not find the pattern in an image with a match ratio greater than the user-defined confidence threshold, 1 is subtracted from the combined result. Other similar result functions can be implemented by ordinary users and may include a measurement of alignment accuracy if ground truth data is available.

Nach der Durchführung der Messung können die verbliebenen Schritte des Verfahrens immer wieder wiederholt werden, und werden so mit der Variablen ,t' bezeichnet. Die 5 und 6 zeigen Flussdiagramme von Verfahren zum Vorschlagen von Kandidatenmodellen gemäß der Ausführungsbeispiele. In 5 hat das Verfahren 500 die Aufgabe, Kandidaten zur Addition zur Ansammlung der Ausgabemodelle PMMOUT(t) vorzuschlagen und einzureihen. In 510 schließen die Eingaben zur Wiederholung (t) Kandidaten und Mehrfachausgabemodelle PMMCAND(t), PMMOUT(t) ein, wobei PMM CAND ( t ) enth a ¨ lt { PCM CAND ( 0 ) , PCM CAND ( 1 ) , , PCM CAND ( t ) }

Figure DE102014108924B4_0001
und PMM OUT ( t ) enth a ¨ lt { PCM OUT ( 0 ) , PCM OUT ( 1 ) , , PCM OUT ( t ) }
Figure DE102014108924B4_0002
After the measurement has been performed, the remaining steps of the method can be repeated over and over again, and are thus denoted by the variable 't'. the 5 and 6 FIG. 12 shows flow charts of methods for proposing candidate models according to the exemplary embodiments. In 5 the task of the method 500 is to propose and rank candidates for addition to the collection of output models PMM OUT (t). At 510, the inputs to repeat (t) include candidate and multiple output models PMM CAND (t), PMM OUT (t), where PMM CAND ( t ) incl a ¨ according to { PCM CAND ( 0 ) , PCM CAND ( 1 ) , ... , PCM CAND ( t ) }
Figure DE102014108924B4_0001
and PMM OUT ( t ) incl a ¨ according to { PCM OUT ( 0 ) , PCM OUT ( 1 ) , ... , PCM OUT ( t ) }
Figure DE102014108924B4_0002

Im Verfahrensschritt 520 schlägt das Mehrfachkandidatenmodell PMMCAND Kandidaten zur Addition zur Ausgabemodellansammlung PMMOUT(t) vor und reiht sie ein. Um das zu erreichen, lässt man das Mehrfachkandidatenmustermodell PMMCAND(t) auf jedem Trainingsbild Ii laufen. Kommt ein annehmbares Ergebnis zurück (das heißt, eine Stelle ist gefunden, wo das Modell eine höhere Trefferquote erzielt als eine vom Benutzer bestimmte Akzeptanzschwelle), dann werden in Schritt 520 der passende Bereich Ri und Ursprung Oi verwendet, um ein zusammengesetztes Kandidatenmustermodell PCMOUT (i) zu trainieren (wie oben beschrieben unter Beachtung des Trainings eines einzelnen Modells für PMMOUT(t)). Daher wird das zusammengesetzte Kandidatenmodell aus dem Kandidatenbereich Ri vom Bild Ii un den entsprechenden Bereichen der am besten passenden Nc-1 Bilder dieses Kandidatenbildbereiches (Ri des Bildes Ii) trainiert.In step 520, the multiple candidate model PMM CAND proposes and ranks candidates for addition to the output model collection PMM OUT (t). To achieve this, the multiple candidate pattern model PMM CAND (t) is run on each training image I i . If an acceptable result is returned (that is, a location is found where the model scores higher than a user-determined acceptance threshold), then in step 520 the matching region Ri and origin Oi are used to create a composite candidate pattern model PCM OUT (i) (as described above considering single model training for PMM OUT (t)). Therefore, the composite candidate model is trained from the candidate region R i of image I i and the corresponding regions of the best matching N c -1 images of this candidate image region (R i of image I i ).

In Schritt 530 läuft der Prozess durch den Satz von zusammengesetzten Kandidatenmustermodellen und fügt ihn für jeden zuerst zur Ausgabeansammlung PMMOUT(t)→PMMOUT(t), hinzu, misst dann auf gleiche Weise wie oben in Leistungsmessung beschrieben seine Leistung. Nachdem die Trefferquote für die vorgeschlagene Ausweitung zum Mehrfachausgabemodell PMMOUT(t)', erhalten wurde, wird PCMOUT (i) von PMMOUT (t), → PMMOUT(t) entfernt. In Schritt 534 werden die Kandidaten entsprechend dieser Treffer sortiert (das heißt der PCMOUT (i)).In step 530, the process walks through the set of composite candidate pattern models and for each first adds it to the output collection PMM OUT (t)→PMM OUT (t) , then measures its power in the same manner as described in Power Measurement above. After the hit rate for the proposed extension to the multiple output model PMM OUT (t)' has been obtained, PCM OUT (i) is removed from PMM OUT (t) , → PMM OUT (t). In step 534, the candidates are sorted according to these hits (i.e. the PCM OUT (i) ).

Am Ende des Verfahrens 500 hat das System eine Ansammlung von zusammengesetzten Kandidatenmustermodellen in Schritt 540, die alle Trainingsbilder abdecken, bei denen PMMCAND (t) ein annehmbares Ergebnis finden könnte. Das Verfahren stuft diese Modelle entsprechend ihres Grades an Verbesserung an Abdeckung ein, den jedes an die Ansammlung von Ausgabemustermodellen (oder Mehrfachmodellen) PMMOUT(t) liefert. Werden keine Kandidaten gefunden, um die Trefferquote um mehr als eine vom Benutzer definierte Menge zu verbessern, dann kann angenommen werde, dass ein Haltekriterium erfüllt wurde.At the end of the method 500, the system has a collection of composite candidate pattern models in step 540 covering all training images where PMM CAND (t) could find an acceptable result. The method ranks these models according to the degree of improvement in coverage that each provides to the collection of output pattern models (or multiple models) PMM OUT (t). If no candidates are found to improve the hit rate by more than a user-defined amount, then a holding criterion can be assumed to have been met.

6 zeigt ein Verfahren 600 zum Vorschlagen von Kandidatenmodellen und zur Ausgabe von Mehrfachmustermodellen gemäß der Ausführungsbeispiele. In Schritt 620 schlägt das Verfahren dem Benutzer den Kandidaten mit der höchsten Trefferquote vor (beispielsweise durch Anzeigen des interessierenden Bereiches des Kandidaten innerhalb des Kandidatenbildes Ii). In Schritt 622 kann der Benutzer den Kandidaten annehmen oder zurückweisen, oder dem Computer kann gleichermaßen der Kandidat mit der höchsten Trefferquote überlassen werden und der Computer nimmt den Kandidaten aufgrund einer bekannten „Ground Truth“ an oder weist ihn zurück. Wird der Kandidat angenommen, dann kann der Benutzer in Schritt 630 die Gelegenheit bekommen, den Ursprung des neuen Modells für den Fall von leichten Ausrichtungsfehlern in der Ausgabe von PMMCAND(t) anzupassen. Wird der Kandidat in Schritt 624 zurückgewiesen, dann wird der Topkandidat PCMOUT(top) verworfen, und das System schlägt den nächsten Kandidaten in der bestellten Liste vor. 6 FIG. 6 shows a method 600 for proposing candidate models and for outputting multi-pattern models according to example embodiments. In step 620, the method suggests the candidate with the highest match rate to the user (e.g., by displaying the candidate's region of interest within the candidate image I i ). In step 622, the user can accept or reject the candidate, or similarly the computer can be given the candidate with the highest hit rate and the computer accepts or rejects the candidate based on known ground truth. If the candidate is accepted, then in step 630 the user may be given the opportunity to adjust the origin of the new model in case of slight alignment errors in the output of PMM CAND (t). If the candidate is rejected in step 624, then the top candidate PCM OUT (top) is discarded and the system proposes the next candidate in the ordered list.

Wird der Kandidat angenommen, dann wird bei Schritt 640 das angenommene Kandidatenmodell PCMOUT(accepted) zur gegenwärtigen Ansammlung von Ausgabemodellen PMMOUT(t) -> PMMOUT(t+1) hinzugefügt. Die Ansammlung von Kandidatensuchmodellen (oder Mehrfachmodellen) sollte nun wünschenswerter Weise mit einem ähnlichen Modell auf den neuesten Stand gebracht werden. In Schritt 650 wird das Kandidatenmodell PCMCAND (accepted) vom Bereich Raccepted des Bilds Iaccepted mithilfe von Trainingsparametern TPCAND trainiert. PCMCAND (accepted) wird nun zu PMMCAND(t) → PMMCAND(t+1) in Schritt 660 hinzugefügt. Die Ausgaben zur Wiederholung (t) in Schritt 670 sind das Mehrfachkandidatenmodell PMMCAND(t+1) und das Mehrfachausgabemodell PMMOUT(t+1).If the candidate is accepted, then at step 640 the accepted candidate model PCM OUT ( accepted ) is added to the current collection of output models PMM OUT (t) -> PMM OUT (t+1). The aggregation of candidate search models (or multiple models) should now desirably be updated with a similar model. In step 650 the candidate model PCM CAND (accepted) is trained by the area R accepted of the image I accepted using training parameters TP CAND . PCM CAND (accepted) is now added to PMM CAND (t) → PMM CAND (t+1) in step 660. The outputs to repeat (t) in step 670 are the multiple candidate model PMM CAND (t+1) and the multiple output model PMM OUT (t+1).

Die verschiedenen Ausführungsbeispiele sorgen für die Erzeugung eines Modells zur Mustererkennung und -Erfassung, das jedes Trainingsbild einer Vielzahl von Trainingsbildern durchläuft, um ein Modell zu liefern, das die komplette Datenbasis von Trainingsbildern überspannt (das heisst gültig ist). Das verbessert Stabilität und Effizienz des laufenden Systems.The various embodiments provide for the generation of a pattern recognition and detection model that iterates through each of a plurality of training images to yield a model that spans (i.e., is valid) the entire database of training images. This improves the stability and efficiency of the running system.

Verschiedene Varianten und Zusätze können gemacht werden, ohne vom Sinn und Inhalt dieser Erfindung abzuweichen. Merkmale jeder der verschiedenen oben beschriebenen Ausführungsformen können mit Merkmalen von anderen beschriebenen Ausführungsformen kombiniert werden, die passend sind, um eine Vielzahl neuer Kombinationen von Merkmalen zusammen mit neuen Ausführungsformen zu liefern. Während weiterhin das oben Gesagte eine Anzahl von verschiedenen Ausführungsformen der Vorrichtung und des Verfahrens der vorliegenden Erfindung beschreibt, ist das, was hier beschrieben wurde, nur ein Beispiel der Anwendung der Grundlagen der vorliegenden Erfindung. Die Begriffe „Verfahren“ und/oder „Pozessor“, wie sie beispielsweise hier benutzt werden, sollten weit gefasst werden, um eine Bandbreite von Funktionen, die auf elektronischer Hardware und/oder Software beruhen, zu umfassen. Auch verschiedene Begriffe von Richtung und Orientierung, die hier benutzt wurden, wie etwa „senkrecht“, „waagerecht“, „auf, „unter“, „unten“, „oben“, Seite“, „vorne“, „hinten“, „links“, „rechts“ und dergleichen, werden nur als relative Übereinkunft und nicht als absolute Orientierung mit Bezug auf ein festes Koordinatensystem, wie etwa Schwerkraft, verwendet. Darüber hinaus kann ein dargestelltes Verfahren oder ein Prozessor mit anderen Verfahren und/oder Prozessoren kombiniert werden oder in verschiedene Hilfsverfahren oder -Prozessoren unterteilt werden. Solche Hilfsverfahren und/oder -Prozessoren können gemäß der Ausführungsbeispiele hier auf verschiedene Weise kombiniert werden. Ebenso wird ausdrücklich in Betracht gezogen, dass alle Funktionen, Verfahren und /oder Prozessoren hier mithilfe elektronischer Hardware, Software, die aus einem nicht transitorischen, computerlesbarem Medium von Programmanweisungen oder einer Kombination von Hardware und Software besteht, umgesetzt werden können. Darüber hinaus wird in Betracht gezogen, dass einige oder alle Verarbeitungsaufgaben des Visionssystems entweder im Hauptmodul oder in einem eigenen Prozessor (z. B. einem Server oder PC), der durch das Schnittstellenmodul wirksam mit dem Hauptmodul über eine drahtlose oder eine Drahtkommunikationsverbindung (Netzwerk) verbunden ist, ausgeführt werden können.Various variations and additions can be made without departing from the spirit and spirit of this invention. Features of each of the various embodiments described above may be combined with features of other described embodiments as appropriate to provide a variety of new combinations of features along with new embodiments. Furthermore, while the above describes a number of different embodiments of the apparatus and method of the present invention, what has been described herein is but one example of the application of the principles of the present invention. The terms "method" and/or "processor", for example as used herein, should be broadly defined to encompass a range of electronic hardware and/or software based functions. Also various terms of direction and orientation used here, such as "vertical", "horizontal", "up", "under", "below", "above", " side", "front", "back", "Left", "right" and the like are used only as a relative convention and not as an absolute orientation with respect to a fixed coordinate system such as gravity. Furthermore, an illustrated method or processor may be combined with other methods and/or processors or broken down into various auxiliary methods or processors. Such auxiliary methods and/or processors can be combined in various ways according to the exemplary embodiments herein. Likewise, it is expressly contemplated that all functions, methods, and/or processors herein may be implemented using electronic hardware, software consisting of a non-transitory computer-readable medium of program instructions, or a combination of hardware and software. In addition, it is contemplated that some or all of the processing tasks of the vision system may reside either in the main module or in a dedicated processor (e.g., a server or PC) that is operably communicated through the interface module with the main module via a wireless or wired communications link (network). connected can be executed.

Claims (26)

Ein Verfahren zum Trainieren eines Modells zum Erkennen und Erfassen eines Musters in einem Maschinensichtsystem, wobei das Verfahren die folgenden Schritte umfasst: - Bereitstellung eines oder mehrerer Initialtrainingsbilder mit einem Bereich, der ein Muster, das trainiert werden soll, bestimmt, wobei das eine oder die mehreren Trainingsbilder von einer Datenbank geliefert werden, die eine Vielzahl von Trainingsbildern enthält; - Trainieren eines ersten Mustermodells aus dem einen oder mehreren Initialtrainingsbildern; - Iterieren über die verbliebenen Bilder und Auswahl der hoch bewerteten Bilder als Eingabe zum Modelltraining; und - Ausgabe eines trainierten Mustermodells, das Merkmale einschließt, die eine vorher bestimmte Anzahl der Vielzahl von Trainingsbildern gemeinsam haben, wobei das trainierte Mustermodell sich vom ersten Mustermodell unterscheidet.A method of training a model to recognize and capture a pattern in a machine vision system, the method comprising the steps of: - providing one or more initial training images having a region defining a pattern to be trained, the one or more training images being provided from a database containing a plurality of training images; - training a first sample model from the one or more initial training images; - Iterate over the remaining images and select the high-scoring images as input to model training; and - outputting a trained pattern model including features common to a predetermined number of the plurality of training images, the trained pattern model being different from the first pattern model. Das Verfahren gemäß Anspruch 1, wobei der Schritt des Iterierens das Ausführen des ersten Mustermodells einschließt, um jedes Bild zu bewerten.The procedure according to claim 1 , wherein the step of iterating includes executing the first template model to evaluate each image. Das Verfahren gemäß Anspruch 1, wobei das erste Mustermodell mithilfe eines ersten Satzes von Trainingsparametern und ein zweites Mustermodell mithilfe eines zweiten Satzes von Trainingsparametern trainiert wird.The procedure according to claim 1 , wherein the first pattern model is trained using a first set of training parameters and a second pattern model is trained using a second set of training parameters. Das Verfahren gemäß Anspruch 1, wobei die Metrik, die verwendet wird, um Bilder zu bewerten, daraus besteht, eine kombinierte Bewertung, welche auf Null initialisiert wird, zu berechnen, und wenn das erste Mustermodell bestimmt, dass das Muster ein Bild mit einer Bewertung ist, die größer als eine benutzerdefinierte Vertrauensschwelle ist, dann wird diese Bewertung zur kombinierten Bewertung hinzugerechnet, und wenn das erste Kandidatenmustermodell das Muster nicht in einem Bild mit einer Bewertung findet, die größer als eine benutzerdefinierte Vertrauensschwelle ist, dann wird 1 von der kombinierten Bewertung abgezogen.The procedure according to claim 1 , where the metric used to rate images consists of computing a combined score, which is initialized to zero, and when the first template model determines that the template is an image with a rating greater than is a user-defined confidence level, then that score is added to the combined score, and if the first candidate pattern model does not find the pattern in an image with a score greater than a user-defined confidence level, then 1 is subtracted from the combined score. Das Verfahren gemäß Anspruch 1, wobei jedes Merkmal im trainierten Ausgabemuster in annähernd 80% - 90% der Trainingsbilder erscheint.The procedure according to claim 1 , where each feature in the trained output pattern appears in approximately 80% - 90% of the training images. Das Verfahren gemäß Anspruch 1, wobei der Bereich, der das Muster, das trainiert werden soll, bestimmt, für jedes Bild durch eine vorherbestimmte „Ground Truth“ gegeben ist.The procedure according to claim 1 , where the region that determines the pattern to be trained is given for each image by a predetermined ground truth. Das Verfahren gemäß Anspruch 6, wobei die vorherbestimmte „Ground Truth“ für jedes Bild über das Ausführen des ersten Mustermodells gefunden wird.The procedure according to claim 6 , where the predetermined ground truth is found for each frame by running the first sample model. Das Verfahren gemäß Anspruch 1, weiter umfassend den Schritt des Trainierens eines zweiten Kandidatenmustermodells mit einem zweiten Satz Mustertrainingsparameter, und des Iterierens des zweiten Kandidatenmustermodells über die verbleibenden Trainingsbilder, die in der Datenbank enthalten sind, und das Bewerten von Bewertungen, Stellungen und Übereinstimmungsbereichsdaten für das zweite Kandidatenmustermodell.The procedure according to claim 1 , further comprising the step of training a second candidate pattern model with a second set of pattern training parameters, and iterating the second candidate pattern model over the remaining training images contained in the database, and evaluating scores, poses and match region data for the second candidate pattern model. Das Verfahren gemäß Anspruch 1, wobei der Schritt des Trainierens des ersten Mustermodells weiter das Bewerten von Bewertungen, Stellungen und Übereinstimmungsbereichsdaten umfasst.The procedure according to claim 1 , wherein the step of training the first template model further comprises evaluating scores, ranks, and region of agreement data. Das Verfahren gemäß Anspruch 1, wobei das erste Kandidatenmustermodell ein zusammengesetztes Modell umfasst.The procedure according to claim 1 , wherein the first candidate pattern model comprises a composite model. Das Verfahren gemäß Anspruch 1, wobei das eine oder die mehreren Trainingsbilder, die von der Datenbank zur Verfügung gestellt werden, von einem Computer ausgewählt werden.The procedure according to claim 1 , wherein the one or more training images provided by the database are selected by a computer. Das Verfahren gemäß Anspruch 1, wobei das trainierte Mustermodell eingesetzt wird, um eine Ausrichtung, ein Such- oder Sichtprüfungsprogramm während des laufenden Betriebes des Maschinensichtsystems auszuführen.The procedure according to claim 1 , wherein the trained pattern model is used to execute an alignment, search or vision inspection program during ongoing operation of the machine vision system. Das Verfahren gemäß Anspruch 1, wobei ein Musterursprung als Eingabe zum Training des ersten Mustermodells, zusätzlich zum Trainingsbild und -Bereich, bestimmt wird.The procedure according to claim 1 , where a pattern origin is determined as input to training the first pattern model, in addition to the training image and region. Ein Verfahren zum Trainieren eines Mehrfachmodells zum Erkennen und Erfassen von Mustern, wobei das Verfahren die Schritte umfasst: - Lieferung mindestens eines Anfangstrainingsbildes mit einem Bereich, der ein Muster, das trainiert werden soll, bestimmt, wobei das mindestens eine Bild von einer Datenbank geliefert wird, die eine Vielzahl von Trainingsbildern enthält; - Trainieren eines ersten Mustermodells aus dem Initialtrainingbild und -Bereich und dessen Addition zum ausgegebenen Mehrfachmodell; - Iterieren über die verbliebenen Traingsbilder, so dass für jedes Bild (i) ein zusätzliches Mustermodell trainiert werden kann, (ii) eine Metrik für die Kombination des ersten und zusätzlichen Modells über die verbliebenen Trainingsbilder in der Datenbank bewertet werden kann; - Addition des hoch bewerteten zusätzlichen Mustermodells oder der -Modelle zum ausgegebenen Mehrfachmodell.A method of training a multiple model to recognize and capture patterns, the method comprising the steps of: - providing at least one initial training image having a region defining a pattern to be trained, said at least one image being provided from a database containing a plurality of training images; - training a first sample model from the initial training image and region and adding it to the output multiple model; - Iterate over the remaining training images such that for each image (i) an additional pattern model can be trained, (ii) a metric for the combination of the first and additional models can be evaluated over the remaining training images in the database; - Addition of the highly rated additional sample model or models to the output multiple model. Das Verfahren gemäß Anspruch 14, wobei das Trainieren des ersten Mustermodells entsprechend einem ersten Satz von Trainingsparametern für Mustererkennung und -Erfassung ausgeführt wird, und das Trainieren des zweiten Mustermodells gemäß eines zweiten Satzes von Trainingsparametern zur Mustererkennung und -Erfassung ausgeführt wird.The procedure according to Claim 14 , wherein the training of the first pattern model is performed according to a first set of pattern recognition and recognition training parameters, and the training of the second pattern model is performed according to a second set of pattern recognition and recognition training parameters. Das Verfahren gemäß Anspruch 14, wobei das erste und/oder zweite Mustermodell ein zusammengesetztes Modell umfasst.The procedure according to Claim 14 , wherein the first and/or second pattern model comprises a composite model. Das Verfahren gemäß Anspruch 14, wobei das zweite Mustermodell durch Lockerung der Freiheitsgrade trainiert wird, wenn Kandidatenbereiche mithilfe des ersten Modells, das trainiert werden soll, erzeugt werden, und dann Verschärfung der Freiheitsgrade, wenn das zweite Mustermodell ausgeführt wird, um festzustellen, ob sich eine Metrik verbessert.The procedure according to Claim 14 , where the second pattern model is trained by relaxing the degrees of freedom when generating candidate regions using the first model to be trained, and then tightening the degrees of freedom when running the second pattern model to see if a metric improves. Das Verfahren gemäß Anspruch 17, wobei die Metrik die Bewertung oder die Anzahl an Merkmalsinstanzen umfasst.The procedure according to Claim 17 , where the metric includes the score or the number of feature instances. Das Verfahren gemäß Anspruch 17, wobei ein zweites Mustermodell aus dem Initialtrainingsbild und dem bestimmten Bereich trainiert wird, aber mit unterschiedlichen Trainingsparametern, so dass das zweite Mustermodell mit höherer Wahrscheinlichkeit verzerrte, verrauschte oder auf irgendeine Weise veränderte Instanzen des Originalmusters findet; Vorschlagen von Kandidatenbereichen mithilfe des zweiten Mustermodells zum Einsatz beim Trainieren zusätzlicher Mustermodelle.The procedure according to Claim 17 , where a second pattern model is trained from the initial training image and the specific region, but with different training parameters, so that the second pattern model is more likely to find instances of the original pattern that are distorted, noisy, or altered in any way; Suggesting candidate regions using the second pattern model for use in training additional pattern models. Das Verfahren gemäß Anspruch 14, wobei ein Musterursprung eine zusätzliche Eingabe zum Mustermodelltraining ist.The procedure according to Claim 14 , where a pattern origin is an additional input to pattern model training. Das Verfahren gemäß Anspruch 14, wobei das zusätzliche hoch bewertete Mustermodell zuerst einem Benutzer vorgestellt wird, damit er vor einer möglichen Hinzufügung zum ausgegebenen Mehrfachmodell annimmt, ablehnt oder überarbeitet.The procedure according to Claim 14 , wherein the additional high-scoring pattern model is first presented to a user for acceptance, rejection, or revision prior to possible addition to the output multiple model. Das Verfahren gemäß Anspruch 14, wobei der Benutzer den zusätzlichen Musterursprung ändern kann, bevor er zum ausgegebenen Mehrfachmodell hinzugefügt wird.The procedure according to Claim 14 , where the user can change the additional pattern origin before it is added to the output multi-model. Das Verfahren gemäß Anspruch 14 oder 17, wobei der Trainingsprozess für das zusätzliche Mustermodell iterativ wiederholt wird, so dass sich das Mehrfachmodell ausweiten kann, damit es mehr als 2 Mustermodelle enthält.The procedure according to Claim 14 or 17 , where the training process is iteratively repeated for the additional pattern model, allowing the multiple model to expand to include more than 2 pattern models. Das Verfahren gemäß Anspruch 23, wobei eine Stoppbedingung angewendet wird; wobei die Stoppbedingung von der relativen Verbesserung der Metrik abgeleitet ist.The procedure according to Claim 23 , where a stopping condition is applied; where the stopping condition is derived from the relative improvement of the metric. Das Verfahren gemäß Anspruch 14, wobei jedoch eingegebene „Ground Truths“ für jedes der Vielzahl von Bildern in der Datenbank der Trainingsbilder verwendet werden können, um die Positionen der Kandidatenmodelle für den Zusatz zum Mehrfachmodell anzunehmen oder zurückzuweisen und/oder zu korrigieren.The procedure according to Claim 14 , however, ground truths entered for each of the plurality of images in the training image database may be used to accept or reject and/or correct the positions of the candidate models for addition to the multiple model. Ein System zur Erzeugung von Modellen zur Erkennung und Erfassung von Mustern, wobei das System umfasst: - Eine Datenbank, die eine Vielzahl von Traingsbildern enthält, wobei mindestens ein Bild einen Bereich aufweist, der ein Muster, das trainiert werden soll, bestimmt; - Ein Traingselement, das ein Modell zur Initialmustererkennung und -Erfassung dadurch trainiert, dass es das Modell zur anfänglichen Mustererkennung und - Erfassung über die Mehrzahl von Traingsbildern iteriert und Bewertungen, Stellungen und Übereinstimmungsbereichsdaten bewertet, um ein trainiertes Modell zu liefern; und - ein Element zur Leistungsmessung, das die Leistung des trainierten Modells über der Vielzahl von Trainingsbildern misst.A system for generating models for pattern recognition and capture, the system comprising: - a database containing a plurality of training images, at least one image having an area defining a pattern to be trained; - a training element that trains an initial pattern recognition and detection model by iterating the initial pattern recognition and detection model over the plurality of training images and evaluating scores, poses and region of agreement data to provide a trained model; and - a performance measurement element that measures the performance of the trained model over the plurality of training images.
DE102014108924.3A 2013-06-28 2014-06-25 A semi-supervised method for training an auxiliary model for multi-pattern recognition and detection Active DE102014108924B4 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361841142P 2013-06-28 2013-06-28
US61/841,142 2013-06-28
US13/955,120 US9679224B2 (en) 2013-06-28 2013-07-31 Semi-supervised method for training multiple pattern recognition and registration tool models
US13/955,120 2013-07-31

Publications (2)

Publication Number Publication Date
DE102014108924A1 DE102014108924A1 (en) 2015-01-15
DE102014108924B4 true DE102014108924B4 (en) 2022-07-21

Family

ID=52107466

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014108924.3A Active DE102014108924B4 (en) 2013-06-28 2014-06-25 A semi-supervised method for training an auxiliary model for multi-pattern recognition and detection

Country Status (1)

Country Link
DE (1) DE102014108924B4 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110895691B (en) * 2018-09-12 2023-06-23 阿里巴巴集团控股有限公司 Image processing method and device and electronic equipment
CN109977815A (en) * 2019-03-13 2019-07-05 上海商汤智能科技有限公司 Image quality evaluating method and device, electronic equipment, storage medium
CN113706475B (en) * 2021-08-06 2023-07-21 福建自贸试验区厦门片区Manteia数据科技有限公司 Confidence analysis method and device based on image segmentation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8144976B1 (en) 2010-12-06 2012-03-27 Seiko Epson Corporation Cascaded face model
US8315457B2 (en) 2007-12-21 2012-11-20 Cognex Corporation System and method for performing multi-image training for pattern recognition and registration
US8457390B1 (en) 2008-10-10 2013-06-04 Cognex Corporation Method and apparatus for training a probe model based machine vision system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8315457B2 (en) 2007-12-21 2012-11-20 Cognex Corporation System and method for performing multi-image training for pattern recognition and registration
US8457390B1 (en) 2008-10-10 2013-06-04 Cognex Corporation Method and apparatus for training a probe model based machine vision system
US8144976B1 (en) 2010-12-06 2012-03-27 Seiko Epson Corporation Cascaded face model

Also Published As

Publication number Publication date
DE102014108924A1 (en) 2015-01-15

Similar Documents

Publication Publication Date Title
DE102011106050B4 (en) Shadow removal in an image captured by a vehicle-based camera for detection of a clear path
EP3103060A1 (en) 2d image analyzer
DE102016013274A1 (en) IMAGE PROCESSING DEVICE AND METHOD FOR RECOGNIZING AN IMAGE OF AN OBJECT TO BE DETECTED FROM ENTRY DATA
DE112016004266T5 (en) Procedure for facial alignment
DE102016206010B4 (en) Systems and methods for classifying and aligning highly similar or self-similar patterns
DE102015210442A1 (en) Inspection device, inspection procedure and program
DE102019100575A1 (en) METHOD AND SYSTEM FOR PRODUCING A AREA PICTURE USING LOW DEPTH DATA
DE102018102688A1 (en) Image processing apparatus, image processing program and image processing system
DE112013004103T5 (en) Method and apparatus for generating a disparity card
DE112019002848T5 (en) SYSTEM AND METHOD FOR FINDING AND CLASSIFYING PATTERNS IN AN IMAGE WITH AN IMAGE PROCESSING SYSTEM
DE102014108924B4 (en) A semi-supervised method for training an auxiliary model for multi-pattern recognition and detection
WO2014139504A1 (en) Apparatus for volumetrically measuring an object in the body of an animal for slaughter
DE112019007762T5 (en) Method for training a generative adversarial network, modified image generation module and system for detecting features in an image
WO2018073163A1 (en) Yield prediction for a cornfield
DE202014010866U1 (en) Specifiability of images
DE102019104310A1 (en) System and method for simultaneously viewing edges and normal image features through a vision system
DE102011015849A1 (en) Device and method for automatically monitoring a device for processing meat products
DE102016100134A1 (en) A method and apparatus for inspecting an object using machine vision
DE112018001600T5 (en) SYSTEM AND METHOD FOR 3D PROFILE DETERMINATION USING A MODEL-BASED PEAK SELECTION
DE102012200930A1 (en) Apparatus and method for detecting a plant against a background
DE102017009118A1 (en) IMAGE BALANCE FOR SERIAL PICTURES
EP2997543B1 (en) Device and method for the parameterisation of a plant
WO2019183659A1 (en) Content-based image search
Demir Combination of airborne laser and image data for building detection and 3D roof reconstruction
DE102015003537A1 (en) BLOCKING DETECTION PROCEDURE FOR A CAMERA AND AN ELECTRONIC DEVICE WITH CAMERAS

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R082 Change of representative

Representative=s name: PATENTANWAELTE OLBRICHT, BUCHHOLD, KEULERTZ PA, DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009660000

Ipc: G06V0030194000

R018 Grant decision by examination section/examining division
R082 Change of representative

Representative=s name: PATENTANWAELTE OLBRICHT, BUCHHOLD, KEULERTZ PA, DE

R020 Patent grant now final