CSE 554 Lecture 2 Shape Analysis Part I

  • Slides: 35
Download presentation
CSE 554 Lecture 2: Shape Analysis (Part I) Fall 2016 CSE 554 Skeletons Slide

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

Review • Binary pictures – Tresholding grayscale images – Basic operations • Connected component

Review • Binary pictures – Tresholding grayscale images – Basic operations • Connected component labeling • Morphological operators CSE 554 Skeletons Slide 2

Shape analysis • Questions about shapes: – Metrics: length? Width? orientation? – What are

Shape analysis • Questions about shapes: – Metrics: length? Width? orientation? – What are the parts? Microtubules on the cell surface – How similar are two shapes? Sperms of fruit flies CSE 554 Cerebral artery aneurysms Skeletons Monkey skulls Slide 3

Skeletons • Geometry at the center of the object – Compact, and capturing protruding

Skeletons • Geometry at the center of the object – Compact, and capturing protruding shape parts Skeleton of 2 D shapes: 1 D curves CSE 554 Skeleton of 3 D shapes: 1 D curves and 2 D surfaces Skeletons Slide 4

Applications • Computer graphics and vision – Optical character recognition (a) – Shape retrieval

Applications • Computer graphics and vision – Optical character recognition (a) – Shape retrieval (b) – Animating articulated shapes (c) (a) (b) (c) (e) (f) • Bio-medical image analysis – Vessel network analysis (d) – Virtual colonoscopy (e) – Protein modeling (f) (d) CSE 554 Skeletons Slide 5

Medial Axes (MA) • Interior points with multiple closest points on the boundary Object

Medial Axes (MA) • Interior points with multiple closest points on the boundary Object MA CSE 554 Skeletons Slide 6

Medial Axes (MA) • Properties Thin • MA are curves (1 D) in a

Medial Axes (MA) • Properties Thin • MA are curves (1 D) in a 2 D object, and surfaces (2 D) in a 3 D object. 3 D MA 2 D MA CSE 554 Skeletons Slide 7

Medial Axes (MA) • Properties Preserves object’s shape • The object can be reconstructed

Medial Axes (MA) • Properties Preserves object’s shape • The object can be reconstructed from MA and its distances to the boundary CSE 554 Skeletons Slide 8

Medial Axes (MA) • Properties Preserves object’s topology • 2 D: # of connected

Medial Axes (MA) • Properties Preserves object’s topology • 2 D: # of connected components of object and background • 3 D: # of connected components of object and background, and # of tunnels A 2 D shape with 1 object component and 2 background components CSE 554 A 3 D shape with 5 tunnels Skeletons Slide 9

Medial Axes (MA) • Properties Not stable under boundary perturbation CSE 554 Skeletons Slide

Medial Axes (MA) • Properties Not stable under boundary perturbation CSE 554 Skeletons Slide 10

Skeletons • Approximation of medial axes – Roughly corresponds to the stable parts of

Skeletons • Approximation of medial axes – Roughly corresponds to the stable parts of the medial axes – No unique or precise definition (e. g. , application dependent) CSE 554 Skeletons Slide 11

Computing Skeletons • A classical method: thinning – Relatively simple to implement – Can

Computing Skeletons • A classical method: thinning – Relatively simple to implement – Can create curve skeletons in 2 D and curve or surface skeletons in 3 D • What we will cover: – Thinning on binary pictures (this lecture) – Thinning on cell complexes (next lecture) CSE 554 Skeletons Slide 12

Medial Axes (MA) • Grassfire analogy: – Let the object represent a field of

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 CSE 554 Skeletons Slide 13

Medial Axes (MA) • Grassfire analogy: – Let the object represent a field of

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. CSE 554 Skeletons Slide 14

2 D Thinning • Iterative process that shrinks a binary picture to a skeleton

2 D Thinning • Iterative process that shrinks a binary picture to a skeleton – Simulating the “grassfire burning” that defines MA Thinning on a binary picture CSE 554 Skeletons Slide 15

2 D Thinning • Shrink a binary picture by iterative erosion Thinning on a

2 D Thinning • Shrink a binary picture by iterative erosion Thinning on a binary picture CSE 554 Skeletons Slide 16

2 D Thinning • Shrink a binary picture by iterative erosion – Identify pixels

2 D Thinning • Shrink a binary picture by iterative erosion – Identify pixels where the (digital) fire fronts quench Thinning on a binary picture CSE 554 Skeletons Slide 17

2 D Thinning • Shrink a binary picture by iterative erosion – Identify pixels

2 D Thinning • Shrink a binary picture by iterative erosion – Identify pixels where the (digital) fire fronts quench • Two types of pixels Interior pixel End pixel CSE 554 Skeletons Slide 18

2 D Thinning • Border pixels (to be removed by erosion) – Object pixel

2 D 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 Border pixels for 4 -connectivity CSE 554 Border pixels for 8 -connectivity Skeletons Slide 19

2 D Thinning • Curve-end pixels – Object pixels lying at the ends of

2 D 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 CSE 554 Skeletons Slide 20

2 D Thinning • Curve-end pixels criteria – Object pixel c is a curve-end

2 D 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 CSE 554 Skeletons Slide 21

2 D Thinning • Simple pixels – Object pixels whose removal from the object

2 D Thinning • Simple pixels – Object pixels whose removal from the object does not change topology (i. e. , # of components of object and background) Simple! 2 1 4 1 2 3 O: 1 B: 1 (using 8 -connectivity for object, 4 -connectivity for background) O: 1 B: 1 4 3 O: 1 B: 2 CSE 554 O: 2 B: 1 Skeletons O: 1 B: 1 Slide 22

2 D Thinning • Simple pixels criteria – Object pixel p is simple if

2 D 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 3 x 3 neighborhood of p. Simple! 4 1 2 3 (using 8 -connectivity for object, 4 -connectivity for background) CSE 554 1 1 2 2 O: 1 B: 1 O: 1 B: 2 O: 2 B: 1 3 3 4 4 O: 1 B: 2 O: 1 B: 3 O: 1 B: 1 Skeletons Slide 23

2 D Thinning • Simple pixels criteria – Object pixel p is simple if

2 D 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 3 x 3 neighborhood of p. s s s s All simple pixels CSE 554 Skeletons Slide 24

2 D Thinning • Putting together: Removable pixels – Border pixels that are simple

2 D Thinning • Putting together: Removable pixels – Border pixels that are simple and not curve-end s s s s b b b b b s Border pixels Simple pixels c Curve-end pixels (8 -conn for object) Removal pixels CSE 554 Skeletons Slide 25

2 D Thinning • Algorithm (attempt) 1 – Simultaneous removal of all removable points

2 D 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 CSE 554 Skeletons Slide 26

2 D Thinning • Algorithm (attempt) 1 – Simultaneous removal of all removable points

2 D Thinning • Algorithm (attempt) 1 – Simultaneous removal of all removable points (“Parallel thinning”) CSE 554 Skeletons Slide 27

2 D Thinning • Why does parallel thinning breaks topology? – Simple pixels, when

2 D Thinning • Why does parallel thinning breaks topology? – Simple pixels, when removed together, may change topology CSE 554 s s s s Skeletons Slide 28

2 D Thinning • Algorithm 2 – Sequentially visit each removable pixel and check

2 D 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 CSE 554 Skeletons Slide 29

2 D Thinning • Algorithm 2 – Sequentially visit each removable pixel and check

2 D Thinning • Algorithm 2 – Sequentially visit each removable pixel and check its simple-ness before removing the pixel. (“Serial Thinning”) Serial thinning CSE 554 Skeletons Slide 30

2 D Thinning • Algorithm 2 – Sequentially visit each removable pixel and check

2 D 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 CSE 554 Skeletons Slide 31

3 D Thinning • Identifying removable voxels – Border voxels • Similar to 2

3 D Thinning • Identifying removable voxels – Border voxels • Similar to 2 D: object voxels connected to at least one background voxel – Simple voxels x • Harder to characterize than 2 D: 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 2 D Setting voxel x to background creates a “tunnel” in the object (using 26 -conn for object) • Surface-end criteria are much harder to describe (e. g. , requires a table look-up) CSE 554 Skeletons Slide 32

3 D Thinning • Two kinds of skeletons – Curve skeletons: only curve-end voxels

3 D Thinning • Two kinds of skeletons – Curve skeletons: only curve-end voxels are preserved during thinning – Surface skeletons: both curve-end Object and surface-end voxels are preserved (see further readings) Curve skeleton Surface skeleton Method of [Palagyi and Kuba, 1999] CSE 554 Skeletons Slide 33

Skeleton Pruning • Thinning is sensitive to boundary noise – Due to the instability

Skeleton Pruning • Thinning is sensitive to boundary noise – Due to the instability of medial axes • Skeleton pruning – During thinning Object with boundary noise • E. g. , using more selective criteria for end pixels (voxels) – After thinning • E. g. , based on branch length – See Further Readings Resulting skeleton CSE 554 Skeletons Slide 34

Further Readings on: Binary Pictures, MA and Thinning • Books – “Digital Geometry: geometric

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 2 D methods – “A Parallel 3 D 12 -Subiteration Thinning Algorithm”, by Palagyi and Kuba (1999) • Includes a good survey of 3 D thinning methods – “Pruning medial axes”, by Shaked and Bruckstein (1998) • A survey of MA and skeleton pruning methods CSE 554 Skeletons Slide 35