1. Trang chủ
  2. » Giáo án - Bài giảng

image enhancement document

78 161 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 78
Dung lượng 3,47 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

 If we consider the grayvalues in the image as realizations of a random variable R, with some probability density, histogram provides an approximation to this probability density...  I

Trang 1

  Prof Duong Anh Duc

Trang 2

 To process an image so that output is “visually better” than the input, for a specific application

 Enhancement is therefore, very much dependent on the particular problem/image at hand

 Enhancement can be done in either:

Trang 3

Image Enhancement Techniques

• Median Filtering

• Sharpening operations

• Derivative operations

• Histogram operations

• Low pass Filtering

• Hi pass Filtering

• Band pass Filtering

• Homomorphic Filtering

• Histogram operations

• False Coloring

• Full color Processing

Trang 4

 Output pixel value g(m, n) at pixel (m, n) depends only on the input pixel value at f(m, n) at (m, n) (and not on the neighboring pixel values)

 We normally write s = T(r), where s is the output pixel value and r is the input pixel value

Trang 5

5

T(r) = s = L – 1 – r, L: max grayvalue

Trang 7

 Increase the dynamic range of grayvalues in the input image

 Suppose you are interested in stretching the input intensity values

in the interval [r1, r2]:

 Note that (r1 – r2) < (s1 – s2) The grayvalues in the range [r1, r2] is stretched into the range [s1, s2] 7

Trang 8

 Special cases:

r1 = r2 , s1 = 0 and s2 = 1

interested in the shape of the objects and on their actual grayvalues

Trang 9

9

Trang 10

 Special cases (cont.):

1 2

1

1

, 1 ,

, 0

r r

r r

r r

r

r r

r r

r T

g

Trang 11

11

Gamma correction

Trang 12

 When the dynamic range of the input grayvalues is large

compared to that of the display, we need to “compress” the

grayvalue range - example: Fourier transform magnitude

 Typically we use a log scale

s = T(r) = c log(1+r  )

Trang 13

Saturn Image Mag Spectrum Mag Spectrum

in log scale

Trang 14

 Graylevel Slicing: Highlight a specific range of grayvalues

Trang 15

 Example:

15

Original Image

Highlighted Image (no background)

Highlighted Image (with background)

Trang 16

 Bitplane Slicing: Display the different bits as individual binary

images

Trang 18

 In this case, the difference between two “similar” images is

computed to highlight or enhance the differences between them:

g(m, n) = f1(m, n) – f2(m, n)

 It has applications in image segmentation and enhancement

Trang 19

f1(m, n): Image before dye injection

f2(m, n): Image after dye injection

g(m, n): Image after dye injection, followed by subtraction

Trang 20

 Noise is any random (unpredictable) phenomenon that

Noise-free Image

Noise

Trang 21

 The noise h(m, n) at each pixel (m, n) is modeled as a random variable

 Usually, h(m, n) has zero-mean and the noise values at different pixels are uncorrelated

 Suppose we have M observations {gi (m, n)}, i =1, 2, …, M, we can (partially) mitigate the effect of noise by “averaging”

n m

g

1

, 1

,

Trang 22

 In this case, we can show that:

 Therefore, as the number of observations increases (M  ), the effect of noise tends to zero

n m f n

m g E

, Var

1 ,

Var

, ,

Trang 23

23

Noise Variance = 0.05

Trang 24

M =2 M =5

Trang 25

25

Trang 26

M =50 M =100

Trang 27

27

Trang 28

 The histogram of a digital image with grayvalues r0, r1, …, rL – 1 is the discrete function

 The function p(rk) represents the fraction of the total number of pixels with grayvalue rk

 Histogram provides a global description of the appearance of the

# total

e with valu pixels

# where

,

n

r n

n

n r

Trang 29

 If we consider the grayvalues in the image as realizations of a random variable R, with some probability density, histogram provides an

approximation to this probability density In other words,

Pr[R = rk]  p(rk)

29

Trang 30

 The shape of a histogram provides useful information for contrast enhancement

Trang 31

 The shape of a histogram provides useful information for contrast enhancement

31

Trang 32

The original image displayed

The stretched image

0 5000

10000 The histogram of the original image

5000 10000

The stretched histogram

Trang 33

 Idea: find a non-linear transformation

g = T (f )

to be applied to each pixel of the input image f(x, y), such that a

uniform distribution of gray levels in the entire range results for the

output image g(x, y)

33

Trang 34

 Let us assume for the moment that the input image to be

enhanced has continuous grayvalues, with r = 0 representing black and r = 1 representing white

 We need to design a grayvalue transformation s = T(r), based on the histogram of the input image, which will enhance the image

 As before, we assume that:

order from black to white)

grayvalues)

Trang 36

 Let us denote the inverse transformation by r = T – 1(s) We assume that the inverse transformation also satisfies the above two conditions

 We consider the grayvalues in the input image and output image

as random variables in the interval [0, 1]

 Let pin(r) and pout(s) denote the probability density of the grayvalues in the input and output images

Trang 37

 If pin(r) and T(r) are known, and T– 1(s) satisfies condition 1, we can write (result from probability theory):

 One way to enhance the image is to design a transformation T(.) such that the grayvalues in the output is uniformly distributed in

in out

ds

dr r

p s

Trang 38

 In terms of histograms, the output image will have all grayvalues

in “equal proportion.”

 This technique is called histogram equalization

 Consider the transformation

       

r o

r dw

w p

r T

Trang 39

 Note that this is the cumulative distribution function (CDF) of pin(r) and satisfies the previous two conditions

 From the previous equation and using the fundamental theorem of calculus,

39

  r

p dr

ds

in

Trang 40

 Therefore, the output histogram is given by

 The output probability density function is uniform, regardless of the

r p s

p

s T r

s T r in

in out

Trang 41

 Thus, using a transformation function equal to the CDF of input grayvalues r, we can obtain an image with uniform grayvalues

 This usually results in an enhanced image, with an increase in the

dynamic range of pixel values

41

Trang 43

43

Trang 44

 For images with discrete grayvalues, we have

  for 0 1 and 0 1

n

n r

Trang 45

 The discrete version of the previous transformation based on CDF is given by:

45

    , for 0 1

0

in 0

r

p n

n r

T s

k i

i k

i

i k

k

Trang 48

 Applying the previous

7

6 89 0

7

6 81 0

7

5 65 0

7

3 44 0

7

1 19 0

6 in 1

in 0

in

6 in 6

6

5 in 1

in 0

in 5

0 in 5

5

4 in 1

in 0

in 4

0 in 4

4

3 in 1

in 0

in 3

0 in 3

3

2 in 1

in 0

in 2

0 in 2

2

1 in 0

in 1

0 in 1

1

0 in 0

0 in 0

p r p r p r

T s

r p r

p r p r p r

T s

r p r

p r p r p r

T s

r p r

p r p r p r

T s

r p r p r p r p r

T s

r p r p r p r

T s

r p r p r

T s

Trang 49

 With this transformation, the output image will have histogram

Trang 50

 Note that the histogram of output image is only approximately, and not exactly, uniform This should not be surprising, since there is no result that claims uniformity in the discrete case

Trang 51

51

Trang 53

53

Trang 55

55

Trang 57

57

Trang 59

 Histogram equalization may not always produce desirable results,

particularly if the given histogram is very narrow It can produce false edges and regions It can also increase image “graininess” and

“patchiness.”

59

Trang 60

 Histogram equalization yields an image whose pixels are (in theory) uniformly distributed among all graylevels

 Sometimes, this may not be desirable Instead, we may want a

transformation that yields an output image with a prespecified

histogram This technique is called histogram specification

 Again, we will assume, for the moment, continuous grayvalues

