文 / 李智
策划 / LiveVideoStack
LiveVideoStack:李智你好,非常荣幸能代表LiveVideoStack采访你。首先,能否向我们的读者介绍下自己?
李智:感谢LiveVideoStack的邀请。很荣幸能和大家交流。我目前任职于Netflix的视频算法团队。过去三年里VMAF视频质量算法是我负责的主要项目。在VMAF之前,我是Netflix最早的 Per-title Encoding 算法的主要设计者。加入Netflix之前,我在思科从事ABR算法方面的研究。当时一直尝试用质量算法对播放器自适应码率进行优化,但苦于没有合适的质量算法作为优化目标。希望现在VMAF的出现或多或少弥补了这个遗憾吧。我本科和硕士毕业于新加坡国立大学,当时跟随导师孙启彬博士做了一些媒体安全方面的研究。博士毕业于斯坦福大学,导师是Bernd Girod教授。
LiveVideoStack:在Netflix工作有什么样的感受?和硅谷其他公司比如Google和Facebook有哪些不同?
李智:Netflix目前在全球的雇员有6000多人,主要在硅谷的Los Gatos和洛杉矶有两个大的园区。个人觉得Netflix文化上最大的特色是给每个员工最大的自由度,同时也要求每个人能够负担对应的责任。比如说,个人申请参加学术会议不需要公司批准,只要能够对工作有帮助。公司也没有关于假期的规定(就是说理论上无上限)。公司内部信息分享非常透明,要跨组织合作是非常容易的事情。对应于高自由度的另一面就是,公司认为你有能够独挡一面的能力,能对自己的项目全权负责。对于VMAF这个项目来讲,自己基本兼任工程师,研究员,以及PM。公司的组织结构非常的平,比如说几乎所有工程师都只有一个级别:Senior Software Engineer。而薪资上来讲,每个人的薪水并不和职称划等号,而是根据个人的市场价值而定。总的来讲,Netflix的薪资在硅谷的公司里面是屈指可数的。和Google以及Facebook比,Netflix可能文化上更接近Facebook。
LiveVideoStack:聊聊VMAF这个项目吧。关于画质的评价一直是个难点,尤其通过客观工具来评价。和其他客观评价工具相比,VMAF有哪些特点?
李智:VMAF是针对Netflix应用场景的产物。在最初的项目定位的时候,我们并没有尝试做一个通用性的画质评价工具,而是针对Adaptive Streaming场景下可能出现的两种损失:Compression Artifact和Scaling Artifact做了很多尝试。在框架的选取的时候,VMAF可以看做是两种不同方法的结合:一种是基于人的视觉系统感知的模拟,另一种是用机器学习的方式将特征值和用户评分联系起来。其他的工具比如SSIM,VIF更接近第一种,因为其模型里面间接模拟了人视觉系统里面的掩蔽效应。而另外一种思路是纯机器学习(神经网络)的方法,从像素阶段开始通过大量用户评分数据学习出模型。这个方法的难点在于需要大量的训练数据,而采集用户打分数据是很昂贵的。VMAF可以看作是一种结合了机器学习以及过去上百年对于人类视觉系统的认识作为先验知识的方法。
LiveVideoStack:我听说VMAF也存在一些bad case,比如图像出现块效应的时候,VMAF分数变化不大。
李智:出现这种情况的原因可能有几个。
第一,VMAF是一种基于全局的画质评价工具。如果块效应是局部的,因为VMAF会对全部的像素做算术平均的池化,则局部的质量损失会被整体冲淡。我们曾尝试过不同的池化方法,比如说用最差的20%作为目标,但结果和主观数据的相关性会降低不少。有兴趣的朋友可以自己尝试一下。
第二,因为目前的VMAF模型是基于H.264压缩的视频训练的,有可能当应用于其他种类的编码器(特别是in-loop filter不同)的时候,会出现预测偏差。使用新的训练集应该能过解决这个问题。
第三,VMAF所使用的人眼视觉模型应该还有进步空间,比如基于对比度的遮罩效应的参数微调,都会对最后的结果造成影响。具体是哪种情况还要看实例。在这里希望大家能够把观测到的VMAF预测不准确的具体例子分享给我,以作为下一个版本VMAF改进的依据。
从另外一个方面来看,也有可能在特定条件下观测到的块效应并不能反映一个“平均用户”对画质的评分。VMAF预测的是平均用户(而不是专家)在3H(即观看距离是显示器高度的三倍)条件下的评分。如果场景是高速运动的场景,则时域的遮罩效应也会降低它们对用户体验的影响。这些都需要看情况具体分析。
LiveVideoStack:GitHub上VMAF项目(https://github.com/Netflix/vmaf/graphs/contributors)你的贡献量遥遥领先,怎么才能让更多的人参与到项目中?VMAF未来还会增加哪些功能?
李智:这可能一方面是由图像评价项目的性质决定的吧。对于系统性质的项目,每个用户都有具体的使用场景。他们可以比较容易的提出对系统通用性的改进并贡献代码。而对于VMAF而言,绝多数的用户都是把它当作一个黑盒使用。我们收到过很多的功能上(比如说支持Windows)以及运算速度提升(比如并行化)方面的贡献,但对于算法本身的改进还没有出现(在Issue里,已经有不少用户陈述了他们希望看到的改进,这也是重要的贡献)。我建议VMAF的用户如果没有时间贡献算法的话,可以从贡献corner case开始,即提供VMAF预测不符合主观实验的实例,这是我们下一个版本改进的重要依据。此外,如果能够贡献数据集的话就更好了。数据集可以是训练一个特定领域VMAF模型的数据(比如游戏视频,动画视频)。
LiveVideoStack:”My greatest aspiration has always been bridging the gap between theory and practice. I am most passionate about applying analytical skills in solving real-world engineering problems.” ,你在LinkedIn上如此描述自己,我尝试理解下“理论付诸实践,解决真实世界的工程问题”,尤其在音视频领域,用数字技术记录真实世界,并描述人的主观感受,这样的挑战更大吧。
李智:这可能是每一个理工男的梦想吧,用数学来理解世界:)
LiveVideoStack:有没有对你影响非常大的一个人、一本书或是一部电影?
李智:近期读完了Daniel Kahneman的Thinking, Fast And Slow,讲的是人的思考模式和理性模式之间的差异。这本书非常难读,前后断断续续花了我半年的时间,但读完之后收获颇丰,让我更能理解人们日常的一些非理性行为。这对于我做质量算法的研究也有很大的指导作用,比如:讲Two Selves的章节就和时域的池化联系紧密。
LiveVideoStack:关于在LiveVideoStackCon2019北京上的分享,有哪些可以剧透的?
李智:看项目进展吧。除了对VMAF进行科普之外,可能可以分享一些VMAF在Netflix应用的实例。另外一个关键词:HDR。
LiveVideoStack:以下是一些关于VMAF的问题:VMAF对小分辨率的图像质量判定有改善计划吗?VMAF到现在为止,都只有luma 会影响最终的VMAF分数,对于Chroma 的支持有什么计划(https://github.com/Netflix/vmaf/issues/100)?
李智:另外,对于小分辨率的视频,VMAF的置信区间一般会比较大,即结果不如大分辨率的视频可靠。这主要是因为VMAF针对了Netflix的视频,其小分辨率视频的密度比较低。我还是建议用户能根据使用情况训练自己的模型。
是的。我们正在做一个包含Chroma版本的VMAF。Stay Tuned。
————————————————
版权声明:本文为CSDN博主「LiveVideoStack_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/vn9PLgZvnPs1522s82g/article/details/92856579
「视频云技术」你最值得关注的音视频技术公众号,每周推送来自阿里云一线的实践技术文章,在这里与音视频领域一流工程师交流切磋。