VTM中对于I帧的亮度和色度域分别进行compress和encode的问题

VTM为改善I帧的帧内预测,引入了DualITree,使得亮度和色度分量分别进行compress和encode。在I帧时,亮度和色度的CTU划分树不同,compressCtu和coding_tree_unit函数会根据DualITree情况进行亮度和色度的单独处理,从而提高编码效率和质量。
摘要由CSDN通过智能技术生成

VTM中对于I帧的亮度和色度域分别进行compress和encode的问题

在HM和JEM中,无论是I、B、P帧,对一个块的定义,就是这个块包含了对应位置处的Y/Cb/Cr所有分量
所以对这个块的compress过程和encode过程,色度和亮度域都是一步进行的。编码过程并不会刻意区分色度亮度分量,来分开处理亮度的和色度的compress和encode
这时的CTU划分为cu的划分树,无论是亮度还是色度分量,都是一样的不加区分的。一个cu或pu,就代表了Y/Cb/Cr的所有分量

VTM为了在帧内预测中,将块的色度分量和亮度分量的紧密联系划分开,为了对块的色度分量有更好的帧内预测效果,就有了现在VTM中的DualITree
DualITree也就是VTM中,对于I帧的亮度和色度分量,会分别进行xCompressCU和encodeCU,即I帧CTU的亮度和色度分量,拥有着完全不同的划分树,所以I帧的CTU,就有了亮度cu、亮度pu和色度cu、色度pu的分别

VTM中有一个函数isDualITree(),只有当当前帧为I帧,并且使用亮度色度二重树时,返回为true。此时就表明I帧的亮度和色度分量需要分开来处理

DualITree情况的考虑,在VTM编码端主要体现在三个地方:
compressCtu函数、coding_tree_unit函数、xCheckRDCostIntra函数

compressCtu函数中会对DualITree情况时的CTU,再进行一次色度域xCompressCU,以获得DualITree情况时chroma分量的cu划分,以及色度域的pu;
coding_tree_unit函数和compressCtu函数的情况类似&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值