IP Library Granted Patent US 12,450,703
Granted Patent B2
US 12,450,703 · App. 18/586,640 · Granted Oct 21, 2025

Denoising filter

Inventor: Szabolcs Cséfalvay (Hemel Hempstead, GB)
Assignee: Imagination Technologies Limited
G06T5/70G06T5/20G06T15/06
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,450,703
App. No.
18/586,640
Granted
Oct 21, 2025
Kind
B2
Abstract

A pixel filter has a filter module that performs a first recursive filter operation in a first direction through a sequence of pixels to form a first filtered pixel value for each pixel, and performs a second recursive filter operation in a second direction through the sequence of pixels to form a second filtered pixel value for each pixel, the first and second recursive filter operations forming a respective filtered pixel value for a given pixel in dependence on the pixel value at that pixel and the filtered pixel value preceding that pixel in their respective direction of operation. The filtered pixel value of the preceding pixel is scaled by a measure of similarity between data associated with that pixel and its preceding pixel. Filter logic combines the first and second filtered pixel values formed by the first and second recursive filter operations to generate a filter output for the pixel, for each pixel of the sequence.

Claims (44)

1. A method of recursively filtering a pixel of a sequence of pixels, comprising:

forming a filtered pixel value for the pixel of the sequence by:

scaling a filtered pixel value of a preceding pixel of the sequence by a measure of similarity, in which the measure of similarity is formed in dependence on one or more of:

a measure of a difference in scene depth into a 3D scene of respective surfaces which the pixel and the preceding pixel represent in a frame of that scene, and

a measure of an angle between normal vectors of respective surfaces which the pixel and the preceding pixel represent in a frame of a 3D scene; and

forming the filtered pixel value for the pixel in dependence on a pixel value of the pixel and the scaled filtered pixel value for the preceding pixel.

2. The method of claim 1 , in which the measure of similarity is indicative of whether or not the pixel and the preceding pixel belong to a common feature of the scene.

3. The method of claim 1 , in which the measure of similarity is formed in dependence on a product of the measures of:

i) the difference between the scene depths represented by the pixel and the preceding pixel, and

ii) the angle between normal vectors of the respective surfaces represented by the pixel and the preceding pixel.

4. The method of claim 1 , in which scene depth is represented as 1/d, where d is the depth in the 3D scene.

5. The method of claim 1 , in which the measure of similarity is formed in dependence on more than two scene depth values.

6. The method of claim 5 , in which a discontinuity in a rate of change of depth value is indicative of dissimilar surface orientations.

7. The method of claim 1 , in which the measure of similarity is formed in dependence on cos θ, where θ is the angle between the normal vectors.

8. The method of claim 1 , in which the measure of similarity is formed in further dependence on the similarity of one or more of luminance and colour of the pixel and the preceding pixel.

9. The method of claim 1 , in which the scaling of the filtered pixel value of the preceding pixel is such that its contribution to the filtered pixel value of the pixel is greater when the measure of similarity is indicative of high similarity than when the measure of similarity is indicative of low similarity.

10. The method of claim 1 , further comprising generating a filter output for the pixel in dependence on the filtered pixel value for the pixel.

11. The method of claim 1 , in which the sequence of pixels is a contiguous sequence of pixels.

12. The method of claim 1 , in which the measure of similarity is non-binary.

13. The method of claim 1 , in which the pixel and the preceding pixel are adjacent to one another in the sequence of pixels.

14. The method of claim 1 , in which the pixel and the preceding pixel are not adjacent to one another in the sequence of pixels.

15. The method of claim 1 , further comprising recursively filtering the sequence of pixels in a first direction, the preceding pixel of the sequence being selected with respect to the first direction.

16. The method of claim 15 , further comprising recursively filtering the sequence of pixels in a second direction, the method comprising:

forming a second filtered pixel value for the pixel of the sequence by:

selecting a preceding pixel of the sequence with respect to the second direction,

scaling a filtered pixel value of the preceding pixel of the sequence by a measure of similarity, in which the measure of similarity is formed in dependence on one or more of:

a measure of a difference in scene depth into a 3D scene of respective surfaces which the pixel and the preceding pixel represent in a frame of that scene, and

a measure of an angle between normal vectors of respective surfaces which the pixel and the preceding pixel represent in a frame of a 3D scene; and

forming a second filtered pixel value for the pixel in dependence on a pixel value of the pixel and on the scaled filtered pixel value for the preceding pixel.

17. The method of claim 16 , further comprising generating a filter output for the pixel in dependence on the filtered pixel value for the pixel and the second filtered pixel value for the pixel.

18. The method of claim 16 , in which the first direction and the second direction are opposite one another.

19. A pixel filter configured to recursively filter a pixel of a sequence of pixels, comprising:

a filter module arranged to:

form a filtered pixel value for the pixel of the sequence by:

scaling a filtered pixel value of a preceding pixel of the sequence by a measure of similarity, in which the measure of similarity is formed in dependence on one or more of:

a measure of a difference in scene depth into a 3D scene of respective surfaces which the pixel and the preceding pixel represent in a frame of that scene, and

a measure of an angle between normal vectors of respective surfaces which the pixel and the preceding pixel represent in a frame of a 3D scene; and

form a filtered pixel value for the pixel in dependence on a pixel value of the pixel and the scaled filtered pixel value for the preceding pixel.

20. A non-transitory computer readable storage medium having stored thereon computer readable instructions that, when executed at a processor, cause the processor to perform a method of recursively filtering a pixel of a sequence of pixels, the method comprising:

forming a filtered pixel value for the pixel of the sequence by:

scaling a filtered pixel value of a preceding pixel of the sequence by a measure of similarity, in which the measure of similarity is formed in dependence on one or more of:

