DE102020101443A1 - A method, a device, a computer program for recognizing an object and a device for recording an object - Google Patents

A method, a device, a computer program for recognizing an object and a device for recording an object Download PDF

Info

Publication number
DE102020101443A1
DE102020101443A1 DE102020101443.0A DE102020101443A DE102020101443A1 DE 102020101443 A1 DE102020101443 A1 DE 102020101443A1 DE 102020101443 A DE102020101443 A DE 102020101443A DE 102020101443 A1 DE102020101443 A1 DE 102020101443A1
Authority
DE
Germany
Prior art keywords
geometric
hash code
features
coordinates
hash
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.)
Pending
Application number
DE102020101443.0A
Other languages
German (de)
Inventor
Hendrik Leibrandt
Volker Zöllmer
Marc-Oliver Becker
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.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
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 Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority to DE102020101443.0A priority Critical patent/DE102020101443A1/en
Priority to PCT/EP2021/050193 priority patent/WO2021148252A1/en
Publication of DE102020101443A1 publication Critical patent/DE102020101443A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/231Hierarchical techniques, i.e. dividing or merging pattern sets so as to obtain a dendrogram

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

Ein Ausführungsbeispiel eines Verfahrens zur Erkennung eines Objektes, insbesondere eines Bauteils 700, umfasset eine Registrierung von geometrischen Merkmalen in einer Aufnahme des Objektes 701 und eine Generierung eines Hashcodes unter Anwendung einer Hashfunktion auf eine Teilmenge der geometrischen Merkmale 702. Ferner umfasst das Verfahren einen Vergleich des Hashcodes mit einem Referenz-Hashcode hinsichtlich eines vordefinierten Kriteriums, wobei sich der Referenz-Hashcode unter Anwendung der Hashfunktion auf eine Teilmenge von geometrischen Referenzmerkmalen eines Referenzobjekts ergibt 703. Das Verfahren umfasst ferner eine Generierung einer Transformationsvorschrift bei Übereinstimmung des Hashcodes mit dem Referenz-Hashcode hinsichtlich des vordefinierten Kriteriums, wobei die Transformationsvorschrift die Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes abbildet 704.An embodiment of a method for recognizing an object, in particular a component 700, includes a registration of geometric features in a recording of the object 701 and a generation of a hash code using a hash function on a subset of the geometric features 702 Hash codes with a reference hash code with regard to a predefined criterion, the reference hash code being obtained 703 using the hash function on a subset of geometric reference features of a reference object of the predefined criterion, the transformation rule mapping 704 the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code.

Description

Technisches GebietTechnical area

Ausführungsbeispiele der vorliegenden Erfindung befassen sich mit einem Verfahren, einer Vorrichtung und einem Computerprogramm zur Erkennung eines Objekts und einer Vorrichtung zur Aufnahme eines Objekts.Embodiments of the present invention deal with a method, a device and a computer program for recognizing an object and a device for recording an object.

Hintergrundbackground

In der industriellen Fertigung von Gütern ist ein reibungsloser Ablauf einer Produktionslinie essenziell, um unter anderem eine hohe Wirtschaftlichkeit zu erzielen sowie obligatorischen Sicherheitsstandards zu genügen. In Produktionslinien werden Verfahren z.B. zur Fertigung, Bearbeitung und Überprüfung von Bauteilen derart miteinander verknüpft, dass die Bauteile die mehreren Verfahrensschritte effizient und in der richtigen Reihenfolge durchlaufen können. Die Verfolgung eines Bauteils entlang der Herstellungskette ist beispielsweise anhand von Kennzeichnungsverfahren oder Erkennungsverfahren möglich, sodass das Bauteil richtig identifiziert und für den weiteren Prozessschritt zugeordnet werden kann.In the industrial production of goods, a smooth flow of a production line is essential in order, among other things, to achieve a high level of economic efficiency and to meet mandatory safety standards. In production lines, processes, e.g. for manufacturing, processing and checking components, are linked with one another in such a way that the components can run through the several process steps efficiently and in the correct sequence. The tracking of a component along the production chain is possible, for example, using identification processes or recognition processes, so that the component can be correctly identified and assigned for the further process step.

Kennzeichnungsverfahren, welche eine zusätzliche Markierung an das Bauteil anbringen oder das Bauteil selbst prägen, sind nicht nur kostspielig aufgrund zusätzlich erforderlicher Prozessschritte zur Markierung, sondern verändern auch die Oberfläche des zu identifizierenden Bauteils. Manche Kennzeichnungsverfahren befestigen beispielsweise Transponder an dem Bauteil oder bedrucken dieses mit QR-Codes, die sich jedoch leicht kopieren und fälschen lassen.Marking processes that apply an additional marking to the component or emboss the component itself are not only costly due to the additional process steps required for marking, but also change the surface of the component to be identified. Some labeling processes, for example, attach transponders to the component or print QR codes on it, which can, however, easily be copied and forged.

Erkennungsverfahren verwenden beispielsweise markante Merkmale, die fertigungsbedingt an der Oberfläche des Objekts entstehen, wie z.B. die Mikrostruktur von gedruckten Bauteilen. Einige Erkennungsverfahren basieren auf einem direkten Bildvergleich zwischen einem Referenzbauteil und einem zu bestimmenden Bauteil und erfordern daher streng reproduzierbare Bedingungen für eine zuverlässige Erkennung des Bauteils, wie z.B. eine exakte Ausrichtung des Bauteils hinsichtlich einer Kamera. Dafür verwendete Algorithmen wie SWIFT oder SURF generieren bei gleichartig gefertigten Bauteilen oder bei Bauteilen mit veränderter Oberfläche, z.B. durch Oxidation, viele Falsch-Positiv-Übereinstimmungen und sind oft nicht zuverlässig genug. Darüber hinaus bieten die bisherigen Methoden zur Objekterkennung kein effizientes Verfahren mit einer vertretbaren Rechenzeit.Recognition processes use, for example, distinctive features that arise on the surface of the object as a result of production, such as the microstructure of printed components. Some recognition methods are based on a direct image comparison between a reference component and a component to be determined and therefore require strictly reproducible conditions for reliable recognition of the component, such as an exact alignment of the component with respect to a camera. The algorithms used for this, such as SWIFT or SURF, generate many false-positive matches for similarly manufactured components or for components with a modified surface, e.g. due to oxidation, and are often not reliable enough. In addition, the previous methods for object recognition do not offer an efficient method with a reasonable computing time.

Dieser Zustand gibt Anlass dazu, ein besseres Verfahren zur Objekterkennung zu entwickeln, welches Bauteile zuverlässig und schnell identifiziert und tolerant hinsichtlich variabler Einflüsse, wie z.B. der Ausrichtung des Bauteils hinsichtlich einer Kamera oder Oberflächenveränderungen des Bauteils, ist.This situation gives rise to the development of a better method for object recognition, which identifies components reliably and quickly and is tolerant of variable influences, such as the alignment of the component with regard to a camera or surface changes of the component.

Diese Aufgabe kann von den in den unabhängigen Patentansprüchen definierten Gegenständen gelöst werden.This object can be achieved by the subjects defined in the independent patent claims.

Ein Ausführungsbeispiel eines Verfahrens zur Erkennung eines Objektes, insbesondere eines Bauteils, umfasset eine Registrierung von geometrischen Merkmalen in einer Aufnahme des Objektes und eine Generierung eines Hashcodes unter Anwendung einer Hashfunktion auf eine Teilmenge der geometrischen Merkmale. Ferner umfasst das Verfahren einen Vergleich des Hashcodes mit einem Referenz-Hashcode hinsichtlich eines vordefinierten Kriteriums, wobei sich der Referenz-Hashcode unter Anwendung der Hashfunktion auf eine Teilmenge von geometrischen Referenzmerkmalen eines Referenzobjekts ergibt. Das Verfahren umfasst ferner eine Generierung einer Transformationsvorschrift bei Übereinstimmung des Hashcodes mit dem Referenz-Hashcode hinsichtlich des vordefinierten Kriteriums, wobei die Transformationsvorschrift die Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes abbildet. Zur Erkennung des Objekts dienen beispielsweise Oberflächenmerkmale, die objektspezifisch sind, sodass kein zusätzlich kennzeichnendes Merkmal an das Objekt angebracht werden muss. Geometrische Merkmale ergeben sich beispielsweise aus der Oberflächenstruktur des Objekts. Für die Objekterkennung eignet es sich, die geometrischen Merkmale in Hashcodes zusammenzufassen, sodass das Verfahren zur Objekterkennung mit einem reduzierten Datensatz arbeiten kann. Damit kann das Objekt schnell und gleichzeitig zuverlässig identifiziert werden, da die räumliche Beziehung zwischen den geometrischen Merkmalen durch die Zusammenführung in Hashcodes nicht verloren geht. Dadurch kann es beispielsweise ausreichen, weniger Daten in Form von Hashes und Referenz-Hashes miteinander zu vergleichen, ohne dass die Qualität des Verfahrens beeinträchtigt wird. Ein geeignet gewähltes vordefiniertes Kriterium kann dabei bestimmen, ob eine Ähnlichkeit zwischen Hashcode und Referenzhashcode ausreicht, um eine Transformationsvorschrift zu generieren. Mittels der Transformationsvorschrift kann zuverlässig überprüft werden, ob das Objekt mit einem Referenzobjekt tatsächlich übereinstimmt. Durch die Anwendung der Transformationsvorschrift können alle geometrischen Merkmale für einen Vergleich zwischen dem Objekt und dem Referenzobjekt herangezogen werden, um das Objekt zuverlässig zu identifizieren.An exemplary embodiment of a method for recognizing an object, in particular a component, includes registration of geometric features in a recording of the object and generation of a hash code using a hash function on a subset of the geometric features. Furthermore, the method comprises a comparison of the hash code with a reference hash code with regard to a predefined criterion, the reference hash code being obtained using the hash function on a subset of geometric reference features of a reference object. The method further includes generating a transformation rule when the hash code matches the reference hash code with regard to the predefined criterion, the transformation rule mapping the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. For example, surface features that are object-specific are used to identify the object, so that no additional characteristic feature has to be attached to the object. Geometric features result, for example, from the surface structure of the object. For object recognition, it is suitable to summarize the geometric features in hash codes so that the method for object recognition can work with a reduced data set. This means that the object can be identified quickly and reliably at the same time, since the spatial relationship between the geometric features is not lost through the merging in hash codes. As a result, it may be sufficient, for example, to compare less data in the form of hashes and reference hashes with one another without the quality of the method being impaired. A suitably selected predefined criterion can determine whether a similarity between the hash code and the reference hash code is sufficient to generate a transformation rule. The transformation rule can be used to reliably check whether the object actually matches a reference object. By applying the transformation rule, all geometric features can be used for a comparison between the object and the reference object in order to reliably identify the object.

Gemäß einigen Ausführungsbeispielen erzeugt die Hashfunktion zumindest basierend auf den zweidimensionalen Koordinaten eines ersten geometrischen Merkmals x1, y1, eines zweiten geometrischen Merkmals x2, y2 und eines dritten geometrischen Merkmals x3, y3, einen Hashcode. Dabei liegen die Koordinaten des dritten geometrischen Merkmals innerhalb eines Kreises mit einem Durchmesser bestimmt durch den Abstand der Koordinaten des ersten und zweiten geometrischen Merkmals. Die Koordinaten x3, y3 des dritten geometrischen Merkmals, dargestellt im lokalen zweidimensionalen Koordinatensystem, das durch die Koordinaten des ersten geometrischen Merkmals x1, y1 definiert als Ursprung 0, 0 des Koordinatensystems und durch die Koordinaten des zweiten geometrischen Merkmals x2, y2 definiert durch die Koordinaten 1, 1 aufgespannt wird, bilden den Hashcode [x3', y3']. Durch die Anwendung der Hashfunktion wird ein lokales Koordinatensystem definiert, sodass der generierte Hashcode die räumliche Beziehung der geometrischen Merkmale umfasst. Weiterhin reduziert sich die Datenmenge von insgesamt drei zwei-dimensionalen Vektoren der drei geometrischen Merkmale auf einen zweidimensionalen Vektor des Hashcodes.According to some exemplary embodiments, the hash function generates at least based on the two-dimensional coordinates of a first geometric feature x1, y1, a second geometric feature x2, y2 and a third geometric feature x3, y3, a hash code. The coordinates of the third geometric feature lie within a circle with a diameter determined by the distance between the coordinates of the first and second geometric features. The coordinates x3, y3 of the third geometric feature, represented in the local two-dimensional coordinate system, which is defined by the coordinates of the first geometric feature x1, y1 as the origin 0, 0 of the coordinate system and defined by the coordinates of the second geometric feature x2, y2 1, 1 is spanned, form the hash code [x3 ', y3']. By using the hash function, a local coordinate system is defined so that the generated hash code includes the spatial relationship of the geometric features. Furthermore, the amount of data is reduced from a total of three two-dimensional vectors of the three geometric features to one two-dimensional vector of the hash code.

Gemäß einigen Ausführungsbeispielen erzeugt die Hashfunktion zusätzlich basierend auf den zweidimensionalen Koordinaten x4, y4 eines vierten geometrischen Merkmals einen Hashcode, wobei die Koordinaten x4', y4' des vierten geometrischen Merkmals dargestellt im lokalen zweidimensionalen Koordinatensystem aufgespannt durch die Koordinaten des ersten und zweiten geometrischen Merkmals, zum Hashcode [x3', y3', x4', y4'] beitragen, wobei für die Koordinaten des dritten und vierten geometrischen Merkmals gilt x3 <= x4 und x3+x4<=1. Durch die Betrachtung eines zusätzlichen Merkmals, wird der Hashcode vierdimensional. Ein vierdimensionaler Hashcode ist charakteristischer als ein zwei-dimensionaler Hashcode. Die Wahrscheinlichkeit, dass ein vierdimensionaler Hashcode mit einem Referenzhashcode fälschlicherweise zufällig übereinstimmt, ist geringer. Damit kann sich einerseits die Zuverlässigkeit des Verfahrens zur Objekterkennung erhöhen. Andererseits kann sich die Rechenleistung reduzieren, da weniger Falsch-Positiv-Übereinstimmungen nach Anwendung der Transformationsvorschrift verworfen werden müssen. Die Bedingung x3 <= x4 und x3+x4<=1 zwischen dem dritten und vierten geometrischen Merkmal bricht die Symmetrie für einen Hashcode, der aus denselben geometrischen Merkmalen mit anderer Nummerierung hervorgeht. Damit können redundante Informationen unterdrückt werden.According to some exemplary embodiments, the hash function additionally generates a hash code based on the two-dimensional coordinates x4, y4 of a fourth geometric feature, the coordinates x4 ', y4' of the fourth geometric feature represented in the local two-dimensional coordinate system spanned by the coordinates of the first and second geometric features, contribute to the hash code [x3 ', y3', x4 ', y4'], where x3 <= x4 and x3 + x4 <= 1 applies to the coordinates of the third and fourth geometric features. By considering an additional feature, the hash code becomes four-dimensional. A four-dimensional hash code is more characteristic than a two-dimensional hash code. The probability that a four-dimensional hash code and a reference hash code incorrectly coincidentally coincides is lower. On the one hand, this can increase the reliability of the method for object recognition. On the other hand, the computing power can be reduced, since fewer false-positive matches have to be discarded after the transformation rule has been applied. The condition x3 <= x4 and x3 + x4 <= 1 between the third and fourth geometric feature breaks the symmetry for a hash code that results from the same geometric features with a different numbering. This means that redundant information can be suppressed.

