NU-Net: a self-supervised smart filter for enhancing blobs in bioimages
While supervised deep neural networks have become the dominant method for image analysis tasks in bioimages, truly versatile methods are not available yet because of the diversity of modalities and conditions and the cost of retraining. In practice, day-to-day biological image analysis still largely relies on ad hoc workflows often using classical linear filters. We propose NU-Net, a convolutional neural network filter selectively enhancing cells and nuclei, as a drop-in replacement of chains of classical linear filters in bioimage analysis pipelines. Using a style transfer architecture, a novel perceptual loss implicitly learns a soft separation of background and foreground. We used self-supervised training using 25 datasets covering diverse modalities of nuclear and cellular images. We show its ability to selectively improve contrast, remove background and enhance objects across a wide range of datasets and workflow while keeping image content. The pre-trained models are light and practical, and published as free and open-source software for the community. NU-Net is also available as a plugin for Napari.
Installation
Use PyPI (Python Package Index)
pip install nunet
or clone this repo and install it locally
git clone https://github.com/LaboratoryOpticsBiosciences/nunet.git
cd nunet
pip install -e .
Usage
The repo provides two scripts: one to test and the other to train a NU-Net.
For common steps to test and train NU-Nets,
-
Go to release page https://github.com/LaboratoryOpticsBiosciences/nunet/releases
-
Download an archive called
nunet_models.tarand unzip it in the root directory of the repo. It should unzipconfig/folder andmodels_filter_slider/folder.
To test pre-trained NU-Nets,
- Execute
./scripts/test_nunet.pyfollowing its instruction on the top of the script.
Get help message by invoking the script
python scripts/test_nunet.py --help.
To train the pre-trained NU-Nets
- Execute
./scripts/train_nunet.pyfolowing its instruction.
Note that the provided NU-Net models on the releases page are not reproducible until we later release private datasets, namely ones prefixed with
LOB_. Find more details in the paper.
Citation
This work was accepted by BIC (Bio-Image Computing) workshop at ICCV2023. The paper will become available soon.
Metadata
Release files for nunet 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| nunet-0.1.2.tar.gz | 21.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nunet-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.2 kB
Release files / nunet-0.1.2.tar.gz
| Download URL | nunet-0.1.2.tar.gz |
|---|---|
| Size | 21.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4dd87f4a9c62dfd584180e1bacef8a5fd3ba09c033eadd47107be2c58c5e3a9d
|
|
BLAKE2b-256 checksum How to use checksums |
d1231296990e0fddc3419f8a147b206649d8703248d1fb56965d8743502679c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|
Release files / nunet-0.1.2-py3-none-any.whl
| Download URL | nunet-0.1.2-py3-none-any.whl |
|---|---|
| Size | 2.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7bdc477382edfffbac2ac588ce855bd6b9874e5ab196a1bcd965b64c8b2b08c6
|
|
BLAKE2b-256 checksum How to use checksums |
64da6be71877650c50c27f5d3809ae1c51a819967b9d9ae9ea5b9f8470444658
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|
Security for nunet 0.1.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.