cse 554 lecture 2: shape analysis (part i)taoju/cse554/lectures/lect02_thinning.pdf · cse554...

35
CSE554 Skeletons Slide 1 CSE 554 Lecture 2: Shape Analysis (Part I) Fall 2016

Upload: others

Post on 20-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 1

CSE 554

Lecture 2: Shape Analysis

(Part I)

Fall 2016

Page 2: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 2

Review

• Binary pictures

– Tresholding grayscale images

– Basic operations

• Connected component labeling

• Morphological operators

Page 3: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 3

Shape analysis

• Questions about shapes:

– Metrics: length? Width? orientation?

– What are the parts?

– How similar are two shapes? Microtubules on the cell surface

Sperms of fruit flies Cerebral artery aneurysms Monkey skulls

Page 4: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 4

Skeletons

• Geometry at the center of the object

– Compact, and capturing protruding shape parts

Skeleton of 2D shapes: 1D curvesSkeleton of 3D shapes: 1D curves and

2D surfaces

Page 5: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 5

Applications

• Computer graphics and vision

– Optical character recognition (a)

– Shape retrieval (b)

– Animating articulated shapes (c)

• Bio-medical image analysis

– Vessel network analysis (d)

– Virtual colonoscopy (e)

– Protein modeling (f)

(d)

(b) (c)

(e) (f)

(a)

Page 6: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 6

Medial Axes (MA)

• Interior points with multiple closest points on the boundary

Object

MA

Page 7: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 7

Medial Axes (MA)

• Properties

Thin

• MA are curves (1D) in a 2D object, and surfaces (2D) in a 3D object.

2D MA 3D MA

Page 8: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 8

Medial Axes (MA)

• Properties

Preserves object’s shape

• The object can be reconstructed from MA and its distances to the boundary

Page 9: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 9

Medial Axes (MA)

• Properties

Preserves object’s topology

• 2D: # of connected components of object and background

• 3D: # of connected components of object and background, and # of tunnels

A 2D shape with 1 object component

and 2 background components A 3D shape with 5 tunnels

Page 10: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 10

Medial Axes (MA)

• Properties

Not stable under boundary perturbation

Page 11: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 11

Skeletons

• Approximation of medial axes

– Roughly corresponds to the stable parts of the medial axes

– No unique or precise definition (e.g., application dependent)

Page 12: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 12

Computing Skeletons

• A classical method: thinning

– Relatively simple to implement

– Can create curve skeletons in 2D and curve or surface skeletons in 3D

• What we will cover:

– Thinning on binary pictures (this lecture)

– Thinning on cell complexes (next lecture)

Page 13: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 13

Medial Axes (MA)

• Grassfire analogy:

– Let the object represent a field of grass. A fire starts at the field boundary,

and burns across the field at uniform speed.

– MA are where the fire fronts meet.

Object

MA

Page 14: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 14

Medial Axes (MA)

• Grassfire analogy:

– Let the object represent a field of grass. A fire starts at the field boundary,

and burns across the field at uniform speed.

– MA are where the fire fronts meet.

Page 15: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 15

2D Thinning

• Iterative process that shrinks a binary picture to a skeleton

– Simulating the “grassfire burning” that defines MA

Thinning on a binary picture

Page 16: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 16

2D Thinning

• Shrink a binary picture by iterative erosion

Thinning on a binary picture

Page 17: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 17

2D Thinning

• Shrink a binary picture by iterative erosion

– Identify pixels where the (digital) fire fronts quench

Thinning on a binary picture

Page 18: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 18

2D Thinning

• Shrink a binary picture by iterative erosion

– Identify pixels where the (digital) fire fronts quench

• Two types of pixels

End

pixel

Interior

pixel

Page 19: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 19

2D Thinning

• Border pixels (to be removed by erosion)

– Object pixel p is on the border if and only if p is connected to some

background pixel

• 4 or 8 connectivity: erosion by a cross or a square

b b

b b b

b b b

b

Border pixels for 4-connectivity

b b b

b b b

b b b

b

Border pixels for 8-connectivity

Page 20: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 20

2D Thinning

• Curve-end pixels

– Object pixels lying at the ends of curves, whose removal would shrink the

skeleton (and hence losing shape information).

c

Curve-end pixel

Page 21: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 21

2D Thinning

• Curve-end pixels criteria

– Object pixel c is a curve-end pixel if and only if c is connected to exactly

one object pixel.

c

Curve-end pixel and its connected pixel

Page 22: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 22

2D Thinning

• Simple pixels

– Object pixels whose removal from the object does not change topology

