IP Library Granted Patent US 11,146,812
Granted Patent B2
US 11,146,812 · App. 16/942,583 · Granted Oct 12, 2021

Encoder, decoder, encoding method, and decoding method

Inventors: Kiyofumi Abe (Osaka, JP); Takahiro Nishi (Nara, JP); Tadamasa Toma (Osaka, JP); Ryuichi Kanoh (Osaka, JP); Chong Soon Lim (Singapore, SG); Ru Ling Liao (Singapore, SG); Hai Wei Sun (Singapore, SG); Sughosh Pavan Shashidhar (Singapore, SG); Han Boon Teo (Singapore, SG); Jing Ya Li (Singapore, SG)
Assignee: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
H04N19/537H04N19/119H04N19/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,146,812
App. No.
16/942,583
Granted
Oct 12, 2021
Kind
B2
Abstract

Provided is an encoder which includes circuitry and memory. Using the memory, the circuitry: splits an image block into a plurality of partitions; generates a motion vector candidate list; obtains a motion vector from the motion vector candidate list; performs inter prediction processing using the motion vector; and encodes the image block using a result of the inter prediction processing. When a partition is a non-rectangular partition, the circuitry generates the motion vector candidate list using at least one motion vector among a plurality of motion vectors for a plurality of spatially neighboring partitions or a plurality of motion vectors for a plurality of temporally neighboring partitions, without using a plurality of motion vectors for a plurality of sub-partitions.

Claims (86)

1. An encoder, comprising:

circuitry; and

memory, wherein

using the memory, the circuitry:

splits an image block into a plurality of partitions;

generates a motion vector candidate list for a partition included in the plurality of partitions;

obtains a motion vector for the partition from the motion vector candidate list;

performs inter prediction processing for the partition using the motion vector for the partition; and

encodes the image block using a result of the inter prediction processing,

in generating the motion vector candidate list, the circuitry:

determines whether the partition is a non-rectangular partition;

when the partition is determined not to be a non-rectangular partition, generates the motion vector candidate list using at least one motion vector among:

a plurality of motion vectors for a plurality of spatially neighboring partitions that spatially neighbor the partition,

a plurality of motion vectors for a plurality of temporally neighboring partitions that temporally neighbor the partition, or

a plurality of motion vectors for a plurality of sub-partitions included in the partition; and

when the partition is determined to be a non-rectangular partition, generates the motion vector candidate list using at least one motion vector among:

the plurality of motion vectors for the plurality of spatially neighboring partitions, or

the plurality of motion vectors for the plurality of temporally neighboring partitions, without using the plurality of motion vectors for the plurality of sub-partitions.

2. The encoder according to claim 1 , wherein

the circuitry determines that the partition is a non-rectangular partition when the partition is a triangular partition.

3. The encoder according to claim 1 , wherein

the plurality of motion vectors for the plurality of sub-partitions include motion vectors predicted from motion vectors for regions which spatially or temporally neighbor the plurality of sub-partitions.

4. The encoder according to claim 1 , wherein

the motion vector candidate list generated when the partition is determined not to be a non-rectangular partition is same as a motion vector candidate list generated for the image block in a determined prediction mode.

5. The encoder according to claim 1 , wherein

each of the plurality of temporally neighboring partitions is a co-located partition which, in a picture different from a picture that includes the partition, is located in a position that corresponds to a position of the partition.

6. The encoder according to claim 1 , wherein

when the partition is determined not to be a non-rectangular partition, the motion vector candidate list includes a motion vector among the plurality of motion vectors for the plurality of spatially neighboring partitions that spatially neighbor the partition, a motion vector among the plurality of motion vectors for the plurality of temporally neighboring partitions that temporally neighbor the partition, and a motion vector among the plurality of motion vectors for the plurality of sub-partitions included in the partition.

7. A decoder, comprising:

circuitry; and

memory, wherein

using the memory, the circuitry:

splits an image block into a plurality of partitions;

generates a motion vector candidate list for a partition included in the plurality of partitions;

obtains a motion vector for the partition from the motion vector candidate list;

performs inter prediction processing for the partition using the motion vector for the partition; and

decodes the image block using a result of the inter prediction processing,

in generating the motion vector candidate list, the circuitry:

determines whether the partition is a non-rectangular partition;

when the partition is determined not to be a non-rectangular partition, generates the motion vector candidate list using at least one motion vector among:

a plurality of motion vectors for a plurality of spatially neighboring partitions that spatially neighbor the partition,

