On boundary padding sample filtering in image/video coding
A method for coding video data implemented by a video coding apparatus. The method includes filtering padding samples within an extended area disposed around a video unit, and converting between the video unit of the video and a bitstream in accordance with the one or more padding samples in the extended area as filtered.
1 . A method for processing video data, comprising:
generating, during a conversion between a first block of a video and a bitstream of the video, padding samples in an extended area of a first picture, wherein a prediction block of the first block is derived from the first picture;
filtering the padding samples within the extended area; and
performing the conversion based on the padding samples in the extended area as filtered,
wherein the method further comprises: filtering one or more second padding samples at one side or both sides of an edge of the padding samples,
wherein a first padding sample from the padding samples is filtered by adding an offset to a sample value of the first padding sample, and
wherein different offset values are applied to different padding samples dependent on color components.
2 . The method of claim 1 , wherein the offset is based on one or more sample differences between a boundary sample within the first picture and one or more prediction samples corresponding to the boundary sample, and
wherein the boundary sample is located at a boundary of the first picture and is adjacent to the first padding sample.
3 . The method of claim 2 , wherein the offset is based on a sample difference between the boundary sample within the first picture and an intra prediction sample corresponding to the boundary sample.
4 . The method of claim 2 , wherein the offset is based on a sample difference between the boundary sample within the first picture and an inter prediction sample corresponding to the boundary sample.
5 . The method of claim 2 , wherein the offset is based on a sample difference between the boundary sample within the first picture and an Intra Block Copy (IBC) prediction sample corresponding to the boundary sample.
6 . The method of claim 1 , wherein a value of the offset added to the sample value of the first padding sample is derived based on a*Func(Diff 0 . . . , Diff i , . . . )+b, wherein a and b are constants, Diff i denotes the sample differences, i is an integer greater than 0, and Func denotes an average operation.
7 . The method of claim 1 , wherein a value of the offset added to the sample value of the first padding sample is derived based on a*Func(Diff 0 . . . , Diff i , . . . )+b, wherein a and b are constants, Diff i denotes the sample differences, i is an integer greater than 0, and Func denotes a minimum operation.
8 . The method of claim 1 , wherein a value of the offset added to the sample value of the first padding sample is derived based on a*Func (Diff 0 . . . , Diff i , . . . )+b, wherein a and b are constants, Diff i denotes the sample differences, i is an integer greater than 0, and Func denotes a maximum operation.
9 . The method of claim 1 , further comprising:
using the padding samples as filtered to generate inter-prediction, wherein the inter-prediction comprises Intra Block Copy (IBC) prediction.
10 . The method of claim 1 , wherein the conversion comprises encoding the first picture into the bitstream.
11 . The method of claim 1 , wherein the conversion comprises decoding the first picture from the bitstream.
12 . An apparatus for processing video data comprising a processor and a non-transitory memory with instructions thereon, wherein the instructions upon execution by the processor, cause the processor to:
generate, during a conversion between a first block of a video and a bitstream of the video, padding samples in an extended area of a first picture, wherein a prediction block of the first block is derived from the first picture;
filter the padding samples within the extended area; and
perform the conversion based on the padding samples in the extended area as filtered,
wherein the instructions upon execution by the processor, further cause the processor to: filter one or more second padding samples at one side or both sides of an edge of the padding samples,
wherein a first padding sample from the padding samples is filtered by adding an offset to a sample value of the first padding sample, and
wherein different offset values are applied to different padding samples dependent on color components.
13 . The apparatus of claim 12 , wherein the offset is based on one or more sample differences between a boundary sample within the first picture and one or more prediction samples corresponding to the boundary sample, and wherein the boundary sample is located at a boundary of the first picture and is adjacent to the first padding sample,
wherein the offset is based on a sample difference between the boundary sample within the first picture and an intra prediction sample corresponding to the boundary sample,
wherein the offset is based on a sample difference between the boundary sample within the first picture and an inter prediction sample corresponding to the boundary sample, or
wherein the offset is based on a sample difference between the boundary sample within the first picture and an Intra Block Copy (IBC) prediction sample corresponding to the boundary sample, and
wherein a value of the offset added to the sample value of the first padding sample is derived based on a*Func(Diff 0 . . . , Diff i , . . . )+b, wherein a and b are constants, Diff i denotes the sample differences, i is an integer greater than 0, and Func denotes an average operation, a minimum operation or a maximum operation.
14 . The apparatus of claim 12 , wherein the instructions upon execution by the processor, further cause the processor to:
use the padding samples as filtered to generate inter-prediction, wherein the inter-prediction comprises Intra Block Copy (IBC) prediction.
15 . A non-transitory computer-readable storage medium storing instructions that cause a processor to:
generate, during a conversion between a first block of a video and a bitstream of the video, padding samples in an extended area of a first picture, wherein a prediction block of the first block is derived from the first picture;
filter the padding samples within the extended area; and
perform the conversion based on the padding samples in the extended area as filtered,
wherein the instructions further cause the processor to: filter one or more second padding samples at one side or both sides of an edge of the padding samples,
wherein a first padding sample from the padding samples is filtered by adding an offset to a sample value of the first padding sample, and
wherein different offset values are applied to different padding samples dependent on color components.
16 . The non-transitory computer-readable storage medium of claim 15 , wherein the offset is based on one or more sample differences between a boundary sample within the first picture and one or more prediction samples corresponding to the boundary sample, and wherein the boundary sample is located at a boundary of the first picture and is adjacent to the first padding sample,
wherein the offset is based on a sample difference between the boundary sample within the first picture and an intra prediction sample corresponding to the boundary sample,
wherein the offset is based on a sample difference between the boundary sample within the first picture and an inter prediction sample corresponding to the boundary sample, or
wherein the offset is based on a sample difference between the boundary sample within the first picture and an Intra Block Copy (IBC) prediction sample corresponding to the boundary sample, wherein a value of the offset added to the sample value of the first padding sample is derived based on a*Func(Diff 0 . . . , Diff i , . . . )+b, wherein a and b are constants, Diff i denotes the sample differences, i is an integer greater than 0 , and Func denotes an average operation, a minimum operation or a maximum operation, and
wherein the instructions further cause the processor to:
use the padding samples as filtered to generate inter-prediction, wherein the inter-prediction comprises Intra Block Copy (IBC) prediction.
17 . A method for storing bitstream of a video, comprising:
generating, for a first block of the video, padding samples in an extended area of a first picture, wherein a prediction block of the first block is derived from the first picture;
filtering the padding samples within the extended area;
generating the bitstream of the video based on the padding samples in the extended area as filtered; and
storing the bitstream in a non-transitory computer-readable recording medium,
wherein the method further comprises: filtering one or more second padding samples at one side or both sides of an edge of the padding samples,
wherein a first padding sample from the padding samples is filtered by adding an offset to a sample value of the first padding sample, and
wherein different offset values are applied to different padding samples dependent on color components.
18 . The method of claim 17 ,
wherein the offset is based on one or more sample differences between a boundary sample within the first picture and one or more prediction samples corresponding to the boundary sample, and wherein the boundary sample is located at a boundary of the first picture and is adjacent to the first padding sample,
wherein the offset is based on a sample difference between the boundary sample within the first picture and an intra prediction sample corresponding to the boundary sample,
wherein the offset is based on a sample difference between the boundary sample within the first picture and an inter prediction sample corresponding to the boundary sample, or
wherein the offset is based on a sample difference between the boundary sample within the first picture and an Intra Block Copy (IBC) prediction sample corresponding to the boundary sample,
wherein a value of the offset added to the sample value of the first padding sample is derived based on a*Func(Diff 0 . . . , Diff i , . . . )+b, wherein a and b are constants, Diff i denotes the sample differences, i is an integer greater than 0, and Func denotes an average operation, a minimum operation or a maximum operation, and wherein the method further comprises:
using the padding samples as filtered to generate inter-prediction, wherein the inter-prediction comprises Intra Block Copy (IBC) prediction.