EP1299859A1 - Motion estimator for coding and decoding image sequences - Google Patents

Motion estimator for coding and decoding image sequences

Info

Publication number
EP1299859A1
EP1299859A1 EP01951762A EP01951762A EP1299859A1 EP 1299859 A1 EP1299859 A1 EP 1299859A1 EP 01951762 A EP01951762 A EP 01951762A EP 01951762 A EP01951762 A EP 01951762A EP 1299859 A1 EP1299859 A1 EP 1299859A1
Authority
EP
European Patent Office
Prior art keywords
mesh
image
vertices
marker
coding
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
EP01951762A
Other languages
German (de)
French (fr)
Inventor
Guillaume Robert
Nathalie Laurent-Chatenet
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 EP1299859A1 publication Critical patent/EP1299859A1/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/537Motion estimation other than block-based
    • H04N19/543Motion estimation other than block-based using regions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments

Definitions

  • Motion estimator for coding and decoding image sequences.
  • the field of the invention is that of coding of images or sequences of images. More specifically, the invention relates to the estimation and compensation of the movement between two given images.
  • the concept of movement between two images of a sequence is a concept well known in the scientific and technical community of image processing. This is defined as the two-dimensional vector characterizing the difference in positions between a point of an image and the homologous point of the other image, on the assumption that these points correspond to the same physical point in each of the two images .
  • the assignment of a displacement vector to each point of the image, or pixel therefore defines a dense field of movement on the image, as illustrated in FIG. 1.
  • the set 10 of the N * M vectors obtained for an image of size N * M is called the field of movement, or optical flow, between two images 11 and 12 corresponding respectively to the instants t and t + 1.
  • the estimation of the movement between two images finds applications in all fields of imagery and image processing.
  • - video coding the motion field is used for the prediction of an image from the previously decoded images.
  • the representation by mesh of such a field is notably defined in different norms or standards, such as the MPEG-4 standard.
  • medical imagery analysis of the movement of the human body, heart, etc. object tracking (for example in the context of road traffic control).
  • the invention applies in particular to the processing of two-dimensional (2D) images, but also to the processing of images representative of multidimensional objects (in particular 3D).
  • 3D multidimensional objects
  • a first technique consists in calculating a dense field of motion for the image, and in assigning a displacement vector to each pixel.
  • a second technique aims to calculate a displacement vector per rectangular block of the image.
  • a third technique is based on the calculation of a mathematical model of the movement by region, possibly of arbitrary shape, of the image. Such a technique therefore also implements a segmentation of the image into regions, corresponding for example to the various video objects constituting the illustrated scene.
  • a final technique described for example in patent application FR 2 783 123 entitled “Method for estimating the movement between two images", consists in calculating a field defined by a finite element model.
  • a mesh is associated with the image, and an interpolation or extrapolation function makes it possible to calculate the value of the field at each point of the image, inside each of the meshes, as illustrated by the figure. 2.
  • This technique is also based on the implementation of a differential method, which determines the movement parameters by optimization of a mathematical quality criterion (for example, a quadratic error between the image and its value predicted by the compensation of the movement).
  • a mathematical quality criterion for example, a quadratic error between the image and its value predicted by the compensation of the movement.
  • Such an optimization is carried out using a differential mathematical optimization method, in the case of criteria having the necessary mathematical properties (for example, a differentiable criterion).
  • a triangular mesh is associated with the image 21.
  • the value of the motion vectors of the vertices referenced 22, 23 and 24 of the mesh is optimized.
  • one carries out an interpolation (or an extrapolation) in order to determine the vectors of movement of the points not corresponding to vertices of the mesh, such as the points referenced 25 and 26 for example.
  • Such a motion estimation method based on the implementation of a hierarchical mesh representative of the image to be coded, is particularly suitable for the progressive transmission of data, and therefore represents an advantageous solution to the problems of band saturation. bandwidth and adaptability to communication networks, of different natures and capacities. However, such a method encounters certain difficulties when tracking movement.
  • a drawback of this technique of the prior art is that it generates displacements of meshes, causing settlement or uncovering on certain areas of the image, as illustrated in FIG. 5.
  • the deformable meshes define a continuous representation of a movement field (that is to say that the mesh follows the moving objects in the scene), while the real movement of a video sequence is of a discontinuous nature. Consequently, when an object moves for example from left to right in the image 51, the left zone 52, discovered by the displacement of the object, represents new information, and, therefore, is not more meshed.
  • the right-hand area 53 supports a compaction of meshes. Similarly, when different planes and objects overlap in a scene, occultation zones appear, generating lines of discontinuity.
  • the vertices of the mesh also carry photometric and / or colorimetric information which make it possible to generate a photometric and / or colorimetric field, and therefore to approximate the image.
  • the appearance of non-meshed discovery areas therefore corresponds to the entry into the image of areas whose photometry and / or colorimetry cannot be approximated, that is to say black areas.
  • This technique of the prior art also has the drawback of causing an overly approximation of the areas leaving the image that is too costly, corresponding to the areas of compacting of the meshes. Indeed, in the settlement zones, one obtains an over-representation of the field of movement, because too many meshs are used to make the approximation of a reduced portion of the field of movement. Such an over-representation does not harm the quality of approximation of the field of motion, but generates an additional cost of transmission.
  • Another solution envisaged to compensate for the appearance of the areas of uncovering or of areas of settlement of the mesh consists in inserting new points on the black areas and in constructing a constrained Delaunay mesh.
  • a disadvantage of this technique of the prior art is that it is costly in terms of time and speed of transmission and / or storage of information.
  • a postprocessing consists in applying the motion vectors as estimated to the various nodes of the mesh, then in detecting the motion vectors having caused the appearance of defects in the mesh, and finally in correcting their value, so as to compensate for the mesh reversal phenomena.
  • a second embodiment of a postprocessing consists of an iterative process: with each iteration, one applies a part of the estimated displacement to each of the nodes of the mesh, so as not to generate a reversal of meshes. The iterations are then repeated until a convergence of the process is obtained.
  • the methods of postprocessing acting after the vectors of movement of the various nodes of the mesh were estimated, they do not allow an optimal management of the reversals of meshes. Indeed, in the post-processing methods, the motion vectors are corrected independently of their contribution to the minimization of the prediction error (for example of the quadratic error between the image and its value predicted by motion compensation ).
  • Such a technique consists in undertaking an initial optimization of the motion vectors of the mesh, by letting the motion estimator create possible reversals between two successive instants t ⁇ and tj, so as to detect the discontinuity zones thus generated.
  • the method then consists in carrying out a new estimation of the movement between the instants t x and t 2 , by excluding the faulty areas (that is to say the areas containing at least one mesh reversal), in order to minimize the prediction error between the two images corresponding to the instants t j and t ⁇ considered.
  • This new estimation makes it possible to determine the optimal motion vectors for the continuous area of the image (that is to say admitting a bijection between t j and ⁇ ) and thus to avoid the values of the motion vectors obtained at during the initial optimization are not disturbed by the existence of discontinuity zones.
  • the faulty areas are then approximated by a frequency or spatial method, when the method is applied to image compression for example, and permanently excluded from the optimization method, when the technique is applied to the monitoring of video objects for example .
  • a drawback of this technique of the prior art is that it does not make it possible to manage the appearance of areas of discoveries and areas of compacting of meshes during a translation of an object within the image, as described above.
  • an objective of the invention is to provide a technique for coding images represented using a mesh, allowing estimation and compensation of the movement within the image.
  • Another objective of the invention is to implement an image coding technique making it possible to obtain a good approximation of the photometric and / or colorimetric surface of the image, in particular for highly textured areas.
  • the invention also aims to provide a simple and robust image coding technique.
  • the invention also aims to implement an image coding technique suitable for all areas in which the movement is estimated using meshes, and in particular the field of video coding (such as the MPEG4 and H263 + for example).
  • Another object of the invention is to provide a technique for coding images presenting a reduced cost of transmitting information. Yet another objective of the invention is to implement an image coding technique ensuring visual fluidity of the movement of the image.
  • Another object of the invention is to provide an image coding technique making it possible to effectively manage the appearance of areas of discovery and or of settlement zones during the movement of the objects constituting the image.
  • Another object of the invention is to implement an image coding technique making it possible to manage the phenomena of inversion and mesh concealment.
  • Another object of the invention is to provide an image coding technique making it possible to reduce the transmission and / or storage of motion vectors for the areas of mesh settlement.
  • Yet another objective of the invention is to implement an image coding technique making it possible to ensure the consistency of the ratio of the information transmission rate to the image distortion rate.
  • a method of coding a mesh representative of an image of an animated sequence such a mesh being larger than said image.
  • image is meant here a two-dimensional image, or a multidimensional image, for example representative of a 3D object.
  • the invention is based on a completely new and inventive approach to the estimation and compensation of movement for the coding and decoding of image sequences, allowing the management of discoveries and settlements of meshes during displacement. objects.
  • the invention in particular proposes the coding of a mesh of dimension greater than that of the image with which it is associated, and therefore goes against the prejudices of the skilled person, who has always sought to reduce the amount of information to be coded and transmitted and / or stored on a data carrier. It seems indeed completely useless, a priori, for those skilled in the art of constructing a mesh larger than the image, since no information is available beyond the limits of the image.
  • the invention thus makes it possible, during motion tracking, to maintain a mesh over all of the images in a video sequence.
  • said image having an area of N * M pixels
  • said mesh has an area of at least nN * nM pixels, n being an integer greater than or equal to 2.
  • the invention ideally provides for using an infinite size mesh.
  • the mesh extends on either side of the image, so that its surface is at least n times greater than that of the image, where n is a sufficiently large integer, defined before the implementation of the coding method according to the invention.
  • said mesh is a hierarchical mesh having at least two levels of mesh nested within a pyramid of mesh.
  • the use of a nested hierarchical mesh 41 makes it possible to obtain a robust coding, and reduces the cost of transmission and / or storage of information. Indeed, there is a strong correlation between the information carried by a parent node and that carried by its child nodes within the mesh. Therefore, the values of the nodes 42, 43 belonging to the highest level of the mesh pyramid (corresponding to a coarse mesh of the image) are quantified, with a view to their transmission, for example to an encoder, and / or their storage on a data carrier 45. On the other hand, for the lower levels of the pyramid of mesh (corresponding to a finer mesh of the image), only the differential values of the child nodes 44 are quantified, in view their transmission and / or storage, as illustrated in FIG. 4.
  • said mesh is a triangular mesh consisting of an arrangement of vertices and triangular faces, each defined by three references to the vertices which it connects, and having three edges each connecting two of said vertices.
  • the invention is of course also applicable to any other type of polygonal mesh, which may have undergone prior triangulation.
  • such a coding method associates with at least some of the vertices and / or some of the faces of said mesh at least one of the following markers: an "inside” marker, a face carrying an “inside” marker if it has a non-empty intersection with said image, and a vertex bearing an "interior” marker if it belongs to an "interior” face; an "incoming” marker, a vertex carrying an "incoming” marker if it has an "inside” marker and is outside the image, and a face carrying an "incoming” marker if at least one of the three vertices that it links carries an "incoming” marker.
  • such a coding method implements the succession of following steps: estimation of the movement of said vertices of said mesh, between two successive images of said sequence; construction of colorimetric and / or photometric information intended for vertices and / or faces of said mesh carrying said marker
  • Such a construction step can be implemented according to the approach proposed in patent document FR-98 12525 having for title "coding process of still or moving images with reduction and adaptation of the bit rate".
  • This technique relates to a method of coding an image digital, aimed at producing a binary train representative of this image, the length of the binary train being a function of desired representation.
  • This method comprises the following steps: defining, on a domain of the image to be coded, a hierarchical mesh comprising a plurality of nested meshes whose mesh vertices can be pixels of said image; perform optimizations of luminance, chrominance, and positions on each mesh level; determine, for each mesh of said hierarchical mesh, a luminance difference between the image to be coded and an interpolated image obtained from the vertices of the nested mesh to which the mesh in question belongs, and introduce the values (advantageously differential coded) into the binary train compared to the preceding hierarchical level) of positions, luminance and chrominance of the vertices of the meshes whose luminance difference is greater than a threshold difference.
  • a quaternary tree structure associated with the hierarchical mesh, is constructed to manipulate the values (colors and positions) of the vertices of the meshes.
  • the tree presents a number of nodes equal to the number of triangles in the corresponding level of mesh. Each node of the tree relates to a single triangle of the hierarchical mesh.
  • the data of the tree to be introduced into the bit stream representative of the image which will be transmitted and / or stored is selected. This selection depends on the desired quality.
  • a luminance difference between the image to be coded and the interpolated image is calculated for each triangle from the vertices of the nested mesh to which the mesh in question belongs. This difference is then compared to a threshold difference for each triangle.
  • the value of the threshold deviation depends on the quality of representation desired.
  • the part of the tree relating to the triangles whose luminance difference is greater than the threshold difference is then introduced into the binary train, which therefore makes it possible to transmit the data relating to the image as a function of the local quality of these different triangular partitions.
  • said estimation step comprises the following sub-steps: optimization of motion vectors of the vertices of said mesh carrying said "interior" marker, so as to minimize a predetermined error criterion for reconstruction of the following image; - interpolation and / or extrapolation of motion vectors from the vertices of said mesh not carrying said "interior” marker, in order to fluidize the overall displacement of said mesh.
  • said interpolation and / or extrapolation step implements a double iterative front-back scanning, applied to the vertices of the lowest level of said grid pyramid for which said vectors movement of said vertices have been optimized.
  • the invention therefore provides for artificially propagating the motion vectors from the vertices carrying an "interior” marker to the vertices not carrying an "interior” marker, by implementing such an iterative front-rear scan.
  • such a coding method implements a step of moving each of the vertices of said mesh, by applying to it its own motion vector.
  • said construction step implements on the one hand a finite element coding model, and on the other hand an alternative coding model, the latter being implemented for at least certain zones. of said image, according to a predetermined error criterion.
  • hierarchical coding when implementing a hierarchical coding, for example as described in the French patent application FR 98 12525, and when a portion of the image is very textured, it is then necessary to provide a number of large mesh levels to obtain photometric and / or colorimetric information of sufficient quality. In this case, the efficiency of hierarchical coding is low. In other words, hierarchical coding is well suited for relatively simple images, but not for images with highly textured parts.
  • Such a method of coding an image to be coded comprises the following steps: definition of a hierarchical mesh having at least two nested mesh levels formed of meshes defined by vertices (which may be pixels of said image to be encoded); determination, for each of said meshes, of error information between said image to be coded and an interpolated image obtained from the vertices of the meshes belonging to the mesh level of the mesh considered; stopping the refinement of the meshes having error information lower than a first predetermined threshold; implementation of a specific coding for the meshes presenting an error information higher than a second predetermined threshold; - Continuation of the refinement of the meshes having error information greater than said first predetermined threshold and less than said second predetermined threshold.
  • the hierarchical coding or with nested meshes, is the main coding, or basic coding, but it is not used systematically: for the image portions which require it, another more efficient coding is used.
  • the decision to use this specific coding is made by comparison with a threshold. More precisely, at each node considered in the tree representative of the hierarchical mesh, three possibilities are offered: stop the refinement, or the division, of the meshes (the quality reached for the corresponding image portion being sufficient), pass to the hierarchical level next, keeping the same hierarchical coding, or use another coding (in particular a coding better suited to highly textured portions).
  • said construction step implementing a hierarchical coding model comprises the following sub-steps: temporary normal projection of said vertices carrying said marker
  • Such a temporary normal projection of the vertices carrying the “incoming” marker on the edges of the image makes it possible to avoid taking account of pixels not belonging to the image, and therefore ensures the stability of the step of optimization of colorimetric and / or photometric information.
  • said specific coding comprises the following sub-steps: - construction of a symmetrized image, obtained by applying to said image an axial symmetry with respect to each of its edges and a central symmetry with respect to each of its corners; optimization of said colorimetric and / or photometric information of said vertices and / or of said faces of said symmetrized image by application of said alternative model (DCT, fractals, matching pursuit).
  • DCT fractals, matching pursuit
  • such a coding method implements a step of memorizing photometric and / or colorimetric information associated with the vertices and / or the faces emerging from said image.
  • the information relating to the zones leaving the image can be reused if such zones are brought to return to the image, without it being necessary to apply a new treatment to them.
  • Such a situation is frequent in a video sequence: it is for example the case of a decoration located in the background of a character followed by a camera, if the character goes back and forth in the image.
  • said construction step implements at least one iteration of the following successive sub-steps: - optimization of said colorimetric information and / or photometrics of said vertices of said "incoming" face, so as to minimize a predetermined error criterion; transmission to a terminal and / or storage on a data medium of said optimized colorimetric and / or photometric information.
  • the nodal photometric and / or colorimetric values of the incoming meshes are re-optimized, then transmitted and / or stored as long as they are not fully entered in the image.
  • said construction step implements at least one iteration of the following successive sub-steps: elaboration of a criterion making it possible to evaluating an image reconstruction quality obtained by taking into account the current photometric and / or colorimetric information of the vertices of said face; when said quality is not satisfactory: - optimization of said colorimetric and / or photometric information of said vertices of said face, so as to minimize a predetermined error criterion for reconstruction of the following image; transmission to a terminal and / or storage on a data medium of said optimized colorimetric and / or photometric information; transmission and / or storage of a tree of markers indicating to said terminal whether said colorimetric and / or photometric information of said vertices of said "incoming" face have been optimized or not.
  • the quality of the surface approximation obtained is thus estimated taking into account the available photometric and / or colorimetric nodal values, and optimization and transmission and / or storage of the optimized values are only practiced in the event of a significant error. .
  • Such a variant makes it possible to reduce the amount of information to be transmitted and / or stored.
  • the implementation of such an alternative embodiment requires the transmission and / or storage of a tree of markers, indicating, for example to the decoder, whether the photometry and / or the colorimetry of the incoming mesh is to be updated before rendering the image.
  • said step of estimating the movement further comprises a sub-step of constructing a tree of the motion vectors to be transmitted and / or stored, the belonging of a motion vector to said tree being determined from a criterion of relevance of the movement applied to said faces of said mesh.
  • a sub-step of constructing a tree of the motion vectors to be transmitted and / or stored the belonging of a motion vector to said tree being determined from a criterion of relevance of the movement applied to said faces of said mesh.
  • said relevance criterion results from a predetermined weighted combination of the following sub-criteria: a surface sub-criterion, making it possible to evaluate the ratio between the surface of a face and the average surface of the faces of said mesh belonging to the same level of said mesh pyramid; a compactness sub-criterion, making it possible to evaluate the relationship between the surface and the perimeter of a face of said mesh; a sub-criterion of antagonism of the movements, making it possible to evaluate the antagonism of the motion vectors of vertices of said mesh.
  • all the motion vectors of said vertices of said mesh are transmitted and / or stored, a suitable decoder identifying according to a predetermined criterion the vectors to be taken into account.
  • the vertex resulting from the fusion of the obscured vertex and the obscuring vertex is placed on the edge initially connecting the obscured vertex and the occulting vertex, for example in its middle.
  • such a coding method implements a step of detecting at least one area of said image obscured during movement of said mesh, and a step of storing photometric information and / or colorimetric relating to said obscured area, in view of possible future use, said information not being processed.
  • the invention also relates to a decoding method and to coding and decoding devices of a mesh representative of an image of an animated sequence, said mesh being of size larger than said image.
  • the invention also relates to a signal representative of a mesh representative of an image of an animated sequence, said mesh being of size larger than said image.
  • FIG. 1 already described above, illustrates the concept of field of motion
  • - Figure 2 commented above, describes an example of approximation of the field of motion of Figure 1 by interpolation or extrapolation of inter-nodal movements
  • FIG. 3, described above presents an example of mesh reversal, resulting from the existence of antagonistic motion vectors within the motion field presented in FIG. 1
  • FIG. 4, described above illustrates an exemplary embodiment of hierarchical transmission of information
  • FIG. 5 shows an example of the appearance of a zone of discovery and a zone of compaction of the mesh resulting from a movement within the image
  • FIG. 6 illustrates the construction of a mesh of dimension greater than that of the image
  • FIG. 7 presents an example of “interior” markers associated with certain faces and certain vertices of a mesh as illustrated in FIG. 6
  • FIG. 8 illustrates the implementation of a temporary normal projection of vertices during the stage of construction of colorimetric and / or photometric information
  • FIG. 9 shows an example of image symmetrization for the implementation of an alternative coding
  • FIG. 10 illustrates an example of propagation of the motion vectors from the vertices carrying the marker "interior” towards the other vertices of the mesh, with a view to a global displacement of all the vertices of the pyramid of mesh;
  • - Figure 11 presents an example of meshes carrying the marker "incoming" during several frames of information;
  • FIG. 12 illustrates a phenomenon of packing of meshes on a zone of occultation of the mesh;
  • FIG. 13 presents a first example of management of occultation phenomena by fusion of vertices;
  • FIG. 14 illustrates a second example of managing the occultation phenomena by implementing a 3-manifold mesh.
  • the invention therefore relates to an improvement in the motion estimation technique implementing a hierarchy of nested meshes (or hierarchical coding), as described in the preamble.
  • provision is in fact made for using a mesh of size greater than the images of the sequence.
  • An image 61 is described using a triangular mesh, consisting of a plurality of faces and vertices, which extends beyond the limits of image 61.
  • some vertices 611 are located at the 'inside the image 61, and other vertices 612 are placed outside the limits of the image 61.
  • such a mesh is a hierarchical mesh nested with infinite surface.
  • Figure 7 shows an example of marking the vertices and the faces of a mesh using an "interior" marker.
  • a vertex of the mesh 72 is "inside" at a given level of the mesh 72 if it belongs to an "inside" face of the level considered.
  • the vertex referenced 722 bears the indication IN because it belongs to the "interior" face referenced 721.
  • a vertex is "interior” (that is to say bears the indication IN in FIG. 7) while being outside of image 71.
  • the vertex referenced 723 is " interior "because it belongs to the” interior "face referenced 721, but it is exterior to image 71.
  • incoming marker
  • a vertex is “incoming” if it is “inside” and that its photometric information and / or colorimetric are undefined or unsatisfactory, that is to say if it is “inside” but it is located outside of image 71.
  • one face of the mesh 72 is “incoming "if at least one of its vertices is” incoming ". 2. Management of mesh stripping zones
  • the photometric and / or colorimetric information associated with the faces and / or the vertices of the mesh entering the image for the first time is updated, in order to of make a complete approximation of the photometric and / or colorimetric surface of the image.
  • Such an optimization notably consists in carrying out optimizations of luminance, chrominance and positions on each level of mesh. Then, for each mesh of the hierarchical mesh, a luminance difference between the image to be coded and an interpolated image is obtained, obtained from the vertices of the nested mesh to which the mesh considered belongs. Finally, we introduce into a binary train representative of the image the values (advantageously coded in differential compared to the previous hierarchical level) of positions, luminance and chrominance of the vertices of the meshes whose luminance difference is greater than a difference threshold.
  • the procedure is, according to the invention, a temporary normal projection of the vertices " entering "on the edges of the image, as illustrated in FIG. 8.
  • the vertices 821a, 822a and 823a of the representative mesh of the image 81 are projected onto the edges of the image at positions 821b, 822b, 823b.
  • the projected vertices 821b, 822b, 823b are returned to their initial position, respectively 821a, 822a and 823a, but they are associated with the optimized color and / or photometric information after projection.
  • the technique described in this patent application relates to a method of coding an image to be coded, comprising the following steps: definition of a hierarchical mesh having at least two nested mesh levels formed of meshes defined by vertices (which may be pixels of said image to be coded); - Determination, for each of said meshes, of error information between said image to be coded and an interpolated image obtained from the vertices of the meshes belonging to the mesh level of the mesh considered; stopping the refinement of the meshes having error information lower than a first predetermined threshold; implementation of a specific coding for the meshes presenting an error information higher than a second predetermined threshold; continuation of the refinement of the meshes having error information greater than said first predetermined threshold and less than said second predetermined threshold.
  • the hierarchical coding is the main coding, or basic coding, but it is not used systematically: for the image portions which require it, another more efficient coding is used (DCT, fractals, matching pursuit, etc.).
  • the images referenced 93, 95, 97 and 99 are thus obtained by applying to image 91 an axial symmetry with respect to each of the edges. of the image 91.
  • the images referenced 92, 94, 96 and 98 are images of the image 91 by central symmetry with respect to each of the vertices of the image 91.
  • Such propagation of the movement is, for example, implemented in a particular embodiment, according to the following algorithm: For all vertices S of L m if INTERIOR (S) then S becomes PROPAGATED otherwise S becomes non-PROPAGATED Iterate as long as there are undefined motion vectors For all vertices S of L m traveled from top-left to bottom- right
  • a scan 104 of the image 102 is carried out with the aim of propagating the movement from the bottom to the top of the image. We thus attribute to the referenced vertex
  • the "incoming" vertices of the mesh do not have photometric and / or colorimetric information, the latter being approximated from the photometric and / or colorimetric information available, associated with the portions of the "incoming" faces located inside the image.
  • a first alternative embodiment consists in optimizing this information at each data frame.
  • the nodal photometric and / or colorimetric values of the incoming faces 110 are reoptimized and transmitted and / or stored on a data medium each time the photometric and / or colorimetric surface of the image is approximated (i.e. at each instant t, t + 1, t + 2 and t + 3), as long as the incoming face 110 considered is not entirely included in the image 111.
  • a second alternative embodiment, less costly in terms of data transmission consists in establishing a quality criterion, and in comparing, with this criterion, the quality of the photometric and / or colorimetric approximation of the surface of the image, obtained in taking into account the current nodal photometric values of the incoming faces. If such a comparison reveals a significant error in the approximation of the image, one then proceeds to an optimization and a transmission and / or storage on a data carrier of the photometric and / or colorimetric information of the "incoming" vertices. If, on the other hand, the quality of the approximation of the image is satisfactory, the current photometric and / or colorimetric values are kept for the "incoming" vertices.
  • a tree of specific markers is also constructed, associated with the "incoming" vertices 112 to 114, making it possible to indicate to a decoder or to any other suitable terminal, whether the photometry and / or the colorimetry of the face " incoming "considered 110 must be updated before rendering image 111.
  • the motion vectors of the vertices belonging to the levels L 0 to L m of the mesh pyramid are all optimized.
  • presenting a reduced coding cost the whole is transmitted and / or stored on a data carrier motion vectors associated with the vertices of the settlement zone considered.
  • the relevance of the motion vectors with regard to the overall motion estimation of the image is then evaluated at the time of decoding of the image.
  • the "relevant" marker can take a TRUE value, when the movement of a vertex is relevant for the estimation of overall movement of the image, and must therefore be transmitted and / or stored on a data medium, or FALSE otherwise.
  • We build the relevance tree from the faces and vertices of the hierarchical mesh belonging to a level of the pyramid of mesh less than or equal to L m .
  • the value of the "relevant" marker is defined as follows:
  • RELEVANT (T) CP (T)> SP
  • Such a criterion is maximum and equal to 1 if T is equilateral, and it is zero if T is flat; a sub-criterion CA of antagonism of the movements of the vertices of the triangle considered.
  • Such a criterion is worth 1 if the movements of the vertices of T are antagonistic, that is to say in the presence of a potential mesh reversal, and 0 if they are of the same direction and direction. If Dl, D2 and D3 are the motion vectors of the vertices of T, then:
  • CP (T) [a * CS (T) + b * CC (T) + c * CA (T)] / [a + b + c] where a, b, and c are predetermined scalars.
  • the "relevant" marker of S is initialized to FALSE For all the triangles T of the mesh pyramid traversed from the levels L 0 to L m If CP (T)> SP m
  • the first method implemented according to the invention consists in detecting, at the time of decoding, the occultation zones determined by the faces 130, 133 of the mesh whose vertices 131, 132 have antagonistic motion vectors, according to the sub- CA criterion, as illustrated in FIG. 13. Indeed, the faces 130, 133 thus detected are liable to turn over because their vertices 131, 132 are positioned on different objects, one of the two objects obscuring its neighbor.
  • an edge fusion (in English "edge collapse") is then practiced between the two neighboring vertices 131, 132 having an antagonistic movement. This results in the disappearance of a triangle 130, 133, reflecting the disappearance of part of an object.
  • the vertex obtained by merging the vertices 131 and 132 is placed on the edge initially connecting the vertices 131 and 132, for example in the middle, or at the position of one of the two vertices 131 and 132, as illustrated in Figure 13, where the merged vertex is located in the position initially occupied by the vertex 132. 3.3.2.
  • N-manifold mesh A second method implemented according to the invention for managing the occultation phenomena of meshes consists in working on an n-manifold mesh, as illustrated in FIG. 14.
  • An n-manifold mesh is defined as a triangular mesh in which an edge can be shared by n triangles, where n ⁇ 2.
  • FIG. 14 presents an example of a 3-manifold mesh, in which the edge referenced 143 is common to the three triangles referenced 140, 141, and 142.
  • an motion is first estimated. of the image, without taking into account the "relevant" marker described above.
  • the triangles associated with this zone then become carriers of a marker "overlapped” (or in French “overlapped”).
  • the zones of the mesh carrying the "overlapped" marker mark the discoveries or the overlaps of meshes: they therefore correspond to occulted objects.
  • the method implemented in the particular embodiment described in this paragraph consists in temporarily removing the triangles carrying the "overlapped" marker, while keeping them in memory, so as to be able to manage their possible reappearance on the image.
  • n-manifold mesh advantageously makes it possible to conserve the photometric and / or colorimetric information associated with areas of the mesh which may disappear or appear repeatedly during the video sequence considered.

