EP3479572A1 - Procédé de codage intra d'une image numérique et procédé de décodage correspondant - Google Patents
Procédé de codage intra d'une image numérique et procédé de décodage correspondantInfo
- Publication number
- EP3479572A1 EP3479572A1 EP17742476.9A EP17742476A EP3479572A1 EP 3479572 A1 EP3479572 A1 EP 3479572A1 EP 17742476 A EP17742476 A EP 17742476A EP 3479572 A1 EP3479572 A1 EP 3479572A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- category
- categories
- prediction modes
- modes
- prediction
- 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
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000008030 elimination Effects 0.000 claims abstract description 57
- 238000003379 elimination reaction Methods 0.000 claims abstract description 57
- 238000004590 computer program Methods 0.000 claims description 13
- 238000004458 analytical method Methods 0.000 claims description 9
- 239000004229 Alkannin Substances 0.000 claims description 5
- 230000006870 function Effects 0.000 claims description 5
- 239000004149 tartrazine Substances 0.000 claims description 5
- 230000001960 triggered effect Effects 0.000 claims description 4
- 239000002151 riboflavin Substances 0.000 claims description 3
- 239000004176 azorubin Substances 0.000 claims 1
- 239000001679 citrus red 2 Substances 0.000 claims 1
- 238000003780 insertion Methods 0.000 claims 1
- 230000037431 insertion Effects 0.000 claims 1
- 238000012217 deletion Methods 0.000 abstract 1
- 230000037430 deletion Effects 0.000 abstract 1
- 230000011664 signaling Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 8
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 5
- XDLMVUHYZWKMMD-UHFFFAOYSA-N 3-trimethoxysilylpropyl 2-methylprop-2-enoate Chemical compound CO[Si](OC)(OC)CCCOC(=O)C(C)=C XDLMVUHYZWKMMD-UHFFFAOYSA-N 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000001364 causal effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000002620 method output Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012916 structural analysis Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
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/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/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
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- 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/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
- H04N19/197—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
-
- 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
Definitions
- the field of the invention is that of encoding and decoding images or image sequences, and in particular video streams.
- the invention relates to the compression of images or image sequences using a block representation of the images.
- the invention may especially apply to the image or video coding implemented in the current encoders (JPEG, MPEG, H.264, HEVC, etc. and their amendments) or to future ones, and to the corresponding decoding.
- Images and digital image sequences occupy a lot of space in terms of memory, which requires, when transmitting these images, to compress them in order to avoid congestion problems on the network used for this transmission. Indeed, the usable throughput on this network is generally limited.
- intra prediction exploits spatial redundancies within an image. To do this, the images are cut into blocks of pixels. Pixel blocks are then predicted using already reconstructed information, corresponding to the previously coded / decoded blocks in the current image according to the order of the blocks in the image.
- the coding of a current block is carried out using a prediction of the current block, said predicted block, and a prediction residual or "residual block", corresponding to a difference between the current block and the predicted block.
- the residual block obtained is then transformed, for example using a DCT transform (discrete cosine transform).
- the coefficients of the transformed residual block are then quantized, then coded by entropy coding and transmitted to the decoder, which can reconstruct the current block by adding this block residual at the predicted block.
- the decoding is done image by image, and for each image, block by block. For each block, the corresponding elements of the stream are read. Inverse quantization and inverse transformation of the coefficients of the residual block are performed. Then, the prediction of the block is calculated to obtain the predicted block and the current block is reconstructed by adding the prediction (the predicted block) to the decoded residual block.
- the HEVC standard it is possible to perform an intra prediction of a current block according to 35 intra prediction modes.
- the HEVC standard defines two lists of prediction modes: a first list called MPM list (for "Most Probable Mode", in English) comprising the 3 intra prediction modes.
- MPM list for "Most Probable Mode", in English
- the most probable for the current block is defined from the prediction modes previously selected during the coding of the neighboring blocks of the current block,
- a second non-MPM list comprising the remaining 32 remaining intra prediction modes, i.e. intra prediction modes not included in the MPM list.
- An index is transmitted to the decoder to indicate which MPM or non-MPM list is used to predict the current block.
- the index of the prediction mode selected in the MPM list is transmitted to the decoder by entropy coding.
- the index of intra prediction mode selected in the non-MPM list is encoded by a fixed length code of 5 bits.
- the non-MPM list includes a large number of intra prediction modes, so the cost of coding an index of a prediction mode of this list is high.
- the reference pixels of the current block correspond to the pixels of the line above the current block and the column to the right of the current block.
- a current block is then predicted by one of the prediction modes of the list. In the selected category, the best prediction mode is chosen based on a rate-distortion criterion. It is marked with information identifying the category and then the mode in that category.
- Such a method makes it possible to reduce the computation time of the prediction of a current block, because in certain cases all the intra prediction modes are not tested. It may also allow in some cases to reduce the flow. Indeed, if the category chosen is one that has only one predictor, there is nothing to report.
- the rate is not reduced, since the signaling is provided based on the set of prediction modes initially available.
- the invention particularly aims to overcome these disadvantages of the prior art.
- an object of the invention is to propose a solution that contributes to reducing the signaling cost of a prediction mode selected for a current block among a plurality of candidate modes, without impairing the quality of the prediction. 5. Presentation of the invention
- the decoder eliminates the categories of prediction modes that are not adapted to the current block and removes from the remaining categories the prediction modes that are common to the eliminated categories. It uses its knowledge of categories not eliminated and updated to interpret in the data stream the coded data signaling the prediction mode chosen by the encoder for the current block.
- the prediction mode signaling selected for the current block is specific and adapted to the updated categories of prediction modes.
- the cost of the prediction mode signaling is optimized.
- the invention also relates to a method of encoding an image in the form of a coded data stream, said image being divided into blocks, a set of at least two prediction modes being available for predicting a block, said block current, said method comprising the following steps: - obtaining at least two categories of prediction modes from the set;
- the obtaining step comprises reading identification information of said categories in a memory.
- the obtaining step comprises an analysis of at least one characteristic of a content of blocks already processed and a creation of categories from at least one criterion of grouping of the prediction modes and according to the at least one analyzed characteristic.
- Categories are created dynamically, based on the content already processed.
- One advantage is that the categories obtained are adapted to the content of the image.
- the method comprises, for a category obtained, a step of determining a prediction mode representing this category and the category elimination step comprises an elimination of the prediction mode representing, the elimination of the category being triggered by the elimination of the prediction mode representing it.
- One advantage is that the entire category is eliminated in one operation.
- the step of eliminating the category comprises the successive elimination of its prediction modes, the comparison of the number of prediction modes eliminated in the category at a threshold predetermined, the elimination of the category being triggered when the number of eliminated modes is greater than the threshold.
- One advantage is that the modes of the category are individually tested before making an elimination decision.
- the method comprises, for a category obtained, said category being associated with a criterion of grouping of prediction modes, a step of analysis of the content of the neighboring blocks already processed intended to provide a characteristic of the content and the elimination step eliminates the category when the characteristic and the grouping criterion are incompatible with each other.
- One advantage is that the entire category is eliminated when it can be established that it is not adapted to the content to be processed.
- the invention also relates to a decoding device adapted to implement the decoding method according to any one of the particular embodiments defined above.
- This decoding device may of course include the various characteristics relating to the decoding method according to the invention. Thus, the characteristics and advantages of this decoding device are the same as those of the decoding method, and are not detailed further.
- such a decoding device is included in a terminal.
- the invention also relates to a coding device adapted to implement the coding method according to any one of the particular embodiments defined above.
- This coding device may of course include the various characteristics relating to the coding method according to the invention. Thus, the characteristics and advantages of this coding device are the same as those of the coding method, and are not detailed further.
- such a coding device is included in a terminal or a server.
- Such terminal equipment or server may comprise a coding device and a decoding device according to the invention.
- the decoding method or the coding method according to the invention can be implemented in various ways, in particular in hard-wired form or in software form.
- the decoding method is implemented by a computer program comprising instructions for implementing the steps of a method as described above. , when this program is executed by a processor.
- These programs can use any programming language. They can be downloaded from a communication network and / or recorded on a computer-readable medium.
- the invention finally relates to recording media, readable by a processor, integrated or not integrated with the encoding device of a digital image and the decoding device of a digital image according to the invention, possibly removable, respectively memorizing a computer program implementing an encoding method and a computer program implementing a decoding method, as described above.
- FIG. 1 schematically shows the steps of obtaining, eliminating and updating the categories of prediction modes according to a first embodiment of the invention
- FIG. 2 schematically shows the steps of obtaining, eliminating and updating the categories of prediction modes according to a first embodiment of the invention
- Figure 3 schematically shows categories of prediction modes including common modes
- FIGS. 4A to 4G illustrate examples of categories of prediction modes implemented by the invention
- FIG. 5 illustrates an example of categories implemented in one embodiment of the invention
- FIG. 6 schematically shows the steps of a method of coding an image according to the invention
- FIG. 7 schematically illustrates the steps of a method of decoding an image according to the invention
- Figure 8 schematically shows an example of a hardware structure of a coding device according to the invention
- Figure 9 shows schematically an example of a hardware structure of a decoding device according to the invention.
- the aim of the invention is to improve the cost of signaling a prediction mode used to predict a block of pixels of an image to be encoded.
- the general principle of the invention is based on the establishment of categories of prediction modes in the initial set of the prediction modes in competition for the coding or the decoding of a current block of a digital image and on the elimination whole categories. Modes of a non-eliminated category that are common to eliminated categories are removed. This principle applies to both the encoder and the decoder.
- the number of prediction modes available for the coding of a block is reduced and, because the decoder knows how to build identically the same categories, the signaling can be done on the basis of the reduced number of modes. available for the prediction of the current block.
- the invention is here described in the context of an application to intra prediction modes defined in the HEVC standard.
- the invention is readily applicable to other compression standards and other modes of prediction.
- this mode is to linearly interpolate the pixels of the predictor block (or predicted block) from the reference pixels; the reference pixels being constructed from neighboring blocks previously reconstructed,
- this mode consists in assigning to the pixels of the predictor block the same value corresponding to an average of the reference pixels,
- the encoder or decoder obtains categories of prediction modes formed from the initial set of available prediction modes.
- categories may have common prediction modes. These categories were formed using one or more CR grouping criteria of the prediction modes.
- a grouping criterion is advantageously associated with a value or a range of values of a characteristic of the contents of a block.
- the prediction modes are grouped on the basis of at least one common characteristic, so that the prediction modes of the same category can be considered as the most suitable for predicting a block having the characteristic value. associated with them.
- the step E10 for obtaining categories comprises a substep E101 for reading information representative of these categories in a memory MEM, MEMO.
- this information is a word that concatenates the identifiers of the categories and a category identifier is associated with a memory space storing the identifiers of the prediction modes that it contains.
- the encoder and by symmetry the decoder systematically obtain the predetermined categories corresponding to a first categorization profile associated for example with a coding profile.
- the encoder and symmetry decoder can dynamically create categories to the using grouping criteria associated with particular values or ranges of characteristic values from this analysis.
- the step E10 comprises a substep E102 for obtaining characteristics CC of the content of the blocks already processed and a sub-step E103 for creating at least one category on the basis of at least one criterion grouping CR according to at least one of these characteristics.
- step E10 can implement substep E101 alone, substeps E102, E103 alone, or all substeps, dynamically constituted categories that complement the previously created one.
- the prediction modes are grouped according to a criterion associated with a physical characteristic of the content of the image.
- the physical characteristic considered is the orientation of the prediction mode and the prediction modes having orientations close to each other are grouped together in a first category CV, referred to as vertical, comprising the vertical angular mode A26 ( V) and its neighbors and a second category CH, called horizontal, comprising the horizontal angular mode A10 (H) and its neighbors.
- These categories are relevant for predicting a block of an image with clear directions, which are rather horizontal for the category CH or rather vertical for the category CV. This is the case for example of an image representing an urban scene with high buildings.
- the elimination step El i will eliminate one of the two categories on the basis of an elimination criterion based on a main orientation of the block.
- FIG. 1 Another example of a physical characteristic taken into account for the creation of a category is considered in relation to FIG. It is assumed that the encoder has detected in the content the presence of frank and contrasting contours with respect to the background, often in the horizontal or vertical directions, separated by very homogeneous areas, which corresponds to a text or logo inlay on a surface. real scene.
- the content of the image being coded thus includes a superposition of virtual elements on a real scene. It creates a first category grouping modes adapted to this type of scene known as "screen content".
- this CSC category it includes DMM (for "Depth Modeling Mode"), IBC (for "Intra Block Copy"), A10 horizontal angle mode (H), angular mode vertical A26 (V). It creates a second CA category comprising all the angular modes previously mentioned, including the horizontal mode and the vertical mode.
- the coder obtains in E10 three categories from the angular prediction modes.
- Category CA1 includes modes A26 (V) and A10 (H), category CA2 modes A2, A6, A14, A22 and category CA3 all others.
- the category CA1 allows very little finesse for the coding of a direction
- the category CA2 allows a little more
- CA3 category is the most accurate. It is understood that these three categories make it possible to adapt to the fineness required to represent the direction of the content of a block.
- this set of categories will therefore be chosen when it gives the best results, for example according to a rate-distortion criterion.
- rate-distortion criterion One can expect that it works well for an image whose area contains simple directions (vertical and horizontal), and another area would have much finer directions (finesse in the diagonals).
- the sub-step E103 for creating categories takes into account a grouping criterion based on a statistical analysis (E102) of the prediction modes used for neighboring blocks already processed (causal context).
- E102 statistical analysis
- the most frequently used modes are placed in a first category.
- a second category includes all modes of the initial set.
- FIG. 4E other categories are dynamically created by learning, of "machine learning” type, on the predicted modes for already processed blocks of the current image, with respect to causal descriptors. , preferably the most probable.
- the technique of "machine learning” or ML known to those skilled in the art and for example described in the book entitled “Machine Learning”, by Tom Mitchell, published by McGraw Hill in 1997.
- This technique allows, following a learning phase, to emit probabilities concerning the selection of modes for the current zone.
- ML is a known, complex process that we do not detail.
- the learning is repeated regularly, with a frequency that can vary. For example, to each coding unit (in English) or to each image or group of GoP images (for "Group of Pictures").
- a first predetermined category C0 ' said by default, which comprises the prediction modes DC, A10 (H), A26 (V) and PL.
- This category is obtained by the encoder and the decoder in E10. This makes it possible to mitigate a bad prediction resulting from ML learning.
- the categories can also be constructed hierarchically. Any tree structure can be adopted (binary, ternary, irregular, etc.). This structure simulates a kind of MPM by hierarchical levels.
- Horizontal mode A10 and vertical mode A26 are defined as the two most probable modes M PM1 and MPM2. They form the top-level category CH1.
- the second hierarchical category CH2 is derived by taking their neighbors with two jumps MPM 1-2, MPM 1 + 2, MPM2-2 and M PM2-2.
- the category CH3 level 3 is created by taking the neighbors to a jump of the modes of the previous category: MPM 1-1, MPM 1 + 1, MPM2-1, MPM2 + 1.
- the category CH1 includes few modes of prediction and brings a low accuracy in terms of angular direction, while the category CH3 offers a greater fineness of orientation.
- the invention covers different ways of eliminating a category.
- the elimination step Eli comprises a sub-step El l 1 for determining a mode representing a category.
- the representative may for example be the median or the average.
- the angular predictors are therefore ordered, and have a number that designates them.
- the average therefore designates the central angle of the category.
- the prediction mode representing a category is an additional prediction mode, in the sense that it is not part of the set of initial prediction modes. It can be obtained for example by calculating an average this time on the predictors themselves, that is to say the value of the pixels used to make the prediction, or any other function of these values.
- the vertical mode is chosen as the RV representative for the CV category and the horizontal mode as the HR representative for the CH category.
- Step E1 further comprises a sub-step E112 for eliminating the representative according to an elimination criterion.
- the representative is tested, eliminated or not based on at least one predictor elimination criterion.
- Step E113 is to eliminate the entire category once its representative has been eliminated. According to a variant illustrated in FIG. 2, no representative is designated, but the modes of predicting a category during a substep E114 are examined one by one and eliminated by a standard elimination criterion. fashion.
- CA3 to CA3 categories are heterogeneous. There is no representative for these categories.
- the modes are reviewed individually to decide on their eventual elimination.
- the criterion for eliminating the mode corresponds for example to the following rule: "An is eliminated if the blocks of its neighborhood have not selected mode An, An-1 or An + 1.”
- the category is eliminated if the rate of the modes eliminated in the category is higher than a predetermined threshold TH.
- a category is eliminated globally if the grouping criterion CR used to constitute it is incompatible with at least one physical characteristic of the content of the neighboring blocks already processed.
- the CSC category of FIG. 4C groups together prediction modes that have a high probability of being used for blocks derived from depth images or including non-natural content, for example of the computer screen type (for "Screen content” in English) or including overlay (in English). However, it is not adapted to the current block belonging to an area of the image for which an analysis of the neighboring blocks already processed indicates that the content has marked angular characteristics as well as textured areas.
- the CSC category is then eliminated with all its prediction modes.
- the elimination of the category C1 implies that the second category C2 contains only two prediction modes.
- Step E10 therefore consists in reading information representative of these categories in order to access the prediction modes, which are for example stored in a memory accessible to the coder.
- the category C1 includes the prediction modes DMM, IBC, H (A10), H1 (A9), H + 1 (A1), V (A26) ), Vl (A25), V + 1 (A27);
- the category C2i comprises the angular prediction modes A34 ... A27;
- the category C3i comprises the modes of angular prediction A25 ... Ai l;
- the category C4i comprises the angular prediction modes A9 ... A2;
- category C5i includes DC, H, V, PL.
- the non-eliminated categories are updated by removing the prediction modes they have in common with the eliminated categories. This leads us to suppress the A 1 (H + 1), A 25 (V-1), A 26 (V) and A 27 (V + 1) angular modes of category 1.
- the updated categories are as follows.
- Category C5i DC, H, V, PL
- the encoder selects a prediction mode is conventionally selected from the remaining 15. Conventionally, this choice is made on the basis of a rate-distortion or RDO (for Rate Distorsion O in English) which leads to retain the mode that optimizes the bit rate and coding quality.
- RDO Rate Distorsion O in English
- the selected mode is indicated in the bit stream. This mode is then reported.
- the selected prediction mode There are several known ways of signaling the selected prediction mode. According to a first option, it is indexed with respect to the 15 modes and its index is signaled. According to a second option, the category to which it belongs belongs among the remaining three, then its position or index in the category.
- the category Cl "groups prediction modes that are supposed to be relevant for predicting blocks comprising artificial content of the inlay or screen content type.
- an elimination criterion based on a structural analysis of the already treated neighborhood of the current block is used. For example, contour detection is carried out by Sobel type filtering, and the directions of these contours are determined, as described in chapters 4 and 5 of AK Jain's book entitled “Fundamentals of Digital Image Processing”. published by Prentice Hall in 1989. If neighboring blocks do not appear to include content of the types in this category, it is eliminated.
- a first default category CI 2 is set , which contains the prediction modes DC, H, V, PL.
- Step E10 comprises the dynamic creation E103 of three categories. To do this, she uses a machine learning technique (ML) in E102. The three categories are created taking into account the probability of occurrence of each mode.
- ML machine learning technique
- Categories can be, for example:
- Cl 2 category DC, H, V, PL;
- Category C2 2 A2 A8 A9;
- the categories are heterogeneous. We do not define a representative.
- a first criterion of elimination of the mode is expressed for example in the form of the following rule: An will be eliminated if the blocks of its neighborhood did not select mode An, An-1 or An + 1.
- a second criterion of elimination of the whole category then applies, if for example 50% of the modes of the category are eliminated by the first criterion. In this case, all the modes of the category are eliminated. In E12, the eliminated modes are removed from the remaining categories.
- FIG. 6 shows the steps of the method of coding an image sequence Ii,, to be encoded in the form of a stream of coded data STR according to a particular embodiment of the invention.
- a coding method is implemented by a coding device as described with reference to FIG. 8.
- An image sequence Ii, I2, to be coded is provided as input to the coding method.
- the coding method outputs a stream of coded STR or bit stream data, representative of the image sequence provided as input.
- the coding of the image sequence Ii, I2 is done image by image according to a coding order previously established and known to the decoder.
- the images may be coded in the time order I1, I2, or in another order, for example I1, I2.
- an image Ik to be coded of the image sequence I1, I2 is cut into blocks of maximum size.
- Each block of maximum size can be cut into smaller blocks.
- a block of maximum size is 32x32 pixels in size.
- Such a block of maximum size can be subdivided into square or rectangular sub-blocks, for example of size 16x16, 8x8, 4x4, 16x8, 8x16, ....
- a block b c to code an image Ik is selected according to a direction of travel of the predetermined image Ik.
- step E10 At least two types of prediction modes for coding the current block B c is obtained.
- step Eli categories are eliminated according to at least one elimination criterion and in E12, the categories that are not eliminated are updated by eliminating the modes common to the eliminated categories.
- step E13 a prediction mode for coding the current block b c is selected from the prediction modes of the updated categories, for example the prediction mode providing the best rate / distortion compromise for the current block is selected. .
- information identifying the selected prediction mode is encoded in a stream of coded data STR for the current block b c .
- information is encoded in the stream as an idx index encoded by a fixed or variable length code.
- code information representative of the category to which the prediction mode selected and information representative of a position of the prediction mode in this category.
- the encoder can advantageously choose the codes to signal the prediction mode selected according to the number of modes of predicting the updated categories rather than the number of prediction modes of the initial set. Signage is therefore made less expensive.
- a prediction residue RES is calculated from the current block b c and the predictor block P associated with the prediction mode selected during the step E13.
- the prediction residue RES is obtained by the difference between the current block to be coded b c and the predictor block P.
- the prediction residue RES is then transformed, for example by a DCT transform, and quantized. Quantified transformed residual coefficients are then obtained.
- a step E17 the quantized transformed residual coefficients are then coded by an entropy coding module, for example a CABAC coder, described in D. Marpe, H. Schwarz and T. Wiegand, "Context-based adaptive binary arithmetic". coding in the standard video compression H.264 / AVC "IEEE Transactions on Circuits and Systems for Video Technology (Volume: 13, Issue: 7), pages 620 - 636, July 2003, in the form of an STR encoded data stream .
- a prediction residue RES ' is reconstructed by applying to the quantized transformed coefficients inverse quantization and inverse transformation.
- a block of pixels REC is reconstructed by adding the reconstructed prediction residue RES 'to the predictor block P associated with the prediction mode selected in the step E13.
- an image Ik rec is reconstructed from the reconstructed blocks REC of the image and saved in a list of reference images to be used later as a reference when encoding subsequent images of the image sequence.
- FIG. 7 presents steps of a method of decoding a STR stream of coded data representative of an image sequence Ii,, I N to be decoded according to a particular embodiment of the invention.
- the data stream STR has been generated via the coding method presented in connection with FIG. 1.
- the data stream STR is provided at the input of a decoding device DEC, as described in connection with FIG. 9.
- the decoding method decodes the image-by-image flow. For each image to be decoded, the decoding method proceeds to decode the block-by-block image.
- an image Ik to be decoded from the image sequence Ii,, IN is cut into blocks of maximum size.
- Each block of maximum size can be cut into smaller blocks.
- a block of maximum size is 32x32 pixels in size.
- Such a block of maximum size can be subdivided into square or rectangular sub-blocks, for example of size 16x16, 8x8, 4x4, 16x8, 8x16, ....
- a block b c to be decoded of an image I k is selected according to a direction of travel of the predetermined image I k .
- steps E10 to E12 are performed according to a particular embodiment identical to the embodiment used during the encoding of the data stream STR. They comprise a set of sub-steps that have been described above according to various embodiments of the invention in relation with FIGS. 1 and 2.
- the data of the data stream STR corresponding to the block b c is decoded by an entropy decoding module to provide, on the one hand, syntax elements relating to the coding mode (or prediction mode) of the block current b c and secondly a group of prediction residual coefficients of the current block b c .
- the decoded syntax elements include in particular prediction mode information identifying for the current block b c a prediction mode among the prediction modes of the categories of prediction modes updated according to the invention. For example, if we assume that the updated categories are ordered, as well as the prediction modes that constitute them, such information is encoded in the stream as an idx index of the ordered list formed by the modes of prediction remaining.
- the prediction mode information is encoded as a category identifier and an idx position index in the identified category.
- a step D21 the prediction residual coefficients of the block b c undergo inverse quantization, then an inverse transformation to deliver a decoded prediction residue RES '.
- the current block b c is reconstructed from the predictor block P associated with the decoded prediction mode and the prediction residue RES 'associated with the current block b c which has been decoded from the coded data stream STR.
- the predictor block P has been calculated previously in step E10.
- a REC reconstructed block for the current block B c is obtained by adding the predictor P block prediction residual decoded RES.
- step D23 it is checked whether all the blocks of the image to be decoded have been decoded and reconstructed. In the negative case, the decoding method resumes in step E10 by proceeding to the next block according to a predetermined path of the image to be decoded.
- an image Ik rec is reconstructed from the reconstructed blocks REC and saved in a list of reference images for later use as a reference when decoding subsequent images of the image sequence.
- the encoding and decoding methods described above can be integrated into standard video encoders / decoders such as H.266, HEVC / H .265, AVC / H.264 or any type of proprietary video encoders / decoders.
- the coding and decoding methods according to the invention also apply to all types of coders / decoders of still images and more generally of signals using predictive coding using several prediction modes available.
- the coding and decoding methods have been previously described in the case of spatial block coding (intra coding). These methods are easily applicable to the case of coding a block according to other types of coding modes, inter, for example.
- the list of prediction modes constructed can thus comprise different types of coding modes (intra, inter, inter-layers, etc.). ⁇ 7.9 Coding device
- FIG. 8 shows the simplified structure of a coding device 100 adapted to implement the coding method according to any one of the particular embodiments of the invention.
- the coding device 100 is adapted to encode at least one image in the form of a coded data stream, said image being divided into blocks, at least two prediction modes being available for predicting a block of said image, said current block .
- the coding device 100 is notably configured to: obtain at least two categories of prediction modes from a set of prediction modes available to predict said current block, a predictor block associated with the available prediction mode, eliminate at least one category by function of at least one criterion of elimination,
- the steps of the coding method are implemented by computer program instructions.
- the coding device 100 has the conventional architecture of a computer and notably comprises a memory MEM, a processing unit UT, equipped for example with a microprocessor PROC, and controlled by the computer program PG stored in MEM memory.
- the computer program PG includes instructions for implementing the steps of the encoding method as described above, when the program is executed by the processor PROC.
- the code instructions of the computer program PG are for example loaded into a RAM before being executed by the processor PROC.
- the processor PROC of the processing unit UT implements in particular the steps of the coding method described above, according to the instructions of the computer program PG.
- the coding method is implemented by functional modules.
- the coding device COD furthermore comprises:
- an OBT obtaining module for obtaining at least two categories of prediction modes from a set of prediction modes available for predicting said current block, a predictor block associated with the available prediction mode, an elimination module ELIM for eliminating at least one category based on at least one elimination criterion,
- Update to update the categories not eliminated, by deleting the prediction modes common with the eliminated categories
- a selection module SEL for selecting among the updated categories a prediction mode for coding the current block
- a coding module COD for coding in the data stream, information identifying for said current block said prediction mode selected in the updated categories.
- the processing unit UT cooperates with the various functional modules described above and the memory MEM in order to implement the steps of the coding method.
- the various functional modules described above can be in hardware and / or software form.
- a functional module may include a processor, a memory, and program code instructions for implementing the function corresponding to the module when the code instructions are executed by the processor.
- a functional module can be implemented by any type of suitable encoding circuits, such as, for example and without limitation microprocessors, signal processing processors (DSP for Digital Signal Processor). , application-specific integrated circuits (ASICs for Application Specifies Integrated Circuit in English), FPGAs for Field Programmable Gate Arrays in English, logic unit wiring.
- such a device 100 can be integrated with a user terminal equipment ET.
- the device 100 is then arranged to cooperate at least with the following module of the terminal AND: a memory MEM 1 in which are stored in particular the categories of prediction modes; a data transmission / reception module E / R1, through which the encoded data stream STR is transmitted in a telecommunications network, for example a wired network or a radio network to one or more decoders.
- FIG. 9 shows the simplified structure of a decoding device 200 adapted to implement the decoding method according to any one of the particular embodiments of the invention.
- the decoding device 200 is adapted to decode an encoded data stream representative of at least one image, said image being divided into blocks, at least two prediction modes being available for predicting a block, called current block, of the image .
- the decoding device 200 is notably configured for:
- the decoding device 200 has the conventional architecture of a computer and notably comprises a memory MEMO, a processing unit UT0, equipped for example with a microprocessor PROCO, and driven by the PGO computer program stored in MEMO memory.
- the PGO computer program includes instructions for implementing the steps of the decoding method as described above, when the program is executed by the PROCO processor.
- the code instructions of the computer program PGO are for example loaded into a RAM before being executed by the processor PROCO.
- the PROCO processor of the processing unit UTO implements in particular the steps of the decoding method described above, according to the instructions of the computer program PGO.
- the decoding method is implemented by functional modules.
- the decoding device 200 further comprises:
- an OBT0 obtaining module for obtaining at least two categories of prediction modes from a set of prediction modes available for predicting said current block, a predictor block associated with the available prediction mode,
- an elimination module ELIM0 for eliminating at least one category according to at least one elimination criterion
- a update module MAJ0 for updating the categories that have not been eliminated, by deleting the prediction modes that are common with the eliminated categories
- a decoding module DC for decoding from the coded data stream, information identifying for said current block, a prediction mode among the updated categories,
- an RC reconstruction module for reconstructing said current block from the predictor block associated with said identified prediction mode.
- the processing unit UTO cooperates with the various functional modules described above and the memory MEMO in order to implement the steps of the decoding method.
- Such a functional module may include a processor, memory, and program code instructions for implementing the function corresponding to the module when the code instructions are executed by the processor.
- a functional module can implemented by any type of suitable encoding circuits, such as for example and without limitation microprocessors, signal processing processors (DSP for Digital Signal Processor in English), circuits application-specific embedded systems (ASICs for Application Specifies Integrated Circuit in English), FPGAs for Field Programmable Gate Arrays in English, logical unit wiring.
- such a device 200 can be integrated with an ET terminal equipment.
- the device 200 is then arranged to cooperate at least with the following module of the terminal AND: a memory MEM2 in which are stored in particular the categories of prediction modes; a data transmission / reception module E / R2, via which the bitstream STR is received from a telecommunications network, for example a wired network or a radio network from an encoder.
- a telecommunications network for example a wired network or a radio network from an encoder.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1656137A FR3053555A1 (fr) | 2016-06-29 | 2016-06-29 | Procede de codage d'une image numerique, procede de decodage, dispositifs, terminal et programmes d'ordinateurs associes |
PCT/FR2017/051608 WO2018002474A1 (fr) | 2016-06-29 | 2017-06-19 | Procédé de codage intra d'une image numérique et procédé de décodage correspondant |
Publications (1)
Publication Number | Publication Date |
---|---|
EP3479572A1 true EP3479572A1 (fr) | 2019-05-08 |
Family
ID=56842910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP17742476.9A Ceased EP3479572A1 (fr) | 2016-06-29 | 2017-06-19 | Procédé de codage intra d'une image numérique et procédé de décodage correspondant |
Country Status (7)
Country | Link |
---|---|
US (1) | US10812814B2 (fr) |
EP (1) | EP3479572A1 (fr) |
JP (1) | JP7059207B2 (fr) |
KR (1) | KR102415261B1 (fr) |
CN (1) | CN109417618A (fr) |
FR (1) | FR3053555A1 (fr) |
WO (1) | WO2018002474A1 (fr) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019245551A1 (fr) * | 2018-06-20 | 2019-12-26 | Realnetworks, Inc. | Prédiction intra-image dans des systèmes et des procédés de codage vidéo |
FR3098073B1 (fr) * | 2019-06-25 | 2021-09-24 | Fond B Com | Procédé de codage et de décodage d’une image d’une séquence vidéo et dispositif associé |
CN111614960B (zh) * | 2020-05-25 | 2022-09-02 | 绍兴文理学院 | 按图像内容特征进行帧级划分的快速编解码方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4142563B2 (ja) * | 2003-12-12 | 2008-09-03 | 株式会社エヌ・ティ・ティ・ドコモ | 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム |
JP4763422B2 (ja) * | 2004-12-03 | 2011-08-31 | パナソニック株式会社 | イントラ予測装置 |
JP2007189276A (ja) * | 2006-01-11 | 2007-07-26 | Victor Co Of Japan Ltd | 画像圧縮装置及び画像圧縮プログラム |
CN107105257B (zh) * | 2007-06-29 | 2020-08-28 | 威勒斯媒体国际有限公司 | 图像编码装置、图像编码方法、图像译码装置、图像译码方法 |
JP2009111691A (ja) * | 2007-10-30 | 2009-05-21 | Hitachi Ltd | 画像符号化装置及び符号化方法、画像復号化装置及び復号化方法 |
EP2304963B1 (fr) * | 2008-07-01 | 2015-11-11 | Orange | Procede et dispositif de codage d'images mettant en oeuvre une prediction amelioree, procede et dispositif de decodage, signal et programmes d'ordinateur correspondants |
US8295623B2 (en) * | 2008-10-14 | 2012-10-23 | France Telecom | Encoding and decoding with elimination of one or more predetermined predictors |
HUE047479T2 (hu) * | 2009-10-01 | 2020-04-28 | Sk Telecom Co Ltd | Eljárás és készülék képek változtatható méretû makroblokkok használatával történõ kódolására/dekódolására |
US8902978B2 (en) * | 2010-05-30 | 2014-12-02 | Lg Electronics Inc. | Enhanced intra prediction mode signaling |
US20120243606A1 (en) * | 2010-09-24 | 2012-09-27 | Nokia Corporation | Methods, apparatuses and computer programs for video coding |
US9148667B2 (en) * | 2013-02-06 | 2015-09-29 | Qualcomm Incorporated | Intra prediction mode decision with reduced storage |
JP6212890B2 (ja) * | 2013-03-22 | 2017-10-18 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム |
US11722677B2 (en) * | 2016-05-06 | 2023-08-08 | Interdigital Madison Patent Holdings, Sas | Method and system for decoder-side intra mode derivation for block-based video coding |
-
2016
- 2016-06-29 FR FR1656137A patent/FR3053555A1/fr active Pending
-
2017
- 2017-06-19 CN CN201780040372.9A patent/CN109417618A/zh active Pending
- 2017-06-19 EP EP17742476.9A patent/EP3479572A1/fr not_active Ceased
- 2017-06-19 KR KR1020187034557A patent/KR102415261B1/ko active IP Right Grant
- 2017-06-19 JP JP2018568769A patent/JP7059207B2/ja active Active
- 2017-06-19 US US16/092,962 patent/US10812814B2/en active Active
- 2017-06-19 WO PCT/FR2017/051608 patent/WO2018002474A1/fr unknown
Also Published As
Publication number | Publication date |
---|---|
KR102415261B1 (ko) | 2022-06-30 |
JP2019520005A (ja) | 2019-07-11 |
JP7059207B2 (ja) | 2022-04-25 |
KR20190022495A (ko) | 2019-03-06 |
US20190174138A1 (en) | 2019-06-06 |
FR3053555A1 (fr) | 2018-01-05 |
WO2018002474A1 (fr) | 2018-01-04 |
US10812814B2 (en) | 2020-10-20 |
CN109417618A (zh) | 2019-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2894421A1 (fr) | Procede et dispositif de decodage d'un flux video code suivant un codage hierarchique | |
FR2947134A1 (fr) | Procedes de codage et de decodages d'images, dispositifs de codage et de decodage, flux de donnees et programme d'ordinateur correspondants. | |
EP3314897B1 (fr) | Procédé de codage d'une image numérique, procédé de décodage, dispositifs, et programmes d'ordinateurs associés | |
FR3023112A1 (fr) | Procede de codage d'une image numerique, procede de decodage, dispositifs et programmes d'ordinateurs associes | |
FR2599577A1 (fr) | Procede de codage par transformation pour la transmission de signaux d'image. | |
EP3694209A1 (fr) | Procédé de décodage d'images, dispositif de décodage d'images, et programme d'ordinateur correspondant | |
EP3318061B1 (fr) | Procede d'encodage d'image et equipement pour la mise en oeuvre du procede | |
WO2010149914A1 (fr) | Procedes de codage et de decodage d'images, dispositifs de codage et de decodage, et programme d'ordinateur correspondants | |
EP2279621B1 (fr) | Procédé de codage, de décodage, codeur et décodeur | |
WO2018002474A1 (fr) | Procédé de codage intra d'une image numérique et procédé de décodage correspondant | |
EP3632103B1 (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 | |
EP2652952A1 (fr) | Procédés et dispositifs de codage et de décodage d'au moins une image mettant en oeuvre une sélection de pixels à prédire, programme d'ordinateur correspondant | |
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 | |
FR2955995A1 (fr) | Procede et dispositif de traitement d'une sequence video | |
FR3030976A1 (fr) | Procede de codage d'une image numerique, procede de decodage, dispositifs et programmes d'ordinateurs associes | |
FR2907989A1 (fr) | Procede et dispositif d'optimisation de la compression d'un flux video | |
EP2160837B1 (fr) | Sélection de fonctions de décodage distribuée au décodeur | |
EP3815369A1 (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 | |
FR2916931A1 (fr) | Procede de selection d'une donnee de codage et dispositif de codage implementant ledit procede | |
FR2957744A1 (fr) | Procede de traitement d'une sequence video et dispositif associe | |
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 | |
EP3456045B1 (fr) | Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image | |
FR2899744A1 (fr) | Procede et dispositif de codage et de decodage d'une image, notamment d'une sequence d'images video, signal correspondant et produit programme d'ordinateur | |
WO2020260843A1 (fr) | Procédé d'encodage et de décodage vidéo par signalisation d'un sous-ensemble de candidat | |
EP3854085A1 (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 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
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 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20180920 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL 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 RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) | ||
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20201030 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
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: 20231123 |