- Overview
- Hardware requirements
- Software requirements
- Operating systems
- Fast installation of semi-automatic segmentation feature
- Run examples
- Full installation of Biomedisa online platform
- Releases
- Authors
- FAQ
- Citation
- License
The Biomedical Image Segmentation App Biomedisa is an open-source online platform for segmentation of 3D images, e.g. CT and MRI scans, at Heidelberg University and HITS. It can be used in addition to segmentation tools like Amira and ImageJ/Fiji. Biomedisa finds its root in the projects ASTOR and NOVA financed by the German Federal Ministry of Education and Research (BMBF). Biomedisa is free-of-charge for academic use.
- At least one NVIDIA Graphics Procissing Unit (GPU) with compute capability 3.0 or higher.
- 32 GB RAM or more (strongly depends on the size of the processed images).
- NVIDIA GPU drivers - CUDA 10.1 requires 418.x or higher
- CUDA Toolkit 10.1
- Open MPI 2.1.1
This package is supported for Linux and Windows and has been tested on the following systems:
- Linux: Ubuntu 18.04.5
- Windows: Windows 10
The installation takes approximatly 15 minutes (SSD).
sudo apt-get install python3 python3-dev python3-pip
sudo apt-get install libsm6 libxrender-dev cmake \
libboost-python-dev build-essential screen libssl-dev \
openmpi-bin openmpi-doc libopenmpi-dev
sudo -H pip3 install --upgrade pip setuptools scikit-build
sudo -H pip3 install --upgrade numpy scipy h5py colorama \
numba imagecodecs-lite tifffile scikit-image opencv-python \
Pillow SimpleParse nibabel medpy SimpleITK mpi4py
sudo apt-get install git
mkdir ~/git
cd ~/git
git clone https://github.com/biomedisa/biomedisa
# Add NVIDIA package repositories
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
sudo apt-get update
# Install NVIDIA driver
sudo apt-get install --no-install-recommends nvidia-driver-450
# Reboot the system
sudo reboot
# Verify that NVIDIA driver can be loaded properly
nvidia-smi
# Install CUDA 10.1
sudo apt-get install --no-install-recommends cuda-10-1
# Add the following lines to your .bashrc (e.g. nano ~/.bashrc)
export CUDA_HOME=/usr/local/cuda-10.1
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64
export PATH=${CUDA_HOME}/bin:${PATH}
# Reload .bashrc and verify that CUDA is installed properly
source ~/.bashrc
nvcc --version
# Install PyCUDA
sudo -H PATH=/usr/local/cuda-10.1/bin:${PATH} pip3 install --upgrade pycuda
# Verify that PyCUDA is working properly
python3 ~/git/biomedisa/biomedisa_features/pycuda_test.py
Download and install MS Visual Studio.
Select "Desktop development with C++"
Install
Restart Windows
Open Windows Search
Type View advanced system settings
Click Environment Variables...
Add the following value to the System variable Path
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64
Download and install Python.
Choose "Latest Python 3 Release"
Scroll to "Files"
Choose "Windows x86-64 executable installer"
Select "Add Python 3.X to PATH"
Install
Disable path length limit
Close
Open Command Prompt (e.g. Windows Search Command Prompt
).
pip3 install --upgrade pip pypiwin32 setuptools wheel numpy scipy h5py colorama numba
pip3 install --upgrade imagecodecs-lite tifffile scikit-image opencv-python Pillow
pip3 install --upgrade nibabel medpy SimpleITK simpleparse
Download and install NVIDIA.
Choose Windows Driver Type: Standard
Choose Recommended/Beta: Studio Driver
Download and install CUDA Toolkit 11.0.
Windows Search "Nsight Monitor" (run as administrator)
Click the "NVIDIA Nsight" symbol in the right corner of your menu bar
Click Nsight Monitor options
Disable "WDDM TDR Enabled"
Reboot your system
Download and install Microsoft MPI.
Select "msmpisetup.exe" to download
Install
Open Command Prompt (e.g. Windows Search Command Prompt
).
pip3 install --upgrade pycuda mpi4py
Download and install Git.
mkdir git
cd git
git clone https://github.com/biomedisa/biomedisa
python biomedisa/biomedisa_features/pycuda_test.py
Change to the demo directory.
cd git/biomedisa/demo
Run a simple example (~4 seconds). The result will be saved as final.tumor.tif
.
# Ubuntu
python3 biomedisa_interpolation.py tumor.tif labels.tumor.tif
# Windows
python biomedisa_interpolation.py tumor.tif labels.tumor.tif
Download the examples from https://biomedisa.org/gallery/ or directly as follows:
# Trigonopterus
wget --no-check-certificate https://biomedisa.org/download/demo/3 -O trigonopterus.tif
wget --no-check-certificate https://biomedisa.org/download/demo/4 -O labels.trigonopterus_smart.am
# Wasp from amber
wget --no-check-certificate https://biomedisa.org/download/demo/28 -O wasp_from_amber.tif
wget --no-check-certificate https://biomedisa.org/download/demo/29 -O labels.wasp_from_amber.am
# Cockroach
wget --no-check-certificate https://biomedisa.org/download/demo/31 -O cockroach.tif
wget --no-check-certificate https://biomedisa.org/download/demo/32 -O labels.cockroach.am
# Theropod claw
wget --no-check-certificate https://biomedisa.org/download/demo/34 -O theropod_claw.tif
wget --no-check-certificate https://biomedisa.org/download/demo/35 -O labels.theropod_claw.tif
# Mineralized wasp
wget --no-check-certificate https://biomedisa.org/download/demo/17 -O NMB_F2875.tif
wget --no-check-certificate https://biomedisa.org/download/demo/18 -O labels.NMB_F2875.tif
# Bull ant
wget --no-check-certificate https://biomedisa.org/download/demo/37 -O bull_ant.tif
wget --no-check-certificate https://biomedisa.org/download/demo/38 -O labels.bull_ant_head.am
Run the segmentation using e.g. 4 GPUs
mpiexec -n 4 python3 biomedisa_interpolation.py NMB_F2875.tif labels.NMB_F2875.tif
Obtain uncertainty and smooting as optional results
mpiexec -n 4 python3 biomedisa_interpolation.py NMB_F2875.tif labels.NMB_F2875.tif -uq -s 100
Enable labeling in different planes (not only xy-plane)
mpiexec -n 4 python3 'path_to_image' 'path_to_labels' -allx
Please follow the installation instructions. Alternatively, clone the repository and run the install script install.sh
.
Please follow the installation instructions.
For the versions available, see the tags on this repository.
- Philipp D. Lösel
See also the list of contributors who participated in this project.
Frequently asked questions can be found at: https://biomedisa.org/faq/.
If you use the package or the online platform, please cite the following paper.
tba
This project is covered under the EUROPEAN UNION PUBLIC LICENCE v. 1.2 (EUPL).