Warning: fopen(111data/log202002280547.log): failed to open stream: No space left on device in /home/pde321/public_html/header.php on line 107

Warning: flock() expects parameter 1 to be resource, boolean given in /home/pde321/public_html/header.php on line 108

Warning: fclose() expects parameter 1 to be resource, boolean given in /home/pde321/public_html/header.php on line 113
Verfahren und Vorrichtung zur Erkennung von Oberflächenfehlern - Dokument DE10351925B4
 
PatentDe  


Dokumentenidentifikation DE10351925B4 17.11.2005
Titel Verfahren und Vorrichtung zur Erkennung von Oberflächenfehlern
Anmelder Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V., 80686 München, DE
Erfinder Kuleschow, Andreas, 90522 Oberasbach, DE;
Spinnler, Klaus, 91056 Erlangen, DE;
Schmidt, Robert, 91058 Erlangen, DE
Vertreter Schoppe, Zimmermann, Stöckeler & Zinkler, 82049 Pullach
DE-Anmeldedatum 07.11.2003
DE-Aktenzeichen 10351925
Offenlegungstag 16.06.2005
Veröffentlichungstag der Patenterteilung 17.11.2005
Veröffentlichungstag im Patentblatt 17.11.2005
IPC-Hauptklasse G01N 21/88
IPC-Nebenklasse G06K 9/00   

Beschreibung[de]

Die vorliegende Erfindung bezieht sich auf die Erkennung von Oberflächenfehlern und insbesondere auf die optische, berührungslose bzw. nichttaktile Erfassung von Oberflächenfehlern, wobei sich Ausführungsbeispiele der vorliegenden Erfindung insbesondere auf die Erkennung von Fehlern in Gussteilen beziehen.

Die Herstellung komplex geformter, metallischer Bauteile durch Gießen und anschließende Bearbeitung funktionaler Oberflächen ist eine weit verbreitete, unverzichtbare Fertigungsmethode bei der Produktion verschiedenster Güter, wie z.B. in dem Branchenmaschinenbau, Automobil, Sanitär usw.

Verfahrensbedingt kann im Gießprozess bei komplizierten Formen die Bildung von Poren oder Lunkern bzw. fehlerhaften Hohlräumen in den Gussstücken nicht völlig ausgeschlossen werden, so dass potentiell auch Oberflächendefekte aufgrund von bei der nachfolgenden Bearbeitung freigelegten Poren oder Lunkern unvermeidlich sind. Weitere Oberflächendefekte können während der Bearbeitung oder des Transportes der Teile entstehen.

Aufgrund dessen kann eine absolute Fehlerfreiheit der Gussstücke nicht erreicht werden. Eine solche absolute Fehlerfreiheit wird aber umgekehrt durch beispielsweise die Kfz-Industrie zunehmend gefordert. In diesem Fall ist es deshalb notwendig, eine hundertprozentige Sichtprüfung der kompletten Produktion, d.h. eine Sichtprüfung jedes Gussstücks, mit nachfolgender Aussortierung fehlerhafter Teile durchzuführen. Aufgrund der meist sehr komplexen Form von Gussteilen, der schlecht zugänglichen Lage funktionaler Flächen, wie z.B. in Bohrungen, sowie der kleinen Fehlerabmessungen bei großen, zu prüfenden Flächen ist die Prüfung durch menschliches Personal jedoch sehr aufwendig, fehleranfällig, subjektiv, inhuman und kostenintensiv.

Es wäre deshalb wünschenswert, Oberflächenfehler in Gussteilen automatisch und auch bei hohen Durchsätzen sicher erkennen zu können.

In S.D. Yanowitz und A.M. Bruckstein, „A new method for image segmentation", Comput. Vision Graphics Image Process., v. 46, S. 82 – 95 (1989), wird ein Artefakterkennungssystem beschrieben. Das System arbeitet auf folgende Weise. Das zu prüfende Bild wird mit einem Mittelwert-Filter abgeglichen. Der Gradient der Intensität des Bildes wird berechnet. Das Gradienten-Bild wird durch eine Schwelle binarisiert und gedünnt. Als Ergebnis werden Grenzen der Objekte gefunden. An gefundenen Fragmenten der Grenzen werden als Schwelle die aktuellen Grauwerte genommen. Eine gesamte Schwellwert-Oberfläche wird aus diesen lokalen Schwellwerten erzeugt, und zwar gemäß einer sogenannten potentiellen Oberfläche, die die Lösung der Laplace-Gleichung darstellt. Das gesamte Bild wird daraufhin segmentiert und Artefakte werden erkannt und gelöscht.

Nachteilhaft an der Vorgehensweise ist, dass die Algorithmen zum Berechnen der Gradienten und besonders der potentiellen Oberfläche extrem zeitaufwendig und damit nicht für ein Prüfsystem geeignet sind, das mit hoher Geschwindigkeit unter Echtzeitbedingungen in einer Produktionsumgebung arbeiten soll. Ferner tendiert die potentielle Oberfläche dazu, sich entfernt von interessierenden Bildzonen an die mittlere Helligkeit des Bildes anzunähern, weshalb sich auf dem Bild dort, wo nur wenige charakteristische Bildmerkmale zu sehen sind, sehr viele Artefakte produzieren wird. Die Prüfung und Eliminierung dieser Artefakte wird wiederum viel Zeit in Anspruch nehmen.

Die EP 0574336 B1 bezieht sich auf ein Verfahren zum Nachweis von Oberflächenfehlern von langgestreckten metallischen Werkzeugen, bei dem Fehler dadurch erfasst werden, dass mit einer CCD-Kamera die langen Produkte aufgenommen werden, während diese entlang einer Förderachse an der Kamera vorbeibewegt werden. Insbesondere wird entlang einer CCD-Zeile das „Vorbeifahren" von Fehlern durch Beobachten des Helligkeitsunterschieds einzelner Pixel der CCD-Zeile zu aufeinanderfolgenden Zeitpunkten bestimmt.

Die DE 693 28 533 T2 bezieht sich auf ein Verfahren zum Prüfen eines Festkörpers auf Fremdstoffe hin. Nach diesem Verfahren werden obere und untere Grenzpegelwerte derart eingestellt, dass die Pegel der Bildsignale, die kleine Stücke von Fremdstoffen zeigen, in eine Bandbreite zwischen der oberen und unteren Grenze fallen. Ein Erkennen von Fremdstoffen wird dann durch eine Auswertung von drei Pixelpunkten erzielt.

Die EP 0 671 845 81 bezieht sich auf eine multidimensionale Bilddatenkompression und -dekompression.

Es ist die Aufgabe der vorliegenden Erfindung, ein Verfahren und eine Vorrichtung zur Erkennung von Fehlern einer Objektoberfläche eines Objekts zu schaffen, die unaufwendigere automatische Prüfung von Oberflächen auf Fehler hin ermöglichen.

Diese Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1 und ein Verfahren gemäß Anspruch 15 gelöst.

Die Erkenntnis der vorliegenden Erfindung besteht darin, dass eine unaufwendigere und gleichzeitig aber auch genauso sichere Erkennung von Oberflächenfehlern erzielt werden kann, wenn die Erkennung stufenweise vorgenommen wird, um die Anzahl zu untersuchender Pixel bzw. die Größe bei der Prüfung in Betracht zu ziehender Pixelregionen so gering wie möglich zu halten. Erfindungsgemäß werden deshalb zunächst unter allen Pixeln des Abbildes der Oberfläche diejenigen Pixel ermittelt, deren Pixelhelligkeitswert von einem mittleren Wert der Pixelhelligkeitswerte von Pixeln in einer Umgebung derselben mehr als um eine vorbestimmte Helligkeitsschwelle abweichen. Die so ermittelten Kandidatenpixel werden zu zusammenhängenden Clustern bzw. Blobs gruppiert. Auf diese Weise kann die weitere Fehlersuche auf die Blobs und ihre Umgebung eingeschränkt werden. In einer zweiten Stufe werden die Blobs daraufhin untersucht, ob in der Nähe eines Randes des Blobs eine Konturlinie ziehbar ist, die mit mehr als einem vorbestimmten Mindestkontrast hellere von dunkleren Pixeln in dem und um den Blob herum trennt. Auf diese Weise wird die nachfolgende Fehlersuche von zweidimensionalen Pixelclustern weiter auf eindimensionale Pixelketten eingeschränkt, die die Konturlinien von sogenannten Objekten bilden. Ein Konturlinienvergleich mit Sollkonturlinien kann dann dazu verwendet werden, um mit hoher Sicherheit Objekte in den Aufnahmen Sollkonturen zuzuordnen, aber auch um Fehler an Objektkanten, d.h. Abweichungen von einer zuordbaren Sollkonturlinie, festzustellen.

Eine weitere Kenntnis der vorliegenden Erfindung bestand darin, dass es für die Fehlererkennung unwesentlich ist, ob die Fehlstellen in der Oberfläche in der optischen Abbildung tatsächlich in ihrer Ausdehnung richtig ermittelt werden, oder ob lediglich ein Teil der Fehlstelle in Form einer Konturlinie erfasst wird. Tatsächlich ist es lediglich notwendig, dass zu jeder in den Bilddaten sichtbaren Fehlstelle eine Konturlinie jedweder Form ermittelt wird, die dann zu einer Fehlererkennung führt.

Die erfindungsgemäße Eingrenzung der Fehlersuche auf bestimmte Pixelregionen ist besonders effektiv, wenn die optische Aufnahme der Objektoberfläche kontrastreich ist. Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung werden deshalb die Bilddaten dadurch erzeugt, dass die Objektoberfläche unter einem Einfallswinkel beleuchtet wird, während zur Bilderfassung im wesentlichen nur Strahlen verwendet werden, die unter einem Ausfallswinkel zur Oberfläche von dem Objekt reflektiert werden, der gleich dem Einfallswinkel ist. In dem Fall einer örtlich ausreichend glatten Oberfläche, wie es bei Gussteilen der Fall ist, ergibt sich auf diese Weise ein hoher Kontrast zwischen Kanten, Kerben und freigeschliffenen Lunkern auf der einen und der großflächig reflektierenden Objektoberfläche auf der anderen Seite.

Gemäß einem weiteren Ausführungsbeispiel der vorliegenden Erfindung findet Beleuchtung und Bilderfassung nicht nur unter Verwendung gleichen Einfalls- und Ausfallswinkels statt, sondern vielmehr werden Einfalls- und Ausfallswinkel senkrecht zur Oberfläche gewählt. Ermöglicht wird dies gemäß einer Alternative durch einen sich im Strahlengang befindlichen Strahlteiler und gemäß einer weiteren Alternative durch eine Lichtquelle mit einer effektiven Leuchtfläche, die in der optischen und senkrecht zur Objektoberfläche verlaufenden Achse eine Öffnung für einen Lichtdetektor aufweist. Durch senkrechten Einfalls- und Ausfallswinkel wird es zusätzlich bei planaren Objektoberflächen ermöglicht, einen großen Teil der Objektoberfläche gleichzeitig in dem Tiefenschärfenbereich des beispielsweise als Kamera ausgebildeten Lichtdetektors anzuordnen, so dass eine flächenhafte Bildaufnahme ermöglicht wird. Ferner treten beleuchtungsseitig keine Abschattungen an vorstehenden Objektmerkmalen oder an Oberflächenausnehmungen auf.

Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:

1 eine Bildaufnahme einer Gussteil-Oberfläche mit komplexen Konturen, die unter Verwendung der Beleuchtungs/Bilderfassungsanordnung von 7 erzeugt worden ist, gemäß einem Ausführungsbeispiel der vorliegenden Erfindung;

2 einen Ausschnitt aus der Aufnahme von 1, in dem ein Oberflächendefekt zu erkennen ist;

3 eine mikroskopische Aufnahme des in 2 erkennbaren Oberflächendefektes;

4 ein Flussdiagramm zur Veranschaulichung der Verfahrensschritte bei der Fehlererkennung nach einem Ausführungsbeispiel der vorliegenden Erfindung;

5 ein schematisches Raumbild der Beleuchtungs/Bilderfassungsanordnung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung;

6 ein schematisches Raumbild einer Beleuchtungs/Bilderfassungsanordnung gemäß einem weiteren Ausführungsbeispiel der vorliegenden Erfindung;

7 ein schematisches Raumbild einer Beleuchtungs/Bilderfassungsanordnung gemäß einem weiteren Ausführungsbeispiel der vorliegenden Erfindung;

8 ein schematisches Raumbild einer Beleuchtungs/Bilderfassungsanordnung gemäß einem weiteren Ausführungsbeispiel der vorliegenden Erfindung;

9 ein schematisches Raumbild einer Beleuchtungs/Bilderfassungsanordnung gemäß einem weiteren Ausführungsbeispiel der vorliegenden Erfindung;

10 ein schematisches Raumbild einer Beleuchtungs/Bilderfassungsanordnung gemäß einem weiteren Ausführungsbeispiel der vorliegenden Erfindung;

11 ein Flussdiagramm zur Veranschaulichung der Verfahrensschritte bei der Überprüfung, ob für einen Blob eine Konturlinie existiert;

