Steer3D¶
Steer3D: Feed-Forward 3D Editing via ControlNet-Style Bypass on TRELLIS Backbone (2025.12)

Steer3D 的设计思路很直接:不要从零训练一个 3D 编辑模型,而是给已有的 Image-to-3D 模型加上"文本可操控性"。具体做法是在 TRELLIS 骨干上接入零初始化的 ControlNet 旁路,使预训练的 3D 生成能力可以被编辑指令引导,实现前馈式、11.8 秒完成的 3D 编辑。
核心思想:ControlNet 式旁路注入¶
传统思路是训练一个独立的 3D 编辑模型——这既昂贵又容易破坏预训练模型已经学到的 3D 先验。Steer3D 换了一种方式:
冻住 TRELLIS 基础模型,只训练一个轻量的 ControlNet 旁路模块,让编辑文本指令通过旁路注入到生成流程中。
这和 2D 领域 ControlNet 的哲学完全一致:保留主干的生成能力,用旁路注入新的条件控制。区别在于这里的“条件”换成了 3D 编辑指令,不再是边缘图或深度图。
架构设计¶
基础模型:TRELLIS¶
TRELLIS 的生成流程分为两个阶段,每个阶段各有一个 24 层的 Sparse Flow Transformer:
- Stage 1:稀疏结构生成(几何骨架)
- Stage 2:结构化潜变量生成(纹理与细节)
详见 TRELLIS 分析。
ControlNet 旁路模块¶
对 TRELLIS 的每个 Transformer Block,Steer3D 添加一个并行的 ControlNet Block:
输入 (编辑前 3D latent)
│
├──→ Base Block (TRELLIS, 冻结)──→ base_output
│
└──→ ControlNet Block ──→ cross-attention (编辑文本) ──→ zero-init projection ──→ ctrl_output
│
最终输出 = base_output + ctrl_output (element-wise sum)
关键设计细节:
| 组件 | 说明 |
|---|---|
| ControlNet Block | 基础 Block 的完整拷贝 |
| Cross-Attention | 引入编辑文本条件,让旁路"读懂"编辑指令 |
| Zero-Initialized Projection | 训练初始时旁路输出为零,不破坏基础模型行为 |
| 基础模型 | 全程冻结,不更新任何参数 |
这种设计保证了训练开始时 Steer3D 的行为和原始 TRELLIS 完全一致,随着训练推进旁路逐步学会注入编辑信号。
数据引擎:96K 高质量编辑对¶
高质量的 3D 编辑数据是稀缺资源。Steer3D 构建了一套完整的自动化数据生成管线。
数据生成流程¶
Objaverse 16K 资产
↓ 随机旋转(多样化视角)
↓ GPT-4o-mini 生成 20 条编辑指令/资产(添加/移除/纹理)
↓ Step1X-Edit 执行 2D 编辑
↓ Hunyuan3D 2.1 重建 3D
↓ 初始数据集:320K 对(耗费 2500 H100 GPU 小时)
↓ 两阶段质量过滤(移除约 70%)
↓ 最终数据集:96K 对
两阶段过滤(关键步骤)¶
初始 320K 对中有大量低质量样本,Steer3D 设计了两道独立的过滤机制:
第一阶段:Dual-LLM 语义正确性检查
LLM₁ (不给编辑指令, 只给编辑前后图像) → 描述视觉差异
LLM₂ (不给图像, 只给 LLM₁ 的描述 + 原始编辑指令) → 判断是否对齐
这个设计的关键在于:通过信息隔离,迫使整个判断链路依赖于视觉事实而非指令暗示,有效过滤"编辑名不副实"的样本。
第二阶段:DreamSim 感知一致性过滤
对 3D 重建结果的渲染图与 2D 编辑结果计算 DreamSim 感知相似度,过滤掉重建质量低的样本(3D 重建未能忠实还原 2D 编辑效果的情况)。
训练策略¶
预对齐微调¶
在正式编辑训练之前,先用 Hunyuan3D 2.1 的输出对 TRELLIS 做监督微调(SFT),目的是对齐两者之间的空间尺度差异。这一步消除了因为数据源空间分布不同带来的系统性偏差。
两阶段训练¶
| 阶段 | 方法 | 目的 |
|---|---|---|
| Stage 1 | 监督 Flow Matching (SFT) | 学习基本的编辑能力 |
| Stage 2 | DPO (Direct Preference Optimization) | 防止陷入"不编辑"的局部最优 |
DPO 的必要性¶
纯 SFT 训练容易陷入一个局部最优:模型学会"什么都不改"来最小化损失。因为不编辑时几何和纹理的重建误差最低,这对模型来说是一个"安全"但无用的解。
DPO 的构造方式:
- 正样本(chosen):Ground truth 编辑结果
- 负样本(rejected):编辑前的原始资产(即"没有执行编辑"的结果)
这迫使模型必须学会"做出改变"才能获得更高奖励。
训练细分¶
| 编辑类型 | 训练配置 |
|---|---|
| 几何添加 / 几何移除 | 分开训练,仅 SFT,不使用 DPO |
| 纹理编辑 | 使用 DPO + CFG(text dropout 0.2) |
整体训练在 6× A100 GPU 上完成。
实验结果¶
定量对比¶
Steer3D 在所有指标上领先:
| 编辑类型 | F1 提升 | CD 下降 | LPIPS 下降 |
|---|---|---|---|
| 几何编辑 | +64% | -63% | -53% |
| 纹理编辑 | +113% | -55% | -43% |
以上均为相对于第二名方法的改进幅度。
推理速度¶
11.8 秒完成一次 3D 编辑,是所有对比方法中最快的,比第二快方法快 2.4 倍,比最慢方法快 28.5 倍。
EDIT3D-BENCH¶
Steer3D 同时提出了 EDIT3D-BENCH,包含 250 个人工验证的测试对象:
- 150 个纹理编辑
- 50 个几何添加
- 50 个几何移除
消融实验¶
消融实验验证了几个关键设计决策:
| 消融项 | 结果 | 结论 |
|---|---|---|
| DPO | "不编辑"失败率从 18.67% 降至 10.67% | DPO 有效缓解"什么都不改"的局部最优 |
| 直接微调 DiT vs ControlNet 旁路 | LPIPS 从 0.1985 恶化到 0.238 | 直接微调会破坏预训练 3D 先验,验证了 ControlNet 路线的必要性 |
| 数据过滤 | 去除过滤后性能明显下降 | 高质量数据对编辑模型很重要 |
总结与定位¶
Steer3D 在方法谱系中属于 Control-style native editing 路线(参见 Mesh Editing Landscape)。它的贡献在于:
- 证明了 ControlNet 范式在 3D 编辑中的有效性:冻结主干 + 旁路注入,比直接微调更安全
- 构建了可复用的数据引擎:96K 高质量编辑对,双阶段过滤机制值得参考
- DPO 解决"不编辑"问题:这个训练技巧对所有 3D 编辑方法都有启发意义
- 速度优势明显:11.8 秒的前馈推理使其具备实际部署潜力
主要局限在于:作为前馈式方法,它实质上更接近"条件生成"而非"精确编辑"——对非编辑区域的一致性保持没有显式机制保障,这也是当前 Control-style 路线需要持续解决的问题。