DE10120140A1 - Verfahren zum Zugriff auf Suchbilddaten bei der Bewegungsschätzung - Google Patents
Verfahren zum Zugriff auf Suchbilddaten bei der BewegungsschätzungInfo
- Publication number
- DE10120140A1 DE10120140A1 DE10120140A DE10120140A DE10120140A1 DE 10120140 A1 DE10120140 A1 DE 10120140A1 DE 10120140 A DE10120140 A DE 10120140A DE 10120140 A DE10120140 A DE 10120140A DE 10120140 A1 DE10120140 A1 DE 10120140A1
- Authority
- DE
- Germany
- Prior art keywords
- image
- search
- data
- image pixel
- permutation
- 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.)
- Granted
Links
Classifications
-
- 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/238—Analysis of motion using block-matching using non-full search, e.g. three-step search
-
- 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
Ein Verfahren zum Zugriff auf Suchbilddaten bei der Bewegungsschätzung mit dem Blockmatching-Verfahren, um DOLLAR A - Referenzbildblöcke (R) eines aktuellen Bildes mit Kandidatenbildblöcken eines Suchbildes innerhalb eines Suchbereiches (S) miteinander zu vergleichen und ein Ähnlichkeitsmaß zwischen den Bildpixeln der Bildblöcke zu berechnen, und DOLLAR A - für jeden Referenzbildblock (R) einen Bewegungsvektor für die Verschiebung eines Referenzbildblocks (R) relativ zu einem Kandidatenbildblock, bei dem das Ähnlichkeitsmaß (SAD) am geringsten ist, zu bestimmen, DOLLAR A hat die Schritte DOLLAR A - Abspeichern der Suchbilddaten eines Suchbereichs (S) in drei voneinander unabhängigen Speicherblöcken (MEM1, MEM2, MEM3), wobei eine ganzzahlige Anzahl (a) von im Suchbild nebeneinander angeordneten Bildpixeln eine Bildpixelgruppe (G) bilden und die im Suchbild nebeneinander angeordneten Bildpixelgruppen (G) alternierend in den drei Speicherblöcken (MEM1, MEM2, MEM3) abgelegt werden, DOLLAR A - paralleles Auslesen von drei Bildpixelgruppen (G) aus den drei Speicherblöcken (MEM1, MEM2, MEM3), DOLLAR A - Permutation der ausgelesenen Bildpixelpruppen (G) derart, dass die Bildpixeldaten der Bildpixelgruppen (G) in der Reihenfolge entsprechend der Anordnung in dem Suchbild als Permutationsdatensektor (P) eines Kandidatenbildblocks auf einem parallelen Datenbus anliegen.
Description
Die Erfindung betrifft ein Verfahren zum Zugriff auf Suchbilddaten bei der Bewe
gungsschätzung mit dem Blockmatching-Verfahren, um
- - Referenzbildblöcke eines aktuellen Bildes mit Kandidatenbildblöcken eines Suchbildes innerhalb eines Suchbereichs miteinander zu vergleichen und ein Ähnlichkeitsmaß zwischen den Bildpixeln der Bildblöcke zu berechnen, und
- - für jeden Referenzbildblock einen Bewegungsvektor für die Verschiebung eines Referenzbildblocks relativ zu einem Kandidatenbildblock, bei dem das Ähnlichkeitsmaß am geringsten ist, zu bestimmen.
Zur Datenkompression von Bildsequenzen wird die Ähnlichkeit aufeinanderfol
gender Bilder ausgenutzt, indem von Bild zu Bild nur die Unterschiede zwischen
den Bildsequenzen übertragen werden. Hierzu wird die Bewegung von Objekten,
z. B. nach dem Blockmatching-Verfahren, geschätzt. Da es relativ aufwendig ist,
beliebige Objekte in den Bildern zu identifizieren und deren Bewegungen zu messen,
wird im Blockmatching-Verfahren ein aktuelles Bild in Referenzbildblöcke
aufgeteilt und ein Referenzbildblock innerhalb eines Suchbereichs mit einer ge
wissen Schrittweite von Suchposition zu Suchposition verschoben und mit einem
vorhergehenden oder nachfolgenden Suchbild verglichen. Die Verschiebung, bei
der die größte Ähnlichkeit festgestellt wurde, wird als gesuchte Bewegung inter
pretiert. Die x- und y-Komponente der Verschiebung wird an einen Empfänger
übersandt, dem dadurch mitgeteilt wird, welchen Bildblock er zu dem übertrage
nen Differenzblock addieren muß, um ein bewegungskompensiertes Bild zu erhal
ten.
Das Blockmatching-Verfahren ist zum Beispiel in S. Hartwig W. Endemann, Digi
tale Bildkodierung - Bewegungskompensierte Interframe-DPCM in: Fernseh- und
Kinotechnik, 46. Jahrgang Nr. 6/1992, Seiten 416 bis 424 detailliert erläutert.
In Jürgen Buck - Komprimierte Bewegung in: mc, April 1994, Seiten 114 bis
123 ist die Anwendung des Blockmatching-Verfahrens zur Bildkomprimierung
nach dem MPEG-Standard "Coding of Moving Picture and associated Audio for
Digital Storage Media" ISO/IEC DIS 11172 Beuth-Verlag, Berlin, beschrieben.
Hierbei wird ein MPEG-Coder vorgestellt, der einen Baustein zur Bewegungs
schätzung aufweist. Zur Verarbeitung eines Bildes sind mehrere Prozessoren vor
gesehen, die jeweils einen horizontalen Streifen des Bildes verarbeiten. Diese
Aufteilung des Bildes in sich überlappende Streifen erfolgt zur Bewältigung des
zur Bewegungsschätzung erforderlichen hohen Rechenaufwandes.
Ein entsprechendes Blockmatching-Verfahren ist auch in der DE-PS 40 23 449 C2
offenbart.
Die rechenaufwendige Verarbeitung von Bilddaten erfolgt bei der Codierung in
Echtzeit. Problematisch ist hierbei die Zeit für den Speicherzugriff und die Adres
sierung, insbesondere beim Wechsel eines Suchbereiches und beim Berechnen
eines Ähnlichkeitsmaßes für einen Referenzbildblock.
Von SGS-Thomson ist ein Prozessor zur Durchführung des Blockmatching-
Verfahrens bekannt, der unter der Bezeichnung Sti3220 vertrieben wird. Zur Ver
ringerung der Speicherzugriffe werden in diesem Prozessor die Bilddaten eines
Suchbereiches in einen Pipeline-Speicher geladen und abgearbeitet. Bei einer
Verschiebung des Suchbereichs derart, dass sich der vorhergehende und der
neue Suchbereich überlappen, werden nur die nicht überlappenden neuen Bildda
ten des neuen Suchbereichs in den Pipeline-Speicher nachgeladen. Dabei fallen
die am Anfang des Pipeline-Speichers anliegenden nicht überlappenden Bilddaten
des alten Suchbereiches aus dem Pipeline-Speicher heraus. Auf diese Weise kön
nen die Bilddaten kontinuierlich nachgeladen werden. Das Problem bei diesem
Verfahren ist jedoch, dass die Verschiebung des Suchbereichs nicht immer konti
nuierlich in eine Richtung erfolgt. Zudem erfordert der Vergleich eines Referenz
bildblockes mit einem geladenen Suchbereich einen mehrfachen Zugriff auf die in
dem Pipeline-Speicher abgelegten Bilddaten.
Aus Norbert Huth, Rennstrecke für Bildschirmpixel, Elektronik 26/1992, Seiten
32 bis 38, ist weiterhin zur Beschleunigung des Speicherzugriffs bei der Bild
datenverarbeitung bekannt, das sogenannte Mapping, d. h. die Zuordnung der
Daten auf bestimmte physikalische Bereiche der Speicherbausteine so zu opti
mieren, dass aufeinanderfolgende Datenzugriffe innerhalb einer Page eines
DRAM-Speichers ausgeführt werden.
Aufgabe der Erfindung war es, ein verbessertes Verfahren zum Zugriff auf Such
bilddaten bei der Bewegungsschätzung mit dem Blockmatching-Verfahren zu
schaffen.
Die Aufgabe wird erfindungsgemäß durch das Verfahren mit dem Merkmalen des
Patentanspruchs 1 gelöst durch:
- - Abspeichern der Suchbilddaten eines Suchbereichs in drei voneinander un abhängige Speicherblöcke, wobei eine ganzzahlige Anzahl von im Suchbild nebeneinander angeordneten Bildpixeln eine Bildpixelgruppe bilden und die im Suchbild nebeneinander angeordneten Bildpixelgruppen alternierend in den drei Speicherblöcken abgelegt werden,
- - paralleles Auslesen von drei Bildpixelgruppen aus den drei Speicherblöc ken,
- - Permutation der ausgelesenen Bildpixelgruppen derart, dass die Bildpixel daten der Bildpixelgruppen in der Reihenfolge entsprechend der Anordnung im Suchbild als Permutationsdatenvektor eines Kandidatenbildblocks auf einem parallelen Datenblock anliegen.
Durch die Untersuchung einer Vielzahl von Blockmatching-Verfahren mit unter
schiedlich großen Referenzbildblöcken, Suchbereichen und Suchstrategien wurde
gefunden, dass die Suchbilddaten eines Suchbereichs optimalerweise in drei
voneinander unabhängige Speicherblöcke abgespeichert werden. Die Abspeiche
rung erfolgt dann derart, dass die im Suchbild nebeneinander angeordneten Bild
pixel zu Bildpixelgruppen zusammengefasst und alternierend in den Speicherblöc
ken abgelegt werden. Auf diese Bildpixelgruppen kann dann parallel zugegriffen
werden. Der Vergleich eines Referenzbildblocks mit einem Kandidatenbildblock
eines Suchbildes erfolgt dann für Bilddatenvektoren, die sämtliche Bildpixel der
drei ausgelesenen Bildpixelgruppen oder einen Teil davon umfassen. Die drei par
allel ausgelesenen Bildpixelgruppen bilden somit ein Fenster, dass jeweils be
trachtet wird. Für den Vergleich eines Referenzbildblockes wird dieses Fenster
dann nacheinander über den jeweils zu vergleichenden Ausschnitt des Suchbildes
verschoben. Hierbei erfolgt eine Permutation der ausgelesenen Bildpixelgruppen
derart, dass die Bildpixeldaten der Bildpixelgruppen in der korrekten Reihenfolge
entsprechend der Anordnung in dem Suchbild auf einem parallelen Datenbus an
liegen. Die Permutation ist erforderlich, da nicht immer die Bilddaten in den drei
Speicherblöcken in der tatsächlichen Bildfolge abgelegt sind. Vielmehr werden
bei einer Verschiebung des Suchbereichs, wobei sich der vorhergehende und der
neue Suchbereich überlappen, die Bilddaten des nicht überlappenden neuen
Suchbereichs in den Speicherbereich der Speicherblöcke nachgeladen, in denen
die Bilddaten des nicht überlappenden alten Suchbereichs abgelegt sind. Es er
folgt also keine vollständige neue Nachladung der Bilddaten eines neuen Suchbe
reichs. Vielmehr werden nur die Teile des neuen Bildbereichs nachgeladen, die
noch nicht in den drei Speicherblöcken abgelegt sind.
Wenn ein Suchbereich verschoben und neue Bilddaten nachgeladen wurden, wird
das Steuersignal für die Permutation entsprechend angepaßt und für den Zugriff
auf die Suchbilddaten des entsprechenden Suchbildes konstant gehalten.
Im Unterschied zu der Erfindung wurden herkömmlicherweise beim systemati
schen Entwurf von Blockmatching-Schaltungen ein vierdimensionaler Depen
dence-Graph auf einen eindimensionalen oder zweidimensionalen Signalfluss
graph unter Vorgabe einer Projektion und eines Schedule-Vektors nach S. Y.
Kung, VLSI Array Processors, May 1990 abgebildet und hiervon ausgehend eine
Vielzahl von Schaltungen realisiert, die einen unterschiedlichen Grad an Paralleli
tät für unterschiedliche Datenraten aufweisen und in der Regel nur einen Algo
rithmus abarbeiten können.
Mit dem erfindungsgemäßen Verfahren können hingegen verschiedene Suchstra
tegien durchgeführt werden, so dass die Auswahl der Suchstrategie auch im Be
trieb z. B. in Abhängigkeit von der verfügbaren Bandbreite des Kanals oder der
Bildqualität erfolgen kann.
Um jegliche Verschiebung des Suchbereiches berücksichtigen zu können, erfolgt
vorzugsweise eine Auswahl eines Kandidatenbilddatenvektors mit einer ganzzah
ligen Anzahl m von Bildpixeldaten aus dem Permutationsdatenvektor ohne Ver
tauschung der Reihenfolge der Bildpixeldaten. Bei dem Vergleich der Referenzbildblöcke
und Kandidatenbildblöcke wird daher nicht das vollständige durch den
Permutationsdatenvektor definierte Fenster, sondern ein überlagertes kleineres
Fenster untersucht.
Die Anzahl a der Bildpixel einer Bildpixelgruppe berechnet sich aus der Formel
als Integer des Quotienten der Anzahl m der Bildpixeldaten des
Kandidatenbilddatenvektors und der um 1 verminderten Anzahl n der voneinan
der unabhängigen Speicherblöcke. Für einen Kandidatenbilddatenvektor bzw. ein
betrachtetes Fenster mit acht oder neun Bildpixeldaten und drei Speicherblöcken
werden somit vier Bildpixel pro Bildpixelgruppe verwendet. Für ein 16 oder 17-
Bildpixel breites Fenster bzw. Kandidatenbilddatenvektor und drei Speicherblöc
ken werden entsprechend 8 Bildpixel pro Bildpixelgruppe verwendet.
Die Aufgabe wird weiterhin durch eine Schaltungsanordnung zur Durchführung
des beschriebenen Verfahrens gelöst, wobei drei voneinander unabhängige Spei
cherblöcke zum Abspeichern der Suchbilddaten eines Suchbereiches und eine
Permutations-Schaltungseinheit zur Permutation der ausgelesenen Bildpixelgrup
pen vorgesehen ist.
Vorzugsweise ist an dem Ausgang der Permutations-Schaltungseinheit eine Aus
richt-Schaltungseinheit zum Auswählen eines Kandidatenbilddatenvektors ange
ordnet.
Die Ansteuerung der Permutations-Schaltungseinheit und Ausricht-
Schaltungseinheit erfolgt dann durch systematische Steuersignale.
Die Erfindung wird nachfolgend anhand der beigefügten Zeichnungen näher er
läutert. Es zeigen:
Fig. 1 Blockschaltbild der Schaltungsanordnung zur Durchführung
des Blockmatching-Verfahrens;
Fig. 2 Zugriff für Speicherung eines 48 × 48 großen Suchbildblocks
in drei Speicherblöcken;
Fig. 3 Blockschaltbild mit einer Permutations-Schaltungseinheit,
einer Ausricht-Schaltungseinheit und einen Halbpelfilter;
Fig. 4 Skizze der Permutations-Schaltungseinheit;
Fig. 5 Skizze der Ausricht-Schaltungseinheit;
Fig. 6 Blockschaltbild einer Schaltungsanordnung zur Durchführung
des Speicherzugriffs für das Blockmatching-Verfahren mit
Randbildausgleich.
Die Fig. 1 läßt ein Blockschaltbild einer Schaltungsanordnung zur Durchführung
des Speicherzugriffs für die Bewegungsschätzung mit dem Blockmatching-
Verfahren erkennen, bei dem ein Referenzbildblock R mit 16 × 16 Bildpixeln in
einem Referenz-Speicherblock 1 abgelegt ist. Jeder Bildpixel wird durch 8 Bit be
schrieben, so dass der Referenz-Speicherblock 1 32 × 64 Bit groß ist. Die Bildda
ten eines Suchbildes werden hingegen in drei voneinander unabhängigen Spei
cherblöcken MEM1, MEM2 und MEM3 abgelegt, wobei die Speicherblöcke
MEM1, MEM2 und MEM3 jeweils 192 × 32 Bit groß sind. Es werden somit
Suchbereichsdaten von 16 × 48 Bildpixeln jeweils pro Speicherblock MEM1,
MEM2 und MEM3 abgelegt.
Pro Takt werden 4 Pel mit jeweils 8 Bits aus den Speicherblöcken MEM1, MEM2
und MEM3 und 8 Pel mit jeweils 8 Bits aus dem Referenz-Speicherblock 1 aus
geladen und simultan verarbeitet. Das heißt, dass pro Speicherblock MEM jeweils
eine Bildpixelgruppe mit einer Anzahl a = 4 Bildpixel ausgelesen werden.
Diese Daten werden in einer Datenzufuhr-Schaltungseinheit 2 so permutiert, dass
die Bildpixeldaten der Bildpixelgruppen in der Reihenfolge entsprechend der An
ordnung in dem Suchbild als Permutationsdatenvektor eines Kandidantenbild
blocks auf einem parallelen Datenbus anliegen. Der 12-Pel breite Permutationsda
tenvektor wird entsprechend der Positionierung des zu betrachtenden Bildpixel
fensters im Suchbild relativ zu dem 8-Pel breiten Referenzdatenvektor ausgerich
tet, wobei ein Kandidatenbilddatenvektor mit einer Anzahl von m = 8 Bildpixel
daten aus dem 12-Pel breiten Permutationsdatenvektor ohne Vertauschen der
Reihenfolge der Bildpixeldaten ausgewählt wird. In einer Schaltungseinheit 3 zur
Berechnung eines Ähnlichkeitsmaßes SAD wird aus dem Kandidatenbilddaten
vektor und dem Referenzdatenvektor ein Ähnlichkeitsmaß SAD (sum of absolute
differences) in bekannter Weise zum Beispiel nach der Formel
berechnet und der Bewegungsvektor bestimmt.
Die Aufteilung der Suchbilddaten in die Speicherblöcke MEM1, MEM2 und MEM3
wird anhand der Skizze in der Fig. 2 deutlich. Ein Suchbereich S mit 48 × 48
Bildpixeln wird in den drei Speicherblöcken MEM abgespeichert, wobei Bildpixel
gruppen G bestehend aus jeweils a = 4 Bildpixeln alternierend in den drei Spei
cherblöcken MEM1, MEM2 und MEM3 abgelegt werden. Es wird deutlich, dass
die im Suchbild nebeneinander angeordneten Bildpixelgruppen G alternierend in
den Speicherblöcken MEM abgelegt werden.
Pro Takt werden jeweils drei Bildpixelgruppen G gleichzeitig aus den drei Spei
cherblöcken MEM1, MEM2 und MEM3 ausgelesen. Hierbei wird die Position des
Fensters 4a der ausgelesenen drei Bildpixelgruppen G ständig verändert. In dem
dargestellten Beispiel sind die Suchbilddaten so geordnet abgelegt, dass die linke
Bildpixelgruppe 0MEM1 des Suchbildes in dem ersten Speicherblock MEM1 und die
horizontal daran anschließenden Bildpixelgruppen 0MEM2 und 0MEM3 in den zweiten
und dritten Speicherblöcken MEM2 und MEM3 systematisch abgelegt sind. Beim
Auslesen des Fensters sind die Bildpixel somit in der korrekten Reihenfolge ent
sprechend ihrer Position im Suchbild angeordnet.
Wenn hingegen ein im Suchbild verschobenes Fenster 4b ausgelesen wird, kann
sich die Systematik der Reihenfolge ändern, so dass eine Permutation der Bildpi
xelgruppen G derart erfolgen muß, dass auf dem parallelen Datenbus ein Permu
tationsdatenvektor anliegt, bei dem zunächst die Bildpixelgruppen auf 0MEM3 des
dritten Speicherblocks MEM3 und dann die Bildpixelgruppen 1 MEM1 und 1 MEM2 des
ersten und zweiten Speicherblocks MEM1 und MEM2 anliegen. Diese Permutati
on kann auch erforderlich sein, nachdem der Suchbereich S zum Beispiel um 16
Bildpixel nach rechts verschoben wurde und die nicht überlappenden Bildpixel
gruppen 0MEM1, 0MEM2, 0MEM3 und 1MEM1 des alten Suchbereichs S mit den rechts
neben dem alten Suchbereich befindlichen neuen Bildpixeldaten überschrieben
worden sind.
Die Fig. 2 läßt weiterhin in dem Fenster bzw. Permutationsdatenvektor 4b einen
fett umrandeten Bereich von 8 Bildpixeln erkennen, der mit dem Referenzdaten
vektor verglichen wird. Dieser Bereich wird als Kandidatenbilddatenvektor K be
zeichnet. Um diesen Kandidatenbilddatenvektor K aus dem Permutationsdaten
vektor 4b auszuwählen, wird ein Steuersignal generiert, das die Verschiebung
des Fensters relativ zu dem Permutationsdatenvektor 4b angibt. Hierbei wird die
Reihenfolge der Bildpixeldaten nicht weiter vertauscht.
Die Fig. 3 läßt ein Blockschaltbild der Permutations-Schaltungseinheit 5 und der
Ausricht-Schaltungseinheit 6 erkennen, wobei an den Ausgang der Ausricht-
Schaltungseinheit 6 eine Halbpel-Filter 7 geschaltet ist.
An dem Eingang der Permutations-Schaltungseinheit 5 liegt das in der Fig. 2
skizzierte Fenster 4b an. Durch die Permutations-Schaltungseinheit 5 werden die
Bildpixelgruppen G so umgeordnet, dass in dem dargestellten Beispiel die aus
dem dritten Speicherblock MEM3 ausgelesenen Bildpixelgruppe an den oberen
Teil des Ausgangs-Datenbusses der Permutations-Schaltungseinheit 5 gelegt
wird. Die Bildpixelgruppe aus dem ersten Speicherblock MEM1 und die Bildpixel
gruppe aus dem zweiten Speicherblock MEM2 wird entsprechend verschoben.
Durch die Ausricht-Schaltungseinheit 6 wird aus dem 12 Bildpixel breiten Permu
tationsdatenvektor P ein 8 oder 9 Bildpixel breiter Kandidatenbilddatenvektor K
ausgewählt, der einem Halbpel-Filter 7 zugeführt wird. Mit Hilfe des Halbpel-
Filters 7 kann optional eine Halbpel-Filterung durchgeführt werden.
Die Permutations-Schaltungseinheit 5 ist in der Fig. 4 skizziert. Sie besteht im
wesentlichen aus drei Multiplexern M, die mit einem Kontrollsignal p nach dem
folgenden Schema angesteuert werden:
p = 0: (1, 2, 3): xmem_1[4] → [0. . .3], xmem_2[4] → y[4. . .7], xmem_3[4] → y[8. . .11]
p = 1: (2, 3, 1): xmem_1[4] → [8. . .11], xmem_2[4] → y[0. . .3], xmem_3[4] → y[4. . .7]
p = 2: (3, 1, 2): xmem_1[4] → [4. . .7], xmem_2[4] → y[8. . .11], xmem_3[4] → y[0. . .3]
Die aus den drei Speicherblöcken MEM1, MEM2 und MEM3 ausgelesenen Bildpi
xelgruppen G werden somit entsprechend dem Wert des Kontrollsignals p so an
die drei 4 × 8 Bit breiten Ausgangsports der Multiplexer M angelegt, so dass für
p = 0 eine Reihenfolge MEM1, MEM2, MEM3, für p = 1 eine Reihenfolge
MEM2, MEM3, MEM1 und für p = 2 eine Reihenfolge MEM3, MEM1 und MEM2
bewirkt wird.
Die Fig. 5 läßt die Ausricht-Schaltungseinheit 6 im Detail erkennen. Die Aus
richt-Schalteinheit 6 besteht ebenfalls aus drei Multiplexern M, die jeweils an die
Ausgangsports der Multiplexer M der Permutations-Schaltungseinheit 5 ange
schlossen sind. Die Ausricht-Schaltungseinheit 6 wird mit einem Kontrollsignal
align angesteuert, das die Multiplexer M wie folgt schaltet:
align = 0: x[0. . .8] → y[0. . .8]
align = 1: x[1. . .9] → y[0. . .8]
align = 2: x[2. . .10] → y[0. . .8]
align = 3: x[3. . .11] → y[0. . .8]
Mit Hilfe des Kontrollsignals align und der Ausricht-Schaltungseinheit 6 wird aus
dem 12 Bildpixel breiten Permutationsdatenvektor P ein 8 oder 9 Bildpixel breiter
Kandidatenbilddatenvektor K ausgewählt.
Die Fig. 6 läßt das Blockschaltbild der Fig. 3 erkennen, wobei jedoch zusätz
lich eine Randausgleich-Schaltungseinheit 8 vorgesehen ist, um in Randbereichen
des Suchbildes innerhalb eines betrachteten Bildes Bilddaten z. B. mit Null-
Werten aufzufüllen, die über die Grenzen des Bildes hinausgehen. Die Randaus
gleichs-Schaltungseinheit 8 wird mit einem 9 Bit breiten Kontrollsignal bval nach
folgenden Vorschriften gesteuert:
bval = 000000000b: x[0. . .8] → y[0. . .8]
bval = 111111111b b: bval → y[0. . .8]
bval = 000000000b: x[0. . .7] → y[0. . .7], bval → y[8]
Claims (10)
1. Verfahren zum Zugriff auf Suchbilddaten bei der Bewegungsschätzung mit
dem Blockmatching-Verfahren, um
Referenzbildblöcke (R) eines aktuellen Bildes mit Kandidatenbildblöc ken eines Suchbildes innerhalb eines Suchbereichs (S) miteinander zu vergleichen und ein Ähnlichkeitsmaß zwischen den Bildpixeln der Bildblöcke zu berechnen, und
für jeden Referenzbildblock (R) einen Bewegungsvektor für die Ver schiebung eines Referenzbildblocks (R) relativ zu einem Kandidaten bildblock, bei dem das Ähnlichkeitsmaß (SAD) am geringsten ist, zu bestimmen,
gekennzeichnet durch
Abspeichern der Suchbilddaten eines Suchbereichs (S) in drei von einander unabhängige Speicherblöcke (MEM1, MEM2, MEM3), wobei eine ganzzahlige Anzahl (a) von im Suchbild nebeneinander an geordneten Bildpixeln eine Bildpixelgruppe (G) bilden und die im Suchbild nebeneinander angeordneten Bildpixelgruppen (G) alternie rend in den drei Speicherblöcken (MEM1, MEM2, MEM3) abgelegt werden,
paralleles Auslesen von drei Bildpixelgruppen (G) aus den drei Spei cherblöcken (MEM1, MEM2, MEM3),
Permutation der ausgelesenen Bildpixelgruppen (G) derart, dass die Bildpixeldaten der Bildpixelgruppen (G) in der Reihenfolge entspre chend der Anordnung in dem Suchbild als Permutationsdatenvektor (P) eines Kandidatenbildblocks auf einem parallelen Datenbus anlie gen.
Referenzbildblöcke (R) eines aktuellen Bildes mit Kandidatenbildblöc ken eines Suchbildes innerhalb eines Suchbereichs (S) miteinander zu vergleichen und ein Ähnlichkeitsmaß zwischen den Bildpixeln der Bildblöcke zu berechnen, und
für jeden Referenzbildblock (R) einen Bewegungsvektor für die Ver schiebung eines Referenzbildblocks (R) relativ zu einem Kandidaten bildblock, bei dem das Ähnlichkeitsmaß (SAD) am geringsten ist, zu bestimmen,
gekennzeichnet durch
Abspeichern der Suchbilddaten eines Suchbereichs (S) in drei von einander unabhängige Speicherblöcke (MEM1, MEM2, MEM3), wobei eine ganzzahlige Anzahl (a) von im Suchbild nebeneinander an geordneten Bildpixeln eine Bildpixelgruppe (G) bilden und die im Suchbild nebeneinander angeordneten Bildpixelgruppen (G) alternie rend in den drei Speicherblöcken (MEM1, MEM2, MEM3) abgelegt werden,
paralleles Auslesen von drei Bildpixelgruppen (G) aus den drei Spei cherblöcken (MEM1, MEM2, MEM3),
Permutation der ausgelesenen Bildpixelgruppen (G) derart, dass die Bildpixeldaten der Bildpixelgruppen (G) in der Reihenfolge entspre chend der Anordnung in dem Suchbild als Permutationsdatenvektor (P) eines Kandidatenbildblocks auf einem parallelen Datenbus anlie gen.
2. Verfahren nach Anspruch 1, gekennzeichnet durch Auswählen eines Kan
didatenbilddatenvektors (K) mit einer ganzzahligen Anzahl (m) von Bildpi
xeldaten aus dem Permutationsdatenvektor (P) ohne Vertauschen der Rei
henfolge der Bildpixeldaten.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass sich die
Anzahl (a) der Bildpixel einer Bildpixelgruppe (G) aus der Formel
berechnet, wobei m die Anzahl der Bildpixeldaten des Kandi datenbilddatenvektors (K) und n die Anzahl der voneinander unabhängigen Speicherblöcke (MEM) ist.
berechnet, wobei m die Anzahl der Bildpixeldaten des Kandi datenbilddatenvektors (K) und n die Anzahl der voneinander unabhängigen Speicherblöcke (MEM) ist.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass für einen 8-
oder 9-Bildpixeldaten breiten Kandidatenbilddatenvektor (K) und drei Spei
cherblöcken (MEM1, MEM2, MEM3) vier Bildpixel pro Bildpixelgruppe (G)
verwendet werden.
5. Verfahren nach einem der vorhergehenden Ansprüche, gekennzeichnet
durch
Verschieben des Suchbereichs (S), wobei sich der vorhergehende und der neue Suchbereich (S) überlappen,
Nachladen der Bilddaten des nicht überlappenden neuen Suchbe reichs (S) in den Speicherbereich der Speicherblöcke (MEM), in de nen die Bilddaten des nicht überlappenden alten Suchbereichs (S) abgelegt sind,
Festlegen eines neuen Steuersignals zur Permutation für den neuen Suchbereich (S).
Verschieben des Suchbereichs (S), wobei sich der vorhergehende und der neue Suchbereich (S) überlappen,
Nachladen der Bilddaten des nicht überlappenden neuen Suchbe reichs (S) in den Speicherbereich der Speicherblöcke (MEM), in de nen die Bilddaten des nicht überlappenden alten Suchbereichs (S) abgelegt sind,
Festlegen eines neuen Steuersignals zur Permutation für den neuen Suchbereich (S).
6. Schaltungsanordnung zur Durchführung des Verfahrens nach einem der
vorhergehenden Ansprüche mit drei voneinander unabhängigen Speicher
blöcken (MEM1, MEM2 und MEM3) zum Abspeichern der Suchbilddaten
eines Suchbereichs (S), wobei eine ganzzahlige Anzahl (a) von im Suchbild
nebeneinander angeordneten Bildpixeln eine Bildpixelgruppe (G) bilden und
die im Suchbild nebeneinander angeordneten Bildpixelgruppen (G) alternie
rend in den drei Speicherblöcken (MEM1, MEM2, MEM3) abgelegt werden,
und mit einer Permutations-Schaltungseinheit (5) zur Permutation der aus
gelesenen Bildpixelgruppen (G) derart, dass die Bildpixeldaten der Bildpi
xelgruppen (G) in der Reihenfolge entsprechend der Anordnung in dem
Suchbild als Permutationsdatenvektor (P) eines Kandidatenbildblocks auf
einem parallelen Datenbus anliegen.
7. Schaltungsanordnung nach Anspruch 6, dadurch gekennzeichnet, dass es
an den Ausgängen der Permutations-Schaltungseinheit (5) eine Ausricht-
Schaltungseinheit (6) zum Auswählen eines Kandidatenbilddatenvektors
(K) mit einer ganzzahligen Anzahl (m) von Bildpixeldaten aus dem Permuta
tionsdatenvektor (P) ohne Vertauschen der Reihenfolge der Bildpixeldaten
angeordnet ist.
8. Schaltungsanordnung nach Anspruch 7, gekennzeichnet durch einen Refe
renzspeicherblock (1) zum Abspeichern eines Referenzbildblocks (R) und
Schaltungseinheit (3) zur Berechnung eines Ähnlichkeitsmaßes (SAD), wo
bei die Schaltungseinheit (3) zur Berechnung des Ähnlichkeitsmaßes (SAD)
an den Ausgang der Ausricht-Schaltungseinheit (6) und des Referenz
speicherblocks (1) gekoppelt ist.
9. Computer-Programm mit Programmcodemitteln, um alle Schritte gemäß
einem der Ansprüche 1 bis 5 durchzuführen, wenn das Programm auf ei
nem Datenverarbeitungsprozessor ausgeführt wird.
10. Computer-Programm mit Programmcodemitteln gemäß Anspruch 9, die auf
einen computerlesbaren Datenspeicher gespeichert sind.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10120140A DE10120140C2 (de) | 2001-04-25 | 2001-04-25 | Verfahren zum Zugriff auf Suchbilddaten bei der Bewegungsschätzung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10120140A DE10120140C2 (de) | 2001-04-25 | 2001-04-25 | Verfahren zum Zugriff auf Suchbilddaten bei der Bewegungsschätzung |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10120140A1 true DE10120140A1 (de) | 2002-11-07 |
DE10120140C2 DE10120140C2 (de) | 2003-03-13 |
Family
ID=7682594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10120140A Expired - Fee Related DE10120140C2 (de) | 2001-04-25 | 2001-04-25 | Verfahren zum Zugriff auf Suchbilddaten bei der Bewegungsschätzung |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE10120140C2 (de) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3721074A1 (de) * | 1986-12-24 | 1988-07-07 | Licentia Gmbh | Schaltungsanordnung zur verschiebungsvektorsuche in der digitalen bildanalyse |
DE4023449C1 (de) * | 1990-07-24 | 1992-01-23 | Ant Nachrichtentechnik Gmbh, 7150 Backnang, De | |
DE4333368A1 (de) * | 1993-09-30 | 1995-04-06 | Ant Nachrichtentech | Verfahren zur Aufbereitung von Daten zur Beschreibung von Bildbereichen, sowie Anordnung hierzu |
EP0734175A1 (de) * | 1995-03-20 | 1996-09-25 | Daewoo Electronics Co., Ltd | Hierarchische Bewegungsvektorsschätzung mit mehreren Blockgrössen |
DE4307936C2 (de) * | 1992-04-21 | 1997-04-03 | Mitsubishi Electric Corp | Bildprozessor zum Detektieren von Bewegungen |
-
2001
- 2001-04-25 DE DE10120140A patent/DE10120140C2/de not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3721074A1 (de) * | 1986-12-24 | 1988-07-07 | Licentia Gmbh | Schaltungsanordnung zur verschiebungsvektorsuche in der digitalen bildanalyse |
DE4023449C1 (de) * | 1990-07-24 | 1992-01-23 | Ant Nachrichtentechnik Gmbh, 7150 Backnang, De | |
DE4307936C2 (de) * | 1992-04-21 | 1997-04-03 | Mitsubishi Electric Corp | Bildprozessor zum Detektieren von Bewegungen |
DE4333368A1 (de) * | 1993-09-30 | 1995-04-06 | Ant Nachrichtentech | Verfahren zur Aufbereitung von Daten zur Beschreibung von Bildbereichen, sowie Anordnung hierzu |
EP0734175A1 (de) * | 1995-03-20 | 1996-09-25 | Daewoo Electronics Co., Ltd | Hierarchische Bewegungsvektorsschätzung mit mehreren Blockgrössen |
Non-Patent Citations (2)
Title |
---|
BUCK, Jürgen "Komprimierte Bewegung" In: mc, April 1994, S. 114-123 * |
HARTWIG, S., ENDEMANN, W.: "Digitale Bildcodierung (Teil 6) - Bewegungskompensierte Interframe-DPCM", In: Fernseh- und Kinotechnik, 46, Jg. Nr. 6/1992, S. 416-424 * |
Also Published As
Publication number | Publication date |
---|---|
DE10120140C2 (de) | 2003-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69838630T2 (de) | Prädiktive Digitalvideosignalkodierung- und Dekodierungsmethode unter Verwendung von Blockinterpolation | |
DE3814627C2 (de) | ||
DE3804938C2 (de) | Bildverarbeitungseinrichtung | |
DE69333789T2 (de) | Kodierung von kontinuierlichen Bilddaten | |
DE69737852T2 (de) | Durch verbessertes speicher- und auslesesystem verschiedene arten von durch bildspeicherspezifischen hardwarespezifikationen verursachte verzögerungsfaktoren überwindender bilddekoder und bildspeicher | |
DE3338167A1 (de) | Verfahren und vorrichtung zur speicherung von bilddaten in einer speichereinrichtung eines layout-abtastsystems | |
DE69627920T2 (de) | Speichersteuerungsanordnung und Bilddekodierer damit | |
DE60029828T2 (de) | Verfahren und vorrichtung zur dekodierung von videosignalen mittels eines multiprozessorsystems | |
DE19739266A1 (de) | Verfahren und Vorrichtung zum Kodieren binärer Formen | |
EP0276434A1 (de) | Schaltungsanordnung zur Verschiebungsvektorsuche in der digitalen Bildanalyse | |
DE4408522C2 (de) | Vorrichtung zur Bilddatenverarbeitung und Verfahren zur Verarbeitung von Bilddaten | |
DE102005001181B4 (de) | Vorrichtung und Verfahren zum Transponieren von Daten | |
DE19752929A1 (de) | Bildverarbeitungseinrichtung | |
DE4221320A1 (de) | Bewegungsvektor-erfassungsvorrichtung | |
DE60207756T2 (de) | Bilddatenzugriff | |
DE4409066C2 (de) | Bilddaten-Kompressions/Expansions-Schaltung | |
EP0732670B1 (de) | Verfahren und Schaltungsanordnung zur Unterabtastung bei Bewegungsschätzung | |
DE69731342T2 (de) | Bildverarbeitungsvorrichtung | |
EP1605405A1 (de) | Verfahren zur Ermittlung von Bewegungsvektoren, die Bildbereichen eines Bildes zugeordnet sind | |
DE10120140C2 (de) | Verfahren zum Zugriff auf Suchbilddaten bei der Bewegungsschätzung | |
DE69636352T2 (de) | Hierarchische Kodierungs-Vorrichtung und -Verfahren mit Speicher für ein digitales Bildsignal | |
DE69628269T2 (de) | Konversionsverfahren einer Ausgangsdatenfolge in Invers-DCT und Schaltung davon | |
DE102005025634A1 (de) | Verfahren und Vorrichtung zur Ermittlung von Bewegungsvektoren | |
WO2019057473A1 (de) | Verfahren und vorrichtung zum bewerten von bildern, betriebsassistenzverfahren und betriebsvorrichtung | |
EP0786186A1 (de) | Segmentadaptive zweidimensionale orthogonale transformationskodierung für ein digitales fernsehsystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8304 | Grant after examination procedure | ||
8364 | No opposition during term of opposition | ||
R082 | Change of representative |
Representative=s name: GRAMM, LINS & PARTNER PATENT- UND RECHTSANWAEL, DE |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |