Feature Forest
A napari plugin for segmentation using vision transformer models' features
A napari plugin for segmentation using vision transformers' features.
We developed a napari plugin to train a Random Forest model using extracted embeddings of ViT models for input and just a few scribble labels provided by the user. This approach can do the segmentation of desired objects almost as well as manual segmentations but in a much shorter time with less manual effort.
Documentation¶
The plugin documentation is here.
Installation¶
It is highly recommended to use a python environment manager like conda to create a clean environment for installation.
You can install all the requirements using provided environment config files:
# for GPU
conda env create -f ./env_gpu.yml
# if you don't have a GPU
conda env create -f ./env_cpu.yml
Requirements¶
python >= 3.9
numpy
opencv-python
scikit-learn
scikit-image
matplotlib
pyqt
magicgui
qtpy
napari
h5py
pytorch=2.1.2
torchvision=0.16.2
timm=1.0.9
pynrrd
If you want to install the plugin manually using GPU, please follow the pytorch installation instruction here.
For detailed napari installation see here.
Installing The Plugin¶
If you use the conda env.yml
file, the plugin will be installed automatically. But in case you already have the environment setup,
you can just install the plugin. First clone the repository:
git clone https://github.com/juglab/featureforest
Then run the following commands:
cd ./featureforest
pip install .
License¶
Distributed under the terms of the BSD-3 license, "featureforest" is free and open source software
Issues¶
If you encounter any problems, please [file an issue] along with a detailed description.
Supported data:
- Information not submitted
Plugin type:
GitHub activity:
- Stars: 4
- Forks: 0
- Issues + PRs: 2
GitHub activity:
- Stars: 4
- Forks: 0
- Issues + PRs: 2
Operating system:
- Information not submitted
Requirements:
- h5py
- magicgui
- matplotlib
- napari
- numpy==1.23.5
- opencv-python
- pooch
- pynrrd
- pyqt5
- qtpy
- scikit-image
- scikit-learn
- segment-anything-hq
- segment-anything-py
- timm==1.0.9
- torch==2.1.2
- torchvision==0.16.2