Skip to main content

天空尽在掌控之中!

本报告将探索一篇有趣的论文,叫做(中文译为《天空之城》):自动替换视频中的天空并做调和。
Created on December 4|Last edited on January 27
本报告是作者Ayush Thakur所写的"The Sky Is In Our Grasp!"的翻译

大家应该用过Instagram或Snapchat的滤镜。猫须看起来很可爱,吸血鬼獠牙让人毛骨悚然。你有没有想过它是如何做到的?好吧,在科技上简单回答就是:自动探测面部特征点 ,然后把猫须之类的组件放到对应的特征点。太有趣啦!

那可不可以把天空换成自己想要的?你想让阴天拍摄的视频变成温暖的晴朗天气。或者,你想在背景加一个电闪雷鸣效果,那多酷啊!在这篇报告中,我们将了解这样一项技术,能够自动做天空替换和调和。

项目网站 | 论文 | Colab笔记本





demo-sky-4.gif

demo-img-4.gif

Run set
1


引言

在室外拍摄的照片和视频,天空是个关键的组成部分。摄影师必须面对不可控的天气和光照条件,会导致过度曝光或者平淡的天空。为了克服这些条件,摄影师可以用专门的硬件设备,但这些设备不是人人都买得起的。

基于软件的自动天空编辑就是个廉价的方法,最近计算机视觉的进步让这一领域受益。现有方法不是需要耗时耗力的人工就是有摄影机方面的特殊要求。为了克服这些问题,该论文的作者们提出了一个新方案,能够在视频中生成叹为观止的逼真天空背景,可以控制风格种类。

我们将在下一部分概述所提出的方法,该方法满足:

  • 仅基于视觉;
  • 无需用户参与;
  • 既可用于线上处理情形,又可用于离线处理情形;
  • 无需任何特殊硬件。

作者在视频中展示了用提出的方法制作的一些优秀作品。

video_link



概述所提出的方法

overview.png

所提出的方法包括三个关键组件:

  • 天空抠图网络
  • 动作估计器
  • 天空盒

天空抠图网络

抠图在图像编辑、视频编辑中至关重要,包括很多方法,目的就是把想要的前景从图像中分离出来。前景,在我们这里就是除了天空以外的全部,通过预测羽化的“蒙版”进行分离。

之前的方法是依靠像素二元分类(前景与天空),所提出的天空抠图网络不同于之前的方法,而是制作羽化天空蒙版,可得到更加精准的探测结果以及更加美观的调和效果。

作者使用基于深度卷积神经网络的U型网络,U型网络包括一个编码器EEE和一个解码器DDD。该网络预测粗略的天空蒙版。从粗到精细化模块接收线路图和高清输入帧,以产生细化的天空蒙版。

U型网络详细信息

model.png

  • 作者用“残差网络-50”(ResNet-50)作为编码器网络。

  • 解码器和编码器不是对称的,但解码器使用卷积层和上采样层。

  • 由于天空区域往往出现在图像的上部,在编码器的输入层以及所有解码器层,传统卷积层被替换为协调卷积层

  • 在具有相同空间大小的编码器层与解码器层之间运用残差连接。

  • 在预测的空间蒙版与真实蒙版之间的原始像素空间运用L2L2 损失。

细化模块详细信息

  • 在这一阶段,粗略的天空蒙版首先被上采样至初始输入分辨率。
  • 波技术,而不是上采样卷积操作或对抗式训练。

  • 使用该技术是因为边缘效果好,效率高,简洁。

  • 通过利用制导图的蓝色通道(对比度高��,滤波过程把制导图的结构转化到低分辨率的天空蒙版。这样会产生更加清晰的结果,并且耗用最小的计算量。



动作估计

该组件负责拍摄天空的动作。为什么必须要有它?因为你要对“虚拟摄影机”拍摄的天空视频做渲染,并使其与真实摄影机的动作同步。

  • 之前估计真实摄影机动作的方法。不过,所提出的方法有个假定,就是天空和天空中的物体位于无限远处,其相对于前景的运动是仿射的(Affine)。该方法估计这些物体的动作。

  • 在估计这些动作时要利用输入视频帧。迭代进行的Lucas-Kanade算法 带有金字塔,用来计算光流。这样就可以一帧一帧地记录一组稀疏的特征点。这些特征点位于天空区域。如果没有足够的特征点,就在当前帧运用深度估计,以计算仿射参数。

  • 对于每两个相邻帧,给予两组二维特征点,基于随机抽样一致性算法的可靠仿射估计用来计算最优的二维转换。

  • 在帧,背景模板图像用来获取最终的天空背景。用一个简单方法,利用计算的仿射参数即可使模板对齐。tt.



天空图像调和

*ItI^tAtA^tBtB^t 分别为时间ttt处的视频帧、预测的天空蒙版、对齐的天空模板图像。YtY^tt为输出帧,就是ItI^tIt与BtB^t^tBt的线性组合,而AtA^t是像素方面的组合权值。那么得出YtY^t如下:

Yt=(1−At)It+AtBtY^t = (1 - A^t)I^t + A^tB^t

  • 从这个公式我们可以明白,羽化蒙版只不过是编码器-解码器框架的概率预测,并用导向滤波算法加以细化。

  • 简单线性组合应该不会产生逼真的结果,因为输入帧及其对齐的背景都有着不同的色调和色彩浓度。因此,运用重新着色技术和补光技术把背景的颜色和浓度转换到前景。



成果

现在让我们膜拜一下这项非凡的技法。作者用该方法做了视频增强(替换天空)和天气/光照转换。我们分别看一下这两种。

我制作了关联的Colab笔记本,用的是作者提供的Colab笔记本,但做了简化,以便于大家能轻而易举地增强自己的视频。

用Colab笔记本重新制作结果 →\rightarrow.

视频天空增强




Run set
27


天气/光照转换




Run set
27

Iterate on AI agents and models faster. Try Weights & Biases today.