-
Die vorliegende Erfindung bezieht
sich auf ein Verfahren und eine Vorrichtung zum Vergleichen von
Bildern.
-
Eine Anwendung des Bewegungsvektors
ist die Kompensation einer Bewegung beim Prädiktionskodieren digitaler
Bilddaten. Als ein Beispiel ist das MPEG-(Moving Picture Coding
Experts Group-)System, das ein internationales Standardsystem für ein hochleistungsfähiges Kodieren
eines Bewegtbildes ist, vorgeschlagen worden. Das MPEG-System ist eine
Kombination des DCT-(Discrete Cosine Transform-)Systems und eines
Bewegungskompensations-Prädiktionskodierungs-Systems.
-
1 zeigt
ein Beispiel für
eine Bewegungskompensation-Prädiktionskodierungs-Vorrichtung. Gemäß 1 werden digitale Videodaten über einen Eingangsanschluss 1 empfangen.
Die digitalen Videodaten werden einer Bewegungsvektor-Erfassungsschaltung 2 und
einer Subtrahierschaltung 3 zugeführt.
-
Die Bewegungsvektor-Erfassungsschaltung 2 erfasst
einen Bewegungsvektor einer Bewegung zwischen einem gegenwärtigen Vollbild
und einem Referenz-Vollbild (z. B. einem Vollbild, dem das gegenwärtige Vollbild
zeitlich folgt). Der Bewegungsvektor wird einer Bewegungskompensationsschaltung 4 zugeführt.
-
Der Bewegungskompensationsschaltung 4 wird
ein Bild, das in einem Vollbildspeicher 5 gespeichert ist,
zugeführt.
Die Bewegungskompensationsschaltung 4 kompensiert die Bewegung
des Bildes entsprechend dem Bewegungsvektor. Die kompensierten Daten
werden der Subtrahierschaltung 3 und einer Addierschaltung 6 zugeführt. Die
Subtrahierschaltung 3 subtrahiert Videodaten aus dem vorhergehenden
Vollbild, das von der Bewegungskompensationsschaltung 4 empfangen
ist, von Videodaten des gegenwärtigen
Vollbildes für
jedes Pixel und führt die
Differenzdaten einer DCT-Schaltung 7 zu. Die DCT-Schaltung 7 führt einen
DCT-Prozess für
die Differenzdaten durch und führt
einer Quantisierungsschaltung 8 Koeffizientendaten zu.
Die Quantisierungsschaltung 8 requantisiert die Koeffizientendaten.
Die Ausgangssignaldaten der Quantisierungsschaltung 8 werden
einem Ausgangsanschluss 9 und einer Invers~Quantisierungsschaltung 10 zugeführt.
-
Die Invers~Quantisierungsschaltung 10 ist mit
einer Invers-DCT-Schaltung 11 verbunden.
Die Invers-Quantisierungsschaltung 10 und eine Invers-DCT-Schaltung 11 bilden
eine lokale Dekodierschaltung, die inverse Prozesse zu denen der DCT-Schaltung 7 und
der Quantisierungsschaltung 8 durchführt. Die Invers-DCT-Schaltung 11 führt der Addierschaltung 6 dekodierte
Differenzdaten zu. Die Ausgangssignaldaten der Addierschaltung 6 werden durch
den Vollbildspeicher 5 der Bewegungskompensationsschaltung 4 zugeführt. Die
dekodierten Daten des vorhergehenden Vollbildes werden der Addierschaltung 6 von
der Bewegungskompensationsschaltung 4 zugeführt. Auf
diese Weise werden dekodierte Daten gebildet und in dem Vollbildspeicher 5 gespeichert.
-
Die Bewegungsvektor-Erfassungsschaltung 2 erfasst
einen Bewegungsvektor entsprechend einem Blockanpassungs-Verfahren.
Bei dem Blockanpassungs-Verfahren wird ein Prüfungsblock eines Referenz-Vollbildes
in einem vorbestimmten Suchbereich bewegt, und es wird ein Block,
der am besten mit einem Basisblock des gegenwärtigen Vollbildes übereinstimmt,
erfasst, um dadurch einen Bewegungsvektor zu gewinnen. Auf diese
Weise kann der Bewegungsvektor für
jeden Block gewonnen werden. Es kann ein relativ großer Bewegungsvektor
mit der Größe des gesamten
Bildschirms oder 1/4 davon (wie gemäß der Japanischen Patent-Offenlegungsschrift
Nr. 61-105178) gewonnen
werden.
-
Bei dem Blockanpassungs-Verfahren,
wie es in 2A gezeigt 35 ist,
wird ein Bild, z. B. ein Bild eines Vollbildes, das aus H horizontalen
Pixeln × V vertikalen
Reihen zusammengesetzt ist, in Blöcke segmentiert. Jeder der
Blöcke
ist aus P Pixeln × Q
Pixeln zusammengesetzt, wie dies in 2B gezeigt ist.
Gemäß 2B ist P = 5 und Q = 5.
Zusätzlich
ist c die Position des zentralen Pixels des Blocks.
-
3A, 3B u. 3C zeigen die Beziehung von Positionen
eines Basisblocks und eines Prüfungsblocks.
Gemäß 3A, 3B u. 3C ist
die zentale Position des Basisblocks c, und die zentrale Position
des Prüfungsblocks
ist c'. Der Basisblock
mit dem zentralen Pixel c ist ein bestimmter Basisblock des gegenwärtigen Vollbildes.
Der Prüfungsblock
des Referenz-Vollbildes, der mit dem Bild des Basisblocks übereinstimmt,
liegt in dem Block mit der zentralen Position c' vor. Bei dem Blockanpassungs-Verfahren
wird in einem vorbestimmten Suchbereich ein Prüfungsblock, der am besten mit
einem Basisblock übereinstimmt,
erfasst, um dadurch einen Bewegungsvektor zu erfassen.
-
Gemäß 3A ist ein Bewegungsvektor (–1, –1), d.
h. –1
Pixel in horizontaler Richtung und –1 Reihe in vertikaler Richtung
erfasst. Gemäß 3B ist ein Bewegungsvektor
(–3, –3) erfasst.
Gemäß 3C ist ein Bewegungsvektor
(–2, +1)
erfasst. Der Bewegungsvektor wird für jeden Basisblock erfasst. Als
die Polarität
des Bewegungsvektors ist die Richtung, welche mit der Rasterabtastrichtung übereinstimmt, "+".
-
Wenn der Suchbereich des Bewegungsvektors ±S Pixel
in der horizontalen Richtung und ±T Reihen in der vertikalen
Richtung ist, sollte der Basisblock mit dem Prüfungsblock mit dem Zentrum
c' verglichen werden,
das von dem Zentrum c des Basisblocks um ±5 Pixel in der horizontalen
Richtung und um ±T
Reihen in der vertikalen Richtung abweicht.
-
Gemäß 4 sollte der Basisblock, wenn die Position
des Zentrums c des Basisblocks des gegenwärtigen Vollbildes R ist, mit
(2S + 1) × (2T
+ 1) Prüfungsblöcken des
Referenz-Vollbildes
verglichen werden. In anderen Worten ausgedrückt heißt dies, dass alle Prüfungsblöcke, in
denen das Zentrum c vorliegt, verglichen werden sollten. Gemäß 4 ist S = 4 und T = 3.
-
Aus Auswertungsergebniswerten der
Vergleiche in dem Suchbereich (nämlich
der Summe von Absolutwerten von Vollbild-Differenzen, der quadratischen Summe
der Vollbil-Differenzen, der Summe der n-ten Potenz der Absolutwerte
der Vollbild-Differenzen) wird der Minimalwert erfasst, um dadurch Bewegungsvektoren
zu erfassen. Der Suchbereich gemäß 4 ist ein Bereich, in dem
das Zentrum der Prüfungsblöcke vorliegt.
Der Suchbereich, welcher alle der Prüfungsblöcke enthält, ist (2S + P) × (2T + Q).
-
5 zeigt
einen Aufbau einer früher
vorgeschlagenen Bewegungsvektorerfassungs-Vorrichtung. In 5 bezeichnet das Bezugszeichen 21 einen
Eingangsanschluss, über
den Bilddaten eines gegenwärtigen
Vollbildes eingegeben werden. Die Bilddaten werden in einem Gegenwarts-Vollbildspeicher 23 gespeichert.
Das Bezugszeichen 22 bezeichnet einen Eingangsanschluss, über den
Bilddaten eines Referenz-Vollbildes eingegeben werden. Die Bilddaten
werden in einem Referenz-Vollbildspeicher 24 gespeichert.
-
Der Lesebetrieb und der Schreibbetrieb
des Gegenwarts-Vollbildspeichers 23 und des Referenz-Vollbildspeichers 24 werden
durch eine Steuerschaltung 25 gesteuert. Aus dem Gegenwarts-Vollbildspeicher 23 werden
Pixeldaten von Basisblöcken des
gegenwärtigen
Vollbildes ausgelesen. Aus dem Referenz-Vollbildspeicher 24 werden
Pixeldaten von Prüfungsblöcken des
Referenz-Vollbildes ausgelesen. In Zuordnung zu dem Referenz-Vollbildspeicher 24 ist
eine Adressenbewegungsschal-tung 26 vorgesehen. Die Steuerschaltung 25 ver anlasst
die Adressenbewegungsschaltung 26, die zentrale Position
jedes der Prüfungsblöcke in dem
Suchbereich Pixel für Pixel
zu bewegen.
-
Die Ausgangssignaldaten des Gegenwarts-Vollbildspeichers 23 und
die Ausgangssignaldaten des Referenz-Vollbildspeichers 24 werden
einer Differenz-Erfassungsschaltung 27 zugeführt. Die Differenz-Erfassungsschaltung 27 erfasst
die Differenz zwischen beiden der Eingangsdaten Pixel für Pixel.
Die Ausgangssignaldaten der Differenz-Erfassungsschaltung 27 werden
einer Absolutwert-Berechnungsschaltung 28 zugeführt, die
das Eingangssignal in einen Absolutwert umwandelt. Der Absolutwert
wird einer Kumulierschaltung 29 zugeführt, welche die Absolutwerte
der Differenzen für
jeden Block kumuliert und den kumulierten Wert einer Bestimmungsschaltung 30 als
einen Auswertungsergebniswert zuführt. Die Bestimmungsschaltung 30 erfasst einen
Bewegungsvektor entsprechend der Summe der Absolutwerte der Differenzen,
die auftreten, wenn jeder der Prüfungsblöcke in dem
Suchbereich bewegt wird. In anderen Worten ausgedrückt heißt dies, dass
die Position des Prüfungsblocks,
der die minimale Summe der Absolutwerte der Differenzen erzeugt,
als ein Bewegungsvektor erfasst wird.
-
Bei einem früher vorgeschlagenen Blockanpassungs-Verfahren
sollte der Prozess zum Gewinnen der Summe der Absolutwerte von Vollbild-Differenzen
zwischen Basisblöcken
und Prüfungsblöcken in
dem Suchbereich durchgeführt
werden. In dem Beispiel, das in 2A, 2B, 3A, 3B, 3C u. 4 gezeigt ist, sollten (P × Q) Absolutwerte
der Differenzen für
alle der Suchpunkte, nämlich
(2S + 1) × (2T
+ 1)-mal, kumuliert werden. Demzufolge kann die Anzahl von Berechnungen
als (P × Q) × (2S +
1) × (2T
+ 1) ausgedrückt
werden. Folglich werden bei dem Blockanpassungs-Verfahren das Ausmaß der Hardware
und die Anzahl von Berechnungen groß.
-
Als ein praktisches Beispiel, wie
es in 6 gezeigt ist,
sei angenommen, dass P = 16, Q = 16, S = 2 und T = 2 ist. In diesem
Beispiel sind die Werte von S u. T aus Gründen einer einfachen Beschreibung
und Veranschaulichung sehr klein. In Wirklichkeit wird ein größerer Suchbereich
eingestellt. In 6 sind
ein Basisblock und ein Prüfungsblock,
der sich um (+2, ~2) davon bewegt, veranschaulicht. In diesem Beispiel
ist der Suchbereich in den horizontalen und vertikalen Richtungen ±2. Die
Anzahl von Suchpunkten beträgt
(5 × 5
= 25).
-
Für
einen Suchpunkt sollten Subtraktionen zum Berechnen der Differenzen
von (16 × 16)
Pixeln, Subtraktionen zum Berechnen der Absolutwerte derselben und
Additionen der Absolutwerte durchgeführt werden. Zusätzlich sollte
diese Operation für
alle Suchpunkte (25 Suchpunkte) durchgeführt werden. Demzufolge ist
klar, dass die Anzahl von Berechnungen von der Anzahl von Pixeln,
die zu vergleichen sind, mal der Anzahl von Suchpunkten abhängt. Folglich
wird die Anzahl von Berechnungen groß. In einem früher vorgeschlagenen
System wird ein Pixel eines Basisblocks als ein Repräsentativpunkt-Pixel behandelt,
und die Differenzen zwischen den Repräsentativpunkt-Daten und Daten
des Prüfungsblocks werden
wie gemäß der Japanischen
Patent-Offenlegungsschrift Nr. 62-25587 berechnet. In diesem System
kann die Anzahl von Berechnungen, obwohl die Hardware vereinfacht
werden kann oder die Prozesszeit bis zu einem gewissen Maß verkürzt werden kann,
nicht merklich verringert werden.
-
Als Gegenmaßnahmen sind ein Verfahren zum
Vereinfachen des Suchsystems und ein Verfahren zum Vereinfachen
des Vergleichssystems vorgeschlagen worden. Bei dem älteren Verfahren
wird ein Prüfungsblock,
wenn er in einem Suchbereich bewegt wird, für jedes einer Anzahl von Pixeln
bewegt, um dadurch einen Bewegungsvektor grob zu erfassen. Danach
wird der Prüfungsblock
in der Umgebung der erfassten Position für jedes Pixel bewegt, um dadurch
einen Bewegungsvektor genau zu gewinnen. Dieses Verfahren ist als
Zweischritt-Verfahren
bekannt. Zusätzlich
ist außerdem
ein Dreischritt-Verfahren
bekannt, bei dem die Anzahl von Schritten drei beträgt. Gemäß diesen
Verfahren kann die Anzahl von Berechnungen, die für alle Suchpunkte
notwendig sind, auf die Anzahl von Suchpunkten in der Umgebung der
Bewegungsvektoren, die in jedem Schritt erfasst werden, verringert
werden.
-
Überdies
ist ein Verfahren zum Vereinfachen sowohl des Vergleichssystems
als auch des Suchsystems vorgeschlagen worden. Bei diesem Verfahren
wird die Anzahl von Pixeln eines Blocks durch einen Ausdünnungsprozess
(nämlich
beim Abtasten) herabgesetzt. Beispielsweise wird ein Block, der
aus (16 × 16)
Pixeln zusammengesetzt ist, wie in 7 gezeigt
in jeder der horizontalen und vertikalen Richtungen auf 1/4 ausgedünnt. Auf
diese Weise wird die Anzahl von Pixeln in dem Block auf 1/16 verringert. Für jeweils
vier Pixel liegen Suchpunkte vor. Folglich können die Anzahl von Pixeln,
die zu vergleichen sind, und die Anzahl von Suchpunkten verringert
werden.
-
Als ein anderes Verfahren zum Vereinfachen sowohl
des Vergleichssystems als auch des Suchsystems ist ein System vorgeschlagen
worden, das einen hierarchischen Aufbau benutzt. Als ein Beispiel sind
für das
System ein Originalbild (als erste hierarchische Ebene bezeichnet),
eine zweite hierarchische Ebene, in der die Anzahl von Pixeln in
der ersten hierarchischen Ebene in jeder der horizontalen und vertikalen
Richtungen mittels Tiefpassfilter und/oder Abtastprozess um 1/2
ausgedünnt
wird, und eine dritte hierarchische Ebene, in welcher die Anzahl
von Pixeln der zweiten hierarchischen Ebene in jeder der horizontalen
und vertikalen Richtungen mittels Tiefpassfilter und/oder Abtastprozess
um 1/2 ausgedünnt
wird, definiert.
-
In der dritten hierarchischen Ebene
wird eine Blockanpassung durchgeführt. Der Nullpunkt eines Blocks
wird zu der Position bewegt, in welcher der Minimaiwert erfasst
ist. In dieser Position wird in der zweiten hierarchischen Ebene
die Blockanpassung durchgeführt.
Der Nullpunkt wird zu der Position bewegt, in welcher der Minimalwert
erfasst ist. In dieser Position wird in der ersten hierarchischen
Ebene die Blockanpassung durchgeführt. Zuletzt wird die Blockanpassung
für jedes
Pixel durchgeführt,
um auf diese Weise einen Bewegungsvektor zu erfassen.
-
Es ist ein weiteres Verfahren zum
Vereinfachen sowohl des Vergleichssystems als auch des Suchsystems
vorgeschlagen worden. Bei diesem Verfahren werden jeweils ein Basisblock
und ein Prüfungsblock
in jeder der horizontalen und vertikalen Richtungen weiter in kleine
Blöcke
segmentiert, und es wird für
jeden kleinen Block eine Merkmalsmenge extrahiert. In anderen Worten
ausgedrückt
heißt
dies, dass eine Merkmalsmenge in jeder der horizontalen und vertikalen
Richtungen jedes der kleinen Blöcke eines
Basisblocks mit derjenigen eines Prüfungsblocks verglichen wird.
Die Absolutwerte der Vergleichsergebnisse werden kumuliert. Das
gewichtete Mittel der kumulierten Ergebnisse wird als das Vergleichsergebnis
der Blöcke
benutzt. Die Merkmalsmenge jedes kleinen Blocks ist z. B. das kumulierte Ergebnis
der Pixeldaten des kleinen Blocks. Bei diesem Verfahren kann die
Anzahl von Berechnungen, die für
alle Pixel in einem Block notwendig sind, auf die Anzahl von kleinen
Blöcken
in den horizontalen und vertikalen Richtungen verringert werden.
Ein System dieser Art ist in der Druckschrift EP-A-0 557 007 offenbart.
-
In den zuvor beschriebenen verschiedenartigen
Modifizierungen für
die Blockanpassung kann, obwohl die Anzahl von Berechnungen verringert
werden kann, ein Fehler erfasst werden, wenn ein Bewegungsvektor
gewonnen ist. In anderen Worten ausgedrückt heißt dies, dass da das Vergleichsverfahren und
das Suchverfahren vereinfacht sind, die Informationsmenge des Originalbildes
verloren geht.
-
Praktischer ausgedrückt heißt dies,
dass bei der Vereinfachung des Vergleichssystems, welche die Anzahl
von Elementen (der zu vergleichenden Pixel) in einem Block herabsetzt,
die Einzelheiten der Bilddaten des Blocks verloren gehen. Auf diese
Weise wird ein Fehler erfasst.
-
Es sei nun der Fall angenommen, dass
ein Basisblock und ein Prüfungsblock
(die eindimensionale Blöcke
sind) wie in 8 gezeigt
verglichen werden. Die Impulsform des Mittels für jeweils vier Pixel der Basisblock-Daten
ist die gleiche wie diejenige der Prüfungsblock-Daten. Obwohl die
Original-Impulsformen dieser zwei Block-Daten als das Vergleichsergebnis
verschieden sind, wird festgestellt, dass sie miteinander übereinstimmen.
Auf diese Weise wird ein Fehler erfasst.
-
Zur Lösung der zuvor beschriebenen
Probleme ist ein Verfahren (wie gemäß der Japanischen Patent-Offenlegungsschrift
Nr. 5-248813) vorgeschlagen worden. Bei diesem Verfahren werden, wenn
ein Basisblock und ein Prüfungsblock
verglichen werden, konstante Komponenten und flüchtige Komponenten aus diesen
extrahiert. Durch Vergleichen der konstanten Komponente des Basisblocks mit
der konstanten Komponente des Prüfungsblocks und
der flüchtigen
Komponente des Basisblocks mit der flüchtigen Komponente des Prüfungsblocks
wird eine Fehlererfassung verhindert. Bei dem Verfahren, das in 8 gezeigt ist, unterscheiden
sich als ein Beispiel für
die flüchtige
Komponente, wenn der Absolutwert der Differenz der Mittelwerte gewonnen wird,
die Basisblock-Daten merklich von dem Prüfungsblock. Demzufolge kann,
wenn auf die flüchtigen
Komponenten Bezug genommen wird, eine Fehlererfassung verhindert
werden.
-
Bei dem Verfahren zum Vereinfachen
des Suchsystems, das die Anzahl von Suchpunkten herabsetzt, kann
wenn ein Bewegungsvektor grob erfasst wird, da die Genauigkeit niedrig
ist, ein Fehler erfasst werden. Bei dem Verfahren zum Vereinfa chen
sowohl des Vergleichssystems als auch des Suchsystems kann, wenn
ein Bewegungsvektor entsprechend einem Bild, das ausgedünnt oder
durch ein Tiefpassfilter geleitet worden ist, erfasst ist, ein Fehler
erfasst werden.
-
Wenn die Anzahl von Suchpunkten verringert
wird, findet eine Phasenabweichung zwischen den Phasen der Suchpunkte
und der Bewegung des Bildes statt. Die Phasenabweichung wird unter
Bezugnahme auf 9 beschrieben.
Gemäß 9 werden Suchpunkte für jeweils
vier Pixel eines eindimensionalen Blocks gesetzt. Unterhalb der
Impulsform eines Originalsignals sind Impulsformen, von denen das
Originalsignal um ein Pixel, zwei Pixel, drei Pixel und vier Pixel
bewegt ist, in dieser Reihenfolge gezeigt. In dem Fall, in dem die
Phase am Beginn des Basisblocks die gleiche wie diejenige des Prüfungsblocks
ist, passen diese Blöcke
zueinander, wenn der Prüfungsblock
gestoppt und um irgendein Vielfaches von vier Pixeln bewegt ist.
In diesem Fall kann der Bewegungsvektor erfasst werden. Ansonsten
kann der Bewegungsvektor nicht erfasst werden.
-
Insbesondere kann, wenn sich ein
Bild merklich bewegt, selbst dann, wenn die wirkliche Bewegung des
Bildes um drei Pixel oder weniger beträgt, der kumulierte Wert der
Absolutwerte der Differenzen der Suchpunkte, die um vier Pixel voneinander
entfernt sind, sehr groß werden.
Wenn dieser kumulierte Wert kleiner als der kumulierte Wert der
Absolutwerte der Differenzen bei anderen Suchpunkten ist, unterscheidet
sich die erfasste Bewegung von der wirklichen Bewegung.
-
Verschiedene Ausführungsformen der Erfindung
sind im einzelnen in den Ansprüchen
angegeben.
-
Gemäß einer ersten Ausführungsform
der Erfindung ist ein Bildvergleichs-Verfahren vorgesehen, das Schritte
umfasst zum
Segmentieren erster Bilddaten in eine Vielzahl
von Basisblöcken,
Segmentieren
zweiter Bilddaten in eine Vielzahl von Prüfungsblöcken und Erzeugen eines modifizierten Prüfungsblocks,
der durch Zufügen
von Pixeln in der Nachbarschaft jedes der Prüfungsblöcke, die für eine Phasenkompensation notwendig
sind, zusammengesetzt ist,
Extrahieren erster Merkmalsmengendaten
aus jedem der Basisblöcke,
wobei die ersten Merkmalsmengendaten den Bereich der Pixeldaten
aller Pixel derselben repräsentieren,
Extrahieren
zweiter Merkmalsmengendaten aus dem modifizierten Prüfungsblock,
wobei die zweiten Merkmalsmengendaten den Bereich der Pixeldaten
aller Pixel des modifizierten Prüfungsblocks
repräsentieren,
und
partiellen Vergleichen des Basisblocks mit dem Prüfungsblock
durch Vergleichen der ersten Merkmalsmengendaten mit den zweiten
Merkmalsmengendaten.
-
Gemäß einer zweiten Ausführungsform
der Erfindung ist eine Bildvergleichs-Vorrichtung vorgesehen, die
umfasst:
Mittel zum Segmentieren erster Bilddaten in eine Vielzahl
von Basisblöcken,
Mittel
zum Segmentieren zweiter Bilddaten in eine Vielzahl von Prüfungsblöcken und
Erzeugen eines modifizierten Prüfungsblocks,
der durch Zufügen
von Pixeln in der Nachbarschaft jedes der Prüfungsblöcke, die für eine Phasenkompensation notwendig sind,
zusammengesetzt ist,
ein Mittel zum Extrahieren erster Merkmalsmengendaten
aus jedem der Basisblöcke,
wobei die ersten Merkmalsmengendaten den Bereich von Pixeldaten aller
Pixel derselben repräsentieren,
ein
Mittel zum Extrahieren zweiter Merkmalsmengendaten aus dem modifizierten
Prüfungsblock,
wobei die zweiten Merkmalsmengendaten den Bereich von Pixeldaten
aller Pixel des modifizierten Prüfungsblocks
repräsentieren,
und
ein Mittel zum Vergleichen der ersten Merkmalsmengendaten
mit den zweiten Merkmalsmengendaten und partiellen Ver gleichen des
Basisblocks mit dem Prüfungsblock
durch Vergleichen der genannten ersten Merkmalsmengendaten mit den
zweiten Merkmalsmengendaten.
-
Im folgenden wird die Erfindung anhand
von Beispielen unter Bezugrahme auf die Figuren beschrieben, in
denen gleiche Teile mit gleichen Bezugszeichen versehen sind.
-
1 zeigt
ein Blockschaltbild, das ein Beispiel für eine Bewegungskompensations-Prädiktionskodierungs-Vorrichtung darstellt.
-
2A u. 2B zeigen schematische Darstellungen
zur Erklärung
eines Bewegungsvektorerfassungs-Verfahrens gemäß einem früher vorgeschlagenen Blockanpassungs-Verfahren.
-
3A, 3B u. 3C zeigen schematische Darstellungen
zur Erklärung
des Bewegungsvektorerfassungs-Verfahrens gemäß dem früher vorgeschlagenen Blockanpassungs-Verfahren.
-
4 zeigt
eine schematische Darstellung zur Erklärung eines Suchbereichs des
Bewegungsvektorerfassungs-Verfahrens
gemäß dem früher vorgeschlagenen
Blockanpassungs-Verfahren.
-
5 zeigt
ein Biockschaltbild, das eine Bewegungsvektorerfassungs-Vorrichtung
gemäß dem früher vorgeschlagenen
Blockanpssungs-Verfahren darstellt.
-
6 zeigt
eine schematische Darstellung zur Erklärung einer Bewegungsvektorerfassung
entsprechend dem früher
vorgeschlagenen Blockanpassungs-Verfahren.
-
7 zeigt
eine schematische Darstellung zur Erklärung eines Blockanpassungs-Verfahrens entsprechend
ei nem früher
vorgeschlagenen Ausdünnungs-Verfahren.
-
8 zeigt
ein schematisches Diagramm zur Erklärung einer Fehlervergleichsverhinderungs-Technik,
die vorgeschlagen worden ist.
-
9 zeigt
ein schematisches Diagramm zur Erklärung von Problemen in einem
früher
vorgeschlagenen vereinfachten Blockanpassungs-System.
-
10 zeigt
ein Blockschaltbild, das den Aufbau einer ersten veranschaulichenden
Anordnung darstellt.
-
11 zeigt
eine schematische Darstellung eines Aufbaus von Blöcken gemäß der ersten
veranschaulichenden Anordnung.
-
12 zeigt
ein Blockschaltbild, das eine Maximalwert/ Minimalwert-Erfassungsschaltung
gemäß der ersten
veranschaulichenden Anordnung daarstellt.
-
13 zeigt
ein Flussdiagramin, das einen Prozess zum Vergleichen des Werts
eines representativen Pixels, eines Maximalwerts und eines Minimalwerts
und einen Prozess zum Erzeugen eines Auswertungsergebniswerts darstellt.
-
14 zeigt
ein Blockschaltbild, das eine Schaltung zum Vergleichen des Werts
eines representativen Werts, eines Maximalwerts und eines Minimalwerts
und eine Schaltung zum Erzeugen eines Auswertungsergebniswerts darstellt.
-
15A u. 15B zeigen schematische Darstellungen
zur Erklärung
eines Suchbereichs gemäß der ersten
veranschaulichenden Anordnung.
-
16 zeigt
ein Blockschaltbild, das eine zweite veranschaulichende Anordnung
darstellt.
-
17 zeigt
eine schematische Darstellung zur Erklarung eines Basisblocks, eines
Prüfungsblocks
und eines Auswertungsergebniswerts gemäß der veranschaulichenden Anordnung.
-
18 zeigt
ein schematisches Diagramm, das einen Teil des Suchbereichs gemäß der zweiten veranschaulichenden
Anordnung darstellt.
-
19 zeigt
eine schematische Darstellung zur Erklärung einer Phasenkompensation.
-
20 zeigt
ein Blockschaltbild, das den Aufbau eines ersten Ausführungsbeispiels
der vorliegenden Erfindung darstellt.
-
21 zeigt
eine schematische Darstellung, die den Aufbau von Blöcken gemäß dem ersten
Ausführungsbeispiel
der vorliegenden Erfindung darstellt.
-
22 zeigt
ein Flussdiagramm, das einen Prozess zum Vergleichen des Werts eines
representativen Pixels, eines Maximalwerts und eines Minimalwerts
und einen Prozess zum Erzeugen eines Auswertungsergebniswerts darstellt.
-
23 zeigt
ein Blockschaltbild, das eine Schaltung zum Vergleichen des Werts
eines Representativwerts, eines Maximalwerts und eines Minimalwerts
und eine Schaltung zum Erzeugen eines Auswertungsergebniswerts darstellt.
-
24 zeigt
ein schematisches Diagramm zur Erklärung eines Auswertungsergebniswerts.
-
25 zeigt
eine schematische Darstellung zur Erklärung eines Suchbereichs gemäß dem ersten Ausführungsbeispiel
der vorliegenden Erfindung.
-
26 zeigt
ein Blockschaltbild gemäß einem
zweiten Ausführungsbeispiel
der vorliegenden Erfindung.
-
27 zeigt
ein schematisches Diagramm, das einen Teil eines Suchbereichs gemäß dem zweiten
Ausführungsbeispiel
der vorliegenden Erfindung darstellt.
-
28 zeigt
eine schematische Darstellung zur Erklärung einer Phasenkompensation
gemäß der vorliegenden
Erfindung.
-
Als nächstes wird unter Bezugnahme
auf die Figuren eine Bewegungsvektorerfassungs-Vorrichtung gemäß der ersten
veranschaulichenden Anordnung beschrieben.
-
10 zeigt
ein Blockschaltbild der Anordnung. In 10 bezeichnet
das Bezugszeichen 31 einen Eingangsanschluss für Bilddaten
eines gegenwartigen Vollbildes. Das Bezugszeichen 32 bezeichnet
einen Eingangsanschluss für
Bilddaten eines Referenz-Vollbildes. Das Bezugszeichen 33 bezeichnet einen
Gegenwarts-Vollbildspeicher, der Bilddaten des gegenwärtigen Vollbildes
speichert. Das Bezugszeichen 34 bezeichnet einen Referenz-Vollbildspeicher,
der Bilddaten des Referenz-Vollbildes speichert. Der Lesevorgang
und der Schreibvorgang des Gegenwarts-Vollbildspeichers 33 und
des Referenz-Vollbildspeichers 34 werden durch eine Steuerschaltung 35 gesteuert.
In Zuordnung zu dem Referenz-Vollbildspeicher 34 ist eine
Adressenbewegungsschaltung 36 vorgesehen. Die Adressenbewegungsschaltung 6 wird
durch die Steuerschaltung 35 gesteuert. Auf diese Weise
wird der Prüfungsblock
in dem Referenz-Vollbild bewegt.
-
Der Gegenwarts-Vollbildspeicher 33 gibt
unter Steuerung durch die Steuerschaltung 35 Basisblock-Daten
aus. Die Basisblock-Daten werden einer Repräsentativwert-Extrahierschaltung 37 zugeführt. Die
Repräsentativwert-Extrahierschaltung 37 extrahiert
einen repräsentativen
Wert für
jeden Basisblock. Der repräsentative
Wert repräsentiert
den Wert eines repräsentativen
Pixels. Beispielsweise ist der repräsentative Wertz, wie in 11 gezeigt, ein Wert x des
Pixels in der zentralen Position eines Basisblocks, der aus (3 × 3) Pixeln
zusammengesetzt ist. Der repräsentative
Wert kann der Wert des Pixels in einer anderen Position des Basisblocks
sein. Alternativ dazu kann der repräsentative Wert der Maximalwert,
der Minimalwert oder der extreme Wert des Basisblocks sein.
-
Der Referenz-Vollbildspeicher 34 gibt
unter Steuerung durch die Steuerschaltung 35 Prüfungsblock-Daten
aus. Wie im Falle der Basisblöcke
hat jeder der Prüfungsblöcke, wie
dies in 11 gezeigt ist,
einen zweidimensionalen Bereich, der aus (3 × 3) Pixeln zusammengesetzt
ist. Die Werte von neun Pixeln jedes der Prüfungsblöcke sind mit a, b, c, ... u.
i bezeichnet. Das Ausgangssignal wird einer Maximalwert/ Minimalwert-(MAx/MIN-)Erfassungsschaltung 38 zugeführt. Die
MAX/MIN-Erfassungsschaltung 38 erfasst einen Maximalwert
MAX und einen Minimalwert MIN als Merkmalsmengen des Prüfungsblocks. Als
die Merkmalsmengen können
zwei Werte aus den Werten MAX, MIN und einem Dynamikbereich DR (=
MAX – MIN)
benutzt werden. Alternativ dazu können die Merkmalsmengen (Av
+ σ) und
(Av – σ) sein, wobei
Av der Mittelwert des Prüfungsblocks
ist und σ die
Standardabweichung desselben ist.
-
Ein Ziel der Blockanpassung ist nicht
auf das gegenwärtige
Vollbild und das Referenz-Vollbild (d. h. das zeitlich dem gegenwärtigen Vollbild
folgende oder vorhergehende Vollbild) begrenzt. Beispielsweise kann
die vorliegende Technik angewendet werden, wenn ein Bewegungsvektor
zwischen zwei unbewegten Bildern erfasst wird oder wenn ein Bewegungs vektor
zwischen Bildern mit unterschiedlichen Auflösungen erfasst wird. Zusätzlich zum
Erfassen eines Bewegungsvektors kann die vorliegende Technik angewendet
werden, wenn zwei unbewegte Bilder verglichen werden. In anderen
Worten ausgedrückt
heißt
dies, dass wenn ein unbewegtes Bild, das z. B. ein Gruppenfoto ist,
als ein Referenz-Bild behandelt wird und ein Foto einer bestimmten
Person als ein betrachtetes Bild behandelt wird, diese Bilder verglichen
werden, um zu erfassen, in welcher Position das betrachtete Bild
in dem Referenz-Bild vorliegt. In diesem Beispiel wird das gesamte
Referenz-Bild der Suchbereich.
-
12 zeigt
ein Beispiel für
die MAX/MIN-Erfassungsschaltung 38. Gemäß 12 werden in der Erfassungsschaltung
MAX/MIN 38 Pixeldaten eines Prüfungsblocks über einen
Eingangsanschluss 51 zugeführt. Die Eingangssignal-Daten werden
einer Zeitschaltsignal-Erzeugungsschaltung 52 und Auswahlschaltungen 53 u. 54 zugeführt. Die Zeitschaltsignal-Erzeugungsschaltung 52 erzeugt
einen Abtasttakt und ein Block-Zeitschaltsignal. Der Abtasttakt
ist mit den Pixeldaten synchronisiert. Das Block-Zeitschaltsignal
repräsentiert
die Abgrenzung eines Blocks.
-
Die Auswahlschaltung 53 gibt
selektiv das größere von
zwei Pixeln aus. Die Auswahlschaltung 54 gibt selektiv
das kleinere der zwei Pixel aus. Ausgangssignaldaten der Auswahlschaltung 53 werden einer
Halteschaltung 55 und einem Register 57 zugeführt. Ausgangssignaldaten
der Auswahlschaltung 54 werden einer Halteschaltung 56 und
einem Register 58 zugeführt.
Ausgangssignaldaten der Register 57 u. 58 werden
jeweils den Auswahlschaltungen 53 u. 54 zugeführt. Von
der Halteschaltung 55 wird ein Maximalwert MAX einem Ausgangsanschluss 59 zugeführt. Von
der Halteschaltung 56 wird ein Minimalwert MIN einem Ausgangsanschluss 60 zugeführt.
-
In einem Anfangszustand des Registers 57, in
dem keine Daten eines Prüfungsblocks
eingegeben worden sind, ist das Register 57 auf Null gesetzt worden.
In dem Register 57 werden Ausgangssignaldaten der Auswahlschaltung 53 gespeichert.
Durch die Auswahlschaltung 53 werden ein größerer Wert der
Ausgangssignaldaten des Registers 57 und die Eingangs-Pixeldaten
ausgewählt.
Auf diese Weise ist, wenn nächste
Pixeldaten empfangen werden, der Maximalwert der früheren Pixeldaten
in dem Register 57 gespeichert worden. Wenn neun Pixel
a bis i eines Prüfungsblocks
empfangen sind, gibt die Auswahlschaltung 53 den Maximalwert
MAX des Prüfungsblocks
aus. Der Maximalwert MAX wird durch die Halteschaltung 55 gehalten.
Der Minimalwert MIN des Prüfungsblocks
wird in der gleichen Weise wie der Maximalwert MAX erfasst und dem
Ausgangsanschluss 60 zugeführt.
-
Der repräsentative Wert x und die erfassten Werte
MAX u. MIN werden einer Vergleichsschaltung 39 und einer
Auswertungsergebniswert-Berechnungsschaltung 40 zugeführt. 13 zeigt ein Flussdiagramm,
das die Software-Prozesse der Vergleichsschaltung 39 und
der Auswertungsergebniswert-Berechnungsschaltung 40 darstellt.
Wenn der Vergleichsprozess gestartet ist, wird in einem Schritt 61 bestimmt,
ob x > MAX ist oder
nicht. Wenn das Bestimmungsergebnis (J) ist, setzt sich der Fluss
zu Schritt 62 fort. In Schritt 62 wird ein Auswertungsergebniswert Δ = x – MAX erzeugt.
-
Wenn das Bestimmungsergebnis in Schritt 61 (N)
ist, setzt sich der Fluss zu Schritt 63 fort. In Schritt 63 wird
bestimmt, ob x < MIN
ist oder nicht. Wenn das Bestimmungsergebnis (J) ist, wird Δ = MIN – x erzeugt.
Wenn das Bestimmungsergebnis in Schritt 63 (N) ist (nämlich wenn
MIN ≤ x ≤ MAX ist), wird
in Schritt 65 Δ =
0 gesetzt. In Schritt 66 wird der Auswertungsergebniswert Δ ausgegeben.
-
14 zeigt
ein Blockschaltbild, das einen Hardware-Aufbau der Vergleichsschaltung 39 und der
Auswertungsergebniswert-Berechnungsschaltung 40 darstellt.
Der Vergleichsschaltung 39 werden der repräsentative
Wert x, der Wert MAX und der Wert MIN zugeführt. Die Vergleichsschaltung 39 erzeugt
ein 2-Bit-Vergleichsausgangssignal. Eine Auswahlschaltung 71 wird
entsprechend dem Vergleichsausgangssignal gesteuert. Eine Subtrahierschaltung 72 führt einem
Eingangsanschluss a der Auswahlschaltung 71 (x – MAX) zu.
Einem Eingangsanschluss b der Auswahlschaltung 71 werden
Null-Daten zugeführt.
Einem Eingangsanschluss c der Auswahlschaltung 71 wird
von einer Subtrahierschaltung 73 (MIN – x) zugeführt.
-
Die 2-Bit-Ausgangssignaldaten der
Vergleichsschaltung 39 repräsentieren drei Beziehungen,
nämlich
x > MAX, x < MIN u. MIN ≤ x ≤ MAX. Die Eingangsanschlüsse a, b
u. c der Auswahlschaltung 71 werden entsprechend diesen
Beziehungen ausgewählt.
Auf diese Weise wird der Auswertungsergebniswert Δ erzeugt.
Der Auswertungsergebniswert Δ,
der durch die Auswertungsergebniswert-Berechnungsschaltung 40 erzeugt
ist, wird einem Auswertungsergebniswert-Speicher 41 zugeführt.
-
Wie in 15A gezeigt
ist der Auswertungsergebniswert Δ =
0, wenn ein repräsentativer
Wert x in dem Bereich von dem Wert MIN bis zu dem Wert MAX eines
Prüfungsblocks
enthalten ist. Wenn der repräsentative
Wert x kleiner als MIN oder größer als MAX
ist, steigt der Auswertungsergebniswert Δ entsprechend an. In Wirklichkeit
wird, da ein Rauschen auftritt, ein Rauschrand gesetzt, um dadurch
einen Auswertungsergebniswert Δ zu
erzeugen, der sich ändert,
wie dies durch eine gestrichelte Linie in 15A gezeigt ist. Der Aufbau, welcher
in 14 gezeigt ist, ist
ein Beispiel für
die vorliegende Technik In anderen Worten ausgedrückt heißt dies,
dass durch eine Kombination mit einer Torschaltung oder einer Zwei-Eingänge-Auswahlschaltung
eine Vielfalt von Aufbauten gebildet werden kann. Alternativ dazu kann
als ein Auswertungsergebniswert der Absolutwert einer Differenz,
der Wert einer n-ten Potenz der Differenz usf. benutzt werden.
-
Die Auswertungsergebniswerte werden
für die
Prüfungsblöcke entsprechend
den repräsentativen
Pixeln des Referenz-Vollbildes berechnet. Die Größe des Suchbereichs beträgt (3 × 3) Basisbiöcke und
(3 × 3)
Prüfungsblöcke. Demzufolge
beträgt
der Suchbereich (9 × 9)
Pixel. In diesem Beispiel werden, wie in 15B gezeigt, neun Auswertungsergebniswerte Δ1 bis Δ9 gewonnen.
Die Auswertungsergebniswerte werden in dem Auswertungsergebniswert-Speicher 41 gespeichert.
Die Position des Basisblocks liegt in der zentralen Position des
Suchbereichs (nämlich
in der Position des Auswertungsergebniswerts Δ5.
-
Zurückkommend auf 10 ist festzustellen, dass die Auswertungsergebniswerte
unter Steuerung durch die Steuerschaltung 35 in dem Auswertungsergebniswert-Speicher 41 gespeichert
werden. Der Minimalwert der neun Auswertungsergebniswerte Δ1 bis Δ9 wird durch
eine MinimalwertErfassungsschaltung 42 erfasst. Die Position,
in welcher der Minimalwert vorliegt, ist ein Bewegungsvektor des
Basisblocks.
-
Als nächstes wird eine zweite veranschaulichende
Anordnung beschrieben. 16 zeigt
den Aubau gemäß der zweiten
veranschaulichenden Anordnung. Gleiche Teile, wie sie auch in der
ersten veranschaulichenden Anordnung vorgesehen sind, die in 10 gezeigt ist, sind mit
gleichen Bezugszeichen versehen. In dem Aufbau, der in 16 gezeigt ist, sind Kleinblock-Segmentierungsschaltungen 44 u. 45 mit
dem Gegenwarts~Vollbildspeicher 33 bzw. dem ReferenzVollbildspeicher 34 verbunden.
Zusätzlich
ist eine Kumulierschaltung 46 mit der Auswertungsergebniswert-Berechnungsschaltung 40 verbunden.
-
In der zweiten veranschaulichenden
Anordnung wird ein Bereich von (3 × 3) Pixeln, wie in 17 gezeigt, als ein Kleinblock
behandelt. Ein Bereich von (9 × 9)
Pixeln, in dem (3 × 3)
kleine Blöcke in
den vertikalen und horizonta len Richtungen angeordnet sind, wird
als ein Basisblock oder ein Prüfungsblock
behandelt. In 17 sind
für den
Basisblock nur repräsentative
Pixel in zentralen Positionen der kleinen Blöcke desselben gezeigt. Ein
repräsentativer
Wert jedes kleinen Blocks des Basisblocks wird mit dem Wert MAX
und dem Wert MIN jedes kleinen Blocks des Prüfungsblocks verglichen. In
gleicher Weise wie in der ersten veranschaulichenden Anordnung wird
für jeden
kleinen Block ein Auswertungsergebniswert Δ berechnet.
-
Durch Vergleichen eines Basisblocks
mit einem Prüfungsblock,
der sich in einer vorbestimmten Position befindet, und durch Berechnen
von Auswertungsergebniswerten werden Auswertungsergebniswerte Δ1 bis Δ9 gewonnen.
Die Auswertungsergebniswerte werden durch die Kumulierschaltung 46 kumuliert.
In anderen Worten ausgedrückt
heißt
dies, dass die Kumulierschaltung 46 eine Kumulation ΣΔ = Δ1 + Δ2 + ... + Δ9 durchführt. Der
Prüfungsblock
wird in dem Such-bereich bewegt. Bei jedem Suchpunkt wird der kumulierte
Wert der Auswertungsergebniswerte gewonnen. Der Minimalwert der
kumulierten Auswertungsergebniswerte wird durch die Minimalwert-Erfassungsschaltung 42 erfasst.
An einem Ausgangsanschluss 43 wird ein Bewegungsvektor
gewonnen, welcher der Position des Prüfungsblocks entspricht, der
den Minimalwert erzeugt.
-
18 zeigt
ein schematisches Diagramm, das einen Teil eines Suchbereichs für ±5 Pixel
(durch gestrichelte Linien angedeutet) darstellt. Unter der Annahme,
dass die untere rechte Ecke des Basisblocks ein Basispunkt ist,
sind Koordinatenachsen (x, y) gezeigt, die jeweils durch drei Pixel
in Abschnitte unterteilt sind. Der Basispunkt wird vorzugsweise
in einer Position dem Zentrum des Blocks so nahe wie möglich angeordnet.
Wenn der Prüfungsblock
in der Position (+5, +5), die in 18 gezeigt
ist, den Minimalwert der kumulierten Auswertungsergebniswerte erzeugt,
wird ein Bewegungsvektor (+15 (= 5 × 3), +15 (= 5 × 3)) ausgegeben.
-
Bei der vorliegenden Technik wird
ein repräsentatives
Pixel eines Basisblocks mit einem entsprechenden Prüfungsblock
(Bereich) verglichen. Als Beträge,
die alle Pixel a bis i des Prüfungsblocks
repräsentieren,
werden z. B. der Maximalwert desselben und der Minimalwert desselben
gewonnen. Wenn der Wert x des repräsentativen Pixels nicht in dem
Bereich enthalten ist, kann das repräsentative Pixel (x) nicht mit
dem Prüfungsblock
verglichen werden. Herkömmlicherweise
kann, wenn die Anzahl von Suchpunkten herabgesetzt wird, infolge
einer Phasenabweichung ein Fehler erfasst werden. Wenn jedoch die
Anzahl von Suchpunkten auf 1/3 (alle drei Pixel) herabgesetzt ist,
kann der selbe Prozess als die Vollsuchoperation durchgeführt werden.
In anderen Worten ausgedrückt
heißt
dies, dass der Vergleich ohne eine Phasenabweichung durchgeführt werden
kann.
-
19 zeigt
eine schematische Darstellung zur Erklärung der Tatsache, dass in
dem Aufbau gemäß der vorliegenden
Anordnung keine Phasenabweichung stattfindet. Aus Gründen der
Einfachheit sei ein eindimensionaler Block angenommen, der aus drei
Pixeln mit Werten a, b u. c zusammengesetzt ist. In 19 sind alle drei Pixel gestrichelte
Linien gezeigt. Der eindimensionale Block wird als ein Basisblock
betrachtet. Der Wert b des zentralen Pixels ist ein repräsentativer
Wert des Basisblocks. In 19 sind
Bewegungen des Basisblocks um 0 Pixel, +1 Pixel, –1 Pixel,
+2 Pixel, +3 Pixel und +4 Pixel gezeigt.
-
Wie aus 19 ersichtlich liegt, wenn der Basisblock
um ±1
Pixel bewegt wird, der repräsentative
Wert b in dem Bereich von drei Pixeln vor. Auf diese Weise kann,
wenn der Basisblock um ±1
Pixel bewegt wird, dieser mit dem Prüfungsblock verglichen werden,
und dadurch wird der Auswertungsergebniswert Δ 0. Die Bewegungen des Basisblocks um
+2 Pixel, +3 Pixel und +4 Pixel können durch die Vergleiche mit
dem nächsten
Prüfungsblock
erfasst werden. Ruf diese Weise ist es nicht notwendig, den Bereich
des Prüfungs blocks
(kleine Blöcke)
mit demjenigen des Basisblocks zu überlappen. In dem herkömmlichen
Vereinfachungs-Verfahren, das die Anzahl der Suchpunkte herabsetzt,
werden nur die Bewegungen des Basisblocks um 0 Pixel und irgendein Vielfaches
der Länge
des Suchpunkts präzise
erfasst. Eine solche Phasenabweichung kann jedoch kompensiert werden.
-
Der wirkliche Aufbau kann in vielfältiger Weise
modifiziert werden. Beispielsweise kann zusätzlich zu dem zuvor beschriebenen
System ein System benutzt werden, das eine flüchtige Komponente beachtet,
um auf diese Weise einen Fehler infolge einer solchen Vereinfachung
zu verhindern. Überdies kann,
wenn ein Bewegungsvektor gewonnen wird, die Genauigkeit desselben
eher ein halbes Pixel als ein ganzes Pixel betragen.
-
Ebensogut wie eine Vereinfachung
der Suchpunkte vorgenommen werden kann, können die Anzahl von Berechnungen
und die Anzahl von Vergleichen merklich verringert werden. Zusätzlich kann ein
Fehler infolge einer Phasenabweichung verhindert werden.
-
Als nächstes wird unter Bezugnahme
auf die Figuren eine Bewegungsvektorerfassungs-Vorrichtung gemäß einem
Ausführungsbeispiel
beschrieben. 20 zeigt
ein Blockschaltbild, welches das Ausführungsbeispiel darstellt. In 20 bezeichnet das Bezugszeichen 81 einen
Eingangsanschluss für Bilddaten
eines gegenwärtigen
Vollbildes. Das Bezugszeichen 82 bezeichnet einen Eingangsanschluss
für Bilddaten
eines Referenz-Vollbildes. Das Bezugszeichen 83 bezeichnet
einen Gegenwarts-Vollbildspeicher, der Bilddaten des gegenwärtigen Vollbildes
speichert. Das Bezugszeichen 84 bezeichnet einen Referenz-Vollbildspeicher,
der Bilddaten des Referenz-Vollbildes speichert. Die Lese-Operation
und die Schreib-Operation des Gegenwarts-Vollbildspeichers 83 und
des Referenz-Vollbildspeichers 84 werden durch eine Steuerschaltung 85 gesteuert.
In Zuordnung zu dem Referenz- Vollbildspeicher 84 ist
eine Adressenbewegungsschaltung 86 vorgesehen. Die Adressenbewegungsschaltung 86 wird
durch die Steuerschaltung 85 gesteuert. Auf diese Weise
wird der Prüfungsblock
in dem Referenz-Vollbild bewegt.
-
Der Gegenwarts-Vollbildspeicher 83 gibt
unter Steuerung durch die Steuerschaltung 85 Basisblock-Daten
aus. Die Basisblock-Daten werden einer Maximalwert/Minimalwert-(MAX
1/MIN 1-)Erfassungsschaltung 87 zugeführt. Die MAX 1/MIN 1-Erfassungsschaltung 87 extrahiert
einen Maximalwert MAX 1 und einen Minimalwert MIN 1 als erste Merkmalsmengen
für jeden
Basisblock. Jeder Basisblock ist aus z. B. (2 × 4) Pixeln zusammengesetzt,
wie dies in 21 gezeigt
ist. Als die ersten Merkmalsmengen können zwei aus den Werten MAX
1, MIN 1 und dem Dynamikbereich DR 1 (= MAX 1 – MIN 1) benutzt werden. Zusätzlich können als
die ersten Merkmalsmengen Δv1
+ Δ1 und Δv1 – Δ1 benutzt
werden, wobei Δv1
ein Mittelwert des Basis-blocks ist und σ1 eine Standardabweichung desselben
ist.
-
Der Referenz-Vollbildspeicher 84 gibt
unter Steuerung durch die Steuerschaltung 85 modifizierte Prüfungsblock-Daten
aus. Wie im Falle des Basisblocks hat jeder Prüfungsblock einen zweidimensionalen
Bereich, der aus 2 × 4)
Pixeln zusammengesetzt ist, wie dies in 21 gezeigt ist. Ein modifizierter Prüfungsblock
wird durch Zufügen
eines Phasenkompensations-Bereichs aus ±1 Reihe × 12 Pixeln zu dem Prüfungsblock
zusammengesetzt. Wie in 20 gezeigt
werden modifizierte Prüfungsblock-Daten,
die aus (4 × 8)
Pixeln zusammengesetzt sind (21),
einer Maximalwert/ Minimalwert-(MAX 2/MIN 2-)Erfassungsschaltung 88 zugeführt. Die MAX
2/MIN 2-Erfassungsschaltung 88 erfasst einen Maximalwert
MAX 2 und einen Minimalwert MIN 2 als zweite Merkmalsmengen. Als
die zweiten Merkmalsmengen können
zwei aus den Werten MAX 2, MIN 2 und dem Dynamikbereich DR 2 (=
MAX 2 – MIN
2) benutzt werden. Zusätzlich
können
als die zweiten Merkmalsmengen Δv
+ Δ und Δv – Δ benutzt
werden, wobei Δv2
ein Mittelwert des Prüfungsblocks
ist und σ2
eine Standardabweichung desselben ist.
-
Ein Beispiel für die MAX 1/MIN 1-Erfassungsschaltung 87 könnte unter
Bezugnahme auf 12 erklärt werden.
Wenn acht Pixel eines Basisblocks von der MAX 1/MIN 1-Erfassungsschaltung 87 empfangen
sind, gibt die Auswahlschaltung 53 den Maximalwert MAX
1 des Prüfungsblocks
aus. Der Maximalwert MAX 1 wird durch die Halteschaltung 55 gehalten.
Der Minimalwert MIN 1 des Basisblocks wird in gleicher Weise wie
der Maximalwert MAX 1 erfasst und dem Ausgangsanschluss 60 zugeführt. Der
Aufbau der MAX 2/MIN 2-Erfassungsschaltung 88 ist der gleiche
wie der in 12 gezeigte.
Die MAX 2/MIN 2-Erfassungsschaltung 88 erfasst einen Maximalwert
MAX 2 und einen Minimalwert 2 von den 32 Pixeln des modifizierten
Prüfungsblocks.
-
Die erfassten Werte MAX 1, MIN 1,
MAX 2 u. MIN 2 werden einer Vergleichsschaltung 89 und
einer Auswertungsergebniswert-Berechungsschaltung 90 zugeführt. 22 zeigt ein Flussdiagramm,
das Software-Prozesse der Vergleichsschaltung 89 und der Auswertungsergebniswert-Berechnungsschaltung 90 darstellt.
Wenn der Vergleichsprozess gestartet ist, wird in einem Schritt 101 bestimmt,
ob MAX 1 > MAX 2 ist
oder nicht. Wenn das Bestimmungsergebnis (N) lautet (nämlich wenn
MAX 2 ≥ MAX
1 ist), setzt sich der Fluss zu Schritt 102 fort. In Schritt 102 wird
ein Auswertungsergebniswert Δ1
= 0 gesetzt. In Schritt 103 wird bestimmt, ob MIN 1 < MIN 2 ist oder nicht.
Wenn das Bestimmungsergebnis (N) lautet (nämlich wenn MIN 1 ≥ MIN 2 ist),
setzt sich der Fluss zu Schritt 104 fort. In Schritt 104 wird
ein Auswertungsergebniswert Δ2
= 0 gesetzt. Auf diese Weise werden in Schritt 105a die
Auswertungsergebniswerte Δ1
= 0 und Δ2
= 0 erzeugt. Ruf diese Weise wird bestirnint, dass der Minimalwert
MIN 1 und der Maximalwert MAX 1 des Basisblocks in dem Bereich von dem
Minimalwert MIN 2 bis zu dem Maximalwert MAX 2 des modifizierten
Prüfungsblock
enthalten sind und dass der Basisblock mit dem Prüfungsblock verglichen
worden ist. Wenn das Bestimmungsergebnis in Schritt 103 (J)
lautet, werden in Schritt 105b Auswertungsergebniswerte Δ1 = 0 und Δ2 = MIN 2 – MIN 1
erzeugt.
-
Wenn das Bestimmungsergebnis in Schritt 101 (J)
lautet, setzt sich der Fluss zu Schritt 106 fort. In Schritt 106 wird
bestimmt, ob MIN 1 < MIN
2 ist oder nicht. Wenn das Bestimmungsergebnis in Schritt 106 (N)
lautet (nämlich
wenn MIN 1 ≥ MIN
2 ist), wird in Schritt 107 ein Auswertungsergebniswert Δ2 = 2 gesetzt,
und in Schritt 105c werden Auswertungsergebniswerte Δ1 = MAX 1 – MAX 2
und Δ2 =
0 erzeugt. Wenn das Bestimmungsergebnis in Schritt 106 (J)
lautet, werden in Schritt 105d Auswertungsergebniswerte Δ1 = MAX 1 – MAX 2
und Δ2 =
MIN 2 – MIN
1 erzeugt.
-
23 zeigt
ein Blockschaltbild, das einen Hardware-Aufbau der Vergleichsschaltung 89 und der
Auswertungsergebniswert-Berechnungsschaltung 90 darstellt.
Der Vergleichsschaltung 89 werden die Werte MAX 1 u. MIN
1 des Basisblocks und MAX 2 u. MIN 2 des modifizierten Prüfungsblocks
zugeführt.
Die Vergleichsschaltung 89 erzeugt zwei Vergleichs-Ausgangssignale.
Entsprechend den Vergleichs-Ausgangssignalen werden Auswahlschaltungen 111 u. 112 gesteuert.
Einem Eingangsanschluss a der Auswahlschaltung 111 werden
Ausgangssignaldaten (MAX 1 – MAX
2) einer Subtrahierschaltung 115 zugeführt. Einem Eingangsanschluss
b der Auswahlschaltung 111 werden Null-Daten zugeführt. Einem
Eingangsanschluss a der Auswahlschaltung 112 werden Ausgangssignaldaten
(MIN 2 – MIN
1) einer Subtrahierschaltung 116 zugeführt. Einem Eingangsanschluss
b der Auswahlschaltung 111 werden Null-Daten zugeführt.
-
Wenn MAX 1 > MAX 2 ist, veranlasst eine Ausgangssignal
(das als das erste Ausgangssignal bezeichnet wird) der Vergleichsschaltung 89 die
Auswahlschaltung 111, den Eingangsanschluss a (nämlich MAX
1 – MAX
2) auszuwählen.
Wenn MAX 1 < MAX
2 ist, veranlasst das erste Ausgangssignal der Vergleichsschaltung 89 die
Auswahlschaltung 111, den Eingangsanschluss b (nämlich Null-Daten)
auszuwählen.
Wenn MIN 1 < MIN
2 ist, veranlasst das andere Ausgangssignal (das als das zweite
Ausgangssignal bezeichnet wird) der Vergleichsschaltung 89 die
Auswahlschaltung 112, den Eingangsanschluss a (nämlich MIN
2 – MIN
1) auszuwählen. Wenn
MIN 1 > MIN 2 ist,
veranlasst das zweite Ausgangssignal der Vergleichsschaltung 89 die
Auswahlschaltung 112, den Eingangsanschluss b (nämlich Null-Daten)
auszuwählen.
Einer Addierschaltung 113 werden ein Auswertungsergebniswert Δ1, der von
der Auswahlschaltung 111 gewonnen ist, und ein Auswertungsergebniswert Δ2, der von
der Auswahlschaltung 112 gewonnen ist, zugeführt. An
einem Ausgangsanschluss 114 wird ein Ausgangssignal (Δ1 + Δ2) der Addierschaltung 113 gewonnen.
Der Auswertungsergebniswert Δ,
welcher in der Auswertungsergebniswert-Berechnungsschaltung 90 erzeugt
ist, wird in einem Auswertungsergebniswert-Speicher 91 gespeichert.
-
Die Auswertungsergebniswerte Δ1 u. Δ2 variieren,
wie dies in 24 gezeigt
ist. Wenn MAX 1 < MAX
2 ist, ist der Auswertungsergebniswert Δ1 Null. Wenn MAX 1 > MAX 2 ist, wächst der
Auswertungsergebniswert entsprechend an. Wenn MIN 1 > MIN 2 ist, ist der
Auswertungsergebniswert Δ2
Null. Wenn MIN 1 < MJN
2 ist, wächst
der Auswertungsergebniswert Δ2
entsprechend an. In Wirklichkeit tritt ein Rauschen auf. Es wird
ein Rauschrand gesetzt. Es können
die Auswertungsergebniswerte Δ1
u. Δ2, wie
sie als gestrichelte Linien in 24 gezeigt
sind, erzeugt werden. Der in 23 gezeigte
Aufbau ist ein Beispiel. Durch eine Kombination mit einer Torschaltung oder
einer Vier-Eingänge-Auswahl
kann eine Vielfalt von Aufbauten benutzt werden. Als Auswertungsergebniswerte
können
die Absolutwerte von Differenzen, die Werte der n-ten Potenz davon
usf. benutzt werden.
-
Die Auswertungsergebniswerte werden
entsprechend dem Basis block für
jeden Prüfungsblock berechnet.
Die Größe des Suchbereichs
beträgt
z. B. (4 × 4)
Basisblöcke
oder Prüfungsblöcke (die
aus 8 × 16
Pixeln zusammengesetzt sind). Die Adressenbewegungsschaltung bewegt
eine ausgelesene Adresse, die aus dem Referenz-Vollbildspeicher 84 stammt,
unter Steuerung durch die Steuerschaltung 85. Daher wird
der Prüfungsblock
innerhalb des Suchbereichs bewegt. In diesem Beispiel werden, wie
dies in 25 gezeigt ist,
16 Auswertungsergebniswerte Δ1
bis Δ16
gewonnen. Die Auswertungsergebniswerte werden in dem Auswertungsergebniswert-Speicher 91 gespeichert.
Die Position des Basisblocks befindet sich nahezu in dem Zentrum
des Suchbereichs.
-
Zurückkehrend zu 20 ist festzustellen, dass die Auswertungsergebniswerte
unter Steuerung durch die Steuerschaltung 85 in dem Auswertungsergebniswert-Speicher 91 gespeichert
werden. Der Minimalwert der 16 Auswertungsergebniswerte Δ1 bis Δ16 wird durch
eine Minimalwert-Erfassungsschaltung 92 erfasst. Die Position
des Minimalwerts ist ein Bewegungsvektor des Basisblocks.
-
Als nächstes wird ein zweites Ausführungsbeispiel
der vorliegenden Erfindung beschrieben.
-
26 zeigt
einen Aufbau gemäß dem zweiten
Ausführungsbeispiel
der vorliegenden Erfindung. Gleiche Teile wie in dem in 20 gezeigten Aufbau sind
mit gleichen Bezugszeichen bezeichnet. In dem in 26 gezeigten Aufbau sind mit dem Gegenwarts-Vollbildspeicher 83 bzw.
dem Referenz-Vollbildspeicher 84 Kleinblock-Segmentierungsschaltungen 94 u. 95 verbunden.
Zusätzlich
ist mit der Auswertungsergebniswert-Berechnungsschaltung 90 eine
Kumulierschaltung 96 verbunden.
-
In dem zweiten Ausführungsbeispiel
wird ein Bereich, der aus (2 × 4)
Pixeln zusammmengeetzt ist, was im Zusammenhang mit dem ersten Ausführungsbeispiel
als der Basisblock be schrieben wurde, als ein kleiner Block oder
Kleinblock behandelt. Ein Bereich, der aus (4 × 4) kleinen Blöcken (nämlich 8 × 16 Pixeln)
zusammengesetzt ist, was der Suchbereich des ersten Ausführungsbeispiels
war, wird als ein Basisblock und ein Prüfungsblock behandelt. Ein Wert
MAX 1 und ein Wert MIN 1 jedes kleinen Blocks des Basisblocks werden
mit einem Wert MAX 2 bzw. einem Wert MIN 2 jedes kleinen Blocks
des Prüfungsblocks
verglichen. In gleicher Weise wie in der ersten veranschaulichenden
Anordnung werden Auswertungsergebniswerte Δ1 u. Δ2 für jeden kleinen Block berechnet.
-
Durch Vergleichen des Basisblocks
mit dem Prüfungsblock,
der sich in einer vorbestimmten Position befindet, und durch Berechnen
von Auswertungsergebniswerten werden Auswertungsergebniswerte Δ1 bis Δ16 gewonnen.
Die Auswertungsergebniswerte werden durch die Kumulierschaltung 96 kumuliert.
In anderen Worten ausgedrückt
heißt
dies, dass die Kumulierschaltung 96 eine Kumulation ΣΔ = Δ1 + Δ2 + ... + Δ 16 durchführt. Der
Prüfungsblock wird
in einem vorbestimmten Suchbereich bewegt. Der kumulierte Wert der
Auswertungsergebniswerte wird an jedem Suchpunkt gewonnen. Der Minimalwert
der kumulierten Auswertungsergebniswerte wird durch die Minimalwert-Erfassungsschaltung 92 erfasst.
Ein Bewegungsvektor, welcher der Position des Prüfungsblocks entspricht, der
den Minimalwert erzeugt, wird an einem Ausgangsanschluss 93 gewonnen.
-
27 zeigt
ein schematisches Diagramm, das einen Teil eines Suchbereichs für ±5 Pixel
(durch gestrichelte Linien angegeben) darstellt. Es sei angenommen,
dass das Zentrum des Basisblocks ein Basispunkt ist und dass eine
Koordinatenachse x, die alle vier Pixel in Abschnitte unterteilt
ist, und eine Koordinatenachse y, die alle zwei Pixel in Abschnitte
unterteilt ist, gezeigt sind. Wenn der Prüfungsblock in der Position
(+5, +5), die in 27 gezeigt
ist, den Minimalwert der kumulierten Auswertungsergebniswerte erzeugt,
wird ein Bewegungsvektor (+20 (= 4 × 5), +10 (= 2 × 5)) ausgegeben.
-
Es werden Bereiche des Basisblocks
und des Prüfungsblocks
verglichen. Als Beträge,
die den Bereich aller Pixel des Prüfungsblocks repräsentieren,
werden z. B. der Maximalwert MAX 2 und der Minimalwert MIN 2 gewonnen.
Wenn der Wert MAX 1 und der Wert MIN 1 des Basisblocks nicht in
dem Bereich vorliegen, wird bestimmt, dass der Basisblock nicht
mit dem Prüfungsblock
verglichen worden ist. Wenn herkömmlicherweise
die Anzahl von Suchpunkten zum Vereinfachen des Vergleichs-Prozesses
herabgesetzt wird, wird infolge einer Phasenabweichung ein Fehler
erfasst. Jedoch kann selbst dann, wenn die Anzahl von Suchpunkten
z. B. für
jeweils mehrere Pixel wie bei der Vollsuche der Suchpunkte herabgesetzt
ist, der Vergleich ohne eine Phasenabweichung durchgeführt werden.
-
28 zeigt
eine schematische Darstellung zur Erklärung der Tatsache, dass der
Vergleich solcher Bereiche keine Phasenabweichung verursacht. Aus
Gründen
der Einfachheit sei ein eindimensionaler Block angenommen, der aus
vier Pixeln mit Werten a, b, c u. d zusammengesetzt ist. Alle vier
Pixel sind gestrichelte Linie gezeigt. Der eindimensionale Block
wird als ein Basisblock betrachtet. In 28 sind Bewegungen des Basisblocks um
+1 Pixel, +2 Pixel, +3 Pixel und +4 Pixel gezeigt.
-
Wie aus 28 ersichtlich kann, wenn Bereiche verglichen
werden, falls die Größe des Prüfungsblocks
die gleiche wie die Größe des Basisblocks
ist und der Basisblock um +1 Pixel, +2 Pixel, +3 Pixel und +4 Pixel
bewegt wird, ein Fehler in dem Vergleich auftreten Wenn jedoch die
Größe des Basisblocks
vier Pixel beträgt,
kann da der Basisblock einen um zwei Pixel erweiterten Bereich links
und rechts davon hat, ein Fehler bei dem Vergleich verhindert werden.
Wenn der Basisblock um +3 Pixel oder +4 Pixel bewegt wird, kann
der Vergleich mit dem nächsten
Basisblock durchgeführt
werden. Der erweiterte Bereich des Prüfungsblocks hängt von
der Größe desselben
ab. Bei dem herkömmlichen
Vereinfachungs-Verfahren, das die Anzahl von Suchpunkten herabsetzt,
können
nur Bewegungen des Basisblocks um 0 Pixel und irgendein Vielfaches
der Länge
der Suchpunkte erfasst werden. Eine solche Phasenabweichung kann
jedoch kompensiert werden.
-
Ebensogut wie die Vereinfachung der
Suchpunkte vorgenommen werden kann, können die Anzahl von Berechnungen
und die Anzahl von Vergleichen merklich verringert werden. Zusätzlich kann
ein Fehler infolge einer Phasenabweichung verhindert werden.
-
Zusammenfassend ist festzustellen,
dass Ausführungsbeipiele
der Erfindung ein Verfahren und eine Vorrichtung zum partiellen
Vergleichen zweier digitaler Bilder und insbesondere zum Erfassen
eines Bewegungsvektors schaffen, der die Bewegungsrichtung und den
Bewegungsbetrag eines Bildes entsprechend einem Blockanpassungs-Verfahren
repräsentiert.
Die Vorrichtung und das Verfahren können die Anzahl von Berechnungen
und den Hardware-Aufwand verringern, verhindern, dass ein Fehler
erfasst wird, eine Phasenabweichung kompensieren und die Erfassungsgenauigkeit
verbessern.