Advanced arithmetic coder

US2016353108A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016353108-A1
Application numberUS-201615166068-A
CountryUS
Kind codeA1
Filing dateMay 26, 2016
Priority dateMay 29, 2015
Publication dateDec 1, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An example method of entropy coding video data includes obtaining a pre-defined initialization value for a context of a plurality of contexts used in a context-adaptive entropy coding process to entropy code a value for a syntax element in a slice of the video data, wherein the pre-defined initialization value is stored with N-bit precision; determining, using a look-up table and based on the pre-defined initialization value, an initial probability state of the context for the slice of the video data, wherein a number of possible probability states for the context is greater than two raised to the power of N; and entropy coding, based on the initial probability state of the context, a bin of the value for the syntax element.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method of entropy coding video data, the method comprising: obtaining a pre-defined initialization value for a context of a plurality of contexts used in a context-adaptive entropy coding process to entropy code a value for a syntax element in a slice of the video data, wherein the pre-defined initialization value is stored with N-bit precision; determining, based on the pre-defined initialization value, an initial probability state of the context for the slice of the video data, wherein a number of possible probability states for the context is greater than two raised to the power of N; and entropy coding, based on the initial probability state of the context, a bin of the value for the syntax element. 2 . The method of claim 1 , further comprising: determining, based on the pre-defined initialization value, a slope value and an offset value, wherein determining the initial probability state comprises: determining an intermediate value based on the slope value, the offset value, and a quantization parameter of the slice of the video data; and mapping, using a look-up table, the intermediate value to the initial probability state. 3 . The method of claim 2 , wherein the look-up table includes a number of entries that is less than or equal to two raised to the power of N. 4 . The method of claim 3 , wherein the number of entries is equal to a number of possible values of the intermediate value. 5 . The method of claim 1 , wherein determining the initial probability state of the context comprises determining the initial probability state of the context using a look-up table, and wherein values in the look-up table are defined in accordance with the following equation: MappedProb[ i ]=Ceil(2 M *prob[ i ]+offset) where MappedProb[i] is the ith value in the look up table, prob[i] represents the ith value in a table that represents a set of possible probabilities of a one symbol, two raised to the power of M represents the number of possible probability states for the context, and Ceil(x) is a function that denotes the smallest integer greater than or equal to x. 6 . The method of claim 5 , wherein prob[i] represents an ith possible probability of a 1 symbol. 7 . The method of claim 5 , wherein the number of possible probability states for the context is greater than or equal to two raised to the power of N. 8 . The method of claim 5 , wherein N is eight and the number of possible probability states for the context is two raised to the power of 15. 9 . The method of claim 5 , wherein offset is equal to 0.5 or 0. 10 . The method of claim 1 , further comprising: determining, based on the pre-defined initialization value, a slope value and an offset value, wherein determining the initial probability state comprises: determining an intermediate value based on the slope value, the offset value, and a quantization parameter of the slice of the video data; and determining, using a mapping function between intermediate values and initial probability states, the initial probability state based on the intermediate value. 11 . The method of claim 1 , wherein entropy coding comprises entropy encoding the bin. 12 . The method of claim 1 , wherein entropy coding comprises entropy decoding the bin. 13 . The method of claim 1 , wherein the context-adaptive entropy coding process comprises a context-adaptive binary arithmetic coding (CABAC) process, or a context-adaptive variable length coding (CAVLC) process. 14 . An apparatus for entropy coding of video data, the apparatus comprising: a memory configured to store a plurality of contexts used in a context-adaptive entropy coding process to entropy code a value for a syntax element in a slice of the video data; and one or more processors configured to: obtain a pre-defined initialization value for a context of the plurality of contexts, wherein the pre-defined initialization value is stored with N-bit precision; determine, based on the pre-defined initialization value, an initial probability state of the context for the slice of the video data, wherein a number of possible probability states for the context is greater than two raised to the power of N; and entropy code, based on the initial probability state of the context, a bin of the value for the syntax element 15 . The apparatus of claim 14 , wherein the one or more processors are further configured to: determine, based on the pre-defined initialization value, a slope value and an offset value, wherein, to determine the initial probability state, the one or more processors are configured to: determine an intermediate value based on the slope value, the offset value, and a quantization parameter of the slice of the video data; and map, using a look-up table, the intermediate value to the initial probability state. 16 . The apparatus of claim 15 , wherein the look-up table includes a number of entries that is less than or equal to two raised to the power of N. 17 . The apparatus of claim 16 , wherein the number of entries is equal to a number of possible values of the intermediate value. 18 . The apparatus of claim 14 , wherein, to determine the initial probability state of the context, the one or more processors are configured to use a look-up table, and wherein values in the look-up table are defined in accordance with the following equation: MappedProb[ i ]=Ceil(2 M *prob[ i ]+offset) where MappedProb[i] is the ith value in the look up table, prob[i] represents the ith value in a table that represents a set of possible probabilities of a one symbol, two raised to the power of M represents the number of possible probability states for the context, and Ceil(x) is a function that denotes the smallest integer greater than or equal to x. 19 . The apparatus of claim 18 , wherein prob[i] represents an ith possible probability of a 1 symbol. 20 . The apparatus of claim 18 , wherein the number of possible probability states for the context is greater than or equal to two raised to the power of N. 21 . The apparatus of claim 18 , wherein N is eight and the number of possible probability states for the context is two raised to the power of 15. 22 . The apparatus of claim 18 , wherein offset is equal to 0.5 or 0. 23 . The apparatus of claim 14 , wherein the one or more processors are further configured to: determine, based on the pre-defined initialization value, a slope value and an offset value, wherein, to determine the initial probability state, the one or more processors are configured to: determine an intermediate value based on the slope value, the offset value, and a quantization parameter of the slice of the video data; and determine, using a mapping function between intermediate values and initial probability states, the initial probability state based on the intermediate value. 24 . The apparatus of claim 14 , wherein, to entropy code, the one or more processors are configured to entropy encode the bin. 25 . The apparatus of claim 14 , wherein, to entropy code, the one or more processors are configured to entropy decode the bin. 26 . The apparatus of claim 14 , wherein the context-adaptive entropy coding process comprises a context-adaptive binary arithmetic coding (CABAC) process, or a context-adaptive variable length coding (CAVLC) process. 27 . The apparatus of claim 14 ,

Assignees

Inventors

Classifications

  • characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation (H04N19/635 takes precedence) · CPC title

  • characterised by syntax aspects related to video coding, e.g. related to compression standards · CPC title

  • the region being a slice, e.g. a line of blocks or a group of blocks · CPC title

  • Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability · CPC title

  • the unit being bits, e.g. of the compressed video stream · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016353108A1 cover?
An example method of entropy coding video data includes obtaining a pre-defined initialization value for a context of a plurality of contexts used in a context-adaptive entropy coding process to entropy code a value for a syntax element in a slice of the video data, wherein the pre-defined initialization value is stored with N-bit precision; determining, using a look-up table and based on the p…
Who is the assignee on this patent?
Qualcomm Inc
What technology area does this patent fall under?
Primary CPC classification H04N19/126. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Dec 01 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).