(i.e., # of components of object and background)

1 2 3

4

O:1 B:1

(using 8-connectivity for object,

4-connectivity for background)

O:1 B:1

Simple!

O:2 B:1

O:1 B:2 O:1 B:1

1 2

3

4

Page 23: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 23

2D Thinning

• Simple pixels criteria

– Object pixel p is simple if and only if setting p to background does not

change the # of components of either the object or background in the 3x3

neighborhood of p.

1 1

O:1 B:1 O:1 B:1

2 2

O:1 B:2 O:2 B:1

O:1 B:2 O:1 B:3 O:1 B:1 O:1 B:1

3 3 4 4

1 2 3

4

(using 8-connectivity for object,

4-connectivity for background)

Simple!

Page 24: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 24

2D Thinning

• Simple pixels criteria

– Object pixel p is simple if and only if setting p to background does not

change the # of components of either the object or background in the 3x3

neighborhood of p.

s

s s s

s s s

s

All simple pixels

Page 25: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 25

2D Thinning

• Putting together: Removable pixels

– Border pixels that are simple and not curve-end

s

s s s

s s s

s cb b b

b b b

b b b

b

Border pixels Simple pixels Curve-end pixels

Removal pixels

(8-conn for object)

Page 26: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 26

2D Thinning

• Algorithm (attempt) 1

– Simultaneous removal of all removable points (“Parallel thinning”)

// Parallel thinning on a binary image I

1. Repeat:

1. Collect all removable pixels as S

2. If S is empty, Break.

3. Set all pixels in S to be background in I

2. Output I

Page 27: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 27

2D Thinning

• Algorithm (attempt) 1

– Simultaneous removal of all removable points (“Parallel thinning”)

Page 28: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 28

2D Thinning

• Why does parallel thinning breaks topology?

– Simple pixels, when removed together, may change topology

s s s s

s s s s

Page 29: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 29

2D Thinning

• Algorithm 2

– Sequentially visit each removable pixel and check its simple-ness before

removing the pixel. (“Serial Thinning”)

// Serial thinning on a binary image I

1. Repeat:

1. Collect all border pixels as S

2. If S is empty, Break.

3. Repeat for each pixel x in S (in certain order):

1. If x is currently simple and not curve-end, set x to

be background in I

2. Output I

Page 30: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 30

2D Thinning

• Algorithm 2

– Sequentially visit each removable pixel and check its simple-ness before

removing the pixel. (“Serial Thinning”)

Serial thinning

Page 31: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 31

2D Thinning

• Algorithm 2

– Sequentially visit each removable pixel and check its simple-ness before

removing the pixel. (“Serial Thinning”)

– Result is affected by the visiting “sequence”

Serial thinning with two different visiting sequences of removable pixels

Page 32: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 32

3D Thinning

• Identifying removable voxels

– Border voxels

• Similar to 2D: object voxels connected to

at least one background voxel

– Simple voxels

• Harder to characterize than 2D:

Maintaining # of connected components

is not sufficient (need to consider # of

tunnels too)

– Curve-end and surface-end voxels

• Curve-end criteria same as in 2D

• Surface-end criteria are much harder to

describe (e.g., requires a table look-up)

x

Setting voxel x to background

creates a “tunnel” in the object

(using 26-conn for object)

Page 33: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 33

3D Thinning

• Two kinds of skeletons

– Curve skeletons: only curve-end

voxels are preserved during thinning

– Surface skeletons: both curve-end

and surface-end voxels are

preserved

(see further readings)

Method of [Palagyi and Kuba, 1999]

Object

Curve

skeleton

Surface

skeleton

Page 34: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 34

Skeleton Pruning

• Thinning is sensitive to boundary

noise

– Due to the instability of medial axes

• Skeleton pruning

– During thinning

• E.g., using more selective criteria for end

pixels (voxels)

– After thinning

• E.g., based on branch length

– See Further Readings

Object with boundary noise

Resulting skeleton

Page 35: CSE 554 Lecture 2: Shape Analysis (Part I)taoju/cse554/lectures/lect02_Thinning.pdf · CSE554 Skeletons Slide 35 Further Readings on: Binary Pictures, MA and Thinning • Books –

CSE554 Skeletons Slide 35

Further Readings on:

Binary Pictures, MA and Thinning

• Books

– “Digital Geometry: geometric methods for digital picture analysis”, by Klette and Rosenfeld

(2004)

– “Medial representations: mathematics, algorithms and applications”, by Siddiqi and Pizer (2008)

• Papers

– “Digital topology: introduction and survey”, by Kong and Rosenfeld (1989)

• Theories of binary pictures

– “Thinning methodologies - a comprehensive survey”, by Lam et al. (1992)

• A survey of 2D methods

– “A Parallel 3D 12-Subiteration Thinning Algorithm”, by Palagyi and Kuba (1999)

• Includes a good survey of 3D thinning methods

– “Pruning medial axes”, by Shaked and Bruckstein (1998)

• A survey of MA and skeleton pruning methods