-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* fix numpy < 2.0.0 * add changelog * Update links to teamtomo website * Update docs (#74) * update installation instructions to pypi * copy README text * add deconvolution instructions and hint for on-the-fly-rescaling * add instructions for on-the-fly rescaling and skeletonization
- Loading branch information
1 parent
c3f6ebd
commit 77f8b03
Showing
6 changed files
with
132 additions
and
54 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
# Changelog | ||
|
||
All notable changes to this project will be documented in this file. | ||
|
||
|
||
## [0.0.2] - 2024-06-26 | ||
### Fixed | ||
- Set numpy dependency to be <2.0.0 as this was causing issues with MONAI. | ||
|
||
|
||
## [0.0.2] - 2024-06-18 | ||
### Added | ||
- On-the-fly-rescaling of patches on GPU during inference. | ||
- Skeletonization functionality as postprocessing step after segmentation. | ||
- Functionality to use Surface-Dice loss during training. | ||
|
||
### Fixed | ||
- Fixed a bug in the segmentation module causing memory leaks. | ||
|
||
## [0.0.1] - 2024-01-17 | ||
### Added | ||
- Initial version of MemBrain-Seg released to PyPI. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,43 +1,49 @@ | ||
# Membrain-Seg | ||
[Membrain-Seg](https://github.com/teamtomo/membrain-seg/) is a Python project developed by [teamtomo](https://github.com/teamtomo) for membrane segmentation in 3D for cryo-electron tomography (cryo-ET). This tool aims to provide researchers with an efficient and reliable method for segmenting membranes in 3D microscopic images. Membrain-Seg is currently under early development, so we may make breaking changes between releases. | ||
# MemBrain-seg | ||
MemBrain-seg is a practical tool for membrane segmentation in cryo-electron tomograms. It's built on the U-Net architecture and makes use of a pre-trained model for efficient performance. | ||
The U-Net architecture and training parameters are largely inspired by nnUNet<sup>2</sup>. | ||
|
||
<p align="center" width="100%"> | ||
<img width="100%" src="https://user-images.githubusercontent.com/34575029/248259282-ee622267-77fa-4c88-ad38-ad0cfd76b810.png"> | ||
</p> | ||
|
||
# Overview | ||
MemBrain-seg is a practical tool for membrane segmentation in cryo-electron tomograms. It's built on the U-Net architecture and makes use of a pre-trained model for efficient performance. | ||
The U-Net architecture and training parameters are largely inspired by nnUNet<sup>1</sup>. | ||
Our current best model is available for download [here](https://drive.google.com/file/d/1tSQIz_UCsQZNfyHg0RxD-4meFgolszo8/view?usp=sharing). Please let us know how it works for you. | ||
If the given model does not work properly, you may want to try one of our previous versions: | ||
|
||
Other (older) model versions: | ||
- [v9 -- best model until 10th Aug 2023](https://drive.google.com/file/d/15ZL5Ao7EnPwMHa8yq5CIkanuNyENrDeK/view?usp=sharing) | ||
- [v9b -- model for non-denoised data until 10th Aug 2023](https://drive.google.com/file/d/1TGpQ1WyLHgXQIdZ8w4KFZo_Kkoj0vIt7/view?usp=sharing) | ||
|
||
If you wish, you can also train a new model using your own data, or combine it with our available public dataset. (soon to come!) | ||
If you wish, you can also train a new model using your own data, or combine it with our (soon to come!) publicly-available dataset. | ||
|
||
To enhance segmentation, MemBrain-seg includes preprocessing functions. These help to adjust your tomograms so they're similar to the data our network was trained on, making the process smoother and more efficient. | ||
|
||
Explore MemBrain-seg, use it for your needs, and let us know how it works for you! | ||
|
||
|
||
Preliminary [documentation](https://teamtomo.org/membrain-seg/) is available, but far from perfect. Please let us know if you encounter any issues, and we are more than happy to help (and get feedback what does not work yet). | ||
|
||
``` | ||
[1] Isensee, F., Jaeger, P. F., Kohl, S. A., Petersen, J., & Maier-Hein, K. H. (2020). nnU-Net: a self-configuring method | ||
for deep learning-based biomedical image segmentation. Nature Methods, 1-9. | ||
[1] Lamm, L., Zufferey, S., Righetto, R.D., Wietrzynski, W., Yamauchi, K.A., Burt, A., Liu, Y., Zhang, H., Martinez-Sanchez, A., Ziegler, S., Isensee, F., Schnabel, J.A., Engel, B.D., and Peng, T, 2024. MemBrain v2: an end-to-end tool for the analysis of membranes in cryo-electron tomography. bioRxiv, https://doi.org/10.1101/2024.01.05.574336 | ||
[2] Isensee, F., Jaeger, P.F., Kohl, S.A.A., Petersen, J., Maier-Hein, K.H., 2021. nnU-Net: a self-configuring method for deep learning-based biomedical image segmentation. Nature Methods 18, 203-211. https://doi.org/10.1038/s41592-020-01008-z | ||
``` | ||
|
||
# Installation | ||
For detailed installation instructions, please look [here](./installation.md). | ||
For detailed installation instructions, please look [here](https://teamtomo.org/membrain-seg/installation/). | ||
|
||
# Features | ||
## Segmentation | ||
Segmenting the membranes in your tomograms is the main feature of this repository. | ||
Please find more detailed instructions [here](./Usage/Segmentation.md). | ||
Please find more detailed instructions [here](https://teamtomo.org/membrain-seg/Usage/Segmentation/). | ||
|
||
## Preprocessing | ||
Currently, we provide the following two [preprocessing](https://github.com/teamtomo/membrain-seg/tree/main/src/tomo_preprocessing) options: | ||
- pixel size matching: Rescale your tomogram to match the training pixel sizes | ||
Currently, we provide the following two [preprocessing](https://github.com/teamtomo/membrain-seg/tree/main/src/membrain_seg/tomo_preprocessing) options: | ||
- Pixel size matching: Rescale your tomogram to match the training pixel sizes | ||
- Fourier amplitude matching: Scale Fourier components to match the "style" of different tomograms | ||
- Deconvolution: denoises the tomogram by applying the deconvolution filter from Warp | ||
|
||
For more information, see the [Preprocessing](Usage/Preprocessing.md) subsection. | ||
For more information, see the [Preprocessing](https://teamtomo.org/membrain-seg/Usage/Preprocessing/) subsection. | ||
|
||
## Model training | ||
It is also possible to use this package to train your own model. Instructions can be found [here](./Usage/Training.md). | ||
It is also possible to use this package to train your own model. Instructions can be found [here](https://teamtomo.org/membrain-seg/Usage/Training/). | ||
|
||
## Patch annotations | ||
In case you would like to train a model that works better for your tomograms, it may be beneficial to add some more patches from your tomograms to the training dataset. | ||
Recommendations on how to to this can be found [here](Usage/Annotations.md). | ||
Recommendations on how to to this can be found [here](https://teamtomo.org/membrain-seg/Usage/Annotations/). |
Oops, something went wrong.