IP Library Granted Patent US 12,335,508
Granted Patent B2
US 12,335,508 · App. 17/441,034 · Granted Jun 17, 2025

Residual filtering in signal enhancement coding

Inventors: Guido Meardi (London, GB); Lorenzo Ciccarelli (London, GB)
Assignee: V-NOVA INTERNATIONAL LIMITED
H04N19/503H04N19/109H04N19/117H04N19/122H04N19/124H04N19/13H04N19/132H04N19/136H04N19/172H04N19/176H04N19/177H04N19/18H04N19/184H04N19/30H04N19/45H04N19/60H04N19/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,335,508
App. No.
17/441,034
Granted
Jun 17, 2025
Kind
B2
Abstract

According to aspects of the invention there is provided a method of encoding an input signal, the method comprising: producing a base encoded signal by feeding an encoder with a downsampled version of an input signal; producing a first residual signal by: obtaining a decoded version of the base encoded signal; and using a difference between the decoded version of the base encoded signal and the downsampled version of the input signal to produce a first residual signal; encoding the first residual signal to produce a first encoded residual signal; producing a second residual signal by: decoding the first encoded residual signal to produce a first decoded residual signal; filtering the first decoded residual signal to produce a filtered version of the first decoded residual signal; correcting the decoded version of the base encoded signal using the filtered version of the first decoded residual signal to create a corrected decoded version; upsampling the corrected decoded version; and using a difference between the corrected decoded signal and the input signal to produce the second residual signal; and encoding the second residual signal to produce a second encoded residual signal, wherein the base encoded signal, the first encoded residual signal and the second encoded residual signal comprise an encoding of the input signal. An encoder, decoder and computer readable media may also be provided.

Claims (106)

1. A method of encoding an input signal, the method comprising:

producing a base encoded signal by feeding an encoder with a downsampled version of an input signal;

producing a first residual signal by:

obtaining a decoded version of the base encoded signal; and

using a difference between the decoded version of the base encoded signal and the downsampled version of the input signal to produce a first residual signal;

encoding the first residual signal to produce a first encoded residual signal;

producing a second residual signal by:

decoding the first encoded residual signal to produce a first decoded residual signal;

filtering the first decoded residual signal to produce a filtered version of the first decoded residual signal, wherein the first decoded residual signal includes a first block of decoded residual signal data and a second block of decoded residual signal data, and wherein filtering the first decoded residual signal includes applying a same sized mask to the first block of decoded residual signal data and to the second block of decoded residual signal data;

correcting the decoded version of the base encoded signal using the filtered version of the first decoded residual signal to create a corrected decoded version;

upsampling the corrected decoded version; and

using a difference between the corrected decoded signal and the input signal to produce the second residual signal; and

encoding the second residual signal to produce a second encoded residual signal,

wherein the base encoded signal, the first encoded residual signal and the second encoded residual signal comprise an encoding of the input signal.

2. The method according to claim 1 , wherein the step of encoding the first residual signal comprises: quantizing the first residual signal to produce a first quantized residual signal and the step of decoding the first encoded residual signal comprises de-quantizing the first quantized residual signal.

3. The A method according to claim 1 , wherein the first residual signal comprises a plurality of N×N data blocks and wherein encoding the first residual signal comprises:

transforming the first residual signal on a block-by-block basis,

wherein decoding the first encoded residual signal comprises:

performing an inverse transform on N×N data blocks of a signal derived from the first encoded residual signal to produce the first decoded residual signal, and

wherein filtering the first decoded residual signal comprises:

applying an N×N mask to each data block of the first decoded residual signal.

4. The method of claim 3 , wherein the step of transforming comprises applying a directional decomposition transform to the first residual signal to create directional components that correspond to the first residual signal.

5. The method according to claim 3 , wherein N is 4 and a transform kernel for the transforming is a 4×4 kernel.

6. The method according to claim 3 , wherein the mask is a weighted mask, and each coefficient of the mask is a weight between 0 and 1.

7. The method according to claim 3 , wherein the mask comprises a set of coefficients surrounding edges of the mask.

8. The method according to claim 3 , wherein the mask comprises a first coefficient for sides of the mask and a second coefficient for corners of the mask.

9. The method according to claim 3 , wherein N is 4 and the mask is:

α

β

β

α

β

1

1

β

β

1

1

β

α

β

β

α

wherein α and β and variable coefficients and where 0≤α≤1 and 0≤β≤1.

10. The method according to claim 1 , wherein filtering the first decoded residual signal comprises applying an in-loop filter.

11. The method according to claim 1 , further comprising:

signalling coefficients of the mask in configuration metadata accompanying the first or second residual signal or both.

12. A method of decoding an input signal from a plurality of encoded signals, the method comprising:

receiving a base encoded signal and instructing a decoding of the base encoded signal to produce a base decoded signal;

receiving a first encoded residual signal and decoding the first encoded residual signal to produce a first decoded residual signal;

filtering the first decoded residual signal to produce a filtered version of the first decoded residual signal, wherein the first decoded residual signal includes a first block of decoded residual signal data and a second block of decoded residual signal data, and wherein filtering the first decoded residual signal includes applying a same sized mask to the first block of decoded residual signal data and to the second block of decoded residual signal data;

correcting the base decoded signal using the filtered version of the first decoded residual signal to produce a corrected version of the base decoded signal;

upsampling the corrected version of the base decoded signal to produce an upsampled signal;

receiving a second encoded residual signal and decoding the second encoded residual signal to produce a second decoded residual signal; and

combining the upsampled signal with the second decoded residual signal to produce a reconstructed version of the input signal.

13. The method according to claim 12 , wherein the step of decoding the first encoded residual signal comprises applying an inverse quantization operation to the first encoded residual signal.

14. The method according to claim 12 , wherein the step of decoding the first encoded residual signal comprises applying an inverse transformation, the inverse transformation being applied on a block-by-block basis, and

wherein filtering the first decoded residual signal comprises applying an N×N mask to each block of the inverse transformed signal, wherein N×N is a size of a transform kernel used in the inverse transformation, optionally wherein N is 4 and the transform kernel is a 4×4 kernel.

15. The method according to claim 14 , wherein the step of inverse transforming comprises applying an inverse directional decomposition transform to directional components of the first encoded residual signal to obtain residual values that correspond to the first residual signal.

16. The method according to claim 14 , wherein the mask comprises one or more of:

a set of coefficients surrounding edges of the mask; and

a first coefficient for sides of the mask and a second coefficient for corners of the mask.

17. The method according to claim 14 , wherein the mask is one or more of:

a weighted mask and each coefficient of the mask is a weight between 0 and 1; and

α

β

β

α

β

1

1

β

β

1

1

β

α

β

β

α

wherein α and β and variable coefficients and where 0≤α≤1 and 0≤β≤1.

18. The method according to claim 14 , further comprising one or more of:

retrieving coefficients of the mask from configuration metadata, in particular by retrieving the coefficients from a stream header; and

identifying a transform applied to the first residual signal and only applying the mask if the transform is a transform of a predetermined size.

19. An encoding apparatus configured to:

produce a base encoded signal by feeding an encoder with a downsampled version of an input signal;

produce a first residual signal by:

obtaining a decoded version of the base encoded signal; and

using a difference between the decoded version of the base encoded signal and the downsampled version of the input signal to produce a first residual signal;

encode the first residual signal to produce a first encoded residual signal;

produce a second residual signal by:

decoding the first encoded residual signal to produce a first decoded residual signal;

filtering the first decoded residual signal to produce a filtered version of the first decoded residual signal, wherein the first decoded residual signal includes a first block of decoded residual signal data and a second block of decoded residual signal data, and wherein filtering the first decoded residual signal includes applying a same sized mask to the first block of decoded residual signal data and to the second block of decoded residual signal data;

correcting the decoded version of the base encoded signal using the filtered version of the first decoded residual signal to create a corrected decoded version;

upsampling the corrected decoded version; and

using a difference between the corrected decoded signal and the input signal to produce the second residual signal; and

encode the second residual signal to produce a second encoded residual signal,

wherein the base encoded signal, the first encoded residual signal and the second encoded residual signal comprise an encoding of the input signal.

20. A decoding apparatus configured to:

receive a base encoded signal and instructing a decoding of the base encoded signal to produce a base decoded signal;

receive a first encoded residual signal and decoding the first encoded residual signal to produce a first decoded residual signal;

filter the first decoded residual signal to produce a filtered version of the first decoded residual signal, wherein the first decoded residual signal includes a first block of decoded residual signal data and a second block of decoded residual signal data, and wherein filtering the first decoded residual signal includes applying a same sized mask to the first block of decoded residual signal data and to the second block of decoded residual signal data;

correct the base decoded signal using the filtered version of the first decoded residual signal to produce a corrected version of the base decoded signal;

upsample the corrected version of the base decoded signal to produce an upsampled signal;

receive a second encoded residual signal and decoding the second encoded residual signal to produce a second decoded residual signal; and

