next up previous print clean
Next: Field test case Up: Lomask and Biondi: Image Previous: Introduction

Methodology

Normalized cuts image segmentation partitions images into two groups. To do this, it first creates weights relating each sample to every other sample along paths within local neighborhoods. It then finds the cut that partitions the image into two groups, A and B, by minimizing the normalized cut:  
 \begin{displaymath}
{\rm N_{cut} =\ {cut\over total_A } + {cut\over total_B} }\end{displaymath} (1)
where $\rm{cut}$ is the sum of the weights cut by the partition. $\rm{total_A}$ is the sum of all weights in Group A, and $\rm{total_B}$ is the sum of all weights in Group B. Normalizing the cut by the sum of all the weights in each group prevents the partition from selecting overly-small groups of nodes.

The minimum of $\rm{N_{cut}}$ can be found by solving the generalized eigensystem:  
 \begin{displaymath}
({\bf D} - {\bf W})\bf y =\lambda {\bf D}\bf y,\end{displaymath} (2)
created from a weight matrix (${\bf W}$) and a diagonal matrix (${\bf D}$), with each value on the diagonal being the sum of each column of ${\bf W}$. The eigenvector (${\bf y}$) with the second smallest eigenvalue (${\lambda}$) is used to partition the image by taking all values greater than zero to be in one group, and its complement to be in the other. For a more detailed description, please see Shi and Malik (2000).

For application to seismic salt interfaces, we merely apply the algorithm to instantaneous amplitude. Several cost saving techniques are explored in Lomask et al. (2004).

By applying bounds we greatly reduce the size of the problem. These initial rough bounds can be found by first running the algorithm with small search neighborhoods and coarse sampling.

 
pic2
Figure 1
A cartoon of a masked salt boundary. It is long and thin with a discontinuous salt boundary snaking across it.
pic2
view

Unfortunately, the normalized cut segmentation method tends to partition elongated images along their shortest dimension. For instance, Figure [*] is a cartoon of an elongated image with a salt boundary snaking across it. If the segmentation algorithm were to function as hoped, the minimum cut would be found along the salt boundary. However, because the salt boundary is discontinuous, it is likely that the minimum of the normalized cut in equation (1) will be found by cutting the image vertically where the image is thin.

To correct this problem, we exploit the fact that the upper boundary will necessarily be in Group A and the lower boundary will be in Group B. In other words, we want to force the segmentation algorithm to put the coarsely picked bounds in different groups.

We can enforce this constraint during the creation of the weight matrix (${\bf W}$). Recall that this matrix contains weights relating each sample to every other sample along paths within a neighborhood. For any given sample, if its search neighborhood happens to cross a coarse boundary, it becomes weighted to every other sample near the boundary. This can be imagined by wrapping the image on a globe so that both the upper and lower bounds collapse to points at the poles (see Figure [*]). When estimating the weight matrix, every time a path crosses the north or south pole, it continues down the other side. In Cartesian space, this can be seen in the cartoon in Figure [*].

 
pic6
Figure 2
A cartoon illustrating global bounds. The image is stretched onto a sphere and the upper and lower boundaries of the mask collapse to points.
pic6
view

 
pic5
Figure 3
A cartoon illustrating idealized global bounds. When the search area for a node reaches outside the mask (as shown by the circle on the left), it becomes connected to all points along the boundary.
pic5
view

This ``Global'' bounds approach is completely impractical because it creates as many new weights as are saved by the size reduction of the problem.

A more practical approach that is still essentially the same concept is ``Random'' bounds. This is illustrated in Figure [*]. Every time a path crosses a bound, it jumps a random distance along the boundary.

 
pic4
Figure 4
A cartoon illustrating the more practical random bounds. When the search area for a node reaches outside the mask (as shown by the circle on the left), it is connected to a single node a random distance along the boundary.
pic4
view

We have implemented and tested this random bounds method and found that it works well in our preliminary test cases.


next up previous print clean
Next: Field test case Up: Lomask and Biondi: Image Previous: Introduction
Stanford Exploration Project
5/3/2005