IP Library › Granted Patent US 11,012,703
Granted Patent B2
US 11,012,703 · App. 16/436,045 · Granted May 18, 2021

Encoder, decoder, encoding method, and decoding method

Inventors: Tadamasa Toma (Osaka, JP); Takahiro Nishi (Nara, JP); Kiyofumi Abe (Osaka, JP)
Assignee: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
H04N19/51H04N19/176
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,012,703
App. No.
16/436,045
Granted
May 18, 2021
Kind
B2
Abstract

An encoder includes circuitry and memory. Using the memory, the circuitry: in an inter prediction mode in which an affine motion vector is calculated for each of sub-blocks constituting a current block of a picture in the video, based on motion vectors of neighboring blocks of the current block, changes a shape or size of the sub-block according to a variation in direction or variation in magnitude among the motion vectors of the neighboring blocks; calculates the affine motion vector for the sub-block having the shape or size changed; and performs the motion compensation for the sub-block having the shape or size changed.

Claims (74)

1. An encoder that encodes a video by motion compensation, the encoder comprising:

circuitry; and

memory,

wherein, using the memory, the circuitry:

in an inter prediction mode in which an affine motion vector is calculated for each of sub-blocks constituting a current block of a picture in the video, based on motion vectors of neighboring blocks of the current block,

changes a shape or size of the sub-block when a variation in direction or variation in magnitude among motion vectors of control points in the current block satisfies a predetermined condition, the motion vectors of the control points being derived based on the motion vectors of the neighboring blocks;

calculates the affine motion vector for the sub-block having the shape or size changed; and

performs the motion compensation for the sub-block having the shape or size changed,

wherein the circuitry selects a horizontally long or vertically long sub-block as the shape or size of the sub-block when the variation in direction or variation in magnitude among the motion vectors of the control points satisfies the predetermined condition.

2. The encoder according to claim 1 ,

wherein the predetermined condition is defined by a relationship between (i) a threshold value and (ii) a variation in horizontal component and a variation in vertical component among the motion vectors of the control points.

3. A decoder that decodes a video by motion compensation, the decoder comprising:

circuitry; and

memory,

wherein, using the memory, the circuitry:

in an inter prediction mode in which an affine motion vector is calculated for each of sub-blocks constituting a current block of a picture in the video, based on motion vectors of neighboring blocks of the current block,

changes a shape or size of the sub-block when a variation in direction or variation in magnitude among motion vectors of control points in the current block satisfies a predetermined condition, the motion vectors of the control points being derived based on the motion vectors of the neighboring blocks;

calculates the affine motion vector for the sub-block having the shape or size changed; and

performs the motion compensation for the sub-block having the shape or size changed,

wherein the circuitry selects a horizontally long or vertically long sub-block as the shape or size of the sub-block when the variation in direction or variation in magnitude among the motion vectors of the control points satisfies the predetermined condition.

4. The decoder according to claim 3 ,

wherein the predetermined condition is defined by a relationship between (i) a threshold value and (ii) a variation in horizontal component and a variation in vertical component among the motion vectors of the control points.

5. An encoding method of encoding a video by motion compensation, the encoding method comprising:

in an inter prediction mode in which an affine motion vector is calculated for each of sub-blocks constituting a current block of a picture in the video, based on motion vectors of neighboring blocks of the current block,

changing a shape or size of the sub-block when a variation in direction or variation in magnitude among motion vectors of control points in the current block satisfies a predetermined condition, the motion vectors of the control points being derived based on the motion vectors of the neighboring blocks;

calculating the affine motion vector for the sub-block having the shape or size changed; and

performing the motion compensation for the sub-block having the shape or size changed,

wherein a horizontally long or vertically long sub-block is selected as the shape or size of the sub-block when the variation in direction or variation in magnitude among the motion vectors of the control points satisfies the predetermined condition.

6. A decoding method of decoding a video by motion compensation, the decoding method comprising:

in an inter prediction mode in which an affine motion vector is calculated for each of sub-blocks constituting a current block of a picture in the video, based on motion vectors of neighboring blocks of the current block,

changing a shape or size of the sub-block when a variation in direction or variation in magnitude among motion vectors of control points in the current block satisfies a predetermined condition, the motion vectors of the control points being derived based on the motion vectors of the neighboring blocks;

calculating the affine motion vector for the sub-block having the shape or size changed; and

performing the motion compensation for the sub-block having the shape or size changed,

wherein a horizontally long or vertically long sub-block is selected as the shape or size of the sub-block when the variation in direction or variation in magnitude among the motion vectors of the control points satisfies the predetermined condition.

7. The encoder according to claim 1 ,

wherein when the variation in direction or variation in magnitude among the motion vectors of the control points satisfies the predetermined condition, the size of the sub-block is changed to a size larger than the smallest size.

8. The encoder according to claim 7 ,

wherein the smallest size is 4×4.

9. The encoder according to claim 7 ,

wherein the size larger than the smallest size is 8×8.

10. The encoder according to claim 7 ,

wherein the predetermined condition is a condition that the motion vectors of the control points in the current block are non-directional.

11. The encoder according to claim 7 ,

wherein the predetermined condition is a condition that the magnitude of the motion vectors of the control points in the current block is less than or equal to a threshold value.

12. The decoder according to claim 3 ,

wherein when the variation in direction or variation in magnitude among the motion vectors of the control points satisfies the predetermined condition, the size of the sub-block is changed to a size larger than the smallest size.

13. The decoder according to claim 12 ,

wherein the smallest size is 4×4.

14. The decoder according to claim 12 ,

wherein the size larger than the smallest size is 8×8.

15. The decoder according to claim 12 ,

wherein the predetermined condition is a condition that the motion vectors of the control points in the current block are non-directional.

16. The decoder according to claim 12 ,

wherein the predetermined condition is a condition that the magnitude of the motion vectors of the control points in the current block is less than or equal to a threshold value.

17. The encoding method according to claim 5 ,

wherein when the variation in direction or variation in magnitude among the motion vectors of the control points satisfies the predetermined condition, the size of the sub-block is changed to a size larger than the smallest size.

18. The encoding method according to claim 17 ,

wherein the smallest size is 4×4.

19. The encoding method according to claim 17 ,

wherein the size larger than the smallest size is 8×8.

20. The encoding method according to claim 17 ,

wherein the predetermined condition is a condition that the motion vectors of the control points in the current block are non-directional.

21. The encoding method according to claim 17 ,

wherein the predetermined condition is a condition that the magnitude of the motion vectors of the control points in the current block is less than or equal to a threshold value.

22. The decoding method according to claim 6 ,

wherein when the variation in direction or variation in magnitude among the motion vectors of the control points satisfies the predetermined condition, the size of the sub-block is changed to a size larger than the smallest size.

23. The decoding method according to claim 22 ,

wherein the smallest size is 4×4.

24. The decoding method according to claim 22 ,

wherein the size larger than the smallest size is 8×8.

25. The decoding method according to claim 22 ,

wherein the predetermined condition is a condition that the motion vectors of the control points in the current block are non-directional.

26. The decoding method according to claim 22 ,

wherein the predetermined condition is a condition that the magnitude of the motion vectors of the control points in the current block is less than or equal to a threshold value.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 21, 2019
From: TOMA, TADAMASA; NISHI, TAKAHIRO; ABE, KIYOFUMI
To: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
Reel/Frame 051082/0970 →
Continuity (2)
Provisional Application 62684483 · Jun 13, 2018
Related Publication 20190387242A1 · Dec 19, 2019