DE602005001292T2 - Verfahren und Anordnung zur Erzeugung von Kandidatenvektoren für Bildinterpolierungssyteme, die Bewegungsabschätzung und -kompensation verwenden - Google Patents

Verfahren und Anordnung zur Erzeugung von Kandidatenvektoren für Bildinterpolierungssyteme, die Bewegungsabschätzung und -kompensation verwenden Download PDF

Info

Publication number
DE602005001292T2
DE602005001292T2 DE602005001292T DE602005001292T DE602005001292T2 DE 602005001292 T2 DE602005001292 T2 DE 602005001292T2 DE 602005001292 T DE602005001292 T DE 602005001292T DE 602005001292 T DE602005001292 T DE 602005001292T DE 602005001292 T2 DE602005001292 T2 DE 602005001292T2
Authority
DE
Germany
Prior art keywords
motion vector
image
pixel
confidence value
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.)
Active
Application number
DE602005001292T
Other languages
English (en)
Other versions
DE602005001292D1 (de
Inventor
Marina Nicolas
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.)
STMicroelectronics SA
Original Assignee
STMicroelectronics SA
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 STMicroelectronics SA filed Critical STMicroelectronics SA
Publication of DE602005001292D1 publication Critical patent/DE602005001292D1/de
Application granted granted Critical
Publication of DE602005001292T2 publication Critical patent/DE602005001292T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region
    • H04N5/144Movement detection
    • H04N5/145Movement estimation
    • 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
    • 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
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

  • Die vorliegende Erfindung betrifft den Bereich der sequentiellen Anzeige von Bildern und, genauer gesagt, Bildverarbeitungsverfahren zur Codierung von Bildern oder zur Einfügung von Bildern in eine Folge Bilder vom Typ Video oder Film.
  • In bestimmten Systemen zur Verarbeitung von Video- oder Filmbildern ist die Bildgeschwindigkeit (Anzahl Bilder pro Sekunde) für eine Anzeige von Qualität unzureichend. Daher werden über eine Interpolationsfunktion zusätzliche Bilder erzeugt und zwischen ursprünglichen Bildern angezeigt, um die Bildgeschwindigkeit zu erhöhen und die Qualität der Anzeige zu verbessern. Eine Interpolationsfunktion dieses Typs berechnet auf herkömmliche Weise den Wert der Pixel eines interpolierten Bildes in Abhängigkeit von insbesondere dem Wert der Pixel des vorhergehenden Bildes und/oder dem Wert der Pixel des nachfolgenden Bildes.
  • Eine solche Interpolationsfunktion gründet auf der bestehenden Korrelation zwischen aufeinander folgenden Bildern eines Videos oder eines Films. Tatsächlich erscheinen Gegenstände, die sich bewegen, in einer Folge Videobilder allgemein in jeweils unterschiedlichen Bereichen mehrerer aufeinander folgender Bilder. Es werden daher anhand von Teilen vorhergehender und/oder nachfolgender Bilder interpolierte Bilder erzeugt.
  • Ein Bild ist auf herkömmliche Weise in Pixel-Blöcke unterteilt und es wird die Annahme gemacht, dass jeder Block von einem Bild zum nächsten im Wesentlichen gleich bleibt, sogar wenn zwischen zwei Bildern eine Bewegung dieses Blocks stattgefunden hat. Aus diesem Grund wird ein Bild anhand von ursprünglichen Bildern interpoliert, indem für jeden aktuellen Block des Bildes während der Interpolierung derjenige der Blöcke eines vorhergehenden Bildes und/oder eines nachfolgenden Bildes gesucht wird, der der wahrscheinlichste ist.
  • Bewegungsschätzungs- und/oder -kompensationsverfahren schlagen Verfahren zur Suche von Blöcken vor, die so für die Erzeugung von interpolierten Bildern passend sind. Eine Korrelation zwischen den Teilen der aufeinander folgenden Bilder, in denen ein sich bewegender Gegenstand erscheint, kann über einen Bewegungsvektor ausgedrückt werden. Der Letztere stellt die Bewegung eines Pixel-Blocks von einem Bild zum anderen dar. Er weist eine Vertikalkomponente und eine Horizontalkomponente auf, die die Bewegung darstellen, die auf einen Block eines vorhergehenden Bildes angewandt werden muss, um zur Position eines im Wesentlichen identischen Pixelblocks in einem nachfolgenden Bild zu gelangen.
  • Solche Verfahren werden auf herkömmliche Weise in Videodatenkompressions-Systemen, wie zum Beispiel Systemen, die auf der MPEG-Norm gründen, verwendet. Solche Systeme ermöglichen das Verringern der zu übertragenden oder zu speichernden Bilddatenmenge durch Komprimieren dieser Daten, um ihre schnelle Übertragung auf digitalen Netzen oder auch Telefonleitungen oder ihre Aufzeichnung auf digitalen Medien zu ermöglichen. Daher werden lediglich bestimmte Referenzbilder codiert und übertragen und auf der Empfangsseite werden die fehlenden Zwischenbilder dann in Abhängigkeit von den mit den codierten Bildern übertragenen Bewegungsvektoren interpoliert.
  • In solchen Systemen wird das Zwischenbild auf der Sendeseite verarbeitet, um so wenig Informationen als möglich zu übertragen, wie vorhergehend erwähnt. So wird das Zwischenbild in Blöcke unterteilt. Für jeden Block wird eine Korrelation zwischen dem aktuellen Block und einer Auswahl von Kandidatenblöcken berechnet, die einem Referenzbild oder einem bereits verarbeiteten vorhergehenden und/oder nachfolgenden Zwischenbild zugehörig sind. Diese Korrelationsberechnung liefert einen relativen Fehler, der jedem Kandidatenblock zugeordnet ist. Dann wird ein Kandidatenblock gewählt, um den aktuellen Block des Zwischenbildes darzustellen. Der gewählte Kandidatenblock ist derjenige, der die größte Korrelation mit dem aktuellen Block, das heißt den geringsten Fehler, aufweist. Zum Ermöglichen der Interpolierung der Zwischenbilder auf der Empfangsseite, wobei das verarbeitete Bild nicht als solches übertragen wird, werden die folgenden Informationen übertragen, die allgemein bezüglich jedes aktuellen Blocks eines zu interpolierenden Bildes gesendet werden:
    • – eine Angabe des gewählten Kandidatenblocks;
    • – einen Bewegungsvektor, der die Translation des gewählten Kandidatenblocks hin zur Position des aktuellen Blocks darstellt;
    • – einen durch die Korrelationsberechnung gelieferten Fehler.
  • So werden auf der Empfangsseite die fehlenden Bilder auf der Grundlage der mit den codierten Referenzbildern empfangenen Informationen interpoliert, wobei diese Interpolierung die Bestimmung eines Werts der Pixel von jedem Block dieser fehlenden Bilder umfasst. Der Begriff „Referenzbild" ist gleichbedeutend mit dem Begriff „ursprüngliches Bild".
  • Bestimmte Systeme zur Anzeige von Interlaced-Bildern verwenden in gleicher Weise Bewegungsschätzungs- und/oder -kompensationsverfahren.
  • Vorrichtungen zur Bildgeschwindigkeitsumwandlung führen auch solche Verfahren aus. Tatsächlich ermöglichen diese Vorrichtungen das Erhöhen einer ursprünglichen Bildgeschwindigkeit durch die Erzeugung zusätzlicher Bilder durch Interpolierung von ursprünglichen Bildern. Diese Vorrichtungen werden auf herkömmliche Weise verwendet, um Bildgeschwindigkeiten zwischen einem System zur Erzeugung, Codierung, Übertragung und/oder Speicherung von Bildern einerseits und einem System zur Anzeige von Bildern andererseits, die unterschiedliche Bildgeschwindigkeiten voraussetzen, anzupassen.
  • In solchen Vorrichtungen wird das zu interpolierende Bild in Blöcke unterteilt. Für jeden der Blöcke werden Kandidatenvektoren erzeugt. Für jeden der Kandidatenvektoren werden ein Block im vorhergehenden Bild und ein Block im nachfolgenden Bild ausgewählt, die jeweils einer Translation der Position des aktuellen Blocks relativ zum Kandidatenvektor entsprechen. Dann wird die Korrelation zwischen dem ausgewählten Block des vorhergehenden Bildes und dem ausgewählten Block des nachfolgenden Bildes berechnet. Der Bewegungsvektor, der die größte Korrelation ergibt, wird gewählt. Der aktuelle Block wird dann anhand des Blocks im vorhergehenden Bild und des Blocks im nachfolgenden Bild, die durch den gewählten Kandidatenvektor bestimmt sind, interpoliert.
  • Der Begriff „verarbeitetes Bild" bezieht sich auf Bilder, die in mehrere Blöcke unterteilt sind, und für die für jeden davon ein Bewegungsvektor gewählt wurde. So werden durch Interpolierung der verarbeiteten Blöcke interpolierte Bilder erzeugt.
  • Der folgende Abschnitt legt die Grundbegriffe dar, die auf herkömmliche Weise in Bewegungsschätzungsverfahren verwendet werden. Man unterscheidet im Allgemeinen mehrere Typen von Bildern: ursprüngliche Bilder des Typs I (Intra), die ohne Bezug auf andere Bilder codiert werden, Bilder des Typs P (prädiktiv), die über einen Bewegungsschätzungsalgorithmus auf der Grundlage eines vorhergehenden Bildes interpoliert werden, und Bilder des Typs B (bidirektional), die über einen Bewegungsschätzungsalgorithmus auf der Grundlage eines vorhergehenden und eines nachfolgenden Bildes interpoliert werden.
  • Wie vorhergehend beschrieben, beruht eine Bewegungsschätzung auf der Annahme, dass ein Pixel-Block des Bildes während der Verarbeitung als Translation eines Pixel-Blocks des vorhergehenden Bildes und/oder eines Pixel-Blocks des nachfolgenden Bildes modelliert werden kann. So wird in einer solchen Modellierung angenommen, dass jedes Pixel eines gleichen Pixel-Blocks im Wesentlichen die gleiche Translation erfährt. Ein jedem Pixel-Block eines verarbeiteten Bildes zugeordneter Bewegungsvektor stellt diese Translationsbewegung dar. Dann wird durch Anwendung einer entsprechenden Translation, die dem zugeordneten Bewegungsvektor entspricht, auf jeden der Pixel-Blöcke des vorhergehenden Bildes und/oder auf jeden der Pixel-Blöcke des nachfolgenden Bildes jeder aktuelle Block des gegenwärtig verarbeiteten Bildes erzeugt.
  • Im Stand der Technik sind Bewegungsschätzungsverfahren bekannt, in denen für einen aktuellen Block eines Bildes während der Verarbeitung anhand von Bewegungsvektoren, die bereits Pixel-Blöcken von bereits verarbeiteten Bildern zugeordnet sind, oder die bereits Pixel-Blöcken zugeordnet sind, die dem aktuellen Pixel-Block des Bildes während der Verarbeitung benachbart sind, Kandidatenvektoren erzeugt werden. Aus diesem Grund sind solche Verfahren iterativ.
  • Ein Problem von iterativen Verfahren ist das Konvergenzphänomen. Tatsächlich kann ein solches Verfahren des iterativen Typs nicht konvergieren, wenn es einem aktuellen Pixel-Block einen Bewegungsvektor zuordnet, während dieser Bewegungsvektor für diesen Pixel-Block keine große Korrelation ergibt. Dies kann insbesondere auftreten, wenn unter den für einen Pixelblock ausgewählten Kandidatenvektoren keiner eine zufrieden stellende Korrelation liefert. Im Allgemeinen wird in diesem Fall der Kandidatenvektor, der die größte relative Korrelation aufweist, gewählt, um dem Pixel-Block zugeordnet zu werden. Somit versteht sich, dass Bewegungsvektoren, die keine große absolute Korrelation ergeben, Pixel-Blöcken zugeordnet werden können, und dann ausgehend davon für andere Verarbeitungen von Pixel-Blöcken als Bewegungsvektor-Kandidaten gewählt werden können. Dieses „Schneeball-Phänomen" eines Verfahrens des iterativen Typs kann zu einer kritischen Abweichung eines solchen Verfahrens führen.
  • Zur Umschiffung solcher Klippen wurden bereits Bewegungsschätzungsverfahren vorgeschlagen, die Kandidatenvektoren anhand von Pixel-Blöcken erzeugen, die bereits Bewegungsvektoren zugeordnet sind, indem ihnen zufällige Aktualisierungsvektoren hinzugefügt werden. So wird in den Kandidatenvektoren, die einen aktuellen Pixel-Block betreffen, eine zufällige Komponente eingeführt, was das Konvergenzphänomen der iterativen Verfahren begünstigt.
  • Die Patentschrift EP 0 874 523 A1 offenbart ein Verfahren zur Erhöhung der Vertikalfrequenz eines Signals unter Verwendung der Bewegungsschätzung und -kompensation für Videoanwendungen. Jedem Bildblock wird ein Bewegungsvektor zugeordnet, der anhand eines Kandidatenvektors bestimmt wird, auf den geringe Störungen angewandt wurden. Der Kandidatenvektor selbst wird unter Verwendung von Fuzzy-Logik-Regeln anhand von Bewegungsvektoren der (räumlich und zeitlich) benachbarten Blöcke ausgewählt.
  • Aufgabe der vorliegenden Erfindung ist eine weitere Verbesserung des Konvergenzphänomens der Bewegungsschätzungsverfahren.
  • Ein erster Gesichtspunkt der Erfindung schlägt ein Verfahren zur Bewegungsschätzung für die Verarbeitung von Bildern vor, die dazu bestimmt sind, jeweils zwischen einem vorhergehenden Bild und einem nachfolgenden Bild in eine Folge bestimmter Bilder eingefügt zu werden, wobei jedes Bild in eine Vielzahl von Pixel-Blöcken unterteilt ist und jedem Pixel-Block eines verarbeiteten Bildes ein Bewegungsvektor zugeordnet ist, wobei das Verfahren für einen aktuellen Pixel-Block eines Bildes während der Verarbeitung die folgenden Schritte umfasst:
    • – Auswählen von Bewegungsvektoren, die Bewegungsvektoren aufweisen, die jeweils bestimmten Pixel-Blöcken des Bildes während der Verarbeitung zugeordnet sind, und/oder Bewegungsvektoren, die jeweils bestimmten Pixel-Blöcken eines bereits verarbeiteten Bildes zugeordnet sind;
    • – Bestimmen eines zugeordneten Aktualisierungsvektors für jeden der auf diese Weise ausgewählten Bewegungsvektoren;
    • – Erzeugen von Bewegungsvektor-Kandidaten, wobei jeder anhand eines ausgewählten Bewegungsvektors und des zugeordneten Aktualisierungsvektors definiert wird;
    • – Wahl eines Bewegungsvektors aus den Bewegungsvektor-Kandidaten;
    • – Speichern einer Information, die dem aktuellen Pixel-Block den gewählten Bewegungsvektor zuordnet;
    gemäß dem ein Konfidenzwert für jeden einem Block zugeordneten Bewegungsvektor berechnet und gespeichert wird; und
    gemäß dem der Aktualisierungsvektor in Abhängigkeit von dem jeweiligen Konfidenzwert bestimmt wird.
  • Ein zweiter Gesichtspunkt der Erfindung schlägt eine Vorrichtung zur Bewegungsschätzung für die Verarbeitung von Bildern vor, die dazu bestimmt sind, jeweils zwischen einem vorhergehenden Bild und einem nachfolgenden Bild in einer Folge bestimmter Bilder eingefügt zu werden, wobei jedes Bild in eine Vielzahl von Pixel-Blöcken unterteilt ist und jedem Pixel-Block eines verarbeiteten Bildes ein Bewegungsvektor zugeordnet ist, wobei die Vorrichtung Mittel zur Verarbeitung eines aktuellen Pixel-Blocks eines Bildes während der Verarbeitung aufweist, die umfassen:
    • – eine Auswahleinheit zum Auswählen von Bewegungsvektoren, die Bewegungsvektoren aufweisen, die den jeweiligen Pixel-Blöcken des Bildes während der Verarbeitung zugeordnet sind, und/oder Bewegungsvektoren, die jeweils bestimmten Pixel-Blöcken eines bereits verarbeiteten Bildes zugeordnet sind;
    • – eine Bestimmungseinheit zum Bestimmen eines zugeordneten Aktualisierungsvektors für jeden der ausgewählten Bewegungsvektoren;
    • – eine Erzeugungseinheit zum Erzeugen von Bewegungsvektor-Kandidaten, wobei jeder anhand eines ausgewählten Bewegungsvektors und des zugeordneten Aktualisierungsvektors definiert ist;
    • – eine Wahleinheit zum Auswählen eines Bewegungsvektors aus den Bewegungsvektor-Kandidaten;
    • – einen Speicher zum Speichern einer Information, die dem aktuellen Pixel-Block den gewählten Bewegungsvektor zuordnet;
    und ferner Mittel zum Berechnen eines Konfidenzwerts für jeden Bewegungsvektor umfasst, der einem Block zugeordnet ist;
    wobei die Bestimmungseinheit den Aktualisierungsvektor in Abhängigkeit von dem jeweiligen Konfidenzwert zu bestimmen vermag.
  • Ein dritter Gesichtspunkt der Erfindung schlägt ein „Computerprogramm-Produkt" vor, das direkt in den internen Speicher eines Digitalrechners geladen werden kann, mit Programmabschnitten zum Ausführen der Schritte des Verfahrens gemäß dem ersten Gesichtspunkt.
  • Andere Gesichtspunkte, Aufgaben und Vorteile der Erfindung werden bei der Lektüre der Beschreibung einer ihrer Ausführungsformen ersichtlich werden.
  • Die Erfindung wird auch anhand der Zeichnungen besser verstanden; es zeigen:
  • 1 eine Veranschaulichung der Hauptschritte eines Verfahrens gemäß einer Ausführungsform der Erfindung;
  • 2 ein Bewegungsschätzungsverfahren gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 3 eine Korrelationsberechnung eines verarbeiteten Bildes anhand von vorhergehenden und nachfolgenden Bildern.
  • Wie in der Einleitung beschrieben, stellt ein Bewegungsvektor, der einem gegebenen Pixel-Block eines verarbeiteten oder gegenwärtig verarbeiteten Bildes zugeordnet ist, die Translation jedes Pixels des Blocks ausgehend von einem vorhergehenden Bild bis zu einem gegenwärtig verarbeiteten Bild oder von einem gegenwärtig verarbeiteten Bild bis zu einem nachfolgenden Bild dar. Es ist zweckmäßig, anzumerken, dass diese Bewegungsdarstellung tatsächlich nur annähernd ist. Daraus folgt somit, dass bestimmte Pixel des so der Translation unterzogenen aktuellen Blocks sich nicht im vorhergehenden und/oder nachfolgenden Bild befinden. Manch mal erweist ein einem Block zugeordneter Bewegungsvektor sich als sehr unzuverlässig, was die Darstellung der tatsächlichen Bewegung der Gesamtheit der Pixel des Blocks betrifft. Es scheint vernünftig, sich zur Erzeugung von Kandidatenvektoren für einen Pixel-Block während der Verarbeitung nicht direkt auf die Werte von unzuverlässigen Bewegungsvektoren zu stützen, die bereits Pixelblöcken zugeordnet sind.
  • In einer Ausführungsform der Erfindung wird, wenn ein Bewegungsvektor einem Block zugeordnet wird, für diesen Bewegungsvektor ein Konfidenzwert bestimmt. So kann die Erzeugung von Bewegungsvektor-Kandidaten vorteilhafterweise unter Berücksichtigung des Konfidenzwerts der Bewegungsvektoren ausgeführt werden.
  • Die vorliegende Erfindung schlägt des Weiteren das Erzeugen von Bewegungsvektor-Kandidaten anhand von Bewegungsvektoren vor, die bereits Pixel-Blöcken von verarbeiteten Bildern oder von gegenwärtig verarbeiteten Bildern zugeordnet sind, indem ihnen ein bestimmter Aktualisierungsvektor in Abhängigkeit vom Konfidenzwert hinzugefügt wird, der den Bewegungsvektor betrifft.
  • 1 veranschaulicht die Hauptschritte, die für jeden Pixel-Block eines Bildes während der Verarbeitung in einem Verfahren gemäß einer Ausführungsform der Erfindung ausgeführt werden. Es werden Bewegungsvektoren ausgewählt, die den Blöcken eines bereits verarbeiteten Bildes zugeordnet oder die bereits den Blöcken eines gegenwärtig verarbeiteten Bildes zugeordnet sind, Schritt 11. Dann wird in Abhängigkeit vom Konfidenzwert des entsprechenden Bewegungsvektors für jeden dieser ausgewählten Bewegungsvektoren ein Aktualisierungswert bestimmt, Schritt 12. Dann werden Bewegungsvektor-Kandidaten anhand von ausgewählten Bewegungsvektoren und von ihrem entsprechenden Aktualisierungsvektor erzeugt, Schritt 13. Dann wird unter den so erzeugten Bewegungsvektor-Kandidaten der Bewegungsvektor ausgewählt, der am besten zum gegenwärtig verarbeiteten Block passt, Schritt 14. Zuletzt wird eine Information gespeichert, die den ausgewählten Bewegungsvektor dem gegenwärtig verarbeiteten Pixel-Block zuordnet, Schritt 15.
  • Für jeden der Pixel-Blöcke eines verarbeiteten Bildes werden so ein Bewegungsvektor sowie ein entsprechender Konfidenzwert bestimmt und gespeichert. Die folgenden Abschnitte beschreiben diese unterschiedlichen Schritte auf ausführlichere Art und Weise.
  • So werden in einer Ausführungsform der Erfindung für jeden aktuellen Block eines gegenwärtig verarbeiteten Bildes Bewegungsvektoren ausgewählt, die bereits Blöcken eines vorhergehenden verarbeiteten Bildes und/oder dem gegenwärtig verarbeiteten Bild benachbarten Bildern zugeordnet sind, Schritt 11. Es wird ein Konfidenzwert bestimmt, der jedem dieser ausgewählten Bewegungsvektoren entspricht.
  • Dem Bewegungsvektor, dem ein relativ hoher Konfidenzwert entspricht, das heißt, ein Bewegungsvektor, der die Bewegung der Gesamtheit der Pixel des Blocks, dem er zugeordnet ist, auf relativ zuverlässige Weise darstellt, wird ein Aktualisierungsvektor hinzugefügt, dessen Norm relativ gering ist.
  • Umgekehrt wird einem Bewegungsvektor, dem ein relativ geringer Konfidenzwert entspricht, das heißt, einem Bewegungsvektor, der die Bewegung der Gesamtheit der Pixel des Blocks, dem er zugeordnet ist, auf relativ unzuverlässige Weise darstellt, ein Aktualisierungsvektor hinzugefügt, dessen Norm relativ hoch ist.
  • 2 veranschaulicht den Grundsatz eines Ausführungsbeispiels eines solchen Verfahrens des iterativen Typs, in dem Bewegungsvektoren unter Bewegungsvektoren, die Blöcken von entsprechenden Pixeln des gegenwärtig verarbeiteten Bildes zugeordnet sind, und Bewegungsvektoren, die entsprechenden Pixel-Blöcken eines bereits verarbeiteten Bildes zugeordnet sind, die räumliche Bewegungsvektoren beziehungsweise zeitliche Bewegungsvektoren genannt werden, ausgewählt werden. Es wird in Betracht gezogen, dass ein bereits verarbeitetes Bild 100 9 Pixel-Blöcke 101 bis 109 umfasst, von denen jedem ein entsprechender Bewegungsvektor V1 bis V9 zugeordnet ist. Ein gegenwärtig verarbeitetes Bild 110 umfasst 9 Pixelblöcke 111 bis 119, von denen die Blöcke 111 bis 114 bereits verarbeitet wurden und der Block 115 gegenwärtig verarbeitet wird. Für jeden bereits verarbeiteten Pixel-Block werden ein Bewegungsvektor sowie ein Konfidenzwert in einem angepassten Speicher gespeichert. So werden für die Blöcke 101 bis 114 die Bewegungsvektoren V1 bis V14 sowie die entsprechenden Konfidenzwerte f1 bis f14 gespeichert.
  • In einer Ausführungsform der vorliegenden Erfindung resultiert der Konfidenzwert aus einer Berechnung der Korrelation zwischen einerseits den Werten der Pixel eines ersten Pixel-Blocks, der von dem Bewegungsvektor-Kandidaten im vorhergehenden Bild anhand der Positionen der Pixel des aktuellen zu verarbeitenden Pixel-Blocks bezeichnet wird, und andererseits den Pixelwerten eines zweiten Pixel-Blocks, der durch den Bewegungsvektor-Kandidaten im nachfolgenden Bild anhand von Positionen der Pixel des aktuellen zu verarbeitenden Pixel-Blocks bezeichnet wird. Diese Korrelationsberechnung liefert einen Fehlerwert, der dem Bewegungsvektor zugeordnet wird, der dem Pixel-Block zugeordnet ist. Diese Ausführungsform ist insbesondere besonders auf Bildgeschwindigkeitsumwandlungs-Systeme anwendbar.
  • 3 veranschaulicht eine solche Korrelationsberechnung. Tatsächlich wird eine Korrelationsberechnung für einen Kandidatenvektor 34 verhältnismäßig zu einem aktuellen Block 33 eines gegenwärtig verarbeiteten Bildes 30 ausgeführt. Diese Berechnung wird in Abhängigkeit von Pixel-Werten eines ersten Pixel-Blocks 35 im ursprünglichen Bild 31, der vom Kandidatenvektor 34 anhand der Positionen des aktuellen Blocks 33 bezeichnet wird, und der Pixel-Werte eines Pixel-Blocks 36 im ursprünglichen Bild 32 ausgeführt, der durch den Kandidaten-Vektor 34 ausgehend von den Pixelpositionen des aktuellen Blocks 33 bezeichnet wird.
  • In einer anderen Ausführungsform der Erfindung wird der Konfidenzwert von einem Fehler hergeleitet, der für jeden der Bewegungsvektor-Kandidaten auf der Grundlage einer Korrelation zwischen den Werten der Pixel des aktuellen Blocks und den Werten der Pixel eines Pixelblocks berechnet wird, der vom Kandidatenvektor im vorhergehenden und/oder nachfolgenden Bild bezeichnet wird. Diese Ausführungsform ist insbesondere auf Kompressionssysteme anwendbar. Tatsächlich verfügt man in diesem Typ vom System zum Zeitpunkt der Zuordnung eines Bewegungsvektors zum aktuellen Block über den Wert der Pixel des aktuellen Blocks, wobei dieser Schritt auf der Sendeseite vor dem Übermitteln der Bilder ausgeführt wird. Man kann daher eine Korrelation in Abhängigkeit von den Werten der Pixel berechnen, die den aktuellen Block selbst bilden.
  • Die vorliegende Erfindung ist nicht auf diese Beispiele von Konfidenzwerten beschränkt.
  • Vorzugsweise weist der Aktualisierungsvektor eine zufällige und daher vom Konfidenzwert unabhängige Richtung auf, während die Norm des Aktualisierungsvektors abhängig vom Konfidenzwert ist, der ihm zugeordnet ist.
  • In einer Ausführungsform der Erfindung ist die Norm des Aktualisierungsvektors desto höher, je geringer der Konfidenzwert ist, und umgekehrt.
  • So werden anhand der ausgewählten Bewegungsvektoren Kandidatenvektoren ausgewählt, die besser für einen aktuellen Block angepasst sind und die zu einer besseren Konvergenz des Verfahrens führen.
  • In einer Ausführungsform der Erfindung wird, nachdem so Kandidatenvektoren für einen aktuellen Block erzeugt wurden, ein Konfidenzwert für jeden dieser Kandidatenvektoren bestimmt. Vorzugsweise entspricht der Konfidenzwert, wie vorhergehend beschrieben, einem Korrelationsfehler.
  • Dann wird für den aktuellen Block ein Bewegungsvektor ausgewählt. Der unter den erzeugten Kandidatenvektoren ausgewählte Bewegungsvektor ist derjenige, für den der Konfidenzwert am höchsten oder der Korrelationsfehler am geringsten ist.
  • Dann wird eine Information gespeichert, die die Zuordnung des aktuellen Blocks zum gewählten Bewegungsvektor sowie den für diesen Kandidatenvektor beziehungsweise für den aktuellen Block bestimmten Konfidenzwert angibt.
  • In einer Ausführungsform der Erfindung ist der Konfidenzwert auf 2 Bit codiert.
  • Dann wird das verarbeitete Bild durch Bestimmung der Werte der Pixel des aktuellen Blocks in Abhängigkeit von den Werten der Pixel, die vom im vorhergehenden Bild anhand der Positionen der Pixel des aktuellen zu interpolierenden Pixel-Blocks gewählten Bewegungsvektor bezeichnet sind, und/oder den Werten der Pixel, die vom im nachfolgenden Bild anhand der Positionen der Pixel des aktuellen zu interpolierenden Pixel-Blocks gewählten Bewegungsvektor bezeichnet sind, interpoliert.
  • Was die Konvergenzgeschwindigkeit des Verfahrens betrifft, werden sehr gute Ergebnisse erzielt. Des Weiteren ist die Ausführung der Erfindung sehr einfach.
  • Die Erfindung ermöglicht eine bessere Wiedergabe des Bildes, was schnelle Bewegungen betrifft, und eine bessere Leistungshomogenität in der Bildfolge. Sie kann auf vorteilhafte Weise in wie in der Einleitung definierten Systemen ausgeführt werden, wobei die Wiedergabe der Bilder verbessert wird.

Claims (14)

  1. Verfahren zur Bewegungsschätzung für die Verarbeitung von Bildern, die dazu bestimmt sind, jeweils zwischen einem vorhergehenden Bild und einem nachfolgenden Bild in eine Folge bestimmter Bilder eingefügt zu werden, wobei jedes Bild in eine Vielzahl von Pixel-Blöcken unterteilt ist und jedem Pixel-Block eines verarbeiteten Bildes ein Bewegungsvektor zugeordnet ist, wobei das Verfahren für einen aktuellen Pixel-Block eines Bildes während der Verarbeitung die folgenden Schritte umfasst: – Auswählen von Bewegungsvektoren, die Bewegungsvektoren aufweisen, die jeweils bestimmten Pixel-Blöcken des Bildes während der Verarbeitung zugeordnet sind, und/oder Bewegungsvektoren, die jeweils bestimmten Pixel-Blöcken eines bereits verarbeiteten Bildes zugeordnet sind (11); – Bestimmen eines zugeordneten Aktualisierungsvektors für jeden der auf diese Weise ausgewählten Bewegungsvektoren (12); – Erzeugen von Bewegungsvektor-Kandidaten, wobei jeder anhand eines ausgewählten Bewegungsvektors und des zugeordneten Aktualisierungsvektors definiert wird (13); – Wahl eines Bewegungsvektors aus den Bewegungsvektor-Kandidaten (14); – Speichern einer Information, die dem aktuellen Pixel-Block den gewählten Bewegungsvektor zuordnet (15); gemäß dem ein Konfidenzwert für jeden einem Block zugeordneten Bewegungsvektor berechnet und gespeichert wird; und gemäß dem der Aktualisierungsvektor in Abhängigkeit von dem jeweiligen Konfidenzwert bestimmt wird.
  2. Verfahren nach Anspruch 1, gemäß dem der Konfidenzwert ein Fehlerwert ist, der berechnet wird auf der Grundlage einer Korrelation zwischen den Pixelwerten eines ersten Pixel-Blocks (35), der von dem gegebenen Bewegungsvektor-Kandidaten (34) in dem vorhergehenden Bild (31) anhand der Positionen der Pixel des aktuellen zu verarbeitenden Pixel-Blocks (33) bezeichnet ist, und/oder den Pixelwerten eines zweiten Pixel-Blocks (36), der von dem gegebenen Bewegungsvektor-Kandidaten (34) in dem nachfolgenden Bild (32) anhand der Positionen der Pixel des aktuellen zu verarbeitenden Pixel-Blocks (34) bezeichnet ist.
  3. Verfahren nach Anspruch 1, gemäß dem der Konfidenzwert von einem Fehler hergeleitet wird, der berechnet wird auf der Grundlage einer Korrelation zwischen den Pixelwerten des aktuellen Pixel-Blocks und den Pixelwerten eines Pixel-Blocks, der von dem gegebenen Bewegungsvektor-Kandidaten in dem vorhergehenden und/oder nachfolgenden Bild bezeichnet ist.
  4. Verfahren nach einem der vorhergehenden Ansprüche, gemäß dem die Norm des Aktualisierungsvektors in Abhängigkeit von dem jeweiligen Konfidenzwert bestimmt wird, während seine Richtung zufällig bestimmt wird.
  5. Verfahren nach einem der vorhergehenden Ansprüche, gemäß dem je geringer der Konfidenzwert ist, desto höher ist die Norm des Aktualisierungsvektors und umgekehrt.
  6. Verfahren nach einem der vorhergehenden Ansprüche, gemäß dem ein Konfidenzwert für jeden Bewegungsvektor-Kandidaten bestimmt wird und der Bewegungsvektor-Kandidat gewählt wird, für den der jeweilige Konfidenzwert am höchsten ist.
  7. Verfahren nach einem der vorhergehenden Ansprüche, gemäß dem eine Interpolation des verarbeiteten Bildes erfolgt durch Bestimmen der Pixelwerte des aktuellen Blocks in Abhängigkeit von den Werten der Pixel, die durch den gewählten Bewegungsvektor in dem vorhergehenden Bild anhand der Positionen der Pixel des aktuellen zu interpolierenden Pixel-Blocks bezeichnet sind, und/oder den Werten der Pixel, die durch den gewählten Bewegungsvektor in dem nachfolgenden Bild anhand der Positionen der Pixel des aktuellen zu interpolierenden Pixel-Blocks bezeichnet sind.
  8. Vorrichtung zur Bewegungsschätzung für die Verarbeitung von Bildern, die dazu bestimmt sind, jeweils zwischen einem vorhergehenden Bild und einem nachfolgenden Bild in eine Folge bestimmter Bilder eingefügt zu werden, wobei jedes Bild in eine Vielzahl von Pixel-Blöcken unterteilt ist und jedem Pixel-Block eines verarbeiteten Bildes ein Bewegungsvektor zugeordnet ist, wobei die Vorrichtung Mittel zur Verarbeitung eines aktuellen Pixel-Blocks eines Bildes während der Verarbeitung aufweist, die umfassen: – eine Auswahleinheit zum Auswählen von Bewegungsvektoren, die Bewegungsvektoren aufweisen, die den jeweiligen Pixel-Blöcken des Bildes während der Verarbeitung zugeordnet sind, und/oder Bewegungsvektoren, die jeweils bestimmten Pixel-Blöcken eines bereits verarbeiteten Bildes zugeordnet sind; – eine Bestimmungseinheit zum Bestimmen eines zugeordneten Aktualisierungsvektors für jeden der ausgewählten Bewegungsvektoren; – eine Erzeugungseinheit zum Erzeugen von Bewegungsvektor-Kandidaten, wobei jeder anhand eines ausgewählten Bewegungsvektors und des zugeordneten Aktualisierungsvektors definiert ist; – eine Wahleinheit zum Auswählen eines Bewegungsvektors aus den Bewegungsvektor-Kandidaten; – einen Speicher zum Speichern einer Information, die dem aktuellen Pixel-Block den gewählten Bewegungsvektor zuordnet; und ferner Mittel zum Berechnen und Speichern eines Konfidenzwerts für jeden Bewegungsvektor, der einem Block zugeordnet ist; wobei die Bestimmungseinheit den Aktualisierungsvektor in Abhängigkeit von dem jeweiligen Konfidenzwert zu bestimmen vermag.
  9. Vorrichtung nach Anspruch 8, bei welcher der Konfidenzwert ein Fehler ist, der berechnet wird auf der Grundlage einer Korrelation zwischen den Pixelwerten eines ersten Pixel-Blocks (35), der von dem gegebenen Bewegungsvektor-Kandidaten (34) in dem vorhergehenden Bild (31) anhand der Positionen der Pixel des aktuellen zu verarbeitenden Pixel-Blocks (33) bezeichnet ist, und/oder den Pixelwerten eines zweiten Pixel-Blocks (36), der von dem gegebenen Bewegungsvektor-Kandidaten (34) in dem nachfolgenden Bild (32) anhand der Positionen der Pixel des aktuellen zu verarbeitenden Pixel-Blocks (34) bezeichnet ist,
  10. Vorrichtung nach Anspruch 8, gemäß der der Konfidenzwert von einem Fehler hergeleitet wird, der berechnet wird auf der Grundlage einer Korrelation zwischen den Pixelwerten des aktuellen Pixel-Blocks und den Pixelwerten eines Pixel-Blocks, der von dem gegebenen Bewegungsvektor-Kandidaten in dem vorhergehenden und/oder nachfolgenden Bild bezeichnet ist.
  11. Vorrichtung nach einem der Ansprüche 8 bis 10, gemäß der die Norm des Aktualisierungsvektors in Abhängigkeit von dem jeweiligen Konfidenzwert bestimmt wird, während seine Richtung zufällig bestimmt wird.
  12. Vorrichtung nach einem der Ansprüche 8 bis 11, gemäß der je geringer der Konfidenzwert ist, desto höher ist die Norm des Aktualisierungsvektors und umgekehrt.
  13. Vorrichtung nach einem der Ansprüche 8 bis 12, die auch Mittel zum Bestimmen eines Konfidenzwerts für jeden der Bewegungsvektor-Kandidaten aufweist, Vorrichtung, bei welcher der Bewegungsvektor-Kandidat gewählt wird, für den der jeweilige Konfidenzwert am höchsten ist.
  14. Computerprogramm-Produkt, das direkt in den internen Speicher eines Digitalrechners geladen werden kann, mit Programmcode-Abschnitten zum Ausführen der Schritte des Verfahrens nach einem der Ansprüche 1 bis 7, wenn dieses Programm im Rechner ausgeführt wird.
