[go: up one dir, main page]

DE69423968T2 - Device for estimating motion in accordance with blocks of variable size - Google Patents

Device for estimating motion in accordance with blocks of variable size

Info

Publication number
DE69423968T2
DE69423968T2 DE1994623968 DE69423968T DE69423968T2 DE 69423968 T2 DE69423968 T2 DE 69423968T2 DE 1994623968 DE1994623968 DE 1994623968 DE 69423968 T DE69423968 T DE 69423968T DE 69423968 T2 DE69423968 T2 DE 69423968T2
Authority
DE
Germany
Prior art keywords
block
search
enlarged
search block
pixels
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE1994623968
Other languages
German (de)
Other versions
DE69423968D1 (en
Inventor
Hae-Mook Jung
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WiniaDaewoo Co Ltd
Original Assignee
Daewoo Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Daewoo Electronics Co Ltd filed Critical Daewoo Electronics Co Ltd
Priority claimed from EP94120946A external-priority patent/EP0720382B1/en
Application granted granted Critical
Publication of DE69423968D1 publication Critical patent/DE69423968D1/en
Publication of DE69423968T2 publication Critical patent/DE69423968T2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

Gebiete der ErfindungFields of the invention

Die vorliegende Erfindung betrifft eine Bewegungsabschätzungsvorrichtung für die Verwendung in einem Bildsignal- Codiersystem; und insbesondere eine Bewegunsabschätzungsvorrichtung zum Erfassen eines Bewegungsvektors eines variablen Blockes, basierend auf einem Block-Vergleichs- Algorithmus gemäß dem Oberbegriff des Anspruchs 1.The present invention relates to a motion estimation apparatus for use in an image signal coding system; and more particularly to a motion estimation apparatus for detecting a motion vector of a variable block based on a block comparison algorithm according to the preamble of claim 1.

Beschreibung des Standes der TechnikDescription of the state of the art

Wenn ein Bildsignal, das eine Abfolge an Bild-"Frames" umfaßt, in digitaler Form ausgedrückt ist, werden erhebliche Datenmengen für die Übertragung erzeugt, insbesondere in dem Fall eines hochauflösenden Fernsehsystems. Da jedoch die verfügbare Frequenzbandbreite eines herkömmlichen Übertragungskanals begrenzt ist, die erheblichen Mengen digitaler Daten durch die begrenzte Kanalbandbreite zu übertragen, ist es unausweichlich, das Volumen der Übertragungsdaten zu komprimieren oder zu reduzieren. Unter verschiedenen Videokomprimierungstechniken ist eine bewegungskompensierte Interframe-Kodierungstechnik, die zeitliche Redundanzen der Videosignale zwischen zwei benachbarten Videoframes für die Komprimierung der Signale anwendet, dafür bekannt, eine der effektivsten Komprimierungstechniken zu sein.When an image signal comprising a sequence of image "frames" is expressed in digital form, a significant amount of data is generated for transmission, particularly in the case of a high definition television system. However, since the available frequency bandwidth of a conventional transmission channel is limited to transmit the significant amounts of digital data through the limited channel bandwidth, it is inevitable to compress or reduce the volume of the transmission data. Among various video compression techniques, a motion compensated interframe coding technique which uses temporal redundancies of the video signals between two adjacent video frames for compressing the signals is known to be one of the most effective compression techniques.

In dem bewegungskompensierten Interframe-Kodierverfahren werden aktuelle Frame-Daten aus vorhergehenden Frame- Daten vorhergesagt, basierend auf einer Abschätzung der Bewegung zwischen dem aktuellen und dem vorhergehenden Frame. Eine solche abgeschätzte Bewegung kann in Ausdrücken zweidimensionaler Bewegungsvektoren beschrieben wer den, welche die Verschiebung der Pixel zwischen dem vorhergehenden und dem aktuellen Frame darstellen.In the motion compensated interframe coding method, current frame data is predicted from previous frame data based on an estimate of the motion between the current and previous frame. Such estimated motion can be described in terms of two-dimensional motion vectors. which represent the displacement of pixels between the previous and the current frame.

Eines der Bewegungsvektor-Abschätzverfahren, das im Stand der Technik vorgeschlagen worden ist, ist der Blockvergleichsalgorithmus. Entsprechend dem Blockvergleichsalgorithmus wird ein aktueller Frame in eine Vielzahl gleich großer Suchblöcke aufgeteilt. Die Größe eines Suchblockes reicht typischerweise von 8 · 8 bis 32 · 32 Pixel. Zum Bestimmen einer Verschiebung für einen gegebenen Suchblock aus dem aktuellen Frame wird eine Ähnlichkeitsberechnung zwischen dem Suchblock des aktuellen Frames und jedem einer Mehrzahl gleich großer in Frage kommender Blöcke durchgeführt, die in einem im allgemeinen größeren Suchbereich innerhalb eines vorhergehenden Frames enthalten sind. Beim Ausführen der Ähnlichkeitsmessung gibt es viele Fehlerfunktionen, wie ein MQF (mittlerer quadratischer Fehler) oder ein MAF (mittlerer absoluter Fehler), die angewandt werden können.One of the motion vector estimation methods that has been proposed in the prior art is the block matching algorithm. According to the block matching algorithm, a current frame is divided into a plurality of equally sized search blocks. The size of a search block typically ranges from 8 x 8 to 32 x 32 pixels. To determine a displacement for a given search block from the current frame, a similarity calculation is performed between the search block of the current frame and each of a plurality of equally sized candidate blocks contained in a generally larger search area within a previous frame. In performing the similarity measurement, there are many error functions, such as an MQF (mean square error) or an MAF (mean absolute error), that can be applied.

Ein Bewegungsvektor stellt per Definition die Verschiebung zwischen dem Suchblock und einem in Frage kommenden Block dar, welcher eine minimale Fehlerfunktion ergibt. Der Fehlervektor wird anschließend in einem Empfänger verwendet, um ein Bild aus dem vorhergehenden Frame auf einer Blockzu-Block-Basis zu rekonstruieren.A motion vector, by definition, represents the displacement between the search block and a candidate block that yields a minimum error function. The error vector is then used in a receiver to reconstruct an image from the previous frame on a block-by-block basis.

Bei einer solchen Bewegungsabschätzung auf einer Blockzu-Block-Basis wäre es wünschenswert oder geeignet, einen gleich großen Suchblock anzuwenden. Manchmal kann ein ebenes bzw. schlichtes Bildmuster ohne irgendwelche Kanten eines Objektes in dem aktuellen Frame über mehrere benachbarte Blöcke oder mit einer nur leichten Kante darin vorliegen. In dem ersten Fall kann die Blockvergleichs-Bewegungsabschätzung Bewegungsvektoren liefern, die für jeden Block verschieden zueinander sind; und im letzteren Fall kann sie einen Bewegungsvektor erzeugen, der identisch demjenigen des ebenen Bildmusters ohne Kante ist.In such motion estimation on a block-by-block basis, it would be desirable or appropriate to apply an equally sized search block. Sometimes a plain image pattern without any edges of an object in the current frame may exist across several adjacent blocks or with only a slight edge therein. In the former case, the block-comparison motion estimation may yield motion vectors that are different from each other for each block; and in the latter case, it may produce a motion vector that is identical to that of the plain image pattern without any edge.

Das Dokument JP-A-05 328 334 zeigt die Merkmale des Oberbegriffs des Anspruchs 1. Insbesondere offenbart dieses Dokument eine Vorrichtung zum Erfassen eines Bewegungsvektors eines Suchblockes durch eine Bewegungsabschätzung eines vergrößerten Suchblocks. Der vergrößerte Suchblock wird durch Berechnen von Bewegungsabschätzungsfehlern zwischen dem nicht-vergrößerten Suchblock und allen in Frage kommenden Blöcken unter Anwendung des Blockvergleichsalgorithmus erfaßt. Falls die Differenz zwischen einem maximalen Bewegungsabschätzungsfehler und einem minimalen Bewegungsabschätzungsfehler kleiner als ein vorbestimmter Schwellwert ist, werden der Suchblock und die in Frage kommenden Blöcke vergrößert und es werden Bewegungsabschätzungsfehler zwischen dem vergrößerten Suchblock und jedem der vergrößerten in Frage kommenden Blöcke berechnet. Diese Vergrößerungsprozedur wird solange wiederholt, bis die Differenz zwischen einem maximalen Fehler und einem minimalen Fehler den vorbestimmten Schwellwert überschreitet.Document JP-A-05 328 334 shows the features of the preamble of claim 1. In particular, this document discloses an apparatus for detecting a motion vector of a search block by a motion estimate of an enlarged search block. The enlarged search block is detected by calculating motion estimation errors between the non-enlarged search block and all candidate blocks using the block comparison algorithm. If the difference between a maximum motion estimation error and a minimum motion estimation error is smaller than a predetermined threshold, the search block and the candidate blocks are enlarged and motion estimation errors between the enlarged search block and each of the enlarged candidate blocks are calculated. This enlarging procedure is repeated until the difference between a maximum error and a minimum error exceeds the predetermined threshold.

Das Journal des Korean Institute of Telematics and Electronics, Vol. 29b, Nr. 7, Juli 1992, Südkorea, Seiten 540-547, Jin Tae Kim et al., "A variable size block matching algorithm using local characteristics of images" zeigt eine Mischprozedur zum Mischen zweier benachbarter Blöcke, falls deren Mittelwerte und deren Varianzen ähnlich zueinander sind. Die Mischprozedur wird solange wiederholt, bis die Differenzen der Mittelwerte und der Varianten des gemischten Blockes und benachbarter Blöcke größer als vorbestimmte Schwellwerte sind. Die Bewegungsabschätzung wird mit dem gemischten Block durchgeführt.The Journal of the Korean Institute of Telematics and Electronics, Vol. 29b, No. 7, July 1992, South Korea, pages 540-547, Jin Tae Kim et al., "A variable size block matching algorithm using local characteristics of images" shows a merging procedure for merging two neighboring blocks if their means and variances are similar to each other. The merging procedure is repeated until the differences of the means and variances of the merging block and neighboring blocks are greater than predetermined thresholds. Motion estimation is performed on the merging block.

Zusammenfassung der ErfindungSummary of the invention

Es ist daher ein vorrangiges Ziel der Erfindung, eine verbesserte Bewegungsabschätzungsvorrichtung zu schaffen, die einen Bewegungsvektor unter Verwendung eines variablen Blockes genau erfassen kann.It is therefore a primary object of the invention to provide an improved motion estimation apparatus that can accurately detect a motion vector using a variable block.

Die Erfindung erreicht dieses Ziel mit dem Gegenstand des Anspruchs 1. Bevorzugte Ausführungsbeispiele der Erfindung sind in den abhängigen Ansprüchen beschrieben.The invention achieves this object with the subject matter of claim 1. Preferred embodiments of the invention are described in the dependent claims.

Kurze Beschreibung der ZeichnungShort description of the drawing

Die obigen und weitere Ziele und Merkmale der vorliegenden Erfindung werden in der nachfolgenden Beschreibung bevorzugter Ausführungsbeispiele im Zusammenhang mit der beigefügten Zeichnung näher erläutert, in der:The above and other objects and features of the present invention are explained in more detail in the following description of preferred embodiments in conjunction with the accompanying drawings, in which:

Fig. 1 ein schematisches Blockdiagramm einer Bewegungsvektor-Meßvorrichtung für variable Blöcke zur Verwendung in einem Bewegungsabschätzungssystem gemäß der Erfindung zeigt;Fig. 1 shows a schematic block diagram of a variable block motion vector measuring device for use in a motion estimation system according to the invention;

Fig. 2 ein detailliertes Blockdiagramm des in Fig. 1 gezeigten Formationabschnitts für variable Blöcke darstellt; undFig. 2 is a detailed block diagram of the variable block formation section shown in Fig. 1; and

Fig. 3A und 3B ein beispielhaftes Diagramm darstellen, das einen auf einer Pixelbasis vergrößerten variablen Block erläutert.Figs. 3A and 3B illustrate an exemplary diagram explaining a variable block enlarged on a pixel basis.

Detaillierte Beschreibung der bevorzugten AusführungsbeispieleDetailed description of the preferred embodiments

Mit Bezug auf Fig. 1 ist ein bevorzugtes Ausführungsbeispiel einer Bewegungsvektor-Meßvorrichtung für variable Blöcke gezeigt, die in einem Bewegungsabschätzungsverfahren inkorporiert ist, das zum Erzielen einer signifikanten Datenkomprimierung unter Ausnutzen von Redundanzen zwischen aufeinanderfolgenden Frames, d. h. einem aktuellen Frame und seinem benachbarten oder vorhergehenden Frame, verwendet wird. Dies bedeutet, daß Unterschiede zwischen dem aktuellen Frame und dem vorhergehenden Frame vorliegen können, die durch eine Verschiebung oder Bewegung eines Objektes hervorgerufen werden; solche Differenzen jedoch auf einen relativ kleinen Bereich innerhalb eines Frames beschränkt sind. Daher ist es nicht notwendig, die gesamten Bilddaten eines aktuellen Frames an einen Empfänger (nicht dargestellt) zu übertragen. Statt dessen kann es ausreichen, die Verschiebungsinformation zu übertragen, d. h. Bewegungsvektoren. Der Empfänger rekonstruiert den aktuellen Frame aus seinem vorhergehenden Frame, dessen Bilddaten in einem Framespeicher innerhalb des Empfängers gespeichert sind, unter Verwendung der Bewegungsvektoren.Referring to Fig. 1, there is shown a preferred embodiment of a variable block motion vector measuring device incorporated in a motion estimation method used to achieve significant data compression by exploiting redundancies between successive frames, ie a current frame and its adjacent or previous frame. This means that there may be differences between the current frame and the previous frame caused by a displacement or movement of an object; however, such differences are limited to a relatively small range within of a frame. Therefore, it is not necessary to transmit the entire image data of a current frame to a receiver (not shown). Instead, it may be sufficient to transmit the displacement information, ie motion vectors. The receiver reconstructs the current frame from its previous frame, whose image data is stored in a frame memory within the receiver, using the motion vectors.

Das aktuelle Framesignal wird über eine Leitung 12 einem Formationsabschnitt 100 für variable Blöcke bereitgestellt. Der Formationsabschnitt 100 für variable Blöcke dient dazu, den aktuellen Frame in eine Anzahl an Suchblöcken identischer Größe aufzuteilen, die nacheinander zum Durchführen eines Blockvergleichs verwendet werden. In Fig. 3A ist der aktuelle Frame, der im allgemeinen mit dem Bezugszeichen 200 bezeichnet ist, so dargestellt, daß er z. H. zwanzig (20) unterteilte Suchblöcke 51 bis S20 aufweist, von denen jeder H x V Pixel umfaßt. Aus Darstellungsgründen wird angenommen, daß H und V für jeden Suchblock an Pixeln in dem aktuellen Frame 200 gleich groß und gleich 16 sind. Der Formationsabschnitt 100 für variable Blöcke wählt ferner nacheinander einen Suchblock aus, welcher einen schlichten Bildblock ohne eine Kante eines Objektes innerhalb des aktuellen Frames darstellt, und vergrößert den ausgewählten Suchblock auf einer Basis von einem Pixel, bis die Grenze bzw. der Saum des Suchblockes eine Kante enthält. Wie aus Fig. 3B ersichtlich wird, werden, wenn Suchblöcke, z. B. S7 und S14 nacheinander ausgewählt werden, die Suchblöcke S7 und S14 bis zu den Grenzen E7 und E14 vergrößert, die einen Kantenabschnitt jeweils der Objekte 202 und 204 enthalten.The current frame signal is provided over line 12 to a variable block formation section 100. The variable block formation section 100 serves to divide the current frame into a number of search blocks of identical size which are used in sequence to perform a block comparison. In Figure 3A, the current frame, generally designated by reference numeral 200, is shown as having twenty (20) divided search blocks S1 through S20, each of which comprises H x V pixels. For purposes of illustration, H and V are assumed to be the same size and equal to 16 for each search block of pixels in the current frame 200. The variable block formation section 100 further sequentially selects a search block representing a plain image block without an edge of an object within the current frame, and enlarges the selected search block on a one-pixel basis until the border of the search block contains an edge. As can be seen from Fig. 3B, when search blocks, e.g., S7 and S14, are sequentially selected, the search blocks S7 and S14 are enlarged up to the boundaries E7 and E14 containing an edge portion of the objects 202 and 204, respectively.

Jeder der vergrößerten Blöcke an Pixeln wird nacheinander einer Anzahl an Blockvergleichsabschnitten 41 bis 49 bereitgestellt. Gemäß der Erfindung kann der Einschluß einer Kante erfaßt werden, indem eine Varianz des vergrö ßerten Blockes berechnet wird, was nachstehend mit Bezug auf Fig. 2 weiter beschrieben wird.Each of the enlarged blocks of pixels is successively provided to a number of block comparison sections 41 to 49. According to the invention, the inclusion of an edge can be detected by determining a variance of the enlarged ßerten block is calculated, which is further described below with reference to Fig. 2.

Fig. 2 zeigt ein detailliertes Blockdiagramm des Formationsabschnittes 100 für variable Blöcke. Zum Auswählen eines das schlichte Bild darstellenden Suchblockes geht der Formationsabschnitt 100 für variable Blöcke durch eine Abfolge an Blockformationsstufen, von denen lediglich drei 111, 112 und 119 exemplarisch darin gezeigt sind, welche den aktuellen Frame auf einer Leitung 12 in eine Anzahl Suchblöcke aufteilen, wie in Fig. 3A gezeigt. Bei jeder der Blockformationsstufen 111, 112, und 119 wird ein Suchblock zunehmend um einen Schritt von einem Pixel von 0 bis N in seiner horizontalen und seiner vertikalen Richtung vergrößert. Genauer gesagt, erzeugt eine erste Blockformationsstufe 111 Suchblöcke in einem H · V Pixelmuster, eine zweite Blockformationsstufe 112 vergrößert die Suchblöcke in das (H+1) x (V+1) Pixelmuster; und eine letzte Blockformationsstufe 119 erzeugt die Suchblöcke in dem (H+N) x (V+N) Pixelmuster. Die erzeugten und von den Blockformationsstufen 111 bis 119 vergrößerten Suchblöcke werden einer Auswahleinheit 160 für variable Blöcke und einer Abfolge an Varianzdetektoren 121 bis 129 zugeführt, welche für diese Suchblöcke die Varianzen berechnen, um jeweils das Vorliegen einer Kante darin zu erfassen. Jede der von den Varianzdetektoren 121 bis 129 berechneten Varianzen kann wie folgt definiert werden: Fig. 2 shows a detailed block diagram of the variable block formation section 100. To select a search block representing the plain image, the variable block formation section 100 goes through a sequence of block formation stages, only three of which 111, 112 and 119 are shown by way of example therein, which divide the current frame on a line 12 into a number of search blocks as shown in Fig. 3A. At each of the block formation stages 111, 112, and 119, a search block is progressively enlarged by a step of one pixel from 0 to N in its horizontal and vertical directions. More specifically, a first block formation stage 111 produces search blocks in an H x V pixel pattern, a second block formation stage 112 enlarges the search blocks into the (H+1) x (V+1) pixel pattern; and a final block formation stage 119 generates the search blocks in the (H+N) x (V+N) pixel pattern. The search blocks generated and enlarged by the block formation stages 111 to 119 are fed to a variable block selection unit 160 and a sequence of variance detectors 121 to 129, which calculate the variances for these search blocks in order to detect the presence of an edge therein. Each of the variances calculated by the variance detectors 121 to 129 can be defined as follows:

wobei war die Varianz eines vergrößerten Suchblockes darstellt; EH · EV die Größe eines vergrößerten Blockes ist; I(i,j) ein Luminanzpegel bei einer Pixelkoordinate (i, j) in dem vergrößerten Block ist, und Mittelwert den mittleren Luminanzpegel für Pixel in dem vergrößerten Block darstellt.where war represents the variance of an enlarged search block; EH · EV is the size of an enlarged block; I(i,j) is a luminance level at a pixel coordinate (i, j) in the enlarged block, and mean represents the average luminance level for pixels in the enlarged block.

Der mittlere Luminanzpegel ist wie folgt definiert: The mean luminance level is defined as follows:

All die berechneten Varianzen der vergrößerten Suchblöcke von den Varianzdetektoren 121 bis 129 werden einer Varianzauswahleinheit 150 zugeführt. Die Varianzauswahleinheit 150 vergleicht die Varianzen der vergrößerten Suchblöcke mit einem vorbestimmten Schwellwert. Gemäß der Erfindung wird der vorbestimmte Schwellwert so gewählt, daß er einen Wert größer als und nahe der Varianz des Suchblockes hat, welcher das schlichte Bild darstellt. Dementsprechend wählt die Varianzauswahleinheit 150 eine Varianz aus, welche dem Schwellwert genügt, und erzeugt ein die ausgewählte Varianz anzeigendes Auswahlsignal an die Auswahleinheit 160 für variable Blöcke. Die Varianz kann derart ausgewählt werden, daß die ausgewählte Varianz größer als der Schwellwert ist und daß die Größe eines entsprechenden vergrößerten Suchblocks die kleinste unter den vergrößerten Suchblöcken ist, deren Varianzen größer als ein Schwellwert sind. Die Auswahleinheit 160 für variable Blöcke, die ein herkömmlicher Multiplexer sein kann, wählt in Antwort auf das Auswahlsignal den Suchblock aus, welcher der ausgewählten Varianz entspricht. Der ausgewählte vergrößerte Suchblock und dessen Größe werden von der Auswahleinheit 160 für variable Blöcke dem Blockvergleichsabschnitt 41 bis 49 über eine Leitun% L110 und dem Suchbereichsformationsabschnitt 10 und Formationsabschnitten 21 bis 29 für in Frage kommende Blöcke über eine Leitung L120 bereitgestellt, wie in Fig. 1 gezeigt.All the calculated variances of the enlarged search blocks from the variance detectors 121 to 129 are supplied to a variance selection unit 150. The variance selection unit 150 compares the variances of the enlarged search blocks with a predetermined threshold. According to the invention, the predetermined threshold is selected to have a value larger than and close to the variance of the search block representing the plain image. Accordingly, the variance selection unit 150 selects a variance satisfying the threshold and generates a selection signal indicative of the selected variance to the variable block selection unit 160. The variance may be selected such that the selected variance is larger than the threshold and that the size of a corresponding enlarged search block is the smallest among the enlarged search blocks whose variances are larger than a threshold. The variable block selection unit 160, which may be a conventional multiplexer, selects the search block corresponding to the selected variance in response to the selection signal. The selected enlarged search block and its size are provided from the variable block selection unit 160 to the block comparison section 41 to 49 via a line L110 and to the search range formation section 10 and candidate block formation sections 21 to 29 via a line L120, as shown in Fig. 1.

Mit Bezug auf Fig. 1 wird der in einem Speicher (nicht dargestellt) gespeicherte vorhergehende Frame zwischenzeitlich einem Suchbereichsformationsabschnitt 10 über eine Leitung 13 zugeführt. In Antwort auf die Größe des ausgewählten vergrößerten Suchblockes definiert der Suchbereichsformationsabschnitt 10 einen im allgemeinen grö ßeren bzw. großen Suchbereich des vorhergehenden Frames, wobei die Suche oder der Vergleich durchgeführt wird.Referring to Fig. 1, the previous frame stored in a memory (not shown) is temporarily supplied to a search area formation section 10 via a line 13. In response to the size of the selected enlarged search block, the search area formation section 10 defines a generally larger larger or large search area of the previous frame where the search or comparison is performed.

Nachdem der Suchbereich bei dem Suchbereichsformationsabschnitt 10 bestimmt worden ist, werden die Suchbereichsdaten ebenfalls einer entsprechenden Anzahl an Formationsabschnitten für in Frage kommende Blöcke zugeführt, von denen lediglich drei 21, 22 und 29 beispielhaft in Fig. 1 dargestellt sind. Bei jedem Formationsabschnitt für in Frage kommende Blöcke wird in Antwort auf die Größe des ausgewählten vergrößerten Suchblockes ein in Frage kommender Block an Pixeln aus dem Suchbereich erzeugt, während der Suchblock durch den Suchbereich läuft, indem er in der oberen linken Position startet und sich horizontal um eine Pixelposition pro Zeit bewegt und anschließend vertikal nach unten durch den Suchbereich um eine Abtastlinie pro Zeit bewegt, bis er schließlich die untere rechte Position innerhalb des Suchbereiches erreicht. All die möglichen in Frage kommenden Blöcke mit der Größe des ausgewählten vergrößerten Suchblockes werden innerhalb des bestimmten Suchbereiches gebildet. Anschließend wird die jedem in Frage kommenden Block entsprechende relative Verschiebung von dem Ort des von dem Formationsabschnitt 100 für variable Blöcke bereitgestellten Suchblockes abgeleitet und anschließend einem Multiplexer 60 über Leitungen 31 bis 39 als ein Bewegungsvektor dieses in Frage kommenden Blockes bereitgestellt.After the search area has been determined at the search area formation section 10, the search area data is also supplied to a corresponding number of candidate block formation sections, only three of which 21, 22 and 29 are shown by way of example in Fig. 1. At each candidate block formation section, a candidate block of pixels is generated from the search area in response to the size of the selected enlarged search block as the search block passes through the search area by starting at the upper left position and moving horizontally one pixel position at a time and then moving vertically down through the search area one scan line at a time until it finally reaches the lower right position within the search area. All of the possible candidate blocks having the size of the selected enlarged search block are formed within the determined search area. Then, the relative displacement corresponding to each candidate block is derived from the location of the search block provided by the variable block formation section 100 and then provided to a multiplexer 60 via lines 31 to 39 as a motion vector of that candidate block.

Die Pixeldaten jedes in Frage kommenden Blockes werden ebenfalls von jedem der Formationsabschnitte 21 bis 29 für in Frage kommende Blöcke jedem der Blockvergleichsabschnitte 41 bis 49 bereitgestellt. Bei jedem der Blockvergleichsabschnitte 41 bis 49 wird eine Fehlerfunktion zwischen dem Suchblock von dem Formationsabschnitt 100 für variable Blöcke und dem in Frage kommenden Block von jedem der Formationsabschnitte 21 bis 29 für in Frage kommende Blöcke berechnet. Herkömmlicherweise wird ein Vergleich des Luminanzpegels oder der Lichtintensität zwischen entsprechenden Pixeln in dem Suchblock und dem in Frage kommenden Block durchgeführt, um die Fehlerfunktion für diesen in Frage kommenden Block zu liefern. Die Fehlerfunktion gibt den Ähnlichkeitsgrad zwischen dem Suchblock und dem ausgewählten in Frage kommenden Block an.The pixel data of each candidate block is also provided from each of the candidate block formation sections 21 to 29 to each of the block comparison sections 41 to 49. At each of the block comparison sections 41 to 49, an error function is calculated between the search block from the variable block formation section 100 and the candidate block from each of the candidate block formation sections 21 to 29. Conventionally, a comparison of the luminance level or light intensity between corresponding pixels in the search block and the candidate block to provide the error function for that candidate block. The error function indicates the degree of similarity between the search block and the selected candidate block.

All die Fehlerfunktionen von den Blockvergleichsabschnitten 41 bis 49 werden einem Minimalfehlerdetektor 50 zugeführt. Der Minimalfehlerdetektor 50 vergleicht die Fehlerfunktionen, um eine Fehlerfunktion mit einem kleinsten Fehler auszuwählen.All the error functions from the block comparison sections 41 to 49 are fed to a minimum error detector 50. The minimum error detector 50 compares the error functions to select an error function with a smallest error.

Der Minimalfehlerdetektor 50 gibt an die Bewegungsvektorauswahleinheit 60 ein Auswahlsignal aus, welches den Block angibt, der der minimalen Fehlerfunktion entspricht. Die Bewegungsvektorauswahleinheit 60, die ein herkömmlicher Multiplexer ist, wählt in Antwort auf das Auswahlsignal den Verschiebungsvektor des in Frage kommenden Blockes aus, der der minimalen Fehlerfunktion entspricht. Wie oben beschrieben, ist, falls ein in Frage kommender Block die minimale Fehlerfunktion aufweist, dieser in Frage kommender Block dem Suchblock am ähnlichsten; folglich wird der Verschiebungsvektor des in Frage kommenden Blockes als der Bewegungsvektor ausgewählt.The minimum error detector 50 outputs to the motion vector selection unit 60 a selection signal indicating the block that corresponds to the minimum error function. The motion vector selection unit 60, which is a conventional multiplexer, selects the displacement vector of the candidate block that corresponds to the minimum error function in response to the selection signal. As described above, if a candidate block has the minimum error function, that candidate block is most similar to the search block; thus, the displacement vector of the candidate block is selected as the motion vector.

In diesem Zusammenhang wird die Bewegungskompensation, die in einem Sender und einem Empfänger durchgeführt ist, bezüglich des Suchblockes, anstelle des vergrößerten Blockes erreicht, was hauptsächlich für die genaue Erfassung einer Bewegungsverschiebung zwischen einem Suchblock und einem in Frage kommenden Block verwendet wird.In this context, the motion compensation, performed in a transmitter and a receiver, is achieved with respect to the search block, instead of the enlarged block, which is mainly used for the accurate detection of a motion shift between a search block and a candidate block.

Claims (6)

1. Vorrichtung zum Erfassen eines Bewegungsvektors eines Suchblockes (S7; S14) eines aktuellen Frames, indem ein Blockvergleichs-Bewegungsabschätzungsansatz zwischen dem aktuellen Frame und einem vorhergehenden Frame von Videosignalen durchgeführt wird, wobei der aktuelle Frame in eine Anzahl an Suchblöcken (S7; S14) aus H · V Pixeln aufgeteilt wird und der vorhergehende Frame in eine entsprechende Anzahl an Suchbereichen aufgeteilt wird, wobei jeder Suchbereich eine Vielzahl an in Frage kommenden Blöcken umfaßt, dadurch gekennzeichnet, daß die Vorrichtung folgendes umfaßt:1. Apparatus for detecting a motion vector of a search block (S7; S14) of a current frame by performing a block comparison motion estimation approach between the current frame and a previous frame of video signals, the current frame being divided into a number of search blocks (S7; S14) of H x V pixels and the previous frame being divided into a corresponding number of search areas, each search area comprising a plurality of candidate blocks, characterized in that the apparatus comprises: a) ein Mittel (100) zum Erfassen eines vergrößerten Suchblockes (E7; E14) für den Suchblock (S7; S14), falls der letztere ein Block mit einem schlichten Bild ohne eine Kante eines Objektes innerhalb des aktuellen Frames ist, wobei der vergrößerte Suchblock (E7; E14) erfaßt wird, indem die Grenze des Suchblockes (S7; 514) vergrößert wird, bis der letztere eine Kante darin aufweist und dabei (H+i) x (V+i) Pixel hat, wobei i eine nicht-negative ganze Zahl ist;a) means (100) for detecting an enlarged search block (E7; E14) for the search block (S7; S14) if the latter is a block with a plain image without an edge of an object within the current frame, the enlarged search block (E7; E14) being detected by enlarging the boundary of the search block (S7; S14) until the latter has an edge therein and has (H+i) x (V+i) pixels, where i is a non-negative integer; b) ein Mittel (10) zum Erzeugen eines Suchbereiches entsprechend dem vergrößerten Suchblock (E7; E14);b) means (10) for generating a search area corresponding to the enlarged search block (E7; E14); c) Mittel (21-29) zum Bereitstellen von in Frage kommenden Blöcken aus (H+i) x (V+i) Pixeln aus dem Suchbereich;c) means (21-29) for providing candidate blocks of (H+i) x (V+i) pixels from the search area; d) Mittel (41-49, 50, 60) zum Bewegungsabschätzen des vergrößerten Suchblockes (E7; E14) bezüglich der in Frage kommenden Blöcke aus (H+i) x (V+i) Pixel, um den Bewegungsvektor für den in der Bewegung zu kompensierenden Suchblock (S7; S14) bereitzustellen, wobei der Bewegungsvektor die Verschiebung an Pixeln zwischen dem vergrößerten Suchblock (E7; E14) und einem in Frage kommenden Block darstellt, der eine minimale Fehlerfunktion in dem Blockvergleichsalgorithmus ergibt.d) means (41-49, 50, 60) for estimating the movement of the enlarged search block (E7; E14) with respect to the candidate blocks of (H+i) x (V+i) pixels to provide the motion vector for the search block (S7; S14) to be motion compensated, the motion vector representing the displacement in pixels between the enlarged search block (E7; E14) and a candidate block that yields a minimum error function in the block comparison algorithm. 2. Vorrichtung nach Anspruch 1, bei welcher das Mittel (100) zum Erfassen des vergrößerten Suchblocks (E7; E14) folgendes aufweist:2. Device according to claim 1, wherein the means (100) for detecting the enlarged search block (E7; E14) comprises: a1) Mittel (111-119) zum Vergrößern des Suchblocks (E7; E14) auf einer Basis von einem Pixel in einer horizontalen und einer vertikalen Richtung, um dadurch eine Anzahl an N+1 vergrößerten Suchblöcken (E7; E14) zu erzeugen, wobei die vergrößerten Suchblöcke (E7; E14) Größen haben, die von H · V Pixeln bis (H+N) x (V+N) Pixeln reichen; wobei N eine positive ganze Zahl ist;a1) means (111-119) for enlarging the search block (E7; E14) on a one pixel basis in a horizontal and a vertical direction, to thereby produce a number of N+1 enlarged search blocks (E7; E14), the enlarged search blocks (E7; E14) having sizes ranging from H x V pixels to (H+N) x (V+N) pixels, wherein N is a positive integer; a2) Mittel (121-129) zum Ableiten von Varianzen für jeden der vergrößerten Suchblöcke (E7; E14); unda2) means (121-129) for deriving variances for each of the enlarged search blocks (E7; E14); and a3) Mittel (150, 160) zum Bestimmen, ob ein vergrößerter Suchblock (E7; E14) die Kante darin aufweist, basierend auf dessen Varianz, und dabei den vergrößerten Suchblock (E7; E14) aus (H+i) · (V+i) Pixeln als einen vergrößerten Suchblock (E7; E14), der die Kante enthält, auswählen.a3) means (150, 160) for determining whether an enlarged search block (E7; E14) has the edge therein based on its variance, and thereby selecting the enlarged search block (E7; E14) of (H+i) · (V+i) pixels as an enlarged search block (E7; E14) containing the edge. 3. Vorrichtung nach Anspruch 2, bei welcher die Bestimmungsmittel (150, 160) folgendes umfassen:3. Device according to claim 2, wherein the determining means (150, 160) comprise: a31) ein Mittel (150) zum Vergleichen der Varianz mit einem vorbestimmten Schwellwert, um dadurch ein Auswahlsignal zu erzeugen, das den vergrößerten Suchblock (E7; E14) aus (H+i) x (V+i) Pixeln angibt; unda31) means (150) for comparing the variance with a predetermined threshold value to thereby generate a selection signal indicating the enlarged search block (E7; E14) of (H+i) x (V+i) pixels ; and a32) ein Mittel (160) zum Auswählen des vergrößerten Suchblockes (E7; E14) aus (H+i) · (V+i) Pixeln unter der Anzahl an N+1 vergrößerten Suchblöcken.a32) means (160) for selecting the enlarged search block (E7; E14) of (H+i) · (V+i) pixels among the number of N+1 enlarged search blocks. 4. Vorrichtung nach Anspruch 3, bei welcher der vergrößerte Suchblock (E7; E14) aus (H+i) · (V+i) Pixeln einem kleinsten vergrößerten Suchblock unter den vergrößerten Suchblöcken entspricht, die Varianzen aufweisen, die größer als der vorbestimmte Schwellwert sind.4. The apparatus of claim 3, wherein the enlarged search block (E7; E14) of (H+i) · (V+i) pixels corresponds to a smallest enlarged search block among the enlarged search blocks having variances greater than the predetermined threshold. 5. Vorrichtung nach einem der Ansprüche 2 bis 4, bei welchem eine Varianz wie folgt definiert ist: 5. Device according to one of claims 2 to 4, in which a variance is defined as follows: wobei war die Varianz eines vergrößerten Suchblocks (E7; E14) darstellt; EH · EV die Größe des expandierten Suchblockes (E7; E14) ist; I(i,j) ein Luminanzpegel eines bei (i, j) in dem vergrößerten Suchblock (E7; E14) angeordneten Pixels ist, i und j positive ganze Zahlen sind, die jeweils eine horizontale und eine vertikale Koordinate angeben; und Mittelwert den mittleren Luminanzpegel für den vergrößerten Suchblock (E7; E14) darstellt.where war represents the variance of an expanded search block (E7; E14); EH · EV is the size of the expanded search block (E7; E14); I(i,j) is a luminance level of a pixel located at (i, j) in the expanded search block (E7; E14), i and j are positive integers indicating a horizontal and a vertical coordinate, respectively; and mean represents the mean luminance level for the expanded search block (E7; E14). 6. Vorrichtung nach Anspruch 5, bei welcher der mittlere Luminanzpegel für den vergrößerten Suchblock wie folgt definiert ist: 6. Apparatus according to claim 5, wherein the average luminance level for the enlarged search block is defined as follows:
DE1994623968 1994-12-30 1994-12-30 Device for estimating motion in accordance with blocks of variable size Expired - Fee Related DE69423968T2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP94120946A EP0720382B1 (en) 1994-12-30 1994-12-30 Variable size block matching motion estimation apparatus

