91
Digital Image Processing Image Analysis: Part 2 IMESI - 2009 [email protected]

DIP-5 en ImageAnalysis Part2-Very Nice

Embed Size (px)

DESCRIPTION

d

Citation preview

Page 1: DIP-5 en ImageAnalysis Part2-Very Nice

Digital ImageProcessing

Image Analysis: Part 2

IMESI - 2009

[email protected]

Page 2: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 2

Summary

I. IntroductionII. Digital image fundamentalsIII. Discrete 2D processingIV. Image improvement

V. Image analysis (6 houres)

Page 3: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 3

Image analysis

Gonzales : Digital Image Processing, Prentice Hall (3th Ed.)

� Books

Page 4: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 4

Summary

V. Image Analysis

� Part 1� Mathematical Morphology� Contour detection and analysis

� Part 2� Region-based segmentation

� Part 3� Shape analysis� Shape recognition

Page 5: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 5

Summary

V. Image Analysis

� Part 1� Mathematical Morphology� Contour detection and analysis

� Part 2� Region-based segmentation

� Part 3� Shape analysis� Shape recognition

Page 6: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 6

Region-based segmentation

� Context� Definition� Principle

� Two kinds of methodology� Histogram based� Region transformation based

Page 7: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 7

� Context - Definition

Region-based segmentation

Segmentation consists on partitioning an image into a set of connected regions

Find homogeneous regions according to a specific criterion (intensity value, texture)

Page 8: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 8

Region-based segmentation

The aim of region detection is to provide the possibility to characterize the detected object by parameter analysis (shape, position, size...)

� Context - Definition

Example of the need of region-based segmentation:

object labeling

Page 9: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 9

Region-based segmentation

� Context - Definition

Region segmentation is an ill-posed problem

The choice of a particular method is linked to

the nature of the image (texture, intensity, ...)

the shape of the object to extract

The time constrain

the perfect segmentation does not exist

Page 10: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 10

Region-based segmentation

Region-based Segmentation

Regiontransformation

based

- Region growing

- Region splitting

� Context – Two different methods

- Region merging

Histogram based

Page 11: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 11

Region-based segmentation

� Context� Definition� Principle

� Two kinds of methodology� Histogram based� Region transformation based

Page 12: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 12

Region-based segmentation

Region-based Segmentation

Regiontransformation

based

- Region growing

- Region splitting

� Context – Two different methods

- Region merging

Histogram based

Page 13: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 13

� Histogram-based methods - Example

Region-based segmentation

The main idea is to individually select each specific histogram mode, and then select the corresponding area by thresholding

Separation of A and B classesfrom class C (background)

Initial image

A

B

C

Page 14: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 14

Region-based segmentation

� Histogram-based methods - Example

Detection of the corresponding area by thresholding

Extraction of a specific mode of the histogram

Among the different area that contribute to this mode, select the biggest connected region from high level tools (for example: mathematical morphology)

Apply this scheme for each histogram mode

Page 15: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 15

Region-based segmentation

� Histogram-based methods - Example

Extraction of a specific mode of the histogram

Initial image Image histogram

Page 16: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 16

Region-based segmentation

� Histogram-based methods - Example

Extraction of a specific mode of the histogram

Page 17: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 17

Region-based segmentation

� Histogram-based methods - Example

Detection of the corresponding area from thresholding

Page 18: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 18

Region-based segmentation

� Histogram-based methods - Example

Selection of the biggest connected region

Proposed scheme

- Hysteresis thresholding

- Mathematical morphology(erode, fill, close)

Page 19: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 19

Region-based segmentationCorresponding matlab code

