Region growing

Region growing is a simple region-based image segmentation method. It is also classified as a pixel-based image segmentation method since it involves the selection of initial seed points.
This approach to segmentation examines neighboring pixels of initial seed points and determines whether the pixel neighbors should be added to the region. The process is iterated on, in the same manner as general data clustering algorithms. A general discussion of the region growing algorithm is described below.
Region-based segmentation.
The main goal of segmentation is to partition an image into regions. Some segmentation methods such as thresholding achieve this goal by looking for the boundaries between regions based on discontinuities in grayscale or color properties. Region-based segmentation is a technique for determining the region directly. The basic formulation is:
(a) means that the segmentation must be complete; that is, every pixel must be in a region.
(b) requires that points in a region must be connected in some predefined sense.
(c) indicates that the regions must be disjoint.
(d) deals with the properties that must be satisfied by the pixels in a segmented region. For example, formula_9 if all pixels in formula_7 have the same grayscale.
(e) indicates that region formula_7 and formula_12 are different in the sense of predicate formula_13.
Basic concept of seed points.
The first step in region growing is to select a set of seed points. Seed point selection is based on some user criterion (for example, pixels in a certain grayscale range, pixels evenly spaced on a grid, etc.). The initial region begins as the exact location of these seeds.
The regions are then grown from these seed points to adjacent points depending on a region membership criterion. The criterion could be, for example, pixel intensity, grayscale texture, or color.
Since the regions are grown on the basis of the criterion, the image information itself is important. For example, if the criterion were a pixel intensity threshold value, knowledge of the histogram of the image would be of use, as one could use it to determine a suitable threshold value for the region membership criterion.
There is a very simple example followed below. 
Here we use 4-connected neighborhood to grow from the seed points. We can also choose 8-connected neighborhood for our pixels adjacent relationship. And the criteria we make here is the same pixel value. That is, we keep examining the adjacent pixels of seed points. If they have the same intensity value with the seed points, we classify them into the seed points. It is an iterated process until there are no change in two successive iterative stages. Of course, we can make other criteria, but the main goal is to classify the similarity of the image into regions.
Some important issues.
Then we can conclude several important issues about region growing：
1.The suitable selection of seed points is important.
The selection of seed points is depending on the users. For example, in a grayscale lightning image, we may want to segment the lightning from the background. Then probably, we can examine the histogram and choose the seed points from the highest range of it.
2.More information of the image is better.
Obviously, the connectivity or pixel adjacent information is helpful for us to determine the threshold and seed points.
3.The value, “minimum area threshold”.
No region in region growing method result will be smaller than this threshold in the segmented image.
4.The value, “Similarity threshold value“.
If the difference of pixel-value or the difference value of average grayscale of a set of pixels less than “Similarity threshold value”, the regions will be considered as a same region.
The criteria of similarities or so called homogeneity we choose are also important. It usually depends on the original image and the segmentation result we want.
Some criteria often used are grayscale (average intensity or variance), color, and texture or shape.
Simulation examples.
Here we show a simple example for region growing.
Figure 1 is the original image which is a grayscale lightning image. The grayscale value of this image is from 0 to 255. 
The reason we apply region growing on this image is that we want to mark the strongest lightning part of the image and we also want the result to be connected without being split apart. Therefore, we choose the points having the highest grayscale value which is 255 as the seed points shown in the Figure 2.
After determining the seed points, we have to determine the range of threshold. Always keep in mind that the objective is to mark the strongest light in the image. The third figure is the region growing result from choosing the threshold between 225 and the value of seed points (which is 255). Hence we only mark out the points whose grayscale values are above 225.
If we make the range of threshold wider, we will get a result having a bigger area of the lightning region shown as the Figure 4 and the Figure 5.
We can observe the difference between the last two figures which have different threshold values. Region growing provides the ability for us to separate the part we want connected.
As we can see in Figure 3 to Figure 5, the segmented results in this example are seed-oriented connected. 
That means the result grew from the same seed points are the same regions. And the points will not be grown without being connected with the seed points.
Therefore, there are still many points in the original image having the grayscale values above 155 which are not marked in Figure 5.
This characteristic ensures the reliability of the segmentation and provides the ability to resist noise. For this example, this characteristic prevents us marking out the non-lightning part in the image because the lightning is always connected as one part.
The advantages and disadvantages of region growing.
We briefly conclude the advantages and disadvantages of region growing.
Advantages of Region growing methods：
Disadvantages：