This repository contains a PyTorch implementation of a Denoising Autoencoder (DAE) to remove noise from dental X-ray images. The model is trained in an unsupervised manner, meaning it does not require paired clean/noisy images.
The Denoising Autoencoder (DAE) is a neural network-based approach designed to remove noise from dental X-ray images. It is built on a U-Net architecture, which captures fine details and reconstructs clean images from noisy inputs.
This implementation processes 120 dental images, extracting useful features while eliminating unwanted noise. The model can be applied to improve diagnostic accuracy in dental imaging.
The dataset consists of 120 noisy dental X-ray images, stored in a directory structure as follows:
- Format: JPG
- Image Type: Dental radiographs (X-rays)
- Resolution: Varies based on dataset
- Preprocessing: Images are normalized before training
- Data Loading: Load noisy dental images and apply preprocessing.
- Model Definition: Implement a U-Net-based autoencoder.
- Training: Train the model using a Mean Squared Error (MSE) loss function.
- Evaluation: Test the model on noisy images and visualize denoised outputs.
- U-Net Autoencoder: Encoder extracts features; decoder reconstructs images.
- Loss Function: Uses MSE loss by default, with an option for Structural Similarity Index (SSIM) loss.
- Training Strategy: Optimized using Adam optimizer with a learning rate scheduler.
To run this project, install the required Python libraries:
pip install torch torchvision numpy opencv-python
git clone https:https://github.com/AyobamiMichael/Dental_Medical_ImagesDenoising.git
cd Dental_Medical_ImagesDenoising
Results
The model produces the following outputs:
Denoised Dental X-rays: Each input image is processed and saved in the output directory.
## Contact
For questions or feedback
Ayobami Opefeyijimi
Email: [email protected]