VTM3.0代码阅读:xEstimateMvPredAMVP函数

本文深入探讨了VTM3.0编码器中xEstimateMvPredAMVP函数在inter_ME模式下的作用,该函数用于获取相邻运动信息并构建AMVP列表,以确定最佳MVP,为运动估计提供起点。函数通过fillMvpCand建立AMVP候选,然后比较各候选的失真,选择最小失真的MVP并返回。
摘要由CSDN通过智能技术生成

AMVP运用于inter_ME模式的时候。
xEstimateMvPredAMVP进行AMVP,获得当前pu的相邻运动信息,构建AMVP列表,最终选择出最优的MVP。AMVP最终获得的MVP作为ME的起点。

xEstimateMvPredAMVP函数流程很简单:
fillMvpCand函数构建AMVP列表;
然后遍历列表中所有AMVP候选,通过xGetTemplateCost函数得到失真;
最终选择失真最小的AMVP候选,将其mvpIdx返回即可。

入口参数rcMvPred用来存储并返回AMVP最优的mvp,用于AMVP之后的ME。

void InterSearch::xEstimateMvPredAMVP( PredictionUnit& pu, PelUnitBuf& origBuf, RefPicList eRefPicList, int iRefIdx, Mv& rcMvPred, AMVPInfo& rAMVPInfo, bool bFilled, Distortion* puiDistBiP )
{
   
  Mv         cBestMv;
  int        iBestIdx   = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值