Post Details
image Restoration
Image Restoration: Complete Guide with Examples
1. What is Image Restoration?
Image Restoration is the process of recovering the original image from a degraded or noisy image.
Degradation can occur due to noise, blurring, or transmission errors. The goal is to improve image quality.
Noise Model:
g(x,y) = f(x,y) + η(x,y)
- g(x,y): observed (noisy) image
- f(x,y): original image
- η(x,y): noise
2. Types of Noise with Examples
2.1 Gaussian Noise
Noise follows a normal distribution (bell curve). Common in cameras and sensors.
PDF: P(z) = (1 / (√(2π)σ)) * exp(-(z-μ)² / 2σ²)
Original 3×3 patch:
| 52 | 55 | 61 |
| 62 | 59 | 55 |
| 63 | 65 | 66 |
Gaussian noise values (assumed, μ=0, σ=5):
| 2 | -5 | 2 |
| 3 | 1 | -3 |
| -3 | 3 | -2 |
Noisy patch:
| 54 | 50 | 63 |
| 65 | 60 | 52 |
| 60 | 68 | 64 |
Restoration using Arithmetic Mean Filter (3×3)
- Neighborhood for center pixel (60): [54,50,63,65,60,52,60,68,64]
- Sum = 536
- Average = 536 / 9 ≈ 59.56 → replace center pixel 60
Resulting patch after filter:
| 54 | 50 | 63 |
| 65 | 59.56 | 52 |
| 60 | 68 | 64 |
2.2 Salt & Pepper Noise
Random pixels become black (0) or white (255). Common in transmission errors.
Original 3×3 patch:
| 52 | 55 | 61 |
| 62 | 59 | 55 |
| 63 | 65 | 66 |
Noisy patch:
| 52 | 255 | 61 |
| 0 | 59 | 55 |
| 63 | 65 | 255 |
Restoration using Median Filter (3×3)
- Neighborhood for center pixel (59): [52,255,61,0,59,55,63,65,255]
- Sorted: [0,52,55,59,61,63,65,255,255]
- Median = 61 → replace center pixel 59
Resulting patch after filter:
| 52 | 255 | 61 |
| 0 | 61 | 55 |
| 63 | 65 | 255 |
2.3 Uniform Noise
Noise is evenly distributed between two values. Adds small random variations.
Original 3×3 patch:
| 50 | 52 | 55 |
| 53 | 54 | 52 |
| 51 | 53 | 54 |
Noisy patch (±2):
| 52 | 50 | 55 |
| 54 | 56 | 50 |
| 49 | 55 | 53 |
Restoration using Midpoint Filter (3×3)
- Neighborhood for center pixel (56): [52,50,55,54,56,50,49,55,53]
- Max = 56, Min = 49 → Midpoint = (56+49)/2 = 52.5
Resulting patch after filter:
| 52 | 50 | 55 |
| 54 | 52.5 | 50 |
| 49 | 55 | 53 |
2.4 Rayleigh Noise
Common in radar images. Example 3×3 patch:
| 50 | 52 | 51 |
| 53 | 54 | 52 |
| 51 | 53 | 54 |
Noisy patch (Rayleigh noise, assumed values):
| 53 | 55 | 52 |
| 55 | 57 | 53 |
| 52 | 56 | 55 |
Restoration using Arithmetic Mean Filter:
- Neighborhood sum for center pixel = 53+55+52+55+57+53+52+56+55=488
- Average = 488/9 ≈ 54.22 → replace center pixel
Resulting patch:
| 53 | 55 | 52 |
| 55 | 54.22 | 53 |
| 52 | 56 | 55 |
2.5 Erlang / Gamma Noise
Occurs in multiplicative processes like sonar.
Original patch:
| 50 | 51 | 53 |
| 52 | 54 | 52 |
| 51 | 53 | 55 |
Noisy patch (assumed Erlang noise):
| 52 | 52 | 54 |
| 53 | 56 | 53 |
| 52 | 54 | 57 |
Restoration using Arithmetic Mean Filter:
- Neighborhood sum for center pixel = 52+52+54+53+56+53+52+54+57=483
- Average = 483/9 ≈ 53.67 → replace center pixel
Resulting patch:
| 52 | 52 | 54 |
| 53 | 53.67 | 53 |
| 52 | 54 | 57 |
2.6 Exponential Noise
Common in low-light or photon-limited sensors.
Original patch:
| 50 | 51 | 52 |
| 53 | 54 | 52 |
| 51 | 53 | 55 |
Noisy patch (assumed exponential noise):
| 51 | 52 | 53 |
| 54 | 56 | 53 |
| 52 | 54 | 56 |
Restoration using Arithmetic Mean Filter:
- Neighborhood sum for center pixel = 51+52+53+54+56+53+52+54+56=481
- Average = 481/9 ≈ 53.44 → replace center pixel
Resulting patch:
| 51 | 52 | 53 |
| 54 | 53.44 | 53 |
| 52 | 54 | 56 |
3. Summary Table of Filters
| Noise Type | Best Filter | Example Computation |
|---|---|---|
| Gaussian | Arithmetic / Geometric Mean | Average of neighborhood: (54+50+63+65+60+52+60+68+64)/9 ≈ 59.56 |
| Salt & Pepper | Median Filter | Median of [52,255,61,0,59,55,63,65,255] = 61 |
| Uniform | Midpoint Filter | Max=56, Min=49 → Midpoint = 52.5 |
| Rayleigh | Arithmetic Mean | Average of neighborhood: sum/9 ≈ 54.22 |
| Erlang / Gamma | Arithmetic Mean | Average of neighborhood: sum/9 ≈ 53.67 |
| Exponential | Arithmetic Mean | Average of neighborhood: sum/9 ≈ 53.44 |