US11979584B2ActiveUtilityA1

Arithmetic encoders and decoders, video encoders and decoders, methods for encoding or decoding symbols, and methods for encoding or decoding video content

52
Assignee: FRAUNHOFER GES FORSCHUNGPriority: Sep 24, 2019Filed: Mar 24, 2022Granted: May 7, 2024
Est. expirySep 24, 2039(~13.2 yrs left)· nominal 20-yr term from priority
H04N 19/184H04N 19/149H04N 19/46H04N 19/172H04N 19/91H04N 19/70H04N 19/13
52
PatentIndex Score
0
Cited by
11
References
17
Claims

Abstract

Arithmetic encoder for encoding a plurality of symbols is configured to derive an interval size information for an arithmetic encoding of one or more symbol values to be encoded on the basis of one or more state variable value, in a first mode of operation, and to update the one or more state variable values and/or the interval size information for an encoding of one or more subsequent symbol values to be encoded in the first mode; in a second mode, the arithmetic encoder is configured to disable an update of the one or more state variable values and/or of the interval size information. Additionally, further embodiments of arithmetic encoders and decoders and video encoders and decoders are described.

Claims

exact text as granted — not AI-modified
The invention claimed is: 
     
       1. An arithmetic decoder for decoding a plurality of symbols comprising symbol values,
 wherein the arithmetic decoder is configured to derive an interval size information for an arithmetic decoding of one or more symbol values to be decoded on the basis of one or more state variable values, which represent statistics of a plurality of previously decoded symbol values in a first mode of operation and to update the one or more state variable values and/or the interval size information for a decoding of one or more subsequent symbol values to be decoded in the first mode; 
 wherein the arithmetic decoder is configured to disable an update of the one or more state variable values and/or of the interval size information in a second mode; 
 wherein the arithmetic decoder is configured to receive a side information indicating whether the first mode, in which the update of the one or more state variable values and/or of the interval size information is enabled, or the second mode, in which the update of the one or more state variable values and/or of the interval size information is disabled, is used. 
 
     
     
       2. Arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to receive the side information indicating whether the first mode, in which the update of the one or more state variable values and/or of the interval size information is enabled, or the second mode, in which the update of the one or more state variable values and/or of the interval size information is disabled, is used, on a per frame basis, or on a per-slice-basis, or on a per-group-of-pictures basis or on a per-sequence basis. 
     
     
       3. Arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to receive the side information indicating whether the first mode, in which the update of the one or more state variable values and/or of the interval size information is enabled, or the second mode, in which the update of the one or more state variable values and/or of the interval size information is disabled, is used, on a per profile basis. 
     
     
       4. Arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to receive a dedicated side information indicating whether the first mode, in which the update of the one or more state variable values and/or of the interval size information is enabled, or the second mode, in which the update of the one or more state variable values and/or of the interval size information is disabled, is used. 
     
     
       5. Arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to re-use one or more previously determined state variable values and/or a previously determined interval size information when using the second mode. 
     
     
       6. Arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to acquire an interval size associated with a symbol value out of a plurality of possible symbol values on the basis of an overall coding interval size value and on the basis of the interval size information. 
     
     
       7. Arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to acquire an interval size associated with a symbol value out of a plurality of possible symbol values on the basis of an overall coding interval size value and on the basis of the interval size information using a first computation rule when operating in the first mode and using a second computation rule when operating in the second mode. 
     
     
       8. Arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to acquire an interval size associated with a symbol value out of a plurality of possible symbol values on the basis of an overall coding interval size value and on the basis of the interval size information
 using a multiplication of the overall coding interval size value, or of a bit-shifted version thereof, with an interval size information value, or with a bit-shifted version thereof when operating in the first mode; and 
 using an application of a bit shift operation to the overall coding interval size value, wherein a number of bits by which the overall coding interval size value is shifted, is determined by the interval size information, when operating in the second mode. 
 
     
     
       9. Arithmetic decoder according to  claim 8 , wherein the arithmetic decoder is configured to determine a shift count value, which describes a number of bits by which the overall coding interval size value is shifted, on the basis of an integer value representation of the probability value comprising a number BITS of bits
 using a determination of a bit position of a most significant non-zero bit of an operand value which is increased or decreased with respect to the integer value representation of the probability value. 
 
     
     
       10. Arithmetic decoder according to  claim 8 , wherein the arithmetic decoder is configured to determine a shift count value, which describes a number of bits by which the overall coding interval size value is shifted, on the basis of one or more initialization parameters. 
     
     
       11. The arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to acquire an updated version a t+1  of the first state value according to
     a   t+1   =a   t   +x   t ·(ONE a   >>n   a )−( a   t   >>n   a )
 
 wherein a t  is a current version of the first state value, 
 wherein x t  is a current decoded symbol, 
 wherein n a  is a window size information, 
 wherein
   ONE a =(1<<BITS a )− k   a ,
 
 
 wherein BITSa is a number of bits used to represent the first state value, 
 wherein k a  is a predetermined number; and/or 
 wherein the arithmetic decoder is configured to acquire an updated version b t+1  of the first state value according to
     b   t+1   =b   t   +x   t ·(ONE b   >>n   b )−( b   t   >>n   b )
 
 
 wherein b t  is a current version of the first state value, 
 wherein x t  is a current decoded symbol, 
 wherein n b  is a window size information, 
 wherein
   ONE b =(1<<BITS b )− k   b ,
 
 
 wherein BITS b  is a number of bits used to represent the first state value, 
 wherein k b  is a predetermined number. 
 
     
     
       12. The arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is configured to perform a weighted combination of the first state variable value and of the second state variable value, in order to acquire the interval size information. 
     
     
       13. The arithmetic decoder according to  claim 1 ,
 wherein the arithmetic decoder is configured to derive a probability estimate P t  according to
     P   t =(( a   t >>(BITS a −BITS min ))+( b   t >>(BITS b −BITS min )))>>1
 
   where 
   BITS min =min(BITS a ,BITS b ), 
 
 wherein a t  is the first state variable value, 
 wherein b t  is the second state variable value, 
 wherein BITS a  is a number of bits used for a representation of a t ; 
 wherein BITS b  is a number of bits used for a representation of b t . 
 
     
     
       14. The arithmetic decoder according to  claim 1 , wherein the arithmetic decoder is attached to a video decoder,
 wherein the video decoder is configured to decode a plurality of video frames, 
 wherein the video decoder uses the arithmetic decoder for providing a decoded binary sequence on the basis of an encoded representation of the binary sequence. 
 
     
     
       15. An arithmetic encoder for encoding a plurality of symbols comprising symbol values,
 wherein the arithmetic encoder is configured to derive an interval size information for an arithmetic encoding of one or more symbol values to be encoded on the basis of one or more state variable values, which represent statistics of a plurality of previously encoded symbol values in a first mode of operation and to update the one or more state variable values and/or the interval size information for an encoding of one or more subsequent symbol values to be encoded in the first mode; 
 wherein the arithmetic encoder is configured to disable an update of the one or more state variable values and/or of the interval size information in a second mode; 
 wherein the arithmetic encoder is configured to provide a side information indicating whether the first mode, in which the update of the one or more state variable values and/or of the interval size information is enabled, or the second mode, in which the update of the one or more state variable values and/or of the interval size information is disabled, is used. 
 
     
     
       16. A method for decoding a plurality of symbols comprising symbol values,
 wherein the method comprises deriving an interval size information for an arithmetic decoding of one or more symbol values to be decoded on the basis of one or more state variable values, which represent statistics of a plurality of previously decoded symbol values in a first mode of operation and to update the one or more state variable values and/or the interval size information for a decoding of one or more subsequent symbol values to be decoded in the first mode; 
 wherein the method comprises disabling an update of the one or more state variable values and/or of the interval size information in a second mode; 
 wherein the method comprises receiving a side information indicating whether the first mode, in which the update of the one or more state variable values and/or of the interval size information is enabled, or the second mode, in which the update of the one or more state variable values and/or of the interval size information is disabled, is used. 
 
     
     
       17. A non-transitory digital storage medium having a computer program stored thereon to perform the method for decoding a plurality of symbols comprising symbol values,
 wherein the method comprises deriving an interval size information for an arithmetic decoding of one or more symbol values to be decoded on the basis of one or more state variable values, which represent statistics of a plurality of previously decoded symbol values in a first mode of operation and to update the one or more state variable values and/or the interval size information for a decoding of one or more subsequent symbol values to be decoded in the first mode; 
 wherein the method comprises disabling an update of the one or more state variable values and/or of the interval size information in a second mode; 
 wherein the method comprises receiving a side information indicating whether the first mode, in which the update of the one or more state variable values and/or of the interval size information is enabled, or the second mode, in which the update of the one or more state variable values and/or of the interval size information is disabled, is used, 
 
       when said computer program is run by a computer.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.