IP Library Granted Patent US 12,149,681
Granted Patent B2
US 12,149,681 · App. 17/953,250 · Granted Nov 19, 2024

Inter prediction method and encoder

Inventors: Yanzhuo Ma (Dongguan, CN); Junyan Huo (Dongguan, CN); Shuai Wan (Dongguan, CN); Fuzheng Yang (Dongguan, CN); Qihong Ran (Dongguan, CN)
Assignee: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
H04N19/105H04N19/119H04N19/61
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 12,149,681
App. No.
17/953,250
Granted
Nov 19, 2024
Kind
B2
Abstract

The inter prediction method comprises: determining a prediction mode parameter of a current block; determining a GPM parameter of the current block in response to that the prediction mode parameter indicates that a GPM is used to determine inter prediction of the current block; determining a first prediction value of a first partition of the current block and a second prediction value of a second partition of the current block; determining a weight index of a sample in the current block based on the GPM parameter of the current block; determining a first weight value and a second weight value of the sample in the current block based on the weight index of the sample in the current block; performing weighted combination of the first prediction value and the second prediction value to obtain the inter prediction of the current block.

Claims (92)

1. An inter prediction method, performed by an encoder and comprising:

determining a prediction mode parameter of a current block;

determining a Geometrical partition Mode (GPM) parameter of the current block in response to that the prediction mode parameter indicates that a GPM is used to determine inter prediction of the current block, the GPM parameter of the current block comprising size information and angle index information of the current block;

determining a first prediction value of a first partition of the current block and a second prediction value of a second partition of the current block based on the GPM parameter of the current block;

determining a weight index of a sample in the current block based on the GPM parameter of the current block, weight indices of samples determined based on different GPM parameters being not all even numbers;

determining a first weight value and a second weight value of the sample in the current block based on the weight index of the sample in the current block; and

performing, based on a first prediction value and first weight value of a sample in the first partition and a second prediction value and second weight value of a sample in the second partition, weighted combination of the first prediction value and the second prediction value to obtain the inter prediction of the current block;

wherein determining the weight index of the sample in the current block based on the GPM parameter of the current block comprises:

determining position information of the sample in the current block based on the size information of the current block;

determining a first cosine value and a first sine value corresponding to the angle index information by constructing an angle mapping table or use of a preset determination strategy based on the angle index information of the current block, first cosine values and first sine values corresponding to different angle index information being not all even numbers; and

determining the weight index of the sample in the current block based on the first cosine value and the first sine value in combination with the position information of the sample in the current block respectively.

2. The method of claim 1 , wherein determining the first cosine value and the first sine value corresponding to the angle index information by use of the preset determination strategy based on the angle index information of the current block comprises:

determining cosine angle index information and sine angle index information of the current block based on the angle index information of the current block;

acquiring the first cosine value from a preset angle mapping table based on the cosine angle index information; and

acquiring the first sine value from the preset angle mapping table based on the sine angle index information,

wherein first cosine values and first sine values corresponding to different angle index information in the angle mapping table are not all even numbers.

3. The method of claim 2 , before acquiring the first cosine value from the preset angle mapping table based on the cosine angle index information, further comprising:

obtaining second cosine values corresponding to M angle index information based on the M angle index information, M being an even number;

performing a power reduction process on the second cosine values corresponding to the M angle index information to obtain first cosine values corresponding to the M angle index information; and

constructing the angle mapping table by use of the M angle index information and the corresponding first cosine values.

4. The method of claim 3 , wherein the first cosine values corresponding to the M angle index information are cyclically distributed based on a preset arrangement sequence; and

constructing the angle mapping table by use of the M angle index information and the corresponding first cosine values comprises:

acquiring first cosine values corresponding to the first M/2 angle index information based on the M angle index information and the corresponding first cosine values; and

constructing the angle mapping table by use of the first M/2 angle index information and the corresponding first cosine values.

