-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Diese Erfindung betrifft das Erkennen von Grenzen bzw. Rändern und das Bestimmen der Lage der Grenzen zwischen zwei Gebieten in Bildern.
-
Beschreibung des Stands der Technik
-
Viele herkömmliche maschinelle Bildsysteme, die zum Auffinden der Ränder von Merkmalen in Bildern angewendet werden, beruhen im Wesentlichen oder ausschließlich auf der Anwendung von Gradientenoperationen auf die Intensitätswerte der ursprünglichen Bildpixel. Durch Anwenden des Bildens des Gradienten führen dieses Systeme die Randlageerkennung durch, indem der Kontrast der einem Bild innewohnenden ursprünglichen Intensität verwendet wird. Dieser Vorgang wird oft für maschinelle Bildbetrachtungssysteme verwendet, in der das Bestimmen der Lage von Rändern in Bildern von künstlich hergestellten Werkstücken mit einem hohen Grad an Genauigkeit und Zuverlässigkeit vorrangig ist. In diesen Fällen ist die Geometrie der Ränder gut definiert und vorhersagbar, so dass Rahmenbedingungen bereitgestellt werden, die auf die Randlageoperationen anwendbar sind, so dass für die Mehrzahl dieser Bilder gute Ergebnisse erhalten werden können. Ebenso bekannt ist es, Filter vor den Randerkennungsoperationen zu verwenden, um die Zuverlässigkeit der Operationen mit Intensitätsgradienten beim Auffinden von Punkten entlang eines Randes zu verbessern, und um Ausreißer der lokalisierten Randpunkte nach der Randerkennung auszuschließen, um damit die Zuverlässigkeit der detektierten Randlage zu verbessern.
-
Es gibt einige konventionelle Bildbearbeitungssysteme, die diese Verfahren nutzen. Diese Bildbearbeitungsvorrichtungen umfassen typischerweise eine Software, die ein oder mehrere „Randwerkzeuge” (im weiteren als ”Randhilfsmittel” bezeichnet) bereitstellen. Die Randhilfsmittel sind spezielle Zeiger und/oder grafische Anwenderschnittstellen-(GUI)-Elemente, die einem Bediener eines Bildverarbeitungssystems es ermöglichen, in einfacherer Weise nützliche Informationen und/oder Rahmenbedingungen, die zusammen mit dem zugrundeliegenden Randerkennungsverfahren verwendet werden, einzugeben.
-
Es ist jedoch auf dem Gebiet der Bildverarbeitung bekannt, dass diese konventionellen Verfahren unzuverlässig werden können, wenn die Bildgebiete in der Nähe der Ränder ein hohes Maß an Struktur aufweisen, oder wenn der Rand durch eine Änderung der Struktur, der Farbe oder anderen Bildeigenschaften definiert ist, die nicht immer gut definierten Intensitätsgradienten in dem Bild entsprechen. Die mit strukturierten Rändern verknüpften Bilder sind in sich irregulär oder verrauscht, da jedes Strukturgebiet in der Nähe eines speziellen Randes als eine Intensitätsänderung mit hoher räumlicher Frequenz in der Nähe des Randes abgebildet wird. Daher werden die zuvor erläuterten Operationen mit Intensitätsgradienten tendenziell verrauschte Resultate zurückgeben, die wiederum eine schlechte Detektion der Randlagen liefern. Obwohl Filtervorgänge angewendet werden können, um das Rauschen in diesen Situationen zu reduzieren, können die Filtervorgänge aber auch unbeabsichtigt das Bild in einer Weise stören, so dass die detektierte Randlage verzerrt wird. In einigen Fällen, wenn beispielsweise die Durchschnittsintensitäten in den strukturierten Gebieten, die den Rand abgrenzen, ungefähr gleich sind, werden die Operationen mit Intensitätsgradienten vollständig unzuverlässig zum Auffinden der Lage der Ränder. Somit können in derartigen Situation die konventionellen Verfahren eine Randlage eines Bildes nicht genau detektieren, da es keinen deutlichen Intensitätsgradienten oder kein Differenzial ist, das in eindeutiger Weise detektierbar ist.
-
In Bildern mit mehreren verschiedenen Objekten oder Gebieten, die diverse Strukturen aufweisen, sind eine Vielzahl von strukturbasierten Bildsegmentierungsverfahren bekannt. Beispielsweise kann ein Verfahren Bildpixel auf der Grundlage der Werte spezieller Strukturmetriken eingruppieren oder klassifizieren. Derartige Verfahren definieren eine Grenze, die die gruppierten oder klassifizierten Pixel in einem Gebiet von den gruppierten oder klassifizierten Pixeln in den anderen Gebieten als ein Nebenprodukt des Klassifizierungsvorganges trennen. Derartige Verfahren sind jedoch typischerweise für Objekterkennung, Objektverfolgung und dergleichen ausgebaut und werden dafür angewendet.
-
Ein allgemeines Problem, das mit diesen bestehenden Bildsegmentierungssystemen verknüpft ist, ist die Unflexibilität der Systemstruktur. Systeme, die eine große Zahl von Strukturfiltern für eine bessere Robustheit aufweisen, sind zu langsam, um den industriellen Anforderungen für einen hohen Durchsatz bei hoher Geschwindigkeit nachzukommen. Systeme, die die Anzahl der Strukturfilter begrenzen und/oder eine begrenzte Anzahl vordefinierter Parameter, die als Schwellwerte bei der Detektierung von Gebietszugehörigkeit anwendbar sind, werden oft unzuverlässig, wenn diese auf eine Vielzahl von Strukturen angewendet werden. Somit sind derartige exstierende Segmentierungssysteme nicht ausreichend anpassungsfähig, robust und/oder schnell zur Verwendung in allgemein verwendbaren kommerziellen Maschinenbildbearbeitungssystemen.
-
Des Weiteren sind derartige Segmentierungsverfahren nicht sehr gut entwickelt für das Auffinden relativ genauer Positionen für die Randlagen an den Grenzen zwischen Gebieten. Es ist allgemein bekannt, dass eine genaue Rand/Grenzwahrnehmung ein Ziel ist, das in gewissem Grade mit Operationen in Konflikt steht, etwa einer Energieabschätzung, die für eine genaue Pixeleingruppierung oder Klassifikation wesentlich sind. Beispielsweise offenbart das
US-Patent 6,178,260 von Li et al. ein Verfahren, das zur Zeichenerkennung verwendet wird, wobei eine lokale Rauheit und ein Maximalwert-Minimalwertzahl für ein Fenster und/oder ein Teilfenster eines Bildes bestimmt wird. Die eingespeisten Bilddaten für das Fenster werden nacheinander auf der Grundlage der lokalen Rauheit und der Maximumwert-Minimumwert-Zahl klassifiziert. Dieses Verfahren kann durch die Verwendung einer Musterdetektierungsbandklasse ergänzt werden, die versucht, linienmäßige oder Kanji-Gebiete zu identifizieren, die ansonsten durch die Rauheit- und Maximum-Miniumun-Klassifizierung verloren gehen könnte. Dieses Bildsegmentierungsverfahren ist robuster als viele der vorhergehenden Verfahren und passt sich an ein aktuelles Bild an. Dieses Verfahren offenbart jedoch nicht spezifische Verfahren oder Hilfsmittel für die spezielle Anwendung zum Lageauffinden der Position einer Grenze zwischen den klassifizierten Gebieten mit entsprechender Robustheit und Genauigkeit.
-
US-Patent 6,111,983 von Fenster et al. offenbart ein Verfahren, das zur Formerkennung angewendet wird, das für medizinische Bilder nutzbar ist. In diesem Verfahren wird ein Formmodell für Parametereinstellungen in einer Objektfunktion auf der Grundlage von Trainingsdaten, für die die korrekte Form spezifiziert ist, ”trainiert”. Dieses Training kann vorteilhafterweise auf Modelle angewendet werden, in denen eine Form oder eine Grenze in sektorisierter Weise behandelt wird, wobei das Training individuell auf jeden Sektor angewendet wird. Die Sektoren können durch eine Vielzahl oder Kombinationen von Merkmalen gekennzeichnet sein und die Merkmale werden so eingestellt, um eine gewünschte sektorabhängige Objektfunktion zu erzeugen, Dieses Verfahren ist robuster als viele der vorhergehenden Verfahren und passt sich an ein aktuelles Bild an. Das Verfahren offenbart jedoch nicht spezielle Verfahren oder Hilfsmittel zum Auffinden der Position einer Grenze zwischen diversen Sektoren mit entsprechender Robustheit und Genauigkeit.
-
Aus der
DE 100 20 067 A1 ist ein Verfahren zur Bestimmung der Kantenposition in Farbbildern auf der Basis von Intensitätsübergängen bekannt. Dabei werden Vektordifferenzverfahren ohne die Verwendung von Filterverfahren verwendet.
-
Aus dem Artikel Anil K. Jain und Farshid Farrokhnia, ”Unsupervised Texture Segmentation Using Gabor Filters”, in Systems, Man and Cybernetics, 1990, Conference Proceedings, IEEE international Conference on, DOI: 10.1109/ICSMC. 1990.142050, Veröffentlichungsjahr 1990, Seiten 14 bis 19, ist eine Bildverarbeitung unter anderem zur Kantenerkennung bekannt, wobei Gabor-Filter zur Manipulation des Intensitätsbilds verwendet werden. Eine weitere Transformation des gefilterter Bildes mit Hilfe von Klassifizierungsvektoren in die Form eines Wahrscheinlichkeitsbilds, in dem dann über Gradientenbildung Übergänge erkannt werden, ist aus dem Stand der Technik nicht bekannt.In ähnlicher Weise werden gemäß dem Artikel Scharcanski, J.; Venetsanopoulos, A. N.: ”Edge detection of color images using directional operators”; Circuits and Systems for Video Technology, IEEE Transactions on; Volume: 7, Issue: 2; DOI: 10.1109/76.564116; Publication Year: 1997, Page(s): 397–401 Kantenpositionen detektiert, nämlich indem Gradientenmaxima eines Merkmalvektorbildes als Objektrand angesehen werden. Die Merkmale bzw. Komponenten eines Vektors werden dabei durch verschiedene Bild-Filter erzeugt.
-
Für die Anwendung auf allgemein verwendbare kommerzielle Maschinenbildsysteme ist es ferner äußerst wünschenswert oder notwendig, dass die diversen Bildverarbeitungsverfahren, die in dem System enthalten sind, durch relativ ungeübte Anwender für spezielle Bilder eingestellt und beschrieben werden können, d. h. somit für Anwender, die nicht auf dem Gebiet der Bildverarbeitung Erfahrung haben. Es ist somit ein spezielles Problem, ein Maschinenbildverarbeitungssystem zu schaffen, das strukturierte Ränder in einer flexiblen robusten, schnellen und relativ genauen Weise findet, wobei gleichzeitig der Randdetektionsprozess des Maschinenbildbearbeitungssystems mittels der Verwendung einer einfachen Anwenderschnittstelle, die von einem relativ ungeübten Bediener bedienbar ist, angepasst und gesteuert wird.
-
ÜBERBLICK ÜBER DIE ERFINDUNG
-
Folglich wurden strukturbasierte Segmentierungsverfahren und bildspezifische strukturbasierte Segmentierungsverfahren zum Auffinden relativ genauer Positionen für Randlagen an den Grenzen zwischen Gebieten nicht entwickelt. Ferner wurden derartige Verfahren nicht mit einem Verfahren kombiniert, das diese automatisch optimiert und anderen Rand- bzw. Grenzerkennungsoperationen unterordnet gemäß den vernünftig definierten und vorhersagbaren Eigenschaften spezieller Ränder, die in industriellen Inspektionsobjekten zu finden sind. Ferner wurden diese Verfahren nicht durch eine einfache Anwenderschnittstelle oder kompatible ”Randhilfsmittel” unterstützt, die von Bedienern mit wenig oder keinem Verständnis der zugrunde liegenden mathematischen oder Bildverarbeitungsoperationen angewendet werden können.
-
Schließlich unterstützt keine Anwenderschnittstelle eines konventionellen Maschinenbildverarbeitungssystems die Funktion konventioneller Randlokalisierungsoperationen auf Intensitätsgradientenbasis und strukturabhängige Randlokalisierungsoperationen mit im Wesentlichen ähnlichen Randhilfsmitteln und/oder verwandten GUIs, oder kombiniert beide Arten von Operationen zur Verwendung mit einem einzelnen Randhilfsmittel.
-
Da folglich viele Bediener von konventionellen Maschinenbildbearbeitungssystemen eine besser standardisierte Randerkennungsfähigkeit wünschen, die zunehmend robuste Operationen mit minimaler Kenntnis des Anwenders und/oder mit minimalem Eingreifen unterstützt, gibt es einen Bedarf für Systeme und Verfahren, die zusammen mit bestehenden Maschinen Bildverarbeitungssysteme verwendbar sind und die in genaue Weise die Position einer Grenze, d. h. eines Randes, zwischen Gebieten erkennen können, wobei andere Bildeigenschaften als Intensitätsgradienten oder Differenzen verwendet werden, so dass Bilder von Rändern, die nicht gut durch Änderungen in der Intensität definiert sind, genauer detektiert und lokalisiert werden können.
-
Diese Erfindung stellt Verfahren bereit, die in genauer Weise eine Randposition auf der Grundlage einer Anzahl unterschiedlicher Eigenschaften des Bildes lokalisieren.
-
Diese Erfindung stellt Verfahren bereit, die in genauer Weise eine Randposition lokalisieren, die durch eine oder zwei deutlich strukturierte Gebiete abgegrenzt oder definiert sind, als eine einfach integrierte Ergänzung und/oder Alternative zu intensitätsgradientenartigen Randerkennungsoperationen.
-
Diese Erfindung stellt Verfahren bereit, die in genauer Weise eine Randposition lokalisieren, die von einem oder zwei deutlich gefärbten Gebieten oder farblich strukturierten Gebieten eingegrenzt sind, als eine einfach integrierte Ergänzung und/oder Alternative zu intensitätsgradientenartigen Randlokalisierungsoperationen.
-
Diese Erfindung stellt Verfahren bereit, wobei die Entscheidungen und Operationen, die mit dem Auffinden der Lage einer Randposition verknüpft sind, manuell mit Hilfe der GUI, halbautomatisch oder automatisch durchführbar sind.
-
Diese Erfindung stellt Verfahren bereit, die in genauer Weise eine Randposition lokalisieren, die durch ein oder zwei äußerst strukturierte Gebiete abgegrenzt ist, wobei adaptiv gewählte Strukturfilter und/oder Strukturmerkmale angewendet werden.
-
Diese Erfindung stellt Verfahren bereit, die mehrere spezielle interessierende Trainingsgebiete in der Nähe einer Randlokalisierungsoperation definieren, wobei die speziellen Trainingsgebiete verwendet werden, um einen Strukturunterscheidungsfilter und/oder einen Merkmalssatz zu bestimmen, die die Randerkennungsoperationen an einem Rand oder einer Grenze zwischen den Trainingsgebieten am Besten unterstützen.
-
Diese Erfindung stellt Verfahren bereit, die eine fallspezifische kundenorientierte Randerkennungsroutine bestimmen, die mit besonderer Geschwindigkeit und Zuverlässigkeit arbeitet, wenn ähnliche fallspezifische Ränder n Bildern mit ähnlichen Abbildungsbereichen erkannt werden.
-
Diese Erfindung stellt Verfahren bereit, wobei gewisse Entscheidungen und Operationen, die mit der Bestimmung einer fallspezifischen kundenorientierten Randerkennungsroutine verknüpft sind, manuell mit Hilfe der GUI, halbautomatisch oder automatisch durchführbar sind.
-
In dem erfindungsgemäßen Verfahren gemäß Anspruch 1 kann ein Anwender ein Grenzerkennungshilfsmittel, das auch als Randhilfsmittel bezeichnet wird, aufrufen, um eine strukturbasierte Randerkennungsoperation durchzuführen – möglicherweise zusammen mit einer konventionellen Randerkennungsoperation mit Intensitätsgradienten – um ein primäres interessierendes Gebiet zu definieren, das einen zu lokalisierenden Rands innerhalb eines aufgenommenen Bildes eins Objekts einschließt. Das Grenzerkennungshilfsmittel gemäß den erfindungsgemäßen Verfahren ist anwendbar, um Ränder in einem aktuellen Objekt zu lokalisieren und um entsprechende Ränder ähnlicher Objekte in der Zukunft zu lokalisieren.
-
Ein Grenzerkennungshilfsmittel entsprechend den erfindungsgemäßen Verfahren ermöglicht es einem Anwender, die Form, die Lage, die Orientierung, die Größe und/oder die Aufteilung zweier oder mehrerer Paare von interessierenden Teilgebieten, die den zu lokalisierenden Rand begrenzen, zu spezifizieren. Alternativ können die erfindungsgemäßen Maschinen-Bildbearbeitungssystem und Verfahren automatisch betrieben werden, um die interessierenden Teilgebiete zu bestimmen. Wenn herkömmliche Randerkennungsoperationen auf der Basis von Intensitätsgradienten zum Lokalisieren des Randes, der in dem primären interessierenden Gebiet enthalten ist, nicht geeignet sind, dann werden die interessierenden Teilgebiet als Trainingsgebiete verwendet, um einen Satz strukturbasierter Merkmale zu bestimmen, der dann verwendbar ist, um in effizienter Weise die Merkmalswerte von Pixeln auf jeder Seite des eingeschlossene Randes in zwei unterschiedliche Klassen oder Cluster zu separieren. Es wird ein Pseudobild, etwa ein Mitgliedsbild, berechnet, wobei die Merkmalsbilder verwendet werden. Es können dann Gradientenoperationen auf das Mitgliedsbild angewendet werden, um den gewünschten Rand zu erkennen und dessen Lage zu bestimmen. Eine Nachbearbeitung kann auf die Randdaten angewendet werden, wobei Eingangsdaten verwendet werden, die zu bekannten Merkmalen und ungefähren Positionen des Randes in Beziehung stehen, um Ausreißer zu entfernen und anderweitig die Zuverlässigkeit der Randlokalisierung zu verbessern. Diese und weitere Merkmale und Vorteile dieser Erfindung erlauben es relativ unerfahrenen Anwendern, Maschinenbildverarbeitungssysteme für allgemeine Zwecke in einer Weise zu betreiben, die präzise und wiederholbar Ränder in diversen Situationen lokalisiert, in denen herkömmliche Intensitätsgradientenverfahren Ränder unzuverlässig erkennen oder die Ränder gar nicht positionieren können.
-
Diese und weitere Merkmale und Vorteile dieser Erfindung sind in der folgenden detaillierten Beschreibung diverser beispielhafter Ausführungsformen der erfindungsgemäßen System und Verfahren beschrieben oder gehen daraus hervor.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Diverse beispielhafte Ausführungsformen dieser Erfindung werden detailliert mit Bezug zu den folgenden Zeichnungen beschrieben; es zeigen:
-
1 ein beispielhaftes Blockdiagramm eines Bildbearbeitungssystems, das mit den erfindungsgemäßen Randerkennungssystemen und Verfahren anwendbar ist;
-
2 eine detaillierte beispielhafte Ausführungsform diverser Schaltkreise oder Routinen aus 1, die mit den erfindungsgemäßen Randerkennungssystemen und Verfahren anwendbar sind;
-
3 zwei Bilder beispielhafter Objekte mit zwei deutlich strukturierten Gebieten und einer Grenze, die unter Anwendung der erfindungsgemäßen Randhilfsmittel und Randerkennungssysteme und Verfahren detektiert werden kann;
-
4 beispielhafte interessierende Gebiete, die durch die erfindungsgemäßen Systeme und Verfahren erzeugt werden und von diesen anwendbar sind;
-
5 ein Bild einer beispielhaften Ausführungsform eines Pseudobildes mit einer Abtastlinie, die bei diversen Ausführungsformen der erfindungsgemäßen Systeme und Verfahren verwendet wird;
-
6 ein Bild einer beispielhaften Ausführungsform mehrerer Randlagen, die unter Anwendung der erfindungsgemäßen Randerkennungssysteme und Verfahren detektiert werden;
-
7 ein Flussdiagramm, das eine beispielhafte Ausführungsform zum Bestimmen von Randpositionen in einem Bild gemäß dieser Ausführungsform darstellt;
-
8 ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des erfindungsgemäßen Verfahrens zum Bestimmen eines interessierenden Gebiets aus 7 darstellt;
-
9 ein Flussdiagramm, dass detaillierter eine beispielhafte Ausführungsform des erfindungsgemäßen Verfahrens zum Bestimmen von Merkmalsbildern aus 7 darstellt;
-
10 ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des erfindungsgemäßen Verfahrens zum Durchführen einer Merkmalsauswahl aus 7 darstellt;
-
11 ein Flussdiagramm, das eine beispielhafte Ausführungsform eines erfindungsgemäßen Verfahrens zum Bestimmen eines Pseudobildes aus 7 darstellt;
-
12 ein Flussdiagramm, das eine beispielhafte Ausführungsform eines erfindungsgemäßen Verfahrens zum Detektieren und Auswählen von Randpunktlagen aus 7 darstellt;
-
13 ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des erfindungsgemäßen Verfahrens zum Auswählen eines repräsentativen Paares aus interessierenden Gebieten aus 10 darstellt;
-
14 ein Flussdiagramm, das eine beispielhafte Ausführungsform eines erfindungsgemäßen Verfahrens zum Auswählen zulässiger Randpunktlagen aus 12 darstellt;
-
15 ein Flussdiagramm, das eine beispielhafte Ausführungsform eines erfindungsgemäßen Verfahrens zur Verwendung eines Hilfsmittels darstellt, das gemäß den in den 7 bis 14 dargelegten Verfahren definiert ist, um Ränder in einem zweiten Bild zu identitizieren; und
-
16 ein Flussdiagramm, das detaillierter ein beispielhafte Ausführungsform des erfindungsgemäßen Verfahrens zum Auswählen zulässiger Randpunktlagen aus 14 darstellt.
-
DETAILLIERE BESCHREIBUNG BEISPIELHAFTER AUSFÜHRUNGSFORMEN
-
Die Verfahren dieser Erfindung können in Zusammenhang mit den Maschinenbildbearbeitungssystemen und/oder den Belichtungskalibriersystemen und Verfahren angewendet werden, die in dem
US-Patent 6,239,554 B1 offenbart sind.
-
Hinsichtlich der Begriffe ”Grenzen” und ”Ränder”, wie sie hierin verwendet sind, so werden die Begriffe ”Grenzen” und ”Ränder” im Allgemeinen austauschbar in Hinsicht des Geltungsbereiches und der Operationen der erfindungsgemäßen Systeme und Verfahren verwendet. Wenn jedoch der Zusammenhang in eindeutiger Weise dies erkennen lässt, kann der Begriff ”Rand” ferner den Rand an einer Diskontinuität zwischen unterschiedlichen Oberflächenebenen auf einem Objekt und/oder dem Bild dieses Objekts bezeichnen. In ähnlicher Weise kann der Begriff ”Grenze” ferner die Grenze an einer Diskontinuität zwischen zwei Strukturen, zwei Farben, oder zwei anderen relativ homogenen Oberflächeneigenschaften auf einer relativ ebenen Oberfläche eines Objekts und/oder im Bild des Objekts kennzeichnen.
-
Der Einfachheit und Deutlichkeit halber werden die Funktionsprinzipien und Gestaltungsfaktoren dieser Erfindung mit Bezug zu einer beispielhaften Ausführungsform eines Bildverarbeitungssystems gemäß dieser Erfindung erläutert, wie es in 1 dargestellt ist. Die grundlegende Erläuterung der Betriebsweise des in 1 gezeigten Bildverarbeitungssystems ist für das Verständnis und den Entwurf eines beliebigen Bildbearbeitungssystems anwendbar, das die Randdetektionsysteme und Verfahren dieser Erfindung implementiert hat.
-
1 zeigt eine beispielhafte Ausführungsform eines Bildbearbeitungssystems 10 mit einer Ausführungsform der erfindungsgemäßen Randdetektionssysteme und Verfahren. Wie in 1 gezeigt ist, umfasst das Bildbearbeitungs- bzw. Darstellungssystem 10 einen Steuerbereich 100 und eine Darstellungssystemkomponentenbereich 200. Der Darstellungssystemkomponentenbereich 200 umfasst eine Halterung 210 mit einem zentralen durchsichtigen Bereich 212. Ein unter Verwendung des Abbildungssystems 10 abzubildendes Objekt 20 ist auf der Halterung 210 angebracht. Licht, das von einer oder mehreren Lichtquellen 220 bis 224 ausgesendet wird, beleuchtet das Objekt 20. Das Licht von den ein oder mehr Lichtquellen 220 bis 240 tritt nach Beleuchtung des Objekts 20 und möglicherweise vor Beleuchtung des Objekts 20 durch ein Linsensystem 250 und wird von einem Kamerasystem 260 gesammelt, um ein Bild des Objekts 20 zu erzeugen. Das von dem Kamerasystem 260 eingefangene Bild des Objekts 20 wird mit einer Signalleitung 262 an den Steuerbereich 100 ausgegeben. Die Lichtquellen 220–240, die zur Beleuchtung des Objekts 20 verwendet werden, umfassen ein Halterungslicht 220, ein koaxiales Licht 230 und ein Oberflächenlicht 240, etwa ein Ringlicht oder ein programmierbares Ringlicht, die jeweils mit dem Steuerbereich 100 über Verbindungsleitungen oder Busse 221, 231 und 241 verbunden sind.
-
Der Abstand zwischen der Halterung 210 und dem Kamerasystem 260 kann eingestellt werden, um den Brennpunkt des Bildes des Objekts 20, das von dem Kamerasystem 260 aufgenommen wird, zu ändern. Insbesondere ist in diversen beispielhaften Ausführungsformen des Darstellungssystems 10 die Position des Kamerasystems 20 entlang einer vertikalen Achse relativ zu einer festen Halterung 210 veränderbar. In anderen diversen beispielhaften Ausführungsformen des Darstellungssystems 10 ist die Position der Halterung 210 entlang der vertikalen Achse relativ zu einem fixierten Kamerasystem 260 änderbar. In weiteren diversen beispielhaften Ausführungsformen des Darstellungssystems 10 sind die vertikalen Positionen des Kamerasystems 260 und der Halterung 210 veränderbar, um den Brennpunktbereich des Darstellungssystems 10 zu maximieren.
-
Wie in 1 gezeigt ist, umfasst eine beispielhafte Ausführungsform des Steuerbereichs 100 eine Eingabe/Ausgabeschnittstelle 110, eine Steuerung 120, einen Speicher 130 und einen Generator 150 zum Erzeugen eines interessierenden Gebiets, und eine Stromversorgung 100 mit einem Beleuchtungsstromversorgungsbereich 191, die jeweils durch einen Daten/Steuerbus 140 oder durch direkte Verbindung zwischen den diversen Elementen untereinander verbunden sind. Der Speicher 130 umfasst einen Videohilfsmittelspeicherbereich 131, einen Filterspeicherbereich 132 und einen Teilprogrammspeicherbereich 133, die ebenso durch den Daten/Steuerbus 140 oder durch direkte Verbindung untereinander verbunden sind. Die Verbindungsleitungen oder Busse 221, 231 und 241 des Halterungslichts 220, des koaxialen Lichts 230 und des Oberflächenlichts 240 sind jeweils mit dem Beleuchtungsstromversorgungsbereich 191 verbunden. Die Signalleitung 262 von dem Kamerasystem 260 ist mit der Eingabe/Ausgabeschnittstelle 110 verbunden. Ferner kann eine Anzeige 102 mit der Eingabe/Ausgabeschnittstelle 110 über eine Signalleitung 103 verbunden werden. Ein oder mehrere Eingabeelemente 104 können über eine oder mehrere Signalleitungen 105 angeschlossen werden. Die Anzeige 102 und die ein oder mehrere Eingabeelemente 104 können verwendet werden, um Teilprogramme zu betrachten, zu erzeugen und/oder zu modifizieren, um die von dem Kamerasystem 260 eingefangenen Bilder zu betrachten und/oder um direkt die Darstellungssystemkomponenten 200 zu steuern. Es sollte jedoch beachtet werden, dass in einem vollständig automatisierten System mit einem vordefinierten Teilprogramm die Anzeige 102 und/oder die ein oder mehreren Eingabeelemente 104 und die entsprechenden Signalleitungen 103 und/oder 105 weggelassen werden können.
-
Wie in 1 gezeigt ist, umfasst das Darstellungssystem 10 ferner eine Analyseschaltung oder Routine 310 für gefilterte Bilder, eine fallspezifische Filterauswahlschaltung oder Routine 350, eine Pseudobilderzeugungsschaltung oder Routine 360, eine Randpunktanalyseschaltung oder Routine 370, eine Grenzlokalisierungs- und Verfeinerungsschaltung oder Routine 380 und eine optionale Randmodusbestimmungsschaltung oder Routine 300, die jeweils durch den Daten/Steuerbus 140 oder durch direkte Verbindungen untereinander verbunden sind.
-
Der Speicherbereich 130 speichert Daten, die zum Betrieb der Darstellungssystemkomponenten 200 zum Einfangen eines Bildes des Objekts 20 nutzbar sind, so dass das eingespeiste Bild des Objekts 20 gewünschte Bildeigenschaften aufweist. Der Speicherbereich 130 speichert ferner Daten, die zum Betrieb des Darstellungssystems anwendbar sind, um diverse Inspektions- und Messvorgänge an den eingefangenen Bildern manuell oder automatisch durchzuführen, und um die Ergebnisse mittels der Eingabe/Ausgabeschnittestelle 110 auszugeben. Der Speicher 130 enthält ferner Daten, die eine grafische Anwenderschnittstelle definieren, die mittels der Eingabe/Ausgabeschnittstelle 110 betreibbar ist.
-
Der Videohilfsmittelspeicherbereich 131 umfasst Daten, die diverse Videohilfsmittel definieren, die in Verbindung mit der grafischen Anwenderschnittstelle verwendbar sind, und insbesondere ein oder mehrere Rand- oder Grenzhilfsmittel, die in Verbindung mit dem Generator zum Erzeugen eines interessierenden Bereichs 150 verwendbar sind, um im Speicher Daten zu definieren und zu speichern, die mit einer Randlokalisierungsoperation in einem interessierenden Gebiet in dem eingefangenen Bild verknüpft sind. Ein beispielhaftes Rand/Grenzdetektionshilfsmittel und die damit verknüpften Daten werden detaillierter im Folgenden mit Bezug zu den 3 und 4 beschrieben. Der Filterspeicherbereich 132 umfasst Daten, die diverse Bildfiltervorgänge definieren, die in den erfindungsgemäßen Systemen und Verfahren anwendbar sind, wie dies detaillierter später beschrieben wird. Der Teilprogrammspeicherbereich 133 umfasst Daten, die diverse Operationen definieren, die nützlich sind, um eine Sequenz von Operationen oder Routinen für eine anschließende automatische Funktionsweise des Darstellungssystems 10 zu schaffen und zu speichern.
-
Die Analyseschaltung oder Routine 310 für das gefilterte Bild verwendet diverse mögliche bzw. Kandidatenfilter, um ein strukturiertes Eingabebild in einem aktuellen interessierenden Gebiet zu modifizieren und/oder zu analysieren, und bestimmt auf der Grundlage der Modifikationen und/oder der Analyse Ergebnisse für das gefilterte Bild. Die Ergebnisse über das gefilterte Bild sind verwendbar, um zu bestimmen, welche der Kandidatenfilter am Besten die Lage eines Randes in dem interessierenden Gebiet herausheben oder isolieren kann. Die fallspezifische Filterauswahlschaltung oder Routine 350 wählt die fallspezifischen Filter aus, die am Besten die Lage des Randes in dem interessierenden Gebiet auf der Grundlage diverser Ergebnisse des gefilterten Bildes betonen oder isolieren. Die fallspezifische Filterauswahlschaltung oder Routine 350 kann ferner die fallspezifische Filterauswahl in einem oder mehreren Bereichen des Speichers 130 aufzeichnen.
-
Die Pseudobilderzeugungsschaltung oder Routine 360 erzeugt ein Pseudobild in dem interessierenden Gebiet auf der Grundlage der ausgewählten fallspezifischen Filter. Das Pseudobild betont oder isoliert die Lage des Randes relativ zu den verborgenen Eigenschaften des strukturierten Randes in dem Eingabebild. Die Randpunktanalyseschaltung oder Routine 370 wird dann auf das Pseudobild des interessierenden Gebiets angewendet, um einen oder mehrere Randpunkte in dem Pseudobild abzuschätzen. Die Randpunktanalyseschaltung oder Routine 370 kann ferner Operationen ausführen, um eine anfängliche Randpunktabschätzung auf der Grundlage zusätzlicher Informationen zu verfeinern. Die Randpunktanalyseschaltung oder Routine 370 kann ferner einen oder mehrere Randdetektionsparameter, die mit den abgeschätzten Randpunkten verknüpft sind, in einem oder mehreren Bereichen des Speichers 130 aufzeichnen.
-
Die Grenzlokalisier- und Verfeinerungsschaltung oder Routine 380 analysiert mehrere abgeschätzte Randpunkte, um zu bestimmen, ob diese den Kriterien für einen zuverlässigen Rand entsprechen. Die Randlokalisier- und Verfeinerungsschaltung oder Routine 380 steuert ebenso die Verfeinerung oder die Eliminierung von störenden Randpunkten und bestimmt letztlich Gesamtrandlokalisierungsdaten auf der Grundlage der zuverlässigen Randpunkte. Die Grenzlokalisier- und Verfeinerungsschaltung oder Routine 380 kann ferner die Randlokalisierungsdaten in einem oder mehreren Bereichen des Speicher 130 aufzeichnen oder diese mittels der Eingabe/Ausgabeschnittstelle 110 ausgeben.
-
Die Randmodusbestimmungsschaltung oder Routine 300 kann ein optionales Element des Steuersystembereichs 100 sein. Es sollte beachtet werden, dass der Steuersystembereich 100 ferner bekannte Schaltungen oder Routinen aufweist, um bekannte Randdetektionsoperationen an eingegebenen Bildern, die von dem Darstellungssystem 10 aufgenommen worden sind, auszuführen. Derartige bekannte Randdetektionsschaltungen oder Routinen können in die Randpunktanalyseschaltung oder Routine 370 und/oder die Grenzlokalisier- und Verfeinerungsschaltung oder Routine 380 beispielsweise implementiert sein. Abhängig von dem Bereich der Funktion der diversen Elemente, etwa den Randhilfsmitteln in dem Videospeicherbereich 131, dem Generator zum Erzeugen eines interessierenden Gebiets 150, der Randpunktanalyseschaltung oder Routine 370 und der Grenzlokalisier- und Verfeinerungsschaltung oder Routine 380, können diese Elemente unabhängig arbeiten, um zu bestimmen, ob ein gegebenes interessierendes Gebiet geeignet mittels einer Randdetektion analysiert wird, die auf das eingegebene Bild angewendet wird, oder einer Randdetektion, die auf ein Pseudobild angewendet ist. Wenn jedoch derartige Elemente nicht unabhängig bestimmen können, ob ein gegebenes interessierendes Gebiet geeignet mittels einer Randdetektion, die auf das eingespeiste Bild oder einer Randdetektion, die auf ein Pseudobild angewendet wird, analysiert wird, kann die Randmodusbestimmungsschaltung oder Routine 390 vorgesehen sein, um den geeigneten Funktionsmodus für die diversen anderen Elemente, die die Randdetektionsoperationen durchführen, zu bestimmen.
-
2 zeigt eine detaillierte beispielhafte Ausführungsform diverser Schaltungen oder Routinen des Darstellungssystems 10, wie dies zuvor mit Bezug zu 1 beschrieben ist. Wie in 2 gezeigt ist, umfasst die Analyseschaltung oder Routine 310 für das gefilterte Bild eine Kandidatenfilterauswahlschaltung oder Routine 311, eine Merkmalsbilderzeugungsschaltung oder Routine 312, eine Schaltung oder Routine 313 zum Erzeugen von interessierenden Gebieten, und eine Schaltung oder Routine 314 zum Vergleichen von interessierenden Gebieten, die jeweils durch den Daten/Steuerbus 140 oder durch direkte Verbindungen untereinander verbunden sind. Die Randpunktanalyseschaltung oder Routine 370 umfasst eine Abtastzahlenbestimmungsschaltung oder Routine 377, eine Randpunktdetektionsschaltung oder Routine 378 und eine Randpunktverfeinerungsschaltung oder Routine 379, die ebenso jeweils durch den Daten/Steuerbus 140 oder durch direkte Verbindungen untereinander verbunden sind. Die Grenzlokalisier- und Verfeinerungsschaltung oder Routine 380 umfasst eine Formanalyseschaltung oder Routine 381, eine Ausreißereliminierschaltung 382 und eine Lagebestimmungsschaltung 383, die ebenso durch den Daten/Steuerbus 140 oder durch direkte Verbindungen untereinander verbunden sind. Die Randmodusbestimmungsschaltung oder Routine 390 umfasst eine Randhilfsmittelinterpretierschaltung oder Routine 391 und eine Schaltung oder Routine 392 zum Analysieren eines interessierenden Gebiets, die ebenso durch den Daten/Steuerbus 140 oder durch direkte Verbindungen untereinander verbunden sind.
-
In diversen beispielhaften Ausführungsformen der Schaltung oder Routine 310 zur Analyse des gefilterten Bildes funktionieren die Elemente 311–314 wie folgt:
Die Kandidatenfilterauswahlschaltung oder Routine 311 wählt den Satz von Kandidatenfiltern aus, die auf das eingegebene Bild angewendet werden, um Merkmalsbilder oder dergleichen entsprechend den Kandidatenfiltern zu erhalten. Die Kandidatenfilter werden aus dem Satz an Filtern, der in dem Filterspeicherbereich 132 enthalten ist, ausgewählt, der in einer beispielhaften Ausführungsform eine oder mehrere vorbestimmte Gruppen mit Kandidatenfiltern beinhaltet. Jede derartige Gruppe umfasst Filter, die mit dem Verbessern der Randdetektion und Lokalisierung für Bilder verknüpft sind, die einen speziellen Satz an Eigenschaften um deren zu detektierenden Ränder herum aufweisen. Die Kandidatenfilterauswahlschaltung oder Routine 311 wählt spezielle Kandidatenfilter in Abhängigkeit von den Eigenschaften des eingegebenen Bildes aus. Zu derartigen Eigenschaften können beispielsweise gehören, ob es eine deutliche Struktur auf einer oder beiden Seiten des zu detektierenden Randes gibt, ob das Bild ein Grauwertbild oder ein Farbbild ist, und dergleichen, wie dies nachfolgend beschrieben wird. Für diverse Bilder kann die Kandidatenfilterauswahlschaltung oder Routine 311 alle Filter in dem Filterspeicherbereich 132 auswählen. In diversen beispielhaften Ausführungsformen wählt die Kandidatenfilterauswahlschaltung oder Routine 311 die Kandidatenfilter automatisch aus, und in anderen beispielhaften Ausführungsformen stützt sich die Auswahl auf eine Eingabe des Anwenders.
-
In diversen beispielhaften Ausführungsformen schließen die vorbestimmten Teilmengen an Kandidatenfilter, die durch die Kandidatenfilterauswahlschaltung oder Routine 311 auswählbar sind, mit ein: eine Teilmenge mit Filter, die ein oder mehrer Merkmalsbilder auf der Grundlage des Gradienten eines Sobel-Operators etablieren, eine Teilmenge mit Filtern, die ein oder mehrere Merkmalsbilder auf der Grundlage von Law-Filtern, d. h. einem Satz von 25 Filtern mit 5×5 (oder optional 3×3) Pixelmasken oder Fenstern, etablieren, und einer Teilmenge mit Filtern, die ein oder mehrere Merkmalsbilder auf der Grundlage von Gabor-Filtern etablieren. Der Erfinder hat den Sobel-Gradientenfilter mit Erfolg angewendet, wenn der zu detektierende Rand eine deutliche Struktur auf einer Seite des Randes und eine unmerkliche Struktur auf der anderen Seite des Randes aufweist. Der Erfinder hat Law-Filter mit Erfolg verwendet, wenn der zu detektierende Rand deutliche und feine Strukturen an beiden Seiten des Randes aufweist. Der Erfinder hat Gabor-Filter mit Erfolg verwendet, wenn der zu detektierende Rand deutliche und feine Strukturen und/oder richtungsabhängige Merkmale an beiden Seiten des Randes aufweist. Ferner hat der Erfinder zur Detektierung der Grenze zwischen Farbgebieten in Farbbildern erfolgreich Filter zur laufenden Durchschnittsbildung verwendet.
-
Diese diverse Filterteilmengen neigen dazu, dass sie mit entsprechend kurzer, mittlerer und langer Verarbeitungszeit zu betreiben sind. Daher werden diese entsprechend ausgewählt, so dass sie an die entsprechenden Strukturbedingungen in einem speziellen interessierenden Gebiet angepasst sind. In diversen beispielhaften Ausführungsformen umfasst die Kandidatenfilterauswahlschaltung oder Routine 331 Operationen, die ähnlich sind zu, oder wechselwirken mit, der Schaltung oder Routine 392 zur Analyse des interessierenden Gebiets, die zuvor beschrieben ist, um eine oder mehrere Struktureigenschaften in Bewertungsgebieten auf beiden Seiten des Randes in dem interessierenden Gebiet zu messen. Die Kandidatenfilterauswahlschaltung oder Routine 311 vergleicht dann die resultierenden Strukturmessung mit vorbestimmten Kriterien, die mit den diversen Kandidatenfiltergruppen verknüpft sind, und wählt die geeignete vorbestimmte Kandidatenfilterteilmenge aus. Wenn es beispielsweise einen Wert mit geringer Varianz auf einer Seite der Grenze gibt, kann der zuvor erläuterte Sobel-artige Filter verwendet werden. Wenn eine richtungsabhängige Struktureigenschaft detektiert wird, können Gabor-Filter eingesetzt werden. Wenn eine nichtrichtungsabhängige Struktur an beiden Seiten der Grenze detektiert wird, können Law-Filter verwendet werden. Farbfilter können für Farbbilder verwendet werden, usw. Verfahren zur Charakterisierung diverser Strukturen sind dem Fachmann bekannt und werden ebenso in den hierin zitierten Referenzen diskutiert. Anzumerken ist, dass jeder bekannte oder später entwickelte Filter und/oder Satz an Bildfilterschritten in diversen Ausführungsformen der erfindungsgemäßen Randerkennungssysteme und Verfahren anwendbar ist.
-
Ferner sollte beachtet werden, dass der Begriff ”Kandidatenfilter” und ”ausgewählte Filter” oder ”fallspezifische Filter” wie sie hierin in diversen beispielhaften Ausführungsformen verwendet werden, alle notwendigen Funktionen oder Komponenten, die zur Erzeugung eines gefilterten Bildes unter Anwendung einer speziellen Filterfunktion, eines Merkmalsbilds, das aus der Anwendung einer lokalen Energiefunktion auf ein gefiltertes Bild, eines normierten Merkmals des Bilds auf der Basis des Merkmalbildes oder dergleichen erforderlich sind, umfassen sollte. Miteingeschlossen sollten ferner die Funktionen oder Operationen sein, die notwendig sind, um jegliche bisher bekannte oder später entwickelte Metrik zu bestimmen, die zum Charakterisieren eines der zuvor genannten Arten von Bildern geeignet ist. Allgemeiner gesagt, die Begriff Kandidatenfilter und ausgewählter Filter umschließen nicht nur eine spezielle Filterfunktion, sondern beliebig einzigartige Funktionen oder Komponenten, die mit dieser speziellen Filterfunktion verknüpft sind, die von der Schaltung 310 zur Analyse des gefilterten Filters und/oder der Merkmalsbilderzeugungsschaltung 312 und/oder der Schaltung oder Routine 310 zum Erzeugen eines interessierenden Gebiets in diversen beispielhaften Ausführungsformen verwendet werden muss, um ein oder mehrere gefilterte Teilbilderergebnisse entsprechend zu dieser speziellen Filterfunktion zu erzeugen. Somit beziehen sich die Begriffe Kandidatenfilter und ausgewählter Filter, wie sie hierin verwendet sind, auf alle einzigartigen Elemente, die erforderlich sind, um ein entsprechendes gefiltertes Teilbildergebnis entsprechen zu einer speziellen Filterfunktion, wie sie nachfolgend beschrieben wird, zu bestimmen. Aufgrund ihres Bereiches in diversen beispielhaften Ausführungsformen werden Filter und Gruppen aus Filtern manchmal auch als Filterverfahren bezeichnet.
-
Die Merkmalsbilderzeugungsschaltung oder Routine 312 erzeugt zumindest ein Merkmalsbild oder dergleichen auf der Grundlage der ausgewählten Kandidatenfilter. Die Merkmalsbilderzeugungsschaltung 312 wird auf das ursprüngliche Eingangsbild entsprechend dem interessierenden Gebiet, das von dem Generator für ein interessierendes Gebiet 150 erzeugt wird, angewendet. In einer beispielhaften Ausführungsform wird ein einzelnes Merkmalsbild Fk für jeden Kandidatenfilter k erzeugt. Ein Merkmalsbild wird im Wesentlichen durch Filtern der eingespeisten Bilddaten mit einer speziellen Filterfunktion und Anwenden einer lokalen Energiefunktion auf die gefilterten Bilddaten erzeugt. Die lokale Energiefunktion richtet im Wesentlichen die Bildsignale, die in den gefilterten Bilddaten repräsentiert sind, gleich und glättet diese. Beispielhafte lokale Energiefunktionen enthalten das Summieren der Größen der gefilterten Bildpixelwerte in einein Fenster, das jedes Pixel umgibt, um jeden Pixelwert des Merkmalbildes zu bestimmen, und das Summieren der Quadrate der gefilterten Bildpixelwerte in einem Fenster, das jedes Pixel umgibt, um jeden Pixelwert des Merkmalbildes zu bestimmen.
-
Ferner kann in einer beispielhaften Ausführungsform jedes Merkmalsbild so normiert werden, dass die gefilterten Teilbildergebnisse entsprechend zu jedem Kandidatenfilter einfach vergleichbar sind, wie dies näher im Anschluss beschrieben wird. In derartigen Fällen ist das normierte Merkmalsbild dann das Merkmalsbild, das durch das Symbol Fk bezeichnet wird. Normierungsverfahren sind im Stand der Technik bekannt. Zum Beispiel können die Pixelwerte jedes Merkmalbildes auf einen Bereich normiert werden, der einen Mittelwert Null und eine Varianz eins aufweist. Im Allgemeinen kann jede geeignete bekannte oder später entwickelte Normierungsmethode verwendet werden.
-
Die Schaltung oder Routine 313 zum Erzeugen interessierender Gebiete lässt einen automatisierten Prozess zu, oder ermöglicht es dem Anwender, diverse interessierende Gebiete in der Nähe des interessierenden Bereichs zu definieren. Die Schaltung oder Routine 313 zur Erzeugung interessierender Gebiet bestimmt ferner ”gefilterte Teilbildergebnisse” auf der Grundlage der interessierenden Gebiete. Ein gefiltertes Teilbildergebnis wird für jedes interessierende Gebiet in jedem Merkmalsbild Fk, das von der Merkmalsbilderzeugungsschaltung oder Routine 312 erzeugt wird, bestimmt. Jedes gefilterte Teilbildergebnis in einem interessierenden Gebiet kann in diversen beispielhaften Ausführungsformen ein gefiltertes Bild, ein Merkmalsbild, das aus der Anwendung einer lokalen Energiefunktion auf ein gefiltertes Bild entsteht, ein normiertes Merkmalsbild oder dergleichen oder eine jetzt bekannte oder später entwickelte Metrik, die für das Charakterisieren eines der vorhergehenden Arten von Bildern oder deren bekannten Variationen sein. In einer beispielhaften Ausführungsform ist das gefilterte Teilbildergebnis in einem interessierenden Gebiet der Durchschnittswert der Pixelwerte eines normierten Merkmalbilds Fk in diesem interessierenden Gebiet. Ein gefiltertes ”Teil-”Bildergebnis sollte als ein ”Zwischen-”Ergebnis betrachtet werden, das anwendbar ist, um ein oder mehrere ”endgültige” Ergebnisse für das gefilterte Bild, die der Einfachheit halber auch als ”Bildfilterungsergebnisse” bezeichnet werden, für ein gefiltertes Bild oder Merkmalsbild zu bestimmen. Ein Bildfilterungsergebnis für ein gefiltertes Bild oder ein Merkmalsbild zeigt im Wesentlichen die Möglichkeit dieses Bildes an, eine gemäß hierin beschriebenen Systemen und Verfahren zu detektierende Grenze hervor zu heben oder zu isolieren.
-
Die Schaltung oder Routine 313 zum Erzeugen von interessierenden Gebieten erzeugt die interessierenden Gebiete auf der Grundlage der Daten, die mit einem entsprechend angeordneten Randhilfsmittel und/oder einer Operation des Generators zum Erzeugen eines interessierenden Bereichs 150 verknüpft sind. Die interessierenden Gebiete sind die gleichen oder kongurent für jedes Merkmalsbild Fk. In einer beispielhaften Ausführungsform sind die interessierenden Gebiet in einem oder mehreren Paaren definiert, die symmetrisch um einen Mittelpunkt ungefähr an den an dem interessierenden Bereich zu lokalisierenden Rand angeordnet sind. Der Mittelpunkt und zentrale Punkt kann der Punkt P0 sein, der anschließend beschrieben wird. Allgemein gesagt, die interessierenden Gebiete umschließen zumindest ein Paar aus Gebieten, das an gegenüberliegenden Seiten der Grenze in dem interessierenden Bereich liegt. Ein interessierendes Gebiet sollte groß genug sein, um alle typischen Struktureigenschaften, die auf einer Seite der Grenze und relativ nahe zur Grenze in dem interessierenden Bereich auftreten, einzufangen. Das Erzeugen mehrerer interessierender Gebiete, die die Grenze und/oder den zentralen Punkt auf der Grenze in dem interessierenden Bereich umgeben, hat zwei Vorteile. Erstens, wenn es Strukturanomalien, etwa Kratzer oder Schmutz in dem interessierenden Bereich gibt, sollten einige der interessierenden Gebiete frei von Anomalien sein. Zweitens, viele Gebiete können automatisch in einer generischen Weise erzeugt werden, wobei eine sehr gute Aussicht besteht, dass die Schaltung oder Routine 134 zum Vergleichen von interessierenden Gebieten ein gut geeignetes repräsentatives Paar aus interessierenden Gebieten findet, wie dies nachfolgend beschrieben wird. Beispielhafte interessierende Gebiete sind auch mit Bezug zu 4 im Folgenden gezeigt und erläutert.
-
Die Schaltung oder Routine 314 zum Vergleichen von interessierenden Gebieten vergleicht die Teilergebnisse für das gefilterte Bild, die zuvor in diversen interessierenden Gebieten bestimmt wurden, um das repräsentative Paar interessierenden Gebieten herauszusuchen, das am Besten die Strukturunterschiede auf jeder Seite der Grenze wiedergibt. In einer beispielhaften Ausführungsform bestimmt die Schaltung oder Routine 314 zum Vergleichen von interessierenden Gebieten der Unterschied in einer Merkmalsbildmetrik, die in jedem symmetrisch angeordneten Paar aus interessierenden Gebieten mittels der Schaltung oder Routine 313 zum Erzeugen interessierende Gebiete bestimmt wird. Die Differenz wird für jedes Paar aus interessierenden Gebieten in jedem Merkmalsbild Fk bestimmt. Die Merkmalsbildmetrik kann beispielsweise der zuvor beschriebene Durchschnittswert der Pixelwerte eines normierten Merkmalsbildes Fk in jedem interessierenden Gebieten sein. Die Schaltung oder Routine 314 zum Vergleichen von interessierenden Gebieten nimmt dann das Paar interessierender Gebiete, das die größte Differenz aufweist, als die repräsentativen interessierenden Gebieten (RROI1 und RROI2), die die Strukturunterschiede auf jeder Seite der Grenze am Besten wiedergeben.
-
In einer weiteren beispielhaften Ausführungsform bestimmt die Schaltung oder Routine 314 zum Vergleichen interessierender Gebiete ein zusammengesetztes Werteergebnis für jedes interessierender Gebiete und wählt dann RROI1 und RROI2 auf der Grundlage dieses zusammengesetzten Wertes. Jedes zusammengesetzte Werteresultat enthält Teilergebnisse jedes der Merkmalsbilder Fk. In einer beispielhaften Ausführungsform wird ein als der Fisherabstand oder das Fisherkriterium bekannte Kriterium angewendet, um die Teilergebnisse der gefilterten Bilder zu vergleichen, die in jedem symmetrisch angeordneten Paar aus interessierenden Gebieten in jedem der Merkmalsbilder Fk einzeln bestimmt wurden. Der Fisherabstand ist ein Quotient mit einem Zähler, der die quadratische Differenz zwischen den Mittelwerten zweier Elemente ist und mit einem Nenner, der die Summe der Varianzen der beiden Elemente ist. Zunächst wird der Fisherabstand für zwei Elemente bestimmt, die die Merkmalsbildpixeldaten in den zwei interessierenden Gebieten für jedes Merkmalsbild FR sind. Zum zweiten wird dann das zusammengesetzte Wertergebnis für jedes interessierender Gebiete als die Summe der Fisherabstände für dieses Paar interessierender Gebiete für alle Merkmalsbilder Fk bestimmt. Das Paar interessierender Gebiete mit dem größten zusammengesetzten Wertepaar werden als die repräsentativen interessierenden Gebiete RROI1 und RROI2 ausgewählt. Es sollte beachtet werden, dass eine analoge Fisherabstandsprozedur auf die zugrunde liegenden Merkmalsbildpixeldaten angewendet werden kann, ohne einzelne Fisherabstände für jedes Merkmalsbild Fk zu bestimmen.
-
Wenn die Schaltung oder Schaltung oder Routine 314 zum Vergleichen von interessierenden Gebieten das repräsentative Paar interessierender Gebiete RROI1 und RROI2 auswählt, wählt die fallspezifische Filterauswahlschaltung oder Routine 350, die zuvor mit Bezug zu 1 beschrieben ist, die besten fallspezifischen Filter aus den Kandidatenfiltern aus. Derartige Filter werden hierin als ausgewählte Filter bezeichnet. Die besten fallspezifischen Filter sind die Filter, die am Besten die Lage des Randes in dem aktuellen interessierenden Bereich hervorheben oder isolieren.
-
Es sollte beachtet werden, dass ein spezieller Kandidatenfilter einen speziellen erzeugten Merkmalsbild Fk und damit verknüpften Teilergebnissen für das gefilterte Bild und dem Ergebnis für das gesamte gefilterte Bild entspricht. Ferner sollte beachtet werden, dass ein ausgewählter Filter J effektiv zur gleichen Zeit ausgewählt wird, in der ein ausgewähltes Merkmalsbild Fj ausgewählt wird. Somit verfeinert in diversen beispielhaften Ausführungsformen die fallspezifische Filterauswahlschaltung oder Routine 350 die Kandidatenfilterauswahl durch Auswählen einer Teilmenge an Merkmalsbildern Fj aus der Kandidatenansammlung an Merkmalsbildern Fk. Die Auswahl beruht auf der Betrachtung der Bildfilterergebnisse entsprechend zu RROI1 und RROI2 der Kandidatenmerkmalsbilder Fk.
-
Die Auswahl wird getroffen, um die Anzahl der Filter zu reduzieren, die auf das Originalbild oder ähnliche Bilder anzuwenden sind, um ein Pseudobild zu erzeugen, das für die Randerkennung nützlich ist. Das Auswählen lediglich der am nützlichsten Filter führt zu einer rascheren Randerkennung und/oder verbessert die Genauigkeit und Zuverlässigkeit beim Detektieren des Randes unter Anwendung der erfindungsgemäßen Systeme und Verfahren. Im Allgemeinen werden Kandidatenfilter eliminiert, die in nicht in deutlicher Weise Unterschiede in den Strukturen auf zwei gegenüberliegenden Seiten der Grenze des interessierenden Bereichs betonen. Insbesondere werden Kandidatenfilter eliminiert, die nicht in deutlicher Weise Unterschiede in den Strukturen in dem RROI1 und RROI2 betonen.
-
In einer beispielhaften Ausführungsform hat die Schaltung oder die Routine 314 zum Vergleichen von interessierenden Gebieten den repräsentativen Fisherabstand für das RROI1 und RROI2 (der R-Fisherabstand) von jedem Kandidatenmerkmalsbild Fk bestimmt, wie dies zuvor dargestellt ist. In einem derartigen Falle wählt die fallspezifische Filterauswahlschaltung oder Routine 350 Merkmalsbilder Fj, die einen signifikanten R-Fisherabstand aufweisen, da ein signifikanter R-Fisherabstand einem Filter entspricht, der zur Betonung der Grenzen in dem interessierenden Bereich nützlich ist. In einer beispielhaften Ausführungsform werden die R-Fisherabstände aller Kandidatenbilder Fk verglichen und der maximale R-Fisherabstand wird bestimmt. Dann werden alle Merkmalsbilder/Filter mit einem R-Fisherabstand größer als 50% des maximalen R-Fisherabstandes als die ausgewählten Merkmalsbilder Fj und/oder ausgewählten Filter j gewählt. In einer Erweiterung dieser Ausführungsform werden nicht mehr als die besten fünf der zuvor ausgewählten Filter als die ausgewählten Filter beibehalten. Es ist erkannt worden, dass die eben erläuterte Auswahltechnik keine optimale Teilmenge an Merkmalsbildern Fj und/oder ausgewählten Filtern j erzeugt. Um im Allgemeinen eine ”beste” Teilmenge an Merkmalsbildern zu erhalten, sind aufwendige Verfahren notwendig, die prozessorleistungs- und/oder zeitaufwendig sind. Daher sind aufwendige Optimierungsverfahren momentan in Anwendungen nicht wünschenswert, für die Randerkennungssysteme und Verfahren gemäß dieser Erfindung beabsichtigt sind.
-
Es sollte beachtet werden, dass jedes bekannte oder später entwickelte Filterauswahlverfahren verwendet werden könnte, um die Teilmenge an Merkmalsbildern Fj und/oder ausgewählten Filtern j auszuwählen. Ferner sollte beachtet werden, dass, obwohl die Teilmenge an Merkmalsbildern Fj kleiner als der Kandidatensatz an Merkmalsbildern Fk ist, die Teilmenge an Merkmalsbildern Fj gleich dem Kandidatensatz an Merkmalsbildern Fk sein könnte. Es sollte ebenso beachtet werden, dass, wenn die fallspezifische Filterauswahlschaltung oder Routine 350 die Teilmenge an Merkmalsbildern Fj und/oder ausgewählten Filtern j ausgewählt hat, die Schaltung oder Routine 314 zum Vergleichen von interessierenden Gebieten in optimaler Weise verwendbar ist, um erneut die RROI1 und RROI2 zu bestimmen, wobei dieses Mal lediglich die ausgewählten Merkmalsbilder Fj zugrunde liegen. Es könnte ein unterschiedliches RROI1 und RROI2 als Ergebnis auftreten und sollte somit das RROI1 und RROI2 sein, das für anschließende fallspezifische Operationen verwendet wird.
-
Es sollte ebenso beachtet werden, dass es eine Vielzahl alternativer Merkmalsauswahlverfahren gibt, die in den erfindungsgemäßen Systemen und Verfahren anwendbar sind, wie dies der Fachmann leicht nachvollziehen kann. Ferner sind Merkmalsextrahierverfahren gut bekannte Alternativen zu Merkmalsauswahlverfahren und könnten anstelle oder zusätzlich zu diversen Operationen der fallspezifischen Filterauswahlschaltung oder Routinetreibern 350 und den damit verknüpften Operationen der Elemente 311–314, die zuvor aufgeführt sind, verwendet werden. Vergleiche dazu beispielsweise das Kapitel mit dem Titel Merkmalsextraktion und lineares Abbilden für Signalrepräsentation, in dem Buch „Introduction to Statistica Pattern Recognition”, Keinosuke Fukunaga, Academic, San Diego 1990. Ferner sind Sobel-Filter, Law-Filter, Gabor-Filter, sowie diverse alternative Filter und deren diversen Verwendungszwecke und Implementationen zur Erzeugung gefilterter Bilder, Merkmalsbilder, Bildvektoren, Klassifikationsvektoren, Merkmalsextraktion und Pseudobilder und dergleichen im Stand der Technik gut bekannt. Siehe beispielsweise ”Filtering for Texture Classification: A Comparative Study” IEEE Transactions an Pattern Analysis and Machine Intelligence, Bd. 21, Nr. 4, April 1999; siehe auch allgemein Merkmalsauswahl und Extraktion, Statistica Pattern Recognition, von Andrew Webb mitveröffentlicht in den USA von Oxford University Press Inc., New York 1999; ”Rapid Texture Identification”, Proc. SPIE Conf. Image Processing for Missile Guidance, Seiten 376–380, 1980; und ”Unsupervised Texture Segmentation Using Gabor Filters”, Mustererkennung, Bd. 24, Nr. 12, Seiten 1167–1168, 1991.
-
Obwohl ferner diverse beispielhafte Ausführungsformen der erfindungsgemäßen Systeme und Verfahren hierin zum Bestimmen oder Herausziehen von Bildern, gefilterten Bildern, Merkmalsbildern, und/oder Pseudobildern, sowie zum Bestimmen diverser Teilergebnisse für gefilterte Bilder, Bildfilterergebnisse und Bildmetriken, die zur Evaluaisierung und zum Vergleichen dieser diversen Bildtypen verwendbar sind, beschrieben sind, sollte beachtet werden, dass diese Begriffe sich in diversen Ausführungsformen entsprechend der erfindungsgemäßen Systeme und Verfahren nicht gegenseitig ausschließen. Beispielsweise ist es offensichtlich aus der Natur der mathematischen Transformationen und Algorithmen, die hierin angewendet sind, dass ein Teil eines gefilterten Bildes oder eines Merkmalbildes ebenso operieren oder ableitbar ist, auf bzw. von einem verwandten Teilergebnis eines gefilterten Bildes. Somit werden diese Begriffe in diversen Zusammenhängen benutzt, um diverse Operationen zu beschreiben, diese werden aber nicht absichtlich sich in einem gegenseitig ausschließenden Sinne verwendet. Insbesondere sind diverse Operationen hierin so beschrieben, dass diese ein oder mehrere Merkmalsbilder, Teilergebnisse von gefilterten Bildern, und/oder Bildfilterungsergebnisse bestimmen. Diverse andere Operationen sind so beschrieben, dass diese eine Auswahl auf der Grundlage von oder zwischen den zuvor beschriebenen Bildern und/oder Ergebnissen treffen. Es sollte beachtet werden, dass die Trennungslinie zwischen verwandten Bestimmungs- und Auswahltypen von Operationen im Weitenbereich willkürlich ist. Beispielsweise ist es klar, dass ein einfacheres Merkmalsbild, ein einfacheres Teilergebnis eines gefilterten Bildes und/oder ein einfacheres Bildfilterungsergebnis durch einen verfeinerten Selektor ausgewählt werden könnte, der Mängel des einfacheren Elements kompensiert, um die Aufgaben dieser Erfindung zu erreichen. Andererseits ist es klar, dass ein einfacherer Selektor für besser verfeinerte Merkmalsbilder, Teilergebnisse gefilterter Bilder und/oder Bildfilterergebnisse anwendbar ist, die Mängel des einfacheren Selektors kompensieren, um damit die Aufgaben dieser Erfindung zu erreichen. Somit sollte beachtet werden, dass in diversen beispielhaften Ausführungsformen die diversen Operationen, die mit dem ”Bestimmen” und dem ”Auswählen” verknüpft sind, untereinander ausgetauscht, verbunden oder nicht unterscheidbar sind.
-
Wenn die fallspezifische Filterauswahlschaltung oder Routine 350 die Teilmenge an Merkmalsbildern Fj und/oder ausgewählter Filter j ausgewählt hat, operiert die Pseudobilderzeugungsschaltung oder Routine 360, die zuvor mit Bezug zu 1 beschrieben ist, um damit ein Pseudobild auf der Grundlage der ausgewählten Filter j, die hierin auch als fallspezifische Filter bezeichnet sind, zu erzeugen.
-
In einer beispielhaften Ausführungsform bewirkt die Pseudobilderzeugungsschaltung oder Routine 350, wenn ein Satz normierter Merkmalsbilder Fj momentan nicht erzeugt wird oder nicht von dem Speicher 130 verfügbar ist, dass die Merkmalsbilderzeugungsschaltung oder Routine 312 einen Satz normierter Merkmalsbilder Fj auf der Grundlage der Teilmenge der fallspezifischen Filter j entsprechend zu zuvor beschriebenen Operationen erzeugt. Die Pseudobilderzeugungsschaltung oder Routine 360 bestimmt dann ein Paar von Klassifikationsvektoren CV1 und CV2 entsprechend jeweils zu dem RROI1 und dem RROI2.
-
Der Klassifikationsvektor CV1 kann den Mittelwert der Pixeldaten in dem RROI1 jedes der normierten Merkmalsbilder Fj entsprechend den fallspezifischen Filtern j beinhalten. Somit ist die Dimension von CV1 n, wobei n die Anzahl der durch die fallspezifische Filterauswahlschaltung oder Routine 350 in der zuvor beschriebenen Weise ausgewählten fallspezifischen Filter j ist. CV2 ist ein ähnlicher Vektor, der in ähnlicher Weise auf der Grundlage der Pixeldaten in dem RROI2 jedes der normierten Merkmalsbilder Fj bestimmt ist. Nachdem die Klassifikationsvektoren CV1 und CV2 bestimmt worden sind, erzeugt die Pseudobilderzeugungsschaltung oder Routine 360 da Pseudobild, das beim Ausführen des aktuellen Satzes an Randlageoperationen verwendet wird. Das Pseudobild ist zumindest den zuvor beschriebenen interessierenden Bereich bestimmt. Diese beispielhafte Ausführungsform gründet sich auf das Vergleichen der Daten der normierten Merkmalsbilder Fj mit den Klassifikationsvektoren CV1 und CV2.
-
Es kann ein Klassifizierer von der Pseudobilderzeugungsschaltung oder Routine 360 zur Erzeugung des Pseudobildes verwendet werden. Der Klassifizierer kann ein Datenclusterverfahren sein, wobei in diesem Falle ein Merkmalsvektor, d. h. ein ebenfalls als Pixelmerkmalsvektor bezeichneter Vektor entsprechend zu der räumlichen Lage eines Pixels in dem interessierenden Bereich wird bestimmt, so dass dieser zu einem Cluster oder einem Gebiet gehört, der durch einen Grad der Mitgliedschaft spezifiziert ist. Im hierin verwendeten Sinne beinhaltet ein Pixelmerkmalsvektor (PFV) die Merkmalspixelwerte für eine entsprechende räumliche Lage in jedem der normierten Merkmalsbilder Fj entsprechend zu den fallspezifischen Filtern j. Somit ist die Dimension eines Pixelmerkmalsvektors n, wobei n die Anzahl der durch die fallspezifische Filterauswahlschaltung oder Routine 350 in der zuvor dargestellten Weise ausgewählten fallspezifischen Filter] ist. Des Weiteren sind die Elemente PFVs in ähnlicher Weise wie die Elemente von CV1 und CV2 geordnet und basieren auf dem gleichen zugrunde liegenden Merkmalsbildpixeldaten, beispielsweise normierten Merkmalsbildpixeldaten. Somit können entsprechende Elemente der PFVs und von CV1 und CV2 aussagekräftig verglichen werden.
-
Jede Pixelstelle zumindest des interessierenden Bereichs wird wiederum durch die Pseudobilderzeugungsschaltung oder Routine 360 gewählt. Der Klassifizierer wird von der Pseudobilderzeugungsschaltung oder Routine 360 auf den entsprechenden Pixelmerkmalsvektor angewendet, um zu bestimmen, ob dieser Pixelmerkmalsvektor mehr dem CV1 entsprechend dem RROIi oder mehr dem CV2 entsprechend dem RROI2 entspricht. Beispielsweise kann der euklidische Abstand angewendet werden, um entsprechende ”Abstände” zwischen einem aktuellen PVF und jeweils dem CV1 und CV2 zu bestimmen. Der euklidische Abstand zu dem CV1 oder CV2 ist die Summe der Quadrate der Differenzen zwischen entsprechenden Elementen des aktuellen PVF und jeweils dem CV1 oder CV2. Je kleiner der euklidische Abstand ist, desto mehr ähneln sich die beiden mittels des euklidischen Abstands verglichenen Vektoren. Auf der Grundlage des euklidischen Abstands oder der Komponentenelemente des euklidischen Abstands wird ein Mitgliedschaftswert bestimmt und dem Pixel des Pseudobilds zugewiesen, das dem aktuell bewerteten Pixelmerkmalsvektor entspricht.
-
In gewissem Sinne zeigt der Pseudobildpixelwert den Grad an, mit welchem das Pixel auf die Seite der Grenze des RROI1 oder auf die Seite der Grenze des RROI2 ”gehört”. In einer beispielhaften Ausführungsform wird jedem Pseudopixel ein Wert zwischen 0.0, was eine vollständige Mitgliedschaft zu der Seite der Seite der Grenze des RROI1 darstellt, und 1.0, das eine vollständige Mitgliedschaft zu der Seite der Grenze des RROI2 darstellt.
-
In einer speziellen Ausführungsform werden die Mitgliedschaftswerte unter Anwendung eines Fuzzyc-c-Klassifizierers, der in der unten beschriebenen Weise modifiziert ist, und auf einem Fuzzy-c-Klassifizierer basiert, wie er in dem Artikel ”FCM: The fuzzy c-Means Clustering Algorithm”, Computers & Geosciences, Bd. 10, Nr. 2–3, Seiten 191–203, 1984, das hiermit durch Bezugnahme mitaufgenommen ist, beschrieben ist, bestimmt. Unter Verwendung der Symbole wie sie in diesem Artikel definiert sind, werden die Klassifiziererparameter festgelegt zu c = 2 (zwei Cluster), m = 2 (Gewichtungsexponent), v = CV1, CV2, wie sie hierin definiert sind (Vektoren von Mittelpunkten), Norm = euklidischer Abstand, n = Anzahl der Daten = Anzahl der Pixel in dem interessierenden Bereich. In einer bevorzugten modifizierten Version dieses Algorithmus gibt es keine Iterationen und das Clusterbilden wird mit anfänglichen Mittelpunkten ausgeführt, die die Cluster V = CV1, CV2 darstellen. Da gutdefinierte Prototyp-Cluster CV1 und CV2 verwendet werden, kann das Clusterbilden nach der ersten Iteration, d. h. der ersten Klassifizierung, beendet werden und es werden dennoch gute Ergebnisse erhalten. Es sollte beachtet werden, dass dieser Parametersatz eine nichtlineare Klassifizierung erzeugt, wobei die Mitgliedschaftswerteänderungen in der Nähe der Grenze hervorgehoben werden.
-
Im Allgemeinen erzeugt dieser Fuzzy-Clusteralogrithmus zwei Mitgliedschaftsbilder: das erste ist der Mitgliedschaftswert jedes Pixels für den Cluster 1 und das zweite ist der Mitgliedschaftswert für jedes Pixel zu dem Cluster 2. Da jedoch die Summe der Mitgliedschaften für jede Pixelstelle in unserem Fall gleich 1 sein muss, sind die Mitgliedschaftsbilder komplementär und es muss lediglich eines davon bestimmt werden.
-
Beachtet werden sollte, dass es eine Vielzahl von Alternativen zum Erzeugen diverser Pseudobilder auf der Grundlage eines Satzes an Merkmalsbildern gibt. Zu derartigen Alternativen gehören alternative Fuzzy-Klassifizierer, neuronale Klassifizierer, ein Modell mit versteckten Kennzeichen oder ein beliebiges anderes bereits bekanntes oder später entwickeltes Verfahren oder ein Algorithmus, der bzw. das zum Erzeugen eines Satzes an Pseudobildpixelwerten zur Verwendung entsprechend dieser Erfindung in der Lage ist. Wenn ferner eine andere Art einer Klassifizierung oder einer Pseudobilderzeugung ausgeführt wird, sollte beachtet werden, dass die Mitgliedschaftsfunktionsoperationen, die zuvor beschrieben sind, durch andere geeignete Operationen zum Anwenden von Gewichtungsfaktoren auf die diversen Bildfilterungsergebnisse oder Merkmalsbildergebnisse entsprechend zu jeder Pixelstelle ersetzt werden können, um ihnen größere oder kleinere Werte auf der Grundlage ihrer Ähnlichkeit zu den Eigenschaften von RROI1 oder RROI2 zuzuweisen. Für den Fachmann sind diverse Alternativen ersichtlich, die mit dem erfindungsgemäßen System und den Verfahren anwendbar sind.
-
Wenn die Pseudobilderzeugungsschaltung oder Routine 360 ein aktuelles Pseudobild erzeugt hat, kann die Randpunktanalyseschaltung oder Routine 370, die zuvor mit Bezug zu 1 erläutert ist, operieren, um einen oder mehrere Randpunkte entlang der Grenze in dem interessierenden Bereich zu bestimmen. In diversen beispielhaften Ausführungsformen der Randpunktanalyseschaltung oder Routine 370 können die Elemente 377–379 in der folgenden Weise operieren:
Die Abtastlinienbestimmungsschaltung oder Routine 377 kann eine oder mehrere Randdetektionsabtastlinien und die Richtung oder Polarität des ”Voranschreitens” der Abtastlinien in einer bekannten Weise bestimmen, etwa so wie in kommerziell verfügbaren Maschinendarstellungssystemen, etwa der QUICK VISIONTM-Serie von Darstellungsinspektionsmaschinen und der QVPAKTM-Software, die von Mitutoyo America Corporation (MAC) in Aurora, IL, beziehbar ist. Im Allgemeinen bestimmt die Abtastlinienbestimmungsschaltung oder Routine 377 die Abtastlinien auf der Grundlage der Daten, die mit einem geeignet platzierten Randhilfsmittel auf dem eingegebenen Bild und/oder einer Operation des Generators zur Erzeugung des interessierenden Bereichs 150 verknüpft sind. Die Eingabe des Operators kann den Abstand der Abtastlinien beeinflussen, oder ein Ersatzwert, entweder 5 oder 20 Pixeleinheiten oder ein Prozentsatz einer Breite des interessierenden Bereichs können automatisch als Ersatzwert festgelegt werden. Die Abtastlinien erstrecken sich über die Grenze in dem Pseudobild. Die Richtung oder die Polarität des Voranschreitens der Abtastlinien zur Ausführung der Randerkennungsoperationen wird auf der Grundlage der Pseudobildeigenschaften in der Nähe des Randes bestimmt. Die Richtung des Voranschreitens der Abtastlinien kann im Allgemeinen von einem Gebiet mit weniger Variation zu einem Gebiet stärkerer Variation voranschreiten. Allgemeiner gesagt, die Richtung des Voranschreitens der Abtastlinien sollte in dieser Richtung vorangehen, die Randerkennungsergebnisse liefert, die weniger verrauscht sind.
-
Die Randpunktdetektionsschaltung oder Routine 378 schätzt einen Randpunkt entlang jeder Abtastlinie, die durch die Abtastlinienbestimmungsschaltung oder Routine 377 bestimmt wird, gemäß beliebiger bekannter oder noch zu entwickelnder Randpunktdetektionsoperationen ab. Die Werte entlang jeder Abtastlinie in dem Pseudobild bilden ein eindimensionales Signal. In einer beispielhaften Ausführungsform ist der Randpunkt ein Punkt des maximalen Gradienten entlang dieses Abtastliniensignals in dem Pseudobild. Es sollte beachtet werden, dass eine beliebige bekannte oder noch zu entwickelnde Randdetektionsoperation, die in Graustufenintensitätsbildern und dergleichen angewendet wird, angewendet werden kann, um die Randposition in dem Pseudobild zu detektieren und abzuschätzen.
-
Die Randpunktdetektionsschaltung oder Routine 378 kann ferner einen oder mehrere Randdetektionsparameter, die mit den abgeschätzten Randpunkten verknüpft sind, in einem oder mehreren Bereichen des Speichers 130 aufzeichnen, so dass eine fallspezifische Randdetektionsoperation automatisch ausgeführt wird, wobei die aufgezeichneten Parameter für die Randdetektion und/oder die Randpunktzuverlässigkeitsbewertung angewendet werden. Derartige Parameter können diverse Eigenschaften der Abtastlindenpseudomittelwertprofile, die den Rand kennzeichnen, etwa die Pixelwertänderung über den Rand hinweg, die Richtung des Pixelwertanstiegs über den Rand hinweg, die Anzahl oder die Proportion der Abtastlinien über den Rand hinweg, die Pixelwertänderungen über einen Schwellwert hinaus enthalten, und dergleichen mit einschließen. In einer beispielhaften Ausführungsform ist der Mittelwert jeder Eigenschaft der Wert, der als der Grund für die fallspezifischen automatischen ”Laufzeit”-Randmessverfahren aufgezeichnet ist, die später ausgeführt werden. Dies führt tendenziell dazu, dass lediglich jene Randpunkte detektiert werden, die eine vernünftige hohe anfängliche Zuverlässigkeit aufweisen.
-
Die Randpunktverfeinerungsschaltung oder Routine 379 kann dann Operationen ausführen, um eine oder mehr anfängliche Randpunktabschätzungen auf der Grundlage zusätzlicher Informationen zu verfeinern. In einer beispielhaften Ausführungsform führt die Randpunktverfeinerungsschaltung oder Routine 379 eine Analyse von mehreren Pixelpositionen in einem lokalen Gebiet, das sich auf beiden Seiten eines anfänglich abgeschätzten Randpunkts entlang einer Richtung, die im Wesentlichen parallel zu der Abtastlinie ist, aus. In einer beispielhaften Operation werden Daten verwendet, die mit einer Anzahl nächster Pixelpositionen Q entlang einer ausgewählten Abtastlinie eines detektierten Randpunktes verknüpft sind, um die Position des anfänglich abgeschätzten Randpunktes zu verfeinern. Für jede Pixelposition i der q-Pixelpositionen, die anfänglich abgeschätzten Randpunkt umgeben, berechnet die Randpunktverfeinerungsschaltung 379 den euklidischen Abstand, der zuvor erläutert ist, zwischen der (i + 1)-Pixelposition und der (i – 1)-Pixelposition auf der Grundlage jener speziellen Pixelpositionen in einem aktuellen Satz an Merkmalsbildern, der von der Merkmalsbilderzeugungsschaltung oder Routine 312 erzeugt und von der fallspezifischen Bildauswahlschaltung 350 ausgewählt ist. Diese euklidischen Abstandswerte, die an jeder der q-Pixelpositionen lokalisiert sind, bilden eine Kurve. Der Analysevorgang bestimmt dann eine zentrale Position für den Bereich unter der Kurve. Die zentrale Position ist in Abhängigkeit der Pixelpositionen dargestellt und bestimmt somit die verfeinerte Randpunktabschätzung entlang der Abtastlinie. In einer beispielhaften Ausführungsform verfeinert die Randpunktverfeinerungsschaltung oder Routine 379 die anfängliche Randpunktabschätzung unter Verwendung der Zentralpositionsoperationen.
-
Die Randpunktverfeinerungsschaltung oder Routine 379 kann ferner Operationen ausführen, etwa die Operationen, die nachfolgend mit Bezug zu den Schritten S1651–S1662 aus 14 beschrieben werden, und/oder die Schritte S2520–2560 aus 16, um anfänglich bestimmte Randpunkte zu verifizieren und um deren Zuverlässigkeit zu erhöhen. In diversen anderen beispielhaften Ausführungsformen wechselwirkt die Randpunktverfeinerungsschaltung oder Routine 379 mit der Grenzlokalisier- und Verfeinerungsschaltung oder Routine 380, die die zu verfeinernden Randpunkte bestimmt, wie dies zuvor mit Bezug zu 1 beschrieben ist.
-
Die Randpunktverfeinerungsschaltung oder Routine 379 kann ferner einen oder mehrere Randdetektionsparameter, die zuvor mittels der Randpunktdetektionsschaltung oder Routine 378 bestimmt und/oder aufgezeichnet worden sind, ändern. Diese kann ferner einen oder mehrere zusätzliche Randdetektionsparameter, die mit den verfeinerten Randpunkten verknüpft sind, in einem oder mehreren Bereichen des Speichers 130 hinzufügen oder aufzeichnen, so dass eine fallspezifische Randdetektionsoperation automatisch unter Verwendung der aufgezeichneten Parameter für die Randerkennung und/oder die Randpunktzuverlässigkeitsbewertung ausführbar ist.
-
In diversen beispielhaften Ausführungsformen der Grenzlokalisier- und Verfeinerungsschaltung oder Routine 380 können die Elemente 381–383 in der folgenden Weise operieren:
Die Formanalyseschaltung oder Routine 381 analysiert mehrerer abgeschätzte Randpunkte, um zu bestimmen, ob diese den Kriterien für eine zuverlässige Randdetektion entsprechen. In einer beispielhaften Ausführungsform umfassen die Kriterien einen Schwellwert für eine Grundform auf der Grundlage der Abweichung zwischen einer Linie (die eine gekrümmte Linie sein kann), die an die abgeschätzten Punkte angepasst ist, und einer erwarteten Randform; einem Schwellwert für die Positionstrefferquote auf der Grundlage einer Abweichung zwischen der Linie, die an die abgeschätzten Punkte angepasst ist, und einer erwarteten Randposition; und einem Ausreißerschwellwert auf der Grundlage der Standardabweichung der einzelnen Randpunktabstände von der an die abgeschätzten Randpunkte angepassten Linie. Die erwartete Randform und Position werden von dem Bediener des Darstellungssystems durch Auswahl eines Randhilfsmittels und dessen Platzierung, oder durch Anwendereingabe oder automatisch auf der Grundlage diverser CAD-Datenoperationen festgelegt. Basierend auf den Ergebnissen der Operationen der Formanalysierschaltung oder Routine 381 wählt die Ausreißereliminierschaltung 382 ein oder mehrere Randpunkte, die das Ausreißerschwellwertkriterium nicht erfüllen, zum Eliminieren oder verfeinern. In diversen beispielhaften Ausführungsformen führt die Randpunktverfeinerungsschaltung oder Routine 379 die Randpunktabschätzungsverfeinerung in der zuvor beschriebenen Weise durch und die Formanalysierschaltung oder Routine 381 und die Ausreißereliminierschaltung 382 analysieren rekursiv die mehreren abgeschätzten/verfeinerten Randpunkte, bis schließlich die verbleibenden abgeschätzten Randpunkte so bestimmt sind, um einen zuverlässigen oder unzuverlässigen Rand zu bilden. Für einen unzuverlässigen Rand gibt die Ausreißereliminierschaltung ein entsprechendes Fehlersignal an den Daten-Steuerbus 140 aus. Es sollte beachtet werden, dass in diversen beispielhaften Ausführungsformen die Operationen die Formanalysierschaltung oder Routine 381 und der Ausreißereliminierschaltung 382 verknüpft sein können oder nicht unterscheidbar sein können. Für einen zuverlässigen Rand bestimmt die Randpositionsbestimmungsschaltung 383 die endgültigen Randpositionsdaten, die die endgültigen abgeschätzten Randpunkte und/oder andere abgeleitete Randpositionsparameter enthalten können, und gibt die Daten den Daten/Steuerbus 140 auf einen oder mehrere Bereiche des Speichers 130 und/oder die Eingabe/Ausgabeschnittstelle 110 aus.
-
In diversen beispielhaften Ausführungsformen der Randmodusbestimmungsschaltung oder Routine 300 können die Elemente 391–392 wie folgt operieren:
Die Randhilfsmittelinterpretierschaltung oder Routine 391 bestimmt für jeden speziellen Fall eines Randes den geeigneten Betriebsmodus für die diversen anderen Elemente, die die Randerkennungsoperationen auf der Basis der mit dem speziellen Fall des Randes verknüpften Randhilfsmitteldaten durchführen. Der geeignete Betriebsmodus gründet sich darauf, ob der spezielle Rand in dem interessierenden Bereich geeignet durch die Randdetektionsoperationen analysiert ist, die auf das Eingangsbild angewendet sind, oder durch die Randdetektionsoperationen, die auf ein Pseudobild angewendet sind, wie dies zuvor beschrieben ist. In einer ersten beispielhaften Ausführungsform sind einzigartige Randhilfsmittel ausschließlich bei der Eingangsbildranderkennung für wohl definierte Ränder und die Pseudobildranderkennung für deutlich strukturierte Ränder beteiligt. In einem derartigen Falle interpretiert die Randhilfsmittelinterpretierschaltung oder Routine 391 die Art des mit dem aktuellen Randfall verknüpften Typs eines Randhilfsmittels und operiert entsprechend. In einer zweiten beispielhaften Ausführungsform enthalten die Randhilfsmittel sekundäre wählbare Merkmale, etwa als Überprüffeld oder dergleichen, die ausschließlich jeweils mit der Eingangsbildranddetektion für wohl definierte Ränder und der Pseudobildranddetektion für deutlich strukturierte Ränder verknüpft sind. In einem derartigen Falle interpretiert die Randhilfsmittelinterpretierschaltung oder Routine 391, das mit einem aktuellen Randfall verknüpften sekundäre Randhilfsmittelmerkmal und operiert entsprechend.
-
In diversen anderen beispielhaften Ausführungsformen besitzen jedoch ein oder mehrere Randhilfsmittel keine Eigenschaft oder kein Merkmal, das ausschließlich mit der Eingangsbildranddetektion für wohl definierte Ränder oder der Pseudobildranddetektion für deutlich strukturierte Ränder verknüpft sind. In derartigen Fällen kann die Schaltung oder Routine 392 zur Analyse des interessierenden Bereichs den geeigneten Randdetektionsmodus bestimmen. Hierbei können die Schaltung oder Routine 392 zur Analyse des interessierenden Bereichs automatisch mindestens eine Struktureigenschaft, etwa einen lokalen Variabilitätswert, in Bewertungsgebieten auf beiden Seiten des Randes im interessierenden Bereich automatisch bestimmen. Die Lage der Bewertungsgebiete gründet sich auf Daten, die mit einem entsprechend lokalisierten Randhilfsmittel und/oder einer Operation des Generators zur Erzeugung eines interessierenden Bereichs 150 verknüpft sind. Die Schaltung oder Routine 392 zur Analyse des interessierenden Bereichs kann dann automatisch den geeigneten Modus der Randdetektion auf der Grundlage der festgestellten Struktureigenschaften auswählen und erzeugt den geeigneten Betriebsmodus für die diversen anderen Elemente, die die Randdetektionsoperationen für diesen speziellen Fall eines Randes ausführen.
-
3 zeigt zwei Bilder beispielhafter Objekte mit deutlich strukturierten Rändern, die detektiert und lokalisiert werden können, wobei die erfindungsgemäßen Randdetektionssysteme und Verfahren angewendet werden. Das Bild 400 umfasst einen Rand/eine Grenze 406, die präzise mit diversen Ausführungsformen der Grenzdetektions- oder Randdetektionssysteme und Verfahren dieser Erfindung lokalisiert werden können. Das Bild 400 besitzt einen Rand/eine Grenze 406, die zwischen einem ersten Bereich 402 des Bildes 400 und einen zweiten Bereich 404 des Bildes 400 besteht. Das Bild 400 ist das Bild eines Objektes, das von dem Darstellungssystem 10, das mit Bezug zu 1 beschrieben ist, aufgenommen worden ist.
-
Bevor die erfindungsgemäßen Randdetektionssysteme und Verfahren in einem automatischen Modus zur Lokalisierung von Rändern oder Grenzen während des Betriebs verwendet werden können, müssen die erfindungsgemäßen Randdetektionssysteme und Verfahren initialisiert werden, um spezifische Ränder unter Verwendung spezifischer bildabhängiger Parameter zu detektieren. Ein Bild, das von dem Darstellungssystem 10 aufgenommen worden ist, wird bei der Randlokalisierungsoperation als ein Eingangsbild 500 verwendet. 3 zeigt eine beispielhafte Ausführungsform des Eingangsbilds 500, das in Zusammenhang mit den erfindungsgemäßen Randdetektionssystemen und Verfahren verwendet werden kann. Das Eingangsbild 500 besitzt einen Rand 506, der zwischen einem ersten Bereich 502 und einem zweiten Bereich 504 des Eingangsbildes 500 definiert ist.
-
Nachdem das Eingangsbild 500 aufgenommen ist, wird das Eingangsbild 500 auf der Anzeige 102 angezeigt, so dass ein Anwender den interessierenden Bereich unter Verwendung einer grafischen Anwenderschnittstelle und durch Positionieren eines Grenzdetektionshilfsmittels, das auch als Grenzhilfsmittel oder Randdetektionshilfsmittel bezeichnet wird, auf einem speziellen Rand oder Bereich eines Randes, der zu detektieren ist, definieren kann. Der interessierende Bereich wird durch den Generator 150 zur Erzeugung des interessierenden Bereichs auf der Grundlage der dem positionierten Randhilfsmittel entsprechenden Daten definiert. Ein beispielhaftes Grenzhilfsmittel 8 umfasst ein von dem Anwender konfigurierbares Feld 505, um den interessierenden Bereich darzustellen und zu bestimmen. Beispielsweise kann das Feld in Bogen- oder Kreisform oder in Form eines Rechtecks wie es in 3 gezeigt ist, konfiguriert werden. Es sollte jedoch beachtet werden, dass das Grenzdetektionshilfsmittel 508 in einer beliebigen Form gezeichnet werden kann, die es ermöglicht, dass ein interessierender Bereich von dem Anwender oder automatisierten Prozess definiert werden kann. Das Grenzhilfsmittel 508 umfasst ferner Indikatoren 512 für interessierende Gebiete, die als überlappende identische Rechtecke in 3 gezeigt sind. In diversen anderen Ausführungsformen ist das Randhilfsmittel ein Randpunkthilfsmittel und der interessierende Bereich und die Indikatoren für interessierende Gebiete sind auf der Anzeige nicht gekennzeichnet, sondern werden automatisch durch den zuvor beschriebenen Generator zur Erzeugung eines interessierenden Bereichs 150 und die Schaltung zur Analyse eines gefilterten Bildes 130 auf der Grundlage eines einfachen Punktzeigers, der von dem Anwender positioniert wird, bestimmt. Diverse andere beispielhafte Randhilfsmittel gehen aus den zuvor zitierten kommerziell verfügbaren Maschinendarstellungssystemen und dergleichen hervor.
-
Nachdem das Grenzdetektionshilfsmittel 508 auf dem Eingangsbild 500 gezeichnet worden ist, kann der Anwender einen interessierenden Punkt (P0) in dem interessierenden Bereich, der durch das Grenzhilfsmittel 508 begrenzt ist, definieren. Alternativ wird der interessierende Punkt P0 automatisch relativ zur Lage des Grenzdetektionshilfsmittels 508 bestimmt und ist unter Umständen nicht auf der Anzeige sichtbar. Der interessierende Punkt P0 ist im allgemeinen oder möglicherweise lediglich kennzeichnend für einen Punkt auf der Grenze oder dem Rand. Der Anwender kann ferner den Randlokalisierungsvorgang steuern, um diesen auf den Punkt P0 zu konzentrieren. Ferner kann der Anwender einen Abstand zwischen diversen ”Abtast-”Linien 509, die sich über die Grenze in dem interessierenden Bereich hinweg erstrecken, definieren. Alternativ kann auf der Grundlage der zuvor erläuterten Grenzdetektionshilfsmitteloperation und Informationen die zuvor beschriebene Randpunktanalyseschaltung 370 automatisch den Abstand zwischen den Abtastlinien 509 und den Endpunkten, d. h. (x1, y1), (x2, y2) jeder Abtastlinie 509, die sich über die Grenze in dem interessierenden Bereich erstreckt, bestimmen. In ähnlicher Weise kann die zuvor beschriebene Schaltung oder Routine 310 zur Analyse des gefilterten Bildes automatisch die Positionen der interessierenden Gebiete, die durch die Indikatoren für die interessierenden Gebiete 512 gekennzeichnet sind, bestimmen. Somit können Operationen, die mit dem Grenzdetektionshilfsmittel 508 verknüpft sind, in manueller Weise durch Anwendereingabe oder durch einen automatischen Prozess unter Verwendung vordefinierter Grenzdetektionshilfsmitteleigenschaften definiert werden. Indem es dem Anwender ermöglicht wird, ein Grenzdetektionshilfsmittel mit vordefinierten Eigenschaften auszuwählen, können Grenzdetektionsvorgänge von Bediener mit wenig oder keinem Verständnis der zugrunde liegenden mathematischen oder Bildverarbeitungsoperationen gesteuert werden.
-
In 4 sind das Grenzdetektionshilfsmittel 508, die Abtastlinien 509 und die Indikatoren für interessierende Gebiete 512 relativ zu einem noch weiteren Eingangsbild 600 dargestellt. Der Einfachheit halber zeigt 4 einen weiteren beispielhaften Satz von interessierenden Gebieten, die durch die Indikatoren für interessierende Gebiete 512 gekennzeichnet sind, und die erzeugt sind von und verwendbar sind für die erfindungsgemäßen Systeme und Verfahren. Beachtet werden sollte, dass die Indikatoren für interessierende Gebiete in einigen Ausführungsformen nicht angezeigt sind, und dass ein ursprünglich relativ zu einem Eingangsbild erzeugtes interessierendes Gebiet ferner ein räumlich kongruentes interessierendes Gebiet in einem anderen entsprechenden gefilterten Bild, Merkmalsbild, Pseudobild oder dergleichen, wie dies hierin beschrieben ist, aufweist. Wie zuvor beschrieben ist, können die interessierenden Gebiete automatisch bestimmt werden, oder der Anwender kann diese beispielsweise durch Ziehen und Anordnen der angezeigten Indikatoren für interessierende Gebiete 512 bestimmen. Wie zuvor beschrieben ist, können die interessierenden Gebiete als symmetrische oder nahezu symmetrische Paare aus interessierenden Gebieten 514 um den zentralen Punkt P0 herum angeordnet werden. 4 zeigt 4 Paare interessierender Gebiete. Ferner kann in einer Alternative zu den zuvor beschriebenen automatischen Operationen zum Bestimmen der repräsentativen interessierenden Gebiete RROI1 und RROI2 der Anwender ein RROI1 und RROI2 auswählen, die auf gegenüberliegenden Seiten des interessierenden Punkts P0 liegen und entlang einer im Wesentlichen senkrecht zu der Grenze und innerhalb des interessierenden Bereichs liegenden Linie angeordnet sind. Es sollte jedoch beachtet werden, dass beste RROI1 und eine RROI2 nicht notwendiger Weise oder im Wesentlichen kein Paar interessierender Gebiete sind, die entlang einer im Wesentlichen senkrecht zur Grenze angeordneten Linie sind.
-
5 zeigt eine beispielhafte Ausführungsform eines Pseudobildes 700, das durch die Pseudobilderzeugungsschaltung oder Routine 360, die zuvor beschrieben ist, erzeugt ist. Beachtet werden sollte, dass das Pseudobild nicht angezeigt werden muss, und dieses im Allgemeinen nicht von den erfindungsgemäßen Systemen und Verfahren dargestellt wird.
-
Allgemeiner gesagt, sind diverse beispielhafte Ausführungsformen der erfindungsgemäßen Systeme und Verfahren so beschrieben, dass diese ”diverse Bilder” als die Grundlage für ein Bildergebnis, das bewertet wird, erzeugen. Es sollte jedoch beachtet werden, dass das Bildergebnis aus einer Vielzahl von Datendarstellungen, die im Allgemeinen nicht als ein ”Bild” erkannt werden, bestimmt werden können. Vorausgesetzt, dass derartige Datendarstellungen zum Bereitstellen einer oder mehrerer Bildergebnisse verwendbar sind, die wiederum in den erfindungsgemäßen Systemen und Verfahren nutzbar sind, sind derartige Datendarstellungen im Geltungsbereich der Begriffe ”Merkmalsbild” oder ”Pseudobild” und dergleichen enthalten und liegen damit im Schutzbereich der erfindungsgemäßen Systeme und Verfahren. Ferner sollte beachtet werden, dass in diversen anderen beispielhaften Ausführungsformen abhängig von den zu bestimmenden Bildergebnissen das Bildergebnis direkt aus dem Eingangsbild und dem geeigneten Kandidaten- oder ausgewählten Filtern bestimmt werden kann, ohne dass es notwendig ist, ein erkennbares Bild in einem erkennbaren Zwischenschritt darzustellen oder zu erzeugen.
-
Nichtsdestotrotz ist das Pseudobild 700 zum Zwecke der Klarheit nützlich. Wie zuvor beschrieben ist, ist das Pseudobild 700 räumlich kongruent zu dem Eingangsbild und somit zu den diversen Hilfsmittelelementen und interessierenden Gebieten, die zuvor mit Bezug zu den 3 und 4 beschrieben sind. Es sollte beachtet werden, dass das spezielle Pseudobild 700 einem vergrößerten Eingangsbild entspricht und daher eine hochgenaue Randlokalisierung trotz der verwaschenen Erscheinungsform dieses speziellen Bildes unterstützen kann. Die Richtung des Voranschreitens der Abtastlinien 509, wie dies durch die Pfeile in den Abtastlinien 509 angezeigt ist, kann in der zuvor beschriebenen Weise bestimmt werden. Das Pseudobild 700 muss lediglich in dem interessierenden Bereich, der durch die Linie 704 in 5 abgegrenzt ist, bestimmt werden. Die Randpunkte 702, die mit ”x” entlang des Randes/der Grenze 706 in dem Pseudobild 700 gekennzeichnet sind, werden in der zuvor beschriebenen Weise bestimmt. Da das Pseudobild räumlich zu dem Eingangsbild kongruent ist, können die Randpunkte, die für das Pseudobild bestimmt werden, in einfacher Weise auf einer grafischen Anwenderschnittstelle mit dem Eingangsbild in diversen beispielhaften Ausführungsformen der erfindungsgemäßen Systeme und Verfahren dargestellt werden.
-
6 zeigt eine beispielhafte Ausführungsform mehrerer Randpositionen 802, die für ein beispielhaftes Eingangsbild 800 bestimmt werden, und die von einer beispielhaften Randpunktanalysierschaltung oder Routine 370 unter Verwendung der zuvor beschriebenen gradientenartigen Randdetektionsoperationen detektiert worden sind. Da das Pseudobild räumlich zu dem Eingangsbild kongruent ist, können die für das Pseudobild bestimmten Randpunkte 802 in einfacher Weise als die Randpunkte 802 auf einer grafischen Anwenderschnittstelle mit dem Eingangsbild entsprechend diverser beispielhafter Ausführungsformen der erfindungsgemäßen Systeme und Verfahren dargestellt werden. Die Indikatoren für interessierende Gebiete 814 und die Grenzen eines Grenzhilfsmittels 808 sind ebenso in 6 dargestellt.
-
In einem Teilprogrammier- oder Trainingsmodus des Darstellungssystems 10 wird in einer beispielhaften Ausführungsform eine Anzeige mit Elementen, etwa den Elementen 800, 802, 808 für den Anwender dargestellt, wenn die Randpunkte 802 bestimmt worden sind. Wenn der Anwender den angezeigten Randpunkten 802 und damit verknüpften Randpositionsdaten, die ebenfalls erzeugt und ausgegeben werden können, zustimmt, akzeptiert der Anwender die Ergebnisse durch eine oder mehrere Aktionen, wobei bereits ein Voranschreiten zum Ausführen einer neuen Operation mit dem Darstellungssystem 10 ausreicht. Wenn die Akzeptanz des Anwenders durch ein geeignetes Mittel angezeigt wird, speichert der Steuerungssystembereich 100 die diversen zuvor beschriebenen Operationen und Parameter, die zur Bestimmung der Randpunkte 802 verwendet werden, als fallspezifische Routine oder als fallspezifisches trainiertes Rand/Grenzdetektionshilfsmittel in dem Teilprogrammspeicherbereich 133. Der Steuerungssystembereich 100 kann ferner die beteiligten Randlokalisierungsdaten, die erzeugt und ausgegeben wurden, in dem Speicher 130 speichern. Die fallspezifische Routine oder das trainierte Rand/Grenzdetektionshilfsmittel, das von dem Störungssystembereich 100 gespeichert ist, wird im Allgemeinen in einem oder mehreren Teilprogrammen gespeichert und/oder mitaufgenommen, und sind somit verwendbar, um automatisch, schnell und zuverlässig Ränder in ähnlichen Fällen in einem ”Betriebsmodus” zu detektieren und zu lokalisieren. Zu diesen ähnlichen Fällen, in denen die fallspezifische Routine und/oder das trainierte Rand/Grenzhilfsmittel vorteilhaft einsetzbar ist, gehören beispielsweise Fälle, wie etwa das künftige Lokalisieren des identischen Randes, das Lokalisieren eines weiteren Bereiches desselben Randes auf dem selben Teil, d. h. in einem unterschiedlichen Gesichtsfeld, das Lokalisieren des ”gleichen” Randes in einem künftigen Teil, der entsprechend den gleichen Spezifikationen erzeugt wird, und das Lokalisieren anderer Ränder, die durch den gleichen Prozess erzeugt werden, etwa Ränder auf einer Vielzahl ähnlicher Löcher in diversen Positionen auf einer flachen Schicht, etwa Bohrungen auf einer gedruckten Leiterplatte. Diese und weitere Arten von ähnlichen Fällen von Rändern werden für den Fachmann und für typische Anwender von Maschinendarstellungssystemen ersichtlich und daher sind diese Beispiele in keiner Weise einschränkend.
-
Eine detailliertere Beschreibung des Betriebablaufes erfolgt mit Bezug zu den 15 und 16.
-
7 ist ein Flussdiagramm, das ein beispielhafte Ausführungsform eines Verfahrens zum Trainieren eines Grenzdetektionshilfsmittels zur Detektion eines spezifischen Falles eines Randes in einem Eingangsbild gemäß dieser Erfindung darstellt. Ein trainiertes Grenzdetektionshilfsmittel kann von einer schnellen und zuverlässigen automatischen Grenzdetektionsroutine, etwa wie sie in einem Teilprogramm zum Inspizieren ähnlicher Fälle für Ränder auf ähnlichen Teilen enthalten sein kann, angewendet werden. Nach dem Beginn des Ablaufs im Schritt S1000, geht der Ablauf weiter zum Schritt S1100, in dem ein erstes oder ein nächstes Eingabebild aufgenommen wird. Dann wird im Schritt S1200 ein interessierender Bereich in dem Eingangsbild bestimmt und Abtastlinien, die sich über den bestimmten interessierenden Bereich erstrecken, werden bestimmt. Anschließend werden im Schritt S1300 ein oder mehrere Merkmalsbilder zumindest des interessierenden Bereichs erzeugt. Der Operationsablauf geht dann weiter zum Schritt S1400.
-
Im Schritt S1400 werden jene Merkmalsbilder, die im Schritt S1300 erzeugt worden sind, analysiert, um jene Merkmalsbilder zu bestimmen und auszuwählen, die zur Unterscheidung eines ersten interessierenden Gebiets auf einer Seite des zu detektierenden spezifischen Randes von einem zweiten interessierenden Gebiet auf der anderen Seite des zu detektierenden spezifischen Randes anwendbar sind. Wie zuvor beschrieben ist, können einige der erzeugten Merkmalsbilder hinsichtlich eines ausgewählten repräsentativen Paares interessierender Gebiete nicht ausreichend unterschiedliche Merkmalspixelwerte auf den beiden Seiten des Randes aufweisen, um die Randdetektion zuverlässig zu unterstützen. Im Schritt S1400 kann die anfängliche Menge von Merkmalsbildern reduziert werden, wenn einige der Merkmalsbilder zur Verbesserung der Randdetektion nicht nützlich sind.
-
Anschließend wird im Schritt S1500 ein Mitgliedschaftsbild erzeugt, das den Mitgliedschaftswert jedes Pixels in zumindest dem interessierenden Bereich in Abhängigkeit zweier Cluster kennzeichnet. Die Mittelpunkte der beiden Cluster gründen sich auf die Eigenschaften des ausgewählten repräsentativen Paares aus interessierenden Gebieten, die im Schritt S1400 ausgewählt sind. Die Mitgliedschaftswerte basieren auf den Eigenschaften der Clustermittelpunkte und den Merkmalsbildern, die im Schritt S1300 erzeugt und im Schritt 1400 ausgewählt worden sind. Die beiden bei der Erzeugung des Mitgliedschaftsbildes verwendeten Cluster repräsentieren zwei Arten von Merkmalsbilddaten auf jeder Seite des zu detektierenden Randes, die im Schritt S1400 ausgewählten Merkmalsbilder in Erscheinung treten. Anschließend werden im Schritt S1600 Randpunkte entlang der Abtastlinien auf der Grundlage des im Schritt S1500 erzeugten Mitgliedschaftsbildes bestimmt, und ”gute” Randpunkte werden aus dem detektierten Randpunkten ausgewählt. Dann geht der Operationsablauf zum Schritt S1700 weiter.
-
Im Schritt S1700 wird für jeden behaltenen detektierten Randpunkt aus dem Schritt S1600 eine enge ”Nachbarschaft” des detektierten Randpunktes analysiert, um die Lage des detektierten Randpunkts zu korrigieren, und eine Gruppe aus detektierten Randpunkten wird analysiert, um Ausreißer zu eliminieren. Im Schritt S1700 werden Operationen durchgeführt, etwa eine oder mehrere der zuvor mit Bezug zu der Randpunktverfeinerungsschaltung 379 und der Grenzlokalisier- und Verfeinerungsschaltung 380 beschriebenen Operationen. In einer beispielhaften Operation werden mit einer Reihe von eng benachbarten Pixelpositionen q entlang einer Abtastlinie für einen ausgewählten detektierten Randpunkt verknüpfte Daten angewendet, um die Position des ausgewählten detektierten Randpunkts zu verfeinern. Für jede Pixelposition i der q-Pixelpositionen, die den ausgewählten detektierten Randpunkt umgeben, berechnet die Randpunktverfeinerungsschaltung 379 den euklidischen Abstand zwischen der (i + 1)-Pixelposition und der (i – 1)-Pixelposition auf der Grundlage jener spezieller Pixelpositionen in dem aktuellen Satz an Merkmalsbildern. Diese euklidischen Abstände für jeder der q-Pixelpositionen bilden eine Kurve. Anschließend wird der Mittelpunkt der Kurve als die verfeinerte Position dieses ausgewählten detektierten Randpunkts verwendet. Die Grenzlokalisier- und Verfeinerungsschaltung 380 analysiert eine Gruppe ausgewählter detektierter Randpunkte, um Ausreißer zu detektieren und zu korrigieren und zu eliminieren. Anschließend werden im Schritt S1800 die Grenzdetektionshilfsmitteldaten, die die Information darstellen, die zur Detektion dieses spezifischen Falles eines Randes im Eingangsbild, das im Trainingsmodus erzeugt worden ist, bestimmt, akzeptiert und/oder gespeichert. Das Akzeptieren kann von dem Anwender auf der Grundlage einer Anzeige des endgültigen Satzes an Randpunkten, oder mittels verknüpfter Grenzpositionsdaten bestimmt werden. Als Ersatzbedingung können die Grenzdetektionshilfsmitteldaten ohne spezifizierte Akzeptanz gespeichert werden. Anschließend wird im Schritt S1900 bestimmt, ob ein weiteres Eingangsbild aufzunehmen ist. Wenn ein weiteres Bild auszuwählen und zu analysieren ist, dann kehrt der Operationsablauf zum Schritt S1100 zurück. Ansonsten schreitet der Operationsablauf zum Schritt S1950 weiter, in dem der Operationsablauf des Verfahrens stoppt.
-
8 ist ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des Verfahrens zum Bestimmen eines interessierenden Bereichs im Schritt S1200 darstellt. Nachdem der Operationsablauf im Schritt S1200 beginnt, geht der Ablauf zum Schritt S1210 weiter, in dem der Anwender bestimmt, ob die Randlokalisierungsoperation ein automatisches Grenzdetektionshilfsmittel verwendet, um einen interessierenden Bereich, in oder durch den der spezifizierte Rand zu detektieren ist, darzustellen. Wenn der Anwender kein automatisches Grenzdetektionshilfsmittel anwenden will, geht der Operationsablauf weiter zum Schritt S1220. Ansonsten springt der Operationsablauf zum Schritt S1250. Im Schritt S1220 zeichnet und/oder editiert der Anwender manuell ein Grenzdetektionshilfsmittel, wie dies zuvor beschrieben ist, um die zu lokalisierende Grenze und den gewünschten interessierenden Bereich auszuwählen. Dann wählt im Schritt S1230 der Anwender einen Punkt P0 in dem interessierenden Bereich, der durch das erzeugte Grenzdetektionshilfsmittel abgegrenzt ist, und vorzugsweise in der Nähe der Grenze, um den Randdetektionsvorgang entsprechend einzuschränken. Beachtet werden sollte, dass der Punkt P0 auch als Teil des Vorgangs des Ziehens eines Hilfsmittels erzeugt werden kann, und die Operationen der Schritte S1220 und S1230 können ununterscheidbar sein. Im Schritt S1240 werden die Position der Abtastlinien oder Abstand entlang der Grenze und die Längen oder die Endpunkte der Abtastlinien durch Anwendereingabe oder durch Ersatzpositionen, die aus dem ausgewählten interessierenden Bereich abgeleitet sind, bestimmt. Der Operationsablauf springt dann zum Schritt S1260.
-
Im Gegensatz zu den Schritten S1220, S1230 und S1240 wird im Schritt S1250 ein automatisches Grenzdetektionshilfsmittel verwendet. Diverse automatische Grenzdetektionshilfsmittel können diverse Bereichsmöglichkeiten an Funktionen aufweisen. Beispielsweise kann der Anwender ein geeignetes Hilfsmittel, etwa ein Punkthilfsmittel, oder ein Feldhilfsmittel auswählen, und dann lediglich ein Cursor/Zeigerelement des Hilfsmittels in der Nähe eines Punktes, der als ”P0” gedacht ist, ”Positionieren”, und das Hilfsmittel wird dann automatisch wie zuvor erläutert ein Hilfsmittelparameter automatisch bestimmen, die zur Randdetektion unter Verwendung dieses Hilfsmittels notwendig sind. Abtastlinien können ebenso automatisch definiert werden. Der Operationsablauf geht dann mit dem Schritt S1260 weiter. Im Schritt S1260 kehrt der Operationsablauf zum Schritt S1300 zurück.
-
9 ist ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des Verfahrens zum Erzeugen von Merkmalsbildern im Schritt S1300 darstellt. Im Schritt S1300 schreitet der Operationsablauf zum Schritt S1310 weiter, in dem bestimmt wird, ob der Anwender eine Kandidatenfiltergruppe manuell bestimmt, oder ob die Kandidatenfiltergruppe automatisch bestimmt werden soll. Wie zuvor erläutert ist, impliziert der Begriff Kandidatenfilter, dass die Filter beim Erzeugen eines Bildfilterungsergebnisses aus einem aktuellen Bild verwendet werden, dass dieser jedoch später akzeptiert oder zurückgewiesen wird auf der Grundlage des Bildergebnisses. Wenn die Kandidatenfiltergruppe nicht automatisch festgelegt wird, geht der Operationsablauf weiter zum Schritt S1320. Ansonsten springt der Ablauf zum Schritt S1330. Das Bestimmen zur automatischen Auswahl der Kandidatenfiltergruppe kann ausgeführt werden und/oder mitgeteilt werden, wobei eine Kandidatenfilterverfahrensoption einer grafischen Anwenderschnittstelle verwendet wird.
-
Im Schritt S1320 wählt der Anwender manuell eine Kandidatenfiltergruppe in der zuvor erläuterten Weise aus. Der Operationsablauf springt dann zum Schritt S1340. Im Gegensatz dazu, wird im Schritt S1330 die zu verwendende Kandidatenfiltergruppe automatisch bestimmt. Dann geht der Ablauf zum Schritt S1340 weiter.
-
Im Schritt S1340 werden die Kandidatenfilter, die ausgewählt wurden, oder die automatisch mittels des Kandidatenfilterverfahrens bestimmt wurden, auf den definierten interessierenden Bereich des Eingangsbildes angewendet, um eine entsprechende Anzahl an Merkmalsbildern zu erzeugen. Anschließend kehrt im Schritt S1350 der Ablauf zum Schritt S1400 zurück.
-
10 ist ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des Verfahrens zum Ausführen der Auswahl nützlicher Merkmalsbilder im Schritt S1400 erläutert. Wie zuvor erläutert ist, wird, wenn ein nützliches Merkmalsbild ausgewählt wird, ein entsprechender Filter, der bei der Erzeugung des Merkmalsbildes verwendet wird, ebenso in effektiver Weise ausgewählt. Beginnend im Schritt S1400 schreitet der Operationsablauf zum Schritt S1410 weiter, in dem ein einzelnes Paar interessierender Gebiete oder ein oder mehrere Paare interessierender Gebiete, etwa die diversen Paare interessierender Gebiete, die in den 3, 4 und 6 gezeigt sind, definiert werden. Insbesondere wird für jedes Paare interessierender Gebiete ein erstes interessierendes Gebiet auf einer Seite des interessierenden Punkts P0 in dem interessierenden Bereich, der durch das Grenzdetektionshilfsmittel abgegrenzt ist, definiert. Das zweite interessierende Gebiet dieses Paares interessierender Gebiete wird gegenüberliegend auf der anderen Seite des interessierenden Punkts P0 von dem ersten interessierenden Gebiet dieses Paares interessierender Gebiete definiert. Dann wird im Schritt S1420 ein repräsentatives Paar interessierender Gebiete RROI1 und RROI2 aus dem einen oder mehreren Paaren interessierende Gebiete ausgewählt. Es sollte selbstverständlich bedacht werden, dass der Schritt S1420 weggelassen werden kann, wenn lediglich ein einzelnes Paar interessierender Gebiete im Schritt S1410 definiert wird.
-
Anschließend wird im Schritt S1430 eine Teilmenge von Merkmalsbildern, die im Wesentlichen die Merkmalsbilder enthält, die am Besten zwischen den Bilddaten in dem repräsentativen Paar interessierender Gebiete, die an gegenüberliegenden Seiten des ausgewählten Punkts P0 liegen, unterscheiden, auf der Grundlage einer Analyse der Merkmalsbilddaten in dem repräsentativen Paar interessierender Gebiete ausgewählt. Der entsprechende Satz ausgewählter Filter wird zumindest zwischenzeitlich als hilfsmittelbezogene Daten gespeichert. Wie zuvor erläutert ist, wird in diversen beispielhaften Ausführungsform diese Auswahl so getroffen, um die Anzahl der Filter zu reduzieren, die zur Randdetektion anzuwenden sind, um eine schnellerer Randdetektion zu erreichen und/oder um die Genauigkeit und Zuverlässigkeit des Detektierens des Randes unter Anwendung der erfindungsgemäßen Systeme und Verfahren zu verbessern. Der Operationsablauf geht dann zum Schritt S1400 weiter.
-
Der Schritt S1430 bildet einen Merkmalsauswahlschritt. Es sollte beachtet werden, dass die Merkmalsherauslösung bzw. Extraktion eine gutbekannte Alternative oder eine Ergänzung zur Merkmalsauswahl ist. Die Merkmalsextraktion ist ein Verfahren, das eigentlich die Merkmalsbilder kombiniert, um einen kleineren aber wirksameren Satz an Merkmalsbilder zu erzeugen. Der Fachmann kennt diverse anwendbare Merkmalsextraktionsverfahren, und in diversen beispielhaften Ausführungsform wird eine Merkmalsextraktion anstelle einer Merkmalsauswahl im Schritt S1430 ausgeführt. Anwendbare Merkmalsextraktionsverfahren sind in den zuvor zitierten Schriften erläutert.
-
Im Schritt S1440 wird das repräsentative Paar interessierender Gebiete erneut ausgewählt, um ein späteres RROI1 und RROI2 auf der Grundlage der ausgewählten Teilmenge von Merkmalsbildern bereit zu stellen. Zu beachten wäre, dass der Schritt S1440 optional ist und somit weggelassen werden kann. Anschließend werden im Schritt S1450 eine Anzahl von Klassifikationsvektoren, etwa beispielsweise die Klassifikationsvektoren CV1 und CV2, die zuvor erläutert sind, auf der Grundlage der Bilddaten in dem jüngsten repräsentativen Paar interessierender Gebiete RROI1 und RROI2 jedes der Merkmalsbilder der Teilmenge aus Merkmalsbildern erzeugt. In einer beispielhaften Ausführungsform werden die mittleren Bilddaten in jedem der Merkmalsbilder der Teilmenge der Merkmalsbilder, das in den repräsentativen interessierenden Gebieten RROI1 und RROI2 liegt, berechnet, um jeweils die Klassifikationsvektoren CV1 und CV2 zu erzeugen. Im Allgemeinen beträgt die Dimension der Klassifikationsvektoren CV1 und CV2 n, wobei n die Anzahl der Merkmalsbilder in der Teilmenge der Merkmalsbilder ist. Optional werden die jüngsten RROI1 und RROI2 in diversen beispielhaften Ausführungsform zumindest zwischenzeitlich als hilfsmittelbezogene Daten gespeichert. Anschließend kehrt im Schritt S1460 der Ablauf zum Schritt S1500 zurück.
-
11 ist ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des Verfahrens zum Bestimmen des Mitgliedschaftsbildes im Schritt S1500 erläutert. Beginnend mit dem Schritt S1500 geht der Ablauf zum Schritt S1510 weiter, indem ein erstes oder nächstes Pixel, d. h. eine Pixelposition, in zumindest in dem interessierenden Bereich, der von dem Grenzdetektionshilfsmittel eingegrenzt wird, ausgewählt wird. Anschließend wird im Schritt S1520 ein Mitgliedschaftswert für das aktuelle Pixel bestimmt, indem ein Klassifizierer, etwa der zuvor beschriebene modifizierte Fuzzy-c-Klassifizierer, und die erzeugten Klassifikationsvektoren CV1 und CV2 verwendet werden. Anschließend geht der Operationsablauf zum Schritt S1530 weiter.
-
Anzumerken wäre, dass der modifizierte Fuzzy-c-Klassifizierer lediglich ein beispielhafter Klassifizierer ist, der in den im Schritt S1520 ausgeführten Operationen verwendbar ist, und der besonders schnell und geeignet ist, wenn die Operationen in den Schritten S1420–S1450, die in 10 gezeigt sind, ausgeführt worden sind. In diversen beispielhaften Ausführungsform der erfindungsgemäßen Systeme und Verfahren wird ein ”unmodifizierter” Fuzzy-c-Klassifizierer, der in den zuvor zitierten Schriften beschrieben ist, angewendet. Ein derartiger Klassifizierer benötigt keine Prototypen der Cluster und arbeitet iterativ, um die Klassifikation der Datenpunkte zu verbessern. Somit müssen die Operationen zumindest der Schritte S1420 bis S1450, die in 10 dargestellt sind, nicht ausgeführt werden.
-
Anschließend wird im Schritt S1530 bestimmt, ob verbleibende nichtausgewählte Pixel analysiert werden müssen. Wenn dem so ist, dann geht der Ablauf zurück zum Schritt S1510. Ansonsten geht der Ablauf weiter zum Schritt S1540, in dem die Richtung des Voranschreitens entlang der Abtastlinien zur Ausführung der Randdetektion bestimmt wird. Wie zuvor erläutert ist, kann die Richtung der Bewegung entlang der Abtastlinien bestimmt werden, indem das Mitgliedschaftsbild und das repräsentative Paar interessierender Gebiete RROI1 und RROI2, die zur Bestimmung des Mitgliedschaftsbildes verwendet werden, angewendet werden. Anschließend kehrt im Schritt S1550 der Operationsablauf zum Schritt S1600 zurück.
-
Beachtet werden sollte, dass die Operationen des Schritts S1540 alternativ im Schritt S1500 weggelassen werden können und statt dessen zu Beginn des Schrittes S1600 ausgeführt werden können. In weiteren beispielhaften Ausführungsform werden die Operationen des Schritts 1540 vollständig weggelassen und eine ersatzweise festgelegte Vorschreitrichtung wird angewendet. Obwohl die Zuverlässigkeit und die Genauigkeit für einige Ränder etwas beeinflusst werden können, lassen deutliche Vorteile in derartigen Ausführungsformen der erfindungsgemäßen Systeme und Verfahren erreichen.
-
12 ist ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des Verfahrens zum Detektieren und Auswählen von Randpunktpositionen im Schritt S1600 darstellt. Beginnend mit dem Schritt S1600 geht der Ablauf zum Schritt S1610 weiter, in dem eine erste oder nächste Abtastlinie ausgewählt wird. Dann wird im Schritt S1620 ein (oder mehrere) Randpunkte in der ausgewählten Abtastlinie detektiert, wobei das im Schritt S1500 definierte Mitgliedschaftsbild verwendet wird. Es sollte beachtet werden, dass die Pixelwerte des ursprünglichen Mitgliedschaftsbilds skaliert oder auf einen erwarteten Bereich normiert werden könnte, wenn dies vorteilhafter oder robuster für die Randdetektionsoperation wäre, die zur Verwendung in den erfindungsgemäßen Systemen und Verfahren ausgewählt ist. Anschließend werden im Schritt S1630 die detektierten Randpunkte zu einem Anfangssatz an Randpunkten PEI zusammengefasst. Der Operationsablauf geht dann weiter zum Schritt S1640.
-
Im Schritt S1640 wird bestimmt, ob es verbleibende nichtausgewählte Abtastlinien gibt. Wenn dem so ist, geht der Ablauf zurück zum Schritt S1610. Ansonsten geht der Ablauf weiter zum Schritt S1650. Im Schritt S1650 werden zulässige Randpunkte auf der Grundlage des Mitgliedschaftsbildes ausgewählt. Anschließend kehrt im Schritt S1670 der Operationsablauf zum Schritt S1700 zurück.
-
13 ist ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des Verfahrens zum Auswählen eines repräsentativen Paares interessierender Gebiete im Schritt S1420 darstellt. Beginnend mit dem Schritt S1420 geht der Operationsablauf zum Schritt S1421 weiter, in dem für ein erstes/nächstes Paar interessierender Gebiete ein Ähnlichkeitsabstand zwischen den Merkmalsbilddaten in den beiden interessierenden Gebieten auf der Grundlage jedes Merkmalsbildes der Kandidatenmenge der Merkmalsbilder bestimmt wird. Der Ähnlichkeitsabstand ist entsprechend diverser beispielhafter Ausführungsformen der Fisher-Abstand, der zuvor erläutert ist. Beachtet werden sollte, dass diverse Ähnlichkeitsabstände bestimmt werden könnten. Anschließend wird im Schritt S1422 bestimmt, ob der Ähnlichkeitsabstand für alle Paare interessierender Gebiete, die definiert worden sind, bestimmt worden ist. Wenn dem so ist, geht der Ablauf zum Schritt S1432 weiter. Ansonsten springt der Ablauf zum Schritt S1421, in dem die Ähnlichkeitsabstandsergebnisse für das nächste Paar interessierender Gebiete bestimmt werden.
-
Im Schritt S1423 wird ein repräsentatives Paar interessierender Gebiete RROI1 und RROI2 auf der Grundlage der bestimmten Ähnlichkeitsabstände ausgewählt, wie dies zuvor beschrieben ist. Im Allgemeinen ist das ausgewählte repräsentative Paar dasjenige Paar, das die meisten unähnlichen konstituierenden interessierenden Gebiete hinsichtlich der bestimmten Ähnlichkeitsabstände aufweist. Der Operationsablauf geht dann zum Schritt S1442 weiter. Zu beachten wäre, dass in einem Falle, in dem lediglich ein einzelnes Paar interessierender Gebiete definiert worden ist, dieses als das repräsentative Paar interessierender Gebiete gewählt wird. Dann kehrt im Schritt S1424 der Operationsablauf zum Schritt S1430 zurück.
-
14 ist ein Flussdiagramm, das eine beispielhafte Ausführungsform eines Verfahrens zum Auswählen zulässiger Randpunkte unter Verwendung des Mitgliedschaftsbildes aus 12 gemäß dieser Erfindung darstellt. Beginnend mit dem Schritt S1650 geht der Operationsablauf zum Schritt S1651 weiter, in dem ein erster oder nächster Randpunkt ausgewählt wird. Dann wird im Schritt S1652 ein neuer Typ eines Paares interessierender Gebiete EROI1 und EROI2, die im Wesentlichen hinsichtlich der Funktion und Lage nicht mit den zuvor definierten interessierenden Gebieten in Beziehung stehen, für den ausgewählten Randpunkt definiert. In einer beispielhaften Ausführungsform sind EROI1 und EROI2 11 mal 11 Pixelquadrate, die mittig auf der Abtastlinie entsprechend zu dem ausgewählten Randpunkt liegen und 10 Pixel weit von dem ausgewählten Randpunkt auf entsprechend gegenüberliegenden Seiten mittig angeordnet sind. Der Operationsablauf geht dann zum Schritt S1653 weiter.
-
Im Schritt S1653 wird der Grad der Konformität der Mitgliedschaftsbildpixelwerte in dem neuen Paar interessierender Gebiete EROI1 und EROI2 bestimmt. Der Operationsablauf geht dann im Schritt S1654 weiter.
-
Anzumerken wäre, dass die Mitgliedschaftspixelwerte einen Bereich möglicher Werte zwischen einem ersten Wert, der eine perfekte Mitgliedschaft in der Klasse entsprechend zu RROI1 darstellt und einem zweiten Wert, der eine perfekte Mitgliedschaft in der Klasse entsprechend zu RROI2 darstellt, aufweisen. Die Pixel in jedem entsprechendem neuen interessierenden Gebiet EROI1 und EROI2 sollten im Wesentlichen mit ihren entsprechenden Seiten der Mitgliedschaftsbildgrenze übereinstimmen. In beispielhaften Ausführungsform entspricht ein Pixel, wenn der Pixelwert näher an dem ersten Wert liegt, der Klasse RROI1 und wenn dieses näher an dem zweiten Wert liegt, so entspricht es der Klasse des RROI2. In einer weiteren beispielhaften Ausführungsform werden die Mitgliedschaftsbildweite mit einem Schwellwert verglichen, der während einer Lernphase auf der Basis einer oder mehrerer bestimmter Randpunktmitgliedschaftswerte bestimmt wurde, um die Konformität der Mitgliedschaft zu bewerten.
-
Im Schritt S1654 wird bestimmt, ob der Grad der Mitgliedschaftskonformität ein vordefiniertes ”gutes” Kriterium erfüllt. Das heißt, im Schritt S1654 werden die Randpunkte in dem Anfangssatz der Randpunkte PEI analysiert, um zu bestimmen, ob ein detektierter Randpunkt aus dem Anfangssatz der Randpunkte als ein unzulässiger Randpunkt herausgenommen werden sollte. Der detektierte Randpunkt wird beispielsweise nicht herausgenommen, wenn ein vorbestimmter Anteil der Pixel in EROI1 mit dem Kriterium, das deren Seite der Grenze repräsentiert (etwa CV1, eine Eigenschaft von RROI1, oder dergleichen) übereinstimmen und ein vorbestimmter Anteil der Pixel in EROI2 mit dem Kriterium, das deren Seite der Grenze darstellt, übereinstimmt. Wenn die ”guten” Kriterien erfüllt werden, dann springt der Ablauf zum Schritt S1656. Ansonsten geht der Ablauf zum Schritt S1655 weiter, in dem der ausgewählte Randpunkt aus dem Satz anfänglicher Randpunkte entfernt wird. Der Ablauf geht dann zum Schritt S1656 weiter. In einer beispielhaften Ausführungsform muss der Anteil der Pixel, die in jedem Gebiet EROI1 und EROI2 übereinstimmen, mindestens 85% betragen, ansonsten wird der ausgewählte Randpunkt herausgenommen. Es sollte beachtet werden, dass eine geringe Übereinstimmung einem rauschbehafteten oder anormalem Gebiet entspricht, was tendenziell einen ungültigen Randpunkt kennzeichnet. Der vordefinierte Anteil kann abhängig von der Zuverlässigkeit, die für die ”akzeptierten” Randpunkte gewünscht wird, eingestellt werden. Ferner sollte beachtet werden, dass unterschiedliche Arten von Kriterien zur Unterscheidung einer Seite der Grenze von der anderen als Konformitätskriterien während der Normbetriebsoperationen und während der Trainingsmodusoperationen abhängig von den Daten, die in bequemer Weise in jedem der beiden Modi verfügbar sind, verwendet werden können.
-
Im Schritt S1656 wird bestimmt, ob es verbleibende Randpunkte gibt, die zu analysieren sind. Wenn dem so ist, kehrt der Operationsablauf zum Schritt S1651 zurück. Ansonsten geht der Ablauf zum Schritt S1657 weiter.
-
Im Schritt S1657 werden ein oder mehrere Merkmalsabstandswerte, die entsprechend zu jedem verbleibenden Randpunkt bestimmt, der im Schritt S1655 entfernt worden ist. In einer beispielhaften Ausführungsform wird der Fisher-Abstand zwischen den zuvor beschriebenen EROI1 und EROI2 entsprechend zu jedem verbleibenden Randpunkt auf der Grundlage aller Merkmalsbilder in der ausgewählten Teilmenge an Merkmalsbildern bestimmt. In diesem Falle ergibt sich ein einzelner Abstandswert d für jeden verleibenden Randpunkt. Anschließend werden im Schritt S1658 ein oder mehrere entsprechende Differenzparameter d auf der Grundlage des einen oder mehreren bestimmten Abstandswertes d für die verbleibenden Randpunkte bestimmt. Der bzw. die Differenzparameter d können zumindest zwischenzeitlich als hilfsmittelbezogene Daten gespeichert werden. Beispielsweise kann der kleinste der Fisher-Abstandswerte D, die zuvor beschrieben sind, als ein einzelner Differenzparameter d bestimmt werden. Der Operationsablauf geht dann zum Schritt S1659 weiter.
-
Im Schritt S1659 wird ein erster oder nächster Randpunkt aus den verbleibenden Randpunkten PE des Satzes der anfänglichen Randpunkte PEI bestimmt. Der Operationsablauf geht dann zum Schritt S1660 weiter.
-
Im Schritt S1660 wird bestimmt, ob der eine oder die mehreren Merkmalsabstände (D) für den ausgewählten Randpunkt, der im Schritt S1657 bestimmt wird, kleiner als der entsprechende eine oder mehrere Differenzparameter (d), die im Schritt S1658 bestimmt werden, ist. Wenn der eine oder die mehreren Merkmalsabstände (D) für den ausgewählten Randpunkt nicht kleiner als der entsprechende eine oder die mehreren Differenzparameter (d) sind, dann springt der Ablauf zum Schritt S1662. Ansonsten geht der Ablauf zum Schritt S1661 weiter, in dem der ausgewählte Randpunkt aus dem Satz der verbleibenden Randpunkte PE entfernt wird. Der Operationsablauf geht dann zum Schritt S1662 weiter. Im Schritt S1662 wird bestimmt, ob es weitere verbleibende Randpunkte gibt, die zu bewerten sind. Wenn dem so ist, dann kehrt der Ablauf zum Schritt S1659 zurück. Ansonsten geht der Ablauf zum Schritt S1663 weiter, indem der Operationsablauf zum Schritt S1670 zurückkehrt.
-
Es sollte beachtet werden, dass die Differenzparameter d, die durch die Operationen aus dem Schritt S1657 bestimmt worden sind, gesichert und in Verbindung mit dem entsprechenden trainierten Randhilfsmittel während der normalen Betriebsphase in einer ähnlichen Weise wie die anwendbaren Operationen, die mit Bezug zu den Schritten S1657–S1662 beschrieben sind, verwendet werden können. Die Wirkung besteht darin, dass tendenziell sichergestellt wird, dass das während der normalen Laufzeit erzeugt Mitgliedschaftsbild zumindest näherungsweise so geeignet für die Randdetektion ist, wie das zum Trainieren verwendete Mitgliedschaftsbild. Es sollte ferner beachtet werden, dass, wenn d auf den zuvor beschriebenen minimalen Wert festgelegt ist, die Schritte S1659–S1662 in einer Hilfsmitteltrainingsphase nicht ausgeführt werden müssen. Ferner sollte beachtet werden, dass die Menge der Operationen, die ungefähr den Schritten S1651–S1656 und den Schritten S1657–S1662 entsprechen, jeweils dazu neigen, Zuverlässigkeit der verbleibenden Randpunkte sicher zu stellen. Somit kann das in jedem Satz der Operation angewendete Analyseverfahren im Wesentlichen auch einzeln implementiert werden. Obwohl die Zuverlässigkeit und die Genauigkeit für einige Ränder etwas beeinflusst werden könnte, werden deutliche Vorteile in derartigen Ausführungsformen der erfindungsgemäßen Systeme und Verfahren erzielt.
-
15 ist ein Flussdiagramm, das eine beispielhafte Ausführungsform eines Verfahrens zum Detektieren der Position eines ähnlichen spezifischen Falles in einem unterschiedlichen aber ähnlichen spezifischen Fall eines Eingangsbildes darstellt, wobei die Parameter, die entsprechend dem Initialisierungsverfahren definiert sind, das in den 7–14 dargestellt ist, erfindungsgemäß verwendet werden. Wie zuvor erläutert ist, sind die Randdetektionssysteme und Verfahren und insbesondere das Grenzdetektionshilfsmittel durch den Operationsablauf in der zuvor erläuterten Weise initialisiert worden, um spezifische Ränder innerhalb eines spezifischen Eingabebildes unter Anwendung spezifizierter bildabgeleiteter Parameter zu detektieren. Folglich können die erfindungsgemäßen Randdetektionssysteme und Verfahren nunmehr in einem automatisierten Modus angewendet werden, um Ränder oder Grenzen in einem unterschiedlichen aber ähnlichen Falle des Eingangsbildes während eines normalen Operationsablaufes zu lokalisieren. Da die Operationsweise des normalen Betriebsablaufes entsprechend der erfindungsgemäßen Randdetektionssysteme und Verfahren eine Vielzahl gleicher Schritte umfasst, wie dies zuvor im Initialisierungsmodus erläutert ist, wird eine detaillierte Beschreibung der Schritte S2100–S2400 und S2600–S2700 weggelassen, da diese Schritte ähnlich zu den entsprechenden Schritten in den 7–12 sind, wobei jedoch einige Parameter, die zuvor während des ”Lernmodus” bestimmt und akzeptiert gespeichert worden sind, nunmehr ”normalem Modus” verwendet werden.
-
Beginnend mit dem Schritt S2000 geht der Operationsablauf zum Schritt S2100 weiter, in dem ein erstes oder ein nächstes Bild aufgenommen wird. Anschließend wird im Schritt S2200 der interessierende Bereich und die eine oder mehreren Abtastlinien unter Verwendung der in ”Lernmodus” bestimmten Parameter bestimmt. Anschließend werden im Schritt S2300 ein oder mehrere Merkmalsbilder auf der Grundlage der zuvor ausgewählten Filter, die als hilfsmittelbezogene Daten gespeichert sind, erzeugt. Dann wird im Schritt S2400 das Mitgliedschaftsbild auf der Grundlage der Mängel der Merkmalsbilder, die in den Operationen des Schritts 2300 erzeugt worden sind, und den zuvor erläuterten Klassifikationsvektoren CV1 und CV2 erzeugt. Der Operationsablauf geht dann zum Schritt S2500 weiter.
-
Es sollte beachtet werden, dass in diversen anderen beispielhaften Ausführungsform das Mitgliedschaftsbild auf der Grundlage diverser andere Kombinationen aufbewahrter hilfsmittelbezogener Daten und aktuell erzeugter Daten erzeugt werden kann. In einer ersten Ausführungsform werden beispielsweise die Klassifikationsvektoren CV1 und CV2 während des Trainings- oder Lernmodus bestimmt, und die Mitgliedschaftsbildpixelwerte werden entsprechend bestimmt. In einer zweiten Ausführungsform werden aktuelle Klassifikationsvektoren CV1 und CV2 aus dem aktuellen Satz der Merkmalsbilder unter Verwendung eines Paares RROI auf der Grundlage einer während der Trainings- oder Lernphase bestimmten RROI-Definition bestimmt. In einer dritten Ausführungsform werden aktuelle RROI1 und RROI2 unter Anwendung der Operationen der Schritte 1410–1420, aktuelle CV1 und CV2 unter Verwendung der Operationen des Schritts 1450 und die Mitgliedschaftsbildpixelwerte entsprechend bestimmt. Anzumerken ist, dass die zweite und dritte Ausführungsform etwas zeitaufwendiger als die erste Ausführungsform sind, wobei alle drei Ausführungsformen jedoch die Vorteile aufweisen, dass die zuvor ausgewählten Filter, die als hilfsmittelbezogene Daten gespeichert sind, verwendet werden. Diverse andere Kombinationen und Alternativen werden für den Fachmann ersichtlich.
-
Im Schritt S2500 werden eine oder mehrere Randpunkte in jeder Abtastlinie detektiert, und die ”guten” Randpunkte werden ausgewählt. Da sich diese Operation von der Randpunktdetektion und dem Auswahlprozess, der mit Bezug zum Schritt S1600 der 7, 12 und 14 unterscheidet, wird eine detaillierte Beschreibung dieser Operation mit Bezug zu 16 gegeben. Anschließend wird im Schritt S2600 die Position des zu detektierenden Randes entlang jeder Abtastlinie mit einem verbleibenden Randpunkt, der nicht im Schritt S2500 entfernt worden ist, verfeinert und die Randposition wird schließlich bestimmt, so wie dies insgesamt mit Bezug zu Schritt S1700 aus 7 beschrieben ist. Dann wird im Schritt S2700 bestimmt, ob ein weiteres Eingangsbild aufzunehmen ist. Wenn dem so ist, dann kehrt der Operationsablauf zum Schritt S2100 zurück. Ansonsten geht der Ablauf zum Schritt S2800 weiter, in dem der Ablauf des Normalmodus endet.
-
16 ist ein Flussdiagramm, das detaillierter eine beispielhafte Ausführungsform des Verfahrens zum Auswählen der Randpunktpositionen aus 15 gemäß dieser Erfindung darstellt. Beginnend mit dem Schritt S2500 geht der Ablauf zum Schritt S2510 weiter, indem ein Anfangssatz von Randpunkten für den bestimmten Satz an Abtastlinien detektiert wird. Dieser Satz bzw. Menge von Randpunkten basiert auf dem im Schritt S2400 erzeugten Mitgliedschaftsbild. Anschließend wird im Schritt S2520 ein nichtausgewählter Randpunkt ausgewählt. Dann wird im Schritt S2530 der Merkmalsabstand (D) für den ausgewählten Randpunkt von dem Randpunkt bestimmt, der zuvor mit Bezug zu dem Schritt S1657 aus 14 beschrieben ist. Dann geht der Operationsablauf zum Schritt S2540 weiter.
-
Im Schritt S2540 wird bestimmt, ob die eine oder mehreren Merkmalsabstände D für den ausgewählten Randpunkt kleiner als der entsprechende eine oder die mehreren Differenzwerte d sind, die zuvor im Schritt S1658 in 14 definiert sind. Wenn dem so ist, geht der Operationsablauf zum Schritt S2550 weiter. Ansonsten springt der Ablauf zum Schritt S2560. Im Schritt S2550 wird, da der eine oder die mehreren Merkmalsabstände D für den ausgewählten Randpunkt kleiner als der entsprechende eine oder die mehreren Differenzwerte d sind, der ausgewählte Randpunkt von der Anfangsmenge der Randpunkte entfernt. Dann wird im Schritt S2560 bestimmt, ob es noch verbleibende nichtausgewählte Randpunkte gibt. Wenn dies so ist, dann kehrt der Ablauf zum Schritt S2520 zurück. Ansonsten geht der Ablauf zum Schritt S2570 weiter, in dem der Ablauf zum Schritt S2600 zurückkehrt. Beachtet werden sollte, dass in diversen beispielhaften Ausführungsformen die mit Bezug zu den Schritten S1651–S1656 beschriebenen Operationen vor dem Ausführen des Schrittes S2570 im Normalmodus ausgeführt werden, um die Zuverlässigkeit der verbleibenden Randpunkte weiter zu steigern. Zum Beispiel können die Operationen unmittelbar nach dem Schritt 2560 oder unmittelbar nach dem Schritt 2510 ausgeführt werden.
-
In diversen beispielhaften Ausführungsformen ist der Steuerungsbereich 100 in einem programmierten Computer für allgemeine Zwecke implementiert. Der Steuerungsbereich 100 gemäß dieser Erfindung kann jedoch ebenso auf einem speziellen Computer, einem programmierten Mikroprozessor oder Mikrokontroller und peripheren integrierten Schaltungselementen, einem ASIC oder anderen integrierten Schaltungen, einem digitalen Signalprozessor, einer fest verdrahteten elektronischen oder Logikschaltung, etwa einer Schaltung mit diskreten Elementen, einem programmierbaren Logikelement, etwa einer PLD, PLA, FPGA oder PAL oder dergleichen implementiert sein. Im Allgemeinen kann ein beliebiges Element, das in der Lage ist eine finite Zustandsmaschine zu implementieren, die wiederum in der Lage ist, die in den 7–15 gezeigte Flussdiagramme auszuführen, verwendet werden, um den Steuerungsbereich 100 gemäß dieser Erfindung aufzunehmen.
-
Der Speicher 130 kann durch Verwendung einer geeigneten Kombination an änderbaren, flüchtigen oder nichtflüchtigen Speichern oder nichtänderbaren oder festen Speichern verwirklicht werden. Der änderbare Speicher, ob dieser flüchtig oder nichtflüchtig ist, kann implementiert werden, indem ein oder mehrere statische oder dynamische RAM eine Diskette und ein Diskettenlaufwerk, eine beschreibbare oder wiederbeschreibbare optische Diskette und ein Diskettenlaufwerk, eine Festplatte, ein Flashspeicher oder dergleichen verwendet werden. In ähnlicher Weise können die nichtänderbaren oder festen Speicher implementiert werden, indem ein oder mehrere ROM, PROM, EPROM, EEPROM, eine optische ROM-Diskette, etwa eine CD-ROM oder eine DVD-ROM-Diskette und ein Diskettenlaufwerk, oder dergleichen verwendet werden.
-
Es sollte selbstverständlich sein, dass jede der Schaltungen oder anderen Elemente 150–180 und 305–379, die in 1 gezeigt sind, als Teile eines geeignet programmierten allgemein verwendlichen Computers implementiert sein können. Alternativ kann jede der Schaltungen oder anderen Elemente 150–180 und 305–379, die in 1 gezeigt sind, als physikalisch unterscheidbare Hardwareschaltungen mit einer ASIC oder unter Verwendung eines FPGA, eines PDL, eines PLA oder einer PAL, oder unter Verwendung diskreter logischer Elemente oder diskreter Schaltungselemente implementiert sein. Die spezielle Form jedes der Schaltungen oder anderen Elemente 150–180 und 305–379, die in 1 gezeigt sind, hängt von der Designauswahl ab und ist für den Fachmann offensichtlich und vorhersagbar.
-
Des Weiteren kann der Steuerungsbereich 100 als Software implementiert sein, die in einem programmierten allgemein verwendbaren Computer, einem speziellen Computer, einem Mikroprozessor oder dergleichen ausgeführt wird. Der Steuerungsbereich 100 kann ferner durch physikalisches Integrieren dieser in ein Software- und/oder Hardwaresystem, etwa die Hardware- und Softwaresysteme eines Darstellungssystems.
-
Obwohl die Erfindung mit Bezug zu bevorzugten Ausführungsformen beschrieben ist, sollte es selbstverständlich sein, dass die Erfindung nicht auf die bevorzugten Ausführungsformen oder Aufbauten beschränkt ist. Im Gegenteil, es ist beabsichtigt, dass die Erfindung diverse Modifikation und äquivalente Anordnungen umfasst. Obwohl ferner die diversen Elemente der bevorzugte Ausführungsformen in diversen Kombinationen und Anordnungen dargestellt sind, die als beispielhaft zu betrachten sind, liegen andere Kombinationen und Konfigurationen einschließlich weiterer oder weniger oder lediglich eines einzelnen Elements ebenso im Grundgedanken und Schutzbereich der Erfindung.
-
Bezugszeichenliste
-
Fig. 1
- 102
- Anzeigeelement
- 104
- Eingabeelement
- 110
- Eingabe/Ausgabeschnittstelle
- 120
- Steuerung
- 190
- Stromversorgung
- 191
- Beleuchtungsstromversorgungsbereich
- 198
- Generator zur Erzeugung des interessierenden Bereichs
- 130
- Speicher
- 131
- Videospeicher
- 132
- Filterbereich
- 133
- Teilprogrammbereich
- 370
- Randpunktanalysierschaltung
- 380
- Grenzlokalisier- und Verfeinerungsschaltung
- 310
- Schaltung zum Analysieren des gefilterten Bildes
- 350
- Fallspezifische Filterauswahlschaltung
- 360
- Pseudobilderzeugungsschaltung
- 390
- Randmodusbestimmungsschaltung
Fig. 2 - 377
- Abtastlinienbestimmungsschalter
- 378
- Randpunktdetektionsschalter
- 379
- Randpunktverfeinerungsschaltung
- 381
- Formanalysierschaltung
- 382
- Ausreissereliminierschaltung
- 383
- Randpositionsbestimmungsschaltung
- 311
- Kandidatenfilterauswahlschaltung
- 312
- Merkmalsbilderzeugungsschaltung
- 313
- Schaltung zum Erzeugen von interessierenden Gebieten
- 314
- Schaltung zum Vergleichen interessierender Gebiete
- 391
- Randhilfsmittel-Interpretierschaltung
- 392
- Schaltung zum analysieren des interessierenden Bereichs
Fig. 7 - S1100
- Aufnehmen des ersten/nächsten Bildes
- S1200
- Bestimmen des interessierenden Bereichs und der Abtastlinien
- S1300
- Erzeugen von Merkmalsbildern
- S1400
- Auswählen verwendbarer Merkmalsbilder
- S1500
- Erzeugen des Mitgliedschaftsbildes
- S1600
- Detektieren und Auswählen von Randpunkten
- S1700
- Überarbeiten der Position der Randpunkte und Verfeinern des Randes
- S1800
- Empfangen/Speichern von Daten
- S1900
- ein weiteres Bild?
- yes, no
- ja, nein
Fig. 8 - S1200
- Bestimmen des interessierenden Bereichs
- S1210
- Verwenden eines automatischen Detektionshilfsmittels?
- S1220
- Erzeugen eines Grenzdetektionshilfsmittels
- S1230
- Auswählen eines Punktes in dem Grenzdetektionshilfsmittels
- S1240
- Bestimmen von Längen/Endpunkten der Abtastlinien
- S1260
- Zurück zum Schritt S1300
- S1250
- Position eines automatischen Grenzhilfsmittels festlegen
- yes, no
- ja/nein
Fig. 9 - S1300
- Erzeugen von Merkmalsbildern
- S1310
- Auswählen von Kandidatenmerkmalsfiltern in automatischer Weise?
- S1330
- automatisches Bestimmen der Kandidatenmerkmalsfilter
- S1320
- Auswählen der Kandidatenmerkmalsfilter
- S1340
- Anwenden der Kandidatenmerkmalsfilter auf den interessierenden Bereich
- S1350
- Zurück zum Schritt S1400
- yes, no
- ja/nein
Fig. 10 - S1400
- Auswählen verwendbarer Merkmalsbilder
- S1410
- Bestimmen eines oder mehrerer Paare von interessierenden Gebieten
- S1420
- Auswahl des repräsentativen Paares interessierender Gebiete
- S1430
- Auswählen einer Teilmenge von Merkmalsbildern auf der Grundlage des repräsentativen Paares ausgewählter interessierender Gebiete
- S1440
- Bestimmen eines neuen repräsentativen Paares interessierender Gebiete
- auf der
- Grundlage der ausgewählten Teilmenge an Merkmalsbildern
- S1450
- Erzeugen von Klassifikationsvektoren auf der Grundlage des repräsentativen Paares interessierender Gebiete und der Teilmenge an Merkmalsbildern
- S1460
- Zurück zum Schritt S1500
Fig. 11 - S1500
- Bestimmen des Mitgliedschaftsbildes
- S1510
- Wählen ersten/nächstes Paar
- S1520
- Bestimmen Mitgliedschaftswert für das aktuelle Pixel
- S1530
- Noch unausgewählte Pixel vorhanden?
- S1540
- Bestimmen Bewegungsrichtung entlang den Abtastlinien
- S1550
- Zurück zum Schritt S1600
- yes, no
- ja, nein
Fig. 12 - S1600
- Detektieren und Auswählen von Rändern
- S1610
- Auswählen der ersten/nächsten Abtastlinie
- S1620
- Detektieren von Randpunkten in einer Abtastzeile auf der Grundlage eines Mitgliedschaftsbildes
- S1630
- Hinzufügen der detektierten Randpunkte zu dem anfänglich Satz an Randpunkten
- S1640
- sind noch unausgewählte Abtastlinien vorhanden?
- S1650
- Auswählen gültiger Randpunkte und Verwendung des Mitgliedschaftsbildes
- S1670
- zurück zum Schritt S1700
- yes, no
- ja, nein
Fig. 13 - S1420
- Auswählen des repräsentativen Paares in interessierender Gebiete
- S1421
- Erzeugen eines Ähnlichkeitsabstandes für erstes/nächstes Paar aus interessierenden Gebieten aus dem Satz an Merkmalsbildern
- S1422
- Ergebnisse für den Abstand für alle Paare interessierender Gebiete bestimmt?
- S1423
- Bestimmen des repräsentativen Paares interessierender Gebiete mit der größten Unähnlichkeit auf der Grundlage der erzeugten Ähnlichkeitsabstände
- S1424
- Zurück zum Schritt S1430
- yes, no
- ja, nein
Fig. 14 - S1650
- Auswählen gültiger Randpunkte unter Verwendung des Mitgliedschaftsbildes
- S1651
- Auswählen eines ersten/nächsten Randpunktes
- S1652
- Erzeugen neuer Arten von interessierenden Gebieten für den ausgewählten Randpunkt
- S1653
- Bestimmen des Grades der Mitgliedschaftskonformität von Punkten in der neuen Art von interessierenden Gebieten
- S1654
- Erfüllen das Ausmaß der Mitgliedschaften ”gute” Kriterien?
- S1655
- Verwerfen ausgewählter Randpunkte von der Menge der ursprünglichen Randpunkte
- S1656
- Sind noch Randpunkte vorhanden?
- S1657
- Bestimmen eines oder mehrerer Merkmalsabstände (D) für jeden verbleibenden Randpunkt
- S1658
- Bestimmen von Differenzparametern d auf der Grundlage von Abstandswerten für verbleibende Randpunkte
- S1659
- Auswählen eines ersten oder nächsten Randpunktes aus dem Satz der verbleibenden Randpunkte
- S1660
- D < d für den ausgewählten Randpunkt?
- S1661
- Entfernen des ausgewählten Randpunktes aus dem Satz der verbleibenden Randpunkte
- S1662
- Sind noch Randpunkte übrig?
- S1663
- Zurück zum Schritt S1670
- yes, no
- ja, nein
Fig. 15 - S2000
- Normaler Betriebsmodus
- S2100
- Aufnehmen eines ersten/nächsten Bildes
- S2200
- Bestimmen von den interessierenden Bereich und von Abtastlinien
- S2300
- Erzeugen von Merkmalsbildern auf der Grundlage zuvor ausgewählter Merkmalsfilter
- S2400
- Erzeugen eines Mitgliedschaftsbildes auf der Grundlage erzeugter Merkmalsbilder und definierter Merkmalsvektoren
- S2500
- Detektieren und Auswählen von Randpunkten
- S2600
- Verfeinern jedes verbleibenden Randpunktes und lokalisieren des Randes
- S2700
- Ein weiteres Bild?
- yes, no
- ja, nein
Fig. 16 - S2500
- Detektieren und Auswählen von Randpunkten
- S2510
- Detektieren eines anfänglichen Satzes aus Randpunkten für einen bestimmten Satz an Abtastlinien auf der Grundlage eines Mitgliedschaftsbildes und der Richtung der Abtastlinien
- S2520
- Auswählen eines noch nicht gewählten Randpunktes
- S2530
- Auswählen von Merkmalsbildern
- S2540
- Bestimmen eines Merkmalsabstandes (D) für einen ausgewählten Randpunkt aus den ausgewählten Merkmalsbildern
- S2560
- Entfernen des ausgewählten Randes aus dem anfänglichen Satz von Randpunkten
-
-
- S2570
- Sind noch unausgewählte Randpunkte vorhanden?
- S2580
- Zurück zum Schritt S2600
- yes, no
- ja, nein