DE3886560T2 - Musterkonturen in Bildverarbeitung. - Google Patents
Musterkonturen in Bildverarbeitung.Info
- Publication number
- DE3886560T2 DE3886560T2 DE88101696T DE3886560T DE3886560T2 DE 3886560 T2 DE3886560 T2 DE 3886560T2 DE 88101696 T DE88101696 T DE 88101696T DE 3886560 T DE3886560 T DE 3886560T DE 3886560 T2 DE3886560 T2 DE 3886560T2
- Authority
- DE
- Germany
- Prior art keywords
- pixel
- size
- axis
- grayscale gradient
- magnitude
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 24
- 238000000034 method Methods 0.000 claims description 53
- 238000004364 calculation method Methods 0.000 claims description 8
- 239000013598 vector Substances 0.000 description 42
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 17
- 239000000872 buffer Substances 0.000 description 12
- 239000011159 matrix material Substances 0.000 description 11
- 238000001514 detection method Methods 0.000 description 8
- 230000000295 complement effect Effects 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 238000012850 discrimination method Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000003672 processing method Methods 0.000 description 2
- 230000008571 general function Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/36—Applying a local operator, i.e. means to operate on image points situated in the vicinity of a given point; Non-linear local filtering operations, e.g. median filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Nonlinear Science (AREA)
- Image Analysis (AREA)
Description
- Diese Erfindung bezieht sich auf die Extraktion von Musterkonturen bei der Bildverarbeitung und betrifft ein Verfahren und eine Vorrichtung zum Extrahieren von Konturlinien von einem Muster, das bei der Bildverarbeitungstechnik erhalten wurde.
- Mit dem Fortschreiten der Bildverarbeitungstechnik erstrecken sich ihre Anwendungsgebiete bis auf Gebiete des Bearbeitens und Untersuchens von Bildern von Objekten oder des Erkennens von Zeichen, bei denen Konturlinien eines Objektbildes von dem Muster, das durch ein Eingangssignal gebildet wird, das von einer TV-Kamera oder einer ähnlichen Quelle erhalten wurde, extrahiert und unterschieden werden.
- Bei der Bildverarbeitung wird ein Bild in kleine Bildelemente (picture element, gewöhnlich als "Pixel" abgekürzt) zerlegt, die eine Matrix bilden. Informationen bezüglich jedes Pixels werden in einer Speichereinheit in der Form eines "Wortes" gespeichert, das eine spezifische Wortlänge hat, die Adreßinformationen in einem rechtwinkligen Koordinatensystem enthält, Graustufeninformationen (eine Helligkeits- oder Dichtestufe jedes Pixels mit mehrstufiger Größe) von 3 bis 8 Bit, und Primärfarbinformationen von rot, grün und blau.
- In bezug auf Verarbeitungsverfahren zum Extrahieren von Konturen eines Bildes können die Farbinformationen unbedeutend sein.
- Mehrere Verfahren zum Extrahieren von Musterkonturen sind vorher vorgeschlagen worden.
- Ein Muster wird zuerst zu einem binär kodierten Muster verarbeitet, und dann wird eine Randgrenze von ihm extrahiert. Dieses Verfahren hat den Vorteil einer hohen Geschwindigkeit, aber es ist schwierig, den geeigneten Schwellenwert zum binären Kodieren des Musters auszuwählen.
- (2) Ein Muster wird geprüft, um zu bestimmen, ob ein Pixel bei der Dichte oder der Graustufe eine große Veränderung zu benachbarten Pixels aufweist oder nicht, und wenn festgestellt wird, daß das Pixel eine große Veränderung aufweist, wird entschieden, daß das Pixel auf einer Konturlinie liegt. Dieses Verfahren hat den Nachteil des Bildens von vielen unterbrochenen Konturen.
- (3) Ein Muster wird der Gauß-Laplace-Verarbeitung (eine Bestimmungsart einer zweiten Ableitung einer Graustufe von jedem Pixel) unterzogen, und wenn festgestellt wird, daß das Pixel eine Vorzeichenveränderung bezüglich benachbarter Pixels aufweist, wird eingeschätzt, daß das Pixel auf einer Konturlinie liegt. Die Genauigkeit ist sehr gut, aber dieses Verfahren erfordert ein Großrechnersystem.
- (4) Ein Muster wird geprüft, um zu bestimmen, ob ein Pixel den maximalen Graustufengradienten in der Richtung seines Graustufengradienten aufweist. Die Genauigkeit ist sehr gut, aber für die Verarbeitung ist eine beträchtliche Zeit erforderlich.
- Von den obengenannten Verfahren wäre Verfahren (4) sehr vorteilhaft bezüglich Genauigkeit und Hardwareumfang, falls die Verarbeitungsgeschwindigkeit verbessert werden könnte. Der Grund dafür, daß dieses Verfahren ein großes Maß an Zeit erfordert, liegt darin, daß es auf Grund der Komplexität seines Algorithmus hauptsächlich von Softwaretechnik abhängt. Einzelheiten des Algorithmus dieses Verfahrens werden später erläutert.
- Fig. 1 zeigt einen Teil einer Graustufenverteilung, die in einem Speicher gespeichert ist, für eine Matrix von Pixels, die in einem zweidimensionalen Raster angeordnet sind, das durch X- und Y-Koordinaten bezeichnet ist. Aus praktischen Gründen sind die X- und Y-Koordinaten der Pixels durch X1 bis X6 und Y1 bis Y5 ausgedrückt, und die Zahl, die in jedem Rasterviereck eingetragen ist, stellt die Graustufe des entsprechenden Pixels dar. Um Musterkonturen von dem Bild von Fig. 1 zu extrahieren, ist ein Verarbeitungsablauf zum Beispiel wie durch das Blockdiagramm von Fig. 2 gezeigt. Bilddaten, die in einer Speichereinheit in einer Bildeingabesektion 1 gespeichert sind und aus Adreß- und Graustufeninformationen bestehen, werden einem Differentialkalkulator der X-Richtung 31x und einem Differentialkalkulator der Y-Richtung 31y ausgesetzt, in denen die Graustufendifferentiale Dx und Dy in den X- und Y-Richtungen berechnet werden. Diese Komponentendatenelemente Dx, Dy werden kombiniert und zwei Vektorkomponentenkalkulatoren eingegeben, da der Graustufengradient einen Vektor bildet (das Wort "Gradient" wird nun anstelle von Differential verwendet, da es sich um einen Vektor handelt). Die zwei Komponentenkalkulatoren bestehen aus einem Gradientengrößenkalkulator 32 und einem Gradientenrichtungskalkulator 33, in denen die Komponenten Fp und Gp eines Graustufengradientenvektors erhalten werden können. Diese Datenelemente werden dem Konturenextraktor 34 eingegeben, in dem Berechnungen bezüglich jedes Pixels ausgeführt werden, indem seine Graustufendaten mit jenen von angrenzenden Pixels verglichen werden. Ein Vergleich von Graustufengradienten wird in einer Richtung des Graustufengradientenvektors des betreffenden Pixels ausgeführt, und wenn festgestellt wird, daß das Pixel einen maximalen Graustufengradienten aufweist, wird dieses Pixel als eines der Pixels angesehen, die eine Musterkontur bilden, und wird von anderen unterschieden. Einzelheiten der obigen Schritte werden nun unter Bezugnahme auf Fig. 3 näher erläutert. Um die Berechnung von Graustufendifferentialen Dx und Dy in dem Differentialkalkulator der X-Richtung 31x und dem Differentialkalkulator der Y-Richtung 31y von Fig. 2 zu erläutern, wird eine Anordnung von 3 x 3 Pixels betrachtet, bei der 8 Pixels durch X-, Y-Koordinatenpaare 00 bis 22 bezeichnet sind, die ein Pixel P umgeben. Wenn die Graustufen der 8 "umgebenden" Pixels entsprechend mit L&sub0;&sub0; bis L&sub2;&sub2; bezeichnet werden, dann nehmen die Graustufendifferentiale Dx und Dy in den X- und Y-Richtungen des Pixels P Werte entsprechend folgender Gleichungen an:
- Dx = (L&sub2;&sub2;+L&sub1;&sub2;+L&sub0;&sub2;-L&sub2;&sub0;-L&sub1;&sub0;-L&sub0;&sub0;)/3,
- Dy = (L&sub2;&sub2;+L&sub2;&sub1;+L&sub2;&sub0;-L&sub0;&sub2;-L&sub0;&sub1;-L&sub0;&sub0;)/3.
- Die Werte von Dx und Dy, die aus den obigen Gleichungen erhalten wurden, zeigen die durchschnittlichen Differentiale der X- bzw. Y-Richtung, wobei beide Differentiale zwischen zwei Gruppen von Pixels gesucht werden, die auf gegenüberliegenden Seiten von Pixel P liegen. Diese Werte Dx und Dy werden als Komponenten verwendet, die den Graustufengradienten des Pixels P bilden.
- Der Graustufengradient ist eine Größe, die einen Betrag und eine Richtung hat und einen Vektor bildet. Deshalb ist es erforderlich, den absoluten Betrag und die Richtung des Graustufengradientenvektors zu bestimmen, die durch Fp bzw. Gp bezeichnet werden.
- Die Größe Fp kann in einem Graustufengradientenkalkulator 32 unter Verwendung folgender Beziehung erhalten werden:-
- Fp = (Dx²+Dy²)½.
- Ferner kann die Richtung Gp des Graustufengradienten in einem Gradientenrichtungskalkulator 33 unter Verwendung folgender Gleichungen berechnet werden:-
- Gp = Cos&supmin;¹(Dx/Fp) wobei Dy ≥ 0,
- Gp = -Cos&supmin;¹(Dx/Fp) wobei Dy < 0.
- Um Konturenlinien zu extrahieren, ist es erforderlich, die obige Berechnung für jedes Pixel auszuführen, das eine Größe Fp hat, die größer als ein gewisser spezifischer Wert ist. Für ein Pixel, das eine Größe Fp hat, die kleiner als der spezifische Wert ist, werden besonders ausgewählte Zahlen wie 999 oder dergleichen ausgegeben, und solche Pixels werden bezüglich der Musterkontur als irrelevante Pixels angesehen.
- Auf diese Weise werden die Fp- und Gp-Werte für jedes Pixel in dem Graustufengradientenkalkulator 32 und dem Gradientenrichtungskalkulator 33 einer nach dem anderen sequentiell berechnet.
- Danach werden unter Nutzung des folgenden Algorithmus die Pixels, die eine Musterkontur bilden, ausgewählt, und andere Pixels, die zum Bilden einer Musterkontur ungeeignet sind, sind bei dem Konturenextraktor 34 ausgenommen.
- In dem Konturenextraktor 34 werden die Gp-Daten zuerst gemäß den Richtungen in acht Gruppen gruppiert, wie in Fig. 4 gezeigt. Ein Umfang wird gleichmäßig in 8 Bögen geteilt, und die entsprechenden Bögen sind mit den Bezugszeichen a, b, c und d versehen; zwei Bögen, die auf gegenüberliegenden Seiten des Ursprungs angeordnet sind, sind mit demselben Bezugszeichen versehen. Ein Bereich, der durch zwei Radien und einen Bogen wie a, b, c oder d begrenzt ist, ist Gegenstand einer Untersuchung. Solch ein Bereich wird entsprechend als Sektor a, b, c oder d bezeichnet. Eine positive Richtung der X-Achse wird als Bezug genommen, und jeder Sektor ist durch die folgenden Bedingungen definiert:
- Sektor a: π/8 > Gp ≥ -π/8, und die Zone, die um einen Winkel π weiter rotiert ist,
- Sektor b: 3π/8 > Gp ≥ π/8, und die Zone, die um einen Winkel π weiter rotiert ist,
- Sektor c: 5π/8 > Gp ≥ 3π/8, und die Zone, die um einen Winkel π weiter rotiert ist, und
- Sektor d: 7π/8 > Gp ≥ 5π/8, und die Zone, die um einen Winkel π weiter rotiert ist.
- Je nachdem, in welchem Sektor ein Graustufengradientenvektor Gp enthalten ist, wird eine der folgenden Unterscheidungsbedingungen angewendet. Ein Pixel, das den folgenden Bedingungen genügt, wird als eines der Pixels angesehen, die eine Musterkontur bilden.
- (1) Wenn Gp in Sektoren a enthalten ist, werden die folgenden zwei Bedingungen angewendet:
- Fp(x,y) ≥ Fp(x-1,y), und
- Fp(x,y) ≥ Fp(x+1,y).
- (2) Wenn Gp in Sektoren b enthalten ist, werden die folgenden zwei Bedingungen angewendet:
- Fp(x,y) ≥ Fp(x+1,y+1), und
- Fp(x,y) ≥ Fp(x-1,y-1).
- (3) Wenn Gp in Sektoren c enthalten ist, werden die folgenden zwei Bedingungen angewendet:
- Fp(x,y) ≥ Fp(x,y+1), und
- Fp(x,y) ≥ Fp(x,y-1).
- (4) Wenn Gp in Sektoren d enthalten ist, werden die folgenden zwei Bedingungen angewendet:
- Fp(x,y) ≥ Fp(x+1,y-1), und
- Fp(x,y) ≥ Fp(x-1,y+1).
- Jede der obigen Bedingungen läuft auf ein Prüfen hinaus, ob die Graustufengröße Fp für Pixel P (in Fig. 3) einen maximalen Wert von drei Pixels längs seiner Gradientenrichtung Gp hat. Falls festgestellt wird, daß Fp maximal ist, wird eingeschätzt, daß sich Pixel P auf der Musterkontur befindet.
- Zum Beispiel hat das Pixel, das sich auf der Rasterkoordinate (X3,Y3) in Fig. 1 befindet, eine Gradientenrichtung wie durch einen Pfeil angegeben, und die Graustufengrößen seiner zwei benachbarten Pixels (X2,Y4) und (X4,Y2) längs des Pfeils sind kleiner als jene des Pixels P(X3,Y3), deshalb wird eingeschätzt, daß Pixel P eines der Pixels ist, die die Musterkontur bilden.
- Bei der obigen Erläuterung wird ein Vergleich mit zwei angrenzenden Pixels ausgeführt, um den maximalen Graustufengrößenwert zu bestimmen. Im praktischen Einsatz kann jedoch ein Vergleich unter fünf bis sieben benachbarten Pixels ausgeführt werden, um eine höhere Genauigkeit zu erlangen. Dies ist in Fig. 5 und 6 schematisch dargestellt. Es wird angenommen, daß jeder Pfeil die Größe und Richtung des Graustufengradientenvektors eines entsprechenden Pixels zeigt. Wenn in Fig. 5 Vektor p mit vier Vektoren a bis d verglichen wird, wird festgestellt, daß Vektor b maximal ist und Vektor p kleiner als Vektor b ist; deshalb wird eingeschätzt, daß das Pixel, auf das sich Vektor p bezieht, nicht auf der Musterkontur liegt. Wenn Vektor p' mit vier Vektoren a' bis d' verglichen wird, wird festgestellt, daß Vektor p' maximal ist, und eingeschätzt, daß das entsprechende Pixel auf der Musterkontur liegt.
- Auf diese Weise werden alle Pixels Unterscheidungsverfahren unterzogen, und schließlich (Fig. 6) werden Pixels extrahiert, bei denen eingeschätzt wird, daß sie die Musterkontur bilden. Diese Pixels sind gekennzeichnet.
- Um Musterkonturen zu extrahieren, werden die oben umrissenen Verfahren für alle Pixels wiederholt, wobei der obige Algorithmus befolgt wird. Die unterschiedenen Pixels bilden die Musterkonturen. Die Verfahren sind in Programmform geschrieben und werden unter Programmsteuerung ausgeführt. Dies erfordert jedoch eine beträchtliche Menge an Verarbeitungszeit und ist nicht zum Extrahieren von Musterkonturen in Echtzeitverarbeitung geeignet.
- Gemäß einem ersten Aspekt der vorliegenden Erfindung ist ein Verfahren zum Extrahieren von Musterkonturen von einem Bild vorgesehen, das aus einer Vielzahl von Pixels besteht, wobei jedes Pixel eine von einer Vielzahl von Graustufen hat, welches Verfahren umfaßt:-
- (a) Berechnen der Größe und Richtung eines Graustufengradienten für jedes Pixel;
- (b) Vorsehen einer X-Achsen-Darstellung jedes Pixels durch Unterscheiden der Richtung des Graustufengradienten des Pixels, bei welcher X-Achsen-Darstellung die berechnete Größe des Graustufengradienten beibehalten wird, falls beurteilt wird, daß die Richtung des Graustufengradienten des Pixels innerhalb eines spezifischen Winkelbereichs einer Richtung der X-Achse liegt, andernfalls die Graustufengradientengröße auf null gesetzt wird;
- (c) Vorsehen einer Y-Achsen-Darstellung jedes Pixels durch Unterscheiden der Richtung des Graustufengradienten des Pixels, bei welcher Y-Achsen-Darstellung die berechnete Größe des Graustufengradienten beibehalten wird, falls eingeschätzt ist, daß die Richtung des Graustufengradienten des Pixels innerhalb eines spezifischen Winkelbereichs einer Richtung der Y-Achse liegt, andernfalls wird die Graustufengradientengröße auf null gesetzt;
- (d) Unterscheiden der X-Achsen-Darstellung jedes Pixels durch Vergleichen der Graustufengradientengröße der X-Achsen-Darstellung des Pixels mit den Graustufengradientengrößen der X-Achsen-Darstellungen von jedem eines Satzes von benachbarten Pixels, welche Pixels auf gegenüberliegenden Seiten der X-Richtung des unterschiedenen Pixels angeordnet sind, und Vorsehen eines ersten Vergleichsausgabepegels, wenn die Größe der X-Achsen- Darstellung des unterschiedenen Pixels größer als oder gleich der maximalen Größe der X-Achsen- Darstellung des Satzes von benachbarten Pixels ist, andernfalls Vorsehen eines zweiten Vergleichsausgabepegels;
- (e) Unterscheiden der Y-Achsen-Darstellung jedes Pixels durch Vergleichen der Graustufengradientengröße der Y-Achsen-Darstellung des Pixels mit den Graustufengradientengrößen der Y-Achsen-Darstellungen von jedem einer Gruppe von benachbarten Pixels, welche Pixels auf gegenüberliegenden Seiten der Y-Richtung des unterschiedenen Pixels angeordnet sind, und Vorsehen eines ersten Vergleichsausgabepegels, wenn die Größe der Y-Achsen- Darstellung des unterschiedenen Pixels größer als oder gleich der maximalen Größe der Y-Achsen- Darstellung der Gruppe von benachbarten Pixels ist, andernfalls Vorsehen eines zweiten Vergleichsausgabepegels;
- (f) Bilden der Musterkonturen durch Pixels, die durch logisches Summieren von Vergleichsausgabepegeln, die durch (d) und (e) bereitgestellt wurden, ausgewählt wurden.
- Gemäß einem zweiten Aspekt der Erfindung ist eine Bildverarbeitungsvorrichtung vorgesehen, die betriebsfähig ist, um Musterkonturen von einem Bild zu extrahieren, das aus einer Vielzahl von Pixels besteht, wobei jedes Pixel eine von einer Vielzahl von Graustufen hat, welche Vorrichtung umfaßt:
- (a) eine Berechungsschaltungsanordnung, die betriebsfähig ist, um Größe und Richtung des Graustufengradienten für jedes Pixel zu berechnen;
- (b) eine erste Unterscheidungsschaltungsanordnung, die betriebsfähig ist, um eine X-Achsen-Darstellung jedes Pixels durch Unterscheiden der Richtung des Graustufengradienten des Pixels vorzusehen, bei welcher X-Achsen-Darstellung die berechnete Größe des Graustufengradienten beibehalten wird, falls beurteilt wird, daß die Richtung des Graustufengradienten des Pixels innerhalb eines spezifischen Winkelbereichs einer Richtung der X-Achse liegt, andernfalls die Graustufengradientengröße auf null gesetzt wird;
- (c) eine zweite Unterscheidungsschaltungsanordnung, die betriebsfähig ist, um eine Y-Achsen-Darstellung jedes Pixels durch Unterscheiden der Richtung des Graustufengradienten des Pixels vorzusehen, bei welcher Y-Achsen-Darstellung die berechnete Größe des Graustufengradienten beibehalten wird, falls beurteilt wird, daß die Richtung des Graustufengradienten des Pixels innerhalb eines spezifischen Winkelbereichs einer Richtung der Y-Achse liegt, andernfall die Graustufengradientengröße auf null gesetzt wird;
- (d) eine erste Vergleichsschaltungsanordnung, die betriebsfähig ist, um die X-Achsen-Darstellung jedes Pixels zu unterscheiden, durch Vergleichen der Graustufengradientengröße der X-Achsen-Darstellung des Pixels mit den Graustufengradientengrößen der X-Achsen-Darstellungen von jedem eines Satzes von benachbarten Pixels, welche Pixels auf gegenüberliegenden Seiten der X-Richtung des unterschiedenen Pixels angeordnet sind, und Bereitstellen eines ersten Vergleichsausgabepegels, wenn die Größe der X-Achsen-Darstellung des unterschiedenen Pixels größer als oder gleich der maximalen Größe der X-Achsen-Darstellung des Satzes von benachbarten Pixels ist, andernfalls Bereitstellen eines zweiten Vergleichsausgabepegels;
- (e) eine zweite Vergleichsschaltungsanordnung, die betriebsfähig ist, um die Y-Achsen-Darstellung jedes Pixels zu unterscheiden, durch Vergleichen der Graustufengradientengröße der Y-Achsen-Darstellung des Pixels mit den Graustufengradientengrößen der Y-Achsen-Darstellungen von jedem einer Gruppe von benachbarten Pixels, welche Pixels auf gegenüberliegenden Seiten der Y-Richtung des unterschiedenen Pixels angeordnet sind, und Bereitstellen eines ersten Vergleichsausgabepegels, wenn die Größe der Y-Achsen-Darstellung des unterschiedenen Pixels größer als oder gleich der maximalen Größe der Y-Achsen-Darstellung des Satzes von benachbarten Pixels ist, andernfalls Bereitstellen eines zweiten Vergleichsausgabepegels; und
- (f) eine Logikschaltungsanordnung, die betriebsfähig ist, um Vergleichsausgabepegel, die durch (d) und (e) bereitgestellt wurden, logisch zu summieren.
- Eine Ausführungsform der Erfindung kann ein Verfahren zum Extrahieren von Konturlinien mit hoher Geschwindigkeit vorsehen. Eine Ausführungsform der vorliegenden Erfindung kann eine Vorrichtung vorsehen, bei der eine Echtzeitverarbeitung möglich ist.
- Ausführungsformen der vorliegenden Erfindung können ein Verfahren und eine Vorrichtung zum Erhalten von Konturlinien in Echtzeit mit hoher Geschwindigkeit vorsehen, und vorsehen, daß Verfahren teilweise in der Hardware inkorporiert sind.
- Wenn Teile der Verfahren soweit wie möglich in der Hardware inkorporiert sind, ist eine höhere Verarbeitungsgeschwindigkeit erreichbar.
- Ausführungsformen der vorliegenden Erfindung können auch ein Verfahren und eine Vorrichtung zum Extrahieren von Konturlinien mit erhöhter Genauigkeit vorsehen.
- Bei einer Ausführungsform der vorliegenden Erfindung wird ein vereinfachtes Unterscheidungsverfahren zum Auswählen eines Pixels verwendet, das eine maximale Größe des Graustufengradientenvektors hat. Graustufengradientenvektoren sind in X-Achsen- und Y-Achsen-Gruppen gruppiert, und ein Vergleich der Größe (zur Auswahl) wird unter Pixels ausgeführt, die entweder längs der Richtung der X-Achse oder der Y-Achse angeordnet sind.
- Um zu unterscheiden, ob ein spezielles Pixel eines der Pixels ist, die eine Musterkontur bilden, werden die Graustufendaten des Pixels, das Gegenstand der Unterscheidung ist, und von benachbarten Pixels zuerst X- und Y-Differentialkalkulatoren und dann Gradientengrößen- und Gradientenrichtungskalkulatoren auf ähnliche Weise wie bei dem vorher vorgeschlagenen und oben beschriebenen Verfahren eingegeben. Da der Graustufengradient eine Vektorgröße ist, müssen die Größe Fp und die Richtung Gp des Graustufengradienten für nachfolgende Verfahren berechnet werden.
- Als nächstes wird auf der Basis von Graustufengradientenvektoren eine Teilung in zwei Gruppen vorgenommen, d. h., in eine X-Achsen-Gruppe und eine Y-Achsen-Gruppe. Wenn ein spezielles Pixel einen Winkel Gp in einem der Bereiche von ± 45º und 180º ± 45º in bezug auf die X-Achse hat, wird dieses Pixel nachfolgend als zu einer X-Achsen-Gruppe gehörend verarbeitet. Wenn ein spezielles Pixel einen Winkel Gp in einem der Bereiche von 90º ± 45º und 270º ± 45º in bezug auf die X-Achse hat, wird dieses Pixel nachfolgend als zu einer Y-Achsen-Gruppe gehörend verarbeitet.
- Um die Pixels, die die Musterkontur bilden, zu extrahieren, sollte ein Pixel mit einer maximalen Größe Fp von angrenzenden (benachbarten) Pixels ausgewählt werden. Dieses Extraktionsverfahren kann durch Vergleichen der Fp- Daten des Pixels, das Gegenstand der Unterscheidung ist, mit jenen von benachbarten Pixels ausgeführt werden, die entweder in X-Richtungen oder in Y-Richtungen von dem Pixel angeordnet sind, das Gegenstand der Unterscheidung ist (aber nicht sowohl in X- als auch Y-Richtungen). Dies ist vollkommen unterschiedlich zu dem vorherigen Verfahren, bei dem ein Vergleich längs der Richtung des Graustufengradienten ausgeführt wird.
- Um das Unterscheiden des Pixels mit der maximalen Größe Fp zu erleichtern, werden bei einer Ausführungsform der Erfindung ferner ein Maximalwertfilter und ein Komparator für die Gruppen der X-Achse bzw. der Y-Achse eingesetzt. Ein Maximalwertfilter hat die Funktion vorzusehen, daß die Größe Fp eines betreffenden Pixels oder, mit anderen Worten, eines zentralen Pixels (nachstehend wird das Pixel, das Gegenstand der Unterscheidung ist, kurz als das zentrale Pixel bezeichnet) durch eine maximale Größe Fpmx ersetzt wird, im Fall von Pixels der X-Achsen-Gruppe, wobei Fpmx der maximale Wert von Fp ist, der bei einer Vielzahl von Pixels auftritt, die auf linken und rechten Seiten (das heißt, in X-Richtungen) des zentralen Pixels angeordnet sind. Im Fall von Pixels der Y-Achsen-Gruppe wird ein Ersetzen durch eine maximale Größe Fpmy ausgeführt, wobei sich Fpmy auf Pixels bezieht, die in Y-Richtungen angeordnet sind.
- Fig. 7 zeigt schematisch die Richtungen, in denen der Vergleich der Graustufengradientengröße für einige ausgewählte Pixels ausgeführt wird. Vektoren von Pixels a und b gehören zu der X-Achsen-Gruppe, während Vektoren bei den Pixels c und d zu der Y-Achsen-Gruppe gehören.
- Auf diese Weise werden die Daten der Graustufengradientengröße für jedes Pixel zu einem Maximalwert von Fpm umgeformt, der unter benachbarten Pixels in den X- oder Y- Richtungen für die X-Achsen- bzw. Y-Achsen-Gruppen gefunden wurde. Dann werden die umgeformten Daten des zentralen Pixels in Komparatoren mit ihrem ursprünglichen Fp-Wert verglichen, und wenn Fpmx oder Fpmy gleich Fp ist, wird in bezug auf dieses Pixel eine logische "1" erzeugt, sonst wird eine logische "0" angegeben. Dieses Vergleichsverfahren eliminiert ein komplexes Verfahren der vorher vorgeschlagenen, oben beschriebenen Methode beim Extrahieren und Bilden der Musterkontur.
- Schließlich werden beide logischen Ausgangssignale von den zwei Komparatoren einer logischen Summenschaltung (ODER- Schaltung) eingegeben, in der zwei Komponenten der Musterkontur kombiniert und an einen Musterkonturspeicher ausgegeben werden.
- Bei dem oben beschriebenen, vorher vorgeschlagenen Verfahren wird der Winkel Gp eines speziellen Pixels zuerst dem Schritt des Unterscheidens unterzogen, zu welchem Sektor der vier Sektorgruppen a bis d es gehört, wie in Fig. 4 gezeigt. Wenn der Sektor bestimmt ist, wird die Pixelgröße Fp mit den Größen von benachbarten Pixels verglichen, die längs derselben Richtung von Gp angeordnet sind. Wenn festgestellt wird, daß Fp den Maximalwert hat, wird bestimmt, daß das spezielle Pixel eines der Pixels ist, die eine Musterkontur bilden.
- Bei einer Ausführungsform der vorliegenden Erfindung werden Pixels entsprechend den Richtungen ihrer Graustufengradientenvektoren in eine X-Achsen-Gruppe und eine Y- Achsen-Gruppe gruppiert. Pixels in einer Gruppe werden nämlich in X-Richtungen und Pixels in der anderen in Y- Richtungen verarbeitet. Zum Beispiel werden für ein Pixel, dessen Graustufengradientenrichtung in dem Bereich von Winkeln ± 45º in bezug auf die X-Achse liegt, ein Ersatz von Fp durch Fpmx und das bezügliche Vergleichsverfahren nur in bezug auf die X-Richtungen ausgeführt. Das Verarbeiten, um ein Pixel zu bestimmen, das einen Maximalwert hat, kann einfach und leicht erfolgen. Ein so ausgewähltes Pixel wird dann als Pixel angenommen, das eine Musterkontur bildet. Ein ähnliches Verfahren wird in bezug auf Pixels eingesetzt, die zu der Y-Achsen-Gruppe gehören. Ausgaben bezüglich der zwei Gruppen werden kombiniert, wobei sie die geforderte Musterkontur ergeben.
- Die vorliegende Erfindung befaßt sich mit Verarbeitungsverfahren zum Extrahieren der Konturen eines Bildes, und deshalb sind monochrome (z. B. Schwarz-Weiß-) Bilder von vorrangigem Interesse. Bei Ausführungsformen der vorliegenden Erfindung können vielfältige Graustufen, zum Beispiel mehr als 10 Graustufen, bei der Bildverarbeitung behandelt werden. Da es sehr leicht ist, Musterkonturen von dem Bild zu extrahieren, das mit binären Graustufen (nur Schwarz- Weiß-Stufen) gebildet ist, ist - siehe oben - das Verarbeiten von Binärstufenbilddaten nicht das tatsächliche Anliegen der vorliegenden Erfindung.
- Als Beispiel wird Bezug auf die beiliegenden Zeichnungen genommen, in denen:-
- Fig. 1 eine Verteilung von Graustufendaten für Pixels schematisch zeigt, die in einer Matrix mit zweidimensionalen Rasterkoordinaten angeordnet sind;
- Fig. 2 ein Blockdiagramm ist, das die Extraktion von Musterkonturen gemäß einem vorher vorgeschlagenen Verfahren zeigt;
- Fig. 3 eine 3 x 3 - Matrix von Pixels zur Hilfe bei der Erläuterung der Berechnung von Differentialen schematisch zeigt;
- Fig. 4 die Richtungen von Graustufengradientenvektoren, die in acht Sektoren gruppiert sind, in X-, Y- Koordinaten zeigt;
- Fig. 5 den Vergleich der Größen von Graustufengradientenvektoren p und p' bei dem vorher vorgeschlagenen Verfahren zeigt;
- Fig. 6 ein Beispiel einer Kontur schematisch zeigt, die durch eine Verarbeitung, wie unter Bezugnahme auf Fig. 5 erläutert, extrahiert wurde;
- Fig. 7 ein Merkmal der Verarbeitung bei einer Ausführungsform der vorliegenden Erfindung schematisch zeigt, bei der Richtungen von Graustufengradientenvektoren in X-Achsen- und Y-Achsen-Gruppen gruppiert werden;
- Fig. 8 ein schematisches Blockdiagramm einer Vorrichtung gemäß einer ersten Ausführungsform der vorliegenden Erfindung ist;
- Fig. 9 ein ausführlicheres Blockdiagramm eines Differential- und Vektorkomponentenkalkulators 2 von Fig. 8 ist;
- Fig. 10(a) und 10(b) Filtermatrizen zeigen, die für die Berechnung des X-Differentials Dx bzw. des Y-Differentials Dy verwendet werden;
- Fig. 11(a) bis 11(1) die Ausgabemuster an verschiedenen Punkten in Fig. 8 sehr schematisch zeigen, wobei Fig. 11(a) ein Eingabebildmuster zeigt; Fig. 11(b) die Größe des Graustufengradienten; Fig. 11(c) die Richtung von Graustufengradientenvektoren; Fig. 11(d) und 11(e) Ausgaben von Schwellenprozessoren 51x und 51y; Fig. 11(f) und 11(g) Ausgaben von Produktschaltungen 55x und 55y; Fig. 11(h) und 11(i) Ausgaben von Maximalwertfiltern 6x und 6y; Fig. 11(j) und 11(k) Ausgaben von Komparatoren 7x und 7y; und Fig. 11(l) eine Ausgabemusterkontur;
- Fig. 12(a) und 12(b) schematische Blockdiagramme sind, die eine ausführlichere Schaltungsanordnung der Schwellenprozessoren 51x und 51y von Fig. 8 zeigen;
- Fig. 13(a) und 13(b) schematische Blockdiagramme sind, die eine ausführlichere Schaltungsanordnung von Maximalwertfiltern 6x und 6y von Fig. 8 zeigen;
- Fig. 14 die Funktion des Maximalwertfilters 6x und des Komparators 7x von Fig. 8 schematisch zeigt;
- Fig. 15 ein schematisches Blockdiagramm einer Vorrichtung gemäß einer anderen Ausführungsform der vorliegenden Erfindung ist;
- Fig. 16(a) und 16(b) schematische Blockdiagramme sind, die eine Schaltungsanordnung von Maximalpunktdetektionsschaltungen 40x und 40y von Fig. 15 eingehender zeigen;
- Fig. 17 eine Schwierigkeit schematisch darstellt, die bei der Operation der Vorrichtungen von Fig. 8 und 15 auftreten kann;
- Fig. 18 ein schematisches Blockdiagramm einer Vorrichtung gemäß einer weiteren Ausführungsform der vorliegenden Erfindung ist, und
- Fig. 19 bis Fig. 25 schematische Blockdiagramme sind, die Teile der Vorrichtung von Fig. 18 eingehender zeigen; Fig. 19 zeigt eine Unterscheidungsschaltung des rechten Maximums; Fig. 20 eine Unterscheidungsschaltung des rechten Minimums; Fig. 21 eine Unterscheidungsschaltung des linken Maximums; Fig. 22 eine Unterscheidungsschaltung des linken Minimums; Fig. 23 eine Unterscheidungsschaltung des oberen Maximums; und Fig. 25 eine Komparatorschaltung mit fünf Eingängen.
- Ein Blockdiagramm einer ersten Ausführungsform der vorliegenden Erfindung ist in Fig. 8 gezeigt. Musterdaten, die durch eine Bildeingabeanordnung 11, wie eine TV-Kamera, erhalten wurden, werden einem Eingangs-und-Ausgangs(E/A)- Controller 12 eingegeben und in einer Speichereinheit 13 gespeichert. Die Musterdaten werden dann einem Differential- und Vektorkomponentenkalkulator 2 eingegeben. Dieser Kalkulator 2 enthält Differentialkalkulatoren für X- und Y- Richtungen und Vektorgrößen- und Vektorrichtungskalkulatoren (weitere Einzelheiten sind unten angegeben).
- Zuerst werden X-Richtungs- und Y-Richtungs-Differentiale Dx und Dy in X-Richtungs- bzw. Y-Richtungs-Differentialkalkulatoren berechnet. Als nächstes werden sowohl die Dx- als auch die Dy-Daten einem Gradientengrößenkalkulator eingegeben, in dem der Fp-Wert von (Dx²+Dy²)½ berechnet wird, und auch einem Gradientenrichtungskalkulator eingegeben, in dem der Richtungswinkel des Graustufengradientenvektors berechnet wird. Die obigen Verfahren sind ähnlich den Schritten, die in bezug auf das oben beschriebene, vorher vorgeschlagene Verfahren erläutert wurden.
- Als nächstes werden die Vektorrichtungsdaten des Graustufengradienten (Gp) zwei Schwellenprozessoren 51x und 51y eingegeben. Wenn festgestellt wird, daß der Winkel Gp der Richtungsdaten in den Bereichen von ± 45º oder 180º ± 45º in bezug auf die X-Achse liegt, mit anderen Worten, für ein Pixel der X-Achsen-Gruppe, gibt der Schwellenprozessor 51x eine logische "1" und der Schwellenprozessor 51y eine logische "0" aus. Wenn festgestellt wird, daß der Winkel Gp in den Bereichen von 90º ± 45º oder 270º ± 45º in bezug auf die X-Achse liegt (für ein Pixel der Y-Achsen-Gruppe), gibt der Schwellenprozessor 51y eine logische "1" und der Schwellenprozessor 51x eine logische "0" aus.
- Ferner werden die obigen logischen Daten und die Vektorgröße Fp zwei Produktschaltungen 55x und 55y eingegeben und darin multipliziert. Hier werden die Daten Fp durch die Verzögerungsschaltung 15 eingegeben, da die Dateneingaben Fp für die Produktschaltungen mit Ausgaben von den Schwellenprozessoren synchron sein müssen. Deshalb gibt eine Produktschaltung (55x oder 55y) Fp nur aus, wenn sie ein Signal der logischen "1" von ihrem zugeordneten Schwellenprozessor (51x oder 51y) empfängt. Die Ausgabedaten werden dann einer Verarbeitung in den Maximalwertfiltern 6x und 6y unterzogen.
- Maximalwertfilter 6x hat die Funktion, die Größe Fp des zentralen Pixels (zum Beispiel der Adresse ADDxy), das verarbeitet wird, durch eine maximale Größe Fpmx zu ersetzen, die der maximale Größenwert von Pixels ist, die auf linken und rechten Seiten des zentralen Pixels der Adresse ADDxy seriell angeordnet sind, zum Beispiel Pixels der Adressen ADD(x-n)y bis ADD(x+n)y, und somit wird der Fp-Wert des Pixels ADDxy durch Fpmx ersetzt und an den Komparator 7x ausgegeben. Maximalwertfilter 6y hat eine ähnliche Funktion in bezug auf das Pixel der Y-Achsen-Gruppe, und die Größe Fp wird da durch einen maximalen Wert Fpmy ersetzt, der an den Komparator 7y ausgegeben wird.
- Der ausgegebene maximale Wert Fpmx oder Fpmy für das zentrale Pixel wird in den Komparatoren 7x oder 7y mit dem ursprünglichen Fp-Wert des zentralen Pixels verglichen. Bei diesem Verfahren wird Fpmx oder Fpmy durch die Verzögerungsschaltung 16 mit Fp synchronisiert, und wenn Fpmx oder Fpmy gleich Fp ist, dann wird in bezug auf das zentrale Pixel eine logische "1" erzeugt, andernfalls wird eine logische "0" angegeben. Vergleiche werden sequentiell Pixel für Pixel ausgeführt.
- Die obigen Verfahren eliminieren ein komplexes Verfahren der oben beschriebenen, vorher vorgeschlagenen Methode, die beim Extrahieren des Pixels, das einen maximalen Wert hat und einen Teil einer Musterkontur bildet, eingesetzt wird.
- Schließlich werden beide logischen Ausgangssignale von den Komparatoren 7x und 7y einer logischen Summenschaltung 8 (ODER-Schaltung) eingegeben, in der zwei Komponenten der Musterkontur (eine, die X-Achsen-Gruppe, mit einem Winkel Gp eines Graustufengradientenvektors in den Bereichen von ± 45º und 180º ± 45º in bezug auf die X-Achse, und eine andere, die Y-Achsen-Gruppe, in den Bereichen von 90º ± 45º und 270º ± 45º) kombiniert werden, wobei eine komplettierte Musterkontur gebildet wird. Die Musterkonturdaten werden in dem Musterkonturspeicher 9 gespeichert.
- Grundeinheiten wie der Differential- und Vektorkomponentenkalkulator 2, die Schwellenprozessoren 51x und 51y und die Maximalwertfilter 6x und 6y in Fig. 8 werden unten näher erläutert.
- Fig. 9 ist ein ausführlicheres Blockdiagramm des Differential- und Vektorkomponentenkalkulators 2 von Fig. 8. Bildmusterdaten, die von der Speichereinheit 13 von Fig. 8 ausgegeben wurden, werden dem Differential- und Vektorkomponentenkalkulator eingegeben. Die Speichereinheit 13 hat eine Adressengröße von zum Beispiel 512 x 512 Pixels, wobei jede Adresse eine Speicherkapazität von 8 Bit hat, und Bildinformationssignale Sig von acht Bit, die der Graustufe der jeweiligen Pixels entsprechen, werden einem Register 200 in einer Fensterpufferschaltung 20 sequentiell eingegeben, die aus den Registern 200, 201 bis 208 und den Leitungspuffern 210 und 211 besteht, wie in Fig. 9 gezeigt. Die Register sind angeordnet, um eine 3 x 3 - Matrix zu bilden. Jedes Register hat eine Bitlänge von acht Bit, die der Länge der Pixeldaten entspricht. Wenn ein Datensignal Sig dem Register 200 eingegeben wird, werden vorher gespeicherte Daten in das Register 201 verschoben, und so weiter.
- Leitungspuffer 210 und 211 haben die Funktion vorzusehen, daß die Daten, die in der 3 x 3 -Registermatrix gespeichert sind, einem Fenster (einem speziellen Abschnitt) des Musterbildes entsprechen. Deshalb hat in diesem Fall jeder Leitungspuffer eine Kapazität zum Speichern von Daten in bezug auf N-1 Pixels in einer Reihe. Die Daten bezüglich des Pixels, dessen Differential zu berechnen ist, werden in dem zentralen Register 204 der Matrix gespeichert. Daten bezüglich anderer, benachbarter Pixels zur Berechnung von Differentialen, werden in den Registern 200, 201, 202, 203, 205, 206, 207 und 208 gespeichert.
- Bei der obigen Erläuterung werden neun Register verwendet. In Abhängigkeit von dem Berechnungsverfahren, das zum Erhalten von Differentialen verwendet wird, kann die Anzahl von Registern und Leitungspuffern verändert werden. Manchmal wird eine 4 x 4 oder 5 x 5 - Pixelmatrix zur Berechnung verwendet.
- Ausgänge von der Fensterpufferschaltung 20 sind mit dem Differentialkalkulator der X-Richtung 21x und dem Differentialkalkulator der Y-Richtung 21y verbunden. Jeder Differentialkalkulator besteht aus drei Komplementoperatoren und fünf Addierern. Jeder der Komplementoperatoren 215 bis 217 oder 218 bis 220 hat die Funktion, ein Komplement von zwei (Zweierkomplement) auszugeben, mit anderen Worten, Eingangsdaten mit umgekehrtem Vorzeichen auszugeben. Bezüglich des Differentialkalkulators der X-Richtung 21x werden Daten in bezug auf drei Pixels in einer Spalte auf der rechten Seite der Registermatrix addiert und ferner werden umgekehrte Daten in bezug auf drei Pixels in einer Spalte auf der linken Seite der Matrix eines nach dem anderen hinzuaddiert (dies entspricht einer Subtraktion von nichtumgekehrten Daten). Dies wird durch fünf Addierer 221 bis 225 ausgeführt. Der Differentialkalkulator der X-Richtung 21x hat eine ähnliche Funktion wie jene des Filterns der Matrixbilddaten mit einem Filter, wie in Fig. 10(a) gezeigt, woraus das Bereitstellen von Dx resultiert. Auf ähnliche Weise hat der Differentialkalkulator der Y-Richtung 21y mit den Addierern 226 bis 330 eine ähnliche Funktion wie jene des Berechnens von Dy und Filterns mit einem Filter, wie in Fig. 10(b) gezeigt.
- Sowohl die Daten Dx als auch Dy werden dann einem Gradientengrößenkalkulator 22 und einem Gradientenrichtungskalkulator 23 eingegeben. In dem Gradientengrößenkalkulator 22 werden die absoluten Größendaten Fp aus der folgenden Gleichung errechnet:
- Fp = (Dx²+Dy²)½.
- In dem Gradientenrichtungskalkulator 23 werden die Daten Gp aus den folgenden Gleichungen errechnet:
- Gp = Cos&supmin;¹(Dx/Fp) + 45º wobei Dy ≥ 0,
- Gp = 45º - Cos&supmin;¹(Dx/Fp) wobei Dy < 0.
- Falls bei dem obigen Verfahren sowohl die Daten Dx als auch Dy kleiner als ein gewisser spezieller Wert sind, wird auf die Daten für den Zweck des Extrahierens einer Musterkontur verzichtet, und in diesem Fall werden spezielle Daten wie "999" ausgegeben.
- Die obigen Gleichungen sind ähnlich jenen, die in bezug auf das oben beschriebene, vorher vorgeschlagene Verfahren erwähnt wurden, außer daß zu dem Gp-Wert 45º addiert werden, um die Beurteilung in nachfolgenden Schwellenprozessoren zu erleichtern. Um Graustufengradientenvektoren mit Richtungswinkeln in den Bereichen von ± 45º und 180º ± 45º (X-Achsen- Gruppe) bezüglich der ursprünglichen Koordinaten zu unterscheiden, wandeln die obigen Gleichungen die Winkelbereiche zu 0º - 90º und zu 180º - 270º um. Als Resultat wird die Unterscheidung in den Schwellenprozessoren leicht.
- Wenn angenommen wird, daß das Muster, von dem Konturlinien zu extrahieren sind, so ist wie in Fig. 11(a) gezeigt, sind die Ausgaben von Fp und Gp von dem Gradientengrößenkalkulator 22 und dem Gradientenrichtungskalkulator 23 so wie in Fig. 11(b) bzw. 11(c) schematisch gezeigt. Die Figuren sind auf Grund der Schwierigkeit des Abbildens von Größe und Richtung in einer zweidimensionalen Darstellung tatsächlich schematisch. Besonders in Fig. 11(b) ist die Größe Fp durch die Dichte der linierten Zonen um konzentrische Kreise nur sehr grob und unklar angegeben. Bei einem tatsächlichen Fall sollte der zentrale Abschnitt von konzentrischen Kreisen die dunkelste Zone aufweisen, was bedeutet, daß die Größe davon maximal ist und sich allmählich ändert.
- Dann werden die Gp-Daten den Schwellenprozessoren 51x und 51y eingegeben, wobei die Prozessoren so sind, wie in Fig. 12(a) bzw. 12(b) gezeigt. In dem Schwellenprozessor 51x werden die Winkeldaten Gp in den Komparatoren 520 und 521 mit Schwellenwerten 0º und 90º verglichen, wobei die Daten durch Schwellenregister 510 und 511 zugeführt werden. Wenn festgestellt wird, daß Gp zwischen 0º und 90º liegt, gibt die UND-Schaltung 530 zum Beispiel eine logische "1" aus. Ähnlich gewährleisten die Schwellenregister 512, 513 und die Komparatoren 522, 523, daß die UND-Schaltung 531 eine logische "1" ausgibt, wenn festgestellt wird, daß Gp zwischen 180º und 270º liegt. Beide Ausgaben werden der ODER-Schaltung 540 eingegeben, deshalb gibt die ODER-Schaltung 540 eine logische "1" aus, wenn Gp in den Bereichen von 0º bis 90º und von 180º bis 270º liegt. Dies bedeutet, daß die Gp-Richtung in den Bereichen von ± 45º und 180º ± 45º bezüglich der ursprünglichen Koordinaten liegt.
- Auf dieselbe Weise hat der Schwellenprozessor 51y, der in Fig. 12(b) gezeigt ist, die Funktion, zum Beispiel eine logische "1" auszugeben, wenn die Gp-Richtung in den Bereichen 90º ± 45º und 270º ± 45º liegt (in den ursprünglichen Koordinaten). Bildmuster von zwei Ausgaben von Schwellenprozessoren 51x und 51y sind in Fig. 11(d) bzw. 11(e) schematisch gezeigt. Bei den schraffierten Zonen werden Daten einer logischen "1" ausgegeben.
- Die logischen Daten von den Schwellenprozessoren werden in den Produktschaltungen 55x und 55y von Fig. 8 multipliziert, woraus die Ausgabe der Fp-Daten in den ausgewählten zwei Zonen resultiert, die den obigen Zonen der logischen "1" von Fig. 11(d) und 11(e) entsprechen. Die Resultate sind in Fig. 11(f) und 11(g) schematisch gezeigt.
- Die Ausgabe von jeder Produktschaltung 55x oder 55y wird in einem Maximalwertfilter verarbeitet. Ein Maximalwertfilter 6x, für X-Komponenten, ist in Fig. 13(a) gezeigt, und ein Maximalwertfilter 6y, für Y-Komponenten, ist in Fig. 13(b) gezeigt.
- Wenn Fp-Daten für die X-Achsen-Gruppe den Registern 601, 602, 603, 604 und 605 in Fig. 13(a) sequentiell eingegeben werden, haben der Komparator 606 und der Selektor 610 die Funktion des Ausgebens des größeren Fp-Wertes von zwei benachbarten Pixels (deren Pixeldaten in den Registern 601 und 602 gespeichert sind). Auf dieselbe Weise wird der größere Fp-Wert von zwei Pixels, deren Pixeldaten in den Registern 603 und 604 gespeichert sind (in Komparator 600 verglichen), von dem Selektor 611 ausgegeben. Fp-Ausgaben von den Selektoren 610 und 611 werden dann in dem Komparator 607 verglichen, und die größere wird von dem Selektor 612 ausgegeben. Schließlich wird diese Ausgabe mit den Fp-Daten weiter verglichen, die in dem Register 605 gespeichert sind und durch die Verzögerungsschaltung 614 ausgegeben werden, und der größte Fp-Wert von den fünf Fp-Werten wird von dem Selektor 613 erhalten.
- Falls angenommen wird, daß Fp-Datenwerte vor dem Filterungsverfahren numerische Werte sind, wie in der oberen Reihe (A) in Fig. 14 gezeigt, und Pixel P3 mit den Fp-Daten "2" mit Daten der Pixels P1, P2, P4 und P5 verglichen wird, wobei diese letzteren Pixels sowohl auf linken als auch rechten Seiten von Pixel P3 angeordnet sind, dann wird der Fp-Wert von P3 in den Maximalwert der Pixels P1 bis P5 konvertiert, in diesem Fall in "5". Nachdem jedes Pixel auf diese Weise verarbeitet ist, wird eine Folge von Fp-Werten, die in der oberen Reihe (A) gezeigt sind, in eine Folge von numerischen Werten konvertiert, wie in der mittleren Reihe (B) in Fig. 14 gezeigt. Ausgabedaten, die in Reihe (B) gezeigt sind, werden mit den ursprünglichen Daten, die in Reihe (A) gezeigt sind, weiter verglichen, und eine logische "1" wird erzeugt, wenn bezüglich eines betrachteten Pixels dieselbe Größe in beiden Fällen auftritt, andernfalls wird im Komparator 7x von Fig. 8 eine logische "0" angegeben. Das Resultat ist in der unteren Reihe (C) in Fig. 14 gezeigt.
- Das Maximalwertfilter 6y hat eine ähnliche Funktion wie Filter 6x, außer daß es die Komponenten der Y-Richtung behandelt und vier Leitungspuffer 620 bis 623 benötigt, die in Fig. 13(b) gezeigt sind. Andere Komponenten wie die Register 631 bis 635, Komparatoren 636 bis 639, Selektoren 640 bis 643 und die Verzögerungsschaltung 644 haben dieselben Funktionen wie ähnliche Elemente in Fig. 13(a).
- Ausgabebildmuster von den Maximalwertfiltern 6x und 6y sind in Fig. 11(h) und 11(i) schematisch gezeigt. Ferner sind Ausgabebildmuster von den Komparatoren 7x und 7h in Fig. 11(j) bzw. 11(k) schematisch gezeigt, wobei erstere Musterkonturen in den Bereichen ± 45º und 180º ± 45º bezüglich der X-Achse und letztere in den Bereichen 90º ± 45º und 270º ± 45º zeigen.
- Zwei Bildmuster werden in der ODER-Schaltung 8 in Fig. 8 kombiniert, woraus die Ausgabe eines Konturmusters resultiert, wie in Fig. 11(l) gezeigt, und in dem Musterkonturspeicher 9 gespeichert.
- Ein Blockdiagramm einer anderen Ausführungsform der vorliegenden Erfindung ist in Fig. 15 gezeigt. Dieselben Bezugszeichen wie in Fig. 8 bezeichnen und kennzeichnen die Einheiten, die ähnliche Funktionen haben. Der einzige Unterschied zu Fig. 8 bezieht sich auf die Einheiten, die zum Unterscheiden eines Pixels verwendet werden, das eine maximale Größe unter benachbarten Pixels hat.
- Bei dieser Ausführungsform der Erfindung werden Ausgaben der Produktschaltungen 55x und 55y und Größendaten Fp von Graustufengradientenvektoren den Maximalpunktdetektionsschaltungen 40x bzw. 40y eingegeben. Die Maximalpunktdetektionsschaltung 40x für die X-Achsen-Gruppe ist in Fig. 16(a) gezeigt, und die Maximalpunktdetektionsschaltung 40y für die Y-Achsen-Gruppe ist in Fig. 16(b) gezeigt.
- In Fig. 16(a) wird die Ausgabe von der Produktschaltung 55x den Registern 401 bis 405 sequentiell eingegeben, Fp- Daten des zentralen Pixels (das der Unterscheidung zu unterziehen ist), die von der Verzögerungsschaltung 16 eingegeben wurden, werden in den Komparatoren 406 bis 410 mit Daten in bezug auf 5 Pixels verglichen, einschließlich derer, die vor und nach dem zentralen Pixel eingegeben wurden. Jeder Komparator gibt eine logische "1" aus, wenn das Eingabesignal der linken Seite gleich oder größer als das Signal der rechten Seite in Fig. 16(a) ist. Fünf Ausgaben von den Komparatoren 406 bis 410 werden durch die UND-Schaltungen 411 bis 414 und die Verzögerungsschaltungen 415, 416 verarbeitet, und schließlich gibt die UND-Schaltung 414 eine logische "1" aus, wenn Fp-Daten des zentralen Pixels gleich oder größer als der maximale (Fp) Wert von fünf Pixels sind, die in X-Richtungen angeordnet sind.
- Die Maximalpunktdetektionsschaltung 40y, die in Fig. 16(b) gezeigt ist, hat ähnliche Funktionen wie jene, die oben erläutert wurden, außer daß die Vergleiche und die Detektion in Y-Richtungen ausgeführt werden. Ausgabedaten von der Produktschaltung 55y werden zuerst in Y-Richtungen unter Verwendung der Register 420 bis 424 und der Leitungspuffer 425 bis 428 angeordnet, dann werden nachfolgend Vergleiche und Detektionen in den Komparatoren 429 bis 433, den UND-Schaltungen 434 bis 437 und den Verzögerungsschaltungen 438 und 439 ausgeführt, und schließlich gibt die UND- Schaltung 437 eine logische "1" aus, wenn die Fp-Daten des zentralen Pixels gleich oder größer als der maximale Fp-Wert von fünf Pixels sind, die in Y-Richtungen angeordnet sind.
- Ausgaben der Maximalpunktdetektionsschaltungen 40x und 40y für die X- bzw. Y-Richtungen werden in der ODER- Schaltung 8 von Fig. 15 kombiniert, woraus die Ausgabe der komplettierten Musterkonturen resultiert.
- Bei den Ausführungsformen der Erfindung, die oben beschrieben sind, kann die Extraktion von Musterkonturen ungenau werden, wenn eine Vielzahl von Pixels, die dieselbe Größe des Graustufengradienten haben, in der Richtung eines Unterscheidungsverfahrens kontinuierlich angeordnet sind.
- Zum Beispiel wird angenommen, daß eine Folge von Größendatenwerten des Graustufengradienten für 15 Pixels, die in der X-Richtung angeordnet sind, so ist wie in Fig. 17 gezeigt. Die Pixels P9, P10 und P11 haben dieselben Größendaten "3". Wenn die Pixels P6 und P11 den Vergleichs- und Unterscheidungsverfahren zwischen benachbarten 5 x 1 Pixels ausgesetzt werden, wie bei der vorhergehenden Ausführungsform der Erfindung erläutert, werden beide Pixels P6 und P11, die Größen von "5" bzw. "3" haben, als Pixels ausgewählt, die eine Musterkontur bilden. Pixel P6 hat eine Größe von "5", und dies ist die maximale Größe und größer als jene von jedem anderen der Pixels P4 bis P8, deshalb ist P6 für eine Musterkontur geeignet. P11 ist jedoch mit zwei benachbarten Pixels P9 und P10 angeordnet, die dieselbe Größe "3" haben, deshalb kann P11 zum Bilden einer Musterkontur ungeeignet sein, da P11 nicht das einzige Pixel ist, das die maximale Größe hat.
- Um diese Situation zu verbessern, ist es günstiger, die folgenden Bedingungen in das Verfahren zum Extrahieren einer Musterkontur aufzunehmen. Außer der Bedingung, daß das zentrale Pixel, das der Unterscheidung unterliegt, die maximale Größe des Graustufengradienten unter benachbarten Pixels (von einer spezifischen Anzahl und in spezifischen Richtungen liegend) haben sollte, wird nämlich gefordert, daß ein Pixel vorhanden ist, dessen Größe kleiner als jene des zentralen Pixels ist und auf jeder Seite des zentralen Pixels angeordnet ist. Bezüglich Fig. 17 hat Pixel P6 sowohl auf linken als auch rechten Seiten benachbarte Pixels, deren Größe kleiner als "5" ist. Pixel P11 hat jedoch keine benachbarten Pixels auf der linken Seite, von denen die Größe kleiner als "3" ist. Deshalb würde P11 mit der zusätzlichen Bedingung zum Bilden eines Teiles einer Musterkontur nicht ausgewählt.
- Ein Blockdiagramm der weiteren Ausführungsform der vorliegenden Erfindung ist in Fig. 18 gezeigt. Dieselben Bezugszeichen wie in Fig. 8 und 15 bezeichnen und kennzeichnen die ähnlichen Einheiten, die die ähnlichen Funktionen haben. Der Unterschied besteht in den Maximum- und Minimumunterscheidungsschaltungen 70 bis 77 und in den zwei Komparatoren mit fünf Eingängen 79x und 79y.
- Einzelheiten der Unterscheidungsschaltung des rechten Maximums 72 sind in Fig. 19 gezeigt. Graustufengradienten-Signale werden den Registern 720 bis 724 sequentiell eingegeben, und die Signalpegel von dem Register 722 und dem Register 723 werden in dem Komparator 725 verglichen. Komparator 725 und Selektor 726 haben dieselben allgemeinen Funktionen wie die vorher erläuterten Komparatoren und Selektoren. Wenn nämlich der Signalpegel von Register 722 größer als oder gleich dem Signalpegel von Register 723 ist, dann gibt Komparator 725 eine logische "1" aus. In diesem Fall gibt der Selektor 726 ein Signal aus, das denselben Pegel wie das Signal hat, das von Register 722 ausgegeben wurde. Komparator 727 und Selektor 728 haben ähnliche Funktionen, und schließlich gibt Selektor 728 den Maximalpegel des Graustufengradienten von drei Pixels aus, die aus dem zentralen Pixel und zwei benachbarten Pixels der rechten Seite bestehen. Die Verzögerungsschaltung 729 sieht die nötige Verzögerung vor.
- Die Unterscheidungsschaltung des rechten Minimums 73 ist in Fig. 20 gezeigt. Die Register 730 bis 734, Komparatoren 735 und 737 und Selektoren 736 und 738 und die Verzögerungsschaltung 739 haben ähnliche Funktionen wie jene, die in Fig. 19 erläutert wurden, außer daß Anschlußpositionen von Eingabesignalen für Selektoren umgekehrt sind. Deshalb gibt die Unterscheidungsschaltung des rechten Minimums 73 den Minimalpegel des Graustufengradienten für die drei Pixels aus, die aus dem zentralen Pixel und zwei benachbarten Pixels der rechten Seite bestehen.
- Fig. 21 und 22 zeigen die Unterscheidungsschaltung des linken Maximums 70 bzw. die Unterscheidungsschaltung des linken Minimums 71. Die Unterscheidungsschaltung des linken Maximums 70 hat drei Register 700 bis 702, zwei Komparatoren 703 und 705, zwei Selektoren 704 und 706 und die Verzögerungsschaltung 707. Der Grund dafür, daß drei Register verwendet werden, anstelle der fünf Register in Fig. 19 und 20, besteht darin, daß die Unterscheidungsverfahren bezüglich des zentralen Pixels auf seinen beiden Seiten synchron sein müssen. Die Unterscheidungsschaltung 70 hat die Funktion, den maximalen Graustufengradienten von dem zentralen Pixel und zwei benachbarten Pixels der linken Seite aus zugeben. Ähnlich hat die Unterscheidungsschaltung des linken Minimums 71 von Fig. 22 drei Register 710 bis 712, zwei Komparatoren 713 und 715, zwei Selektoren 714 und 716 und die Verzögerungsschaltung 717 und hat die Funktion, den minimalen Graustufengradienten von dem zentralen Pixel und zwei benachbarten Pixels der linken Seite auszugeben.
- Die Unterscheidungsschaltung des oberen Maximums 74, die Unterscheidungsschaltung des oberen Minimums 75, die Unterscheidungsschaltung des unteren Maximums 76 und die Unterscheidungsschaltung des unteren Minimums 77 haben ähnliche Funktionen wie die Unterscheidungsschaltungen von Fig. 19 bis 22, außer daß sich diese Schaltungen mit Verfahren in den Richtungen der Y-Achse befassen. Deshalb sind repräsentativ nur Einzelheiten für die Unterscheidungsschaltung des oberen Maximums 74 und die Unterscheidungsschaltung des unteren Maximums 76 gezeigt.
- Fig. 23 ist ein Blockdiagramm der Unterscheidungsschaltung des oberen Maximums 74, die drei Register 740 bis 742, zwei Komparatoren 743 und 745, zwei Selektoren 744 und 746, die Verzögerungsschaltung 747 und zwei Leitungspuffer 748 und 749 hat. Zu Fig. 19 und 21 bestehen Unterschiede hinsichtlich dessen, daß die eingegebenen Graustufengradientensignale auf Grund der Notwendigkeit, Daten in Richtungen der Y-Achse anzuordnen, durch die Register und Leitungspuffer verarbeitet werden.
- Fig. 24 ist ein Blockdiagramm der Unterscheidungsschaltung des unteren Maximums 76, die fünf Register 760 bis 764, zwei Komparatoren 765 und 767, zwei Selektoren 766 und 768, die Verzögerungsschaltung 769 und vier Leitungspuffer 770 bis 773 hat. Der Unterschied zwischen Fig. 23 und 24 besteht in der Anzahl von Registern und Leitungspuffern, da Unterscheidungsverfahren bezüglich der Daten, die in oberen und unteren Richtungen angeordnet sind, synchron ausgeführt werden sollten.
- Die Unterscheidungsschaltung des oberen Minimums 75 und die Unterscheidungsschaltung des unteren Minimums 77 sind fast dieselben wie jene, die in Fig. 23 bzw. 24 gezeigt sind, außer daß Anschlußpositionen von Eingabesignalen für Selektoren umgekehrt sind, so daß Minimalwerte ausgegeben werden. Deshalb werden ausführliche Blockdiagramme weggelassen.
- Ausgabesignale von den Unterscheidungsschaltungen 70 bis 73 und 74 bis 77 werden den Komparatoren mit fünf Eingängen 79x bzw. 79y eingegeben, in denen der Graustufengradient des zentralen Pixels verglichen wird, um zu bestimmen, ob das zentrale Pixel eine maximale Größe des Graustufengradienten von den benachbarten Pixels, die auf beiden Seiten des zentralen Pixels angeordnet sind, hat oder nicht, und ob der Graustufengradient des zentralen Pixels größer als die minimale Größe von benachbarten Pixels, die auf jeder Seite des zentralen Pixels angeordnet sind, ist oder nicht (mit anderen Worten, um zu bestimmen, ob ein Pixel vorhanden ist oder nicht, dessen Größe kleiner als jene des zentralen Pixels ist, und das auf jeder Seite des zentralen Pixels liegt). Wenn diese Bedingungen erfüllt sind, wird eingeschätzt, daß das zentrale Pixel ein Pixel ist, das einen Teil einer Musterkontur bildet.
- Der Komparator mit fünf Eingängen 79x ist in Fig. 25 repräsentativ gezeigt, bei dem vier Komparatoren und drei UND-Schaltungen verwendet werden. In Fig. 25 haben die zwei Komparatoren 790 und 792 die Funktion, wie vorher erläutert, d. h., die Funktion, eine logische "1" auszugeben, wenn das Signal der linken Seite größer als oder gleich dem Signal der rechten Seite ist, jedoch die zwei Komparatoren 791 und 793 haben die Funktion, eine logische "1" nur auszugeben, wenn das Eingangssignal der linken Seite größer als das Eingangssignal der rechten Seite ist.
- In einem Fall des Komparators mit fünf Eingängen 79x von Fig. 25 ist Anschluß (a) mit der Verzögerungsschaltung 16 von Fig. 18 verbunden; Anschluß (b) mit der Unterscheidungsschaltung des linken Maximums 70; Anschluß (c) mit der Unterscheidungsschaltung des linken Minimums 71; Anschluß (d) mit der Unterscheidungsschaltung des rechten Maximums 72; und Anschluß (e) mit der Unterscheidungsschaltung des rechten Minimums 73.
- Wenn das Graustufengradientensignal des zentralen Pixels gleich oder größer als die Ausgabe der Unterscheidungsschaltung des linken Maximums 70 und auch größer als die Ausgabe der Unterscheidungsschaltung des linken Minimums 71 ist, geben beide Komparatoren 790 und 791 eine logische "1" aus, und die UND-Schaltung 794 gibt eine logische "1" aus. Wenn das Graustufengradientensignal des zentralen Pixels ferner gleich der oder größer als die Ausgabe der Unterscheidungsschaltung des rechten Maximums 72 und auch größer als die Ausgabe der Unterscheidungsschaltung des rechten Minimums 73 ist, geben beide Komparatoren 792 und 793 eine logische "1" aus, und die UND-Schaltung 795 gibt eine logische "1" aus. Schließlich gibt die UND-Schaltung 796 eine logische "1" aus. Die obigen Bedingungen zeigen, daß das zentrale Pixel den Bedingungen zum Bilden eines Teils einer Konturlinie genügt. Der Komparator mit fünf Eingängen 79y hat dieselbe Funktion wie 79x, außer daß sich die Richtung auf die Y-Achse bezieht.
- Die Ausgaben von den zwei Komparatoren mit fünf Eingängen 79x und 79y werden in einer ODER-Schaltung in Fig. 18 kombiniert, wobei die komplettierte Musterkontur gebildet wird, und in einer Speichereinheit 9 gespeichert.
- Die vorliegende Erfindung kann ein Verfahren und eine Vorrichtung zum Extrahieren von Konturlinien von einem Muster vorsehen, das bei der Bildverarbeitung erhalten wurde, womit es möglich ist, Konturlinien in Echtzeit mit einer hohen Geschwindigkeit zu erhalten, und die außerdem von Hardware leicht Gebrauch machen kann. Bei Ausführungsformen der Erfindung wird ein vereinfachtes Unterscheidungsverfahren zum Auswählen jener Pixels eingesetzt, die die Musterkontur bilden. Pixels werden in zwei Gruppen gruppiert, X-Achsen- und Y-Achsen-Gruppen, und die Größe des Graustufengradienten von jedem Pixel wird mit jenen von benachbarten Pixels verglichen, die entweder in Richtungen der X-Achse oder Richtungen der Y-Achse bezüglich des betrachteten Pixels liegen, und das Pixel, das die maximale Größe des Graustufengradienten von jenen benachbarten Pixels hat, wird in jeder Gruppe unterschieden. Dieses Unterscheidungsverfahren ist einfach und kann eine beträchtlich verbesserte Verarbeitung bieten. Wenn Konturlinien, die für die zwei Gruppen bestimmt wurden, kombiniert werden, können Musterkonturen leicht erhalten werden.
Claims (9)
1. Ein Verfahren zum Extrahieren von Musterkonturen
von einem Bild, das aus einer Vielzahl von Pixels besteht,
wobei jedes Pixel eine von einer Vielzahl von Graustufen
hat, welches Verfahren umfaßt:-
(a) Berechnen der Größe und Richtung eines
Graustufengradienten für jedes Pixel;
(b) Vorsehen einer X-Achsen-Darstellung jedes
Pixels durch Unterscheiden der Richtung des
Graustufengradienten des Pixels, bei welcher
X-Achsen-Darstellung die berechnete Größe des
Graustufengradienten beibehalten wird, falls
beurteilt wird, daß die Richtung des
Graustufengradienten des Pixels innerhalb eines
spezifischen Winkelbereichs einer Richtung
der X-Achse liegt, andernfalls die
Graustufengradientengröße auf null gesetzt wird;
(c) Vorsehen einer Y-Achsen-Darstellung jedes
Pixels durch Unterscheiden der Richtung des
Graustufengradienten des Pixels, bei welcher
Y-Achsen-Darstellung die berechnete Größe des
Graustufengradienten beibehalten wird, falls
beurteilt iwrd, daß die Richtung des
Graustufengradienten des Pixels innerhalb eines
spezifischen Winkelbereichs einer Richtung
der Y-Achse liegt, andernfalls die
Graustufengradientengröße auf null gesetzt wird;
(d) Unterscheiden der X-Achsen-Darstellung jedes
Pixels durch Vergleichen der
Graustufengradientengröße der X-Achsen-Darstellung des
Pixels mit den Graustufengradientengrößen der
X-Achsen-Darstellungen von jedem eines Satzes
von benachbarten Pixels, welche Pixels auf
gegenüberliegenden Seiten der X-Richtung des
unterschiedenen Pixels angeordnet sind, und
Vorsehen eines ersten
Vergleichsausgabepegels, wenn die Größe der
X-Achsen-Darstellung des unterschiedenen Pixels größer als
oder gleich der maximalen Größe der X-Achsen-
Darstellung des Satzes von benachbarten
Pixels ist, andernfalls Vorsehen eines
zweiten Vergleichsausgabepegels;
(e) Unterscheiden der Y-Achsen-Darstellung jedes
Pixels durch Vergleichen der
Graustufengradientengröße der Y-Achsen-Darstellung des
Pixels mit den Graustufengradientengrößen der
Y-Achsen-Darstellungen von jedem einer Gruppe
von benachbarten Pixels, welche Pixels auf
gegenüberliegenden Seiten der Y-Richtung des
unterschiedenen Pixels angeordnet sind, und
Vorsehen eines ersten
Vergleichsausgabepegels, wenn die Größe der
Y-Achsen-Darstellung des unterschiedenen Pixels größer als
oder gleich der maximalen Größe der Y-Achsen-
Darstellung der Gruppe von benachbarten
Pixels ist, andernfalls Vorsehen eines
zweiten Vergleichsausgabepegels;
(f) Bilden der Musterkonturen durch Pixels, die
durch logisches Summieren von
Vergleichsausgabepegeln, die durch (d) und (e)
bereitgestellt wurden, ausgewählt wurden.
2. Ein Verfahren zum Extrahieren von Musterkonturen
nach Anspruch 1, bei dem die Unterscheidungsschritte (d) und
(e) ferner entsprechend die Schritte umfassen:-
(d') Ersetzen der Größe des Graustufengradienten
jedes Pixels durch die maximale Größe des
Graustufengradienten von dem genannten Satz
von benachbarten Pixels in der X-Richtung,
und Vergleichen der ursprünglichen Größe des
genannten Pixels mit der genannten
Ersatzgröße, und Ausgeben des genannten ersten
Vergleichsausgabepegels für das genannte
Pixel, wenn die ursprüngliche Größe dieselbe
wie die genannte Ersatzgröße ist, andernfalls
Ausgeben des genannten zweiten
Vergleichsausgabepegels; und
(e') Ersetzen der Größe des Graustufengradienten
jedes Pixels durch die maximale Größe des
Graustufengradienten von der genannten Gruppe
von benachbarten Pixels in der Y-Richtung,
und Vergleichen der ursprünglichen Größe des
genannten Pixels mit der genannten
Ersatzgröße, und Ausgeben des genannten ersten
Vergleichsausgabepegels für das genannte
Pixel, wenn die ursprüngliche Größe dieselbe
wie die genannte Ersatzgröße ist, andernfalls
Ausgeben des genannten zweiten
Vergleichsausgabepegels.
3. Ein Verfahren zum Extrahieren von Musterkonturen
nach Anspruch 1 oder 2, bei dem die Bedingung zum Ausgeben
des genannten ersten Vergleichsausgabepegels bei den
Schritten (d) und (e) ferner einschließt, daß die Größe des
Graustufengradienten des genannten Pixels größer als die
minimale Größe der Pixels in dem genannten Satz in der X-
Richtung für Schritt (d) bzw. in der genannten Gruppe in der
Y-Richtung für Schritt (e) ist.
4. Ein Verfahren zum Extrahieren von Musterkonturen
nach einem der vorhergehenden Ansprüche, bei dem Schritt (a)
ferner einen Schritt des Ausgebens eines speziellen Kodes
für ein Pixel umfaßt, dessen Größe des Graustufengradienten
kleiner als ein spezifischer Wert ist.
5. Ein Verfahren zum Extrahieren von Musterkonturen
nach einem der vorhergehenden Ansprüche, bei dem der
genannte spezifische Winkelbereich bei den Schritten (b) und (c)
als ±45º und 180º ±45º für die Richtung der X-Achse und 90º
±45º und 270º ±45º für die Richtung der Y-Achse definiert
ist.
6. Bildverarbeitungsvorrichtung, die betriebsfähig
ist, um Musterkonturen von einem Bild zu extrahieren, das
aus einer Vielzahl von Pixels besteht, wobei jedes Pixel
eine von einer Vielzahl von Graustufen hat, welche
Vorrichtung umfaßt:-
(a) eine Berechungsschaltungsanordnung, die
betriebsfähig ist, um Größe und Richtung des
Graustufengradienten für jedes Pixel zu
berechnen;
(b) eine erste
Unterscheidungsschaltungsanordnung, die betriebsfähig ist, um eine X-
Achsen-Darstellung jedes Pixels durch
Unterscheiden der Richtung des
Graustufengradienten des Pixels vorzusehen, bei welcher X-
Achsen-Darstellung die berechnete Größe des
Graustufengradienten beibehalten wird, falls
beurteilt wird, daß die Richtung des
Graustufengradienten des Pixels innerhalb eines
spezifischen Winkelbereichs einer Richtung
der X-Achse liegt, andernfalls wird die
Graustufengradientengröße auf null gesetzt;
(c) eine zweite
Unterscheidungsschaltungsanordnung, die betriebsfähig ist, um eine Y-
Achsen-Darstellung jedes Pixels durch
Unterscheiden der Richtung des
Graustufengradienten des Pixels vorzusehen, bei welcher Y-
Achsen-Darstellung die berechnete Größe des
Graustufengradienten beibehalten wird, falls
beurteilt wird, dar die Richtung des
Graustufengradienten des Pixels innerhalb eines
spezifischen Winkelbereichs einer Richtung
der Y-Achse liegt, andernfalls die
Graustufengradientengröße auf null gesetzt wird;
(d) eine erste Vergleichsschaltungsanordnung, die
betriebsfähig ist, um die
X-Achsen-Darstellung jedes Pixels zu unterscheiden, durch
Vergleichen der Graustufengradientengröße der
X-Achsen-Darstellung des Pixels mit den
Graustufengradientengrößen der
X-Achsen-Darstellungen von jedem eines Satzes von
benachbarten Pixels, welche Pixels auf
gegenüberliegenden Seiten der X-Richtung des
unterschiedenen Pixels angeordnet sind, und
Bereitstellen eines ersten Vergleichsausgabepegels,
wenn die Größe der X-Achsen-Darstellung des
unterschiedenen Pixels größer als oder gleich
der maximalen Größe der X-Achsen-Darstellung
des Satzes von benachbarten Pixels ist,
andernfalls Bereitstellen eines zweiten
Vergleichsausgabepegels;
(e) eine zweite Vergleichsschaltungsanordnung,
die betriebsfähig ist, um die Y-Achsen-
Darstellung jedes Pixels zu unterscheiden,
durch Vergleichen der
Graustufengradientengröße der Y-Achsen-Darstellung des Pixels mit
den Graustufengradientengrößen der Y-Achsen-
Darstellungen von jedem einer Gruppe von
benachbarten Pixels, welche Pixels auf
gegenüberliegenden Seiten der Y-Richtung des
unterschiedenen Pixels angeordnet sind, und
Bereitstellen eines ersten
Vergleichsausgabepegels, wenn die Größe der
Y-Achsen-Darstellung des unterschiedenen Pixels größer als
oder gleich der maximalen Größe der Y-Achsen-
Darstellung der Gruppe von benachbarten
Pixels ist, andernfalls Bereitstellen eines
zweiten Vergleichsausgabepegels; und
(f) eine Logikschaltungsanordnung, die
betriebsfähig ist, um Vergleichsausgabepegel,
die durch (d) und (e) bereitgestellt wurden,
logisch zu summieren.
7. Vorrichtung nach Anspruch 6, bei der die genannten
ersten und zweiten Vergleichsschaltungsanordnungen jeweils
umfassen:-
Mittel zum Ersetzen der
Graustufengradientengröße jedes Pixels durch die maximale
Graustufengradientengröße von dem genannten Satz von benachbarten Pixels in der
X-Richtung, und zum Vergleichen der ursprünglichen Größe des
genannten Pixels mit der genannten Ersatzgröße, und zum
Ausgeben eines ersten Vergleichsausgabepegels für das
genannte Pixel, wenn die ursprüngliche Größe dieselbe wie
die genannte Ersatzgröße ist, andernfalls zum Ausgeben eines
zweiten Vergleichsausgabepegels; und
Mittel zum Ersetzen der Größe des
Graustufengradienten jedes Pixels durch die maximale
Graustufengradientengröße von der genannten Gruppe von benachbarten
Pixels in der Y-Richtung, und zum Vergleichen der
ursprünglichen Größe des genannten Pixels mit der genannten
Ersatzgröße, und zum Ausgeben eines ersten Vergleichsausgabepegels
für das genannte Pixel, wenn die ursprüngliche Größe
dieselbe
wie die genannte Ersatzgröße ist, andernfalls zum
Ausgeben eines zweiten Vergleichsausgabepegels.
8. Vorrichtung nach Anspruch 6 oder 7, bei der die
genannten ersten und zweiten Vergleichsschaltungsanordnungen
jeweils umfassen:-
Mittel zum Unterscheiden jedes Pixels für die
X-Richtung durch Vergleichen der Graustufengradientengröße
des genannten Pixels mit der minimalen Größe des genannten
Satzes von benachbarten Pixels in der X-Richtung; und
Mittel zum Unterscheiden jedes Pixels für die
Y-Richtung durch Vergleichen der Graustufengradientengröße
des genannten Pixels mit der minimalen Größe der genannten
Gruppe von benachbarten Pixels in der Y-Richtung;
9. Vorrichtung nach Anspruch 6, 7 oder 8, bei der
alle genannten Schaltungsanordnungen festverdrahtet sind.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62025711A JPH0816931B2 (ja) | 1987-02-06 | 1987-02-06 | 輪郭線抽出方式 |
JP62152001A JP2612450B2 (ja) | 1987-06-18 | 1987-06-18 | 輪郭線抽出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3886560D1 DE3886560D1 (de) | 1994-02-10 |
DE3886560T2 true DE3886560T2 (de) | 1994-04-21 |
Family
ID=26363372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE88101696T Expired - Fee Related DE3886560T2 (de) | 1987-02-06 | 1988-02-05 | Musterkonturen in Bildverarbeitung. |
Country Status (4)
Country | Link |
---|---|
US (1) | US4908872A (de) |
EP (1) | EP0279297B1 (de) |
AU (1) | AU583202B2 (de) |
DE (1) | DE3886560T2 (de) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2591984B2 (ja) * | 1988-06-06 | 1997-03-19 | 日立ソフトウェアエンジニアリング株式会社 | パターン認識装置 |
EP0588380B1 (de) * | 1988-06-08 | 2003-03-20 | Canon Kabushiki Kaisha | Bildverarbeitungsvorrichtung und -verfahren |
JPH0277889A (ja) * | 1988-09-14 | 1990-03-16 | Ricoh Co Ltd | 図形塗りつぶし方式 |
JPH0737895B2 (ja) * | 1988-12-16 | 1995-04-26 | ジューキ株式会社 | 直接描画方法 |
US5003618A (en) * | 1989-07-14 | 1991-03-26 | University Of Pittsburgh Of The Commonwealth System Of Higher Education | Automatic adaptive anisotropic digital filtering and biasing of digitized images |
EP0435167A3 (en) * | 1989-12-20 | 1991-07-10 | Dai Nippon Insatsu Kabushiki Kaisha | Cut mask preparation method and apparatus |
JP3072766B2 (ja) * | 1990-03-16 | 2000-08-07 | 富士通株式会社 | スカラー・データ処理方式 |
FR2665597B1 (fr) * | 1990-07-31 | 1995-11-17 | Thomson Trt Defense | Procede et dispositif de localisation en temps reel de contours rectilignes dans une image numerisee, notamment pour la reconnaissance de formes dans un traitement d'analyse de scene. |
EP0472782A1 (de) * | 1990-08-27 | 1992-03-04 | Koninklijke Philips Electronics N.V. | Verfahren und Anordnung zur Bestimmung einer Extremwertamplitude in einem Datafeld mit mehreren Werten |
US5448692A (en) * | 1991-03-27 | 1995-09-05 | Ricoh Company, Ltd. | Digital image processing device involving processing of areas of image, based on respective contour line traces |
JPH0766448B2 (ja) * | 1991-06-25 | 1995-07-19 | 富士ゼロックス株式会社 | 画像信号分析装置 |
US5416855A (en) * | 1992-03-03 | 1995-05-16 | Massachusetts Institute Of Technology | Image compression method and apparatus |
US5377102A (en) * | 1992-03-05 | 1994-12-27 | Nishiishigaki; Kenji | Apparatus for preparing map data with regional properties |
FR2688910B1 (fr) * | 1992-03-17 | 1994-05-06 | Thomson Csf | Procede de segmentation non supervise d'une image de texture. |
DE4229647C1 (de) * | 1992-09-04 | 1993-12-02 | Eds Electronic Data Sys Gmbh | Verfahren und Vorrichtung zur Erstellung von Liniendaten |
US5502793A (en) * | 1992-11-30 | 1996-03-26 | Eastman Kodak Company | Resolution enhancement system for binary images |
US5450531A (en) * | 1992-11-30 | 1995-09-12 | Eastman Kodak Company | Resolution enhancement system for combined binary and gray scale halftone images |
JP3040896B2 (ja) * | 1993-06-16 | 2000-05-15 | シャープ株式会社 | 画像処理装置 |
US6122405A (en) * | 1993-08-27 | 2000-09-19 | Martin Marietta Corporation | Adaptive filter selection for optimal feature extraction |
US5378902A (en) * | 1993-09-02 | 1995-01-03 | The Regents Of The University Of Colorado | Optoelectronic maximum identifier for detecting the physical location of a maximum intensity optical signal in a winner-take-all network |
JP2797959B2 (ja) * | 1994-03-12 | 1998-09-17 | 日本ビクター株式会社 | 多次元画像圧縮伸張方法 |
DE69536083D1 (de) * | 1994-04-20 | 2010-08-05 | Oki Electric Ind Co Ltd | Gerät und Verfahren zur Kodierung und Dekodierung von Bildern unter Verwendung einer Kantensynthese und einer Wavelet-Rücktransformation |
US5550933A (en) * | 1994-05-27 | 1996-08-27 | Duke University | Quadrature shape detection using the flow integration transform |
JPH0855188A (ja) * | 1994-06-06 | 1996-02-27 | Toshiba Corp | 文字認識方式 |
US5583659A (en) * | 1994-11-10 | 1996-12-10 | Eastman Kodak Company | Multi-windowing technique for thresholding an image using local image properties |
US5805933A (en) * | 1994-12-28 | 1998-09-08 | Canon Kabushiki Kaisha | Image processing apparatus, image processing method and network system |
KR0181059B1 (ko) * | 1995-03-18 | 1999-05-01 | 배순훈 | 물체의 윤곽을 나타내기 위한 윤곽 근사장치 |
US9530150B2 (en) | 1996-01-19 | 2016-12-27 | Adcension, Llc | Compensation model for network services |
US6264560B1 (en) | 1996-01-19 | 2001-07-24 | Sheldon F. Goldberg | Method and system for playing games on a network |
US5823879A (en) | 1996-01-19 | 1998-10-20 | Sheldon F. Goldberg | Network gaming system |
FR2765707B1 (fr) * | 1997-07-07 | 1999-08-20 | Elf Exploration Prod | Methode de detection et/ou de determination de caracteristiques liees a des points remarquables d'une image |
JP4430179B2 (ja) * | 1999-11-29 | 2010-03-10 | エスアイアイ・ナノテクノロジー株式会社 | 着目画像抽出方法 |
US6717622B2 (en) * | 2001-03-30 | 2004-04-06 | Koninklijke Philips Electronics N.V. | System and method for scalable resolution enhancement of a video image |
US6912309B2 (en) * | 2003-03-06 | 2005-06-28 | Lockheed Martin Corporation | Method and system for identifying objects in an image |
US7706624B2 (en) * | 2003-08-04 | 2010-04-27 | Thomson Licensing | Apparatus and method for reducing noise in an image |
US7764839B2 (en) * | 2003-08-14 | 2010-07-27 | Fujifilm Corporation | Edge detecting apparatus and method, and image size enlarging and reducing apparatus and method |
US20060022995A1 (en) * | 2004-07-30 | 2006-02-02 | Yi-Pin Chang | Method for reducing noise in digital images |
EP1707993B1 (de) * | 2005-03-29 | 2009-08-19 | Total S.A. | Methode und Computerprogramm zur Bestimmung von geologischen Diskontinuitäten |
TWI320914B (en) * | 2006-07-28 | 2010-02-21 | Via Tech Inc | Weight-adjusted apparatus and method thereof |
JP4981410B2 (ja) * | 2006-10-31 | 2012-07-18 | 株式会社日立ハイテクノロジーズ | 走査型電子顕微鏡、走査型電子顕微鏡を用いたパターンの複合検査方法、および走査型電子顕微鏡の制御装置 |
KR101268520B1 (ko) * | 2009-12-14 | 2013-06-04 | 한국전자통신연구원 | 영상 인식 장치 및 방법 |
US9002105B2 (en) | 2013-03-06 | 2015-04-07 | Xerox Corporation | Automated contour detection methods, systems and processor-readable media |
UA118684C2 (uk) | 2013-12-12 | 2019-02-25 | Мес Медікал Електронік Системз Лтд. | Оптичний пристрій, пристрій і спосіб для тестування |
KR101761586B1 (ko) * | 2016-12-21 | 2017-07-27 | 주식회사 쓰리이 | 홍채와 공막의 경계선 검출 방법 |
CN112070812A (zh) * | 2020-08-21 | 2020-12-11 | 广东电网有限责任公司广州供电局 | 一种用于电气设备的特征描述符生成方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4603431A (en) * | 1983-03-14 | 1986-07-29 | Ana Tech Corporation | Method and apparatus for vectorizing documents and symbol recognition |
US4706113A (en) * | 1985-02-18 | 1987-11-10 | Mitsubishi Denki Kabushiki Kaisha | Contour detecting filter device using PAL samples of composite video signals without separation of luminance signals therefrom |
SE448126B (sv) * | 1985-05-23 | 1987-01-19 | Context Vision Ab | Anordning for detektering av sprangartade forendringar av en egenskap inom ett omrade av en i diskreta bildelement uppdelad bild |
SE448124B (sv) * | 1985-05-23 | 1987-01-19 | Context Vision Ab | Anordning for detektering av variationsgraden av en egenskap i ett omrade av en i diskreta bildelement uppdelad bild |
SE448125B (sv) * | 1985-05-23 | 1987-01-19 | Context Vision Ab | Anordning for bestemning av graden av konstans hos en egenskap for ett omrade i en i diskreta bildelement uppdelad bild |
CA1270953A (en) * | 1986-05-23 | 1990-06-26 | Satoshi Naoi | Method of curve approximation |
AU601707B2 (en) * | 1986-12-24 | 1990-09-20 | Leigh-Mardon Pty Limited | Method and device for storing and reproducing graphical patterns or signatures |
-
1988
- 1988-02-04 AU AU11276/88A patent/AU583202B2/en not_active Ceased
- 1988-02-05 EP EP88101696A patent/EP0279297B1/de not_active Expired - Lifetime
- 1988-02-05 US US07/153,426 patent/US4908872A/en not_active Expired - Lifetime
- 1988-02-05 DE DE88101696T patent/DE3886560T2/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0279297A3 (en) | 1990-11-14 |
AU1127688A (en) | 1988-08-11 |
EP0279297B1 (de) | 1993-12-29 |
US4908872A (en) | 1990-03-13 |
AU583202B2 (en) | 1989-04-20 |
DE3886560D1 (de) | 1994-02-10 |
EP0279297A2 (de) | 1988-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3886560T2 (de) | Musterkonturen in Bildverarbeitung. | |
DE69131922T2 (de) | Verfahren und Gerät zum Ausziehen von Aussenlinien | |
DE2909153C2 (de) | Einrichtung zur digitalen Analyse von Bild- oder Zeichenmustern | |
DE69604481T2 (de) | Verfahren und gerät zum trennen des vordergrunds und hintergrunds in textenthaltenden bildern | |
DE69535098T2 (de) | Verfahren und -vorrichtung zur Suche von Bildern in einer Datenbank | |
DE69715076T2 (de) | Vorrichtung zur Erzeugung eines Binärbildes | |
DE3689926T2 (de) | Einrichtung zur sequenziellen Bildtransformation. | |
DE3688565T2 (de) | Verfahren und System zur Bildveränderung. | |
DE3689049T2 (de) | Selbstanpassender Prozessor. | |
DE3309846C2 (de) | ||
DE68926890T2 (de) | Bildvergrösserung | |
DE69032556T2 (de) | Technik zur Bildverkleinerung und -vergrösserung | |
DE69124758T2 (de) | Verfahren und Vorrichtung zur Farbbildkonturbestimmung | |
DE69719859T2 (de) | Bildverarbeitungsverfahren | |
DE10043460C2 (de) | Auffinden von Körperpartien durch Auswerten von Kantenrichtungsinformation | |
DE2340597A1 (de) | Bildverarbeitungsanordnung | |
DE3415470A1 (de) | Geraet und verfahren zum codieren und speichern von rasterabtastbildern | |
DE112010005721B4 (de) | Bildverarbeitungsvorrichtung | |
DE2703158A1 (de) | Einrichtung zum erkennen einer zeichenposition | |
DE68923110T2 (de) | Vermeiden des Verschwindens von dünnen Linien in Bildreduzierverfahren. | |
DE4133590A1 (de) | Verfahren zur klassifikation von signalen | |
DE69421487T2 (de) | Verfahren zum Vergleichen von Mustern basierend auf der Verwendung von Bildelementmatritzen und Bildelementvektoren | |
DE3241673C2 (de) | Verfahren zum Verdichten von Daten Zwei-wertiger Bilddarstellungen | |
DE102006044595B4 (de) | Bildverarbeitungsvorrichtung zur Segmentierung anhand von Konturpunkten | |
DE3524505A1 (de) | Bilderkennungsvorrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |