Filtered Back-Projection

⚠️AI-Generated

This file was generated by AI and may require review.

Filtered back-projection (FBP) is the standard algorithm for reconstructing images in computed tomography (CT). It implements the inverse Radon transform.

The Problem with Simple Back-Projection

Naive back-projection (smearing each projection back across the image) produces a blurred result. This blur has a $1/r$ characteristic — the point spread function of unfiltered back-projection.

The Ramp Filter

The solution is to filter each projection before back-projecting. The required filter has frequency response:

$$ H(\nu) = |\nu| $$

This is called the ramp filter because its magnitude increases linearly with frequency.

Why a Ramp?

The projection-slice theorem fills Fourier space along radial lines. Near the origin, samples are densely packed; far from the origin, they’re sparse. The ramp filter compensates for this non-uniform sampling density.

Algorithm

  1. Acquire projections $p_\theta(s)$ at angles $\theta \in [0, \pi)$
  2. Filter each projection:
$$ q_\theta(s) = p_\theta(s) * h(s) $$

where $h(s) = \mathcal{F}^{-1}\{|\nu|\}$ 3. Back-project the filtered projections:

$$ f(x,y) = \int_0^\pi q_\theta(x\cos\theta + y\sin\theta) \, d\theta $$

Practical Considerations

Windowing

The pure ramp filter amplifies high-frequency noise. Practical implementations multiply by a window function:

  • Ram-Lak: $|\nu|$ (no windowing)
  • Shepp-Logan: $|\nu| \cdot \text{sinc}(\nu/2\nu_{max})$
  • Hamming: $|\nu| \cdot (0.54 + 0.46\cos(\pi\nu/\nu_{max}))$

Discrete Implementation

In practice:

  • Projections are sampled discretely
  • FFT is used for filtering
  • Back-projection uses interpolation

See Also