WO1995025404A1 - Procede et dispositif d'estimation de mouvement entre images de television d'une sequence d'images - Google Patents
Procede et dispositif d'estimation de mouvement entre images de television d'une sequence d'images Download PDFInfo
- Publication number
- WO1995025404A1 WO1995025404A1 PCT/FR1995/000306 FR9500306W WO9525404A1 WO 1995025404 A1 WO1995025404 A1 WO 1995025404A1 FR 9500306 W FR9500306 W FR 9500306W WO 9525404 A1 WO9525404 A1 WO 9525404A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image
- estimation
- macroblock
- comparison
- motion
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
- H04N5/145—Movement estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/53—Multi-resolution motion estimation; Hierarchical motion estimation
Definitions
- the invention relates to a method and a device for estimating movement between television images of a sequence of images.
- motion compensation constitutes one of the possibilities used, for compressing or processing animated images of the television image type.
- the motion compensation technique includes two distinct functional operations:
- motion compensation is specific to the application in which it is used.
- motion compensation is used to interpolate the images.
- motion compensation is used to estimate (or predict) one or more successive images, in order to reduce the redundancy of image sequences.
- Motion estimation can be common to a large number of applications.
- the motion estimation operation is the most costly in terms of number of operations and the quality of the motion compensation depends more particularly on this estimation operation.
- the asymmetrical nature of motion estimation and compensation appears to be further reinforced for compression applications, during the transmission or storage of images in digital form, insofar as the estimation operation intervenes only in the compression opera ⁇ tion while the compensation intervenes both in the operations of compression and decompression.
- the transmitter or compressor includes the two estimation and compression functions while the receiver only includes the compensation function, the displacement vectors then having to be transmitted.
- a first family consists in using the gradient information or amplitude variation of the images. Such a method was the subject of a first publication by LIMB, PEASE and ALSH entitled “Combining interframe and frame to frame coding for television”. BSTJ Vol.53, n ° 6, July-August 1974, pp. 1137-1173, and a second publication by NETRAVALI, ROBBIUS, entitled “Motion Compensated Television Coding”: Part I - BSTJ Vol.58, n ° 3, March 1979, pp. 631-670.
- a second, more recent family consists in using a phase or amplitude correlation process between the images.
- Such a process was the subject of a publication by JAIN, JAIN entitled “Displacement measure- ment and its applications in interframe coding", IEEE Trans. on Comm. Vol. COM-29, n ° 12, Dece ber 1981, pp. 1799-1808.
- the motion estimation methods by point make it possible to provide, at the output of the estimation, a displacement vector by point and therefore a precise vector field and very representative of the real movement of objects in the image. These methods are therefore rather reserved for applications in which the quantity of information representative of the vector field is not troublesome, either in the absence of storage or transmission of this information, applications such as standard conversion. Recursive type, they require several sequential operations on each point, and therefore cannot be validly applied in real time on video signals from television images.
- Block estimation methods provide a single vector per image block. They are less precise than the methods of the first family but the quantity of information necessary to represent the field of the displacement vectors is lower.
- the displacement vector is, in this proposition, calculated in several stages. It is calculated on low resolution images, obtained from the initial images by subsampling, a first vector being calculated at a lowest resolution level and then refined in each of the following levels, which have an increasing resolution in a report 2 at each level.
- this method requires the calculation and storage of images on all the resolution levels and provides a significant delay in calculating the displacement vectors, these being computed recursively from one level of resolution to the next.
- Another object of the present invention is the implementation of a method and a device for estimating movement between television images of a sequence of images allowing any type of processing of animated images, in particular in television. digital.
- Another object of the present invention is also the implementation of a method and a device for estimating movement between television images of a sequence of images compatible with digital data compression standards or image signals such as standards:
- - CCITT H261 for the videophone, for data transmission rates between 64 kbits / s and 2 Mbits / s, - ISO 11172 (MPEG1) for storing moving images on optical disc (CD-ROM) at 1, 15 Mbits / s,
- the method for estimating movement between television images of a sequence of images, object of the present invention is implemented on at least one sequence of images, each image being formed of a succession of lines of pixels. grouped in an even frame and in an odd frame.
- Each sequence of images comprises at least with respect to a current image, for which the motion estimate is established, at least one anterior image and one posterior image capable of constituting each an estimation comparison image.
- Each current and estimate comparison image is subdivided into blocks of N pixels on N image lines and in macroblocks formed by p adjacent blocks, each of the macroblocks being formed by two half-macroblocks each constituted by lines of the respectively odd even frame.
- the device for estimating movement between television images of a sequence of images operates on at least one sequence of images, each image and each sequence of images conforming to the specifications mentioned above.
- the motion estimation operator module comprises at least, supplied in parallel by video-digital signals representative of the current image and of the original estimation comparison image, a rough estimation circuit of motion making it possible to determine, for each macroblock of the current image, auxiliary motion vectors with respect to the estimation comparison image, each auxiliary motion vector being obtained by rough motion estimation of the current image so as to obtain, for each macroblock and half-macroblock of this macroblock, an associated auxiliary vector.
- a final motion estimation circuit is connected in cascade to the rough motion estimation circuit and receives the auxiliary motion vectors delivered by the latter. This final estimation circuit delivers from the auxiliary motion vectors and the estimation comparison image a set of at least three final motion vectors associated with each macro-block and half-macroblock of this macroblock of l 'current image.
- the method and the device which are the subject of the present invention find application to the techniques used for the transmission and processing of digital television image data such as digital compression, standard conversions, pre- and post-processing in the studio, the calculation of disparities or differences between several views of the same scene, in stereoscopic television for example.
- digital television image data such as digital compression, standard conversions, pre- and post-processing in the studio, the calculation of disparities or differences between several views of the same scene, in stereoscopic television for example.
- FIG. 2a shows, in an illustrative manner, the different steps allowing the implementation of the process which is the subject of the invention
- FIG. 2b represents a variant implementation of the method which is the subject of the invention
- FIG. 3 shows, in a synoptic manner, a device allowing the implementation of the method which is the subject of the present invention
- FIG. 4a represents, in a nonlimiting manner, a detail of embodiment of the device shown in FIG. 3, relating to a rough motion estimation circuit
- FIG. 4b represents the diagram of a motion estimation circuit proper, used for the implementation of the coarse motion estimation circuit represented in FIG. 4a
- FIG. 4c represents, by way of illustration, the operating mode of the actual motion estimation circuit represented in FIG. 4b, on a specific search window of the rough estimation comparison image
- FIG. 5 shows, in a synoptic manner, a detail of embodiment of the device represented in FIG. 3, relating to a final motion estimation circuit
- FIGS. 6a and 6b show a detail of an elementary motion estimator circuit in operating mode said in full step respectively an operating timing diagram of this elementary motion estimator circuit
- FIGS. 7a and 7b show a mode of obtaining pixels or image points at half a step, as specified by the MPEG standard, respectively a detail of an elementary motion estimator circuit in operating mode at half step.
- each image corresponds, in Anglo-Saxon language, to the term "frame” and that the term frame also corresponds to the term "field" in this same language.
- each image is formed by a succession of lines of pixels, these lines being grouped together in an even frame and in an odd frame.
- the notion of digitized image corresponds to that defined by recommendation 601 of the International Consultative Committee for CCIR Broadcasting. It is recalled that, according to the above definition, an image comprises 625 lines of pixels, each image comprising 575 visible lines, the transmission of this image data, before compression, being carried out with a bit rate of 165 Mb / s. that, in an image line, each image point or pixel comprises a luminance component Y whereas one image point out of two further comprises a color difference component, denoted DR respectively DB.
- the objective of the motion estimation process is to reduce the transmission rate of the information conveyed by the image data, from the value of the previously mentioned rate to a value between 5 to 10 Mb / s after compression.
- FIG. 1a there is shown schematically a coding process satisfying the MPEG specification on a given sequence of successive images.
- sequence represented in figure la it is indicated that three types of images are specified:
- the predicted images, denoted P coded with a prediction by estimation of unidirectional movement with respect to a previous image.
- the predicted image P is image 4, which is predicted with respect to image 1,
- the images coded with a so-called bi-directional prediction by motion estimation these images being denoted B, this coding with bidirectional prediction being carried out with respect to a previous image and a following image.
- the type B images are images 2, 3, 5, 6, which are coded with a predic- bidirectional with respect to images 1.4, images 1.4, images 4.7, images 4.7.
- each image the coding unit is the block of pixels, each block being constituted for example by eight successive lines comprising eight successive points each, as shown in FIG. It is thus understood that each block B comprises lines belonging to the even frame, lines 2j, 2j + 2 and following, and interlaced lines belonging to the odd frame 2j + l, 2 +3 and following.
- a television image comprising 576 lines of 720 pixels is therefore formed by 1620 macroblocks, each macroblock comprising eight lines of the even frame and eight lines of the odd frame forming this image.
- the macroblock is the prediction unit, that is to say the portion of the image on which the motion vectors are calculated.
- FIG. 1a shows a conventional process for predicting movement between image 1 and image 2 for example, or between two images of the sequence represented in the same figure in accordance with the MPEG coding.
- the prediction process consists, for a macroblock MB of image 2, in seeking the position of a macroblock of image 1 most similar to the original macroblock MB of image 2 in the window F , the motion vector V then being defined as the translation vector of the predicted macroblock, that is to say having the character of greatest similarity, of the image 2 identified in the window F of the image 1.
- the window F is generally centered on the same position (or same coordinates) as the MB macroblock.
- Image 2 can then be transmitted from the values difference in luminance and / or chrominance of each predicted macroblock with respect to each original macroblock of origin MB and of the corresponding displacement vector V, which of course makes it possible to reduce the volume of information to be transmitted and therefore the rate in result.
- Figure 2a is, in order to facilitate reading, shown on two successive plates, the plates 2/8 in Figure 2a (START) and 3/8 in Figure 2a (END).
- the method which is the subject of the present invention is implemented on a sequence of images comprising at least, with respect to a current image, the image B in the figure. 2a, for which the motion estimate is established, at least one anterior image and one posterior image capable of each constituting an estimation comparison image.
- the estimation comparison images are denoted A in FIG. 2a above.
- the method which is the subject of the present invention can preferably be implemented on a sequence comprising at least four successive images, images 1, 2, 3, 4 shown in Figure 2a.
- the current image B is image 2
- the estimation comparison images can be image 1 or image 4 or the two aforementioned images, as well as it will be described later in the description.
- the current coarse and estimation comparison images having been obtained the method which is the subject of the present invention then consists in determining for each macroblock MB and half-macroblock of this macroblock of the current coarse image GB an auxiliary motion vector with respect to the rough GA comparison comparison image.
- Each auxiliary motion vector is obtained by block estimation so as to obtain, for each macroblock of the current coarse image, at least one associated auxiliary vector.
- a single auxiliary motion vector is obtained for each macroblock MB, while in a more elaborate embodiment, a set of three auxiliary motion vectors is obtained for each macroblock MB, an auxiliary motion vector associated with each macroblock and half-macroblock of this macroblock, as will be described below.
- an auxiliary vector is obtained, denoted VAMB, associated with this macroblock, an auxiliary vector of even frame, denoted VAMB 2j , associated with the even frame of this macroblock and therefore at the half-macroblock thus formed, and an auxiliary vector, denoted
- VAMB J J! associated with the other half-macroblock formed by the odd frame constituting the latter half-macroblock.
- the motion estimation is of course carried out between the current coarse image and the coarse image of comparison of estimation by a conventional block estimation process. It is understood in particular that this estimate proper is carried out on a comparison criterion, denoted CC, in FIG. 2a, between the luminance values of the macroblocks of the current coarse image GB and of the coarse comparison image of estimation GA .
- the corresponding luminance values of the current coarse image GB closest to the values of the original macroblock of luminance values GYO to GY3 of the coarse estimation comparison image GA are themselves denoted GY'O to GY '3 for the predicted macroblock, that is to say for a satisfaction of the comparison criterion CC bringing a minimum difference between these luminance values GYO to GY3 respectively GY'O to GY'3, as will be described later in the description.
- the method then consists, as also shown in FIG. 2a, of determining for each macroblock of the aforementioned current image, a set of at least three final motion vectors, by a block estimation process, from the auxiliary vector associated with each macroblock and half-macroblock constituting this macroblock, as well as blocks and macroblocks stock and estimate comparison images.
- auxiliary motion vectors associated with each macroblock and half-macroblock having been obtained during the rough motion estimation, it is then possible to carry out from the values of the aforementioned auxiliary motion vectors, a motion estimation process on the macroblocks and half-macroblocks of the current image B, the luminance components of the macroblocks and half-macroblocks of the current image and of the estimation comparison image, noted in the figure 2a Y'O to Y'3 respectively Y0 to Y3, being of course subject to the abovementioned comparison criterion CC and the choice of the final motion vector, denoted VMB, being made from a choice centered on the corresponding auxiliary motion vector VAMB obtained in the previous step.
- VAMB 2j respectively VAMB 2 .. lr is also obtained on the basis of a comparison criterion CC between the luminance values of the even frames of the half-macroblocks of the current image, luminance values denoted Y'0 2j to Y'3 2j , and the corresponding luminance values of the estimation comparison image, luminance values denoted Y0 2j to Y3 2j , a final vector of motion relative to the even frame, denoted VMB 2j , is thus obtained in a manner analogous to the vector relative to the entire macroblock. It is the same for the half-macroblock constituted by the odd frame, for which the luminance values of the current image are noted Y'O ⁇ !
- step b) represented in FIG. 2a consisting in establishing for each macroblock MB a single auxiliary vector VAMB then consists in carrying out the only operation represented above. above the mixed line, on the luminance values GYO to GY3 and GY'O to GY'3 of the current coarse images GB and of estimation comparison GA.
- the step consisting in forming, from the current image B and from the estimation comparison image A, corresponding coarse images GB and GA consists in fact of performing a subsampling of current images B and estimation comparison A, so as to obtain a set of sub-sampled pixel blocks and macroblocks.
- this may consist in determining the auxiliary or final motion vectors by block estimation by correlation on resemblance criterion between the different macroblocks and aforementioned half-macroblocks.
- this resemblance criterion can consist in minimizing the difference of the absolute values or of the squares of the absolute values of the corresponding luminance values as previously described in connection with FIG. 2a.
- the selection criterion can be achieved by a function for sorting the minimum value, the address of the predicted macroblock satisfying this sorting criterion then being retained and compared to the address of the original macroblock, the motion vector such that the auxiliary macroblock or half-macroblock vector or, ultimately, each final motion vector, can then be obtained by difference from the respective addresses.
- the sequence of images comprises four successive images or a multiple of four successive images.
- the current image is the image of rank 2, the previous image the image of rank 1, the posterior image the image of rank 4, the image of rank 1 and the image of rank 4 constituting the estimation comparison image A as previously mentioned in the description.
- the method which is the subject of the invention, consists in implementing a motion estimation step called estimation forward motion between image 2, current image, and prior estimation comparison image 1, and to jointly perform a motion estimation step, designated as backward motion estimation, between current image 2 and the posterior image, image 4.
- a motion estimation step called estimation forward motion between image 2, current image, and prior estimation comparison image 1
- a motion estimation step designated as backward motion estimation, between current image 2 and the posterior image, image 4.
- the method which is the subject of the present invention consists in successively carrying out the steps of rough motion estimation then of final motion estimation applied to the pair of images, current image 2, previous image 1 respectively current image 2, posterior image 4 of the sequence of images.
- this operating mode makes it possible, for each original MB macroblock, or each macroblock of the current image, to obtain a set of at least six final motion vectors, these vectors being noted VMB 21 , VMB 2j 21 , VMB 2j ⁇ 1 21 and VMB 24 , VMB 2j 24 , VMB 2j ⁇ 24 , from the corresponding auxiliary motion vectors,
- a set of three vectors per original macroblock is obtained in the simplest case where, a macroblock of the current image is compared with each original macroblock to obtain a predicted macroblock, a final motion vector being associated with each of the aforementioned macroblocks and in which each semi-macroblock constituted by the respectively odd even frame is also associated with a final motion vector obtained by comparing two to two of the half-macroblocks constituted by the even frames respectively by the odd frames, a final motion vector thus being associated with each macroblock to form a set of three final motion vectors.
- a variant implementation of the process which is the subject of the present invention also consists, for each half macroblock, to compare two by two not only the even frames of the half-macroblocks of the current image and of the motion estimation comparison image constituted by the even frames, but also to carry out an estimation of motion between frames respectively odd pairs constituting the half-macroblocks of the current image and of the motion estimation comparison image.
- the device for estimating movement which is the subject of the present invention, operates under the conditions described above relating to the implementation of the corresponding method.
- the device according to the invention comprises at least one operator module for estimating movement of the current image with respect to the estimation comparison image, this operator module being denoted MO in the figure. 3. It comprises at least, fed in parallel by video-digital signals representative of the current image B and of the estimation comparison image A, a rough motion estimation circuit, denoted 1, allowing determining for each macroblock MB of the current image of the auxiliary motion vectors with respect to the estimation comparison image.
- each auxiliary motion vector is obtained by rough motion estimation of the current image as described previously in connection with the method which is the subject of the present invention, so as to obtain for each macroblock MB and half-macroblock of this macroblock, as shown in FIG. 2a, an associated auxiliary vector.
- the motion estimation operator module MO receives the aforementioned video signals representative of the current image B and of the estimation comparison image A, the corresponding pixel values being coded on 8 bits and delivered. at a frequency of 13.5 MHz on each of the corresponding BUS links.
- the operator module MO also comprises, supplied in parallel by the aforementioned video-digital signals, in addition to the rough estimation circuit, denoted 1, an estimation circuit - final movement, noted 2, the two circuits being cascaded as shown in FIG. 3.
- the rough estimation circuit 1 makes it possible to determine, for each macroblock of the current image B, auxiliary motion vectors, the three vectors previously mentioned in the description by VAMB, VAMB 2j and VAMB 2J + ⁇ relating respectively to each macroblock, and the half-macroblock constituted by the even frame respectively the odd frame of this macroblock.
- auxiliary vectors a vector being associated with each macroblock and with each of the half-macroblocks constituting this macroblock, a set of three auxiliary motion vectors is obtained for each of the macro ⁇ blocks MB.
- the rough estimation circuit 1 can simply deliver the auxiliary vector VAMB associated with each macroblock.
- This operating mode is represented by the dotted parentheses of the auxiliary motion vectors associated with the half-macroblocks of this macroblock.
- the final motion estimation circuit 2 receives the aforementioned auxiliary motion vectors and delivers, from these and video signals representative of the current image B and of the current estimation comparison image A, a set of '' at least three final motion vectors associated with each macroblock and half-macro ⁇ block of this macroblock of the current image B.
- the motion estimation operator module MO therefore delivers the set of at least three motion estimation vectors previously described in the description, the vectors VMB, VMB 2j and VMB 2j . : each relating to a macroblock and to the half-macroblock constituted by the even frame respecti ⁇ vely the odd frame of this macroblock.
- Each of these vectors can be represented on 12 bits and the values of the aforementioned motion estimation vectors are delivered by the operator module MO at the macroblock frequency, ie every 128 pixels.
- the aforementioned vectors are of course the vectors delivered by the operator module MO.
- each final motion vector obtained for each macroblock MB are three in number, the vectors previously mentioned, while in a more elaborate embodiment, each final motion vector can in fact consist of two final motion vectors obtained by block estimation, carried out on the half-macroblocks, the estimation being able to be carried out between half-macroblocks constituted by the same frame or respectively by the frames of even, odd rank, or vice versa. In the latter case, we thus obtain a set of five final motion vectors associated with each of the macroblocks MB.
- a first operator module MO can be used to perform a forward estimation process, as shown in FIG. 2a, and that a second operator module MO can be used substantially simultaneously to perform a back estimation , as also shown in Figure 2a, to allow the implementation of the method of the present invention substantially in real time.
- the concept of real time is defined as a processing process occurring on four successive images, images 1, 2, 3 and 4 represented in FIG. 2a, the sequence of the four images being memorized in order to allow the substantially simultaneous driving of the forward and backward estimation process and the processing time, that is to say the motion estimation by the implementation of each operator module MO, being of course very low compared to the time sequence of origin of transmission of the above four images.
- the data to be transmitted in place of the original images 2 and 4, which of course makes it possible to reconstruct the sequence of the four aforementioned images with a volume of data to be trans- put significantly reduced and therefore a corresponding digital compression.
- the coarse motion estimation circuit 1 itself comprises subsampling circuits, denoted 11a, 11b, of the current image B and of the image comparison estimation A, these circuits 11a and 11b making it possible to obtain corresponding coarse images, ie the current coarse image and the coarse estimation comparison image each formed from a set of blocks of pixels and of sub-sampled macroblocks. It is noted that, upstream of the sub-sampling circuits 11a and 11b, there are also provided pre-filtering circuits 10a and 10b, which receive respectively the video signal relating to the estimation comparison image A and to the current image B.
- a clock signal Ck enables the pre-filtering circuits 10a and 10b to be timed as well as the sub-sampling circuits 11a and 11b by means of a divider by 16 bearing the reference 12.
- the operations are carried out in parallel on the two images A and B and they consist:
- each point before filtering the image A or B corresponds to a filtered output value, delivered by the circuit 10a or 10b.
- This filtered value is obtained by multiplying the elements of the original image by predefined coefficients.
- the pre-filtering circuits 10a and 10b are dedicated circuits available on the market, which ultimately make it possible to weight the luminance value of each pixel to ensure the filtering proper and to avoid the phenomenon of aliasing of the spectra,
- Each of the subsampling circuits 11a and 11b finally delivers the current coarse images and coarse estimation comparison images to a circuit 13 for calculating motion estimation by blocks, which performs the actual estimation calculation of movement by correlation, on the criterion of resemblance between the different sub-sampled macroblocks previously obtained and delivered by the sub-sampling circuits.
- the circuit 13 of course delivers the auxiliary vectors VAMB *, VAMB 2j ', VAMB 2 '.
- the circuit 13 delivers only the motion vectors? VAMB auxiliaries associated with each macroblock MB, this operating mode being represented in FIG. 4a by the dotted parentheses, the auxiliary motion vectors associated with the half-macroblocks of this macroblock.
- the circuit 13 for calculating motion estimation by blocks is produced from elementary motion estimator circuits, which are constituted by dedicated circuits, commercially available, as will be described below in the description.
- Each elementary motion estimation circuit makes it possible to calculate a motion vector for an elementary block of pixels consisting of eight points (or pixels) by eight lines, the calculation of the elementary motion vector being performed on a search window. (8, +7) horizontally and vertically.
- Image B for which the motion vectors are calculated, in particular the coarse image of comparison of estimation GB delivered by the subsampling circuit 11b, is analyzed in blocks of eight points by eight rows, each column of the block being read consecutively.
- the image A in particular the rough estimation comparison image GA delivered by the sub-sampling circuit 11a in which the corresponding block is searched for performing the block analysis, is analyzed in a manner analogous but by reading three block lines, instead of only one for the current image, as mentioned previously, these three block lines being denoted H, M, B, serving as a search window.
- FIG. 4c there is thus represented on the one hand, a first search window FI defined on the above-mentioned image A or on the rough image of comparison of corresponding estimation, this window FI thus being defined by three block lines H, M, B previously mentioned, the search window FI thus having the coordinates previously mentioned (-8, +7) in horizontal and vertical. It is recalled that these coordinates are defined in pixel step values.
- FIG. 4c also shows a corresponding block of the current image B or of the current coarse image, centered for example with respect to the search window FI.
- FIG. 4b To increase the final search window and therefore the search field by increasing the dimensions of the final search window, it is possible to use several elementary motion estimation circuits, as shown in FIG. 4b, these circuits being connected in parallel and each receiving the pixels of the estimation estimation comparison image A, such as the rough estimation comparison image GA, for the areas H, M and B of FIG. 4c.
- the reading of the pixels for the areas H, M and B is carried out by an addressing circuit 130, which of course makes it possible to store all the pixels of the image GA as shown in FIG. 4c, and to address in read the corresponding pixels to the elementary motion estimation calculation circuits 131, 132, 133 and 134 as shown in Figure 4b.
- each elementary motion estimation calculation circuit 131 to 134 can be produced for example by a circuit bearing the reference STI 3220, sold by the company SGS-THOMSON MICROELECTRONICS.
- each elementary motion estimation calculation circuit then calculates the elementary motion vector, and of course the distortion criterion associated with this vector, for the search window which is associated with it, the windows FI to F4 previously mentioned.
- the results, denoted VI, dl to V4, d4 are then delivered to a block estimation motion calculation circuit proper, denoted 135, which delivers the auxiliary motion estimation vectors previously mentioned in the description.
- the circuit 135 constitutes a comparison circuit, which from the elementary motion vectors VI to V4 and the distortion variables dl to d4 constituting in fact variables of resemblance values, delivers on vector the sorting criterion auxiliary movement V associated with the sub-sampled block of image B, current coarse sub-sampled image.
- the amplitude of the auxiliary motion vector V obtained is then multiplied by the value four corresponding to the subsampling values used for the rough estimate.
- the total search window on the original estimation comparison comparison image A has the values (-128, +124) horizontally and (-32, +28) vertically.
- the final motion estimation is carried out on each macroblock MB of the current image B, a set of three or more vectors being thus determined.
- the VMB final motion vectors are indicated that the final motion estimation is carried out on each macroblock MB of the current image B, a set of three or more vectors being thus determined.
- VMB 2d and VMB 2d . ! are calculated from the auxiliary vector of the same block obtained after rough estimation.
- the calculations of the final motion estimation vectors can be carried out in parallel by operators or circuits of the same type, which will be described below.
- the circuit 2 for final motion estimation comprises a circuit 20 for image motion estimation, a circuit 21 for image motion estimation assigned to the frame pair and an image motion estimation circuit 22 assigned to the odd frame, for example.
- the circuits 20, 21 and 22 receive in parallel the auxiliary motion vectors previously mentioned and delivered by the estimation circuit. coarse motion 1 shown in FIG. 4a, as well as the video-digital signals representative of the current image B and of the original estimation comparison image A.
- the circuits 20, 21 and 22 respectively deliver the final motion vector VMB, the even frame motion vector VMB 2 - j "and the odd frame motion vector
- VMB 2j + 1 for each macroblock and corresponding half-macroblock of this macroblock these vectors constituting of course the three final motion vectors previously mentioned in the description, in the case of the developed implementation.
- a first embodiment of one of the motion estimation circuits 20, 21 or 22 will now be described in a mode of operation known as full step for which the motion estimation by blocks is performed for the luminance values of every pixel.
- the three motion estimation circuits 20, 21 and 22 are implemented from the same elementary motion estimation calculation circuit such as the STI circuit 3220 previously mentioned. in the description.
- This circuit calculates, for a block of pixels of 16 x 16, an elementary motion vector of amplitude (-8, +7) in a search window of dimensions 32 x 48 (horizontally x vertically).
- This window corresponding in the vertical direction to three dimensions of blocks is loaded by three BUSes in parallel and its loading time is double that of the loading time of the aforementioned 16 x 16 block.
- the search window for a block considered is shared for half with the search window for the next block and the elementary motion estimation calculation circuit correctly calculates a vector for each 16 ⁇ 16 block in the loading time of this block.
- the solution consists in loading a new complete window for each 16 x 16 block.
- the duration of this loading being double that of the block, it is therefore essential, as shown in FIG. 6a, to have two circuits for calculating estimation of elementary movements, which are denoted 203 and 204, operating in parallel alternately to calculate a motion estimation vector per 16 ⁇ 16 block.
- each circuit, 20, 21 or 22 comprises, as shown in FIG. 6a, a circuit 201 receiving the original current image B allowing for example the placing in blocks according to the aforementioned 16 x 16 blocks and a circuit 202 carrying out the same function with regard to the estimation comparison image A, the aforementioned search window being centered on the auxiliary motion estimation vector VAMB ' or VAMB 2j ' or VAMB 2j . 1 '.
- the circuits 201 or 202 can for example consist of circuits for memorizing and addressing in reading the corresponding pixels, as described previously in the description.
- the circuit 202 delivers, for example, the pixels of the search window according to the three areas H, M, B previously mentioned.
- the basic motion estimation calculation circuits 203 and 204 each receive the 16 x 16 block signal delivered by the circuit 201, which corresponds to the current image B previously mentioned, as well as the corresponding search windows, symbolized by the three zones H, M, B mentioned above.
- the circuit 203 operates for example for even blocks while the circuit 204 operates for example for odd blocks.
- the elementary motion calculation circuits 203 and 204 thus deliver, for each 16 ⁇ 16 block, alternatively, an elementary motion estimation vector, which, via a time multiplexer circuit 205, successively delivers the motion estimation vector final, i.e. either the VMB 7 image vector, or the VMB 2j even frame vector or the odd frame vector VMB 2 .
- FIG. 6b shows the simplified timing diagrams for synchronization at the window-block frequency for the even and odd blocks respectively, as well as the final vector frequency of motion estimation delivered by the time multiplexer 205.
- FIGS. 7a and 7b A second alternative embodiment of the circuits for estimating image movement vectors, even frame or odd frame 20, 21, 22 will now be described in connection with FIGS. 7a and 7b in a mode of operation known as half-step, this mode of operation corresponding to a recommendation of the MPEG standard previously mentioned in the description.
- FIG. 7a it can be understood that the circles represent four adjacent pixels two by two of the search window for the estimation comparison image A for example.
- intermediate values can be defined in the horizontal and / or vertical direction, which makes it possible to define five points represented by crosses in FIG. 7a, with each point being associated with an amplitude value of luminance given respectively by (E + F) / 2, (E + C) / 2 and for the central value of the four aforementioned pixels (E + F + C + D) / 4, the luminance values for the intermediate points at the pixels FD respectively CD being obtained by corresponding permutation of the symbols EF x CD.
- each elementary motion estimation calculation circuit such as 203 or 204 has its search window also centered on the corresponding motion estimation auxiliary vector in the same way as in the case of Figure 6a.
- the half-step must be calculated, the single components constituting the elementary motion estimation calculation circuits 203 and 204, components STI 3220 already mentioned, being replaced by four components of this type connected in parallel as will be described in more detail in connection with FIG. 7b.
- a first elementary calculation circuit 2033 allows perform the calculation of the motion estimation vector at full step and its distortion value, these two values being denoted VI, dl
- a second elementary calculation circuit 2034 supplemented upstream by a horizontal half-step filter 2030 makes it possible to perform the calculation of an elementary motion estimation vector V2 and of its distortion d2 at the horizontal step.
- a third elementary calculation circuit 2035 makes it possible to carry out, from a vertical half-step filter 2031, the calculation of an elementary vector V3 and of its distortion d3 at the vertical half-step, while qu a fourth elementary calculation circuit 2036 makes it possible, by means of a horizontal and vertical half-step filter 2032, to calculate a fourth elementary vector V4 and its distortion value d4 in horizontal and vertical half-steps, as illustrated in relation to Figure 7a.
- the elementary vectors VI, V2, V3, V4 and their distortion values dl, d2, d3, d4 are delivered to a circuit applying a sorting criterion on the values of the aforementioned vectors to deliver the vector at half-step V, this vector motion estimation of course constituting either the image vector VMB, or the even frame vector VMB 2j , or the odd frame vector VMB 2jil .
- the device 20, 21 or 22 in fact comprises two circuits as shown in FIG. 7b, which operate alternately in a similar manner, in the operating mode of circuits 203 and 204 of FIG. 6a.
- the operation of the final motion estimation makes it possible to achieve a resolution lower than the dimension of the pixel due to the proposed operating mode.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Analysis (AREA)
Abstract
L'invention concerne un procédé et un dispositif d'estimation de mouvement entre images de télévision. Les images courantes et de comparaison d'estimation sont transformées en images grossières correspondantes et des vecteurs mouvement auxiliaires (1) sont établis à partir des images grossières courantes et de comparaison d'estimation par estimation par blocs, au moins un vecteur mouvement auxiliaire étant établi et associé à chaque macrobloc MB. Des vecteurs mouvement finaux (2) sont établis pour chaque macrobloc MB des images courantes et de comparaison d'estimation d'origine, à partir des vecteurs mouvement auxiliaires. Application à la compression de données dans le cadre de la norme MPEG.
Description
PROCEDE ET DISPOSITIF D'ESTIMATION DE MOUVEMENT ENTRE IMAGES DE TELEVISION D'UNE SEQUENCE D'IMAGES
L'invention concerne un procédé et un dispositif d'estimation de mouvement entre images de télévision d'une séquence d'images.
La transmission et le stockage d'images animées sous forme numérique nécessite la mise en oeuvre d'algorithmes de traitement de plus en plus complexes. Parmi ces algorithmes de traitement, la compensation de mouvement constitue l'une des possibilités utilisées, pour la compression ou le traitement des images animées de type images de télévision.
La technique de la compensation de mouvement comprend deux opérations fonctionnelle ent distinctes :
- l'estimation de mouvement, laquelle consiste à calculer des vecteurs de déplacement entre des images issues d'une même séquence d' images ;
- la compensation de mouvement proprement dite, laquelle consiste à utiliser les vecteurs de déplacement calculés lors de l'estimation, afin d'effectuer des traite- ments divers.
La compensation de mouvement proprement dite est spécifique de l'application dans laquelle celle-ci est utilisée. En conversion de norme ou de standard de transmis¬ sion, la compensation de mouvement est utilisée pour effectuer une interpolation des images. En compression de données, la compensation de mouvement est utilisée pour estimer (ou prédire) une ou plusieurs images successives, afin de réduire la redondance des séquences d'images.
L'estimation de mouvement, quant à elle, peut être commune à un grand nombre d'applications. D'une manière générale, l'opération d'estimation de mouvement est la plus coûteuse en nombre d'opérations et la qualité de la compen¬ sation de mouvement dépend plus particulièrement de cette opération d'estimation. Le caractère dissymétrique de l'estimation et de compensation de mouvement apparaît encore renforcé pour les
applications de compression, lors de la transmission ou du stockage d'images sous forme numérique, dans la mesure où l'opération d'estimation intervient uniquement dans l'opéra¬ tion de compression alors que la compensation intervient à la fois dans les opérations de compression et de décompres¬ sion. Ainsi, lors de la transmission d'images, l'émetteur ou compresseur inclut les deux fonctions d'estimation et de compression alors que le récepteur inclut uniquement la fonction de compensation, les vecteurs de déplacement devant alors être transmis.
Parmi les méthodes actuellement mises en oeuvre pour effectuer l'estimation de mouvement, on distingue deux grandes familles de techniques.
Une première famille consiste à utiliser 1' informa- tion de gradient ou variation d'amplitude des images. Une telle méthode a fait l'objet d'une première publication par LIMB, PEASE et ALSH intitulée "Combining interframe and frame to frame coding for télévision". BSTJ Vol.53, n°6, July-August 1974, pp. 1137-1173, et d'une deuxième publica- tion par NETRAVALI, ROBBIUS, intitulée "Motion Compensated Télévision Coding" : Part I - BSTJ Vol.58, n°3, March 1979, pp. 631-670.
Une deuxième famille, plus récente, consiste à utiliser un processus de corrélation de phase ou d'amplitude entre les images. Un tel processus a fait l'objet d'une publication par JAIN, JAIN intitulée "Displacement measure- ment and its applications in interframe coding", IEEE Trans. on Comm. Vol.COM-29, n°12, Dece ber 1981, pp. 1799-1808.
Ces deux familles de méthodes sont les plus communé- ment désignées par estimation de mouvement par point et par estimation de mouvement par bloc (Pel recursive respective¬ ment Block matching, en langage anglo-saxon).
Les méthodes d'estimation de mouvement par point permettent de fournir, en sortie d'estimation, un vecteur déplacement par point et donc un champ de vecteurs précis et très représentatif du mouvement réel des objets dans
l'image. Ces méthodes sont donc plutôt réservées à des applications dans lesquelles la quantité d'information représentative du champ de vecteurs n'est pas gênante, soit en l'absence de stockage ou de transmission de cette information, applications telles que la conversion de standard. De type récursif, elles nécessitent plusieurs opérations séquentielles sur chaque point, et ne peuvent donc pas être valablement appliquées en temps réel sur des signaux vidéo d'images de télévision. Les méthodes d'estimation par bloc fournissent un seul vecteur par bloc d'image. Elles sont moins précises que les méthodes de la première famille mais la quantité d'information nécessaire pour représenter le champ des vecteurs déplacement est plus faible. Elles sont donc plutôt réservées à des applications de compression ou de stockage d'images et sont préconisées dans les normes de compression ETSI ETS 300 174, H261 du CCITT et ISO 11172. Très réguliè¬ res du point de vue processus de calcul, elles ont permis le développement de circuits intégrés dédiés tels que le LSI Logic L64720 Motion Estimation Processor ou SGS-THOMSON MICROELECTRONICS STI 3220, lesquels réalisent la fonction estimation de mouvement malgré un nombre important d'opéra¬ tions de calcul. Les deux familles de méthodes précitées demandent toutefois un nombre d'opérations très important, la quantité d'opéra¬ tions augmentant proportionnellement aux dimensions d'une fenêtre de recherche de points respectivement de blocs.
Plusieurs propositions ont été effectuées pour remédier à cet inconvénient. Une première proposition, faite par JAIN, JAIN déjà cité, consiste à rechercher, dans une technique d'estimation de mouvement par blocs, le vecteur déplacement ou mouvement en plusieurs étapes. Des positions de déplacement écartées les unes des autres sont testées, la recherche étant affinée en plusieurs étapes similaires autour de la position sélection¬ née à l'étape précédente. Cette méthode est sous-optimale
car elle peut converger vers un vecteur différent du vecteur optimal, en raison de la convergence du critère de sélection du vecteur vers un minimum local.
Une autre proposition a été effectuée par KOGA, IINUMA, HIRANO, IJIGIMA, ISHIGURO, dans la publication intitulée "Motion compensated interframe coding for videoconferen- cing", Proceedings NTC81, New-Orleans, LA, Nov-Dec.1981, pp. G5.3.1-5.3.5. Le vecteur déplacement est, dans cette proposition, calculé en plusieurs étapes. Il est calculé sur des images de faible résolution, obtenues à partir des images de départ par sous-échantillonnage, un premier vecteur étant calculé à un niveau de résolution le plus faible puis affiné dans chacun des niveaux suivants, lesquels présentent une résolution croissante dans un rapport 2 à chaque niveau.
Bien que permettant de restreindre le nombre d'opérations pour un résultat comparable à celui d'une recherche systéma¬ tique sur l'image de départ, cette méthode nécessite le calcul et la mémorisation des images sur l'ensemble des niveaux de résolution et apporte un retard important au calcul des vecteurs déplacement, ceux-ci étant calculés récursivement d'un niveau de résolution au suivant.
Enfin, une autre méthode a été proposée plus récemment par BIERLING et THOMA dans la publication intitu- lée "Motion compensating fields interpolating using a hierarchically structured displacement estimator", publiée dans la revue Signal Processing, Vol.11, n°4, December 1986, pp. 387-404. Cette méthode, appelée également hiérarchique, permet en deux étapes d'estimer des mouvements importants avec une bonne précision. Dans un premier temps, une estimation de mouvement grossière est effectuée sur une image sous- échantillonnée, puis sur l'image originale. Toutefois, l'estimateur de mouvement utilisé est un estima- teur par point sur les deux étapes d'estimation, ce qui engendre, en conséquence, un volume de calculs important.
La présente invention a pour objet de remédier aux inconvénients précités des méthodes antérieures, tout en maintenant une bonne précision de l'estimation pour un volume de calculs, et donc un temps de calcul, réduit de manière significative.
Un autre objet de la présente invention est la mise en oeuvre d'un procédé et d'un dispositif d'estimation de mouvement entre images de télévision d'une séquence d'images permettant tout type de traitement d'images animées, notamment en télévision numérique.
Un autre objet de la présente invention est égale¬ ment la mise en oeuvre d'un procédé et d'un dispositif d'estimation de mouvement entre images de télévision d'une séquence d'images compatible avec les normes de compression numérique de données ou de signaux d'images telles que les normes :
- CCITT H261 pour le visiophone, pour des débits de transmission de données compris entre 64 kbits/s et 2 Mbits/s, - ISO 11172 (MPEG1) pour le stockage d'images animées sur disque optique (CD-ROM) à 1,15 Mbits/s,
- ETSI ETS 300 174 pour les liaisons de transmission de données professionnelles à un débit de 34 Mbits/s,
- ISO MPEG à débits de transmission inférieurs à 10 Mbits/s pour des applications de type télévision.
Le procédé d'estimation de mouvement entre images de télévision d'une séquence d'images, objet de la présente invention, est mis en oeuvre sur au moins une séquence d'images, chaque image étant formée d'une succession de lignes de pixels regroupées en une trame paire et en une trame impaire. Chaque séquence d'images comporte au moins par rapport à une image courante, pour laquelle l'estimation de mouvement est établie, au moins une image antérieure et une image postérieure susceptible de constituer chacune une image de comparaison d'estimation. Chaque image courante et de comparaison d'estimation est subdivisée en blocs de N
pixels sur N lignes d'image et en macroblocs formés par p blocs adjacents, chacun des macroblocs étant formé par deux demi-macroblocs constitués chacun par des lignes de la trame paire respectivement impaire. Il est remarquable en ce qu'il consiste à former, à partir de l'image courante et de l'image de comparaison d'estimation, des images grossières correspondantes, image grossière courante respectivement de comparaison d'estimation, et à déterminer pour chaque macrobloc et demi-macrobloc de ce macrobloc de l'image grossière courante un vecteur mouvement auxiliaire par rapport à l'image grossière de comparaison d'estimation, chaque vecteur mouvement auxiliaire étant obtenu par estimation par blocs, de façon à obtenir pour chaque macro¬ bloc et demi-macrobloc de ce macrobloc de l'image grossière courante un vecteur auxiliaire associé. Pour chaque macro¬ bloc de l'image courante, un ensemble d'au moins trois vecteurs mouvement finaux est alors déterminé, par estima¬ tion par blocs, à partir du vecteur auxiliaire et des blocs et macroblocs des images courante et de comparaison d'esti- mation.
Le dispositif d'estimation de mouvement entre images de télévision d'une séquence d'images, objet de la présente invention, opère sur au moins une séquence d'images, chaque image et chaque séquence d ' images étant conforme aux spécifications mentionnées précédemment.
Il est remarquable en ce qu'il comporte au moins un module opérateur d'estimation de mouvement de l'image courante par rapport à l'image de comparaison d'estimation. Le module opérateur d'estimation de mouvement comporte au moins, alimentés en parallèle par des signaux vidéo-numériques représentatifs de l'image courante et de l'image de compa¬ raison d'estimation d'origine, un circuit d'estimation grossière de mouvement permettant de déterminer, pour chaque macrobloc de l'image courante, des vecteurs mouvement auxiliaires par rapport à l'image de comparaison d'estima¬ tion, chaque vecteur mouvement auxiliaire étant obtenu par
estimation de mouvement grossière de 1 'image courante de façon à obtenir, pour chaque macrobloc et demi-macrobloc de ce macrobloc, un vecteur auxiliaire associé. Un circuit d'estimation finale de mouvement est connecté en cascade au circuit d'estimation grossière de mouvement et reçoit les vecteurs mouvement auxiliaires délivrés par ce dernier. Ce circuit d'estimation finale délivre à partir des vecteurs mouvement auxiliaires et de l'image de comparaison d'estima¬ tion un ensemble d'au moins trois vecteurs mouvement finaux associés à chaque macro-bloc et demi-macrobloc de ce macrobloc de l'image courante.
Le procédé et le dispositif objets de la présente invention trouvent application aux techniques utilisées pour la transmission et le traitement des données d'image de télévision numérique telles que la compression numérique, les conversions de normes, les pré- et post-traitements en studio, le calcul des disparités ou différences entre plusieurs vues d'une même scène, en télévision stéréoscopi- que par exemple. Ils seront mieux compris à la lecture de la descrip¬ tion et à l'observation des dessins ci-après dans lesquels, outre les figures la et lb illustratives de - techniques d'estimation de mouvement dans le cadre de la norme MPEG précitée, - la figure 2a représente, de manière illustrative, les différentes étapes permettant la mise en oeuvre du procédé objet de l'invention,
- la figure 2b représente une variante de mise en oeuvre du procédé objet de l'invention, - la figure 3 représente, de manière synoptique, un dispositif permettant la mise en oeuvre du procédé objet de la présente invention,
- la figure 4a représente, de manière non limitati¬ ve, un détail de réalisation du dispositif représenté en figure 3, relatif à un circuit d'estimation grossière de mouvement,
- la figure 4b représente le schéma d'un circuit d'estimation de mouvement proprement dit, utilisé pour la mise en oeuvre du circuit d'estimation grossière de mouve¬ ment représenté en figure 4a, - la figure 4c représente, de manière illustrative, le mode opératoire du circuit d'estimation de mouvement proprement dit représenté en figure 4b, sur une fenêtre de recherche spécifique de 1 ' image grossière de comparaison d'estimation, - la figure 5 représente, de manière synoptique, un détail de réalisation du dispositif représenté en figure 3, relatif à un circuit d'estimation finale de mouvement,
- les figures 6a et 6b représentent un détail de réalisation d'un circuit estimateur de mouvement élémentaire en mode de fonctionnement dit au pas entier respectivement un chronogramme de fonctionnement de ce circuit estimateur de mouvement élémentaire,
- les figures 7a et 7b représentent un mode d'obten¬ tion de pixels ou points image au demi-pas, ainsi que spécifié par la norme MPEG, respectivement un détail de réalisation d'un circuit estimateur de mouvement élémentaire en mode de fonctionnement au demi-pas.
Le procédé d'estimation de mouvement entre images de télévision d'une séquence d'images sera décrit, de manière non limitative, en référence aux spécifications de la norme
MPEG précédemment citée dans la description, ce à des fins purement illustratives.
On rappellera en premier lieu quelques éléments de base du principe de codage des images conformément aux spécifications de la norme précitée.
D'une manière générale, on indique que le terme image correspond, en langage anglo-saxon, au terme "frame" et que le terme trame correspond également au terme "field" dans ce même langage. De manière classique, chaque image est formée d'une succession de lignes de pixels, ces lignes étant regroupées
en une trame paire et en une trame impaire. La notion d'image numérisée correspond à celle définie par la recom¬ mandation 601 du Comité Consultatif International de Radiodiffusion CCIR. On rappelle que, selon la définition précitée, une image comprend 625 lignes de pixels, chaque image comportant 575 lignes visibles, la transmission de ces données d'images, avant compression, étant effectuée avec un débit de 165 Mb/s. On rappelle également que, dans une ligne d'image, chaque point d'image ou pixel comporte une compo- santé de luminance Y alors qu'un point image sur deux comprend en outre une composante de différence de couleurs, notée DR respectivement DB.
On rappelle que le processus d'estimation de mouvement a pour objectif de ramener le débit de transmis- sion des informations véhiculées par les données d'images, de la valeur du débit précédemment mentionné à une valeur comprise entre 5 à 10 Mb/s après compression.
Sur la figure la, on a représenté de manière schématique un procesus de codage satisfaisant à la spécifi- cation MPEG sur une séquence donnée d'images successives. Dans la séquence représentée en figure la, on indique que trois types d'images sont spécifiés :
- les images codées selon une procédure dite intra, notée I, ces images étant codées en codage absolu sans référence aux autres images, telle que l'image 1,
- les images prédites, notées P, codées avec une prédiction par estimation de mouvement monodirectionnelle par rapport à une image précédente. Dans la séquence représentée en figure la, l'image prédite P est l'image 4, laquelle est prédite par rapport à l'image 1,
- les images codées avec une prédiction dite bi¬ directionnelle par estimation de mouvement, ces images étant notées B, ce codage à prédiction bidirectionnelle étant effectué par rapport à une image précédente et une image suivante. Sur la figure la, les images de type B sont les images 2, 3, 5, 6, lesquelles sont codées avec une prédic-
tion bidirectionnelle par rapport aux images 1,4, ima¬ ges 1,4, images 4,7, images 4,7.
Dans chaque image, l'unité de codage est le bloc de pixels, chaque bloc étant constitué par exemple par huit lignes successives comportant huit points successifs chacune, ainsi que réprésenté en figure lb. On comprend ainsi que chaque bloc B comporte des lignes appartenant à la trame paire, lignes 2j , 2j+2 et suivantes, et des lignes entrelacées appartenant à la trame impaire 2j+l, 2 +3 et suivantes.
Quatre blocs d'information de luminance adjacents, les informations de luminance attachées aux pixels corres¬ pondants étant notées Y0 à Y3 pour des blocs adjacents B0 à B3 et deux blocs d'information de chrominance pour les pixels correspondants, informations DR et DB, forment un macrobloc. Une image de télévision comportant 576 lignes de 720 pixels est donc formée par 1620 macroblocs, chaque macrobloc comprenant huit lignes de la trame paire et huit lignes de la trame impaire formant cette image. Le macrobloc est l'unité de prédiction, c'est-à-dire la portion d'image sur laquelle les vecteurs de mouvement sont calculés.
Sur la figure la, on a représenté un processus classique de prédiction de mouvement entre 1 ' image 1 et l'image 2 par exemple, ou entre deux images de la séquence représentée sur la même figure conformément au codage MPEG. On rappelle que le processus de prédiction consiste, pour un macrobloc MB de l'image 2, à rechercher la position d'un macrobloc de l'image 1 le plus semblable au macrobloc d'origine MB de l'image 2 dans la fenêtre F, le vecteur mouvement V étant alors défini comme le vecteur translation du macrobloc prédit, c'est-à-dire présentant le caractère de plus grande similarité, de l'image 2 repérée dans la fenêtre F de 1'image 1. La fenêtre F est généralement centrée sur la même position (ou mêmes coordonnées) que le macrobloc MB. L'image 2 peut alors être transmise à partir des valeurs
différence de luminance et/ou de chrominance de chaque macrobloc prédit par rapport à chaque macrobloc d'origine MB et du vecteur de déplacement correspondant V, ce qui permet bien entendu de réduire le volume d'informations à transmet- tre et donc le débit en conséquence.
Le procédé d'estimation de mouvement entre images de télévision d'une séquence d'images, objet de la présente invention, sera maintenant décrit de manière plus spécifique en liaison avec la figure 2a. La figure 2a est, afin d'en faciliter la lecture, représentée sur deux planches succes¬ sives, les planches 2/8 figure 2a (DEBUT) et 3/8 figure 2a (FIN).
D'une manière générale, on indique que, conformément aux indications précédentes, le procédé objet de la présente invention est mis en oeuvre sur une séquence d'images comportant au moins, par rapport à une image courante, l'image B sur la figure 2a, pour laquelle l'estimation de mouvement est établie, au moins une image antérieure et une image postérieure susceptibles de constituer chacune une image de comparaison d'estimation. Les images de comparaison d'estimation sont notées A sur la figure 2a précitée.
De préférence, et dans le cadre non limitatif des spécifications du codage MPEG précédemment mentionné, on indique que le procédé objet de la présente invention peut de préférence être mis en oeuvre sur une séquence comportant au moins quatre images successives, les images 1, 2, 3, 4 représentées en figure 2a.
Ainsi, et conformément à la désignation précédente, l'image courante B est l'image 2, et les images de comparai- son d'estimation peuvent être l'image 1 ou l'image 4 ou les deux images précitées, ainsi qu'il sera décrit ultérieure¬ ment dans la description.
On rappelle enfin que chaque image courante et de comparaison d'estimation est subdivisée en blocs de N pixels sur N lignes d'images et en macroblocs MB formés par p = 4 blocs adjacents, chacun des macroblocs étant formé par deux
demi-macroblocs constitués chacun par les lignes de la trame paire respectivement impaire, ainsi que déjà mentionné en liaison avec la figure lb.
Selon une caractéristique particulièrement avanta- geuse du procédé objet de la présente invention, celui-ci consiste à former, à partir de l'image courante B et de l'image de comparaison d'estimation A, des images grossières correspondantes, notées GB respectivement GA.
Les images grossières courantes et de comparaison d'estimation ayant été obtenues, le procédé objet de la présente invention consiste ensuite à déterminer pour chaque macrobloc MB et demi-macrobloc de ce macrobloc de l'image grossière courante GB un vecteur mouvement auxiliaire par rapport à l'image grossière de comparaison d'estimation GA. Chaque vecteur mouvement auxiliaire est obtenu par estima¬ tion par blocs de façon à obtenir, pour chaque macrobloc de l'image grossière courante, au moins un vecteur auxiliaire associé.
Dans un mode de mise en oeuvre simplifié du procédé objet de la présente invention, un seul vecteur mouvement auxiliaire est obtenu pour chaque macrobloc MB, alors que dans un mode de réalisation plus élaboré, un ensemble de trois vecteurs mouvement auxiliaires est obtenu pour chaque macrobloc MB, un vecteur mouvement auxiliaire associé à chaque macrobloc et demi-macrobloc de ce macrobloc, ainsi qu'il sera décrit ci-après.
Dans le cas du mode de mise en oeuvre plus élaboré, ainsi que représenté en figure 2a, pour chaque macrobloc MB on obtient un vecteur auxiliaire, noté VAMB, associé à ce macrobloc, un vecteur auxiliaire de trame paire, noté VAMB2j, associé à la trame paire de ce macrobloc et donc au demi- macrobloc ainsi formé, et un vecteur auxiliaire, noté
VAMBJJ,!, associé à l'autre demi-macrobloc formé par la trame impaire constitutive de ce dernier demi-macrobloc. L'estimation de mouvement est bien entendu réalisée entre l'image grossière courante et l'image grossière de
comparaison d'estimation par un processus classique d'esti¬ mation par blocs. On comprend en particulier que cette estimation proprement dite est réalisée sur critère de comparaison, noté CC, sur la figure 2a, entre les valeurs de luminance des macroblocs de 1 ' image grossière courante GB et de l'image grossière de comparaison d'estimation GA. Les valeurs de luminance correspondantes de 1 ' image grossière courante GB les plus proches des valeurs du macrobloc d'origine de valeurs de luminance GYO à GY3 de l'image grossière de comparaison d'estimation GA sont elles-mêmes notées GY'O à GY'3 pour le macrobloc prédit, c'est-à-dire pour une satisfaction du critère de comparaison CC amenant une différence minimale entre ces valeurs de luminance GYO à GY3 respectivement GY'O à GY'3, ainsi qu'il sera décrit ultérieurement dans la description.
On comprend bien sûr qu'en ce qui concerne les demi- macroblocs de la trame paire respectivement de la trame impaire, les valeurs de luminance correspondantes sont notées GY02J à GY32j pour 1 ' image grossière de comparaison d'estimation respectivement GY'02j à GY'32j pour les valeurs de luminance de la trame paire de 1 ' image grossière courante GB, alors que les valeurs de luminance pour le demi-macro¬ bloc correspondant à la trame impaire du macrobloc d'origi¬ ne, respectivement du macrobloc prédit, sont notées
à GYS^! respectivement GY'02]>1 à GY'32 .
L'ensemble des trois vecteurs mouvement auxiliaires précédemment décrits, associés à chaque macrobloc MB d'ori¬ gine et demi-macrobloc de ce macrobloc ayant été obtenu, cette opération étant bien entendu renouvelée pour chaque macrobloc de l'image courante B, le procédé consiste alors, ainsi que représenté également en figure 2a, à déterminer pour chaque macrobloc de l'image courante précitée, un ensemble d'au moins trois vecteurs mouvement finaux, par un processus d'estimation par blocs, à partir du vecteur auxiliaire associé à chaque macrobloc et demi-macrobloc constituant ce macrobloc, ainsi que des blocs et macroblocs
des images courante et de comparaison d'estimation. On comprend en particulier que les vecteurs mouvement auxiliai¬ res associés à chaque macrobloc et demi-macrobloc ayant été obtenus au cours de l'estimation grossière de mouvement, il est alors possible d'effectuer à partir des valeurs des vecteurs mouvement auxiliaires précitées, un processus d'estimation de mouvement sur les macroblocs et demi- macroblocs de l'image courante B, les composantes de luminance des macroblocs et demi-macroblocs de 1 ' image courante et de l'image de comparaison d'estimation, notées sur la figure 2a Y'O à Y'3 respectivement Y0 à Y3, étant bien entendu soumises au critère de comparaison CC précité et le choix du vecteur mouvement final, noté VMB, étant effectué à partir d'un choix centré sur le vecteur mouvement » auxiliaire correspondant VAMB obtenu à l'étape précédente.
On comprend également que, pour les demi-macroblocs constitués par la trame paire respectivement par la trame impaire, pour chaque vecteur mouvement auxiliaire, noté
VAMB2j respectivement VAMB2..l r est également obtenu sur critère de comparaison CC entre les valeurs de luminance des trames paires des demi-macroblocs de l'image courante, valeurs de luminance notées Y'02j à Y'32j, et les valeurs de luminance correspondantes de l'image de comparaison d'esti¬ mation, valeurs de luminance notées Y02j à Y32j, un vecteur > final de mouvement relatif a la trame paire, noté VMB2j, est ainsi obtenu de manière analogue au vecteur relatif au macrobloc entier. Il en est de même pour le demi-macrobloc constitué par la trame impaire, pour lequel les valeurs de luminance de l'image courante sont notées Y'O^! à Y'32 , et de l'image de comparaison d'estimation pour laquelle les valeurs de luminance sont notées Y02jtl à Y32i→.l r un vecteur final de mouvement pour la trame impaire, noté VMB^.^ étant obtenu sur critère de choix à partir du vecteur auxiliaire correspondant VAMβ^^. D'une manière générale, on indique que le procédé objet de la présente invention permet, lors de la mise en
oeuvre de l'estimation grossière de mouvement, de déterminer des vecteurs auxiliaires de grande amplitude en raison du fait que l'estimation grossière est effectuée par comparai¬ son de 1'image grossière courante et de 1 'image grossière de comparaison d'estimation, lesquelles sont obtenues à partir des images d'origine par sous-échantillonnage ainsi qu'il sera décrit ultérieurement dans la description.
Le procédé objet de la présente invention permet ensuite de calculer les vecteurs mouvement finaux de grande précision en raison du centrage de la recherche de ces derniers à partir de la valeur initiale correspondant à la valeur des vecteurs auxiliaires, ce qui permet bien entendu de réduire le volume de calculs ou, pour un temps de calcul donné, d'obtenir une recherche de grande précision. Dans le mode de mise en oeuvre simplifié du procédé objet de la présente invention, on indique que l'étape b) représentée en figure 2a consistant à établir pour chaque macrobloc MB un seul vecteur auxiliaire VAMB consiste alors à effectuer la seule opération représentée au-dessus du trait mixte, sur les valeurs de luminance GYO à GY3 et GY'O à GY'3 des images grossières courantes GB et de comparaison d'estimation GA. On comprend ainsi que pour l'établissement des vecteurs mouvements finaux, ainsi que représenté en figure 2a (FIN), les vecteurs mouvement auxiliaires établis pour les demi-macroblocs trame paire, VAMB2', respectivement » trame impaire, VAMB^^, sont remplaces par le vecteur mouvement auxiliaire VAMB établi pour le macrobloc MB. On comprend ainsi que le mode de mise en oeuvre simplifié du procédé objet de l'invention permet de réduire le volume de calculs nécessaires, tout en maintenant un niveau de précision d'estimation de mouvement satisfaisant.
D'une manière générale, on indique en effet que l'étape consistant à former à partir de l'image courante B et de l'image de comparaison d'estimation A des images grossières correspondantes GB et GA, consiste en fait à effectuer un sous-échantillonnage des images courantes B et
de comparaison d'estimation A, de façon à obtenir un ensemble de blocs de pixels et de macroblocs sous-échantil- lonnés.
En ce qui concerne le critère de choix CC précédem- ment mentionné dans la description, on indique que celui-ci peut consister à déterminer les vecteurs mouvement auxiliai¬ res ou finaux par estimation par blocs par corrélation sur critère de ressemblance entre les différents macroblocs et demi-macroblocs précités. Bien entendu, ce critère de ressemblance peut consister à minimiser la différence des valeurs absolues ou des carrés des valeurs absolues des valeurs de luminance correspondantes telles que précédemment décrites en liaison avec la figure 2a. Le critère de choix peut être réalisé par une fonction de tri de la valeur minimum, l'adresse du macrobloc prédit satisfaisant à ce critère de tri étant alors retenue et comparée à l'adresse du macrobloc d'origi¬ ne, le vecteur mouvement tel que le vecteur auxiliaire de macrobloc ou de demi-macrobloc ou, en définitive, chaque vecteur mouvement final, peut alors être obtenu par diffé¬ rence des adresses respectives.
Une variante de réalisation du procédé d'estimation de mouvement objet de la présente invention, plus particu¬ lièrement orientée vers le codage MPEG, sera maintenant décrite en liaison avec la figure 2b.
Dans le cas de la figure précitée, on indique que la séquence d'images comporte quatre images successives ou un multiple de quatre images successives. L'image courante est l'image de rang 2, l'image antérieure l'image de rang 1, l'image postérieure l'image de rang 4, l'image de rang 1 et l'image de rang 4 constituant l'image de comparaison d'estimation A ainsi que précédemment mentionné dans la description.
Selon un aspect particulièrement avantageux du procédé objet de l'invention, celui-ci consiste à mettre en oeuvre une étape d'estimation de mouvement dite estimation
de mouvement avant entre l'image 2, image courante, et image de comparaison d'estimation 1 antérieure, et à effectruer conjointement une étape d'estimation de mouvement, désignée par estimation de mouvement arrière, entre l'image courante 2 et l'image postérieure, image 4.
On comprend bien sûr que le procédé objet de la présente invention consiste à effectuer successivement les étapes d'estimation grossière de mouvement puis d'estimation finale de mouvement appliquée au couple d'images, image courante 2, image antérieure 1 respectivement image couran¬ te 2, image postérieure 4 de la séquence d'images.
Ainsi qu'on l'a indiqué sur la figure 2b, ce mode opératoire permet, pour chaque macrobloc MB d'origine, ou chaque macrobloc de l'image courante, d'obtenir un ensemble d'au moins six vecteurs mouvement finaux, ces vecteurs étant notés VMB21, VMB2j 21, VMB2j<1 21 et VMB24, VMB2j 24, VMB2j^ 24, à partir des vecteurs mouvement auxiliaires correspondants,
--> lesquels sont notés VAMB21, VAMB2j 21, VAMB;,^ 21, respectivement VAMB24 ?, VAMB2j 24\ VAMB2j<1 . En ce qui concerne l'étape consistant à déterminer l'ensemble d'au moins trois vecteurs mouvement finaux par estimation par blocs, on comprend qu'un ensemble de trois vecteurs par macrobloc d'origine est obtenu dans le cas le plus simple où, à chaque macrobloc d'origine est comparé un macrobloc de 1 ' image courante pour obtenir un macrobloc prédit, un vecteur mouvement final étant associé à chacun des macroblocs précités et où à chaque demi-macrobloc constitué par la trame paire respectivement impaire est également associé un vecteur mouvement final obtenu par comparaison deux à deux des demi-macroblocs constitués par les trames paires respectivement par les trames impaires, un vecteur mouvement final étant ainsi associé à chaque macrobloc pour former un ensemble de trois vecteurs mouve¬ ment finaux. Une variante de mise en oeuvre du procédé objet de la présente invention consiste en outre, pour chaque demi-
macrobloc, à comparer deux à deux non seulement les trames paires des demi-macroblocs de l'image courante et de l'image de comparaison d'estimation de mouvement constituées par les trames paires, mais également d'effectuer une estimation de mouvement entre trames paires respectivement impaires constitutives des demi-macroblocs de l'image courante et de l'image de comparaison d'estimation de mouvement. Dans un tel cas, on obtient en fait, outre les vecteurs mouvement finaux VMB2j et VMB2 résultant de la comparaison des demi- macroblocs, relatifs aux trames paire respectivement impaire, deux vecteurs supplémentaires résultant d'une estimation de mouvement par blocs effectuée sur les demi- macroblocs constitués par la trame paire de 1 ' image courante et par la trame impaire de l'image de comparaison d'estima- tion de mouvement, respectivement la trame impaire de l'image courante et la trame paire de l'image de comparaison d'estimation de mouvement. Sur la figure 2a, cette variante est illustrée par l'indication des vecteurs VMB J 22ji 0000 et VMB J2
01. réputés constituer un sous-ensemble du vecteur mouvement
-% final VMB2j, et par les vecteurs VMB2j>1 X1 et VMB2jtl 10, lesquels sont réputés constituer un sous-ensemble du vecteur mouvement final VMB;,^. On indique que les indices supplémen¬ taires 00, 01, 11, 10 correspondent aux indices 0 de la trame paire respectivement 1 de la trame impaire et dési- gnent ainsi la comparaison entre demi-macroblocs correspon¬ dants.
On indique en outre que la variante précitée de mise en oeuvre du procédé objet de l'invention peut également être réalisée dans le cas de la mise en oeuvre simplifiée de ce procédé. Cette option est représentée en figure 2b par la mise entre parenthèses en traits mixtes des vecteurs auxiliaires correspondants.
Une description plus détaillée d'un dispositif d'estimation de mouvement permettant la mise en oeuvre du procédé objet de la présente invention précédemment décrit, sera maintenant donnée en liaison avec les figures 3 et
suivantes.
Bien entendu, on comprend que le dispositif d'esti¬ mation de mouvement objet de la présente invention, fonc¬ tionne dans les conditions précédemment décrites relative- ment à la mise en oeuvre du procédé correspondant.
De manière générale, on indique que le dispositif selon 1'invention comporte au moins un module opérateur d'estimation de mouvement de l'image courante par rapport à l'image de comparaison d'estimation, ce module opérateur étant noté MO sur la figure 3. Il comporte au moins, alimenté en parallèle par des signaux vidéo-numériques représentatifs de l'image courante B et de l'image de comparaison d'estimation A, un circuit d'estimation gros¬ sière de mouvement, noté 1, permettant de déterminer pour chaque macrobloc MB de l'image courante des vecteurs mouvement auxiliaires par rapport à 1 'image de comparaison d'estimation. Bien entendu, chaque vecteur mouvement auxiliaire est obtenu par estimation de mouvement grossière de 1 'image courante ainsi que décrit précédemment en liaison avec le procédé objet de la présente invention, de façon à obtenir pour chaque macrobloc MB et demi-macrobloc de ce macrobloc, ainsi que représenté en figure 2a, un vecteur auxiliaire associé.
De manière générale, on indique que le module opérateur estimation de mouvement MO reçoit les signaux vidéo précités représentatifs de l'image courante B et de l'image de comparaison d'estimation A, les valeurs de pixels correspondantes étant codées sur 8 bits et délivrées à une fréquence de 13,5 MHz sur chacune des liaisons par BUS correspondantes.
Ainsi qu'on l'a représenté en outre en figure 3, le module opérateur MO comporte également, alimenté en paral¬ lèle par les signaux vidéo-numériques précités, outre le circuit d'estimation grossière, noté 1, un circuit d'estima- tion finale de mouvement, noté 2, les deux circuits étant montés en cascade ainsi que représenté en figure 3.
Le circuit d'estimation grossière 1 permet de déterminer, pour chaque macrobloc de l'image courante B, des vecteurs mouvement auxiliaires, les trois vecteurs précédem¬ ment mentionnés dans la description par VAMB, VAMB2j et VAMB2J+ι relatifs respectivement à chaque macrobloc, et au demi-macrobloc constitué par la trame paire respectivement la trame impaire de ce macrobloc. On rappelle qu'en ce qui concerne les vecteurs auxiliaires, un vecteur étant associé à chaque macrobloc et à chacun des demi-macroblocs constitu- tifs de ce macrobloc, on obtient un ensemble de trois vecteurs mouvement auxiliaires pour chacun des macro¬ blocs MB.
On rappelle également que dans le cas de la mise en oeuvre simplifiée du procédé objet de l'invention le circuit d'estimation grossière 1 peut simplement délivrer le vecteur auxiliaire VAMB associé à chaque macrobloc. Ce mode opéra¬ toire est représenté par la mise entre parenthèses en pointillé des vecteurs mouvement auxiliaires associés aux demi-macroblocs de ce macrobloc. Le circuit d'estimation finale de mouvement 2 reçoit les vecteurs mouvement auxiliaires précités et délivre, à partir de ces derniers et des signaux vidéo représentatifs de l'image courante B et de l'image courante de comparaison d'estimation A, un ensemble d'au moins trois vecteurs mouvement finaux associés à chaque macrobloc et demi-macro¬ bloc de ce macrobloc de l'image courante B.
Le module opérateur estimation de mouvement MO délivre donc l'ensemble d'au moins trois vecteurs estimation de mouvement précédemment décrit dans la description, les vecteurs VMB, VMB2j et VMB2j.: relatifs chacun à un macrobloc et au demi-macrobloc constitué par la trame paire respecti¬ vement la trame impaire de ce macrobloc. Chacun de ces vecteurs peut être représenté sur 12 bits et les valeurs des vecteurs estimation de mouvement précités sont délivrés par le module opérateur MO à la fréquence macrobloc soit tous les 128 pixels. Les vecteurs précités sont bien entendu les
vecteurs délivrés par le module opérateur MO. On rappelle que, dans un premier mode de réalisation, les vecteurs mouvement finaux obtenus pour chaque macrobloc MB sont au nombre de trois, les vecteurs précédemment mentionnés, alors que dans un mode de réalisation plus élaboré, chaque vecteur mouvement final peut en fait consister en deux vecteurs mouvement finaux obtenus par estimation par blocs, effectuée sur les demi-macroblocs, l'estimation pouvant être réalisée entre demi-macroblocs constitués par la même trame ou respectivement par les trames de rang pair, impair, ou réciproquement. On obtient ainsi dans ce dernier cas, un ensemble de cinq vecteurs mouvement finaux associés à chacun des macroblocs MB.
On comprend bien sûr qu'un premier module opérateur MO peut être utilisé pour effectuer un processus d'estima¬ tion avant, tel que représenté en figure 2a, et qu'un deuxième module opérateur MO peut être utilisé sensiblement simultanément pour effectuer une estimation arrière, ainsi que représenté également en figure 2a, afin de permettre la mise en oeuvre du procédé objet de la présente invention sensiblement en temps réel.
Bien entendu, la notion de temps réel est définie comme un processus de traitement intervenant sur quatre images successives, les images 1, 2, 3 et 4 représentées en figure 2a, la séquence des quatre images étant mémorisée afin de permettre la conduite sensiblement simultanée des processus d'estimation avant et arrière et le temps de traitement, c'est-à-dire de l'estimation de mouvement par la mise en oeuvre de chaque module opérateur MO, étant bien entendu très faible par rapport à la séquence temporelle d'origine de transmission des quatre images précitées. Ainsi, il est ensuite possible de reconstituer à partir des valeurs estimées ou prédites de mouvement, les données à transmettre en lieu et place des images d'origine 2 et 4, ce qui permet bien entendu de reconstituer la séquence des quatre images précitées avec un volume de données à trans-
mettre sensiblement réduit et donc une compression numérique correspondante.
Ainsi qu'on l'a en outre représenté en figure 4a, le circuit d'estimation grossière de mouvement 1 comprend lui- même des circuits de sous-échantillonnage, notés lia, 11b, de l'image courante B et de l'image de comparaison d'estima¬ tion A, ces circuits lia et 11b permettant d'obtenir des images grossières correspondantes, soit l'image grossière courante et l'image de comparaison d'estimation grossière formées chacune d'un ensemble de blocs de pixels et de macroblocs sous-échantillonnés. On note que, en amont des circuits de sous-échantillonnage lia et 11b, sont également prévus des circuits de pré-filtrage 10a et 10b, lesquels reçoivent respectivement le signal vidéo relatif à l'image de comparaison d'estimation A et à l'image courante B. Un signal d'horloge Ck permet de cadencer les circuits de pré¬ filtrage 10a et 10b ainsi que les circuits de sous-échantil¬ lonnage lia et 11b par l'intermédiaire d'un diviseur par 16 portant la référence 12. Les opérations sont réalisées en parallèle sur les deux images A et B et elles consistent :
- en l'opération de filtrage numérique des points image, réalisée par les circuits 10a et 10b. A chaque point avant filtrage de l'image A ou B correspond une valeur filtrée en sortie, délivrée par le circuit 10a ou 10b. Cette valeur filtrée est obtenue par multiplication des éléments de l'image d'origine par des coefficients prédéfinis. Les circuits de pré-filtrage 10a et 10b sont des circuits dédiés disponibles dans le commerce, lesquels permettent de pondérer finalement la valeur de luminance de chaque pixel pour assurer le filtrage proprement dit et éviter le phénomène de repliement des spectres,
- en l'opération de sous-échantillonnage réalisé par les circuits lia et 11b, laquelle a pour effet de ne réutiliser qu'une valeur sur n valeurs en sortie du filtre d'échantillonnage correspondant lia ou 11b. Selon un mode de
réalisation avantageux du sous-échantillonnage précité, on utilise une valeur de luminance sur quatre en horizontale et une valeur de luminance sur quatre en verticale, soit finalement un point sur seize, n ≈ 16. Cette fonction est réalisée par le diviseur par 16 portant la référence 12. Chacun des circuits de sous-échantillonnage lia et 11b délivre enfin les images grossières courantes et images grossières de comparaison d'estimation à un circuit 13 de calcul d'estimation de mouvement par blocs, lequel effectue le calcul proprement dit d'estimation de mouvement par corrélation, sur critère de ressemblance entre les diffé¬ rents macroblocs sous-échantillonnés précédemment obtenus et délivrés par les circuits de sous-échantillonnage. Le circuit 13 délivre bien entendu les vecteurs auxiliaires VAMB*, VAMB2j', VAMB2 '.
Dans le cas de la mise en oeuvre simplifiée, le circuit 13 délivre uniquement les vecteurs mouvement ? auxiliaires VAMB associés à chaque macrobloc MB, ce mode opératoire étant représenté en figure 4a par la mise entre parenthèses en pointillé, les vecteurs mouvement auxiliaires associés aux demi-macrobloc de ce macrobloc.
Le circuit 13 de calcul d'estimation de mouvement par blocs est réalisé à partir de circuits estimateurs de mouvement élémentaires, lesquels sont constitués par des circuits dédiés, disponibles dans le commerce, ainsi qu'il sera décrit ci-après dans la description.
Chaque circuit d'estimation de mouvement élémentaire permet d'effectuer le calcul d'un vecteur mouvement pour un bloc élémentaire de pixels constitué par huit points (ou pixels) par huit lignes, le calcul du vecteur mouvement élémentaire étant effectué sur une fenêtre de recherche (8, +7) horizontalement et verticalement.
L'image B, pour laquelle les vecteurs mouvement sont calculés, en particulier l'image grossière de comparaison d'estimation GB délivrée par le circuit de sous-échantillon¬ nage 11b, est analysée en blocs de huit points par huit
lignes, chaque colonne du bloc étant lue de manière consécu¬ tive.
De la même façon, l'image A, en particulier l'image de comparaison d'estimation grossière GA délivrée par le circuit de sous-échantillonnage lia dans laquelle on recherche le bloc correspondant pour effectuer l'analyse par blocs, est analysée de façon analogue mais en lisant trois lignes de blocs, au lieu d'une seule pour l'image courante, ainsi que mentionné précédemment, ces trois lignes de blocs étant notées H, M, B, servant comme fenêtre de recherche. Sur la figure 4c, on a ainsi représenté d'une part, une première fenêtre de recherche FI définie sur 1 ' image A précitée ou sur l'image grossière de comparaison d'estima¬ tion correspondante, cette fenêtre FI étant ainsi définie par trois lignes de blocs H, M, B précédemment mentionnées, la fenêtre de recherche FI ayant ainsi les coordonnées précédemment mentionnées (-8, +7 ) en horizontal et vertical. On rappelle que ces coordonnées sont définies en valeurs de pas de pixels. Sur la figure 4c, on a également représenté un bloc correspondant de 1 ' image courante B ou de 1 ' image grossière courante, centré par exemple par rapport à la fenêtre de recherche FI.
Pour augmenter la fenêtre de recherche finale et donc le domaine de recherche par augmentation des dimensions de la fenêtre de recherche finale, il est possible d'utili¬ ser ainsi plusieurs circuits d'estimation de mouvement élémentaires, ainsi que représenté en figure 4b, ces circuits étant connectés en parallèle et recevant chacun les pixels de l'image de comparaison d'estimation A, telle que l'image de comparaison d'estimation grossière GA, pour les zones H, M et B de la figure 4c. La lecture des pixels pour les zones H, M et B est effectuée par un circuit d'adressage 130, lequel bien entendu permet de mémoriser l'ensemble des pixels de l'image GA telle que représentée en figure 4c, et d'adresser en lecture les pixels correspondants vers les circuits de calcul d'estimation de mouvement élémentaires
131, 132, 133 et 134 tels que représentés en figure 4b.
Ainsi, la mise en parallèle des quatre circuits de calcul d'estimation de mouvement élémentaires 131, 132, 133 et 134 permet finalement de constituer une fenêtre de recherche F résultante, constituée par quatre fenêtres FI, F2, F3 et F4 telles que représentées en figure 4c, dont les coordonnées en horizontal sont respectivement (-32, -17), (- 16, -1), (0, 15), (16, 31) respectivement (-8, +7) en vertical. On rappelle que cette fenêtre de recherche sur l'image de comparaison d'estimation grossière GA correspond en fait, en raison du sous-échantillonnage par quatre, à une fenêtre de recherche (-128, +124) et (-32, +28) dans l'image d'origine A. Chaque circuit de calcul d'estimation de mouvement élémentaire 131 à 134 peut être réalisé par exemple par un circuit portant la référence STI 3220, commercialisé par la Société SGS-THOMSON MICROELECTRONICS.
Ainsi que représenté en figure 4b, chaque circuit de calcul d'estimation de mouvement élémentaire calcule alors le vecteur mouvement élémentaire, et bien entendu le critère de distorsion associé à ce vecteur, pour la fenêtre de recherche qui lui est associée, les fenêtres FI à F4 précédemment mentionnées. Les résultats, notés VI,dl à V4,d4 sont alors délivrés à un circuit de calcul d'estimation de mouvement par blocs proprement dit, noté 135, lequel délivre les vecteurs auxiliaires d'estimation de mouvement précédem¬ ment cités dans la description. On comprend bien sûr que les valeurs de vecteurs mouvement élémentaires VI à V4 et de distorsion délivrées par les circuits de calcul d'estimation de mouvement élémentaires 131 à 134 sont comparées par le circuit 135 précité pour obtenir le vecteur, noté V et sa valeur de distorsion notée d, permettant de minimiser le critère de distorsion de comparaison des blocs sur l'ensem- ble de la fenêtre F constituée par les quatre fenêtres élémentaires FI à F4.
On comprend ainsi que le circuit 135 constitue un circuit de comparaison, lequel à partir des vecteurs mouvement élémentaires VI à V4 et des variables de distor¬ sion dl à d4 constituant en fait des variables de valeurs de ressemblance, délivre sur critère de tri le vecteur mouve¬ ment auxiliaire V associé au bloc sous-échantillonné de l'image B, image grossière courante sous-échantillonnée. Avant passage au processus d'estimation fine, l'amplitude du vecteur mouvement auxiliaire V obtenu est ensuite multipliée par la valeur quatre correspondant aux valeurs de sous- échantillonnage retenues pour l'estimation grossière. Ainsi, la fenêtre de recherche totale sur 1 ' image de comparaison d'estimation A d'origine, a pour valeurs (-128, +124) horizontalement et (-32, +28) verticalement. Une description plus détaillée du circuit 2 d'esti¬ mation finale de mouvement représenté en figure 3 sera maintenant donnée en liaison avec les figures 5 et suivan¬ tes.
D'une manière générale, on indique que l'estimation finale de mouvement est effectuée sur chaque macrobloc MB de l'image courante B, un ensemble de trois vecteurs ou plus étant ainsi déterminé. Les vecteurs mouvement finaux VMB,
VMB2j et VMB2j.! par exemple, sont calculés à partir du vecteur auxiliaire du même bloc obtenu après estimation grossière. Ainsi, les calculs des vecteurs d'estimation de mouvement finaux peuvent être effectués en parallèle par des opérateurs où des circuits de même type, lesquels seront décrits ci-après.
Sur la figure 5, on a donc représenté le circuit 2 d'estimation finale de mouvement, lequel comporte un circuit 20 d'estimation de mouvement d'image, un circuit 21 d'esti¬ mation de mouvement d'image affecté à la trame paire et un circuit 22 d'estimation de mouvement d'image affecté à la trame impaire, par exemple. Les circuits 20, 21 et 22 reçoivent en parallèle les vecteurs mouvement auxiliaires précédemment mentionnés et délivrés par le circuit d'estima-
tion grossière de mouvement 1 représenté en figure 4a, ainsi que les signaux vidéo-numériques représentatifs de l'image courante B et de l'image de comparaison d'estimation A d'origine. Les circuits 20, 21 et 22 délivrent respective¬ ment le vecteur mouvement final VMB, le vecteur mouvement trame paire VMB2 -j» et le vecteur mouvement trame impaire
-P
VMB2j+1 pour chaque macrobloc et demi-macrobloc correspondant de ce macrobloc, ces vecteurs constituant bien entendu les trois vecteurs mouvement finaux précédemment mentionnés dans la description, dans le cas de la mise en oeuvre élaborée.
Un premier mode de réalisation de l'un des circuits d'estimation de mouvement 20, 21 ou 22 sera maintenant décrit dans un mode de fonctionnement dit au pas entier pour lequel l'estimation de mouvement par blocs est effectuée pour les valeurs de luminance de chaque pixel.
Ainsi que représenté en figure 6a, on indique que les trois circuits d'estimation de mouvement 20, 21 et 22 sont mis en oeuvre à partir d'un même circuit de calcul d'estimation de mouvement élémentaire tel que le circuit STI 3220 précédemment mentionné dans la description. Ce circuit calcule, pour un bloc de pixels de 16 x 16, un vec¬ teur mouvement élémentaire d'amplitude (-8, +7) dans une fenêtre de recherche de dimensions 32 x 48 (horizontale¬ ment x verticalement). Cette fenêtre correspondant dans le sens vertical à trois dimensions de blocs est chargée par trois BUS en parallèle et son temps de chargement est double de celui du temps de chargement du bloc 16 x 16 précité. La fenêtre de recherche pour un bloc considéré est commune pour moitié avec la fenêtre de recherche du bloc suivant et le circuit de calcul d'estimation de mouvement élémentaire calcule bien un vecteur pour chaque bloc 16 x 16 dans la durée de chargement de ce bloc.
Toutefois, et en raison du fait que la fenêtre de recherche est centrée sur le vecteur d'estimation grossière de mouvement correspondant, il n'est donc plus possible de profiter de la régularité précédemment mentionnée. La
solution consiste à charger une nouvelle fenêtre complète pour chaque bloc 16 x 16. La durée de ce chargement étant double de celle du bloc, il est donc indispensable, ainsi que représenté en figure 6a, de disposer de deux circuits de calcul d'estimation de mouvement élémentaires, lequels sont notés 203 et 204, fonctionnant en parallèle alternativement pour calculer un vecteur d'estimation de mouvement par bloc 16 x 16.
Ainsi, chaque circuit, 20, 21 ou 22 comprend, ainsi que représenté en figure 6a, un circuit 201 recevant l'image courante B d'origine permettant par exemple la mise en blocs selon des blocs 16 x 16 précités et un circuit 202 réalisant la même fonction pour ce qui concerne 1 ' image de comparaison d'estimation A, la fenêtre de recherche précédemment mentionnée étant centrée sur le vecteur auxiliaire d'estima¬ tion de mouvement VAMB' ou VAMB2j ' ou VAMB2j.1'. D'une manière classique, on indique que les circuits 201 ou 202 peuvent par exemple consister en des circuits de mémorisation et d'adressage en lecture des pixels correspondants, ainsi que décrit précédemment dans la description. Le circuit 202 délivre par exemple les pixels de la fenêtre de recherche selon les trois zones H, M, B précédemment mentionnées.
Les circuits de calcul d'estimation de mouvement élémentaires 203 et 204 reçoivent chacun le signal de bloc 16 x 16 délivré par le circuit 201, lequel correspond à l'image courante B précédemment mentionnée, ainsi que les fenêtres de recherche correspondantes, symbolisées par les trois zones H, M, B précitées. Le circuit 203 opère par exemple pour les blocs pairs alors que le circuit 204 opère par exemple pour les blocs impairs. Les circuits de calcul de mouvement élémentaires 203 et 204 délivrent ainsi, pour chaque bloc 16 x 16, alternativement, un vecteur estimation de mouvement élémentaire, lequel, par l'intermédiaire d'un circuit multiplexeur temporel 205, délivre successivement le vecteur estimation de mouvement final, c'est-à-dire soit le vecteur image VMB7, soit le vecteur trame paire VMB2j ou le
vecteur trame impaire VMB2 .
Sur la figure 6b, on a représenté les chronogrammes simplifiés de synchronisation à la fréquence blocs-fenêtres pour les blocs pairs et impairs respectivement ainsi que la fréquence vecteur finale d'estimation de mouvement délivrée par le multiplexeur temporel 205.
Une deuxième variante de réalisation des circuits d'estimation des vecteurs mouvement image, trame paire ou trame impaire 20, 21, 22 sera maintenant décrite en liaison avec les figures 7a et 7b dans un mode de fonctionnement dit au demi-pas, ce mode de fonctionnement correspondant à une recommandation de la norme MPEG précédemment mentionnée dans la description.
Sur la figure 7a, on comprend que les cercles représentent quatre pixels adjacents deux à deux de la fenêtre de recherche de l'image de comparaison d'estimation A par exemple. Selon la recommandation précitée, on indique que des valeurs intermédiaires peuvent être définies dans la direction horizontale et/ou verticale, ce qui permet de définir cinq points représentés par des croix sur la figure 7a, à chaque point étant associée une valeur d'amplitude de luminance donnée respectivement par (E+F)/2, (E+C)/2 et pour la valeur centrale des quatre pixels précités (E+F+C+D)/4, les valeurs de luminance pour les points intermédiaires aux pixels FD respectivement CD étant obtenues par permutation correspondante des symboles EF x CD.
Dans le cas du fonctionnement au demi-pas, le principe du fonctionnement est similaire à celui du fonc¬ tionnement au pas entier, un circuit de calcul d'estimation de mouvement élémentaire en mode de fonctionnement au demi- pas travaillant sur les blocs impairs et un autre sur les blocs pairs de façon analogue à celle représentée en figure 6a. Dans ce cas, chaque circuit de calcul d'estimation de mouvement élémentaire tel que 203 ou 204, voit sa fenêtre de recherche centrée également sur le vecteur auxiliaire d'estimation de mouvement correspondant de la même façon que
dans le cas de la figure 6a.
Toutefois, le demi-pas doit être calculé, les composants uniques constitutifs des circuits de calcul d'estimation de mouvement élémentaire 203 et 204, composants STI 3220 déjà cités, étant remplacés par quatre composants de ce type montés en parallèle ainsi qu'il sera décrit plus en détail en relation avec la figure 7b.
Ainsi, à partir des pixels de la fenêtre de recher¬ che dans l'image de comparaison d'estimation, ces pixels correspondant aux trois zones H, M, B précédemment mention¬ nées dans la description, un premier circuit de calcul élémentaire 2033 permet d'effectuer le calcul du vecteur estimation de mouvement au pas entier et sa valeur de distorsion, ces deux valeurs étant notées VI, dl, un deuxième circuit de calcul élémentaire 2034 complété en amont par un filtre au demi-pas horizontal 2030 permet d'effectuer le calcul d'un vecteur estimation de mouvement élémentaire V2 et de sa distorsion d2 au demi-pas horizon¬ tal. De la même manière, un troisième circuit de calcul élémentaire 2035 permet d'effectuer, à partir d'un filtre demi-pas vertical 2031, le calcul d'un vecteur élémentaire V3 et de sa distorsion d3 au demi-pas vertical, alors qu'un quatrième circuit de calcul élémentaire 2036 permet, au moyen d'un filtre au demi-pas horizontal et vertical 2032, de calculer un quatrième vecteur élémentaire V4 et sa valeur de distorsion d4 au demi-pas horizontal et vertical, ainsi qu'illustré en relation avec la figure 7a. Les vecteurs élémentaires VI, V2, V3, V4 et leurs valeurs de distorsion dl, d2, d3, d4 sont délivrés à un circuit appliquant un critère de tri sur les valeurs des vecteurs précités pour délivrer le vecteur au demi-pas V, ce vecteur estimation de mouvement constituant bien entendu soit le vecteur image VMB, soit le vecteur trame paire VMB2j, soit le vecteur trame impaire VMB2jil. On comprend bien sûr que, de manière analogue à la figure 6a, le dispositif 20, 21 ou 22 comporte en fait deux circuits tels que représentés en figure 7b, lesquels
fonctionnent alternativement de manière analogue, au mode opératoire des circuits 203 et 204 de la figure 6a.
On a ainsi décrit un procédé et un dispositif d'estimation de mouvement entre images de télévision d'une séquence d'images particulièrement performants dans la mesure où la subdivision de l'estimation proprement dite de mouvement entre deux étapes successives consistant en une estimation grossière puis en une estimation finale, permet de réduire sensiblement le volume de calculs nécessaire à la mise en oeuvre du processus d'estimation proprement dit. On comprendra bien sûr que cette réduction est due, notamment au fait que l'estimation finale est effectuée à partir de l'estimation grossière et en particulier des vecteurs auxiliaires d'estimation de mouvement, lesquels permettent de centrer la recherche effectuée au cours de l'estimation finale sur des fenêtres de recherche centrées sur les valeurs d'estimation de mouvement représentées par les vecteurs auxiliaires, vecteur mouvement auxiliaire seul associé à chaque macrobloc MB, ou vecteurs mouvement auxiliaires aseociés à chaque macrobloc MB et demi-macrobloc de ce macrobloc, ce qui permet de réduire en conséquence les volumes de calcul.
On comprend également que, dans les modes de réalisation décrits, le fonctionnement de l'estimation de mouvement finale permet d'atteindre une résolution infé¬ rieure à la dimension du pixel en raison du mode opératoire proposé.
Claims
1. Procédé d'estimation de mouvement entre images de télévision d'une séquence d'images, chaque image étant formée d'une succession de lignes de pixels regroupées en une trame paire et une trame impaire, ladite séquence d'images comportant au moins par rapport à une image courante, pour laquelle l'estimation de mouvement est établie, au moins une image antérieure et une image posté¬ rieure susceptible de constituer chacune une image de comparaison d'estimation, chaque image courante et de comparaison d'estimation étant subdivisée en blocs de N pixels sur N lignes d'image et en macroblocs formés par p blocs adjacents, chacun des macroblocs étant formé par deux demi-macroblocs constitués chacun par les lignes de la trame paire respectivement impaire, caractérisé en ce que ce procédé consiste : a) - à former à partir de l'image courante et de l'image de comparaison d'estimation, des images grossières correspondantes, image grossière courante respectivement de comparaison d'estimation ; b) - à déterminer pour chaque macrobloc de l'image grossière courante au moins un vecteur mouvement auxiliaire par rapport à ladite image grossière de comparaison d'esti¬ mation, chaque vecteur mouvement auxiliaire étant obtenu par estimation par blocs, de façon à obtenir pour chaque macrobloc de l'image grossière courante un vecteur auxi¬ liaire associé ; c) - à déterminer pour chaque macrobloc de ladite image courante un ensemble d'au moins trois vecteurs mouvement finaux, par estimation par blocs, à partir dudit vecteur auxiliaire et des blocs et macroblocs desdites images courante et de comparaison d'estimation.
2. Procédé selon la revendication 1, caractérisé en ce que l'étape b) consistant à déterminer pour chaque macrobloc de 1 ' image grossière courante au moins un vecteur mouvement auxiliaire consiste à déterminer pour chaque macrobloc et demi-macrobloc de ce macrobloc un vecteur mouvement auxiliaire par rapport à ladite image grossière de comparaison d'estimation, chaque vecteur mouvement auxi¬ liaire étant obtenu par estimation par blocs, de façon à obtenir pour chaque macrobloc et demi-macrobloc de ce macrobloc de l'image grossière courante un vecteur auxi¬ liaire associé.
3. Procédé selon la revendication 1 ou 2, caracté¬ risé en ce que l'étape a) consistant à former à partir de l'image courante et de l'image de comparaison d'estimation des images grossières correspondantes, consiste à effectuer un sous-échantillonnage des images courante et de comparai¬ son d'estimation, de façon à obtenir un ensemble de blocs de pixels et de macroblocs sous-échantillonnés, et en ce que l'étape b) consistant à déterminer les vecteurs auxiliaires par estimation par blocs est réalisée par corrélation sur critère de ressemblance entre les différents macroblocs sous-échantillonnés ainsi obtenus.
4. Procédé selon l'une des revendications précéden- tes, caractérisé en ce que, pour une séquence d'images successives, l'image courante étant l'image de rang deux, l'image antérieure, l'image de rang un, et l'image posté¬ rieure, l'image de rang quatre, constituant image de comparaison d'estimation, ledit procédé consiste, outre une étape d'estimation de mouvement, désignée par estimation de mouvement avant, entre ladite image courante et l'image antérieure, à effectuer conjointement une étape d'estimation de mouvement, désignée par estimation de mouvement arrière, entre ladite image courante et l'image postérieure, lesdites étapes d'estimation de mouvement avant et arrière consistant chacune à effectuer les étapes b) d'estimation grossière de mouvement puis c) d'estimation de mouvement finale appli¬ quées aux couples d' images image courante - image antérieure respectivement image courante - image postérieure de la séquence d'images, ce qui permet pour chaque macrobloc de ladite image courante d'obtenir un ensemble d'au moins six vecteurs mouvement finaux.
5. Dispositif d'estimation de mouvement entre images de télévision d'une séquence d'images, chaque image étant formée d'une succession de lignes de pixels regroupées en une trame paire respectivement impaire, la séquence d'images comportant au moins par rapport à une image courante, pour laquelle l'estimation de mouvement est établie, au moins une image antérieure ou postérieure, susceptible de constituer chacune une image de comparaison d'estimation, lesdites images étant subdivisées en blocs de N pixels sur N lignes d'images et en macroblocs formés par p blocs adjacents, chaque macrobloc étant formé par deux demi-macroblocs constitués chacun par les lignes de la trame paire respecti¬ vement impaire, caractérisé en ce que ledit dispositif comporte au moins un module opérateur d'estimation de mouvement de l'image courante par rapport à ladite image de comparaison d'estimation, ce module opérateur comportant au moins, alimentés en parallèle par des signaux vidéo numéri¬ ques représentatifs de ladite image courante et de ladite image de comparaison d'estimation d'origine :
- un circuit d'estimation grossière de mouvement permettant de déterminer, pour chaque macrobloc de l'image courante au moins un vecteur mouvement auxiliaire par rapport à l'image de comparaison d'estimation, chaque vecteur mouvement auxiliaire étant obtenu par estimation de mouvement grossière de ladite image courante de façon à obtenir pour chaque macrobloc un vecteur auxiliaire associé, et connecté en cascade audit circuit d'estimation grossière délivrant ledit au moins un vecteur mouvement auxiliaire, - un circuit d'estimation finale de mouvement recevant lesdits vecteurs mouvement auxiliaires et délivrant à partir de ces derniers et desdits signaux vidéo représen¬ tatifs de 1 ' image courante et de 1 ' image de comparaison d'estimation un ensemble d'au moins trois vecteurs mouvement finaux associés à chaque macrobloc et demi-macrobloc de ce macrobloc de l'image courante.
6. Dispositif selon la revendication 5, caractérisé en ce que ledit circuit d'estimation grossière de mouvement permettant de déterminer pour chaque macrobloc de 1 'image courante au moins un vecteur mouvement auxiliaire permet d'obtenir pour chaque macrobloc et demi-macrobloc de ce macrobloc un vecteur mouvement auxiliaire associé.
7. Dispositif selon la revendication 5, caractérisé en ce que ledit circuit d'estimation de mouvement grossière comprend : - des moyens de sous-échantillonnage de ladite image courante et de ladite image de comparaison d'estimation, lesdits moyens permettant d'obtenir des images grossières correspondantes image courante grossière et image de comparaison d'estimation grossière formées chacune d'un ensemble de blocs de pixels et de macroblocs sous-échantil¬ lonnés ;
- des moyens de calcul d'estimation de mouvement par blocs, par corrélation sur critère de ressemblance entre les différents macroblocs sous-échantillonnés ainsi obtenus, lesdits moyens de calcul délivrant lesdits vecteurs auxi¬ liaires.
8. Dispositif selon la revendication 7, caractérisé en ce que lesdits moyens de calcul d'estimation de mouvement par blocs par corrélation comportent : - des premiers moyens d ' analyse par blocs sous- échantillonnés de ladite image courante grossière, pour laquelle les vecteurs mouvement auxiliaires sont calculés, lesdits moyens d'analyse permettant pour un bloc sous- échantillonné courant une lecture des valeurs des pixels, chaque colonne d'un bloc sous-échantillonné courant étant lue de manière consécutive, des deuxièmes moyens d'analyse par blocs de comparaison de ladite image de comparaison d'estimation grossière, dans laquelle une recherche d'un bloc sous- échantillonné de comparaison correspondant audit bloc sous- échantillonné courant est effectuée, lesdits deuxièmes moyens d'analyse permettant un balayage par blocs sur une fenêtre de recherche de comparaison comprenant un nombre entier 1 de lignes de blocs sous-échantillonnés de comparai¬ son, - une pluralité de k circuits élémentaires de calcul d'estimation de mouvement opérant en parallèle, chaque circuit élémentaire recevant en parallèle lesdits blocs sous-échantillonnés de comparaison et ledit bloc sous- échantillonné courant et délivrant un vecteur mouvement élémentaire pour une fenêtre élémentaire de recherche de comparaison et une variable de valeur de ressemblance entre ledit bloc sous-échantillonné courant et tous les blocs sous-échantillonnés de comparaison de ladite fenêtre élémentaire de recherche de comparaison, l'ensemble des k fenêtres élémentaires, adjacentes, constituant ladite fenêtre de recherche de comparaison, des moyens de comparaison recevant lesdits vecteurs mouvement élémentaires et lesdites variables de valeur de ressemblance et délivrant sur critère de tri le vecteur mouvement auxiliaire correspondant associé audit bloc sous-échantillonné courant de l'image grossière courante.
9. Dispositif selon la revendication 5, caractérisé en ce que ledit circuit d'estimation finale de mouvement comprend :
- un circuit d'estimation de mouvement d'image,
- un premier et un deuxième circuit d'estimation de mouvement de trame affecté chacun à la trame paire respecti¬ vement impaire, lesdits circuits d'estimation de mouvement image respectivement de trame recevant en parallèle lesdits vecteurs mouvement auxiliaires et les signaux vidéo numéri¬ ques représentatifs de l'image courante et de l'image de comparaison d'estimation d'origine et délivrant pour chaque macrobloc et demi-macrobloc de ce macrobloc au moins un vecteur mouvement image, un vecteur mouvement trame paire et un vecteur mouvement trame impaire constituant lesdits au moins trois vecteurs mouvement finaux.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9403080A FR2717648B1 (fr) | 1994-03-16 | 1994-03-16 | Procédé et dispostif d'estimation de mouvement entre images de télévision d'une séquence d'images. |
FR94/03080 | 1994-03-16 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1995025404A1 true WO1995025404A1 (fr) | 1995-09-21 |
Family
ID=9461110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR1995/000306 WO1995025404A1 (fr) | 1994-03-16 | 1995-03-14 | Procede et dispositif d'estimation de mouvement entre images de television d'une sequence d'images |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR2717648B1 (fr) |
WO (1) | WO1995025404A1 (fr) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998042137A1 (fr) * | 1997-03-14 | 1998-09-24 | Cselt-Centro Studi E Laboratori Telecomunicazioni S.P.A. | Circuit pour l'estimation des mouvements dans des codeurs de sequences video numerisees |
EP0944251A1 (fr) * | 1998-01-22 | 1999-09-22 | Hewlett-Packard Company | Méthode pour fournir une amélioration multi-trames compensée en mouvement pour des images vidéo fixes |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1991000668A1 (fr) * | 1989-06-27 | 1991-01-10 | Thomson-Csf | Procede iteratif d'estimation de mouvement, entre une image de reference et une image courante, et dispositif pour la mise en ×uvre de ce procede |
EP0446001A2 (fr) * | 1990-03-06 | 1991-09-11 | Victor Company Of Japan, Ltd. | Circuit de détection du vecteur de mouvement utilisé dans le traitement hiérarchique d'un signal d'image mobile |
EP0484140A2 (fr) * | 1990-10-31 | 1992-05-06 | Victor Company Of Japan, Ltd. | Procédé de compression de signaux d'images animées entrelacées |
WO1993003578A1 (fr) * | 1991-07-30 | 1993-02-18 | Sony Corporation | Appareil de haute performance pour le codage et le decodage d'un signal d'image |
EP0557948A2 (fr) * | 1992-02-25 | 1993-09-01 | Nec Corporation | Appareil de codage prédictif intertrame avec compensation de mouvement |
-
1994
- 1994-03-16 FR FR9403080A patent/FR2717648B1/fr not_active Expired - Fee Related
-
1995
- 1995-03-14 WO PCT/FR1995/000306 patent/WO1995025404A1/fr active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1991000668A1 (fr) * | 1989-06-27 | 1991-01-10 | Thomson-Csf | Procede iteratif d'estimation de mouvement, entre une image de reference et une image courante, et dispositif pour la mise en ×uvre de ce procede |
EP0446001A2 (fr) * | 1990-03-06 | 1991-09-11 | Victor Company Of Japan, Ltd. | Circuit de détection du vecteur de mouvement utilisé dans le traitement hiérarchique d'un signal d'image mobile |
EP0484140A2 (fr) * | 1990-10-31 | 1992-05-06 | Victor Company Of Japan, Ltd. | Procédé de compression de signaux d'images animées entrelacées |
WO1993003578A1 (fr) * | 1991-07-30 | 1993-02-18 | Sony Corporation | Appareil de haute performance pour le codage et le decodage d'un signal d'image |
EP0598904A1 (fr) * | 1991-07-30 | 1994-06-01 | Sony Corporation | Appareil de haute performance pour le codage et le decodage d'un signal d'image |
EP0557948A2 (fr) * | 1992-02-25 | 1993-09-01 | Nec Corporation | Appareil de codage prédictif intertrame avec compensation de mouvement |
Non-Patent Citations (2)
Title |
---|
A. PURI ET AL: "Adaptive frame/field motion compensated video coding", SIGNAL PROCESSING : IMAGE COMMUNICATION 5, pages 39 - 58, XP000345612 * |
T. KOGURE ET AL.: "Matsushita proposal description for MPEG-II", ISO/IEC JTC1/SC2/WG11 , MPEG 91/217, pages 1 - 74 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998042137A1 (fr) * | 1997-03-14 | 1998-09-24 | Cselt-Centro Studi E Laboratori Telecomunicazioni S.P.A. | Circuit pour l'estimation des mouvements dans des codeurs de sequences video numerisees |
AU711190B2 (en) * | 1997-03-14 | 1999-10-07 | Cselt-Centro Studi E Laboratori Telecomunicazioni S.P.A. | Circuit for motion estimation in digitised video sequence encoders |
EP0944251A1 (fr) * | 1998-01-22 | 1999-09-22 | Hewlett-Packard Company | Méthode pour fournir une amélioration multi-trames compensée en mouvement pour des images vidéo fixes |
US6122017A (en) * | 1998-01-22 | 2000-09-19 | Hewlett-Packard Company | Method for providing motion-compensated multi-field enhancement of still images from video |
US6381279B1 (en) | 1998-01-22 | 2002-04-30 | Hewlett-Packard Company | Method for providing motion-compensated multi-field enhancement of still images from video |
EP1296515A2 (fr) * | 1998-01-22 | 2003-03-26 | Hewlett-Packard Company (a Delaware corporation) | Méthode pour fournir une amélioration multi-trames compensée en mouvement pour des images vidéo fixes |
EP1296515A3 (fr) * | 1998-01-22 | 2003-04-02 | Hewlett-Packard Company (a Delaware corporation) | Méthode pour fournir une amélioration multi-trames compensée en mouvement pour des images vidéo fixes |
Also Published As
Publication number | Publication date |
---|---|
FR2717648B1 (fr) | 1996-05-15 |
FR2717648A1 (fr) | 1995-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0330279B1 (fr) | Dispositif de sous-échantillonnage spatio-temporel de signaux vidéo numériques représentatifs d'une suite d'images entrelacées ou séquentielles, système de transmission d'images de télévision à haute définition incluant un tel dispositif, et étages d'émission et de réception pour un tel système | |
EP0675652B1 (fr) | Procédé et circuit d'estimation de mouvement entre images à deux trames entrelacées, et dispositif de codage de signaux numériques comprenant un tel circuit | |
EP0022713B1 (fr) | Installation de codage et de décodage d'un signal visiophonique numérique | |
EP1269400B1 (fr) | Camera numerique a haute resolution et grande vitesse | |
EP0418952B1 (fr) | Dispositif de codage d'informations bidimensionnelles et dispositif de décodage correspondant | |
FR2633137A1 (fr) | Systeme d'emission et reception de television a haute definition a estimateur de vitesses ameliore et a debit de donnees reduit | |
EP0717372B1 (fr) | Procédé de sélection de vecteurs de mouvement et dispositif de traitement d'images mettant en oeuvre ledit procédé | |
FR2631768A1 (fr) | Systeme d'emission et reception de television a haute definition a debit de donnees reduit | |
FR2844131A1 (fr) | Procede et dispositif d'interpolation d'images avec compensation du mouvement | |
EP0337565B1 (fr) | Dispositif de codage de signaux représentatifs d'une suite d'images et système de transmission d'images de télévision à haute définition incluant un tel dispositif | |
FR2650718A1 (fr) | Dispositif de transformation d'une information de mouvement en un signal de detection de mouvement a la frequence trame et au nombre de lignes souhaites pour un recepteur de television haute definition | |
WO1995025404A1 (fr) | Procede et dispositif d'estimation de mouvement entre images de television d'une sequence d'images | |
EP0365090B1 (fr) | Dispositif de doublement du rythme de signaux de télévision, et décodeur d'images de télévision comprenant un tel dispositif | |
EP0294282A1 (fr) | Procédé d'interpolation temporelle d'images et dispositif pour la mise en oeuvre de ce procédé | |
FR2634086A1 (fr) | Dispositif de sous-echantillonnage temporel et d'interpolation temporelle compensee en mouvement dans une sequence d'images entrelacees, utilisation d'un tel dispositif dans les dispositifs de codage et de decodage d'un systeme de transmission d'images de television a haute definition, et dispositifs de codage et de decodage pour un tel systeme | |
EP0321357B1 (fr) | Procédé de sous-échantillonnage dans l'axe du mouvement d'une séquence d'images électroniques | |
FR2660142A1 (fr) | Procede et dispositif de codage-decodage d'un signal numerique de television haute definition en bande etroite. | |
EP0428216B1 (fr) | Dispositif de décodage amélioré de signaux de télévision de type HD-MAC | |
FR2478924A1 (fr) | Procede et appareil pour realiser la compensation de manques de signal sur une ligne de signaux de television couleurs | |
FR2782878A1 (fr) | Systeme de compression et de decompression de signaux video numeriques | |
FR2773038A1 (fr) | Procede et dispositif d'interpolation d'images a partir de donnees video codees mpeg | |
FR2652214A1 (en) | Device for coding information intended to be transmitted and/or stored after data rate reduction | |
FR2652212A1 (en) | Device for coding information intended to be transmitted and/or stored after data rate reduction | |
FR2630283A1 (fr) | Dispositif de sous-echantillonnage temporel et d'interpolation temporelle compensee en mouvement dans une sequence d'images entrelacees, utilisation d'un tel dispositif dans les circuits de codage/decodage d'un systeme de transmission d'images de tele a haute definition; dispositifs de codage/decodage pour un tel systeme | |
FR2633472A1 (fr) | Dispositif de sous-echantillonnage temporel et d'interpolation temporelle compensee en mouvement dans une sequence d'images entrelacees, utilisation d'un tel dispositif dans les dispositifs de codage et de decodage d'un systeme de transmission d'images de television a haute definition, et dispositifs de codage et de decodage pour un tel systeme |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
122 | Ep: pct application non-entry in european phase |