Abstract

The invention concerns motion estimation and compensation between two given images, represented by a polygonal mesh, and provides a solution to mesh crowding and unmasking when the mesh is moved. More precisely, the invention concerns a method for coding a mesh representing an animated sequence image. Such a mesh is larger in size than said image.

Description

Estimateur de mouvement pour le codage et le décodage de séquences d'images. Motion estimator for coding and decoding image sequences.
Le domaine de l'invention est celui du codage d'images ou de séquences d'images. Plus précisément, l'invention concerne l'estimation et la compensation du mouvement entre deux images données.The field of the invention is that of coding of images or sequences of images. More specifically, the invention relates to the estimation and compensation of the movement between two given images.
La notion de mouvement entre deux images d'une séquence est une notion bien connue dans la communauté scientifique et technique du traitement d'image. Celui-ci se définit comme le vecteur à deux dimensions caractérisant la différence de positions entre un point d'une image et le point homologue de l'autre image, sous l'hypothèse que ces points correspondent au même point physique dans chacune des deux images. L'attribution d'un vecteur déplacement à chaque point de l'image, ou pixel, définit donc un champ dense de mouvement sur l'image, ainsi qu'illustré en figure 1. L'ensemble 10 des N*M vecteurs obtenus pour une image de taille N*M s'appelle le champ de mouvement, ou flot optique, entre deux images 11 et 12 correspondant respectivement aux instants t et t+1.The concept of movement between two images of a sequence is a concept well known in the scientific and technical community of image processing. This is defined as the two-dimensional vector characterizing the difference in positions between a point of an image and the homologous point of the other image, on the assumption that these points correspond to the same physical point in each of the two images . The assignment of a displacement vector to each point of the image, or pixel, therefore defines a dense field of movement on the image, as illustrated in FIG. 1. The set 10 of the N * M vectors obtained for an image of size N * M is called the field of movement, or optical flow, between two images 11 and 12 corresponding respectively to the instants t and t + 1.
L'estimation du mouvement entre deux images (calcul d'un champ de déplacement ou de disparités entre deux images) trouve des applications dans tous les domaines de l'imagerie et du traitement d'image. On peut citer, à titre d'exemples, et de façon non restrictive : - le codage vidéo : le champ de mouvement est utilisé pour la prédiction d'une image à partir des images précédemment décodées. La représentation par maillage d'un tel champ est notamment définie dans différentes normes ou standards, tel que le standard MPEG-4. l'imagerie médicale : analyse du mouvement du corps humain, du cœur, etc. le suivi d'objets (par exemple dans le cadre du contrôle du trafic routier).The estimation of the movement between two images (calculation of a displacement field or of disparities between two images) finds applications in all fields of imagery and image processing. We can cite, by way of examples, and without limitation: - video coding: the motion field is used for the prediction of an image from the previously decoded images. The representation by mesh of such a field is notably defined in different norms or standards, such as the MPEG-4 standard. medical imagery: analysis of the movement of the human body, heart, etc. object tracking (for example in the context of road traffic control).
L'invention s'applique notamment au traitement des images bidimensionnelles (2D), mais également au traitement des images représentatives d'objets multidimensionnels (notamment 3D). Il existe à ce jour plusieurs techniques d'estimation de mouvement dans les séquences d'images.The invention applies in particular to the processing of two-dimensional (2D) images, but also to the processing of images representative of multidimensional objects (in particular 3D). To date, there are several motion estimation techniques in image sequences.
Une première technique consiste à calculer un champ dense de mouvement pour l'image, et à attribuer un vecteur de déplacement à chaque pixel. Une deuxième technique vise à calculer un vecteur déplacement par bloc rectangulaire de l'image.A first technique consists in calculating a dense field of motion for the image, and in assigning a displacement vector to each pixel. A second technique aims to calculate a displacement vector per rectangular block of the image.
Une troisième technique repose sur le calcul d'un modèle mathématique du mouvement par région, éventuellement de forme arbitraire, de l'image. Une telle technique met donc également en œuvre une segmentation de l'image en régions, correspondant par exemple aux différents objets vidéo constitutifs de la scène illustrée.A third technique is based on the calculation of a mathematical model of the movement by region, possibly of arbitrary shape, of the image. Such a technique therefore also implements a segmentation of the image into regions, corresponding for example to the various video objects constituting the illustrated scene.
Une dernière technique, décrite par exemple dans la demande de brevet FR 2 783 123 intitulée "Procédé d'estimation du mouvement entre deux images", consiste à calculer un champ défini par un modèle d'éléments finis. Un maillage est associé à l'image, et une fonction d'interpolation ou d'extrapolation permet de calculer la valeur du champ en chaque point de l'image, à l'intérieur de chacune des mailles, ainsi qu'illustré par la figure 2.A final technique, described for example in patent application FR 2 783 123 entitled "Method for estimating the movement between two images", consists in calculating a field defined by a finite element model. A mesh is associated with the image, and an interpolation or extrapolation function makes it possible to calculate the value of the field at each point of the image, inside each of the meshes, as illustrated by the figure. 2.
Cette technique repose par ailleurs sur la mise en œuvre d'une méthode différentielle, qui détermine les paramètres de mouvement par optimisation d'un critère mathématique de qualité (par exemple, une erreur quadratique entre l'image et sa valeur prédite par la compensation du mouvement). Une telle optimisation est réalisée à l'aide d'une méthode d'optimisation mathématique différentielle, dans le cas de critères possédant les propriétés mathématiques nécessaires (par exemple, un critère dérivable). Ainsi, on associe, par exemple, un maillage triangulaire à l'image 21. On optimise la valeur des vecteurs de mouvement des sommets référencés 22, 23 et 24 du maillage. Puis on réalise une interpolation (ou une extrapolation) afin de déterminer les vecteurs de mouvement des points ne correspondant pas à des sommets du maillage, tels que les points référencés 25 et 26 par exemple. Une telle méthode d'estimation de mouvement, reposant sur la mise en œuvre d'un maillage hiérarchique représentatif de l'image à coder, est particulièrement adaptée à la transmission progressive des données, et représente donc une solution avantageuse aux problèmes de saturation de bande passante et d'adaptabilité aux réseaux de communication, de natures et de capacités diverses. Cependant, une telle méthode rencontre certaines difficultés lors du suivi de mouvement.This technique is also based on the implementation of a differential method, which determines the movement parameters by optimization of a mathematical quality criterion (for example, a quadratic error between the image and its value predicted by the compensation of the movement). Such an optimization is carried out using a differential mathematical optimization method, in the case of criteria having the necessary mathematical properties (for example, a differentiable criterion). Thus, for example, a triangular mesh is associated with the image 21. The value of the motion vectors of the vertices referenced 22, 23 and 24 of the mesh is optimized. Then one carries out an interpolation (or an extrapolation) in order to determine the vectors of movement of the points not corresponding to vertices of the mesh, such as the points referenced 25 and 26 for example. Such a motion estimation method, based on the implementation of a hierarchical mesh representative of the image to be coded, is particularly suitable for the progressive transmission of data, and therefore represents an advantageous solution to the problems of band saturation. bandwidth and adaptability to communication networks, of different natures and capacities. However, such a method encounters certain difficulties when tracking movement.
Ainsi, un inconvénient de cette technique de l'art antérieur est qu'elle engendre des déplacements de mailles, entraînant des tassements ou des découvrements sur certaines zones de l'image, tel qu'illustré en figure 5. En effet, les maillages déformables définissent une représentation continue d'un champ de mouvement (c'est-à-dire que le maillage suit les objets en mouvement dans la scène), alors que le mouvement réel d'une séquence vidéo est de nature discontinue. Par conséquent, lorsqu'un objet se déplace par exemple de gauche à droite dans l'image 51, la zone de gauche 52, découverte par le déplacement de l'objet, représente une nouvelle information, et, de ce fait, n'est plus maillée. La zone de droite 53 supporte quant à elle un tassement de mailles. De même, lorsque différents plans et objets se recouvrent dans une scène, des zones d'occultation apparaissent, générant des lignes de discontinuité. Or, outre les informations de mouvement, les sommets du maillage sont aussi porteurs d'informations photométriques et/ou colorimétriques qui permettent de générer un champ photométrique et/ou colorimétrique, et donc d'approximer l'image. L'apparition de zones de découvrement non maillées correspond donc à l'entrée dans l'image de zones dont la photométrie et/ou la colorimétrie ne peut pas être approximée, c'est-à-dire de zones noires.Thus, a drawback of this technique of the prior art is that it generates displacements of meshes, causing settlement or uncovering on certain areas of the image, as illustrated in FIG. 5. In fact, the deformable meshes define a continuous representation of a movement field (that is to say that the mesh follows the moving objects in the scene), while the real movement of a video sequence is of a discontinuous nature. Consequently, when an object moves for example from left to right in the image 51, the left zone 52, discovered by the displacement of the object, represents new information, and, therefore, is not more meshed. The right-hand area 53 supports a compaction of meshes. Similarly, when different planes and objects overlap in a scene, occultation zones appear, generating lines of discontinuity. However, in addition to the movement information, the vertices of the mesh also carry photometric and / or colorimetric information which make it possible to generate a photometric and / or colorimetric field, and therefore to approximate the image. The appearance of non-meshed discovery areas therefore corresponds to the entry into the image of areas whose photometry and / or colorimetry cannot be approximated, that is to say black areas.
Les solutions généralement proposées pour compenser l'apparition de zones de découvrement non maillées, ou de zones de tassement, caractérisées par une redondance d'informations, consistent à forcer les nœuds du bord de l'image (par exemple le nœud référencé 511) à rester immobiles. Un inconvénient de cette technique de l'art antérieur est que l'approximation des zones entrantes est de qualité médiocre, en raison de l'étirement des mailles associées.The solutions generally proposed to compensate for the appearance of non-meshed discovery areas, or settlement areas, characterized by a redundancy of information, consist in forcing the nodes of the edge of the image (for example the node referenced 511) to stay still. A disadvantage of this technique of the prior art is that the approximation of the incoming zones is of poor quality, due to the stretching of the associated meshes.
Un autre inconvénient de cette technique de l'art antérieur est que l'estimation de mouvement est biaisée par la contrainte d'immobilité imposée aux nœuds des bords de l'image.Another disadvantage of this technique of the prior art is that the motion estimation is biased by the immobility constraint imposed on the nodes of the edges of the image.
Cette technique de l'art antérieur a encore pour inconvénient d'entraîner une sur-approximation trop coûteuse des zones sortant de l'image, correspondant aux zones de tassement des mailles. En effet, dans les zones de tassement, on obtient une sur-représentation du champ de mouvement, car un nombre trop élevé de mailles est utilisé pour réaliser l'approximation d'une portion réduite du champ de mouvement. Une telle sur-représentation ne nuit pas à la qualité d'approximation du champ de mouvement, mais engendre un surcoût de transmission. Une autre solution envisagée pour compenser l'apparition des zones de découvrement ou des zones de tassement du maillage consiste à insérer de nouveaux points sur les zones noires et à construire un maillage de Delaunay contraint.This technique of the prior art also has the drawback of causing an overly approximation of the areas leaving the image that is too costly, corresponding to the areas of compacting of the meshes. Indeed, in the settlement zones, one obtains an over-representation of the field of movement, because too many meshs are used to make the approximation of a reduced portion of the field of movement. Such an over-representation does not harm the quality of approximation of the field of motion, but generates an additional cost of transmission. Another solution envisaged to compensate for the appearance of the areas of uncovering or of areas of settlement of the mesh consists in inserting new points on the black areas and in constructing a constrained Delaunay mesh.
Un inconvénient de cette technique de l'art antérieur est qu'elle est coûteuse en temps et en débit de transmission et/ou de stockage d'informations.A disadvantage of this technique of the prior art is that it is costly in terms of time and speed of transmission and / or storage of information.
Un autre problème lié aux perturbations du champ de mouvement est l'apparition de retournement des mailles du maillage hiérarchique représentatif de l'image, ainsi qu'illustré en figure 3, lorsque certaines mailles 31, 32 se déplacent l'une par rapport à l'autre selon des vecteurs de mouvement antagonistes 33, 34. Plusieurs méthodes ont été envisagées pour pallier de tels retournements de mailles.Another problem linked to disturbances in the field of motion is the appearance of inversion of the meshes of the hierarchical mesh representative of the image, as illustrated in FIG. 3, when certain meshes 31, 32 move one relative to the 'other according to antagonistic motion vectors 33, 34. Several methods have been considered to overcome such reversals of meshes.
On a notamment envisagé de mettre en place des contraintes sur les différentes mailles, de façon à interdire les phénomènes de retournement.In particular, consideration has been given to placing constraints on the various meshes, so as to prohibit the phenomena of reversal.
On a également envisagé d'effectuer un post-traitement sur le maillage, qui peut être réalisé selon deux modes distincts. Un premier mode de réalisation d'un post-traitement consiste à appliquer les vecteurs de mouvement tels qu'estimés aux différents nœuds du maillage, puis à détecter les vecteurs de mouvement ayant entraîné l'apparition de défauts dans le maillage, et enfin à corriger leur valeur, de manière à compenser les phénomènes de retournement de mailles. Un second mode de réalisation d'un post-traitement consiste en un procédé itératif : à chaque itération, on applique une partie du déplacement estimé à chacun des nœuds du maillage, de façon à ne pas générer de retournement de mailles. Les itérations sont ensuite répétées jusqu'à ce qu'on obtienne une convergence du procédé. Cependant, les méthodes de post-traitement agissant après que les vecteurs de mouvement des différents nœuds du maillage ont été estimés, elles ne permettent pas une gestion optimale des retournements de mailles. En effet, dans les méthodes de post-traitement, les vecteurs de mouvement sont corrigés indépendamment de leur contribution à la minimisation de l'erreur de prédiction (par exemple de l'erreur quadratique entre l'image et sa valeur prédite par compensation de mouvement).One also envisaged to carry out a postprocessing on the mesh, which can be carried out according to two distinct modes. A first embodiment of a postprocessing consists in applying the motion vectors as estimated to the various nodes of the mesh, then in detecting the motion vectors having caused the appearance of defects in the mesh, and finally in correcting their value, so as to compensate for the mesh reversal phenomena. A second embodiment of a postprocessing consists of an iterative process: with each iteration, one applies a part of the estimated displacement to each of the nodes of the mesh, so as not to generate a reversal of meshes. The iterations are then repeated until a convergence of the process is obtained. However, the methods of postprocessing acting after the vectors of movement of the various nodes of the mesh were estimated, they do not allow an optimal management of the reversals of meshes. Indeed, in the post-processing methods, the motion vectors are corrected independently of their contribution to the minimization of the prediction error (for example of the quadratic error between the image and its value predicted by motion compensation ).
La technique décrite dans la demande de brevet française FR 99 15568 intitulée "Procédé d'estimation de mouvement entre deux images avec gestion de retournements de mailles et procédé de décodage correspondant" propose une solution au problème de retournement généré par l'estimateur de mouvement reposant sur la mise en œuvre d'un maillage hiérarchique.The technique described in French patent application FR 99 15568 entitled "Method for estimating movement between two images with management of mesh reversals and corresponding decoding method" offers a solution to the problem of reversal generated by the restrained motion estimator on the implementation of a hierarchical network.
Une telle technique consiste à entreprendre une optimisation initiale des vecteurs de mouvement du maillage, en laissant l'estimateur de mouvement créer d'éventuels retournements entre deux instants successifs tλ et tj, de manière à détecter les zones de discontinuité ainsi générées. Le procédé consiste alors à réaliser une nouvelle estimation du mouvement entre les instants tx et t2, en excluant les zones en défaut (c'est-à-dire les zones contenant au moins un retournement de maille), afin de minimiser l'erreur de prédiction entre les deux images correspondant aux instants tj et t^ considérés. Cette nouvelle estimation permet de déterminer les vecteurs de mouvement optimaux pour la zone continue de l'image (c'est-à-dire admettant une bijection entre tjet ^) et d'éviter ainsi que les valeurs des vecteurs de mouvement obtenus au cours de l'optimisation initiale ne soient perturbées par l'existence de zones de discontinuités. Les zones en défaut sont alors approximées par une méthode fréquentielle ou spatiale, lorsque le procédé est appliqué à la compression d'images par exemple, et exclues définitivement du procédé d'optimisation, lorsque la technique est appliquée au suivi d'objets vidéo par exemple.Such a technique consists in undertaking an initial optimization of the motion vectors of the mesh, by letting the motion estimator create possible reversals between two successive instants t λ and tj, so as to detect the discontinuity zones thus generated. The method then consists in carrying out a new estimation of the movement between the instants t x and t 2 , by excluding the faulty areas (that is to say the areas containing at least one mesh reversal), in order to minimize the prediction error between the two images corresponding to the instants t j and t ^ considered. This new estimation makes it possible to determine the optimal motion vectors for the continuous area of the image (that is to say admitting a bijection between t j and ^) and thus to avoid the values of the motion vectors obtained at during the initial optimization are not disturbed by the existence of discontinuity zones. The faulty areas are then approximated by a frequency or spatial method, when the method is applied to image compression for example, and permanently excluded from the optimization method, when the technique is applied to the monitoring of video objects for example .
Un inconvénient de cette technique de l'art antérieur est qu'elle ne permet pas de gérer l'apparition de zones de découvrements et de zones de tassement de mailles au cours d'une translation d'un objet au sein de l'image, telle que décrite ci-dessus.A drawback of this technique of the prior art is that it does not make it possible to manage the appearance of areas of discoveries and areas of compacting of meshes during a translation of an object within the image, as described above.
L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur. Plus précisément, un objectif de l'invention est de fournir une technique de codage d'images représentées à l'aide d'un maillage, permettant une estimation et une compensation du mouvement au sein de l'image.The invention particularly aims to overcome these drawbacks of the prior art. More specifically, an objective of the invention is to provide a technique for coding images represented using a mesh, allowing estimation and compensation of the movement within the image.
Un autre objectif de l'invention est de mettre en œuvre une technique de codage d'images permettant d'obtenir une bonne approximation de la surface photométrique et/ou colorimétrique de l'image, notamment pour les zones fortement texturées.Another objective of the invention is to implement an image coding technique making it possible to obtain a good approximation of the photometric and / or colorimetric surface of the image, in particular for highly textured areas.
L'invention a encore pour objectif de fournir une technique de codage d'image, simple et robuste.The invention also aims to provide a simple and robust image coding technique.
L'invention a également pour objectif de mettre en œuvre une technique de codage d'image adapté à tous les domaines dans lesquels le mouvement est estimé à l'aide de maillages, et notamment le domaine du codage vidéo (tel que les standards MPEG4 et H263+ par exemple).The invention also aims to implement an image coding technique suitable for all areas in which the movement is estimated using meshes, and in particular the field of video coding (such as the MPEG4 and H263 + for example).
Un autre objectif de l'invention est de fournir une technique de codage d'images présentant un coût de transmission de l'information réduit. Encore un autre objectif de l'invention est de mettre en œuvre une technique de codage d'image assurant une fluidité visuelle du déplacement de l'image.Another object of the invention is to provide a technique for coding images presenting a reduced cost of transmitting information. Yet another objective of the invention is to implement an image coding technique ensuring visual fluidity of the movement of the image.
L'invention a encore pour objectif de fournir une technique de codage d'images permettant de gérer efficacement l'apparition de zones de découvrement et ou de zones de tassement lors du déplacement des objets constitutifs de l'image.Another object of the invention is to provide an image coding technique making it possible to effectively manage the appearance of areas of discovery and or of settlement zones during the movement of the objects constituting the image.
L'invention a également pour objectif de mettre en œuvre une technique de codage d'images permettant de gérer les phénomènes de retournements et d'occultations de mailles. Un autre objectif de l'invention est de fournir une technique de codage d'images permettant de réduire la transmission et/ou le stockage des vecteurs de mouvement pour les zones de tassement de mailles.Another object of the invention is to implement an image coding technique making it possible to manage the phenomena of inversion and mesh concealment. Another object of the invention is to provide an image coding technique making it possible to reduce the transmission and / or storage of motion vectors for the areas of mesh settlement.
Encore un autre objectif de l'invention est de mettre en œuvre une technique de codage d'images permettant d'assurer la constance du rapport du débit de transmission de l'information sur le taux de distorsion de l'image.Yet another objective of the invention is to implement an image coding technique making it possible to ensure the consistency of the ratio of the information transmission rate to the image distortion rate.
Ces objectifs, ainsi que d'autres qui apparaîtront par la suite sont atteints, selon l'invention, à l'aide d'un procédé de codage d'un maillage représentatif d'une image d'une séquence animée, un tel maillage étant de taille supérieure à ladite image. Par image, on entend ici une image bidimensionnelle, ou une image multidimensionnelle, par exemple représentative d'un objet 3D.These objectives, as well as others which will appear subsequently, are achieved, according to the invention, using a method of coding a mesh representative of an image of an animated sequence, such a mesh being larger than said image. By image is meant here a two-dimensional image, or a multidimensional image, for example representative of a 3D object.
Ainsi, l'invention repose sur une approche tout à fait nouvelle et inventive de l'estimation et de la compensation de mouvement pour le codage et le décodage de séquences d'images, permettant la gestion des découvrements et des tassements de mailles lors du déplacement d'objets. En effet, l'invention propose notamment le codage d'un maillage de dimension supérieure à celle de l'image à laquelle il est associé, et va donc à l'encontre des préjugés de l'homme du métier, qui a toujours cherché à réduire la quantité d'informations à coder et à transmettre et/ou stocker sur un support de données. Il semble en effet tout à fait inutile, a priori, pour l'homme du métier de construire un maillage plus vaste que l'image, puisque aucune information n'est disponible au-delà des limites de l'image.Thus, the invention is based on a completely new and inventive approach to the estimation and compensation of movement for the coding and decoding of image sequences, allowing the management of discoveries and settlements of meshes during displacement. objects. Indeed, the invention in particular proposes the coding of a mesh of dimension greater than that of the image with which it is associated, and therefore goes against the prejudices of the skilled person, who has always sought to reduce the amount of information to be coded and transmitted and / or stored on a data carrier. It seems indeed completely useless, a priori, for those skilled in the art of constructing a mesh larger than the image, since no information is available beyond the limits of the image.
L'invention permet ainsi, lors d'un suivi de mouvement, de maintenir un maillage sur l'intégralité de chacune des images d'une séquence vidéo. Avantageusement, ladite image ayant une surface de N*M pixels, ledit maillage présente une surface d'au moins nN*nM pixels, n étant un entier supérieur ou égal à 2.The invention thus makes it possible, during motion tracking, to maintain a mesh over all of the images in a video sequence. Advantageously, said image having an area of N * M pixels, said mesh has an area of at least nN * nM pixels, n being an integer greater than or equal to 2.
L'invention prévoit idéalement d'utiliser un maillage de taille infinie. Par défaut, le maillage s'étend de part et d'autre de l'image, de manière à ce que sa surface soit au moins n fois supérieure à celle de l'image, où n est un entier suffisamment grand, défini préalablement à la mise en œuvre du procédé de codage selon l'invention.The invention ideally provides for using an infinite size mesh. By default, the mesh extends on either side of the image, so that its surface is at least n times greater than that of the image, where n is a sufficiently large integer, defined before the implementation of the coding method according to the invention.
Selon une première caractéristique avantageuse de l'invention, ledit maillage est un maillage hiérarchique présentant au moins deux niveaux de maillage emboîtés au sein d'une pyramide de maillage.According to a first advantageous characteristic of the invention, said mesh is a hierarchical mesh having at least two levels of mesh nested within a pyramid of mesh.
Ainsi, l'utilisation d'un maillage hiérarchique emboîté 41 permet d'obtenir un codage robuste, et réduit le coût de transmission et/ou de stockage de l'information. En effet, il existe une forte corrélation entre les informations portées par un nœud père et celles portées par ses nœuds fils au sein du maillage. De ce fait, on quantifie les valeurs des nœuds 42, 43 appartenant au niveau le plus haut de la pyramide de maillage (correspondant à un maillage grossier de l'image), en vue de leur transmission, par exemple vers un codeur, et/ou de leur stockage sur un support de données 45. En revanche, pour les niveaux inférieurs de la pyramide de maillage (correspondant à un maillage plus fin de l'image), on ne quantifie que les valeurs différentielles des nœuds fils 44, en vu de leur transmission et/ou de leur stockage, ainsi qu'illustré en figure 4.Thus, the use of a nested hierarchical mesh 41 makes it possible to obtain a robust coding, and reduces the cost of transmission and / or storage of information. Indeed, there is a strong correlation between the information carried by a parent node and that carried by its child nodes within the mesh. Therefore, the values of the nodes 42, 43 belonging to the highest level of the mesh pyramid (corresponding to a coarse mesh of the image) are quantified, with a view to their transmission, for example to an encoder, and / or their storage on a data carrier 45. On the other hand, for the lower levels of the pyramid of mesh (corresponding to a finer mesh of the image), only the differential values of the child nodes 44 are quantified, in view their transmission and / or storage, as illustrated in FIG. 4.
Selon une deuxième caractéristique avantageuse de l'invention, ledit maillage est un maillage triangulaire constitué d'un arrangement de sommets et de faces triangulaires, définies chacune par trois références aux sommets qu'elle relie, et présentant trois arêtes reliant chacune deux desdits sommets. L'invention s'applique bien sûr également à tout autre type de maillage polygonal, ayant éventuellement subi une triangulation préalable.According to a second advantageous characteristic of the invention, said mesh is a triangular mesh consisting of an arrangement of vertices and triangular faces, each defined by three references to the vertices which it connects, and having three edges each connecting two of said vertices. The invention is of course also applicable to any other type of polygonal mesh, which may have undergone prior triangulation.
Selon une technique avantageuse de l'invention, un tel procédé de codage associe à au moins certains des sommets et/ou certaines des faces dudit maillage au moins un des marqueurs suivants : un marqueur "intérieur", une face portant un marqueur "intérieur" si elle a une intersection non vide avec ladite image, et un sommet portant un marqueur "intérieur" s'il appartient à une face "intérieur" ; un marqueur "entrant", un sommet portant un marqueur "entrant" s'il porte un marqueur "intérieur" et qu'il est extérieur à l'image, et une face portant un marqueur "entrant" si au moins un des trois sommets qu'elle relie porte un marqueur "entrant".According to an advantageous technique of the invention, such a coding method associates with at least some of the vertices and / or some of the faces of said mesh at least one of the following markers: an "inside" marker, a face carrying an "inside" marker if it has a non-empty intersection with said image, and a vertex bearing an "interior" marker if it belongs to an "interior" face; an "incoming" marker, a vertex carrying an "incoming" marker if it has an "inside" marker and is outside the image, and a face carrying an "incoming" marker if at least one of the three vertices that it links carries an "incoming" marker.
L'introduction de tels marqueurs permet de différencier les sommets du maillage, et permet donc, lors de l'estimation de mouvement, d'appliquer un traitement adapté à chacun des sommets et/ou des faces du maillage, en fonction du marqueur qui lui est associé. Avantageusement, un tel procédé de codage met en œuvre la succession d'étapes suivantes : estimation du mouvement desdits sommets dudit maillage, entre deux images successives de ladite séquence ; construction d'informations colorimétriques et/ou photométriques destinées à des sommets et/ou des faces dudit maillage portant ledit marqueurThe introduction of such markers makes it possible to differentiate the vertices of the mesh, and therefore makes it possible, during the motion estimation, to apply a processing adapted to each of the vertices and / or of the faces of the mesh, according to the marker which it is associated. Advantageously, such a coding method implements the succession of following steps: estimation of the movement of said vertices of said mesh, between two successive images of said sequence; construction of colorimetric and / or photometric information intended for vertices and / or faces of said mesh carrying said marker
"entrant"."Incoming".
Une telle étape de construction peut être mise en œuvre selon l'approche proposée dans le document de brevet FR-98 12525 ayant pour titre « procédé de codage d'images fixes ou animées avec réduction et adaptation du débit ». Cette technique a pour objet un procédé de codage d'une image numérique, visant à produire un train binaire représentatif de cette image, la longueur du train binaire étant fonction de représentation voulue. Ce procédé comprend les étapes suivantes : définir, sur un domaine de l'image à coder, un maillage hiérarchique comportant une pluralité de maillages emboîtés dont les sommets de mailles peuvent être des pixels de ladite image ; réaliser les optimisations de luminance, chrominance, et positions sur chaque niveau de maillage ; déterminer, pour chaque maille dudit maillage hiérarchique, un écart de luminance entre l'image à coder et une image interpolée obtenue à partir des sommets du maillage emboîté auquel appartient la maille considérée, et introduire dans le train binaire les valeurs (avantageusement codées en différentiel par rapport au niveau hiérarchique précédent) de positions, de luminance et de chrominance des sommets des mailles dont l'écart de luminance est supérieur à un écart seuil.Such a construction step can be implemented according to the approach proposed in patent document FR-98 12525 having for title "coding process of still or moving images with reduction and adaptation of the bit rate". This technique relates to a method of coding an image digital, aimed at producing a binary train representative of this image, the length of the binary train being a function of desired representation. This method comprises the following steps: defining, on a domain of the image to be coded, a hierarchical mesh comprising a plurality of nested meshes whose mesh vertices can be pixels of said image; perform optimizations of luminance, chrominance, and positions on each mesh level; determine, for each mesh of said hierarchical mesh, a luminance difference between the image to be coded and an interpolated image obtained from the vertices of the nested mesh to which the mesh in question belongs, and introduce the values (advantageously differential coded) into the binary train compared to the preceding hierarchical level) of positions, luminance and chrominance of the vertices of the meshes whose luminance difference is greater than a threshold difference.
Selon cette technique, on construit au terme de l'étape de maillage, une structure en arbre quaternaire, associée au maillage hiérarchique, pour manipuler les valeurs (couleurs et positions) des sommets des mailles. L'arbre présente un nombre de nœuds égal au nombre de triangles dans le niveau de maillage correspondant. Chaque nœud de l'arbre se rapporte à un unique triangle du maillage hiérarchique.According to this technique, at the end of the meshing step, a quaternary tree structure, associated with the hierarchical mesh, is constructed to manipulate the values (colors and positions) of the vertices of the meshes. The tree presents a number of nodes equal to the number of triangles in the corresponding level of mesh. Each node of the tree relates to a single triangle of the hierarchical mesh.
Une fois cet arbre construit, on sélectionne les données de l'arbre à introduire dans le train binaire représentatif de l'image qui sera transmise et/ou stockée. Cette sélection dépend de la qualité voulue.Once this tree has been constructed, the data of the tree to be introduced into the bit stream representative of the image which will be transmitted and / or stored is selected. This selection depends on the desired quality.
Pour réaliser cette sélection, on calcule, pour chaque triangle, un écart de luminance entre l'image à coder et l'image interpolée à partir des sommets du maillage emboîté auquel appartient la maille considérée. Cet écart est ensuite comparé à un écart seuil pour chaque triangle. La valeur de l'écart seuil est fonction de la qualité de représentation voulue. On introduit ensuite dans le train binaire la partie de l'arbre se rapportant aux triangles dont l'écart de luminance est supérieur à l'écart seuil, qui permet donc de transmettre les données relatives à l'image en fonction de la qualité locale de ces différentes partitions triangulaires. Préférentiellement, ladite étape d'estimation comprend les sous-étapes suivantes : optimisation de vecteurs de mouvement des sommets dudit maillage portant ledit marqueur "intérieur", de manière à minimiser un critère d'erreur prédéterminé de reconstruction de l'image suivante ; - interpolation et/ou extrapolation de vecteurs de mouvement des sommets dudit maillage ne portant pas ledit marqueur "intérieur", afin de fluidifier le déplacement global dudit maillage.To make this selection, a luminance difference between the image to be coded and the interpolated image is calculated for each triangle from the vertices of the nested mesh to which the mesh in question belongs. This difference is then compared to a threshold difference for each triangle. The value of the threshold deviation depends on the quality of representation desired. The part of the tree relating to the triangles whose luminance difference is greater than the threshold difference is then introduced into the binary train, which therefore makes it possible to transmit the data relating to the image as a function of the local quality of these different triangular partitions. Preferably, said estimation step comprises the following sub-steps: optimization of motion vectors of the vertices of said mesh carrying said "interior" marker, so as to minimize a predetermined error criterion for reconstruction of the following image; - interpolation and / or extrapolation of motion vectors from the vertices of said mesh not carrying said "interior" marker, in order to fluidize the overall displacement of said mesh.
Ainsi, lors de l'estimation de mouvement, seules les mailles comprises au moins partiellement dans l'image (c'est-à-dire les faces du maillage portant le marqueur "intérieur") sont utilisées pour déterminer les vecteurs de mouvement. Les nœuds externes du maillage (c'est-à-dire les nœuds ne portant pas le marqueur "intérieur") perçoivent quant à eux des vecteurs de mouvement interpolés et/ou extrapolés. De cette façon, lorsque les vecteurs de mouvement sont appliqués au maillage, les effets de tassement disparaissent et les zones découvertes sont recouvertes par des mailles externes.Thus, during the motion estimation, only the meshes included at least partially in the image (that is to say the faces of the mesh carrying the "interior" marker) are used to determine the motion vectors. The external nodes of the mesh (that is to say the nodes not carrying the marker "interior") perceive meanwhile motion vectors interpolated and / or extrapolated. In this way, when the motion vectors are applied to the mesh, the settlement effects disappear and the areas discovered are covered by external meshes.
Selon un mode de réalisation préférentiel de l'invention, ladite étape d'interpolation et/ou d'extrapolation met en œuvre un double balayage itératif avant-arrière, appliqué aux sommets du plus bas niveau de ladite pyramide de maillage pour lequel lesdits vecteurs de mouvement desdits sommets ont été optimisés.According to a preferred embodiment of the invention, said interpolation and / or extrapolation step implements a double iterative front-back scanning, applied to the vertices of the lowest level of said grid pyramid for which said vectors movement of said vertices have been optimized.
En effet, seuls les sommets du maillage portant un marqueur "intérieur" possèdent un vecteur de mouvement significatif. Les sommets du maillage n'appartenant pas à l'image possèdent quant à eux un vecteur de mouvement indéfini. Un problème se pose donc lors de l'utilisation de ces vecteurs de mouvement pour mettre en œuvre un déplacement global de la pyramide de maillage. En effet, leur assigner un vecteur de mouvement nul risque d'engendrer des tassements de mailles au bord de l'image, et biaise la fluidité de déplacement de l'image, obtenue par optimisation globale des vecteurs de mouvement.Indeed, only the vertices of the mesh carrying an "interior" marker have a significant motion vector. The vertices of the mesh that do not belong to the image have an indefinite motion vector. A problem therefore arises when using these motion vectors to implement a global displacement of the pyramid of mesh. In fact, assigning them a zero motion vector risks generating settlement of meshes at the edge of the image, and biases the fluidity of displacement of the image, obtained by global optimization of the motion vectors.
L'invention prévoit donc de propager de façon artificielle les vecteurs de mouvement des sommets portant un marqueur "intérieur" vers les sommets ne portant pas de marqueur "intérieur", par la mise en œuvre d'un tel balayage itératif avant-arrière.The invention therefore provides for artificially propagating the motion vectors from the vertices carrying an "interior" marker to the vertices not carrying an "interior" marker, by implementing such an iterative front-rear scan.
Avantageusement, après ladite étape d'estimation, un tel procédé de codage met en œuvre une étape de déplacement de chacun des sommets dudit maillage, en lui appliquant son propre vecteur de mouvement.Advantageously, after said estimation step, such a coding method implements a step of moving each of the vertices of said mesh, by applying to it its own motion vector.
Selon une caractéristique avantageuse de l'invention, ladite étape de construction met en œuvre d'une part un modèle de codage par éléments finis, et d'autre part un modèle de codage alternatif, ce dernier étant mis en œuvre pour au moins certaines zones de ladite image, en fonction d'un critère d'erreur prédéterminé.According to an advantageous characteristic of the invention, said construction step implements on the one hand a finite element coding model, and on the other hand an alternative coding model, the latter being implemented for at least certain zones. of said image, according to a predetermined error criterion.
En effet, lorsqu'on met en œuvre un codage hiérarchique, par exemple tel que décrit dans la demande de brevet française FR 98 12525, et lorsqu'une portion de l'image est très texturée, il est alors nécessaire de prévoir un nombre de niveaux de maillage important pour obtenir des informations photométriques et/ou colorimétriques de qualité suffisante. Dans ce cas, le rendement du codage hiérarchique est faible. En d'autres termes, le codage hiérarchique est bien adapté aux images relativement simples, mais non aux images présentant des parties fortement texturées.Indeed, when implementing a hierarchical coding, for example as described in the French patent application FR 98 12525, and when a portion of the image is very textured, it is then necessary to provide a number of large mesh levels to obtain photometric and / or colorimetric information of sufficient quality. In this case, the efficiency of hierarchical coding is low. In other words, hierarchical coding is well suited for relatively simple images, but not for images with highly textured parts.
On a donc envisagé une nouvelle approche, décrite par exemple dans la demande de brevet française FR 99 06815 intitulée "Procédé de codage hiérarchique et mise en œuvre sélective d'un codage à base de transformation réversible, et procédé de décodage correspondant". Un tel procédé de codage d'une image à coder, comprend les étapes suivantes : définition d'un maillage hiérarchique présentant au moins deux niveaux de maillage emboîtés formés de mailles définies par des sommets (qui peuvent être des pixels de ladite image à coder) ; détermination, pour chacune desdites mailles, d'une information d'erreur entre ladite image à coder et une image interpolée obtenue à partir des sommets des mailles appartenant au niveau de maillage de la maille considérée ; arrêt du raffinement des mailles présentant une information d'erreur inférieure à un premier seuil prédéterminé ; mise en œuvre d'un codage spécifique pour les mailles présentant une information d'erreur supérieure à un second seuil prédéterminé ; - continuation du raffinement des mailles présentant une information d'erreur supérieure audit premier seuil prédéterminé et inférieure audit second seuil prédéterminé .We therefore envisaged a new approach, described for example in French patent application FR 99 06815 entitled "Hierarchical coding method and selective implementation of a coding based on reversible transformation, and corresponding decoding method". Such a method of coding an image to be coded comprises the following steps: definition of a hierarchical mesh having at least two nested mesh levels formed of meshes defined by vertices (which may be pixels of said image to be encoded); determination, for each of said meshes, of error information between said image to be coded and an interpolated image obtained from the vertices of the meshes belonging to the mesh level of the mesh considered; stopping the refinement of the meshes having error information lower than a first predetermined threshold; implementation of a specific coding for the meshes presenting an error information higher than a second predetermined threshold; - Continuation of the refinement of the meshes having error information greater than said first predetermined threshold and less than said second predetermined threshold.
Ainsi, selon ce procédé, on utilise sélectivement deux modes de codage distincts. Le codage hiérarchique, ou à maillages emboîtés, est le codage principal, ou codage de base, mais il n'est pas utilisé systématiquement : pour les portions d'image qui le nécessite, un autre codage plus efficace est utilisé.Thus, according to this method, two distinct coding modes are selectively used. The hierarchical coding, or with nested meshes, is the main coding, or basic coding, but it is not used systematically: for the image portions which require it, another more efficient coding is used.
La décision d'utiliser ce codage spécifique est prise par comparaison à un seuil. Plus précisément, à chaque nœud considéré de l'arbre représentatif du maillage hiérarchique, trois possibilités sont offertes : arrêter le raffinement, ou la division, des mailles (la qualité atteinte pour la portion d'image correspondante étant suffisante), passer au niveau hiérarchique suivant, en conservant le même codage hiérarchique, ou utiliser un autre codage (en particulier un codage mieux adapté aux portions très texturées).The decision to use this specific coding is made by comparison with a threshold. More precisely, at each node considered in the tree representative of the hierarchical mesh, three possibilities are offered: stop the refinement, or the division, of the meshes (the quality reached for the corresponding image portion being sufficient), pass to the hierarchical level next, keeping the same hierarchical coding, or use another coding (in particular a coding better suited to highly textured portions).
On notera qu'il est envisageable d'utiliser plusieurs types différents de codages spécifiques (ou un même codage avec des paramètres différents), pour adapter plus précisément encore le choix du codage aux caractéristiques de la portion d'image.Note that it is possible to use several different types of specific coding (or the same coding with different parameters), to adapt the choice of coding even more precisely to the characteristics of the image portion.
Selon un mode de réalisation préférentiel de l'invention, ladite étape de construction mettant en œuvre un modèle de codage hiérarchique, elle comprend les sous-étapes suivantes : projection normale temporaire desdits sommets portant ledit marqueurAccording to a preferred embodiment of the invention, said construction step implementing a hierarchical coding model, it comprises the following sub-steps: temporary normal projection of said vertices carrying said marker
"entrant" sur un bord de ladite image ; optimisation desdites informations colorimétriques et/ou photométriques desdits sommets et/ou desdites faces de ladite image, de façon à minimiser un critère d'erreur prédéterminé de reconstruction de l'image suivante ; repositionnement desdits sommets portant ledit marqueur "entrant" à leur position avant projection, lesdits sommets "entrant" étant porteurs desdites informations colorimétriques et/ou photométriques optimisées."entering" on an edge of said image; optimization of said colorimetric and / or photometric information of said vertices and / or of said faces of said image, so as to minimize a predetermined error criterion for reconstruction of the following image; repositioning of said vertices carrying said "incoming" marker to their position before projection, said "incoming" vertices carrying said optimized colorimetric and / or photometric information.
Une telle projection normale temporaire des sommets portant le marqueur "entrant" sur les bords de l'image permet d'éviter la prise en compte de pixels n'appartenant pas à l'image, et assure donc la stabilité de l'étape d'optimisation des informations colorimétriques et/ou photométriques.Such a temporary normal projection of the vertices carrying the “incoming” marker on the edges of the image makes it possible to avoid taking account of pixels not belonging to the image, and therefore ensures the stability of the step of optimization of colorimetric and / or photometric information.
Préférentiellement, ledit codage spécifique comprend les sous-étapes suivantes : - construction d'une image symétrisée, obtenue en appliquant à ladite image une symétrie axiale par rapport à chacun de ses bords et une symétrie centrale par rapport à chacun de ses coins ; optimisation desdites informations colorimétriques et/ou photométriques desdits sommets et/ou desdites faces de ladite image symétrisée par application dudit modèle alternatif (DCT, fractales, matching pursuit).Preferably, said specific coding comprises the following sub-steps: - construction of a symmetrized image, obtained by applying to said image an axial symmetry with respect to each of its edges and a central symmetry with respect to each of its corners; optimization of said colorimetric and / or photometric information of said vertices and / or of said faces of said symmetrized image by application of said alternative model (DCT, fractals, matching pursuit).
La projection normale des sommets "entrant" du maillage sur les bords de l'image n'étant pas adaptée à l'approximation de hautes fréquences telle que celle mise en œuvre par application du codage spécifique, on a envisagé de procéder à une symétrisation de l'image. Le traitement d'optimisation est ensuite effectué sur l'image symétrisée, et on apporte ainsi une solution au problème de la prise en compte de pixels n'appartenant pas à l'image.The normal projection of the "incoming" vertices of the mesh on the edges of the image not being suitable for the approximation of high frequencies such as that implemented by application of the specific coding, it was envisaged to carry out a symmetrization of the image. The optimization processing is then carried out on the symmetrized image, and a solution is thus provided to the problem of taking into account pixels not belonging to the image.
Selon une technique avantageuse de l'invention, un tel procédé de codage met en œuvre une étape de mémorisation d'informations photométriques et/ou colorimétriques associées aux sommets et/ou aux faces sortant de ladite image. Ainsi, les informations relatives aux zones sortant de l'image peuvent être réutilisées si de telles zones sont amenées à revenir dans l'image, sans qu'il soit nécessaire de leur appliquer un nouveau traitement. Une telle situation est fréquente dans une séquence vidéo : c'est par exemple le cas d'un décor situé en arrière-plan d'un personnage suivi par une caméra, si le personnage effectue des va-et-vient dans l'image.According to an advantageous technique of the invention, such a coding method implements a step of memorizing photometric and / or colorimetric information associated with the vertices and / or the faces emerging from said image. Thus, the information relating to the zones leaving the image can be reused if such zones are brought to return to the image, without it being necessary to apply a new treatment to them. Such a situation is frequent in a video sequence: it is for example the case of a decoration located in the background of a character followed by a camera, if the character goes back and forth in the image.
Selon une première variante avantageuse de l'invention, tant qu'une face dudit maillage porte le marqueur "entrant", ladite étape de construction met en œuvre au moins une itération des sous-étapes successives suivantes : - optimisation desdites informations colorimétriques et/ou photométriques desdits sommets de ladite face "entrant", de façon à minimiser un critère d'erreur prédéterminé ; transmission vers un terminal et/ou stockage sur un support de données desdites informations colorimétriques et/ou photométriques optimisées. Ainsi, les valeurs photométriques et/ou colorimétriques nodales des mailles entrantes sont ré-optimisées, puis transmises et/ou stockées tant qu'elles ne sont pas totalement entrées dans l'image.According to a first advantageous variant of the invention, as long as one face of said mesh carries the "incoming" marker, said construction step implements at least one iteration of the following successive sub-steps: - optimization of said colorimetric information and / or photometrics of said vertices of said "incoming" face, so as to minimize a predetermined error criterion; transmission to a terminal and / or storage on a data medium of said optimized colorimetric and / or photometric information. Thus, the nodal photometric and / or colorimetric values of the incoming meshes are re-optimized, then transmitted and / or stored as long as they are not fully entered in the image.
Selon une deuxième variante avantageuse de l'invention, tant qu'une face dudit maillage porte le marqueur "entrant", ladite étape de construction met en œuvre au moins une itération des sous-étapes successives suivantes : élaboration d'un critère permettant d'évaluer une qualité de reconstruction d'image obtenue en tenant compte des informations photométriques et/ou colorimétriques courantes des sommets de ladite face ; lorsque ladite qualité n'est pas satisfaisante : - optimisation desdites informations colorimétriques et/ou photométriques desdits sommets de ladite face, de façon à minimiser un critère d'erreur prédéterminé de reconstruction de l'image suivante ; transmission vers un terminal et/ou stockage sur un support de données desdites informations colorimétriques et/ou photométriques optimisées ; transmission et/ou stockage d'un arbre de marqueurs indiquant audit terminal si lesdits informations colorimétriques et/ou photométriques desdits sommets de ladite face "entrant" ont été ou non optimisées. On estime ainsi la qualité de l'approximation de surface obtenue en tenant compte des valeurs photométriques et/ou colorimétriques nodales disponibles, et on ne pratique une optimisation et une transmission et/ou un stockage des valeurs optimisées qu'en cas d'erreur importante. Une telle variante permet de réduire la quantité d'informations à transmettre et/ou à stocker. La mise en œuvre d'une telle variante de réalisation nécessite la transmission et/ou le stockage d'un arbre de marqueurs, indiquant, par exemple au décodeur, si la photométrie et/ou la colorimétrie de la maille entrante est à mettre à jour avant le rendu de l'image. Selon un premier mode de réalisation avantageux de l'invention, ladite étape d'estimation du mouvement comprend en outre une sous-étape de construction d'un arbre des vecteurs de mouvement à transmettre et/ou à stocker, l'appartenance d'un vecteur de mouvement audit arbre étant déterminée à partir d'un critère de pertinence du mouvement appliqué auxdites faces dudit maillage. En effet, dans les zones de tassement, on obtient une sur-représentation du champ de mouvement. Il est donc particulièrement avantageux de ne transmettre que certains des vecteurs de mouvement associés à de telles zones de tassement, de manière à réduire le coût de transmission et/ou de stockage d'informations.According to a second advantageous variant of the invention, as long as one face of said mesh carries the "incoming" marker, said construction step implements at least one iteration of the following successive sub-steps: elaboration of a criterion making it possible to evaluating an image reconstruction quality obtained by taking into account the current photometric and / or colorimetric information of the vertices of said face; when said quality is not satisfactory: - optimization of said colorimetric and / or photometric information of said vertices of said face, so as to minimize a predetermined error criterion for reconstruction of the following image; transmission to a terminal and / or storage on a data medium of said optimized colorimetric and / or photometric information; transmission and / or storage of a tree of markers indicating to said terminal whether said colorimetric and / or photometric information of said vertices of said "incoming" face have been optimized or not. The quality of the surface approximation obtained is thus estimated taking into account the available photometric and / or colorimetric nodal values, and optimization and transmission and / or storage of the optimized values are only practiced in the event of a significant error. . Such a variant makes it possible to reduce the amount of information to be transmitted and / or stored. The implementation of such an alternative embodiment requires the transmission and / or storage of a tree of markers, indicating, for example to the decoder, whether the photometry and / or the colorimetry of the incoming mesh is to be updated before rendering the image. According to a first advantageous embodiment of the invention, said step of estimating the movement further comprises a sub-step of constructing a tree of the motion vectors to be transmitted and / or stored, the belonging of a motion vector to said tree being determined from a criterion of relevance of the movement applied to said faces of said mesh. Indeed, in the settlement zones, an over-representation of the field of motion is obtained. It is therefore particularly advantageous to transmit only some of the motion vectors associated with such settlement zones, so as to reduce the cost of transmission and / or storage of information.
Préférentiellement, ledit critère de pertinence résulte d'une combinaison pondérée prédéterminée des sous-critères suivants : un sous-critère de surface, permettant d'évaluer le rapport entre la surface d'une face et la surface moyenne des faces dudit maillage appartenant au même niveau de ladite pyramide de maillage ; un sous-critère de compacité, permettant d'évaluer le rapport entre la surface et le périmètre d'une face dudit maillage ; un sous-critère d'antagonisme des mouvements, permettant d'évaluer l'antagonisme des vecteurs de mouvement de sommets dudit maillage.Preferably, said relevance criterion results from a predetermined weighted combination of the following sub-criteria: a surface sub-criterion, making it possible to evaluate the ratio between the surface of a face and the average surface of the faces of said mesh belonging to the same level of said mesh pyramid; a compactness sub-criterion, making it possible to evaluate the relationship between the surface and the perimeter of a face of said mesh; a sub-criterion of antagonism of the movements, making it possible to evaluate the antagonism of the motion vectors of vertices of said mesh.
Selon un second mode de réalisation avantageux de l'invention, tous les vecteurs de mouvement desdits sommets dudit maillage sont transmis et/ou stockés, un décodeur adapté identifiant selon un critère prédéterminé les vecteurs devant être pris en compte.According to a second advantageous embodiment of the invention, all the motion vectors of said vertices of said mesh are transmitted and / or stored, a suitable decoder identifying according to a predetermined criterion the vectors to be taken into account.
On réduit ainsi le coût du codage de l'image, puisque c'est au moment du décodage qu'on évalue la pertinence des vecteurs de mouvement transmis et/ou stockés. Selon une première technique avantageuse de l'invention, en présence d'une occultation d'au moins un sommet occulté par une face comprenant au moins un sommet occultant, on procède à une fusion dudit sommet occulté avec ledit sommet occultant.The cost of coding the image is thus reduced, since it is at the time of decoding that the relevance of the motion vectors transmitted and / or stored is evaluated. According to a first advantageous technique of the invention, in the presence of a concealment of at least one apex obscured by a face comprising at least one obscuring apex, one proceeds to a fusion of said obscured apex with said obscuring apex.
Le sommet résultant de la fusion du sommet occulté et du sommet occultant est placé sur l'arête reliant initialement le sommet occulté et le sommet occultant, par exemple en son milieu.The vertex resulting from the fusion of the obscured vertex and the obscuring vertex is placed on the edge initially connecting the obscured vertex and the occulting vertex, for example in its middle.
Selon une deuxième technique avantageuse de l'invention, un tel procédé de codage met en œuvre une étape de détection d'au moins une zone de ladite image occultée au cours d'un déplacement dudit maillage, et une étape de mémorisation d'informations photométriques et/ou colorimétriques relatives à ladite zone occultée, en vu d'un éventuel usage futur, lesdites informations n'étant pas traitées.According to a second advantageous technique of the invention, such a coding method implements a step of detecting at least one area of said image obscured during movement of said mesh, and a step of storing photometric information and / or colorimetric relating to said obscured area, in view of possible future use, said information not being processed.
L'invention concerne également un procédé de décodage et des dispositifs de codage et de décodage d'un maillage représentatif d'une image d'une séquence animée, ledit maillage étant de taille supérieure à ladite image.The invention also relates to a decoding method and to coding and decoding devices of a mesh representative of an image of an animated sequence, said mesh being of size larger than said image.
L'invention concerne encore un signal représentatif d'un maillage représentatif d'une image d'une séquence animée, ledit maillage étant de taille supérieure à ladite image.The invention also relates to a signal representative of a mesh representative of an image of an animated sequence, said mesh being of size larger than said image.
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : la figure 1, déjà décrite ci-dessus, illustre la notion de champ de mouvement ; - la figure 2, commentée ci-dessus, décrit un exemple d'approximation du champ de mouvement de la figure 1 par interpolation ou extrapolation des mouvements inter-nodaux ; la figure 3, décrite ci-dessus, présente un exemple de retournement de maille, résultant de l'existence de vecteurs de mouvement antagonistes au sein du champ de mouvement présenté en figure 1 ; la figure 4, décrite ci-dessus, illustre un exemple de réalisation de transmission hiérarchique de l'information ; la figure 5, décrite ci-dessus, présente un exemple d'apparition d'une zone de découvrement et d'une zone de tassement du maillage résultant d'un mouvement au sein de l'image ; la figure 6 illustre la construction d'un maillage de dimension supérieure à celle de l'image ; la figure 7 présente un exemple de marqueurs "intérieur" associés à certaines faces et certains sommets d'un maillage tel qu'illustré en figure 6 ; la figure 8 illustre la mise en œuvre d'une projection normale temporaire de sommets au cours de l'étape de construction d'informations colorimétriques et/ou photométriques ; la figure 9 présente un exemple de symétrisation de l'image en vue de la mise en œuvre d'un codage alternatif ; la figure 10 illustre un exemple de propagation des vecteurs de mouvement des sommets portant le marqueur "intérieur" vers les autres sommets du maillage, en vue d'un déplacement global de l'ensemble des sommets de la pyramide de maillage ; - la figure 11 présente un exemple de mailles portant le marqueur "entrant" pendant plusieurs trames d'informations ; la figure 12 illustre un phénomène de tassement de mailles sur une zone d'occultation du maillage ; la figure 13 présente un premier exemple de gestion des phénomènes d'occultation par fusion de sommets ; la figure 14 illustre un deuxième exemple de gestion des phénomènes d'occultation par mise en œuvre d'un maillage 3-manifold. 1. Principes de base de l'inventionOther characteristics and advantages of the invention will appear more clearly on reading the following description of an embodiment preferential, given by way of simple illustrative and nonlimiting example, and of the appended drawings, among which: FIG. 1, already described above, illustrates the concept of field of motion; - Figure 2, commented above, describes an example of approximation of the field of motion of Figure 1 by interpolation or extrapolation of inter-nodal movements; FIG. 3, described above, presents an example of mesh reversal, resulting from the existence of antagonistic motion vectors within the motion field presented in FIG. 1; FIG. 4, described above, illustrates an exemplary embodiment of hierarchical transmission of information; FIG. 5, described above, shows an example of the appearance of a zone of discovery and a zone of compaction of the mesh resulting from a movement within the image; FIG. 6 illustrates the construction of a mesh of dimension greater than that of the image; FIG. 7 presents an example of “interior” markers associated with certain faces and certain vertices of a mesh as illustrated in FIG. 6; FIG. 8 illustrates the implementation of a temporary normal projection of vertices during the stage of construction of colorimetric and / or photometric information; FIG. 9 shows an example of image symmetrization for the implementation of an alternative coding; FIG. 10 illustrates an example of propagation of the motion vectors from the vertices carrying the marker "interior" towards the other vertices of the mesh, with a view to a global displacement of all the vertices of the pyramid of mesh; - Figure 11 presents an example of meshes carrying the marker "incoming" during several frames of information; FIG. 12 illustrates a phenomenon of packing of meshes on a zone of occultation of the mesh; FIG. 13 presents a first example of management of occultation phenomena by fusion of vertices; FIG. 14 illustrates a second example of managing the occultation phenomena by implementing a 3-manifold mesh. 1. Basic principles of the invention
L'invention concerne donc une amélioration de la technique d'estimation de mouvement mettant en œuvre une hiérarchie de maillages emboîtés (ou codage hiérarchique), telle que décrite en préambule. Selon la présente invention, on prévoit en effet d'utiliser un maillage de taille supérieure aux images de la séquence.The invention therefore relates to an improvement in the motion estimation technique implementing a hierarchy of nested meshes (or hierarchical coding), as described in the preamble. According to the present invention, provision is in fact made for using a mesh of size greater than the images of the sequence.
On présente, en relation avec la figure 6, un mode de réalisation d'un maillage de dimensions supérieures à celles de l'image.We present, in relation to FIG. 6, an embodiment of a mesh of dimensions greater than those of the image.
Une image 61 est décrite à l'aide d'un maillage triangulaire, constitué d'une pluralité de faces et de sommets, qui s'étend au-delà des limites de l'image 61. Ainsi, certains sommets 611 sont situés à l'intérieur de l'image 61, et d'autres sommets 612 sont placés à l'extérieur des limites de l'image 61. Idéalement, un tel maillage est un maillage hiérarchique emboîté de surface infinie.An image 61 is described using a triangular mesh, consisting of a plurality of faces and vertices, which extends beyond the limits of image 61. Thus, some vertices 611 are located at the 'inside the image 61, and other vertices 612 are placed outside the limits of the image 61. Ideally, such a mesh is a hierarchical mesh nested with infinite surface.
Par ailleurs, on introduit la notion de marqueurs, associés aux faces et/ou aux sommets du maillage, en vue de réduire le débit de transmission d'informations nécessaires au codage. La figure 7 présente un exemple de marquage des sommets et des faces d'un maillage à l'aide d'un marqueur "intérieur".Furthermore, the concept of markers, associated with the faces and / or the vertices of the mesh, is introduced, with a view to reducing the data transmission rate necessary for coding. Figure 7 shows an example of marking the vertices and the faces of a mesh using an "interior" marker.
On considère l'image 71 représentée à l'aide d'un maillage 72. Chaque sommet et/ou face de la hiérarchie de maillage 72 est, ou non, marqué(e) au moyen d'un marqueur "intérieur" (indiqué par les deux lettres IN sur la figure 7) selon qu'il se situe à l'intérieur ou à l'extérieur de l'image 71. Plus précisément, une face du maillage est "intérieur" si elle possède une intersection non vide (en nombre de pixels) avec l'image 71. Ainsi, la face référencée 721 porte l'indication IN sur la figure 7.Consider image 71 represented using a mesh 72. Each vertex and / or face of the hierarchy of mesh 72 is, or is not, marked by means of an "interior" marker (indicated by the two letters IN in FIG. 7) depending on whether it is located inside or outside of image 71. More precisely, a face of the mesh is "inside" if it has a non-empty intersection (in number of pixels) with the image 71. Thus, the face referenced 721 bears the indication IN in FIG. 7.
Un sommet du maillage 72 est "intérieur" à un niveau donné du maillage 72 s'il appartient à une face "intérieur" du niveau considéré. Ainsi, le sommet référencé 722 porte l'indication IN car il appartient à la face "intérieur" référencée 721.A vertex of the mesh 72 is "inside" at a given level of the mesh 72 if it belongs to an "inside" face of the level considered. Thus, the vertex referenced 722 bears the indication IN because it belongs to the "interior" face referenced 721.
Il se peut donc qu'un sommet soit "intérieur" (c'est-à-dire porte l'indication IN sur la figure 7) tout en étant en dehors de l'image 71. Par exemple, le sommet référencé 723 est "intérieur" car il appartient à la face "intérieur" référencée 721, mais il est extérieur à l'image 71.It is therefore possible that a vertex is "interior" (that is to say bears the indication IN in FIG. 7) while being outside of image 71. For example, the vertex referenced 723 is " interior "because it belongs to the" interior "face referenced 721, but it is exterior to image 71.
On définit également un marqueur "entrant", qui peut être associé à une face et/ou à un sommet du maillage hiérarchique 72. On considère qu'un sommet est "entrant" s'il est "intérieur" et que ses informations photométriques et/ou colorimétriques sont indéfinies ou insatisfaisantes, c'est-à-dire s'il est "intérieur" mais qu'il est situé en dehors de l'image 71. On considère par ailleurs qu'une face du maillage 72 est "entrant" si l'un au moins de ses sommets est "entrant". 2. Gestion des zones de découyrement de maillageWe also define an "incoming" marker, which can be associated with a face and / or a vertex of the hierarchical mesh 72. We consider that a vertex is "incoming" if it is "inside" and that its photometric information and / or colorimetric are undefined or unsatisfactory, that is to say if it is "inside" but it is located outside of image 71. We also consider that one face of the mesh 72 is "incoming "if at least one of its vertices is" incoming ". 2. Management of mesh stripping zones
2.1. Description algorithmique A chaque estimation du mouvement de l'image considérée, tous les sommets du maillage portant le marqueur "intérieur" sont utilisés pour déterminer les vecteurs de mouvement optimaux du maillage. Les vecteurs de mouvement des sommets voisins, ne portant pas le marqueur "intérieur", sont alors interpolés ou extrapolés, afin de rendre le déplacement du maillage plus fluide. On peut bien sûr envisager que certains vecteurs de mouvement soient interpolés, et que d'autres vecteurs de mouvement soient extrapolés.2.1. Algorithmic description At each estimation of the movement of the image considered, all the vertices of the mesh carrying the "interior" marker are used to determine the optimal motion vectors of the mesh. The motion vectors of the neighboring vertices, not carrying the "interior" marker, are then interpolated or extrapolated, in order to make the displacement of the mesh more fluid. It can of course be envisaged that certain motion vectors are interpolated, and that other motion vectors are extrapolated.
Par ailleurs, on met à jour les informations photométriques et/ou colorimétriques associées aux faces et/ou aux sommets du maillage entrant pour la première fois dans l'image (c'est-à-dire portant le marqueur "entrant"), afin de réaliser une approximation complète de la surface photométrique et/ou colorimétrique de l'image.In addition, the photometric and / or colorimetric information associated with the faces and / or the vertices of the mesh entering the image for the first time (that is to say bearing the marker "entering") is updated, in order to of make a complete approximation of the photometric and / or colorimetric surface of the image.
2.2. Approximation photométrique et/ou colorimétrique de la surface de limage par éléments finis Une telle étape de construction des informations photométriques et/ou colorimétriques des faces et/ou des sommets "entrant" du maillage met en œuvre une optimisation par modèle d'éléments finis, selon le procédé de codage décrit dans la demande de brevet FR 99 06815 intitulée "Procédé de codage hiérarchique et mise en œuvre sélective d'un codage à base de transformation réversible et procédé de décodage correspondant".2.2. Photometric and / or colorimetric approximation of the image surface by finite elements Such a step of constructing photometric and / or colorimetric information of the faces and / or vertices "entering" the mesh implements an optimization by finite element model, according to the coding method described in patent application FR 99 06815 entitled "Hierarchical coding method and selective implementation of a coding based on reversible transformation and corresponding decoding method".
Une telle optimisation consiste notamment à réaliser des optimisations de luminance, de chrominance et de positions sur chaque niveau de maillage. On détermine ensuite, pour chaque maille du maillage hiérarchique, un écart de luminance entre l'image à coder et une image interpolée, obtenue à partir des sommets du maillage emboîté auquel appartient la maille considérée. Enfin, on introduit dans un train binaire représentatif de l'image les valeurs (avantageusement codées en différentiel par rapport au niveau hiérarchique précédent) de positions, de luminance et de chrominance des sommets des mailles dont l'écart de luminance est supérieur à un écart seuil. Afin d'éviter de prendre en compte des pixels n'appartenant pas à l'image, et donc de réaliser une meilleure optimisation des informations colorimétriques et/ou photométriques, on procède, selon l'invention, à une projection normale temporaire des sommets "entrant" sur les bords de l'image, ainsi qu'illustré en figure 8. Ainsi, les sommets 821a, 822a et 823a du maillage représentatif de l'image 81 sont projetés sur les bords de l'image aux positions 821b, 822b, 823b.Such an optimization notably consists in carrying out optimizations of luminance, chrominance and positions on each level of mesh. Then, for each mesh of the hierarchical mesh, a luminance difference between the image to be coded and an interpolated image is obtained, obtained from the vertices of the nested mesh to which the mesh considered belongs. Finally, we introduce into a binary train representative of the image the values (advantageously coded in differential compared to the previous hierarchical level) of positions, luminance and chrominance of the vertices of the meshes whose luminance difference is greater than a difference threshold. In order to avoid taking into account pixels not belonging to the image, and therefore to achieve better optimization of the colorimetric and / or photometric information, the procedure is, according to the invention, a temporary normal projection of the vertices " entering "on the edges of the image, as illustrated in FIG. 8. Thus, the vertices 821a, 822a and 823a of the representative mesh of the image 81 are projected onto the edges of the image at positions 821b, 822b, 823b.
Lorsque certaines faces du maillage, après projection, ne contiennent plus de pixel (c'est-à-dire qu'on obtient des faces vides après projection), elles ne sont pas prises en compte pour l'optimisation des informations de colorimétrie et/ou de photométrie. Les sommets de ces faces vides sont cependant pris en compte au cours de l'optimisation des informations colorimétriques et/ou photométriques associées aux aces voisines du maillage.When certain faces of the mesh, after projection, do not contain any more pixels (i.e. one obtains empty faces after projection), they are not taken into account for the optimization of the information of colorimetry and / or photometry. The vertices of these empty faces are however taken into account at during the optimization of colorimetric and / or photometric information associated with neighboring aces of the mesh.
Après une telle optimisation, les sommets projetés 821b, 822b, 823b sont replacés à leur position initiale, respectivement 821a, 822a et 823a, mais on leur associe les informations colorimétriques et/ou photométriques optimisées après projection.After such an optimization, the projected vertices 821b, 822b, 823b are returned to their initial position, respectively 821a, 822a and 823a, but they are associated with the optimized color and / or photometric information after projection.
2.3. Approximation photométrique et/ou colorimétrique des zones texturées de l'image2.3. Photometric and / or colorimetric approximation of the textured areas of the image
2.3.1. Mise en œuvre d'un codage spécifique L'approximation par éléments finis telle que décrite ci-dessus est bien adaptée aux images lisses. En revanche, lorsque des portions de l'image sont très texturées, il est nécessaire de mettre en œuvre un nombre élevé de niveaux du maillage hiérarchique, pour obtenir une approximation de surface satisfaisante. Le rendement du codage hiérarchique devient alors faible. Pour pallier cet inconvénient, on a envisagé, dans la demande de brevet française n° FR 99 06815 intitulée "Procédé de codage hiérarchique et mise en œuvre sélective d'un codage à base de transformation réversible et procédé de décodage correspondant", de recourir à un modèle alternatif sur la partie résiduelle des zones texturées.2.3.1. Implementation of a specific coding The finite element approximation as described above is well suited to smooth images. On the other hand, when portions of the image are very textured, it is necessary to implement a high number of levels of the hierarchical mesh, to obtain a satisfactory surface approximation. The hierarchical coding efficiency then becomes low. To overcome this drawback, it has been envisaged, in French patent application No. FR 99 06815 entitled "Hierarchical coding method and selective implementation of a coding based on reversible transformation and corresponding decoding method", to resort to an alternative model on the residual part of the textured zones.
La technique décrite dans cette demande de brevet, et déjà rappelée ci- dessus, concerne un procédé de codage d'une image à coder, comprenant les étapes suivantes : définition d'un maillage hiérarchique présentant au moins deux niveaux de maillage emboîtés formés de mailles définies par des sommets (qui peuvent être des pixels de ladite image à coder) ; - détermination, pour chacune desdites mailles, d'une information d'erreur entre ladite image à coder et une image interpolée obtenue à partir des sommets des mailles appartenant au niveau de maillage de la maille considérée ; arrêt du raffinement des mailles présentant une information d'erreur inférieure à un premier seuil prédéterminé ; mise en œuvre d'un codage spécifique pour les mailles présentant une information d'erreur supérieure à un second seuil prédéterminé ; continuation du raffinement des mailles présentant une information d'erreur supérieure audit premier seuil prédéterminé et inférieure audit second seuil prédéterminé.The technique described in this patent application, and already recalled above, relates to a method of coding an image to be coded, comprising the following steps: definition of a hierarchical mesh having at least two nested mesh levels formed of meshes defined by vertices (which may be pixels of said image to be coded); - Determination, for each of said meshes, of error information between said image to be coded and an interpolated image obtained from the vertices of the meshes belonging to the mesh level of the mesh considered; stopping the refinement of the meshes having error information lower than a first predetermined threshold; implementation of a specific coding for the meshes presenting an error information higher than a second predetermined threshold; continuation of the refinement of the meshes having error information greater than said first predetermined threshold and less than said second predetermined threshold.
Ainsi, selon une telle technique, on utilise sélectivement deux modes de codage distincts. Le codage hiérarchique, ou à maillages emboîtés, est le codage principal, ou codage de base, mais il n'est pas utilisé systématiquement : pour les portions d'image qui le nécessite, un autre codage plus efficace est utilisé (DCT, fractales, matching pursuit, etc).Thus, according to such a technique, two distinct coding modes are selectively used. The hierarchical coding, or with nested meshes, is the main coding, or basic coding, but it is not used systematically: for the image portions which require it, another more efficient coding is used (DCT, fractals, matching pursuit, etc.).
On choisit donc, selon l'invention, d'adopter une approche similaire à celle décrite dans la demande de brevet française FR 99 06815, et de mettre en œuvre un codage spécifique pour les zones très texturées de l'image. 2.3.2. Symétrisation de l'imageWe therefore choose, according to the invention, to adopt an approach similar to that described in French patent application FR 99 06815, and to implement specific coding for the highly textured areas of the image. 2.3.2. Image symmetry
La mise en œuvre d'une projection des sommets "entrant" du maillage, préalablement à l'optimisation des informations photométriques et/ou colorimétriques, n'est pas adaptée à l'utilisation d'un tel codage spécifique. En effet, une telle opération de projection des sommets dénature fortement l'approximation des hautes fréquences de l'image.The implementation of a projection of the "incoming" vertices of the mesh, prior to the optimization of the photometric and / or colorimetric information, is not suitable for the use of such specific coding. Indeed, such an operation of projection of the vertices strongly distorts the approximation of the high frequencies of the image.
On a donc pensé à opérer une symétrisation de l'image, ainsi qu'illustré en figure 9. Les images référencées 93, 95, 97 et 99 sont ainsi obtenues en appliquant à l'image 91 une symétrie axiale par rapport à chacun des bords de l'image 91. Les images référencées 92, 94, 96 et 98 sont quant à elles des images de l'image 91 par symétrie centrale par rapport à chacun des sommets de l'image 91.We therefore thought of operating a symmetrization of the image, as illustrated in FIG. 9. The images referenced 93, 95, 97 and 99 are thus obtained by applying to image 91 an axial symmetry with respect to each of the edges. of the image 91. The images referenced 92, 94, 96 and 98 are images of the image 91 by central symmetry with respect to each of the vertices of the image 91.
On procède ensuite à une optimisation des informations photométriques et/ou colorimétriques à partir de l'image 90, obtenues par regroupement des images référencées 91 à 99. On solutionne ainsi le problème des pixels des facesOne then proceeds to an optimization of the photometric and / or colorimetric information from the image 90, obtained by regrouping of the images referenced 91 to 99. One thus solves the problem of the pixels of the faces
"entrant" du maillage, extérieurs à l'image. On applique donc un traitement similaire à toutes les faces "entrant" du maillage. 2.4. Estimation de mouvement"incoming" of the mesh, outside the image. One thus applies a treatment similar to all the “entering” faces of the mesh. 2.4. Motion estimation
2.4.1. Estimation de mouvement des sommets "intérieur" On procède, pour l'estimation de mouvement, selon une technique similaire à celle décrite au paragraphe 2.2 pour l'approximation de surface par éléments finis. L'estimation de mouvement est donc réalisée sur les faces et les sommets du maillage portant le marqueur "intérieur". Les sommets "entrant" sont temporairement projetés normalement sur les bords de l'image, on procède ensuite à une optimisation des vecteurs de mouvement des sommets du maillage, puis, les sommets "entrant" projetés retrouvent leur position initiale avant projection. 2.4.2. Propagation du mouvement2.4.1. Estimation of motion of the "interior" vertices We proceed, for the estimation of motion, according to a technique similar to that described in paragraph 2.2 for the surface approximation by finite elements. The motion estimation is therefore carried out on the faces and the vertices of the mesh carrying the "interior" marker. The "incoming" vertices are temporarily projected normally on the edges of the image, one then proceeds to an optimization of the motion vectors of the vertices of the mesh, then, the "incoming" vertices projected return to their initial position before projection. 2.4.2. Propagation of movement
Seuls les sommets du maillage portant le marqueur "intérieur" possèdent un vecteur de mouvement significatif. Il faut donc déterminer la valeur à attribuer aux vecteurs de mouvement des sommets ne portant pas le marqueur "intérieur", afin de pouvoir les utiliser lors du déplacement global de la pyramide de maillage. Attribuer des vecteurs de mouvement nuls aux sommets non "intérieur" entraîne en effet l'apparition de zones de tassement de mailles, et altère la fluidité du déplacement déterminé par optimisation globale des vecteurs de mouvement.Only the vertices of the mesh carrying the "interior" marker have a significant motion vector. It is thus necessary to determine the value to be allotted to the vectors of movement of the vertices not carrying the marker “interior”, in order to be able to use them during the total displacement of the pyramid of mesh. Assigning null motion vectors to vertices that are not "interior" indeed causes the appearance of mesh settlement zones, and alters the fluidity of the displacement determined by global optimization of motion vectors.
On a donc envisagé d'adopter une approche inspirée de celle des calculs de carte de distance de chanfrein, telle que décrite dans le document de thèse de l'université Joseph Fourier de Grenoble, soutenue le 21 septembre 1994 par Edouard Thiel et intitulée "Les distances de chanfrein en analyse d'images : fondements et applications". Une telle approche consiste à propager les vecteurs de mouvement des sommets "intérieur" vers les sommets non "intérieur", en appliquant un double balayage itératif avant-arrière aux sommets du plus bas niveau de la pyramide de maillage, noté Lm, où les vecteurs de mouvement ont été optimisés. On évite ainsi les étirements de mailles, en permettant l'insertion de zones entrantes dans l'image, et les tassements de mailles, en évitant l'exclusion des zones sortantes.We therefore considered adopting an approach inspired by that of the chamfer distance map calculations, as described in the thesis document of the Joseph Fourier University of Grenoble, defended on September 21, 1994 by Edouard Thiel and entitled "Les chamfer distances in image analysis: foundations and applications ". Such an approach consists in propagating the motion vectors from the "inside" vertices towards the non "inside" vertices, by applying a double iterative front-back scanning to the vertices of the lowest level of the mesh pyramid, noted L m , where the motion vectors have been optimized. This avoids stretching of meshes, by allowing the insertion of incoming zones in the image, and compaction of meshes, avoiding the exclusion of outgoing zones.
Une telle propagation du mouvement est, par exemple, mise en œuvre dans un mode de réalisation particulier, selon l'algorithme suivant : Pour tous les sommets S de Lm si INTÉRIEUR(S) alors S devient PROPAGATED sinon S devient non-PROPAGATED Itérer tant qu'il reste des vecteurs de mouvement indéfinis Pour tous les sommets S de Lm parcourus de haut-gauche vers bas-droiteSuch propagation of the movement is, for example, implemented in a particular embodiment, according to the following algorithm: For all vertices S of L m if INTERIOR (S) then S becomes PROPAGATED otherwise S becomes non-PROPAGATED Iterate as long as there are undefined motion vectors For all vertices S of L m traveled from top-left to bottom- right
Si non-PROPAGATED(S) et S possède au moins 2 voisins PROPAGATED Alors MOUVEMENT(S)=moyenne des MOUVEMENTS des voisins PROPAGATED S devient PROPAGATED Pour tous les sommets P de la pyramide parcourue de Lm.! à L0 MOUVEMENT(P)=MOUVEMENT(F) tel que P est père de FIf non-PROPAGATED (S) and S has at least 2 neighbors PROPAGATED Then MOTION (S) = average of the MOVEMENTS of neighbors PROPAGATED S becomes PROPAGATED For all the vertices P of the traversed pyramid of Lm. ! at L 0 MOVEMENT (P) = MOTION (F) such that P is father of F
On présente, en relation avec la figure 10, un exemple de mise en œuvre d'un tel algorithme. On considère le maillage 101 représentatif de l'image 102. Tous les sommets "intérieur" de l'image 102 sont affectés d'un vecteur de mouvement optimisé, représenté par une flèche. On procède alors à un balayage 103 de l'image visant à propager le mouvement du haut vers le bas de l'image 102. Les sommets 1010 et 1011 du maillage 101 sont "intérieur" : leurs vecteurs de mouvement respectifs sont donc optimisés. Selon l'algorithme présenté ci- dessus, le sommet référencé 1012 du maillage 101 ayant les sommets référencés 1010 et 1011 pour voisins, on lui attribue un vecteur de mouvement, obtenu en faisant la moyenne des vecteurs de mouvement des sommets référencés 1010 et 1011.An example of the implementation of such an algorithm is presented in relation to FIG. 10. We consider the mesh 101 representative of image 102. All the "inside" vertices of image 102 are assigned an optimized motion vector, represented by an arrow. We then proceed to a scan 103 of the image aimed at propagating the movement from top to bottom of the image 102. The vertices 1010 and 1011 of the mesh 101 are "inside": their respective motion vectors are therefore optimized. According to the algorithm presented above, the vertex referenced 1012 of the mesh 101 having the vertices referenced 1010 and 1011 for neighbors, a motion vector is assigned to it, obtained by averaging the motion vectors of the vertices referenced 1010 and 1011.
On procède ensuite à un balayage 104 de l'image 102 visant à propager le mouvement du bas vers le haut de l'image. On attribue ainsi au sommet référencéNext, a scan 104 of the image 102 is carried out with the aim of propagating the movement from the bottom to the top of the image. We thus attribute to the referenced vertex
1014 un vecteur de mouvement obtenu en moyennant les vecteurs de mouvement de ses sommets voisins, référencés 1012 et 1013, dont les vecteurs de mouvement avaient été déterminés au cours du premier balayage 103.1014 a motion vector obtained by averaging the motion vectors of its neighboring vertices, referenced 1012 and 1013, whose motion vectors had been determined during the first scan 103.
On applique alors un nouveau balayage référencé 105 visant à propager le mouvement du haut vers le bas de l'image 102. Le mouvement se propage par exemple au sommet référencé 1016 du maillage, auquel on attribue un vecteur de mouvement moyenne à partir des vecteurs de mouvement des sommets référencés 1014 et 1015.We then apply a new scan referenced 105 aimed at propagating the movement from the top to the bottom of the image 102. The movement is propagated for example at the vertex referenced 1016 of the mesh, to which we assign a vector of average motion from the motion vectors of the vertices referenced 1014 and 1015.
On procède enfin à un balayage référencé 106 de bas en haut de l'image 102. A l'issue d'un tel balayage, on constate que tous les sommets du maillage 101 possèdent un vecteur de mouvement, représenté à l'aide d'une flèche sur la figure 10. Le mouvement a donc été propagé à l'ensemble du maillage 101. Les nœuds pères des nœuds du maillage 101, dans les niveaux supérieurs de la pyramide de maillage, sont alors associés à des vecteurs de mouvement de valeurs égales à celles de leurs nœuds fils. 2.4.3. Déplacement global de la pyramide de maillageFinally, we carry out a scan referenced 106 from bottom to top of the image 102. At the end of such a scan, we see that all the vertices of the mesh 101 have a motion vector, represented using an arrow in FIG. 10. The movement has therefore been propagated to the whole of the mesh 101. The parent nodes of the nodes of the mesh 101, in the upper levels of the mesh pyramid, are then associated with motion vectors of values equal to those of their child nodes. 2.4.3. Overall displacement of the mesh pyramid
On procède alors à un déplacement global de chaque sommet de la pyramide de maillage, en lui appliquant le vecteur de mouvement qui lui a été associé au cours de l'étape précédente de propagation de mouvement. Un tel déplacement a pour effet de : - faire entrer des mailles lorsqu'un objet entre dans l'image ; faire sortir des mailles en suivant un objet sortant de l'image ; limiter les dégénérescences du maillage.We then proceed to a global displacement of each vertex of the mesh pyramid, by applying to it the motion vector which was associated with it during the previous step of motion propagation. The effect of such a displacement is to: - introduce meshes when an object enters the image; make mesh out by following an object emerging from the image; limit the degeneration of the mesh.
2.5. Approximation photométrique et/ou colorimétrique des faces portant le marqueur "entrant" sur plusieurs trames successives On constate, dans le domaine du codage vidéo, qu'une face du maillage, qui suit par exemple l'entrée d'un objet dans l'image, peut porter le marqueur "entrant" sur plusieurs trames de données successives, ainsi qu'illustré en figure 11.2.5. Photometric and / or colorimetric approximation of the faces carrying the “incoming” marker on several successive frames We note, in the field of video coding, that one face of the mesh, which for example follows the entry of an object into the image , can carry the "incoming" marker on several successive data frames, as illustrated in FIG. 11.
Or, les sommets "entrant" du maillage ne possèdent pas d'informations photométriques et/ou colorimétriques, ces dernières étant approximees à partir des informations photométriques et/ou colorimétriques disponibles, associées aux portions des faces "entrant" situées à l'intérieur de l'image.However, the "incoming" vertices of the mesh do not have photometric and / or colorimetric information, the latter being approximated from the photometric and / or colorimetric information available, associated with the portions of the "incoming" faces located inside the image.
On propose, selon l'invention, deux variantes de réalisation de la gestion des informations photométriques et/ou colorimétriques des faces portant le marqueur "entrant" sur plusieurs trames successives. Une première variante de réalisation consiste à procéder à une optimisation des ces informations à chaque trame de données. Ainsi, les valeurs photométriques et/ou colorimétriques nodales des faces entrantes 110 sont réoptimisées et transmises et/ou stockées sur un support de données à chaque approximation de la surface photométrique et/ou colorimétrique de l'image (c'est- à-dire à chaque instant t, t+1, t+2 et t+3), et ce, tant que la face entrante 110 considérée n'est pas entièrement incluse dans l'image 111.According to the invention, two alternative embodiments are proposed for managing the photometric and / or colorimetric information of the faces carrying the "incoming" marker on several successive frames. A first alternative embodiment consists in optimizing this information at each data frame. Thus, the nodal photometric and / or colorimetric values of the incoming faces 110 are reoptimized and transmitted and / or stored on a data medium each time the photometric and / or colorimetric surface of the image is approximated (i.e. at each instant t, t + 1, t + 2 and t + 3), as long as the incoming face 110 considered is not entirely included in the image 111.
Une seconde variante de réalisation, moins coûteuse en termes de transmission de données consiste à établir un critère de qualité, et à comparer, à ce critère, la qualité de l'approximation photométrique et/ou colorimétrique de surface de l'image, obtenue en tenant compte des valeurs photométriques nodales courantes des faces entrantes. Si une telle comparaison révèle une erreur importante sur l'approximation de l'image, on procède alors à une optimisation et à une transmission et/ou un stockage sur un support de données des informations photométriques et/ou colorimétriques des sommets "entrant". Si, en revanche, la qualité de l'approximation de l'image est satisfaisante, on conserve les valeurs photométriques et/ou colorimétriques courantes pour les sommets "entrant".A second alternative embodiment, less costly in terms of data transmission, consists in establishing a quality criterion, and in comparing, with this criterion, the quality of the photometric and / or colorimetric approximation of the surface of the image, obtained in taking into account the current nodal photometric values of the incoming faces. If such a comparison reveals a significant error in the approximation of the image, one then proceeds to an optimization and a transmission and / or storage on a data carrier of the photometric and / or colorimetric information of the "incoming" vertices. If, on the other hand, the quality of the approximation of the image is satisfactory, the current photometric and / or colorimetric values are kept for the "incoming" vertices.
Selon cette seconde variante, on construit également un arbre de marqueurs spécifiques, associés aux sommets "entrant" 112 à 114, permettant d'indiquer à un décodeur ou à tout autre terminal adapté, si la photométrie et/ou la colorimétrie de la face "entrant" considérée 110 doit être mise à jour avant le rendu de l'image 111.According to this second variant, a tree of specific markers is also constructed, associated with the "incoming" vertices 112 to 114, making it possible to indicate to a decoder or to any other suitable terminal, whether the photometry and / or the colorimetry of the face " incoming "considered 110 must be updated before rendering image 111.
2.6. Mémorisation des informations photométriques et/ou colorimétriques associées aux zones sortant de l'image A l'issue des étapes précédentes d'estimation de mouvement et d'approximation de la surface photométrique et/ou colorimétrique de l'image, on procède à une mémorisation des informations photométriques et/ou colorimétriques associées aux zones sortantes de l'image, de façon à ce que de telles informations soient directement disponibles, sans qu'il soit nécessaire de mettre en œuvre un nouveau traitement long et coûteux, au cas où de telles zones sortantes entreraient à nouveau dans l'image.2.6. Memorization of photometric and / or colorimetric information associated with the zones leaving the image At the end of the preceding steps of motion estimation and approximation of the photometric and / or colorimetric surface of the image, a memorization is carried out. photometric and / or colorimetric information associated with the outgoing areas of the image, so that such information is directly available, without the need to implement a new long and costly treatment, in case such outgoing areas re-enter the image.
En effet, il est fréquent dans les séquences vidéo que certains objets entrent et sortent de l'image à plusieurs reprises (par exemple un décor situé en arrière plan d'un personnage effectuant des va-et-vient dans l'image), et il est donc particulièrement astucieux de mémoriser des informations relatives à cet objet, de manière à ne pas devoir mettre en œuvre un nouveau traitement à chaque fois que l'objet entre dans l'image.Indeed, it is frequent in video sequences that certain objects enter and leave the image on several occasions (for example a decoration located in the background of a character performing back and forth in the image), and it is therefore particularly clever to memorize information relating to this object, so as not to have to implement a new processing each time the object enters the image.
3. Gestion des zones de tassement de maillage 3.1. Principe d'optimisation adaptative du mouvement3. Management of mesh settlement zones 3.1. Principle of adaptive motion optimization
Selon le principe de codage hiérarchique par éléments finis décrit ci- dessus, les vecteurs de mouvement des sommets appartenant aux niveaux L0 à Lm de la pyramide de maillage sont tous optimisés.According to the principle of hierarchical coding by finite elements described above, the motion vectors of the vertices belonging to the levels L 0 to L m of the mesh pyramid are all optimized.
Or, lorsque deux objets 121, 122 se croisent au sein de l'image 120 par exemple, il apparaît des zones de tassement de mailles 123 à la frontière entre les deux objets, ainsi qu'illustré en figure 12. Dans de telles zones de tassement 123, on obtient une sur-représentation inutile et coûteuse en termes de transmission de données du champ de mouvement.However, when two objects 121, 122 intersect within the image 120 for example, it appears zones of compaction of meshes 123 at the border between the two objects, as illustrated in FIG. 12. In such zones of settlement 123, an unnecessary and costly over-representation is obtained in terms of data transmission of the motion field.
Pour compenser ce phénomène, on a envisagé, selon l'invention, d'introduire un critère de pertinence du mouvement, permettant de sélectionner les vecteurs de mouvement les plus pertinents, et qui permettent d'estimer au mieux le déplacement au sein de la zone de tassement.To compensate for this phenomenon, it has been envisaged, according to the invention, to introduce a criterion of relevance of the movement, making it possible to select the most relevant motion vectors, and which make it possible to best estimate the displacement within the zone. of settlement.
On définit donc un marqueur "pertinent", porté par les sommets du maillage dont les vecteurs de mouvement doivent être transmis et/ou stockés sur un support de données. On construit alors un arbre regroupant l'ensemble des vecteurs de mouvement à transmettre et/ou à stocker, ce qui permet, dans les zones de tassement, de réaliser la transmission de mouvement sur un nombre localement réduit de niveaux de la pyramide de maillage.We therefore define a "relevant" marker, carried by the vertices of the mesh whose motion vectors must be transmitted and / or stored on a data medium. We then construct a tree grouping together all the motion vectors to be transmitted and / or stored, which allows, in the settlement zones, to effect motion transmission on a locally reduced number of levels of the mesh pyramid.
Selon une autre variante de réalisation de l'invention, présentant un coût de codage réduit, on transmet et/ou on stocke sur un support de données l'ensemble des vecteurs de mouvement associés aux sommets de la zone de tassement considérée. La pertinence des vecteurs de mouvement à l'égard de l'estimation de mouvement globale de l'image est ensuite évaluée au moment du décodage de l'image. 3.2. Construction d'un arbre de pertinence du mouvementAccording to another alternative embodiment of the invention, presenting a reduced coding cost, the whole is transmitted and / or stored on a data carrier motion vectors associated with the vertices of the settlement zone considered. The relevance of the motion vectors with regard to the overall motion estimation of the image is then evaluated at the time of decoding of the image. 3.2. Construction of a movement relevance tree
Le marqueur "pertinent" peut prendre une valeur VRAI, lorsque le mouvement d'un sommet est pertinent pour l'estimation de mouvement global de l'image, et doit à ce titre être transmis et/ou stocké sur un support de données, ou une valeur FAUX dans le cas contraire. On construit l'arbre de pertinence à partir des faces et des sommets du maillage hiérarchique appartenant à un niveau de la pyramide de maillage inférieur ou égale à Lm.The "relevant" marker can take a TRUE value, when the movement of a vertex is relevant for the estimation of overall movement of the image, and must therefore be transmitted and / or stored on a data medium, or FALSE otherwise. We build the relevance tree from the faces and vertices of the hierarchical mesh belonging to a level of the pyramid of mesh less than or equal to L m .
On définit un critère de pertinence, noté CP(T), à valeur dans [0 ;1], et un seuil de pertinence SP, également à valeur dans [0 ;lj. On peut bien sûr envisager que le critère de pertinence et le seuil de pertinence soient à valeur dans tout autre intervalle [A ;B] adapté à l'invention.We define a relevance criterion, noted CP (T), with value in [0; 1], and a relevance threshold SP, also with value in [0; lj. It is of course conceivable that the relevance criterion and the relevance threshold are of value in any other interval [A; B] adapted to the invention.
Pour un triangle T donné du maillage triangulaire considéré, on définit la valeur du marqueur "pertinent" de la manière suivante :For a given triangle T of the triangular mesh considered, the value of the "relevant" marker is defined as follows:
PERTINENT(T)=CP(T)>SP Par ailleurs, le critère CP est défini par combinaison pondérée de trois sous-critères à valeur dans [0 ;1] : un sous-critère CS de surface permettant d'évaluer le rapport entre la surface du triangle T considéré et la surface moyenne des triangles du même niveau du maillage : CS(T)=surf(T)/moy{surf(T') tel que T appartient au même niveau de maillage que T} ; un sous-critère CC de compacité, éventuellement normalisé, permettant d'évaluer le rapport entre la surface et le périmètre du triangle T considéré : CC(T)=(1/CC(Equilatéral)*surf(T)/[4*π*périmètre(T)2]. Un tel critère est maximal et égal à 1 si T est équilatéral, et il est nul si T est plat ; un sous-critère CA d'antagonisme des mouvements des sommets du triangle considéré. Un tel critère vaut 1 si les mouvements des sommets de T sont antagonistes, c'est-à-dire en présence d'un retournement de maille potentiel, et 0 s'ils sont de même direction et sens. Si Dl, D2 et D3 sont les vecteurs de mouvement des sommets de T, alors :RELEVANT (T) = CP (T)> SP In addition, the criterion CP is defined by weighted combination of three value-based sub-criteria in [0; 1]: a surface CS sub-criterion allowing the relationship between the surface of the triangle T considered and the average surface of the triangles of the same level of the mesh: CS (T) = surf (T) / avg {surf (T ') such that T belongs to the same level of mesh as T}; a sub-criterion CC of compactness, possibly standardized, making it possible to evaluate the relationship between the surface and the perimeter of the triangle T considered: CC (T) = (1 / CC (Equilateral) * surf (T) / [4 * π * perimeter (T) 2 ]. Such a criterion is maximum and equal to 1 if T is equilateral, and it is zero if T is flat; a sub-criterion CA of antagonism of the movements of the vertices of the triangle considered. Such a criterion is worth 1 if the movements of the vertices of T are antagonistic, that is to say in the presence of a potential mesh reversal, and 0 if they are of the same direction and direction. If Dl, D2 and D3 are the motion vectors of the vertices of T, then:
CA(T)=1 si signe(<D1 , D2>)<0 ou signe(<D3, D2>)<0 ou signe(<D1 , D3>)<0 CA(T)=0 sinon.CA (T) = 1 if sign (<D1, D2>) <0 or sign (<D3, D2>) <0 or sign (<D1, D3>) <0 CA (T) = 0 otherwise.
Ainsi, CP(T)= [a*CS(T) +b*CC(T)+c*CA(T)]/ [a+b+c] où a, b, et c sont des scalaires prédéterminés.Thus, CP (T) = [a * CS (T) + b * CC (T) + c * CA (T)] / [a + b + c] where a, b, and c are predetermined scalars.
On détaille ci-dessous un exemple d'algorithme pouvant être mis en œuvre pour assigner le marqueur "pertinent" aux sommets et aux triangles du maillage, et donc déterminer les vecteurs de mouvement à transmettre et/ou stocker sur un support de données : Pour tous les sommets S de la pyramide de maillage parcourue des niveaux L0 à Lm We detail below an example of an algorithm that can be implemented to assign the "relevant" marker to the vertices and triangles of the mesh, and therefore determine the motion vectors to be transmitted and / or stored on a data carrier: all the vertices S of the mesh pyramid traversed from the levels L 0 to L m
Le marqueur "pertinent" de S est initialisé à FAUX Pour tous les triangles T de la pyramide de maillage parcourue des niveaux L0 à Lm Si CP(T)>SPm The "relevant" marker of S is initialized to FALSE For all the triangles T of the mesh pyramid traversed from the levels L 0 to L m If CP (T)> SP m
Alors le marqueur "pertinent" de T prend la valeur VRAI le marqueur "pertinent" des sommets de T prend la valeur VRAI Sinon le marqueur "pertinent" de T prend la valeur FAUX Pour tous les sommets S de la pyramide de maillage parcourue des niveaux L0 à Lm Si "pertinent"(S) alors transmettre le mouvement de S.Then the "relevant" marker of T takes the value TRUE the "relevant" marker of the vertices of T takes the value TRUE Otherwise the "relevant" marker of T takes the value FALSE For all the vertices S of the pyramid of mesh traversed by the levels L 0 to L m If "relevant" (S) then transmit the movement of S.
3.3. Gestion des occultations de mailles3.3. Management of mesh occultations
Lorsque, par exemple, deux objets se croisent au sein de l'image, des phénomènes d'occultation peuvent se produire, qui peuvent être gérés selon deux procédés distincts selon l'invention. 3.3.1. Fusion de sommets Le premier procédé mis en œuvre selon l'invention consiste à détecter, au moment du décodage, les zones d'occultation déterminées par les faces 130, 133 du maillage dont les sommets 131, 132 ont des vecteurs de mouvement antagonistes, selon le sous-critère CA, ainsi qu'illustré en figure 13. En effet, les faces 130, 133 ainsi détectées sont susceptibles de se retourner car leurs sommets 131, 132 sont positionnés sur des objets différents, l'un des deux objets occultant son voisin.When, for example, two objects intersect within the image, occultation phenomena can occur, which can be managed according to two distinct methods according to the invention. 3.3.1. Merger of vertices The first method implemented according to the invention consists in detecting, at the time of decoding, the occultation zones determined by the faces 130, 133 of the mesh whose vertices 131, 132 have antagonistic motion vectors, according to the sub- CA criterion, as illustrated in FIG. 13. Indeed, the faces 130, 133 thus detected are liable to turn over because their vertices 131, 132 are positioned on different objects, one of the two objects obscuring its neighbor.
Selon le mode de réalisation particulier décrit ici, on pratique alors une fusion d'arêtes (en anglais "edge collapse") entre les deux sommets voisins 131, 132 ayant un mouvement antagoniste. Il en résulte la disparition d'un triangle 130, 133, traduisant la disparition d'une partie d'un objet. Le sommet obtenu en fusionnant les sommets 131 et 132 est placé sur l'arête reliant initialement les sommets 131 et 132, par exemple en son milieu, ou à la position de l'un des deux sommets 131 et 132, ainsi qu'illustré en figure 13, où le sommet fusionné est situé à la position occupée initialement par le sommet 132. 3.3.2. Maillage n-manifold Un deuxième procédé mis en œuvre selon l'invention pour gérer les phénomènes d'occultation de mailles consiste à travailler sur un maillage n- manifold, ainsi qu'illustré en figure 14. On définit un maillage n-manifold comme un maillage triangulaire dans lequel une arête peut être partagée par n triangles, où n≥2.According to the particular embodiment described here, an edge fusion (in English "edge collapse") is then practiced between the two neighboring vertices 131, 132 having an antagonistic movement. This results in the disappearance of a triangle 130, 133, reflecting the disappearance of part of an object. The vertex obtained by merging the vertices 131 and 132 is placed on the edge initially connecting the vertices 131 and 132, for example in the middle, or at the position of one of the two vertices 131 and 132, as illustrated in Figure 13, where the merged vertex is located in the position initially occupied by the vertex 132. 3.3.2. N-manifold mesh A second method implemented according to the invention for managing the occultation phenomena of meshes consists in working on an n-manifold mesh, as illustrated in FIG. 14. An n-manifold mesh is defined as a triangular mesh in which an edge can be shared by n triangles, where n≥2.
Ainsi, la figure 14 présente un exemple de maillage 3-manifold, dans lequel l'arête référencée 143 est commune aux trois triangles référencés 140, 141, et 142. Selon un tel procédé, on procède tout d'abord à une estimation du mouvement de l'image, sans tenir compte du marqueur "pertinent" décrit ci- dessus. Au moment du décodage de l'image, lorsqu'une zone d'occultation (c'est-à- dire un retournement d'un triangle du maillage considéré) est détectée, les triangles associés à cette zone deviennent alors porteurs d'un marqueur "overlapped" (ou en français "recouvert"). On procède alors à une nouvelle optimisation du mouvement de l'image, en excluant les triangles du maillage portant le marqueur "overlapped".Thus, FIG. 14 presents an example of a 3-manifold mesh, in which the edge referenced 143 is common to the three triangles referenced 140, 141, and 142. According to such a method, an motion is first estimated. of the image, without taking into account the "relevant" marker described above. At the time of the decoding of the image, when an occultation zone (that is to say a reversal of a triangle of the mesh considered) is detected, the triangles associated with this zone then become carriers of a marker "overlapped" (or in French "overlapped"). We then proceed to a new optimization of the movement of the image, by excluding the triangles of the mesh carrying the marker "overlapped".
Cette nouvelle optimisation peut entraîner l'apparition de nouveau retournements de mailles, qui deviennent à leur tour porteuses d'un marqueur "overlapped". On procède alors à une nouvelle optimisation du mouvement.This new optimization can lead to the appearance of new mesh reversals, which in turn carry a "overlapped" marker. We then proceed to a new optimization of the movement.
Ainsi, les zones du maillage portant le marqueur "overlapped" marquent les découvrements ou les recouvrements de mailles : elles correspondent donc à des objets occultés.Thus, the zones of the mesh carrying the "overlapped" marker mark the discoveries or the overlaps of meshes: they therefore correspond to occulted objects.
Le procédé mis en œuvre dans le mode de réalisation particulier décrit dans ce paragraphe consiste à temporairement écarter les triangles portant le marqueur "overlapped", tout en les conservant en mémoire, de manière à pouvoir gérer leur éventuelle réapparition sur l'image.The method implemented in the particular embodiment described in this paragraph consists in temporarily removing the triangles carrying the "overlapped" marker, while keeping them in memory, so as to be able to manage their possible reappearance on the image.
Selon la topologie d'une zone de maillage portant le marqueur "overlapped" (encore appelée sous-maillage "overlapped"), on distingue les deux cas ci-dessous : les frontières du sous-maillage "overlapped" sont rescindées, et le maillage devient alors n-manifold (3-manifold dans l'exemple de la figure 14) ; seule une partie des frontières du sous-maillage est rescindée, et on opère une correction locale du contenu des autres mailles "overlapped". L'utilisation d'un maillage n-manifold permet avantageusement de conserver les informations photométriques et/ou colorimétriques associées à des zones du maillage pouvant disparaître ou apparaître à diverses reprises durant la séquence vidéo considérée.According to the topology of a mesh area carrying the "overlapped" marker (also called "overlapped" sub-mesh), the two cases are distinguished below: the boundaries of the "overlapped" sub-mesh are rescinded, and the mesh then becomes n-manifold (3-manifold in the example in Figure 14); only part of the borders of the sub-mesh is rescindée, and one operates a local correction of the contents of the other meshes "overlapped". The use of an n-manifold mesh advantageously makes it possible to conserve the photometric and / or colorimetric information associated with areas of the mesh which may disappear or appear repeatedly during the video sequence considered.
3.3. Conclusion L'introduction d'un critère de pertinence du mouvement permet de réduire le coût de la transmission et/ou du stockage des vecteurs de mouvement des zones de tassement, tout en conservant l'apparition des retournements de mailles, nécessaires à la mise à jour du contenu du maillage. Ainsi, l'estimation du mouvement et la transmission et/ou le stockage des vecteurs de mouvement sont régis par un arbre de pertinence, ce qui permet d'assurer la quasi constance du rapport débit de transmission/distorsion de l'image, malgré l'entrée de nouvelles mailles dans l'image, et le tassement de certaines autres. 3.3. Conclusion The introduction of a criterion of relevance of the movement makes it possible to reduce the cost of the transmission and / or storage of the vectors of movement of the settlement zones, while preserving the appearance of the reversals of meshes, necessary for the setting up. mesh content day. Thus, the estimation of the movement and the transmission and / or storage of the motion vectors are governed by a relevance tree, which makes it possible to ensure the quasi-consistency of the transmission rate / image distortion ratio, despite the entry of new meshes in the image, and the settlement of some others.

