DE3809816C2 - - Google Patents

Info

Publication number
DE3809816C2
DE3809816C2 DE3809816A DE3809816A DE3809816C2 DE 3809816 C2 DE3809816 C2 DE 3809816C2 DE 3809816 A DE3809816 A DE 3809816A DE 3809816 A DE3809816 A DE 3809816A DE 3809816 C2 DE3809816 C2 DE 3809816C2
Authority
DE
Germany
Prior art keywords
image data
operator
basic
filter
data field
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
Application number
DE3809816A
Other languages
English (en)
Other versions
DE3809816A1 (de
Inventor
Osamu Shindo
Noboru Suzuki
Shigeo Tokio/Tokyo Jp Toji
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pentax Corp
Original Assignee
Asahi Kogaku Kogyo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Asahi Kogaku Kogyo Co Ltd filed Critical Asahi Kogaku Kogyo Co Ltd
Publication of DE3809816A1 publication Critical patent/DE3809816A1/de
Application granted granted Critical
Publication of DE3809816C2 publication Critical patent/DE3809816C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B7/00Mountings, adjusting means, or light-tight connections, for optical elements
    • G02B7/28Systems for automatic generation of focusing signals
    • G02B7/36Systems for automatic generation of focusing signals using image sharpness techniques, e.g. image processing techniques for generating autofocus signals
    • G02B7/365Systems for automatic generation of focusing signals using image sharpness techniques, e.g. image processing techniques for generating autofocus signals by analysis of the spatial frequency components of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Optics & Photonics (AREA)
  • Image Processing (AREA)
  • Complex Calculations (AREA)
  • Image Analysis (AREA)

Description

Die Erfindung betrifft ein optisches Filterverfahren nach dem Oberbegriff des Patentanspruchs 1 und eine Filteranordnung zur Durchführung des Verfahrens nach dem Oberbegriff des Anspruchs 6. Das Filterverfahren wird im Raumbereich eingesetzt, d. h. es eignet sich für ein Autofokus- System einer fotografischen Kamera.
Die Entwicklung von Bildverarbeitungsverfahren unter Verwendung von Rechnern ist bekannt, und solche Verfahren werden weitläufig eingesetzt (siehe z. B. DE 36 24 818 A1). Bisher übliche Bildverarbeitungssysteme werden dazu verwendet, gewünschte Informationen aus einem sichtbaren Bild auszusondern, um einen ausgewählten größeren Teil dieser Informationen hervorzuheben und um nach der Vorbehandlung Merkmale auszufiltern.
Die bei solchen Bildverarbeitungssystemen durchgeführten grundsätzlichen Schritte sind in Fig. 1 gezeigt. Dabei wird das aus einer Abtastung erhaltene Bild- oder Videodatenfeld von einer externen Eingabevorrichtung 10 einer Filteranordnung 12 zugeführt. Die Bilddatenanordnung wird in der Filteranordnung 12 gefiltert, deren Ausgangsdaten einer Nachverarbeitungseinrichtung 14 und dann einer gesteuerten Antriebseinrichtung 16 zugeführt werden. Die Filteranordnung 12 und die Nachverarbeitungseinrichtung 14 werden jeweils durch eine Steuereinheit 18 gesteuert. Bei dieser Art der Bildverarbeitung spielt das in der Filteranordnung angewendete Filterverfahren eine wichtige Rolle in der Vorbehandlungsstufe des Verfahrens.
Bekanntlich werden die gegenwärtigen optischen Filterverfahren allgemein in zwei Kategorien unterteilt, das "Raumfrequenzfiltern", das in einem Raumfrequenzbereich erfolgt, und das "Raumbereichsfiltern", das in einem Raumbereich erfolgt.
Das Raumfrequenzfiltern kann so durchgeführt werden, daß die Fouriertransformation einer Folge von Bildinformationsdaten durchgeführt wird, die im folgenden auch als "Bilddatenfolge" oder "Bilddatenfeld" bezeichnet wird. Ein solches Bilddatenfeld kann man beispielsweise durch die fotografische Aufnahme eines Objekts erhalten. Es wird dann in dem Raumfrequenzfilterverfahren zunächst die Fouriertransformation des Bilddatenfeldes durchgeführt, um fourier-transformierte Daten zu erhalten. Dann werden diese transformierten Daten durch ein Raumfrequenzfilter vervielfacht und danach ihre inverse Fouriertransformation erstellt. Bei Anwendung dieses Verfahrens sind jedoch viele arithmetische Operationen erforderlich, und es wird eine große Speicherkapazität benötigt, so daß ein Mikroprozessor dieses Verfahren nicht in Realzeit durchführen kann. Deshalb sind Raumfrequenzfilterverfahren nicht mit Einrichtungen durchführbar, die einen Speicher niedriger Kapazität enthalten.
Andererseits kann das Raumbereichsfilterverfahren durch Faltung zuvor gebildeter Operatoren, die manchmal auch als "Fensteroperatoren" bezeichnet werden, mit einem Bilddatenfeld durchgeführt werden. Deshalb ist ein Raumbereichsfilterverfahren dieser Art leichter als ein Raumfrequenzfilterverfahren durchzuführen.
Es wurde bereits versucht, Raumbereichsfilterverfahren auf verschiedene Vorrichtungen anzuwenden, beispielsweise in Verbindung mit der automatischen Fokussierung einer Kamera. Bisherige Raumbereichsfilterverfahren zeigen jedoch verschiedene Probleme, durch die ihr Einsatz nicht zufriedenstellend war.
Bei den üblichen Raumbereichsfilterverfahren wird ein Programm zur Bildung oder Generierung von Operatoren angewendet/ erstellt, die eine sinnvolle Funktion haben. Bei diesen Programmen werden übliche Operatoren benutzt, die in einem Speicher gespeichert sind. Dabei werden keine neuen Operatoren gebildet. Die Filterung wird bei diesen Verfahren durch Faltung der durch das Programm gegebenen Operatoren mit dem Bilddatenfeld erreicht. Bei solchen Verfahren, in denen viele verschiedene spezielle Operatoren für verschiedene Prozesse erforderlich sind, z. B. Differentiation, Integration und Anhebung, müssen die Operatoren für jede dieser Funktionen zuvor gebildet werden. Dadurch müssen Programme erstellt werden, deren Zahl der Zahl der Faltungen entspricht, so daß eine Programmeinrichtung großer Kapazität, die ein Speichervolumen von mehreren Kilobyte hat, und ein entsprechend großer Speicher zur Speicherung einer großen Zahl Generierungsprogramme erforderlich sind.
Ferner werden bei den üblichen Raumbereichsfilterverfahren Koeffizienten der Elementfunktionen (die noch beschrieben werden) zur Bildung von Operatoren mit den Werten "0,44" oder "0,14" verwendet, und dadurch werden die arithmetischen Operationen beeinträchtigt, die der Rechner durchführen muß. Es ergibt sich dann eine erhöhte Zahl arithmetischer Operationen, die einen großen Speicher erfordert. Damit entsteht ein weiteres Problem, nämlich die für die arithmetischen Operationen und den Filterprozeß erforderliche lange Zeit. Wird beispielsweise die Faltung eines Operators mit einem großen Bilddatenfeld durchgeführt, so wird die Zahl der arithmetischen Operationen für diese Faltung extrem groß, so daß eine entsprechend lange Zeit für den Prozeß anfällt.
Die Aufgabe der Erfindung besteht darin, ein Raumbereichsfilterverfahren anzugeben, das mit nur wenig Speicherkapazität durchgeführt werden kann. Ferner soll eine Filteranordnung angegeben werden, die die dazu erforderlichen arithmetischen Operationen mit hoher Geschwindigkeit durchführt.
Diese Aufgabe wird durch die Merkmale des Patentanspruchs 1 bzw. des Patentanspruchs 6 gelöst. Vorteilhafte Weiterbildungen sind Gegenstand der jeweiligen Unteransprüche.
Zum besseren Verständnis der Erfindung werden zunächst die Grundprinzipien der Erzeugung eines expandierten Operators aus einem Grundoperator erläutert. Dabei werden zunächst verschiedene Bezeichnungen definiert. Ein Grundoperator ist ein Operator, der aus höchstens drei Elementfunktionen besteht. Ein expandierter Operator ist ein Operator, der sich durch eine Faltung mehrerer Grundoperatoren ergibt.
Eine Grundoperatorenfolge ist ein sequentieller Satz von Grundoperatoren, bei dem die Koeffizientenanordnung der Elementfunktionen, die die Grundoperatoren enthalten, übereinstimmt. Wie beispielsweise in Fig. 3A bis 3D gezeigt, ist die Koeffizientenanordnung der Elementfunktion 1/4, 1/2 und 1/4 für jeden Wert der variablen ganzen Zahl K, wobei K=0, K=1, K=2 und K=3 ist. Bei dem in Fig. 4A bis 4D gezeigten Beispiel ist die Koeffizientenanordnung der Elementfunktion -1/2 und 1/2 für jeden Wert von K, wobei K=0, K=1, K=2 und K=3 ist. Bei dem in Fig. 5A bis 5D dargestellten Beispiel ist die Koeffizientenanordnung der Elementfunktion -1/4, 1/2 und -1/4 für jeden Wert K, wobei K=0, K=1, K=2 und K=3 ist. Bei jedem dieser Beispiele sind Werte und Anordnung der Koeffizienten für alle Werte K gleich.
Ein Original-Grundoperator ist eine allgemeine Formel, die jeden beliebigen Grundoperator der Grundoperatorenfolge beschreibt.
Allgemein ergibt sich ein Ausgangsdatensatz o(t) durch die Faltung eines eindimensionalen Eingangsdatensatzes i(t) und eines Grundoperators f₁(t) und wird folgendermaßen ausgedrückt:
Wenn die Beziehungen
o(t)
= [o(t)]
F₁(s) = [f₁(t)] und
I(s) = [i(t)]
bestehen, wobei die Laplace-Transformation ist, so kann die Gleichung (1) folgendermaßen umgeschrieben werden:
o(s) = F₁(s) · I(s) (2)
Die Faltung des so erhaltenen Ausgangsdatensatzes o(t) mit einem zweiten Grundoperator f₂(t) entspricht der Multiplikation beider Seiten der Gleichung (2) mit
F₂(s) = [f₂(t)],
so daß dasselbe Ergebnis durch Multiplikation von I(s) mit
F(s) = F₁(s) · F₂(s)
erhalten wird.
Somit ist zu erkennen, daß das durch die Faltung eines Ausgangsdatensatzes mit den Grundoperatoren f₁(t) und f₂(t) erhaltene Ergebnis äquivalent dem Ergebnis ist, das durch die Faltung des Bilddatenfeldes mit einem expandierten Operator erhalten wird, der sich durch die vorherige Faltung der Grundoperatoren f₁(t) und f₂(t) ergibt.
Es folgt daraus, daß bei Grundoperatoren mit n Schritten eine Folge von Faltungen beginnend mit der Faltung eines Eingangsbilddatenfeldes mit dem Grundoperator f₁(t) zur Erzeugung eines Ausgangsdatensatzes, der dann mit dem Grundoperator f₂(t) gefaltet (d. h. zusammengerollt) wird, um einen zweiten Ausgangsdatensatz zu erzeugen, der dann mit dem Grundoperator f₃(t) zur Erzeugung eines dritten Ausgangssatzes usw. gefaltet wird, bis sich die Faltung des n-ten Schrittes durch Faltung des Ausgangsdatensatzes der vorherigen Faltung mit dem Grundoperator fn(t) ergibt, äquivalent dem Ergebnis ist, das sich durch die Faltung eines anfänglichen Eingangsbilddatenfeldes mit einem expandierten Operator f(t) ergibt, der zuvor erhalten wurde durch Faltung des Grundoperators f₁(t) bis zum Grundoperator fn(t), d. h. f(t) wird mit f₂(t) gefaltet, das Ergebnis wird mit f₃(t) gefaltet usw. bis fn(t).
Der Erfindung liegt diese Erkenntnis zugrunde. Das Filterverfahren für einen Raumbereich von Bilddaten, die eine externe Eingabevorrichtung für visuelle Bilddaten liefert, umfaßt die Schritte des Speicherns geeigneter Daten in Speicherbereichen, der Aufnahme eines Anfangs-Bilddatenfeldes aus der Eingabevorrichtung und der Erzeugung von Signalen zum wahlweisen Aktivieren von Operationsprogrammen, die in dem Speicherbereich vorhanden sind. Grundoperatoren werden innerhalb einer Grundoperatorenfolge erzeugt, und ein Bilddatenfeld wird durch die Faltung mit einem Grundoperator verarbeitet. Dadurch ergeben sich Daten einschließlich Spitzendateninformationen, die einer Entscheidung unterzogen werden, bei der die Spitzendaten mit vorbestimmten Referenzdaten verglichen werden. Abhängig von dem Vergleichsergebnis werden die vorherigen Schritte mit der Erzeugung eines Grundoperators und der Verarbeitung eines Bilddatenfeldes abhängig von vorbestimmten Signalen wiederholt, so daß sich eine Folge von Faltungen ergibt, nach deren jeder Spitzendaten wie zuvor festgestellt werden und ein Vergleich zwischen den Spitzendaten und den vorbestimmten Referenzdaten erfolgt. Die Ausgangsdaten werden einer Steuereinrichtung zugeführt, wenn sie bestimmte Kriterien erfüllen, die sich aus den Referenzdaten ergeben.
Bei Verwendung üblicher Raumbereichsfilter müssen Operatoren, die den "expandierten" Operatoren nach der Erfindung entsprechen, zuvor erzeugt werden, so daß die Faltung solcher Operatoren mit einem Bilddatenfeld möglich ist. Mit einer noch zu beschreibenden, gemäß der Erfindung vorgesehenen Filteranordnung werden im Gegensatz dazu in einer Folge gewünschte Grundoperatoren jeweils so erzeugt, daß ein Grundoperator mit einem Bilddatenfeld gefaltet wird, und das durch diese Faltung erzielte Ausgangs-Bilddatenfeld wird als neues Eingangs-Bilddatenfeld verwendet, das dann mit einem zweiten Grundoperator gefaltet wird, usw. Dieses Verfahren führt zu Ergebnissen, die äquivalent denen sind, welche in bisher üblicher Weise durch Faltung eines Operators mit ein und demselben Eingangs-Bilddatenfeld erzielt wurden.
Das Verfahren nach der Erfindung erfordert eine nur minimale Anzahl von Original-Grundoperatoren für die Faltung, und diese werden in geeigneter Weise (aus dem Speicher) ausgewählt, so daß die bei der jeweils vorherigen Faltung erzielten Ausgangsdaten mit dem nächsten geeigneten Operator gefaltet werden. Im Ergebnis wird die Anzahl von Programmen zur Operatorenbildung deutlich verringert, und die arithmetische Rechenzeit wird wesentlich verkürzt. Wenn mehrere verschiedene Grundoperatoren in derselben Grundoperatorenfolge abhängig von der Anzahl einer Variablen k gewählt werden, so wird zusätzlich die erforderliche Speicherkapazität zusammen mit der nötigen Rechenzeit noch weiter verringert.
Eine Filteranordnung nach der Erfindung, mit der das Filterverfahren in einem Raumbereich von Bilddaten durchgeführt wird, die sich durch Eingabe eines externen visuellen Bildes ergeben, liefert Steuerinformationen an eine gesteuerte Antriebseinrichtung. Die Filteranordnung enthält einen Generator zur Bildung von Grundoperatoren innerhalb ein und derselben Grundoperatorenfolge und einen Filterprozessor zum Falten der Grundoperatoren mit einem Bilddatenfeld. Die Filteranordnung enthält ferner eine sequentiell arbeitende Faltungseinrichtung, die den Generator und den Filterprozessor enthält, so daß die aus der letzten Faltung einer Reihe von Faltungen erzielten Ausgangsdaten, die sich auf ein Eingangs-Bilddatenfeld beziehen, als neues Eingangs-Bilddatenfeld verwendet werden und dieses neue Bilddatenfeld mit einem neu erzeugten Grundoperator gefaltet wird. Dadurch erhält die Folge von Faltungen denselben Effekt, wie er sich bei der direkten Faltung des anfänglichen Bilddatenfeldes mit einem expandierten Operator ergibt.
Der Generator für die Grundoperatoren und der Filterprozessor können in einem codierten Speicher vorgesehen sein, und ferner können die Bildung der Grundoperatoren und das Filtern entsprechend einer Subroutine in ein und derselben Folge ablaufen.
Gemäß einer anderen Weiterbildung enthält der Generator für die Grundoperatoren eine Elementfunktion oder eine Kombination von zwei oder mehr Elementfunktionen, die folgendermaßen definiert ist:
Dabei ist x=n+K(k); ferner ist K(k) Null oder eine Funktion einer Variablen k; ferner ist n die Position der der Filterung unterzogenen Bilddaten.
Die Elementfunktion dient zur Generierung eines Original- Grundoperators, von dem ausgehend die Grundoperatoren in derselben Grundoperatorenfolge gebildet werden.
Die Grundoperatorenfolge kann aus einer Kombination solcher Elementfunktionen bestehen, von denen jede einen Koeffizienten hat, der ein Mehrfaches von Zwei ist.
Die Grundoperatorenfolge enthält einen oder mehrere Integrationsoperatoren I(n, k), Differentialoperatoren der ersten Ordnung D(+)(n, k) und Differentialoperatoren der zweiten Ordnung D′′(n, k), deren jeder folgendermaßen definiert ist:
I(n, k) = (U(n)/2) + (1/4)[U(n+2k) + U(n-2k)],
D(+)(n, k) = (1/2)[U(n-2k) - U(n+2k)] und
D′′(n, k) = (U(n)/2) - (1/4)[U(n+2k) + U(n-2k)],
wobei k=0, 1, 2, 3 usw. ist.
Gemäß einer Weiterbildung erfolgt die Bildverarbeitung in der Filteranordnung durch eine sequentielle Faltung der Grundoperatoren mit einem Bilddatenfeld, das sich aus jeweils einer der Faltungen mit einem Grundoperator ergibt. Es ergibt sich dann ein expandierter Operator, der die hochfrequenten Komponenten des Bilddatenfeldes beeinflußt, also als Tiefpaßfilter wirkt. Die nachfolgenden Faltungen der Grundoperatoren bilden expandierte Operatoren, die wiederum die niederfrequente Komponente des Bilddatenfeldes beeinflussen, also als Hochpaßfilter wirken. Die Erzeugung der Grundoperatoren in ein und derselben Grundoperatorenfolge wird durch Bestimmung einer Variablen k des Original-Grundoperators als Argument, d. h. als variable ganze Zahl, möglich.
Die Erfindung wird im folgenden unter Bezugnahme auf die Zeichnung näher erläutert. Darin zeigt
Fig. 1 eine Blockdarstellung eines Bildverarbeitungssystems mit einer Filteranordnung, in der entweder eine Filtervorrichtung bisherige Art oder eine Filtervorrichtung nach der Erfindung verwendbar ist,
Fig. 2 eine Blockdarstellung eines Ausführungsbeispiels einer Filteranordnung nach der Erfindung,
Fig. 3A bis 3D, 4A bis 4D und 5A bis 5D mehrere Darstellungen zur Erläuterung von Grundoperatoren, die in einer Filteranordnung nach der Erfindung verwendet werden,
Fig. 6 ein Flußdiagramm zur Erläuterung der Arbeitsweise der Filteranordnung nach der Erfindung,
Fig. 7A bis 7C, 8A und 8B sowie 9B Darstellungen zur Erläuterung eines Verfahrens zur Erzeugung expandierter Operatoren,
Fig. 10 eine Darstellung zur Erläuterung der Effekte, die durch die Erfindung erzielt werden,
Fig. 11 eine schematische Darstellung einer automatischen Fokussiereinrichtung einer fotografischen Kamera mit einer Filteranordnung nach der Erfindung,
Fig. 12 eine Blockdarstellung der Funktionen der Filteranordnung nach der Erfindung in einer Verwendung gemäß Fig. 11 und
Fig. 13 ein Flußdiagramm zur Erläuterung der Arbeitsweise der in Fig. 11 gezeigten Kamera.
Fig. 2 zeigt eine Blockdarstellung einer Filteranordnung 12. Diese ist als Gesamtblock gestrichelt dargestellt und enthält einen Grundoperatorengenerator 20, der zur Bildung mehrerer Grundoperatoren innerhalb ein und derselben Grundoperatorenfolge dient.
Ein Original-Grundoperator wird zur Bildung der Grundoperatoren benutzt, die in derselben Grundoperatorenfolge auftreten. Eine variable ganze Zahl k wird in der Original- Grundoperatorgleichung verwendet, so daß die Grundoperatoren innerhalb der Folge die k-te Ordnung haben.
Zunächst wird die Elementfunktion entsprechend folgender Funktion definiert:
Dabei ist x=n+K(k), ferner K(k) eine Funktion, die durch Null oder eine Variable k bestimmt ist, ferner n die Position der Bilddaten, die der Filterung unterzogen werden.
Die Grundoperatoren in der Folge werden dann aus dem Original- Grundoperator erhalten, indem der Variablen k in der Original-Grundoperatorgleichung ein geeigneter Wert gegeben wird, wobei die Variable k den Abstand zwischen den Datenbits des Grundoperators angibt, der auf ein Bilddatenfeld einwirkt. Beispielsweise kennzeichnet k=0, daß der Grundoperator auf das Bilddatenfeld mit einem Abstand von 1 Bit einwirkt; k=1 kennzeichnet, daß der Grundoperator auf das Bilddatenfeld mit einem Abstand von 2 Datenbits einwirkt; k=2 kennzeichnet, daß der Grundoperator auf das Bilddatenfeld mit einem Abstand von 3 Datenbits einwirkt; k=3 kennzeichnet, daß der Grundoperator auf das Bilddatenfeld mit einem Abstand von 4 Bits einwirkt usw.
In einer Filteranordnung nach der Erfindung werden die Original- Grundoperatoren, die untereinander verschieden sind, durch eine oder mehrere Kombinationen der Elementfunktionen repräsentiert, und sie repräsentieren die Funktionen der Variablen k. Beispielsweise können drei untereinander verschiedene Grundoperatoren definiert werden durch (a) den Integrationsoperator I(n, k), (b) den Differentialoperator der ersten Ordnung D(+)(n, k) und (c) den Differentialoperator der zweiten Ordnung D′′(n, k), von denen jeder wiederum folgendermaßen definiert ist:
  • (1) Der Integrationsoperator I(n, k) der k-ten Ordnung ist folgendermaßen definiert:
I(n, k) = AU(n) + B[U(n+K(k)) + U(n-K(k))] (4)
Dabei sind A und B willkürliche Koeffizienten.
Bei der in Fig. 2 gezeigten Anordnung wird dieser Integrationsoperator I(n, k), bei dem k eine variable ganze Zahl ist, in einem Subroutine-Codespeicherbereich 24 des Generators 20 gespeichert. Die variable ganze Zahl k ist in einem Hauptprogrammspeicher 30 der Filteranordnung 12 gespeichert. Wenn sie verschiedene Werte hat, so kann jeder Integrations-Grundoperator in der Integrationsoperatorenfolge des Integrationsoperators I(n, k) aus einem Generierungsprogramm gebildet werden, d. h. von einem gemeinsamen Integrationsoperator I(n, k). Wenn beispielsweise k=1, 2, 3 usw. ist, so wird das Integrationsergebnis als "1" angesehen. In diesem Falle ergibt sich der Integrationsoperator I(n, k) folgendermaßen:
I(n, k) = (U(n)/2) + (1/4)[U(n+2k) + U(n-2k)] (5)
Dabei ist k=0, 1, 2, 3 usw. (eine variable ganze Zahl).
Eine Integrationsoperatorenfolge wird aus der vorstehenden Gleichung mit vorgegebenen Werten k=0, k=1, k=2, k=3 usw. in dem Integrationsoperator I(n, k) erhalten. Jeder Integrations-Grundoperator innerhalb einer solchen Folge erscheint dann wie in Fig. 3A bis 3D gezeigt, wobei die Abszisse einer jeden Fig. 3 eine Position oder Adresse n abgibt, bei der die Faltung eines Bilddatenfeldes und eines Grundoperators erhalten wird. Die Ordinate in Fig. 3A bis 3D gibt die relative Größe an.
  • (2) Ähnlich ist der Differentialoperator der ersten Ordnung D(+)(n, k) an einer k-ten Position folgendermaßen definiert:
D(+)(n, k) = C[U(n-K(k))] (6)
wobei C eine willkürliche Konstante ist.
Wie der Integrationsoperator I(n, k) wird der Differentialoperator der ersten Ordnung D(+)(n, k) in einem Subroutine- Codespeicherbereich 26 des Generators 20 (Fig. 2) gespeichert. Die variable ganze Zahl k hat Werte wie zuvor beschrieben, d. h. k = 0, 1, 2 usw., und wenn ein Wert für k vorgegeben ist, so kann die Folge des Differentialoperators D(+)(n, k) der ersten Ordnung aus einem Generierungsprogramm gebildet werden, d. h. aus einem Differentialoperator der ersten Ordnung D(+)(n, k).
Um das Integrationsergebnis "0" zu erhalten, ist der Differentialoperator D(+)(n, k) folgendermaßen definiert:
D(+)(n, k) = (1/2)[U(n-2k) - U(n+2k)] (7)
wobei k=0, 1, 2, 3 usw. ist.
Dann erscheint jeder Differential-Grundoperator der ersten Ordnung innerhalb der Folge verschiedener Operatoren der ersten Ordnung für Werte k=0, k=1, k=2 und k=3, wie in Fig. 4A bis 4D gezeigt, wobei die Abszisse wie zuvor eine Position oder Adresse n angibt, an der die Faltung eines Bilddatenfeldes und eines Grundoperators erhalten wird, während die Ordinate die relative Größe angibt.
  • (3) Ähnlich wird der Differentialoperator der zweiten Ordnung D′′(n, k) an der k-ten Position folgendermaßen definiert:
D′′(n, k)=DU(n)-E[U(n+K(k))+U(n-K(k))] (8)
wobei D und E willkürliche Konstanten sind.
Die vorstehende Gleichung ist in einem Subroutine-Codespeicherbereich 28 des Generators 20 (Fig. 2) gespeichert. Wie der Integrationsoperator I(n, k) und der Differentialoperator der ersten Ordnung D(+)(n, k) kann eine Reihe von Grundoperatoren aus einem einzigen Differentialoperator der zweiten Ordnung D′′(n, k) gebildet werden.
Um das Ergebnis der Integration gleich "1" zu erhalten, wird der Operator D′′ folgendermaßen definiert:
D′′(n, k) = [U(n)/2] - (1/4)[U(n+2k) + U(n-2k)] (9)
wobei k=0, 1, 2, 3 usw. ist.
Eine Reihe von Differential-Grundoperatoren der zweiten Ordnung wird aus dem einen gemeinsamen Differentialoperator der zweiten Ordnung D′′(n, k) für k=0, k=1, k=2, k=3 usw. erzeugt, wie es in Fig. 5A bis 5D gezeigt ist. Das Ergebnis der Faltung eines Bilddatensatzes und dieses Grundoperators ergibt sich an einer Position oder Adresse n längs der Abszisse, während die Ordinate die relative Größe angibt.
Aus drei unterschiedlichen Arten von Original-Grundoperatoren kann also durch das Generierungsprogramm eine Folge von Grundoperatoren erzeugt werden, die der jeweiligen Folge von Grundoperatoren entspricht. Die Original-Grundoperatoren, die zu verwenden sind, ergeben sich aus den Gleichungen (5), (7) und (9). Die Koeffizienten der Elementfunktionen U(n), d. h. A und B in Gleichung (4), C in Gleichung (6) und D und E in Gleichung (8) werden so bestimmt, daß jeder ein Vielfaches von Zwei ist und daß sie nicht eine Funktion des Arguments k sind, d. h. sie ändern sich nicht bei Änderungen des Arguments k.
Die in Fig. 2 gezeigte Filteranordnung 12 enthält einen Filterprozessor 22, mit dem eine Faltung eines jeden mit dem Generator 20 erzeugten Grundoperators mit einem Bilddatenfeld erzeugt wird. Der in Fig. 2 gezeigte Punkt "I" kennzeichnet die Eingabe eines anfänglichen Bilddatenfeldes aus einer Eingabevorrichtung für visuelle Informationen, z. B. eine Kamera. Die Einrichtungen zur Durchführung des Faltungsprozesses können wie an sich bekannt aufgebaut sein, so daß ihre eingehende Erläuterung in dieser Beschreibung nicht erforderlich ist.
In einem Ausführungsbeispiel der Erfindung ist jedoch eine Entscheidungsvorrichtung 32 vorgesehen, der die Ausgangsdaten des Filterprozessors 22 zugeführt werden. Sie vergleicht diese Ausgangsdaten mit vorbestimmten Referenzdaten oder Bedingungen. Wenn die Ausgangsdaten die vorbestimmten Bedingungen erfüllen, so werden sie als Ausgangsdaten der Entscheidungsvorrichtung 32 der Nachverarbeitungseinrichtung 14 zugeführt, wo sie zur Bildung eines Steuersignals genutzt werden. Wenn die Ausgangsdaten die vorbestimmten Bedingungen nicht erfüllen, so wird ein neuer, anderer Grundoperator erzeugt. Dies erfolgt durch Signalgabe der Entscheidungsvorrichtung 32 an den Generator 20 zusammen mit einem Wert für die variable ganze Zahl k, und gleichzeitig werden die an der Entscheidungsvorrichtung 32 empfangenen Daten zu dem Filterprozessor 22 zurückgeführt als Bilddatenfeld, das mit dem neuen Grundoperator zu falten ist.
Alternativ und vorzugsweise kann der Filterprozessor 22 auch so aufgebaut sein, daß der vorherige Original-Grundoperator und/oder die variable ganze Zahl k als Ausgang der Entscheidungsvorrichtung 32 bei einem bestimmten Punkt der Erzeugung des Grundoperators und des Filterprozessors abgegeben werden, ohne daß eine Entscheidung erfolgt, d. h. ohne Vergleich eingegebener gefalteter Daten mit einer vorbestimmten Bedingung in der Entscheidungsvorrichtung 32.
Im folgenden wird die Arbeitsweise des Filterprozessors 22 an Hand des Flußdiagramms nach Fig. 6 erläutert. Zu diesem Zweck und im Interesse der einfachen Erklärung sind die drei vorstehend beschriebenen Original-Grundoperatoren, nämlich der Integrationsoperator, der Differentialoperator der ersten Ordnung und der Differentialoperator der zweiten Ordnung mit P, Q und R bezeichnet. Ferner ist zur Anzeige des Arguments oder der variablen ganzen Zahl k für k=0, 1, 2, 3 usw. der Grundoperator in jeder Grundoperatorfolge mit einem grundsätzlichen Index bezeichnet. Somit sind die Integrations- Grundoperatoren der entsprechenden Folge mit P₀ für k=0, P₁ für k=1, P₂ für k=2, P₃ für k=3 usw. bezeichnet. Ähnlich sind die Differentialoperatoren der aus dem Differentialoperator der ersten Ordnung erzeugten Folge mit Q₀ für k=0, Q₁ für k=1, Q₂ für k=2, Q₃ für k=3 usw. bezeichnet. Die Differentialoperatoren der aus dem Differentialoperator der zweiten Ordnung erzeugten Folge sind mit R₀ für k=0, R₁ für k=1, R₂ für k=2, R₃ für k=3 usw. bezeichnet. Weitere Symbole in der folgenden Beschreibung sind "*" für Faltungen und "S" für Prozeßschritte. Auf der Grundlage dieser Bezeichnungsweisen wird der Prozessor 22 nach Fig. 2 nun unter Bezugnahme auf das in Fig. 6 gezeigte Flußdiagramm beschrieben.
Eine externe Eingabevorrichtung für visuelle Informationen, beispielsweise eine Kamera, liefert ein sichtbares Bild, aus dem ein Bilddatenfeld z. B. mit einer CCD-Anordnung unter gleichmäßiger Abtastung abgeleitet wird. Das so erhaltene Bilddatenfeld wird entweder direkt oder über einen Zwischenspeicher dem Filterprozessor 22 der Filteranordnung 12 (Fig. 2) zugeführt. Der Punkt I in Fig. 2 kennzeichnet den Eingang zur Zuführung des Bilddatenfeldes zum Filterprozessor 22. Diese Anfangsprozedur entspricht dem in Fig. 6 gezeigten Schritt S1, bei dem ein Bilddatenfeld empfangen wird.
Dann wird ein Anfangswert für die variable ganze Zahl k mit "0" eingestellt (Schritt S2 in Fig. 6).
Um die mit dem Bilddatenfeld i(t) zu faltenden Grundoperatoren zu erzeugen, wird ein Signal entweder der Filteranordung 12 über einen externen Eingangsanschluß 34 zugeführt oder von der Entscheidungsvorrichtung 32 innerhalb der Filteranordnung 12 als Eingangssignal an den Generator 20 für die Grundoperatoren gegeben, so daß einer der drei Original-Grundoperatoren, die in den Speicherbereichen 24, 26 und 28 gespeichert sind, ausgewählt wird (Schritt S3 in Fig. 6). Es sei an dieser Stelle angenommen, daß der gewählte Original-Grundoperator der Integrations-Grundoperator P ist. Der Grundoperator P₀ wird dann für die Einstellung von k=0 als einer der Grundoperatoren in der Folge des Integrations-Grundoperators P erzeugt (Schritt S4 in Fig. 6). Der Grundoperator P₀ wird dann von dem Generator 20 abgegeben und dem Filterprozessor 22 zugeführt (Schritt S5 in Fig. 6). Die Faltung des Grundoperators P₀ mit dem Bilddatenfeld erfolgt dann in dem Filterprozessor 22, der ein Faltungssignal als Ausgangsdaten O₀(t) abgibt (Schritt S6 in Fig. 6).
Die Entscheidungsvorrichtung 32 vergleicht die Ausgangsdaten O₀(t) mit vorbestimmten Bedingungen (Schritt S7 in Fig. 6), und wenn diese Bedingungen erfüllt sind, so werden die Ausgangsdaten O₀(t) als Ausgangssignale der Nachverarbeitungseinrichtung 14 (Fig. 2) zugeführt. Wenn die Ausgangsdaten O₀(t) den vorbestimmten Bedingungen nicht genügen, so gibt die Entscheidungsvorrichtung 32 ein Signal an den Generator 20 zur Anforderung eines neuen Original- Grundoperators, d. h. des Grundoperators Q, und schaltet die variable ganze Zahl von k=0 auf k = 1, so daß der neue Original- Grundoperator Q aus dem Speicher ausgelesen und zusammen mit der variablen ganzen Zahl k=1 einem anderen Verfahrensschritt innerhalb des Generators 20 zugeführt wird. Gleichzeitig werden die Ausgangsdaten O₀(t) über eine Rückführung als neues Eingangs-Bilddatenfeld dem Anschluß I des Filterprozessors 22 zugeführt.
Der Generator 20 erzeugt einen neuen Grundoperator Q₁ (Schritt S4 in Fig. 6), der dem Filterprozessor 22 zugeführt wird (Schritt S5 in Fig. 6), in dem das neue Bilddatenfeld O₀(t) und der Grundoperator Q₁ gefaltet werden (Schritt S6 in Fig. 6) und die neuen Ausgangsdaten O₁(t) auftreten, d. h.:
O₁(t) = O₀(t)*Q₁
Dies ist äquivalent zu:
O₁(t) = (i(t)*P₀)*Q₁
Wenn die Ausgangsdaten O₁(t) in der Entscheidungsvorrichtung 32 den vorbestimmten Bedingungen nicht genügen, so wird der Zyklus zur Auswahl eines neuen Original-Grundoperators aus dem Speicher wiederholt und die variable ganze Zahl k um eine Stufe weitergeschaltet, um einen neuen Grundoperator zu erzeugen, der dann als Eingangsinformation dem Filterprozessor 22 zugeführt und mit den Ausgangsdaten des vorherigen Faltungszyklus gefaltet wird. Der Zyklus wird je nach Erfordernis wiederholt, bis die vorbestimmten Bedingungen erfüllt sind.
Solche vorbestimmten Bedingungen können beispielsweise ein bestimmter Kontrastwert der Bilddaten, eine vorbestimmte Abweichung eines visuellen Signals von einem festen Referenzwert, ein bestimmter Signalpegel der Bilddaten und andere Bedingungen sein, die sich auf das Eingangssignal der visuellen Informationen beziehen.
Wie zuvor erläutert, sind die Enddaten, die sich durch Wiederholen mehrerer Zyklen ergeben, in denen jeweils ein neuer Grundoperator erzeugt wird und dieser mit einem Bilddatenfeld aus dem vorherigen Zyklus gefaltet wird, äquivalent den Ausgangsdaten, die sich durch die Faltung eines Anfangs-Bilddatenfeldes mit einem expandierten Operator ergeben, der wiederum durch Falten der Grundoperatoren entsteht.
Bei dieser gerade beschriebenen Operation ist die variable ganze Zahl k als Teil des Hauptprogramms der Filteranordnung in einem Speicher, beispielsweise in einem Lesespeicher des Hauptprogramms 30 (Fig. 2) gespeichert, und die drei verschiedenen Original-Grundoperatoren sind als Subroutinen in den Speicherbereichen 24, 26 28 des Generators 20 gespeichert, die auch Lesespeicher sein können. Bei der Durchführung des Hauptblocks kann eine Schrittfolge bestehend aus Erzeugung, Faltung und Entscheidung in der vorstehend beschriebenen Art in einer Sequenz durchgeführt werden, indem k und eine ausgewählte Subroutine aus dem Speicher ausgelesen werden.
An Hand der Fig. 7 bis 9 werden nun Beispiele der Anwendung expandierter Operatoren beschrieben, die zu Ausgangsdaten führen, welche äquivalent den zuvor beschriebenen Ausgangsdaten sind.
In Fig. 7A bis 7C ist dargestellt, wie expandierte Operatoren aus dem ersten Original-Grundoperator entstehen, wie er zuvor erläutert wurde. Dies ist der Integrations-Grundoperator I(n, k), der durch die Gleichung (5) angegeben wird. Fig. 7A zeigt die Integrations-Grundoperatoren für Werte k=0, k=1 und k=2.
Fig. 7B zeigt einen expandierten Integrationsoperator der ersten Hierarchie, der durch Faltung der Integrations- Grundoperatoren für k=0 und für k=1 entsteht. Fig. 7C zeigt den expandierten Integrationsoperator der zweiten Hierarchie, der durch Faltung des expandierten Integrationsoperators der ersten Hierarchie mit dem Integrations-Grundoperator für k=2 entsteht. Die durch die Faltung des expandierten Integrationsoperators der zweiten Hierarchie mit dem Anfangs-Bilddatenfeld erhaltenen Ausgangsdaten A sind äquivalent den Ausgangsdaten A₂, die sich durch den folgenden sukzessiven Faltungsprozeß ergeben.
Zunächst ergeben sich Ausgangsdaten A₀, wobei A der gewählte Original-Grundoperator ist und 0 seine Anwendung für k=0 kennzeichnet, durch Falten eines Anfangs-Bilddatenfeldes mit dem Integrations-Grundoperator für k=0. Neue Ausgangsdaten A₁ ergeben sich dann durch Falten der Ausgangsdaten A₀ mit dem Integrations-Grundoperator für k=1. Danach ergeben sich neue Ausgangsdaten A₂ durch Falten der Ausgangsdaten A₁ mit dem Integrations-Grundoperator für k=2. Dieses Verfahren sukzessiver Faltungsprozesse erzeugt Ausgangsdaten A₂, die äquivalent den Ausgangsdaten A sind, welche sich durch Falten des expandierten Integrationsoperators der zweiten Hierarchie mit einem Anfangs-Bilddatenfeld ergeben.
Wenn dieselben und/oder verschiedene Integrations-Grundoperatoren nacheinander mit den zuvor erhaltenen Ausgangsdaten (Bilddatenfeld) wiederholt gefaltet werden, so erhält man eine endliche Zahl verschiedener expandierter Integrationsoperatoren. Diese endliche Zahl hat die Wirkung mehrerer Tiefpaßfilter mit festen Grenzfrequenzen, was leicht einzusehen ist.
Fig. 8 zeigt, wie der expandierte Differentialoperator aus dem Integrations-Grundoperator I(n, k) und dem Differential- Grundoperator der ersten Ordnung D(+)(n, k) erhalten wird. In diesem Fall ergibt sich der expandierte Differentialoperator durch Falten des Integrations-Grundoperators für k=0 mit dem Differential-Grundoperator der ersten Ordnung für k=1, wie es in Fig. 8A gezeigt ist. Die Ausgangsdaten B₁, die sich durch sukzessive Faltungsprozesse der vorstehend beschriebenen Art ergeben, sind äquivalent den Ausgangsdaten B, die man durch direktes Falten eines Anfangs- Bilddatenfeldes mit dem expandierten Differentialoperator der ersten Ordnung erhält. Diese Äquivalenz wird im folgenden erläutert.
Zunächst erhält man Ausgangsdaten B₀ durch Falten des Integrations- Grundoperators für k=0 mit einem Anfangs-Bilddatenfeld. Die Ausgangsdaten B₁ erhält man dann durch Falten des Differential-Grundoperators der ersten Ordnung für k=1 mit den zuvor erhaltenen Ausgangsdaten B₀.
Fig. 8B zeigt den expandierten Differentialoperator der zweiten Hierarchie, der sich durch Falten des Integrations- Grundoperators der ersten Hierarchie mit dem Differential- Grundoperator der ersten Ordnung für k=2 ergibt. Wenn die Faltung des Integrations-Grundoperators der ersten Hierarchie mit demselben und/oder verschiedenen Differential- Grundoperatoren der ersten Ordnung durchgeführt wird, so erhält man eine endliche Zahl expandierter Differentialoperatoren, und eine endliche Zahl expandierter Differential- Operatorgruppen wirkt wie mehrere Bandpaßfilter mit festen Mittenfrequenzen, wie leicht einzusehen ist.
Fig. 9 dient zur Erläuterung, daß eine endliche Zahl expandierter Emphasisoperatoren erzielbar ist, wenn bei dem in Fig. 8 gezeigten Prozeß Differential-Grundoperatoren der zweiten Ordnung für k=1 (Fig. 9A) und für k=2 (Fig. 9B) an Stelle des Differential-Grundoperators der ersten Ordnung für k=2, wie er bei dem Prozeß nach Fig. 8 verwendet wurde, vorgesehen sind. Die so erhaltene endliche Zahl von Gruppen expandierter Emphasisoperatoren wirkt wie mehrere Seitenband-Unterdrückungsfilter mit regelmäßig gedehnten Feldern, wie leicht einzusehen ist.
Aus den vorstehenden Erläuterungen wird erkennbar, daß die Filteranordnung nach der Erfindung nur eine geringe Zahl an Original-Grundoperatoren in geeigneten Speicherbereichen, beispielsweise in Lesespeichern, benötigt, die dann zusammen mit einem geeigneten Wert der variablen ganzen Zahl k gelesen werden, um einen Grundoperator in der gewählten Grundoperatorfolge zu bilden und diesen dann dem Filterprozessor 22 zuzuführen. Deshalb wird bei Anwendung des erfindungsgemäßen Verfahrens gegenüber einem Verfahren mit bisher üblichen Filteranordnungen die erforderliche Speicherkapazität wesentlich reduziert und die Rechengeschwindigkeit beachtlich erhöht.
Es wurde auch gezeigt, daß bei Koeffizienten der Elementfunktionen, die ein Mehrfaches von Zwei sind, wie bei den Original-Grundoperatoren gemäß Gleichungen (5), (7) und (9) die arithmetischen Operationen durch nur eine Bitverschiebung erfolgen, so daß die Anzahl arithmetischer Operationen für den Filterprozeß noch weiter verringert wird. Obwohl diese Original-Grundoperatoren Elementfunktionen haben, die den Bestandteil 2k haben, werden die Effizienz und die Vorteile der arithmetischen Operationen, nämlich die hohe Rechengeschwindigkeit und die verringerte Speicherkapazität, mit einer Filteranordnung nach der Erfindung erreicht.
Die Anwendung der arithmetischen Operationszahl wird in Verbindung mit dem expandierten Integrationsoperator der zweiten Hierarchie erläutert, wie er in Fig. 7 gezeigt ist. Fig. 10 ist eine Darstellung zur Erläuterung der arithmetischen Operationszahl für die Faltung eines Bilddatenfeldes mit jedem Integrations-Grundoperator.
In Fig. 10A ist eine Bilddatenfolge 40 mit N Bits dargestellt. Zunächst sei der Fall betrachtet, daß der Integrations- Grundoperator für k=0, nämlich I(n, 0) nach Fig. 7A, gewählt ist und mit einem Bilddatenfeld gefaltet wird. Unter Berücksichtigung eines Operators mit einer Länge von drei Bits und des gewünschten Genauigkeitsgrades der Faltung wird diese so durchgeführt, daß die Bitposition des Operators für n=0 mit allen Bits gefaltet wird, mit Ausnahme der Bits an beiden Enden der Bilddatenfolge, d. h. des ersten und des n-ten Bits, die in Fig. 10a schraffiert dargestellt sind. Daraus folgt, daß der Operator aus drei Bits besteht, während die Bitzahl der zu faltenden Bilddatenfolge N-2 beträgt, so daß die Gesamtzahl arithmetischer Operationen für die Faltung 3(N-2) ist.
Die durch die Faltung gemäß Fig. 10A erhaltenen Ausgangsdaten bilden ein neues Eingangs-Bilddatenfeld 42, das in Fig 10B gezeigt ist. Deshalb erscheinen im Falle der Faltung mit dem Integrations-Grundoperator für k=1 nach Fig. 7B die drei Teilbits dieses Operators an drei Bitpositionen, die jeweils durch zwei Bits voneinander getrennt sind, und entsprechend werden die arithmetischen Operationen an der Bitposition n=0 vom vierten bis zum (n-3)-ten Bit der Bilddatenfolge durchgeführt. Es ergeben sich dann insgesamt sechs Bits Bilddaten, d. h. das erste, zweite und dritte, das (N-2)-te, das (N-1)-te und das N-te Bit, die in Fig. 10B schraffiert sind, werden der arithmetischen Operation unterzogen. Diese sechs Bilddatenbits sind aber insignifikant (wenn nicht bedeutungslos), so daß die durch die Faltung erhaltenen Daten nicht genutzt werden. In diesem Fall sind jedoch die sieben Bits ausgehend von jedem Ende der Bilddatenfolge bei der Faltung bedeutungslos, so daß die dabei erhaltenen Daten nicht genutzt werden. Da der Operator, wie zuvor beschrieben, aus drei Bits besteht, während die Bitzahl der zu faltenden Bilddatenfolge (N-6) beträgt, ergibt sich eine Gesamtzahl der arithemtischen Operationen von 3(N-6).
Die Faltung der auf diese Weise erhaltenen Ausgangsdaten ist in Fig. 10C als neues Bilddatenfeld 44 dargestellt, und seine Faltung mit dem Integrations-Grundoperator für k=2 gemäß Fig. 7A wird durchgeführt. In diesem Fall handelt es sich um einen Operator, bei dem drei seiner Bits an drei Bitpositionen erscheinen, die durch vier Bits voneinander getrennt sind, und zusätzlich werden die sieben Bits ausgehend von jedem Ende der Bilddatenfolge, die in Fig. 10C schraffiert sind, der arithmetischen Operation unterzogen. In diesem Fall sind die sieben Bits ausgehend von jedem Ende der Bilddatenfolge bedeutungslos bei der Faltung, so daß die daraus erhaltenen Daten nicht genutzt werden. Deshalb wird die Faltung von dem achten bis zum (N-6)-ten Bit durchgeführt. Daher ergibt sich entsprechend dem vorstehend beschriebenen Verfahren für die arithmetischen Operationen die Gesamtzahl 3(N-14).
Entsprechend den drei vorstehend beschriebenen Sequenzen beträgt die Gesamtzahl Nc der bei den drei Faltungen durchgeführten arithmetischen Operationen
Nc = 3(N-2) + 3(N-6) + 3(N-14) = 9N-66
Deshalb müssen für ein Bilddatenfeld mit 100 Bits, d. h. für N=100, insgesamt für den Faltungsprozeß 834 arithmetische Operationen durchgeführt werden.
Im Vergleich dazu ist die Anzahl N′c arithmetischer Operationen bei Verwendung eines bisher üblichen Filterverfahrens mit Faltung eines expandierten Integrationsoperators der zweiten Ordnung, wie er in Fig. 7C gezeigt ist, für ein Anfangs-Bilddatenfeld 40 der in Fig. 10A gezeigten Art
N′c = 15N-210
so daß bei einem Bilddatenfeld 40 nach Fig. 10A mit 100 Bits Länge die Gesamtzahl arithmetischer Operationen 1290 beträgt, also höher als 834 ist, wie sie bei einem Filterverfahren nach der Erfindung anfällt.
Die Gleichung für N′c wurde für ein Beispiel bestimmt, bei dem das Bilddatenfeld aus N Bits und der Operator zweiter Ordnung aus 15 Bits besteht. Da sieben Bits ausgehend von beiden Enden des Bilddatenfeldes bei der Faltung bedeutungslos sind, wird die Faltung somit von dem achten bis zum (N-8)-ten Bit des 15 Bits langen Operators durchgeführt. Es ergibt sich:
N′c=15 (N-2 · 7)
=15 (N-14)
=15N-210
Aus den vorstehenden Erläuterungen ist leicht zu erkennen, daß die Anwendung bisheriger Filterverfahren, bei denen ein expandierter Operator für jede Faltung zu erzeugen ist und dann direkt mit dem Anfangs-Bilddatenfeld gefaltet wird, die Zahl arithmetischer Operationen größer als bei Faltung eines Integrations-Grundoperators I(n ,k) mit einem Bilddatenfeld ist, das zuvor durch einen sequentiellen Faltungsprozeß erhalten wurde, bei dem die variable ganze Zahl k von einem kleinen zu einem großen Wert zunimmt. Dieser Vorteil kommt noch deutlicher zum Ausdruck bei Zunahme der Zahl der Bits in dem Bilddatenfeld, d. h. mit zunehmenden Werten N. Wenn ferner der Original-Grundoperator aus einer Elementfunktion mit Koeffizienten besteht, die ein Mehrfaches von Zwei sind, so wird die Faltungsoperation nach der Erfindung in einer Anzahl durchgeführt, die gleichfalls ein Mehrfaches von Zwei ist, während im Falle bisher üblicher Frequenzfilterverfahren alle Multiplikationsschritte in den erforderlichen arithmetischen Operationen enthalten sind. Deshalb ist leicht einzusehen, daß die Zahl arithmetischer Operationen durch die Erfindung wesentlich herabgesetzt wird.
Im folgenden wird die Anwendung einer Filteranordnung nach der Erfindung bei einer automatischen Fokussiereinrichtung einer fotografischen Kamera beschrieben.
Fig. 11 zeigt in Blockdarstellung den Aufbau einer Kamera, die ein automatisches Fokussiersystem enthält. Die Kamera hat ein Objektiv 51 und ein Kameragehäuse 81, an dem das Objektiv 51 zu befestigen ist.
Das Objektiv 51 enthält ein Linsensystem 54 mit einer Linse 53, die bei der automatischen Fokussierung längs einer optischen Achse bewegt werden kann. Ferner ist eine Antriebstransmission 55 mit einer Kupplung 55a, einem Getriebe 55b, einem Schraubenelement 55c und zugehörigen Komponenten vorgesehen, wodurch die Antriebstransmission 55 die Kraft einer (noch zu beschreibenden) Antriebsvorrichtung auf die bewegliche Linse 53 überträgt, so daß diese um ihre optische Achse in die jeweils richtige Fokussierungsposition gedreht wird. Ein Objektiv-Lesespeicher 57 enthält Daten über das Objektiv und in der Kamera ablaufende automatische Prozesse, beispielsweise den Wert einer Arbeitsblende des Objektivs 51, Informationen über die Position der beweglichen Linse 53 usw. Schließlich ist ein elektrisches Kontaktfeld 59 auf einer Seite des Objektivs 51 vorgesehen, um dieses elektrisch mit dem Kameragehäuse 81 zu verbinden.
Das Kameragehäuse 81 enthält ein optisches System, das einen Hauptspiegel 83, einen Nebenspiegel 85, eine Fokussierungsplatte 87, ein Pentaprisma 89 und zugehörige Komponenten umfaßt. Ein Teil des Lichtes eines Objekts, das durch das Objektiv 51 eintritt, wird auf einer Bildfokussierungseinheit 91 fokussiert. Vorzugsweise ist diese gemäß bekannter Technik als Brennpunkt-Auswertesystem aufgebaut und enthält dann einen CCD-Sensor.
Das Kameragehäuse 81 enthält ferner eine automatische Fokussiersteuereinheit (PCU) 93, die die doppelte Funktion der Steuerung der Fokussierungseinheit 91 und der Steuerung eines Antriebsmechanismus 95 für die bewegliche Linse 53 erfüllt. Der Antriebsmechanismus 95 umfaßt einen Autofokusmotor 95a, ein Getriebe 95b, eine Kupplung 95c und einen Codierer 95d, die gemeinsam die Drehgeschwindigkeit des Autofokusmotors 95a steuern, welcher die bewegliche Linse 53 des Objektivs 51 entsprechend Fokussierungsdaten verschiebt, die von der Fokussiersteuereinheit 93 empfangen werden. Die Antriebskraft des Antriebsmechanismus 95 wird über die Kupplung 95c zur Außenseite des Kameragehäuses 81 übertragen, an der eine Verbindung mit der Kupplung 55a des Objektivs 51 erfolgt. Dadurch kann die Linse 53 in der einen oder der anderen Richtung relativ zu ihrer optischen Achse verschoben bzw. gedreht werden. Die Kamera ist so aufgebaut, daß der Motor 95a eine vorbestimmte konstante Drehzahl hat, so daß die Linse 53 längs ihrer optischen Achse mit konstaner Geschwindigkeit bewegt wird.
Das Kameragehäuse 81 ist ferner mit Fotosensoren 97a und 97b für eine automatische Belichtungssteuerung ausgerüstet, die eine Belichtungssteuereinheit (DPU) 97 ansteuern. Das Kameragehäuse 81 enthält auch eine Anzeigesteuereinheit (IPU) 99 und eine zentrale Verarbeitungseinheit (CPU) 101, die die Fokussiersteuereinheit 93 steuert und so aufgebaut ist, daß der Objektiv-Lesespeicher 57 des Objektivs 51 von ihr gesteuert wird. Das Kameragehäuse 81 hat auch ein elektrisches Kontaktfeld 103, das dem Kontaktfeld 59 des Objektivs 51 entspricht und die Signalübertragung von der zentralen Verarbeitungseinheit 101 zum Lesespeicher 57 ermöglicht.
Bei der Anwendung der Erfindung auf die Autofokussiereinrichtung dieser Kamera sind mindestens die in Fig. 1 und 2 gezeigte Filteranordnung 12 sowie die Nachverarbeitungseinrichtung 14 nach Fig. 1 in der zentralen Verarbeitungseinheit 101 vorhanden. Die Eingabevorrichtung 10 (Fig. 1) für externe visuelle Informationen entspricht den Komponenten 54, 83 und 85 des optischen Systems, und die Bildfokussiereinheit 91 ist ein CCD-Speicher. Die gesteuerte Antriebseinrichtung 16 nach Fig. 1 entspricht dem Antriebsmechanismus 95 innerhalb des Kameragehäuses 81 und der Antriebstransmission 55.
Die zentrale Verarbeitungseinheit (CPU) 101 enthält einen Hauptspeicherbereich 30 (Fig. 2) mit einem Lesespeicher und einem Arbeitsspeicher sowie einen oder mehrere Subroutine- Speicherbereiche 24 bis 28 (Fig. 2) zur Erzeugung der Grundoperatoren und Abgabe von Eingangssignalen für den Filterprozessor 22. In den Subroutine-Speicherbereichen 24 bis 28 sind z. B. drei Original-Grundoperatoren der vorstehend beschriebenen Art gespeichert, nämlich der Integrationsoperator I(n, k) gemäß Gleichung (5), der Differentialoperator der ersten Ordnung D(+)(n, k) gemäß Gleichung (7) und der Differentialoperator der zweiten Ordnung D′′(n, k) gemäß Gleichung (9). Diese Operatoren sind so gespeichert, daß sie bei Empfang eines entsprechenden Signals von der Entscheidungsvorrichtung 32 frei gelesen werden können. Ähnlich ist die variable ganze Zahl k in dem Hauptprogrammspeicherbereich 30 so gespeichert, daß sie aus diesem frei gelesen und dem Generator 20 zur Bildung der Grundoperatoren zugeführt werden kann.
Die zentrale Verarbeitungseinheit 101 hat einen ersten Speicher 110 und einen zweiten Speicher 112 (Fig. 12) zur vorübergehenden Speicherung von Daten wie Bilddaten und/ oder Ausgangsdaten, die während des Filterprozesses erzeugt werden.
Im folgenden wird eine Art der Arbeitsweise der Erfindung an Hand des in Fig. 13 gezeigten Flußdiagramms beschrieben.
Die Erfindung ermöglicht eine hochgenaue Fokussierung einer fotografischen Kamera. Hierzu wird dieser Prozeß durch Nutzung von Informationen oder Daten durchgeführt, die hochfrequente Komponenten aus dem Frequenzspektrum eines sichtbaren Bildes enthalten. Die Amplitude dieser Komponenten entspricht dem Bildkontrast. Ist sie nicht groß, d. h. gleich oder kleiner als die Rauschamplitude, so sind solche Komponenten für den Autofokusprozeß schädlich. Durch Anwendung des Filterverfahrens können daher solche Frequenzkomponenten, die im Rauschen enthalten und damit nutzlos sind, ausgesondert werden.
In einigen Fällen kann es nötig sein, die Rauschkomponente des sichtbaren Bildes zu eliminieren, die Frequenzkomponenten enthält, welche höher als die hochfrequenten Komponenten des Objekts sind. Deshalb wird im folgenden ein Verfahren beschrieben, bei dem von der hochfrequenten Komponente zur niederfrequenten Komponente eines sichtbaren Bildes gefiltert wird.
Zunächst wird die Filteranordnung durch sequentielles Lesen des Hauptprogramms aus dem Hauptprogrammspeicher 30 aktiviert, und dabei wird das Anfangs-Bilddatenfeld, das von dem CCD-Sensor der Bildfokussiereinheit 91 über die Fokussiersteuereinheit 93 empfangen wurde, vorübergehend in einem ersten Speicher 110 gespeichert (Schritt S10 in Fig. 13).
Danach werden Anfangsbedingungen derart eingestellt, daß der Integrationsoperator I(n, k), der als ein Original- Grundoperator im Speicherbereich 24 des Generators 20 gespeichert ist, entweder durch eine geeignete externe Vorrichtung wie eine Tastatur oder automatisch durch die Entscheidungsvorrichtung 32 in der Filteranordnung 12 ausgewählt wird, und die variable ganze Zahl k wird auf k=0 eingestellt (Schritt S12 in Fig. 13).
Dann wird das Programm zur Bildung des Integrationsoperators I(n, k) an der k-ten Position eingeleitet, indem der Original-Grundoperator aus dem Speicherbereich 24 ausgelesen wird. Mit k=0 erzeugt der Generator 20 den Integrations- Grundoperator nach Fig. 3A. Danach wird das Anfangs- Bilddatenfeld aus dem ersten Speicher 110 zum Filterprozessor 22 übertragen. Gleichzeitig damit empfängt der Filterprozessor 22 den Integrations-Grundoperator von dem Generator 20, so daß die Faltung des Anfangs-Bilddatenfeldes und des Integrations-Grundoperators durchgeführt wird und die erhaltenen Ausgangsdaten in einem zweiten Speicher 112 gespeichert werden (Schritt S14 in Fig. 13).
Die Ausgangsdaten werden der Entscheidungsvorrichtung 32 zugeführt. In diesem Fall erfolgt keine Entscheidung, statt dessen wird ein weiterer Original-Grundoperator wie der Differentialoperator der zweiten Ordnung D′′(n, k) benannt, und die variable ganze Zahl k wird auf k=1 geändert (Schritt S15 in Fig. 13). Sie wird als Eingangsgröße dem Generator 20 zugeführt. Da der Differentialoperator der zweiten Ordnung als Original-Grundoperator verwendet und die ganze Zahl k um Eins erhöht wird, besteht die Möglichkeit der Aufnahme eines Signals der hochfrequenten Komponente infolge der Verringerung des Frequenzfilterwirkungsgrades der Filteranordnung.
Das Programm zur Erzeugung des Differentialoperators der zweiten Ordnung D′′(n, k) wird aus dem Speicherbereich 26 gelesen, so daß der Generator 20 diesen neuen Original- Grundoperator in Verbindung mit dem Wert k=1 zur Erzeugung des Differential-Grundoperators zweiter Ordnung gemäß Fig. 5B benutzt. Dieser wird dann dem Filterprozessor 22 zugeführt, der auch das zuvor erzeugte Bilddatenfeld als Ausgangsdaten des zweiten Speichers 112 empfängt. Der Filterprozessor 22 faltet dann das aus der vorherigen Faltung erhaltene Bilddatenfeld mit dem Differential-Grundoperator zweiter Ordnung, woraus sich ein Bilddatenfeld ergibt, das in dem ersten Speicher 110 gespeichert wird (Schritt S16 in Fig. 13).
Danach sucht oder stellt die Entscheidungsvorrichtung 32 den Spitzenwert D′′p des in dem ersten Speicher 110 gespeicherten Bilddatenfeldes fest (Schritt S17 in Fig. 13).
Die Entscheidungsvorrichtung 32 bestimmt, ob der so festgestellte Spitzenwert D′′p größer als ein vorbestimmter Schwellenwert C ist (Schritt S18 in Fig. 13). Wenn dies der Fall ist, so hat der Spitzenwert D′′p eine hochfrequente Komponente, die zur Verarbeitung der Fokussierungsinformation ausreicht und nicht im Rauschen untergeht. In diesem Fall wird das Bilddatenfeld der Autofokussiereinrichtung über die Nachverarbeitungseinrichtung 14 (Fig. 1) zugeführt.
Wenn aber der Spitzenwert D′′p nicht über dem vorbestimmten Schwellenwert C liegt, so erhält er keine hochfrequente Signalkomponente, die zufriedenstellend als Fokussierinformation nutzbar ist. Deshalb stellt die Entscheidungsvorrichtung 32 fest, ob die variable ganze Zahl k kleiner als eine zuvor bestimmte Steuerzahl k₀, z. B. k₀=4, ist (Schritt S19 in Fig. 13). Ist die variable ganze Zahl k größer als die Steuerzahl k₀, so ist es unmöglich, die gewünschte Fokussierinformation zu erhalten, auch wenn der Prozeß wiederholt wird. Deshalb werden das in dem ersten Speicher 110 gespeicherte Bilddatenfeld und das aus dem vorherigen Faltungszyklus erhaltene Bilddatenfeld aus dem Speicher 112 addiert. Die so erhaltene Summe wird in dem ersten Speicher 110 gespeichert (Schritt S20 in Fig. 13) und als Ausgangsdaten der Autofokuseinrichtung zugeführt.
Wenn andererseits die variable ganze Zahl k kleiner als die Steuerzahl k₀ ist, so werden die in dem zweiten Speicher 112 gespeicherten Daten in den ersten Speicher 110 übertragen (Schritt S21 in Fig. 13) und als neues Bilddatenfeld betrachtet, das dem Filterprozessor 22 zugeführt wird. Der Prozeß wird dann zu dem Schritt S14 in Fig. 13 zurückgeführt. Da aber die variable ganze Zahl k an dieser Stelle auf k=1 eingestellt ist, erzeugt der Generator 20 den in Fig. 3B gezeigten Integrations-Grundoperator, der wiederum mit dem Bilddatenfeld aus dem ersten Speicher 110 in dem Filterprozessor 22 gefaltet wird. Die erhaltenen Ausgangsdaten in der Form eines neuen Bilddatenfeldes werden in dem zweiten Speicher 112 gespeichert (Schritt S14 in Fig. 13).
Dann wird die variable ganze Zahl k entsprechend dem Schritt S15 in Fig. 13 um Eins auf k=2 erhöht, so daß der Differential- Grundoperator zweiter Ordnung, der in Fig. 5C gezeigt ist, erzeugt und mit den aus dem vorherigen Schritt S14 erhaltenen Ausgangsdaten in dem Filterprozessor 22 gefaltet wird. Die daraus erhaltenen Ausgangsdaten werden in dem ersten Speicher 110 gespeichert (Schritt S16 in Fig. 13). Der Spitzenwert D′′p der in Schritt S16 erhaltenen Ausgangsdaten, der in dem ersten Speicher 110 gespeichert ist, wird wie zuvor beschrieben gesucht (Schritt S17 in Fig. 13) und dem Schritt S18 in Fig. 13 zugeführt, der bestimmt, ob der Spitzenwert D′′p höher als der vorbestimmte Schwellenwert C ist. Damit wird auch bestimmt, ob der Spitzenwert D′′p eine Frequenzkomponente enthält, die kleiner als diejenige des vorhergehenden Prozesses ist. Wenn der Spitzenwert D′′p größer als der Schwellenwert C ist, so werden die Ausgangsdaten als nutzbare Daten dem Autofukusprozeß zugeführt. Wenn der Spitzenwert D′′p nicht größer als der Schwellenwert C ist, so werden die Ausgangsdaten in Schritt S19 weiter verarbeitet. Wenn die variable ganze Zahl k nicht kleiner als die Steuerzahl k₀ (Schritt S19 in Fig. 13) ist, so wird der Schritt S20 durchgeführt, um die Summe der Daten des ersten und des zweiten Speichers zu bilden und diese in den ersten Speicher in bereits beschriebener Weise einzuschreiben. Die erhaltene Summe wird dann als nutzbare Ausgangsdaten für den Autofokusprozeß genutzt. Wenn der Spitzenwert D′′p kleiner als der Schwellenwert C ist, die variable ganze Zahl k jedoch kleiner als die Steuerzahl k₀ ist (Schritte S18 und S19), so wird alternativ der Schritt S21 durchgeführt, worauf der Schritt S14 folgt, und diese Schritte werden mit unterschiedlichen variablen ganzen Zahlen k wiederholt, um endgültige Ausgangsdaten zu erhalten, die nicht im Rauschen untergehen und eine Frequenzkomponente enthalten, die kleiner als diejenige des vorherigen Prozesses ist, jedoch als nutzbare Fokusinformation ausreicht.
Wie vorstehend beschrieben und dem Flußdiagramm nach Fig. 13 entspricht, erhält man einen maximalen Differenzwert für eine Frequenz in dem verarbeiteten sichtbaren Bild eines Objekts durch Faltung des Differential-Grundoperators zweiter Ordnung mit dem zuvor erhaltenen Bilddatenfeld. Ein solcher Faltungsprozeß wird nacheinander wiederholt, so daß sich Ausgangsdaten ergeben, die zunächst einen maximalen Differenzwert haben, der höher als ein vorbestimmter Schwellenwert ist und von einer maximalen Frequenz sequentiell zu niedrigeren Frequenzen abfällt. Hierzu werden die Faltungen wiederholt und die nutzbaren Ausgangsdaten ausgewertet und als Steuersignal für die Autofokuseinrichtung der Kamera angewendet.
Wenn die Filteranordnung nach der Erfindung verwendet wird, so kann ein Objekt, dessen Lichtintensität sich ändert, automatisch mit hoher Genauigkeit fokussiert werden, während dies nach den bisher üblichen Filterverfahren mit festen Differentialwerten nicht möglich war.
Die Erfindung ist auf das zuvor beschriebene Anwendungsbeispiel nicht beschränkt, sondern es können auch zahlreiche andere Ausführungsformen verwirklicht werden, wie sie weiter oben auch genannt wurden. Beispielsweise kann die Filteranordnung nach der Erfindung auch anders als beschrieben aufgebaut sein, solange eine der Erfindung entsprechende Funktion erzielt wird.
Grundsätzlich enthält die Filteranordnung Mittel zur Speicherung eines oder mehrerer vorbestimmter Original-Grundoperatoren, aus denen ein Original-Grundoperator bei Empfang eines Wertes für die variable ganze Zahl k ausgelesen wird, der dem Generator 20 für den Grundoperator zugeführt wird. Ein Grundoperator wird in derselben Folge wie der gespeicherte Original-Grundoperator erzeugt und einem Filterprozessor zugeführt, in dem der erzeugte Grundoperator mit einem Bilddatenfeld gefaltet wird, das aus einer vorhergehenden Faltungsfolge hervorgeht. Dies hängt ab von Bedingungen, die aus dem jeweils erhaltenen Bilddatenfeld entnommen werden.
Bei dem Anwendungsbeispiel der Erfindung in Verbindung mit einer Autofokussiereinrichtung einer Kamera und entsprechend dem Flußdiagramm nach Fig. 13 werden der Integrationsoperator und der Differentialoperator zweiter Ordnung als die beiden Original-Grundoperatoren verwendet. Es ist jedoch auch möglich, einen Operator oder eine Kombination von zwei oder mehr Operatoren, die aus dem Integrationsoperator, dem Differentialoperator erster Ordnung und dem Differentialoperator zweiter Ordnung ausgewählt sind, sowie andere geeignete Operatoren in Verbindung mit einem Verfahren und einer Anordnung nach der Erfindung zu benutzen.
Anstelle des Differentialoperators zweiter Ordnung D′′(n, k), wobei gilt
D(-)(n, k) = -(1/2) · [U(n-2k) - U(n+2k)]
kann D′′(n, k) auch durch sequentielles Falten von D(+)(n, k) und D(-)(n, k) mit den Ausgangsdaten erhalten werden.
Auch wenn
N(n) = -U(n)
anstelle von D′′(n, k) verwendet wird, so kann D(-)(n, k) durch sequentielles Falten von D(+)(n, k) und N(n) mit dem Ausgangs-Bilddatenfeld erhalten werden, so daß der Original- Grundoperator D(-)(n, k) und/oder N(n) verwendet werden kann.
Es ist ferner darauf hinzuweisen, daß die Erfindung nicht nur auf die in Fig. 6 und 13 gezeigten Flußdiagramme des vorstehend beschriebenen Ausführungsbeispiels beschränkt ist, sondern daß andere geeignete Flußdiagramme eingesetzt werden können. Diese können abhängig von Aufbau und Arbeitsweise der Filteranordnung nach der Erfindung ausgebildet sein.
Ferner kann die Filteranordnung nach der Erfindung nicht nur auf ein eindimensionales Bilddatenfeld, sondern in gleicher Weise auf zweidimensionale Bilddatenfelder angewendet werden, wenn der bzw. die Original-Grundoperatoren geeignet gewählt sind.
Wie vorstehend beschrieben, können mehrere Grundoperatoren in derselben Folge wie der Original-Grundoperator aus diesem mit nur einem Erzeugungsprogramm gebildet werden. Durch die erste Faltung eines der Grundoperatoren mit einem Anfangs- Bilddatenfeld ergeben sich die ersten Ausgangsdaten als Bilddatenfeld. Das zweite Bilddatenfeld ergibt sich durch die zweite Faltung eines weiteren Grundoperators mit dem zuvor erhaltenen Bilddatenfeld. Das dritte Bilddatenfeld ergibt sich durch eine dritte Faltung eines weiteren Grundoperators mit dem zweiten erhaltenen Bilddatenfeld usw., bis ein endgültiges Datenfeld durch Fortsetzung eines solchen sequentiellen Faltungsprozesses von Grundoperatoren mit jeweils zuvor entwickelten Bilddatenfeldern vorliegt. Der Faltungsprozeß nach der Erfindung kann zu demselben Ergebnis führen, das bei Anwendung eines bisher üblichen Verfahrens erzielt wird, bei dem aber eine direkte Faltung expandierter Operatoren mit einem Anfangs-Bilddatenfeld durchgeführt wird. Als Ergebnis eines Verfahrens und einer Anordnung nach der Erfindung sind bei optischen Frequenzfiltereinrichtungen bei der automatischen Fokussierung und Auswertung in einer Kamera z. B. die folgenden Vorteile realisierbar:
  • (1) Verkürzung der Wortlängen in einem mathematischen Programm,
  • (2) Verringerung der Anzahl von Multiplikationen und anderen mathematischen Operatoren, wodurch die Operationsgeschwindigkeit wesentlich erhöht wird, und
  • (3) sequentielles Ausführen des Filterprozesses von einer großen zu einer kleinen Informationsmenge dadurch, daß, je geringer der Wert der variablen ganzen Zahl k ist, um so höher die Frequenz der in dem Datenfeld vorhandenen Informationen ist, so daß das Verfahren ausgehend von einem kleinen Positionswert k (hinsichtlich hochfrequenter Komponenten) zu einem hohen Positionswert k (hinsichtlich niederfrequenter Signalkomponenten) durchgeführt werden kann. Auf diese Weise eliminiert die Filteranordnung unerwünschtes hochfrequentes Rauschen durch Ausfiltern hochfrequenter Komponenten, während hochfrequente Informationen erhalten werden, die den Daten des visuellen Bildes entsprechen.
Somit eignet sich die beschriebene Filteranordnung bestens zum Einsatz in Verarbeitungseinrichtungen für sichtbare Bilder wie Bildmuster-Erkennungseinrichtungen und Fokussierungs- und Auswertungseinrichtungen für Kameras.

Claims (28)

1. Verfahren zur Durchführung eines Filterprozesses in einem Raumbereich eines Anfangs-Bilddatenfeldes, das aus einem externen visuellen Bild abgeleitet ist, wobei das Anfangs-Bilddatenfeld in einem Filterprozessor mit einem Grundoperator zur Erzeugung eines Ausgangs-Bilddatenfeldes gefaltet wird, dadurch gekennzeichnet, daß mehrere Grundoperatoren in mindestens einer Grundoperatorenfolge erzeugt werden und daß wiederholte Faltungen jeweils mit einem anderen Grundoperator durchgeführt werden, bei denen das jeweilige Ausgangs-Bilddatenfeld als Eingangs-Bilddatenfeld für die nächstfolgende Faltung verwendet wird, wenn es mindestens eine vorbestimmte Bedingung nicht erfüllt, während es bei Erfüllen dieser Bedingung einer Nachverarbeitungseinrichtung zugeführt wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Grundoperatoren durch Erzeugen eines Original-Grundoperators auf der Grundlage mindestens einer der folgenden Elementfunktionen gebildet werden: wobei x=n+K(k), ferner K(k) Null oder eine Funktion einer Variablen k, und n die Position gefalteter Bilddaten ist und wobei alle Grundoperatoren in der Grundoperatorenfolge auf den Original-Grundoperatoren basieren.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Grundoperatorenfolge mindestens einen der folgenden Operatoren enthält:
  • a) einen Integrationsoperator I(n, k) folgender Definition: I(n, k) = (U(n)/2) + (1/4)[U(n+2k) + U(n-2k)]
  • b) einen Differentialoperator erster Ordnung D(+)(n, k) folgender Definition: D(+)(n, k) = (1/2)[U(n-2k) - U(n+2k)]
  • c) einen Differentialoperator zweiter Ordnung D′′(n, k) folgender Definition: D′′(n, k) = (U(n)/2) - (1/4)[U(n+2k) + U(n-2k)]wobei k=0, 1, 2, 3 . . . ist.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Grundoperatoren in einer einzigen Grundoperatorenfolge erzeugt werden.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein Steuersignal der Nachverarbeitungseinrichtung die automatische Fokussierungseinrichtung einer Kamera steuert.
6. Filteranordnung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 5 in einem Raumbereich eines anfänglichen Bilddatenfeldes, das aus einer externen Bildeingabevorrichtung für sichtbare Bilder abgeleitet ist, gekennzeichnet durch
  • a) einen Generator (20) zur Erzeugung von Grundoperatoren innerhalb mindestens einer Grundoperatorenfolge,
  • b) einen Filterprozessor (22) zur Faltung eines anfänglichen Eingabe-Bilddatenfeldes und nachfolgender Eingabe-Bilddatenfelder mit jeweils einem Grundoperator zur Erzeugung sukzessiver Ausgangs- Bilddatenfelder entsprechend den gefalteten Eingabe-Bilddatenfeldern,
  • c1) eine Entscheindungsvorrichtung (32) zur Feststellung, ob jedes sukzessive Ausgangs-Bilddatenfeld mindestens eine vorbestimmte Bedingung erfüllt, und
  • c2) zur wahlweisen Abgabe eines der Ausgangs- Bilddatenfelder an eine Nachverarbeitungseinrichtung (14) nur dann, wenn jede vorbestimmte Bedingung von diesem Ausgangs-Bilddatenfeld erfüllt wird.
7. Filteranordnung nach Anspruch 6, gekennzeichnet durch die sequentielle Abgabe der sukzessiven Ausgangs-Bilddatenfelder von der Entscheidungsvorrichtung (32) zurück zum Filterprozessor (22) als Eingabe-Bilddatenfelder immer dann, wenn keine vorbestimmte Bedingung erfüllt wird.
8. Filteranordnung nach Anspruch 7, dadurch gekennzeichnet, daß der Filterprozessor (22) ferner einen anderen Grundoperator der Grundoperatorenfolge mit einem anderen Eingabe-Bilddatenfeld jeweils dann faltet, wenn ein Ausgangs-Bilddatenfeld zum Filterprozessor (22) zurückgegeben wird.
9. Filteranordnung nach einem der Ansprüche 6 bis 8, gekennzeichnet durch Mittel zum sequentiellen und wahlweisen Eingeben sukzessiver Ausgangs-Bilddatenfelder des Filterprozessors (22) zurück in den Filterprozessor (22) als sukzessive Eingabe-Bilddatenfelder mit unterschiedlichen Grundoperatoren aus der Grundoperatorenfolge.
10. Filteranordnung nach Anspruch 9, dadurch gekennzeichnet, daß die Entscheidungsvorrichtung (32) ferner eine Rückführleitung zum wahlweisen Eingeben eines jeden Ausgangs- Bilddatenfeldes in den Filterprozessor (22) enthält.
11. Filteranordnung nach Anspruch 9 oder 10, gekennzeichnet durch mindestens einen Speicherbereich zum Aufnehmen sukzessiver Ausgangs-Bilddatenfelder aus dem Filterprozessor (22) und zum wahlweisen Eingeben sukzessiver Ausgangs-Bilddatenfelder zurück in den Filterprozessor (22).
12. Filteranordnung nach einem der Ansprüche 9 bis 11, gekennzeichnet durch mindestens einen Speicherbereich zum Aufnehmen des anfänglichen Eingabe-Bilddatenfeldes aus dem Filterprozessor (22) und zum wahlweisen Eingeben dieses Bilddatenfeldes zurück in den Filterprozessor (22).
13. Filteranordnung nach einem der Ansprüche 6 bis 12, dadurch gekennzeichnet, daß der Generator (20) für Grundoperatoren mehrere Speicherbereiche (24, 26, 28) zur Aufnahme von Original-Grundoperatoren enthält und Werte einer variablen ganzen Zahl k empfängt.
14. Filteranordnung nach Anspruch 13, dadurch gekennzeichnet, daß die Original-Grundoperatoren mindestens einen Integrationsoperator I(n, k), einen Differentialoperator erster Ordnung D(+)(n, k) oder einen Differentialoperator zweiter Ordnung D′′(n, k) umfassen, und daß diese Operatoren jeweils folgendermaßen definiert sind: I(n, k) = (U(n)/2) + (1/4)[U(n+2k) + U(n-2k)],
D(+)(n, k) = (1/2)[U(n-2k) - U(n+2k)] und
D′′(n, k) = (U(n)/2) - (1/4)[U(n+2k) + U(n-2k)],wobei k=0, 1, 2, 3 . . . ist.
15. Filteranordnung nach Anspruch 13 oder 14, dadurch gekennzeichnet, daß der Generator (20) zum Erzeugen der Grundoperatoren einen vorgegebenen Wert einer ganzen Zahl k und eine Anordnung zur Auswahl eines Original-Grundoperators aus einem der Speicherbereiche (24, 26, 28) enthält.
16. Filteranordnung nach einem der Ansprüche 6 bis 15, dadurch gekennzeichnet, daß der Generator (20) für die Grundoperatoren ferner einen Ausgangsanschluß zur Übergabe der Grundoperatoren an den Filterprozessor (22) hat.
17. Filteranordnung nach einem der Ansprüche 6 bis 16, dadurch gekennzeichnet, daß der Filterprozessor (22) eine Übergabeeinheit für die Ausgangs-Bilddatenfelder an die Entscheidungsvorrichtung (32) enthält.
18. Filteranordnung nach einem der Ansprüche 6 bis 17, dadurch gekennzeichnet, daß der Filterprozessor (22) mindestens einen Eingangsanschluß zur Übernahme der anfänglichen Eingabe-Bilddatenanordnung aus der Bildeingabevorrichtung (10) und zur Übernahme von Ausgangs-Bilddatenfeldern aus einem dafür vorgesehenen Speicherbereich oder aus der Entscheidungsvorrichtung (32) enthält.
19. Filteranordnung nach einem der Ansprüche 6 bis 18, dadurch gekennzeichnet, daß die Entscheidungsvorrichtung (32) einen Vergleicher zum Vergleich mindestens einer Bedingung eines jeden Ausgangs-Bilddatenfeldes mit jeweils einer Referenzbedingung enthält.
20. Filteranordnung nach einem der Ansprüche 6 bis 19, dadurch gekennzeichnet, daß die Nachverarbeitungseinrichtung (14) eine Abgabevorrichtung für ein Steuersignal enthält.
21. Filteranordnung nach Anspruch 20, dadurch gekennzeichnet, daß das Steuersignal einer automatischen Fokussiereinrichtung einer Kamera zugeführt wird.
22. Filteranordnung nach einem der Ansprüche 6 bis 21, dadurch gekennzeichnet, daß die Entscheidungsvorrichtung (32) ein Signal an den Generator (20) immer dann abgibt, wenn keine der Bedingungen erfüllt wird, um einen Original-Grundoperator aus einem Speicherbereich (24, 26, 28) des Generators (20) auszuwählen.
23. Filteranordnung nach einem der Ansprüche 6 bis 22, gekennzeichnet durch einen Hauptprogrammspeicher (30) zum Speichern einer variablen ganzen Positionszahl k, zur Abgabe eines die Positionszahl k angebenden Signals an den Generator (20) und zur Abgabe von Steuersignalen an den Filterprozessor (22) und an die Entscheidungsvorrichtung (32).
24. Filteranordnung nach einem der Ansprüche 6 bis 23, dadurch gekennzeichnet, daß die Eingabevorrichtung (10) ein CCD-Element als Bildempfangselement enthält, das in gleichmäßig beabstandeten Abtastintervallen betrieben wird.
25. Filteranordnung nach einem der Ansprüche 6 bis 24, dadurch gekennzeichnet, daß der Filterprozessor (22) einen ersten Speicherbereich für das anfängliche Eingabe-Bilddatenfeld und einen zweiten Speicherbereich für sukzessive Ausgangs-Bilddatenfelder enthält.
26. Filteranordnung nach Anspruch 25, dadurch gekennzeichnet, daß der Filterprozessor (22) eine Anordnung zum wahlweisen Eingeben von Bilddatenfeldern in den ersten und den zweiten Speicherbereich und zum Aufrufen der Bilddatenfelder aus diesen Speicherbereichen enthält.
27. Filteranordnung nach Anspruch 26, dadurch gekennzeichnet, daß der Filterprozessor (22) eine Anordnung zum Kombinieren gespeicherter Bilddatenfelder enthält.
28. Filteranordnung nach einem der Ansprüche 6 bis 27, dadurch gekennzeichnet, daß eine einzige Grundoperatorenfolge vorgesehen ist.
DE3809816A 1987-03-23 1988-03-23 Optisches filterverfahren und filteranordnung zur durchfuehrung des verfahrens Granted DE3809816A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62068541A JP2554255B2 (ja) 1987-03-23 1987-03-23 フイルタリング装置