combine the upsampled signal with the second decoded residual signal to produce a reconstructed version of the input signal.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2024
From: MEARDI, GUIDO
To: V-NOVA INTERNATIONAL LIMITED
Reel/Frame 066847/0808 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2022
From: CICCARELLI, LORENZO
To: V-NOVA INTERNATIONAL LIMITED
Reel/Frame 060874/0913 →
Priority Claims (4)
GB 1903844 · Mar 20, 2019 · national
GB 1904014 · Mar 23, 2019 · national
GB 1904492 · Mar 29, 2019 · national
GB 1905325 · Apr 15, 2019 · national
Continuity (1)
Related Publication 20220159250A1 · May 19, 2022
References Cited (41)
US 8964854B2 · Tu et al. · 2015 [cited by applicant]
US 9106920B2 · Rusert · 2015 [cited by examiner]
US 20030067637A1 · Hannuksela · 2003 [cited by applicant]
US 20040042549A1 · Huang et al. · 2004 [cited by applicant]
US 20060165304A1 · Lee et al. · 2006 [cited by applicant]
US 20110261888A1 · Cammas et al. · 2011 [cited by applicant]
US 20120183076A1 · Boyce · 2012 [cited by applicant]
US 20130044813A1 · Boon · 2013 [cited by applicant]
US 20130272406A1 · Yu · 2013 [cited by applicant]
US 20140219346A1 · Ugur · 2014 [cited by examiner]
US 20140226718A1 · Tu · 2014 [cited by examiner]
US 20170127085A1 · Sun et al. · 2017 [cited by applicant]
US 20180115778A1 · Rossato · 2018 [cited by examiner]
US 20190313109A1 · Handford · 2019 [cited by examiner]
EP 2090108 · 2013 [cited by applicant]
EP 3255890 · 2017 [cited by applicant]
GB 2553556A · 2018 [cited by applicant]
JP H11289542 · 1999 [cited by applicant]
JP 2014132759 · 2014 [cited by applicant]
WO 2006039382 · 2006 [cited by applicant]
WO 2010127692 · 2010 [cited by applicant]
WO 2013171173 · 2013 [cited by applicant]
WO 2018068744 · 2018 [cited by applicant]
H. Schwarz et al: “Overview of the Scalable Video Coding Extension of the H.264/AVC Standard”, IEEE Transactions On Circuits and Systems for Video Technology, vol. 17, No. 9, Sep. 1, 2007 (Sep. 1, 2007), pp. 1103-1120, … [cited by applicant]
International Search report and Written Opinion for PCT/GB2020/050492 dated May 25, 2020. [cited by applicant]
Search & Examination for GB2312636.0 dated Sep. 28, 2023. [cited by applicant]
Ferrara S et al: “[LCEVC]—CE2 Report”, 127. MPEG Meeting; Jul. 8, 2019-Jul. 12, 2019; Gothenburg; (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. m49254, Jul. 3, 2019 (Jul. 3, 2019), XP030207545, Retrieved … [cited by applicant]
Ferrara S et al: “[LCEVC]—Suggested improvements to LCEVC CD”, 129, MPEG Meeting; Jan. 13, 2020-Jan. 18, 2020; Brussels; (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. m52269, Jan. 12, 2020 (Jan. 12, 2020)… [cited by applicant]
“Working Draft of Low Complexity Enhancement Video Coding”, 126. MPEG Meeting; Mar. 25, 2019-Mar. 29, 2019; Geneva; (Motion Picture Expert Group or ISO/IEC JTC1/SC29/WG11), No. n18454, Apr. 18, 2019 (Apr. 18, 2019), XP0… [cited by applicant]
GB2312647.7 Search and Examination Report dated Sep. 7, 2023. [cited by applicant]
GB2312674.1 Search and Examination Report dated Oct. 10, 2023. [cited by applicant]
GB2312680.8 Search Report dated Oct. 5, 2023. [cited by applicant]
GB2312670.9 Search & Exam report dated Sep. 12, 2023. [cited by applicant]
GB2312675.8 Search & Exam report dated Sep. 12, 2023 [cited by applicant]
International Preliminary Report on Patentability received for PCT Patent Application No. PCT/GB2020/050492, mailed on Sep. 30, 2021, 10 pages. [cited by applicant]
Heiko Schwarz, et al., “Chapter 3: Block Structures and Parallelism Features in HEVC”, In: “High Efficiency Video Coding (HEVC)”, Aug. 23, 2014, Springer International Publishing, XP055614176, ISBN: 978-3-319-06894-7, p… [cited by applicant]
Office Action received for EA Patent Application No. 202192481, mailed on Dec. 20, 2022, 14 pages (2 pages of English Translation and 12 pages of Original Document). [cited by applicant]
Office Action received for EA Patent Application No. 202192481, mailed on Jul. 24, 2023, 18 pages (9 pages of English Translation and 9 pages of Original Document). [cited by applicant]
Office Action received for GB Patent Application No. 2114967.9, mailed on Aug. 23, 2022, 2 pages. [cited by applicant]
Office Action received for GB Patent Application No. 2114967.9, mailed on Mar. 21, 2023, 3 pages. [cited by applicant]
Office Action received for Indian Patent Application No. 202127047478, mailed on Feb. 20, 2023, 7 pages. [cited by applicant]