第 14 章 基于图像的渲染 (Image-Based Rendering)

      +

      核心结论

      • 视图插值(§14.1):从两张图像插值新视角;简单但需密集对应。

      • 视图变形(§14.2):用深度图重投影到新视角;适合窄基线。

      • 光场渲染(§14.3):4D 光场(位置 + 方向);新视角无需几何。

      • 全景 / 同心拼图(§14.4):柱面 / 球面全景;Google Street View。

      • 同伦 (Sprites)(§14.5):基于图层的渲染;适合稀疏纹理场景。

      • 神经渲染(§14.6):NeRF / 3DGS;当前 SOTA。

      本章主旨

      本章是"新视角合成"——从已有图像生成新视角。理解 IBR 才能做 VR / AR / 自由视点视频 / 沉浸式媒体;现代用神经渲染(NeRF / 3DGS)实现照片级真实感。

      一、核心概念

      本章围绕 6 个核心概念展开:视图插值 → 视图变形 → 光场 → 全景 → 同伦 → 神经渲染。

      概念 定义 + 重要性 实现提示

      视图插值

      从两张图插值新视角;简单但需密集对应。

      §14.1;早期 IBR 方法。

      视图变形

      用深度图重投影;适合窄基线。

      §14.2;现代深度学习 IBR 基础。

      光场渲染

      4D 光场(位置 + 方向);无需几何。

      §14.3;Lytro 等光场相机。

      全景 / 同心拼图

      柱面 / 球面全景;Google Street View。

      §14.4;街景 / VR。

      同伦 (Sprites)

      图层渲染;稀疏纹理。

      §14.5;视频会议背景替换。

      神经渲染

      NeRF / 3DGS;当前 SOTA。

      §14.6;照片级新视角。

      二、详细笔记

      2.1 视图插值 (View Interpolation)

      What:从两张已知图像插值生成中间视角图像。

      Why:早期 IBR 方法;简单但需要密集对应。

      How

      视图插值(§14.1):

      1. 密集对应:立体匹配 / 光流(§9)。

      2. 变形两图:把图像变形到新视角。

      3. 融合:根据深度混合两张图。

      视图插值的局限
      • 需要密集深度 / 对应——难获取。

      • 遮挡区域无法插值(出现空洞)。

      • 大基线失败(视差太大)。

      When:学术研究;窄基线 / 静态场景。

      Example*:cv2.remap 图像变形;商业 IBR 软件(如 Immersive Media)。

      2.2 视图变形 (View Morphing)

      What:用深度图把图像重投影到新视角;适合窄基线。

      Why:现代深度学习 IBR(NeRF / 3DGS)的基础。

      How

      视图变形(§14.2):

      1. 获取深度:SfM / 立体匹配 / 单目深度。

      2. 前向变形:源图投影到目标视角。

      3. 后向变形:目标视角反查源图。

      4. 空洞填补:用邻域像素或修复算法。

      视图变形的工程经验
      • 深度不准 → 变形后图像模糊 / 错位。

      • 大基线 → 遮挡区域多 → 空洞多。

      • 深度学习用 RGB + 深度 + 置信度联合插值。

      When:自由视点视频;VR 视频;6DoF 视频。

      Example*:z-buffer + warp;NVIDIA VRWorks 视频;Apple Immersive Video。

      2.3 光场渲染 (Light Field Rendering)

      What:记录 + 重现 4D 光场(每个光线的位置 + 方向);无需几何。

      Why:新视角无需深度估计;硬件光场相机(Lytro)已商业化。

      How

      光场(§14.3):

      • 参数化L(u, v, s, t)——光线与两个平面的交点。

      • 采样:密集相机阵列(128 × 128 相机)或光场相机。

      • 渲染:插值 / 外推得到新视角。

      光场的工程权衡
      • 优点:无需深度 / 几何;新视角质量高。

      • 缺点:数据量大(GB / 场景);硬件昂贵。

      • 现代:神经辐射场(NeRF)用神经网络压缩 4D 光场。

      When:光场相机(Lytro Illum);VR 头显;自由视点视频。

      Example*:Lytro 光场相机;MIT CSAIL 光场数据集;Lytro Power Tools

      2.4 全景 / 同心拼图 (Panoramas)

      What:把多张图拼成 360° 全景图。

      Why:Google Street View / VR 旅游 / 监控大场景。

      How

      全景流程(§14.4):

      1. 图像拼接(§8.2):特征匹配 + 单应 + warp + blend。

      2. 全景投影:柱面 / 球面 / 立方体贴图。

      3. 曝光补偿:直方图匹配。

      4. 接缝优化:graph cut。

      全景投影类型
      • 柱面:水平 360°;上下有限(适合街景)。

      • 球面:360° × 180°;完整环境;需畸变校正。

      • 立方体贴图:6 个面;GPU 友好;VR 常用。

      • ERP(Equirectangular Projection):球面展开为矩形;HMD 常用。

      When:VR 旅游;监控大场景;建筑 / 房地产展示。

      Example*:cv2.Stitcherhugin 拼接;Google Street ViewInsta360 相机。

      2.5 同伦 (Sprites with Depth)

      What:基于图层的渲染——把场景分解为多个 sprite(图层),每个有深度。

      Why:稀疏纹理场景(如视频会议);快速背景替换。

      How

      同伦渲染(§14.5):

      1. 图层分割:把图像分解为多个图层(前景 / 背景)。

      2. 深度赋值:每个图层赋予深度。

      3. 新视角合成:按深度重投影 + 合成。

      同伦 vs NeRF
      • 同伦:手动 / 半自动分割;少量图层;快速。

      • NeRF:自动多层;密集;慢但质量高。

      • 视频会议背景替换用同伦;VR 场景用 NeRF。

      When:视频会议;影视特效(前景 / 背景分离);简单 3D 场景。

      Example*:Zoom 背景替换;OBS 虚拟背景;Snap Camera

      2.6 神经渲染 (Neural Rendering)

      What:用神经网络生成新视角;NeRF / 3DGS 是 SOTA。

      Why:照片级真实感;NeRF / 3DGS 是 2020+ 突破。

      How

      神经渲染(§14.6):

      • NeRF(2020):MLP 表示 5D 函数 → 体渲染。

      • Instant-NGP(2022):哈希加速;训练快 100 倍。

      • 3D Gaussian Splatting(2023):显式高斯 + 泼溅;实时渲染。

      • NeRFStudio(2023):整合所有 NeRF 变种的框架。

      神经渲染的工程权衡
      • NeRF:高质量;训练慢;渲染慢。

      • Instant-NGP:训练快(分钟级);渲染中等速度。

      • 3DGS:训练快;实时渲染;显存大。

      When:VR / AR 资产;自由视点视频;3D 扫描;电影特效。

      Example*:nerfstudio / instant-ngpgaussian-splattingLuma AIPolycam

      三、关键图表

      视觉图表

      图 14-1
      Figure 1. 图 14-1:视图插值示意
      图 14-2
      Figure 2. 图 14-2:光场相机
      图 14-3
      Figure 3. 图 14-3:全景投影(柱面 / 球面 / 立方体)
      图 14-4
      Figure 4. 图 14-4:NeRF / 3DGS 渲染对比

      非可视化条目

      非可视化条目(表 / 算法)
      编号 内容摘要

      表 14.1

      IBR 方法对比(视图插值 / 视图变形 / 光场 / NeRF / 3DGS)。

      表 14.2

      全景投影类型对比(柱面 / 球面 / 立方体 / ERP)。

      式 14-1 至 14-10

      视图变形 / 光场 / 体渲染公式。

      列表 14.1-14.x

      nerfstudio / OpenCV Stitcher 示例。

      核心公式对照表

      核心公式对照表
      概念 公式

      光场参数化

      \(L(u, v, s, t)\):光线与两平面交点

      NeRF 体渲染

      \(C(\mathbf{r}) = \int T(t) \sigma(\mathbf{r}(t)) \mathbf{c}(\mathbf{r}(t), \mathbf{d}) dt\)

      累积透射率

      \(T(t) = \exp\left(-\int_{t_n}^{t} \sigma(\mathbf{r}(s)) ds\right)\)

      四、思维导图

      mindmap
        root((第 14 章 图像渲染))
          视图插值
            密集对应
            早期IBR
          视图变形
            深度重投影
            现代基础
          光场渲染
            4D光场
            Lytro相机
          全景
            柱面球面
            街景
          同伦
            图层
            视频会议
          神经渲染
            NeRF
            3DGS
            实时

      五、重点与易错点

      • 视图插值需密集对应:难获取;现代 IBR 用深度学习。

      • 视图变形需深度图:深度不准 → 变形模糊。

      • 光场需大量相机:硬件昂贵;NeRF 用神经网络压缩。

      • 全景 = 图像拼接 + 投影:OpenCV 一键完成;Google Street View 工业化。

      • 同伦用于视频会议:简单快速;不适合高质量场景。

      • NeRF 是 2020 突破:照片级渲染;3DGS 进一步提速。

      • 3DGS 实时渲染:训练几分钟;1080p 实时;显存大(>10GB)。

      • 跨章衔接:第 8 章对齐 / 拼接是全景基础;第 13 章 3D 重建提供 NeRF / 3DGS 的输入;本章是 3D 重建的下游应用。