0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于主观感兴趣区域的视频编码技术详细解析

LiveVideoStack 来源:LiveVideoStack 作者:谭嵩 2020-08-10 16:35 次阅读

本文由芒果TV音视频技术专家谭嵩在LiveVideoStackCon2020线上峰会的演讲内容整理而成,结合芒果TV的工程化研发实践经验,对基于主观感兴趣区域的视频编码技术进行了详细解析。

大家好,本次分享我将结合芒果TV音视频技术研发团队的实践,对主观感兴趣区域的视频编码技术进行详细解析。内容包括以上四个部分,其中会重点介绍我们在主观感兴趣区域编码工程化中遇到的一些问题与思考。 1 5G背景下,视频运营平台的新挑战

随着5G时代的到来,用户对于视频画质体验的要求越来越高,如4K、8K、高帧率、HDR等。广电总局对电视播出的4K超高清视频规范的要求是视频码率大于100兆。互联网视频应用对此还没有规范性的标准,但为了达到合格的播放体验要求,视频码率也将呈现出成倍增长的趋势,这就导致视频运营平台短期内在CDN成本、用户播放卡顿两方面会面临更加严峻的挑战。

面对上述挑战,我们最容易想到的方法就是通过压缩效率更高的下一代视频编码标准,如AV1、VVC等,有效降低成本。但就目前情况来看,这些标准其实还不具备大规模商用的生态环境,真正能够支持硬件解码的设备其实非常的少。另一方面,内容感知编码以及拐点参数在国内外各大视频平台已经得到普遍的应用。在这种情况下,我们需要的是挖掘更多的工具或手段,极限压榨编码的码率。 2 人眼主观感兴趣关注的特点 2.1 人眼的视觉过程

人眼的视觉过程大致为视网膜成像,大脑接收信息并做出初步的分析,产生视觉注意力聚集,并且最后对重点区域做关注。例如,人在开车过程中,前方的道路和车辆就是主观关注和感兴趣区域,周边的区域就是非关注区域。

2.2 主观感兴趣区域数据的提取

主观感兴趣区域数据集一般是通过眼动仪获取。眼动仪是记录眼动行为的一套设备,它包括一幅特殊的眼镜,一个记录模块,一套控制软件,一套数据分析软件。其中控制软件是非常重要的一个组成部分,因为它要对观看的对象和眼部行为数据做精密的同步,数据分析软件就是后期对数据做清洗分析。

使用眼动仪获取ROI大数据要注意这样几点问题:首先使用眼动仪收集数据的成本比较高,且更为重要的是人力的投入,因为需要有一定基数的参与量,数据才具有客观意义;其次是数据的可靠性,一个经验并不丰富的测试人员,很可能在测试过程中会给自己某些心理暗示,导致记录的行为并非自然状态下的真实行为,也就是说最后取得的数据很可能是无效的;最后,第三点就是数据清洗。 3 主观感兴趣视频编码的工程应用 3.1 设计背景

基于感兴趣区域的视频编码是利用人眼主观存在感兴趣区域和非感兴趣区域的特点,我们对主观感兴趣区域和非感兴趣区域的码率分配做一定的修正,将更多的码率分配到主观感兴趣区域,从而在主观上提升视频质量。这是感兴趣区域视频编码的理论设计,在工程上官方版本的x264、x265编码器并没有这样的设计,即对于一个x264编码器或者x265编码器来说,视频的每个画面中的每个像素都是同等重要。因此我们需要对编码器做一个工程化的开发,来实现不同像素的权重差异化,目标是达到同等码率提升主观质量或者同等体验降低码率,降低运营成本。 3.2 ROI编码器实现架构设计

我们在编码的两个阶段做了ROI的处理,分别是视频的前处理以及视频编码的过程。 前处理阶段主要是做ROI区域的增强,即图像层面的增强,同时对非ROI区域图像层面,进行降噪、磨皮等处理。做过视频编码的朋友应该清楚,高频其实对编码是不太友好的,低频则对编码更加友好。非ROI区域进行降噪、磨皮之后,更多的就变成了相对友好的低频区域。那么在同等的PSNR或者客观指标下,码率会有明显的降低。 视频编码阶段,我们主要是通过AQ调整QP值,实现码率分配的修正。也就是说对不同的主观感兴趣区域和非感兴趣区域做不同的QP调整, QP越小,质量越好,码率也会越高;QP越大,宏块得到的码率越小,画质越差。通过这样一个调整,实现ROI的权重调整。 3.3 ROI区域的定义