Gemäß einigen Ausführungsbeispielen ist das vordefinierte Kriterium erfüllt ist, wenn der Hashcode einen vordefinierten Abstand zu dem Referenz-Hashcode aufweist. Durch den vordefinierten Abstand, wie z.B. der euklidischen Distanz, kann eine Hashcode-Übereinstimmung mit einer definierten Unschärfe erfolgen. Weiterhin kann durch den vordefinierten Abstand der Suchradius für einen ähnlichen Referenz-Hashcode eingeschränkt werden.According to some exemplary embodiments, the predefined criterion is met when the hash code is at a predefined distance from the reference hash code. The predefined distance, such as the Euclidean distance, allows a hash code match with a defined fuzziness. Furthermore, the search radius for a similar reference hash code can be restricted by the predefined distance.

Gemäß einigen Ausführungsbeispielen umfasst das Verfahren ferner ein Suchen des Referenz-Hashcodes in einer Indexstruktur mit einer Vielzahl von gespeicherten möglichen Referenz-Hashcodes. Anhand der Indexstruktur kann ein effizienter Algorithmus für eine höherdimensionale Distanzsuche von Referenzhashcodes erfolgen. Der Suchumfang kann durch die Indexstruktur der Referenzdatenbank reduziert werden, da nicht alle darin gespeicherten und indexierten Referenz-Hashcodes mit dem Hashcode verglichen werden müssen.According to some exemplary embodiments, the method further comprises a search for the reference hash code in an index structure with a plurality of stored possible reference hash codes. An efficient algorithm for a higher-dimensional distance search of reference hash codes can be carried out on the basis of the index structure. The search scope can be reduced by the index structure of the reference database, since not all reference hash codes stored and indexed in it have to be compared with the hash code.

Gemäß einigen Ausführungsbeispielen umfasst das Verfahren ferner ein Transformieren aller geometrischen Merkmale des Objektes mit der Transformationsvorschrift, um transformierten geometrischen Merkmale zu erhalten. Ferner umfasst das Verfahren ein Überprüfen der transformierten geometrischen Merkmale und der geometrischen Referenzmerkmale auf geometrische Übereinstimmung, wobei bei festgestellter Übereinstimmung das Objekt als zur Klasse des Referenzobjektes gehörend identifiziert wird. Für eine finale, zuverlässige Bewertung, ob das Objekt mit dem Referenzobjekt übereinstimmt, können durch die Abbildung anhand der Transformationsvorschrift alle geometrischen Merkmale berücksichtigt und auf Übereinstimmung geprüft werden.According to some exemplary embodiments, the method further comprises transforming all geometric features of the object with the transformation rule in order to obtain transformed geometric features. The method further includes checking the transformed geometric features and the geometric reference features for geometric correspondence, with the object being identified as belonging to the class of the reference object if a correspondence is established. For a final, reliable assessment of whether the object corresponds to the reference object, all geometric features can be taken into account through the mapping using the transformation rule and checked for conformity.

Gemäß einigen Ausführungsbeispielen umfasst das Verfahren ferner ein Anpassen der Transformationsvorschrift, um eine Abbildung der Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes zu verbessern. Für eine Feinjustierung kann die Transformationsvorschrift weiterhin angepasst werden, sodass die geometrischen Merkmalspaare in ihrer Ausrichtung zueinander verbessert werden können.According to some exemplary embodiments, the method further comprises adapting the transformation rule in order to improve a mapping of the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. The transformation rule can also be adapted for fine adjustment so that the alignment of the geometric feature pairs can be improved.

Gemäß einigen Ausführungsbeispielen umfasst das Verfahren ferner eine Entfernung von periodischen Strukturen in der Aufnahme des Objekts, welche als Artefakt aus einem Fertigungsverfahren des Objekts erzeugt wurden. Das Entfernen von Artefakten kann die Anzahl von Falsch-Positiv-Übereinstimmungen reduzieren. Außerdem kann das Verfahren schnellere Ergebnisse liefern, da weniger fälschlich angenommene Übereinstimmungen zwischen Hashcode und Referenzhashcode verworfen werden.According to some exemplary embodiments, the method furthermore comprises a removal of periodic structures in the receptacle of the object, which were generated as artifacts from a manufacturing method of the object. Removing artifacts can reduce the number of false-positive matches. In addition, the method can deliver faster results, since fewer incorrectly assumed matches between hash code and reference hash code are discarded.

Gemäß einigen Ausführungsbeispielen umfasst das Verfahren ferner ein Erzeugen der Aufnahme des Objekts bei gerichteter Beleuchtung des Objekts mit einem Einfallswinkel kleiner als 30° zur Oberfläche des Objektes. Dadurch können kontrastreiche Bilder des Objekts aufgenommen werden, da sich geometrische Merkmale, wie z.B. Vertiefungen deutlicher abzeichnen können.According to some exemplary embodiments, the method further comprises generating the recording of the object with directional illumination of the object with an angle of incidence of less than 30 ° to the Surface of the object. As a result, high-contrast images of the object can be recorded, since geometric features, such as depressions, can be identified more clearly.

Ein Ausführungsbeispiel einer Vorrichtung zur Aufnahme eines Objekts, insbesondere eines Bauteils, umfasst eine Kamera zum Anfertigen einer Aufnahme einer Aufsicht des Objekts und eine Lichtquelle zur gerichteten Beleuchtung des Objekts mit einem Einfallswinkel kleiner als 30° zur Oberfläche des Objektes. Dadurch können kontrastreiche Bilder des Objekts aufgenommen werden, da sich geometrische Merkmale, wie z.B. Vertiefungen deutlicher abzeichnen können.An embodiment of a device for recording an object, in particular a component, comprises a camera for taking a picture of a top view of the object and a light source for directed illumination of the object with an angle of incidence of less than 30 ° to the surface of the object. This allows high-contrast images of the object to be recorded, as geometric features such as depressions can be more clearly identified.

Gemäß einigen Ausführungsbeispielen umfasst die Vorrichtung ferner ein optisches Bauelement, das ausgebildet ist, um Streulicht zu absorbieren, wobei das optische Bauelement zwischen der Kamera und dem Objekt angeordnet ist. Durch Absorption von Streulicht, welches beispielweise durch Streuung am Objekt verursacht wird, können kontrastreiche Bilder mit ausgeprägteren geometrischen Merkmalen erstellt werden.According to some exemplary embodiments, the device further comprises an optical component which is designed to absorb scattered light, the optical component being arranged between the camera and the object. By absorbing scattered light, which is caused, for example, by scattering on the object, high-contrast images with more pronounced geometric features can be created.

Ein Ausführungsbeispiel einer Vorrichtung zur Erkennung eines Objektes, insbesondere eines Bauteils, umfasst eine Analyseschaltung, die ausgebildet ist, um geometrische Merkmale in einer Aufnahme des Objektes zu registrieren und um einen Hashcode unter Anwendung einer Hashfunktion auf eine Teilmenge der geometrischen Merkmale zu generieren. Ferner ist die Analyseschaltung ausgebildet, um den Hashcode mit einem Referenz-Hashcode hinsichtlich eines vordefinierten Kriteriums zu vergleichen, wobei sich der Referenz-Hashcode unter Anwendung der Hashfunktion auf eine Teilmenge von geometrischen Referenzmerkmalen eines Referenzobjekts ergibt. Ferner ist die Analyseschaltung ausgebildet, um eine Transformationsvorschrift bei Übereinstimmung des Hashcodes mit dem Referenz-Hashcode hinsichtlich des vordefinierten Kriteriums zu generieren, wobei die Transformationsvorschrift die Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes abbildet. Zur Erkennung des Objekts dienen beispielsweise Oberflächenmerkmale, die objektspezifisch sind, sodass kein zusätzlich kennzeichnendes Merkmal an das Objekt angebracht werden muss. Geometrische Merkmale ergeben sich beispielsweise aus der Oberflächenstruktur des Objekts. Für die Objekterkennung eignet es sich, die geometrischen Merkmale in Hashcodes zusammenzufassen, sodass das Verfahren zur Objekterkennung mit einem reduzierten Datensatz arbeiten kann. Damit kann das Objekt schnell und gleichzeitig zuverlässig identifiziert werden, da die räumliche Beziehung zwischen den geometrischen Merkmalen durch die Zusammenführung in Hashcodes nicht verloren geht. Dadurch kann es beispielsweise ausreichen, weniger Daten in Form von Hashes und Referenz-Hashes miteinander zu vergleichen, ohne dass die Qualität des Verfahrens beeinträchtigt wird. Ein geeignet gewähltes vordefiniertes Kriterium kann dabei bestimmen, ob eine Ähnlichkeit zwischen Hashcode und Referenzhashcode ausreicht, um eine Transformationsvorschrift zu generieren. Mittels der Transformationsvorschrift kann zuverlässig überprüft werden, ob das Objekt mit einem Referenzobjekt tatsächlich übereinstimmt. Durch die Anwendung der Transformationsvorschrift können alle geometrischen Merkmale für einen Vergleich zwischen dem Objekt und dem Referenzobjekt herangezogen werden, um das Objekt zuverlässig zu identifizieren.An embodiment of a device for recognizing an object, in particular a component, comprises an analysis circuit which is designed to register geometric features in a recording of the object and to generate a hash code using a hash function on a subset of the geometric features. Furthermore, the analysis circuit is designed to compare the hash code with a reference hash code with regard to a predefined criterion, the reference hash code being obtained using the hash function on a subset of geometric reference features of a reference object. Furthermore, the analysis circuit is designed to generate a transformation rule when the hash code matches the reference hash code with regard to the predefined criterion, the transformation rule mapping the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. For example, surface features that are object-specific are used to identify the object, so that no additional characteristic feature has to be attached to the object. Geometric features result, for example, from the surface structure of the object. For object recognition, it is suitable to summarize the geometric features in hash codes so that the method for object recognition can work with a reduced data set. This means that the object can be identified quickly and reliably at the same time, since the spatial relationship between the geometric features is not lost through the merging in hash codes. As a result, it may be sufficient, for example, to compare less data in the form of hashes and reference hashes with one another without the quality of the method being impaired. A suitably selected predefined criterion can determine whether a similarity between the hash code and the reference hash code is sufficient to generate a transformation rule. The transformation rule can be used to reliably check whether the object actually matches a reference object. By applying the transformation rule, all geometric features can be used for a comparison between the object and the reference object in order to reliably identify the object.

Gemäß einigen Ausführungsbeispielen ist die Analyseschaltung ferner ausgebildet, sodass die Hashfunktion zumindest basierend auf den zweidimensionalen Koordinaten eines ersten geometrischen Merkmals x1, y1, eines zweiten geometrischen Merkmals x2, y2 und eines dritten geometrischen Merkmals x3, y3, einen Hashcode erzeugt. Dabei liegen die Koordinaten des dritten geometrischen Merkmals innerhalb eines Kreises mit einem Durchmesser bestimmt durch den Abstand der Koordinaten des ersten und zweiten geometrischen Merkmals. Die Koordinaten x3, y3 des dritten geometrischen Merkmals, dargestellt im lokalen zweidimensionalen Koordinatensystem, das durch die Koordinaten des ersten geometrischen Merkmals x1, y1 definiert als Ursprung 0, 0 des Koordinatensystems und durch die Koordinaten des zweiten geometrischen Merkmals x2, y2 definiert durch die Koordinaten 1, 1 aufgespannt wird, bilden den Hashcode [x3', y3']. Durch die Anwendung der Hashfunktion wird ein lokales Koordinatensystem definiert, sodass der generierte Hashcode die räumliche Beziehung der geometrischen Merkmale umfasst. Weiterhin reduziert sich die Datenmenge von insgesamt drei zweidimensionalen Vektoren der drei geometrischen Merkmale auf einen zweidimensionalen Vektor des Hashcodes.According to some exemplary embodiments, the analysis circuit is further designed so that the hash function generates a hash code at least based on the two-dimensional coordinates of a first geometric feature x1, y1, a second geometric feature x2, y2 and a third geometric feature x3, y3. The coordinates of the third geometric feature lie within a circle with a diameter determined by the distance between the coordinates of the first and second geometric features. The coordinates x3, y3 of the third geometric feature, represented in the local two-dimensional coordinate system, which is defined by the coordinates of the first geometric feature x1, y1 as the origin 0 , 0 of the coordinate system and by the coordinates of the second geometric feature x2, y2 defined by the coordinates 1 , 1 is spanned, form the hash code [x3 ', y3']. By using the hash function, a local coordinate system is defined so that the generated hash code includes the spatial relationship of the geometric features. Furthermore, the amount of data is reduced from a total of three two-dimensional vectors of the three geometric features to one two-dimensional vector of the hash code.

Gemäß einigen Ausführungsbeispielen die Analyseschaltung ferner ausgebildet, sodass die Hashfunktion zusätzlich basierend auf den zweidimensionalen Koordinaten x4, y4 eines vierten geometrischen Merkmals einen Hashcode erzeugt, wobei die Koordinaten x4', y4' des vierten geometrischen Merkmals dargestellt im lokalen zweidimensionalen Koordinatensystem aufgespannt durch die Koordinaten des ersten und zweiten geometrischen Merkmals, zum Hashcode [x3', y3', x4', y4'] beitragen; wobei für die Koordinaten des dritten und vierten geometrischen Merkmals gilt x3 <= x4 und x3+x4<=1. Durch die Betrachtung eines zusätzlichen Merkmals, wird der Hashcode vierdimensional. Ein vierdimensionaler Hashcode ist charakteristischer als ein zwei-dimensionaler Hashcode. Die Wahrscheinlichkeit, dass ein vierdimensionaler Hashcode mit einem Referenzhashcode fälschlicherweise zufällig übereinstimmt, ist geringer. Damit kann sich einerseits die Zuverlässigkeit des Verfahrens zur Objekterkennung erhöhen. Andererseits kann sich die Rechenleistung reduzieren, da weniger Falsch-Positiv-Übereinstimmungen nach Anwendung der Transformationsvorschrift verworfen werden müssen. Die Bedingung x3 <= x4 und x3+x4<=1 zwischen dem dritten und vierten geometrischen Merkmal bricht die Symmetrie für einen Hashcode, der aus denselben geometrischen Merkmalen mit anderer Nummerierung hervorgeht. Damit können redundante Informationen unterdrückt werden.According to some exemplary embodiments, the analysis circuit is further designed so that the hash function additionally generates a hash code based on the two-dimensional coordinates x4, y4 of a fourth geometric feature, the coordinates x4 ', y4' of the fourth geometric feature represented in the local two-dimensional coordinate system spanned by the coordinates of the first and second geometric features contribute to the hash code [x3 ', y3', x4 ', y4']; where x3 <= x4 and x3 + x4 <= 1 applies to the coordinates of the third and fourth geometric features. By considering an additional feature, the hash code becomes four-dimensional. A four-dimensional hash code is more characteristic than a two-dimensional hash code. the The probability that a four-dimensional hash code and a reference hash code incorrectly coincidentally coincides is lower. On the one hand, this can increase the reliability of the method for object recognition. On the other hand, the computing power can be reduced, since fewer false-positive matches have to be discarded after the transformation rule has been applied. The condition x3 <= x4 and x3 + x4 <= 1 between the third and fourth geometric feature breaks the symmetry for a hash code that results from the same geometric features with a different numbering. This means that redundant information can be suppressed.