% Read imageimg = imread(‘brain.png');img = double(img(:,:,1));

% Selection of pixels corresponding to the selected histogram modee = find(img>118);mask = zeros(size(img));mask(e) = 255;

% Region erosion through math morphse = strel('disk',3);maskErode = imerode(mask,se);

% Hysteresis thresholdingmaskHyst = hysteresis(mask,maskErode);

% Fill holes through math morphomaskFill = imfill(maskHyst,'holes');

% Region closing through math morphose = strel('disk',1);final = imclose(maskFill,se);

Page 20: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 20

Region-based segmentationCorresponding matlab code

Selection of pixels mode

mask

% Read imageimg = imread(‘brain.png');img = double(img(:,:,1));

% Selection of pixels corresponding to the selected histogram modee = find(img>118);mask = zeros(size(img));mask(e) = 255;

% Region erosion through math morphse = strel('disk',3);maskErode = imerode(mask,se);

% Hysteresis thresholdingmaskHyst = hysteresis(mask,maskErode);

% Fill holes through math morphomaskFill = imfill(maskHyst,'holes');

% Region closing through math morphose = strel('disk',1);final = imclose(maskFill,se);

Page 21: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 21

Region-based segmentationCorresponding matlab code

Region erosion

maskErode

% Read imageimg = imread(‘brain.png');img = double(img(:,:,1));

% Selection of pixels corresponding to the selected histogram modee = find(img>118);mask = zeros(size(img));mask(e) = 255;

% Region erosion through math morphse = strel('disk',3);maskErode = imerode(mask,se);

% Hysteresis thresholdingmaskHyst = hysteresis(mask,maskErode);

% Fill holes through math morphomaskFill = imfill(maskHyst,'holes');

% Region closing through math morphose = strel('disk',1);final = imclose(maskFill,se);

Page 22: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 22

Region-based segmentationCorresponding matlab code

Hysteresis thresholding

maskHyst

% Read imageimg = imread(‘brain.png');img = double(img(:,:,1));

% Selection of pixels corresponding to the selected histogram modee = find(img>118);mask = zeros(size(img));mask(e) = 255;

% Region erosion through math morphse = strel('disk',3);maskErode = imerode(mask,se);

% Hysteresis thresholdingmaskHyst = hysteresis(mask,maskErode);

% Fill holes through math morphomaskFill = imfill(maskHyst,'holes');

% Region closing through math morphose = strel('disk',1);final = imclose(maskFill,se);

Page 23: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 23

Region-based segmentationCorresponding matlab code

Fill holes

maskFill

% Read imageimg = imread(‘brain.png');img = double(img(:,:,1));

% Selection of pixels corresponding to the selected histogram modee = find(img>118);mask = zeros(size(img));mask(e) = 255;

% Region erosion through math morphse = strel('disk',3);maskErode = imerode(mask,se);

% Hysteresis thresholdingmaskHyst = hysteresis(mask,maskErode);

% Fill holes through math morphomaskFill = imfill(maskHyst,'holes');

% Region closing through math morphose = strel('disk',1);final = imclose(maskFill,se);

Page 24: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 24

Region-based segmentationCorresponding matlab code

Region closing

final

% Read imageimg = imread(‘brain.png');img = double(img(:,:,1));

% Selection of pixels corresponding to the selected histogram modee = find(img>118);mask = zeros(size(img));mask(e) = 255;

% Region erosion through math morphse = strel('disk',3);maskErode = imerode(mask,se);

% Hysteresis thresholdingmaskHyst = hysteresis(mask,maskErode);

% Fill holes through math morphomaskFill = imfill(maskHyst,'holes');

% Region closing through math morphose = strel('disk',1);final = imclose(maskFill,se);

Page 25: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 25

Region-based segmentation� Histogram-based methods - Example

Page 26: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 26

Region-based segmentation

� Histogram-based methods - Example

Extraction of a specific mode of the histogram

Page 27: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 27

Region-based segmentation

� Histogram-based methods - Example

Detection of the corresponding area from thresholding

Page 28: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 28

Region-based segmentation

� Histogram-based methods - Example

Selection of the biggest connected region

Proposed scheme

- Hysteresis thresholding

- Mathematical morphology (erode, close)

Page 29: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 29

Region-based segmentation

� Histogram-based methods - Example

Extraction of a specific mode of the histogram

Page 30: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 30

Region-based segmentation

� Histogram-based methods - Example

Detection of the corresponding area from thresholding

Page 31: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 31

Region-based segmentation

� Histogram-based methods - Example

Selection of the biggest connected region

Proposed scheme

- Hysteresis thresholding

- Mathematical morphology (erode, close)

Page 32: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 32

Region-based segmentation

� Histogram-based methods - Example

Extraction of a specific mode of the histogram

Page 33: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 33

Region-based segmentation

� Histogram-based methods - Example

Detection of the corresponding area from thresholding

Page 34: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 34

Region-based segmentation

� Histogram-based methods - Example

Selection of the biggest connected region

Proposed scheme

- Mathematical morphology (erode, fill holes)

Page 35: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 35

Region-based segmentation

� Histogram-based methods - Example

Final result

Initial image Segmented image

Page 36: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 36

Region-based segmentation

What is the best way to choose a threshold value ?

� Histogram-based methods – choice of the threshold value

There exist a lot of methods based on probability

Example: thresholding from learning

Page 37: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 37

Region-based segmentation

Example: thresholding from learning

Goal: Separate the two modes, by choosing the minimum histogram value between two extremities

thresh = 94

back

object

� Histogram-based methods – choice of the threshold value

Page 38: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 38

Region-based segmentation

Model each mode through a priori distributions (for example two Gaussian models p1 et p2)

Maximization of the following energy function

1 20( ) ( ) ( )

s N

ss p n dn p n dnΓ = +∫ ∫

2 1( ) 1 ( ) ( )s F n s F n sΓ = − = + =

iFwhere is a cumulative function

� Histogram-based methods – Analytic method

Page 39: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 39

Region-based segmentation

Maximization of function ( )sΓ

thresh = 91

Approximation of the continuous integral by a discrete version

� Histogram-based methods – Analytic method

Page 40: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 40

Region-based segmentation

Find the threshold value which minimize the variance of the corresponding two classes

Let h[n] be a histogram function

G is the center of gravity of one class

[ ]

( )[ ]

i

i

n Ci

n C

nh n

G sh n

=∑

var is the variance of one class

2var ( ) ( ) [ ]i

i in C

s n G h n∈

= −∑

� Histogram-based methods – Empirical method

Page 41: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 41

Region-based segmentation

Find the threshold value that minimize the variance sum

1 2arg min(var ( ) var ( ))opts

s s s= +

After simplification, the previous problem is equivalent to maximize the following energy criteri on J(s) :

1 2

1

2 2

2

[ ] [ ]

( )[ ] [ ]

n C n C

n C n C

nh n nh n

J sh n h n

∈ ∈

∈ ∈

= +∑ ∑

∑ ∑

� Histogram-based methods – Empirical method

Page 42: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 42

Region-based segmentation� Histogram-based methods – Empirical method

Minimization of function opts

thresh = 102

Approximation of the continuous integral by a discrete version

Page 43: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 43

Region-based segmentation

Implementation is quite simple

Performance relatively low because of the non use of spatial coherence

Method to be used when:

� Histogram-based methods – properties

images have regions which are easily separable (objects with high contrast)

images are defined on multi-channels (multi-spectral images) which gives more information on the corresponding histogram

Page 44: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 44

Region-based segmentation

� Context� Definition� Principle

� Two kinds of methodology� Histogram based� Region transformation based

Page 45: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 45

Region-based segmentation

Region-based Segmentation

Regiontransformation

based

- Region growing

- Region splitting

� Context – Two different methods

- Region merging

Histogram based

Page 46: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 46

� Region transformation based methods

Region-based segmentation

Step that consists on splitting an image into subsets Ri called regions

Page 47: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 47

� Region transformation based methods

Region-based segmentation

Methods based on a similarity criterion P and an elementary partition

One has to define a test function that allows to validate the similarity criterion

Page 48: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 48

� Region transformation based methods

Region-based segmentation

Similarity criterion in segmentation: region Ri is homogeneous

Test function used to verify the previous similarit y criterion

Region contrast

[ ] [ ]( ) max ( , ) min ( , )i ii R RP R true I x y I x y σ= ⇔ − <

Page 49: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 49

� Region transformation based methods

Region-based segmentation

Test function used to verify the previous similarit y criterion

Region standard deviation

21( ) ( ( , ) )

i

iR

P R true I x y mN

σ= ⇔ − <∑

where( )iN Card R=

1( , )

iR

m I x yN

= ∑

Similarity criterion in segmentation: region Ri is homogeneous

Page 50: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 50

� Region transformation based methods

Region-based segmentation

Test function used to verify the previous similarit y criterion

Region entropy (measure of amount of information)

( ) ( ) log( ( ))i

iR

P R true p I P I σ= ⇔ − <∑

Similarity criterion in segmentation: region Ri is homogeneous

Page 51: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 51

� Region transformation based methods

Region-based segmentation

Methods based on a similarity criterion P and an elementary partition

A partition Π is a set of regions Ri inside an image that verify

, ( )

i j

ii

i

i j i j R R

R

i R

∀ ≠ ∩ = ∅

=

∀ ≠ ∅∪

Π ⇔ Image domain

Page 52: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 52

Region-based segmentation

� Region transformation based methods

There exists a high number of partitioning of an image

There exists a high number of partitions that verifies the test function associated to a similari ty criterion

Page 53: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 53

Region-based segmentation

� Region transformation based methods

How does we choose between several partitions that verify the same similarity criterion ?

The number of subsets of a partition (to minimize)

The size of the smallest sub-region (to maximize)

The distance between regions ( sum of distances between adjacent areas to maximize)

Page 54: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 54

There exists three main groups

Region growing method

Splitting region method ( quad-tree)

� Region transformation based methods

Adjacency graph method

Region-based segmentation

Page 55: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 55

� Region growing method

Region-based segmentation

Method based on the clustering of neighboring pixels of a region that verify a specific assumptio ns

Page 56: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 56

Region-based segmentation� Region growing method - Principle

Initialization of a region R0 with one or more pixels (seeds)

Clustering to R0 of all the neighboring pixels which verify a specific assumption

Iteration until convergence

Page 57: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 57

Region-based segmentation� Region growing method - Example

Example of assumption: homogeneity with the mean value of the growing region (that is updated at each iteration)

( ) RI x thresholdµ− <

assumption

Region R0

Neighboring

( )I x

Page 58: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 58

Region-based segmentation� Region growing method - Example

After few iterations after 5000 iterations

Convergence obtained after

10119 iterations

Page 59: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 59

Region-based segmentation� Region growing method - Example

Mathematical Morphology

Page 60: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 60

Region-based segmentation� Region growing method - Example

After few iterations after 5000 iterations

Convergence obtained after

10085 iterations

Page 61: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 61

Region-based segmentation� Region growing method - Example

Mathematical Morphology

Page 62: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 62

Region-based segmentation� Region growing method - Example

Page 63: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 63

Region-based segmentation� Region growing method - Properties

The quality of the result directly depends on the positioning of the initial seeds

The pixel clustering order has an influence on the result

The implementation is relatively simple and the algorithm is relatively fast

Page 64: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 64

There exists three main groups

Region growing method

Splitting region method ( quad-tree)

� Region transformation based methods

Adjacency graph method

Region-based segmentation

Page 65: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 65

Region-based segmentation� Splitting region method

Split an image into a set of regions that verifies a specific assumption

Page 66: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 66

Region-based segmentation

� Splitting region method - PrincipleOne starts from the whole image , called R

One applies several splitting δ which creates new sub-regions Ri

δ

For each Riδ one tests the assumption P and one

keep the best sub-region δ, that is:

the one where each sub-region verifies P

the one where there are the more sub-regions that verify P

Each sub-region that does not verify P becomes a new region R that can be process as above

Page 67: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 67

Region-based segmentation� Splitting region method

Example of region partitioning with two partitions

Region partition: choice between horizontal or vertical partitions

Partitioned image

Page 68: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 68

Region-based segmentation� Splitting region method - Example

Building of the corresponding Quad-treeInitial image

Quad-tree (with only square partitioning)

Page 69: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 69

Region-based segmentation� Splitting region method - Example

Quad-tree (with only square partitioning)

Building of the corresponding Quad-treeInitial image

Page 70: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 70

Region-based segmentation� Splitting region method - Example

Quad-tree (with only square partitioning)

Building of the corresponding Quad-treeInitial image

Page 71: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 71

Region-based segmentation� Splitting region method - Example

Quad-tree (with only square partitioning)

Building of the corresponding Quad-treeInitial image

Page 72: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 72

Region-based segmentation

The geometry of partitioning has a direct influence on the segmentation result

For example, the quad-tree method brings into relief square regions

There exist others partitioning strategies (triangular, pyramidal)

� Splitting region method - Properties

The choice between different partitioning strategies can be conditioned by the shape of the object to recover

Page 73: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 73

Region-based segmentation

Initial image Building of the corresponding Quad-tree

Example: Quad-tree

Detection of the local intensity variation

Page 74: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 74

Region-based segmentation

After the Quad-tree analysis

Building of the corresponding Quad-tree

Idea: analyze only the small blocks

Example: Quad-tree

Page 75: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 75

There exists three main groups

Region growing method

Splitting region method ( quad-tree)

� Region transformation based methods

Adjacency graph method

Region-based segmentation

Page 76: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 76

Region-based segmentation� Adjacency graph

Express the result obtained from a segmentation procedure into a graph structure and then exploit the graph properties in order to perform merging steps

Page 77: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 77

Region-based segmentation� Adjacency graph - Principle

From an initial segmentation, definition of an adjacency graph where a region is a node and an arc is an adjacency relation

Definition of a similarity function between two nodes

One sorts each node couple from there energy

One merges the two best candidates

One updates the list and iterate

Page 78: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 78

Region-based segmentation� Adjacency graph - Example

Design of a graph during a quad-tree procedure

Initial image Design of the corresponding adjacency graph

Page 79: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 79

Region-based segmentation� Adjacency graph - Example

Initial image Design of the corresponding adjacency graph

Design of a graph during a quad-tree procedure

Page 80: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 80

Region-based segmentation� Adjacency graph - Example

Design of a graph during a quad-tree procedure

Initial image Design of the corresponding adjacency graph

Page 81: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 81

Region-based segmentation� Adjacency graph - Example

Design of a graph during a quad-tree procedure

Initial image Design of the corresponding adjacency graph

Page 82: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 82

Region-based segmentation

Exploitation of an adjacency graph

Initial image Building of the corresponding region-based segmentation

� Adjacency graph - Example

Page 83: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 83

Region-based segmentation� Adjacency graph - Example

Exploitation of an adjacency graph

Initial image Building of the corresponding region-based segmentation

Page 84: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 84

Region-based segmentation� Adjacency graph - Example

Exploitation of an adjacency graph

Initial image Building of the corresponding region-based segmentation

Page 85: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 85

Region-based segmentation� Adjacency graph - Example

Exploitation of an adjacency graph

Initial image Building of the corresponding region-based segmentation

Page 86: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 86

Region-based segmentation

The order of region merging has a direct influence on the result

Generally, it is desired to merge at first the smal lest regions

� Adjacency graph - Properties

Page 87: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 87

End of second part

Image analysis

Page 88: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 88

ANNEXE

� Example of matlab code

Page 89: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 89

Image analysis - Annexe

You can download all the matlab code used to generate all the presented results at the followingweb-link adress

www.creatis.insa-lyon.fr/~bernard/AnalyseImage

Page 90: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 90

Image analysis - Annexe

List of morphological functions that can be used undermatlab 7 (type « morphology » in the documentation)

Page 91: DIP-5 en ImageAnalysis Part2-Very Nice

Département GE - TI - Olivier Bernard 91

function out = hysteresis(in1,in2)

out = in2; count = 1; k=0;MAXITERATION = 200;while ( ( count ~= 0 ) && ( k < MAXITERATION ) )

count = 0;for i=2:(size(out,1)-1)

for j=2:(size(out,2)-1)if ( out(i,j) > 0 )

if ( in1(i-1,j) > 0 ) out(i-1,j) = 255; count = count + 1;

endif ( in1(i+1,j) > 0 )

out(i+1,j) = 255; count = count + 1;endif ( in1(i,j-1) > 0 )

out(i,j-1) = 255; count = count + 1;endif ( in1(i,j+1) > 0 )

out(i,j+1) = 255; count = count + 1;end

endend

endk = k + 1;

end

Matlab code of the hysteresis function (4 connexities)

Annexes – hysteresis thresholding