ROI编码并不是一个很新的概念,之前就有中心区域ROI、人脸ROI、字幕ROI等。 中心区域ROI是基于经验的判断,在正常视频的拍摄手法上通常会将最重要的内容放在画面最中间。人脸ROI其实也是基于这样的经验判断,一般来讲人物往往是视频内容中的主角。 字幕ROI是非常重要的一个方面,我们做过一个主观的调研:完全同样的视频画面,分别提供不同清晰度的字幕进行主观盲测。最终结果是:认为“字幕清晰”的视频是“画质更好”视频的,占比明显更高。 基于深度学习的ROI区域识别是当前更有效的手段。 3.4 深度学习的ROI的识别技术

基于深度学习的ROI的识别在技术上分为两类,一个是基于感兴趣区域的热度图检测,另外一个是显著对象分割。通过实践理解,在应用场景上我们认为这两者是有一定差异性的。我们认为感兴趣区域的热度图更适合长视频剧集类型的节目,显著对象分割则更适合真人自拍小视频等场景。 3.4.1 显著对象分割

显著对象分割为什么会更适合真人直播或者真人自拍小视频? 真人直播或者真人自拍小视频通常来说有这两个特点:第一是前景在画面中面积的占比一般较大;第二是前景和背景相关性比较弱,且前景的内容重要性具有绝对的地位。以此可以也必须对背景做比较多的图像细节丢失和编码压缩,来提升前景显著区域的画面质量。 3.4.2 感兴趣区域热度检测

剧集类长视频节目的特点是画面的整体相关性更强、画面存在多点位ROI区域,因此不能类似于真人小视频一样过度的衰减非ROI区域来补偿ROI区域,需要用较多的非ROI区域来补偿较小的ROI区域,这样非ROI区域的衰减在主观上也不明显。感兴趣热度图符合这个需求特点。 3.5 第一版ROI编码工程化实现过程

这是我们在ROI编码工程化过程中实现的第一个版本。首先实现的是对一个ROI元素的处理。我们从原图分析得到ROI的热度图,然后对热度图做二值化处理并且膨胀后腐蚀到可控的阈值范围内的ROI面积占比。最后我们做了一个宏块级的数据结构化,因为最终要映射到编码宏块上去,这里有一个阈值参数,是我们要控制好ROI区域和非ROI区域的面积占比。面积太小,ROI增强的效果不太明显,但是面积过大,由于ROI区域画质提升是以牺牲非ROI区域的细节或质量实现的,这会导致非ROI区域的质量下降非常明显、如果进一步下降达到主观产生厌恶感的阈值,会吸引注意力到这些糟糕的、突兀的画面上,ROI编码的目的就没有达到。

在工程化实现上,我们对x264、265编码器做了一个ROI的编码实现。编码器读取当前帧的ROI分析结果元数据,在视频编码器中通过AQ实现对QP的修正,ROI区域的QP会降低,编码质量会提升,同时码率也会消耗的更多。整帧码率控制依然由x264和x265原生的码率控制算法负责。 3.6 二值ROI的失败case

做完第一个版本之后,我们发现,由于这是一个二值ROI,ROI区域和非ROI区域是0和1的区别,导致ROI和非ROI区域的非平滑过渡在衔接处会有一个明显的画质对比跳变(QP值跳变)。第二个问题是我们对非ROI区域的QP调整是交回给x264和x265编码器原生的码率控制,由于我们对ROI区域的QP调整破坏了原生码率控制算法的数学关系,所以部分场景出现非ROI区域的渣感现象。这是两个失败的case。 3.7 灰阶ROI迭代版本

因为上述两个失败的case,我们进一步提出了一个迭代版本灰阶ROI。灰阶ROI实现的是ROI和非ROI区域之间一个ROI强度的灰度过渡,所以QP会有一个平滑的调整,避免两个区域边缘质量差距过大,形成一个突兀的画质对比。 3.7.1 灰阶ROI的计算过程

灰阶ROI码率控制的计算过程:我们的计算目标是得到一个QP的修正值QP’,Sij是我们对应宏块的一个灰阶的ROI值,也就是我们刚才这里ROI的一个灰度的数值,范围是0到255。p%其实是ROI区域的面积占比,b%是ROI区域的码率的占比,也就是说我们在p%面积占比的ROI区域上给予了b%的码率。目前我们采用的数值p是20%,b是30%,会对20%的面积修正给予30%的码率。同时对非ROI区域的QP做了反向的主动修正。

通过这个迭代版本实现了ROI和非ROI区域画质的平滑过渡,同时非ROI区域渣感明显降低。 3.8 效果评估

这段视频是最终送给编码器指导ROI编码的ROI灰阶图数据的真实示例。为了更加清晰和直观,这个示例中非ROI区域我们做了一个灰度视频显示,ROI区域还是原来的彩色显示。

上图是ROI编码和非ROI编码的实际效果对比图。其中ROI编码的版本降低10%码率,在这个条件下,主观质量依然高于非ROI编码版本。 4 问题和挑战

