This document contains code for denoising an image using wavelet thresholding. It performs the following steps:
1. Adds Gaussian noise of varying scale to an input image and calculates the PSNR for the noisy image.
2. Estimates the noise level using robust statistics on the wavelet coefficients and performs wavelet thresholding using Bayesian thresholding.
3. Reconstructs the image from the thresholded wavelet coefficients and calculates the PSNR.
4. Compares the performance of the proposed method to linear filtering, Wiener filtering and median filtering by plotting the PSNR for each method against the noise scale.