Publications (2)

Publication Number Publication Date
DE69423968D1 DE69423968D1 (en) 2000-05-18
DE69423968T2 true DE69423968T2 (en) 2000-07-27

Family

ID=8216582

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1994623968 Expired - Fee Related DE69423968T2 (en) 1994-12-30 1994-12-30 Device for estimating motion in accordance with blocks of variable size

Country Status (1)

Country Link
DE (1) DE69423968T2 (en)

Also Published As

Publication number Publication date
DE69423968D1 (en) 2000-05-18

Similar Documents

Publication Publication Date Title
DE69413148T2 (en) Method for determining motion vectors in small picture segments in television pictures
DE69523431T2 (en) Method for determining motion vectors for use in a coding system based on segmentation
DE102011056982B4 (en) Digital image stabilization with adaptive filtering
DE4411179B4 (en) image capture device
DE69524235T2 (en) METHOD AND DEVICE FOR GLOBAL-TO-LOCAL BLOCK MOVEMENT ESTIMATION
DE69031055T2 (en) Motion-dependent video signal processing
EP0293644B1 (en) Method for determining movement vector fields from digital image sequences
DE69932489T2 (en) Method and system for feature-based real-time motion analysis for selecting keyframes from a video sequence
DE69418244T2 (en) Video noise reduction system using multi-frame motion estimation, suppression of deviations and path correction
DE69804644T2 (en) SYSTEM FOR CONVERTING INTERLOCK VIDEO TO PROGRESSIVE VIDEO WITH EDGE CORRELATION
DE69314630T2 (en) METHOD FOR ADAPTIVELY ESTIMATING UNWANTED IMAGE SHAKERS IN IMAGE SEQUENCES OF DIGITAL TELEVISION SIGNALS
DE69529622T2 (en) IMAGE PROCESSING SYSTEM BASED ON MOSAICS AND METHOD FOR PROCESSING IMAGES
DE69734855T2 (en) Apparatus and method for extracting an object in an image
EP0645037B1 (en) Process for detecting changes in moving images
DE69230115T2 (en) Evaluation device and method used for a device for the detection of motion vectors
DE69512950T2 (en) Method for the detection of identical partial images
DE19618984B4 (en) Method for motion evaluation in image data and apparatus for carrying out this method
DE19744898A1 (en) Signal adaptive filtering method and signal adaptive filter
DE69021431T2 (en) Motion-dependent video signal processing.
EP2490448A1 (en) Encoding method and image encoding device for compressing an image sequence
DE60302946T2 (en) Image segmentation method and apparatus for MRC-based presentation of documents
DE102010046259A1 (en) Image frequency conversion using motion estimation and compensation
DE60209773T2 (en) DEVICE AND METHOD FOR DETECTING COVER
DE102013205854A1 (en) Temporary coherence on detection of a clear path
DE69514704T2 (en) Method and device for the detection of interline scanning

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee