DE102008054503A1 - Method for motion estimation at image edges - Google Patents

Method for motion estimation at image edges Download PDF

Info

Publication number
DE102008054503A1
DE102008054503A1 DE102008054503A DE102008054503A DE102008054503A1 DE 102008054503 A1 DE102008054503 A1 DE 102008054503A1 DE 102008054503 A DE102008054503 A DE 102008054503A DE 102008054503 A DE102008054503 A DE 102008054503A DE 102008054503 A1 DE102008054503 A1 DE 102008054503A1
Authority
DE
Germany
Prior art keywords
image
edge
image block
vector
vector component
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.)
Ceased
Application number
DE102008054503A
Other languages
German (de)
Inventor
Peter Rieder
Günter Scheffler
Christian Tuschen
Marko Hahn
Markus Schu
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.)
Entropic Communications LLC
Original Assignee
Trident Microsystems Far East Ltd Cayman Islands
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 Trident Microsystems Far East Ltd Cayman Islands filed Critical Trident Microsystems Far East Ltd Cayman Islands
Priority to DE102008054503A priority Critical patent/DE102008054503A1/en
Priority to PCT/EP2009/066751 priority patent/WO2010066801A1/en
Publication of DE102008054503A1 publication Critical patent/DE102008054503A1/en
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/55Motion estimation with spatial constraints, e.g. at image or region borders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20004Adaptive image processing
    • G06T2207/20012Locally adaptive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows

Abstract

Beschrieben wird ein Verfahren zum Testen eines Bewegungsvektors zu einem ersten Bildblock (B1(i)) eines ersten Bildes (F(i)) einer Bildfolge, der in einem ersten Randbereich (R1) des ersten Bildes (F(i)) angeordnet ist, wobei der erste Randbereich (R1) sich an einen ersten Rand des Bildes anschließt und wobei der Bewegungsvektor (v1) eine erste senkrecht zu dem ersten Rand verlaufende Vektorkomponente (v1) und eine zweite Vektorkomponente (v1) aufweist, wobei das Verfahren aufweist: Ermitteln eines zweiten Bildblocks (B2(i)) in dem ersten Bild (F(i)), der gegenüber dem ersten Bildblock (B1(i)) in der senkrecht zu dem ersten Rand (R1) verlaufenden Richtung um die erste Vektorkomponente (v1x) in einer Richtung weg von dem ersten Bildrand verschoben ist, wenn die erste Vektorkomponente eine vorgegebene Richtung besitzt; Ermitteln eines dritten Bildblocks (B3(i)) in einem dem ersten Bild (F(i)) zeitlich vorausgehenden (F(i-1)) oder zeitlich nachfolgenden (F(i+1)) Bild, der gegenüber dem zweiten Bildblock um den ersten Bewegungsvektor (v1) verschoben ist; Berechnen eines Abstandsmaßes zwischen dem Inhalt des zweiten und des dritten Bildblocks (B2(i), B3(i)).A method is described for testing a motion vector to a first image block (B1 (i)) of a first image (F (i)) of an image sequence arranged in a first edge region (R1) of the first image (F (i)). wherein the first edge region (R1) adjoins a first edge of the image and wherein the motion vector (v1) comprises a first vector component (v1) perpendicular to the first edge and a second vector component (v1), the method comprising: determining a second image block (B2 (i)) in the first image (F (i)) opposite to the first image block (B1 (i)) in the direction perpendicular to the first edge (R1) about the first vector component (v1x) in FIG a direction away from the first image edge is shifted when the first vector component has a predetermined direction; Determining a third image block (B3 (i)) in a first (F (i)) temporally preceding (F (i-1)) or temporally subsequent (F (i + 1)) image which is opposite to the second image block the first motion vector (v1) is shifted; Calculating a distance measure between the contents of the second and third picture blocks (B2 (i), B3 (i)).

Description

Die vorliegende Erfindung betrifft ein Verfahren zur Bewegungsschätzung an Bildrändern.The The present invention relates to a motion estimation method at picture edges.

Eine Bewegungsschätzung umfasst in der Bildverarbeitung die Ermittlung von Bewegungsinformationen zu einzelnen Bildblöcken zeitlich aufeinanderfolgender Bilder einer Bildfolge. Die Bewegungsinformation zu einem Bildblock eines ersten Bildes gibt an, in welcher Richtung sich der Bildinhalt des Bildblocks zwischen dem ersten Bild und einem zeitlich vorangehenden oder zeitlich nachfolgenden zweiten Bild verschiebt. Diese Bewegungsinformation wird üblicherweise in Form von sogenannten Bewegungsvektoren wiedergegeben. Die durch die Bewegungsschätzung erhaltene Bewegungsinformation kann zu verschiedenen Zwecken genutzt werden, wie z. B. zur Zwischenbildinterpolation, zur Zwischenzeileninterpolation, zur Komprimierung von Bilddaten, usw.A Motion estimation includes image processing Determination of movement information for individual image blocks temporally successive images of a sequence of images. The movement information to an image block of a first image indicates in which direction the image content of the image block between the first image and a time preceding or temporally subsequent second Image shifts. This movement information is usually reproduced in the form of so-called motion vectors. By The motion estimation obtained motion information can be used for various purposes, such. For inter-frame interpolation, for inter-line interpolation, for the compression of image data, etc.

Es gibt Bewegungsschätzverfahren, wie z. B. rekursive Bewegungsschätzverfahren, bei denen den einzelnen Bildblöcken, deren Bewegungsinformation ermittelt werden soll, eine Anzahl Testvektoren oder Kandidatenvektoren zugeordnet werden. Für jeden der Testvektoren, die einem ersten Bildblock zugeordnet sind wird ein Block-Matching-Verfahren durchgeführt, um zu jedem dieser Testvektoren ein Abstandsmaß zu ermitteln. Das Abstandsmaß für einen Testvektor ist ein Maß für die Übereinstimmung bzw. für den Unterschied zwischen dem Bildinhalt des ersten Bildblocks in dem ersten Bild und einem zweiten Bildblock in dem zweiten Bild. Die Position des zweiten Bildblocks ist dabei um den Testvektor gegenüber der Position des ersten Bildblocks verschoben. Als Bewegungsvektor für den ersten Bildblock wird bei einem solchen Verfahren der Testvektor ausgewählt, für den das ”beste” Abstandsmaß ermittelt wurde. Als Testvektoren für den ersten Bildblock werden bei rekursiven Schätzverfahren beispielsweise die Bewegungsvektoren solcher Bildblöcke ausgewählt, die räumlich und/oder zeitlich benachbart zu dem ersten Bildblock angeordnet sind.It gives motion estimation methods, such. B. recursive motion estimation techniques, where the individual image blocks whose motion information is to be determined, a number of test vectors or candidate vectors be assigned. For each of the test vectors, the one associated with the first image block is a block matching process to give a measure of distance to each of these test vectors determine. The distance measure for a test vector is a measure of the agreement or for the difference between the picture content of the first Image blocks in the first image and a second image block in the second picture. The position of the second image block is around the test vector shifted from the position of the first image block. As a motion vector for the first image block is at a such method the test vector is selected for which determines the "best" distance measure has been. As test vectors for the first image block in recursive estimation, for example, the motion vectors such image blocks selected spatially and / or temporally adjacent to the first image block are.

Liegt der erste Bildblock in der Nähe eines Bildrandes, so kann es abhängig von der Orientierung und der Länge des Testvektors Szenarien geben, bei denen der zweite Bildblock außerhalb des Bildes liegt bzw. bei denen der Testvektor über den Bildrand hinauszeigt. Die Ermittlung eines Abstandsmaßes zu dem Testvektor ist in diesem Fall nicht möglich.Lies the first image block near a picture border, so can it depends on the orientation and the length of the test vector give scenarios where the second image block outside of the image or in which the test vector is over pointing out the edge of the picture. The determination of a distance measure to the test vector is not possible in this case.

Die WO 2007/119198 beschreibt ein Verfahren zur Bewegungsschätzung an Bildrändern. Bei diesem Verfahren wird ermittelt, ob ein Testvektor, der zu einem ersten Bildblock eines ersten Bildes getestet werden soll, auf einen zweiten Bildblock zeigt, der außerhalb des zweiten Bildes liegt. Falls ja, wird das Blockmatching-Verfahren auf einen verschobenen ersten Bildblock und einen verschobenen zweiten Bildblock angewendet, die um den Testvektor gegeneinander versetzt sind und die so gegenüber der Position des ersten Bildblocks verschoben sind, dass der zweite Bildblock innerhalb des zweiten Bildes liegt. Eine Verschiebung erfolgt bei diesem Verfahren insbesondere so weit, dass der zweite Bildblock gerade innerhalb des zweiten Bildes liegt.The WO 2007/119198 describes a method for motion estimation at image edges. In this method, it is determined whether a test vector to be tested for a first image block of a first image points to a second image block that is outside the second image. If so, the block matching method is applied to a shifted first image block and a shifted second image block which are offset from each other by the test vector and which are shifted from the position of the first image block such that the second image block is within the second image. In this method, a shift takes place in particular so far that the second image block lies just within the second image.

Bei dem bekannten Verfahren besteht die Gefahr, dass Bildblöcke, die im Randbereich des zweiten Bildes liegen, überproportional bei der Bewegungsschätzung berücksichtigt werden.at the known method involves the danger that picture blocks, which are located in the edge region of the second image, disproportionately be considered in the motion estimation.

Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein verbessertes Verfahren für eine Bewegungsschätzung bzw. zum Testen von Bewegungsvektoren für Bildblöcke im Randbereich eines Bildes zur Verfügung zu stellen.Of the The present invention is based on the object, an improved Method for a motion estimation or for Testing motion vectors for image blocks in the To provide border area of an image.

Diese Aufgabe wird durch ein Verfahren nach Anspruch 1 gelöst. Ausgestaltungen und Weiterbildungen sind Gegenstand von Unteransprüchen.These The object is achieved by a method according to claim 1. Embodiments and developments are the subject of dependent claims.

Die Erfindung betrifft ein Verfahren zum Testen eines Bewegungsvektors zu einem ersten Bildblock eines ersten Bildes einer Bildfolge, der in einem ersten Randbereich des Bildes angeordnet ist, wobei der erste Randbereich sich an einen ersten Rand des Bildes anschließt und wobei der Bewegungsvektor eine erste senkrecht zu dem ersten Rand verlaufende Vektorkomponente und eine zweite Vektorkomponente aufweist. Bei dem Verfahren ist vorgesehen: Auswerten der ersten Vektorkomponente des Bewegungsvektors und Ermitteln eines zweiten Bildblocks in dem ersten Bild, der gegenüber dem ersten Bildblock um die erste Vektorkomponente in einer Richtung weg von dem ersten Bildrand verschoben ist, wenn die erste Vektorkomponente eine erste Richtung besitzt; Ermitteln eines dritten Bildblocks in einem dem ersten Bild zeitlich vorausgehenden oder zeitlich nachfolgenden Bild, der gegenüber dem zweiten Bildblock um den ersten Bewegungsvektor verschoben ist; Berechnen eines Abstandsmaßes zwischen dem Inhalt des zweiten und des dritten Bildblocks.The The invention relates to a method for testing a motion vector to a first image block of a first image of a sequence of images, the is arranged in a first edge region of the image, wherein the first edge region adjoins a first edge of the image and wherein the motion vector is a first perpendicular to the first Edge extending vector component and a second vector component having. In the method is provided: evaluation of the first Vector component of the motion vector and determining a second Picture block in the first picture, opposite to the first one Image block around the first vector component in a direction away from the first image edge is shifted when the first vector component has a first direction; Determine a third image block in a temporally preceding or later in the first image Image opposite the second image block around the first Movement vector is moved; Calculating a distance measure between the contents of the second and third image blocks.

Die Ermittlung des zweiten Bildblocks, der in dem ersten Bild liegt und der gegenüber dem ersten Bildblock verschoben ist, und das Durchführen eines Bildvergleichs zwischen dem zweiten Bildblock und dem dritten Bildblock, der in dem zweiten Bild liegt und der gegenüber dem zweiten Bildblock um den Testvektor versetzt angeordnet ist, erfolgt lediglich abhängig von der Richtung der ersten Vektorkomponente, nicht jedoch abhängig von der Länge dieser ersten Vektorkomponente.The Determining the second image block that lies in the first image and which is shifted from the first image block, and performing an image comparison between the second Image block and the third image block, which lies in the second image and which is offset from the second image block by the test vector is arranged, takes place only depending on the direction the first vector component, but not dependent on the length of this first vector component.

Das zweite Bild kann zeitlich vor oder zeitlich nach dem ersten Bild liegen. Liegt das zweite Bild zeitlich vor dem ersten Bild, so verläuft die erste Bildrichtung von dem ersten Bildrand weg; und liegt das zweite Bild zeitlich nach dem ersten Bild, so verläuft die erste Bildrichtung zu dem ersten Bildrand hin.The second picture may be timed before or after the first picture lie. If the second picture is temporally before the first picture, then runs the first image direction away from the first image edge; and lies the second Picture temporally after the first picture, so runs the first Image direction towards the first image edge.

Das Bild kann außer dem ersten Randbereich einen zweiten Randbereich besitzen, der sich an einen senkrecht zu dem ers ten Rand verlaufenden zweiten Rand anschließt. Für Bildblöcke, die in diesem zweiten Randbereich liegen, wird die zweite Vektorkomponente des Testvektors ausgewertet.The Image can have a second border area in addition to the first border area own, which extend to a perpendicular to the ers th edge second edge connects. For image blocks, which lie in this second edge region becomes the second vector component evaluated the test vector.

Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend anhand von Figuren näher erläutert. Die Figuren dienen zur Erläuterung des Grundprinzips der Erfindung, so dass in den Figuren lediglich die zum Verständnis dieses Grundprinzips notwendigen Aspekte dargestellt sind. Die Figuren sind notwendigerweise maßstabsgerecht. In den Figuren bezeichnen, sofern nicht anders angegeben, gleiche Bezugszeichen gleiche Aspekte mit gleicher Bedeutung.embodiments The present invention will be described below with reference to FIGS explained in more detail. The figures are for explanation the basic principle of the invention, so that in the figures only the aspects necessary for understanding this basic principle are shown. The figures are necessarily to scale. In the figures, unless stated otherwise, denote the same Reference numerals same aspects with the same meaning.

1 veranschaulicht grundsätzliche Aspekte verschiedener Bewegungsschätzverfahren. 1 illustrates basic aspects of various motion estimation techniques.

2 veranschaulicht ein Beispiel eines Bewegungsschätzverfahrens für einen Bildblock, der in einem ersten Randbereich eines Bildes angeordnet ist. 2 Figure 12 illustrates an example of a motion estimation method for an image block located in a first edge area of an image.

3 veranschaulicht einzelne Verfahrensschritte eines erfindungsgemäßen Verfahrens anhand eines Ablaufdiagramms. 3 illustrates individual process steps of a method according to the invention with reference to a flowchart.

4 veranschaulicht Einzelheiten des Verfahrens gemäß 2 anhand einer Tabelle. 4 illustrates details of the method according to 2 based on a table.

5 veranschaulicht ein erstes Beispiel eines Bewegungsschätzverfahrens für einen Bildblock, der in einem ersten und einem zweiten Randbereich eines Bildes angeordnet ist. 5 Fig. 12 illustrates a first example of a motion estimation method for an image block arranged in a first and a second edge area of an image.

6 veranschaulicht Einzelheiten des Verfahrens gemäß 5 anhand einer Tabelle. 6 illustrates details of the method according to 5 based on a table.

7 veranschaulicht ein zweites Beispiel eines Bewegungsschätzverfahrens für einen Bildblock, der in einem ersten Randbereich eines Bildes angeordnet ist. 7 Figure 12 illustrates a second example of a motion estimation method for an image block located in a first edge area of an image.

8 veranschaulicht ein zweites Beispiel eines Bewegungsschätzverfahrens für einen Bildblock, der in einem ersten und einem zweiten Randbereich eines Bildes angeordnet ist. 8th Fig. 12 illustrates a second example of a motion estimation method for an image block arranged in a first and a second edge area of an image.

9 veranschaulicht Einzelheiten des Verfahrens gemäß 8 anhand einer Tabelle. 9 illustrates details of the method according to 8th based on a table.

1 zeigt schematisch zeitlich aufeinanderfolgende Bilder F(i – 1), F(i), F(i + 1) einer Bildfolge. Von dieser Bildfolge sei zur weiteren Erläuterung das Bild F(i) an der zeitlichen Position i näher betrachtet. Dieses Bild F(i) ist in eine Anzahl von Bildblöcken unterteilt, die rasterartig bzw. matrixartig angeordnet sind. Jeder dieser Bildblöcke umfasst eine Anzahl matrixartig angeordneter Bildpunkte, wobei jedem dieser Pixel wenigstens ein Bildpunktwert bzw. Pixelwert zugeordnet ist. Ein solcher Pixelwert ist beispielsweise ein Helligkeitswert (Luminanzwert) oder ein Farbwert (Chrominanzwert). Ein Bildblock umfasst beispielsweise 8×8 Pixel. 1 schematically shows temporally successive images F (i-1), F (i), F (i + 1) of an image sequence. For further explanation of this image sequence, the image F (i) at the time position i is considered in more detail. This image F (i) is divided into a number of image blocks which are arranged in a grid-like or matrix-like manner. Each of these image blocks comprises a number of pixels arranged in a matrix-like manner, wherein each of these pixels is assigned at least one pixel value or pixel value. Such a pixel value is, for example, a brightness value (luminance value) or a color value (chrominance value). An image block comprises, for example, 8 × 8 pixels.

Die Positionen der einzelnen Bildblöcke innerhalb des Bildes F(i) sind durch erste und zweite Koordinaten, die nachfolgend auch als horizontale und vertikale Koordinaten bzw. x- und y-Koordinaten bezeichnet werden, bestimmt. Zu Zwecken der Erläuterung sei angenommen, dass die x-Koordinaten in den einzelnen Bildern von links nach rechts und dass die y-Koordinaten von oben nach unten zunehmen, der Ursprung dieses Koordinatensystems liegt also in der linken oberen Ecke der einzelnen Bilder.The Positions of the individual image blocks within the image F (i) are defined by first and second coordinates, which also follow referred to as horizontal and vertical coordinates and x and y coordinates be determined. For the sake of explanation, it is assumed that the x-coordinates in each picture are from left to right and that the y-coordinates increase from top to bottom, the origin This coordinate system is therefore in the upper left corner of the individual pictures.

B1'(i) bezeichnet in 1 beispielhaft einen ersten Bildblock in dem ersten Bild F(i), zu dem ein Bewegungsvektor v1 getestet werden soll. Das Testen eines solchen Bewegungsvek tors v1 kann grundsätzlich dadurch erfolgen, dass der Bildinhalt des ersten Bildblocks B1'(i) in dem ersten Bild F(i) mit dem Bildinhalt eines zweiten Bildblocks verglichen wird, der in dem zeitlich vorangehenden Bild F(i – 1) angeordnet ist und der gegenüber dem ersten Bildblock B1'(i) um den Testvektor v1 versetzt angeordnet ist. Ein solches Verfahren wird auch als Rückwärtsschätzverfahren bezeichnet.B1 '(i) denotes in 1 by way of example a first image block in the first image F (i), to which a motion vector v1 is to be tested. The testing of such a motion vector v1 can basically take place by comparing the image content of the first image block B1 '(i) in the first image F (i) with the image content of a second image block which is shown in the temporally preceding image F (i). 1) is arranged offset from the first image block B1 '(i) by the test vector v1. Such a method is also called backward estimation.

Die Position des zweiten Bildblocks B2'(i – 1) befindet sich dabei am Anfangspunkt bzw. Fußpunkt des auf beide Bilder projizierten Bewegungsvektors v1, und der erste Bildblock B1'(i) befindet sich am Endpunkt bzw. der Spitze des auf beide Bilder projizierten Bewegungsvektor v1. Wie in 1 dargestellt, gibt es Szenarien, bei denen ein solcher Vergleich der Bildinhalte zweier Bildblöcke nicht möglich ist, nämlich dann, wenn der erste Bildblock B1'(i) im Bereich eines Randes des ersten Bildes F(i) angeordnet ist und wenn die Orientierung und die Länge des Testvektor v1 derart sind, dass er ausgehend von dem ersten Bildblock über den Bildrand hinausreicht bzw. dass der zweite Bildblock außerhalb des zweiten Bildes F(i – 1) angeordnet ist.The position of the second image block B2 '(i-1) is at the starting point or foot point of the motion vector v1 projected on both images, and the first image block B1' (i) is located at the end point or the peak of the projected image on both images Motion vector v1. As in 1 are illustrated, there are scenarios in which such a comparison of the image contents of two image blocks is not possible, namely, when the first image block B1 '(i) in the region of an edge of the first image F (i) is arranged and if the orientation and Length of the test vector v1 are such that it extends beyond the image edge starting from the first image block or that the second image block is arranged outside the second image F (i-1).

Um einen Testvektor v1 zu einem Bildblock des Bildes F(i) zu testen, kann der Bildinhalt dieses Bildblocks auch mit einem Bildblock des zeitlich nachfolgenden Bilds F(i + 1) verglichen werden. B3'(i) bezeichnet in 1 einen weiteren Bildblock im ersten Bild F(i), und v2 bezeichnet einen zu diesem Bildblock B3'(i) zu testenden Testvektor. Bei einem solchen Verfahren, das auch als Vorwärtsschätzverfahren bezeichnet wird, sind der Bildblock B3'(i) in dem Bild F(i) und der Bildblock B4'(i + 1) in dem Bild F(i + 1) um den Testvektor v2 gegeneinander versetzt, wobei der Bildblock B3'(i) in dem Bild F(i) am Fußpunkt bzw. Anfangspunkt des Testvektors v2 und der Bildblock B4'(i + 1) in dem Bild F(i + 1) am Endpunkt bzw. der Spitze des Testvektors v2 liegt. Wie in 1 dargestellt, gibt es auch bei solchen Vorwärtsschätzung Szenarien, bei denen die Ermittlung eines Abstandsmaßes für den Testvektor v2 nicht möglich ist, nämlich dann, wenn der Bildblock B3'(i) des Bildes F(i) in einem Randbereich des Bildes liegt, und wenn eine Orientierung und eine Länge des Testvektors v2 derart sind, dass der Testvektor in dem zeitlich nachfolgenden Bild F(i + 1) über den Rand hinauszeigt bzw. auf eine Blockposition außerhalb des zeitlich nachfolgenden Bildes F(i + 1) zeigt.In order to test a test vector v1 to an image block of the image F (i), the image content of this image block can also be compared with an image block of the temporally subsequent image F (i + 1). B3 '(i) denotes in 1 another image block in the first image F (i), and v2 denotes one to this image block B3 '(i) test vector to be tested. In such a method, also referred to as the forward estimation method, the image block B3 '(i) in the image F (i) and the image block B4' (i + 1) in the image F (i + 1) are around the test vector v2 offset from one another, wherein the image block B3 '(i) in the image F (i) at the base or starting point of the test vector v2 and the image block B4' (i + 1) in the image F (i + 1) at the endpoint Top of the test vector v2 lies. As in 1 In such a forward estimation, there are also scenarios in which the determination of a distance measure for the test vector v2 is not possible, namely when the image block B3 '(i) of the image F (i) lies in an edge region of the image and an orientation and a length of the test vector v2 are such that the test vector in the temporally subsequent image F (i + 1) points beyond the edge or points to a block position outside of the temporally following image F (i + 1).

Bezugnehmend auf die 2 bis 6 werden nachfolgend modifizierte Bewegungsschätzverfahren erläutert, die eine Bewegungsschätzung auch für Bildblöcke in Randbereichen von Bildern ermöglichen.Referring to the 2 to 6 In the following, modified motion estimation methods will be explained, which enable a motion estimation also for image blocks in border areas of images.

2 veranschaulicht ein erstes Beispiel eines solchen Verfahrens. F(i) bezeichnet in 1 ein erstes Bild einer Bildfolge, das eine Anzahl matrixartiger oder rasterartig angeordneter Bildblöcke aufweist. F(i – 1) bezeichnet ein dem ersten Bild F(i) zeitlich vorangehendes zweites Bild. Das erste Bild F(i) weist einen ersten Randbereich RB1 auf, der benachbart zu einem ersten Rand R1 des ersten Bildes F(i) angeordnet ist. Dieser erste Rand R1 ist in dem in 2 dargestellten Beispiel der linke vertikale Rand des Bildes, also der Rand, der das Bild F(i) nach links in vertikaler Richtung begrenzt. Die Wahl dieses linken vertikalen Randes ist im Zusammenhang mit der nachfolgenden Erläuterung lediglich als Beispiel zu verstehen. Die nachfolgenden Ausführungen gelten in entsprechender Weise für Randbereiche entlang jedes der Bildränder. 2 illustrates a first example of such a method. F (i) denotes in 1 a first image of a sequence of images comprising a number of matrix-like or raster-like image blocks. F (i-1) denotes a second image temporally preceding the first image F (i). The first image F (i) has a first edge region RB1, which is arranged adjacent to a first edge R1 of the first image F (i). This first edge R1 is in the in 2 illustrated example, the left vertical edge of the image, so the edge that limits the image F (i) to the left in the vertical direction. The choice of this left vertical edge is to be understood in the context of the following explanation only as an example. The following explanations apply correspondingly to edge regions along each of the image edges.

Der erste Randbereich RB1 verläuft parallel zu dem ersten Rand R1. Unter einer Breite des Randbereiches RB1 wird nachfolgend die Abmessung des Randbereiches RB1 in einer Richtung senkrecht zu dem ersten Rand R1 – in dem dargestellten Beispiel also in horizontaler Richtung des Bildes F(i) – bezeichnet. Die Breite des Randbereiches RB1 ist fest vorgegeben. Diese Breite des Randbereiches RB1 wird beispielsweise abhängig von der maximal zu erwartenden Länge der zu testenden Testvektoren gewählt. Diese Breite beträgt beispielsweise zwischen 5 und 15 Bildblöcken bzw. zwischen 5·8 und 15·8 Pixeln, wenn die einzelnen Bildblöcke eine Größe von 8×8 Pixeln besitzen.Of the first edge region RB1 runs parallel to the first edge R1. Below a width of the edge area RB1 is hereinafter the Dimension of the edge area RB1 in a direction perpendicular to the first edge R1 - in the example shown in FIG horizontal direction of the image F (i) -. The Width of the edge area RB1 is fixed. This width of the For example, edge area RB1 depends on the maximum expected length of the test vectors to be tested selected. This width is for example between 5 and 15 image blocks or between 5 x 8 and 15 x 8 Pixels when the individual image blocks are one size of 8 × 8 pixels.

B1(i) bezeichnet in 2 einen ersten Bildblock, der innerhalb des ersten Randbereiches RB1 liegt. v1 bezeichnet einen für diesen ersten Bildblock B1(i) zu testenden Testvektor v1. Dieser Testvektor besitzt zwei Vektorkomponenten: Eine horizontale Vektorkomponente v1x, die nachfolgend auch als x-Vektorkomponente bezeichnet wird; und eine vertikale Vektorkomponente v1y, die nachfolgend auch als y-Vektorkomponente bezeichnet wird. In dem in 2 dargestellten Beispiel sind beide Vektorkomponenten des ersten Testvektors v1 ungleich Null. Selbstverständlich kann eine oder können beide dieser Vektorkomponenten auch Null sein. Im zuletzt genannten Fall ist der erste Testvektor v1 ein Nullvektor.B1 (i) denotes in 2 a first image block located within the first edge region RB1. v1 denotes a test vector v1 to be tested for this first image block B1 (i). This test vector has two vector components: a horizontal vector component v1 x , also referred to below as the x-vector component; and a vertical vector component v1 y , which will also be referred to as a y-vector component hereinafter. In the in 2 In the example shown, both vector components of the first test vector v1 are not equal to zero. Of course, one or both of these vector components may also be zero. In the latter case, the first test vector v1 is a zero vector.

Das Testen des ersten Testvektors v1 umfasst die Ermittlung eines Abstandsmaßes zu diesem ersten Testvektor v1, wobei die Ermittlung eines Abstandsmaßes einen Vergleich der Bildinhalte von Bildblöcken in dem ersten Bild F(i) und dem zweiten Bild F(i – 1) umfasst. Einzelne Verfahrensschritte zur Ermittlung dieser zu vergleichenden Bildblöcke sind in einem Ablaufdiagramm in 3 veranschaulicht.The testing of the first test vector v1 comprises the determination of a distance measure for this first test vector v1, wherein the determination of a distance measure comprises a comparison of the image contents of image blocks in the first image F (i) and the second image F (i-1). Individual process steps for determining these image blocks to be compared are shown in a flowchart in FIG 3 illustrated.

Bei diesem Verfahren ist in einem ersten Verfahrensschritt 101 vorgesehen, die Richtung der Vektorkomponente des Testvektors v1 auszuwerten, die senkrecht zu dem ersten Rand R1 verläuft. Diese senkrecht zu dem ersten Rand R1 verlaufende Vektorkomponente ist in dem dargestellten Beispiel die horizontale Vektorkomponente v1x des ersten Testvektors v1. Das Auswerten dieser Vektorkomponente v1x umfasst das Auswerten einer Richtung dieser Vektorkomponente dahingehend, ob diese Vektorkomponente bezogen auf den ersten Rand eine vorgegebene Richtung aufweist. In dem dargestellten Beispiel liegt eine solche vorgegebene Richtung dann vor, wenn diese Vektorkomponente von dem ersten Rand R1 weg in das Bild hinein zeigt.In this method is in a first step 101 provided to evaluate the direction of the vector component of the test vector v1, which is perpendicular to the first edge R1. This perpendicular to the first edge vector component R1 in the shown example, the horizontal vector component x v1 of the first test vector v1. The evaluation of this vector component v1 x comprises evaluating a direction of this vector component as to whether this vector component has a predetermined direction with respect to the first edge. In the illustrated example, such a given direction exists when this vector component points away from the first edge R1 into the image.

Bezogen auf die bisher verwendete Nomenklatur zeigt die horizontale Vektorkomponente v1x des ersten Testvektors in dem dargestellten Beispiel dann von dem linken vertikalen Rand R1 weg, wenn diese erste Vektorkomponente v1x ein positives Vorzeichen besitzt. Besitzt eine Vektorkomponente eines Testvektors, die senkrecht zu einem gegebenen Rand verläuft, die vorgegebene Richtung, so wird dies nachfolgend als ”Randbereichsverletzung” bezüglich des gegebenen Randes bezeichnet.Based on the nomenclature used hitherto, the horizontal vector component v1 x of the first test vector in the illustrated example then points away from the left vertical edge R1 if this first vector component v1 x has a positive sign. If a vector component of a test vector that is perpendicular to a given edge has the predetermined direction, this will be referred to hereinafter as the "edge region violation" with respect to the given edge.

Ob eine Randbereichsverletzung für einen in einem Randbereich RB1 angeordneten Bildblock B1(i) und einen Testvektor v1 bezüglich eines Randes R1 vorliegt oder nicht, ist dabei von mehreren Faktoren abhängig, nämlich der Richtung des senkrecht zu dem Rand R1 verlaufenden Vektorkomponente v1x des Testvektors v1 und der Schätzrichtung, d. h. der zeitlichen Lage des zweiten Bildes F(i – 1) bezogen auf das erste Bild F(i). Eine Schätzung in Rückwärtsrichtung liegt hierbei vor, wenn das zweite Bild F(i – 1) zeitlich vor dem ersten Bild liegt und eine Schätzung in einer zu der Rückwärtsrichtung entgegengesetzten zweiten Richtung liegt dann vor, wenn das zweite Bild F(i + 1) zeitlich nach dem ersten Bild liegt. Verschiedene Szenarien hierzu werden nachfolgend noch erläutert werden.Whether a boundary violation for an image block B1 (i) arranged in an edge area RB1 and a test vector v1 with respect to an edge R1 or not is dependent on a number of factors, namely the direction of the vector component v1x of the test vector v1 and v3 perpendicular to the edge R1 the estimation direction, ie the temporal position of the second image F (i-1) with respect to the first image F (i). An estimate in the reverse direction is here, if the second Image F (i-1) is ahead of the first image, and an estimate in a second direction opposite to the reverse direction is when the second image F (i + 1) is later in time than the first image. Various scenarios for this will be explained below.

Besitzt diese senkrecht zu dem ersten Rand R1 verlaufende Vektorkomponente v1x die vorgegebene Richtung, liegt also eine Randbereichsverletzung bezüglich des ersten Randes R1 vor, so wird in einem nächsten Verfahrensschritt 102 ein zweiter Bildpunkt B2(i) innerhalb des ersten Bildes F(i) ermittelt, der gegenüber dem ersten Bildpunkt B1(i) um die erste Vektorkomponente v1x derart verschoben ist, dass der zweite Bildblock B2(i) weiter beabstandet zu dem ersten Rand R1 angeordnet ist, wie der erste Bildblock B1(i). Der erste Bildpunkt B1(i) liegt dabei am Fußpunkt bzw. am Anfangspunkt der ersten Vektorkomponente v1x, und der zweite Bildblock B2(i) liegt am Endpunkt bzw. der Spitze dieser Vektorkomponente v1x. Zu Zwecken der Erläuterung sei angenommen, dass (x1, y1) die Koor dinaten des ersten Bildblocks B1(i) sind. Für die Koordinaten (x2, y2) des zweiten Bildblocks B2(i), gilt dann: (x2, y2) = (x1 + v1x, y1) (1). If this vector component v1 x, which runs perpendicularly to the first edge R1, has the predefined direction, ie if there is an edge region violation with respect to the first edge R1, then in a next method step 102 determining a second pixel B2 (i) within the first image F (i) which is shifted from the first pixel B1 (i) by the first vector component v1 x such that the second image block B2 (i) is further spaced from the first edge R1 is arranged as the first image block B1 (i). The first pixel B1 (i) lies at the foot point or at the starting point of the first vector component v1 x , and the second image block B2 (i) lies at the end point or the top of this vector component v1 x . For purposes of explanation, assume that (x1, y1) are the coordinates of the first image block B1 (i). For the coordinates (x2, y2) of the second image block B2 (i), then: (x2, y2) = (x1 + v1 x , y1) (1).

In einem nächsten Verfahrensschritt 103 ist vorgesehen, in dem zweiten Bild F(i – 1) einen dritten Bildblock B3(i – 1) zu ermitteln, dessen Position gegenüber der Position des zweiten Bildblocks B2(i) um den Testvektor v1 derart versetzt ist, dass der zweite Bildblock B2(i) an der Spitze bzw. dem Endpunkt und der dritte Bildblock B3(i – 1) am Anfangspunkt des Testvektors v1 liegt, bzw. dass der dritte Bildblock in Richtung der Vektorkomponente v1x näher an dem Rand R1 liegt als der zweite Bildblock B2(i). Für Koordinaten (x3, y3) des dritten Bildblocks B3(i – 1) gilt bezogen auf die Koordinaten des zweiten Bildblocks also: (x3, y3) = (x2 – v1x, y2 – v1y) = (x1, y1 – v1y) (2). In a next process step 103 it is provided to determine in the second image F (i-1) a third image block B3 (i-1) whose position is offset from the position of the second image block B2 (i) by the test vector v1 such that the second image block B2 (i) at the top and the third image block B3 (i-1) lies at the starting point of the test vector v1, or that the third image block in the direction of the vector component v1 x is closer to the edge R1 than the second image block B2 (i). For coordinates (x3, y3) of the third image block B3 (i-1), the following applies with respect to the coordinates of the second image block: (x3, y3) = (x2 - v1 x , y2 - v1 y ) = (x1, y1 - v1 y ) (2).

Die horizontale Koordinate x3 des dritten Bildblocks B3(i – 1) entspricht der horizontalen Koordinate des ersten Bildblocks B1(i).The horizontal coordinate x3 of the third image block B3 (i-1) corresponds to the horizontal coordinate of the first image block B1 (i).

In diesem Zusammenhang sei noch angemerkt, dass der Testvektor v1 in dem dargestellten Beispiel eine pixelgenaue Auflösung besitzt, also eine Auflösung, die höher ist als die Auflösung des Blockrasters. Dementsprechend muss weder der zweite Bildblock B2(i) noch der dritte Bildblock B3(i – 1) auf dem Blockraster liegen, das zum besseren Verständnis in 2 für beide Bilder F(i), F(i – 1) dargestellt ist. Der Testvektor v1 kann in nicht näher dargestellter Weise sogar eine subpixelgenaue Auflösung besitzen, d. h. eine Auflösung, die höher ist als des Bildpunktraster (Pixelraster) des Bildes.In this context, it should also be noted that the test vector v1 in the illustrated example has a pixel-precise resolution, ie a resolution that is higher than the resolution of the block raster. Accordingly, neither the second image block B2 (i) nor the third image block B3 (i-1) must be on the block grid, which for better understanding in FIG 2 for both images F (i), F (i-1) is shown. The test vector v1 can, in a manner not shown, even have a subpixel-accurate resolution, ie a resolution that is higher than the image pixel grid (pixel raster) of the image.

In einem nächsten Verfahrensschritt 104 wird bezugnehmend auf 3 ein Abstandsmaß für den Testvektor v1 ermittelt, indem die Inhalte des zweiten und des dritten Bildblocks B2(i), B3(i – 1) miteinander verglichen werden. Es werden also Bildblöcke miteinander verglichen, für deren Koordinaten bezugnehmend auf die Gleichungen (1) und (2) gilt: (x1 + v1x, y1), (x1, y1 – v1y). Läge im Vergleich dazu keine Randbereichsverletzung vor, so würden unmittelbar die Inhalte des ersten Bildblocks B1(i) mit den Koordinaten (x1, y1) und eines weiteren Bildblocks, der gegenüber dem ersten Bildblock um den Testvektor v1 verschoben ist, der in dem zweiten Bild B2(i – 1) angeordnet ist und der die Koordinaten (x1 – v1x, y1 – v1y) besitzt, miteinander verglichen.In a next process step 104 is referred to 3 determines a distance measure for the test vector v1 by comparing the contents of the second and third image blocks B2 (i), B3 (i-1) with each other. Thus, image blocks are compared with each other for whose coordinates, referring to the equations (1) and (2): (x1 + v1 x , y 1 ), (x1, y1 - v1 y ). In contrast, if there were no edge region violation, the contents of the first image block B1 (i) with the coordinates (x1, y1) and another image block shifted from the first image block by the test vector v1 would be directly in the second image B2 (i - 1) and the coordinates (x1 - v1 x, y1 - v1 y) has compared.

Die Ermittlung des Abstandsmaßes kann auf beliebige, grundsätzlich bekannte Weise erfolgen. Bei einem Beispiel ist vorgesehen, die Differenzen der Pixelwerte solcher Pixel zu bilden, die sich innerhalb der beiden Blöcke B2(i), B3(i – 1) an gleichen Positionen befinden, die Absolutwerte dieser erhaltenen Differenzen zu bilden und die so erhaltenen Absolutwerte aufzuaddieren. Der so erhaltene Wert wird auch als Summe der Absolutwerte des Pixelwertdifferenzen bezeichnet. Anstelle der Absolutwerte können beliebige andere Metriken auf die Differenzen der Pixelwerte angewendet werden, wie zum Beispiel gradzahlige Potenzen.The Determining the distance measure can be arbitrary, in principle known manner. An example is provided which To make differences in the pixel values of such pixels that are within of the two blocks B2 (i), B3 (i-1) at the same positions to form the absolute values of these differences obtained and to add up the absolute values thus obtained. The thus obtained Value is also called the sum of the absolute values of the pixel value differences designated. Instead of the absolute values, any other metrics are applied to the differences of pixel values, such as even powers.

Bei einer solchen Ermittlung des Abstandsmaßes ist das erhaltene Abstandsmaß um so kleiner, je stärker die Inhalte der beiden Bildblöcke übereinstimmen. Als Pixelwerte für den Vergleich der Bildinhalte der beiden Bildblöcke können beliebige der den einzelnen Pixeln zugeordneten Pixelwerte verwendet werden, also beispielsweise Helligkeitswerte (Luminanzwerte) oder auch Farbwerte (Chrominanzwerte).at such a determination of the distance measure is the obtained Distance measure the smaller, the stronger the content match the two image blocks. As pixel values for comparing the image contents of the two image blocks can be any of the individual pixels assigned Pixel values are used, so for example brightness values (Luminance values) or color values (chrominance values).

Ist die Orientierung der senkrecht zu dem Rand R1 verlaufenden Vektorkomponente des Testvektors derart, dass sie entgegengesetzt zu der vorgegebenen Orientierung ist, dass die zu dem Rand R1 senkrecht verlaufende Vektorkomponente v1x also in Richtung des Randes zeigt, so kann eine herkömmliche Rückwärtsschätzung vorgenommen werden, wie dies für einen weite ren im ersten Randbereich RB1 angeordneten Bildblock B4(i) veranschaulicht ist. v2 bezeichnet in 2 ein zu diesem weiteren Bildblock B4(i) zu testenden Testvektor v2. Eine senkrecht zu dem Rand R1 verlaufende Vektorkomponente v2 dieses Testvektors v2 zeigt in dem Beispiel in Richtung dieses Randes R1. Ein Abstandsmaß für diesen Testvektor v2 kann damit unmittelbar unter Verwendung des Bildinhalts des weiteren Bildblocks B4(i) und eines Bildblocks B5(i – 1) in dem zweiten Bild F(i – 1) ermittelt werden. Der Bildblock B5(i – 1) in dem zweiten Bild F(i – 1) ist dabei um den Testvektor v2 gegenüber der Position des Bildblocks B4(i) versetzt. (x4, y4) seien die Koordinaten des Bildblocks B4(i) in dem ersten Bild F(i). Für die Koordinaten (x5, y5) des Bildblocks B5(i – 1) in dem zweiten Bild F(i – 1) gilt dann: (x5, y5) = (x4 – v2x, y4 – v2y) (3). Is the orientation of the perpendicular to the edge R1 vector component of the test vector such that it is opposite to the predetermined orientation, so that to the edge R1 perpendicular vector component shows v1 x in the direction of the edge, as a conventional reverse estimate can be made, as illustrated for another ren image block B4 (i) arranged in the first edge region RB1. v2 denotes in 2 a test vector v2 to be tested for this further image block B4 (i). A vector component v2 of this test vector v2 running perpendicular to the edge R1 points in the direction of this edge R1 in the example. A distance measure for this test vector v2 can thus be determined directly using the image content of the further image block B4 (i) and an image block B5 (i-1) in the second image F (i-1). The image block B5 (i-1) in the second image F (i-1) is offset by the test vector v2 from the position of the image block B4 (i). (x4, y4) let be the coordinates of the Image block B4 (i) in the first image F (i). For the coordinates (x5, y5) of the image block B5 (i-1) in the second image F (i-1) then: (x5, y5) = (x4 - v2 x , y4 - v2 y ) (3).

v2x, v2y bezeichnen dabei die vertikale und horizontale Vektorkomponente des Testvektors v2.v2 x , v2 y denote the vertical and horizontal vector component of the test vector v2.

Das zuvor erläuterte Verfahren zum Testen eines Testvektors zu einem Bildblock, wie beispielsweise dem ersten Bildblock B1(i) gemäß 2, kann auf mehrere unterschiedliche Testvektoren angewendet werden, wobei die für die einzelnen Testvektoren erhaltenen Abstandsmaße beispielsweise miteinander verglichen werden, und einer dieser Testvektoren unter Berücksichtigung eines Abstandsmaßes als Bewegungsvektor für den Bildblock ausgewählt wird. Die Gruppe der für einen Bildblock zu testenden Testvektoren kann auf herkömmliche Weise ausgewählt werden. Testvektoren für einen Bildblock, wie zum Beispiel den ersten Bildblock B1(i), sind beispielsweise Bewegungsvektoren, die zuvor für zeitlich und/oder räumlich benachbart zu dem ersten Bildblock B1(i) angeordnete Bildblöcke ermittelt wurden. Räumlich benachbarte Bildblöcke sind dabei Bildblöcke, die innerhalb des ersten Bildes F(i) räumlich benachbart zu dem ersten Bildblock B1(i) angeordnet sind. Zeitlich benachbarte Bildblöcke sind Bildblöcke, die sich an der selben Position wie der erste Bildblock B1(i) befinden, die jedoch in zeitlich benachbarten Bildern, wie zum Beispiel dem zweiten Bild F(1-1) angeordnet sind. Zeitlich und räumlich benachbarte Bildblöcke sind Bildblöcke, die sich in anderen Bildern als dem ersten Bild F(i) an Positionen befinden, die räumlich benachbart sind zu der Position des ersten Bildblocks B1(i) angeordnet sind.The previously explained method for testing a test vector for an image block, such as the first image block B1 (i) according to FIG 2 , can be applied to a plurality of different test vectors, wherein the distance measures obtained for the individual test vectors, for example, compared to each other, and one of these test vectors is selected taking into account a distance measure as a motion vector for the image block. The group of test vectors to be tested for an image block may be selected in a conventional manner. Test vectors for an image block, such as the first image block B1 (i), are, for example, motion vectors which were previously determined for image blocks arranged temporally and / or spatially adjacent to the first image block B1 (i). Spatially adjacent image blocks are image blocks which are arranged within the first image F (i) spatially adjacent to the first image block B1 (i). Time-adjacent image blocks are image blocks located at the same position as the first image block B1 (i), but arranged in temporally adjacent images, such as the second image F (1-1). Temporally and spatially adjacent image blocks are image blocks located in images other than the first image F (i) at positions spatially adjacent to the position of the first image block B1 (i).

