WO2014009644A1 - Procédé de codage video par prediction du partitionnement d'un bloc courant, procédé de décodage, dispositifs de codage et de décodage et programmes d'ordinateur correspondants - Google Patents

Procédé de codage video par prediction du partitionnement d'un bloc courant, procédé de décodage, dispositifs de codage et de décodage et programmes d'ordinateur correspondants Download PDF

Info

Publication number
WO2014009644A1
WO2014009644A1 PCT/FR2013/051625 FR2013051625W WO2014009644A1 WO 2014009644 A1 WO2014009644 A1 WO 2014009644A1 FR 2013051625 W FR2013051625 W FR 2013051625W WO 2014009644 A1 WO2014009644 A1 WO 2014009644A1
Authority
WO
WIPO (PCT)
Prior art keywords
partitioning
block
decoded
digital information
current block
Prior art date
Application number
PCT/FR2013/051625
Other languages
English (en)
Inventor
Joël JUNG
Kartik VISWANATHAN
Original Assignee
Orange
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orange filed Critical Orange
Priority to RU2015104039A priority Critical patent/RU2648571C2/ru
Priority to EP13744716.5A priority patent/EP2870761B1/fr
Priority to JP2015521044A priority patent/JP6282646B2/ja
Priority to BR112015000263-3A priority patent/BR112015000263B1/pt
Priority to ES13744716T priority patent/ES2700747T3/es
Priority to CN201380036255.7A priority patent/CN104429067B/zh
Priority to KR1020147036557A priority patent/KR102114641B1/ko
Priority to US14/413,977 priority patent/US10893268B2/en
Publication of WO2014009644A1 publication Critical patent/WO2014009644A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods 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/192Methods 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 the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Definitions

  • the present invention relates generally to the field of image processing, and more specifically to the coding of digital images and digital image sequences.
  • the invention can thus notably apply to the video coding implemented in the current video encoders (ITU-T / ISO MPEG HEVC) and their extensions.
  • the HEVC standard differs from the H.264 standard in that the partitioning implemented respects a tree structure called "quadtree". For this purpose, as represented in FIG.
  • a current image IN is partitioned a first time into a plurality of square blocks CTB-1, CTB 2 , CTB ,, ..., CTB L , for example of size 64 ⁇ 64 pixels. (1 ⁇ i ⁇ L). For a given CTB block, it is considered that this block constitutes the root of a coding tree in which:
  • a first level of sheets under the root corresponds to a first level of partitioning depth of the block CTB, for which the block CTBi has been partitioned a first time in a plurality of coding blocks
  • a second level of sheets under the first level of sheets corresponds to a second level of depth of partitioning block CTBi for which the block CTB, partitioned a first time is partitioned a second time in a plurality of coding blocks, ...
  • kth level of sheets under the k-1 th leaf level which corresponds to a kth level of block partitioning depth CTB, for which the block CTB, partitioned k-1 time is partitioned one last time in one plurality of coding blocks.
  • the iteration of the partitioning of the CTBi block is performed up to a predetermined partitioning depth level.
  • CB a plurality of coding blocks denoted CB ; CB 2 , ..., CB j , ..., CB M with 1 ⁇ j ⁇ M.
  • the size of said coding blocks can be chosen adaptively by means of a partitioning of blocks respecting a "quadtree" type tree, in which the sheets of the latter represent respectively the coding blocks CB-1, CB 2 , ..., CB j , ..., CB M obtained on different depth levels of partitioning.
  • this block constitutes the root of a prediction and transformation tree of said block, for example of the discrete cosine transform (DCT) type.
  • the prediction tree of a given block CB j is representative of the manner in which the block CB j is partitioned into a plurality of blocks PB-1, PB 2 , ..., PB t , ..., PB P , (1 ⁇ t ⁇ P) which are called prediction blocks.
  • prediction parameters such as, for example, the coding mode, the motion vectors, etc. are specified in a prediction unit (in English "prediction unit").
  • FIG. 1A represents, for example, the different partitioning modes of the coding block CB j considered, in the case of an INTER prediction of the latter.
  • These partitioning modes are four in number: the mode PART_2Nx2N corresponds to the absence of partitioning of the coding block CB j considered, which thus corresponds to a single prediction block PB-i,
  • the mode PART_2NxN corresponds to a horizontal partitioning of the coding block CB j considered in two rectangular prediction blocks PB and PB 2 ,
  • the mode PART_Nx2N corresponds to a vertical partitioning of the coding block CB j considered in two rectangular prediction blocks PB 1 and PB 2 ,
  • the mode PART_NxN corresponds to a partitioning of the coding block CB j considered in four square prediction blocks PB-i, PB 2 , PB 3 , PB 4 which are all the same size.
  • TB 2 After predictive coding of the coding block CB j in question, it may be again partitioned into a plurality of smaller blocks TB; TB 2 , ..., TB V , ..., TB Q (1 ⁇ V ⁇ Q) which are called transform blocks.
  • Such partitioning respects a "quadtree" type tree, called “residual quadtree", in which the leaves of the latter represent the TB coding blocks respectively ; TB 2 , ..., TB V , ..., TB Q obtained on different levels of partitioning depth.
  • FIG. 1A represents an example of partitioning of the coding block CB j that has been predicted using partitioning PART_NxN.
  • the blocks PB 2 and PB 3 of the coding block CB j are for example each partitioned into four smaller square blocks and all of the same size, respectively TB ; TB 2 , TB 3 , TB 4 and TB 5 , TB 6 , TB 7 , TB 8 .
  • Such partitioning is shown in dashed lines in FIG. 1A.
  • FIG. 1B represents an example of partitioning of a CTB block, considered that has been obtained after predictive coding and transform coding of the latter, as well as the corresponding partitioning tree.
  • FIG. 1B represents an example of partitioning of a CTB block, considered that has been obtained after predictive coding and transform coding of the latter, as well as the corresponding partitioning tree.
  • FIG. 1B represents an example of partitioning of a CTB block, considered that has been obtained after predictive coding and transform coding of the latter, as well as the corresponding partitioning tree.
  • the block CTB considered as the root of the coding tree, is represented in solid bold line
  • the coding blocks CB to CB 6 which on the one hand constitute the leaves of the coding tree
  • the roots of the "residual quadtree" tree are represented by a thin continuous line
  • 6 which constitute the leaves of the tree "residual quadtree" are represented in dashed line.
  • a first partitioning depth level NP1 which contains only coding blocks, such as the blocks CB 1 to CB 4 ,
  • a second level of NP2 partitioning depth which contains:
  • ⁇ coding blocks such as blocks 5 CB CB 8 obtained after partitioning the CB-block i and CB blocks 9 CB 2 obtained after partitioning the block CB 4
  • ⁇ transform blocks such as blocks TBi to
  • NP3 partitioning depth which contains:
  • ⁇ coding blocks such as blocks CB 3 to
  • ⁇ of transform blocks such as blocks 5 TB TB 8 obtained after partitioning the CB block 7, TB blocks 9 to TB-
  • a HEVC compatible coder for a CTB block considered, several different partitionings of the latter are put in competition with the coder, that is to say respectively different combinations of partitioning iterations, in order to select the best partitioning. that is, the one that will optimize the coding of the CTB block, considered according to a predetermined coding performance criterion, for example the cost rate / distortion or a compromise efficiency / complexity, which are criteria well known to those skilled in the art.
  • a sequence of digital information such as for example a sequence of bits representative of this optimal partitioning, is transmitted in a stream intended to be read by a video decoder.
  • Such a stream also includes:
  • residual data which are the coefficients of the quantized residual block and possibly, during an Inter mode coding, residual data of the motion vectors,
  • coding parameters which are representative of the coding mode used, in particular:
  • ⁇ information specifying the type of prediction (orientation, reference image component, ...);
  • the partitioning into a plurality of sub-blocks of a block already coded and then decoded resembles the partitioning of the block considered CTB, to be coded.
  • the digital information sequence representative of the partitioning of the CTB block to be encoded also resembles the digital information sequence representative of the partitioning of the block already coded and then decoded.
  • the digital information sequence representative of the partitioning of the CTBi block to be encoded contains a significant number of digital information whose signaling cost is high, which reduces the coding performance.
  • One of the aims of the invention is to overcome disadvantages of the state of the art mentioned above.
  • an object of the present invention relates to a method for encoding a current image previously partitioned in blocks, implementing, for a current block to be encoded, the steps of:
  • Such a coding method is remarkable in that it comprises the steps of:
  • Such an arrangement thus makes it possible to encode only the difference between the partitioning of the current block and the reference partitioning, that is to say the partitioning of the block already coded and then decoded, which substantially reduces the number of digital information which will be useful, in decoding, in the reconstruction of the partitioning of the current block.
  • the coding method comprises a step of transmitting to a decoder a data signal comprising digital information indicating whether the partitioning prediction step has been implemented or not.
  • Such an arrangement allows any current or future encoders to have the possibility of enabling or disabling prediction of the partitioning of the current block, for a sequence of images considered, for an image considered or for a portion of image ("slice" in English) considered.
  • a method for predicting Partitioning is particularly flexible because it is adaptable to the current video context.
  • the data signal comprises the residual digital information encoded as mentioned above.
  • Such an arrangement makes it possible to signal to the decoder, with a view to the reconstruction of the current block, the result of the difference between the partitioning of the current block and the reference partitioning.
  • the predetermined comparison criterion is as follows:
  • the depth level of partitioning of the current block is very different from the depth level of partitioning of the block already encoded, then decoded.
  • the comparison criterion is as follows:
  • ⁇ no residual digital information is determined if a sub-block resulting from the partitioning of the current block and a corresponding sub-block resulting from the partitioning of the block already coded and then decoded have not been partitioned again,
  • ⁇ a residual digital information is determined if a sub-block from the current block partitioning was partitioned again and whether a corresponding sub-block resulting from partitioning of the already coded block was partitioned then decoded again or not.
  • the comparison criterion is as follows:
  • a residual digital information is determined if a sub-block resulting from the partitioning of the current block and a corresponding sub-block resulting from the partitioning of the block already coded and then decoded have not been partitioned again,
  • ⁇ residual digital information is determined if a sub-block resulting from the partitioning of the current block has been partitioned again and if a corresponding sub-block resulting from the partitioning of the coded and then decoded block has not been partitioned again.
  • the coded and then decoded block has a pre-identified position:
  • the invention makes it possible to implement the invention as part of the coding of a two-dimensional image or image part using both an Intra prediction mode and an Inter prediction mode.
  • the other picture already decoded may be an image before or after the current picture.
  • first and second image components are not image pieces but in the sense of the invention represent two different views of a complete image.
  • Such first and second image components are for example respectively a texture component and its associated depth component, as implemented in the new video coding format, called MVD (for "Multiview Video + Depth”). which is the subject of current developments.
  • MVD Multiview Video + Depth
  • first and second image components could respectively be a depth component and its associated texture component.
  • first and second image components can of course be considered.
  • first and second image components can be respectively:
  • the first image component can be a Y component
  • the second image component can be a U component
  • the third image component can be a V component.
  • the invention also relates to a coding device for a current image previously cut into blocks, intended to implement the aforementioned coding method.
  • a coding device for a current image previously cut into blocks, intended to implement the aforementioned coding method.
  • Such a device comprises, for a current block to code,
  • partitioning means for partitioning the current block at least once into several sub-blocks
  • Such a coding device is remarkable in that it comprises:
  • the prediction means for predicting the partitioning of the current block with respect to the partitioning of a block already encoded and then decoded and represented in the form of a second sequence of digital information, the prediction means being able to compare first and second sequences between them or corresponding partitions between them, then to determine residual digital information representative of the comparison, according to a predetermined comparison criterion,
  • the invention also relates to a data signal representative of an image coded according to the aforementioned coding method. Such a signal is remarkable in that it carries the residual digital information encoded, as mentioned above.
  • the invention also relates to a method for decoding a data signal representative of a current image previously partitioned in blocks and which has been coded, implementing, for a current block to be decoded, a step consisting in reconstructing the partitioning beforehand. of a decoded block.
  • Such a decoding method is remarkable in that it comprises the steps of:
  • Such a decoding technique makes it possible, on reception and reading of the coding information, and more particularly residual digital information representative of the difference between the partitioning of the current block and the reference partitioning, of reconstructing the current block by applying an inverse prediction of that carried out according to the aforementioned coding method.
  • the invention also relates to a decoding device for implementing the aforementioned decoding method, said decoding device being adapted to the decoding of a data signal representative of a current image previously partitioned in blocks and which has been coded, and comprising, for a current block to be decoded, reconstruction means able to reconstruct previously the partitioning of a decoded block.
  • Such a decoding device is remarkable in that it comprises:
  • the abovementioned reconstruction means being able to reconstruct the partitioning of the current block from the reconstructed partitioning of the decoded block and the residual digital information identified.
  • the invention also relates to a computer program comprising instructions for implementing the coding method or the decoding method according to the invention, when it is executed on a computer.
  • This program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other form desirable shape.
  • the invention also relates to a computer-readable recording medium on which a computer program is recorded, this program comprising instructions adapted to the implementation of the coding or decoding method according to the invention, as described. above.
  • the recording medium may be any entity or device capable of storing the program.
  • the medium may include storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a magnetic recording means, for example a USB key or a hard disk.
  • the recording medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed via an electrical or optical cable, by radio or by other means.
  • the program according to the invention can be downloaded in particular on an Internet type network.
  • the recording medium may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the aforementioned coding or decoding method.
  • the aforementioned coding device and corresponding computer program have at least the same advantages as those conferred by the coding method according to the present invention.
  • FIG. 1A represents the successive partitioning operations of a block according to the HEVC technology
  • FIG. 1B represents an example of partitioning of a coding block that was obtained after prediction and transformation of the latter, as well as the corresponding prediction and transformation tree,
  • FIG. 2 represents steps of the coding method according to the invention
  • FIG. 3 represents an embodiment of a coding device according to the invention
  • FIG. 4A represents an exemplary partitioning of a current block to be coded, as well as the representative tree of the partitioning performed,
  • FIG. 4B represents an example of partitioning of a block already coded and then decoded, as well as the tree representing the partitioning performed
  • FIG. 5 represents a data signal obtained by the coding method according to the invention
  • FIGS. 6A to 6C respectively represent several possible pre-identified positions in which the coded and then decoded block may be located
  • FIG. 7 represents steps of the decoding method according to the invention.
  • FIG. 8 represents an embodiment of a decoding device according to the invention.
  • the coding method according to the invention is for example implemented in a software or hardware way by modifications of an encoder initially conforming to the standard HEVC 2D.
  • the coding method according to the invention is represented in the form of an algorithm comprising steps C1 to C7 as represented in FIG.
  • the coding method according to the invention is implemented in a coding device CO represented in FIG.
  • a known image is partitioned in a manner known per se.
  • Such a partitioning step is implemented by a first partitioning software module MP1 shown in FIG. 3.
  • block means coding unit (coding unit).
  • coding unit coding unit
  • This last terminology is notably used in the HEVC standard, for example in the document "B. Bross, W.-J. Han, J.-R. Ohm, G. J. Sullivan, and T. Wiegand, "High efficiency video coding (HEVC) text specification draft 6," JCTVC-H1003 document of JCT-VC, San Jose CA, USA, February 2012.
  • such a coding unit groups together sets of pixels of rectangular or square shape, also called blocks, macroblocks, or sets of pixels having other geometrical shapes.
  • a CTB block U of the current image IC j is selected as the current block to be encoded.
  • the selected block CTB U is partitioned into a plurality of coding sub-blocks Bi, B 2 , ..., B f , ..., B G with 1 ⁇ f ⁇ G.
  • Such partitioning respects a "quadtree" type tree, as described above in the description. Other types of tree can of course be considered.
  • the partitioning of the CTB block U is performed at least once until a k- level of partitioning depth which is less than or equal to a predetermined level k P of partitioning depth is obtained. (ki> 0, k P > 0).
  • Said partitioning is implemented by a second partitioning software module MP2 shown in FIG. 3.
  • Steps C2 to C3 are repeated for all blocks CTB- ,, CTB 2 , ..., CTB S.
  • FIG. 4A An example of partitioning of the CTB block U is shown in FIG. 4A.
  • the k- level of partitioning depth is determined as the level for which the final partitioning obtained for the selected CTB block U optimizes for example a coding performance criterion, in particular the rate / distortion cost. .
  • this block constitutes the root of an encoding tree AC in which:
  • a first level of sheets under the root corresponds to a first level of partitioning depth of the block CTB U for which the block CTB U has been partitioned a first time in a plurality of coding sub-blocks, for example 4 sub-blocks coding Bi, B 2 , B 3 , B 4 ,
  • a second level of sheets under the first level of sheets corresponds to a second level of block partitioning depth CTB U for which the first partitioned CTB block U is partitioned a second time in a plurality of coding sub-blocks, for example 4 coding sub-blocks B 5 , B 6 , B 7 , B 8 resulting from the partitioning of the block B
  • S sequences of bits Si, S 2 ,..., S u ,..., Ss are produced. representative respectively of the partitions made on the CTB-i, CTB 2 , CTB U , ..., CTB S blocks. It is also proceeded to the production of a decoded version of the blocks CTB-i, CTB 2 , CTB U , ..., CTB S , which are denoted CTBD 1; CTBD 2 , CTBD U , ..., CTBD S in FIGS. 2 and 3. Such decoded blocks are intended to be reused by the coder CO to encode a next image of the SQ sequence.
  • Such a bit sequence production step is implemented by a PSB data processing software module shown in FIG. 3.
  • the aforementioned decoding step is implemented by the decoding module MD also shown in FIG. 3.
  • the partitioning of the current block CTB U is predicted with respect to the partitioning of a block already coded and then decoded which is chosen from a plurality of candidate blocks already coded and then decoded CTBr- ⁇ , CTBr 2 , CTBn, ..., CTBr L with 1 ⁇ i ⁇ L
  • Such a prediction step C5 is implemented in a predictive software module MPR shown in FIG. 3.
  • the block already coded then decoded which is selected is for example the block CTBn.
  • the chosen block CTBn has been partitioned beforehand into a plurality of coding sub-blocks ⁇ , Br 2 ,..., Br f ,..., Br G with 1 ⁇ f GG.
  • Such partitioning respects a "quadtree" type tree, as described above in the description.
  • the partitioning of the CTBn block is performed at least once until a level k 2 of partitioning depth is obtained which is less than or equal to a predetermined level k P of partitioning depth (k 2 > 0, k> P > 0).
  • Said partitioning is implemented by the second partitioning software module MP2 shown in FIG. 3.
  • FIG. 4B An example of partitioning of the CTBn block is shown in FIG. 4B.
  • the k 2 level of partitioning depth is determined as the level for which the final partitioning obtained for the selected CTBn block optimizes for example a coding performance criterion, in particular the rate / distortion cost.
  • this block constitutes the root of a coding tree ACr in which:
  • a first level of sheets under the root corresponds to a first level of partitioning depth of the block CTBn for which the block CTBn has been partitioned a first time in a plurality of coding sub-blocks, for example 4 coding sub-blocks ⁇ , Br 2 , Br 3 , Br 4 ,
  • a second level of sheets under the first level of sheets corresponds to a second level of block partitioning depth CTBn for which the partitioned CTBn block a first time is partitioned a second time in a plurality of coding sub-blocks, for example 4 coding sub-blocks Br 5 , Br 6 , Br 7 , Br 8 from the partitioning of the
  • a third level of sheets under the second level of sheets corresponds to a third level of block partitioning depth CTBn for which the second partitioned block CTBn is partitioned a third time in a plurality of coding sub-blocks, for example 4 coding sub-blocks Br 9 , Bn 0 , Bru, Bn 2 resulting from the partitioning of the sub-block Br 7 .
  • the partitioning of the coded and then decoded block CTBn is represented as a sequence of bits Sn.
  • the table below represents an example of a content of the sequence Sn representative of the partitioning of the coded and then decoded block CTBn and of a content of the sequence S u representative of the partitioning of the current block CTB U.
  • the first bit "1" indicates a partitioning of the CTBn block into four smaller sub-blocks Bn, Br 2 , Br 3 , Br 4 ,
  • the third bit "0" indicates a lack of partitioning of the sub-block Br 5 .
  • the fourth bit "0" indicates a lack of partitioning of the sub-block Br 6 .
  • the fifth bit "1" indicates a partitioning of the sub-block Br 7 into four smaller sub-blocks Br 9 , Br, Bru, Bn 2 ,
  • the sixth bit "0" indicates a lack of partitioning of the sub-block Br 9 .
  • the eighth bit "0" indicates a lack of partitioning of the sub-block Br-n
  • the ninth bit "0" indicates a lack of partitioning of the sub-block Bn 2 .
  • the tenth bit "0" indicates a lack of partitioning of the sub-block Br 8 .
  • the eleventh bit "0" indicates a lack of partitioning of the sub-block Br 2 .
  • the twelfth bit "0" indicates a lack of partitioning of the sub-block Br 3 .
  • the thirteenth bit "0" indicates a lack of partitioning of the sub-block Br 4 .
  • the first bit "1" indicates a partitioning of the block CTB U in four sub-blocks Bi, B 2 , B 3 , B 4 ,
  • the second bit "1" indicates a partitioning of the block B into four sub-blocks B 5 , B 6 , B 7 , B 8
  • the third bit "0" indicates a lack of partitioning of the sub-block B 5
  • the fourth bit "0" indicates a lack of partitioning of the sub-block B 6 .
  • the fifth bit "0" indicates a lack of partitioning of the sub-block B 7 .
  • the sixth bit "0" indicates a lack of partitioning of the sub-block B 8 .
  • the seventh bit "0" indicates a lack of partitioning of the sub-block B 2 .
  • the eighth bit "0" indicates a lack of partitioning of the sub-block B 3 .
  • the ninth bit "0" indicates a lack of partitioning of the sub-block B 4 .
  • the last three bits of the sequence S u are shifted at the end of the latter, so as to indicate a partitioning difference between the sub-block B 7 and the sub-block Br 7 of the block C- ⁇ .
  • Said prediction step C5 represented in FIG. 2 comprises:
  • the prediction step C5 is repeated for the set of sequences Si to Ss so as to obtain sequences S'i to S's representative of the predicted partitioning of the current blocks CTBi to CTB S.
  • the implementation or not of said prediction step in a HEVC-compatible coder is signaled by digital information such as a "1" bit to indicate that the partitioning prediction has been made, or a "0" bit. to indicate that partitioning prediction has not been made.
  • digital information such as a "1" bit to indicate that the partitioning prediction has been made, or a "0" bit. to indicate that partitioning prediction has not been made.
  • a bit can be signaled by sequence images, or by image, or by image portion ("slice" in English).
  • the residual information of a first value is a bit of value "0" and the residual information of a second value is a bit of value "1".
  • the T1 table includes:
  • a first line indicating that if at equal level of partitioning depth, a sub-block of the current block CTB U and a corresponding sub-block of the coded then decoded block CTBn have been partitioned identically (bit at "1"), the value residual information from the comparison is a bit at "0";
  • a second line indicating that if at equal level of partitioning depth, neither a sub-block of the current block CTB U , nor a corresponding sub-block of the coded and then decoded block CTBn has been partitioned (bit at "0") , the value of the residual information resulting from the comparison is a bit at "0";
  • the comparison of partitions with equal level of partitioning depth is performed in a predetermined order of scheduling of the sub-blocks of the current block CTB U and of the encoded then decoded block CTBn, such as for example the well-known "raster scan" order of the skilled person.
  • the residual bit sequence representative of the predicted partitioning of the current block CTB U is as follows:
  • bit value convention may be used in the T1 table, such as the one below:
  • the residual information of a first value is a bit of value "0" and the residual information of a second value is a bit of value "1", followed by a bit indicating the location of the partitioning different from the sub-block of the current block CTB U or the block CTBn encoded then decoded.
  • the T2 table includes:
  • the residual bit sequence representative of the predicted partitioning of the current block CTB U is as follows:
  • the first bit "0" indicates the same partitioning of the blocks CTBn and CTB U in four sub-blocks, in consideration of the first level of depth of partitioning,
  • the second bit "0" indicates the same partitioning of the first sub-block at the top left of the blocks CTBn and CTB U , in consideration of the second level of depth of partitioning,
  • the third bit "1" indicates a partitioning of a sub-block of the first sub-block located at the top left of the coded and then decoded block CTBn which does not appear in the corresponding sub-block of the current block CTB U , in considering the third level of partitioning depth,
  • the fifth bit "0" indicates a lack of partitioning of the sub-block Br 5 .
  • the sixth bit "0" indicates a lack of partitioning of the sub-block Br 6
  • the seventh bit "1" indicates a partitioning of the sub-block Br 7 into four sub-blocks
  • the eighth bit "0" indicates a lack of partitioning of the sub-block Br 8 .
  • bit value convention may be used in the T2 table, such as the one below:
  • Table T3 includes:
  • the residual bit sequence representative of the predicted partitioning of the current block CTB U is as follows: According to a fourth comparison criterion, said comparison is performed according to the table T4 below:
  • Table T4 includes:
  • the residual bit sequence representative of the predicted partitioning of the current block CTB U is as follows:
  • a fifth comparison criterion which is a combination of the above-mentioned second and third comparison criteria, said comparison is performed according to the T5 table below, starting from the second level of partitioning depth to the level of partitioning depth k P which is equal to 4 in the example described:
  • Table T5 uses the same conventions as Table T3. It differs from the latter by an additional column entitled "depth level bit" which indicates that in the case where at equal level of partitioning depth, a sub-block of the current block CTB U and a corresponding sub-block of the block coded and then decoded CTBn have been partitioned differently, the depth level bit is set to "1" to explicitly indicate a difference in partitioning between a sub-block of the current CTB U and a sub-block of the encoded and then decoded block CTBn.
  • the residual bit sequence representative of the predicted partitioning of the current block CTB U is as follows:
  • the partitioning of the sub-block Bi of the block CTB U is the same as the partitioning of the sub-block Bn of the block CTBn,
  • the second depth level bit is "1" since at the third level of partitioning depth, the sub-block B 7 of the block CTB U is not partitioned, while the sub-block Br 7 of the block CTBn is partitioned into four sub-blocks Br 9 to Br 2 ,
  • the third depth level bit is "0", since none of the CTB U and CTBn blocks has reached the fourth level of partitioning depth k P.
  • the sequence S ' u representative of the predicted partitioning of the current block CTB U is encoded during a step C6.
  • Such an encoding step is implemented by an entropic coder CE represented in FIG.
  • the construction of the data signal F is implemented in a software module CF of flow construction, as shown in FIG.
  • the data signal F is then transmitted by a communication network (not shown) to a remote terminal.
  • the current image ICj is for example a two-dimensional image.
  • the coded and decoded block CTBn is selected in a part of the current image ICj which has already been coded and then decoded. Such a selection is made from, for example, four neighboring blocks of the current block CTB U which are the following:
  • the block CTBr y located above the current block CTB U
  • the block CTBr z located above and to the right of the current block CTB U.
  • the index of the selected block CTBn is transmitted in the data signal F.
  • the image ICj is always a two-dimensional image.
  • the block CTBn coded then decoded is selected in an image t which has already been coded and then decoded and which precedes for example immediately the current image ICj.
  • the block CTBn coded then decoded is located in the image l ref for example at the same position as the current block CTB U in the current image ICj.
  • the index of the block CTBn coded then decoded is transmitted in the data signal F.
  • an encoded and then decoded block can, in the same way as in the example of FIG. 6A, be selected in a part of the current image ICj which has already been encoded then decoded, instead of being selected in the aforementioned image t.
  • the coded then decoded block that is selected denoted CTB'n in FIG. 6B, is the block located above and to the right of the current block CTB U.
  • the index of the block CTB'n selected is transmitted in the data signal F.
  • the image ICj is a three-dimensional image comprising a first image component C j and a second image component Cl 2 j.
  • the first-Cl ij image component is acquired in association with the second image component Cl 2 j.
  • the coded and then decoded block CTBn is selected in the first image component C j .
  • Such a component is considered to be the reference image component, that is to say which has been previously coded and then decoded, to be used for the coding of the second image component C1 2j in which the block is located. current CTB U.
  • the index of the block CTBn coded then decoded is transmitted in the data signal F.
  • Such first and second image components are for example respectively a texture component and its associated depth component, as implemented in the new video coding format, called MVD (for "Multiview Video + Depth”). which is the subject of current developments.
  • MVD Multiview Video + Depth
  • first and second image components could respectively be a depth component and its associated texture component.
  • first and second image components can of course be considered.
  • first and second image components can be respectively:
  • the first image component can be a Y component
  • the second image component can be a U component
  • the third image component can be a V component.
  • the decoding method according to the invention is for example implemented in a software or hardware way by modifying a decoder initially conforming to the standard HEVC 2D.
  • the decoding method according to the invention is represented in the form of an algorithm comprising steps D1 to D2 as represented in FIG. 7.
  • the decoding method according to the invention is implemented in a decoding device DO represented in FIG. 8, which is adapted to receive the data signal F delivered by the coder CO of FIG. 3.
  • step D1 shown in FIG. 7 the sequence S ' u , the CM coding mode, the texture residuals TR, the residuals of FIG. MVR motion vectors associated with the current block CTB U.
  • Such a step is implemented by a selection software module MS, as shown in FIG. 8, which is adapted to place a read pointer in the signal F at the beginning of the data of the sequence S ' u .
  • step D2 shown in FIG. 7 it is conventionally performed to a sub-step D21 of entropic decoding of the CM coding mode, texture residuals TR, residuals of movement vectors MVR associated with the current block CTB U .
  • Such a step is implemented by an entropic decoding module DE, as shown in FIG. 8.
  • a sub-step D22 for reconstructing the sequence S u representative of the partitioning of the current block CTB U is carried out , starting from the sequence Sr, representative of the partitioning previously reconstructed. of the decoded block CTBr, and of the sequence S ' u read.
  • the sequence Sr was previously reconstructed by an inverse prediction module MPRI as represented in FIG. 8.
  • such a reconstruction consists in making an inverse prediction of that carried out at the prediction step C5 of FIG. 2.
  • the sequence Sr representative of the previously reconstructed partitioning of the decoded block CTBr, is added to the sequence S ' u read, thus delivering the reconstructed sequence S u representative of the partitioning of the current block CTB U.
  • Substeps D21 and D22 can be performed at the same time or alternately, in any order.
  • the steps D1 and D2 are repeated for all the sequences S'i to S's identified in the data signal F.

Abstract

L'invention concerne un procédé de codage d'une image courante (IC j) partitionnée préalablement en blocs, mettant en œuvre, pour un bloc (CTB u) courant à coder, les étapes consistant à : - partitionner (C3) au moins une fois le bloc courant en plusieurs sous-blocs, - représenter (C4) le partitionnement du bloc courant sous la forme d'une première séquence d'informations numériques. Le procédé de codage selon l'invention comprend les étapes consistant à : - prédire (C5) le partitionnement du bloc courant par rapport au partitionnement d'un bloc déjà codé puis décodé (CTBrj) et représenté sous la forme d'une deuxième séquence d'informations numériques, par comparaison (C51) des première et deuxième séquences entre elles ou bien desdits partitionnements correspondants entre eux, puis par détermination (C52) d'informations numériques résiduelles représentatives de ladite comparaison, selon un critère de comparaison prédéterminé, - encoder (C6) lesdites informations numériques résiduelles déterminées.

Description

PROCÉDÉ DE CODAGE VIDEO PAR PREDICTION DU
PARTITIONNEMENT D'UN BLOC COURANT, PROCÉDÉ DE DÉCODAGE, DISPOSITIFS DE CODAGE ET DE DÉCODAGE ET PROGRAMMES
D'ORDINATEUR CORRESPONDANTS
Domaine de l'invention
La présente invention se rapporte de manière générale au domaine du traitement d'images, et plus précisément au codage d'images numériques et de séquences d'images numériques.
L'invention peut ainsi notamment s'appliquer au codage vidéo mis en œuvre dans les codeurs vidéo actuels, à venir (ITU-T/ISO MPEG HEVC) et leurs extensions.
Arrière-plan de l'invention
La norme HEVC actuellement en cours d'élaboration et décrite dans le document « B. Bross, W.-J. Han, J.-R. Ohm, G. J. Sullivan, and T. Wiegand, "High efficiency video coding (HEVC) text spécification draft 6," document JCTVC-H1 003 of JCT-VC, San José CA, USA, February 201 2» est similaire à la norme précédente H.264, en ce sens qu'elle utilise un partitionnement par blocs de la séquence vidéo. La norme HEVC se distingue toutefois de la norme H.264 par le fait que le partitionnement mis en œuvre respecte une structure arborescente appelée « quadtree ». A cet effet, comme représenté sur la figure 1 A, une image courante I N est partitionnée une première fois en une pluralité de blocs carrés CTB-i , CTB2, CTB,, ... , CTBL, par exemple de taille 64x64 pixels (1 <i≤L). Pour un bloc CTB, donné, il est considéré que ce bloc constitue la racine d'un arbre de codage dans lequel :
- un premier niveau de feuilles sous la racine correspond à un premier niveau de profondeur de partitionnement du bloc CTB, pour lequel le bloc CTBi a été partitionné une première fois en une pluralité de blocs de codage,
- un deuxième niveau de feuilles sous le premier niveau de feuilles correspond à un deuxième niveau de profondeur de partitionnement de bloc CTBi pour lequel le bloc CTB, partitionné une première fois est partitionné une deuxième fois en une pluralité de blocs de codage, ...
- ... un kième niveau de feuilles sous le k-1 ième niveau de feuilles qui correspond à un kième niveau de profondeur de partitionnement de bloc CTB, pour lequel le bloc CTB, partitionné k-1 fois est partitionné une dernière fois en une pluralité de blocs de codage.
Dans un codeur compatible HEVC, l'itération du partitionnement du bloc CTBi est effectuée jusqu'à un niveau de profondeur de partitionnement prédéterminé.
A l'issue des partitionnements successifs précités du bloc CTB,, comme représenté à la figure 1 A, ce dernier est partitionné au final en une pluralité de blocs de codage notés CB ; CB2,..., CBj, ..., CBM avec 1 <j≤M.
La taille desdits blocs de codage peut être choisie de façon adaptative à l'aide d'un partitionnement de blocs respectant une arborescence de type « quadtree », dans laquelle les feuilles de cette dernière représentent respectivement les blocs de codage CB-i, CB2, ..., CBj,..., CBM obtenus sur différents niveaux de profondeur de partitionnement.
En référence à la figure 1 A, pour un bloc CBj donné, il est considéré que ce bloc constitue la racine d'un arbre de prédiction et de transformation dudit bloc, par exemple de type transformée en cosinus discrète (DCT). L'arbre de prédiction d'un bloc CBj donné est représentatif de la manière dont est partitionné le bloc CBj en une pluralité de blocs PB-i , PB2,..., PBt, ..., PBP, (1 <t≤P) lesquels sont appelés blocs de prédiction. Pour un bloc de prédiction considéré PBt, des paramètres de prédiction, tels que par exemple le mode de codage, les vecteurs de mouvement, etc sont spécifiés dans une unité de prédiction (en anglais « prédiction unit »).
Il existe différents modes de partitionnement d'un bloc de codage CBj considéré. La figure 1A représente par exemple les différents modes de partitionnement du bloc de codage CBj considéré, dans le cas d'une prédiction INTER de ce dernier. Lesdits modes de partitionnement sont au nombre de quatre : - le mode PART_2Nx2N correspond à l'absence de partitionnement du bloc de codage CBj considéré qui correspond ainsi à un unique bloc de prédiction PB-i ,
- le mode PART_2NxN correspond à un partitionnement horizontal du bloc de codage CBj considéré en deux blocs de prédiction rectangulaires PB et PB2,
- le mode PART_Nx2N correspond à un partitionnement vertical du bloc de codage CBj considéré en deux blocs de prédiction rectangulaires PB1 et PB2,
- le mode PART_NxN correspond à un partitionnement du bloc de codage CBj considéré en quatre blocs de prédiction carrés PB-i , PB2, PB3, PB4 qui ont tous la même taille.
Après codage prédictif du bloc de codage CBj considéré, ce dernier peut être à nouveau partitionné en une pluralité de blocs plus petits TB ; TB2, ..., TBV, ..., TBQ (1 <V≤Q) qui sont appelés blocs de transformée. Un tel partitionnement respecte une arborescence de type « quadtree », appelée « residual quadtree », dans laquelle les feuilles de cette dernière représentent respectivement les blocs de codage TB ; TB2,..., TBV,..., TBQ obtenus sur différents niveaux de profondeur de partitionnement.
La figure 1 A représente un exemple de partitionnement du bloc de codage CBj qui a été prédit à l'aide du partitionnement PART_NxN. Dans l'exemple représenté, les blocs PB2 et PB3 du bloc de codage CBj sont par exemple chacun partitionnés en quatre blocs carrés plus petits et tous de la même taille, respectivement TB ; TB2, TB3, TB4 et TB5, TB6, TB7, TB8. Un tel partitionnement est représenté en pointillé sur la figure 1A.
La figure 1 B représente un exemple de partitionnement d'un bloc CTB, considéré qui a été obtenu après codage prédictif et codage par transformée de ce dernier, ainsi que l'arborescence de partitionnement correspondante. Dans l'exemple représenté :
- le bloc CTB,, considéré comme la racine de l'arbre de codage, est représenté en trait continu gras, - les blocs de codage CB à CB 6 qui constituent d'une part les feuilles de l'arbre de codage, et d'autre part les racines de l'arbre « residual quadtree » sont représentés en trait continu fin,
- les blocs de transformée TBi à TB-|6 qui constituent les feuilles de l'arbre « residual quadtree » sont représentés en trait pointillé.
Dans la structure arborescente ainsi constituée, il existe :
- un premier niveau de profondeur de partitionnement NP1 qui contient uniquement des blocs de codage, tels que les blocs CBi à CB4,
- un deuxième niveau de profondeur de partitionnement NP2 qui contient :
des blocs de codage, tels que les blocs CB5 à CB8 obtenus à l'issue du partitionnement du bloc CB-i, ainsi que les blocs CB9 à CB 2 obtenus à l'issue du partitionnement du bloc CB4,
■ des blocs de transformée, tels que les blocs TBi à
TB4 obtenus à l'issue du partitionnement du bloc CB2,
- un troisième niveau de profondeur de partitionnement NP3 qui contient :
■ des blocs de codage, tels que les blocs CB 3 à
CB-I6 obtenus à l'issue du partitionnement du bloc
Figure imgf000006_0001
des blocs de transformée, tels que les blocs TB5 à TB8 obtenus à l'issue du partitionnement du bloc CB7, les blocs TB9 à TB-|2 obtenus à l'issue du partitionnement du bloc TB2, les blocs TB-|2 à TB-|6 obtenus à l'issue du partitionnement du bloc CB 2. Dans un codeur compatible HEVC, pour un bloc CTB, considéré, plusieurs partitionnements différents de ce dernier sont mis en compétition au codeur, c'est-à-dire respectivement différentes combinaisons d'itérations de partitionnement, dans le but de sélectionner le meilleur partitionnement, c'est- à-dire celui qui optimisera le codage du bloc CTB, considéré selon un critère de performance de codage prédéterminé, par exemple le coût débit/distorsion ou bien un compromis efficacité/complexité, qui sont des critères bien connus de l'homme du métier.
Une fois réalisé le partitionnement optimal d'un bloc CTB, considéré, une séquence d'informations numériques, telle que par exemple une suite de bits, représentative de ce partitionnement optimal, est transmise dans un flux destiné à être lu par un décodeur vidéo.
Un tel flux comprend également:
- des données résiduelles qui sont les coefficients du bloc résiduel quantifié et éventuellement, lors d'un codage en mode Inter, des données résiduelles des vecteurs mouvement,
- des paramètres de codage qui sont représentatifs du mode de codage utilisé, en particulier:
le mode de prédiction (prédiction intra, prédiction inter, prédiction par défaut réalisant une prédiction pour laquelle aucune information n'est transmise au décodeur (« en anglais « skip »)) ;
des informations précisant le type de prédiction (orientation, composante d'image de référence, ...) ;
le type de transformée, par exemple DCT 4x4, DCT 8x8, etc ..
les informations de mouvement si nécessaire ;
etc.
Dans certains cas, il arrive que le partitionnement en une pluralité de sous-blocs d'un bloc déjà codé puis décodé ressemble au partitionnement du bloc considéré CTB, à coder. Il en résulte que la séquence d'informations numériques représentative du partitionnement du bloc CTB, à coder ressemble également à la séquence d'informations numériques représentative du partitionnement du bloc déjà codé puis décodé. Or, la séquence d'informations numériques représentative du partitionnement du bloc CTBi à coder contient un nombre non négligeable d'informations numériques dont le coût de signalisation est élevé, ce qui réduit les performances de codage. Objet et résumé de l'invention
Un des buts de l'invention est de remédier à des inconvénients de l'état de la technique précité.
A cet effet, un objet de la présente invention concerne un procédé de codage d'une image courante partitionnée préalablement en blocs, mettant en œuvre, pour un bloc courant à coder, les étapes consistant à :
- partitionner au moins une fois le bloc courant en plusieurs sous-blocs,
- représenter le partitionnement du bloc courant sous la forme d'une première séquence d'informations numériques.
Un tel procédé de codage est remarquable en ce qu'il comprend les étapes consistant à:
- prédire le partitionnement du bloc courant par rapport au partitionnement d'un bloc déjà codé puis décodé et représenté sous la forme d'une deuxième séquence d'informations numériques, par comparaison des première et deuxième séquences entre elles ou bien des partitionnements correspondants entre eux, puis par détermination d'informations numériques résiduelles représentatives de la comparaison précitée, selon un critère de comparaison prédéterminé,
- encoder les informations numériques résiduelles déterminées.
Une telle disposition permet ainsi d'encoder seulement la différence entre le partitionnement du bloc courant et le partitionnement de référence, c'est-à-dire le partitionnement du bloc déjà codé puis décodé, ce qui réduit sensiblement le nombre d'informations numériques qui seront utiles, au décodage, à la reconstruction du partitionnement du bloc courant.
Selon un mode de réalisation particulier, le procédé de codage comprend une étape consistant à transmettre à un décodeur un signal de données comprenant une information numérique indiquant si l'étape de prédiction du partitionnement a été mise en œuvre ou pas.
Une telle disposition permet à n'importe quels codeurs actuels ou futurs d'avoir la possibilité d'activer ou de désactiver la prédiction du partitionnement du bloc courant, pour une séquence d'images considérée, pour une image considérée ou encore pour une portion d'image (« slice » en anglais) considérée. Il en résulte qu'un tel procédé de prédiction de partitionnement est particulièrement flexible, car adaptable au contexte vidéo courant.
Selon un autre mode de réalisation particulier, lorsque l'étape de prédiction de partitionnement précitée est mise en œuvre, le signal de données comprend les informations numériques résiduelles encodées telles que mentionnées ci-dessus.
Une telle disposition permet de signaler au décodeur, en vue de la reconstruction du bloc courant, le résultat de la différence entre le partitionnement du bloc courant et le partitionnement de référence.
Selon encore un autre mode de réalisation particulier dans lequel le bloc courant et le bloc déjà codé puis décodé ont été partitionnés au moins une fois respectivement jusqu'à l'obtention de deux niveaux de profondeur de partitionnement qui sont inférieurs ou égaux à un niveau prédéterminé de profondeur de partitionnement, le critère de comparaison prédéterminé est le suivant :
- comparer le partitionnement du bloc courant et du bloc déjà codé puis décodé à niveau égal de profondeur de partitionnement,
- itérer la comparaison jusqu'au niveau prédéterminé de profondeur de partitionnement,
- à l'issue de chaque comparaison, déterminer soit une information numérique résiduelle d'une première valeur, soit une information numérique résiduelle d'une deuxième valeur si les partitionnements comparés sont respectivement soit les mêmes, soit différents.
Une telle disposition permet de réduire le coût de signalisation lorsque :
- au moins un des partitionnements du bloc courant ou du bloc déjà codé puis décodé a été effectué selon un niveau de profondeur de partitionnement élevé,
- le niveau de profondeur de partitionnement du bloc courant est très différent du niveau de profondeur de partitionnement du bloc déjà codé, puis décodé.
Selon encore un autre mode de réalisation particulier, le critère de comparaison est le suivant :
aucune information numérique résiduelle n'est déterminée si un sous-bloc issu du partitionnement du bloc courant et un sous-bloc correspondant issu du partitionnement du bloc déjà codé puis décodé n'ont pas été partitionnés à nouveau,
une information numérique résiduelle est déterminée si un sous-bloc issu du partitionnement du bloc courant a été partitionné à nouveau et si un sous-bloc correspondant issu du partitionnement du bloc déjà codé puis décodé a été partitionné à nouveau ou non.
En variante, le critère de comparaison est le suivant :
■ aucune information numérique résiduelle n'est déterminée si un sous-bloc issu du partitionnement du bloc courant et un sous-bloc correspondant issu du partitionnement du bloc déjà codé puis décodé ont été partitionnés à nouveau,
■ une information numérique résiduelle est déterminée si un sous-bloc issu du partitionnement du bloc courant et un sous-bloc correspondant issu du partitionnement du bloc déjà codé puis décodé n'ont pas été partitionnés à nouveau,
■ une information numérique résiduelle est déterminée si un sous-bloc issu du partitionnement du bloc courant a été partitionné à nouveau et si un sous-bloc correspondant issu du partitionnement du bloc codé puis décodé n'a pas été partitionné à nouveau.
Selon encore un autre mode de réalisation particulier, le bloc codé puis décodé a une position pré-identifiée :
- dans une partie décodée de l'image courante, ou bien
- dans une autre image déjà décodée, ou bien
- dans une composante d'image associée à une autre composante d'image dans laquelle est situé le bloc courant.
Une telle disposition permet ainsi de mettre en œuvre l'invention dans le cadre du codage d'une image ou d'une partie d'image en deux dimensions utilisant aussi bien un mode de prédiction Intra qu'un mode de prédiction Inter. Dans le cas d'un codage Inter, l'autre image déjà décodée peut être une image antérieure ou postérieure à l'image courante.
Une telle disposition permet ainsi de mettre en œuvre l'invention dans le cadre du codage d'une image en deux dimensions utilisant aussi bien un schéma uni-prédictif que bi-prédictif.
Enfin, une telle disposition permet de mettre en œuvre l'invention dans le cas d'un codage vidéo en trois dimensions (3D), tel que par exemple le codage 3D multi-vues, le codage HEVC 3D, où il est proposé de coder une première composante d'image par rapport à au moins une deuxième composante d'image déjà codée puis décodée.
Il convient de noter que les première et deuxième composantes d'image ne sont pas des morceaux d'image mais représentent au sens de l'invention deux vues différentes d'une image complète.
De telles première et deuxième composantes d'image sont par exemple respectivement une composante de texture et sa composante de profondeur associée, telles que mises en œuvre dans le nouveau format de codage vidéo, appelé MVD (pour « Multiview Video + Depth » en anglais) qui fait l'objet de développements actuels.
Alternativement, les première et deuxième composantes d'image précitées pourraient être respectivement une composante de profondeur et sa composante de texture associée.
D'autres types de première et deuxième composantes d'image peuvent bien sûr être envisagés.
Ainsi, les première et deuxième composantes d'image peuvent être respectivement :
- deux vues d'une même image multi-vues, ou bien
- une composante luma et une composante chroma, ou bien
- deux couches différentes lors d'un codage vidéo scalable.
Il est également possible d'envisager le codage d'une première composante d'image par rapport à une deuxième composante d'image et à une troisième composante d'image. Dans ce cas par exemple :
- la première composante d'image peut être une composante Y,
- la deuxième composante d'image peut être une composante U,
- la troisième composante d'image peut être une composante V. L'invention concerne également un dispositif de codage d'une image courante découpée préalablement en blocs, destiné à mettre en œuvre le procédé de codage précité. Un tel dispositif comprend, pour un bloc courant à coder,
- des moyens de partitionnement pour partitionner au moins une fois le bloc courant en plusieurs sous-blocs,
- des moyens de représentation du partitionnement du bloc courant sous la forme d'une première séquence d'informations numériques.
Un tel dispositif de codage est remarquable en ce qu'il comprend :
- des moyens de prédiction du partitionnement du bloc courant par rapport au partitionnement d'un bloc déjà codé puis décodé et représenté sous la forme d'une deuxième séquence d'informations numériques, les moyens de prédiction étant aptes à comparer des première et deuxième séquences entre elles ou bien des partitionnements correspondants entre eux, puis à déterminer des informations numériques résiduelles représentatives de la comparaison, selon un critère de comparaison prédéterminé,
- des moyens d'encodage des informations numériques résiduelles déterminées.
L'invention concerne également un signal de données représentatif d'une image codée selon le procédé de codage précité. Un tel signal est remarquable en ce qu'il porte les informations numériques résiduelles encodées, telles que mentionnées ci-dessus.
L'invention concerne également un procédé de décodage d'un signal de données représentatif d'une image courante préalablement partitionnée en blocs et qui a été codée, mettant en œuvre, pour un bloc courant à décoder, une étape consistant à reconstruire préalablement le partitionnement d'un bloc décodé.
Un tel procédé de décodage est remarquable en ce qu'il comprend les étapes consistant à :
- identifier, dans ledit signal de données, des informations numériques résiduelles représentatives d'une comparaison effectuée au codage entre une première séquence d'informations numériques représentant le partitionnement d'un bloc courant et une deuxième séquence d'informations numériques représentant le partitionnement précité d'un bloc décodé, ou bien entre les partitionnements correspondants entre eux, selon un critère de comparaison prédéterminé,
- reconstruire le partitionnement du bloc courant à partir du partitionnement reconstruit du bloc décodé et des informations numériques résiduelles identifiées.
Une telle technique de décodage permet, à réception et lecture des informations de codage, et plus particulièrement des informations numériques résiduelles représentatives de la différence entre le partitionnement du bloc courant et le partitionnement de référence, de reconstruire le bloc courant en appliquant une prédiction inverse de celle réalisée conformément au procédé de codage précité.
L'invention concerne également un dispositif de décodage destiné à mettre en œuvre le procédé de décodage précité, ledit dispositif de décodage étant adapté au décodage d'un signal de données représentatif d'une image courante préalablement partitionnée en blocs et qui a été codée, et comprenant, pour un bloc courant à décoder, des moyens de reconstruction aptes à reconstruire préalablement le partitionnement d'un bloc décodé.
Un tel dispositif de décodage est remarquable en ce qu'il comprend :
- des moyens d'identification, dans le signal de données, d'informations numériques résiduelles représentatives d'une comparaison effectuée au codage entre une première séquence d'informations numériques représentant le partitionnement d'un bloc courant et une deuxième séquence d'informations numériques représentant le partitionnement d'un bloc décodé, ou bien entre les partitionnements correspondants entre eux, selon un critère de comparaison prédéterminé,
- les moyens de reconstruction précités étant aptes à reconstruire le partitionnement du bloc courant à partir du partitionnement reconstruit du bloc décodé et des informations numériques résiduelles identifiées.
L'invention concerne encore un programme d'ordinateur comportant des instructions pour mettre en œuvre le procédé de codage ou le procédé de décodage selon l'invention, lorsqu'il est exécuté sur un ordinateur. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable.
L'invention vise également un support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur, ce programme comportant des instructions adaptées à la mise en œuvre du procédé de codage ou de décodage selon l'invention, tels que décrits ci- dessus.
Le support d'enregistrement peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une clé USB ou un disque dur.
D'autre part, le support d'enregistrement peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet.
Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé de codage ou de décodage précité.
Le dispositif de codage et le programme d'ordinateur correspondant précités présentent au moins les mêmes avantages que ceux conférés par le procédé de codage selon la présente invention.
Le dispositif de décodage, le programme d'ordinateur et le support d'enregistrement correspondants précités présentent au moins les mêmes avantages que ceux conférés par le procédé de décodage selon la présente invention. Brève description des dessins
D'autres caractéristiques et avantages apparaîtront à la lecture de modes de réalisation préférés décrits en référence aux figures dans lesquelles:
- la figure 1 A représente les opérations successives de partitionnement d'un bloc conformément à la technologie HEVC,
- la figure 1 B représente un exemple de partitionnement d'un bloc de codage qui a été obtenu après prédiction et transformation de ce dernier, ainsi que l'arborescence de prédiction et de transformation correspondante,
- la figure 2 représente des étapes du procédé de codage selon l'invention,
- la figure 3 représente un mode de réalisation d'un dispositif de codage selon l'invention,
- la figure 4A représente un exemple de partitionnement d'un bloc courant à coder, ainsi que l'arborescence représentative du partitionnement effectué,
- la figure 4B représente un exemple de partitionnement d'un bloc déjà codé puis décodé, ainsi que l'arborescence représentative du partitionnement effectué,
- la figure 5 représente un signal de données obtenu par le procédé de codage selon l'invention,
- les figures 6A à 6C représentent respectivement plusieurs positions pré-identifiées possibles dans lesquelles peut se trouver le bloc codé puis décodé,
- la figure 7 représente des étapes du procédé de décodage selon l'invention,
- la figure 8 représente un mode de réalisation d'un dispositif de décodage selon l'invention.
Description détaillée du procédé de codage de l'invention
Un mode de réalisation de l'invention va maintenant être décrit, dans lequel le procédé de codage selon l'invention est utilisé pour coder une image ou une séquence d'images selon un flux binaire proche de celui qu'on obtient par un codage conforme par exemple à la norme en cours d'élaboration HEVC 2D.
Dans ce mode de réalisation, le procédé de codage selon l'invention est par exemple implémenté de manière logicielle ou matérielle par modifications d'un codeur initialement conforme à la norme HEVC 2D. Le procédé de codage selon l'invention est représenté sous la forme d'un algorithme comportant des étapes C1 à C7 telles que représentées à la figure 2.
Selon le mode de réalisation de l'invention, le procédé de codage selon l'invention est implémenté dans un dispositif de codage CO représenté à la figure 3.
Au cours d'une étape préalable C1 représentée à la figure 2, il est procédé, de façon connue en soi, au partitionnement d'une image courante
ICj appartenant à une séquence SQ d'images IC-i, ICj, , ICM, en une pluralité de blocs CTBi, CTB2, CTBU, ..., CTBS par exemple de taille 64x64 pixels (1 <u≤S). Une telle étape de partitionnement est mise en œuvre par un premier module logiciel de partitionnement MP1 représenté sur la figure 3.
Il convient de noter qu'au sens de l'invention, le terme « bloc » signifie unité de codage (de l'anglais « coding unit »). Cette dernière terminologie est notamment utilisée dans la norme HEVC, par exemple dans le document « B. Bross, W.-J. Han, J.-R. Ohm, G. J. Sullivan, and T. Wiegand, "High efficiency video coding (HEVC) text spécification draft 6," document JCTVC-H1003 of JCT-VC, San José CA, USA, February 2012».
En particulier, une telle unité de codage regroupe des ensembles de pixels de forme rectangulaire ou carrée, encore appelés blocs, macroblocs, ou bien des ensembles de pixels présentant d'autres formes géométriques.
Au cours d'une étape C2 représentée à la figure 2, un bloc CTBU de l'image courante ICj est sélectionné en tant que bloc courant à coder.
Au cours d'une étape C3 représentée à la figure 2, le bloc CTBU sélectionné est partitionné en une pluralité de sous-blocs de codage B-i, B2, ..., Bf, ..., BG avec 1 <f≤G. Un tel partitionnement respecte une arborescence de type « quadtree », telle que décrite plus haut dans la description. D'autres types d'arborescence peuvent bien sûr être envisagés. Conformément à l'invention, le partitionnement du bloc CTBU est effectué au moins une fois jusqu'à l'obtention d'un niveau k-, de profondeur de partitionnement qui est inférieur ou égal à un niveau kP prédéterminé de profondeur de partitionnement (ki>0, kP>0).
Ledit partitionnement est mis en œuvre par un deuxième module logiciel de partitionnement MP2 représenté sur la figure 3.
Les étapes C2 à C3 sont réitérées pour l'ensemble des blocs CTB-,, CTB2, ..., CTBS.
Un exemple de partitionnement du bloc CTBU est représenté sur la figure 4A.
Dans l'exemple représenté, le partitionnement du bloc courant CTBU est effectué à un niveau de profondeur
Figure imgf000017_0001
qui est fixé au codeur, ledit niveau étant inférieur à un niveau kP prédéterminé de profondeur de partitionnement, tel que par exemple kP=4. Dans l'exemple représenté, le niveau k-, de profondeur de partitionnement est déterminé comme étant le niveau pour lequel le partitionnement final obtenu pour le bloc CTBU sélectionné optimise par exemple un critère de performance de codage, en particulier le coût débit/distorsion.
En référence à la figure 4A, pour le bloc CTBU courant donné, il est considéré que ce bloc constitue la racine d'un arbre de codage AC dans lequel :
- un premier niveau de feuilles sous la racine correspond à un premier niveau de profondeur de partitionnement du bloc CTBU pour lequel le bloc CTBU a été partitionné une première fois en une pluralité de sous-blocs de codage, par exemple 4 sous-blocs de codage B-i, B2, B3, B4,
- un deuxième niveau de feuilles sous le premier niveau de feuilles correspond à un deuxième niveau de profondeur de partitionnement de bloc CTBU pour lequel le bloc CTBU partitionné une première fois est partitionné une deuxième fois en une pluralité de sous-blocs de codage, par exemple 4 sous-blocs de codage B5, B6, B7, B8 issus du partitionnement du bloc B^
Au cours d'une étape C4 représentée à la figure 2, il est procédé à la production de S séquences de bits S-i, S2,..., Su, ..., Ss qui sont représentatives respectivement des partitionnements effectués sur les blocs CTB-i , CTB2, CTBU, ..., CTBS. Il est également procédé à la production d'une version décodée des blocs CTB-i , CTB2, CTBU,..., CTBS, qui sont notés CTBD1 ; CTBD2, CTBDU, ..., CTBDS sur les figures 2 et 3. De tels blocs décodés sont destinés à être réutilisés par le codeur CO pour coder une image suivante de la séquence SQ.
Une telle étape de production de séquences binaires est mise en œuvre par un module logiciel de traitement de données PSB représenté à la figure 3.
L'étape de décodage précitée est quant à elle mise en œuvre par le module de décodage MD représenté également sur la figure 3.
Conformément à l'invention, au cours d'une étape C5 représentée sur la figure 2, le partitionnement du bloc courant CTBU est prédit par rapport au partitionnement d'un bloc déjà codé puis décodé qui est choisi parmi une pluralité de blocs candidats déjà codés puis décodés CTBr-ι , CTBr2, CTBn, ..., CTBrL avec 1 <i≤L
Une telle étape de prédiction C5 est mise en œuvre dans un module logiciel de prédiction MPR représenté sur la figure 3.
Le bloc déjà codé puis décodé qui est sélectionné est par exemple le bloc CTBn.
Le bloc CTBn choisi a été préalablement partitionné en une pluralité de sous-blocs de codage Βη , Br2, ..., Brf,..., BrG avec 1 <f≤G. Un tel partitionnement respecte une arborescence de type « quadtree », telle que décrite plus haut dans la description.
D'autres types d'arborescence peuvent bien sûr être envisagés.
Conformément à l'invention, le partitionnement du bloc CTBn est effectué au moins une fois jusqu'à l'obtention d'un niveau k2 de profondeur de partitionnement qui est inférieur ou égal à un niveau kP prédéterminé de profondeur de partitionnement (k2>0, kP>0).
Ledit partitionnement est mis en œuvre par le deuxième module logiciel de partitionnement MP2 représenté sur la figure 3.
Un exemple de partitionnement du bloc CTBn est représenté sur la figure 4B. Dans l'exemple représenté, le partitionnement du bloc courant CTBn est effectué à un niveau de profondeur k2=3 fixé au codeur et qui est inférieur au niveau kP prédéterminé de profondeur de partitionnement, tel que kP=4. Le niveau k2 de profondeur de partitionnement est déterminé comme étant le niveau pour lequel le partitionnement final obtenu pour le bloc CTBn sélectionné optimise par exemple un critère de performance de codage, en particulier le coût débit/distorsion.
En référence à la figure 4B, pour un bloc CTBn donné, il est considéré que ce bloc constitue la racine d'un arbre de codage ACr dans lequel :
- un premier niveau de feuilles sous la racine correspond à un premier niveau de profondeur de partitionnement du bloc CTBn pour lequel le bloc CTBn a été partitionné une première fois en une pluralité de sous-blocs de codage, par exemple 4 sous-blocs de codage Βη , Br2, Br3, Br4,
- un deuxième niveau de feuilles sous le premier niveau de feuilles correspond à un deuxième niveau de profondeur de partitionnement de bloc CTBn pour lequel le bloc CTBn partitionné une première fois est partitionné une deuxième fois en une pluralité de sous-blocs de codage, par exemple 4 sous-blocs de codage Br5, Br6, Br7, Br8 issus du partitionnement du
Figure imgf000019_0001
- un troisième niveau de feuilles sous le deuxième niveau de feuilles correspond à un troisième niveau de profondeur de partitionnement de bloc CTBn pour lequel le bloc CTBn partitionné une deuxième fois est partitionné une troisième fois en une pluralité de sous-blocs de codage, par exemple 4 sous-blocs de codage Br9, Bn0, Bru , Bn2 issus du partitionnement du sous-bloc Br7.
Le partitionnement du bloc CTBn codé puis décodé est représenté sous la forme d'une séquence de bits Sn.
La table ci-dessous représente un exemple d'un contenu de la séquence Sn représentative du partitionnement du bloc CTBn codé puis décodé et d'un contenu de la séquence Su représentative du partitionnement du bloc CTBU courant.
Sn 1 1 0 0 1 0 0 0 0 0 0 0 0 su 1 1 0 0 0 0 0 0 0 S'agissant de la séquence Sr, :
- le premier bit « 1 » indique un partitionnement du bloc CTBn en quatre sous-blocs plus petits Bn, Br2, Br3, Br4,
- le deuxième bit « 1 » indique un partitionnement du sous-bloc
Br-, en quatre sous-blocs plus petits Br5, Br6, Br7, Br8,
- le troisième bit « 0 » indique une absence de partitionnement du sous-bloc Br5,
- le quatrième bit « 0 » indique une absence de partitionnement du sous-bloc Br6,
- le cinquième bit « 1 » indique un partitionnement du sous-bloc Br7 en quatre sous-blocs plus petits Br9, Br , Bru , Bn2,
- le sixième bit « 0 » indique une absence de partitionnement du sous-bloc Br9,
- le septième bit « 0» indique une absence de partitionnement
Figure imgf000020_0001
- le huitième bit « 0 » indique une absence de partitionnement du sous-bloc Br-n ,
- le neuvième bit « 0 » indique une absence de partitionnement du sous-bloc Bn2,
- le dixième bit « 0 » indique une absence de partitionnement du sous-bloc Br8,
- le onzième bit « 0 » indique une absence de partitionnement du sous-bloc Br2,
- le douzième bit « 0 » indique une absence de partitionnement du sous-bloc Br3,
- le treizième bit « 0 » indique une absence de partitionnement du sous-bloc Br4.
S'agissant de la séquence Su :
- le premier bit « 1 » indique un partitionnement du bloc CTBU en quatre sous-blocs B-i , B2, B3, B4,
- le deuxième bit « 1 » indique un partitionnement du bloc B en quatre sous-blocs B5, B6, B7, B8, - le troisième bit « 0 » indique une absence de partitionnement du sous-bloc B5,
- le quatrième bit « 0 » indique une absence de partitionnement du sous-bloc B6,
- le cinquième bit « 0» indique une absence de partitionnement du sous-bloc B7,
- le sixième bit « 0 » indique une absence de partitionnement du sous-bloc B8,
- le septième bit « 0 » indique une absence de partitionnement du sous-bloc B2,
- le huitième bit « 0 » indique une absence de partitionnement du sous-bloc B3,
- le neuvième bit « 0 » indique une absence de partitionnement du sous-bloc B4.
Les trois derniers bits de la séquence Su sont décalés à la fin de cette dernière, de façon à indiquer une différence de partitionnement entre le sous- bloc B7 et le sous-bloc Br7 du bloc C-ΤΒη.
Ladite étape de prédiction C5 représentée à la figure 2 comprend :
- une sous-étape C51 de comparaison des séquences Sn et Su entre elles ou bien des partitionnements correspondants entre eux,
- une sous-étape C52 de détermination de bits résiduels représentatifs de ladite comparaison, selon un critère de comparaison prédéterminé.
A l'issue de l'étape de prédiction C5, est obtenue une séquence S'u représentative du partitionnement prédit du bloc courant CTBU.
L'étape de prédiction C5 est réitérée pour l'ensemble des séquences Si à Ss de façon à obtenir des séquences S'i à S's représentatives du partitionnement prédit des blocs courants CTBi à CTBS .
La mise en œuvre ou non de ladite étape de prédiction dans un codeur compatible HEVC est signalée par une information numérique telle qu'un bit à « 1 » pour indiquer que la prédiction du partitionnement a été effectuée, ou bien un bit à « 0 » pour indiquer que la prédiction du partitionnement n'a pas été effectuée. Selon les cas, un tel bit peut être signalé par séquence d'images, ou bien par image, ou encore par portion d'image (« slice » en anglais).
Selon un premier critère de comparaison, il est procédé aux étapes suivantes consistant à:
- comparer le partitionnement du bloc courant CTBU et du bloc déjà codé puis décodé CTBn à niveau égal de profondeur de partitionnement
- itérer ladite comparaison jusqu'audit niveau kP prédéterminé de profondeur de partitionnement,
- à l'issue de chaque comparaison, déterminer soit une information numérique résiduelle d'une première valeur, soit une information numérique résiduelle d'une deuxième valeur si les partitionnements comparés sont respectivement soit les mêmes, soit différents.
A cet effet, ladite comparaison est effectuée conformément à la table T1 ci-dessous jusqu'au niveau de profondeur de partitionnement kP qui est égal à 4 dans l'exemple décrit :
Figure imgf000022_0001
Dans cet exemple, l'information résiduelle d'une première valeur est un bit de valeur « 0 » et l'information résiduelle d'une deuxième valeur est un bit de valeur «1 ».
La table T1 comprend :
- une première ligne indiquant que si à niveau égal de profondeur de partitionnement, un sous-bloc du bloc courant CTBU et un sous- bloc correspondant du bloc codé puis décodé CTBn ont été partitionnés identiquement (bit à « 1 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 0 » ; - une deuxième ligne indiquant que si à niveau égal de profondeur de partitionnement, ni un sous-bloc du bloc courant CTBU, ni un sous-bloc correspondant du bloc codé puis décodé CTBn n'a été partitionné (bit à « 0 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 0 » ;
- une troisième ligne indiquant que si à niveau égal de profondeur de partitionnement, un sous-bloc du bloc codé puis décodé CTBn a été partitionné (bit à « 1 ») et qu'un sous-bloc correspondant du bloc courant CTBU n'a pas été partitionné (bit à « 0 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 1 » ;
- une quatrième ligne indiquant que si à niveau égal de profondeur de partitionnement, un sous-bloc du bloc codé puis décodé CTBn n'a pas été partitionné (bit à « 0 ») alors qu'un sous-bloc correspondant du bloc courant CTBU a été partitionné (bit à « 1 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 1 ».
La comparaison des partitionnements à niveau égal de profondeur de partitionnement est effectuée dans un ordre prédéterminé d'ordonnancement des sous-blocs du bloc courant CTBU et du bloc codé puis décodé CTBn, tel que par exemple l'ordre « raster scan » bien connu de l'homme du métier.
A l'issue de la comparaison selon la table T1 , la séquence de bits résiduels représentative du partitionnement prédit du bloc courant CTBU est la suivante :
Figure imgf000023_0001
Le dernier bit à « 0 » de la séquence S'u indique qu'aucun des blocs CTBU et CTBn n'a atteint le niveau de profondeur de partitionnement kP=4.
A titre d'alternative, une autre convention de valeurs de bits peut être utilisée dans la table T1 , telle que celle ci-dessous :
CTBn CTBU S'u
1 1 1
0 0 1
1 0 0
0 1 0 Selon un second critère de comparaison qui est proche du premier critère de comparaison précité, ladite comparaison est effectuée conformément à la table T2 ci-dessous jusqu'au niveau de profondeur de partitionnement kP qui est égal à 4 dans l'exemple décrit :
Figure imgf000024_0001
Dans cet exemple, l'information résiduelle d'une première valeur est un bit de valeur « 0 » et l'information résiduelle d'une deuxième valeur est un bit de valeur «1 », suivi d'un bit indiquant la localisation du partitionnement différent du sous-bloc du bloc courant CTBU ou du bloc CTBn codé puis décodé.
La table T2 comprend :
- une première ligne indiquant que si à niveau égal de profondeur de partitionnement, un sous-bloc du bloc courant CTBU et un sous- bloc correspondant du bloc codé puis décodé CTBn ont été partitionnés identiquement (bit à « 1 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 0 » ;
- une deuxième ligne indiquant que si à niveau égal de profondeur de partitionnement, ni un sous-bloc du bloc courant CTBU, ni un sous-bloc correspondant du bloc codé puis décodé CTBn n'a été partitionné (bit à « 0 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 0 » ;
- une troisième ligne indiquant que si à niveau égal de profondeur de partitionnement, un sous-bloc du bloc codé puis décodé CTBn a été partitionné (bit à « 1 ») alors qu'un sous-bloc correspondant du bloc courant CTBU n'a pas été partitionné (bit à « 0 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 1 » suivi d'un autre bit indiquant la localisation du partitionnement différent du sous-bloc du bloc codé puis décodé CTBn ;
- une quatrième ligne indiquant que si à niveau égal de profondeur de partitionnement, un sous-bloc du bloc codé puis décodé CTBn n'a pas été partitionné (bit à « 0 ») alors qu'un sous-bloc correspondant du bloc courant CTBU a été partitionné (bit à « 1 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 1 » suivi d'un autre bit indiquant la localisation du partitionnement différent du sous-bloc du bloc CTBU.
A l'issue de la comparaison selon la table T2, la séquence de bits résiduels représentative du partitionnement prédit du bloc courant CTBU est la suivante :
Figure imgf000025_0001
Dans cette séquence S'u, en référence aux figures 4A et 4B :
- le premier bit « 0 » indique un même partitionnement des blocs CTBn et CTBU en quatre sous-blocs, en considération du premier niveau de profondeur de partitionnement,
- le deuxième bit « 0» indique un même partitionnement du premier sous-bloc en haut à gauche des blocs CTBn et CTBU, en considération du second niveau de profondeur de partitionnement,
- le troisième bit « 1 » indique un partitionnement d'un sous-bloc du premier sous-bloc situé en haut à gauche du bloc codé puis décodé CTBn qui n'apparait pas dans le sous-bloc correspondant du bloc courant CTBU, en considération du troisième niveau de profondeur de partitionnement,
- le quatrième bit « 0 » indique qu'aucun des blocs CTBU et CTBn n'a atteint le niveau de profondeur de partitionnement kP=4.
- le cinquième bit « 0» indique une absence de partitionnement du sous-bloc Br5,
- le sixième bit « 0 » indique une absence de partitionnement du sous-bloc Br6, - le septième bit « 1 » indique un partitionnement du sous-bloc Br7 en quatre sous-blocs,
- le huitième bit « 0 » indique une absence de partitionnement du sous-bloc Br8.
A titre d'alternative, une autre convention de valeurs de bits peut être utilisée dans la table T2, telle que celle ci-dessous :
Figure imgf000026_0001
Selon un troisième critère de comparaison, ladite comparaison est effectuée conformément à la table T3 ci-dessous :
Figure imgf000026_0002
La table T3 comprend :
- une première ligne indiquant que si un sous-bloc du bloc courant CTBU et un sous-bloc correspondant du bloc codé puis décodé CTBn ont été partitionnés identiquement (bit à « 1 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 1 » ;
- une deuxième ligne indiquant que si ni un sous-bloc du bloc courant CTBU, ni un sous-bloc correspondant du bloc codé puis décodé CTBn n'a été partitionné (bit à « 0 »), aucune information résiduelle issue de la comparaison n'est déterminée ;
- une troisième ligne indiquant que si un sous-bloc du bloc codé puis décodé CTBn a été partitionné (bit à « 1 ») alors qu'un sous-bloc correspondant du bloc courant CTBU n'a pas été partitionné (bit à « 0 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 0 ».
Les séquences Sn et Su précitées sont alors comparées entre elles, le premier bit de la séquence Sn étant comparé au premier bit de la séquence Su, et ainsi de suite jusqu'au dernier bit de chacune des séquences.
A l'issue de la comparaison selon la table T3, la séquence de bits résiduels représentative du partitionnement prédit du bloc courant CTBU est la suivante :
Figure imgf000027_0001
Selon un quatrième critère de comparaison, ladite comparaison est effectuée conformément à la table T4 ci-dessous :
Figure imgf000027_0002
La table T4 comprend :
- une première ligne indiquant que si un sous-bloc du bloc courant CTBU et un sous-bloc correspondant du bloc codé puis décodé CTBn ont été partitionnés identiquement (bit à « 1 »), aucune information résiduelle issue de la comparaison n'est déterminée ;
- une deuxième ligne indiquant que si ni un sous-bloc du bloc courant CTBU, ni un sous-bloc correspondant du bloc codé puis décodé CTBn n'a été partitionné (bit à « 0 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 0» ;
- une troisième ligne indiquant que si un sous-bloc du bloc codé puis décodé CTBn a été partitionné (bit à « 1 ») alors qu'un sous-bloc correspondant du bloc courant CTBU n'a pas été partitionné (bit à « 0 »), la valeur de l'information résiduelle issue de la comparaison est un bit à « 1 » directement suivi d'autres bits indiquant le type du partitionnement différent du sous-bloc du bloc CTBn. Les séquences Sr, et Su précitées sont alors comparées entre elles, le premier bit de la séquence Sr, étant comparé au premier bit de la séquence Su, et ainsi de suite jusqu'au dernier bit de chacune des séquences.
A l'issue de la comparaison selon la table T4, la séquence de bits résiduels représentative du partitionnement prédit du bloc courant CTBU est la suivante :
Figure imgf000028_0001
Dans cette séquence S'u, les quatre bits à « 0 » qui suivent le bit à « 1 » indique, en référence à la figure 4B, le partitionnement du sous-bloc Br7 en quatre sous-blocs Br9, Br-ιο, Bru , Bn2.
Selon un cinquième critère de comparaison, qui est une combinaison des deuxième et troisième critères de comparaison précités, ladite comparaison est effectuée conformément à la table T5 ci-dessous, en partant du deuxième niveau de profondeur de partitionnement jusqu'au niveau de profondeur de partitionnement kP qui est égal à 4 dans l'exemple décrit :
Figure imgf000028_0002
La table T5 reprend les mêmes conventions que la table T3. Elle se différentie de cette dernière par une colonne supplémentaire intitulée « bit de niveau de profondeur » qui indique que dans le cas où à niveau égal de profondeur de partitionnement, un sous-bloc du bloc courant CTBU et un sous- bloc correspondant du bloc codé puis décodé CTBn ont été partitionnés différemment, le bit de niveau de profondeur est mis à « 1 » pour signaler explicitement une différence de partitionnement entre un sous-bloc du boc courant CTBU et un sous-bloc du bloc codé puis décodé CTBn. A l'issue de la comparaison selon la table T5, la séquence de bits résiduels représentative du partitionnement prédit du bloc courant CTBU est la suivante :
Figure imgf000029_0001
Dans cette séquence, en référence aux figures 4A et 4B :
- le premier bit de niveau de profondeur est à « 0 », puisqu'au deuxième niveau de profondeur de partitionnement, le partitionnement du sous-bloc Bi du bloc CTBU est le même que le partitionnement du sous-bloc Bn du bloc CTBn,
- le deuxième bit de niveau de profondeur est à « 1 », puisqu'au troisième niveau de profondeur de partitionnement, le sous-bloc B7 du bloc CTBU n'est pas partitionné, alors que le sous-bloc Br7 du bloc CTBn est partitionné en quatre sous-blocs Br9 à Br 2,
- le troisième bit de niveau de profondeur est à « 0 », étant donné qu'aucun des blocs CTBU et CTBn n'a atteint le quatrième niveau de profondeur de partitionnement kP.
En référence à la figure 2, à l'issue de l'étape de prédiction C5, la séquence S'u représentative du partitionnement prédit du bloc courant CTBU est encodée au cours d'une étape C6.
Une telle étape d'encodage est mise en œuvre par un codeur entropique CE représenté à la figure 3.
Il est ensuite procédé, au cours d'une étape C7 représentée sur la figure 2, à la construction d'un signal de données F représenté sur la figure 5 qui contient la séquence S'u, ainsi que d'autres données résiduelles classiques, telles que par exemple le mode de codage du bloc CTBU « Coding Mode » noté CM, ses résiduels de texture « Texture Residual » notés TR, ses résiduels de vecteur mouvement MV « MV Residual », notés MVR.
La construction du signal de données F est mise en œuvre dans un module logiciel CF de construction de flux, tel que représenté sur la figure 3. Le signal de données F est ensuite transmis par un réseau de communication (non représenté), à un terminal distant. Celui-ci comporte un décodeur qui sera décrit plus en détail dans la suite de la description.
En référence aux figures 6A à 6C, différentes positions pré-identifiées du bloc codé puis décodé CTBn vont maintenant être décrites.
En référence à la figure 6A, l'image courante ICj est par exemple une image en deux dimensions. Dans cet exemple, le bloc codé puis décodé CTBn est sélectionné dans une partie de l'image courante ICj qui a déjà été codée puis décodée. Une telle sélection est effectuée parmi par exemple quatre blocs voisins du bloc courant CTBU qui sont les suivants :
- le bloc CTBrx situé à gauche du bloc courant CTBU,
- le bloc CTBn lui-même, situé au-dessus et à gauche du bloc courant CTBU,
- le bloc CTBry situé au-dessus du bloc courant CTBU, - le bloc CTBrz situé au-dessus et à droite du bloc courant CTBU.
L'indice du bloc CTBn sélectionné est transmis dans le signal de données F.
En référence à la figure 6B, l'image ICj est toujours une image en deux dimensions. Dans cet exemple, le bloc CTBn codé puis décodé est sélectionné dans une image t qui a déjà été codée puis décodée et qui précède par exemple immédiatement l'image courante ICj. Le bloc CTBn codé puis décodé est situé dans l'image lref par exemple à la même position que le bloc courant CTBU dans l'image courante ICj. L'indice du bloc CTBn codé puis décodé est transmis dans le signal de données F.
Selon une alternative possible de l'exemple représenté à la figure 6B, un bloc codé puis décodé peut, de la même façon que dans l'exemple de la figure 6A, être sélectionné dans une partie de l'image courante ICj qui a déjà été codée puis décodée, au lieu d'être sélectionné dans l'image t précitée. Dans l'exemple de cette variante représentée sur la figure 6B, le bloc codé puis décodé qui est sélectionné, noté CTB'n sur la figure 6B, est le bloc situé au-dessus et à droite du bloc courant CTBU. L'indice du bloc CTB'n sélectionné est transmis dans le signal de données F.
En référence à la figure 6C, l'image ICj est une image en trois dimensions comprenant une première composante d'image C j et une deuxième composante d'image Cl2j. La première composante d'image Cl-ij est acquise en association avec la deuxième composante d'image Cl2j. Dans l'exemple représenté, le bloc CTBn codé puis décodé est sélectionné dans la première composante d'image C j. Une telle composante est considérée comme étant la composante d'image de référence, c'est-à-dire qui a été préalablement codée, puis décodée, pour servir au codage de la deuxième composante d'image Cl2j dans laquelle est situé le bloc courant CTBU. L'indice du bloc CTBn codé puis décodé est transmis dans le signal de données F.
De telles première et deuxième composantes d'image sont par exemple respectivement une composante de texture et sa composante de profondeur associée, telles que mises en œuvre dans le nouveau format de codage vidéo, appelé MVD (pour « Multiview Video + Depth » en anglais) qui fait l'objet de développements actuels.
Alternativement, les première et deuxième composantes d'image précitées pourraient être respectivement une composante de profondeur et sa composante de texture associée.
D'autres types de première et deuxième composantes d'image peuvent bien sûr être envisagés.
Ainsi, les première et deuxième composantes d'image peuvent être respectivement :
- deux vues d'une même image multi-vues, ou bien
- une composante luma et une composante chroma, ou bien
- deux couches différentes lors d'un codage vidéo scalable.
Il est également possible d'envisager le codage d'une première composante d'image par rapport à une deuxième composante d'image et à une troisième composante d'image. Dans ce cas par exemple :
- la première composante d'image peut être une composante Y,
- la deuxième composante d'image peut être une composante U,
- la troisième composante d'image peut être une composante V.
Description détaillée du procédé de décodage de l'invention
Un mode de réalisation de l'invention va maintenant être décrit, dans lequel le procédé de décodage selon l'invention est utilisé pour décoder une séquence d'images selon un flux binaire proche de celui qu'on obtient par un codage conforme par exemple à la norme en cours d'élaboration HEVC 2D.
Dans ce mode de réalisation, le procédé de décodage selon l'invention est par exemple implémenté de manière logicielle ou matérielle par modifications d'un décodeur initialement conforme à la norme HEVC 2D. Le procédé de décodage selon l'invention est représenté sous la forme d'un algorithme comportant des étapes D1 à D2 telles que représentées à la figure 7.
Selon le mode de réalisation de l'invention, le procédé de décodage selon l'invention est implémenté dans un dispositif de décodage DO représenté à la figure 8, qui est adapté à recevoir le signal de données F délivré par le codeur CO de la figure 3.
Au cours d'une étape D1 représentée à la figure 7, il est procédé à l'identification, dans le signal de données F, de la séquence S'u, du mode de codage CM, des résiduels de texture TR, des résiduels de vecteurs mouvement MVR associés au bloc courant CTBU.
Une telle étape est mise en œuvre par un module logiciel de sélection MS, tel que représenté à la figure 8, qui est adapté à placer un pointeur de lecture dans le signal F au début des données de la séquence S'u.
Au cours d'une étape D2 représentée à la figure 7, il est procédé classiquement à une sous-étape D21 de décodage entropique du mode de codage CM, des résiduels de texture TR, des résiduels de vecteurs mouvement MVR associés au bloc courant CTBU.
Une telle étape est mise en œuvre par un module de décodage entropique DE, tel que représenté sur la figure 8.
Au cours de ladite même étape D2 représentée à la figure 7, il est procédé à une sous-étape D22 de reconstruction de la séquence Su représentative du partitionnement du bloc courant CTBU, à partir de la séquence Sr, représentative du partitionnement préalablement reconstruit du bloc décodé CTBr, et de la séquence S'u lue. La séquence Sr, a été préalablement reconstruite par un module de prédiction inverse MPRI tel que représenté sur la figure 8.
Plus précisément, une telle reconstruction consiste à effectuer une prédiction inverse de celle effectuée à l'étape de prédiction C5 de la figure 2. A cet effet, la séquence Sr, représentative du partitionnement préalablement reconstruit du bloc décodé CTBr, est ajoutée à la séquence S'u lue, délivrant ainsi la séquence reconstruite Su représentative du partitionnement du bloc courant CTBU.
Les sous-étapes D21 et D22 peuvent être effectuées en même temps ou alternativement, dans n'importe quel ordre.
Les étapes D1 et D2 sont réitérées pour toutes les séquences S'i à S's identifiées dans le signal de données F.
Il va de soi que les modes de réalisation qui ont été décrits ci-dessus ont été donnés à titre purement indicatif et nullement limitatif, et que de nombreuses modifications peuvent être facilement apportées par l'homme de l'art sans pour autant sortir du cadre de l'invention.

Claims

REVENDICATIONS
1 . Procédé de codage d'une image courante (ICj) partitionnée préalablement en blocs, mettant en œuvre, pour un bloc (CTBU) courant à coder, les étapes consistant à :
- partitionner (C3) au moins une fois le bloc courant en plusieurs sous-blocs,
- représenter (C4) le partitionnement du bloc courant sous la forme d'une première séquence d'informations numériques,
ledit procédé de codage étant caractérisé en ce qu'il comprend les étapes consistant à :
- prédire (C5) le partitionnement du bloc courant par rapport au partitionnement d'un bloc déjà codé puis décodé (C-ΤΒ ) et représenté sous la forme d'une deuxième séquence d'informations numériques, par comparaison (C51 ) des première et deuxième séquences entre elles ou bien desdits partitionnements correspondants entre eux, puis par détermination (C52) d'informations numériques résiduelles représentatives de ladite comparaison, selon un critère de comparaison prédéterminé,
- encoder (C6) lesdites informations numériques résiduelles déterminées.
2. Procédé de codage selon la revendication 1 , comprenant une étape consistant à transmettre à un décodeur un signal de données comprenant une information numérique indiquant si ladite étape de prédiction du partitionnement a été mise en œuvre ou pas.
3. Procédé de codage selon la revendication 2, dans lequel lorsque ladite étape (C5) de prédiction de partitionnement est mise en œuvre, ledit signal de données comprend lesdites informations numériques résiduelles encodées (S'u).
4. Procédé de codage selon l'une quelconque des revendications 1 à 3, dans lequel le bloc courant (CTBU) et le bloc (C-ΤΒ ) déjà codé puis décodé étant partitionnés au moins une fois respectivement jusqu'à l'obtention de deux niveaux (k ; k2) de profondeur de partitionnement qui sont inférieurs ou égaux à un niveau (kp) prédéterminé de profondeur de partitionnement (k-i>0, k2>0, kp>0), ledit critère de comparaison prédéterminé est le suivant :
- comparer le partitionnement du bloc courant et du bloc déjà codé puis décodé à niveau égal de profondeur de partitionnement (k-ι , k2),
- itérer ladite comparaison jusqu'audit niveau (kp) prédéterminé de profondeur de partitionnement,
- à l'issue de chaque comparaison, déterminer soit une information numérique résiduelle d'une première valeur, soit une information numérique résiduelle d'une deuxième valeur si les partitionnements comparés sont respectivement soit les mêmes, soit différents.
5. Procédé de codage selon l'une quelconque des revendications 1 à 3, dans lequel ledit critère de comparaison est le suivant :
aucune information numérique résiduelle n'est déterminée si un sous-bloc issu du partitionnement du bloc courant et un sous-bloc correspondant issu du partitionnement du bloc déjà codé puis décodé n'ont pas été partitionnés à nouveau,
une information numérique résiduelle est déterminée si un sous-bloc issu du partitionnement du bloc courant a été partitionné à nouveau et si un sous-bloc correspondant issu du partitionnement du bloc déjà codé puis décodé a été partitionné à nouveau ou non.
6. Procédé de codage selon l'une quelconque des revendications 1 à 3, dans lequel ledit critère de comparaison est le suivant :
aucune information numérique résiduelle n'est déterminée si un sous-bloc issu du partitionnement du bloc courant et un sous-bloc correspondant issu du partitionnement du bloc déjà codé puis décodé ont été partitionnés à nouveau, une information numérique résiduelle est déterminée si un sous-bloc issu du partitionnement du bloc courant et un sous-bloc correspondant issu du partitionnement du bloc déjà codé puis décodé n'ont pas été partitionnés à nouveau,
une information numérique résiduelle est déterminée si un sous-bloc issu du partitionnement du bloc courant a été partitionné à nouveau et si un sous-bloc correspondant issu du partitionnement du bloc codé puis décodé n'a pas été partitionné à nouveau.
7. Procédé de codage selon l'une quelconque des revendications 1 à 6, dans lequel le bloc codé puis décodé a une position pré-identifiée :
- dans une partie décodée de l'image courante, ou bien
- dans une autre image déjà décodée, ou bien
- dans une composante d'image associée à une autre composante d'image dans laquelle est situé le bloc courant.
8. Dispositif de codage d'une image courante partitionnée préalablement en blocs, destiné à mettre en œuvre le procédé de codage selon l'une quelconque des revendications 1 à 7, ledit dispositif comprenant, pour un bloc courant à coder,
- des moyens (MP2) de partitionnement pour partitionner au moins une fois le bloc courant en plusieurs sous-blocs,
- des moyens (PSB) de représentation du partitionnement du bloc courant sous la forme d'une première séquence d'informations numériques (Su),
ledit dispositif de codage étant caractérisé en ce qu'il comprend :
- des moyens (MPR) de prédiction du partitionnement du bloc courant par rapport au partitionnement d'un bloc déjà codé puis décodé et représenté sous la forme d'une deuxième séquence d'informations numériques, lesdits moyens de prédiction étant aptes à comparer des première et deuxième séquences entre elles ou bien desdits partitionnements correspondants entre eux, puis à déterminer des informations numériques résiduelles représentatives de ladite comparaison, selon un critère de comparaison prédéterminé,
- des moyens (CE) d'encodage desdites informations numériques résiduelles déterminées.
9. Signal de données (F) représentatif d'une image codée selon le procédé de codage selon l'une quelconque des revendications 1 à 7, caractérisé en ce qu'il porte lesdites informations numériques résiduelles encodées.
10. Programme d'ordinateur comportant des instructions pour la mise en œuvre du procédé de codage selon l'une quelconque des revendications 1 à 7, lorsque ce programme est exécuté par un processeur.
1 1 . Procédé de décodage d'un signal de données (F) représentatif d'une image courante préalablement partitionnée en blocs et qui a été codée, mettant en œuvre, pour un bloc (CTBU) courant à décoder, une étape consistant à reconstruire préalablement le partitionnement d'un bloc décodé, ledit procédé de décodage étant caractérisé en ce qu'il comprend les étapes consistant à :
- identifier (D1 ), dans ledit signal de données (F), des informations numériques résiduelles (S'u) représentatives d'une comparaison effectuée au codage entre une première séquence (Su) d'informations numériques représentant le partitionnement d'un bloc courant et une deuxième séquence (Sn) d'informations numériques représentant ledit partitionnement d'un bloc décodé, ou bien entre lesdits partitionnements correspondants entre eux, selon un critère de comparaison prédéterminé,
- reconstruire (D22) le partitionnement du bloc courant à partir dudit partitionnement reconstruit du bloc décodé et desdites informations numériques résiduelles identifiées.
12. Dispositif de décodage destiné à mettre en œuvre le procédé de décodage selon la revendication 1 1 , ledit dispositif étant adapté au décodage d'un signal de données (F) représentatif d'une image courante préalablement partitionnée en blocs et qui a été codée, et comprenant, pour un bloc (CTBU) courant à décoder, des moyens de reconstruction (MPRI) aptes à reconstruire préalablement le partitionnement d'un bloc décodé,
ledit dispositif de décodage étant caractérisé en ce qu'il comprend :
- des moyens (MS) d'identification, dans ledit signal de données, d'informations numériques résiduelles (S'u) représentatives d'une comparaison effectuée au codage entre une première séquence (Su) d'informations numériques représentant le partitionnement d'un bloc courant et une deuxième séquence (Sn) d'informations numériques représentant ledit partitionnement d'un bloc décodé, ou bien entre lesdits partitionnements correspondants entre eux, selon un critère de comparaison prédéterminé,
- lesdits moyens de reconstruction (MPRI) étant aptes à reconstruire le partitionnement du bloc courant à partir dudit partitionnement reconstruit du bloc décodé et desdites informations numériques résiduelles identifiées.
13. Programme d'ordinateur comportant des instructions pour la mise en œuvre du procédé de décodage selon la revendication 1 1 , lorsque ce programme est exécuté par un processeur.
14. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions pour l'exécution des étapes du procédé de décodage selon la revendication 1 1 , lorsque ce programme est exécuté par un processeur.
PCT/FR2013/051625 2012-07-09 2013-07-08 Procédé de codage video par prediction du partitionnement d'un bloc courant, procédé de décodage, dispositifs de codage et de décodage et programmes d'ordinateur correspondants WO2014009644A1 (fr)

Priority Applications (8)

Application Number Priority Date Filing Date Title
RU2015104039A RU2648571C2 (ru) 2012-07-09 2013-07-08 Способ кодирования видеосигнала путем предсказания разбиения текущего блока, способ декодирования и соответствующие устройства и компьютерные программы кодирования и декодирования
EP13744716.5A EP2870761B1 (fr) 2012-07-09 2013-07-08 Procédé de codage video par prediction du partitionnement d'un bloc courant, procédé de décodage, dispositifs de codage et de décodage et programmes d'ordinateur correspondants
JP2015521044A JP6282646B2 (ja) 2012-07-09 2013-07-08 現在ブロックの分割を予測することによるビデオ符号化方法、復号化方法、対応する符号化及び復号化装置、並びにコンピュータプログラム
BR112015000263-3A BR112015000263B1 (pt) 2012-07-09 2013-07-08 Processo e dispositivo de codificação de uma imagem corrente particionada previamente em blocos, sinal de dados, processo de decodificação de um sinal de dados, dispositivo de decodificação destinado a implementar esse processo e suporte de gravação
ES13744716T ES2700747T3 (es) 2012-07-09 2013-07-08 Procedimiento de codificación de vídeo por predicción del particionado de un bloque en curso, procedimiento de decodificación, dispositivos de codificación y de decodificación y programas informáticos correspondientes
CN201380036255.7A CN104429067B (zh) 2012-07-09 2013-07-08 通过预测当前块的划分进行视频编码的方法、解码方法、编码和解码装置及其相应的介质
KR1020147036557A KR102114641B1 (ko) 2012-07-09 2013-07-08 현재 블록의 분할을 예측하여 비디오를 코딩하는 방법, 디코딩 방법 및 이에 상응하는 코딩 및 디코딩 장치 및 컴퓨터 프로그램
US14/413,977 US10893268B2 (en) 2012-07-09 2013-07-08 Method of video coding by predicting the partitioning of a current block, a decoding method, and corresponding coding and decoding devices and computer programs

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1256604 2012-07-09
FR1256604A FR2993084A1 (fr) 2012-07-09 2012-07-09 Procede de codage video par prediction du partitionnement d'un bloc courant, procede de decodage, dispositifs de codage et de decodage et programmes d'ordinateur correspondants

Publications (1)

Publication Number Publication Date
WO2014009644A1 true WO2014009644A1 (fr) 2014-01-16

Family

ID=47172795

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2013/051625 WO2014009644A1 (fr) 2012-07-09 2013-07-08 Procédé de codage video par prediction du partitionnement d'un bloc courant, procédé de décodage, dispositifs de codage et de décodage et programmes d'ordinateur correspondants

Country Status (10)

Country Link
US (1) US10893268B2 (fr)
EP (1) EP2870761B1 (fr)
JP (1) JP6282646B2 (fr)
KR (1) KR102114641B1 (fr)
CN (1) CN104429067B (fr)
BR (1) BR112015000263B1 (fr)
ES (1) ES2700747T3 (fr)
FR (1) FR2993084A1 (fr)
RU (1) RU2648571C2 (fr)
WO (1) WO2014009644A1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104602000A (zh) * 2014-12-30 2015-05-06 北京奇艺世纪科技有限公司 一种编码单元的分割方法和装置
JP2015177547A (ja) * 2014-03-13 2015-10-05 メディアテック シンガポール ピーティーイー エルティーディー 簡易化した深度ベースのブロック分割の方法
JP2017175191A (ja) * 2016-03-18 2017-09-28 富士通株式会社 符号化処理プログラム、符号化処理方法及び符号化処理装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2993084A1 (fr) * 2012-07-09 2014-01-10 France Telecom Procede de codage video par prediction du partitionnement d'un bloc courant, procede de decodage, dispositifs de codage et de decodage et programmes d'ordinateur correspondants
US10694187B2 (en) * 2016-03-18 2020-06-23 Lg Electronics Inc. Method and device for deriving block structure in video coding system
US20190260992A1 (en) * 2016-10-10 2019-08-22 Samsung Electronics Co., Ltd. Method and device for encoding or decoding luma block and chroma block
US10820017B2 (en) * 2017-03-15 2020-10-27 Mediatek Inc. Method and apparatus of video coding
KR20210031783A (ko) * 2018-04-01 2021-03-22 주식회사 비원영상기술연구소 영상 부호화/복호화 방법 및 장치
MX2020013864A (es) 2018-06-21 2021-03-25 Ericsson Telefon Ab L M Particiones de mosaicos con sub-mosaicos en codificacion de video.
EP3811624A1 (fr) 2018-06-21 2021-04-28 Telefonaktiebolaget LM Ericsson (publ) Imbrication de pavés pour un décodage vidéo à 360°
BR112020025887A2 (pt) * 2018-06-21 2021-03-23 Telefonaktiebolaget Lm Ericsson (Publ) métodos para decodificar e para codificar uma imagem parada, circuitos decodificador e codificador, decodificador, programa de computador, portadora, meio de armazenamento legível por computador não transitório, e, codificador
WO2020070196A1 (fr) 2018-10-02 2020-04-09 Telefonaktiebolaget Lm Ericsson (Publ) Codage et décodage d'images sur la base d'un id de groupe de pavés
US11375243B2 (en) * 2019-07-17 2022-06-28 Tencent America LLC Method and apparatus for video coding

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5351095A (en) * 1989-08-29 1994-09-27 Thomson Consumer Electronics Method and device for estimating and hierarchically coding the motion of sequences of images
US7499492B1 (en) * 2004-06-28 2009-03-03 On2 Technologies, Inc. Video compression and encoding method
WO2011046607A2 (fr) * 2009-10-14 2011-04-21 Thomson Licensing Filtrage et codage de bord
WO2011061089A1 (fr) * 2009-11-19 2011-05-26 Thomson Licensing Procédé de codage et procédé de reconstruction d'un bloc d'une image
WO2011127966A1 (fr) * 2010-04-13 2011-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Prévision inter-plan

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2378790C1 (ru) * 2005-09-27 2010-01-10 Квэлкомм Инкорпорейтед Методики масштабируемости на основе информации содержимого
RU2496139C2 (ru) * 2006-06-26 2013-10-20 Квэлкомм Инкорпорейтед Эффективные аппроксимации с фиксированной запятой прямого и обратного дискретных косинусных преобразований
RU2419855C2 (ru) * 2006-06-26 2011-05-27 Квэлкомм Инкорпорейтед Снижение ошибок в ходе вычисления обратного дискретного косинусного преобразования
US8300698B2 (en) * 2006-10-23 2012-10-30 Qualcomm Incorporated Signalling of maximum dynamic range of inverse discrete cosine transform
US8295623B2 (en) * 2008-10-14 2012-10-23 France Telecom Encoding and decoding with elimination of one or more predetermined predictors
FR2948562B1 (fr) * 2009-07-30 2011-09-23 Prod Dentaires Pierre Rolland Composition pour barriere dentaire comprenant au moins un monomere, au moins un systeme initiateur de polymerisation, et au moins un indicateur permettant le suivi de la reaction de polymerisation
US20120269260A1 (en) * 2009-08-28 2012-10-25 Xavier Ducloux Method for coding a sequence of images
US20110077686A1 (en) * 2009-09-29 2011-03-31 Kyphon Sarl Interspinous process implant having a compliant spacer
ES2554237T3 (es) * 2009-10-01 2015-12-17 Sk Telecom. Co., Ltd. Método y aparato para codificar/decodificar imagen usando una capa dividida
PT3301648T (pt) * 2010-04-13 2020-04-20 Ge Video Compression Llc Herança em matriz de amostras em subdivisão multitree
US8559512B2 (en) * 2010-05-05 2013-10-15 Ceva D.S.P. Ltd. Device, system, and method for predicting residual data for intra and inter frame encoding of image or video data
US20110310976A1 (en) * 2010-06-17 2011-12-22 Qualcomm Incorporated Joint Coding of Partition Information in Video Coding
GB2482026B (en) * 2010-07-16 2015-06-17 Dyson Technology Ltd A vacuum cleaning appliance
US8421966B2 (en) * 2010-09-21 2013-04-16 Au Optronics Corporation Liquid crystal display comprising red, green, blue, and yellow sub-pixels having chromaticity on a CIE1931 chromaticity diagram wherein the sub-pixels have different areas
ES2691743T3 (es) * 2010-12-06 2018-11-28 Sun Patent Trust Método de codificación de imágenes, método de decodificación de imágenes, dispositivo de codificación de imágenes y dispositivo de decodificación de imágenes
US9049452B2 (en) * 2011-01-25 2015-06-02 Mediatek Singapore Pte. Ltd. Method and apparatus for compressing coding unit in high efficiency video coding
WO2012167713A1 (fr) * 2011-06-10 2012-12-13 Mediatek Inc. Procédé et appareil de codage vidéo échelonnable
JP5810700B2 (ja) * 2011-07-19 2015-11-11 ソニー株式会社 画像処理装置及び画像処理方法
FR2992815A1 (fr) * 2012-06-27 2014-01-03 France Telecom Procede de codage d'un bloc courant d'une premiere composante d'image par rapport a un bloc de reference d'au moins une deuxieme composante d'image, dispositif de codage et programme d'ordinateur correspondant
FR2993084A1 (fr) * 2012-07-09 2014-01-10 France Telecom Procede de codage video par prediction du partitionnement d'un bloc courant, procede de decodage, dispositifs de codage et de decodage et programmes d'ordinateur correspondants
US9237345B2 (en) * 2013-02-26 2016-01-12 Qualcomm Incorporated Neighbor block-based disparity vector derivation in 3D-AVC

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5351095A (en) * 1989-08-29 1994-09-27 Thomson Consumer Electronics Method and device for estimating and hierarchically coding the motion of sequences of images
US7499492B1 (en) * 2004-06-28 2009-03-03 On2 Technologies, Inc. Video compression and encoding method
WO2011046607A2 (fr) * 2009-10-14 2011-04-21 Thomson Licensing Filtrage et codage de bord
WO2011061089A1 (fr) * 2009-11-19 2011-05-26 Thomson Licensing Procédé de codage et procédé de reconstruction d'un bloc d'une image
WO2011127966A1 (fr) * 2010-04-13 2011-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Prévision inter-plan

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
B. BROSS; W.-J. HAN; J.-R. OHM; G. J. SULLIVAN; T. WIEGAND: "High efficiency video coding (HEVC) text specification draft 6", JCTVC-H1003 OF JCT-VC, February 2012 (2012-02-01)
CHIA-YUAN TENG ET AL: "A new quadtree predictive image coder", PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. (ICIP). WASHINGTON, OCT. 23 - 26, 1995; [PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. (ICIP)], LOS ALAMITOS, IEEE COMP. SOC. PRESS, US, vol. 2, 23 October 1995 (1995-10-23), pages 73 - 76, XP010196975, ISBN: 978-0-7803-3122-8, DOI: 10.1109/ICIP.1995.537418 *
MERKLE P ET AL: "The effects of multiview depth video compression on multiview rendering", SIGNAL PROCESSING. IMAGE COMMUNICATION, ELSEVIER SCIENCE PUBLISHERS, AMSTERDAM, NL, vol. 24, no. 1-2, 1 January 2009 (2009-01-01), pages 73 - 88, XP025884346, ISSN: 0923-5965, [retrieved on 20081105], DOI: 10.1016/J.IMAGE.2008.10.010 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015177547A (ja) * 2014-03-13 2015-10-05 メディアテック シンガポール ピーティーイー エルティーディー 簡易化した深度ベースのブロック分割の方法
CN104602000A (zh) * 2014-12-30 2015-05-06 北京奇艺世纪科技有限公司 一种编码单元的分割方法和装置
JP2017175191A (ja) * 2016-03-18 2017-09-28 富士通株式会社 符号化処理プログラム、符号化処理方法及び符号化処理装置

Also Published As

Publication number Publication date
KR20150034696A (ko) 2015-04-03
CN104429067B (zh) 2018-11-06
KR102114641B1 (ko) 2020-05-25
JP2015526976A (ja) 2015-09-10
RU2648571C2 (ru) 2018-03-26
ES2700747T3 (es) 2019-02-19
RU2015104039A (ru) 2016-08-27
FR2993084A1 (fr) 2014-01-10
EP2870761A1 (fr) 2015-05-13
EP2870761B1 (fr) 2018-09-05
US10893268B2 (en) 2021-01-12
BR112015000263A2 (pt) 2017-06-27
US20150208067A1 (en) 2015-07-23
BR112015000263B1 (pt) 2023-01-10
CN104429067A (zh) 2015-03-18
JP6282646B2 (ja) 2018-02-21

Similar Documents

Publication Publication Date Title
EP2870761B1 (fr) Procédé de codage video par prediction du partitionnement d&#39;un bloc courant, procédé de décodage, dispositifs de codage et de décodage et programmes d&#39;ordinateur correspondants
EP2868088B1 (fr) Procédé de codage d&#39;un bloc courant d&#39;une première composante d&#39;image par rapport a un bloc de référence d&#39;au moins une deuxième composante d&#39;image, dispositif de codage et programme d&#39;ordinateur correspondant
EP3061246B1 (fr) Procédé de codage et de décodage d&#39;images, dispositif de codage et de décodage d&#39;images et programmes d&#39;ordinateur correspondants
EP2277318B1 (fr) Codage et decodage d&#39;une image ou d&#39;une sequence d&#39;images decoupees selon des partitions de pixels de forme lineaire
EP2932714B1 (fr) Procédé de codage et décodage d&#39;images, dispositif de codage et décodage et programmes d&#39;ordinateur correspondants
EP3058737A1 (fr) Procédé de codage et de décodage d&#39;images, dispositif de codage et de décodage d&#39;images et programmes d&#39;ordinateur correspondants
EP3225031A2 (fr) Procédé de partitionnement et procédé de signalisation de partitionnement d&#39;une unité d&#39;arborescence de codage
EP4344203A2 (fr) Procédé de codage et décodage d&#39;images, dispositif de codage et décodage et programmes d ordinateur correspondants
WO2017037368A2 (fr) Procédé de codage et de décodage d&#39;images, dispositif de codage et de décodage d&#39;images et programmes d&#39;ordinateur correspondants
WO2012160313A1 (fr) Procédé de codage et de décodage d&#39;images, dispositif de codage et de décodage d&#39;images et programmes d&#39;ordinateur correspondants
EP3238449A1 (fr) Procede de codage d&#39;une image numerique, procede de decodage, dispositifs et programmes d&#39;ordinateurs associes
WO2018073523A1 (fr) Procédé de codage et de décodage de paramètres d&#39;image, dispositif de codage et de décodage de paramètres d&#39;image et programmes d&#39;ordinateur correspondants
WO2017129880A1 (fr) Procédé de codage et décodage de données, dispositif de codage et décodage de données et programmes d&#39;ordinateur correspondants
WO2019008253A1 (fr) Procédé de codage et décodage d&#39;images, dispositif de codage et décodage et programmes d&#39;ordinateur correspondants
EP3259909B1 (fr) Procédé de codage et décodage d&#39;images, dispositif de codage et décodage et programmes d&#39;ordinateur correspondants
WO2018167419A1 (fr) Procédé de codage et décodage d&#39;images, dispositif de codage et décodage et programmes d&#39;ordinateur correspondants
EP2962459A2 (fr) Dérivation de vecteur de mouvement de disparité, codage et décodage vidéo 3d utilisant une telle dérivation
FR3033114A1 (fr) Procede de codage et decodage d&#39;images, dispositif de codage et decodage et programmes d&#39;ordinateur correspondants

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13744716

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20147036557

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2015521044

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 14413977

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2013744716

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2015104039

Country of ref document: RU

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112015000263

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112015000263

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20150107