Sim Anything阅读笔记
1. 核心思想
核心逻辑: 传统的物理仿真(如有限元法 FEM)通常依赖网格(Mesh),而 3DGS 本质上是基于点(Point-based)的表示。这篇论文通过结合 物质点法 (Material Point Method, MPM) 这一物理仿真算法,成功实现了直接驱动 3DGS 进行物理运动。
- 共性连接: 3DGS 是离散的高斯球集合,MPM 是离散的物理粒子集合。两者都是“粒子化”的表示,因此天然契合,不需要将 3DGS 转换成三角形网格即可进行碰撞和变形仿真。
2. 基础概念
- 3D Gaussian Splatting (3DGS):
- 通俗解释: 一种新的 3D 绘图技术。以前我们用三角形拼出物体(像折纸),现在我们用无数个模糊的椭球体(高斯球)堆叠出物体。每个球有位置、颜色、大小、旋转角度。
- 优势: 渲染速度极快,画质逼真。
- 物质点法 (MPM, Material Point Method):
- 通俗解释: 一种物理仿真算法。它把物体看作一大堆沙子(粒子)。计算时,先把这些粒子映射到一个背景网格上算力(比如碰撞、挤压),算完后再把结果传回粒子,更新粒子的位置。
- 为什么适合 3DGS: 因为它不怕物体撕裂、大变形,且本身就是玩粒子的,跟 3DGS 的“点”属性完美对应。
- MLLM (多模态大语言模型):
- 通俗解释: 像 GPT-4V 这样既能看图又能聊天的 AI。
- 在本文作用: 以前做物理仿真要手动设置“这个物体多重”、“那个物体多硬”。现在 AI 看一眼图,就能猜出大概的物理参数(比如石头硬、海绵软)。
3. Sim Anything 的工作流程
这篇论文提出了一套全自动的流程,把一个静态的 3DGS 场景变成可互动的物理场景。
第一步:把物体“扣”出来 (3D Open-vocabulary Segmentation)
- 问题: 3DGS 渲染出来是一整张图,计算机不知道哪里是“熊”,哪里是“底座”。
- 方法: 利用现有的强大 AI 模型(SAM, Grounding DINO 等)在 2D 图片上把物体识别并扣出来,然后通过算法把这些 2D 遮罩投射回 3D 空间,给每个高斯球打上标签(比如这堆高斯球属于“椅子”)。
- 补全: 把物体扣出来后,背景会有空洞。论文用了修图 AI (LaMa) 把背景自动补全了。
第二步:AI 猜物理参数 (MLLM-based Physical Property Perception)
- 难点: 只有外观,怎么知道物体的 杨氏模量(Young's modulus,代表硬度)、泊松比(Poisson's ratio,代表受压后的横向膨胀率)和 密度?
- 创新解法: 模仿人类直觉。
- 看图说话: 让 AI (BLIP) 描述这个物体。
- 猜材质: 把图和描述给 GPT-4V,让它列出可能的 K 种材质(如:花岗岩、混凝土、树脂)。
- 选最佳: 用 CLIP 模型看哪个材质跟图片最像。
- 定参数: 确定是“花岗岩”后,再问 GPT-4V:“花岗岩的物理参数大概是多少?”
- 结果: 得到了一个物体平均的物理属性。
第三步:参数分布预测 (MPDP)
- 问题: 真实物体各处材质不一定均匀,而且 AI 猜的只是个平均值。
- 方法: 训练了一个小型的神经网络,输入物体形状和平均参数,输出每个部位具体的参数分布。这让仿真更细腻。
第四步:由点及面的仿真 (物理核心)
1. 物理引擎:MLS-MPM
论文使用了 MLS-MPM (Moving Least Squares Material Point Method) 作为物理模拟器。
- 原理: 3DGS 的每一个高斯球,理论上都可以看作 MPM 中的一个物理粒子。
- 状态更新公式(关键): 当物体受力变形时,高斯球不仅位置要变,形状(协方差矩阵)也要变。
- 位置更新:
(新位置) = + 位移。 - 形状更新:
。 - 解释:
叫做变形梯度。比如物体被压扁了, 就会记录这个“压扁”的动作,然后应用到高斯球的形状 上,原本圆圆的高斯球也会跟着变扁。这就实现了视觉和物理的统一。
- 位置更新:
2. 采样策略:PGAS (Physical-Geometric Adaptive Sampling)
- 痛点: 一个精细的 3DGS 场景可能有几百万个高斯球。如果每个球都算物理模拟,计算量太大,显卡会冒烟。
- 解决: 不驱动所有点,只选一部分“驱动粒子” (Driving Particles) 进行物理计算,其他点跟着动。
- 怎么选点? 论文设计了 PGAS 策略:
- 硬的地方少选点: 刚体不容易变形,几个点就能控制整体。
- 软的地方多选点: 软物体变形复杂,需要更多点来捕捉细节。
- 弯曲的地方多选点: 形状复杂的边缘需要更多控制点。
- 效果: 既保证了仿真速度(单卡 RTX 3090 几分钟就能算出结果),又保证了软体变形的真实感。
4. 实验结果与对比
- 速度: 相比于利用视频生成模型(Video Diffusion)来做物理仿真的方法(通常需要几小时),本方法只需要 2分钟 左右。
- 真实感: 在用户调研中,人们认为 Sim Anything 生成的物理运动比 DreamGaussian4D 等方法更符合物理规律(比如布料的摆动、果冻的颤动)。
- 对比传统方法:
- PhysGaussian: 本文方法与其类似,但增加了全自动的参数估计和更优的采样策略,不仅限于单一物体,能处理整个场景。
- 视频生成类方法 (PhysDreamer): 视频生成虽然画面好看,但容易出现“物理幻觉”(不符合牛顿定律),而且极慢。
总结笔记
不需要转网格: 不需要将 3DGS 转化为 Mesh 或 SDF。
核心是 MPM: 也就是物质点法。这是连接 3DGS(视觉)和物理世界的桥梁。
数据结构对应:
- 3DGS 的 均值中心 (Mean Position) = 物理粒子的 位置。
- 3DGS 的 协方差矩阵 (Covariance) = 受物理 变形梯度 (Deformation Gradient) 驱动的形状变量。
性能优化关键: 不要仿真每一个高斯点。使用下采样(Sub-sampling)技术,选取关键的“驱动粒子”进行物理计算,利用刚性变换 (Rigid Body Transformation) 插值来驱动周围的高斯点。
- 标题: Sim Anything阅读笔记
- 作者: Felix Christian
- 创建于 : 2025-12-16 11:34:05
- 更新于 : 2025-12-29 16:00:39
- 链接: https://felixchristian.top/2025/12/16/23-Sim_Anything/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论