12 eine schematische Darstellung eines Blobs zur Veranschaulichung der Vorgehensweise nach 11;

13 ein Flussdiagramm zur Veranschaulichung der Verfahrensschritte bei der Erkennung von Fehlern auf der Grundlage der Objekte, bei denen Konturlinien gezogen werden konnten, und von Sollbildobjekten;

14 ein Flussdiagramm zur Veranschaulichung der Verfahrensschritte bei der Erkennung von Kantenfehlern unter den Objekten mit Konturlinien, die bereits als zu einer bestimmten Sollkonturlinie gehörig erkannt worden sind; und

15 eine schematische Zeichnung, die einen Ausschnitt einer Blobkonturlinie und einer zugeordneten Sollkonturlinie sowie zwei der drei zugehörigen Funktionen darstellt, die nach dem Vorgehen von 14 erzeugt werden.

Bevor Bezug nehmend auf die nachfolgenden Figuren die vorliegende Erfindung anhand von Ausführungsbeispielen näher erläutert wird, wird darauf hingewiesen, dass gleiche oder einander entsprechende Elemente in den Figuren mit gleichen oder ähnlichen Bezugszeichen versehen sind, und dass eine wiederholte Beschreibung dieser Elemente weggelassen wird.

Die vorliegende Erfindung wird im folgenden vor dem Hintergrund der Oberflächenprüfung von Gussteilen beschrieben, und zwar entweder unbehandelten Gussteilen oder Gussteilen, die nach dem Gießvorgang weiteren Oberflächenbearbeitungen, insbesondere Schleifen, unterzogen worden sind. Gussteile der vorher beschriebenen Art weisen eine metallische, spiegelnde Oberfläche auf, die sich für die nachfolgend beschriebene Erzeugung von kontrastreichen Bildaufnahmen der Oberfläche gut eignen. Die vorliegende Erfindung ist jedoch nicht auf die Oberflächenprüfung von Gussteilen beschränkt. So eignen sich die nachfolgend beschriebenen Ausführungsbeispiele beispielsweise ebenso für die Oberflächenprüfung von Glasbauteilen oder geschliffenen Oberflächen jedweden Materials.

1 zeigt exemplarisch die Bildaufnahme eines zu untersuchenden Gussteils oder genauer ausgedrückt die Bildaufnahme einer zu untersuchenden Oberfläche eines Gussteils. In dem vorliegenden exemplarischen Fall ist das Gussteil ein plattenförmiger Gegenstand mit zwei im wesentlichen koplanaren Hauptseiten, zwischen denen sich Durchbrüche und Bohrungen unterschiedlicher Form entlange der Plattendicke erstrecken.

Die Aufnahme von 1 ist unter speziellen Beleuchtungs/Bilderfassungsbedingungen aufgenommen worden, nämlich derart, dass die Beleuchtung derart zur optischen Achse des aufnehmenden Lichtdetektors ausgerichtet ist, dass die Lichtquelle bezüglich des bildseitig sichtbaren Oberflächenbereichs im Glanzwinkel erscheint, d.h. dass der Einfallswinkel der Beleuchtungsstrahlen zur Objektoberfläche gleich Ausfallswinkel der reflektierten erfassten Strahlen zur Objektoberfläche ist. Aufgrund dieser Beleuchtungs/Bilderfassungsbedingungen reflektiert der größte Teil der planaren Oberfläche des planaren Gussteils die zur Beleuchtung verwendeten Strahlen direkt in die bildaufnehmende Einheit, wie z.B. eine Kamera. Diese Stellen der Oberfläche sind in der Aufnahme von 1 als die helle Fläche 2 zu erkennen. Kanten des Gussteils erscheinen aufgrund ihrer Neigung zur Oberfläche 2 dunkel.

2 zeigt einen Ausschnitt der Bildaufnahme von 1. Wie es zu sehen ist, erscheint der in 2 dargestellte Abschnitt der Oberfläche 2 des Gussteils im wesentlichen durchweg weiß, abgesehen von den in 2 sichtbaren zwei Bohrungen 4 und 6. Zu erkennen ist jedoch ferner bei 8 eine Stelle, an der eine zusammenhängende Gruppe von Pixeln der Bildaufnahme von 2 an dem ansonsten hell erscheinenden Bereich 2 dunkel hervorstechen.

3 zeigt eine mikroskopische Aufnahme der Oberfläche des Gussteils in dem Abschnitt, der in 2 auf die Stelle 8 abgebildet worden ist. Wie es zu erkennen ist, handelt es sich bei der Stelle 8 um das Bild eines Oberflächendefektes, in dem vorliegenden Fall einen durch einen Schleifvorgang freigelegten Lunker mit einem Durchmesser von etwa 0,3 mm. Wie es im folgenden noch bezüglich 5 – 10 noch näher erörtert werden wird, erscheint der Lunker 8 in der Aufnahme von 1 bzw. 2 dunkel, weil die Oberfläche des Gussteils an dieser Stelle zerklüftet und insbesondere geneigt zu dem Rest der Oberfläche 2 ist, so dass die einfallenden Strahlen von der Lichtquelle unter einem anderen Winkel als dem Glanzwinkel reflektiert werden und somit nicht zum aufnehmenden Lichtdetektor gelangen. Beispiele anderer Oberflächenfehler bei Gussteilen umfassen Kantenausbrüche, Kratzer oder andere Abweichungen der Oberfläche von einer Sollform.

Nachdem nun Bezug nehmend auf die 13 ein Ausführungsbeispiel für eine mögliche zu prüfende Oberfläche beschrieben worden ist, nämlich diejenige eines Gussteils, sowie Beispiele für mögliche Oberflächenfehler, werden im folgenden Ausführungsbeispiele der vorliegenden Erfindung zur Erkennung von Oberflächenfehlern vor dem Hintergrund der Oberflächenprüfung von Gussteilen beschrieben, wobei, wenn es sachdienlich ist, auf eine der 13 Bezug genommen wird.

4 zeigt die Verfahrensschritte bei der Oberflächenfehlererkennung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung in grober Übersicht. Das Verfahren beginnt im Schritt 10 damit, dass eine Bildaufnahme der zu prüfenden Objektoberfläche vorgenommen wird. Das Ergebnis sind Bilddaten, die für jedes Pixel eines Pixelarrays einen Helligkeitswert H aufweisen. Obwohl die Pixel freilich auch anders angeordnet sein können, wird im folgenden davon ausgegangen, dass die Pixel in Zeilen und Spalten regelmäßig angeordnet sind, wobei im folgenden der Helligkeitswert für ein Pixel in der x-ten Zeile und y-ten Spalte mit H(x, y) angegeben wird.

Bezug nehmend auf die 510 werden im folgenden Ausführungsbeispiele für Beleuchtungs/Bilderfassungsanordnungen beschrieben, die zur Bilderzeugung im Schritt 10 verwendet werden können.

5 zeigt ein erstes Ausführungsbeispiel für eine Beleuchtungs/Bilderfassungsanordnung. Die Anordnung von 5, die allgemein mit 12 angezeigt ist, umfasst als Lichtquelle 19 eine Anordnung aus einer Kaltlichtquelle 16, einem Lichtleiter 18, in den das Licht der Kaltlichtquelle 16 eingekoppelt wird, und einen Querschnittwandler 20, in welchem das Licht in dem Lichtleiter 18 derart aufgefächert wird, dass das Licht der Kaltlichtquelle 16 aus einer Zeile von Austrittspupillen austritt, so dass parallel verlaufende Beleuchtungsstrahlen 22 auf einer zu prüfenden Oberfläche 24 eines Prüflings 26 ein Linienlicht erzeugen, d.h. einen linienförmigen belichteten Bereich 28. Die Beleuchtungsstrahlen 22 treffen auf die Oberfläche 24 unter einem Eintrittswinkel &thgr;e auf.

Erfassungs- bzw. aufnahmeseitig umfasst die Anordnung 12 von 5 eine Zeilenkamera 30 mit einem Objektiv 32. Die optische Achse des Objektivs 32 ist auf die Linie 28 gerichtet, an der die Beleuchtungsstrahlen 22 auf die Oberfläche 24 treffen und ist zu der Oberfläche 24 in einem Austrittswinkel &thgr;a geneigt, derart, dass die Lichtquelle 14 bezüglich dem im Kamerabild sichtbaren Oberflächenbereich 28 im Glanzwinkel erscheint. Das Objektiv 32 bildet den beleuchteten linienförmigen Bereich 28 der Oberfläche 24 auf ein Pixelarray in der Kamera 30 ab.

Ferner umfasst die Anordnung 12 eine Verschiebeeinheit zum Verschieben des Prüflings 26 senkrecht zur Flächennormalen am beleuchteten Bereich 28 und vorzugsweise auch senkrecht zur Beleuchtungslinie 28, wobei die Verschiebeeinheit in 5 aus Übersichtlichkeitsgründen nur durch einen Pfeil 34 angedeutet ist, der gleichzeitig die Verschieberichtung darstellen soll.

Eine Bildaufnahme unter Verwendung der Anordnung 12 von 5 erfolgt auf folgende Weise. Die Lichtquelle 14 erzeugt ein Linienlicht 22, das auf der Oberfläche 24 zu einem linienförmigen belichteten Bereich 28 führt. Von dort aus werden die Beleuchtungsstrahlen 22 größtenteils zur als Lichtdetektor dienenden Zeilenkamera 30 reflektiert. Das Objektiv bildet den beleuchteten linienförmigen Bereich 28 auf das Zeilenarray der Zeilenkamera 30 ab. Bei jedem Pixel tragen zur Bildaufnahme nur diejenigen Strahlen bei, die am jeweiligen Oberflächenpunkt entlang der Linie 28, der auf das jeweilige Pixel abgebildet wird, reflektiert werden und vom Glanzwinkel nur geringfügig oder gar nicht abweichen, da sie ansonsten nicht in die Eintrittspupille der Kamera 30 gelangen und nicht zur Bildaufnahme beitragen. Hierdurch entsteht zunächst eine Pixelzeile oder Pixelspalte, die eine Abbildung des beleuchteten Bereichs 28 bzw. des auf die Pixelzeile der Zeilenkamera 30 abgebildeten Oberflächenbereichs darstellt.

Mit einem bestimmten Takt wiederholt die Zeilenkamera 30 ihre Aufnahmen und erzeugt weitere Pixelzeilen bzw. Pixelspalten. Währenddessen wird jedoch der Prüfling entlang der Richtung 34 koplanar zur Oberfläche 24 verschoben. Aufgrund der Verschiebung senkrecht zur Flächennormalen verbleibt die Oberfläche 24 des Prüflings 26 im Tiefeschärfenbereich des Objektivs 32 bzw. an dem Ort, an dem sich Beleuchtungsstrahlen 22 und optische Achse der Kamera 30 schneiden. Durch den Verschiebevorgang wird jedoch effektiv bewirkt, dass während aufeinanderfolgender Pixelzeilenaufnahmen der beleuchtete Bereich 28 entlang der Oberfläche 24 in einer Richtung entgegengesetzt zur Verschieberichtung 34 virtuell bewegt wird, so dass die aufeinanderfolgenden Aufnahmen der Zeilenkamera 30 durch Aneinanderfügen der einzelnen Aufnahmen ein zweidimensionales Pixelarray ergeben, das eine Bildaufnahme der Objektoberfläche 24 darstellt.

Wie im Vorhergehenden erwähnt, handelt es sich vorliegend bei der zu prüfenden Oberfläche 24 exemplarisch um die beispielsweise bearbeitete Oberfläche eines Rohgussteils 26. Diese spiegelt den größten Anteil des Lichts 22 zur Kamera 30, wobei Bereiche, bei denen die Glanzwinkel-Bedingung, d.h. &thgr;e = &thgr;a, gut erfüllt ist, heller in der Bildaufnahme bzw. dem Pixelarray erscheinen bzw. abgebildet werden als Bereiche, bei denen die Glanzwinkel-Bedingung nicht oder nur annähernd erfüllt ist. Dies ist gerade bei Defekten, wie freigelegten Lunkern, Dellen oder Kratzern, der Fall. Bei der Objektprüfung von Rohgussteilen erscheinen aufgrund der niedrigeren Reflektivität Rohgussbereiche durchschnittlich dunkler auszusehen als mechanisch bearbeitete Bereiche.

Bei dem Ausführungsbeispiel von 5 fiel das zur Beleuchtung verwendete Licht 22 schräg auf die zu prüfende Oberfläche 24. Aufgrund dieser Tatsache entstehen während des Scanvorganges in dem Fall hervorstehender Oberflächenmerkmale, wie z.B. Zapfen, Abschattungen, die eine Auswertung der Bilddaten, wie sie von der Kamera 30 geliefert werden, und welche im folgenden noch näher erläutert werden wird, in dem abgeschatteten Bereich unmöglich macht. Ferner musste auch die optische Achse der Kamera schräg zur Oberfläche 24 geneigt sein, so dass einige Oberflächenbereiche trotz Scans nicht zu sehen sind, wie z.B. der Boden von Sackbohrungen oder der verdeckte Bereich hinter einem vorstehenden Merkmal.

