Project Outline: Novel Image Denoising via Decomposition
- Goal: To develop a noise reduction strategy by decomposing an image into components such as structure, texture, and noise, and then denoising only the noise component.
- Key Insight: Decompose the image to confine the noise into a particular component to ensure minimal loss in image details.
Hybrid Multi-Scale Decomposition (HMSD) Employ wavelet transforms and bilateral filtering to carry out a two-step decomposition:
- Level 1: Bilateral filtering decomposes an image into two layers. Base Layer: Low-frequency structural information. Detail Layer: High-frequency details and noise.
- Level 2: Apply wavelet decomposition on the detail layer to further isolate noise. Wavelet Subbands: High-frequency subbands contain most of the noise.
- Adaptive Thresholding: Apply spatially varying thresholds based on local variance to suppress noise while preserving edges.
- Reconstruction: Combine the processed wavelet coefficients back into the detail layer, then combine with the base layer. Novelty:
- Combines spatial (bilateral filter) and frequency (wavelet) decompositions.
- Adaptive thresholding adapted to local image statistics.
- Decomposition:
- Use
OpenCV
for bilateral filtering.
- Use
- Employ
PyWavelets
for wavelet decomposition, say, Daubechies wavelets.
- Noise Reduction:
- Calculate local variance in wavelet subbands for adaptive threshold determination
- Soft-threshold the high-frequency coefficients
- Reconstruction:
- Inverse wavelet transform on the denoised detail layer
- Weighted addition with the base layer
- Quantitative: PSNR, SSIM on datasets such as BSD68 or Set12.
- Qualitative: Visual comparison with the state-of-the-art methods (e.g., BM3D, Non-Local Means).
- Python: Core programming language.
- Libraries:
OpenCV
: Bilateral filtering and image I/O.PyWavelets
: Wavelet decomposition.scikit-image
: Metrics (PSNR, SSIM).NumPy/Matplotlib
: Array operations and visualization.
- Over-Smoothing: Use edge-aware bilateral filtering and adaptive thresholds.
- Noise Residuals: Perform the decomposition on residual layers in an iterative way.
- Complexity: Enhance code with vectorization and parallel processing.
- A denoising technique that will outperform conventional methods in terms of edge/texture preservation.
- Code repository with modular implementation for reproducibility.
- Extend to video denoising or 3D medical imaging.
- Incorporate deep learning to automate parameter tuning.
It draws, by design, on the favorable features of both the spatial and frequency-domain decompositions for noise removal. Emphasis has gone towards the adaptive processing of high-frequency components whereby image details considered critical will not be significantly sacrificed for very superior performance of denoising.