Image decoding apparatus and image coding apparatus
A method of generating a prediction for an area of video data, comprises Receiving a rectangular video block including sample values, and for each sample included in the video block, generating a predictive simple value by averaging a horizontal interpolation and a vertical interpolation corresponding to the location of the sample within the video block.
1. A method of generating a prediction sample value for a current sample in a video block according to a planar prediction, the method comprising:
calculating a vertical interpolation value by multiplying a sum of a first value and a second value by a width of the video block, wherein the first value is a value of a reconstructed sample located in an adjacent above row to the video block and having a same horizontal position as the current sample weighted by a distance of the current value from a bottom row of the video block, and wherein the second value is a value of a reconstructed sample located in an adjacent left column to the video block and having a vertical position at a height of the video block weighted by a distance of the current sample from the adjacent above row to the video block;
calculating a horizontal interpolation value by multiplying a sum of a third value and a fourth value by the height of the video block, wherein the third value is a value of a reconstructed sample located in the adjacent left column to the video block and having a same vertical position as the current sample weighted by a distance of the current sample from a rightmost column of the video block, and wherein the fourth value is a value of a reconstructed sample located in the adjacent above row to the video block and having a horizontal position at the width of the video block weighted by a distance of the current sample from the adjacent left column to the video block; and
generating the prediction sample value based on a sum of the vertical interpolation value and the horizontal interpolation value.
2. The method of claim 1 , wherein the width and the height of the video block are not equal.
3. A device for coding video data by generating a prediction sample value for a current sample in a video block according to a planar prediction, the device comprising one or more processors configured to:
calculate a vertical interpolation value by multiplying a sum of a first value and a second value by a width of the video block, wherein the first value is a value of a reconstructed sample located in an adjacent above row to the video block and having a same horizontal position as the current sample weighted by a distance of the current sample from a bottom row of the video block, and wherein the second value is a value of a reconstructed sample located in an adjacent left column to the video block and having a vertical position at a height of the video block weighted by a distance of the current sample from the adjacent above row to the video block;
calculate a horizontal interpolation value by multiplying a sum of a third value and a fourth value by the height of the video block, wherein the third value is a value of a reconstructed sample located in the adjacent left column to the video block and having a same vertical position as the current sample weighted by a distance of the current sample from a rightmost column of the video block, and wherein the fourth value is a value of a reconstructed sample located in the adjacent above row to the video block and having a horizontal position at the width of the video block weighted by a distance of the current sample from the adjacent left column to the video block; and
generate the prediction sample value based on a sum of the vertical interpolation value and the horizontal interpolation value.
4. The device of claim 3 , wherein the width and the height of the video block are not equal.
5. The device of claim 3 , wherein the device includes a video encoder.
6. The device of claim 3 , wherein the device includes a video decoder.
7. An apparatus for coding video data, the apparatus comprising means for performing any and all combinations of the steps of claim 1 .
8. A non-transitory computer-readable storage medium comprising instructions stored thereon that, when executed, cause one or more processors of a device for coding video data to perform any and all combinations of the steps of claim 1 .