Die nachfolgend Bezug nehmend auf die 610 beschriebenen Ausführungsbeispiele umgehen dieses Problem, indem Beleuchtungsstrahlengang und reflektierter Strahlengang zusammengelegt werden, so dass sie zusammenfallen, was einer Beleuchtung senkrecht zur Oberfläche und einer Lichterfassung mit einer optischen Achse senkrecht zur Oberfläche entspricht. Anders ausgedrückt bedeutet in dem Sonderfall einer zur betrachteten Oberfläche senkrecht angeordneten optischen Achse der Kamera die Erfüllung der Glanzwinkelbedingung, dass auch die Beleuchtung senkrecht zur betrachteten Oberfläche, d.h. in der optischen Achse der Kamera, angeordnet werden muss.

6 zeigt eine mögliche Anordnung zur Realisierung dieses Sonderfalls. Die Anordnung von 6 ist allgemein mit 12a angezeigt. Die Anordnung 12a umfasst wie die Anordnung von 5 eine Kamera 30 mit einem Objektiv 32 und eine Lichtquelle 14. In dem Fall von 6 ist jedoch die Kamera 30 eine flächenhaft messende Kamera, die ein zweidimensionales Pixelarray aufweist, auf welches das Objektiv 32 einen interessierenden flächigen Teil der Oberfläche 24 des Prüflings 26 abbildet. Mit ihrer optischen Achse 36 ist die Kamera 30 senkrecht zur Oberfläche 24 ausgerichtet. Die Lichtquelle 14 besteht im Unterschied zu dem Ausführungsbeispiel von 5 aus einer flächigen, streuenden Lichtquelle 38. Die Glanzwinkel-Bedingung wird bei dem Ausführungsbeispiel von 6 dadurch erfüllt, dass zwischen Objektiv 32 und Prüfling 26 ein Strahlteiler 40 angeordnet ist, der das Licht 22 von der Lichtquelle 14 umlenkt, so dass zumindest ein großer Teil der Beleuchtungslichtstrahlen 22 senkrecht auf die Oberfläche 24 fällt. Einen Teil des Lichtes 22 der Lichtquelle 14 lässt der Strahlteiler 40 hindurch bzw. passieren, wo es beispielsweise durch eine Lichtfalle absorbiert wird, wie es in nachfolgenden Ausführungsbeispielen der Fall ist. Der Strahlteiler 40 ist ferner vorgesehen, um einen Teil der reflektierten Strahlung 42 zur Kamera 30 hin passieren zu lassen.

Im Gegensatz zu der Anordnung von 5 ist bei der Anordnung von 6 keine Verschiebeeinheit notwendig, da das Objektiv 32 die interessierende Oberfläche 24 flächenhaft auf das Pixelarray der Kamera 30 abbildet und die Lichtquelle 14 die Oberfläche 24 flächenhaft beleuchtet. Wiederum bündelt das Objektiv 32 auf den einzelnen Pixeln der Kamera 30 nur solche Strahlen von einem Objektpunkt auf der Objektoberfläche 24 auf den Pixeln der Kamera, die nur wenig zum Glanzwinkel geneigt sind, nämlich hier zur Flächennormalen. Oberflächendefekte erscheinen deshalb dunkel, ebenso wie Kanten.

Während 6 eine flächenhaft vermessende Anordnung darstellte, zeigt 7 ein Ausführungsbeispiel für eine zeilenweise vermessende Anordnung, wie sie in 5 gezeigt worden ist, mit dem Unterschied, dass jedoch wie in 6 eine senkrechte Beleuchtung und Erfassung verwendet wird. Neben den in 5 gezeigten Bauteilen umfasst deshalb die Anordnung von 7, die allgemein mit 12b angezeigt ist, einen Strahlteiler 40, wobei Strahlteiler 40, Zeilenkamera 30 und Lichtquelle 14, wie Bezug nehmend auf 6 beschrieben, relativ zur Objektoberfläche 24 angeordnet sind. Die Verschiebung entlang der Richtung 34 sorgt, wie Bezug nehmend auf 5 beschrieben, dafür, dass die nacheinander aufgenommenen eindimensionalen Pixelbilder aneinandergefügt ein zweidimensionales Bild der Objektoberfläche 24 ergeben, diesmal jedoch ohne Abschattungen und dergleichen. Zusätzlich umfasst die Anordnung 12b eine Lichtfalle 41, die dem Querschnittwandler 20 der Lichtquelle 14 über den Strahlteiler 40 gegenüber angeordnet ist und dazu vorgesehen ist, Licht von der Lichtquelle 14, das durch den Strahlteiler 40 unabgelenkt hindurchtritt, einzufangen und zu verhindern, dass es wieder zum Strahlteiler 40 hin reflektiert wird, wo es ansonsten zur Kamera 30 hin abgelenkt werden könnte und dort zu Artefakten führen könnte.

Die Ausführungsbeispiele von 6 und 7 sahen zur Realisierung eine Anordnung mit senkrechter optischer Achse und lotrechter Beleuchtung vor, einen Strahlteiler im Strahlengang der Kameraabbildung vorzusehen, nämlich genau genommen vor dem Objektiv, wobei das Licht von der Lichtquelle in den Strahlengang der Kameraabbildung eingespiegelt wurde. Freilich ist es ferner möglich, umgekehrt das beleuchtende Licht von der Lichtquelle den Strahlteiler zur Objektoberfläche hin passieren zu lassen, und das reflektierte Licht in die Kamera hin abzulenken.

Eine andere Realisierungsmöglichkeit stellen die Ausführungsbeispiele von 8 und 9 dar. Bei diesen Ausführungsbeispielen wird kein Strahlteiler verwendet, um Beleuchtungslicht und reflektiertes Licht „übereinander zu legen", sondern es wird eine Leuchte mit großflächiger Apertur verwendet, in der ein Durchbruch vorgesehen ist, durch welchen das Objektiv der Kamera die Objektoberfläche auf die photoempfindliche Fläche der Kamera abbilden kann.

8 zeigt eine Beleuchtungs/Bilderfassungsanordnung 12c. Sie umfasst eine Flächenkamera 30 mit einem Objektiv 32, deren optische Achse 36 wie bei dem Ausführungsbeispiel von 6 senkrecht zur interessierenden Oberfläche 24 des Prüflings 26 steht und die Oberfläche 24 sich im Tiefenschärfenbereich des Objektivs 32 befindet, das die Oberfläche 24 auf das zweidimensionale Pixelarray der Flächenkamera 30 abbildet. Als Beleuchtungslichtquelle 14 dient eine streuende, flächige Lichtquelle 44, die in in etwa ihrer Mitte ihrer Leuchtfläche, an der Stelle, da dieselbe die optische Achse 36 schneidet, eine Öffnung 46 aufweist. Die effektive Leuchtfläche 44 der Lichtquelle 14 ist im wesentlichen senkrecht zur optischen Achse 36 angeordnet und befindet sich entlang der optischen Achse 36 betrachtet zwischen der Kamera 30 und Prüfling 26, und zwar vorzugsweise ganz in der Nähe des Objektiveinlasses, so dass der für die Kamera sichtbare Raumwinkelbereich kaum eingeschränkt wird. Auf diese Weise ist die unmittelbar hinter der Leuchte 44 angebrachte Kamera 30 in der Lage, durch den Durchbruch bzw. die Öffnung 46 in der Leuchte 44 auf die zu prüfende Oberfläche 24 zu blicken. Hierdurch kann die Abmessung des Durchbruchs 46 klein gewählt werden, ohne dass der Blick der Kamera 30 behindert wird. Auf diese Weise wird die Glanzwinkel-Bedingung im wesentlichen erfüllt.

9 zeigt eine Anordnung 12d. Sie unterscheidet sich von der Anordnung von 8 dadurch, dass die Flächenkamera 30 durch eine Zeilenkamera 30 ersetzt wurde, und die Anordnung 12d zusätzlich eine Verschiebeeinrichtung 34 aufweist. Zusätzlich wurde bei dem Ausführungsbeispiel von 9 die effektiv leuchtende Fläche mit Öffnung, durch die die Kamera 30 hindurchblicken kann, dadurch erzielt, dass zu je einer Seite der optischen Achse 36 eine Lichtquelle 48a bzw. 48b angeordnet wurde, im vorliegenden Fall zwei schmale linienförmige ungerichtete Lichtquellen in der Nähe der optischen Achse 36.

10 zeigt ein Ausführungsbeispiel einer Anordnung, die allgemein mit 12e angezeigt ist. 10 stellt die Möglichkeit dar, mehrere Beleuchtungs/Bilderfassungsanordnungen des Typs von 7 quer zur Verschieberichtung 34 mehrmals anzuordnen, so dass in einem Scanvorgang bzw. einem Verschiebevorgang bei gleicher Auflösung ein breiterer Streifen der zu prüfenden Objektoberfläche 24 aufgenommen bzw. abgetastet werden kann, wie es Bezug nehmend auf 7 bzw. 5 beschrieben worden ist. Aus Übersichtlichkeitsgründen sind in 10 Strahlteiler, Lichtquelle und Lichtfalle nicht gezeigt, die einzeln für jede Zeilenkamera 30 oder – in verbreiteter Form – für mehrere Zeilenkameras gemeinsam vorgesehen sein können.

Die Ausführungsbeispiele von 510 liefern Bildaufnahmen einer zu prüfenden Objektoberfläche mit einem hohen Kontrast. Genauer ausgedrückt wird mit Hilfe einer entsprechenden Beleuchtung und einer oder mehreren Kameras bei diesen Ausführungsbeispielen die Abbildung der zu prüfenden Oberfläche erfasst, wobei zur leichteren Detektion der Defekte auf der Oberfläche, wie z.B. von Lunkern, Kratzern oder Kantenausbrüchen, d.h. Abweichungen der Form von Objektkonturen, anhand der erzeugten Abbildungen, ermöglicht die Beleuchtung bei diesen Ausführungsbeispielen eine kontrastreiche Abbildung.

Dies wird bei diesen Ausführungsbeispielen dadurch erreicht, dass die Beleuchtung jeweils so zur optischen Achse der entsprechenden Kamera ausgerichtet wird, dass die Lichtquelle bezüglich dem im Kamerabild sichtbaren Oberflächenbereich im Glanzwinkel erscheint. Weil die zu prüfende Oberfläche den größten Anteil des Lichts unter diesen Umständen zurück zur Kamera spiegelt bzw. reflektiert, werden die Bereiche, bei denen die Glanzwinkel-Bedingung gut erfüllt ist, heller abgebildet als Bereiche, bei denen die Glanzwinkel-Bedingung nicht oder nur annähernd erfüllt ist. Dies ist gerade der Fall bei Defekten, wie z.B. freigelegten Lunkern, Dellen oder Kratzern.

Wie aus den vorhergehenden Ausführungsbeispielen klar wurde, können die Kameras sowohl Flächenkameras als auch Zeilenkameras sein. Zeilenkameras haben den Vorteil, dass hier Ausführungen am Markt zur Verfügung stehen, die die Erzeugung von wesentlich höher aufgelösten Bildern erlauben als Flächenkameras, nämlich Bilder mit einer Auflösung in der einen Richtung, die von der Vergrößerung und dem Pixelabstand der Pixelzeile der Kamera abhängt, und einer Auflösung quer dazu, die von der Bildwiderholfrequenz und der Verschiebgeschwindigkeit abhängt. Allerdings muss bei Einsatz einer Zeilenkamera das Bild mit Hilfe einer allgemeinen linearen Relativbewegung von Objekt und Kamera erzeugt werden, wie es Bezug nehmend auf 5, 7, 9 und 10 beschrieben worden ist.

Zur Abbildung der zu prüfenden Oberfläche können normale Objektive, wie sie aus der Phototechnik bekannt sind, oder telezentrische Objektive verwendet werden. Der Vorteil des telezentrischen Objektivs ist die Abbildung ohne perspektivische Verzerrungen, allerdings muss dabei die Apertur der Objektiv-Frontlinse größer als die zu betrachtende Fläche sein, was nur für die Untersuchung kleinerer Werkstücke vorteilhaft ist. Der Vorteil des normalen Objektivs ist die Möglichkeit, ein quasi beliebige großes Werkstück ohne Relativbewegungserzeugung zu erfassen. Falls das Objekt zu groß ist, um mit angegebener Auflösung mit einer Kamera erfasst zu werden, kann man mehrere Kameras gleichzeitig einsetzen, wie es in 10 gezeigt ist. Jede Kamera liefert dann nur ein Teilbild der gesamten Oberfläche.

