Segmentation and Representation - Image Processing...

Preview:

Citation preview

Segmentation and Representation

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Introduction• Image segmentation is the process of partitioning the

digital image into multiple regions that can be

associated with the properties of one or more objects

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Texture Texture provides measures of properties such as

smoothness, coarseness, and regularity.

Texture Based Segmentation

Co-Occurance Matrix Let P be a position operator, and A a k x k matrix.

aij shows the number of times that pixels with gray level zi occur at position given by P relative to points with gray level zj.

Matrix A is called co-occurance matrix and can provide statistical properties of the texture.

Example Assume P is one pixel to the right and one pixel below

Gray level values are : 0, 1, and 2

Image data:

Co-occurance matrix is:

Statistical Moments of Texture Let Matrix C be formed by dividing every element of A by the number

of point pairs that satisfy P.

The following moments are defined to compare textures:

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Level Set Segmentation Instead of manipulating the contour directly, the

contour is embedded as the zero level set of a higher dimensional function called the level-set function y(X, t).

The level-set function is evolved under the control of a differential equation.

At any time, the evolving contour can be obtained by extracting the zero level-set G((X), t) = {y(X, t) = 0} from the output

Zero Set in a Level Set

Example

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Watershed Segmentation Algorithm:

Convert the gray level image into a topographic image where the height of each point is proportional to its gray level intensity.

Punch a hole at each region minimum at let the whole topography be flooded from below.

The points where the water from different regions join are boundaries of the regions

Watershed Segmentation

Example

Example

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Representation The result of segmentation should be represented and

described in a form suitable for further computer processing.

A region can be represented in terms of its external characteristics (boundary).

A region can be represented in terms of its internal characteristics.

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Chain Codes Chain codes are generated by following a boundary in a

clockwise or counter-clockwise direction and assigning a direction to the segments connecting every pair of pixels.

Disadvantage: Can be unacceptably long.

Solution: Re-sampling (down sample) the boundary

Disadvantage: Is starting point dependent

Solution: Normalize the representation string to the smallest integer.

Chain Code Directions

Sample Chain Code

Down Sampling

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Polygonal Approximation A boundary can be represented with arbitrary accuracy

by a polygon.

The approximation is exact when the number of sides is equal to the number of points in the boundary.

Finding a polygonal representation can be very time-consuming.

Minimum Perimeter Polygons

Splitting Techniques

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Signature A signature is a 1D representation of a boundary.

e.g. Plotting distance to centroid as a function of angle

Invariant to translation

Disadvantages:

Rotation and scaling dependant

Defined only for convex regions

Signature Example

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Boundary Segments Decomposing a boundary into segments simplifies

representation.

Convex Hull can be used for decomposition.

A new segment can be started whenever a Convex Hull deficiency is entered or exited.

Boundary Segments Example

Topics Segmentation

Texture Based Segmentation

Level Set Segmentation

Watershed Segmentation

Representation Introduction

Chain Codes

Polygonal Approximations

Signatures

Boundary Segments

Skeletons

Skeleton The structural shape of a region can be represented by

a graph.

The structural graph is obtained by thinning the region and finding the skeleton.

Questions?

Recommended