# 1

AI and Robotics

Nov 6, 2013 (4 years and 7 months ago)

88 views

Image Processing

Segmentation

1.
Process of partitioning a digital
image into multiple segments (sets
of pixels).

2. Clustering pixels into salient image
regions, i.e., regions corresponding
to individual surfaces, objects, or
natural parts of objects.

Image Processing

Segmentation

3.
Used to locate objects and
boundaries (lines, curves, etc.) in
images.

4.
Process of assigning a label to every
pixel in an image such that pixels
with the same label share certain
visual characteristics.

Image Processing

Segmentation

Two of the most common techniques:

thresholding

and

edge

finding

Image Processing

Segmentation

Two of the most common techniques:

thresholding

edge

finding

Image Processing

B. Detection of discontinuities

The objects
in image:

Three basic types of gray
-
level
discontinuities in a digital image:

points,

lines.

edges.

The original
image:

Image Processing

The common way

run a
through
the
image

R =

f
(
x
-
1,
y
-
1) *
M
1

+
f
(
x
,
y
-
1) *
M
2

+
f
(
x
+1,
y
-
1) *
M
3

+

f
(
x
-
1,
y
) *
M
4

+
f
(
x
,
y
) *
M
5

+
f
(
x
+1,
y
) *
M
6

+

f
(
x
-
1,
y
+1)*
M
7

+
f
(
x
,
y
+1)*
M
8

+
f
(
x
+1,
y
+1)*
M
9

Image Processing

The common way

run a
through
the
image

R =

f
(
x
-
1,
y
-
1) *
M
1

+
f
(
x
,
y
-
1) *
M
2

+
f
(
x
+1,
y
-
1) *
M
3

+

f
(
x
-
1,
y
) *
M
4

+
f
(
x
,
y
) *
M
5

+
f
(
x
+1,
y
) *
M
6

+

f
(
x
-
1,
y
+1)*
M
7

+
f
(
x
,
y
+1)*
M
8

+
f
(
x
+1,
y
+1)*
M
9

Select some threshold

.

If |R(x,y)|

then (x,y) to belong to object (background).

Image Processing

Example

a)

b)

Original and segmented images:

a)
8

b)
Threshold = 2

If R(x,y)

2

Then g(x,y) = 1

Else g(x,y) = 0

H
8
=

Image Processing

Line detection

A masks are usualy used for
detection of isolated points
in an image are:

Image Processing

Example of line detection

The original I image and segmented image I
o

Image Processing

Example of line detection

The original I image and segmented image I
45

with 45
o

Image Processing

Example of line detection

The original I image and segmented image I
v

Image Processing

Example of line detection

The original I image and segmented image I
135

with 135
o

Image Processing

Example of line detection

The original I image and segmented image I
8

with H
8

Image Processing

Formula:

Set (x,y):

R=0

for k=1 to 3

for q=1 to 3

R = R + f(x+k
-
2,y+q
-
2)*M(k,q)

If R

(潢橥捴)

E汳攠l木砬礩㴠=