Claims

REVENDICATIONS
1. Procédé de codage d'un maillage représentatif d'une image d'une séquence animée, caractérisé en ce que ledit maillage est de taille supérieure à ladite image.1. Method for coding a mesh representative of an image of an animated sequence, characterized in that said mesh is of size greater than said image.
2. Procédé de codage selon la revendication 1, caractérisé en ce que, ladite image ayant une surface de N*M pixels, ledit maillage présente une surface d'au moins nN*nM pixels, n étant un entier supérieur ou égal à 2.2. Coding method according to claim 1, characterized in that, said image having an area of N * M pixels, said mesh has an area of at least nN * nM pixels, n being an integer greater than or equal to 2.
3. Procédé de codage selon l'une quelconque des revendications 1 et 2, caractérisé en ce que ledit maillage est un maillage hiérarchique présentant au moins deux niveaux de maillage emboîtés au sein d'une pyramide de maillage. 3. Coding method according to any one of claims 1 and 2, characterized in that said mesh is a hierarchical mesh having at least two levels of mesh nested within a pyramid of mesh.
4. Procédé de codage selon l'une quelconque des revendications 1 à 3, caractérisé en ce que ledit maillage est un maillage triangulaire constitué d'un arrangement de sommets et de faces triangulaires, définies chacune par trois références aux sommets qu'elle relie, et présentant trois arêtes reliant chacune deux desdits sommets. 4. Coding method according to any one of claims 1 to 3, characterized in that said mesh is a triangular mesh consisting of an arrangement of vertices and triangular faces, each defined by three references to the vertices which it connects, and having three edges each connecting two of said vertices.
5. Procédé de codage selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'il associe à au moins certains des sommets et/ou certaines des faces dudit maillage au moins un des marqueurs suivants : un marqueur "intérieur", une face portant un marqueur "intérieur" si elle a une intersection non vide avec ladite image, et un sommet portant un marqueur "intérieur" s'il appartient à une face5. Coding method according to any one of claims 1 to 4, characterized in that it associates with at least some of the vertices and / or some of the faces of said mesh at least one of the following markers: an "internal" marker, a face carrying an "interior" marker if it has a non-empty intersection with said image, and a vertex carrying an "interior" marker if it belongs to a face
"intérieur" ; un marqueur "entrant", un sommet portant un marqueur "entrant" s'il porte un marqueur "intérieur" et qu'il est extérieur à l'image, et une face portant un marqueur "entrant" si au moins un des trois sommets qu'elle relie porte un marqueur "entrant". "interior"; an "incoming" marker, a vertex carrying an "incoming" marker if it has an "inside" marker and is outside the image, and a face carrying an "incoming" marker if at least one of the three vertices that it links carries an "incoming" marker.
6. Procédé de codage selon la revendication 5, caractérisé en ce qu'il met en œuvre la succession d'étapes suivantes : estimation du mouvement desdits sommets dudit maillage, entre deux images successives de ladite séquence ; construction d'informations colorimétriques et/ou photométriques destinées à des sommets et/ou des faces dudit maillage portant ledit marqueur "entrant".6. Coding method according to claim 5, characterized in that it implements the following succession of steps: estimation of the movement of said vertices of said mesh, between two successive images of said sequence; construction of colorimetric and / or photometric information intended for vertices and / or faces of said mesh carrying said "incoming" marker.
7. Procédé de codage selon la revendication 6, caractérisé en ce que ladite étape d'estimation comprend les sous-étapes suivantes : optimisation de vecteurs de mouvement des sommets dudit maillage portant ledit marqueur "intérieur", de manière à minimiser un critère d'erreur prédéterminé de reconstruction de l'image suivante ; interpolation et/ou extrapolation de vecteurs de mouvement des sommets dudit maillage ne portant pas ledit marqueur "intérieur", afin de fluidifier le déplacement global dudit maillage.7. Coding method according to claim 6, characterized in that said estimation step comprises the following sub-steps: optimization of motion vectors of the vertices of said mesh carrying said "interior" marker, so as to minimize a criterion of predetermined error in reconstruction of the following image; interpolation and / or extrapolation of motion vectors from the vertices of said mesh not carrying said "interior" marker, in order to fluidize the overall displacement of said mesh.
8. Procédé de codage selon la revendication 7, caractérisé en ce que ladite étape d'interpolation et/ou d'extrapolation met en œuvre un double balayage itératif avant-arrière, appliqué aux sommets du plus bas niveau de ladite pyramide de maillage pour lequel lesdits vecteurs de mouvement desdits sommets ont été optimisés.8. Coding method according to claim 7, characterized in that said interpolation and / or extrapolation step implements a double iterative front-back scan, applied to the vertices of the lowest level of said mesh pyramid for which said motion vectors of said vertices have been optimized.
9. Procédé de codage selon l'une quelconque des revendications 7 et 8, caractérisé en ce qu'après ladite étape d'estimation, il met en œuvre une étape de déplacement de chacun des sommets dudit maillage, en lui appliquant son propre vecteur de mouvement.9. Coding method according to any one of claims 7 and 8, characterized in that after said estimation step, it implements a step of displacement of each of the vertices of said mesh, by applying to it its own vector of movement.
10. Procédé de codage selon l'une quelconque des revendications 7 à 9, caractérisé en ce que ladite étape de construction met en œuvre d'une part un modèle de codage par éléments finis, et d'autre part un modèle de codage alternatif, ce dernier étant mis en œuvre pour au moins certaines zones de ladite image, en fonction d'un critère d'erreur prédéterminé.10. Coding method according to any one of claims 7 to 9, characterized in that said construction step implements on the one hand a finite element coding model, and on the other hand an alternative coding model, the latter being implemented for at least certain areas of said image, according to a predetermined error criterion.
11. Procédé de codage selon l'une quelconque des revendications 7 à 10, caractérisé en ce que ladite étape de construction mettant en œuvre un modèle de codage hiérarchique, elle comprend les sous-étapes suivantes : projection normale temporaire desdits sommets portant ledit marqueur "entrant" sur un bord de ladite image ; optimisation desdites informations colorimétriques et/ou photométriques desdits sommets et ou desdites faces de ladite image, de façon à minimiser un critère d'erreur prédéterminé de reconstruction de l'image suivante ; repositionnement desdits sommets portant ledit marqueur "entrant" à leur position avant projection, lesdits sommets "entrant" étant porteurs desdites informations colorimétriques et/ou photométriques optimisées.11. Coding method according to any one of claims 7 to 10, characterized in that the said construction step implementing a hierarchical coding model, it comprises the following substeps: normal temporary projection of said vertices carrying said "incoming" marker on an edge of said image; optimization of said colorimetric and / or photometric information of said vertices and or of said faces of said image, so as to minimize a predetermined error criterion for reconstruction of the following image; repositioning of said vertices carrying said "incoming" marker to their position before projection, said "incoming" vertices carrying said optimized colorimetric and / or photometric information.
12. Procédé de codage selon la revendication 10, caractérisé en ce que ledit codage spécifique comprend les sous-étapes suivantes : construction d'une image symétrisée, obtenue en appliquant à ladite image une symétrie axiale par rapport à chacun de ses bords et une symétrie centrale par rapport à chacun de ses sommets ; optimisation desdites informations colorimétriques et/ou photométriques desdits sommets et/ou desdites faces de ladite image symétrisée par application dudit modèle alternatif (DCT, fractales, matching pursuit).12. Coding method according to claim 10, characterized in that said specific coding comprises the following substeps: construction of a symmetrized image, obtained by applying to said image an axial symmetry with respect to each of its edges and a symmetry central to each of its vertices; optimization of said colorimetric and / or photometric information of said vertices and / or of said faces of said symmetrized image by application of said alternative model (DCT, fractals, matching pursuit).
13. Procédé de codage selon l'une quelconque des revendications 1 à 12, caractérisé en ce qu'il met en œuvre une étape de mémorisation d'informations photométriques et/ou colorimétriques associées aux sommets et/ou aux faces sortant de ladite image.13. Coding method according to any one of claims 1 to 12, characterized in that it implements a step of memorizing photometric and / or colorimetric information associated with the vertices and / or the faces emerging from said image.
14. Procédé de codage selon l'une quelconque des revendications 6 à 13, caractérisé en ce que, tant qu'une face dudit maillage porte le marqueur "entrant", ladite étape de construction met en œuvre au moins une itération des sous-étapes successives suivantes : - optimisation desdites informations colorimétriques et/ou photométriques desdits sommets de ladite face "entrant", de façon à minimiser un critère d'erreur prédéterminé ; transmission vers un terminal et/ou stockage sur un support de données desdites informations colorimétriques et/ou photométriques optimisées. 14. Coding method according to any one of claims 6 to 13, characterized in that, as long as one face of said mesh carries the "incoming" marker, said construction step implements at least one iteration of the substeps successive steps: - optimization of said colorimetric and / or photometric information of said vertices of said "incoming" face, so as to minimize a predetermined error criterion; transmission to a terminal and / or storage on a data medium of said optimized colorimetric and / or photometric information.
15. Procédé de codage selon l'une quelconque des revendications 6 à 14, caractérisé en ce que, tant qu'une face dudit maillage porte le marqueur "entrant", ladite étape de construction met en œuvre au moins une itération des sous-étapes successives suivantes : - élaboration d'un critère permettant d'évaluer une qualité de reconstruction d'image obtenue en tenant compte des informations photométriques et ou colorimétriques courantes des sommets de ladite face ; lorsque ladite qualité n'est pas satisfaisante : optimisation desdites informations colorimétriques et/ou photométriques desdits sommets de ladite face, de façon à minimiser un critère d'erreur prédéterminé de reconstruction de l'image suivante ; transmission vers un terminal et/ou stockage sur un support de données desdites informations colorimétriques et/ou photométriques optimisées ; transmission et/ou stockage d'un arbre de marqueurs indiquant audit terminal si lesdits informations colorimétriques et/ou photométriques desdits sommets de ladite face "entrant" ont été ou non optimisées.15. Coding method according to any one of claims 6 to 14, characterized in that, as long as one face of said mesh carries the "incoming" marker, said construction step implements at least one iteration of the sub-steps successive steps: - elaboration of a criterion making it possible to evaluate an image reconstruction quality obtained by taking into account the current photometric and or colorimetric information of the vertices of said face; when said quality is not satisfactory: optimization of said colorimetric and / or photometric information of said vertices of said face, so as to minimize a predetermined error criterion for reconstruction of the following image; transmission to a terminal and / or storage on a data medium of said optimized colorimetric and / or photometric information; transmission and / or storage of a tree of markers indicating to said terminal whether said colorimetric and / or photometric information of said vertices of said "incoming" face have been optimized or not.
16. Procédé de codage selon l'une quelconque des revendications 6 à 15, caractérisé en ce que ladite étape d'estimation du mouvement comprend en outre une sous-étape de construction d'un arbre des vecteurs de mouvement à transmettre et/ou à stocker, l'appartenance d'un vecteur de mouvement audit arbre étant déterminée à partir d'un critère de pertinence du mouvement appliqué auxdites faces dudit maillage. 16. A coding method according to any one of claims 6 to 15, characterized in that said movement estimation step further comprises a substep of construction of a tree of motion vectors to be transmitted and / or to store, the belonging of a motion vector to said tree being determined from a criterion of relevance of the movement applied to said faces of said mesh.
17. Procédé de codage selon la revendication 16, caractérisé en ce que ledit critère de pertinence résulte d'une combinaison pondérée prédéterminée des sous- critères suivants : un sous-critère de surface, permettant d'évaluer le rapport entre la surface d'une face et la surface moyenne des faces dudit maillage appartenant au même niveau de ladite pyramide de maillage ; un sous-critère de compacité, permettant d'évaluer le rapport entre la surface et le périmètre d'une face dudit maillage ; un sous-critère d'antagonisme des mouvements, permettant d'évaluer l'antagonisme des vecteurs de mouvement de sommets dudit maillage. 17. Coding method according to claim 16, characterized in that said relevance criterion results from a predetermined weighted combination of the following sub-criteria: a surface sub-criterion, making it possible to evaluate the ratio between the surface of a face and the average surface of the faces of said mesh belonging to the same level of said mesh pyramid; a compactness sub-criterion, making it possible to evaluate the relationship between the surface and the perimeter of a face of said mesh; a sub-criterion of antagonism of the movements, making it possible to evaluate the antagonism of the motion vectors of vertices of said mesh.
18. Procédé de codage selon l'une quelconque des revendications 6 à 15, caractérisé en ce que tous les vecteurs de mouvement desdits sommets dudit maillage sont transmis et/ou stockés, un décodeur adapté identifiant selon un critère prédéterminé les vecteurs devant être pris en compte.18. Coding method according to any one of claims 6 to 15, characterized in that all the motion vectors of said vertices of said mesh are transmitted and / or stored, a suitable decoder identifying according to a predetermined criterion the vectors to be taken into account. account.
19. Procédé de codage selon l'une quelconque des revendications 1 à 18, caractérisé en ce qu'en présence d'une occultation d'au moins un sommet occulté par une face comprenant au moins un sommet occultant, on procède à une fusion dudit sommet occulté avec ledit sommet occultant.19. Coding method according to any one of claims 1 to 18, characterized in that in the presence of an occultation of at least one vertex occulted by a face comprising at least one occulting vertex, said fusion is carried out. occulted vertex with said occulting vertex.
20. Procédé de codage selon l'une quelconque des revendications 1 à 19, caractérisé en ce qu'il met en œuvre une étape de détection d'au moins une zone de ladite image occultée au cours d'un déplacement dudit maillage, et une étape de mémorisation d'informations photométriques et/ou colorimétriques relatives à ladite zone occultée, en vu d'un éventuel usage futur, lesdites informations n'étant pas traitées.20. Coding method according to any one of claims 1 to 19, characterized in that it implements a step of detecting at least one area of said obscured image during a displacement of said mesh, and a step of memorizing photometric and / or colorimetric information relating to said obscured area, in view of possible future use, said information not being processed.
21. Procédé de décodage d'un maillage représentatif d'une image d'une séquence animée, caractérisé en ce que ledit maillage est de taille supérieure à ladite image.21. A method of decoding a mesh representative of an image of an animated sequence, characterized in that said mesh is of size greater than said image.
22. Signal représentatif d'un maillage représentatif d'une image d'une séquence animée, caractérisé en ce que ledit maillage est de taille supérieure à ladite image.22. Signal representative of a mesh representative of an image of an animated sequence, characterized in that said mesh is of size greater than said image.
23. Dispositif de codage d'un maillage représentatif d'une image d'une séquence animée, caractérisé en ce que ledit maillage est de taille supérieure à ladite image.23. Device for coding a mesh representative of an image of an animated sequence, characterized in that said mesh is larger than said image.
24. Dispositif de décodage d'un maillage représentatif d'une image d'une séquence animée, caractérisé en ce que ledit maillage est de taille supérieure à ladite image. 24. Device for decoding a mesh representative of an image of an animated sequence, characterized in that said mesh is larger than said image.
EP01951762A 2000-07-13 2001-07-03 Motion estimator for coding and decoding image sequences Withdrawn EP1299859A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0009273A FR2811791B1 (en) 2000-07-13 2000-07-13 MOTION ESTIMATOR FOR CODING AND DECODING IMAGE SEQUENCES
FR0009273 2000-07-13
PCT/FR2001/002131 WO2002007099A1 (en) 2000-07-13 2001-07-03 Motion estimator for coding and decoding image sequences