5. The method of claim 3 , wherein the first cosine values corresponding to the M angle index information are cyclically distributed based on a preset arrangement sequence; and

constructing the angle mapping table by use of the M angle index information and the corresponding first cosine values comprises:

acquiring first cosine values corresponding to the first M/4+1 angle index information based on the M angle index information and the corresponding first cosine values; and

constructing the angle mapping table by use of the first M/4+1 angle index information and the corresponding first cosine values.

6. The method of claim 1 , wherein determining the first cosine value and the first sine value corresponding to the angle index information by use of the preset determination strategy based on the angle index information of the current block comprises:

calculating the first cosine value and the first sine value corresponding to the angle index information by use of a preset calculation strategy based on the angle index information of the current block, first cosine values and second cosine values calculated based on different angle index information being not all even numbers.

7. The method of claim 1 , wherein

determining the weight index of the sample in the current block based on the GPM parameter of the current block further comprises:

determining position information of a center sample of a Subblock (SB) in the current block based on the size information of the current block;

determining a first cosine value and a first sine value corresponding to the angle index information by use of the preset determination strategy based on the angle index information of the current block; and

determining a weight value of the center sample of the SB in the current block based on the first cosine value and the first sine value in combination with the position information of the center sample of the SB in the current block respectively.

8. The method of claim 7 , further comprising:

determining the weight index of the center sample of the SB in the current block as a motion index of the SB in the current block; and

determining a storage type of motion information of the SB in the current block based on motion index information of the SB in the current block, wherein the storage type comprises storage of unidirectional motion information or storage of bidirectional motion information.

9. The method of claim 1 , further comprising:

writing the angle index information of the current block into a bitstream.

10. An inter prediction method, performed by a decoder and comprising:

parsing a bitstream to determine a prediction mode parameter of a current block;

determining a Geometrical Partition Mode (GPM) parameter of the current block in response to that the prediction mode parameter indicates that a GPM is used to determine inter prediction of the current block, the GPM parameter of the current block comprising size information and angle index information of the current block;

determining a first prediction value of a first partition of the current block and a second prediction value of a second partition of the current block based on the GPM parameter of the current block;

determining a weight index of a sample in the current block based on the GPM parameter of the current block, weight indices of samples determined based on different GPM parameters being not all even numbers;

determining a first weight value and a second weight value of the sample in the current block based on the weight index of the sample in the current block; and

performing, based on a first prediction value and first weight value of a sample in the first partition and a second prediction value and second weight value of a sample in the second partition, weighted combination of the first prediction value and the second prediction value to obtain the inter prediction of the current block;

wherein determining the weight index of the sample in the current block based on the GPM parameter of the current block comprises:

determining position information of the sample in the current block based on the size information of the current block;

determining a first cosine value and a first sine value corresponding to the angle index information by constructing an angle mapping table or use of a preset determination strategy based on the angle index information of the current block, first cosine values and first sine values corresponding to different angle index information being not all even numbers; and

determining the weight index of the sample in the current block based on the first cosine value and the first sine value in combination with the position information of the sample in the current block respectively.

11. The method of claim 10 , wherein determining the first cosine value and the first sine value corresponding to the angle index information by use of the preset determination strategy based on the angle index information of the current block comprises:

determining cosine angle index information and sine angle index information of the current block based on the angle index information of the current block;

acquiring the first cosine value from a preset angle mapping table based on the cosine angle index information; and

acquiring the first sine value from the preset angle mapping table based on the sine angle index information,

wherein first cosine values and first sine values corresponding to different angle index information in the angle mapping table are not all even numbers.

12. The method of claim 11 , before acquiring the first cosine value from the preset angle mapping table based on the cosine angle index information, further comprising:

obtaining second cosine values corresponding to M angle index information based on the M angle index information, M being an even number;

performing a power reduction process on the second cosine values corresponding to the M angle index information to obtain first cosine values corresponding to the M angle index information; and

constructing the angle mapping table by use of the M angle index information and the corresponding first cosine values.

