DD293933A5 - Bewegungsabschaetzeinrichtung - Google Patents
Bewegungsabschaetzeinrichtung Download PDFInfo
- Publication number
- DD293933A5 DD293933A5 DD90340098A DD34009890A DD293933A5 DD 293933 A5 DD293933 A5 DD 293933A5 DD 90340098 A DD90340098 A DD 90340098A DD 34009890 A DD34009890 A DD 34009890A DD 293933 A5 DD293933 A5 DD 293933A5
- Authority
- DD
- German Democratic Republic
- Prior art keywords
- image
- block
- blocks
- detector according
- column
- Prior art date
Links
Classifications
-
- 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/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/43—Hardware specially adapted for motion estimation or compensation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/223—Analysis of motion using block-matching
- G06T7/231—Analysis of motion using block-matching using full search
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Abstract
Die Erfindung betrifft einen Bewegungsdetektor fuer Videosignale. Ein Bewegungsdetektor fuer eine bewegungskompensierte Voraussage in einem auf die Differenz von Bild zu Bild abstellenden Videocoder wird abgeleitet, indem jeder Block in einer Reihe eines aktuellen Bildes mit dem entsprechenden Bereich sowie lageverschobenen Bereichen eines vorhergehenden Bildes verglichen wird. Die Bloecke werden Zeile um Zeile verarbeitet und in einer vertikalen Spalte-um-Spalte-Abtastung mit jedem der verschobenen Bereiche verglichen. Zwei oder mehrere Zeilen koennen gleichzeitig verarbeitet werden. Fuer eine 7-Bildpunkt-Suche sind zwei oder vier Vergleichsprozessoren vorgesehen, wobei einer (oder ein Paar) die ungeradzahligen Bloecke und der andere (oder das andere Paar) die geradzahligen Bloecke bearbeitet. Fuer eine 15-Bildpunkt-Suche werden vier oder acht Prozessoren vorgesehen. Die Vertikalabtastung wird unter Verwendung eines seriellen FIFO-Speichers vorgesehen, der acht SIPO-Abschnitte mit je acht Anschluessen einschlieszt.{Bewegungsdetektor; bewegungskompensierte Voraussage; Videorecorder; lageverschobenen Bereichen; Spalte-um-Spalte-Abtastung; 7-Bildpunktsuche; Vergleichsprozessoren; Vertikalabtastung; FIFO-Speicher}
Description
Bewegungsdetektor
Die Erfindung betrifft die Bewegungsabschätzung bzw. -berechnung, insbesondere, jedoch nicht ausschließlich, im Zusammenhang mit Videocodern, die eine Codierung verwenden, die auf den Unterschied von Bild zu Bild abstellt.
Fig. 1 zeigt den Aufbau eines bekannten Videocoders. Am Eingang a werden Videosignale (gewöhnlich in digitaler Form) empfangen. Ein Subtrahierglied b bildet die Differenz zwischen dem Eingangssignal und einem von einem Prädiktor c erhaltenen Voraussagesignal, wobei diese Differenz dann weiterhin in einem Codierer d codiert wird. Die Codierung, die hier durchgeführt wird, ist nicht Gegenstand der Erfindung; sie kann jedoch z. B. eine Schwellenwerteinteilung (zur Unterdrückung der Übertragung von Differenzen mit 0 oder einem geringfügigen Wert), eine Digitalisierung bzw. Quantisierung oder eine Transformationscodierung einschließen. Das an den Prädiktor c angelegte Eingangssignal stellt die in einem
,#3033
Summierglied e gebildete Summe aus Voraussagesignal und codiertem Differenzsignal, das in einem lokalen Decodierer f decodiert wurde, dar (so daß der Informationsverlust beiw Codier- und Decodiervorgang in der Prädiktorschleife enthalten ist).
Die Differential- bzw. Differenzcodierung erfolgt im wesentlichen auf der Grundlage von zwei Bildern, so daß der Prädiktor c einfach aus einer Verzögerungseinheit bestehen könnte, die eine Verzögerung um ein Bild vorsieht; wie jedoch dargestellt, ist auch eine Bewegungsabschätz- bzw. Berechnungseinrichtung g vorgesehen. Diese Bewegungsabschätzeinrichtung g vergleicht das Bild, das codiert werden soll, mit dem vorhergehenden Bild, das dem Prädiktor c zugeführt wird. Für jeden Block des aktuellen Bildes (in die das Bild unterteilt ist) identifiziert er denjenigen Bereich des vorhergehenden Bildes, der dem Block am ähnlichsten ist. Die Vektorlagedifferenz zwischen dem identifizierten Bereich und dem vorliegenden Block wird als Bewegungsvektor bezeichnet (da dieser gewöhnlich die Bewegung eines Gegenstands in der vom Fernsehbild veranschaulichten Szene wiedergibt) und dem Prädiktor c zugeführt, um den identifizierten Bereich des vorhergehenden Bildes in die Position des relevanten Blockes im aktuellen Bild zu verschieben, so daß dadurch das Ausgangssignal des Prädiktors eine bessere Voraussage bildet. Dies hat zur Folge, daß die vom Subtrahierglied b gebildeten Differenzen im Durchschnitt kleiner sind und daß der Codierer das Bild unter Verwendung einer niedrigeren Bitrate codieren kann, als dies ansonsten der Fall wäre.
Ein Typ einer Bewegungsabschätzeinrichtung arbeitet auf einer Block zu Block-Basis, indem jeder Block mit dem entsprechenden Block des vorhergehenden Bildes und mit bezüglich dieser Blockposition lageverschobenen Bereichen verglichen wird. Dies stellt einen beträchtlichen Arbeitsaufwand dar und erfordert
.233933
oft viele Zugriffe auf die gespeicherten Versionen der beiden Bilder.
Die Erfindung ist in den Ansprüchen gekennzeichnet.
Ausführungsbeispiele der Erfindung werden nachfolgend anhand der Zeichnung näher erläutert. Es zeigen:
Fig. 2 einen Block des aktuellen Bildes und einen entsprechenden Suchbereich des vorhergehenden Bildes;
Fig. 3 eine Bewegungsvektor-Abschätzeinrichtung gemäß einem ersten Ausführungsbeispiel in schematischer Darstellung;
i X
Fig. 4 ein Ausführungsbeispiel eines Speicherfeldes für das vorhergehende Bild in schematischer Darstellung;
Fig. 5 eine Suchabtastung in schematischer Darstellung; Fig. 6 ein zweites Ausführungsbeispiel;
Fig. 7 die vom Ausführungsbeispiel gemäß Fig. 6 bearbeiteten Blöcke des aktuellen Bildes in schematischer Darstellung;
Fig. 8 eine arithmetische Einheit in schematischer Darstellung, die als Teil der Erfindung 7um Berechnen eines Ähnlichkeitsmaßes geeignet ist; und
Fig. 9 einen Speicher für das minimale Ähnlichkeitsmaß, der als Teil der Erfindung geeignet ist, in schematischer Darstellung.
Die zu beschreibende Bewegungsabschätzeinrichtung betrachtet ein "aktuelles" Bild eines Fernsehbildes, das codiert wird, als in 8 χ 8 Blöcke unterteilt; d. h. acht Bildelemente bzw. Bildpunkte (Pixel) in horizontaler Richtung mal acht Zeilen in vertikaler Richtung. Obwohl die Prinzipien gleichermaßen auf Halbbild- bzw. Zeilensprungsysteme anwendbar sind, wird zur Vereinfachung der Beschreibung ein Bild ohne Zeilensprung angenommen. Sie erzeugt für jeden Block einen Bewegungsvektor, der die Position des Bereichs in Blockgröße anzeigt, der in einem bestimmten Suchbereich des (oder eines) vorhergehenden Bildes liegt und dem betrachteten Block am ähnlichsten ist.
Fig. 2 verdeutlicht ein Feld mit einem m χ η = 8 χ 8 Block N (schraffiert) und einen 23 χ 23 (d. h. 8 + 7 χ 2) Bildpunkte aufweisenden Suchbereich, der durch ein Rechteck Sn verdeutlicht ist. Werden die Bildpunkte in horizontaler Richtung und die Zeilen in vertikaler Richtung durch Koordinaten x, y identifiziert, wobei der Ursprung an der oberen linksseitigen Ecke liegt, so ist dann für einen Block, dessen oberer linksseitiger Eckbildpunkt die Koordinaten xN, yN aufweist, der Suchbereich derjenige Bereich, der sich in horizontaler Richtung von (xN - 7) bis (xN + 8 + 7) und in vertikaler Richtung von (yN - 7) bis (yN +8+7) erstreckt, wobei der Suchbereich entsprechende rechteckige η χ m Bereiche mit Ursprungskoordinaten von (xN - 7, yN - 7) bis (xN + 8, yN + 8) enthält.
Um den Bewegungsvektor zu erhalten, muß eine Suche durchgeführt werden, bei der der Block mit jedem der (8 + 7) χ (8 + 7) = 225 möglichen 8x8 Bereiche des vorhergehenden Bildes verglichen wird, die im Suchbereich liegen, d. h. jene, deren oberer linker Bildpunkt die Koordinaten xN + u, yN + ν aufweist, wobei u im Bereich ±p und ν im Bereich ±q liegt. Der Bewegungsvektor befindet sich bei den Werten u, v, bei denen der Vergleich die größte Ähnlichkeit enzeigt. Der Ähnlichkeitstest kann irgendein üblicherweise verwendeter Test
sein, ζ. B. bei dem die Summe der Absolutwerte der Differenzen zwischen jedem der Bildpunkte im "aktuellen" Block und in dem relevanten Bereich des vorhergehenden Bildes gebildet wird.
Werden somit die Bildpunktwerte des aktuellen Bildes und des vorhergehenden Bildes mit a(i, j) bzw. b(i, j) bezeichnet, so ergibt sich die Summe der Differenzen zu:
m-1 n-1
Ex,γ (v, u) = Σ Σ I a (x+i, y+j) - b (x+u+i, y+v+j) | i=0 j=0
Im allgemeinen wird im Stand der Technik die Suche für jeden Block des aktuellen Bildes der Reihe nach durchgeführt. Da jedoch der einem Block zugeordnete Suchbereich die Suchbereiche einer Anzahl anderer Blöcke überlappen kann, ist (wie anhand des in Fig. 2 gestrichelt gekennzeichneten Blocks N + 1 hervorgeht) häufig ein mehrfacher Zugriff auf die das vorhergehende Bild betreffenden Informationen erforderlich, die in einem Bildspeicher abgespeichert sind. Diese mehrfachen Zugriffe sind zeitaufwendig und können andere Coderfunktionen stören.
Wie aus Fig. 3 ersichtlich, wird der Eingangsbildpunktestrom (der im CIF (Common Intermediate Format) oder einem Zeilenabtastformat vorliegt) für das aktuelle Bild einer für das aktuelle Bild vorgesehenen Zusammenschiebeeinrichtung 1 zugeführt, die diesen in ein mxn(zB. 8x8) Blockformat umwandelt und nacheinander sukzessive Blöcke in einem Zeileum-Zeile-Format ausgibt; dies kann in Form eines RAM-Puffers (der mit Bildpunktgeschwindigkeit arbeitet) vorgesehen werden. Mit dem Ausgang der für das aktuelle Bild vorgesehenen Zusammenschiebeeinrichtung 1 steht ein für das aktuelle Bild vorgesehenes Speicherfeld 2 in Verbindung, das so
dimensioniert ist, daß es einen m χ η Dlock speichern und bis zum Abschluß des Suchvorganges für diesen Block halten kann.
.Das vorhergehende (gewöhnlich das unmittelbar vorhergehende) Bild wird gespeichert und ist gewöhnlich im Blockformat verfügbar, da es in diesem Format codiert wird; bei einem Typ von Codierer werden (8x8) Bildpunktblöcke in (2 χ 2)-Anordnung zu Makroblöcken (d. h. 16 χ 16 Bildpunkte) und eine (3 χ 11)-Anordnung von Makroblöcken zu einer Gruppe von Makroblöcken GOB (d. h. 176 χ 48 Bildpunkte) angeordnet.
Um einen Bewegungsvektor abzuschätzen bzw. zu berechnen, vergleicht die Erfindung jeden Block des aktuellen Feldes mit dem entsprechenden Block im vorhergehenden Feld sowie mit bildpunktversetzten Versionen jenes Blockes. Um solche bildpunktversetzte Versionen zu erhalten, ist es deshalb erforderlich, die Daten des vorhergehenden Bildes vom Blockformat in ein Bildpunktformat umzuwandeln, so daß bildpunktversetzte Versionen des Blocks erhalten werden können. Da es auch erforderlich sein kann, Makroblock- oder GOB-Grenzen zu kreuzen, wird dann im allgemeinen, wo derartige Formate verwendet werden, ein 4-GOB-Speicher zur Ausführung der Umwandlung erforderlich sein.
Bei der Erfindung stellt das Bildpunktformat ein Spaltenabtastformat dar.
Um diese Umwandlung durchführe., zu können, ist ein Zusammenschieber 3 für das vorhergehende Bild vorgesehen, der an seinem Eingang das vorhergehende Bild im Block-um-Block-Format empfängt und an seinem Ausgang einen Spalte um Spalte abgetasteten Bildpunktstrom erzeugt. Dies kann bewerkstelligt werden, indem ein Bildspeicher verwendet wird, der als ein zylindrischer RAM-Speicher konfiguriert ist, GOB- und Blocknummern in Bildpunkt- und Zeilenversätze für die Schreibadresse decodiert werden und die Leseadresse unter Verwendung von Zählern erzeugt wird, um eine Spalte-um-Spalte-
Abtastung mit der Tiefe D vorzusehen, wobei D die Such-"Fenster"-Tiefe ist.
Die Tiefe D wird bestimmt durch die Größe der Bildpunktblöcke, die im aktuellen und vorigen Bild verglichen werden, und durch die vertikale Höhe, über die sie gesucht werden, so daß, falls m die Blockhöhe und q die maximale vertikale Versetzung, über die die Suche erfolgt, ist, sich D = m + 2q ergibt. Für einen 8x8 Bildpunktblock ist m = 8 und kann q z. B. ±7 sein, so daß bei einem Ausführungsbeispiel D = 22 ist.
Dieser abgegebene Bildpunktstrom wird dem Eingang eines Speicherfeldes 4 für das vorhergehende Bild zugeführt, das zu jedem Zeitpunkt einen m χ η-Bereich enthält, mit dem der Block in dem entsprechenden Speicherfeld 2 für das aktuelle Bild verglichen werden soll.
Entsprechende Speicherzellen in dem für das aktuelle Bild vorgesehenen Speicherfeld 2 und in dem für das vorhergehende Bild vorgesehenen Speicherfeld 4 stehen mit Eingängen einer arithmetischen Einheit 5 in Verbindung, die einen Vergleichsvorgang durchführt und dadurch ein Maß für die Ähnlichkeit zwischen den Inhalten der beiden Speicherfelder erzeugt.
Die Speicherfelder 2 und 4 und die arithmetische Einheit 5 werden künftig als 'Prozessor' Pl bezeichnet.
Wie aus Fig. 4 ersichtlich, ist das für das vorhergehende Bild vorgesehene Speicherfeld 4 passenderweise als ein einziges langes FIFO-Register ausgeführt, das 'α (d. h. 8 für einen 8 χ 8 Block) Abschnitte aufweist, wobei jeder Abschnitt aus einem FIFO-Abschnitt 6a mit vorbestimmter Länge und einem SIPO-Abschnitt 6b der Länge η - 1 mit η Anschlüssen besteht, wobei die Abschnitte in Reihe verbunden sind. Die Länge jedes Abschnitts beträgt D, d. h. entspricht der Abtasttiefe, so daß jeder FIFO-Abschnitt 6a die Länge D - η + 1 aufweist; für eine
±7-Bildpunktabtastung und 8 χ 8-Blöcke sind die FIFO-Abschnitte 6a demzufolge 15 Stufen lang. Während die Bildpunktdaten durch das Speicherfeld 4 für ein vorhergehendes Bild in einer Spalte um Spalte-Abtastung getaktet werden, weisen die Bildpunkte, die an jeder Speicherzelle jedes SIPO-Abschnitts 6b des Speicherfelds auftreten, ein m χ n-Fenster auf, das Spalte um Spalte über den entsprechenden im Speicherfeld 2 gehaltenen Block tastet, wie dies in Fig. 5 gezeigt ist.
Jeder Block des aktuellen Bildes muß mit ((2p + 1) χ (2q +1)) versetzten Positionen verglichen werden, wobei ρ und q die maximale horizontale bzw. maximale vertikale Verlagerung bzw. Versetzung bei der Suche darstellen. Falls die horizontale Breite ρ des Suchbereichs größer als m/2 ist, so werden die Suchbereiche der benachbarten Blöcke sich überlappen, so daß, nachdem das Speicherfeld 4 für das vorhergehende Bild alle Suchpositionen für einen Block dargeboten hat, es die erste Suchposition des nächsten durchlaufen hat. Beim Stand der Technik wird dieses Problem dadurch gelöst, daß wiederholt Zugriff auf die Daten des vorhergehenden Bildes ausgeübt wird. Bei einem Ausführungsbeispiel der Erfindung wird dem Problem ausgewichen, indem das für das aktuelle Bild vorgesehene Speicherfeld 2 des Prozessors Pl jeden anderen Block des aktuellen Bildes (Blöcke N, N + 2, N + 4, ...) verriegeln bzw. zwischenspeichern kann und ein zweiter Prozessor P2 vorgesehen wird, der identisch mit dem ersten ist, jedoch so getaktet wird, daß sein Speicherfeld 2 für das aktuelle Bild die dazwischenliegenden Blöcke (N+l, N+3, N+5, ...) verriegelt bzw. zwischenspeichert (es wäre auch alternativ möglich, die beiden Prozessoren zu kombinieren, um 16 χ 8 Blöcke des aktuellen Bildes zu vergleichen; wobei in diesem Fall das Speicherfeld für das vorhergehende Bild einfach zwei Speicherfelder 2 in Reihe aufweisen würde). Für Suchvorgänge mit ρ < m sind zwei Prozessoren ausreichend.
i.93 933
Mit Bezug auf die Fig. 4 und 5 wird nun der Betrieb des für das vorhergehende Bild vorgesehene Speicherfeld 4 beschrieben. Der erste Bildpunkt, der vom für das vorhergehende Bild vorgesehenen Zusammenschieber 3 in das Speicherfeld 4 für das vorhergehende Bild eingegeben werden soll, stellt den Bildpunkt am Punkt A dar. Mit der Zeit wird der Bildpunkt am Punkt B eingegeben, so daß die Spalte C7 des für das vorhergehende Bild vorgesehenen Speicherfeldes 4 gefüllt ist. Wird der Punkt C erreicht, so sind die Spalten Cl bis C7 des Speicherfeldes 4 gefüllt. Während der zwischen Punkt A und Punkt C liegenden Zeitperiode wird das für das aktuelle Bild vorgesehene Speicherfeld 2 mit den aktuellen Bild entsprechenden Bildpunkten des zu bearbeitenden Blocks N gefüllt.
Ist der Punkt D erreicht, so sind die Spalten CO bis C7 des für das vorhergehende Bild vorgesehenen Speicherfeldes 4 gefüllt und die Ausgangsanschlüsse der SIPO-Abschnitte 6b weisen die Bildpunkte für die erste gültige Suchposition (-7, -7) des Blocks N auf.
Nachfolgende Bildpunkte, die vom Punkt D bis zum Punkt E eingegeben werden, entsprechen Suchpositionen (-7, -6), (-7, -5) ... (-7, +7). Die Bildpunkte vom Funkt F bis Punkt G erhalten keine gültigen Ausdrücke für Suchpositionen. Bildpunkte vom Punkt H bis Punkt J entsprechen den Suchpositionen (-6, -7), (-6, -6) ... (-6, +7) und der gesamte Vorgang fährt, wenn alle Suchpositionen für den Block N, d. h. (±7, ±7) abgedeckt bzw. behandelt wurden, zum Punkt K fort. Die Positionen zwischen K und L enthalten keine gültigen Suchausdrücke für eine ±7-Suche.
Wenn beim Punkt L der ersten Suchposition für den Block N + 2 begegnet wird, wird mit der Eingabe der das vorhergehende BiIa betreffenden Bildpunkte in das Speicherfeld 4 des Prozessors fortgefahren. Zu diesem Zeitpunkt wird der Block N + 2 in das für das aktuelle Bild vorgesehene Speicherfeld 2 geladen.
90 854
Da der Block des für das aktuelle Bild vorgesehenen Speicherfeldes 2 nur für 2x8x8 Bildpunkttaktperioden zwischengespeichert wird, erfordert dieses Ausführungsbeispiel (im schlechtesten Fall), daß der Prozessor zwei Vergleiche pro Bildpunkttaktperiode ausführt, und somit, daß das für das vorhergehende Bild voryesehene Speicherfeld 4 und der für das vorhergehende Bild vorgesehene Zusammenschieber 3 die Bildpunktdaten mit dem Doppelten der Bildpunktrate der aktuellen Eingabe durchtaktet, obwohl im allgemeinen einige zusätzliche (Blockmehraufwand) Taktperioden auch verfügbar sein werden.
Für größere Suchen beträgt die Anzahl an erforderlichen Prozessoren 2p/m, so daß eine ±15-Suche für 8x8 Blöcke vier Prozessoren Pl bis P4 erfordert, die jeweils so getaktet sind, daß jeder vierte Block in der Reihe bzw. Zeile zwischengespeichert wird.
Falls die vertikale Suchdistanz q den Wert n/2 überschreitet, so werden dann in gleicher Weise die Suchbereiche der aufeinanderfolgenden Blockreihen überlappen, so daß auf die Daten des vorhergehenden Bildes demzufolge (zumindest) zweimal Zugriff ausgeübt werden muß und diese jeden Prozessor (mindestens) zweimal durchlaufen.
Um dies zu vermeiden, werden, wie aus den Fig. 6 und 7 ersichtlich, bei einem zweiten Ausführungsbeispiel der Erfindung zwei Blockreihen gleichzeitig durch Verdopplung der Anzahl an Prozessoren verarbeitet, indem weitere zwei Prozessoren P3 und P4 (vgl. Fig. 6) vorgesehen werden. In diesem Fall sind die ersten FIFO-Abschnitte 6a der Prozessoren P4 und P2 um η (z. B. 8) Anschlüsse kürzer als die anderen FIFO-Abschnitte, so daß die Bildpunktblöcke in den SIPO-Abschnitten der Prozessoren ?4 und P2 zu irgendeinem bestimmten Zeitpunkt jene in der Reihe bzw. Zeile unter den Blöcken in den SIPO-Abochnitten der Prozessoren Pl und P3
333
sind, wie dies in Fig. 7 gezeigt' ist. Wo zwei Blockreihen zusammen verarbeitet werden, hat die erforderliche Abtasttiefe D den Wert (2p + 2m), da das Suchfenster über zwei aktuelle Blöcke abgetastet wird, so daß die Lenge der FIFO- und SIPO-Abschnitte für eine ±15-Suche über zwei Reihen von 8x8 Blöcken den Wert 2q + 2n = 46 hat und die Länge des FIFO-Abschnitts 2q + η = 38 beträgt. In ähnlicher Weise sind die für das aktuelle Bild vorgesehenen Speicherfelder 2 der Prozessoren Pl und P3 angeordnet (z. B. durch eine 8-Zeilen-Verzögerung), um Blöcke von der Reihe oberhalb jenen zu empfangen, die von den Prozessoren P2 und P4 empfangen werden.
Es ist ersichtlich, daß dieses Ausführungsbeispiel funktionell äquivalent der Ausführung eines Vergleiches über 2n χ 2m (z. B. 16 χ 16) Blöcke ist, und es kann praktisch sein, die Ähnlichkeitsmaße von den vier Prozessoren zu sammeln, um eine 16 χ 16 Block-Ausgangsgröße vorzusehen, indem z. B. ein zusätzlicher Eingang für jede arithmetische Einheit vorgesehen wird, der mit dem Ausgang einer anderen verbunden ist, und die 4-Block-Ausgangsgröße vom letzten Prozessor Pl abgenommen wird, wie dies in Fig. 6 dargestellt ist.
Dies ermöglicht die Auswahl verschiedender Blockformate und ist somit von Wert bei der Schaffung einer integrierten Bewegungsvektor-Schaltung für allgemeine Zwecke.
Bei Verwendung dieses zweiten Ausführungsbeispiels erfordert eine ρ = m/2 (±7)-Suche nur einen Durchgang der Daten des vorhergehenden Bildes durch die Prozessoren, und die Prozessoren können mit Bildpunkttaktrate (typischerweise 6,75 MHz) laufen.
Bei jedem Ausführungsbeispiel sind.größere Suchbereiche möglich, falls mehr Prozessoren verwendet werden; z. B. erfordert eine Suche bis zu ±15 Bildpunkten zweimal so viele Prozessoren.
Die bevorzugte Form dieser Ausführungsbeispiele der Erfindung verwendet FIFO-Abschnitte mit steuerbar variabler Länge, so daß die Abtasttiefe D variiert werden kann (bis zur maximalen •Länge). Besonders bevorzugt sind FIFO-Abschnitte, die bis zu 2q + η Stufen lang schaltbar sind. Es ist deshalb möglich, einen bestimmten Prozessor entweder für eine ±7-Suche oder ±15-3uche durch Variation der FIFO-Abschnittslänge zu konfigurieren.
Für das erste Ausführungsbeispiel ist das weitere Paar von Prozessoren P3, P4 identisch mit den Prozessoren Pl, P2, wobei jedes für das aktuelle Bild vorgesehene Speicherfeld so angeordnet ist, daß es jeden vierten Block mit Daten des aktuellen Bildes zwischenspeichern kann, wobei die FIFO-Abschnitte jedes für das vorhergehende Bild vorgesehenen Speicherfeldes 15 Speicherzellen lang sind.
Für das zweite Ausführungsbeispiel sind für eine ±15-Suche acht Prozessoren Pl bis P8 erforderlich, wobei die FIFO-Abschnitte der für das vorhergehende Bild vorgesehenen Speicherfelder 38 Speicherzellen lang sind, mit Ausnahme der ersten Abschnitte der Prozessoren P2, P4, P6 und P8, die acht Speicherzellen kürzer sind, und sie sind seriell miteinander verbunden, und zwar in der Reihenfolge P8, P7, P6, ... Pl. Die für das aktuelle Bild vorgesehenen Speicherfelder der Prozessoren P2, P4, P6 und P8 sind so verbunden, daß jeder vierte Block von einer Reihe zwischengespeichert werden kann, während die entsprechenden Speicherfelder der Prozessoren Pl, P3, P5 und P7 (z. B. über ein 8-Zeilen-Verzögerungsglied) so verbunden sind, daß jeder vierte Block der darunterliegenden Reihe zwischengespeichert werden kann.
In ähnlicher Weise können größere horizontale Suchbereiche durch Verwendung weiterer Prozessoren realisiert werden (und größere vertikale Bereiche durch Vergrößerung der FIFO-Abschnittslänge und der Anzahl an Prozessoren). Vorzugsweise sind alle identisch, so daß die VLSI-Herstellung vereinfacht
werden kann; jedoch können gewisse Elemente in den Prozessoren (z. B. die Speicherfelder 4 für das vorhergehende Bild), falls gewünscht, für zwei oder mehrere der Prozessoren gemeinsam sein.
Das von der arithmetischen Einheit berechnete Ähnlichkeitsmaß stellt bequemerweise die Summe der absoluten Differenzen (SOAD = Sum Of Absolute Differences) zwischen den Bildpunkten des Speicherfeldes für das vorhergehende Bild und des Speicherfeldes für das aktuelle Bild dar, wie dies in der früheren, veröffentlichen europäischen Anmeldung Nr. 309251 offenbart ist (die hierin durch Bezugnahme aufgenommen ist). Eine schematische Darstellung der Hardware, die für eine VLSI-Realisation dieser Funktion geeignet ist, ist in Fig. 8 dargestellt, in der, wie gezeigt, ein Feld von m χ η Subtrahiergliedern, die jeweils mit einer Speicherzelle des Speicherfeldes 4 für das vorhergehende Bild und des Speicherfeldes 2 für das aktuelle Bild verbunden sind, die absolute Differenz zwischen den Inhalten der Speicherzellen bildet. Sukzessive kaskadierte binäre Addierer al bis a6 akkumulieren alle m χ η Differenzen, um E, die Summe der absoluten Differenzen, für den Block zu berechnen.
Da, wie aus Fig. 9 ersichtlich, die Blöcke sequentiell verarbeitet werden, können die Vektoren sequentiell ausgegeben werden, wobei keine Speicherung der Zwischenergebnisse erforderlich ist; jedoch ist jedem Prozessor ein Speicher 7a für die niedrigste berechnete Summe der absoluten Differenzen sov/ie ein Komparator 7b zum Vergleich jeder neu berechneten Summe övr absoluten Differenzen mit dem gespeicherten Wert zugeordnet, wobei, falls der neue Wert niedriger ist, der Speicher aktualisiert wird; ebenso ist auch ein entsprechender Speicher 8 für die u- und v-Werte, die die Suchposition definieren, an der diese minimale Summe der absoluten Differenzen auftrat, vorgesehen; der gleichfalls aktualisiert wird. Ist die Suche für einen bestimmten Block abgeschlossen,
so stellen diese gespeicherten u- und v-Werte den Bewegungsvektor am Ausgang dar.
.Vorzugsweise wird auch die Nullversatz (d. h. u, ν = 0)-Summe der absoluten Differenzen gespeichert.
Es kann erwünscht sein, dem Nullvektor eine systematische Beurteilungsabweichung zu geben; d. h. ein Nullvektor wird nur dann ausgegeben, falls ein Bereich u, ν eine Summe von Differenzen E(u, v) ergibt, die um einen vorbestimmten Betrag kleiner als der Wert E(O, 0) für den unversetzten Bereich des vorhergehenden Bildes ist, d. h. kleiner als 75 % von E(O, 0). Dies kann durch eine Skalierungseinheit erreicht werden, die normalerweise die vom Proze^or Pl empfangenen Werte ungeändert durchläßt, jedoch für die Position (0, 0) den Wert auf 75 % des Eingangswertos reduziert.
Im allgemeinen ist irgendeine Steuerlogik 9 erforderlich, um den Prozessor nach jeder Blockreihe zurückzusetzen und um die Suchtiefe auszuwählen und das Speicherfeld 2 für das aktuelle Bild zwischenzuspeichern oder zu aktualisieren, und auch deswegen, da abhängig von der Größe bzw. dem Umfang der Suche eine gewisse Anzahl von Positionen vorliegen kann, durch die das Speicherfeld 4 für das vorhergehende Bild verläuft und die zwischen Suchbereiche von sukzessiven Blöcken fallen und keine gültigen Suchausdrücke enthalten; die Steuerlogik "maskiert" diese, um zu verhindern, daß der Prozessor versucht, diese mit eiern aktuellen Block zu vergleichen.
Ein Vorteil der Erfindung besteht darin, daß beim zweiten Ausführungsbeispiel der Erfindung eine vernünftige Anzahl an zusätzlichen Taktzyklen verfügbar sein kann.
In einem Codierer, der 8x8 Blöcke verwendet, die in 2 χ 2 Makroblöcken angeordnet sind, sind z. B. pro Makroblock typischerweise 512 Taktzyklen verfügbar. Eine ±15-Suche bei einer Blockreihe unter Verwendung des zweiten
Ausführungsbeispiels erfordert 17 57 2 Zyklen der verfügbaren 22 528, so daß es pro Reihe deshalb 4 956 übrige Zyklen gibt.
Bei einem Farbvideosignal stellt dies eine ausreichende Zeit dar, um auch die Chrominanz(Farbart)-Blöcke U und V, die einem bestimmten Luminanz(Leuchtdichte)-Block entsprechen, zu verarbeiten, da entweder solche Daten gewöhnlich einer Unterabtastung unterzogen werden oder indem ein kleineres (±7) Suchfenster verwendet wird, daß nur 4 180 Zyklen erfordert.
Mehr Verarbeitung könnte selbstverständlich vorgesehen werden, falls die Taktrate der Prozessoren gegenüber der Bildpunkteingaberate beschleunigt würde.
Der Vorteil, eine Bewegungsabschätzung sowohl im Hinblick auf Luminanz- als auch Chrominanz-Blöcke durchführen zu können, besteht darin, daß der Feldprozessor modifiziert werden kann, um sowohl den versetzten Bereich (u, v) des vorhergehenden Bildes als auch den Versetzungsvektor oder selbst den Voraussagefehlerblock, der durch Subtrahieren des aktuellen Blocks vom versetzten Block gebildet wird, vorzusehen. Die Höhe der vertikalen Spalten in dem für das vorhergehende Bild vorgesehene Speicherfeld müßte vergrößert werden, um die Verzögerung in der arithmetischen Einheit und dem Bewegungsvektorgenerator zu kompensieren. Es würde dann ein weiteres Blockregisterfeld geben, dessen Eingang vorzugsweise der versetzte Bereich von dem für das vorhergehende Bild vorgesehene Speicherfeld ist (es könnte auch der Fehlerblock sein, falls der Prozessor geeignete Subtrahiermittel einschließt) und das vom Bewegungsvektorgenerator aktualisiert wird. Dies beseitigt das Erfordernis, einen separaten, außerhalb des Chip vorgesehenen, Zusammenschieber benutzen zu müssen, um den versetzten Block für den Prädiktor ausgeben zu können.
Die vorstehende Beschreibung hat Probleme ignoriert, die auftreten können, falls der betrachtete Block innerhalb 8
Zeilen oder Bildpunkte der Bildkante liegt; d. h. gewisse Bereiche, die durch x, y, u, ν definiert sind, überlappen die Zeilen- und Feldaustastperioden. Dies wird leicht überwunden, indem solche Bereiche ignoriert werden. Ein Grenzdetektor (ein Teil der Steuerlogik 9) dient dazu, sicherzustellen, daß Suchbereiche, die nicht ganz in das vorhergehende Bild fallen, ignoriert werden, indem diese, wie oben erwähnt, maskiert werden, so daß dadurch für diese Bereiche die minimale Summe der absoluten Differenzen (SOAD) nicht aktualisiert wird.
Obwohl die Erfindung, soweit beschrieben, auf Blocks aufeinanderfolgend längs einer Reihe mit einer Spalte-umSpalte-Abtastung eingewirkt hat, indem verschiedene Zusammenschieber 1 und 3 für das aktuelle Bild und das vorherige Bild vorgesehen werden, wäre es auch möglich, auf Blöcke längs nach unten verlaufender Spalten einzuwirken und eine Zeile-um-Zeile-Abtastung vorzusehen, was jedoch die Codierverzogerung steigern würde und somit unerwünscht wäre.
Claims (9)
- Patentansprüche :Bewegungsdetektor für Videosignale, mit- einer Einrichtung zum Empfang und zur zeitweiligen Speicherung von Signalen, die ein zeilenabgetastetes Bild darstellen, und von Signalen, die ein anderes solches Bild darstellen, und- einer Einrichtung zum Vergleichen jedes einer Vielzahl von Blöcken, in die das eine Bild unterteilt ist, mit dem entsprechenden Bereich und einer Vielzahl von lageverschobenen Bereichen des anderen Bildes, um eine Vektorinformation zu erzeugen, die die Lageverschiebung, falls vorhanden, zwischen der Position des Blocks und der Position desjenigen Bereichs des anderen Bildes anzeigt, der einem Kriterium der Ähnlichkeit zwischen dem Block und den Bereichen genügt,dadurch gekennzeichnet , daß die Vergleichseinrichtung (5, 7a, 7b, 8) sequentiell auf Blöcke einwirkt, die in Reihen bzw. Zeilen angeordnet sind, die mit der Bildzeilenrichtung des einen Bildes ausgerichtet sind, und jeden Block mit der Vielzahl von lageverschobenen Bereichen des anderen Bildes in einer sequentiellen Spalte-um-Spalte-Abtastung eines Teils des anderen Bildes vergleicht oderdaß die Vergleichseinrichtung sequentiell auf Blöcke einwirkt, die in Spalten angeordnet sind, die senkrecht zur Bildzeilenrichtung des einen Bildes ausgerichtet sind, und jeden Block mit der Vielzahl von lageverschobenen Bereichen des anderen Bildes in einer sequentiellen Zeileum-Zeile-Abtastung eines Teils des anderen Bildes vergleicht.θ-
- 2. Detektor nach Anspruch 1,dadurch gekennzeichnet , daß die Empfangs- und Speichereinrichtung aufweist: (i) eine erste Bildspeichereinrichtung, die für eine Periode, die einem gewünschten Suchausmaß in Zeilenrichtung des Bildes entspricht, eine Gruppe von Bildpunkten gleichzeitig verfügbar macht, die einem Block des einen Bildes entsprechen, wobei sukzessive Gruppen in einer Folge solcher Gruppen jeweiligen nicht überlappenden Blöcken entsprechen; und (ii) eine zweite Bildspeichereinrichtung, die eine Gruppe von Bildpunkten gleichzeitig verfügbar macht, die einem Bereich des anderen Bildes entsprechen, der die gleiche Größe wie der Block aufweist, wobei sukzessive Gruppen in einer Folge solcher Gruppen Bereichen entsprechen, die fortschreitend in Richtung längs einer Spalte der Zeilen des Bildes nach unten verschoben sind, und wobei solche sukzessiven Folgen Bereichen entsprechen, die fortschreitend längs den Zeilen verschoben sind;und daß die Vergleichseinrichtung eine arithmetische Einheit zum Berechnen der Summe der Absolutbeträge oder einer anderen monoton steigenden geraden Funktion der Differenzen zwischen den Bildpunkten, die für einen Block verfügbar gemacht wurden, und den Bildpunkten, die für einen Bereich verfügbar gemacht wurden, sowie eine Einrichtung aufweist, die für jeden Block die Vektorinformation bestimmt, die dem °ereich entspricht, dessen Summe dem Kriterium genügt.
- 3. Detektor nach Anspruch 2,dadurch gekennzeichnet , daß die zweite Bildspeichereinrichtung ein FIFO-Speicherfeld aufweist, das m Abschnitte einschließt, wobei m die Breite eines Blocks längs der Zeilenrichtung darstellt und jeder solche Abschnitt eine SIPO-Stufec263 93349-aufweist, die η Anschlüsse hat, wobei η die Tiefe eines Blocks längs einer Spalte von solchen Linien darstellt, und daß die SIPO-Stufen durch FIFO-Stufen getrennt sind und die Länge jedes Abschnitts D entspricht, wobei D das Ausmaß der Spalte-um-Spalte-Abtastung ist.. Detektor nach Anspruch 3 ,dadurch gekennzeichnet , daß die Länge der FIFO-Stufen 2q + 1 ist, wobei ±q die maximale vertikale Lageverschiebung des am meisten verschobenen Bereichs des anderen Bildes ist, mit dem jeder Block zu vergleichen ist.. Detektor nach Anspruch 3,dadurch gekennzeichnet ,- daß die vertikal benachbarten Blöcke eine Vielzahl A von horizontalen Reihen bzw. Zeilen parallel verarbeitet werden, wobei ±q die maximale vertikale Lageverschiebung des am meisten versetzten Bereichs des anderen Bildr.^ ist, mit dem jeder Block zu vergleichen ist,- daß A arithmetische Einrichtungen vorgesehen sind,- daß jede mit einer ersten Verzögerungs- und Speichereinrichtung so verbunden ist, daß jede Blöcke einer unterschiedlichen Zeile des einen Bildes verarbeitet;- daß jede mit einer zweiten Verzögerungseinrichtung verbunden ist, die eine FIFO-Stufe mit einer solchen Länge einschließt, daß die Bereiche des anderen Bildes, die jede arithmetische Einrichtung zu einer bestimmten Zeit vergleicht, vertikal voneinander um η Zeilen versetzt sind und- daß die Längen der anderen FIFO-Stufen der zweiten Verzögerungseinrichtung 2q + (A - 1) η betragen.
- 6. Detektor nach Anspruch 2,dadurch gekennzeichnet ,- λο-daß die zweite Verzögerungseinrichtung gleichzeitig angeordnet ist, um zusätzliche Folgen verfügbar zu machen, die Bereichen (oder Blöcken) entsprechen, die um sukzessive Vielfache von η Zeilen relativ zur ersterwähnten Folge verschoben sind, um so Bereichen (oder Blöcken) zu entsprechen, die vertikal benachbart der ersten Folge sind, und- daß die Vergleichseinrichtung zusätzliche arithmetische Einrichtungen zum Bearbeiten der zusätzlichen Folge (n) einschließt.
- 7. Detektor nach einem der Ansprüche 3 bis 6, dadurch gekennzeichnet , daß die Länge der FIFO-Stufen steuerbar variabel ist.
- 8. Detektor nach eine.ii der Ansprüche 2 bis 6, dadurch gekennzeichnet , daß das gewünschte Suchausmaß in Zeilenrichtung größer als die Hälfte des Ausmaßes eines Blocks in dieser Richtung ist,daß die Verzögerungs- und Speichereinrichtung gleichzeitig vorgesehen ist, um eine Vielzahl B (wobei B die niedrigste ganze Zahl ist, die größer als 2p/m ist) von verschiedenen Folgen auszubilden, die Gruppen von Bildpunkten enthalten, die jedem B-ten-Block in Zeilenricntung entsprechen und daß die arithmetische Einrichtung eine Vielzahl B von Anordnungen zum Ausbilden der Summen für die jeweiligen Folgen einschließt.
- 9. Detektor nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet , daß eine Speichereinrichtung vorgesehen ist, die für einen Block entweder den Bereich des anderen Bildes, zu dem dieser die größte Ähnlichkeit aufweist, oder den Blockvoraussagefehler zwischen dem Block und dem Bereich speichert und ausgibt.
- 10. Detektor nach Anspruch 9,dadurch gekennzeichnet , daß Luminanz- und Chrominanzblöcke eines Farbbildsignals empfangen und verarbeitet werden können.
- 11. Detektor nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet , daß das Kriterium durch einen Bereich erfüllt ist, für den ein Vergleichswert, der im Falle des unverschobenen Bereichs einem vorbestimmten Verhältnis der Summe und der im Falle der anderen Bereiche der Summe entspricht, geringer als der Vergleichswert für alle anderen mit dem Block verglichenen Bereiche ist.12- Detektor nach Anspruch 1,dadurch gekennzeichnet , daß eine Vielzahl von Prozessoren (Pl bis P8) vorgesehen ist, die jeweils aufweisen:(i) eine erste Bildspeichereinrichtung, die für eine Zeitperiode, die dem gewünschten Suchausmaß in Zeilenrichtung des Bildes entspricht, eine Gruppe von Bildpunkten gleichzeitig verfügbar macht, die einem Block des einen Bildes entsprechen, wobei sukzessive Gruppen in einer Folge solcher Gruppen jeweiligen nicht überlappenden Blöcken entsprechen;(ii) eine zweite Bildspeichereinrichtung, die eine Gruppe von Bildpunkten gleichzeitig verfügbar macht, die einem Bereich des anderen Bildes, der die gleiche Größe wie der Block aufweist, entsprechen, wobei sukzessive Gruppen in einer Folge solcher Gruppen Bereichen entsprechen, die in einer Spalte der Zeilenzn11-des Bildes nach unten fortschreitend verschoben sind und wobei solche sukzessive Folgen Bereichen entsprechen, die längs der Zeilen fortschreitend verschoben sind, und
(iii)eine arithmetische Einrichtung zum Ausbilden der Summe der Betragswerte oder einer anderen monoton ansteigenden geraden Funktion der Differenzen zwischen den Bildpunkten, die für einen Block verfügbar sind und den Bildpunkten, die für einen Bereich verfügbar sind, und eine Einrichtung, die für jeden Block die Vektorinformation ermittelt, die dem Bereich entspricht, dessen Summe dem Kriterium genügt,wobei die ersten und zweiten Bildspeichereinrichtungen von einigen Prozessoren so konfigurierbar sind, daß Blöcke in vertikal benachbarten Zeilen gleichzeitig bearbeitet werden können, und die arithmetischen Einrichtungen der Prozessoren verbindbar sind, und wobei Mittel zum Berechnen der Summe der Differenzfunktionssummen für jeden Prozessor vorgesehen sind, wodurch der Bewegungsdetektor so konfigurierbar ist, daß zusammengesetzte Blöcke, die eine Vielzahl von benachbarten Blöcken enthalten, verglichen werden können.Hier2M £ Seilen
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB898909498A GB8909498D0 (en) | 1989-04-26 | 1989-04-26 | Motion estimator |
Publications (1)
Publication Number | Publication Date |
---|---|
DD293933A5 true DD293933A5 (de) | 1991-09-12 |
Family
ID=10655732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DD90340098A DD293933A5 (de) | 1989-04-26 | 1990-04-25 | Bewegungsabschaetzeinrichtung |
Country Status (15)
Country | Link |
---|---|
US (1) | US5206723A (de) |
EP (1) | EP0395293B1 (de) |
JP (1) | JP2839950B2 (de) |
KR (1) | KR100203913B1 (de) |
AT (1) | ATE167773T1 (de) |
AU (1) | AU626120B2 (de) |
CA (1) | CA2053241C (de) |
DD (1) | DD293933A5 (de) |
DE (1) | DE69032437T2 (de) |
DK (1) | DK0395293T3 (de) |
ES (1) | ES2118713T3 (de) |
GB (1) | GB8909498D0 (de) |
HK (1) | HK1014434A1 (de) |
SG (1) | SG43206A1 (de) |
WO (1) | WO1990013205A1 (de) |
Families Citing this family (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5379351A (en) * | 1992-02-19 | 1995-01-03 | Integrated Information Technology, Inc. | Video compression/decompression processing and processors |
JP2569219B2 (ja) * | 1990-01-31 | 1997-01-08 | 富士通株式会社 | 動画像予測方式 |
JP3004697B2 (ja) * | 1990-08-27 | 2000-01-31 | 沖電気工業株式会社 | 動きベクトル検出回路 |
JPH04207788A (ja) * | 1990-11-30 | 1992-07-29 | Sony Corp | 画像信号符号化装置及び方法 |
US5138447A (en) * | 1991-02-11 | 1992-08-11 | General Instrument Corporation | Method and apparatus for communicating compressed digital video signals using multiple processors |
EP0520765B1 (de) * | 1991-06-25 | 1999-05-12 | Canon Kabushiki Kaisha | Verfahren und Vorrichtung zur Detektion eines Bewegungsvektors sowie Kodierungsverfahren und Vorrichtung zur Anwendung eines solchen Verfahrens und Vorrichtung |
US5594813A (en) * | 1992-02-19 | 1997-01-14 | Integrated Information Technology, Inc. | Programmable architecture and methods for motion estimation |
US5430886A (en) * | 1992-06-15 | 1995-07-04 | Furtek; Frederick C. | Method and apparatus for motion estimation |
DE4322343C2 (de) * | 1992-07-06 | 1996-10-02 | Mitsubishi Electric Corp | Mittel zum Erfassen eines Bewegungsvektors und Verfahren zum Bestimmen eines Bewegungsvektors |
KR0160618B1 (ko) * | 1992-10-27 | 1999-01-15 | 윤종용 | 실시간 움직임 추정장치 및 그 방법 |
US5485214A (en) * | 1993-02-25 | 1996-01-16 | Industrial Technology Research Institute | Dual bus dual bank architecture for motion compensation |
CA2091538A1 (en) * | 1993-03-11 | 1994-09-12 | Jan Fandrianto | Programmable architecture and methods for motion estimation |
JP3163837B2 (ja) * | 1993-04-16 | 2001-05-08 | ソニー株式会社 | ディジタルビデオ信号の符号化装置 |
KR950014343B1 (ko) * | 1993-05-20 | 1995-11-24 | 한국방송공사 | 고화질 티브(hdtv)의 화상데이타 움직임 추정방법 및 그 장치 |
US5793428A (en) * | 1993-06-16 | 1998-08-11 | Intel Corporation | Self-encoded deltas for digital video data transmission |
US5477272A (en) * | 1993-07-22 | 1995-12-19 | Gte Laboratories Incorporated | Variable-block size multi-resolution motion estimation scheme for pyramid coding |
DE69422180T2 (de) * | 1993-07-30 | 2000-06-29 | British Telecomm | Bilddatenverarbeitung |
WO1995004433A1 (en) * | 1993-07-30 | 1995-02-09 | British Telecommunications Public Limited Company | Processing image data |
US5396284A (en) * | 1993-08-20 | 1995-03-07 | Burle Technologies, Inc. | Motion detection system |
US5495292A (en) * | 1993-09-03 | 1996-02-27 | Gte Laboratories Incorporated | Inter-frame wavelet transform coder for color video compression |
WO1995009404A1 (de) * | 1993-09-30 | 1995-04-06 | Siemens Aktiengesellschaft | Prozessor zum vergleich von bildpunkt-blöcken (block-matching-prozessor) |
US5929913A (en) * | 1993-10-28 | 1999-07-27 | Matsushita Electrical Industrial Co., Ltd | Motion vector detector and video coder |
DE4344924A1 (de) * | 1993-12-30 | 1995-08-10 | Thomson Brandt Gmbh | Verfahren und Vorrichtung zur Bewegungsschätzung |
FR2719398B1 (fr) * | 1994-04-27 | 1996-07-19 | Sgs Thomson Microelectronics | Dispositif et procédé d'adressage d'une mémoire cache d'un circuit de compression d'images mobiles. |
US5734874A (en) * | 1994-04-29 | 1998-03-31 | Sun Microsystems, Inc. | Central processing unit with integrated graphics functions |
US5563813A (en) * | 1994-06-01 | 1996-10-08 | Industrial Technology Research Institute | Area/time-efficient motion estimation micro core |
KR100349883B1 (ko) * | 1994-07-27 | 2002-12-16 | 소니 가부시끼 가이샤 | 동작벡터검출및화상신호부호화방법및장치 |
FR2723796B1 (fr) * | 1994-08-19 | 1996-11-29 | Thomson Consumer Electronics | Dispositif d'estimation de mouvement |
US5668609A (en) * | 1994-09-08 | 1997-09-16 | Tektronix, Inc. | Motion detector and key signal interpolator using same |
US5644361A (en) * | 1994-11-30 | 1997-07-01 | National Semiconductor Corporation | Subsampled frame storage technique for reduced memory size |
US5627601A (en) * | 1994-11-30 | 1997-05-06 | National Semiconductor Corporation | Motion estimation with bit rate criterion |
GB2301971B (en) * | 1995-06-06 | 1999-10-06 | Sony Uk Ltd | Video compression |
US5825929A (en) * | 1995-10-05 | 1998-10-20 | Microsoft Corporation | Transformation block optimization method |
SE504758C2 (sv) * | 1995-12-21 | 1997-04-21 | Siemens Elema Ab | Apparatpanel |
US5787203A (en) * | 1996-01-19 | 1998-07-28 | Microsoft Corporation | Method and system for filtering compressed video images |
US5799113A (en) * | 1996-01-19 | 1998-08-25 | Microsoft Corporation | Method for expanding contracted video images |
US5764814A (en) * | 1996-03-22 | 1998-06-09 | Microsoft Corporation | Representation and encoding of general arbitrary shapes |
US5778098A (en) * | 1996-03-22 | 1998-07-07 | Microsoft Corporation | Sprite coding |
US5982438A (en) * | 1996-03-22 | 1999-11-09 | Microsoft Corporation | Overlapped motion compensation for object coding |
KR100202565B1 (ko) * | 1996-03-23 | 1999-06-15 | 구자홍 | 복합영상신호의 3차원 휘도/색신호 분리 장치 |
JPH1091795A (ja) * | 1996-09-12 | 1998-04-10 | Toshiba Corp | 移動物体検出装置及び移動物体検出方法 |
US6075875A (en) * | 1996-09-30 | 2000-06-13 | Microsoft Corporation | Segmentation of image features using hierarchical analysis of multi-valued image data and weighted averaging of segmentation results |
US5748789A (en) * | 1996-10-31 | 1998-05-05 | Microsoft Corporation | Transparent block skipping in object-based video coding systems |
US5784108A (en) * | 1996-12-03 | 1998-07-21 | Zapex Technologies (Israel) Ltd. | Apparatus for and method of reducing the memory bandwidth requirements of a systolic array |
US5984514A (en) * | 1996-12-20 | 1999-11-16 | Analog Devices, Inc. | Method and apparatus for using minimal and optimal amount of SRAM delay line storage in the calculation of an X Y separable mallat wavelet transform |
US5838377A (en) * | 1996-12-20 | 1998-11-17 | Analog Devices, Inc. | Video compressed circuit using recursive wavelet filtering |
ES2138545B1 (es) * | 1997-11-04 | 2000-08-16 | Univ Castilla La Mancha | Sistema de computacion para la realizacion de acumulacion espacio-temporal de activacion en señales digitales. |
US6400831B2 (en) | 1998-04-02 | 2002-06-04 | Microsoft Corporation | Semantic video object segmentation and tracking |
KR100457065B1 (ko) * | 1998-12-29 | 2005-05-19 | 주식회사 대우일렉트로닉스 | 비디오신호의움직임벡터생성장치 |
US20030103567A1 (en) * | 2001-12-03 | 2003-06-05 | Riemens Abraham Karel | Motion compensation and/or estimation |
EP1370086B1 (de) | 2002-06-07 | 2006-10-11 | STMicroelectronics S.r.l. | Programmierbares Bewegungsvektoren-Generationssystem |
FR2906054B1 (fr) * | 2006-09-19 | 2009-02-27 | Thales Sa | Procede d'enregistrement d'un flux de donnees graphiques notamment pour des apllications informatiques |
WO2019000443A1 (zh) * | 2017-06-30 | 2019-01-03 | 华为技术有限公司 | 一种帧间预测的方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5752281A (en) * | 1980-09-12 | 1982-03-27 | Nec Corp | Forecast encoding device of picture signal |
EP0062655B1 (de) * | 1980-10-22 | 1986-10-15 | The Commonwealth Of Australia | Aufspürvorrichtung von videobewegungen |
FR2597283B1 (fr) * | 1986-04-15 | 1988-06-10 | Labo Electronique Physique | Dispositif de traitement d'images pour l'estimation du deplacement d'objets situes dans celles-ci |
JPS63244985A (ja) * | 1987-03-30 | 1988-10-12 | Mitsubishi Electric Corp | 動き補償フレ−ム間符号化装置 |
GB8722612D0 (en) * | 1987-09-25 | 1987-11-04 | British Telecomm | Motion estimator |
DE3811535A1 (de) * | 1988-04-06 | 1989-10-19 | Philips Patentverwaltung | Hybrid-codierer fuer videosignale |
-
1989
- 1989-04-26 GB GB898909498A patent/GB8909498D0/en active Pending
-
1990
- 1990-04-18 WO PCT/GB1990/000581 patent/WO1990013205A1/en active Application Filing
- 1990-04-18 EP EP90304166A patent/EP0395293B1/de not_active Expired - Lifetime
- 1990-04-18 DK DK90304166T patent/DK0395293T3/da active
- 1990-04-18 ES ES90304166T patent/ES2118713T3/es not_active Expired - Lifetime
- 1990-04-18 DE DE69032437T patent/DE69032437T2/de not_active Expired - Fee Related
- 1990-04-18 US US07/778,802 patent/US5206723A/en not_active Expired - Lifetime
- 1990-04-18 AU AU54223/90A patent/AU626120B2/en not_active Ceased
- 1990-04-18 KR KR1019910701472A patent/KR100203913B1/ko not_active IP Right Cessation
- 1990-04-18 JP JP2506027A patent/JP2839950B2/ja not_active Expired - Fee Related
- 1990-04-18 CA CA002053241A patent/CA2053241C/en not_active Expired - Lifetime
- 1990-04-18 SG SG1996005514A patent/SG43206A1/en unknown
- 1990-04-18 AT AT90304166T patent/ATE167773T1/de active
- 1990-04-25 DD DD90340098A patent/DD293933A5/de not_active IP Right Cessation
-
1998
- 1998-12-24 HK HK98115735A patent/HK1014434A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
HK1014434A1 (en) | 1999-09-24 |
CA2053241A1 (en) | 1990-10-27 |
JP2839950B2 (ja) | 1998-12-24 |
ES2118713T3 (es) | 1998-10-01 |
DE69032437D1 (de) | 1998-07-30 |
CA2053241C (en) | 1998-11-10 |
EP0395293A1 (de) | 1990-10-31 |
DK0395293T3 (da) | 1999-04-06 |
EP0395293B1 (de) | 1998-06-24 |
DE69032437T2 (de) | 1998-12-10 |
US5206723A (en) | 1993-04-27 |
JPH04506889A (ja) | 1992-11-26 |
AU626120B2 (en) | 1992-07-23 |
GB8909498D0 (en) | 1989-06-14 |
KR100203913B1 (ko) | 1999-06-15 |
ATE167773T1 (de) | 1998-07-15 |
KR920702156A (ko) | 1992-08-12 |
AU5422390A (en) | 1990-11-16 |
SG43206A1 (en) | 1997-10-17 |
WO1990013205A1 (en) | 1990-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DD293933A5 (de) | Bewegungsabschaetzeinrichtung | |
DE4322343C2 (de) | Mittel zum Erfassen eines Bewegungsvektors und Verfahren zum Bestimmen eines Bewegungsvektors | |
EP0232417B1 (de) | Verfahren zur korrektur von übertragungsfehlern | |
DE69812882T2 (de) | Verfahren zur bewegungskompensierten Mehrhalbbildverbesserung von Videostandbildern | |
DE69634962T2 (de) | Extrapolation von Pixelwerten eines in einem Block enthaltenen Videoobjektes | |
DE60014444T2 (de) | Verfahren und vorrichtung zur bewegungsschätzung unter verwendung von nachbarmacroblöcken | |
EP0608231B1 (de) | Verfahren zur bildsignalcodierung | |
DE2640140C2 (de) | Verfahren und Anordnung zur redundanzvermindernden Bildcodierung | |
DE60122993T2 (de) | Bilddatenausgabevorrichtung und Empfangsvorrichtung | |
DE19739266A1 (de) | Verfahren und Vorrichtung zum Kodieren binärer Formen | |
EP0897247A2 (de) | Verfahren zur Berechnung von Bewegungsvektoren | |
EP0732670B1 (de) | Verfahren und Schaltungsanordnung zur Unterabtastung bei Bewegungsschätzung | |
DE3545106C2 (de) | ||
EP1110407B1 (de) | Verfahren und anordnung zur codierung und decodierung eines digitalisierten bildes mit anwendung eines gesamtbewegungsvektors | |
DE69636139T2 (de) | Hierarchische Kodierungs- Dekodierungs-Vorrictung mit Speichervorrichtung für ein digitales Bildsignal | |
EP0336510B1 (de) | Prädiktiver Standbildcodierer | |
DE19951341B4 (de) | Verfahren zur bewegungskompensierenden Prädiktion von Bewegtbildern sowie Einrichtung hierzu | |
DE19548452C1 (de) | Verfahren zur rechnergestützten Bewegungsschätzung für Bildpunkte zeitlich aufeinander folgender Bilder einer Videosequenz | |
DE3726601C2 (de) | ||
EP0346750B1 (de) | Anordnung zur DPCM-Codierung mit hoher Datenrate | |
EP0579651A1 (de) | Verfahren zur codierung. | |
DE19744134A1 (de) | Verfahren zur Bestimmung von Blockvektoren für die Bewegungsschätzung | |
DE3733038A1 (de) | Verfahren und schaltungsanordnung zur bilddatenreduktion fuer digitale fernsehsignale | |
EP0802679A2 (de) | Verfahren zu Bildsegmentierung | |
EP0990992A2 (de) | Diskreter/invers-diskreter Cosinus-Transformationsvorrichtung und Anordnung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENJ | Ceased due to non-payment of renewal fee |