Publications (1)

Publication Number Publication Date
EP1299859A1 true EP1299859A1 (en) 2003-04-09

Family

ID=8852529

Family Applications (1)

Application Number Title Priority Date Filing Date
EP01951762A Withdrawn EP1299859A1 (en) 2000-07-13 2001-07-03 Motion estimator for coding and decoding image sequences

Country Status (4)

Country Link
US (1) US7502413B2 (en)
EP (1) EP1299859A1 (en)
FR (1) FR2811791B1 (en)
WO (1) WO2002007099A1 (en)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002951574A0 (en) * 2002-09-20 2002-10-03 Unisearch Limited Method of signalling motion information for efficient scalable video compression
US7983835B2 (en) 2004-11-03 2011-07-19 Lagassey Paul J Modular intelligent transportation system
JP4284265B2 (en) * 2004-11-02 2009-06-24 株式会社東芝 Moving picture coding apparatus, moving picture coding method, moving picture decoding apparatus, and moving picture decoding method
US20100091845A1 (en) * 2006-03-30 2010-04-15 Byeong Moon Jeon Method and apparatus for decoding/encoding a video signal
KR100966567B1 (en) * 2006-03-30 2010-06-29 엘지전자 주식회사 A method and apparatus for decoding/encoding a video signal
ES2569411T3 (en) 2006-05-19 2016-05-10 The Queen's Medical Center Motion tracking system for adaptive real-time imaging and spectroscopy
WO2007148907A1 (en) * 2006-06-19 2007-12-27 Lg Electronics, Inc. Method and apparatus for processing a vedeo signal
WO2008023968A1 (en) * 2006-08-25 2008-02-28 Lg Electronics Inc A method and apparatus for decoding/encoding a video signal
KR100810391B1 (en) * 2006-10-31 2008-03-04 삼성전자주식회사 Frame rate up conversion using motion interpolation
WO2008088176A1 (en) * 2007-01-17 2008-07-24 Lg Electronics Inc. Method and apparatus for processing a video signal
US8498495B2 (en) 2007-01-26 2013-07-30 Telefonaktiebolaget Lm Ericsson (Publ) Border region processing in images
US8854376B1 (en) * 2009-07-30 2014-10-07 Lucasfilm Entertainment Company Ltd. Generating animation from actor performance
JP5421739B2 (en) * 2009-11-19 2014-02-19 株式会社日立国際電気 Moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding method
JP5661359B2 (en) 2010-07-16 2015-01-28 キヤノン株式会社 Image processing apparatus, image processing method, and program
EP2747641A4 (en) 2011-08-26 2015-04-01 Kineticor Inc Methods, systems, and devices for intra-scan motion correction
US10327708B2 (en) 2013-01-24 2019-06-25 Kineticor, Inc. Systems, devices, and methods for tracking and compensating for patient motion during a medical imaging scan
US9305365B2 (en) 2013-01-24 2016-04-05 Kineticor, Inc. Systems, devices, and methods for tracking moving targets
US9782141B2 (en) 2013-02-01 2017-10-10 Kineticor, Inc. Motion tracking system for real time adaptive motion compensation in biomedical imaging
JP2015171450A (en) * 2014-03-12 2015-10-01 ソニー株式会社 Image processing device, image processing method, program, and endoscope apparatus
CN106714681A (en) 2014-07-23 2017-05-24 凯内蒂科尔股份有限公司 Systems, devices, and methods for tracking and compensating for patient motion during a medical imaging scan
US9943247B2 (en) 2015-07-28 2018-04-17 The University Of Hawai'i Systems, devices, and methods for detecting false movements for motion correction during a medical imaging scan
CN108697367A (en) 2015-11-23 2018-10-23 凯内蒂科尓股份有限公司 Systems, devices and methods for patient motion to be tracked and compensated during medical image scan
WO2018067832A1 (en) * 2016-10-05 2018-04-12 HypeVR Geometry sequence encoder and decoder
WO2019124191A1 (en) * 2017-12-18 2019-06-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Encoding device, decoding device, encoding method, and decoding method
US10708597B2 (en) 2018-02-01 2020-07-07 Microsoft Technology Licensing, Llc Techniques for extrapolating image frames
CN113067959B (en) * 2021-03-16 2022-05-03 合肥合芯微电子科技有限公司 Image interpolation method, device and storage medium
CN116452682A (en) * 2023-05-09 2023-07-18 北京数慧时空信息技术有限公司 Slicing-free real-time release system and method based on tree structure

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6064771A (en) * 1997-06-23 2000-05-16 Real-Time Geometry Corp. System and method for asynchronous, adaptive moving picture compression, and decompression

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US5963209A (en) * 1996-01-11 1999-10-05 Microsoft Corporation Encoding and progressive transmission of progressive meshes
US5936671A (en) * 1996-07-02 1999-08-10 Sharp Laboratories Of America, Inc. Object-based video processing using forward-tracking 2-D mesh layers
JPH1098729A (en) * 1996-09-20 1998-04-14 Hitachi Ltd Method for composing inter-frame predictive image
WO1999064944A2 (en) * 1998-06-08 1999-12-16 Microsoft Corporation Compression of time-dependent geometry
US6438266B1 (en) * 1998-08-27 2002-08-20 Lucent Technologies Inc. Encoding images of 3-D objects with improved rendering time and transmission processes
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6064771A (en) * 1997-06-23 2000-05-16 Real-Time Geometry Corp. System and method for asynchronous, adaptive moving picture compression, and decompression

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
FR2811791B1 (en) 2002-11-22
US7502413B2 (en) 2009-03-10
US20040047415A1 (en) 2004-03-11
FR2811791A1 (en) 2002-01-18
WO2002007099A1 (en) 2002-01-24

