Encoding and decoding methods and apparatuses
US-2017272760-A1 · Sep 21, 2017 · US
US11019365B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11019365-B2 |
| Application number | US-201615747589-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 29, 2016 |
| Priority date | Jul 30, 2015 |
| Publication date | May 25, 2021 |
| Grant date | May 25, 2021 |
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.
A method relating to image compression includes acquiring image data of an image, wherein the image includes a matrix of pixels, and the image data include pixel values of the matrix of pixels. The method also includes generating, based on the image data, a first-level data set including pixel values of a portion of the matrix of pixels. The method further includes determining at least one coding mode for the first-level data set, encoding the first-level data set into a code stream based on the at least one coding mode, and packaging the code stream into a modified code stream.
Opening claim text (preview).
What is claimed is: 1. A method implemented on at least one machine, each of which has at least one processor and storage device for encoding an image, the method comprising: acquiring image data of an image, the image being a color filter array image, the image including a matrix of pixels, the image data including pixel values of the matrix of pixels, each pixel of the matrix of pixels corresponding to a chroma component; encoding the image row by row, wherein the encoding of each row of the matrix of pixels includes: generating, based on a color filter array pattern of the each row of the matrix of pixels and chroma components of the pixels in the each row, a first-level data set corresponding to the each row; determining a first second-level data set based on the first-level data set, the first second-level data set representing coefficients of different direct component values corresponding to pixels of the each row; determining a second second-level data set based on the first second-level data set, an inverse quantization process, and an inverse 2D DCT process, the second second-level data set representing chroma component related residual values corresponding to the each row; determining a first third-level data set based on the first second-level data set; determining a second third-level data set based on the second second-level data set; determining a first coding mode for the first third-level data set by predicting lengths of code streams, with a first set of candidate coding modes, for the first third-level data set; determining a second coding mode for the second third-level data set by predicting lengths of code streams, with a second set of candidate coding modes, for the second third-level data set; encoding the first third-level data set and the second third-level data set into a code stream based on the first coding mode and the second coding mode; and packaging the code stream into a modified code stream corresponding to the each row. 2. The method of claim 1 , the determining a first second-level data set based on the first-level data set comprising: generating at least one chroma component data set each of which corresponding to a same chroma component by extracting, based on the color filter array pattern of the each row, pixels corresponding to the same chroma component; generating a plurality of transformation coefficients by performing a two-dimensional discrete cosine transform (2D DCT) process and a quantization process on each of the at least one chroma component data set; and generating, based on the plurality of transformation coefficients, the first second-level data set. 3. The method of claim 2 , generating at least one chroma component data set comprising: generating a first chroma component data set by extracting pixels at odd positions of the each row; and generating a second chroma component data set by extracting pixels at even positions of the each row. 4. The method of claim 1 , the determining the second second-level data set based on the first second-level data set comprising: generating a reconstruction data set by performing the inverse quantization process and the inverse 2D DCT process on the first second-level data set; calculating the chroma component related residual values based on a difference between the pixels of the each row and the reconstruction data set; and generating the second second-level data set based on the chroma component related residual values corresponding to the each row. 5. The method of claim 1 , further comprising: partitioning the first second-level data set into N1 third-level data sets that form the first third-level data set, N1 being a second integer, the second integer being greater than or equal to 1; and partitioning the second second-level data set into N2 third-level data sets that form the second third-level data set, N2 being a third integer, the third integer being greater than or equal to 1. 6. The method of claim 5 , partitioning the first second-level data set into N1 third-level data sets comprising: partitioning each pixel value of the first second-level data into N1 portions, each portion of the N1 portions including one or more bits; and generating each third-level data set by extracting a portion of the N1 portions of the each pixel value. 7. The method of claim 5 , partitioning the second second-level data set into N2 third-level data sets comprising: partitioning each pixel value of the second second-level data into N2 portions, each portion of the N2 portions including one or more bits; and generating each third-level data set by extracting a portion of the N2 portions of the each pixel value. 8. The method of claim 5 , wherein the first second-level data set includes one or more component values of transformation coefficients, and the packaging the code stream into a modified code stream corresponding to the each row comprises: generating a header, the header including a coding mode of each of the N1 third-level data sets, a length of a code stream of each of the N1 third-level data sets, a coding mode of each of the N2 third-level data sets, a length of a code stream of each of the N2 third-level data sets; and packaging the header into the modified code stream, the modified code stream including the one or more component values of transformation coefficients. 9. The method of claim 5 , wherein the first second-level data set includes one or more component values of transformation coefficients, and the partitioning the first second-level data set into N1 third-level data sets comprises: extracting, from the first second-level data set, data excluding the one or more component values of transformation coefficients; mapping the extracted data into non-negative integers; partitioning each of the non-negative integers into N1 portions, each of the N1 portions including one or more bits; and generating each third-level data set by extracting a portion of the N1 portions of the each non-negative integer. 10. The method of claim 1 , determining the first coding mode for the first third-level data set by predicting lengths of code streams, with the first set of candidate coding modes, for the first third-level data set comprising: for each first third-level data set, predicting lengths of code streams of the first third-level data set with at least one of Huffman coding, run-length coding, fixed-length coding, or order-k exponential Golomb coding; comparing the predicted lengths; and selecting the first coding mode based on a result of the comparison. 11. The method of claim 10 , determining the first coding mode for the first third-level data set by predicting lengths of code streams, with the first set of candidate coding modes, for the first third-level data set further comprising: for the each first third-level data set, calculating an original length of the code stream of the first third-level data set without coding; comparing the predicted lengths with the original length; and determining whether to encode the first third-level data set based on a result of the comparison. 12. The method of claim 11 , determining whether to encode the first third-level data set comprising: determine to encode the first third-level data set using the coding mode with the shortest length of the predicted lengths, if the predicted lengths are less than the original length; and determine not to encode the first third-level data set, if any length of predicted lengths is not less than the original length. 13. The method of claim 1 , wherein the each pixel of the matrix of pixels corresponds to only one chroma compon
Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks · CPC title
the unit being a pixel · CPC title
the region being a slice, e.g. a line of blocks or a group of blocks · CPC title
the unit being a colour or a chrominance component · CPC title
using hierarchical techniques, e.g. scalability (H04N19/63 takes precedence) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.