Open Source Software

Binaries/Code Datasets Open Source Software
libsvmtl ImageJ-Plugins XuvTools Presto-Box iRoCS U-Net


Source Code

We provide source code for caffe that allows to train U-Nets (Ronneberger et al., 2015) with image data (2D) as well as volumetric data (3D). The code is an extension to the previously released work that implemented 2D U-Nets. The patch contained in caffe_unet_3D_v1.0.tar.gz implements the layers for 2D and 3D U-Net including the value augmentation and random elastic deformation. If you use this code, please cite (Ronneberger et al., 2015) and/or (Çiçek, et al., 2016). Although the software does not require a GPU (i.e. can be run on the CPU only), we strongly recommend an NVIDIA GPU with compute capability >= 3.0. Installation is supported for Linux and Mac. The procedure and dependencies are the same as for the installation of the original BVLC/master branch of caffe. Installation instructions are available for different Linux distributions and for Mac. See the accompanying LICENSE file for copyright notice. Future updates and bugfixes will be published on this site. The README file contains installation and usage notes.

Models and Examples

  • Hints about input and output: Both input and output should be 5D blobs arranged as (#of samples, #of channels, depth, height, width). Note that the annotations should be single channel data including integer labels per pixel. If you are running our model on your data, random_offset_from and random_offset_to parameters in the create_deformation_layer must be changed since they are the only data size dependent parameters in our model. See findsize.m to see how to compute them properly together with input and output sizes for our 3D u-net given a specific bottom blob shape.

  • For a trained 3D U-Net model (corresponds to the experiment reported in first column and first row of Table 1 in 3D U-Net paper) please see example caffemodel.

How to Cite

Contact: Ahmed Abdulkadir, Robert Bensch, Özgün Çiçek, Thorsten Falk, Olaf Ronneberger