【视频编码\VVC】多样化视频编码工具了解

除了通用编码工具,VVC还针对特定特性的全景视频、屏幕视频开发了特定的编码工具。

全景视频编码

360度全包围视角的球面视频。为了采用传统的视频编码,全景视频需要转换为平面视频,经纬度等角映射(ERF)、立方体映射(CMP)是常用的格式。

水平环绕补偿

ERP格式全景视频的左右边界是连续的,所以当编码到参考图像边界的时候,可以使用图像右侧像素对左侧像素进行填充。适用于其他左右边界连续的格式,如等面积映射。

水平环绕偏移值:

offset = W-pps_pic_width_minus_wraparound_offset*MinCbSizeY

虚拟边界取消环路滤波

多面投影是将球面全景视频投影在多个平面上,为了采用平面视频编码算法,通常将多个面拼接成一个矩形图像,但是不可避免会出现在某些相邻投影面之间出现图像内容不连续现象。如果对这些不连续边界使用环路滤波,会在重建视频中出现拼接伪影。VVC允许对边界禁用环路滤波。

屏幕内容视频编码

是一种特殊的视频类型,由计算机生成。不受物理限制,不存在传感器噪声,常含有更少的颜色类型、更多的重复图形、更锐利的物体边缘,场景切换也在屏幕内容视频中频繁出现。

帧内块复制(IBC)

不再将参考区域限制在相邻像素行,可以利用当前帧所有已编码区域,预测待编码CU。

使用块矢量(block vector,BV)来面熟当前CU与匹配区域的位移。

IBC Merge模式的块矢量候选列表通过空域块矢量和历史块矢量构建,记为bvCandList。按照空域块矢量、历史块矢量、零值块矢量来维护。

VTM中的编码端IBC运动搜索使用了两种模式:哈希搜索和指定局部搜索范围。

为了降低复杂度,对帧内块复制的参考区域进行了限制,只有位于当前CTU及当前CTU左侧的CTU的部分区域可以作为参考区域。

变换跳过模式的残差编码

直接对CU的预测残差进行量化和熵编码。与之相关,熵编码与非变换跳过模式有区别。只对宽和高都小于MaxTsSize的CU使用。

块差分脉冲编码调制

H.265中PCM模式,编码器直接对CU的像素值进行量化熵编码,不经过预测和变换模块、

VVC中,针对屏幕内容,采用了块差分脉冲编码调制(BDPCM)模式,对完成帧内预测后,直接进行量化,然后对量化预测残差按预测方向进行差分脉冲编码。

  • 使用帧内预测的水平模式或垂直模式得到预测值,预测过程使用未滤波的参考像素
  • 求亮度值与预测值的差,得到预测误差。对预测误差进行量化,得到预测误差的量化值
  • 根据预测方向,对预测误差的量化值进行差分编码。

调色板模式

屏幕视频的像素值经常集中在少量颜色。在调色板模式下,编解码端维护一个称为调色板的颜色列表,当像素值等于或接近调色板中的某一颜色时,编码端只需要编码该颜色索引。可以使用长度较短的调色板完成像素信息描述,提高编码效率。

  • 通过简化的K聚类方法初步生成调色板:计算当前点与当前调色板中每个颜色的SAD,找到调色板中与当前样点SAD值最小的颜色,作为当前样点的预测值,SAD作为预测误差
  • 对调色板进行进一步调整:通过率失真决策,判断是否使用调色板预测列表中的某个颜色作为聚类中心
  • 对调色板颜色重新排序:生成调色板索引表

需要对调色板进行维护和更新,对调色板索引的编码类似系数编码,按照系数组(CG)进行编码,可以采用水平扫描模式或垂直扫描模式进行。

  • 编码调色板:编码复用标志列表,来描述预测列表中的颜色是否在调色板中出现,对不在预测列表中的颜色数量,依次编码各颜色
  • 编码调色板索引:遍历每个系数组中每个位置的索引
  • 更新预测列表:简历空的新预测列表,并将当前调色板中的颜色依次加入新预测列表。

自适应色度变换(ACT)

VVC针对4:4:4颜色格式(削弱颜色失真效应)的视频,使用颜色转换模块,将视频信息转换到YCgCo颜色空间,进行变换、量化、熵编码等操作。

YCgCo颜色空间的优点

  • 具有接近KL变换的编码性能
  • 与RGB颜色空间的转换可逆
  • 支持有损压缩和无损压缩
  • 只包含移位和加法运算,计算复杂度低

因为颜色空间分量的动态范围不同,所以量化参数需要进行相应调整。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值