EP1354482A1 - Image coding and decoding method, corresponding devices and applications - Google Patents

Image coding and decoding method, corresponding devices and applications

Info

Publication number
EP1354482A1
EP1354482A1 EP02701323A EP02701323A EP1354482A1 EP 1354482 A1 EP1354482 A1 EP 1354482A1 EP 02701323 A EP02701323 A EP 02701323A EP 02701323 A EP02701323 A EP 02701323A EP 1354482 A1 EP1354482 A1 EP 1354482A1
Authority
EP
European Patent Office
Prior art keywords
coding
image
coded
coding method
mesh
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
Application number
EP02701323A
Other languages
German (de)
French (fr)
Inventor
Henri Sanson
Nathalie Laurent-Chatenet
Alexandre Résidence "Ondine" BUISSON
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Publication of EP1354482A1 publication Critical patent/EP1354482A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/553Motion estimation dealing with occlusions

Definitions

  • the technical field of the invention is that of bit rate reduction coding of moving image sequences, particularly video.
  • Video coding applications are particularly numerous.
  • IP Internet Protocol
  • mobile (“IP Streaming”
  • Computer storage of videos
  • the invention is particularly applicable in the context of systems implementing an MPEG type coding.
  • MPEG type coding is understood a coding based on a temporal prediction and a discrete cosine transformation based on a rigid block structure, often of fixed size, but possibly of variable size.
  • the 2 representative standards for this coding family are the MPEG-4 standards from version 1 to 4 and ITU-T / H.263 up to version 2.
  • the invention can also be applied in the context of the recommendation CCITT H26L (see for example the corresponding document VCEG-N83dl).
  • MPEG-4 encoding is considered to be the state of the art not only of standardized encodings, but also of all published encodings.
  • MPEG-4 or ITU-T / H.263 ++ encodings are considered to have reached their limits, in particular because of the rigid block structure of fixed size used to support all the calculations and coding operations. In particular, the temporal prediction of images within a sequence is insufficiently exploited.
  • coders In order to obtain coded video sequences at low bit rate, coders generally reduce the size of the images and time sub-sample the original video sequence.
  • the second technique has the drawback of restoring jerky movements which are more or less annoying for the user depending on the level of subsampling.
  • an objective of the invention is precisely to overcome the limitations of the prior techniques. More specifically, an objective of the invention is to provide a technique for coding, and decoding, image data, which makes it possible to obtain a reduced bit rate and / or a better quality of reconstructed image, compared with the techniques. known.
  • This objective is achieved, according to the invention, using an image coding method, selectively implementing at least two image coding modes, each optimizing the compression of at least one image. a video sequence based on different optimization criteria.
  • information on the choice of one of said coding modes can be known to a decoder according to at least one of the techniques belonging to the group comprising: predefined choice, known during coding and decoding; information representative of the choice included in a data stream comprising at least some of the coded image data; - information representative of the choice included in a data stream independent of the coded image data; determination of the choice intrinsically, by the decoder.
  • the method comprises a step of selecting a coding mode to be applied to said image, among at least: - a first coding optimizing a photometric representation of an image; a second coding optimizing a representation of the movement between at least two images.
  • the present invention relates to a new video coding method by hybridization of a coding in particular of the MPEG type and of a coding by temporal interpolation based on a representation by meshes, as well as the decoding method and the structure of the binary representation. associated.
  • said second coding takes account of at least one previous image and / or at least one following image coded using said first coding.
  • said second coding takes account of a motion vector field calculated from the immediately preceding image coded using said first coding and / or a motion vector field calculated from the image immediately following coded using said first coding.
  • these vector fields are applied to a mesh.
  • said motion vector fields can be used to determine a deduced motion vector field, associated with an image coded using said second coding.
  • said selection step is based on the implementation of a subsampling of fixed factor N, an image on N being coded using said first coding.
  • this value N is variable, as a function of at least one predetermined criterion.
  • said first coding implements a transformation on blocks of images and a temporal prediction by blocks.
  • This transformation is for example of the DCT type, Hadamard transformation, wavelet transformation, ...
  • This first coding can in particular be an MPEG-4 or H26L coding.
  • type I (intra) and / or type P (predictive) images are preferably used (and not, preferably, type B images).
  • said second coding advantageously rests on the implementation of a hierarchical mesh of M levels
  • M being greater than or equal to 1, and for example a triangular mesh.
  • the method preferably comprises a step for managing the occlusion zones.
  • the data produced can be gathered in a single flow.
  • Said data flows advantageously belong to the group comprising: a global header; - image data coded according to said first coding; image data coded according to said second coding.
  • the transmission of flows can therefore take place independently. This allows in particular a progressive and / or partial decoding of the images, according to the means and the needs.
  • the mesh-based approach avoids the usual block effects thanks to the use of continuous motion fields.
  • the mesh technique makes it possible to detect occultations of “objects”, as well as an error coding well suited to these areas.
  • MPEG type error coding By further combining an MPEG type error coding around these zones, it is possible to significantly improve the efficiency of the interpolation at a cost much lower than the bidirectional images (type B images) proposed by MPEG.
  • the invention also relates, of course, to: the methods of decoding an image signal coded using the coding method described above; - the devices for coding an image signal coded using the coding method described above; the devices for decoding an image signal coded using the coding method described above (advantageously comprising means for determining at least part of a vector field and / or at least part of the occlusion zones, similar to those used during coding); devices for storing at least one image signal coded using the coding method described above; systems for coding, transmitting and / or decoding an image signal coded using the coding method described above (the choice of one of said coding modes can advantageously be known to a decoder according to at least one of the techniques belonging to the group comprising: predefined choice, known for coding and decoding; - information representative of the choice included in a data stream comprising at least some of the coded image data; information representative of the choice included in a data stream independent of the coded image data; - determination of the choice intrinsically, by
  • this signal comprises at least one indicator indicating whether or not the process is activated.
  • the signal comprises data specifying the structure of the frames, at the start of the video sequence and / or in each signal frame.
  • a sequence coded using said second coding begins with a header specifying the number of frames coded according to this second coding.
  • the signal comprises at least two data streams, which can be transmitted over independent transmission channels.
  • said data streams advantageously belong to the group comprising: a global header; - image data coded according to said first coding; image data coded according to said second coding.
  • the invention finds applications in numerous fields, and in particular in the fields belonging to the group comprising: digital television; - real-time video on network D? ; network real-time video to mobiles; storage of image data.
  • Figure 1 is a block diagram of the coding of the invention
  • FIG. 2 presents an example of a hierarchical mesh structure for the movement
  • FIG. 3 illustrates the principle of the affine interpolation on a triangular mesh
  • Figure 4 is an example of occultation detected by overlapping of triangles
  • FIG. 5 illustrates the process of transformation of any triangle of the image into a symmetrical square matrix
  • FIG. 6 illustrates the transformation of any triangle into a right isosceles triangle
  • FIG. 7 illustrates a hierarchical mesh and the representation by associated quaternary tree
  • - Figure 8 is an example of coding decision for the hierarchical mesh
  • FIG. 9 shows an overall structure of a binary train according to the invention
  • FIG. 10 presents a block diagram of a decoder according to the invention.
  • the embodiment of the invention described below essentially consists in the hybridization of an MPEG type coding, for example MPEG-4 with a mesh coding operating in interpolated mode, also called B mode or B images in the MPEG standards.
  • MPEG-4 coding mentioned here can be replaced by any coder based on equivalent techniques, i.e. using a temporal prediction and a discrete cosine transformation based on a block structure, and the quantifications and codings entropy for the information generated.
  • ITU-T / H.263 ++ coding can be substituted for MPEG-4 coding.
  • the latter decides according to a certain decision process (for example, a temporal subsampling of a fixed factor) to code it with the MPEG-4 encoding module, or well with the mesh-based encoding module.
  • a certain decision process for example, a temporal subsampling of a fixed factor
  • the coded images in mesh mode use as references for their temporal prediction the coded images in MPEG-4 mode located immediately before or immediately after the group of coded images in mesh mode to which they belong.
  • the key point of the compression efficiency of the invention is that the mesh-based motion compensation leads to a very powerful time prediction, for a very low associated coding cost.
  • Figure 1 gives a general view of the principle of the coder.
  • the incoming images are routed either to the MPEG encoding module, or to the mesh-based encoding module, according to a given decision mode, for example according to a predefined rhythm: 1 image on N is coded in MPEG, the others in interpolated mesh mode.
  • N k the numbers of the images coded in MPEG mode.
  • All the other images I RheinN k ⁇ l ⁇ N k + 1 are encoded by an encoder based on a mesh, for example triangular, operating in interpolated mode called mode B.
  • the general principle of this encoder is as follows:
  • motion compensation can be performed according to three approaches: with a forward estimate, with a back estimate or with a front estimate and a back estimate.
  • 1) with an estimation before: • During the interpolation, the motion between I ⁇ and I t 2 is estimated. If the application of the motion vectors does not lead to any reversal (which corresponds to the predictable areas) then we perform motion compensation by weighting the vectors with a scalar k m / (tl + t2) (0 ⁇ k ⁇ l) so as to interpolate Im with m belonging to [tl, t2].
  • the estimated image E2 is obtained. 3) the two together:
  • Fields of forward and backward motion between the images N k and N k + 1 are calculated, in the form of hierarchical meshes, for example triangular, T b k and T f k + 1 , as indicated in FIG. 2.
  • Such meshes are obtained by dividing certain meshes, for example, the triangular meshes are divided into 4 sub-triangles, according to a certain criterion during the process of estimation of the movement. At each level of the hierarchy, the decisions of division or not are taken for each mesh. Once these divisions have been decided, the adjacent meshes of the divided meshes are then divided so as to maintain a conforming mesh structure.
  • the initial mesh, before division (top of the hierarchy), can be arbitrary.
  • the motion estimator decides to divide triangles 3 and 8. this results in the division of triangles 2, 4, 7 and 9. the process is iterated up to a predefined level of hierarchy.
  • • - ⁇ er (e) ⁇ denotes the set of its three nodes or vertices, numbered i, j, k with positions p ⁇ , p and p k ,
  • Such a model defines an everywhere continuous field. In addition, it allows fine control of the representation accuracy, an essential characteristic for compression.
  • the nodal motion vectors are calculated so as to minimize a prediction error.
  • Different mesh-based motion estimators can be used, for example the one described in patent FR No. 98 11227, or FR No. 99 15568.
  • the important point is that the final mesh results from a hierarchical process starting from an initial mesh by divisions.
  • This hierarchical character is in fact used for the differential coding of the nodal motion vectors between a node and its parent nodes (the ends of the arc on which it has been inserted).
  • the structure of the mesh is recalculated at the decoder on the basis of the knowledge of the initial mesh, and of the mesh division indicators.
  • the occultation zones that is to say not predictable in the image N k from the image N k +! or vice versa, due to the recovery or the discovery of objects, are detected.
  • the figure illustrates the occultation detection based on the overlapping of triangles after displacement.
  • the coder can continue the motion estimation by deactivating the triangles of the occultation zones, so as to obtain less biased displacement vectors.
  • the reference image for a possible prediction is selected from I Nk , I N (k + 1) , but also I c Uberwhich is the image obtained at time 1 by motion compensation with the mesh T b k or T f k + 1 at a level where there is not yet an overlap of mesh. More precisely, the choice between I Nk and I N (k + 1) simply depends on the mesh T b k or T f k + 1 having generated the current occultation zone. Then, this mesh is used to predict the image and give I e,. The choice between I ° ⁇ and I Nk or + ⁇ se ⁇ based on prediction error criteria: the image giving the lowest error is retained. Thus, it suffices to insert 1 bit in the bit stream, per zone, to code the choice of the prediction retained.
  • a motion estimate is then made between 1, (the image to be coded) and Ii (the result of the prediction of mode 1) on the occultation area.
  • the residual prediction error is coded according to a procedure defined below. Mode 3; No prediction is made and the original values of the pixels of the area are coded.
  • the texture is then approximated on each mesh according to a choice: -
  • the meshes rich in high frequencies are coded based on transform in discrete cosine, known as DCT -
  • DCT discrete cosine
  • the smoother meshes are coded by a model of finite elements, affine .
  • the approach adopted makes it possible to conserve the low coding cost associated with a regular hierarchy of meshes while allowing local adaptation to the content of the images made possible by the irregular decomposition of meshes.
  • the meshes are subdivided into 4 triangular sub-meshes up to a given level.
  • an optional permutation of the diagonals of the quadrilaterals generated by 2 adjacent triangles can be implemented, if this induces a reduction in the approximation error.
  • the nodes of the triangular mesh carry the photometric information (color, error) and the interpolation for the points inside the triangle is carried out by a finite element of Lagrange, also called affine interpolation.
  • v (J3) can be one of the photometric components Y, U or N of the point, or even the prediction error for these components.
  • Figure 4 describes the different stages of the process: selection of the triangle T, affine transformation of this into a right isosceles triangle T '. Due to the affine transformation, the pixels of the triangle are no longer located on a regular orthogonal grid, and the photometric values of the interior of the reference triangle should be resampled. For this, we use a process analogous to that of motion compensation in the image (in this case the affine transformation), using an interpolator, for example bilinear.
  • the affine transformation F and its inverse F 1 are defined by the following equations:
  • the photometric values M (i, j) an triangle T '(therefore of block M, symmetrized of T') are obtained by inverse transformation F "1 then interpolation F of the texture of the image to be coded: where the coefficient M (i ⁇ , j x ) is the value at point Q (X, Y) whose transform P (x, y) is F ⁇ Q)
  • I v denotes the interpolator used to calculate the value of the image at the point, with potentially non-integer coordinates.
  • the reconstruction f of the texture F is given by: or /. denotes the interpolated texture from the values of block M ', quantified version of M.
  • a scale factor ⁇ is introduced for the calculation of block M; (of size N, XN ( ) for each triangle i: or :
  • a nested hierarchical mesh is defined on the area to be coded, by creating a regular initial mesh then iterative sub-di vision of the triangles into 4 sub-triangles by insertion of new nodes in the middle of the arcs.
  • the values with the nodes are calculated to minimize the error of approximation of the zone by the mesh; ⁇ the pixel values are approximated by an affine interpolation on the triangle containing them from its values at the nodes.
  • the different information is coded as follows.
  • the YUN nodal values are first predicted from the values of the parent nodes (ends of the arc where the current node is inserted) .
  • the difference between the value of the node and its predicted value is then quantified.
  • the structure of the quaternary tree (including the indicators of division or not of the triangles), the indicators of permutation of diagonals, the nodal differential values of YUN and the quantized DCT coefficients are coded by an arithmetic coder and inserted in the train binary.
  • Each group of frames encoded in mesh mode between ⁇ k +1 and N k + 1 -1 (where N k N k + 1 are respectively the previous frame and the next frame encoded in MPEG mode) is represented as a whole in the stream binary.
  • the information conveyed includes, in coded form:
  • a header for the entire group of frames including among other things the actual number of encoded frames.
  • the global bit stream consists of a succession of frames encoded in MPEG mode, and groups of frames encoded in mesh mode, as shown in Figure 8.
  • the global header of the bit stream representative of the coded sequence contains inter alia the indication of hybrid coding.
  • the part of the bit stream corresponding to a group of frames coded in mesh mode begins with a header indicating inter alia the number of frames actually coded, possibly zero.
  • the different data streams (bit streams) corresponding respectively to the global header of the coded sequence, to the MPEG encoded images and to the groups of i images encoded in interpolated mesh mode can be sent on different independent channels if necessary.
  • the coding method allows hierarchical (or scalable) decoding of the sequence, that is to say a decoding using only part of the total bit rate.
  • Decoding process Figure 9 gives a general view of the principle of decoding.
  • the decoding of the header makes it possible to activate the hybrid decoding.
  • the decoder recognizes for each part of the bit stream corresponding to an autonomous entity whether it is an MPEG-4 encoded frame or a group of frames encoded by mesh.
  • the MPEG-4 frames are supplied to the MPEG-4 decoding module, and the groups of coded frames in mesh mode are supplied to the mesh decoding module.
  • the pixels outside the occultation zones are simply interpolated from the I Nk images and and fields of motion T b k and T f k + 1 .
  • the coarsest texture mesh top of the hierarchy is found for each occultation zone according to a process identical to that of the coder.
  • the information associated with the corresponding hierarchical mesh (triangle division indicator, affine interpolation or DCT coding decisions, differential nodal YUV value and quantized DCT coefficients) is then decoded and the YUy values of the pixels of these reconstructed areas.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

The invention concerns a method for coding images using selectively at least two image coding modes, each optimising compression of at least a video sequence image on the basis of different optimisation criteria.

Description

PROCEDE DE ET DE DECODAGE D ' IMAGES , DISPOSITIFS , ET APPLICATIONS CORRESPONDANTS METHOD AND DECODING OF IMAGES, DEVICES AND APPLICATIONS THEREOF
Le domaine technique de l'invention est celui du codage à réduction de débit des séquences d'images animées, vidéo notamment. Les applications du codage vidéo sont particulièrement nombreuses.The technical field of the invention is that of bit rate reduction coding of moving image sequences, particularly video. Video coding applications are particularly numerous.
Citons de manière non exclusive :Let us quote in a non-exclusive way:
- La transmission de la TV numérique ;- Transmission of digital TV;
- La transmission vidéo en temps réel sur différents types de réseaux : IP, mobiles, ("Streaming IP") ; - Le stockage informatique de vidéos.- Real time video transmission on different types of networks: IP, mobile, ("IP Streaming"); - Computer storage of videos.
L'invention s'applique notamment dans le cadre de systèmes mettant en œuvre un codage de type MPEG.Par codage de type MPEG, on entend un codage basé sur une prédiction temporelle et une transformation en cosinus discrète basée sur une structure de blocs rigides, souvent de taille fixe, mais éventuellement de taille variable. Les 2 standards représentatifs pour cette famille de codages sont les normes MPEG-4 de la version 1 à 4 et ITU-T/H.263 jusqu'à la version 2. L'invention peut également s'appliquer dans le cadre de la recommandation du CCITT H26L (voir par exemple le document VCEG-N83dl correspondant).The invention is particularly applicable in the context of systems implementing an MPEG type coding. By MPEG type coding is understood a coding based on a temporal prediction and a discrete cosine transformation based on a rigid block structure, often of fixed size, but possibly of variable size. The 2 representative standards for this coding family are the MPEG-4 standards from version 1 to 4 and ITU-T / H.263 up to version 2. The invention can also be applied in the context of the recommendation CCITT H26L (see for example the corresponding document VCEG-N83dl).
Les schémas de codage et décodage vidéo proposés à ce jour se répartissent en 2 catégories :The video coding and decoding schemes offered to date fall into 2 categories:
- Les codages normalisés, soit par l'ISO MPEG, soit par l'ITU-T, tous basés sur le même type de techniques (prédiction temporelle et une transformation en cosinus discrète basées sur une structure de blocs)- Standardized codings, either by ISO MPEG or by ITU-T, all based on the same type of techniques (temporal prediction and a discrete cosine transformation based on a block structure)
- Les codages en cours de développement proposés par des laboratoires de recherche, qui font appel à un large panel de techniques : Codage par Ondelettes, par Régions, par Fractales, par Maillages, etc. .. Actuellement, le codage MPEG-4 est considéré comme l'état de l'art non seulement des codages normalisés, mais aussi de l'ensemble des codages publiés. Les codages de type MPEG-4 ou ITU-T/H.263++ sont considérés comme ayant atteint leurs limites, notamment à cause de la structure de blocs rigides de taille fixe utilisée comme support de l'ensemble des calculs et opérations de codage. En particulier, la prédiction temporelle des images au sein d'une séquence est insuffisamment exploitée.- Codings under development proposed by research laboratories, which use a wide range of techniques: Coding by Wavelets, by Regions, by Fractals, by Meshes, etc. .. Currently, MPEG-4 encoding is considered to be the state of the art not only of standardized encodings, but also of all published encodings. MPEG-4 or ITU-T / H.263 ++ encodings are considered to have reached their limits, in particular because of the rigid block structure of fixed size used to support all the calculations and coding operations. In particular, the temporal prediction of images within a sequence is insufficiently exploited.
Par ailleurs, les codages alternatifs publiés n'ont pas encore atteint un degré suffisant d'optimisation.Furthermore, the published alternative codings have not yet reached a sufficient degree of optimization.
Ainsi, pour permettre d'obtenir des séquences vidéos codées à bas débit, les codeurs procèdent en général à une réduction de la taille des images et au sous- échantillonnage temporel de la séquence vidéo originale. Toutefois, la seconde technique a pour inconvénient de restituer des mouvements saccadés plus ou moins gênants pour l'utilisateur en fonction du niveau de sous-échantillonnage.Thus, in order to obtain coded video sequences at low bit rate, coders generally reduce the size of the images and time sub-sample the original video sequence. However, the second technique has the drawback of restoring jerky movements which are more or less annoying for the user depending on the level of subsampling.
Pour éviter de telles saccades, il importe de reconstruire les images manquantes (non codées) au décodeur par interpolation temporelle.To avoid such jerks, it is important to reconstruct the missing images (not coded) with the decoder by temporal interpolation.
Cependant, les techniques actuelles d'interpolation temporelle d'images ne permettent pas d'obtenir de résultats satisfaisants, surtout lorsqu'elles sont mises en œuvre au seul décodeur. En effet, ces techniques sont la source d'artefacts visuels liés aux techniques de compensation de mouvement basées blocs qui ne définissent qu'un seul vecteur mouvement pour l'ensemble des pixels d'un bloc.However, current techniques for temporal interpolation of images do not allow satisfactory results to be obtained, especially when they are implemented using the single decoder. Indeed, these techniques are the source of visual artifacts linked to block-based motion compensation techniques which define only one motion vector for all the pixels in a block.
L'objectif de l'invention est précisément de pallier les limitations des techniques antérieures. Plus précisément, un objectif de l'invention est de fournir une technique de codage, et de décodage, de données d'images, qui permette d'obtenir un débit réduit et/ou une meilleure qualité d'image reconstruite, par rapport aux techniques connues.The objective of the invention is precisely to overcome the limitations of the prior techniques. More specifically, an objective of the invention is to provide a technique for coding, and decoding, image data, which makes it possible to obtain a reduced bit rate and / or a better quality of reconstructed image, compared with the techniques. known.
Cet objectif est atteint, selon l'invention, à l'aide d'un procédé de codage d'images, mettant en œuvre sélectivement au moins deux modes de codage d'images, optimisant chacun la compression d'au moins une image d'une séquence vidéo en fonction de critères d'optimisation différents.This objective is achieved, according to the invention, using an image coding method, selectively implementing at least two image coding modes, each optimizing the compression of at least one image. a video sequence based on different optimization criteria.
Selon plusieurs modes de réalisation avantageux, une information sur le choix d'un desdits modes de codage peut être connue d'un décodeur selon au moins une des techniques appartenant au groupe comprenant : choix prédéfini, connu au codage et au décodage ; information représentative du choix incluse dans un flux de données comprenant au moins certaines des données d'images codées ; - information représentative du choix incluse dans un flux de données indépendant des données d'images codées ; détermination du choix de façon intrinsèque, par le décodeur. Avantageusement, le procédé comprend une étape de sélection d'un mode de codage à appliquer à ladite image, parmi au moins : - un premier codage optimisant une représentation photométrique d'une image ; un second codage optimisant une représentation du mouvement entre au moins deux images.According to several advantageous embodiments, information on the choice of one of said coding modes can be known to a decoder according to at least one of the techniques belonging to the group comprising: predefined choice, known during coding and decoding; information representative of the choice included in a data stream comprising at least some of the coded image data; - information representative of the choice included in a data stream independent of the coded image data; determination of the choice intrinsically, by the decoder. Advantageously, the method comprises a step of selecting a coding mode to be applied to said image, among at least: - a first coding optimizing a photometric representation of an image; a second coding optimizing a representation of the movement between at least two images.
Ainsi, la présente invention concerne un nouveau procédé de codage vidéo par hybridation d'un codage notamment de type MPEG et d'un codage par interpolation temporelle basée sur une représentation par maillages, ainsi que le procédé de décodage et la structure de la représentation binaire associée.Thus, the present invention relates to a new video coding method by hybridization of a coding in particular of the MPEG type and of a coding by temporal interpolation based on a representation by meshes, as well as the decoding method and the structure of the binary representation. associated.
Préférentiellement, ledit second codage tient compte d'au moins une image précédente et/ou au moins une image suivante codée à l'aide dudit premier codage.Preferably, said second coding takes account of at least one previous image and / or at least one following image coded using said first coding.
De façon avantageuse, ledit second codage tient compte d'un champ de vecteurs mouvement calculé à partir de l'image immédiatement précédente codée à l'aide dudit premier codage et/ou d'un champ de vecteurs mouvement calculé à partir de l'image immédiatement suivante codée à l'aide dudit premier codage. Avantageusement, ces champs de vecteurs sont appliqués à un maillage.Advantageously, said second coding takes account of a motion vector field calculated from the immediately preceding image coded using said first coding and / or a motion vector field calculated from the image immediately following coded using said first coding. Advantageously, these vector fields are applied to a mesh.
Dans ce cas, lesdits champs de vecteurs mouvement peuvent être utilisés pour déterminer un champ de vecteurs mouvement déduit, associé à une image codée à l'aide dudit second codage.In this case, said motion vector fields can be used to determine a deduced motion vector field, associated with an image coded using said second coding.
Selon un mode de réalisation préférentiel de l'invention, ladite étape de sélection repose sur la mise en œuvre d'un sous-échantillonnage de facteur fixé N, une image sur N étant codée à l'aide dudit premier codage.According to a preferred embodiment of the invention, said selection step is based on the implementation of a subsampling of fixed factor N, an image on N being coded using said first coding.
Avantageusement, cette valeur N est variable, en fonction d'au moins un critère prédéterminé.Advantageously, this value N is variable, as a function of at least one predetermined criterion.
Selon un mode de réalisation particulier, ledit premier codage met en œuvre une transformation sur des blocs d'images et une prédiction temporelle par blocs. Cette transformation est par exemple du type DCT, transformation de Hadamard, transformation en ondelettes,...According to a particular embodiment, said first coding implements a transformation on blocks of images and a temporal prediction by blocks. This transformation is for example of the DCT type, Hadamard transformation, wavelet transformation, ...
On notera que les blocs d'images ne sont pas forcément carrés, mais peuvent prendre toute forme adaptée aux besoins et aux moyens disponibles. Ce premier codage peut notamment être d'un codage MPEG-4 ou H26L.It should be noted that the blocks of images are not necessarily square, but can take any form suited to the needs and the means available. This first coding can in particular be an MPEG-4 or H26L coding.
Dans ce dernier cas, on utilisera préférentiellement des images de type I (intra) et/ou de type P (prédictif) (et non, préférentiellement, des images de type B).In the latter case, type I (intra) and / or type P (predictive) images are preferably used (and not, preferably, type B images).
Selon un autre aspect particulier de l'invention, ledit second codage repose avantageusement sur la mise en œuvre d'un maillage hiérarchique de M niveaux,According to another particular aspect of the invention, said second coding advantageously rests on the implementation of a hierarchical mesh of M levels,
M étant supérieur ou égal à 1, et par exemple un maillage triangulaire.M being greater than or equal to 1, and for example a triangular mesh.
Dans ce cas, le procédé comprend préférentiellement une étape de gestion des zones d'occlusions.In this case, the method preferably comprises a step for managing the occlusion zones.
Les données produites peuvent être regroupées dans un flux unique. Avantageusement, on peut prévoir au moins deux flux de données, pouvant être transmis sur des voies de transmission indépendantes.The data produced can be gathered in a single flow. Advantageously, it is possible to provide at least two data streams, which can be transmitted over independent transmission channels.
Lesdits flux de données appartiennent avantageusement au groupe comprenant : une entête globale ; - des données d'image codées selon ledit premier codage ; des données d'image codées selon ledit second codage. La transmission des flux peut donc avoir lieu de façon indépendante. Cela permet notamment un décodage progressif et/ou partiel des images, en fonction des moyens et des besoins. Ainsi, selon un mode de réalisation particulier de l'invention, on exploite notamment les aspects suivants :Said data flows advantageously belong to the group comprising: a global header; - image data coded according to said first coding; image data coded according to said second coding. The transmission of flows can therefore take place independently. This allows in particular a progressive and / or partial decoding of the images, according to the means and the needs. Thus, according to a particular embodiment of the invention, use is made of including the following aspects:
Optimisation poussée des modules constitutifs des codages normalisés de type MPEG ou ITU-T/H.263 Prédiction temporelle et codage d'erreur associé performants pour les techniques basées maillage.Advanced optimization of the constituent modules of standard codings of MPEG or ITU-T / H.263 type Temporal prediction and associated associated error coding for mesh-based techniques.
En effet, l'approche basée maillage permet d'éviter les effets de bloc habituels grâce à l'utilisation de champs de mouvement continus. De plus, la technique des maillages permet de détecter les occultations « d'objets », ainsi qu'un codage de l'erreur bien adapté à ces zones. En combinant de plus un codage d'erreur de type MPEG autour de ces zones, il est possible d'améliorer sensiblement l'efficacité de l'interpolation à un coût largement inférieur aux images bidirectionnelles (images de type B) proposées par MPEG.Indeed, the mesh-based approach avoids the usual block effects thanks to the use of continuous motion fields. In addition, the mesh technique makes it possible to detect occultations of “objects”, as well as an error coding well suited to these areas. By further combining an MPEG type error coding around these zones, it is possible to significantly improve the efficiency of the interpolation at a cost much lower than the bidirectional images (type B images) proposed by MPEG.
Ainsi, on peut coder efficacement l'information de base à une faible résolution temporelle grâce au codage de type MPEG, avec une bonne qualité, puis restituer la pleine fluidité de la séquence grâce au codage en mode interpolé par maillage.Thus, it is possible to effectively code the basic information at a low temporal resolution thanks to the coding of the MPEG type, with good quality, then to restore the full fluidity of the sequence thanks to the coding in interpolated mode by mesh.
L'invention concerne également, bien sûr : les procédés de décodage d'un signal d'images codé à l'aide du procédé de codage décrit ci-dessus ; - les dispositifs de codage d'un signal d'images codé à l'aide du procédé de codage décrit ci-dessus ; les dispositifs de décodage d'un signal d'images codé à l'aide du procédé de codage décrit ci-dessus (comprenant avantageusement des moyens de détermination d'au moins une partie d'un champ de vecteurs et/ou d'au moins une partie des zones d'occlusion, similaires à ceux mis en œuvre lors du codage) ; les dispositifs de stockage d'au moins un signal d'images codé à l'aide du procédé de codage décrit ci-dessus ; les systèmes de codage, de transmission et/ou de décodage d'un signal d'images codé à l'aide du procédé de codage décrit ci-dessus (le choix d'un desdits modes de codage pouvant avantageusement être connue d'un décodeur selon au moins une des techniques appartenant au groupe comprenant : choix prédéfini, connu au codage et au décodage ; - information représentative du choix incluse dans un flux de données comprenant au moins certaines des données d'images codées ; information représentative du choix incluse dans un flux de données indépendant des données d'imagés codées ; - détermination du choix de façon intrinsèque, par le décodeur) ; les produits programme d'ordinateur pour le codage et/ou le décodage d'un signal d'images codé à l'aide du procédé de codage ; les supports de données d'un tel programme. L'invention concerne également les signaux de données d'images comprenant des données codées selon le procédé décrit ci-dessus.The invention also relates, of course, to: the methods of decoding an image signal coded using the coding method described above; - the devices for coding an image signal coded using the coding method described above; the devices for decoding an image signal coded using the coding method described above (advantageously comprising means for determining at least part of a vector field and / or at least part of the occlusion zones, similar to those used during coding); devices for storing at least one image signal coded using the coding method described above; systems for coding, transmitting and / or decoding an image signal coded using the coding method described above (the choice of one of said coding modes can advantageously be known to a decoder according to at least one of the techniques belonging to the group comprising: predefined choice, known for coding and decoding; - information representative of the choice included in a data stream comprising at least some of the coded image data; information representative of the choice included in a data stream independent of the coded image data; - determination of the choice intrinsically, by the decoder); computer program products for encoding and / or decoding an image signal encoded using the encoding method; the data carriers of such a program. The invention also relates to the image data signals comprising data coded according to the method described above.
Avantageusement, ce signal comprend au moins un indicateur indiquant si le procédé est ou non activé.Advantageously, this signal comprises at least one indicator indicating whether or not the process is activated.
De façon préférentielle, le signal comprend une donnée précisant la structure des trames, en début de séquence vidéo et/ou dans chaque trame de signal.Preferably, the signal comprises data specifying the structure of the frames, at the start of the video sequence and / or in each signal frame.
Avantageusement, une séquence codée à l'aide dudit second codage débute par une entête précisant le nombre de trames codées selon ce second codage.Advantageously, a sequence coded using said second coding begins with a header specifying the number of frames coded according to this second coding.
Selon un mode de réalisation particulier, le signal comprend au moins deux flux de données, pouvant être transmis sur des voies de transmission indépendantes.According to a particular embodiment, the signal comprises at least two data streams, which can be transmitted over independent transmission channels.
Dans ce cas, lesdits flux de données appartiennent avantageusement au groupe comprenant : une entête globale ; - des données d'image codées selon ledit premier codage ; des données d'image codées selon ledit second codage. L'invention trouve des applications dans de nombreux domaines, et notamment dans les domaines appartenant au groupe comprenant : la télévision numérique ; - la vidéo temps réel sur réseau D? ; la vidéo temps réel sur réseau vers les mobiles ; le stockage de données d'images. D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description d'un mode de réalisation préférentiel de l'invention, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés parmi lesquels : la figure 1 est un schéma de principe du codage de l'invention ; la figure 2 présente un exemple de structure de maillage hiérarchique pour le mouvement ; la figure 3 illustre le principe de l'interpolation affine sur une maille triangulaire ; la figure 4 est un exemple d'occultation détectée par recouvrement de triangles ; la figure 5 illustre le processus de transformation d'un triangle quelconque de l'image en une matrice carrée symétrique ; la figure 6 illustre la transformation d'un triangle quelconque en un triangle isocèle rectangle ; la figure 7 illustre un maillage hiérarchique et la représentation par arbre quaternaire associée ; - la figure 8 est un exemple de décision de codage pour le maillage hiérarchique ; la figure 9 présente une structure globale d'un train binaire selon l'invention ; la figure 10 présente un diagramme bloc d'un décodeur selon l'invention. Le mode de réalisation de l'invention décrit ci-après consiste essentiellement en l'hybridation d'un codage de type MPEG, par exemple MPEG- 4 avec un codage par maillage fonctionnant en mode interpolé, appelé également mode B ou images B dans les normes MPEG. Notons que le codage MPEG-4 mentionné ici peut être remplacé par tout codeur basé sur des techniques équivalentes, c'est-à-dire utilisant une prédiction temporelle et une transformation en cosinus discrète basées sur une structure de blocs, et les quantifications et codages entropiques pour les informations générées. En particulier, un codage ITU-T/H.263++ peut être substitué au codage MPEG-4. Pour chaque image de la séquence entrant dans le codeur, ce dernier décide en fonction d'un certain processus de décision (par exemple, un sous- échantillonnage temporel de facteur fixé) de la coder avec le module d'encodage MPEG-4, ou bien avec le module d'encodage basé maillage.In this case, said data streams advantageously belong to the group comprising: a global header; - image data coded according to said first coding; image data coded according to said second coding. The invention finds applications in numerous fields, and in particular in the fields belonging to the group comprising: digital television; - real-time video on network D? ; network real-time video to mobiles; storage of image data. Other characteristics and advantages of the invention will appear more clearly on reading the description of a preferred embodiment of the invention, given by way of simple illustrative and nonlimiting example, and of the appended drawings among which: Figure 1 is a block diagram of the coding of the invention; FIG. 2 presents an example of a hierarchical mesh structure for the movement; FIG. 3 illustrates the principle of the affine interpolation on a triangular mesh; Figure 4 is an example of occultation detected by overlapping of triangles; FIG. 5 illustrates the process of transformation of any triangle of the image into a symmetrical square matrix; FIG. 6 illustrates the transformation of any triangle into a right isosceles triangle; FIG. 7 illustrates a hierarchical mesh and the representation by associated quaternary tree; - Figure 8 is an example of coding decision for the hierarchical mesh; FIG. 9 shows an overall structure of a binary train according to the invention; FIG. 10 presents a block diagram of a decoder according to the invention. The embodiment of the invention described below essentially consists in the hybridization of an MPEG type coding, for example MPEG-4 with a mesh coding operating in interpolated mode, also called B mode or B images in the MPEG standards. Note that the MPEG-4 coding mentioned here can be replaced by any coder based on equivalent techniques, i.e. using a temporal prediction and a discrete cosine transformation based on a block structure, and the quantifications and codings entropy for the information generated. In particular, ITU-T / H.263 ++ coding can be substituted for MPEG-4 coding. For each image of the sequence entering the coder, the latter decides according to a certain decision process (for example, a temporal subsampling of a fixed factor) to code it with the MPEG-4 encoding module, or well with the mesh-based encoding module.
Les images codées en mode maillage utilisent comme références pour leur prédiction temporelle les images codées en mode MPEG-4 située immédiatement avant ou immédiatement après le groupe d'images codées en mode maillage auquel elles appartiennent.The coded images in mesh mode use as references for their temporal prediction the coded images in MPEG-4 mode located immediately before or immediately after the group of coded images in mesh mode to which they belong.
Le point clé de l'efficacité en compression de l'invention est que la compensation de mouvement basée maillage conduit à une prédiction temporelle très performante, pour un coût de codage associée très faible.The key point of the compression efficiency of the invention is that the mesh-based motion compensation leads to a very powerful time prediction, for a very low associated coding cost.
En effet, cette technique :Indeed, this technique:
- Prend en compte différents types de mouvements dans les images- Takes into account different types of movements in the images
- Traite proprement les recouvrements et découvrements de zones dus aux mouvements d'objets. La figure 1 donne une vue générale du principe du codeur.- Treats cleanly the overlaps and discoveries of zones due to the movements of objects. Figure 1 gives a general view of the principle of the coder.
Tout d'abord, les images entrantes sont aiguillées soit vers le module d'encodage MPEG, soit vers le module d'encodage base maillage, selon un mode de décision donné, par exemple selon un rythme prédéfini : 1 image sur N est codée en MPEG, les autres en mode interpolé maillage. On note Nk les numéros des images codées en mode MPEG. Toutes les autres images I„ Nk<l<Nk+1, sont encodées par un encodeur basé sur un maillage, par exemple triangulaire, fonctionnant en mode interpolé dit mode B. le principe général de cet encodeur est le suivant :First of all, the incoming images are routed either to the MPEG encoding module, or to the mesh-based encoding module, according to a given decision mode, for example according to a predefined rhythm: 1 image on N is coded in MPEG, the others in interpolated mesh mode. We denote by N k the numbers of the images coded in MPEG mode. All the other images I „N k <l <N k + 1 , are encoded by an encoder based on a mesh, for example triangular, operating in interpolated mode called mode B. the general principle of this encoder is as follows:
1. Calcul des champs de mouvement avant et arrière entre les images Nk et Nk+1. Ces champs sont modélisés sous forme de maillages, triangulaires.1. Calculation of the front and rear motion fields between the images N k and N k + 1 . These fields are modeled in the form of triangular meshes.
2a. Estimation des zones prédictibles : lors de l'interpolation, on estime le mouvement entre It et If. Si l'application des vecteurs mouvements ne conduit à aucun retournement (ce qui signifie que l'on est en présence d'une zone prédictible), on réalise une compensation de mouvement en pondérant les vecteurs par un scalaire k (0 < k < 1) de manière à interpoler It+ avec t+k appartenant à ]t, t'[. Trois approches sont envisageables pour la compensation de mouvement. Elles sont décrites par la suite ; 2b. Estimation des zones non prédictibles :Détection des zones d'occultation, non prédictibles, dans les images II à coder, à partir de la connaissance de ces champs de mouvement 3. Codage spécifique de ces zones d'occultation selon l'un des trois modes possibles suivants : - Prédiction avec l'une des images de référence (Nk, Nk+1, ou ces images compensées en mouvement avec leurs champs de mouvement) sans compensation de mouvement, puis codage de l'erreur de prédiction avec une technique basée maillage triangulaire - Prédiction avec l'une des images de référence (Nk, Nk+1, ou ces images compensées en mouvement avec leurs champs de mouvement) avec compensation de mouvement intra- image, puis codage de l'erreur de prédiction avec une technique basée maillage triangulaire - Codage intra-image basé avec une technique basée maillage triangulaire. 4. Optionnellement, codage de type MPEG mode P de l'erreur résiduelle de prédiction ou de codage, limité à une zone autour de la zone d'occultation. Comme mentionné plus haut, la compensation de mouvement peut être effectuée selon trois approches : avec une estimation avant, avec une estimation arrière ou avec une estimation avant et une estimation arrière. 1) avec une estimation avant : • Lors de l'interpolation, on estime le mouvement entre Iα et It 2. Si l'application des vecteurs mouvement ne conduit à aucun retournement (ce qui correspond aux zones prédictibles) alors on réalise une compensation de mouvement en pondérant les vecteurs par un scalaire k = m/(tl+t2) (0<k<l) de manière à interpoler Im avec m appartenant à [tl, t2]. On obtient l'image estimée El. 2) avec une estimation arrière :2a. Estimation of predictable areas: during the interpolation, we estimate the movement between It and If. If the application of motion vectors does not lead to any reversal (which means that we are in the presence of a predictable area), we perform motion compensation by weighting the vectors with a scalar k (0 <k <1 ) so as to interpolate I t + with t + k belonging to] t, t '[. Three approaches are possible for motion compensation. They are described below; 2b. Estimation of non-predictable zones: Detection of occultation zones, non-predictable, in images II to be coded, based on knowledge of these motion fields 3. Specific coding of these occultation zones according to one of the three modes following possibilities: - Prediction with one of the reference images (N k , N k + 1 , or these motion compensated images with their motion fields) without motion compensation, then coding of the prediction error with a technique based on triangular mesh - Prediction with one of the reference images (N k , N k + 1 , or these motion compensated images with their motion fields) with intra-image motion compensation, then coding of the prediction error with a triangular mesh-based technique - Intra-image coding based with a mesh-based technique triangular. 4. Optionally, MPEG type P coding of the residual prediction or coding error, limited to an area around the occultation area. As mentioned above, motion compensation can be performed according to three approaches: with a forward estimate, with a back estimate or with a front estimate and a back estimate. 1) with an estimation before: • During the interpolation, the motion between I α and I t 2 is estimated. If the application of the motion vectors does not lead to any reversal (which corresponds to the predictable areas) then we perform motion compensation by weighting the vectors with a scalar k = m / (tl + t2) (0 <k <l) so as to interpolate Im with m belonging to [tl, t2]. We obtain the estimated image El. 2) with a rear estimate:
Lors de l'interpolation, on estime le mouvement entre It2 et In. Si l'application des vecteurs mouvements ne conduit à aucun ce qui correspond aux zones prédictibles) alors on réalise une compensation de mouvement en pondérant les vecteurs par un scalaire k' = l-m/(tl+t2) (o<=k'<=l) de manière à interpoler Im avec m appartenant à [tl, t2]. On obtient l'image estimée E2. 3) les deux ensemble :During the interpolation, the movement between I t2 and I n is estimated. If the application of the motion vectors does not lead to any which corresponds to the predictable zones) then a motion compensation is carried out by weighting the vectors by a scalar k '= lm / (tl + t2) (o <= k'<= l) so as to interpolate Im with m belonging to [tl, t2]. The estimated image E2 is obtained. 3) the two together:
Lors de l'interpolation, on estime le mouvement In et Iβ et entre lt2 et Itl. Si l'application des vecteurs mouvements ne conduit à aucun retournement (ce qui correspond aux zones prédictibles), alors on réalise une compensation de mouvement en pondérant les vecteurs "avant" par un scalaire k (0<=k<=l) et l'on obtient El. On fait de même avec les vecteurs "arrière" par un scalaire k' (0<=k'<=l) et on obtient E2. L'image estimée est alors E=aEl+(l-a) E2 avec 0<=a<=l. On prend à chaque fois moyennant 2 bits la meilleure des solutions après calcul du PSNR entre la solution estimée et l'image source associée.During the interpolation, the movement I n and I β is estimated and between l t2 and I tl . If the application of the motion vectors does not lead to any reversal (which corresponds to the predictable areas), then we perform motion compensation by weighting the vectors "before" by a scalar k (0 <= k <= l) and l 'we get El. We do the same with the "back" vectors by a scalar k' (0 <= k '<= l) and we get E2. The estimated image is then E = aEl + (la) E2 with 0 <= a <= l. We take each time with 2 bits the best solution after calculation of the PSNR between the estimated solution and the associated source image.
1. Calcul des champs de mouvement avant et arrière entre les images1. Calculation of the front and rear motion fields between the images
Nb β ^bt! N b β ^ bt!
Des champs de mouvement avant et arrière entre les images Nk et Nk+1 sont calculés, sous la forme de maillages hiérarchiques, par exemple triangulaires, Tb k et Tf k+1, comme indiqué figure 2.Fields of forward and backward motion between the images N k and N k + 1 are calculated, in the form of hierarchical meshes, for example triangular, T b k and T f k + 1 , as indicated in FIG. 2.
De tels maillages sont obtenus par division de certaines mailles, par exemple, les mailles triangulaires sont divisées en 4 sous-triangles, en fonction d'un certain critère au cours du processus d'estimation du mouvement. À chaque niveau de la hiérarchie, les décisions de division ou non sont prises pour chaque maille. Une fois ces divisions décidées, les mailles adjacentes des mailles divisées sont alors divisées de sorte à conserver une structure de maillage conforme. Le maillage initial, avant division (sommet de la hiérarchie), peut être quelconque.Such meshes are obtained by dividing certain meshes, for example, the triangular meshes are divided into 4 sub-triangles, according to a certain criterion during the process of estimation of the movement. At each level of the hierarchy, the decisions of division or not are taken for each mesh. Once these divisions have been decided, the adjacent meshes of the divided meshes are then divided so as to maintain a conforming mesh structure. The initial mesh, before division (top of the hierarchy), can be arbitrary.
Dans l'exemple de la figure 2, l'estimateur de mouvement décide de diviser les triangles 3 et 8. ceci entraîne la division des triangles 2, 4, 7 et 9. le processus est itéré jusqu'à un niveau prédéfini de hiérarchie.In the example in Figure 2, the motion estimator decides to divide triangles 3 and 8. this results in the division of triangles 2, 4, 7 and 9. the process is iterated up to a predefined level of hierarchy.
Dans le cas de maillages triangulaire, l'expression du champ de mouvement défini par un maillage triangulaire T est donné sur chaque triangle e par :In the case of triangular meshes, the expression of the field of motion defined by a triangular mesh T is given on each triangle e by:
où : or :
• e dénote l'élément triangulaire de T contenant le point courant de coordonnées x et y,• e denotes the triangular element of T containing the current point with coordinates x and y,
• -{ er(e)} dénote l'ensemble de ses trois nœuds ou sommets, numérotés i, j, k de positions pι , p et pk ,• - {er (e)} denotes the set of its three nodes or vertices, numbered i, j, k with positions p ι , p and p k ,
• Ψ7 (/ = i,j,k) représente les coordonnées barycentriques du point p(x,y) dans l'élément triangulaire e, J k avec :• Ψ 7 (/ = i, j, k) represents the barycentric coordinates of the point p (x, y) in the triangular element e , J k with:
Un tel modèle définit un champ partout continu. De plus, il permet un contrôle fin de la précision de représentation, caractéristique essentielle pour la compression. Such a model defines an everywhere continuous field. In addition, it allows fine control of the representation accuracy, an essential characteristic for compression.
À chaque niveau de la hiérarchie de maillages, les vecteurs nodaux de mouvement sont calculés de sorte à minimiser une erreur de prédiction. Différents estimateurs de mouvement basés maillages peuvent être utilisés, par exemple celui décrit dans le brevet FR n° 98 11227, ou FR n° 99 15568.At each level of the mesh hierarchy, the nodal motion vectors are calculated so as to minimize a prediction error. Different mesh-based motion estimators can be used, for example the one described in patent FR No. 98 11227, or FR No. 99 15568.
Le point important est que le maillage final résulte d'un processus hiérarchique à partir d'un maillage initial par divisions. Ce caractère hiérarchique est en effet mis à profit pour le codage différentiel des vecteurs nodaux de mouvement entre un nœud et ses nœuds parents (les extrémités de l'arc sur lequel il a été inséré). La structure du maillage est recalculée au décodeur à partir de la connaissance du maillage initial, et des indicateurs de division de mailles.The important point is that the final mesh results from a hierarchical process starting from an initial mesh by divisions. This hierarchical character is in fact used for the differential coding of the nodal motion vectors between a node and its parent nodes (the ends of the arc on which it has been inserted). The structure of the mesh is recalculated at the decoder on the basis of the knowledge of the initial mesh, and of the mesh division indicators.
Ainsi, en fin de processus, 2 maillages de mouvement sont obtenus pour chaque groupe d'images comprises entre les images Nk et Nk+J, utilisés pour reconstruire l'ensemble des images du groupe.Thus, at the end of the process, 2 motion meshes are obtained for each group of images comprised between the images N k and N k + J , used to reconstruct the set of images of the group.
2. Détection des zones d'occultation2. Detection of blackout areas
À partir de ces 2 maillages, les zones d'occultation, c'est-à-dire non prédictibles dans l'image Nk à partir de l'image Nk+! ou vice-versa, du fait du recouvrement ou du découvrement d'objets, sont détectées.From these 2 meshes, the occultation zones, that is to say not predictable in the image N k from the image N k +! or vice versa, due to the recovery or the discovery of objects, are detected.
Ces zones sont simplement définies par les triangles se recouvrant, une fois déplacés par leurs vecteurs nodaux.These zones are simply defined by the overlapping triangles, once displaced by their nodal vectors.
La figure illustre la détection d'occultation base sur le recouvrement de triangles après déplacement. Le codeur peut poursuivre l'estimation de mouvement en désactivant les triangles des zones d'occultation, de manière à obtenir des vecteurs déplacement moins biaises.The figure illustrates the occultation detection based on the overlapping of triangles after displacement. The coder can continue the motion estimation by deactivating the triangles of the occultation zones, so as to obtain less biased displacement vectors.
Ceci est cependant strictement interne à la stratégie du codeur, et au final, c'est 2 maillages de mouvement complets Tb k et Tf k+1 qui sont codés et insérés dans le train binaire. Le décodeur est alors capable de retrouver les zones d'occultation à partir de ces 2 maillages.This however is strictly internal to the strategy of the coder, and in the end, it is 2 complete motion meshes T b k and T f k + 1 which are coded and inserted in the binary train. The decoder is then able to find the occultation zones from these 2 meshes.
Ces zones d'occultation sont définies sur les images Nk et Nk+1 et une fois détectés, les triangles leur appartenant sont étiquetés en conséquence, au codeur comme au décodeur. Cependant, le codeur a besoin de connaître ces zones sur les images Nk+1 a Nk+1-1. Celles-ci sont simplement obtenues par projection des maillages Tb k et Tf k+ι sur l'image à coder, par application des vecteurs mouvement nodaux, renormalisés pour tenir compte de la distance temporelle entre l'image courante et l'image de référence Nk ou Nk+1. 3. Codage des zones d'occultation :These occultation zones are defined on the images N k and N k + 1 and once detected, the triangles belonging to them are labeled accordingly, both to the coder and to the decoder. However, the coder needs to know these areas on the images N k +1 to N k + 1 -1. These are simply obtained by projection of the meshes T b k and T f k + ι on the image to be coded, by application of the nodal motion vectors, renormalized to take account of the temporal distance between the current image and the image of reference N k or N k + 1 . 3. Coding of shading areas:
Pour chaque zone d'occultation, l'image de référence pour une éventuelle prédiction est sélectionnée parmi INk, IN(k+1), mais aussi Ic„ qui est l'image obtenue à l'instant 1 par compensation de mouvement avec le maillage Tb k ou Tf k+1 à un niveau où il n'y a pas encore de recouvrement de maille. Plus précisément, le choix entre INk et IN(k+1) dépend simplement du maillage Tb k ou Tf k+1 ayant engendré la zone courante d'occultation. Ensuite, ce maillage est utilisé pour prédire l'image et donner Ie,. Le choix entre I°ι et INk ou +υ se ^ sur critère d'erreur de prédiction : l'image donnant l'erreur la plus faible est retenue. Ainsi, il suffit d'insérer 1 bit dans le flux binaire, par zone, pour coder le choix de la prédiction retenue.For each occultation zone, the reference image for a possible prediction is selected from I Nk , I N (k + 1) , but also I c „which is the image obtained at time 1 by motion compensation with the mesh T b k or T f k + 1 at a level where there is not yet an overlap of mesh. More precisely, the choice between I Nk and I N (k + 1) simply depends on the mesh T b k or T f k + 1 having generated the current occultation zone. Then, this mesh is used to predict the image and give I e,. The choice between I ° ι and I Nk or + υ se ^ based on prediction error criteria: the image giving the lowest error is retained. Thus, it suffices to insert 1 bit in the bit stream, per zone, to code the choice of the prediction retained.
Notons Ir l'image de référence sélectionnée.Let us denote I r the selected reference image.
Le reste du codage de ces zones consiste en 2 étapes :The rest of the coding of these areas consists of 2 steps:
- Une étape de prédiction- A prediction step
- Une étape de codage de l'erreur de prédiction ou de la texture originale en cas de mauvaise prédiction- A step of coding the prediction error or the original texture in case of bad prediction
3.1 Prédiction résiduelle de la texture des zones d'occlusion 3 modes peuvent être utilisés, de manière exclusive. La décision est prise sur critère de moindre erreur. Mode 1: Les valeurs Y, U et V d'un pixel de la zone sont simplement celle du pixel de même localisation de l'image de référence L. Soit î, l'image résultante. On code alors l'erreur de prédiction entre î, et II. Mode 2:3.1 Residual prediction of the texture of the occlusion zones 3 modes can be used, exclusively. The decision is made based on the criterion of least error. Mode 1: The Y, U and V values of a pixel in the area are simply that of the pixel with the same location of the reference image L. Let î be the resulting image. We then code the prediction error between I, and II. Mode 2:
Une estimation de mouvement est alors réalisée entre 1, (l'image à coder) et Ii (le résultat de la prédiction du mode 1) sur la zone d'occultation. Le maillage résultant, issu du dernier niveau du maillage Tr, r=k ou k+1, avant les recouvrements de mailles, est alors codé ainsi que ses mouvements nodaux. Enfin, l'erreur résiduelle de prédiction est codée selon une procédure définie plus loin. Mode 3; On n'effectue aucune prédiction et on code les valeurs originales des pixels de la zone.A motion estimate is then made between 1, (the image to be coded) and Ii (the result of the prediction of mode 1) on the occultation area. The resulting mesh, resulting from the last level of the mesh T r , r = k or k + 1, before the overlaps of meshes, is then coded as well as its nodal movements. Finally, the residual prediction error is coded according to a procedure defined below. Mode 3; No prediction is made and the original values of the pixels of the area are coded.
4. Codage de la texture ou de l'erreur de prédiction sur les zones d'occultation.4. Coding of the texture or the prediction error on the occultation zones.
La texture originale et l'erreur de prédiction subissent le même codage, dont le principe est le suivant :The original texture and the prediction error undergo the same coding, the principle of which is as follows:
On suppose qu'un maillage triangulaire initial a pu être défini à partir du maillage de mouvement Tr retenu pour la prédiction de la zone à coder. La façon de dériver ce maillage initial sera décrit plus loin.It is assumed that an initial triangular mesh could have been defined from the motion mesh T r used for the prediction of the area to be coded. The way to derive this initial mesh will be described later.
La texture est alors approximée sur chaque maille en fonction d'un choix: - Les mailles riches en hautes fréquences sont codées à base de transformée en cosinus discrète, dite DCT - Les mailles plus lisses sont codées par un modèle d'éléments finis, affine. Là encore, on va tirer parti d'une approche hiérarchique pour diminuer le coût de codage de la représentation par maillage.The texture is then approximated on each mesh according to a choice: - The meshes rich in high frequencies are coded based on transform in discrete cosine, known as DCT - The smoother meshes are coded by a model of finite elements, affine . Again, we will take advantage of a hierarchical approach to reduce the cost of coding the representation by mesh.
L'approche retenue permet de conserver le faible coût de codage associé à une hiérarchie régulière de mailles tout en permettant l'adaptation locale au contenu des images permise par la décomposition irrégulière de mailles.The approach adopted makes it possible to conserve the low coding cost associated with a regular hierarchy of meshes while allowing local adaptation to the content of the images made possible by the irregular decomposition of meshes.
À partir du maillage initial grossier de la zone, les mailles sont subdivisées en 4 sous-mailles triangulaires jusqu'à un niveau donné. Sur le dernier niveau, une permutation optionnelle des diagonales des quadrilatères engendrés par 2 triangles adjacents peut être mise en œuvre, si cela induit une baisse de l'erreur d'approximation.From the initial coarse mesh of the zone, the meshes are subdivided into 4 triangular sub-meshes up to a given level. On the last level, an optional permutation of the diagonals of the quadrilaterals generated by 2 adjacent triangles can be implemented, if this induces a reduction in the approximation error.
4.1 Initialisation du maillage de texture sur les zones d'occultation Ce maillage est simplement donné par le dernier niveau de Tr (maillage résultant du déplacement de Tk ou Tk+1 selon le sens retenu) avant apparition des retournements sur la zone considérée. Ainsi, on a un maillage de texture qui s'insère de manière naturelle dans le maillage mouvement, puisque extrait de ce dernier. 4.2 Représentations utilisées pour la texture sur les triangles4.1 Initialization of the mesh of texture on the occultation zones This mesh is simply given by the last level of Tr (mesh resulting from the displacement of T k or T k + 1 according to the chosen direction) before appearance of the reversals on the zone considered. Thus, we have a texture mesh that fits naturally into the movement mesh, since extracted from the latter. 4.2 Representations used for the texture on the triangles
2 représentations sont combinées : l'interpolation affine et la DCT2 representations are combined: affine interpolation and DCT
4tri angulaire.Angular sorting.
Interpolation affineAffine interpolation
Les nœuds du maillage triangulaire portent l'information photométrique (couleur, erreur) et l'interpolation pour les points à l'intérieur du triangle est effectuée par un élément fini de Lagrange, également appelé interpolation affine. La valeur v(j?)du point p(x,y) intérieur au triangle ei J k défini par les 3 nœuds pt,l = i,J,k est donnée par l'équation suivante :The nodes of the triangular mesh carry the photometric information (color, error) and the interpolation for the points inside the triangle is carried out by a finite element of Lagrange, also called affine interpolation. The value v (j?) Of the point p (x, y) inside the triangle e i J k defined by the 3 nodes p t , l = i, J, k is given by the following equation:
où Ψ, (/ = /', j, k) représente les coordonnées barycentriques du point. v(J3)peut être l'une des composantes photométriques Y, U ou N du point, ou encore l'erreur de prédiction pour ces composantes. where Ψ, (/ = / ' , j, k) represents the barycentric coordinates of the point. v (J3) can be one of the photometric components Y, U or N of the point, or even the prediction error for these components.
Plusieurs méthodes peuvent être employées pour le calcul des valeurs nodales, en particulier la méthode des moindres carrés.Several methods can be used for the calculation of the nodal values, in particular the method of least squares.
Transformation en cosinus discrète (DCT) sur les triangles Le principe de la méthode consiste à transformer un triangle quelconque en un triangle de référence isocèle rectangle. Le contenu de ce triangle est alors symétrisé par rapport à l'hypoténuse pour donner une matrice carrée symétrique (figure 4).Transformation into discrete cosine (DCT) on triangles The principle of the method consists in transforming any triangle into a right isosceles reference triangle. The content of this triangle is then symmetrized with respect to the hypotenuse to give a symmetrical square matrix (Figure 4).
Une DCT classique (carrée) est alors appliquée à cette matrice. On peut montrer que la matrice transformée est aussi symétrique. Seuls les coefficients de son triangle inférieur sont alors quantifiés puis codés statistiquement (codage entropique).A classic (square) CSD is then applied to this matrix. We can show that the transformed matrix is also symmetrical. Only the coefficients of its lower triangle are then quantified and then statistically coded (entropy coding).
La figure 4 décrit les différentes étapes du processus : sélection du triangle T, transformation affine de celui-ci en un triangle isocèle rectangle T'. Du fait de la transformation affine, les pixels du triangle ne sont plus situés sur une grille orthogonale régulière, et il convient de ré-échantillonner les valeurs photométriques de l'intérieur du triangle de référence. On utilise pour cela un processus analogue à celui d'une compensation de mouvement dans l'image (en l'occurrence la transformation affine), à l'aide d'un interpolateur, par exemple bilinéaire.Figure 4 describes the different stages of the process: selection of the triangle T, affine transformation of this into a right isosceles triangle T '. Due to the affine transformation, the pixels of the triangle are no longer located on a regular orthogonal grid, and the photometric values of the interior of the reference triangle should be resampled. For this, we use a process analogous to that of motion compensation in the image (in this case the affine transformation), using an interpolator, for example bilinear.
La transformation affine F et son inverse F1 sont définies par les équations suivantes :The affine transformation F and its inverse F 1 are defined by the following equations:
[x - (*3 ~ l ) 1 ~ y) + (y1 " yg) (Xi ~ x) N[x - ( * 3 ~ l) 1 ~ y) + ( y1 "yg) (Xi ~ x) N
(χ 3 - χ^ + (y2 -y^) + (y1 -y3) (*2 - ι)( χ 3 - χ ^ + (y 2 -y ^) + (y 1 -y 3 ) (* 2 - ι)
F : (x1 - x3) + (y1 - y) + (y3 - y ) (x1 - x) N F: (x 1 - x 3 ) + (y 1 - y) + (y 3 - y) (x 1 - x) N
3 - χι) (κ2 - yi) + ( ι - y3) (^2 - ^1) x = x, + (x3 -xx) — + (x2 _ Λι)-^3 - χι) (κ 2 - yi) + (ι - y 3 ) (^ 2 - ^ 1) x = x, + (x 3 -x x ) - + (x 2 _ Λ ι) - ^
F" F "
Les valeurs photométriques M (i, j) an triangle T' (donc du bloc M, symétrisé de T') sont obtenues par transformation inverse F"1 puis interpolation F de la texture de l'image à coder : ou le coefficient M(iγ,jx) est la valeur au point Q(X,Y) dont le transformé P(x,y) est F~ Q)The photometric values M (i, j) an triangle T '(therefore of block M, symmetrized of T') are obtained by inverse transformation F "1 then interpolation F of the texture of the image to be coded: where the coefficient M (i γ , j x ) is the value at point Q (X, Y) whose transform P (x, y) is F ~ Q)
Iv dénote l'interpolateur utilisé pour calculer la valeur de l'image au point, de coordonnées potentiellement non entières.I v denotes the interpolator used to calculate the value of the image at the point, with potentially non-integer coordinates.
La reconstruction f de la texture F est donnée par : où /. dénote la texture interpolée à partir des valeurs du bloc M' , version quantifiée de M.The reconstruction f of the texture F is given by: or /. denotes the interpolated texture from the values of block M ', quantified version of M.
Cette technique ne peut être appliquée qu'aux seuls triangles d'aire non nulle. Mais de tels triangles ne nécessitent pas de codage de texture par définition. Contrairement à la SADCT (DCT adaptée à une forme), cette transformation ne garantit pas la reconstruction parfaite après transformation inverse, même en l'absence de quantification.This technique can only be applied to triangles with non-zero areas. But such triangles do not require texture coding by definition. Unlike the SADCT (DCT adapted to a shape), this transformation does not guarantee perfect reconstruction after reverse transformation, even in the absence of quantification.
Afin de réduire l'erreur de reconstruction, un facteur d'échelleα est introduit pour le calcul du bloc M; (de taille N, XN() pour chaque triangle i : où :In order to reduce the reconstruction error, a scale factor α is introduced for the calculation of block M; (of size N, XN ( ) for each triangle i: or :
• E est la partie entière par excès,• E is the whole part by excess,
• A, est l'aire du triangle i.• A, is the area of triangle i.
En fait, c = 1 réalise un compromis intéressant, qui est plus efficace pour les triangles proche d'un isocèle. Le casa < 1 est utilisé conjointement au pas de quantification pour comprimer le volume d'information.In fact, c = 1 achieves an interesting compromise, which is more effective for triangles close to an isosceles. Casa <1 is used in conjunction with the quantification step to compress the volume of information.
Une fois le bloc Mi défini pour chaque triangle, une transformation DCT classique leur est appliquée, et les coefficients transformés sont quantifiés selon plusieurs procédés possibles, par exemple une quantification scalaire uniforme, ou encore une quantification incrémentale avec la fréquence du coefficient transformée. L'emploi des matrices de quantification MPEG ou JPEG bien connues est également possible.Once the block Mi has been defined for each triangle, a conventional DCT transformation is applied to them, and the transformed coefficients are quantified according to several possible methods, for example a uniform scalar quantization, or even an incremental quantization with the frequency of the transformed coefficient. The use of well known MPEG or JPEG quantization matrices is also possible.
On a la relation F(u,v) ≈ F(v,u) car : K j) = /CAO (V«,v,i, = 0,-,N-l) p r définition. Par conséquent, on peut se contenter de ne calculer que les coefficients de la partie inférieure de la matrice transformée. 4.3 codages global de texture We have the relation F (u, v) ≈ F (v, u) because: K j) = / CAO (V ", v, i, = 0, -, Nl) pr definition. Consequently, one can be satisfied with calculating only the coefficients of the lower part of the transformed matrix. 4.3 global texture coding
Comme indiqué précédemment, on utilise un maillage hiérarchique uniforme obtenu par division de chaque triangle d'un niveau donné de la hiérarchie en 4 sous-triangles, par insertion de nœuds au milieu des arcs. Le processus est répété iterativement jusqu'à un niveau maximal. Cette hiérarchie de triangles est également représentée et gérée par le codeur sous forme d'un arbre quaternaire (figure 5). Notons que seuls. les triangles inclus dans la zone à coder sont pris en compte. Le procédé de construction du maillage initial de base garanti que tout triangle de la hiérarchie de maillage appartient à la zone à coder.As indicated above, we use a uniform hierarchical mesh obtained by dividing each triangle of a given level of the hierarchy into 4 sub-triangles, by inserting nodes in the middle of the arcs. The process is repeated iteratively up to a maximum level. This hierarchy of triangles is also represented and managed by the coder in the form of a quaternary tree (Figure 5). Note that only. the triangles included in the area to be coded are taken into account. The basic initial mesh construction process guarantees that any triangle in the mesh hierarchy belongs to the area to be coded.
Le processus de codage par maillage d'une zone d'occultation peut être résumé de la manière suivante :The process of coding by meshing a concealment area can be summarized as follows:
© un maillage hiérarchique imbriqué est défini sur la zone à coder, par création d'un maillage initial régulier puis sub-di vision itérative des triangles en 4 sous-triangles par insertion de nouveaux nœuds au milieu des arcs. Les valeurs aux nœuds sont calculées pour minimiser l'erreur d'approximation de la zone par le maillage ; © les valeurs des pixels sont approchées par une interpolation affine sur le triangle les contenant à partir de ses valeurs aux nœuds.© a nested hierarchical mesh is defined on the area to be coded, by creating a regular initial mesh then iterative sub-di vision of the triangles into 4 sub-triangles by insertion of new nodes in the middle of the arcs. The values with the nodes are calculated to minimize the error of approximation of the zone by the mesh; © the pixel values are approximated by an affine interpolation on the triangle containing them from its values at the nodes.
Pour chaque triangle de la hiérarchie, on évalue alors l'erreur d'approximation E puis on décide des différents mode de représentation et codage en fonction de 2 seuils : σx et σ2 : φ si E < σx , l'interpolation affine est suffisante sur le triangle ; © si σχ σ2 , il faut utiliser une décomposition plus fine du triangle pour obtenir une bonne approximation, toujours par interpolation affine. © si E>σ , le triangle est texture et on code l'erreur d'interpolation affine en utilisant la DCT. Enfin, sur le maillage le plus fin, on teste la diminution d'erreur apportée par la permutation de diagonale des quadrilatères formés par 2 triangles adjacents. En cas de résultat positif, on valide cette permutation.For each triangle of the hierarchy, we then evaluate the approximation error E then we decide on the different modes of representation and coding according to 2 thresholds: σ x and σ 2 : φ if E <σ x , the interpolation refines is sufficient on the triangle; © if σχ σ2 , a finer decomposition of the triangle must be used to obtain a good approximation, always by affine interpolation. © if E> σ, the triangle is textured and the refining interpolation error is coded using the DCT. Finally, on the finest mesh, we test the error reduction provided by the diagonal permutation of the quadrilaterals formed by 2 adjacent triangles. In the event of a positive result, this permutation is validated.
Selon les modes de codage choisis pour les différents triangles, on code les différentes informations de la manière suivantes Les valeurs nodales YUN sont d'abord prédites à partir des valeurs des nœuds parents (extrémités de l'arc où on a inséré le nœud courant). La différence entre la valeur du nœud et sa valeur prédite est alors quantifiée.According to the coding modes chosen for the different triangles, the different information is coded as follows. The YUN nodal values are first predicted from the values of the parent nodes (ends of the arc where the current node is inserted) . The difference between the value of the node and its predicted value is then quantified.
Enfin, la structure de l'arbre quaternaire (incluant les indicateurs de division ou non des triangles), les indicateurs de permutation de diagonales, les valeurs différentielles nodales de YUN et les coefficients DCT quantifiées sont codés par un codeur arithmétique et insérés dans le train binaire.Finally, the structure of the quaternary tree (including the indicators of division or not of the triangles), the indicators of permutation of diagonals, the nodal differential values of YUN and the quantized DCT coefficients are coded by an arithmetic coder and inserted in the train binary.
5. Résumé des informations codées dans le flux binaire des trames codées par maillage5. Summary of the information coded in the bit stream of the coded frames by mesh
Chaque groupe de trames encodées en mode maillage entre Νk+1 et Nk+1-1 (où Nk Nk+1 sont respectivement la trame précédente et la trame suivante encodée en mode MPEG) est représenté comme un tout dans le flux binaire.Each group of frames encoded in mesh mode between Ν k +1 and N k + 1 -1 (where N k N k + 1 are respectively the previous frame and the next frame encoded in MPEG mode) is represented as a whole in the stream binary.
L'information véhiculée comprend, sous forme codée :The information conveyed includes, in coded form:
Une entête pour l'ensemble du groupe de trames, incluant entre autres le nombre réel de trames encodées. Les maillages de mouvement (structure et vecteurs déplacement des nœuds) T et Tf k+1.A header for the entire group of frames, including among other things the actual number of encoded frames. The motion meshes (structure and displacement vectors of the nodes) T and T f k + 1 .
La texture d'erreur de prédiction ou originale, pour chaque image du groupe.The prediction or original error texture, for each image in the group.
6. Structure globale du train binaire Le train binaire global consiste en une succession de trames encodées en mode MPEG, et de groupes de trames encodés en mode maillage, comme indiqué figure 8.6. Global structure of the bit stream The global bit stream consists of a succession of frames encoded in MPEG mode, and groups of frames encoded in mesh mode, as shown in Figure 8.
L'entête globale du train binaire représentatif de la séquence codée contient entre autres l'indication de codage hybride. La partie du train binaire correspondant à un groupe de trames codées en mode maillage débute par une entête indiquant entre autres le nombre de trame effectivement codées, éventuellement nul.The global header of the bit stream representative of the coded sequence contains inter alia the indication of hybrid coding. The part of the bit stream corresponding to a group of frames coded in mesh mode begins with a header indicating inter alia the number of frames actually coded, possibly zero.
Les différents flux de données (trains binaires) correspondant respectivement à l'entête globale de la séquence codée, aux images encodées MPEG et aux groupes d'i images encodées en mode interpolé par maillage peuvent être envoyés sur différentes voies indépendantes si besoin. En particulier, le procédé de codage permet le décodage hiérarchique (ou scalable) de la séquence, c'est-à-dire un décodage n'utilisant qu'une partie du débit total.The different data streams (bit streams) corresponding respectively to the global header of the coded sequence, to the MPEG encoded images and to the groups of i images encoded in interpolated mesh mode can be sent on different independent channels if necessary. In particular, the coding method allows hierarchical (or scalable) decoding of the sequence, that is to say a decoding using only part of the total bit rate.
7. Processus de décodage La figure 9 donne une vue générale du principe du décodage.7. Decoding process Figure 9 gives a general view of the principle of decoding.
Tout d'abord, le décodage de l'entête permet d'activer le décodage hybride.First of all, the decoding of the header makes it possible to activate the hybrid decoding.
Ensuite, le décodeur reconnaît pour chaque partie du train binaire correspondant à une entité autonome s'il s'agit d'une trame encodée MPEG-4 ou d'un groupe de trames encodées par maillage. Les trames MPEG-4 sont fournies au module de décodage MPEG-4, et les groupes de trames codées en mode maillage sont fournies au module de décodage par maillage.Then, the decoder recognizes for each part of the bit stream corresponding to an autonomous entity whether it is an MPEG-4 encoded frame or a group of frames encoded by mesh. The MPEG-4 frames are supplied to the MPEG-4 decoding module, and the groups of coded frames in mesh mode are supplied to the mesh decoding module.
7.1 Décodage basé maillage7.1 Decoding based on mesh
Tout d'abord, les maillages de mouvement Tb k et Tf (k+ι} pour le groupe d'images I„ Nk<l<Nk+1 sont décodés.First of all, the motion meshes T b k and T f (k + ι } for the group of images I „N k <l <N k + 1 are decoded.
Ensuite, les zones d'occultation pour ces images sont retrouvées selon le même procédé qu'au codeur.Then, the occultation zones for these images are found according to the same process as with the coder.
Les pixels en dehors des zones d'occultation sont simplement interpolés à partir des images INk et et des champs de mouvement Tb k et Tf k+1. Le maillage de texture le plus grossier (sommet de la hiérarchie) est retrouvé pour chaque zone d'occultation selon un procédé identique à celui du codeur.The pixels outside the occultation zones are simply interpolated from the I Nk images and and fields of motion T b k and T f k + 1 . The coarsest texture mesh (top of the hierarchy) is found for each occultation zone according to a process identical to that of the coder.
L'information associée au maillage hiérarchique correspondant (indicateur de division de triangles, décisions d'interpolation affine ou de codage DCT, valeur YUV nodale différentielles et coefficients DCT quantifiés) est alors décodée et les valeurs YUy des pixels de ces zones reconstruits. The information associated with the corresponding hierarchical mesh (triangle division indicator, affine interpolation or DCT coding decisions, differential nodal YUV value and quantized DCT coefficients) is then decoded and the YUy values of the pixels of these reconstructed areas.

Claims

REVENDICATIONS
1. Procédé de codage d'images, caractérisé en ce qu'il met en œuvre sélectivement au moins deux modes de codage d'images, optimisant chacun la compression d'au moins une image d'une séquence vidéo en fonction de critères d'optimisation différents.1. Image coding method, characterized in that it selectively implements at least two image coding modes, each optimizing the compression of at least one image of a video sequence according to criteria of different optimization.
2. Procédé de codage selon la revendication 1, caractérisé en ce qu'une information sur le choix d'un desdits modes de codage est connue d'un décodeur selon au moins une des techniques appartenant au groupe comprenant : choix prédéfini, connu au codage et au décodage ; - information représentative du choix incluse dans un flux de données comprenant au moins certaines des données d'images codées ; information représentative du choix incluse dans un flux de données indépendant des données d'images codées ; - détermination du choix de façon intrinsèque, par le décodeur.2. Coding method according to claim 1, characterized in that information on the choice of one of said coding modes is known to a decoder according to at least one of the techniques belonging to the group comprising: predefined choice, known to coding and decoding; - information representative of the choice included in a data stream comprising at least some of the coded image data; information representative of the choice included in a data stream independent of the coded image data; - determination of the choice intrinsically, by the decoder.
3. Procédé de codage selon l'une quelconque des revendications 1 et 2, caractérisé en ce qu'il comprend une étape de sélection d'un mode de codage à appliquer à ladite image, parmi au moins : - un premier codage optimisant sensiblement une représentation photométrique d'une image ; un second codage optimisant sensiblement une représentation du mouvement entre au moins deux images.3. Coding method according to any one of claims 1 and 2, characterized in that it comprises a step of selecting a coding mode to be applied to said image, among at least: - a first coding substantially optimizing a photometric representation of an image; a second coding substantially optimizing a representation of the movement between at least two images.
4. Procédé de codage selon la revendication 3, caractérisé en ce que ledit second codage tient compte d'au moins une image précédente et/ou au moins une image suivante codée à l'aide dudit premier codage.4. Coding method according to claim 3, characterized in that said second coding takes account of at least one previous image and / or at least one following image coded using said first coding.
5. Procédé de codage selon la revendication 4, caractérisé en ce que ledit second codage tient compte d'un champ de vecteurs mouvement calculé à partir de l'image immédiatement précédente codée à l'aide dudit premier codage et/ou d'un champ de vecteurs mouvement calculé à partir de l'image immédiatement suivante codée à l'aide dudit premier codage.5. Coding method according to claim 4, characterized in that said second coding takes into account a field of motion vectors calculated from the immediately preceding image coded using said first coding and / or a field motion vectors calculated from the image immediately following coded using said first coding.
6. Procédé de codage selon la revendication 5, caractérisé en ce que ledit champ de vecteurs mouvement est appliqué à un maillage.6. Coding method according to claim 5, characterized in that said motion vector field is applied to a mesh.
7. Procédé de codage selon l'une quelconque des revendications 5 et 6, caractérisé en ce que lesdits champs de vecteurs mouvement sont utilisés pour déterminer un champ de vecteurs mouvement déduit, associé à une image codée à l'aide dudit second codage.7. Coding method according to any one of claims 5 and 6, characterized in that said motion vector fields are used to determine a deduced motion vector field, associated with an image coded using said second coding.
8. Procédé de codage selon l'une quelconque des revendications 5 à 7, caractérisé en ce que ledit second codage met en œuvre une estimation de mouvement avant, entre une image Itι et une image suivante It2, et une étape de compensation de mouvement dans laquelle les vecteurs mouvement obtenus lors de ladite estimation de mouvement et ne conduisant à aucun retournement sont pondérés par un scalaire k = m/(tl + t2), 0<k<l, de façon à interpoler au moins une image Iml, m appartenant à [tl, t2]. 8. Coding method according to any one of claims 5 to 7, characterized in that said second coding implements a forward motion estimation, between an image I t ι and a next image I t2 , and a compensation step motion in which the motion vectors obtained during said motion estimation and leading to no reversal are weighted by a scalar k = m / (tl + t2), 0 <k <l, so as to interpolate at least one image Iml , m belonging to [tl, t2].
9. Procédé de codage selon l'une quelconque des revendications 5 à 7, caractérisé en ce que ledit second codage met en œuvre une estimation de mouvement arrière, entre une image Iβ et une image précédente Itl, et une étape de compensation de mouvement dans laquelle les vecteurs mouvement obtenus lors de ladite estimation de mouvement et ne conduisant à aucun retournement sont pondérés par un scalaire k' = l-m/(tl + t2), O≤k'≤l, de façon à interpoler au moins une image Im2, m appartenant à [tl, t2].9. Coding method according to any one of claims 5 to 7, characterized in that said second coding implements an estimate of backward movement, between an image I β and a previous image I tl , and a step of compensating for motion in which the motion vectors obtained during said motion estimation and leading to no reversal are weighted by a scalar k '= lm / (tl + t2), O≤k'≤l, so as to interpolate at least one image Im2, m belonging to [tl, t2].
10. Procédé de codage selon les revendications 8 et 9, caractérisé en ce qu'il met en œuvre une estimation arrière et une estimation avant, de façon à obtenir une image estimée Im valant Im = aEl+(l-a)E2 avec O≤a≤l. 10. Coding method according to claims 8 and 9, characterized in that it implements a back estimate and a front estimate, so as to obtain an estimated image Im being worth Im = aEl + (la) E2 with O≤a≤ l.
11. Procédé de codage selon l'une quelconque des revendications 3 à11. Coding method according to any one of claims 3 to
10, caractérisé en ce que ladite étape de sélection repose sur la mise en œuvre d'un sous-échantillonnage de facteur fixé N, une image sur N étant codée à l'aide dudit premier codage.10, characterized in that said selection step is based on the implementation of a fixed factor sub-sampling N, an image on N being coded using said first coding.
12. Procédé de codage selon la revendication 11, caractérisé en ce que N est supérieur à 2. 12. Coding method according to claim 11, characterized in that N is greater than 2.
13. Procédé de codage selon l'une quelconque des revendications 11 et 12, caractérisé en ce que N est variable.13. Coding method according to any one of claims 11 and 12, characterized in that N is variable.
14. Procédé de codage selon l'une quelconque des revendications 3 à 11, caractérisé en ce que ledit premier codage met en œuvre une transformation sur des blocs d'images et une prédiction temporelle par blocs.14. Coding method according to any one of claims 3 to 11, characterized in that said first coding implements a transformation on blocks of images and a temporal prediction by blocks.
15. Procédé de codage selon la revendication 14, caractérisé en ce que ledit premier codage est un codage MPEG-4 ou H26L.15. Coding method according to claim 14, characterized in that said first coding is an MPEG-4 or H26L coding.
16. Procédé de codage selon la revendication 115, caractérisé en ce que les images délivrées par ledit codage MPEG-4 ou H26L comprennent des images de type I (intra) et ou de type P (prédictif).16. Coding method according to claim 115, characterized in that the images delivered by said MPEG-4 or H26L coding comprise type I (intra) and or type P (predictive) images.
17. Procédé de codage selon l'une quelconque des revendications 3 à 16, caractérisé en ce que ledit second codage repose sur la mise en œuvre d'un maillage hiérarchique de M niveaux, M étant supérieur ou égal à 1.17. Coding method according to any one of claims 3 to 16, characterized in that said second coding is based on the implementation of a hierarchical mesh of M levels, M being greater than or equal to 1.
18. Procédé de codage selon la revendication 17, caractérisé en ce que ledit maillage est triangulaire.18. Coding method according to claim 17, characterized in that said mesh is triangular.
19. Procédé de codage selon l'une quelconque des revendications 17 et19. Coding method according to any one of claims 17 and
18, caractérisé en ce qu'il comprend une étape de gestion des zones d'occlusions.18, characterized in that it comprises a step for managing the occlusion zones.
20. Procédé de codage selon l'une quelconque des revendications 1 à20. Coding method according to any one of claims 1 to
19, caractérisé en ce qu'il produit au moins deux flux de données, pouvant être transmis sur des voies de transmission indépendantes.19, characterized in that it produces at least two data streams, which can be transmitted over independent transmission channels.
21. Procédé de codage selon la revendication 20, caractérisé en ce que lesdits flux de données appartiennent au groupe comprenant : une entête globale ; des données d'image codées selon ledit premier codage ; - des données d'image codées selon ledit second codage.21. Coding method according to claim 20, characterized in that said data streams belong to the group comprising: a global header; image data encoded according to said first encoding; - image data coded according to said second coding.
22. Procédé de décodage d'un signal d'images codé à l'aide du procédé de codage de l'une quelconque des revendications 1 à 21.22. Method for decoding an image signal coded using the coding method of any one of claims 1 to 21.
23. Dispositif de codage d'un signal d'images codé à l'aide du procédé de codage de l'une quelconque des revendications 1 à 21. 23. Device for coding an image signal coded using the coding method of any one of claims 1 to 21.
24. Dispositif de décodage d'un signal d'images codé à l'aide du procédé de codage de l'une quelconque des revendications 1 à 21.24. Device for decoding an image signal coded using the coding method of any one of claims 1 to 21.
25. Dispositif de décodage selon la revendication 24, caractérisé en ce qu'il comprend des moyens de détermination d'au moins une partie d'un champ de vecteurs et/ou d'au moins une partie des zones d'occlusion, similaires à ceux mis en œuvre lors du codage.25. A decoding device according to claim 24, characterized in that it comprises means for determining at least part of a vector field and / or at least part of the occlusion zones, similar to those implemented during coding.
26. Dispositif de stockage d'au moins un signal d'images codé à l'aide du procédé de codage de l'une quelconque des revendications 1 à 21.26. Device for storing at least one image signal coded using the coding method of any one of claims 1 to 21.
27. Système de codage, de transmission et/ou de décodage d'un signal d'images codé à l'aide du procédé de codage de l'une quelconque des revendications 1 à 17.27. System for coding, transmitting and / or decoding an image signal coded using the coding method of any one of claims 1 to 17.
28. Système selon la revendication 27, caractérisé en ce qu'une information sur le choix d'un desdits modes de codage est connue d'un décodeur selon au moins une des techniques appartenant au groupe comprenant : choix prédéfini, connu au codage et au décodage ; - information représentative du choix incluse dans un flux de données comprenant au moins certaines des données d'images codées ; information représentative du choix incluse dans un flux de données indépendant des données d'images codées ; ' - détermination du choix de façon intrinsèque, par le décodeur.28. System according to claim 27, characterized in that information on the choice of one of said coding modes is known to a decoder according to at least one of the techniques belonging to the group comprising: predefined choice, known for coding and for decoding; - information representative of the choice included in a data stream comprising at least some of the coded image data; information representative of the choice included in a data stream independent of the coded image data; ' - determination of the choice intrinsically, by the decoder.
29. Produit programme d'ordinateur pour le codage et/ou le décodage d'un signal d'images codé à l'aide du procédé de codage de l'une quelconque des revendications 1 à 21. 29. A computer program product for coding and / or decoding an image signal coded using the coding method of any one of claims 1 to 21.
30. Support de données portant un programme d'ordinateur pour le codage et/ou le décodage d'un signal d'images codé à l'aide du procédé de codage de l'une quelconque des revendications 1 à 21.30. Data carrier carrying a computer program for coding and / or decoding an image signal coded using the coding method of any one of claims 1 to 21.
31. Signal de données d'images, caractérisé en ce qu'il comprend des données codées selon le procédé de l'une quelconque des revendications 1 à 21. 31. Image data signal, characterized in that it comprises data coded according to the method of any one of claims 1 to 21.
32. Signal selon la revendication 31, caractérisé en ce qu'au moins un indicateur indiquant si le procédé selon l'une quelconque des revendications 1 à 21 est ou non activé.32. Signal according to claim 31, characterized in that at least one flag indicating whether or not the method according to any of claims 1 to 21 is activated.
33. Signal selon l'une quelconque des revendications 31 et 32, caractérisé en ce qu'il comprend une donnée précisant la structure des trames, en début de séquence vidéo et/ou dans chaque trame de signal.33. Signal according to any one of claims 31 and 32, characterized in that it comprises data specifying the structure of the frames, at the start of the video sequence and / or in each signal frame.
34. Signal selon l'une quelconque des revendications 31 à 33, caractérisé en ce qu'une séquence codée à l'aide dudit second codage débute par une entête précisant le nombre de trames codées selon ce second codage.34. Signal according to any one of claims 31 to 33, characterized in that a sequence coded using said second coding begins with a header specifying the number of frames coded according to this second coding.
35. Signal selon l'une quelconque des revendications 31 à 34, caractérisé en ce qu'il comprend au moins deux flux de données, pouvant être transmis sur des voies de transmission indépendantes.35. Signal according to any one of claims 31 to 34, characterized in that it comprises at least two data streams, which can be transmitted on independent transmission channels.
36. Signal selon la revendication 35, caractérisé en ce que lesdits flux de données appartiennent au groupe comprenant : une entête globale ; - des données d'image codées selon ledit premier codage ; des données d'image codées selon ledit second codage.36. Signal according to claim 35, characterized in that said data streams belong to the group comprising: a global header; - image data coded according to said first coding; image data coded according to said second coding.
37. Application du procédé de codage selon l'une quelconque des revendications 1 à 21 à au moins un des domaines appartenant au groupe comprenant : - la télévision numérique ; la vidéo temps réel sur réseau IP ; la vidéo temps réel sur réseau vers les mobiles ; le stockage de données d'images. 37. Application of the coding method according to any one of claims 1 to 21 to at least one of the fields belonging to the group comprising: - digital television; real-time video over IP network; network real-time video to mobiles; storage of image data.
EP02701323A 2001-01-26 2002-01-25 Image coding and decoding method, corresponding devices and applications Withdrawn EP1354482A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0101174 2001-01-26
FR0101174A FR2820255A1 (en) 2001-01-26 2001-01-26 METHODS FOR ENCODING AND DECODING IMAGES, DEVICES, SYSTEMS, SIGNALS AND APPLICATIONS THEREOF
PCT/FR2002/000322 WO2002060184A1 (en) 2001-01-26 2002-01-25 Image coding and decoding method, corresponding devices and applications

Publications (1)

Publication Number Publication Date
EP1354482A1 true EP1354482A1 (en) 2003-10-22

Family

ID=8859354

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02701323A Withdrawn EP1354482A1 (en) 2001-01-26 2002-01-25 Image coding and decoding method, corresponding devices and applications

Country Status (8)

Country Link
US (1) US7512179B2 (en)
EP (1) EP1354482A1 (en)
JP (1) JP2004520744A (en)
KR (1) KR100922510B1 (en)
CN (1) CN1288914C (en)
BR (1) BR0206798A (en)
FR (1) FR2820255A1 (en)
WO (1) WO2002060184A1 (en)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8421804B2 (en) 2005-02-16 2013-04-16 At&T Intellectual Property Ii, L.P. System and method of streaming 3-D wireframe animations
JP4240283B2 (en) * 2002-10-10 2009-03-18 ソニー株式会社 Decoding device and decoding method
FR2849329A1 (en) * 2002-12-20 2004-06-25 France Telecom Video sequence successive image coding having an image mesh divided and wavelet coded with two wavelet types applied distinct image zones
FR2852773A1 (en) * 2003-03-20 2004-09-24 France Telecom 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
KR101107114B1 (en) * 2004-01-06 2012-01-30 엔엑스피 비 브이 Method of rendering graphical objects
US8331445B2 (en) 2004-06-01 2012-12-11 Qualcomm Incorporated Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques
WO2006030103A1 (en) * 2004-09-15 2006-03-23 France Telecom Method for estimating motion using deformable meshes
US7606303B2 (en) * 2004-09-28 2009-10-20 General Instrument Corporation Method and apparatus to detect anchor frames from digital video streams
ITMI20041971A1 (en) * 2004-10-15 2005-01-15 Uni Degli Studi Brescia SCALABLE VIDEO CODING METHOD
KR100813963B1 (en) * 2005-09-16 2008-03-14 세종대학교산학협력단 Method and apparatus for loseless encoding and decoding image
WO2009032255A2 (en) * 2007-09-04 2009-03-12 The Regents Of The University Of California Hierarchical motion vector processing method, software and devices
FR2933565A1 (en) * 2008-07-01 2010-01-08 France Telecom METHOD AND DEVICE FOR ENCODING AN IMAGE SEQUENCE USING TEMPORAL PREDICTION, SIGNAL, DATA MEDIUM, DECODING METHOD AND DEVICE, AND CORRESPONDING COMPUTER PROGRAM PRODUCT
JP5112229B2 (en) * 2008-09-05 2013-01-09 株式会社エヌ・ティ・ティ・ドコモ Distribution device, terminal device, system and method
JP5080406B2 (en) * 2008-09-05 2012-11-21 株式会社エヌ・ティ・ティ・ドコモ Distribution device, terminal device, system and method
KR101682147B1 (en) 2010-04-05 2016-12-05 삼성전자주식회사 Method and apparatus for interpolation based on transform and inverse transform
KR101750046B1 (en) * 2010-04-05 2017-06-22 삼성전자주식회사 Method and apparatus for video encoding with in-loop filtering based on tree-structured data unit, method and apparatus for video decoding with the same
US9049450B2 (en) * 2010-04-05 2015-06-02 Samsung Electronics Co., Ltd. Method and apparatus for encoding video based on internal bit depth increment, and method and apparatus for decoding video based on internal bit depth increment
WO2011129619A2 (en) * 2010-04-13 2011-10-20 삼성전자 주식회사 Video encoding method and video encoding apparatus and video decoding method and video decoding apparatus, which perform deblocking filtering based on tree-structure encoding units
WO2019124191A1 (en) * 2017-12-18 2019-06-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Encoding device, decoding device, encoding method, and decoding method
GB2580084B (en) * 2018-12-20 2022-12-28 Canon Kk Video coding and decoding
CN109816611B (en) * 2019-01-31 2021-02-12 北京市商汤科技开发有限公司 Video repair method and device, electronic equipment and storage medium

Family Cites Families (14)

* Cited by examiner, † Cited by third party
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
GB2279531B (en) 1993-06-24 1997-07-16 Sony Uk Ltd Motion compensated image interpolation
JP3089165B2 (en) 1994-11-10 2000-09-18 株式会社グラフィックス・コミュニケーション・ラボラトリーズ Motion vector search device
KR0181034B1 (en) * 1995-03-18 1999-05-01 배순훈 Method and apparatus for detecting motion vector using feature point based motion estimation
US5654771A (en) * 1995-05-23 1997-08-05 The University Of Rochester Video compression system using a dense motion vector field and a triangular patch mesh overlay model
KR100209793B1 (en) 1995-10-28 1999-07-15 전주범 Apparatus for encoding/decoding a video signals by using feature point based motion estimation
GB9607645D0 (en) 1996-04-12 1996-06-12 Snell & Wilcox Ltd Processing of video signals prior to compression
JPH11509709A (en) * 1996-05-06 1999-08-24 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ Method and system for split encoding and decoding video images
US6078619A (en) 1996-09-12 2000-06-20 University Of Bath Object-oriented video system
US6668091B1 (en) * 1998-10-02 2003-12-23 Samsung Electronics Co., Ltd. 3D mesh coding/decoding method
FR2794269B1 (en) * 1999-05-26 2001-08-17 France Telecom IMAGE CODING METHOD, WITH TRIANGULAR PARTITION AND REVERSIBLE TRANSFORMATION, AND CORRESPONDING DECODING METHOD
FR2802377B1 (en) * 1999-12-09 2002-03-08 France Telecom METHOD FOR ESTIMATING MOTION BETWEEN TWO IMAGES WITH MANAGEMENT OF MESH RETURNS AND CORRESPONDING CODING METHOD
US6898320B2 (en) * 2000-03-14 2005-05-24 Samsung Electronics Co., Ltd. Method for processing nodes in 3D scene and apparatus thereof
FR2813485B1 (en) * 2000-08-24 2003-12-26 France Telecom METHOD FOR CONSTRUCTING AT LEAST ONE IMAGE INTERPOLED BETWEEN TWO IMAGES OF AN ANIMATED SEQUENCE, CORRESPONDING CODING AND DECODING METHODS, SIGNAL AND DATA MEDIUM

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO02060184A1 *

Also Published As

Publication number Publication date
KR20030081403A (en) 2003-10-17
US20040151247A1 (en) 2004-08-05
FR2820255A1 (en) 2002-08-02
US7512179B2 (en) 2009-03-31
CN1288914C (en) 2006-12-06
BR0206798A (en) 2004-02-03
CN1531824A (en) 2004-09-22
JP2004520744A (en) 2004-07-08
KR100922510B1 (en) 2009-10-20
WO2002060184A1 (en) 2002-08-01

Similar Documents

Publication Publication Date Title
WO2002060184A1 (en) Image coding and decoding method, corresponding devices and applications
FR2764156A1 (en) PRETREATMENT DEVICE FOR MPEG II CODING
FR2894421A1 (en) METHOD AND DEVICE FOR DECODING A VIDEO STREAM CODE FOLLOWING A HIERARCHICAL CODING
WO2006074855A1 (en) Device and method for scalably encoding and decoding an image data stream, a signal, computer program and an adaptation module for a corresponding image quality
WO2009006056A2 (en) Efficient image representation by edges and low-resolution signal
Lee et al. DPICT: Deep progressive image compression using trit-planes
WO2004052000A2 (en) Methods and apparatus for coding of motion vectors
EP0892557A1 (en) Image compression
EP1969854A1 (en) Method of coding and decoding an image or a sequence of images, corresponding devices, computer programs and signal
EP1312221A1 (en) Method for calculating an image interpolated between two images of a video sequence
WO2002100111A1 (en) Methods and devices for encoding and decoding images using nested meshes, programme, signal and corresponding uses
EP1600003B1 (en) Method for coding a video image taking into account the part relating to a component of a movement vector
EP1574068B1 (en) Wavelet image-encoding method and corresponding decoding method
EP1181668B1 (en) Image coding/decoding method
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
FR2769784A1 (en) FASHION CODING METHOD IN BINARY SHAPE CODING
Meessen et al. WCAM: smart encoding for wireless surveillance
EP1110409B1 (en) Method for estimating motion between two images
Martinez et al. DVC using a half-feedback based approach
Devaux et al. Remote interactive browsing of video surveillance content based on JPEG 2000
Asbun Improvements in wavelet-based rate scalable video compression
Devaux et al. A flexible video server based on a low complex post-compression rate allocation
FR2891966A1 (en) DEVICES AND METHODS FOR SCALING AND DECODING IMAGE DATA STREAMS, SIGNAL, COMPUTER PROGRAM AND QUALITY ADAPTATION MODULE OF CORRESPONDING IMAGES
Frajka Image coding subject to constraints
Rahimi et al. Image compression using high order wedgelets in a generalized quad-tree

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: 20030811

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1060007

Country of ref document: HK

17Q First examination report despatched

Effective date: 20050316

17Q First examination report despatched

Effective date: 20050316

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: ORANGE

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1060007

Country of ref document: HK

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: 20170801