Region%20Growing%20-%20Splitting - PowerPoint PPT Presentation

About This Presentation
Title:

Region%20Growing%20-%20Splitting

Description:

Region Growing - Splitting. Segmentation can never be perfect. there are extra or missing regions ... hierarchical representations (e.g., pyramids, Quad Trees) ... – PowerPoint PPT presentation

Number of Views:748
Avg rating:3.0/5.0
Slides: 57
Provided by: euripidesg
Category:

less

Transcript and Presenter's Notes

Title: Region%20Growing%20-%20Splitting


1
Region Growing - Splitting
  • Segmentation can never be perfect
  • there are extra or missing regions
  • Correct the results of segmentation
  • delete extra regions or
  • merge regions with others
  • split regions into more regions
  • Correction criteria
  • significance (e.g., size)
  • homogeneity (e.g., uniformity of gray-level
    values)

2
Data Structures
  • Represent the results of a segmentation
  • array representations (e.g., image grid)
  • hierarchical representations (e.g., pyramids,
    Quad Trees)
  • symbolic representation (e.g., moments, Euler
    number)
  • Region Adjacency Graphs (RAGs)
  • Picture Trees
  • edge contours

3
1. Image Grid
b b b a a a a a
b b b b a a a c
b b b a a a c c
b b a a c c c c
b a a a a c c d
a a a c a c c d
a b a a c c d d
a a a a c d d d
4
2. Pyramid
  • Hierarchical representation the image at k
    degrees of resolution
  • nxn image, n/2xn/2, n/4xn/4,, 1x1 images
  • A pixel at level i represents aggregate
    information from 2x2 neighborhoods of pixels at
    level i 1
  • image is a single pixel at level 0
  • the original image is represented at level k-1

5
(No Transcript)
6
3. Quad Trees
  • Hierarchical representation
  • a node represents blocks of white, black or grey
    pixels
  • blocks of grey may contains mix of both white and
    black pixels
  • Obtained by recursive splitting of an image
  • each region is split into 4 sub-regions of
    identical size
  • each gray region is split recursively as long as
    it is grey
  • white or black regions are not split further

7
Quad Tree Example
  • Original grey image
  • Split of a into 4 regions
  • Split b grey regions one is still grey
  • Spit last c grey region? final quad tree

8
4. Picture Tree
  • Emphasis on nesting regions
  • A picture tree is produced by recursively
    splitting the image into component regions
  • Splitting stops when with only uniform regions
    has been produced

9
(No Transcript)
10
5. Region Adjacency Graphs (RAGs)
  • Adjacency relationships between regions
  • graph structures
  • nodes represent regions (and their features see
    symbolic representations)
  • arcs between nodes represent adjacency between
    regions
  • Dual RAGs nodes represent boundaries and arcs
    represent regions separated by these boundaries

11
segmented image
Region Adjacency Graph (RAG)
Dual RAG
12
RAG Algorithm
  • Create RAG from segmented image
  • take a region Ri
  • create node ni
  • for each neighbor region Rj of Ri create node nj
  • connect ni with nj
  • repeat steps 3-4 for each region until all
    regions have been considered

13
6. Symbolic representations
  • Each region is represented by a set of features
  • Bounding Enclosing Rectangle
  • Orientation, Roundness
  • Centroid, First, Second and Higher order Moments
  • Euler Number
  • Mean and variance of intensity values
  • Relative distance, orientation, adjacency,
    overlapping etc.

14
Region Merging
  • Two or more regions are merged if they have
    similar characteristics
  • mostly intensity criteria (mean intensity values)
  • more criteria can be applied
  • boundary criteria
  • combination of criteria

15
Region Merging algorithm
  • Input a segmented image and its RAG
  • for each region Ri (node ni)
  • take its neighbor regions Rj (node nj)
  • if similar ? merge them to one
  • update RAG (delete one of ni, nj and its arcs)
  • repeat until no regions are merged
  • Similarity Criterion similar average intensities
  • e.g., µi-µj lt e, contour continuity etc.

16
Statistical Criterion for Region Similarity
  • Input region R1 with m1 points and region R2
    with m2 points
  • Output determines whether they should be merged
    or not
  • assumption image intensities are drawn from a
    Gaussian distribution

17
1. Statistical Criterion Case H0
  • Regions R1, R2 must be merged to form a single
    region
  • the intensities of the new region are drawn from
    a single Gaussian distribution (µ0,s0)

18
2. Statistical Criterion Case H1
  • R1, R2 should not merge
  • their intensities are drawn from two separate
    Gaussian distributions (µ1,s1), (µ2,s2)

19
3. Statistical Criterion Decision
  • If the ratio L is below a threshold, there is
    strong evidence that R1,R2 should be merged

