Given the current proliferation of 3D medical imaging devices, the need to segment the data they gather is of paramount importance. Little quantitative information can be gleaned from a raw 3D data set: the data can be displayed on a slice by slice basis, or by volume rendering, but further processing generally requires some sort of segmentation. For example, a surface rendering of an organ requires segmentation of its boundary; area and volume measurements require segmentation of the region of interest; landmark-based registration requires segmentation of the landmarks.
While manual segmentation of a 2D image is merely tedious, manual segmentation of every slice through a 3D data set is often prohibitively time-consuming. For this reason there has been considerable research into fully- and semi-automatic medical image segmentation techniques, including grey-level thresholding [ 4 ], region growing [ 4 ], active contours (``snakes'') [ 12 ] and ``live-wire'' algorithms [ 1 ].
Particularly challenging is the segmentation of 3D ultrasound data. 3D ultrasound has been attracting considerable research and commercial interest as a cheap, portable and non-invasive method for acquiring 3D medical images [ 8 ]. However, automatic interpretation of ultrasound data is confounded by noise, especially speckle, an artifact common to all ultrasound images. Given these difficulties, fully-automatic segmentation of ultrasound images is not currently feasible. Instead the focus has been on semi-automatic techniques, in particular live-wires and snakes. An important feature of semi-automatic segmentation is that the clinician views the boundary as it is delineated in every slice. Thus the clinician has confidence in the final segmentation, something which cannot be said for fully-automatic techniques.
Live-wire [ 1 ] is currently one of the best semi-automatic segmentation techniques, and is beginning to be supplied with 3D visualisation packages. The user clicks on one point on the boundary and then drags the cursor roughly around the outline. The computer displays in real time the ``best'' path from the seed point to the current cursor position: one path is better than another if it follows more boundaries (as defined by boundary models) in the image. If the ``best'' path deviates from the desired boundary, the user simply deposits another seed point at the location where the boundary was lost. Accurate segmentation can be achieved in a fraction of the time it would take to trace the boundary by hand. Furthermore, the live-wire can be trained on-the-fly to favour different types of boundaries: the algorithm simply examines the boundary accepted by the operator and uses this information to update its boundary models.
Snakes are active contours which deform in the image under a set of internal and external forces [ 10 ]. The internal forces keep the snake smooth, while the external forces attract the snake to features of interest in the image. If initialised by the operator near a boundary, the snake deforms to ``hug'' the boundary along its length. Particularly useful is the ability to use the snake's equilibrium position in one slice as its initial position in the next slice. If the slices are closely spaced then the snake should snap on to the new boundary with no operator assistance. Moreover, given prior knowledge of the likely shape of the boundary, the snake can be constrained to give only physically plausible segmentations [ 7 ], providing further resilience to noise.
In this paper we develop a snake-based approach to the semi-automatic segmentation of ultrasound images. We incorporate many of the attractive features of live-wire, in particular on-the-fly learning of statistical boundary models following operator intervention, while preserving the straightforward inter-frame propagation of snakes. We demonstrate how the resulting algorithm provides fast, reliable and verifyable segmentation of in-vivo ultrasound images.
A.H. Gee