image enhancement - urząd miasta...

34
Image enhancement Image enhancement belongs to image pre- processing methods. Objective of image enhancement – process the image (e.g. contrast improvement, image sharpening ,…) so that it is better suited for further processing or analysis P. Strumillo, M. Strzelecki

Upload: others

Post on 01-Oct-2020

18 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Image enhancement

Image enhancement belongs to image pre-processing methods.

Objective of image enhancement – process the image (e.g. contrast improvement, image sharpening ,…) so that it is better suited for further processing or analysis

P. Strumiłło, M. Strzelecki

Page 2: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Image enhancement methods are based on subjective image quality criteria.

No objective mathematical criteria are used for optimizing processing results.

subjective perception

Image enhancement

Page 3: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Pseudo

colouring

False

colouring

Linear filters

Nonlinear filters

Edge detection

Zooming

Contrast

enhancement

Histogram modelling

Image

averaging

Image enhancemet methods

Point processing

Spatialfiltering

Imagecolouring

Page 4: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

M, N – image dimensions f(i,j) – gray level value at (i,j)

∑∑

∑∑

= =

= =

−=

=

M

i

N

j

M

i

N

j

JjifMN

C

jifMN

J

1 1

2

1 1

]),([1

),(1Brightness

Contrast

Image enhancement

Page 5: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

J=29, C=38J=112, C=47

Image brightness and contrast influence image subjective quality perceptionJ=194, C=29

Image histogram

Page 6: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Image histogram

Image : array[1..M,1..N] of byte;

Hist : array[0..L-1] of longint;

...

Hist:=0;

for i:=1 to M do for j:=1 to N do

Inc( Hist[ Image[i, j] ] );…

0 50 100 150 200 250

0

200

400

600

800

Page 7: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

0 50 100 150 200 250

0

200

400

600

800

0 50 100 150 200 250

0

500

1000

1500

0 50 100 150 200 250

0

200

400

600

800

1000

1200 darkdark

Source Source imageimage

brightbright

Image histogramrepresents statistical distribution of image pixel brightnesses

Image histogram

Page 8: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

L-1

L-1

d

m

0 f

g

Linear gray scale transformation

OUTPUT IMAGE

SOURCE IMAGE

g f

g(i,j) = m f(i,j) + d

m ~ contrast

d ~ brightness POINT OPERATION

Page 9: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

MATLAB Demo – image histogram

Page 10: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Histogram „stretching”

g(i,j) =

0 f(i,j)<fMIN

L-1 f(i,j)>fMAX

L-1fMAX- fMIN

(f(i,j)- fMIN), fMIN≤≤≤≤ f(i,j) ≤≤≤≤fMAX

POINT OPERATION?

L-10 f fM A X

fM I N

g

Page 11: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

0 50 100 150 200 250

0

1000

2000

3000

4000

5000

0 50 100 150 200 250

0

1000

2000

3000

4000

5000

fMIN=110, fMAX=225

Histogram „stretching” - example

Page 12: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Grayscale inversion

L-1

L-10 f

g

Page 13: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

OUTPUT IMAGE

SOURCE IMAGE

g f

g(i,j) = T( f(i,j))

Grayscale normalization!

γ correction

Nonlinear grayscale transformation

POINT OPERATION

L-1

L-1

exp(x)

ln(x)

x2

sqrt(x)

0 f

g

Page 14: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Source image

Nonlinear grayscale transformation - example

0 50 100 150 200 250

0

200

400

600

800

1000

Page 15: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

0 100 200

0

500

1000

1500

T=x2

0 100 200

0

200

400

600

800

1000

1200T=sqrt(x)

Nonlinear grayscale transformation - example

Page 16: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

0 100 200

0

500

1000

1500

0 100 200

0

500

1000

1500

2000T=ex

T=log(x)

Nonlinear grayscale transformation - example

Page 17: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Example: square function

normalization: minimum value - 0 -> 0

maximum value - 255 -> 2552

Normalization coefficient: norm=1/255

...

for i:=1 to M do for j:=1 to N do

g[i,j]:=round(sqr(f[i,j])*norm);

...

Nonlinear grayscale transformation - algorithm

Page 18: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Example: square function (using look-up-table)

lut : array[0..255]of byte;

...

for k:=0 to 255 do lut[k]:=round(k*k*norm)

for i:=1 to M do for j:=1 to N do

g[i,j]:=lut[(f[i,j])];

...

Nonlinear grayscale transformation - algorithm

Page 19: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Enhacement of a telescope moon image

T=b log( ax)

Page 20: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Consider a noisy image:

( ) ( ) ( )jijifjig ,,, η+=

contaminated by additive noise η(i,j) of zero average an variance σh

2 that is not correlated to the image.

We will show that after N averagings (acquisitions) of

the noisy image g(i,j) the variance of noise

component will be reduced to:

N

22 ηη

σσ =

Image ehancement by image averaging

Page 21: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Image ehancement by image averaging

∑∑==

+=+=N

kk

N

kk jin

Njifjinjif

Njig

11),(

1),()],(),([

1),(

1N

+ +...+ =

WARNING ! – grayscale range

Page 22: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Noise variance in the averaged image:

( ){ }22

21

22

1

22

2212

2

12

2

1

2

111

211

11

ηη=

≠=

==η

σ=σ=

η=

=

ηη+η⋅=η++η+η⋅=

=

η⋅=

η=σ

∑∑

∑∑

NN

NE

N

EN

EN

ENN

E

N

kk

N

pkpk

N

kkN

N

kk

N

kk

K

=0

Image ehancement by image averaging

One can also show that the pick value of noise {n} is reduced by a factor of √Nafter N image averagings

Page 23: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

N=1

N=8 N=16

N=2

Microscope image of a cell

Additive Gaussian noise

Addison-Wesley

Image averaging – example

Page 24: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Cumulative histogram

ensionsimageNM

LiMNkhistihistc

ofarrayhists

ofarrayhist

histogramcumulativehistchistogramimagehist

i

k

dim,

1,...,0,/])[(][

;]255..0[:

]255..0[:

,

0

−==

−−

∑=

single

longint;

Page 25: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

0 50 100 150 200 250

0

0.5

1

1.5

0 50 100 150 200 250

0

200

400

600

800

1000

Histogram Cumulative histogram

Cumulative histogram

Page 26: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Histogram equalization

By histogram equalization one gets:

• contrast enhancement

• image normalization

Histogram equalization aims at obtaining uniform statistical distribution of image gray levels (uniform probability density function)

Page 27: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

L-10 f

p (f)f

L-1

1/(L-1)

0 g

p (g)g

pf(f)=hist[f]/MN pg(g)=1/(L-1)

Histogram equalization

Page 28: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

][)1(][

)1()()1(

12,1,0,1

)(

1,011

1

1

1)(

)()(

00

0

0 00

fhistcLMN

ihistLipLg

,...,L-gfL

gip

LgfL

gu

Ldu

Ldhhp

duupdhhp

f

i

f

if

f

if

f gg

f

gf

−=−=−=

=−

=

−≤≤−

=−

=−

=

=

∑∑

∫ ∫

∫∫

==

=

Histogram equalization

Page 29: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Histogram equalization

0 50 100 150 200 250

0

500

1000

1500

2000

2500

3000

3500

4000

0 50 100 150 200 250

0

0.5

1

Histogram

Cumulativehistogram

Equalizedhistogram

][)1( fhistcLg −=

g

f

Page 30: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Cumulative histogram - algorithm

hist : array[0..255] of longint;

histc : array[0..255] of single;

...

histc[0]:=hist[0];

for k:=1 to 255 do

histc[k]:=histc[k-1]+hist[k];

...

Page 31: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

0 50 100 150 200 250

0

1000

2000

3000

4000

5000

6000

Histogram equalization

0 50 100 150 200 250

0

1000

2000

3000

4000

5000

6000

7000

Page 32: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

0 50 100 150 200 250

0

1000

2000

3000

4000

5000

6000

7000

Histogram equalization - example

0 50 100 150 200 250

0

1000

2000

3000

4000

5000

6000

7000

Page 33: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

MATLAB Demo – intensity adjustment

Page 34: Image enhancement - Urząd Miasta Łodzimstrzel.eletel.p.lodz.pl/mstrzel/pattern_rec/enhancement1.pdf · Image enhancement Image enhancement belongs to image pre-processing methods

Correction of nonuniform illumination