Gemäß einigen Ausführungsbeispielen ist das vordefinierte Kriterium erfüllt, wenn der Hashcode einen vordefinierten Abstand zu dem Referenz-Hashcode aufweist. Durch den vordefinierten Abstand kann eine Hashcode-Übereinstimmung mit einer definierten Unschärfe erfolgen. Weiterhin kann durch den vordefinierten Abstand der Suchradius für einen ähnlichen Referenz-Hashcode eingeschränkt werden.According to some exemplary embodiments, the predefined criterion is met when the hash code is at a predefined distance from the reference hash code. The predefined distance allows a hash code match with a defined fuzziness. Furthermore, the search radius for a similar reference hash code can be restricted by the predefined distance.

Gemäß einigen Ausführungsbeispielen ist die Analyseschaltung ferner ausgebildet, um den Referenz-Hashcode in einer Indexstruktur mit einer Vielzahl von gespeicherten möglichen Referenz-Hashcodes zu suchen. Anhand der Indexstruktur kann ein effizienter Algorithmus für eine höherdimensionale Distanzsuche von Referenzhashcodes erfolgen. Der Suchumfang kann durch die Indexstruktur der Referenzdatenbank reduziert werden, da nicht alle darin gespeicherten und indexierten Referenz-Hashcodes mit dem Hashcode verglichen werden müssen.According to some exemplary embodiments, the analysis circuit is also designed to search for the reference hash code in an index structure with a plurality of stored possible reference hash codes. An efficient algorithm for a higher-dimensional distance search of reference hash codes can be carried out on the basis of the index structure. The search scope can be reduced by the index structure of the reference database, since not all reference hash codes stored and indexed in it have to be compared with the hash code.

Gemäß einigen Ausführungsbeispielen ist die Analyseschaltung ferner ausgebildet, um alle geometrischen Merkmale des Objektes mit der Transformationsvorschrift zu transformieren, um die transformierten geometrischen Merkmale zu erhalten und um die transformierten geometrischen Merkmale und der geometrischen Referenzmerkmale auf geometrische Übereinstimmung zu überprüfen, wobei bei festgestellter Übereinstimmung das Objekt als zur Klasse des Referenzobjektes gehörend identifiziert wird. Für eine finale, zuverlässige Bewertung, ob das Objekt mit dem Referenzobjekt übereinstimmt, können durch die Abbildung anhand der Transformationsvorschrift alle geometrischen Merkmale berücksichtigt und auf Übereinstimmung geprüft werden.According to some exemplary embodiments, the analysis circuit is further designed to transform all geometric features of the object with the transformation rule in order to obtain the transformed geometric features and to check the transformed geometric features and the geometric reference features for geometric correspondence, with the object being determined is identified as belonging to the class of the reference object. For a final, reliable assessment of whether the object corresponds to the reference object, all geometric features can be taken into account through the mapping using the transformation rule and checked for conformity.

Gemäß einigen Ausführungsbeispielen ist die Analyseschaltung ferner ausgebildet, um die Transformationsvorschrift anzupassen, um eine Abbildung der Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes zu verbessern. Für eine Feinjustierung kann die Transformationsvorschrift weiterhin angepasst werden, sodass die geometrischen Merkmalspaare in ihrer Ausrichtung verbessert werden können.According to some exemplary embodiments, the analysis circuit is also designed to adapt the transformation rule in order to improve a mapping of the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. For a fine adjustment, the transformation rule can also be adapted so that the alignment of the geometric feature pairs can be improved.

Gemäß einigen Ausführungsbeispielen ist die Analyseschaltung ferner ausgebildet, um periodische Strukturen in der Aufnahme des Objekts zu entfernen, welche als Artefakt aus einem Fertigungsverfahren des Objekts erzeugt wurden. Das Entfernen von periodischen Strukturen kann die Anzahl von Falsch-Positiv-Übereinstimmungen reduzieren. Außerdem kann das Verfahren schnellere Ergebnisse liefern, da weniger fälschlich angenommene Übereinstimmungen zwischen Hashcode und Referenzhashcode verworfen werden.According to some exemplary embodiments, the analysis circuit is also designed to remove periodic structures in the receptacle of the object that were generated as artifacts from a manufacturing process for the object. Removing periodic structures can reduce the number of false-positive matches. In addition, the method can deliver faster results, since fewer incorrectly assumed matches between hash code and reference hash code are discarded.

Ein Ausführungsbeispiel der vorliegenden Erfindung umfasst ein Computerprogramm mit Programmcode, welches ein Verfahren nach der vorhergehenden Beschreibung anhand eines programmierbaren Prozessors ausführt. Durch die Implementierung eines Computerprogramms, kann ein beliebiges, kompatibles Gerät aufgerüstet werden, um ein Objekt nach dem beschriebenen Verfahren zu erkennen.An exemplary embodiment of the present invention comprises a computer program with program code which executes a method according to the preceding description using a programmable processor. By implementing a computer program, any compatible device can be upgraded to recognize an object using the method described.

FigurenlisteFigure list

Einige Beispiele von Vorrichtungen und/oder Verfahren werden nachfolgend bezugnehmend auf die beiliegenden Figuren lediglich beispielhaft näher erläutert. Es zeigen:

  • 1 ein Ausführungsbeispiel einer Vorrichtung zur Erkennung eines Objektes, insbesondere von Bauteilen;
  • 2 ein Ausführungsbeispiel zur Generierung eines Hashcodes unter Anwendung einer Hashfunktion auf eine Teilmenge von geometrischen Merkmalen;
  • 3 ein Ausführungsbeispiel von geometrischen Merkmalen in einer Aufnahme eines Objektes;
  • 4 ein Ausführungsbeispiel einer Datenbank mit vier-dimensionalen Hashcodes aus fünf Objekten;
  • 5 ein Ausführungsbeispiel einer Vorrichtung zur Aufnahme eines Objekts, insbesondere eines Bauteils; und
  • 6 ein Flussdiagramm eines Ausführungsbeispiels für ein Verfahren zur Erkennung eines Objektes, insbesondere von Bauteilen.
Some examples of devices and / or methods are explained in more detail below with reference to the accompanying figures, merely by way of example. Show it:
  • 1 an embodiment of a device for recognizing an object, in particular components;
  • 2 an embodiment for generating a hash code using a hash function on a subset of geometric features;
  • 3 an embodiment of geometric features in a recording of an object;
  • 4th an embodiment of a database with four-dimensional hash codes from five objects;
  • 5 an embodiment of a device for receiving an object, in particular a component; and
  • 6th a flowchart of an exemplary embodiment of a method for recognizing an object, in particular components.

Beschreibungdescription

Verschiedene Beispiele werden nun ausführlicher Bezug nehmend auf die beiliegenden Figuren beschrieben, in denen einige Beispiele dargestellt sind. In den Figuren können die Stärken von Linien, Schichten und/oder Bereichen zur Verdeutlichung übertrieben sein.Various examples will now be described in more detail with reference to the accompanying figures, in which some examples are shown. In the figures, the strengths of lines, layers and / or areas may be exaggerated for clarity.

Während sich weitere Beispiele für verschiedene Modifikationen und alternative Formen eignen, sind dementsprechend einige bestimmte Beispiele derselben in den Figuren gezeigt und werden nachfolgend ausführlich beschrieben. Allerdings beschränkt diese detaillierte Beschreibung weitere Beispiele nicht auf die beschriebenen bestimmten Formen. Weitere Beispiele können alle Modifikationen, Entsprechungen und Alternativen abdecken, die in den Rahmen der Offenbarung fallen. Gleiche oder ähnliche Bezugszeichen beziehen sich in der gesamten Beschreibung der Figuren auf gleiche oder ähnliche Elemente, die bei einem Vergleich miteinander identisch oder in modifizierter Form implementiert sein können, während sie die gleiche oder eine ähnliche Funktion bereitstellen.Accordingly, while other examples are susceptible of various modifications and alternative forms, some specific examples thereof are shown in the figures and will be described in detail below. However, this detailed description does not limit other examples to the particular forms described. Other examples may cover all modifications, equivalents, and alternatives that come within the scope of the disclosure. Throughout the description of the figures, the same or similar reference symbols refer to the same or similar elements which, when compared with one another, may be identical or implemented in a modified form while they provide the same or a similar function.

Es versteht sich, dass, wenn ein Element als mit einem anderen Element „verbunden“ oder „gekoppelt“ bezeichnet wird, die Elemente direkt, oder über ein oder mehrere Zwischenelemente, verbunden oder gekoppelt sein können. Wenn zwei Elemente A und B unter Verwendung eines „oder“ kombiniert werden, ist dies so zu verstehen, dass alle möglichen Kombinationen offenbart sind, d. h. nur A, nur B sowie A und B, sofern nicht explizit oder implizit anders definiert. Eine alternative Formulierung für die gleichen Kombinationen ist „zumindest eines von A und B“ oder „A und/oder B“. Das Gleiche gilt, mutatis mutandis, für Kombinationen von mehr als zwei Elementen.It will be understood that when an element is referred to as being “connected” or “coupled” to another element, the elements may be connected or coupled directly, or through one or more intermediate elements. When two elements A and B are combined using an "or" it is to be understood that all possible combinations are disclosed; H. only A, only B as well as A and B, unless explicitly or implicitly defined otherwise. An alternative phrase for the same combinations is “at least one of A and B” or “A and / or B”. The same applies, mutatis mutandis, to combinations of more than two elements.

Die Terminologie, die hier zum Beschreiben bestimmter Beispiele verwendet wird, soll nicht begrenzend für weitere Beispiele sein. Wenn eine Singularform, z. B. „ein, eine“ und „der, die, das“ verwendet wird und die Verwendung nur eines einzelnen Elements weder explizit noch implizit als verpflichtend definiert ist, können weitere Beispiele auch Pluralelemente verwenden, um die gleiche Funktion zu implementieren. Wenn eine Funktion nachfolgend als unter Verwendung mehrerer Elemente implementiert beschrieben ist, können weitere Beispiele die gleiche Funktion unter Verwendung eines einzelnen Elements oder einer einzelnen Verarbeitungsentität implementieren. Es versteht sich weiterhin, dass die Begriffe „umfasst“, „umfassend“, „aufweist“ und/oder „aufweisend“ bei Gebrauch das Vorhandensein der angegebenen Merkmale, Ganzzahlen, Schritte, Operationen, Prozesse, Elemente, Komponenten und/oder einer Gruppe derselben präzisieren, aber nicht das Vorhandensein oder das Hinzufügen eines oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Operationen, Prozesse, Elemente, Komponenten und/einer Gruppe derselben ausschließen.The terminology used herein to describe specific examples is not intended to be limiting of additional examples. When a singular form, e.g. B. "ein, an" and "der, die, das" is used and the use of only a single element is neither explicitly nor implicitly defined as mandatory, further examples can also use plural elements to implement the same function. When a function is described below as being implemented using multiple elements, other examples may implement the same function using a single element or a single processing entity. It is further understood that the terms “comprises”, “comprising”, “having” and / or “having” the presence of the specified features, integers, steps, operations, processes, elements, components and / or a group thereof when used Specify but not exclude the presence or addition of one or more other characteristics, integers, steps, operations, processes, elements, components, and / or a group thereof.

Sofern nicht anderweitig definiert, werden alle Begriffe (einschließlich technischer und wissenschaftlicher Begriffe) hier in ihrer üblichen Bedeutung auf dem Gebiet verwendet, zu dem Beispiele gehören.Unless otherwise defined, all terms (including technical and scientific terms) are used herein with their normal meaning in the field to which examples belong.

1 zeigt ein Ausführungsbeispiel einer Vorrichtung 100, die ein Verfahren zur Erkennung eines Objekts 102 bereitstellt. Die Vorrichtung 100 umfasst eine Analyseschaltung 101, die ausgebildet ist, um geometrische Merkmale in einer Aufnahme des Objektes 102 zu registrieren. Beispielsweise kann die Aufnahme des Objektes 102 ein zweidimensionales Bild eines gedruckten Bauteils sein, das z.B. mit einer Kamera aufgenommen wurde. Die Aufnahme kann unmittelbar vor dem Beginn des Verfahrens erstellt werden oder es können bereits bestehende Aufnahmen für das Verfahren verwendet werden, die beispielsweise über ein Netzwerk von einem Speichermedium erhalten werden. Die geometrischen Merkmale können durch markante Bereiche im Bild charakterisiert sein, wie z.B. durch Berge und/oder Täler einer oberflächlichen Mikrostruktur des Objektes 102. Die Aufnahme des Objekts 102 sollte in geeigneter Weise erfolgen, sodass die geometrischen Merkmale bestmöglich und reproduzierbar dargestellt werden können. Gegebenenfalls können in einer weiteren Bildverarbeitung der Aufnahme beispielsweise störende Artefakte entfernt werden, sodass ausschließlich die objektspezifischen geometrischen Merkmale registriert werden können. Geometrische Merkmale sind beispielsweise zweidimensionale Pixelkoordinaten von lokalen Maxima im Bild des Bauteils 102. Jede Menge bestehend aus mindestens drei verschiedenen, geometrischen Merkmalen kann anhand einer Hashfunktion in einen Hashcode überführt werden. Damit kann für das weitere Verfahren für die Objekterkennung mit einer kleineren Datenmenge gearbeitet werden, da drei oder mehr Raumkoordinaten der geometrischen Merkmale in dem mehrdimensionalen Hashcode zusammengefasst werden. 1 shows an embodiment of a device 100 showing a method of recognizing an object 102 provides. The device 100 comprises an analysis circuit 101 that is designed to incorporate geometric features in a recording of the object 102 to register. For example, the recording of the object 102 be a two-dimensional image of a printed component that was recorded with a camera, for example. The recording can be made immediately before the start of the method, or existing recordings can be used for the method that are obtained from a storage medium via a network, for example. The geometric features can be characterized by distinctive areas in the image, such as mountains and / or valleys of a superficial microstructure of the object 102 . The inclusion of the object 102 should be done in a suitable manner so that the geometric features can be represented in the best possible and reproducible manner. If necessary, disturbing artifacts can for example be removed in a further image processing of the recording, so that only the object-specific geometric features can be registered. Geometric features are, for example, two-dimensional pixel coordinates of local maxima in the image of the component 102 . Any set consisting of at least three different geometric features can be converted into a hash code using a hash function. A smaller amount of data can thus be used for the further method for object recognition, since three or more spatial coordinates of the geometric features are combined in the multidimensional hash code.

Beginnend mit einem ersten Hashcode aus einer Menge mehrerer Hashcodes, basierend auf den registrierten geometrischen Merkmalen des Objektes 102, vergleicht das Verfahren einen ersten Hashcode mit einem Referenzhashcode hinsichtlich eines vordefinierten Kriteriums. Der Referenzhashcode wird durch Anwendung der Hashfunktion auf eine Teilmenge von geometrischen Referenzmerkmalen eines Referenzobjekts erzeugt und kann beispielsweise in einer Datenbank gespeichert sein. Das vordefinierte Kriterium kann erfüllt sein, wenn der Hashcode einen vordefinierten Abstand zu dem Referenz-Hashcode aufweist. Dabei wird nach ähnlichen Referenzhashcodes in einer Indexstruktur mit einer Vielzahl von gespeicherten möglichen Referenz-Hashcodes, beispielsweise anhand eines geeigneten Algorithmus, gesucht. Wenn ein Hashcode mit einem Referenzhashcode übereinstimmt, wird eine Transformationsvorschrift generiert, wobei die Transformationsvorschrift die geometrischen Merkmale, welche zum Hashcode beitragen, auf die geometrischen Referenzmerkmale, welche zum Referenz-Hashcode beitragen, abbildet. Für eine bessere Abbildung kann die Transformationsvorschrift zusätzlich angepasst werden.Starting with a first hash code from a set of several hash codes, based on the registered geometric features of the object 102 , the method compares a first hash code with a reference hash code with regard to a predefined criterion. The reference hash code is generated by applying the hash function to a subset of geometric reference features of a reference object and can, for example, be stored in a database. The predefined criterion can be met if the hash code is at a predefined distance from the reference hash code. In this case, a search is made for similar reference hash codes in an index structure with a large number of stored possible reference hash codes, for example using a suitable algorithm. If a hash code matches a reference hash code, a Transformation rule generated, the transformation rule mapping the geometric features that contribute to the hash code onto the geometric reference features that contribute to the reference hash code. The transformation rule can also be adapted for better mapping.

Die Transformationsvorschrift kann anschließend auf alle registrierten geometrischen Merkmale des Objekts angewandt werden, um transformierte geometrische Merkmale zu erhalten. Bei geometrischer Übereinstimmung der transformierten geometrischen Merkmale mit den geometrischen Referenzmerkmalen, wird das Objekt als Referenzobjekt identifiziert. Liegt keine geometrische Übereinstimmung vor, kann ein nächster Hashcode, basierend auf anderen geometrischen Merkmalen des Objekts 102, herangezogen werden. Das Objekt 102 gilt als nicht identifiziert, wenn keine geometrische Übereinstimmung der transformierten geometrischen Merkmale mit den geometrischen Referenzmerkmalen für alle betrachteten Hashcodes vorliegt. Damit kann das Verfahren bereits mit einem zu einem Referenz-Hashcode passenden Hashcode das Objekt 102 identifizieren. Dies kann insbesondere ein Vorteil sein, wenn nur ein Teil des Objektes 102 in der Bildaufnahme erfasst wurde, z.B. weil das Bauteil 102 teilweise verändert oder beschädigt wurde. Das Verfahren kann zuverlässige Ergebnisse zur Objekterkennung liefern, da bei der finalen Bewertung für die Erkennung des Objekts 102 alle transformierten geometrischen Merkmale mit den geometrischen Referenzmerkmalen verglichen werden können.The transformation rule can then be applied to all registered geometric features of the object in order to obtain transformed geometric features. If the transformed geometric features match the geometric reference features, the object is identified as the reference object. If there is no geometric match, a next hash code based on other geometric features of the object can be used 102 , can be used. The object 102 is considered not identified if there is no geometric agreement between the transformed geometric features and the geometric reference features for all of the hash codes considered. This means that the method can already identify the object with a hash code that matches a reference hash code 102 identify. This can be an advantage, in particular, if only part of the object 102 was recorded in the image recording, e.g. because the component 102 has been partially modified or damaged. The method can provide reliable results for object recognition, since the final evaluation for the recognition of the object 102 all transformed geometric features can be compared with the geometric reference features.

In den nächsten Abschnitten der Beschreibung werden Ausführungsbeispiele der einzelnen Verfahrensschritte, welche durch die Vorrichtung 100 mit der Analyseschaltung 101 zur Erkennung des Objekts 102, bereitgestellt werden, diskutiert. Die Ausführungsbeispiele dienen zum Verständnis der vorliegenden Erfindung und sollen keine einschränkende Wirkung für andere Ausführungsformen der Erfindung darstellen.In the next sections of the description, exemplary embodiments of the individual method steps, which are carried out by the device 100 with the analysis circuit 101 to recognize the object 102 , are discussed. The exemplary embodiments serve to understand the present invention and are not intended to represent a restrictive effect for other embodiments of the invention.

2 zeigt die Generierung eines Hashcodes 210 unter Anwendung einer Hashfunktion auf eine Teilmenge der geometrischen Merkmale 211-214 gemäß einem Ausführungsbeispiel. Der Hashcode 210, welcher mit dem Buchstaben H gekennzeichnet ist, kann in diesem Ausführungsbeispiel durch einen vierdimensionalen Vektor dargestellt werden. Die vier geometrischen Merkmale 211-214, die zur Erzeugung eines Hashcodes gemäß der illustrierten Hashfunktion verwendet werden, sind in 2 durch die Buchstaben A-D gekennzeichnet und entsprechen jeweils zweidimensionalen Koordinaten in einem festgelegten Koordinatensystem. Das Koordinatensystem kann beliebig gewählt sein oder sich beispielsweise an dem Koordinatensystem einer Vorrichtung zur Aufnahme des Objektes orientieren, beispielsweise einem Lichtmikroskop. 2 shows the generation of a hash code 210 using a hash function on a subset of the geometric features 211-214 according to an embodiment. The hash code 210 , which is identified by the letter H, can be represented in this exemplary embodiment by a four-dimensional vector. The four geometrical features 211-214 , which are used to generate a hash code according to the illustrated hash function, are in 2 identified by the letters AD and each correspond to two-dimensional coordinates in a fixed coordinate system. The coordinate system can be selected as desired or, for example, be based on the coordinate system of a device for recording the object, for example a light microscope.

In diesem Ausführungsbeispiel ist ein erstes geometrisches Merkmal 211 durch den Buchstaben A und ein zweites geometrisches Merkmal 212 durch den Buchstaben B gekennzeichnet. Es eignet sich das erste geometrische Merkmal 211 und das zweite geometrische Merkmal 212 derart aus der Teilmenge der geometrischen Merkmale 211-214 zu wählen, dass die Distanz zwischen dem ersten geometrischen Merkmal 211 und dem zweiten geometrischen Merkmal 212 am größten ist. Das erste geometrische Merkmal 211 und das zweite geometrische Merkmal 212 kann einen Kreis 215 aufspannen, der die Distanz zwischen dem ersten geometrischen Merkmal 211 und dem zweiten geometrischen Merkmal 212 als Durchmesser hat. Das erste und zweite geometrische Merkmal 211 und 212 kann ein lokales Koordinatensystem 216 aufspannen, wobei der Ursprung 0, 0 des lokalen Koordinatensystems 216 durch das erste geometrische Merkmal 211 und die Koordinate 1,1 des lokalen Koordinatensystems 216 durch das zweite geometrische Merkmal 212 definiert ist. Für das dritte und vierte geometrische Merkmal 213 und 214 kann man Koordinaten betrachten, die innerhalb des aufgespannten Kreises 215 liegen. Die Koordinaten x3, y3 des dritten geometrischen Merkmals 213 und die Koordinaten x4, y4 des vierten geometrischen Merkmals 214 können im lokalen Koordinatensystem 216 durch die Koordinaten x3', y3' und x4', y4' dargestellt werden. Der vierdimensionale Hashcode 210 kann durch die Koordinaten [x3', y3', x4', y4'] gebildet werden. Um Symmetrien in einer gegebenen Teilmenge bestehend aus gleichen geometrischen Merkmalen 211-214 zu vermeiden, wie z.B. durch Vertauschen des ersten geometrischen Merkmals 211 mit dem zweiten geometrischen Merkmal 212 oder Vertauschen des dritten geometrischen Merkmals 213 mit dem vierten geometrischen Merkmal 214, kann die Bedingung x3 <= x4 und x3+x4<=1 festgelegt werden. Damit werden die Hashcodes 210 eines Objekts aus sich unterscheidenden Teilmengen von geometrischen Merkmalen gebildet. Der Hashcode 210 beschreibt ein lokales Muster des Objekts in einer einzigen Koordinate und ist invariant gegenüber Translation, Rotation und Skalierung der geometrischen Merkmale 211-214. Weiterhin ist die Abbildung durch die Hashfunktion tolerant hinsichtlich kleiner Störungen. Beispielsweise machen sich kleine Änderungen in den Positionen der geometrischen Merkmale 211-214 durch kleine Änderungen in den Koordinaten des Hashcodes 210 bemerkbar. Damit kann das Verfahren auch bei kleinen Oberflächenveränderungen des Bauteils funktionieren und kann im Hinblick auf andere Erkennungsverfahren eine wesentliche Verbesserung darstellen.In this exemplary embodiment is a first geometric feature 211 by the letter A and a second geometric feature 212 identified by the letter B. It lends itself to the first geometric feature 211 and the second geometric feature 212 from the subset of the geometric features 211-214 to choose that the distance between the first geometric feature 211 and the second geometric feature 212 is greatest. The first geometric feature 211 and the second geometric feature 212 can make a circle 215 span the distance between the first geometric feature 211 and the second geometric feature 212 than has diameter. The first and second geometric feature 211 and 212 can be a local coordinate system 216 span, with the origin 0, 0 of the local coordinate system 216 by the first geometric feature 211 and the coordinate 1,1 of the local coordinate system 216 by the second geometric feature 212 is defined. For the third and fourth geometric feature 213 and 214 one can consider coordinates that are within the spanned circle 215 lie. The coordinates x3, y3 of the third geometric feature 213 and the coordinates x4, y4 of the fourth geometric feature 214 can be in the local coordinate system 216 are represented by the coordinates x3 ', y3' and x4 ', y4'. The four-dimensional hash code 210 can be formed by the coordinates [x3 ', y3', x4 ', y4']. About symmetries in a given subset consisting of the same geometric features 211-214 to be avoided, for example by swapping the first geometric feature 211 with the second geometric feature 212 or swapping the third geometric feature 213 with the fourth geometric feature 214 , the condition x3 <= x4 and x3 + x4 <= 1 can be specified. This will make the hash codes 210 of an object formed from differing subsets of geometric features. The hash code 210 describes a local pattern of the object in a single coordinate and is invariant to translation, rotation and scaling of the geometric features 211-214 . Furthermore, the mapping by the hash function is tolerant with regard to small disturbances. For example, there are small changes in the positions of the geometric features 211-214 by making small changes in the coordinates of the hash code 210 noticeable. This means that the method can also work with small surface changes of the component and can represent a significant improvement with regard to other detection methods.

Das Ausführungsbeispiel zur Generierung eines Hashcodes 210 in 2 umfasste vier geometrische Merkmale 211-214. Der Hashcode 210 kann alternativ aus mindestens drei geometrischen Merkmalen gebildet werden. Zur Bestimmung des ersten, zweiten und dritten geometrischen Merkmals kann die Definition des lokalen Koordinatensystems nach den gleichen Bedingungen wie im genannten Ausführungsbeispiel in 2 erfolgen. Hashcodes einer höher dimensionalen Ordnung, sind charakteristischer, sodass eine falsche, zufällige Übereinstimmung zwischen dem Hashcode mit einem Referenzhashcode als unwahrscheinlicher gilt. Damit kann sich die Rechenzeit für die Erkennung des Objekts reduzieren, da weniger Falsch-Positiv-Übereinstimmungen generiert und verworfen werden. Weitere Beispiele von Hashfunktionen können beliebig sein, wobei die räumliche Beziehung zwischen den geometrischen Merkmalen im generierten Hashcode erfasst und der Hashcode invariant gegenüber Translation, Rotation und Skalierung der geometrischen Merkmale sein sollte.The exemplary embodiment for generating a hash code 210 in 2 comprised four geometric features 211-214 . The hash code 210 can alternatively be formed from at least three geometric features. To determine the first, second and third geometric feature, the definition of the local coordinate system can be based on the same conditions as in the exemplary embodiment mentioned in FIG 2 respectively. Hash codes of a higher dimensional order are more characteristic, so that a false, random match between the hash code and a reference hash code is less likely. This can reduce the computing time for recognizing the object, since fewer false-positive matches are generated and discarded. Further examples of hash functions can be any, the spatial relationship between the geometric features being recorded in the generated hash code and the hash code being invariant to translation, rotation and scaling of the geometric features.

In einigen Ausführungsbeispielen kann eine Registrierung von geometrischen Merkmalen in der Aufnahme des Objekts anhand eines festgelegten Kriteriums oder einem Algorithmus erfolgen. Beispielsweise können geometrische Merkmale Koordinaten von Pixeln sein, wobei die Pixel beispielsweise durch maximale oder minimale Intensitäten, Kanten, Farben, Kontraste, absolute oder relative Abweichungen von einem Sollwert, Schwellwerte, Abstände und vielem mehr charakterisiert sein können. Weiterhin können beispielsweise Pixelkoordinaten durch Parameter bestimmt sein, wobei die Parameter aus einer Ausgleichsrechnung, wie z.B. Fitting einer Gaußkurve an Messdaten resultieren. Geometrische Merkmale können beispielsweise auch durch Merkmalsextraktionsalgorithmen, wie SIFT, SURF, BRISK, ORB, SWIFT, oder durch Techniken des maschinellen Sehens und viele weitere bestimmt werden. In some exemplary embodiments, registration of geometric features in the recording of the object can take place on the basis of a defined criterion or an algorithm. For example, geometric features can be coordinates of pixels, with the pixels being characterized, for example, by maximum or minimum intensities, edges, colors, contrasts, absolute or relative deviations from a target value, threshold values, distances and much more. Furthermore, for example, pixel coordinates can be determined by parameters, the parameters resulting from a compensation calculation, such as fitting a Gaussian curve to measurement data. Geometric features can also be determined, for example, by feature extraction algorithms such as SIFT, SURF, BRISK, ORB, SWIFT, or by machine vision techniques and many others.

3 zeigt ein Ausführungsbeispiel für eine Menge von geometrischen Merkmalen in einer Aufnahme 320 eines Objekts. Im Ausführungsbeispiel sind die geometrischen Merkmale mit dem Buchstaben „P“ durchnummeriert und in einem zweidimensionalen Koordinatensystem dargestellt. Um einen Hashcode aus einer Teilmenge von geometrischen Merkmalen zu bestimmen, können Gruppen von vier benachbarten geometrischen Merkmalen betrachtet werden. Im Ausführungsbeispiel sind benachbarte, geometrische Merkmale, wie z.B. 311-314 durch Kanten miteinander verbunden. Das Ausführungsbeispiel zeigt, dass ein Mindestabstand festgelegt werden kann, sodass geometrische Merkmale als Nachbarn deklariert werden. Beispielsweise ist das geometrische Merkmal 315 kein Nachbar des geometrischen Merkmals 313, da die Koordinaten beider Merkmale nicht den festgelegten Mindestabstand aufweisen. Aus der Menge von vier verschiedenen, benachbarten, geometrischen Merkmalen können jeweils Hashcodes generiert werden. Für die Bildung von weiteren Hashcodes können Permutationen betrachtet werden, sodass andere bzw. neue Nachbarn den geometrischen Merkmalen zugeordnet werden können. Dadurch können neue Teilmengen bestehend aus benachbarten geometrischen Merkmalen, gebildet werden, wobei sich die betrachteten Teilmengen unterscheiden sollten, um symmetrische Hashcodes zu vermeiden. Es können beispielsweise auch Variationen der Kombinationen von Nachbarn von Nachbarn berücksichtigt werden. Damit kann der Suchradius zur Hashbildung über zwei Kanten ausgedehnt werden. Dies kann beispielsweise verhindern, dass die Netzkonnektivität durch das Fehlen einzelner Punkte unterbrochen wird. Damit kann das Verfahren z.B. hinsichtlich seiner Robustheit verbessert werden. Die Bestimmung der Teilmengen von geometrischen Hashcodes kann nach unterschiedlichen Methoden erfolgen. Die Methode kann anhand von Kriterien, wie z.B. durch einen festgelegten Mindestabstand und/oder Maximalabstand die Teilmenge von geometrischen Merkmalen einschränken. In einem anderen Beispiel kann das Koordinatensystem mit den Koordinaten der geometrischen Merkmale in Gitter untergliedert werden, sodass Teilmengen von geometrischen Merkmalen innerhalb einer Gitterzelle betrachtet werden können. Im Allgemeinen umfassen weitere Beispiele beliebige Verfahren, welche die registrieren, geometrische Merkmale des Objekts anhand einer vordefinierten Methode in Teilmengen unterteilen können, sodass das Hashing angewandt werden kann. 3 shows an embodiment for a set of geometric features in a recording 320 of an object. In the exemplary embodiment, the geometric features are numbered consecutively with the letter “P” and shown in a two-dimensional coordinate system. In order to determine a hash code from a subset of geometric features, groups of four neighboring geometric features can be considered. In the exemplary embodiment, adjacent geometric features such as 311-314 are connected to one another by edges. The exemplary embodiment shows that a minimum distance can be established so that geometric features are declared as neighbors. For example, the geometric feature is 315 no neighbor of the geometric feature 313 because the coordinates of both features do not have the specified minimum distance. Hash codes can be generated from the set of four different, neighboring, geometric features. For the formation of further hash codes, permutations can be considered so that other or new neighbors can be assigned to the geometric features. As a result, new subsets consisting of neighboring geometric features can be formed, whereby the subsets considered should differ in order to avoid symmetrical hash codes. For example, variations in the combinations of neighbors of neighbors can also be taken into account. This means that the search radius for hash formation can be extended over two edges. This can, for example, prevent network connectivity from being interrupted due to the lack of individual points. In this way, the method can be improved, for example, with regard to its robustness. Different methods can be used to determine the subsets of geometric hash codes. The method can restrict the subset of geometric features on the basis of criteria, such as a defined minimum distance and / or maximum distance. In another example, the coordinate system with the coordinates of the geometric features can be subdivided into grids, so that subsets of geometric features can be viewed within a grid cell. In general, further examples include any method that can subdivide the registered geometric features of the object into subsets using a predefined method so that hashing can be applied.

4 zeigt ein Ausführungsbeispiel von 384 Hashcodes in einer Datenbank. In dem Ausführungsbeispiel wurden vierdimensionale Hashcodes aus den Teilmengen von 50 geometrischen Merkmalen von jeweils fünf Objekten generiert. In der horizontalen und vertikalen Achse sind jeweils die vier Koordinaten X, Y, Z, und W der Hashcodes aufgetragen und jeweils gegenübergestellt. Die Hashcodes im Ausführungsbeispiel in 4 können als Referenz-Hashcodes in einer Datenbank betrachtet werden, wobei sich die Referenz-Hashcodes unter Anwendung der Hashfunktion auf eine Teilmenge von geometrischen Referenzmerkmalen der Referenzobjekte ergeben. 4th shows an embodiment of 384 hash codes in a database. In the exemplary embodiment, four-dimensional hash codes were generated from the subsets of 50 geometric features of five objects each. The four coordinates X, Y, Z, and W of the hash codes are plotted and compared in each case on the horizontal and vertical axes. The hash codes in the exemplary embodiment in 4th can be viewed as reference hash codes in a database, the reference hash codes being obtained using the hash function on a subset of geometric reference features of the reference objects.

Für die Erkennung eines Objekts hinsichtlich eines Referenzobjekts in der Datenbank, werden die Hashcodes des Objekts mit den Referenz-Hashcodes der Referenzobjekte hinsichtlich eines vordefinierten Kriteriums verglichen. Das vordefinierte Kriterium kann festlegen, ob der betrachtete Hashcode dem Referenzhashcode in der Datenbank ähnlich ist, d.h. z.B., dass sich die Koordinaten zwischen Hashcode und Referenzhashcode geringfügig unterscheiden. In einem Ausführungsbeispiel ist das vordefinierte Kriterium erfüllt ist, wenn der Hashcode einen vordefinierten Abstand zu dem Referenz-Hashcode aufweist. Der vordefinierte Abstand kann beispielsweise ein Absolutwert sein, welcher z.B. den euklidischen Abstand ausgehend vom Hashcode betrachtet. Alle Referenzhashcodes innerhalb dieses Abstands können dann das vordefinierte Kriterium erfüllen, sodass der Hashcode mit dem Referenzhashcode als übereinstimmend betrachtet werden kann.For the recognition of an object with regard to a reference object in the database, the hash codes of the object are compared with the reference hash codes of the reference objects with regard to a predefined criterion. The predefined criterion can determine whether the hash code under consideration is similar to the reference hash code in the database, ie, for example, that the coordinates between the hash code and the reference hash code differ slightly. In one embodiment, the predefined criterion is met when the hash code is at a predefined distance from the reference hash code. The predefined distance can for example be an absolute value which, for example, considers the Euclidean distance based on the hash code. All reference hash codes within this distance can then meet the predefined criterion, so that the hash code can be considered to match the reference hash code.

In einem weiteren Ausführungsbeispiel kann der Referenz-Hashcode in einer Indexstruktur mit einer Vielzahl von gespeicherten möglichen Referenz-Hashcodes gesucht werden. Damit die vierdimensionale Distanzsuche effizient ablaufen kann, eignet es sich, eine Datenbank zu erstellen, die einen hierarchischen Suchindex z.B. in Form eines KD-Baums, eines Bereichsbaums oder eines Ball Trees verwaltet. Beispiele von Suchverfahren können beliebig sein, wie z.B. in Listen, Bäumen, Graphen, und umfassen manuelle oder automatische Methoden, die effizient Hashcodes mit Referenzhashcodes hinsichtlich eines vordefinierten Kriteriums vergleichen. Ist das vordefinierte Kriterium erfüllt, können Hashcode und Referenzhashcode als übereinstimmend betrachtet werden. Bei Übereinstimmung wird eine Transformationsvorschrift generiert, wobei die Transformationsvorschrift die Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes abbildet. Die Transformationsvorschrift kann beispielsweise eine Funktion oder Matrix sein, welche die geometrischen Merkmale des betrachteten Hashcodes den geometrischen Referenzmerkmale des zugehörigen Referenzhashcodes zuordnet. Anhand dieser Transformationsvorschrift können alle geometrischen Merkmale des Objekts auf transformierte geometrische Merkmale abgebildet werden.In a further exemplary embodiment, the reference hash code can be searched for in an index structure with a multiplicity of stored possible reference hash codes. So that the four-dimensional distance search can run efficiently, it is suitable to create a database that manages a hierarchical search index, e.g. in the form of a KD tree, an area tree or a ball tree. Examples of search methods can be any, such as in lists, trees, graphs, and include manual or automatic methods that efficiently compare hash codes with reference hash codes in terms of a predefined criterion. If the predefined criterion is met, the hash code and reference hash code can be regarded as matching. If they match, a transformation rule is generated, the transformation rule mapping the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. The transformation rule can be, for example, a function or matrix which assigns the geometric features of the hash code under consideration to the geometric reference features of the associated reference hash code. Using this transformation rule, all geometric features of the object can be mapped onto transformed geometric features.

In einem Ausführungsbeispiel kann die Transformationsvorschrift angepasst werden, um eine Abbildung der Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes zu verbessern. Beispielsweise kann ein RANSAC-Algorithmus verwendet werden, um eine Feinausrichtung zwischen den geometrischen Merkmalen und den geometrischen Referenzmerkmalen zu berechnen und Ausreißer zu bestimmen. Weitere Verfahren zum Anpassen der Transformationsvorschrift umfassen beispielsweise Ausgleichsverfahren wie die Methode der kleinesten Quadrate.In one exemplary embodiment, the transformation rule can be adapted in order to improve a mapping of the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. For example, a RANSAC algorithm can be used to compute a fine alignment between the geometric features and the reference geometric features and to determine outliers. Further methods for adapting the transformation rule include, for example, compensation methods such as the least squares method.

Ferner werden die transformierten geometrischen Merkmale und die geometrischen Referenzmerkmale auf geometrische Übereinstimmung überprüft. Die geometrische Übereinstimmung kann anhand von Algorithmen, wie z.B. RANSAC, oder durch Methoden des Maschinelles Sehen oder anhand eines festgelegten Kriteriums erfolgen.Furthermore, the transformed geometric features and the geometric reference features are checked for geometric correspondence. The geometric correspondence can be made using algorithms such as RANSAC, or using machine vision methods, or using a specified criterion.

Für die Erkennung des Objekts kann beispielsweise ein Score berechnet werden, welcher die Anzahl der exakten Übereinstimmungen der Merkmalspaare, die Anzahl der transformierten geometrischen Merkmale ohne übereinstimmendes geometrisches Referenzmerkmal, die Anzahl der geometrischen Referenzmerkmale ohne übereinstimmendes transformiertes geometrisches Merkmal und die Homographie als Anhaltspunkt für überlappende Bildbereiche berücksichtigt. Ein vereinfachtes Beispiel für den Score ist z.B. das Verhältnis aus Anzahl exakter Übereinstimmungen versus Anzahl an gesamten Merkmalspaaren zwischen transformierten geometrischen Merkmalen und Referenzmerkmalen. Beispielsweise können auch Bereiche großer Übereinstimmungen bewertet werden, da Beschädigungen nicht nur einzelne Merkmale, sondern ganze Bereiche verändern. Überschreitet der Score beispielsweise einen Schwellwert, kann das Objekt als zur Klasse des Referenzobjektes gehörend identifiziert werden. Andernfalls gilt das Objekt als nicht identifiziert, sodass mit dem nächsten Hashcode verfahren werden kann.For the detection of the object, for example, a score can be calculated which shows the number of exact matches of the pairs of features, the number of transformed geometric features without a matching geometric reference feature, the number of geometric reference features without a matching transformed geometric feature and the homography as a reference point for overlapping image areas taken into account. A simplified example of the score is, for example, the ratio of the number of exact matches versus the number of total pairs of features between transformed geometric features and reference features. For example, areas of great agreement can also be assessed, since damage changes not just individual features, but entire areas. If the score exceeds a threshold value, for example, the object can be identified as belonging to the class of the reference object. Otherwise, the object is considered unidentified, so that the next hash code can be used.

Der Score kann festlegen, welche Parameter entscheiden oder überwiegen, sodass ein Objekt als identifiziert klassifiziert werden soll. Der Schwellwert kann dabei festlegen, wie genau bzw. kritisch die Objekterkennung erfolgen soll und/oder wie tolerant das Verfahren z.B. gegenüber Ausreißern sein soll.The score can determine which parameters are decisive or predominate so that an object should be classified as identified. The threshold value can determine how precisely or critically the object detection should take place and / or how tolerant the method should be, e.g. towards outliers.

5 zeigt ein Ausführungsbeispiel für eine Vorrichtung 500 zur Aufnahme eines Objekts 501, insbesondere eines Bauteils. Die Vorrichtung umfasst eine Kamera 502 zum Anfertigen einer Aufnahme einer Aufsicht des Objekts 501 und eine Lichtquelle 503 zur gerichteten Beleuchtung des Objekts 501 mit einem Einfallswinkel kleiner als 30° zur Oberfläche des Objektes. Die Vorrichtung 500 kann verwendet werden, um beispielsweise die Struktur der Oberfläche des Objekts 501 geeignet zu erfassen und darzustellen. Zur Hervorhebung der Oberflächentopologie kann eine oder mehrere spezielle Lichtquellen 503 verwendet werden. Die Lichtquelle kann beispielsweise kreisförmig an der Vorrichtung 500 angeordnet sein, sodass z.B. das Licht über einen Lichtleiter mit einem sehr flachen Winkel auf das Zentrum der betrachteten Objektoberfläche einfallen kann. Die gerichtete Beleuchtung der Objektoberfläche sollte so erfolgen, dass das ausgesandte Licht aus der Lichtquelle 503 möglichst parallel zur Objektoberfläche erfolgen kann, wie z.B. mit Winkeln von 1,0°, 1,5°, 2,0° usw. Die Lichtquelle 503 kann ein beliebiger Gegenstand sein, dass elektromagnetische Strahlung im sichtbaren Bereich aussendet, sodass das Objekt direkt beleuchtet werden kann. 5 shows an embodiment of a device 500 for recording an object 501 , in particular a component. The device comprises a camera 502 for taking a picture of a top view of the object 501 and a light source 503 for directed lighting of the object 501 with an angle of incidence smaller than 30 ° to the surface of the object. The device 500 can be used, for example, to structure the surface of the object 501 suitable to capture and display. One or more special light sources can be used to highlight the surface topology 503 be used. The light source can for example be circular on the device 500 be arranged so that, for example, the light can be incident on the center of the observed object surface via a light guide at a very flat angle. The directional illumination of the object surface should be done in such a way that the emitted light comes from the light source 503 as parallel as possible to the object surface, such as with angles of 1.0 °, 1.5 °, 2.0 °, etc. The light source 503 can be any object that emits electromagnetic radiation in the visible range so that the object can be illuminated directly.

Ferner umfasst die Vorrichtung 500 ein optisches Bauelement 504, das ausgebildet ist, um Streulicht zu absorbieren, wobei das optische Bauelement 504 zwischen der Kamera 502 und dem Objekt 501 angeordnet ist. Das optische Bauelement 504 kann verwendet werden, um Streulicht, das beispielsweise durch Reflektion an der Oberfläche des Objekts 501 oder der Vorrichtung 500 entsteht, zu absorbieren. Das optische Bauelement 504 kann z.B. eine Blende, ein Filter oder ein beliebiges Bauteil sein, dass aufgrund seiner Materialeigenschaften Streulicht absorbieren kann. Das optische Bauelement 504 kann verwendet werden, um Aufnahmen des Objekts 501 mit einem guten Kontrastverhältnis zu erstellen, sodass geometrische Merkmale des Objekts 501 eindeutig und reproduzierbar registriert und wiedererkannt werden können.The device further comprises 500 an optical component 504 , which is designed to absorb scattered light, wherein the optical component 504 between the camera 502 and the object 501 is arranged. The optical one Component 504 can be used to detect scattered light, for example by reflection on the surface of the object 501 or the device 500 arises to absorb. The optical component 504 can be, for example, a screen, a filter or any other component that, due to its material properties, can absorb scattered light. The optical component 504 can be used to take pictures of the object 501 to create with a good contrast ratio, so that geometric features of the object 501 can be clearly and reproducibly registered and recognized.

