Method and apparatus for range derivation in context adaptive binary arithmetic coding
Uloženo v:
| Název: | Method and apparatus for range derivation in context adaptive binary arithmetic coding |
|---|---|
| Patent Number: | 11265,561 |
| Datum vydání: | March 01, 2022 |
| Appl. No: | 15/863547 |
| Application Filed: | January 05, 2018 |
| Abstrakt: | A method and apparatus of entropy coding of coding symbols using Context-Based Adaptive Binary Arithmetic Coder (CABAC) are disclosed. According to the present invention, CABAC encoding or decoding is applied to a current bin of a binary data of a current coding symbol according to a current probability for a binary value of the current bin and a current range associated with the current state of arithmetic coder. An LPS probability index corresponding to an inverted current probability or the current probability is derived depending on whether the current probability is greater than 0.5. A range index is derived for identifying one range interval containing the current range. An LPS range is then derived using one or more mathematical operations comprising calculating a multiplication of a first value related to the LPS probability index and a second value related to the range index n. |
| Inventors: | MEDIATEK INC. (Hsin-Chu, TW) |
| Assignees: | MEDIATEK INC. (Hsin-Chu, TW) |
| Claim: | 1. A method of entropy coding of coding symbols, the method comprising: applying context-adaptive arithmetic encoding or decoding to a current bin of a binary data of a current coding symbol according to a current probability for a binary value of the current bin and a current range associated with a current state of the context-adaptive arithmetic encoding or decoding, wherein the current probability is generated according to one or more previously coded symbols before the current coding symbol; deriving a least-probable-symbol (LPS) probability index corresponding to an inverted current probability or the current probability depending on whether the current probability of the current bin is greater than or equal to 2 k-1 , k being a positive integer; deriving a range index for identifying one range interval containing the current range; and deriving an LPS range using one or more mathematical operations comprising calculating a multiplication of the LPS probability index and the range index for encoding or decoding a binary value of the current bin. |
| Claim: | 2. The method of claim 1 , wherein if the current probability for the binary value of the current bin is greater than 0.5, an LPS probability is set equal to (1−the current probability) and otherwise, the LPS probability is set equal to the current probability; and the LPS probability index is determined based on a target index indicating one probability interval containing the current probability. |
| Claim: | 3. The method of claim 1 , further comprising deriving, from the current range, a rangeOne value and a rangeZero value for the current bin having a value of one and a value of zero respectively, wherein if the current probability for the binary value of the current bin is either greater than 0.5, or is greater than or equal to 0.5, the rangeOne value is set to (the current range−the LPS range) and the rangeZero value is set to the LPS range; and otherwise, the rangeZero value is set to (the current range−the LPS range) and the rangeOne value is set to the LPS range. |
| Claim: | 4. The method of claim 1 , wherein the LPS range is derived by multiplying the LPS probability index and the range index or by multiplying (the LPS probability index plus 1) and the range index to obtain a multiplication result, and right-shifting the multiplication result by an x bits and x is a positive integer. |
| Claim: | 5. The method of claim 1 , wherein the LPS range is derived by multiplying the LPS probability index and the range index or by multiplying (the LPS probability index plus 1) and the range index to obtain a multiplication result, and right-shifting the multiplication result plus an offset by an x bits and x is a positive integer, wherein the offset is a positive integer or a value corresponding to the range index or the current range. |
| Claim: | 6. The method of claim 5 , wherein the x corresponds to (k−n−m−6), and wherein the current probability is represented by k-bit values, and n and m are positive integers. |
| Claim: | 7. The method of claim 1 , wherein the current probability is represented by k-bit values and the LPS probability index is derived using operations comprising right-shifting the current probability by (k−n−1) bits, wherein n is a positive integer. |
| Claim: | 8. The method of claim 1 , wherein the current probability is represented by k-bit values and the LPS probability index is derived using a result of right-shifting the current probability by (k−n−1) bits or using an inverted result of right-shifting the current probability by (k−n−1) bits depending on either whether the current probability is greater than 2k−1, or whether the current probability is greater than or equal to 2k−1, wherein n is a positive integer. |
| Claim: | 9. The method of claim 8 , wherein the range index is derived by right-shifting the current range by (q−m) bits, wherein q and m are positive integers and q is greater than m. |
| Claim: | 10. The method of claim 1 , wherein the LPS probability index corresponds to a minimum LPS probability value, a maximum LPS probability value or a middle LPS probability value of a probability interval associated with the LPS probability index. |
| Claim: | 11. The method of claim 1 , wherein the the range index corresponds to a minimum range value, a maximum range value or a middle range value of a range interval associated with the range index. |
| Claim: | 12. The method of claim 1 , wherein a result of LPS range is stored in a pre-defined look up table; and the LPS range is derived by using table look up; and where a row index and a column index of the pre-defined look up table correspond to the LPS probability index and the range index respectively. |
| Claim: | 13. An entropy coding apparatus for an image or video encoder or decoder, the entropy coding apparatus comprising: a binary arithmetic coder arranged to apply context-adaptive arithmetic encoding or decoding to a current bin of a binary data of a current coding symbol according to a current probability for a binary value of the current bin and a current range associated with a current state of the binary arithmetic coder, wherein the current probability is generated according to one or more previously coded symbols before the current coding symbol; and a context model unit arranged to: derive a least-probable-symbol (LPS) probability index corresponding to an inverted current probability or the current probability depending on whether the current probability of the current bin is greater than or equal to 2 k-1 , k being a positive integer; derive a range index for identifying one range interval containing the current range; and derive a LPS range using one or more mathematical operations comprising calculating a multiplication of the LPS probability index and the range index for encoding or decoding a binary value of the current bin. |
| Claim: | 14. The entropy coding apparatus of claim 13 , wherein if the current probability for the binary value of the current bin is greater than 0.5, an LPS probability is set equal to (1−the current probability) and otherwise, the LPS probability is set equal to the current probability; and the LPS probability index is determined based on a target index indicating one probability interval containing the current probability. |
| Claim: | 15. A non-transitory computer readable medium storing program instructions causing a processing circuit of an apparatus to perform a video coding method, and the method comprising: applying context-adaptive arithmetic encoding or decoding to a current bin of a binary data of a current coding symbol according to a current probability for a binary value of the current bin and a current range associated with a current state of the context-adaptive arithmetic encoding or decoding, wherein the current probability is generated according to one or more previously coded symbols before the current coding symbol; deriving a least-probable-symbol (LPS) probability index corresponding to an inverted current probability or the current probability depending on whether the current probability of the current bin is greater than or equal to 2 k-1 , k being a positive integer; deriving a range index for identifying one range interval containing the current range; and deriving a LPS range using one or more mathematical operations comprising calculating a multiplication of the LPS probability index and the range index for encoding or decoding a binary value of the current bin. |
| Patent References Cited: | 9425822 August 2016 Zhou 9521433 December 2016 Chono et al. 2003/0059911 March 2003 Yamaoka et al. 2005/0123207 June 2005 Marpe et al. 2008/0198933 August 2008 Srinivasan et al. 2013/0107951 May 2013 Sole Rojals 2014/0092985 April 2014 Kim 2016/0043735 February 2016 Zhou 2016/0353110 December 2016 Zhang et al. 2016/0353113 December 2016 Zhang 2018/0199046 July 2018 Chuang et al. 2018/0199048 July 2018 Said et al. 101933331 December 2010 102223149 October 2011 103227924 July 2013 104918049 September 2015 105007486 October 2015 H11112355 April 1999 201701664 January 2017 201832554 September 2018 2016/045565 March 2016 2016/184399 November 2016 |
| Other References: | European Search Report dated Jul. 15, 2020, issued in application No. EP 18736507.7. cited by applicant Anonymous; “Probability;” Wikipedia; Dec. 2016; pp. 1-10. cited by applicant Alshin, A., et al.; “Multi-parameter probability up-date for CABAC;” Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11; Jul. 2011; pp. 1-5. cited by applicant International Search Report and Written Opinion, dated Sep. 27, 2018, from PCT/CN2018/095419. cited by applicant Alshin, Alexander et al., ‘High precision probability estimation for CABAC’ (published on Dec. 31, 2013). cited by applicant Taiwan Office Action, dated Sep. 14, 2020, in application No. 10920092070. cited by applicant Yu et al., “A High Performance CABAC Decoding Architecture” (published in Nov. 2005). cited by applicant Marpe et al., “Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC Video Compression Standard” ((published in Jul. 2003). cited by applicant U.S. Non-Final Office Action, dated Sep. 11, 2020, in U.S. Appl. No. 16/629,440. cited by applicant Chinese language office action dated Apr. 2, 2021, issued in application No. CN 201880006060.0. cited by applicant |
| Primary Examiner: | Demosky, Patrick E |
| Attorney, Agent or Firm: | McClure, Qualey & Rodack, LLP |
| Přístupové číslo: | edspgr.11265561 |
| Databáze: | USPTO Patent Grants |
| Abstrakt: | A method and apparatus of entropy coding of coding symbols using Context-Based Adaptive Binary Arithmetic Coder (CABAC) are disclosed. According to the present invention, CABAC encoding or decoding is applied to a current bin of a binary data of a current coding symbol according to a current probability for a binary value of the current bin and a current range associated with the current state of arithmetic coder. An LPS probability index corresponding to an inverted current probability or the current probability is derived depending on whether the current probability is greater than 0.5. A range index is derived for identifying one range interval containing the current range. An LPS range is then derived using one or more mathematical operations comprising calculating a multiplication of a first value related to the LPS probability index and a second value related to the range index n. |
|---|