a measure of a difference in scene depth into a 3D scene of respective surfaces which the pixel and the preceding pixel represent in a frame of that scene, and

a measure of an angle between normal vectors of respective surfaces which the pixel and the preceding pixel represent in a frame of a 3D scene; and

forming the filtered pixel value for the pixel in dependence on a pixel value of the pixel and the scaled filtered pixel value for the preceding pixel.

Assignments (1)
SECURITY INTEREST Recorded Jul 31, 2024
From: IMAGINATION TECHNOLOGIES LIMITED
To: FORTRESS INVESTMENT GROUP (UK) LTD
Reel/Frame 068221/0001 →
Continuity (2)
Continuation 17836967 · Jun 9, 2022
Related Publication 20240273686A1 · Aug 15, 2024
References Cited (62)
US 5296937A · Nakatani et al. · 1994 [cited by applicant]
US 5581667A · Bloomberg · 1996 [cited by applicant]
US 6555804B1 · Blasing · 2003 [cited by applicant]
US 6675387B1 · Boucher et al. · 2004 [cited by applicant]
US 6728416B1 · Gallagher · 2004 [cited by applicant]
US 7680354B2 · Mei et al. · 2010 [cited by applicant]
US 7697778B2 · Steinberg et al. · 2010 [cited by applicant]
US 7826730B2 · Wakamatsu et al. · 2010 [cited by applicant]
US 7907838B2 · Nasiri et al. · 2011 [cited by applicant]
US 8581964B2 · Sul et al. · 2013 [cited by applicant]
US 8823810B2 · Mistretta et al. · 2014 [cited by applicant]
US 8989516B2 · Albu et al. · 2015 [cited by applicant]
US 9330461B2 · Zheng et al. · 2016 [cited by applicant]
US 9509905B2 · Gordon et al. · 2016 [cited by applicant]
US 9832351B1 · Schoenblum · 2017 [cited by applicant]
US 10417749B2 · Onzon et al. · 2019 [cited by applicant]
US 10740954B2 · Liu · 2020 [cited by applicant]
US 10922790B2 · Brownlee et al. · 2021 [cited by applicant]
US 10991079B2 · Liu et al. · 2021 [cited by applicant]
US 11132769B2 · Keijzers · 2021 [cited by applicant]
US 11367244B2 · Story · 2022 [cited by applicant]
US 20060187308A1 · Lim et al. · 2006 [cited by applicant]
US 20070103570A1 · Inada et al. · 2007 [cited by applicant]
US 20070171310A1 · Arici et al. · 2007 [cited by applicant]
US 20080075206A1 · Ordentlich et al. · 2008 [cited by applicant]
US 20080085061A1 · Arici et al. · 2008 [cited by applicant]
US 20090279806A1 · Nezu · 2009 [cited by applicant]
US 20100067816A1 · Blackham · 2010 [cited by applicant]
US 20110102638A1 · Susanu et al. · 2011 [cited by applicant]
US 20120320070A1 · Arvo · 2012 [cited by applicant]
US 20130247067A1 · Schmit et al. · 2013 [cited by applicant]
US 20140341454A1 · Benameur · 2014 [cited by examiner]
US 20150110352A1 · Csefalvay et al. · 2015 [cited by applicant]
US 20150117793A1 · Deng et al. · 2015 [cited by applicant]
US 20160171331A1 · Csefalvay · 2016 [cited by applicant]
US 20160292837A1 · Lakemond · 2016 [cited by applicant]
US 20170084007A1 · Rakhshanfar et al. · 2017 [cited by applicant]
US 20170193281A1 · Csefalvay et al. · 2017 [cited by applicant]
US 20170353729A1 · Liaghati · 2017 [cited by applicant]
US 20180260937A1 · Gadi et al. · 2018 [cited by applicant]
US 20190304068A1 · Vogels et al. · 2019 [cited by applicant]
US 20210327031A1 · Xie et al. · 2021 [cited by applicant]
US 20230114852A1 · Csefalvay et al. · 2023 [cited by applicant]
US 20230386124A1 · Lee · 2023 [cited by examiner]
US 20250022222A1 · He · 2025 [cited by examiner]
CN 1299560A · 2001 [cited by applicant]
CN 1516954A · 2004 [cited by applicant]
CN 101079957A · 2007 [cited by applicant]
CN 101421935A · 2009 [cited by applicant]
CN 102760237A · 2012 [cited by applicant]
CN 103354617A · 2013 [cited by applicant]
CN 113628126A · 2021 [cited by examiner]
CN 113628126B · 2022 [cited by examiner]
EP 1394742A1 · 2004 [cited by applicant]
EP 1814078A1 · 2017 [cited by applicant]
WO 9517792A2 · 1995 [cited by applicant]
WO 2013044907A1 · 2013 [cited by applicant]
Delbracio et al., “Accelerating Monte Carlo Renderes by Ray Histogram Fusion,” Image Processing On Line, Mar. 2015. [cited by applicant]
Gunturk et al., “High-Resolution Image Reconstruction From Multiple Differently Exposed Images,” IEEE Signal Processing Letters, vol. 13, No. 4, Apr. 2006, pp. 197-200. [cited by applicant]
Veach et al., “Optimally Combining Sampling Techniques for Monte Carlo Rendering,” SIGGRAPH 95 Conference Proceedings, Sep. 15, 1995, pp. 419-428. [cited by applicant]
Thevenaz et al., “Bi-Exponential Edge-Preserving Smoother,” IEEE Transactions on Image Processing, vol. 21, No. 9, Sep. 1, 2012, pp. 3924-3936. [cited by applicant]
Xu et al., “Depth of Field Rendering via Adaptive Recursing Filtering,” Nov. 24, 2014, pp. 1-4. [cited by applicant]