Skip to content
/ 3D-CNN Public

Supervised segmentation of 3-dimensional images using a convolutional neural network.

License

Notifications You must be signed in to change notification settings

psweens/3D-CNN

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 

Repository files navigation

3-dimensional Segmentation using a 3D Convolution Neural Network

This Python package utilised a 3-dimensional convolution neural network (CNN) to perform segmentation of 3D images using Keras. The 3D CNN is based on the U-Net architecture but extended for volumetric delineation with 3D spatial convolutions.

Hyperparameters can be tuned using Talos which integrates with Keras. This automates and performs a quantitative evaluation of the CNN during training.

To-date, this script has been used to train a 3D CNN which predicts a tumour region-of-interest from 3D raster-scan optoacoustic mesoscopy (RSOM) images, found here.

References

To reference this repository please use the below citation.

Quantification of vascular networks in photoacoustic mesoscopy
Emma L. Brown, Thierry L. Lefebvre, Paul W. Sweeney et al.

Prerequisites

The 3D CNN was trained using Keras using the following package versions:

  • Python 3.6.
  • Keras 2.3.1.
  • Tensorflow-GPU 1.14.0.

A package list for a Python environment has been provided and can be installed using the method described below.

Installation

The ROI package is compatible with Python3, and has been tested on Ubuntu 18.04 LTS. Other distributions of Linux, macOS, Windows should work as well.

To install the package from source, download zip file on GitHub page or run the following in a terminal:

git clone https://github.com/psweens/Predict-RSOM-ROI.git

The required Python packages can be found here. The package list can be installed, for example, using creating a Conda environment by running:

conda create --name <env> --file REQUIREMENTS.txt