US 11,870,986 B2
Encoder, a decoder and corresponding methods using an adaptive loop filter
Anand Meher Kotra, Munich (DE); Semih Esenlik, Munich (DE); Jianle Chen, San Diego, CA (US); Han Gao, Munich (DE); Biao Wang, Munich (DE); and Zhijie Zhao, Munich (DE)
Assigned to HUAWEI TECHNOLOGIES CO., LTD., Shenzhen (CN)
Filed by HUAWEI TECHNOLOGIES CO., LTD., Guangdong (CN)
Filed on Nov. 29, 2022, as Appl. No. 18/071,578.
Application 18/071,578 is a continuation of application No. 17/356,047, filed on Jun. 23, 2021, granted, now 11,523,111.
Application 17/356,047 is a continuation of application No. PCT/CN2019/127535, filed on Dec. 23, 2019.
Claims priority of provisional application 62/822,979, filed on Mar. 24, 2019.
Claims priority of provisional application 62/787,735, filed on Jan. 2, 2019.
Claims priority of provisional application 62/784,535, filed on Dec. 23, 2018.
Prior Publication US 2023/0224460 A1, Jul. 13, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. H04N 19/117 (2014.01); H04N 19/176 (2014.01); H04N 19/186 (2014.01); H04N 19/82 (2014.01); H04N 19/96 (2014.01)
CPC H04N 19/117 (2014.11) [H04N 19/176 (2014.11); H04N 19/186 (2014.11); H04N 19/82 (2014.11); H04N 19/96 (2014.11)] 20 Claims
OG exemplary drawing
 
1. An encoding device for filtering a sample value of a picture having a first block and a second block, the first block and the second block adjoining each other in a block boundary, wherein the picture comprises at least n×m samples p(i,j) arranged in n rows and m columns, wherein i is a row index that runs from 1 to n and j is a column index that runs from 1 to m, wherein samples p(i,j) with i from 1 to k belong to the first block and samples with i from k+1 to n belong to the second block, and wherein k is an integer number less than n, the device comprising:
a memory containing instructions; and
a processor in communication with the memory, wherein the processor, upon execution of the instructions, is configured to perform operations of:
when an integer t that is less than k and an integer j in the range of 1 to m:
generating, with an integer i in the range of 1 to k−t-−1, a filtered sample value by applying a filter to the value of the sample p(i,j), wherein the filter is supported by a set of filter support samples, wherein the set of filter support samples comprises the sample p(i,j) and one or more further samples, and wherein the set of filter support samples does not comprise any samples p(i′,j′) with row index i′ greater than k−t−1,
generating, with an integer i in the range of k−t to k, a filtered sample value by applying a filter to the value of the sample p(i,j), wherein the filter is supported by a set of filter support samples, wherein the set of filter support samples comprises the sample p(i,j) and one or more further samples, and wherein the set of filter support samples does not comprise any samples p(i′,j′) with row index i′ less than k−t;
applying a symmetric padding operation at or near a virtual boundary when required samples are not accessible for filtering the sample p(i,j), wherein the symmetric padding operation is defined as replacing unavailable samples by immediate neighboring samples that are available for filtering operation; and
encoding an indicator into a bitstream, wherein the indicator is signaled to indicate whether the filter is applied to a coding tree block.