Similar Documents

Publication Publication Date Title
EP1299859A1 (en) Motion estimator for coding and decoding image sequences
EP1604529B1 (en) Methods and devices for encoding and decoding a sequence of images by means of motion/texture decomposition and wavelet encoding
Gautier et al. Efficient depth map compression based on lossless edge coding and diffusion
EP1354482A1 (en) Image coding and decoding method, corresponding devices and applications
EP1413140B1 (en) Method for estimating the motion between two images with management of mesh overturning, and corresponding coding method
FR2813485A1 (en) METHOD FOR CONSTRUCTING AT LEAST ONE INTERPRETED IMAGE BETWEEN TWO IMAGES OF AN ANIMATED SEQUENCE, METHODS OF ENCODING AND DECODING, SIGNAL AND CORRESPONDING DATA CARRIER
FR2684258A1 (en) METHOD FOR ESTIMATING AND CODING HIERARCHISE OF THE MOTION OF IMAGE SEQUENCES.
EP1790169A1 (en) Method for estimating motion using deformable meshes
EP1116185B1 (en) Method for compressing and encoding three-dimensional meshed network
FR2891686A1 (en) Gradual video sequence transition detecting method for video coder/decoder, involves calculating criteria indicating if one distance is greater than another distance and making decision on image belongingness to transition based on criteria
EP0722251A1 (en) Method for interpolating images
EP1574068B1 (en) Wavelet image-encoding method and corresponding decoding method
FR2856548A1 (en) METHOD FOR REPRESENTING A SEQUENCE OF IMAGES BY 3D MODELS, SIGNAL AND DEVICES THEREOF
EP1241894A1 (en) Method of coding digital images based on error concealment
EP1181668A1 (en) Image coding/decoding method
EP1110409B1 (en) Method for estimating motion between two images
EP2737452B1 (en) Method for encoding an image after resizing by deleting pixels and image transmission method between a transmitter and receiver
CA2376684C (en) Optimal video decoder based on mpeg-type standards
EP1080448B1 (en) Image simplification method and application of said method for segmenting and coding images
EP3922017A1 (en) Methods and devices for coding and decoding a data stream representing at least one image
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
EP3854085A1 (en) Methods and devices for encoding and decoding a data stream representing at least one image
EP0771115A1 (en) Method and apparatus for region based motion estimation between images and moving image coding apparatus using segmented images therefor
FR2817375A1 (en) METHOD FOR CONSTRUCTING A 3D SCENE MODEL USING KEY IMAGES

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

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

17P Request for examination filed

Effective date: 20030109

17Q First examination report despatched

Effective date: 20090216

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

Owner name: ORANGE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20170201