Entropy coding for signal enhancement coding

US12556746B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12556746-B2
Application numberUS-202318161566-A
CountryUS
Kind codeB2
Filing dateJan 30, 2023
Priority dateAug 3, 2018
Publication dateFeb 17, 2026
Grant dateFeb 17, 2026

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.

There is provided a method of encoding a video signal, the method comprising: receiving an input frame; processing the input frame to generate at least one set of residuals data, the residuals data enabling a decoder to reconstruct the input frame from a reference reconstructed frame; and, applying a run-length coding operation to the set of residuals data, wherein the run-length coding operation comprises generating a run-length encoded bytestream comprising a set of symbols representing non-zero data values of the residuals data set and counts of consecutive zero values of the residuals data set. In certain embodiments the method comprises apply a Huffman coding operation to the set of symbols. A method of decoding is also provided as well as apparatuses and a computer readable medium.

First claim

Opening claim text (preview).

The invention claimed is: 1 . A method of encoding a video signal, the method comprising: receiving an input frame; processing the input frame to generate residual data, the residual data enabling a decoder to reconstruct the input frame from a reference reconstructed frame; applying a modified run-length coding operation to the residual data where each value in the residual data is sent as a value and where each zero in the residual data is sent as a run of multiple consecutive zeros, wherein the modified run-length coding operation comprises generating a run-length encoded bytestream comprising a set of symbols representing non-zero data values of the residual data and counts of consecutive zero values of the residual data; applying a Huffman coding operation to the set of symbols to generate Huffman encoded data comprising a set of codes representing the run-length encoded bytestream; and in response to a determination that a number of the non-zero data values exceeds a threshold, selecting a header type that is structured to include bits representing a difference between a code length of one of the symbols in the set of symbols and a minimum length of a code used to encode the one symbol, where said code is included in the set of codes. 2 . A method according to claim 1 , wherein the modified run-length coding operation comprises: encoding non-zero data values of the residual data into at least a first type of symbol; and encoding counts of consecutive zero values into a second type of symbol, such that the residual data is encoded as a sequence of symbols of different types. 3 . A method according to claim 1 , wherein the modified run-length coding operation comprises: encoding data values of the residual data into a first type of symbol and a third type of symbol, the first and third types of symbol each comprising a part of a data value, such that the parts can be combined at a decoder to reconstruct the data value. 4 . A method according to claim 3 , wherein the modified run-length coding operation comprises: comparing a size of each data value of the residual data to be encoded to a second threshold; and encoding each data value into the first type of symbol if the size is below the second threshold and encoding a part of each data value into the first type of symbol and a part of each data value into the third type of symbol if the size is above the second threshold. 5 . A method according to claim 4 , further comprising: if the size is above the second threshold, setting a flag in the symbol of the first type of symbol indicating a part of the represented data value is encoded into a further symbol of the third type of symbol. 6 . A method according to claim 2 , further comprising: inserting a flag in each symbol indicating a type of symbol encoded next in the run-length encoded bytestream. 7 . A method according to claim 1 , wherein the Huffman coding operation is a canonical Huffman coding operation, such that the Huffman encoded data comprises a code length for each unique symbol of the set of symbols, the code length representing a length of a code used to encode a corresponding symbol. 8 . A method according to claim 1 , further comprising: comparing a data size of at least a portion of the run-length encoded bytestream to a data size of at least a portion of the Huffman encoded data; and outputting the run-length encoded bytestream or the Huffman encoded data in an output bitstream based on the comparison. 9 . A method according to claim 8 , further comprising: adding a flag to configuration metadata accompanying the output bitstream indicating if the bitstream represents the run-length encoded bytestream or the Huffman encoded data. 10 . A method according to claim 1 , wherein the Huffman coding operation comprises: generating a separate frequency table for symbols of the first type of symbol and symbols of the second type of symbol. 11 . A method according to claim 7 , further comprising: generating a particular stream header, which is included among said stream headers, wherein generating the particular stream header includes generating an indication of a plurality of code lengths, such that a decoder can derive code lengths and respective corresponding symbols for a canonical Huffman decoding operation. 12 . A method according to claim 11 , wherein the particular stream header is a first type of stream header, and wherein an indication of the symbol associated with a respective code length of the plurality of code lengths is provided. 13 . A method according to claim 11 , wherein the particular stream header is a second type of stream header and the method further comprises ordering the plurality of code lengths in the stream header based on a predetermined order of symbols corresponding to each of the code lengths, such that the code lengths can be associated with a corresponding symbol at the decoder. 14 . A method according to claim 13 , wherein the second type of stream header further comprises a flag indicating a symbol in the predetermined order of the possible set of symbols does not exist in the set of symbols in the run-length encoded bytestream. 15 . A method according to claim 1 , wherein the modified run-length coding operation comprises: encoding the non-zero data values of the residual data into at least a first type of symbol; encoding the counts of the consecutive zero values of the residual data into a second type of symbol, such that the residual data is encoded as a sequence of symbols of different types; and inserting a flag in each symbol of the second type of symbol indicating whether a subsequent symbol of the set of symbols comprises the first type of symbol or the second type of symbol. 16 . An encoding apparatus configured to: receive an input frame; process the input frame to generate residual data, the residual data enabling a decoder to reconstruct the input frame from a reference reconstructed frame; apply a modified run-length coding operation to the residual data where each value in the residual data is sent as a value and where each zero in the residual data is sent as a run of multiple consecutive zeros, wherein the modified run-length coding operation comprises generating a run-length encoded bytestream comprising a set of symbols representing non-zero data values of the residual data and counts of consecutive zero values of residual data; apply a Huffman coding operation to the set of symbols to generate Huffman encoded data comprising a set of codes representing the run-length encoded bytestream; and in response to a determination that a number of the non-zero data values exceeds a threshold, select a header type that is structured to include bits representing a difference between a code length of one of the symbols in the set of symbols and a minimum length of a code used to encode the one symbol, where said code is included in the set of codes. 17 . A non-transitory computer readable medium comprising instructions that are executable by one or more processors cause the one or more processors to: receive an input frame; process the input frame to generate residual data, the residual data enabling a decoder to reconstruct the input frame from a reference reconstructed frame; apply a modified run-length coding operation to the residual data where each value in the residual data is sent as a value and where each zero in the residual data is sent as a run of multiple consecutive zeros, wherein the modified run-length coding operation comprises generating

Assignees

Inventors

Classifications

  • using transform coding · CPC title

  • Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder · CPC title

  • Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability · CPC title

  • H04N19/33Primary

    in the spatial domain · CPC title

  • Incoming video signal characteristics or properties · 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 US12556746B2 cover?
There is provided a method of encoding a video signal, the method comprising: receiving an input frame; processing the input frame to generate at least one set of residuals data, the residuals data enabling a decoder to reconstruct the input frame from a reference reconstructed frame; and, applying a run-length coding operation to the set of residuals data, wherein the run-length coding operati…
Who is the assignee on this patent?
V Nova Int Ltd
What technology area does this patent fall under?
Primary CPC classification H04N19/33. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Feb 17 2026 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).