从倾转序列到断层图

一堆二维投影是怎么"叠"成三维体的?反投影、为什么需要很多角度、以及缺失楔形从哪来

直觉

电镜每次只拍到样品的一张二维投影——所有深度信息都被压扁到一张图里。把样品倾转一个角度再拍一张,又得到一个不同方向的”压扁”。断层重构做的事,就是把这一摞不同角度的投影,反过来”摊开”重新堆叠成原本的三维体。最朴素的做法叫反投影 (backprojection):把每张投影沿它当初的拍摄方向”抹回”空间里,所有方向叠加,物体就浮现出来。

打个比方:投影像影子。看一个手势在墙上投下的一道影子,你猜不出手的形状;让光从上、从侧、从斜各打一遍,把每道影子沿它的光线方向往回拉成一片”光墙”,几片光墙的交叠处才是手所在的实体。角度越多,交叠勾出的轮廓越准。反投影就是把这个”沿光线拉回来再叠加”的过程对每张投影做一遍。

左为原物,右为反投影重建,投影数与最大倾转角可调:

原物 (真值)
反投影重建

用 40 个投影、倾转范围 ±90° 重建。投影越多 → 越清晰、星状条纹越少;倾转被限制在 ±90°(< 90°)时,未采样的角度让重建在某个方向被拉长、模糊 —— 这就是缺失楔形在实空间的样子。

投影数越多,重建越清晰,星状条纹(单角度反投影的拖影)随之消失。最大倾转角低于 90° 时,未采样方向上的结构被拉长、模糊——缺失楔形在实空间的表现。

把演示玩到极端能看清两类伪影各自的来源。只留一两张投影:每张投影沿自己的方向抹成一道亮带,几道亮带交叉出一个星形——这是角度太稀的拖影,加投影就能消。把最大倾转角从 90° 拉到 60° 再到 45°:星形消失了,但物体开始沿某个固定方向被抹长、边界发虚——这是角度范围不全的伪影,加多少张投影都补不回来,因为缺的根本不是采样密度,而是整整一段方向上的信息从未进入数据。前者是采样问题,后者是缺失楔形,二者性质不同,下面分开讲。

数学形式

深入

一张角度 θ\theta 的投影是物体沿该方向的线积分(Radon 变换):

pθ(t)=f(x,y)δ ⁣(xcosθ+ysinθt)dxdyp_\theta(t) = \iint f(x,y)\,\delta\!\big(x\cos\theta + y\sin\theta - t\big)\,dx\,dy

其中 f(x,y)f(x,y) 是要恢复的二维物体(断层切片),θ\theta 是投影方向,tt 是投影线在该方向上的位置坐标。狄拉克 δ\delta 把积分钉在直线 xcosθ+ysinθ=tx\cos\theta + y\sin\theta = t 上,于是 pθ(t)p_\theta(t) 就是物体沿这条线的总和——一条”压扁”的剖面。固定 θ\theta、扫遍 tt,得到一张完整的一维投影;这正是一张倾转图里沿某行采到的东西。

反投影把每个投影沿原方向摊回,再对所有角度积分:

b(x,y)=0πpθ(xcosθ+ysinθ)dθb(x,y) = \int_0^\pi p_\theta\big(x\cos\theta + y\sin\theta\big)\,d\theta

读法:要恢复点 (x,y)(x,y) 的值,就去每个角度 θ\theta 的投影里,取出”经过这个点的那条投影线”的值 pθ(xcosθ+ysinθ)p_\theta(x\cos\theta + y\sin\theta),再把所有角度的贡献加起来。直观上,每张投影把它的值沿投影线均匀地”涂”回整条线,物体真正所在的位置因为被各个角度反复涂到而累积变亮。

但直接这样叠出来的图是模糊的(等价于真值被一个 1/r1/r 的核糊过):每张投影把能量沿整条线涂开,离物体远的地方也被涂上了底噪,叠加后近处亮、远处也有残留,等效于在真值上卷了一个随距离 rr 缓降的核 1/r1/r,低频被过度放大,于是整体发糊。实际重构用滤波反投影 (FBP):先在频域给每个投影乘一个斜坡滤波器 k|k|,再反投影,才能恢复清晰度。斜坡 k|k| 恰好抵消 1/r1/r 模糊在频域的 1/k1/|k| 衰减——它压低被反复叠加的低频、抬高描刻边界的高频,二者相乘成常数,模糊就被精确拉平。上面的演示为未滤波反投影,因此投影叠加的过程与方向性拖影清晰可见。

Cryo-ET 里因为只能倾到 ±60°,θ\theta 的积分区间不完整,缺的那段角度对应傅里叶空间的楔形空缺——无论怎么滤波都补不回来,只能靠 CryoGEN / CryoWGEN 这类方法用学到的先验去推断。k|k| 滤波器解决的是”叠出来发糊”,它假设各方向的频率都采到了;当一整段方向根本没有数据时,那段频率乘多少都还是零,这是采样不全,不是模糊,所以是两个独立的问题。

为什么必须用很多角度,可以直接从中心切片定理读出来。中心切片定理说:一张投影的一维傅里叶变换,正好填上物体二维傅里叶谱中过原点、垂直于投影方向的那一条线。每多拍一个角度,就在傅里叶平面上多填一条过原点的辐条。要把整个二维频谱填满,就得让这些辐条均匀铺满 180°。这也解释了为什么伪影是”星形”:只有几条辐条时,频谱里被填的只是几条放射状的线,其余大片是空的,反变换回实空间就成了沿这些方向的放射状拖影。

实际管线里

真实 Cryo-ET 重构远不止反投影。完整的处理链大致如下,每一步都为下一步铺路:

WBP 出来的体,就是 CryoGEN / CryoWGEN 模型里那个被缺失楔形破坏的观测 yy——管线到这里把数据准备好,真正去”填”缺失楔形里那段从未采样的信息,是后续这些方法的事。

← 电子断层成像