Principal component analysis (PCA), discrete Fourier transform (DFT), and discrete wavelet transform (DWT) are traditional machine learning techniques that can be used to denoise images as well. Each of these techniques will learn a representation (an approximation) of the image space and will retain mostly the information content in the images and remove the noise.
Image denoising with PCA/DFT/DWT
Getting ready
We will use the Olivetti faces dataset for this recipe. The dataset contains a total of 400 grayscale face images (each of size 64 x 64), 10 per each of the 40 objects. As usual, let's start by importing the required libraries:
import numpy as np
from numpy.random import RandomState
import matplotlib.pyplot as...