IP Library Granted Patent US 12,425,583
Granted Patent B2
US 12,425,583 · App. 17/645,982 · Granted Sep 23, 2025

Systems and methods for predicting coding units in images

Inventors: Dong Jiang (Hangzhou, CN); Jucai Lin (Hangzhou, CN); Jun Yin (Hangzhou, CN); Feiyang Zeng (Hangzhou, CN); Cheng Fang (Hangzhou, CN)
Assignee: ZHEJIANG DAHUA TECHNOLOGY CO., LTD.
H04N19/117H04N19/105H04N19/159H04N19/176H04N19/182H04N19/82
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,425,583
App. No.
17/645,982
Granted
Sep 23, 2025
Kind
B2
Abstract

An image coding system is provided. The system may determine a coding unit in an image and divide the coding unit into a plurality of coding sub-units. For at least one coding sub-unit of the plurality of coding sub-units, the system may determine multiple reference lines of the at least one coding sub-unit. The system may determine a target prediction mode associated with one of the at least one coding sub-unit. The system may determine a predicted coding sub-unit corresponding to the one of the at least one coding sub-unit based on the target prediction mode and the multiple reference lines of the at least one coding sub-unit. The system may determine a predicted coding unit corresponding to the coding unit based at least in part on the predicted coding sub-unit.

Claims (109)

1. A system, comprising:

at least one non-transitory storage medium including a set of instructions; and

at least one processor in communication with the at least one non-transitory storage medium, wherein when executing the set of instructions, the at least one processor is directed to cause the system to:

extract a coding unit from an image;

divide the coding unit into a plurality of coding sub-units;

for at least one coding sub-unit of the plurality of coding sub-units, construct multiple reference lines of the at least one coding sub-unit based on multiple reference lines of the coding unit, for each of the multiple reference lines of each coding sub-unit, at least a portion of a plurality of reference pixels in the reference line of the coding sub-unit being obtained by selecting, based on a size of the coding sub-unit, a certain number of reference pixels distributed along a reference line of the coding unit corresponding to the reference line of the coding sub-unit;

determine whether a filtering condition is satisfied, the filtering condition being related to a target prediction mode and a size parameter of the coding unit, the size parameter of the coding unit being obtained according to formula below:

S =(log 2 W +log 2 H )>>1

where S refers to the size parameter of the coding unit, W refers to a width of the coding unit, H refers to a height of the coding unit, and >> refers to a right shift operator and indicates a value of (log 2 W+log 2 H) be shifted right 1, wherein the size parameter is equal to 2, 3, 4, 5, or 6;

in response to determining that the filtering condition is satisfied,

designate one of a [1 2 1] filter, a Gaussian filter, and a discrete cosine transform-based interpolation filter (DCT-IF) chroma filter as a filter of a type of a filtering operation based on the target prediction mode and the size parameter of the coding unit by:

when the size parameter of the coding unit is equal to 2,

 in response to a sequence number corresponding to the target prediction mode is within a range from 3 to 17, a range from 19 to 33, a range from 35 to 49, or a range from 51 to 65, designating the DCT-IF chroma filter as the filter of the type; and

 in response to the sequence number corresponding to the target prediction mode is within a range from −13 to 1 or a range from 67 to 81, designating the Gaussian filter as the filter of the type; and

perform, using the filter, the filtering operation on a plurality of reference pixels of each of one or more reference lines of the one of the at least one coding sub-unit to obtain filtered reference pixels; and

determine, based on the target prediction mode and the filtered reference pixels, a predicted coding sub-unit corresponding to the one of the at least one coding sub-unit; and

predict pixel values in the coding unit based at least in part on the predicted coding sub-unit to obtain a predicted coding unit corresponding to the coding unit.

2. The system of claim 1 , wherein to determine the filter of the type, the at least one processor is directed to cause the system to:

determine the filter of the type according to at least one of the target prediction mode, a width of the one of the at least one coding sub-unit, or a height of the one of the at least one coding sub-unit.

3. The system of claim 2 , wherein to determine the filter of the type according to the at least one of the target prediction mode, the width of the one of the at least one coding sub-unit, or the height of the one of the at least one coding sub-unit, the at least one processor is directed to cause the system to:

in response to the target prediction mode is a planar prediction mode or a diagonal prediction mode, determine the [1 2 1] filter as the filter of the type.

4. The system of claim 2 , wherein to determine the filter of the type according to the at least one of the target prediction mode, the width of the one of the at least one coding sub-unit, or the height of the one of the at least one coding sub-unit, the at least one processor is directed to cause the system to:

determine whether the width or height of the one of the at least one coding sub-unit is less than or equal to a threshold; and

designate, based at least in part on a determination result of whether the width or height of the one of the at least one coding sub-unit is less than or equal to the threshold, one of the Gaussian filter and the DCT-IF chroma filter as the filter of the type.

5. The system of claim 2 , wherein to determine the filter of the type according to the at least one of the target prediction mode, the width of the one of the at least one coding sub-unit, or the height of the one of the at least one coding sub-unit, the at least one processor is directed to cause the system to:

determine whether the width of the one of the at least one coding sub-unit is larger than the height of the one of the at least one coding sub-unit; and

designate, based at least in part on a determination result of whether the width of the one of the at least one coding sub-unit is larger than the height of the one of the at least one coding sub-unit, one of the Gaussian filter and the DCT-IF chroma filter as the filter of the type.

6. The system of claim 1 , wherein

the sequence number corresponding to the target prediction mode is within a range from −13 to 81, and,

to determine whether the filtering condition is satisfied, the at least one processor is directed to cause the system to:

when the size parameter of the coding unit is equal to 2 and the sequence number corresponding to the target prediction mode is not 2, 18, 34, 50, and 66, determine that the filtering condition is satisfied; or

when the size parameter of the coding unit is equal to 3, 4, 5, or 6 and the sequence number corresponding to the target prediction mode is not 18 and 50, determine that the filtering condition is satisfied.

7. The system of claim 4 , wherein the at least one processor is directed to cause the system to:

when the sequence number corresponding to the target prediction mode is within a range from 3 to 17, a range from 19 to 33, or a range from −13 to 1,

in response to the height of the coding sub-unit being less than or equal to the threshold, designate the DCT-IF chroma filter as the filter of the type; and

in response to the height of the coding sub-unit being larger than the threshold, designate the Gaussian filter as the filter of the type.

8. The system of claim 7 , wherein the at least one processor is directed to cause the system to:

when the sequence number corresponding to the target prediction mode is within a range from 35 to 49, a range from 51 to 65, or a range from 67 to 81,

in response to the width of the coding sub-unit being less than or equal to the threshold, designate the DCT-IF chroma filter as the filter of the type; and

in response to the height of the coding sub-unit being larger than the threshold, designate the Gaussian filter as the filter of the type.

9. The system of claim 5 , wherein the at least one processor is directed to cause the system to:

in response to the width of the coding sub-unit being equal to the height of the coding sub-unit, designate one of the Gaussian filter and the DCT-IF chroma filter as the filter of the type based on a determination result of whether the width or height of the coding sub-unit is less than or equal to a threshold.

10. The system of claim 5 , wherein the at least one processor is directed to cause the system to:

when the sequence number corresponding to the target prediction mode is within a range from 3 to 17, a range from 19 to 33, or a range from −13 to 1,

in response to the width of the coding sub-unit being larger than the height of the coding sub-unit, designate the DCT-IF chroma filter as the filter of the type; and

in response to the width of the coding sub-unit being less than the height of the coding sub-unit, designate the Gaussian filter as the filter of the type.

11. The system of claim 10 , wherein the at least one processor is directed to cause the system to:

when the sequence number corresponding to the target prediction mode is within a range from 35 to 49, a range from 51 to 65, or a range from 67 to 81,

in response to the width of the coding sub-unit being larger than the height of the coding sub-unit, designate the Gaussian filter as the filter of the type; and

in response to the width of the coding sub-unit being less than the height of the coding sub-unit, designate the DCT-IF chroma filter as the filter of the type.

12. The system of claim 1 , wherein to designate the one of the [1 2 1] filter, the Gaussian filter, and the DCT-IF chroma filter as the filter of the type of the filtering operation, the at least one processor is directed to cause the system to:

when the size parameter of the coding unit is equal to 3,

in response to the sequence number corresponding to the target prediction mode is 2, 34, or 66, designate the [1 2 1] filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is 3, 33, 35, or 65, designate the Gaussian filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is within a range from 3 to 17, a range from 19 to 33, a range from 35 to 49, and a range from 51 to 65 and not 3, 33, 35, or 65, designate the DCT-IF chroma filter as the filter of the type; and

in response to the sequence number corresponding to the target prediction mode is within a range from −13 to 1 or a range from 67 to 81, designate the Gaussian filter as the filter of the type.

