Introduction and Acknowledgements
This work is part of the National Alliance for Medical Image Computing (NA-MIC), funded by the National Institutes of Health through the NIH Roadmap for Medical Research, Grant U54 EB005149. Information on NA-MIC can be obtained from the NA-MIC website.
Author: Ivan Kolesov, Stony Brook University
This is the CarreraSlice interactive segmentation method. The computation is initialized using an improved GrowCut implementation and refined by an interactive, level set based segmentation algorithm, KSlice. As the automatic segmentation runs and displays the current state, a human user can influence the algorithm’s behavior to more closely align with an expected result. In the end, the user has created an excellent segmentation result with a minimal amount of time and effort. Please see the references below for more details.
Step 1.) Add data volume to segment
Step 2.) Go to the “Editor” module, select the volume loaded in Step 1 as the “Master Volume” in the “Create and Select Label Maps” drop-down menu
Step 3.) Select the “CarreraSlice” effect in the “Edit Selected Label Map” drop-down menu
Step 4.) Set the “Radius” parameter, the "Number of Iterations" and press the “Start Interactive Segmentor” button ( CarreraSlice is now running in the background until the “Stop Interactive Segmentor” button is pressed)
Step 5.) Turn “On” all three slice views in the 3D Plane
Step 6.) Initialize the segmentation using fast GrowCut
- (a) go to PaintEffect to draw seed regions (label 1 for foreground and 2 for background), then press 'G' to run fast GrowCut.
- (b) If not satified, press 'S' to toggle between seed image and segmentation result. Edit on the seed image to reduce over/under segmentaions.
- (c) Once finished editing on the seed image, press 'G' to run fast GrowCut again.
The steps 6 (b) and (c) may be repeated a couple of times until satisfied.
Step 7.) Once satisfied with the initialization, press 'M' to start KSlice interactive segmentation. The energy functionals available are:
- (a) press 'F' for local-global Chan-Vese segmentation
- (b) press 'U' for mean curvature smoothing
- (c) press 'E' for Chan-Vese segmentation
As necessary, take steps at any time in the process
- (Used in any order) A segmenting surface may leak into undesirable areas, based purely on image data. It is the user's job to guide the evolution process. A user can provide positive input (drawing) by selecting a paint tool, painting in areas which should be part of the object of interest but are not. Or, the user can provide negative input (erasing) by pressing "A" (toggle label value between 0 and the originally selected label). An example of a user correction is going from
- (Used in any order) Certain image regions (depending on the energy chosen and the image itself) may be highly attractive for the evolving contour despite being incorrect according to the user's expert knowledge. He has two options. First, apply repeated input several times (soft user constraints). Second, he can press "B" (toggle between soft/hard constraints) to increase the weight on his inputs, essentially making them hard constraints. Further, constraints can be provided pre-emptively, by erasing/drawing in regions before a contour has reached these areas to prevent leaks in the future or expedite the evolution process, respectively.
- (Used in any order) Press "F" to run the contour in 3D, similarly to Step.7 but using an alternative energy, the Local Global Chan-Vese. The user can switch the energy he is using at any time.
- (Used in any order) Press "U" to run the contour in 3D, similarly to Step.7 but using an alternative energy, the curvature flow. The user can switch the energy he is using at any time.
- (Optional) Turn on “Volume Rendering” of the label image in 3D (notice the parameters set for faster interaction). This will be updated during the evolution
- Examine the current segmentation by flipping through the 2D viewers, providing input to guide the evolution.
- Repeat previous steps (or any subset of them) until convergence to the desired segmentation.
- Once satisfied with the segmentation, stop CarreraSlice by clicking "Stop Interactive Segmentor"
Panels and their use
There are two parameters to set: the radius that sets the band around the current initialisation in which image data is considered (for Local-Global Chan-Vese energy) and the number of contour iterations. A large radius means data from far lying regions influences the segmentation (this increases the computational complexity). A small radius ensures that only nearby pixels influence the contour (but set too small will require a better contour initialisation from the user). The number of iterations refers to the time for which the segmenting surface is allowed to evolve before querying the user for input. A small number allows the user to catch the surface before a large error is made, reducing corrective inputs required but may be tedious/slow.
- Kolesov, I., Karasev, P., Muller, G., Chudy, K., Xerogeanes, J., and Tannenbaum, A., “Human supervisory control framework for interactive medical image segmentation,” in International Conference on Medical Image Computing and Computer Assisted Intervention (MICCAI) Computational Biomechanics for Medicine Workshop, Proceeding of the, 2011.
- Karasev, P., Kolesov, I., Chudy, K., Muller, G., Xerogeanes, J., and Tannenbaum, A., “Interactive mri segmentation with controlled active vision,” in IEEE Conference on Decision and Control, Proceedings of the, IEEE, Dec. 2011.
- Karasev, P., Kolesov, I., Fritscher, K., Vela, P., Mitchell, P., and Tannenbaum, A.. “Interactive Medical Image Segmentation using PDE Control Of Active Contours”. In: Medical Imaging, IEEE Transactions on (In Submission) (2013)
- Xerogeanes, J., Mitchell, P. , Karasev, P., Kolesov, I. and Romine, S. . “An Anatomic and Morphologic Evaluation of the Quadriceps Tendon Using 3D MRI Reconstruction: Applications for ACL Autograft Choice and Procurement”. In: Journal of Bone and Joint Surgery (In Submission) (2013)
Information for Developers
|Section under construction.|