What Is Denoising?
Denoising is the removal of noise or unwanted artifacts from signals and images. It is a crucial step in most audio, image, and video processing devices, as they are prone to noise during signal transmission, acquisition, processing, signal storage, or conversion. Noise can adversely affect subsequent signal processing tasks such as signal recovery, analysis, and tracking.
The goal of denoising is to preserve as much of the original signal information as possible while minimizing the effect from noise. For example, when removing distortions and blurs from images, it is important to retain visual details such as edges, corners, colors, and textures.
You can use MATLAB® and Simulink® to implement commonly used denoising techniques:
- Filter-based denoising: Design, analyze, and implement filters for denoising.
- Filter Images
- Filters to denoise images
- Linear filters (averaging or Gaussian), averaging filters, adaptive filters
- Image modifications and enhancements
- Smoothing, sharpening, and edge enhancement
- Filters to denoise images
- Signal filtering
- Use analog and digital filters
- FIR and IIR implementations of low-pass, high-pass, and bandstop filters
- Remove unwanted spikes, trends, and outliers from signals
- Moving averages, moving medians, Savitzky-Golay, and Hampel filters
- Remove delay and phase distortion
- Zero-phase filtering
- Use analog and digital filters
- Filter Images
- Wavelet-based denoising: Wavelets localize features in time-frequency and different scales that let you preserve important signal or image features that are removed or smoothed by other denoising techniques.
- Denoise signals and images with wavelets
- Decomposing, threshold detail coefficients, and reconstructing
- Smooth nonuniformly sampled data
- Denoise signals and images with wavelets
- Deep learning–based denoising: You can employ deep learning networks to develop state-of-the-art methods to denoise audio, images, or video signals. These methods, though computationally more intensive, achieve the highest signal-to-noise separation. To get started, you can apply the Deep Learning Toolbox™ add-on for MATLAB to:
- Pretrain denoising neural networks
- These are fast and easy to implement to achieve results quickly but offer minimal customization.
- Customize denoising neural networks
- These offer more flexibility and the ability to train your own network using predefined layers or train a fully custom denoising neural network for specific types of images or signals.
- Pretrain denoising neural networks
Examples and How To
Images
Signals and Audio
See also: Signal Processing Toolbox, Wavelet Toolbox, Image Processing Toolbox, Deep Learning Toolbox