IP Library › Granted Patent US 12,328,434
Granted Patent B1
US 12,328,434 · App. 17/963,121 · Granted Jun 10, 2025

Intra prediction in video coding

Inventors: Kai Zhang (San Diego, CA); Jianle Chen (San Diego, CA); Xin Zhao (Santa Clara, CA); Marta Karczewicz (San Diego, CA)
Assignee: QUALCOMM INCORPORATED
H04N19/159H04N19/109H04N19/11H04N19/176H04N19/186H04N19/593H04N19/70
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,328,434
App. No.
17/963,121
Granted
Jun 10, 2025
Kind
B1
Abstract

An apparatus configured to encode or decode video data that includes a memory configured to store a plurality of reconstructed samples of video data and at least one processor, in communication with the memory, that is configured to intra predict a first prediction block based on a first angular intra prediction mode and a first one or more reconstructed samples among the plurality of reconstructed samples where the first angular intra prediction mode is among a plurality of angular intra prediction modes, intra predict a second prediction block based on a second angular intra prediction mode and a second one or more reconstructed samples among the plurality of reconstructed samples where the second angular prediction mode is associated with an angular prediction direction that is different from angular prediction directions associated with the plurality of angular prediction modes, and encode or decode a current block based on the first prediction block and the second prediction block.

Claims (62)

1. A method of encoding or decoding video data, comprising:

storing a plurality of reconstructed samples of video data in memory;

intra predicting a first prediction block based on a first angular intra prediction mode and a first one or more reconstructed samples among the plurality of reconstructed samples, the first angular intra prediction mode being among a plurality of angular intra prediction modes associated with a range of angular prediction directions from horizontal −45 degrees to vertical −45 degrees, inclusive, such that the range includes horizontal 0 degrees and vertical 0 degrees;

intra predicting a second prediction block based on a second angular intra prediction mode and a second one or more reconstructed samples among the plurality of reconstructed samples, the second angular prediction mode being associated with an angular prediction direction that is not within the range of angular prediction directions associated with the plurality of intra prediciton modes;

encoding or decoding a current block based on the first prediction block and the second prediction block.

2. The method of claim 1 further comprising:

applying a first weight to the first prediction block to generate a first weighted prediction block;

applying a second weight to the second prediction block to generate a second weighted prediction block;

combining the first weighted prediction block and the second weighted prediction block to form a final prediction block; and

encoding or decoding the current block based on the final prediction block.

3. The method of claim 2 further comprising:

determining the first weight based on the first angular intra prediction mode used to intra predict the first prediction block; and

determining the second weight based on the second angular intra prediction mode used to intra predict the second prediction block.

4. The method of claim 3 further comprising:

determining, based on the first angular intra prediction mode being classified within a first group of angular intra prediction modes, the first weight; and

determining, based on the second angular intra prediction mode being classified within a second group of angular intra prediction modes, the second weight, wherein the first weight and the second weight are different.

5. An apparatus configured to encode or decode video data, the apparatus comprising:

memory configured to store a plurality of reconstructed samples of video data; and

at least one processor in communication with the memory, the at least one processor being configured to:

intra predict a first prediction block based on a first angular intra prediction mode and a first one or more reconstructed samples among the plurality of reconstructed samples, the first angular intra prediction mode being among a plurality of angular intra prediction modes associated with a range of angular prediction directions from horizontal −45 degrees to vertical −45 degrees, inclusive, such that the range includes horizontal 0 degrees and vertical 0 degrees;

intra predict a second prediction block based on a second angular intra prediction mode and a second one or more reconstructed samples among the plurality of reconstructed samples, the second angular prediction mode being associated with an angular prediction direction that is not within the range of angular prediction directions associated with the plurality of intra prediction modes;

encode or decode a current block based on the first prediction block and the second prediction block.

6. The apparatus of claim 5 wherein the at least one processor is further configured to:

apply a first weight to the first prediction block to generate a first weighted prediction block;

apply a second weight to the second prediction block to generate a second weighted prediction block;

combine the first weighted prediction block and the second weighted prediction block to form a final prediction block; and

encode or decode the current block based on the final prediction block.

7. The apparatus of claim 6 wherein the at least one processor is further configured to:

determine the first weight based on the first angular intra prediction mode used to intra predict the first prediction block; and

determine the second weight based on the second angular intra prediction mode used to intra predict the second prediction block.

8. The apparatus of claim 7 wherein the at least one processor is further configured to:

determine, based on the first angular intra prediction mode being classified within a first group of angular intra prediction modes, the first weight; and

determine, based on the second angular intra prediction mode being classified within a second group of angular intra prediction modes, the second weight, where the first weight and the second weight are different.

9. A non-transitory, computer-readable storage medium storing instructions that, when executed, causes one or more processors configured to encode or decode video data to:

intra predict a first prediction block based on a first angular intra prediction mode and a first one or more reconstructed samples among the plurality of reconstructed samples, the first angular intra prediction mode being among a plurality of angular intra prediction modes associated with a range of angular prediction directions from horizontal −45 degrees to vertical −45 degrees, inclusive, such that the range includes horizontal 0 degrees and vertical 0 degrees;

intra predict a second prediction block based on a second angular intra prediction mode and a second one or more reconstructed samples among the plurality of reconstructed samples, the second angular prediction mode being associated with an angular prediction direction that is not within the range of angular prediction directions associated with the plurality of intra prediction modes;

encode or decode a current block based on the first prediction block and the second prediction block.

10. The non-transitory, computer-readable storage medium of claim 9 , further storing instructions that, when executed, cause the one or more processors configured to encode or decode video data to:

apply a first weight to the first prediction block to generate a first weighted prediction block;

apply a second weight to the second prediction block to generate a second weighted prediction block;

combine the first weighted prediction block and the second weighted prediction block to form a final prediction block; and

encode or decode the current block based on the final prediction block.

11. The non-transitory, computer-readable storage medium of claim 10 , further storing instructions that, when executed, cause the one or more processors configured to encode or decode video data to:

determine the first weight based on the first angular intra prediction mode used to intra predict the first prediction block; and

determine the second weight based on the second angular intra prediction mode used to intra predict the second prediction block.

12. The non-transitory, computer-readable storage medium of claim 11 , further storing instructions that, when executed, cause the one or more processors configured to encode or decode video data to:

determine, based on the first angular intra prediction mode being classified within a first group of angular intra prediction modes, the first weight; and

determine, based on the second angular intra prediction mode being classified within a second group of angular intra prediction modes, the second weight, where the first weight and the second weight are different.

13. A method of encoding or decoding video data, comprising:

storing a plurality of reconstructed samples of video data in memory;

intra predicting a first prediction block based on a first intra prediction mode and a first one or more reconstructed samples among the plurality of reconstructed samples, the first intra prediction mode being among a plurality of intra prediction modes associated with a DC mode, a planar mode, and a range of angular prediction directions from horizontal −45 degrees to vertical −45 degrees, inclusive, such that the range includes horizontal 0 degrees and vertical 0 degrees;

intra predicting a second prediction block based on a second intra prediction mode and a second one or more reconstructed samples among the plurality of reconstructed samples, the second prediction mode being associated with an angular prediction direction that is not within the range of angular prediction directions associated with the plurality of intra prediction modes;

encoding or decoding a current block based on the first prediction block and the second prediction block.

14. The method of 13 , wherein intra predicting the second prediction block based on the second intra prediction mode and the second one or more reconstructed samples among the plurality of reconstructed samples is based on the first intra prediction mode being among the plurality of intra prediction modes associated with the DC mode, the planar mode, and the range of angular prediction directions from horizontal −45 degrees to vertical −45 degrees.

15. An apparatus configured to encode or decode video data, the apparatus comprising:

memory configured to store a plurality of reconstructed samples of video data; and

at least one processor in communication with the memory, the at least one processor being configured to:

intra predict a first prediction block based on a first intra prediction mode and a first one or more reconstructed samples among the plurality of reconstructed samples, the first intra prediction mode being among a plurality of intra prediction modes associated with a DC mode, a planar mode, and a range of angular prediction directions from horizontal −45 degrees to vertical −45 degrees, inclusive, such that the range includes horizontal 0 degrees and vertical 0 degrees;

intra predict a second prediction block based on a second intra prediction mode and a second one or more reconstructed samples among the plurality of reconstructed samples, the second prediction mode being associated with an angular prediction direction that is not within the range of angular prediction directions associated with the plurality of intra prediction modes;

encode or decode a current block based on the first prediction block and the second prediction block.

16. The apparatus of claim 15 , wherein the at least one processor is further configured to:

based on the first intra prediction mode being among the plurality of intra prediction modes associated with the DC mode, the planar mode, and the range of angular prediction directions from horizontal −45 degrees to vertical −45 degrees, intra predict the second prediction block based on the second intra prediction mode and the second one or more reconstructed samples among the plurality of reconstructed samples.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2023
From: ZHANG, KAI; CHEN, JIANLE; ZHAO, XIN; KARCZEWICZ, MARTA
To: QUALCOMM INCORPORATED
Reel/Frame 062473/0194 →
Continuity (5)
Continuation 17006518 · Aug 28, 2020
Continuation 16020179 · Jun 27, 2018
Provisional Application 62527928 · Jun 30, 2017
Provisional Application 62527903 · Jun 30, 2017
Provisional Application 62527795 · Jun 30, 2017
References Cited (40)
US 9083974B2 · Jeon et al. · 2015 [cited by applicant]
US 10764587B2 · Zhang et al. · 2020 [cited by applicant]
US 10944963B2 · Yu et al. · 2021 [cited by applicant]
US 11032550B2 · Ye et al. · 2021 [cited by applicant]
US 20120314766A1 · Chien et al. · 2012 [cited by applicant]
US 20130114696A1 · Liu · 2013 [cited by applicant]
US 20150023405A1 · Joshi et al. · 2015 [cited by applicant]
US 20160373741A1 · Zhao et al. · 2016 [cited by applicant]
US 20180324418A1 · Koo et al. · 2018 [cited by applicant]
US 20190141318A1 · Li · 2019 [cited by examiner]
US 20190174128A1 · Jang et al. · 2019 [cited by applicant]
US 20190208199A1 · Cho et al. · 2019 [cited by applicant]
US 20190222839A1 · Jang et al. · 2019 [cited by applicant]
US 20190238839A1 · Ikeda · 2019 [cited by applicant]
US 20190356909A1 · Lainema · 2019 [cited by applicant]
US 20200021804A1 · Jun et al. · 2020 [cited by applicant]
US 20200051288A1 · Lim et al. · 2020 [cited by applicant]
US 20200396463A1 · Zhang et al. · 2020 [cited by applicant]
CN 105120264A · 2015 [cited by applicant]
CO 6731124A2 · 2013 [cited by applicant]
EP 2704435A2 · 2014 [cited by applicant]
EP 3499884A1 · 2019 [cited by applicant]
EP 3566450A1 · 2019 [cited by applicant]
JP 2012028858A · 2012 [cited by applicant]
JP 2020503785A · 2020 [cited by applicant]
WO 2014050971A1 · 2014 [cited by applicant]
WO WO2016048183A1 · 2016 [cited by applicant]
WO 2016091727A1 · 2016 [cited by applicant]
WO 2017065532A1 · 2017 [cited by applicant]
WO 2017190288A1 · 2017 [cited by applicant]
WO 2018127624A1 · 2018 [cited by applicant]
Chen J., et al., “Algorithm Description of Joint Exploration Test Model 2,” Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 2nd Meeting: San Diego, USA, Feb. 20-26, 2016, JVET-B100… [cited by applicant]
Chen J., et al., “Algorithm Description of Joint Exploration Test Model 4”, 4. JVET Meeting, Oct. 15, 2016-Oct. 21, 2016, Chengdu, (The Joint Video Exploration Team of ISO/IEC JTC1/SC29/WG 11 and ITU-T SG.16), URL: http… [cited by applicant]
Huang H., “EE2.1: Quadtree Plus Binary Tree Structure Integration with JEM Tools,” Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 3rd Meeting: Geneva, CH, May 26-Jun. 1, 2016, JVE… [cited by applicant]
International Search Report and Written Opinion—PCT/US2018/039975—ISA/EPO—Nov. 2, 2018. [cited by applicant]
Seregin V., et al., “Block Shape Dependent Intra Mode Coding”, 4th JVET Meeting, Chengdu, (The Joint Video Exploration Team of ISO/IEC JTC1/SC29/WG11 and ITU-T SG.16 WP 3), JVET-D0114r1, URL: http://phenix.int-evry.fr/j… [cited by applicant]
Yu Y., “On MPM Determination and Planar Mode Signaling”, JCTVC-H0516-r3, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 8th Meeting: San Jose, CA, USA, Feb. 1-10, 2012, p… [cited by applicant]
European Search Report—EP23174732—Search Authority—Munich—Nov. 3, 2023. [cited by applicant]
Choi J-A., et al., “H.264/AVC Based near Lossless Intra Codec Using Line-based Prediction and Modified CABAC”, Multimedia and Expo (ICME), International Conference on IEEE, Jul. 11, 2011, 5 Pages. [cited by applicant]
Lai C., et al., “New Intra Prediction Using the Correlation Between Pixels and Lines”, 1. JCT-VC Meeting, Apr. 15, 2010-Apr. 23, 2010, Dresden, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO… [cited by applicant]