Image Processing Assignment
Image Processing Assignment
Assignment
Assignment No : 01
Assignment Name: Image Restoration and Reconstruction
Course Title : Image Processing
Course Code : CSE355
Sec :3
Submission Date : 14-09-2025
Submitted To : Md Mijanur Rahman
Submitted By :
Name ID
Md Sabbir Ahmed 2022200000115
Table of content
5.1Noise model
· Gaussian nosie
· Rayleigh noise
· Erlang(Gamma) noise
· Exponential noise
· Uniform noise
5.2Filtering
1.Mean Filter
2.Median Filter
· Max filter
· Min Filter
5.3Adaptive Filter
· Notch Filtering
· Computed Tomography(CT)
· Backprojection
5.1 Noise Model:
Gaussian Noise
Gaussian noise is a type of statistical noise that follows the normal distribution, also known
as the Gaussian distribution. It is one of the most commonly used noise models in image
processing.
This noise is called “Gaussian” because the random values (noise values) follow a
bell-shaped curve when plotted as a histogram.
p(z)= √2πσ
𝑒 2σ
−∝< 𝑧 < ∝
Where:
Rayleigh Noise
Rayleigh noise is a type of additive noise commonly found in image processing, especially in
applications like radar imaging, laser systems, and medical ultrasound images. It follows a
Rayleigh probability distribution, which is non-Gaussian and positively skewed (i.e., not
symmetric).
This type of noise typically arises in situations where the image signal results from the
magnitude of two orthogonal Gaussian noise components (e.g., in coherent imaging systems).
Because of its nature, Rayleigh noise tends to brighten image regions and affects
high-intensity areas more than low ones.
Here,
a= Location parameter; This shifts the distribution along the horizontal axis. Often
b= Scale parameter; This controls the spread or width of the curve (how much the
where the parameters are such that a > b, b is a positive integer, and “!” indicates factorial.
The mean and variance of z are
𝑏
z= 𝑎
2 𝑏
σ= 2
𝑎
a>0: This is the rate parameter – it controls how fast the distribution decays.
b: This is the shape parameter (a positive integer), representing the number of events being
summed.
Exponential Noise
Exponential noise is used to model random variations (like brightness in images). It has the
probability density function:
−𝑎𝑧
𝑝(𝑧) = 𝑎. 𝑒 , 𝑧≥0
2 1
Variance σ = 2
𝑎
Uniform Noise
Uniform noise is a type of random noise where all values within a certain range are equally
likely to occur. It follows a uniform probability distribution.
In other words, if noise values range between a and , then every value in that interval has the
same probability.
1
𝑝(𝑧) = { 𝑏−𝑎 , 𝑎≤𝑧≤𝑏 0, 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
Together, they create a noisy image with randomly scattered bright and dark pixels, like
grains of salt and pepper sprinkled over it.
Right: Same image corrupted with 5% salt-and-pepper noise, where random pixels are
replaced with:
Black (0) → Pepper noise
White (255) → Salt noise
Comparsion between Salt-Paper Noise and Gaussian Noise:
Pixel corruption pattern Random pixel set to 0 or All pixel slightly altered by
255 a gaussian distribution
Mean Filter
Arithmetic Mean Filter
● Definition: Each pixel is replaced with the average of pixel values in its
neighbourhood.
● Formula:
^ 1
𝑓(x,y)= 𝑚𝑛 ∑ 𝑔(𝑟, 𝑐)
𝑟,𝑐∈𝑆𝑥𝑦
where:
Effect:
● Smooths image by reducing intensity variations.
● Reduces Gaussian noise well.
● Disadvantage: Blurs edges and fine details.
0 0 0 0 0 0 0
0 12 25 30 28 15 0
0 20 100 35 40 22 0
0 18 25 90 45 20 0
0 22 28 40 50 18 0
0 15 20 25 30 10 0
0 0 0 0 0 0 0
Input image
so now,
1
f= 3×3 ×453
453
f= 9
f=50.33
0 0 0 0 0 0 0
0 0 0 0 0 0 0
Output image
(𝑟,𝑐)ϵ𝑆𝑥𝑦
where
● Effect:
o Reduces noise while preserving edges and details better than the arithmetic
mean filter.
o Works well for Gaussian noise and speckle noise.
o Does not blur edges as much as the arithmetic mean filter.
0 0 0 0 0 0 0
0 12 25 30 28 15 0
0 20 100 35 40 22 0
0 18 25 90 45 20 0
0 22 28 40 50 18 0
0 15 20 25 30 10 0
0 0 0 0 0 0 0
Input image
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
Output imag
where:
● g(r,c) = input image pixels
● Sxy= neighbourhood window of size m×n
(a)x-ray image of a circuit board(b) result of filtering with harmonic mean filter
● Effect:
o Effective at removing salt noise (white spots).
o Preserves details better than arithmetic mean filter.
o Not suitable for images corrupted by pepper noise (black spots).
0 0 0 0 0 0 0
0 12 25 30 28 15 0
0 20 100 35 40 22 0
0 18 25 90 45 20 0
0 22 28 40 50 18 0
0 15 20 25 30 10 0
0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1
∑ 𝑔(𝑟,𝑐)
= 100
+ 35 + 25 + 90 + 45 + 28
+ 40 + 50
(𝑟,𝑐)ϵ𝑆𝑥𝑦
= 0.21761
3*3
f= .021761
f=41
0 0 0 0 0 0 0
0 25.2 35.2 26 45 18 0
0 0 0 0 0 0 0
Output image
Effect:
● Q>0: Removes pepper noise (black spots).
● Q<0: Removes salt noise (white spots).
● Q=0: Reduces to Arithmetic Mean Filter.
0 0 0 0 0 0 0
0 12 25 30 28 15 0
0 20 100 35 40 22 0
0 18 25 90 45 20 0
0 22 28 40 50 18 0
0 15 20 25 30 10 0
0 0 0 0 0 0 0
Input image
Case 1: Q=1
𝑄+1
∑ 𝑔(𝑟,𝑐)
^ 𝑟,𝑐∈𝑆𝑥𝑦
𝑓=
𝑄
∑ 𝑔(𝑟,𝑐)
𝑟,𝑐∈𝑆𝑥𝑦
1+1
∑ 𝑔(𝑟,𝑐)
^ 𝑟,𝑐∈𝑆𝑥𝑦
𝑓=
1
∑ 𝑔(𝑟,𝑐)
𝑟,𝑐∈𝑆𝑥𝑦
1+1
∑ 𝑔(𝑟, 𝑐) =1002+352+402+252+902+452+282+402+502=28459
𝑟,𝑐∈𝑆𝑥𝑦
1
∑ 𝑔(𝑟, 𝑐) =100+35+40+25+90+45+28+40+50=453
𝑟,𝑐∈𝑆𝑥𝑦
^ 28459
𝑓= 453
^
𝑓 = 62. 83
0 0 0 0 0 0 0
0 0 0 0 0 0 0
Output Image
Case 2: Q=-1
𝑄+1
∑ 𝑔(𝑟,𝑐)
^ 𝑟,𝑐∈𝑆𝑥𝑦
𝑓=
𝑄
∑ 𝑔(𝑟,𝑐)
𝑟,𝑐∈𝑆𝑥𝑦
−1+1
∑ 𝑔(𝑟,𝑐)
^ 𝑟,𝑐∈𝑆𝑥𝑦
𝑓=
1
∑ 𝑔(𝑟,𝑐)
𝑟,𝑐∈𝑆𝑥𝑦
0
∑ 𝑔(𝑟,𝑐)
^ 𝑟,𝑐∈𝑆𝑥𝑦
𝑓=
−1
∑ 𝑔(𝑟,𝑐)
𝑟,𝑐∈𝑆𝑥𝑦
0
∑ 𝑔(𝑟, 𝑐) =1+1+1+1+1+1+1+1+1=9
𝑟,𝑐∈𝑆𝑥𝑦
1 1 1 1 1 1 1 1 1 1
∑ 𝑔(𝑟, 𝑐) = 100
+ 35 + 40 + 25 + 90 + 45 + 28 + 40 + 50 =0.21761
𝑟,𝑐∈𝑆𝑥𝑦
^ 9
𝑓= 0.21761
^
𝑓 = 41. 35
0 0 0 0 0 0 0
0 12 25 30 28 15 0
0 20 100 35 40 22 0
0 18 25 41. 45 20 0
35
0 22 28 40 50 18 0
0 15 20 25 30 10 0
0 0 0 0 0 0 0
Output image
Median Filter
● Definition: A nonlinear filter that replaces each pixel with the median value of its
neighbourhood pixels.
● Formula: f(x,y)=median{g(r,c)}
● Process:
1. Collect all pixel values in the m×n neighbourhood.
2. Sort the values.
3. Replace the central pixel with the middle value.
● Effect:
1. Very effective at removing Salt-and-Pepper noise.
2. Preserves edges much better than the Arithmetic Mean Filter.
3. Does not blur sharp details as much as averaging filters.
55 70 90 122 21
88 36 49 32 45
67 100 50 87 65
34 80 120 56 34
65 75 39 45 27
Input image
0 49 90 36 0
55 67 40 50 32
36 67 56 50 34
65 67 75 50 34
0 39 45 34 0
Output image
Max Filter
● Definition: Replaces each pixel with the maximum value in its neighbourhood.
● Formula: f(x,y)=max{g(r,c)}
● Effect:
o Removes pepper noise (black spots).
o Brightens image regions.
o Useful for highlighting bright details.
● Disadvantage: Can exaggerate bright regions and lose dark detail.
55 70 90 122 21
88 36 49 32 45
67 100 50 87 65
34 80 120 56 34
65 75 39 45 27
Input image
f(x,y)=max{g(r,c)}
f(3,3)=max(36,49,32,100,50,87,80,120,56)
f(3,3)=120
Output image
Min Filter
● Definition: Replaces each pixel with the minimum value in its neighbourhood.
● Formula: f(x,y)=min{g(r,c)}
[36,49,32,100,50,87,80,120,56]
f(x,y)=min{g(r,c)}
f(3,3)=min(36,49,32,100,50,87,80,120,56)
f(3,3)=32
0 0 0 0 0
0 36 32 21 0
0 36 32 82 0
0 34 39 34 0
0 0 0 0 0
Output image
^ 1
𝑓(𝑥, 𝑦) = 𝑚𝑛−𝑑
∑ 𝑔𝑅(𝑟, 𝑐)
(𝑟,𝑥)ϵ𝑆𝑥𝑦
where:
● g(r,c) = pixel values after removing extremes
● d = number of pixels discarded (usually even, with d/2 lowest and d/2 highest
removed)
● m×n= neighbourhood size
(a)corrupted by salt paper noise(b) result of filtering with alpha trimmed mean filter
● Effect:
o For d=0 → it becomes the Arithmetic Mean Filter.
o For large d → it approaches the Median Filter.
o Good balance for removing salt-and-pepper noise while still reducing
Gaussian noise.
o Useful when an image has both Gaussian and impulse noise.
55 70 90 122 21
88 36 49 32 45
67 100 50 87 65
34 80 120 56 34
65 75 39 45 27
Input image
g(r,c)={49, 50,56,80,87}
^ 1
𝑓(𝑥, 𝑦) = 𝑚𝑛−𝑑
∑ 𝑔𝑅(𝑟, 𝑐)
(𝑟,𝑥)ϵ𝑆𝑥𝑦
^ 1
𝑓(3, 3) = 3*3−4
(49 + 50 + 56 + 80 + 87)
^ 1
𝑓(3, 3) = 9−4
(322)
^ 322
𝑓(3, 3) = 5
^
𝑓(3, 3) = 64. 4
Output image
𝐸𝑓𝑓𝑒𝑐𝑡
● Good for reducing uniform noise.
● Not very effective for impulse noise (salt-and-pepper) or Gaussian noise.
● Preserves edges better than mean filtering because it only considers extremes.
55 70 90 122 21
88 36 49 32 45
67 100 50 87 65
34 80 120 56 34
65 75 39 45 27
Input image
[36,49,32,100,50,87,80,120,56]
Min{g(r,c)}=min{36,49,32,100,50,87,80,120,56}
=32
Mid point
^ 1
𝑓(𝑥, 𝑦) = 2
[max{g(r,c)}+ min{g(r,c)}]
^ 1
𝑓(3, 3) = 2
[120+32]
^ 1
𝑓(3, 3) = 2
[152]
^
𝑓(3, 3) = 76
Replace the value with the orginal pixel value
Output image
Effect:
o Reduces Gaussian noise while preserving edges and details.
o More powerful than mean/median filters because it adapts locally.
o Used in applications like medical imaging, satellite imaging, and
photography.
● Disadvantage:
o Computationally expensive compared to simple filters.
Mid point filter Uniform noise Simple and fast for low
noise
Adaptive Local Noise Reduction Filter
It’s a spatial filter that reduces noise while trying to preserve image details (like edges and
fine structures).
Unlike simple mean/median filters, this one adapts based on local statistics of the image
Working Principle
The filter assumes that the noise is additive white Gaussian noise (AWGN) with known
varianc σn2
Where:
^
● 𝑓(𝑥, 𝑦) → Restored pixel (noise reduced output).
● g(x,y) → Original noisy pixel at location (x,y)(x,y)(x,y).
● ση2→ Noise variance (assumed known or estimated from flat areas of the image).
2
● σ𝑆𝑥𝑦 → Local variance in the neighborhood window around pixel (x,y)(x,y)(x,y).
● 𝑧Sxy → Local mean in that same neighbourhood.
Intuition
1.if ση2 is zero the filter should return the value of g at (x,y).This is the trivial,zero
noise case in which g is equal to f at (x,y) .
2
2.if σ𝑆𝑥𝑦 the local variance is high relative to ση2 the filter should return a value close
to g at (x,y).A high local variance typically is associated with edges and these should
be preserved.
3.if the two variance are equal, we want the filter too return the arithmetic mean value
of the pixels in Sxy.This condition occurs when the local area has the same properties
as the overall image, local noise is to be reduced by averaging.
How It Works
𝑄
HNR(u,v)= ∏ 𝐻𝑘(𝑢, 𝑣)𝐻−𝑘(𝑢, 𝑣)
𝑘=1
H(u,v)= ∏ [
3
1 1
𝑛 ][ 𝑛 ]
𝑘=1 1+[𝐷0𝑘/𝐷𝑘(𝑢,𝑣)] 1+[𝐷0𝑘/𝐷−𝑘(𝑢,𝑣)]
Here:
● Dk (u,v), D-k (u,v )= distances from the noise peaks (symmetric about the center).
● D0k= cut off radius.
● n= order of the filter.
Use Case
● Removing periodic noise in scanned images, satellite images, medical images, etc.
● Example: If a scanned photo has vertical stripes → those correspond to spikes in
Fourier domain → notch filter removes them.
Optimum Notch Filtering
An optimum notch filter is a frequency domain filter specifically designed to remove
periodic noise in images while preserving as much useful detail as possible.
It improves upon standard notch reject filters (ideal, Butterworth, Gaussian) by optimizing
the balance between noise removal and image detail preservation. Linear
Position-Invariant (LPI) Degradation
● When an image is captured, it may be blurred or degraded due to the imaging
system (motion blur, atmospheric turbulence, defocus, etc.).
● If the degradation process is:
1. Linear → output is a linear combination of inputs.
2. Position-invariant (space-invariant) → the degradation is the same
everywhere in the image (does not change with location).
g(x,y)=h(x,y)∗f(x,y)+η(x,y)
Where:
G(u,v)=H(u,v)⋅F(u,v)+N(u,v)
Where:
g(x,y)=h(x,y)∗f(x,y)+η(x,y)
Where:
1. Linear
○ The degradation process is assumed to be linear.
○ Means: If two inputs are combined, their degraded outputs also combine
linearly.
○ Example: If f1 and f2are two images, then
2. Positive
○ Pixel intensities are non-negative.
○ Both original image f(x,y) and degraded image g(x,y) should have values ≥ 0.
3. Invariant
○ The degradation function h(x,y) does not change over space.
○ Meaning: The blur or distortion is the same across the whole image (spatially
invariant).
○ If the system is shift-invariant, convolution can be used to model degradation.
○
● Assumptions:
a. Linear system: output proportional to input.
b. Space-invariant: degradation is the same across the image.
Process:
1. Select a subimage (region of interest):
o Choose a small area with strong features (edges, contrast).
o Avoid flat or noisy regions.
2. Reduce noise influence:
o Pick regions with high signal-to-noise ratio.
3. Process the subimage:
o Let degraded subimage:
𝑔𝑠(𝑥, 𝑦)
Where:
ℎ(𝑥, 𝑦)
Where:
Frequency domain:
𝐺(𝑢, 𝑣) = 𝐻(𝑢, 𝑣)𝐹(𝑢, 𝑣)
2. Experiment-based:
𝐺(𝑢,𝑣)
𝐻(𝑢, 𝑣) = 𝐴
g(x,y)=h(x,y)∗f(x,y)+n(x,y)g(x,y)
where:
G(u,v)=H(u,v)⋅F(u,v)+N(u,v)G(u,v)
That’s why in practice, Wiener filtering is often used instead, since it balances between
noise suppression and restoration.
● Minimize the mean square error (MSE) between the restored image and the original
image.
● Unlike inverse filtering, Wiener filtering balances de-blurring and noise
suppression.
Mathematical Formulation
The Wiener filter is defined as:
2
^ 1 |𝐻(𝑢,𝑣)|
𝐹(𝑢, 𝑣) = [ 𝐻(𝑢,𝑣) 2 ]G(u,v)
|𝐻(𝑢,𝑣)| +𝑆η(𝑢,𝑣)/𝑆𝑓(𝑢,𝑣)
Where:
Intuition
● Inverse filtering divides only by H(u,v)H(u,v)H(u,v).
● Wiener filtering adds a correction term SNSF\frac{S_N}{S_F}SFSNto prevent
amplifying noise when H(u,v)H(u,v)H(u,v) is very small.
● It finds a compromise: restore image details without boosting noise too much.
Special Cases
If noise = 0 → Wiener filter reduces to Inverse Filter:
^ 1
𝐹(𝑢, 𝑣) = 𝐻(𝑢,𝑣)
G(u,v)
If blur = 0 (no degradation, only noise) → Wiener filter acts as a noise smoother.
𝑀−1 𝑁−1
2 2
C= ∑ ∑ [∇ 𝑓(𝑥, 𝑦)]
𝑥=0 𝑦=0
^ 2
∥𝑔 − 𝐻𝑓 ‖=‖ η ‖
Where:
● g → degraded image
● H → degradation function
● f → original image (to be estimated)
● C→ Laplacian operator (measures smoothness of image)
● → regularization parameter (controls trade-off between fidelity and smoothness)
Where:
This looks similar to Wiener filtering, but instead of noise statistics, it uses a smoothness
penalty.
Intuition
● Inverse filtering: Divides only by HHH, unstable.
● Wiener filtering: Balances noise vs. blur using noise & signal statistics.
● CLS filtering: Balances noise vs. blur using a smoothness constraint (no need for
noise statistics).
where
*
● 𝐻 = complex conjugate of 𝐻,
2 *
● |𝐻| = 𝐻𝐻 ,
● 𝑎 ∈ [0, 1] and 𝑏 ≥ 0 are real constants (or can be made frequency dependent),
The two bracketed terms are raised to powers 𝑎 and 1 − 𝑎; hence the “geometric mean”
1
name when 𝑎 = 2 .
Algebraic simplification
* *
Multiply the two brackets — note both contain 𝐻 so the combined exponent of 𝐻 is
𝑎 + (1 − 𝑎) = 1. So (1) simplifies to:
1−𝑎
^ *
𝐹(𝑢, 𝑣) = 𝐻 (𝑢, 𝑣) 𝐺(𝑢, 𝑣) |𝐻(𝑢, 𝑣)|
−2𝑎
( 𝑆𝐹(𝑢,𝑣)
2
|𝐻(𝑢,𝑣)| 𝑆𝐹(𝑢,𝑣)+𝑏 ) .
*
This form makes behavior easier to read: there's always an 𝐻 𝐺 factor (like a matched filter),
modified by two amplitude factors:
−2𝑎
● |𝐻| (pushes toward inverse filtering as 𝑎 → 1),
𝑆𝐹 1−𝑎
● the second term ( 2 ) (pushes toward Wiener behavior as 𝑎 → 0).
|𝐻| 𝑆𝐹+𝑏
● 𝑏 controls the strength of the noise term in the Wiener-like factor. Larger 𝑏 → more
smoothing (more like low-pass); smaller 𝑏 → more aggressive restoration (less
smoothing).
● Both can be made frequency dependent, i.e. 𝑎(𝑢, 𝑣), 𝑏(𝑢, 𝑣), for
spatially/frequency-varying behavior.
2. Backprojection
o Spread projection back across image plane:
π
𝑓𝐵𝑃(𝑥, 𝑦) = ∫ 𝑝θ(𝑥𝑐𝑜𝑠θ + 𝑦𝑠𝑖𝑛θ) 𝑑θ
0
🔹 Practical Takeaways
● Backprojection alone is not enough → filtered backprojection (FBP) is required to
remove halo and sharpen.
● Number of projections matters: more = better approximation.
● Symmetry: only half-circle angles needed (0°–180°).
● Backprojection:
π
𝑓𝐵𝑃(𝑥, 𝑦) = ∫ 𝑝θ(𝑥𝑐𝑜𝑠θ + 𝑦𝑠𝑖𝑛θ) 𝑑θ
0
🔹 Line Representation
A line in the plane can be represented in normal form (instead of slope-intercept):
𝑥𝑐𝑜𝑠θ + 𝑦𝑠𝑖𝑛θ = 𝑟
Every projection corresponds to summing values of the object function 𝑓(𝑥, 𝑦) along such
o δ(·): Dirac delta (picks only points lying exactly on the line)
o 𝑥, 𝑦: spatial coordinates
This formula says: sum (integrate) all pixel values of 𝑓(𝑥, 𝑦) that lie on the line
● 𝑅: radius
Because of circular symmetry, projections are identical for all angles θ.
◦
So, it’s enough to compute for θ = 0 .
Projection:
2 2
𝑅 −𝑟
𝑔(𝑟) = ∫ 𝐴 𝑑𝑦
2 2
− 𝑅 −𝑟
Solution:
2 2
𝑔(𝑟) = {2𝐴 𝑅 − 𝑟 , |𝑟| ≤ 𝑅 0, |𝑟| > 𝑅
● Symbols:
o 𝑅: radius of disk
Interpretation: the projection is the chord length through the circle multiplied by 𝐴.
Interpretation: for fixed 𝑟 we sum (integrate) the values of 𝑓 along the vertical line 𝑥 = 𝑟.
𝑦 ∈ ⎡⎢− 𝑅 − 𝑟 ⎤⎥.
2 2 2 2
𝑅 −𝑟 ,
⎣ ⎦
If |𝑟| > 𝑅 the line misses the disk and the projection is zero.
● Because the object is rotationally symmetric, 𝑔(𝑟, θ) is the same for every angle θ;
i.e. 𝑔(𝑟, θ) = 𝑔(𝑟).
● Accumulate pixel value into bin for the nearest 𝑟𝑗 (or use interpolation / Siddon
algorithm for accuracy);
[
● This yields a discrete sinogram 𝑔 𝑟𝑗, θ𝑘 . ]
BACKPROJECTION
1. Short statement (what backprojection does)
A backprojection takes each 1-D projection 𝑔(𝑟, θ) and “smears” it back across the image
along the line 𝑥𝑐𝑜𝑠θ + 𝑦𝑠𝑖𝑛θ = 𝑟. Summing these smeared projections over angles
reconstructs an image — this sum is the laminogram (a blurred image).
This says: for each image point (𝑥, 𝑦), take the projection value at detector coordinate
𝑟 = 𝑥𝑐𝑜𝑠θ + 𝑦𝑠𝑖𝑛θ.
𝐾−1
(
𝑓𝐵𝑃(𝑥, 𝑦) ≈ ∑ 𝑔 𝑥𝑐𝑜𝑠θ𝑘 + 𝑦𝑠𝑖𝑛θ𝑘, θ𝑘 ∆θ.
𝑘=0
)
Symbols
● 𝑓(𝑥, 𝑦): true image (unknown)
∞
−𝑗ω𝑟
𝐺θ(ω) = ∫ 𝑔(𝑟, θ) 𝑒 𝑑𝑟.
−∞
( )
where 𝐹 𝑘𝑥, 𝑘𝑦 is the 2-D FT of the image 𝑓(𝑥, 𝑦). In words: the 1-D FT of the projection at
angle θ equals the 2-D FT of the image sampled along the radial line at angle θ in frequency
domain.
2. Invert the 2-D FT to get 𝑓(𝑥, 𝑦). Doing algebra gives a reconstruction formula that
contains a factor |ω| in the 1-D frequency domain (this is the ramp).
( )
π ∞
𝑗ω(𝑥𝑐𝑜𝑠θ+𝑦𝑠𝑖𝑛θ)
𝑓(𝑥, 𝑦) = ∫ ∫ |ω| 𝐺θ(ω) 𝑒 𝑑ω 𝑑θ.
0 −∞
3. Backproject: for each image pixel (𝑥, 𝑦), sum contributions
[ ]
𝑞θ 𝑟 = 𝑥𝑐𝑜𝑠θ𝑘 + 𝑦𝑠𝑖𝑛θ𝑘 over all 𝑘 (use interpolation because 𝑟 may not land
𝑘
𝐺θ(𝑣)
Key Notes
● Ramp filter: boosts high frequencies → fixes blur from plain backprojection.
● Windowing (Hamming/Hann): reduces ringing but adds slight blur.
● Sampling:
o Enough rays (per projection) = good radial sampling.
o Enough angles (θ steps) = avoids streak artifacts.
Fan-Beam Geometry
● Source rotates on a circle around the object.
● Detectors arranged along a circular arc.
● Angles:
𝑢 = 𝑏 + 𝑎 𝑎𝑛𝑑 𝑟 = 𝐷𝑠𝑖𝑛𝑎
Step-by-Step (Math)
1. Convert fan-ray → parallel-ray:
𝑟 = 𝐷𝑠𝑖𝑛𝑎, 𝑢 = 𝑏+ 𝑎
Key Points
● Fan-beam = more realistic geometry in modern CT.