先拍照,后打光,“重打光”技术消灭阴阳脸

B站影视 电影资讯 2025-11-18 11:17 1

摘要:拍照的时候,视频会议的时候,总特别讨厌环境光照跟自己作对。想显出面部立体感,可是光照太均匀,变成一张大饼脸。想要表情柔和亲切,可是唯一的灯光在头顶,笑容怎么都狰狞!

拍照的时候,视频会议的时候,总特别讨厌环境光照跟自己作对。想显出面部立体感,可是光照太均匀,变成一张大饼脸。想要表情柔和亲切,可是唯一的灯光在头顶,笑容怎么都狰狞!

早已有一些技术可以调整照片和视频中的人脸高光和阴影,但效果和速度都不尽人意。中科院计算所等机构的研究团队提出了一种新的“实时3D人像视频重打光”方法,论文名就是《Real-time 3D-aware Portrait Video Relighting》 ,这种新方法几乎消除了传统方法的所有缺点。

大多数传统方法只是消除高光和阴影,相当于从画面正前方打光。本文方法不但可以调整画面中的光照角度和强弱,还能改变镜头的视角,让画面中的人脸以任何角度呈现。

实现这些功能的关键,一是根据二维图像建立人脸的三维模型,二是把光照和纹理分离。然后就能把没有高光和阴影的头、面部图像贴在三维模型上,无论是头部偏转还是更改光照,就都可以利用成熟的三维渲染技术。

研究人员们把物体表面的颜色、纹理、反射系数等固有性质称为反照率(Albedo),例如在排除光照影响之后皮肤本来的颜色、毛发的形态和颜色、反光度等。有了反照率和三维模型信息后,通过在三维空间中设置光源的位置、方向、强度,就可以在三维模型的贴图表面上产生极为真实的光影效果。

原理并不复杂,所有的步骤都有现成的方案,但效果最好的永远不会是已经存在的方法。对于“视觉欺骗”,不能只靠推导和数据来评估优劣,视觉效果才是最直观的。下图是对人像重打光的测试结果,最后一行是本文方法的输出图像:

与同类技术相比,本文方法最忠实地保持了参考图像的光照条件,人物面部的光影效果也非常自然真实,没有任何违和感,对人脸形态的保持也最完善。

在改变光照的同时改变视角,也同样是本文方法的效果最自然,下图第一列是原图,第二是参考光照,第三列是本文方法的输出图像。

在解决了单张图片“重光照”技术后,还不能直接应用于视频,必须解决连续图片“一致性”问题。

如果让美术生画10个一样大的球体,已经画好的都要收起来不能参考,那么画出的10个球可能只是大小一样,而上面的高光和阴影的位置、大小、强度却肯定做不到完全一致。如果把固定的球体换成运动的人脸,每张图片都单独处理就更难保持光影效果一致,作为视频播放时就会有闪烁感。

为了解决这个问题,研究人员们提出了“时间一致性网络”,分“长时”和“短时”两种方式捕捉人脸变化。两种方式分别确保帧序列的整体一致性,和相邻帧之间的平滑过渡。使视频中的人像在重打光后,头部运动和表情变化都不会造成光影闪烁现象。

复杂的图像处理往往需要较高的计算机性能,例如实现了类似功能的ReliTalk方法,使用高性能电脑每帧重打光也需要0.2秒。本文中的方法处理速度有极大优势,按原论文中的说法是“消费级”电脑能达到32.98帧每秒(分辨率512×512),已经可以做到对视频的实时处理了。

但是科研人员眼中的“消费级”和普通人说的“消费级”区别还是挺大的,因为测试用的电脑是使用Nvidia RTX 4090才能达到这样的速度。不过科研人员虽然擅长理论算法,但一般要工程师才能做好面向特定硬件的细致优化,因此性能优化并没有到达极限。

何况Intel、AMD、龙芯都在往桌面CPU中集成AI运算加速功能,只要把对算法的实现面向这些硬件专门优化,还是有希望数年内在“真・消费级”电脑上流畅运行,在视频会议软件、图像处理软件中实际应用。

来源:科工洞洞拐一点号

相关推荐