ICVGIP 2018 [paper]
OCT images are corrupted by speckle noise due to the underlying coherence-based strategy. Speckle suppression/removal in OCT images plays a significant role in both manual and automatic detection of diseases, especially in early clinical diagnosis. In this work, a new method is proposed for denoising OCT images based on CNN by learning common features from unpaired noisy and clean OCT images in an unsupervised, end-to-end manner. The proposed method consists of a combination of two autoencoders with shared encoder layers, which we call as Shared Encoder (SE) architecture. The SE is trained to reconstruct noisy and clean OCT images with respective autoencoders. The denoised OCT image is obtained using a cross-model prediction. The proposed method can be used for denoising OCT images with or without pathology from any scanner.
The Schematic representation of proposed Shared Encoder (SE) architecture
This code depends on the following libraries:
- Keras >= 2.0
- keras_contrib >= 1.2.1
- Theano = 0.9.0
Code should be compatible with Python versions 2.7-3.5. (tested in python2.7)
Datasets can be found in following links:
For more details, please check out the experiments section in the paper.
The model can be trained to reproduced with command:
python2.7 train_SE.py
The data should be placed in below path
- ./data/noisy_data/
- ./data/clean_data/
The weights of SE and SSE1 models are present in weights folder. SSE1 (best) is fine-tune version of SE. More details are present in paper.
The result can be reproduced with command:
python2.7 test_SE.py
By default it is set to SSE1, Please change 'modelName' in parameter section to switch between 'SE' and 'SSE1'.
The predicted results will be saved in "./test_images/"
- Add some results
- Add command line options to set parameter
- Update code for tensorflow backend
If you use this code for your research, please cite:
@inproceedings{adiga2018se,
title={Shared Encoder based Denoising of Optical Coherence Tomography Images},
author={Adiga, Sukesh V and Sivaswamy, Jayanthi},
booktitle={Proceedings of the 11th Indian Conference on Computer Vision, Graphics and Image Processing (ICVGIP)},
year={2018},
organization={ACM}
}
This project is licensed under the terms of the MIT license.