Bevor wieder Bezug nehmend auf 4 der weitere Fortgang der Oberflächenfehlerdetektion beschrieben wird, werden im folgenden noch mögliche Variationen zu den Ausführungsbeispielen von 510 beschrieben. Wie bereits erwähnt und wie es aus der nachfolgenden Beschreibung noch herauskommen wird, sind kontrastreiche Abbildungen für die nachfolgende Auswertung von Vorteil. Bei allen Ausführungsbeispielen wurde von der Tatsache Gebrauch gemacht, dass die Oberfläche von Gussteilen, seien sie bearbeitet oder unbearbeitet, zwar rau ist, aber dennoch bei senkrecht einfallendem Licht das Licht vornehmlich wieder entlang der Flächennormalen zurückreflektiert, d.h. nicht wie ein Lambert-Strahler wirkt, der von allen Seiten aus betrachtet genauso hell erscheint. Von den zurückreflektierten Strahlen wurden diejenigen ausselektiert, die von dem jeweiligen Objektpunkt im wesentlichen nur wenig zur Flächennormalen geneigt sind, da nur diese Strahlen in die Objektivöffnung gelangen. Fehlstellen weisen eine andere Reflexionscharakteristik auf, nämlich eine breiter streuende, weshalb derer weniger Licht in dem Raumwinkelsegment um die Flächennormalen zurückreflektiert wird.

Den Ausführungsbeispielen von 510 liegt dabei der Gedanke zugrunde, dass eine sehr kontrastreiche Abbildung einer Objektoberfläche und damit eine erleichterte und/oder sichere Auswertung der Bilddaten, um Oberflächenfehler zu erkennen, möglich ist, wenn Beleuchtungseinrichtung und Erfassungseinrichtung derart zu der zu prüfenden Oberfläche angeordnet werden, dass der Einfallswinkel des Beleuchtungsstrahls zur Oberfläche den gleichen Winkel aufweist, wie der Erfassungsstrahl zur Oberfläche geneigt ist, d.h. die Glanzwinkel-Bedingung erfüllt ist, da dann dadurch eine sehr kontrastreiche Abbildung erhalten wird, bei der sich fehlerhafte von fehlerfreien Oberflächenstellen stark in ihrer Helligkeit unterschieden.

Die vorliegende Erfindung ist aber nicht auf diese Vorgehensweise eingegrenzt. Es kann auch umgekehrt gerade ein Raumwinkelsegment der zurückreflektierten Strahlen der Oberflächenpunkte der zu prüfenden Oberfläche selektiert werden, in welchem von den flächigen Teilen der Oberfläche nur wenig Licht zurückreflektiert wird, was eben gerade der Fall ist, wenn die Glanzwinkel-Bedingung nicht erfüllt ist. In diesem Fall erscheint die Oberfläche im wesentlichen dunkel. Fehlstellen jedoch, an denen das Licht mehr gestreut als gespiegelt wird, erscheinen dagegen heller, da sie auch unter anderem in den interessierenden Raumwinkelbereich zurückreflektieren. Dieser Aufnahmetyp, bei dem, Oberflächenteile dunkel erscheinen, könnte dadurch erreicht werden, dass Kamera und Beleuchtung nicht unter Glanzwinkelbedingung zueinander und zu der Objektoberfläche ausgerichtet werden. Ferner könnte in dem bildseitigen Fokus der aufnahmeseitigen Linse Licht in der optischen Achse blockiert werden, so dass dasjenige Licht, was von der Oberfläche im Glanzwinkel bzw. entlang der Flächennormalen zurückreflektiert wird und bei der Abbildung durch den bildseitigen Fokus verläuft blockiert wird, gestreutes Licht aber durchgelassen wird. Auch in diesem Fall würden lediglich Objektpunkte hell erscheinen, die das Licht mehr zurückstreuen als es zielgerichtet zurückzuspiegeln, so dass auch bei dieser Ausführungsvariante Fehlstellen hell erscheinen würden.

Es soll noch darauf hingewiesen werden, dass obige Beleuchtungs/Bilderfassungsanordnungen auch zur Erzeugung kontrastreicher Abbildungen geeignet sind, wenn die zu prüfende Oberfläche andere Reflexionseigenschaften aufweist als Gussteile. So funktionierte obiges Verfahren freilich auch bei glätteren spiegelnden Oberflächen, wie z.B. bei Glas oder dergleichen. Ferner wird darauf hingewiesen, dass im Vorhergehenden die Verschiebemöglichkeit lediglich in bezug auf die Aufnahme mit eindimensional vermessenden Zeilenkameras beschrieben worden ist. Freilich ist es ferner möglich, das Objekt lateral zu verschieben und es abschnittsweise flächenhaft zu vermessen, um eine größere Fläche einzumessen.

Nachdem nun im Vorhergehenden Bezug nehmend auf die 510 Ausführungsbeispiele für Anordnungen zur Durchführung des Schritts 10, nämlich der Bildaufnahme, beschrieben worden sind, wodurch das Helligkeitsbild H(x, y) geliefert wird, wird im folgenden die Auswertung dieser Helligkeitsbilder beschrieben, die von einer Auswerteeinrichtung 50 durchgeführt wird, wobei dieselbe stellvertretend für die anderen Ausführungsbeispiele von Bildaufnahmeeinrichtungen lediglich in 5 dargestellt ist. Diese Auswerteeinrichtung 50 ist mit der Kamera 30 verbunden, um die Bilddaten H(x, y) zu erhalten und auszuwerten, wie es im folgenden beschrieben wird. Die Auswerteeinrichtung 50 ist beispielsweise ein Computer, auf dem ein geeignetes Computerprogramm abläuft, könnte aber auch ein in Hardware implementiertes Modul sein, das die im folgenden Bezug nehmend auf die Flussdiagramme beschriebenen Schritte mittels entsprechend integrierter Schaltung durchführt.

Nachdem nun im Schritt 10 die Bildaufnahme durchgeführt worden ist und die Helligkeitsmatrix H bei der Auswerteeinrichtung 50 eingetroffen ist, wird nun in einem Schritt 52 jedes Pixel (x, y) daraufhin überprüft, ob dasselbe um einen vorbestimmten Helligkeitsschwellenwert von einem Mittelwert der Helligkeitswerte innerhalb eines Umgebungsbereichs desselben abweicht. Jedes Pixel, bei dem dies der Fall ist, gilt als Kandidatenpixel, d.h. als Pixel, das dafür in Frage kommt, ein Pixel zu sein, auf das ein Oberflächenfehler abgebildet worden ist. Genauer ausgedrückt werden in dem Schritt 52 für jedes Pixel (x, y) die folgenden Schritte durchgeführt:

  • – Die mittlere Helligkeit des Bildes in einer Umgebung des Pixels (x, y) von N+1 mal N+1 Pixeln wird berechnet, d.h.
  • – Danach wird die aktuelle Helligkeit des Pixels (x, y) mit der berechneten mittleren Helligkeit verglichen und, falls die Abweichung eine bestimmte, wählbare Schwelle &thgr; übersteigt, wird das aktuelle Pixel als Kandidatenpixel markiert. Anders ausgedrückt, wird folgende Ungleichung auf ihre Richtigkeit hin überprüft, wobei in diesem Fall das Pixel als Kandidatenpixel deklariert wird:

Die Markierung kann entweder das Hinzufügen des Paars x, y eines Kandidatenpixels zu einer Liste von Kandidatenpixelkoordinatenpaaren umfassen, oder der Schritt 52 erzeugt ein Array von Markierungen, von denen jede einem Pixel zugeordnet ist und angibt, ob dasselbe ein Kandidatenpixel ist oder nicht.

In einem Schritt 54 werden daraufhin zusammenhängende Cluster von Kandidatenpixeln zu Gruppen bzw. in zusammenhängende Gebiete von Pixeln zusammengefasst, die gemäß der vorliegenden Beschreibung als Blobs bezeichnet werden. Blobs liegen folglich, da sie ja aus Kandidatenpixeln bestehen, in der Nähe von einer Grenze zwischen hellen und dunklen Bereichen des Bildes H(x, y).

Daraufhin wird in einem Schritt 56 jeder Blob daraufhin untersucht, ob in einer Nähe eines Rands bzw. der Umrandung des Blobs eine Konturlinie ziehbar ist, die mit mehr als einem vorbestimmten Mindestkontrast hellere von dunkleren Pixeln in dem und um den Blob herum trennt.

Der Schritt 56, der Bezug nehmend auf 11 noch näher beschrieben werden wird, ist dazu da, unter allen Blobs die relevanten Blobs, quasi die Kandidatenblobs, die potentiell Abbildungen von Oberflächenfehlern darstellen, ausfindig zu machen. Diese Kandidatenblobs werden im Folgenden als Objekte bezeichnet. Der Schritt 56 ermöglicht es dabei, die Informationsfülle über die relevanten Blobs, nämlich diejenigen, um die die Konturlinie ziehbar ist, zu reduzieren, da von da an nur noch die Pixel auf der Konturlinie betrachtet werden müssen.

Das Ergebnis des Schritts 56 sind Pixelketten, die die Konturlinien der relevanten Blobs darstellen. Wie es später Bezug nehmend auf 11 noch näher beschrieben werden wird, werden nur solche Blobs als Kandidatenblobs herausgesucht, um die eine geschlossene Konturlinie ziehbar ist, oder eine Konturlinie, die von Pixelarrayrand bis Pixelarrayrand läuft. Andere Blobs werden verworfen, auch wenn entlang ihren Randes teilweise eine Konturlinie mit erheblichem Kontrast ziehbar ist, wie z.B. eine U-förmige Konturlinie. Der Grund hierfür besteht darin, dass entdeckt worden ist, dass solche Blobs zumeist nur reflektierende Ablagerungen oder ähnlichem herrühren und somit anderenfalls zu Falsch-Positiv-Fehldiagnosen führen würden, d.h. der fälschlichen Annahme, es handele sich um einen Oberflächenfehler.

Danach werden in einem Schritt 58 die Kandidatenblobs bzw. die Blobs, denen eine Konturlinie zuordbar war, d.h. die Objekte, mit einem Satz von Sollbildobjekten verglichen, um jedes Objekt unter den Objekten daraufhin zu überprüfen, ob dasselbe zu einem der Sollbildobjekte mehr als einen vorbestimmten Grad an Übereinstimmung aufweist, wodurch eine Zuordnung zwischen Objekten und Sollbildobjekten erhalten wird, die einem Objekt höchstens ein Sollbildobjekt und umgekehrt einem Sollbildobjekt höchstens ein Kandidatenblob zuordnet.

Die Sollbildobjekte können aus einer Bildaufnahme eines fehlerlosen Referenzobjektes bzw. Gussteils auf dieselbe Weise erhalten worden sein wie die im vorhergehenden beschriebenen Objekte, d.h. durch Bildaufnahme, Ausfindigmachen von Blobs und ziehen von Konturlinien. Die Sollbildobjekte betreffen folglich keine Oberflächenfehler, sondern stellen beispielsweise die Kanten der zu prüfenden Oberfläche des Referenzgussteils dar also Stellen, die erwünscht sind, aber in der Bildaufnahme eben beispielsweise dunkel im Vergleich zur restlichen Objektoberfläche erscheinen. Der Satz von Sollbildobjekten wird im folgenden auch manchmal als Musterliste bezeichnet. Alternativ könnten die Sollbildobjekte nicht auf dieselbe Art und Weise wie die Kandidatenblobs bzw. Objekte erzeugt worden sein, nämlich basierend auf einer Aufnahme, sondern sie könnten durch ein CAD-Programm aus Modelldaten des zu prüfenden Gussteils erzeugt worden sein oder aus einer Aufnahme aber mit einem beispielsweise anderen, genaueren und aufwendigeren Algorithmus zur Erzeugung der Konturlinien.

Bei einem Prüfling ohne Oberflächenfehler sollte die Abbildung zwischen Objekten einerseits und Sollbildobjekten andererseits, die im Schritt 58 erzeugt wird, bijektiv sein, d.h. jedes Sollbildobjekt sollte genau einem Kandidatenobjekt zugeordnet sein und umgekehrt. Dies würde nämlich bedeuten, dass die im Schritt 10 erzeugte Bildaufnahme lediglich gewünschte Konturen aufweist, wie z.B. die Oberflächenkanten.

Sind Kandidatenblobs keinem Sollbildobjekt zuordbar, so sind sie als Oberflächenfehler, wie z.B. isolierte freigelegte Lunker oder dergleichen, zu interpretieren, und dementsprechend wird in einem Schritt 60 jeder solche Kandidatenblob als Bild einer Fehlstelle identifiziert und beispielsweise einer Liste für abweichende Objekte hinzugefügt.

Kann ein Sollbildobjekt aus der Musterliste keinem der Kandidatenblobs zugeordnet werden, bedeutet dies allerdings auch einen Oberflächenfehler, wie z.B. das Fehlen einer Bohrung. Dementsprechend wird in einem Schritt 62 der Bildbereich der Bildaufnahme H, die im Schritt 10 erzeugt worden ist, die sich an Stellen von Sollbildobjekten befinden, denen kein Kandidatenblob zugeordnet werden kann, als Bild einer Fehlstelle interpretiert und beispielsweise derselben Liste von abweichenden Objekten hinzugefügt, wie sie bei Schritt 60 verwendet wurde, oder einer anderen.

