This is a U.S. national stage of application No. PCT/FR2005/000195, filed on 31 Jan. 2005.
The present invention relates to a method of finding the prediction direction in intraframe video coding.
One particularly advantageous application of the invention is to intraframe video coding as defined in the H.264/MPEG-4 AVC standard.
Video coding an image generally consists in effecting on that image operations known as compression, with the aim of facilitating the transmission of the image over telecommunications networks by reducing the quantity of data to be transmitted, at the same time as attempting to obtain a final reproduced image of the best possible quality.
Interframe image coding essentially consists in establishing the difference between a current image and an image predicted from preceding images. Only the difference is transmitted, which represents a high level of compression since the quantity of data to be transmitted is considerably reduced.
In intraframe coding the video image is coded with respect to itself, with no reference and no comparison with other images, in particular with preceding images.
In a video call, intraframe coding is necessary for initialization and synchronization and has the particular feature of limiting the dependency of an image block to adjacent blocks only. This form of coding has the advantage of being robust. However, it has the disadvantage that image compression is not so good.
In recent coding standards, such as the ITU-T standard H.264 (ISO/IEC/JTC1 standard MPEG-4 AVC), intraframe block coding relies on prediction relative to adjacent picture elements (pixels). The prediction of a block leads to the construction of a virtual block for the current block, comparing the virtual block with the current block determines the difference between the virtual block and the current block, and the difference is transmitted over the network accompanied by additional data enabling the block to be reconstituted from this difference. Appropriate processing by the receiver reconstitutes the video image by applying the difference transmitted to the virtual block reconstructed by means of this additional data. Intraframe coding therefore has the same advantage of better compression as interframe coding.
To improve intraframe coding, prediction directions are defined that are used to interpolate the pixels of an adjacent block to predict the current block, i.e. to construct a virtual block associated with each prediction direction, and the virtual block that compares best with the current block determines the difference to be transmitted over the network. In other words, each prediction direction is associated with a different processing algorithm yielding a different virtual block. There are therefore as many virtual blocks for the same current block as there are prediction directions. Of course, the prediction direction chosen is that which minimizes the quantity of data to be transmitted at the same time as keeping the best possible quality, in other words, the direction that achieves the best quality/compression trade-off.
A conventional method of enabling the coder to decide on the best prediction direction systematically calculates all the virtual blocks for all possible prediction directions and then compares all these virtual blocks with the current block to determine the direction that gives the smallest difference between the associated virtual block and the current block.
However, because of its complexity, entailing calculating all the necessary interpolations for calculating all the virtual blocks, this method proves very costly in terms of computation time.
Accordingly, one object of the present invention is to provide, in an intraframe video coding process that calculates virtual blocks associated with a current image block in given prediction directions, a method of finding the prediction direction of the current image block that reduces the calculation time needed to find the best prediction direction, i.e. the prediction direction that yields the virtual block closest to the current block.
One aspect of the present invention is directed to a method comprising the following steps:
Accordingly, as emerges in more detail below, by minimizing the number of directions tested by an iterative method, the invention finds the best prediction direction without it being necessary to calculate all the virtual blocks associated with all the prediction directions, which obviously leads to a reduction in the corresponding calculation time.
In one particular implementation of the invention, said iteration is stopped if the best current prediction direction is adjacent to a direction immediately adjacent to the initial direction not retained as the first main direction. This has the advantage of further limiting the number of prediction directions tested and thus of helping to reduce the calculation time required.
Finally, an embodiment of the invention also provides for said initial prediction directions to be vertical and horizontal directions as defined in the H.264/MPEG-4 AVC standard. These directions are those whose interpolations relative to the other diagonal directions are the simplest to calculate.
The best prediction direction comparison calculation may be effected in various ways, for example by calculating the sum of the absolute value differences between the pixels being coded and the corresponding prediction. The sums obtained can then be compared and only the smallest sum retained.
The first step of the method of the invention firstly selects from the eight prediction directions two starting prediction directions, called the initial directions.
As indicated in
As can be seen in the
The two prediction directions immediately adjacent to the first main direction E are then considered, namely the directions ENE and ESE, and the associated virtual blocks are calculated.
The virtual blocks associated with the prediction directions E, ENE and ESE are compared to the current block to determine which of the three directions gives the smallest difference compared to the current block.
If the first main direction E is the best direction, then that direction is considered to be the prediction direction required for intraframe coding of the block. The required direction having been found, the process terminates.
The same applies if the direction ENE is the best direction. This direction being situated at one extremity of the set of eight possible prediction directions, the iteration cannot continue. The process is stopped, and this direction ENE is taken as the required prediction direction.
Otherwise the best prediction direction is the direction ESE, which is called the “second main direction”.
The process continues by considering the prediction direction immediately adjacent to the second main direction ESE that is not the first main direction E. In the present example, this is the prediction direction SE. The virtual block associated with the prediction direction SE is calculated and compared to the current block.
Two situations can arise: either the second main direction ESE is the better direction and therefore constitutes the best prediction direction, in which case the process terminates, or else the direction SE is the better direction. From SE, iteration toward the direction SSE can continue in the same way, by comparing the directions SE and SSE. However, the iteration could equally well be stopped, as shown in
The method described above is executed by a coding device comprising means adapted to execute the steps explained above. The coding device is preferably an electronic data processing device incorporating a software module containing software instructions for commanding execution of the steps of the method by the coding device. Consequently, the invention also relates to a software module for a coding device comprising software instructions for having the coding device execute the above method and a coding device comprising that software module. The software module can be stored in or transmitted by a data medium. That medium may be a hardware storage medium, for example a CD-ROM, a magnetic disc or a hard disc, or a transmissible medium, such as an electrical, optical, or radio signal.
| Number | Date | Country | Kind |
|---|---|---|---|
| 04300081 | Feb 2004 | EP | regional |
| Filing Document | Filing Date | Country | Kind | 371c Date |
|---|---|---|---|---|
| PCT/FR2005/000195 | 1/31/2005 | WO | 00 | 2/16/2007 |
| Publishing Document | Publishing Date | Country | Kind |
|---|---|---|---|
| WO2005/088979 | 9/22/2005 | WO | A |
| Number | Name | Date | Kind |
|---|---|---|---|
| 6765964 | Conklin | Jul 2004 | B1 |
| 7116830 | Srinivasan | Oct 2006 | B2 |
| 7289562 | Yan et al. | Oct 2007 | B2 |
| 7289674 | Karczewicz | Oct 2007 | B2 |
| 7386048 | Sun et al. | Jun 2008 | B2 |
| 20030206594 | Zhou | Nov 2003 | A1 |
| 20060072676 | Gomila | Apr 2006 | A1 |
| Number | Date | Country | |
|---|---|---|---|
| 20070147501 A1 | Jun 2007 | US |