IP Library Granted Patent US 12,701,221
Granted Patent B2
US 12,701,221 · App. 19/040,589 · Granted Aug 4, 2026

Unequal weight planar motion vector derivation

Inventors: Krit Panusopone (San Diego, CA); Seungwook Hong (San Diego, CA); Yue Yu (San Diego, CA); Limin Wang (San Diego, CA)
Assignee: ARRIS Enterprises LLC
H04N19/105H04N19/137H04N19/176H04N19/625
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,701,221
App. No.
19/040,589
Filed
Jan 29, 2025
Granted
Aug 4, 2026
Kind
B2
Examiner
LI, TRACY Y
Art Unit
2487
USPC
375/240.02
Abstract

A system and method of planar motion vector derivation which, in some embodiments can employ an unequal weighted combination of adjacent motion vectors. In some embodiments, motion vector information associated with a bottom right pixel or block adjacent to a current coding unit can be derived from motion information associated with a top row or top neighboring row of a current coding unit and motion information associated with a left column or left neighboring column of a current coding unit. Weighted or non-weighted combinations of such values can be combined in a planar mode prediction model to derive associated motion information for bottom and/or right adjacent pixels or blocks.

Claims (27)

1 . A method of decoding a video included in a bitstream by a decoder, comprising:

(a) receiving said bitstream, where said bitstream includes at least one slice, indicating how a coding tree unit was partitioned into coding units according to a quad tree plus multi tree structure that allows a square parent node to be split with a quaternary tree partitioning that splits said square parent node in half in both horizontal and vertical directions to define leaf nodes that are square in shape each of which are the same size, wherein said quad tree plus multi tree structure allows one of said leaf nodes to be split based upon one selected from a group consisting of,

(i) a symmetric binary tree partitioning that splits one of said leaf nodes of said quaternary tree partitioning in half in either a horizontal direction or a vertical direction resulting in two blocks that are the same size as leaf nodes, and

(ii) an asymmetric tree partitioning that splits one of said leaf nodes of said quaternary tree partitioning in either a horizontal direction or a vertical direction resulting in three blocks two of which are different in size than a third one of said three blocks as leaf nodes;

(b) identifying final coding units to be decoded represented by leaf nodes of the quad tree plus multi tree structure where a plurality of said final coding units are rectangular coding units, where none of said plurality of rectangular coding units is a prediction unit, where none of said plurality of rectangular coding units is a transform unit, where each of said rectangular coding units are each a decision point whether to perform inter-picture or intra-picture prediction, where said bitstream does not support prediction units as a decision point whether to perform inter-picture or intra-picture prediction, where said bitstream does not support transform units as a decision point whether to perform inter-picture or intra-picture prediction;

(c) receiving both (1) a first motion vector associated with a rectangular coding unit of a B-slice of a current frame of said video, where one of said final coding units is said rectangular coding unit included in a bi-predictive slice of said current frame of said video, referencing a temporally previous reference slice of a temporally previous reference frame relative to said current frame of said rectangular coding unit, and a (2) a second motion vector associated with said rectangular coding unit of said B-slice of said current frame of said video referencing a temporally future reference slice of a temporally future frame relative to said current frame of said rectangular coding unit;

(d) wherein said rectangular coding unit of said B-slice of said current frame of said video has a top neighboring row, a left neighboring column, a bottom neighboring row and a right neighboring column, each of said top neighboring row, left neighboring column, bottom neighboring row, and right neighboring column in the said current frame;

(e) applying an optical flow between said temporally future reference slice and said temporally previous reference slice to perform modification based upon at least one of said second motion vector and said first motion vector;

(f) decoding said rectangular coding unit based upon said sample based motion modification as a result of said applying said optical flow between said temporally previous reference slice and said temporally future reference slice.

2 . A method of encoding a video included in a bitstream by an encoder, comprising:

(a) providing said bitstream, where said bitstream includes at least one slice, indicating how a coding tree unit was partitioned into coding units according to a quad tree plus multi tree structure that allows a square parent node to be split with a quaternary tree partitioning that splits said square parent node in half in both horizontal and vertical directions to define leaf nodes that are square in shape each of which are the same size, wherein said quad tree plus multi tree structure allows one of said leaf nodes to be split based upon one selected from a group consisting of,

(i) a symmetric binary tree partitioning that splits one of said leaf nodes of said quaternary tree partitioning in half in either a horizontal direction or a vertical direction resulting in two blocks that are the same size as leaf nodes, and

(ii) an asymmetric tree partitioning that splits one of said leaf nodes of said quaternary tree partitioning in either a horizontal direction or a vertical direction resulting in three blocks two of which are different in size than a third one of said three blocks as leaf nodes;

(b) wherein said bitstream is configured for identifying final coding units to be decoded represented by leaf nodes of the quad tree plus multi tree structure where a plurality of said final coding units are rectangular coding units, where none of said plurality of rectangular coding units is a prediction unit, where none of said plurality of rectangular coding units is a transform unit, where each of said rectangular coding units are each a decision point whether to perform inter-picture or intra-picture prediction, where said bitstream does not support prediction units as a decision point whether to perform inter-picture or intra-picture prediction, where said bitstream does not support transform units as a decision point whether to perform inter-picture or intra-picture prediction;

(c) providing both (1) a first motion vector associated with a rectangular coding unit of a B-slice of a current frame of said video, where one of said final coding units is said rectangular coding unit included in a bi-predictive slice of said current frame of said video, referencing a temporally previous reference slice of a temporally previous reference frame relative to said current frame of said rectangular coding unit, and a (2) a second motion vector associated with said rectangular coding unit of said B-slice of said current frame of said video referencing a temporally future reference slice of a temporally future frame relative to said current frame of said rectangular coding unit;

(d) wherein said rectangular coding unit of said B-slice of said current frame of said video has a top neighboring row, a left neighboring column, a bottom neighboring row and a right neighboring column, each of said top neighboring row, left neighboring column, bottom neighboring row, and right neighboring column in the said current frame;

(e) wherein said bitstream is configured for applying an optical flow between said temporally future reference slice and said temporally previous reference slice to perform modification based upon at least one of said second motion vector and said first motion vector;

(f) encoding said rectangular coding unit based upon said sample based motion modification as a result of said applying said optical flow between said temporally previous reference slice and said temporally future reference slice.

3 . A bitstream of compressed video data for decoding by a decoder, including a computer readable storage medium storing the compressed video data, the bitstream comprising:

(a) said bitstream, where said bitstream includes at least one slice, containing data indicating how a coding tree unit was partitioned into coding units according to a quad tree plus multi tree structure that allows a square parent node to be split with a quaternary tree partitioning that splits said square parent node in half in both horizontal and vertical directions to define leaf nodes that are square in shape each of which are the same size, wherein said quad tree plus multi tree structure allows one of said leaf nodes to be split based upon one selected from a group consisting of,

(i) a symmetric binary tree partitioning that splits one of said leaf nodes of said quaternary tree partitioning in half in either a horizontal direction or a vertical direction resulting in two blocks that are the same size as leaf nodes, and

(ii) an asymmetric tree partitioning that splits one of said leaf nodes of said quaternary tree partitioning in either a horizontal direction or a vertical direction resulting in three blocks two of which are different in size than a third one of said three blocks as leaf nodes;

(b) wherein said bitstream is configured for identifying final coding units to be decoded represented by leaf nodes of the quad tree plus multi tree structure where a plurality of said final coding units are rectangular coding units, where none of said plurality of rectangular coding units is a prediction unit, where none of said plurality of rectangular coding units is a transform unit, where each of said rectangular coding units are each a decision point whether to perform inter-picture or intra-picture prediction, where said bitstream does not support prediction units as a decision point whether to perform inter-picture or intra-picture prediction, where said bitstream does not support transform units as a decision point whether to perform inter-picture or intra-picture prediction;

(c) wherein said bitstream is configured for receiving both (1) a first motion vector associated with a rectangular coding unit of a B-slice of a current frame of said video, where one of said final coding units is said rectangular coding unit included in a bi-predictive slice of said current frame of said video, referencing a temporally previous reference slice of a temporally previous reference frame relative to said current frame of said rectangular coding unit, and a (2) a second motion vector associated with said rectangular coding unit of said B-slice of said current frame of said video referencing a temporally future reference slice of a temporally future frame relative to said current frame of said rectangular coding unit;

(d) wherein said rectangular coding unit of said B-slice of said current frame of said video has a top neighboring row, a left neighboring column, a bottom neighboring row and a right neighboring column, each of said top neighboring row, left neighboring column, bottom neighboring row, and right neighboring column in the said current frame;

(e) wherein said bitstream is configured for applying an optical flow between said temporally future reference slice and said temporally previous reference slice to perform modification based upon at least one of said second motion vector and said first motion vector;

(f) wherein said bitstream is configured for decoding said rectangular coding unit based upon said sample based motion modification as a result of said applying said optical flow between said temporally previous reference slice and said temporally future reference slice.

Assignments (1)
SECURITY INTEREST Recorded Apr 8, 2026
From: ARRIS ENTERPRISES LLC; RUCKUS IP HOLDINGS LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 075476/0814 →
Continuity (6)
Continuation 18115420 · Feb 28, 2023
Continuation 17725187 · Apr 20, 2022
Continuation 17097312 · Nov 13, 2020
Continuation 16384763 · Apr 15, 2019
Provisional Application 62657831 · Apr 15, 2018
Related Publication 20250175594A1 · May 29, 2025
References Cited (25)
US 12244789B2 · Panusopone · 2025 [cited by examiner]
US 20050013498A1 · Srinivasan et al. · 2005 [cited by applicant]
US 20120134415A1 · Lin et al. · 2012 [cited by applicant]
US 20180091816A1 · Chien et al. · 2018 [cited by applicant]
US 20180278950A1 · Chen et al. · 2018 [cited by applicant]
US 20180316929A1 · Li · 2018 [cited by examiner]
US 20180359483A1 · Chen et al. · 2018 [cited by applicant]
US 20190313091A1 · Xu et al. · 2019 [cited by applicant]
US 20210014526A1 · Chen · 2021 [cited by examiner]
US 20210021832A1 · Lee · 2021 [cited by applicant]
CN 102934444A · 2013 [cited by applicant]
CN 103039075A · 2015 [cited by applicant]
CN 107211157A · 2017 [cited by applicant]
EP 2391129A1 · 2011 [cited by applicant]
JP 2012165278A · 2012 [cited by applicant]
KR 2018003030A · 2018 [cited by applicant]
WO 2016200242A1 · 2016 [cited by applicant]
WO 2017069505A1 · 2017 [cited by applicant]
WO 2017157259A1 · 2017 [cited by applicant]
J. Chen, et al., “Algorithm Description of Joint Exploration Test Model 5 (JEM 5)”, 5th JVET Meeting, Geneva, JVET-E1001-V2, Jan. 2017, 44 pgs. [cited by applicant]
PCT International Search Report & Written Opinion, Re: Application No. PCT/US2019/027560, dated Jul. 18, 2019. [cited by applicant]
N. Zhang, et al., “Planar Motion Vector Prediction”, 10th JVET Meeting, San Diego, No. JVET-J0061-v3, Apr. 14, 2018. [cited by applicant]
K. Panusopone, et al., “Unequal Weight Planar Prediction and Constrained PDPC”, 5th JVET Meeting, Geneva, No. JVET-E0068, Jan. 5, 2017. [cited by applicant]
Office Action in Chinese Patent Application No. 201980025081.1, dated Jun. 6, 2023. [cited by applicant]
Office Action in Chinese Patent Application No. CN201980025081.1, dated Dec. 12, 2023. [cited by applicant]