Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

RegionGrowing PDF

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Region Growing

(Jain et al., section 3.5)

- The fundamental drawback of histogram-based region detection is that histograms


provide no spatial information (only the distribution of gray levels).

- Region-growing approaches exploit the important fact that pixels which are close
together have similar gray values.

• Region growing

- Start with a single pixel (seed) and add new pixels slowly

(1) Choose the seed pixel

(2) Check the neighboring pixels and add them to the region if they are similar to
the seed

(3) Repeat step 2 for each of the newly added pixels; stop if no more pixels can be
added.

(8 neighbors, predicate: |z − z seed | < 0. 1(max z − min z ))


-2-

- More than one seeds can be used.

P(Ri ) = True: if |z − z seed | < T


-3-

• How do we choose the seed(s) in practice ?

- It depends on the nature of the problem.

- If targets need to be detected using infrared images for example, choose the bright-
est pixel(s).

- Without a-priori knowledge, compute the histogram and choose the gray-level val-
ues corresponding to the strongest peaks (e.g., 1 and 7 in the above example)

• How do we choose the similarity criteria (predicates)?

- The homogeneity predicate can be based on any characteristic of of the regions in


the image such as

* average intensity
* variance
* color
* texture
* motion
* shape
* size
-4-

• Region growing based on simple surface fitting


("Segmentation Through Variable-Order Surface Fitting", by Besl and Jain, IEEE Transactions on Pattern Analysis and Machine
Intelligence, vol. 10, no. 2, pp. 167-192, 1988)

- It has been suggested using a predicate that checks whether the error in approxi-
mating the pixel data by some function is less than some threshold.

* A digital image is a set of quantized samples of a continuously varying func-


tion.

* The idea is fitting an appropriate low-order surface (e.g., planar or


biquadratic) over the image data of a region.

f (x, y, a, m) = Σ
i+ j≤m
aij x i y j

* If the errors are small, then we can conclude that the pixel values belong to
the same region.

E(R, a, m) = Σ [g(x, y) −
(x,y)∈R
f (x, y, a, m)]2
-5-

(0)
(1) Partition the image into initial seed regions R i (e.g., split the image in 7x7
regions).
(0)
(2) Fit a planar model to each seed region. If E(R i , a, m) is small enough,
(0) (0)
accept R i and its model; otherwise reject R i .

(3) For each region, find all points that are compatible with the region by consid-
ering the neighbors of the region (i.e., to avoid outliers).

C i(k) = [(x, y): (g(x, y) − f (x, y, a, m))2 < and (x, y) is a 4 − neigh-
bor of R(k)
i ]

(4) If there were no compatible points, then m = m + 1. If m > M , do not grow


R(k)
i further; otherwise, go to step 3.

i ∪ C i , refit the model to R i


= R(k)
(k+1) (k) (k+1)
(5) Form the new region R i , and
(k+1)
compute E(R i , a, m)

(6) Compute the difference error:

(k)
= E(R(k+1)
i , a, m) − E(R(k)
i , a, m)

(k)
(7) If < T 1 , go to step 3.
(8) m = m + 1; If m > M , do not grow the region further.

(9) Refit the region at the new model f (x, y, a, m). If the error of fit decreases,
accept the new model and go to step 3; otherwise, do not grow the region further.
-6-

• Some problems

- The main assumption of this approach is that regions are nearly constant in image
intensity.

- This approach will not work for non-smoothly varying regions (e.g., textured
regions).

- More sophisticated approaches are required to allow for more realistic intensity
variations due to shading.

You might also like