剑眉星目,衣带飘飘,伴着仙乐,传闻中的瑶池仙堡堡主从闭关处飞身而出:
一身霓裳羽衣,宛如敦煌壁画中的飞天,或许见过林青霞这一造型的观众并不多。
这段经典的出场画面,来自于 1983 年徐克执导的《蜀山:新蜀山剑侠》,是林青霞的第一部武侠作品。在传统武侠功夫片的内核之中,导演注入了天马行空的想象。这也是港片拍摄中,第一次邀请到好莱坞《星球大战》特效小组支援特技镜头的作品,很多特效制作在当时显得十分前卫和大胆。
以《蜀山:新蜀山剑侠》为代表的老港片,承载了很多人的童年回忆,成为了一代人心目中难以超越的珍贵影像。
但记忆中的这些老港片,往往伴随着模糊、昏暗、掉帧等画质问题。即使今天再将经典之作翻出来重新观赏,部分作品的「全损画质」也会影响到我们感受其艺术和美学价值。
为此,抖音及火山引擎在 2023 年发起了「经典香港电影修复计划」,宣布将在一年内修复 100 部香港经典影片。通过最新技术的助力,让大众看清香港电影最初的、最清晰的样子。
在 8 月 16 日举办的「再续时光 —— 经典香港电影修复发布会」上,这一计划正式启动。首批上线的老港片包括《武状元苏乞儿》、《A 计划》、《蜀山:新蜀山剑侠》等 22 部作品。
基于最前沿的 AI 技术加持,一系列八九十年代的老港片重新焕发了生机。比如在 4K 版本的《蜀山:新蜀山剑侠》中,女神林青霞的美貌被完全还原:
修复前。
修复后。
值得关注的是,这一次老港片修复首次应用了 AIGC 视觉大模型。字节跳动视频架构负责人、火山引擎视频云架构技术总监王悦表示,基于视觉大模型优越的生成能力和丰富的先验知识,修复的效果与效率均实现了大幅度提升。
修复一部四十年前的港片,有多难?
如今,想要找到一部老港片的播放资源并不难,只不过这些视频的画质与我们常看的高清视频相比,观感体验不那么友好。
受限于拍摄设备、存储方式等的影响,一些老港片往往会更加模糊、有严重的胶片噪声且分辨率较低。带给观众的直观感受就是「高糊」、「昏暗」、「不丝滑」:
造成这些问题的原因是多种多样的:在上个世纪,大部分港片拍摄后都是储存在胶片上,而储存胶片的环境需要恒温恒湿。如果保存的温度和湿度不合适,以及在使用、搬运的过程中造成的物理和化学性损伤,产生褪色、撕裂、脏点、霉变、划痕、酸变、收缩、扭曲等情况,反复的放映更是容易造成画面划痕、闪烁、丢帧等损伤。再加上拷贝版本因为翻印过多次,画质也会有衰减。
此外,受限于技术原因,很多武侠类的老港片都无法完全处理掉威亚的痕迹。以《蜀山:新蜀山剑侠》为例,这部作品存在大量的武打动作,观众很容易在观赏过程中发现「钢丝」:
近年来,对此类老电影的修复工作正在越来越多地开展。一般来说,老电影修复分为传统修复、算法修复和艺术修复三大步骤。首先要清洁电影胶片表面的灰尘、污垢,然后对其进行接补,再将胶片每格内容转换为数字化信息,经过修复师一帧帧处理画面上的划痕、污渍等问题,最后进行画面调色。
一部电影可能多达十几万帧,人工修复的成本高、耗时长,难以进行大规模修复。这一套流程下来,大概要花费好几个月的时间,其中又属数字修复环节的工作最为繁琐、枯燥、耗时。
近年来,越来越多的 AI 技术被用于修复老电影,也带来了惊艳的效果。在本次「经典影像修复计划」中,火山引擎团队将传统人工修复与最新的 AI 算法修复相结合,在极大提升电影修复效率的同时,进一步优化了影片的画质。
在这一过程中,火山引擎和中国电影资料馆进行了多轮沟通和讨论,经过不断地测试和反复地调优,才达到算法服务于艺术的理想效果。
特别要提到的是,火山引擎多媒体实验室基于多种自研的画质增强能力,首次将 AIGC 视觉大模型「Stable Diffusion」应用于老片修复场景。
老电影修复,用上生成式 AI 大模型
我们知道的「Stable Diffusion」,是一个文本到图像的生成模型。那么它如何用于视频修复?效果如何?
火山引擎多媒体实验室研究员赵世杰介绍说,除了通过文字 prompt 生成图片和视频内容,相关算法同样可以应用在 prompt 为图片或者视频的场景,实现通过图片或视频来创作新的图片或视频。视频的逐帧修复流程与图像修复类似,其方法也是基于图像修复演变而来的,因此这些算法可以应用于老旧视频到高清视频的转换或是视频画质修复、增强。
3、效率优化:已有的扩散模型因为需要迭代降噪计算结果,所以运算速度很慢,对算力的要求很高。因此,团队对采样的推理步数进行了蒸馏优化,将冗余的采样步数大幅缩减。此外,面向老片修复场景对高分辨率的要求,一个非常实用的思路就是做并行。团队设计了分块推理的结构,在保证各个块算法稳定的前提下提高算法并行度,使得大模型的推理效率整体提高 50 倍以上。
老片修复,火山引擎有哪些技术沉淀?
此外,在清晰度、流畅度、色彩、瑕疵四种老片修复的常见问题上,火山引擎团队已经积累了丰富的 AI 修复技术,有效加速了此次修复。
首先,从清晰度上,团队自研了去噪、去压缩、去模糊、超分辨率、人像增强等多种 AI 算法。针对老旧电影存在的噪声,压缩,模糊等混合画质损伤,通过智能画质问题分析,自适应决策处理算法,达到减少影片伪像、消除模糊、提升分辨率等效果。
针对人像为主的场景,优化后的人像增强模块能够在提升五官清晰度的同时保留皮肤纹理细节,不破坏影片质感。
修复前(左),修复后(右)。
其次,从流畅度上,团队自研了智能插帧算法,通过对前后帧的内容进行光流估计,根据光流信息将前后帧像素都转换到中间帧,然后进行整合,生成中间帧,提升视频帧率,减少观看时的卡顿感。
特别是对于《蜀山:新蜀山剑侠》的众多武打场景来说,帧间运动较大,运动范围超过光流模型感受野时,光流就会估计不准确,导致最终前后帧像素转换到中间帧也不准确,产生拖影。
为了解决这一问题,团队在计算光流时,自适应确定下采倍数,使用下采分辨率后的图片作为输入,得到下采光流后再上采回原分辨率,用于原分辨率图像的像素转换,从而让光流模型在较小的计算量下能够处理较大运动。
修复前(左),修复后(右)。
对于武打中一些过于复杂的运动,插帧对复杂运动的拟合不够准确,从而导致最终插帧结果不准确,产生伪影,对用户观感会有负向体验,这种情况下要尽量避免去做插帧,因此需要有是否适合做插帧的判断方法,我们的插帧判断主要从图像差异度、帧间运动情况、模型预测的插帧置信度三方面去分析,对于图像内容差异度过大、帧间运动复杂度过大、模型预测出插坏的区域过多这三种情况避免使用插帧模型的输出,而使用相邻帧作为插出的帧。
下图是插帧置信度的预测,插帧置信度的黑色区域对应插坏的区域:
然后,从色彩上,团队构建了一整套色彩相关处理算法,包括色彩增强、色偏校正、SDR2HDR 等能力,可以解决老片中的褪色、色偏等问题,让老片色彩更丰富,焕然一新。
由于早期摄影设备能力弱,存储介质老化等原因,常常存在色偏,动态范围偏低等问题,导致影片失真严重,需要通过色彩校正/增强等算法对失真进行修复,使其重焕生机。对于色彩校正算法而言,其难点在于白点估计,传统的灰度世界/完美反射等算法难以准确地估计老片场景中较为复杂的色偏情况,而基于深度学习的色偏校正算法虽然上限较高,但其帧间稳定性较差,且不同帧校正效果差异较大。
为了有效解决上述问题,团队首先对影片进行场景分割,使用深度学习方案逐帧学习其色彩校正矩阵,同时通过质量检测算法剔除其中效果较差校色矩阵,然后按场景求得剩余色彩校正矩阵的均值,对同一场景,使用同一套色彩校正矩阵进行处理,从而得到稳定的校正结果。
修复前。
修复后。
最后,从瑕疵上,老港片中常出现的瑕疵包括线状划痕、雪花颗粒噪点、块状污渍等。团队给出的解决方案包括:
对于较小的雪花噪声,使用传统时域运动补偿去噪算法,利用相邻帧信息,对固定规律的纹理和随机的噪点进行区分,在保证去除大部分噪点的同时,减少对纹理细节的损伤。
对于线状划痕和块状污渍,使用基于深度学习的划痕检测修复模块。通过生成随机长度的直线和不规则的块状mask来模拟划痕损伤,将其添加至无划痕的视频数据获得匹配的数据对。利用该数据集训练网络,可以修复大部分线状划痕和较小的块状污渍。
对于画面损伤较大的块状污渍,使用基于生成式的image inpainting算法,通过局部纹理信息,全局结构信息和颜色纹理信息,来优化生成的画面内容与片源的相似性,同时利用时域一致性算法,防止修复后的画面在时域出现闪烁。
技术与开放的价值
很多人可能会好奇,这样一套复杂的 AI 修复方案,是否有机会组合起来对外开放,让普通人也能将「全损画质」轻松转化为高清视频?
其实,这些相关的能力开放工作,火山引擎团队很早就开始做了。在火山引擎视频云中,「智能处理」就是团队基于多年对多媒体智能处理的实践经验提炼出的全流程视频前后智能处理及增强技术产品。
火山引擎智能处理官方网站:https://www.volcengine.com/product/imp
作为字节跳动旗下的企业级技术服务平台,火山引擎此前已将字节跳动快速发展过程中积累的增长方法、技术工具和能力开放给外部企业,提供云、AI、大数据技术等系列产品和服务,帮助企业在数字化升级中实现持续增长。
比如,火山引擎每天都会在多个链路、环节对海量视频进行分析,做针对性的增强和修复。而这些修复影像过程中使用到的技术,已经通过火山引擎的「智能处理」工具向所有内外部客户提供服务,便于让更多的企业参与到老片的修复中,为观众带来更多的 4K 超高画质影像作品。