a plurality of motion vectors for a plurality of temporally neighboring partitions that temporally neighbor the partition, or

a plurality of motion vectors for a plurality of sub-partitions included in the partition; and

when the partition is determined to be a non-rectangular partition, generates the motion vector candidate list using at least one motion vector among:

the plurality of motion vectors for the plurality of spatially neighboring partitions, or

the plurality of motion vectors for the plurality of temporally neighboring partitions, without using the plurality of motion vectors for the plurality of sub-partitions.

8. The decoder according to claim 7 , wherein

the circuitry determines that the partition is a non-rectangular partition when the partition is a triangular partition.

9. The decoder according to claim 7 , wherein

the plurality of motion vectors for the plurality of sub-partitions include motion vectors predicted from motion vectors for regions which spatially or temporally neighbor the plurality of sub-partitions.

10. The decoder according to claim 7 , wherein

the motion vector candidate list generated when the partition is determined not to be a non-rectangular partition is same as a motion vector candidate list generated for the image block in a determined prediction mode.

11. The decoder according to claim 7 , wherein

each of the plurality of temporally neighboring partitions is a co-located partition which, in a picture different from a picture that includes the partition, is located in a position that corresponds to a position of the partition.

12. The decoder according to claim 7 , wherein

when the partition is determined not to be a non-rectangular partition, the motion vector candidate list includes a motion vector among the plurality of motion vectors for the plurality of spatially neighboring partitions that spatially neighbor the partition, a motion vector among the plurality of motion vectors for the plurality of temporally neighboring partitions that temporally neighbor the partition, and a motion vector among the plurality of motion vectors for the plurality of sub-partitions included in the partition.

13. An encoding method, comprising:

splitting an image block into a plurality of partitions;

generating a motion vector candidate list for a partition included in the plurality of partitions;

obtaining a motion vector for the partition from the motion vector candidate list;

performing inter prediction processing for the partition using the motion vector for the partition; and

encoding the image block using a result of the inter prediction processing, wherein

the generating of the motion vector candidate list includes:

determining whether the partition is a non-rectangular partition;

when the partition is determined not to be a non-rectangular partition, generating the motion vector candidate list using at least one motion vector among:

a plurality of motion vectors for a plurality of spatially neighboring partitions that spatially neighbor the partition,

a plurality of motion vectors for a plurality of temporally neighboring partitions that temporally neighbor the partition, or

a plurality of motion vectors for a plurality of sub-partitions included in the partition; and

when the partition is determined to be a non-rectangular partition, generating the motion vector candidate list using at least one motion vector among:

the plurality of motion vectors for the plurality of spatially neighboring partitions, or

the plurality of motion vectors for the plurality of temporally neighboring partitions, without using the plurality of motion vectors for the plurality of sub-partitions.

14. A decoding method, comprising:

splitting an image block into a plurality of partitions;

generating a motion vector candidate list for a partition included in the plurality of partitions;

obtaining a motion vector for the partition from the motion vector candidate list;

performing inter prediction processing for the partition using the motion vector for the partition; and

decoding the image block using a result of the inter prediction processing, wherein

the generating of the motion vector candidate list includes:

determining whether the partition is a non-rectangular partition;

when the partition is determined not to be a non-rectangular partition, generating the motion vector candidate list using at least one motion vector among:

a plurality of motion vectors for a plurality of spatially neighboring partitions that spatially neighbor the partition,

a plurality of motion vectors for a plurality of temporally neighboring partitions that temporally neighbor the partition, or

a plurality of motion vectors for a plurality of sub-partitions included in the partition; and

when the partition is determined to be a non-rectangular partition, generating the motion vector candidate list using at least one motion vector among:

the plurality of motion vectors for the plurality of spatially neighboring partitions, or

the plurality of motion vectors for the plurality of temporally neighboring partitions, without using the plurality of motion vectors for the plurality of sub-partitions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2021
From: ABE, KIYOFUMI; NISHI, TAKAHIRO; TOMA, TADAMASA; KANOH, RYUICHI; LIM, CHONG SOON; LIAO, RU LING; SUN, HAI WEI; SHASHIDHAR, SUGHOSH PAVAN; TEO, HAN BOON; LI, JING YA
To: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA
Reel/Frame 056581/0483 →
Continuity (3)
Continuation PCTJP2019003064 · Jan 30, 2019
Provisional Application 62623837 · Jan 30, 2018
Related Publication 20200359048A1 · Nov 12, 2020