Publications (2)

Publication Number Publication Date
DE3809816A1 DE3809816A1 (de) 1988-10-06
DE3809816C2 true DE3809816C2 (de) 1992-01-16

Family

ID=13376708

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3809816A Granted DE3809816A1 (de) 1987-03-23 1988-03-23 Optisches filterverfahren und filteranordnung zur durchfuehrung des verfahrens

Country Status (4)

Country Link
US (2) US4908644A (de)
JP (1) JP2554255B2 (de)
DE (1) DE3809816A1 (de)
GB (1) GB2203914B (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2554255B2 (ja) * 1987-03-23 1996-11-13 旭光学工業株式会社 フイルタリング装置
JP2904841B2 (ja) * 1990-01-22 1999-06-14 株式会社リコー 自動合焦装置
JPH04116779A (ja) * 1990-09-07 1992-04-17 Takayama:Kk データ処理装置
JP3823328B2 (ja) * 1994-09-05 2006-09-20 株式会社ニコン 焦点検出装置
US5867211A (en) * 1995-10-27 1999-02-02 Northrop Grumman Corporation Apparatus and method for removing offset and shading from a video signal
US5991456A (en) * 1996-05-29 1999-11-23 Science And Technology Corporation Method of improving a digital image
US5915035A (en) * 1997-01-27 1999-06-22 Aetex Biometric Corporation Method for extracting high-level features for fingerprint recognition
KR100429858B1 (ko) * 1997-05-21 2004-06-16 삼성전자주식회사 적응적 필터를 이용한 촛점 조절장치 및 방법
US7489831B2 (en) * 2005-02-11 2009-02-10 Samsung Electronics Co., Ltd. Method and apparatus for darker region details using image global information
US7522781B2 (en) * 2005-02-11 2009-04-21 Samsung Electronics Co., Ltd. Method and apparatus for image processing based on a mapping function
US20090016571A1 (en) * 2007-03-30 2009-01-15 Louis Tijerina Blur display for automotive night vision systems with enhanced form perception from low-resolution camera images
JP4906673B2 (ja) * 2007-10-24 2012-03-28 株式会社リコー 画像処理装置、画像処理方法及び画像処理プログラム
US9749548B2 (en) 2015-01-22 2017-08-29 Google Inc. Virtual linebuffers for image signal processors
US9756268B2 (en) 2015-04-23 2017-09-05 Google Inc. Line buffer unit for image processor
US10095479B2 (en) * 2015-04-23 2018-10-09 Google Llc Virtual image processor instruction set architecture (ISA) and memory model and exemplary target hardware having a two-dimensional shift array structure
US10291813B2 (en) 2015-04-23 2019-05-14 Google Llc Sheet generator for image processor
US9785423B2 (en) 2015-04-23 2017-10-10 Google Inc. Compiler for translating between a virtual image processor instruction set architecture (ISA) and target hardware having a two-dimensional shift array structure

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5156627A (en) * 1974-11-13 1976-05-18 Canon Kk Butsutaizosenmeidokenshutsuhoshiki
US4179696A (en) * 1977-05-24 1979-12-18 Westinghouse Electric Corp. Kalman estimator tracking system
US4330833A (en) * 1978-05-26 1982-05-18 Vicom Systems, Inc. Method and apparatus for improved digital image processing
US4329588A (en) * 1980-03-21 1982-05-11 University Patents, Inc. Polarization switched optical filtering for transverse tomography
US4331877A (en) * 1980-03-21 1982-05-25 University Patents, Inc. Transverse tomography with optical filtering
US4295721A (en) * 1980-04-23 1981-10-20 Dimitri Rebikoff High pressure and high speed optical enclosure system
US4375081A (en) * 1980-12-05 1983-02-22 Pencept, Inc. Multistage digital filtering utilizing several criteria
JPS57204094A (en) * 1981-06-10 1982-12-14 Hitachi Ltd Pretreatment for voice analyzer
JPS5863904A (ja) * 1981-10-13 1983-04-16 Nippon Kogaku Kk <Nikon> オ−トフオ−カス制御装置
JPS58126520A (ja) * 1981-11-04 1983-07-28 Nippon Kogaku Kk <Nikon> カメラの自動合焦装置
US4474446A (en) * 1982-06-30 1984-10-02 Honeywell Inc. Focal sensor having optical low pass filter
JPS5962811A (ja) * 1982-10-04 1984-04-10 Canon Inc 焦点検出装置
JPH0690357B2 (ja) * 1983-08-11 1994-11-14 株式会社ニコン ずれ量検出装置
JPS6061713A (ja) * 1983-09-16 1985-04-09 Nippon Kogaku Kk <Nikon> 焦点検出装置
JPS59142506A (ja) * 1983-02-02 1984-08-15 Nippon Kogaku Kk <Nikon> 焦点検出装置
JPS59204808A (ja) * 1983-05-09 1984-11-20 Nippon Kogaku Kk <Nikon> 焦点検出装置
JPS59160109A (ja) * 1983-03-03 1984-09-10 Nippon Kogaku Kk <Nikon> 光像検出装置
US4561749A (en) * 1983-02-02 1985-12-31 Nippon Kogaku K.K. Focus detection apparatus
JPS59173841A (ja) * 1983-03-24 1984-10-02 Fujitsu Ltd 汎用5×5論理演算回路
JPS59178341A (ja) * 1983-03-29 1984-10-09 Shimadzu Corp 赤外線ガス分析装置
JPH0672973B2 (ja) * 1983-06-30 1994-09-14 株式会社リコー オ−トフオ−カス方法
DE3433219A1 (de) * 1984-09-10 1986-03-20 Will Wetzlar Gmbh, 6330 Wetzlar Eine auf elektronischer basis arbeitende recheneinrichtung
US4603350A (en) * 1984-12-21 1986-07-29 Rca Corporation Interlaced digital video input filter/decimator and/or expander/interpolator filter
DE3624818A1 (de) * 1985-02-06 1987-02-05 Rca Corp Verfahren und einrichtung zur reduzierung von bilddaten
JPS6224375A (ja) * 1985-07-24 1987-02-02 Fujitsu Ltd フイルタリング制御方式
JPS6247780A (ja) * 1985-08-26 1987-03-02 Fujitsu Ltd 論理フイルタの拡張方式
JPS62202288A (ja) * 1985-08-27 1987-09-05 Fujitsu Ltd 論理フイルタの拡張方式
JPH0756673B2 (ja) * 1986-03-07 1995-06-14 株式会社日立製作所 分割空間フイルタによる画像処理方法
US4720871A (en) * 1986-06-13 1988-01-19 Hughes Aircraft Company Digital image convolution processor method and apparatus
JPS6375982A (ja) * 1986-09-19 1988-04-06 Toshiba Corp 画像処理装置
JP2554255B2 (ja) * 1987-03-23 1996-11-13 旭光学工業株式会社 フイルタリング装置

Also Published As

Publication number Publication date
US4908644A (en) 1990-03-13
GB2203914B (en) 1991-09-11
GB2203914A (en) 1988-10-26
US5128706A (en) 1992-07-07
DE3809816A1 (de) 1988-10-06
JP2554255B2 (ja) 1996-11-13
JPS63234365A (ja) 1988-09-29
GB8806931D0 (en) 1988-04-27

Similar Documents

Publication Publication Date Title
DE3809816C2 (de)
DE69018231T2 (de) Kamera mit selbsttätiger scharfeinstellung.
DE4000343C2 (de) Automatische Fokussiervorrichtung
EP0368151B1 (de) Verfahren zur Bestimmung von Suchpositionen zur Bewegungsschätzung
EP0517324B1 (de) Vorrichtung zur Steuerung des Quantisierers eines Hybridkodierers
DE68929480T2 (de) Kamerasystem
DE2655525B2 (de) Verfahren zur Erweiterung des Schärfentiefebereiches über die durch die konventionelle Abbildung gegebene Grenee hinaus sowie Einrichtung zur Durchführung dieses Verfahrens
DE2725617A1 (de) Verfahren und anordnung zur entfernungsmessung
DE3485935T2 (de) Rekursives digitales filter.
DE3919464C2 (de) Vorrichtung zum Scharfeinstellen einer Kamera
DE3913595C2 (de)
DE102004007637A1 (de) Verfahren zum Erzeugen eines Bildes mit erhöhter Auflösung unter Verwendung einer Mehrzahl von Bildern mit niedriger Auflösung
DE3508400C2 (de) Mustererkennungsvorrichtung
DE3633592C2 (de)
DE69925696T2 (de) Bildaufnahmevorrichtung, Bildanzeigevorrichtung und Informationsaufzeichnungsmedium mit einem Fischaugenobjektiv
DE4437385A1 (de) Verfahren und Vorrichtung zur Bildkorrektur
DE102004017145B4 (de) Verfahren und Vorrichtung zur Ermittlung von Bewegungvektoren, die Bildbereichen eines Bildes zugeordnet sind
EP0897247A2 (de) Verfahren zur Berechnung von Bewegungsvektoren
EP0669585B1 (de) Iterativer Interpolator
DE69120444T2 (de) Vorrichtung zur Erkennung von Sequenzen in einem mehrdimensionalen Signal
DE3127189C2 (de) Digitalfiltervorrichtung mit Resonanzeigenschaften
EP0406693A2 (de) Verfahren zum Filtern digitalisierter Signale
DE3824092C2 (de)
DE3241204A1 (de) In kaskade geschaltete rom-speicher fuer die signalverarbeitung
DE4128977A1 (de) Schaltungsanordnung zur filterung eines datenblockweise transformierten und quantisierten videosignales

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: PENTAX CORP., TOKIO/TOKYO, JP

8339 Ceased/non-payment of the annual fee