In einem Schritt 64 werden daraufhin diejenigen Kandidatenblobs, die Sollbildobjekten zuordbar waren, daraufhin überprüft, ob ihre gegebenenfalls vorhandenen Abweichungen ihrer Konturlinie zu der Konturlinie des Sollbildobjekts auf einen Kantenfehler hindeuten lassen, wobei, wenn dies der Fall ist, diese in einem Schritt 66 ebenfalls einer Liste von abweichenden Objekten hinzugefügt werden.

Ist zu einem Prüfling bis zu dem Schritt 66 noch kein Objekt der Liste von abweichenden Objekten hinzugefügt worden, nämlich in einem der Schritte 60, 62 und 66, so ist der Prüfling fehlerfrei, was durch entsprechendes Signal angezeigt werden kann, oder einfach dadurch, dass das Testgussstück zu einer vorbestimmten Station, beispielsweise einer Verpackungsstation weitergeleitet wird. Andernfalls ist die Objektoberfläche des Prüflings fehlerhaft, wobei dies ebenfalls durch entsprechendes Signal angezeigt werden kann oder durch Weiterleiten des Gussstücks an einen Ort für fehlerhafte Gusstücke. Die Liste von abweichenden Objekten kann dazu verwendet werden, die entsprechenden Stellen am Gusstück näher zu untersuchen, durch gegebenenfalls zusätzlich vorhandene Messverfahren oder durch menschliches Personal, das den Ort der sich in der Liste von abweichenden Objekten befindlichen Objekte bzw. der entsprechenden Stellen des Gusstücks beispielsweise an einem Monitor angezeigt bekommt, wodurch Falsch-Negativ-Fehlermeldungen revidiert werden können, d.h. Meldungen, die fälschlicher Weise eine Fehlerhaftigkeit diagnostizieren, obgleich kein Fehler vorhanden ist.

Nachdem nun in groben Zügen die Vorgehensweise bei der Oberflächenfehlererkennung beschrieben worden ist, wird im folgenden Bezug nehmend auf 11 der Schritt 56 für einen Beispiel-Blob näher beschrieben. Ein solcher Blob ist exemplarisch in 12 dargestellt. In 12 sollen die einzelnen Kästchen 70 jeweils ein Pixel unter den in Spalten und Zeilen angeordneten Pixeln darstellen. Eine Umrandungslinie 72 umrandet diejenigen Pixel, die zu einem exemplarischen Blob gehören, d.h. die Kandidatenpixel des Blobs, die von Nicht-Kandidatenpixeln umgeben sind. Bei der Beschreibung von 11 wird im folgenden auch auf 12 Bezug genommen.

In einem Schritt 74 wird nun zunächst ein Kandidatenpixel des Blobs 72 als Zentrumpixel ernannt. Die Auswahl erfolgt derart, dass das Zentrumpixel ein Kandidatenpixel des Blobs ist, das sich am Rand des Blobs 72 befindet. In dem exemplarischen Fall von 12 wurde als das Zentrumpixel im Schritt 74 das Pixel 76 ernannt, nämlich dasjenige, das sich in der rechtesten Spalte befindet und unter den Kandidatenpixeln des Blobs 72 in dieser Spalte das unterste Pixel ist. Bei einem alternativen Ausführungsbeispiel könnte freilich auch das oberste linke Kandidatenpixel des Blobs gewählt werden.

Wie es im folgenden noch näher beschrieben wird, wird das Zentrumpixel im Laufe des Verfahrens ständig weiterverlegt bzw. verschoben. Bei dem Ausführungsbeispiel von 12 ist das aktuelle Zentrumpixel deshalb das Pixel 78.

In einem Schritt 80 werden dann die Pixel in einem Schwellenumgebungsbereich 82 um das aktuelle Zentrumpixel 78 herum in helle und dunkle Pixel eingeteilt. Hierzu wird, wie es in 12 durch den Pfeil 84 angedeutet ist, aus den Helligkeitswerten der Pixel innerhalb des Schwellenumgebungsbereichs 82 ein lokales Histogramm 86 ausgewertet, eine Darstellung, bei der für jeden möglichen Helligkeitswert H, wie z.B. für jeden von 256 möglichen Helligkeitswerten, die Anzahl an Pixeln aufgetragen wird, die diesen Helligkeitswert aufweisen. Die Sortierung in helle und dunkle Pixel erfolgt dann beispielsweise durch Ermitteln einer Schwelle, die dem tiefsten Minimum des Histogramms, falls es multimodal ist, entspricht, wie es in dem Diagramm 86 durch die gestrichelte Linie 88 angedeutet ist. Man kann eine Schwelle für die Sortierung auch auf andere Weise ermitteln, wie z.B. als Mittelwert der Helligkeit der Pixel innerhalb des Schwellenumgebungsbereichs 82. Während also die Schwelle 88 die Sortierung der Pixel mittels Histogramm-Analyse beschrieben worden ist, ist auch eine andere Vorgehensweise möglich. Insbesondere wird darauf hingewiesen, dass die vorbeschriebene Histogramm-Analyse zu keinem Ergebnis führen kann, nämlich dann, wenn es nicht möglich ist, die Schwelle aus der Analyse des Histogramms zu ermitteln. In diesem Fall müsste der Prozessor wie auch in dem Fall zu niedrigen Kontrastes, wie es im folgenden noch beschrieben wird, abgebrochen werden, was jedoch in 12 aus Übersichtlichkeitsgründen nicht gezeigt ist und deshalb, weil diese Abbruchalternative bei Verwendung anderer Sortierungsmöglichkeiten möglicherweise nicht auftritt.

Zurückkehrend zu 12. wären alle Pixel links der gestrichelten Linie die dunklen Pixel, und alle Pixel rechts der gestrichelten Linie 88 wären die hellen Pixel. In dem exemplarischen Fall von 12 verläuft die Linie, die die derart in helle und dunkle Pixel sortierten Pixel des Bereichs 82 trennt, exemplarisch wie bei 90 angezeigt, wobei die hellen Pixel in dem Bereich 82 oberhalb der Linie 90 und die dunklen unterhalb derselben liegen.

In einem Schritt 92 wird dann der Kontrast zwischen den hellen und dunklen Pixeln im Schwellenumgebungsbereich 82 berechnet. Diese Berechnung umfasst beispielsweise das Berechnen des Mittelwerts der Helligkeit der hellen Pixel und des Mittelwerts der Helligkeit der dunklen Pixel und das Bilden des Quotienten der beiden Mittelwerte. Freilich sind auch andere Berechnungen für den Kontrast möglich, wie z.B. das Bilden der Differenz der beiden vorerwähnten Mittelwerte.

In einem Schritt 94 wird daraufhin geprüft, ob der im Schritt 92 berechnete Kontrast einen bestimmten voreingestellten Mindestkontrast überschreitet. Ist dies nicht der Fall, so endet die Konturliniensuche ohne Erfolg bei 96, so dass, wie in 4 beschrieben, dieser Blob als Kandidatenblob verworfen wird. Ist der Kontrast jedoch größer als der Mindestkontrast, werden die Pixel an der Grenze 90 zwischen den hellen und den dunklen Pixeln im Schwellenumgebungsbereich 82, nämlich in 12 die mit Kreisen angezeigten Pixel, an eine augenblickliche Pixelkette, die in 12 mit Kreuzen angezeigt ist und sich von dem zuerst ernannten Zentrumpixel 74 bis zu dem augenblicklichen Zentrumpixel 78 erstreckt, angehängt. Hierdurch wird die Trennlinie 90 zwischen hellen und dunklen Pixeln als die gesuchte Konturlinie, die innerhalb des Bereichs 82 liegt, interpretiert.

Daraufhin wird in einem Schritt 100 die Pixelkette daraufhin überprüft, ob sie geschlossen ist oder nicht. Ist dies nicht der Fall, wird in einem Schritt 102 die bereits erwähnte Änderung des Zentrumpixels vorgenommen. Und zwar wird das Zentrumpixel 78 auf das Grenzpixel, d.h. das Pixel an der Grenzlinie 90, als neues Zentrumpixel ausgewählt, das am Rand des Schwellenumgebungsbereichs 82 liegt. Das neue Zentrumpixel wäre in 12 das Pixel 104. Auf den Schritt 102 hin würden die Schritte 80, 92, 94, 98 und 100 für das neue Zentrumpixel erneut durchgeführt werden.

Ergibt die Prüfung im Schritt 100 jedoch, dass die Pixelkette geschlossen ist, wird die Pixelkette als die Konturlinie des Blobs identifiziert, und zwar in dem Schritt 106. Daraufhin endet das Verfahren wiederum bei 96. Insgesamt kann der Ablauf von 11 folglich auf zweierlei Arten enden, nämlich einerseits durch das Finden einer Konturlinie im Schritt 106 oder durch Verlieren der Pixelkette im Schritt 94 durch zu wenig Kontrast. Im erstgenannten Fall wird der Blob mit der Konturlinie als Objekt weiteren Analysen unterzogen, wie es im vorhergehenden bereits beschrieben worden ist und im folgenden noch näher erörtert werden wird. Im letzteren Fall wird der Blob verworfen und nicht näher untersucht.

Die Vorgehensweise nach 11 ermöglicht es insbesondere bei den typischer Weise bei Gussteilen vorkommenden Oberflächenfehlern, potentiell fehlerhafte Oberflächenstellen von lediglich Artefakten im Pixelbild H(x, y) zu trennen, wie sei beispielsweise durch ein Staubkorn im Strahlengang oder durch Feuchtigkeitsablagerungen erzeugt werden oder dergleichen.

In bezug auf den Schritt 100 wird darauf hingewiesen, dass es bei der Überprüfung im Schritt 100 es als zu einer geschlossenen Pixelkette äquivalent angesehen werden kann, wenn eine Pixelkette von einem Rand des Pixelarrays bis wieder zum Rand des Pixelarrays verläuft bzw. von Rand zu Rand einer vorher gewählten AOI (AOI = area of interest = interessierender Bereich) des Pixelarrays.

13 zeigt ein Ausführungsbeispiel für den Ablauf 5866 in etwas detaillierterer Form. Der Ablauf von 13 schließt sich an die Durchführung des Ablaufs von 11 für jeden Blob an.

Bei einem Schritt 120 wird zunächst eine oder mehrere allgemeine Eigenschaften eines ersten der Kandidatenblobs bestimmt. Solche Eigenschaften umfassen:

  • – eine Helligkeitsangabe, beispielsweise ein binärer Wert, der zeigt, ob das Objekt heller oder dunkler als der Hintergrund ist. Hierzu sei noch mal darauf hingewiesen, dass bei dem Schritt 52 es nicht ausgeschlossen ist, dass auch hellere Stellen Blobs bilden und damit zu Kandidatenblobs werden. Die Helligkeit eines Blobs hängt mit der Raumwinkelrückstrahlcharakteristik des entsprechenden Oberflächenstelle des zu testenden Gusstücks ab und ermöglicht es somit Kandidatenblobs verschiednen Fehlerkategorien zuzuordnen.
  • – die Anzahl der zugehörigen Pixel. Dieser Wert entspricht seinem Wesen nach einer Flächenangabe des Blobs. Die Anzahl der zugehörigen Pixel wird bestimmt als die Pixel innerhalb und auf der Konturlinie.
  • – die Größe des umschreibenden Rechtecks. Die Größe des umschreibenden Rechtecks gibt Auskunft über die Form des Blobs, nämlich länglich oder rund. Die Größe des umschreibenden Rechtecks wird beispielweise definiert durch zwei Punkte, nämlich beispielsweise die linke obere Ecke (xl, yl) und die rechte untere Ecke (xr, yr), wobei xl das Minimum aller x-Koordinaten der Pixel auf der Pixelkette des Blobs, yl das Maximum der y-Koordinaten der Pixel auf der Pixelkette, xr das Maximum der x-Koordinaten der Pixel auf der Pixelkette und yr das Minimum der y-Koordinaten der Pixel auf der Pixelkette ist. Alternativ wird die Größe des umschreibenden Rechtecks definiert durch das Tupel (|xl – xr|, |yl – yr|)
  • – die Position des umschreibenden Rechtecks. Sie ist beispielsweise implizit in der Angabe der Größe des umschreibenden Rechtecks enthalten, nämlich in der Zwei-Ecken-Angabe, oder wird durch einen der Eckpunktpixel angegeben.
  • – die Länge der Pixelkette, die die Grenze des Kandidatenblobs beschreibt.

Diese Eigenschaften definieren zusammen mit der Pixelkette des Kandidatenblobs den Kandidatenblob für die darauffolgenden Schritte vollständig. Andere Informationen über den Blob werden nicht mehr ausgewertet. Somit vereinfacht sich die Auswertung bzw. die Fülle an zu bearbeitenden Informationen enorm.

Die Informationen, die so zu einem Blob im Schritt 120 gesammelt worden sind, nämlich die allgemeinen Eigenschaften plus die bereits vorhandene Konturlinie in Form der Pixelkette, bilden zusammen eine Einheit, die im folgenden als Objekt bezeichnet wird. Schritt 120 erstellt folglich zu einem Kandidatenblob ein Objekt, das die allgemeinen Eigenschaften und die Konturlinie dieses Kandidatenblobs umfasst.

In einem nachfolgenden Schritt 122 wird das Objekt von Schritt 120 daraufhin überprüft, ob dasselbe aufgrund seiner allgemeinen Eigenschaften zu einem Sollbildobjekt aus einer Liste von freien Sollbildobjekten passt. Die Liste von freien Sollbildobjekten entspricht am Anfang des Ablaufs von 13 noch der Musterliste. Wie es im folgenden jedoch deutlich werden wird, wird diese Liste zunehmend ausgedünnt, indem Sollbildobjekte aus der Liste von freien Sollbildobjekten entfernt werden.

Der Schritt 122 umfasst einen schrittweisen Vergleich der allgemeinen Eigenschaften des Objekts mit entsprechenden Eigenschaften des Sollbildobjekts. Der Eigenschaftsvergleich wird beispielsweise schrittweise in der Reihenfolge durchgeführt, in der die exemplarischen Eigenschaften im Vorhergehenden aufgelistet wurden, nämlich von oben nach unten. Durch diese Maßnahme wird es gewährleistet, dass es durch sehr einfache Vergleiche ermöglicht wird, eine Zuordnung des aktuellen Objekts mit dem aktuell betrachteten Sollbildobjekt aus der Liste von freien Sollbildobjekten möglichst früh ausschließen zu können, falls diese Zuordnung tatsächlich nicht existiert. Ein aufwendiger Konturlinienvergleich wird deshalb nur für ein Objekt/Sollbildobjekt-Paar durchgeführt, wo aufgrund der allgemeinen bzw. ungenauen Eigenschaften ein Indiz dafür besteht, dass eine solche Zuordnung vorliegen könnte.

Ergibt der Schritt 122, dass Objekt und Sollbildobjekt in ihren allgemeinen Eigenschaften übereinstimmen (124), so wird in einem Schritt 126 geprüft, ob die Konturlinien des aktuellen Blobs und des aktuellen Sollbildobjekts ausreichend übereinstimmen. Die Konturlinien werden im Schritt 126 beispielsweise dadurch genau verglichen, dass für eine wählbare Anzahl von Konturpunkten des aktuellen Objekts entsprechende Konturpunkte des Musterobjekts bzw. Sollbildobjekts gesucht werden. Falls die meisten Paare in Rahmen angegebenen Abweichungen liegen, wird das Musterobjekt als das dem aktuellen Objekt entsprechende Objekt erkannt, wodurch Übereinstimmung vorliegt.

Ergibt die Prüfung von Schritt 126 eine ausreichende Übereinstimmung (128), so wird in einem Schritt 130 das aktuelle Sollbildobjekt aus der Liste von freien Sollbildobjekten gestrichen. Der Schritt 130 bedeutet, dass keiner der nachfolgend zu überprüfenden Kandidatenblobs bzw. Objekten mehr mit dem Sollbildobjekt verglichen werden muss, da dieses Sollbildobjekt ja bereits sein Pendant in der Bildaufnahme von Schritt 10 aufweist.

Im Schritt 132 wird ein genauer Vergleich der Konturlinien des Paars von Objekt und zugehörigem Sollbildobjekt durchgeführt, um Kantenfehler zu erkennen. Dieser Schritt wird im folgenden noch Bezug nehmend auf 14 und 15 näher erläutert.

Ergibt der Schritt 132 einen Fehler (134), so wird dieser Fehler zu einer Fehlerliste im Schritt 136 hinzugefügt. Auch dieser Schritt wird Bezug nehmend auf 14 näher erläutert.

Die Vergleiche 130, 132 und 136 werden nur deshalb durchgeführt, weil das aktuelle Objekt durch die Schritte 122 und 126 dem aktuellen Sollbildobjekt zugeordnet worden ist. Ergibt einer der Schritte 124 und 128 jedoch eine fehlende Übereinstimmung, so wird in einem Schritt 138 überprüft, ob in der Liste von freien Sollbildobjekten weitere Sollbildobjekte vorhanden sind, mit denen das aktuelle Objekt noch nicht verglichen worden ist. Ist dies der Fall, so wird bei Schritt 122 von neuem mit einem nächsten Sollbildobjekt aus der Liste von freien Sollbildobjekten erneut begonnen. Ist dies jedoch nicht der Fall und gibt es folglich kein Sollbildobjekt mehr in der Liste von freien Sollbildobjekten, mit denen das aktuelle Objekt verglichen worden ist, wird das aktuelle Objekt im Schritt 140 der Fehlerliste hinzugefügt, da offenbar ein Prüfling ohne Oberflächenfehler, wie z.B. ein zur Erzeugung der Sollbildobjekte herangezogenes Referenzgussteil, kein solches Objekt in der Bildaufnahme bewirkt hätte.

Nach dem Schritt 140, oder wenn sich bei dem Vergleich von Schritt 132 kein Fehler ergibt, und nach dem Schritt 136, wird in einem Schritt 142 überprüft, ob ein weiterer Blob mit Konturlinie, d.h. ein Blob, dem eine Konturlinie zuordbar war, existiert, der noch nicht den Schritten 120140 unterzogen worden ist. Ist dies der Fall, werden die Schritte 120140 für den weiteren Blob bzw. das daraus entsehende Objekt wiederholt. Ist dies nicht der Fall, werden in einem Schritt 144 die übriggebliebenen Objekte aus der Liste von freien Sollbildobjekten der Fehlerliste hinzugefügt, da offenbar für diese keine Pendants in der Bildaufnahme des Prüflings existieren, was auf das Fehlen einer gewollten Kante schließen lassen könnte.

Bezug nehmend auf 14 und 15 wird im folgenden der Schritt 132 von 13 näher beschrieben. 15 zeigt im oberen Teil einen exemplarischen Ausschnitt 150 des Pixelarrays der Bildaufnahme von Schritt 10, wobei die Pixel 70 wiederum durch Kästchen 70 angedeutet sind. Bei dem Ausschnitt 150 sind mit Kreuzen „X" exemplarisch die Pixel gezeigt, die die Pixelkette bilden, die der Konturlinie des aktuellen Objekts entspricht. Mit Kreisen sind diejenigen Pixel gezeigt, die die Pixelkette bilden, die der Konturlinie des Sollbildobjekts entspricht, mit der die Konturlinie des aktuellen Objekts verglichen werden soll. Es wird darauf hingewiesen, dass der Ausschnitt 150 nur einen Abschnitt der Konturlinien darstellt, die sich an anderer, nicht gezeigter Stelle schließen.

In einem Schritt 152 wird nun zunächst für jedes Pixel aus der Pixelkette der Kontur des aktuellen Objekts der kleinste Abstand zu der Sollkonturlinie berechnet, d.h. der Abstand bis zum nächstgelegenen Pixel auf der Kontur des Musterobjekts bzw. bis zum nächstgelegenen Pixel auf der Sollkonturlinie. Das Ergebnis von Schritt 152 ist eine Funktion a(np), die dem np-ten Pixel aus der Kontur des Objekts den Wert a(np) zuordnet. In 15 ist bei 154 unterhalb des Ausschnitts 150 für den exemplarischen Fall des Ausschnitts von 150 ein Diagramm dargestellt, bei dem entlang der y-Achse a(np) und entlang der x-Achse die Pixelnummer np aufgetragen ist. In dem exemplarischen Fall von 15 steigt die Pixelnummer np bei den Pixeln der Kontur des Objekts von links nach rechts an. Es wird darauf hingewiesen, dass bei 150 zwei unmittelbar aufeinander folgende Pixel der Pixelkette des aktuellen Objekts in einer Spalte liegen, deren Pixelnummern aber in dem Diagramm 154 natürlich an benachbarten x-Achsen-Positionen angeordnet sind. Das Diagramm ist deshalb mit der x-Achse nur von dem linken Pixel bis zu dem ersten dieser beiden in einer Spalte angeordneten Pixel ausgerichtet. Die Funktion a(np) wird als Kurve für den „aktuellen Abstand" bezeichnet.

Basierend auf der Kurve für den aktuellen Abstand wird in einem Schritt 156 für jedes Pixel aus der Pixelkette der Kontur des aktuellen Objekts ein mittlerer Wert, wie z.B. der Mittelwert der kleinsten Abstände des jeweiligen Pixels und seiner benachbarten Pixel aus der Pixelkette berechnet, d.h.

wobei N/2 die Anzahl von Pixeln in der Pixelkette ist, die vor und hinter dem jeweiligen Pixel in der Pixelkette zur Mittelung herangezogen wird.

Das Ergebnis von Schritt 156 ā(np) ist in 15 für den exemplarischen Fall von 150 bei 158 als ein dem Diagramm von 154 entsprechenden Diagramm 158 angezeigt.

In einem Schritt 160 wird daraufhin die Wegableitung von a(np) entlang der Pixelkette berechnet, d.h.

wie z.B. a'(np) = a(np) – a(np–1). Das Ergebnis von Schritt 160 ist a'(np).

Bei den Schritten 156 und 160 ist zu beachten, dass die Funktion a(np) zyklisch wiederholt werden kann, da ja die Pixelkette geschlossen ist.

In einem Schritt 162 wird daraufhin ein Zähler i initialisiert, und zwar auf den Zählerwert Null. Der Zählerwert i dient im folgenden zum Durchscannen der Pixel der Pixelkette des aktuellen Objekts. In einem Schritt 164 wird daraufhin überprüft, ob der aktuelle Abstand a(i) den mittleren Abstand ā (i) übersteigt, bzw. ob a(i)>ā (i) wahr ist. Ist dies der Fall, so wird in einem Schritt 166 überprüft, ob auch der Wert der Ableitung a'(np) eine einstellbare Schwelle &thgr; übersteigt. Ist dies ebenfalls der Fall, so wird der Beginn der Abweichung der Konturlinien bis zu einem geeignet bestimmten Ende der Abweichung zu der Fehlerliste hinzugefügt. Das Ende des Defektes wird beim weiteren Durchscannen der Pixel der Pixelkette an dem Rückgang des aktuellen Abstand a(i) zum Wert des mittleren Abstands a'(i) erkannt, woraufhin dann der Wert i bei Schritt 168 auf das Ende des Defektes eingestellt wird.

Ergeben die Überprüfungen 164 und 166, dass der aktuelle Abstand kleiner als der mittlere Abstand ist oder die erste Ableitung den Schwellenwert nicht übersteigt, so wird in einem Schritt 170 der Zählerwert i inkrementiert.. Schritt 170 wird auch nach Schritt 168 durchgeführt. In einem Schritt 172 wird daraufhin überprüft, ob der Zählerwert die Pixelkettenlänge, ausgedrückt in Anzahl an Pixeln, überschritten hat. Ist dies der Fall, endet der Vorgang bei 174. Andernfalls wird die Überprüfung von Schritt 164 an erneut durchgeführt.

Durch die Überprüfungen in den Schritten 164 und 166 werden Kantenausbrüche feststellbar. Bei dem Schritt der Hinzufügung nach 168 kann es vorgesehen sein, dass ein Objekt für einen Kantenfehler dadurch gebildet wird, dass die Konturlinie des aktuellen Objekts vom Anfang bis zum Ende des Defektes zusammen mit dem entsprechenden Abschnitt der Konturlinie des Sollbildobjekts verwendet wird, um eine geschlossene Kontur für den Kantenfehler zu definieren, so dass eine geschlossene Konturlinie des Objekts entsteht. Für dieses Objekt könnten dann auch allgemeine Eigenschaften wie in Schritt 120 ermittelt werden.

Nachdem im Vorhergehenden Ausführungsbeispiele für die vorliegende Erfindung beschrieben worden sind, wird auf folgendes hingewiesen. Es ist unvermeidlich, dass bei der Bildaufnahme im Schritt 10 aufgrund von Lagetoleranzen die Lage des Prüfteils und damit der zu prüfenden Oberfläche im Bild von Prüfteil zu Prüfteil unterschiedlich ist. Es kann deshalb zwischen den Schritten 10 und 52 eine Lagekorrektur vorgesehen werden, bei der der Inhalt des aktuellen Bildes H(x, y) derart verschoben und verdreht wird, dass die Lage des aktuellen Prüfteils im Bild exakt mit der Lage des Teils in einem Referenzbild, das zur Gewinnung der Musterliste verwendet wurde, übereinstimmt. Dieser Schritt kann auch Interpolationen umfassen.

In bezug auf den Ablauf von 11 wird darauf hingewiesen, dass die dort gezeigte Vorgehensweise für jeden Blob dazu führen kann, dass aus den Blobs Konturlinien erzeugt werden, die sich auf ein und dieselbe Oberflächenerscheinung in der Bildaufnahme beziehen. Diese Doppelgänger, die aufgrund des Vorgangs nach 11 entstehen können, können erkannt und gelöscht werden, indem die Grenzen aller Objekte miteinander verglichen werden.

