IP Library Granted Patent US 11,991,384
Granted Patent B2
US 11,991,384 · App. 17/985,652 · Granted May 21, 2024

Adaptive control point selection for affine motion model based video coding

Inventors: Yuwen He (San Diego, CA); Xiaoyu Xiu (San Diego, CA); Yan Ye (San Diego, CA); Philippe Hanhart (La Conversion, CH)
Assignee: VID SCALE, INC.
H04N19/52H04N19/54
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,991,384
App. No.
17/985,652
Granted
May 21, 2024
Kind
B2
Abstract

Systems, methods, and instrumentalities are disclosed for motion vector clipping when affine motion mode is enabled for a video block. A video coding device may determine that an affine mode for a video block is enabled. The video coding device may determine a plurality of control point affine motion vectors associated with the video block. The video coding device may store the plurality of clipped control point affine motion vectors for motion vector prediction of a neighboring control point affine motion vector. The video coding device may derive a sub-block motion vector associated with a sub-block of the video block, clip the derived sub-block motion vector, and store it for spatial motion vector prediction or temporal motion vector prediction. For example, the video coding device may clip the derived sub-block motion vector based on a motion field range that may be based on a bit depth value.

Claims (37)

1. A method for video decoding, the method comprising:

determining that affine mode is enabled for a current block that comprises a plurality of sub-blocks;

obtaining a sub-block motion vector associated with a sub-block of the plurality of sub-blocks;

clipping the sub-block motion vector based on a bit depth; and

decoding the sub-block based on the clipped sub-block motion vector.

2. The method of claim 1 , wherein the sub-block motion vector is based on a control point motion vector associated with the current block.

3. The method of claim 2 , wherein:

the control point motion vector is one of a plurality of control point motion vectors of the current block, and the plurality of control point motion vectors is associated with a plurality of control point positions.

4. The method of claim 3 , wherein the plurality of control point positions comprise a top-left control point and a top-right control point based on the width of the current block being greater than the length of the current block.

5. The method of claim 3 , wherein the plurality of control point positions comprise a top-left control point and a bottom-left control point based on the width of the current block being less than the length of the current block.

6. The method of claim 3 , wherein the plurality of control point positions comprise a bottom-left control point and a top-right control point based on the width of the current block being equal to the length of the current block.

7. The method of claim 1 , wherein the clipping of the sub-motion vector is further based on a motion field range.

8. The method of claim 1 , wherein the processor is further configured to store the clipped sub-block motion vector for spatial motion vector prediction or temporal motion vector prediction.

9. The method of claim 1 , wherein the bit depth is used for motion field storage.

10. A method for video encoding, the method comprising:

determining that affine mode is enabled for a current block that comprises a plurality of sub-blocks;

obtaining a sub-block motion vector associated with a sub-block of the plurality of sub-blocks;

clipping the sub-block motion vector based on a bit depth; and

encoding the sub-block based on the clipped sub-block motion vector.

11. The method of claim 10 , wherein the sub-block motion vector is based on a control point motion vector associated with the current block.

12. The method of claim 11 , wherein:

the control point motion vector is one of a plurality of control point motion vectors of the current block, and

the plurality of control point motion vectors is associated with a plurality of control point positions.

13. The method of claim 12 , wherein the plurality of control point positions comprise a top-left control point and a top-right control point based on the width of the current block being greater than the length of the current block.

14. The method of claim 12 , wherein the plurality of control point positions comprise a top-left control point and a bottom-left control point based on the width of the current block being less than the length of the current block.

15. The method of claim 12 , wherein the plurality of control point positions comprise a bottom-left control point and a top-right control point based on the width of the current block being equal to the length of the current block.

16. (Currently Amended The method of claim 10 , wherein the clipping of the sub-motion vector is further based on a motion field range.

17. The method of claim 10 , wherein the processor is further configured to store the clipped sub-block motion vector for spatial motion vector prediction or temporal motion vector prediction.

18. A non-transitory computer-readable storage medium including instructions for causing one or more processors to:

determine that affine mode is enabled for a current block that comprises a plurality of sub-blocks;

obtain a sub-block motion vector associated with a sub-block of the plurality of sub-blocks;

clip the sub-block motion vector based on a bit depth; and

decode the sub-block based on the clipped sub-block motion vector.

19. The non-transitory computer-readable storage medium of claim 18 , wherein the sub-block motion vector is based on a control point motion vector associated with the current block.

20. The non-transitory computer-readable storage medium of claim 19 , wherein:

the control point motion vector is one of a plurality of control point motion vectors of the current block, and

the plurality of control point motion vectors is associated with a plurality of control point positions.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 12, 2024
From: HE, YUWEN; XIU, XIAOYU; YE, YAN; HANHART, PHILIPPE
To: VID SCALE, INC.
Reel/Frame 068570/0881 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2024
From: VID SCALE, INC.
To: INTERDIGITAL VC HOLDINGS, INC.
Reel/Frame 068284/0031 →