HEVC-帧间预测

  •  AMVP

主要是利用相邻块的相关性,因为运动向量不会突变。

  • AMVP对象列表的构造

最初5个向量来自三类:

1.来空间相邻的3个运动向量

2.3个空间相邻向量的中值

3.一个来自co-located缩放的向量

对这个5个向量,还要重新排序,最有可能的放到第0个位置,还要去除一些冗余的对象。大量实验

最终,只有两个对象,来自:

1.从相邻5个中选出两个
2.当相邻空间5个不可用或者是一样的时候,从两个时间co-lated的向量中选择一个
3. zero motion vectors when the spatial, the temporal or both candidates are not
available

  • Spatial Candidates

向量的缩放仅仅当当前图像的参考图像和这个candidate图像的参考图像同时是短期参考图像是,才进行。 向量需要根据时间上参考图像和当前图像的距离(POC值差),进行缩放。缩放的公式如下:

  •  Temporal Candidate

 原理:由于当前块的右边和下面还没有解码,所以无法参考。就利用参考帧相同位置co-located的右边和下面的块的向量。

通过(sps/slice_temporal_mvp_enabled_flag)来决定是否使用时间参考向量。

上图c0代码右下,c1是中间。

  • AMVP的码流信息

1.inter_pred_idc,表明是否使用一个list0或者list1,或者都使用

2.ref_idx_l0/1, 表明使用的参考帧。

3.mvp_l0/1_flag, and its MVD,用来计算MV

4.MV (x; y),是一个candidates的index,预测参考向量

  • Inter-picture Prediction Block Merging

why:为什么要有这个模式?

answer:对于突然运动的物体,如果不引入无效的边界话,4分法块划分无法捕捉的运动向量。

  •  Merge Candidate List Construction

来自如下的两个:

1.从5个空间block中,选择4个作为merge candidates.
2. 从两个时间co-located块中,选择一个作为merge candidate.
• additional merge candidates including combined bi-predictive candidates and
zero motion vector candidates

  • Spatial Candidates

如上图,A1 is added to the list if available. Then, the candidates at the positions B1, B0, A0, and B2 are processed in that order. 

进行冗余检查,从如下的两个方面:

1.avoid having candidates with redundant motion data in the list

 Given the order of
{A1, B1, B0, A0, B2}, B0 only checks B1, A0 only A1 and B2 only A1 and B1

给定的顺序,B0检查B1,A0检查A1,B2仅仅与A1和B1比较。
2.prevent merging two partitions that could be expressed by other means which
would create redundant syntax

A1:

A1 can only be added into the list if the current PB, corresponding to X in Fig. 5(a), is not the left block of a CB vertically split into two partitions (PART−N×2N or PART−nL×2N or PART−nR×2N partitions in Fig. 2).

B1:

the candidate at position B1 can only be added into the list if the current PB is not the bottom block of a CB horizontally split into two partitions (PART−2N×N or PART−2N×nU or PART−2N×nD partitions in Fig. 2).

如果不遵循上述规则,这会形成2Nx2N的PU,带有相同的运动向量。

  • temporal Candidates

The temporal merge candidate includes one or two MVs depending on their availability in the collocated PU. The position of the temporal PB associated with the collocated PU is derived the same way as for AMVP

  • Additional Candidates

• Combined bi-predictive candidates


• Zero motion vector candidates

  •  Merge Motion Data的码流语法

 merge_flag:表明是否是Merge Motion

merge_idx :表明使用哪一个candidate

(five_minus_max_num_merge_cand):表明最多有多少个candidate

Skip模式:

• the CU only contains one PU (2Nx2N partition type)
• the merge mode is used to derive the motion data (merge_flag equal to 1)
• no residual data is present in the bitstream

  • Motion Estimation Regions

Typically, parallel motion estimation is performed such that all the MVs of PUs inside a region are estimated in parallel. Let us call these regions used for parallel motion estimation motion estimation regions (MER).

为了计算一个PU的运动信息,在同一个MER中其他的PU的运行信息不被使用。

  •  Fractional Sample Interpolation

为什么要进行分数像素的差值,因为运行在整数像素的位置是不准确的。HEVC对于半像素采用对称的8抽头滤波器,对于1/4像素采用非对称的7抽头滤波器。

  • Weighted Sample Prediction

 In principle, WP replaces the inter prediction signal P by a linearly
weighted prediction signal PO D w P C o, where w is an Illumination
Compensation weight and o is an offset

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值