WO2006087479A2 - Video and/or image data processing with determination of representation functions - Google Patents

Video and/or image data processing with determination of representation functions Download PDF

Info

Publication number
WO2006087479A2
WO2006087479A2 PCT/FR2006/000367 FR2006000367W WO2006087479A2 WO 2006087479 A2 WO2006087479 A2 WO 2006087479A2 FR 2006000367 W FR2006000367 W FR 2006000367W WO 2006087479 A2 WO2006087479 A2 WO 2006087479A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
representation
input data
functions
domains
Prior art date
Application number
PCT/FR2006/000367
Other languages
French (fr)
Other versions
WO2006087479A3 (en
Inventor
Michel Fliess
Cedric Join
Mamadou Mboup
Original Assignee
Ecole Polytechnique
Universite Rene Descartes
Universite Henri Poincare
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
Priority claimed from FR0501691A external-priority patent/FR2882450A1/en
Priority claimed from PCT/FR2005/002165 external-priority patent/WO2006027475A1/en
Application filed by Ecole Polytechnique, Universite Rene Descartes, Universite Henri Poincare filed Critical Ecole Polytechnique
Publication of WO2006087479A2 publication Critical patent/WO2006087479A2/en
Publication of WO2006087479A3 publication Critical patent/WO2006087479A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/20Contour coding, e.g. using detection of edges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • G06F17/175Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method of multidimensional data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation

Definitions

  • the invention relates to the processing of data representative of an image or a sequence of images constituting, for example, apart from sound, all or part of a video.
  • image is meant here any type of data that can be displayed on a screen or reproduced on any type of medium, such as for example a sheet of paper in the case of a photocopier or a fax machine.
  • data processing is understood to mean any type of processing likely to modify the number of data representative of at least part of an image (or sequence of images) and / or to modify the representation of at least a part of an image (or sequence of images) and / or to determine information relating to at least part of an image (or sequence of images). It may especially be a compression, a spatial and / or temporal transformation, a tattoo or a contour detection or movement.
  • DCT Discrete Cosine Transform
  • RLC Run-Length-Coding
  • these methods of compression and decompression do not facilitate other treatments intended either to transform all or part of an image, such as for example a rotation or a close-up, or to detect an outline or a movement, or to slow down the frame rate of a video
  • the invention therefore aims to remedy at least one of the aforementioned drawbacks. It proposes for this purpose a device dedicated to the processing of n-dimensional input data representative of an image or sequence of n-dimensional images corresponding to n directions, with n ⁇ 2.
  • n directions ie n directions of space related to a n-dimensional spatial coordinate system (in the case of a fixed image), or n-1 directions of space combined with a temporal direction and reported together at a spatio-temporal landmark with n dimensions (in the case of a sequence of images or animated images).
  • This treatment device is characterized by the fact that it comprises loaded processing means (MT), in case of receipt of input data:
  • the treatment device according to the invention may comprise other characteristics that can be taken separately or in combination, and in particular:
  • its processing means can be responsible for defining n-dimensional domains of identical general shapes chosen and of identical dimensions;
  • the processing means can then be instructed to transform into representation data only the coefficients which are associated with so-called crossed products of different basic functions (the other coefficients corresponding to the values of the representation functions on the boundaries of the contiguous domains, which can be deduced step by step);
  • its processing means may be responsible for defining the n-dimensional domains i) by determining the partial and approximate k-th derivative in the n directions of the input data, with k ⁇ 1, then ii) by comparing certain at least partial k-th derivatives at a variation threshold chosen so as to determine each input datum, then called border datum, at which the threshold of variation occurs, and iii) constituting the n-domain domains. dimensional from pairs of neighboring boundary data in the n directions, at least some of the positions of the boundary data constituting the position data of the n-dimensional domains;
  • the processing means can then be instructed to transform all the coefficients into representation data
  • the order k of the partial derivatives is for example equal to two (2);
  • the processing means may be responsible for determining each partial and approximate k-th derivative in one of the n directions from a Taylor development truncated on a selected number of segments in the direction in question, the set of segments following the direction in question covering the range of input data in that direction;
  • the domains are preferably rectangular in shape; when the number of directions n is equal to three, the domains are preferably volumes of parallelepipedal shape;
  • its processing means can be responsible for constructing all the representation functions from the same basic function base
  • each representation function may be responsible for constructing each representation function from a linear combination of the basic functions of the chosen base, a combination in which each basic function is weighted by a chosen coefficient;
  • the basic functions can be polynomials of orders between zero and M, with M ⁇ 1;
  • the processing means may be responsible for constructing the representation functions (and therefore determining the coefficients that represent them) by means of an interpolation technique, for example of spline or least squares type;
  • its processing means may be responsible for processing the games independently of one another; its processing means may be responsible for constituting a file comprising at least the output data representative of the input data.
  • the file is then arranged as a sequence or array of output data groups representative of the input data contained in each of the n-dimensional domains, and each group includes representation data and eventual data. position data;
  • its processing means may be responsible for applying a spatial and / or temporal transformation to at least one of the representation functions before transforming at least the coefficients of each transformed representation function into representation data defining with the data of associated position of the output data; spatial transformations are for example chosen from rotations and close-ups (or "zoom"); its processing means may be responsible for applying a chosen mathematical operator to the input data so as to perform contour or motion detection.
  • the mathematical operator may for example be a simple derivative with respect to one of the directions or a Laplacian or a divergence; its processing means may be responsible for hiding information at selected points (or pixels) of an image, corresponding to at least one of the representation functions (tattoo effect), before transforming at least some of the coefficients representation data representation functions defining with the associated position data output data.
  • the invention also proposes an image or video data encoder equipped with a processing device of the type described above.
  • This encoder may also include a post-compression module responsible for applying auxiliary compression to the output data that is output from the processing device to output a post-compressed data file.
  • the invention also proposes a device dedicated to the reconstitution of image or video data from input data resulting from a coding (or treatment) by means of a processing device or an encoder of the type of those presented above.
  • This reconstitution device is characterized in that it comprises reconstitution means having the base of basic functions and the construction technique which are used during the coding (or processing) and responsible for reconstituting each representation function which is associated with each domain from the representation data that is contained in each input data group and from the basic function database and construction technique (eg a linear combination), and then reconstruct (or reconstruct ) a main function from the reconstructed (or reconstructed) representation functions and position data contained in each corresponding input data group.
  • reconstitution means having the base of basic functions and the construction technique which are used during the coding (or processing) and responsible for reconstituting each representation function which is associated with each domain from the representation data that is contained in each input data group and from the basic function database and construction technique (eg a linear combination), and then reconstruct (or reconstruct ) a main function from the reconstructed (or reconstructed) representation functions and position data contained in each corresponding input data group.
  • the means for reconstituting such a reconstitution device may be responsible for transforming the main function (and more precisely the representation functions that constitute it) into output data.
  • the means for reconstituting such a reconstitution device may also be responsible for decoding input data sets that correspond to complementary color image components (for example, R, G, B), in order to deliver output datasets.
  • the invention also proposes an input data decoder representative of an image or video and resulting from an encoding by means of a processing device or an encoder of the type of those presented above, equipped with a reconstitution device of the type shown above.
  • This decoder may also include a pre-decompression module loaded, when receiving post-compressed input data, to apply auxiliary decompression to the input data received, so as to supply the decompression device with input data.
  • FIG. 2 is an example of an algorithm detailing the main steps of a processing method that can be implemented by a processing device according to the invention
  • FIG. 3 is an example of an evolution diagram along a direction X of a part of a partial derivative of order k (d k S / dX n k ) of an input signal (S),
  • FIG. 4 very schematically illustrates a part of the decomposition of an image (I) into domains Di (here rectangular), this decomposition resulting in particular from the evolution diagram of FIG. 3,
  • FIG. 5 very schematically and functionally illustrates an exemplary embodiment of a decoder equipped with an exemplary embodiment of a reconstitution device according to the invention
  • FIG. 6 is an example of an algorithm detailing the main steps of a reconstitution process (or decoding) that can be implemented by a reconstitution device according to the invention.
  • the processing device DT comprises a processing module MT which is responsible for performing at least one processing on input data representative of an image I or a sequence of images constituting for example all or part of a video.
  • the input data, which feeds the processing module DT, are for example arranged in the form of a binary (or digital) file, also called source file.
  • a binary (or digital) file also called source file.
  • Such a file may come from any type of source, including digital photographic equipment, fax machine, photocopier, camera phone, recorder a compact disc (CD) or videodisc (DVD or VCD), a game console, or a television, or a medium (or medium) for computer storage, such as a compact disc or a videodisk .
  • the source file is for example supplied to the processing device DT by a coder CR in which it is implanted and which is coupled directly or indirectly to the source or which is part of it. This is particularly the case of the embodiment, non-limiting, illustrated in Figure 1.
  • the invention relates to the processing of n-dimensional data, that is to say representative of an image or sequence of n-dimensional images, with n ⁇ 2.
  • n dimensions correspond either to n directions of space related to a spatial coordinate system defined by n vectors, as in the case of a fixed image, or to n - 1 directions of space combined with a temporal direction and reported together to a spatio-temporal landmark defined by n vectors, as in the case of a sequence of images (or moving images).
  • n is generally equal to 2.
  • the two dimensions then correspond to two directions of space, perpendicular to each other and referenced X and Y.
  • n is generally equal to 3.
  • the three dimensions then correspond to two directions of space, perpendicular to each other and referenced X and Y, as well as to the temporal direction referenced t.
  • the images have more than two spatial dimensions (n> 2), as for example the so-called 3D images (three-dimensional) or the images belonging to curved spaces.
  • the invention also relates to monochromatic images, each pixel of which is defined by a (data) position and a (data) of chromatic value (for example between 0 and 255 in the case of a gray component ), that the polychromatic images, each pixel is defined by a (data) position and by three (data) chromatic values (corresponding for example to the colors red, green and blue, and for example between 0 and 255).
  • the source file is for example in the form of a concatenation of three subfiles (or sets of input data) each corresponding to one of the three color components.
  • the processing of polychromatic images may, for example, consist of individually processing each set of input data corresponding to one of the three color components, and then concatenating at the end the three (processed) output data sets. But other methods can be used.
  • the processing module MT when it receives a source file containing input data, it starts by defining one or more contiguous n-dimensional domains, of complementary forms defined by position data, and containing the data of entry to be processed.
  • complementary shape domains are understood to mean domains which, once united, cover the entire surface of an image (I) or the entire volume of a sequence of images.
  • the processing module MT may comprise an SMD cutting sub-module dedicated to the determination of the domains Di and to the input data which they respectively contain.
  • This SMD cutting sub-module is for example coupled to the input of the processing module MT and it delivers on its output the position data defining each domain Di.
  • the processing module MT determines for each of them a representation function FRi representative of the set of data. input that it contains. More precisely, each representation function FRi is constructed from one or more basic functions chosen within at least one basis of basic functions that are respectively associated with selected coefficients.
  • bases can be envisaged, and in particular bases of polynomial functions or sinusoidal functions.
  • base of basic functions the polynomial base whose components (or basic functions) are defined by the relation x ⁇ .y ⁇ , where ⁇ and ⁇ are integers bound by the relation ⁇ + ⁇ ⁇ M.
  • This polynomial base can comprise any polynomial of degree m between zero and M, with M ⁇ 1.
  • a representation function FRi associated with a domain Di, can for example be constructed by linear combination of the basic functions weighted by coefficients.
  • the representation function FRi associated with a domain Di is for example in the form:
  • FRi ao O + aox + ao-iy + a-nxy + 820X 2 + 8 02 ⁇ + + 812Xy 2 + 830X 3 + a O 3y 3
  • a representation function FRi associated with a domain Di, can for example be constructed by linear combination of the basic functions weighted by coefficients.
  • polynomial functions are advantageous because of the simplicity of their implementation.
  • representation functions FRi that is to say, to determine the coefficients associated with the basic functions, by means of a spline interpolation or lower interpolation technique. square.
  • the processing module MT has several different bases and that it chooses one of them according to the needs corresponding to the input data to be processed.
  • Each representation function FRi thus determined approaches, as far as possible, the portion of the source signal S which is defined by the input data contained in the corresponding domain Di.
  • the continuity at their common border is for example obtained by applying a weighted least squares technique. Border errors are artificially increased by weighting to be better minimized later.
  • the processing module MT transforms at least some of the coefficients, which define, in the base used, at least one of these representation functions, in representation data which constitute with the position data (which defines the respective shapes and locations of the associated Di domains) output data representative of the input data of the source file.
  • a compression-type process aims to reduce the number of output data as much as possible, given the desired rendering quality.
  • a contour or motion detection or close-up (or "zoom") type processing may possibly require greater precision and therefore more coefficients to represent each representation function.
  • the coefficients that are associated with products, called cross-products, of different basic functions for example, and in a nonlimiting manner, xy or xy 2 or xyt or X 2 Q.
  • the joined Di domains In the presence of domains of identical general shapes, but of different dimensions, the joined Di domains generally share only part of their common border (side or face). Therefore, unlike in the previous case (which is a special case of the present case), the coefficients, which are not associated with the crossed products, do not correspond to the border level and therefore can not be deduced step by step. In this general case, all the coefficients that define each representation function FRi must be taken into account (for example to transform them into representation data).
  • the processing module MT may comprise a construction sub-module SMC dedicated to the construction of the representation functions FRi which correspond to the domains Di.
  • This sub- SMC construction module is for example coupled to the input of the processing module MT and the output of the SMD sub-module, and it delivers on its output the coefficients (or representation data) of each representation function. corresponding to each domain Di.
  • the coefficients of at least one of the representation functions can also be processed so as to apply to them a spatial and / or temporal transformation, and then possibly constitute an output file to
  • ____ ta constitution of un'fichier-output-is-for example to form UNE-sequence (or array) of G groups of output data representative of the input data contained in each selected domain Di .
  • Group Gi is associated with a domain Di and comprises the representation data defining (at least partially) the corresponding representation function FRi (possibly transformed) and any position data at least partially defining said domain Di.
  • the position data is only necessary when the domains are of identical general shapes but of different dimensions.
  • each group Gi of representation data a position data representing the number order of the domain Di corresponding within the division.
  • each group G 1 of representation data, corresponding to each domain D 1 is accompanied by position data defining at least its dimensions.
  • Di domains of general rectangular shape must be provided for each Di area positions within the image of two of its corners which are opposite in a diagonal.
  • the processing module MT may include an SMG file generation sub-module dedicated to the constitution of the output files.
  • the sub-SMG file generation module is for example coupled to the outputs of the construction sub-module SMC and SMD cutting sub-module.
  • each image is represented by representation functions FRi, defined by coefficients relative to a base function base, it is therefore particularly easy to apply to at least one of them one (or more) processing (s). ) complementary.
  • these complementary treatments may for example consist of modifying the representation of at least part of an image (or sequence of images) and / or of determining information relating to at least part of an image ( or sequence of images).
  • the invention makes it possible to transform spatially and / or temporally all or part of an image or a sequence of images, for example to perform a rotation or a close-up ("or zoom").
  • Geometric transformations such as orthogonal geometry isometries, and time transformations for image sequences are easily calculated by performing the corresponding variable changes on the basic functions used to construct the representation functions FRi.
  • a digital zoom can be obtained without decreasing the resolution by the numerical values of the FRi representation functions taken in more points.
  • Tattooing is to hide information at certain points (or pixels) of an image. Any type of information can be inserted, including information
  • This insertion of hidden information can for example be done in
  • contour detection is performed by means of a chosen mathematical operator that is directly applied to at least a portion of the input data, but which could also be applied to one or more FRi representation functions.
  • the domains Di are determined by means of the derivatives, it is possible, for example, to use the matrix of the derivatives to perform the contour detection.
  • the Laplacian operator is the one who provides the best results.
  • Motion detection can for example be obtained with a technique similar to that implemented for contour detection, but applied to the temporal direction. Alternatively, it can also be done following the path of a pixel, represented by a portion of a representation function, from one image to another. For example, in the case of polychromatic images, the motion detection may operate on the basis of at least one color change detection on a chosen pixel.
  • the SMG file generation sub-module may for example be responsible for concatenating the three sets of output data that correspond to the three color components to form the output files.
  • the three data sets contain common data, for example position data, some of them can be deleted in order to avoid redundancies.
  • the number of output sets associated with a polychromatic image is a function of the color coding mode.
  • the processing module MT receives the source file to be processed. Then, in a step 20 it determines the domains Di which cut
  • the processing module MT constructs each representation function FRi that approaches the input data contained in the corresponding domain Di, and transforms into representation data at least some of the coefficients that define, in the base used, at least one of the representation functions. For this purpose, he uses his SMC construction sub-module, for example.
  • a complementary step 40 may be provided in which the processing module MT applies at least one complementary processing to the representation data of at least one of the representation functions so as to deliver transformed representation data (at least for some of them). He uses his-sub-module-of-transformation-SMT, -for example
  • a complementary step 60 may be added after step 50 to subject the output data of the output file to auxiliary compression.
  • auxiliary compression techniques known to those skilled in the art, can be used, for example compression type
  • auxiliary compression module MCA is provided at the output of the processing module MT.
  • the joined domains Di can be obtained in at least two different ways.
  • a first way, particularly simple to implement and economical in computing time, is to impose the same shape and dimensions identical to all areas Di covering an image (or a sequence of images). For example, one can choose domains Di having sides extending on 3 or 4 pixels.
  • the processing module MT has only to cut, in the above-mentioned step 20, the image (or the image sequence) in identical D1 domains.
  • a second, particularly effective way is to let the processing module MT determine, in the aforementioned step 20, the dimensions of each domain Di covering an image (or a sequence of images).
  • the processing module MT In order to be able to determine the dimensions of the domains D1, the processing module MT, and for example its submodule SMD, must be specifically arranged.
  • the invention proposes that the determination of the dimensions of the domains Di takes place in three main stages.
  • the processing module MT determines the partial and approximate k-th derivatives in the n directions X n (d k S / dX n k ) of the input data S, k being chosen greater than or equal to 1.
  • the processing module MT determines the partial and approximate kth derivative in the direction X 1, ie d k S / dX k , and the derivative k-th partial and approximate in the Y direction, ie d ⁇ / dY *.
  • the set of segments SGj n in the direction X n covers the extent of the input data in this direction X n .
  • All segments SGj n of a direction X n have the same length. It is important to note that the length of a segment SGj n in the direction X n is decorrelated from the lengths of the domains Di in the same direction. This length is indeed fixed initially and the determination of the domains is done after the computation (approached) of the partial derivatives k-th.
  • the length of the segments SGj n in the direction X n is adjustable according to a compromise between the desired denoising and the reactivity with respect to the dynamics of the signal (input data).
  • the operators used for calculating partial and approximate k-th derivatives are equivalent to low-pass filters, so that the larger the sliding window (mentioned above), the smaller the cutoff frequency.
  • segments SGj n of a direction X n can overlap partially in order to use only convergent estimates of the derivatives resulting from the truncated Taylor development.
  • the processing module MT Once the processing module MT has determined the partial and approximate kth derivatives in the n directions X n (d k S / dX n k ) of the source signal (input data) S to be compressed, it passes to the second main step.
  • the processing module MT begins by comparing the variations of at least some of the k-th partial derivatives d k S / dX n k with a chosen threshold th (n), as illustrated schematically in FIG. figure shows that, starting from a given point, one monitors the amplitude of variation (maximum - minimum) of the derivative concerned, until the point where it exceeds (or reaches) the threshold.
  • the thresholds th (n) associated with each of the directions X n can be equal or different.
  • th (n) thresholds the smaller the number of coefficients representing the representation functions (and hence the higher the compression ratio).
  • the output signal (output data) is equivalent to the definition of the domains Di (position data) and the associated coefficients.
  • higher threshold values tend to induce a smaller number of Di domains.
  • the smaller the th (n) threshold values the smaller the dimensions of the Di domains, and therefore the better the approximation of the source signal (input data) S by the main function FP consisting of the set of FRi representation functions.
  • the respective values of th (n) thresholds must be chosen as a function of a compromise between the compression ratio and the coding noise.
  • the comparison made by the processing module MT is intended to determine each input data (or point), called the border data, at which a threshold crossing of variation th (n) (by higher value) of the threshold is observed. at least one of its n partial k-derivatives d k S / dX n k .
  • the threshold th (n) is a threshold representative of a partial k-th derivative variation amplitude d k S / dX ⁇ k .
  • the comparison carried out by the processing module MT is intended to determine for each of the n directions X n groups or blocks of input data (points) for which the difference between the two maximum and minimum values of their derivatives k- Part i d k S / dX n k is less than or equal to the threshold of variation th (n).
  • Each input data (point) at which a crossing of the th (n) threshold is observed (by higher value) is a raw boundary datum of a block that will be used to build the interface between two neighboring contiguous domains.
  • Each border datum (point) where we stopped is the last of a domain in the direction X n considered.
  • this is done for the variations of at least some of the partial k-th derivatives d k S / dX n k at a chosen threshold th (n).
  • All lines in each direction, or a portion thereof, can be processed according to a compromise between the compression ratio and the image quality after compression.
  • domains are constrained to be rectangles. The limit point of the domain can therefore be the first encountered, on all lines, for which the threshold is crossed.
  • a more advanced method can be used, for example statistical (as "10% of the lines have crossed the threshold", this example being purely indicative). We will come back to it later.
  • the processing module MT constitutes domains Di from neighboring pairs of data in the n directions X n .
  • the processing module MT constitutes domains Di from neighboring pairs of data in the n directions X n .
  • the processing module MT constitutes domains Di from neighboring pairs of data in the n directions X n .
  • Xmax which defines the extent of the image in the direction X n
  • six lx ⁇ lengths (Ixi to Ix ⁇ ) have been determined. These six lengths define, for example, the respective dimensions of the first six rectangular domains D1 to D6 schematically illustrated in FIG. 4 and contributing to the covering (or cutting) of the image I.
  • the positions of the input data defining each domain Di need not all necessarily be stored. Only those from which the positions of the other input data can be deduced can be stored. For example, in the case of rectangular domains it is sufficient to store for each domain Di the positions within the image of the input data which are located at two of its opposite corners along a diagonal.
  • the comparison of the variations of the partial derivatives with the threshold (s) provides boundary data in each dimension of the image. More generally, these boundary data define multidimensional blocks or contours that are a priori of any shape. Taking the two-dimensional case, these outlines are lines. In the example of the constraint by rectangles, it is about adjusting rectangles without holes on these contours.
  • Figure 4 shows a way to do it, as a simple example, in no way limiting.
  • the constraint by rectangles is interpreted as "the right edge of the domain D7 is fixed by the left edge of the domain D2"; alternatively, the constraint by rectangles could be interpreted as "the bottom edge of the domain D2 is at the same level as D1" and the right edge of D7 is determined in another way involving the outlines and / or the constraint by rectangles .
  • this is the algorithmic of contour adjustment on polygons (or other forms simply definable).
  • the rectangles are definable by two points; it is also the same for triangles, whose form is imposed to a near homothety.
  • rectangles are traversed in a determined order. They can therefore overlap, the image portion reconstructed on a given rectangle is then partially "overwritten” by the image portion reconstructed on a next rectangle.
  • “joined rectangles” here means that there are no significant holes (relative to the content of the image), but does not exclude the recovery.
  • the processing device DT and in particular its processing module MT, and / or the post-compression module MPC of the encoder CR, can be realized in the form of electronic circuits (or “hardware”), software modules (or computer or “software”), or a combination of circuits and software.
  • the reconstitution device DD 1 comprises a reconstitution module MR which is responsible for decoding input data resulting from a coding (or processing) by means of the method of processing described above and representative of an image I or a sequence of images constituting for example all or part of a video.
  • a reconstitution module MR which is responsible for decoding input data resulting from a coding (or processing) by means of the method of processing described above and representative of an image I or a sequence of images constituting for example all or part of a video.
  • the MR reconstruction module must include the basic functions of the database that is used during the processing as well as the technique used to build the FRi representation functions from these basic functions.
  • the input data, which feeds the reconstitution module MR, are arranged in the form of a binary (or digital) file, also called source file to be decoded.
  • Such a file can come from any type of source, and in particular from a CR encoder, possibly implanted in a digital photographic equipment, a fax machine, a photocopier, a telephone, a compact disc (CD) or videodisc recorder (DVD or VCD), a game console, or a television, or a medium (or medium) for computer storage, such as a compact disc or a videodisk.
  • the source file to be decoded is for example supplied to the reconstitution device DD by a DR decoder in which it is implanted and which is coupled directly or indirectly to the source or which is part of it. This is particularly the case of the exemplary embodiment, not limiting, illustrated in FIG. 5.
  • the reconstitution module MR when the reconstitution module MR receives a source file containing input data to be decoded, it begins by determining each group of representation data Gi associated with any position data defining each domain Di.
  • the reconstitution module MR may comprise a SMDG unbundling sub-module dedicated to this task.
  • This SMDG unbundling sub-module is for example coupled to the input of the reconstitution module MR and it delivers on its output the different groups of representation data Gi and the domain definitions Di correspondents.
  • the reconstitution module MR reconstructs (or reconstructs) each representation function FRi which is associated with each domain Di from the representation data groups Gi. This operation is particularly simple and fast thanks to the invention.
  • the construction technique is a linear combination.
  • the main function FP (initial) is thus reconstituted by putting end to end all the reconstructed FRi representation functions.
  • the reconstitution module MR then transforms the main function FP (or representation functions FRi) into output data whose respective positions are those of the pixels of the decoded or reconstructed image (or picture sequence).
  • the reconstitution module MR may comprise a reconstruction sub-module SMR dedicated to the reconstruction of the representation functions FRi and to their transformation into output data.
  • This SMR reconstruction sub-module is for example coupled to the output of the SMDG unbundling sub-module and it delivers on its output the different output data resulting from the transformation of the representation functions FRi (or of the main function FP).
  • SMR SMR
  • it can form an output file.
  • it may for example constitute a sequence (or a table) of output data representative of the pixels of the decoded or reconstructed image (or picture sequence).
  • the reconstitution module MR can comprise an SMGF file generation sub-module dedicated to the constitution of the output files. This sub-module for generating files
  • SMGF is for example coupled to the output of the reconstruction sub-module
  • the file generation sub-module SMGF may for example be responsible for concatenating the three sets of output data, which correspond to the three color components, to form the output files.
  • the three data sets contain common data, for example position data, some of them can be deleted in order to avoid redundancies.
  • the number of output sets associated with a polychromatic image is a function of the color coding mode.
  • the reconstitution module MR may optionally comprise an SMT transformation sub-module coupled to its reconstruction sub-module SMR. This SMT transformation sub-module is substantially identical to the SMT transformation sub-module of the processing module MT 1 described above. It is for example responsible for processing the coefficients of at least one of the representation functions so as to apply to them a spatial and / or temporal transformation.
  • This transformation sub-module SMT 'can also reconstruct representation functions FRi which represent a wider range of colors. For example, you can double or triple the number of colors. To do this, it is necessary, as in the case of a zoom, to reconstruct each FRi representation function with a greater number of points in the color space.
  • the SMT transformation sub-module can also reconstruct representation functions FRi which represent a larger number of pixels, so as to increase the definition of the image. For example, you can double or triple the definition of the image. We can thus go from a definition of type 512x512 to a definition of type 1024x1024. To do this, it is necessary, as in the case of a zoom, to reconstruct each FRi representation function with a larger number of points.
  • the reconstitution module MR receives the file source to decode.
  • a pre-decompression step 110 is provided for applying to said data a decompression "Inverse" of said auxiliary compression.
  • a pre-decompression module MPD is provided upstream of the input of the decompression module MD.
  • this MPD pre-decompression module can be part of the DR decoder. But, it could also be part of the DD reconstruction device.
  • the reconstitution module MR determines the groups of input (or representation) data Gi which are associated with the definitions of the domains Di which completely cut (or overlap) the image (or the sequence of images). .
  • the reconstitution module MR reconstructs each representation function FRi of each domain Di.
  • a possible step 140 may be provided in which the reconstitution module MR performs at least one treatment on the reconstituted representation functions FRi.
  • the reconstitution module MR transforms the reconstituted and possibly processed representation functions into output data.
  • the reconstitution module MR constitutes the output file from the output data.
  • the reconstitution device DD and in particular its reconstitution module MR, and / or the pre-decompression module MPD of the decoder
  • DR can be realized in the form of electronic circuits (or
  • Hardware software modules (or “software”), or a combination of circuits and software.
  • the invention provides a particularly elegant and effective means for attenuating structured and / or unstructured noises that are superimposed on the representative data of an image. This results from the fact that the transformation of input data into representation functions uses, among other things, iterated integrations which act as a filter lowpass.
  • the noises concerned are not necessarily additive.
  • the data are considered monochromatic.
  • these monochromatic data can be referred to as luminance data.
  • the format used for the data may comprise three chromatic components according to three complementary colors suitably chosen, such as the classic triplet ⁇ red, green, blue ⁇ , called RGB. It is also possible to use different video data format variants, such as combinations between a luminance component and at least two color components (chrominance) according to two complementary colors. The third component can be recovered by difference.
  • RGB classic triplet ⁇ red, green, blue ⁇
  • chrominance color components
  • the third component can be recovered by difference.
  • Another example is the CCR601 digital television standard, in that it advocates a luminance and chrominance file approach.
  • Chroma and luminance are linked in the color space concerned. Accordingly, a format containing chrominance data, with or without luminance, can be considered to include data representative of complementary color image components.
  • the invention is not limited to the embodiments of treatment device, encoder, reconstitution device and decoder described above, only by way of example, but it encompasses all variants that may be considered by humans of the art in the context of the claims below.
  • the coordinates x ⁇ ,. . . , x m of R m (resp. y ⁇ , ..., y p of MP) are the variables of space (respectively the chromatic components), that t of E is the time.
  • m 2 or 3
  • p 1 or 3.

Abstract

The invention relates to video and/or image data processing with determination of representation functions. According to the invention, one device (DT) is dedicated to processing n-dimensional input data that are representative of an image or a sequence of images with n dimensions corresponding to n directions, whereby n = 2. The invention comprises processing means (MT) which, upon receipt of input data, perform the following steps consisting in: (i) defining one or more connecting n-dimensional domains having complementary shapes which are defined by position data and containing input data; (ii) subsequently, for each n-dimensional domain, determining a representation function that is representative of the set of input data contained therein and constructed from basic functions selected from at least one database of basic functions and respectively associated with selected coefficients, whereby said representation functions can be connected in pairs at least; and (iii) transforming at least some of the coefficients of at least one of the representation functions into representation data which, together with the associated position data, define output data that are representative of the input data.

Description

TRAITEMENT DE DONNÉES D'IMAGE ET/OU DE VIDÉO PAR DÉTERMINATION DE FONCTIONS DE REPRÉSENTATIONPROCESSING IMAGE AND / OR VIDEO DATA BY DETERMINING REPRESENTATION FUNCTIONS
L'invention concerne le traitement des données représentatives d'une image ou d'une séquence d'images constituant par exemple, en dehors du son, tout ou partie d'une vidéo.The invention relates to the processing of data representative of an image or a sequence of images constituting, for example, apart from sound, all or part of a video.
On entend ici par « image » tout type de données pouvant être affichées sur un écran ou reproduites sur tout type de support, comme par exemple une feuille de papier dans le cas d'un photocopieur ou d'un télécopieur.By "image" is meant here any type of data that can be displayed on a screen or reproduced on any type of medium, such as for example a sheet of paper in the case of a photocopier or a fax machine.
Par ailleurs, on entend ici par « traitement de données » tout type de traitement de nature à modifier le nombre de données représentatives d'une partie au moins d'une image (ou séquence d'images) et/ou à modifier la représentation d'une partie au moins d'une image (ou séquence d'images) et/ou à déterminer des informations relatives à une partie au moins d'une image (ou séquence d'images). Il pourra notamment s'agir d'une compression, d'une transformation spatiale et/ou temporelle, d'un tatouage ou d'une détection de contour ou de mouvement. Comme le sait l'homme de l'art, de nombreuses techniques ont été proposées pour traiter des données, généralement numériques, représentatives d'une image ou d'une séquence d'images, de manière à faciliter leur analyse, et/ou leur manipulation, et/ou leur stockage sur un support (ou médium) de stockage informatique, comme par exemple un disque compact (CD), un vidéodisque (DVD ou VCD), ou une mémoire d'équipement photographique numérique ou de terminal (ordinateur, téléphone mobile, télécopieur, photocopieur, console de jeu, ou téléviseur), et/ou leur transmission au sein d'un réseau de téléphonie et/ou d'un réseau informatique, comme par exemple l'Internet. Ainsi, dans le domaine de la compression/décompression plusieurs techniques ont fait l'objet d'une standardisation. C'est notamment le cas de la technique JPEG relative aux images fixes et de la technique MPEG relative aux images animées (ou séquences d'images). Ces techniques devenues des standards ont fait l'objet de nombreuses évolutions qui permettent d'atteindre des taux de compression très élevés. Mais, l'obtention de ces taux de compression élevés se fait toujours au détriment de la qualité de restitution. En d'autres termes, lorsque l'on souhaite obtenir des images décompressées de qualité on est obligé de choisir des taux de compression relativement faibles qui sont actuellement incompatibles avec les capacités de stockage et/ou de traitement de certains terminaux et/ou les capacités de transmission des réseaux actuels. Par ailleurs, ces méthodes de compression, tout comme les méthodes de décompression correspondantes, sont chronophages, si bien qu'elles sont difficilement compatibles avec des utilisations en temps réel.Moreover, here "data processing" is understood to mean any type of processing likely to modify the number of data representative of at least part of an image (or sequence of images) and / or to modify the representation of at least a part of an image (or sequence of images) and / or to determine information relating to at least part of an image (or sequence of images). It may especially be a compression, a spatial and / or temporal transformation, a tattoo or a contour detection or movement. As known to those skilled in the art, many techniques have been proposed to process data, generally digital, representative of an image or a sequence of images, so as to facilitate their analysis, and / or their manipulation, and / or storage on a medium (or medium) of computer storage, such as a compact disc (CD), a video disc (DVD or VCD), or a digital photographic equipment memory or terminal (computer, mobile phone, fax machine, photocopier, game console, or television), and / or their transmission within a telephony network and / or a computer network, such as the Internet. Thus, in the field of compression / decompression several techniques have been subject to standardization. This is particularly the case of the JPEG technique for still images and the relative MPEG technique animated images (or sequences of images). These techniques, which have become standards, have been the subject of many changes that make it possible to achieve very high compression ratios. But, obtaining these high compression rates is always to the detriment of the quality of restitution. In other words, when it is desired to obtain uncompressed quality images, it is necessary to choose relatively low compression ratios which are currently incompatible with the storage and / or processing capacities of certain terminals and / or the capacities transmission of current networks. Moreover, these methods of compression, like the corresponding decompression methods, are time-consuming, so that they are hardly compatible with uses in real time.
En outre, la mise en œuvre des méthodes de compression et de décompression connues requiert généralement des composants tels que les filtres ou codeurs de type DCT (pour Discret Cosine Transform) et les codeurs de type RLC (pour Run-Length-Coding), qui contribuent à dégrader la qualité des images.In addition, the implementation of known compression and decompression methods generally requires components such as DCT (Discrete Cosine Transform) type filters or coders and Run-Length-Coding (RLC) type encoders, which contribute to degrade the quality of the images.
De plus, ces méthodes de compression et de décompression ne facilitent pas les autres traitements destinés soit à transformer tout ou partie d'une image, comme par exemple une rotation ou un gros plan, soit à détecter un contour ou un mouvement, soit encore à ralentir la vitesse de défilement des images d'une vidéo.In addition, these methods of compression and decompression do not facilitate other treatments intended either to transform all or part of an image, such as for example a rotation or a close-up, or to detect an outline or a movement, or to slow down the frame rate of a video
L'invention a donc pour but de remédier à l'un au moins des inconvénients précités. Elle propose à cet effet un dispositif dédié au traitement de données d'entrée n-dimensionnelles, représentatives d'une image ou d'une séquence d'images à n dimensions correspondant à n directions, avec n ≥ 2.The invention therefore aims to remedy at least one of the aforementioned drawbacks. It proposes for this purpose a device dedicated to the processing of n-dimensional input data representative of an image or sequence of n-dimensional images corresponding to n directions, with n ≥ 2.
On entend ici par « n directions » soit n directions de l'espace rapportées à un repère spatial à n dimensions (dans le cas d'une image fixe), soit n - 1 directions de l'espace combinées à une direction temporelle et rapportées ensemble à un repère spatio-temporel à n dimensions (dans le cas d'une séquence d'images ou images animées).Here we mean "n directions", ie n directions of space related to a n-dimensional spatial coordinate system (in the case of a fixed image), or n-1 directions of space combined with a temporal direction and reported together at a spatio-temporal landmark with n dimensions (in the case of a sequence of images or animated images).
Ce dispositif de traitement se caractérise par le fait qu'il comprend des moyens de traitement (MT) chargés, en cas de réception de données d'entrée :This treatment device is characterized by the fact that it comprises loaded processing means (MT), in case of receipt of input data:
- de définir un ou plusieurs domaines n-dimensionnels jointifs, de formes complémentaires définies par des données de position, et contenant les données d'entrée, puis - de déterminer pour chaque domaine n-dimensionnel une fonction de représentation représentative de l'ensemble des données d'entrée qu'il contient et construite à partir de fonctions de base, choisies dans au moins une base de fonctions de base, et respectivement associées à des coefficients, lesdites fonctions de représentation étant raccordables au moins deux à deux, etdefining one or more contiguous n-dimensional domains, of complementary forms defined by position data, and containing the input data, and then determining for each n-dimensional domain a representational function representative of all the input data that it contains and constructed from basic functions, selected from at least one base function base, and respectively associated with coefficients, said representation functions being connectable at least two by two, and
- de transformer certains au moins des coefficients de l'une au moins des fonctions de représentation en données de représentation définissant avec les données de position associées des données de sortie représentatives des données d'entrée. Le dispositif de traitement selon l'invention peut comporter d'autres caractéristiques qui peuvent être prises séparément ou en combinaison, et notamment :transforming at least some of the coefficients of at least one of the representation functions into representation data defining, with the associated position data, output data representative of the input data. The treatment device according to the invention may comprise other characteristics that can be taken separately or in combination, and in particular:
- ses moyens de traitement peuvent être chargés de définir des domaines n- dimensionnels de formes générales choisies identiques et de dimensions identiques ;its processing means can be responsible for defining n-dimensional domains of identical general shapes chosen and of identical dimensions;
> les moyens de traitement peuvent alors être chargés de ne transformer en données de représentation que les coefficients qui sont associés à des produits, dits croisés, de fonctions de base différentes (les autres coefficients, correspondant aux valeurs des fonctions de représentation sur les frontières des domaines jointifs, pouvant être déduits de proche en proche) ;the processing means can then be instructed to transform into representation data only the coefficients which are associated with so-called crossed products of different basic functions (the other coefficients corresponding to the values of the representation functions on the boundaries of the contiguous domains, which can be deduced step by step);
- en variante ses moyens de traitement peuvent être chargés de définir les domaines n-dimensionnels i) en déterminant la dérivée k-ième partielle et approchée dans les n directions des données d'entrée, avec k≥1 , puis ii) en comparant certaines au moins des dérivées k-ième partielles à un seuil de variation choisi de manière à déterminer chaque donnée d'entrée, alors dite donnée frontière, au niveau de laquelle survient un franchissement du seuil de variation, et iii) en constituant les domaines n-dimensionnels à partir de paires de données frontières voisines dans les n directions, certaines au moins des positions des données frontières constituant les données de position des domaines n-dimensionnels ;as a variant, its processing means may be responsible for defining the n-dimensional domains i) by determining the partial and approximate k-th derivative in the n directions of the input data, with k≥1, then ii) by comparing certain at least partial k-th derivatives at a variation threshold chosen so as to determine each input datum, then called border datum, at which the threshold of variation occurs, and iii) constituting the n-domain domains. dimensional from pairs of neighboring boundary data in the n directions, at least some of the positions of the boundary data constituting the position data of the n-dimensional domains;
> les moyens de traitement peuvent alors être chargés de transformer en données de représentation tous les coefficients ;the processing means can then be instructed to transform all the coefficients into representation data;
> l'ordre k des dérivées partielles est par exemple égal à deux (2) ;the order k of the partial derivatives is for example equal to two (2);
> les moyens de traitement peuvent être chargés de déterminer chaque dérivée k-ième partielle et approchée dans l'une des n directions à partir d'un développement de Taylor tronqué sur un nombre choisi de segments suivant la direction concernée, l'ensemble des segments suivant la direction concernée couvrant l'étendue des données d'entrée suivant cette direction ;the processing means may be responsible for determining each partial and approximate k-th derivative in one of the n directions from a Taylor development truncated on a selected number of segments in the direction in question, the set of segments following the direction in question covering the range of input data in that direction;
- lorsque le nombre de directions n est égal à deux, les domaines sont préférentiellement de forme rectangulaire ; - lorsque le nombre de directions n est égal à trois, les domaines sont préférentiellement des volumes de forme parallélépipédique ;when the number of directions n is equal to two, the domains are preferably rectangular in shape; when the number of directions n is equal to three, the domains are preferably volumes of parallelepipedal shape;
- ses moyens de traitement peuvent être chargés de construire toutes les fonctions de représentation à partir d'une même base de fonctions de base ;its processing means can be responsible for constructing all the representation functions from the same basic function base;
- ses moyens de traitement peuvent être chargés de construire chaque fonction de représentation à partir d'une combinaison linéaire des fonctions de base de la base choisie, combinaison dans laquelle chaque fonction de base est pondérée par un coefficient choisi ;its processing means may be responsible for constructing each representation function from a linear combination of the basic functions of the chosen base, a combination in which each basic function is weighted by a chosen coefficient;
- les fonctions de base peuvent être des polynômes d'ordres compris entre zéro et M, avec M≥1 ; > les moyens de traitement peuvent être chargés de construire les fonctions de représentation (et donc déterminer les coefficients qui les représentent) au moyen d'une technique d'interpolation, par exemple de type splines ou moindres carrés ;the basic functions can be polynomials of orders between zero and M, with M≥1; the processing means may be responsible for constructing the representation functions (and therefore determining the coefficients that represent them) by means of an interpolation technique, for example of spline or least squares type;
- en présence de jeux de données d'entrée représentatives de composantes complémentaires d'image(s) en couleurs (par exemple rouge, verte et bleue) ses moyens de traitement peuvent être chargés de traiter les jeux indépendamment les uns des autres ; - ses moyens de traitement peuvent être chargés de constituer un fichier comportant au moins les données de sortie représentatives des données d'entrée. Le fichier est alors agencé sous la forme d'une suite ou d'un tableau de groupes de données de sortie représentatives des données d'entrée contenues dans chacun des domaines n-dimensionnels, et chaque groupe comporte des données de représentation et d'éventuelles données de position ;in the presence of input data sets representative of complementary components of color image (s) (for example red, green and blue) its processing means may be responsible for processing the games independently of one another; its processing means may be responsible for constituting a file comprising at least the output data representative of the input data. The file is then arranged as a sequence or array of output data groups representative of the input data contained in each of the n-dimensional domains, and each group includes representation data and eventual data. position data;
- ses moyens de traitement peuvent être chargés d'appliquer une transformation spatiale et/ou temporelle à l'une au moins des fonctions de représentation avant de transformer au moins les coefficients de chaque fonction de représentation transformée en données de représentation définissant avec les données de position associées des données de sortie ; > les transformations spatiales sont par exemple choisies parmi les rotations et les gros plans (ou « zoom ») ; - ses moyens de traitement peuvent être chargés d'appliquer un opérateur mathématique choisi aux données d'entrée de manière à effectuer une détection de contour ou de mouvement. L'opérateur mathématique peut par exemple être une simple dérivée par rapport à l'une des directions ou un Laplacien ou encore une divergence ; - ses moyens de traitement peuvent être chargés de cacher une information en des points (ou pixels) choisis d'une image, correspondant à l'une au moins des fonctions de représentation (effet de tatouage), avant de transformer certains au moins des coefficients des fonctions de représentation en données de représentation définissant avec les données de position associées des données de sortie.its processing means may be responsible for applying a spatial and / or temporal transformation to at least one of the representation functions before transforming at least the coefficients of each transformed representation function into representation data defining with the data of associated position of the output data; spatial transformations are for example chosen from rotations and close-ups (or "zoom"); its processing means may be responsible for applying a chosen mathematical operator to the input data so as to perform contour or motion detection. The mathematical operator may for example be a simple derivative with respect to one of the directions or a Laplacian or a divergence; its processing means may be responsible for hiding information at selected points (or pixels) of an image, corresponding to at least one of the representation functions (tattoo effect), before transforming at least some of the coefficients representation data representation functions defining with the associated position data output data.
L'invention propose également un codeur de données d'image ou de vidéo équipé d'un dispositif de traitement du type de celui présenté ci-avant.The invention also proposes an image or video data encoder equipped with a processing device of the type described above.
Ce codeur peut également comprendre un module de postcompression chargé d'appliquer une compression auxiliaire aux données de sortie qui sont délivrées par le dispositif de traitement, afin de délivrer un fichier de données post-compressées.This encoder may also include a post-compression module responsible for applying auxiliary compression to the output data that is output from the processing device to output a post-compressed data file.
L'invention propose également un dispositif dédié à la reconstitution de données d'image ou de vidéo à partir de données d'entrée résultant d'un codage (ou traitement) au moyen d'un dispositif de traitement ou d'un codeur du type de ceux présentés ci-avant.The invention also proposes a device dedicated to the reconstitution of image or video data from input data resulting from a coding (or treatment) by means of a processing device or an encoder of the type of those presented above.
Ce dispositif de reconstitution se caractérise par le fait qu'il comprend des moyens de reconstitution disposant de la base de fonctions de base et de la technique de construction qui sont utilisées lors du codage (ou traitement) et chargés de reconstituer chaque fonction de représentation qui est associée à chaque domaine à partir des données de représentation qui sont contenues dans chaque groupe de données d'entrée et de la base de fonctions de base et de la technique de construction (par exemple une combinaison linéaire), puis de reconstituer (ou reconstruire) une fonction principale à partir des fonctions de représentation reconstituées (ou reconstruites) et des données de position contenues dans chaque groupe de données d'entrée correspondant.This reconstitution device is characterized in that it comprises reconstitution means having the base of basic functions and the construction technique which are used during the coding (or processing) and responsible for reconstituting each representation function which is associated with each domain from the representation data that is contained in each input data group and from the basic function database and construction technique (eg a linear combination), and then reconstruct (or reconstruct ) a main function from the reconstructed (or reconstructed) representation functions and position data contained in each corresponding input data group.
Les moyens de reconstitution d'un tel dispositif de reconstitution peuvent être chargés de transformer la fonction principale (et plus précisément les fonctions de représentation qui la constituent) en données de sortie.The means for reconstituting such a reconstitution device may be responsible for transforming the main function (and more precisely the representation functions that constitute it) into output data.
Les moyens de reconstitution d'un tel dispositif de reconstitution peuvent être également chargés de décoder des jeux de données d'entrée qui correspondent à des composantes complémentaires d'image(s) en couleurs (par exemple R, V, B), afin de délivrer des jeux de données de sortie. Enfin, l'invention propose également un décodeur de données d'entrée, représentatives d'image ou de vidéo et résultant d'un codage au moyen d'un dispositif de traitement ou d'un codeur du type de ceux présentés ci-avant, équipé d'un dispositif de reconstitution du type de celui présenté ci- avant. Ce décodeur peut également comprendre un module de prédécompression chargé, lorsqu'il reçoit des données d'entrée postcompressées, d'appliquer une décompression auxiliaire aux données d'entrée reçues, de manière à alimenter le dispositif de décompression en données d'entrée. D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des dessins annexés, sur lesquels : - la figure 1 illustre de façon très schématique et fonctionnelle un exemple de réalisation d'un codeur équipé d'un exemple de réalisation d'un dispositif de traitement selon l'invention,The means for reconstituting such a reconstitution device may also be responsible for decoding input data sets that correspond to complementary color image components (for example, R, G, B), in order to deliver output datasets. Finally, the invention also proposes an input data decoder representative of an image or video and resulting from an encoding by means of a processing device or an encoder of the type of those presented above, equipped with a reconstitution device of the type shown above. This decoder may also include a pre-decompression module loaded, when receiving post-compressed input data, to apply auxiliary decompression to the input data received, so as to supply the decompression device with input data. Other features and advantages of the invention will emerge on examining the following detailed description, and the accompanying drawings, in which: FIG. 1 very schematically and functionally illustrates an example of embodiment of an encoder equipped with an exemplary embodiment of a treatment device according to the invention,
- la figure 2 est un exemple d'algorithme détaillant les principales étapes d'un procédé de traitement pouvant être mis en œuvre par un dispositif de traitement selon l'invention,FIG. 2 is an example of an algorithm detailing the main steps of a processing method that can be implemented by a processing device according to the invention,
- la figure 3 est un exemple de diagramme d'évolution suivant une direction X d'une partie d'une dérivée partielle d'ordre k (dkS/dXn k) d'un signal d'entrée (S),FIG. 3 is an example of an evolution diagram along a direction X of a part of a partial derivative of order k (d k S / dX n k ) of an input signal (S),
- la figure 4 illustre de façon très schématique une partie de la décomposition d'une image (I) en domaines Di (ici rectangulaires), cette décomposition résultant notamment du diagramme d'évolution de la figure 3,FIG. 4 very schematically illustrates a part of the decomposition of an image (I) into domains Di (here rectangular), this decomposition resulting in particular from the evolution diagram of FIG. 3,
- la figure 5 illustre de façon très schématique et fonctionnelle un exemple de réalisation d'un décodeur équipé d'un exemple de réalisation d'un dispositif de reconstitution selon l'invention, - la figure 6 est un exemple d'algorithme détaillant les principales étapes d'un procédé de reconstitution (ou décodage) pouvant être mis en œuvre par un dispositif de reconstitution selon l'invention.FIG. 5 very schematically and functionally illustrates an exemplary embodiment of a decoder equipped with an exemplary embodiment of a reconstitution device according to the invention; FIG. 6 is an example of an algorithm detailing the main steps of a reconstitution process (or decoding) that can be implemented by a reconstitution device according to the invention.
Les dessins annexés pourront non seulement servir à compléter l'invention, mais aussi contribuer à sa définition, le cas échéant. On se réfère tout d'abord aux figures 1 à 4 pour décrire un dispositif de traitement DT selon l'invention et le procédé de traitement qu'il met en œuvre.The attached drawings may not only serve to complete the invention, but also contribute to its definition, if any. Referring first to Figures 1 to 4 to describe a processing device DT according to the invention and the processing method that it implements.
Comme cela est illustré sur la figure 1, le dispositif de traitement DT, selon l'invention, comprend un module de traitement MT qui est chargé d'effectuer au moins un traitement sur des données d'entrée représentatives d'une image I ou d'une séquence d'images constituant par exemple tout ou partie d'une vidéo.As illustrated in FIG. 1, the processing device DT according to the invention comprises a processing module MT which is responsible for performing at least one processing on input data representative of an image I or a sequence of images constituting for example all or part of a video.
Les données d'entrée, qui alimentent le module de traitement DT, sont par exemple agencées sous la forme d'un fichier binaire (ou numérique), également appelé fichier source. Un tel fichier peut provenir de tout type de source, et notamment d'un équipement photographique numérique, d'un télécopieur, d'un photocopieur, d'un téléphone assurant la fonction d'appareil photographique, d'un graveur de disque compact (CD) ou de vidéodisque (DVD ou VCD), d'une console de jeu, ou d'un téléviseur, ou bien d'un support (ou médium) de stockage informatique, comme par exemple un disque compact ou un vidéodisque.The input data, which feeds the processing module DT, are for example arranged in the form of a binary (or digital) file, also called source file. Such a file may come from any type of source, including digital photographic equipment, fax machine, photocopier, camera phone, recorder a compact disc (CD) or videodisc (DVD or VCD), a game console, or a television, or a medium (or medium) for computer storage, such as a compact disc or a videodisk .
Le fichier source est par exemple fourni au dispositif de traitement DT par un codeur CR dans lequel il est implanté et qui est couplé directement ou indirectement à la source ou qui fait partie de celle-ci. C'est notamment le cas de l'exemple de réalisation, non limitatif, illustré sur la figure 1.The source file is for example supplied to the processing device DT by a coder CR in which it is implanted and which is coupled directly or indirectly to the source or which is part of it. This is particularly the case of the embodiment, non-limiting, illustrated in Figure 1.
L'invention concerne le traitement de données n-dimensionnelles, c'est-à-dire représentatives d'une image ou d'une séquence d'images à n dimensions, avec n ≥ 2.The invention relates to the processing of n-dimensional data, that is to say representative of an image or sequence of n-dimensional images, with n ≥ 2.
Ces n dimensions correspondent soit à n directions de l'espace rapportées à un repère spatial défini par n vecteurs, comme dans le cas d'une image fixe, soit à n - 1 directions de l'espace combinées à une direction temporelle et rapportées ensemble à un repère spatio-temporel défini par n vecteurs, comme dans le cas d'une séquence d'images (ou images animées).These n dimensions correspond either to n directions of space related to a spatial coordinate system defined by n vectors, as in the case of a fixed image, or to n - 1 directions of space combined with a temporal direction and reported together to a spatio-temporal landmark defined by n vectors, as in the case of a sequence of images (or moving images).
Dans le cas d'une image fixe n est généralement égal à 2. Les deux dimensions correspondent alors à deux directions de l'espace, perpendiculaires entre elles et référencées X et Y.In the case of a fixed image n is generally equal to 2. The two dimensions then correspond to two directions of space, perpendicular to each other and referenced X and Y.
Dans le cas d'une séquence d'images, n est généralement égal à 3. Les trois dimensions correspondent alors à deux directions de l'espace, perpendiculaires entre elles et référencées X et Y, ainsi qu'à la direction temporelle référencée t.In the case of a sequence of images, n is generally equal to 3. The three dimensions then correspond to two directions of space, perpendicular to each other and referenced X and Y, as well as to the temporal direction referenced t.
Mais, on peut envisager des situations dans lesquelles les images possèdent plus de deux dimensions spatiales (n >2), comme par exemple les images dites 3D (tri-dimensionnelles) ou les images appartenant à des espaces courbes.But, one can envisage situations in which the images have more than two spatial dimensions (n> 2), as for example the so-called 3D images (three-dimensional) or the images belonging to curved spaces.
Par ailleurs, l'invention concerne aussi bien les images monochromatiques, dont chaque pixel est défini par une (donnée de) position et une (donnée de) valeur chromatique (par exemple comprise entre 0 et 255 dans le cas d'une composante de gris), que les images polychromatiques, dont chaque pixel est défini par une (donnée de) position et par trois (données de) valeurs chromatiques (correspondant par exemple aux couleurs rouge, vert et bleu, et par exemple comprises entre 0 et 255). Dans le cas d'une image polychromatique, le fichier source se présente par exemple sous la forme d'une concaténation de trois sous-fichiers (ou jeux de données d'entrée) correspondant chacun à l'une des trois composantes chromatiques.Furthermore, the invention also relates to monochromatic images, each pixel of which is defined by a (data) position and a (data) of chromatic value (for example between 0 and 255 in the case of a gray component ), that the polychromatic images, each pixel is defined by a (data) position and by three (data) chromatic values (corresponding for example to the colors red, green and blue, and for example between 0 and 255). In the case of an image polychromatic, the source file is for example in the form of a concatenation of three subfiles (or sets of input data) each corresponding to one of the three color components.
On considère dans ce qui suit le cas d'images monochromatiques. Le traitement d'images polychromatiques peut par exemple consister à traiter de façon individualisée chaque jeu de données d'entrée correspondant à l'une des trois composantes chromatiques, puis à concaténer à la fin les trois jeux de données (traitées) de sortie. Mais d'autres méthodes peuvent être utilisées.We consider in the following the case of monochromatic images. The processing of polychromatic images may, for example, consist of individually processing each set of input data corresponding to one of the three color components, and then concatenating at the end the three (processed) output data sets. But other methods can be used.
Selon l'invention, lorsque le module de traitement MT reçoit un fichier source contenant des données d'entrée, il commence par définir un ou plusieurs domaines n-dimensionnels jointifs, de formes complémentaires définies par des données de position, et contenant les données d'entrée à traiter.According to the invention, when the processing module MT receives a source file containing input data, it starts by defining one or more contiguous n-dimensional domains, of complementary forms defined by position data, and containing the data of entry to be processed.
Le cas d'un unique domaine correspond aux situations dans lesquelles l'image est par exemple monochrome uniforme (typiquement toute noire). Dans les autres cas, on définit plusieurs domaines (au moins deux).The case of a single domain corresponds to situations in which the image is for example uniform monochrome (typically all black). In other cases, we define several domains (at least two).
On entend ici par « domaines jointifs » des domaines qui possèdent un côté commun dans le cas bidimensionnel (n = 2) ou une face commune dans les autres cas (n > 2). Par ailleurs, on entend ici par « domaines de formes complémentaires » des domaines qui, une fois réunis, couvrent l'intégralité de la surface d'une image (I) ou tout le volume d'une séquence d'images.Here, joined domains are domains that have a common side in the two-dimensional case (n = 2) or a common face in the other cases (n> 2). Moreover, here "complementary shape domains" are understood to mean domains which, once united, cover the entire surface of an image (I) or the entire volume of a sequence of images.
Par exemple, dans le cas bidimensionnel (n = 2), les domaines peuvent être des rectangles et dans le cas tridimensionnel (n = 3) les domaines peuvent être des volumes tels que des parallélépipèdes rectangles.For example, in the two-dimensional case (n = 2), the domains can be rectangles and in the three-dimensional case (n = 3) the domains can be volumes such as rectangular parallelepipeds.
On reviendra plus loin sur les modes d'obtention des domaines jointifs Di.We shall return later on the modes of obtaining the joined domains Di.
Comme illustré sur la figure 1 , le module de traitement MT peut comporter un sous-module de découpage SMD dédié à la détermination des domaines Di et aux données d'entrée qu'ils contiennent respectivement. Ce sous-module de découpage SMD est par exemple couplé à l'entrée du module de traitement MT et il délivre sur sa sortie les données de position qui définissent chaque domaine Di. Une fois qu'il a déterminé les domaines jointifs Di (par exemple au moyen de son sous-module de découpage SMD), le module de traitement MT détermine pour chacun d'entre eux une fonction de représentation FRi représentative de l'ensemble des données d'entrée qu'il contient. Plus précisément, chaque fonction de représentation FRi est construite à partir d'une ou plusieurs fonctions de base choisie(s) au sein d'au moins une base de fonctions de base que l'on associe respectivement à des coefficients choisis.As illustrated in FIG. 1, the processing module MT may comprise an SMD cutting sub-module dedicated to the determination of the domains Di and to the input data which they respectively contain. This SMD cutting sub-module is for example coupled to the input of the processing module MT and it delivers on its output the position data defining each domain Di. Once it has determined the join domains Di (for example by means of its SMD sub-module), the processing module MT determines for each of them a representation function FRi representative of the set of data. input that it contains. More precisely, each representation function FRi is constructed from one or more basic functions chosen within at least one basis of basic functions that are respectively associated with selected coefficients.
De nombreuses bases peuvent être envisagées, et notamment des bases de fonctions polynomiales ou de fonctions sinusoïdales. Dans le cas d'une image fixe rapportée aux deux directions spatiales X et Y, on peut par exemple choisir comme base de fonctions de base la base polynomiale dont les composantes (ou fonctions de base) sont définies par la relation xα.yβ, où α et β sont des entiers liés par la relation α + β ≤ M. Cette base polynomiale peut comporter tout polynôme de degré m compris entre zéro et M, avec M≥1.Numerous bases can be envisaged, and in particular bases of polynomial functions or sinusoidal functions. In the case of a fixed image related to the two spatial directions X and Y, it is possible, for example, to choose as base of basic functions the polynomial base whose components (or basic functions) are defined by the relation x α .y β , where α and β are integers bound by the relation α + β ≤ M. This polynomial base can comprise any polynomial of degree m between zero and M, with M≥1.
En présence d'une telle base, une fonction de représentation FRi, associée à un domaine Di, peut par exemple être construite par combinaison linéaire des fonctions de base pondérées par des coefficients. Dans ce cas et lorsque M est égal à 3, la fonction de représentation FRi associée à un domaine Di se présente par exemple sous la forme :In the presence of such a base, a representation function FRi, associated with a domain Di, can for example be constructed by linear combination of the basic functions weighted by coefficients. In this case and when M is equal to 3, the representation function FRi associated with a domain Di is for example in the form:
FRi = aoO+ aïox + ao-iy + a-nxy + 820X2 + 8
Figure imgf000012_0001
02^+ + 812Xy2 + 830X3 + aO3y3 où les apq (p, q = 0 à 3) sont les coefficients associés aux fonctions de base (polynomiales). Ces coefficients sont par exemple des nombres réels.
FRi = ao O + aox + ao-iy + a-nxy + 820X 2 + 8
Figure imgf000012_0001
02 ^ + + 812Xy 2 + 830X 3 + a O 3y 3 where the a pq (p, q = 0 to 3) are the coefficients associated with the basic (polynomial) functions. These coefficients are for example real numbers.
Dans le cas d'une image comportant 512 pixels suivant X et 512 pixels suivant Y, on a alors 1 ≤ x, y ≤ 512, par exemple. Dans la pratique, pour une question de traitement numérique, on code les 512 positions des pixels entre 0 et lIn the case of an image comprising 512 pixels along X and 512 pixels along Y, then 1 ≤ x, y ≤ 512, for example. In practice, for a digital processing problem, the 512 pixel positions are coded between 0 and 1
Dans le cas d'une séquence d'images rapportée aux deux directions spatiales X et Y ainsi qu'à la direction temporelle t, on peut par exemple choisir la base polynomiale dont les composantes sont définies par la relation xα.yβ.tv, où α, β et y sont des entiers liés par la relation α + β + y ≤ M, par exemple M =In the case of an image sequence related to the two spatial directions X and Y as well as to the temporal direction t, one can for example choose the polynomial base whose components are defined by the relation x α .y β .t v , where α, β and y are integers bound by the relation α + β + y ≤ M, for example M =
3.3.
En présence d'une telle base, une fonction de représentation FRi, associée à un domaine Di, peut par exemple être construite par combinaison linéaire des fonctions de base pondérées par des coefficients. Dans ce cas et lorsque M est égal à 3, la fonction de représentation FRi associée à un domaine Di se présente par exemple sous la forme : FRi = aOOo + aiOOx + aOioy + a∞it + anOxy + aioixt + aOnyt + amxyt + a2od^ + 8020/ + aocœt2 + 8210X2Y + a-i2oxy2 + aio2Xt2 + ao^yt2 + a0i2yt2 + a3oox3 +
Figure imgf000013_0001
où les apqr (p, q, r = 0 à 3) sont les coefficients associés aux fonctions de base (polynomiales). Ces coefficients sont par exemple des nombres réels. Dans le cas d'une séquence de T images comportant 512 pixels suivant X et 512 pixels suivant Y1 on a alors 1 ≤ x, y ≤ 512 et 1 ≤ t ≤ T, par exemple. Dans la pratique, pour une question de traitement numérique, on code les 512 positions des pixels entre 0 et 1.
In the presence of such a base, a representation function FRi, associated with a domain Di, can for example be constructed by linear combination of the basic functions weighted by coefficients. In this case and when M is equal to 3, the mapping function associated with a FRi domain Di is for example in the form: FRi = a o + OO OO have x + a + O ioy a∞it + an O xy + aioixt + a O nyt + amxyt + a 2 od ^ + 8020 / + aocet 2 + 8210X 2 Y + a-i2oxy 2 + aio2Xt 2 + ao ^ yt 2 + a 0 i2yt 2 + a3oox 3 +
Figure imgf000013_0001
where the pqr (p, q, r = 0 to 3) are the coefficients associated with the basic (polynomial) functions. These coefficients are for example real numbers. In the case of a sequence of T images comprising 512 pixels along X and 512 pixels along Y 1 then 1 ≤ x, y ≤ 512 and 1 ≤ t ≤ T, for example. In practice, for a digital processing issue, the 512 pixel positions are coded between 0 and 1.
Les fonctions polynomiales sont avantageuses en raison de la simplicité de leur mise en œuvre. En présence de telles fonctions de base il est en effet possible de construire des fonctions de représentation FRi, c'est-à-dire déterminer les coefficients associés aux fonctions de base, au moyen d'une technique d'interpolation de type splines ou moindres carrés.The polynomial functions are advantageous because of the simplicity of their implementation. In the presence of such basic functions, it is indeed possible to construct representation functions FRi, that is to say, to determine the coefficients associated with the basic functions, by means of a spline interpolation or lower interpolation technique. square.
Plus l'ordre M des polynômes est élevé, plus les domaines Di peuvent être grands et donc moins ils sont nombreux pour couvrir une image (ou séquence d'images). Cependant, plus l'ordre M des polynômes est élevé, plus le nombre de coefficients à déterminer (et à stocker) est grand. Lorsque le traitement porte sur la compression de données, un compromis doit donc être trouvé. Par exemple on peut choisir un ordre M égal à 3. Bien que l'on puisse choisir des groupes différents de fonctions de base parmi une base de fonctions de base, pour la construction des fonctions de représentation FRi associées aux différents domaines Di1 il est cependant plus simple de construire toutes les fonctions de représentation FRi avec le même groupe de (ou avec toutes les) fonctions de base choisies dans une base.The higher the order M of the polynomials, the more the domains Di can be large and therefore the fewer they are to cover an image (or sequence of images). However, the higher the order M of polynomials, the greater the number of coefficients to be determined (and stored). When processing is about data compression, a compromise must be found. For example you can choose an order M equal to 3. Although we can choose different groups of basic functions from a basic functions basic to the construction of FRi representative functions associated with different areas Su 1 is however simpler to construct all FRi representation functions with the same group of (or with all) basic functions chosen in a database.
Par ailleurs, on peut envisager que le module de traitement MT dispose de plusieurs bases différentes et qu'il choisisse l'une d'entre elles selon les besoins correspondant aux données d'entrée à traiter. Chaque fonction de représentation FRi ainsi déterminée approche, autant que faire se peut, la portion du signal source S qui est définie par les données d'entrée contenues dans le domaine correspondant Di.Moreover, it can be envisaged that the processing module MT has several different bases and that it chooses one of them according to the needs corresponding to the input data to be processed. Each representation function FRi thus determined approaches, as far as possible, the portion of the source signal S which is defined by the input data contained in the corresponding domain Di.
Il est important de noter que les fonctions de représentation FRi doivent satisfaire à des conditions aux limites au niveau des côtés ou faces que leurs domaines Di respectifs partagent avec leurs voisins. Par conséquent, il existe une continuité, au sens mathématique du terme, des fonctions de représentation FRM et FRi, qui correspondent à des domaines voisins jointifsIt is important to note that the FRi representation functions must satisfy boundary conditions at the sides or faces that their respective Di domains share with their neighbors. Consequently, there is a continuity, in the mathematical sense of the term, of the representation functions FRM and FRi, which correspond to adjoining neighboring domains.
Di-1 et Di1 au niveau de leur côté ou face commun(e). Ces fonctions de représentation FRi, qui sont raccordables au moins deux à deux et qui correspondent à l'ensemble des domaines Di couvrant une image (ou une séquence d'images), constitue une fois réunies une fonction principale FP.Di-1 and Di 1 at their side or common face (e). These representation functions FRi, which are connectable at least two by two and which correspond to all the domains Di covering an image (or a sequence of images), is once assembled a main function FP.
En présence de domaines voisins jointifs Di-1 et Di identiques (en forme et dimensions), la continuité au niveau de leur frontière commune est par exemple assurée au moyen d'égalités qui lient les coefficients de leurs fonctions de représentation FRM et FRi.In the presence of adjacent neighbor domains Di-1 and Di identical (in shape and dimensions), the continuity at their common border is for example ensured by means of equalities which link the coefficients of their representation functions FRM and FRi.
En présence de domaines voisins jointifs DM et Di différents, la continuité au niveau de leur frontière commune est par exemple obtenue en appliquant une technique de moindres carrés pondérés. Les erreurs au niveau des frontières sont artificiellement augmentées, par pondération, afin d'être mieux minimisées par la suite.In the presence of adjacent neighbor domains DM and Di different, the continuity at their common border is for example obtained by applying a weighted least squares technique. Border errors are artificially increased by weighting to be better minimized later.
Une fois que le module de traitement MT a construit toutes les fonctions de représentation FRi, il transforme certains au moins des coefficients, qui définissent, dans la base utilisée, l'une au moins de ces fonctions de représentation, en données de représentation qui constituent avec les données de position (qui définissent les formes et emplacements respectifs des domaines Di associés) des données de sortie représentatives des données d'entrée du fichier source.Once the processing module MT has constructed all the representation functions FRi, it transforms at least some of the coefficients, which define, in the base used, at least one of these representation functions, in representation data which constitute with the position data (which defines the respective shapes and locations of the associated Di domains) output data representative of the input data of the source file.
Il est important de noter que le nombre de coefficients qui doivent être transformés en données de représentation dépend du type de traitement effectué et du type de domaine Di choisi.It is important to note that the number of coefficients that must be transformed into representation data depends on the type of processing performed and the type of Di domain chosen.
Un traitement de type compression a en effet pour objectif de réduire le nombre de données de sortie autant que faire se peut, compte tenu de la qualité de restitution souhaitée. Un traitement de type détection de contour ou de mouvement ou de type gros plan (ou « zoom ») peut éventuellement nécessiter une plus grande précision et donc plus de coefficients pour représenter chaque fonction de représentation. Par ailleurs, comme on le verra plus loin, si tous les domaines Di sont de formes générales et de dimensions identiques et que les fonctions de représentation FRi sont construites par combinaison linéaire de fonctions de base, alors on n'a besoin de prendre en compte (par exemple pour les transformer en données de représentation) que les coefficients qui sont associés à des produits, dits croisés, de fonctions de base différentes (par exemple, et de façon non limitative, xy ou xy2 ou xyt ou X2Q. Les domaines Di jointifs partageant intégralement l'un de leurs côtés ou l'une de leurs faces (alors dit(e) frontière), les autres coefficients qui correspondent aux valeurs des fonctions de représentation sur les différentes frontières du domaine associé, peuvent être déduits de proche en proche à partir des valeurs des coefficients associés aux produits croisés. - — Cela-permet__de_réduij:e_DθtablementJ.e_jrjombre de coefficients à transformer en données de sortie et donc d'augmenter notablement le taux de compression lorsque c'est le but recherché. Le taux de compression dépend alors du compromis trouvé entre la taille des domaines (et donc leur nombre) et le nombre de coefficients définissant chaque fonction de représentation.In fact, a compression-type process aims to reduce the number of output data as much as possible, given the desired rendering quality. A contour or motion detection or close-up (or "zoom") type processing may possibly require greater precision and therefore more coefficients to represent each representation function. On the other hand, as will be seen below, if all the domains Di are of general shapes and of identical dimensions and the representation functions FRi are constructed by linear combination of basic functions, then we need not take into account (For example, to transform them into representation data) the coefficients that are associated with products, called cross-products, of different basic functions (for example, and in a nonlimiting manner, xy or xy 2 or xyt or X 2 Q. Joining Di domains sharing one of their sides or one of their faces (so-called boundary), the other coefficients that correspond to the values of the representation functions on the different boundaries of the associated domain can be deduced. step by step from the values of the coefficients associated with the crossed products .- - This-allows: to reduce the number of coefficients to be transformed into data of n and therefore significantly increase the compression ratio when this is the goal. The compression ratio therefore depends on the compromise found between the size of the domains (and therefore their number) and the number of coefficients defining each representation function.
En présence de domaines de formes générales identiques, mais de dimensions différentes, les domaines Di jointifs ne partagent généralement qu'une partie de leur frontière commune (côté ou face). Par conséquent, contrairement au cas précédent (qui est un cas particulier du cas présent), les coefficients, qui ne sont pas associés aux produits croisés, ne se correspondent pas au niveau des frontières et donc ne peuvent pas être déduits de proche en proche. Dans ce cas général, tous les coefficients qui définissent chaque fonction de représentation FRi doivent être pris en compte (par exemple pour les transformer en données de représentation).In the presence of domains of identical general shapes, but of different dimensions, the joined Di domains generally share only part of their common border (side or face). Therefore, unlike in the previous case (which is a special case of the present case), the coefficients, which are not associated with the crossed products, do not correspond to the border level and therefore can not be deduced step by step. In this general case, all the coefficients that define each representation function FRi must be taken into account (for example to transform them into representation data).
Comme illustré sur la figure 1, le module de traitement MT peut comporter un sous-module de construction SMC dédié à la construction des fonctions de représentation FRi qui correspondent aux domaines Di. Ce sous- module de construction SMC est par exemple couplé à l'entrée du module de traitement MT ainsi qu'à la sortie du sous-module de découpage SMD, et il délivre sur sa sortie les coefficients (ou données de représentation) de chaque fonction de représentation correspondant à chaque domaine Di. 5 Une fois que les données de représentation ont été déterminées (par exemple au moyen du sous-module de construction SMC), plusieurs situations peuvent être envisagées.As illustrated in FIG. 1, the processing module MT may comprise a construction sub-module SMC dedicated to the construction of the representation functions FRi which correspond to the domains Di. This sub- SMC construction module is for example coupled to the input of the processing module MT and the output of the SMD sub-module, and it delivers on its output the coefficients (or representation data) of each representation function. corresponding to each domain Di. Once the representation data has been determined (for example by means of the SMC construction sub-module), several situations can be envisaged.
On peut en effet directement constituer un fichier de sortie à partir des données de représentation et des données de position associées. C'est îo notamment ce que l'on fait lorsque l'on souhaite simplement compresser ou débruiter des données d'entrée.It is indeed possible to directly constitute an output file from the representation data and the associated position data. This is especially what we do when we simply want to compress or denoise input data.
On peut également traiter les coefficients de l'une au moins des fonctions de représentation, de manière à leur appliquer une transformation spatiale et/ou temporelle, puis éventuellement constituer un fichier de sortie àThe coefficients of at least one of the representation functions can also be processed so as to apply to them a spatial and / or temporal transformation, and then possibly constitute an output file to
15 partir des données de représentation non transformées et/ou transformées et des données de position associées.From the unprocessed and / or transformed representation data and associated position data.
___ ta^constitution d'un'fichier-de-sortie-consiste-par exemple-à-former-une- suite (ou un tableau) de groupes Gi de données de sortie représentatives des données d'entrée contenues dans chaque domaine Di sélectionné. Chaque___ ta ^ constitution of un'fichier-output-is-for example to form UNE-sequence (or array) of G groups of output data representative of the input data contained in each selected domain Di . Each
20 groupe Gi est associé à un domaine Di et comporte les données de représentation définissant (au moins partiellement) la fonction de représentation FRi correspondante (éventuellement transformée) et d'éventuelles données de position définissant au moins partiellement ledit domaine Di.Group Gi is associated with a domain Di and comprises the representation data defining (at least partially) the corresponding representation function FRi (possibly transformed) and any position data at least partially defining said domain Di.
25 Comme on le verra plus loin, les données de position ne sont nécessaires que lorsque les domaines sont de formes générales identiques mais de dimensions différentes.As will be seen below, the position data is only necessary when the domains are of identical general shapes but of different dimensions.
En effet, en présence de domaines Di identiques le seul fait de placer les groupes Gi de données de représentation selon un ordre choisi, quiIndeed, in the presence of identical domains Di, the fact of placing the groups Gi of representation data in a chosen order, which
30 correspond à l'agencement desdits domaines Di par rapport à l'image source (ou séquence d'images), suffit à indiquer les domaines Di auxquels ils correspondent. Il est également possible d'associer à chaque groupe Gi de données de représentation une donnée de position représentant le numéro d'ordre du domaine Di correspondant au sein du découpage.30 corresponds to the arrangement of said domains Di relative to the source image (or sequence of images), enough to indicate the Di domains to which they correspond. It is also possible to associate with each group Gi of representation data a position data representing the number order of the domain Di corresponding within the division.
Lorsque les domaines Di ont des formes générales identiques mais des dimensions différentes, il est indispensable que chaque groupe Gi de données de représentation, correspondant à chaque domaine Di1 soit accompagné de données de position qui définissent au moins ses dimensions.When the domains D 1 have identical general shapes but different dimensions, it is essential that each group G 1 of representation data, corresponding to each domain D 1, is accompanied by position data defining at least its dimensions.
Par exemple, dans le cas de domaines Di de forme générale rectangulaire il faut fournir pour chaque domaine Di les positions au sein de l'image de deux de ses coins qui sont opposés selon une diagonale.For example, in the case of Di domains of general rectangular shape must be provided for each Di area positions within the image of two of its corners which are opposite in a diagonal.
On notera qu'en raison du type de traitement apporté aux données d'entrée, lequel aboutit à la détermination de coefficients représentant des fonctions, le nombre de données de représentation est très limité par rapport au nombre de données d'entrée. Par conséquent, le traitement principal de l'invention induit quasi-systématiquement une compression de données.It will be appreciated that because of the type of input data processing that results in the determination of coefficients representing functions, the number of representation data is very small relative to the number of input data. Therefore, the main processing of the invention almost systematically induces data compression.
Comme illustré sur la figure 1, le module de traitement MT peut comporter un sous-module de génération de fichiers SMG dédié à la constitution des fichiers de sortie.As illustrated in FIG. 1, the processing module MT may include an SMG file generation sub-module dedicated to the constitution of the output files.
£___. _|,_|___ _j_ traitement ~ des~ données — de — représentation - (complémentaires à la détermination de données de représentation), le sous- module de génération de fichiers SMG est par exemple couplé aux sorties des sous-module de construction SMC et sous-module de découpage SMD.£ ___ . _ |, _ | ___ _j_ treatment of ~ ~ data - of - representation - (complementary determining data representation), the sub-SMG file generation module is for example coupled to the outputs of the construction sub-module SMC and SMD cutting sub-module.
Lorsque l'on prévoit un ou plusieurs traitements complémentaires (à la détermination de données de représentation), on peut intercaler un sous- module de transformation SMT entre le sous-module de génération de fichiers SMG et les sous-module de construction SMC et sous-module de découpage SMD.When providing one or more complementary processing (to the determination of representation data), it is possible to insert an SMT transformation sub-module between the SMG file generation sub-module and the SMC construction sub-modules and - SMD cutting module.
Chaque image étant représentée par des fonctions de représentation FRi, définies par des coefficients rapportés à une base de fonctions de base, il est donc particulièrement facile d'appliquer à l'une au moins d'entre elles un (ou plusieurs) traitement(s) complémentaire(s). Comme évoqué précédemment, ces traitements complémentaires peuvent par exemple consister à modifier la représentation d'une partie au moins d'une image (ou séquence d'images) et/ou à déterminer des informations relatives à une partie au moins d'une image (ou séquence d'images). Ainsi, l'invention permet de transformer spatialement et/ou temporellement tout ou partie d'une image ou d'une séquence d'images, par exemple pour effectuer une rotation ou un gros plan (« ou zoom »). On calcule aisément les transformations géométriques, comme par exemple les isométries 5 de la géométrie orthogonale, ainsi que les transformations temporelles pour les séquences d'images en effectuant les changements de variables correspondants sur les fonctions de base utilisées pour construire les fonctions de représentation FRi.Since each image is represented by representation functions FRi, defined by coefficients relative to a base function base, it is therefore particularly easy to apply to at least one of them one (or more) processing (s). ) complementary. As mentioned above, these complementary treatments may for example consist of modifying the representation of at least part of an image (or sequence of images) and / or of determining information relating to at least part of an image ( or sequence of images). Thus, the invention makes it possible to transform spatially and / or temporally all or part of an image or a sequence of images, for example to perform a rotation or a close-up ("or zoom"). Geometric transformations, such as orthogonal geometry isometries, and time transformations for image sequences are easily calculated by performing the corresponding variable changes on the basic functions used to construct the representation functions FRi.
Un zoom numérique peut par exemple être obtenu sans diminution de îo la résolution grâce aux valeurs numériques des fonctions de représentation FRi prises en davantage de points.For example, a digital zoom can be obtained without decreasing the resolution by the numerical values of the FRi representation functions taken in more points.
L'invention permet également d'insérer des informations cachées (mais non perceptibles visuellement) dans une image ou une séquence d'images par une technique dite de « tatouage ». Il est ici rappelé que leThe invention also makes it possible to insert hidden (but not visually perceptible) information in an image or a sequence of images by a so-called "tattoo" technique. It is recalled here that the
15 tatouage consiste à cacher une information en certains points (ou pixels) d'une image. Tout type d'information peut être inséré, y compris des informationsTattooing is to hide information at certain points (or pixels) of an image. Any type of information can be inserted, including information
— _ — Feprésentatives-du-langage-des™signes~(pour-Jes_-malentendantsX___ou._des informations sonores.- Representatives of the sign language (for the hearing impaired) or sound information.
Cette insertion d'informations cachées peut par exemple se faire enThis insertion of hidden information can for example be done in
20 imposant une tangente de pente égale à ±1 aux fonctions de représentation FRi représentant les points concernés, de manière à mettre à la valeur 0 ou 1 le bit correspondant. Cette imposition de valeurs de tangente constitue une contrainte supplémentaire lors de la détermination des coefficients qui représentent les fonctions de représentation FRi.20 imposing a tangent of slope equal to ± 1 to the representation functions FRi representing the points concerned, so as to set to 0 or 1 the corresponding bit. This imposition of tangent values constitutes an additional constraint when determining the coefficients that represent the representation functions FRi.
25 En transformant ainsi les fonctions de représentation FRi, on peut former une image contenant des informations cachées. Pour récupérer les informations cachées, il faut effectuer des tests sur les fonctions de représentation FRi reconstruites pour déterminer les points représentés par des bits à 0 et 1 où les tangentes sont égales à ±1.By thus transforming the representation functions FRi, an image containing hidden information can be formed. To recover the hidden information, it is necessary to perform tests on the reconstructed FRi representation functions to determine the points represented by bits at 0 and 1 where the tangents are equal to ± 1.
30 D'autres types de traitement complémentaires peuvent être envisagés, comme par exemple la détection de contour, ou la détection de mouvement, ou encore le ralentissement de la vitesse de défilement des images d'une vidéo (effet de ralenti). La détection de contour s'effectue au moyen d'un opérateur mathématique choisi qui est directement appliqué à une partie au moins des données d'entrée, mais qui pourrait également être appliqué à une ou plusieurs fonctions de représentations FRi. L'opérateur mathématique peut par exemple être une simple dérivée par rapport à l'une des directions (d/dX) ou un Laplacien (d2FRi/dX2 + d2FRi/dY2, cas n = 2) ou encore une divergence (dFRi/dX + dFRi/dY, cas n = 2). Lorsque les domaines Di sont déterminés au moyen des dérivées, on peut par exemple utiliser la matrice des dérivées pour effectuer la détection de contour. On peut en complément effectuer un seuillage. L'opérateur Laplacien est celui qui fournit les meilleurs résultats.Other types of complementary processing may be envisaged, such as contour detection or motion detection, or the slowing down of the frame rate of images of a video (slow motion effect). The contour detection is performed by means of a chosen mathematical operator that is directly applied to at least a portion of the input data, but which could also be applied to one or more FRi representation functions. The mathematical operator can for example be a simple derivative with respect to one of the directions (d / dX) or a Laplacian (d 2 FRi / dX 2 + d 2 FRi / dY 2 , case n = 2) or else a divergence (dFRi / dX + dFRi / dY, case n = 2). When the domains Di are determined by means of the derivatives, it is possible, for example, to use the matrix of the derivatives to perform the contour detection. In addition, we can perform a thresholding. The Laplacian operator is the one who provides the best results.
La détection de mouvement peut par exemple être obtenue avec une technique similaire à celle mise en œuvre pour la détection de contour, mais appliquée à la direction temporelle. En variante, elle peut également se faire en suivant la trajectoire d'un pixel, représenté par une portion d'une fonction de représentation, d'une image à l'autre. Par exemple dans le cas d'images polychromatiques— la-déteGtion-de-mouvement-peut-s-opérer-au-moyen-dlau- moins une détection de changement de couleur sur un pixel choisi.Motion detection can for example be obtained with a technique similar to that implemented for contour detection, but applied to the temporal direction. Alternatively, it can also be done following the path of a pixel, represented by a portion of a representation function, from one image to another. For example, in the case of polychromatic images, the motion detection may operate on the basis of at least one color change detection on a chosen pixel.
Un ralenti sans diminution du nombre d'images par seconde peut être également obtenu.An idle without decreasing the number of frames per second can also be obtained.
Lorsque les images sont de type polychromatique, le sous-module de génération de fichiers SMG peut être par exemple chargé de concaténer les trois jeux de données de sortie qui correspondent aux trois composantes chromatiques pour constituer les fichiers de sortie. Lorsque les trois jeux de données comportent des données communes, comme par exemple des données de position, on peut supprimer certaines d'entre elles de manière à éviter les redondances. Bien entendu, le nombre de jeux de sortie associés à une image polychromatique est fonction du mode de codage des couleurs.When the images are of the polychromatic type, the SMG file generation sub-module may for example be responsible for concatenating the three sets of output data that correspond to the three color components to form the output files. When the three data sets contain common data, for example position data, some of them can be deleted in order to avoid redundancies. Of course, the number of output sets associated with a polychromatic image is a function of the color coding mode.
L'enchaînement des principales étapes du procédé de traitement décrit ci-avant est donné dans l'exemple d'algorithme simplifié illustré sur la figure 2, et résumé ci-après.The sequence of the main steps of the treatment method described above is given in the simplified algorithm example illustrated in FIG. 2, and summarized below.
Dans une étape 10, le module de traitement MT reçoit le fichier source à traiter. Puis, dans une étape 20 il détermine les domaines Di qui découpentIn a step 10, the processing module MT receives the source file to be processed. Then, in a step 20 it determines the domains Di which cut
(ou recouvrent) intégralement l'image (ou la séquence d'images) en domaines(or recover) the entire image (or sequence of images) into domains
Di, ainsi que les données d'entrée du fichier source qui sont contenues dans ces domaines Di1 par exemple au moyen de son sous-module de découpage SMD.Di, as well as the input data of the source file which are contained in these areas Di 1 for example by means of its submodule SMD.
Puis, dans une étape 30 le module de traitement MT construit chaque fonction de représentation FRi qui approche les données d'entrée contenues dans le domaine Di correspondant, et transforme en données de représentation certains au moins des coefficients qui définissent, dans la base utilisée, l'une au moins des fonctions de représentation. Il utilise pour ce faire son sous-module de construction SMC, par exemple.Then, in a step 30, the processing module MT constructs each representation function FRi that approaches the input data contained in the corresponding domain Di, and transforms into representation data at least some of the coefficients that define, in the base used, at least one of the representation functions. For this purpose, he uses his SMC construction sub-module, for example.
A ce stade, on peut prévoir une étape complémentaire 40 dans laquelle le module de traitement MT applique au moins un traitement complémentaire aux données de représentation de l'une au moins des fonctions de représentation de manière à délivrer des données de représentation transformées (au moins pour certaines d'entre elles). Il utilise pour-ce-faire son-sous-module-de-transformation-SMT,-par-exempleAt this stage, a complementary step 40 may be provided in which the processing module MT applies at least one complementary processing to the representation data of at least one of the representation functions so as to deliver transformed representation data (at least for some of them). He uses his-sub-module-of-transformation-SMT, -for example
Puis, dans une étape 50 le module de traitement MT constitue le fichier de sortie à partir de données de représentation (éventuellement transformées) et des éventuelles données de position associées, par exemple au moyen de son sous-module de génération de fichiers SMG.Then, in a step 50, the processing module MT constitutes the output file from representation data (possibly transformed) and any associated position data, for example by means of its SMG file generating sub-module.
Une étape 60 complémentaire peut être ajoutée après l'étape 50 afin de soumettre les données de sortie du fichier de sortie à une compression auxiliaire. Plusieurs techniques de compression auxiliaire, connues de l'homme de l'art, peuvent être utilisées, comme par exemple la compression de typeA complementary step 60 may be added after step 50 to subject the output data of the output file to auxiliary compression. Several auxiliary compression techniques, known to those skilled in the art, can be used, for example compression type
« zip » ou la quantification vectorielle appliquée aux vecteurs qui représentent les coefficients des fonctions de représentation FRi. Dans ce cas, on prévoit un module de compression auxiliaire MCA en sortie du module de traitement MT."Zip" or vector quantization applied to the vectors that represent the coefficients of the representation functions FRi. In this case, an auxiliary compression module MCA is provided at the output of the processing module MT.
Comme illustré sur la figure 1 , ce module de compression auxiliaire MCA peut faire partie du codeur CR. Mais, il pourrait également faire partie du dispositif de traitement DT.As illustrated in FIG. 1, this auxiliary compression module MCA can be part of the CR encoder. But, it could also be part of the DT treatment device.
Comme indiqué précédemment, les domaines jointifs Di peuvent être obtenus d'au moins deux façons différentes. Une première façon, particulièrement simple à mettre en œuvre et économe en temps de calcul, consiste à imposer une même forme et des dimensions identiques à tous les domaines Di couvrant une image (ou une séquence d'images). Par exemple, on peut choisir des domaines Di présentant des côtés s'étendant sur 3 ou 4 pixels.As indicated above, the joined domains Di can be obtained in at least two different ways. A first way, particularly simple to implement and economical in computing time, is to impose the same shape and dimensions identical to all areas Di covering an image (or a sequence of images). For example, one can choose domains Di having sides extending on 3 or 4 pixels.
Dans ce cas, le module de traitement MT n'a qu'à découper, dans l'étape 20 précitée, l'image (ou la séquence d'images) en domaines Di identiques.In this case, the processing module MT has only to cut, in the above-mentioned step 20, the image (or the image sequence) in identical D1 domains.
Une seconde façon, particulièrement efficace, consiste à laisser le module de traitement MT déterminer, dans l'étape 20 précitée, les dimensions de chaque domaine Di couvrant une image (ou une séquence d'images). Dans ce cas, il est préférable d'imposer une contrainte sur la forme générale des domaines Di, afin qu'ils présentent tous une même forme générale (par exemple un rectangle ou un parallélépipède rectangle) mais des dimensions différentes.A second, particularly effective way is to let the processing module MT determine, in the aforementioned step 20, the dimensions of each domain Di covering an image (or a sequence of images). In this case, it is preferable to impose a constraint on the general form of the domains Di, so that they all have the same general shape (for example a rectangle or a rectangular parallelepiped) but different dimensions.
Pour pouvoir déterminer les dimensions des domaines Di le module de traitement MT, et par exemple son sous-module de découpage SMD, doit être spécifiquement aménagé.In order to be able to determine the dimensions of the domains D1, the processing module MT, and for example its submodule SMD, must be specifically arranged.
L'invention propose que la détermination des dimensions des domaines Di se déroule en trois étapes principales.The invention proposes that the determination of the dimensions of the domains Di takes place in three main stages.
Dans une première étape le module de traitement MT détermine les dérivées k-ième partielles et approchées dans les n directions Xn (dkS/dXn k) des données d'entrée S, k étant choisi supérieur ou égal à 1.In a first step, the processing module MT determines the partial and approximate k-th derivatives in the n directions X n (d k S / dX n k ) of the input data S, k being chosen greater than or equal to 1.
Par exemple dans le cas bidimensionnel (n = 2), correspondant aux directions spatiales X et Y, le module de traitement MT détermine la dérivée k- ième partielle et approchée dans la direction X1 soit dkS/dXk, et la dérivée k- ième partielle et approchée dans la direction Y, soit d^/dY*.For example, in the two-dimensional case (n = 2), corresponding to the spatial directions X and Y, the processing module MT determines the partial and approximate kth derivative in the direction X 1, ie d k S / dX k , and the derivative k-th partial and approximate in the Y direction, ie d ^ / dY *.
Plus l'ordre de la dérivée est élevé, plus on est sensible au bruit résiduel qui est superposé aux données d'entrée. Cependant, plus l'ordre de la dérivée est élevé, plus le nombre de variation observées est grand, et donc plus le nombre de domaines Di va être important. Or, plus le nombre de domaines Di est important, plus le nombre de coefficients à transformer en données de sortie est élevé (et donc plus le taux de compression est petit). Un compromis doit donc être trouvé lorsque le taux de compression doit être élevé. Par exemple on peut choisir un ordre k égal à 2 ou 3.The higher the order of the derivative, the more sensitive one is to the residual noise that is superimposed on the input data. However, the higher the order of the derivative, the greater the number of variations observed, and therefore the larger the number of domains Di will be important. Now, the more the number of domains Di is important, the more the number of coefficients to transform into output data is high (and therefore the smaller the compression ratio). A Compromise must therefore be found when the compression ratio has to be high. For example we can choose an order k equal to 2 or 3.
Il est important d'insister sur le fait qu'un calcul de dérivée partielle classique, c'est-à-dire approché par des taux de variation, n'est pas adapté au mode de traitement de l'invention, notamment en raison du bruit (structuré et/ou non structuré) qui est superposé aux données représentatives de l'image et qui constituent avec celles-ci les données d'entrée du fichier source. En outre, un calcul exact des dérivées n'est pas possible car les données d'entrée sont discrètes. Préférentiellement, chaque dérivée k-ième partielle et approchée dans l'une des n directions Xn (dkS/dXn k) est déterminée à partir d'un développement de Taylor tronqué sur un nombre choisi Jn de segments SGjn (Jn = 1 à Jn) suivant la direction Xn concernée.It is important to stress that a classical partial derivative calculation, that is to say approached by variation rates, is not adapted to the treatment mode of the invention, in particular because of the noise (structured and / or unstructured) which is superimposed on the representative data of the image and which together with these constitute the input data of the source file. In addition, exact calculation of the derivatives is not possible because the input data is discrete. Preferably, each partial and approximate k-th derivative in one of the n directions X n (d k S / dX n k ) is determined from a truncated Taylor expansion on a selected number J n of segments SGj n ( J n = 1 to J n ) in the direction X n concerned.
L'ensemble des segments SGjn suivant la direction Xn couvre l'étendue des données d'entrée suivant cette direction Xn.The set of segments SGj n in the direction X n covers the extent of the input data in this direction X n .
Tous les segments SGjn d'une direction Xn présentent une même longueur. Il est important de noter que la longueur d'un segment SGjn dans la direction Xn est décorrélée des longueurs des domaines Di dans cette même direction. Cette longueur est en effet fixée initialement et la détermination des domaines se fait après le calcul (approché) des dérivées k-ième partielles.All segments SGj n of a direction X n have the same length. It is important to note that the length of a segment SGj n in the direction X n is decorrelated from the lengths of the domains Di in the same direction. This length is indeed fixed initially and the determination of the domains is done after the computation (approached) of the partial derivatives k-th.
Par ailleurs, la longueur des segments SGjn dans la direction Xn est ajustable en fonction d'un compromis entre le débruitage souhaité et la réactivité par rapport à la dynamique du signal (données d'entrée). Les opérateurs utilisés pour le calcul des dérivées k-ième partielles et approchées sont équivalents à des filtres passe-bas, si bien que plus la taille de la fenêtre glissante (évoquée ci-avant) est grande, plus la fréquence de coupure est petite.On the other hand, the length of the segments SGj n in the direction X n is adjustable according to a compromise between the desired denoising and the reactivity with respect to the dynamics of the signal (input data). The operators used for calculating partial and approximate k-th derivatives are equivalent to low-pass filters, so that the larger the sliding window (mentioned above), the smaller the cutoff frequency.
En outre, certains segments SGjn d'une direction Xn peuvent se recouvrir partiellement afin de n'utiliser que des estimations convergentes des dérivées issues du développement de Taylor tronqué. Dans ce cas, on peut par exemple utiliser une technique de type fenêtres glissantes.In addition, some segments SGj n of a direction X n can overlap partially in order to use only convergent estimates of the derivatives resulting from the truncated Taylor development. In this case, one can for example use a slippery window type technique.
Le formalisme mathématique sur lequel repose le calcul des dérivées partielles et approchées présenté ci-dessus est donné dans l'Annexe. En ce qui concerne la définition des fenêtres (les segments ci-dessus) et le calcul des dérivées partielles et approchées qui s'ensuit, des explications plus détaillées pourront être tirées de la demande de brevet PCT/FR 2005/002165 déposée le 30 août 2005, et intitulée « Procédé de compression de signal ». A toutes fins utiles, et notamment pour compléter au besoin les explications ci-dessus, le contenu descriptif de cette demande antérieure est à considérer comme incorporé par référence à la présente description, en particulier pour la fin de sa description (pages 20 à 35) et les dessins correspondants. Au besoin, ces éléments seront physiquement incorporés à la présente demande de brevet.The mathematical formalism on which the calculation of the partial and approximate derivatives presented above is based is given in the Appendix. With regard to the definition of windows (the segments above) and the calculation of partial and approximate derivatives which follows, more detailed explanations may be drawn from patent application PCT / FR 2005/002165 filed on August 30 2005, and entitled "Signal compression method". For all purposes, and in particular to supplement the above explanations if necessary, the descriptive content of this earlier application is to be considered incorporated by reference to the present description, in particular for the end of its description (pages 20 to 35). and the corresponding drawings. If necessary, these elements will be physically incorporated in the present patent application.
Une fois que le module de traitement MT a déterminé les dérivées k- ième partielles et approchées dans les n directions Xn (dkS/dXn k) du signal source (données d'entrée) S à compresser, il passe à la deuxième étape principale. Dans cette deuxième étape, le module de traitement MT commence par comparer les variations de certaines au moins des dérivées k-ième partielles dkS/dXn k à un seuil choisi th(n), comme illustré schématiquement sur la figure 3. Cette figure montre que, partant d'un point donné, on surveille l'amplitude de variation (maximum - minimum) de la dérivée concernée, jusqu'au point où elle dépasse (ou atteint) le seuil.Once the processing module MT has determined the partial and approximate kth derivatives in the n directions X n (d k S / dX n k ) of the source signal (input data) S to be compressed, it passes to the second main step. In this second step, the processing module MT begins by comparing the variations of at least some of the k-th partial derivatives d k S / dX n k with a chosen threshold th (n), as illustrated schematically in FIG. figure shows that, starting from a given point, one monitors the amplitude of variation (maximum - minimum) of the derivative concerned, until the point where it exceeds (or reaches) the threshold.
Les seuils th(n) associés à chacune des directions Xn peuvent être égaux ou différents.The thresholds th (n) associated with each of the directions X n can be equal or different.
Plus les valeurs des seuils th(n) sont élevées, plus le nombre de coefficients représentant les fonctions de représentation est petit (et donc plus le taux de compression est élevé). En effet, lorsque les seuils sont élevés, le signal de sortie (données de sortie) est équivalent à la définition des domaines Di (données de position) et aux coefficients associés. Par conséquent des valeurs de seuil plus élevées tendent à induire un nombre de domaines Di moins important. Par ailleurs, plus les valeurs des seuils th(n) sont petites, plus les dimensions des domaines Di sont petites, et donc meilleure est l'approximation du signal source (données d'entrée) S par la fonction principale FP constituée de l'ensemble des fonctions de représentation FRi. II résulte de ces constations, notamment lorsque le traitement porte essentiellement sur la compression des données d'entrée, que les valeurs respectives des seuils th(n) doivent être choisies en fonction d'un compromis entre le taux de compression et le bruit de codage. La comparaison effectuée par le module de traitement MT est destinée à déterminer chaque donnée d'entrée (ou point), dite donnée frontière, au niveau de laquelle on observe un franchissement de seuil de variation th(n) (par valeur supérieure) de l'une au moins de ses n dérivées k-ième partielles dkS/dXn k. Dans l'exemple illustré sur la figure 3, pour une ligne dans une direction, le seuil th(n) est un seuil représentatif d'une amplitude de variation de dérivée k-ième partielle dkS/dXπ k. La comparaison effectuée par le module de traitement MT est destinée à déterminer pour chacune des n directions Xn des groupes ou blocs de données d'entrée (points) voisines pour lesquelles l'écart entre les deux valeurs maximale et minimale de leurs dérivées k-ième partielles dkS/dXn k est inférieur ou égal au seuil de variation th(n). Chaque donnée d'entrée (point) au niveau de laquelle est observé un franchissement du seuil de variation th(n) (par valeur supérieure) est une donnée frontière brute d'un bloc qui servira à construire l'interface entre deux domaines jointifs voisins, pour la direction Xn considérée. Chaque donnée frontière (point) où l'on s'est arrêté est la dernière d'un domaine dans la direction Xn considérée. Comme déjà indiqué, cela est effectué pour les variations de certaines au moins des dérivées k-ième partielles dkS/dXn k à un seuil choisi th(n). On peut traiter toutes les lignes dans chaque direction, ou une partie de celles-ci, suivant un compromis entre le taux de compression et la qualité d'image après compression. Dans l'exemple, les domaines sont contraints à être des rectangles. Le point limite du domaine peut donc être le premier rencontré, sur l'ensemble des lignes, pour lequel le seuil est franchi. Une méthode plus évoluée peut être utilisée, par exemple statistique (comme « 10% des lignes ont franchi le seuil », cet exemple étant purement indicatif). On y reviendra ci- après.The higher the values of th (n) thresholds, the smaller the number of coefficients representing the representation functions (and hence the higher the compression ratio). Indeed, when the thresholds are high, the output signal (output data) is equivalent to the definition of the domains Di (position data) and the associated coefficients. As a result, higher threshold values tend to induce a smaller number of Di domains. Moreover, the smaller the th (n) threshold values, the smaller the dimensions of the Di domains, and therefore the better the approximation of the source signal (input data) S by the main function FP consisting of the set of FRi representation functions. As a result of these observations, especially when the processing essentially concerns the compression of the input data, the respective values of th (n) thresholds must be chosen as a function of a compromise between the compression ratio and the coding noise. . The comparison made by the processing module MT is intended to determine each input data (or point), called the border data, at which a threshold crossing of variation th (n) (by higher value) of the threshold is observed. at least one of its n partial k-derivatives d k S / dX n k . In the example illustrated in FIG. 3, for a line in a direction, the threshold th (n) is a threshold representative of a partial k-th derivative variation amplitude d k S / dX π k . The comparison carried out by the processing module MT is intended to determine for each of the n directions X n groups or blocks of input data (points) for which the difference between the two maximum and minimum values of their derivatives k- Part i d k S / dX n k is less than or equal to the threshold of variation th (n). Each input data (point) at which a crossing of the th (n) threshold is observed (by higher value) is a raw boundary datum of a block that will be used to build the interface between two neighboring contiguous domains. , for the direction X n considered. Each border datum (point) where we stopped is the last of a domain in the direction X n considered. As already indicated, this is done for the variations of at least some of the partial k-th derivatives d k S / dX n k at a chosen threshold th (n). All lines in each direction, or a portion thereof, can be processed according to a compromise between the compression ratio and the image quality after compression. In the example, domains are constrained to be rectangles. The limit point of the domain can therefore be the first encountered, on all lines, for which the threshold is crossed. A more advanced method can be used, for example statistical (as "10% of the lines have crossed the threshold", this example being purely indicative). We will come back to it later.
Une fois que l'on a obtenu toutes les données frontières suivant une première direction, par exemple Xn = X, on effectue l'opération précitée (dérivation partielle et comparaison de seuil) pour une autre des directions, par exemple Xn = Y, en prenant comme donnée d'entrée de départ chaque donnée frontière déterminée pour la direction précédente (ici X). Chaque première donnée d'entrée (point) au niveau de laquelle est observé un franchissement du seuil de variation th(n) (par valeur supérieure) est alors une donnée frontière pour la direction Y. On s'arrête alors de dériver suivant cette direction Y. La donnée frontière (point) où l'on s'est arrêté est alors la dernière du domaine dans la direction Y. Les première et dernière données frontières dans chaque direction déterminent la forme et la position de chaque domaine. Une fois que le module de traitement MT a déterminé toutes les données frontières, il passe à la troisième étape principale.Once all the frontier data has been obtained in a first direction, for example X n = X, the above operation is performed. (Partial derivation and threshold comparison) for another of the directions, for example X n = Y, taking as starting input data each boundary datum determined for the previous direction (here X). Each first input data (point) at which is observed a crossing of the th (n) threshold of variation (by higher value) is then a border data for the Y direction. One stops then to derive in this direction. Y. The border datum (point) where we stopped is then the last of the domain in the Y direction. The first and last frontier data in each direction determine the shape and position of each domain. Once the processing module MT has determined all the boundary data, it proceeds to the third main step.
Dans cette troisième étape, le module de traitement MT constitue des domaines Di à partir de paires de données frontières voisines dans les n directions Xn. Dans l'exemple illustré sur la figure 3, on peut observer que sur la distance comprise entre 0 et Xmax (qui définit l'étendue de l'image dans Ja direction Xn) six longueurs lxι (Ixi à Ixβ) ont été déterminées. Ces six longueurs définissent par exemple les dimensions respectives des six premiers domaines rectangulaires D1 à D6 illustrés schématiquement sur la figure 4 et contribuant au recouvrement (ou découpage) de l'image I.In this third step, the processing module MT constitutes domains Di from neighboring pairs of data in the n directions X n . In the example illustrated in FIG. 3, it can be observed that over the distance between 0 and Xmax (which defines the extent of the image in the direction X n ) six lxι lengths (Ixi to Ixβ) have been determined. These six lengths define, for example, the respective dimensions of the first six rectangular domains D1 to D6 schematically illustrated in FIG. 4 and contributing to the covering (or cutting) of the image I.
Comme indiqué précédemment, les positions des données d'entrée qui définissent chaque domaine Di ne doivent pas toutes être nécessairement stockées. Seules sont stockées celles à partir desquelles peuvent être déduites les positions des autres données d'entrée. Par exemple, dans le cas de domaines rectangulaires il suffit de stocker pour chaque domaine Di les positions au sein de l'image des données d'entrée qui sont situées au niveau de deux de ses coins opposés selon une diagonale.As indicated previously, the positions of the input data defining each domain Di need not all necessarily be stored. Only those from which the positions of the other input data can be deduced can be stored. For example, in the case of rectangular domains it is sufficient to store for each domain Di the positions within the image of the input data which are located at two of its opposite corners along a diagonal.
Comme on l'a vu dans l'exemple de la figure 3, la comparaison des variations des dérivées partielles au(x) seuil(s) fournit des données frontières dans chaque dimension de l'image. Plus généralement, ces données frontières définissent des blocs ou contours multidimensionnels qui sont a priori de forme quelconque. En prenant le cas bidimensionnel, ces contours sont des lignes. Dans l'exemple de la contrainte par rectangles, il s'agit d'ajuster des rectangles sans trou sur ces contours. La figure 4 montre une manière de le faire, à titre d'exemple simple, nullement limitatif. Ici, la contrainte par rectangles est interprétée comme « le bord de droite du domaine D7 est fixé par le bord de gauche du domaine D2 » ; en variante, la contrainte par rectangles pourrait être interprétée comme « le bord du bas du domaine D2 est au même niveau que D1 » et le bord droit de D7 est déterminé d'une autre manière faisant intervenir les contours et/ou la contrainte par rectangles. De manière générale, ceci relève de l'algorithmique de l'ajustement de contours sur des polygones (ou autres formes définissables simplement). Comme déjà relevé, les rectangles sont définissables par deux points ; il en est d'ailleurs de même pour des triangles, dont la forme est imposée à une homothétie près. Ces choix algorithmiques pour appliquer la contrainte par rectangles relèvent eux aussi d'un compromis entre le taux de compression et la qualité d'image après compression. Par ailleurs, au décodage, les rectangles (ou autres formes) sont parcourus dans un ordre déterminé. Ils peuvent par conséquent se recouvrir, la portion d'image reconstruite sur un rectangle donné étant ensuite « écrasée » partiellement par la portion d'image reconstruite sur un rectangle suivant. Ainsi, « rectangles jointifs » signifie ici qu'il n'existe pas de trous significatifs (par rapport au contenu de l'image), mais n'exclut pas le recouvrement. Les fichiers de sortie qui sont délivrés par le dispositif de traitement DTAs seen in the example of FIG. 3, the comparison of the variations of the partial derivatives with the threshold (s) provides boundary data in each dimension of the image. More generally, these boundary data define multidimensional blocks or contours that are a priori of any shape. Taking the two-dimensional case, these outlines are lines. In the example of the constraint by rectangles, it is about adjusting rectangles without holes on these contours. Figure 4 shows a way to do it, as a simple example, in no way limiting. Here, the constraint by rectangles is interpreted as "the right edge of the domain D7 is fixed by the left edge of the domain D2"; alternatively, the constraint by rectangles could be interpreted as "the bottom edge of the domain D2 is at the same level as D1" and the right edge of D7 is determined in another way involving the outlines and / or the constraint by rectangles . In general, this is the algorithmic of contour adjustment on polygons (or other forms simply definable). As already noted, the rectangles are definable by two points; it is also the same for triangles, whose form is imposed to a near homothety. These algorithmic choices for applying the constraint by rectangles are also a compromise between the compression ratio and the image quality after compression. Moreover, at decoding, the rectangles (or other shapes) are traversed in a determined order. They can therefore overlap, the image portion reconstructed on a given rectangle is then partially "overwritten" by the image portion reconstructed on a next rectangle. Thus, "joined rectangles" here means that there are no significant holes (relative to the content of the image), but does not exclude the recovery. The output files that are delivered by the processing device DT
(ou par le codeur CR) peuvent être de faible poids tout en permettant une bonne qualité de restitution, ce qui facilite leur stockage et leur transmission par voie d'ondes ou par voie filaire. En outre, comme on le verra ci-après, ces fichiers peuvent être décodés très rapidement et sans nécessiter la mise à disposition d'importantes ressources de calcul.(or by the CR encoder) can be of low weight while allowing a good quality of restitution, which facilitates their storage and transmission by wave or by wire. In addition, as will be seen below, these files can be decoded very quickly and without requiring the provision of significant computing resources.
Le dispositif de traitement DT, et notamment son module de traitement MT, et/ou le module de post-compression MPC du codeur CR, peuvent être réalisés sous la forme de circuits électroniques (ou « hardware »), de modules logiciels (ou informatiques ou « software »), ou d'une combinaison de circuits et de logiciels.The processing device DT, and in particular its processing module MT, and / or the post-compression module MPC of the encoder CR, can be realized in the form of electronic circuits (or "hardware"), software modules (or computer or "software"), or a combination of circuits and software.
On se réfère maintenant aux figures 5 et 6 pour décrire un dispositif de reconstitution DD selon l'invention et le procédé de reconstitution DR qu'il met en œuvre. Comme cela est illustré sur la figure 5, le dispositif de reconstitution DD1 selon l'invention, comprend un module de reconstitution MR qui est chargé de décoder des données d'entrée résultant d'un codage (ou traitement) au moyen du procédé de traitement décrit ci-avant et représentatives d'une image I ou d'une séquence d'images constituant par exemple tout ou partie d'une vidéo.Reference is now made to FIGS. 5 and 6 to describe a reconstitution device DD according to the invention and the method of reconstitution DR that it implements. As illustrated in FIG. 5, the reconstitution device DD 1 according to the invention comprises a reconstitution module MR which is responsible for decoding input data resulting from a coding (or processing) by means of the method of processing described above and representative of an image I or a sequence of images constituting for example all or part of a video.
Il est important de noter que le module de reconstitution MR doit comporter les fonctions de base de la base qui est utilisée lors du traitement ainsi que la technique utilisée pour construire les fonctions de représentation FRi à partir de ces fonctions de base.It is important to note that the MR reconstruction module must include the basic functions of the database that is used during the processing as well as the technique used to build the FRi representation functions from these basic functions.
Les données d'entrée, qui alimentent le module de reconstitution MR, sont agencées sous la forme d'un fichier binaire (ou numérique), également appelé fichier source à décoder.The input data, which feeds the reconstitution module MR, are arranged in the form of a binary (or digital) file, also called source file to be decoded.
Un tel fichier peut provenir de tout type de source, et notamment d'un codeur CR, éventuellement implanté dans un équipement photographique numérique, un télécopieur, un photocopieur, un téléphone, un graveur de disque compact (CD) ou de vidéodisque (DVD ou VCD), une console de jeu, ou un téléviseur, ou bien d'un support (ou médium) de stockage informatique, comme par exemple un disque compact ou un vidéodisque. Le fichier source à décoder est par exemple fourni au dispositif de reconstitution DD par un décodeur DR dans lequel il est implanté et qui est couplé directement ou indirectement à la source ou qui fait partie de celle-ci. C'est notamment le cas de l'exemple de réalisation, non limitatif, illustré sur la figure 5. Selon l'invention, lorsque le module de reconstitution MR reçoit un fichier source contenant des données d'entrée à décoder, il commence par déterminer chaque groupe de données de représentation Gi associé aux éventuelles données de position définissant chaque domaine Di.Such a file can come from any type of source, and in particular from a CR encoder, possibly implanted in a digital photographic equipment, a fax machine, a photocopier, a telephone, a compact disc (CD) or videodisc recorder (DVD or VCD), a game console, or a television, or a medium (or medium) for computer storage, such as a compact disc or a videodisk. The source file to be decoded is for example supplied to the reconstitution device DD by a DR decoder in which it is implanted and which is coupled directly or indirectly to the source or which is part of it. This is particularly the case of the exemplary embodiment, not limiting, illustrated in FIG. 5. According to the invention, when the reconstitution module MR receives a source file containing input data to be decoded, it begins by determining each group of representation data Gi associated with any position data defining each domain Di.
Comme illustré sur la figure 5, le module de reconstitution MR peut comporter un sous-module de dégroupage SMDG dédié à cette tâche. Ce sous-module de dégroupage SMDG est par exemple couplé à l'entrée du module de reconstitution MR et il délivre sur sa sortie les différents groupes de données de représentation Gi et les définitions des domaines Di correspondants.As illustrated in FIG. 5, the reconstitution module MR may comprise a SMDG unbundling sub-module dedicated to this task. This SMDG unbundling sub-module is for example coupled to the input of the reconstitution module MR and it delivers on its output the different groups of representation data Gi and the domain definitions Di correspondents.
Puis, le module de reconstitution MR reconstruit (ou reconstitue) chaque fonction de représentation FRi qui est associée à chaque domaine Di à partir des groupes de données de représentation Gi. Cette opération est particulièrement simple et rapide grâce à l'invention.Then, the reconstitution module MR reconstructs (or reconstructs) each representation function FRi which is associated with each domain Di from the representation data groups Gi. This operation is particularly simple and fast thanks to the invention.
Il suffit en effet de transformer les données de représentation de chaque groupe Gi en coefficients, puis de multiplier chaque coefficient par la fonction de base correspondante, et enfin de combiner les résultats de ces multiplications conformément à la technique de construction utilisée lors du traitement (ou codage). Par exemple, la technique de construction est une combinaison linéaire. La fonction principale FP (initiale) est ainsi reconstituée en mettant bout à bout toutes les fonctions de représentation FRi reconstruites.It suffices to transform the representation data of each group Gi into coefficients, then to multiply each coefficient by the corresponding basic function, and finally to combine the results of these multiplications according to the construction technique used during the processing (or coding). For example, the construction technique is a linear combination. The main function FP (initial) is thus reconstituted by putting end to end all the reconstructed FRi representation functions.
Le module de reconstitution MR transforme ensuite la fonction principale FP (ou les fonctions de représentation FRi) en données de sortie dont les positions respectives sont celles des pixels de l'image (ou de la séquence d'images) décodée ou reconstituée.The reconstitution module MR then transforms the main function FP (or representation functions FRi) into output data whose respective positions are those of the pixels of the decoded or reconstructed image (or picture sequence).
Comme illustré sur la figure 5, le module de reconstitution MR peut comporter un sous-module de reconstruction SMR dédié à la reconstruction des fonctions de représentation FRi et à leur transformation en données de sortie. Ce sous-module de reconstruction SMR est par exemple couplé à la sortie du sous-module de dégroupage SMDG et il délivre sur sa sortie les différentes données de sortie issues de la transformation des fonctions de représentation FRi (ou de la fonction principale FP).As illustrated in FIG. 5, the reconstitution module MR may comprise a reconstruction sub-module SMR dedicated to the reconstruction of the representation functions FRi and to their transformation into output data. This SMR reconstruction sub-module is for example coupled to the output of the SMDG unbundling sub-module and it delivers on its output the different output data resulting from the transformation of the representation functions FRi (or of the main function FP).
Une fois que le module de reconstitution MR a déterminé toutes les données de sortie (par exemple au moyen du sous-module de reconstructionOnce the reconstitution module MR has determined all the output data (for example by means of the reconstruction sub-module
SMR), il peut former un fichier de sortie. Pour ce faire, il peut par exemple constituer une suite (ou un tableau) de données de sortie représentatives des pixels de l'image (ou de la séquence d'images) décodée ou reconstituée.SMR), it can form an output file. To do this, it may for example constitute a sequence (or a table) of output data representative of the pixels of the decoded or reconstructed image (or picture sequence).
Comme illustré sur la figure 5, le module de reconstitution MR peut comporter un sous-module de génération de fichiers SMGF dédié à la constitution des fichiers de sortie. Ce sous-module de génération de fichiersAs illustrated in FIG. 5, the reconstitution module MR can comprise an SMGF file generation sub-module dedicated to the constitution of the output files. This sub-module for generating files
SMGF est par exemple couplé à la sortie du sous-module de reconstructionSMGF is for example coupled to the output of the reconstruction sub-module
SMR et comporte une sortie constituant la sortie du dispositif de reconstitution DD.SMR and has an output constituting the output of the reconstitution device DD.
Lorsque les images sont de type polychromatique, le sous-module de génération de fichiers SMGF peut être par exemple chargé de concaténer les trois jeux de données de sortie, qui correspondent aux trois composantes chromatiques, pour constituer les fichiers de sortie. Lorsque les trois jeux de données comportent des données communes, comme par exemple des données de position, on peut supprimer certaines d'entre elles de manière à éviter les redondances. Bien entendu, le nombre de jeux de sortie associés à une image polychromatique est fonction du mode de codage des couleurs. II est important de noter que le module de reconstitution MR peut éventuellement comporter un sous-module de transformation SMT couplé à son sous-module de reconstruction SMR. Ce sous-module de transformation SMT est sensiblement identique au sous-module de transformation SMT du module de traitement MT1 décrit précédemment. Il est par exemple chargé de traiter les coefficients de l'une au moins des fonctions de représentation de manière à leur appliquer une transformation spatiale et/ou temporelle.When the images are of the polychromatic type, the file generation sub-module SMGF may for example be responsible for concatenating the three sets of output data, which correspond to the three color components, to form the output files. When the three data sets contain common data, for example position data, some of them can be deleted in order to avoid redundancies. Of course, the number of output sets associated with a polychromatic image is a function of the color coding mode. It is important to note that the reconstitution module MR may optionally comprise an SMT transformation sub-module coupled to its reconstruction sub-module SMR. This SMT transformation sub-module is substantially identical to the SMT transformation sub-module of the processing module MT 1 described above. It is for example responsible for processing the coefficients of at least one of the representation functions so as to apply to them a spatial and / or temporal transformation.
Ce sous-module de transformation SMT' peut également reconstruire des fonctions de représentation FRi qui représentent une palette de couleurs plus étendue. Par exemple, on peut doubler ou tripler le nombre de couleurs. Pour ce faire, il faut, comme dans le cas d'un zoom, reconstruire chaque fonction de représentation FRi avec un plus grand nombre de points dans l'espace des couleurs.This transformation sub-module SMT 'can also reconstruct representation functions FRi which represent a wider range of colors. For example, you can double or triple the number of colors. To do this, it is necessary, as in the case of a zoom, to reconstruct each FRi representation function with a greater number of points in the color space.
Le sous-module de transformation SMT peut également reconstruire des fonctions de représentation FRi qui représentent un nombre de pixels plus important, de manière à augmenter la définition de l'image. Par exemple, on peut doubler ou tripler la définition de l'image. On peut ainsi passer d'une définition de type 512x512 à une définition de type 1024x1024. Pour ce faire, il faut, comme dans le cas d'un zoom, reconstruire chaque fonction de représentation FRi avec un plus grand nombre de points. L'enchaînement des principales étapes du procédé de reconstitutionThe SMT transformation sub-module can also reconstruct representation functions FRi which represent a larger number of pixels, so as to increase the definition of the image. For example, you can double or triple the definition of the image. We can thus go from a definition of type 512x512 to a definition of type 1024x1024. To do this, it is necessary, as in the case of a zoom, to reconstruct each FRi representation function with a larger number of points. The sequence of the main steps of the reconstitution process
(ou décodage) décrit ci-avant est donné dans l'exemple d'algorithme simplifié illustré sur la figure 6, et résumé ci-après.(or decoding) described above is given in the example of simplified algorithm illustrated in Figure 6, and summarized below.
Dans une étape 100, le module de reconstitution MR reçoit le fichier source à décoder.In a step 100, the reconstitution module MR receives the file source to decode.
A ce stade, lorsque les données du fichier source ont fait l'objet d'un traitement (ou codage) selon l'invention suivi d'une compression auxiliaire, on prévoit une étape 110 de pré-décompression destinée à appliquer auxdites données une décompression « inverse » de ladite compression auxiliaire.At this stage, when the data of the source file has been subjected to a treatment (or coding) according to the invention followed by an auxiliary compression, a pre-decompression step 110 is provided for applying to said data a decompression "Inverse" of said auxiliary compression.
Dans ce cas, on prévoit un module de pré-décompression MPD en amont de l'entrée du module de décompression MD. Comme illustré sur la figure 5, ce module de pré-décompression MPD peut faire partie du décodeur DR. Mais, il pourrait également faire partie du dispositif de reconstitution DD. Dans une étape 120, le module de reconstitution MR détermine les groupes de données d'entrée (ou de représentation) Gi qui sont associés aux définitions des domaines Di qui découpent (ou recouvrent) intégralement l'image (ou la séquence d'images).In this case, a pre-decompression module MPD is provided upstream of the input of the decompression module MD. As illustrated in FIG. 5, this MPD pre-decompression module can be part of the DR decoder. But, it could also be part of the DD reconstruction device. In a step 120, the reconstitution module MR determines the groups of input (or representation) data Gi which are associated with the definitions of the domains Di which completely cut (or overlap) the image (or the sequence of images). .
Puis, dans une étape 130 le module de reconstitution MR reconstruit chaque fonction de représentation FRi de chaque domaine Di.Then, in a step 130, the reconstitution module MR reconstructs each representation function FRi of each domain Di.
A ce stade, on peut prévoir une éventuelle étape 140 dans laquelle le module de reconstitution MR effectue au moins un traitement sur les fonctions de représentation FRi reconstituées.At this stage, a possible step 140 may be provided in which the reconstitution module MR performs at least one treatment on the reconstituted representation functions FRi.
Puis, dans une étape 150 le module de reconstitution MR transforme les fonctions de représentation reconstituées et éventuellement traitées en données de sortie.Then, in a step 150, the reconstitution module MR transforms the reconstituted and possibly processed representation functions into output data.
Enfin, dans une étape 160 le module de reconstitution MR constitue le fichier de sortie à partir des données de sortie.Finally, in a step 160 the reconstitution module MR constitutes the output file from the output data.
Le dispositif de reconstitution DD, et notamment son module de reconstitution MR, et/ou le module de pré-décompression MPD du décodeurThe reconstitution device DD, and in particular its reconstitution module MR, and / or the pre-decompression module MPD of the decoder
DR, peuvent être réalisés sous la forme de circuits électroniques (ouDR, can be realized in the form of electronic circuits (or
« hardware »), de modules logiciels (ou informatiques ou « software »), ou d'une combinaison de circuits et de logiciels."Hardware"), software modules (or "software"), or a combination of circuits and software.
Il est important de noter que l'invention offre un moyen particulièrement élégant et efficace pour atténuer les bruits structurés et/ou non structurés qui sont superposés aux données représentatives d'une image. Cela résulte du fait que la transformation des données d'entrée en fonctions de représentation utilise, entre autres, des intégrations itérées qui agissent comme un filtre passe-bas. Les bruits concernés ne sont pas nécessairement additifs. Dans le cas du bruit multiplicatif on peut en effet utiliser la décomposition triviale wl = I + (w-1)l, où w est le bruit, ce qui ramène au cas du bruit additif.It is important to note that the invention provides a particularly elegant and effective means for attenuating structured and / or unstructured noises that are superimposed on the representative data of an image. This results from the fact that the transformation of input data into representation functions uses, among other things, iterated integrations which act as a filter lowpass. The noises concerned are not necessarily additive. In the case of multiplicative noise we can indeed use the trivial decomposition wl = I + (w-1) l, where w is the noise, which brings back the case of additive noise.
Dans les modes de réalisation décrits, les données sont considérées comme monochromatiques. S'agissant d'images en noir et blanc (ou considérées en noir et blanc), ces données monochromatiques peuvent être qualifiées de données de luminance. Comme déjà indiqué, s'agissant d'images en couleurs, le format utilisé pour les données peut comporter trois composantes chromatiques selon trois couleurs complémentaires convenablement choisies, comme le classique triplet {rouge, vert, bleu}, dit RVB. Il est possible aussi d'utiliser différentes variantes de format de données vidéo, comme des combinaisons entre une composante de luminance et au moins deux composantes chromatiques (de chrominance) selon deux couleurs complémentaires. La troisième composante peut être recouvrée par différence. Un autre exemple est la norme CCR601 de télévision numérique, en ce qu'elle préconise une approche par fichiers luminance et fichiers chrominance.In the described embodiments, the data are considered monochromatic. For black-and-white (or black-and-white) images, these monochromatic data can be referred to as luminance data. As already indicated, in the case of color images, the format used for the data may comprise three chromatic components according to three complementary colors suitably chosen, such as the classic triplet {red, green, blue}, called RGB. It is also possible to use different video data format variants, such as combinations between a luminance component and at least two color components (chrominance) according to two complementary colors. The third component can be recovered by difference. Another example is the CCR601 digital television standard, in that it advocates a luminance and chrominance file approach.
Chrominance et luminance sont liées dans l'espace colorimétrique concerné. En conséquence, un format contenant des données de chrominance, avec ou sans luminance, peut être considéré comme comprenant des données représentatives de composantes complémentaires d'image(s) en couleurs.Chroma and luminance are linked in the color space concerned. Accordingly, a format containing chrominance data, with or without luminance, can be considered to include data representative of complementary color image components.
L'invention ne se limite pas aux modes de réalisation de dispositif de traitement, de codeur, de dispositif de reconstitution et de décodeur décrits ci- avant, seulement à titre d'exemple, mais elle englobe toutes les variantes que pourra envisager l'homme de l'art dans le cadre des revendications ci-après. 30The invention is not limited to the embodiments of treatment device, encoder, reconstitution device and decoder described above, only by way of example, but it encompasses all variants that may be considered by humans of the art in the context of the claims below. 30
Annexe 1Annex 1
1 Cadre mathématique1 Mathematical Framework
1.1 Images et vidéos1.1 Images and videos
Une vidéo, ou une image animée, est une distribution vectorielle / = (I1, . . . , Im) sur Mm x R, à valeurs dans W. Les coordonnées xι, . . . , xm de Rm (resp. y\, . . . , yp de MP) sont les variables d'espace (resp. les composantes chromatiques), celle t de E est le temps. En général, m = 2 ou 3, p = 1 ou 3. La vidéo est dite monochromatique si p = 1. Si §£ ≡ 0, 1 est une image fixe, ou inanimée. Faisons les hypothèses suivantes, raisonnables, semble-t-il, en pratique :A video, or an animated image, is a vector distribution / = (I 1 , ..., I m ) on M m × R, with values in W. The coordinates xι,. . . , x m of R m (resp. y \ , ..., y p of MP) are the variables of space (respectively the chromatic components), that t of E is the time. In general, m = 2 or 3, p = 1 or 3. The video is called monochromatic if p = 1. If § £ ≡ 0, 1 is a still or inanimate image. Let's make the following assumptions, which seem reasonable, in practice:
- les projections du support de I sur M,m et R sont respectivement compacte et fermée dans M+,the projections of the support of I on M, m and R are respectively compact and closed in M + ,
- en presque tout point de M™ x E, i est localement égale à une fonction analytique des variables X\, . . . , xm, t.- in almost every point of M x x E, i is locally equal to an analytic function of the variables X \,. . . , x m , t.
1.2 Estimation des dérivées 1.2.1 Cas d'une seule variable Soit une fonction du temps x(t), à valeurs réelles, supposée analytique sur l'intervalle tι < t < *2- Pour simplifier, on supposera x(t) analytique autour de t = 0. Introduisons son développement de Taylor tronquée1.2 Estimation of the derivatives 1.2.1 Case of a single variable Let a function of the time x (t), with real values, supposed analytic over the interval tι <t <* 2 - To simplify, one will suppose x (t) analytic around t = 0. Introduce his truncated Taylor development
Figure imgf000032_0001
Figure imgf000032_0001
Approximons x(t) sur l'intervalle (0, e), ε > 0, par le polynôme xw(t) = de degré N. Les règles usuelles du calcul symbolique dans la théorie des
Figure imgf000032_0002
de Schwartz fournissent
Approximate x (t) over the interval (0, e), ε> 0, by the polynomial xw (t) = of degree N. The usual rules of symbolic computation in the theory of
Figure imgf000032_0002
from Schwartz provide
Figure imgf000032_0003
≈ χ(0)δW + x(0)δ(N-V + . . . +
Figure imgf000032_0004
où δ est la mesure de Dirac en 0. Les égalités bien connues tδ = 0, tδ^ = —aδ^01^, a > 1, conduisent au système triangulaire d'équations linéaires pour déterminer les valeurs estimées [α;^ (0)]e des dérivées : t a χ (N+i)^ = t a ([x(p)]W + [χ(0)]eδ(N-^ + • • • + [x^ (Q)]eδ) , a = 0, . . . , N (l)
Figure imgf000032_0003
≈ χ (0) δW + x (0) δ (N -V + ... +
Figure imgf000032_0004
where δ is the measure of Dirac in 0. The well-known equalities tδ = 0, tδ ^ = -aδ ^ 01 ^, a> 1, lead to the triangular system of linear equations to determine the estimated values [α; ^ (0 )] e derivatives: t a χ (N + i) ^ = t a ([ x (p)] W + [χ (0)] e δ (N - ^ + • • • + [x ^ (Q) )] e δ), a = 0, ..., N (l)
On élimine les dérivées de x(t), la mesure de Dirac et ses dérivées en intégrant au moins N fois par rapport au temps les deux membres de (1) :The derivatives of x (t), the Dirac measure and its derivatives are eliminated by integrating at least N times with respect to time the two members of (1):
Figure imgf000032_0005
+ • • • + [χ{N)(o)]eδ) (2) 31
Figure imgf000032_0005
+ • • • + [ χ {N) (o)] e δ) (2) 31
pour v > N, a = 0, . . . , N et où J^ = J0* /o r" * . . . /Q T1. Une estimation très convenable est obtenue sur une courte fenêtre temporelle [0, t].for v> N, a = 0,. . . , N and where J ^ = J 0 * / o r "* ... / Q T1 A very suitable estimate is obtained over a short time window [0, t].
Ajoutons que ces intégrales sont des filtres passe-bas, qui permettent d'atténuer les bruits.Let us add that these integrals are low-pass filters, which make it possible to attenuate the noises.
1.2.2 Généralisation à plusieurs variables1.2.2 Multi-variable generalization
Soit An+i l' algèbre de Weyl des opérateurs différentiels linéairesLet A n + it 'Weyl algebra of the linear differential operators
Figure imgf000033_0001
à coefficients polynômiaux, αQ,1)...)Q,roiJg G M[xχ, . . . , xm, t]. Introduisons le Z)-rnodule 3 = (Ji, . . . , 3P) = sγ>a,nAm+1 (I) , qui est le module à gauche sur A7n^x engendré par J.
Figure imgf000033_0001
with polynomial coefficients, α Q , 1) ... ) Q , kingJ g GM [xχ,. . . , x m , t]. Let us introduce the Z) -rnodule 3 = (Ji, ..., 3 P ) = sγ> a, n Am + 1 (I), which is the module on the left on A 7n ^ x generated by J.
Lemme 1.1 Supposons qu'en Xi = ζi, % = 1, . . . , m, t = r, £α composante i de I soit localement égale à une fonction polynômiale P1 G M[xι, . . . , xm, t]. Alors, tout coefficient c du polynôme est donné parLemma 1.1 Suppose that in Xi = ζi,% = 1,. . . , m, t = r, £ α component i of I is locally equal to a polynomial function P 1 GM [xι,. . . , x m , t]. So, every coefficient c of the polynomial is given by
Figure imgf000033_0002
finie où vo G R[xi, . . . , xm, t], i G J1. L'intégrale itérée
Figure imgf000033_0002
finite where vo GR [xi,. . . , x m , t], i GJ 1 . The iterated integral
/
Figure imgf000033_0003
est choisie de telle sorte que / i = ∑nnie /' TtP1, où J' est une autre intégrale itérée et π G R[xι, . . . , xm, t].
/
Figure imgf000033_0003
is chosen such that / i = Σ nn i e / 'TtP 1 , where J' is another iterated integral and π GR [xι,. . . , x m , t].
Le résultat est vérifié si m = 0. Si m > 1, on passe de m — 1 à m de façon analogue. L'expression effective de (3) découle de la démonstration.The result is checked if m = 0. If m> 1, we go from m - 1 to m in a similar way. The effective expression of (3) follows from the demonstration.
Supposons dorénavant /t localement égale à une fonction analytique FL. Notons [c]ejv(/ii, • • • i hm, k), l'estimée du coefficient c d'un monôme de degré d du développement de Tayor F, en Xi = ξi, t = r, calculée,Suppose now / t is locally equal to an analytic function F L. Let us note [c] ejv (/ ii, • • • ih m , k), the estimate of the coefficient c of a monomial of degree d of the development of Tayor F, in Xi = ξi, t = r, computed,
- en utilisant la formule (3) obtenue à partir du développement de Taylor F^ de F en Xi = ξi, t = r, tronqué à l'ordre N, et en y remplaçant F^r par F ;using the formula (3) obtained from the Taylor Taylor development of F in Xi = ξi, t = r, truncated to the order N, and replacing F ^ r with F;
- en intégrant itérativement, selon (4), sur les intervalles ]ξi, ξi+hi[, i = 1, . . . , m, et ]r, T + k[.- by integrating iteratively, according to (4), on the intervals] ξi, ξi + hi [, i = 1,. . . , m, and] r, T + k [.
La proposition suivante justifie les compromis pratiques entre degrés des polynômes et étendues des fenêtres : Proposition 1.2 Si N > d, hm [c]eN{hi, . . . , hm, k) ≈ Jim [c)eN(h1, . . . , hm, k) = c (5) The following proposition justifies the practical trade-offs between degrees of polynomials and expanses of windows: Proposition 1.2 If N> d, hm [c] eN {hi ,. . . , h m , k) ≈ Jim [c) eN (h 1 , ..., h m , k) = c (5)

Claims

REVENDICATIONS
1. Dispositif (DT) de traitement de données d'entrée n-dimensionnelles, représentatives d'une image ou d'une séquence d'images à n dimensions correspondant à n directions, avec n ≥ 2, caractérisé en ce qu'il comprend des moyens de traitement (MT) agencés, à réception de données d'entrée, i) pour définir un ou plusieurs domaines n-dimensionnels jointifs, de formes complémentaires définies par des données de position et contenant lesdites données d'entrée, puis ii) pour déterminer pour chaque domaine n- dimensionnel une fonction de représentation représentative de l'ensemble des données d'entrée qu'il contient et construite à partir de fonctions de base, choisies dans au moins une base de fonctions de base, et respectivement associées à des coefficients choisis, lesdites fonctions de représentation étant raccordables au moins deux à deux, et iii) pour transformer certains au moins des coefficients de l'une au moins desdites fonctions de représentation en données de représentation définissant avec les données de position associées des données de sortie représentatives des données d'entrée.1. Device (DT) for processing n-dimensional input data, representative of an image or sequence of n-dimensional images corresponding to n directions, with n ≥ 2, characterized in that it comprises processing means (MT) arranged, upon receipt of input data, i) for defining one or more contiguous n-dimensional domains, of complementary shapes defined by position data and containing said input data, and then ii) for determining for each n-dimensional domain a representational function representative of the set of input data that it contains and constructed from basic functions, chosen in at least one base function base, and respectively associated with chosen coefficients, said representation functions being connectable at least two by two, and iii) for transforming at least some of the coefficients of at least one of said representation functions into representation data defining with the associated position data output data representative of the input data.
2. Dispositif selon la revendication 1, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour définir des domaines n- dimensionnels de formes générales choisies identiques et de dimensions identiques.2. Device according to claim 1, characterized in that said processing means (MT) are arranged to define n-dimensional domains of identical selected general shapes and identical dimensions.
3. Dispositif selon la revendication 2, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour transformer en données de représentation les coefficients qui sont associés à des produits, dits croisés, de fonctions de base différentes. 3. Device according to claim 2, characterized in that said processing means (MT) are arranged to transform into representation data the coefficients which are associated with products, said cross, of different basic functions.
4. Dispositif selon la revendication 1, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour définir lesdits domaines n- dimensionnels i) en déterminant la dérivée k-ième partielle et approchée dans lesdites n directions desdites données d'entrée, avec k≥1 , puis ii) à comparer certaines au moins desdites dérivées k-ième partielle à un seuil de variation choisi de manière à déterminer chaque donnée d'entrée, alors dite donnée frontière, au niveau de laquelle survient un franchissement dudit seuil de variation, et iii) à constituer lesdits domaines n-dimensionnels à partir de paires de données frontières voisines dans lesdites n directions, certaines au moins desdites positions desdites données frontières constituant lesdites données de position desdits domaines n-dimensionnels.4. Device according to claim 1, characterized in that said processing means (MT) are arranged to define said n-dimensional domains i) by determining the partial and approximate k-th derivative in said n directions of said input data, with k≥1, then ii) comparing at least some of said partial k-th derivatives to a variation threshold chosen so as to determine each input datum, then called border datum, at which a crossing of said datum threshold occurs. variation, and iii) to form said n-dimensional domains from neighboring pairs of boundary data in said n directions, at least some said positions of said boundary data constituting said position data of said n-dimensional domains.
5. Dispositif selon la revendication 4, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour transformer en données de représentation tous les coefficients.5. Device according to claim 4, characterized in that said processing means (MT) are arranged to transform into representation data all the coefficients.
6. Dispositif selon l'une des revendications 4 et 5, caractérisé en ce que ledit ordre k est égal à deux.6. Device according to one of claims 4 and 5, characterized in that said order k is equal to two.
7. Dispositif selon l'une des revendications 4 à 6, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour déterminer chaque dérivée k-ième partielle et approchée dans l'une desdites n directions à partir d'un développement de Taylor tronqué sur un nombre choisi de segments suivant la direction concernée, l'ensemble des segments suivant ladite direction couvrant l'étendue des données d'entrée suivant cette direction.7. Device according to one of claims 4 to 6, characterized in that said processing means (MT) are arranged to determine each derivative k-th partial and approximated in one of said n directions from a development of Taylor truncated on a selected number of segments in the direction concerned, the set of segments in said direction covering the range of the input data in that direction.
8. Dispositif selon l'une des revendications 1 à 7, caractérisé en ce que n est égal à deux, et en ce que lesdits domaines sont de forme rectangulaire.8. Device according to one of claims 1 to 7, characterized in that n is equal to two, and in that said domains are rectangular in shape.
9. Dispositif selon l'une des revendications 1 à 7, caractérisé en ce que n est égal à trois, et en ce que lesdits domaines sont des volumes de forme parallélépipédique.9. Device according to one of claims 1 to 7, characterized in that n is equal to three, and in that said domains are parallelepiped-shaped volumes.
10. Dispositif selon l'une des revendications 1 à 9, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour construire toutes lesdites fonctions de représentation à partir d'une même base de fonctions de base.10. Device according to one of claims 1 to 9, characterized in that said processing means (MT) are arranged to construct all said representation functions from the same base of basic functions.
11. Dispositif selon l'une des revendications 1 à 10, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour construire chaque fonction de représentation à partir d'une combinaison linéaire des fonctions de base de la base choisie, dans laquelle chaque fonction de base est pondérée par un coefficient choisi.11. Device according to one of claims 1 to 10, characterized in that said processing means (MT) are arranged to construct each representation function from a linear combination of the basic functions of the chosen base, in which each basic function is weighted by a chosen coefficient.
12. Dispositif selon l'une des revendications 1 à 11, caractérisé en ce que lesdites fonctions de base sont des polynômes d'ordres compris entre zéro et M, avec M≥L12. Device according to one of claims 1 to 11, characterized in that said basic functions are polynomials of orders between zero and M, with M≥L
13. Dispositif selon la revendication 12, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour construire lesdites fonctions de représentation au moyen d'une technique d'interpolation de type splines ou moindres carrés. 13. Device according to claim 12, characterized in that said processing means (MT) are arranged to construct said representation functions by means of a spline or least squares interpolation technique.
14. Dispositif selon l'une des revendications 1 à 13, caractérisé en ce qu'en présence de jeux de données d'entrée représentatives de composantes complémentaires d'image(s) en couleurs lesdits moyens de traitement (MT) sont agencés pour traiter lesdits jeux indépendamment les uns des autres. 14. Device according to one of claims 1 to 13, characterized in that in the presence of input data sets representative of color image complementary components (s) said processing means (MT) are arranged to process said games independently of one another.
15. Dispositif selon l'une des revendications 1 à 14, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour constituer un fichier comportant au moins les données de sortie représentatives desdites données d'entrée, ledit fichier étant agencé sous la forme d'une suite ou d'un tableau de groupes de données de sortie représentatives des données d'entrée contenues dans chacun desdits domaines n-dimensionnels, et chaque groupe comportant des données de représentation et d'éventuelles données de position.15. Device according to one of claims 1 to 14, characterized in that said processing means (MT) are arranged to form a file comprising at least the output data representative of said input data, said file being arranged under the as a sequence or array of output data groups representative of the input data contained in each of said n-dimensional domains, and each group including representation data and any position data.
16. Dispositif selon l'une des revendications 1 à 15, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour appliquer une transformation spatiale et/ou temporelle à l'une au moins des fonctions de représentation avant de transformer au moins les coefficients desdites fonctions de représentation transformées en données de représentation définissant avec les données de position associées des données de sortie.16. Device according to one of claims 1 to 15, characterized in that said processing means (MT) are arranged to apply a spatial and / or temporal transformation to at least one of the representation functions before transforming at least the coefficients of said representation functions transformed into representation data defining with the associated position data output data.
17. Dispositif selon la revendication 16, caractérisé en ce que lesdites transformations spatiales sont choisies dans un groupe comprenant au moins les rotations et les gros plans.17. Device according to claim 16, characterized in that said spatial transformations are chosen from a group comprising at least rotations and close-ups.
18. Dispositif selon l'une des revendications 1 à 17, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour appliquer un opérateur mathématique choisi auxdites données d'entrée de manière à effectuer une détection de contour ou de mouvement. 18. Device according to one of claims 1 to 17, characterized in that said processing means (MT) are arranged to apply a selected mathematical operator to said input data so as to perform contour detection or movement.
19. Dispositif selon l'une des revendications 1 à 18, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour cacher une information en des points (ou pixels) choisis d'une image, correspondant à l'une au moins des fonctions de représentation, avant de transformer certains au moins des coefficients desdites fonctions de représentation en données de représentation définissant avec les données de position associées des données de sortie.19. Device according to one of claims 1 to 18, characterized in that said processing means (MT) are arranged to hide information at selected points (or pixels) of an image, corresponding to at least one representation functions, before transforming at least some of the coefficients of said representation functions into representation data defining with the associated position data output data.
20. Codeur (CR) de données d'image ou de vidéo, caractérisé en ce qu'il comprend un dispositif de traitement (DT) selon l'une des revendications précédentes. 20. Encoder (CR) image data or video, characterized in that it comprises a processing device (DT) according to one of the preceding claims.
21. Codeur selon la revendication 20, caractérisé en ce qu'il comprend un module de post-compression (MPC) propre à appliquer une compression auxiliaire auxdites données de sortie délivrées par ledit dispositif de traitement (DT), de manière à délivrer un fichier de données post-compressées. 21. Encoder according to claim 20, characterized in that it comprises a post-compression module (MPC) adapted to apply an auxiliary compression to said output data delivered by said processing device (DT), so as to deliver a file post-compressed data.
22. Dispositif (DD) de reconstitution de données d'image ou de vidéo à partir de données d'entrée résultant d'un codage au moyen d'un dispositif de traitement (DT) ou d'un codeur (CR) selon l'une des revendications précédentes, caractérisé en ce qu'il comprend des moyens de reconstitution (MR) disposant de la base de fonctions de base et de la technique de construction utilisées lors du codage et agencés pour reconstituer chaque fonction de représentation associée à chaque domaine à partir des données de représentation contenues dans chaque groupe de données d'entrée et desdites base de fonctions de base et technique de construction, puis pour reconstituer ladite fonction principale à partir desdites fonctions de représentation reconstituées et des données de position contenues dans chaque groupe de données d'entrée correspondant.22. Device (DD) for reconstructing image or video data from input data resulting from encoding by means of a processing device (DT) or an encoder (CR) according to the one of the preceding claims, characterized in that it comprises reconstitution means (MR) having the base of basic functions and the construction technique used during the coding and arranged to reconstitute each representation function associated with each domain to from the representation data contained in each input data group and said basic function database and building technique, and then reconstructing said main function from said reconstituted representation functions and position data contained in each data group corresponding entry.
23. Dispositif selon la revendication 22, caractérisé en ce que lesdits moyens de reconstitution (MR) sont agencés pour transformer ladite fonction principale en données de sortie. 23. Device according to claim 22, characterized in that said reconstitution means (MR) are arranged to transform said main function into output data.
24. Dispositif selon l'une des revendications 22 et 23, caractérisé en ce que lesdits moyens de reconstitution (MR) sont agencés pour décoder des jeux de données d'entrée correspondant à des composantes complémentaires d'image(s) en couleurs, de manière à délivrer des jeux de données de sortie.24. Device according to one of claims 22 and 23, characterized in that said reconstitution means (MR) are arranged to decode input data sets corresponding to complementary color image components, of to deliver output datasets.
25. Décodeur (DR) de données d'entrée représentatives d'image ou de vidéo et obtenues au moyen d'un dispositif de traitement (DT) ou d'un codeur25. Decoder (DR) of image or video representative input data obtained by means of a processing device (DT) or an encoder
(CR) selon l'une des revendications 1 à 21, caractérisé en ce qu'il comprend un dispositif de reconstitution de données (DD) selon l'une des revendications 22 à 24.(CR) according to one of claims 1 to 21, characterized in that it comprises a data reconstruction device (DD) according to one of claims 22 to 24.
26. Décodeur selon la revendication 25, caractérisé en ce qu'il comprend un module de pré-décompression (MPD) propre, en cas de réception de données d'entrée post-compressées, à appliquer une décompression auxiliaire auxdites données d'entrée reçues, de manière à alimenter ledit dispositif de reconstitution de données (DD) en données d'entrée. 26. Decoder according to claim 25, characterized in that it comprises a clean pre-decompression module (MPD), in the case of reception of post-compressed input data, to apply an auxiliary decompression to said received input data. , so as to supply said data reconstitution device (DD) with input data.
PCT/FR2006/000367 2005-02-18 2006-02-17 Video and/or image data processing with determination of representation functions WO2006087479A2 (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
FR0501691A FR2882450A1 (en) 2005-02-18 2005-02-18 n-dimensional input data processing device for video or image data encoder, has processing unit defining connecting n-dimensional domains having complementary shapes defined by position data and comprising input data, upon receipt of data
FR0501691 2005-02-18
FR0503891 2005-04-19
FR0503891 2005-04-19
FRPCT/FR/2005/002165 2005-08-30
PCT/FR2005/002165 WO2006027475A1 (en) 2004-08-31 2005-08-30 Signal compression method

Publications (2)

Publication Number Publication Date
WO2006087479A2 true WO2006087479A2 (en) 2006-08-24
WO2006087479A3 WO2006087479A3 (en) 2007-04-05

Family

ID=36693980

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2006/000367 WO2006087479A2 (en) 2005-02-18 2006-02-17 Video and/or image data processing with determination of representation functions

Country Status (1)

Country Link
WO (1) WO2006087479A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010147529A1 (en) * 2009-06-16 2010-12-23 Telefonaktiebolaget L M Ericsson (Publ) Methods and arrangements for image processing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5510838A (en) * 1992-01-08 1996-04-23 Igp, Research And Development Ltd. Apparatus and method for picture representation by data compression
US6272664B1 (en) * 1998-06-03 2001-08-07 Synopsys, Inc. System and method for using scalable polynomials to translate a look-up table delay model into a memory efficient model
WO2002015406A1 (en) * 2000-07-28 2002-02-21 Kromos Technology, Inc. Acquiring local signal behavior parameters

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5510838A (en) * 1992-01-08 1996-04-23 Igp, Research And Development Ltd. Apparatus and method for picture representation by data compression
US6272664B1 (en) * 1998-06-03 2001-08-07 Synopsys, Inc. System and method for using scalable polynomials to translate a look-up table delay model into a memory efficient model
WO2002015406A1 (en) * 2000-07-28 2002-02-21 Kromos Technology, Inc. Acquiring local signal behavior parameters

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
DESOLI G ET AL: "High compression video coding: a novel approach" PROCEEDINGS OF THE SPIE, SPIE, BELLINGHAM, VA, US, vol. 2186, 1994, pages 270-277, XP002361620 ISSN: 0277-786X *
EDEN M ET AL: "POLYNOMIAL REPRESENTATION OF PICTURES" SIGNAL PROCESSING, ELSEVIER SCIENCE PUBLISHERS B.V. AMSTERDAM, NL, vol. 10, no. 4, 1986, pages 385-393, XP000929592 ISSN: 0165-1684 *
FLIESS M ET AL: "Compression différentielle de transitoires bruités" COMPTES RENDUS - MATHEMATIQUE, ELSEVIER, PARIS, FR, vol. 339, 2004, pages 821-826, XP002361621 ISSN: 1631-073X *
FLIESS M ET AL: "Estimation des dérivées d'un signal multidimensionnel avec applications aux images et aux vidéos" COLLOQUE GRETSI, XX, XX, septembre 2005 (2005-09), pages 1-4, XP002361622 *
KUNT M ET AL: "RECENT RESULTS IN HIGH-COMPRESSION IMAGE CODING" IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS, IEEE INC. NEW YORK, US, vol. CAS-34, no. 11, 1 novembre 1987 (1987-11-01), pages 1306-1336, XP000037993 *
NATALE DE F G B ET AL: "Adaptive image sampling and interpolation for data compression" JOURNAL OF VISUAL COMMUNICATION AND IMAGE REPRESENTATION, ACADEMIC PRESS, INC, US, vol. 5, no. 4, décembre 1994 (1994-12), pages 388-402, XP002361619 ISSN: 1047-3203 *
STROBACH P: "QUADTREE-STRUCTURED RECURSIVE PLANE DECOMPOSITION CODING OF IMAGES" IEEE TRANSACTIONS ON SIGNAL PROCESSING, IEEE SERVICE CENTER, NEW YORK, NY, US, vol. 39, no. 6, 1 juin 1991 (1991-06-01), pages 1380-1397, XP000235043 ISSN: 1053-587X *
WILLEMIN P ET AL: "IMAGE SEQUENCE CODING BY SPLIT AND MERGE" IEEE TRANSACTIONS ON COMMUNICATIONS, IEEE SERVICE CENTER, PISCATAWAY, NJ, US, vol. 39, no. 12, 1 décembre 1991 (1991-12-01), pages 1845-1855, XP000268152 ISSN: 0090-6778 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010147529A1 (en) * 2009-06-16 2010-12-23 Telefonaktiebolaget L M Ericsson (Publ) Methods and arrangements for image processing
US8447103B2 (en) 2009-06-16 2013-05-21 Telefonaktiebolaget Lm Ericsson (Publ) Methods and arrangements for image processing

Also Published As

Publication number Publication date
WO2006087479A3 (en) 2007-04-05

Similar Documents

Publication Publication Date Title
Claus et al. Videnn: Deep blind video denoising
Norkin et al. Film grain synthesis for AV1 video codec
FR2964490A1 (en) METHOD FOR DEMOSAICING DIGITAL RAW IMAGE, COMPUTER PROGRAM, AND CORRESPONDING IMAGING OR GRAPHICS CIRCUIT
Foi Pointwise shape-adaptive DCT image filtering and signal-dependent noise estimation
EP2279621B1 (en) Method of coding, decoding, coder and decoder
Danielyan et al. Cross-color BM3D filtering of noisy raw data
EP2705666A1 (en) Method for encoding and decoding integral images, device for encoding and decoding integral images, and corresponding computer programs
EP2392142A1 (en) Method for encoding and decoding an image sequence implementing a movement compensation, and corresponding encoding and decoding devices, signal, and computer programs
EP3340169B1 (en) Hybrid image and video denoising based on interest metrics
Jantet Layered depth images for multi-view coding
Tu et al. Adaptive debanding filter
EP0780794B1 (en) Motion estimation correction process in images with a periodical structure
EP3139608A1 (en) Method for compressing a video data stream
EP0722251B1 (en) Method for interpolating images
EP1246469A2 (en) Method of simoultaneously downconverting and decoding of video
WO2006087479A2 (en) Video and/or image data processing with determination of representation functions
EP1181668B1 (en) Image coding/decoding method
EP4258204A1 (en) Image processing method, apparatus, computer program and computer-readable data carrier
Boracchi et al. Multiframe raw-data denoising based on block-matching and 3-D filtering for low-light imaging and stabilization
FR2933520A1 (en) METHOD AND DEVICE FOR RESTORING A VIDEO SEQUENCE
FR2882450A1 (en) n-dimensional input data processing device for video or image data encoder, has processing unit defining connecting n-dimensional domains having complementary shapes defined by position data and comprising input data, upon receipt of data
FR2849329A1 (en) Video sequence successive image coding having an image mesh divided and wavelet coded with two wavelet types applied distinct image zones
WO2021214395A1 (en) Methods and devices for coding and decoding a multi-view video sequence
Wada et al. Extended joint bilateral filter for the reduction of color bleeding in compressed image and video
FR2848373A1 (en) METHOD FOR MEASURING BLOCK ARTIFACTS

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06709337

Country of ref document: EP

Kind code of ref document: A2

WWW Wipo information: withdrawn in national office

Ref document number: 6709337

Country of ref document: EP