Trang 61

 Suppose, the input image has probability density pin(r) We want to find a transformation z = H(r), such that the probability density of the new image obtained by this transformation is pout(z), which is not

necessarily uniform

 First apply the transformation

This gives an image with a uniform probability density

61

    in  , 0   1   *

r o

r dw

w p

r T s

Trang 62

 If the desired output image were available, then the following

transformation would generate an image with uniform density:

 From the grayvalues  we can obtain the grayvalues z by using the inverse transformation, z = G– 1(  )

    out  , 0   1   * *

z o

z dw

w p

z G

Trang 63

 If instead of using the grayvalues n obtained from (**), we use the

grayvalues s obtained from (*) above (both are uniformly distributed!), then the point transformation

0 for ,

0 out

z p

z G

L

k n

n r

T s

k i

i k

k

k i

i k

k

Trang 64

 If the transformation zk G(zk) is one-to-one, the inverse

transformation sk G– 1(sk), can be easily determined, since we are dealing with a small set of discrete grayvalues

 In practice, this is not usually the case (i.e., zk G(zk) is not one) and we assign grayvalues to match the given histogram, as

one-to-closely as possible

Trang 65

 Consider the previous 8-graylevel 64 x 64 image histogram:

Trang 66

 It is desired to transform this image into a new image, using a

transformation z=H(r)= G– 1[T(r)], with histogram as specified below:

Trang 67

 The transformation T(r) was obtained earlier (reproduced below):

Trang 68

 Next we compute the transformation G as before

7

1 15 0

0 00 0

0 00 0

0 00 0

5 out 1

out 0

out

5 out 5

5

4 out 1

out 0

out 4

0 out 4

4

3 out 1

out 0

out 3

0 out 3

3

2 out 1

out 0

out 2

0 out 2

2

1 out 0

out 1

0 out 1

1

0 out 0

0 out 0

p z p z p z

G

z p z

p z p z p z

G

z p z

p z p z p z

G

z p z p z p z p z

G

z p z p z p z

G

z p z p z

Trang 69

 Notice that G is not invertible But we will do the best possible by

setting

o G– 1 (0) = ? (This does not matter since s  0)

o G– 1 (1/7) = 3/7

o G– 1 (2/7) = 4/7 (This does not matter since s  2/7)

o G– 1 (3/7) = 4/7 (This is not defined, but we use a close match)

o G– 1 (4/7) = ? (This does not matter since s  4/7)

o G– 1 (5/7) = 5/7

o G– 1 (6/7) = 6/7

o G– 1 (1) = 1

69

Trang 70

 Combining the two transformation T and G– 1, we get our required

Trang 71

 Applying the transformation H to the original image yields an image

with histogram as below:

71

(actual hist.)

pout(zk) (spec hist.)

Trang 73

 Again, the actual histogram of the output image does not exactly but only approximately matches with the specified histogram This is

because we are dealing with discrete histograms

73

Trang 75

75

Histogram equalized image Actual histogram of output

Trang 77

 Used to enhance details over small portions of the image

 Define a square or rectangular neighborhood, whose center moves from pixel to pixel

 Compute local histogram based on the chosen neighborhood for

each point and apply a histogram equalization or histogram

specification transformation to the center pixel

 Non-overlapping neighborhoods can also be used to reduce

computations But this usually results in some artifacts

(checkerboard like pattern)

77

Trang 78

 Another use of histogram information in image enhancement is the

statistical moments associated with the histogram (recall that the

histogram can be thought of as a probability density function)

 For example, we can use the local mean and variance to

determine the local brightness/contrast of a pixel This information can then be used to determine what, if any transformation to apply

to that pixel

 Note that local histogram based operations are non-uniform in the

sense that a different transformation is applied to each pixel

Ngày đăng: 26/01/2015, 10:18

TỪ KHÓA LIÊN QUAN

w