Paper reading | Towards High Fidelity Relighting with Realistic Shadows [CVPR 2021]

挑战:

  1. 保留人脸的局部细节。
  2. 精确的移除、合成重光照图像中的阴影,尤其是硬阴影。

现有方法:

  1. 图像本征分解:将图像分解为人脸几何、光照和反射。
    • 问题:通常会损失高频细节,且由于几何形状和反射估计的误差,会在重光照图像中会留下伪影(artifacts)。
  2. image-to-image转换:
    • DPR:使用primarily diffuse光照训练,仅可以处理软阴影。
  3. 风格转换:
    • 需要使用参考图像,实际使用中不灵活。

文中方法概要:

  1. 预测比例图(ratio image):使用hourglass网络估计比例图(ratio image),相比于直接预测重光照图,可以更好的保留人脸局部细节。
  2. 训练过程中使用估计的阴影模板(shadow mask):来增强高对比阴影的边界。
  3. 估计图像环境光强度(ambient light intensity):使用阴影模板来估计。使得论文可以使用环境光强度差异很大的多个数据库进行模型训练。
  4. 颜色空间:使用YUV颜色空间(不同于DPR方法的Lab)
  5. loss
    • 比例图预测loss([latex]L_{ratio}[/latex]):
      • 将loss定义在log空间保证了图中比例值 [latex]r[/latex] 和 [latex]1/r[/latex]在loss中具有相同的权重。
    • 比例图阴影边界loss([latex]L_{i,border}[/latex]):
      • 其 i 可为 s 或 t 分别代表源和目标图像,[latex]W_i[/latex]为每个像素的权重,[latex]N_i[/latex]为[latex]W_i[/latex]中非零权重的数量。
    • 光照估计loss([latex]L_{lighting}[/latex]):
    • 梯度一致loss([latex]L_{gradient}[/latex]):
      • 确保预测图像和真值图梯度信息类似
      • 保留图像边缘信息,防止产生图像模糊
    • 面部特征一致loss([latex]L_{face}[/latex]):
      • 确保同一主题在不同光照下的面部特征相同
      • 保留面部局部细节
    • GAN loss([latex]L_{adversarial}[/latex]):
      • 使用两个PatchGAN判别器,进一步提升人脸真实性。一个使用70×70块,一个使用140×140块。
    • 结构不一致loss([latex]L_{DSSIM}[/latex]):
      • 基于SSIM,增强感知质量。
      • 参考:Learning physics-guided face relighting under directional light, CVPR, 2020.
    • Final loss:
      • 其中 [latex]L_{wratio}=L_{ratio}+L_{s,border}+L_{t,border}[/latex]。
  6. 阴影边界权重
    • 计算阴影模板:使用定向光源和由3DMM拟合得到的三维形状信息计算。
    • 平滑阴影模板:使用21×21的均值滤波。
    • 确定边界像素:平滑后阴影模板上值在两阈值之间的像素
    • 各边界像素处计算局部对比度:使用四个方向上梯度的和作为局部对比度;梯度使用21×21的核计算;边界像素(x,y)处的局部对比度记为t(x,y)。
    • 使用高斯函数衡量各边界像素局部对比度对阴影边界的贡献:
    • 点(x,y)处的阴影边界权重W(x,y):领域内包含点(x,y)的所有边界像素(u,v)对阴影边界贡献的和。
    • 最终,将W(x,y)归一化到[0,10]。
  7. 阴影模板
    • 对于处于投射阴影(cast shadow)或者自阴影(self shadow)中的像素置0;对于其他像素置1。
  8. 环境光:
    • 环境光估计:由于只有环境光会作用到阴影像素上,因此可以使用阴影像素亮度的均值作为环境光的估计。
    • 汇总方向光和环境光的影响:首先使用点光源模拟图像的方向光,并计算对应的9个球谐系数;然后,将估计的环境光强加到0阶球谐系数上。
    • 将环境光影响添加到光照真值中:训练中分别使用源和目标图像的阴影模板计算对应的环境光,并将环境光分别加到对应的光照真值中。
  9. 训练细节
    • 共训练51个epoch。
    • 学习率0.0001;使用adam optimizer优化。
    • 初始的8个epoch,无skip connection;分别在第9、11、13、15个epoch处增加一个skip connection;在第16个epoch后,才添加面部特征loss ([latex]L_{face}[/latex])。
    • gamma校正:由于相机通常无法正确的捕捉物理亮度,在训练中对输入和目标图像亮度进行gamma校正([latex]\gamma=1/2.2[/latex]),并学习校正后图像亮度的比例图。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