Wie bereits erwähnt, kann das erläuterte Verfahren auf Bildblöcke in beliebigen Randbereichen des Bildes F(i) angewendet werden, also auf Randbereiche entlang aller vier Ränder des Bildes. Das Verfahren ist darüber hinaus auch auf Randbereiche innerhalb des Bildes anwendbar, beispielsweise auf Randbereiche entlang von Rändern zwischen unterschiedlichen Bildbereichen des Bildes, in denen voneinander unabhängige Bildinformationen aus unterschiedlichen Bildquellen dargestellt werden. Die Darstellung unabhängiger Bildinformationen in unterschiedlichen Bildbereichen ist grundsätzlich bekannt. Beispiele hierfür sind: eine Bild-in-Bild-Einblendung, bei der ein Bild in einem Fenster in einem anderen Bild dargestellt wird; ein sogenanntes On-Screen-Display (OSD), also die Darstellung von Menüinformationen in einem Menüfenster, das in ein Bild eingeblendet wird; oder eine ”Splitscreen”-Darstellung, bei der der Bildschirm in mehrere Fenster unterteilt wird, in denen jeweils voneinander unabhängige Bildinformationen dargestellt werden.As already mentioned, the explained method on image blocks in any edge regions of the image F (i) be applied, so on edge areas along all four edges of the picture. The procedure is also applicable to peripheral areas applicable to the image, for example, on edge areas along Edges between different image areas of the image, in which independent image information from different image sources are displayed. The representation independent image information in different image areas is known in principle. Examples for this are: a picture-in-picture overlay that displays an image in a window is shown in another picture; a so-called on-screen display (OSD), ie the presentation of menu information in one Menu window that appears in a picture; or a split-screen view, in which the screen is divided into several windows in which each represented independent image information become.

Unabhängig davon, in welchem Randbereich der erste Bildblock B1(i) liegt, wird stets die Orientierung der senkrecht zu dem Rand verlaufenden Vektorkomponente des Testvektors ausgewertet, und ein in dem ersten Bild F(i) angeordneter zweiter Bildblock B2(i) wird dann ermittelt, wenn die Orientierung dieser senkrecht verlaufenden Vektorkomponente eine vorgegebene Orientierung ist, d. h. – bezogen auf das bisher erläuterte Beispiel – wenn diese Vektorkomponente von dem Rand wegzeigt. In der in 4 wiedergegebenen Tabelle sind für die äußeren vier Ränder des Bildes die auszuwertenden Vektor komponenten und das Vorzeichen dieser Vektorkomponente für den Fall wiedergegeben, dass diese Vektorkomponente von dem jeweiligen Rand wegzeigt. Das in dieser Tabelle wiedergegebene Vorzeichen für die einzelnen Vektorkomponenten bezieht sich dabei auf das bisher verwendete Koordinatensystem für das Blockraster, bei dem der Ursprung des Koordinatensystems in der linken oberen Ecke des Bildes liegt.Regardless of which edge area the first image block B1 (i) lies in, the orientation of the vector component of the test vector perpendicular to the edge is always evaluated, and a second image block B2 (i) arranged in the first image F (i) is then determined when the orientation of this perpendicular vector component is a given orientation, ie, referring to the example discussed so far, when this vector component points away from the edge. In the in 4 For the outer four edges of the image, the vector components to be evaluated and the sign of this vector component are reproduced for the case in which this vector component points away from the respective edge. The sign in this table for the individual vector components refers to the previously used coordinate system for the block grid, in which the origin of the coordinate system lies in the upper left corner of the image.

Die entlang der äußeren Ränder des Bildes verlaufenden Randbereiche überlappen sich in den Ecken des Bildes. Für Bildpunkte, die gleichzeitig in zwei unterschiedlichen sich überlappenden Randbereichen des Bildes angeordnet sind, werden die Orientierungen der senkrecht zu den Rändern verlaufenden Vektorkomponenten unabhängig voneinander ausgewertet und das hierdurch erhaltene Ergebnis wird für die Ermittlung der Position des zweiten Bildblocks B2(i) berücksichtigt. Dabei gibt es vier unterschiedliche Fälle, die nachfolgend erläutert sind. In dieser Erläuterung bezeichnet ”erste Vektorkomponente” eine senkrecht zu dem ersten Rand verlaufende Vektorkomponente des Testvektors, und ”zweite Vektorkomponente” bezeichnet eine senkrecht zu dem zweiten Rand verlaufende Vektorkomponente des Testvektors:

  • a. Der zweite Bildblock stimmt mit dem ersten Bildblock überein, wenn keine der ersten und zweiten Vektorkomponenten von dem jeweiligen Rand wegzeigt;
  • b. Die Position des zweiten Bildblocks ist um die erste Vektorkomponente gegenüber der Position des ersten Bildblocks versetzt, wenn nur die erste Vektorkomponente von dem ersten Rand wegzeigt;
  • c. Die Position des zweiten Bildblocks ist gegenüber der Position des ersten Bildblocks um die zweite Vektorkomponente versetzt, wenn nur die zweite Vektorkomponente von dem zweiten Rand wegzeigt;
  • d. Die Position des zweiten Bildblocks ist um die erste und die zweite Vektorkomponente gegenüber dem ersten Bildblock versetzt, wenn sowohl die erste Vektorkomponente von dem ersten Rand wegzeigt, als auch die zweite Vektorkomponente von dem zweiten Rand wegzeigt.
The border areas running along the outer edges of the image overlap in the corners of the image. For pixels arranged simultaneously in two different overlapping edge regions of the image, the orientations of the vector components perpendicular to the edges are evaluated independently of each other and the result obtained is taken into account for the determination of the position of the second image block B2 (i). There are four different cases, which are explained below. In this discussion, "first vector component" means a vector component of the test vector that is perpendicular to the first edge, and "second vector component" denotes a vector component of the test vector that is perpendicular to the second edge:
  • a. The second image block matches the first image block if none of the first and second vector components point away from the respective edge;
  • b. The position of the second image block is offset from the position of the first image block by the first vector component if only the first vector component points away from the first edge;
  • c. The position of the second image block is offset from the position of the first image block by the second vector component when only the second vector component is pointing away from the second edge;
  • d. The position of the second image block is offset from the first image block by the first and second vector components when both the first vector component is pointing away from the first edge and the second vector component is pointing away from the second edge.

5 veranschaulicht ein Testverfahren für einen ersten Bildblock B1(i) der gleichzeitig in zwei Randbereichen des Bildes angeordnet ist: Einem ersten Randbereich RB1, der benachbart zu einem ersten Rand R1 angeordnet ist; und einem zweiten Randbereich RB2, der benachbart zu einem zweiten Rand R2 des Bildes F(i) angeordnet ist. Der erste Rand R1 ist in dem dargestellten Beispiel der linke vertikale Rand des Bildes F(i), und der zweite Rand R2 ist in dem dargestellten Beispiel der untere horizontale Rand des Bildes F(i). Ein durch diese beiden Randbereiche RB1, RB2 definierter Eckbereich des Bildes F(i) ist ein linker unterer Eckbereich des Bildes F(i). Die Auswahl dieses Eckbereiches für die nachfolgende Erläuterung ist lediglich als Beispiel zu verstehen. Die nachfolgenden Ausführungen gelten in entsprechender Weise für jeden beliebigen, durch zwei Randbereiche definierten Eckbereich des Bildes F(i). 5 illustrates a test method for a first image block B1 (i) arranged simultaneously in two edge regions of the image: a first edge region RB1 arranged adjacent to a first edge R1; and a second edge region RB2 disposed adjacent to a second edge R2 of the image F (i). The first edge R1 in the illustrated example is the left vertical edge of the image F (i), and the second edge R2 in the illustrated example is the bottom horizontal edge of the image F (i). A corner region of the image F (i) defined by these two edge regions RB1, RB2 is a left lower corner region of the image F (i). The selection of this corner area for the following explanation is merely an example. The following explanations apply correspondingly to any corner region of the image F (i) defined by two edge regions.

v1 bezeichnet in 5 einen Testvektor, v1x bezeichnet die horizontale Vektorkomponente und v1y bezeichnet die vertikale Vektorkomponente dieses Testvektors v1. Diese beiden Vektorkomponenten v1x, v1y sind in dem dargestellten Beispiel ungleich Null. Selbstverständlich besteht jedoch auch die Möglichkeit, dass eine dieser Vektorkomponenten oder dass beide dieser Vektorkomponenten gleich Null sind.v1 denotes in 5 a test vector, v1 x denotes the horizontal vector component and v1 y denotes the vertical vector component of this test vector v1. These two vector components v1 x , v1 y are non-zero in the illustrated example. Of course, however, there is also the possibility that one of these vector components or that both of these vector components are equal to zero.

Die senkrecht zu dem ersten Rand R1 verlaufende erste Vektorkomponente des in 5 dargestellten Testvektors v1, ist dessen horizontale Vektorkomponente v1x, und die senkrecht zu dem zweiten Rand R2 verlaufende zweite Vektorkomponente des Testvektors v1 ist in dem dargestellten Beispiel dessen vertikale Vektorkomponente v1y. Zur Ermittlung der Position des zweiten Bildpunktes B2(i) werden die Orientierung der ersten und der zweiten Vektorkomponente ausgewertet, wobei es entsprechend der zuvor gemachten Ausführungen hier vier unterschiedliche Fälle gibt. Diese Fallunterscheidungen sind in 6 in Form einer Tabelle dargestellt.The perpendicular to the first edge R1 extending first vector component of in 5 is the horizontal vector component v1 x , and the second vector component of the test vector v1, which is perpendicular to the second edge R2, is its vertical vector component v1 y in the illustrated example. In order to determine the position of the second pixel B2 (i), the orientation of the first and second vector components are evaluated, with four different cases corresponding to the previously described embodiments. These case distinctions are in 6 shown in the form of a table.

Dargestellt ist in 6 die Differenz zwischen den Positionen des zweiten Bildblocks B2(i) und des ersten Bildblocks B1(i), also der räumliche Versatz zwischen diesen beiden Bildblöcken. Dieser räumliche Versatz ist abhängig von der Orientierung der ersten und zweiten Vektorkomponente, bzw. dem Vorzeichen dieser beiden Vektorkomponenten. Besitzt die erste Vektorkomponente V1x, ein positives Vorzeichen, und die zweite Vektorkomponente v1y ein negatives Vorzeichen, so zeigen in dem Beispiel beide Vektorkomponenten von den jeweiligen Rändern weg. Der zweite Bildpunkt B2(i) ist in diesem Fall sowohl um die erste als auch um die zweite Vektorkomponente v1X, v1y gegenüber der Position des ersten Bildblocks B1(i) verschoben. Besitzt die erste Vektorkomponente v1x ein positives Vorzeichen und die zweite Vektorkomponente v1y ebenfalls ein positives Vorzeichen, so ist der zweite Bildblock B2(i) lediglich um die erste Vektorkomponente v1x gegenüber der Position des ersten Bildblocks B1(i) verschoben. Besitzt die erste Vektorkomponente v1, ein negatives Vorzeichen und die zweite Vektorkomponente v1y ein positives Vorzeichen, so ist der zweite Bildblock B2(i) gegenüber der Position des ersten Bildblocks B1(i) um die zweite Vektorkomponente v1y verschoben. Besitzt die erste Vektorkomponente v1x in dem Beispiel ein negatives Vorzeichen und die zweite Vektorkomponente v1y ein positives Vorzeichen, so zeigen beide Vektorkomponenten in Richtung des jeweiligen Randes. In diesem Fall wird kein zweiter Bildblock B2(i) innerhalb des ersten Bildes F(i) ermittelt, bzw. der zweite Bildblock entspricht in diesem Fall dem ersten Bildblock B1(i), die Verschiebung ist also (0, 0).Is shown in 6 the difference between the positions of the second image block B2 (i) and the first image block B1 (i), ie the spatial offset between these two image blocks. This spatial offset depends on the orientation of the first and second vector components, or the sign of these two vector components. If the first vector component V1 x , a positive sign, and the second vector component v1 y have a negative sign, then in the example both vector components point away from the respective edges. The second pixel B2 (i) is in this case shifted by both the first and the second vector components v1 X , v1 y with respect to the position of the first image block B1 (i). If the first vector component v1 x has a positive sign and the second vector component v1 y also has a positive sign, the second image block B2 (i) is merely shifted by the first vector component v1 x with respect to the position of the first image block B1 (i). Having the first vector component v1, a negative sign and the second vector component v1 y has a positive sign, the second image block B2 is (i) relative to the position of the first image block B1 (i) the second vector component v1 y. If the first vector component v1 x in the example has a negative sign and the second vector component v1 y has a positive sign, then both vector components point in the direction of the respective edge. In this case, no second image block B2 (i) within the first image F (i) is determined, or the second image block corresponds to the first image block B1 (i) in this case, ie the displacement is (0, 0).

