什么是 Back Projection?
Back Projection(反向投影)是一种广泛应用于图像重建领域的经典算法,尤其在计算机断层扫描(CT)中扮演关键角色。 它通过将投影数据(如 Radon 变换结果)沿原始路径“反向”投射回图像空间,从而近似恢复原始图像。
基本原理
在 CT 成像中,X 射线从多个角度穿过物体,探测器记录衰减后的信号,形成一系列投影(sinogram)。 Back Projection 的核心思想是:将每个角度的投影值均匀地“涂抹”回图像平面的对应路径上。 虽然简单 Back Projection 会导致图像模糊(星状伪影),但它为更高级的滤波反投影(Filtered Back Projection, FBP)奠定了基础。
应用场景
- 医学影像重建(如 CT、PET)
- 工业无损检测
- 雷达成像与地震数据处理
- 计算机视觉中的形状从阴影(SfS)等逆问题
简单实现思路(伪代码)
以下为 Back Projection 的简化逻辑(假设已知投影数据 projections[angle][t]):
for each pixel (x, y) in image:
value = 0
for each angle θ:
t = x * cos(θ) + y * sin(θ) // 计算该点在θ方向上的投影坐标
value += interpolate(projections[θ], t) // 插值得到投影值
image[x][y] = value
实际应用中常结合滤波(如 Ram-Lak 滤波器)以提升重建质量。