Methods and apparatus for adaptive probability update for non-coded syntax
US-9615108-B2 · Apr 4, 2017 · US
US10340946B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10340946-B2 |
| Application number | US-201615771370-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 1, 2016 |
| Priority date | Nov 1, 2015 |
| Publication date | Jul 2, 2019 |
| Grant date | Jul 2, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An encoder for encoding input data to generate corresponding encoded data is provided. The encoder ( 10 ) is operable to process a sequence of elements in the input data from a first element thereof to a last element thereof. The elements have corresponding symbols. The encoder is operable to compute probabilities of symbols present in the sequence, wherein the probabilities of the symbols are computed while disregarding those elements of the sequence that have already been encoded into the encoded data. Moreover, the probabilities of the symbols are adaptively changed as the sequence of elements is progressively encoded into the encoded data. Furthermore, information describing the probabilities is delivered; optionally, the probabilities of the symbols are accompanied with additional information indicating how the probabilities are adaptively changing. There is also provided a decoder for performing an inverse of encoding performed by the encoder.
Opening claim text (preview).
We claim: 1. An encoder including data processing hardware for encoding input data to generate corresponding encoded data, characterized in that the encoder is operable to process at least one sequence of elements in the input data, wherein: (i) the elements have corresponding symbols; (ii) the at least one sequence of elements is processed from a first element thereof to a last element thereof; (iii) the encoder is operable to compute probabilities of symbols present in the at least one sequence of elements, wherein the probabilities of the symbols are computed whilst disregarding those elements of the at least one sequence that have already been encoded into the encoded data, and wherein the probabilities of the symbols used by the encoder for generating the encoded data are adaptively changed as the at least one sequence of elements is progressively encoded into the encoded data; and (iv) the encoder is operable to deliver information describing the probabilities of the symbols. 2. An encoder as claimed in claim 1 , characterized in that when a given element of the at least one sequence is encoded into the encoded data, the encoder is operable to adaptively change the probabilities by: (a) adaptively decreasing the probability of a symbol that corresponds to the given element, and (b) adaptively increasing the probabilities of other symbols corresponding to remaining elements of the at least one sequence that are yet to be encoded. 3. An encoder as claimed in claim 1 , characterized in that the information describing the probabilities describes a manner in which the probabilities are adaptively changed. 4. An encoder as claimed in claim 1 , characterized in that the encoder is operable to deliver the information describing the probabilities prior to delivering the encoded data. 5. An encoder as claimed in claim 1 , characterized in that the encoder is operable to compute the probabilities of the symbols in a weighted manner that is determined based upon characteristics of the symbols of the elements of the at least one sequence. 6. An encoder as claimed in claim 1 , characterized in that the encoder is operable to deliver the probabilities of the symbols in at least one of: a piece-wise manner and/or a delta manner. 7. An encoder as claimed in claim 1 , characterized in that the encoder is operable to compress the input data when generating the encoded data, such that the encoded data has a smaller data size in comparison to the input data. 8. An encoder as claimed in claim 1 , characterized in that the input data includes at least one of: text data, image data, video data, audio data, biometric data, genomic data, medical measurement data, sensor data, data representative of at least one physical variable, seismic data, power consumption measurement data, surveillance data. 9. A decoder including data processing hardware for decoding encoded data to generate corresponding decoded data, characterized in that the decoder is operable to regenerate at least one sequence of elements encoded into the encoded data, wherein: (i) the elements have corresponding symbols; (ii) the at least one sequence of elements is regenerated from a first element thereof to a last element thereof; (iii) the decoder is operable to receive information describing probabilities of symbols present in the at least one sequence of elements; and (iv) the decoder is operable to adaptively change the probabilities of the symbols as the at least one sequence of elements is progressively decoded from the encoded data. 10. A method of encoding input data to generate corresponding encoded data, via an encoder including data processing hardware, characterized in that the method includes processing at least one sequence of elements in the input data, wherein the elements have corresponding symbols, and wherein the method includes: (i) processing the at least one sequence of elements from a first element thereof to a last element thereof; (ii) computing probabilities of symbols present in the at least one sequence of elements, wherein the probabilities of the symbols are computed whilst disregarding those elements of the at least one sequence that have already been encoded into the encoded data, and wherein the probabilities of the symbols used for generating the encoded data are adaptively changed as the at least one sequence of elements is progressively encoded into the encoded data; and (iii) delivering information describing the probabilities of the symbols. 11. A method as claimed in claim 10 , characterized in that when a given element of the at least one sequence is encoded into the encoded data, the method includes adaptively changing the probabilities by: (a) adaptively decreasing the probability of a symbol that corresponds to the given element, and (b) adaptively increasing the probabilities of other symbols corresponding to remaining elements of the at least one sequence that are yet to be encoded. 12. A method as claimed in claim 10 , characterized in that the information describing the probabilities describes a manner in which the probabilities are adaptively changed. 13. A method as claimed in claim 10 , characterized in that the method includes delivering the information describing the probabilities prior to delivering the encoded data. 14. A method as claimed in claim 10 , characterized in that the method includes computing the probabilities of the symbols in a weighted manner that is determined based upon characteristics of the symbols of the elements of the at least one sequence. 15. A method as claimed in claim 10 , characterized in that the method includes delivering the probabilities of the symbols in at least one of: a piece-wise manner and/or a delta manner. 16. A method as claimed in claim 10 , characterized in that the method includes compressing the input data when generating the encoded data, such that the encoded data has a smaller data size in comparison to the input data. 17. A method as claimed in claim 10 , characterized in that the input data includes at least one of: text data, image data, video data, audio data, biometric data, genomic data, medical measurement data, sensor data, data representative of at least one physical variable, seismic data, power consumption measurement data, surveillance data. 18. A computer program product comprising a non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions being executable by a computerized device comprising processing hardware to execute a method as claimed in claim 10 . 19. A codec including at least one encoder as claimed in claim 1 , and at least one decoder as claimed in claim 9 . 20. A decoder as claimed in claim 9 , characterized in that when a given element of the at least one sequence is decoded from the encoded data, the decoder is operable to adaptively change the probabilities by: (a) adaptively decreasing the probability of a symbol that corresponds to the given element of the at least one sequence, and (b) adaptively increasing the probabilities of other symbols corresponding to remaining elements of the at least one sequence that are yet to be decoded. 21. A decoder as claimed in claim 9 , characterized in that the information describing the probabilities describes a manner in which the probabilities are to be adaptively changed. 22. A decoder as claimed in claim 9 , characterized in that the decoder is operable to receive the i
Adaptive prefix coding · CPC title
Handling of unkown probabilities · CPC title
Decoder aspects · CPC title
Adaptive-dynamic-range coding [ADRC] · CPC title
Entropy coding, e.g. variable length coding [VLC] or arithmetic coding · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.