You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/start_page.md
+49-6Lines changed: 49 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -147,10 +147,12 @@ For more options supported by the IMOD exports, please run `synapse_net.export_t
147
147
148
148
> Note: to use these commands you have to install IMOD.
149
149
150
+
SynapseNet also provides two CLI comamnds for training models, one for supervised network training (see [Supervised Training](#supervised-training) for details) and one for domain adaptation (see [Domain Adaptation](#domain-adaptation) for details).
151
+
150
152
151
153
## Python Library
152
154
153
-
Using the `synapse_net` python library offers the most flexibility for using the SynapseNet functionality.
155
+
Using the `synapse_net` python library offers the most flexibility for using SynapseNet's functionality.
154
156
You can find an example analysis pipeline implemented with SynapseNet [here](https://github.com/computational-cell-analytics/synapse-net/blob/main/examples/analysis_pipeline.py).
155
157
156
158
We offer different functionality for segmenting and analyzing synapses in electron microscopy:
@@ -161,21 +163,62 @@ We offer different functionality for segmenting and analyzing synapses in electr
161
163
162
164
Please refer to the module documentation below for a full overview of our library's functionality.
163
165
166
+
### Supervised Training
167
+
168
+
SynapseNet provides functionality for training a UNet for segmentation tasks using supervised learning.
169
+
In this case, you have to provide data **and** (manual) annotations for the structure(s) you want to segment.
170
+
This functionality is implemented in `synapse_net.training.supervised_training`. You can find an example script that shows how to use it [here](https://github.com/computational-cell-analytics/synapse-net/blob/main/examples/network_training.py).
171
+
172
+
We also provide a command line function to run supervised training: `synapse_net.run_supervised_training`. Run
173
+
```bash
174
+
synapse_net.run_supervised_training -h
175
+
```
176
+
for more information and instructions on how to use it.
177
+
164
178
### Domain Adaptation
165
179
166
-
We provide functionality for domain adaptation. It implements a special form of neural network training that can improve segmentation for data from a different condition (e.g. different sample preparation, electron microscopy technique or different specimen), **without requiring additional annotated structures**.
180
+
SynapseNet provides functionality for (unsupervised) domain adaptation.
181
+
This functionality is implemented through a student-teacher training approach that can improve segmentation for data from a different condition (for example different sample preparation, imaging technique, or different specimen), **without requiring additional annotated structures**.
167
182
Domain adaptation is implemented in `synapse_net.training.domain_adaptation`. You can find an example script that shows how to use it [here](https://github.com/computational-cell-analytics/synapse-net/blob/main/examples/domain_adaptation.py).
168
183
169
-
> Note: Domain adaptation only works if the initial model you adapt already finds some of the structures in the data from a new condition. If it does not work you will have to train a network on annotated data.
184
+
We also provide a command line function to run domain adaptation: `synapse_net.run_domain_adaptation`. Run
185
+
```bash
186
+
synapse_net.run_domain_adaptation -h
187
+
```
188
+
for more information and instructions on how to use it.
170
189
171
-
### Network Training
190
+
> Note: Domain adaptation only works if the initial model already finds some of the structures in the data from a new condition. If it does not work you will have to train a network on annotated data.
172
191
173
-
We also provide functionality for 'regular' neural network training. In this case, you have to provide data **and** manual annotations for the structure(s) you want to segment.
174
-
This functionality is implemented in `synapse_net.training.supervised_training`. You can find an example script that shows how to use it [here](https://github.com/computational-cell-analytics/synapse-net/blob/main/examples/network_training.py).
175
192
176
193
## Segmentation for the CryoET Data Portal
177
194
178
195
We have published segmentation results for tomograms of synapses stored in the [CryoET Data Portal](https://cryoetdataportal.czscience.com/). So far we have made the following depositions:
179
196
-[CZCDP-10330](https://cryoetdataportal.czscience.com/depositions/10330): Contains synaptic vesicle segmentations for over 50 tomograms of synaptosomes. The segmentations were made with a model domain adapted to the synaptosome tomograms.
180
197
181
198
The scripts for the submissions can be found in [scripts/cryo/cryo-et-portal](https://github.com/computational-cell-analytics/synapse-net/tree/main/scripts/cryo/cryo-et-portal).
199
+
200
+
201
+
## Community Data Submission
202
+
203
+
We are looking to extend and improve the SynapseNet models by training on more annotated data from electron tomography or (volume) electron microscopy.
204
+
For this, we plan to collect data from community submissions.
205
+
206
+
If you are using SynapseNet for a task where it does not perform well, or if you would like to use it for a new segmentation task not offered by it, and have annotations for your data, then you can submit this data to us, so that we can use it to train our next version of improved models.
207
+
To do this, please create an [issue on github](https://github.com/computational-cell-analytics/synapse-net/issues) and:
208
+
- Use a title "Data submission: ..." ("..." should be a title for your data, e.g. "smooth ER in electron tomography")
209
+
- Briefly describe your data and add an image that shows the microscopy data and the segmentation masks you have.
210
+
- Make sure to describe:
211
+
- The imaging modality and the structure(s) that you have segmented.
212
+
- How many images and annotations you have / can submit and how you have created the annotations.
213
+
- You should submit at least 5 images or crops and 20 annotated objects. If you are unsure if you have enough data please go ahead and create the issue / post and we can discuss the details.
214
+
- Which data-format your images and annotations are stored in. We recommend using either `tif`, `mrc`, or `ome.zarr` files.
215
+
- Please indicate that you are willing to share the data for training purpose (see also next paragraph).
216
+
217
+
Once you have created the post / issue, we will check if your data is suitable for submission or discuss with you how it could be extended to be suitable. Then:
218
+
- We will share an agreement for data sharing. You can find **a draft**[here](https://docs.google.com/document/d/1vf5Efp5EJcS1ivuWM4f3pO5kBqEZfJcXucXL5ot0eqg/edit?usp=sharing).
219
+
- You will be able to choose how you want to submit / publish your data.
220
+
- Share it under a CC0 license. In this case, we will use the data for re-training and also make it publicly available as soon as the next model versions become available.
221
+
- Share it for training with the option to publish it later. For example, if your data is unpublished and you want to only published once the respective publication is available. In this case, we will use the data for re-training, but not make it freely available yet. We will check with you peridiodically to see if your data can now be published.
222
+
- Share it for training only. In this case, we will re-train the model on it, but not make it publicly available.
223
+
- We encourage you to choose the first option (making the data available under CC0).
224
+
- We will then send you a link to upload your data, after you have agreed to these terms.
0 commit comments