Simplified local illumination compensation
A method of processing video data includes determining, by processing circuitry, a plurality of neighboring samples for predicting a current block. The plurality of neighboring samples are arranged outside of a region of a current picture, the region comprising the current block, a row of samples adjacent to a top row of the current block, and a column of samples adjacent to a left column of the current block. The method further comprises deriving, by the processing circuitry, local illumination compensation information for the current block using the plurality of neighboring samples and generating, by the processing circuitry, a prediction block using the local illumination compensation information.
1. A method of processing video data, the method comprising:
determining, by processing circuitry, a plurality of neighboring samples for predicting a current block, wherein the plurality of neighboring samples are arranged outside of a region of a current picture, the region comprising the current block, a row of samples adjacent to a top row of the current block, and a column of samples adjacent to a left column of the current block;
deriving, by the processing circuitry, local illumination compensation information for the current block using the plurality of neighboring samples, wherein deriving the local illumination compensation information comprises calculating a and/or b,
wherein
a
=
2
N
·
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
·
Rec
refneig
(
i
)
-
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
2
N
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
·
Rec
refneig
(
i
)
-
(
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
)
2
,
wherein
b
=
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
-
a
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
2
N
,
and
wherein Rec neig denotes the plurality of neighboring samples, wherein Rec refneig denotes a plurality of reference neighboring samples, and wherein N denotes a pixel number in Rec neig and Rec refneig ; and
generating, by the processing circuitry, a prediction block using the local illumination compensation information.
2. The method of claim 1 , wherein the plurality of neighboring samples comprise a first set of samples arranged in a row and a second set of samples arranged in a column, the second set of samples being adjacent to the first set of samples.
3. The method of claim 1 , wherein the plurality of neighboring samples comprise a first set of samples arranged in a row and a second set of samples arranged in a column, the second set of samples being spaced apart from the first set of samples.
4. The method of claim 1 , further comprising:
reconstructing, by the processing circuitry, before deriving the local illumination compensation information for the current block, the plurality of neighboring samples.
5. The method of claim 1 , wherein the plurality of neighboring samples are adjacent to the region.
6. The method of claim 1 , wherein the region comprises a largest coding unit or a coding tree unit covering the current block.
7. The method of claim 1 , wherein the region covers one or more of the current block, a coded block above the current block, or a coded block to the left of the current block.
8. The method of claim 1 , wherein the plurality of reference neighboring samples are adjacent to a reference block for the current block.
9. The method of claim 1 , wherein the plurality of reference neighboring samples are not adjacent to a reference block for the current block.
10. The method of claim 1 , further comprising:
rounding, by the processing circuitry, a reference neighboring sample of the plurality of reference neighboring samples to integer pixels when the reference neighboring sample is arranged at a sub-pixel.
11. The method of claim 1 , further comprising:
determining, by the processing circuitry, to apply local illumination compensation for the current block in response to adjacent above samples of the current block, adjacent left samples of the current block, or both, being arranged outside of a current LCU for the current block, wherein deriving local illumination compensation information for a current block is in response to determining to apply local illumination compensation for the current block.
12. The method of claim 1 , wherein processing comprises encoding, the method further comprising:
storing, by the processing circuitry, the video data in a memory of a wireless communication device;
processing, by the processing circuitry, the video data on one or more processors of the wireless communication device; and
transmitting, by the processing circuitry, the video data from a transmitter of the wireless communication device.
13. The method of claim 1 , wherein processing comprises decoding, the method further comprising:
receiving, by the processing circuitry, the video data at a receiver of a wireless communication device;
storing, by the processing circuitry, the video data in a memory of the wireless communication device; and
processing, by the processing circuitry, the video data on one or more processors of the wireless communication device.
14. An apparatus for processing video data, the apparatus comprising:
one or more storage media configured to store video data; and
one or more processors configured to:
determine a plurality of neighboring samples for predicting a current block, wherein the plurality of neighboring samples are arranged outside of a region of a current picture, the region comprising the current block, a row of samples adjacent to a top row of the current block, and a column of samples adjacent to a left column of the current block;
derive local illumination compensation information for the current block using the plurality of neighboring samples, wherein, to derive the local illumination compensation information, the one or more processors are configured to calculate a and/or b,
wherein
a
=
2
N
·
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
·
Rec
refneig
(
i
)
-
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
2
N
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
·
Rec
refneig
(
i
)
-
(
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
)
2
,
wherein
b
=
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
-
a
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
2
N
,
and
wherein Rec neig denotes the plurality of neighboring samples, wherein Rec refneig denotes a plurality of reference neighboring samples, and wherein N denotes a pixel number in Rec neig and Rec refneig ; and
generate a prediction block using the local illumination compensation information.
15. The apparatus of claim 14 , wherein the plurality of neighboring samples comprise a first set of samples arranged in a row and a second set of samples arranged in a column, the second set of samples being adjacent to the first set of samples.
16. The apparatus of claim 14 , wherein the plurality of neighboring samples comprise a first set of samples arranged in a row and a second set of samples arranged in a column, the second set of samples being spaced apart from the first set of samples.
17. The apparatus of claim 14 , wherein the one or more processors are further configured to:
reconstruct before deriving the local illumination compensation information for the current block, the plurality of neighboring samples.
18. The apparatus of claim 14 , wherein the plurality of neighboring samples are adjacent to the region.
19. The apparatus of claim 14 , wherein the region comprises a largest coding unit or a coding tree unit covering the current block.
20. The apparatus of claim 14 , wherein the region covers one or more of the current block, a coded block above the current block, or a coded block to the left of the current block.
21. The apparatus of claim 14 , wherein the apparatus comprises a wireless communication device, further comprising a transmitter configured to transmit encoded video data.
22. The apparatus of claim 14 , wherein the apparatus comprises a wireless communication device, further comprising a receiver configured to receive encoded video data.
23. An apparatus comprising:
means for determining a plurality of neighboring samples for predicting a current block, wherein the plurality of neighboring samples are arranged outside of a region of a current picture, the region comprising the current block, a row of samples adjacent to a top row of the current block, and a column of samples adjacent to a left column of the current block;
means for deriving local illumination compensation information for the current block using the plurality of neighboring samples, wherein the means for deriving the local illumination compensation information comprises means for calculating a and/or b,
wherein
a
=
2
N
·
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
·
Rec
refneig
(
i
)
-
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
2
N
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
·
Rec
refneig
(
i
)
-
(
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
)
2
,
wherein
b
=
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
-
a
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
2
N
,
and
wherein Rec neig denotes the plurality of neighboring samples, wherein Rec refneig denotes a plurality of reference neighboring samples, and wherein N denotes a pixel number in Rec neig and Rec refneig ; and
means for generating a prediction block using the local illumination compensation information.
24. A non-transitory computer-readable storage medium storing instructions that, when executed, cause one or more processors to:
determine a plurality of neighboring samples for predicting a current block, wherein the plurality of neighboring samples are arranged outside of a region of a current picture, the region comprising the current block, a row of samples adjacent to a top row of the current block, and a column of samples adjacent to a left column of the current block;
derive local illumination compensation information for the current block using the plurality of neighboring samples, wherein, to derive the local illumination compensation information, the instructions further cause the one or more processors to calculate a and/or b,
wherein
a
=
2
N
·
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
·
Rec
refneig
(
i
)
-
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
2
N
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
·
Rec
refneig
(
i
)
-
(
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
)
2
,
wherein
b
=
∑
i
=
0
2
N
-
1
Rec
neig
(
i
)
-
a
·
∑
i
=
0
2
N
-
1
Rec
refneig
(
i
)
2
N
,
and
wherein Rec neig denotes the plurality of neighboring samples, wherein Rec refneig denotes a plurality of reference neighboring samples, and wherein N denotes a pixel number in Rec neig and Rec refneig ; and
generate a prediction block using the local illumination compensation information.