Der dritte Bildblock B3(i – 1) in dem zweiten Bild F(i – 1) ist entsprechend der zuvor gemachten Erläuterungen um den Wert des Testvektors v1 gegenüber der Position des zweiten Bildblocks B2(i) verschoben. In dem in 5 dargestellten Beispiel, bei dem der zweite Bildblock B2(i) sowohl um die erste Vektorkomponente als auch die zweite Vektorkomponente gegenüber der Position des ersten Bildblocks B1(i) verschoben ist, entspricht die Position des dritten Bildblocks B3(i – 1) der Position des ersten Bildblocks B1(i).The third image block B3 (i-1) in the second image F (i-1) is shifted by the value of the test vector v1 from the position of the second image block B2 (i) in accordance with the previously explained explanation. In the in 5 In the example shown in which the second image block B2 (i) is shifted by both the first vector component and the second vector component from the position of the first image block B1 (i), the position of the third image block B3 (i-1) corresponds to the position of the image block first picture block B1 (i).

Bei beiden zuvor erläuterten Verfahren wird für einen ersten Bildblock B1(i) innerhalb eines Randbereiches ein zweiter Bildblock B2(i) innerhalb desselben Bildes ermittelt, wobei die Position dieses zweiten Bildblocks B2(i) abhängig ist von der Orientierung einer senkrecht zu dem Rand verlaufenden Vektorkomponente des Testvektors und abhängig ist vom Betrag dieser Vektorkomponente.at Both of the above-described method is for a first image block B1 (i) within a border area a second one Image block B2 (i) determined within the same image, wherein the Position of this second image block B2 (i) depends on the orientation of a perpendicular to the edge vector component of the test vector and is dependent on the magnitude of this vector component.

Das zuvor erläuterte Verfahren kann als modifiziertes Rückwärtsschätzverfahren bezeichnet werden, da bei diesem Verfahren zum Ermitteln von Bewegungsinformation zu einem Bildblock – in dem Beispiel dem ersten Bildblock B1(i) – des ersten Bildes F(i) Bildinformationen aus einem Bildblock des zeitlich vorangehenden zweiten Bildes F(i – 1) verwendet werden.The previously discussed method may be used as a modified backward estimation method in this method of determining motion information to an image block - in the example the first image block B1 (i) - the first image F (i) image information from a Image block of temporally preceding second image F (i-1) be used.

Die zuvor erläuterten Verfahrensschritte lassen sich in entsprechender Weise auch auf ein Vorwärtsschätzverfahren anwenden, um dadurch ein modifiziertes Vorwärtsschätzverfahren zu erhalten, wie nachfolgend anhand der 7 und 8 erläutert wird. Bildinformationen von Bildblöcken des ersten Bildes F(i) werden bei diesem Verfahren mit Bildblöcken in einem zweiten Bild F(i + 1) verglichen, das zeitlich dem ersten Bild F(i) nachfolgt. Ein solches Verfahren unterscheidet sich von dem zuvor erläuterten Verfahren dadurch, dass bei Testen eines Bewegungsvektors zu einem ersten Bildblock in dem ersten Bild F(i) ein zweiter Bildblock, dessen Position sich von der Position des ersten Bildblocks unterscheidet, dann ermittelt wird, wenn der erste Bildblock in einem Randbereich benachbart zu einem Rand angeordnet ist und wenn die senkrecht zu diesem Rand verlaufende Vektorkomponente des Testvektors in Richtung dieses Randes zeigt. Ein Beispiel eines solchen Verfahrens wird nachfolgend anhand von 7 erläutert.The above-explained method steps can also be correspondingly applied to a forward estimation method, thereby obtaining a modified forward estimation method, as described below with reference to FIG 7 and 8th is explained. Image information of image blocks of the first image F (i) is compared in this process with image blocks in a second image F (i + 1), which follows in time the first image F (i). Such a method differs from the previously explained method in that when testing a motion vector to a first image block in the ers (b) a second image block whose position differs from the position of the first image block is determined when the first image block is arranged in an edge region adjacent to an edge and if the vector component of the test vector perpendicular to this edge in FIG Direction of this edge shows. An example of such a method is described below with reference to 7 explained.

B1(i) bezeichnet in 7 einen ersten Bildblock des Bildes F(i), der in einem ersten Randbereich RB1 angeordnet ist. Dieser erste Randbereich RB1 ist benachbart zu einem ersten Rand R1 angeordnet, der in dem dargestellten Beispiel ein rechter vertikaler Rand des Bildes F(i) ist. v1 bezeichnet den zu diesem Bildblock B1(i) zu testenden Testvektor, und v1x bezeichnet die senkrecht zu dem ersten Rand R1 verlaufende Vektorkomponente dieses Testvektors. Diese senkrecht verlaufende Vektorkomponente v1x verläuft in dem dargestellten Beispiel in Richtung dieses ersten Randes R1. In diesem Fall wird in dem ersten Bild F(i) ein zweiter Bildblock B2(i) ermittelt, dessen Position gegenüber der Position des ersten Bildblockes B1(i) um die senkrecht zu dem Rand R1 verlaufende Vektorkomponente v1 verschoben ist. Der zweite Bildblock B2(i) liegt dabei am Anfangspunkt und der erste Bildblock B1(i) liegt am Endpunkt dieser Vektorkomponente. Ausgehend von der Position des zweiten Bildblocks B2(i) wird anschließend ein dritter Bildblock B3(i) in dem zweiten Bild F(i + 1) ermittelt, wobei die Position des dritten Bildblocks B3(i) um den Testvektor v1 gegenüber der Position des zweiten Bildblocks B2(i) verschoben ist, wobei der zweite Bildblock B2(i) am Anfangspunkt und der dritte Bildblock B3(i) am Endpunkt des Testvektors v1 liegt. Für die Koordinaten (x2, y2) des zweiten Bildblocks B2(i) bezogen auf die Koordinaten (x1, y1) des ersten Bildblocks B1(i) und für die Koordinaten (x3, y3) des dritten Bildblocks B3(i) bezogen auf die Koordinaten des zweiten Bildblocks B2(i) gilt in dem dargestellten Beispiel: (x2, y2) = (x1 – v1x, y1) (4) (x3, Y3) = (x2 + v1x, y2 + v2y) (5). B1 (i) denotes in 7 a first image block of the image F (i), which is arranged in a first edge region RB1. This first edge region RB1 is disposed adjacent to a first edge R1, which in the illustrated example is a right vertical edge of the image F (i). v1 referred to for this image block B1 (i) to be tested test vector v1 and x denotes the direction perpendicular to the first edge vector component R1 of this test vector. This vertically extending vector component v1 x runs in the illustrated example in the direction of this first edge R1. In this case, a second image block B2 (i) whose position is shifted relative to the position of the first image block B1 (i) by the vector component v1 perpendicular to the edge R1 is determined in the first image F (i). The second image block B2 (i) lies at the starting point and the first image block B1 (i) lies at the end point of this vector component. Starting from the position of the second image block B2 (i), a third image block B3 (i) is subsequently determined in the second image F (i + 1), the position of the third image block B3 (i) being opposite the position of the test vector v1 second image block B2 (i), the second image block B2 (i) being at the start point and the third image block B3 (i) being at the end point of the test vector v1. For the coordinates (x2, y2) of the second image block B2 (i) with respect to the coordinates (x1, y1) of the first image block B1 (i) and for the coordinates (x3, y3) of the third image block B3 (i) with respect to Coordinates of the second image block B2 (i) apply in the example shown: (x2, y2) = (x1 - v1 x , y1) (4) (x3, Y3) = (x2 + v1 x , y2 + v2 y ) (5).

Unter Verwendung des zweiten und dritten Bildblocks B2(i), B3(i + 1) wird anschließend ein Abstandsmaß für den Testvektor v1 ermittelt. Zur Ermittlung des Abstandsmaßes eignen sich beliebige herkömmliche und bereits zuvor erläuterte Verfahren.Under Use of the second and third image block B2 (i), B3 (i + 1) is then a distance measure for the Test vector v1 determined. To determine the distance measure Any conventional and previously discussed ones are suitable Method.

Zeigt die senkrecht zu dem Rand R1 verlaufende Vektorkomponente des zu testenden Vektors von dem Rand R1 weg, wie dies für den im ersten Randbereich RB1 dargestellten weiteren Bildblock B4(i) dargestellt ist, so wird das Abstandsmaß für den Testvektor, in dem dargestellten Beispiel den Vektor v2, unter Verwendung des Bildinhalts dieses Bildblocks B4(i) und eines weiteren Bildblocks B5(i + 1) in dem zweiten Bild F(i + 1) berechnet. Der Bildblock B5(i) in dem zweiten Bild F(i + 1) ist dabei um den Testvektor v2 gegenüber der Position des Bildblocks B4(i) versetzt, wobei der Bildblock B4(i) in dem ersten Bild F(i) am Anfangspunkt und der Bildblock B5(i + 1) am Endpunkt des zu testenden Vektors v2 liegt.Shows the perpendicular to the edge R1 extending vector component of away from the edge R1, as for the in the first border region RB1 further image block B4 (i) is shown, the distance measure for the test vector, in the example shown, the vector v2, using the Image content of this image block B4 (i) and another image block B5 (i + 1) in the second image F (i + 1). The picture block B5 (i) in the second image F (i + 1) is opposite to the test vector v2 the position of the image block B4 (i) offset, wherein the image block B4 (i) in the first image F (i) at the starting point and the image block B5 (i + 1) lies at the end point of the vector v2 to be tested.

Bei dem in 7 dargestellten Beispiel ist die senkrecht zu dem Rand R1 verlaufende Vektorkomponente die horizontale Vektorkomponente v1x. Diese Vektorkomponente zeigt auf den Ersten Rand R1 – in dem dargestellten Beispiel den rechten vertikalen Rand – hin, wenn diese Vektorkomponente ein positives Vorzeichen besitzt. Das erläuterte Verfahren ist selbstverständlich in entsprechender Weise auf beliebige Randbereiche des Bildes F(i) anwendbar. Die für die einzelnen Randbereiche auszuwertenden Vektorkomponenten und deren Vorzeichen für den Fall, dass diese Vektorkomponente auf den Rand hinzeigt, sind in der ganz rechten Spalte der 4 dargestellt.At the in 7 Example shown is the perpendicular to the edge vector component R1, the horizontal vector component x v1. This vector component points to the first edge R1 - in the illustrated example the right vertical edge - if this vector component has a positive sign. The explained method is, of course, applicable in a corresponding manner to any edge regions of the image F (i). The vector components to be evaluated for the individual edge regions and their signs for the case in which this vector component points to the edge are in the rightmost column of FIG 4 shown.

