EP1405268A1 - Method of wavelet coding a mesh object - Google Patents

Method of wavelet coding a mesh object

Info

Publication number
EP1405268A1
EP1405268A1 EP02762522A EP02762522A EP1405268A1 EP 1405268 A1 EP1405268 A1 EP 1405268A1 EP 02762522 A EP02762522 A EP 02762522A EP 02762522 A EP02762522 A EP 02762522A EP 1405268 A1 EP1405268 A1 EP 1405268A1
Authority
EP
European Patent Office
Prior art keywords
coefficients
wavelet
basic
wavelet coefficients
sub
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
EP02762522A
Other languages
German (de)
French (fr)
Inventor
Patrick Gioia
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 EP1405268A1 publication Critical patent/EP1405268A1/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. discrete cosine transform

Definitions

  • the field of the invention is that of coding mesh objects with at least two dimensions. More specifically, the invention relates to the representation and coding of meshes, or of textures coded by meshes, associated with objects of a graphic scene implementing a method called "wavelet".
  • the invention applies more particularly, but not exclusively to 2nd generation wavelets, presented in particular in the document by Wim Sweldens, entitled “The Lifting Scheme: A Construction of Second Generation Wavelets” (in French, “The process of elevation: a construction of second generation wavelets "), SIAM Journal on Mafhematical Analysis, Volume 29, number 2, pp 511-546, 1998.
  • the invention finds applications in all fields where it is desirable to optimize the storage and / or transmission of images.
  • the invention applies in particular, but not exclusively, to the storage and transmission of three-dimensional models, elevation grids, and of objects and textures coded by two-dimensional meshes.
  • an object coded according to such a technique is presented as the union of the following two elements: the basic mesh, which generally has few facets, and represents a coarse version of the object to be coded; the wavelet coefficients, which are triplets of real numbers assigned simultaneously to a precise area of the basic mesh and to a given level of subdivision of this mesh. These wavelet coefficients represent the refinements to be made to the zone with which they are associated in order to converge towards the geometry of the initial object.
  • zero-trees coding technique which achieves the best results in terms of compression of the wavelet coefficients to be transmitted.
  • One such technique consists in describing an order of coding of the wavelet coefficients, which is predetermined and known in advance by the transmitter and receiver terminals (for example of a server and of a client display terminal). Such a technique therefore makes it possible, during the transmission of wavelet coefficients, to avoid transmitting information relating to the ranges of non-significant coefficients for the coding of the object considered.
  • Such zero-tree coding is generally coupled to a "bit-plane" coding, which makes it possible, when transmitting the coefficients, to transmit the most significant bits of each coefficient first.
  • the coding techniques are based on the arbitrary adoption of a hierarchy between the wavelet coefficients to be transmitted, making it possible to determine their order of transmission to a remote display or storage terminal. This order, known to the receiving terminal, allows the latter to reconstruct the entire transmitted object.
  • a disadvantage of these techniques of the prior art is that the server in charge of transmitting the wavelet coefficients to a display terminal cannot make a selection of the coefficients which it wishes to send, and therefore systematically transmits the whole coefficients at the client terminal.
  • a disadvantage of these techniques of the prior art is therefore that the client receives all the wavelet coefficients, including those corresponding to the coding of portions of the object which he does not wish to visualize, and of which he therefore no need.
  • the communication network used for the transmission of the wavelet coefficients is therefore unnecessarily overloaded, and the transmission rate of the useful coefficients decreases accordingly.
  • the reconstruction of a representation of the object from all of the wavelet coefficients is long, which is a source of inconvenience for the customer.
  • Another disadvantage of these techniques of the prior art is therefore that, if the client wishes to carry out an adaptive decoding, so as to view only the portions of the object which interest him, he must perform a sorting himself transmitted wavelet coefficients. The client must therefore decode the entire data stream transmitted by the server, or coming from a data carrier, then judge the relevance of the wavelet coefficients thus decoded, according to the portion of the mesh to which they are associates.
  • a disadvantage of these techniques of the prior art is that, in order to carry out an adaptive decoding, the client must have a display terminal having sufficient processing capacities to carry out the decoding operations of the global stream, selection of the relevant coefficients, and reconstruction of a representation of the object from the coefficients thus selected.
  • a disadvantage of these techniques of the prior art is that it is impossible, for a client having a display terminal having reduced processing capacities, to carry out an adaptive decoding.
  • the invention particularly aims to overcome these drawbacks of the prior art.
  • an objective of the invention is to implement a technique of coding an object by wavelets, allowing a display terminal to carry out an adaptive decoding of the object.
  • Another objective of the invention is to provide a technique for coding an object by wavelets, allowing a server to select certain wavelet coefficients, and to transmit the selected coefficients, according to an area of the basic mesh. with which they are associated.
  • an objective of the invention is to allow a server to transmit only certain wavelet coefficients, according to a request from a client.
  • the invention also aims to implement a technique of coding meshes representative of objects or 3D scenes, allowing an adaptive reconstruction of a mesh within a display terminal.
  • Another objective of the invention is to provide a coding technique for an object using wavelets which is suitable for display terminals having low processing capacities.
  • the invention also aims, of course, to provide a reconstruction and transmission technique over a communication network of an object coded according to this coding method.
  • an objective of the invention is not to unnecessarily overload the communication networks.
  • Another objective of the invention is to implement a technique for coding an object by wavelets which is suitable for transmission via a communication network with limited bit rate.
  • said wavelet coefficients are partitioned into at least two disjoint subsets each undergoing independent coding, and said method inserts, into said global data stream, location data making it possible to identify wavelet coefficients relating to a portion of said object in said global data flow, so as to allow a selective reconstruction of said portion using the coefficients of at least one of said subsets.
  • the invention is based on a completely new and inventive approach to the coding of an object by wavelets and the shaping of the data thus coded within a global data stream.
  • the invention is notably based on the generation of a global data flow, within which one can easily identify the wavelet coefficients, as a function of the portion of the mesh object with which they are associated. This is in particular allowed, within the framework of the invention, by the insertion of location data within the data stream, so as to allow an adaptive visualization of the coded object by a client terminal.
  • each of said disjoint subsets is a basic facet.
  • said coding implements the following steps: detection of at least one non-significant part; - specific treatment of each of said non-significant parts.
  • a coding of the subsets of wavelet coefficients that is to say a transformation of these coefficients into a binary sequence
  • said coding implements a "zero-tree" type technique.
  • the "zero-tree” technique is to date the technique for achieving the best compression results. It is of course also possible to envisage using any other technique for coding the wavelet coefficients within the overall data stream, adapted to the implementation of the invention.
  • said global data stream comprises a header, comprising at least some of said location data, and a zone of wavelet coefficients, comprising a sub-area identified by said location data for each of said disjoint subsets.
  • the wavelet coefficients zone of the global data stream includes N identifiable sub-zones, within the flow, using location data. It will be noted here that the location data making it possible to identify a sub-zone of the flow can be included in the header and / or in any other part of the data flow.
  • said location data contained in said header identifies a sub-area, by defining a distance between the position of a reference element and the start of said sub-area in said flow.
  • Such a reference element can for example be the start or the end of the header, or any other element whose position in the flow can easily be known.
  • the distance can for example be expressed in number of bits.
  • said header further comprises at least some of the information belonging to the group comprising: the number of basic facets; the type of wavelet; information relating to said object; information relating to the coding of said location data.
  • This information can be used by a display terminal to reconstruct, from the flow, a representation of a portion, or of the whole, of the meshed object.
  • said global data stream comprises at least one area of wavelet coefficients, comprising a sub-area identified by said location data for each of said disjoint subsets, said location data comprising at least minus one marker at the beginning and / or at the end of each of the sub-areas.
  • the location data is distributed throughout the overall data flow, and not grouped in a header, as before.
  • said sub-areas are organized in said stream in order of increasing basic facet.
  • each of the basic facets undergoes independent coding (for example of the "zero-tree" type)
  • the invention also relates to a method for transmitting a data stream, between, on the one hand, at least one server and / or at least one data carrier, and, on the other hand, at least one display terminal , said data flow making it possible to reconstruct an object associated on the one hand with a basic mesh made up of a set of basic facets, and on the other hand with coefficients in a wavelet base corresponding to local modifications of said basic mesh.
  • such a transmission method comprises: a step of receiving a request defining a portion of said object to be displayed; a step of analyzing location data present in said stream, as a function of said request, making it possible to identify wavelet coefficients relating to said portion in said data stream; a step of extracting said identified wavelet coefficients to form a reduced data stream; a step of transmitting said reduced data stream.
  • a server on receipt of a request from a client relating to a portion of the object, can select, within the global data flow, the subset or coefficients associated with the portion of the object considered. It can then construct a reduced flow, from the coefficients of the sub-assembly (s) concerned, and transmit it to the customer's display terminal.
  • the invention also relates to a signal representative of an object associated with a basic mesh consisting of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, comprising at at least one area of wavelet coefficients and at least one location area, comprising location data making it possible to locate wavelet coefficients relating to a portion of said object in said signal.
  • said wavelet coefficients being partitioned into at least two disjoint subsets each undergoing independent coding comprises a header, comprising at least some of said location data, and a wavelet coefficient area, comprising a sub-area identified by said location data for each of said subsets.
  • said wavelet coefficients being partitioned into at least two disjoint subsets each undergoing independent coding comprises at least one area of wavelet coefficients, comprising a sub- area identified by said location data for each of said subsets, said location data location comprising at least one marker at the start and / or at the end of each of the sub-areas.
  • the invention also relates to a data medium intended to store at least one object coded according to the method described above.
  • the invention also relates to a system for transmitting a data stream, between, on the one hand, at least one server and / or at least one data carrier, and, on the other hand, at least one display terminal , said data flow making it possible to reconstruct an object associated on the one hand with a basic mesh made up of a set of basic facets, and on the other hand with coefficients in a wavelet base corresponding to local modifications of said basic mesh.
  • such a system comprises: means for receiving a request defining a portion of said object to be displayed; means for analyzing location data present in said stream, as a function of said request, making it possible to identify wavelet coefficients relating to said portion in said data stream; means for extracting said identified wavelet coefficients to form a reduced data flow; - means for transmitting said reduced data flow.
  • the invention also relates to a terminal for viewing an object associated with a basic mesh consisting of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, comprising means for receiving a global data stream making it possible to reconstruct said object, further comprising means for formulating a request defining a portion of said object to be viewed intended for a server and / or a data medium , and means for reconstructing said portion from a reduced data stream, comprising wavelet coefficients relating to said portion, received from said server and / or from said data medium.
  • a terminal therefore differs greatly from the display terminals of the prior art.
  • the invention also relates to a server comprising means for storing at least one object coded according to the coding method described above and transmission means implementing the transmission method described above.
  • the invention finally relates to a device for coding an object associated with a basic mesh consisting of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, said device generating a global data stream making it possible to reconstruct said object, partitioning said wavelet coefficients into at least two disjoint subsets, and applying independent coding to each of said subsets, and comprising means of insertion, into said global data flow, of localization data making it possible to locate wavelet coefficients relating to a portion of said object in said global data flow, so as to allow selective reconstruction of said portion using coefficients of at least one of said subsets.
  • FIG. 1 presents a synoptic of the different steps implemented during the coding of a mesh object with at least two dimensions according to the invention
  • FIG. 2 illustrates an example of the structure of a data stream generated during the coding presented in FIG. 1, and comprising location data, according to a first variant of the invention
  • - Figure 3 details the structure of the data flow of Figure 2, when the location data is indicative of a distance within the flow
  • FIG. 1 presents a synoptic of the different steps implemented during the coding of a mesh object with at least two dimensions according to the invention
  • FIG. 2 illustrates an example of the structure of a data stream generated during the coding presented in FIG. 1, and comprising location data, according to a first variant of the invention
  • - Figure 3 details the structure of the data flow of Figure 2, when the location data is indicative of a distance within the flow
  • FIG. 1 presents a synoptic of the different steps implemented during the coding of a mesh object with at least two dimensions according to the invention
  • FIG. 2 illustrates an example of the structure
  • FIG. 4 describes an example of the structure of a data stream generated during the coding of a meshed object with at least two dimensions, and comprising location data distributed within the stream, according to a second variant of the invention
  • FIG. 5 presents a block diagram of the different steps implemented by a server for transmitting the data flow of FIGS. 2 to 4, on receipt of a request from a client terminal.
  • the general principle of the invention is based on the insertion of location data within a data stream generated during the wavelet coding of a mesh object with at least two dimensions, so as to allow selection and transmission. selective coefficients according to the area of the object with which they are associated.
  • FIG. 1 a particular embodiment of the coding method of the invention is presented.
  • wavelets an object with at least two dimensions coded according to a method called "wavelets”. It is recalled that, according to such a method, a basic mesh is associated with the object, and a plurality of wavelet coefficients, corresponding to the refinements to be made to the basic mesh in order to reconstruct a representation of the object. Each node of the basic mesh is thus associated with a wavelet coefficient.
  • a wavelet coefficient is a triplet of reals (x, y, z), accompanied by information I of spatial and frequency location, making it possible to know to which wavelet a coefficient is associated.
  • This information I can for example be a quadruplet (F0, a, b, c), where F0 represents a facet of the basic mesh, and (a, b, c) represent barycentric coordinates on this face.
  • the coding device performs a partition of the set of wavelet coefficients associated with the mesh object to be coded, into subsets M 15 M 2 , ..., M N.
  • These subsets are preferably disjoint. They can be constructed based, for example, on visual criteria. They each include the wavelet coefficients used to reconstruct a representation of a portion of the mesh object to be coded.
  • the mesh object to be coded is a three-dimensional character
  • the coding device defines, on each subset M i5 an arbitrary hierarchy by determining parentage links between the different vertices of the subset, if necessary.
  • parentage links between the different vertices of the subset, if necessary.
  • the coding device then performs (22) an independent coding of the wavelet coefficients of each of the subsets M i5 for i varying from 1 to N.
  • Such coding is for example a "zero-tree" type coding, and allows to compress the representation of the wavelet coefficients, and therefore of the associated mesh nodes, of each of the subsets M ; .
  • the coding device During a step referenced 23, the coding device generates a global data stream, comprising, on the one hand, the result of the coding (for example of the "zero-tree" type) of each of the subsets M i5 and secondly, location data making it possible to determine the position of each of the subsets M; in the stream.
  • the structure of such a flow makes it possible to obtain great flexibility in sending one or more JV1 subsets to a display terminal, according to a request from a client.
  • FIG. 2 an embodiment of a data stream 1, generated according to the method of FIG. 1, is presented.
  • each of the subsets M includes the wavelet coefficients associated with a basic facet of the object. It will of course be easy for a person skilled in the art to generalize the description below in the event that a subset M ; includes the wavelet coefficients associated with a plurality of basic facets, or with a plurality of nodes of the basic mesh.
  • the facets of the basic mesh are ordered in ascending order. For example, one arbitrarily chooses a starting facet, and one chooses an order of course of the set of basic facets (for example in the trigonometric, or anti-trigonometric direction), so that the starting facet is considered as the first facet, and so on until the last facet of the basic mesh traversed according to the order of course, which becomes the M lth basic facet.
  • a data stream 1 is generated by a coding device during the wavelet coding of an object, for example three-dimensional.
  • the data stream 1 comprises a header 10, and a zone of wavelet coefficients 11.
  • the wavelet coefficients area 11 is preferably divided into a plurality of sub-areas (not shown in FIG. 1), each grouping the wavelet coefficients associated with a facet of the basic mesh of the object.
  • a wavelet coefficient is a triplet of reals (x, y, z), accompanied by information I of spatial and frequency location, making it possible to know which wavelet a coefficient is associated with.
  • This information I can for example be a quadruplet (F0, a, b, c), where F0 represents a facet of the basic mesh, and (a, b, c) represent barycentric coordinates on this face.
  • each sub-zone comprises the "zero-tree" coding of the wavelet coefficients associated with a basic facet.
  • the coefficients are partitioned into a plurality of subsets M ;, the same subset being able to group together several basic facets FO, and an independent “zero-tree” coding is carried out for each of the subsets Mi.
  • Each sub-zone then comprises the “zero-tree” coding of the wavelet coefficients associated with a subset M;). It is of course also possible to envisage using any other coding technique allowing satisfactory compression and transmission of the wavelet coefficients. We preferentially use a coding technique allowing a specific coding of the insignificant parts of the object considered.
  • the header 10 includes the location data, making it possible to locate each of the sub-areas within the wavelet coefficient area 11. It also includes information relating to the type of coding implemented, such as information on the type of wavelet functions used, the number of wavelet coefficients, the characteristics of the basic mesh (number of basic facets, ...), or even the maximum level of subdivision of the basic mesh. In the particular embodiment presented in relation to the figure,
  • the area of the wavelet coefficients 11 is divided into a plurality of sub-areas referenced 111 to 113.
  • the sub-area referenced 111 is the "sub-area 1" associated with the first facet of the basic mesh
  • the sub-area referenced 112 is associated with the second basic facet
  • sub-area referenced 113 is associated with the m th base facet. It will of course be noted that, for the sake of simplification of the figure, not all the sub-zones have been represented.
  • the header 10 comprises a preamble 101, and a plurality of location data referenced 102 to 104.
  • the preamble 101 comprises for example data relating to the type of mesh and to the type of wavelets used, mentioned above.
  • the area referenced 102 entitled “offset 1" provides information on the position of the wavelet coefficients associated with the first basic facet in bit stream 1, that is to say that it provides information, for example, on the distance separating the end of the preamble 101 and the beginning of the "sub-area 1" referenced 111.
  • such a distance is expressed in number of bits.
  • the location data area referenced 102 can of course also provide information on the distance separating the start of the "sub-area 1" referenced 111 from any other reference element of the data stream 1 , so as to allow the localization of the wavelet coefficients of the "sub-area 1" 111 in the bit stream 1.
  • the "offset 2" area 103 (respectively the “offset M” area 104) provides information on the number of bits separating the start of the "sub area 2" 112 (respectively of the "sub area M” 113) and the end of the preamble 101.
  • a server in response to a request from a client terminal, wishes to transmit to the latter the wavelet coefficients associated with the M th basic facet, it consults the location data "M shift" 104 of the 'header 10.
  • the "M shift" area 104 indicates to the server the number of bits separating the end of the preamble 101 from the start of the "M sub-area” 113, and the server can therefore go directly to the start of the " sub-area M "113, so as to extract and then transmit these only coefficients to the client terminal.
  • the data stream 1 of FIG. 4 comprises a header 10 and a wavelet coefficient area 11, comprising on the one hand sub-areas of wavelet coefficients referenced 111 to 113 and location data areas referenced 120 to 123.
  • the location data referenced 120 to 123 are therefore distributed in the data stream 1, and not grouped in the header 10 as previously.
  • the location data 120 to 123 are for example markers indicating the start and / or the end of a wavelet coefficient sub-area.
  • the area “mark 1" referenced 120 indicates the beginning of the "sub-area 1" 111, comprising the wavelet coefficients associated with the first facet of the basic mesh.
  • the zone “mark 2" referenced 121 marks the beginning of the "sub-zone 2" referenced 112, and the “mark M” referenced 123 marks the beginning of the "sub-zone M" referenced 113.
  • the information contained in the fields "mark 1" 120, "mark 2" 121 and so on up to “mark M” 123 are identical.
  • a plurality of identical markers is inserted into the zone of wavelet coefficients 11 of the data stream 1, so as to separate the different sub-zones each associated with a facet of the basic mesh.
  • a server wishes to send the wavelet coefficients associated with the "M sub-area” 113 to a display terminal, it traverses all of the flow 1, and counts the markers that it encounters, so as to determine the M -th marker 123, and thus determine where begins the "subfield M" 113, comprising code "zero-tree” wavelet coefficients associated with the m th base facet.
  • the client terminal receives only the wavelet coefficients of the "sub-area M" 113, and does not need to decode the entire stream 1 to access the wavelet coefficients it needs.
  • the markers referenced are identical.
  • the marker "mark 1" 120 specifically indicates the start of "sub-area 1" 111
  • the marker “mark 2" 121 specifically indicates the start of "Subarea 2” 112, and so on. (We can of course also consider, for example, that the markers referenced 120 to 123 indicate the end of the associated sub-areas 111 to 113.)
  • a server wishing to transmit the coefficients of the "M sub-area” 113 in response to a request from a client traverses the data stream 1, until it finds the marker "mark M” 123, and deduces the position therefrom. from the start of "M sub-area” 113.
  • FIGS. 3 and 4 It is also possible to envisage any other embodiment of the invention, not illustrated in FIGS. 3 and 4, but which makes it possible to construct a data stream 1, in which location data are inserted allowing a server to determine the location a sub-area of wavelet coefficients associated with a basic facet, or more generally with a subset M ; grouping a plurality of nodes or basic facets, with a view to its extraction and its selective transmission in response to a request from a client.
  • Location data inserted in the header 10, would provide information on the distance between a reference element (for example the end of the preamble 101) and the start of a set of sub-areas. Markers would be inserted within such a set, so as to indicate the beginning and / or the end of each of the sub-areas of the set.
  • a server could go to position itself directly at the start of a set of sub-areas, then browse this set, and determine, using the markers, the position of or sub-area (s) of the set that it must transmit in response to a request from a client.
  • the terminal therefore sends a request to the server specifying the portion of the scene for which it wishes to obtain the wavelet coefficients determining the refinements to be made to the basic mesh in order to obtain a satisfactory reconstruction of the portion.
  • the server receives the request from the client terminal, and determines the facets of the basic mesh concerned by the request.
  • the server browses the data stream generated at the output of a scene coding device, and analyzes the location data present in this stream. For example, it consults the location data contained in the header of the stream.
  • a step referenced 42 determines the position of the sub-areas of wavelet coefficients associated with the portion of the scene considered, as a function of the location data which it has previously analyzed.
  • the server extracts (43) these coefficients from the global data flow, so as to form a reduced flow intended for the client terminal.
  • the server transmits this reduced stream to the client's viewing terminal, so that the latter can reconstruct the portion of the scene that the client wishes to view, without having to decode the entire stream of global data.

Abstract

The invention relates to a method of coding an object having at least two dimensions which is associated with a basic mesh comprising a set of basic surfaces and with coefficients in a base of wavelets corresponding to local modifications to said basic mesh. The inventive method delivers a global data flow that can be used to reconstruct the object. According to the invention, said wavelet coefficients are partitioned into at least two disjoint subsets each of which is encoded independently. Subsequently, positional data are inserted by the method into the global data flow which can be used to locate wavelet coefficients relative to a portion of the object in said global data flow, in such a way as to enable a selective reconstruction of said portion using the coefficients of at least one of said subsets.

Description

PROCEDE DE CODAGE PAR ONDELETTES D ' UN OBJET MAILLE WAVES CODING METHOD OF A MESH OBJECT
Le domaine de l'invention est celui du codage d'objets maillés à au moins deux dimensions. Plus précisément, l'invention concerne la représentation et le codage de maillages, ou de textures codées par maillages, associés à des objets d'une scène graphique mettant en œuvre une méthode dite "à ondelettes". L'invention s'applique plus particulièrement, mais non exclusivement aux ondelettes de 2ème génération, présentées notamment dans le document de Wim Sweldens, intitulé "The Lifting Scheme : A Construction of Second Génération Wavelets" (en français, "Le procédé d'élévation : une construction des ondelettes de deuxième génération"), SIAM Journal on Mafhematical Analysis, Volume 29, number 2, pp 511-546, 1998.The field of the invention is that of coding mesh objects with at least two dimensions. More specifically, the invention relates to the representation and coding of meshes, or of textures coded by meshes, associated with objects of a graphic scene implementing a method called "wavelet". The invention applies more particularly, but not exclusively to 2nd generation wavelets, presented in particular in the document by Wim Sweldens, entitled "The Lifting Scheme: A Construction of Second Generation Wavelets" (in French, "The process of elevation: a construction of second generation wavelets "), SIAM Journal on Mafhematical Analysis, Volume 29, number 2, pp 511-546, 1998.
L'invention trouve des applications dans tous les domaines où il est souhaitable d'optimiser le stockage et/ou la transmission d'images. L'invention s'applique notamment, mais non exclusivement, au stockage et à la transmission de modèles tridimensionnels, de grilles d'élévation, et d'objets et de textures codés par maillages bidimensionnels.The invention finds applications in all fields where it is desirable to optimize the storage and / or transmission of images. The invention applies in particular, but not exclusively, to the storage and transmission of three-dimensional models, elevation grids, and of objects and textures coded by two-dimensional meshes.
On rappelle que les méthodes de codage dites "à ondelettes" permettent de représenter un maillage comme une succession de détails ajoutés à un maillage de base. La théorie générale de cette technique est notamment décrite dans l'article de M. Lounsbery, T. DeRose et J. Warren, "Multiresolution Analysis for Surfaces of Arbitrary Topological Type" (ACM Transaction on Graphics, Vol. 16, No.l, pp. 34-73, Janvier 1997). Le principe général de cette technique consiste à développer un homéomorphisme entre un objet à coder (tel qu'un maillage 3D par exemple) et un maillage simple (plus généralement appelé "maillage de base") dans une base de fonctions particulières, appelées ondelettes de deuxième génération. Selon cette technique, un maillage est donc représenté par une suite de coefficients qui correspondent aux coordonnées dans une base d'ondelettes d'une paramétrisation dudit maillage par un polyèdre simple.It is recalled that the so-called "wavelet" coding methods make it possible to represent a mesh as a succession of details added to a basic mesh. The general theory of this technique is described in particular in the article by M. Lounsbery, T. DeRose and J. Warren, "Multiresolution Analysis for Surfaces of Arbitrary Topological Type" (ACM Transaction on Graphics, Vol. 16, No. 1, pp. 34-73, January 1997). The general principle of this technique consists in developing a homeomorphism between an object to be coded (such as a 3D mesh for example) and a simple mesh (more generally called "basic mesh") in a base of particular functions, called wavelets of second generation. According to this technique, a mesh is therefore represented by a series of coefficients which correspond to the coordinates in a wavelet base of a parametrization of said mesh by a simple polyhedron.
Ainsi, un objet codé selon une telle technique se présente comme l'union des deux éléments suivants : le maillage de base, qui comporte généralement peu de facettes, et représente une version grossière de l'objet à coder ; les coefficients d'ondelettes, qui sont des triplets de réels affectés simultanément à une zone précise du maillage de base et à un niveau de subdivision donné de ce maillage. Ces coefficients d'ondelettes représentent les raffinements à apporter à la zone à laquelle ils sont associés pour converger vers la géométrie de l'objet initial.Thus, an object coded according to such a technique is presented as the union of the following two elements: the basic mesh, which generally has few facets, and represents a coarse version of the object to be coded; the wavelet coefficients, which are triplets of real numbers assigned simultaneously to a precise area of the basic mesh and to a given level of subdivision of this mesh. These wavelet coefficients represent the refinements to be made to the zone with which they are associated in order to converge towards the geometry of the initial object.
Pour pouvoir reconstruire une représentation de l'objet codé sur un terminal de visualisation, il est nécessaire de transmettre à ce dernier, d'une part le maillage de base, et d'autre part les coefficients d'ondelettes associés. Dans ce dessein, il faut déterminer une méthode de codage efficace des coefficients d'ondelettes, en vue de leur compression et de leur transmission, par exemple par l'intermédiaire de réseaux de communication, vers le terminal de visualisation, éventuellement distant.To be able to reconstruct a representation of the coded object on a display terminal, it is necessary to transmit to the latter, on the one hand the basic mesh, and on the other hand the associated wavelet coefficients. For this purpose, it is necessary to determine an effective coding method for the wavelet coefficients, with a view to their compression and their transmission, for example via communication networks, to the display terminal, possibly remote.
A ce jour, c'est la technique de codage dite de "zero-trees" qui permet d'atteindre les meilleurs résultats en termes de compression des coefficients d'ondelettes à transmettre. Une telle technique consiste à décrire un ordre de codage des coefficients d'ondelettes, qui est prédéterminée et connue à l'avance des terminaux émetteur et récepteur (par exemple d'un serveur et d'un terminal de visualisation client). Une telle technique permet donc, lors de la transmission de coefficients d'ondelettes, d'éviter de transmettre des informations relatives aux plages de coefficients non-significatifs pour le codage de l'objet considéré. De tels codages par "zero-trees" sont généralement couplés à un codage "par plan de bits", qui permet, lors de la transmission des coefficients, de transmettre les bits les plus significatifs de chaque coefficient en premier.To date, it is the so-called "zero-trees" coding technique which achieves the best results in terms of compression of the wavelet coefficients to be transmitted. One such technique consists in describing an order of coding of the wavelet coefficients, which is predetermined and known in advance by the transmitter and receiver terminals (for example of a server and of a client display terminal). Such a technique therefore makes it possible, during the transmission of wavelet coefficients, to avoid transmitting information relating to the ranges of non-significant coefficients for the coding of the object considered. Such zero-tree coding is generally coupled to a "bit-plane" coding, which makes it possible, when transmitting the coefficients, to transmit the most significant bits of each coefficient first.
Pour une description plus détaillée des techniques par "zero-trees", on pourra se référer aux articles de Jérôme M. Shapiro, "Embedded Image CodingFor a more detailed description of the techniques by "zero-trees", one can refer to the articles by Jérôme M. Shapiro, "Embedded Image Coding
Using Zerotrees of Wavelet Coefficients" (IEEE Trans. Sig. Proc. 41(12),Using Zerotrees of Wavelet Coefficients "(IEEE Trans. Sig. Proc. 41 (12),
Dec.1993) et de A. Said, W. A. Pearlman, "A New, Fast, and Efficient ImageDec.1993) and A. Said, W. A. Pearlman, "A New, Fast, and Efficient Image
Codée Based on Set Partitioning in Hierarchical Trees" (IEEE Trans. Cire.Coded Based on Set Partitioning in Hierarchical Trees "(IEEE Trans. Cire.
Système. For Video Tech., 6(3), Juin 1996). Ces techniques, initialement développées pour le codage d'images bidimensionnelles, ont récemment été appliquées aux coefficients d'ondelettes de deuxième génération, ainsi que décrit dans les publications "ProgressiveSystem. For Video Tech., 6 (3), June 1996). These techniques, originally developed for the coding of two-dimensional images, have recently been applied to second generation wavelet coefficients, as described in the publications "Progressive
Geometry Compression" (SIGGRAPH 2000 proceedings) par A. Khodakovsky, P.Geometry Compression "(SIGGRAPH 2000 proceedings) by A. Khodakovsky, P.
Schroder et W. Sweldens, et "Hierarchical Coding of 3D Models with Subdivision Surfaces" (IEEE ICIP 2000 Proceedings) par F. Moran et N. Garcia.Schroder and W. Sweldens, and "Hierarchical Coding of 3D Models with Subdivision Surfaces" (IEEE ICIP 2000 Proceedings) by F. Moran and N. Garcia.
Dans ces deux dernières références, les techniques de codage reposent sur l'adoption arbitraire d'une hiérarchie entre les coefficients d'ondelettes à transmettre, permettant de déterminer leur ordre de transmission vers un terminal de visualisation ou de stockage distant. Cet ordre, connu du terminal récepteur, permet à ce dernier de reconstruire l'ensemble de l'objet transmis.In these last two references, the coding techniques are based on the arbitrary adoption of a hierarchy between the wavelet coefficients to be transmitted, making it possible to determine their order of transmission to a remote display or storage terminal. This order, known to the receiving terminal, allows the latter to reconstruct the entire transmitted object.
Un inconvénient de ces techniques de l'art antérieur est que le serveur en charge de la transmission des coefficients d'ondelettes vers un terminal de visualisation ne peut pas effectuer de sélection des coefficients qu'il souhaite envoyer, et transmet donc systématiquement l'ensemble des coefficients au terminal client.A disadvantage of these techniques of the prior art is that the server in charge of transmitting the wavelet coefficients to a display terminal cannot make a selection of the coefficients which it wishes to send, and therefore systematically transmits the whole coefficients at the client terminal.
Or, il est fréquent que le client n'ait besoin de recevoir que les raffinements associés à une portion du maillage de base. Par exemple, lors d'une visite virtuelle de musée, un client peut souhaiter, dans un premier temps, observer une vue d'ensemble d'une sculpture, puis ne visualiser qu'un détail de son visage. Seuls les coefficients d'ondelettes correspondant aux raffinements du maillage de base sur cette portion du visage lui sont donc nécessaires.However, it is frequent that the customer need only receive the refinements associated with a portion of the basic mesh. For example, during a virtual museum visit, a client may wish, first, to observe an overview of a sculpture, then to visualize only a detail of his face. Only the wavelet coefficients corresponding to the refinements of the basic mesh on this portion of the face are therefore necessary.
En utilisant les techniques de l'art antérieur, il est impossible au serveur d'effectuer une sélection des coefficients inutiles et de n'envoyer que la portion de codage correspondant à la zone que le client souhaite visualiser.Using the techniques of the prior art, it is impossible for the server to make a selection of the useless coefficients and to send only the coding portion corresponding to the area that the client wishes to view.
Un inconvénient de ces techniques de l'art antérieur est donc que le client reçoit tous les coefficients d'ondelettes, y compris ceux correspondant au codage de portions de l'objet qu'il ne souhaite pas visualiser, et dont il n'a donc pas besoin. Le réseau de communication utilisé pour la transmission des coefficients d'ondelettes est donc inutilement surchargé, et le débit de transmission des coefficients utiles diminue en conséquence.A disadvantage of these techniques of the prior art is therefore that the client receives all the wavelet coefficients, including those corresponding to the coding of portions of the object which he does not wish to visualize, and of which he therefore no need. The communication network used for the transmission of the wavelet coefficients is therefore unnecessarily overloaded, and the transmission rate of the useful coefficients decreases accordingly.
De plus, dans le cas où le terminal de visualisation présente des capacités de traitement faibles, la reconstruction d'une représentation de l'objet à partir de l'ensemble des coefficients d'ondelettes est longue, ce qui est source de désagrément pour le client.In addition, in the case where the display terminal has low processing capacities, the reconstruction of a representation of the object from all of the wavelet coefficients is long, which is a source of inconvenience for the customer.
Un autre inconvénient de ces techniques de l'art antérieur est donc que, si le client souhaite procéder à un décodage adaptatif, de manière à ne visualiser que les portions de l'objet qui l'intéressent, il doit effectuer lui-même un tri des coefficients d'ondelettes transmis. Le client doit donc décoder l'ensemble du flux de données transmis par le serveur, ou provenant d'un support de données, puis juger de la pertinence des coefficients d'ondelettes ainsi décodés, en fonction de la portion du maillage à laquelle ils sont associés.Another disadvantage of these techniques of the prior art is therefore that, if the client wishes to carry out an adaptive decoding, so as to view only the portions of the object which interest him, he must perform a sorting himself transmitted wavelet coefficients. The client must therefore decode the entire data stream transmitted by the server, or coming from a data carrier, then judge the relevance of the wavelet coefficients thus decoded, according to the portion of the mesh to which they are associates.
En conséquence, un inconvénient de ces techniques de l'art antérieur est que, pour réaliser un décodage adaptatif, le client doit disposer d'un terminal de visualisation présentant des capacités de traitement suffisantes pour effectuer les opérations de décodage du flux global, sélection des coefficients pertinents, et reconstruction d'une représentation de l'objet à partir des coefficients ainsi sélectionnés. En d'autres termes, un inconvénient de ces techniques de l'art antérieur est qu'il est impossible, pour un client disposant d'un terminal de visualisation présentant des capacités de traitement réduites, de réaliser un décodage adaptatif.Consequently, a disadvantage of these techniques of the prior art is that, in order to carry out an adaptive decoding, the client must have a display terminal having sufficient processing capacities to carry out the decoding operations of the global stream, selection of the relevant coefficients, and reconstruction of a representation of the object from the coefficients thus selected. In other words, a disadvantage of these techniques of the prior art is that it is impossible, for a client having a display terminal having reduced processing capacities, to carry out an adaptive decoding.
L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur.The invention particularly aims to overcome these drawbacks of the prior art.
Plus précisément, un objectif de l'invention est de mettre en œuvre une technique de codage d'un objet par ondelettes, permettant à un terminal de visualisation de réaliser un décodage adaptatif de l'objet.More specifically, an objective of the invention is to implement a technique of coding an object by wavelets, allowing a display terminal to carry out an adaptive decoding of the object.
Un autre objectif de l'invention est de fournir une technique de codage d'un objet par ondelettes, permettant à un serveur de sélectionner certains coefficients d'ondelettes, et de transmettre les coefficients sélectionnés, en fonction d'une zone du maillage de base à laquelle ils sont associés. Notamment, un objectif de l'invention est de permettre à un serveur de ne transmettre que certains coefficients d'ondelettes, en fonction d'une requête d'un client. L'invention a encore pour objectif de mettre en œuvre une technique de codage de maillages représentatifs d'objets ou de scènes 3D, permettant une reconstruction adaptative d'un maillage au sein d'un terminal de visualisation.Another objective of the invention is to provide a technique for coding an object by wavelets, allowing a server to select certain wavelet coefficients, and to transmit the selected coefficients, according to an area of the basic mesh. with which they are associated. In particular, an objective of the invention is to allow a server to transmit only certain wavelet coefficients, according to a request from a client. The invention also aims to implement a technique of coding meshes representative of objects or 3D scenes, allowing an adaptive reconstruction of a mesh within a display terminal.
Un autre objectif de l'invention est de fournir une technique de codage d'un objet par ondelettes qui soit adaptée aux terminaux de visualisation présentant de faibles capacités de traitement.Another objective of the invention is to provide a coding technique for an object using wavelets which is suitable for display terminals having low processing capacities.
L'invention a également pour objectif, bien sûr, de fournir une technique de reconstruction et de transmission à travers un réseau de communication d'un objet codé selon ce procédé de codage. Notamment, au cours d'une telle transmission, un objectif de l'invention est de ne pas surcharger inutilement les réseaux de communication.The invention also aims, of course, to provide a reconstruction and transmission technique over a communication network of an object coded according to this coding method. In particular, during such a transmission, an objective of the invention is not to unnecessarily overload the communication networks.
Encore un objectif de l'invention est de mettre en œuvre une technique de codage d'un objet par ondelettes qui soit adaptée à une transmission via un réseau de communication à débit limité.Another objective of the invention is to implement a technique for coding an object by wavelets which is suitable for transmission via a communication network with limited bit rate.
Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints à l'aide d'un procédé de codage d'un objet à au moins deux dimensions associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, ledit procédé délivrant un flux de données global permettant de reconstruire ledit objet. Selon l'invention, lesdits coefficients d'ondelettes sont partitionnés en au moins deux sous-ensembles disjoints subissant chacun un codage indépendant, et ledit procédé insère, dans ledit flux de données global, des données de localisation permettant de repérer des coefficients d'ondelettes relatifs à une portion dudit objet dans ledit flux de données global, de façon à permettre une reconstruction sélective de ladite portion à l'aide des coefficients d'au moins un desdits sous- ensembles.These objectives, as well as others which will appear subsequently, are achieved using a method of coding an object with at least two dimensions associated with a basic mesh made up of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, said method delivering a global data stream making it possible to reconstruct said object. According to the invention, said wavelet coefficients are partitioned into at least two disjoint subsets each undergoing independent coding, and said method inserts, into said global data stream, location data making it possible to identify wavelet coefficients relating to a portion of said object in said global data flow, so as to allow a selective reconstruction of said portion using the coefficients of at least one of said subsets.
Ainsi, l'invention repose sur une approche tout à fait nouvelle et inventive du codage d'un objet par ondelettes et de la mise en forme des données ainsi codées au sein d'un flux de données global. En effet, l'invention repose notamment sur la génération d'un flux de données global, au sein duquel on peut aisément repérer les coefficients d'ondelettes, en fonction de la portion de l'objet maillé à laquelle ils sont associés. Ceci est notamment permis, dans le cadre de l'invention, par l'insertion de données de localisation au sein du flux de données, de façon à permettre une visualisation adaptative de l'objet codé par un terminal client.Thus, the invention is based on a completely new and inventive approach to the coding of an object by wavelets and the shaping of the data thus coded within a global data stream. Indeed, the invention is notably based on the generation of a global data flow, within which one can easily identify the wavelet coefficients, as a function of the portion of the mesh object with which they are associated. This is in particular allowed, within the framework of the invention, by the insertion of location data within the data stream, so as to allow an adaptive visualization of the coded object by a client terminal.
Avantageusement, chacun desdits sous-ensembles disjoints est une facette de base.Advantageously, each of said disjoint subsets is a basic facet.
Ainsi, on peut aisément repérer, au sein du flux de données global, les coefficients d'ondelettes associés à chacune des facettes de base, grâce à la présence dans le flux de données de localisation. On peut ainsi sélectivement reconstruire une portion d'un objet maillé, à partir des coefficients d'ondelettes associés à la ou aux facettes de la portion considérée.Thus, it is easy to identify, within the global data stream, the wavelet coefficients associated with each of the basic facets, thanks to the presence in the location data stream. It is thus possible to selectively reconstruct a portion of a meshed object, from the wavelet coefficients associated with the facet (s) of the portion considered.
Préférentiellement, ledit codage met en œuvre les étapes suivantes : détection d'au moins une partie non significative ; - traitement spécifique de chacune desdites parties non-significatives. En effet, un codage des sous-ensembles de coefficients d'ondelettes (c'est- à-dire une transformation de ces coefficients en une suite binaire) tenant compte des parties non-significatives permet d'atteindre un meilleur taux de compression de ces coefficients, en vue de leur transmission. De manière préférentielle, ledit codage met en œuvre une technique de type "zero-tree".Preferably, said coding implements the following steps: detection of at least one non-significant part; - specific treatment of each of said non-significant parts. Indeed, a coding of the subsets of wavelet coefficients (that is to say a transformation of these coefficients into a binary sequence) taking into account the non-significant parts makes it possible to achieve a better compression rate of these coefficients, with a view to their transmission. Preferably, said coding implements a "zero-tree" type technique.
En effet, la technique "zero-tree" est à ce jour la technique permettant d'atteindre les meilleurs résultats de compression. On peut bien sûr également envisager d'utiliser toute autre technique de codage des coefficients d'ondelettes au sein du flux de données global, adaptée à la mise en œuvre de l'invention.Indeed, the "zero-tree" technique is to date the technique for achieving the best compression results. It is of course also possible to envisage using any other technique for coding the wavelet coefficients within the overall data stream, adapted to the implementation of the invention.
Selon une première variante de l'invention, ledit flux de données global comprend un en-tête, comprenant au moins certaines desdites données de localisation, et une zone de coefficients d'ondelettes, comprenant une sous-zone identifiée par lesdites données de localisation pour chacun desdits sous-ensembles disjoints.According to a first variant of the invention, said global data stream comprises a header, comprising at least some of said location data, and a zone of wavelet coefficients, comprising a sub-area identified by said location data for each of said disjoint subsets.
Ainsi, si la liste des coefficients d'ondelettes a été partitionnée en N sous- ensembles, correspondant chacun à une portion de l'objet maillé, la zone de coefficients d'ondelettes du flux de données global comprend N sous-zones, identifiables, au sein du flux, à l'aide des données de localisation. On notera ici que les données de localisation permettant d'identifier une sous-zone du flux peuvent être comprises dans l'en-tête et/ou dans toute autre partie du flux de données.Thus, if the list of wavelet coefficients has been partitioned into N subsets, each corresponding to a portion of the meshed object, the wavelet coefficients zone of the global data stream includes N identifiable sub-zones, within the flow, using location data. It will be noted here that the location data making it possible to identify a sub-zone of the flow can be included in the header and / or in any other part of the data flow.
Avantageusement, lesdites données de localisation contenues dans ledit en-tête identifient une sous-zone, en définissant une distance entre la position d'un élément repère et le début de ladite sous-zone dans ledit flux.Advantageously, said location data contained in said header identifies a sub-area, by defining a distance between the position of a reference element and the start of said sub-area in said flow.
Un tel élément repère peut être par exemple le début ou la fin de l'en-tête, ou tout autre élément dont on peut aisément connaître la position dans le flux. La distance peut être par exemple exprimée en nombre de bits.Such a reference element can for example be the start or the end of the header, or any other element whose position in the flow can easily be known. The distance can for example be expressed in number of bits.
De manière avantageuse, ledit en-tête comprend en outre au moins certaines des informations appartenant au groupe comprenant : le nombre de facettes de base ; le type d'ondelettes ; des informations relatives audit objet ; des informations relatives au codage desdites données de localisation. Ces informations peuvent être exploitées par un terminal de visualisation pour reconstruire, à partir du flux, une représentation d'une portion, ou de la totalité, de l'objet maillé.Advantageously, said header further comprises at least some of the information belonging to the group comprising: the number of basic facets; the type of wavelet; information relating to said object; information relating to the coding of said location data. This information can be used by a display terminal to reconstruct, from the flow, a representation of a portion, or of the whole, of the meshed object.
Selon une deuxième variante de l'invention, ledit flux de données global comprend au moins une zone de coefficients d'ondelettes, comprenant une sous- zone identifiée par lesdites données de localisation pour chacun desdits sous- ensembles disjoints, lesdites données de localisation comprenant au moins un marqueur au début et/ou à la fin de chacune des sous-zones.According to a second variant of the invention, said global data stream comprises at least one area of wavelet coefficients, comprising a sub-area identified by said location data for each of said disjoint subsets, said location data comprising at least minus one marker at the beginning and / or at the end of each of the sub-areas.
Ainsi, les données de localisation sont réparties dans l'ensemble du flux de données global, et non regroupées dans un en-tête, comme précédemment. Préférentiellement, lesdites sous-zones sont organisées dans ledit flux par ordre de facette de base croissant.Thus, the location data is distributed throughout the overall data flow, and not grouped in a header, as before. Preferably, said sub-areas are organized in said stream in order of increasing basic facet.
Ainsi, lorsque chacune des facettes de base subit un codage (par exemple de type "zero-tree") indépendant, on prévoit d'ordonner les sous-zones au sein du flux en fonction du numéro de la facette de base à laquelle elles sont associées, par exemple par ordre croissant.Thus, when each of the basic facets undergoes independent coding (for example of the "zero-tree" type), provision is made to order the sub-zones within the stream as a function of the number of the basic facet to which they are associated, for example in ascending order.
L'invention concerne également un procédé de transmission d'un flux de données, entre, d'une part, au moins un serveur et/ou au moins un support de données, et, d'autre part, au moins un terminal de visualisation, ledit flux de données permettant de reconstruire un objet associé d'une part à un maillage de base constitué d'un ensemble de facettes de base, et d'autre part à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base.The invention also relates to a method for transmitting a data stream, between, on the one hand, at least one server and / or at least one data carrier, and, on the other hand, at least one display terminal , said data flow making it possible to reconstruct an object associated on the one hand with a basic mesh made up of a set of basic facets, and on the other hand with coefficients in a wavelet base corresponding to local modifications of said basic mesh.
Selon l'invention, un tel procédé de transmission comprend : une étape de réception d'une requête définissant une portion dudit objet à visualiser ; une étape d'analyse de données de localisation présentes dans ledit flux, en fonction de ladite requête, permettant d'identifier des coefficients d'ondelettes relatifs à ladite portion dans ledit flux de données ; une étape d'extraction desdits coefficients d'ondelettes identifiés pour former un flux de données réduit ; une étape de transmission dudit flux de données réduit.According to the invention, such a transmission method comprises: a step of receiving a request defining a portion of said object to be displayed; a step of analyzing location data present in said stream, as a function of said request, making it possible to identify wavelet coefficients relating to said portion in said data stream; a step of extracting said identified wavelet coefficients to form a reduced data stream; a step of transmitting said reduced data stream.
Ainsi, un serveur, sur réception d'une requête d'un client relative à une portion de l'objet, peut sélectionner, au sein du flux de données global, le ou les sous-ensembles de coefficients associés à la portion de l'objet considérée. Il peut alors construire un flux réduit, à partir des coefficients du ou des sous-ensembles concernés, et le transmettre au terminal de visualisation du client.Thus, a server, on receipt of a request from a client relating to a portion of the object, can select, within the global data flow, the subset or coefficients associated with the portion of the object considered. It can then construct a reduced flow, from the coefficients of the sub-assembly (s) concerned, and transmit it to the customer's display terminal.
L'invention concerne encore un signal représentatif d'un objet associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, comprenant au moins une zone de coefficients d'ondelettes et au moins une zone de localisation, comprenant des données de localisation permettant de repérer des coefficients d'ondelettes relatifs à une portion dudit objet dans ledit signal.The invention also relates to a signal representative of an object associated with a basic mesh consisting of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, comprising at at least one area of wavelet coefficients and at least one location area, comprising location data making it possible to locate wavelet coefficients relating to a portion of said object in said signal.
Selon un premier mode de réalisation de l'invention, lesdits coefficients d'ondelettes étant partitionnés en au moins deux sous-ensembles disjoints subissant chacun un codage indépendant, un tel signal comprend un en-tête, comprenant au moins certaines desdites données de localisation, et une zone de coefficients d'ondelettes, comprenant une sous-zone identifiée par lesdites données de localisation pour chacun desdits sous-ensembles. Selon un deuxième mode de réalisation de l'invention, lesdits coefficients d'ondelettes étant partitionnés en au moins deux sous-ensembles disjoints subissant chacun un codage indépendant, un tel signal comprend au moins une zone de coefficients d'ondelettes, comprenant une sous-zone identifiée par lesdites données de localisation pour chacun desdits sous-ensembles, lesdites données de localisation comprenant au moins un marqueur au début et/ou à la fin de chacune des sous-zones.According to a first embodiment of the invention, said wavelet coefficients being partitioned into at least two disjoint subsets each undergoing independent coding, such a signal comprises a header, comprising at least some of said location data, and a wavelet coefficient area, comprising a sub-area identified by said location data for each of said subsets. According to a second embodiment of the invention, said wavelet coefficients being partitioned into at least two disjoint subsets each undergoing independent coding, such a signal comprises at least one area of wavelet coefficients, comprising a sub- area identified by said location data for each of said subsets, said location data location comprising at least one marker at the start and / or at the end of each of the sub-areas.
L'invention concerne aussi un support de données destiné à stocker au moins un objet codé selon le procédé décrit précédemment. L'invention concerne encore un système de transmission d'un flux de données, entre, d'une part, au moins un serveur et/ou au moins un support de données, et, d'autre part, au moins un terminal de visualisation, ledit flux de données permettant de reconstruire un objet associé d'une part à un maillage de base constitué d'un ensemble de facettes de base, et d'autre part à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base.The invention also relates to a data medium intended to store at least one object coded according to the method described above. The invention also relates to a system for transmitting a data stream, between, on the one hand, at least one server and / or at least one data carrier, and, on the other hand, at least one display terminal , said data flow making it possible to reconstruct an object associated on the one hand with a basic mesh made up of a set of basic facets, and on the other hand with coefficients in a wavelet base corresponding to local modifications of said basic mesh.
Selon l'invention, un tel système comprend : des moyens de réception d'une requête définissant une portion dudit objet à visualiser ; - des moyens d'analyse de données de localisation présentes dans ledit flux, en fonction de ladite requête, permettant d'identifier des coefficients d'ondelettes relatifs à ladite portion dans ledit flux de données ; des moyens d'extraction desdits coefficients d'ondelettes identifiés pour former un flux de données réduit ; - des moyens de transmission dudit flux de données réduit.According to the invention, such a system comprises: means for receiving a request defining a portion of said object to be displayed; means for analyzing location data present in said stream, as a function of said request, making it possible to identify wavelet coefficients relating to said portion in said data stream; means for extracting said identified wavelet coefficients to form a reduced data flow; - means for transmitting said reduced data flow.
L'invention concerne encore un terminal de visualisation d'un objet associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, comprenant des moyens de réception d'un flux de données global permettant de reconstruire ledit objet, comprenant en outre des moyens de formulation d'une requête définissant une portion dudit objet à visualiser à destination d'un serveur et/ou d'un support de données, et des moyens de reconstruction de ladite portion à partir d'un flux de données réduit, comprenant des coefficients d'ondelettes relatifs à ladite portion, reçu dudit serveur et/ou dudit support de données. Un tel terminal diffère donc fortement des terminaux de visualisation de l'art antérieur. En effet, il peut envoyer une requête vers un serveur, identifiant la ou les portion(s) de l'objet maillé que le client souhaite visualiser, et reconstruire à partir des seuls coefficients d'ondelettes associés à cette ou ces portion(s), qu'il aura préalablement décodés, une représentation correspondante de la ou des ρortion(s) de l'objet. Un tel terminal diffère donc des terminaux de l'art antérieur en ce qu'il ne décode plus l'ensemble d'un flux de données global pour pouvoir sélectionner les coefficients d'ondelettes associés à une portion de l'objet, et reconstruire une représentation de cette portion. L'invention concerne également un serveur comprenant des moyens de stockage d'au moins un objet codé selon le procédé de codage décrit précédemment et des moyens de transmission mettant en œuvre le procédé de transmission décrit ci-dessus.The invention also relates to a terminal for viewing an object associated with a basic mesh consisting of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, comprising means for receiving a global data stream making it possible to reconstruct said object, further comprising means for formulating a request defining a portion of said object to be viewed intended for a server and / or a data medium , and means for reconstructing said portion from a reduced data stream, comprising wavelet coefficients relating to said portion, received from said server and / or from said data medium. Such a terminal therefore differs greatly from the display terminals of the prior art. Indeed, it can send a request to a server, identifying the portion (s) of the mesh object that the client wishes to view, and reconstruct from the only wavelet coefficients associated with this or these portion (s) , that it will have previously decoded, a corresponding representation of the object (s) ρortion (s). Such a terminal therefore differs from the terminals of the prior art in that it no longer decodes the whole of a global data stream in order to be able to select the wavelet coefficients associated with a portion of the object, and reconstruct a representation of this portion. The invention also relates to a server comprising means for storing at least one object coded according to the coding method described above and transmission means implementing the transmission method described above.
L'invention concerne enfin un dispositif de codage d'un objet associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, ledit dispositif générant un flux de données global permettant de reconstruire ledit objet, partitionnant lesdits coefficients d'ondelettes en au moins deux sous-ensembles disjoints, et appliquant un codage indépendant à chacun desdits sous-ensembles, et comprenant des moyens d'insertion, dans ledit flux de données global, de données de localisation permettant de repérer des coefficients d'ondelettes relatifs à une portion dudit objet dans ledit flux de données global, de façon à permettre une reconstruction sélective de ladite portion à l'aide des coefficients d'au moins un desdits sous-ensembles. 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 présente un synoptique des différentes étapes mises en œuvre lors du codage d'un objet maillé à au moins deux dimensions selon l'invention ; la figure 2 illustre un exemple de structure d'un flux de données généré lors du codage présenté en figure 1, et comprenant des données de localisation, selon une première variante de l'invention ; - la figure 3 détaille la structure du flux de données de la figure 2, lorsque les données de localisation sont indicatives d'une distance au sein du flux ; la figure 4 décrit un exemple de structure d'un flux de données généré lors du codage d'un objet maillé à au moins deux dimensions, et comprenant des données de localisation réparties au sein du flux, selon une deuxième variante de l'invention ; la figure 5 présente un synoptique des différentes étapes mises en œuvre par un serveur de transmission du flux de données des figures 2 à 4, sur réception d'une requête d'un terminal client.The invention finally relates to a device for coding an object associated with a basic mesh consisting of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, said device generating a global data stream making it possible to reconstruct said object, partitioning said wavelet coefficients into at least two disjoint subsets, and applying independent coding to each of said subsets, and comprising means of insertion, into said global data flow, of localization data making it possible to locate wavelet coefficients relating to a portion of said object in said global data flow, so as to allow selective reconstruction of said portion using coefficients of at least one of said subsets. Other characteristics and advantages of the invention will appear more clearly on reading the following description of a preferred embodiment, given by way of simple illustrative and nonlimiting example, and of the appended drawings, among which: FIG. 1 presents a synoptic of the different steps implemented during the coding of a mesh object with at least two dimensions according to the invention; FIG. 2 illustrates an example of the structure of a data stream generated during the coding presented in FIG. 1, and comprising location data, according to a first variant of the invention; - Figure 3 details the structure of the data flow of Figure 2, when the location data is indicative of a distance within the flow; FIG. 4 describes an example of the structure of a data stream generated during the coding of a meshed object with at least two dimensions, and comprising location data distributed within the stream, according to a second variant of the invention; FIG. 5 presents a block diagram of the different steps implemented by a server for transmitting the data flow of FIGS. 2 to 4, on receipt of a request from a client terminal.
Le principe général de l'invention repose sur l'insertion de données de localisation au sein d'un flux de données généré lors du codage par ondelettes d'un objet maillé à au moins deux dimensions, de façon à permettre une sélection et une transmission sélective des coefficients en fonction de la zone de l'objet à laquelle ils sont associés.The general principle of the invention is based on the insertion of location data within a data stream generated during the wavelet coding of a mesh object with at least two dimensions, so as to allow selection and transmission. selective coefficients according to the area of the object with which they are associated.
On présente, en relation avec la figure 1, un mode de réalisation particulier du procédé de codage de l'invention.Referring to FIG. 1, a particular embodiment of the coding method of the invention is presented.
On considère ici le cas d'un objet à au moins deux dimensions codé selon une méthode dite par "ondelettes". On rappelle que, selon une telle méthode, on associe à l'objet un maillage de base, et une pluralité de coefficients d'ondelettes, correspondant aux raffinements à apporter au maillage de base pour reconstruire une représentation de l'objet. Chaque nœud du maillage de base est donc associé à un coefficient d'ondelette.We consider here the case of an object with at least two dimensions coded according to a method called "wavelets". It is recalled that, according to such a method, a basic mesh is associated with the object, and a plurality of wavelet coefficients, corresponding to the refinements to be made to the basic mesh in order to reconstruct a representation of the object. Each node of the basic mesh is thus associated with a wavelet coefficient.
On suppose que les étapes de construction du maillage de base et de détermination des coefficients d'ondelettes associés ont déjà été mises en œuvre par un dispositif de codage, qui dispose donc d'une liste de coefficients d'ondelettes associés à l'objet à coder. On rappelle qu'un coefficient d'ondelette est un triplet de réels (x, y, z), accompagné d'une information I de localisation spatiale et fréquentielle, permettant de savoir à quelle ondelette un coefficient est associé. Cette information I peut par exemple être un quadruplet (F0, a, b, c), où F0 représente une facette du maillage de base, et (a, b, c) représentent des coordonnées barycentriques sur cette face.It is assumed that the stages of construction of the basic mesh and of determination of the associated wavelet coefficients have already been implemented by a coding device, which therefore has a list of wavelet coefficients associated with the object to code. We recall that a wavelet coefficient is a triplet of reals (x, y, z), accompanied by information I of spatial and frequency location, making it possible to know to which wavelet a coefficient is associated. This information I can for example be a quadruplet (F0, a, b, c), where F0 represents a facet of the basic mesh, and (a, b, c) represent barycentric coordinates on this face.
Au cours d'une étape référencée 20, le dispositif de codage effectue une partition de l'ensemble des coefficients d'ondelettes associés à l'objet maillé à coder, en sous-ensembles Ml5 M2, ... , MN . Ces sous-ensembles sont préférentiellement disjoints. Ils peuvent être construits en fonction, par exemple, de critères visuels. Ils comprennent chacun les coefficients d'ondelettes permettant de reconstruire une représentation d'une portion de l'objet maillé à coder.During a step referenced 20, the coding device performs a partition of the set of wavelet coefficients associated with the mesh object to be coded, into subsets M 15 M 2 , ..., M N. These subsets are preferably disjoint. They can be constructed based, for example, on visual criteria. They each include the wavelet coefficients used to reconstruct a representation of a portion of the mesh object to be coded.
Par exemple, si l'objet maillé à coder est un personnage en trois dimensions, on peut envisager de partitionner la liste de coefficients d'ondelettes en cinq sous-ensembles correspondant respectivement au visage, à chacun des membres, et au buste du personnage.For example, if the mesh object to be coded is a three-dimensional character, one can envisage partitioning the list of wavelet coefficients into five subsets corresponding respectively to the face, to each of the members, and to the bust of the character.
Au cours d'une étape référencée 21 , le dispositif de codage définit, sur chaque sous-ensemble Mi5 une hiérarchie arbitraire en déterminant des liens de filiation entre les différents sommets du sous-ensemble, le cas échéant. Bien sûr, il n'y a pas forcément de filiation entre deux sommets d'un même sous-ensemble, qui peuvent être des sommets frères.During a step referenced 21, the coding device defines, on each subset M i5 an arbitrary hierarchy by determining parentage links between the different vertices of the subset, if necessary. Of course, there is not necessarily a filiation between two vertices of the same subset, which can be sister vertices.
Le dispositif de codage effectue ensuite (22) un codage indépendant des coefficients d'ondelettes de chacun des sous-ensembles Mi5 pour i variant de 1 à N. Un tel codage est par exemple un codage de type "zero-tree", et permet de compresser la représentation des coefficients d'ondelettes, et donc des nœuds du maillage associés, de chacun des sous-ensembles M;.The coding device then performs (22) an independent coding of the wavelet coefficients of each of the subsets M i5 for i varying from 1 to N. Such coding is for example a "zero-tree" type coding, and allows to compress the representation of the wavelet coefficients, and therefore of the associated mesh nodes, of each of the subsets M ; .
Au cours d'une étape référencée 23, le dispositif de codage génère un flux de données global, comprenant, d'une part, le résultat du codage (par exemple de type "zero-tree") de chacun des sous-ensembles Mi5 et d'autre part, des données de localisation permettant de déterminer la position de chacun des sous-ensembles M; dans le flux. La structure d'un tel flux permet d'obtenir une grande souplesse d'envoi d'un ou plusieurs sous-ensembles JV1 vers un terminal de visualisation, en fonction d'une requête d'un client.During a step referenced 23, the coding device generates a global data stream, comprising, on the one hand, the result of the coding (for example of the "zero-tree" type) of each of the subsets M i5 and secondly, location data making it possible to determine the position of each of the subsets M; in the stream. The structure of such a flow makes it possible to obtain great flexibility in sending one or more JV1 subsets to a display terminal, according to a request from a client.
On présente, en relation avec la figure 2, un mode de réalisation d'un flux de données 1 , généré selon le procédé de la figure 1.Referring to FIG. 2, an embodiment of a data stream 1, generated according to the method of FIG. 1, is presented.
Par souci de simplification, on se limite, dans toute la suite du document, au cas où chacun des sous-ensembles M; comprend les coefficients d'ondelettes associés à une facette de base de l'objet. Il sera bien sûr aisé, pour un Homme du Métier, de généraliser la description ci-dessous au cas où un sous-ensemble M; comprend les coefficients d'ondelettes associés à une pluralité de facettes de base, ou à une pluralité de nœuds du maillage de base.For the sake of simplification, we limit ourselves, throughout the rest of the document, to the case where each of the subsets M; includes the wavelet coefficients associated with a basic facet of the object. It will of course be easy for a person skilled in the art to generalize the description below in the event that a subset M ; includes the wavelet coefficients associated with a plurality of basic facets, or with a plurality of nodes of the basic mesh.
On suppose ici, et dans toute la suite du document, que les facettes du maillage de base sont ordonnées selon un ordre croissant. Par exemple, on choisit arbitrairement une facette de départ, et l'on choisit un ordre de parcours de l'ensemble des facettes de base (par exemple dans le sens trigonométrique, ou anti-trigonométrique), de façon que la facette de départ soit considérée comme la première facette, et ainsi de suite jusqu'à la dernière facette du maillage de base parcourue selon l'ordre de parcours, qui devient la Mlème facette de base.It is assumed here, and throughout the rest of the document, that the facets of the basic mesh are ordered in ascending order. For example, one arbitrarily chooses a starting facet, and one chooses an order of course of the set of basic facets (for example in the trigonometric, or anti-trigonometric direction), so that the starting facet is considered as the first facet, and so on until the last facet of the basic mesh traversed according to the order of course, which becomes the M lth basic facet.
Selon l'invention, un flux de données 1 est généré par un dispositif de codage lors du codage par ondelettes d'un objet, par exemple tridimensionnel. Dans un mode de réalisation particulier de l'invention, le flux de données 1 comprend un en-tête 10, et une zone de coefficients d'ondelettes 11.According to the invention, a data stream 1 is generated by a coding device during the wavelet coding of an object, for example three-dimensional. In a particular embodiment of the invention, the data stream 1 comprises a header 10, and a zone of wavelet coefficients 11.
La zone de coefficients d'ondelettes 11 est préférentiellement divisée en une pluralité de sous-zones (non représentées sur la figure 1), regroupant chacune les coefficients d'ondelettes associés à une facette du maillage de base de l'objet. Comme rappelé précédemment, un coefficient d'ondelette est un triplet de réels (x, y, z), accompagné d'une information I de localisation spatiale et fréquentielle, permettant de savoir à quelle ondelette un coefficient est associé. Cette information I peut par exemple être un quadruplet (F0, a, b, c), où F0 représente une facette du maillage de base, et (a, b, c) représentent des coordonnées barycentriques sur cette face.The wavelet coefficients area 11 is preferably divided into a plurality of sub-areas (not shown in FIG. 1), each grouping the wavelet coefficients associated with a facet of the basic mesh of the object. As recalled previously, a wavelet coefficient is a triplet of reals (x, y, z), accompanied by information I of spatial and frequency location, making it possible to know which wavelet a coefficient is associated with. This information I can for example be a quadruplet (F0, a, b, c), where F0 represents a facet of the basic mesh, and (a, b, c) represent barycentric coordinates on this face.
Dans un mode de réalisation préféré de l'invention, chaque sous-zone comprend le codage "zero-tree" des coefficients d'ondelettes associés à une facette de base. Ainsi, on effectue une partition des coefficients d'ondelettes suivant la facette FO à laquelle ils sont associés, et on effectue autant de codages "zero-tree" qu'il existe de partitions. (On rappelle que, dans un autre mode de réalisation de l'invention décrit en relation avec la figure 1, on effectue une partition des coefficients en une pluralité de sous-ensembles M;, un même sous-ensemble pouvant regrouper plusieurs facettes de base FO, et on effectue un codage "zero- tree" indépendant pour chacun des sous-ensembles Mi. Chaque sous-zone comprend alors le codage "zero-tree" des coefficients d'ondelettes associés à un sous-ensemble M;). On peut bien sûr également envisager d'utiliser toute autre technique de codage permettant une compression et une transmission satisfaisantes des coefficients d'ondelettes. On utilisera preferentiellement une technique de codage permettant un codage spécifique des parties non significatives de l'objet considéré.In a preferred embodiment of the invention, each sub-zone comprises the "zero-tree" coding of the wavelet coefficients associated with a basic facet. Thus, we perform a partition of the wavelet coefficients according to the facet FO with which they are associated, and we perform as many "zero-tree" codings as there are partitions. (It will be recalled that, in another embodiment of the invention described in relation to FIG. 1, the coefficients are partitioned into a plurality of subsets M ;, the same subset being able to group together several basic facets FO, and an independent “zero-tree” coding is carried out for each of the subsets Mi. Each sub-zone then comprises the “zero-tree” coding of the wavelet coefficients associated with a subset M;). It is of course also possible to envisage using any other coding technique allowing satisfactory compression and transmission of the wavelet coefficients. We preferentially use a coding technique allowing a specific coding of the insignificant parts of the object considered.
L'en-tête 10 comprend les données de localisation, permettant de repérer chacune des sous-zones au sein de la zone de coefficients d'ondelettes 11. Elle comprend en outre des informations relatives au type de codage mis en œuvre, telles que des informations sur le type de fonctions d'ondelettes utilisées, le nombre de coefficients d'ondelettes, les caractéristiques du maillage de base (nombre de facettes de base, ...), ou encore le niveau maximum de subdivision du maillage de base. Dans l'exemple de réalisation particulier présenté en relation avec la figureThe header 10 includes the location data, making it possible to locate each of the sub-areas within the wavelet coefficient area 11. It also includes information relating to the type of coding implemented, such as information on the type of wavelet functions used, the number of wavelet coefficients, the characteristics of the basic mesh (number of basic facets, ...), or even the maximum level of subdivision of the basic mesh. In the particular embodiment presented in relation to the figure
3, la zone des coefficients d'ondelettes 11 est divisée en une pluralité de sous- zones référencées 111 à 113. Ainsi la sous-zone référencée 111 est la "sous-zone 1" associée à la première facette du maillage de base, la sous-zone référencée 112 est associée à la deuxième facette de base, et la sous-zone référencée 113 est associée à la Mlè e facette de base. On notera bien sûr que, par souci de simplification de la figure, toutes les sous-zones n'ont pas été représentées.3, the area of the wavelet coefficients 11 is divided into a plurality of sub-areas referenced 111 to 113. Thus the sub-area referenced 111 is the "sub-area 1" associated with the first facet of the basic mesh, the sub-area referenced 112 is associated with the second basic facet, and sub-area referenced 113 is associated with the m th base facet. It will of course be noted that, for the sake of simplification of the figure, not all the sub-zones have been represented.
L'en-tête 10 comprend un préambule 101, et une pluralité de données de localisation référencées 102 à 104. Le préambule 101 comprend par exemple des données relatives au type de maillage et au type d'ondelettes utilisées, mentionnées ci-dessus.The header 10 comprises a preamble 101, and a plurality of location data referenced 102 to 104. The preamble 101 comprises for example data relating to the type of mesh and to the type of wavelets used, mentioned above.
La zone référencée 102, intitulée "décalage 1", renseigne sur la position des coefficients d'ondelettes associés à la première facette de base dans le flux binaire 1 , c'est-à-dire qu'elle renseigne par exemple sur la distance séparant la fin du préambule 101 et le début de la "sous-zone 1 " référencée 111.The area referenced 102, entitled "offset 1", provides information on the position of the wavelet coefficients associated with the first basic facet in bit stream 1, that is to say that it provides information, for example, on the distance separating the end of the preamble 101 and the beginning of the "sub-area 1" referenced 111.
Dans un mode de réalisation particulier de l'invention, une telle distance est exprimée en nombre de bits. Dans un autre mode de réalisation de l'invention, la zone de données de localisation référencée 102 peut bien sûr également renseigner sur la distance séparant le début de la "sous zone 1" référencée 111 de tout autre élément de référence du flux de données 1, de façon à permettre la localisation des coefficients d'ondelettes de la "sous zone 1" 111 dans le flux binaire 1.In a particular embodiment of the invention, such a distance is expressed in number of bits. In another embodiment of the invention, the location data area referenced 102 can of course also provide information on the distance separating the start of the "sub-area 1" referenced 111 from any other reference element of the data stream 1 , so as to allow the localization of the wavelet coefficients of the "sub-area 1" 111 in the bit stream 1.
Sur la figure 3, la zone "décalage 2" 103 (respectivement la zone "décalage M" 104) renseigne sur le nombre de bits séparant le début de la "sous zone 2" 112 (respectivement de la "sous zone M" 113) et la fin du préambule 101.In FIG. 3, the "offset 2" area 103 (respectively the "offset M" area 104) provides information on the number of bits separating the start of the "sub area 2" 112 (respectively of the "sub area M" 113) and the end of the preamble 101.
Ainsi, lorsqu'un serveur, en réponse à une requête d'un terminal client, souhaite transmettre à ce dernier les coefficients d'ondelettes associés à la Mlème facette de base, il consulte les données de localisation "décalage M" 104 de l'entête 10. La zone "décalage M" 104 indique au serveur le nombre de bits séparant la fin du préambule 101 du début de la "sous-zone M" 113, et le serveur peut donc aller se positionner directement au début de la "sous-zone M" 113, de façon à extraire puis transmettre ces seuls coefficients au terminal client.Thus, when a server, in response to a request from a client terminal, wishes to transmit to the latter the wavelet coefficients associated with the M th basic facet, it consults the location data "M shift" 104 of the 'header 10. The "M shift" area 104 indicates to the server the number of bits separating the end of the preamble 101 from the start of the "M sub-area" 113, and the server can therefore go directly to the start of the " sub-area M "113, so as to extract and then transmit these only coefficients to the client terminal.
Le flux de données 1 de la figure 4 comprend un en-tête 10 et une zone de coefficients d'ondelettes 11, comprenant d'une part des sous zones de coefficients d'ondelettes référencées 111 à 113 et des zones de données de localisation référencées 120 à 123. Dans une telle variante de réalisation, les données de localisation référencées 120 à 123 sont donc réparties dans le flux de données 1, et non regroupées dans l'en-tête 10 comme précédemment.The data stream 1 of FIG. 4 comprises a header 10 and a wavelet coefficient area 11, comprising on the one hand sub-areas of wavelet coefficients referenced 111 to 113 and location data areas referenced 120 to 123. In such an alternative embodiment, the location data referenced 120 to 123 are therefore distributed in the data stream 1, and not grouped in the header 10 as previously.
Les données de localisation 120 à 123 sont par exemple des marqueurs indiquant le début et/ou la fin d'une sous-zone de coefficients d'ondelettes. Ainsi, la zone "marque 1" référencée 120 indique le début de la "sous-zone 1" 111, comprenant les coefficients d'ondelettes associés à la première facette du maillage de base. La zone "marque 2" référencée 121 marque le début de la "sous-zone 2" référencée 112, et la "marque M" référencée 123 marque le début de la "sous-zone M" référencée 113.The location data 120 to 123 are for example markers indicating the start and / or the end of a wavelet coefficient sub-area. Thus, the area "mark 1" referenced 120 indicates the beginning of the "sub-area 1" 111, comprising the wavelet coefficients associated with the first facet of the basic mesh. The zone "mark 2" referenced 121 marks the beginning of the "sub-zone 2" referenced 112, and the "mark M" referenced 123 marks the beginning of the "sub-zone M" referenced 113.
Dans un mode de réalisation particulier de l'invention, les informations contenues dans les zones "marque 1" 120, "marque 2" 121 et ainsi de suite jusqu'à "marque M" 123 sont identiques. En d'autres termes, une pluralité de marqueurs identiques est insérée dans la zone de coefficients d'ondelettes 11 du flux de données 1, de façon à séparer les différentes sous-zones associées chacune à une facette du maillage de base. Ainsi, lorsqu'un serveur souhaite envoyer les coefficients d'ondelettes associés à la "sous-zone M" 113 à un terminal de visualisation, il parcourt l'ensemble du flux 1, et compte les marqueurs qu'il rencontre, de façon à déterminer quel est le Mlème marqueur 123, et donc déterminer où commence la "sous-zone M" 113, comprenant le codage "zero-tree" des coefficients d'ondelettes associés à la Mlè e facette de base. Ainsi, le terminal client ne reçoit que les coefficients d'ondelettes de la "sous-zone M" 113, et n'a pas besoin de décoder l'ensemble du flux 1 pour accéder aux coefficients d'ondelettes dont il a besoin. Dans un autre mode de réalisation de l'invention, les marqueurs référencésIn a particular embodiment of the invention, the information contained in the fields "mark 1" 120, "mark 2" 121 and so on up to "mark M" 123 are identical. In other words, a plurality of identical markers is inserted into the zone of wavelet coefficients 11 of the data stream 1, so as to separate the different sub-zones each associated with a facet of the basic mesh. Thus, when a server wishes to send the wavelet coefficients associated with the "M sub-area" 113 to a display terminal, it traverses all of the flow 1, and counts the markers that it encounters, so as to determine the M -th marker 123, and thus determine where begins the "subfield M" 113, comprising code "zero-tree" wavelet coefficients associated with the m th base facet. Thus, the client terminal receives only the wavelet coefficients of the "sub-area M" 113, and does not need to decode the entire stream 1 to access the wavelet coefficients it needs. In another embodiment of the invention, the markers referenced
120 à 123 sont spécifiques d'une sous-zone donnée de la zone de coefficients d'ondelettes 11. Le marqueur "marque 1" 120 indique spécifiquement le début de la "sous-zone 1" 111, le marqueur "marque 2" 121 indique spécifiquement le début de la "sous-zone 2" 112, et ainsi de suite. (On peut bien sûr également envisager, par exemple, que les marqueurs référencés 120 à 123 indiquent la fin des sous-zones associées 111 à 113.)120 to 123 are specific to a given sub-area of the wavelet coefficient area 11. The marker "mark 1" 120 specifically indicates the start of "sub-area 1" 111, the marker "mark 2" 121 specifically indicates the start of "Subarea 2" 112, and so on. (We can of course also consider, for example, that the markers referenced 120 to 123 indicate the end of the associated sub-areas 111 to 113.)
Ainsi, un serveur souhaitant transmettre les coefficients de la "sous-zone M" 113 en réponse à une requête d'un client parcourt le flux de données 1, jusqu'à repérer le marqueur "marque M" 123, et en déduit la position du début de la "sous-zone M" 113.Thus, a server wishing to transmit the coefficients of the "M sub-area" 113 in response to a request from a client traverses the data stream 1, until it finds the marker "mark M" 123, and deduces the position therefrom. from the start of "M sub-area" 113.
On peut encore envisager tout autre mode de réalisation de l'invention, non illustré sur les figures 3 et 4, mais qui permette de construire un flux de données 1, dans lequel sont insérées des données de localisation permettant à un serveur de déterminer la localisation d'une sous-zone de coefficients d'ondelettes associée à une facette de base, ou plus généralement à un sous-ensemble M; regroupant une pluralité de nœuds ou de facettes de base, en vue de son extraction et de sa transmission sélective en réponse à une requête d'un client.It is also possible to envisage any other embodiment of the invention, not illustrated in FIGS. 3 and 4, but which makes it possible to construct a data stream 1, in which location data are inserted allowing a server to determine the location a sub-area of wavelet coefficients associated with a basic facet, or more generally with a subset M ; grouping a plurality of nodes or basic facets, with a view to its extraction and its selective transmission in response to a request from a client.
Par exemple, on peut envisager un mode de réalisation combinant les variantes de l'invention présentées en relation avec les figures 3 et 4, dans lequel les sous-zones référencées 111 à 113 seraient regroupées en ensembles de trois ou quatre sous-zones. Des données de localisation, insérées dans l'en-tête 10, renseigneraient sur la distance entre un élément de référence (par exemple la fin du préambule 101) et le début d'un ensemble de sous-zones. Des marqueurs seraient insérés au sein d'un tel ensemble, de façon à indiquer le début et/ou la fin de chacune des sous-zones de l'ensemble.For example, one can envisage an embodiment combining the variants of the invention presented in relation to FIGS. 3 and 4, in which the sub-zones referenced 111 to 113 would be grouped into sets of three or four sub-zones. Location data, inserted in the header 10, would provide information on the distance between a reference element (for example the end of the preamble 101) and the start of a set of sub-areas. Markers would be inserted within such a set, so as to indicate the beginning and / or the end of each of the sub-areas of the set.
Ainsi, grâce aux données de localisation situées dans l'en-tête 10, un serveur pourrait aller se positionner directement au début d'un ensemble de sous- zones, puis parcourir cet ensemble, et déterminer, grâce aux marqueurs, la position de la ou des sous-zone(s) de l'ensemble qu'il doit transmettre en réponse à une requête d'un client.Thus, thanks to the location data located in the header 10, a server could go to position itself directly at the start of a set of sub-areas, then browse this set, and determine, using the markers, the position of or sub-area (s) of the set that it must transmit in response to a request from a client.
On présente désormais, en relation avec la figure 5, les différentes étapes mises en œuvre par un serveur, ou par un terminal connecté à un support de données, et chargé de transmettre les coefficients d'ondelettes associés à une zone du maillage de base, en réponse à une requête d'un client. Par souci de simplification, on décrira uniquement dans la suite le cas des traitements mis en œuvre par un serveur en réponse à une requête d'un terminal de visualisation. L'Homme du Métier en déduira aisément les traitements à effectuer lorsque les données d'objet proviennent d'un support de données relié, directement ou indirectement, au terminal de visualisation.We now present, in relation to FIG. 5, the different steps implemented by a server, or by a terminal connected to a data medium, and responsible for transmitting the wavelet coefficients associated with an area of the basic mesh, in response to a client request. For the sake of simplification, we will only describe in the following the case of the processing implemented by a server in response to a request from a display terminal. Those skilled in the art will easily deduce therefrom the processing operations to be carried out when the object data come from a data carrier connected, directly or indirectly, to the display terminal.
On suppose qu'un client souhaite observer un détail d'une scène qu'il visualise sur son terminal. Le terminal envoie donc vers le serveur une requête précisant la portion de la scène pour laquelle il souhaite obtenir les coefficients d'ondelettes déterminant les raffinements à apporter au maillage de base pour obtenir une reconstruction satisfaisante de la portion.It is assumed that a customer wishes to observe a detail of a scene that he is viewing on his terminal. The terminal therefore sends a request to the server specifying the portion of the scene for which it wishes to obtain the wavelet coefficients determining the refinements to be made to the basic mesh in order to obtain a satisfactory reconstruction of the portion.
Au cours d'une étape référencée 40, le serveur reçoit la requête du terminal client, et détermine les facettes du maillage de base concernées par la requête. Au cours d'une étape référencée 41 , le serveur parcourt le flux de données généré en sortie d'un dispositif de codage de la scène, et analyse les données de localisation présentes dans ce flux. Par exemple, il consulte les données de localisation contenues dans l'en-tête du flux.During a step referenced 40, the server receives the request from the client terminal, and determines the facets of the basic mesh concerned by the request. During a step referenced 41, the server browses the data stream generated at the output of a scene coding device, and analyzes the location data present in this stream. For example, it consults the location data contained in the header of the stream.
Au cours d'une étape référencée 42, il détermine la position des sous-zones de coefficients d'ondelettes associées à la portion de la scène considérée, en fonction des données de localisation qu'il a analysées précédemment. Après identification (42) des coefficients d'ondelettes relatifs à la portion d'objet à visualiser, le serveur extrait (43) ces coefficients du flux de données global, de façon à former un flux réduit destiné au terminal client.During a step referenced 42, it determines the position of the sub-areas of wavelet coefficients associated with the portion of the scene considered, as a function of the location data which it has previously analyzed. After identification (42) of the wavelet coefficients relating to the portion of object to be displayed, the server extracts (43) these coefficients from the global data flow, so as to form a reduced flow intended for the client terminal.
Au cours d'une étape référencée 44, le serveur transmet ce flux réduit au terminal de visualisation du client, de façon que ce dernier puisse reconstruire la portion de la scène que le client souhaite visualiser, sans avoir à décoder l'ensemble du flux de données global. During a step referenced 44, the server transmits this reduced stream to the client's viewing terminal, so that the latter can reconstruct the portion of the scene that the client wishes to view, without having to decode the entire stream of global data.

Claims

REVENDICATIONS
1. Procédé de codage d'un objet à au moins deux dimensions associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, ledit procédé délivrant un flux de données global permettant de reconstruire ledit objet, caractérisé en ce que lesdits coefficients d'ondelettes sont partitionnés en au moins deux sous-ensembles disjoints subissant chacun un codage indépendant, et en ce que ledit procédé insère, dans ledit flux de données global, des données de localisation permettant de repérer des coefficients d'ondelettes relatifs à une portion dudit objet dans ledit flux de données global, de façon à permettre une reconstruction sélective de ladite portion à l'aide des coefficients d'au moins un desdits sous-ensembles. 1. Method for coding an object with at least two dimensions associated with a basic mesh made up of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, said method delivering a global data stream making it possible to reconstruct said object, characterized in that said wavelet coefficients are partitioned into at least two disjoint subsets each undergoing independent coding, and in that said method inserts into said stream global data, location data making it possible to locate wavelet coefficients relating to a portion of said object in said global data stream, so as to allow selective reconstruction of said portion using coefficients of at least one said subsets.
2. Procédé selon la revendication 1, caractérisé en ce que chacun desdits sous-ensembles est une facette de base.2. Method according to claim 1, characterized in that each of said subsets is a basic facet.
3. Procédé selon l'une quelconque des revendications 1 et 2, caractérisé en ce que ledit codage met en œuvre les étapes suivantes : détection d'au moins une partie non significative ; - traitement spécifique de chacune desdites parties non-significatives.3. Method according to any one of claims 1 and 2, characterized in that said coding implements the following steps: detection of at least a non-significant part; - specific treatment of each of said non-significant parts.
4. Procédé selon l'une quelconque des revendications 1 à 3 , caractérisé en ce que ledit codage met en œuvre une technique de type "zero-tree" .4. Method according to any one of claims 1 to 3, characterized in that said coding implements a "zero-tree" type technique.
5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que ledit flux de données global comprend un en-tête, comprenant au moins certaines desdites données de localisation, et une zone de coefficients d'ondelettes, comprenant une sous-zone identifiée par lesdites données de localisation pour chacun desdits sous -ensembles.5. Method according to any one of claims 1 to 4, characterized in that said global data stream comprises a header, comprising at least some of said location data, and a zone of wavelet coefficients, comprising a sub area identified by said location data for each of said subsets.
6. Procédé selon la revendication 5, caractérisé en ce que lesdites données de localisation contenues dans ledit en-tête identifient une sous-zone, en définissant une distance entre la position d'un élément repère et le début de ladite sous-zone dans ledit flux.6. Method according to claim 5, characterized in that said location data contained in said header identifies a sub-area, by defining a distance between the position of a reference element and the start of said sub-area in said flow.
7. Procédé selon l'une quelconque des revendications 5 et 6, caractérisé en ce que ledit en-tête comprend en outre au moins certaines des informations appartenant au groupe comprenant : le nombre de facettes de base ; le type d'ondelettes ; des informations relatives audit objet ; des informations relatives au codage desdites données de localisation. 7. Method according to any one of claims 5 and 6, characterized in that said header further comprises at least some of the information belonging to the group comprising: the number of basic facets; the type of wavelet; information relating to said object; information relating to the coding of said location data.
8. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que ledit flux de données global comprend au moins une zone de coefficients d'ondelettes, comprenant une sous-zone identifiée par lesdites données de localisation pour chacun desdits sous-ensembles, lesdites données de localisation comprenant au moins un marqueur au début et/ou à la fin de chacune des sous-zones.8. Method according to any one of claims 1 to 4, characterized in that said global data stream comprises at least one area of wavelet coefficients, comprising a sub-area identified by said location data for each of said sub- together, said location data comprising at least one marker at the start and / or at the end of each of the sub-areas.
9. Procédé selon l'une quelconque des revendications 5 à 8, caractérisé en ce que lesdites sous-zones sont organisées dans ledit flux par ordre de facette de base croissant.9. Method according to any one of claims 5 to 8, characterized in that said sub-zones are organized in said flow in order of increasing basic facet.
10. Procédé de transmission d'un flux de données, entre, d'une part, au moins un serveur et/ou au moins un support de données, et, d'autre part, au moins un terminal de visualisation, ledit flux de données permettant de reconstruire un objet associé d'une part à un maillage de base constitué d'un ensemble de facettes de base, et d'autre part à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, caractérisé en ce qu'il comprend : une étape de réception d'une requête définissant une portion dudit objet à visualiser ; une étape d'analyse de données de localisation présentes dans ledit flux, en fonction de ladite requête, permettant d'identifier des coefficients d'ondelettes relatifs à ladite portion dans ledit flux de données ; une étape d'extraction desdits coefficients d'ondelettes identifiés pour former un flux de données réduit ; une étape de transmission dudit flux de données réduit. 10. Method for transmitting a data stream, between, on the one hand, at least one server and / or at least one data carrier, and, on the other hand, at least one display terminal, said stream of data making it possible to reconstruct an object associated on the one hand with a basic mesh made up of a set of basic facets, and on the other hand with coefficients in a wavelet base corresponding to local modifications of said basic mesh, characterized in that it comprises: a step of receiving a request defining a portion of said object to be displayed; a step of analyzing location data present in said stream, as a function of said request, making it possible to identify wavelet coefficients relating to said portion in said data stream; a step of extracting said identified wavelet coefficients to form a reduced data stream; a step of transmitting said reduced data stream.
11. Signal représentatif d'un objet à au moins deux dimensions associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, caractérisé en ce qu'il comprend au moins une zone de coefficients d'ondelettes et au moins une zone de localisation, comprenant des données de localisation permettant de repérer des coefficients d'ondelettes relatifs à une portion dudit objet dans ledit signal. 11. Signal representative of an object with at least two dimensions associated with a basic mesh consisting of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, characterized in that it comprises at least one area of wavelet coefficients and at least one location area, comprising location data making it possible to locate wavelet coefficients relating to a portion of said object in said signal.
12. Signal selon la revendication 11, caractérisé en ce que, lesdits coefficients d'ondelettes étant partitionnés en au moins deux sous-ensembles disjoints subissant chacun un codage indépendant, il comprend un en-tête, comprenant au moins certaines desdites données de localisation, et une zone de coefficients d'ondelettes, comprenant une sous-zone identifiée par lesdites données de localisation pour chacun desdits sous-ensembles.12. Signal according to claim 11, characterized in that, said wavelet coefficients being partitioned into at least two disjoint subsets each undergoing independent coding, it comprises a header, comprising at least some of said location data, and a wavelet coefficient area, comprising a sub-area identified by said location data for each of said subsets.
13. Signal selon la revendication 11, caractérisé en ce que, lesdits coefficients d'ondelettes étant partitionnés en au moins deux sous-ensembles disjoints subissant chacun un codage indépendant, il comprend au moins une zone de coefficients d'ondelettes, comprenant une sous-zone identifiée par lesdites données de localisation pour chacun desdits sous-ensembles, lesdites données de localisation comprenant au moins un marqueur au début et/ou à la fin de chacune des sous-zones.13. Signal according to claim 11, characterized in that, said wavelet coefficients being partitioned into at least two disjoint subsets each undergoing independent coding, it comprises at least one area of wavelet coefficients, comprising a sub- zone identified by said location data for each of said subsets, said location data comprising at least one marker at the start and / or at the end of each of the sub-areas.
14. Flux de données global enregistré sur un support utilisable dans un ordinateur et permettant de reconstruire un objet codé à au moins deux dimensions, associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, caractérisé en ce que lesdits coefficients d'ondelettes sont partitionnés en au moins deux sous-ensembles disjoints subissant chacun un codage indépendant, et en ce que, dans ledit flux de données global enregistré, sont insérées des données de localisation permettant de repérer des coefficients d'ondelettes relatifs à une portion dudit objet dans ledit flux de données global, de façon à permettre une reconstruction sélective de ladite portion à l'aide des coefficients d'au moins un desdits sous-ensembles. 14. Global data flow recorded on a support usable in a computer and allowing to reconstruct an object coded in at least two dimensions, associated with a basic mesh made up of a set of facets of base, and to coefficients in a wavelet base corresponding to local modifications of said basic mesh, characterized in that said wavelet coefficients are partitioned into at least two disjoint subsets each undergoing independent coding, and in that that, in said recorded global data stream, location data are inserted making it possible to locate wavelet coefficients relating to a portion of said object in said global data stream, so as to allow selective reconstruction of said portion at using coefficients of at least one of said subsets.
15. Flux de données global selon la revendication 14, caractérisé en ce qu'il permet de reconstruire un objet à au moins deux dimensions codé selon le procédé de l'une quelconque des revendications 1 à 9.15. Global data flow according to claim 14, characterized in that it makes it possible to reconstruct an object with at least two dimensions coded according to the method of any one of claims 1 to 9.
16. Système de transmission d'un flux de données, entre, d'une part, au moins un serveur et/ou au moins un support de données, et, d'autre part, au moins un terminal de visualisation, ledit flux de données permettant de reconstruire un objet à au moins deux dimensions associé d'une part à un maillage de base constitué d'un ensemble de facettes de base, et d'autre part à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, caractérisé en ce qu'il comprend : des moyens de réception d'une requête définissant une portion dudit objet à visualiser ; des moyens d'analyse de données de localisation présentes dans ledit flux, en fonction de ladite requête, permettant d'identifier des coefficients d'ondelettes relatifs à ladite portion dans ledit flux de données ; des moyens d'extraction desdits coefficients d'ondelettes identifiés pour former un flux de données réduit ; des moyens de transmission dudit flux de données réduit.16. System for transmitting a data stream, between, on the one hand, at least one server and / or at least one data carrier, and, on the other hand, at least one display terminal, said stream of data making it possible to reconstruct an object with at least two dimensions associated on the one hand with a basic mesh made up of a set of basic facets, and on the other hand with coefficients in a wavelet base corresponding to local modifications of said basic mesh, characterized in that it comprises: means for receiving a request defining a portion of said object to be displayed; means for analyzing location data present in said stream, as a function of said request, making it possible to identify wavelet coefficients relating to said portion in said data stream; means for extracting said identified wavelet coefficients to form a reduced data flow; means for transmitting said reduced data stream.
17. Terminal de visualisation d'un objet à au moins deux dimensions associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, comprenant des moyens de réception d'un flux de données global permettant de reconstruire ledit objet, caractérisé en ce qu'il comprend en outre des moyens de formulation d'une requête définissant une portion dudit objet à visualiser à destination d'un serveur et/ou d'un support de données, et des moyens de reconstruction de ladite portion à partir d'un flux de données réduit, comprenant des coefficients d'ondelettes relatifs à ladite portion, reçu dudit serveur et/ou dudit support de données. 17. Terminal for viewing an object with at least two dimensions associated with a basic mesh consisting of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, comprising means for receiving a global data stream making it possible to reconstruct said object, characterized in that it further comprises means for formulating a request defining a portion of said object to be viewed intended for a server and / or a data medium, and means for reconstructing said portion from a reduced data flow, comprising relative wavelet coefficients to said portion, received from said server and / or from said data medium.
18. Serveur comprenant des moyens de stockage d'au moins un objet à au moins deux dimensions codé selon le procédé de l'une quelconque des revendications 1 à 9 et des moyens de transmission mettant en œuvre le procédé de la revendication 10.18. Server comprising means for storing at least one object with at least two dimensions coded according to the method of any one of claims 1 to 9 and transmission means implementing the method of claim 10.
19. Dispositif de codage d'un objet à au moins deux dimensions associé à un maillage de base constitué d'un ensemble de facettes de base, et à des coefficients dans une base d'ondelettes correspondant à des modifications locales dudit maillage de base, ledit dispositif générant un flux de données global permettant de reconstruire ledit objet, caractérisé en ce qu'il partitionne lesdits coefficients d'ondelettes en au moins deux sous-ensembles disjoints, et en ce qu'il applique un codage indépendant à chacun desdits sous-ensembles, et en ce qu'il comprend des moyens d'insertion, dans ledit flux de données global, de données de localisation permettant de repérer des coefficients d'ondelettes relatifs à une portion dudit objet dans ledit flux de données global, de façon à permettre une reconstruction sélective de ladite portion à l'aide des coefficients d'au moins un desdits sous-ensembles. 19. Device for coding an object with at least two dimensions associated with a basic mesh made up of a set of basic facets, and with coefficients in a wavelet base corresponding to local modifications of said basic mesh, said device generating a global data stream making it possible to reconstruct said object, characterized in that it partitions said wavelet coefficients into at least two disjoint subsets, and in that it applies independent coding to each of said subsets sets, and in that it comprises means for inserting, into said global data stream, location data making it possible to locate wavelet coefficients relating to a portion of said object in said global data stream, so as to allow a selective reconstruction of said portion using the coefficients of at least one of said subsets.
EP02762522A 2001-07-10 2002-07-04 Method of wavelet coding a mesh object Withdrawn EP1405268A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0109184 2001-07-10
FR0109184A FR2827409B1 (en) 2001-07-10 2001-07-10 WAVELLET-BASED IMAGE CODING PROCESS ALLOWING ADAPTIVE TRANSMISSION OF WAVELLET COEFFICIENTS, SYSTEM SIGNAL AND CORRESPONDING DEVICES
PCT/FR2002/002328 WO2003009234A1 (en) 2001-07-10 2002-07-03 Method of wavelet coding a mesh object

Publications (1)

Publication Number Publication Date
EP1405268A1 true EP1405268A1 (en) 2004-04-07

Family

ID=8865352

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02762522A Withdrawn EP1405268A1 (en) 2001-07-10 2002-07-04 Method of wavelet coding a mesh object

Country Status (11)

Country Link
US (1) US7555168B2 (en)
EP (1) EP1405268A1 (en)
JP (1) JP4064345B2 (en)
KR (1) KR100922511B1 (en)
CN (1) CN1276390C (en)
AU (1) AU2002328371A1 (en)
BR (1) BR0210974A (en)
CA (1) CA2453283C (en)
FR (1) FR2827409B1 (en)
MX (1) MXPA04000217A (en)
WO (1) WO2003009234A1 (en)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2849329A1 (en) * 2002-12-20 2004-06-25 France Telecom Video sequence successive image coding having an image mesh divided and wavelet coded with two wavelet types applied distinct image zones
FR2876821A1 (en) 2004-10-14 2006-04-21 France Telecom METHOD FOR LOCALLY DECODING A BINARY TRAIN OF WAVELET COEFFICIENTS
US20100053153A1 (en) * 2007-02-01 2010-03-04 France Telecom Method of coding data representative of a multidimensional texture, coding device, decoding method and device and corresponding signal and program
EP2910026B1 (en) * 2012-10-19 2017-11-29 Visa International Service Association Digital broadcast methods using secure meshes and wavelets
FR3018018A1 (en) * 2014-02-27 2015-08-28 Orange METHOD FOR ENCODING AND DECODING A DEFINED SIGNAL ON AN N-DIMENSIONAL VARIETY, DEVICE FOR ENCODING AND DECODING SUCH A SIGNAL, AND CORRESPONDING COMPUTER PROGRAMS
US10777320B2 (en) 2014-10-21 2020-09-15 Psomagen, Inc. Method and system for microbiome-derived diagnostics and therapeutics for mental health associated conditions
US10265009B2 (en) 2014-10-21 2019-04-23 uBiome, Inc. Method and system for microbiome-derived diagnostics and therapeutics for conditions associated with microbiome taxonomic features
US10357157B2 (en) 2014-10-21 2019-07-23 uBiome, Inc. Method and system for microbiome-derived characterization, diagnostics and therapeutics for conditions associated with functional features
US9758839B2 (en) 2014-10-21 2017-09-12 uBiome, Inc. Method and system for microbiome-derived diagnostics and therapeutics for conditions associated with microbiome functional features
US10313673B2 (en) 2016-10-19 2019-06-04 Google Llc Methods and apparatus to encode and/or decode normals of geometric representations of surfaces
US10733766B2 (en) 2016-10-19 2020-08-04 Google, Llc Methods and apparatus to encode and/or decode normals of geometric representations of surfaces
US9787321B1 (en) 2016-11-17 2017-10-10 Google Inc. Point cloud data compression using a space-filling curve
US10430975B2 (en) 2016-11-17 2019-10-01 Google Llc Advanced k-D tree encoding for point clouds by most significant axis selection
US10496336B2 (en) 2016-11-17 2019-12-03 Google Llc K-D tree encoding for point clouds using deviations
US10553035B2 (en) 2017-06-02 2020-02-04 Google Llc Valence based implicit traversal for improved compression of triangular meshes
US10950042B2 (en) 2017-06-02 2021-03-16 Google Llc Guided traversal in compression of triangular meshes
US10891758B2 (en) 2018-07-23 2021-01-12 Google Llc Geometry encoder

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000001153A1 (en) * 1998-06-18 2000-01-06 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus in transmission of images

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2027253C (en) * 1989-12-29 1997-12-16 Steven C. Bagley Editing text in an image
US6674911B1 (en) * 1995-09-14 2004-01-06 William A. Pearlman N-dimensional data compression using set partitioning in hierarchical trees
JP3929492B2 (en) * 1995-10-25 2007-06-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Segmented image encoding method and system, and decoding method and system thereof
JP3597780B2 (en) * 1998-03-20 2004-12-08 ユニヴァーシティ オブ メリーランド Lossless / lossless image coding for regions of interest
US6885774B2 (en) * 1999-10-28 2005-04-26 Lucent Technologies Inc. Coefficient computation in image compression using set partitioning in hierarchical trees

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000001153A1 (en) * 1998-06-18 2000-01-06 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus in transmission of images

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KHODAKOVSKY A ET AL: "PROGRESSIVE GEOMETRY COMPRESSION", COMPUTER GRAPHICS. SIGGRAPH 2000 CONFERENCE PROCEEDINGS. NEW ORLEANS, LA, JULY 23 - 28, 2000; [COMPUTER GRAPHICS PROCEEDINGS. SIGGRAPH], NEW YORK, NY : ACM, US, 23 July 2000 (2000-07-23), pages 271 - 278, XP001003565, ISBN: 978-1-58113-208-3 *
See also references of WO03009234A1 *

Also Published As

Publication number Publication date
FR2827409B1 (en) 2004-10-15
CA2453283C (en) 2013-12-10
AU2002328371A1 (en) 2003-03-03
KR20040018450A (en) 2004-03-03
CN1276390C (en) 2006-09-20
CN1526120A (en) 2004-09-01
FR2827409A1 (en) 2003-01-17
KR100922511B1 (en) 2009-10-20
CA2453283A1 (en) 2003-01-30
BR0210974A (en) 2004-06-08
US20040208382A1 (en) 2004-10-21
MXPA04000217A (en) 2004-07-23
US7555168B2 (en) 2009-06-30
WO2003009234A1 (en) 2003-01-30
JP2004535644A (en) 2004-11-25
WO2003009234A8 (en) 2004-12-23
JP4064345B2 (en) 2008-03-19

Similar Documents

Publication Publication Date Title
WO2003009234A1 (en) Method of wavelet coding a mesh object
EP1101200B1 (en) Selective mesh refinement
EP1457023B1 (en) Method for transmitting objects between a server and a client terminal using cache management, corresponding transmission, server and terminal.
EP3097692B1 (en) Method for processing a sequence of holographic images, and associated computer program, devices, signals and devices.
EP1340195B1 (en) Wavelet-based mesh coding method
EP1864258A1 (en) Method of transmitting content display data between a server and at least one client terminal, and corresponding server, terminal and computer program
EP1800263A2 (en) Method for locally decoding a bit stream of wavelet coefficients
FR2759474A1 (en) METHOD FOR RECOGNIZING IN A PRELIMINARY CATALOG STARS DETECTED BY A STELLAR SENSOR
Cheng et al. Receiver-driven view-dependent streaming of progressive mesh
WO2002100111A1 (en) Methods and devices for encoding and decoding images using nested meshes, programme, signal and corresponding uses
EP1574068B1 (en) Wavelet image-encoding method and corresponding decoding method
EP1654882A2 (en) Method of representing a sequence of pictures using 3d models, and corresponding devices and signal
EP1004206B1 (en) Graphic scene animation signal, corresponding method and device
US20050129322A1 (en) Method and system for compressing, storing, and retrieving image data
EP1141899B1 (en) Method for simplifying a source mesh, taking into account the local curvature and the local geometry, and corresponding uses
FR3105687A1 (en) PROCESS FOR ENCODING A DIGITAL IMAGE FOR COMPRESSION
EP1121665B1 (en) Source mesh coding method optimising vertex position resulting from edge fusion, and corresponding applications
WO2002039382A2 (en) Method for representing three-dimensional scenes in virtual reality and corresponding device

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20040107

AK Designated contracting states

Kind code of ref document: A1

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

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1064777

Country of ref document: HK

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

Owner name: ORANGE

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: G06T 9/00 20060101AFI20160108BHEP

INTG Intention to grant announced

Effective date: 20160201

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

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1064777

Country of ref document: HK