comparison omero_hyperstack_to_gastruloid_measurements.xml @ 2:45375dc5dd8d draft default tip

planemo upload for repository https://github.com/lldelisle/tools-lldelisle/tree/master/tools/omero_hyperstack_to_gastruloid_measurements commit 5e181f51312e53a72d354584439fa9359cd16723-dirty
author lldelisle
date Thu, 15 Feb 2024 12:28:09 +0000
parents bd5771ff6aa3
children
comparison
equal deleted inserted replaced
1:bd5771ff6aa3 2:45375dc5dd8d
1 <tool id="omero_hyperstack_to_gastruloid_measurements" name="Omero hyperstack to Gastruloid measurements" profile="20.01" version="@TOOL_VERSION@+galaxy0"> 1 <tool id="omero_hyperstack_to_gastruloid_measurements" name="Omero hyperstack to Gastruloid measurements" profile="20.01" version="@TOOL_VERSION@+galaxy0">
2 <macros> 2 <macros>
3 <token name="@TOOL_VERSION@">20231220</token> 3 <token name="@TOOL_VERSION@">20240214</token>
4 <xml name="segmentation"> 4 <xml name="segmentation">
5 <conditional name="use_ilastik"> 5 <conditional name="use_ilastik">
6 <param name="segmentation_method" type="select" label="Segmentation method"> 6 <param name="segmentation_method" type="select" label="Segmentation method">
7 <option value="convert_to_mask">Simply convert to mask</option> 7 <option value="convert_to_mask">Simply convert to mask</option>
8 <option value="ilastik">Use an ilastik project</option> 8 <option value="ilastik">Use an ilastik project</option>
27 <when value="no"> 27 <when value="no">
28 <param name="ilastik_label_BG" type="hidden" value="0"/> 28 <param name="ilastik_label_BG" type="hidden" value="0"/>
29 <param name="probability_threshold_BG" type="hidden" value="0"/> 29 <param name="probability_threshold_BG" type="hidden" value="0"/>
30 </when> 30 </when>
31 </conditional> 31 </conditional>
32 <param name="thresholding_method" type="hidden" value="Default"/>
32 </when> 33 </when>
33 <when value="convert_to_mask"> 34 <when value="convert_to_mask">
35 <param name="thresholding_method" type="select" label="Thresholding method" help="Method to use in the convert to mask">
36 <option value="Default">Default</option>
37 <option value="Huang">Huang</option>
38 <option value="Intermodes">Intermodes</option>
39 <option value="IsoData">IsoData</option>
40 <option value="IJ_IsoData">IJ_IsoData</option>
41 <option value="Li">Li</option>
42 <option value="MaxEntropy">MaxEntropy</option>
43 <option value="Mean">Mean</option>
44 <option value="MinError">MinError</option>
45 <option value="Minimum">Minimum</option>
46 <option value="Moments">Moments</option>
47 <option value="Otsu">Otsu</option>
48 <option value="Percentile">Percentile</option>
49 <option value="RenyiEntropy">RenyiEntropy</option>
50 <option value="Shanbhag">Shanbhag</option>
51 <option value="Triangle">Triangle</option>
52 <option value="Yen">Yen</option>
53 </param>
34 <param name="ilastik_project_type" type="hidden" value="Regular" /> 54 <param name="ilastik_project_type" type="hidden" value="Regular" />
35 <param name="ilastik_label_OI" type="hidden" value="3" /> 55 <param name="ilastik_label_OI" type="hidden" value="3" />
36 <param name="probability_threshold" type="hidden" value="0" /> 56 <param name="probability_threshold" type="hidden" value="0" />
37 <section name="background" title="" > 57 <section name="background" title="" >
38 <param name="ilastik_label_BG" type="hidden" value="0"/> 58 <param name="ilastik_label_BG" type="hidden" value="0"/>
39 <param name="probability_threshold_BG" type="hidden" value="0"/> 59 <param name="probability_threshold_BG" type="hidden" value="0"/>
40 </section> 60 </section>
41 </when> 61 </when>
42 </conditional> 62 </conditional>
43 <param name="radius_median" type="float" value="20" label="Radius for median (=smooth the mask)" /> 63 <section name="options" title="Options..." expanded="false" >
44 <param name="min_size_particle" type="integer" min="0" value="5000" label="Minimum surface for Analyze Particle" /> 64 <param name="options_do" type="select" label="In Options... do=" help="Operation to perform after thresholding">
65 <option value="Nothing">Nothing</option>
66 <option value="Erode">Erode</option>
67 <option value="Dilate">Dilate</option>
68 <option value="Open">Open</option>
69 <option value="Close">Close</option>
70 <option value="Outline">Outline</option>
71 <option value="Fill">Fill</option>
72 <option value="Holes">Holes</option>
73 <option value="Skeletonize">Skeletonize</option>
74 </param>
75 <param name="options_iteration" type="integer" min="1" value="1" label="In Options... iteration=" />
76 <param name="options_count" type="integer" min="1" max="8" value="1" label="In Options... count=" />
77 </section>
78 <param name="fill_holes_before_median" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Fill holes before the Median..." />
79 <param name="radius_median" type="float" value="10" label="Radius for median (=smooth the mask)" />
80 <param name="min_size_particle" type="float" min="0" value="20000" label="Minimum surface for Analyze Particle" />
45 <param name="keep_only_largest" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Keep only one gastruloid per timepoint" /> 81 <param name="keep_only_largest" type="boolean" truevalue="true" falsevalue="false" checked="true" label="Keep only one gastruloid per timepoint" />
46 </xml> 82 </xml>
47 </macros> 83 </macros>
48 <requirements> 84 <requirements>
49 <requirement type="package" version="20220414">fiji</requirement> 85 <requirement type="package" version="20231211">fiji</requirement>
50 <requirement type="package" version="3.7">python</requirement> 86 <requirement type="package" version="3.7">python</requirement>
51 <requirement type="package" version="2.0.0">fiji-max_inscribed_circles</requirement> 87 <requirement type="package" version="2.1.0">fiji-max_inscribed_circles</requirement>
52 <requirement type="package" version="1.8.2">fiji-ilastik</requirement> 88 <requirement type="package" version="1.8.2">fiji-ilastik</requirement>
53 <requirement type="package" version="5.8.0">fiji-omero_ij</requirement> 89 <requirement type="package" version="5.8.3">fiji-omero_ij</requirement>
54 <requirement type="package" version="5.12.2">fiji-simple_omero_client</requirement> 90 <requirement type="package" version="5.16.0">fiji-simple_omero_client</requirement>
55 </requirements> 91 </requirements>
56 <command detect_errors="exit_code"><![CDATA[ 92 <command detect_errors="exit_code"><![CDATA[
57 ## the user wants to use a non-public OMERO instance 93 ## the user wants to use a non-public OMERO instance
58 ## check if credentials are set in the user-preferences, if not warn the user and exit 94 ## check if credentials are set in the user-preferences, if not warn the user and exit
59 #set $username = $__user__.extra_preferences.get('omero_account|username', "") 95 #set $username = $__user__.extra_preferences.get('omero_account|username', "")
73 109
74 mkdir output && 110 mkdir output &&
75 ## Because ilastik wants to write to ${HOME}/.cache and ${HOME}/.config 111 ## Because ilastik wants to write to ${HOME}/.cache and ${HOME}/.config
76 export HOME=`pwd` && 112 export HOME=`pwd` &&
77 ImageJ-ilastik --ij2 --headless --console --run '$__tool_directory__/'1-omero_timelapse_image_to_measurements_phase.groovy 113 ImageJ-ilastik --ij2 --headless --console --run '$__tool_directory__/'1-omero_timelapse_image_to_measurements_phase.groovy
78 'USERNAME="",PASSWORD="",credentials="${credentials}",host="${omero_host}",port="${omero_port}",object_type="${omero_object.object_type}",id="${omero_object.omero_id}",segmentation_method="${mode.use_ilastik.segmentation_method}",use_existing="${mode.use_existing}",ilastik_project="$ilastik_project_file",ilastik_project_short_name="$ilastik_project_name",ilastik_project_type="${mode.use_ilastik.ilastik_project_type}",ilastik_label_OI="${mode.use_ilastik.ilastik_label_OI}",probability_threshold="${mode.use_ilastik.probability_threshold}",radius_median="${mode.radius_median}",min_size_particle="${mode.min_size_particle}",get_spine="true",minimum_diameter="${minimum_diameter}",closeness_tolerance="${closeness_tolerance}",min_similarity="${min_similarity}",output_directory="output",debug="${debug}",rescue="${mode.rescue}",ilastik_label_BG="${mode.use_ilastik.background.ilastik_label_BG}",probability_threshold_BG="${mode.use_ilastik.background.probability_threshold_BG}",keep_only_largest="${mode.keep_only_largest}"' > output.log 114 'USERNAME="",PASSWORD="",credentials="${credentials}",host="${omero_host}",port="${omero_port}",object_type="${omero_object.object_type}",id="${omero_object.omero_id}",segmentation_method="${mode.use_ilastik.segmentation_method}",use_existing="${mode.use_existing}",ilastik_project="$ilastik_project_file",ilastik_project_short_name="$ilastik_project_name",ilastik_project_type="${mode.use_ilastik.ilastik_project_type}",ilastik_label_OI="${mode.use_ilastik.ilastik_label_OI}",probability_threshold="${mode.use_ilastik.probability_threshold}",radius_median="${mode.radius_median}",min_size_particle="${mode.min_size_particle}",get_spine="true",minimum_diameter_um="${minimum_diameter_um}",closeness_tolerance_um="${closeness_tolerance_um}",min_similarity="${min_similarity}",output_directory="output",debug="${debug}",rescue="${mode.rescue}",ilastik_label_BG="${mode.use_ilastik.background.ilastik_label_BG}",probability_threshold_BG="${mode.use_ilastik.background.probability_threshold_BG}",keep_only_largest="${mode.keep_only_largest}",replace_at_runtime="${mode.replace_at_runtime}",thresholding_method="${mode.use_ilastik.thresholding_method}",options_do="${mode.options.options_do}",options_iteration="${mode.options.options_iteration}",options_count="${mode.options.options_count}",fill_holes_before_median="${mode.fill_holes_before_median}"' > output.log
79 ]]> 115 ]]>
80 </command> 116 </command>
81 <configfiles> 117 <configfiles>
82 <configfile name="credentials"><![CDATA[#set $username = $__user__.extra_preferences.get('omero_account|username', "") 118 <configfile name="credentials"><![CDATA[#set $username = $__user__.extra_preferences.get('omero_account|username', "")
83 #set $password = $__user__.extra_preferences.get('omero_account|password', "") 119 #set $password = $__user__.extra_preferences.get('omero_account|password', "")
111 <param name="omero_id" type="integer" value="" label="Dataset ID on omero" /> 147 <param name="omero_id" type="integer" value="" label="Dataset ID on omero" />
112 </when> 148 </when>
113 </conditional> 149 </conditional>
114 <conditional name="mode"> 150 <conditional name="mode">
115 <param name="mode_select" type="select" label="Which mode do you want to use?" > 151 <param name="mode_select" type="select" label="Which mode do you want to use?" >
152 <option value="replace_existing">Replace existing (not recommanded with Ilastik)</option>
153 <option value="spine_only">Recompute only spine</option>
116 <option value="regular">Regular (from scratch)</option> 154 <option value="regular">Regular (from scratch)</option>
117 <option value="spine_only">Recompute only spine</option>
118 <option value="rescue">Rescue (if Regular did not go to the end)</option> 155 <option value="rescue">Rescue (if Regular did not go to the end)</option>
119 </param> 156 </param>
157 <when value="replace_existing">
158 <expand macro="segmentation"/>
159 <param name="replace_at_runtime" type="hidden" value="true"/>
160 <param name="rescue" type="hidden" value="false"/>
161 <param name="use_existing" type="hidden" value="false"/>
162 </when>
120 <when value="regular"> 163 <when value="regular">
121 <expand macro="segmentation"/> 164 <expand macro="segmentation"/>
165 <param name="replace_at_runtime" type="hidden" value="false"/>
122 <param name="rescue" type="hidden" value="false"/> 166 <param name="rescue" type="hidden" value="false"/>
123 <param name="use_existing" type="hidden" value="false"/> 167 <param name="use_existing" type="hidden" value="false"/>
124 </when> 168 </when>
125 <when value="rescue"> 169 <when value="rescue">
126 <expand macro="segmentation"/> 170 <expand macro="segmentation"/>
171 <param name="replace_at_runtime" type="hidden" value="false"/>
127 <param name="rescue" type="hidden" value="true"/> 172 <param name="rescue" type="hidden" value="true"/>
128 <param name="use_existing" type="hidden" value="false"/> 173 <param name="use_existing" type="hidden" value="false"/>
129 </when> 174 </when>
130 <when value="spine_only"> 175 <when value="spine_only">
131 <section name="use_ilastik" title="" > 176 <section name="use_ilastik" title="" >
136 <section name="background" title="" > 181 <section name="background" title="" >
137 <param name="ilastik_label_BG" type="hidden" value="0"/> 182 <param name="ilastik_label_BG" type="hidden" value="0"/>
138 <param name="probability_threshold_BG" type="hidden" value="0"/> 183 <param name="probability_threshold_BG" type="hidden" value="0"/>
139 </section> 184 </section>
140 </section> 185 </section>
141 <param name="radius_median" type="hidden" value="20" /> 186 <param name="replace_at_runtime" type="hidden" value="false"/>
142 <param name="min_size_particle" type="hidden" value="5000" /> 187 <param name="radius_median" type="hidden" value="10" />
188 <param name="min_size_particle" type="hidden" value="20000" />
143 <param name="keep_only_largest" type="hidden" value="true"/> 189 <param name="keep_only_largest" type="hidden" value="true"/>
144 <param name="rescue" type="hidden" value="false"/> 190 <param name="rescue" type="hidden" value="false"/>
145 <param name="use_existing" type="hidden" value="true"/> 191 <param name="use_existing" type="hidden" value="true"/>
146 </when> 192 </when>
147 </conditional> 193 </conditional>
148 <param name="minimum_diameter" type="integer" min="0" value="20" label="Minimum diameter of inscribed circles" /> 194 <param name="minimum_diameter_um" type="float" min="0" value="40" label="Minimum diameter of inscribed circles (in um)" />
149 <param name="closeness_tolerance" type="integer" min="0" value="50" label="Closeness Tolerance for the spine" help="Maximum distance between circles along the spine"/> 195 <param name="closeness_tolerance_um" type="float" min="0" value="50" label="Closeness Tolerance for the spine (in um)" help="Maximum distance between circles along the spine"/>
150 <param name="min_similarity" type="float" min="-1" max="1" value="0.1" label="Min similarity for the spine" help="Close to 0 values allow more U shapes while close to 1 values only allows I shapes" /> 196 <param name="min_similarity" type="float" min="-1" max="1" value="0.1" label="Min similarity for the spine" help="Close to 0 values allow more U shapes while close to 1 values only allows I shapes" />
151 <param name="debug" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Debug the elongation index" help="This will output all inscribed circles" /> 197 <param name="debug" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Debug the elongation index" help="This will output all inscribed circles" />
152 <param name="keep_intermediate" type="boolean" checked="false" label="Keep intermediate results (ilastik prediction + tables)" /> 198 <param name="keep_intermediate" type="boolean" checked="false" label="Keep intermediate results (ilastik prediction + tables)" />
153 </inputs> 199 </inputs>
154 200
186 // merge the analysis script with templates available at 232 // merge the analysis script with templates available at
187 // https://github.com/BIOP/OMERO-scripts/tree/025047955b5c1265e1a93b259c1de4600d00f107/Fiji 233 // https://github.com/BIOP/OMERO-scripts/tree/025047955b5c1265e1a93b259c1de4600d00f107/Fiji
188 234
189 /* 235 /*
190 * = COPYRIGHT = 236 * = COPYRIGHT =
191 * © All rights reserved. ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE, Switzerland, BioImaging And Optics Platform (BIOP), 2023 237 * © All rights reserved. ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE, Switzerland, BioImaging And Optics Platform (BIOP), 2024
192 * 238 *
193 * Licensed under the BSD-3-Clause License: 239 * Licensed under the BSD-3-Clause License:
194 * Redistribution and use in source and binary forms, with or without modification, are permitted provided 240 * Redistribution and use in source and binary forms, with or without modification, are permitted provided
195 * that the following conditions are met: 241 * that the following conditions are met:
196 * 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 242 * 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.