EE465: Introduction to Digital Image Processing Copyright Xin Li 1

builderanthologyΤεχνίτη Νοημοσύνη και Ρομποτική

19 Οκτ 2013 (πριν από 3 χρόνια και 11 μήνες)

106 εμφανίσεις

EE465: Introduction to Digital Image
Processing Copyright Xin Li

1

EE465: Introduction to Digital Image
Processing Copyright Xin Li

2

EE465: Introduction to Digital Image
Processing Copyright Xin Li

3

EE465: Introduction to Digital Image
Processing Copyright Xin Li

4

Roadmap


Introduction to image analysis (computer
vision)


Its connection with psychology and neuroscience


Why is image analysis difficult?


Theory of edge detection


Gradient operator


Advanced operators


Applications


Road/sign detection in intelligent driving systems


Pupil detection in iris recognition systems

EE465: Introduction to Digital Image
Processing Copyright Xin Li

5

Computer Vision: the Grand Challenge


Teach a computer to see is nontrivial at all


Unlike binary images, grayscale/color images
acquired by the sensor are often easy to
understand by human being but difficult for a
machine or a robot


There are lots of interesting problems in the
field of computer vision (image analysis)


Image segmentation, image understanding, face
detection/recognition, object tracking …


EE465: Introduction to Digital Image
Processing Copyright Xin Li

6

How does Human Vision System work?

Top
-
down school

Bottom
-
up school

pixels

objects

components (such as

edges, lines etc.)

I see a human body

I expect to see a human face

I expect to see two eyes and a nose

Two hypothesis and nobody knows the answer yet!

EE465: Introduction to Digital Image
Processing Copyright Xin Li

7

An Amazing Image Example

Person A:

I see an old man with a fancy

earring and a strange hand

Person B:

I see two people on the street

and a dog lying beside

If you try really hard, you will be able

to locate at least eight different faces

from this image

EE465: Introduction to Digital Image
Processing Copyright Xin Li

8

Gestalt Theory

(the Berlin School)

Emergence: the dog is perceived as a whole, all at once

EE465: Introduction to Digital Image
Processing Copyright Xin Li

9

Reification

EE465: Introduction to Digital Image
Processing Copyright Xin Li

10

Multistability (or Multistable Perception)

EE465: Introduction to Digital Image
Processing Copyright Xin Li

11

Invariance

EE465: Introduction to Digital Image
Processing Copyright Xin Li

12

Application: Face Detection

http://vasc.ri.cmu.edu/demos/faceindex/

You are strongly encouraged to try the interactive demo out yourself

EE465: Introduction to Digital Image
Processing Copyright Xin Li

13

Roadmap


Introduction to analysis of grayscale images


Why grayscale images are more difficult to
handle?


Edge detection


Gradient operator


Advanced operators


Image segmentation


Basic techniques


Texture segmentation*

EE465: Introduction to Digital Image
Processing Copyright Xin Li

14

Edge Detection

• Why detect edge?

Edges characterize object boundaries and are

useful features for segmentation, registration

and object identification in scenes.

• What is edge (to human vision system)?

Intuitively, edge corresponds to
singularities

in the image

(i.e. where pixel value experiences abrupt change)

No rigorous definition exists

EE465: Introduction to Digital Image
Processing Copyright Xin Li

15

Gradient Operators

• Motivation: detect
changes

change in the pixel value

large gradient

Gradient

operator

image

Thresholding

edge

map

x(m,n)

g(m,n)

I(m,n)

MATLAB function: > help edge

EE465: Introduction to Digital Image
Processing Copyright Xin Li

16

Common Operators

Examples
: 1. Roberts operator

g
1

g
2

• Gradient operator

EE465: Introduction to Digital Image
Processing Copyright Xin Li

17

Common Operators (cont’d)

2. Prewitt operator

3. Sobel operator

vertical

horizontal

EE465: Introduction to Digital Image
Processing Copyright Xin Li

18

Examples

horizontal edge

vertical edge

Prewitt operator (
th=48
)

original image

EE465: Introduction to Digital Image
Processing Copyright Xin Li

