IP Library Granted Patent US 10,417,749
Granted Patent B2
US 10,417,749 · App. 16/261,821 · Granted Sep 17, 2019

Method and system for edge denoising of a digital image

Inventors: Emmanuel Luc Julien Onzon (Montreal, CA); Nicolas Joseph Paul Robidoux (Montreal, CA)
Assignee: ALGOLUX INC.
G06T5/002G06T5/10
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 10,417,749
App. No.
16/261,821
Granted
Sep 17, 2019
Kind
B2
Abstract

Method and system for denoising an edge in a raw digital image are described. First, a direction of a normal to the edge near a pixel p is determined, and neighboring pixels are projected to the normal to the edge, forming projected pixels. Then weighted intensities of the neighboring pixels are determined, including set of weights. One dimensional Gaussian filter centered on the pixel p and acting on the projected pixels is applied, and intensities of the neighboring pixels are adjusted according to the set of weights, resulting in a denoised value z of the pixel p using the weighted intensities, thereby denoising the edge of the raw image expediently.

Claims (1041)

1. A method of denoising an edge in a raw image, the edge comprising a pixel p, the method comprising:

employing a hardware processor for:

(a) determining a direction of a normal to the edge near the pixel p;

(b) determining neighboring pixels in a neighborhood of the pixel p;

(c) projecting the neighboring pixels to the normal to the edge, forming projected pixels;

(d) determining weighted intensities of the neighboring pixels, comprising:

(i) determining a set of weights, comprising applying a one dimensional, 1D, Gaussian filter centered on the pixel p and acting on the projected pixels;

and

(ii) adjusting intensities of the neighboring pixels according to the set of weights; and

(e) determining a denoised value z of the pixel p using the weighted intensities;

thereby denoising the edge of the raw image expediently.

2. The method of claim 1 , further comprising:

replacing the pixel p with respective first shifted pixel p + at a first distance from the pixel p along the normal to the edge, on a brighter side of the edge, and a second shifted pixel p − at a second distance from the pixel p along the normal to the edge, on a darker side of the edge;

applying the steps (b) to (e) to the respective pixels p + and p − to determine a first shifted denoised value z + and a second shifted denoised value z − ;

determining a second order derivative Δ along the normal to the edge, based on the first and second shifted denoised values z − and z + and a distance between the pixels p + and p − ;

determining a sharpened edge denoised value z sharp of the pixel p, comprising adjusting the denoised value z proportionately to the second order derivative Δ.

3. The method of claim 2 , wherein the first distance from the pixel p and the second distance from the pixel p are substantially equal.

4. The method of claim 2 , wherein a sharpened edge denoised value z sharp is determined as z sharp =z+s Δ, wherein “s” is a predefined strength of sharpening.

5. The method of claim 4 , wherein “s” is about 0.6.

6. The method of claim 1 , wherein the determining the direction of the normal to the edge further comprises:

applying a set of linear filters K x , K y , K z , and K w to the raw image, the filters being balanced, resulting in a set of filtered images d x , d y , d z , d w , respectively;

generating a set of estimates of the normal to the edge, based on the set of respective filtered images d x , d y , d z , d w ; and

generating the normal to the edge using the set of filtered images.

7. The method of claim 6 , wherein the applying further comprises choosing a size of each linear filter from about 3 to about 9.

8. The method of claim 2 , wherein the applying comprises applying the set of linear filters K x , K y , K z , K w as follows:

K

x

=

[

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

0

-

1

0

0

0

1

0

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

]

K

y

=

[

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

-

1

-

1

-

1

-

1

0

0

0

0

0

0

0

0

0

1

1

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

1

]

K

z

=

[

0

1

1

1

1

1

1

1

1

-

1

0

1

1

1

1

1

1

1

-

1

-

1

0

1

1

1

1

1

1

-

1

-

1

-

1

0

1

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

-

1

0

1

1

1

-

1

-

1

-

1

-

1

-

1

-

1

0

1

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

]

K

w

=

[

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

1

-

1

-

1

-

1

-

1

-

1

-

1

0

1

1

-

1

-

1

-

1

-

1

-

1

0

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

0

1

1

1

1

1

-

1

-

1

0

1

1

1

1

1

1

-

1

0

1

1

1

1

1

1

1

0

1

1

1

1

1

1

1

1

]

.

9. The method of claim 1 , further comprising selecting the neighborhood of the pixel p having a rectangular shape.

10. The method of claim 1 , further comprising choosing a standard deviation for the 1D Gaussian filter from about 1.5 to about 2.

11. A system for denoising an edge in a raw image, the edge comprising a pixel p, the system comprising:

a memory device having computer readable instructions stored thereon for execution by a processor, causing the processor to:

(a) determine a direction of a normal to the edge;

(b) determine neighboring pixels in a neighborhood of the pixel p;

(c) project the neighboring pixels to the normal to the edge, forming projected pixels;

(d) determine weighted intensities of the neighboring pixels, comprising:

(i) determining a set of weights, comprising applying a one dimensional, 1D, Gaussian filter centered on the pixel p and acting on the projected pixels; and

(ii) adjusting intensities of the neighboring pixels according to the set of weights; and

(e) determine a denoised value z of the pixel p using the weighted intensities;

thereby denoising the edge of the raw image expediently.

12. The system of claim 11 , wherein the computer readable instructions further cause the processor to:

replace the pixel p with respective first shifted pixel p + at a first distance from the pixel p along the normal to the edge, on a brighter side of the edge, and a second shifted pixel p− at a second distance from the pixel p along the normal to the edge, on a darker side of the edge;

apply the steps (b) to (e) to the respective pixels p + and p − to determine a first shifted denoised value z + and a second shifted denoised value z − ;