13. The method of claim 12 , wherein the first cosine values corresponding to the M angle index information are cyclically distributed based on a preset arrangement sequence; and

constructing the angle mapping table by use of the M angle index information and the corresponding first cosine values comprises:

acquiring first cosine values corresponding to the first M/2 angle index information based on the M angle index information and the corresponding first cosine values; and

constructing the angle mapping table by use of the first M/2 angle index information and the corresponding first cosine values.

14. The method of claim 12 , wherein the first cosine values corresponding to the M angle index information are cyclically distributed based on a preset arrangement sequence; and

constructing the angle mapping table by use of the M angle index information and the corresponding first cosine values comprises:

acquiring first cosine values corresponding to the first M/4+1 angle index information based on the M angle index information and the corresponding first cosine values; and

constructing the angle mapping table by use of the first M/4+1 angle index information and the corresponding first cosine values.

15. The method of claim 10 , wherein determining the first cosine value and the first sine value corresponding to the angle index information by use of the preset determination strategy based on the angle index information of the current block comprises:

calculating the first cosine value and the first sine value corresponding to the angle index information by use of a preset calculation strategy based on the angle index information of the current block, first cosine values and second cosine values calculated based on different angle index information being not all even numbers.

16. The method of claim 10 , wherein

determining the weight index of the sample in the current block based on the GPM parameter of the current block further comprises:

determining position information of a center sample of a Subblock (SB) in the current block based on the size information of the current block;

determining a first cosine value and a first sine value corresponding to the angle index information by use of the preset determination strategy based on the angle index information of the current block; and

determining a weight value of the center sample of the SB in the current block based on the first cosine value and the first sine value in combination with the position information of the center sample of the SB in the current block respectively.

17. The method of claim 16 , further comprising:

determining the weight index of the center sample of the SB in the current block as a motion index of the SB in the current block; and

determining a storage type of motion information of the SB in the current block based on motion index information of the SB in the current block, wherein the storage type comprises storage of unidirectional motion information or storage of bidirectional motion information.

18. An encoder, comprising:

a first memory and a first processor, wherein

the first memory stores a computer program capable of running in the first processor; and

the first processor executes the program to implement an inter prediction method, comprising:

determining a prediction mode parameter of a current block;

determining a Geometrical partition Mode (GPM) parameter of the current block in response to that the prediction mode parameter indicates that a GPM is used to determine inter prediction of the current block, the GPM parameter of the current block comprising size information and angle index information of the current block;

determining a first prediction value of a first partition of the current block and a second prediction value of a second partition of the current block based on the GPM parameter of the current block;

determining a weight index of a sample in the current block based on the GPM parameter of the current block, weight indices of samples determined based on different GPM parameters being not all even numbers;

determining a first weight value and a second weight value of the sample in the current block based on the weight index of the sample in the current block; and

performing, based on a first prediction value and first weight value of a sample in the first partition and a second prediction value and second weight value of a sample in the second partition, weighted combination of the first prediction value and the second prediction value to obtain the inter prediction of the current block;

wherein the first processor executes the program to:

determine position information of the sample in the current block based on the size information of the current block;

determine a first cosine value and a first sine value corresponding to the angle index information by constructing an angle mapping table or use of a preset determination strategy based on the angle index information of the current block, first cosine values and first sine values corresponding to different angle index information being not all even numbers; and

determine the weight index of the sample in the current block based on the first cosine value and the first sine value in combination with the position information of the sample in the current block respectively.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 12, 2022
From: MA, YANZHUO; HUO, JUNYAN; WAN, SHUAI; YANG, FUZHENG; RAN, QIHONG
To: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
Reel/Frame 061402/0531 →
Priority Claims (1)
CN 202010270775.6 · Apr 8, 2020 · national
Continuity (2)
Continuation PCTCN2021076727 · Feb 18, 2021
Related Publication 20230052940A1 · Feb 16, 2023
Cited By (1)
US 12,666,071