Skip to content

Commit ce86083

Browse files
Update README
1 parent 4530851 commit ce86083

File tree

1 file changed

+10
-11
lines changed

1 file changed

+10
-11
lines changed

README.md

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -127,29 +127,28 @@ TODO link to video tutorial
127127

128128
### Tips & Tricks
129129

130-
TODO
131-
- speeding things up: precomputing the embeddings with a gpu, making input images smaller
132-
- correcting existing segmentaitons via `segmentation_results`
133-
- saving and loading intermediate results via segmentation results
130+
- By default, the applications pre-compute the image embeddings produced by SegmentAnything and store them on disc. If you are using a CPU this step can take a while for 3d data or timeseries (you will see a progress bar with a time estimate). If you have access to a GPU without graphical interface (e.g. via a local computer cluster or a cloud provider), you can also pre-compute the embeddings there and then copy them to your laptop / local machine to speed this up. You can use the command `micro_sam.precompute_embeddings` for this (it is installed with the rest of the applications). You can specify the location of the precomputed embeddings via the `embedding_path` argument.
131+
- Most other processing steps are very fast even on a CPU, so interactive annotation is possible. An exception is the automatic segmentation step (2d segmentation), which takes several minutes without a GPU (depending on the image size). For large volumes and timeseries segmenting an object in 3d / tracking across time can take a couple settings with a CPU (it is very fast with a GPU).
132+
- You can save and load the results from the `committed_objects` / `committed_tracks` layer to correct segmentations you obtained from another tool (e.g. CellPose) or to save intermediate annotation results. The results can be saved via `File->Save Selected Layer(s) ...` in the napari menu. They can be loaded again by specifying the corresponding location via the `segme` (2d and 3d segmentation) `xxx` (tracking) argument.
134133

135-
### Limitations
134+
### Known limitations
136135

137-
TODO
138-
- automatic instance segmentation limitations
136+
- SegmentAnything does not work well for very small or fine-graind objects (e.g. filaments).
137+
- For the automatic segmentation functionality we currently rely on the automatic mask generation provided by SegmentAnything. It is slow and often misses objects in microscopy images. For now we only offer this functionality in the 2d segmentation app; we are working on improving it and extending it to 3d segmentation and tracking.
139138

139+
### Using the micro_sam library
140140

141-
## Using the micro_sam library
142-
143-
TODO
144-
- link to the example image series application
141+
After installation the `micro_sam` python library is available, which provides several utility functions for using SegmentAnything with napari. Check out [examples/image_series_annotator.py](https://github.com/computational-cell-analytics/micro-sam/blob/master/examples/image_series_annotator_app.py) for an example application for segmenting objects in an image series built with it.
145142

146143

144+
<!---
147145
## Contributing
148146
149147
```
150148
micro_sam <- library with utility functionality for using SAM for microscopy data
151149
/sam_annotator <- the napari plugins for annotation
152150
```
151+
-->
153152

154153

155154
## Citation

0 commit comments

Comments
 (0)