【文献阅读】Endo3R: Unified Online Reconstruction from Dynamic Monocular Endoscopic Video

 Endo3R:从动态单目内镜视频进行统一在线重建

发表于2025年3月

港中文,上交等

摘要

从单目手术视频重建3D场景可以增强外科医生的感知,因此在各种计算机辅助手术任务中起着至关重要的作用。然而,由于内镜视频存在诸如动态变形和无纹理表面等固有问题,实现尺度一致的重建仍然是一个未解决的挑战。

尽管最近取得了一些进展,但目前的方法要么依赖校准或器械先验来估计尺度,要么采用类似结构从运动(Structure-from-Motion,SfM)的多阶段流程,这会导致误差积累并且需要离线优化。在本文中,我们提出了Endo3R,这是一个统一的3D基础模型,用于从单目手术视频进行在线尺度一致的重建,无需任何先验信息或额外优化。

我们的模型通过预测全局对齐的点图、尺度一致的视频深度和相机参数,在无需任何离线优化的情况下统一了这些任务。我们方法的核心贡献是通过一种不确定性感知双记忆机制,将近期的成对重建模型的能力扩展到长期增量动态重建。

该机制同时维护短期动态和长期空间一致性的历史令牌。值得注意的是,为了应对手术场景的高度动态特性,我们通过辛普森距离(Sampson distance)来测量令牌的不确定性,并过滤掉不确定性高的令牌。

鉴于具有真实深度和相机姿态的内镜数据集稀缺,我们进一步设计了一种自监督机制,以及一种新颖的动力学感知流损失。在SCARED和Hamlyn数据集上进行的大量实验表明,我们的方法在零样本手术视频深度预测和相机姿态估计方面具有卓越的性能,并且具备在线处理的效率。项目页面:https://wrld.github.io/Endo3R/。 

1 引言

从内镜视频重建手术场景对于微创手术至关重要,它有利于包括手术规划、术中导航和机器人手术自动化等各种下游任务[17, 37]。这个主题已经研究了数十年,相关领域包括深度估计[22, 33]、多视图立体视觉(Multi-View Stereo,MVS)[12, 35]、新视图合成(Novel View Synthesis,NVS)[4, 13, 14]、结构从运动(Structure-from-Motion,SfM)[16]和同时定位与地图构建(Simultaneous Localization and Mapping,SLAM)[7, 26]。

然而,从动态单目手术视频估计尺度一致的3D结构仍然是一个具有挑战性的不适定问题。这一挑战源于特征稀疏、缺乏多视图约束以及手术环境的复杂性,其中涉及光照变化、无纹理表面、运动模糊以及手术干预导致的动态变形等因素。传统方法[16, 23]是在刚性场景的假设下开发的,在这样的动态环境中难以提取可靠的特征并在帧间匹配对应关系

尽管近期的单目深度基础模型[22, 33]取得了显著进展,但在应用于手术场景时性能会下降,无法预测准确的相对几何形状。一些方法试图将通用领域的模型迁移到手术视频,但它们要么需要先验信息(例如相机参数或器械模型)[24, 31, 32],要么采用类似SfM的多阶段流程,通过估计对应关系、相机姿态和内参来学习运动和几何形状,以实现更高的相对尺度一致性[9, 24]。此外,这种类似SfM的多阶段流程会在每个阶段积累误差,或者需要离线优化,导致精度和一致性不理想。

在本文中,我们应对这些挑战并提出Endo3R,这是一个统一的3D手术基础模型,用于从单目内镜视频进行在线尺度一致的重建,无需任何先验信息或额外优化,能够预测全局对齐的点图尺度一致的视频深度、相机姿态和内参,如图1所示。

我们方法的关键贡献是设计了一种不确定性感知双记忆机制,通过捕获短期动态和长期空间记忆,将DUSt3R[29]的成对重建能力扩展到长期增量动态重建。我们使用一个记忆编码器将历史令牌保存为记忆键和值,并通过交叉注意力检索相关信息

我们通过计算辛普森距离来测量令牌的不确定性,并过滤掉不确定性高的令牌。针对训练数据集不足的问题,我们引入了自监督训练方案,用于处理没有真实姿态和深度的数据。具体来说,我们设计了一种动力学感知流损失,以强制跨帧时间一致性。

我们的贡献总结如下:

1)我们提出了Endo3R,这是一个3D手术基础模型,能够从单目视频进行实时重建,统一了全局对齐点图尺度一致视频深度、相机姿态和内参的预测。

2)我们提出了一种不确定性感知双记忆机制,实现长期在线动态重建。

3)引入了一种自监督方案,以便能够扩展到更多没有真实标注的手术数据集

4)实验结果表明,我们的方法在视频深度估计和姿态估计方面具有卓越的性能,并且具备在线处理的效率。

图1:给定单目手术视频作为输入,我们的Endo3R允许前馈输出全局点图、尺度一致的深度和相机参数。

2 方法

在本文中,我们旨在构建一个统一的框架,通过将DUSt3R的静态成对重建方法应用于长期内镜视频,来解决从内镜视频进行在线3D重建的问题。为了提高长期学习的鲁棒性,我们的主要思路是通过一种不确定性感知双记忆机制实现增量在线重建,预测全局对齐的点图、时间上一致的视频深度、相机姿态和内参。由于手术数据集稀缺,我们进一步采用了混合训练机制,并设计了一种流引导的自监督学习方法,以帮助我们的网络扩展到更多不同场景的手术数据集。

如图2所示,给定一系列图像\(\{I_{i}\}_{i = 1}^{N} \in \mathbb{R}^{W×H×3}\)作为输入,我们的目标是训练一个网络\(F\),输出相应的点图\(\{X_{i, 1}\}_{i = 1}^{N} \in \mathbb{R}^{W×H×3}\)和在\(t = 1\)坐标系下的置信图\(\{C_{i, 1}\}_{i = 1}^{N} \in \mathbb{R}^{W×H}\)(2.1节)。为了处理高度动态的长期手术视频,我们引入了一种不确定性感知的时空记忆来保存历史令牌,同时捕获短期动态和长期空间一致性(2.2节)。针对缺乏具有真实标注的手术数据集的问题,我们通过将光流分解为场景流和相机投影流,设计了一种自监督流损失,以强制连续帧之间的尺度连续性和姿态平滑性(2.3节)。

图2:Endo3R概述。给定单目手术视频作为输入,我们提出一个3D手术基础模型,以实现从视频进行在线重建。

 2.1 网络架构

编码

给定一系列图像作为输入,我们的网络首先使用视觉Transformer(ViT)编码器[10]将每一帧\(I_{i}\)编码为令牌\(F_{i}\):\(F_{i} =\) Encoder\((I_{i})\)。

记忆检索

与[29]中进行成对预测不同,我们通过引入一种受Spann3R[28]启发的基于注意力的记忆机制来实现增量重建。记忆库存储历史关键特征和值特征。对于每一个新的帧,我们利用前一帧的查询特征\(F_{t-1}^{Q}\)从记忆库中检索相关上下文,以输出融合令牌\(F_{t-1}^{G}\):
\(F_{i-1}^{G} = Softmax\left(\frac{F_{i-1}^{Q}(F^{K})^{T}}{\sqrt{C}}\right)F^{V} + F_{i-1}^{Q}\)
其中\(F^{K}\)和\(F^{V}\)是保存在记忆库中的关键特征和值特征。

解码

编码之后,两个Transformer解码器依次对编码特征\(F_{t}\)和融合特征\(F_{t-1}^{G}\)进行自注意力和交叉注意力操作,以预测3D几何形状:\(F_{i}', F_{i-1}^{G} = Decoder(F_{i}, F_{i-1}^{G})\),其中\(F_{i}'\)和\(F_{i-1}^{G}\)表示跨视图交互后的特征。

回归头

解码之后,从解码后的特征中预测3D表示。遵循[29],我们使用DPT[22]头来预测3D点图和相关的置信图。我们基于透视n点(PnP)算法计算相机姿态\(\hat{T}_{i, 1}\)。

然后,通过使用\(\hat{T}_{i, 1}\)将全局点图转换到局部坐标系中,可以估计深度\(\hat{D}_{i}\):
\(\hat{X}_{i, 1}, \hat{C}_{i, 1} = Head_{output}(F_{i}')\)
\(\hat{D}_{i} = (\hat{T}_{i, 1}\hat{X}_{i, 1})_{z}\)

 2.2 不确定性感知双记忆

双记忆

为了将[29]扩展到序列重建,我们引入了一种不确定性感知双记忆机制,该机制由一个长期空间缓冲区和一个短期时间缓冲区组成。

具体来说,全局关键帧令牌和稳定的3D信息存储在长期空间缓冲区中,以保持随时间的空间一致性。短期时间缓冲区存储来自最近帧的令牌,以确保连续帧之间的时间一致性。

记忆编码

在每一步结束时,解码后的特征\(F_{i}'\)和编码后的特征\(F_{i}\)用于生成下一步的查询特征

当前帧的信息作为关键特征和值特征保存在记忆库的短期时间缓冲区中

当更多帧输入时,较旧的记忆键和值将被移动到长期空间缓冲区中。

不确定性检查

与静态重建不同,动态手术场景带来了额外的挑战,例如非刚性组织变形、手术器械频繁出现和消失,以及由于相机突然移动或与解剖结构的相互作用而导致的遮挡

因此,我们旨在过滤记忆库,消除瞬态物体和遮挡的3D信息,以增强对新输入帧的全局3D一致性和鲁棒性。为了过滤掉动态令牌和干扰,我们使用辛普森距离来评估存储在长期空间记忆中的令牌的可靠性。

我们遵循[13],利用光流\(O_{i→i + 1}\)和估计的姿态\(\hat{T}_{i}\)和\(\hat{T}_{i + 1}\)来评估对极几何。因此,对于每一个编码后的记忆作为输入,辛普森距离较高(即大于阈值\(\beta\))的令牌表示不可靠的匹配,将从记忆库\(F^{K}\)和\(F^{Q}\)中删除。

对于长序列推理,我们利用置信图\(C\)在记忆库中选择前\(K\)个令牌,并修剪掉其他令牌。

图3:用于自监督训练的动力学感知流损失示意图,以实现增强的时间一致性。

 2.3 自监督损失

尽管与DUSt3R相关的方法取得了成功,但它们需要在具有真实深度和姿态的大规模数据集上进行监督训练。然而,在手术场景中,包含真实深度和姿态的数据集有限,这阻碍了仅使用单目视频对不同场景或手术进行训练。为了解决这个问题,我们提出了一种自监督训练方案,使得可以在没有完整标签的数据集上进行训练。

动力学感知流损失

以前的单目深度估计方法[6, 8, 33]通过最小化光流扭曲后的深度\(\hat{D}_{i}\)和\(\hat{D}_{i + 1}\)之间的差异来强制时间一致性,假设对应点的深度保持不变。

然而,这个假设在现实世界的手术场景中并不成立,因为手术场景中存在动态器械和可变形组织。为了解决这个限制,如图3所示,我们提出了一种动力学感知流损失,通过将光流解耦为姿态诱导运动和点图衍生的场景流,消除了深度不变的假设。

具体来说,给定输入图像序列,我们首先使用现成的模型[25]计算前向光流\(O_{i→j}\)。光流捕获了帧之间像素的2D运动,包括相机运动和场景流。为了计算帧\(i\)和\(j\)之间的场景流,我们利用光流在点图\(\hat{X}_{i, 1}\)和\(\hat{x}_{j, 1}\)之间找到对应关系,场景流计算为:

\(\hat{S}_{i→j}(u) = \hat{X}_{j, 1}(u + O_{i→j}(u))-\hat{X}_{i, 1}(u)\)
其中\(u\)是齐次2D坐标。我们将计算限制在有效区域,并定义\(u' = \{u | 0 < u + O_{i→j}(u) < (H, W)\}\)。

然后,通过将场景流与姿态诱导流相结合,可以计算估计的光流\(\hat{f}_{i→j}\):
\(\hat{f}_{i→j}(u') = \hat{K}\hat{T}_{j, 1}(\hat{X}_{i, 1}(u') + \hat{S}_{i→j}(u'))-u'\)

其中\(\hat{K}\)表示通过遵循[29]中的简单优化求解得到的估计内参。动力学感知流损失可以写为:
\(\mathcal{L}_{Dflow}^{i→j} = \|\hat{f}_{i→j}(u')-O_{i→j}(u')\|_{1}\)
基于\(\mathcal{L}_{Dflow}^{i→j}\),我们在训练中避免了对相机姿态和深度的需求。

单目深度损失

对于既没有真实深度也没有真实姿态的数据集,我们使用现成的视频深度模型[8]获得单目深度,并采用Midas[21]中的尺度不变深度损失来监督预测深度\(\hat{D}\)。我们首先通过最小二乘法计算偏移和尺度,将\(D\)与\(\hat{D}\)对齐,得到\(\tilde{D}\),然后最小化\(C_{2}\)损失和梯度损失,如下所示:

\(\mathcal{L}_{dep} = \mathcal{L}_{2} + \mathcal{L}_{smooth} = \frac{1}{M}\|\tilde{D}-D\|_{2}^{2} + \frac{1}{M}\sum_{k = 1}^{K}\sum_{i = 1}^{M}(|\nabla_{x}R_{i}^{k} + \nabla_{y}R_{i}^{k}|)\)
其中\(R_{i}\)表示\(\tilde{D}\)和\(\hat{D}\)在尺度级别\(K = 4\)下的差异,\(M\)表示图像的总像素数。

 2.4 训练和推理

我们训练Endo3R的总损失如下:
\(\mathcal{L}_{all} = \lambda_{1}\mathcal{L}_{Dflow} + \lambda_{2}\mathcal{L}_{dep} + \lambda_{3}\mathcal{L}_{conf}\)
其中\(\mathcal{L}_{conf}\)表示用于监督点图的置信感知回归损失,遵循[29],\(\lambda_{1}\)、\(\lambda_{2}\)、\(\lambda_{3}\)表示损失的权重。

3 实验

3.1 实现细节

训练数据集:我们使用混合数据集训练Endo3R,其中四个数据集包含真实/立体深度和姿态(SCARED[18]、StereoMIS[19]、C3VD[5]和Endomapper[3]),四个数据集没有真实数据(AutoLaparo[30]、Cholec80[27]、EndoVis17[2]和EndoVis18[1])。

具体来说,我们对SCARED[18]和StereoMIS[19]进行立体校正,使用StereoAnything[15]计算左视图的立体深度用于训练。为了评估深度估计,我们在320×256分辨率下评估我们的方法,并遵循SCARED[18]中的训练和测试划分。

为了评估泛化能力,我们在未见过的Hamlyn数据集中的所有22个视频上进行测试,以进行跨数据集零样本验证。

评估指标:我们将Endo3R与最先进的深度估计方法进行比较。我们遵循[9],使用单目深度估计中常用的五个指标:绝对相对误差(Abs Rel)、平方相对误差(Sq Rel)、均方根误差(RMSE)、均方根对数误差(RMSE log)、\(\delta < 1.25\)。我们还比较推理帧率(FPS)以比较效率。

为了评估姿态精度,我们进行5帧姿态评估,并采用绝对轨迹误差(ATE)和相对姿态误差(RPE),包括旋转误差\(RPE_{r}\)和平移误差\(RPE_{t}\)。请注意,\(RPE_{t}\)和ATE的单位是毫米,\(RPE_{r}\)的单位是度。

 3.2 实验结果

定量比较:我们在SCARED和Hamlyn数据集上评估了我们的方法以及最先进的深度估计方法。表1中的结果显示,与现有方法相比,我们的方法在深度估计精度上有了显著提高,即使没有在Hamlyn数据集上进行训练。

值得注意的是,在提供卓越精度的同时,我们的方法还保持了具有竞争力的帧率,以支持在线应用。我们还在表2中报告了在SCARED上的姿态估计结果。结果表明,我们的方法实现了最高的姿态估计精度。

定性比较:图4展示了我们深度估计的定性评估,表明Endo3R生成的深度图更精确,相对尺度也有所改善。此外,图5展示了我们结合姿态估计的在线3D重建结果。高质量的3D重建可归因于卓越的深度和姿态估计精度。更多可视化结果请查看补充视频。

融研究:我们以Monst3R[36]为基线,对Endo3R的不同组件进行了消融研究。如表3所示,随着组件的增加,性能不断提升,这表明了每个组件的有效性。

 4 结论

我们提出了Endo3R,这是一个用于从未校准手术视频进行在线3D重建的统一框架。通过在单阶段联合学习深度、姿态和场景几何,我们的方法消除了对多阶段流程或离线优化的需求。所提出的不确定性感知记忆机制和自监督学习范式有效地应对了动态手术场景和有限标注数据带来的挑战。实验结果证明了该框架的鲁棒性和效率,展示了其在实际手术应用中的潜力。这项工作为未来实时手术场景理解和计算机辅助干预的研究奠定了基础。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值