NLM Home Page VHP Home Page


Next: Shape C. D. Model Up: Title Page Previous: Introduction  Index: Full Text Index Contents: Conference Page 

Reconstruction with Snake technique

     With this technique, the reconstruction process is defined in two steps described as follow:      In following paragraphs, we give a short description for the snake technique, the program which implements this technique and in finally, the results for the reconstruction of different types of organ.

Snake model
     For exact fitting of the contour of the organ on a slice we use discrete snakes [22] [23]. This allows the fitting of the contour to points of maximum contrast close to the already-defined rough contour. Though snakes are quite useful when anatomical information is visible, manual intervention is sometimes necessary due to the difficulties in interpretation.

     Snakes are characterized by a few parameters (such as elasticity, rigidity, and speed,). Because manipulation of all parameters may burden users, they are provided with predefined settings dedicated to a particular contouring problem (skin, bones...). Thus, only a single command is necessary to achieve contour fitting. As our contours are modeled as closed polygons, we use a discrete snake model. In addition to elastic and rigid forces, an image force acts on each vertex and tends to move it to pixels of interest. To adjust the snake on points of strong contrast, we consider:

where is the normal to the curve at the node i, whose position is vi. E is a measure of the contrast of the image at point vi and is given by:

where I(v) represents the image itself.

     To estimate the gradient of the image, we use a 3D generalization of the Sobel operator [24]. We consider all 26 neighbors to the current voxel. This combines edge detection and low-pass filtering, and therefore snake vertices are less subject to be stuck by a slight feature. Using neighboring slices re-enforces structures present in successive slices. Nonetheless this may confuse the user by fitting the contour to structures not visible in the current slice. To avoid this the weight of the gradient component transverse to the slice is tunable and may even be neglected.

     Blending of the different color channels is changed to alter the snake's color channel sensitivity. For instance, we can make snakes sensitive to the excess of blue color, which is useful with our blue background. Skin can then be easily contoured.

     Snakes are useful in many circumstances, particularly in the presence of high contrast such as bones on CT images. It helps users, but does not replace them, since the user validation of labeling is an important task.

Implementation
     A program "Label" has been written to implement the technique described earlier. Label is composed of two windows. The first window shows a 3D view of the voxel map with organs under reconstruction. The voxmap is represented by its bounding box and a plan inside this bounding box. This plan corresponds to a slice inside the voxmap. A scrollbar allows the user to move this plan. The second window shows a 2D view of the current slice with the cross-sectional contour of the object corresponding to this slice. With this window, the user can add, delete or move points of the cross-sectional contour on the current slice.

     The Label program has been written using the MFC library from Microsoft [26] and the OpenInventor library from TGS [25]. The following picture shows the user interface of Label ( Figure 1).


Next: Shape C. D. Model Up: Title Page Previous: Introduction  Index: Full Text Index Contents: Conference Page