determine a second order derivative Δ along the normal to the edge, based on the first and second shifted denoised values z − and z + and a distance between the pixels p + and p − ;

determine a sharpened edge denoised value z sharp of the pixel p, comprising adjusting the denoised value z proportionately to the second order derivative Δ.

13. The system of claim 12 , wherein the first distance from the pixel p and the second distance from the pixel p are substantially equal.

14. The system of claim 12 , wherein the computer readable instructions further cause the processor to determine a sharpened edge denoised value as: z sharp =z+s Δ, wherein “s” is a predefined strength of sharpening.

15. The system of claim 14 , wherein “s” is about 0.6.

16. The system of claim 11 , wherein the computer readable instructions for determining the direction of the normal to the edge, further cause the processor to:

apply a set of linear filters K x , K y , K z , and K w to the raw image, the filters being balanced, resulting in a set of filtered images d x , d y , d z , d w , respectively;

generate a set of estimates of the normal to the edge, based on the set of respective filtered images d x , d y , d z , d w ; and

generate the normal to the edge using the set of filtered images.

17. The system of claim 16 , wherein a size of each linear filters is from about 3 to about 9.

18. The system of claim 12 , wherein the set of linear filters K x , K y , K z , K w are as follows:

K

x

=

[

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

0

-

1

0

0

0

1

0

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

]

K

y

=

[

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

-

1

-

1

-

1

-

1

0

0

0

0

0

0

0

0

0

1

1

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

0

1

1

1

1

1

1

1

1

1

1

1

1

1

]

K

z

=

[

0

1

1

1

1

1

1

1

1

-

1

0

1

1

1

1

1

1

1

-

1

-

1

0

1

1

1

1

1

1

-

1

-

1

-

1

0

1

1

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

-

1

-

1

0

1

1

1

-

1

-

1

-

1

-

1

-

1

-

1

0

1

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

]

K

w

=

[

-

1

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

-

1

-

1

-

1

-

1

-

1

-

1

-

1

0

1

-

1

-

1

-

1

-

1

-

1

-

1

0

1

1

-

1

-

1

-

1

-

1

-

1

0

1

1

1

-

1

-

1

-

1

-

1

0

1

1

1

1

-

1

-

1

-

1

0

1

1

1

1

1

-

1

-

1

0

1

1

1

1

1

1

-

1

0

1

1

1

1

1

1

1

0

1

1

1

1

1

1

1

1

]

.

19. The system of claim 11 , wherein the neighborhood of the pixel p has a rectangular shape.

20. The system of claim 11 , wherein a standard deviation for the 1D Gaussian filter is from about 1.5 to about 2.

21. The method of claim 1 , further comprising blending noise contributions from an approximation part and an edge of the raw image, comprising:

(f) determining a blending weight w b (p) as a function of α(p) and m(p), wherein:

(i) α(p) is a variability of an angle in a direction of a normal to the edge near the pixel p; and

(ii) m(p) is a measure of a similarity between pixels in a neighborhood of the pixel p and a patch with a strong edge separating two flat areas;

and

(g) blending the noise contributions as a function of the blending weight w b (p), thereby expediently denoising the raw image.

22. The method of claim 1 , further comprising removing halos around the edge in the raw image, wherein:

(a) determining a first minimal value z min among the denoised value z of the pixel p and the shifted denoised values z − and z + ;

(b) determining a first maximal intensity among the denoised value z of the pixel p and the shifted denoised values z − and z + ;

(c) determining a second maximal intensity among the sharpened edge denoised value z sharp of the pixel p and the first minimal intensity;

(d) determining a halos removed denoised value of the pixel p as the minimal intensity among the second maximal intensity and the first maximal intensity.

23. A method for blending an approximation noise and an edge noise for a pixel p from an approximation part and an edge of a raw image respectively, the method comprising:

employing a hardware processor for:

(a) determining a blending weight w b (p) for blending the approximation noise and the edge noise as a function of α(p) and m(p), comprising:

(i) determining α(p) as a variability of an angle measure in a direction of a normal to the edge near the pixel p; and

(ii) determining m(p) as a measure of a similarity between pixels in a neighborhood of the pixel p and a patch with a strong edge separating two flat areas;

and

(b) blending the approximation noise and the edge noise as a function of the blending weight w b (p), thereby expediently denoising the raw image.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2025
From: QUALCOMM TECHNOLOGIES, INC.
To: QUALCOMM INCORPORATED
Reel/Frame 069853/0672 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2024
From: TORC CND ROBOTICS, INC.
To: QUALCOMM TECHNOLOGIES, INC.
Reel/Frame 066024/0120 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2023
From: ALGOLUX INC.
To: TORC CND ROBOTICS, INC.
Reel/Frame 064087/0491 →
RELEASE OF SECURITY INTEREST Recorded Apr 6, 2023
From: ROYAL BANK OF CANADA
To: ALGOLUX INC.; ALGOLUX (USA) INC.
Reel/Frame 063245/0485 →
SECURITY INTEREST Recorded Jun 21, 2022
From: ALGOLUX INC.; ALGOLUX (USA) INC.
To: ROYAL BANK OF CANADA
Reel/Frame 060259/0088 →
CHANGE OF ADDRESS Recorded Aug 7, 2020
From: ALGOLUX INC.
To: ALGOLUX INC.
Reel/Frame 053430/0772 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2019
From: ONZON, EMMANUEL LUC JULIEN; ROBIDOUX, NICOLAS
To: ALGOLUX INC.
Reel/Frame 048187/0047 →
Continuity (3)
Continuation In Part 15466639 · Mar 22, 2017
Provisional Application 62311612 · Mar 22, 2016
Related Publication 20190172182A1 · Jun 6, 2019
Cited By (1)
US 12,450,703