Die Kamera 502 der Vorrichtung 500 kann eine Aufnahme der Aufsicht des Objekts 501 erstellen. Beispiele für Kameras sind Digitalkameras, Kompaktkameras, Spiegelreflexkameras, Systemkameras oder jede Art von Kamera, die als Teil eines Systems implementiert ist, wie z.B. Smartphones. Weiterhin können auch mikroskopische Verfahren zur Bildaufnahme verwendet werden, insbesondere Dunkelfeldmikroskopie.The camera 502 the device 500 can be a recording of the supervision of the object 501 create. Examples of cameras are digital cameras, compact cameras, single-lens reflex cameras, system cameras, or any type of camera that is implemented as part of a system, such as smartphones. Furthermore, microscopic methods can also be used for image recording, in particular dark field microscopy.

Um die geometrischen Merkmale im Objekt besser erkennen zu können, können Verfahren zur Vorverarbeitung der Aufnahmen der Objekte durchgeführt werden. Um unerwünschte Bildanteile zu entfernen und charakteristische geometrische Merkmale zu verstärken, können eine Reihe von Filtern auf das Bild angewendet werden. Diese umfassen beispielsweise Kompensation des geometrischen Abbildungsfehlers, wie z.B. Verzeichnung der Optik, Korrektur der Beleuchtung, Vordergrund freistellen, Umwandeln in ein Binärbild, Entrauschen, Selektion von Details, die dem erwarteten Merkmal entsprechen und vieles mehr. Weitere Ausführungsbeispiele umfassen eine Entfernung von periodischen Strukturen in der Aufnahme des Objekts, welche als Artefakt aus einem Fertigungsverfahren des Objekts erzeugt wurden. Insbesondere im Druckverfahren können periodische Störungen im Bauteil auftreten. Die periodischen Artefakte sind nicht objektspezifisch und eignen sich daher nicht als geometrisches Merkmal zur Objekterkennung. Durch das Entfernen der periodischen Störungen in der Aufnahme des Objekts, kann das Verfahren zur Objekterkennung verbessert werden, da damit die Artefakte nicht als geometrischen Merkmal registriert werden. Beispielsweise kann durch eine Spektralanalyse die Frequenzdomäne der störenden, periodischen Strukturen des Bildes gefiltert werden. Durch die Entfernung von periodischen Strukturen kann sich die statistische Verteilung der geometrischen Merkmale deutlich verändern, sodass das Verfahren zur Objekterkennung deutlich verbessert werden kann.In order to be able to better recognize the geometric features in the object, methods for preprocessing the recordings of the objects can be carried out. A number of filters can be applied to the image in order to remove unwanted parts of the image and to reinforce characteristic geometric features. These include, for example, compensation of the geometric aberration, such as distortion of the optics, correction of the lighting, cropping the foreground, converting into a binary image, noise removal, selection of details that correspond to the expected feature and much more. Further exemplary embodiments include the removal of periodic structures in the recording of the object which were generated as artifacts from a manufacturing process for the object. In the printing process in particular, periodic disturbances can occur in the component. The periodic artifacts are not object-specific and are therefore not suitable as a geometric feature for object recognition. By removing the periodic disturbances in the recording of the object, the method for object recognition can be improved, since the artifacts are not registered as a geometric feature. For example, the frequency domain of the interfering, periodic structures of the image can be filtered by means of a spectral analysis. By removing periodic structures, the statistical distribution of the geometric features can change significantly, so that the method for object recognition can be significantly improved.

6 zeigt ein Flussdiagramm eines Ausführungsbeispiels eines Verfahrens zur Erkennung eines Objektes, insbesondere eines Bauteils 700. Das Verfahren umfasset eine Registrierung von geometrischen Merkmalen in einer Aufnahme des Objektes 701 und eine Generierung eines Hashcodes unter Anwendung einer Hashfunktion auf eine Teilmenge der geometrischen Merkmale 702. Ferner umfasst das Verfahren einen Vergleich des Hashcodes mit einem Referenz-Hashcode hinsichtlich eines vordefinierten Kriteriums, wobei sich der Referenz-Hashcode unter Anwendung der Hashfunktion auf eine Teilmenge von geometrischen Referenzmerkmalen eines Referenzobjekts ergibt 703. Das Verfahren umfasst ferner eine Generierung einer Transformationsvorschrift bei Übereinstimmung des Hashcodes mit dem Referenz-Hashcode hinsichtlich des vordefinierten Kriteriums, wobei die Transformationsvorschrift die Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes abbildet 704. 6th shows a flowchart of an embodiment of a method for recognizing an object, in particular a component 700 . The method includes a registration of geometric features in a recording of the object 701 and generating a hash code using a hash function on a subset of the geometric features 702 . The method further comprises a comparison of the hash code with a reference hash code with regard to a predefined criterion, the reference hash code being obtained using the hash function on a subset of geometric reference features of a reference object 703 . The method further includes generating a transformation rule when the hash code matches the reference hash code with regard to the predefined criterion, the transformation rule mapping the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code 704 .

Im folgenden Abschnitt werden weitere Ausführungsbeispiele und Eigenschaften der Erfindung diskutiert.Further exemplary embodiments and properties of the invention are discussed in the following section.

In einem Ausführungsbeispiel kann die entwickelte Erfindung im optischen Bereich arbeiten und umfasst beispielsweise eine Kamera, die im sichtbaren Spektrum Bildinformationen aufnimmt. Die Identifikation des Objekts kann auf der Einzigartigkeit einer Menge von Oberflächenmerkmalen basieren, die für sich genommen durchaus mehrdeutig sein können, doch in Ihrer Gesamtheit unverwechselbar werden. Es können möglichst prägnante Merkmale herangezogen werden, die auch unter eingeschränkter Veränderung der Oberfläche, wie z.B. durch Alterung, Abnutzung, Verschmutzung etc. erkennbar bleiben.In one embodiment, the developed invention can operate in the optical field and includes, for example, a camera that records image information in the visible spectrum. The identification of the object can be based on the uniqueness of a number of surface features which, taken on their own, can be ambiguous, but become unmistakable as a whole. Characteristics that are as concise as possible can be used, which remain recognizable even with limited changes to the surface, e.g. due to aging, wear and tear, soiling, etc.

Die Oberfläche des Bauteils kann kartographiert werden. Dazu können markante Merkmale herangezogen werden. Diese sollten klar erkennbar, stabil, aber auch in ausreichender Anzahl vorhanden sein. Diese Karte beschreibt dabei nicht die Merkmale selbst, weil diese nur wenig Varianz aufweisen, sondern deren räumliche Verteilung und Beziehung untereinander. Es ist so möglich auch mit nur einem Ausschnitt oder einer lückenhaften Aufnahme, diese Zuordnung zu rekonstruieren. Für das Verfahren kann Geometrisches Hashing verwendet werden.The surface of the component can be mapped. Distinctive features can be used for this. These should be clearly recognizable, stable, but also available in sufficient numbers. This map does not describe the characteristics themselves, because they show little variance, but their spatial distribution and relationship to one another. In this way, it is possible to reconstruct this assignment with just a section or an incomplete recording. Geometric hashing can be used for the method.

Geometrische Hashcodes können ein effizientes Verfahren zum Abgleich von geometrischen Merkmalen darstellen und können das NP-schwere Point-Set-registration-Problem über die Verwendung einer Indexstruktur lösen, um den Suchaufwand erheblich zu reduzieren. Damit wird Komplexität in die Erstellung des Index verlagert und erlauben dafür Suchanfragen mit konstanter Zeitkomplexität. Grundvoraussetzung ist eine statistische Verteilung der geometrischen Merkmale, woraus auch die Notwendigkeit einer Vorverarbeitung zur Entfernung möglicherweise vorhandener periodischer Strukturen ergibt. In einem Ausführungsbeispiel der Erfindung bildet ein Hashingverfahren eine Gruppe von vier benachbarten geometrischen Merkmalen in einen vier-dimensionalen Hashcode ab.Geometric hash codes can represent an efficient method for matching geometric features and can solve the NP-heavy point set registration problem via the use of an index structure in order to reduce the search effort considerably. This shifts complexity into the creation of the index and allows search queries with constant time complexity. The basic prerequisite is a statistical distribution of the geometric features, from which also the need for preprocessing to remove any periodic structures that may be present results. In one embodiment of the invention, a hashing method maps a group of four neighboring geometric features into a four-dimensional hash code.

Die geometrischen Hashcodes können einige wünschenswerte Eigenschaften haben. Diese sind: ist invariant gegenüber Rotation und Skalierung, toleriert geringe perspektive Verzerrungen, ist robust gegenüber Positionsrauschen, sodass eine kleine Positionsänderung der geometrischen Merkmale eine kleine Änderung des Hashcodes bewirkt. Weiterhin kann das Verfahren auch mit stark verrauschten geometrischen Merkmalen mit großer Anzahl an Ausreißern aus Anfrage- und Referenzmenge funktionieren, z.B. verursacht durch Schäden oder Veränderungen der Oberfläche, nur teilweise übereinstimmende Bildausschnitte wegen Verdeckung oder veränderter Kameraposition. Weiterhin kann das Verfahren eine sehr gute Skalierbarkeit haben, sodass problemlos Millionen von Objekten verwaltet werden können, ohne Einfluss auf die Suchdauer zu haben. Weiterhin kann das Verfahren eine geringe Kollisionswahrscheinlichkeit haben, d.h. es besteht eine geringe Gefahr von Verwechselungen, durch die hohe Dimensionalität der verwendeten Hashcodes und gute Ausnutzung des Schlüsselraumes.The geometric hash codes can have some desirable properties. These are: is invariant to rotation and scaling, tolerates low perspective distortions, is robust to positional noise, so that a small change in position of the geometric features causes a small change in the hash code. Furthermore, the method can also work with highly noisy geometric features with a large number of outliers from the query and reference set, e.g. caused by damage or changes to the surface, only partially matching image sections due to obscuration or a changed camera position. Furthermore, the method can have very good scalability, so that millions of objects can be managed without any problems without affecting the search time. Furthermore, the method can have a low probability of collision, i.e. there is a low risk of mix-ups due to the high dimensionality of the hash codes used and good utilization of the key space.

Ein Vorteil der Erfindung kann ein zuverlässiges und schnelles, Identifikationsverfahren für gedruckte Bauteile sein, das vollständig ohne zusätzliche Bauteilmarkierung auskommt. Die Kostenneutralität in der Fertigung kann die Nachverfolgung auch kleinster und preiswertester Bauteile sowohl in großen als auch kleinen Stückzahlen ermöglichen.One advantage of the invention can be a reliable and fast identification method for printed components that does not require any additional component marking. The cost-neutrality in production can enable the tracking of even the smallest and cheapest components in both large and small quantities.

Der Vorteil gegenüber anderen optischen Verfahren kann die hohe Geschwindigkeit der Erkennung und die gute Skalierbarkeit, die Robustheit gegenüber variablen Aufnahmebedingungen, sowie Veränderung und/oder Beschädigung des Bauteils sein. Auch muss nicht zwangsläufig der gleiche Bildausschnitt verglichen werden, solange die Überschneidung ausreichend ist. Im Gegensatz zu bisher bekannten Ansätzen beeinträchtigt eine mögliche Rotation das Verfahren überhaupt nicht. Aufgrund der Robustheit gelten keine hohen Anforderungen an die Bilderfassung, auch handliche Geräte sind denkbar. Weil nur die Position, nicht aber die genaue Struktur eines Merkmals einbezogen wird, kann das Verfahren unempfindlich gegen eine Veränderung derselben sein. Andere Verfahren tolerieren zwar großflächige Verdeckung oder Beschädigung der Oberfläche, brauchen jedoch zur Identifikation Bereiche, die unverändert sind. Geringfügige aber die ganze Oberfläche betreffende Veränderungen, z.B. durch Alterung oder Korrosion, führen bei Ihnen zu einem starken Nachlassen der Erkennungsgenauigkeit. Es werden grundsätzlich keine Marker zum Eingrenzen der zu vergleichenden Region benötigt, solange das Bild aus der Datenbankanfrage innerhalb des erfassten Referenzbereiches liegt. Theoretisch könnte die gesamte Bauteiloberfläche in der Referenzdatenbank gespeichert werden. Das Verfahren kann eine gute Skalierung aufweisen und kann auch mit großen Datenmengen ohne Einfluss auf die Erkennungsgeschwindigkeit zurechtkommen.The advantage over other optical methods can be the high speed of detection and the good scalability, the robustness against variable recording conditions, as well as changes and / or damage to the component. The same image section does not necessarily have to be compared as long as the overlap is sufficient. In contrast to previously known approaches, a possible rotation does not affect the process at all. Due to its robustness, there are no high requirements for image acquisition, and handy devices are also conceivable. Because only the position, but not the exact structure of a feature, is included, the method can be insensitive to a change in the same. Other methods tolerate large areas of coverage or damage to the surface, but require areas for identification that are unchanged. Minor changes affecting the entire surface, e.g. due to aging or corrosion, lead to a significant decrease in detection accuracy. In principle, no markers are required to delimit the region to be compared as long as the image from the database query lies within the recorded reference area. Theoretically, the entire component surface could be saved in the reference database. The method can have good scaling and can also cope with large amounts of data without affecting the recognition speed.

Technische Anwendungsgebiete der Erfindung umfassen beispielsweise die Verfolgung von Bauteilen in der Fertigung und Montage, in Bereichen, wo herkömmliche Markierungssysteme nicht eingesetzt werden können, z.B. aufgrund von Platzmangel, Beeinträchtigung der Bauteilfunktion, Problemen bei der Applikation oder aus Kostengründen. Weiterhin eignet sich das Verfahren zur Unterscheidung zwischen Originalteil und Fälschung z.B. im Bereich des Plagiatschutz.Technical fields of application of the invention include, for example, the tracking of components in production and assembly, in areas where conventional marking systems cannot be used, e.g. due to lack of space, impairment of component function, problems with application or for cost reasons. The process is also suitable for differentiating between an original part and a counterfeit, e.g. in the area of counterfeit protection.

Die Aspekte und Merkmale, die zusammen mit einem oder mehreren der vorher detaillierten Beispiele und Figuren beschrieben sind, können auch mit einem oder mehreren der anderen Beispiele kombiniert werden, um ein gleiches Merkmal des anderen Beispiels zu ersetzen oder um das Merkmal in das andere Beispiel zusätzlich einzuführen.The aspects and features that are described together with one or more of the previously detailed examples and figures can also be combined with one or more of the other examples in order to replace an identical feature of the other example or to add the feature in the other example to introduce.

Beispiele können weiterhin ein Computerprogramm mit einem Programmcode zum Ausführen eines oder mehrerer der obigen Verfahren sein oder sich darauf beziehen, wenn das Computerprogramm auf einem Computer oder Prozessor ausgeführt wird. Schritte, Operationen oder Prozesse von verschiedenen, oben beschriebenen Verfahren können durch programmierte Computer oder Prozessoren ausgeführt werden. Beispiele können auch Programmspeichervorrichtungen, z. B. Digitaldatenspeichermedien, abdecken, die maschinen-, prozessor- oder computerlesbar sind und maschinenausführbare, prozessorausführbare oder computerausführbare Programme von Anweisungen codieren. Die Anweisungen führen einige oder alle der Schritte der oben beschriebenen Verfahren aus oder verursachen deren Ausführung. Die Programmspeichervorrichtungen können z. B. Digitalspeicher, magnetische Speichermedien wie beispielsweise Magnetplatten und Magnetbänder, Festplattenlaufwerke oder optisch lesbare Digitaldatenspeichermedien umfassen oder sein. Weitere Beispiele können auch Computer, Prozessoren oder Steuereinheiten, die zum Ausführen der Schritte der oben beschriebenen Verfahren programmiert sind, oder (feld-)programmierbare Logik-Arrays ((F)PLAs = (Field) Programmable Logic Arrays) oder (feld)programmierbare Gate-Arrays ((F)PGA = (Field) Programmable Gate Arrays), die zum Ausführen der Schritte der oben beschriebenen Verfahren programmiert sind, abdecken.Examples can furthermore be or relate to a computer program with a program code for executing one or more of the above methods when the computer program is executed on a computer or processor. Steps, operations or processes of various methods described above can be carried out by programmed computers or processors. Examples can also include program storage devices, e.g. Digital data storage media that are machine, processor, or computer readable and encode machine, processor, or computer executable programs of instructions. The instructions perform or cause some or all of the steps in the procedures described above. The program storage devices may e.g. B. digital storage, magnetic storage media such as magnetic disks and tapes, hard disk drives or optically readable digital data storage media include or be. Further examples can also be computers, processors or control units which are programmed to carry out the steps of the method described above, or (field) programmable logic arrays ((F) PLAs = (field) programmable logic arrays) or (field) programmable gates - Cover arrays ((F) PGA = (Field) Programmable Gate Arrays) programmed to perform the steps of the procedures described above.

Durch die Beschreibung und Zeichnungen werden nur die Grundsätze der Offenbarung dargestellt. Weiterhin sollen alle hier aufgeführten Beispiele grundsätzlich ausdrücklich nur illustrativen Zwecken dienen, um den Leser beim Verständnis der Grundsätze der Offenbarung und der durch den (die) Erfinder beigetragenen Konzepte zur Weiterentwicklung der Technik zu unterstützen. Alle hiesigen Aussagen über Grundsätze, Aspekte und Beispiele der Offenbarung sowie konkrete Beispiele derselben umfassen deren Entsprechungen.The description and drawings only represent the principles of the disclosure. Furthermore, all examples listed here are expressly intended for illustrative purposes only, in order to support the reader in understanding the principles of the disclosure and the concepts contributed by the inventor (s) for the further development of the technology. All statements herein about principles, aspects and examples of the disclosure as well as specific examples of the same include their equivalents.

Ein als „Mittel zum...“ Ausführen einer bestimmten Funktion bezeichneter Funktionsblock kann sich auf eine Schaltung beziehen, die ausgebildet ist zum Ausführen einer bestimmten Funktion. Somit kann ein „Mittel für etwas“ als ein „Mittel ausgebildet für oder geeignet für etwas“ implementiert sein, z. B. ein Bauelement oder eine Schaltung ausgebildet für oder geeignet für die jeweilige Aufgabe.A function block referred to as “means for ...” performing a specific function can refer to a circuit that is designed to perform a specific function. Thus, a “means for something” can be implemented as a “means designed for or suitable for something”, e.g. B. a component or a circuit designed for or suitable for the respective task.

Funktionen verschiedener in den Figuren gezeigter Elemente einschließlich jeder als „Mittel“, „Mittel zum Bereitstellen eines Signals“, „Mittel zum Erzeugen eines Signals“, etc. bezeichneter Funktionsblöcke kann in Form dedizierter Hardware, z. B „eines Signalanbieters“, „einer Signalverarbeitungseinheit“, „eines Prozessors“, „einer Steuerung“ etc. sowie als Hardware fähig zum Ausführen von Software in Verbindung mit zugehöriger Software implementiert sein. Bei Bereitstellung durch einen Prozessor können die Funktionen durch einen einzelnen dedizierten Prozessor, durch einen einzelnen gemeinschaftlich verwendeten Prozessor oder durch eine Mehrzahl von individuellen Prozessoren bereitgestellt sein, von denen einige oder von denen alle gemeinschaftlich verwendet werden können. Allerdings ist der Begriff „Prozessor“ oder „Steuerung“ bei Weitem nicht auf ausschließlich zur Ausführung von Software fähige Hardware begrenzt, sondern kann Digitalsignalprozessor-Hardware (DSP-Hardware; DSP = Digital Signal Processor), Netzprozessor, anwendungsspezifische integrierte Schaltung (ASIC = Application Specific Integrated Circuit), feldprogrammierbare Logikanordnung (FPGA = Field Programmable Gate Array), Nurlesespeicher (ROM = Read Only Memory) zum Speichern von Software, Direktzugriffsspeicher (RAM = Random Access Memory) und nichtflüchtige Speichervorrichtung (storage) umfassen. Sonstige Hardware, herkömmliche und/oder kundenspezifische, kann auch eingeschlossen sein.Functions of various elements shown in the figures, including each function block designated as "means", "means for providing a signal", "means for generating a signal", etc., may be in the form of dedicated hardware, e.g. B “a signal provider”, “a signal processing unit”, “a processor”, “a controller” etc. as well as being implemented as hardware capable of executing software in conjunction with the associated software. When provided by a processor, the functions can be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some or all of which can be shared. However, the term "processor" or "control" is by no means limited to hardware that is exclusively capable of executing software, but can include digital signal processor hardware (DSP hardware; DSP = digital signal processor), network processor, application-specific integrated circuit (ASIC = application) Specific Integrated Circuit), Field Programmable Gate Array (FPGA), Read Only Memory (ROM) for storing software, Random Access Memory (RAM), and non-volatile storage device (storage). Other hardware, conventional and / or custom, can also be included.

Ein Blockdiagramm kann zum Beispiel ein grobes Schaltdiagramm darstellen, das die Grundsätze der Offenbarung implementiert. Auf ähnliche Weise können ein Flussdiagramm, ein Ablaufdiagramm, ein Zustandsübergangsdiagramm, ein Pseudocode und dergleichen verschiedene Prozesse, Operationen oder Schritte repräsentieren, die zum Beispiel im Wesentlichen in computerlesbarem Medium dargestellt und so durch einen Computer oder Prozessor ausgeführt werden, ungeachtet dessen, ob ein solcher Computer oder Prozessor explizit gezeigt ist. In der Beschreibung oder in den Patentansprüchen offenbarte Verfahren können durch ein Bauelement implementiert werden, das ein Mittel zum Ausführen eines jeden der jeweiligen Schritte dieser Verfahren aufweist.For example, a block diagram may represent a high level circuit diagram that implements the principles of the disclosure. Similarly, a flowchart, sequence diagram, state transition diagram, pseudocode, and the like may represent various processes, operations, or steps, for example, essentially represented in computer-readable medium and thus performed by a computer or processor, whether or not such Computer or processor is shown explicitly. Methods disclosed in the description or in the claims can be implemented by a device having a means for performing each of the respective steps of these methods.

Es versteht sich, dass die Offenbarung mehrerer, in der Beschreibung oder den Ansprüchen offenbarter Schritte, Prozesse, Operationen oder Funktionen nicht als in der bestimmten Reihenfolge befindlich ausgelegt werden soll, sofern dies nicht explizit oder implizit anderweitig, z. B. aus technischen Gründen, angegeben ist. Daher werden diese durch die Offenbarung von mehreren Schritten oder Funktionen nicht auf eine bestimmte Reihenfolge begrenzt, es sei denn, dass diese Schritte oder Funktionen aus technischen Gründen nicht austauschbar sind. Ferner kann bei einigen Beispielen ein einzelner Schritt, Funktion, Prozess oder Operation mehrere Teilschritte, -funktionen, -prozesse oder -operationen einschließen und/oder in dieselben aufgebrochen werden. Solche Teilschritte können eingeschlossen sein und Teil der Offenbarung dieses Einzelschritts sein, sofern sie nicht explizit ausgeschlossen sind.It should be understood that the disclosure of multiple steps, processes, operations, or functions disclosed in the specification or claims should not be construed as being in order, unless explicitly or implicitly otherwise, e.g. B. is given for technical reasons. Therefore, the disclosure of several steps or functions does not restrict them to a specific order, unless these steps or functions are not interchangeable for technical reasons. Further, in some examples, a single step, function, process, or operation may include and / or be broken into multiple sub-steps, functions, processes, or operations. Such partial steps can be included and part of the disclosure of this individual step, unless they are explicitly excluded.

Weiterhin sind die folgenden Ansprüche hiermit in die detaillierte Beschreibung aufgenommen, wo jeder Anspruch als getrenntes Beispiel für sich stehen kann. Während jeder Anspruch als getrenntes Beispiel für sich stehen kann, ist zu beachten, dass - obwohl ein abhängiger Anspruch sich in den Ansprüchen auf eine bestimmte Kombination mit einem oder mehreren anderen Ansprüchen beziehen kann - andere Beispiele auch eine Kombination des abhängigen Anspruchs mit dem Gegenstand jedes anderen abhängigen oder unabhängigen Anspruchs umfassen können. Solche Kombinationen werden hier explizit vorgeschlagen, sofern nicht angegeben ist, dass eine bestimmte Kombination nicht beabsichtigt ist. Ferner sollen auch Merkmale eines Anspruchs für jeden anderen unabhängigen Anspruch eingeschlossen sein, selbst wenn dieser Anspruch nicht direkt abhängig von dem unabhängigen Anspruch gemacht ist.Furthermore, the following claims are hereby incorporated into the detailed description, where each claim can stand on its own as a separate example. While each claim may stand on its own as a separate example, it should be noted that although a dependent claim in the claims may refer to a particular combination with one or more other claims, other examples also combine the dependent claim with the subject matter of each other dependent or independent claims. Such combinations are explicitly suggested here unless it is indicated that a particular combination is not intended. Furthermore, features of a claim are also intended to be included for any other independent claim, even if that claim is not made directly dependent on the independent claim.

Claims (20)

