43
1 Noise in Imaging Technology Two plagues in image acquisition Noise interference Blur (motion, out-of-focus, hazy weather) Difficult to obtain high- quality images as imaging goes Beyond visible spectrum Micro-scale (microscopic

Noise in Imaging Technology

  • Upload
    reia

  • View
    35

  • Download
    0

Embed Size (px)

DESCRIPTION

Noise in Imaging Technology. Two plagues in image acquisition Noise interference Blur (motion, out-of-focus, hazy weather) Difficult to obtain high-quality images as imaging goes Beyond visible spectrum Micro-scale (microscopic imaging) Macro-scale (astronomical imaging). What is Noise?. - PowerPoint PPT Presentation

Citation preview

Page 1: Noise in Imaging Technology

1

Noise in Imaging Technology

Two plagues in image acquisition Noise interference Blur (motion, out-of-focus, hazy

weather) Difficult to obtain high-quality

images as imaging goes Beyond visible spectrum Micro-scale (microscopic imaging) Macro-scale (astronomical imaging)

Page 2: Noise in Imaging Technology

What is Noise? noise means any unwanted signal One person’s signal is another

one’s noise Noise is not always random and

randomness is an artificial term Noise is not always bad.

2

Page 3: Noise in Imaging Technology

Stochastic Resonance

3

no noise heavy noiselight noise

Page 4: Noise in Imaging Technology

4

Image Denoising Where does noise come from?

Sensor (e.g., thermal or electrical interference)

Environmental conditions (rain, snow etc.)

Why do we want to denoise? Visually unpleasant Bad for compression Bad for analysis

Page 5: Noise in Imaging Technology

5

electrical interference

Noisy Image Examples

thermal imaging

ultrasound imaging

physical interference

Page 6: Noise in Imaging Technology

6

Noise Removal Techniques

Linear filtering Nonlinear filtering

Recall

Linear system

Page 7: Noise in Imaging Technology

7

Image Denoising

Introduction Impulse noise removal

Median filtering Additive white Gaussian noise

removal 2D convolution and DFT

Periodic noise removal Band-rejection and Notch filter

Page 8: Noise in Imaging Technology

8

Impulse Noise (salt-pepper Noise)

Definition

Each pixel in an image has the probability of p/2 (0<p<1) being contaminated by either a white dot (salt) or a black dot (pepper)

WjHi

jiX

jiY

1,1

),(

0

255

),(

with probability of p/2

with probability of p/2

with probability of 1-p

noisy pixels

clean pixels

X: noise-free image, Y: noisy image

Note: in some applications, noisy pixels are not simply black or white, which makes the impulse noise removal problem more difficult

Page 9: Noise in Imaging Technology

9

Numerical Example

P=0.1

128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128

X

128 128 255 0 128 128 128 128 128 128 128 128 128 128 0 128 128 128 128 0 128 128 128 128 128 128 128 128 128 128 128 128 0 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 0 128 128 128 128 255 128 128 128 128 128 128 128 128 128 128 128 128 128 255 128 128 128 128 128 128 128 255 128 128

Y

Noise level p=0.1 means that approximately 10% of pixels are contaminated bysalt or pepper noise (highlighted by red color)

Page 10: Noise in Imaging Technology

10

MATLAB Command

>Y = IMNOISE(X,'salt & pepper',p)

Notes:

The intensity of input images is assumed to be normalized to [0,1].If X is double, you need to do normalization first, i.e., X=X/255;

The default value of p is 0.05 (i.e., 5 percent of pixels are contaminated)

imnoise function can produce other types of noise as well (you need to change the noise type ‘salt & pepper’)

Page 11: Noise in Imaging Technology

11

Impulse Noise Removal Problem

Noisy image Y

filteringalgorithm

Can we make the denoised image X as closeto the noise-free image X as possible?

^

X̂denoised

image

Page 12: Noise in Imaging Technology

12

Median Operator

Given a sequence of numbers {y1,…,yN} Mean: average of N numbers Min: minimum of N numbers Max: maximum of N numbers Median: half-way of N numbersExample ]56,55,54,255,52,0,50[y

54)( ymedian

]255,56,55,54,52,50,0[y

sorted

Page 13: Noise in Imaging Technology

13

y(n)

W=2T+1

)](),...,(),...,([)(ˆ TnynyTnymediannx

1D Median Filtering

… …

Note: median operator is nonlinear

MATLAB command: x=median(y(n-T:n+T));

Page 14: Noise in Imaging Technology

14

Numerical Example

]56,55,54,255,52,0,50[yT=1:

],56,55,54,255,52,0,50,[ 5650y

]55,55,54,54,52,50,50[ˆ x

BoundaryPadding

Page 15: Noise in Imaging Technology

15

x(m,n)

W: (2T+1)-by-(2T+1) window

2D Median Filtering

)],(),...,,(),...,,(

),...,,(),...,,([),(ˆ

TnTmyTnTmynmy

TnTmyTnTmymediannmx

MATLAB command: x=medfilt2(y,[2*T+1,2*T+1]);

Page 16: Noise in Imaging Technology

16

Numerical Example

225 225 225 226 226 226 226 226 225 225 255 226 226 226 225 226 226 226 225 226 0 226 226 255 255 226 225 0 226 226 226 226 225 255 0 225 226 226 226 255 255 225 224 226 226 0 225 226 226 225 225 226 255 226 226 228 226 226 225 226 226 226 226 226

0 225 225 226 226 226 226 226 225 225 226 226 226 226 226 226 225 226 226 226 226 226 226 226 226 226 225 225 226 226 226 226 225 225 225 225 226 226 226 226 225 225 225 226 226 226 226 226 225 225 225 226 226 226 226 226 226 226 226 226 226 226 226 226

Y X̂

Sorted: [0, 0, 0, 225, 225, 225, 226, 226, 226]

Page 17: Noise in Imaging Technology

17

Image Example

P=0.1

Noisy image Y X̂denoised

image3-by-3 window

Page 18: Noise in Imaging Technology

18

Idea of Improving Median Filtering

Can we get rid of impulse noise without affecting clean pixels? Yes, if we know where the clean pixels

areor equivalently where the noisy pixels

are How to detect noisy pixels?

They are black or white dots

Page 19: Noise in Imaging Technology

19

Median Filtering with Noise Detection

Noisy image Y

x=medfilt2(y,[2*T+1,2*T+1]);

Median filtering

Noise detection

C=(y==0)|(y==255);

xx=c.*x+(1-c).*y;

Obtain filtering results

Page 20: Noise in Imaging Technology

20

Image Example

cleannoisy(p=0.2)

w/onoisedetection

withnoisedetection

Page 21: Noise in Imaging Technology

21

Image Denoising

Introduction Impulse noise removal

Median filtering Additive white Gaussian noise

removal 2D convolution and DFT

Periodic noise removal Band-rejection and Notch filter

Page 22: Noise in Imaging Technology

22

Additive White Gaussian Noise

Definition

Each pixel in an image is disturbed by a Gaussian random variableWith zero mean and variance 2

WjHiNjiN

jiNjiXjiY

1,1),,0(~),(

),,(),(),(2

X: noise-free image, Y: noisy image

Note: unlike impulse noise situation, every pixel in the image contaminatedby AWGN is noisy

Page 23: Noise in Imaging Technology

23

Numerical Example

2 =1

X Y

128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128 128

128 128 129 127 129 126 126 128 126 128 128 129 129 128 128 127 128 128 128 129 129 127 127 128 128 129 127 126 129 129 129 128 127 127 128 127 129 127 129 128 129 130 127 129 127 129 130 128 129 128 129 128 128 128 129 129 128 128 130 129 128 127 127 126

Page 24: Noise in Imaging Technology

24

MATLAB Command

>Y = IMNOISE(X,’gaussian',m,v)

>Y = X+m+randn(size(X))*v;

or

Note:rand() generates random numbers uniformly distributed over [0,1]

randn() generates random numbers observing Gaussian distributionN(0,1)

Page 25: Noise in Imaging Technology

25

Image Denoising

Noisy image Y

filteringalgorithm

Question: Why not use median filtering?Hint: the noise type has changed.

X̂denoised

image

Page 26: Noise in Imaging Technology

26

f(n) h(n) g(n)

)()()()()()()( nhnfnfnhknfkhngk

- Linearity

- Time-invariant property

)()()()( 22112211 nganganfanfa

)()( 00 nngnnf

Linear convolution

1D Linear Filtering

See review section

Page 27: Noise in Imaging Technology

27

jwnenfwF )()(

dwewFnf jwn)(

2

1)(

forward

inverse

Note that the input signal is a discrete sequence while its FT is a continuous function

)()( nhnf time-domain convolution

)()( wHwF

frequency-domain multiplication

Fourier Series

Page 28: Noise in Imaging Technology

28

Filter Examples

0 0.5 1 1.5 2 2.5 3 3.50

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

LP HP

w

|H(w)|Low-pass (LP)

h(n)=[1,1]

|h(w)|=2cos(w/2)

High-pass (LP)

h(n)=[1,-1]

|h(w)|=2sin(w/2)

Page 29: Noise in Imaging Technology

29

2D Linear Filtering

f(m,n) h(m,n) g(m,n)

),(),(),(),(),(,

nmfnmhlnkmflkhnmglk

2D convolution

MATLAB function: C = CONV2(A, B)

Page 30: Noise in Imaging Technology

30

2D Filtering=Two Sequential 1D Filtering

Just as we have observed with 2D transform, 2D (separable) filtering can be viewed as two sequential 1D filtering operations: one along row direction and the other along column direction

The order of filtering does not matter

)()()()(),( 1111 mhnhnhmhnmh h1 : 1D filter

Page 31: Noise in Imaging Technology

31

Fourier Series (2D case)

m n

nwmwjenmfwwF )(21

21),(),(

Note that the input signal is discrete while its FT is a continuous function

),(),( nmhnmf spatial-domain convolution

),(),( 2121 wwHwwF

frequency-domain multiplication

Page 32: Noise in Imaging Technology

32

Filter Examples

Low-pass (LP)

h1(n)=[1,1]

|h1(w)|=2cos(w/2)

1D

h(n)=[1,1;1,1]

|h(w1,w2)|=4cos(w1/2)cos(w2/2)

2D

w1

w2

|h(w1,w2)|

Page 33: Noise in Imaging Technology

33

Image DFT Example

Original ray image X choice 1: Y=fft2(X)

Page 34: Noise in Imaging Technology

34

Image DFT Example (Con’t)

choice 1: Y=fft2(X) choice 2: Y=fftshift(fft2(X))Low-frequency at the centerLow-frequency at four corners

FFTSHIFT Shift zero-frequency component to center of spectrum.

Page 35: Noise in Imaging Technology

35

Gaussian Filter

)2

exp(),(2

22

21

21 ww

wwH

)2

exp(),(2

22

nm

nmh

FT

>h=fspecial(‘gaussian’, HSIZE,SIGMA);MATLAB code:

Page 36: Noise in Imaging Technology

36

(=1)PSNR=24.4dB

Image Example

PSNR=20.2dB

noisy

(=25)

denoised denoised

(=1.5)PSNR=22.8dB

Matlab functions: imfilter, filter2

Page 37: Noise in Imaging Technology

37

Gaussian Filter=Heat Diffusion

2

2

2

2 ),,(),,(),,(

),,(

y

tyxI

x

tyxItyxI

t

tyxI

Linear Heat Flow Equation:

)()0,,(),,( tGyxItyxI

scale A Gaussian filterwith zero mean and variance of t

Isotropic diffusion:

Page 38: Noise in Imaging Technology

38

Basic Idea of Nonlinear Diffusion*

x

y I(x,y)

image I

image I viewed as a 3D surface (x,y,I(x,y))

Diffusion should be anisotropicinstead of isotropic

Page 39: Noise in Imaging Technology

39

Image Denoising

Introduction Impulse noise removal

Median filtering Additive white Gaussian noise

removal 2D convolution and DFT

Periodic noise removal Band-rejection and Notch filter

Page 40: Noise in Imaging Technology

40

Periodic Noise Source: electrical or electromechanical

interference during image acquistion Characteristics

Spatially dependent Periodic – easy to observe in frequency

domain Processing method

Suppressing noise component in frequency domain

Page 41: Noise in Imaging Technology

41

Image Example

spatial

Frequency (note the four pairs of bright dots)

Page 42: Noise in Imaging Technology

42

Band Rejection Filter

otherwise

WDww

WDwwH

122

0),(22

21

21

w1

w2

Page 43: Noise in Imaging Technology

43

Image Example

Before filtering After filtering