International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B5. Istanbul 2004
2. MATERIALS AND METHODS
All tools use the Segmenta plug-in as a common platform for
event managing and graphical display. The plug-in itself is
implemented in C++ using QT (Dalheimer, 2002) and OpenGL
(Woo, 1999).
2.1 Extensions to the region grower
The employed region grower tool uses the basic techniques of
seeded region growing (Gonzalez and Woods, 2002): From a
user-defined seed point, the segmentation grows while
neighbouring pixels lie within a specific grey value interval.
Although this method can deliver excellent segmentation results
with minimal interaction when image contrast is good, the tool
has rarely been used in the old version of our segmentation
software. The user survey revealed that this objection was
caused mainly by the complicated parameter input, which was
designed to enter the grey value interval with the keyboard and
confirm it by pressing the Enter key. We therefore strived to
make the use of the region grower as intuitive as possible.
Furthermore, all additional filtering should become obsolete. In
the case of liver tissue segmentation, a common filter to be
employed after region growing is a closing operator to fill holes
inside the segmented area.
2.1.1 User interaction scheme: The adjustment of the grey
value interval in which the region should grow was
implemented using two vertical sliders instead of text input. In
this constellation, the upper slider represents the upper border
and vice versa. The bigger the distance between the two sliders,
the larger the grey value interval for region growing. Both
upper and lower border are relative values to the mean grey
value in the area around the seed point. In order to supply the
user with a direct feed-back of what the current settings
produce, a preview of the segmentation result is displayed after
every slider movement.
When specifying the seed point, the user can hold the mouse
button down and drag the mouse to control both sliders
symmetrically. Thus, the grey value interval for region growing
can be increased or decreased on the fly. Releasing the mouse
button fixes the segmentation results in the image. In images
with good contrast, this method is completely sufficient to
segment liver tissue.
In case where it fails, both sliders can be operated
independently after toggling an Adjust button at the controls:
Releasing the mouse button after specifying the seed point does
not fix the result in this mode, enabling the user to try different
upper and lower interval borders and different seed points until
getting a satisfying result. To remind the user that he has to
toggle Adjust again to accept the result, the preview is
displayed in a different colour as long as this mode is active.
Another button that has turned out to be very useful is the Fix
button, which allows freezing the current absolute upper and
lower interval borders for subsequent seed points. Once the
optimal values have been found for a CT data set, this allows an
exact reproduction in all slices.
2.1.2 Contour extraction and smoothing: The preview of
the segmentation result is displayed using only the outline of
the region. This has the advantage that the closing operator to
fill holes does not need to be executed every update. Moreover,
rendering a line is much faster than creating an overlay texture
of the corresponding region, which is beneficial for the real-
time constraints of the feed-back. When the segmentation is
fixed, the contour can be used to produce the final segmentation
result by scan conversion (Heckbert, 1990), thus eliminating the
need for an additional closing operation.
In contrast to practically all contour extraction algorithms
presented in literature, e.g. (Pavlidis, 1982), our algorithm
delivers the exact boundaries which lie between the actual pixel
positions. Since each pixel has four sides, there are four
possible directions the contour can take. For the following
example, we will assume that the contour is traced below the
object pixels to the right. As figure 1 demonstrates, there are
four possible cases for the next contour point. In the situation
presented, contour following has reached the second dark pixel,
the black points on the contour have already been recognized
and stored. The white arrows show the course of the extraction
until now and the next possible positions and directions. If there
is another object pixel below the current position (A), the
contour direction is rotated to the right and this pixel becomes
the next to work with. Otherwise it is tested if the object
continues to the right (B): If yes, the white point is stored as a
new contour point and the position is shifted to the right. If this
is not the case, the lower right pixel is queried (C): If it 1s part
of the object, it becomes the next pixel to work with, the white
contour point is stored and contour direction turns right. Else,
case D applies: contour direction turns left, position does not
change and a new point is added.
The presented algorithm allows a fast contour extraction on
binary data. To reduce the effects of noise, we included the
option to filter the image data before contour extraction, using a
5x5 pixel median filter as default.
|
€ D
Figure l. The four cases encountered in contour extraction.
All images show a part of the lower section of the
object of interest: Pixels already completed are
coloured dark; the contour to be extracted is
displayed as a black line.
Intern
—
2.1.3
value
contra
liver,
susce]
value:
narro
time 1
soluti
search
softw
growi
friend
leak :
intera
draw-
Wert
identi
idea 1
area,
maint
edges
the s
bottle
The «
preve
the us
A dir
medi:
There
one L
mater
burn
meet,
the sk
as.
fex
NUM,
TCE
AAA. "EE
M
Figur
Whe
maxi
autor
the s
dista
using
this
inacc
it is
belo
figur