WO2015197945A1 - Procédé de codage d'une image numérique, procédé de décodage, dispositifs, et programmes d'ordinateurs associés - Google Patents

Procédé de codage d'une image numérique, procédé de décodage, dispositifs, et programmes d'ordinateurs associés Download PDF

Info

Publication number
WO2015197945A1
WO2015197945A1 PCT/FR2015/051587 FR2015051587W WO2015197945A1 WO 2015197945 A1 WO2015197945 A1 WO 2015197945A1 FR 2015051587 W FR2015051587 W FR 2015051587W WO 2015197945 A1 WO2015197945 A1 WO 2015197945A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
prediction
coefficient
signs
values
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/FR2015/051587
Other languages
English (en)
Inventor
Félix Henry
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
B Com SAS
Original Assignee
Orange SA
B Com SAS
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 SA, B Com SAS filed Critical Orange SA
Priority to US15/322,156 priority Critical patent/US20170142444A1/en
Priority to CN201580035066.7A priority patent/CN106797472A/zh
Priority to KR1020177002499A priority patent/KR20170026536A/ko
Priority to JP2017520009A priority patent/JP2017521980A/ja
Priority to EP15756178.8A priority patent/EP3183879A1/fr
Publication of WO2015197945A1 publication Critical patent/WO2015197945A1/fr
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/103Selection of coding mode or of prediction mode
    • 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/115Selection of the code volume for a coding unit prior to coding
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/18Methods 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 a set of transform coefficients
    • 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
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Definitions

  • the field of the invention is that of signal compression, in particular of a digital image or of a sequence of digital images, in which a prediction of a portion of the signal to be coded is made from a portion of the already coded signal.
  • the encoding / decoding of digital images applies in particular to images from at least one video sequence comprising:
  • the present invention applies similarly to the coding / decoding of 2D or 3D type images.
  • the invention may especially, but not exclusively, apply to video coding implemented in current AVC and HEVC video encoders and their extensions (MVC, 3D-AVC, MV-HEVC, 3D-HEVC, etc.), and to corresponding decoding.
  • the invention can also be applied to audio coding, for example implemented in current audio encoders (EVS, OPUS, MPEG-H, etc.) and their extensions and the corresponding decoding.
  • EVS audio encoders
  • OPUS OPUS
  • MPEG-H MPEG-H
  • decoding for example implemented in current audio encoders (EVS, OPUS, MPEG-H, etc.) and their extensions and the corresponding decoding.
  • a current block to be coded is predicted from a previously coded decoded block.
  • a residual block is obtained by subtracting the original values from the predicted values. It is then transformed using a DCT type transformation (for "Discrete Cosine Transform", in English) or wavelets.
  • the transformed coefficients are quantized and their amplitudes are subjected to entropic coding of the Huffmann or arithmetic type.
  • Such coding obtains effective performances because, because of the transformation, the values of the amplitudes to be coded are for the most part zero.
  • it does not apply to the values of the signs of the coefficients, whose + and - values are generally associated with equivalent appearance probabilities.
  • the signs of the coefficients are coded by a bit 0 or 1.
  • An advantage of such a selection is to predict the value of a sign with a correct prediction probability greater than 50%, thus to allow the application of entropic coding to the values of the prediction indicators.
  • This entropic coding encodes the sign information with an average bit rate less than one bit per sign, and thus makes it possible to increase the compression ratio.
  • the invention improves the situation.
  • an object of the invention is to propose a solution that more effectively selects the signs to be predicted.
  • Another objective of the invention is to propose a solution that is more efficient in compression.
  • a method of coding a digital image said image being divided into a plurality of blocks of pixels processed in a defined order, said method comprising the following steps, implemented for a current block: prediction of the values of the current block from at least one previously processed block according to a prediction mode chosen from among a plurality of predetermined modes,
  • the method comprises a step of determining a context of a coefficient of the current residual block among a plurality of predetermined contexts, as a function of at least one characteristic belonging to a group comprising at least the size of the block , the coefficient amplitude, the frequency of the coefficient and the prediction mode of the current block, and the sign of a coefficient of a current block to be predicted is selected according to a predetermined score associated with the coding context of the coefficient , said score being representative of a reliability level of the prediction of the sign.
  • the invention is based on an entirely new and inventive approach to image coding, which consists in predicting the value of the signs of the coefficients of a residual block, when their prediction is considered sufficiently reliable.
  • a coefficient is associated with a coding context for which it has previously established score values representative of a reliability level.
  • the invention bases its selection on a predetermined reliability of the prediction of signs. in a particular coding context.
  • a coding context of a coefficient can be defined by a set of coding characteristics of the coefficient and the block to which it belongs. It is understood that the reliability of the prediction of the sign varies according to such characteristics.
  • a plurality of contexts is thus defined, associated with levels of reliability that are distinct from one another.
  • the characteristics taken into account in defining the coding context of the coefficient correspond to those for which an impact on the reliability of the prediction result has been observed. For example, it was found that the sign predictions were more reliable for a large block (for example, 16x16 or 32x32 pixels) than for a small block (for example 4x4 or 8x8 pixels). Similarly, the prediction of a sign is more reliable for a low frequency coefficient than a high frequency one.
  • the invention thus makes it possible to solve the technical problem of the cost of coding the signs of the coefficients of a residue block in a coding scheme of a digital image. Indeed, with the invention, it is first of all ensured that the values of the prediction indicators of the predicted signs that are actually encoded in the bit stream will take the representative value of a correct prediction in the vast majority of cases, in order to provide a favorable context for entropy coding and thus guarantee increased compression performance.
  • the score is predetermined during a preliminary step of estimating a probability of correct prediction of the sign in the context of the coefficient.
  • the score corresponds to the exact value of probability of correct prediction, which ensures a maximum level of performance of the compression.
  • these probabilities are constructed for a coding context of the predetermined coefficient, before encoding and decoding, either by statistical accumulation on a set of signals representative of the signals to be coded, or by mathematical calculation from hypotheses on the distribution of the signs of the coefficients.
  • the sign of a quantized coefficient is selected when said score is greater than a predetermined threshold.
  • the higher the score the more the prediction of the sign of the coefficient can be considered reliable.
  • the selection is made by comparing the score of the coefficient with a threshold and the sign of the coefficient is selected, when the score of the coefficient is greater than this threshold.
  • the score may take binary values, a first value being representative of a sign to be predicted, a second value being representative of a sign not to be predicted.
  • the score is binary.
  • the signs selected are those associated with a representative score of a level of reliability deemed sufficient. This reduces the complexity of the method, because there is more comparison of the score with a pre-established threshold, insofar as the score itself is indicative of the selection or non-selection of a sign given.
  • the value of the threshold is predetermined.
  • the threshold value is fixed. It is known to the coder and the decoder. For example, it is empirically determined by statistical analysis of entropy encoding performance applied to the predicted signs over a representative set of samples.
  • the value of the threshold is adapted during coding according to characteristics of the coding.
  • the value of the threshold may vary during coding depending on the characteristics of the signal or the unit that performs the encoding.
  • An advantage of this solution is that it makes it possible to optimize the performance of the entropy coding over time.
  • the value of the threshold is calculated by the coder and transmitted to the decoder in the bit stream.
  • the value of the threshold is similarly calculated by the coder and the decoder.
  • the entropy coding step of the prediction indicator value of the sign of a coefficient takes into account the predetermined score associated with the coding context of the coefficient.
  • Such a device comprises the following units:
  • Said device comprises a unit for determining a context of a coefficient of the current residual block among a plurality of predetermined contexts, as a function of at least one characteristic belonging to a group comprising at least the size of the block, the amplitude of the coefficient, the frequency of the coefficient and the prediction mode of the current block, and in that the sign of a coefficient of the current residual block is selected according to a predetermined score associated with a context of coding said coefficient, said score being representative of a reliability level of the prediction of the sign.
  • the invention also relates to a method of decoding an image digital.
  • Such a method comprises the following steps:
  • said method is particular in that it comprises a step of determining a context of a coefficient of the current residual block among a plurality of predetermined contexts, as a function of at least one characteristic belonging to a group comprising at least the size of the block, the magnitude of the coefficient, the frequency of the coefficient and the prediction mode of the current block, and in that the sign of a coefficient of the current residue block is selected according to a predetermined score associated with a coding context of said coefficient, said score being representative of a reliability level of the prediction of the sign.
  • the step of selecting the signs to be predicted is implemented in a similar way in the coding method and in the decoding method.
  • the various embodiments or embodiments of the aforementioned coding method can be added independently or in combination with each other, to the steps of the decoding method as defined above.
  • the score is predetermined during a prior step of estimating a probability of correct prediction of the sign in the context of the coefficient.
  • the sign of a coefficient is selected when said score is greater than a predetermined threshold.
  • the score may take binary values, a first value being representative of a correct prediction of the sign of the quantized coefficient, a second value being representative of an incorrect prediction of the sign of the quantized coefficient.
  • the threshold value is predetermined.
  • the value of the threshold is adapted during decoding according to characteristics of the coding.
  • the entropy decoding step of the prediction indicator value of the sign of a coefficient takes into account the predetermined score associated with the coding context of the coefficient.
  • a device for decoding a digital image according to the invention is particular in that it comprises the following units:
  • Prediction of the values of the selected signs Decoding prediction indicator values of the selected signs from encoded data extracted from the bitstream, the indicator being adapted to take a value in a group comprising:
  • the decoding device is particular in that it comprises a unit for determining a context of a coefficient of the current residual block among a plurality of predetermined contexts, as a function of at least one characteristic belonging to a group comprising at least the size of the block, the amplitude of the coefficient, the frequency of the coefficient and the prediction mode of the current block, and in that the sign of a coefficient of the current residual block is selected according to a predetermined score associated with a coding context of said coefficient, said score being representative of a reliability level of the prediction of the sign.
  • the invention relates to a user terminal.
  • Such a terminal is particular in that it comprises a device for encoding a digital image and a device for decoding a digital image according to the invention.
  • the invention also relates to a computer program comprising instructions for implementing the steps of a method of encoding a digital image as described above, when this program is executed by a processor.
  • the invention also relates to a computer program comprising instructions for implementing the steps of a method of decoding a digital image as described above, when this program is executed by a processor.
  • the invention finally relates to recording media, readable by a processor, integrated or not integrated with the encoding device of a digital image and the decoding device of a digital image according to the invention, possibly removable, respectively memorizing a computer program implementing an encoding method and a computer program implementing a decoding method, as described above.
  • FIG. 1 schematically shows the steps of the method of encoding a digital image according to an exemplary embodiment of the invention
  • Figure 2 schematically shows a decoded current block of a decoded digital image
  • FIG. 3 schematically shows the steps of the method of decoding a digital image according to an exemplary embodiment of the invention
  • FIG. 4 shows an example of a simplified structure of a device for coding a digital image and a device for decoding a digital image according to one embodiment of the invention.
  • the general principle of the invention is based on the selection of the signs of coefficients to be predicted as a function of a predetermined score representative of a reliability level of the prediction of the sign for a coding context associated with the coefficient.
  • an original video consisting of a sequence of M images II, 12,... IM, with M nonzero integer is considered.
  • the images are encoded by an encoder, the encoded data is inserted into a bit stream TB transmitted to a decoder via a communication network, or a compressed file FC, intended to be stored on a hard disk for example.
  • the decoder extracts the coded data, then received and decoded by a decoder in a predefined order known from the encoder and the decoder, for example in the temporal order II, then 12, and then IM, this order being able to differ according to the mode of the decoder. production.
  • each block will undergo an encoding or decoding operation consisting of a sequence of operations, including non-exhaustively a prediction, a residue calculation, a transformation, a quantization and an entropy coding. This sequence of operations will be detailed later.
  • the first block to be processed is selected as the current block C. For example, this is the first block (in lexicographic order). This block has NxN pixels.
  • the current decoded picture ID will be noted.
  • the ID image is (re) constructed in the encoder so that it can be used to predict the other pixels of the video.
  • a prediction P of the original block C is determined. It is a prediction block constructed by known means, typically by motion compensation (block derived from a previously decoded reference image ), or intra prediction (block constructed from the decoded pixels immediately adjacent to the current block in the ID image).
  • the prediction information related to P is encoded in the bit stream TB or compressed file FC. It is assumed here that there are K possible prediction modes m1, m2, ..., mK, with K nonzero integer, and that the prediction mode chosen for block C is the mode mk.
  • the residue R is transformed into a residue block transformed, called RT, by a DCT transform or wavelet transform, all two known to those skilled in the art and in particular implemented in the JPEG standards for the DCT and JPEG2000 for the wavelet transform.
  • the transformed residue RT is quantized by conventional quantization means, for example scalar or vector, into a quantized residue block RQ.
  • This quantized block RQ contains NxN coefficients. As known in the state of the art, these coefficients are scanned in a predetermined order so as to constitute a one-dimensional vector RQ [i], where the index i varies from 0 to N 2 -1. The index i is called the frequency of the coefficient RQ [i].
  • these coefficients are scanned in increasing frequency order, for example along a zigzag path, which is known from the JPEG fixed image coding standard.
  • the amplitude information of the coefficients of the residual block RQ is encoded by entropy coding, for example according to a Huffman coding or arithmetic coding technique.
  • amplitude is meant here the absolute value of the coefficient.
  • Amplitude coding means are for example described in the HEVC standard and in the article by Sole et al, entitled “Transform Coefficient Coding in HEVC", published in the journal IEEE Transactions on Circuits and Systems for Video Technology, Volume 22, Issue: 12, pp. 1765 - 1777, December 2012.
  • one or more information relating to the amplitude is encoded. CA amplitudes are obtained.
  • a context Cxj among a plurality J of predetermined contexts, with J nonzero integer.
  • a context is defined by at least one coding characteristic of the coefficient or block from which it is derived.
  • the following characteristics are considered:
  • the type of image in which the current block is located for example of the Intra or Inter type, known from the HEVC standard, as a function of the energy of the predictor P, or depending on the total number of non-zero coefficients in the current block.
  • a step E7 one selects the signs of the coefficients of the block RQ to predict, according to a predetermined score Sj, with j integer between 1 and J, for the context Cxj associated with the coefficient RQ [i] considered .
  • a score Sj is representative of a reliability level of the sign of the coefficient RQ [i].
  • the score Sj takes values in a predetermined set, for example from 0 to 10.
  • the score is a simple binary indication, one of which indicates that the sign will be predicted, and the other that the sign will not be predicted.
  • the scores Sj correspond to probabilities known a priori, dependent on the context Cxj associated with the coefficient RQ [i].
  • a set of probabilities of correct detection of the signs of the coefficients RQ is stored in memory.
  • the signs to be predicted are selected by thresholding the scores with which they are associated.
  • T is a predetermined threshold, for example equal to 0.7.
  • the threshold T is known from the encoder and the decoder.
  • the threshold T may be chosen during encoding and written in the compressed file or in the bit stream comprising the coded data representative of the digital image Im. For example, if the unit that performs the encoding does not have enough computing resources at a given time, it is possible to increase this threshold T so as to predict fewer signs, and therefore implement fewer calculations.
  • the threshold T it would also be possible to vary the threshold T according to the content of the images to be encoded: an image containing a lot of content, such as large variations in brightness or large movements would use a high threshold, and an image with little content such as that low luminosity variations or few movements, would use a lower threshold T, so as to smooth the complexity or the memory necessary for the coding of each image.
  • the steps E6 and E7 for determining the context of the coefficients and the selection of the signs to be predicted are based on the values of the quantized coefficients of the transformed residue block. Note that the invention is not limited to this particular case, these steps can also be implemented before the quantization of the residual block coefficients.
  • the set of RQ signs that are not predicted are coded in a conventional manner. It is known in particular from the H EVC standard, in particular from the article by Sole et al., already mentioned, the fact of transmitting each sign in the form of a binary element 0 or 1, with a convention associating one with the sign more and the other sign less.
  • the selected signs are predicted as "to be predicted” in the RQ block.
  • This is carried out by means known to those skilled in the art, for example according to the technique described in the article by Ponomarenko et al., Entitled “Prediction of DCT signals in block-based lossy image compression", published in the Proceedings of the SPIE 6497 Conference, Image Processing: Algorithms and Systems V, 64970L, February 2007.
  • as many decoded blocks as combinatorics of the signs to be predicted are constructed. Each decoded version uses a different combination of the signs to predict.
  • RQ block For example, suppose the RQ block equals ⁇ +8, +7, 0, -6, -3,0,0,2, -1,0,0,0,0,0,0 ⁇ .
  • the signs to predict are those of 1 and 4 th coefficients (amplitude 8 and 6 respectively).
  • the signs of the 2 nd , 5 th , 8 th and 9 th coefficients which were not to be predicted.
  • there are two signs to predict which can take the values ⁇ +, + ⁇ , ⁇ +, - ⁇ , ⁇ -, + ⁇ and ⁇ -, - ⁇ .
  • RQVO ⁇ +8, +7, 0, +6, -3,0,0,2, -1,0,0,0,0,0,0 ⁇
  • RQV1 ⁇ +8, +7, 0, -6, -3,0,0,2, -1,0,0,0,0,0,0 ⁇
  • RQV2 ⁇ -8, +7, 0, +6, -3,0,0,2, -1,0,0,0,0,0,0 ⁇
  • RQV3 ⁇ -8, +7, 0, -6, -3,0,0,2, -1,0,0,0,0,0,0 ⁇
  • Each RQVs block is then decoded with the conventional means of dequantization and inverse transform, adding the predicted block P to produce S virtual decoded blocks BDVs.
  • the likelihood of each of these blocks is tested with a likelihood criterion.
  • the combination of signs corresponding to the virtual decoded block that maximizes the likelihood criterion is retained.
  • the likelihood criterion used is the minimization of the quadratic error along the boundary between the virtual decoded block and the previously decoded pixels.
  • FIG. 2 there is shown a decoded image ID and DVs virtual decoded block of size NxN pixels of the image, where DVs (n, m) is the value of DVs pixel of the block located on the n 'th row and m th column of the block.
  • the broken line F represents the boundary between the decoded virtual block and the rest of the image (previously decoded).
  • ID (k, l) is the value of the ID pixel located on the k th line and the i th column of the image, and (lin, col) are the coordinates of the DVs block (coordinates of the pixel at the top left of DVS) in the image ID.
  • 5M (3, B) V (5 (0, a) - 3 (Zin - 1, col + af + Y ( ⁇ ( ⁇ , O) - 3 (Zin + a, col - 1)) 2
  • DV opt argmin SM DV (lD, DV s ) where ID represents the reconstructed image after decoding.
  • the likelihood criterion used is the minimization of the error with the predictor P. This consists in selecting the virtual decoded block which minimizes the error with the predictor P.
  • the virtual residue associated with the optimal virtual decoded block is thus identified.
  • DV opt DV3
  • the associated virtual block is then RQV3.
  • step E10 for each sign to be predicted, information is calculated representative of the difference between the prediction of the sign and the real value of the sign, called the IP prediction indicator or the sign's residual.
  • the sign prediction is ⁇ -, - ⁇ while the true signs are ⁇ +, - ⁇ .
  • the IP prediction indicator is set to 1 when the prediction is correct and to 0 when the prediction is incorrect.
  • the values of the IP prediction indicator for each sign to be predicted are coded by a known entropy coding technique, such as for example a Huffman coding, arithmetic coding or CABAC coding such as 'used in the HEVC standard.
  • a known entropy coding technique such as for example a Huffman coding, arithmetic coding or CABAC coding such as 'used in the HEVC standard.
  • a CIP value of the coded prediction indicator is obtained.
  • the prediction indicator since only the signs that are associated with a representative score of a sufficient level of reliability are predicted, the prediction indicator more often takes the value 1 than the value 0. This is exploited by entropy coding to reduce the size of the compressed signal.
  • the entropy coding takes into account the score Sj associated with the predicted sign for coding the IP indicator.
  • the score has a value between 0 (low reliability of the prediction) and 10 (high reliability of the prediction)
  • the entropic coding of the indicators is parameterized taking into account the score, so as to exploit the more or less uniform distribution of the indicators.
  • CABAC-type entrapic coding known from the HEVC standard, is used by initializing the probabilities used in CABAC based on the predetermined scores.
  • the decoded block D corresponding to the block RQ is constructed by applying to the quantized residue RQ the dequantization and reverse transform steps (known per se).
  • a decoded residue block RD is obtained.
  • the predictor block P is added to RD to obtain the decoded block D.
  • a step E13 the coded data, that is to say the amplitudes of the coefficients CA, the unpredictable signs coded CS, the indicators of the predicted signs CIP are inserted in the bit stream TB or in the compressed file FC .
  • a step E14 it is tested whether the current block C is the last block to be processed by the coding unit, given the order of travel defined above. If yes, the coding unit has finished processing. If not, the next step is the step of selecting the next block E0. This block becomes the current block to be processed, and the next step is the prediction step E1.
  • the context Cxj depends on the size of blocks I (out of 4 possible sizes, as previously described), of the intra mk prediction mode among 35 possible prediction modes (as described in the standard HEVC mentioned above), the frequency i (among 16, 64, 256 or 1024 possible frequencies, depending on the size of the blocks), and the amplitude
  • a preliminary examination on typical video sequences makes it possible to calculate a probability of correct detection of the sign for each context Cxj. This probability is the score Sj associated with each context Cxj, which makes it possible to select the signs to be predicted from a threshold of 0.7, as previously described.
  • a compression gain of 1 to 2% is observed compared to the state of the art.
  • a TB bitstream or an FC compressed file produced by the encoding method according to the invention which has just been described is considered.
  • One or the other encodes a video composed of a sequence of M digital images Im, with M nonzero integer and m integer between 1 and M.
  • An image Im is subdivided into blocks of size NxN, with N nonzero integer and for example equal to 4, 8, 16 or 32 pixels.
  • the decoding method according to the invention comprises a step D0 of selecting a first block to be decoded D ', which is identical to the step E0 of selecting a first block to be coded presented in relation with FIG.
  • a prediction P 'of the block to be decoded D' is determined.
  • the prediction information related to P ' is read in the bit stream or the compressed file and is decoded.
  • This prediction information comprises a prediction mode mk of the block to be decoded C current.
  • the prediction mode can instead be totally inferred.
  • a quantized residual block RQ 'corresponding to the block to be decoded D' are read in the bit stream or the compressed file and then decoded.
  • the coding contexts Cxj 'of the coefficients of the quantized residual block RQ' are determined from among a plurality of predetermined contexts. This step is identical to that of the coding method.
  • the signs of the coefficients RQ '[i] to be predicted are selected. This step is identical to that implemented at coding. It associates with each coefficient RQ '[i] the coding context Cxj' previously determined and is based on a predetermined score Sj 'representative of a reliability level of a prediction of the sign for the context Cxj' coefficient considered.
  • the unpredicted signs are decoded with means adapted to those used during the coding.
  • the decoding implemented is binary, for example entropic or Huffman.
  • the unpredicted NPS 'decoded signs are obtained.
  • step D6 the signs of the selected coefficients are predicted. This step is identical to that implemented at coding.
  • a list of RQV virtual residue blocks is thus obtained, similar to that of the RQV residue blocks obtained at the coder.
  • Each RQV block is then decoded with the conventional means of dequantization and inverse transform, adds the predicted block P 'to produce S virtual decoded blocks BDV's.
  • the likelihood of each of these blocks is tested with a likelihood criterion. The one whose combination of signs maximizes this criterion is selected.
  • the bitstream is extracted and the DIP values' of an IP prediction indicator of the predicted signs are decoded. It is an information representative of a difference between the prediction of a sign and the real value of this sign, that is to say of a sign residue. It can take the following values: - a value representative of a correct prediction; a value representative of an incorrect prediction.
  • the values of this IP indicator in the current quantized residual block RQV are used to correct, if necessary, the predicted values of the selected signs.
  • the values of the prediction indicator present in the bit stream are representative of a first false prediction and a second right prediction.
  • the block RQ ' is dequantized to obtain a dequantized block RT'. This is done by means adapted to the quantification used during the coding (scalar dequantization, vector dequantization ...)
  • the dequantized residue RT ' is subjected to a transform that is the inverse of that used for coding.
  • the decoded residue R 'is then obtained.
  • the decoded residue R ' is added to the prediction P', to reconstruct the decoded block D '.
  • This block D ' is integrated in the image ID being decoded.
  • step D12 it is tested whether the current block is the last block to be processed by the decoding unit, given the order of travel defined above. If yes, the coding unit has finished processing. If not, the next step is the step of selecting the next block DO.
  • step D13 one comes to select the next block to be processed by the decoding unit, following the path defined above. This block becomes the current block to be decoded, and the next step is the prediction step D1.
  • module and/or entity
  • module may correspond either to a software component, or to a hardware component, or to a set of hardware and / or software components, capable of implementing perform the function (s) described for the module or entity concerned.
  • FIG. 4 an example of a simplified structure of a device 100 for encoding a digital image according to the invention is now presented.
  • the device 100 implements the coding method according to the invention which has just been described in relation with FIG.
  • the device 100 comprises a processing unit 110, equipped with a ⁇ processor, and driven by a computer program Pg l 120, stored in a memory 130 and implementing the coding method according to the invention.
  • the code instructions of the computer program Pgi 120 are for example loaded into a RAM before being executed by the processor of the processing unit 110.
  • the processor of the processing unit 110 implements the steps of the method described above, according to the instructions of the computer program 120.
  • the device 100 comprises at least one prediction unit PRED of the values of the current block from at least one block previously processed according to a prediction mode chosen from among a plurality of predetermined modes, a CALC unit for calculating a residue block by subtracting the predicted values from the original values of the current block, a TRANS unit for obtaining a residue block transformed by application of a transform to the pixels of the residue block, said transformed residue block comprising coefficients, a DET unit for determining a context of a coefficient of the current residual block among a plurality of predetermined contexts, as a function of at least one characteristic belonging to a group comprising at least the size of the block, the amplitude of the coefficient, the frequency of the coefficient and the prediction mode of the current block, a unit SEL of selection of the signs of the coefficients to be predicted e in the current block, the sign of a coefficient of the transformed residue block being selected according to a predetermined score associated with the coding context of said coefficient, said score being representative of a reliability level of
  • the device 100 further comprises a unit BD1 for storing the coding contexts of the coefficients and predetermined scores associated with each of these contexts. These units are driven by the ⁇ processor of the processing unit 110.
  • a device 100 can be integrated with a user terminal TU.
  • the device 100 is then arranged to cooperate at least with the following module of the terminal TU: a data transmission / reception module E / R, through which the bit stream TB or the compressed file FC is transmitted in a network telecommunications network, for example a wired network or a wireless network.
  • FIG. 4 an example of a simplified structure of a device 200 for decoding a digital image according to the invention is now presented.
  • the device 200 implements the decoding method according to the invention which has just been described in relation to FIG.
  • the device 200 comprises a processing unit 210, equipped with a processor ⁇ 2, and driven by a computer program Pg2 220, stored in a memory 230 and implementing the decoding method according to the invention.
  • the code instructions of the computer program Pg2 220 are for example loaded into a RAM before being executed by the processor of the processing unit 210.
  • the processor of the processing unit 210 sets implement the steps of the method described above, according to the instructions of the computer program 220.
  • the device 200 comprises at least one prediction unit PRED 'of the current block from at least a previously processed block and information relating to a prediction mode of the current block, a DEC RES unit for entropic decoding of the coded amplitudes of the coefficients of a residue block extracted from the bit stream, said residual block having been obtained by subtraction of the values predicted from said at least one previously processed block and information relating to a prediction mode mk of the current block, to the original values of the current block, a e DET 'unit for determining a context of a coefficient of the current residual block among a plurality of predetermined contexts, as a function of at least one characteristic belonging to a group comprising at least the size of the block, the amplitude of the coefficient , the frequency of the coefficient and the prediction mode of the block current, a unit SEL 'for selecting the signs of the coefficients to be predicted in the transformed residue block, the sign of a coefficient of the current residue block being selected according to a predetermined score
  • the device 200 further comprises a unit BD2 for storing the coding contexts of the coefficients and predetermined scores associated with each of these contexts.
  • Such a device 200 can be integrated with a user terminal TU.
  • the device 200 is then arranged to cooperate at least with the following module of the terminal TU:
  • a data transmission / reception module E / R through which the bit stream TB or the compressed file FC is received from a telecommunications network;
  • An image rendering device DISP for example a terminal screen, through which the decoded digital image or the sequence of decoded images is returned to a user.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

L'invention concerne un procédé de codage d'une image numérique,ladite image étant divisée en une pluralité de blocs de pixels traités selon un ordre défini, ledit procédé comprenant les étapes suivantes, mises en œuvre pour un bloc courant: -Prédiction (E1) des valeurs du bloc courant à partir d'au moins un bloc précédemment traité selon un mode de prédiction choisi parmi une pluralité de modes possibles, -Calcul (E2) d'un bloc résidu par soustraction des valeurs prédites aux valeurs originales du bloc courant, -Obtention (E3) d'un bloc résidu transformé par application d'une transformée aux pixels du bloc résidu, ledit bloc résidu comprenant des coefficients, -Sélection (E7) des signes des coefficients à prédire dans le bloc résidu transformé; -Prédiction (E9) des signes sélectionnés dans le bloc courant à partir de blocs voisins codés décodés; -Calcul (E10) d'un indicateur de prédiction des signes sélectionnés à partir des prédictions des signes sélectionnés et de leurs valeurs originales, -Codage entropique (E11)des valeurs d'indicateurs obtenues pour les signes prédits. Selon l'invention,le procédé comprend une étape de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés et le signe d'un coefficient du bloc résidu transformé est sélectionné en fonction d'un score prédéterminé associé au contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.

Description

PROCÉDÉ DE CODAGE D'UNE IMAGE NUMÉRIQUE, PROCÉDÉ DE DÉCODAGE, DISPOSITIFS, ET PROGRAMMES D'ORDINATEURS ASSOCIÉS
1. Domaine de l'invention
Le domaine de l'invention est celui de la compression de signal, en particulier d'une image numérique ou d'une séquence d'images numériques, dans lequel une prédiction d'une portion du signal à coder est réalisée à partir d'une portion du signal déjà codée.
Le codage/décodage d'images numériques s'applique notamment à des images issues d'au moins une séquence vidéo comprenant :
- des images issues d'une même caméra et se succédant temporellement (codage/décodage de type 2D),
- des images issues de différentes caméras orientées selon des vues différentes (codage/décodage de type 3D),
- des composantes de texture et de profondeur correspondantes (codage/décodage de type 3D),
- etc.
La présente invention s'applique de manière similaire au codage/décodage d'images de type 2D ou 3D.
L'invention peut notamment, mais non exclusivement, s'appliquer au codage vidéo mis en œuvre dans les codeurs vidéo actuels AVC et HEVC et leurs extensions (MVC, 3D- AVC, MV-HEVC, 3D-HEVC, etc), et au décodage correspondant.
L'invention peut s'appliquer aussi au codage audio, par exemple mis en œuvre dans les codeurs audio actuels (EVS, OPUS, MPEG-H, etc) et leurs extensions et au décodage correspondant.
2. Présentation de l'art antérieur
On considère un schéma de compression classique d'une image numérique, selon lequel l'image est divisée en blocs de pixels. Un bloc courant à coder est prédit à partir d'un bloc précédemment codé décodé. Un bloc résidu est obtenu par soustraction des valeurs originales aux valeurs prédites. Il est ensuite transformé à l'aide d'une transformation de type DCT (pour « Discrète Cosinus Transform », en anglais) ou ondelettes. Les coefficients transformés sont quantifiés puis leurs amplitudes sont soumises à un codage entropique de type Huffmann ou arithmétique. Un tel codage obtient des performances efficaces, car, du fait de la transformation, les valeurs des amplitudes à coder sont en grande majorité nulles. En revanche, il ne s'applique pas aux valeurs des signes des coefficients, dont les valeurs + et - sont généralement associées à des probabilités d'apparition équivalentes. Ainsi, les signes des coefficients sont codés par un bit 0 ou 1.
On connaît de l'article de Koyama, J. et al, intitulé « Coefficient sign bit compression in video coding », et publié dans les proceedings de la conférence «Picture Coding Symposium (PCS) », en mai 2012, une méthode de sélection de signes de coefficients d'un bloc résidu à prédire. La sélection proposée est basée sur un nombre de coefficients prédéterminé en fonction de leur amplitude et de la taille du bloc dont ils sont issus. Les signes sélectionnés sont prédits. Les prédictions obtenues sont comparées aux valeurs originales des signes pour déterminer la valeur d'un indicateur de prédiction, appelé aussi résidu d'un signe prédit. Cet indicateur peut prendre deux valeurs, qui sont une première valeur représentative d'une prédiction correcte et une deuxième valeur représentative d'une prédiction incorrecte. Le reste des signes est codé de façon explicite, sans prédiction.
Un avantage d'une telle sélection est de prédire la valeur d'un signe avec une probabilité de prédiction correcte supérieure à 50%, donc de permettre l'application d'un codage entropique aux valeurs des indicateurs de prédiction. Ce codage entropique code l'information de signe avec un débit moyen inférieur à un bit par signe, et permet ainsi d'augmenter le taux de compression.
3. Inconvénients de l'art antérieur
Néanmoins, cette technique présente au moins deux inconvénients majeurs :
- Certains signes dont la probabilité de prédiction correcte est proche de 50 % entrent dans la sélection de coefficients à prédire. Si ceci n'a pas d'impact sur la performance de compression (pas de gain), il y a une augmentation inutile du nombre de calculs à effectuer ; - Certains coefficients dont la probabilité de prédiction correcte est élevée (supérieure à 50%) ne sont pas retenus dans la sélection de coefficients à prédire. Il y a alors une perte d'efficacité de compression, car ces coefficients pourraient être utilisés pour diminuer encore la taille du signal codé.
4. Objectifs de l'invention
L'invention vient améliorer la situation.
L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur. Plus précisément, un objectif de l'invention est de proposer une solution qui sélectionne plus efficacement les signes à prédire.
Un autre objectif de l'invention est de proposer une solution qui soit plus performante en compression.
5. Exposé de l'invention
Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints à l'aide d'un procédé de codage d'une image numérique, ladite image étant divisée en une pluralité de blocs de pixels traités dans un ordre défini, ledit procédé comprenant les étapes suivantes, mises en œuvre pour un bloc courant : - Prédiction des valeurs du bloc courant à partir d'au moins un bloc précédemment traité selon un mode de prédiction choisi parmi une pluralité de modes prédéterminés,
Calcul d'un bloc résidu par soustraction des valeurs prédites aux valeurs originales du bloc courant,
- Obtention d'un bloc résidu transformé par application d'une transformée à des pixels du bloc résidu, ledit bloc résidu transformé comprenant des coefficients, Sélection des signes des coefficients à prédire dans le bloc résidu transformé ; Prédiction des signes sélectionnés; Calcul d'un indicateur de prédiction des signes sélectionnés à partir des prédictions des signes sélectionnés et de leurs valeurs originales, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant :
o une première valeur représentative d'une prédiction correcte ;
o une deuxième valeur représentative d'une prédiction incorrecte ;
Codage entropique des valeurs d'indicateurs obtenues pour les signes prédits.
Selon l'invention, le procédé comprend une étape de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins la taille du bloc, l'amplitude du coefficient, la fréquence du coefficient et le mode de prédiction du bloc courant, et le signe d'un coefficient d'un bloc courant à prédire est sélectionné en fonction d'un score prédéterminé associé au contexte de codage du coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.
Ainsi, l'invention repose sur une approche tout à fait nouvelle et inventive du codage d'images, qui consiste à prédire la valeur des signes des coefficients d'un bloc résidu, lorsque leur prédiction est considérée comme suffisamment fiable. Pour ce faire, un coefficient est associé à un contexte de codage pour lequel on a préalablement établi des valeurs de scores représentatives d'un niveau de fiabilité.
Contrairement à l'art antérieur qui sélectionne un nombre prédéterminé de signes à prédire en fonction de l'amplitude de leur coefficient et de la taille du bloc dont ils sont issus, l'invention base sa sélection sur une fiabilité préétablie de la prédiction de signes dans un contexte de codage particulier. Un contexte de codage d'un coefficient peut être défini par un ensemble de caractéristiques de codage du coefficient et du bloc auquel il appartient. On comprend que la fiabilité de la prédiction du signe varie en fonction de telles caractéristiques.
Avec l'invention, on définit ainsi une pluralité de contextes, associés à des niveaux de fiabilité distincts les uns des autres. Les caractéristiques prises en compte pour définir le contexte de codage du coefficient correspondent à celles pour lesquelles on a pu observer un impact sur la fiabilité du résultat de prédiction. Par exemple, il a été constaté que les prédictions de signes étaient plus fiables pour un bloc de grande taille (par exemple, 16x16 ou 32x32 pixels) que pour un bloc de petite taille (par exemple 4x4 ou 8x8 pixels). De même, la prédiction d'un signe est plus fiable pour un coefficient de fréquence faible que de fréquence élevée.
L'invention permet ainsi de résoudre le problème technique du coût du codage de signes des coefficients d'un bloc résidu dans un schéma de codage d'une image numérique. En effet, avec l'invention, on s'assure au préalable que les valeurs des indicateurs de prédiction des signes prédits qui sont effectivement codées dans le train binaire prendront la valeur représentative d'une prédiction correcte dans la grande majorité des cas, afin de procurer un contexte favorable au codage entropique et donc garantir une performance de compression accrue.
Selon une caractéristique avantageuse de l'invention, le score est prédéterminé au cours d'une étape préalable d'estimation d'une probabilité de prédiction correcte du signe dans le contexte du coefficient.
Ainsi, le score correspond à la valeur exacte de probabilité de prédiction correcte, ce qui assure un niveau de performance maximal de la compression.
Par exemple, ces probabilités sont construites pour un contexte de codage du coefficient prédéterminé, avant l'encodage et le décodage, soit par accumulation statistique sur un ensemble de signaux représentatifs des signaux à coder, soit par calcul mathématique à partir d'hypothèses sur la distribution des signes des coefficients.
Selon un autre aspect de l'invention, le signe d'un coefficient quantifié est sélectionné lorsque ledit score est supérieur à un seuil prédéterminé. Plus le score est élevé, plus la prédiction du signe du coefficient peut être considérée comme fiable. La sélection se fait par comparaison du score du coefficient à un seuil et le signe du coefficient est sélectionné, lorsque que le score du coefficient est supérieur à ce seuil.
Un avantage d'une telle solution est qu'elle est simple et économe en ressources de calculs. Selon un autre aspect de l'invention, le score peut prendre des valeurs binaires, une première valeur étant représentative d'un signe à prédire, une deuxième valeur étant représentative d'un signe à ne pas prédire.
Dans ce mode de réalisation, le score est binaire. Les signes sélectionnés sont ceux associés à un score représentatif d'un niveau de fiabilité considéré comme suffisant. Ceci permet de réduire la complexité de la méthode, car il n'y a plus de comparaison du score avec un seuil pré-établi, dans la mesure où le score lui-même est indicateur de la sélection ou non-sélection d'un signe donné.
Selon encore un autre aspect de l'invention, la valeur du seuil est prédéterminée. La valeur du seuil est fixée. Elle est connue du codeur et du décodeur. Par exemple, elle est déterminée empiriquement par analyse statistique des performances du codage entropique appliqué aux signes prédits sur un ensemble représentatif d'échantillons.
Un avantage de cette solution est qu'elle est simple et facile à mettre en œuvre.
Selon encore un autre aspect de l'invention, la valeur du seuil est adaptée en cours de codage en fonction de caractéristiques du codage.
La valeur du seuil peut varier en cours de codage en fonction des caractéristiques du signal ou de l'unité qui réalise l'encodage.
Un avantage de cette solution est qu'elle permet d'optimiser les performances du codage entropique au cours du temps.
Selon une première variante, la valeur du seuil est calculée par le codeur et transmise au décodeur dans le train binaire.
Selon une deuxième variante, la valeur du seuil est calculée de façon similaire par le codeur et le décodeur.
Selon encore un autre aspect de l'invention, l'étape de codage entropique de la valeur d'indicateur de prédiction du signe d'un coefficient prend en compte le score prédéterminé associé au contexte de codage du coefficient.
De cette manière, on tire au mieux parti de la connaissance a priori du niveau de fiabilité de la prédiction des signes du bloc courant et on améliore les performances de compression.
Le procédé qui vient d'être décrit dans ses différents modes de réalisation est avantageusement mis en œuvre par un dispositif de décodage d'une image numérique selon l'invention. Un tel dispositif comprend les unités suivantes :
Prédiction des valeurs du bloc courant à partir d'au moins un bloc précédemment traité selon un mode de prédiction choisi parmi une pluralité de modes prédéterminés,
- Calcul d'un bloc résidu par soustraction des valeurs prédites aux valeurs originales du bloc courant,
Obtention d'un bloc résidu transformé par application d'une transformée à des pixels du bloc résidu, ledit bloc résidu transformé comprenant des coefficients, Sélection des signes des coefficients à prédire dans le bloc résidu transformé ; - Prédiction des signes sélectionnés;
Calcul d'un indicateur de prédiction des signes sélectionnés à partir des prédictions des signes sélectionnés et de leurs valeurs originales, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant :
o une première valeur représentative d'une prédiction correcte ;
o une deuxième valeur représentative d'une prédiction incorrecte ;
Codage entropique des valeurs d'indicateurs obtenues pour les signes prédits. Ledit dispositif est particulier en ce qu'il comprend une unité de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins la taille du bloc, l'amplitude du coefficient, la fréquence du coefficient et le mode de prédiction du bloc courant, et en ce que le signe d'un coefficient du bloc résidu courant est sélectionné en fonction d'un score prédéterminé associé à un contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.
Corrélativement, l'invention concerne aussi un procédé de décodage d'une image numérique. Un tel procédé comprend les étapes suivantes :
Prédiction du bloc courant à partir d'au moins un bloc précédemment traité et d'informations relatives à un mode de prédiction du bloc courant;
Décodage entropique des amplitudes codées des coefficients d'un bloc résidu transformé, extraites du train binaire;
Sélection des signes des coefficients à prédire dans le bloc résidu transformé; Prédiction des valeurs des signes sélectionnés ;
Décodage de valeurs d'indicateurs de prédiction des signes sélectionnés à partir de données codées extraites du train binaire, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant :
o une première valeur représentative d'une prédiction correcte ; o une deuxième valeur représentative d'une prédiction incorrecte ; Calcul des valeurs décodées des signes sélectionnés à partir des valeurs d'indicateurs de prédiction décodées;
- Reconstruction des coefficients du bloc résidu à partir des amplitudes décodées, et des signes décodés.
Selon l'invention, ledit procédé est particulier en ce qu'il comprend une étape de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins la taille du bloc, l'amplitude du coefficient, la fréquence du coefficient et le mode de prédiction du bloc courant, et en ce que le signe d'un coefficient du bloc résidu courant est sélectionné en fonction d'un score prédéterminé associé à un contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.
On notera que l'étape de sélection des signes à prédire est mise en œuvre de façon similaire dans le procédé de codage et dans le procédé de décodage. Il en résulte que les différents modes ou caractéristiques de réalisation du procédé de codage précités peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux étapes du procédé de décodage tel que défini ci-dessus. En particulier, selon un aspect de l'invention, le score est prédéterminé au cours d'une étape préalable d'estimation d'une probabilité de prédiction correcte du signe dans le contexte du coefficient.
Selon un autre aspect de l'invention, le signe d'un coefficient est sélectionné lorsque ledit score est supérieur à un seuil prédéterminé.
Selon encore un autre aspect de l'invention, le score peut prendre des valeurs binaires, une première valeur étant représentative d'une prédiction correcte du signe du coefficient quantifié, une deuxième valeur étant représentative d'une prédiction incorrecte du signe du coefficient quantifié. Selon encore un autre aspect, la valeur du seuil est prédéterminée.
Selon encore un autre aspect de l'invention, la valeur du seuil est adaptée en cours de décodage en fonction de caractéristiques du codage.
Selon encore un autre aspect, l'étape de décodage entropique de la valeur d'indicateur de prédiction du signe d'un coefficient prend en compte le score prédéterminé associé au contexte de codage du coefficient.
Le procédé de décodage qui vient d'être décrit est avantageusement mis en œuvre par un dispositif de décodage d'une image numérique selon l'invention. Un tel dispositif est particulier en ce qu'il comprend les unités suivantes :
Prédiction du bloc courant à partir d'au moins un bloc précédemment traité et d'informations relatives à un mode de prédiction du bloc courant;
Décodage entropique des amplitudes codées des coefficients d'un bloc résidu transformé extraites du train binaire;
- Sélection des signes des coefficients à prédire dans le bloc résidu transformé;
Prédiction des valeurs des signes sélectionnés; Décodage de valeurs d'indicateurs de prédiction des signes sélectionnés à partir de données codées extraites du train binaire, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant :
o une première valeur représentative d'une prédiction correcte ;
o une deuxième valeur représentative d'une prédiction incorrecte ; et
Calcul des valeurs décodées des signes sélectionnés à partir des valeurs d'indicateurs de prédiction décodées;
Selon l'invention, le dispositif de décodage est particulier en ce qu'il comprend une unité de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins la taille du bloc, l'amplitude du coefficient, la fréquence du coefficient et le mode de prédiction du bloc courant, et en ce que le signe d'un coefficient du bloc résidu courant est sélectionné en fonction d'un score prédéterminé associé à un contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.
Corrélativement, l'invention concerne un terminal d'utilisateur.
Un tel terminal est particulier en ce qu'il comprend un dispositif de codage d'une image numérique et un dispositif de décodage d'une image numérique selon l'invention. L'invention concerne encore un programme d'ordinateur comportant des instructions pour la mise en œuvre des étapes d'un procédé de codage d'une image numérique tel que décrit précédemment, lorsque ce programme est exécuté par un processeur.
L'invention concerne aussi un programme d'ordinateur comportant des instructions pour la mise en œuvre des étapes d'un procédé de décodage d'une image numérique tel que décrit précédemment, lorsque ce programme est exécuté par un processeur.
Ces programmes peuvent utiliser n'importe quel langage de programmation. Ils peuvent être téléchargés depuis un réseau de communication et/ou enregistrés sur un support lisible par ordinateur. L'invention se rapporte enfin à des supports d'enregistrement, lisibles par un processeur, intégrés ou non au dispositif de codage d'une image numérique et au dispositif de décodage d'une image numérique selon l'invention, éventuellement amovible, mémorisant respectivement un programme d'ordinateur mettant en œuvre un procédé de codage et un programme d'ordinateur mettant en œuvre un procédé de décodage, tels que décrits précédemment.
6. Liste des figures
D'autres avantages et caractéristiques de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier de l'invention, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : la figure 1 présente de façon schématique les étapes du procédé de codage d'une image numérique selon un exemple de réalisation de l'invention ; la figure 2 présente de façon schématique un bloc courant décodé d'une image numérique décodée; la figure 3 présente de façon schématique les étapes du procédé de décodage d'une image numérique selon un exemple de réalisation de l'invention ; la figure 4 présente un exemple de structure simplifiée d'un dispositif de codage d'une image numérique et d'un dispositif de décodage d'une image numérique selon un mode de réalisation de l'invention.
7. Description d'un mode de réalisation particulier de l'invention
Le principe général de l'invention repose sur la sélection des signes de coefficients à prédire en fonction d'un score prédéterminé représentatif d'un niveau de fiabilité de la prédiction du signe pour un contexte de codage associé au coefficient.
En relation avec la Figure 1, on considère une vidéo originale constituée d'une suite de M images II, 12, ...IM, avec M entier non nul. Les images sont encodées par un encodeur, les données codées sont insérées un train binaire TB transmis à un décodeur via un réseau de communication, ou un fichier compressé FC, destiné à être stocké sur un disque dur par exemple. Le décodeur extrait les données codées, puis reçues et décodées par un décodeur dans un ordre prédéfini connu de l'encodeur et du décodeur, par exemple dans l'ordre temporel II, puis 12, puis IM, cet ordre pouvant différer suivant le mode de réalisation. Lors de l'encodage d'une image Im, avec m entier compris entre 1 et M, celle-ci est subdivisée en blocs de taille maximale qui peuvent à leur tour être subdivisés en blocs plus petits. Chaque bloc va subir une opération d'encodage ou de décodage consistant en une suite d'opérations, comprenant de manière non exhaustive une prédiction, un calcul de résidu, une transformation, une quantification et un codage entropique. Cette suite d'opérations sera détaillée par la suite.
Au cours d'une étape E0 on sélectionne comme bloc courant C le premier bloc à traiter. Par exemple, il s'agit du premier bloc (dans l'ordre lexicographique). Ce bloc comporte NxN pixels.
On suppose qu'il existe L découpes en blocs possibles numérotées de 1 à L, et que la découpe utilisée sur le bloc C est la découpe numéro I. Par exemple, il peut y avoir 4 découpes possibles, en blocs de taille 4x4, 8x8, 16x16, et 32x32.
Par ailleurs, on notera ID l'image courante décodée. On notera que, dans un codeur vidéo, l'image ID est (re)construite dans le codeur de façon à pouvoir servir pour prédire les autres pixels de la vidéo. Au cours d'une étape El, on détermine une prédiction P du bloc original C. Il s'agit d'un bloc de prédiction construit par des moyens connus, typiquement par compensation de mouvement (bloc issu d'une image de référence précédemment décodée), ou par prédiction intra (bloc construit à partir des pixels décodés immédiatement adjacents au bloc courant dans l'image ID). Les informations de prédiction liées à P sont codées dans le train binaire TB ou fichier compressé FC. On suppose ici qu'il y a K modes de prédiction possibles m l, m2,..., mK, avec K entier non nul, et que le mode de prédiction choisi pour le bloc C est le mode mk.
Au cours d'une étape E2, un résidu original R est formé, par soustraction R = C-P de la prédiction P du bloc courant C au bloc courant C. Au cours d'une étape E3, le résidu R est transformé en un bloc résidu transformé, appelé RT, par une transformée de type DCT ou transformée en ondelettes, toutes les deux connues de l'homme de métier et notamment mises en œuvre dans les normes JPEG pour la DCT et JPEG2000 pour la transformée en ondelettes.
En E4, le résidu transformé RT est quantifié par des moyens classiques de quantification, par exemple scalaire ou vectorielle, en un bloc résidu quantifié RQ. Ce bloc quantifié RQ contient NxN coefficients. De façon connue dans l'état de l'art, ces coefficients sont scannés dans un ordre prédéterminés de façon à constituer un vecteur monodimensionnel RQ[i], où l'indice i varie de 0 à N2-l . L'indice i est appelé fréquence du coefficient RQ[i] . Classiquement, on scanne ces coefficients par ordre croissant de fréquence, par exemple selon un parcours en zigzag, qui est connu de la norme de codage d'image fixes JPEG.
Lors d'une étape E5, on vient coder les informations d'amplitude des coefficients du bloc résidu RQ par codage entropique, par exemple selon une technique de codage de Huffman ou de codage arithmétique. Par amplitude, on entend ici la valeur absolue du coefficient. Des moyens de codage des amplitudes sont par exemple décrits dans la norme HEVC et dans l'article de Sole et al, intitulé « Transform Coefficient Coding in HEVC », publié dans la revue IEEE Transactions on Circuits and Systems for Video Technology, Volume 22, Issue: 12, pp. 1765 - 1777, en décembre 2012. Classiquement, on peut coder pour chaque coefficient une information représentative du fait que le coefficient est non nul. Ensuite, pour chaque coefficient non nul, une ou plusieurs informations relatives à l'amplitude sont codées. On obtient les amplitudes codées CA.
Au cours d'une étape E6, on associe à chaque coefficient du bloc RQ un contexte Cxj parmi une pluralité J de contextes prédéterminés, avec J entier non nul. Un tel contexte est défini par au moins une caractéristique de codage du coefficient ou du bloc dont il est issu. De façon avantageuse, on considère les caractéristiques suivantes :
- la taille du bloc RQ,
l'amplitude du coefficient quantifié RQ[i],
la fréquence du coefficient ou indice i dans le bloc RQ,
le mode de prédiction du bloc courant mk parmi les K modes possibles.
En effet, la prédiction du signe est d'autant plus fiable que l'amplitude est élevée.
De même, il a été constaté que lorsque le bloc est de taille plus grande, la fréquence du coefficient plus faible, la prédiction est plus fiable. Enfin, il a été constaté que la prédiction est plus fiable lorsque le bloc courant est associé à une prédiction intra d'un certain type.
De façon alternative, d'autres contextes sont envisageables. Ainsi, il est possible de tenir compte du type d'image dans lequel se trouve le bloc courant, par exemple du type Intra ou Inter, connu de la norme HEVC, en fonction de l'énergie du prédicteur P, ou encore en fonction du nombre total de coefficients non nuls dans le bloc courant.
Au cours d'une étape E7, on sélectionne les signes des coefficients du bloc RQ à prédire, en fonction d'un score prédéterminé Sj, avec j entier compris entre 1 et J, pour le contexte Cxj associé au coefficient RQ[i] considéré. Un tel score Sj est représentatif d'un niveau de fiabilité du signe du coefficient RQ[i].
Selon un premier mode de réalisation de l'invention, le score Sj prend des valeurs dans un ensemble prédéterminé, par exemple de 0 à 10.
Selon un deuxième mode de réalisation, le score est une simple indication binaire, dont l'une des deux valeurs indique que le signe sera prédit, et l'autre que le signe ne sera pas prédit.
Selon un troisième mode de réalisation de l'invention, les scores Sj correspondent à des probabilités connues a priori, dépendantes du contexte Cxj associé au coefficient RQ[i] . On dispose, dans l'encodeur, d'un ensemble de probabilités de détection correcte des signes des coefficients RQ. Par exemple cet ensemble de probabilités est stocké en mémoire.
Ces probabilités ont été construites avant l'encodage et le décodage, soit par accumulation statistique sur un ensemble de signaux représentatifs des signaux à coder, soit par calcul mathématique à partir d'hypothèses sur la distribution des signes des coefficients. Pour un coefficient RQ[i] associé au contexte Cxj, on peut donc obtenir le score Sj[i] en calculant la probabilité p[l] [mk] [i] [ | RQ[i] | ] de prédiction correcte du signe du coefficient RQ[i] .
Avantageusement, les signes à prédire sont sélectionnés par seuillage des scores auxquels ils sont associés. Ainsi, pour chaque coefficient RQ[i] qui a un signe (c'est-à- dire, qui n'est pas nul) et qui est associé à un contexte Cxj de score Sj, on prédit le signe si et seulement si Sj>T, où T est un seuil prédéterminé, par exemple égal à 0,7. Par exemple, le seuil T est connu du codeur et du décodeur. Selon une variante, le seuil T peut être choisi en cours de codage et inscrit dans le fichier compressé ou dans le train binaire comprenant les données codées représentatives de l'image numérique Im . Par exemple, si l'unité qui effectue l'encodage ne dispose pas d'assez de ressources de calcul à un moment donné, il lui est possible d'augmenter ce seuil T de façon à prédire moins de signes, et donc mettre en oeuvre moins de calculs.
Il serait également possible de faire varier le seuil T en fonction du contenu des images à coder : une image comportant beaucoup de contenu, tel que des variations de luminosité importantes ou des mouvements nombreux utiliserait un seuil élevé, et une image comportant peu de contenu tel que des variations de luminosité faibles ou mouvements peu nombreux, utiliserait un seuil T plus bas, de façon à lisser la complexité ou la mémoire nécessaire au codage de chaque image.
Dans l'exemple de réalisation de l'invention de la figure 1, les étapes E6 et E7 de détermination du contexte des coefficients et la sélection des signes à prédire s'appuient sur les valeurs des coefficients quantifiés du bloc résidu transformé. On notera que l'invention ne se limite pas à ce cas particulier, ces étapes pouvant aussi être mises en œuvre avant celle de quantification des coefficients du bloc résidu.
Au cours d'une étape E8, l'ensemble des signes de RQ qui ne sont pas prédits sont codés de façon classique. Il est connu notamment de la norme H EVC, en particulier de l'article de Sole et al., déjà cité, le fait de transmettre chaque signe sous forme d'un élément binaire 0 ou 1, avec une convention associant l'un au signe plus et l'autre au signe moins.
Au cours d'une étape E9, on prédit les signes sélectionnés comme « à prédire » dans le bloc RQ. Ceci est effectué par des moyens connus de l'homme de métier, par exemple selon la technique décrite dans l'article de Ponomarenko et al, intitulé «Prédiction of signs of DCT coefficients in block-based lossy image compression », publié dans les Proceedings de la Conférence SPIE 6497, Image Processing : Algorithms and Systems V, 64970L, en février 2007. Dans un mode de réalisation de l'invention, on construit autant de blocs décodés que de combinatoires des signes à prédire. Chaque version décodée utilise une combinaison différente des signes à prédire. Par exemple, supposons que le bloc RQ soit égal à { +8, +7, 0, -6, -3,0,0,2,-1,0,0,0,0,0,0,0}. Supposons également que les signes à prédire soient ceux des 1er et 4eme coefficients (d'amplitude 8 et 6 respectivement). On connaît déjà les signes des 2eme, 5eme, 8eme et 9eme coefficients, qui n'étaient pas à prédire. Dans notre exemple, il y a deux signes à prédire, qui peuvent prendre les valeurs {+,+}, {+,-}, {-,+} et {-,-}. On va donc construire 4 blocs virtuels RQVs suivants :
RQVO = { +8, +7, 0, +6, -3,0,0,2,-1,0,0,0,0,0,0,0}
RQV1 = { +8, +7, 0, -6, -3,0,0,2,-1,0,0,0,0,0,0,0}
RQV2 = { -8, +7, 0, +6, -3,0,0,2,-1,0,0,0,0,0,0,0}
RQV3 = { -8, +7, 0, -6, -3,0,0,2,-1,0,0,0,0,0,0,0}
On décode ensuite chaque bloc RQVs avec les moyens classiques de déquantification et de transformée inverse, leur ajoute le bloc prédit P, pour produire S blocs décodés virtuels BDVs. La vraisemblance de chacun de ces blocs est testée avec un critère de vraisemblance. Est retenue la combinaison de signes correspondant au bloc décodé virtuel qui maximise le critère de vraisemblance.
Avantageusement, le critère de vraisemblance utilisé est la minimisation de l'erreur quadratique le long de la frontière entre le bloc décodé virtuel et les pixels précédemment décodés.
En relation avec la Figure 2, on a représenté une image décodée ID et un bloc décodé virtuel DVs de taille NxN pixels de cette image, où DVs(n,m) est la valeur du pixel du bloc DVs situé sur la n'eme ligne et la mieme colonne du bloc. La ligne brisée F représente la frontière entre le bloc virtuel décodée et le reste de l'image (précédemment décodé). ID(k,l) est la valeur du pixel de ID situé sur la keme ligne et la ieme colonne de l'image, et (lin, col) sont les coordonnées du bloc DVs (coordonnées du pixel en haut à gauche de DVS) dans l'image ID. On considère un opérateur « Side Matching » SM(3, B)), avec 3 image courante et B bloc courant, défini comme suit : iV- l iV- 1
5M(3, B) = V (5(0, a) - 3(Zin - 1, col + a f + Y (β(α, 0) - 3(Zin + a, col - l))2 Sur la figure 2, ceci revient à former la somme (xl-yl)2+ (x2-y2)2+ (x3-y3)2+ (x4- y4)2+ (x5-y4)2+ (x6-y5)2+ (x7-y6)2+ (x8-y7)2.
Nous allons déterminer le bloc décodé virtuel optimal DVopt qui minimise cette mesure :
DVopt = argminDV SM(lD, DVs) où ID représente l'image reconstruite après décodage.
Alternativement, le critère de vraisemblance utilisé est la minimisation de l'erreur avec le prédicteur P. Cela consiste à sélectionner le bloc décodé virtuel qui minimise l'erreur avec le prédicteur P.
Le résidu virtuel associé au bloc décodé virtuel optimal est ainsi identifié. Supposons par exemple que DVopt = DV3, le bloc virtuel associé est alors RQV3. On considère alors les signes affectés au résidu virtuel identifié, dans notre exemple {-,-}. Ces signes deviennent la prédiction des signes : la prédiction du signe associé au 1er coefficient est - et la prédiction associée au signe du 4eme coefficient est également -.
Au cours d'une étape E10, on calcule pour chaque signe à prédire une information représentative de la différence entre la prédiction du signe et la valeur réelle du signe, appelée indicateur de prédiction IP ou résidu du signe.
Ainsi, dans l'exemple précédent, la prédiction de signe est {-,-} tandis que les vrais signes sont {+,-}.
Par convention, l'indicateur de prédiction IP est mis à 1 lorsque la prédiction est correcte et à 0 lorsque la prédiction est incorrecte.
Au cours d'une étape El i, les valeurs de l'indicateur de prédiction IP pour chaque signe à prédire sont codées par une technique de codage entropique connue, telle que par exemple un codage de Huffman, codage arithmétique ou encore codage CABAC tel qu'utilisé dans la norme HEVC. On obtient une valeur CIP de l'indicateur de prédiction codé.
Selon l'invention, du fait que seuls sont prédits les signes qui sont associés à un score représentatif d'un niveau de fiabilité suffisant, l'indicateur de prédiction prend plus souvent la valeur 1 que la valeur 0. Ceci est mis à profit par le codage entropique pour réduire la taille du signal compressé. Avantageusement, le codage entropique tient compte du score Sj associé au signe prédit pour coder l'indicateur IP. Par exemple, dans le mode de réalisation de l'invention selon lequel le score a une valeur comprise entre 0 (faible fiabilité de la prédiction) et 10 (haute fiabilité de la prédiction), le codage entropique des indicateurs est paramétré en tenant compte du score, de façon à exploiter la répartition plus ou moins uniforme des indicateurs. Par exemple, on utilise un codage entropique de type CABAC, connu de la norme HEVC, en initialisant les probabilités utilisées dans CABAC en fonction des scores prédéterminés.
Au cours d'une étape E12, on construit le bloc décodé D correspondant au bloc RQ, en appliquant au résidu quantifié RQ les étapes de déquantification et de transformée inverse (connues en soi). On obtient un bloc résidu décodé RD. On ajoute à RD le bloc prédicteur P pour obtenir le bloc décodé D.
Au cours de cette étape on vient également ajouter le bloc décodé D à l'image reconstruite ID. Ceci permet de disposer dans le codeur d'une version décodée de l'image courante. Cette version décodée est utilisée dans notamment au cours de l'étape de construction d'une prédiction des signes sélectionnés pour être prédits.
Au cours d'une étape E13 les données codées, c'est-à-dire les amplitudes des coefficients CA, les signes non prédits codés CS, les indicateurs des signes prédits CIP sont insérés dans le train binaire TB ou dans le fichier compressé FC. Au cours d'une étape E14, on vient tester si le bloc courant C est le dernier bloc à traiter par l'unité de codage, compte tenu de l'ordre de parcours défini précédemment. Si oui, l'unité de codage a terminé son traitement. Si non, l'étape suivante est l'étape de sélection du bloc suivant E0. Ce bloc devient le bloc courant à traiter, et l'étape suivante est l'étape de prédiction El . Dans un exemple de réalisation de l'invention, le contexte Cxj dépend de la taille de blocs I (parmi 4 tailles possibles, comme décrit précédemment), du mode de prédiction intra mk parmi 35 modes de prédiction possibles (tels que décrits dans la norme HEVC évoquée précédemment), de la fréquence i (parmi 16, 64, 256 ou 1024 fréquences possibles, en fonction de la taille des blocs), et de l'amplitude | RQ[i] | (qui peut prendre 256 valeurs possibles lorsqu'elle elle est codée sur 8 bits). Dans cet exemple, le nombre J de contextes utilisés est égal à 35x(16+64+256+ 1024)x256 = 12185600. Un examen préalable sur des séquences vidéo typiques permet de calculer une probabilité de détection correcte du signe pour chacun des contextes Cxj. Cette probabilité est le score Sj associé à chaque contexte Cxj, ce qui permet de sélectionner les signes à prédire à partir d'un seuil de 0.7, comme décrit précédemment. Ainsi, un gain en compression de 1 à 2 % est observé par rapport à l'état de l'art.
En relation avec la Figure 3, on présente maintenant les étapes du procédé de décodage d'une image numérique codée selon un exemple de réalisation de l'invention.
On considère un train de bits TB ou un fichier compressé FC produit par le procédé de codage selon l'invention qui vient d'être décrit. L'un ou l'autre encode une vidéo composée d'une suite de M images numériques Im, avec M entier non nul et m entier compris entre 1 et M . Une image Im est subdivisée en blocs de taille NxN, avec N entier non nul et par exemple égal à 4, 8, 16 ou 32 pixels.
Le procédé de décodage selon l'invention comprend une étape DO de sélection d'un premier bloc à décoder D', qui est identique à l'étape EO de sélection d'un premier bloc à coder présentée en relation avec la Figure 1.
Au cours d'une étape Dl, on détermine une prédiction P' du bloc à décoder D'. Les informations de prédiction liées à P' sont lues dans le train de bits ou le fichier compressé et sont décodées. Ces informations de prédiction comprennent un mode de prédiction mk du bloc à décoder C courant.
Selon une variante, le mode de prédiction peut au contraire être totalement inféré.
Au cours d'une étape D2, les informations d'amplitude d'un bloc résidu quantifié RQ' correspondant au bloc à décoder D' sont lues dans le train binaire ou le fichier compressé puis décodées. A l'issue de cette étape, on connaît donc les amplitudes des coefficients du bloc résidu quantifié RQ'[i], avec i entier compris entre 1 et NxN, mais pas encore les signes.
Au cours d'une étape D3, on détermine les contextes de codage Cxj' des coefficients du bloc résidu quantifié RQ' parmi une pluralité de contextes prédéterminés. Cette étape est identique à celle du procédé de codage. Au cours d'une étape D4, on sélectionne les signes des coefficients RQ'[i] à prédire. Cette étape est identique à celle mise en œuvre au codage. Elle associe à chaque coefficient RQ'[i] le contexte de codage Cxj' précédemment déterminé et s'appuie sur un score prédéterminé Sj' représentatif d'un niveau de fiabilité d'une prédiction du signe pour le contexte Cxj' de coefficient considéré.
Au cours d'une étape D5, on décode les signes non prédits avec des moyens adaptés à ceux utilisés lors du codage. Typiquement, le décodage mis en œuvre est binaire, par exemple entropique ou de Huffman. On obtient les signes décodés non prédits NPS'.
Au cours d'une étape D6, on prédit les signes des coefficients sélectionnés. Cette étape est identique à celle mise en œuvre au codage. On obtient donc une liste de blocs résidus virtuels RQV, similaire à celle des blocs résidus RQV obtenue au codeur. On décode ensuite chaque bloc RQV avec les moyens classiques de déquantification et transformée inverse, leur ajoute le bloc prédit P', pour produire S blocs décodés virtuels BDV's. La vraisemblance de chacun de ces blocs est testée avec un critère de vraisemblance. Est retenu celui dont la combinaison de signes maximise ce critère.
Dans l'exemple précédent, il s'agissait de la combinaison {-,-}.
Au cours d'une étape D7, on extrait du train de bits et on décode les valeurs DIP' d'un indicateur de prédiction IP des signes prédits. Il s'agit d'une information représentative d'une différence entre la prédiction d'un signe et la valeur réelle de ce signe, c'est-à-dire d'un résidu de signe. Elle peut prendre les valeurs suivantes : - une valeur représentative d'une prédiction correcte ; une valeur représentative d'une prédiction incorrecte.
Au cours d'une étape D8, les valeurs de cet indicateur IP dans le bloc résidu quantifié courant RQV sont utilisées pour corriger si nécessaire les valeurs prédites des signes sélectionnés.
Ainsi, dans l'exemple précédent, les valeurs de l'indicateur de prédiction présente dans le train binaire sont représentatives d'une première prédiction fausse et d'une deuxième prédiction juste. Ceci nous permet de décoder les signes réels des coefficients du bloc résidu courant {+,-}, et de reconstruire le résidu décodé complet RQ' = { +8, +7, 0, -6, -3,0,0,2,-1,0,0,0,0,0,0,0}. Au cours d'une étape D9, le bloc RQ' est déquantifié pour obtenir un bloc RT' déquantifié. Ceci est réalisé par des moyens adaptés à la quantification utilisée lors du codage (déquantification scalaire, déquantification vectorielle...)
Au cours d'une étape D10, on applique au résidu déquantifié RT' une transformée inverse de celle utilisée au codage. On obtient alors le résidu décodé R'.
Au cours d'une étape DU, le résidu décodé R' est ajouté à la prédiction P', pour reconstruire le bloc décodé D'. Ce bloc D' est intégré à l'image ID en cours de décodage.
Au cours d'une étape D12, on teste si le bloc courant est le dernier bloc à traiter par l'unité de décodage, compte tenu de l'ordre de parcours défini précédemment. Si oui, l'unité de codage a terminé son traitement. Si non, l'étape suivante est l'étape de sélection du bloc suivant DO.
Au cours d'une étape D13, on vient sélectionner le bloc suivant à traiter par l'unité de décodage, suivant le parcours défini précédemment. Ce bloc devient le bloc courant à décoder, et l'étape suivante est l'étape de prédiction Dl.
On notera que l'invention qui vient d'être décrite, peut être mise en œuvre au moyen de composants logiciels et/ou matériels. Dans cette optique, les termes « module » et « entité », utilisés dans ce document, peuvent correspondre soit à un composant logiciel, soit à un composant matériel, soit encore à un ensemble de composants matériels et/ou logiciels, aptes à mettre en œuvre la ou les fonctions décrites pour le module ou l'entité concerné(e).
En relation avec la figure 4, on présente maintenant un exemple de structure simplifiée d'un dispositif 100 de codage d'une image numérique selon l'invention. Le dispositif 100 met en œuvre le procédé de codage selon l'invention qui vient d'être décrit en relation avec la Figure 1.
Par exemple, le dispositif 100 comprend une unité de traitement 110, équipée d'un processeur μΐ, et pilotée par un programme d'ordinateur Pg l 120, stocké dans une mémoire 130 et mettant en œuvre le procédé de codage selon l'invention.
A l'initialisation, les instructions de code du programme d'ordinateur Pgi 120 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 110. Le processeur de l'unité de traitement 110 met en œuvre les étapes du procédé décrit précédemment, selon les instructions du programme d'ordinateur 120.
Dans cet exemple de réalisation de l'invention, le dispositif 100 comprend au moins une unité PRED de prédiction des valeurs du bloc courant à partir d'au moins un bloc précédemment traité selon un mode de prédiction choisi parmi une pluralité de modes prédéterminés, une unité CALC de calcul d'un bloc résidu par soustraction des valeurs prédites aux valeurs originales du bloc courant, une unité TRANS d'obtention d'un bloc résidu transformé par application d'une transformée aux pixels du bloc résidu, ledit bloc résidu transformé comprenant des coefficients, une unité DET de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins la taille du bloc, l'amplitude du coefficient, la fréquence du coefficient et le mode de prédiction du bloc courant, une unité SEL de sélection des signes des coefficients à prédire dans le bloc courant, le signe d'un coefficient du bloc résidu transformé étant sélectionné en fonction d'un score prédéterminé associé au contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe, une unité PRED SIGNS de prédiction des signes sélectionnés dans le bloc courant à partir de blocs voisins codés décodés selon un critère de minimisation d'erreur, une unité CALC IP de calcul d'un indicateur de prédiction des signes sélectionnés à partir des prédictions des signes sélectionnés et de leurs valeurs originales, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant une première valeur représentative d'une prédiction correcte et une deuxième valeur représentative d'une prédiction incorrecte, une unité COD IP de codage entropique des valeurs d'indicateurs obtenues pour les signes prédits et une unité COD NPS de codage des signes non prédits.
Le dispositif 100 comprend en outre une unité BD1 de stockage des contextes de codage des coefficients et des scores prédéterminés associés à chacun de ces contextes. Ces unités sont pilotées par le processeur μΐ de l'unité de traitement 110. De façon avantageuse, un tel dispositif 100 peut être intégré à un terminal d'utilisateur TU. Le dispositif 100 est alors agencé pour coopérer au moins avec le module suivant du terminal TU : un module E/R d'émission/réception de données, par l'intermédiaire duquel le train binaire TB ou le fichier compressé FC est transmis dans un réseau de télécommunications, par exemple un réseau filaire ou un réseau hertzien.
Toujours en relation avec la figure 4, on présente maintenant un exemple de structure simplifiée d'un dispositif 200 de décodage d'une image numérique selon l'invention. Le dispositif 200 met en œuvre le procédé de décodage selon l'invention qui vient d'être décrit en relation avec la Figure 3.
Par exemple, le dispositif 200 comprend une unité de traitement 210, équipée d'un processeur μ2, et pilotée par un programme d'ordinateur Pg2 220, stocké dans une mémoire 230 et mettant en œuvre le procédé de décodage selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur Pg2 220 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 210. Le processeur de l'unité de traitement 210 met en œuvre les étapes du procédé décrit précédemment, selon les instructions du programme d'ordinateur 220. Dans cet exemple de réalisation de l'invention, le dispositif 200 comprend au moins une unité PRED' de prédiction du bloc courant à partir d'au moins un bloc précédemment traité et d'informations relatives à un mode de prédiction du bloc courant, une unité DEC RES de décodage entropique des amplitudes codées des coefficients d'un bloc résidu extraites du train binaire, ledit bloc résidu ayant été obtenu par soustraction des valeurs prédites à partir dudit au moins un bloc précédemment traité et des informations relatives à un mode de prédiction mk du bloc courant, aux valeurs originales du bloc courant, une unité DET' de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins la taille du bloc, l'amplitude du coefficient, la fréquence du coefficient et le mode de prédiction du bloc courant, une unité SEL' de sélection des signes des coefficients à prédire dans le bloc résidu transformé, le signe d'un coefficient du bloc résidu courant étant sélectionné en fonction d'un score prédéterminé associé au contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe, une unité DEC NPS' de décodage des signes non prédits à partir des données codées extraites du train binaire, une unité PRED' SIGNS de prédiction des valeurs des signes sélectionnés à partir des signes de pixels d'au moins un bloc voisin décodé du bloc courant selon un critère de minimisation d'erreur, une unité DEC IP de décodage de valeurs d'indicateurs de prédiction des signes sélectionnés à partir des données codées extraites du train binaire, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant une première valeur représentative d'une prédiction correcte et une deuxième valeur représentative d'une prédiction incorrecte, une unité CALC des valeurs décodées des signes prédits à partir des valeurs d'indicateurs de prédiction décodées des signes sélectionnés, une unité TRANSF-1 de transformation inverse des amplitudes de coefficients du bloc résidu transformé RQ'[i], une unité RECONST de reconstruction des coefficients du bloc résidu à partir des amplitudes décodées et des signes décodés.
Le dispositif 200 comprend en outre une unité BD2 de stockage des contextes de codage des coefficients et des scores prédéterminés associés à chacun de ces contextes.
Ces unités sont pilotées par le processeur μ2 de l'unité de traitement 210. De façon avantageuse, un tel dispositif 200 peut être intégré à un terminal d'utilisateur TU. Le dispositif 200 est alors agencé pour coopérer au moins avec le module suivant du terminal TU :
Un module E/R d'émission/réception de données, par l'intermédiaire duquel le train binaire TB ou le fichier compressé FC est reçu d'un réseau de télécommunications ;
Un dispositif DISP de restitution d'images, par exemple un écran de terminal, par l'intermédiaire duquel l'image numérique décodée ou la suite d'images décodées est restituée à un utilisateur.
II 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

Procédé de codage d'une image numérique, ladite image (Im) étant divisée en une pluralité de blocs de pixels (C) traités dans un ordre défini, ledit procédé comprenant les étapes suivantes, mises en œuvre pour un bloc courant :
Prédiction (El) des valeurs du bloc courant à partir d'au moins un bloc précédemment traité selon un mode de prédiction choisi parmi une pluralité de modes prédéterminés,
Calcul (E2) d'un bloc résidu (R) par soustraction des valeurs prédites aux valeurs originales du bloc courant,
Obtention (E3) d'un bloc résidu (RT) transformé par application d'une transformée à des pixels du bloc résidu, ledit bloc résidu transformé comprenant des coefficients,
Sélection (E7) des signes des coefficients à prédire dans le bloc résidu transformé ;
Prédiction (E9) des signes sélectionnés;
Calcul (E10) d'un indicateur de prédiction (IP) des signes sélectionnés à partir des prédictions des signes sélectionnés et de leurs valeurs originales, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant :
o une première valeur représentative d'une prédiction correcte ; o une deuxième valeur représentative d'une prédiction incorrecte ;
- Codage entropique (El i) des valeurs d'indicateurs obtenues pour les signes prédits; ledit procédé étant caractérisé en ce qu'il comprend une étape (E6) de détermination d'un contexte (Cxj) d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins :
La taille du bloc,
L'amplitude du coefficient,
La fréquence du coefficient, Le mode de prédiction du bloc courant ; et en ce que le signe d'un coefficient du bloc résidu transformé est sélectionné en fonction d'un score (Sj) prédéterminé associé au contexte de codage (Cxj) dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.
Procédé de codage d'une image numérique selon la revendication 1, caractérisé en ce que le score est prédéterminé au cours d'une étape préalable d'estimation d'une probabilité de prédiction correcte du signe dans le contexte du coefficient.
3. Procédé de codage d'une image numérique selon l'une des revendications 1 et 2, caractérisé en ce que le signe d'un coefficient quantifié est sélectionné lorsque ledit score est supérieur à un seuil (T) prédéterminé.
Procédé de codage d'une image numérique selon l'une des revendications 1 à 3, caractérisé en ce que le score peut prendre des valeurs binaires, une première valeur étant représentative d'un signe à prédire, une deuxième valeur étant représentative d'un signe à ne pas prédire.
Procédé de codage d'une image numérique selon la revendication 3, caractérisé en ce que la valeur du seuil (T) est prédéterminée.
Procédé de codage d'une image numérique selon la revendication 3, caractérisé en ce que la valeur du seuil (T) est adaptée en cours de codage en fonction de caractéristiques du codage.
7. Procédé de codage d'une image numérique selon l'une des revendications précédentes, caractérisé en ce que l'étape (E10) de codage entropique de la valeur d'indicateur de prédiction du signe d'un coefficient prend en compte le score prédéterminé associé au contexte de codage du coefficient.
Dispositif (100) de codage d'une image numérique, ladite image étant divisée en une pluralité de blocs de pixels traités dans un ordre défini, ledit dispositif comprenant les unités suivantes, aptes à être mises en œuvre pour un bloc courant :
Prédiction (PRED) des valeurs du bloc courant à partir d'au moins un bloc précédemment traité selon un mode de prédiction choisi parmi une pluralité de modes prédéterminé ;
Calcul (CALC) d'un bloc résidu par soustraction des valeurs prédites aux valeurs originales du bloc courant ;
Obtention (TRANS) d'un bloc résidu transformé par application d'une transformée à des pixels du bloc résidu, le bloc résidu transformé comprenant des coefficients ;
Sélection (SEL) des signes des coefficients à prédire dans le bloc résidu transformé;
Prédiction (PRED SIGNS) des signes sélectionnés ;
Calcul (CALC IP) d'un indicateur de prédiction des signes sélectionnés à partir des prédictions des signes sélectionnés et de leurs valeurs originales, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant :
o une première valeur représentative d'une prédiction correcte ; o une deuxième valeur représentative d'une prédiction incorrecte ;
- Codage entropique (COD IP) des valeurs d'indicateurs obtenues pour les signes prédits; ledit dispositif étant caractérisé en ce qu'il comprend une unité de détermination d'un contexte (Cxj) d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins :
La taille du bloc,
L'amplitude du coefficient, La fréquence du coefficient,
Le mode de prédiction du bloc courant ; et
en ce que le signe d'un coefficient du bloc résidu transformé est sélectionné en fonction du score prédéterminé associé à un contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.
Procédé de décodage d'une image numérique à partir d'un train binaire comprenant des données codées représentatives de ladite image, ladite image étant divisée en une pluralité de blocs traités dans un ordre défini, ledit procédé comprenant les étapes suivantes, mises en œuvre pour un bloc, dit bloc courant : Prédiction (Dl) du bloc courant à partir d'au moins un bloc précédemment traité et d'informations relatives à un mode de prédiction du bloc courant;
Décodage entropique (D2) des amplitudes codées des coefficients (RQ'[i]) d'un bloc résidu transformé extraites du train binaire (TB);
Sélection (D4) des signes des coefficients à prédire dans le bloc résidu transformé;
Prédiction (D6) des valeurs des signes sélectionnés;
Décodage (D7) de valeurs d'indicateurs de prédiction des signes sélectionnés à partir de données codées extraites du train binaire, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant :
o une première valeur représentative d'une prédiction correcte ;
o une deuxième valeur représentative d'une prédiction incorrecte ;
Calcul (D8) des valeurs décodées des signes sélectionnés à partir des valeurs d'indicateurs de prédiction décodées;
Reconstruction (DU) des coefficients du bloc résidu à partir des amplitudes décodées et des signes décodés; ledit procédé étant caractérisé en ce qu'il comprend une étape (D3) de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins :
La taille du bloc, L'amplitude du coefficient,
La fréquence du coefficient,
Le mode de prédiction du bloc courant ; et en ce que le signe d'un coefficient du bloc résidu transformé est sélectionné en fonction d'un score prédéterminé associé au contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.
Dispositif (200) de décodage d'une image numérique (ID) à partir d'un train binaire (TB) comprenant des données codées représentatives de ladite image, ladite image étant divisée en une pluralité de blocs traités dans un ordre défini, ledit dispositif comprenant les unités suivantes, aptes à être mises en œuvre pour un bloc, dit bloc courant :
Prédiction (PRED') du bloc courant à partir d'au moins un bloc précédemment traité et d'informations relatives à un mode de prédiction du bloc courant;
Décodage entropique (DEC RES) des amplitudes codées des coefficients d'un bloc résidu transformé extraites du train binaire;
Sélection (SEL') des signes des coefficients à prédire dans le bloc résidu transformé;
Prédiction (PRED' SIGNS) des valeurs des signes sélectionnés;
Décodage (DEC IP) de valeurs d'indicateurs de prédiction des signes sélectionnés à partir de données codées extraites du train binaire, l'indicateur étant destiné à prendre une valeur dans un groupe comprenant :
o une première valeur représentative d'une prédiction correcte ;
o une deuxième valeur représentative d'une prédiction incorrecte ;
Calcul (CALC) des valeurs décodées des signes sélectionnés à partir des valeurs prédites et des valeurs d'indicateurs de prédiction décodées; ledit dispositif étant caractérisé en ce qu'il comprend une unité (DET') de détermination d'un contexte d'un coefficient du bloc résidu courant parmi une pluralité de contextes prédéterminés, en fonction d'au moins une caractéristique appartenant à un groupe comprenant au moins : La taille du bloc,
L'amplitude du coefficient,
La fréquence du coefficient,
Le mode de prédiction du bloc courant ; et en ce que le signe d'un coefficient du bloc résidu transformé est sélectionné en fonction d'un score prédéterminé associé au contexte de codage dudit coefficient, ledit score étant représentatif d'un niveau de fiabilité de la prédiction du signe.
Signal portant un train binaire (TB) comprenant des données codées représentatives d'une image numérique, ladite image numérique étant divisée en blocs de pixels traités dans un ordre défini, caractérisé en ce que lesdites données codées sont obtenues conformément au procédé de codage selon l'une des revendications 1 à 7.
Terminal d'utilisateur (TU) caractérisé en ce qu'il comprend un dispositif de codage d'une image numérique selon la revendication 8 et un dispositif de décodage d'une image numérique selon la revendication 10.
Programme d'ordinateur comprenant des instructions pour la mise en œuvre du procédé de codage d'une image numérique selon l'une des revendications 1 à 7, lorsqu'il est exécuté par un processeur.
14. Programme d'ordinateur comprenant des instructions pour la mise en œuvre du procédé de décodage d'une image numérique selon la revendication 9, lorsqu'il est exécuté par un processeur.
PCT/FR2015/051587 2014-06-27 2015-06-16 Procédé de codage d'une image numérique, procédé de décodage, dispositifs, et programmes d'ordinateurs associés Ceased WO2015197945A1 (fr)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US15/322,156 US20170142444A1 (en) 2014-06-27 2015-06-16 Method of encoding a digital image, decoding method, devices, and associated computer programs
CN201580035066.7A CN106797472A (zh) 2014-06-27 2015-06-16 编码数字图像的方法和相关解码方法、装置及计算机程序
KR1020177002499A KR20170026536A (ko) 2014-06-27 2015-06-16 디지털 이미지를 인코딩하기 위한 방법 및 연관된 디코딩 방법, 디바이스들 및 컴퓨터 프로그램들
JP2017520009A JP2017521980A (ja) 2014-06-27 2015-06-16 デジタル画像のコーディング方法、デコーディング方法、関連する装置およびコンピュータプログラム
EP15756178.8A EP3183879A1 (fr) 2014-06-27 2015-06-16 Procédé de codage d'une image numérique, procédé de décodage, dispositifs, et programmes d'ordinateurs associés

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1456032 2014-06-27
FR1456032A FR3023112A1 (fr) 2014-06-27 2014-06-27 Procede de codage d'une image numerique, procede de decodage, dispositifs et programmes d'ordinateurs associes

Publications (1)

Publication Number Publication Date
WO2015197945A1 true WO2015197945A1 (fr) 2015-12-30

Family

ID=51519047

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2015/051587 Ceased WO2015197945A1 (fr) 2014-06-27 2015-06-16 Procédé de codage d'une image numérique, procédé de décodage, dispositifs, et programmes d'ordinateurs associés

Country Status (7)

Country Link
US (1) US20170142444A1 (fr)
EP (1) EP3183879A1 (fr)
JP (1) JP2017521980A (fr)
KR (1) KR20170026536A (fr)
CN (1) CN106797472A (fr)
FR (1) FR3023112A1 (fr)
WO (1) WO2015197945A1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018110281A1 (fr) * 2016-12-14 2018-06-21 シャープ株式会社 Dispositif de prédiction de code, dispositif de décodage d'image et dispositif de codage d'image
CN110024392A (zh) * 2016-12-21 2019-07-16 高通股份有限公司 用于视频译码的低复杂度符号预测
US20220046287A1 (en) * 2018-09-21 2022-02-10 Orange Methods and devices for encoding and decoding a data stream representing at least one image

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10880564B2 (en) * 2016-10-01 2020-12-29 Qualcomm Incorporated Transform selection for video coding
FR3057130B1 (fr) 2016-10-03 2019-08-02 B<>Com Procede de codage d'une image, procede de decodage, dispositifs, equipement terminal et programmes d'ordinateurs associes
CN110999287A (zh) 2017-06-05 2020-04-10 因默希弗机器人私人有限公司 数字内容流压缩
FR3068556A1 (fr) 2017-06-29 2019-01-04 B<>Com Procede de decodage d'une image, procede de codage, dispositifs, equipement terminal et programmes d'ordinateurs associes
EP3714598A4 (fr) * 2017-11-21 2021-03-31 Immersive Robotics Pty Ltd Sélection de composante de fréquence destinée à une compression d'image
AU2018372561B2 (en) 2017-11-21 2023-01-05 Immersive Robotics Pty Ltd Image compression for digital reality
US20190208225A1 (en) * 2018-01-02 2019-07-04 Qualcomm Incorporated Sign prediction in video coding
GB2570711B (en) * 2018-02-05 2023-04-05 Sony Corp Data encoding and decoding
MY208069A (en) 2018-03-07 2025-04-11 Huawei Tech Co Ltd Method and apparatus for harmonizing multiple sign bit hiding and residual sign prediction
KR102419112B1 (ko) 2018-03-07 2022-07-07 후아웨이 테크놀러지 컴퍼니 리미티드 변환 도메인에서 잔차 부호 예측 방법 및 장치
WO2019185980A1 (fr) 2018-03-27 2019-10-03 Nokia Technologies Oy Compression de signes de transformée dans un codage et un décodage vidéo
FR3088511B1 (fr) * 2018-11-09 2021-05-28 Fond B Com Procede de decodage d’au moins une image, procede de codage, dispositifs, signal et programmes d’ordinateur correspondants.
FR3092719A1 (fr) * 2019-02-07 2020-08-14 Orange Procédés et dispositifs de codage et de décodage d'un flux de données représentatif d'au moins une image.
US12355984B2 (en) 2019-10-18 2025-07-08 Immersive Robotics Pty Ltd Content compression for network transmission
CN113518227B (zh) * 2020-04-09 2023-02-10 于江鸿 数据处理的方法和系统
US12439095B2 (en) * 2021-04-16 2025-10-07 Tencent America LLC Entropy coding of sign map for transform coefficients
US12563234B2 (en) 2021-08-17 2026-02-24 Beijing Dajia Internet Information Technology Co., Ltd. Sign prediction for block-based video coding
EP4445610A4 (fr) 2021-12-09 2026-01-14 Mediatek Inc Procédé et appareil de codage de signes de coefficients de transformée dans un système de codage vidéo
CN118476228A (zh) * 2021-12-16 2024-08-09 北京达佳互联信息技术有限公司 用于基于块的视频编解码的符号预测
US12519929B2 (en) 2022-04-04 2026-01-06 Tencent America LLC Systems and methods for frequency-dependent coefficient sign coding
KR102714197B1 (ko) * 2022-06-09 2024-10-04 연세대학교 산학협력단 컬러 이미지 압축 센싱 방법 및 장치
US12273523B2 (en) * 2022-06-15 2025-04-08 Tencent America LLC Systems and methods for joint signaling of transform coefficient signs
KR20250121351A (ko) * 2022-12-02 2025-08-12 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130044808A1 (en) * 2010-02-12 2013-02-21 Fujitsu Limited Image encoding device and image decoding device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103141101B (zh) * 2010-09-30 2016-05-11 富士通株式会社 动态图像加密装置、动态图像加密方法、动态图像解密装置及动态图像解密方法
US8755620B2 (en) * 2011-01-12 2014-06-17 Panasonic Corporation Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus for performing arithmetic coding and/or arithmetic decoding
FR2972588A1 (fr) * 2011-03-07 2012-09-14 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
EP3139609B1 (fr) * 2012-01-03 2021-01-06 HFI Innovation Inc. Procédé et appareil de carte de signification à base de blocs et sélection de contexte en drapeau de groupe de signification
RU2708967C2 (ru) * 2012-01-20 2019-12-12 ДжиИ Видео Компрешн, ЭлЭлСи Кодирование коэффициентов преобразования
JP5696683B2 (ja) * 2012-04-13 2015-04-08 株式会社Jvcケンウッド 画像復号装置、画像復号方法、画像復号プログラム、受信装置、受信方法及び受信プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130044808A1 (en) * 2010-02-12 2013-02-21 Fujitsu Limited Image encoding device and image decoding device

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
DAVID TAUBMAN ET AL: "Report on CodEff22 (revised): EBCOT (Embedded Block Coding with Optimized Truncation)", JOINT PHOTOGRAPHIC EXPERT GROUP CONFERENCE, CROWBOROUGH : JPEG FORUM LTD, GB, 21 October 1998 (1998-10-21), XP017205170 *
DE SOLE ET AL.: "Transform Coefficient Coding in HEVC", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, vol. 22, no. 12, December 2012 (2012-12-01), pages 1765 - 1777
KAZUI (FUJITSU) K ET AL: "Video coding technology proposal by Fujitsu", 1. JCT-VC MEETING; 15-4-2010 - 23-4-2010; DRESDEN; (JOINTCOLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-TSG.16 ); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/,, no. XP030007554, 12 April 2010 (2010-04-12), XP030007555, ISSN: 0000-0049 *
KONDO H ET AL: "Identification of DCT signs for sub-block coding", SIGNAL PROCESSING AND ITS APPICATIONS, SIXTH INTERNATIONAL, SYMPOSIUM ON. 2001 AUG. 16-16, 2001, PISCATAWAY, NJ, USA,IEEE, vol. 2, 16 August 2001 (2001-08-16), pages 569 - 572, XP010557114, ISBN: 978-0-7803-6703-6 *
KOYAMA J ET AL: "Coefficient sign bit compression in video coding", 2012 PICTURE CODING SYMPOSIUM (PCS 2012) : KRAKOW, POLAND, 7 - 9 MAY 2012 ; [PROCEEDINGS], IEEE, PISCATAWAY, NJ, 7 May 2012 (2012-05-07), pages 385 - 388, XP032449909, ISBN: 978-1-4577-2047-5, DOI: 10.1109/PCS.2012.6213370 *
KOYAMA, J. ET AL.: "Coefficient sign bit compression in video coding", PROCEEDINGS DE LA CONFÉRENCE «PICTURE CODING SYMPOSIUM (PCS) », May 2012 (2012-05-01)
NIKOLAY N PONOMARENKO ET AL: "Prediction of signs of DCT coefficients in block-based lossy image compression", PROCEEDINGS OF SPIE, vol. 6497, 15 February 2007 (2007-02-15), pages 1 - 8, XP055120970, ISSN: 0277-786X, DOI: 10.1117/12.713872 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018110281A1 (fr) * 2016-12-14 2018-06-21 シャープ株式会社 Dispositif de prédiction de code, dispositif de décodage d'image et dispositif de codage d'image
CN110024392A (zh) * 2016-12-21 2019-07-16 高通股份有限公司 用于视频译码的低复杂度符号预测
CN110024392B (zh) * 2016-12-21 2021-08-10 高通股份有限公司 用于视频译码的低复杂度符号预测
US20220046287A1 (en) * 2018-09-21 2022-02-10 Orange Methods and devices for encoding and decoding a data stream representing at least one image
US11985355B2 (en) * 2018-09-21 2024-05-14 Orange Methods and devices for encoding and decoding a data stream representing at least one image
US20240244266A1 (en) * 2018-09-21 2024-07-18 Orange Methods and devices for encoding and decoding a data stream representing at least one image
US12328451B2 (en) * 2018-09-21 2025-06-10 Orange Methods and devices for encoding and decoding a data stream representing at least one image
US20250274615A1 (en) * 2018-09-21 2025-08-28 Orange Methods and devices for encoding and decoding a data stream representing at least one image

Also Published As

Publication number Publication date
CN106797472A (zh) 2017-05-31
FR3023112A1 (fr) 2016-01-01
JP2017521980A (ja) 2017-08-03
EP3183879A1 (fr) 2017-06-28
US20170142444A1 (en) 2017-05-18
KR20170026536A (ko) 2017-03-08

Similar Documents

Publication Publication Date Title
WO2015197945A1 (fr) Procédé de codage d&#39;une image numérique, procédé de décodage, dispositifs, et programmes d&#39;ordinateurs associés
EP2991351B1 (fr) Procédé de décodage d&#39;images
EP3209021B1 (fr) Support d&#39;enregistrement mémorisant un flux de données d&#39;images codées
EP2446629B1 (fr) Procédés de codage et de décodage d&#39;images, dispositifs de codage et de décodage, et programme d&#39;ordinateur correspondants
EP2446628A1 (fr) Procédé de codage et de décodage d&#39;images, dispositifs de codage et de décodage, flux de données et programme d&#39;ordinateur correspondants
EP3398330A1 (fr) Procédé de codage d&#39;une image numérique, procédé de décodage, dispositifs, terminal d&#39;utilisateur et programmes d&#39;ordinateurs associés
EP3075155B1 (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
EP3314897A1 (fr) Procédé de codage d&#39;une image numérique, procédé de décodage, dispositifs, et programmes d&#39;ordinateurs associés
EP3061246A1 (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
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
EP2761871B1 (fr) Estimation de mouvement au niveau du décodeur par mise en correspondance de modèles
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
EP3238449A1 (fr) Procede de codage d&#39;une image numerique, procede de decodage, dispositifs et programmes d&#39;ordinateurs associes
FR2975856A1 (fr) Procede de codage et de decodage d&#39;images, dispositif de codage et de decodage d&#39;images et programmes d&#39;ordinateur correspondants
EP3646597A1 (fr) Procédé de décodage d&#39;une image, procédé de codage, dispositifs, équipement terminal et programmes d&#39;ordinateurs associés
FR3057130B1 (fr) Procede de codage d&#39;une image, procede de decodage, dispositifs, equipement terminal et programmes d&#39;ordinateurs associes
WO2016132074A1 (fr) Codage d&#39;images par quantification vectorielle
EP3259909A1 (fr) Procédé de codage et décodage d&#39;images, dispositif de codage et décodage et programmes d&#39;ordinateur correspondants
WO2016097556A1 (fr) Procédé de codage d&#39;une image numérique, procédé de décodage, dispositifs, terminal d&#39;utilisateur et programmes d&#39;ordinateurs associes

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: 15756178

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017520009

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15322156

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015756178

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20177002499

Country of ref document: KR

Kind code of ref document: A