3D Generation · 交互式可视化 · #142
3D 生成
可视化实验室
从 Text-to-3D 到 DreamFusion,从 SDS 损失到 3D Gaussian Splatting。8 个交互式模块拆解"如何用文字生成可旋转的 3D 物体"——分数蒸馏、NeRF 编辑与形状表示的全景。
模块 8风格 Linear Dark依赖 零渲染 SVG分类 AI/ML
01Text-to-3D 流程图
经典两阶段管线:先用 2D 扩散模型生成参考图,再用 SDS 损失把 2D 图像"提升"为 3D 表示。点击各阶段查看细节。
02SDS 损失函数可视化
Score Distillation Sampling 用 2D 扩散模型的分数函数 ∇log p 作为梯度,指导 3D 表示优化。无需 3D 数据,只用预训练 2D 先验。调节引导强度观察梯度场。
03DreamFusion 架构
DreamFusion = NeRF(可微渲染)+ Imagic(2D 扩散先验)+ SDS 损失。从随机球优化出一致的多视图 3D 物体。点击高亮各组件数据流。
关键洞察:无需任何 3D 训练数据。2D 扩散模型的分数函数充当"3D 监督信号",让 NeRF 从所有视角都符合文本描述。
043D Gaussian Splatting 生成
3DGS 用百万个各向异性高斯椭球显式表示场景,渲染快(实时)、可编辑。点击"添加高斯"观察 splatting 到 2D 的过程。
高斯数0
高斯椭球splat 像素
每个高斯 = (位置 μ, 协方差 Σ, 不透明度 α, 球谐系数 SH)。相比 NeRF 隐式场,显式表示支持直接编辑(移动/缩放/着色)。
05NeRF 编辑
NeRF 编辑:在 2D 视图上画笔刷,编辑信号通过密度/颜色场反传到 3D。选择编辑类型,点击"应用编辑"观察切片变化。
挑战:NeRF 是隐式全局函数,局部编辑会意外影响其他区域。3DGS 因显式结构,编辑更可控——这是它流行的关键原因之一。
06分数蒸馏采样过程
SDS 优化是迭代过程:每步渲染新视角 → 加噪 → 扩散模型去噪求梯度 → 更新 3D 参数。点击 Play 观察物体从噪声逐步成形。
迭代0
/ 12
当前 3D 视图噪声/初始梯度方向
早期迭代渲染模糊(低分辨率加速),后期逐步细化。这正是 SDS 慢的根源——每个 3D 步都要完整前向渲染+扩散推理。
073D 形状表示对比
5 种主流 3D 表示:Voxel / Mesh / Point Cloud / Implicit(NeRF) / 3D Gaussian。切换查看同一物体的不同表示与权衡。
08生成质量评估
3D 生成质量多维评估:CLIP Score(文本一致性)、FID(视觉真实度)、IoU(几何精度)、多视图一致性、用户偏好。切换模型对比雷达图。
Magic3D 两阶段(粗 NeRF + 细 Mesh)几何更精细;ProlificDreamer 用 VSD 减少Janus 问题(多脸效应);3DGS-Gen 渲染最快但训练数据依赖重。