EP1312221A1 - Method for calculating an image interpolated between two images of a video sequence - Google Patents
Method for calculating an image interpolated between two images of a video sequenceInfo
- Publication number
- EP1312221A1 EP1312221A1 EP01963072A EP01963072A EP1312221A1 EP 1312221 A1 EP1312221 A1 EP 1312221A1 EP 01963072 A EP01963072 A EP 01963072A EP 01963072 A EP01963072 A EP 01963072A EP 1312221 A1 EP1312221 A1 EP 1312221A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- image
- mesh
- previous
- occlusion
- following
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000033001 locomotion Effects 0.000 claims description 83
- 239000013598 vector Substances 0.000 claims description 28
- 238000010276 construction Methods 0.000 claims description 20
- 230000007717 exclusion Effects 0.000 claims description 2
- 238000006073 displacement reaction Methods 0.000 description 13
- 230000008034 disappearance Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 239000012530 fluid Substances 0.000 description 4
- 230000009466 transformation Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000005056 compaction Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
-
- 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/537—Motion estimation other than block-based
-
- 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/553—Motion estimation dealing with occlusions
Definitions
- the field of the invention is that of coding and / or decoding of 5 animated sequences of images. More specifically, the invention relates to the construction of one or more image (s) interpolated between two given images of an animated sequence.
- the invention finds applications in all fields of imaging and image processing. There may be mentioned, by way of examples, and in a non-restrictive manner: video coding and / or decoding, in particular with a view to improving the performance of a coder / decoder of the MPEG4 or H263 + type for example, or of any other video coder / decoder; medical imagery; 15 - tracking moving objects; standards conversion, such as PAL / NTSC conversion for example.
- the invention applies in particular, but not exclusively, to the temporal interpolation of frames and / or to bidirectional coding of video sequences, with a view in particular to overcoming the problems of bandwidth saturation and of adaptability to data terminals. varied natures.
- the movement between two images of a sequence is defined as a two-dimensional vector characterizing the difference in positions between a point of an image and the homologous point of the other image, under the assumption that these points correspond at the same physical point in each of the two images.
- the allocation of a displacement vector to each point of the image, or pixel, therefore defines a dense field of movement on the image, also called optical flow.
- mapping methods There are two types of motion field estimation methods used for frame frequency interpolation: - enumerative methods, also called mapping methods; differential methods.
- the enumerative methods are based on a division of the domain of an image into regions of finite size, by regular or adapted partitioning.
- a motion model which can be, for example, affine, translational, polynomial, etc. and one proceeds by successive iterations, by applying a set of distinct values, included in a predetermined interval, to the parameters of this model.
- the differential methods consist, for their part, of estimating a dense field of motion, by assigning a motion vector to each pixel of the image considered. They implement, on the one hand, calculation methods differential, and secondly, optimization techniques, based for example on gradient descents. Among these methods, we can notably cite methods based on the optical flow equation, pel-recursive methods (in English, "Physical Picture Element", physical image element), parametric methods or robust estimators for example .
- the pel-recursive methods proceed by prediction-correction of the motion vectors associated with each of the chosen pixels of an image, according to a predetermined direction of travel.
- the prediction can be based on the value of the motion vector of the previous pixel, or on a linear combination of the motion vectors of the neighboring pixels of the pixel considered.
- the correction is then based on a minimization of the DFD (Displacement Frame Difference, in French "Difference between images") by a gradient descent method.
- DFD Display Frame Difference, in French "Difference between images
- a disadvantage of this technique of the prior art is that the algorithm implemented by CAFFORIO and ROCCA suffers from a strong interaction between the recursive directions and the direction of the displacement to be estimated.
- Jack NIEWEGLOWSKI proposed a method based on the use of a geometric transformation, combined with a technique called “block matching” (in French, compression by repetition of zones) improved ("Motion Compensated Video Interpolation Using Digital Image arping", (in French “Motion compensated video interpolation using digital image distortion”), IEEE ICASSP'94).
- a disadvantage of this technique of the prior art is that it is not suitable for the estimation of regions of strong movement.
- Such hierarchical motion estimation algorithms like the motion estimation methods of the prior art described above, run up against the problem of detecting the occlusion zones (compaction, occultation zones, or discovery of the mesh) within the images of the video sequence considered. Indeed, when different planes and objects overlap in a scene, occlusion zones appear, generating lines of discontinuity within the mesh associated with the image.
- the most common technique used to manage the appearance and / or disappearance of occlusion zones within an image is the use of Ray.
- One such technique consists in associating, with each of the constituent pixels of the image, a label relating to the motion vector associated with this pixel.
- a pixel receiving at least two motion vectors carries the label "occlusion”, which means that it covers at least two pixels present in the previous image of the sequence.
- a pixel receiving a single motion vector carries the label "normal”, thus indicating that it is present in the previous image and in the current image.
- a pixel receiving no motion vector bears the label "hole”, so as to indicate that it belongs to an image discovery area.
- this technique of the prior art only uses this tag information to perform an a posteriori correction of the interpolated images, but does not take them into account during the motion estimation making it possible to construct such images.
- the invention particularly aims to overcome these drawbacks of the prior art.
- an objective of the invention is to provide a technique for constructing an image interpolated between a previous image and a following image of an animated sequence, making it possible to improve the impression of fluidity when viewing the sequence.
- Another objective of the invention is to implement a technique for constructing an interpolated image which is simple and inexpensive to implement.
- Another object of the invention is to provide a technique for constructing a robust interpolated image adapted to regions of strong movement.
- the invention also aims to implement a technique for constructing an interpolated image within a video sequence making it possible to manage the appearance and / or disappearance of objects which correspond to occlusion zones ( reversal zones, discovery zones, settlement zones) within a mesh associated with the images of the sequence.
- occlusion zones reversal zones, discovery zones, settlement zones
- Yet another objective of the invention is to provide a technique for constructing an interpolated image, allowing a user having a terminal with reduced storage capacity to view a fluid video sequence.
- Another object of the invention is to implement a technique for constructing an interpolated image, allowing a user to view a fluid video sequence, despite saturation of the bandwidth of the network by which it is transmitted.
- the invention also aims to provide a technique for constructing an interpolated image which can be integrated into any video coder / decoder in order to improve its performance, in particular in terms of visual fluidity.
- such a method takes account of information relating to the presence of at least one occlusion zone in said previous image and / or in said following image, called occlusion information.
- the invention is based on a completely new and inventive approach to the interpolation of images within an animated sequence.
- the invention is based in particular on the management of the occlusion zones (that is to say the reversal or uncovering zones) appearing within a mesh associated with an image of the sequence.
- the invention therefore makes it possible to significantly improve the visual fluidity of an animated sequence, by implementing a generation of intermediate images inserted between two given images of the sequence, and by blurring the artefacts and the lines of discontinuity introduced by the existence of one or more occlusion zone (s) within such images.
- an image of said sequence is associated with a mesh.
- meshes are more and more frequently the support for representing objects, especially in a virtual reality scene. They thus represent the major part of the quantity of information describing such a scene.
- a mesh is defined by a set of vertices and faces (or a set of vertices, edges and orientations) defining a topology.
- Such a mesh can for example be a flat mesh, or any other type of mesh making it possible to implement a motion estimation from the image with which it is associated.
- said mesh is a hierarchical mesh having at least two levels of mesh nested within a pyramid of mesh.
- the use of a nested hierarchical mesh 11 makes it possible to obtain a robust coding, and reduces the cost of transmission and / or storage of the information.
- the values of the nodes 12, 13 belonging to the highest level of the mesh pyramid are quantified, with a view to their transmission, for example to an encoder, and / or their storage on a data medium 15.
- the lower levels of the mesh pyramid (corresponding to a finer mesh of the image) only the differential values of the son nodes 14, in view of their transmission and / or storage, as illustrated in FIG. 1.
- said occlusion information is determined by the implementation of a step of estimation of forward and backward movement between said preceding and following images.
- a forward motion estimation step consists in determining a set of motion vectors associated with the vertices of a mesh representative of a first image at an instant t ,, and making it possible to construct the mesh associated with a second image at a later time X ⁇ . Such a step therefore makes it possible in particular to detect the at least partial disappearance of an object between the images at times t, and t ⁇ .
- the implementation of a rear estimation step makes it possible to determine the motion vectors to be applied to the vertices of the mesh associated with the image of the instant tj to obtain the image at the previous instant t, , and also makes it possible to detect a possible appearance of objects between the images at times t x and tj.
- such a method implements the following steps: for each occlusion zone, an exclusion step, in said previous image (respectively in said following image), of a region of said mesh including at least one mesh corresponding to said area occlusion, called encompassing region, so as to obtain an approximate previous image (respectively an approximate following image); a front (respectively rear) estimation step, so as to determine motion vectors making it possible to obtain an approximate next image (respectively preceding) from said approximate preceding image (respectively following), called forward motion vectors (respectively back) ; a step of constructing an intermediate image from said approximate previous (respectively following) image and said front (respectively rear) motion vectors.
- an occlusion zone can vitiate the calculation of the motion estimate between two given images of the sequence.
- An approximate image is therefore constructed, obtained by excluding from a given image at least one region of the mesh corresponding to at least one occlusion zone.
- the method then consists in carrying out a new estimate of the movement between the instants t t and ,, after having excluded the faulty areas (that is to say the areas containing at least one mesh reversal), in order to minimize the prediction error between the two images corresponding to the times t, and ⁇ considered.
- This new estimation implemented from the approximate image, makes it possible to determine the optimal motion vectors for the continuous zone of the image (that is to say admitting a bijection between t, and t j ) and thus to avoid that the values of the motion vectors obtained during the motion estimation are disturbed by the existence of zones of discontinuities.
- said encompassing region is a k-disc of said occlusion zone where k ⁇ l.
- the 1-disk of an occlusion zone is the occlusion zone itself; for all k> l, the k- disk of an occlusion zone corresponds to a region which contains the occlusion zone and whose border is located at a maximum distance of k-1 edges from the limit of the zone d occlusion considered.
- said construction step consists in applying said front (respectively rear) motion vectors, weighted by a scalar less than 1, to said approximate preceding (respectively following) image.
- the forward and / or backward motion estimation step makes it possible to determine the set of motion vectors making it possible to move from the previous image to the next image.
- such a method comprises a step of reconstructing a mesh associated with said intermediate image, consisting, for each occlusion zone, of implementing a step of determining colorimetric and / or photometric information associated with a part of said mesh corresponding to said encompassing region, so as to obtain said interpolated image.
- An interpolated image is thus reconstructed from the intermediate image obtained previously, by determining luminance and / or chrominance information associated with the encompassing region.
- Such a determination step can be implemented according to the approach proposed in patent document FR-98 12525 having for title "coding process of still or moving images with reduction and adaptation of the bit rate".
- the object of this patent document is a method of coding a digital image, aiming to produce a bit stream representative of this image, the length of the bit train being a function of the desired representation.
- This method comprises the following steps: defining, on a domain of the image to be coded, a hierarchical mesh comprising a plurality of nested meshes whose mesh vertices can be pixels of said image; perform optimizations of luminance, chrominance, and positions on each mesh level; determine, for each mesh of said hierarchical mesh, a luminance difference between the image to be coded and an interpolated image obtained from the vertices of the nested mesh to which the mesh considered belongs, and - introduce the values (advantageously coded in differential compared to the preceding hierarchical level) of positions, luminance and chrominance of the vertices of the meshes whose luminance difference is greater than a threshold difference.
- a quaternary tree structure associated with the hierarchical mesh, is constructed to manipulate the values (colors and positions) of the vertices of the meshes.
- the tree presents a number of nodes equal to the number of triangles in the level of corresponding triangular mesh. Each node of the tree relates to a single triangle of the hierarchical mesh.
- a luminance difference between the image to be coded and the interpolated image is calculated for each triangle from the vertices of the nested mesh to which the mesh in question belongs. This difference is then compared to a threshold difference for each triangle. The value of the threshold deviation depends on the quality of representation desired.
- the part of the tree relating to the triangles whose luminance difference is greater than the threshold difference is then introduced into the binary train, which therefore makes it possible to transmit the data relating to the image as a function of the local quality of these different triangular partitions.
- said determining step implements on the one hand a finite element coding model, and on the other hand an alternative coding model.
- a finite element coding model for example as described in the French patent document FR 98 12525
- the efficiency of hierarchical coding is low.
- hierarchical coding is well suited for relatively smooth images, but not for images with highly textured parts.
- Such a method of coding an image to be coded comprises the following steps: definition of a hierarchical mesh having at least two levels of nested mesh formed of meshes defined by vertices (which may be pixels of said image to be coded) ; determination, for each of said meshes, of error information between said image to be coded and an interpolated image obtained from the vertices of the meshes belonging to the mesh level of the mesh considered; stopping the refinement of the meshes having error information lower than a first predetermined threshold; implementation of a specific coding for the meshes presenting an error information higher than a second predetermined threshold; - Continuation of the refinement of the meshes having error information greater than said first predetermined threshold and less than said second predetermined threshold.
- the hierarchical coding is the main coding, or coding basic, but it is not used systematically: for the image portions which require it (here, for the portions of the surrounding region which require it), another more effective coding is used.
- the decision to use this specific coding is made by comparison with a threshold. More precisely, at each node considered in the tree representative of the hierarchical mesh, three possibilities are offered: stop the refinement, or the division, of the meshes (the quality reached for the portion of image or of the corresponding encompassing region being sufficient) , go to the next hierarchical level, keeping the same hierarchical coding, or use another coding (in particular a coding better suited to very textured portions).
- such a method comprises a step of reconstructing a mesh associated with said intermediate image, consisting, for each occlusion zone, in inserting into said mesh part of a mesh associated with said next image or said previous image corresponding to said encompassing region, so as to obtain said interpolated image.
- the content of the occlusion zones is replaced by the corresponding zones of the previous or next image.
- the interpolated image thus obtained is then made up of a part obtained by interpolation, and corresponding to the displacement of the mesh associated with the previous image (respectively following), and occlusion zones containing information of the next or previous image. .
- such a method further comprises, for each occlusion zone, a step of estimating local movement between said interpolated image and a corresponding exact image, consisting in optimizing the position of at least one node of part of said mesh corresponding to said encompassing region in said interpolated image, so as to generate an improved first interpolated image.
- such a method further comprises a step of calculating an error image, so as to evaluate an error between said first improved interpolated image and said corresponding exact image.
- a step of calculating an error image so as to evaluate an error between said first improved interpolated image and said corresponding exact image.
- said error being greater than a predetermined threshold for at least one region of said error image
- such a method implements a step of determining colorimetric and / or photometric information associated with each of said regions, so as to generate a second improved interpolated image.
- said determination step implements, on the one hand, a finite element coding model, and on the other hand, an alternative coding model.
- said determining step is implemented on the basis of said error image or of said corresponding exact image, according to a predetermined cost criterion.
- step of determining colorimetric and / or photometric information the cost of such a device is evaluated. step from the error image on the one hand, and from the exact image corresponding to the interpolated image on the other hand. We therefore favor the least expensive solution.
- said mesh is larger than said image it represents.
- the invention also relates to a coding method and a method for decoding an animated sequence, of the type implementing a step of interpolating at least one image interpolated between a previous image and a following image.
- said interpolation step takes account of information relating to the presence of at least one occlusion zone in said previous image and / or in said following image, called occlusion information.
- the invention also relates to a terminal for viewing an animated sequence of images of the type comprising means for interpolating at least one image interpolated between a previous image and a following image, said interpolation means taking account of the presence of at least one occlusion zone in said previous image and / or in said following image.
- the invention also relates to a video signal and a data medium comprising information making it possible to reconstruct at least one image interpolated between a previous image and a following image of an animated sequence of images, said information taking account of the presence of at least one occlusion zone in said previous image and / or in said following image.
- FIG. 1 presents an example of implementation of a nested triangular hierarchical mesh
- FIG. 2 presents a block diagram of all the steps implemented according to the invention for constructing an image interpolated between a previous image and a following image of an animated sequence
- Figure 3 illustrates in more detail the steps 11, 14 and 15, presented in Figure 2
- FIG. 4 illustrates an example of application of the invention to the temporal interpolation of frames.
- the general principle of the invention is based on the management of occlusion zones during the construction of interpolated images within an animated sequence, with a view to bidirectional coding and / or temporal interpolation of frames at decoding.
- FIG. 2 An embodiment of the construction of an image interpolated between a previous image and a following image of an animated sequence, in the form of a block diagram presenting all the steps to implement according to the invention.
- a forward motion estimate is made from image I, so as to determine the motion vectors to be applied to the vertices of the mesh (for example a hierarchical mesh as illustrated in FIG. 1) associated with I x to obtain the image I 2 .
- a step 21 can of course also consist in carrying out an estimate of backward movement from I 2 , but, for the sake of simplicity of reading, we will only endeavor to describe an example of embodiment implementing a estimation step before during the step referenced 21.
- Such a step referenced 21 makes it possible to detect the presence of possible occlusion zones, corresponding here to the at least partial disappearance of one or more objects in the image I,. It also makes it possible to determine the movement d to be applied to the mesh associated with I, to obtain I 2 .
- the desired interpolated image I ′ is therefore obtained, during a step referenced 23. If, during the step referenced 21, it detects the presence of at least an occlusion zone, I 1 is excluded ; during a step referenced 24, the encompassing region or regions corresponding to the occlusion zone (s) detected, so as to avoid an error in the motion estimation which would be introduced by the presence of this or these zones d 'occlusion.
- I j approximate, corresponding to image I, from which at least one occlusion zone has been excluded.
- Steps 21, 24 and 25 are now described in more detail in relation to FIG. 3.
- step referenced 21 of forward motion estimation from the image I 15 the presence of a turning area 31 is detected.
- the turning area is therefore excluded 31 to the image I l5 so as to obtain an image L, approximated.
- a displacement of is applied to the mesh associated with I, approximate, so as to obtain, during a step referenced 27, an intermediate image Ii nte ⁇ néd i a i re -
- Such a displacement of is obtained by weighting the optimal displacement d, determined during the step referenced 25, by a scalar between 0 and 1, according to a technique similar to that implemented during the step referenced 22.
- a step referenced 291 is then implemented, consisting in inserting into Ii nterméd i area the area or areas of I 2 or I x corresponding to the or to the encompassing regions excluded from I, during the step referenced 24.
- the content of the occlusion zones is thus replaced by the corresponding zones of the instant t ⁇ or of the instant t ,.
- a first embodiment consists, during a step referenced 281, to determine color information and / or associated with the photometric or regions I Intermed i a i re corresponding to or encompassing regions excluded from I, during the step referenced 24.
- the entire mesh associated with Ij nterméd i a i re> is thus reconstructed so as to obtain an interpolated image I ′ during a step referenced 282.
- Such a step 281 can for example be implemented according to the technique described in patent document FR-98 12525 having for title "coding process for still or moving images with reduction and adaptation of the bit rate".
- a second embodiment consists, during a step referenced 291, for inclusion in Ii ntermea ry the zone of I 2 or I, corresponding to or encompassing regions excluded from I x during the step referenced 24.
- the content of the occlusion zones is thus replaced by the corresponding zones of time t ⁇ or time t ,.
- the image I ' is obtained by inserting the content of the image I 2 during the implementation of a prior estimate, and by inserting the content of the image ⁇ during the implementation of an estimate of backward movement, in order to allow an overall recovery of the interpolated image V.
- an image F consisting, on the one hand, of an interpolated part corresponding to the displacement of the mesh associated with I x , and on the other hand of the zone or zones , corresponding to the occlusion zone (s), and containing information of the image I 2 or of the image I ,.
- an estimation of motion 293 is then made between I' and the corresponding exact interpolated image.
- the image I is then inserted between the images I, and I 2 of the animated sequence, during a step referenced 298. In the Otherwise, if the error is greater than a predetermined threshold for at least certain parts of the error image, a step 296 of determining colorimetric and / or photometric information associated with the zone (s) is implemented. the image on which the error is significant.
- step 296 can, for example, be implemented according to the technique described in patent document FR-98 12525 having for title "coding process of still or moving images with reduction and adaptation of the bit rate".
- the information required by the coder then corresponds to the motion vectors d * , corresponding to the motion estimation between I 'and the corresponding exact image, and the chrominance and luminance information associated with the local correction d 'error, if necessary.
- interpolated image I ', I' j improved or I ' 2 improved obtained at the end of one of the steps referenced 23, 282, 294 or 297 can then be interposed between two successive images of an animated sequence, thus as illustrated in figure 4.
- the decoder constructs an interpolated image 43, possibly from information transmitted by the coder, which he inserts between two images referenced 41 and 42, in order to increase the visual fluidity of the sequence 40.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Systems (AREA)
Abstract
The invention concerns a method for constructing at least an image interpolated between a preceding image and a following image of an animated sequence. The invention is characterised in that the method takes into account data concerning the presence of at least an occlusion zone in said preceding image and/or in said following image, called occlusion data.
Description
PROCEDE DE CALCUL D ' AU MOINS UNE IMAGE INTERPOLEE ENTRE DEUX IMAGES D ' UNE SEQUE NCE VIDEOMETHOD FOR CALCULATING AT LEAST ONE IMAGE INTERPOLED BETWEEN TWO IMAGES OF A SEQUE NCE VIDEO
Le domaine de l'invention est celui du codage et/ou du décodage de 5 séquences animées d'images. Plus précisément, l'invention concerne la construction d'une ou plusieurs image(s) interpolée(s) entre deux images données d'une séquence animée.The field of the invention is that of coding and / or decoding of 5 animated sequences of images. More specifically, the invention relates to the construction of one or more image (s) interpolated between two given images of an animated sequence.
L'invention trouve des applications dans tous les domaines de l'imagerie et du traitement de l'image. On peut citer, à titre d'exemples, et de manière non 10 restrictive : le codage et/ou le décodage vidéo, notamment en vue d'améliorer les performances d'un codeur/décodeur du type MPEG4 ou H263+ par exemple, ou de tout autre codeur/décodeur vidéo ; l'imagerie médicale ; 15 - le suivi d'objets en mouvement ; la conversion de standards, telle que la conversion PAL/NTSC par exemple.The invention finds applications in all fields of imaging and image processing. There may be mentioned, by way of examples, and in a non-restrictive manner: video coding and / or decoding, in particular with a view to improving the performance of a coder / decoder of the MPEG4 or H263 + type for example, or of any other video coder / decoder; medical imagery; 15 - tracking moving objects; standards conversion, such as PAL / NTSC conversion for example.
L'invention s'applique notamment, mais non exclusivement, à l'interpolation temporelle de trames et/ou au codage bidirectionnel de séquences 20 vidéo, en vue de pallier notamment les problèmes de saturation de bande passante et d'adaptabilité à des terminaux de natures variées.The invention applies in particular, but not exclusively, to the temporal interpolation of frames and / or to bidirectional coding of video sequences, with a view in particular to overcoming the problems of bandwidth saturation and of adaptability to data terminals. varied natures.
En effet, un des objectifs principaux des opérateurs du domaine de la vidéo est désormais de permettre à un utilisateur de visualiser des séquences animées de qualité satisfaisante, et notamment dans lesquelles les images successives 25 s'enchaînent de manière fluide. Or, le problème de la fluidité des séquences vidéo est fortement dépendant de celui de la saturation des réseaux de transmission et de la capacité (notamment de stockage) des terminaux de visualisation dont dispose l'utilisateur.Indeed, one of the main objectives of operators in the video field is now to allow a user to view animated sequences of satisfactory quality, and in particular in which the successive images 25 are linked in a fluid manner. However, the problem of the fluidity of the video sequences is highly dependent on that of the saturation of the transmission networks and of the capacity (in particular of storage) of the display terminals available to the user.
Afin de satisfaire les requêtes des utilisateurs, et de pallier les problèmes 30 de saturation de bande passante, il est donc nécessaire de produire des flux vidéos
couvrant une large gamme de débits. Cependant, les séquences vidéo transmises à bas ou à moyen débit apparaissent généralement saccadées au moment de leur visualisation.In order to satisfy user requests, and to overcome the problems of bandwidth saturation, it is therefore necessary to produce video streams covering a wide range of flow rates. However, video sequences transmitted at low or medium speed generally appear jerky when viewed.
On a donc envisagé de mettre en œuvre une interpolation de fréquence trame lors du décodage des trains binaires transmis, et/ou un stockage d'informations supplémentaires lors du codage en mode bidirectionnel, afin de générer des séquences vidéo plus fluides, en fonction du terminal de visualisation, du réseau de transmission et/ou d'une requête d'un utilisateur.It has therefore been envisaged to implement a frame frequency interpolation during the decoding of the transmitted bit streams, and / or a storage of additional information during coding in bidirectional mode, in order to generate more fluid video sequences, depending on the terminal. display, transmission network and / or user request.
Différentes techniques d'interpolation de fréquence, reposant sur l'estimation d'un champ de mouvement, ont été envisagées, mais aucune à ce jour ne présente de performances satisfaisantes.Different frequency interpolation techniques, based on the estimation of a field of motion, have been considered, but none to date has shown satisfactory performance.
On rappelle que le mouvement entre deux images d'une séquence se définit comme un vecteur à deux dimensions caractérisant la différence de positions entre un point d'une image et le point homologue de l'autre image, sous l'hypothèse que ces points correspondent au même point physique dans chacune des deux images. L'attribution d'un vecteur déplacement à chaque point de l'image, ou pixel, définit donc un champ dense de mouvement sur l'image, encore appelé flot optique.It is recalled that the movement between two images of a sequence is defined as a two-dimensional vector characterizing the difference in positions between a point of an image and the homologous point of the other image, under the assumption that these points correspond at the same physical point in each of the two images. The allocation of a displacement vector to each point of the image, or pixel, therefore defines a dense field of movement on the image, also called optical flow.
Les méthodes d'estimation de champ de mouvement utilisées pour l'interpolation de fréquence trame sont de deux types : - les méthodes énumératives, dites encore de mise en correspondance ; les méthodes différentielles.There are two types of motion field estimation methods used for frame frequency interpolation: - enumerative methods, also called mapping methods; differential methods.
Les méthodes énumératives reposent sur un découpage du domaine d'une image en régions de taille finie, par partitionnement régulier ou adapté. On définit ensuite un modèle de mouvement, qui peut être, par exemple, affine, translationnel, polynomial, etc. et on procède par itérations successives, en appliquant un ensemble de valeurs distinctes, comprises dans un intervalle prédéterminé, aux paramètres de ce modèle.The enumerative methods are based on a division of the domain of an image into regions of finite size, by regular or adapted partitioning. We then define a motion model, which can be, for example, affine, translational, polynomial, etc. and one proceeds by successive iterations, by applying a set of distinct values, included in a predetermined interval, to the parameters of this model.
Les méthodes différentielles consistent, quant à elles, à estimer un champ dense de mouvement, en attribuant un vecteur de mouvement à chaque pixel de l'image considérée. Elles mettent en œuvre, d'une part, des méthodes de calcul
différentiel, et d'autre part, des techniques d'optimisation, reposant par exemple sur les descentes de gradient. Parmi ces méthodes, on peut notamment citer les méthodes fondées sur l'équation du flot optique, les méthodes pel-récursives (en anglais, "Physical Picture Elément", élément d'image physique), les méthodes paramétriques ou les estimateurs robustes par exemple.The differential methods consist, for their part, of estimating a dense field of motion, by assigning a motion vector to each pixel of the image considered. They implement, on the one hand, calculation methods differential, and secondly, optimization techniques, based for example on gradient descents. Among these methods, we can notably cite methods based on the optical flow equation, pel-recursive methods (in English, "Physical Picture Element", physical image element), parametric methods or robust estimators for example .
De nombreux travaux ont été entrepris pour améliorer les techniques d'interpolation d'images existantes. Parmi ceux-ci, on peut citer la méthode proposée par Ciro CAFFORIO et Fabio ROCCA ("Motion Compensation Image Interpolation", "Interpolation d'image par compensation de mouvement", IEEE Transactions on communications, Vol. 38, 2, Feb. 90), consistant à utiliser un estimateur pel-récursif pour la compensation de mouvement.Many works have been undertaken to improve existing image interpolation techniques. Among these, we can cite the method proposed by Ciro CAFFORIO and Fabio ROCCA ("Motion Compensation Image Interpolation", "Image Interpolation by motion compensation", IEEE Transactions on communications, Vol. 38, 2, Feb. 90 ), consisting of using a pel-recursive estimator for motion compensation.
On rappelle que les méthodes pel-récursives procèdent par prédiction- correction des vecteurs de mouvement associés à chacun des pixels choisis d'une image, selon un sens de parcours prédéterminé. La prédiction peut reposer sur la valeur du vecteur de mouvement du pixel précédent, ou sur une combinaison linéaire des vecteurs de mouvement des pixels voisins du pixel considéré. La correction est ensuite fondée sur une minimisation de la DFD (Displacement Frame Différence, en français "Différence inter images") par une méthode de descente du gradient. Un inconvénient de cette technique de l'art antérieur est que l'algorithme mis en œuvre par CAFFORIO et ROCCA souffre d'une forte interaction entre les directions récursives et la direction du déplacement à estimer.It is recalled that the pel-recursive methods proceed by prediction-correction of the motion vectors associated with each of the chosen pixels of an image, according to a predetermined direction of travel. The prediction can be based on the value of the motion vector of the previous pixel, or on a linear combination of the motion vectors of the neighboring pixels of the pixel considered. The correction is then based on a minimization of the DFD (Displacement Frame Difference, in French "Difference between images") by a gradient descent method. A disadvantage of this technique of the prior art is that the algorithm implemented by CAFFORIO and ROCCA suffers from a strong interaction between the recursive directions and the direction of the displacement to be estimated.
Pour pallier cet effet, on a envisagé d'utiliser 4 directions récursives distinctes. On a ainsi obtenu une minimisation des effets perturbateurs, mais cette technique reste cependant insuffisamment performante.To overcome this effect, we have considered using 4 separate recursive directions. This has minimized the disruptive effects, but this technique remains insufficiently effective.
Jack NIEWEGLOWSKI a proposé une méthode reposant sur l'utilisation d'une transformation géométrique, combinée à une technique dite de "block matching" (en français, compression par répétition de zones) améliorée ("Motion Compensated Video Interpolation Using Digital Image arping", (en français
"Interpolation vidéo à compensation de mouvement mettant en œuvre une déformation d'image numérique"), IEEE ICASSP'94).Jack NIEWEGLOWSKI proposed a method based on the use of a geometric transformation, combined with a technique called "block matching" (in French, compression by repetition of zones) improved ("Motion Compensated Video Interpolation Using Digital Image arping", (in French "Motion compensated video interpolation using digital image distortion"), IEEE ICASSP'94).
Une telle méthode permet de prendre en compte les changements d'échelle mais présente l'inconvénient d'être peu robuste, en raison d'une décorrélation de la transformation géométrique et de la compression par répétition de zones.Such a method makes it possible to take account of changes in scale but has the disadvantage of being not very robust, due to a decorrelation of the geometric transformation and of the compression by repetition of zones.
Q. WANG et L.J. CLARK ont ensuite envisagé de mettre en œuvre un algorithme paramétrique, reposant sur la modélisation du mouvement d'une région quelconque d'une image par un modèle défini a priori ("Motion Estimation and Compensation for Image Séquence Coding", en français "Estimation et compensation de mouvement pour le codage de séquences d'images", Signal Processing : Image Communication, Vol.4, No. 2, April 92, pp. 161-174).Q. WANG and LJ CLARK then considered implementing a parametric algorithm, based on the modeling of the movement of any region of an image by a model defined a priori ("Motion Estimation and Compensation for Image Sequence Coding", in French "Motion estimation and compensation for coding image sequences", Signal Processing: Image Communication, Vol.4, No. 2, April 92, pp. 161-174).
Un inconvénient de cette technique de l'art antérieur est qu'elle n'est pas adaptée à l'estimation des régions de fort mouvement.A disadvantage of this technique of the prior art is that it is not suitable for the estimation of regions of strong movement.
Pour pallier les différents problèmes rencontrés par ces techniques d'estimation de mouvement, on a également proposé de mettre en œuvre des algorithmes d'estimation de mouvement hiérarchiques, tels que ceux décrits par L. Bόrocsky et P. Csillag ("Multiresolution Motion Field Estimation for Wavelet Video Coding and Frame Interpolation", en français "Estimation de champ de mouvement multiresolution pour le codage d'ondelettes vidéo et l'interpolation de trames", Final Workshop, Vigo, Spain, Oct. 94, pp. 163-166).To overcome the various problems encountered by these motion estimation techniques, it has also been proposed to implement hierarchical motion estimation algorithms, such as those described by L. Bόrocsky and P. Csillag ("Multiresolution Motion Field Estimation for Wavelet Video Coding and Frame Interpolation ", in French" Multiresolution field of motion estimation for video wavelet coding and frame interpolation ", Final Workshop, Vigo, Spain, Oct. 94, pp. 163-166) .
De tels algorithmes d'estimation de mouvement hiérarchique, comme les méthodes d'estimation de mouvement de l'art antérieur décrites ci-dessus, se heurtent au problème de la détection des zones d'occlusion (zones de tassement, d'occultation, ou de découvrement du maillage) au sein des images de la séquence vidéo considérée. En effet, lorsque différents plans et objets se recouvrent dans une scène, des zones d'occlusion apparaissent, générant des lignes de discontinuité au sein du maillage associé à l'image.Such hierarchical motion estimation algorithms, like the motion estimation methods of the prior art described above, run up against the problem of detecting the occlusion zones (compaction, occultation zones, or discovery of the mesh) within the images of the video sequence considered. Indeed, when different planes and objects overlap in a scene, occlusion zones appear, generating lines of discontinuity within the mesh associated with the image.
La technique la plus couramment utilisée pour gérer l'apparition et ou la disparition de zones d'occlusion au sein d'une image est l'utilisation du lancer de
rayon. Une telle technique consiste à associer, à chacun des pixels constitutifs de l'image, une étiquette relative au vecteur de mouvement associé à ce pixel.The most common technique used to manage the appearance and / or disappearance of occlusion zones within an image is the use of Ray. One such technique consists in associating, with each of the constituent pixels of the image, a label relating to the motion vector associated with this pixel.
Ainsi, un pixel recevant au moins deux vecteurs de mouvement porte l'étiquette "occlusion", ce qui signifie qu'il couvre au moins deux pixels présents dans l'image précédente de la séquence. Un pixel recevant un unique vecteur de mouvement porte l'étiquette "normal", indiquant ainsi qu'il est présent dans l'image précédente et dans l'image courante. Enfin, un pixel ne recevant aucun vecteur de mouvement porte l'étiquette "trou", de manière à indiquer qu'il appartient à une zone de découvrement de l'image. Une telle technique est notamment décrite dans "Interframe Interpolation of Cinematic Séquences" (en français "Interpolation inter-trames de séquences animées"), par J. Ribas-Corbera et J. Sklansky, Journal of Visual Communication and Image Représentation, Vol. 4, No. 4, Dec. 93, pp. 392-406 et dans "MotionThus, a pixel receiving at least two motion vectors carries the label "occlusion", which means that it covers at least two pixels present in the previous image of the sequence. A pixel receiving a single motion vector carries the label "normal", thus indicating that it is present in the previous image and in the current image. Finally, a pixel receiving no motion vector bears the label "hole", so as to indicate that it belongs to an image discovery area. Such a technique is described in particular in "Interframe Interpolation of Cinematic Séquences" (in French "Inter-frame interpolation of animated sequences"), by J. Ribas-Corbera and J. Sklansky, Journal of Visual Communication and Image Representation, Vol. 4, No. 4, Dec. 93, pp. 392-406 and in "Motion
Compensating Interpolation for Improved Slow Motion" (en français "Interpolation compensatrice de mouvement pour un mouvement lent amélioré") par B. Chupeau et P. Salmon, Thomson-CSF/Laboratoires électroniques deCompensating Interpolation for Improved Slow Motion "(in French" Motion compensating interpolation for improved slow motion ") by B. Chupeau and P. Salmon, Thomson-CSF / Laboratoires Électroniques
Rennes, France.Rennes, France.
Toutefois, cette technique de l'art antérieur n'exploite ces informations d'étiquette que pour effectuer une correction a posteriori des images interpolées, mais ne les prend pas en compte lors de l'estimation de mouvement permettant de construire de telles images.However, this technique of the prior art only uses this tag information to perform an a posteriori correction of the interpolated images, but does not take them into account during the motion estimation making it possible to construct such images.
L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur.The invention particularly aims to overcome these drawbacks of the prior art.
Plus précisément, un objectif de l'invention est de fournir une technique de construction d'une image interpolée entre une image précédente et une image suivante d'une séquence animée, permettant d'améliorer l'impression de fluidité lors de la visualisation de la séquence.More specifically, an objective of the invention is to provide a technique for constructing an image interpolated between a previous image and a following image of an animated sequence, making it possible to improve the impression of fluidity when viewing the sequence.
Un autre objectif de l'invention est de mettre en œuvre une technique de construction d'une image interpolée qui soit simple et peu coûteuse à mettre en œuvre.
L'invention a encore pour objectif de fournir une technique de construction d'une image interpolée robuste et adaptée aux régions de fort mouvement.Another objective of the invention is to implement a technique for constructing an interpolated image which is simple and inexpensive to implement. Another object of the invention is to provide a technique for constructing a robust interpolated image adapted to regions of strong movement.
L'invention a également pour objectif de mettre en œuvre une technique de construction d'une image interpolée au sein d'une séquence vidéo permettant de gérer l'apparition et/ou la disparition d'objets qui correspondent à des zones d'occlusion (zones de retournement, zones de découvrement, zones de tassement) au sein d'un maillage associé aux images de la séquence.The invention also aims to implement a technique for constructing an interpolated image within a video sequence making it possible to manage the appearance and / or disappearance of objects which correspond to occlusion zones ( reversal zones, discovery zones, settlement zones) within a mesh associated with the images of the sequence.
Encore un autre objectif de l'invention est de fournir une technique de construction d'une image interpolée, permettant à un utilisateur disposant d'un terminal de capacité de stockage réduite de visualiser une séquence vidéo fluide.Yet another objective of the invention is to provide a technique for constructing an interpolated image, allowing a user having a terminal with reduced storage capacity to view a fluid video sequence.
L'invention a encore pour objectif de mettre en œuvre une technique de construction d'une image interpolée, permettant à un utilisateur de visualiser une séquence vidéo fluide, malgré une saturation de la bande passante du réseau par lequel elle est transmise.Another object of the invention is to implement a technique for constructing an interpolated image, allowing a user to view a fluid video sequence, despite saturation of the bandwidth of the network by which it is transmitted.
L'invention a également pour objectif de fournir une technique de construction d'une image interpolée pouvant être intégrée à tout codeur/décodeur vidéo afin d'en améliorer les performances, notamment en termes de fluidité visuelle. Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints à l'aide d'un procédé de construction d'au moins une image interpolée entre une image précédente et une image suivante d'une séquence animée.The invention also aims to provide a technique for constructing an interpolated image which can be integrated into any video coder / decoder in order to improve its performance, in particular in terms of visual fluidity. These objectives, as well as others which will appear subsequently, are achieved using a method of constructing at least one image interpolated between a previous image and a following image of an animated sequence.
Selon l'invention, un tel procédé tient compte d'informations relatives à la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante, dites informations d'occlusion.According to the invention, such a method takes account of information relating to the presence of at least one occlusion zone in said previous image and / or in said following image, called occlusion information.
Ainsi, l'invention repose sur une approche tout à fait nouvelle et inventive de l'interpolation d'images au sein d'une séquence animée. En effet, l'invention repose notamment sur la gestion des zones d'occlusion (c'est-à-dire des zones de retournement ou de découvrement) apparaissant au sein d'un maillage associé à une image de la séquence.
L'invention permet donc d'améliorer sensiblement la fluidité visuelle d'une séquence animée, en mettant en œuvre une génération d'images intermédiaires intercalées entre deux images données de la séquence, et en estompant les artefacts et les lignes de discontinuité introduits par l'existence d'une ou plusieurs zone(s) d'occlusion au sein de telles images.Thus, the invention is based on a completely new and inventive approach to the interpolation of images within an animated sequence. Indeed, the invention is based in particular on the management of the occlusion zones (that is to say the reversal or uncovering zones) appearing within a mesh associated with an image of the sequence. The invention therefore makes it possible to significantly improve the visual fluidity of an animated sequence, by implementing a generation of intermediate images inserted between two given images of the sequence, and by blurring the artefacts and the lines of discontinuity introduced by the existence of one or more occlusion zone (s) within such images.
Avantageusement, une image de ladite séquence est associée à un maillage.Advantageously, an image of said sequence is associated with a mesh.
En effet, les maillages constituent de plus en plus fréquemment le support de représentation des objets, notamment dans une scène de réalité virtuelle. Ils représentent ainsi la majeure partie de la quantité d'informations décrivant une telle scène. Classiquement, un maillage est défini par un ensemble de sommets et de faces (ou un ensemble de sommets, d'arêtes et d'orientations) définissant une topologie.Indeed, meshes are more and more frequently the support for representing objects, especially in a virtual reality scene. They thus represent the major part of the quantity of information describing such a scene. Conventionally, a mesh is defined by a set of vertices and faces (or a set of vertices, edges and orientations) defining a topology.
Un tel maillage peut par exemple être un maillage à plat, ou tout autre type de maillage permettant de mettre en œuvre une estimation de mouvement à partir de l'image à laquelle il est associé.Such a mesh can for example be a flat mesh, or any other type of mesh making it possible to implement a motion estimation from the image with which it is associated.
Selon une caractéristique avantageuse de l'invention, ledit maillage est un maillage hiérarchique présentant au moins deux niveaux de maillage emboîtés au sein d'une pyramide de maillage. Ainsi, en référence à l'exemple de la figure 1, l'utilisation d'un maillage hiérarchique emboîté 11 permet d'obtenir un codage robuste, et réduit le coût de transmission et/ou de stockage de l'information. En effet, il existe une forte corrélation entre les informations portées par un nœud père et celles portées par ses nœuds fils au sein du maillage. De ce fait, on quantifie les valeurs des nœuds 12, 13 appartenant au niveau le plus haut de la pyramide de maillage (correspondant à un maillage grossier de l'image), en vue de leur transmission, par exemple vers un codeur, et/ou de leur stockage sur un support de données 15. En revanche, pour les niveaux inférieurs de la pyramide de maillage (correspondant à un maillage plus fin de l'image), on ne quantifie que les valeurs différentielles des
nœuds fils 14, en vu de leur transmission et/ou de leur stockage, ainsi qu'illustré en figure 1.According to an advantageous characteristic of the invention, said mesh is a hierarchical mesh having at least two levels of mesh nested within a pyramid of mesh. Thus, with reference to the example of FIG. 1, the use of a nested hierarchical mesh 11 makes it possible to obtain a robust coding, and reduces the cost of transmission and / or storage of the information. Indeed, there is a strong correlation between the information carried by a parent node and that carried by its child nodes within the mesh. Therefore, the values of the nodes 12, 13 belonging to the highest level of the mesh pyramid (corresponding to a coarse mesh of the image) are quantified, with a view to their transmission, for example to an encoder, and / or their storage on a data medium 15. On the other hand, for the lower levels of the mesh pyramid (corresponding to a finer mesh of the image), only the differential values of the son nodes 14, in view of their transmission and / or storage, as illustrated in FIG. 1.
Selon une technique avantageuse, lesdites informations d'occlusion sont déterminées par la mise en œuvre d'une étape d'estimation de mouvement avant et ou arrière entre lesdites images précédente et suivante.According to an advantageous technique, said occlusion information is determined by the implementation of a step of estimation of forward and backward movement between said preceding and following images.
La mise en œuvre d'une étape d'estimation de mouvement avant consiste à déterminer un ensemble de vecteurs de mouvement associés aux sommets d'un maillage représentatif d'une première image à un instant t,, et permettant de construire le maillage associé à une deuxième image à un instant ultérieur X^. Une telle étape permet donc notamment de déceler la disparition au moins partielle d'un objet entre les images aux instants t, et t^.The implementation of a forward motion estimation step consists in determining a set of motion vectors associated with the vertices of a mesh representative of a first image at an instant t ,, and making it possible to construct the mesh associated with a second image at a later time X ^. Such a step therefore makes it possible in particular to detect the at least partial disappearance of an object between the images at times t, and t ^.
De même, la mise en œuvre d'une étape d'estimation arrière permet de déterminer les vecteurs de mouvement à appliquer aux sommets du maillage associé à l'image de l'instant tj pour obtenir l'image à l'instant précédent t,, et permet également de déceler une éventuelle apparition d'objets entre les images aux instants tx et tj.Similarly, the implementation of a rear estimation step makes it possible to determine the motion vectors to be applied to the vertices of the mesh associated with the image of the instant tj to obtain the image at the previous instant t, , and also makes it possible to detect a possible appearance of objects between the images at times t x and tj.
On peut donc envisager de mettre en œuvre une étape d'estimation avant, de manière à déceler une éventuelle disparition d'objets, ou une étape d'estimation arrière, de manière à déceler une éventuelle apparition d'objets. La mise en œuvre conjointe d'une étape d'estimation avant et d'une étape d'estimation arrière permet donc de détecter la présence de toute zone d'occlusion, correspondant à un retournement ou à un découvrement de mailles, associé à une disparition ou à une apparition d'objet.We can therefore consider implementing a prior estimation step, so as to detect a possible disappearance of objects, or a rear estimation step, so as to detect a possible appearance of objects. The joint implementation of a front estimation step and a rear estimation step therefore makes it possible to detect the presence of any occlusion zone, corresponding to a reversal or a discovery of meshes, associated with a disappearance or an object appearance.
Préférentiellement, en présence d'au moins une zone d'occlusion dans ladite image précédente (respectivement dans ladite image suivante), un tel procédé met en œuvre les étapes suivantes : pour chaque zone d'occlusion, une étape d'exclusion, dans ladite image précédente (respectivement dans ladite image suivante), d'une région dudit maillage englobant au moins une maille correspondant à ladite zone
d'occlusion, dite région englobante, de manière à obtenir une image précédente approchée (respectivement une image suivante approchée) ; une étape d'estimation avant (respectivement arrière), de manière à déterminer des vecteurs de mouvement permettant d'obtenir une image suivante (respectivement précédente) approchée à partir de ladite image précédente (respectivement suivante) approchée, appelés vecteurs de mouvement avant (respectivement arrière) ; une étape de construction d'une image intermédiaire à partir de ladite image précédente (respectivement suivante) approchée et desdits vecteurs de mouvement avant (respectivement arrière).Preferably, in the presence of at least one occlusion zone in said previous image (respectively in said following image), such a method implements the following steps: for each occlusion zone, an exclusion step, in said previous image (respectively in said following image), of a region of said mesh including at least one mesh corresponding to said area occlusion, called encompassing region, so as to obtain an approximate previous image (respectively an approximate following image); a front (respectively rear) estimation step, so as to determine motion vectors making it possible to obtain an approximate next image (respectively preceding) from said approximate preceding image (respectively following), called forward motion vectors (respectively back) ; a step of constructing an intermediate image from said approximate previous (respectively following) image and said front (respectively rear) motion vectors.
En effet, la présence d'une zone d'occlusion peut entacher d'erreur le calcul de l'estimation de mouvement entre deux images données de la séquence. On construit donc une image approchée, obtenue en excluant d'une image donnée au moins une région du maillage correspondant à au moins une zone d'occlusion. Le procédé consiste alors à réaliser une nouvelle estimation du mouvement entre les instants tt et ,, après avoir exclu les zones en défaut (c'est-à-dire les zones contenant au moins un retournement de maille), afin de minimiser l'erreur de prédiction entre les deux images correspondant aux instants t, et ^ considérés.Indeed, the presence of an occlusion zone can vitiate the calculation of the motion estimate between two given images of the sequence. An approximate image is therefore constructed, obtained by excluding from a given image at least one region of the mesh corresponding to at least one occlusion zone. The method then consists in carrying out a new estimate of the movement between the instants t t and ,, after having excluded the faulty areas (that is to say the areas containing at least one mesh reversal), in order to minimize the prediction error between the two images corresponding to the times t, and ^ considered.
Cette nouvelle estimation, mise en œuvre à partir de l'image approchée, permet de déterminer les vecteurs de mouvement optimaux pour la zone continue de l'image (c'est-à-dire admettant une bijection entre t,et tj) et d'éviter ainsi que les valeurs des vecteurs de mouvement obtenus au cours de l'estimation de mouvement ne soient perturbées par l'existence de zones de discontinuités.This new estimation, implemented from the approximate image, makes it possible to determine the optimal motion vectors for the continuous zone of the image (that is to say admitting a bijection between t, and t j ) and thus to avoid that the values of the motion vectors obtained during the motion estimation are disturbed by the existence of zones of discontinuities.
Selon une caractéristique avantageuse de l'invention, ladite région englobante est un k-disque de ladite zone d'occlusion où k≥l.According to an advantageous characteristic of the invention, said encompassing region is a k-disc of said occlusion zone where k≥l.
On rappelle la définition d'un k-disque de la zone d'occlusion : le 1 -disque d'une zone d'occlusion est la zone d'occlusion elle-même ; pour tout k>l, le k- disque d'une zone d'occlusion correspond à une région qui contient la zone d'occlusion et dont la frontière se situe à une distance maximale de k-1 arêtes de la limite de la zone d'occlusion considérée.
De façon préférentielle, ladite étape de construction consiste à appliquer lesdits vecteurs de mouvement avant (respectivement arrière), pondérés par un scalaire inférieur à 1, à ladite image précédente (respectivement suivante) approchée. En effet, l'étape d'estimation de mouvement avant et/ou arrière permet de déterminer l'ensemble des vecteurs de mouvement permettant de passer de l'image précédente à l'image suivante. Selon la position temporelle de l'image intermédiaire que l'on souhaite construire entre les images précédente et suivante, on pondère ces vecteurs avec un scalaire compris entre 0 et 1. Selon une première variante avantageuse de l'invention, un tel procédé comprend une étape de reconstruction d'un maillage associé à ladite image intermédiaire, consistant, pour chaque zone d'occlusion, à mettre en œuvre une étape de détermination d'informations colorimétriques et/ou photométriques associées à une partie dudit maillage correspondant à ladite région englobante, de manière à obtenir ladite image interpolée.We recall the definition of a k-disk of the occlusion zone: the 1-disk of an occlusion zone is the occlusion zone itself; for all k> l, the k- disk of an occlusion zone corresponds to a region which contains the occlusion zone and whose border is located at a maximum distance of k-1 edges from the limit of the zone d occlusion considered. Preferably, said construction step consists in applying said front (respectively rear) motion vectors, weighted by a scalar less than 1, to said approximate preceding (respectively following) image. Indeed, the forward and / or backward motion estimation step makes it possible to determine the set of motion vectors making it possible to move from the previous image to the next image. Depending on the temporal position of the intermediate image that one wishes to construct between the preceding and following images, these vectors are weighted with a scalar of between 0 and 1. According to a first advantageous variant of the invention, such a method comprises a step of reconstructing a mesh associated with said intermediate image, consisting, for each occlusion zone, of implementing a step of determining colorimetric and / or photometric information associated with a part of said mesh corresponding to said encompassing region, so as to obtain said interpolated image.
On reconstruit ainsi une image interpolée à partir de l'image intermédiaire obtenue précédemment, en déterminant des informations de luminance et/ou de chrominance associées à la région englobante.An interpolated image is thus reconstructed from the intermediate image obtained previously, by determining luminance and / or chrominance information associated with the encompassing region.
Une telle étape de détermination peut être mise en œuvre selon l'approche proposée dans le document de brevet FR-98 12525 ayant pour titre « procédé de codage d'images fixes ou animées avec réduction et adaptation du débit ».Such a determination step can be implemented according to the approach proposed in patent document FR-98 12525 having for title "coding process of still or moving images with reduction and adaptation of the bit rate".
Ce document de brevet a pour objet un procédé de codage d'une image numérique, visant à produire un train binaire représentatif de cette image, la longueur du train binaire étant fonction de la représentation voulue. Ce procédé comprend les étapes suivantes : définir, sur un domaine de l'image à coder, un maillage hiérarchique comportant une pluralité de maillages emboîtés dont les sommets de mailles peuvent être des pixels de ladite image ; réaliser les optimisations de luminance, chrominance, et positions sur chaque niveau de maillage ;
déterminer, pour chaque maille dudit maillage hiérarchique, un écart de luminance entre l'image à coder et une image interpolée obtenue à partir des sommets du maillage emboîté auquel appartient la maille considérée, et - introduire dans le train binaire les valeurs (avantageusement codées en différentiel par rapport au niveau hiérarchique précédent) de positions, de luminance et de chrominance des sommets des mailles dont l'écart de luminance est supérieur à un écart seuil.The object of this patent document is a method of coding a digital image, aiming to produce a bit stream representative of this image, the length of the bit train being a function of the desired representation. This method comprises the following steps: defining, on a domain of the image to be coded, a hierarchical mesh comprising a plurality of nested meshes whose mesh vertices can be pixels of said image; perform optimizations of luminance, chrominance, and positions on each mesh level; determine, for each mesh of said hierarchical mesh, a luminance difference between the image to be coded and an interpolated image obtained from the vertices of the nested mesh to which the mesh considered belongs, and - introduce the values (advantageously coded in differential compared to the preceding hierarchical level) of positions, luminance and chrominance of the vertices of the meshes whose luminance difference is greater than a threshold difference.
Selon cette technique, on construit au terme de l'étape de maillage, une structure en arbre quaternaire, associée au maillage hiérarchique, pour manipuler les valeurs (couleurs et positions) des sommets des mailles. L'arbre présente un nombre de nœuds égal au nombre de triangles dans le niveau de maillage triangulaire correspondant. Chaque nœud de l'arbre se rapporte à un unique triangle du maillage hiérarchique. Une fois cet arbre construit, on sélectionne les données de l'arbre à introduire dans le train binaire représentatif de l'image qui sera transmise et/ou stockée. Cette sélection dépend de la qualité voulue.According to this technique, at the end of the meshing step, a quaternary tree structure, associated with the hierarchical mesh, is constructed to manipulate the values (colors and positions) of the vertices of the meshes. The tree presents a number of nodes equal to the number of triangles in the level of corresponding triangular mesh. Each node of the tree relates to a single triangle of the hierarchical mesh. Once this tree has been constructed, the data of the tree to be introduced into the bit stream representative of the image which will be transmitted and / or stored is selected. This selection depends on the desired quality.
Pour réaliser cette sélection, on calcule, pour chaque triangle, un écart de luminance entre l'image à coder et l'image interpolée à partir des sommets du maillage emboîté auquel appartient la maille considérée. Cet écart est ensuite comparé à un écart seuil pour chaque triangle. La valeur de l'écart seuil est fonction de la qualité de représentation voulue.To make this selection, a luminance difference between the image to be coded and the interpolated image is calculated for each triangle from the vertices of the nested mesh to which the mesh in question belongs. This difference is then compared to a threshold difference for each triangle. The value of the threshold deviation depends on the quality of representation desired.
On introduit ensuite dans le train binaire la partie de l'arbre se rapportant aux triangles dont l'écart de luminance est supérieur à l'écart seuil, qui permet donc de transmettre les données relatives à l'image en fonction de la qualité locale de ces différentes partitions triangulaires.The part of the tree relating to the triangles whose luminance difference is greater than the threshold difference is then introduced into the binary train, which therefore makes it possible to transmit the data relating to the image as a function of the local quality of these different triangular partitions.
Avantageusement, ladite étape de détermination met en œuvre d'une part un modèle de codage par éléments finis, et d'autre part un modèle de codage alternatif.
En effet, lorsqu'on met en œuvre un codage hiérarchique, par exemple tel que décrit dans le document de brevet français FR 98 12525, et lorsqu'une portion de l'image est très texturée, il est alors nécessaire de prévoir un nombre de niveaux de maillage important pour obtenir des informations photométriques et/ou colorimétriques de qualité suffisante. Dans ce cas, le rendement du codage hiérarchique est faible. En d'autres termes, le codage hiérarchique est bien adapté aux images relativement lisses, mais non aux images présentant des parties fortement texturées.Advantageously, said determining step implements on the one hand a finite element coding model, and on the other hand an alternative coding model. Indeed, when implementing a hierarchical coding, for example as described in the French patent document FR 98 12525, and when a portion of the image is very textured, it is then necessary to provide a number of large mesh levels to obtain photometric and / or colorimetric information of sufficient quality. In this case, the efficiency of hierarchical coding is low. In other words, hierarchical coding is well suited for relatively smooth images, but not for images with highly textured parts.
On a donc envisagé une nouvelle approche, décrite par exemple dans le document de brevet français FR 99 06815 intitulé "Procédé de codage hiérarchique et mise en œuvre sélective d'un codage à base de transformation réversible, et procédé de décodage correspondant". Un tel procédé de codage d'une image à coder, comprend les étapes suivantes : définition d'un maillage hiérarchique présentant au moins deux niveaux de maillage emboîtés formés de mailles définies par des sommets (qui peuvent être des pixels de ladite image à coder) ; détermination, pour chacune desdites mailles, d'une information d'erreur entre ladite image à coder et une image interpolée obtenue à partir des sommets des mailles appartenant au niveau de maillage de la maille considérée ; arrêt du raffinement des mailles présentant une information d'erreur inférieure à un premier seuil prédéterminé ; mise en œuvre d'un codage spécifique pour les mailles présentant une information d'erreur supérieure à un second seuil prédéterminé ; - continuation du raffinement des mailles présentant une information d'erreur supérieure audit premier seuil prédéterminé et inférieure audit second seuil prédéterminé.A new approach has therefore been envisaged, described for example in French patent document FR 99 06815 entitled "Hierarchical coding method and selective implementation of a coding based on reversible transformation, and corresponding decoding method". Such a method of coding an image to be coded, comprises the following steps: definition of a hierarchical mesh having at least two levels of nested mesh formed of meshes defined by vertices (which may be pixels of said image to be coded) ; determination, for each of said meshes, of error information between said image to be coded and an interpolated image obtained from the vertices of the meshes belonging to the mesh level of the mesh considered; stopping the refinement of the meshes having error information lower than a first predetermined threshold; implementation of a specific coding for the meshes presenting an error information higher than a second predetermined threshold; - Continuation of the refinement of the meshes having error information greater than said first predetermined threshold and less than said second predetermined threshold.
Ainsi, selon ce procédé, qui s'avère particulièrement avantageux dans le cadre de l'invention, on utilise sélectivement deux modes de codage distincts. Le codage hiérarchique, ou à maillages emboîtés, est le codage principal, ou codage
de base, mais il n'est pas utilisé systématiquement : pour les portions d'image qui le nécessite (ici, pour les portions de la région englobante qui le nécessitent), un autre codage plus efficace est utilisé.Thus, according to this method, which proves to be particularly advantageous in the context of the invention, two distinct coding modes are selectively used. The hierarchical coding, or with nested meshes, is the main coding, or coding basic, but it is not used systematically: for the image portions which require it (here, for the portions of the surrounding region which require it), another more effective coding is used.
La décision d'utiliser ce codage spécifique est prise par comparaison à un seuil. Plus précisément, à chaque nœud considéré de l'arbre représentatif du maillage hiérarchique, trois possibilités sont offertes : arrêter le raffinement, ou la division, des mailles (la qualité atteinte pour la portion d'image ou de la région englobante correspondante étant suffisante), passer au niveau hiérarchique suivant, en conservant le même codage hiérarchique, ou utiliser un autre codage (en particulier un codage mieux adapté aux portions très texturées).The decision to use this specific coding is made by comparison with a threshold. More precisely, at each node considered in the tree representative of the hierarchical mesh, three possibilities are offered: stop the refinement, or the division, of the meshes (the quality reached for the portion of image or of the corresponding encompassing region being sufficient) , go to the next hierarchical level, keeping the same hierarchical coding, or use another coding (in particular a coding better suited to very textured portions).
On notera qu'il est envisageable d'utiliser plusieurs types différents de codages spécifiques (ou un même codage avec des paramètres différents), pour adapter plus précisément encore le choix du codage aux caractéristiques de la portion d'image ou de la portion de région englobante. Selon une deuxième variante avantageuse de l'invention, un tel procédé comprend une étape de reconstruction d'un maillage associé à ladite image intermédiaire, consistant, pour chaque zone d'occlusion, à insérer dans ledit maillage une partie d'un maillage associé à ladite image suivante ou à ladite image précédente correspondant à ladite région englobante, de manière à obtenir ladite image interpolée.It will be noted that it is possible to use several different types of specific coding (or the same coding with different parameters), to adapt the choice of coding even more precisely to the characteristics of the image portion or of the region portion. inclusive. According to a second advantageous variant of the invention, such a method comprises a step of reconstructing a mesh associated with said intermediate image, consisting, for each occlusion zone, in inserting into said mesh part of a mesh associated with said next image or said previous image corresponding to said encompassing region, so as to obtain said interpolated image.
On remplace donc, dans l'image intermédiaire, le contenu des zones d'occlusion par les zones correspondantes de l'image précédente ou suivante. L'image interpolée ainsi obtenue est alors constituée d'une partie obtenue par interpolation, et correspondant au déplacement du maillage associé à l'image précédente (respectivement suivante), et des zones d'occlusion contenant des informations de l'image suivante ou précédente.Therefore, in the intermediate image, the content of the occlusion zones is replaced by the corresponding zones of the previous or next image. The interpolated image thus obtained is then made up of a part obtained by interpolation, and corresponding to the displacement of the mesh associated with the previous image (respectively following), and occlusion zones containing information of the next or previous image. .
Selon une caractéristique avantageuse, un tel procédé comprend en outre, pour chaque zone d'occlusion, une étape d'estimation de mouvement locale entre ladite image interpolée et une image exacte correspondante, consistant à optimiser la position d'au moins un nœud d'une partie dudit maillage correspondant à ladite
région englobante dans ladite image interpolée, de manière à générer une première image interpolée améliorée.According to an advantageous characteristic, such a method further comprises, for each occlusion zone, a step of estimating local movement between said interpolated image and a corresponding exact image, consisting in optimizing the position of at least one node of part of said mesh corresponding to said encompassing region in said interpolated image, so as to generate an improved first interpolated image.
Au niveau du codage, un tel mouvement n'est pris en compte et codé que si l'estimation de mouvement détermine l'absence de zones de discontinuité, et notamment l'absence de retournements de mailles, entre l'image interpolée et l'image exacte correspondante.At the coding level, such a movement is taken into account and coded only if the motion estimation determines the absence of discontinuity zones, and in particular the absence of mesh reversals, between the interpolated image and the corresponding exact image.
Avantageusement, un tel procédé comprend en outre une étape de calcul d'une image d'erreur, de manière à évaluer une erreur entre ladite première image interpolée améliorée et ladite image exacte correspondante. Ainsi, l'estimation de mouvement entre l'image interpolée et l'image exacte correspondante ayant déterminé la présence de zones d'occlusion, on met en œuvre un calcul d'erreur.Advantageously, such a method further comprises a step of calculating an error image, so as to evaluate an error between said first improved interpolated image and said corresponding exact image. Thus, the motion estimation between the interpolated image and the corresponding exact image having determined the presence of occlusion zones, an error calculation is implemented.
Selon une technique avantageuse, ladite erreur étant supérieure à un seuil prédéterminé pour au moins une région de ladite image d'erreur, un tel procédé met en œuvre une étape de détermination d'informations colorimétriques et/ou photométriques associées à chacune desdites régions, de manière à générer une deuxième image interpolée améliorée.According to an advantageous technique, said error being greater than a predetermined threshold for at least one region of said error image, such a method implements a step of determining colorimetric and / or photometric information associated with each of said regions, so as to generate a second improved interpolated image.
Avantageusement, ladite étape de détermination met en œuvre, d'une part, un modèle de codage par éléments finis, et d'autre part, un modèle de codage alternatif.Advantageously, said determination step implements, on the one hand, a finite element coding model, and on the other hand, an alternative coding model.
Comme décrit précédemment, une telle étape de détermination peut être mise en œuvre selon la technique exposée dans le document de brevet français FRAs described above, such a determination step can be implemented according to the technique set out in the French patent document FR
99 06815 intitulé "Procédé de codage hiérarchique et mise en œuvre sélective d'un codage à base de transformation réversible, et procédé de décodage correspondant".99 06815 entitled "Hierarchical coding method and selective implementation of a coding based on reversible transformation, and corresponding decoding method".
Selon une caractéristique avantageuse de l'invention, ladite étape de détermination est mise en œuvre à partir de ladite image d'erreur ou de ladite image exacte correspondante, en fonction d'un critère de coût prédéterminé.According to an advantageous characteristic of the invention, said determining step is implemented on the basis of said error image or of said corresponding exact image, according to a predetermined cost criterion.
En effet, préalablement à la mise en œuvre de l'étape de détermination des informations colorimétriques et/ou photométriques, on évalue le coût d'une telle
étape à partir de l'image d'erreur d'une part, et à partir de l'image exacte correspondant à l'image interpolée d'autre part. On privilégie alors la solution la moins coûteuse.In fact, prior to the implementation of the step of determining colorimetric and / or photometric information, the cost of such a device is evaluated. step from the error image on the one hand, and from the exact image corresponding to the interpolated image on the other hand. We therefore favor the least expensive solution.
Préférentiellement, ledit maillage est de taille supérieure à ladite image qu'il représente.Preferably, said mesh is larger than said image it represents.
Une telle technique est par exemple décrite dans le document de brevet français n° FR 00 09273 du 13 juillet 2000, intitulé "Estimateur de mouvement pour le codage et le décodage de séquences d'images", au nom des mêmes déposants que la présente demande. Selon la technique exposée dans cette demande de brevet, l'utilisation d'un maillage de taille supérieure à l'image à laquelle il est associé permet la mise en œuvre d'une technique d'estimation et de compensation de mouvement pour le codage et le décodage de séquences d'images, permettant la gestion des découvrements et des tassements de mailles lors du déplacement d'objets. L'utilisation d'un maillage de taille supérieure à la taille de l'image permet, selon la présente invention, d'améliorer l'interpolation temporelle de trames au moment du décodage.Such a technique is for example described in the French patent document n ° FR 00 09273 of July 13, 2000, entitled "Motion estimator for the coding and decoding of image sequences", in the name of the same applicants as the present application . According to the technique set out in this patent application, the use of a mesh of size larger than the image with which it is associated allows the implementation of a technique of motion estimation and compensation for coding and the decoding of image sequences, allowing the management of discoveries and settlement of meshes when moving objects. The use of a mesh of size larger than the size of the image makes it possible, according to the present invention, to improve the temporal interpolation of frames at the time of decoding.
L'invention concerne encore un procédé de codage et un procédé de décodage d'une séquence animée, du type mettant en œuvre une étape d'interpolation d'au moins une image interpolée entre une image précédente et une image suivante.The invention also relates to a coding method and a method for decoding an animated sequence, of the type implementing a step of interpolating at least one image interpolated between a previous image and a following image.
Selon de tels procédés de codage et de décodage, ladite étape d'interpolation tient compte d'informations relatives à la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante, dites informations d'occlusion.According to such coding and decoding methods, said interpolation step takes account of information relating to the presence of at least one occlusion zone in said previous image and / or in said following image, called occlusion information. .
L'invention concerne également un terminal de visualisation d'une séquence animée d'images du type comprenant des moyens d'interpolation d'au moins une image interpolée entre une image précédente et une image suivante, lesdits moyens d'interpolation tenant compte de la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante.
L'invention concerne encore un signal vidéo et un support de données comprenant des informations permettant de reconstruire au moins une image interpolée entre une image précédente et une image suivante d'une séquence animée d'images, lesdites informations tenant compte de la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante.The invention also relates to a terminal for viewing an animated sequence of images of the type comprising means for interpolating at least one image interpolated between a previous image and a following image, said interpolation means taking account of the presence of at least one occlusion zone in said previous image and / or in said following image. The invention also relates to a video signal and a data medium comprising information making it possible to reconstruct at least one image interpolated between a previous image and a following image of an animated sequence of images, said information taking account of the presence of at least one occlusion zone in said previous image and / or in said following image.
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : la figure 1, décrite ci-dessus, présente un exemple de mise en œuvre d'un maillage hiérarchique triangulaire emboîté ; la figure 2 présente un synoptique de l'ensemble des étapes mises en œuvre selon l'invention pour construire une image interpolée entre une image précédente et une image suivante d'une séquence animée ; la figure 3 illustre plus en détails les étapes 11, 14 et 15, présentées en figure 2 ; la figure 4 illustre un exemple d'application de l'invention à l'interpolation temporelle de trames. Le principe général de l'invention repose sur la gestion des zones d'occlusion lors de la construction d'images interpolées au sein d'une séquence animée, en vue d'un codage bidirectionnel et/ou d'une interpolation temporelle de trames au décodage.Other characteristics and advantages of the invention will appear more clearly on reading the following description of a preferred embodiment, given by way of simple illustrative and nonlimiting example, and of the appended drawings, among which: FIG. 1 , described above, presents an example of implementation of a nested triangular hierarchical mesh; FIG. 2 presents a block diagram of all the steps implemented according to the invention for constructing an image interpolated between a previous image and a following image of an animated sequence; Figure 3 illustrates in more detail the steps 11, 14 and 15, presented in Figure 2; FIG. 4 illustrates an example of application of the invention to the temporal interpolation of frames. The general principle of the invention is based on the management of occlusion zones during the construction of interpolated images within an animated sequence, with a view to bidirectional coding and / or temporal interpolation of frames at decoding.
On présente, en relation avec la figure 2, un mode de réalisation de la construction d'une image interpolée entre une image précédente et une image suivante d'une séquence animée, sous la forme d'un synoptique présentant l'ensemble des étapes à mettre en œuvre, selon l'invention.We present, in relation to FIG. 2, an embodiment of the construction of an image interpolated between a previous image and a following image of an animated sequence, in the form of a block diagram presenting all the steps to implement according to the invention.
On considère deux images d'une séquence animée, appelées respectivement I, et I2, à deux instants t, et t^ successifs. On cherche à construire une image interpolée l' entre I, et I2, à un instant t' intermédiaire entre t, et t^.
Au cours d'une étape référencée 21, on réalise une estimation de mouvement avant à partir de l'image I , de manière à déterminer les vecteurs de mouvement à appliquer aux sommets du maillage (par exemple un maillage hiérarchique tel qu'illustré en figure 1) associé à Ix pour obtenir l'image I2. Une telle étape 21 peut bien sûr également consister à réaliser une estimation de mouvement arrière à partir de I2, mais, par souci de simplicité de lecture, on ne s'attachera à décrire qu'un exemple de mode de réalisation mettant en œuvre une étape d'estimation avant au cours de l'étape référencée 21.We consider two images of an animated sequence, called respectively I, and I 2 , at two instants t, and t ^ successive. We seek to construct an interpolated image l between I, and I 2 , at a time t 'intermediate between t, and t ^. During a step referenced 21, a forward motion estimate is made from image I, so as to determine the motion vectors to be applied to the vertices of the mesh (for example a hierarchical mesh as illustrated in FIG. 1) associated with I x to obtain the image I 2 . Such a step 21 can of course also consist in carrying out an estimate of backward movement from I 2 , but, for the sake of simplicity of reading, we will only endeavor to describe an example of embodiment implementing a estimation step before during the step referenced 21.
Une telle étape référencée 21 permet de détecter la présence d'éventuelles zones d'occlusion, correspondant ici à la disparition au moins partielle d'un ou plusieurs objets dans l'image I,. Elle permet également de déterminer le mouvement d à appliquer au maillage associé à I, pour obtenir I2.Such a step referenced 21 makes it possible to detect the presence of possible occlusion zones, corresponding here to the at least partial disappearance of one or more objects in the image I,. It also makes it possible to determine the movement d to be applied to the mesh associated with I, to obtain I 2 .
En l'absence de zones d'occlusion, on applique au maillage associé à I,, au cours d'une étape référencée 22, un déplacement d', défini de la manière suivante :In the absence of occlusion zones, a displacement of, defined as follows, is applied to the mesh associated with I ,, during a step referenced 22:
On pondère ainsi le déplacement d, à appliquer au maillage associé à lx pour obtenir I2, par un scalaire compris entre 0 et 1, et dont la valeur dépend de la position de l'image I' par rapport aux images I, et I2. Ainsi, si l'on souhaite obtenir une image interpolée proche de l'image I,, on pondère le déplacement d par un scalaire proche de 0. Si, en revanche, on souhaite obtenir une image inteφolée temporellement proche de I2, on pondère le déplacement d par un scalaire proche de l.We thus weight the displacement d, to be applied to the mesh associated with l x to obtain I 2 , by a scalar between 0 and 1, the value of which depends on the position of the image I 'with respect to the images I, and I 2 . Thus, if one wishes to obtain an interpolated image close to the image I ,, we weight the displacement d by a scalar close to 0. If, on the other hand, we wish to obtain a temporally inteφolated image close to I 2 , we weight the displacement d by a scalar close to l.
A l'issue de l'étape référencée 22, on obtient donc l'image interpolée I' souhaitée, au cours d'une étape référencée 23. Si, au cours de l'étape référencée 21, on détecte la présence d'au moins une zone d'occlusion, on exclut de I1; au cours d'une étape référencée 24, la ou les régions englobantes correspondant à la ou les zones d'occlusion détectées, de manière à éviter une erreur de l'estimation de mouvement qui serait introduite par la présence de cette ou de ces zones d'occlusion. On obtient ainsi une image Ij
approchée, correspondant à l'image I, de laquelle a été exclue au moins une zone d'occlusion.At the end of the step referenced 22, the desired interpolated image I ′ is therefore obtained, during a step referenced 23. If, during the step referenced 21, it detects the presence of at least an occlusion zone, I 1 is excluded ; during a step referenced 24, the encompassing region or regions corresponding to the occlusion zone (s) detected, so as to avoid an error in the motion estimation which would be introduced by the presence of this or these zones d 'occlusion. We thus obtain an image I j approximate, corresponding to image I, from which at least one occlusion zone has been excluded.
On met alors en œuvre une estimation de mouvement avant à partir de Ij approchée au cours d'une étape référencée 25, afin de déterminer les vecteurs de mouvement optimaux pour la zone continue de l'image (c'est-à-dire admettant une bijection entre ttet tj).We then implement a forward motion estimation from I j approximated during a step referenced 25, in order to determine the optimal motion vectors for the continuous area of the image (that is to say admitting a bijection between t t and tj).
Les étapes 21, 24 et 25 sont désormais décrites plus en détails en relation avec la figure 3.Steps 21, 24 and 25 are now described in more detail in relation to FIG. 3.
Au cours de l'étape référencée 21 d'estimation de mouvement avant à partir de l'image Il5 on détecte la présence d'une zone de retournement 31. Au cours de l'étape référencée 24, on exclut donc la zone de retournement 31 de l'image Il5 de manière à obtenir une image L, approchée. On réalise alors une estimation de mouvement avant 25 à partir de Ix approchée, de manière à obtenir les vecteurs de mouvement optimaux à appliquer aux sommets du maillage associé à I, approchée pour obtenir I2.During the step referenced 21 of forward motion estimation from the image I 15, the presence of a turning area 31 is detected. During the step referenced 24, the turning area is therefore excluded 31 to the image I l5 so as to obtain an image L, approximated. One then carries out an estimation of motion before 25 from approximate I x , so as to obtain the optimal motion vectors to be applied to the vertices of the mesh associated with I, approximated to obtain I 2 .
Au cours d'une étape référencée 26, on applique un déplacement d' au maillage associé à I, approchée, de manière à obtenir au cours d'une étape référencée 27 une image intermédiaire Iinteπnédiaire- Un tel déplacement d' est obtenu par pondération du déplacement optimal d, déterminé au cours de l'étape référencée 25, par un scalaire compris entre 0 et 1, selon une technique similaire à celle mise en œuvre au cours de l'étape référencée 22.During a step referenced 26, a displacement of is applied to the mesh associated with I, approximate, so as to obtain, during a step referenced 27, an intermediate image Ii nteπnéd i a i re - Such a displacement of is obtained by weighting the optimal displacement d, determined during the step referenced 25, by a scalar between 0 and 1, according to a technique similar to that implemented during the step referenced 22.
Dans le cas où l'invention s'applique à l'interpolation de fréquence trame, on met alors en œuvre une étape référencée 291, consistant à insérer dans Iintermédiaire la ou les zones de I2 ou de Ix correspondant à la ou aux régions englobantes exclues de I, au cours de l'étape référencée 24. On remplace ainsi le contenu des zones d'occlusion par les zones correspondantes de l'instant t^ ou de l'instant t,.In the case where the invention applies to frame frequency interpolation, a step referenced 291 is then implemented, consisting in inserting into Ii nterméd i area the area or areas of I 2 or I x corresponding to the or to the encompassing regions excluded from I, during the step referenced 24. The content of the occlusion zones is thus replaced by the corresponding zones of the instant t ^ or of the instant t ,.
On obtient ainsi, au cours d'une étape référencée 292, une image I' constituée, d'une part, d'une partie interpolée correspondant au déplacement d' du maillage associé à , et d'autre part de la ou des zones, correspondant à la ou aux zones d'occlusion, et contenant des informations de l'image I2 ou de l'image I,.
Dans le cas où l'invention s'applique au codage bidirectionnel, on peut envisager deux variantes au mode de réalisation permettant, à partir de Iintermédiaire d'obtenir l'image interpolée I'.One thus obtains, during a step referenced 292, an image I 'consisting, on the one hand, of an interpolated part corresponding to the displacement of the mesh associated with, and on the other hand of the zone or zones, corresponding to the occlusion zone (s), and containing information of the image I 2 or of the image I ,. In the case where the invention applies to bidirectional coding, one can envisage two variants of the embodiment allowing, from I interméd i a i re to obtain the interpolated image I '.
Une première variante de réalisation consiste, au cours d'une étape référencée 281, à déterminer des informations colorimétriques et/ou photométriques associées à la ou aux régions de Iintermédiaire correspondant à la ou aux régions englobantes exclues de I, au cours de l'étape référencée 24. On reconstruit ainsi l'intégralité du maillage associé à Ijntermédiaire> de façon à obtenir une image interpolée I' au cours d'une étape référencée 282. Une telle étape 281 peut par exemple être mise en œuvre selon la technique décrite dans le document de brevet FR-98 12525 ayant pour titre « procédé de codage d'images fixes ou animées avec réduction et adaptation du débit ».A first embodiment consists, during a step referenced 281, to determine color information and / or associated with the photometric or regions I Intermed i a i re corresponding to or encompassing regions excluded from I, during the step referenced 24. The entire mesh associated with Ij nterméd i a i re> is thus reconstructed so as to obtain an interpolated image I ′ during a step referenced 282. Such a step 281 can for example be implemented according to the technique described in patent document FR-98 12525 having for title "coding process for still or moving images with reduction and adaptation of the bit rate".
Une deuxième variante de réalisation consiste, au cours d'une étape référencée 291, à insérer dans Iintermédiaire la ou les zones de I2 ou de I, correspondant à la ou aux régions englobantes exclues de Ix au cours de l'étape référencée 24. On remplace ainsi le contenu des zones d'occlusion par les zones correspondantes de l'instant t^ ou de l'instant t,.A second embodiment consists, during a step referenced 291, for inclusion in Ii ntermédia ry the zone of I 2 or I, corresponding to or encompassing regions excluded from I x during the step referenced 24. The content of the occlusion zones is thus replaced by the corresponding zones of time t ^ or time t ,.
De manière générale, l'image I' est obtenue par insertion du contenu de l'image I2 lors de la mise en œuvre d'une estimation avant, et par insertion du contenu de l'image ï lors de la mise en œuvre d'une estimation de mouvement arrière, afin de permettre un recouvrement global de l'image interpolée V. Cependant, dans certains cas, on peut préférer construire l'image l' par insertion du contenu de l'image I2 (respectivement L lors de la mise en œuvre d'une estimation arrière (respectivement avant), par exemple pour obtenir une image l' de meilleure qualité et/ou conférer à la séquence vidéo une plus grande fluidité visuelle.In general, the image I 'is obtained by inserting the content of the image I 2 during the implementation of a prior estimate, and by inserting the content of the image ï during the implementation of an estimate of backward movement, in order to allow an overall recovery of the interpolated image V. However, in certain cases, it is possible to prefer to construct the image l 'by inserting the content of the image I 2 (respectively L when the implementation of a rear estimate (respectively before), for example to obtain a better quality image l 'and / or to give the video sequence greater visual fluidity.
On obtient ainsi, au cours d'une étape référencée 292, une image F constituée, d'une part, d'une partie interpolée correspondant au déplacement d' du maillage associé à Ix, et d'autre part de la ou des zones, correspondant à la ou aux zones d'occlusion, et contenant des informations de l'image I2 ou de l'image I,.
Afin d'obtenir une meilleure approximation de l'image I', on réalise alors une estimation de mouvement 293 entre I' et l'image interpolée exacte correspondante.One thus obtains, during a step referenced 292, an image F consisting, on the one hand, of an interpolated part corresponding to the displacement of the mesh associated with I x , and on the other hand of the zone or zones , corresponding to the occlusion zone (s), and containing information of the image I 2 or of the image I ,. In order to obtain a better approximation of the image I ', an estimation of motion 293 is then made between I' and the corresponding exact interpolated image.
On obtient ainsi, au cours d'une étape référencée 294, une première image interpolée améliorée I,'. Lors d'une étape référencée 295, on calcule alors une image d'erreur entre I,' améliorée et l'image interpolée exacte correspondante.There is thus obtained, during a step referenced 294, a first improved interpolated image I, '. During a step referenced 295, an error image between I, ′ improved and the corresponding exact interpolated image is then calculated.
Si l'erreur est faible (par exemple inférieure à un seuil d'erreur prédéterminé), l'image I est alors intercalée entre les images I, et I2 de la séquence animée, au cours d'une étape référencée 298. Dans le cas contraire, si l'erreur est supérieure à un seuil prédéterminé pour au moins certaines parties de l'image d'erreur, on met en œuvre une étape 296 de détermination d'informations colorimétriques et/ou photométriques associées à la ou aux zones de l'image sur lesquelles l'erreur est importante.If the error is small (for example less than a predetermined error threshold), the image I is then inserted between the images I, and I 2 of the animated sequence, during a step referenced 298. In the Otherwise, if the error is greater than a predetermined threshold for at least certain parts of the error image, a step 296 of determining colorimetric and / or photometric information associated with the zone (s) is implemented. the image on which the error is significant.
A nouveau, une telle étape 296 peut, par exemple, être mise en œuvre selon la technique décrite dans le document de brevet FR-98 12525 ayant pour titre « procédé de codage d'images fixes ou animées avec réduction et adaptation du débit ».Again, such a step 296 can, for example, be implemented according to the technique described in patent document FR-98 12525 having for title "coding process of still or moving images with reduction and adaptation of the bit rate".
On obtient alors, lors de l'étape référencée 297, une deuxième image interpolée améliorée I2' à intercaler entre les images lx et I2 de la séquence d'images.There is then obtained, during the step referenced 297, a second improved interpolated image I 2 'to be inserted between the images l x and I 2 of the sequence of images.
Au niveau du codage, les informations nécessaires au codeur correspondent alors aux vecteurs de mouvement d*, correspondant à l'estimation de mouvement entre I' et l'image exacte correspondante, et les informations de chrominance et de luminance associées à la correction locale d'erreur, si nécessaires.At the coding level, the information required by the coder then corresponds to the motion vectors d * , corresponding to the motion estimation between I 'and the corresponding exact image, and the chrominance and luminance information associated with the local correction d 'error, if necessary.
L'image interpolée I', I'j améliorée ou I'2 améliorée obtenue à l'issue de l'une des étapes référencées 23, 282, 294 ou 297 peut ensuite être intercalée entre deux images successives d'une séquence animée, ainsi qu'illustré en figure 4.The interpolated image I ', I' j improved or I ' 2 improved obtained at the end of one of the steps referenced 23, 282, 294 or 297 can then be interposed between two successive images of an animated sequence, thus as illustrated in figure 4.
Ainsi, au décodage de la séquence 40 par exemple, le décodeur construit une image interpolée 43, éventuellement à partir d'informations transmises par le
codeur, qu'il insère entre deux images référencées 41 et 42, afin d'accroître la fluidité visuelle de la séquence 40.
Thus, on decoding the sequence 40 for example, the decoder constructs an interpolated image 43, possibly from information transmitted by the coder, which he inserts between two images referenced 41 and 42, in order to increase the visual fluidity of the sequence 40.
Claims
1. Procédé de construction d'au moins une image interpolée entre une image précédente et une image suivante d'une séquence animée, caractérisé en ce qu'il comprend au moins une étape d'estimation de mouvement tenant compte d'informations relatives à la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante, dites informations d'occlusion.1. A method of constructing at least one image interpolated between a previous image and a following image of an animated sequence, characterized in that it comprises at least one step of motion estimation taking account of information relating to the presence of at least one occlusion zone in said previous image and / or in said following image, say occlusion information.
2. Procédé de construction selon la revendication 1, caractérisé en ce qu'une image de ladite séquence est associée à un maillage. 2. Construction method according to claim 1, characterized in that an image of said sequence is associated with a mesh.
3. Procédé de construction selon la revendication 2, caractérisé en ce que ledit maillage est un maillage hiérarchique présentant au moins deux niveaux de maillage emboîtés au sein d'une pyramide de maillage.3. Construction method according to claim 2, characterized in that said mesh is a hierarchical mesh having at least two levels of mesh nested within a pyramid of mesh.
4. Procédé de construction selon l'une quelconque des revendications 1 à 3, caractérisé en ce que lesdites informations d'occlusion sont déterminées par la mise en œuvre de ladite étape d'estimation de mouvement, ladite étape d'estimation de mouvement étant une étape d'estimation de mouvement avant et/ou arrière entre lesdites images précédente et suivante.4. Construction method according to any one of claims 1 to 3, characterized in that said occlusion information is determined by the implementation of said motion estimation step, said motion estimation step being a forward and / or backward motion estimation step between said previous and next images.
5. Procédé de construction selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'en présence d'au moins une zone d'occlusion dans ladite image précédente (respectivement dans ladite image suivante), il met en œuvre les étapes suivantes : pour chaque zone d'occlusion, une étape d'exclusion, dans ladite image précédente (respectivement dans ladite image suivante), d'une région dudit maillage englobant au moins une maille correspondant à ladite zone d'occlusion, dite région englobante, de manière à obtenir une image précédente approchée (respectivement une image suivante approchée) ; une étape d'estimation avant (respectivement arrière), de manière à déterminer des vecteurs de mouvement permettant d'obtenir une image suivante5. Construction method according to any one of claims 1 to 4, characterized in that in the presence of at least one occlusion zone in said previous image (respectively in said following image), it implements the steps following: for each occlusion zone, a step of exclusion, in said previous image (respectively in said following image), of a region of said mesh including at least one mesh corresponding to said occlusion zone, called encompassing region, so as to obtain an approximate previous image (respectively an approximate following image); a front (respectively rear) estimation step, so as to determine motion vectors making it possible to obtain a following image
(respectivement précédente) approchée à partir de ladite image précédente (respectivement suivante) approchée, appelés vecteurs de mouvement avant(respectively previous) approximated from said previous image (respectively following) approximated, called forward motion vectors
(respectivement arrière) ; une étape de construction d'une image intermédiaire à partir de ladite image précédente (respectivement suivante) approchée et desdits vecteurs de mouvement avant (respectivement arrière).(respectively rear); a step of constructing an intermediate image from said approximate previous (respectively following) image and said front (respectively rear) motion vectors.
6. Procédé de construction selon la revendication 5, caractérisé en ce que ladite région englobante est un k-disque de ladite zone d'occlusion où k≥l.6. Construction method according to claim 5, characterized in that said encompassing region is a k-disc of said occlusion zone where k≥l.
7. Procédé de construction selon l'une quelconque des revendications 5 et 6, caractérisé en ce que ladite étape de construction consiste à appliquer lesdits vecteurs de mouvement avant (respectivement arrière), pondérés par un scalaire inférieur à 1, à ladite image précédente (respectivement suivante) approchée. 7. Construction method according to any one of claims 5 and 6, characterized in that said construction step consists in applying said front (respectively rear) motion vectors, weighted by a scalar less than 1, to said previous image ( respectively next) approached.
8. Procédé de construction selon l'une quelconque des revendications 5 à 7, caractérisé en ce qu'il comprend une étape de reconstruction d'un maillage associé à ladite image intermédiaire, consistant, pour chaque zone d'occlusion, à mettre en œuvre une étape de détermination d'informations colorimétriques et/ou photométriques associées à une partie dudit maillage correspondant à ladite région englobante, de manière à obtenir ladite image interpolée.8. Construction method according to any one of claims 5 to 7, characterized in that it comprises a step of reconstruction of a mesh associated with said intermediate image, consisting, for each occlusion zone, to be implemented a step of determining colorimetric and / or photometric information associated with a part of said mesh corresponding to said encompassing region, so as to obtain said interpolated image.
9. Procédé de construction selon la revendication 8, caractérisé en ce que ladite étape de détermination met en œuvre d'une part un modèle de codage par éléments finis, et d'autre part un modèle de codage alternatif.9. Construction method according to claim 8, characterized in that said determining step implements on the one hand a finite element coding model, and on the other hand an alternative coding model.
10. Procédé de construction selon l'une quelconque des revendications 5 à 7, caractérisé en ce qu'il comprend une étape de reconstruction d'un maillage associé à ladite image intermédiaire, consistant, pour chaque zone d'occlusion, à insérer dans ledit maillage une partie d'un maillage associé à ladite image suivante ou à ladite image précédente correspondant à ladite région englobante, de manière à obtenir ladite image interpolée. 10. Construction method according to any one of claims 5 to 7, characterized in that it comprises a step of reconstruction of a mesh associated with said intermediate image, consisting, for each occlusion zone, to be inserted in said mesh part of a mesh associated with said next image or with said previous image corresponding to said encompassing region, so as to obtain said interpolated image.
11. Procédé de construction selon la revendication 10, caractérisé en ce qu'il comprend en outre, pour chaque zone d'occlusion, une étape d'estimation de mouvement locale entre ladite image interpolée et une image exacte correspondante, consistant à optimiser la position d'au moins un nœud d'une partie dudit maillage correspondant à ladite région englobante dans ladite image inteφolée, de manière à générer une première image interpolée améliorée. 11. Construction method according to claim 10, characterized in that it further comprises, for each occlusion zone, a step of estimating local movement between said interpolated image and a corresponding exact image, consisting in optimizing the position at least one node of a part of said mesh corresponding to said encompassing region in said inteφolated image, so as to generate a first improved interpolated image.
12. Procédé de construction selon la revendication 11, caractérisé en ce qu'il comprend en outre une étape de calcul d'une image d'erreur, de manière à évaluer une erreur entre ladite première image inteφolée améliorée et ladite image exacte correspondante. 12. The construction method according to claim 11, characterized in that it further comprises a step of calculating an error image, so as to evaluate an error between said first improved integrated image and said corresponding exact image.
13. Procédé de construction selon la revendication 12, caractérisé en ce que, ladite erreur étant supérieure à un seuil prédéterminé pour au moins une région de ladite image d'erreur, il met en œuvre une étape de détermination d'informations colorimétriques et/ou photométriques associées à chacune desdites régions, de manière à générer une deuxième image inteφolée améliorée. 13. Construction method according to claim 12, characterized in that, said error being greater than a predetermined threshold for at least one region of said error image, it implements a step of determining colorimetric information and / or photometric associated with each of said regions, so as to generate a second improved integrated image.
14. Procédé de construction selon la revendication 13, caractérisé en ce que ladite étape de détermination met en œuvre, d'une part, un modèle de codage par éléments finis, et d'autre part, un modèle de codage alternatif.14. Construction method according to claim 13, characterized in that said determining step implements, on the one hand, a finite element coding model, and on the other hand, an alternative coding model.
15. Procédé de construction selon l'une quelconque des revendications 13 et 14, caractérisé en ce que ladite étape de détermination est mise en œuvre à partir de ladite image d'erreur ou de ladite image exacte correspondante, en fonction d'un critère de coût prédéterminé.15. Construction method according to any one of claims 13 and 14, characterized in that said determining step is implemented from said error image or from said corresponding exact image, according to a criterion of predetermined cost.
16. Procédé de construction selon l'une quelconque des revendications 2 à 15, caractérisé en ce que ledit maillage est de taille supérieure à ladite image qu'il représente. 16. Construction method according to any one of claims 2 to 15, characterized in that said mesh is larger than said image it represents.
17. Procédé de codage d'une séquence animée, du type mettant en œuvre une étape d'interpolation d'au moins une image interpolée entre une image précédente et une image suivante, caractérisé en ce que ladite étape d'interpolation comprend une sous-étape d'estimation de mouvement tenant compte d'informations relatives à la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante, dites informations d'occlusion.17. A method of coding an animated sequence, of the type implementing an interpolation step of at least one image interpolated between a previous image and a following image, characterized in that said interpolation step comprises a sub- motion estimation step taking account of information relating to the presence of at least one occlusion zone in said previous image and / or in said following image, called occlusion information.
18. Procédé de décodage d'une séquence animée, du type mettant en œuvre une étape d'interpolation d'au moins une image interpolée entre une image précédente et une image suivante, caractérisé en ce que ladite étape d'interpolation comprend une sous-étape d'estimation de mouvement tenant compte d'informations relatives à la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante, dites informations d'occlusion.18. A method of decoding an animated sequence, of the type implementing an interpolation step of at least one image interpolated between a previous image and a next image, characterized in that said interpolation step comprises a sub- motion estimation step taking into account information relating to the presence at least one occlusion zone in said previous image and / or in said following image, say occlusion information.
19. Terminal de visualisation d'une séquence animée d'images du type comprenant des moyens d'inteφolation d'au moins une image inteφolée entre une image précédente et une image suivante, caractérisé en ce que lesdits moyens d'interpolation comprennent des moyens d'estimation de mouvement tenant compte de la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante.19. Display terminal for an animated sequence of images of the type comprising means for integrating at least one image inteφolated between a previous image and a following image, characterized in that said interpolation means comprise means d motion estimation taking into account the presence of at least one occlusion zone in said previous image and / or in said following image.
20. Signal vidéo comprenant des informations permettant de reconstruire au moins une image interpolée entre une image précédente et une image suivante d'une séquence animée d'images, caractérisé en ce que lesdites informations tiennent compte de la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante. 20. Video signal comprising information making it possible to reconstruct at least one image interpolated between a previous image and a following image of an animated sequence of images, characterized in that said information takes account of the presence of at least one zone d occlusion in said previous image and / or in said following image.
21. Maillage comprenant des informations permettant de reconstruire au moins une image interpolée entre une image précédente et une image suivante d'une séquence animée d'images enregistré sur un support utilisable dans un ordinateur, caractérisé en ce que lesdites informations tiennent compte de la présence d'au moins une zone d'occlusion dans ladite image précédente et/ou dans ladite image suivante. 21. Mesh comprising information making it possible to reconstruct at least one image interpolated between a previous image and a following image of an animated sequence of images recorded on a medium usable in a computer, characterized in that said information takes account of the presence at least one occlusion zone in said previous image and / or in said following image.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0010917 | 2000-08-24 | ||
FR0010917A FR2813485B1 (en) | 2000-08-24 | 2000-08-24 | METHOD FOR CONSTRUCTING AT LEAST ONE IMAGE INTERPOLED BETWEEN TWO IMAGES OF AN ANIMATED SEQUENCE, CORRESPONDING CODING AND DECODING METHODS, SIGNAL AND DATA MEDIUM |
PCT/FR2001/002570 WO2002017645A1 (en) | 2000-08-24 | 2001-08-07 | Method for calculating an image interpolated between two images of a video sequence |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1312221A1 true EP1312221A1 (en) | 2003-05-21 |
Family
ID=8853719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP01963072A Withdrawn EP1312221A1 (en) | 2000-08-24 | 2001-08-07 | Method for calculating an image interpolated between two images of a video sequence |
Country Status (5)
Country | Link |
---|---|
US (1) | US7342963B2 (en) |
EP (1) | EP1312221A1 (en) |
JP (1) | JP4922536B2 (en) |
FR (1) | FR2813485B1 (en) |
WO (1) | WO2002017645A1 (en) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2811791B1 (en) * | 2000-07-13 | 2002-11-22 | France Telecom | MOTION ESTIMATOR FOR CODING AND DECODING IMAGE SEQUENCES |
FR2820255A1 (en) * | 2001-01-26 | 2002-08-02 | France Telecom | METHODS FOR ENCODING AND DECODING IMAGES, DEVICES, SYSTEMS, SIGNALS AND APPLICATIONS THEREOF |
AU2002351131A1 (en) * | 2001-12-20 | 2003-07-09 | Koninklijke Philips Electronics N.V. | Adjustment of motion vectors in digital image processing systems |
US7095786B1 (en) * | 2003-01-11 | 2006-08-22 | Neo Magic Corp. | Object tracking using adaptive block-size matching along object boundary and frame-skipping when object motion is low |
US8264544B1 (en) * | 2006-11-03 | 2012-09-11 | Keystream Corporation | Automated content insertion into video scene |
US20090174812A1 (en) * | 2007-07-06 | 2009-07-09 | Texas Instruments Incorporated | Motion-compressed temporal interpolation |
US8405770B2 (en) | 2009-03-12 | 2013-03-26 | Intellectual Ventures Fund 83 Llc | Display of video with motion |
US8724022B2 (en) * | 2009-11-09 | 2014-05-13 | Intel Corporation | Frame rate conversion using motion estimation and compensation |
EP2384001A1 (en) * | 2010-04-29 | 2011-11-02 | Alcatel Lucent | Providing of encoded video applications in a network environment |
JP5661359B2 (en) | 2010-07-16 | 2015-01-28 | キヤノン株式会社 | Image processing apparatus, image processing method, and program |
KR101908388B1 (en) | 2012-07-19 | 2018-10-17 | 삼성전자 주식회사 | Occlusion reconstruction apparatus and method, and occlusion reconstructing video decoding apparatus |
US10776688B2 (en) | 2017-11-06 | 2020-09-15 | Nvidia Corporation | Multi-frame video interpolation using optical flow |
US11665365B2 (en) * | 2018-09-14 | 2023-05-30 | Google Llc | Motion prediction coding with coframe motion vectors |
CN113067959B (en) * | 2021-03-16 | 2022-05-03 | 合肥合芯微电子科技有限公司 | Image interpolation method, device and storage medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998059497A1 (en) * | 1997-06-23 | 1998-12-30 | Microsoft Corporation | Method for generating sprites for object-based coding systems using masks and rounding average |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4383272A (en) * | 1981-04-13 | 1983-05-10 | Bell Telephone Laboratories, Incorporated | Video signal interpolation using motion estimation |
EP0424026B1 (en) * | 1989-10-14 | 1997-07-23 | Sony Corporation | Video signal transmitting system and method |
JP3200196B2 (en) * | 1992-10-15 | 2001-08-20 | 株式会社リコー | Motion vector detection method |
GB2279531B (en) * | 1993-06-24 | 1997-07-16 | Sony Uk Ltd | Motion compensated image interpolation |
US6252974B1 (en) * | 1995-03-22 | 2001-06-26 | Idt International Digital Technologies Deutschland Gmbh | Method and apparatus for depth modelling and providing depth information of moving objects |
US6023301A (en) * | 1995-07-14 | 2000-02-08 | Sharp Kabushiki Kaisha | Video coding device and video decoding device |
JPH09214899A (en) * | 1996-01-31 | 1997-08-15 | Nippon Hoso Kyokai <Nhk> | Image prediction processing method an its device |
US6057884A (en) * | 1997-06-05 | 2000-05-02 | General Instrument Corporation | Temporal and spatial scaleable coding for video object planes |
US6606095B1 (en) * | 1998-06-08 | 2003-08-12 | Microsoft Corporation | Compression of animated geometry using basis decomposition |
FR2784211B1 (en) * | 1998-10-02 | 2000-12-15 | France Telecom | METHOD FOR CODING STILL OR MOVED IMAGES WITH REDUCTION AND ADJUSTMENT OF THROUGHPUT |
-
2000
- 2000-08-24 FR FR0010917A patent/FR2813485B1/en not_active Expired - Fee Related
-
2001
- 2001-08-07 EP EP01963072A patent/EP1312221A1/en not_active Withdrawn
- 2001-08-07 US US10/362,046 patent/US7342963B2/en not_active Expired - Fee Related
- 2001-08-07 WO PCT/FR2001/002570 patent/WO2002017645A1/en active Application Filing
- 2001-08-07 JP JP2002522207A patent/JP4922536B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998059497A1 (en) * | 1997-06-23 | 1998-12-30 | Microsoft Corporation | Method for generating sprites for object-based coding systems using masks and rounding average |
Also Published As
Publication number | Publication date |
---|---|
WO2002017645A1 (en) | 2002-02-28 |
JP4922536B2 (en) | 2012-04-25 |
JP2004507943A (en) | 2004-03-11 |
US7342963B2 (en) | 2008-03-11 |
FR2813485A1 (en) | 2002-03-01 |
FR2813485B1 (en) | 2003-12-26 |
US20040037471A1 (en) | 2004-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1299859A1 (en) | Motion estimator for coding and decoding image sequences | |
EP0675652B1 (en) | Method and circuit for estimating motion between images of two interlaced fields, and digital signal coding devices comprising such a circuit | |
FR2852773A1 (en) | Video image sequence coding method, involves applying wavelet coding on different images obtained by comparison between moving image and estimated image corresponding to moving image | |
EP1312221A1 (en) | Method for calculating an image interpolated between two images of a video sequence | |
WO2002060184A1 (en) | Image coding and decoding method, corresponding devices and applications | |
EP0418952B1 (en) | Coding device for bidimensional informations, and decoding device therefor | |
FR2684258A1 (en) | METHOD FOR ESTIMATING AND CODING HIERARCHISE OF THE MOTION OF IMAGE SEQUENCES. | |
EP0347325B1 (en) | Method and installation for broadcasting compatible high-definition programmes | |
EP1413140B1 (en) | Method for estimating the motion between two images with management of mesh overturning, and corresponding coding method | |
WO2006030103A1 (en) | Method for estimating motion using deformable meshes | |
EP1591962B1 (en) | Method and device for generating candidate vectors for image interpolation systems using motion estimation and compensation | |
FR2891686A1 (en) | Gradual video sequence transition detecting method for video coder/decoder, involves calculating criteria indicating if one distance is greater than another distance and making decision on image belongingness to transition based on criteria | |
EP0722251B1 (en) | Method for interpolating images | |
FR2825855A1 (en) | Image storage and transmission method uses hierarchical mesh system for decomposition and reconstruction of source image | |
EP1702473B1 (en) | Method for coding an image sequence | |
WO2010070247A1 (en) | Video coding based on global movement compensation | |
EP1241894A1 (en) | Method of coding digital images based on error concealment | |
EP1654882A2 (en) | Method of representing a sequence of pictures using 3d models, and corresponding devices and signal | |
EP1110409B1 (en) | Method for estimating motion between two images | |
EP0771115A1 (en) | Method and apparatus for region based motion estimation between images and moving image coding apparatus using segmented images therefor | |
FR2820256A1 (en) | Image coding and decoding method, e.g. for digital transmission over communications network, selectively using two coding modes, each optimizing the compression of an image as a function of different optimization criteria | |
FR3124301A1 (en) | Method for constructing a depth image of a multi-view video, method for decoding a data stream representative of a multi-view video, encoding method, devices, system, terminal equipment, signal and programs for corresponding computer. | |
EP3542533A1 (en) | Method and device for coding and decoding a multi-view sequence | |
FR2921775A1 (en) | Error correcting method for image data i.e. movement vector, on non-secured network, involves mapping available zone to image zone according to residue associated to missing zone of image data, and correcting missing zone of image data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20030219 |
|
AK | Designated contracting states |
Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE |
|
17Q | First examination report despatched |
Effective date: 20040220 |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ORANGE |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20170301 |