Methods and systems for image compression

US11019365B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11019365-B2
Application numberUS-201615747589-A
CountryUS
Kind codeB2
Filing dateJul 29, 2016
Priority dateJul 30, 2015
Publication dateMay 25, 2021
Grant dateMay 25, 2021

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.

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.

First claim

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

Assignees

Inventors

Classifications

  • H04N19/119Primary

    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

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 US11019365B2 cover?
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 codi…
Who is the assignee on this patent?
Zhejiang Dahua Technology Co
What technology area does this patent fall under?
Primary CPC classification H04N19/119. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 25 2021 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).