• No results found

Lectures 6&7: Image Enhancement

N/A
N/A
Protected

Academic year: 2021

Share "Lectures 6&7: Image Enhancement"

Copied!
38
0
0

Loading.... (view fulltext now)

Full text

(1)

Lectures 6&7:

Image Enhancement

Leena Ikonen

Machine Vision and Pattern Recognition (MVPR)

Lappeenranta University of Technology (LUT) [email protected]

(2)

Content

• Background

– Spatial domain methods

– Frequency domain methods

• Enhancement by point processing

• Spatial filtering

(3)

Background: Motivation

• For preprocessing to make the image look better,

i.e., more suitable for further processing.

• Problems with

– contrast

– sharpness

– smoothness

– noise

– distortions

– etc

(4)

Background: Spatial domain methods

• Method: Slide the mask though the image and compute new pixel values

• Image processing function: g(x,y) = T[f(x,y)]

f(x,y) the input image

g(x,y) the processed image

T an operator on f, defined over some neighborhood of (x,y)

• Gray-level transformation (mapping) function: s = T(r)

(5)

Background: Frequency domain methods

• Method: Multiply the Fourier transforms of the image and the

mask, and apply the inverse transform to the multiplication • Convolution:

g(x,y) = h(x,y)*f(x,y)

h(x,y) a linear, postion invariant operator • Fourier transform:

G(u,v) = H(u,v)F(u,v)

H(u,v) the transfer function of the process • Inverse Fourier transform:

(6)

Enhancement by point processing: Some simple intensity transformations

• Image negatives:

s = ((L-1) – r) where L = number of gray-levels • Contrast stretching:

– Poor illumination, lack of dynamic range in the imaging sensor, wrong setting of a lens aperture during image acquisition

– To increase the dynamic range of the gray-levels – Piecewise linear function

(7)
(8)

Enhancement by point processing:

Some simple intensity transformations (cont.)

• Compression of dynamic range:

– The dynamic range exceeds the capability of the

display device. The need of brighter pixels

s = c log(1 + abs(r)) where c is a scaling constant

• Gray-level slicing:

– Highlighting a specific range of gray-levels with

• “removing” or

(9)

Gray-level slicing

• Original image (top)

• Thresholded (left)

• Gray-level slicing

(10)

Enhancement by point processing:

Some simple intensity transformations (cont.)

• Bit-plane slicing:

– Select the specific bit planes

– For example: the image of eight 1-bit planes

– Plane 7 contains all the high-order bits:

• Higher planes contain visually significant data.

• Note: digital watermarking!

– To select the plane 7 only corresponds to the image

thresholded at gray-level 128

(11)

Enhancement by point processing: Histogram processing

• Histogram of the image:

p(r

k

) = n

k

/n

where

r

k

is the k

th

gray-level

n

k

is the number of pixels with that gray-level

n

is the total number of pixels in the image

k = 0, 1, 2, …, L-1

(12)
(13)
(14)

Enhancement by point processing: Histogram processing (cont.)

• Histogram equalization (or histogram linearization) to obtain the uniform histogram

• Gray-level transformation function and its inverse function • r represents gray-level values normalized to interval [0,1]

(r=0=black, r=1=white)

s = T(r) is the new equalized gray-value for gray-value r where 0<=T(r)<=1 and

T(r) is single-valued and monotonically increasing in 0<=r<=1 r = T-1(s) where 0<=s<=1

(15)

Enhancement by point processing: Histogram processing (cont.)

(16)

Enhancement by point processing: Histogram processing (cont.)

(17)

Enhancement by point processing: Histogram processing (cont.)

• Example:

p

r

(r) =

-2r + 2 when 0<=r<=1

0 elsewhere

• What transformation function creates uniform density?

