The invention relates to the general field of coding a sequence of images. More specifically, the invention relates to a method for coding a sequence of images divided into blocks.
In reference to
From the reconstructed block Bc and the original block Bc a distortion is calculated and the number of bits required for the coding of the current block
Bc or the corresponding residual block is also determined. Hence, for each coding mode and transform pair, a distortion weighted by a coding cost is calculated. The pair (coding mode, transform) that results in the lowest weighted distortion is selected. This selection method is very costly in terms of calculation cost as it implies coding then reconstructing the current block or the corresponding residual block numerous times. For example, in reference to
The purpose of the invention is to overcome at least one of the disadvantages of the prior art. For this purpose, the invention relates to a method for coding a sequence of images divided into blocks comprising the following steps for a current block:
According to the invention, the coding mode and the transform are selected according to the following steps:
According to a particular aspect of the invention, with some coding modes of the set of coding modes, the use of the first transform in not authorized and during the step of selection of the coding mode in the set of coding modes, the second transform is used for these coding modes instead of the first transform.
According to a particular characteristic of the invention, the first transform is an integer DCT transform of size 4×4 and the second transform is an integer DCT transform of size 8×8.
Advantageously, the coding mode is selected in the set of at least two coding modes according to the following steps:
Advantageously, the transform is selected in the set of transforms according to the following steps:
The invention will be better understood and illustrated by means of embodiments and advantageous implementations, by no means limiting, with reference to the figures in the appendix, wherein:
The invention relates to a method for coding a sequence of images in the form of a stream of coded data F. A sequence of image is a series of several images. Each image comprises pixels or image points with each of which is associated at least one item of image data. An item of image data is for example an item of luminance data or an item of chrominance data.
A coding mode specifies the way in which the block is coded. Generally, the coding mode specifies if the block is coded in INTRA or INTER mode. Then, if the current block Bc is coded in INTRA mode, the coding mode can specify if the current block Bc is predicted spatially or not. If it is predicted spatially, the coding mode specifies the way in which it is predicted. For example, in the case of the H.264 standard, 3 INTRA modes are defined: the 8×8 INTRA mode, the 16×16 INTRA mode and the 4×4 INTRA mode.
If the current block Bc is coded in INTER mode, the coding mode can possibly specify the way in which the current block Bc is partitioned. For example, in the case of the H.264 standard, 4 INTER modes are defined in relation with the partitioning of a block into sub-blocks: the 16×16 INTER mode, the 16×8 INTER mode, the 8×16 INTER mode and the 8×8 INTER mode.
The distortion of a current block Bc of size N pixels by N pixels is generally calculated between the original current block Bc and the coded then reconstructed current block Bc noted as nverse operation of module 1202.
The module 1206 carries out an inverse quantization IQ followed by an inverse transform ITc. The module 1206 is connected to a calculation module 1208 able to merge, for example by addition pixel by pixel, the block of data from the module 1206 and the prediction block Bpred to generate a block of reconstructed image data that is stored in a memory 1210. The coding device 12 also comprises a motion estimation module 1212 able to estimate at least one motion vector between the block Bc and a block of a reference image Ir stored in the memory 1210, this image having been previously coded then reconstructed. According to a variant, the motion estimation can be carried out between the current block Bc and the original reference image Ic in which case the memory 1210 is not connected to the motion estimation module 1212. According to a method well known to those skilled in the art, the motion estimation module searches the reference image Ir for an item of motion data, notably a motion vector in such a manner as to minimize an error calculated between the current block Bc and a block in the reference image Ir identified by means of the item of motion data.
The motion data determined are transmitted by the motion estimation module 1212 to a decision module 1214 able to select a coding mode for the block Bc in a set of coding modes and a transform Tc in a set of transforms. The decision module is adapted to implement steps 20 and 22 of the coding method according to the invention. The coding mode Mc selected is for example that which minimizes a bitrate-distortion type criterion. However, the invention is not restricted to this selection method and the mode retained can be selected according to another criterion for example an a priori type criterion. The coding mode selected by the decision module 1214 as well as the motion data, for example the item or items of motion data in the case of the temporal prediction mode or INTER mode are transmitted to a prediction module 1216. The coding mode selected and in the contrary case the item or items of motion data are also transmitted to the entropy coding module 1204 to be coded in the Stream F. The prediction module 1216 determines the prediction block Bpred from the coding mode determined by the decision module 1214 and possibly from motion data determined by the motion estimation module 1212 (inter-images prediction).
Naturally, the invention is not limited to the embodiment examples mentioned above.
In particular, those skilled in the art may apply any variant to the stated embodiments and combine them to benefit from their various advantages. In particular, the invention applies to any type of coding mode (INTER, INTRA, 20 mono-directional, bi-directional, etc.) and to any type of transform (DCT, integer DCT, Hadamard, wavelets, etc.). Moreover, the invention is in no way limited by the type of distortion used (for example SSE, SAD, etc.). The invention applies whatever the number of coding modes in the set of coding modes as long as it comprises at least two. Likewise, it applies whatever the 25 number of transforms in the set of transforms as long as it comprises at least two.
The invention is in no way limited by the criterion used to select the coding mode Mc and the transform Tc. Other criteria than those described may be used.
Number | Date | Country | Kind |
---|---|---|---|
0955871 | Aug 2009 | FR | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP10/61980 | 8/17/2010 | WO | 00 | 7/13/2012 |