H266/VVC软件VTM9.3源码阅读——帧内亮度预测estIntraPredLumaQT

摘要:本文分析帧内亮度预测函数estIntraPredLumaQT的函数结构和描述该编码过程

前言

      在做帧内优化前,需要掌握帧内编码详细过程,并了解其相关函数的结构,下面记录近期的工作内容。

预测过程

1.initIntraPatternChType //初始化像素

      (1)获取参考像素(长和宽为原来的2倍),如果边缘的的参考像素不够,利用已存在的像素进行复制填充

      (2)对参考像素进行滤波处理

2.predIntaAng //计算预测值

      (1)根据模式的类进行一下类型别的预测:

               Planar、 DC、 BDPCM 、IntraAng(其他角度模式)

3.xFracModeBitsIntra//有待填坑.......

4.updateCandList//根据cost更新候选列表

     (1)根据输入计算好的哈达玛变换后的SAD和fracModeBits(不太理解这个参数)的cost进行排序,更新,得到最优的N个候选列表

5.updateCandList//根据HadSad更新候选列表

     (1)根据输入计算好的哈达玛变换后的SAD值进行排序,更新,得到最优的N个候选列表

说明:根据输入的候选列表和新补充一些参考列表不断更新候选列表:

第一次:遍历2~67(偶数)mode,执行函数2、3、4、5,比较哈达玛变换后的SAD和SATD,选择最优的N个mode,更新得到list0

第二次:遍历list0以及其相邻的mode中,执行函数2、3、4、5,比较哈达玛变换后的SAD和SATD,选择最优的N个mode,更新列表得到list1

第三次:遍历list1及初始MPM的mode中,执行函数2、3、4、5,比较哈达玛变换后的SAD和SATD,选择最优的N个mode,更新列表得到CandmodeList

第四次:遍历CandmodeList, 引入多参考线,比较哈达玛变换后的SAD和SATD,选择最优的N个mode,更新CandmodeList。

第四次:遍历CandmodeList及MIP技术,比较哈达玛变换后的SAD和SATD,选择最优的N个mode,更新,并缩减部分模式,CandmodeList

第五次:遍历CandmodeList并在可使用ISP的模式中,比较哈达玛变换后的SAD和SATD,选择最优的N个mode,更新,得到CandmodeList

最终的率失真代价模式:

       使用上一步骤初选得到的候选列表进行重新排序,非MIP和非ISP在前,其他的在后,然后遍历,计算和比较他们的率失真代价(经过预测,变换,量化,熵编码的效果),得到最优的mode。

流程图:      

 

 

更新中。。。。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值