20
Region Merging With Boundary Criteria
  • Two regions should merge if the boundary between
    them is weak
  • Two Criteria
  • the weak boundary is small compared to the
    boundary of the smaller region
  • the weak boundary is small compared to the common
    boundary

21
the two regions should be merged because the
weak boundary is large compared to the boundary
of the smaller region
the regions should not be merged because the
weak boundary is very short compared to the
boundary of the smaller region
22
Region Splitting
  • If a region is not homogeneous (uniform) it
    should be split into two or more regions
  • Large regions are good candidates for splitting
  • e.g., start from the entire image as input
  • intensity criteria (variance of intensity values)
  • a problem is to decide how and where to split
  • usually a region is split into n equal-sized parts

23
Region Splitting Algorithm
  • Input initial segmentation and RAG or Quad Tree
  • for each region Ri in the image recursively
    perform the following steps
  • compute the variance si of the intensities of Ri
  • if si gt e split the region into n equal parts
  • update RAG or Quad Tree
  • e, n are user defined

24
Split and Merge
  • Combination of Region Splitting and Merging for
    image segmentation
  • for each region R (or entire image)
  • if R is not uniform split it into 4 equal parts
  • update the RAG or Quad Tree
  • for each group of (e.g, 2 or 4) regions
  • if merging criteria are met
  • merge the regions
  • update the RAG or Quad Tree
  • repeat steps 1, 2 until no regions are merged or
    split

25
More Segmentation Algorithms
  • Adaptive Split and Merge Segmentation Based on
    Least Square Piecewise Linear Approximation, X.
    Wu, IEEE Trans. PAMI, No. 8, pp. 808-815, 1993
  • K-means Region Segmentation Algorithm
  • Hough Transform (find lines, circles, known
    shapes in general)
  • Relaxation Labeling (edge, region segmentation)

26
Adaptive Split and Merge Segmentation Based on
Least Square Piecewise Linear Approximation
  • Basic Idea Successive region splitting in many
    directions until some homogeneity criterion is met

27
1. Adaptive Split Criteria
  • Let Gg(x,y) be the original image
  • G is split into k regions G1,G2,Gk
  • produce k homogeneous regions
  • minimize a global criterion of homogeneity

28
2. Adaptive Split Satisfaction
  • There are too many ways to split a region into
    sub-regions
  • accept only horizontal, vertical, 45o and 135o
    split directions
  • split at two directions at a time
  • Every region is split as long as
  • e is user defined
  • at the end either E(G) lt e or G is one pixel

29
splitting produces convex regions
30
Recursive Optimal Four Way Split (ROFS) Algorithm
  • Function ROFS(G)
  • If E(G) lt e then return (G)
  • else
  • partition G into G1 and G2 by minimizing
  • over all possible 45 i degree cuts, i
    0,1,2,3
  • ROFS(G1)
  • ROFS(G2)

31
the number of polygons which are produced
depends on e
initial image
e1
gt
e2
243 polygons
1007 polygons
32
initial image
930 polygons
4521 polygons
33
Merging
  • The number of polygons which are produced by ROFS
    can be very large
  • merge any two neighbor regions Gi, Gj satisfying
    µ(Gi)-µ(Gj) lt m
  • m is the merging parameter
  • m is user defined

34
segmented image after splitting
segmented image after merging
original image
35
Merging Problem 1
  • Examine all pairs of regions to find whether they
    are neighbors
  • their number K can be very large
  • examine K2 regions
  • is it possible to know in advance the pairs of
    neighboring regions ?
  • Yes ! through the Region Adjacency Graph (RAG)

36
Merging Using RAGs
  • RAG is always planar with small degree e
  • algorithms from graph theory
  • small e the algorithms are fast
  • Merging of Gi, Gj
  • update the RAG keep one of the Gi, Gj and delete
    the other along with all its incoming and
    outgoing arcs
  • complexity O(Ke)

37
Region Merging Problem 2
  • Specification of e, m
  • user defined, by experimentation
  • The performance of the method depends on e, m
  • The performance of the method does not depend on
    pixel intensity values
  • the method is robust against noise

38
K-Means Segmentation
  • Segmentation as a classification problem
  • assume K regions, K known in advance
  • each pixels has to be classified as belonging to
    one of the K regions
  • a region is represented by its center
  • classification criteria intensity, proximity
  • each pixel (x,y,d) normalized in 0..1
  • a pixel belongs to the region whose center
    (xc,yc,dc) which is closest to it

39
K-means Segmentation Algorithm
  • Input N points (x,y)i ?? Si centers of K regions
  • a pixel is a triple
  • d intensity
  • Classify image pixels
  • Compute N new points (centers)
  • Repeat steps 1,2 until the centers do not change
    significantly (use a distance threshold) or until
    homogeneous regions s lt t

