IP Library › Granted Patent US 11,178,422
Granted Patent B2
US 11,178,422 · App. 17/087,033 · Granted Nov 16, 2021

Sub-block based decoder side motion vector derivation

Inventors: Hongbin Liu (Beijing, CN); Li Zhang (San Diego, CA); Kai Zhang (San Diego, CA); Yue Wang (Beijing, CN)
Assignees: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.; BYTEDANCE INC.
H04N19/52H04N19/105H04N19/139H04N19/159H04N19/176H04N19/184H04N19/44H04N19/521H04N19/577
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,178,422
App. No.
17/087,033
Filed
Nov 2, 2020
Granted
Nov 16, 2021
Kind
B2
Art Unit
2482
USPC
375/240.16
Abstract

Devices, systems and methods for digital video coding, which include decoder side motion vector derivation (DMVD) tools, are described. An exemplary method for video processing includes making a decision, based on a determination that a current block of a video is coded using a multi-hypothesis prediction mode, regarding a selective enablement of a DMVD tool for the current block, wherein the DMVD tool derives a refinement of motion information signaled in a bitstream representation of the video; and performing, based on the decision, a conversion between the current block and the bitstream representation.

Claims (52)

1. A method of processing video data, comprising:

dividing a coding tree unit (CTU) into a plurality of coding units (CUs);

constructing a motion candidate list for a current coding unit (CU);

deriving motion information for the current CU based on the motion candidate list;

dividing the current CU into a plurality of sub-CUs, if at least one condition of a size of the current CU is met;

making a decision regarding a selective enablement of a decoder-side motion vector derivation (DMVD) tool at a sub-CU level, wherein the DMVD tool is used to refine motion information; and

performing, based on the decision, a conversion between the current CU and the bitstream,

wherein the DMVD tool is a bi-directional optical flow tool which is used to refine a motion vector based on at least one gradient value corresponding to a sample in a reference CU of the current CU,

wherein responsive to a height (H) or a width (W) of the current CU being greater than a threshold (L), the current CU is divided into multiple sub-CUs, and wherein L is a positive integer, and wherein L is predetermined.

2. The method of claim 1 , wherein the width of the sub-CU is min(L, W).

3. The method of claim 1 , wherein the height of the sub-CU is min(L, H).

4. The method of claim 1 , wherein the DMVD tool is enabled for each of the plurality of sub-CUs of the current CU.

5. The method of claim 1 , wherein the sub-CU is treated as a block and all operations required in the DMVD tool are performed for the sub-CU.

6. The method of claim 1 , wherein L=64, wherein a size of the current CU is 64×128, 128×64 or 128×128, and wherein a size of each of plurality of sub-CUs is 64×64.

7. The method of claim 1 , wherein L=16.

8. The method of claim 1 , wherein L=64, wherein a size of the current CU is N×128 or 128×N, and wherein a size of both of the plurality of sub-CUs is N×64 or 64×N, respectively.

9. The method of claim 1 , wherein L is signaled in the bitstream in a sequence parameter set (SPS), a picture parameter set (PPS), a picture header, a slice header, a tile group header, or a tile header.

10. The method of claim 1 , wherein L is based on at least one of a size or a coding mode of the current CU, a picture type, or a temporal layer index.

11. The method of claim 1 , wherein the conversion comprises encoding the bitstream from the current CU.

12. The method of claim 1 , wherein the conversion comprises decoding the current CU from the bitstream.

13. 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:

divide a coding tree unit (CTU) into a plurality of coding units (CUs);

construct a motion candidate list for a current coding unit (CU);

derive motion information for the current CU based on the motion candidate list;

divide the current CU into a plurality of sub-CUs, if at least one condition of a size of the current CU is met;

make a decision regarding a selective enablement of a decoder-side motion vector derivation (DMVD) tool at a sub-CU level, wherein the DMVD tool is used to refine motion information; and

perform, based on the decision, a conversion between the current CU and the bitstream,

wherein the DMVD tool is a bi-directional optical flow tool which is used to refine a motion vector based on at least one gradient value corresponding to a sample in a reference CU of the current CU,

wherein responsive to a height (H) or a width (W) of the current CU being greater than a threshold (L), the current CU is divided into multiple sub-CUs, and wherein L is a positive integer, and wherein L is predetermined.

14. The apparatus of claim 13 , wherein the DMVD tool is one of a decoder-side motion vector refinement (DMVR) tool which is used to refine a signaled motion vector based on at least one motion vector with an offset to the signaled motion vector, or a bi-directional optical flow tool which is used to refine a motion vector based on at least one gradient value corresponding to a sample in a reference block of the current CU.

15. The apparatus of claim 13 , wherein the width of the sub-CU is min(L, W).

16. The apparatus of claim 13 , wherein the height of the sub-CU is min(L, H).

17. A non-transitory computer-readable storage medium storing instructions that cause a processor to:

divide a coding tree unit (CTU) into a plurality of coding units (CUs);

construct a motion candidate list for a current coding unit (CU);

derive motion information for the current CU based on the motion candidate list;

divide the current CU into a plurality of sub-CUs, if at least one condition of a size of the current CU is met;

make a decision regarding a selective enablement of a decoder-side motion vector derivation (DMVD) tool at a sub-CU level, wherein the DMVD tool is used to refine motion information; and

perform, based on the decision, a conversion between the current CU and the bitstream,

wherein the DMVD tool is a bi-directional optical flow tool which is used to refine a motion vector based on at least one gradient value corresponding to a sample in a reference CU of the current CU,

wherein responsive to a height (H) or a width (W) of the current CU being greater than a threshold (L), the current CU is divided into multiple sub-CUs, and wherein L is a positive integer, and wherein L is predetermined.

18. The non-transitory computer-readable storage medium of claim 17 , wherein the width of the sub-CU is min(L, W).

19. The non-transitory computer-readable storage medium of claim 17 , wherein the height of the sub-CU is min(L, H).

20. A non-transitory computer-readable recording medium storing a bitstream of a video which is generated by a method performed by a video processing apparatus, wherein the method comprises:

divide a coding tree unit (CTU) into a plurality of coding units (CUs);

construct a motion candidate list for a current coding unit (CU);

derive motion information for the current CU based on the motion candidate list;

dividing the current CU into a plurality of sub-CUs, if at least one condition of a size of the current CU is met;

making a decision regarding a selective enablement of a decoder-side motion vector derivation (DMVD) tool at a sub-CU level, wherein the DMVD tool is used to refine motion information; and

generating, based on the decision, the bitstream from the current CU,

wherein the DMVD tool is a bi-directional optical flow tool which is used to refine a motion vector based on at least one gradient value corresponding to a sample in a reference CU of the current CU,

wherein responsive to a height (H) or a width (W) of the current CU being greater than a threshold (L), the current CU is divided into multiple sub-CUs, and wherein L is a positive integer, and wherein L is predetermined.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2020
From: ZHANG, LI; ZHANG, KAI
To: BYTEDANCE INC.
Reel/Frame 054245/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2020
From: LIU, HONGBIN; WANG, YUE
To: BEIJING BYTEDANCE NETWORK TECHNOLOGY CO., LTD.
Reel/Frame 054245/0486 →
Priority Claims (1)
WO PCT/CN2018/111224 · Oct 22, 2018 · international
Continuity (2)
Continuation PCTIB2019058979 · Oct 22, 2019
Related Publication 20210051339A1 · Feb 18, 2021
Cited By (4)
US 12,568,223 US 12,634,443 US 12,744,890 US 12,744,891