All Projects → josedolz → Hyperdensenet

josedolz / Hyperdensenet

Licence: mit
This repository contains the code of HyperDenseNet, a hyper-densely connected CNN to segment medical images in multi-modal image scenarios.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Hyperdensenet

Livianet
This repository contains the code of LiviaNET, a 3D fully convolutional neural network that was employed in our work: "3D fully convolutional networks for subcortical segmentation in MRI: A large-scale study"
Stars: ✭ 143 (+15.32%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, neural-networks, cnn, image-segmentation, deep-learning-algorithms, theano
Yann
This toolbox is support material for the book on CNN (http://www.convolution.network).
Stars: ✭ 41 (-66.94%)
Mutual labels:  convolutional-neural-networks, neural-networks, cnn, theano
Iresnet
Improved Residual Networks (https://arxiv.org/pdf/2004.04989.pdf)
Stars: ✭ 163 (+31.45%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, neural-networks, cnn
Quickdraw
Implementation of Quickdraw - an online game developed by Google
Stars: ✭ 805 (+549.19%)
Mutual labels:  deep-neural-networks, neural-networks, cnn
Tensorflow Tutorial
TensorFlow and Deep Learning Tutorials
Stars: ✭ 748 (+503.23%)
Mutual labels:  convolutional-neural-networks, neural-networks, cnn
Sincnet
SincNet is a neural architecture for efficiently processing raw audio samples.
Stars: ✭ 764 (+516.13%)
Mutual labels:  convolutional-neural-networks, neural-networks, cnn
Deepface
Deep Learning Models for Face Detection/Recognition/Alignments, implemented in Tensorflow
Stars: ✭ 409 (+229.84%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, cnn
Convisualize nb
Visualisations for Convolutional Neural Networks in Pytorch
Stars: ✭ 57 (-54.03%)
Mutual labels:  convolutional-neural-networks, neural-networks, cnn
Deepseqslam
The Official Deep Learning Framework for Route-based Place Recognition
Stars: ✭ 49 (-60.48%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, cnn
Pointcnn
PointCNN: Convolution On X-Transformed Points (NeurIPS 2018)
Stars: ✭ 1,120 (+803.23%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, segmentation
Cnn Paper2
🎨 🎨 深度学习 卷积神经网络教程 :图像识别,目标检测,语义分割,实例分割,人脸识别,神经风格转换,GAN等🎨🎨 https://dataxujing.github.io/CNN-paper2/
Stars: ✭ 77 (-37.9%)
Mutual labels:  deep-neural-networks, cnn, segmentation
Torchio
Medical image preprocessing and augmentation toolkit for deep learning
Stars: ✭ 708 (+470.97%)
Mutual labels:  convolutional-neural-networks, cnn, segmentation
Deeplearning.ai
deeplearning.ai , By Andrew Ng, All video link
Stars: ✭ 625 (+404.03%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, deep-learning-algorithms
Efficient Segmentation Networks
Lightweight models for real-time semantic segmentationon PyTorch (include SQNet, LinkNet, SegNet, UNet, ENet, ERFNet, EDANet, ESPNet, ESPNetv2, LEDNet, ESNet, FSSNet, CGNet, DABNet, Fast-SCNN, ContextNet, FPENet, etc.)
Stars: ✭ 579 (+366.94%)
Mutual labels:  neural-networks, segmentation, image-segmentation
Multiclass Semantic Segmentation Camvid
Tensorflow 2 implementation of complete pipeline for multiclass image semantic segmentation using UNet, SegNet and FCN32 architectures on Cambridge-driving Labeled Video Database (CamVid) dataset.
Stars: ✭ 67 (-45.97%)
Mutual labels:  segmentation, image-segmentation, fcn
Lenet 5
PyTorch implementation of LeNet-5 with live visualization
Stars: ✭ 122 (-1.61%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, cnn
Data Science Bowl 2018
End-to-end one-class instance segmentation based on U-Net architecture for Data Science Bowl 2018 in Kaggle
Stars: ✭ 56 (-54.84%)
Mutual labels:  convolutional-neural-networks, cnn, segmentation
Niftynet
[unmaintained] An open-source convolutional neural networks platform for research in medical image analysis and image-guided therapy
Stars: ✭ 1,276 (+929.03%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, segmentation
Easy Deep Learning With Keras
Keras tutorial for beginners (using TF backend)
Stars: ✭ 367 (+195.97%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, neural-networks
Rmdl
RMDL: Random Multimodel Deep Learning for Classification
Stars: ✭ 375 (+202.42%)
Mutual labels:  deep-neural-networks, convolutional-neural-networks, cnn

HyperDenseNet

  • A new pytorch version has been implemented here

This repository will contain the code of HyperDenseNet, a hyper-densely connected CNN to segment medical images in multi-modal image scenarios.

Among others, this network is ranked first in the MRBrainS MICCAI Challenge http://mrbrains13.isi.uu.nl/results.php

If you find that this work has been useful for your research, please consider citing the following works:

A detail of a section of the proposed HyperDenseNet.

Content

Requirements

  • The code has been written in Python (2.7) and requires Theano
  • You should also have installed scipy
  • (Optional) The code allows to load images in Matlab and Nifti formats. If you wish to use nifti formats you should install nibabel
  • Since, as you might now, sharing medical data is not a good-practice, I did not include any sample in the corresponding folders. To make your experiments you must include your data in the repositories indicated in the config file (LiviaNET_Config.ini and LiviaNET_Segmentation.ini)

Running the code

Running the code actually works in the same way that LiviaNet. Just a reminder if you do not want to check the documentation from that net :)

Training

How do I train my own architecture from scratch?

To start with your own architecture, you have to modify the file "LiviaNET_Config.ini" according to your requirements.

Then you simply have to write in the command line:

THEANO_FLAGS='device=cuda0,floatX=float32,lib.cnmem=1' python ./networkTraining.py ./HyperDenseNet_Config.ini 0

This will save, after each epoch, the updated trained model.

If you use GPU, after nearly 5 minutes you will have your trained model from the example.

Can I re-start the training from another epoch?

Imagine that after two days of training your model, and just before you have your new model ready to be evaluated, your computer breaks down. Do not panic!!! You will have only to re-start the training from the last epoch in which the model was saved (Let's say epoch 20) as follows:

python ./networkTraining.py ./HyperDenseNet_Config.ini 1 ./outputFiles/HyperDenseNet/Networks/HyperDenseNet_Epoch20

Ok, cool. And what about employing pre-trained models?

Yes, you can also do that. Instead of loading a whole model, which limits somehow the usability of loading pre-trained models, this code allows to load weights for each layer independently. Therefore, weights for each layer have to be saved in an independent file. In its current version (v1.0) weights files must be in numpy format (.npy).

For that you will have to specify in the "LiviaNET_Config.ini" file the folder where the weights are saved ("weights folderName") and in which layers you want to use transfer learning ("weights trained indexes").

Testing

How can I use a trained model?

Once you are satisfied with your training, you can evaluate it by writing this in the command line:

python ./networkSegmentation.py ./HyperDenseNet_Segmentation.ini ./outputFiles/HyperDenseNet/Networks/HyperDenseNet_EpochX

where X denotes the last (or desired) epoch in which the model was saved.

Versions

  • Version 1.0.
    • April,17th. 2018
      • HyperDenseNet processes multi-modal data in different branches which are densely connected (so far only two-modalities).

Results

These images depicts some results included in the HyperDenseNet papers.

  • Some qualitative results of the proposed HyperDenseNet compared to some baselines.


  • Analysis of features reuse in the case of two image modalities.


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].