基于运动特征的 HEVC 快速帧间预测算法/Fast Inter-Frame Prediction Algorithm for HEVC Based on Motion Features

《HEVC标准介绍、HEVC帧间预测论文笔记》系列博客,目录见:http://www.cnblogs.com/DwyaneTalk/p/5711333.html

上海大学学报(自然科学版)第19卷第3期。

利用当前深度CU与时域对应位置已编码CU的亮度像素值的差值平方和均值来判断当前CU的运动特征。属于A类算法

ASSD:Average Sum of the Square Difference

核心公式:

2N表示当前CU的尺寸,CUCur(I,j)和CUCol(I,j)分别表示当前和时域对应位置CU块中(i,j)位置的亮度像素值。

ASSD越大,说明时域相邻CU的差值越大,则表示运动越剧烈。

ASSDX表示已编码(应该是当前帧中已编码)CU中最佳深度为X(0~3)时的ASSD的值。即ASSDX只考虑最佳编码深度为X的CU,其他参数含义如ASSD。

ASSDnotX表示已编码CU中最佳深度大于X(X+1~3)时的ASSD的值。于是ASSDnotX包含ASSDx+1~ASSD4。

ThSkip表示已编码CU中最佳深度大于X的所有CU的ASSD的均值。如果当前CU块深度X下的ASSD大于ThSkip,说明当前CU块运动比较剧烈,所以就不需要对深度X下的各种PU预测模式进行计算和判断,直接跳到下一个深度X+1进行更小尺寸的CU判断。式中b为调节参数,文中取1.2。取值越大,对应的ThSkip越大。

ThStop表示已编码CU中最佳深度为X的所有CU的ASSD的均值。如果当前CU块深度X下的ASSD小于ThStop,说明当前帧已经编码的CU中最佳深度为X的所有块的平均较平滑,因为可以认为当前CU块处于平缓区。对于平缓区的CU,就不继续进行更深度的CU划分判断。其中a为调节参数,文中取0.8。a越小,则对应ThStop越小

核心判断:

由定义可知,一般ThSkip是大于ThStop的,当ASSD处于二者之间时,图像处于运动适中区。算法加速优化主要针对运动剧烈区和运动平缓区,对于运动适中区,并不能进行加速。需要合理的控制ThSkip和ThStop的大小。如果[ThStop,ThSkip]区间太大,加速效果不好,如果[ThStop,ThSkip]区间太小,导致大量判断为运动剧烈和运动平缓区域,容易产生误判,影响图像质量。所以需要合理控制a,b的值,文中指出一般要ThSkip > 2*ThStop。

算法流程:

主要步骤如下: (文中说明了不考虑非对称的PU模式)

1、计算当前 CU 的 ASSD, 并根据已编码 CU 的信息(ThSkip和ThStop), 判断当前 CU 的运动特征;

2、若当前 CU 处于运动剧烈区且其深度小于 MaxDepth, 则跳过当前 CU 所有预测模式的计算, 进入下一深度 CU 的编码,因为这种情况下认为当前深度的所有PU模式都不是最优的,所以就不进行尝试; 若当前 CU处于运动剧烈区且编码深度等于 MaxDepth, 则需要对 Skip, 2N × 2N , N × 2N , 2N × N 以及 N × N 等模式进行预测, 并计算率失真代价值;

3、若当前 CU处于运动适中区且编码深度小于 MaxDepth, 则对除Skip 和 N × N 模式之外的其他模式进行率失真代价值的计算; 若当前 CU 处于运动适中区且编码深度等于 MaxDepth, 则跳过当前 Skip 模式, 对 2N × 2N ,N × 2N , 2N × N 以及 N × N 模式进行率失真代价值的计算;

4、若当前 CU 处于运动平缓区, 则不再继续划分,因为此时认为CU划分深度已经足够了,不需要进一步划分了.

实验结果:

【HEVC帧间预测论文】P1.1 基于运动特征的HEVC快速帧间预测算法的更多相关文章

  1. 【HEVC帧间预测论文】P1.9 Coding Tree Depth Estimation for Complexity Reduction of HEVC

    Coding Tree Depth Estimation for Complexity Reduction of HEVC <HEVC标准介绍.HEVC帧间预测论文笔记>系列博客,目录见: ...

  2. 【HEVC帧间预测论文】P1.3 Fast Inter-Frame Prediction Algorithm of HEVC Based on Graphic Information

    基于图形信息的HEVC帧间预测快速算法/Fast Inter-Frame Prediction Algorithm of HEVC Based on Graphic Information <H ...

  3. 【HEVC帧间预测论文】P1.8 Complexity Control of High Efficiency Video Encoders for Power-Constrained Devices

    参考:Complexity Control of High Efficiency Video Encoders for Power-Constrained Devices <HEVC标准介绍.H ...

  4. 【HEVC帧间预测论文】P1.7 Content Based Hierarchical Fast Coding Unit Decision Algorithm

    Content Based Hierarchical Fast Coding Unit Decision Algorithm For HEVC <HEVC标准介绍.HEVC帧间预测论文笔记> ...

  5. 【HEVC帧间预测论文】P1.6 A Fast HEVC Inter CU Selection Method Based on Pyramid Motion Divergence

    A Fast HEVC Inter CU Selection Method Based on Pyramid Motion Divergence <HEVC标准介绍.HEVC帧间预测论文笔记&g ...

  6. 【HEVC帧间预测论文】P1.5 Fast Coding Unit Size Selection for HEVC based on Bayesian Decision Rule

    Fast Coding Unit Size Selection for HEVC based on Bayesian Decision Rule <HEVC标准介绍.HEVC帧间预测论文笔记&g ...

  7. 【HEVC帧间预测论文】P1.4 Motion Vectors Merging: Low Complexity Prediction Unit Decision

    Motion Vectors Merging: Low Complexity Prediction Unit Decision Heuristic for the inter-Prediction o ...

  8. 【HEVC帧间预测论文】P1.2 An Efficient Inter Mode Decision Approach for H.264 Video Codin

    参考:An Efficient Inter Mode Decision Approach for H.264 Video Coding <HEVC标准介绍.HEVC帧间预测论文笔记>系列博 ...

  9. 知识图谱-生物信息学-医学顶刊论文(Bioinformatics-2021)-MSTE: 基于多向语义关系的有效KGE用于多药副作用预测

    MSTE: 基于多向语义关系的有效KGE用于多药副作用预测 论文标题: Effective knowledge graph embeddings based on multidirectional s ...

随机推荐

  1. oracle监听器启动,实例启动

    1,su - oracle登录oracle用户 2,sqlplus / as sysdba登录oracle 3,show parameter service_names; 若正常输出servicena ...

  2. Python中的sort() key含义

    sorted(iterable[, cmp[, key[, reverse]]]) iterable.sort(cmp[, key[, reverse]]) 参数解释: (1)iterable指定要排 ...

  3. [Selenium] Explicit wait 方法

    (1)  new WebDriverWait(driver, 10). until(ExpectedConditions.elementToBeClickable(locator)); (2)  ne ...

  4. 如何给lemon开无限栈

    进入终端 输入"ulimit -s unlimited" 输入"lemon" 把lemon源程序拖进来,接着在弹出的lemon界面上操作即可.

  5. Python 函数的参数传递

    C/C++中,传递参数的类型是可以指定的.一般来说,传递参数可以分为两种:值传递和引用传递.对于值传递,参数传递的过程中进行了复制操作,也就是说,在函数中对参数的任何改动都不会影响到传入的变量:对于引 ...

  6. ASP.NET Core Web API + Angular 仿B站(二)后台模型创建以及数据库的初始化

    前言: 本系列文章主要为对所学 Angular 框架的一次微小的实践,对 b站页面作简单的模仿. 本系列文章主要参考资料: 微软文档: https://docs.microsoft.com/zh-cn ...

  7. Django学习:模板继承和配置静态文件

    一.模板继承 目的是:减少代码的冗余 语法: {% block classinfo %} {% endblock %} 具体步骤: 1.创建一个base.html文件,2.把要显示的页面的内容写在这里 ...

  8. jdbc 连接 sqlserver 学习

    使用sqljdbc.jar 连接sqlserver 下载网址: http://www.drv5.cn/sfinfo/8228.html#softdown package test_sql_server ...

  9. Luogu P2114[NOI2014]起床困难综合症 【贪心/位运算】By cellur925

    题目传送门 所以NOI的题现在简单惹? 30分做法:枚举开始的权值,n²过掉. 100分做法:竟然是贪心qwq.因为我们的计算背景是二进制下,所以我们贪心地想让每一位都是1.我们现在需要解决的问题,就 ...

  10. Win10各个版本免费激活密钥

      专业版:W269N-WFGWX-YVC9B-4J6C9-T83GX 企业版:NPPR9-FWDCX-D2C8J-H872K-2YT43 家庭版:TX9XD-98N7V-6WMQ6-BX7FG-H8 ...