Mercurial > repos > iuc > imagej2_skeletonize3d
comparison imagej2_skeletonize3d.xml @ 0:8b787f641b9c draft
planemo upload commit 98c34e070343a117019ffd25a3af117808159bf5-dirty
| author | iuc |
|---|---|
| date | Tue, 04 Aug 2015 13:21:32 -0400 |
| parents | |
| children | 269923244cc8 |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:8b787f641b9c |
|---|---|
| 1 <?xml version='1.0' encoding='UTF-8'?> | |
| 2 <tool id="imagej2_skeletonize3d" name="Skeletonize images" version="1.0.0"> | |
| 3 <description>with ImageJ2</description> | |
| 4 <macros> | |
| 5 <import>imagej2_macros.xml</import> | |
| 6 </macros> | |
| 7 <expand macro="fiji_20141125_requirements" /> | |
| 8 <command> | |
| 9 <![CDATA[ | |
| 10 python $__tool_directory__/imagej2_skeletonize3d.py | |
| 11 --input "$input" | |
| 12 --input_datatype $input.ext | |
| 13 @max_heap_size_args@ | |
| 14 --jython_script $__tool_directory__/jython_script.py | |
| 15 --output "$output" | |
| 16 --output_datatype $output_datatype | |
| 17 ]]> | |
| 18 </command> | |
| 19 <inputs> | |
| 20 <param format="bmp,eps,gif,jpg,pcx,pgm,png,psd,tiff" name="input" type="data" label="Select grayscale image"/> | |
| 21 <param name="output_datatype" type="select" label="Save as format"> | |
| 22 <expand macro="image_datatypes" /> | |
| 23 </param> | |
| 24 <expand macro="max_heap_size_type_conditional" /> | |
| 25 </inputs> | |
| 26 <outputs> | |
| 27 <data name="output" format_source="input" label="${tool.name} on ${on_string}"> | |
| 28 <actions> | |
| 29 <action type="format"> | |
| 30 <option type="from_param" name="output_datatype" /> | |
| 31 </action> | |
| 32 </actions> | |
| 33 </data> | |
| 34 </outputs> | |
| 35 <tests> | |
| 36 <test> | |
| 37 <param name="input" value="blobs.gif" /> | |
| 38 <param name="input_datatype" value="gif" /> | |
| 39 <param name="output_datatype" value="gif" /> | |
| 40 <output name="output" file="skeletonized_blobs.gif" compare="sim_size" /> | |
| 41 </test> | |
| 42 <test> | |
| 43 <param name="input" value="clown.jpg" /> | |
| 44 <param name="input_datatype" value="jpg" /> | |
| 45 <param name="output_datatype" value="jpg" /> | |
| 46 <output name="output" file="skeletonized_clown.jpg" compare="sim_size" /> | |
| 47 </test> | |
| 48 </tests> | |
| 49 <help> | |
| 50 | |
| 51 .. class:: warningmark | |
| 52 | |
| 53 The underlying AnalyzeSkeleton Fiji plugin works on binary images, so other image types will | |
| 54 automatically be converted to binary before they are analyzed. This step is performed using the | |
| 55 ImageJ2 **Make Binary** command with the following settings: **Iterations:** 1, **Count:** 1, | |
| 56 **Black background:** No, **Pad edges when eroding:** No. If these settings are not appropriate, | |
| 57 first manually convert the image to binary using the **Convert to binary (black and white) with | |
| 58 ImageJ2** tool, which allows you to change them. | |
| 59 | |
| 60 **What it does** | |
| 61 | |
| 62 <![CDATA[ | |
| 63 Skeletonizes a 2D or 3D binary (8-bit) image. As Hanno Homman explains in his paper, binary thinning is | |
| 64 used for finding the centerlines (”skeleton”) of objects in the input image. The general idea is to erode | |
| 65 the object’s surface iteratively until only the skeleton remains. Erosion has to be performed symmetrically | |
| 66 in order to the guarantee medial position of the skeleton lines and such that the connectedness of the | |
| 67 object is preserved. Care has to be taken in order not to create holes or cavities in the object. | |
| 68 | |
| 69 There are two major approaches to image thinning: a) kernel-based filters and b) decision trees. Kernel-based | |
| 70 filters apply a structuring element to the image and can generally be extended to dimensions higher than 3D, | |
| 71 to find computationally efficient solutions for 4D and higher dimensions is subject of ongoing research. | |
| 72 Methods based on decision trees are thus far limited to 2D and 3D, but are potentially faster than morphological | |
| 73 filters, if they are well designed and can find more deletable points at each iteration. | |
| 74 | |
| 75 In 3D there are 67,108,864 possible binary combinations of object and background voxels in a 26-neighborhood, | |
| 76 which cannot be completely captured by kernel-based filters. Lee et al. have demonstrated in their work that | |
| 77 their solution, based on a decision tree, can handle all these cases correctly and find all deletable surface | |
| 78 points at each iteration. Thus their algorithm allows for a very fast iterative erosion process. | |
| 79 ]]> | |
| 80 </help> | |
| 81 <citations> | |
| 82 <citation type="doi">10.1006/cgip.1994.1042</citation> | |
| 83 <citation type="doi">10.1038/nmeth.2102</citation> | |
| 84 </citations> | |
| 85 </tool> |