Für erste Bildblöcke, die gleichzeitig in zwei unterschiedlichen Randbereichen liegen, werden entsprechend der Erläuterungen zu den 5 und 6 die senkrecht zu den beiden Rändern liegenden Vektorkomponenten des zu testenden Vektors separat ausgewertet, und die Position des zweiten Bildblocks B2(i) wird entsprechend der Erläuterungen zu 5 abhängig davon gewählt, ob eine, beide oder keine dieser Vektorkomponenten in Richtung des jeweiligen Randes zeigen. Ein Beispiel eines Verfahrens zum Testen eines Testvektors für einen ersten Bildblock B1(i), der gleichzeitig in zwei Randbereichen RB1, RB2 angeordnet ist, ist in 8 veranschaulicht. v1 bezeichnet in 8 einen zu diesem Bildblock B1(i) zu testenden Testvektor v1. Der erste Bildblock B1(i) liegt gleichzeitig innerhalb eines ersten Randbereiches RB1 und eines zweiten Randbereiches RB2. Der erste Randbereich RB1 ist dabei benachbart zu einem ersten Rand R1, in dem Beispiel dem rechten vertikalen Rand, und der zweite Randbereich RB2 ist benachbart zu einem zweiten Rand R2, in dem Beispiel dem oberen horizontalen Rand, angeordnet. Die senkrecht zu dem ersten Rand R1 verlaufende Vektorkomponente ist in dem dargestellten Beispiel die horizontale Vektorkomponente v1x, und die senkrecht zu dem zweiten Rand R2 verlaufende Vektorkomponente ist die vertikale Vektorkomponente v1y. Beide dieser Vektorkomponenten zeigen in dem dargestellten Beispiel in Richtung des jeweiligen Randes. Der zweite Bildblock B2(i) ist dabei gegenüber der Position des ersten Bildblocks B1(i) um die erste und zweite Vektorkomponente verschoben. Hinsichtlich der Position dieses zweiten Bildblocks B2(i) gibt es abhängig von der Orientierung dieser Vektorkomponenten vier Fallunterscheidungen, die entsprechend der Ausführungen zu den 5 und 6 in 9 dargestellt sind.For the first image blocks, which are located simultaneously in two different border areas, are explained in the notes to the 5 and 6 the vector components of the vector to be tested, which are perpendicular to the two edges, are evaluated separately, and the position of the second image block B2 (i) is added as explained 5 depending on whether one, both or none of these vector components point in the direction of the respective edge. An example of a method for testing a test vector for a first image block B1 (i), which is arranged simultaneously in two edge regions RB1, RB2, is shown in FIG 8th illustrated. v1 denotes in 8th a test vector v1 to be tested for this image block B1 (i). The first image block B1 (i) lies simultaneously within a first edge region RB1 and a second edge region RB2. In this case, the first edge region RB1 is adjacent to a first edge R1, in the example the right vertical edge, and the second edge region RB2 is arranged adjacent to a second edge R2, in the example the upper horizontal edge. The direction perpendicular to the first edge vector component R1 in the shown example, the horizontal vector component v1 x, and the direction perpendicular to the second edge vector component R2 is the vertical vector component v1 y. Both of these vector components point in the example shown in the direction of the respective edge. The second image block B2 (i) is shifted from the position of the first image block B1 (i) by the first and second vector components. With regard to the position of this second image block B2 (i), depending on the orientation of these vector components, there are four case distinctions, which correspond to the explanations given to FIGS 5 and 6 in 9 are shown.

Liegt bei dem bisher erläuterten Verfahren eine Randbereichsverletzung bezüglich eines ersten Bildblocks B1(i) und eines zu diesem Bildblock B1(i) zu testenden Vektors v1 für eine gewünschte Schätzrichtung vor, so wird in erläuterter Weise in dem ersten Bild F(i), in dem der erste Bildblock B1(i) angeordnet ist, ein zweiter Bildblock B2(i) ermittelt, der gegenüber der Position des ersten Bildblocks B1(i) verschoben ist. Ein Bildvergleich wird anschließend unter Verwendung dieses zweiten Bildblocks B2(i) aus dem ersten Bild F(i) und eines dritten Bildblocks B3(i – 1) aus dem zweiten Bild F1(i – 1) durchgeführt, wobei die Position des dritten Bildblocks B3(i – 1) um den Testvektor v1 gegenüber der Position des zweiten Bildblocks verschoben ist. Das durch den Bildvergleich erhaltene Testergebnis bezieht sich dann strenggenommen allerdings nicht mehr auf den ersten B1(i) sondern auf den zweiten Bildblock B2(i).Lies in the method explained so far, an edge area violation with respect to a first image block B1 (i) and one to it Image block B1 (i) vector v1 to be tested for a desired one Estimation ago, as explained in the first image F (i), in which the first image block B1 (i) is arranged is, a second image block B2 (i) determined opposite the position of the first image block B1 (i) is shifted. An image comparison is subsequently using this second image block B2 (i) from the first image F (i) and a third image block B3 (i-1) from the second image F1 (i-1), where the position of the third image block B3 (i-1) around the test vector v1 shifted from the position of the second image block is. The test result obtained by the image comparison relates but then strictly speaking, not on the first B1 (i) but on the second image block B2 (i).

Stehen zum Testen eines Bewegungsvektors v1 für einen ersten Bildblock B2(i) des ersten Bildes allerdings nicht nur ein zeitlich vorangehendes F(i – 1) oder ein zeitlich nachfolgendes F(i + 1) Bild zur Verfügung, sondern stehen beide dieser Bilder zur Verfügung, so gibt es eine weitere Möglichkeit auf eine Randbereichsverletzung zu reagieren, die nachfolgend erläutert wird:
Wenn für einen Testvektor zu einer Schätzrichtung eine Randbereichsverletzung vorliegt, so ist vorgesehen, eine Schätzung in entgegengesetzter Schätzrichtung durchzuführen. Dies wird nachfolgend unter Bezugnahme auf die Beispiele in den 2 und 7 erläutert. Bezugnehmend auf die bisherige Erläuterung wird bei dem Beispiel gemäß 2 eine Rückwärtsschätzung durchgeführt. Für den Testvektor v1 und den ersten Bildblock B1(i) liegt hierbei eine Randbereichsverletzung vor. Um trotz dieser Randbereichsverletzung eine Bewegungsschätzung durchführen zu können, wird der Inhalt des Bildblocks B1(i) mit dem Inhalt eines Bildblocks B5(i + 1) in dem zeitlich nachfolgenden Bild F(i + 1) verglichen, für dessen Koordinaten (x5, y5) gilt: (x5, y5) = (x1 + v1x, y1 + v1y) (6).
However, in order to test a motion vector v1 for a first image block B2 (i) of the first image, not only a temporally preceding F (i-1) or a temporally subsequent F (i + 1) image is available, but both of these images are available So there is another way to respond to a border violation, which is explained below:
If there is an edge region violation for a test vector to an estimation direction, then it is intended to carry out an estimation in the opposite estimation direction. This will be described below with reference to the examples in FIGS 2 and 7 explained. Referring to the previous explanation, in the example of FIG 2 performed a backward estimation. For the test vector v1 and the first image block B1 (i), there is an edge region violation. In order to be able to perform a motion estimation despite this edge region violation, the content of the image block B1 (i) is compared with the content of an image block B5 (i + 1) in the temporally following image F (i + 1), for whose coordinates (x5, y5 ) applies: (x5, y5) = (x1 + v1x, y1 + v1y) (6).

Es wird also eine Vorwärtsschätzung, d. h. eine Schätzung in eine entgegengesetzte Richtung durchgeführt.It Thus, a forward estimate, i. H. an estimate done in an opposite direction.

Bezugnehmend auf die bisherige Erläuterung wird bei dem Beispiel gemäß 7 eine Vorwärtsschätzung durchgeführt. Für den Testvektor v1 und den ersten Bildblock B1(i) liegt hier bei eine Randbereichsverletzung vor. Um trotz dieser Randbereichsverletzung eine Bewegungsschätzung durchführen zu können, wird der Inhalt des Bildblocks B1(i) mit dem Inhalt eines Bildblocks B5(i – 1) in dem zeitlich vorausgehenden Bild F(i – 1) verglichen, für dessen Koordinaten (x5, y5) gilt: (x5, y5) = (x1 – v1x, y1 – v1y) (6). Referring to the previous explanation, in the example of FIG 7 carried out a forward estimation. For the test vector v1 and the first image block B1 (i), there is an edge region violation here. In order to be able to perform a motion estimation despite this edge region violation, the content of the image block B1 (i) is compared with the content of an image block B5 (i-1) in the temporally preceding image F (i-1) for whose coordinates (x5, y5 ) applies: (x5, y5) = (x1 - v1x, y1 - v1y) (6).

Es wird also eine Rückwärtsschätzung, d. h. eine Schätzung in eine entgegengesetzte Richtung durchgeführt. Allgemein lässt sich sagen, dass für eine Bewegungsschätzung bei diesem Verfahren ein zweiter Bildblock B5(i) ausgewählt wird, der gegenüber dem ersten Bildblock B1(i) um den ersten Bewegungsvektor v1 verschoben ist und der abhängig davon, ob die erste Vektorkomponente v1x eine vorgegebene Richtung aufweist in einem dem ersten Bild F(i) zeitlich vorausgehenden Bild F(i – 1) oder einem dem ersten Bild F(i) zeitlich nachfolgenden Bild F(i + 1) angeordnet ist.It Thus, a backward estimate, i. H. an estimate carried out in an opposite direction. Generally it can be said that for a motion estimation In this method, a second image block B5 (i) is selected which is opposite the first image block B1 (i) by the first Motion vector v1 is shifted and depending on whether the first vector component v1x has a predetermined direction in an image F (i-1) preceding in time in the first image F (i) or an image F (i + 1) is arranged.

Liegt der Block gleichzeitig in zwei Randbereichen, also in einer der Ecken des Bildes, so kann der Fall auftreten, dass für eine der Komponenten des Vektors eine Randbereichsverletzung und für eine der Komponenten des Vektors eine Randbereichsverletzung bei einer Vorwärtsschätzung auftritt. In diesem Fall wird beispielsweise auf das anhand der 5 oder 8 erläuterte Verfahren zurückgegriffen. Darüber hinaus besteht die Möglichkeit, für Blöcke, die sich in einer Ecke befinden, grundsätzlich auf das Verfahren gemäß der 5 oder 8 zurückzugreifen, wenn eine Randbereichsverletzung vorliegt, selbst dann, wenn eine Schätzung in entgegengesetzter Richtung erfolgversprechend, d. h. ohne Randbereichsverletzung möglich ist.If the block lies at the same time in two edge regions, that is to say in one of the corners of the image, it may be the case that a margin violation occurs for one of the components of the vector and a margin violation occurs for one of the components of the vector in a forward estimation. In this case, for example, based on the 5 or 8th recourse to the explained method. In addition, it is possible for blocks that are located in a corner, in principle, the method according to the 5 or 8th fall back, if there is a margin violation, even if an estimate in the opposite direction is promising, ie without margin violation is possible.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list The documents listed by the applicant have been automated generated and is solely for better information recorded by the reader. The list is not part of the German Patent or utility model application. The DPMA takes over no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • - WO 2007/119198 [0005] - WO 2007/119198 [0005]

Claims (9)