13. The system of claim 1 , wherein to designate the one of the [1 2 1] filter, the Gaussian filter, and the DCT-IF chroma filter as the filter of the type of the filtering operation, the at least one processor is directed to cause the system to:

when the size parameter of the coding unit is equal to 4,

in response to the sequence number corresponding to the target prediction mode is 2, 34, or 66, designate the [1 2 1] filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is within 21-33, 35-47, or 53-65, designate the Gaussian filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is not within 21-33, 35-47, or 53-65, designate the DCT-IF chroma filter as the filter of the type; and

in response to the sequence number corresponding to the target prediction mode is within a range from −13 to 1 or a range from 67 to 81, designate the Gaussian filter as the filter of the type.

14. The system of claim 1 , wherein to designate the one of the [1 2 1] filter, the Gaussian filter, and the DCT-IF chroma filter as the filter of the type of the filtering operation, the at least one processor is directed to cause the system to:

when the size parameter of the coding unit is equal to 5 or 6,

in response to the sequence number corresponding to the target prediction mode is 2, 34, or 66, designate the [1 2 1] filter as the filter of the type; and

in response to the sequence number corresponding to the target prediction mode is a range from 3 to 17, a range from 19 to 33, a range from 35 to 49, a range from 51 to 65, a range from −13 to 1, or a range from 67 to 81, designate the Gaussian filter as the filter of the type.

15. A method implemented on a computing device including at least one processor, at least one non-transitory storage medium, and a communication platform connected to a network, the method comprising:

extracting a coding unit from an image;

dividing the coding unit into a plurality of coding sub-units;

for at least one coding sub-unit of the plurality of coding sub-units, constructing multiple reference lines of the at least one coding sub-unit based on multiple reference lines of the coding unit, for each of the multiple reference lines of each coding sub-unit, at least a portion of a plurality of reference pixels in the reference line of the coding sub-unit being obtained by selecting, based on a size of the coding sub-unit, a certain number of reference pixels distributed along a reference line of the coding unit corresponding to the reference line of the coding sub-unit;

determining whether a filtering condition is satisfied, the filtering condition being related to a target prediction mode and a size parameter of the coding unit, the size parameter of the coding unit being obtained according to formula below:

S =(log 2 W +log 2 H )>>1

where S refers to the size parameter of the coding unit, W refers to a width of the coding unit, H refers to a height of the coding unit, and >> refers to a right shift operator and indicates a value of (log 2 W+log 2 H) be shifted right 1, wherein the size parameter is equal to 2, 3, 4, 5, or 6;

in response to determining that the filtering condition is satisfied,

designating one of a [1 2 1] filter, a Gaussian filter, and a discrete cosine transform-based interpolation filter (DCT-IF) chroma filter as a filter of a type of a filtering operation based on the target prediction mode and the size parameter of the coding unit by:

when the size parameter of the coding unit is equal to 2,

in response to a sequence number corresponding to the target prediction mode is within a range from 3 to 17, a range from 19 to 33, a range from 35 to 49, or a range from 51 to 65, designating the DCT-IF chroma filter as the filter of the type; and

in response to the sequence number corresponding to the target prediction mode is within a range from −13 to 1 or a range from 67 to 81, designating the Gaussian filter as the filter of the type,

when the size parameter of the coding unit is equal to 3,

in response to the sequence number corresponding to the target prediction mode is 2, 34, or 66, designating the [1 2 1] filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is 3, 33, 35, or 65, designating the Gaussian filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is within a range from 3 to 17, a range from 19 to 33, a range from 35 to 49, and a range from 51 to 65 and not 3, 33, 35, or 65, designating the DCT-IF chroma filter as the filter of the type; and

in response to the sequence number corresponding to the target prediction mode is within a range from −13 to 1 or a range from 67 to 81, designating the Gaussian filter as the filter of the type,

when the size parameter of the coding unit is equal to 4,

in response to the sequence number corresponding to the target prediction mode is 2, 34, or 66, designating the [1 2 1] filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is within 21-33, 35-47, or 53-65, designating the Gaussian filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is not within 21-33, 35-47, or 53-65, designating the DCT-IF chroma filter as the filter of the type; and

in response to the sequence number corresponding to the target prediction mode is within a range from −13 to 1 or a range from 67 to 81, designating the Gaussian filter as the filter of the type, and

when the size parameter of the coding unit is equal to 5 or 6,

in response to the sequence number corresponding to the target prediction mode is 2, 34, or 66, designating the [1 2 1] filter as the filter of the type;

