Applications/CellBoundaryExtractor2D: Difference between revisions

From MiToBo
Jump to navigationJump to search
(Created page with "<br/> <br/> == Cell Boundary Extractor 2D == The ''Cell Boundary Extractor 2D'' is available since release version 1.8.13.1 of MiToBo.<br/><br/> This operator aims to extract ce...")
 
Line 27: Line 27:
===== Usage =====
===== Usage =====
To run the CellBoundaryExtractor2D perform the following steps:
To run the CellBoundaryExtractor2D perform the following steps:
* install MiToBo by following the instructions on the [[Installation]] page
* install MiToBo by following the instructions on the [[Installation]] page<br>
 
<span style="color:#ff0000"> '''Important note:'''<br> the CellBoundaryExtractor2D operator relies for Dijkstra gap closing on version 1.2.0 of the external '''JGraphT''' library.<br> Fiji by default ships with an older version of this library which causes incompatibilites. To avoid breaking Fiji installations by activating MiToBo's update site we currently do not distribute the JGraphT library via our update site.<br>
To use the CellBoundaryExtractor2D you need to manually install the jar:</span>
* <span style="color:#ff0000"> Uninstall the old jar ''jgrapht-0.8.3.jar'' from your local installation via '''Help -> Update...''', '''Advanced mode'''.<br> Search for '''jgrapht''' and select as '''Status/Action''' the option '''Uninstall''', then press '''Apply Changes''' and close Fiji.<br> Note that this may render some other plugins like TrackMate to stop working, but there is currently no option to run them in parallel.</span>
* <span style="color:#ff0000"> Download the new jar ''jgrapht-core-1.2.0.jar'' from [http://central.maven.org/maven2/org/jgrapht/jgrapht-core/1.2.0/jgrapht-core-1.2.0.jar here].</span>
* <span style="color:#ff0000"> Copy the jar into the folder ''jars'' of your local Fiji installation and start Fiji again.</span>
<br>
Afterwards the CellBoundaryExtractor2D can be invoked as follows:
* run MiToBo and start the operator runner by selecting the menu item '''''MiToBo Runner''''' from '''''Plugins -> MiToBo'''''  
* run MiToBo and start the operator runner by selecting the menu item '''''MiToBo Runner''''' from '''''Plugins -> MiToBo'''''  
* in the selection menu navigate to 'de.unihalle.informatik.MiToBo.apps.cells2D' and select the operator '''''CellBoundaryExtractor2D'''''
* in the selection menu navigate to 'de.unihalle.informatik.MiToBo.apps.cells2D' and select the operator '''''CellBoundaryExtractor2D'''''
This will bring up the operator window of the CellBoundaryExtractor2D.<br><br>
This will bring up the operator window of the CellBoundaryExtractor2D.<br><br>


* '''<u>Input data:</u>'''<br>The operator expects a special organization of the input image data which is shown in the figure below. All the data should be contained in a common top-level folder, here named ''"experiment"''.<br> The images for each treatment/genotype/protein have to be put into separate sub-folders of this top-level folder, here named ''"group-1"'', ''"group-2"'' and so on. Besides the set of corresponding images,<br> each sub-folder is required to contain an additional sub-folder named ''"results_segmentation"'' where the annotation files with the cell areas or boundaries, respectively, are stored.<br><br>  
* '''<u>Input data:</u>'''<br>To ease interplay with the [[Applications/CytoskeletonAnalyzer2D|CytoskeletonAnalyzer2D]] the operator expects a special organization of the input image data which is outlined in the figure below. All the data should be contained in a common top-level folder, here named ''"experiment"''.<br> The images of different sub-groups (treatments/genotypes/proteins) should be found in separate sub-folders of this top-level folder, here named ''"group-1"'', ''"group-2"'' and so on. Note that the sub-folders named ''"results_features"'' can savely be ignored and don't have to be present for running the CellBoundaryExtractor2D. They will lateron be added by the [[Applications/CytoskeletonAnalyzer2D|CytoskeletonAnalyzer2D]].<br><br>  
[[File:FolderStructure.png|1200px|center|link=]]
[[File:FolderStructure.png|1200px|center|link=]]
:For each image named ''"<imagename>.tif"'' a corresponding mask file is expected to be found in that folder. The mask file should have the same basename like the corresponding image file,<br> but either end on "-mask.tif" (e.g., ''"<imagename>-mask.tif"'') in case of using label images as masks, or on ''"-mask.zip"'' or ''"-mask.roi"'' (e.g., ''"<imagename>-mask.zip"''), respectively, in case of using region sets as mask data.<br> Note that the operator currently only accepts '''ImageJ 1.x ROI sets''' as input. If label images are used as segmentation masks, the labels of individual cells in the label images are used as unique identifiers for the cells, i.e.,<br> are used as labels in the various plots. If the segmentation data is given in terms of ROIs a unique identifier is derived from the order of the cell boundaries in the ROI set.<br> Note that in the latter case a mask image is written to the output directory as additional output where the cells are marked by their identifiers to allow for easier assessment of the results.<br><br> Each of the sub-folders in the top-level folder is treated as a separate group of cells or experimental condition, thus, the cells of all images within one sub-folder are collected in a single set.<br> The names of the folders are used to label the different groups in the various output data files.<br> If the input images contain more than one channel you can select the channel on which the Cytoskeleton Analyzer should work. By default the first channel is used. <br><br>


* '''<u>Output data:</u>'''<br>The operator generates image- or group-specific output data files as listed in the table below. All data files specific to a single input image are stored in a new sub-folder named ''"results_features"'' in the sub-folder of each group. All global output data files are stored directly in the top-level folder. The string ''imageID'' below represents the name of a single input image, the string ''groupID'' refers to a specific group. In addition to saving the output data to file bar charts and box-whisker plots are directly shown in the graphical user interface of ImageJ/Fiji upon termination of the analysis process. <br> <br>
* '''<u>Output data:</u>'''<br>The operator generates for each image a label image with extracted cell regions as well as a file of cell boundaries in ImageJ ROI format. These files are stored in a new sub-folder termed ''"results_segmentation"'' in the sub-folder of each group. This way the output of the CellBoundaryExtractor2D can directly be specified as input for the [[Applications/CytoskeletonAnalyzer2D|CytoskeletonAnalyzer2D]]. <br> Optionally, by checking the Option '''Show/save additional results?''' in the GUI additional images of intermediate results can be generated listed in the table below (<imageID> denotes the name of a given input image without ending).<br><br>
   
   
{|class="wikitable" style="margin: auto;"
{|class="wikitable" style="margin: auto;"
|style="color:black; background-color:#ffffcc; width:25%"|'''Output File Name'''
|style="color:black; background-color:#ffffcc; width:25%"|'''Output File Name'''
|style="color:black; background-color:#ffffcc; width:20%"|'''Where to find it...'''
|style="color:black; background-color:#ffffcc; width:45%"|'''Description'''
|style="color:black; background-color:#ffffcc; width:45%"|'''Description'''
|-
|-
|<imageID>-features.txt
|<imageID>-label.tif
|folder ''results_features''
|Label image of extracted cell regions.
|Feature data for single image file.
|-
|<imageID>-features.tif
|folder ''results_features''
|Image stack visualizing the feature data for single image.
|-
|<imageID>-clusterDistro.txt
|folder ''results_features''
|Cluster distributions for each cell individually and for all cells in total of the image.
|-
|<imageID>-clusters.tif
|folder ''results_features''
|Pseudo-colored image illustrating the cluster distribution per image.
|-
|-
|<groupID>-distributionChart.png
|<imageID>-allRois.zip
|folder ''results_features''
|ImageJ ROIs of extracted cell boundaries.
|Stacked bar plot of the cluster distribution for each cell of the group.
|-
|-
|AllCellsClusterStats.txt
|<imageID>-vessels.tif
|top-level folder
|Visualization of the vesselness map.
|Cluster distribution of raw data for all images and cells.
|-
|-
|AllCellsPCASubspaceStats.txt
|<imageID>-vessels-binarized.tif
|top-level folder
|Binarized vesselness map after applying Niblack thresholding.
|If PCA is applied to the cluster distribution vectors this file contains the subspace feature vectors for all cells.
|-
|-
|AllCellsDistanceData.txt
|<imageID>-vessels-binarized-filtered.tif
|top-level folder
|Binarized vesselness map after filtering of, e.g., too small components.
|Matrix of pairwise normalized Euclidean distances between cluster distribution vectors of all cells.
|-
|-
|AllGroupsDistanceData.txt
|<imageID>-skeleton-initial.tif
|top-level folder
|Image of initial boundary skeleton after vesselness filtering and binarization.
|Matrix of pairwise normalized Euclidean distances between average cluster distribution vectors of all groups.
|-
|-
|AllGroupsSimilarityNetworkData.txt
|<imageID>-skeleton-final.tif
|top-level folder
|Image of final boundary skeleton after post-processing and gap closing.
|Similarity network suitable for import and visualization in Cytoscape.
|-
|-
|}
|}
Line 94: Line 81:
|style="color:black; background-color:#ffffcc; width=30%"|'''Description'''
|style="color:black; background-color:#ffffcc; width=30%"|'''Description'''
|-
|-
|''Image File Folder''
|rowspan=2|''Operation Mode''
|
|BATCH
|Top-level folder containing data for all groups and experimental conditions of interest, respectively.
|rowspan=2|Basic processing mode:<br> - BATCH: process all images in the sub-folders of the given top level folder<br> - SINGLE_IMAGE: process the currently active image only
|-
|-
|rowspan=2|''Boundary File Format''
|SINGLE_IMAGE
|LABEL_IMAGE
|rowspan=2|Format of the segmentation data files with cell boundary information:<br> - LABEL_IMAGE: images with unique labels for each cell and a value of zero for the background <br> - IJ_ROIS: set of ImageJ 1.x ROIs, one ROI for each cell
|-
|-
|IJ_ROIS
|''Input Directory/Image''
|
|Top-level folder containing sub-folders of all image groups to segment or input image name, respectively.
|-
|-
|''Cytoskeleton Channel''
|''Cell Boundary Channel''
|
|
|Channel with the image data of the fluorescently labeled cytoskeleton.
|Channel with the fluorescently-labeled cell membranes.
|-
|-
|''Calculate features''
|rowspan=2|''Border Contrast''
|
|Activates the feature calculation, can be omitted if features have been extracted already.
|-
|-
|''Feature Extractor''
|BRIGHT_ON_DARK
|
|rowspan=2|Appearance of cell boundaries in images:<br> - BRIGHT_ON_DARK: boundaries are brighter than the background<br> - DARK_ON_BRIGHT: boundaries are darker than the background
|Feature operator to apply.
|-
|-
|''Tile size''
|
|
|Tile size in x and y direction for the sliding window used for feature extraction.
|DARK_ON_BRIGHT
|-
|-
|''Tile shift''
|''Minimal Size of Cells''
|
|
|Tile shifts in x and y direction, i.e. pixel distance between subsequent positions of the sliding window.
|Minimal size of cells, cells below this threshold are deleted.
|-
|-
|''Number of feature clusters''
|''Maximal Size of Cells''
|
|
|Number of feature clusters applied in feature vector clustering.
|Maximal size of cells, cells above this threshold are deleted.
|-
|-
|''Do PCA in stage II?''
|''Show/save additional results?''
|
|
|Optionally, a principal component analysis (PCA) can be applied to the extracted cluster distribution vectors,<br> and subsequent distance calculations can be restricted to the most significant principal components only.
|Enables or disables display or storage, respectively, of additional intermediate results.
|}
|}



Revision as of 11:02, 22 January 2019



Cell Boundary Extractor 2D

The Cell Boundary Extractor 2D is available since release version 1.8.13.1 of MiToBo.

This operator aims to extract cell boundaries from microscope images with fluorescently-labeled cell membranes using vesselness enhancement filters.
For manual post-processing of sub-optimal segmentation outcomes you may take a look at our interactive label image editor.

Latest News

The CellBoundaryExtractor2D Plugin has been released in MiToBo and MiToBo-Plugins 1.8.13.1.

Related Publications
  • B. Möller and K. Bürstenbinder,
    "Semi-automatic Cell Segmentation from Noisy Image Data for Quantification of Microtubule Organization on Single Cell Level".
    In Proc. of IEEE International Symposium on Biomedical Imaging (ISBI '19), Venice, Italy, April 2019, accepted.
Name of Plugin/Operator

de.unihalle.informatik.MiToBo.apps.cells2D.CellBoundaryExtractor2D
(available since MiToBo version 1.8.13.1)

Main features
  • automatic extraction of fluorescently-labeled cell membranes
  • gap closing based on Dijkstra shortest path techniques
Usage

To run the CellBoundaryExtractor2D perform the following steps:

  • install MiToBo by following the instructions on the Installation page

Important note:
the CellBoundaryExtractor2D operator relies for Dijkstra gap closing on version 1.2.0 of the external JGraphT library.
Fiji by default ships with an older version of this library which causes incompatibilites. To avoid breaking Fiji installations by activating MiToBo's update site we currently do not distribute the JGraphT library via our update site.
To use the CellBoundaryExtractor2D you need to manually install the jar:

  • Uninstall the old jar jgrapht-0.8.3.jar from your local installation via Help -> Update..., Advanced mode.
    Search for jgrapht and select as Status/Action the option Uninstall, then press Apply Changes and close Fiji.
    Note that this may render some other plugins like TrackMate to stop working, but there is currently no option to run them in parallel.
  • Download the new jar jgrapht-core-1.2.0.jar from here.
  • Copy the jar into the folder jars of your local Fiji installation and start Fiji again.


Afterwards the CellBoundaryExtractor2D can be invoked as follows:

  • run MiToBo and start the operator runner by selecting the menu item MiToBo Runner from Plugins -> MiToBo
  • in the selection menu navigate to 'de.unihalle.informatik.MiToBo.apps.cells2D' and select the operator CellBoundaryExtractor2D

This will bring up the operator window of the CellBoundaryExtractor2D.

  • Input data:
    To ease interplay with the CytoskeletonAnalyzer2D the operator expects a special organization of the input image data which is outlined in the figure below. All the data should be contained in a common top-level folder, here named "experiment".
    The images of different sub-groups (treatments/genotypes/proteins) should be found in separate sub-folders of this top-level folder, here named "group-1", "group-2" and so on. Note that the sub-folders named "results_features" can savely be ignored and don't have to be present for running the CellBoundaryExtractor2D. They will lateron be added by the CytoskeletonAnalyzer2D.

FolderStructure.png
  • Output data:
    The operator generates for each image a label image with extracted cell regions as well as a file of cell boundaries in ImageJ ROI format. These files are stored in a new sub-folder termed "results_segmentation" in the sub-folder of each group. This way the output of the CellBoundaryExtractor2D can directly be specified as input for the CytoskeletonAnalyzer2D.
    Optionally, by checking the Option Show/save additional results? in the GUI additional images of intermediate results can be generated listed in the table below (<imageID> denotes the name of a given input image without ending).

Output File Name Description
<imageID>-label.tif Label image of extracted cell regions.
<imageID>-allRois.zip ImageJ ROIs of extracted cell boundaries.
<imageID>-vessels.tif Visualization of the vesselness map.
<imageID>-vessels-binarized.tif Binarized vesselness map after applying Niblack thresholding.
<imageID>-vessels-binarized-filtered.tif Binarized vesselness map after filtering of, e.g., too small components.
<imageID>-skeleton-initial.tif Image of initial boundary skeleton after vesselness filtering and binarization.
<imageID>-skeleton-final.tif Image of final boundary skeleton after post-processing and gap closing.



  • Configuration Parameters:
Parameter Name Possible Values Description
Operation Mode BATCH Basic processing mode:
- BATCH: process all images in the sub-folders of the given top level folder
- SINGLE_IMAGE: process the currently active image only
SINGLE_IMAGE
Input Directory/Image Top-level folder containing sub-folders of all image groups to segment or input image name, respectively.
Cell Boundary Channel Channel with the fluorescently-labeled cell membranes.
Border Contrast
BRIGHT_ON_DARK Appearance of cell boundaries in images:
- BRIGHT_ON_DARK: boundaries are brighter than the background
- DARK_ON_BRIGHT: boundaries are darker than the background
DARK_ON_BRIGHT
Minimal Size of Cells Minimal size of cells, cells below this threshold are deleted.
Maximal Size of Cells Maximal size of cells, cells above this threshold are deleted.
Show/save additional results? Enables or disables display or storage, respectively, of additional intermediate results.


Updates



January 2019

  • Released first official version of CellBoundaryExtractor2D in MiToBo/MiToBo plugins 1.8.13.1.