All Projects → duducheng → Densesharp

duducheng / Densesharp

Licence: apache-2.0
[Cancer Research] 3D Deep Learning from CT Scans Predicts Tumor Invasiveness of Subcentimeter Pulmonary Adenocarcinomas

Projects that are alternatives of or similar to Densesharp

Ubernet
Demo for CVPR 2017 paper
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Publicservant ai
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Fastai Audio
collaborative audio module for fast.ai
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Holiday Similarity
Finding similar images in the Holidays dataset
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Nobslanotebooks
Jupyter notebooks with exercises for the No bullshit guide to linear algebra.
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Data cleaning workshop
Created the contents of this repo originally for a workshop I gave at UCLA
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Ml At Work
電子書籍『仕事ではじめる機械学習』のサポートリポジトリです
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Pytorch Learners Tutorial
PyTorch tutorial for learners
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Stock cnn blog pub
This project is a loose implementation of paper "Algorithmic Financial Trading with Deep Convolutional Neural Networks: Time Series to Image Conversion Approach"
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Pyob
Pythonic Objects
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Ijcai cup 2017
IJCAI-17 口碑商家客流量预测
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Data Exploration
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Voila Gridstack
Dashboard template for Voilà based on GridStackJS
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Pythonplot.com
📈 Interactive comparison of Python plotting libraries for exploratory data analysis. Examples of using Pandas plotting, plotnine, Seaborn, and Matplotlib.
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Mlday Tokyo
Colabs for ML Day Tokyo
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Ox Ipynb
org-mode exporter to Jupyter notebooks
Stars: ✭ 96 (-1.03%)
Mutual labels:  jupyter-notebook
Graphnn Multi Object Tracking
Unofficial PyTorch implementation of "Learning a Neural Solver for Multiple Object Tracking"
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Plant Diseases Classifier
Artificial Intelligence app that detects diseases in plants using a deep learning model
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Deep Residual Unet
ResUNet, a semantic segmentation model inspired by the deep residual learning and UNet. An architecture that take advantages from both(Residual and UNet) models.
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook
Octconv Tfkeras
Unofficial implementation of Octave Convolutions (OctConv) in TensorFlow / Keras.
Stars: ✭ 97 (+0%)
Mutual labels:  jupyter-notebook

DenseSharp Networks

DenseSharp Networks are parameter-efficient 3D DenseNet-based deep neural networks, with multi-task learning the nodule classification labels and segmentation masks. Segmentation (top-down path) learning elegantly guides classification (bottom-top path) to learn better. In this study, our networks learn to classify early-stage lung cancer from CT scans on pathological level. The deep learning models outperforms the radiologists (2 senior and 2 junior) in our observer study, which indicates the potentials to facilitate precision medicine.

Graphical Abstract

More details, please refer to our paper:

3D Deep Learning from CT Scans Predicts Tumor Invasiveness of Subcentimeter Pulmonary Adenocarcinomas

Wei Zhao, Jiancheng Yang, Yingli Sun, Cheng Li, Weilan Wu, Liang Jin, Zhiming Yang, Bingbing Ni, Pan Gao, Peijun Wang, Yanqing Hua and Ming Li (indicates equal contribution)

Cancer Research (DOI: 10.1158/0008-5472.CAN-18-0696)

Code Structure

  • mylib/:
    • dataloader/: PyTorch-like datasets and dataloaders for Keras.
    • models/: 3D DenseSharp and DenseNet models together with the losses and metrics.
    • utils/: plot and multi-processing utils.
  • explore.ipynb: plots and basic views of networks.
  • train.py: the training script.

Requirements

  • Python 3 (Anaconda 3.6.3 specifically)
  • TensorFlow==1.4.0
  • Keras==2.1.5
  • To plot the 3D mesh, you may also need plotly installed.

Higher versions should also work (perhaps with minor modifications).

Data samples

Unfortunately, our dataset is not available publicly considering the patients' privacy, and restrictions apply to the use.

However, you can still run the code using the sample dataset (download). Please note, the sample dataset is just demonstrating the code functionality. Unzip the sample dataset, then modify the "DATASET" in mylib/dataloader/ENVIRON.

The DenseSharp Networks are generally designed for 3D data, with classification and segmentation labels. You can run the code on your own data if your dataset are processed following the sample data format.

Each sample (e.g., demo1.npz) is a nodule-centered patch with a size of 80mm x 80mm x 80mm, which is larger than the actual input size to ease the data augmentation implementation. Each npz file contains a voxel (a 3D patch of pre-processed CT scan, as described in the paper) and a seg (the corresponding manual segmentation masked by the radiologists). The csv file contains the classification information.

3D Nodule Mesh Plots

The 3D mesh plots are used for illustration interactively. See the following example: 3d nodule mesh plot

The helper functions are provided in mylib/utils/plot3d.py.

See explore.ipynb for the demo code. Control the mesh step by setting step_size.

LICENSE

The code is under Apache-2.0 License.

The sample dataset is just for demonstration, neither commercial nor academic use is allowed.

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].