我们在最后继续向行业抛出这个不算很新的话题 — ROI编码视频质量的机器评价,目前我们主要还是通过人工的方式进行一些主观评价。在批量化自动生产条件下,如何做好ROI编码视频质量的机器评价,是非常具有挑战和价值的一项工作。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 视频编码
    +关注

    关注

    2

    文章

    101

    浏览量

    20756
  • 5G
    5G
    +关注

    关注

    1323

    文章

    46697

    浏览量

    518569
  • 音视频技术
    +关注

    关注

    0

    文章

    43

    浏览量

    11579
收藏 人收藏

    评论

    相关推荐

    使用labview做个测试架,有感兴趣的朋友面议。

    感兴趣的朋友面议。
    发表于 10-15 23:27

    有攻城狮对python感兴趣的吗?

    感兴趣的吗?
    发表于 12-21 15:50

    基于视觉感兴趣区的图像质量评价方法

    区域具有视觉选择特性与客观图像质量评价方法结合起来,提出基于视觉感兴趣区的图像质量评价方法。该方法通过分析影响视觉兴趣性的亮度、灰度
    发表于 08-11 09:58 16次下载

    基于JPEG2000感兴趣区域自适应水印算法

    感兴趣区域(ROI)的自适应水印算法。该算法结合了感兴趣区域编码特点及HVS 特性,在量化的ROI 区域中筛选高频系数实现水印嵌入,使嵌入图保持良好的视觉
    发表于 08-15 10:24 14次下载

    一种适合JPEG2000编码的动态感兴趣区域提取算法

    感兴趣区域(ROI)编码标准的基础上,提出了一种基于形态学的动态JPEG2000的ROI提取方法.利用形态滤波器组与分水岭分割算法将LLN小波子带图像划分为若干闭合区域,再利用区域纹理特征来判定LLN小波子带图像的ROI以及生成LLN子带的二值模板,
    发表于 02-21 16:29 28次下载
    一种适合JPEG2000<b>编码</b>的动态<b>感兴趣</b><b>区域</b>提取算法

    一种图像的感兴趣区域提取方法

    区域生长方法得到感兴趣区域的提取方法。实验结
    发表于 05-09 15:40 83次下载
    一种图像的<b>感兴趣</b><b>区域</b>提取方法

    视频感兴趣区域快速提取与编码算法

    视频感兴趣区域快速提取与编码算法_刘鹏宇
    发表于 01-05 15:23 0次下载

    基于圆形感兴趣区域多路视频实时拼接

    视频拼接过程中面临的许多挑战,如实时性、有动态物体产生鬼影现象等,提出了一种基于圆形感兴趣区域( ROI)图像配准结合简化处理及图形处理器(GPU)加速的方法。首先,仅在ROI内提取特征点
    发表于 12-11 15:23 1次下载
    基于圆形<b>感兴趣</b><b>区域</b>多路<b>视频</b>实时拼接

    如何使用感兴趣区域和RS编码机制的QR码美化算法

    感兴趣区域,进而影响美化效果的问题,提出基于感兴趣区域和RS编码机制的QR码美化算法。首先提出改进的基于多特征感兴趣区域检测算法,进而用此方法得到背景图的显著
    发表于 01-17 13:39 21次下载
    如何使用<b>感兴趣</b><b>区域</b>和RS<b>编码</b>机制的QR码美化算法

    具有感兴趣区域的静止图像压缩编码算法研究

    区域很容易被遗忘,而对突变和极不规则变化的区域感兴趣。采用嵌入式零树小波编码及算法,通的区域和不感兴趣区域分别进行编码,可以达到充分利用信道资源和存储空间、提高
    发表于 12-01 08:58 2908次阅读

    基于JPEG2000标准的感兴趣区域编码

    技术和嵌入式编码技术一EBCOT,它不但提高了压缩比,而且提供了很多新编码方法。感兴趣区域编码(ROI)便是新编码方法之一。ROI 编码不仅较好地保持了图像
    发表于 12-01 11:49 3574次阅读

    如何用MATLAB实现感兴趣区域ROI的选取

    感兴趣区域,并进行保存的MATLAB程序,有需要的可以参考。本文根据统计目标区域与背景区域的特征这个应用写的。
    发表于 12-01 13:45 3.3w次阅读

    如何用opencv实现感兴趣区域ROI的选取

    感兴趣区域(Region of Interest, ROI)的选取,一般有两种情形:1)已知ROI在图像中的位置;2)ROI在图像中的位置未知。
    发表于 12-01 14:22 3.5w次阅读

    如何使用OpenCV和Python从图像中提取感兴趣区域

    感兴趣区域(ROI)。 在之间的文章中,我们完成了图像边缘提取,例如从台球桌中提取桌边。使用了简单的OpenCV函数即可完成
    的头像 发表于 02-07 14:42 889次阅读