Method and apparatus of bi-directional optical flow for video coding
AssigneeMediatek Inc.
InventorsYu-Chi Su, Ching-Yeh Chen, Tzu-Der Chuang, Chen-Yen Lai
Life of this patent
Estimating the term…
Abstract
Method and apparatus of using Bi-directional optical flow (BIO) for a true bi-direction predicted block are disclosed. According to one method of the present invention, the gradients are limited to a predefined bit-depth in order to reduce the computational complexity. According to another method, the data range of gradient sum and/or the difference between L0 and L1 interpolated pixels are shifted by a predefined bit-depth. The pre-defined bit-depth can be implicitly determined or signalled in a bit stream at a sequence level, picture level or slice level. The pre-defined bit-depth can also be determined dependent on input bit-depth.
Claims12
A method of video coding using Bi-directional optical flow (BIO) for a true bi-direction predicted block, the method comprising:
- receiving input data associated with a current block in a current picture, wherein the current block is coded using bi-direction prediction;
- determining a first reference block associated with the current block in a first reference picture from reference picture list 0 and a second reference block associated with the current block in a second reference picture from reference picture list 1, wherein the first reference block and the second reference block are pointed by true bi-direction motion vectors;
- deriving first x-gradients and first y-gradients based on the first reference block, and second x-gradients and second y-gradients based on the second reference block,
- wherein data range related to the first x-gradients, the first y-gradients, the second x-gradients and the second y-gradients are limited to a pre-defined bit-depth to generate range-limited first x-gradients, range-limited first y-gradients, range-limited second x-gradients and range-limited second y-gradients;
- deriving a set of gradient parameters based on first information, wherein the first information comprising the range-limited first x-gradients, the range-limited first y-gradients, the range-limited second x-gradients, the range-limited second y-gradients;
- deriving x-motion offset and y-motion offset based on the set of gradient parameters;
- generating a refined predictor for the current block based on second information, wherein the second information comprising the x-motion offset and the y-motion offset;
- and
- encoding or decoding the current block based on the refined predictor.
A method of video coding using Bi-directional optical flow (BIO) for a true bi-direction predicted block, the method comprising:
- receiving input data associated with a current block in a current picture, wherein the current block is coded using bi-direction prediction;
- determining a first reference block associated with the current block in a first reference picture from reference picture list 0 and a second reference block associated with the current block in a second reference picture from reference picture list 1, wherein the first reference block and the second reference block are pointed by true bi-direction motion vectors;
- deriving first x-gradients and first y-gradients based on the first reference block, and second x-gradients and second y-gradients based on the second reference block;
- deriving x-gradient sums based on the first x-gradients and the second x-gradients;
- deriving y-gradient sums based on the first y-gradients and the second y-gradients;
- and deriving reference differences between interpolated pixels in the first reference block and the second reference block;
- wherein a data range for the x-gradient sums and the y-gradient sums, the reference differences, or both are shifted by a first pre-defined bit-depth;
- deriving x-motion offset and y-motion offset using first information, wherein the first information comprising the x-gradient sums, the y-gradient sums, and the reference differences;
- generating a refined predictor for the current block based on second information, wherein the second information comprising the x-motion offset and the y-motion offset;
- and
- encoding or decoding the current block based on the refined predictor.
An apparatus of video coding using Bi-directional optical flow (BIO) for a true bi-direction predicted block, the apparatus of video coding comprising one or more electronic circuits or processors arranged to:
- receive input data associated with a current block in a current picture, wherein the current block is coded using bi-direction prediction;
- determine a first reference block associated with the current block in a first reference picture from reference picture list 0 and a second reference block associated with the current block in a second reference picture from reference picture list 1, wherein the first reference block and the second reference block are pointed by true bi-direction motion vectors;
- derive first x-gradients and first y-gradients based on the first reference block, and second x-gradients and second y-gradients based on the second reference block;
- derive x-gradient sums based on the first x-gradients and the second x-gradients;
- deriving y-gradient sums based on the first y-gradients and the second y-gradients;
- and deriving reference differences between interpolated pixels in the first reference block and the second reference block;
- wherein a data range for the x-gradient sums and the y-gradient sums, the reference differences, or both are shifted by a first pre-defined bit-depth;
- derive x-motion offset and y-motion offset using first information, wherein the first information comprising the x-gradient sums, the y-gradient sums, and the reference differences;
- generate a refined predictor for the current block based on second information, wherein the second information comprising the x-motion offset and the y-motion offset;
- and
- encode or decode the current block based on the refined predictor.
Dependencies are inferred from the claim text.