19

Effect of Thresholding Parameters

threshold

small

large

EE465: Introduction to Digital Image
Processing Copyright Xin Li

20

Compass Operators

EE465: Introduction to Digital Image
Processing Copyright Xin Li

21

Examples

Compass operator (
th=48
)

EE465: Introduction to Digital Image
Processing Copyright Xin Li

22

Laplacian Operators

• Gradient operator: first
-
order derivative

sensitive to abrupt change, but not
slow change

second
-
order derivative:

(Laplacian operator)

local extreme in
f’

• Discrete Laplacian operator

a=0

a=0.5

EE465: Introduction to Digital Image
Processing Copyright Xin Li

23

Zero Crossings

f

f’

f’’

zero crossing

Laplacian

operator

image

zero
-
crossing

edge

map

x(m,n)

g(m,n)

I(m,n)

EE465: Introduction to Digital Image
Processing Copyright Xin Li

24

Examples

zero
-
crossings

original image

Question: why is it so sensitive to noise (many false alarms)?

Answer: a sign flip from 0.01 to
-
0.01 is treated the same as from 100 to
-
100

EE465: Introduction to Digital Image
Processing Copyright Xin Li

25

Ideas to Improve Robustness


Linear filtering


Use a Gaussian filter to smooth out noise
component


Laplacian of Gaussian


Spatially
-
adaptive (Nonlinear) processing


Apply different detection strategies to smooth
areas (low
-
variance) and non
-
smooth areas (high
-
variance)


Robust Laplacian edge detector


Return single response to edges (not multiple
edge pixels)


Hysteresis thresholding


Canny’s edge detector

EE465: Introduction to Digital Image
Processing Copyright Xin Li

26

Laplacian of Gaussian

• Generalized Laplacian operator

Laplacian

operator

image

edge

map

x(m,n)

g(m,n)

I(m,n)

Gaussian

LPF (

)

Pre
-
filtering: attenuate the noise sensitivity of the Laplacian

EE465: Introduction to Digital Image
Processing Copyright Xin Li

27

Examples

Better than Laplacian alone but still sensitive due to zero crossing

EE465: Introduction to Digital Image
Processing Copyright Xin Li

28

Robust Laplacian
-
based Edge Detector

Laplacian

operator

image

zero

crossing?

estimate

local variance


2
>th


2

not an

edge point

No

yes

No

not an

edge point

edge


point

EE465: Introduction to Digital Image
Processing Copyright Xin Li

29

Examples

More robust but return multiple edge pixels (poor localization)

EE465: Introduction to Digital Image
Processing Copyright Xin Li

30

Canny Edge Detector*


Low error rate of detection


Well match human perception results


Good localization of edges


The distance between actual edges in an image
and the edges found by a computational algorithm
should be minimized


Single response


The algorithm should not return multiple edges
pixels when only a single one exists

EE465: Introduction to Digital Image
Processing Copyright Xin Li

31

Flow
-
chart of Canny Edge Detector*

(
J.

Canny’1986
)

Original image

Smoothing

by Gaussian convolution

Differential operators

along x and y axis

Non
-
maximum suppression


finds peaks in the image gradient

Hysteresis thresholding

locates edge strings

Edge map

EE465: Introduction to Digital Image
Processing Copyright Xin Li

32

Canny Edge Detector Example

original image

vertical edges

horizontal edges

norm of the gradient

after thresholding

after thinning

EE465: Introduction to Digital Image
Processing Copyright Xin Li

33

Marr and Hildreth’s Method*

Edge is
scale
-
dependent

A different edge map can be generated at different scale


Scale

space representation

fine
-
scale

image

coarse
-
scale

image

Gaussian kernel

with width of s

EE465: Introduction to Digital Image
Processing Copyright Xin Li

34

Importance of Scale

EE465: Introduction to Digital Image
Processing Copyright Xin Li

35

Scale
-
Space Edge Detection Examples

fine

coarse

Image to Sketch Online Apps

EE465: Introduction to Digital Image
Processing Copyright Xin Li

36

http://sporkforge.com/imaging/sketch.php