|
1 | 1 | { |
2 | | - "manifest_version": "1", |
| 2 | + "manifest_version": "2", |
3 | 3 | "task_list": [ |
4 | 4 | { |
5 | | - "name": "Convert 2D segmentation to 3D", |
6 | | - "executable": "convert_2D_segmentation_to_3D.py", |
7 | | - "input_type": "zarr", |
8 | | - "output_type": "zarr", |
9 | | - "args_schema": { |
10 | | - "title": "Convert2dSegmentationTo3d", |
| 5 | + "name": "Drop T Dimension", |
| 6 | + "output_types": { |
| 7 | + "has_t": false |
| 8 | + }, |
| 9 | + "executable_non_parallel": "drop_t_dimension.py", |
| 10 | + "meta_non_parallel": { |
| 11 | + "cpus_per_task": 2, |
| 12 | + "mem": 8000 |
| 13 | + }, |
| 14 | + "args_schema_non_parallel": { |
| 15 | + "title": "DropTDimension", |
11 | 16 | "type": "object", |
12 | 17 | "properties": { |
13 | | - "input_paths": { |
14 | | - "title": "Input Paths", |
15 | | - "description": "List of paths to the input files (Fractal managed)" |
16 | | - }, |
17 | | - "output_path": { |
18 | | - "title": "Output Path", |
19 | | - "description": "Path to the output file (Fractal managed)" |
| 18 | + "zarr_url": { |
| 19 | + "title": "Zarr Url", |
| 20 | + "type": "string", |
| 21 | + "description": "Path or url to the individual OME-Zarr image to be processed. (standard argument for Fractal tasks, managed by Fractal server)." |
20 | 22 | }, |
21 | | - "component": { |
22 | | - "title": "Component", |
23 | | - "description": "Component name, e.g. \"plate_name.zarr/B/03/0\" (Fractal managed)" |
| 23 | + "suffix": { |
| 24 | + "title": "Suffix", |
| 25 | + "default": "no_T", |
| 26 | + "type": "string", |
| 27 | + "description": "Suffix to be used for the new Zarr image. If overwrite_input is True, this file is only temporary." |
24 | 28 | }, |
25 | | - "metadata": { |
26 | | - "title": "Metadata", |
27 | | - "description": "Metadata dictionary (Fractal managed)" |
| 29 | + "overwrite_input": { |
| 30 | + "title": "Overwrite Input", |
| 31 | + "default": false, |
| 32 | + "type": "boolean", |
| 33 | + "description": "Whether" |
| 34 | + } |
| 35 | + }, |
| 36 | + "required": [ |
| 37 | + "zarr_url" |
| 38 | + ], |
| 39 | + "additionalProperties": false |
| 40 | + }, |
| 41 | + "docs_info": "## drop_t_dimension\nDrops singleton t dimension.\n" |
| 42 | + }, |
| 43 | + { |
| 44 | + "name": "Convert 2D segmentation to 3D", |
| 45 | + "input_types": { |
| 46 | + "is_3D": false |
| 47 | + }, |
| 48 | + "executable_parallel": "convert_2D_segmentation_to_3D.py", |
| 49 | + "meta_parallel": { |
| 50 | + "cpus_per_task": 2, |
| 51 | + "mem": 8000 |
| 52 | + }, |
| 53 | + "args_schema_parallel": { |
| 54 | + "title": "Convert2dSegmentationTo3d", |
| 55 | + "type": "object", |
| 56 | + "properties": { |
| 57 | + "zarr_url": { |
| 58 | + "title": "Zarr Url", |
| 59 | + "type": "string", |
| 60 | + "description": "Path or url to the individual OME-Zarr image to be processed. (standard argument for Fractal tasks, managed by Fractal server)." |
28 | 61 | }, |
29 | 62 | "label_name": { |
30 | 63 | "title": "Label Name", |
31 | 64 | "type": "string", |
32 | 65 | "description": "Name of the label to copy from 2D OME-Zarr to 3D OME-Zarr" |
33 | 66 | }, |
| 67 | + "level": { |
| 68 | + "title": "Level", |
| 69 | + "default": 0, |
| 70 | + "type": "integer", |
| 71 | + "description": "Level of the 2D OME-Zarr label to copy from" |
| 72 | + }, |
34 | 73 | "ROI_tables_to_copy": { |
35 | 74 | "title": "Roi Tables To Copy", |
36 | 75 | "type": "array", |
|
50 | 89 | "items": {}, |
51 | 90 | "description": "Optionally overwriting the names of the ROI tables in the 3D OME-Zarr" |
52 | 91 | }, |
53 | | - "level": { |
54 | | - "title": "Level", |
55 | | - "default": 0, |
56 | | - "type": "integer", |
57 | | - "description": "Level of the 2D OME-Zarr label to copy from" |
| 92 | + "plate_suffix": { |
| 93 | + "title": "Plate Suffix", |
| 94 | + "default": "_mip", |
| 95 | + "type": "string", |
| 96 | + "description": "Suffix of the 2D OME-Zarr that needs to be removed to generate the path to the 3D OME-Zarr. If the 2D OME-Zarr is \"/path/to/my_plate_mip.zarr/B/03/0\" and the 3D OME-Zarr is located in \"/path/to/my_plate.zarr/B/03/0\", the correct suffix is \"_mip\"." |
58 | 97 | }, |
59 | | - "suffix": { |
60 | | - "title": "Suffix", |
61 | | - "default": "mip", |
| 98 | + "image_suffix_2D_to_remove": { |
| 99 | + "title": "Image Suffix 2D To Remove", |
62 | 100 | "type": "string", |
63 | | - "description": "Suffix of the 2D OME-Zarr to copy from" |
| 101 | + "description": "If the image name between 2D & 3D don't match, this is the suffix that should be removed from the 2D image. If the 2D image is in \"/path/to/my_plate_mip.zarr/B/03/ 0_registered\" and the 3D image is in \"/path/to/my_plate.zarr/ B/03/0\", the value should be \"_registered\"" |
| 102 | + }, |
| 103 | + "image_suffix_3D_to_add": { |
| 104 | + "title": "Image Suffix 3D To Add", |
| 105 | + "type": "string", |
| 106 | + "description": "If the image name between 2D & 3D don't match, this is the suffix that should be added to the 3D image. If the 2D image is in \"/path/to/my_plate_mip.zarr/B/03/0\" and the 3D image is in \"/path/to/my_plate.zarr/B/03/0_illum_corr\", the value should be \"_illum_corr\"." |
64 | 107 | }, |
65 | 108 | "overwrite": { |
66 | 109 | "title": "Overwrite", |
|
70 | 113 | } |
71 | 114 | }, |
72 | 115 | "required": [ |
73 | | - "input_paths", |
74 | | - "output_path", |
75 | | - "component", |
76 | | - "metadata", |
| 116 | + "zarr_url", |
77 | 117 | "label_name" |
78 | 118 | ], |
79 | 119 | "additionalProperties": false |
80 | 120 | }, |
81 | | - "meta": { |
82 | | - "parallelization_level": "image", |
83 | | - "cpus_per_task": 2, |
84 | | - "mem": 8000 |
85 | | - }, |
86 | | - "docs_info": "This task loads the 2D segmentation, replicates it along the Z slice and\nstores it back into the 3D OME-Zarr image.\n\nThis is a temporary workaround task, as long as we store 2D data in\na separate OME-Zarr file from the 3D data. Also, some assumptions are made\non the metadata structure, generalization to be tested." |
87 | | - }, |
88 | | - { |
89 | | - "name": "Convert Metadata Components 2D to 3D", |
90 | | - "executable": "convert_metadata_components_2D_to_3D.py", |
91 | | - "input_type": "zarr", |
92 | | - "output_type": "zarr", |
93 | | - "args_schema": { |
94 | | - "title": "ConvertMetadataComponents2dTo3d", |
95 | | - "type": "object", |
96 | | - "properties": { |
97 | | - "input_paths": { |
98 | | - "title": "Input Paths", |
99 | | - "description": "List of paths to the input files (Fractal managed)" |
100 | | - }, |
101 | | - "output_path": { |
102 | | - "title": "Output Path", |
103 | | - "description": "Path to the output file (Fractal managed)" |
104 | | - }, |
105 | | - "metadata": { |
106 | | - "title": "Metadata", |
107 | | - "description": "Metadata dictionary (Fractal managed)" |
108 | | - }, |
109 | | - "from_2d_to_3d": { |
110 | | - "title": "From 2D To 3D", |
111 | | - "default": true, |
112 | | - "type": "boolean", |
113 | | - "description": "If True, removes the suffix. If False, adds the suffix to the metadata" |
114 | | - }, |
115 | | - "suffix": { |
116 | | - "title": "Suffix", |
117 | | - "default": "mip", |
118 | | - "type": "string", |
119 | | - "description": "Suffix of the 2D OME-Zarr" |
120 | | - } |
121 | | - }, |
122 | | - "required": [ |
123 | | - "input_paths", |
124 | | - "output_path", |
125 | | - "metadata" |
126 | | - ], |
127 | | - "additionalProperties": false |
128 | | - }, |
129 | | - "meta": { |
130 | | - "cpus_per_task": 1, |
131 | | - "mem": 1000 |
132 | | - }, |
133 | | - "docs_info": "Workaround task to manually change the hard-coded metadata components\nA fractal workflow sets them to the mip.zarr components after running the\nmaximum intensity projection task. This resets them to the 3D components." |
134 | | - }, |
135 | | - { |
136 | | - "name": "Drop T dimension", |
137 | | - "executable": "drop_t_dimension.py", |
138 | | - "input_type": "zarr", |
139 | | - "output_type": "zarr", |
140 | | - "meta": { |
141 | | - "parallelization_level": "image", |
142 | | - "cpus_per_task": 2, |
143 | | - "mem": 8000 |
144 | | - }, |
145 | | - "docs_info": "Drops singleton t dimension.", |
146 | | - "args_schema": { |
147 | | - "title": "DropTDimension", |
148 | | - "type": "object", |
149 | | - "properties": { |
150 | | - "input_paths": { |
151 | | - "title": "Input Paths", |
152 | | - "type": "array", |
153 | | - "items": { |
154 | | - "type": "string" |
155 | | - }, |
156 | | - "description": "This parameter is not used by this task. This task only supports a single input path. (standard argument for Fractal tasks, managed by Fractal server)." |
157 | | - }, |
158 | | - "output_path": { |
159 | | - "title": "Output Path", |
160 | | - "type": "string", |
161 | | - "description": "Path were the output of this task is stored. Example: `\"/some/path/\"` => puts the new OME-Zarr file in that folder. (standard argument for Fractal tasks, managed by Fractal server)." |
162 | | - }, |
163 | | - "component": { |
164 | | - "title": "Component", |
165 | | - "type": "string", |
166 | | - "description": "Path to the OME-Zarr image in the OME-Zarr plate that is processed. Component is typically changed by the `copy_ome_zarr` task before, to point to a new mip Zarr file. Example: `\"some_plate_mip.zarr/B/03/0\"`. (standard argument for Fractal tasks, managed by Fractal server)." |
167 | | - }, |
168 | | - "metadata": { |
169 | | - "title": "Metadata", |
170 | | - "type": "object", |
171 | | - "description": "Dictionary containing metadata about the OME-Zarr. This task requires the key `copy_ome_zarr` to be present in the metadata (as defined in `copy_ome_zarr` task). (standard argument for Fractal tasks, managed by Fractal server)." |
172 | | - }, |
173 | | - "suffix": { |
174 | | - "title": "Suffix", |
175 | | - "default": "no_T", |
176 | | - "type": "string", |
177 | | - "description": "Suffix to be used for the new Zarr image. If overwrite_input is True, this file is only temporary." |
178 | | - } |
179 | | - }, |
180 | | - "required": [ |
181 | | - "input_paths", |
182 | | - "output_path", |
183 | | - "component", |
184 | | - "metadata" |
185 | | - ], |
186 | | - "additionalProperties": false |
187 | | - } |
| 121 | + "docs_info": "## convert_2D_segmentation_to_3D\nConvert 2D segmentation to 3D segmentation.\n\nThis task loads the 2D segmentation, replicates it along the Z slice and\nstores it back into the 3D OME-Zarr image.\n\nThis is a temporary workaround task, as long as we store 2D data in\na separate OME-Zarr file from the 3D data. If the 2D & 3D OME-Zarr images\nhave different suffixes in their name, use `image_suffix_2D_to_remove` &\n`image_suffix_3D_to_add`. If their base names are different, this task\ndoes not support processing them at the moment.\n" |
188 | 122 | } |
189 | 123 | ], |
190 | 124 | "has_args_schemas": true, |
|
0 commit comments