next up previous contents
Next: A Brief Description of Up: A Contour-Based Approach to Previous: Seed Point   Contents

Contour Growing

Once the seed point has been obtained a contour growing process starts based on the combination of different criteria. For each point, a set of candidate growing points are obtained situated in a normal line along the gradient direction. A measure of affinity or cost ($ C_i$ ) is computed for each point ($ i$ ) and the value with the minimum cost is taken as the next growing point. This iterative process is illustrated in the Figure [*](b).

Figure A.4: Contour growing scheme: (a) Initial seed point and (b) contour growing process.
\includegraphics[height=4.5cm]{images/cuc_startingPoint.eps} \includegraphics[height=4.5cm]{images/cuc_contourGrowing.eps}
(a) (b)

As one may note from the figure the growing scheme incorporates several parameters which need to be defined. These include a kernel size $ K$ , normal to the previous point, and a growing step $ S$ . Those values have been empirically determined (typical values are $ K=51$ and $ S=20$ ) and kept constant trough all the experiments.

Also from the experiments we noted that a more robust approach should be used for the process of selecting the next candidate point as it was often affected by noise and outliers. Instead of evaluating only a set of normal points at a given distance and obtain the candidate with a minimum cost over $ C_i$ , several sets of points on the normal are evaluated at different positions close to the desired position of the candidate point. A set of cost functions $ C_i^k$ is then obtained for each set of normal points (where $ i$ means the actual pixel and $ k$ the set of normal points). Using this approach the candidate point will be the one with the minimum cost over all the different sets $ C_i^k$ . One should note that in the different cost functions, the same (or nearly the same) point can lie in a shifted position. In order to make those cost functions comparable the cost functions are iteratively right and left shifted. The global minimum cost for each point is obtained as the minimum using those shifted functions and the original cost. Figure  [*] shows the minimum cost function of candidate points with and without cost shifting. Note that transportation effects have been minimized when costs are shifted allowing a better estimation of the minimum cost.

Figure A.5: Cost functions for robust candidate selection: (a) cost without shifting and (b) with cost shifting.
\includegraphics[width=6cm]{images/cuc_robustCandidateCost.eps} \includegraphics[width=6cm]{images/cuc_robustCandidateCostTotal.eps}

Candidate points are obtained from the zero crossing points along the normalized gradient using the scale space representation described earlier. The cost of choosing a candidate point $ i$ is given by the following weighted function $ C_i$ which includes gradient, intensity, contour curvature and position information. Using this information, the contour tends to grow finding areas of increasing intensity keeping minimal position and direction changes.

$\displaystyle C_i = \alpha G_i + \beta D_i + (1-\alpha-\beta) A_i$ (A.2)

where $ G_i$ refers to an attraction factor (i.e. intensity or gradient), while the other two respond to regularization terms penalizing position differences ($ D_i$ ) and direction changes ($ A_i$ ). The factors $ \alpha$ and $ \beta$ are scalar constants which will weight the importance of each term. As in many other approaches using weighted cost functions, it is important to obtain a good estimation of those factors in order to achieve a satisfactory segmentation. The selection of those factors will be later discussed in the paper (see the results section). Different attraction factors can be stated based on the represented information and how it is computed. Here two commonly used attraction factors are evaluated based on gradient and intensity information.

$\displaystyle G_i = 1 - \exp(-1 / f_i)$ (A.3)

where $ f_i$ is the gradient or the intensity image function (depending on the factor used) at the given point. Gradient is obtained from the gradient of the zero crossing pixels while intensity information is given by the median intensity value in a local small window (we used $ 5x5$ pixels).

The segmented breast skin-line should be continuous without having abrupt changes. This obviously corresponds to the continuous nature of the breast. A way to ensure this continuity is to impose some regularization conditions to the contour growing process. This continuity assumption might not hold in all cases (for instance, when the nipple appears in the skin-line) but in this case the attraction factors described earlier will be able to adapt the contour to those changes. The first regularization factor $ D_i$ biases the cost to points closer to the centre of the kernel of size $ K$ . This means that between two similar points the factor will select as a better point the one with a closer distance to the kernel centre. This factor is independent of the image contents and is given by,

$\displaystyle D_i = \exp\{\frac{-1}{\vert(i-1) - (K-1)/2\vert / ((K-1)/2) }\}$ (A.4)

The last regularization term is defined computing the curvature change in a local neighbourhood. Local curvature values (directional change) at each pixel are obtained with a similar approach as used in the work of Deschênes and Ziou [41]. Directional change between two pixels $ i$ and $ j$ is defined by the scalar product of their normal vectors. Hence, at a given pixel $ i$ the directional change is obtained by computing the scalar product between $ i$ and its neighbouring pixels,

$\displaystyle A_i= \frac{1}{N}\sum_{j=1}^N \exp(-d_{ij}^2) (1-\cos
 (\phi_i-\phi_j))$ (A.5)

where $ \phi_i$ is the angle of the normal at a pixel $ i$ . $ N$ is the number of points in a local neighbourhood and $ d_{ij}$ is the Euclidean distance between points $ i$ and $ j$ . The distance factor is used here to weight the curvature of each point $ j$ , in order to incorporate a bias to points closer to $ i$ .

Figure [*] shows an example of the performance of this algorithm. Note that the algorithm seems to segment far to the breast. However, if we equalize the image, the segmentation is accurately adapted to the real mammogram border. The main drawback of the algorithm is that in some cases there is a poor estimation of the initial seed point, due to the large amount of noise in the background an to the non-uniform breast intensity distribution. In these cases, the algorithm does not obtain what could be considered an acceptable segmentation.

Figure A.6: Two examples of the breast-skin line segmentation. The first images show the segmentation over the original mammogram while the second ones show the segmentation over the enhanced mammograms. Note that the contour accurately follows the breast profile.
\includegraphics[width=3.15cm]{images/bug1.eps} \includegraphics[width=3.15cm]{images/bug1b.eps}   \includegraphics[width=3.15cm]{images/bug2.eps} \includegraphics[width=3.15cm]{images/bug2b.eps}


next up previous contents
Next: A Brief Description of Up: A Contour-Based Approach to Previous: Seed Point   Contents
Arnau Oliver 2008-06-17