EP2347595A1 - Verfahren und einrichtung zur codierung einer bildsequenz, die blöcke verschiedener grösse implementiert, signal, datenmedium, decodierungsverfahren und einrichtung und diesbezügliche computerprogramme - Google Patents
Verfahren und einrichtung zur codierung einer bildsequenz, die blöcke verschiedener grösse implementiert, signal, datenmedium, decodierungsverfahren und einrichtung und diesbezügliche computerprogrammeInfo
- Publication number
- EP2347595A1 EP2347595A1 EP09756014A EP09756014A EP2347595A1 EP 2347595 A1 EP2347595 A1 EP 2347595A1 EP 09756014 A EP09756014 A EP 09756014A EP 09756014 A EP09756014 A EP 09756014A EP 2347595 A1 EP2347595 A1 EP 2347595A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- macroblock
- large block
- information associated
- current image
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Definitions
- the field of the invention is that of encoding and decoding a video stream, consisting of a series of successive images. More specifically, the invention applies to the compression of images or image sequences using block transforms.
- the invention may especially apply to video coding implemented in current (MPEG, H.264, etc.) or future (H.265) video encoders.
- each image can be sliced (in English "slice"), themselves cut into macroblocks, which are then subdivided into blocks.
- a block consists of a set of pixels.
- a macroblock is a square block of size equal to 16x16 pixels, which can be split into blocks of 8x8, 16x8 or 8x16 size, the 8x8 blocks can then be cut into 4x4, 8x4 or 4x8 size blocks.
- the macroblocks or the blocks can be coded by intra-image prediction or inter-image prediction.
- a macroblock or block may be encoded by: a temporal prediction, that is, with reference to a reference block or macroblock belonging to one or more other images; and / or a so-called "spatial" prediction, as a function of the blocks or macroblocks adjacent to the current image.
- the prediction can only be made from blocks that have been previously coded.
- I-images are coded by spatial prediction (intra prediction), and P and B-images are coded by temporal prediction with respect to other I, P or B images coded / decoded at using a moving compensation.
- the decoding is done image by image, and for each image, macroblock by macroblock. For each macroblock, the corresponding elements of the stream are read. Inverse quantization and inverse transformation of block coefficients of the macroblock are performed. Then, the prediction of the macroblock is computed and the macroblock is reconstructed by adding the prediction to the decoded prediction residue.
- the different types of prediction possible in the AVC encoder are not the same depending on the size of the blocks.
- intra coding it is not it is not possible to benefit from as many prediction directions for a 16x16 block as for a 4x4 block.
- 4x4 size blocks to encode a high resolution sequence does not effectively exploit the signal to compress, the amount of information contained in the block is not sufficiently representative of the high resolution sequence for that the applied coding is efficient in terms of rate / distortion cost.
- the maximum block size for prediction is limited to 16x16 in current video compression standards. However, the use of larger blocks may be of interest in the case of high resolution sequences.
- the document "Reduced Resolution Update Mode Extension to the H.264 Standard” proposes to extend the coding technique called “Reduced Resolution Update” (RRU). the resolution ”) to an H.264 encoder.
- RRU Reduced Resolution Update
- the invention proposes a new solution that does not have all of these disadvantages of the prior art, in the form of a coding method of a sequence of images, comprising a step of cutting an image. current in blocks of standard size, called macroblocks.
- such a method comprises, for at least one current macroblock of the current image, the following steps:
- the invention thus proposes a new image coding technique, making it possible to adapt the size of the blocks to be coded, taking into account the characteristics of the image to be coded.
- the size of the block or blocks of larger size can be predefined to the encoding, depending on the size of the image to be encoded (for example according to recommendations defined by a standard, or specified in the header coded data).
- a current macroblock of the current image For a current macroblock of the current image, one then builds one or more large blocks larger than the current macroblock, taking into account the specific conditions of the encoder. The block is then selected which makes it possible to obtain the best basic representation for the current macroblock. For example, this selection is made by choosing the block of larger size to optimize a rate / distortion criterion.
- the coding of a large block makes it possible to calculate, on the basis of the basic coding information, a decoded value (reconstructed value) for all the pixels of this large block, and therefore for the pixels of the current macroblock present in the block. big block.
- a decoded value reconstructed value
- big block we mean by representation of base all these reconstructed values for the current macroblock.
- the best basic representation is that which minimizes the R + AD equation, with R the rate associated with the coding of the prediction residue and the signaling information necessary for the prediction mode in question, D the distortion of the large block after reconstruction (addition of the decoded residue to the prediction), and ⁇ a pre-determined Lagrangian.
- the choice of the size of the block to be encoded in the basic representation is also based on a rate-distortion criterion, for example.
- the block size retained is then that corresponding to the tested block having the lowest Lagrangian.
- the large block is then coded so as to obtain basic coding information for this large block.
- the basic coding information for the large block is then inserted into a signal representative of the image and / or stored.
- this basic encoding information is used to reconstruct a base layer of the image, i.e., a version with a first quality level of the current image (basic representation).
- enhancement information associated with at least one macroblock present in the large block.
- this enhancement information makes it possible to reconstruct an image enhancement layer, i.e., a higher quality version of the current image.
- this enhancement information includes texture and / or motion information.
- Blocks larger than the macroblock are, for example, constructed to encompass several adjacent macroblocks horizontally and / or vertically of the current macroblock, corresponding to a region of the image having similar characteristics, such as the same value of the macroblock. movement or a homogeneous texture.
- the current image (or a portion of the image), macroblock by macroblock, is thus traversed along a predetermined direction of travel, and for each new macroblock, new blocks larger than this macroblock are constructed, and one seeks to determine whether the best basic representation for current macroblock is obtained by coding the macroblock directly, or one of the larger blocks.
- the course directions are, for example, the line-by-line route, generally known as the "Raster Scan", or the spiral path (“Spiral Scan”) which proposes to go through a group of blocks from its center, while progressing towards the edges by a spiral-shaped path,
- the method according to the invention comprises a preliminary verification step if the current macroblock has previously been coded via a large block containing the current macroblock, and in the case of a positive check, of passing to a next macroblock, in a sequence of predetermined course.
- a preliminary verification step if the current macroblock has previously been coded via a large block containing the current macroblock, and in the case of a positive check, of passing to a next macroblock, in a sequence of predetermined course.
- the invention thus makes it possible to adapt the size of the blocks to the desired image and resolution level, by storing and / or transmitting basic coding information associated with a macroblock for regions having fine details or information basic encoding associated with a large block for regions with coarser details.
- the method comprises a step of insertion, in a signal representative of the image sequence, of at least one indicator belonging to a group comprising: an indicator signaling the presence of at least one large block;
- an indicator signaling the presence of enhancement information associated with at least one macroblock present in said large block.
- the proposed syntax makes it possible to dispense with the use of a stream presenting a hierarchical structure in layers of data, as proposed according to the SVC technique.
- the coding method comprises a step of inserting into the signal, according to a predetermined order of movement of the macroblocks in the image, the following information:
- the best basic representation is obtained by individually coding the macroblock, while for others, the best basic representation is obtained by coding a large block comprising the macroblock.
- the encoder-generated signal to a receiver includes both basic encoding information associated with one or more individually encoded macroblocks, and basic encoding information associated with one or more big blocks.
- the signal also includes enhancement information associated with one or more macroblocks present in a large block, and optionally one or more macroblocks taken individually.
- the invention in another embodiment, relates to a device for coding an image sequence, comprising means for cutting a current image into blocks of standard size, called macroblocks.
- a device for coding an image sequence comprising means for cutting a current image into blocks of standard size, called macroblocks.
- such a device comprises, for at least one current macroblock of the current image:
- encoding means of said large block delivering basic coding information, making it possible to reconstruct a base layer of said current image, and for at least one large block, means for determining enhancement information associated with at least one a macroblock present in the large block, for reconstructing an enhancement layer of said current image.
- Such a coding device is particularly suitable for implementing the coding method described above.
- This is for example an MPEG or H.264 type video encoder, or according to a future video compression standard.
- Another aspect of the invention relates to a signal representative of an image sequence coded according to the coding method described above.
- a signal includes:
- Enhancement information associated with at least one macroblock present in one of said large blocks making it possible to reconstruct an enhancement layer of said current image.
- This signal can be transmitted and / or stored on a data medium.
- This signal may of course include the various characteristics relating to the coding method according to the invention.
- this signal comprises at least one indicator belonging to a group comprising: an indicator signaling the presence of at least one large block; an indicator signaling the presence of enhancement information associated with at least one macroblock present in said large block.
- Yet another aspect of the invention relates to a data medium comprising at least one signal representative of an image sequence coded according to the coding method described above.
- Such support includes:
- the invention relates to a method for decoding a signal representative of a sequence of images, an image being divided into blocks of standard size, called macroblocks, said signal comprising:
- such a method implements the following steps:
- the decoding technique according to the invention makes it possible to receive and read basic coding information, to reconstruct a region of the image corresponding to a large block, that is to say grouping together several macroblocks.
- the signal may also carry basic coding information associated with at least one macroblock.
- the decoding method implements steps of reading the basic coding information associated with at least one macroblock, decoding the basic coding information associated with a macroblock and rebuilding the corresponding macroblock.
- the decoding technique according to the invention makes it possible to reconstruct either a region of the image corresponding to a macroblock or a region of the image corresponding to a large block, that is to say grouping together several macroblocks. .
- the decoding method comprises a step of reconstructing a macroblock from at least one macroblock present in a large previously reconstructed block.
- the causal zone of a macroblock is the zone of the image comprising the macroblocks located before the current macroblock, according to the direction of travel of the blocks in the image.
- the anti-causal zone of a macroblock is the zone of the image comprising the macroblocks located after the current macroblock, according to the direction of travel of the blocks in the image.
- the refinement is carried out according to a predetermined order of travel of the macroblocks.
- the refinement of the macroblocks is not necessarily implemented for all the macroblocks present in a large block, once this big block is decoded.
- This refinement can be implemented according to a predetermined order of travel of the macroblocks, such as the meaning "Raster Scan” or "Spiral Scan” defined above.
- the invention relates to a device for decoding a signal representative of a sequence of images, comprising:
- Such a decoding device is particularly suitable for implementing the decoding method described above.
- This is for example a video decoder type MPEG or H.264, or according to a future video compression standard.
- the invention also relates to a computer program comprising instructions for implementing the encoding method and / or the decoding method described above when this program is executed by a processor, or a computer program product downloadable from a communication network and / or stored on a computer-readable and / or executable medium by a processor, comprising program code instructions for implementing the encoding method and / or the decoding method described above, when is executed by a processor.
- FIG. 1 illustrates the main steps of a coding method according to an embodiment of the invention
- FIGS. 2A and 2B illustrate a direction of course of the macroblocks in an image, and the construction of a large block
- FIGS. 3A to 3C show different possible partitions for the same block
- FIG. 4 illustrates the coding of macroblocks or large blocks according to one embodiment of the invention
- Figures 5 and 6 show the syntax of a flow according to one embodiment of the invention
- FIG. 7 illustrates the main steps of a decoding method according to one embodiment of the invention
- Figures 8 and 9 respectively show the structure of a coding device and a decoding device implementing a coding technique and a decoding technique according to a particular embodiment of the invention. 5. Description of an embodiment of the invention
- the general principle of the invention is based on the use of adaptive size blocks according to the characteristics of the region of an image to be encoded. It is thus possible to define regions for which a block of large size is coded, and others for which a small block is coded.
- a large block for example 32 ⁇ 32 pixels or more
- the step of transformation on a larger support allows a better compaction of the energy.
- the use of small or medium sized blocks remains necessary in non-homogeneous areas.
- homogeneous region is meant a region of the same texture, or of the same movement, for example.
- a homogeneous area in the sense of movement or texture is an area whose pixels have similar characteristics.
- the invention therefore proposes a new solution for adapting the size of a block to the region of the image to which it corresponds.
- this large block is coded at two levels: a first level making it possible to determine basic coding information associated with the large block;
- FIG. 1 illustrates more precisely the steps of the coding method according to the invention.
- a current image / c is cut in a first step 11 in blocks of standard size, called macroblocks.
- a macroblock is a 16x16 square block.
- a macroblock may have a size equal to 32x32, 64x64, or 16x32 for example.
- the method implements a construction step 12 of at least one block B / of greater size than the current macroblock MB /, comprising the current macroblock MB / and at least one neighbor macroblock in the image / c .
- Such blocks therefore have a larger size than the 16x16 macroblocks used according to the H.264 / AVC standard. For example, a first block B ⁇ of size 16x32, a second block B2 of size 32x16, and a third block B3 of size 32x32 are constructed.
- the neighboring macroblocks can be chosen from the anti-causal zone of the current macroblock MB /, that is to say in the zone of the image comprising the macroblocks located after the macroblock MB /, according to the direction of path RS of the macroblocks. in the picture. This ensures that each macroblock is not coded only once.
- the possible sizes for these large blocks are predefined according to the size of the images to be encoded (according to recommendations defined by a standard, or else specified in the header of the coded data). If several large blocks are built for the macroblock, one is selected, as explained later.
- This large block is coded during a coding step 13, so as to obtain basic coding information / g associated with the large block.
- This basic coding information comprises at least one of:
- enhancement information is determined for at least one macroblock present in a large block. For example, enhancement information is determined for MB / + macroblock; present in the large GB block.
- a region of size 32x32 can be represented by:
- a basic representation of each of the blocks is determined, and the different basic representations of the 32x32 region are compared with each other: - the two large blocks of size 16x32;
- the coding method according to the invention can be implemented in various ways, in particular in hard-wired form or in software form. 5.2 Detailed Description of the Coding Method The following is a particular embodiment of the coding method according to the invention. We consider that we have already set the size of a large block. A) Coding with partitioning of the large block
- Partitioning therefore makes it possible to obtain a set of sub-blocks, which are not necessarily the size of a macroblock. These sub-blocks can be square, rectangular or other.
- This division can be implemented recursively until a sub-block of size 4 pixels on one of its vertical or horizontal dimensions (the smallest).
- a larger block includes a region of white pixels, and a region of black pixels
- B) Prediction modes for large block coding The prediction modes for block coding defined in H.264 / A VC can be extended to these different partitions.
- the mechanisms defined according to the AVC standard can be used for motion estimation and compensation. These mechanisms can be applied on sub-blocks having a size larger than the size of a standard macroblock (16x16 according to the AVC technique).
- a vector can be used to compensate for all the large block or multiple vectors can be used to each sub-block, similarly to the AVC technique.
- the MBJ macroblock can be predicted taking into account the following macroblock according to the order of travel (MB 7+ ;), since this macroblock was coded during the coding step of the large block. If several basic representations offer close performances, we prefer the one obtained from the larger block. Indeed, the coding of a large block makes it possible to limit the amount of basic coding information inserted in the stream (since the macroblocks present in a large block are not individually coded in the basic version), and accelerates therefore the decoding process.
- the corresponding large block is coded.
- the prediction residue is transformed in order to compact the signal energy on a smaller number of coefficients.
- the transformation used by AVC can be extended to larger media. This can be done by adding 16x16 or 32x32 integer DCT transformation, depending on the size of standard macroblocks, and wavelet transformations.
- the so-called RRU technique can also be applied to large blocks.
- the prediction residues are then subsampled and transformed by an 8x8 or 4x4 transformation, for example.
- the reconstructed coefficients may be oversampled before adding the prediction.
- Standard transformations of the 4x4 or 8x8 type can also be used on large blocks according to the invention.
- information specifying the type of transformation performed is coded. If certain macroblocks are individually coded, information specifying the type of transformation performed is also coded for these macroblocks.
- Enhancement information for a macroblock Furthermore, for at least one macroblock of a large block, a refinement of the motion can be coded, in the form of a predicted residual by comparison with a coded basic movement for the macroblock. big block.
- a texture refinement can also be encoded, in the form of a texture residue by prediction with respect to a basic texture encoded for the large block.
- the invention is considered to be implemented in a conventional H.264 encoder.
- the current image is divided into blocks of standard size, called macroblocks, of size 16x16 if one places oneself in the context of an H.264 encoder.
- macroblocks of size 16x16 if one places oneself in the context of an H.264 encoder.
- the largest coding unit is defined according to the resolution of the sequence to be encoded, for example.
- This maximum coding unit is of size MxN, with M and N multiples of 16 pixels. Indeed, it corresponds to a block constructed from at least two macroblocks of the current image. The path of the macroblocks in the image is done line by line (route
- the coding of the macroblocks is determined by group of macroblocks, a group forming a large block.
- AVC ie intra mode, inter mode or skip mode if the block is reconstructed by simple prediction (that is to say, there is no additional information to be transmitted), as well as the different transformation sizes.
- the large block of size M * xN * has the best performance.
- the choices relating to this large block notably its size, partitioning and / or the type of transformation used) are stored, and basic coding information associated with the large block is determined thereafter.
- Basic encoding information for each macroblock of the large block may also be stored for eventual insertion later in the stream.
- the encoder then moves to the next macroblock, positioned at the position (x0 + M *, y0).
- the size of this block is stored, and basic coding information associated with the macroblock is determined thereafter.
- the encoder then switches to the next macroblock, positioned at the position (x ⁇ + 16, yO).
- the encoder thus performs an encoding of the entire image by searching each time for the best possible combination of macroblocks for coding.
- the signal representative of the image sequence (also called flow) is then constructed by coding for each macroblock of the image, in a predetermined direction of travel, the saved data of the best basic representation.
- the best basic representation of a macroblock is obtained from a large block, the data for that large block is inserted into the stream, in the form of basic coding information associated with the large block.
- the best basic representation for a macroblock is obtained from the macroblock coding taken alone, the data for this macroblock is inserted into the stream, in the form of basic coding information associated with the macroblock. For example, as illustrated in FIG. 4, an image (or portion of image) cut into nine macroblocks of size 16 ⁇ 16 numbered from 1 to 9 according to the "Raster Scan" order of order is considered.
- the macroblock image is scanned by macroblock.
- the current macroblock is the macroblock 1
- the best basic representation is obtained from the coding of the macroblock 1 taken individually.
- This value is stored and the next macroblock that has not been previously coded, alone or in a large block, is passed according to the order of the macroblocks. This is macroblock 2.
- the best basic representation is obtained from the coding of the large block of size 32x32, comprising the macroblocks 2, 3, 5 and 6. This value is stored and we go on to the next macroblock which n has not been previously coded. This is macroblock 4.
- the best basic representation is obtained from the macroblock 4. This value is stored and we move to the next macroblock that has not been previously coded. This is macroblock 7. And so on.
- the best basic representation of the macroblocks 1, 4, 7, 8 and 9 respectively is obtained from the macroblocks 1, 4, 7, 8 and 9, and the best basic representation of the macroblock 2 is obtained. from a large 32x32 block, including macroblocks 2, 3, 5 and 6.
- the signal therefore comprises the following data, in the following order:
- FIG. 5 illustrates more precisely the syntax of such a flow.
- macroblocks 3, 5, and 6 are not individually coded in their basic version (i.e. do not show specific basic coding information).
- the macroblocks 3, 5, and 6 are skipped during the course of the macroblocks of the image, and no additional basic coding information is encoded for neighboring macroblocks (macroblocks 3, 5 and 6) located in the zone reconstructed by the current macroblock (macroblock 2). This makes it possible to simplify the coding of a large area of the image, by limiting the number of coded data.
- texture enhancement and / or motion information may be encoded to improve the quality of these macroblocks.
- the enhancement information is then encoded following the basic coding information of the large block, in the form of residues and in the order of the course of the macroblocks used.
- FIG. 6 more precisely illustrates the syntax associated with the stream comprising enhancement information for the macroblocks of the large block 32x32 of the example of FIG. 4, considering that information of enhancement are coded for each macroblock 2, 3, 5 and 6.
- the signal then comprises the following data, in the following order:
- the header of a slice is modified to indicate the presence or absence of enhancement information.
- an indicator is provided to signal the presence of enhancement information associated with at least one macroblock present in a large block.
- an "extra_macroblock_flag" flag is inserted in the header for signaling the presence of enhancement information for one or more macroblocks already coded via a large block in the basic version (i.e. for which basic coding information has already been determined ).
- Appendix A which is an integral part of this description, provides an example of the syntax of the header corresponding to a slice, in which the indicator "extra_macroblock_flag" inserted in the flow according to the invention is shown in italics.
- the semantics associated with this syntax are more precisely described in the H.264 / AVC standard.
- the current macroblock is coded in a conventional manner and basic coding information associated with the macroblock is obtained (for example using the function "macroblock_layer");
- the super_bloc_layer function is similar in principle to the macrobloc_layer function of H.264: it defines the representation parameters linked to a predictive coding of a block by means of an intra or inter prediction, with a possible division, and using transformation and quantification of the prediction residue;
- the macroblock_enhancement function defines the enhancement parameters (for example movement residue, texture residue) to be applied to the basic representation information similar to what is achieved by the SVC extension of AVC;
- the function macrobloc_coded controls the existence information state of a basic representation previously defined for a macroblock. This operation is performed via the status of the values of a macroblock definition information card having a basic representation. This information card is updated at the coding of a large block in the decoding process associated with the super_bloc_layer function.
- a decoder Upon receipt of a signal representative of an encoded image sequence according to the invention, comprising basic encoding information associated with one or more large blocks, and enhancement information associated with at least one macroblock present in one of the large blocks, a decoder implements the following steps: - reading 71 of basic coding information associated with a large block:
- An additional decoding step 74 of the basic coding information associated with a macroblock and reconstruction of the macroblock may also be provided, if the received signal carries basic coding information associated with one or more macroblocks.
- the decoding method according to the invention can be implemented in various ways, in particular in hard-wired form or in software form.
- the decoder reads the information of the stream for the image to be decoded macroblock by macroblock, and stores the information for each macroblock.
- the decoder reads the basic coding information associated with the large block. On the other hand, it does not read basic coding information associated with the other macroblocks present in the large block, that is to say the horizontal and / or vertical neighboring macroblocks of the current macroblock. If enhancement information is present for one or more macroblocks of the large block, this information is read and stored.
- the number of basic coding coefficients to be read for this macroblock is determined by the size of the large block, its partitioning and the type of transformation used. These three pieces of information are read from the stream or derived from previously read basic coding information.
- a macroblock or a large block is then reconstructed in a conventional manner using the entropy decoding of the coefficients, inverse quantization and inverse transformation.
- a prediction is then calculated for the macroblock or large block, and added to the reconstructed residue.
- the area of the image corresponding to the macroblock or large block is then reconstructed.
- FIGS. 8 and 9 the simplified structure of an encoder and a decoder respectively implementing a coding technique of a sequence of images is presented. a decoding technique according to the particular embodiment described above.
- Such an encoder comprises a memory 81 comprising a buffer memory, a processing unit 82, equipped for example with a microprocessor ⁇ P, and driven by the computer program 83, implementing the coding method according to an embodiment of FIG. the invention.
- the code instructions of the computer program 83 are for example loaded into a RAM memory before being executed by the processor of the processing unit 82.
- the processing unit 82 receives as input one or several images of a sequence to code.
- the microprocessor of the processing unit 82 implements the steps of the coding method described above, according to the instructions of the computer program 83, for encoding the one or more images in a signal.
- the encoder comprises, in addition to the buffer memory 81, means for splitting an image into blocks of standard size, called macroblocks, means for constructing at least one block larger than a current macroblock, means for encoding a large block and raising information determining means associated with at least one macroblock present in the large block. These means are controlled by the microprocessor of the processing unit 82.
- the decoder illustrated in FIG. 9 comprises a memory 91 comprising a buffer memory, a processing unit 92, equipped for example with a microprocessor ⁇ P, and driven by the computer program 93, implementing the method of decoding according to a mode embodiment of the invention.
- the code instructions of the computer program 93 are for example loaded into a RAM before being executed by the processor of the processing unit 92.
- the processing unit 92 receives as input a signal representative of a sequence of images.
- the microprocessor of the processing unit 92 implements the steps of the decoding method described above, according to the instructions of the computer program 93, for decoding the signal and reconstructing the image or images of the sequence.
- the decoder comprises, in addition to the buffer memory 91, basic coding information reading means, means for decoding the basic coding information and for reconstructing the large block, and means for decoding information. enhancement associated with a large block and refinement of at least one macroblock present in the large block. These means are controlled by the microprocessor of the processing unit 92.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP22201303.9A EP4145825A1 (de) | 2008-10-15 | 2009-10-13 | Verfahren und vorrichtung zur codierung einer bildsequenz unter verwendung von blöcken unterschiedlicher grösse, signal, datenträger, verfahren und entsprechende decodierungseinrichtung und computerprogramme |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0856973 | 2008-10-15 | ||
PCT/FR2009/051947 WO2010043811A1 (fr) | 2008-10-15 | 2009-10-13 | Procede et dispositif de codage d'une sequence d'image mettant en oeuvre des blocs de taille differente, signal, support de donnees, procede et dispositif de decodage, et programmes d'ordinateur correspondants |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP22201303.9A Division EP4145825A1 (de) | 2008-10-15 | 2009-10-13 | Verfahren und vorrichtung zur codierung einer bildsequenz unter verwendung von blöcken unterschiedlicher grösse, signal, datenträger, verfahren und entsprechende decodierungseinrichtung und computerprogramme |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2347595A1 true EP2347595A1 (de) | 2011-07-27 |
Family
ID=40852359
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP09756014A Ceased EP2347595A1 (de) | 2008-10-15 | 2009-10-13 | Verfahren und einrichtung zur codierung einer bildsequenz, die blöcke verschiedener grösse implementiert, signal, datenmedium, decodierungsverfahren und einrichtung und diesbezügliche computerprogramme |
EP22201303.9A Pending EP4145825A1 (de) | 2008-10-15 | 2009-10-13 | Verfahren und vorrichtung zur codierung einer bildsequenz unter verwendung von blöcken unterschiedlicher grösse, signal, datenträger, verfahren und entsprechende decodierungseinrichtung und computerprogramme |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP22201303.9A Pending EP4145825A1 (de) | 2008-10-15 | 2009-10-13 | Verfahren und vorrichtung zur codierung einer bildsequenz unter verwendung von blöcken unterschiedlicher grösse, signal, datenträger, verfahren und entsprechende decodierungseinrichtung und computerprogramme |
Country Status (4)
Country | Link |
---|---|
US (1) | US9338466B2 (de) |
EP (2) | EP2347595A1 (de) |
CN (1) | CN102187674B (de) |
WO (1) | WO2010043811A1 (de) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101813189B1 (ko) * | 2010-04-16 | 2018-01-31 | 에스케이 텔레콤주식회사 | 영상 부호화/복호화 장치 및 방법 |
FR2963190B1 (fr) * | 2010-07-23 | 2013-04-26 | Canon Kk | Procede et dispositif de codage d'une sequence d'images |
JP2012147127A (ja) * | 2011-01-07 | 2012-08-02 | Sony Corp | 画像処理装置および方法 |
US9635382B2 (en) * | 2011-01-07 | 2017-04-25 | Texas Instruments Incorporated | Method, system and computer program product for determining a motion vector |
US9338465B2 (en) | 2011-06-30 | 2016-05-10 | Sharp Kabushiki Kaisha | Context initialization based on decoder picture buffer |
US11647197B2 (en) | 2011-06-30 | 2023-05-09 | Velos Media, Llc | Context initialization based on slice header flag and slice type |
DE102011119177A1 (de) * | 2011-11-23 | 2013-05-23 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zum Verfahren zum Erstellen eines ersten Parametersatzes |
EP4274227A3 (de) | 2012-02-04 | 2023-11-29 | LG Electronics Inc. | Videocodierungsverfahren, videodecodierungsverfahren und vorrichtung damit |
CN102740079B (zh) * | 2012-07-12 | 2014-10-01 | 北方工业大学 | 基于hevc标准率失真优化的质量可伸缩编码 |
GB2514540B (en) * | 2013-04-10 | 2020-01-08 | Microsoft Technology Licensing Llc | Resource for encoding a video signal |
US10136132B2 (en) * | 2015-07-21 | 2018-11-20 | Microsoft Technology Licensing, Llc | Adaptive skip or zero block detection combined with transform size decision |
CN107612953B (zh) * | 2016-07-12 | 2020-10-27 | 中国电信股份有限公司 | 增强信息生成和获取方法、装置、终端设备、平台和系统 |
JP2022016726A (ja) * | 2018-11-16 | 2022-01-25 | ソニーグループ株式会社 | 画像処理装置および方法 |
GB2599805B (en) * | 2019-03-20 | 2023-09-06 | V Nova Int Ltd | Temporal signalling for video coding technology |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009112742A1 (fr) * | 2008-02-21 | 2009-09-17 | France Telecom | Codage et decodage d'une image ou d'une sequence d'images decoupees en blocs de pixels |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101204092B (zh) * | 2005-02-18 | 2010-11-03 | 汤姆森许可贸易公司 | 从低分辨率图像导出高分辨率图像的编码信息的方法以及实施所述方法的编码和解码设备 |
KR101382101B1 (ko) * | 2006-08-25 | 2014-04-07 | 톰슨 라이센싱 | 감소된 해상도의 파티셔닝을 위한 방법 및 장치 |
CN101282479B (zh) * | 2008-05-06 | 2011-01-19 | 武汉大学 | 基于感兴趣区域的空域分辨率可调整编解码方法 |
-
2009
- 2009-10-13 CN CN200980141550.2A patent/CN102187674B/zh active Active
- 2009-10-13 EP EP09756014A patent/EP2347595A1/de not_active Ceased
- 2009-10-13 US US13/124,517 patent/US9338466B2/en active Active
- 2009-10-13 EP EP22201303.9A patent/EP4145825A1/de active Pending
- 2009-10-13 WO PCT/FR2009/051947 patent/WO2010043811A1/fr active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009112742A1 (fr) * | 2008-02-21 | 2009-09-17 | France Telecom | Codage et decodage d'une image ou d'une sequence d'images decoupees en blocs de pixels |
Also Published As
Publication number | Publication date |
---|---|
US9338466B2 (en) | 2016-05-10 |
US20110261888A1 (en) | 2011-10-27 |
CN102187674B (zh) | 2014-12-10 |
EP4145825A1 (de) | 2023-03-08 |
CN102187674A (zh) | 2011-09-14 |
WO2010043811A1 (fr) | 2010-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2347595A1 (de) | Verfahren und einrichtung zur codierung einer bildsequenz, die blöcke verschiedener grösse implementiert, signal, datenmedium, decodierungsverfahren und einrichtung und diesbezügliche computerprogramme | |
KR101336204B1 (ko) | 다시점 비디오에서 전역변이를 이용하여 상이한 시점의 화면들을 압축 또는 복호하는 인코더와 인코딩하는 방법 및디코더와 디코딩하는 방법 | |
WO2010149900A1 (fr) | Procédé de codage et de décodage d'images, dispositifs de codage et de décodage, flux de données et programme d'ordinateur correspondants | |
EP2304962B1 (de) | Videokodierverfahren und -gerät mit verwending einer reduzerten zahl von bewegungsvektoren für verbundene blöcke | |
FR2932637A1 (fr) | Procede et dispositif de codage d'une sequence d'images | |
EP2351373A2 (de) | Codierung und decodierung mit beseitigung eines oder mehrerer vorbestimmter prädiktoren | |
FR3008840A1 (fr) | Procede et dispositif de decodage d'un train scalable representatif d'une sequence d'images et procede et dispositif de codage correspondants | |
EP2392141A1 (de) | Verfahren und einrichtung zum codieren eines bildes unter verwendung eines prädiktionsmasken-decodierungsverfahrens und einrichtung und entsprechende signale und computerprogramme | |
EP1969854A1 (de) | Verfahren zur codierung und decodierung eines bilder oder einer bildfolge, entsprechende vorrichtungen, computerprogramme und signal | |
EP3075155B1 (de) | Verfahren zur codierung und decodierung von bildern, vorrichtung zur codierung und decodierung von bildern und entsprechende computerprogramme | |
WO2020058594A1 (fr) | Procédés et dispositifs de codage et de décodage d'un flux de données représentatif d'au moins une image | |
EP3815369B1 (de) | Verfahren und vorrichtungen zur codierung und decodierung eines datenstroms, der mindestens ein bild repräsentiert | |
EP3238449A1 (de) | Verfahren zur codierung eines digitalen bildes und zugehöriges decodierungsverfahren, vorrichtungen und computerprogramme | |
FR2956789A1 (fr) | Procede et dispositif de traitement d'une sequence video | |
WO2010086562A1 (fr) | Procede et dispositif de codage d'images mettant en oeuvre des modes de codage distincts, procede et dispositif de decodage, et programmes d'ordinateur correspondants | |
FR3057130A1 (fr) | Procede de codage d'une image, procede de decodage, dispositifs, equipement terminal et programmes d'ordinateurs associes | |
KR101052390B1 (ko) | H.264 표준의 영상 프레임에서 섬네일 이미지를 생성하는 방법 | |
FR3035761A1 (fr) | Procede de codage et de decodage d'images, dispositif de codage et de decodage d'images et programmes d'ordinateur correspondants | |
WO2020058595A1 (fr) | Procédés et dispositifs de codage et de décodage d'un flux de données représentatif d'au moins une image | |
FR2988960A1 (fr) | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants | |
FR2956552A1 (fr) | Procede de codage ou de decodage d'une sequence video, dispositifs associes | |
WO2020161413A1 (fr) | Procédés et dispositifs de codage et de décodage d'un flux de données représentatif d'au moins une image | |
FR3081656A1 (fr) | Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image. | |
WO2018065698A1 (fr) | Procédé de codage d'une image numérique, procédé de décodage, dispositifs, équipement terminal et programmes d'ordinateurs associés | |
WO2009007603A2 (fr) | Procedes et dispositifs de codage et de decodage d'images numeriques tenant compte du type des blocs source, signal et produits programme d'ordinateur correspondants |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20110511 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA RS |
|
DAX | Request for extension of the european patent (deleted) | ||
17Q | First examination report despatched |
Effective date: 20121008 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ORANGE |
|
APBK | Appeal reference recorded |
Free format text: ORIGINAL CODE: EPIDOSNREFNE |
|
APBN | Date of receipt of notice of appeal recorded |
Free format text: ORIGINAL CODE: EPIDOSNNOA2E |
|
APBR | Date of receipt of statement of grounds of appeal recorded |
Free format text: ORIGINAL CODE: EPIDOSNNOA3E |
|
APAF | Appeal reference modified |
Free format text: ORIGINAL CODE: EPIDOSCREFNE |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ORANGE |
|
RAP3 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: ORANGE |
|
APBT | Appeal procedure closed |
Free format text: ORIGINAL CODE: EPIDOSNNOA9E |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R003 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED |
|
18R | Application refused |
Effective date: 20221017 |