Two-Stage Convolutional Neural Network for Breast Cancer Histology Image Classification. ICIAR 2018 Grand Challenge on BreAst Cancer Histology images (BACH)
This repository is the part A of the ICIAR 2018 Grand Challenge on BreAst Cancer Histology (BACH) images for automatically classifying H&E stained breast histology microscopy images in four classes: normal, benign, in situ carcinoma and invasive carcinoma.
We are presenting a CNN approach using two convolutional networks to classify histology images in a patchwise fashion. The first network, receives overlapping patches (35 patches) of the whole-slide image and learns to generate spatially smaller outputs. The second network is trained on the downsampled patches of the whole image using the output of the first network. The number of channels in the input to the second network is equal to the total number of patches extracted from the microscopy image in a non-overlapping fashion (12 patches) times the depth of the feature maps generted by the first network (C):
git clone https://github.com/ImagingLab/ICIAR2018
cd ICIAR2018
pip install -r requirements.txt
After downloading, please put it under the `datasets` folder in the same way the sub-directories are provided.
./checkpoints
.test.py
script--testset-path
command-line argument to provide the path to the test
folder.python test.py --testset-path ./dataset/test
train.py
scriptpython train.py
--channels
argument:python train.py --channels 1
validate.py
scriptpython validate.py
--channels
argument:python train.py --channels 1
If you use this code for your research, please cite our paper Two-Stage Convolutional Neural Network for Breast Cancer Histology Image Classification:
@inproceedings{nazeri2018two,
title={Two-Stage Convolutional Neural Network for Breast Cancer Histology Image Classification},
author={Nazeri, Kamyar and Aminpour, Azad and Ebrahimi, Mehran},
booktitle={International Conference Image Analysis and Recognition},
pages={717--726},
year={2018},
organization={Springer}
}