Verfahren zum Testen eines Bewegungsvektors zu einem ersten Bildblock (B1(i)) eines ersten Bildes (F(i)) einer Bildfolge, der in einem ersten Randbereich (R1) des ersten Bildes (F(i)) angeordnet ist, wobei der erste Randbereich (R1) sich an einen ersten Rand des Bildes anschließt und wobei der Bewegungsvektor (v1) eine erste senkrecht zu dem ersten Rand verlaufende Vektorkomponente (v1x) und eine zweite Vektorkomponente (v1y) aufweist, wobei das Verfahren aufweist: Ermitteln eines zweiten Bildblocks (B2(i)) in dem ersten Bild (F(i)), der gegenüber dem ersten Bildblock (B1(i)) in der senkrecht zu dem ersten Rand (R1) verlaufenden Richtung um die erste Vektorkomponente (v1x) in einer Richtung weg von dem ersten Bildrand verschoben ist, wenn die erste Vektorkomponente eine vorgegebene Richtung besitzt; Ermitteln eines dritten Bildblocks (B3(i)) in einem dem ersten Bild (F(i)) zeitlich vorausgehenden (F(i – 1)) oder zeitlich nachfolgenden (F(i + 1)) Bild, der gegenüber dem zweiten Bildblock um den ersten Bewegungsvektor (v1) verschoben ist; Berechnen eines Abstandsmaßes zwischen dem Inhalt des zweiten und des dritten Bildblocks B2(i), B3(i).A method for testing a motion vector to a first image block (B1 (i)) of a first image (F (i)) of an image sequence arranged in a first edge region (R1) of the first image (F (i)), the first edge region (R1) adjoins a first edge of the picture and the motion vector (v1) having a first perpendicular to the first edge running vector component (v1 x) and a second vector component (v1 y), the method comprising: determining a second Image block (B2 (i)) in the first image (F (i)) opposite to the first image block (B1 (i)) in the direction perpendicular to the first edge (R1) about the first vector component (v1x) in one Direction is shifted away from the first image edge, when the first vector component has a predetermined direction; Determining a third image block (B3 (i)) in a first (F (i)) temporally preceding (F (i-1)) or temporally subsequent (F (i + 1)) image which is opposite to the second image block the first motion vector (v1) is shifted; Calculating a distance measure between the contents of the second and third image blocks B2 (i), B3 (i). Verfahren zum Testen eines Bewegungsvektors zu einem ersten Bildblock (B1(i)) eines ersten Bildes (F(i)) einer Bildfolge, der in einem ersten Randbereich (R1) des ersten Bildes (F(i)) angeordnet ist, wobei der erste Randbereich (R1) sich an einen ersten Rand des Bildes anschließt und wobei der Bewegungsvektor (v1) eine erste senkrecht zu dem ersten Rand verlaufende Vektorkomponente (v1x) und eine zweite Vektorkomponente (v1y) aufweist, wobei das Verfahren aufweist: Ermitteln eines zweiten Bildblocks der gegenüber dem ersten Bildblock B1(i) um den ersten Bewegungsvektor (v1) verschoben ist und der abhängig davon, ob die erste Vektorkomponente (v1x) eine vorgegebene Richtung aufweist in einem dem ersten Bild (F(i)) zeitlich vorausgehenden Bild (F(i – 1)) oder einem dem ersten Bild (B1(i)) zeitlich nachfolgenden Bild (F(i + 1)) angeordnet ist.A method for testing a motion vector to a first image block (B1 (i)) of a first image (F (i)) of an image sequence arranged in a first edge region (R1) of the first image (F (i)), the first edge region (R1) adjoins a first edge of the picture and the motion vector (v1) having a first perpendicular to the first edge running vector component (v1 x) and a second vector component (v1 y), the method comprising: determining a second Image block which is shifted from the first image block B1 (i) by the first motion vector (v1) and which depends on whether the first vector component (v1x) has a predetermined direction in an image preceding the first image (F (i)) ( F (i-1)) or a picture (F (i + 1)) which follows the first picture (B1 (i)) in temporal succession. Verfahren nach Anspruch 1 oder 2, bei dem die vorgegebene Richtung so ist, dass die erste senkrecht zu dem ersten Rand verlaufende Vektorkomponente von dem ersten Rand (R1) weg in das Bild hinein zeigt und bei dem das zweite Bild das zeitlich vorangehende Bild ist.The method of claim 1 or 2, wherein the predetermined Direction so is that the first perpendicular to the first edge running Vector component from the first edge (R1) into the image and in which the second image is the temporally preceding image is. Verfahren nach Anspruch 1 oder 2, bei dem die vorgegebene Richtung so ist, dass die erste senkrecht zu dem ersten Rand verlaufende Vektorkomponente aus dem Bild zu dem ersten Rand (R1) hin zeigt und bei dem das zweite Bild das zeitlich nachfolgende Bild ist.The method of claim 1 or 2, wherein the predetermined Direction so is that the first perpendicular to the first edge running Vector component from the image towards the first edge (R1) and wherein the second image is the temporally subsequent image. Verfahren nach einem der vorangehenden Ansprüche, bei dem der erste Bildblock B1(i) gleichzeitig in einem zweiten Randbereich (RB2) angeordnet ist, der sich an einen zweiten Rand (R2) anschließt und bei dem die zweite Vektorkomponente (v1y) senkrecht zu diesem zweiten Rand (R2) verläuft und das außerdem aufweist: Ermitteln des zweiten Bildblocks (B2(i)) in dem ersten Bild (F(i)) derart, dass dieser Bildblock in der Richtung senkrecht zu dem zweiten Rand (R2) um die zweite Vektorkomponente (v1y) gegenüber der Position des ersten Bildblocks (B1(i)) versetzt ist, wenn die zweite Vektorkomponente eine vorgegebene Richtung besitzt.The method is arranged according to one of the preceding claims, wherein the first image block B1 (i) simultaneously in a second edge region (RB2) which is located at a second edge (R2) connects, and wherein the second vector component (v1 y) perpendicular to this second edge (R2) and further comprising: determining the second image block (B2 (i)) in the first image (F (i)) such that this image block is in the direction perpendicular to the second edge (R2) about the second vector component (v1 y) relative to the position of the first image block is offset (B1 (i)) if the second vector component having a predetermined direction. Verfahren nach Anspruch 4, bei dem die vorgegebene Richtung so ist, dass die zweite senkrecht zu dem zweiten Rand (R2) verlaufende Vektorkomponente von dem zweiten Rand (R2) weg in das Bild hinein zeigt und bei dem das zweite Bild das zeitlich vorangehende Bild ist.Method according to claim 4, wherein the predetermined Direction so that is the second perpendicular to the second edge (R2) extending vector component from the second edge (R2) away in the Picture shows in and in which the second picture the temporally preceding Picture is. Verfahren nach Anspruch 5, bei dem die vorgegebene Richtung so ist, dass die zweite senkrecht zu dem zweiten Rand (R2) verlaufende Vektorkomponente von dem zweiten Rand (R2) weg in das Bild hinein zeigt und bei dem das zweite Bild das zeitlich nachfolgende Bild ist.The method of claim 5, wherein the predetermined Direction so that is the second perpendicular to the second edge (R2) extending vector component from the second edge (R2) away in the Picture and in which the second picture is the time following Picture is. Verfahren nach einem der vorangehenden Ansprüche, bei dem die Bilder (F(i), F(i – 1)), F(i + 1)) der Bildfolge in einer Bild-in-Bild-Darstellung in Bildern einer weiteren Bildfolge dargestellt werden.Method according to one of the preceding claims, in which the images (F (i), F (i-1)), F (i + 1)) of the image sequence in a picture-in-picture representation in pictures of another picture sequence being represented. Verfahren nach einem der vorangehenden Ansprüche, bei dem die Bilder (F(i), F(i – 1)), F(i + 1)) der Bildfolge in einer ”Splitscreen”-Darstellung neben Bildern wenigstens einer weiteren Bildfolge dargestellt werden.Method according to one of the preceding claims, in which the images (F (i), F (i-1)), F (i + 1)) of the image sequence in a "split screen" view next to pictures at least one further image sequence are displayed.
DE102008054503A 2008-12-10 2008-12-10 Method for motion estimation at image edges Ceased DE102008054503A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102008054503A DE102008054503A1 (en) 2008-12-10 2008-12-10 Method for motion estimation at image edges
PCT/EP2009/066751 WO2010066801A1 (en) 2008-12-10 2009-12-09 Method for estimating movement at edges of images

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102008054503A DE102008054503A1 (en) 2008-12-10 2008-12-10 Method for motion estimation at image edges

Publications (1)

Publication Number Publication Date
DE102008054503A1 true DE102008054503A1 (en) 2010-06-17

Family

ID=41557671

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008054503A Ceased DE102008054503A1 (en) 2008-12-10 2008-12-10 Method for motion estimation at image edges

Country Status (2)

Country Link
DE (1) DE102008054503A1 (en)
WO (1) WO2010066801A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050232357A1 (en) * 2004-03-30 2005-10-20 Ralf Hubrich Motion vector estimation at image borders
WO2007119198A1 (en) 2006-04-14 2007-10-25 Nxp B.V. Motion estimation at image borders

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6339656B1 (en) * 1997-12-25 2002-01-15 Matsushita Electric Industrial Co., Ltd. Moving picture encoding decoding processing apparatus
US7440500B2 (en) * 2003-07-15 2008-10-21 Lsi Logic Corporation Supporting motion vectors outside picture boundaries in motion estimation process

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050232357A1 (en) * 2004-03-30 2005-10-20 Ralf Hubrich Motion vector estimation at image borders
WO2007119198A1 (en) 2006-04-14 2007-10-25 Nxp B.V. Motion estimation at image borders

Also Published As

Publication number Publication date
WO2010066801A1 (en) 2010-06-17

Similar Documents

Publication Publication Date Title
EP1770635B1 (en) Iterative image interpolation method
DE102010046259A1 (en) Image frequency conversion using motion estimation and compensation
DE102009046114A1 (en) Method and apparatus for generating a calibrated projection
DE60028584T2 (en) SYSTEM AND METHOD FOR IMAGE INTERPOLATION
DE1512352C3 (en) Color television camera
DE102007027642A1 (en) Method for processing a sequence of images with successive video images to improve the spatial resolution
EP3634003B1 (en) Method and device for time synchronization of the optical transmission of data in the free space
EP1605405B1 (en) Procedure for the determination of movement vectors
DE3813461C2 (en) Multi-tube color television camera
DE10084783B3 (en) System and method for generating video frames
EP2105883A1 (en) Method for testing a movement vector
DE102009026983A1 (en) Image processing method with a motion estimation and image processing arrangement
DE2261228C2 (en) Method and circuit arrangement for suppressing the comb effect when recording video signals corresponding to the interlaced method on cinema film
DE102005063072B4 (en) Method and apparatus for interline interpolation
DE102008054503A1 (en) Method for motion estimation at image edges
DE102010053296A1 (en) Methods and systems for close-range motion compensation deinterlacing
DE102008036279B4 (en) Method for determining a motion vector for an image block of an intermediate image
EP1976288B1 (en) Iterative method for interpolating image information values
EP1397002B1 (en) A gradient based method for the interpolation of picture elements
DE102019104397A1 (en) Image synthesis device and control method
EP3155803B1 (en) Method for the transformation of a moving image sequence and moving image sequence transformation device
DE19505758A1 (en) Method and circuit arrangement for flicker reduction for a device for video signal processing
DE102009026981A1 (en) Determination of a vector field for an intermediate image
DE102004049163B3 (en) Method for determining a complete depth information of a camera image
DE102008014790A1 (en) Motion vector testing method for image processing, involves determining primary and secondary image blocks in primary and secondary image sections, respectively, using motion vector, and comparing contents of image blocks

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R084 Declaration of willingness to licence

Effective date: 20111122

R003 Refusal decision now final

Effective date: 20111213

R082 Change of representative

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCH, DE

R081 Change of applicant/patentee

Owner name: ENTROPIC COMMUNICATIONS, INC., SAN DIEGO, US

Free format text: FORMER OWNER: TRIDENT MICROSYSTEMS (FAR EAST) LTD., GRAND CAYMAN, KY

Effective date: 20121022

Owner name: ENTROPIC COMMUNICATIONS, INC., US

Free format text: FORMER OWNER: TRIDENT MICROSYSTEMS (FAR EAST) LTD., GRAND CAYMAN, KY

Effective date: 20121022

R082 Change of representative

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCH, DE

Effective date: 20121022