Ein Verfahren zur Erkennung eines Objektes, insbesondere eines Bauteils (700), umfassend: Registrierung von geometrischen Merkmalen in einer Aufnahme des Objektes (701); Generierung eines Hashcodes unter Anwendung einer Hashfunktion auf eine Teilmenge der geometrischen Merkmale (702); Vergleich des Hashcodes mit einem Referenz-Hashcode hinsichtlich eines vordefinierten Kriteriums, wobei sich der Referenz-Hashcode unter Anwendung der Hashfunktion auf eine Teilmenge von geometrischen Referenzmerkmalen eines Referenzobjekts ergibt (703); und Generierung einer Transformationsvorschrift bei Übereinstimmung des Hashcodes mit dem Referenz-Hashcode hinsichtlich des vordefinierten Kriteriums, wobei die Transformationsvorschrift die Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes abbildet (704).A method for recognizing an object, in particular a component (700), comprising: registration of geometric features in a recording of the object (701); Generating a hash code using a hash function on a subset of the geometric features (702); Comparison of the hash code with a reference hash code with regard to a predefined criterion, the reference hash code using the hash function on a subset of yields geometric reference features of a reference object (703); and generating a transformation rule when the hash code matches the reference hash code with regard to the predefined criterion, the transformation rule mapping the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code (704). Das Verfahren (700) nach Anspruch 1, wobei die Hashfunktion zumindest basierend auf den zweidimensionalen Koordinaten eines ersten geometrischen Merkmals x1, y1, eines zweiten geometrischen Merkmals x2, y2 und eines dritten geometrischen Merkmals x3, y3, einen Hashcode erzeugt, wobei die Koordinaten des dritten geometrischen Merkmals innerhalb eines Kreises mit einem Durchmesser bestimmt durch den Abstand der Koordinaten des ersten und zweiten geometrischen Merkmals, liegt, wobei die Koordinaten x3, y3 des dritten geometrischen Merkmals, dargestellt im lokalen zweidimensionalen Koordinatensystem, das durch die Koordinaten des ersten geometrischen Merkmals x1, y1 definiert als Ursprung 0, 0 des Koordinatensystems und durch die Koordinaten des zweiten geometrischen Merkmals x2, y2 definiert durch die Koordinaten 1, 1 aufgespannt wird, den Hashcode [x3', y3'] bilden.The method (700) according to Claim 1 , wherein the hash function at least based on the two-dimensional coordinates of a first geometric feature x1, y1, a second geometric feature x2, y2 and a third geometric feature x3, y3, generates a hash code, the coordinates of the third geometric feature within a circle with a Diameter determined by the distance between the coordinates of the first and second geometric feature, the coordinates x3, y3 of the third geometric feature, represented in the local two-dimensional coordinate system, which is defined by the coordinates of the first geometric feature x1, y1 as the origin 0, 0 of the coordinate system and is spanned by the coordinates of the second geometric feature x2, y2 defined by the coordinates 1, 1, form the hash code [x3 ', y3']. Das Verfahren (700) nach Anspruch 2, wobei die Hashfunktion zusätzlich basierend auf den zweidimensionalen Koordinaten x4, y4 eines vierten geometrischen Merkmals einen Hashcode erzeugt, wobei die Koordinaten x4', y4' des vierten geometrischen Merkmals dargestellt im lokalen zweidimensionalen Koordinatensystem aufgespannt durch die Koordinaten des ersten und zweiten geometrischen Merkmals, zum Hashcode [x3', y3', x4', y4'] beitragen; wobei für die Koordinaten des dritten und vierten geometrischen Merkmals gilt x3 <= x4 und x3+x4<=1.The method (700) according to Claim 2 , the hash function additionally generating a hash code based on the two-dimensional coordinates x4, y4 of a fourth geometric feature, the coordinates x4 ', y4' of the fourth geometric feature represented in the local two-dimensional coordinate system spanned by the coordinates of the first and second geometric feature, for Contribute hash code [x3 ', y3', x4 ', y4']; where x3 <= x4 and x3 + x4 <= 1 applies to the coordinates of the third and fourth geometric features. Das Verfahren (700) nach einem der vorhergehenden Ansprüche, wobei das vordefinierte Kriterium erfüllt ist, wenn der Hashcode einen vordefinierten Abstand zu dem Referenz-Hashcode aufweist.The method (700) according to any one of the preceding claims, wherein the predefined criterion is met if the hash code is a predefined distance from the reference hash code. Das Verfahren (700) nach einem der vorhergehenden Ansprüche, ferner umfassend: Suchen des Referenz-Hashcodes in einer Indexstruktur mit einer Vielzahl von gespeicherten möglichen Referenz-Hashcodes.The method (700) of any preceding claim, further comprising: Searching for the reference hash code in an index structure with a large number of stored possible reference hash codes. Das Verfahren (700) nach einem der vorhergehenden Ansprüche, ferner umfassend: Transformieren aller geometrischen Merkmale des Objektes mit der Transformationsvorschrift, um transformierten geometrischen Merkmale zu erhalten; und Überprüfen der transformierten geometrischen Merkmale und der geometrischen Referenzmerkmale auf geometrische Übereinstimmung, wobei bei festgestellter Übereinstimmung das Objekt als zur Klasse des Referenzobjektes gehörend identifiziert wird.The method (700) of any preceding claim, further comprising: Transforming all geometric features of the object with the transformation rule in order to obtain transformed geometric features; and Checking the transformed geometric features and the geometric reference features for geometric correspondence, with the object being identified as belonging to the class of the reference object if a correspondence is established. Das Verfahren (700) nach einem der vorhergehenden Ansprüche, ferner umfassend: Anpassen der Transformationsvorschrift, um eine Abbildung der Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes zu verbessern.The method (700) of any preceding claim, further comprising: Adapting the transformation rule in order to improve a mapping of the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. Das Verfahren (700) nach einem der vorhergehenden Ansprüche, ferner umfassend: Entfernung von periodischen Strukturen in der Aufnahme des Objekts, welche als Artefakt aus einem Fertigungsverfahren des Objekts erzeugt wurden.The method (700) of any preceding claim, further comprising: Removal of periodic structures in the recording of the object, which were created as artifacts from a manufacturing process for the object. Das Verfahren (700) nach einem der vorhergehenden Ansprüche, ferner umfassend: Erzeugen der Aufnahme des Objekts bei gerichteter Beleuchtung des Objekts mit einem Einfallswinkel kleiner als 30° zur Oberfläche des Objektes.The method (700) of any preceding claim, further comprising: Generating the recording of the object with directed illumination of the object with an angle of incidence less than 30 ° to the surface of the object. Eine Vorrichtung (500) zur Aufnahme eines Objekts (501), insbesondere eines Bauteils, umfassend: eine Kamera (502) zum Anfertigen einer Aufnahme einer Aufsicht des Objekts (501); eine Lichtquelle (503) zur gerichteten Beleuchtung des Objekts (501) mit einem Einfallswinkel kleiner als 30° zur Oberfläche des Objektes (501).A device (500) for receiving an object (501), in particular a component, comprising: a camera (502) for taking a picture of a plan view of the object (501); a light source (503) for directed illumination of the object (501) with an angle of incidence smaller than 30 ° to the surface of the object (501). Die Vorrichtung (500) nach Anspruch 10, ferner umfassend: Ein optisches Bauelement (504), das ausgebildet ist, um Streulicht zu absorbieren, wobei das optische Bauelement (504) zwischen der Kamera (502) und dem Objekt (501) angeordnet ist.The device (500) after Claim 10 , further comprising: an optical component (504) which is designed to absorb scattered light, wherein the optical component (504) is arranged between the camera (502) and the object (501). Eine Vorrichtung (100) zur Erkennung eines Objektes (102), insbesondere eines Bauteils, umfassend: eine Analyseschaltung (101), die ausgebildet ist, um geometrische Merkmale in einer Aufnahme des Objektes (102) zu registrieren; um einen Hashcode unter Anwendung einer Hashfunktion auf eine Teilmenge der geometrischen Merkmale zu generieren; um den Hashcode mit einem Referenz-Hashcode hinsichtlich eines vordefinierten Kriteriums zu vergleichen, wobei sich der Referenz-Hashcode unter Anwendung der Hashfunktion auf eine Teilmenge von geometrischen Referenzmerkmalen eines Referenzobjekts ergibt; und um eine Transformationsvorschrift bei Übereinstimmung des Hashcodes mit dem Referenz-Hashcode hinsichtlich des vordefinierten Kriteriums zu generieren, wobei die Transformationsvorschrift die Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes abbildet.A device (100) for recognizing an object (102), in particular a component, comprising: an analysis circuit (101) which is designed to register geometric features in a recording of the object (102); to generate a hash code using a hash function on a subset of the geometric features; to compare the hash code with a reference hash code with regard to a predefined criterion, the reference hash code being obtained using the hash function on a subset of geometric reference features of a reference object; and to generate a transformation rule when the hash code matches the reference hash code with regard to the predefined criterion, the transformation rule mapping the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. Die Vorrichtung (100) nach Anspruch 12, wobei die Analyseschaltung (101) ferner ausgebildet ist, sodass die Hashfunktion zumindest basierend auf den zweidimensionalen Koordinaten eines ersten geometrischen Merkmals (211) x1, y1, eines zweiten geometrischen Merkmals (212) x2, y2 und eines dritten geometrischen Merkmals (213) x3, y3, einen Hashcode (210) erzeugt; wobei die Koordinaten des dritten geometrischen Merkmals (213) innerhalb eines Kreises (215) mit einem Durchmesser bestimmt durch den Abstand der Koordinaten des ersten (211) und zweiten geometrischen Merkmals (212), liegt; wobei die Koordinaten x3, y3 des dritten geometrischen Merkmals (213), dargestellt im lokalen zweidimensionalen Koordinatensystem (216), das durch die Koordinaten des ersten geometrischen Merkmals (211) x1, y1 definiert als Ursprung 0, 0 des Koordinatensystems (216) und durch die Koordinaten des zweiten geometrischen Merkmals (212) x2, y2 definiert durch die Koordinaten 1, 1 aufgespannt wird, den Hashcode (210) [x3', y3'] bilden.The device (100) according to Claim 12 , wherein the analysis circuit (101) is further designed so that the hash function is based at least on the two-dimensional coordinates of a first geometric feature (211) x1, y1, a second geometric feature (212) x2, y2 and a third geometric feature (213) x3 , y3, generates a hash code (210); wherein the coordinates of the third geometric feature (213) lies within a circle (215) with a diameter determined by the distance between the coordinates of the first (211) and second geometric features (212); wherein the coordinates x3, y3 of the third geometric feature (213) represented in the local two-dimensional coordinate system (216) defined by the coordinates of the first geometric feature (211) x1, y1 as the origin 0, 0 of the coordinate system (216) and by the coordinates of the second geometric feature (212) x2, y2 defined by the coordinates 1, 1 are spanned, form the hash code (210) [x3 ', y3']. Die Vorrichtung (100) nach Anspruch 13, wobei die Analyseschaltung (101) ferner ausgebildet ist, sodass die Hashfunktion zusätzlich basierend auf den zweidimensionalen Koordinaten x4, y4 eines vierten geometrischen Merkmals (214) einen Hashcode (210) erzeugt, wobei die Koordinaten x4', y4' des vierten geometrischen Merkmals (214) dargestellt im lokalen zweidimensionalen Koordinatensystem (216) aufgespannt durch die Koordinaten des ersten (211) und zweiten geometrischen Merkmals (212), zum Hashcode (210) [x3', y3', x4', y4'] beitragen; wobei für die Koordinaten des dritten (213) und vierten geometrischen Merkmals (214) gilt x3 <= x4 und x3+x4<=1.The device (100) according to Claim 13 , wherein the analysis circuit (101) is further designed so that the hash function additionally generates a hash code (210) based on the two-dimensional coordinates x4, y4 of a fourth geometric feature (214), the coordinates x4 ', y4' of the fourth geometric feature ( 214) represented in the local two-dimensional coordinate system (216) spanned by the coordinates of the first (211) and second geometric features (212) contribute to the hash code (210) [x3 ', y3', x4 ', y4']; where x3 <= x4 and x3 + x4 <= 1 applies to the coordinates of the third (213) and fourth geometric feature (214). Die Vorrichtung (100) nach einem der Ansprüche 12 bis 14, wobei das vordefinierte Kriterium erfüllt ist, wenn der Hashcode einen vordefinierten Abstand zu dem Referenz-Hashcode aufweist.The device (100) according to one of the Claims 12 until 14th , wherein the predefined criterion is met if the hash code has a predefined distance from the reference hash code. Die Vorrichtung (100) nach einem der Ansprüche 12 bis 15, wobei Die Analyseschaltung (101) ferner ausgebildet ist, um den Referenz-Hashcode in einer Indexstruktur mit einer Vielzahl von gespeicherten möglichen Referenz-Hashcodes zu suchen.The device (100) according to one of the Claims 12 until 15th wherein the analysis circuit (101) is further designed to search for the reference hash code in an index structure with a plurality of stored possible reference hash codes. Die Vorrichtung (100) nach einem der Ansprüche 12 bis 16, wobei die Analyseschaltung (101) ferner ausgebildet ist, um alle geometrischen Merkmale des Objektes mit der Transformationsvorschrift zu transformieren, um die transformierten geometrischen Merkmale zu erhalten; und um die transformierten geometrischen Merkmale und der geometrischen Referenzmerkmale auf geometrische Übereinstimmung zu überprüfen, wobei bei festgestellter Übereinstimmung das Objekt als zur Klasse des Referenzobjektes gehörend identifiziert wird.The device (100) according to one of the Claims 12 until 16 wherein the analysis circuit (101) is further designed to transform all geometric features of the object with the transformation rule in order to obtain the transformed geometric features; and to check the transformed geometric features and the geometric reference features for geometric correspondence, with the object being identified as belonging to the class of the reference object if a correspondence is established. Die Vorrichtung (100) nach einem der Ansprüche 12 bis 17, wobei die Analyseschaltung (101) ferner ausgebildet ist, um die Transformationsvorschrift anzupassen, um eine Abbildung der Teilmenge der geometrischen Merkmale des Hashcodes auf die Teilmenge der geometrischen Referenzmerkmale des Referenz-Hashcodes zu verbessern.The device (100) according to one of the Claims 12 until 17th , wherein the analysis circuit (101) is further designed to adapt the transformation rule in order to improve a mapping of the subset of the geometric features of the hash code onto the subset of the geometric reference features of the reference hash code. Die Vorrichtung (100) nach einem der Ansprüche 12 bis 18, wobei die Analyseschaltung (101) ferner ausgebildet ist, um periodische Strukturen in der Aufnahme des Objekts (102) zu entfernen, welche als Artefakt aus einem Fertigungsverfahren des Objekts (102) erzeugt wurden.The device (100) according to one of the Claims 12 until 18th wherein the analysis circuit (101) is further designed to remove periodic structures in the receptacle of the object (102) which were generated as artifacts from a manufacturing process of the object (102). Ein Computerprogramm mit Programmcode, welches ein Verfahren (700) nach den Ansprüchen 1 bis 9 anhand eines programmierbaren Prozessors ausführt.A computer program with program code, which a method (700) according to the Claims 1 until 9 using a programmable processor.
DE102020101443.0A 2020-01-22 2020-01-22 A method, a device, a computer program for recognizing an object and a device for recording an object Pending DE102020101443A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102020101443.0A DE102020101443A1 (en) 2020-01-22 2020-01-22 A method, a device, a computer program for recognizing an object and a device for recording an object
PCT/EP2021/050193 WO2021148252A1 (en) 2020-01-22 2021-01-07 Method, device, and computer program for detecting an object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020101443.0A DE102020101443A1 (en) 2020-01-22 2020-01-22 A method, a device, a computer program for recognizing an object and a device for recording an object

Publications (1)

Publication Number Publication Date
DE102020101443A1 true DE102020101443A1 (en) 2021-07-22

Family

ID=74183144

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020101443.0A Pending DE102020101443A1 (en) 2020-01-22 2020-01-22 A method, a device, a computer program for recognizing an object and a device for recording an object

Country Status (2)

Country Link
DE (1) DE102020101443A1 (en)
WO (1) WO2021148252A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116861023B (en) * 2023-09-01 2023-12-12 北京达美盛软件股份有限公司 Method and system for determining same geometric objects in three-dimensional space

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060126943A1 (en) 2001-06-05 2006-06-15 Christian Simon Geometric hashing method for model-based recognition of an object
US20130071875A1 (en) 2010-06-01 2013-03-21 Vbact Ltd. Method and system for the detections of biological objects

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9177224B1 (en) * 2013-03-14 2015-11-03 Amazon Technologies, Inc. Object recognition and tracking

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060126943A1 (en) 2001-06-05 2006-06-15 Christian Simon Geometric hashing method for model-based recognition of an object
US20130071875A1 (en) 2010-06-01 2013-03-21 Vbact Ltd. Method and system for the detections of biological objects

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Wikipedia, „Geometric hashing". Bearbeitungsstand: 9. März 2019. URL: https://en.wikipedia.org/w/index.php?title=Geometric_hashing&oldid=886856598 [abgerufen am 12.10.2020]
WOLFSON, Haim J.; RIGOUTSOS, Isidore. Geometric hashing: An overview. IEEE computational science and engineering, 1997, 4. Jg., Nr. 4, S. 10-21

Also Published As

Publication number Publication date
WO2021148252A1 (en) 2021-07-29

Similar Documents

Publication Publication Date Title
DE60210348T2 (en) Image identification system
EP2417561B1 (en) Two-dimensional code and method
DE102015121339B4 (en) SYSTEMS AND METHODS FOR DETERMINING A CONDITION OF A ROAD
DE69937530T2 (en) Method for automatically classifying images by events
EP0780002B1 (en) Process and apparatus for reconstructing raster-shaped line structures
DE60109278T2 (en) Method and device for locating characters in images from a digital camera
DE102007035884B4 (en) Line noise suppression device, method and program
DE102006059663A1 (en) Apparatus, method and computer program for identifying a traffic sign in an image
EP2005361A1 (en) Multi-sensorial hypothesis based object detector and object pursuer
DE10043460A1 (en) Locating parts of the body by evaluating edge direction information
DE112020005864T5 (en) Method and device for verifying the authenticity of a product
DE102006044595B4 (en) Image processing device for segmentation based on contour points
DE202020103679U1 (en) Device for position and position detection of markings and computer program product
CH708994B1 (en) A method and apparatus for identifying a two-dimensional point code.
WO2021148252A1 (en) Method, device, and computer program for detecting an object
DE102009016598A1 (en) Two-dimensional symbol code for representing binary data, has symbols of identical area differing from each other in planar brightness distribution, encoding value of binary data word and comprising complementary brightness distribution
EP2859529B1 (en) Blob-encoding
DE102005049017A1 (en) Method for segmentation in an n-dimensional feature space and method for classification based on geometric properties of segmented objects in an n-dimensional data space
WO2018007619A1 (en) Method and device for categorising a fracture surface of a component
DE112016007447T5 (en) A method of comparing a first drawing with a second drawing by comparing their drawing elements
EP3214602B1 (en) Method for three-dimensional recording of objects
EP3142068B1 (en) Method for three-dimensional recording of objects
DE10118485B4 (en) Automatic identification and / or verification of linear textures such as fingerprints
AT408377B (en) METHOD AND DEVICE FOR TESTING OR EXAMINATION OF OBJECTS
DE10009538B4 (en) Process for the analysis of fingerprint images

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G01B0011240000

Ipc: G06K0009480000

R016 Response to examination communication
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009480000

Ipc: G06V0030182000