DE10346690B4 - Verfahren und Vorrichtung zum Detektieren eines Linearobjekts - Google Patents

Verfahren und Vorrichtung zum Detektieren eines Linearobjekts Download PDF

Info

Publication number
DE10346690B4
DE10346690B4 DE10346690A DE10346690A DE10346690B4 DE 10346690 B4 DE10346690 B4 DE 10346690B4 DE 10346690 A DE10346690 A DE 10346690A DE 10346690 A DE10346690 A DE 10346690A DE 10346690 B4 DE10346690 B4 DE 10346690B4
Authority
DE
Germany
Prior art keywords
line segment
image
edge
linear object
pixels
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.)
Expired - Fee Related
Application number
DE10346690A
Other languages
English (en)
Other versions
DE10346690A1 (de
Inventor
Shiro Fujieda
Yuji Suzuki
Toshihiko Matsumoto
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Publication of DE10346690A1 publication Critical patent/DE10346690A1/de
Application granted granted Critical
Publication of DE10346690B4 publication Critical patent/DE10346690B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/0006Industrial image inspection using a design-rule based approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Abstract

Bildverarbeitungsverfahren zum Detektieren eines Linearobjektes auf einem Graustufenbild, wobei Randpixel auf dem Graustufenbild extrahiert werden, und, während die extrahierten Randpixel sequenziell berücksichtigt werden, ein Randpixel, welches eine Dichtegradientenrichtung entgegengesetzt zu derjenigen eines gerade berücksichtigten Randpixels hat, innerhalb eines vorbestimmten Bereiches in Richtung orthogonal zur Randrichtung von dem gerade berücksichtigen Randpixel aus gesucht wird, und, wenn ein die Verifikationsbedingungen erfüllendes Randpixel extrahiert ist, ein Liniensegment parallel zur Randrichtung des gerade berücksichtigten Randpixels und durch eine vorbestimmte Position zwischen dem extrahierten Randpixel und dem gerade berücksichtigten Randpixel verlaufend gesetzt wird, und wobei entweder die Position oder die Größe des Linearobjektes auf dem Graustufenbild, basierend auf dem Ergebnis des Liniensegmentsetzens, detektiert wird, wenn keine zu berücksichtigenden Randpixel mehr vorhanden sind.

Description

  • Die vorliegende Erfindung betrifft ein Bildverarbeitungsverfahren und eine Bildverarbeitungsvorrichtung zum Detektieren eines linearen Objektes wie zum Beispiel einer linearen Schramme, eines Haar- und Fadenabfalls (nachfolgend gemeinsam als "das Linearobjekt" bezeichnet) auf dem Gebiet der Graustufen-Bilddatenverarbeitung durch den Computer.
  • Es gibt ein konventionelles Bildverarbeitungsverfahren zum Detektieren eines Lineardefektes, bei dem Bilder sequenziell aufgenommen werden, indem eine Zeilenkamera in Richtung orthogonal zur Anordnung der Bildaufnahmeelemente bewegt wird, und Bildzeilen, welche jedes Mal erzielt werden, verarbeitet werden. Gemäß diesem Verfahren wird eine Position mit einer unterschiedlichen Dichte detektiert, indem Bildzeilen in Binärwerte zerlegt werden, oder die Dichtesumme wird für jede Zeile verwendet, so dass die Dichtesumme für eine Zeile mit der Dichtesumme der vorhergehenden und der nachfolgenden Zeilen verglichen wird. Auf diese Weise wird für alle Zeilen bestimmt, ob eine Zeile einen Lineardefekt aufweist oder nicht.
  • Andererseits hat der Anmelder der vorliegenden Erfindung kürzlich ein Bildverarbeitungsverfahren entwickelt, wie in der japanischen ungeprüften Patentveröffentlichungsschrift Nr. 2002-230562 offenbart, bei dem die Winkeldaten (Randcodes), welche die Randrichtung der Randpixel, welche in einem Graustufenbild enthalten sind, angeben, erfasst werden, und bei dem eine lineare Konturlinie unter Verwendung der Randcodes (Ränder) von der Bildverarbeitung mit hoher Genauigkeit detektiert wird. Bei diesem Verfahren wird ein Histogramm erzeugt, welches den Grad eines Randpixels anzeigt, welcher zu dem Wert jedes Randcodes korrespondiert, und einem Randpixel für einen Winkel, welcher zu den einzelnen Spitzen des Histogramms korrespondiert, wird ein Etikett zugewiesen, welches eindeutig einer bestimmten Spitze zugehörig ist. Bei dem mit dem Etikettierungsvorgang erzeugten Etikettbild wird eine Menge sukzessiver Randbilder mit dem gleichen Etikett als zu einem Liniensegment korrespondierend verifiziert, und jeder Menge ein eindeutiges Etikett zugewiesen. Auf diese Weise werden unterschiedliche Merkmalsbeträge berechnet und die Liniensegmente integriert. Anschließend wird das Verfahren zur Spezifizierung eines Liniensegmentes, welches die Extraktionsbedingungen erfüllt, durchgeführt.
  • Insbesondere offenbart der Teil der Beschreibung der zuvor erwähnten Veröffentlichung in Zusammenhang mit 13 ein Verfahren der Extraktion eines Satzes paralleler Liniensegmente als eine Technik, um ein Liniensegment zu spezifizieren, welches die Extraktionsbedingungen erfüllt. Ferner gibt der gleiche Teil der gleichen Beschreibung an, dass ein linearer Kratzer oder ein ähnliches Objekt mit einer sehr kleinen Breite, welches auf dem Gehäuse gebildet ist, extrahiert werden kann, indem ein sehr kleiner Abstand zwischen den zu extrahierenden Liniensegmenten gesetzt wird.
  • Bei dem oben zuerst beschriebenen konventionellen Verfahren, bei dem ein Defekt detektiert wird, indem von einer Zeilenkamera erfasste Bilder in Binärwerte zerlegt werden, oder indem die Dichtesummen für jede Linie verglichen werden, ist die Vorbedingung, dass die Dichte des Hintergrundabschnittes, welcher nicht der Defekt ist, in der Dichte gleichförmig ist, und sich die Dichte des Defektabschnittes von jener des Hintergrundabschnittes beträchtlich unterscheidet. Daher ist ein Defekt schwierig zu detektieren, wenn ein Bild einen schwachen Kontrast oder einen Hintergrund mit ungleicher Dichte aufgrund von Schmutz oder eines Musters aufweist.
  • Im Gegensatz dazu ist gemäß dem Verfahren, welches in der erwähnten Patentveröffentlichung beschrieben ist, die Detektion sogar in dem Fall möglich, wo der Kontrast des Bildes geschwächt ist oder die Dichtevariation des Hintergrundes verstärkt ist. Jedoch muss bei diesem konventionellen Verfahren grundsätzlich eine Anhäufung aufeinanderfolgender Bilder mit dem gleichen Randcode detektiert werden. Daher können nur geradlinige Konturlinien detektiert werden, und es ist schwierig, gekrümmte Linearobjekte wie zum Beispiel Haare und Fadenabfall zu detektieren. Es ist außerdem schwierig, ein feines, ungleichmäßiges Linearobjekt wie zum Beispiel einen Riss zu detektieren, weil sich der Randcode an dem ungleichmäßigen Abschnitt häufig ändert.
  • Sogar in dem Fall, bei dem der Rand eines Linearobjektes nur teilweise in einem Bild mit niedrigem Kontrast extrahiert werden kann, können gemäß dem Verfahren, welches in der zitierten Patentveröffentlichung beschrieben ist, die nicht extrahierten Abschnitte mittels des Liniensegment-Integrationsverfahrens ergänzt werden. Jedoch ist es bei diesem Integrationsverfahren erforderlich, für jedes extrahierte Liniensegment zu bestätigen, ob es integriert werden kann oder nicht, wobei die Merkmalsbeträge jedes Liniensegmentes verwendet werden. Dies erhöht den Aufwand des Steuervorgangs, und das Verfahren ist bei einer solchen Anwendung wie zum Beispiel einer Hochgeschwindigkeits-Defektinspektion schwierig einzusetzen, welches durch sequenzielles Aufnehmen von Bildern von Produkten durchgeführt wird, welche auf dem Förderband befördert werden.
  • Aus US 6 141 437 A sind ein auf Differenzbildbildung beruhendes Verfahren sowie eine auf Differenzbildbildung beruhende zugehörige Vorrichtung zur Feststellung von Lungenknötchen bekannt.
  • Die Erfindung ist im Hinblick auf die oben beschriebenen Probleme entwickelt worden, und sie hat zur Aufgabe, ein Bildverarbeitungsverfahren und eine Bildverarbeitungsvorrichtung zu schaffen, bei welchem/r gekrümmte Linearobjekte und ungleichmäßige Linearobjekte genauso wie geradlinige Objekte mit hoher Genauigkeit einfach detektiert werden können.
  • Es ist ein anderes Ziel der Erfindung, ein Bildverarbeitungsverfahren und eine Bildverarbeitungsvorrichtung zu schaffen, bei welchem/r ein Linearobjekt mit hoher Geschwindigkeit und mit hoher Genauigkeit sogar in einem Bild mit einer niedrigen Randextraktionsgenauigkeit des Linearobjektes detektiert werden kann.
  • Es ist noch ein weiteres Ziel der Erfindung, ein Bildverarbeitungsverfahren und eine Bildverarbeitungsvorrichtung zu schaffen, bei welchen optimale Parameter zum Detektieren eines Linearobjektes einfach gesetzt werden können, indem bestimmt wird, ob die gesetzten Werte geeignet sind oder nicht.
  • Es ist noch ein anderes Ziel der Erfindung, ein Bildverarbeitungsverfahren und eine Bildverarbeitungsvorrichtung zu schaffen, bei welchen Parameter zum Detektieren eines Linearobjektes automatisch gesetzt werden können, wobei eine vorbestimmte Zahl von Modellbildern eines Linearobjektes verwendet werden.
  • Gemäß dieser Erfindung werden die Randpixel, welche in einem Graustufenbild enthalten sind, extrahiert, und das Bild wird verarbeitet, indem die Randrichtung und die Richtung des Dichtegradienten der Randpixel verwendet werden.
  • Die Randpixel sind definiert als solche Pixel, welche die Konturlinie eines Objektes in einem Graustufenbild bilden. Die Randpixel werden vorzugsweise derart extrahiert, dass der Grad des Dichtegradienten jedes Pixels des Graustufenbildes (nachfolgend als "die Randintensität" bezeichnet) bestimmt wird, und dann jene Pixel mit einer Randintensität, welche größer als ein vorbestimmter Wert ist, als Randpixel bestimmt werden.
  • Die Richtung des Dichtegradienten ist definiert als die Richtung, in welcher sich die Dichte bei einem gegebenen Rand pixel als Grenze ändert, und kann durch den Differenziationsprozess bestimmt werden, indem das betreffende Randpixel und eine vorbestimmte Anzahl von benachbarten Pixeldaten verwendet werden. Die Randrichtung ist, wie in der oben zitierten Patentveröffentlichung, als die Richtung definiert, welche durch Rotation der Richtung des Dichtegradienten um +90 Grad oder –90 Grad erzielt wird.
  • Es sei angenommen, dass ein zu detektierendes Linearobjekt mit einer Breite von mindestens mehreren Pixeln auf dem Graustufenbild erscheint. Zwei Konturlinien, welche im Wesentlichen parallel zur Länge des Linearobjektes sind, können durch den Randextraktionsprozess für das Graustufenbild extrahiert werden. Jede dieser Konturlinien ist aus einer Mehrzahl von Randpixeln konfiguriert.
  • Es sei außerdem angenommen, dass eine gerade Linie orthogonal zu einer der beiden Konturlinien gesetzt wird. Die Richtung des Dichtegradienten eines Randpixels, das dem Kreuzungspunkt zwischen einer Konturlinie und der geraden Linie entspricht, ist entgegengesetzt zur Richtung des Dichtegradienten des anderen Randpixels (die beiden Randpixel, die den Punkten entsprechen, welche die gerade Linie kreuzen, werden nachfolgend als "die gegenüberliegenden Randpixel" bezeichnet). Dieser Bezug zwischen zwei gegenüberliegenden Randpixeln gilt auch für den Bezug zur Randrichtung, so dass die Randrichtung des Randpixels an einer beliebigen Position auf einer Konturlinie im Wesentlichen entgegengesetzt zur Randrichtung des Randpixels ist, welcher dem ersten Randpixel auf der anderen Konturlinie gegenüber liegt.
  • Basierend auf diesem Prinzip können gemäß der Erfindung nicht nur ein geradliniges Objekt, sondern auch ein gekrümmtes Linearobjekt oder ein Linearobjekt mit einer unregelmäßig ungleichmäßigen Kontur auf einem Graustufenbild detektiert werden. In einem Bildverarbeitungsverfahren gemäß der Erfindung werden die Randpixel aus einem zu verarbeitenden Graustufen bild extrahiert, und während sequenziell die extrahierten Randpixel berücksichtigt werden, wird ein Randpixel, welches als eine entgegengesetzte Richtung des Dichtegradienten zu derjenigen des gerade berücksichtigten Randpixels aufweisend verifiziert ist, innerhalb eines vorbestimmten Bereiches in der Richtung gesucht, welche orthogonal zu der Randrichtung des gerade berücksichtigten Randpixels ist. Gleichzeitig wird nach erfolgreicher Extraktion eines Randpixels, welches die Verifikationsbedingungen erfüllt, ein Liniensegment parallel zur Randrichtung des gerade berücksichtigten Randpixels gesetzt, welches durch einen vorbestimmten Punkt auf einer Linie verläuft, welche das extrahierten Randpixel mit dem gerade berücksichtigten Randpixel verbindet. Wenn keine weiteren zu berücksichtigenden Pixel mehr vorhanden sind, wird ein Bild, welches das Ergebnis des Liniensegmentsetzens angibt, als ein Bild angezeigt, welches das Ergebnis des Detektierens eines Linearobjektes angibt.
  • Der Suchbereich im Suchprozess kann zum Beispiel durch den Abstand von einem Pixel, mit dem die Suche gestartet wird, zu einem Pixel, bei dem die Suche beendet wird, in der Richtung angegeben werden, welche orthogonal zur Randrichtung des gerade betrachteten Randpixels ist (nachfolgend als "die Referenzrichtung" bezeichnet). Das Pixel, mit dem die Suche gestartet wird, ist nicht auf das gerade berücksichtigte Randpixel beschränkt, sondern kann alternativ ein Pixel sein, welches von dem gerade berücksichtigten Pixel einen vorbestimmten Abstand in der Referenzrichtung entfernt ist.
  • Der Abstand, welcher den Suchbereich repräsentiert, kann auch durch die Anzahl der Pixel angegeben werden. In dem Fall, wo die Suche nicht von dem gerade berücksichtigten Randpixel aus gestartet wird, kann der Suchbereich durch den Abstand von dem gerade berücksichtigten Randpixel zu dem Pixel, mit dem die Suche gestartet wird, und den Abstand von dem gerade be rücksichtigten Randpixel zu dem Pixel, bei dem die Suche beendet wird, angegeben werden.
  • Ferner kann ein Bereich innerhalb eines vorbestimmten Winkels zur Referenzrichtung als ein Suchbereich definiert werden. In diesem Fall wird der Suchbereich durch den Winkel zur Referenzrichtung zusätzlich zu den oben beschriebenen Abständen angegeben.
  • Die Länge jedes oben beschriebenen Abstandes wird vorzugsweise gemäß der Breite des zu detektierenden Linearobjektes gesetzt. In diesem Fall kann, solange das gerade berücksichtigte Randpixel die Konturlinie des Linearobjektes bildet, ein Randpixel, welcher verifiziert ist, die Richtung des Dichtegradienten entgegengesetzt zu jener des gerade berücksichtigten Randpixels zu haben, innerhalb des Suchbereiches extrahiert werden.
  • Mit Bezug auf ein Linearobjekt, welches eine beträchtlich variierende Breite aufweist, und welches nicht notwendigerweise zwei parallele Konturlinien aufweist, oder mit Bezug auf ein Linearobjekt mit einem großen Krümmungsradius, ist die Richtung des Dichtegradienten des gegenüberliegenden Randpixels nicht immer entgegengesetzt zu jener des gerade berücksichtigten Randpixels, sondern die Richtung des Dichtegradienten eines Randpixels, welches benachbart zu dem gegenüberliegenden Randpixel angeordnet ist, ist entgegengesetzt zu jener des gerade berücksichtigten Randpixels. Indem der Winkel der Referenzrichtung gemäß dem Zustand des zu detektierenden Linearobjektes eingestellt wird, kann daher ein Randpixel extrahiert werden, welches die Verifikationsbedingungen erfüllt.
  • Ferner kann der Suchprozess, welcher mit dem gerade berücksichtigten Randpixel gestartet werden kann, alternativ auch mit einem Pixel gestartet werden, welches in einem vorbestimmten Abstand von dem gerade berücksichtigten Randpixel angeordnet ist.
  • Die Verifikation, ob die Richtung des Dichtegradienten entgegengesetzt ist oder nicht, kann durchgeführt werden, indem bestimmt wird, ob der Unterschied der Richtung des Dichtegradienten zwischen dem gerade berücksichtigten Randpixel und dem zu suchenden Pixel innerhalb eines vorbestimmten zulässigen Bereiches von 180 Grad ist. Der zulässige Bereich bei diesem Bestimmprozess kann gemäß dem Zustand eines zu detektierenden Linearobjektes beliebig gesetzt werden, wie bei der oben beschriebenen Einstellung des Winkels zur Referenzrichtung.
  • In dem Fall, wo erwünscht ist, ein zum Beispiel nur im Wesentlichen geradliniges Objekt zu detektieren, wird der zulässige Bereich vorzugsweise auf einen kleinen Wert gesetzt. Wenn ein Linearobjekt mit einem Krümmungsradius, ein Linearobjekt mit unregelmäßig ungleichmäßigen Konturlinien oder ein Linearobjekt mit variierender Breite zwischen den beiden Konturlinien detektiert wird, ist andererseits der zulässige Bereich vorzugsweise groß.
  • Im Hinblick auf die Tatsache, dass die Randrichtung basierend auf der Richtung des Dichtegradienten bestimmt wird, kann der Suchprozess so durchgeführt werden, dass nach einem Pixel gesucht wird, welches verifiziert werden kann, eine entgegengesetzte Randrichtung zu dem gerade berücksichtigten Pixel zu haben.
  • Bei dem Liniensegmentsetzvorgang wird ein Liniensegment parallel zur Randrichtung des gerade berücksichtigten Randpixels so eingerichtet, dass es durch einen vorbestimmten Punkt auf einer Linie verläuft, welche das Randpixel, welches durch den Suchprozess extrahiert worden ist, mit dem gerade berücksichtigten Pixel verbindet. Zum Beispiel kann dieses Liniensegment sich in die gleiche Richtung wie die Randrichtung des gerade berücksichtigten Randpixels erstrecken.
  • Bei dem Liniensegmentsetzvorgang kann auch ein Liniensegment so gesetzt werden, dass es sich entlang der Richtung, welche entgegengesetzt zu der Randrichtung des gerade berücksichtigten Randpixels ist, erstreckt. Als eine Alternative kann ein Liniensegment so gesetzt werden, dass es sich sowohl in die Randrichtung, als auch in die entgegengesetzte Richtung erstreckt.
  • Bei dem Suchvorgang des Bildverarbeitungsverfahrens gemäß dieser Erfindung wird mindestens ein Satz gegenüberliegender Randpixel, deren Richtung der Dichtegradienten um 180 Grad voneinander verschieden ist, aus den Randpixeln extrahiert, welche die zwei Konturlinien im Wesentlichen parallel zur Länge des Linearobjektes bilden. Ferner wird ein Liniensegment parallel zur Randrichtung jedes Randpixelsatzes durch den Liniensegmentsetzvorgang gesetzt. Die so gesetzten Liniensegmente werden einander überlagert oder miteinander verbunden, wodurch es möglich ist, ein Bild zu erzeugen, welches genau die Position, Größe und Neigung des Linearobjektes widerspiegelt. Indem dieses Bild angezeigt wird, kann daher das Detektionsergebnis des Linearobjektes in einer einfach zu verstehenden Art angezeigt werden.
  • Auch ist gemäß diesem Verfahren sogar in dem Fall, wo die Dichteverteilung des Hintergrundes sich verändert, die Wahrscheinlichkeit geringer, dass die Detektionsgenauigkeit des Linearobjektes durch das Rauschen im Hintergrundabschnitt reduziert wird, und dies im Hinblick auf die Tatsache, dass Randpixelsätze, welche die Konturlinien des Linearobjektes ausmachen, mit hoher Genauigkeit durch den oben beschriebenen Suchvorgang spezifiziert werden können. Außerdem können sogar in dem Fall, wo der Kontrast des Bildes so niedrig ist, dass ein Linearobjekt auf dem Bild in Segmenten angezeigt wird, die Liniensegmente miteinander verbunden werden, um die segmentierten Abschnitte des Linearobjektes zu ergänzen, indem die Länge der Liniensegmente, welche in dem Liniensegmentsetzvorgang gesetzt ist, eingestellt wird. Auf diese Weise kann das Linearobjekt ohne Rücksicht auf den Kontrast sicher detektiert werden.
  • Bei dem Liniensegmentsetzvorgang kann ein Liniensegment an einer willkürlichen Position zwischen dem gesuchten Pixel und dem gerade berücksichtigten Pixel gesetzt werden (wobei die Position ein Punkt zwischen dem gesuchten Pixel und dem gerade berücksichtigten Pixel oder die Position jedes Pixels sein kann). Außerdem kann das Liniensegment an einer Mehrzahl von Positionen zwischen den Pixeln gesetzt werden.
  • Bei dem Bildverarbeitungsverfahren gemäß einer bevorzugten Ausführungsform der Erfindung wird eine numerische Eingabe entgegengenommen, welche die Suchbereich-Setzbedingungen im Suchprozess angibt. Gemäß einer noch stärker bevorzugten Ausführungsform wird eine numerische Eingabe entgegengenommen, welche die Liniensegment-Setzbedingungen angibt.
  • Die Suchbereich-Setzbedingungen können den Abstand von dem Pixel, mit dem die Suche begonnen wird, bis zu dem Pixel, mit dem die Suche beendet wird, und den Winkel zur Referenzrichtung aufweisen. Entweder der Abstand oder der Winkel können fixiert werden, während der andere verändert werden kann. Besonders in dem Fall, wo ein zu verarbeitendes Linearobjekt keine extreme Variation in der Linienbreite aufweist, wird der Winkel zur Referenzrichtung auf 0 Grad gesetzt, und der Suchbereich wird nur durch den Abstand angegeben.
  • Der oben erwähnte Abstand kann durch den Abstand von einem Randpixel zu dem Pixel, mit dem die Suche begonnen wird (nachfolgend als "der untere Grenzwert" bezeichnet) und den Abstand von dem Randpixel zu dem Pixel, mit dem die Suche beendet wird (nachfolgend als "der obere Grenzwert" bezeichnet), angegeben werden. Dennoch werden nicht notwendigerweise sowohl der obere Grenzwert als auch der untere Grenzwert gesetzt, sondern nur einer von ihnen. In dem Fall, wo die Suche von einem Randpixel oder einem benachbarten Pixel gestartet wird, wird zum Beispiel nur der obere Grenzwert gesetzt.
  • Aus dem gleichen Grund kann der Suchbereich auch in Bezug auf den Winkel genau gesetzt werden.
  • Die Liniensegment-Setzbedingungen können die Breite des Liniensegmentes und die Anzahl der zu setzenden Liniensegmente aufweisen, wie auch die Länge des zu setzenden Liniensegmentes. Eine vergrößerte Länge oder Breite des Liniensegments kann den Grad, mit dem die Liniensegmente einander überlagert werden, erhöhen. Indem diese Werte eingestellt werden, kann daher die optimale Überlagerung der Liniensegmente, welche die Merkmale des zu detektierenden Linearobjektes widerspiegeln, erzielt werden.
  • In dem Fall, wo numerische Werte, welche die Suchbereich-Setzbedingungen oder die Liniensegment-Setzbedingungen angeben, wie im zuvor erwähnten Fall eingegeben werden können, kann der Detektionsprozess durchgeführt werden, während die gesetzten Werte des Suchbereiches und des Liniensegmentes verschiedenartig geändert werden, wobei ein Modellbild verwendet wird, bevor der gesamte Detektionsprozess begonnen wird. Es ist daher möglich, anhand des Bildes auf der Anzeige zu bestimmen, ob die gesetzten Werte geeignet sind oder nicht. Somit können geeignete Parameter für den Detektionsprozess einfach und genau gesetzt werden.
  • Ferner wird bei dem Bildverarbeitungsverfahren gemäß einer anderen Ausführungsform der Erfindung ein numerischer Wert, der der Randintensität eines gerade berücksichtigten Randpixels entspricht, zu dem Dichtewert der Pixel hinzugefügt, welche ein in dem Liniensegmentprozess zu setzendes Liniensegment konstituieren. Und somit wird ein Bild, welches das Ergebnis des Liniensegmentsetzens angibt, erzeugt.
  • Bei diesem Bildverarbeitungsverfahren gemäß der Erfindung werden die Liniensegmente, welche individuell zwischen einer Mehrzahl von benachbarten Randpixeln der Kontur eines Linearobjektes gesetzt sind, einander überlagert. Gemäß dieser Ausführungsform der Erfindung wird die Gewichtung aufgrund der Randintensität jedes überlagerten Randpixels zum überlagerten Abschnitt der Liniensegmente addiert, und daher kann ein Bild, welches das Merkmal des Linearobjektes repräsentiert, deutlicher angezeigt werden. Insbesondere gilt, dass, je höher die Randintensität der Randpixel ist, umso höher der Dichtewert der Pixel ist, welche das zu setzende Liniensegment konstituieren. Je höher der Dichtegradient des Linearobjektes ist, umso höher ist daher die Dichte, mit der das Liniensegment gesetzt werden kann.
  • Bezüglich Rauschwerten mit geringem Dichtegradienten aufgrund der Dichteunregelmäßigkeiten werden andererseits eine Mehrzahl von Liniensegmenten, wenn sie gesetzt und überlagert werden, niedriger gewichtet. Bei einem Bild, welches das Detektionsergebnis eines Linearobjektes angibt, können daher die Liniensegmente, welche dem Linearobjekt entsprechen, mit Unterschied zum Rauschen klar angegeben werden.
  • Auf diese Weise kann das Detektionsergebnis eines Linearobjektes durch Differenzierung der Gewichtung des Linearobjektes gemäß der Randintensität der berücksichtigten Randpixel deutlicher angegeben werden.
  • Gemäß einer stärker bevorzugten Ausführungsform der Erfindung wird ein Bild, welches das Ergebnis des Liniensegmentsetzens angibt, mittels eines vorbestimmten Schwellenwertes in Binärwerte zerlegt, und das resultierende Binärbild als das Ergebnis der Linearobjektdetektion angezeigt. wenn so vorgegangen wird, können nur die Abschnitte, wo die Liniensegmente zu einem hohen Grad überlagert sind, und die Abschnitte, welche durch die Randintensität stärker gewichtet sind, angezeigt werden. Daher kann die Rauschkomponente von dem anzuzeigenden Objekt eliminiert werden, wodurch es möglich ist, das Detektionsergebnis des Linearobjektes deutlicher anzugeben.
  • Ferner spiegelt sich bei dem Bildverarbeitungsverfahren gemäß noch einer weiteren bevorzugten Ausführungsform die Randintensität des zu berücksichtigenden Randpixels in der Länge oder Breite des bei dem Liniensegmentsetzprozess zu setzenden Liniensegmentes wider. Je höher die Randintensität des zu berücksichtigenden Randpixels, umso mehr kann zum Beispiel die Breite oder die Länge des Liniensegmentes vergrößert sein.
  • Gemäß dieser Ausführungsform kann das Liniensegment des zu detektierenden Linearobjektes deutlicher angezeigt werden als das Liniensegment aufgrund anderer Rauschquellen, und daher kann das Ergebnis der Linearobjektdetektion klarer angegeben werden.
  • Ferner wird bei dem Bildverarbeitungsverfahren gemäß noch einer weiteren bevorzugten Ausführungsform nach der Extraktion eines Randpixels, welches die Verifikationsbedingungen durch den Suchprozess erfüllt, das extrahierte Randpixel als ein Nachberücksichtigungs-Randpixel nach dem Liniensegmentsetzprozess bestimmt.
  • Das Nachberücksichtigungs-Randpixel ist als ein Randpixel definiert, welches schon als ein Objekt des Suchprozesses oder des Liniensegmentsetzprozesses verarbeitet worden ist. Bei dem Prozess, bei dem das extrahierte Pixel als ein Nachberücksichtigungs-Randpixel gesetzt wird, wird die Randintensität des besonderen Pixels auf Null gesetzt, oder anderenfalls werden die Daten, welche den Dichtegradienten angeben, modifiziert. Als eine Alternative wird ein Kennzeichen, welches angibt, dass das spezifische Randpixel schon verarbeitet worden ist, an dem Randpixel angebracht, während dessen Dichtegradient beibehalten wird.
  • Gemäß dieser Ausführungsform braucht jeder Satz gegenüberliegender Randpixel, deren Richtung eines Dichtegradienten um 180 Grad voneinander unterschiedlich ist, wobei die einander gegenüberliegenden Randpixel in zwei Konturlinien angeordnet sind, nur mit einem Suchprozess und einem Liniensegmentsetzprozess beaufschlagt werden, und daher ist die Verarbeitungsgeschwindigkeit erhöht. In diesem Fall erstreckt sich bei dem Liniensegmentsetzprozess das Liniensegment sowohl in die Randrichtung des zu berücksichtigenden Randpixels als auch in die entgegengesetzte Richtung. Dann kann das Liniensegment auf ähnliche Weise wie in dem Fall gesetzt werden, wo alle extrahierten Randpixel sequenziell verarbeitet werden.
  • Ferner werden in einem anderen Bildverarbeitungsverfahren gemäß der Erfindung die Randpixel eines Graustufenbildes extrahiert und sequenziell berücksichtigt, während der Suchprozess und der Liniensegmentsetzprozess ähnlich wie in dem oben erwähnten Fall durchgeführt werden. Wenn keine Randpixel mehr zu berücksichtigen sind, wird die Position oder Größe des Linearobjektes auf dem Graustufenbild detektiert, basierend auf dem Ergebnis des Liniensegmentsetzens.
  • Die Position des Schwerpunktes der integrierten Einheit der Liniensegmente kann als die Position des Linearobjektes bestimmt werden. Andererseits kann die Größe des Linearobjektes als die Fläche, Länge oder die periphere Länge der integrierten Einheit der Liniensegmente bestimmt werden.
  • Ferner weist das Bildverarbeitungsverfahren gemäß dieser Erfindung auf: den Schritt der Eingabe einer vorbestimmten Zahl von Graustufenbildern, welche ein Bild eines Linearobjektes aufweisen, den Schritt der Entgegennahme der Betätigung, mit der ein Linearobjekt auf jedem Graustufenbild bestimmt wird, den Schritt der Durchführung des Suchprozesses und des Liniensegmentsetzprozesses für jedes Graustufenbild, während zur gleichen Zeit die Werte der Parameter für die jeweiligen Prozesse geändert werden und der Prozess des Detektierens des Linearobjektes, basierend auf dem Ergebnis des Liniensegmentsetzens, durchgeführt wird, und den Schritt der Auswahl eines optimalen Satzes von Parameterwerten, basierend auf dem Ergebnis des Detektierens des Linearobjektes und dem Ergebnis der Bestimmung des Linearobjektes für jedes Graustufenbild.
  • Die Parameter für den Suchprozess sind numerische Werte, welche die Suchbereich-Setzbedingungen angeben, und die Para meter für den Liniensegmentsetzprozess sind numerische Werte, welche die Liniensegment-Setzbedingungen angeben. Diese Parameter sind ähnlich zu den oben beschriebenen Parametern. Der Abstand zu dem Pixel, mit dem die Suche gestartet wird, zu dem Pixel, mit dem die Suche beendet wird, und der Winkel, welcher zur Referenzrichtung gebildet wird, können als die Parameter für den Liniensegmentsetzprozess verwendet werden. Andererseits können die Länge, Breite und die Zahl der gesetzten Liniensegmente als die Parameter für den Liniensegmentsetzprozess verwendet werden. Die Parameter sind nicht auf einen einzelnen numerischen Wert begrenzt, sondern können eine Mehrzahl von numerischen Werten, wie zum Beispiel die Obergrenze und die Untergrenze der oben beschriebenen Werte aufweisen.
  • Bei dem Verfahren zur Bestimmung eines Linearobjektes auf dem Graustufenbild können die Koordinaten der Pixel, welche das Linearobjekt auf dem Graustufenbild ausmachen, gesetzt werden. Dennoch werden nicht alle konstituierenden Pixel notwendigerweise bestimmt, aber die Pixel auf den Konturlinien des Linearobjektes oder eines vorbestimmten Bildbereiches in dem Linearobjekt können bestimmt werden. Basierend auf dem Bestimmungsergebnis können die konstituierenden Pixel des Linearobjektes bestimmt werden. Der Bestimmungsbetrieb kann durchgeführt werden, indem die Maus oder eine ähnliche Zeigervorrichtung auf dem Bildschirm, welcher das Graustufenbild anzeigt, bewegt wird, oder indem eine Eingabevorrichtung wie zum Beispiel das Bediengerät oder die Tastatur verwendet werden.
  • Bei dem oben beschriebenen Verfahren werden der Suchprozess und der Liniensegmentsetzprozess auf jedem Graustufenbild durchgeführt, von dem ein Linearobjekt bestimmt worden ist, während der Suchbereich oder die Liniensegment-Setzbedingungen geändert werden, um ein Linearobjekt zu detektieren. Bei diesem Prozess des Detektierens des Linearobjektes kann, wie oben beschrieben, ein repräsentativer Punkt, wie zum Beispiel nur der Schwerpunkt, bestimmt werden. Es ist jedoch stärker er wünscht, als konstituierende Pixel eines Linearobjektes eine Mehrzahl von Pixeln zu detektieren, welche einen Dichtewert aufweisen, der einen vorbestimmten Pegel nicht unterschreitet, oder eine Mehrzahl von Pixeln zu detektieren, welche zu den Positionen korrespondieren, wo eine vorbestimmte Anzahl von Liniensegmenten überlagert wird.
  • Bei einem Beispielprozess des Selektierens eines optimalen Satzes von Parameterwerten werden die Pixel, welche als jene detektiert worden sind, die das Linearobjekt konstituieren, überprüft, um festzustellen, ob sie in dem bestimmten Linearobjekt enthalten sind oder nicht, und das Ergebnis dieser Bestimmung wird digitalisiert als "1" oder "0". Ferner wird der Prozess der Bestimmung der Gesamtheit der numerischen Werte, welche das Bestimmungsergebnis als einen Beurteilungswert angeben, für jeden Satz von Parameterwerten durchgeführt, und der Satz der Parameterwerte, welcher mit dem höchsten Beurteilungswert assoziiert ist, wird als ein Optimalsatz gewählt. Dieser Bestimmungsprozess kann nicht nur für die konstituierenden Pixel des Linearobjektes durchgeführt werden, sondern auch für die Pixel, welche den Hintergrund bilden.
  • Bei dem Prozess der Linearobjekt-Detektion wird angenommen, dass die Merkmalswerte, wie zum Beispiel der Schwerpunkt und die Länge des Linearobjektes, bestimmt werden. Der Merkmalswert, welcher für jeden Satz von Parameterwerten bestimmt wird, wird mit dem Merkmalswert des bestimmten Linearobjektes verglichen, und der Satz der Parameterwerte, welcher zu dem Merkmalswert des Linearobjektes am nächsten ist, wird als ein Optimalsatz gewählt.
  • Bei diesem Verfahren wird eine vorbestimmte Zahl von Graustufenbildern, welche ein zu detektierendes Modell-Linearobjekt aufweisen, eingegeben, und indem die Bestimmung des Linearobjektes in den Bildern entgegengenommen wird, können die am besten geeigneten Parameter zum Detektieren des Linearobjektes automatisch bestimmt werden. Indem das Ergebnis des Liniensegmentsetzens in Binärform angezeigt wird, kann der Schwellenwert für den Binärwert-Zerlegungsprozess auf ähnliche Art und Weise auch automatisch gesetzt werden.
  • Gemäß einem anderen Aspekt der Erfindung ist eine Bildverarbeitungsvorrichtung vorgesehen, welche aufweist: Bildeingabemittel zum Eingeben eines zu verarbeitenden Graustufenbildes, Anzeigemittel zum Anzeigen des Ergebnisses der Detektion eines Linearobjektes von dem eingegebenen Graustufenbild, Randpixel-Detektionsmittel zum Detektieren der Randpixel auf dem Graustufenbild, Suchmittel zum Berücksichtigen eines vorbestimmten Randpixels und Suchen nach einem Randpixel, welches verifiziert werden kann, eine entgegengesetzte Richtung des Dichtegradienten zu jenem des vorbestimmten zu berücksichtigenden Randpixels innerhalb eines vorbestimmten Bereiches zu haben, basierend auf der Richtung, welche orthogonal zur Randrichtung des besonderen zu berücksichtigenden Randpixels ist, Liniensegmentsetzmittel zum Setzen eines Liniensegmentes, nach der Extraktion eines Randpixels, welcher die Verifikationsbedingungen des Suchmittels erfüllt, parallel zur Randrichtung des zu berücksichtigenden Randpixels an einer vorbestimmten Position zwischen dem extrahierten Randpixel und dem zu berücksichtigenden Randpixel, und Steuermittel zum sequenziellen Berücksichtigen der Randpixel, welche von dem Randpixel-Detektionsmittel detektiert werden, zum Betreiben des Suchmittels und des Liniensegmentsetzmittels, und, wenn keine zu berücksichtigenden Randpixel mehr vorhanden sind, Anzeigen eines Bildes auf dem Anzeigemittel, wobei das Bild das Ergebnis des Liniensegmentsetzens durch das Liniensegmentsetzmittel angibt.
  • Das Bildeingabemittel ist mit dem Bilderzeugungsmittel, wie zum Beispiel einer Kamera oder einem Scanner, verbunden und bringt das von diesen Mitteln erzeugte Graustufenbild hervor. Das Bildeingabemittel ist aus einem Schnittstellenschaltkreis und einem A/D-Wandler konfiguriert. Dennoch ist das Bildeingabemittel nicht auf diese Konfiguration begrenzt, son dern kann alternativ einen Schaltkreis zum Empfangen eines Bildes, welches durch Kommunikation übermittelt wird, und ein Lesegerät zum Lesen eines Bildes, welches in einem vorbestimmten Speicher gespeichert ist, aufweisen.
  • Das Anzeigemittel kann aus einer Bildanzeigeeinheit wie zum Beispiel CRT oder LCD und einem korrespondierenden Schnittstellenschaltkreis konfiguriert sein. Das Anzeigemittel kann ferner die Funktion haben, die Bildeingabe von dem Bildeingabemittel und das Ergebnis der Detektion von dem Randbild-Detektionsmittel anzuzeigen, genauso wie es die Funktion haben kann, das Ergebnis der Detektion eines Linearobjektes anzuzeigen.
  • Das Randpixel-Detektionsmittel, das Suchmittel, das Liniensegmentsetzmittel und das Steuermittel sind von einem Computer implementiert, welcher darin die Software zum Durchführen des jeweiligen Prozesses aufweist. Jedes Mittel kann auch als ein bestimmter Schaltkreis wie zum Beispiel ein ASIC (IC für spezielle Anwendung) konfiguriert sein, so dass der gemeinsame Betrieb der bestimmten Schaltkreise von dem Computer gesteuert werden kann. Ebenso kann ein Teil der Mittel (wie zum Beispiel das Randpixel-Detektionsmittel) als ein bestimmter Schaltkreis konfiguriert sein, während die verbleibenden Mittel vom Computer und der Software implementiert sind. Gleichzeitig kann die Funktion der Betriebssteuerung der bestimmten Schaltkreise im Computer integriert sein.
  • Zusätzlich weist diese Bildverarbeitungsvorrichtung vorzugsweise einen Speicher auf zum individuellen Speichern der Bilder, welche von dem Bildeingabemittel eingegeben werden, der Randbilder, welche von dem Detektionsprozess des Randdetektionsmittels erzeugt werden, und der Bilder, welche das Ergebnis des Liniensegmentsetzens von dem Liniensegmentsetzmittel angeben.
  • Mit der oben beschriebenen Bildverarbeitungsvorrichtung wird das Graustufenbild, welches von dem Bildeingabemittel eingegeben wird, dem Randdetektionsprozess unterzogen, und die detektierten Randpixel, während sie sequenziell berücksichtigt werden, werden dem Prozess unterzogen, basierend auf dem oben beschriebenen Bildverarbeitungsverfahren, wodurch ein Verarbeitungsergebnisbild produziert wird, welches aus einer Menge von Liniensegmenten konfiguriert ist, korrespondierend zur Position, Länge und der Form eines Linearobjektes. Von dem Bild, welches auf dem Anzeigemittel angezeigt wird, kann daher die Form und Position eines Linearobjektes bestätigt werden.
  • Eine Bildverarbeitungsvorrichtung gemäß einer bevorzugten Ausführungsform weist Eingabemittel zum Eingeben der Parameter auf, welche für den Prozess des Linearobjekt-Detektierens verwendet werden. Dieses Eingabemittel kann konfiguriert werden als eine Eingabevorrichtung, wie zum Beispiel die Tastatur, Maus oder das Bediengerät oder eine Schnittstelle, zum Hervorholen der gesetzten Werte der Parameter. Ferner kann dieses Eingabemittel ergänzt werden, falls erforderlich, mit einem Computer und der Software zur Verarbeitung auf dem Anzeigemittel, etc., und einer Benutzerschnittstelle zum Eingeben der gesetzten Werte.
  • Dieses Eingabemittel ist gesetzt, um numerische Werte, welche die Suchbereich-Setzbedingungen angeben, als Parameter einzugeben für den Suchprozess, welcher von dem Suchmittel durchgeführt wird. Gemäß einer stärker bevorzugten Ausführungsform ist das Eingabemittel auch gesetzt, um numerische Werte, welche die Liniensegment-Setzbedingungen anzeigen, als Parameter für den Liniensegmentsetzprozess einzugeben, welcher durch das Liniensegmentsetzmittel durchgeführt wird. Spezifische Beispiele zu diesen Parametern sind ähnlich zu jenen, welche bei dem Bildverarbeitungsverfahren gemäß der Erfindung vorgestellt worden sind.
  • Das oben beschriebene Eingabemittel macht es möglich, den Prozess des Linearobjekt-Detektierens durchzuführen, während die werte der Parameter frei geändert werden. Vor dem voll ständigen Detektionsprozess können daher die optimalen Werte der Parameter bestimmt werden, während das Verarbeitungsergebnisbild, welches auf dem Anzeigemittel angezeigt wird, geprüft wird. Jedes Mal, wenn die Merkmale des zu detektierenden Linearobjektes einer Änderung unterzogen werden, werden auch die Werte der Parameter geändert, oder andere vielseitige Maßnahmen werden ergriffen, um zu einer deutlich verbesserten Zufriedenheit beizutragen.
  • Gemäß einer anderen Ausführungsform der Bildverarbeitungsvorrichtung extrahiert das Steuermittel, wenn es keine zu berücksichtigenden Randpixel gibt, konstituierende Pixel von mindestens einer vorbestimmten Zahl der Liniensegmente, welche von dem Liniensegmentsetzmittel gesetzt und einander überlagert werden, und erzeugt und zeigt auf dem Anzeigemittel ein Binärbild der extrahierten Pixel in Unterscheidung zu den anderen Pixeln an.
  • Bei dieser Ausführungsform sind die Abschnitte, wo mindestens eine vorbestimmte Zahl (es sei "N" angenommen) der Liniensegmente überlagert sind, in weiß (schwarz) gesetzt, während die Abschnitte, welche überhaupt keine überlagerten Liniensegmente aufweisen, oder die Abschnitte, wo der Grad der Überlagerung der Liniensegmente kleiner als N ist, in schwarz (weiß) gesetzt sind. Auf diese Weise kann ein Binärbild erzeugt und angezeigt werden. Als ein Ergebnis wird das Bild einer Vielzahl von überlagerten Liniensegmenten weiterhin angezeigt, während das Bild der Liniensegmente von Rauschbestandteilen oder Ähnlichem mit einem kleineren Grad von Überlagerung gelöscht wird. Wie oben mit Bezug auf ein Linearobjekt beschrieben, werden die Liniensegmente, welche zwischen benachbarten Randpixeln gesetzt sind, eher verwendet, um überlagert zu werden. Indem der Wert N gemäß dem Grad an Überlagerung eingestellt wird, kann daher das Detektionsergebnis des Linearobjektes klar angegeben werden.
  • Bei der Bildverarbeitungsvorrichtung gemäß einer anderen Ausführungsform erzeugt das Liniensegmentsetzmittel ein Bild, welches das Ergebnis des Liniensegmentsetzens angibt, indem ein numerischer Wert, korrespondierend zur Randintensität des zu berücksichtigenden Randpixels, zum Dichtewert der Pixel, welche das zu setzende Liniensegment konstituieren, hinzugefügt wird. Bei der Bildverarbeitungsvorrichtung gemäß einer stärker bevorzugten Ausführungsform wird das Bild, welches das Ergebnis des Liniensegmentsetzens anzeigt, mittels eines vorbestimmten Schwellenwertes von dem Steuermittel in Binärwerte zerlegt, wenn es keine zu berücksichtigenden Randpixel gibt, und durch das Steuermittel wird das resultierende Binärbild auf dem Anzeigemittel angezeigt.
  • Sogar in dem Fall, wo ein Hintergrundbild mit großer Dichteunregelmäßigkeit verarbeitet wird, hat bei dieser Konfiguration das durch den Dichtegradienten bedingte Rauschen des Hintergrundabschnittes einen kleineren Effekt, wodurch es möglich ist, das Bild des Liniensegmentes, korrespondierend zum Linearobjekt, klar anzugeben.
  • Bei der Bildverarbeitungsvorrichtung gemäß noch einer anderen Ausführungsform weist das Steuermittel ein Nachberücksichtigungssetzmittel auf, welches, nach der Extraktion eines Randpixels, welcher die Verifikationsbedingungen erfüllt, den extrahierten Randpixel als einen Nachberücksichtigungs-Randpixel nach der vollständigen Durchführung des Liniensegmentsetzprozesses durch das Liniensegmentsetzmittel setzt. Das Nachberücksichtigungssetzmittel ändert die Daten des extrahierten Randpixels (indem die Randintensität auf Null reduziert wird, oder auf andere Weise) in eine Form, welche nicht mit den Randpixeln korrespondiert. Als eine Alternative können Mittel geschaffen werden, in welchen die Pixeldaten beibehalten werden, während die besonderen Daten mit einer Markierung versehen werden, welche anzeigt, dass der Prozess durchgeführt worden ist.
  • Bei dem oben beschriebenen Nachberücksichtigungssetzmittel werden Sätze von einander gegenüberliegenden Randpixeln, welche zwischen den beiden Konturlinien sind, und deren Richtung des Dichtegradienten um 180 Grad voneinander unterschiedlich ist, dem Suchprozess und dem Liniensegmentsetzprozess nur einmal unterzogen, wodurch es möglich ist, die Geschwindigkeit des Prozesses der Linearobjekt-Detektion zu erhöhen.
  • Ferner kann die oben beschriebene Bildverarbeitungsvorrichtung Detektionsmittel zum Detektieren der Position oder Größe eines Linearobjektes auf dem Graustufenbild aufweisen, basierend auf dem Ergebnis des Liniensegmentsetzens durch das Liniensegmentsetzmittel. Dieses Detektionsmittel macht es möglich, spezifische Merkmale des Linearobjektes in einem numerischen Wert anzugeben, und trägt daher zu einer verbesserten Zweckmäßigkeit bei.
  • Das Ergebnis der Detektion durch das Detektionsmittel kann auf dem Anzeigemittel zusammen mit dem Ergebnis des Liniensegmentsetzens angezeigt werden.
  • Die Bildverarbeitungsvorrichtung gemäß einer stärker bevorzugten Ausführungsform weist Bestimmungsmittel zum Bestimmen des Vorhandenseins oder Nichtvorhandenseins eines Linearobjektes auf, basierend auf dem oben beschriebenen Detektionsergebnis, und weist Ausgabemittel auf für das Ausgeben des Bestimmungsergebnisses im Hinblick auf das Vorhandensein oder Nichtvorhandensein eines Linearobjektes. Das Bestimmungsmittel wird durch einen Computer implementiert, wobei darin ein Algorithmus für den Bestimmungsprozess oder ein Komparator für das Vergleichen des Detektionsergebnisses mit einem vorbestimmten Schwellenwert vorgesehen ist. Das Ausgabemittel ist aus einem Schnittstellenschaltkreis oder Ähnlichem konfiguriert, korrespondierend zu einer vorbestimmten externen Ausrüstung.
  • In dem Fall, wo die Ausgabe des Ausgabemittels mit einer Lampe, einem Lautsprecher oder einer ähnlichen Vorrichtung gekoppelt ist, wird eine solche Vorrichtung aktiviert, nachdem das Bestimmungsergebnis "Vorhandensein des Linearobjektes" erfasst ist. Auf diese Weise ist eine Bildverarbeitungsvorrichtung vorgesehen, welche für die Inspektion eines Lineardefektes geeignet ist. In dem Fall, wo die Ausgabe, welche das Bestimmungsergebnis über das Vorhandensein oder Nichtvorhandensein eines Linearobjektes repräsentiert, auf eine Vorrichtung angewendet wird, welche die Steuerfunktion aufweist, wie zum Beispiel eine programmierbare Steuerung oder ein Personal Computer, macht es andererseits eine solche Vorrichtung, welche mit einer Bildverarbeitungsvorrichtung gekoppelt ist, möglich, ein System für das Detektieren und Entfernen eines Lineardefektes zu konstruieren.
  • Ferner kann diese Bildverarbeitungsvorrichtung Parametersetzmittel zum Setzen eines optimalen Wertes jedes Parameters in der Form eines numerischen Wertes aufweisen, welche die Suchbereich-Setzbedingungen für den Suchprozess durch das Suchmittel und die Liniensegment-Setzbedingungen für den Liniensegmentsetzprozess von dem Liniensegmentsetzmittel angeben. Dieses Parametersetzmittel weist auf: Bestimmungsbetriebsmittel zum Bestimmen eines Linearobjektes auf einem Graustufenbild nach dem Empfang eines Graustufenbildes, welches das Linearobjekt aufweist, von dem Bildeingabemittel, Detektionssteuermittel zum Betreiben des Suchmittels und des Liniensegmentsetzmittels, während die Werte der Parameter für jeden Prozess des Suchmittels bzw. des Liniensegmentsetzmittels für eine Mehrzahl von Graustufenbildern, welche dem Bestimmungsbetrieb unterzogen werden, geändert werden, und somit der Prozess der Linearobjekt-Detektion basierend auf dem Ergebnis des Liniensegmentsetzens durchgeführt wird, und Auswahlmittel zum Auswählen eines optimalen Satzes von Parameterwerten, basierend auf dem Detektionsergebnis und dem Ergebnis des Linearobjektbestimmens für jedes Graustufenbild. Die unterschiedlichen Parameter für jede Setzbedingung sind nicht auf einen einzelnen numerischen Wert begrenzt, sondern können eine Mehrzahl von numerischen Werten sein, einschließlich der Obergrenze und Untergrenze jedes Wertes.
  • Die oben beschriebene Konfiguration kann einen Schnittstellenschaltkreis für die Entgegennahme des Bestimmungsbetriebes einer Eingabevorrichtung wie zum Beispiel einer Tastatur, einer Maus oder einem Bediengerät aufweisen, und außerdem können Mittel zum Setzen einer Benutzerschnittstelle an das Anzeigemittel angebracht werden, falls erforderlich. Der Hardware-Abschnitt des Bestimmungs-Betriebsmittels kann der gleiche sein wie der Hardware-Abschnitt des Eingabemittels.
  • Das Detektionssteuermittel und das Auswahlmittel, welche erforderlich sind, um eine Vielzahl von Graustufenbildern mit hoher Geschwindigkeit zu verarbeiten, sind vorzugsweise durch die Computer-Software oder andere Software implementiert, welche für die Verarbeitung durch das gleiche Detektionssteuermittel und das Auswahlmittel verwendet werden.
  • Das Bildverarbeitungsverfahren für das automatische Bestimmen eines optimalen Satzes von Parameterwerten wird bei der oben beschriebenen Konfiguration implementiert, indem eine Mehrzahl von Modellbildern von Linearobjekten eingegeben werden und die Linearobjekte auf diesen Bildern bestimmt werden. Auf diese Weise können optimale Parameter für das Detektieren eines Linearobjektes automatisch gesetzt werden. Sogar solche Anwender, welche mit dem Parametersetzprozess nicht vertraut sind, können somit einfach den erforderlichen Setzprozess für eine Linearobjekt-Detektion durchführen, wodurch ferner der Nutzen der Vorrichtung verbessert wird.
  • Die Bildverarbeitungsvorrichtung mit der oben beschriebenen Konfiguration kann eine Inspektionsvorrichtung zum Detektieren eines Lineardefektes bilden, welcher in einem vorbestimmten Objekt aufgetreten ist. Bei einer solchen Inspektionsvorrichtung, bei der die Position und die Form eines gekrümmten Lineardefektes oder eines Lineardefektes mit unregelmäßigen, ungleichmäßigen Konturlinien wie auch die Posi tion und die Form eines geradlinigen Defektes mit hoher Genauigkeit detektiert werden kann, verbessert die Detektionsgenauigkeit beträchtlich.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • 1 zeigt ein Blockdiagramm, welches eine Konfiguration einer Bildverarbeitungsvorrichtung gemäß einer Ausführungsform der Erfindung zeigt.
  • 2 zeigt ein Schaubild zur Erklärung des Prinzips des Defektdetektionsverfahrens.
  • 3 zeigt ein Schaubild zur Erklärung eines Beispiels eines zu bearbeitenden Bildes.
  • 4 zeigt ein Schaubild zur Erklärung eines Anzeigebeispiels eines Bildes des Verarbeitungsergebnisses eines in 3 dargestellten zu verarbeitenden Bildes, während der Parameterwertsatz geändert wird.
  • 5 zeigt ein Flussdiagramm, welches die Schritte des Defektinspektionsverfahrens zeigt.
  • 6 zeigt ein Flussdiagramm, welches die Schritte des Verfahrens zum automatischen Setzen von Parametern zeigt.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • 1 zeigt eine Konfiguration einer Bildverarbeitungsvorrichtung gemäß einer Ausführungsform der Erfindung.
  • Die Bildverarbeitungsvorrichtung 1 ist in der Umgebung einer Inspektionslinie in einer Fabrik angeordnet, um die Inspektion mittels sequenziellen Aufnehmens eines Bildes von Produkten durchzuführen, welche auf der Prüfinspektionslinie befördert werden, um zu sehen, ob das Bild irgendwelche Bilddaten im Hinblick auf einen linearen Defekt oder andere Dinge aufweist. Die Vorrichtung 1 ist mit peripheren Vorrichtungen verbunden, welche eine Kamera 2, einen Monitor 3 und eine Externeinrichtung 4 aufweisen. Die Externeinrichtung 4 weist eine Mehrzahl von Vorrichtungen auf, wie zum Beispiel eine Kon sole zum Eingeben von Daten und eine Alarmlampe, um das Auftreten eines defekten Produktes anzukündigen. Zusätzlich kann eine programmierbare Steuerung und ein Personal Computer als die externe Ausrüstung 4 angeschlossen werden.
  • Die Bildverarbeitungsvorrichtung 1 weist auf: eine CPU 5 als eine Hauptkomponente für den Steuerbetrieb, eine Randintensitäts-Extraktionseinheit 6, eine Randcode-Extraktionseinheit 7, einen Bildspeicher 8, einen Flashspeicher 9, einen Arbeitsspeicher 10, einen Graphikspeicher 11, eine Schnittstellenschaltung 12 für die Kamera 2, eine Schnittstellenschaltung 13 für den Monitor 3 und eine Schnittstellenschaltung 14 für die Externeinrichtung 4 (nachfolgend als "die Kameraschnittstelle 12", "die Monitorschnittstelle 13" und "die Externeinrichtungsschnittstelle 14" bezeichnet), wobei "die Schnittstelle" in 1 als "I/F" bezeichnet ist.
  • Im Flashspeicher 9 ist ein Programm gespeichert, welches die Verarbeitungsschritte der CPU 5 und Voreinstellungen unterschiedlicher Parameter aufweist. Außerdem wird der Benutzerdatensatz, wie zum Beispiel der Parameterwertsatz, in den Flashspeicher geschrieben, wenn es die Situation erfordert.
  • Der Arbeitsspeicher 10 wird zum Lesen und Schreiben der Arbeitsdaten verwendet, welche während einer Reihe von mittels der CPU 5 durchgeführten Steuerbetrieben erzeugt werden. Im Graphikspeicher 11 sind die Daten gespeichert, welche zum Anzeigen eines Fensters, welches einen Messbereich 22 angibt, eines Bildschirms zum Setzen von Parametern und eines Cursors auf dem Bild benötigt werden.
  • Der Bildspeicher 8 hat eine Kapazität, welche ausreicht, um eine Mehrzahl von Einzelbildern einzeln zu speichern. Der Bildspeicher 8 speichert die Bilddatenausgabe von der Randintensitäts-Extraktionseinheit 6 und der Randcode-Extraktionseinheit 7 einerseits und führt andererseits die Bilddaten zur CPU 5 durch einen CPU-Bus 15 zu. Ferner ist die CPU 5 geeignet, um die Bilddaten, welche mit dem später beschriebenen Verarbeitungsergebnisbild assoziiert sind, in einen vorbestimmten Speicherbereich des Bildspeichers 8 zu schreiben.
  • Die Kamera 2 ist von einer solchen Art, dass sie ein Standbildsignal in analoger Form ausgibt. Die Kameraschnittstelle 12 weist einen Eingangsanschluss zur Kamera 2 und einen A/D-Wandler auf zum Konvertieren eines Analogbildsignals, welches vom Eingangsanschluss eingebracht wird, in ein Digitalsignal. Nach der Konversion von analogen zu digitalen Signalen werden die Graustufenbilddaten zur Randintensitäts-Extraktionseinheit 6 und parallel dazu zur Randcode-Extraktionseinheit 7 zugeführt und gleichzeitig an die Monitorschnittstelle 13 ausgegeben.
  • Die Monitorschnittstelle 13 weist zusätzlich zu einem Ausgangsanschluss zum Monitor 3 einen D/A-Wandler, eine Bildsynthetisierschaltung und einen Schaltkreis auf. Die Bildausgabe vom Bildspeicher 8 oder dem Graphikspeicher 11 oder dem Graustufenbild von der Kameraschnittstelle 12 wird in eine oder eine Mehrzahl von Bildern synthetisiert und zum Monitor 3 ausgegeben. Der Ausgabebild-Schaltbetrieb der Monitorschnittstelle 13 wird von der CPU 5 gesteuert, welche den Schaltbetrieb vom Bediengerät u.ä. empfangen hat.
  • Die Randintensitäts-Extraktionseinheit 6 und die Randcode-Extraktionseinheit 7 sind Chipteile, welche ein Schieberegister, einen Logikschaltkreis und eine Tabelle aufweisen. Die Randintensitäts-Extraktionseinheit 6 dient zum Bestimmen der Größe des Dichtegradienten (Randintensität) jedes Pixels des Graustufenbildes, welches von der Kameraschnittstelle 12 eingegeben wird, und die Randcode-Extraktionseinheit 7 dient zum Bestimmen der Winkeldaten, welche die Richtung der Ränder in jedem Pixel (nachfolgend als "der Randcode" bezeichnet) des gleichen Graustufenbildes angeben.
  • Die Randintensität korrespondiert zur Größe des resultierenden Vektors der Dichtegradientenvektoren (welche die Richtung und die Größe der Dichtegradienten anzeigen) in X- und Y- Richtungen der zu berücksichtigenden Randpixel. Gemäß dieser Ausführungsform werden die Graustufenbilddaten mit einem weißen Pegel durch einen Hochdichtewert formuliert, und die Richtung des Dichtegradienten wird als die Richtung abnehmender Dichte definiert. Der Randcode korrespondiert zur Richtung des Dichtegradienten, um +90 Grad oder –90 Grad gedreht, und ist als ein Winkel bezüglich der Positivrichtung entlang der X-Achse beschrieben.
  • Im Hinblick auf ein detailliertes Verfahren zur Berechnung der Randintensität und des Randcodes wird auf die oben zitierte Quellenangabe verwiesen. Die Randintensitäts-Extraktionseinheit 6 und die Randcode-Extraktionseinheit 7 gemäß dieser Ausführungsform weisen eine Tabelle auf, um die Randintensität und den Randcode der Pixel im Zentrum eines Maskenbereiches vorbestimmter Größe zu bestimmen, basierend auf der Dichteverteilung in der Maske, gemäß der Berechnungsgleichung, wie sie in der Quellenangabe beschrieben ist. Bei dem Extraktionsprozess werden die Dichtedaten der Pixel, welche von der Kameraschnittstelle 12 ausgegeben werden, sequenziell eingegeben, während auf die Tabelle zugegriffen wird, wodurch die Randintensität und der Randcode jedes Pixels mit hoher Geschwindigkeit extrahiert wird.
  • Die Randintensität-Extraktionseinheit 6 erzeugt ein Bild mit den Randintensitäten, welche gemäß dem Array der Pixel angeordnet sind (nachfolgend als "das Randintensitätsbild" bezeichnet) und gibt es an den Bildspeicher 8 aus. Auf gleiche Weise erzeugt die Randcode-Extraktionseinheit 7 ein Bild mit den extrahierten Randcodes, welche gemäß dem Pixelarray angeordnet sind (nachfolgend als "das Randcodebild bezeichnet") und gibt es an den Bildspeicher 8 aus.
  • Die CPU 5 führt den später beschriebenen Bildverarbeitungsvorgang aus, wobei das Randintensitätsbild und das Randcodebild verwendet werden, welche im Bildspeicher 8 gespeichert sind, und erzeugt somit ein Verarbeitungsergebnisbild, welches das Ergebnis des Defektdetektion zeigt. Ferner bestimmt die CPU 5 das Vorhandensein oder das Nichtvorhandensein eines Defektes, indem ein vorbestimmter Messprozess für das Verarbeitungsergebnisbild durchgeführt wird, und gibt das Bestimmungsergebnis durch die Externeinrichtungsschnittstelle 14 aus.
  • Die Bildverarbeitungsvorrichtung 1 gemäß dieser Ausführungsform ist vorgesehen, um einen auf dem Bild auftretenden Lineardefekt zu detektieren, welcher so breit wie mehrere Pixel ist. Daher ist es notwendig, dass die Position, bei der die Kamera 2 installiert wird, und die Vergrößerung der Kamera in einer solchen Weise eingestellt werden, dass ein Bild eines zu detektierenden Defektes mit einer Breite aufgenommen wird, welche so breit wie mehrere Pixel ist.
  • 2 zeigt das Prinzip des Defektdetektionsprozesses in der Bildverarbeitungsvorrichtung 1.
  • 2(1) zeigt ein Graustufenbild eines zu verarbeitenden Objektes. Dieses Bild weist ein Bild 20 eines Linearobjektes auf (nachfolgend einfach als "das Linearobjekt 20" bezeichnet), welches äquivalent zu einem Defekt ist. 2(2) zeigt in vergrößerter Form das Ergebnis des Randextraktionsprozesses, welcher auf ein Bild im Bereich 21, welcher von der gestrichelten Linie in dem Graustufenbild definiert ist, angewendet worden ist. Die 2(1) und 2(2) zeigen einen Fall, bei dem die Dichte des Linearobjektes 20 niedriger ist als jene des Hintergrundes.
  • Das Randbild der 2(2) weist zwei Ränder E1 und E2 auf, welche zu den Längskonturlinien des Linearobjektes 20 korrespondieren. Dieses Linearobjekt 20, wie in 2(1) gezeigt, ist in der Form gekrümmt, aber die zwei Randlinien E1 und E2 werden als sich im Wesentlichen parallel in die Längsrichtung erstreckend betrachtet, wobei sie im Wesentlichen die gleiche Linienbreite aufweisen. Es wird daher, wie in 2(2) ersichtlich, ein willkürlicher Punkt P1 auf dem Rand E1 und ein Punkt P2 auf dem Rand E2 berücksichtigt, wobei der Punkt P2 zum Punkt P1 entlang der Richtung B orthogonal zur Randrichtung korrespondiert. In diesem Fall, wo der korrespondierende Punkt P2 auf dem Rand E2 extrahiert wird, werden die Ränder dieser Punkte P1 und P2 als im Wesentlichen parallel zueinander betrachtet.
  • Im Fall von 2 ist die Dichte des Linearobjektes 20 niedriger als jene des Hintergrundes, und daher ist die Richtung des Dichtegradienten am Punkt P1 entlang der Richtung B zum Punkt P2 gerichtet. Andererseits ist die Richtung des Dichtegradienten am Punkt P2 entgegengesetzt zur Richtung B. Solange wie die zwei Ränder E1 und E2 parallel zueinander sind, sind somit die Richtungen des Dichtegradienten an den beiden Punkten P1 und P2, welche in entgegengesetztem Bezug zwischen den Rändern E1 und E2 sind, zueinander entgegengesetzt.
  • Wie oben beschrieben ist, zeigt der Randcode die Richtung orthogonal zur Richtung des Dichtegradienten an. Die Beziehung der Richtung des Dichtegradienten zwischen den Punkten P1 und P2 kann daher mit gleicher Wirkung ersetzt werden durch die äquivalente Beziehung der Randcodes. In 2(2) bestimmt das Zeichen A1 einen Vektor, welcher am Punkt P1 die Richtung anzeigt, welche von dem Randcode definiert wird (nachfolgend als "der Randcode-Vektor" bezeichnet), und das Zeichen A2 bestimmt einen Randcode-Vektor, welcher am Punkt P2 von dem Randcode definiert wird. Diese Vektoren A1 und A2 sind entgegengesetzt zueinander gerichtet.
  • In dem Fall, wo das gezeigte Linearobjekt eine höhere Dichte als der Hintergrund aufweist, ist die Richtung B der Suche von Punkt P1 zu Punkt P2 (nachfolgend als "die Suchrichtung B" bezeichnet) entgegengesetzt zur Richtung des Dichtegradienten am Punkt P1. Außerdem sind die Randcode-Vektoren A1 und A2 an den Punkten P1 und P2 auch in entgegengesetzten Richtungen gesetzt.
  • Der Defektdetektionsprozess gemäß dieser Ausführungsform wird mit Bezug auf 2(2) erklärt.
  • Gemäß dieser Ausführungsform werden die Randpixel auf dem Bild sequenziell berücksichtigt, so dass ein Randpixel P2 mit einem entgegengesetzten Randcode zu einem zu berücksichtigenden Randpixel P1 vom Randpixel P1 aus in einem Bereich korrespondierend zur Breite W des zu detektierenden Linearobjektes gesucht wird, entlang der Richtung, welche orthogonal zum Randcode (der Richtung des Dichtegradienten oder der entgegengesetzten Richtung) des zu berücksichtigenden Randpixels P1 ist. In dem Fall, wo ein Randpixel, welches die Suchbedingungen erfüllt, erfolgreich extrahiert wird, wird ein Liniensegment mit einer vorbestimmten Länge L in die Richtung C parallel zum Randcode-Vektor A1 gesetzt, welcher zu dem zu berücksichtigenden Randpixel P1 zugehörig ist, mit einem Punkt Q, welcher ein Ursprung/Startpunkt zwischen dem extrahierten Randpixel P2 und dem zu berücksichtigenden Randpixel P1 ist.
  • Bei diesem Liniensegmentsetzprozess wird die Randintensität des zu berücksichtigenden Randpixels zum Pixelwert (anfänglich Null) jedes konstituierenden Pixels des zu setzenden Liniensegments addiert, wobei dies im Speicherbereich für das Verarbeitungsergebnisbild im Bildspeicher 8 geschieht.
  • Wenn der Liniensegmentsetzprozess für jedes die Ränder E1 und E2 des Linearobjektes 20 bildenden Randpixel durchgeführt wird, werden die Liniensegmente, welche zu einer Mehrzahl von benachbarten Randpixeln zugehörig sind, überlagert und miteinander verbunden. Die Neigung jedes Liniensegmentes ist parallel zur Randrichtung eines korrespondierenden Randpixels. Solange die Länge eines Liniensegmentes hinreichend ist, spiegelt daher das Bild, welches durch Überlagerung und Verbinden wie oben beschrieben gebildet ist (nachfolgend als "das Montagebild" bezeichnet) die Neigung und die Krümmung des Linearobjektes wider.
  • Jedes konstituierende Pixel des Montagebildes wird auf einen numerischen Wert gesetzt, welcher äquivalent zur gesamten Randintensität der Randpixel ist, korrespondierend zu einer Mehrzahl von überlagerten Liniensegmenten. Daher kann das Linearobjekt einfach von den anderen Abschnitten unterschieden werden. Zu diesem Zeitpunkt, wenn dieser Prozess für alle Randpixel auf dem Eingabebild beendet ist, wird gemäß dieser Ausführungsform das Verarbeitungsergebnisbild mittels eines vorbestimmten Schwellenwertes in Binärwerte zerlegt, und dieses Binärbild wird für die Messung verwendet, um die Anwesenheit oder Nichtanwesenheit eines Defektes zu bestimmen, und dieses Binärbild wird auf dem Monitor 3 angezeigt.
  • Bei dem Suchprozess für einen korrespondierenden Punkt wird nicht nur ein Pixel mit einem Randcode, welcher sich um 180 Grad von dem Randcode des zu berücksichtigenden Pixels unterscheidet, sondern auch ein Pixel mit einem Randcode innerhalb eines vorbestimmten Fehlerbereichs von der Richtung; welche sich von dem zu berücksichtigenden Pixel unterscheidet, wünschenswerterweise extrahiert. Besonders in dem Fall, wo ein zu detektierendes Linearobjekt eine variierende Breite oder einen unregelmäßig ungleichmäßigen Rand aufweist, wird der oben erwähnte Fehlerbereich wünschenswerterweise auf einen etwas größeren Wert gesetzt.
  • Bei diesem Suchprozess können die Pixel, welche die Ränder eines Linearobjektes konstituieren, mit hoher Genauigkeit von all denjenigen Pixeln bestimmt werden, welche in einem zu verarbeitenden Graustufenbild enthalten sind.
  • Als nächstes wird mit Bezug auf die 3 und 4 der Prozess zum Setzen von Parametern, um nach dem korrespondierenden Punkt zu suchen und um ein Liniensegment zu setzen, für die Inspektion eines Lineardefektes, basierend auf dem oben beschriebenen Prinzip, erklärt.
  • 3 zeigt einen Anzeigeschirm eines zu verarbeitenden Graustufenbildes. In 3 bezeichnet das Bezugszeichen 22 einen vom Anwender gesetzten Messbereich. Zu Illustrationszwecken ist das Bild von 3 als Binärbild dargestellt. Tatsächlich jedoch ist es ein Bild mit einer Dichteverteilung (dieses Graustufenbild wird nachfolgend als "Verarbeitungsbild" bezeichnet). Die 4A, 4B und 4C zeigen Anzeigeschirme für das Verarbeitungsergebnisbild im Messbereich 22. Für die verwendeten Parameter wird eine Bestätigungsschaltfläche 24 zum Festlegen der Parameter usw. am Rand des Anzeigeschirms angezeigt. Die Verarbeitungsergebnisbilder von 4 sind zu Illustrationszwecken als Umkehrbild dargestellt.
  • In 4 ist die "Geradlinienbreite" ein Parameter, welcher den Suchbereich W für den Suchprozess für einen korrespondierenden Punkt anzeigt, und die "Geradlinienlänge" ist ein Parameter, welcher die Länge L des gesetzten Liniensegmentes basierend auf dem Vektor C anzeigt. Ferner ist der "untere Grenzwert" ein Binärschwellwert zur Binärverarbeitung des Verarbeitungsergebnisbildes.
  • Das in 3 gezeigte zu verarbeitende Bild weist ein Bild 23 des Konturabschnittes eines benachbarten Objektes (nachfolgend als "das Konturbild 23" bezeichnet) wie auch das Linearobjekt 20, welches einen Defekt hat, auf.
  • Das in 4A gezeigte Verarbeitungsergebnisbild weist ein Montagebild 20a des korrespondierenden Liniensegmentes für das Linearobjekt 20 bzw. ein Montagebild 23a des korrespondierenden Liniensegmentes des Konturbildes 23 auf. Beide Montagebilder 20a und 23a spiegeln die Geometrie der Originalbilder mit hoher Genauigkeit wider.
  • Andererseits zeigt das Verarbeitungsergebnisbild von 4B das Ergebnis des Nachdetektionsprozesses, welcher bei einer kleineren Geradlinienbreite W als im Fall von 4A durchgeführt worden ist. Bei diesem Bild ist das Montagebild 23a, korrespondierend zum Konturbild 23, mit einer dicken Linienbreite verschwunden, und nur das Montagebild 20a, korrespon dierend zu einem Linearobjekt 20, mit einer dünnen Linienbreite wird angezeigt.
  • Das Verarbeitungsergebnisbild von 4C zeigt das Ergebnis des Nachdetektionsprozesses, welcher mit einer größeren Geradlinienlänge L als im Fall von 4A durchgeführt worden ist. Auch in diesem Bild, wie in 4A, sind das zum Linearobjekt 20 korrespondierende Montagebild 20a und das zum Konturbild 23 korrespondierende Montagebild 23a angezeigt. Weil jedoch der gesetzte Wert der Geradlinienbreite L sehr groß ist, wird eine Rauschkomponente erzeugt, welche sich von der Originalform des Originalbildes entfernt.
  • Wie oben beschrieben ist, schaffen die gesetzten Werte der Geradlinienbreite W und der Geradlinienlänge L wichtige Parameter, um die Detektionsgenauigkeit des Linearobjektes zu bestimmen. Der untere Grenzwert, welcher einen Binärschwellwert des Verarbeitungsergebnisbildes schafft, kann, obgleich in den 4A bis 4C festgesetzt, geändert werden, um den mit den Randpixeln erscheinenden Grad der Rauschkomponenten einzustellen, welche fehlerhafterweise durch den Suchprozess für den korrespondierenden Punkt extrahiert worden sind (dieser untere Grenzwert wird nachfolgend als "der unter Grenzwert S" bezeichnet).
  • Wie in 4 gezeigt ist, werden im Bildverarbeitungsvorgang gemäß dieser Ausführungsform die gesetzten Werte der Parameter, welche die Geradlinienbreite W, die Geradlinienlänge L und den unteren Grenzwert S aufweisen, im Setzmodus vor der Inspektion über den gesamten Skalenbereich geändert, während das Verarbeitungsergebnisbild korrespondierend zu den gesetzten Werten erzeugt und dasselbe Ergebnisbild auf dem Monitor 3 angezeigt wird. Der Benutzer, welcher den Monitor 3 beobachtet, stellt den Wert jedes Parameters ein, und er legt den gesetzten Wert durch Betätigen der Bestätigungsschaltfläche 24 fest. Bei diesem Bestätigungsvorgang wird der gesetzte Wert jedes Parameters im Flashspeicher 9 gespeichert, und basierend auf diesen gesetzten Werten wird eine Defektinspektion durchgeführt. Im Setzmodus wird das Verarbeitungsergebnisbild für die Anzeige erzeugt, indem die Schritte ST1 bis ST13 in 5 ausgeführt werden. Die Einzelheiten dieser Schritte sind unten beschrieben.
  • In 5 sind die Inspektionsverarbeitungsschritte in der Bildverarbeitungsvorrichtung 1 dargestellt. Dieser Inspektionsprozess wird zu dem Zeitpunkt durchgeführt, nachdem ein Analogbildsignal von der Kamera 2 in die Kameraschnittstelle 12 eingegeben und in die Digitalform konvertiert worden ist, und ferner der Extraktionsprozess durch die Randintensitäts-Extraktionseinheit 6 und die Randcode-Extraktionseinheit 7 beendet ist. In der nachfolgenden Beschreibung und in 5 ist jeder Schritt mit "ST" bezeichnet.
  • Als erstes werden in den Schritten ST1 und ST2 die Koordinaten (x, y) des zu berücksichtigenden Pixels auf die Position (x1, y1) in der oberen linken Ecke im Messbereich 22 gesetzt, und danach wird der unten beschriebene Prozess wiederholt, bis das zu berücksichtigende Pixel eine Position (x2, y2) in der unteren rechten Ecke im Messbereich erreicht.
  • Im Schritt ST3 wird die Randintensität Ei (x, y) des zu berücksichtigenden Pixels geprüft, wobei das Randintensitätsbild verwendet wird. In dem Fall, wo die Randintensität Ei (x, y) größer als ein vorbestimmter Schwellenwert Eh ist, wird der Prozess zum nächsten Schritt ST4 fortgesetzt, während andererseits in dem Fall, wo die Randintensität Ei (x, y) nicht größer als der Schwellenwert Eh ist, die Schritte einschließlich des Schrittes ST4 und nachfolgend zu ST4 übersprungen werden und der Prozess mit Schritt ST9 fortgesetzt wird, um das zu berücksichtigenden Pixel zu ändern.
  • In Schritt ST4 wird der Randcode Ec (x, y) des zu berücksichtigenden Pixels ausgelesen, wobei das Randcodebild verwendet wird, und die Suchrichtung wird mit Bezug auf den Randcode Ec (x, y) gesetzt. Gemäß dieser Ausführungsform werden der Randcode und die Richtung des Dichtegradienten in die Richtung entlang der positiven X-Richtung mit 0 Grad formuliert. In dem Fall, wo ein Linearobjekt eine niedrigere Dichte als der Hintergrund aufweist, wird die Richtung, welche äquivalent zum Randcode Ec (x, y) plus 90 Grad ist, als die Suchrichtung gesetzt. In dem Fall, wo ein Linearobjekt eine höhere Dichte als der Hintergrund aufweist, wird andererseits die Richtung, welche äquivalent zum Randcode Ec (x, y) minus 90 Grad ist, als die Suchrichtung bestimmt.
  • Wenn die Suchrichtung bestimmt ist, werden die Pixel von dem zu berücksichtigenden Pixel einer nach dem anderen entlang der Suchrichtung gescannt, wobei wieder das Randcodebild verwendet wird, und der Randcode für jede Scanposition wird mit dem Randcode Ec (x, y) des zu berücksichtigenden Pixels verglichen. In dem Fall, wo der Unterschied zwischen den beiden Randcodes einen numerischen Wert zwischen dem erlaubten Fehlerbereich bezüglich 180 Grad einnimmt, wird die momentane Scanposition als ein Punkt korrespondierend zu dem zu berücksichtigenden Pixel betrachtet, und die Antwort in Schritt ST6 wird mit JA ausgegeben.
  • In dem Fall, wo andererseits der Randcode an der Scanposition die oben beschriebenen Bedingungen nicht erfüllt, ist die Antwort in Schritt ST6 NEIN, so dass zu prüfen ist, ob die Suche entlang der Geradlinienbreite W durchgeführt worden ist. In dem Fall, wo die Antwort NEIN ist, wird ein Pixel in der Suchrichtung gescannt, und der Schritt ST6 wird erneut durchgeführt.
  • Wenn auf diese Weise ein korrespondierender Punkt innerhalb des Bereiches der Geradlinienbreite W extrahiert ist, wird der Scanprozess sofort beendet, und der Prozess wird mit Schritt ST7 fortgesetzt. In Schritt ST7 wird der Liniensegmentsetzprozess durchgeführt, basierend auf dem Randcode Ec (x, y) und der Geradlinienlänge L mit dem Zwischenpunkt (Punkt Q in 2(2)) zwischen dem zu berücksichtigenden Pixel und dem korrespondierenden Punkt als ein Ursprung. Dieser Liniensegmentsetzprozess wird durchgeführt, indem die Randintensität Ei (x, y) zu dem Wert der Pixel hinzugefügt wird, welche das Liniensegment in dem Speicherbereich für das Verarbeitungsergebnisbild konstituieren, wie oben beschrieben.
  • Auf gleiche Weise wird ein Punkt korrespondierend zu jedem Randpixel mit einer Randintensität, welche höher als der Schwellenwert Eh in dem Messbereich 22 ist, sequenziell gesucht, und der Liniensegmentsetzprozess wird für jedes Randpixel durchgeführt, für den der korrespondierende Punkt durch den Suchprozess extrahiert worden ist. Am Ende des Setzprozesses im Messbereich schwenkt die Antwort in Schritt ST12 auf JA, und der Prozess wird mit Schritt ST13 fortgeführt, wo jedes Pixel des Verarbeitungsergebnisbildes basierend auf dem unteren Grenzwert 5 in Binärwerte zerlegt wird.
  • Im nächsten Schritt ST14 werden die Pixel des in Binärwerte zerlegten Verarbeitungsergebnisbildes, welche den unteren Grenzwert S überschritten haben und auf "1" gesetzt worden sind, extrahiert, und ein Bildbereich mit einer sukzessiven Reihe dieser Pixel wird ausgeschnitten und etikettiert. Ferner wird in Schritt ST15 der Bereich des so etikettierten Bildbereiches berechnet. In Schritt ST16 wird das Berechnungsergebnis geprüft, um zu erkennen, ob es einen vorbestimmten Schwellenwert S0 überschreitet oder nicht. In dem Fall, wo das Berechnungsergebnis den Schwellenwert S0 überschreitet, schreitet der Prozess zum Schritt ST17 fort, wo ein Signal ausgegeben wird, welches anzeigt, dass ein Defekt vorliegt. In dem Fall, wo das Berechnungsergebnis den Schwellenwert S0 nicht überschreitet, wird andererseits der Prozess zu Schritt ST18 fortgesetzt, wo ein Signal ausgegeben wird, welches nicht anzeigt, dass ein Defekt vorliegt. Das in Schritt ST14 etikettierte Montagebild ist nicht auf eines begrenzt, sondern eine Mehrzahl von Montagebildern können einbezogen sein. In dem Fall, wo der Bereich irgendeines der Montagebilder den Schwel lenwert S0 überschreitet, schwenkt die Festlegung in Schritt ST16 auf JA.
  • Bevor die Inspektion durchgeführt und die Parameter gesetzt werden, ist es erforderlich, dass der Prozess des Setzens des Messbereiches 22 und der Prozess des Setzens der Suchrichtung für einen korrespondierenden Punkt durchgeführt worden sind. Der Messbereich kann jedoch das gesamte Bild sein. Ferner ist die Suchrichtung für einen korrespondierenden Punkt nicht auf eine begrenzt, sondern kann sowohl die Richtung des Randcodes Ec (x, y) plus 90 Grad als auch minus 90 Grad sein.
  • Ferner ist der Ursprung, von dem ein Liniensegment gesetzt ist, nicht notwendigerweise ein Punkt zwischen dem zu berücksichtigenden Randpixel und einem korrespondierenden Randpixel, sondern irgendeiner dieser Pixel. Als eine weitere Alternative kann eine Mehrzahl von Liniensegmenten zwischen diesen Pixeln gesetzt werden. Ferner ist die Richtung, in die sich das Liniensegment erstreckt, nicht auf eine begrenzt, sondern eine Mehrzahl von Liniensegmenten können in zwei Richtungen vom Ursprung erstreckt werden.
  • In dem Fall, wo ein Punkt korrespondierend zu dem zu berücksichtigenden Randpixel in Schritt ST6 von 5 gefunden wird, kann ferner nach der Durchführung des Schrittes ST7 der Prozess folgen, bei dem die Randintensität am korrespondierenden Punkt auf eine Randintensität neu beschrieben wird, welche nicht als ein Randpixel verifiziert ist, wie zum Beispiel der Schwellenwert Eh oder 0. Indem so vorgegangen wird, wird ein Satz gegenüberliegender Randpixel daran gehindert, dem Suchprozess oder dem Liniensegmentsetzprozess zum zweiten Mal unterworfen zu werden. Somit wird der Prozess mit höherer Geschwindigkeit durchgeführt.
  • In dem Fall, wo ein Randpixel, welcher als ein korrespondierender Punkt extrahiert worden ist, dem nachfolgenden Prozess auf diese Weise nicht unterworfen ist, wird in Schritt ST7 ein Liniensegment, welches sich in zwei Richtungen vom Ursprung erstreckt, vorzugsweise gesetzt.
  • Wenn bei der Defektinspektion, basierend auf den in den 2 bis 5 beschriebenen Techniken, die Parameter korrekt gesetzt sind, wie in 4B gezeigt, kann ein Bild mit im Wesentlichen den gleichen Merkmalen wie der Form des Linearobjektes erzeugt werden mittels eines Montagebildes der Liniensegmente, welche die Neigung an jeder Position des Randes in der Längsrichtung des Linearobjektes widerspiegeln. Somit kann nicht nur ein geradliniges Defektobjekt, sondern auch ein Defekt-Linearobjekt mit gekrümmter Form, wie zum Beispiel ein Haar- und Fadenüberstand, oder mit einer unebenen Oberfläche, wie ein Riss, mit hoher Genauigkeit detektiert werden.
  • Bei diesem Liniensegmentsetzprozess wird ein Liniensegment mit einer gewichteten Randintensität des zu berücksichtigenden Randpixels gesetzt. In dem Fall, wo die Randintensität jedes Randpixels aufgrund eines geringen Kontrastes des Eingabebildes schwach ist, kann daher die Überlagerung der Liniensegmente das Gewicht des Montagebildes gegen den Hintergrund verstärken, wodurch es möglich gemacht wird, ein Bild mit einem Defekt zu erzeugen, welcher sowohl in Form als auch Größe deutlich erkennbar ist.
  • Es sei angenommen, dass ein Rand einen Randabfall mit einer niedrigeren Randintensität als dem Schwellenwert Eh entwickelt hat. Solange, wie die Geradlinienlänge auf einen genügend großen Wert gesetzt ist, kann jedoch die Neigung des Randabfallabschnittes ergänzt werden, indem die zu den benachbarten Randpixeln zugehörigen Liniensegmente verbunden werden. Daher kann ohne den Prozess der Liniensegment-Integration der Defekt, welcher den Abfallabschnitt aufweist, durch den Algorithmus für den normalen Inspektionsprozess detektiert werden. Somit kann eine hochgenaue Inspektion durchgeführt werden, ohne den Aufwand des Steuerbetriebes auf der CPU 5 zu erhöhen.
  • Ferner werden gemäß dieser Ausführungsform die gesetzten Parameterwerte eingegeben, während das auf dem Monitor 3 angezeigte Bild beobachtet wird. Als eine Alternative können die Parameter automatisch gesetzt werden, indem die Schritte wie in 6 gezeigt ausgeführt werden.
  • Die in 6 gezeigten Schritte verdeutlichen, was mit "das Bergsteigerverfahren" bezeichnet ist. Vor der Ausführung dieser Schritte wird eine Mehrzahl von Modell-Graustufenbildern (nachfolgend als "die Modellbilder" bezeichnet), welche einen Defekt aufweisen, in die Bildverarbeitungsvorrichtung 1 eingegeben, und ein Binärbild, welches anzeigt, ob jedes Pixel der Modellbilder einen Defekt aufweist oder nicht (nachfolgend als "das Modelldefektbild" bezeichnet), wird für jedes dieser Modellbilder gesetzt. Das Modelldefektbild wird durch die Benutzerbetätigung erzeugt, bei welcher die Defektposition der Modellbilder bestimmt wird. Zum Beispiel werden die Modellbilder sequenziell auf dem Monitor 3 angezeigt, während der Benutzer angewiesen ist, eine Mehrzahl von Defektpunkten auf den Konturlinien auf dem Bildschirm zu bezeichnen. Die Pixel im Bildbereich, welche durch Verbinden der bezeichneten Punkte gebildet werden, werden auf "1" gesetzt, und die Pixel außerhalb des Bereiches werden auf "0" gesetzt. Auf diese Weise kann das Modelldefektbild erzeugt werden. (Beim Bezeichnen der Punkte auf den Konturlinien wird empfohlen, dass das Bild in vergrößerter Form angezeigt wird.)
  • In 6 sind die Schritte (ST) durch Zahlen, beginnend mit 101, bezeichnet.
  • Nach vollständiger Eingabe der Modellbilder und Erzeugung der Modelldefektbilder, wie oben beschrieben, wird der Prozess mit Schritt ST101 fortgesetzt, wo die Anfangswerte der Parameter, wie zum Beispiel die Geradlinienbreite B, die Geradlinienlänge L und der untere Grenzwert S, ausgelesen werden und vorläufig als optimale Werte der jeweiligen Parameter gesetzt werden. Die Standard-Parameterwerte, welche in dem Flashspeicher 9 gehalten werden, können als die Anfangswerte der Parameter verwendet werden.
  • Als nächstes wird in Schritt ST102 jedes Modellbild genau untersucht, wobei die Optimalwerte der Parameter verwendet werden. Beim Untersuchungs-/Inspektionsprozess für jedes Modellbild werden die Schritte, welche ähnlich zu jenen der in 5 gezeigten sind, ausgeführt, nachdem ein Binärinspektions-Ergebnisbild erzeugt wird, in welchem die konstituierenden Pixel eines Montagebildes, welches als Defekt bestimmt wird (ein Montagebild einer Größe, welche den Bereich S0 überschreitet), auf "1" gesetzt sind und die anderen Pixel auf "0" gesetzt sind.
  • Nach Abschluss der Inspektion wird der Bewertungswert E0 der Inspektion berechnet. Der Bewertungswert E0 wird aus der untenstehenden Gleichung (1) bestimmt, wobei das Inspektionsergebnisbild jedes Modellbildes und des Modelldefektbildes verwendet werden. Gleichung (1) wird auch in den Schritten ST105 und ST106 verwendet, und daher wird der Bewertungswert allgemein als E ausgedrückt.
  • Figure 00410001
  • In obiger Gleichung (1) bezeichnet das Zeichen N die Anzahl von Pixeln, welche das Modellbild konstituieren, das Zeichen T die Anzahl der Modellbilder und MTN das Bestimmungsergebnis für jedes Pixel jedes Modellbildes. Das Bestimmungsergebnis wird erzielt, indem das Inspektionsergebnisbild, welches vom Modellbild erzeugt wird, mit dem Modelldefektbild verglichen wird. Insbesondere in dem Fall, wo der gleiche Wert auf die korrespondierenden Pixel zwischen dem Inspektionsergebnisbild und dem Modelldefektbild gesetzt wird, wird MTN als +1 bestimmt, während in dem Fall, wo unterschiedliche Werte gesetzt werden, MTN als –1 bestimmt wird.
  • Im nächsten Schritt ST104 wird einer der ausgewählten Parameter, welcher die Geradlinienbreite W, die Geradlinienlänge L und den unteren Grenzwert 5 aufweist, gewählt. Es sei angenommen, dass zum Beispiel die Geradlinienbreite W gewählt wird. Im Schritt ST105 wird der gewählte Parameter auf einen Wert gesetzt, welcher vom Optimalwert um eine Zufallszahl α vergrößert ist, und die Inspektion wird durch ein im Vergleich zu Schritt ST102 ähnliches Verfahren durchgeführt. In Schritt ST106 wird der Parameter auf einen Wert gesetzt, welcher vom Optimalwert um α verringert worden ist, und die Inspektion wird in ähnlicher Weise durchgeführt.
  • In Schritt ST107 werden die Bewertungswerte mit Gleichung (1) berechnet, basierend auf dem Ergebnis der Inspektion, welche in den Schritten ST105 und ST106 durchgeführt worden ist. In dem Fall, wo mindestens einer der Bewertungswerte höher als der oben beschriebene Bewertungswert E0 ist, wird der Prozess von Schritt ST108 zu Schritt ST109 fortgesetzt, wo der Wert E0 durch den größten der drei Bewertungswerte überschrieben wird. Ferner wird in Schritt ST110 der Optimalwert der gewählten Parameter durch den Parameterwert überschrieben, welcher durch Überschreiben des Wertes E0 erzielt wird.
  • Danach wird, indem zu Schritt ST105 zurückgekehrt wird, der Prozess, welcher ähnlich zu dem oben beschriebenen Prozess ist, wiederholt durchgeführt. In dem Fall, wo der Bewertungswert E0 jenseits des Bewertungswertes des Inspektionsergebnisses der Schritte ST105 und ST106 zu einem vorbestimmten Zeitpunkt ansteigt, kehrt der Prozess von ST108 durch ST111 zu ST104 zurück, um einen zweiten Parameter (zum Beispiel L) zu wählen. Wenn der Optimalwert dieses Parameters und der größte Wert des Bewertungswertes E0 durch den gleichen Prozess bestimmt sind, wird der Prozess wieder durch die Schritte ST108 und ST111 bis zu ST104 zurückgeführt, wo ein dritter Parameter (zum Beispiel S) gewählt wird und ein ähnlicher Prozess ausgeführt wird.
  • Nachdem alle Parameter auf diese Art ausgewählt sind, schwenkt die Antwort in Schritt ST111 auf JA, und im nächsten Schritt ST112 wird der momentane Optimalwert jedes Parameters von dem Zeitpunkt ab verglichen, wenn der erste Parameter W gewählt ist. In dem Fall, wo die Optimalwertsätze voneinander unterschiedlich sind, kehrt der Prozess zu Schritt ST104 zurück, und der erste Parameter wird wieder gewählt.
  • Auf gleiche Weise wird der Prozess der Schritte ST104 bis ST112 wiederholt, bis der Bewertungswert E0 und die Optimalwerte der Parameter festgelegt sind. Wenn die Bewertungswerte E0 und der Optimalwert jedes Parameters festgelegt werden, schreitet der Prozess von Schritt ST112 zu ST113 fort, und der Optimalwert jedes Parameters zum vorherrschenden Zeitpunkt wird als ein Wert des Inspektionsparameters festgelegt und im Flashspeicher 9 gespeichert.
  • Aus der vorhergehenden Beschreibung ist somit ersichtlich, dass mit dem erfindungsgemäßen Bildverarbeitungsverfahren und der erfindungsgemäßen Bildverarbeitungsvorrichtung ein gekrümmtes Linearobjekt und ein geringfügig unebenes Linearobjekt genauso wie ein geradliniges Objekt einfach und genau detektiert werden können. Außerdem kann, sogar mit Bezug auf ein Bild mit einer geringen Randextraktionsgenauigkeit eines Linearobjektes, das Linearobjekt mit hoher Genauigkeit gemäß einem gewöhnlichen Algorithmus detektiert werden, indem die Parameter eingestellt werden. Somit kann der Prozess der Detektion eines Linearobjektes mit höherer Geschwindigkeit durchgeführt werden, ohne dass der Aufwand des Steuervorgangs zunimmt.

Claims (19)

  1. Bildverarbeitungsverfahren zum Detektieren eines Linearobjektes auf einem Graustufenbild, wobei Randpixel auf dem Graustufenbild extrahiert werden, und, während die extrahierten Randpixel sequenziell berücksichtigt werden, ein Randpixel, welches eine Dichtegradientenrichtung entgegengesetzt zu derjenigen eines gerade berücksichtigten Randpixels hat, innerhalb eines vorbestimmten Bereiches in Richtung orthogonal zur Randrichtung von dem gerade berücksichtigen Randpixel aus gesucht wird, und, wenn ein die Verifikationsbedingungen erfüllendes Randpixel extrahiert ist, ein Liniensegment parallel zur Randrichtung des gerade berücksichtigten Randpixels und durch eine vorbestimmte Position zwischen dem extrahierten Randpixel und dem gerade berücksichtigten Randpixel verlaufend gesetzt wird, und wobei entweder die Position oder die Größe des Linearobjektes auf dem Graustufenbild, basierend auf dem Ergebnis des Liniensegmentsetzens, detektiert wird, wenn keine zu berücksichtigenden Randpixel mehr vorhanden sind.
  2. Bildverarbeitungsverfahren nach Anspruch 1, wobei ein Bild, welches das Ergebnis des Liniensegmentsetzens angibt, als ein Linearobjekt-Detektionsergebnis angezeigt wird, wenn keine zu berücksichtigenden Randpixel mehr vorhanden sind.
  3. Bildverarbeitungsverfahren nach einem der vorstehenden Ansprüche, wobei die Eingabe eines numerischen Wertes, welcher die Bedingungen zum Setzen des Suchbereiches im Suchprozess angibt, entgegengenommen wird.
  4. Bildverarbeitungsverfahren nach einen der vorstehenden Ansprüche, wobei die Eingabe eines numerischen Wertes, welcher die Bedingungen zum Setzen eines Liniensegmentes angibt, entgegengenommen wird.
  5. Bildverarbeitungsverfahren gemäß einem der vorstehenden Ansprüche, wobei ein Bild, welches das Ergebnis des Liniensegmentsetzens angibt, hergestellt wird, indem ein numerischer Wert, der der Randintensität des gerade berücksichtigten Randpixels entspricht, zum Dichtewert der Pixel, welche das in dem Liniensegmentsetzvorgang zu setzende Liniensegment bilden, addiert wird.
  6. Bildverarbeitungsverfahren nach Anspruch 5, wobei ein Bild, welches das Ergebnis des Liniensegmentsetzens angibt, mittels eines vorbestimmten Schwellenwertes in Binärform gebracht wird, wenn keine zu berücksichtigenden Randpixel mehr vorhanden sind, und das resultierende Binärbild als ein Linearobjekt-Detektionsergebnis angezeigt wird.
  7. Bildverarbeitungsverfahren nach einem der vorstehenden Ansprüche, wobei die Randintensität des gerade berücksichtigten Randpixels entweder in der Länge oder der Breite des in dem Liniensegmentsetzprozess zu setzenden Liniensegmentes wiedergegeben wird.
  8. Bildverarbeitungsverfahren nach Anspruch 1, wobei mit Extraktion eines die Verifikationsbedingungen erfüllenden Randpixels durch den Suchprozess das extrahierte Randpixel als ein berücksichtigtes Randpixel nach dem Liniensegmentsetzprozess gesetzt wird.
  9. Bildverarbeitungsverfahren nach einem der vorstehenden Ansprüche, welches folgende Schritte aufweist: Eingeben einer vorbestimmten Zahl von Graustufenbildern, welche ein Bild eines Linearobjektes enthalten, Erhalten der Bezeichnung eines Linearobjektes auf jedem der Graustufenbilder, Durchführen des Suchprozesses und des Liniensegmentsetzprozesses für jedes der eingegebenen Graustufenbilder, während die Werte der Parameter für die jeweiligen Prozesse geändert werden, und Durchführen des Linearobjekt-Detektionsprozesses, basierend auf dem Ergebnis des Liniensegmentsetzens, und Wählen eines optimalen Satzes von Parameterwerten, basierend auf dem Ergebnis des Detektierens und der Bezeichnung eines Linearobjektes für jedes Graustufenbild, wobei die Parameter für den Suchprozess numerische Werte sind, welche die Suchbereich-Setzbedingungen angeben, und die Parameter für den Liniensegmentsetzprozess numerische Werte sind, welche die Liniensegment-Setzbedingungen angeben.
  10. Vorrichtung zum Detektieren eines Linearobjektes auf einem Graustufenbild, aufweisend: Bildeingabemittel zum Eingeben eines zu verarbeitenden Graustufenbildes, Anzeigemittel zum Anzeigen des Ergebnisses des Detektierens eines Linearobjektes in dem eingegebenen Graustufenbild, Randpixel-Detektionsmittel zum Detektieren von Randpixeln auf dem Graustufenbild, Suchmittel zur Berücksichtigung eines vorbestimmten Randpixels und Suchen nach einem Randpixel, welches eine Dichtegradientenrichtung entgegengesetzt zu jener des gerade berücksichtigten Randpixels hat in nerhalb eines vorbestimmten Bereiches in der Richtung, welche orthogonal zur Randrichtung des gerade berücksichtigten Randpixels ist, Liniensegmentsetzmittel zum Setzen eines Liniensegmentes parallel zur Randrichtung des gerade berücksichtigten Randpixels an einer vorbestimmten Position zwischen dem extrahierten Randpixel und dem gerade berücksichtigten Randpixel bei Extraktion eines die Verifikationsbedingungen erfüllenden Randpixels mit dem Suchmittel; und Steuermittel zum sequenziellen Berücksichtigen der von den Randpixel-Detektionsmitteln detektierten Randpixel, Aktivieren der Suchmittel und der Liniensegmentsetzmittel, und Anzeigen eines Bildes auf den Anzeigemitteln, welches das Ergebnis des Liniensegmentsetzens mit den Liniensegmentsetzmitteln angibt, wenn keine zu berücksichtigenden Randpixel mehr vorhanden sind.
  11. Bildverarbeitungsvorrichtung nach Anspruch 10, ferner aufweisend: Eingabemittel zum Eingeben der Parameter, welche für das Detektieren eines Linearobjektes verwendet werden, wobei die Eingabemittel einen numerischen Wert eingeben, welcher die Suchbereich-Setzbedingungen als einen Parameter für den von den Suchmitteln durchgeführten Suchprozess angibt.
  12. Bildverarbeitungsvorrichtung nach Anspruch 11, wobei die Eingabemittel einen numerischen Wert angeben, welcher die Liniensegment-Setzbedingungen als einen Parameter für den von den Liniensegmentsetzmitteln durchgeführten Liniensegmentsetzprozess angibt.
  13. Bildverarbeitungsvorrichtung nach einem der Ansprüche 10 bis 12, wobei die Steuermittel die Pixel extrahieren, welche mindestens eine vorbestimmte Zahl von Liniensegmenten bilden, die von den Liniensegmentsetzmitteln gesetzt sind und einander überlagert sind, wenn keine zu berücksichtigenden Randpixel mehr vorhanden sind, und ein Binärbild erzeugen und auf den Anzeigemitteln anzeigen, indem die extrahierten Pixel von anderen Pixeln getrennt werden.
  14. Bildverarbeitungsvorrichtung nach einem der Ansprüche 10 bis 12, wobei die Liniensegmentsetzmittel einen der Randintensität des gerade berücksichtigten Randpixels entsprechenden numerischen Wert zum Dichtewert der Pixel addieren, welche ein zu setzendes Liniensegment bilden, und ein Bild erzeugen, welches das Ergebnis des Liniensegmentsetzens angibt.
  15. Bildverarbeitungsvorrichtung gemäß einem der Ansprüche 10 bis 12, wobei die Liniensegmentsetzmittel einen der Randintensität eines gerade berücksichtigten Randpixels entsprechenden numerischen Wert zum Dichtewert der Pixel hinzufügen, welche ein zu setzendes Liniensegment bilden, und ein Bild erzeugen, welches das Ergebnis des Liniensegmentsetzens angibt, und die Steuermittel ein das Ergebnis des Liniensegmentsetzens angebendes Bild mittels eines vorbestimmten Schwellenwertes binarisieren, wenn kein zu berücksichtigendes Pixel mehr vorhanden ist, und das resultierende Binärbild auf den Anzeigemitteln anzeigen.
  16. Bildverarbeitungsvorrichtung nach Anspruch 10, wobei die Steuermittel Nachberücksichtigungssetzmittel aufweisen, welche bei der Extraktion eines die Verifikationsbedingungen erfüllenden Randpixels mit den Suchmitteln das extrahierte Randpixel als ein Nachberücksichtigungs-Randpixel nach der vollständigen Durchführung des Liniensegmentsetzprozesses durch das Liniensegmentsetzmittel setzt.
  17. Bildverarbeitungsvorrichtung gemäß Anspruch 10, ferner aufweisend: Detektionsmittel zum Detektieren entweder der Größe oder der Position eines Linearobjektes auf dem Graustufenbild, basierend auf dem Ergebnis des Liniensegmentsetzens durch die Liniensegmentsetzmittel.
  18. Bildverarbeitungsvorrichtung gemäß Anspruch 17, ferner aufweisend: Bestimmungsmittel zum Bestimmen des Vorhandenseins oder Nichtvorhandenseins eines Linearobjektes, basierend auf dem Detektionsergebnis der Detektionsmittel, und Ausgabemittel zum Ausgeben des Ergebnisses der Bestimmung des Vorhandenseins oder Nichtvorhandenseins durch das Bestimmungsmittel.
  19. Bildverarbeitungsvorrichtung gemäß Anspruch 10, ferner aufweisend: Parametersetzmittel zum Setzen eines Optimalwertes jedes Parameters als numerischen Wert, der die Suchbereich-Setzbedingungen im Suchprozess der Suchmittel und die Liniensegment-Setzbedingungen im Liniensegmentsetzprozess der Liniensegmentsetzmittel angibt, wobei das Parametersetzmittel Bezeichnungsmittel zum Durchführen des Bezeichnens des Linearobjektes auf einem das Linearobjekt aufweisenden Graustufenbild aufweisen, welches von den Bildeingabemitteln eingegeben wird, Detektionssteuermittel zum Betreiben der Suchmittel und der Liniensegmentsetzmittel, während die Werte der Parameter für den Prozess geändert werden, welcher von den Suchmitteln und den Liniensegmentsetzmitteln für eine Mehrzahl von Graustufenbildern, welche dem Bezeichnen unterworfen werden, durchgeführt wird, während gleichzeitig der Linearobjekt-Detektionsprozess beruhend auf dem Ergebnis des Liniensegmentsetzens durchgeführt wird, und Auswahlmittel zum Auswählen eines optimalen Satzes von Parameterwerten, beruhend auf dem Detektionsergebnis jedes Graustufenbildes und dem Ergebnis des Bezeichnens des Linearobjektes.
DE10346690A 2002-10-11 2003-10-08 Verfahren und Vorrichtung zum Detektieren eines Linearobjekts Expired - Fee Related DE10346690B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002299581A JP4206723B2 (ja) 2002-10-11 2002-10-11 画像処理方法および画像処理装置
JP2002/299581 2002-10-11
JP2002-299581 2002-10-11

Publications (2)

Publication Number Publication Date
DE10346690A1 DE10346690A1 (de) 2004-06-03
DE10346690B4 true DE10346690B4 (de) 2007-11-29

Family

ID=32288671

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10346690A Expired - Fee Related DE10346690B4 (de) 2002-10-11 2003-10-08 Verfahren und Vorrichtung zum Detektieren eines Linearobjekts

Country Status (3)

Country Link
US (1) US7212672B2 (de)
JP (1) JP4206723B2 (de)
DE (1) DE10346690B4 (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7099509B2 (en) * 2002-10-11 2006-08-29 Samsung Electronics Co., Ltd. Method of edge direction detection based on the correlations between pixels of a vector and an edge direction detection system
JP4683200B2 (ja) * 2004-04-30 2011-05-11 花王株式会社 髪領域の自動抽出方法
JP4619112B2 (ja) * 2004-12-27 2011-01-26 花王株式会社 毛形状の測定方法
CN1797429A (zh) * 2004-12-29 2006-07-05 鸿富锦精密工业(深圳)有限公司 二维图像分析处理系统及方法
JP4001162B2 (ja) 2005-11-04 2007-10-31 オムロン株式会社 画像処理方法、画像処理用のプログラムならびにその記憶媒体、および画像処理装置
US8126253B2 (en) * 2005-11-12 2012-02-28 Cognex Technology And Investment Corporation Automatically determining machine vision tool parameters
JP4797846B2 (ja) * 2006-07-12 2011-10-19 トヨタ自動車株式会社 区画線検出装置及び車線検出装置
JP4724638B2 (ja) * 2006-10-20 2011-07-13 株式会社日立製作所 オブジェクト検出方法
US20080187194A1 (en) * 2007-02-05 2008-08-07 Zhang Daoxian H Cad image normalization
US8428382B2 (en) * 2007-02-16 2013-04-23 Kao Corporation Hair image display method and display apparatus
JP5724454B2 (ja) * 2011-02-25 2015-05-27 村田機械株式会社 画像処理装置及び画像処理方法
KR101194773B1 (ko) * 2011-03-29 2012-10-26 강진수 탈모진행정도의 측정 방법
JP5765026B2 (ja) * 2011-04-06 2015-08-19 富士ゼロックス株式会社 画像処理装置及びプログラム
FR2977939B1 (fr) * 2011-07-11 2013-08-09 Edixia Procede d'acquisition de plusieurs images d'un meme objet a l'aide d'une seule camera lineaire
JP6021665B2 (ja) * 2013-01-30 2016-11-09 株式会社Pfu 画像処理装置、画像処理方法及びコンピュータプログラム
MX2017016138A (es) * 2015-06-30 2018-03-01 Pirelli Metodo y aparato para detectar defectos sobre la superficie de neumaticos.
US10095944B2 (en) * 2015-08-28 2018-10-09 Tata Consultancy Services Limited Methods and systems for shape based image analysis for detecting linear objects
DE102016120775A1 (de) 2015-11-02 2017-05-04 Cognex Corporation System und Verfahren zum Erkennen von Linien in einem Bild mit einem Sichtsystem
US10937168B2 (en) 2015-11-02 2021-03-02 Cognex Corporation System and method for finding and classifying lines in an image with a vision system
CN107123110A (zh) * 2017-04-13 2017-09-01 青岛海信医疗设备股份有限公司 胸壁线检测方法及装置
JP6996200B2 (ja) * 2017-09-29 2022-01-17 富士通株式会社 画像処理方法、画像処理装置、および画像処理プログラム
JP7185839B2 (ja) * 2018-06-15 2022-12-08 オムロン株式会社 画像処理装置、画像処理方法及び画像処理プログラム
CN111141208B (zh) * 2019-01-09 2021-08-27 银河水滴科技(北京)有限公司 一种平行线检测方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141437A (en) * 1995-11-22 2000-10-31 Arch Development Corporation CAD method, computer and storage medium for automated detection of lung nodules in digital chest images
JP2002230562A (ja) * 2000-11-29 2002-08-16 Omron Corp 画像処理方法およびその装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5081689A (en) * 1989-03-27 1992-01-14 Hughes Aircraft Company Apparatus and method for extracting edges and lines
US6625303B1 (en) * 1999-02-01 2003-09-23 Eastman Kodak Company Method for automatically locating an image pattern in digital images using eigenvector analysis
JP2000293696A (ja) * 1999-04-07 2000-10-20 Matsushita Electric Ind Co Ltd 画像認識装置
DE10157958B4 (de) 2000-11-29 2012-11-15 Omron Corp. Bildverarbeitungsverfahren und-vorrichtung
US7116823B2 (en) * 2002-07-10 2006-10-03 Northrop Grumman Corporation System and method for analyzing a contour of an image by applying a Sobel operator thereto

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141437A (en) * 1995-11-22 2000-10-31 Arch Development Corporation CAD method, computer and storage medium for automated detection of lung nodules in digital chest images
JP2002230562A (ja) * 2000-11-29 2002-08-16 Omron Corp 画像処理方法およびその装置

Also Published As

Publication number Publication date
JP2004133811A (ja) 2004-04-30
US20040131256A1 (en) 2004-07-08
US7212672B2 (en) 2007-05-01
JP4206723B2 (ja) 2009-01-14
DE10346690A1 (de) 2004-06-03

Similar Documents

Publication Publication Date Title
DE10346690B4 (de) Verfahren und Vorrichtung zum Detektieren eines Linearobjekts
DE19521346C2 (de) Bilduntersuchungs/-Erkennungsverfahren, darin verwendetes Verfahren zur Erzeugung von Referenzdaten und Vorrichtungen dafür
DE60307967T2 (de) Bildverarbeitungsverfahren für die untersuchung des erscheinungsbildes
EP0131676B1 (de) Verfahren zum automatischen Digitalisieren des Umrisses von Strichgraphiken z.B. Buchstaben
DE69628723T2 (de) Gradientengestütztes Verfahren zur Erzeugung von Werten für unbekannte Pixel in einem Digitalbild
DE10081029B4 (de) Bildbearbeitung zur Vorbereitung einer Texturnalyse
DE69828909T2 (de) Neue perzeptive lokale gradientenbasierte gratbestimmung
DE60308739T2 (de) Automatisches Bildqualitäts-Bewertungsverfahren und Korrekturtechnik
DE69728127T2 (de) Vorrichtung und Verfahren zur Extraktion eines Objekts in einem Bild
DE69535098T2 (de) Verfahren und -vorrichtung zur Suche von Bildern in einer Datenbank
DE19736696C2 (de) Bildverarbeitungsvorrichtung
DE102004004528A1 (de) Verfahren, Vorrichtung und Programm zur Verarbeitung eines Stereobildes
DE4201514A1 (de) Verfahren zur ermittlung von fehlerhaften stellen
DE60113564T2 (de) Bildverarbeitungseinrichtung und Mustererkennungsvorrichtung, bei der die Bildverarbeitungseinrichtung verwendet wird
DE3722444A1 (de) Verfahren und vorrichtung zum erzeugen von entwurfsmusterdaten
DE3825005A1 (de) Bilderkennungsanordnung
DE112005000205T5 (de) System und Verfahren zur automatischen Knochenextraktion von einem medizinischen Bild
DE102009057884A1 (de) Abbildungsvorrichtung
DE112010001320T5 (de) Bildverarbeitungsvorrichtung, Bildverarbeitungsverfahren, Bilderverarbeitungsprogramm und Speichermedium
DE102006011719A1 (de) Bildverarbeitungsgerät und Verfahren zur Generierung von Registrierungsdaten bei der Bildverarbeitung
DE60208255T2 (de) Vorrichtung und Verfahren zur Bildverarbeitung von Finger- und Handflächenabdrücken
DE3718620C2 (de)
DE112019002848T5 (de) System und verfahren zum auffinden und klassifizieren von mustern in einem bild mit einem bildverarbeitungssystem
EP2787485B1 (de) Verfahren und Vorrichtung zur automatischen Fehlerstellenerkennung bei biegeschlaffen Körpern
DE102005025220B4 (de) Gerät, Verfahren und Programm zum Beseitigen von Poren

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R082 Change of representative

Representative=s name: KILIAN KILIAN & PARTNER, DE

Representative=s name: KILIAN KILIAN & PARTNER MBB PATENTANWAELTE, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee