DE69330813T2 - Bildprozessor und verfahren dafuer - Google Patents
Bildprozessor und verfahren dafuerInfo
- Publication number
- DE69330813T2 DE69330813T2 DE69330813T DE69330813T DE69330813T2 DE 69330813 T2 DE69330813 T2 DE 69330813T2 DE 69330813 T DE69330813 T DE 69330813T DE 69330813 T DE69330813 T DE 69330813T DE 69330813 T2 DE69330813 T2 DE 69330813T2
- Authority
- DE
- Germany
- Prior art keywords
- image data
- image
- window
- value
- circuit
- 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 - Lifetime
Links
- 238000000034 method Methods 0.000 title description 20
- 238000004364 calculation method Methods 0.000 claims description 42
- 230000015654 memory Effects 0.000 claims description 30
- 238000003672 processing method Methods 0.000 claims description 16
- 238000009499 grossing Methods 0.000 claims description 15
- 238000009792 diffusion process Methods 0.000 claims description 14
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000003384 imaging method Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 15
- 238000006073 displacement reaction Methods 0.000 description 8
- 238000007689 inspection Methods 0.000 description 7
- 238000011084 recovery Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 6
- 238000013139 quantization Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000004091 panning Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf einen Bildprozessor und ein Bildverarbeitungsverfahren zur Durchführung eines Musterabgleichs und dergleichen zum Zwecke der Objekterkennung.
- Ein für einen Musterabgleich verfügbares Verfahren beinhaltet das Einstellen eines Fensters auf Bilddaten, die durch Abbilden eines Gegenstands gewonnen sind, und das Berechnen eines Koinzidenzgrades oder Ähnlichkeitsgrades zwischen Teilbilddaten innerhalb des Fensters und vorab registrierten Standardbilddaten. Mit der Durchführung der oben beschriebenen Verarbeitung in Bezug auf das Fenster an allen Stellen desselben, während man mit dem Fenster ein Bild abtastet, wird ein Fenster festgestellt, das Teilbilddaten enthält, die den höchsten Grad an Koinzidenz oder Ähnlichkeit zeigen, wodurch es möglich wird, eine Lage zu erkennen, an welcher ein Bild vorliegt, das identisch mit oder ähnlich zu dem Standardbild ist. Es können also verschiedene Arten von eine Meßverarbeitung in Bezug auf Bilddaten innerhalb eines spezifizierten Fensters durchgeführt werden.
- Bilddaten werden im allgemeinen durch acht oder mehr Bit pro Pixel dargestellt. Linienspeicher werden dazu verwendet, Bilddaten innerhalb eines eingestellten Fensters mit einer Videorate herauszuziehen. Die Linienspeicher, deren Anzahl der Anzahl von Pixeln in der vertikalen Richtung des Fensters entspricht, sind in Kaskade verschaltet, und Bilddaten werden zwischen den Linienspeichern synchron mit einem Taktsignal übertragen. Durch Herausziehen von Bilddaten auf einem einzelnen Takt aus einer bestimmten Position eines jeden Linienspeichers, beispielsweise dem Endpunkt des Linienspeichers, wird eine Spalte von Bilddaten in vertikaler Richtung des Fensters gewonnen. Ein Problem, das bei einem Bildprozessor mit einem solchen Aufbau auftritt, besteht darin, daß eine große Anzahl von Linienspeichern von jeweils wenigstens acht Bit vorgesehen sein muß, mit der Folge einer Vergrößerung des Hardwaremaßstabs. Ferner ist ein Musterabgleich von acht Bit pro Pixel erforderlich. Wenn dies mit Hardware umgesetzt wird, wird der Maßstab der Schaltung in ähnlicher Weise erhöht. Wenn man versucht, das Vorstehende mit Software umzusetzen, ergibt sich eine kompliziertere Verarbeitung.
- Gemäß Patent Abstracts of Japan, Bd. 12 Nr. 174, (e-612) 24. Mai 1988 & JP-A-62 281 673 (KONOSHIROKU PHOTO IND CO LTD) 7. Dezember 1987 wird, um ein Originalhalbtonbild anhand eines Konditionalentscheidungs-Ditherbilds durch Aufsummieren der Produkte aus Bildelementwerten innerhalb eines Einheitsbereichs und der Gewichtungsverteilung und Abschätzen des Halbtonbildes beruhend auf den Gesamtwert zufriedenstellend abzuschätzen, ein Einheitsbereich U, der die Gewichtungsverteilung hat, innerhalb eines Binärbildes eingestellt. Es ist wünschenswert, daß der Gewichtungskoeffizient zur Mitte des Bereichs U hin zunimmt. Die Binärbilder werden innerhalb des Bereichs U eingestellt. Der Gesamtwert 8 der Bildelementwerte des Bildelementes (1, 1) wird an der Anfangsposition der Abtastung eingestellt, und der Gewichtungskoeffizient ist gleich dem abgeschätzten Wert eines Halbtonbilds des Bildelements (1, 1). Dann wird der Bereich U nach rechts um einen Betrag verschoben, der gleich einem einzelnen Bildelement ist, und die gleiche Berechnung wird zur Gewinnung des abgeschätzten Werts eines Halbtonbilds des Bildelements (1, 2) durchgeführt. Danach werden die Halbtonbilder wiederholt mit allen Bildelementen abgeschätzt, um die abgeschätzten Halbtonbilder zu gewinnen. So ist es möglich, ein Halbtonbild angenähert an das originale anhand eines Binärbilds wiederherzustellen, das durch das Konditionalentscheidungs-Ditherverfahren gewonnen ist.
- US-A-3 898 617 beschreibt ein Verfahren zur Feststellung der Position eines Musters, bei welchem ein spezielles Teilmuster in einem Muster eines Objekts als Standardmuster vorab gespeichert wird, zweidimensionale Teilmuster sequentiell aus dem Muster des mit einer Bildaufnahmevorrichtung aufgenommen Objekts abgesteckt werden, die abgesteckten Teilmuster nacheinander mit dem Standardmuster verglichen werden, um so Koinzidenzgrade festzustellen, und Koordinaten einer auf dem Muster des Objekts aufzufindenden Position anhand der Koordinaten einer Position, die das am meisten koinzidente Teilmuster darstellt, berechnet werden.
- Eine Hauptaufgabe der vorliegenden Erfindung ist es, einen Bildprozessor und ein Bildverarbeitungsverfahren zu schaffen, über welche der Hardwaremaßstab reduziert werden kann.
- Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, ein Musterabgleichverfahren zu vereinfachen.
- Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, verschiedene Anwendungen des Bildprozessors vorzusehen.
- Ein Bildprozessor gemäß der vorliegenden Erfindung ist wie in Anspruch 1 definiert.
- Ein Bildverarbeitungsverfahren gemäß der vorliegenden Erfindung ist wie in Anspruch 17 definiert.
- In einer Ausführungsform des Bildprozessors gemäß der vorliegenden Erfindung binarisieren die Pseudograuskalen-Bilderzeugungsschaltungsmittel die Eingangsbilddaten unter Verwendung eines Fehlerverteilverfahrens und erzeugen durch ein Bit pro Pixel dargestellte Zitterbilddaten (Binärbilddaten).
- In einer weiteren Ausführungsform des Bildprozessors gemäß der vorliegenden Erfindung unterwerfen die Pseudograuskalen- Bilderzeugungsschaltungsmittel die Eingangsbilddaten einer Vierwertumwandlung unter Verwendung eines Fehlerverteilverfahrens und erzeugen durch zwei Bit pro Pixel dargestellte Pseudograuskalen-Bilddaten.
- Gemäß der vorliegenden Erfindung werden Eingangsbilddaten in Pseudograuskalen-Bilddaten umgewandelt, und die Anzahl von Bit pro Pixel der Bilddaten wird in einem breiten Rahmen reduziert. Dadurch ist es möglich, die Anzahl von Bits von Linienspeichern stark zu vermindern, die verwendet werden, wenn Pseudograuskalen-Bilddaten innerhalb eines Bildes mit einer Videorate herausgezogen werden. Dementsprechend läßt sich der Maßstab von Hardwareschaltungen reduzieren und Kosten können gesenkt werden.
- Ferner werden Grauskalen-Bilddaten durch Aufsummieren von Pseudograuskalen-Bilddaten für alle in einem Fenster vorgesehenen kleinen Bereiche wiederhergestellt. Ein Pixel von wiederhergestellten Bilddaten ist gleich der Größe des kleinen Bereichs. Dementsprechend ist die Anzahl von Pixeln von wiederhergestellten Bilddaten reduziert, so daß die Verarbeitung (die Verarbeitung zur Berechnung eines Ähnlichkeitsindexwerts) für einen Bildabgleich bei Textdaten vereinfacht ist. Dies führt zu kleineren Schaltungen im Falle von Hardware und zu einer Vereinfachung der Verarbeitung im Falle von Software. Da die Helligkeitsverteilung der Eingangsbilddaten in den wiederhergestellten Bilddaten im wesentlichen bewahrt wird, läßt sich die Exaktheit des Musterabgleichs aufrechterhalten.
- Die Pseudograuskalen-Bilddaten werden, wie oben erwähnt, durch ein, zwei oder mehr Bit pro Pixel dargestellt. Die Helligkeitsauflösung ist zwar um so höher, je größer die Anzahl von Bits ist, die Größe von Schaltungen in einem solchen Fall ist aber größer. Aus praktischen Gründen sollte die Anzahl von Bits daher geeignet bestimmt eingestellt werden. Die Größe der kleinen Bereiche hat Auswirkung auf die räumliche und die Helligkeitsauflösung. Die Größe der kleinen Bereiche sollte ebenfalls beruhend auf praktischen Überlegungen bestimmt werden.
- Bei einer Ausführungsform umfassen die Bildwiederherstellungsschaltungsmittel kaskadenverschaltete Linienspeicher, deren Anzahl der Anzahl von Pixeln in der vertikalen Richtung des Fensters entspricht, zur Übertragung von Pseudograuskalen- Bilddaten mit der zweiten vorgeschriebenen Anzahl von Bits, eine Schaltung zum Herausziehen, aus jedem Linienspeicher und für jeden kleinen Bereich, von Pseudograuskalen-Bilddaten einer Anzahl von Pixeln in der horizontalen Richtung des Fensters, sowie Addierschaltungsmittel zum Aufsummieren der herausgezogenen Pseudograuskalen-Bilddaten für jeden kleinen Bereich und Ausgeben von wiederhergestellten Bilddaten.
- Bei einer bevorzugten Ausführungsform sind ferner Glättungsschaltungsmittel zum Glätten der von den Addierschaltungsmitteln ausgegebenen wiederhergestellten Bilddaten über wiederhergestellte Pixel vor und hinter den wiederhergestellten Bilddaten vorgesehen. Die Wiederherstellbarkeit der Bilddaten wird dadurch verbessert.
- Bei einer Ausführungsform der vorliegenden Erfindung sind ferner Spitzenwerthalteschaltungsmittel zur Feststellung eines Indexwerts, welcher den höchsten Grad an Ähnlichkeit unter die einzelnen Fenster betreffenden Ähnlichkeitsindexwerten darstellt, die von den Ähnlichkeitsoperationsschaltungsmitteln gewonnen sind, und von Lagedaten, die das Fenster angeben, in welchem dieser Indexwert erzeugt wird, vorgesehen.
- Dadurch ist es möglich, die Lage eines Bildes festzustellen, welches den höchsten Grad an Ähnlichkeit mit dem Standardbild hat.
- Bei einer Ausführungsform der vorliegenden Erfindung ist der den Ähnlichkeitsgrad darstellende Indexwert ein Differenzwert in der Bildhelligkeit des Bildes, und die Ähnlichkeitsoperationschaltungsmittel berechnen einen Absolutwert der Differenz zwischen wiederhergestellten Bilddaten und entsprechenden Textdaten für jeden kleinen Bereich, summieren die Absolutwerte dieser Differenzen über alle in einem Fenster enthaltenen kleinen Bereiche auf und geben den Summenwert als Helligkeitsdifferenzwert aus. Ferner sind die Spitzenwerthalteschaltungsmittel als Mittel zur Feststellung eines kleinsten Differenzwerts unter den die einzelnen Fenster betreffenden mit den Ähnlichkeitsoperationsschaltungsmitteln gewonnenen Helligkeitsdifferenzwerten sowie von Lagedaten, die das Fenster angeben, in welchem der kleinste Differenzwert erzeugt wird, realisiert.
- In einer weiteren Ausführungsform der vorliegenden Erfindung berechnen die Ähnlichkeitsoperationsschaltungsmittel einen Kreuzkorrelationswert zwischen wiederhergestellten Bilddaten und Textdaten für jedes Fenster und geben diesen Kreuzkorrelationswert als Ähnlichkeitsgrad darstellenden Indexwert aus. In diesem Fall sind die Spitzenwerthalteschaltungsmittel als Mittel zur Feststellung eines größten Kreuzkorrelationswert unter den die einzelnen Fenster betreffenden mit den Ähnlichkeitsoperationsschaltungsmitteln gewonnenen Kreuzkorrelationswerten sowie von Lagedaten, die das Fenster angeben, in welchem der größte Kreuzkorrelationswert erzeugt wird, realisiert.
- Die vorliegende Erfindung schafft Anwendungsbeispiele für den oben beschriebenen Bildprozessor und das oben beschriebene Bildverarbeitungsverfahren.
- Ein Anwendungsbeispiel ist eine Inspektionsvorrichtung für Kratzer, Flecken und dergleichen. Diese Vorrichtung umfaßt Bildabfühlmittel zum Abbilden eines Objekts und Ausgeben eines Videosignals, welches das Objekt darstellt, eine A/D-Wandlerschaltung zur Umwandlung des Videosignals, welches von den Bildabfühlmitteln ausgegeben wird, in Eingangsbilddaten, Abweichungswert-Berechnungsmittel zur Berechnung eines Abweichungswerts betreffend Helligkeit oder Dichte einer speziellen Farbe in den von der A/D-Wandlerschaltung ausgegebenen Eingangsbilddaten sowie Mittel zur Bestimmung, ob der mit dem Abweichungswert-Berechnungsmitteln gewonnene Abweichungswert größer als eine bestimmte Schwelle ist.
- Der oben erwähnte Abweichungswert ist eine Varianz bzw. Standardabweichung.
- Bei einer Ausführungsform der Inspektionsvorrichtung für Verunreinigungen und dergleichen sind ferner Pseudograuskalen- Bilderzeugungsschaltungsmittel zur Umwandlung der Eingangsbilddaten, welche durch eine erste vorgegebene Anzahl von Bits pro Pixel dargestellt werden, in Pseudograuskalen-Bilddaten, die durch eine zwei vorgegebene Anzahl von Bits dargestellt werden, die kleiner als die erste vorgegebene Anzahl von Bits ist, sowie Bildwiederherstellungsschaltungsmitel zur Wiederherstellung der Pseudograuskalen-Bilddaten für jeden einer Anzahl von kleinen Bereichen, von denen jeder eine Anzahl von Pixeln aufweist und die in einem Fenster vorgesehen sind, welches das mit den Pseudograskalen-Bilderzeugungsschaltungsmitteln erzeugte Pseudograuskalenbild abtastet, wobei jeder kleine Bereich als ein wiederhergestelltes Pixel dient, und zur Ausgabe von wiederhergestellten Bilddaten für ein Fenster an jeder Position vorgesehen. Die Abweichungswertberechungsmittel berechnen einen Abweichungswert für jedes Fenster in Bezug auf die wiederhergestellten Bilddaten und stellen einen Maximalwert unter diesen Abweichungswerten fest. Die Bestimmungsmittel vergleichen den maximalen Abweichungswert mit einen bestimmten Schwellenwert.
- Bei dieser Inspektionsvorrichtung für Kratzer oder dergleichen wird von der Tatsache Gebrauch gemacht, daß, wenn die Oberfläche eines Objekts verkratzt oder verschmutzt ist, eine Zunahme beim Abweichungswert betreffend die Helligkeit oder die Dichte einer speziellen Farbe in den resultierenden Bilddaten auftritt. Dementsprechend kann das Vorhandensein von Kratzern oder Flecken korrekt auch dann abgefühlt werden, wenn die Oberfläche des Objekts ein feines gleichförmiges Muster aufweist, und das Abfühlen ist durch eine Irregularität in der Helligkeit oder durch Abschattung nicht beeinflußt.
- Fig. 1 ist ein Blockschaltbild, welches den Gesamtaufbau eines Bildprozessors gemäß einer ersten Ausführungsform zeigt;
- Fig. 2 ist ein Wellenformdiagramm welches ein Taktsignal, ein Horizontalsynchronisationssignal, ein Vertikalsynchronisationssignal zeigt;
- Fig. 3 veranschaulicht ein innerhalb eines Bilds eingestelltes Fenster sowie einen innerhalb des Fensters eingestellten kleinen Bereich;
- Fig. 4 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Binärbilderzeugungsschaltung veranschaulicht;
- Fig. 5 und Fig. 6a, 6b veranschaulichen die Prinzipien einer Binärverarbeitung, welche das Fehlerverteilverfahren verwendet;
- Fig. 7 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Bildwiederherstellungsschaltung veranschaulicht;
- Fig. 8 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Kleinbereich-Wiederherstellunsschaltung veranschaulicht;
- Fig. 9 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Differenzberechnungsschaltung veranschaulicht;
- Fig. 10 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Spitzenwerthalteschaltung veranschaulicht;
- Fig. 11 ist ein Blockschaltbild, welches den Gesamtaufbau eines Bildprozessors gemäß einer zweiten Ausführungsform veranschaulicht;
- Fig. 12 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Pseudograuskalen-Bilderzeugungsschaltung veranschaulicht;
- Fig. 13 und 14 veranschaulichen ein Verfahren einer mehrwertigen Verarbeitung unter Verwendung des Fehlerverteilverfahrens;
- Fig. 15 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Bildwiederherstellungsschaltung veranschaulicht;
- Fig. 16 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Kleinbereichs-Wiederherstellungsschaltung veranschaulicht;
- Fig. 17 und 18 sind Blockschaltbilder, welche Beispiele einer Glättungsschaltung veranschaulichen;
- Fig. 19 ist ein Blockschaltbild, welches den Gesamtaufbau eines Bildprozessors gemäß einer dritten Ausführungsform und einer ersten Anwendung veranschaulicht;
- Fig. 20 ist ein Blockschaltbild, welches ein spezielles Beispiel einer Kreuzkorrelationsberechnungsschaltung veranschaulicht;
- Fig. 21a und 21b veranschaulichen Beispiele von Helligkeitsverteilungen von Bilddaten längs einer Horizontalabtastlinie, wobei Fig. 21a einen Fall zeigt, bei welchem keine Abschattung oder Helligkeitsirregularität vorliegt, und Fig. 21b einen Fall zeigt, bei welchem eine Abschattung oder Helligkeitsirregularität vorliegt;
- Fig. 22 veranschaulicht ein Beispiel für eine Oberfläche eines Objekts, die ein gleichförmiges Muster aufweist, auf welchem ein Kratzer oder Fleck vorliegt;
- Fig. 23a und 23b zeigen Helligkeitshistogramme, wobei Fig. 23a einen Fall zeigt, bei welchem kein Kratzer oder Fleck vorliegt, und Fig. 23b einen Fall zeigt, bei welchem ein Kratzer oder Fleck vorliegt;
- Fig. 24 veranschaulicht den Gesamtaufbau einer Positioniervorrichtung, welcher eine zweite Anwendung ist;
- Fig. 25a und 25b veranschaulichen Beispiele von Positioniermarkierungen;
- Fig. 26 veranschaulicht die Art und Weise, in welche ein Lageversetzung in einem Positioniermarkenmuster erscheint;
- Fig. 27 ist ein Flußdiagramm, welches den Vorgang einer Positionierverarbeitung veranschaulicht;
- Fig. 28 veranschaulicht den Gesamtaufbau eines automatischen Verfolgungssystems, welches eine dritte Anwendung ist;
- Fig. 29 zeigt die Art und Weise, in welcher sich ein das Bild eines Objekts enthaltendes Fenster bewegt; und
- Fig. 30 ist ein Flußdiagramm, welches ein Prozeßflußdiagramm für die Aktualisierung eines Textmusters veranschaulicht.
- Fig. 1 ist ein Blockschaltbild, welches den Gesamtaufbau eines Bildprozessors gemäß einer ersten Ausführungsform veranschaulicht.
- Ein Bildprozessor 10 enthält einen A/D-Wandler 11, einen Bildspeicher 12, eine Binärbilderzeugungsschaltung 13, eine Bildwiederherstellungsschaltung 14, eine Differenzberechnungsschaltung 15, eine Spitzenwerthalteschaltung 16, eine CPU 17 und einen E/A-Anschluß 18.
- Ein Synchronisiersignal-Erzeugungsschaltung 19 des Bildprozessors 10 erzeugt ein Taktsignal CK, ein Horizontalsynchronisiersignal HD und Vertikalsynchronisiersignal VD (diese Signale sollen kollektiv als "Synchronisiersignal" bezeichnet werden) der in Fig. 2 gezeigten Art. Die Synchronisiersignale werden auf eine Videokamera 9, den A/D-Wandler 11, die Binärbilderzeugungsschaltung 13, die Bildwiederherstellungsschaltung 14, die Differenzberechnungsschaltung 15 und die Spitzenwerthalteschaltung 16 gegeben. Das Taktsignal CK, von welchem ein Impuls pro Bilddatenpixel ausgegeben wird, dient als Abtasttaktsignal.
- Die Videokamera bzw. Fernsehkamera 9 nimmt das Bild eines Objekts auf und gibt ein analoges Videosignal, welches das Bild des Objekts darstellt, synchron mit den aufgegebenen Synchronisiersignalen aus. Das analoge Videosignal wird auf den A/D-Wandler 11 des Bildprozessors 10 gegeben.
- Der A/D-Wandler 11 wandelt das eingehende analoge Videosignal in digitale Bilddaten um. Bei dieser Ausführungsform werden die digitalen Bilddaten durch acht Bits dargestellt. Das heißt, es wird ein Grauskalenbild von 265 Niveaus durch die Bilddaten ausgedrückt. Die digitalen Bilddaten werden auf den Bildspeicher 12 gegeben und in diesem gespeichert und werden außerdem der Binärbilderzeugungsschaltung 13 zugeführt.
- Die Binärbilderzeugungsschaltung 13 quantisiert die eingehenden Acht-Bit-Digitalbilddaten unter Verwendung des Fehlerverteilverfahrens und gewinnt Binärbild-(Ditherbild-)Daten einer Art die, wenn gesamt betrachtet, als Ton wahrgenommen wird. Die Binärbilddaten werden auf die Bildwiederherstellungsschaltung 14 gegeben.
- Bei dem Bildprozessor 10 dieser Ausführungsform wird der Ähnlichkeitsgrad zwischen dem Teilbild, welches aus dem Eingangsbild (dem mit der Kamera 9 aufgenommenen Bild) unter schrittweiser Lageänderung herausgezogen wird, und einem speziellen Teilbild eines gegebenen Standardbildes (Modellbildes) berechnet und die Lage des Teilbilds mit dem höchsten Ähnlichkeitsgrad im Eingangsbild bestimmt. Bei dieser Ausführungsform wird eine Helligkeitsdifferenz oder Dichtedifferenz (die als "Differenz" bezeichnet werden sollen) als Ähnlichkeitsindex verwendet.
- Um ein Teilbild aus dem Eingangsbild zu schneiden, wird, wie in Fig. 3 gezeigt, ein quadratisches Fenster WN verwendet. Es sei die Größe des Fensters WN N · M Pixel (ein Pixel entspricht dem Taktsignal CK). Die X- und Y-Achse werden in der horizontalen bzw. vertikalen Richtung des Bildes genommen. Die Lage des Fensters WN wird durch die Koordinaten x, y des Punktes in der oberen linken Ecke des Fensters dargestellt.
- Ferner werden zur Umwandlung des Binärbilds zurück in ein Grauskalenbild eine Anzahl von quadratischen kleinen Bereichen SA, die zu einem Bildelement eines wiederhergestellten Grauskalenbildes werden, innerhalb des Fensters WN vorgesehen. Es sei die Größe eines jeden kleinen Bereichs SA n · m Pixel (ein Pixel entspricht dem Taktsignal CK). Dies bedeutet, daß das Fenster WN in (N/n) · (M/m) kleine Bereiche unterteilt wird. Es ist zu beachten, daß ein Abschnitt (Zwischenraum) der zu keinem kleinen Bereich gehört, zwischen aneinander angrenzenden kleinen Bereichen vorgesehen sein kann.
- Beispielsweise wird das Fenster WN auf 64 Pixel (Punkte) · 64 Pixel (Punkte) und jeder kleine Bereich SA auf 4 Pixel (Punkte) · 4 Pixel (Punkte) eingestellt. Das Fenster WN ist in 16 · 16 = 256 kleine Bereiche SA unterteilt.
- Unter Bezug auf Fig. 1 erzeugt die Bildwiederherstellungsschaltung 14 wiederhergestellte Grauskalenbilddaten durch Aufsummieren der Binärbilddaten (1 oder 0) in jedem kleinen Bereich SA des Fensters WN. Die Größe von einem Pixel dieser wiederhergestellten Grauskalenbilddaten ist gleich der Größe des kleinen Bereichs SA und besitzt eine Helligkeits- (Dichte-)Auflösung von n · m Grauwerten (z.B. gibt es, wenn n = m = 4 gilt, 16 Grauwerte).
- Die wiederhergestellten Grauskalenbilddaten werden auf die Differenzberechnungsschaltung 15 gegeben. Die CPU 17 beliefert die Differenzberechnungsschaltung 15 mit Textdaten, die den vorgenannten wiederhergestellten Grauwertbilddaten entsprechen, vorab erzeugt in Bezug auf das spezielle Teilbild des Standardbildes. Die Textdaten werden vorab in Bezug auf das spezielle Teilbild des Standardbilds durch eine Technik erzeugt, die exakt die gleiche wie diejenige der Verarbeitung zur Erzeugung wiederhergestellter Grauwertbilddaten betreffend das Eingangsbild ist. Beispielsweise wird das Standardbild von der Kamera 9 aufgenommen, das gewonnene Videosignal in Digitalbilddaten durch den A/D-Wandler 11 umgewandelt, werden Binärbilddaten von der Binärbilderzeugungsschaltung 13 erzeugt, wobei die Digitalbilddaten als Eingabe dienen, wird ein spezieller Abschnitt der Binärbilddaten durch ein Fenster ausgeschnitten, das Fenster in eine Anzahl von kleinen Bereichen unterteilt und werden die Binärbilddaten für jeden kleinen Bereich aufsummiert und so Textdaten erzeugt. Natürlich können die Textdaten auch durch eine andere Vorrichtung erzeugt, auf die CPU 17 über den E/A-Anschluß 18 gegeben und dann in einem zur CPU 17 peripheren Speicher gespeichert werden.
- Die Differenzberechnungsschaltung 15 berechnet die Differenz zwischen den wiederhergestellten Grauwertbilddaten und den Textdaten für jeden kleinen Bereich und summiert die Absolutwerte dieser Differenzen in Bezug auf alle kleinen Bereiche innerhalb des Fensters auf. Je kleiner der Summenwert, desto größer ist die Ähnlichkeit zwischen dem aus dem Eingangsbild mit dem Fenster ausgeschnittenen Teilbild und dem speziellen Teilbild des Standardbilds. Dies ist eine Art von Musterübereinstimmungsverarbeitung.
- Wie oben ausgeführt, wird das Fenster N über den gesamten Bereich des Eingangsbildes in horizontaler und vertikaler Richtung durchgetastet. Die Spitzenwerthalteschaltung 16 findet das Fenster auf, in welchem die Summe der Absolutwerte der vorgenannten Differenzen den Minimalwert annimmt. Der Minimalwert der Summe und die Koordinaten der Lage des Fensters, in welchem der Minimalwert gewonnen wurde, werden von der Spitzenwerthalteschaltung 16 auf die CPU 17 gegeben.
- Die CPU 17 führt eine bestimmte Verarbeitung beruhend auf dem von der Spitzenwerthalteschaltung 16 gelieferten Minimalwert und den Koordinaten der Fensterposition durch. Beispielsweise vergleicht die CPU den aufgegebenen Minimalwert mit einem bestimmten Schwellenwert und beurteilt, wenn der Minimalwert gleich oder kleiner als der Schwellenwert ist, daß das aus dem Eingangsbild durch dieses Fenster ausgeschnittene Teilbild mit dem speziellen Teilbild des Standardbilds zusammenfällt. Wenn beurteilt wird, daß Koinzidenz erreicht ist, verwendet die CPU die aufgegebenen Koordinaten des Fensters zum Auslesen der Bilddaten des Teilbildes, für welches Koinzidenz beurteilt worden ist, aus dem Bildspeicher 12 und gibt diese Bilddaten über den E/A-Anschluß 18 auf eine externe Vorrichtung, z.B. eine Kathodenstrahlröhre-Anzeigeeinheit, um eine Anzeige des Teilbilds darzubieten. Falls erforderlich, wird das Teilbild, für welches Koinzidenz beurteilt worden ist, einer Messungsverarbeitung (z.B. Verarbeitung zum Ziehen der Kontur, zur Berechnung der Fläche oder Lage des Schwerpunkts eines durch die Kontur definierten Abschnitts oder zur Formerkennung) unterworfen.
- In der oben gegebenen Beschreibung wird die Formulierung "ein spezielles Teilbilds eines Standardbilds" als Gegenstück zu einem aus dem Eingangsbild durch ein Fenster ausgeschnittenen Teilbild verwendet. Dieses spezielle Teilbild kann jedoch auch als "Standardbild" oder Standardmuster ausgedrückt werden.
- Spezielle Beispiele des Aufbaus der in Fig. 1 gezeigten Schaltungsblöcke werden nun nacheinander beschrieben.
- Fig. 4 zeigt ein spezielles Beispiel des Aufbaus der Binärbilderzeugungsschaltung 13. Ferner dienen Fig. 5 und Fig. 6a, 6b der Beschreibung der Prinzipien der Binarisierung durch das Fehlerverteilverfahren.
- In Fig. 5 konzentriert sich die Beschreibung auf ein Pixel E(0) eines Eingangsbilds. Die mit dem A/D-Wandler 11 durchgeführte A/D-Wandlung wird zu einer Periode eines Takts für jedes Element von Bilddaten (acht Bits) eines Pixels ausgeführt, und die Bilddaten werden einzeln nach Pixeln in der Reihenfolge der Abtastung der Binärbilderzeugungsschaltung 13 mit der Periode des Taktsignals zugeführt. Es soll E(1D) ein Pixel darstellen, welches 1D später als das interessierende Pixel E(0) eingegeben wird (wobei 1D eine Periode des Taktsignals CK ist). Ähnlich soll E(1H) ein Pixel an einer Position darstellen, die um 1H in Bezug auf das interessierende Pixel E(0) verzögert ist (wobei 1H ein Horizontalesabtastintervall ist), soll E(1H - 1D) ein Pixel an einer Position darstellen, die um (1H - 1D) in Bezug auf E(0) verzögert ist und soll E(1H + 1D) ein Pixel an einer Position darstellen, die um (1H + 1D) in Bezug auf E(0) verzögert ist.
- Gemäß dem Fehlerverteilverfahren wird zunächst ein Fehler e am interessierenden Pixel E(0) berechnet. Gemäß dem Ditherverfahren werden Bilddaten Data des interessierenden Pixels E E(0) mit einem bestimmten Schwellenwert TH verglichen. Der Schwellenwert TH wird üblicherweise auf halben Weg zwischen dem Weißwert (Data = 255) und Schwarzwert (Data = 0) gesetzt. Wenn Data den Schwellenwert TH überschreitet, wird das interessierende Pixel E(0) binarisiert (Binärdaten 1), indem es zwangsweise auf den Weißwert, wie in Fig. 6a gezeigt, gesetzt wird, und der bei dieser Binarisierung erzeugte Fehler e wird gemäß der folgenden Gleichung berechnet:
- e = Data - 255 Gl. (1)
- Wenn Data gleich oder kleiner als der Schwellenwert TH ist, wird das interessierende Pixel E(0) binarisiert (Binärdaten 0), indem es zwangsweise, wie in Fig. 6b gezeigt, auf den Schwarzwert gesetzt wird, und der bei dieser Binarisierung erzeugte Fehler e wird gemäß der folgenden Gleichung berechnet:
- e = Data - 0 Gl. (2)
- Die mit dieser Binarisierungsverarbeitung gewonnen Binärbilddaten sind die Binärbilddaten (Ditherbilddaten). Demgemäß werden die Binärbilddaten durch ein Bit pro Pixel ausgedrückt.
- Der durch die Binarisierungsverarbeitung erzeugte Fehler e wird auf die anderen Pixel E(1D), E(1H - 1D), E(1H) und E (1H + 1D) mit einer Rate von e/2, e/8, e/4 und e/8 aufgeteilt. Dies ist das Fehlerverteilverfahren. Obwohl die Bilddaten des interessierenden Pixels quantisiert sind, wird also der diese Quantisierung begleitende Fehler auf die zum interessierenden Pixel benachbarten Pixel verteilt. Dadurch wird die mittlere Helligkeit (Dichte) in dem auf das interessierende Pixel zentrierten Bereich im wesentlichen beibehalten.
- In Fig. 4 speichern Verriegelungsschaltungen 20, 26, 29, 31 und 33, von denen jede aus acht Flipflops zusammengesetzt ist, Acht-Bit-Bilddaten zwischen und wirken dahingehend, daß sie eine Verzögerung von 1D aufbringen. Die Verriegelungsschaltungen 20, 26, 29, 31 und 33 werden mit dem Taktsignal CK versehen. Eine 1H-Verzögerungsschaltung 27, welche die Bilddaten um ein Intervall 1H verzögert, wird mit dem Taktsignal CK und dem Horizontalsynchronisiersignal HD versehen.
- Es wird eine Situation betrachtet, bei welcher die Bilddaten des interessierenden Pixels E(0) in der Verriegelungsschaltung 20 gespeichert worden sind. Die Bilddaten Data des interessierenden Pixels E(0) werden auf den einen Eingang A einer Komparatorschaltung gegeben. Den Schwellenwert TH darstellende Daten werden auf den anderen Eingang B der Komparatorschaltung 21 gegeben. Die Komparatorschaltung 21 gibt die Binärbilddaten 1 aus, wenn die Eingangsbilddaten Data den Schwellenwert TH überschreiten (d.h., wenn A > B gilt), und die Binärbilddaten 0 in allen anderen Fällen. Diese Binärbilddaten werden als Ditherbilddaten ausgegeben und gehen auch in eine Multiplizierschaltung 22.
- Die Multiplizierschaltung 22 multipliziert die eingegebenen Binärdaten mit 255. Dementsprechend werden Acht-Bit-Daten, die 255 darstellen, durch die Multiplizierschaltung 22 ausgegeben, wenn die eingegebene Binärdaten 1 sind, und Acht-Bit- Daten, die 0 darstellen, werden ausgegeben, wenn die eingegebenen Binärdaten 0 sind. Die ausgegebenen Daten werden auf den negativen Eingang einer Subtrahierschaltung 23 gegeben.
- Die in der Verriegelungsschaltung 20 gehaltenen Bilddaten Data des interessierenden Pixels gehen in den positiven Eingang der Subtrahierschaltung 23. Dementsprechend führt die Subtrahierschaltung 23 den durch Gleichung (1) oder Gleichung (2) dargestellten Vorgang aus und berechnet den Fehler e. Die den gewonnenen Fehler e darstellenden Daten werden auf eine Dividierschaltung 24 gegeben.
- Die Dividierschaltung 24 dividiert den Fehler e durch 2, 4 und 8 zur Berechnung von e/2, e/4 und e/8. Die Resultate der Division e/2 darstellenden Daten werden auf eine Addierschaltung 25 gegeben, e/4 darstellende Daten werden auf eine Addierschaltung 30 und e/8 darstellende Daten auf Addierschaltungen 28, 32 gegeben.
- Die Bilddaten des Pixels E(1D) werden in der Verriegelungsschaltung 26 gehalten. Diese Bilddaten werden dem Addierer 25 zugeführt. Dementsprechend werden die e/2 darstellenden Daten in der Addierschaltung 25 zu den Bilddaten des Pixels E(1D) addiert.
- Die Bilddaten der Pixel E(1H - 1D), E(1H), E(1H + 1D) werden in den Verriegelungsschaltungen 29, 31 bzw. 33 zwischengespeichert. Die Bilddaten gehen in die Addierschaltung 28, 30 bzw. 32. Dementsprechend werden die e/8, e/4 und e/8 darstellenden Daten in der Addierschaltung 28, 30 bzw. 32 zu den Bilddaten der Pixel E(1H - 1D), E(1H), E(1H + 1D) addiert.
- Die verschiedenen oben beschriebenen Rechenoperationen werden während einer Periode des Taktsignals CK durchgeführt, und die Additionsergebnisse aus den Addierschaltungen 25, 28, 30, 32 werden von den nachfolgenden Schaltungen, nämlich der Verriegelungsschaltung 20, der 1H-Verzögerungsschaltung 27 und den Verriegelungsschaltungen 29 bzw. 31 zur Zeit des nächsten Taktsignals CK angenommen und zwischengespeichert. Die Bilddaten des Pixels E(1H + 2D) werden von der Verriegelungsschaltung 33 angenommen.
- Die vorstehende Operation wird in jeder Periode des Taktsignals CK durchgeführt. D.h., die Binarisierung der Bilddaten und die Verteilung des Fehlers, der im Gefolge der Binarisierung erzeugt wird, auf die benachbarten Pixel, nämlich die Dither-Verarbeitung werden Pixel für Pixel durchgeführt.
- Fig. 7 veranschaulicht den Gesamtaufbau der Bildwiederherstellungsschaltung 14, und Fig. 8 veranschaulicht ein spezielles Beispiel des Aufbaus einer in Fig. 7 gezeigten Kleinbereichswiederherstellungsschaltung 41.
- Wie oben erwähnt, wird das Fenster WN im Eingangsbild eingestellt und das Fenster WN in horizontaler und vertikaler Richtung durchgetastet. Das Fenster WN wird in die Anzahl von kleinen Bereichen SA unterteilt.
- Die Größe (n · m) eines jeden kleinen Bereichs SA wird durch die Anzahl von Flipflops 42 entschieden, die in einer Kleinbereichswiederherstellungsschaltung 41 enthalten sind. Bei dieser Ausführungsform ist die Größe eines jeden kleinen Bereichs SA 4 · 4 Pixel, wie dies in Fig. 8 gezeigt ist. Die Größe (Anzahl von Bits N) des Fenster WN in der horizontalen Richtung wird durch die Größe (Anzahl von Bits n) der Kleinbereichswiederherstellungsschaltung 41 in der horizontalen Richtung und die Anzahl von Stufen (N/n = 16 Stufen bei dieser Ausführungsform) der Kleinbereichswiederherstellungsschaltungen 41 in der horizontalen Richtung entschieden. Die Größe (Anzahl von Bits M) des Fensters WN in der vertikalen Richtung wird durch die Größe (Anzahl von Bits m) der Kleinbereichswiederherstellungsschaltung 41 in der vertikalen Richtung und die Anzahl von Stufen (M/m = 16 Stufen in dieser Ausführungsform) der Kleinbereichswiederherstellungsschaltungen 41 in der vertikalen Richtung entschieden.
- In Fig. 7 ist die Bildwiederherstellungsschaltung 14 mit (N/n) · (M/m) Kleinbereichswiederherstellungsschaltungen 41 versehen. Die in horizontaler Richtung angeordneten Kleinbereichswiederherstellungsschaltungen 41 sind in Kaskade verbunden. Ferner sind (M - 1) Ein-Bit-Linienspeicher (Ein-Bit-Schieberegister) 40 vorgesehen, und die Linienspeicher 40 sind ebenfalls in Kaskade verbunden. Ferner geht die Ausgabe eines jeden Linienspeichers 40 in die erste Spalte von in der Vertikalrichtung angeordneten entsprechenden Kleinbereichswiederherstellungsschaltungen. D.h., die Ausgangsditherbilddaten der Binärbilderzeugungsschaltung 13 und die Ausgangsdaten der Linienspeicher 40 der ersten bis dritten Stufe werden auf die Kleinbereichswiederherstellungsschaltung 41 in der ersten Spalte und ersten Zeile gegeben. Ähnlich werden die Ausgangsdaten von vier Linienspeichern 40 gleichzeitig auf diejenigen Kleinbereichswiederherstellungsschaltungen der ersten Spalte, die diesen entsprechen, gegeben.
- Unter Bezug auf Fig. 8 enthält jede Kleinbereichswiederherstellungsschaltung 41 n · m Flipflops 42, die in m Reihen und n Spalten angeordnet sind. Die Flipflops 42 der gleichen Reihe (aufgereiht in der horizontalen Richtung) sind in Kaskade verbunden. Eingegeben in den Flipflop 42 einer jeden Reihe der Anfangsspalte werden die Ausgangsdaten eines Linienspeichers 40 (die Ausgangsdaten der Binärbilderzeugungsschaltung 13 werden auf den Flipflop 42 der ersten Reihe und ersten Spalte der Kleinbereichswiederherstellungsschaltung 41 der ersten Reihe und ersten Spalte gegeben) oder die Ausgangsdaten der Kleinbereichswiederherstellungsschaltung 41 der unmittelbar vorhergehenden Stufe. Die Ausgangsdaten des Flipflop 42 in jeder der Reihen der letzten Spalte wird auf einen Flipflop 42 in der Anfangsspalte der nachfolgenden Kleinbereichswiederherstellungsschaltung 41 gegeben (dies in unnötig, wenn keine mit der nachfolgenden Stufe verbundene Kleinbereichswiederherstellungsschaltung vorhanden ist).
- Die Ausgangsdaten (Ein-Bitdaten) eines jeden Flipflop 42 werden auf die Weißpixelzählschaltung 43 gegeben. Letztere zählt die Anzahl von Pixeln, die den Weißwert (Binärdaten 1) besitzen und im kleinen Bereich SA enthalten sind. Da sich der kleine Bereich SA aus 4 · 4 Pixeln in dieser Ausführungsform zusammensetzt, ist der Maximalwert der Zählung 16, und die Ausgangsdaten der Zählschaltung 43 lassen sich durch ein Minimum von fünf Bits ausdrücken (ein Ausdrücken durch acht Bits ist natürlich zulässig). Ausgangsdaten Ii der Zählschaltung 43 werden zu den Ausgangsdaten der Kleinbereichswiederherstellungsschaltung 41.
- Die Ausgangsdaten Ii der Kleinbereichswiederherstellungsschaltung sind das Ergebnis des Ausdrückens der Helligkeit des kleinen Bereiches SA in Form von 16 Werten. Dies sind wiederhergestellte Grauwertbilddaten. Wenn der kleine Bereich SA als ein Bildelement betrachtet wird, kann man sagen, daß diese wiederhergestellten Grauwertbilddaten die Helligkeit dieses Elements ausdrücken.
- Wenn die Größe eines jeden kleinen Bereichs SA vergrößert wird, nimmt die Auflösung (Anzahl von Werten) der Helligkeit zu, die räumliche (zweidimensionale) Auflösung des Objekts aber ab. Dementsprechend sollte die Größe eines jeden kleinen Bereichs SA unter Berücksichtigung der Helligkeitsauflösung und der räumlichen Auflösung, die erforderlich sind, entschieden werden.
- Im Gegensatz dazu würde das Fenster WN in Übereinstimmung mit der Größe des Objekts, das der Bildverarbeitung unterworfen werden soll, eingestellt werden. Wenn beispielsweise der Zweck der Verarbeitung die Erkennung der Lage eines Kreises ist, den das Objekt enthält, wird das Fenster WN auf eine Größe eingestellt, die die Gesamtheit des Kreises (oder einen Teil desselben, abhängig vom Fall) enthält.
- Das Taktsignal CK wird auf die Linienspeicher 40 und die Flipflops 42 der Kleinbereichswiederherstellungsschaltung 41 der oben beschriebenen Bildwiederherstellungsschaltung 14 gegeben. Die Daten, die sich in diesen angesammelt haben, werden sequentiell mit jeder Periode des Taktsignals CK verschoben. Dadurch wird das Fenster WN in der horizontalen und vertikalen Richtung durchgetastet. An jeder Position des Fenster WN werden die wiederhergestellten Grauwertbilddaten in Bezug auf alle kleinen Bereiche SA, die im Fester WN enthalten sind, gewonnen.
- Fig. 9 veranschaulicht ein spezielles Beispiel des Aufbaus der Differenzberechnungsschaltung 15. Die Differenzberechnungsschaltung 15 enthält Kleinbereichsdifferenzschaltungen 50, deren Anzahl die gleiche wie diejenige der Kleinbereichswiederherstellungsschaltungen 41 ist. Jede Kleinbereichsdifferenzschaltung 50 ist aus einer Subtrahierschaltung 52, einer Absolutwertschaltung 53 und einem Textregister 54 aufgebaut. Die Ausgangsbilddaten Ii [i = 1 ~ (N/n) · (M/m)] einer jeden Kleinbereichswiederherstellungsschaltung 41 werden auf den positiven Eingang der Subtrahierschaltung 52 der entsprechenden Kleinbereichsdifferenzschaltung 50 gegeben.
- Wie oben ausgeführt werden Textdaten Ii indessen, die den vorgenannten wiederhergestellten Grauwertbilddaten Ii entsprechen und die vorab in Bezug auf das spezielle Teilbild des Standardbilds erzeugt werden, im Textregister 54 der Kleinbereichsdifferenzschaltung 50 mit Bereitstellung durch die CPU 17 gespeichert. Textdaten Mi eines jeden Textregisters werden auf den negativen Eingang der Subtrahierschaltung 52 gegeben.
- Die Textdaten Mi sind Grauwertbilddaten eines kleinen Bereichs, die durch Durchführung einer Verarbeitung in Übereinstimmung mit einer Technik gewonnen sind, die exakt die gleiche wie diejenige ist, die für die Bilddaten Ii in Bezug auf das spezielle Teilbild des Standardbilds verwendet wird. Bei dem dargestellten Beispiel werden die Bilddaten Mi von der CPU 17 seriell auf die einzelnen Textregister 54 gegeben. Es ist jedoch natürlich zulässig, diese Daten als parallele Daten über einen Datenbus aufzugeben.
- In der Subtrahierschaltung 52 werden die Textdaten Mi von den wiederhergestellten Grauwertbilddaten Ii subtrahiert, und der Absolutwert der sich ergebenden Differenz wird in der Absolutwertschaltung 53 gewonnen. Die den Absolutwert der Differenz darstellenden Daten gehen in die Addierschaltung 51.
- Die Addierschaltung 51 summiert die von allen Kleinbereichsdifferenzschaltungen 50 ausgegebenen Absolutwertdaten. Der Wert der Summe wird auf die Spitzenwerthalteschaltung 16, die die nächste Stufe ist, gegeben. Der Wert der von der Addierschaltung 51 ausgegebenen Summe stellt den Grad der Ähnlichkeit zwischen dem Teilbild innerhalb des Fensters und dem speziellen Teilbild im Standardbild dar. Je kleiner der Wert der Summe, desto größer ist die Ähnlichkeit zwischen den beiden Teilbildern.
- Fig. 10 veranschaulicht eine spezielles Beispiel des Aufbaus der Spitzenwerthalteschaltung 16. Die Spitzenwerthalteschaltung 16 stellt den Minimalwert der Summe (den minimalen Differenzwert) fest, der von der Differenzberechnungsschaltung 15 geliefert wird, und stellt die Koordinaten fest, die die Lage des Fensters WN, in welchem der minimale Differenzwert erzeugt wird, darstellen.
- Der in jeder Periode des Taktsignals CK eingegebene Minimalwert der Summe wird durch die Verriegelungsschaltungen 61, 62 und eine Komparatorschaltung 60 festgestellt. Der mögliche Maximalwert wird (beispielsweise alle 1s) in der Verriegelungsschaltung 62 zu der Zeit, zu der das Vertikalsynchronisationssignal VD am Anfang der Spitzenwerthalteverarbeitung aufgegeben wird, voreingestellt. Die von der Differenzberechnungsschaltung 15 gelieferte Summe wird in der Verriegelungsschaltung 61 bei jedem Taktsignal CK zwischengespeichert. Die Komparatorschaltung 60 vergleicht den Wert der in der Verriegelungsschaltung 61 gehaltenen Summe mit dem in der Verriegelungsschaltung 62 gehaltenen Summe (anfangs der Maximalwert, wie oben erwähnt; von dem ersten Vergleichsvorgang an ist der Wert der Minimalwert der Summe, der bis zu der aktuellen Zeit vorliegt). Wenn der Wert der Summe, die gerade in der Verriegelungsschaltung 61 gehalten wird, kleiner ist, erzeugt die Komparatorschaltung 60 ein Ausgangssignal. Das Ausgangssignal des Komparators wird auf die Verriegelungsschaltung 62 als ein Verriegelungszeitsignal gegeben, und der Wert der Summe, der zu dieser Zeit gerade in der Verriegelungsschaltung 61 gehalten wird, wird in der Verriegelungsschaltung 62 als der Minimalwert bis zu der aktuellen Zeit verriegelt. Von den eingegebenen Summenwerten wird also der minimale Summenwert bis zu der aktuellen Zeit in der Verriegelungsschaltung 62 gehalten.
- Indessen wird ein X-Zähler 63 durch das Horizontalsynchronisiersignal HD leer gemacht und zählt dann das auf ihn gegebene Taktsignal CK von diesem Zeitpunkt an. Dementsprechend stellt der Zählwert im X-Zähler 63 die X-Koordinate des Fensters WN dar. Ein Y-Zähler 64 wird durch das Vertikalsynchronisiersignal VD gelöscht und zählt dann das auf ihn von diesem Zeitpunkt an gegebene Horizontalsynchronisiersignal HD. Dementsprechend stellt die Zählung im Y-Zähler 64 die Y-Koordinate des Fenster WN dar. Das Ausgangssignal des Komparators 60 wird auf Verriegelungsschaltungen 65, 66 als Verriegelungszeitsignal gegeben. Die Verriegelungsschaltungen 65, 66 verriegeln daher die Zählungen der betreffenden Zähler 63, 64, die zu dieser Zeit vorliegen. Die X-, Y-Koordinaten des Fensters WN, in welchem der Wert der Summe als der Minimalwert zu diesem Zeitpunkt beurteilt wird, werden in den Verriegelungsschaltungen 65, 66 gehalten.
- Wenn das nächste Vertikalsynchronisiersignal VD eintritt, wird der Maximalwert erneut in der Verriegelungsschaltung 62 voreingestellt, und die Verriegelungsschaltungen 67, 68, 69 verriegeln den Minimalwert der Differenz aus der Verriegelungsschaltung 62, die X-Koordinate der Verriegelungsschaltung 65 und die Y-Koordinate der Verriegelungsschaltung 66. Da das Abtasten eines Bildes mit dem Fenster WN zu diesem Zeitpunkt abgeschlossen ist, werden der minimale Differenzwert in einem Bild und die X-, Y-Koordinaten des Fenster WN, in welchem der minimale Differenzwert erzeugt wird, in den Verriegelungsschaltungen 67, 68, 69 gehalten und auf die CPU 17 gegeben.
- Die Textdaten können direkt anhand der Standardbilddaten ohne den Zwischenschritt einer Binärbilderzeugungsverarbeitung und Grauwertbildwiederherstellungsverarbeitung erzeugt werden. Im Einzelnen wird das spezielle Teilbild aus den Standardbilddaten (ausgedrückt durch acht Bit pro Pixel) ausgeschnitten. Der Bereich der Teilbilddaten wird in eine Anzahl von kleinen Bereichen unterteilt. Die Bilddaten werden für jeden kleinen Bereich aufsummiert, und das Ergebnis des Summiervorgangs wird durch 256 geteilt, womit die Textdaten gewonnen werden. Der Grund für die Teilung durch 256 ist der, daß die Bilddaten durch acht Bits dargestellt werden.
- Bei der oben beschriebenen ersten Ausführungsform werden die Binärbilddaten durch Binarisierung der Eingangsbilddaten gewonnen. Gemäß der zweiten Ausführungsform werden Pseudograuwertbilddaten (mehrwertige Dither-Bilddaten) gewonnen, indem die Eingangsbilddaten einer mehrwertigen Umwandlung (Quantisierung auf Multiwerte von mehr als drei Werten) unterworfen werden. Ferner wird eine Verbesserung der Wiederherstellbarkeit durch Durchführung einer Glättungsverarbeitung, wenn die Pseudograuwertbilddaten wiederhergestellt werden, angestrebt.
- Fig. 11 veranschaulicht den Gesamtaufbau eines Bildprozessors gemäß einer zweiten Ausführungsform. Dieser Prozessor unterscheidet sich von demjenigen der in Fig. 1 gezeigten ersten Ausführungsform dadurch, daß die Binärbilderzeugungsschaltung 13, Bildwiederherstellungsschaltung 14 und Differenzberechnungsschaltung 15 durch eine Pseudograuwertbilddatenerzeugungsschaltung 13A, eine Bildwiederherstellungsschaltung 14A und eine Differenzberechnungsschaltung 15A ersetzt sind. Diese Punkte, welche diese Ausführungsform von der ersten Ausführungsform unterscheiden, wird nun beschrieben.
- Fig. 12 zeigt ein spezielles Beispiels des Aufbaus der Pseudograuwertbilderzeugungsschaltung 13A. Fig. 13 und 14 veranschaulichen die Prinzipien der Quantisierung und Fehlerverteilung. Die Eingangssbilddaten werden hier auf vier Werte quantisiert.
- Wie oben erwähnt, werden durch acht Bits dargestellte Eingangsbilddaten von 256 Niveaus in durch zwei Bits dargestellte Pseudograuwertbilddaten von vier Niveaus umgewandelt. Hierzu werden, wie in Fig. 14 gezeigt, Werte 0 (Schwarzwert), 85, 170 und 255 (Weißwert) der 256 Niveaus, die den Werten 0, 1, 2 und 3 der vier Niveaus entsprechen, vorab bestimmt. Schwellenwerte TH1, TH2 und TH3 werden auf halben Weg zwischen den oben genannten Niveaus gesetzt.
- Die Eingangsbildaten Data werden mit den Schwellenwerten TH1, TH2 und TH3 verglichen, und Data werden zu Pseudograuwertbilddaten 00 (= 0), wenn Data kleiner als der Schwellenwert TH1 ist, zu 01 (= 1), wenn Data größer als der Schwellenwert TH1 und kleiner als der Schwellenwert TH2 ist, zu 10 (= 2), wenn Data größer als der Schwellenwert TH2 und kleiner als der Schwellenwert TH3 ist, und zu 11 (= 3), wenn Data größer als TH 3 ist, quantisiert. Der bei dieser Quantisierung erzeugte Fehler e wird durch die folgende Gleichung dargestellt:
- e = Data - (0, 85, 170 oder 255) Gl. (3)
- Bei dieser Ausführungsform pflanzt sich der Quantisierungsfehler e des interessierenden Pixels E(0), wie er ist, allein auf das nachfolgende Pixel E(D1) fort, wie dies in Fig. 13 veranschaulicht ist.
- In Fig. 12 ist angenommen, daß die Bilddaten (acht Bit) des interessierenden Pixels E(0) in der Verriegelungsschaltung 70 zwischengespeichert worden sind. Die Bilddaten Data werden auf den Eingang A einer jeden Komparatorschaltung 71, 72 und 73 gegeben. Daten, die die Schwellenwerte TH1, TH2, TH3 darstellen, werden auf den Eingang B einer jeden Komparatorschaltung 71, 72 und 73 gegeben. Die Komparatorschaltungen 71, 72 und 73 erzeugen eine 1 darstellende Ausgabe, wenn die Eingangsbilddaten Data des Eingangs A größer als die Schwellenwertdaten des Eingangs B (A > B) sind, und erzeugen eine 0 darstellende Ausgabe in allen anderen Fällen. Die Komparatorausgaben werden auf eine Addierschaltung 74 gegeben.
- Die Addierschaltung 74 summiert die auf sie gegebenen Komparatorausgaben. Das Additionsergebnis ist 3, wenn alle Komparatorschaltungen 71, 72, 73 die Ausgabe 1 erzeugen; 2, wenn die beiden Komparatorschaltungen 71, 72 die Ausgabe 1 erzeugen; 1, wenn nur die Komparatorschaltung 71 die Ausgabe 1 erzeugt; und 0, wenn alle Komparatorschaltungen 71, 72, 73 die Ausgabe 0 erzeugen. Die Additionsergebnisse aus der Addierschaltung 74 werden als Pseudograuwertbilddaten von zwei Bits ausgegeben.
- Die von der Addierschaltung 74 ausgegebenen Additionsergebnisse werden zur Multiplikation mit 85 auf eine Multiplizierschaltung 75 gegeben. Die Ausgabe der Multiplizierschaltung 75 nimmt einen Wert an, der einer der oben erwähnten vier Niveaus 0, 85, 170, 255 der 256 Niveaus ist.
- Die Bilddaten Data des interessierenden Pixels E(0), die in der Verriegelungsschaltung 70 verriegelt worden sind, gehen in den positiven Eingang einer Subtrahierschaltung 76, und die Ausgabe der Multiplizierschaltung 75 geht in den negativen Eingang der Subtrahierschaltung 76. Die Subtrahierschaltung 76 führt den durch Gleichung (3) gegebenen Subtrahiervorgang durch und gibt den Fehler e darstellende Daten aus.
- Die den Fehler e darstellenden Daten werden auf eine Addierschaltung 77 gegeben, wo diese Daten zu den Bilddaten des nächsten Pixels E(D1) addiert werden. Das Ergebnis der durch die Addierschaltung 77 durchgeführten Addition wird in der Verriegelungsschaltung 70 zu der Zeit des nächsten Taktsignals CK verriegelt.
- Da die oben beschriebene Operation mit der Periode des Taktsignals CK wiederholt wird, gibt die Pseudograuwertbilderzeugungsschaltung 13A Pseudograuwertbilddaten von zwei Bits an der Periode des Taktsignals CK aus.
- Fig. 15 veranschaulicht den Gesamtaufbau der Bildwiederherstellungsschaltung 14A. Beim Vergleich mit der in Fig. 7 gezeigten Bildwiederherstellungsschaltung 40 sieht man, daß sich diese Schaltung darin unterschiedlich ist, daß die Ein- Bit-Linienspeicher 40 durch Zwei-Bit-Linienspeicher 40A ersetzt sind. Ferner unterscheidet sich auch, wie in Fig. 16 gezeigt, der Aufbau einer Kleinbereichswiederherstellungsschaltung 41A von demjenigen der weiter oben veranschaulichten Kleinbereichswiederherstellungsschaltung 41.
- Ein spezielles Beispiel für den Aufbau der Kleinbereichswiederherstellungsschaltung 41A ist in Fig. 16 veranschaulicht. Ein Vergleich mit der in Fig. 8 gezeigten Kleinbereichswiederherstellungsschaltung 41 zeigt, daß sich die Kleinbereichswiederherstellungsschaltung 41A dadurch unterscheidet, daß die Flipflops 42 durch Zwei-Bit-Verriegelungsschaltungen 42A ersetzt sind. Die Weißpixelzählschaltung 43 ist durch eine Helligkeitszählschaltung 43A ersetzt. Die Schaltung 43A dient der Addition von Zwei-Bit-Signalen aus den 16 Verriegelungsschaltungen 42A. Die Kleinbereichswiederherstellungsschaltung 41A ist also in der Lage, Pseudograuwertbilddaten von vier Niveaus zu Bildda4en von 48 Niveaus wiederherzustellen, wobei der kleine Bereich SA als ein Bildelement dient.
- Im Vergleich mit der Bildwiederherstellungsverarbeitung gemäß der ersten Ausführungsform ist die räumliche Auflösung die gleiche, wenn die Größe des kleinen Bereichs SA die gleiche ist. Bei der zweiten Ausführungsform werden jedoch die Eingangsbilddaten in Zwei-Bit-Pseudograuwertbilddaten von vier Niveaus umgewandelt, und die Bildwiederherstellungsverarbeitung wird unter Verwendung dieser Pseudograuwertbilddaten ausgeführt. Dies ist insofern vorteilhaft, als die Auflösung der Helligkeit (Dichte) verbessert ist.
- Die Kleinbereichswiederherstellungsschaltung 41A enthält ferner eine Glättungsschaltung 44. Die Glättungsschaltung 44 summiert die wiederhergestellten Bilddaten, die nacheinander durch die Helligkeitszählschaltung 42A ausgegeben werden, über drei Perioden des Taktsignals CK.
- Ein Beispiel der Glättungsschaltung 44 ist in Fig. 17 dargestellt. Die von der Helligkeitszählschaltung 43A ausgegebenen wiederhergestellten Bilddaten werden nacheinander in Verriegelungsschaltungen 81, 82 mit der Zeit des Taktsignals CK verriegelt. Die wiederhergestellten Bilddaten an einem bestimmten Zeitpunkt, ausgegeben von der Helligkeitszählschaltung 43A, und wiederhergestellte Bilddaten, ausgegeben von den Verriegelungsschaltungen 81, 82 ein und zwei Taktperioden früher als dieser Zeitpunkt, werden in einer Addierschaltung 83 addiert, und die Summe wird als geglättete Bilddaten Ii (der Einfachheit halber werden die geglätteten Bilddaten durch das Zeichen Ii dargestellt, welches das gleiche wie dasjenige der wiederhergestellten Bilddaten der ersten Ausführungsform ist) ausgegeben.
- Fig. 18 veranschaulicht ein weiteres Beispiel der Glättungsschaltung 44.
- Es soll f(t) für die wiederhergestellten Bilddaten zu einer bestimmten Zeit t stehen, und es soll f(t - 1), f(t - 2) und f(t - 3) für die wiederhergestellten Bilddaten eine, zwei bzw. drei Taktperioden früher stehen. Es soll g(t) die geglätteten Bilddaten darstellen.
- Da die Glättungsschaltung 44 die wiederhergestellten Bilddaten f(t), f(t - 1) und f(t - 2) addiert, lassen sich die geglätteten Bilddaten g(t) folgendermaßen schreiben:
- g(t) = f(t) + f(t - 1) + f(t - 2) Gl. (4)
- Schreibt man (t - 1) für t in Gleichung (4), so haben wir
- g(t - 1) = f(t - 1) + f(t - 2) + f(t - 3) Gl. (5)
- Die folgende Gleichung leitet sich aus den Gleichungen (4) und (5) her:
- g(t) = g(t - 1) + f(t) - f(t - 3) Gl. (6)
- Die Schaltung der Fig. 18 führt die Rechenoperation der Gleichung (6) aus. Verriegelungsschaltungen 84, 85, 86 verriegeln die Elemente wiederhergestellter Bilddaten f(t - 1), f(t - 2) bzw. f(t - 3). Die Rechenoperation f(t) - f(t - 3) vom zweiten Term an auf der rechten Seite von Gleichung (6) wird durch eine Subtrahierschaltung 87 ausgeführt. Eine Verriegelungsschaltung 89 verriegelt die geglätteten Bilddaten g(t - 1), die ein Taktperiode vorher vorliegen. Dementsprechend wird die Rechenoperation auf der rechten Seite von Gleichung (6) durch eine Addierschaltung 88 durchgeführt, und man erhält die geglätteten Bilddaten g(t). Die Schaltung der Fig. 18 ist vorteilhaft insofern, als die Größenordnung der Schaltung in Wirklichkeit im Vergleich zur Schaltung der Fig. 17 vereinfacht ist.
- Wie in Verbindung mit Fig. 13 beschrieben, wird der Fehler e des interessierenden Pixels E(0) allein auf ein nachfolgendes Pixel E(D1) fortgepflanzt. Da jedoch der Fehler im Pixel E(D1) weiter auf das folgende Pixel E(D2) fortgepflanzt wird, hat in Wirklichkeit der Fehler des interessierenden Pixels E(0) einen Einfluß auf Bilddaten selbst bei ziemlich entfernten Pixeln. Je größer der Abstand vom interessierenden Pixel, desto kleiner ist der Grad dieses Einflusses. Gemäß der oben beschriebenen Glättungsverarbeitung wird eine Bildwiederherstellung durchgeführt, die den Einfluß des Fehlers am interessierenden Pixel berücksichtigt. Die Wiederherstellbarkeit wird dadurch verbessert. Genauer wird, da die wiederhergestellten Bilddaten eines kleinen Bereichs räumlich geglättet werden, wird die Auflösung hinsichtlich Helligkeit angehoben, ohne daß ein Abfall der räumlichen Auflösung bewirkt wirkt. Die Exaktheit der Abgleichverarbeitung in der Differenzberechnungsschaltung 15A ist verbessert. Dies ist vorteilhaft in einem Fall, wo es erforderlich ist, wie in einem Bild mit niedrigem Kontrast, feine Helligkeitsdifferenzen auszudrücken.
- Die Differenzberechnungsschaltung 15A ist im Grundsatz die gleiche wie die in Fig. 9 gezeigte Differenzberechnungsschaltung 15. Während jedoch in der Differenzberechnungsschaltung 15 wiederhergestellte 16-Niveau-Bilddaten behandelt werden, werden in der Differenzberechnungsschaltung 15A wiederhergestellte und geglättete 48-Niveau-Bilddaten behandelt. Dies ist der einzige Unterschied.
- Bei der ersten und zweiten Ausführungsform beinhaltet die als Musterabgleichtechnik verwendete Differenzmethode das Berechnen der Helligkeitsdifferenz zwischen den wiederhergestellten Bilddaten im Fenster WN und dem Standardbild mittels der Differenzberechnungsschaltung 15 oder 15A für jeden kleinen Bereich SA.
- Bei der dritten Ausführungsform beinhaltet die Musterabgleichtechnik das Berechnen eines normierten Kreuzkorrelationswerts zwischen den wiederhergestellten Bilddaten im Fenster WN und dem Standardbild.
- Fig. 19 veranschaulicht ein Beispiel des Gesamtaufbaus eines Bildprozessors gemäß der dritten Ausführungsform. Komponenten, die mit denjenigen der in Fig. 11 gezeigten zweiten Ausführungsform identisch sind, sind mit den gleichen Bezugszeichen bezeichnet. Die vorliegende Ausführungsform unterscheidet sich dadurch, daß die Differenzberechnungsschaltung 15A und die Spitzenwerthalteschaltung 16 zur Feststellung eines Minimalwerts durch eine Korrelationswertberechnungsschaltung 15B und eine Spitzenwerthalteschaltung 16A zur Feststellung eines Maximalwerts ersetzt sind. Die Binärbilderzeugungsschaltung 13 und die Bildwiederherstellungsschaltung 14 gemäß der in Fig. 1 gezeigten ersten Ausführungsform können anstelle der Pseudograuwertbilderzeugungsschaltung 13A und Bildwiederherstellungsschaltung 14A verwendet werden.
- Wie bei der ersten oder zweiten Ausführungsform beschrieben, gibt die Bildwiederherstellungsschaltung 14 oder 14A die wiederhergestellten Bilddaten II [i = 1 ~ r; r = (N/n) · (M/m)] innerhalb des Fenster WN aus, und diese Bilddaten werden auf die Korrelationswertberechnungsschaltung 15B gegeben. Die wiederhergestellten Bilddaten Ii werden mit dem kleinen Bereich SA, der als Bildelement dient, dargestellt. Die Anzahl von kleinen Bereichen SA ist hinsichtlich des oben beschriebenen Beispiels 256. Das heißt, r = 256. Die CPU 17 gibt dabei die entsprechenden Bilddaten (Textdaten) Mi (i = 1 ~ r) betreffend das Standardbild aus, welches das Übereinstimmungskriterium ist. Diese Bilddaten werden auf die Korrelationswertberechnungsschaltung 15B gegeben. Diese Bilddatenelemente Mi werden in einer Zwischenspeicherschaltung, wie einem Textregister, der Korrelationswertberechnungsschaltung 15B gehalten. Ein normierter Kreuzkorrelationswert R wird in der Korrelationswertberechnungsschaltung 15B gemäß folgender Gleichung berechnet:
- R² = [r(ΣIM) - (ΣI)(ΣM)]²/[r(ΣI²) - (ΣI)²]·[r(ΣM²) - (ΣM)²] Gl. (7)
- wobei Σ Addition in Bezug auf i = 1 ~ r darstellt.
- Der Korrelationswert R wird für das Fenster WN an jeder abgetasteten Position berechnet und der berechnete Korrelationswert R auf die Spitzenwerthalteschaltung 16A gegeben. Die Spitzenwerthalteschaltung 16A stellt den Maximalwert des aufgegebenen Korrelationswerts R fest und gibt, wenn das Abtasten des Fensters betreffend ein Bild endet, diesen Maximalwert sowie die Koordinaten der Position des Fensters WN, in welchem der Maximalwert erzeugt worden ist, aus. Der Maximalwert und die Koordinaten werden auf die CPU 17 gegeben.
- In einer zu der der ersten und zweiten Ausführungsform identischen Weise vergleicht die CPU 17 den aufgegebenen maximalen Korrelationswert mit dem bestimmten Schwellenwert und konstruiert, daß das gesuchte Teilbild gefunden worden ist, wenn der Maximalwert den Schwellenwert überschreitet. Das gefundene Teilbild (das Bild innerhalb des Fensters, welches den maximalen Korrelationswert liefert) wird auf einer Anzeigeeinheit angezeigt oder verschiedenen Arten einer Meßverarbeitung unterworfen.
- Fig. 20 veranschaulicht ein Beispiel des Aufbaus der Korrelationswertberechnungsschaltung 15B.
- Diese Summe ΣI der wiederhergestellten Bilddaten Ii wird von einer Addierschaltung 91 berechnet und das Quadrat der Summe (ΣI)² in einer Quadrierschaltung 99 berechnet. Das Quadrat Ii² eines jeden Postens wiederhergestellter Bilddaten Ii wird durch r Quadrierschaltungen 92 berechnet, und die Summe ΣI² der Quadrate wird in einer Addierschaltung 93 berechnet.
- Das Produkt IiMi der wiederhergestellten Bilddaten Ii und der dazu entsprechenden Textdaten Mi wird in betreffenden von r Multiplizierschaltungen 94 berechnet und die Summe ΣIM dieser Produkte wird in einer Addierschaltung 95 berechnet.
- In Bezug auch auf die Textdaten Mi wird die Summe ΣM der Textdaten Mi in einer Addierschaltung 96 berechnet, und das Quadrat (ΣM)² dieser Summe wird durch eine Quadrierschaltung 103 in der gleichen Weise wie die wiederhergestellten Bilddaten Ii berechnet. Die Quadrate Mi² dieser Textdatenelemente Mi werden in betreffenden von r Quadrierschaltungen 97 berechnet, und die Summe ΣM² dieser Quadrate Mi² wird in einer Addierschaltung 98 berechnet.
- Das Produkt (ΣI)(ΣM) aus der Summe ΣI der an der Addierschaltung 91 gewonnenen wiederhergestellten Bilddaten und der Summe ΣM der an der Addierschaltung 96 gewonnenen Textdaten wird durch eine Multiplizierschaltung 101 berechnet. Daten, die die Anzahl r von kleinen Bereichen darstellen, werden dabei von der CPU 17 geliefert, und das Produkt r(ΣIM) aus der Zahl rund dem an der Addierschaltung 95 gewonnenen Wert ΣIM wird durch eine Multiplizierschaltung 102 berechnet. Die Differenz zwischen der Ausgabe der Multiplizierschaltung 102 und der Ausgabe der Multiplizierschaltung 101 wird durch eine Subtrahierschaltung 106 berechnet, und das Quadrat des Ergebnisses der Subtrahieroperation wird durch eine Quadrierschaltung 109 berechnet, womit der Zähler der Gleichung (7) gewonnen ist.
- Das Produkt r(ΣI²) aus der Ausgabe ΣI² der Addierschaltung 93 und der Zahl r von kleinen Bereichen wird durch eine Multiplizierschaltung 100 berechnet, und die Ausgabe (ΣI)² der Quadrierschaltung 99 wird von diesem Produkt durch eine Subtrahierschaltung 105 abgezogen. Ähnlich wird das Produkt r(ΣM)² aus der Ausgabe ΣM² der Addierschaltung 98 und der Zahl r von kleinen Bereichen durch eine Multiplizierschaltung 104 berechnet, und die Ausgabe (ΣM)² der Quadrierschaltung 103 wird von diesem Produkt durch eine Subtrahierschaltung 107 abgezogen. Die Ergebnisse der mit diesen Subtrahierschaltungen 105, 107 durchgeführten Subtraktionen werden miteinander durch eine Multiplizierschaltung 108 multipliziert, womit der Nenner der Gleichung (7) gewonnen ist.
- Die Ausgabe der Quadrierschaltung 109 wird durch die Ausgabe der Multiplizierschaltung 108 in einer Dividierschaltung 110 dividiert, womit der Wert R² auf der linken Seite der Gleichung (7) gewonnen wird.
- Ein Multiplexer 111 und ein Auswahlsignal S werden nun im Einzelnen in einem Beispiel einer ersten Anwendung, die später diskutiert wird, beschrieben. Jedenfalls wird das Quadrat R² des mit der Dividierschaltung 110 gewonnen Korrelationswerts über den Multiplexer 111 auf die Spitzenwerthalteschaltung 16A gegeben.
- Die Verarbeitung für die Berechnung des Korrelationswerts wird während einer Periode des Takts durchgeführt, und der Korrelationswert R wird für das Fenster WN an jeder Position gewonnen.
- Es versteht sich, daß eine Verarbeitung äquivalent zu der in Fig. 20 gezeigten Rechenschaltung (Hardware-Schaltung) durch einen Rechner ausgeführt werden kann, der so programmiert ist, daß er diese Verarbeitung durchführt. Dies gilt auch für die Verarbeitung in anderen Schaltungsblöcken, die in Fig. 1, Fig. 11 oder Fig. 19 gezeigt sind.
- Das erste Anwendungsbeispiel ist eines, bei welchem der Bildprozessor gemäß der in den Fig. 19 und 20 dargestellten dritten Ausführungsform zum Abfühlen eines Kratzers oder Flecks auf der Oberfläche eines Objekts verwendet wird.
- Im Falle von Abschattung oder einer Beleuchtungsunregelmäßigkeit oder in einem Fall, wo die Oberfläche eines Objekts mit einem gleichförmigen Muster beschrieben ist, ist das Herausziehen eines auf der Oberfläche des Objekts befindlichen Kratzers oder Flecks schwierig, was die Bildverarbeitungstechnologie anbelangt.
- Fig. 21a veranschaulicht eine Helligkeitsänderung von Bilddaten längs einer horizontalen Abtastlinie, die einen Kratzer oder Fleck überquert, in einem Fall, wo der Kratzer oder Fleck auf der Oberfläche eines Objekts mit gleichförmiger Helligkeit vorhanden ist. Da die Helligkeit in dem Abschnitt des Kratzers oder Flecks abnimmt, ist es im Prinzip möglich, den Kratzer oder Fleck herauszuziehen, wenn die Helligkeit der Bilddaten einer Niveaudiskriminierung unter Verwendung eines geeigneten Schwellenwerts th unterworfen wird.
- Wenn jedoch eine Abschattung oder Irregularität der Beleuchtung vorliegt, ist die Helligkeit des Hintergrunds abhängig vom Ort unterschiedlich, wie dies in Fig. 21b dargestellt ist. Selbst wenn die von den Bilddaten dargestellte Helligkeit unter Verwendung des festen Schwellenwerts th binarisiert wird, wird daher ein unzerkratzter oder fleckenfreier Abschnitt als Kratzer oder Fleck herausgezogen.
- Es sei nun ein Fall betrachtet, bei welchem ein gleichförmiges Muster, das sich aus feinen und regelmäßig in vertikaler und horizontaler Richtung gezogenen geraden Linien zusammensetzt, auf der Oberfläche eines Objekts, wie in Fig. 22 gezeigt, dargestellt ist. Abtrennen allein eines Kratzers oder Flecks F vom Hintergrundmuster durch Binarisierungsverarbeitung, um auf Kratzer oder Fleck F zu inspizieren, der in diesem feinen und gleichförmigen Muster vorhanden ist, ist sehr schwierig oder nahezu unmöglich, da die Abschattung des Hintergrunds über einen weiten Bereich verteilt ist und sich in feiner Form ändert.
- Die erste Anwendung ist so eingerichtet, daß ein Kratzer oder Fleck in einem feinen, gleichförmigen Muster nachgewiesen werden kann, ohne eine Verarbeitungstechnik, nämlich eine Binarisierungsverarbeitung zu verwenden, die auf Umgebungsänderungen ohne weiteres anfällig ist, und ohne Beeinflusssung durch Abschattung oder Helligkeitsirregularitäten.
- Fig. 23a zeigt ein Helligkeitshistogramm von Bilddaten, die durch Abbilden eines gleichförmigen Musters (ein Fall, bei welchem kein Kratzer oder Fleck vorhanden ist) der in Fig. 22 gezeigten Art gewonnen ist. Wenn man annimmt, daß die Helligkeit eines gleichförmigen Muster (horizontal und vertikale gerade Linien) verhältnismäßig niedrig ist und daß die Helligkeit des Hintergrunds (ein von horizontalen und vertikalen geraden Linien freier Abschnitt) relativ hoch ist, dann wird ein großer Spitzenwert an einem Abschnitt hoher Helligkeit und ein kleiner Spitzenwert an einem Ort niedriger Helligkeit erscheinen.
- Andererseits erscheint in einem Fall, wo ein Kratzer oder Fleck in einem gleichförmigen Muster vorhanden ist, eine breite hohe Spitze im Helligkeitshistogramm an einem Ort niedriger Helligkeit, wie dies in Fig. 23b gezeigt ist.
- Aus einem Vergleich dieser Histogramme ergibt sich, daß die Varianz σ² oder Standardabweichung σ in Helligkeit, wenn der Kratzer oder Fleck F vorhanden ist, größer wird im Vergleich zu einem Fall, in welchem kein Kratzer oder Fleck vorhanden ist. Dementsprechend kann die Varianz oder Standardabweichung in Bezug auf die Helligkeit der Bilddaten eines Objekts berechnet werden und ein Kratzer oder Fleck kann diskriminiert werden, wenn der berechnete Wert größer als ein bestimmter Schwellenwert ist.
- Die Varianz oder Standardabweichung der Helligkeit kann in Bezug auf die Gesamtheit von Bilddaten berechnet werden, die durch Abbilden der Oberfläche eines Objekts gewonnen sind. Alternativ kann, wie in den oben beschriebenen Ausführungsformen, eine Anordnung getroffen werden, bei welcher ein Teilbild von Bilddaten, die durch Abbilden der Oberfläche eines Objekts gewonnen worden sind, unter Verwendung eines Fensters abgeschnitten werden, wobei die Varianz oder Standardabweichung der Helligkeit in Bezug auf die abgeschnittenen Teilbilddaten berechnet wird. In letzterem Fall wird bevorzugt, daß die Lage des abzuschneidenden Teilbilds durch Abtasten der Bilddaten mit einem Fenster bewegt wird, und daß der Maximalwert der Varianz oder Standardabweichung, der anhand des Teilbilds gewonnen ist, mit einem bestimmten Schwellenwert verglichen wird.
- Letzteres Verfahren kann ohne Schwierigkeiten in dem Bildprozessor der in Fig. 19 und 20 gezeigten dritten Ausführungsform realisiert werden.
- In Fig. 20 ist der von der Subtrahierschaltung 105 ausgegebene Wert [r(ΣI²) - (ΣI)²] gleich r²σ². Wenn der Bildprozessor zum Zwecke des Musterabgleichs verwendet wird, wählt der Multiplexer 111 die Ausgabe [R², angegeben durch Gl. (7)] der Dividierschaltung 110 aus. Wenn der Bildprozessor zur Inspektion auf Kratzer oder Flecke verwendet wird, wählt der Multiplexer 111 die Ausgabe der Subtrahierschaltung 105 aus. Die ausgewählte Ausgabe wird auf die Spitzenwerthalteschaltung 16A gegeben. Das Überwechseln des Multiplexers 111 wird durch ein von der CPU 17 ausgegebenes Steuersignal gesteuert.
- Dementsprechend wird bei der Inspektion auf Kratzer oder Flecke der von der Subtrahierschaltung 105 ausgegebene Wert r²σ² auf die Spitzenwerthalteschaltung 16A gegeben. Die Spitzenwerthalteschaltung 16A stellt den Maximalwert, in einem Vertikalabtastintervall V, unter den Werten r²σ², die mit jeder Taktperiode eingehen, fest und gibt diesen Maximalwert zusammen mit den Koordinaten des Fensters, in welchem der Maximalwert erzeugt worden ist, auf die CPU 17.
- Die CPU 17 vergleicht den von der Spitzenwerthalteschaltung 16A gelieferten Maximalwert von r²σ² mit einem bestimmten Schwellenwert oder berechnet die Varianz σ² oder Standardabweichung σ aus dem Maximalwert von r²σ² und vergleicht diesen berechneten Wert mit einem bestimmten Schwellenwert. Wenn der Schwellenwert überschritten wird, beurteilt die CPU, daß ein Kratzer oder Fleck vorhanden ist.
- Ein Vorteil dieser Anwendung besteht darin, daß eine Inspektion auf Kratzer oder Flecke schnell mit einer Videorate durchgeführt werden kann.
- Ein Beispiel einer zweiten Anwendung bezieht sich auf eine Positioniervorrichtung für zwei transparente Platten, auf welchen transparente Elektroden ausgebildet sind und zwischen welchen ein Flüssigkristall in einer Flüssigkristallvorrichtung gehalten wird, oder eine Positioniervorrichtung für ein Maske in einem Prozeß zur Herstellung von Halbleitern.
- Fig. 24 veranschaulicht den Gesamtaufbau der Positioniervorrichtung.
- Zwei Platten (Filme einschließend) 121, 122 sind hier zu positionieren. Die Platte 121 auf der Oberseite ist eine erste Schicht und eine Platte 122 auf der Unterseite einer zweiten Schicht. Die Platte 122 auf der Unterseite liegt fest. Die Platte 121 auf der Oberseite ist auf einen XY-Tisch 123 geklemmt und kann in X- und Y-Richtung bewegt werden.
- Eine kreuzförmige Positioniermarke M1 der in Fig. 25a gezeigten Art ist an einer bestimmten Stelle (z.B. einer Ecke) der Platte 121 der ersten Schicht auf der Oberseite angegeben. Eine Positioniermarke M2, welche vier rahmenartige Formen zur Umschließung der Marke M1, wie in Fig. 25b gezeigt, aufweist, ist auf der Platte 122 der zweiten Schicht auf der Unterseite an einer Stelle derselben, die der Marke M1 entspricht, angegeben.
- Die beiden Marken M1 und M2 sind so eingerichtet, daß, wenn die Platten 121 und 122 korrekt positioniert worden sind, die kreuzförmige Marke M1 exakt in den durch die rahmenartigen Formen der Marke M2 definierten Zwischenraum paßt. Wenigstens die Abschnitte der beiden Platten 121, 122, auf welchen die Marken M1, M2 angegeben sind, sind transparent, so daß es möglich ist, beide Marken M1, M2 zu sehen, wenn die beiden Platten 121, 122 übereinander gelegt werden.
- Wenn die Positionen der beiden Platten 121, 122 nicht in Übereinstimmung sind, sind die beiden Marken M1 und M2 nicht in korrekter Beziehung, wie auf der linken und rechten Seite bzw. oberen und unteren Seite der Fig. 26 veranschaulicht, weshalb das Muster, daß man sieht, gegenüber dem in der Mitte gezeigten Muster versetzt ist.
- Dementsprechend wird das durch die beiden Marken M1, M2 gebildete Muster, das in der Mitte von Fig. 26 gezeigt ist, vorab als Standardbild (Standardmuster) registriert, wird das Markenmuster, das in Übereinstimmung mit der Beziehung zwischen den Marken M1 und M2, die durch die Lagebeziehung zwischen den beiden Platten 121, 122 festgelegt ist, angegeben ist, vor der Positionierung mit der Videokamera fotografiert und ein Korrelationswert (bzw. eine Helligkeitsdifferen) zwischen dem fotografierten Bild und dem Standardbild berechnet, wodurch die Lageversetzung zwischen den beiden Platten 121 und 122 festgestellt werden kann. Durch Steuerung des XY-Tisches 123 in Abhängigkeit von den Feststellungsergebnissen kann die Platte 121 relativ zur Platte 122 in einer solchen Weise positioniert werden, daß die beiden Marken M1 und M2 das Standardmuster bilden.
- Unter Bezug erneut auf Fig. 24 wird die Videokamera 9 an einer Stelle angeordnet, an welcher sie sowohl die Marke M1 als auch die Marke M2 aufnehmen kann (an einer Stelle, an welcher wenigstens die Marke M2 der festen Platte 122 fotografiert werden kann). Das von der Kamera 9 ausgegebene Videosignal, welches das durch die Marken M1, M2 gebildete Muster darstellt, wird auf eine Korrelationswertberechnungseinheit 10C gegeben.
- Die Korrelationswertberechnungseinheit 10C ist im wesentlichen durch den Bildprozessor 10, 10A oder 10B, wie sie in Fig. 1, 11 oder 19 gezeigt sind, realisiert. Zur Erhöhung der Positioniergenauigkeit wird bevorzugt, daß die Größe des Fensters so groß wie möglich gemacht wird. Das Fenster kann eine Größe haben, die äquivalent derjenigen eines Bildschirms ist. Natürlich kann das Fenster eine Größe von der Größenordnung derjenigen haben, die in den vorstehenden Ausführungsformen beschrieben worden ist. Es kann eine Anordnung eingenommen werden, bei welcher ein Fenster mit einer solchen Größe und Position, daß die Marke M2 der festen unteren Platte 122 durch das Fenster abgedeckt wird, festliegt und nur ein Differenzwert oder Korrelationswert betreffend dieses Fenster ausgegeben wird. Das in der Mitte der Fig. 26 gezeigte Markenmuster wird als Referenzbild verwendet, und dieses Bild betreffende Textdaten werden vorab erzeugt und gespeichert.
- Es wird der Einfachheit halber angenommen, daß der in Fig. 19 gezeigte Bildprozessor 10B verwendet wird. Der Maximalwert der der CPU 17 von der Spitzenwerthalteschaltung 16A in jedem Vertikalabtastintervall V zugeführten Korrelationswerte wird von der CPU 17 über den E/A-Anschluß 18 auf eine XY-Tischsteuerung 120 gesandt.
- Auf der Basis des maximalen Korrelationswerts (nachfolgend einfach als Korrelationswert bezeichnet) steuert die XY-Tischsteuerung 120 den XY-Tisch 123 gemäß dem in Fig. 27 gezeigten Verarbeitungsvorgang, womit die Platte 121 positioniert wird.
- Es sei nun angenommen, daß die beiden Platten 121, 122 bereits grob positioniert sind. Unter Bezug nun auf Fig. 27 wird das die Marken M1 und M2 umfassende Markenmuster mit der Kamera 9 aufgenommen (Schritt 131). Der Anfangskorrelationswert S&sub0; des fotografierten Bildes in Bezug auf das Standardbild wird in der Korrelationswertberechnungseinheit 10C berechnet (Schritt 132).
- Unter der Steuerung durch die XY-Tischsteuerung 120 wird die Platte 121 auf der Oberseite um einen kleinen Abstand Δx längs der X-Achse versetzt (Schritt 133). Danach werden das Fotografieren des Markenmusters und das Berechnen eines Korrelationswerts S&sub1; erneut durchgeführt (Schritte 134, 135).
- Je größer der Korrelationswert, desto mehr ähnelt das fotografierte Bild dem Standardbild. Wenn der Korrelationswert S&sub1; größer als der Anfangskorrelationswert S&sub0; ist (Schritt 136), bedeutet dies, daß die Marke M1 mit der Versetzung Δx im Schritt 133 näher an die korrekte Position heranbewegt worden ist. Da die Marke M1 (Platte 121) weiter in die gleiche Richtung versetzt werden sollte, wird daher Δx durch eine nachfolgende Versetzungsgröße a ersetzt (Schritt 137). Wenn ein Ergebnis, das das entgegensetzte zum vorhergehenden ist, erhalten wird, bedeutet dies, daß die Versetzung Δx fehlerhaft ist, weshalb die Marke M1 in entgegengesetzter Richtung versetzt werden sollte. Dementsprechend dient -Δx als die nachfolgende Versetzungsgröße a (Schritt 138).
- Nachdem die Platte 121 erneut um die so bestimmte Versetzungsgröße a bewegt worden ist (Schritt 139), werden das Fotografieren und die Berechnung von S&sub2; durchgeführt (Schritte 140, 141).
- Der frühere Korrelationswert S&sub1; und der gegenwärtige Korrelationswert S&sub2; werden verglichen (Schritt 142). Wenn der gegenwärtige Korrelationswert S&sub2; größer ist, bedeutet dies, daß die Bewegung von Schritt 139 korrekt war. Zu einer erneuten Bewirkung einer Bewegung in die gleiche Richtung und über die gleiche Entfernung kehrt das Programm mit Ersetzung von S&sub1; durch den gegenwärtigen Korrelationswert S&sub2; zu Schritt 139 zurück (Schritt 143).
- Wenn während der Wiederholung der Verarbeitung der Schritte 139~143 der gegenwärtige Korrelationswert 2 kleiner als der unmittelbar vorhergehende Korrelationswert S&sub1; wird, bedeutet dies, daß zuviel Bewegung stattgefunden hat. Dementsprechend wird die Platte 121 um die Bewegungsgröße a in entgegengesetzter Richtung bewegt (Schritt 144) und verifiziert, daß der unmittelbar vorhergehende Korrelationswert S&sub1; größer als der bestimmte Schwellenwert ist (Schritt 145), und die Positionierung längs der X-Achse ist abgeschlossen. Wenn der Korrelationswert S&sub1; den Schwellenwert nicht erreicht hat, erfolgt erneut eine Positionierung längs der X-Achse.
- Darauf folgt ein Übergang auf die Positionierung längs der Y-Achse. Die Positionierung längs der Y-Achse ist die gleiche wie diejenige der Schritte 131~145 für die Positonierungsverarbeitung längs der X-Achse; der einzige Unterschied ist die Richtung der Achse (Schritt 146).
- In diesem Anwendungsbeispiel wird ein Korrelationswert bei einem vertikalen Abtastintervall V gewonnen. Dadurch läßt sich die Geschwindigkeit der Positionierrückwirkung erhöhen und damit die Positionierzeit verkürzen.
- Ein drittes Anwendungsbeispiel bezieht sich auf ein automatisches Verfolgungssystem für ein sich bewegendes Objekt.
- Wie in Fig. 28 gezeigt, fotografiert die Videokamera 9 ein Objekt Su und gibt ein das Objekt darstellendes Videosignal aus. Dieses Videosignal wird auf eine Korrelationswertberechnungseinheit 10C gegeben. Die Kamera 9 ist so gehaltert, daß sie frei kippen und schwenken kann. Die Kamera wird in Kipprichtung durch einen Motor 126 und in Schwenkrichtung durch einen Motor 127 angetrieben. Die Korrelationswertberechnungseinheit 10C ist die gleiche wie diejenige der in Fig. 24 gezeigten zweiten Anwendung. Ansprechend auf ein von der Korrelationswertberechnungseinheit 10C geliefertes Signal steuert eine Steuerschaltung 124 einen Folgeregelantrieb 125 für die Motoren 126, 127 in einer solchen Weise, daß sich das Objekt Su stets an einer vorgeschriebenen Stelle innerhalb des Gesichtsfelds der Kamera 9 befindet. Es wird also bewirkt, daß die Kamera 9 das Objekt Su verfolgt.
- Damit das zu verfolgende Objekt Su die vorgeschriebene Position innerhalb des Gesichtsfeld der Kamera 9 einnimmt, wird zunächst die Kamera 9 durch den Bediener positioniert. Das Objekt Su wird fotografiert und es werden Textdaten eines Standardbilds in der Korrelationswertberechnungseinheit 10C beruhend auf dem durch Fotografie gewonnenen Videosignal erzeugt. Die Lagekoordinaten (x&sub0;, y&sub0;) des Fensters, das verwendet wird, wenn diese Textdaten erzeugt werden, wird von der CPU der Einheit 10C auf die Steuerschaltung 124 gegeben (es ist erforderlich, daß das Objekt Su innerhalb des Fensters enthalten ist). Das Fenster ist in Fig. 29 mit den durchgehenden Linien zusammen mit den Koordinaten (x&sub0;, y&sub0;) des Fensters angegeben.
- Als nächstes wird das Objekt Su mit der Kamera 9 fotografiert, nachdem sie sich zu bewegen begonnen hat, und das das Objekt darstellende Videosignal wird auf die Korrelationswertberechnungseinheit 10C gegeben. Letztere berechnet den Korrelationswert zwischen den Bilddaten des an jeder Position des durchgetasteten Fensters fotografierten Objekts und den vorher gewonnenen Textdaten, und die Koordinaten (x&sub1;, y&sub1;) des Fensters, für welches der Korrelationswert am höchsten ist, werden auf die Steuerschaltung 124 gegeben. Das Fenster, welches den maximalen Korrelationswert ergibt, ist in Fig. 29 in gestrichelten Linien zusammen mit den Koordinaten (x&sub1;, y&sub1;) des Fenster beschrieben. Das Bild des Objekts Su sollte in diesem Fenster erscheinen.
- Die Steuerschaltung 124 berechnet die Größe der Bewegung des Objekts Su als Δx = x&sub1; - x&sub0; und Δy = y&sub1; - y&sub0;, und ein Befehl, der dieser Bewegungsgröße Δx, Δy entspricht, wird auf den Folgeregelantrieb 125 gegeben. Dadurch werden die Motoren 126, 127 angesteuert und die Haltung der Kamera 9 in einer solchen Weise geändert, daß das Bild des Objekts Su in das Fenster mit den Koordinaten (x&sub0;, y&sub0;) fällt.
- Da die oben beschriebene Operation für jedes vertikale Abtastintervall wiederholt wird, wird die Haltung der Kamera 9 so gesteuert, daß das Bild des Objekts Su stets in das Fenster mit den Koordinaten (x&sub0;, y&sub0;) fällt.
- Da die Rückkopplungsverarbeitung für die Verfolgung des Objekts für jedes Vertikalabtastintervall wiederholt wird, kann eine gleichmäßige Verfolgung erwartet werden.
- Abhängig vom Objekt Su gibt es Fälle, in welchen sich die Haltung des Objekts während seiner Bewegung ändert. Wenn sich die Haltung des Objekts Su ändert, ändert sich dessen fotografisches Bild ebenfalls. Dies bedeutet, daß die früher registrierten Textdaten nicht mehr korrekt das Bild des Objekts darstellen.
- Als nächstes wird ein automatisches Verfolgungssystem beschrieben, bei welchem bewirkt werden kann, daß die Kamera 9 auch dann korrekt folgt, wenn sich die Haltung des Objekts Su ändert, während sich das Objekt bewegt, und sich dadurch das Bild des Objekts ändert.
- Die in Fig. 28 gezeigte Systemkonfiguration wird so, wie sie ist, verwendet. Fig. 30 veranschaulicht den Fluß des Gesamtvorgangs des Systems.
- Das Anfangsbild des Objekts Su wird mit der Kamera 9 abgefühlt, Textdaten mit dem Bild des Objekts, die als Standardbild dienen, werden erzeugt, und die Textdaten werden in einem Speicher oder Textdatenregister der Korrelationswertberechnungseinheit 10C registriert. Ferner werden die Lagekoordinaten (x&sub0;, y&sub0;) des das Bild des Objekt enthaltenden Fenster auf die Steuerschaltung 124 gegeben (Schritt 151).
- Das Objekt Su, das begonnen hat, sich zu bewegen, wird erneut fotografiert (Schritt 152), Koordinaten (x&sub1;, y&sub1;) des den Maximalwert der Korrelationswerte ergebenden Fensters werden beruhend auf den Bilddaten aufgefunden, und diese Koordinaten werden von der Einheit 10C auf die Steuerschaltung 124 gegeben. Gleichzeitig damit werden die durch die Fotografie gewonnenen Bilddaten in dem Bildspeicher der Einheit 10C zwischengespeichert (Schritt 156). Teilbilddaten innerhalb des den Maximalwert der Korrelationswerte ergebenden Fensters werden aus den Bilddaten herausgezogen, Textdaten werden erneut, beruhend auf diesen Teilbilddaten, erzeugt, und die vorher registrierten Textdaten werden durch die neu erzeugten Textdaten ersetzt, wodurch die Textdaten aktualisiert werden (Schritt 157). Da die Textdaten so aktualisiert werden, werden die jüngsten Textdaten stets aufbewahrt, selbst wenn sich die Haltung des Objekts Su so ändert, daß eine Änderung in dessen Bild vorliegt. Dies ermöglicht es, eine Änderung der Haltung des Objekts Su zu verfolgen.
- Die Versetzungsgröße Δx, Δy des Objekts Su wird durch die Steuerschaltung 124 berechnet (Schritt 154), und eine Steuerung der Haltung der Kamera 9 wird beruhend auf der Größe der Versetzung in einer solchen Weise durchgeführt, daß das Bild des Objekts stets in das Fenster der Lage (x&sub0;, y&sub0;) fällt (Schritt 125).
- Die Verarbeitung der Schritte 152~157 wird zu der Periode des Vertikalabtastintervalls V wiederholt.
- Der Bildprozessor kann nicht nur in der Inspektionsvorrichtung für Kratzer und Flecke, der Positioniervorrichtung und in dem automatischen Verfolgungssystem, die in den Anwendungsbeispielen dargestellt sind, sondern auch in einer Vorrichtung zur Objekterkennung, etc. verwendet werden.
Claims (31)
1. Bildprozessor, welcher aufweist:
Pseudograuskalenbilderzeugungsschaltungsmittel (13, 13A)
zur Umwandlung von Eingangsbilddaten, welche durch eine erste
vorgegebene Anzahl von Bits pro Pixel dargestellt werden, in
Pseudograuskalenbilddaten, die durch eine zweite vorgegebene
Anzahl von Bits dargestellt werden, die kleiner als die erste
vorgegebene Anzahl von Bits ist; und
Bildwiederherstellungsschaltungsmittel (14, 14A) zur
Wiederherstellung der Pseudograuskalenbilddaten durch Summieren der
Pseudograuskalenbilddaten für jeden einer Anzahl von kleinen
Bereichen (SA), von denen jeder eine Anzahl von Pixeln aufweist
und in einem Fenster (WN) vorgesehen ist, welches das mit den
Pseudograuskalenbilderzeugungsschaltungsmitteln erzeugte
Pseudograuskalenbild abtastet, wobei das Fenster (WN) aus einer Anzahl
von kleinen Bereichen (SA) besteht, wobei jeder kleine Bereich
als ein wiederhergestelltes Pixel dient, und zur Ausgabe von
wiederhergestellten Bilddaten für ein Fenster an jeder einzelnen
Position.
2. Bildprozessor nach Anspruch 1, welcher ferner aufweist:
Ähnlichkeitsoperationsschaltungsmittel (15, 15A, 15B) zur
Berechnung eines Indexwerts, der einen Grad von Ähnlichkeit
zwischen den nacheinander von den
Bildwiederherstellungsschaltungsmitteln ausgegebenen wiederhergestellten Bitdaten eines jeden
Fensters und ein vorab eingestelltes Standardbild darstellenden
Textdaten darstellt.
3. Bildprozessor nach Anspruch 1, dadurch gekennzeichnet,
daß die Pseudograuskalenbilderzeugungsschaltungsmittel (13) die
Eingangsbilddaten unter Verwendung einer Fehlerverteilmethode
binarisieren und durch ein Bit pro Pixel dargestellte
Binärbilddaten erzeugen.
4. Bildprozessor nach Anspruch 1, dadurch gekennzeichnet,
daß die Pseudograuskalenbilderzeugungsschaltungsmittel (13A) die
Eingangsbilddaten einer Vierwertumwandlung unter Verwendung
einer Fehlerverteilmethode unterwerfen und durch zwei Bit pro
Pixel dargestellte Pseudograuskalenbilddaten erzeugen.
5. Bildprozessor nach Anspruch 1, welcher ferner
Spitzenhalteschaltungsmittel (16, 16A) zur Feststellung eines
Indexwerts, welcher den höchsten Grad von Ähnlichkeit darstellt,
unter den die einzelnen Fenster betreffenden, von den
Ähnlichkeitsoperationsschaltungsmitteln gewonnenen
Ähnlichkeitsindexwerten sowie von Lagedaten, die das Fenster angeben, in
welchem dieser Indexwert erzeugt wird, aufweist.
6. Bildprozessor nach Anspruch 1, dadurch gekennzeichnet,
daß der den Grad von Ähnlichkeit darstellende Indexwert ein
Differenzwert in Helligkeit des Bilds ist, und die
Ähnlichkeitsoperationsschaltungsmittel (15, 15A) einen Absolutwert einer
Differenz zwischen wiederhergestellten Bilddaten und entsprechenden
Textdaten für jeden einzelnen kleinen Bereich berechnen, die
Absolutwerte dieser Differenzen über alle in einem Fenster
enthaltenen kleinen Bereiche summieren und den Summenwert als
Helligkeitsdifferenzwert ausgeben.
7. Bildprozessor nach Anspruch 1, welcher ferner
Spitzenhalteschaltungsmittel (16) zur Feststellung eines kleinsten
Differenzwerts unter die einzelnen Fenster betreffenden, mit den
Ähnlichkeitsoperationsschaltungsmitteln gewonnenen Helligkeitsdifferenzwerten
sowie von Lagedaten, die das Fenster angeben, in
welchem der kleinste Differenzwert erzeugt wird, aufweist.
8. Bildprozessor nach Anspruch 1, dadurch gekennzeichnet,
daß die Ähnlichkeitsoperationsschaltungsmittel (15B) einen
Kreuzkorrelationswert zwischen wiederhergestellten Bilddaten und
Textdaten für jedes Fenster berechnen und diesen
Kreuzkorrelationswert als den Grad von Ähnlichkeit darstellenden Indexwert
ausgeben.
9. Bildprozessor nach Anspruch 7, welcher ferner
Spitzenhalteschaltungsmittel (16A) zur Feststellung eines größten
Kreuzkorrelationswerts unter den die einzelnen Fenster
betreffenden, mit den Ähnlichkeitsoperationsschaltungsmitteln
gewonnenen Kreuzkorrelationswerten sowie von Positionsdaten, die das
Fenster angeben, in welchem der größte Kreuzkorrelationswert
erzeugt wird, aufweist.
10. Bildprozessor nach Anspruch 1, dadurch gekennzeichnet,
daß die Bildwiederherstellungsschaltungsmittel (14, 14A)
enthalten:
kaskadenverschaltete Zeilenspeicher (40, 40A), deren Anzahl
der Anzahl von Pixeln in der vertikalen Richtung des Fensters
entspricht, zur Übertragung von Pseudograuskalenbilddaten, die
die zweite vorgegebene Anzahl von Bits aufweisen;
eine Schaltung (41, 41A, 42, 42A) zum Herausziehen von
Pseudograuskalenbilddaten einer Anzahl von Pixeln in der
horizontalen Richtung des Fensters aus jedem der Zeilenspeicher und
für jeden einzelnen kleinen Bereich; und
Addierschaltungsmittel (43, 43A) zur Summierung der
herausgezogenen Pseudograuskalenbilddaten für jeden kleinen Bereich
und Ausgeben von wiederhergestellten Bilddaten.
11. Bildprozessor nach Anspruch 9, welcher ferner
Glättungsschaltungsmittel (44) zum Glätten der wiederhergestellten
Bilddaten, die von der in Addierschaltungsmitteln ausgegeben
werden, über wiederhergestellte Pixel vor und hinter den
wiederhergestellten Bilddaten aufweist.
12. Bildprozessor nach Anspruch 1, welcher ferner aufweist:
A/D-Wandlerschaltungsmittel (11) zur Umwandlung eines
Videosignals, welches ein Bild eines Subjekts darstellt und von
einer Videokamera geliefert wird, in Eingangsbilddaten Pixel für
Pixel, wobei die Eingangsbilddaten durch eine erste vorgegebene
Anzahl von Bits pro Pixel dargestellt werden, wobei die
Eingangsbilddaten, die von den A/D-Wandlerschaltungsmitteln
ausgegeben werden, den
Pseudograuskalenbilderzeugungsschaltungsmitteln (13, 13A) zugeführt werden.
13. Bildprozessor nach Anspruch 12, dadurch gekennzeichnet,
daß die Pseudograuskalenbilderzeugungsschaltungsmittel (13) die
Eingangsbilddaten unter Verwendung eines Fehlerverteilverfahrens
binarisieren und durch ein Bit pro Pixel dargestellte
Binärbilddaten erzeugen.
14. Bildprozessor nach Anspruch 12, dadurch gekennzeichnet,
daß die Pseudograuskalenbilderzeugungsschaltungsmittel (13A) die
Eingangsbilddaten einer Vierwertumwandlung unter Verwendung
eines Fehlerverteilverfahrens unterwerfen und durch zwei Bit pro
Pixel dargestellte Pseudograuskalenbilddaten erzeugen.
15. Bildprozessor nach Anspruch 12, dadurch gekennzeichnet,
daß die Bildwiederherstellungsschaltungsmittel (14, 14A)
enthalten:
kaskadenverschaltete Zeilenspeicher (40, 40A), deren Anzahl
der Anzahl von Pixeln in der vertikalen Richtung des Fensters
entspricht, zur Übertragung von Pseudograuskalenbilddaten, die
die zweite vorgegebene Anzahl von Bits aufweisen;
eine Schaltung (41, 41A, 42, 42A) zum Herausziehen von
Pseudograuskalenbilddaten einer Anzahl von Pixeln in der
horizontalen Richtung des Fensters aus jedem der Zeilenspeicher und
für jeden einzelnen kleinen Bereich; und
Addierschaltungsmittel (43, 43A) zum Summieren der
herausgezogenen Pseudograuskalenbilddaten für jeden kleinen Bereich
und Ausgeben von wiederhergestellten Bilddaten.
16. Bildprozessor nach Anspruch 15, welcher
Glättungsschaltungsmittel (44) zum Glätten der wiederhergestellten Bilddaten,
die von den Addierschaltungsmitteln ausgegeben werden, über
wiederhergestellte Pixel vor und hinter den wiederhergestellten
Bilddaten aufweist.
17. Bildverarbeitungsverfahren, welches folgende Schritte
aufweist:
Umwandeln von Eingangsbilddaten, die durch eine erste
vorgegebene Anzahl von Bits pro Pixel dargestellt werden, in
Pseudograuskalenbilddaten, die durch eine zweite vorgegebene
Anzahl von Bits dargestellt werden, die kleiner als die erste
vorgegebene Anzahl von Bits ist; und
Summieren der Pseudograuskalenbilddaten für jeden einzelnen
einer Anzahl von kleinen Bereichen (SA), von denen jeder eine
Anzahl von Pixeln aufweist und in einem Fenster (WN) vorgesehen
ist, welches das erzeugte Pseudograuskalenbild abtastet, wobei
das Fenster (WN) aus einer Anzahl von kleinen Bereichen (SA)
besteht, womit die Bilddaten für ein Fenster an jeder einzelnen
Position wiederhergestellt werden, wobei jeder kleine Bereich
als ein wiederhergestelltes Pixel dient.
18. Bildverarbeitungsverfahren nach Anspruch 17, welches
ferner folgenden Schritt aufweist:
Berechnen eines Indexwerts, der einen Grad von Ähnlichkeit
zwischen den wiederhergestellten Bilddaten eines jeden Fensters
und ein vorab eingestelltes Standardbild darstellenden Textdaten
darstellt.
19. Bildverarbeitungsverfahren nach Anspruch 17, dadurch
gekennzeichnet, daß der Schritt des Umwandelns von
Eingangsbilddaten das Binarisieren der Eingangsbilddaten unter Verwendung
einer Fehlerverteilmethode und das Erzeugen von Binärbilddaten,
die durch ein Bit pro Pixel dargestellt werden, enthält.
20. Bildverarbeitungsverfahren nach Anspruch 17, dadurch
gekennzeichnet, daß der Schritt des Umwandelns von
Eingangsbilddaten das Unterwerfen der Eingangsbilddaten einer
Vierwertumwandlung unter Verwendung einer Fehlerverteilmethode und das
Erzeugen von Pseudograuskalenbilddaten, die durch zwei Bit pro
Pixel dargestellt werden, enthält.
21. Bildverarbeitungsverfahren nach Anspruch 17, welches
ferner einen Schritt der Feststellung eines Indexwerts, welcher
den höchsten Grad von Ähnlichkeit darstellt, unter die einzelnen
Fenster betreffenden Ähnlichkeitsindexwerten und von Lagedaten,
die das Fenster angeben, in welchem dieser Indexwert erzeugt
wird, aufweist.
22. Bildverarbeitungsverfahren nach Anspruch 17, dadurch
gekennzeichnet, daß der den Ähnlichkeitsgrad darstellende
Indexwert ein Differenzwert in Helligkeit des Bildes ist, wobei
ein Absolutwert einer Differenz zwischen wiederhergestellten
Bilddaten und entsprechenden Textdaten für jeden einzelnen
kleinen Bereich berechnet wird, die Absolutwerte dieser Differenzen
über alle in einem Fenster enthaltene kleine Bereiche summiert
werden und der Summenwert als Helligkeitsdifferenzwert
ausgegeben wird.
23. Bildverarbeitungsverfahren nach Anspruch 22, welches
ferner den Schritt des Nachweisens eines kleinsten
Differenzwerts unter gewonnenen Helligkeitsdifferenzwerten, die die
einzelnen Fenster betreffen, sowie von Lagedaten, die das Fenster
angeben, in welchem der kleinste Differenzwert erzeugt wird,
aufweist.
24. Bildverarbeitungsverfahren nach Anspruch 17, dadurch
gekennzeichnet, daß bei der Berechnung des
Ähnlichkeitsindexwerts ein Kreuzkorrelationswert zwischen den
wiederhergestellten Bilddaten und Textdaten für jedes einzelne Fenster
berechnet wird und dieser Kreuzkorrelationswert als
Ähnlichkeitsgrad darstellender Indexwert hergenommen wird.
25. Bildverarbeitungsverfahren nach Anspruch 24, welches
ferner den Schritt der Feststellung eines größten
Kreuzkorrelationswerts unter den die einzelnen Fenster betreffenden
Kreuzkorrelationswerten sowie von Lagedaten, die das Fenster
angeben, in welchem der größte Kreuzkorrelationswert erzeugt wird,
aufweist.
26. Bildverarbeitungsverfahren nach Anspruch 17, dadurch
gekennzeichnet, daß Zeilenspeicher (40, 40A), deren Anzahl der
Anzahl von Pixeln in der vertikalen Richtung des Fensters
entspricht, zur Übertragung von Pseudograuskalenbilddaten, die die
zweite vorgegebene Anzahl von Bits aufweisen, in Kaskade
verschaltet sind;
Pseudograuskalenbilddaten einer Anzahl von Pixeln in der
horizontalen Richtung des Fensters für jeden einzelnen kleinen
Bereich aus jedem der Zeilenspeicher herausgezogen werden; und
die herausgezogenen Pseudograuskalenbilddaten für jeden
einzelnen kleinen Bereich summiert werden, um so die Bilddaten
wiederherzustellen.
27. Bildverarbeitungsverfahren nach Anspruch 26, welches
ferner einen Schritt der Glättung der wiederhergestellten
Bilddaten über wiederhergestellte Pixel vor und hinter den
wiederhergestellten Bilddaten aufweist.
28. Bildverarbeitungsverfahren nach Anspruch 17, welches
ferner den Schritt der Umwandlung eines Videosignals, welches
ein Bild eines Subjekts darstellt und von einer Videokamera
geliefert wird, in die Eingangbilddaten Pixel für Pixel aufweist,
wobei die Eingangbilddaten durch eine erste vorgegebene Anzahl
von Bits pro Pixel dargestellt werden.
29. Bildprozessor nach Anspruch 1, welcher ferner aufweist:
Bildabtastmittel (9) zur Abbildung eines Subjekts und
Ausgabe eines das Bild des Sujekts darstellenden Videosignals;
eine A/D-Wandlerschaltung (11) zur Umwandlung des
Videosignals, welches von den Bildabtastmitteln ausgegeben wird, in die
Eingangsbilddaten;
Abweichungswertberechnungsmittel (15B, 16A) zur Berechnung
eines Abweichungswerts betreffend Helligkeit oder Dichte einer
speziellen Farbe in den von der A/D-Wandlerschaltung
ausgegebenen Eingangbilddaten; und
Mittel (17) zur Bestimmung, ob der mit den
Abweichungswertberechnungsmitteln gewonnene Abweichungswert größer als eine
bestimmte Schwelle ist,
wobei die Pseudograuskalenbilderzeugungsschaltungsmittel
die mit der A/D-Wandlerschaltung umgewandelten Eingangsbilddaten
in die Pseudograuskalenbilddaten umwandlen,
die Abweichungswertberechnungsmittel einen Abweichungswert
für jedes einzelne Fenster in Bezug auf die von den
Bildwiederherstellungsschaltungsmitteln ausgegebenen wiederhergestellten
Bilddaten berechnen und einen Maximalwert unter diesen
Abweichungswerten feststellen, und
die Bestimmungsmittel den maximalen Abweichungswert mit
einem bestimmten Schwellenwert vergleichen.
30. Bildprozessor nach Anspruch 29, dadurch gekennzeichnet,
daß der Abweichungswert eine Varianz ist.
31. Bildprozessor nach Anspruch 29, dadurch gekennzeichnet,
daß der Abweichungswert eine Standardabweichung ist.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8478692 | 1992-03-06 | ||
PCT/JP1993/000285 WO1993018471A1 (en) | 1992-03-06 | 1993-03-08 | Image processor, method therefor and apparatus using the image processor |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69330813D1 DE69330813D1 (de) | 2001-10-31 |
DE69330813T2 true DE69330813T2 (de) | 2002-06-13 |
Family
ID=13840385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69330813T Expired - Lifetime DE69330813T2 (de) | 1992-03-06 | 1993-03-08 | Bildprozessor und verfahren dafuer |
Country Status (4)
Country | Link |
---|---|
US (1) | US5621825A (de) |
EP (1) | EP0586708B1 (de) |
DE (1) | DE69330813T2 (de) |
WO (1) | WO1993018471A1 (de) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998015919A1 (fr) * | 1996-10-09 | 1998-04-16 | Dai Nippon Printing Co., Ltd. | Procede et appareil de detection de defauts de raies sur des documents imprimes |
US5845009A (en) * | 1997-03-21 | 1998-12-01 | Autodesk, Inc. | Object tracking system using statistical modeling and geometric relationship |
US6175355B1 (en) | 1997-07-11 | 2001-01-16 | National Semiconductor Corporation | Dispersion-based technique for modulating pixels of a digital display panel |
US6081252A (en) * | 1997-07-11 | 2000-06-27 | National Semiconductor Corporation | Dispersion-based technique for performing spacial dithering for a digital display system |
US6771832B1 (en) | 1997-07-29 | 2004-08-03 | Panasonic Communications Co., Ltd. | Image processor for processing an image with an error diffusion process and image processing method for processing an image with an error diffusion process |
US6310697B1 (en) | 1998-07-07 | 2001-10-30 | Electronics For Imaging, Inc. | Text enhancement system |
US6501565B1 (en) * | 1998-07-07 | 2002-12-31 | Electronics For Imaging, Inc. | Method and apparatus for smoothing text outlines |
JP3459890B2 (ja) * | 1999-09-22 | 2003-10-27 | Nec液晶テクノロジー株式会社 | 疑似中間処理回路の初期化方法 |
AU2001263282A1 (en) * | 2000-05-18 | 2001-11-26 | Commwell, Inc. | Method and apparatus for remote medical monitoring incorporating video processing and system of motor tasks |
WO2003095591A1 (en) * | 2002-05-08 | 2003-11-20 | Dana Corporation | Plasma-assisted doping |
US8150165B2 (en) * | 2008-04-11 | 2012-04-03 | Recognition Robotics, Inc. | System and method for visual recognition |
US9576217B2 (en) | 2008-04-11 | 2017-02-21 | Recognition Robotics | System and method for visual recognition |
JP5212195B2 (ja) | 2009-03-13 | 2013-06-19 | オムロン株式会社 | 画像処理装置および画像処理方法 |
DE102009019545B4 (de) | 2009-04-30 | 2018-11-22 | Schattdecor Ag | Verfahren und Vorrichtung zur Durchführung eines optischen Vergleiches zwischen zumindest zwei Mustern, vorzugsweise durch Vergleich von auswählbaren Ausschnitten |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5214112B2 (de) * | 1973-02-22 | 1977-04-19 | ||
JPS57134763A (en) * | 1981-02-13 | 1982-08-20 | Mitsubishi Electric Corp | Correlation tracking device |
JPS57137978A (en) * | 1981-02-20 | 1982-08-25 | Toshiba Corp | Pattern detecting device |
JPS57141723A (en) * | 1981-02-27 | 1982-09-02 | Mitsubishi Electric Corp | Correlation tracking device |
US4709274A (en) * | 1983-08-29 | 1987-11-24 | Canon Kabushiki Kaisha | Image processing apparatus |
US4581762A (en) * | 1984-01-19 | 1986-04-08 | Itran Corporation | Vision inspection system |
US5267330A (en) * | 1984-06-19 | 1993-11-30 | Canon Kabushiki Kaisha | Image processing apparatus |
GB2170372B (en) * | 1984-12-28 | 1989-04-19 | Canon Kk | Image processing apparatus |
NL8501846A (nl) * | 1985-06-27 | 1987-01-16 | Oce Nederland B V Patents And | Werkwijze voor het reconstrueren van een grijswaardenbeeld uit een ditherbeeld. |
JPS62281673A (ja) * | 1986-05-30 | 1987-12-07 | Konica Corp | 中間調画像推定方法 |
JPH07117377B2 (ja) * | 1988-11-04 | 1995-12-18 | 松下電器産業株式会社 | 位置認識方法 |
JPH02285773A (ja) * | 1989-04-27 | 1990-11-26 | Canon Inc | 画像処理装置 |
JPH07118014B2 (ja) * | 1990-02-26 | 1995-12-18 | 松下電器産業株式会社 | パターン認識装置 |
JPH0438456A (ja) * | 1990-06-01 | 1992-02-07 | Sekisui Chem Co Ltd | 表面状態検査装置 |
JP3031994B2 (ja) * | 1990-11-16 | 2000-04-10 | 株式会社東芝 | 画像処理装置 |
US5150428A (en) * | 1991-04-01 | 1992-09-22 | Eastman Kodak Company | Method for generating halftone image data with randomly selected threshold array |
JP2500834B2 (ja) * | 1991-09-05 | 1996-05-29 | ゼロックス コーポレイション | 画素値の量子化方法及び装置 |
-
1993
- 1993-03-08 EP EP93905621A patent/EP0586708B1/de not_active Expired - Lifetime
- 1993-03-08 US US08/146,022 patent/US5621825A/en not_active Ceased
- 1993-03-08 DE DE69330813T patent/DE69330813T2/de not_active Expired - Lifetime
- 1993-03-08 WO PCT/JP1993/000285 patent/WO1993018471A1/ja active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
DE69330813D1 (de) | 2001-10-31 |
US5621825A (en) | 1997-04-15 |
EP0586708A1 (de) | 1994-03-16 |
EP0586708B1 (de) | 2001-09-26 |
WO1993018471A1 (en) | 1993-09-16 |
EP0586708A4 (en) | 1994-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69715076T2 (de) | Vorrichtung zur Erzeugung eines Binärbildes | |
DE69533054T2 (de) | Mehrfenstertechnik zur Schwellenwertverarbeitung eines Bildes unter Verwendung lokaler Bildeigenschaften | |
DE69125139T2 (de) | Verfahren und Vorrichtung zur Korrektur von Weisschattierungen | |
DE69734855T2 (de) | Vorrichtung und Verfahren zur Extraktion eines Objektes in einem Bild | |
DE69330813T2 (de) | Bildprozessor und verfahren dafuer | |
DE69229705T2 (de) | Verfahren zur erkennung eines bewegungsvektors und vorrichtung dafür und system zur verarbeitung eines bildsignals mit dieser vorrichtung | |
DE69027616T2 (de) | Gerät und Verfahren zum Bestimmen von Konturen und Linien | |
US6301385B1 (en) | Method and apparatus for segmenting images prior to coding | |
DE69708449T2 (de) | Vorrichtung zur Umwandlung von Graupegeln eines Bildes, Verfahren dafür, Programmspeichereinrichtung dafür, und Infrarotkamera | |
DE69625313T2 (de) | Vorrichtung zur erzeugung von stanzsignalen, vorrichtung zur bilderstellung, verfahren zur erzeugung von stanzsignalen und verfahren zur bilderstellung | |
DE69604481T2 (de) | Verfahren und gerät zum trennen des vordergrunds und hintergrunds in textenthaltenden bildern | |
DE69422446T2 (de) | Mustererkennung | |
DE69629888T2 (de) | Bildverarbeitungsverfahren und Bilderkennungs- und Pixelverarbeitungssystem | |
DE60132315T2 (de) | Verbessertes verfahren zur bildbinarisierung | |
DE3686862T2 (de) | Bildverarbeitungsverfahren. | |
DE69909635T2 (de) | Gerät und verfahren zur elektronischen bildverbesserung | |
DE602005002802T2 (de) | Anordnung, Verfahren und Programm zur Bestimmung der Zentralposition eines Gesichts | |
DE4102587A1 (de) | Verfahren und einheit zur binaeren bildverarbeitung sowie verfahren und einheit zur zeichenerkennung | |
EP0484935B1 (de) | Verfahren und Vorrichtung zum Lesen und Identifizieren der Information einer Zeichenvorlage, insbesondere eines Barcodes, innerhalb eines zwei- oder drei-dimensionalen Feldes mittels einer Video-Kamera, die ein binäres Videosignal des Bildes zu erzeugen imstande ist | |
DE69927239T2 (de) | System und verfahren zur verarbeitung von bildern | |
DE69531510T2 (de) | Verfahren und Vorrichtung zur Bewegungsschätzung mittels Blockübereinstimmung | |
DE69424086T2 (de) | Bildprozessor | |
DE19536691B4 (de) | Verfahren und Anordnung zur Korrektur von Bildstandsfehlern bei der fernsehmäßigen Filmabtastung | |
DE19883010B4 (de) | Verfahren und Vorrichtung zum Erkennen eines sich bewegenden Objekts in einer Abfolge von Farbvollbildern | |
DE69128211T2 (de) | Bildverarbeitungsvorrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |