At FullTilt: Real-Time Open-Set 3D Macromolecule Detection Directly from Tilted 2D Projections¶
会议: NeurIPS2026
arXiv: 2604.10766
领域: 计算生物学
关键词: 冷冻电子断层成像、开放集大分子检测、倾斜序列、视觉提示、多视角几何
一句话总结¶
FullTilt 将已对齐的二维倾斜序列直接送入带多类别视觉提示的三维检测器,以跨倾角行注意力融合、近零倾角查询初始化和训练期几何增强替代三维体数据滑窗检测,在三个真实 cryo-ET 数据集上实现亚秒级零样本检测,但仍需要模拟数据预训练和输入对齐。
研究背景与动机¶
冷冻电子断层成像(cryo-ET)通过旋转样本,在不同倾角下记录二维投影,再将对齐后的倾斜序列重建为三维断层体(tomogram)。传统流程先在体数据中定位大分子,再提取子断层体进行平均与结构精修。封闭集检测器需要为新蛋白重新标注和训练,TomoTwin、ProPicker 等开放集方法则让用户提供参考粒子,依据视觉相似性定位目标。不过,取消目标特定训练并未取消体数据遍历:显存装不下整幅断层体,模型仍要反复读取三维子体积,或者像 CryoSAM 一样遍历多个方向的二维切片。
这一瓶颈不只是检测网络不够快,而是检测之前已经选用了计算量更大的表示。论文举例说明,一组倾斜序列可能只有 41 张投影,对应断层体却有 256 个深度切片;重建虽然便于观察,却不意味着检测必须遍历重建后的每个体素。直接读取投影能够绕开体数据检测,但也失去了重建所提供的深度分离:多个粒子可能在某个倾角重叠,单幅图的信噪比又低到难以辨认目标,因此“逐图检测后反投影”会把不可靠的二维证据变成三维定位误差。
本文于是把问题改成:在检测之前就融合跨倾角证据,能否既保留定位所需的几何信息,又避免构建和遍历稠密三维特征?已对齐序列提供一个特别有用的约束——绕同一轴旋转时,同一粒子的纵向图像坐标保持不变,而横向位置随倾角与深度改变。核心 idea:利用这一行对应关系先融合整组投影,再用视觉提示确定目标类别、以近零倾角建立三维查询并跨视角迭代修正,从而直接输出粒子坐标而不进行断层体滑窗检测。
方法详解¶
整体框架¶
输入是已经沿 y 轴对齐的二维倾斜序列、每张图的倾角,以及带类别标签的二维粒子方框;输出是一组粒子的三维中心、直径、类别和置信度。Swin Transformer 先逐图提取多尺度特征,随后依次经过“倾斜序列编码”“多类别视觉提示编码”“倾角感知三维解码”。这里的“具有三维感知能力的特征”仍按二维视图存储,并不是重建出一个稠密三维体积。
“辅助几何基元”只在训练中生成额外监督,不是推理输入。模型需要已对齐图像和已知倾角,不能把从原始显微镜采集到对齐的前处理也算作被替代的步骤;标准三维提示工作流仍会用到重建断层体,而直接在零倾角图中给二维提示则可以避开这一步。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["已对齐投影与倾角"] --> B["逐图二维骨干"]
B --> C["倾斜序列编码"]
C --> D["多类别视觉提示编码"]
P["带类别的二维提示"] --> D
D --> E["倾角感知三维解码"]
C -->|跨视角特征| E
E --> F["三维中心、直径<br/>类别与置信度"]
G["辅助几何基元"] -.->|仅训练:合成投影| A
G -.->|仅训练:三维真值监督| E
关键设计¶
1. 倾斜序列编码:把低信噪比视图变成共享几何证据
每张投影的特征先加入二维位置、尺度层级和倾角嵌入;倾角嵌入由多频率正弦、余弦编码经过 MLP 得到,让网络知道两张外观相近的图实际上来自不同观察方向。编码器交替执行单个视图内部的局部注意力和所有视图之间的全局行注意力,连续更新跨视角特征。局部步骤先整理每幅图的空间上下文,跨视图步骤再把同一行上的候选响应联系起来;这样一个被噪声遮盖的粒子能借助其他倾角的信息,而不是要求单张图先给出可靠检测。
行注意力的关键不是简单减少视图数量,而是利用采集与对齐几何限制注意力范围。旋转改变粒子的横向投影位置,但不改变其所在行,因此跨倾角搜索可以沿同一行横向展开,无需让所有二维位置两两交互。这既减少大量无关计算,也保留随深度变化的横向轨迹。它不等于已获得精确深度:编码器提供可用于三维定位的融合证据,真正的中心坐标仍由后续查询解码决定。若输入未满足该对齐假设,行对应本身就可能失效。
2. 多类别视觉提示编码:让每个类别只汇聚自己的参考粒子
用户给出的是视觉示例而不是固定训练类别编号:每个提示包含粒子中心、直径对应的方框和类别标签。不同图像可有不同数量的提示,也可同时出现多个目标类别。为兼容这种不规则输入,模型先补齐每张图的局部提示,再为每个请求类别附加一个覆盖整幅图的全局方框及可学习类别 token;局部提示也配有内容 token 和方框位置编码。方框帮助交叉注意力读取目标附近的特征,全局类别 token 则用于承接同类别提示的信息。
提示 token 先通过可变形交叉注意力读取融合后的图像特征,再做带类别掩码的自注意力。掩码只允许标签相同且非空的 token 交互,所以核糖体的提示不会直接被另一个蛋白类别的提示混入,补齐位置也不应成为有效证据。每层更新后,某一类别的类别 token 只在包含该类别提示的视图之间平均,最终形成一个类别原型。原型既供查询初始化使用,也为解码时的类别判断提供视觉参照;类别数量由用户请求决定,而非锁定为训练蛋白名单。
这也解释了为什么“减少提示投影”和“减少输入投影”不是同一操作。即使仅在一个倾角提供提示,编码器仍能看见完整倾斜序列,提示附近的特征已经包含其他视图的信息。相反,删除输入图像会直接丢失跨视角证据,因此不能期待相同的鲁棒性。原型还可以从一个实例提取后在同一数据集的其他实例中复用,但跨实例能否保持目标外观一致仍需要实验验证。
3. 倾角感知三维解码:从可信平面起步,再让所有视角修正深度
初始化器选取倾角最接近零度的图像,计算每个特征位置与所有类别原型的相似度,并取类别维度的最大值形成候选响应。响应最高的 900 个位置对应的二维方框提供初始中心与直径;深度统一初始化为归一化坐标 0.5,即中间平面,内容查询则是可学习参数。选择近零倾角是因为零度投影的横纵位置直接对应三维位置中的 x、y,避免在低信噪比条件下让随机三维查询同时摸索平面位置和深度。
这种初始化并没有测出真实 z 坐标,而是给后续优化一个较可信的起点;论文还假设样本深度偏移均值为零。最近零度的图不一定恰好是零度,因此位置对应只是该初始化策略的依据,不应被理解为对所有倾角精确恢复 x、y。最终深度必须通过多个方向的投影一致性逐步修正,而非被固定在中间平面。
每层解码依次进行查询间自注意力、查询与类别原型之间的交叉注意力,以及查询与图像特征之间的可变形交叉注意力。第三步把当前三维锚点投影到每个倾角,在投影位置附近采样特征;它不是先对所有像素做二维检测再反投影,而是让同一个三维假设去各视图读取对应证据。按正文的像素坐标约定,核心投影关系为:
其中 W 是图像宽度,D 是所采用三维坐标空间的深度,\(\theta\) 是倾角。该关系说明,同一 x、y 但不同 z 的候选会在非零倾角落到不同横向位置;多视角特征于是可以区分单张投影中重叠的粒子。虽然不重建断层体,仍须定义三维坐标尺度与深度范围,不能把“不读取三维体数据”误解成“不需要三维几何设定”。
来自各视图的查询更新经平均汇聚,再按 DINO 的“look forward twice”方式迭代精修锚点。最终锚点给出三维中心和单一直径,查询与类别原型的内积产生类别及置信度。这样的分工让二维编码负责把粒子从噪声中显现出来,三维查询负责寻找能同时解释多个投影的空间位置,而视觉原型决定这些粒子是否属于用户指定类别。
4. 辅助几何基元:用廉价的精确几何监督训练跨视角定位
仅靠物理 cryo-ET 模拟训练成本很高,且低信噪比、遮挡和不均匀照明让网络更难学清几何关系。辅助模块在训练时即时生成几何基元的二维投影,例如大小不同的圆,并同时提供准确的三维真值坐标。它还能改变目标分布,包括在中间深度平面附近密集聚集,并模拟物理遮挡和非均匀照明。这样网络既练习“一个三维位置在不同倾角应出现在哪里”,也练习在部分证据被破坏时仍利用其他视图定位。
这些数据无需预存海量文件,每个 epoch 与模拟 cryo-ET 数据交替使用。它并不是用简单圆替代全部蛋白训练,也不是检测真实样本前必需的一道几何重建步骤,而是一种具有准确空间标签的辅助训练来源。其作用在于为跨视角对应提供更廉价、可控的监督,同时由真实蛋白形状的物理模拟数据维持视觉识别能力。正文只给出这一高层机制,没有充分披露基元生成的全部分布与增强参数,因此不应把实现细节补写成作者已公布的配置。
一个完整示例¶
以检测同一组投影中的一种粒子为例,用户可在零倾角图上给一个带类别标签的方框。骨干编码所有输入图像,行注意力在同一行收集多个倾角的证据;提示编码器再把该方框附近的融合特征压成一个类别原型。尽管只提供了一个二维提示,这一步仍建立在整组图像上,而不是单图检测。
初始化器依据原型在近零倾角图中挑选最多 900 个候选,将它们先放在三维中间深度。对一个候选而言,若当前深度错误,其锚点投影到非零倾角时就会偏离粒子响应;解码器据多视角采样结果修正位置与直径,并用原型相似度给出类别及置信度。这个示例描述机制,不代表原文展示了某个具体粒子的数值迭代轨迹,也不意味着 900 个候选都会成为最终有效检测。
损失函数 / 训练策略¶
模型输出与三维真值先进行二分图匹配,匹配后用 L1 损失监督位置与尺寸,用 focal loss 监督分类。各解码层添加辅助损失,并采用对比去噪策略加速收敛;正文没有给出完整损失权重,不在此猜补。检测类别来自视觉原型,而训练仍需要带空间标签的模拟粒子,并非无监督学习。
预训练使用与既有开放集方法一致的 119 种蛋白,生成 1,138 个模拟断层体及对应的有噪声、无噪声已对齐倾斜序列。几何基元训练与这些数据逐 epoch 交替;真实数据评估不为测试目标重新训练,因此论文所说“零样本”是无需目标特定再训练,不是模型从未接受训练,也不是用户无需给视觉提示。
编码器、提示编码器和解码器各为 6 层,隐藏维度 256,查询数 900。训练使用 AdamW,学习率 \(1\times10^{-4}\),共 200 个 epoch,在 4 张 NVIDIA RTX 6000 Ada 上分布式训练,每卡 batch size 为 1,软件为 PyTorch 2.5.1。推理时去掉几何数据生成路径,保留已训练的检测网络。
实验关键数据¶
主实验¶
以下摘录原文表 1–3 的同实例、每类 1 个提示结果;均值与波动项按原文保留。[email protected] 与 mAP@1r 分别以目标半径的 0.5 倍和 1 倍作为中心距离匹配阈值,F1 使用 1 倍半径阈值,均不是三维框 IoU。实验在单张 NVIDIA RTX 6000 Ada 和 48 核 CPU 上测量,提示选择重复 10 次;正文未将波动项明确定义为标准差或标准误。
| 数据集 | 方法 | [email protected] | mAP@1r | F1 | 推理时间(秒) | 峰值显存(MB) |
|---|---|---|---|---|---|---|
| CZII | TomoTwin | 0.089 ± 0.021 | 0.132 ± 0.024 | 0.078 ± 0.012 | 2960 | 20800 |
| CZII | FullTilt | 0.118 ± 0.013 | 0.148 ± 0.013 | 0.193 ± 0.008 | 0.499 | 3430 |
| EMPIAR-10304 | TomoTwin | 0.189 ± 0.057 | 0.339 ± 0.063 | 0.532 ± 0.061 | 1730 | 20800 |
| EMPIAR-10304 | FullTilt | 0.199 ± 0.004 | 0.437 ± 0.002 | 0.593 ± 0.002 | 0.229 | 2410 |
| EMPIAR-10499 | TomoTwin | 0.035 ± 0.008 | 0.113 ± 0.020 | 0.249 ± 0.027 | 2330 | 20800 |
| EMPIAR-10499 | FullTilt | 0.159 ± 0.004 | 0.288 ± 0.004 | 0.418 ± 0.005 | 0.389 | 3410 |
这些结果体现的是检测阶段的加速,不能直接称为从显微镜采集开始的端到端处理耗时。FullTilt 相对体数据开放集方法显著节省时间与显存,但并不比所有多视角基线都快或省显存:例如 EMPIAR-10304 的 DETR3D 使用 2290 MB、耗时 0.136 秒,FullTilt 为 2410 MB、0.229 秒,代价换来更好的检测质量。
消融实验¶
下表摘录原文表 6 的 CZII 结果,区分删掉输入图像和只减少提示出现的视图;保持每类 1 个提示的基线。
| 配置 | [email protected] | mAP@1r | 推理时间(秒) | 峰值显存(MB) |
|---|---|---|---|---|
| 完整输入与提示投影 | 0.118 ± 0.013 | 0.148 ± 0.013 | 0.499 | 3430 |
| 保留 50% 输入倾斜图像 | 0.100 ± 0.013 | 0.133 ± 0.011 | 0.246 | 1860 |
| 保留 25% 输入倾斜图像 | 0.085 ± 0.010 | 0.120 ± 0.011 | 0.153 | 1280 |
| 保留 12.5% 输入倾斜图像 | 0.038 ± 0.007 | 0.073 ± 0.014 | 0.087 | 700 |
| 完整输入、提示仅在一幅图像出现 | 0.106 ± 0.014 | 0.134 ± 0.016 | 0.513 | 3430 |
关键发现¶
- 提示可以稀疏,测量不能随意稀疏:单图提示的 [email protected] 从 0.118 变为 0.106,但只保留 12.5% 输入图像会降至 0.038,说明关键资源是整组投影证据。
- 原文表 7 中,不使用倾斜序列编码、初始化和几何辅助三项设计时,CZII [email protected] 仅 0.001 ± 0.001;完整模型为 0.118 ± 0.013。正文指出单模块配置中初始化最先产生有效检测,融合与几何监督随后协同改善表现,不能把收益归结为换了一个骨干。
- 多类别具有共享计算优势:CZII 每类 1 个提示时,从请求 1 类增至 6 类,耗时由 0.499 秒变为 0.508 秒,显存由 3430 MB 变为 3440 MB;[email protected] 则从 0.118 ± 0.013 变为 0.113 ± 0.008。
- 并非所有设置均领先:EMPIAR-10304 同实例 4 提示时,TomoTwin 的 [email protected] 为 0.241 ± 0.022,高于 FullTilt 的 0.201 ± 0.004;FullTilt 的 mAP@1r 与 F1 仍更高。跨实例表 4 在该数据集的 2、4 提示严格距离指标也有同类例外。
亮点与洞察¶
- 将效率优化放到输入表示选择上,比只压缩三维检测网络更根本。检测需要三维坐标,不代表中间必须建立稠密三维特征体。
- 行注意力把明确的旋转与对齐约束变成计算稀疏性。它保留粒子横向轨迹,避免在低信噪比投影中浪费计算匹配不可能对应的位置。
- 视觉提示先读取跨视角融合特征,再生成类别原型。交互只需少量示例,却可利用整个序列,而多个类别共享主要编码开销。
局限与展望¶
- 作者承认特别小的大分子仍难检测;用单一直径表示目标,也不适合高度非球状粒子。应区分中心定位结果与形状、朝向或高分辨率结构恢复。
- 几何约束依赖已对齐输入、已知倾角和定义好的坐标尺度;前处理、标准三维提示所需的重建,以及下游子断层体平均并未全部消失。实时结论主要针对文中测量的检测推理。
- 900 个查询形成候选预算,真实数据的 mAP 绝对值也表明问题仍有难度。更拥挤样本、对齐误差、不同成像条件下的稳定性值得继续验证,不能由三个数据集推导出通用可靠性。
- 缓存正文未附进一步附录,几何基元的完整参数、时间统计是否包含全部提示交互等细节不足。原文仅称代码与数据将于发表时公开,没有可核实仓库链接。
相关工作与启发¶
- vs TomoTwin / ProPicker:同为依赖视觉参照的开放集定位,旧方法主要扫描重建体数据,FullTilt 直接编码投影。主要收益来自减少体数据遍历,而不是声称消除了训练。
- vs CryoSAM / Zeng et al.:CryoSAM 在断层体切片上分割;Zeng 方法先逐幅检测再反投影。FullTilt 在定位前融合整个倾斜序列,让三维假设跨视角读取证据,降低单图不可辨认带来的错误传播。
- vs DETR3D / PETR:继承多视角三维查询与位置编码的思想,但增加适合 cryo-ET 的跨倾角融合、视觉类别原型和初始化。结果说明自然图像多视角框架并不能直接解决极低信噪比投影检测。
评分¶
- 新颖性: 5/5;将开放集 cryo-ET 检测前移到已对齐投影,并把行几何用于融合。
- 实验充分度: 4/5;三个真实数据集、提示数量、跨实例、多类别和组件消融较完整,仍缺更多误差与前处理边界分析。
- 写作质量: 4/5;模块职责清楚,但几何数据细节及部分效率表述需要更严格限定。
- 价值: 5/5;显著降低大规模粒子定位成本,并保留无需目标特定再训练的交互能力。