Skip to content

Commit c8cc5ea

Browse files
Update documentation
1 parent 064ff2d commit c8cc5ea

File tree

1 file changed

+50
-12
lines changed

1 file changed

+50
-12
lines changed

doc/start_page.md

Lines changed: 50 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -58,31 +58,69 @@ to use them.
5858
> Note: If you have issues with the CUDA version then install a PyTorch that matches your nvidia drivers. See [pytorch.org](https://pytorch.org/) for details.
5959
6060

61+
## Segmentation Models
62+
63+
We currently offer 7 different models for segmenting synaptic structures:
64+
- `vesicles_3d` to segment vesicles in (room-temperature) electron tomograms.
65+
- `vesicles_2d` to segment vesicles in two-dimensional electron migrographs.
66+
- `vesicles_cryo` to segment vesicles in cryogenic electron tomograms.
67+
- `active_zone` to sement active zones in electron tomograms.
68+
- `compartments` to segment synaptic compartments in electron tomograms.
69+
- `mitochondria` to segmenta mitochondria in electron tomograms.
70+
- `ribbon` to segment structures of the active zones in ribbon synapses (ribbon, presynaptic density and active zone membrane) in electron tomograms.
71+
72+
6173
## Napari Plugin
6274

63-
**The rest of the documentation will be updated in the next days!**
75+
**The napari plugin will be documented in the next few days!**
6476

6577

6678
## Command Line Functionality
6779

68-
- segmentation cli
69-
- export to imod
70-
- vesicles / spheres
71-
- objects
80+
SynapseNet provides a command line interface to segment synaptic structures in mrc files (or other image formats), and to export segmentation results to IMOD.
81+
82+
**Segmentation CLI:** The command `synapse_net.run_segmentation` enables segmentation with all of our [supported models](#segmentation-models). For example, you can call it like this:
83+
```bash
84+
synapse_net.run_segmentation -i /path/to/folder-with-mrc -o /path/to/save-segmentation -m vesicles_3d
85+
```
86+
to segment the synaptic vesicles in all tomograms that are stored as mrc files in the folder `/path/to/folder-with-mrc`. The segmentations will be stored as tif files in the (new) folder `/path/to/save-segmentation`.
87+
You can select a different segmentation model by changing the name after `-m`. For example use `-m mitochondria` to segment mitochondria or `-m vesicles_2d` to segment vesicles in 2D images.
88+
The command offers several other arguments to change the segmentation logic; you can run `synapse_net.run_segmentation -h` for an explanation of these arguments.
89+
90+
**IMOD Export:** We offer two commands to export segmentation results to mod files that can be opened with [3dmod](https://bio3d.colorado.edu/imod/doc/3dmodguide.html), which is part of the [IMOD](https://bio3d.colorado.edu/imod/) software suite:
91+
- `synapse_net.export_to_imod_points` to export a vesicle segmentation to a point model; i.e., representing each vesicle as a sphere.
92+
- `synapse_net.export_to_imod_objects` to export an arbitrary segmentation to a closed contour model.
93+
94+
For example, you can run
95+
```bash
96+
synapse_net.export_to_imod_points -i /path/to/folder-with-mrc -s /path/to/save-segmentation -o /path/to/save-modfiles
97+
```
98+
to export the segmentations saved in `/path/to/save-segmentation` to point models that will be saved in `/path/to/save-modfiles`.
99+
100+
For more options supported by the IMOD exports, please run `synapse_net.export_to_imod_points -h` or `synapse_net.export_to_imod_objects -h`.
101+
102+
> Note: to use these commands you have to install IMOD.
72103
73104

74105
## Python Library
75106

76-
- segmentation functions
77-
- distance and morphology measurements
78-
- imod
107+
Using the `synapse_net` python library offers the most flexibility for using the SynapseNet functionality.
108+
We offer different functionality for segmenting and analyzing synapses in electron microscopy:
109+
- `synpase_net.inference` for segmenting synaptic structures with [our models](segmentation-models).
110+
- `synapse_net.distance_measurements` for measuring distances between segmented objects.
111+
- `synapse_net.imod` for importing and exporting segmentations from / to IMOD.
112+
- `synapse_net.training` for training U-Nets for synaptic structure segmentation, either via [domain adaptation](#domain-adaptation) or [using data with annotations](network-training).
113+
114+
Please refer to the library documentation below for a full overview of our library's functionality.
79115

80116
### Domain Adaptation
81117

82-
- explain domain adaptation
83-
- link to the example script
118+
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**.
119+
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).
120+
121+
> 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.
84122
85123
### Network Training
86124

87-
- explain / diff to domain adaptation
88-
- link to the example script
125+
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.
126+
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).

0 commit comments

Comments
 (0)