DE602005001292T 2004-04-29 2005-04-26 Verfahren und Anordnung zur Erzeugung von Kandidatenvektoren für Bildinterpolierungssyteme, die Bewegungsabschätzung und -kompensation verwenden Active DE602005001292T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0404571 2004-04-29
FR0404571A FR2869753A1 (fr) 2004-04-29 2004-04-29 Procede et dispositif de generation de vecteurs candidats pour les systemes d'interpolation d'images par estimation et compensation de mouvement

Publications (2)

Publication Number Publication Date
DE602005001292D1 DE602005001292D1 (de) 2007-07-19
DE602005001292T2 true DE602005001292T2 (de) 2008-02-07

Family

ID=34942210

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602005001292T Active DE602005001292T2 (de) 2004-04-29 2005-04-26 Verfahren und Anordnung zur Erzeugung von Kandidatenvektoren für Bildinterpolierungssyteme, die Bewegungsabschätzung und -kompensation verwenden

Country Status (4)

Country Link
US (1) US20050249286A1 (de)
EP (1) EP1596607B1 (de)
DE (1) DE602005001292T2 (de)
FR (1) FR2869753A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7596284B2 (en) * 2003-07-16 2009-09-29 Hewlett-Packard Development Company, L.P. High resolution image reconstruction
WO2009034488A2 (en) * 2007-09-10 2009-03-19 Nxp B.V. Method an apparatus for line based vertical motion estimation and compensation
US8139871B2 (en) * 2007-12-17 2012-03-20 Texas Instruments Incorporated Circuit and method for adaptive, lossless compression of successive digital data

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923786A (en) * 1995-07-17 1999-07-13 Sony Corporation Method and device for encoding and decoding moving images
EP0874523B1 (de) * 1997-04-24 2004-03-03 STMicroelectronics S.r.l. Verfahren zur Erhöhung der bewegungsgeschätzten und bewegungskompensierten Bildfrequenz für Videoanwendungen, und Vorrichtung zur Verwendung eines solchen Verfahrens
EP0972407A2 (de) * 1998-02-06 2000-01-19 Koninklijke Philips Electronics N.V. Schätzung von bewegung und tiefe
US6442203B1 (en) * 1999-11-05 2002-08-27 Demografx System and method for motion compensation and frame rate conversion
AU2003240166A1 (en) * 2002-05-30 2003-12-19 Koninklijke Philips Electronics N.V. Unit for and method of estimating a motion vector
JP4003128B2 (ja) * 2002-12-24 2007-11-07 ソニー株式会社 画像データ処理装置および方法、記録媒体、並びにプログラム
US20040258154A1 (en) * 2003-06-19 2004-12-23 Microsoft Corporation System and method for multi-stage predictive motion estimation

Also Published As

Publication number Publication date
US20050249286A1 (en) 2005-11-10
DE602005001292D1 (de) 2007-07-19
FR2869753A1 (fr) 2005-11-04
EP1596607B1 (de) 2007-06-06
EP1596607A1 (de) 2005-11-16

Similar Documents

Publication Publication Date Title
DE19506372B4 (de) Bi-Direktionales Bewegungsschätzverfahren und ein dafür vorgesehenes Gerät
DE3814627C2 (de)
DE69634962T2 (de) Extrapolation von Pixelwerten eines in einem Block enthaltenen Videoobjektes
DE69836473T2 (de) Bewegungsschätzung und bewegungskompensierte interpolation
DE60211978T2 (de) Laufbildsystem mit bildinterpolation und variabler bildfrequenz
DE69333103T2 (de) Vorrichtung zur Umsetzung von digitalen Daten
DE19704439C2 (de) Verfahren und Vorrichtung zur Bewegungsschätzung in einem digitalen Videocodierer unter Verwendung von Trajektorien
DE69736852T2 (de) Codierung- und Decodierungssystem für bewegte Bilder mit beliebig geformten Objekten
DE602004002455T2 (de) Bewegungsvektorschätzung durch adaptive zeitliche Vorhersage
DE102011056982A1 (de) Digitales Bildstabilisierungsverfahren mit adaptiver Filterung
DE19743202B4 (de) Verfahren zum Codieren eines Bewegungsvektors
DE10113880B4 (de) Verfahren zur Komprimierung und Dekomprimierung von Videodaten
DE19618984B4 (de) Verfahren zur Bewegungsbewertung in Bilddaten sowie Vorrichtung zur Durchführung dieses Verfahrens
DE112005000033T5 (de) Adaptiv gewichtetes Bewegungsabschätzungsverfahren und Bildwechselfrequenz-Wandlereinrichtung, die das Verfahren einsetzt
DE602005001583T2 (de) Verfahren und Anordnung für Bildinterpolierungssysteme mit Bewegungsschätzung und -kompensation
DE602005000425T2 (de) Verfahren und Anordnung zur Erzeugung von Kandidatenvektoren für Bildinterpolierungssysteme, die Bewegungsabschätzung und -kompensation verwenden
DE69626475T2 (de) Verfahren zur Korrektur von Bewegungsschätzung in Bildern mit periodischen Strukturen
DE602005001292T2 (de) Verfahren und Anordnung zur Erzeugung von Kandidatenvektoren für Bildinterpolierungssyteme, die Bewegungsabschätzung und -kompensation verwenden
DE60207756T2 (de) Bilddatenzugriff
DE602004003934T2 (de) Vorausgerichtete bewegungsvektorinterpolation zur reduzierung von videoartefakten
EP0414017B1 (de) Verfahren zur objektorientierten Bewegungskompensation von Bildinformation für die verbesserte Wiedergabe codierter Bewegtbildsequenzen
EP1110407B1 (de) Verfahren und anordnung zur codierung und decodierung eines digitalisierten bildes mit anwendung eines gesamtbewegungsvektors
DE19749604A1 (de) Verfahren zum Kodieren eines Modus beim Kodieren binärer Formen
EP0981910B1 (de) Verfahren und vorrichtung zur codierung eines digitalisierten bildes
DE19749655A1 (de) Verfahren und Vorrichtung zum Kodieren eines Bewegungsvektors

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, 80639 M