Bezugnehmend auf die 4, 10, 11, 13 und 14 wird nach darauf hingewiesen, dass sowohl von der dort gezeigten Schrittreihenfolge als auch von den einzelnen Schritten abgewichen werden kann. Die Objekterzeugung von Schritt 120 kann beispielsweise vorab zunächst für alle Blobs mit Konturlinie durchgeführt werden. Ferner mag es bei anderen Prüflingen als Gussteilen vorteilhafter sein, auch nicht geschlossene Konturlinien zuzulassen, wobei auch die obigen allgemeinen Eigenschaften teilweise anders definiert werden müssten. Auch die Handhabung der Liste von freien Sollbildobjekten kann unterschiedlich realisiert werden, nämlich sowohl durch Erzeugen einer Kopie alle Objekte in Musterliste und aufeinanderfolgendes Streichen von Objekten in derselben oder durch Markieren von Sollbildobjekten in der Musterliste als gefunden in Schritt 130, wobei in Schritt 138 nur unmarkierte Sollbildobjekte zählen. Ferner kann auch nur eine der allgemeinen Eigenschaften verwendet werden oder die Schritte 120 und 122 können ganz weggelassen werden. Ferner könnte der Schritt 132 weggelassen werden, wenn Kantenfehler bei einer bestimmten Anwendung nicht wesentlich sind. Umgekehrt kann es sein, dass bei manchen Anwendungen die Bijektion der Zuordnung zwischen Sollbildobjekten und Objekten vorausgesetzt werden kann, so dass die Zuordnung nach Schritt 56 bzw. 126 vereinfacht bzw. weggelassen werden könnte, wodurch nur nach Kantenfehlern Ausschau gehalten werden würde. Zudem kann der Fall Auftreten, da ein Referenzteil nur ein Sollbildobjekt aufweist, z.B. die Außenkante einer geschlossenen flachen Oberfläche. In diesem Fall ist die Zuordnung dem bei dem Testteil erhaltenen Objekt und dem Sollbildobjekt zwangsweise vorgegeben. Ferner müssen die Objekte der Fehlerliste ja nicht alle zusammengetragen werden. Obige Schrittfolge könnte sofort unterbrochen werden, sobald nur ein möglicher Fehler erkannte worden ist.

Ferner wird darauf hingewiesen, dass die vorhergehenden Ausführungsbeispiele nicht nur auch flache Oberflächen anwendbar sind. Beispielsweise könnten die Ausführungsbeispiele nach 5, 7, 9 und 10 darin variiert werden, dass ein zylinderförmiger Gegenstand mit seiner Symmetrieachse parallel zur Lichtlinie 28 angeordnet wird, die dann entlang des Zylindermantels verläuft. Anstelle einer Linearrelativverschiebung würde dann beispielsweise eine Drehung des Zylinders um seine Zylinderachse erfolgen. Am Ort 28 der Beleuchtung wäre die Oberfläche auf diese Weise stets lokal ausreichend flach. Dies trifft freilich auch für andere Objektformen zu, wobei jedoch für die Relativbewegung jedoch mehr oder weniger komplizierte Bewegungen notwendig sind. Dasselbe gilt freilich auch für die Aufnahmen mit Flächenkameras. Die im vorhergehenden genannten verschiednen Listen können in beliebigen Speichern der Auswerteeinrichtung 50 und/oder extern hierzu gespeichert sein.

In Bezug auf die Beschreibung von 12 wird noch darauf hingewiesen, dass die Reihenfolge der Schritte auch variieren kann. So könnte beispielsweise die Bestimmung des dort als Ausführungsbeispiel für eine Helligkeitsangabe beschriebenen binären Werts, der zeigt, ob das Objekt heller oder dunkler als der Hintergrund ist, folgendermaßen durchgeführt werden: Wenn der Schwellenumgebungsbereich 82 schon in helle und dunkle Pixel geteilt ist, kann man an der entstehenden Grenze die Richtung des Helligkeitsgradienten ermitteln. Seien die hellen Pixel beispielsweise oben und der Gradient sei von unten nach oben gerichtet. Es wird dann eine Pixelkette, die die Grenze beschreibt, von links nach rechts, erstellt, so dass die Pixelkette, falls sie geschlossen wird, um einen dunklen Fleck immer im Uhrzeigersinn herum läuft und um einen hellen Fleck immer entgegen den Uhrzeigersinn. Auf diese Weise kann man aus der Pixelkette selbst bestimmen, ob das Objekt heller oder dunkler als der Hintergrund ist.

Zu den bezugnehmend auf 12 Eigenschaften könnte als mögliche Alternative auch die Länge des Blobs zählen, die beispielsweise als der maximale Abstand zweier Pixel auf der Pixelkette des Kandidatenblobs definiert sein könnte. Die Berechnung dieser Eigenschaft ist jedoch deutlich aufwendiger als die Berechnung von beispielsweise der Länge der Pixelkette, die quasi als „Abfallprodukt" ohne jeglichen Zusatzaufwand erhalten wird. Deshalb wird die Länge des Blobs beispielsweise erst bei Auswertung der gefundenen Fehler durchgeführt, da diese Prozedur ziemlich aufwendig ist. Der dortige Aufwand ist dann vergleichsweise gering, denn normalerweise sind Blobs, die Fehler darstellen, klein und haben dementsprechend sehr kurze Pixelketten von beispielsweise schlimmstenfalls 100 Pixeln. Die regelmäßigen Objekte können demgegenüber Ketten bis zu mehreren 1000 Pixeln enthalten und sind dabei vielleicht auch noch zahlreich auf der Oberfläche zu sehen. Im Echtzeit-Modus wäre die Verwendung der Länge der Blobs als Eigenschaft für obige Listen-Vergleiche folglich kaum machbar, als Auswertehilfe für die gefundenen Fehler jedoch schon.

Der Bildverarbeitungsprozess nach den 4, 10, 11, 13 und 14 wird im folgenden noch einmal in anderen Worten beschrieben:

Zur Erzeugung eines Prüfergebnisses einer Oberfläche werden die aufgenommenen Bilder in einem Rechner ausgewertet.

In einem sog. Lernschritt wird von einem einwandfreiem Teil ein Bild aufgenommen, die darauf befindlichen Konturen des Prüfteils extrahiert und in einer Musterliste im Rechner hinterlegt.

Im (automatischen) Prüfbetrieb wird ein Bild des jeweils zu prüfenden Teils aufgenommen und im Auswerterechner bereitgestellt.

Aufgrund unvermeidlicher Toleranzen ist die Lage des Prüfteils und damit der zu prüfenden Oberflächen im bild jeweils unterschiedlich. Mit Hilfe des Schrittes der Lagekorrektur wird der Inhalt des aktuellen Bildes derart verschoben und verdreht, dass die Lage des aktuellen Prüfteils im Bild exakt mit der Lage des Teils im Referenzbild zur Gewinnung der Musterliste übereinstimmt.

Im aktuellen Bild des zu prüfenden Teils wird eine Objektliste erstellt. Die aktuelle Objektliste kann nach dem gleichen Verfahren erstellt werden wie die Musterliste. Ein mögliches Ausführungsbeispiel hierzu ist in Abschnitt 4.7.1 beschrieben.

Die aktuelle Objektliste wird mit der Musterliste verglichen. Dazu werden Objekte der aktuellen Objektliste, die keinem Objekt der Musterliste zugeordnet werden können, in eine weitere Liste für abweichende Objekte eingefügt. Ebenfalls werden Objekte der Musterliste, die keinem Objekt der aktuellen Objektliste zugeordnet werden können, in die Liste für abweichende Objekte eingefügt. Ein mögliches Ausführungsbeispiel hierzu ist in Abschnitt 4.7.2 beschrieben.

Zur Bewertung es Prüfteils wird die Liste der abweichenden Objekte herangezogen. Ist die Liste leer, handelt es sich um ein fehlerfreies Teil. Wenn die Liste nicht leer ist, erfolgen weitere Prüfungen. Dafür werden für jedes Objekt aus der Liste je nach Typ entsprechende Vergleichskriterien angewendete. Die Schwellwerte für die Vergleichskriterien können vom Benutzer vorgegeben werden. Damit wird letztendlich die Entscheidung getroffen, ob es sich bei dem Objekt um einen Defekt oder eine irrelevante Erscheinung im Bild handelt. Die Bewertung als relevanter Defekt löst dann ein „Schlechtteil"-Signal aus, das zur Aussortierung des Teils im Produktionsbetrieb genutzt werden kann.