in response to the sequence number corresponding to the target prediction mode is a range from 3 to 17, a range from 19 to 33, a range from 35 to 49, a range from 51 to 65, a range from −13 to 1, or a range from 67 to 81, designating the Gaussian filter as the filter of the type; and

performing, using the filter, the filtering operation on a plurality of reference pixels of each of one or more reference lines of the one of the at least one coding sub-unit to obtain filtered reference pixels; and

determining, based on the target prediction mode and the filtered reference pixels, a predicted coding sub-unit corresponding to the one of the at least one coding sub-unit; and

predicting pixel values in the coding unit based at least in part on the predicted coding sub-unit to obtain a predicted coding unit corresponding to the coding unit.

16. A non-transitory computer readable medium, comprising executable instructions that, when executed by at least one processor, direct the at least one processor to perform a method, the method comprising:

extracting a coding unit from an image;

dividing the coding unit into a plurality of coding sub-units;

for at least one coding sub-unit of the plurality of coding sub-units, constructing multiple reference lines of the at least one coding sub-unit based on multiple reference lines of the coding unit, for each of the multiple reference lines of each coding sub-unit, at least a portion of a plurality of reference pixels in the reference line of the coding sub-unit being obtained by selecting, based on a size of the coding sub-unit, a certain number of reference pixels distributed along a reference line of the coding unit corresponding to the reference line of the coding sub-unit;

determining whether a filtering condition is satisfied, the filtering condition being related to a target prediction mode and a size parameter of the coding unit, the size parameter of the coding unit being obtained according to formula below:

S =(log 2 W +log 2 H )>>1

where S refers to the size parameter of the coding unit, W refers to a width of the coding unit, H refers to a height of the coding unit, and >> refers to a right shift operator and indicates a value of (log, W+log, H) be shifted right 1, wherein the size parameter is equal to 2, 3, 4, 5, or 6;

in response to determining that the filtering condition is satisfied,

designating one of a [1 2 1] filter, a Gaussian filter, and a discrete cosine transform-based interpolation filter (DCT-IF) chroma filter as a filter of a type of a filtering operation based on the target prediction mode and the size parameter of the coding unit by:

when the size parameter of the coding unit is equal to 2,

in response to a sequence number corresponding to the target prediction mode is within a range from 3 to 17, a range from 19 to 33, a range from 35 to 49, or a range from 51 to 65, designating the DCT-IF chroma filter as the filter of the type; and

in response to the sequence number corresponding to the target prediction mode is within a range from −13 to 1 or a range from 67 to 81, designating the Gaussian filter as the filter of the type; and

performing, using the filter, the filtering operation on a plurality of reference pixels of each of one or more reference lines of the one of the at least one coding sub-unit to obtain filtered reference pixels; and

determining, based on the target prediction mode and the filtered reference pixels, a predicted coding sub-unit corresponding to the one of the at least one coding sub-unit; and

predicting pixel values in the coding unit based at least in part on the predicted coding sub-unit to obtain a predicted coding unit corresponding to the coding unit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 15, 2022
From: JIANG, DONG; LIN, JUCAI; YIN, JUN; ZENG, FEIYANG; FANG, CHENG
To: ZHEJIANG DAHUA TECHNOLOGY CO., LTD.
Reel/Frame 060207/0120 →
Priority Claims (4)
CN 201910555585.6 · Jun 25, 2019 · national
CN 201910555597.9 · Jun 25, 2019 · national
CN 201910555628.0 · Jun 25, 2019 · national
CN 201910556707.3 · Jun 25, 2019 · national
Continuity (2)
Continuation PCTCN2020094832 · Jun 8, 2020
Related Publication 20220124326A1 · Apr 21, 2022
References Cited (56)
US 11445216B2 · Yoo · 2022 [cited by examiner]
US 11770548B2 · Jiang · 2023 [cited by examiner]
US 20110038415A1 · Min et al. · 2011 [cited by applicant]
US 20120307894A1 · Chien et al. · 2012 [cited by applicant]
US 20130101032A1 · Wittmann et al. · 2013 [cited by applicant]
US 20160198185A1 · Oh et al. · 2016 [cited by applicant]
US 20180091825A1 · Zhao et al. · 2018 [cited by applicant]
US 20180124397A1 · Yoo et al. · 2018 [cited by applicant]
US 20180332284A1 · Liu et al. · 2018 [cited by applicant]
US 20190116381A1 · Lee et al. · 2019 [cited by applicant]
US 20190124339A1 · Young · 2019 [cited by examiner]
US 20190222839A1 · Jang et al. · 2019 [cited by applicant]
US 20190238839A1 · Ikeda · 2019 [cited by applicant]
US 20190238842A1 · Ryu et al. · 2019 [cited by applicant]
US 20200366931A1 · Ko et al. · 2020 [cited by applicant]
US 20210037259A1 · Ko et al. · 2021 [cited by applicant]
US 20210297663A1 · Jiang · 2021 [cited by examiner]
US 20210392372A1 · Ko · 2021 [cited by examiner]
US 20220030226A1 · Lee · 2022 [cited by examiner]
US 20220094910A1 · Jiang · 2022 [cited by examiner]
US 20220167020A1 · Andersson · 2022 [cited by examiner]
US 20220201286A1 · Tsai · 2022 [cited by examiner]
US 20220210430A1 · Yoo · 2022 [cited by examiner]
US 20220337814A1 · Heo · 2022 [cited by examiner]
US 20240283910A1 · Ko · 2024 [cited by examiner]
CA 3115194A1 · 2020 [cited by examiner]
CN 102740077A · 2012 [cited by applicant]
CN 102984523A · 2013 [cited by applicant]
CN 106131547A · 2016 [cited by applicant]
CN 110290383A · 2019 [cited by applicant]
EP 3487177A1 · 2019 [cited by applicant]
EP 3496399A1 · 2019 [cited by applicant]
WO WO2018026219A1 · 2018 [cited by examiner]
WO 2018101685A1 · 2018 [cited by applicant]
WO 2018132380A1 · 2018 [cited by applicant]
WO 2018202558A1 · 2018 [cited by applicant]
WO 2018208349A1 · 2018 [cited by applicant]
WO WO2020111982A1 · 2020 [cited by examiner]
STIC provided Machine Translation in English of WO2018/026219 A1 relied upon in the Rejection (Year: 2018). [cited by examiner]
Partial Supplementary European Search Report in European Application No. 20833618.0 mailed on Jul. 20, 2022, 17 pages. [cited by applicant]
Chen, Jianle et al., Algorithm Description for Versatile Video Coding and Test Model 4 (VTM 4), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 2019, 62 pages. [cited by applicant]
Geert Van Der Auwera et al., CE3: Intra Reference Sample Interpolation Filter Selection Using MDIS Conditions (Test 3.1.2), Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 2018, 14 pag… [cited by applicant]
Alexey Filippov et al., CE3: A Combination of Tests 3.1.2 and 3.1.4 for Intra Reference Sample Interpolation Filter, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 2018, 5 pages. [cited by applicant]
ITU-T, Advanced Video Coding for Generic Audiovisual Services, Recommendation ITU-T H.264, 2013, 731 pages. [cited by applicant]
ITU-T, High Efficiency Video Coding, Recommendation ITU-T H.265, 2015, 635 pages. [cited by applicant]
Mathias Wien, Variable Block-Size Transforms for H.264/AVC, IEEE Transactions on Circuits & Systems for Video Technology, 13(7): 604-613, 2003. [cited by applicant]
Mahsa T. Pourazad et al., HEVC: The New Gold Standard for Video Compression: How Does HEVC Compare with H.264/AVC ?. , IEEE Consumer Electronics Magazine, 36-46, 2012. [cited by applicant]
Yong-Uk Yoon et al., CE3-related: MPM Modifications for Intra Mode Coding, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 2018, 5 pages. [cited by applicant]
Chang, Yao-Jen et al., Multiple Reference Line Coding for Most Probable Modes in Intra Prediction, 2019 Data Compression Conference (DCC), 559, 2019. [cited by applicant]
Zhu, Shi-Ping et al., Optimization of Intra-Prediction Mode Decision in New Generation Video Coding, Optics and Precision Engineering, 22(6): 1686-1695, 2014. [cited by applicant]
International Search Report in PCT/CN2020/094832 mailed on Sep. 16, 2020, 4 pages. [cited by applicant]
Written Opinion in PCT/CN2020/094832 mailed on Sep. 16, 2020, 5 pages. [cited by applicant]
First Office Action in Chinese Application No. 201910556707.3 mailed on Jan. 6, 2021, 17 pages. [cited by applicant]
First Office Action in Chinese Application No. 201910555597.9 mailed on Oct. 19, 2020, 17 pages. [cited by applicant]
First Office Action in Chinese Application No. 201910555585.6 mailed on Jan. 12, 2021, 12 pages. [cited by applicant]
The Extended European Search Report in European Application No. 20833618.0 mailed on Oct. 28, 2022, 19 pages. [cited by applicant]