DE69423166T2 - Verfahren und Vorrichtung zur Bewegungsauswertung mit Blockübereinstimmung - Google Patents
Verfahren und Vorrichtung zur Bewegungsauswertung mit BlockübereinstimmungInfo
- Publication number
- DE69423166T2 DE69423166T2 DE69423166T DE69423166T DE69423166T2 DE 69423166 T2 DE69423166 T2 DE 69423166T2 DE 69423166 T DE69423166 T DE 69423166T DE 69423166 T DE69423166 T DE 69423166T DE 69423166 T2 DE69423166 T2 DE 69423166T2
- Authority
- DE
- Germany
- Prior art keywords
- block
- pixel
- vectors
- vector
- motion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 25
- 238000011156 evaluation Methods 0.000 title 1
- 239000013598 vector Substances 0.000 claims description 179
- 230000006978 adaptation Effects 0.000 claims description 12
- 238000001914 filtration Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 3
- 230000004807 localization Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 238000012805 post-processing Methods 0.000 description 2
- 101100311330 Schizosaccharomyces pombe (strain 972 / ATCC 24843) uap56 gene Proteins 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000002939 deleterious effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 101150018444 sub2 gene Proteins 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
- H04N5/145—Movement estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
- Television Systems (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zur Bewegungsabschätzung unter Verwendung von Blockanpassung.
- Die Blockanpassung ist als robustes und intuitiv einfaches Verfahren zur Bewegungsabschätzung für Fernsehbilder bekannt. Ein wichtiger Parameter bei der Blockanpassung ist die Blockgröße. Große Blöcke ergeben eine zuverlässigere Bewegungsabschätzung als kleinere Blöcke, insbesondere bei Vorhandensein von Rauschen im Eingangsbild, aber sie erzeugen ein gröberes Bewegungs-Vektorfeld. Wenn das Ziel der Bewegungsabschätzung darin besteht, eine bewegungskompensierte Vorhersage zu erzeugen, z. B. bei Bit-Raten- Verminderungsanwendungen, kann üblicherweise ein geeigneter Kompromiß gefunden werden, wobei die Tatsache berücksichtigt wird, daß weder Zuverlässigkeit noch ein feines Bewegungs- Vektorfeld notwendige Bedingungen für eine gute Funktion sind, da gelegentliche Fehler toleriert werden können. Wenn jedoch die Bewegungsabschätzung für bewegungskompensierte Interpolation verwendet wird, z. B. für die Hochsetzung zwischen 50 und 100 Hz- Anzeige-Raten, können die Wirkungen auf die Bildqualität von falschen Vektoren für gesamte Blöcke und auch von Vektoren, die nicht genau den Grenzen von sich bewegenden Objekten folgen, beträchtlich sein.
- US-A-5,162,907 offenbart eine Bewegungsabschätzung unter Verwendung von Blockanpassung, wobei auf Pixelblöcke bezogene Bewegungs-Vektoren berechnet und von den Block-Bewegungs- Vektoren Pixel-Bewegungs-Vektoren abgeleitet werden. Die Blockanpasung beginnt mit einer vorgegebenen Blockgröße. Wenn kein "guter Vektor gefunden wird, wird die Blockanpassung unter Verwendung erweiterter Blöcke ausgeführt. Aus der Ansammlung von "guten" Vektoren für ein Bild wird von den drei häufigsten angenommen, daß sie globale Bewegungs-Vektoren darstellen. Von dem Null-Vektor wird auch angenommen, daß er einen "guten" Vektor darstellt. Jedem Pixel in einem Block wird ein bestimmter Bewegungs-Vektor zugeordnet, wobei entweder einer von maximal vier "guten" Vektoren (einschließlich des Null-Vektors) aus dem gegenwärtigen Block und dem gegenwärtigen Block benachbarten Blöcken oder einer der globalen Bewegungs-Vektoren verwendet wird.
- Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren aufzuzeigen, durch das die Zuverlässigkeitsvorteile einer großen Blockgröße mit der Funktion von mehr lokalisierten Bewegungs- Vektoren kombiniert werden. Diese Aufgabe wird durch das im Anspruch 1 offenbarte Verfahren gelöst.
- Es ist eine weitere Aufgabe der Erfindung, eine Vorrichtung zu offenbaren, die das erfindungsgemäße Verfahren verwendet. Diese Aufgabe wird durch die im Anspruch 9 offenbarte Vorrichtung gelöst.
- Die erfindungsgemäßen Lösungen sind geringfügig verschieden, aber alle beruhen auf einer Blockanpassung unter Verwendung großer Blöcke, gefolgt durch Nachverarbeitung, bei der die Grenzen zwischen Bewegungs-Vektoren genauer fixiert oder "lokalisiert" werden.
- Wie in Fig. 1 dargestellt ist, wird das Bild in große rechteckige Blöcke LB (xb, yb) unterteilt, wobei xb eine horizontale Koordinate ist, die von links nach rechts zunimmt und yb eine vertikale Koordinate, die in dem Bild von oben nach unten zunimmt. Bei der nachfolgenden Beschreibung wird angenommen, daß die Blockgröße M Pixel mal N Zeilen beträgt. Typische Blockgrößen sind 8 · 8, 16 · 8 oder 16 · 16. Die Blockanpassung kann entweder bei einem unterabgetasteten Bild durchgeführt werden, wie in EP 93 402 059 der Anmelderin beschrieben ist, oder bei dem Original, und sie kann entweder konventionell oder "zweiseitig" sein, wobei der zu interpolierende Block an ein vorhergehendes und an ein nachfolgendes Bild angepaßt wird, wie in EP 93 402 187 der Anmelderin beschrieben ist. Der Blockanpassungs-Prozeß ergibt einen Fehlerwert E (vx, vy) für jeden Bewegungs-Vektor-Anwärter (vx, vy). Der für den Block gewählte Bewegungs-Vektor ist derjenige, für den der Fehler ein Minimum ist.
- Das Ziel des Lokalisierungs-Prozesses ist die Erzeugung eines getrennten Bewegungs-Vektors für jedes Pixel. Ein allen Lokalisierungsverfahren gemeinsames Merkmal besteht darin, daß für irgendein Pixel der Bewegungs-Vektor eine von vier Möglichkeiten ist: Der für den das Pixel enthaltende Block berechnete Vektor und die Vektoren der am nächsten liegenden Blöcke horizontal, vertikal und diagonal, wie in Fig. 1 dargestellt. Die Pixel, für die die Auswahl aus einer gegebenen Gruppe von Vektoren getroffen wird, bilden einen versetzten Block, der in der Figur durch eine gestrichelte Linie dargestellt ist. In diesem Bereich werden lokalisierte Bewegungs-Vektoren aus den Vektoren V&sub1;, V&sub2;, V&sub3; und V&sub4; der entsprechenden benachbarten großen Blöcke gebildet.
- Im Prinzip ist das erfindungsgemäße Verfahren für die Bewegungsabschätzung unter Verwendung von Blockanpassung geeignet, wobei ein auf jeden Block bezogener Bewegungs-Vektor berechnet wird, und wobei für irgendein Pixel des gegenwärtigen Blockes ein Pixel-Bewegungs-Vektor unter Verwendung von vier Bewegungs-Vektoren berechnet wird, d. h. des Bewegungs-Vektors des gegenwärtigen Blockes und der Bewegungs-Vektoren der drei benachbarten Blöcke, wobei für irgendein Pixel aus auf die vier Block-Bewegungs-Vektoren bezogenen Fehlerwerten mehrere abgeschätzte Fehler berechnet werden, wobei die Position des Pixels relativ zu der Mitte von jedem entsprechenden Block berücksichtigt wird, und wobei das Minimum der abgeschätzten Fehler verwendet wird, um den bezogenen der vier Block- Bewegungs-Vektoren als endgültigen Bewegungs-Vektor für das Pixel auszuwählen,
- oder wobei
- zusätzlich für jedes Pixel eine Pixelanpassung durchgeführt wird, indem die vier Bewegungs-Vektoren verglichen werden, gefolgt durch Zählen in Reihen der Anzahl von Wahlen von dem linken bzw. dem rechten Paar von Blöcken, und durch Zählen in Spalten der Anzahl von Wahlen von dem oberen bzw. dem unteren Paar von Blöcken, und Neuordnung der Vektoren zur Bildung von Gruppen von identischen Vektor-Typen derart, daß jedes Pixel zwei Entscheidungen hat, die zusammen einen eindeutigen Bewegungs-Vektor für das Pixel definieren,
- oder wobei
- zusätzlich für jeden Unterblock, der kleiner als der Block ist, eine Unterblock-Anpassung durchgeführt wird, indem die vier Bewegungs-Vektoren, die für den Unterblock relevant sind, verglichen werden, und einer in Bezug auf einen minimalen Unterblock-Fehler ausgewählt wird, wonach ein dominierender Unterblock-Vektor aus den gewählten Vektoren durch ihre Kombination erzeugt wird.
- Vorteilhafte zusätzliche Ausführungsformen des erfindungsgemäßen Verfahrens ergeben sich aus den entsprechenden Unteransprüchen.
- Im Prinzip schließt eine erste Ausführungsform der erfindungsgemäßen Vorrichtung zur Bewegungsabschätzung unter Verwendung von Blockanpassung, bei der ein auf jeden Block eines Bildsignals bezogener Bewegungs-Vektor berechnet wird, ein:
- Groß-Block-Anpassungsmittel, die das Bildsignal empfangen und Block-Bewegungs-Vektoren und bezogene Blockfehler erzeugen;
- Speichermittel, die die Block-Bewegungs-Vektoren und die Fehler speichern;
- Fehler-Abschätzungsmittel, insbesondere lineare Fehler- Interpolationsmittel, die auf gespeicherte Fehlerwerte einwirken, die allen vier bezogenen Block-Bewegungs-Vektoren entsprechen, das sind der Bewegungs-Vektor des gegenwärtigen Blocks und die Bewegungs-Vektoren der drei benachbarten Blöcke, und die für jedes Pixel abgeschätzte Fehler berechnen, wobei die Position des Pixels relativ zur Mitte jedes entsprechenden Blocks berücksichtigt wird;
- Vergleichsmittel, die das Minimum der abgeschätzten Fehler verwenden;
- Auswahlmittel, um in Bezug auf das Minimum den entsprechenden der vier Block-Bewegungs-Vektoren als endgültigen Bewegungs- Vektor für das gegenwärtige Pixel auszuwählen.
- Im Prinzip enthält eine zweite Ausführungsform der erfindungsgemäßen Vorrichtung zur Bewegungsabschätzung unter Verwendung von Blockanpassung, wobei ein auf jeden Block eines Bildsignals bezogener Bewegungs-Vektor berechnet wird:
- Groß-Block-Anpassungsmittel, die das Bildsignal empfangen und Block-Bewegungs-Vektoren erzeugen;
- Speichermittel, die die Block-Bewegungs-Vektoren speichern;
- Pixel-Anpassungsmittel, die alle vier gespeicherten Block- Bewegungs-Vektoren vergleiche, das sind der Bewegungs-Vektor des gegenwärtigen Blocks und die Bewegungs-Vektoren der drei benachbarten Blöcke;
- Zählmittel, um in Reihen die Zahl von Vektor-Auswahlen von dem linken bzw. rechten Block-Paar zu zählen, und um in Spalten die Zahl von Vektor-Auswahlen von dem oberen bzw. unteren Block-Paar zu zählen, und um die Vektoren neu zu ordnen, um Gruppen von identischen Vektor-Typen derart zu bilden, daß jedes Pixel zwei Entscheidungen hat;
- Zuordnungsmittel, die die beiden Entscheidungen kombinieren, um einen eindeutigen Bewegungs-Vektor für jedes Pixel zu definieren, ausgewählt aus den entsprechenden Block-Bewegungs- Vektoren.
- Im Prinzip enthält eine dritte Ausführungsform der erfindungsgemäßen Vorrichtung zur Bewegungsabschätzung unter Verwendung von Blockanpassung, wobei ein auf jeden Block eines Bildsignals bezogener Bewegungs-Vektor berechnet wird:
- Groß-Block-Anpassungsmittel, die das Bildsignal empfangen und Block-Bewegungs-Vektoren erzeugen;
- Speichermittel, die die Block-Bewegungs-Vektoren speichern;
- Unterblock-Anpassungsmittel, die alle vier gespeicherten Block- Bewegungs-Vektoren vergleichen, das sind der Bewegungs-Vektor des gegenwärtigen Blocks und die Bewegungs-Vektoren der drei benachbarten Blöcke, um einen Vektor auszuwählen, der einen minimalen Unterblock-Fehler hat;
- Kombinationsmittel, insbesondere Median-Filtermittel, die einen dominierenden Unterblock-Vektor aus den gewählten Vektoren erzeugen.
- Vorteilhafte zusätzliche Ausführungsformen der erfindungsgemäßen Vorrichtung ergeben sich aus den entsprechenden Unteransprüchen.
- Bevorzugte Ausführungsformen der Erfindung werden unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. In den Zeichnungen stellen dar:
- Fig. 1 mögliche Bewegungs-Vektoren für die Lokalisierung;
- Fig. 2 ein Blockdiagramm für die Lokalisierung durch Fehler- Interpolation;
- Fig. 3 die Lokalisierung durch Stimmenzählung;
- Fig. 4 ein Blockdiagramm der Lokalisierung durch Stimmenzählung;
- Fig. 5 ein Blockdiagramm der Lokalisierung durch Unterblock- Anpassung.
- Diese Ausführungsform arbeitet durch Berechnen eines abgeschätzten Fehlers für jedes Pixel für jeden der vier Bewegungs-Vektoren, von denen die Auswahl getroffen wird und dann durch Wählen des Vektors, für den der abgeschätzte Fehler ein Minimum ist. Für jeden der vier Vektoren wird der abgeschätzte Fehler durch lineare Interpolation zwischen den Block-Anpassungsfehlern berechnet, die für jeden der vier betroffenen Blöcke erzeugt werden, wobei die Position des in Frage stehenden Pixels relativ zu der Mitte jedes Blocks berücksichtigt wird. Wenn beispielsweise der horizontale Abstand des Pixels von der Mitte des oberen linken Blocks A ist und sein vertikaler Abstand B, der Bewegungs-Vektor V ist und die Fehler von jedem der vier Blöcke E&sub1;(V), E&sub2;(V), E&sub3;(V) und E&sub4;(v) sind, ist der abgeschätzte Fehler für das Pixel:
- EE = (1-A/M) * (1-B/N) * E&sub1; + (A/M) * (1-B/N) * E&sub2; + (1-A/M) * (B/N) * E&sub3; + (A/M) * (B/N) * E&sub4;
- Dieses Verfahren dehnt die Bereiche aus, für die Block- Anpassungsfehler wahrscheinlich klein sind, wodurch eine bessere Anpassung zwischen den Bewegungs-Vektoren und Objekten erzielt wird, die sich mit unterschiedlichen Geschwindigkeiten bewegen, während die Kontinuität der Grenzen zwischen Bewegungs-Vektoren erhalten bleibt.
- Fig. 2 ist ein Blockschaltbild einer möglichen Hardware- Ausführung. Groß-Block-Anpassungsmittel LBM, die das Eingangssignal INP empfangen, erzeugen für jeden Bewegungs- Vektor-Anwärter und für jeden Block Fehler E, die in einem Fehlerspeicher EM gespeichert werden, zusammen mit Block- Bewegungs-Vektoren BV, die in einem Block-Vektor-Speicher BVM gespeichert werden, und für die der Fehler in jedem Block ein Minimum ist. Bewegungs-Vektoren BV4 von dem Speicher BVM werden in Vierer-Gruppen verwendet, um über Fehler-Speicher- Steuermittel EMC einen Zugriff zu den entsprechenden Fehlerwerten über vier Blöcke zu steuern (C), die in dem Fehler- Speicher EM gespeichert sind. Diese Fehler E4 bilden den Eingang für einen Fehler-Interpolator EI, der abgeschätzte Fehler EE Pixel für Pixel berechnet. Schließlich werden die vier abgeschätzten Fehler für jedes Pixel in Vergleichsmitteln CEE verglichen, und das Minimum R wird dazu verwendet, in Vektor- Auswahlmitteln VS aus den Bewegungs-Vektoren BV den Ausgangs- Bewegungs-Vektor OV für dieses Pixel auszuwählen.
- Ein Vorteil dieser Ausführungsform besteht darin, daß sie ein gutes Rauschverhalten aufweisen.
- Diese Ausführungsform arbeitet, indem zuerst die "Block- Anpassungs"-Operation für jedes Pixel unter Verwendung einer Blockgröße von nur einem Pixel ausgeführt und nur die vier für das Pixel zugelassenen Vektoren verglichen werden. Hierbei kann angenommen werden, daß jedem Pixel eine "Stimme" für einen der vier Vektoren gegeben wird. Von sich aus führt diese Operation eine unannehmbare Zahl von falschen Vektoren ein, so daß ihr eine Einstellung der Grenzen zwischen Bewegungs-Vektoren folgt. Ein Beispiel der Operation dieser Ausführungsform ist in Fig. 3 angegeben.
- In jeder Reihe des durch die gestrichelte Linie in Fig. 1 markierten Block-Größen-Bereiches (Eingangs-Pixel-Vektoren IPV) wird die Zahl von Wahlen für Vektoren aus den zwei Blöcken links (V&sub1; und V&sub3; als Ergebnis der Zählung der Reihen RCR) gezählt. Wenn das Ergebnis (Reihen-Zählung RC) beispielsweise "a" ist, wird die Entscheidung getroffen, daß die "a" am meisten links liegenden Pixel in der Reihe gegebene Bewegungs-Vektoren V&sub1; oder V&sub3; und die (M-a) am meisten rechts liegenden Pixel V&sub2; oder V&sub4; sind (Vektor-Zuordnung in den Reihen VAR). In gleicher Weise wird in jeder Spalte die Zahl der Auswahlen für das obere Paar von Vektoren (V&sub1; und V&sub2; als Ergebnis der Zählung der Spalten RCC) gezählt (Spalten-Zählung CC). Wenn das Ergebnis "b" ist, wird die Entscheidung getroffen, daß die "b" am meisten oben liegenden Pixel in der Spalte gegebene Bewegungs-Vektoren V&sub1; oder V&sub2; und die (N-b) niedrigsten Pixel V&sub3; oder V&sub4; sind (Vektor- Zuordnung in den Spalten VAC). Nachdem beide Reihen und Spalten in dieser Weise betrachtet worden sind, hat jedes Pixel zwei Entscheidungen, die zusammen einen eindeutigen Bewegungs-Vektor für das Pixel definieren (endgültige Vektor-Zuordnung FVA), indem Bereiche gebildet werden, in denen beide Entscheidungen (VAR und VAC) dieselbe Art von Vektor enthalten.
- Bemerke: in Fig. 3, bedeutet "13" "1 oder 3", "24" bedeutet "2 oder 4", usw.
- Fig. 4 ist ein Blockschaltbild einer möglichen Hardware- Ausführung dieser Ausführungsform. Groß-Block-Anpassungsmittel LBM, die das Eingangssignal INP empfangen, erzeugen für jeden Block Vektoren BV, die in einem Block-Vektor-Speicher BVM gespeichert werden. Einzel-Pixel-Anpassungsmittel SPM empfangen das Eingangssignal INP und schätzen Gruppen von vier Block- Vektoren BV4 ab, die von dem Block-Vektor-Speicher BVM empfangen werden. Die resultierenden Einzel-Pixel-Vektoren PV (die "Stimmen") werden in Stimmen-Zählmitteln CV gespeichert und in einem Vektor-Zuordner VA unter Verwendung der Block-Vektoren BV aus dem Speicher BVM gemäß dem oben beschriebenen Zähl- Algorithmus neu zugeordnet, um die endgültigen Ausgangs-Pixel- Vektoren OPV zu liefern.
- Dieses Verfahren hat auch ein gutes Rauschverhalten und ist in der Hardware ziemlich einfach, weil die sekundäre Einzel- Pixel-Suche nur vier Vergleiche pro Pixel erfordert. Der Prozeß des Zählens von Stimmen über Reihen und Spalten kann verallgemeinert werden, um die Größen der Fehler in Betracht zu ziehen, die aus dem Einzel-Pixel-"Block-Anpassungs"-Prozeß resultieren.
- Dieses Verfahren verwendet auch die Anpassung von kleineren Blöcken, jedoch wird hier ein Kompromiß zwischen der Zuverlässigkeit von größeren Blöcken und der Notwendigkeit für ein Bewegungs-Vektorfeld auf Pixel-Basis geschlossen. Die Blockanpassung wird unter Verwendung kleiner Blöcke durchgeführt, üblicherweise 2 · 2, wobei wiederum nur die vier Vektoren verglichen werden, die für den kleinen Block (oder "Unterblock") relevant sind. Das resultierende Bewegungs- Vektorfeld ist viel zuverlässiger als das, das aus einer Suche unter Verwendung einzelner Pixel resultiert, aber es gibt eine kleine Strafe dadurch, daß die Lokalisierung gröber ist.
- Bei einer Unterblock-Größe von 2 · 2 ergibt sich ein gewisser Vorteil, wenn der Unterblock-Suche eine Nachverarbeitung folgt, um das gelegentliche schädliche Ergebnis zu beseitigen, insbesondere wenn das Eingangsbild rauschbehaftet ist. Eine Möglichkeit ist ein Median-Filter, wobei ein Fenster von 3 · 3 Unterblöcken für jede Komponente des Bewegungs-Vektors getrennt verwendet wird. Dies ist ein ziemlich einfacher Prozeß, aber er hat den leichten Nachteil, daß die Ausgangs-Bewegungs-Vektoren nicht einer der neun Vektoren von dem Fenster sein könnten, von denen der Median-Wert genommen wird. Dieser Nachteil ist nicht groß, insbesondere wenn der vertikale Bewegungs-Vektorbereich klein ist, aber er kann durch Verwendung eines 3 · 3 "Vektor- Median"-Filters für die Bewegungs-Vektoren überwunden werden, wie beschrieben in "An overview of median and stack filtering", GABBOUJ, M. et al., 1991, Circuits Systems Signal Processing, Band 11, Nr. 1, 1992.
- Simulierungen haben gezeigt, daß die Lokalisierung durch Unterblock-Suche, gefolgt von einem 3 · 3 Median-Filter für jede Komponente eine engere Annäherung an das wahre Bewegungsfeld ergibt als die beiden anderen Ausführungsformen. Bei den meisten Konstruktionen ist wahrscheinlich eine Ausführung in Hardware am einfachsten, aber die anderen Ausführungsformen können sich als einfacher erweisen oder bei bestimmten Anwendungen eine bessere Funktion haben.
- Fig. 5 ist ein Blockschaltbild einer möglichen Ausführung. Groß-Block-Anpassungsmittel LBM, die das Eingangssignal INP empfangen, erzeugen für jeden Block Block-Vektoren BV, die in einem Block-Vektor-Speicher BVM gespeichert werden. Unterblock- Anpassungsmittel SBM empfangen das Eingangssignal INP und schätzen Gruppen von vier Vektoren BV4 ab, die von dem Block- Vektor-Speicher BVM empfangen werden. Die resultierenden Unterblock-Vektoren SBV, die in SBM in Bezug auf den minimalen Unterblock-Fehler ausgewählt worden sind, werden in Filtermitteln MF median-gefiltert, um die endgültigen Ausgangs- Unterblock-Vektoren OSBV zu erzeugen.
Claims (12)
1. Verfahren zur Bewegungsschätzung unter Verwendung von
Blockanpassung, bei dem auf Pixel-Blöcke (LB) bezogene Block-
Bewegungs-Vektoren (BV) berechnet werden und aus den Block-
Bewegungs-Vektoren (BV) Pixel-Bewegungs-Vektoren (OV, OPV)
berechnet werden, dadurch gekennzeichnet, daß die Pixel-Blöcke
eine vorgegebene Größe haben die in der Bewegungs-Vektor-
Berechnungsverarbeitung fest bleibt, und daß für jedes Pixel
eines gegenwärtigen Pixel-Blocks ein Pixel-Bewegungs-Vektor (OV,
OPV, OSBV) berechnet wird, wobei jeweils der Block-Bewegungs-
Vektor (V1) für den gegenwärtigen Pixel-Block und nur die drei
anderen Block-Bewegungs-Vektoren (V2, V3, V4) der drei
benachbarten Pixel-Blöcke verwendet werden, die dem Viertel von
Pixeln des gegenwärtigen Pixel-Blocks am nächsten liegen, zu dem
ein gegenwärtiges Pixel gehört.
2. Verfahren nach Anspruch 1, umfassend die folgenden Schritte:
- aus Fehlerwerten E4) in der Block-Anpassung, die sich auf
den Block-Bewegungs-Vektor (V1) für den gegenwärtigen Pixel-
Block und die drei anderen Block-Bewegungs-Vektoren (V2, V3, V4)
beziehen, wobei in jedem Fall jeder der vier Vektoren (BV4)
allen vier Blöcken zugeführt wird, werden für jedes Pixel vier
abgeschätzte Fehler (EE) berechnet (EM, EI), wobei die räumliche
Position des gegenwärtigen Pixels in Bezug auf die Mitten des
gegenwärtigen Pixel-Blocks der drei benachbarten Pixel-Blöcke
berücksichtigt wird;
- Nehmen (VS) des Minimums (R) der vier abgeschätzten Fehler,
um den bezogenen der vier Block-Bewegungs-Vektoren als
endgültigen Bewegungs-Vektor (OV) für das gegenwärtige Pixel
auszuwählen.
3. Verfahren nach Anspruch 2, bei dem die abgeschätzten Fehler
(EE) unter Verwendung von linearer Interpolation berechnet
werden (EI).
4. Verfahren nach Anspruch 1, umfassend die folgenden Schritte;
- Ausführen einer zusätzlichen Pixel-Anpassung (SPM) für das
gegenwärtige Pixel unter Verwendung der Block-Bewegungs-Vektoren
(V1, V2, V3, V4, BV4) für den gegenwärtigen Pixel-Block und für
die drei benachbarten Pixel-Blöcke;
- Zählen (CV) der Anzahl von Auswahlen (1/3, 2/4) in Reihen
aus dem linken bzw. rechten Block-Paar und Zählen (CV) von
Auswahlen (1/2, ³/&sub4;) in Spalten aus dem oberen bzw. unteren Block-
Paar;
- Neuordnung der vorbereitenden Vektor-Auswahl-Paare gemäß den
Vektor-Auswahl-Komponenten-Majoritäten, um Gruppen von
identischen Vektor-Auswahl-Paaren derart zu bilden, daß für
jedes Pixel zwei Vektor-Auswahl-Paare, die eine selbe Vektor-
Auswahlkomponente enthalten, den endgültigen Bewegungs-Vektor
(OPV) für das gegenwärtige Pixel durch jene selbe Vektor-
Auswahlkomponente definieren (VA).
5. Verfahren nach Anspruch 1, umfassend die folgenden Schritte:
- zusätzliches Ausführen einer Anpassung (SBM) von Pixel-
Unterblöcken, die kleiner als die Pixel-Blöcke (LB) sind, wobei
für einen gegenwärtigen Unterblock der Block-Bewegungs-Vektor
(V1)
für den gegenwärtigen Pixel-Block und die drei anderen
Block-Bewegungs-Vektoren (V2, V3, V4) verwendet werden;
- Auswahl in jedem Fall des Unterblock-Vektors (SBV), der sich
auf den minimalen Unterblock-Anpassungsfehler bezieht, und
Kombinieren (MF) der ausgewählten Unterblock-Vektoren, um
dadurch den Bewegungs-Vektor für das gegenwärtige Pixel zu
bestimmen.
6. Verfahren nach Anspruch 5, bei dem das Kombinieren eine
Median-Filterung (MF) der Unterblock-Vektoren (SBV) ist,
insbesondere eine getrennte Median-Filterung jeder Komponente
von Unterblock-Vektoren.
7. Verfahren nach einem der Ansprüche 1 bis 6, bei dem die
Blockanpassung (LBM) bei unterabgetasteten Bildern ausgeführt
wird.
8. Verfahren nach einem der Ansprüche 1 bis 7, bei dem die
Blockanpassung (LBM) eine zweiseitige Blockanpassung ist.
9. Vorrichtung zur Bewegungsabschätzung unter Verwendung von
Blockanpassung, wobei auf Pixel-Blöcke (LB) bezogene Block-
Bewegungs-Vektoren (BV) berechnet werden und aus den Block-
Bewegungs-Vektoren (BV) Pixel-Bewegungs-Vektoren (OV, OPV)
berechnet werden, gekennzeichnet durch:
- Mittel (LBM, BVM) zur Berechnung und Speicherung von
Bewegungs-Vektoren (BV) für die Pixel-Blöcke (LB), wobei die
Pixel-Blöcke eine vorgegebene Größe haben, die in der Bewegungs-
Vektor-Berechnungsverarbeitung fest bleibt;
- Pixel-Bewegungs-Vektormittel (EMC, EM, EI, CEE, VS; SPM, CV,
VA; SBM, MF) zur Berechnung eines Pixel-Bewegungs-Vektors (OV,
OPV, OSPV) für jedes Pixel eines gegenwärtigen Pixel-Blocks,
wobei jeweils der Block-Bewegungs-Vektor (V&sub1;) für den
gegenwärtigen Pixel-Block und nur die drei anderen Block-
Bewegungs-Vektoren (V2, V3, V4) der drei benachbarten Pixel-
Blöcke verwendet werden, die dem Viertel von Pixeln des
gegenwärtigen Pixel-Blocks am nächsten liegen, zu dem ein
gegenwärtiges Pixel gehört.
10. Vorrichtung nach Anspruch 9, bei dem die Pixel-Bewegungs-
Vektormittel umfassen:
- Fehler-Abschätzungsmittel (EI), insbesondere lineare Fehler-
Interpolationsmittel, die für jedes Pixel vier abgeschätzte
Fehler (EE) aus gespeicherten (EM) Fehler-Werten (E4) in der
Blockanpassung entsprechend dem Block-Bewegungs-Vektor (V1) für
den gegenwärtigen Pixel-Block und die drei anderen Block-
Bewegungs-Vektoren (V2, V3, V4) berechnen, wobei in den Fehler-
Abschätzungsmitteln in jedem Fall jeder der vier Vektoren (BV4)
allen vier Blöcken zugeführt wird, um dadurch die räumliche
Position des gegenwärtigen Pixels in Bezug auf die Mitten des
gegenwärtigen Pixel-Blocks und der drei benachbarten Pixel-
Blöcke zu berücksichtigen;
- Vergleichsmittel (CEE), die in jedem Fall das Minimum (R)
der vier abgeschätzten Fehler (EE) bestimmen;
- Auswahlmittel (V5), um den entsprechenden der vier Block-
Bewegungs-Vektoren in Bezug auf das Minimum als endgültigen
Bewegungs-Vektor (OV) für das gegenwärtige Pixel zu nehmen.
11. Vorrichtung nach Anspruch 9, bei der die Pixel-Bewegungs-
Vektormittel umfassen:
- Pixel-Anpassungsmittel (SPM), die für das gegenwärtige Pixel
zusätzlich eine Pixel-Anpassung (SPM) unter Verwendung der
Block-Bewegungs-Vektoren (V1, V2, V3, V4, BV4) für den
gegenwärtigen Pixel-Block und für die drei benachbarten Pixel-
Blöcke durchführen;
- Zählmittel (CV), um in Reihen die Zahl von Auswahlen (1/3,
2/4) aus dem linken bzw. rechten Block-Paar zu zählen, und um in
Spalten die Zahl von Auswahlen (1/2, ³/&sub4;) aus dem oberen bzw.
unteren Block-Paar zu zählen, und um die vorbereitenden Vektor-
Auswahl-Paare gemäß den Vektor-Auswahlkomponenten-Majoritäten
neu zu ordnen, um Gruppen von identischen Vektor-Auswahl-Paaren
derart zu bilden, daß für jedes Pixel zwei Vektor-Auswahl-Paare
bestimmt werden, die eine selbe Vektor-Auswahlkomponente
enthalten;
- Zuordnungsmittel (VA), die den endgültigen Bewegungs-Vektor
(OVP) für das gegenwärtige Pixel durch dieselbe
Vektor-Auswahlkomponente definieren.
12. Vorrichtung nach Anspruch 9, bei der die Pixel-Bewegungs-
Vektormittel umfassen:
- Unterbolck-Anpassungsmittel (SPM), die zusätzlich eine
Anpassung von Pixel-Unterblöcken ausführen, die kleiner sind als
die Pixel-Blöcke (LB), wobei für einen gegenwärtigen Unterblock
der Block-Bewegungs-Vektor (V1) für den gegenwärtigen Pixel-
Block und die drei anderen Block-Bewegungs-Vektoren (V2, V3, V4)
verwendet werden, und die in jedem Fall den Unterblock-Vektor
(SBV) auswählen, der sich auf den minimalen Unterblock-
Anpassungsfehler bezieht;
- Kombinationsmittel (MF), insbesondere Median-Filtermittel,
die die ausgewählten Unterblock-Vektoren kombinieren,
insbesondere die Komponenten der ausgewählten Unterblock-
Vektoren, um dadurch den Bewegungs-Vektor für das gegenwärtige
Pixel zu bestimmen.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP93402188 | 1993-09-08 | ||
EP93117661 | 1993-11-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69423166D1 DE69423166D1 (de) | 2000-04-06 |
DE69423166T2 true DE69423166T2 (de) | 2000-07-06 |
Family
ID=26133496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69423166T Expired - Lifetime DE69423166T2 (de) | 1993-09-08 | 1994-08-30 | Verfahren und Vorrichtung zur Bewegungsauswertung mit Blockübereinstimmung |
Country Status (4)
Country | Link |
---|---|
US (1) | US6438170B1 (de) |
JP (1) | JP3946782B2 (de) |
DE (1) | DE69423166T2 (de) |
SG (1) | SG49308A1 (de) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4119092B2 (ja) * | 1998-06-25 | 2008-07-16 | 株式会社日立製作所 | 画像信号のフレーム数変換方法および装置 |
AU5973899A (en) * | 1998-09-07 | 2000-03-27 | Thomson Multimedia | Method of motion estimation for transmission cost reduction of motion vectors |
US6411724B1 (en) * | 1999-07-02 | 2002-06-25 | Koninklijke Philips Electronics N.V. | Using meta-descriptors to represent multimedia information |
US6668020B2 (en) * | 2000-11-04 | 2003-12-23 | Vivotek Inc. | Method for motion estimation in video coding |
US6810081B2 (en) * | 2000-12-15 | 2004-10-26 | Koninklijke Philips Electronics N.V. | Method for improving accuracy of block based motion compensation |
KR100360893B1 (ko) * | 2001-02-01 | 2002-11-13 | 엘지전자 주식회사 | 영상 움직임 보상 장치 및 방법 |
US6999514B2 (en) * | 2001-10-26 | 2006-02-14 | Selliah Rathnam | Motion compensation with subblock scanning |
WO2004082294A1 (en) * | 2003-03-14 | 2004-09-23 | Koninklijke Philips Electronics N.V. | Method for motion vector determination |
KR100994773B1 (ko) * | 2004-03-29 | 2010-11-16 | 삼성전자주식회사 | 계층적 움직임 추정에 있어서 움직임 벡터 생성 방법 및장치 |
JP4419062B2 (ja) * | 2004-03-29 | 2010-02-24 | ソニー株式会社 | 画像処理装置および方法、記録媒体、並びにプログラム |
DE102004017145B4 (de) * | 2004-04-07 | 2006-02-16 | Micronas Gmbh | Verfahren und Vorrichtung zur Ermittlung von Bewegungvektoren, die Bildbereichen eines Bildes zugeordnet sind |
US8503530B2 (en) * | 2004-05-27 | 2013-08-06 | Zhourong Miao | Temporal classified filtering for video compression |
GB0500174D0 (en) | 2005-01-06 | 2005-02-16 | Kokaram Anil | Method for estimating motion and occlusion |
KR20070055212A (ko) * | 2005-11-25 | 2007-05-30 | 삼성전자주식회사 | 프레임 보간장치, 프레임 보간방법 및 움직임 신뢰성평가장치 |
JP4799330B2 (ja) * | 2006-09-08 | 2011-10-26 | 株式会社東芝 | フレーム補間回路、フレーム補間方法、表示装置 |
GB2443858A (en) * | 2006-11-14 | 2008-05-21 | Sony Uk Ltd | Alias avoiding image processing using directional pixel block correlation and predetermined pixel value criteria |
KR101337206B1 (ko) * | 2007-10-12 | 2013-12-06 | 삼성전자주식회사 | 블록 샘플링을 이용한 영상의 움직임 추정 시스템 및 방법. |
EP3985979B1 (de) | 2010-12-13 | 2024-03-27 | Electronics And Telecommunications Research Institute | Verfahren zur bestimmung einer referenzeinheit |
JP2014183544A (ja) * | 2013-03-21 | 2014-09-29 | Fujitsu Ltd | 画像処理装置、及び画像処理方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0644815B2 (ja) * | 1984-04-27 | 1994-06-08 | 日本電気株式会社 | 動物体の動き内挿装置 |
JPS61113377A (ja) * | 1984-11-07 | 1986-05-31 | Sony Corp | テレビジヨン信号の動き検出装置 |
AU579550B2 (en) * | 1985-06-10 | 1988-11-24 | Nec Corporation | Movement compensation predictive encoder for a moving picture signal with a reduced amount of information |
FR2599577B1 (fr) * | 1986-05-29 | 1988-08-05 | Guichard Jacques | Procede de codage par transformation pour la transmission de signaux d'image. |
DE3855114D1 (de) * | 1987-05-06 | 1996-04-25 | Philips Patentverwaltung | System zur Übertragung von Videobildern |
EP0294961B1 (de) * | 1987-06-09 | 1994-10-12 | Sony Corporation | Auswahl eines Bewegungsvektors in Fernsehbildern |
GB2208056A (en) * | 1987-08-10 | 1989-02-15 | Philips Electronic Associated | Television transmission system |
JPH0810936B2 (ja) * | 1989-03-31 | 1996-01-31 | 松下電器産業株式会社 | 動きベクトル検出装置 |
GB2248361B (en) | 1990-09-28 | 1994-06-01 | Sony Broadcast & Communication | Motion dependent video signal processing |
US5347309A (en) * | 1991-04-25 | 1994-09-13 | Matsushita Electric Industrial Co., Ltd. | Image coding method and apparatus |
-
1994
- 1994-08-30 DE DE69423166T patent/DE69423166T2/de not_active Expired - Lifetime
- 1994-08-30 SG SG1996008999A patent/SG49308A1/en unknown
- 1994-09-08 JP JP21498794A patent/JP3946782B2/ja not_active Expired - Fee Related
-
1997
- 1997-02-18 US US08/801,610 patent/US6438170B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE69423166D1 (de) | 2000-04-06 |
SG49308A1 (en) | 1998-05-18 |
US6438170B1 (en) | 2002-08-20 |
JPH07170496A (ja) | 1995-07-04 |
JP3946782B2 (ja) | 2007-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69423166T2 (de) | Verfahren und Vorrichtung zur Bewegungsauswertung mit Blockübereinstimmung | |
DE69223925T2 (de) | Videobildverarbeitung | |
DE69031055T2 (de) | Bewegungsabhängige Videosignalverarbeitung | |
EP1770635B1 (de) | Iteratives Verfahren zur Interpolation von Bildinformationswerten | |
DE69123359T2 (de) | Videobildverarbeitung | |
DE69022470T2 (de) | Bewegungsabhängige Videosignalverarbeitung. | |
DE69333103T2 (de) | Vorrichtung zur Umsetzung von digitalen Daten | |
DE69217150T2 (de) | Bewegungsvektorschätzung, Bewegungsbildkodierung- und -speicherung | |
DE69027809T2 (de) | Bewegungsabhängige Videosignalverarbeitung | |
EP0658056B1 (de) | Verfahren zur hierarchischen Bewegungsschätzung in einem Fernsehsignal | |
DE69405740T2 (de) | Verfahren und anordnung für bewegungskompensierende interpolation | |
DE102010053087A1 (de) | Auf bidirektionaler, lokaler und globaler Bewegungseinschätzung basierende Bildfrequenzumwandlung | |
DE69431791T2 (de) | Vorrichtung und verfahren zur automatischen bildentzerrung | |
DE69028651T2 (de) | Bewegungsabhängige Videosignalverarbeitung | |
EP0645037A1 (de) | Verfahren zur detektion von änderungen in bewegtbildern | |
EP1585059A2 (de) | Verfahren und Vorrichtung zur Ermittlung von Bewegungsvektoren, die Bildbereichen eines Bildes zugeordnet sind | |
DE69320461T2 (de) | Bewegungskompensierte Videobildverarbeitung | |
EP0472239A2 (de) | Verfahren zur Ermittlung horizontaler Bewegungen in den Bildinhalten eines Fernsehsignals | |
DE69028792T2 (de) | Bewegungsabhängige Videosignalverarbeitung | |
DE69031322T2 (de) | Bewegungsabhängige Videosignalverarbeitung | |
DE69028239T2 (de) | Bewegungsabhängige Videosignalverarbeitung | |
DE69028033T2 (de) | Bewegungsabhängige Videosignalverarbeitung | |
DE60127554T2 (de) | Verfahren und vorrichtung für videokodierung mit rekursiver bewegungskompensierter filterung | |
DE60031559T2 (de) | Verfahren und gerät zur lernfähigen klassenauswahl nach mehreren klassifikationen | |
EP0897247A2 (de) | Verfahren zur Berechnung von Bewegungsvektoren |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |