Difference between revisions of "Slicer3:Module:BinaryErodeOperations-Documentation"
Line 54: | Line 54: | ||
{| | {| | ||
|[[Image:Erode.png|thumb|280px|Binary Erode Iterations]] | |[[Image:Erode.png|thumb|280px|Binary Erode Iterations]] | ||
+ | |[[Image:AfterLabelChange.PNG|thumb|280px|Creating two different labels after erosion processes]] | ||
|} | |} |
Revision as of 19:02, 27 August 2008
Home < Slicer3:Module:BinaryErodeOperations-DocumentationBinary Erode Operations
GENERAL INFORMATION
Module Type&Category
This module is for performing erosion on binary images. The type of this module is CLI and is in the category of Segmentation of Slicer 3.
Authors, Collaborators & Contact
- Author: Bike Kilic, MSc student in Northeastern University
- Contact: kilicbike@gmail.com
Module Description
This module aims to perform erosion method in order to make the two different objects separate in a given image. After separating them, the next step will be creating a label map and changing the labels to specify different regions.
This method uses a structuring element in order to cover the object border with given foreground value. It shrinks the object with this structuring element. For this project, the structuring element is ball structuring element with a radius size which is defined by the user.
For example, the results given in Screen shots part, the structuring element is ball structuring element with radius 5. It took 7 iterations in order to get the desired output before creating different labels.
The input of this module is the output of the BinaryThresholding( or LabelBinaryImages) module at the beginning. For the following iterations, the input is the eroded binary image from the previous iteration.
USAGE
Quick Tour of Features and Use
As seen above, the first figure shows the GUI panel if the user implements BinaryThresholding Module before erosion, whereas the second one shows the GUI panel of BinaryErodeOperations module in the case of using LabelBinaryImages module before erosion.
DEVELOPMENT
Dependencies
The BinaryErodeOperations Module uses four ITK classes. One of them is for binary erosion, which is called itkBinaryErodeImageFilter [1]. Three of ITK classes which are included are used to create structuring elements. For ball structuring element, itkBinaryBallStructuringElement[2]; for cross structuring element itkBinaryCrossStructuringElement[3] and for neighborhood structuring element itkNeighborhood[4] are added.
In this project, for erosion the ball structuring element has been chosen.
The Problems
In this module, the problems were stemmed from the choices of structuring element, the radius size of them. The performance of erosion depends on the properties of structuring element. The reason is that sometimes the shape of the binary image can not be preserved after erosion. For instance, the spheres data I used became had like a square shape if I used other structuring elements instead of ball structuring element. Therefore, ball structuring element was used in BinaryErodeOperations Module. However, if user wants to try others, the default value for structuring element should be changed from the code file. I could not also do it interactive.