電腦視覺 computer and robot vision i

54
電電電電 Computer and Robot Vision I Chapter2: Binary Machine Vision: Thresholding and Segmentation Instructor: Shih-Shinh Huang 1

Upload: adina

Post on 24-Feb-2016

74 views

Category:

Documents


0 download

DESCRIPTION

電腦視覺 Computer and Robot Vision I. Chapter2: Binary Machine Vision: Thresholding and Segmentation Instructor: Shih- Shinh Huang. Contents. Introduction Thresholding Connected Components Labeling Signature Segmentation and Analysis. Computer and Robot Vision I. Introduction. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 電腦視覺 Computer  and Robot Vision I

1

電腦視覺Computer and Robot Vision

I

Chapter2: Binary Machine Vision:

Thresholding and Segmentation

Instructor: Shih-Shinh Huang

Page 2: 電腦視覺 Computer  and Robot Vision I

2

Contents

Introduction

Thresholding

Connected Components Labeling

Signature Segmentation and Analysis

Page 3: 電腦視覺 Computer  and Robot Vision I

3

Computer and Robot Vision I

2.1 Introduction

Introduction

Page 4: 電腦視覺 Computer  and Robot Vision I

4

Binary Machine Vision

Binary Image Binary Value 1: Part of Object Binary Value 0: Background Pixel

Definition of Binary Machine Vision Generation and analysis of such a binary image

2.1 Introduction

Page 5: 電腦視覺 Computer  and Robot Vision I

5

Binary Machine Vision

Thresholding It is the first step of binary machine vision It is a labeling operation

Connected Components / Signature Analysis They are multilevel vision grouping techniques. They make a transformation from image pixels to

more complex units.• Regions

• Segments

2.1 Introduction

Page 6: 電腦視覺 Computer  and Robot Vision I

6

Computer and Robot Vision I

2.2 Thresholding

Introduction

Page 7: 電腦視覺 Computer  and Robot Vision I

7

Introduction

What is Thresholding ? It is a labeling operation. It assigns a binary value to each pixel.

• Binary Value 1: pixels have higher intensity values

• Binary Value 0: pixels have higher intensity values

2.2 Thresholding

128T

Page 8: 電腦視覺 Computer  and Robot Vision I

8

Introduction

Mathematical Formulation

: row and column

: gray-level intensity image

: intensity threshold

: binary intensity image

2.2 Thresholding

TcrIifTcrIif