40
K2,s4
original image
K2, s8
41
original image
K2
K2, s0.7
A. Matamis, Msc.Thesis Dept. of Electronic and
Comp. Eng., TUC, 1996
K2, s4
K2, s8
K4, s8
K4, s0.7
K4, s4
42
Hough Transform (Duda Hart 1972)
  • Find Shapes whose curve can be expressed by an
    analytic function
  • find lines, circles, ellipses etc.
  • lines y mx c
  • circles
  • Works in a parametric space
  • (x,y) ? (m,c) for lines (or ?,?)
  • (x,y) ? (a,b,r) for circles

43
1. Line Detection
y
(x2,y2)
y mx c
(x1,y1)
x
c -mx1 y1
(c,m) is the same for the points of the same
line
c
(c,m)
c -mx2 y2
m
44
2. Line Detection Algorithm
  • Input Gradient
  • Output Accumulator Array A(m,c)
  • for each point in the Gradient image compute
  • M tan?(x,y)
  • C -mx y
  • update A(m,c) A(m,c) A(m,c) g(x,y)
  • points on a line update the same point in A(m,c)
  • lines local maxima in A(m,c)
  • g(x,y) intensity, strong intensity points
    contribute more

45
3. Circle Detection
  • All Circles (x,y) ? 3-dim. space (a,b,r)
  • Circles with fixed radius r ? 2-dimensional space

46
4. Circle Detection Algorithm
  • Input Gradient
  • Output Accumulator Array A(m,c)
  • for each point (x,y) in the image compute
  • a x r sin?
  • b y r cos?
  • udpdate A(a,b) A(a,b) g(x,y)
  • points on a circle update the same point in
    A(a,b)
  • to detect all circles, compute different A(a,b)
    for different radius
  • this can be very slow

47
Hough Transform for detecting circles in an
X-chest Radiograph (from Ballard And Brown)
accumulator array for r 3
results of maxima detection
48
Comments on Hough Transform
  • Pros
  • detects even noisy shapes
  • the shapes may have gaps or may overlap
  • effective for low dimensionality parametric
    spaces (e.g., 2, 3)
  • Cons
  • the shapes must be known
  • can be very slow for complex shapes
  • complex shapes are mapped to high dimensional
    spaces

49
Relaxation Labeling
  • Edge or Region segmentation as a special case of
    pattern classification problem
  • two classes
  • region/background for region segmentation
  • edges/background for edges segmentation
  • Probabilistic approach
  • initial probability estimates are revised in
    later steps depending on compatibility estimates

50
Edge Segmentation with Relaxation Labeling
  • For each point (xi,yi) on a Gradient image
    compute its probability Pi to belong to an edge
  • if point (xj,yj) is very close to point (xi,yi)
    and has large Pj to belong to an edge
  • then the two events (Pi and Pj belong to the same
    edge) are compatible ? increase Pi
  • if point (xj,yj) is very close to point (xi,yi)
    and has low Pj to belong to an edge
  • then the two events are incompatible ? decrease Pi

51
General Relaxation Labeling Model
  • Classify Objects A1,A2,An to C1,C2,Cm
    classes
  • Pij Probability for Ai to belong to Cj
  • C(i,jh,k) compatibility between Pij and Phk
  • C(i,jh,k) gt 0 compatible (increase
    probabilities)
  • C(i,jh,k) lt 0 incompatible (decrease
    probabilities)
  • C(i,jh,k) 0 dont care (do nothing)

52
Adaptation of Probabilities
  • Adaptation of Pij due to Phk
  • Adaptation due to every other point
  • At every step Pij becomes

53
Segmentation using Relaxation Labeling
  • Two classes
  • Edge, Background
  • Region, Background
  • Pi1 pixel i belongs to class 1 (edge, region)
  • Pi2 pixel i belongs to class 2 (background)
  • Pi1 1 - Pi2
  • Pi1 gi/gmax where gi intensity of i and gmax
    max intensity in the image

54
Edge Segmentation Example
  • C(i,jh,k) is defined only for the nearest
    neighbors
  • C(i,jh,k) cos(?j- ?ih)cos(?k- ?ih)
  • if ?j, ?k // ?ih ? C(i,jh,k) 1
  • if ?j, ?ih ?ih or ?k, ?k ?ih ? C(i,jh,k) 0

55
Raw edges. Initial edge strengths thresholded at
0.35 (removes some noise)
Results of relaxation segmentation after 5
iterations
56
Raw edges. Initial edge strengths thresholded at
0.25 Better initial estimates!!
Results after 5 iterations. Notice the effect of
having better initial estimates
Write a Comment
User Comments (0)
About PowerShow.com