Encoder, decoder and corresponding methods for adaptive loop filtering

US12267491B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12267491-B2
Application numberUS-202217871753-A
CountryUS
Kind codeB2
Filing dateJul 22, 2022
Priority dateJan 24, 2020
Publication dateApr 1, 2025
Grant dateApr 1, 2025

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 of filtering a sample value of a picture and a video decoding apparatus are disclosed, the method comprises: obtaining a reconstructed sample value for a block of the picture; obtaining filter coefficients for adaptive loop filtering according to a bitstream; obtaining a sum value according to the filter coefficients and the reconstructed sample value for the block; rounding the sum value according to a vertical position of a sample in the block, to obtain a rounded sum value; obtaining a filter reconstructed sample value for the block according to the rounded sum value.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method of filtering a sample value of a picture, wherein the method comprises: obtaining a reconstructed sample value for a block of the picture; obtaining filter coefficients for adaptive loop filtering according to a bitstream; obtaining a sum value according to the filter coefficients, and the reconstructed sample value for the block; rounding the sum value according to a vertical position of a sample in the block to obtain a rounded sum value, wherein the vertical position of the sample in the block is a luma sample position, and wherein the rounded sum value equals curr+((sum+roundY)>>alfShiftY) and satisfies the following table: Condition roundY alfShiftY y1 y2 y3 (y = = CtbSizeY − 5 | | y = = 512 10 0 0 0 CtbSizeY − 4) && (applyAlfLineBufBoundary = = 1) (y = = CtbSizeY − 6 | | y = =  64  7 1 1 1 CtbSizeY − 3) && (applyAlfLineBufBoundary = = 1) (y = = CtbSizeY − 7 | | y = =  64  7 1 2 2 CtbSizeY − 2) && (applyAlfLineBufBoundary = = 1) Otherwise  64  7 1 2 3 wherein y represents the vertical position of the sample; curr represents the reconstructed sample value for the block; sum represents the sum value; CtbSizeY represents a size of a coding tree block (CTB) corresponding to the block; v 1 , y 2 and y 3 represent vertical sample position offsets indicating other reconstructed sample values involved in the obtaining the sum value; roundY and alfShiftY are variables that are determined based on the vertical position of the sample; apply AlfLineBufBoundary is an index and derived as follows: if a bottom boundary of the coding tree block is a bottom boundary of the picture and pic_height_in_luma_samples−yCtb≤CtbSizeY−4, apply AlfLineBufBoundary is set equal to 0, otherwise, apply AlfLineBufBoundary is set equal to 1, wherein the pic_height_in_luma_samples represents a height of the picture in luma samples, and (xCtb, yCtb) represents a location of the CTB; and obtaining a filter reconstructed sample value for the block according to the rounded sum value. 2. The method of claim 1 , wherein roundY is equal to 512 and alfShiftY is equal to 10 when the vertical position of the sample satisfies any one of the below conditions: y==CtbSizeY−t-1, or y==CtbSizeY−t, or y==ctbHeightC−t, or y==ctbHeightC−t-1, wherein y is the vertical position of the sample, CtbSizeY is a coding tree block (CTB) size, ctbHeightC is a height of the CTB, and t is an integer value, wherein t is 2, 3, 4, 5 or 6. 3. The method of claim 1 , wherein roundY is equal to 64 and alfShiftY is equal to 7 when the vertical position of the sample does not satisfy any one of the below conditions: y==CtbSizeY−t-1, or y==CtbSizeY−t, or y==ctbHeightC−t, or y==ctbHeightC−t-1, wherein y is the vertical position of the sample, CtbSizeY is a coding tree block (CTB) size, ctbHeightC is a height of the CTB, and t is an integer value, wherein t is 2, 3, 4, 5 or 6. 4. The method of claim 1 , wherein when the vertical position of the sample in the block is equal to 0, alfShiftY is equal to 10. 5. The method of claim 1 , wherein when the vertical position of the sample in the block is not equal to 0, alfShiftY is equal to 7. 6. The method of claim 1 , wherein the rounding the sum value comprises: adding the value roundY which is determined based on the vertical position of the sample to the sum value in order to obtain an added sum value, and shifting the added sum value based on the vertical position of the sample. 7. A decoder, comprising: one or more processors; and a non-transitory computer-readable storage medium coupled to the one or more processors and storing programming for execution by the one or more processors, wherein the programming, when executed by the processors, causes the decoder to perform operations comprising: obtaining a reconstructed sample value for a block of a picture; obtaining filter coefficients for adaptive loop filtering according to a bitstream; obtaining a sum value according to the filter coefficients and the reconstructed sample value for the block; rounding the sum value according to a vertical position of a sample in the block, to obtain a rounded sum value, wherein the vertical position of the sample in the block is a luma sample position, and wherein the rounded sum value equals curr+((sum+roundY)>>alfShiftY) and satisfies the following table: Condition roundY alfShiftY y1 y2 y3 (y = = CtbSizeY − 5 | | y = = 512 10 0 0 0 CtbSizeY − 4) && (applyAlfLineBufBoundary = = 1) (y = = CtbSizeY − 6 | | y = =  64  7 1 1 1 CtbSizeY − 3) &&

Assignees

Inventors

Classifications

  • H04N19/176Primary

    the region being a block, e.g. a macroblock · CPC title

  • Tree coding, e.g. quad-tree coding · CPC title

  • Position within a video image, e.g. region of interest [ROI] · CPC title

  • involving reduction of coding artifacts, e.g. of blockiness · CPC title

  • Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking · 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 US12267491B2 cover?
A method of filtering a sample value of a picture and a video decoding apparatus are disclosed, the method comprises: obtaining a reconstructed sample value for a block of the picture; obtaining filter coefficients for adaptive loop filtering according to a bitstream; obtaining a sum value according to the filter coefficients and the reconstructed sample value for the block; rounding the sum va…
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 Apr 01 2025 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).