5.2.7 复合类型

作者:chai51
出处:https://www.cnblogs.com/chai51
版权:本文版权归作者和博客园共有
转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任

引言

复合类型解码确定复合预测使用的混合方式,包括简单平均、距离加权、Wedge mask、Inter-Intra混合和差异加权。不同的复合类型适用于不同的场景,能够提高预测精度。

源码说明: 本文档基于作者自己编写的AV1解码器Python实现,所有代码示例和实现细节均来自实际可运行的源码。源码仓库:GitHub - av1_learning


复合类型解码概述

位置: src/tile/tile_group.py - __read_compound_type()

规范文档: 5.11.29 Read compound type syntax

功能说明

确定复合预测使用的混合方式,包括5种不同的复合类型。

复合类型

  • COMPOUND_AVERAGE: 简单平均,两个预测块的平均值
  • COMPOUND_DISTANCE: 距离加权,根据参考帧时间距离加权
  • COMPOUND_WEDGE: Wedge mask混合,使用wedge形状的mask
  • COMPOUND_INTRA: Inter-Intra混合,结合帧间和帧内预测
  • COMPOUND_DIFFWTD: 差异加权,根据预测块差异加权

解码流程

if isCompound:
    if is_interintra:
        compound_type = COMPOUND_INTRA
    else:
        compound_type = read_S(av1, 'compound_type')
        # 0: COMPOUND_AVERAGE
        # 1: COMPOUND_DISTANCE
        # 2: COMPOUND_WEDGE
        # 3: COMPOUND_DIFFWTD

总结

复合类型解码确定复合预测使用的混合方式。不同的复合类型适用于不同的场景,能够提高预测精度,是AV1帧间预测的重要技术。


参考资源:

上一篇: 运动模式解码
下一篇: 运动向量缩放

posted @ 2026-01-10 07:53  chai51  阅读(1)  评论(0)    收藏  举报