IP Library Granted Patent US 12,501,031
Granted Patent B2
US 12,501,031 · App. 18/433,026 · Granted Dec 16, 2025

Template matching for JVET intra prediction

Inventors: Krit Panusopone (San Diego, CA); Limin Wang (San Diego, CA); Koohyar Minoo (San Diego, CA)
Assignee: ARRIS Enterprises LLC
H04N19/107H04N19/105H04N19/149H04N19/176H04N19/647H04N19/91H04N19/11H04N19/197H04N19/503H04N19/593
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,501,031
App. No.
18/433,026
Granted
Dec 16, 2025
Kind
B2
Abstract

A method of decoding JVET video, comprising defining a coding unit (CU) template within a decoded area of a video frame, the CU template being positioned above and/or to the left of a current decoding position for which data was intra predicted, defining a search window within the decoded area, the search window being adjacent to the CU template, generating a plurality of candidate prediction templates based on pixel values in the search window, each of the plurality of candidate prediction templates being generated using different intra prediction modes, calculating a matching cost between the CU template and each of the plurality of candidate prediction templates, selecting an intra prediction mode that generated the candidate prediction template that had the lowest matching cost relative to the CU template, and generating a prediction CU for the current decoding position based on the intra prediction mode.

Claims (20)

1 . A method for decoding video data comprising one or more processors, the method comprising:

(a) receiving a bitstream indicating how a coding tree unit was partitioned into a plurality of coding units according to a partitioning structure that allows nodes to be split according to a partitioning technique, where said partitioning structure allows a node partitioned from one of said coding units to be split in half in both horizontal and vertical directions, where said partitioning structure allows a node to be split into a plurality of rectangles, where said partitioning structure allows a node to be split in half, where said partitioning structure allows a node to be split in half in a horizontal direction, where said partitioning structure allows a node to be split in half in a vertical direction, where said partitioning structure allows a node to be split in half in a horizontal direction and then one of the resulting halves be split in a vertical direction, where said partitioning structure allows a node to be split in half in a vertical direction and then one of the resulting halves be split in a horizontal direction, where said partitioning structure allows a node to be split in half in a horizontal direction and then one of the resulting halves be split in a horizontal direction, where said partitioning structure allows a node to be split in half in a vertical direction and then one of the resulting halves be split in a vertical direction;

(b) selectively selecting only one of either,

(i) selecting a first main reference line, where said first main reference line is a first main reference line next adjacent to said coding unit above said coding unit, and selecting a first side reference line, where said first side reference line is a first side reference line next adjacent to said coding unit left of said coding unit; or

(ii) selecting a second main reference line, where said second main reference line is a second main reference line next adjacent to said first main reference line above said coding unit, and selecting a second side reference line, where said second reference line is a second side reference line next adjacent to said first side reference line left of said coding unit;

(c) wherein, (i) a combination of said first main reference line next adjacent to said coding unit above said coding unit and said second side reference line next adjacent to said first side reference line left of said coding unit is not permitted, and (ii) a combination of said second main reference line next adjacent to said first main reference line above said coding unit and said first side reference line next adjacent to said coding unit left of said coding unit is not permitted;

(d) wherein, (i) a combination of said first main reference line next adjacent to said coding unit above said coding unit and said second main reference line next adjacent to said first main reference line above of said coding unit is not permitted, and (ii) a combination of said first side reference line next adjacent to said coding unit left of said coding unit and said second side reference line next adjacent to said first side reference line left of said coding unit is not permitted;

(e) based upon at least one intra direction mode generating a prediction for said coding unit based upon at least a portion of said selected one (b)(i) and (b)(ii).

2 . The method of claim 1 , wherein said first main reference line is shaped with a row of pixels wider than said coding unit.

3 . The method of claim 1 , wherein said second main reference line is shaped with a row of pixels wider than said coding unit.

4 . The method of claim 1 , wherein said first side reference line is shaped with a column of pixels higher than said coding unit.

5 . The method of claim 1 , wherein said second side reference line is shaped with a column of pixels higher than said coding unit.

6 . A method for encoding video data using an encoder comprising one or more processors, the method comprising:

(a) providing a bitstream indicating how a coding tree unit was partitioned into a plurality of coding units according to a partitioning structure that allows nodes to be split according to a partitioning technique, where said partitioning structure allows a node partitioned from one of said coding units to be split in half in both horizonal and vertical directions, where said partitioning structure allows a node to be split into a plurality of rectangles, where said partitioning structure allows a node to be split in half, where said partitioning structure allows a node to be split in half in a horizontal direction, where said partitioning structure allows a node to be split in half in a vertical direction, where said partitioning structure allows a node to be split in half in a horizontal direction and then one of the resulting halves be split in a vertical direction, where said partitioning structure allows a node to be split in half in a vertical direction and then one of the resulting halves be split in a horizontal direction, where said partitioning structure allows a node to be split in half in a horizontal direction and then one of the resulting halves be split in a horizontal direction, where said partitioning structure allows a node to be split in half in a vertical direction and then one of the resulting halves be split in a vertical direction;

(b) wherein said bitstream is configured for selectively selecting only one of either,

(i) selecting a first main reference line, where said first main reference line is a first main reference line next adjacent to said coding unit above said coding unit, and selecting a first side reference line, where said first side reference line is a first side reference line next adjacent to said coding unit left of said coding unit; or

(ii) selecting a second main reference line, where said second main reference line is a second main reference line next adjacent to said first main reference line above said coding unit, and selecting a second side reference line, where said second reference line is a second side reference line next adjacent to said first side reference line left of said coding unit;

(c) wherein, (i) a combination of said first main reference line next adjacent to said coding unit above said coding unit and said second side reference line next adjacent to said first side reference line left of said coding unit is not permitted, and (ii) a combination of said second main reference line next adjacent to said first main reference line above said coding unit and said first side reference line next adjacent to said coding unit left of said coding unit is not permitted;

(d) wherein, (i) a combination of said first main reference line next adjacent to said coding unit above said coding unit and said second main reference line next adjacent to said first main reference line above of said coding unit is not permitted, and (ii) a combination of said first side reference line next adjacent to said coding unit left of said coding unit and said second side reference line next adjacent to said first side reference line left of said coding unit is not permitted;

(e) wherein said bitstream is configured for based upon at least one intra direction mode generating a prediction for said coding unit based upon at least a portion of said selected one (b)(i) and (b)(ii).

Assignments (2)
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 →
SECURITY INTEREST Recorded Dec 17, 2024
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE INC., OF NORTH CAROLINA; OUTDOOR WIRELESS NETWORKS LLC; RUCKUS IP HOLDINGS LLC
To: APOLLO ADMINISTRATIVE AGENCY LLC
Reel/Frame 069889/0114 →
Continuity (10)
Continuation 18134279 · Apr 13, 2023
Continuation 17694528 · Mar 14, 2022
Continuation 17199117 · Mar 11, 2021
Continuation 16726706 · Dec 24, 2019
Continuation 16451598 · Jun 25, 2019
Continuation 15919350 · Mar 13, 2018
Continuation 15597420 · May 17, 2017
Provisional Application 62341343 · May 25, 2016
Provisional Application 62337652 · May 17, 2016
Related Publication 20240223754A1 · Jul 4, 2024
References Cited (9)
US 20090232215A1 · Park et al. · 2009 [cited by applicant]
US 20110248873A1 · Karczewicz · 2011 [cited by examiner]
EP 2101504A2 · 2009 [cited by applicant]
WO 2010090749A1 · 2010 [cited by applicant]
WO 2011068332A2 · 2011 [cited by applicant]
K. Suehring, and x. II, “JVET common test conditions and software reference configurations,” JVET-B1010, Feb. 2016. [cited by applicant]
J. Li, B. Li, J. Xu, R. Xiong, and G. Sullivan, “Multiple line-based intra prediction,” JVET-C0071, May 2016. [cited by applicant]
PCT Written Opinion and Search Report, PCT/US17/033060, as mailed on Sep. 12, 2017. [cited by applicant]
J. Chen et al., “Algorithm Description of Joint Exploration Test Model 5 (JEM 5)”, JVET-E1001-V2. [cited by applicant]