IP Library Granted Patent US 11,490,113
Granted Patent B2
US 11,490,113 · App. 17/643,522 · Granted Nov 1, 2022

Processing method for motion compensation, encoder, and decoder

Inventors: Junyan Huo (Dongguan, CN); Yanzhuo Ma (Dongguan, CN); Shuai Wan (Dongguan, CN); Fuzheng Yang (Dongguan, CN); Ze Guo (Dongguan, CN)
Assignee: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
H04N19/517H04N19/137H04N19/176H04N19/182
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,490,113
App. No.
17/643,522
Granted
Nov 1, 2022
Kind
B2
Abstract

Processing methods for motion compensation, an encoder, and a decoder are provided. The method includes the following. Determine a search position constellation with a point pointed by an initial motion vector as a center point, where the search position constellation includes N directions, search for at least one search point by using at least one type of step lengths in the directions, where the at least one search point at least includes at least one search point in diagonal directions. Search for at least one search position from the search position constellation based on a preset range coverage rule, where the preset range coverage rule is to arrange search points in the directions for search. Obtain a new motion vector according to the at least one search position, and perform motion compensation based on the new motion vector to obtain a prediction value of a coding unit (CU).

Claims (80)

1. A processing method for motion compensation, applied to a decoder and comprising:

determining a search position constellation with a point pointed to by an initial motion vector as a center point,

wherein the search position constellation comprises N directions,

wherein N is an integer larger than or equal to two,

wherein N directions include a first type of direction and a second type of direction,

wherein the first type of direction includes a horizontal direction or a vertical direction,

wherein the horizontal direction includes left or right relative to the center point, or the vertical direction includes up or down relative to the center point,

wherein the second type of direction includes a diagonal direction,

wherein the diagonal direction includes upper left, lower left, upper right, or lower right relative to the center point,

wherein determining the search position constellation includes searching for one or more search points by using sets of step lengths in the N directions,

wherein searching for the one or more search points includes adopting a first set of step lengths for the first type of direction and adopting a second set of step lengths for the second type of direction,

wherein adjacent step lengths of the first set are separated from one another by a same first distance as other adjacent step lengths of the first set,

wherein adjacent step lengths of the second set are separated from one another by a same second distance as other adjacent step lengths of the second set, and

wherein the one or more search points comprise (a) at least one search point in the diagonal direction and (b) at least one search point in the horizontal direction or the vertical direction;

searching for at least one search position from the search position constellation based on a preset range coverage rule, wherein the preset range coverage rule is to arrange search points in the directions for search;

obtaining a new motion vector according to the at least one search position; and

performing motion compensation based on the new motion vector to obtain a prediction value of a coding unit (CU).

2. The method of claim 1 , wherein the second same distance is different from the first same distance.

3. The method of claim 1 , wherein the first and second sets of step lengths include at least one of the following step lengths: ⅛-pixel, ¼-pixel, ⅜ pixel, ½-pixel, ¾-pixel, 3/2-pixel, 2-pixel, or 4-pixel.

4. A method for motion compensation, applied to an encoder and comprising:

determining a search position constellation with a point pointed to by an initial motion vector as a center point,

wherein the search position constellation comprises N directions,

wherein N is an integer larger than or equal to two,

wherein N directions include a first type of direction and a second type of direction,

wherein the first type of direction includes a horizontal direction or a vertical direction,

wherein the horizontal direction includes left or right relative to the center point, or the vertical direction includes up or down relative to the center point,

wherein the second type of direction includes a diagonal direction,

wherein the diagonal direction includes upper left, lower left, upper right, or lower right relative to the center point,

wherein determining the search position constellation includes searching for one or more search points by using sets of step lengths in the N directions,

wherein searching for the one or more search points includes adopting a first set of step lengths for the first type of direction and adopting a second set of step lengths for the second type of direction,

wherein adjacent step lengths of the first set are separated from one another by a same first distance as other adjacent step lengths of the first set,

wherein adjacent step lengths of the second set are separated from one another by a same second distance as other adjacent step lengths of the second set, and

wherein the one or more search points comprise (a) at least one search point in the diagonal direction and (b) at least one search point in the horizontal direction or the vertical direction;

searching for at least one search position from the search position constellation based on a preset range coverage rule, wherein the preset range coverage rule is to arrange search points in the directions for search;

obtaining a new motion vector according to the at least one search position; and

performing motion compensation based on the new motion vector to obtain a prediction value of a coding unit (CU).

5. The method of claim 4 , wherein the second same distance is different from the first same distance.