r r r dw w r T s 2 2 0 ) 2 2 ( ) (       s r r s s T r 1( )1 1 ,0 1 1 1

(18)

Enhancement by point processing: Histogram processing (cont.)

• In discrete form, probabilities: pr(rk) = nk/n • where 0≤rk≤1, k = 0, 1, …, L-1

• n is the total number of pixels in the image • nk is the number of pixels with gray-value rk

• L is the total number of possible gray-levels in the image • Transformation function:

sk = T(rk) = ∑ pr(rj) = ∑ nj/n for j=0,...,k where 0≤rk≤1 and k=0,1,…,L-1

• Note that ”probability” pr(rj) is simply the fraction of pixels with gray-value rj out of the total number of pixels

• The new gray-value is the gray-level closest to the sum of probabilities up to the original value k: round((L-1) sk)

(19)

Enhancement by point processing: Histogram processing (cont.)

• Histogram specification:

– To apply another transformation function than an

approximation to a uniform histogram

• Local enhancement:

– Local processing instead of the whole image

– For example, histogram equalization of a 7x7

(20)

Enhancement by point processing: Image subtraction

• The difference between two images f(x,y) and h(x,y):

g(x,y) = f(x,y) – h(x,y)

(pixelwise subtraction)

• The use of a mask image

• Applications in medical image processing: The mask

is a normal image which is subtracted from a sample

image to point out regions of interest, e.g. object that

has moved between frames/images (see next slide)

• Remember also the ”regular” image subtracted from

(21)
(22)

Enhancement by point processing: Image averaging

• Consider a noisy image g(x,y) formed by the addition

of noise η(x,y) to an original image image f(x,y):

g(x,y) = f(x,y) + η(x,y)

• By averaging noisy images, noise is reduced

• Noise must be uncorrelated and must have zero

average value!

• Do NOT use averaging for salt and pepper noise!

• Example: noisy microscope images

(23)

Spatial filtering: Background

• Spatial filtering: the use of spatial filters

• Spatial filters:

– Lowpass filters

– Highpass filters

– Bandpass filters

• The mask:

w1 w2 w3

w4 w5 w6

w7 w8 w9

(24)

Spatial filtering: Smoothing filters

• For blurring and noise reduction

• Lowpass spatial filtering: 1 1 1

1/9 x 1 1 1 1 1 1

– Neighborhood averaging

• Median filtering: replace the gray-level of each pixel by the median of the gray-levels in a neighborhood of that pixel

– Removes noise, but preserves details such as edges – Filter size? Weighted median filtering?

(25)

Spatial filtering: Averaging vs. median

• Original image (upper left) • Original + noise (upper right) • Smoothed image (lower right) • Median smoothing (lower left)

(26)

Spatial filtering: Sharpening filters

• For highlighting fine detail in an image or

enhance detail that has been blurred

• Filters:

– Basic highpass spatial filter

– High-boost filtering

(27)

Spatial filtering: Basic highpass spatial filtering

• Positive coefficients near the center of a filter, negative coefficients in

the outer periphery

• 3 x 3 sharpening filter: -1 -1 -1 1/9 x -1 8 -1 -1 -1 -1

• The sum of the coefficients is zero

• The filter eliminates the zero frequency term => reduced global contrast of the image

(28)

Spatial filtering: High-boost filtering

• Highpass = Original – Lowpass

• Low frequencies are ”lost”

• High-boost or high-frequency-emphasis filter:

High boost = (A)(Original) – Lowpass

= (A-1)(Original) + Original – Lowpass = (A-1)(Original) + Highpass.

• Looks like original image, with edge enhancement by A

(29)

Spatial filtering: High-boost filtering (cont.)

• Unsharp masking: to subtract a blurred image from an

original image

• In the printing and publishing industry

• The mask with w = 9A -1 (with A≥1):

-1 -1 -1

1/9 x -1 w -1

(30)

Spatial filtering: Derivative filters

• For sharpening an image (averaging vs. differentiation) • The gradient of f(x,y):

∂f/∂x df =

∂f/∂y

• The magnitude is the basis for image differentiation methods: mag(df)= ((∂f/∂x)2 + (∂f/∂y)2)(-1/2)

(31)

Spatial filtering: Derivate filters (cont.)

• Roberts: 1 0 0 1 0 -1 1 0 • Prewitt: -1 -1 -1 -1 0 1 0 0 0 -1 0 1 1 1 1 -1 0 1 • Sobel: -1 -2 -1 -1 0 1 0 0 0 -2 0 2 1 2 1 -1 0 1

(32)

Enhancement in the frequency domain

• The use of image frequencies for enhancement

• Convolution: f(x)*g(x)  F(u) G(u)

• The filtered image g(x,y) using the Discrete Fourier transforms of an original image f(x,y) and a mask h(x,y):

g(x,y) = F-1 [H(u,v)F(u,v)]

• Lowpass filtering • Highpass filtering

(33)

Fourier transform: Image power

Radius (pixels) % Image power 8 95

16 97 32 98 64 99.4 128 99.8

Distance from point (u,v) to the origin: D(u,v) = (u2 + v2)(-1/2)

(34)

Enhancement in the Frequency Domain: Lowpass filter

• G(u,v) = H(u,v) F(u,v) • Ideal lowpass filter:

– H(u,v) = 1 if D(u,v) ≤ D0, or 0 if D(u,v) > D0 – Original (left) and filtered image (right)

(35)

Enhancement in the Frequency Domain: Butterworth lowpass filter

• The transfer function:

H(u,v) = 1/(1 + (D(u,v)/D0) 2n)

where

n is the order of the filter

D0 is the cutoff frequency locus (select!) • H(u,v) from 1 to 0.

• When D(u,v) = D0, H(u,v) = 0.5. • H(u,v) = 1/√2 commonly used.

(36)

Enhancement in the Frequency Domain: Highpass filter

• Ideal high pass filter:

– H(u,v) = 0 if D(u,v) ≤ D0, or 1 if D(u,v) > D0 – Original (left) and filtered image (right).

(37)

Enhancement in the Frequency Domain: Butterworth highpass filter

• The transfer function:

H(u,v) = 1/(1 + (D0/D(u,v))2n )

where

n is the order of the filter D0 is the cutoff frequency locus • H(u,v) from 0 to 1.

• When D(u,v) = D0, H(u,v) = 0.5. • H(u,v) = 1/√2 commonly used.

(38)

Summary

• For preprocessing to make the image look better,

i.e., more suitable for further processing

• Approaches:

– Spatial domain methods

– Frequency domain methods

• Enhancement by point processing

• Spatial filtering

References

Related documents