crB),(0),(1

),(

),( cr

(.,.)I

(.,.)B

T

Page 9: 電腦視覺 Computer  and Robot Vision I

9

Introduction2.2 Thresholding

(.,.)I

5T

(.,.)BHow to select an appropriate threshold ?

Page 10: 電腦視覺 Computer  and Robot Vision I

10

Introduction

Approaches Global Thresholding: use a global value to make the pixel

distinction in the image.

Local Thresholding: use spatial varying threshold to label

the local pixels.

2.2 Thresholding

T

Image Image

1T 2T

3T 4T

Page 11: 電腦視覺 Computer  and Robot Vision I

11

Histogram

Definition of Histogram

Histogram Probability

2.2 Thresholding

}),(|),{(#)( mcrIcrmh

(.)h

number of elements m spans each gray level value e.g. 0 - 255

255,...,1,0:)( IIP

CRIhIP

)()(

Page 12: 電腦視覺 Computer  and Robot Vision I

12

Histogram

Examples

2.2 Thresholding

)(mh

)(mh

Page 13: 電腦視覺 Computer  and Robot Vision I

13

Histogram2.2 Thresholding

)(mh

Page 14: 電腦視覺 Computer  and Robot Vision I

Histogram

14

2.2 Thresholding

T=110 T=130 T=150 T=170

Page 15: 電腦視覺 Computer  and Robot Vision I

15

Within-Group Variance

Observations A group is a set of pixels with intensity homogeneity. Homogeneity is measured by the use of variance

• High homogeneity group has low variance

• Low homogeneity group has high variance

Objective Select a dividing score such that the weighted sum

of the within-group variances is minimized.

2.2 Thresholding

Page 16: 電腦視覺 Computer  and Robot Vision I

16

Within-Group Variance

Definition: weighted sum of group variances

: probability for the group with values

: probability for the group with values : variance for the group with values : variance for the group with values

)()()()()( 222

211

2 ttqttqtW

)(22 t

)(21 t

)(1 tq

)(2 tq

t

t

t

t

2.2 Thresholding

Page 17: 電腦視覺 Computer  and Robot Vision I

17

Within-Group Variance

Objective Formulation

Find a threshold which minimizes

2.2 Thresholding

*t )(2 tW

)(minarg 2* tt W

t

i

iPtq1

1 )()(

t

i

tqiiPt1

11 )(/)()(

I

ti

iPtq1

2 )()(

I

ti

tqiiPt1

22 )(/)()(

)(/)()]([)( 12

11

21 tqiPtit

t

i

)(/)()]([)( 22

222 tqiPtit

I

iti

Page 18: 電腦視覺 Computer  and Robot Vision I

18

Within-Group Variance

Implementation Issue Step1: For t=0,…,255

Step2: Compute , , , and

Step3: Compute

Step4: If is less than the value in the

previous iteration

2.2 Thresholding

)(22 t)(21 t)(1 tq )(2 tq

)()()()()( 222

211

2 ttqttqtW

)(2 tW

)(2 tW

tt *

All variables should be re-compute at each iteration.

Page 19: 電腦視覺 Computer  and Robot Vision I

19

Within-Group Variance

Implementation Issue Speed-Up Formulation

2.2 Thresholding

I

i

iPi1

22 )()(

T

i

iiP1

)(

T

ti

t

i

iPttiiPtti1

222

1

211

2 )())()(()())()((

.......)())(())())(((2))((1

2111

21

2

t

i

iPtttiti

Page 20: 電腦視覺 Computer  and Robot Vision I

20

Within-Group Variance

Implementation Issue Speed-Up Formulation

2.2 Thresholding

.......)())(())())(((2))((1

2111

21

2

t

i

iPtttiti

t

i

iPtti1

11 0)())())(((

t

i

iPtti1

22

22 )())(())((

t

i

iPtti1

21

21

2 )())(())((

Page 21: 電腦視覺 Computer  and Robot Vision I

21

Within-Group Variance

Implementation Issue Speed-Up Formulation

2.2 Thresholding

)(])([)())(( 12

11

21

2 tqtiPtit

i

)(])([)())(( 22

21

22 tqtiPti

I

ti

)()()()( 222

211

2 ttqttq

2222

11 ])()[(])()[( ttqttq

Page 22: 電腦視覺 Computer  and Robot Vision I

22

Within-Group Variance

Implementation Issue Speed-Up Formulation

2.2 Thresholding

)()()()( 222

211

2 ttqttq

2222

11 ])()[(])()[( ttqttq

2122

1122 ])()[(])()[( ttqttqw

)]()()][(1)[( 211122 tttqtqw

)()()()( 2211 ttqttq

Page 23: 電腦視覺 Computer  and Robot Vision I

23

Within-Group Variance

Implementation Issue Speed-Up Formulation

2.2 Thresholding

)]()()][(1)[( 211122 tttqtqw

constant minimize maximize

)]()()][(1)[(maxarg 2111* tttqtqt

Page 24: 電腦視覺 Computer  and Robot Vision I

24

Within-Group Variance

Implementation Issue Speed-Up Formulation

• We have recursive form to compute optimal threshold.

2.2 Thresholding

)]()()][(1)[(maxarg 2111* tttqtqt

)1()()1( 11 tPtqtq

)1()1()1()()()1(

1

111

tqtPtttqt

Page 25: 電腦視覺 Computer  and Robot Vision I

25

Within-Group Variance

Example

2.2 Thresholding

Page 26: 電腦視覺 Computer  and Robot Vision I

26

Kullback Information Distance

Assumption The observations come from a weighted mixture of

two Gaussians distributions.

• Gaussian Distribution of Background

• Gaussian Distribution of Object

2.2 Thresholding

),( 211 u

),( 222 u

2

2

22

1

1 )(21

2

2)(

21

1

1

22)(

ii

eqeqif

Page 27: 電腦視覺 Computer  and Robot Vision I

27

Kullback Information Distance2.2 Thresholding

),( 211 u ),( 2

22 u

Background Gaussian Distribution

ObjectGaussian Distribution

Page 28: 電腦視覺 Computer  and Robot Vision I

28

Kullback Information Distance

Objective Formulation Determine a threshold T that results in two Gaussian

distributions which minimize Kullback divergence

• P(I) : observed histogram distribution

• f(I) : a mixture of Gaussian distributions determined by T

2.2 Thresholding

])()(log[)(

1 ifiPiPJ

I

i

2

2

22

1

1 )(21

2

2)(

21

1

1

22)(

ii

eqeqif

Page 29: 電腦視覺 Computer  and Robot Vision I

29

Kullback Information Distance

Objective Formulation Known Parameter: Observed Histogram

Unknown Parameter: Two Gaussian Distributions

2.2 Thresholding

)(),...2(),1( IPPP

(.)P

2

2

22

1

1 )(21

2

2)(

21

1

1

22)(

ii

eqeqif

),,(),,,( 222111 qq

Page 30: 電腦視覺 Computer  and Robot Vision I

30

Kullback Information Distance

Solution Derivation

2.2 Thresholding

])()(log[)(

1 ifiPiPJ

I

i

)(log)(log)(1

ifiPiPI

i

)(log)()(log)(11

ifiPiPiPI

i

I

i

Constant

Page 31: 電腦視覺 Computer  and Robot Vision I

31

Kullback Information Distance

Solution Derivation

Assumption: The modes are well separated.

2.2 Thresholding

)(log)(minarg])()(log[)(minarg

11

ifiPifiPiP

I

i

I

i

tieq

tieq

if i

i

2

2

2

2

1

1

)(21

2

2

)(21

1

1

2

2)(

Page 32: 電腦視覺 Computer  and Robot Vision I

32

Kullback Information Distance

Solution Derivation

2.2 Thresholding

)(log)()(1

ifiPtHI

i

2

2

22

1

1 )(21

2

2

1

)(21

1

1

1 2)(

2)()(

iI

ti

it

i

eqiPeqiPtH

2211 loglog22log1)( qqqqtH

2211 loglog21 qq

Page 33: 電腦視覺 Computer  and Robot Vision I

33

Kullback Information Distance

Implementation Issue Step1: For t=0,…,255

Step2: Compute , , , and

Step3: Compute

Step4: If is less than the value in the

previous iteration

2.2 Thresholding

)(22 t)(21 t)(1 tq )(2 tq

)(tH

tt *

)(log)()(1

ifiPtHI

i

)(tH

Page 34: 電腦視覺 Computer  and Robot Vision I

34

Kullback Information Distance

Example

2.2 Thresholding

Page 35: 電腦視覺 Computer  and Robot Vision I

35

Kullback Information Distance2.2 Thresholding

Within Group Variance (Otsu)

Kullback Information (Kittler-Illingworth)

Page 36: 電腦視覺 Computer  and Robot Vision I

36

Computer and Robot Vision I

2.3 Connected Component Labeling

Introduction

Page 37: 電腦視覺 Computer  and Robot Vision I

37

Introduction

Description Connected Components labeling is a grouping

operation.

It performs the unit change from pixel to region or segment.

All pixels are given the same identifier • Have value binary 1

• Connect to each other

2.3 Connected Component Labeling

Page 38: 電腦視覺 Computer  and Robot Vision I

38

Introduction

Terminology label: unique name or index of the region connected components labeling: a grouping

operation pixel property: position, gray level or brightness

level region property: shape, bounding box, position,

intensity statistics

2.3 Connected Component Labeling

Page 39: 電腦視覺 Computer  and Robot Vision I

39

Connected Component Operators

Definition of Connected Component

Two pixels and belong to the same connected component if there is a sequence of 1-pixels , where

• are neighbor

2.3 Connected Component Labeling

qpC),...,( 10 nppp

pp 0qpn

nipp ii ,...,1:,1

Page 40: 電腦視覺 Computer  and Robot Vision I

40

Connected Component Operators

Neighborhood Types

2.3 Connected Component Labeling

4-connected

8-connectedOriginal Image Connected

Components

Page 41: 電腦視覺 Computer  and Robot Vision I

41

Connected Component Algorithms

Common Features Process a row of image at a time Assign a new labels to the first pixel of each

component. Propagate the label of a pixel to its neighbors to

the right or below it.

2.3 Connected Component Labeling

Page 42: 電腦視覺 Computer  and Robot Vision I

42

Connected Component Algorithms

Common Features

2.3 Connected Component Labeling

• What label should be assigned to A• How does the algorithm keep track of the

equivalence of two labels• How does the algorithm use the equivalence

information to complete the processing

Page 43: 電腦視覺 Computer  and Robot Vision I

43

Algorithm1: Iterative Algorithm

Algorithm Steps Step1 (Initialization): Assign an unique label to

each pixel.

Step2 (Iteration) : Perform a sequence of top-down and bottom-up label propagation.

2.3 Connected Component Labeling

• Use no auxiliary storage• Computational Expensive

Page 44: 電腦視覺 Computer  and Robot Vision I

44

Algorithm2: Classic Algorithm

Two-Pass Algorithm Pass 1:

• Perform label assignment and label propagation• Construct the equivalence relations between labels

when two different labels propagate to the same pixel.

• Apply resolve function to find the transitive closure of all equivalence relations.

Pass 2:

• Perform label translation.

2.3 Connected Component Labeling

Page 45: 電腦視覺 Computer  and Robot Vision I

45

Algorithm2: Classic Algorithm

Example:

2.3 Connected Component Labeling

{2=4}{3=5}{1=5}

Page 46: 電腦視覺 Computer  and Robot Vision I

46

Algorithm2: Classic Algorithm

Example: Resolve Function

2.3 Connected Component Labeling

{2=4}{3=5}{1=5} {2=4}{1=3=5}

• Computational Efficiency • Need a lot of space to store equivalence

Page 47: 電腦視覺 Computer  and Robot Vision I

47

Computer and Robot Vision I

2.4 Signature Segmentation and

Analysis

Introduction

Page 48: 電腦視覺 Computer  and Robot Vision I

48

Introduction

Description Signature analysis perform unit

change from the pixel to the segment. It was firstly used in character

recognition Definition of Signature

The signature, which is a projection, is the histogram of the non-zero pixels of the masked image.

2.4 Signature Segmentation and Analysis

Page 49: 電腦視覺 Computer  and Robot Vision I

49

Introduction

General Signatures Vertical Projection Horizontal Projection Diagonal Projection

2.4 Signature Segmentation and Analysis

},1),(|),{(#)( rxyxyxrh

},1),(|),{(#)( cyyxyxrv

Page 50: 電腦視覺 Computer  and Robot Vision I

50

Signature Segmentation

Steps Thresholding: generate the binary image.

Projection Computation: compute the vertical, horizontal, or diagonal projections.

Projection Segmentation: divide the image into several segments or regions according to the signatures.

2.4 Signature Segmentation and Analysis

Page 51: 電腦視覺 Computer  and Robot Vision I

51

Signature Segmentation2.4 Signature Segmentation and Analysis

Page 52: 電腦視覺 Computer  and Robot Vision I

52

Signature Segmentation2.4 Signature Segmentation and Analysis

Page 53: 電腦視覺 Computer  and Robot Vision I

53

Signature Segmentation2.4 Signature Segmentation and Analysis

OCR: Optical Character Recognition

MICR: Magnetic Ink Character Recognition

Page 54: 電腦視覺 Computer  and Robot Vision I

The End

Computer and Robot Vision I