Data block encoding method and apparatus

US11019343B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11019343-B2
Application numberUS-201715660737-A
CountryUS
Kind codeB2
Filing dateJul 26, 2017
Priority dateJul 28, 2016
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 data block encoding method and apparatus are provided. The data block encoding method includes: determining whether a data block includes an intensive edge region, where the intensive edge region is a region including an image distortion generated by ring noise, and the data block is a data block in a to-be-encoded image; and when the data block includes an intensive edge region, reducing a value of a quantization parameter used for encoding the data block, and encoding the data block by using a reduced value of the quantization parameter, or dividing the data block into multiple coding units of different sizes according to different coding layers, adjusting rate-distortion costs of the multiple coding units of different sizes, and encoding the data block by using a coding unit with a minimum rate-distortion cost obtained after the adjustment.

First claim

Opening claim text (preview).

What is claimed is: 1. A data block encoding method, comprising: determining whether a data block comprises an intensive edge region comprising an image distortion generated by ring noise, wherein the data block is a data block in a to-be-encoded image; and when the data block comprises an intensive edge region, dividing the data block into multiple coding units of different sizes according to different coding layers, adjusting rate-distortion costs of the multiple coding units of different sizes, wherein the adjustment of the rate-distortion cost of a coding unit is proportional to the size of the coding unit and wherein the adjusted rate-distortion cost of a coding unit is based upon a formula that indicates a rate-distortion cost of a coding unit of size N after an adjustment is equal to an adjustment coefficient corresponding to the coding unit of size N multiplied by the rate-distortion cost of the coding unit of size N before the adjustment and wherein the value of the adjustment coefficient is proportional to the size of the coding unit, encoding the data block by using a coding unit with a minimum rate-distortion cost obtained after the adjustment. 2. The method according to claim 1 , wherein determining whether a data block comprises an intensive edge region comprises: dividing the data block into A sub data blocks; obtaining a variance of the data block and a variance of each sub data block in the A sub data blocks; and when the variance of the data block is greater than a first threshold, and in the variances of the A sub data blocks a maximum variance is greater than k times a minimum variance, determining that the data block comprises an intensive edge region, wherein A is a positive integer greater than or equal to 2, k is an integer, and the first threshold is determined by a bit width used by a pixel value in the to-be-encoded image. 3. The method according to claim 2 , wherein when the variance of the data block is less than or equal to the first threshold, or in the variances of the A sub data blocks the maximum variance is less than or equal to k times the minimum variance, the method further comprises: dividing each sub data block in the A sub data blocks into B sub-sub data blocks, wherein B is an integer greater than 0; obtaining the variance of each of the A sub data blocks and a variance of each of the B sub-sub data blocks comprised in each sub data block; and when the variance of any sub data block is greater than the first threshold, and in the variances of the B sub-sub data blocks comprised in the any sub data block a maximum variance is greater than k times a minimum variance, determining that the data block comprises an intensive edge region. 4. The method according to claim 1 , further comprising reducing a value of a quantization parameter used for encoding the data block comprising: reducing, according to a first formula, the value of the quantization parameter used for encoding the data block, wherein the first formula is: QP′=QP −delta, wherein QP′ indicates a value of the quantization parameter after the adjustment, QP indicates a value of the quantization parameter before the adjustment, delta indicates an adjustment magnitude, and the adjustment magnitude is any integer greater than 0 but less than 15. 5. The method according to claim 1 , wherein adjusting rate-distortion costs of the multiple coding units of different sizes comprises: adjusting the rate-distortion costs of the multiple coding units of different sizes according to the formula, wherein the formula is: Rdo Cost N ′=C N ×Rdo Cost N , wherein RdoCost N ′ indicates the rate-distortion cost of the coding unit of the size N after the adjustment, C N indicates the adjustment coefficient corresponding to the coding unit of the size N, a value of the adjustment coefficient is proportional to the size of the coding unit, RdoCost N indicates the rate-distortion cost of the coding unit of the size N before the adjustment, and N indicates the size of the coding unit. 6. A data block encoding apparatus, comprising: a non-transitory computer readable medium configured to store instructions; and a processor configured to execute the instructions stored in the non-transitory computer readable medium to: determine whether a data block comprises an intensive edge region comprising an image distortion generated by ring noise, wherein the data block is a data block in a to-be-encoded image; and when the data block comprises an intensive edge region, divide the data block into multiple coding units of different sizes according to different coding layers, adjust rate-distortion costs of the multiple coding units of different sizes, wherein the adjustment of the rate-distortion cost of a coding unit is proportional to the size of the coding unit, and wherein the adjusted rate-distortion cost of a coding unit is based upon a formula that indicates a rate-distortion cost of a coding unit of size N after an adjustment is equal to an adjustment coefficient corresponding to the coding unit of size N multiplied by the rate-distortion cost of the coding unit of size N before the adjustment and wherein the value of the adjustment coefficient is proportional to the size of the coding unit, and encode the data block by using a coding unit with a minimum rate-distortion cost obtained after the adjustment. 7. The apparatus according to claim 6 , wherein the processor is configured to: divide the data block into A sub data blocks; obtain a variance of the data block and a variance of each sub data block in the A sub data blocks; and when the variance of the data block is greater than a first threshold, and in the variances of the A sub data blocks a maximum variance is greater than k times a minimum variance, determine that the data block comprises an intensive edge region, wherein A is a positive integer greater than or equal to 2, k is an integer, and the first threshold is determined by a bit width used by a pixel value in the to-be-encoded image. 8. The apparatus according to claim 7 , wherein when the variance of the data block is less than or equal to the first threshold, or in the variances of the A sub data blocks, the maximum variance is less than or equal to k times the minimum variance, the processor is further configured to: divide each sub data block in the A sub data blocks into B sub-sub data blocks, wherein B is an integer greater than 0; obtain the variance of each of the A sub data blocks and a variance of each sub-sub data block in the B sub-sub data blocks comprised in each sub data block; and when the variance of any sub data block is greater than the first threshold, and in the variances of the B sub-sub data blocks comprised in the any sub data block a maximum variance is greater than k times a minimum variance, determine that the data block comprises an intensive edge region. 9. The apparatus according to claim 6 , wherein the processor is configured to: reduce, according to a first formula, a value of a quantization parameter used for encoding the data block, wherein the first formula is: QP′=QP −delta, wherein QP′ indicates a value of the quantization parameter after the adjustment, QP indicates a value of the quantization parameter before the adjustment, delta indicates an adjustment magnitude, and the adjustment magnitude is any integer greater than 0 but less than 15. 10. The apparatus according to claim 6 , wherein the processor is configured to: adjust the rate-distortion costs of the multiple coding units of different sizes according to the formula, wherein the formula is: Rdo Cost N ′=C N ×Rdo Cost N , wherein RdoCost N ′ indicates the

Assignees

Inventors

Classifications

  • Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type · CPC title

  • the unit being a set of transform coefficients · CPC title

  • using discrete cosine transform [DCT] · CPC title

  • Filters, e.g. for pre-processing or post-processing (sub-band filter banks H04N19/635) · CPC title

  • being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters (processing of motion vectors H04N19/513) · 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 US11019343B2 cover?
A data block encoding method and apparatus are provided. The data block encoding method includes: determining whether a data block includes an intensive edge region, where the intensive edge region is a region including an image distortion generated by ring noise, and the data block is a data block in a to-be-encoded image; and when the data block includes an intensive edge region, reducing a v…
Who is the assignee on this patent?
Huawei Tech Co Ltd
What technology area does this patent fall under?
Primary CPC classification H04N19/176. 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 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).