Optical coherene tomography (OCT) is a non-invasive imaging technique that is used in many medical areas. However these OCT scans suffer from inherent speckle noise patterns which can negatively impact their medical use. In recent years many deep learning approaches for OCT denosing have been proposed, such as Denoising Diffusion Probabilistic Models (DDPMs). These models consist of a forward process where Gaussian noise in gradually added to the input until it is completely destroyed and a reverse process where the model tries to reconstruct the original input. Due to this reverse process, diffusion models can be adapted to denoising tasks without the need for noise-free ground-truth references during inference. In this project they are addapted to retinal OCT image denoising. The network is trained on the OCTID dataset by the University of Waterloo and tested on the RETOUCH dataset by the Medical University of Vienna.
In this repository the source code for pre-processing as well as training the network is given in the src folder. Also a checkpoint of the trained model is provided.
This project is based on the works of Hu et al. about Unsupervised Denoising of Retinal OCT with Diffusion Probabilistic Model which can be found here. It directly uses their network architecture which can be found on their GitHub repository. The network was trained on the OCTID dataset which can be accessed here. Testing was done on the RETOUCH dataset which can be found here.
This project was part of a pratical work at the Institute of Machine Learning at Johnnes Kepler University in Linz in colaboration with the Medical University of Vienna.