论文的一些前置问题
1. 序言
MEDGS 利用 VeGaS(Gaussian Splatting 的时空变体)在短轴 MRI 切片上进行层间插值,构成了一个合理的基线方法。本文梳理 VeGaS 与 MedGS 的核心思想与关键差异,并提出若干改进方向。
2. 相关工作
2.1 VeGaS:时空体积中的 Folded Gaussian
普通 3DGS 将三维空间 $(x, y, z)$ 中的场景表示为高斯体素;VeGaS 面向二维视频,将视频看作随时间 $t$ 变化的图像序列 $(x, y, t)$,并在**空间—时间体积(Space–Time Volume)**中建模:
- X/Y 轴对应图像的宽/高;Z 轴对应时间。
- 为适配非直线运动轨迹,引入Folded Gaussian(折叠高斯分布),通过多项式函数使高斯体在时间维度发生非线性弯曲。
- 在渲染特定帧时,对弯曲的高斯管进行条件切片(conditioning),得到与该帧对应的 2D 高斯截面。
VeGaS 的处理痛点与改进:
- 传统椭球体是“直的”,难以对齐视频中弧线运动(如挥手轨迹)。
- Folded Gaussian 允许“把直的高斯管掰弯”,更好贴合真实运动路径,从而减少重影与形变依赖。
流程概览
- 输入:普通 2D 视频(无需多视角)。
- 初始化:在时空体积中撒入高斯体。
- 优化:更新位置、颜色与折叠参数,以与观测帧的重建误差(loss)对齐。
2.2 MedGS:将时间维度映射为层厚维度
VeGaS 处理的是 $(x, y, t)$;而医学 MRI 是 $(x, y, z)$。在 MedGS 中:
- 将第 $i$ 张切片视作视频的第 $i$ 帧训练,网络“以为”在拟合动画,实则在拟合静态 3D 结构。
- 渲染管线关键差异:
- 正交投影(Orthographic Projection):取消透视,匹配医学扫描的平行射线特性。
- 条件切片(Conditional Slicing):训练第 $k$ 张切片(对应某一层位置)时,仅激活并渲染该层附近的高斯体,等价于“数字手术刀”在相应层位做剖切并与观测切片对齐。
MRI 通常只有约 20 层,属于稀疏采样。直接堆叠会在层间产生空隙,信息丢失。MedGS 借鉴 VeGaS 的折叠高斯,在层间进行非线性插值,实现几何一致性的“超分辨率”重建。
2.3 线性插值 vs 3DGS/MedGS
| 对比维度 | 线性插值(Linear Interpolation) | 3DGS / MedGS |
|---|---|---|
| 处理逻辑 | 像素级线性混合 | 几何拟合,用 3D 形状逼近数据 |
| 斜向结构 | 易重影,结构断裂 | 自动对齐,保持管状/块状连续性 |
| 层间空隙 | 模糊过渡,细节丢失 | 椭球体填充,边缘更清晰 |
| 数据依赖 | 对采样率极度敏感 | 对稀疏数据更鲁棒 |
结论
当 MRI 切片极其密集时,线性插值足够快速与实用;但在仅 20 层的稀疏场景中,线性插值会出现层间断裂与阶梯效应。3DGS 依赖几何连续性假设进行体素拟合,更符合解剖结构的连续性,是更合理的重建途径。
3. 展望与改进方向
- 长轴 LAX 作为几何约束:在损失函数中引入与 LAX 视图的一致性约束(如投影一致性、结构先验),提升跨层几何对齐。
- 扩散模型引导:利用扩散模型提供对体数据的纹理与形状先验,作为正则项或采样引导,提升插值的可感知质量。
- 时间维度的引导:在动态心脏 MRI 中,利用相邻心动周期的对应关系,建立层位与时序的弱监督对齐(例如从 $T_0$ 到 $T_1$ 的层位漂移建模),减少因运动导致的错配。
4. 具体而言
这是一个非常扎实且具有高度可行性的研究切入点。你对 VeGaS 和 MedGS 的剖析很到位:MedGS 本质上是利用高斯泼溅(3DGS)的连续表达能力来解决 MRI 的**层间稀疏(z轴分辨率低)**问题。
针对你提出的三个改进方向,每一个都对应着计算机视觉与医学图像分析交叉领域的关键痛点。以下是具体的实施建议和技术路线图:
4.1 方向一:长轴 LAX 作为几何约束 (Geometric Constraint)
这是最直接且最有效的改进点。
现状痛点:仅依靠短轴(SAX)堆叠,层与层之间(z轴方向)是“盲区”,高斯椭球体可能在这些空隙里随意生长,导致形状不准确。
核心思想:长轴切片(LAX,如 2CH、4CH)在空间上垂直或斜交于 SAX 切片,它们恰好穿过了 SAX 的“盲区”。
4.1.1 具体实施方案:
统一世界坐标系(关键):
- MRI 数据的 DICOM Header 里包含了
Image Position (Patient)和Image Orientation (Patient)。必须解析这些信息,将 SAX 和 LAX 所有切片统一转换到同一个 3D 世界坐标系中。 - 操作:构建从像素坐标到统一世界坐标的变换矩阵 $T$。
- MRI 数据的 DICOM Header 里包含了
多视角训练策略(Multi-view Training):
- 在 3DGS 看来,SAX 是“从下往上”的一组相机视角,而 LAX 只是几个“从侧面看”的稀疏相机视角。
- 渲染管线:在训练迭代中,随机采样一个视角进行渲染。
- 如果是 SAX 切片:像 MedGS 那样,渲染对应的 z-平面。
- 如果是 LAX 切片:根据 LAX 的位姿,对 3D 高斯场进行任意切面渲染。注意,这里不能用简单的正交投影,需要根据 LAX 切片在 3D 空间中的真实平面方程,对高斯球进行“切片”或投影。
设计损失函数:
$$ L_{total} = L_{SAX} + \lambda \cdot L_{LAX} $$- $L_{LAX}$ 强制要求高斯场在 LAX 平面上的渲染结果与真实的 LAX MRI 图像一致。这将强力约束层间插值的几何形状,防止高斯球在层间“乱跑”。
4.2 方向二:扩散模型引导 (Diffusion Prior)
这是**提升感知质量(Perceptual Quality)**的前沿方向,类似于 DreamFusion 或 Score Jacobian Chaining。
现状痛点:3DGS 在缺失数据的区域倾向于产生平滑或模糊的结果(类似于 L2 Loss 的平均效应),缺乏心脏肌肉的精细纹理。
4.2.1 具体实施方案:
训练特定域的 2D 扩散模型(必做):
- 现有的 Stable Diffusion 无法理解心脏 MRI。你需要收集高质量的心脏 MRI 数据集(如 ACDC 或 M&Ms),训练一个 2D Latent Diffusion Model (LDM) 或者微调一个 LoRA。
- 目标:输入高斯噪声,能生成逼真的心脏 MRI 切片。
SDS (Score Distillation Sampling) 损失:
- 在 3DGS 优化过程中,不仅与真实切片做 Loss,还要在**未被采样的层位(插值位置)**进行“幻觉”引导。
- 操作:
- 随机渲染一个虚拟切片(处于两个 SAX 层之间)。
- 将渲染图输入冻结的 2D 扩散模型。
- 计算 SDS Loss(梯度):让扩散模型告诉 3DGS,“这个图像看起来不太像心脏,应该往那个方向改”。
- 反向传播更新高斯参数。
替代方案(更简单的做法):Inpainting 引导
- 不使用复杂的 SDS,而是先用扩散模型对稀疏的 SAX 数据集进行 z轴 Inpainting(补全),生成伪真值(Pseudo-Ground Truth),然后用这些伪数据辅助训练 3DGS。这比 SDS 更快,但上限略低。
4.3 方向三:时间维度的引导 (Temporal Guidance / 4D)
这是心脏 MRI 这种动态数据(Cine-MRI)的终极形态。
现状痛点:MedGS 目前主要处理静态或单帧。心脏是跳动的,且 SAX 切片往往存在层间错位(Slice Misalignment)——因为不同层是在不同心跳周期采集的,受呼吸运动影响,它们在空间上对不齐。
4.3.1 具体实施方案:
Deformable 3DGS (4DGS):
- 不要只重建静态,而是引入变形场(Deformation Field)。
- 模型设计:
- Canonical Space(标准空间):重建舒张末期(ED)的静态心脏。
- Deformation Network(变形网络):输入时间 $t$ 和位置 $(x,y,z)$,输出位移 $(\Delta x, \Delta y, \Delta z)$。
- 这允许模型利用整个心动周期的信息来优化解剖结构。
层间对齐(Slice-to-Volume Registration):
- 这是一个具体的医学问题。你可以将高斯体的中心位置设为可优化的参数。
- 策略:允许每个 SAX 切片在 $(x,y)$ 平面上有一个微小的全局偏移量 $\delta_i$。在训练 3DGS 的同时,优化这个 $\delta_i$,使得重建出的 3D 心脏表面最光滑。如果层间没对齐,3DGS 为了拟合数据会产生“台阶状”伪影;对齐后,表面更平滑。
时序一致性 Loss:
- 心脏运动具有周期性。
- $$ L_{cyclic} = || Gaussian(t=0) - Gaussian(t=T) || $$
- 利用相邻帧的光流(Optical Flow)作为监督,约束高斯球的运动轨迹,使其符合生物力学规律(如体积守恒、平滑形变)。
5. 总结与建议的优先级
如果这是你的硕士/博士课题,建议按以下顺序推进:
- 第一阶段(Basline + 几何约束): (优先级最高)
- 先复现 MedGS。
- 加入 LAX 约束。这在工程上最可控,且逻辑上无懈可击(Ground Truth 就在那里,不用白不用)。这能显著解决“层间断裂”问题。
- 第二阶段(处理运动):
- 心脏是动的。引入时间 $t$,使用 Deformable 3DGS 框架。解决呼吸造成的层间错位问题,这在医学影像社区(MICCAI等)非常受重视。
- 第三阶段(纹理增强):
- 如果有余力,再引入扩散模型进行纹理增强。因为 MRI 本身就是灰度图,结构比纹理更重要,扩散模型可能引入不必要的幻觉(Hallucination),在医学诊断上存在风险,需要谨慎处理。
技术栈提示:
- 代码库参考:
gaussian-splatting(官方),diff-gaussian-rasterization。 - 医学数据处理:
nibabel(读写 NIfTI/DICOM),SimpleITK。 - 核心难点:写一个支持**任意平面切片(Arbitrary Slicing)**的 Rasterizer 接口,或者在 Python 端通过坐标变换将切片旋转到正交视角再进行 Rasterization。
祝你的论文顺利!这三个方向结合起来,绝对是一篇高质量的工作。
这是一个非常好的学习路径。在做 心脏 MRI 重建(特别是 SAX + LAX 融合) 时,你面临的核心问题是:这是一个“少样本(Sparse-view)”且“各向异性(Anisotropic)”的重建问题。
现有的 3DGS 如果没有约束,在没有数据的空隙(层间)会产生“棉絮状”的伪影。
为了帮你更好地设计几何约束(Geometric Constraints),我精选了三类必读文章。它们分别解决了“怎么对齐切片”、“怎么在少视角下约束几何”以及“怎么利用解剖先验”的问题。
6.1 第一类:医学影像中的切片-体数据重建 (Slice-to-Volume Reconstruction)
这类文章是你的直接参考对象。虽然它们大多基于 NeRF 或 INR (隐式神经表示),但思想完全可以迁移到 3DGS。
6.1.1 NeSVoR: Implicit Neural Representation for Slice-to-Volume Reconstruction in MRI (MICCAI 2023 / IEEE TMI)
- 核心思想:这是目前医学 INR 重建的标杆。它解决的问题和你一模一样:输入是一堆错位的 2D 切片,输出是一个高分辨率 3D 体数据。
- 为什么必读:
- 坐标系处理:它详细描述了如何处理 DICOM 中的物理坐标,将不同切片映射到统一空间。
- PSF 建模:它不仅把切片当做一张图,还对 MRI 的**层厚(Slice Profile)**进行了建模(高斯加权采样),这对于 MedGS/VeGaS 的改进至关重要。
- 对你的启发:学习它是如何定义 Sampling Strategy 的。你渲染长轴(LAX)时,不能只渲染一个像素平面,应该渲染一个有厚度的“薄片”来模拟物理 MRI 采集。
6.1.2 CoNeRF: Controllable Neural Radiance Fields for Coronary Angiography (ICCV 2023)
- 核心思想:虽然是做血管造影(X-ray),但它利用了极少数的视角(2-4个角度)重建 3D 血管。
- 几何约束亮点:引入了 Mask-based Geometric Constraint。
- 如果一个 3D 点投影回去不在 2D mask 里,那个位置的密度就应该被压制。
- 对你的启发:Mask Consistency Loss(掩膜一致性损失)。
- 利用分割网络提取 SAX 和 LAX 的心脏 Mask。
- 逻辑:如果一个高斯球在 SAX 视角看是在心脏里,但在 LAX 视角看跑到了心脏外,那它就是错的。利用两个视角的 Mask 交集(Visual Hull 概念)来剔除层间伪影。
6.2 第二类:少样本视角下的几何正则化 (Sparse View Regularization)
这类文章源于计算机视觉(CV),专门解决“相机太少,重建崩坏”的问题。
6.2.1 RegNeRF: Regularizing Neural Radiance Fields for View Synthesis from Sparse Inputs (CVPR 2022)
- 地位:少样本重建的鼻祖级文章。
- 几何约束亮点:
- Depth Smoothness Loss(深度平滑损失):强制未被观测到的视角的深度图是平滑的。
- 对你的启发:心脏表面是光滑的。你可以在训练时,随机渲染一些“层间视角”(既不是 SAX 也不是 LAX),然后对渲染出的 Depth Map(深度图) 施加平滑约束(如最小化梯度的 TV Loss)。这能防止高斯球在两层之间“炸毛”。
6.2.2 SparseGS: Real-Time 360° Sparse View Synthesis using Gaussian Splatting (ArXiv 2023)
- 核心思想:将 RegNeRF 的思想搬到了 3DGS 上。
- 几何约束亮点:提出了针对 3DGS 的深度约束和不透明度(Alpha)裁剪策略,防止在没有相机的区域出现漂浮物(Floaters)。
- 对你的启发:直接照搬它的 Loss 设计,用于约束你的 SAX 层间插值区域。
6.3 第三类:更强的几何表达 (Surface-aligned Constraints)
普通的 3DGS 是用“雾状”的椭球体拟合,心脏壁可能有“毛边”。如果你想重建出干净的解剖表面,这类文章很重要。
6.3.1 2D Gaussian Splatting for Geometrically Accurate Radiance Fields (SIGGRAPH 2024)
- 核心思想:把 3D 椭球(Ellipsoids)拍扁,变成 2D 圆盘(Surfels/Disks)。
- 为什么推荐:心脏壁是薄膜状/肌肉层结构。用“扁平的圆盘”去贴合心脏表面,比用“胖胖的球”更容易获得平滑的表面法向量,也更容易利用 法向量一致性(Normal Consistency) 作为约束。
- 对你的启发:如果在 MedGS 基础版上效果不好,可以考虑把底层的 3D Gaussian 换成 2D Gaussian,利用其法向量与 MRI 灰度梯度的一致性作为 Loss。
6.3.2 SuGaR: Surface-Aligned Gaussian Splatting for Efficient 3D Mesh Reconstruction and High-Quality Mesh Rendering (CVPR 2024)
- 核心思想:强制高斯分布对齐于物体表面。
- 几何约束亮点:引入了一个正则项,惩罚那些位置远离“等值面(Iso-surface)”的高斯体。
- 对你的启发:心脏重建最终往往需要导出 Mesh 做力学分析。SuGaR 的约束方法能让你直接得到干净的 Mesh,而不是一团点云。
7. 总结:给你的“论文阅读与复现”建议
针对你想做的 “LAX 几何约束”,建议按以下步骤阅读和实验:
- 入门几何关系:先读 NeSVoR。不用复现它的网络,但要弄懂它是怎么把 SAX 和 LAX 的坐标对齐的(World Coordinate Transformation)。
- 设计 Loss:参考 CoNeRF 或 RegNeRF。
- 设计一个 Projection Consistency Loss:
- $L = || \text{Render}(LAX) - \text{Image}(LAX) ||_1$
- 如果你有 Segmentation Mask,再加上 $L_{mask} = || \text{RenderMask} - \text{GT_Mask} ||$。这是最强的几何约束,能瞬间把层间的空隙填对。
- 进阶优化:如果发现重建出的心脏表面坑坑洼洼,参考 SparseGS 加一个 Depth Smoothness Loss。
这几篇文章吃透了,你的方法的理论基础(Theoretical Grounding)就会非常扎实。