Sigmoid Filter

The Sigmoid filter is commonly used as intensity transform. It maps a specific range of intensity values into a new intensity range by making a very smooth and continuous transition in the borders of the range. Sigmoids are widely used as a mechanism for focusing attention on a particular set of values and progressively attenuating the values outside that range [7]. The following equation represents the sigmoid intensity transformation, applied pixel-wise:
I^'=(K1-K2 ).1/(1+e^(-((I-??)/??)) )+K2 (4)
In the context of this example, the parameters are used to intensify the differences between regions of low and high values in the speed image. In an ideal case, the speed value should be 1.0 in the homogeneous regions and the value should decay rapidly to 0.0 around the edges of roads. The heuristic for finding the values is the following. From the gradient magnitude image, let's call K1 the minimum value along the contour of the road to be segmented. Then, let's call K2 an average value of the gradient magnitude in the middle of the road. These two values indicate the dynamic range that we want to map to the interval [0,1] in the speed image. We want the sigmoid to map K1 to 0.0 and K2 to 1.0. Given that K1 is expected to be higher than K2 and we want to map those values to 0.0 and 1.0 respectively, we want to select a negative value for alpha so that the sigmoid function will also do an inverse intensity mapping. This mapping will produce a speed image such that the level set will march rapidly on the homogeneous region and will definitely stop on the contour. The suggested value for beta is (K1+K2)/2 while the suggested value for alpha is (K2'K1)/6, which must be a negative number. The user can estimate these values by observing the gradient magnitude image. [8]

Fast Marching Segmentation
Fast marching method is a numerical method for solving boundary value problems of the Eikonal equation:
F|'T|=1 (5)
Typically, such a problem describes the evolution of a closed curve as a function of time T with speed F in the normal direction at a point on the curve. The speed function is specified, and the time at which the contour crosses a point is obtained by solving the equation. This problem is a special case of level set methods. More general algorithms exist but are normally slower. [9]
Judicious approximation of the gradient is needed to solve the problem. The schema used by Sethian [9] is:
Laying: (6)
Taking: max'''( ,- ,0)'^2+' max'''( ,- ,0)'^2=1/(F_ij^2 )' (7)

To reduce the cost of computations, a classification at the level of the pixels is made. Indeed, only the pixels in a neighborhood of the contour are interested. There is concern that pixels located in a narrow band around the interface. This is called the "Narrow Band". Classification of pixels is as follows:

The pixel type "frozen", pixels which Tij value is known.
Neighboring pixels, are pixels of the "Narrow Band" which we have an estimation of the Tij value.
"Far Away" pixels, for which Tij value is not estimated.

It is limited in the following in the case were F is equal to 1, which is to build the field of distances of the points of the grid points of the initial condition. The principle of the method is as follows:
Starting from an initial condition, determine the distances field of the point. The initialization pixel is called "frozen" as previously established. We then calculate the distances to neighbors. The pixels which have been calculated the distance but are not "frozen" are pixels of the "Narrow Band".
For each iteration of the main loop, the pixel of the "Narrow Band" with the smallest distance becomes "frozen". Distances of its neighbors are again calculated: two cases to consider at this level of the algorithm.
Among neighbors, some were already affected by a distance value. It is therefore necessary to update these values.
Some neighbors were not included in the "Narrow Band". In this case, they should be added.
"Frozen" pixels are used to determine the values of the distances of the other pixels but never recalculated. We can see the "Fast Marching" method as a front of pixels of the "Narrow Band" propagating from the initial condition, which transforms, by progressing, the pixels of the "Narrow Band" in "frozen" pixels. [9]
The Fast Marching requires the user to provide a seed point from which the contour will expand. The user can actually pass not only one seed point but a set of them. A good set of seed points increases the probability of segmenting a busy road without missing a large part of the road. The use of multiple seeds also helps to reduce the amount of time needed by the front to visit a whole road and hence reduces the risk of leaks on the edges of regions visited earlier. For example, when segmenting an elongated road, it is undesirable to place a single seed at one extreme of the road since the front will need a long time to propagate to the other end of the road. Placing several seeds along the axis of the road will probably be the best strategy to ensure that the entire road is captured early in the expansion of the front. One of the important properties of level sets is their natural ability to fuse several fronts implicitly without any extra bookkeeping. The use of multiple seeds takes good advantage of this property.
The mapping should be done in such a way that the propagation speed of the front will be very low close to high image gradients while it will move rather fast in low gradient areas. This arrangement will make the contour propagate until it reaches the edges of roads in the image and then slow down in front of those edges. The output of the Fast Marching Filter is a time-crossing map that indicates, for each pixel, how much time it would take for the front to arrive at the pixel location.

The application of a threshold in the output image is then equivalent to taking a snapshot of the contour at a particular time during its evolution. It is expected that the contour will take a longer time to cross over the edges of a particular structure. This should result in large changes on the time-crossing map values close to the structure edges. Segmentation is performed with this filter by locating a time range in which the contour was contained for a long time in a region of the image space. [10]


We have tested the algorithm on several samples of IKONOS images in urban and rural area. We must provide a primer point from which the contour will spread. We can actually provide a set of points, like shown in figure2 (d) and figure3 (d), in order to increase the probability of segmenting several separate roads or streets obstructed by objects such as cars, shadows etc. without losing parts of this road. The use of multiple seeds, can also reduce the time required for the fully visit a road curve and thus reduces the risk of leakage around the edges of the regions previously visited. An example of the results obtained from the road extraction process is proposed in Figure 2(f), regarding a highly urbanized city zone, in which one can notice that the task is quite difficult, due to the high urbanization of the area, shadows and car occlusions. Nevertheless, we can see that a large part of roads was extracted. Another example is proposed in Figure 3, in a rural zone, the proposed approach is able to correctly extract the roads in the image.
The same algorithm can be applied to radar images. In radar images, as roads usually present specular reflections, they also appear in darker color (Figure 4 (a)). These results are good despite of the noise, but radar images contain a multiplicative noise so the gradient filter is not the most adapted.


In this article, we presented a semi-automatic road extraction algorithm based on the level set method, which incorporates the geometric characteristics of the road. The operator initializes the algorithm by providing a starting point. This extraction algorithm offers several advantages such as the ability to extract roads in different topology, and requires minimal operator intervention. The results showed that the proposed method can extract multiple roads with high efficiency. We encountered a mediocre result in some parts, as the road is not well contrasted with its surroundings in urban scenes (visible change in intensity, presence of shadows of buildings, trees, cars, etc.) and it comes to the acquisition system, the age of the road and its coating.

Source: Essay UK -

About this resource

This Science essay was submitted to us by a student in order to help you with your studies.

Search our content:

  • Download this page
  • Print this page
  • Search again

  • Word count:

    This page has approximately words.



    If you use part of this page in your own work, you need to provide a citation, as follows:

    Essay UK, Sigmoid Filter. Available from: <> [01-06-20].

    More information:

    If you are the original author of this content and no longer wish to have it published on our website then please click on the link below to request removal: