Giter Site home page Giter Site logo

shrijeet16 / liver-tumor-segmentation-using-cnns Goto Github PK

View Code? Open in Web Editor NEW

This project forked from amirzaghloul/liver-tumor-segmentation-using-cnns

0.0 1.0 0.0 86.25 MB

Deep Convolutinal NN for Liver Tumor Segmentation in CT Scans

Jupyter Notebook 100.00%

liver-tumor-segmentation-using-cnns's Introduction

Liver Tumors Segmentation-CNNs

This project segments tumors in the Liver using 2 cascaded CNNs. We use 3D-IRCADb 01 as our dataset. View the Thesis for more details about the model, dataset, methodology and results.

There are 3 notebooks in this project

  • 3d-ircadb-01_util.ipynb Responsible for renaming files, merging masks and augmenting the dataset

  • liver_CNN.ipynb The first CNN, it uses a CNN to segment the Liver and extract the ROI

  • tumor_CNN_final.ipynb The second CNN, it segments the tumors using a CNN after masking other organs using the extracted ROI from the first CNN

There is the models directories which contains the trained models

  • liver_model_final_resunet.h5 which is the first CNN trained for 20 epochs
  • tumor_weights_final_50epochs.h5 which is the second CNN trained for 50 epochs
  • tumor_weights_final_100epochs.h5 which is the second CNN trained for 100 epochs

Dependencies

I used Anaconda for package management but pip will work all the same

  • Tensorflow-GPU
  • Keras (Tensorflow) already comes with Tensorflow
  • Numpy
  • OpenCV
  • Matplotlib
  • Pydicom
  • Jupyter Notebook
  • Scipy
  • Scikit-learn
  • PIL
  • Seaborn
  • Imageio

Dataset Structure

The structure of the dataset should be as follows ( if you don't want to change the code ๐Ÿ˜€ )

train
|_ patients               # Contains all the CT-slices from all patients together with no directories inside
|_ masks                  # Contains the masks for the Liver and Tumors for the patients
   |_ merged_livertumors  # Contains the masks of tumors after merging each slice's tumor masks together
   |_ 1.1_liver           # Contains the mask for the liver of each slice for patient 1
   |_ 1.2_liver           # Contains the mask for the liver of each slice for patient 2
   |_ 1.3_liver           # Contains the mask for the liver of each slice for patient 3
      .
      .
      .
   |_ 1.20_liver          # Contains the mask for the liver of each slice for patient 20

liver-tumor-segmentation-using-cnns's People

Contributors

amirzaghloul avatar shrijeet16 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.