6. The method of claim 4 , wherein the first and second sets of step lengths include at least one of the following step lengths: ⅛-pixel, ¼-pixel, ⅜-pixel, ½-pixel, ¾-pixel, 3/2-pixel, 2-pixel, or 4-pixel.

7. A decoder, comprising:

a processor; and

a memory storing a computer program which, when executed by the processor, causes the processor to:

determine a search position constellation with a point pointed to by an initial motion vector as a center point,

wherein the search position constellation comprises N directions,

wherein N is an integer larger than or equal to two,

wherein N directions include a first type of direction and a second type of direction,

wherein the first type of direction includes a horizontal direction or a vertical direction,

wherein the horizontal direction includes left or right relative to the center point, or the vertical direction includes up or down relative to the center point,

wherein the second type of direction includes a diagonal direction,

wherein the diagonal direction includes upper left, lower left, upper right, or lower right relative to the center point,

wherein determining the search position constellation includes searching for one or more search points by using sets of step lengths in the N directions,

wherein searching for the one or more search points includes adopting a first set of step lengths for the first type of direction and adopting a second set of step lengths for the second type of direction,

wherein adjacent step lengths of the first set are separated from one another by a same first distance as other adjacent step lengths of the first set,

wherein adjacent step lengths of the second set are separated from one another by a same second distance as other adjacent step lengths of the second set, and

wherein the one or more search points comprise (a) at least one search point in the diagonal direction and (b) at least one search point in the horizontal direction or the vertical direction;

search for at least one search position from the search position constellation based on a preset range coverage rule, wherein the preset range coverage rule is to arrange search points in the directions for search;

obtain a new motion vector according to the at least one search position; and

perform motion compensation based on the new motion vector to obtain a prediction value of a coding unit (CU).

8. The decoder of claim 7 , wherein the second same distance is different from the first same distance.

9. The decoder of claim 7 , wherein the first and second sets of step lengths include at least one of the following step lengths: ⅛-pixel, ¼-pixel, ⅜-pixel, ½-pixel, ¾-pixel, 3/2-pixel, 2-pixel, or 4-pixel.

10. An encoder, comprising:

a processor; and

a memory storing a computer program which, when executed by the processor, causes the processor to:

determine a search position constellation with a point pointed to by an initial motion vector as a center point,

wherein the search position constellation comprises N directions,

wherein N is an integer larger than or equal to two,

wherein N directions include a first type of direction and a second type of direction,

wherein the first type of direction includes a horizontal direction or a vertical direction,

wherein the horizontal direction includes left or right relative to the center point, or the vertical direction includes up or down relative to the center point,

wherein the second type of direction includes a diagonal direction,

wherein the diagonal direction includes upper left, lower left, upper right, or lower right relative to the center point,

wherein determining the search position constellation includes searching for one or more search points by using sets of step lengths in the N directions,

wherein searching for the one or more search points includes adopting a first set of step lengths for the first type of direction and adopting a second set of step lengths for the second type of direction,

wherein adjacent step lengths of the first set are separated from one another by a same first distance as other adjacent step lengths of the first set,

wherein adjacent step lengths of the second set are separated from one another by a same second distance as other adjacent step lengths of the second set, and

wherein the one or more search points comprise (a) at least one search point in the diagonal direction and (b) at least one search point in the horizontal direction or the vertical direction;

search for at least one search position from the search position constellation based on a preset range coverage rule, wherein the preset range coverage rule is to arrange search points in the directions for search;

obtain a new motion vector according to the at least one search position; and

perform motion compensation based on the new motion vector to obtain a prediction value of a coding unit (CU).

11. The encoder of claim 10 , wherein the second same distance is different from the first same distance.

12. The encoder of claim 10 , wherein the first and second sets of step lengths include at least one of the following step lengths: ⅛-pixel, ¼-pixel, ⅜-pixel, ½-pixel, ¾-pixel, 3/2-pixel, 2-pixel, or 4-pixel.

Assignments (2)
CONFIRMATORY LICENSE (SEE DOCUMENT FOR DETAILS) Recorded Jul 20, 2022
From: LAWRENCE LIVERMORE NATIONAL SECURITY, LLC
To: U.S. DEPARTMENT OF ENERGY
Reel/Frame 060777/0218 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: HUO, JUNYAN; MA, YANZHUO; WAN, SHUAI; YANG, FUZHENG; GUO, ZE
To: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP., LTD.
Reel/Frame 058347/0869 →
Continuity (2)
Continuation PCTCN2019092829 · Jun 25, 2019
Related Publication 20220103857A1 · Mar 31, 2022