当前位置: 首页 > news >正文

av1编码--非方向帧内预测

目录4.3 非方向帧内预测1. DC_PRED预测模式2. SMOOTH系列预测模式3. PAETH_PRED预测模式4.3 非方向帧内预测除了方向帧内预测之外AV1 还定义了 5 种非方向帧内预测模式来模拟图像块的平滑区域。这 5 种非方向预测模式分别是DC_PRED、SMOOTH_PRED、SMOOTH_H_PRED、SMOOTH_V_PRED和PAETH_PRED。1.DC_PRED预测模式在DC_PRED预测模式中AV1 使用当前变换块的左侧和上方参考像素的平均值来生成预测像素值。在DC_PRED预测模式下预测像素生成过程具体描述如下如果当前变换块的左侧和上方参考像素AboveRow[0:W-1]和LeftCol[0:H-1]均可用那么否则如果当前变换块的左侧参考像素LeftCol[0:H-1]可用那么否则如果当前变换块的上方参考像素AboveRow[0:W-1]可用那么否则如果AboveRow[0:W-1]和LeftCol[0:H-1]均不可用那么2.SMOOTH系列预测模式预测模式SMOOTH_V_PRED和SMOOTH_H_PRED分别沿垂直和水平方向使用二次插值方式生成预测值而预测模式SMOOTH_PRED则使用SMOOTH_V_PRED和SMOOTH_H_PRED的二次插值结果的平均值生成预测值。用于二次插值的参考像素包括来自顶部和左侧的参考像素以及右上角和左下角的参考像素。具体来讲SMOOTH_V_PRED使用顶部参考像素AboveRow[col]和左下角像素LeftCol[H-1]的加权平均作为预测值。SMOOTH_H_PRED使用左侧参考像素LeftCol[row]和右上角参考像素AboveRow[W-1]的加权平均作为预测值。SMOOTH_PRED则使用LeftCol[row]、AboveRow[col]、AboveRow[W-1]和LeftCol[H-1]这 4 个参考像素的加权平均作为预测值。图4-12所示为4x8变换块在SMOOTH_PRED预测模式下的预测像素和参考像素之间的位置关系。图4-12 SMOOTH_PRED预测模式下的预测像素和参考像素之间的位置关系在预测模式SMOOTH_V_PRED、SMOOTH_H_PRED以及SMOOTH_PRED下AV1 首先根据当前变换块的宽度W和高度H使用表 4-3 中的水平和垂直权重对应关系选择合适的权重数组。表 4-3 中列出的权重数组是通过二次函数 yax^2bxc 拟合得到的其中y是待预测像素位置的权重x是待预测像素距离参考像素的距离a,b和c是拟合参数。由于权重smWeightsX和smWeightsY是通过二次函数拟合得到的因此预测像素值可以视为使用二次插值来生成的。表 4-3SMOOTH_PRED的水平和垂直权重选择方式水平方向权重smWeightsX垂直方向权重smWeightsYlog₂WsmWeightsXlog₂HsmWeightsY2Sm_Weights_Tx_4x42Sm_Weights_Tx_4x43Sm_Weights_Tx_8x83Sm_Weights_Tx_8x84Sm_Weights_Tx_16x164Sm_Weights_Tx_16x165Sm_Weights_Tx_32x325Sm_Weights_Tx_32x326Sm_Weights_Tx_64x646Sm_Weights_Tx_64x64对于SMOOTH_V_PRED预测模式预测值p[col][row]的计算方式如下对于SMOOTH_H_PRED预测模式预测值p[col][row]的计算方式如下对于SMOOTH_PRED预测模式预测值p[col][row]的计算方式如下3.PAETH_PRED预测模式在PAETH_PRED预测模式中AV1 使用顶部参考像素AboveRow[col]、左侧参考像素LeftCol[row]和左上角参考像素AboveRow[-1]来生成预测值p[col][row]。图4-13为PAETH_PRED预测模式中参考像素的位置示意图。图4-13 PAETH_PRED预测模式中参考像素的位置示意图之后PAETH_PRED预测模式按照下述公式来生成预测值p[col][row]也就是说PAETH_PRED预测模式从参考像素AboveRow[col]、LeftCol[row]和AboveRow[-1]中选择与base值最接近的参考像素作为预测值。这种非线性的预测像素生成方式可以控制预测方向使其与具有最高相关性的纹理方向对齐。为了传输非方向帧内预测AV1 仍然使用语法元素intra_frame_y_mode和uv_mode来指明亮度和色度的非方向帧内预测模式
http://www.gsyq.cn/news/1374456.html

相关文章:

  • UE5 Niagara实战:用粒子碰撞事件做个简单的“雨滴落水”特效(附完整蓝图)
  • 海尔智能家居设备接入HomeAssistant:打造一体化智能家居控制中心
  • Unity物体世界坐标实时保存到TXT的稳健方案
  • Windows Server 2019真实渗透实战:从WebShell到域控的完整红队链路
  • Java NIO 中断引擎:AbstractSelector 源码深度剖析与可中断阻塞机制
  • Java NIO.2 异步基石:AsynchronousChannelProvider 源码深度剖析与 SPI 架构哲学
  • JoyCon-Driver 多控制器管理:同时连接4个 JoyCons 的配置指南
  • 如何为Tesla-Menu添加自定义覆盖?终极开发者入门指南
  • Shannon AI:面向业务流的自动化渗透测试工具
  • PC微信客户端增强实战:基于UI Automation的合规消息观测方案
  • Unity热更新实战:YooAsset与HybridCLR协同落地指南
  • Unity军事场景模块化搭建:战壕、地堡与掩体的工业化管线
  • 渗透测试入门实战:从信息收集到权限提升的完整链路
  • ImageSearch部署指南:从开发环境到生产环境的完整迁移策略
  • 小型本地LLM框架在教育领域的应用与实现
  • 机器学习赋能银河系考古:CatBoost模型高精度预测恒星年龄
  • 别再等电池报废!用Python+Sklearn,仅需100次循环数据就能预测电池寿命(附完整代码)
  • UniShopX部署与运维指南:Docker容器化与生产环境配置
  • Godot 4.2小课堂:用TileMap图层和AStarGrid2D,5分钟搞定一个可交互的2D导航Demo
  • XLASSO:高维稀疏建模在极端事件尾部预测中的原理与实践
  • 融合物理与AI:基于DtN映射与FEM的椭圆型PDE反问题自监督求解框架
  • 【表达式】JAVA解析数学表达式 parsii 计算数学公式 表达式规则引擎 动态脚本语言
  • Elastic stack 技术栈学习(七)—— kibana中索引的基本操作(创建、删除、更新、查看)以及文档的基本操作
  • 华硕天选一代无线网卡断网
  • 电子信息工程专业打工人的蓝桥杯嵌入式竞赛时记
  • Armv9 SME架构FMOP4A指令:混合精度矩阵运算优化
  • 【配置】Navicat连接sqlServer
  • 反向散射通信:无电池物联网的低功耗革命
  • stable diffusion秋叶整合包安装时报错No Python at ‘“D:\python\python.exe‘请按任意键继续. . .人工智能画画AI绘图报错解决
  • Go-File安全加固手册:防止未授权访问的8个关键配置