Die Erzeugung von Objektlisten kann beispielsweise durch folgende Verfahrensschritte geschehen:

  • 1. Die mittlere Helligkeit des Bildes auf einer Umgebung von N × N Pixel wird berechnet.
  • 2. Die aktuelle Helligkeit des Bildes wird mit der mittleren Helligkeit verglichen und, falls die Abweichungen eine bestimmte, wählbare Schwelle übersteigen, wird das aktuelle Pixel markiert.
  • 3. Benachbarte, markierte Pixel werden in zusammenhängende Gebiet, d.h. Objekte („Blob"), zusammengefasst, und deren Koordinaten werden ermittelt. Alle markierten Pixel des Blobs liegen offenbar in der Nähe von einer Grenze zwischen hellem und dunklem Bereich.
  • 4. Für jeden Blob wird folgende Prozedur ausgeführt:

    a. Einer der markierten Pixel wird als Zentrum für einen sogenannten Thresholding-Bereich angenommen (z.B. der linke, obere, markierte Pixel im Blob).

    b. Alle Pixel des Bereichs werden nach der Untersuchung des lokalen Histogramms des Bereichs in „helle" und „dunkle" Pixel sortiert.

    c. Der Kontrast zwischen „hellen" und „dunklen" Pixeln wird berechnet. Falls der Kontrast, gemäß einer einstellbaren Schwelle, hoch genug ist, wird die Trennlinie zwischen hellen und dunklen Pixeln als die gesuchte Grenze, die innerhalb des Bereichs liegt, interpretiert. Falls der Kontrast nicht hoch genug ist, wird die Prozedur abgebrochen.

    d. Die Grenze wird bis zum Rand des Bereichs verfolgt.

    e. Der Punkt, in dem die Grenze den Rand des Bereichs trifft, wird bestimmt und als Zentrum für nächsten Thresholding-Bereich ausgewählt.

    f. Punkte 4b. – 4e. werden wiederholt (mit Ausnahme für die Suche nach dazugehöriger Grenze), bis eines der folgenden Ereignisse auftritt: Entweder es wird eine geschlossene Kontur um ein Objekt gefunden oder die Grenze erreicht den Rand des Bildes bzw. einer vorher gewählten AOI („Area Of Interest") oder die Kante wird durch einen zu niedrigen Kontrast im Thresholding-Bereich verloren.

    g. Die Merkmale (hell/dunkel, Anzahl der zugehörigen Pixel, Größe des umschreibenden Rechtecks, die Kontur in Form einer Pixelkette) des gefundenen Objekts werden berechnet und gespeichert.
  • 5. Erkennen und Löschen aller Doppelgänger, die aufgrund des beschriebenen Verfahrens entstehen können, wofür die Grenze aller Objekte verglichen werden.

4.7.2 Erzeugen der Liste abweichender Objekte
  • 1. Für jedes Objekt aus der aktuellen Liste führt man folgende Prozedur aus:
  • a. Die Merkmale des Objekts werden mit entsprechenden Merkmalen eines Objekts aus der Musterliste verglichen, und zwar in folgender Reihenfolge: Typ (Kante/Objekt), Farbe (hell/dunkel), Position des umschreibenden Rechtecks, Größe der Grenze (ungefähr). Falls alle Parameter übereinstimmen, werden die Grenzen genau verglichen, indem für eine wählbare Anzahl von Konturpunkten des aktuellen Objektes entsprechende Konturpunkte des Musterobjekts gesucht werden. Falls die meisten Paare in Rahmen angegebenen Abweichungen liegen, wird das Musterobjekt als das dem aktuellen Objekt entsprechende Objekt erkannt, falls nicht, werden der Reihe nach die nächsten Musterobjekte verglichen.

    b. Objekte der aktuellen Objektliste, die keinem Objekt der Musterliste zugeordnet werden können, werden in eine weitere Liste für abweichende Objekte eingefügt.

    c. Ebenfalls werden Objekte der Musterliste, die keinem Objekt der aktuellen Objektliste zugeordnet werden können, in die Liste für abweichende Objekte eingefügt.
  • 2. Aktuelle Objekte, für die man die entsprechenden Musterobjekte findet, werden mit diesen Musterobjekten nach folgender Prozedur verglichen:

    a. Für jeden Pixel aus der Kontur des aktuellen Objektes wird der Abstand bis zum nächsten Pixel aus der Kontur des Musterobjektes berechnet (Kurve für den „aktuellen Abstand").

    b. Damit werden zwei weitere Kurven berechnet: Der „mittlere Abstand" zwischen aktueller Objektkontur und Musterobjekt-Kontur auf einer angegebenen Umgebung um das aktuelle Pixel und erste Ableitung des aktuellen Abstands.

    c. Stellen, wo die aktuelle Abweichung die mittlere Abweichung übersteigt und dabei auch der Wert der ersten Ableitung eine wählbare Schwelle übersteigt, werden als Anfang eines Defekts markiert. Das Ende des Defekts wird nach dem Rückgang der aktuellen Abweichung zum Wert der mittleren Abweichung registriert.
  • 3. Ein Objekt für einen „Kantenfehler" wird nun gebildet aus der aktuellen Kontur zwischen dem Anfang und dem Ende einer gefundenen Abweichung und dem entsprechenden Abschnitt der Kontur des Musterobjekts, so dass eine geschlossene Konturlinie des Objekts entsteht, dessen Merkmale dann in gleicher Weise wie in 4.2.g berechnet werden können.
  • 4. Das Objekt wird in die Objektliste für Abweichungen eingefügt, wie nach dem Punkt 4.7.2.1 oder c.

Abschließend wird darauf hingewiesen, dass abhängig von den Gegebenheiten das erfindungsgemäße Schema zur Oberflächenfehlererkennung auch in Software implementiert sein kann. Die Implementation kann auf einem digitalen Speichermedium, insbesondere einer Diskette oder einer CD mit elektronisch auslesbaren Steuersignalen erfolgen, die so mit einem programmierbaren Computersystem zusammenwirken können, dass das entsprechende Verfahren ausgeführt wird. Allgemein besteht die Erfindung somit auch in einem Computerprogrammprodukt mit auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung des erfindungsgemäßen Verfahrens, wenn das Computerprogrammprodukt auf einem Rechner abläuft. In anderen Worten ausgedrückt kann die Erfindung somit als ein Computerprogramm mit einem Programmcode zur Durchführung des Verfahrens realisiert werden, wenn das Computerprogramm auf einem Computer abläuft.


Anspruch[de]
  1. Vorrichtung zur Erkennung von Fehlern einer Objektoberfläche (24) eines Objekts (26), mit

    einer Einrichtung (30, 32) zum Erzeugen einer optischen Abbildung der Objektoberfläche (24), um Bilddaten zu erhalten, die für jedes Pixel (70) eines Arrays von Pixeln einen Helligkeitswert umfassen;

    einer Einrichtung (50) zum Feststellen (52) jedes Pixels, dessen Pixelhelligkeitswert von einem mittleren Wert der Pixelhelligkeitswerte von Pixeln in einer vorbestimmten Umgebung desselben mehr als um eine vorbestimmte Helligkeitsschwelle abweicht, um Kandidatenpixel zu erhalten;

    einer Einrichtung (50) zum Gruppieren (54) der Kandidatenpixel zu zusammenhängenden Clustern (72) von Kandidatenpixeln;

    einer Einrichtung (50) zum Untersuchen (56) eines Clusters (72), um festzustellen, ob in der Nähe eines Rands des Clusters (72) von Kandidatenpixeln eine Konturlinie ziehbar ist, die mit mehr als einem vorbestimmten Mindestkontrast hellere von dunkleren Pixeln in dem und um das Cluster (72) herum trennt; und

    einer Einrichtung (50) zum, falls die Untersuchung ergibt, dass eine Konturlinie von Pixeln in der Nähe eines Rands des Clusters (72) in dem und um das Cluster (72) herum ziehbar ist, Vergleichen (58, 126, 64, 132) dieser Konturlinie mit einer vorbestimmten Sollkonturlinie, um festzustellen, ob die Konturlinie mit der vorbestimmten Sollkonturlinie um mehr als einen vorbestimmten Übereinstimmungsgrad übereinstimmt, und, falls keine Übereinstimmung mit der vorbestimmten Sollkonturlinie vorliegt, Identifizieren (60, 138, 140, 136) des Clusters (72) von Kandidatenpixeln als eine Abbildung eines möglichen Fehlers der Objektoberfläche (24).
  2. Vorrichtung gemäß Anspruch 1, bei der die Einrichtung zum Untersuchen eines Clusters ausgebildet ist, um festzustellen, ob in der Nähe eines Randes des Clusters eine Konturlinie von Pixeln ziehbar ist, die mit mehr als einem vorbestimmten Mindestkontrast hellere von dunkleren Pixeln in dem und um das Cluster herum trennt und die geschlossen ist.
  3. Vorrichtung gemäß Anspruch 1 oder 2, bei der die Einrichtung zum Untersuchen folgende Merkmale aufweist:

    eine Einrichtung zum Ernennen (74) eines der Kandidatenpixel des vorbestimmten Clusters (72) als Zentrumpixel (76);

    eine Einrichtung zum Einteilen (80) von Pixeln in einem Schwellenumgebungsbereich (82) um das Zentrumpixel (78) herum in helle Pixel und dunkle Pixel;

    eine Einrichtung zum Berechnen (92) eines Kontrastwertes zwischen den hellen Pixeln und den dunklen Pixeln im Schwellenumgebungsbereich (82);

    eine Einrichtung (94) zum, falls der Kontrastwert kleiner als der vorbestimmte Mindestkontrast ist, Abbrechen (96) der Untersuchung, wodurch die Untersuchung ergibt, dass keine Konturlinie in dem und um das Cluster herum ziehbar ist;

    eine Einrichtung (98) zum, falls der Kontrastwert größer als der vorbestimmte Mindestkontrast ist, Hängen von Grenzpixeln an einer Grenze zwischen den hellen und den dunklen Pixeln an eine augenblickliche Pixelkette;

    eine Einrichtung zum Prüfen, ob die augenblickliche Pixelkette geschlossen ist;

    eine Einrichtung (106) zum, falls die Pixelkette geschlossen ist, Identifizieren der Pixelkette als Konturlinie des Clusters, wodurch die Untersuchung ergibt, dass eine Konturlinie in dem und um das Cluster herum ziehbar ist; und

    eine Einrichtung zum, falls die Pixelkette nicht geschlossen ist, Bewirken, dass die Einrichtung zum Einteilen die Einteilung erneut für ein Grenzpixel durchführt, das zwischen einem Rand des Schwellenumgebungsbereichs und dem Zentrumpixel liegt.
  4. Vorrichtung gemäß einem der vorhergehenden Ansprüche, die folgende Merkmale aufweist:

    eine Einrichtung zum Bereitstellen mehrerer Sollkonturlinien;

    eine Einrichtung zum Bestimmen einer zugeordneten Eigenschaft für jedes Cluster, wobei die zugeordnete Eigenschaft aus einer Gruppe ausgewählt ist, die eine Länge des Clusters, eine Fläche des Clusters, eine Helligkeit des Clusters oder eine auf dem Durchmesser, der Fläche oder der Helligkeit des Clusters oder einer Form des Clusters basierende Größe umfasst; und

    eine Einrichtung zum Vergleichen (58) der Eigenschaft jedes Clusters mit jeder Solleigenschaft eines Satzes von Solleigenschaften, wobei jeweils eine Solleigenschaft und eine Sollkonturlinie einander zugeordnet sind, wobei die Einrichtung zum Vergleichen ausgebildet ist, um darauf anzusprechen, dass die Eigenschaft des Clusters mit der Solleigenschaft der vorbestimmten Sollkonturlinie übereinstimmt.
  5. Vorrichtung gemäß einem der vorhergehenden Ansprüche, die folgendes Merkmal aufweist:

    eine Einrichtung zum Schließen auf einen möglichen Fehler in der Oberfläche des Objekts, wenn unter den Paaren von Sollkonturlinien und zugeordneten Solleigenschaften eines existiert, mit welchem keine Übereinstimmung mit einem Paar von Konturlinien und zugeordneter Eigenschaft besteht.
  6. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Einrichtung zum Erzeugen der optischen Abbildung folgende Merkmale aufweist:

    eine Lichtquelle (14) zur Beleuchtung des Objekts (26) mit einem Beleuchtungsstrahl (22), der unter einem Einfallswinkel zur Oberfläche (24) auf das Objekt (26) fällt; und

    einem Lichtdetektor (30) zum Erfassen eines von der Objektoberfläche (24) auf den Beleuchtungsstrahl (22) hin reflektierten Strahls (42), der unter einem Ausfallswinkel zur Objektoberfläche (24) von dem Objekt (26) reflektiert wird, wobei der Ausfallswinkel gleich dem Einfallswinkel ist, um die Bilddaten zu erhalten.
  7. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der das Objekt (26) ein metallisches Gussteil ist.
  8. Vorrichtung gemäß Anspruch 6 oder 7, bei der die Lichtquelle (14) und der Lichtdetektor (30) derart zueinander und zu dem Objekt (26) angeordnet sind, dass reflektierter Strahl (42) und Beleuchtungsstrahl (22) in etwa senkrecht zur Objektoberfläche (24) stehen.
  9. Vorrichtung gemäß einem der Ansprüche 6–8, bei der die Einrichtung zum Erzeugen der optischen Abbildung ferner folgendes Merkmal aufweist:

    einen Strahlteiler (40), der in den Beleuchtungsstrahl (22) geschaltet ist, zum entweder Durchlassen desselben und Umlenken des reflektierten Strahls (42) zum Lichtdetektor (30) hin, oder Durchlassen des reflektierten Strahls (42) und Umlenken des Beleuchtungsstrahls (22) von der Lichtquelle (14) auf das Objekt (24).
  10. Vorrichtung gemäß Anspruch 9, die ferner folgendes Merkmal aufweist:

    eine Lichtfalle (41) zum Auffangen von Licht, das von der Lichtquelle (14) durch den Strahlteiler (40) nicht auf das Objekt (26) umgelenkt oder nicht zum Objekt (26) hin durchgelassen wird.
  11. Vorrichtung gemäß einem der Ansprüche 6–10, bei der die Lichtquelle (14) eine effektive Leuchtfläche mit einer Lücke aufweist, durch die der reflektierte Lichtstrahl (42) hindurchläuft.
  12. Vorrichtung gemäß einem der Ansprüche 6–11, bei der der Lichtdetektor (30) ein Flächenlichtdetektor (30) mit einer Mehrzahl von Pixeldetektoren ist, wobei die Vorrichtung ferner folgendes Merkmal aufweist:

    eine Optik (32) zum Abbilden der Objektoberfläche (24) auf den Flächendetektor (30).
  13. Vorrichtung gemäß Anspruch 12, die ferner folgendes Merkmal aufweist:

    eine Relativbewegungserzeugungseinrichtung (34) zum Erzeugen einer Relativbewegung zwischen Objekt (26) einerseits und Lichtdetektor (14) andererseits in einer Relativbewegungsrichtung (34), die im wesentlichen senkrecht zur Objektoberfläche (24) steht.
  14. Vorrichtung gemäß einem der Ansprüche 6–13, bei der der Lichtdetektor (30) ein Zeilenlichtdetektor (30) mit einer Zeile von Pixeldetektoren ist, und wobei die Vorrichtung ferner folgende Merkmale aufweist:

    eine Optik (32) zum Abbilden der Objektoberfläche (24) auf den Zeilenlichtdetektor (30); und

    eine Relativbewegungserzeugungseinrichtung (34) zum Erzeugen einer Relativbewegung zwischen Objekt (26) einerseits und Zeilenlichtdetektor (30) andererseits in einer Relativbewegungsrichtung (34), die im wesentlichen senkrecht zur Zeile von Pixeldetektoren steht.
  15. Verfahren zur Erkennung von Fehlern einer Objektoberfläche (24) eines Objekts (26), mit

    Erzeugen (10) einer optischen Abbildung der Objektoberfläche (24), um Bilddaten zu erhalten, die für jedes Pixel (70) eines Arrays von Pixeln einen Helligkeitswert umfassen;

    Feststellen (52) jedes Pixels, dessen Pixelhelligkeitswert von einem mittleren Wert der Pixelhelligkeitswerte von Pixeln in einer vorbestimmten Umgebung desselben mehr als um eine vorbestimmte Helligkeitsschwelle abweicht, um Kandidatenpixel zu erhalten;

    Gruppieren (54) der Kandidatenpixel zu zusammenhängenden Clustern (72) von Kandidatenpixeln;

    Untersuchen (56) eines Clusters (72), um festzustellen, ob in der Nähe eines Rands des Clusters (72) von Kandidatenpixeln eine Konturlinie ziehbar ist, die mit mehr als einem vorbestimmten Mindestkontrast hellere von dunkleren Pixeln in dem und um das Cluster (72) herum trennt;

    Auswerten der Untersuchung mit folgenden Schritten:

    falls die Untersuchung ergibt, dass eine Konturlinie von Pixeln in der Nähe eines Rands des Clusters (72) in dem und um das Cluster (72) herum ziehbar ist, Vergleichen (58, 126, 64, 132) dieser Konturlinie mit einer vorbestimmten Sollkonturlinie, um festzustellen, ob die Konturlinie mit der vorbestimmten Sollkonturlinie um mehr als einen vorbestimmten Übereinstimmungsgrad übereinstimmt; und

    falls keine Übereinstimmung mit der vorbestimmten Sollkonturlinie vorliegt, Identifizieren (60, 138, 140, 136) des Clusters (72) von Kandidatenpixeln als eine Abbildung eines möglichen Fehlers der Objektoberfläche (24).
  16. Verfahren nach Anspruch 15, wobei die Verfahrensschritte als Computer-Programm mit einem Programmcode auf einem Computer ablaufen.
Es folgen 8 Blatt Zeichnungen






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com