Coder Social home page Coder Social logo

haarburger / multi-scale-curriculum Goto Github PK

View Code? Open in Web Editor NEW
44.0 4.0 17.0 297 KB

Code for Paper: Multi Scale Curriculum CNN for Context-Aware Breast MRI Malignancy Classification

License: GNU Affero General Public License v3.0

Python 100.00%
detection retina-unet breast-cancer breast-cancer-classification breast-cancer-detection classification medical-image-computing medical medical-image-analysis pytorch

multi-scale-curriculum's Introduction

Multi Scale Curriculum CNN for Context-Aware Breast MRI Malignancy Classification

Code for our paper Multi Scale Curriculum CNN for Context-Aware Breast MRI Malignancy Classification accepted for oral presentation at MICCAI 2019.

model

TL;DR

We propose a 3D CNN and a multi scale curriculum learning strategy to classify malignancy globally based on an MRI of the whole breast. Our proposed approach does not rely on lesion segmentations, which renders the annotation of training data much more effective than in current object detection approaches. Achieving an AUROC of 0.89, we compare the performance of our approach to Mask R-CNN and Retina U-Net as well as a radiologist. Performance is on par with approaches that, in contrast to our method, rely on pixelwise segmentations of lesions.

License

Copyright (C) 2019 by RWTH Aachen University
http://www.rwth-aachen.de

License: This software is dual-licensed under:

  • Commercial license (please contact: [email protected])
  • AGPL (GNU Affero General Public License) open source license

Installation

This repository has been tested with Ubuntu 18.04 and macOS 10.14 Mojave, we highly recommend using a dedicated GPU though.

Editable Installation

git clone https://github.com/haarburger/multi-scale-curriculum.git .
cd multi-scale-curriculum
pip install -e .

Installation

pip install git+https://github.com/haarburger/multi-scale-curriculum.git

Getting Started

A toy example is provided in experiments/example. This folder contains a script and config file for stage 1 and stage 2. You may want to change the folder to which the generated data is saved in experiments/exmple/generate_data.py and the location for the files generated during training in experiments/example/patch.yml and experiments/example/wic.yml. Note that you need to train stage 1 and load the corresponding model during stage 2.

The specific steps are as follows:

# generate dummy data
python experiments/example/generate_data.py

# train stage 1 (3D "patches")
python experiments/example/exec_patch.py -cp experiments/example/patch.yml

# update pretrained model path from the previous step in experiments/example/wic.yml

# train stage 2 (3D volumes)
python experiments/example/exec_wic.py -cp experiments/example/wic.yml

Citation

If you use our work, please cite our paper as follows

@inproceedings{haarburger_2019,
    Author = {Christoph Haarburger and Michael Baumgartner and Daniel Truhn and Mirjam Broeckmann and Hannah Schneider and Simone Schrading and Christiane Kuhl and Dorit Merhof},
    Booktitle = {Medical Image Computing and Computer Assisted Intervention (MICCAI)},
    Doi = {10.1007/978-3-030-32251-9_54},
    Title = {Multi Scale Curriculum CNN for Context-Aware Breast MRI Malignancy Classification},
    Year = {2019}}

multi-scale-curriculum's People

Contributors

haarburger avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

multi-scale-curriculum's Issues

How to run code by my datasets?

when I run the code by your requirems,I find it generate the dummy data,but I want to run the code by my datasets.

So,I have two problems:
1.What format should I process my dataset into?(my datasets format: .DCM)
2. Which folder should I put my dataset in?

could you please tell me how to do ?
Look forward to your reply.
Thank you very much!

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.