DE60126612T2 - Ermittlung eines blockübereinstimmungskandidatenvektor - Google Patents

Ermittlung eines blockübereinstimmungskandidatenvektor Download PDF

Info

Publication number
DE60126612T2
DE60126612T2 DE60126612T DE60126612T DE60126612T2 DE 60126612 T2 DE60126612 T2 DE 60126612T2 DE 60126612 T DE60126612 T DE 60126612T DE 60126612 T DE60126612 T DE 60126612T DE 60126612 T2 DE60126612 T2 DE 60126612T2
Authority
DE
Germany
Prior art keywords
image
value
candidate
values
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE60126612T
Other languages
English (en)
Other versions
DE60126612D1 (de
Inventor
Piotr Wilinski
J. Marc OP DE BEECK
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Application granted granted Critical
Publication of DE60126612D1 publication Critical patent/DE60126612D1/de
Publication of DE60126612T2 publication Critical patent/DE60126612T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Television Signal Processing For Recording (AREA)

Description

  • Die Erfindung betrifft ein Verfahren zum Wählen eines optimalen Kandidatenwerts, der verwendet wird, um einen Block aus einem ersten Bild mit einem Bereich aus einem zweiten Bild zu vergleichen, wie in Anspruch 1 definiert.
  • Die Erfindung betrifft auch ein System zum Wählen eines optimalen Kandidatenwerts, der verwendet wird, um einen Block aus einem ersten Bild mit einem Bereich aus einem zweiten Bild zu vergleichen, wie in Anspruch 4 definiert.
  • Die Erfindung betrifft außerdem eine Vorrichtung zur Verarbeitung eines Videosignals, das eine Vielzahl von Bildern umfasst.
  • Ein Verfahren des im einleitenden Absatz definierten Typs ist aus der internationalen Patentanmeldung bekannt, die von den gleichen Anmeldern unter der Nummer WO 99/40726 veröffentlicht wurde. Bei blockbasierten Techniken zur Bestimmung der Bewegung und Tiefe in einem Bild wird das Bild in eine Anzahl von Blöcken unterteilt, zum Beispiel in Rechtecke gleicher Größe. Das Bild kann dann mit einem anderen Bild verglichen werden, indem die einzelnen Blöcke im anderen Bild abgeglichen werden.
  • Der Abgleich eines Blocks mit einem zweiten Bild wird durchgeführt, indem eine Anzahl von Kandidatenwerten für den Bewegungsvektor oder die Tiefe gewählt werden und dann für jeden Kandidatenwert bestimmt wird, inwieweit der Block einem Bereich im zweiten Bild entspricht. Der Abweichungsgrad in diesem Abgleich kann berechnet werden. Diese Abweichung wird als die zum Kandidatenwert gehörige Übereinstimmungsabweichung bezeichnet. Der optimale Kandidatenwert ist der Kandidatenwert, der eine vergleichsweise kleine Übereinstimmungsabweichung aufweist. Geeignete Kandidatenwerte sind unter anderem die Tiefen oder die Bewegungsvektoren benachbarter Blöcke aus dem ersten Bild, da sie mit hoher Wahrscheinlichkeit etwa die gleichen Eigenschaften wie der vorliegende Block aufweisen. Da ein Block Pixel enthält, kann die Übereinstimmungsabweichung auf der Basis der entsprechenden Pixel im Block aus dem ersten Bild und im Bereich im zweiten Bild ermittelt werden. Eine mathematische Methode wie die Bestimmung des mittleren quadratischen Fehlers (MSE) ist zu diesem Zweck geeignet.
  • Das oben beschriebene Verfahren kann mehrmals wiederholt werden, um zur bestmöglichen Wahl des optimalen Kandidatenwerts zu gelangen. Falls die Tiefe im Bild bestimmt wird, werden die Tiefen anfangs zufällig gewählt. Bei jeder Wiederholung werden dann die Werte benachbarter Blöcke benutzt, die sich von der vorherigen Wiederholung unterscheiden können. Der neu ermittelte Wert mit der kleinsten Übereinstimmungsabweichung wird danach benutzt, um die Übereinstimmungsabweichung anderer Blöcke zu berechnen. Wenn die Werte sich nicht mehr ändern, ist die Endtiefe bestimmt worden, und die Wiederholungen können beendet werden. Bei jeder Wiederholung müssen der aktuelle Wert für den optimalen Kandidatenwert und die Übereinstimmungsabweichung für jeden Block gespeichert werden.
  • Es ist gängige Praxis, einen Zufallsbewegungsvektor oder eine Zufallstiefe zu diesem Satz hinzuzufügen, oder einen bereits hinzugefügten Wert erneut hinzuzufügen, nachdem ein Zufallswert hinzugefügt wurde. Dies vermeidet, dass die wiederholte Ausführung des Verfahrens nur lokal optimierte Kandidatenwerte ergibt.
  • Ein Nachteil dieses Verfahrens ist, dass durch Hinzufügen eines Zufallswerts auf der Basis eines Werts, der bereits hinzugefügt wurde oder nicht, die Bestimmung der Endtiefe oder des Endbewegungsvektors länger dauert als notwendig. Zudem können Schwingungen um den Endwert herum auftreten, weil der zufällig gewählte Wert einen negativen Einfluss auf das Verfahren hat. WO 97/46020 stellt ein Verfahren zum Erzeugen von Ausgabe-Bewegungsvektoren bereit, wobei Bewegungsvektoren aus einem codierten Signal gelesen werden und die gelesenen Bewegungsvektoren nachverarbeitet werden, um die Ausgabe-Bewegungsvektoren zu erhalten. Diese Nachverarbeitung umfasst das Generieren von Kandidatenbewegungsvektoren und das Wählen der Ausgabe-Bewegungsvektoren in Abhängigkeit von den Kandidatenbewegungsvektoren und den gelesenen Bewegungsvektoren. Doch die gewählten Kandidatenbewegungsvektoren können nicht optimal sein, da Parameter aus dem ersten Bild nicht ausreichend berücksichtigt werden.
  • Aus DE 197 44 134 ist es bekannt, einen Blockabgleich vorzusehen, der einen rekursiven Blockabgleicher verwendet. In diesem Dokument wird die Berechnung von Übereinstimmungsabweichungen auf der Basis von Kandidatenbewegungsvektoren durchgeführt. Die Kandidatenbewegungsvektoren können mit Aktualisierungsausdrücken verbessert werden, die berechnet werden, indem die horizontalen und vertikalen Luminanz gradienten mit der erhaltenen Übereinstimmungsabweichung multipliziert werden. Diese Aktualisierungsausdrücke sorgen aber nicht für die besten Blockabstimmungsergebnisse.
  • Eine Aufgabe der Erfindung ist die Bereitstellung eines Verfahrens des im einleitenden Absatz definieren Typs, in welchem eine bessere Wahl für den optimalen Kandidatenwert erfolgt.
  • Diese Aufgabe wird durch das Verfahren nach Anspruch 1 erreicht. Das Hinzufügen dieses Kandidatenwerts gewährleistet eine bessere Wahl für den optimalen Kandidatenwert, da der Kandidatenwert dem ersten Bild besser entspricht als ein zufällig gewählter Kandidatenwert. Denn die Auswahl wird auf der Basis von Eigenschaften des ersten Bilds bestimmt.
  • Die Eigenschaften des ersten Bilds schließen auch zeitliche Änderungen des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild ein. Wenn das Verfahren zum Beispiel mehrmals ausgeführt wird, sind zuvor erhaltene optimale Kandidatenwerte verfügbar. Auf der Basis dieser Werte kann der zweite Satz (Auswahl) so geformt werden, dass er den Änderungen entspricht. Wenn viele große Änderungen auftreten, kann die Auswahl mit vielen großen Kandidatenwerten geformt werden, da dies dem ersten Bild gut entspricht.
  • In einer weiteren Ausführungsform des Verfahrens wird ein Histogramm dieser Änderungen erzeugt, und der zweite Satz (Auswahl) wird im Verhältnis zu einer Verteilung im Histogramm bestimmt. Diese Ausführungsform ist darin vorteilhaft, dass dann auf einfache Weise bestimmt werden kann, welche Art von Änderungen auftreten, zum Beispiel große, mittlere oder kleine, so dass eine Auswahl geformt werden kann, die dem ersten Bild gut entspricht.
  • In einer weiteren Ausführungsform des Verfahrens schließen die Eigenschaften des ersten Bilds auch eine zeitliche Änderungsrichtung des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild ein. Diese Ausführungsform ist darin vorteilhaft, dass mit Hilfe dieser Eigenschaften bestimmt werden kann, ob eine wiederholte Ausführung des Verfahrens zur Schwingung des bei jeder Wiederholung gewählten optimalen Kandidatenwerts um einen bestimmten Punkt führt. In diesem Fall kann die Auswahl so gewählt werden, dass die Schwingung abgestellt wird.
  • Eine Aufgabe der Erfindung ist auch die Bereitstellung eines Systems des im einleitenden Teil definierten Typs, mit dem eine bessere Wahl für den optimalen Kandidatenwert getroffen wird.
  • Diese Aufgabe wird mit dem System nach Anspruch 4 erreicht.
  • Das System bestimmt diese Auswahl und stellt sie dem Kollektor bereit, so dass dieser letztere daraus einen Kandidatenwert wählen kann und ihn zum Satz hinzufügen kann.
  • Die Eigenschaften des ersten Bilds schließen auch zeitliche Änderungen des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild ein.
  • In einer weiteren Ausführungsform des Systems ist das System angeordnet, um ein Histogramm dieser Änderungen zu erzeugen und die Auswahl im Verhältnis zu einer Verteilung im Histogramm zu bestimmen.
  • In einer Ausführungsform des Systems schließen die Eigenschaften des ersten Bilds auch eine zeitliche Änderungsrichtung des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild ein.
  • Eine Aufgabe der Erfindung ist auch die Bereitstellung einer Vorrichtung des im einleitenden Teil definierten Typs, mit der eine bessere Verarbeitung des Videosignals erreicht werden kann.
  • Diese Aufgabe wird mit der Vorrichtung nach Anspruch 7 erreicht.
  • Der Bildprozessor verbessert das Bild auf der Basis des optimalen Kandidatenwerts, der von einem erfindungsgemäßen System gewählt wird. Da mit diesem System eine bessere Wahl des optimalen Kandidatenwerts erfolgt, führt dies zu einem verbesserten Bild, das besser ist als bei anderen Vorrichtungen.
  • In einer Ausführungsform umfasst die Vorrichtung außerdem ein Anzeigesystem zur Anzeige eines verbesserten Videosignals.
  • Diese und andere Aspekte der Erfindung gehen Bezug nehmend auf die im Folgenden beschriebene(n) Ausführungsform(en) hervor.
  • In den Zeichnungen:
  • Ist 1 eine schematische Darstellung mehrerer Graphen mit Kandidatenwerten und ihrer Übereinstimmungsabweichungen;
  • ist 2 eine schematische Darstellung der Änderung in mehreren Graphen mit Kandidatenwerten und ihrer Übereinstimmungsabweichungen;
  • ist 3 ein Histogramm mit Änderungen von Kandidatenwerten, die ihrer Größe entsprechend gruppiert sind; und
  • ist 4 eine schematische Darstellung einer erfindungsgemäßen Vorrichtung zur Verarbeitung eines Bilds.
  • In blockbasierten Techniken zur Bestimmung der Bewegung und Tiefe in einem ersten Bild wird das Bild in eine Anzahl von Blöcken aufgeteilt. Diese Blöcke können rechteckig und gleich groß sein, so dass die Aufteilung schnell und einfach durchgeführt werden kann, auch wenn es alternativ dazu möglich ist, beliebige andere Formen zu verwenden. Die Verwendung von nicht rechteckigen Blöcken ist darin vorteilhaft, dass dann beliebige Objekte durch eine Gruppe von Blöcken abgedeckt werden können, so dass die Bewegung oder Tiefe solch eines Objekts bestimmt werden kann. Durch Aufteilen des Bilds in Blöcke ist es dann möglich, das Bild mit einem zweiten Bild zu vergleichen, indem die Blöcke aus dem ersten Bild mit einem Bereich aus dem zweiten Bild abgeglichen werden. Wenn die Blöcke klein genug gewählt werden, kann angenommen werden, dass jeder Block einheitlich verschoben wird und dass die Tiefe in einem Block überall die gleiche ist. Dann ist es möglich, nach einem Bereich aus dem zweiten Bild zu suchen, der einem Block aus dem ersten Bild entspricht. Wenn dieser ermittelt wurde, kann die Verschiebung dieses Blocks zwischen den zwei Bildern bestimmt werden, und dadurch die Bewegung dieses Blocks. Wenn die zwei Bilder beide ein stillstehendes Objekt darstellen, stellt dies die Information dar, die notwendig ist, um die Tiefe des Objekts zu bestimmen.
  • Es kommt selten vor, dass ein Block aus dem ersten Bild völlig mit einem Bereich aus dem zweiten Bild übereinstimmt. Dieses Problem wird gelöst, indem auf der Basis des Kandidatenwerts für die Tiefe oder für den Bewegungsvektor bestimmt wird, wo der Block aus dem ersten Bild sich im zweiten Bild befinden müsste. Danach wird der dementsprechende Bereich aus dem zweiten Block mit dem ersten Block verglichen, und der Abweichungsgrad der Übereinstimmung kann berechnet werden. Diese Abweichung wird Übereinstimmungsabweichung des Kandidatenwerts genannt. Der optimale Kandidatenwert ist der Kandidatenwert, der eine vergleichsweise kleine Übereinstimmungsabweichung aufweist, bevorzugt die kleinste Übereinstimmungsabweichung.
  • Da ein Block aus Pixeln besteht, kann die Übereinstimmungsabweichung auf der Basis der entsprechenden Pixel in den zwei Blöcken bestimmt werden. Eine mathematische Methode wie z.B. die Bestimmung des mittleren quadratischen Fehlers (MSE) ist zu diesem Zweck geeignet. Mit dieser Methode kann die Übereinstimmungsabweichung für einen Bewegungsvektor (dx, dy) wie folgt berechnet werden:
    Figure 00060001
    Hierin sind M und N die Abmessungen des Blocks in Pixel, und Ui(m, n) ist die Pixelintensität im Bild i an der Position (m, n). Die Berechnung der Übereinstimmungsabweichung für eine Tiefe d erfolgt auf entsprechende Weise.
  • Eine andere geeignete mathematische Methode ist die Berechnung der Summe der absoluten Differenzen (SAD). Die Übereinstimmungsabweichung für eine Tiefe d kann hiermit wie folgt berechnet werden:
    Figure 00060002
    Hierin ist (x, y) ein Pixel in einem Block B, und Δx(d) ist die Änderung von x auf der Basis des Kandidatenwerts für die Tiefe d.
  • Zusätzlich zum mittleren quadratischen Fehler und der Summe der absoluten Differenzen können auch andere mathematische Methoden wie z.B. die mittlere absolute Differenz oder die Summe der quadratischen Fehler verwendet werden, um die Übereinstimmungsabweichung eines Kandidatenwerts für die Tiefe oder für einen Bewegungsvektor zu berechnen.
  • Aus praktischen Gründen, unter anderem, weil während der Videosignalverarbeitung nur wenig Zeit für die Verarbeitung eines Einzelbilds zur Verfügung steht, wird gewöhnlich ein Satz mit einer begrenzten Zahl von Kandidatenwerten erzeugt, die dann wie oben beschrieben verwendet werden, um einen Bereich aus dem zweiten Bild zu bestimmen, wonach der Block aus dem ersten Bild abgeglichen wird. Es ist gängige Praxis, dass die Werte für die Tiefe oder der ermittelte Bewegungsvektor benachbarter anderer Blöcke gewählt werden, möglicherweise ergänzt um einen Zufallswert oder einen zuvor berechneten Wert für die Tiefe oder den Bewegungsvektor dieses Blocks. Nachdem die Übereinstimmungsabweichungen der Elemente des Satzes berechnet worden sind, wird der Kandidatenwert mit der kleinsten Übereinstimmungsabweichung als optimaler Kandidatenwert gewählt.
  • Die Schritte des Erzeugens des Satzes, Berechnens der Übereinstimmungsabweichung der Elemente dieses Satzes und Wählens des optimalen Kandidatenwerts können als drei separate Schritte ausgeführt werden, aber auch in Verbindung miteinander. Für jeden gewählten Kandidatenwert kann die Übereinstimmungsabweichung zum Beispiel direkt berechnet werden, wonach diese Übereinstimmungsabweichung mit einem „laufenden Minimum" verglichen werden kann. Wenn sich herausstellt, dass eine Übereinstimmungsabweichung, die gerade berechnet wurde, kleiner ist als dieses laufende Minimum, wird der aktuelle Kandidatenwert als ein vorläufiger optimaler Kandidatenwert gewählt, und seine Übereinstimmungsabweichung als neues laufendes Minimum. Nachdem alle Kandidatenwerte im Satz gewählt worden sind, wird der so bestimmte vorläufige optimale Kandidatenwert dann zum realen optimalen Kandidatenwert.
  • Das oben beschriebene Verfahren kann mehrmals wiederholt werden, um zur bestmöglichen Wahl des optimalen Kandidatenwerts zu gelangen. Falls die Tiefe im Bild bestimmt wird, werden die Tiefen anfangs zufällig gewählt. Bei jeder Wiederholung werden dann die Werte benachbarter Blöcke verwendet, deren Werte sich von den Werten der vorherigen Wiederholung unterscheiden können. Der neu ermittelte Wert, der die kleinste Übereinstimmungsabweichung aufweist, wird danach verwendet, um die Übereinstimmungsabweichung anderer Blöcke zu berechnen. Wenn die Werte sich nicht mehr ändern, ist der Endwert bestimmt worden und die Wiederholungen können beendet werden. Bei jeder Wiederholung müssen der aktuelle Wert für den optimalen Kandidatenwert und die Übereinstimmungsabweichung für jeden Block gespeichert werden.
  • Es ist gängige Praxis, einen Zufallsbewegungsvektor oder eine Zufallstiefe zu diesem Satz hinzuzufügen, oder einen bereits hinzugefügten Wert erneut hinzuzufügen, nachdem ein Zufallswert hinzugefügt wurde. Dies vermeidet, dass die wiederholte Ausführung des Verfahrens nur lokal optimierte Kandidatenwerte ergibt. Dieser zufällige Bewegungsvektor oder Tiefenwert stammt oft aus einer vorbestimmten Auswahl von Werten, so dass es nicht notwendig ist, einen oder mehrere Zufallswerte für jeden Block zu generieren.
  • Im erfindungsgemäßen Verfahren wird ein Kandidatenwert zu diesem Satz hinzugefügt, wobei dieser Kandidatenwert aus einer Auswahl von Kandidatenwerten stammt. Diese Auswahl von Kandidatenwerten wird als erstes bestimmt, zum Beispiel vor einer Wiederholung des oben beschriebenen Verfahrens. Die Kandidatenwerte aus dieser Auswahl werden auf der Basis von Eigenschaften des ersten Bilds bestimmt. Diese Eigenschaften können auch zeitliche Änderungen des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild einschließen.
  • 1 zeigt einen Graphen mit Blocktiefen in einem ersten Bild, die mit dem oben beschriebenen Verfahren bestimmt wurden. Ein entsprechender Graph kann für Bewegungsvektoren erzeugt werden. Wenn der Graph sich auf Tiefenkandidatenwerte bezieht, werden die kleinsten Werte für die Tiefenminima des Graphs verwendet. Bei Bewegungsvektorkandidatenwerten ist jeder Kandidatenwert ein Vektor, der Komponenten für die Horizontal- und Vertikalbewegung aufweist. In diesem Fall ist ein Bewegungsvektorkandidatenwert ein Minimum des Graphs, wenn eine der Komponenten dieses Vektors kleiner ist als die entsprechende Komponente der anderen Vektoren.
  • Im Graph, der in 1 gezeigt wird, sind die Blocktiefen aus dem ersten Bild auf der y-Achse den Blöcken auf der x-Achse gegenüber geplottet. Die Kurve 10 bezeichnet Blocktiefen, die bei einer ersten Wiederholung des oben beschriebenen Verfahrens bestimmt wurden, und die Kurve 11 zeigt Tiefen, die bei einer zweiten Wiederholung bestimmt wurden. Die Kurven 10 und 11 können auch auf andere Weisen erhalten werden, zum Beispiel über einen Algorithmus, der Tiefenwerte statistisch bestimmt, oder durch Verwenden von Tiefeninformation aus einer externen Quelle. Auf der Basis der Kurven 10 und 11 kann ein neuer Graph erzeugt werden, der die absoluten Differenzen der Blocktiefen zeigt. Dieser Graph wird in 2 gezeigt. Kurve 20 wird erhalten, indem für jeden Punkt auf der x-Achse des Graphen von 1 die absolute Differenz zwischen den Werten der Kurven 10 und 11 bestimmt wird und diese Differenz dem entsprechenden Punkt auf der x-Achse des Graphen von 2 gegenüber geplottet wird.
  • Auf der Basis des Graphen von 2 wird ein Histogramm der Änderungen erzeugt, das in 3 gezeigt wird. Die Werte der Kurve 20 sind auf der Basis ihres Auftrittshäufigkeit gruppiert. Die Gruppe 30 enthält kleine Werte aus dem Graph von 2, die Gruppe 32 große Werte aus diesem Graph und die Gruppe 31 Zwischenwerte. Die Grenzen zwischen den Gruppen 30, 31 und 32 sind willkürlich gewählt und sind von der Gesamtzahl der Blöcke abhängig, die berücksichtigt werden, und von ihrer relativen Verteilung. Falls die Gruppe 32 sehr wenig Werte enthält, kann die Gruppe 32 erweitert werden, indem die Grenze zwischen Gruppe 32 und Gruppe 31 verschoben wird.
  • Aus dem Histogramm von 3 geht hervor, dass es vergleichsweise wenig kleinere Tiefenänderungen im ersten Bild gibt. Tatsächlich enthält die Gruppe 30 wenig Werte, und diese Werte stellen Tiefenänderungen dar, wie sie im Graph von 2 erhalten wurden. Dementsprechend gibt es vergleichsweise wenig große Änderungen und relativ viele mittlere Änderungen.
  • Nun wird eine Auswahl von Werten erzeugt, wobei diese Werte im Verhältnis zum Histogramm von 3 gewählt werden. Ausgehend vom Histogramm wird eine Auswahl geformt, die relativ wenig große und kleine Werte und relativ viele Zwischenwerte enthält.
  • Im oben beschriebenen Verfahren zur Bestimmung eines optimalen Kandidatenwerts wird ein Satz von Kandidatenwerten erzeugt, um einen zu vergleichenden Bereich aus einem zweiten Bild zu bestimmen. Zu diesem Satz wird auch ein Kandidatenwert hinzugefügt, der aus einer Auswahl von Kandidatenwerten gewählt wird, die auf der Basis von Eigenschaften des ersten Bilds bestimmt werden, wie z.B. Tiefenänderungen, die dem Histogramm von 3 zu entnehmen sind.
  • Der Graph von 1 und somit das Histogramm von 3 können für das gesamte erste Bild oder einen Teilbereich davon erzeugt werden. Im letzteren Fall können separate Auswahlen für jeden Teilbereich erzeugt werden. Diese Auswahlen können auch nach einer oder mehreren Wiederholungen des Verfahrens zur Bestimmung eines optimalen Kandidatenwerts angepasst werden, indem der Graph von 1 neu erstellt und ein neues Histogramm erzeugt wird.
  • Die Wahl eines Kandidatenwerts aus dieser Auswahl kann auf der Basis eines zuvor gewählten optimalen Kandidatenwerts für den Block aus dem ersten Bild erfolgen, der verglichen werden soll. Wenn sich herausstellt, dass in diesen zuvor gewählten optimalen Kandidatenwerten größere Änderungen aufgetreten sind, wird aus der Auswahl ein großer Kandidatenwert gewählt. Wenn sich herausstellt, dass es zwischen den zuvor gewählten Kandidatenwerten nur kleinere Änderungen gegeben hat, ist es besser, aus der Auswahl einen kleinen Kandidatenwert zu wählen.
  • Um Schwingungen um einen Kandidatenwert herum zu verhindern, kann eine andere Eigenschaft des ersten Bilds verwendet werden, das heißt, Information über die Richtung der Änderungen in zuvor gewählten optimalen Kandidatenwerten. Auf diese Weise kann erkannt werden, ob diese Richtung ständig wechselt, und dadurch kann erkannt werden, ob Schwingungen vorliegen. Dann wird aus der Auswahl ein Kandidatenwert gewählt, der die gleiche Richtung hat wie ein zuvor gewählter optimaler Kandidatenwert.
  • 4 stellt eine Vorrichtung zur Verarbeitung eines Videosignals 40 dar, wobei dieses Videosignal 40 eine Vielzahl von Bildern umfasst. Die Vorrichtung umfasst einen Bildprozessor 41, der angeordnet ist, um das Videosignal 40 zu verarbeiten, um ein verbessertes Videosignal zu erhalten. Dieses verbesserte Videosignal wird dann auf einem Anzeigebildschirm 42 angezeigt. Auch wenn 4 den Anzeigebildschirm 42 als Teil der gleichen Vorrichtung zeigt, die den Bildprozessor 41 einschließt, versteht es sich, dass der Anzeigebildschirm 42 auch von der Vorrichtung unabhängig angeordnet sein kann und das verbesserte Videosignal über ein Netzwerk von der Vorrichtung empfangen kann.
  • Der Bildprozessor 41 kann das Videosignal 41 auf der Basis der Information über die Bewegung oder Tiefe von Einzelbildern im Videosignal 40 verbessern. Zum Beispiel ist es dem Bildprozessor 31 möglich, das Videosignal 40 so zu verarbeiten, dass ein Benutzer das Bild aus einem anderen Winkel betrachten kann, indem einzelne Objekte, die durch eine Gruppe von Blöcken bestimmt werden, auf der Basis der Tiefeninformation separat gedreht werden, und dadurch eine korrekte Wiedergabe aus einem anderen Winkel erzeugt wird. Dies kann zum Beispiel eine stereoskopische Wiedergabe ergeben. Bewegungsinformation kann zur Erkennung und Markierung von beweglichen Objekten verwendet werden, zum Beispiel bei automatischen Überwachungskameras. Das so erhaltene Videosignal mit markierten Objekten stellt für Benutzer dieser Kameras eine Verbesserung dar, da sie Veränderungen im Bild dann viel schneller erkennen können.
  • In einer anderen möglichen Anwendung verbessert der Bildprozessor 41 das Videosignal 40, das zum Beispiel in einem komprimierten Format wie MPEG angeboten wird, indem es ein Videosignal erzeugt, das wirkungsvoller komprimiert wird. Ein einzelnes Objekt, das durch eine Gruppe von Blöcken bestimmt wird, wobei dieses Objekt in einer Anzahl von Bildern im Videosignal auftritt, kann dann komprimiert werden, indem Pixelinformation über das Objekt nur einmal gespeichert wird und nur die Bewegungsvektor- oder Tiefeninformation dieses Objekts für andere Bilder gespeichert wird, in denen dieses Objekt auftritt. Da diese Information weniger Speicherkapazität als die Pixelinformation des kompletten Objekts erfordert, kann ein Verfahren wie dieses ein erheblich verbessertes komprimiertes Videosignal ergeben.
  • Der Klarheit halber betrifft die nachstehende Erläuterung nur die Funktion von Elementen des Systems, wenn eine erste Blocktiefe bestimmt wird, aus dem obigen geht aber klar hervor, dass die Bewegung eines ersten Blocks auf ähnliche Weise bestimmt werden kann.
  • Die Vorrichtung umfasst außerdem einen Kollektor 43, einen Abgleicher 46 und einen Selektor 47. Der Kollektor 43 ist angeordnet, um einen Satz 45 von Kandidatenwerten zur Bestimmung eines zu vergleichenden Bereichs aus dem zweiten Bild zu erzeugen. Der vom Kollektor 43 erzeugte Satz 45 umfasst unter anderem zuvor bestimmte Tiefen von Blöcken benachbart zum ersten Block. Die Tiefen benachbarter Blöcke weisen allgemein eine geringe gegenseitige Differenz auf. Die Tiefen von Blöcken, die benachbart zum ersten Block sind, stellen deshalb einen guten Ausgangspunkt dar, um die Tiefe des ersten Blocks zu bestimmen, und werden daher als Kandidatenwerte für diese Tiefe verwendet. Zu diesem Zweck ist ein Speichersystem 44 vorhanden, auf welchem diese Tiefe und andere zuvor bestimmte Tiefen gespeichert werden können, so dass der Kollektor 43 diese verwenden kann, wenn er den Satz 45 von Kandidatenwerten erzeugt.
  • Der Kollektor 43 sendet den Satz 45 von Kandidatenwerten an einen Abgleicher 46. Der Abgleicher 46 bestimmt für jeden Kandidatenwert aus dem Satz, auf der Basis dieses Kandidatenwerts, einen zu vergleichenden Bereich aus dem zweiten Bild. Danach vergleicht der Abgleicher 46 den Block aus dem ersten Bild mit diesem Bereich, und der Abgleicher 46 berechnet einen zugehörigen Übereinstimmungsbereich, wie oben beschrieben. Zu diesem Zweck können die vorgenannten Methoden wie z.B. der mittlere quadratische Fehler, die mittlere absolute Differenz, die Summe der absoluten Differenzen oder die Summe der quadratischen Fehler implementiert werden.
  • Nachdem die Übereinstimmungsabweichungen der Kandidatenwerte aus dem Satz 45 berechnet worden sind, wählt ein Selektor 47 auf der Basis der berechneten Übereinstimmungsabweichungen den optimalen Kandidatenwert 48 aus dem Satz 45. Der optimale Kandidatenwert 48 ist der Kandidatenwert, der eine vergleichsweise kleine Übereinstimmungsabweichung aufweist. Der Selektor 47 sendet den optimalen Kandidatenwert 48 dann an den Bildprozessor 41. Die Wiederholung dieses Verfahrens für verschiedene Blöcke aus einem Bild ergibt die Tiefeninformation für dieses Bild. Auf der Basis des so gewonnenen Tiefeninformation kann der Bildprozessor 41 das Videosignal 40 verarbeiten, um ein verbessertes Videosignal zu erhalten. Dieses verbesserte Videosignal kann dann auf dem Anzeigebildschirm 42 angezeigt werden.
  • Das System bestimmt eine Auswahl von Kandidatenwerten, die auf der Basis von Eigenschaften des ersten Bilds bestimmt werden. Der Kollektor 43 fügt diesem Satz 45 einen Kandidatenwert hinzu, wobei dieser Kandidatenwert aus dieser Auswahl von Kandidatenwerten stammt.
  • Die Eigenschaften des ersten Bilds schließen auch zeitliche Änderungen des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild ein. Um die Auswahl zu bestimmen, erzeugt das System ein Histogramm dieser Änderungen.
  • Danach bestimmt das System die Auswahl im Verhältnis zu einer Verteilung im Histogramm, wie oben Bezug nehmend auf 1, 2 und 3 beschrieben. Es ist anzumerken, dass Bezugszeichen nicht als die Ansprüche einschränkend aufzufassen sind.

Claims (8)

  1. Verfahren zum Wählen eines optimalen Kandidatenwerts, der verwendet wird, um einen Block aus einem ersten Bild mit einem Bereich aus einem zweiten Bild zu vergleichen, wobei das Verfahren umfasst: (a) Das Erzeugen eines ersten Satzes (45) von Kandidatenwerten zur Bestimmung eines zu vergleichenden Bereichs aus dem zweiten Bild, (b) für jeden Kandidatenwert aus dem ersten Satz (45), das Bestimmen, auf der Basis dieses Kandidatenwerts, eines zu vergleichenden Bereichs aus dem zweiten Bild, das Vergleichen des Blocks aus dem ersten Bild mit diesem Bereich und das Berechnen einer Übereinstimmungsabweichung, und (c) das Wählen des optimalen Kandidatenwerts (48) aus dem ersten Satz (45) auf der Basis der berechneten Übereinstimmungsabweichungen, dadurch gekennzeichnet, dass ein zweiter Satz von Kandidatenwerten bestimmt wird, wobei diese Kandidatenwerte auf der Basis von Eigenschaften des ersten Bilds bestimmt werden, und Schritt (a) auch das Hinzufügen, zum ersten Satz, eines Kandidatenwerts umfasst, der aus dem zweiten Satz gewählt wird, wobei die Eigenschaften des ersten Bilds auch zeitliche Änderungen des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild umfassen.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass ein Histogramm dieser Änderungen erzeugt wird und der zweite Satz im Verhältnis zu einer Verteilung im Histogramm bestimmt wird.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Eigenschaften des ersten Bilds auch eine zeitliche Änderungsrichtung des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild einschließen.
  4. System zum Wählen eines optimalen Kandidatenwers, der verwendet wird, um einen Block aus einem ersten Bild mit einem Bereich aus einem zweiten Bild zu vergleichen, wobei das System umfasst: – einen Kollektor (43), der angeordnet ist, um einen ersten Satz (45) von Kandidatenwerten zur Bestimmung eines zu vergleichenden Bereichs aus dem zweiten Bild zu erzeugen, – einen Abgleicher (46), der angeordnet ist, um für jeden Kandidatenwert aus dem ersten Satz auf der Basis dieses Kandidatenwerts einen zu vergleichenden Bereich aus dem zweiten Bild zu bestimmen, den Block aus dem ersten Bild mit diesem Bereich zu vergleichen und einen Übereinstimmungsbereich zu berechnen, und – einen Selektor (47), der angeordnet ist, um auf der Basis der berechneten Übereinstimmungsabweichungen den optimalen Kandidatenwert (48) aus dem ersten Satz (45) zu wählen, dadurch gekennzeichnet, dass das System angeordnet ist, um einen zweiten Satz von Kandidatenwerten zu bestimmen, wobei diese Kandidatenwerte auf der Basis von Eigenschaften des ersten Bilds bestimmt werden, wobei die Eigenschaften des ersten Bilds auch zeitliche Änderungen des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild einschließen, und der Kollektor (43) auch angeordnet ist, um einen Kandidatenwert, der aus dieser Auswahl gewählt wird, zum Satz (45) hinzuzufügen.
  5. System nach Anspruch 4, dadurch gekennzeichnet, dass das System angeordnet ist, um ein Histogramm dieser Änderungen zu erzeugen und den zweiten Satz im Verhältnis zu einer Verteilung im Histogramm zu bestimmen.
  6. System nach Anspruch 4, dadurch gekennzeichnet, dass die Eigenschaften des ersten Bilds auch eine zeitliche Änderungsrichtung des Werts zuvor gewählter optimaler Kandidatenwerte für Blöcke aus dem ersten Bild einschließen.
  7. Vorrichtung zur Verarbeitung eines Videosignals (40), das eine Vielzahl von Bildern einschließt, umfassend: – ein System (43, 46, 47) nach Anspruch 4, um einen optimalen Kandidatenwert (48) zu wählen, der verwendet wird, um einen Block aus einem ersten Bild (40) mit einem Bereich aus einem zweiten Bild zu vergleichen, wobei das System angeordnet ist, um optimale Kandidatenwerte für Blöcke aus den Bildern aus dieser Vielzahl von Bildern zu wählen, und – einen Bildprozessor (41) zur Verarbeitung des Videosignals (40), um ein verbessertes Videosignal auf der Basis der erhaltenen optimalen Kandidatenwerte zu erhalten, die vom System (43, 46, 47) bestimmt wurden.
  8. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, dass die Vorrichtung außerdem ein Anzeigesystem (42) zur Anzeige des verbesserten Videosignals umfasst.
DE60126612T 2000-05-19 2001-04-27 Ermittlung eines blockübereinstimmungskandidatenvektor Expired - Fee Related DE60126612T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP00201772 2000-05-19
EP00201772 2000-05-19
PCT/EP2001/004770 WO2001091054A1 (en) 2000-05-19 2001-04-27 Determination of a block matching candidate vector

Publications (2)

Publication Number Publication Date
DE60126612D1 DE60126612D1 (de) 2007-03-29
DE60126612T2 true DE60126612T2 (de) 2007-10-31

Family

ID=8171516

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60126612T Expired - Fee Related DE60126612T2 (de) 2000-05-19 2001-04-27 Ermittlung eines blockübereinstimmungskandidatenvektor

Country Status (8)

Country Link
US (1) US6810134B2 (de)
EP (1) EP1295255B1 (de)
JP (1) JP2003534615A (de)
KR (1) KR20020020944A (de)
CN (1) CN1230784C (de)
AT (1) ATE354141T1 (de)
DE (1) DE60126612T2 (de)
WO (1) WO2001091054A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7006666B2 (en) * 2001-11-21 2006-02-28 Etreppid Technologies, Llc Method and apparatus for detecting and reacting to occurrence of an event
WO2010050632A1 (en) * 2008-10-29 2010-05-06 Udp Co., Ltd. Image stabilization method and device for performing the method
CN111462170B (zh) 2020-03-30 2023-08-25 Oppo广东移动通信有限公司 运动估计方法、运动估计装置、存储介质与电子设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5642294A (en) * 1993-12-17 1997-06-24 Nippon Telegraph And Telephone Corporation Method and apparatus for video cut detection
US5802361A (en) * 1994-09-30 1998-09-01 Apple Computer, Inc. Method and system for searching graphic images and videos
US5946044A (en) * 1995-06-30 1999-08-31 Sony Corporation Image signal converting method and image signal converting apparatus
WO1997046020A2 (en) * 1996-05-24 1997-12-04 Philips Electronics N.V. Motion vector processing
DE69730565T2 (de) * 1996-06-26 2005-02-03 Matsushita Electric Industrial Co., Ltd., Kadoma Gerät zur Erzeugung eines stereoskopischen bewegenden Bildes mittels Computergraphik
US6030344A (en) * 1996-12-04 2000-02-29 Acuson Corporation Methods and apparatus for ultrasound image quantification
US6249318B1 (en) * 1997-09-12 2001-06-19 8×8, Inc. Video coding/decoding arrangement and method therefor
US6091777A (en) * 1997-09-18 2000-07-18 Cubic Video Technologies, Inc. Continuously adaptive digital video compression system and method for a web streamer
DE19744134A1 (de) * 1997-09-29 1999-04-01 Hertz Inst Heinrich Verfahren zur Bestimmung von Blockvektoren für die Bewegungsschätzung
KR100251548B1 (ko) * 1997-11-01 2000-04-15 구자홍 디지털영상을위한움직임추정장치및방법
US6335985B1 (en) * 1998-01-07 2002-01-01 Kabushiki Kaisha Toshiba Object extraction apparatus
JP2001520781A (ja) * 1998-02-06 2001-10-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 動き又はデプス推定
US6298144B1 (en) * 1998-05-20 2001-10-02 The United States Of America As Represented By The National Security Agency Device for and method of detecting motion in an image
JP3280001B2 (ja) * 1999-09-16 2002-04-30 富士重工業株式会社 ステレオ画像の位置ずれ調整装置

Also Published As

Publication number Publication date
KR20020020944A (ko) 2002-03-16
EP1295255A1 (de) 2003-03-26
DE60126612D1 (de) 2007-03-29
CN1381026A (zh) 2002-11-20
US20020009210A1 (en) 2002-01-24
WO2001091054A1 (en) 2001-11-29
CN1230784C (zh) 2005-12-07
JP2003534615A (ja) 2003-11-18
EP1295255B1 (de) 2007-02-14
ATE354141T1 (de) 2007-03-15
US6810134B2 (en) 2004-10-26

Similar Documents

Publication Publication Date Title
EP0645037B1 (de) Verfahren zur detektion von änderungen in bewegtbildern
EP1585059A2 (de) Verfahren und Vorrichtung zur Ermittlung von Bewegungsvektoren, die Bildbereichen eines Bildes zugeordnet sind
DE60028584T2 (de) System und methode zur bildinterpolation
DE19618984B4 (de) Verfahren zur Bewegungsbewertung in Bilddaten sowie Vorrichtung zur Durchführung dieses Verfahrens
WO2001076258A2 (de) Erzeugung einer stereo-bildfolge aus einer 2d-bildfolge
DE102005046772A1 (de) Iteratives Verfahren zur Interpolation von Bildinformationswerten
DE602005000425T2 (de) Verfahren und Anordnung zur Erzeugung von Kandidatenvektoren für Bildinterpolierungssysteme, die Bewegungsabschätzung und -kompensation verwenden
DE60131796T2 (de) Objektgebietdatenerzeugungsmethode und -vorrichtung, Polygonannäherungsmethode und -vorrichtung
DE3524505A1 (de) Bilderkennungsvorrichtung
DE4143074A1 (de) Verfahren und einrichtung zum umformatieren verschachtelter videodaten zur darstellung auf einem computer-ausgabedisplay
DE3905234C2 (de)
DE60126612T2 (de) Ermittlung eines blockübereinstimmungskandidatenvektor
DE60031559T2 (de) Verfahren und gerät zur lernfähigen klassenauswahl nach mehreren klassifikationen
DE60121443T2 (de) Blockbasierte Bewegungs- oder Tiefenschätzung
DE69738480T2 (de) Interpolationsverfahren von Binärbildern
EP2105883A1 (de) Verfahren zum Testen eines Bewegungsvektors
EP0897247A2 (de) Verfahren zur Berechnung von Bewegungsvektoren
DE69930333T2 (de) Verfahren und Vorrichtung zum Verarbeiten von Bildern und Aufnahmemedium dafür
EP3073446B1 (de) Verfahren zum darstellen einer fahrzeugumgebung eines fahrzeuges
DE102009026983A1 (de) Bildverarbeitungsverfahren mit einer Bewegungsschätzung und Bildverarbeitungsanordnung
DE10327577A1 (de) Verfahren zur Ermittlung eines Verschiebungsvektors in der Bildverarbeitung
DE3000918A1 (de) Korrelationsvorrichtung und verfahren zur durchfuehrung einer korrelation
WO2010028718A2 (de) Verfahren zur bildverarbeitung von stereobildern
EP1729258A2 (de) Verfahren und Vorrichtung zur Ermittlung von Bewegungsvektoren
EP3685352B1 (de) Verfahren und vorrichtung zum bewerten von bildern, betriebsassistenzverfahren und betriebsvorrichtung

Legal Events

Date Code Title Description
8339 Ceased/non-payment of the annual fee