(湯n
-

䥭慧I坩摴

䥭慧I䡥楧桴

Image Processing

Egde detection:

Image Processing

Egde detection:

Image Processing

-
based procedure:

Image Processing

-
based procedure:

The function f(x) is defined
as horizontal gray
-
level of
the image.

The first derivative f’(x) is positive at the point of
transition
into and out

of the
ramp

as moving from
left to right along the profile.

Image Processing

-
based procedure:

A point M is being an edge point if its
two
-
dimention first order derivative is
greater than a specified threshold.

Image Processing

-
based procedure:

If using the
second
-
derivative to
define the edge
points in an
image as the
zero crossing

of its second
derivative.

Image Processing

-
based procedure:

The signs of
second
derivative can
be used to
determine an
edge pixel lies
on the dark or
light side of an
edge

Image Processing

-
based procedure:

The zero
crossing
property of the
second
derivative is
quite useful for
locating the
centers of thick
edges.

Image Processing

-
based procedure:

The first is gradient vector of an image f(x, y), and

The second is quantity (magnitude) of gradient vector

Image Processing

The Prewitt gradient vector for detecting x
-
direction (y
-
direction) and

the Prewitt gradient vectors for detecting diagonal edges:

-
1

-
1

-
1

-
1

0

1

0

0

0

-
1

0

1

1

1

1

-
1

0

1

0

1

1

-
1

-
1

0

-
1

0

1

-
1

0

1

-
1

-
1

0

0

1

1

G
x

= (W
2
+ W
3

+ W
6
)

(W
4

+ W
7

+ W
8
)

G
y

= (W
6

+ W
8

+ W
9
)

(W
1

+ W
2

+ W
4
)

G
x

= (W
7
+ W
8

+ W
9
)

(W
1

+ W
2

+ W
3
)

G
y

= (W
3

+ W
6

+ W
9
)

(W
1

+ W
4

+ W
7
)

Image Processing

The general formula

for i = 2 to Height
-
1

for j = 2 to Width
-
1

{

t1 = 0

t2 = 0

for p = 1 to 3

for q = 1 to 3

{

t1 = t1 + G
1
[p, q] * f[i+p
-
2, j+q
-
2]

t2 = t2 + G
2
[p, q] * f[i+p
-
2, j+q
-
2]}

ts = Abs(t1) + Abs(t2)

if ts >

†

Q[椬i]㴠=

Q[椬i]㴠=

}

}

Image Processing

Example

1

1

1

3

1

1

1

1

1

3

1

1

1

1

1

3

1

1

3

3

3

3

3

3

1

1

1

3

1

1

1

1

1

3

1

1

W

For the window W from image I, caculating the
value

R(3,3)

=

|Dx*W| + |Dy*W|

=

|
-
6+12| + |
-
6+12| =

12

For all pixels of I, except boundary of I, we have
matrix R:

0

8

0

8

8

12

4

12

0

4

0

4

8

12

4

12

0

0

0

0

0

1

0

1

0

0

0

0

0

1

0

1

If using
threshold at
10:

Image Processing

The Prewitt gradient vector for detecting x
-
direction (y
-
direction) and

the Prewitt gradient vectors for detecting diagonal edges:

Image Processing

The Sobel gradient vector for detecting x
-
direction and y
-
direction edges:

G
1
= (W
2

+ 2W
3

+ W
6

)

(W
4

+ 2W
7

+ W
8
)

G
2
= (W
6

+ 2W
9

+ W
8

)

(W
2

+ 2W
1

+ W
4
)

G
x

= (W
7

+ 2W
8

+ W
9
)

(W
1

+ 2W
2

+ W
3
)

G
y

= (W
3

+ 2W
6

+ W
9

)

(W
1

+ 2W
4

+ W
7
)

-
1

-
2

-
1

-
1

0

1

0

0

0

-
2

0

2

1

2

1

-
1

0

1

for detecting diagonal
edges
:

0

1

2

-
2

-
1

0

-
1

0

1

-
1

0

1

-
2

-
1

0

0

1

2

Image Processing

Examples

of

Sobel

filter

Image Processing

Second
-
order derivative: The Laplacian

2
2
2
2
2
y
f
x
f
f

0

-
1

0

-
1

-
1

-
1

-
1

4

-
1

-
1

8

-
1

0

-
1

0

-
1

-
1

-
1

Image Processing

Second
-
order derivative: The Laplacian

0

0

-
1

0

0

0

-
1

-
2

-
1

0

-
1

-
2

16

-
2

-
1

0

-
1

-
2

-
1

0

0

0

-
1

0

0

The Laplacian is not used in its original
form for edge detection (because of
sensitive to noise).

The Laplacian is combined with
smoothing as a precursor to finding
edges via zero
-
crossing.