【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帧间预测论文笔记》系列博客,目录见:http://www.cnblogs.com/DwyaneTalk/p/5711333.html

2012 Picture Coding Symposium May 7-9, 2012
以最小决策代价来进行贝叶斯决策,判断对于当前CU是否进行四叉树划分。代价是RD值,每个块选取3个值作为特征。
核心公式:

W是决策分类,
分别表示划分和不划分。
(1)
(1)式为naïve bayes的公式,
、
、
依次是类条件、先验和后验(似然)概率。

(2)
(2)表示决策代价,
表示应该决策为Ws而实际是Wn的代价,其他类似。

(3)、(4)式为最终的决策表达式。决策如下:

对于特征F,可以表示图像的特征很多,算法中从下面6个中间选择3个:
A、fvar :The variance of mode Inter_2Nx2N prediction errors in current CU
B、fsatd:The sum of absolute transformed difference (SATD) between original and prediction of mode Inter_2Nx2N
C、fvsatd :The variance of 4 SATDs (The prediction errors of mode Inter_2Nx2N is split into 4 sub-squares and calculate SATD on each sub-square)
D、fmvg:MV magnitude(就是MV的模)
E、fp:Percentage of coefficients cost in RD cost。就是
中拉格朗日系数lamda
F、frdc:RD cost of mode Inter_2Nx2N
从A~F的6个特征中选择3个,是通过贪心的sequential forward selection (SFS) algorithm 来选择使互信息量MI最大的3个特征f。

I(F:W)就是互信息量MI。在5个1080p的测试序列上,计算不同f的MI如下表:
根据表格可以看出,最优的三个特征是fvar、fp和fvsatd。所以最终选择这三个组成决策表达式中的F。
fvar、fp和fvsatd都量化成10个取值,所以F有1000个取值,
相应有2000个取值,所以
是通过特定的方法进行off-line估计,然后存在查找表(LUT)中。
则是一个和QP、图像分辨率、CU划分深度等有关的判断阈值。通过测试2个1080p和2个WVGA的视频序列,计算其中的
值,然后保存在另一个LUT里。

算法流程:

算法简述:
1、Initialize Bayesian threshold in (6) with the QP and resolution settings.
2、RDO process starts from one LCU with CU_depth=0;
3、For the current CU_depth, try mode Inter_2Nx2N, and calculate the feature vector F=[f
var, fp, fvsatd] online;
4、For a feature F, find the class-conditional probability according to pdf p(F|wi) i∈{N, S} in the LUT. Make a decision according to (6). If the Non-SPLIT decision is made, proceed to step 5); otherwise, set CU_depth as CU_depth+1, and then return back to step 3) to perform the RDO process of the four sub-CU;
5、Perform RDO on mode Inter_2NxN, Inter_Nx2N and Intra_2Nx2N (Inter_NxN and Intra_NxN) to decide the optimal mode of the current CU.
6、Exit the RDO process and encode the LCU.
实验结果:(HM4.0rc1,4个测试序列,Rand Access和Low Delay两种HM的configuration)
【HEVC帧间预测论文】P1.5 Fast Coding Unit Size Selection for HEVC based on Bayesian Decision Rule的更多相关文章
- 【HEVC帧间预测论文】P1.7 Content Based Hierarchical Fast Coding Unit Decision Algorithm
Content Based Hierarchical Fast Coding Unit Decision Algorithm For HEVC <HEVC标准介绍.HEVC帧间预测论文笔记> ...
- 【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 ...
- 【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 ...
- 【HEVC帧间预测论文】P1.9 Coding Tree Depth Estimation for Complexity Reduction of HEVC
Coding Tree Depth Estimation for Complexity Reduction of HEVC <HEVC标准介绍.HEVC帧间预测论文笔记>系列博客,目录见: ...
- 【HEVC帧间预测论文】P1.1 基于运动特征的HEVC快速帧间预测算法
基于运动特征的 HEVC 快速帧间预测算法/Fast Inter-Frame Prediction Algorithm for HEVC Based on Motion Features <HE ...
- 【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 ...
- 【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 ...
- 【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帧间预测论文笔记>系列博 ...
- H.264学习笔记3——帧间预测
帧间预测主要包括运动估计(运动搜索方法.运动估计准则.亚像素插值和运动矢量估计)和运动补偿. 对于H.264,是对16x16的亮度块和8x8的色度块进行帧间预测编码. A.树状结构分块 H.264的宏 ...
随机推荐
- android广播接收器
Android程序创建广播接收器继承BroadcastReceiver Android广播接收器需要在AndroidManifest.xml文件中声明: <recevie android:nam ...
- hdu2552
点击打开链接 思路: 1.tan(a+b) = ( tan(a) + tan(b) ) / (1 – tan(a) * tan(b) ) 2.tan( atan(x) ) = x arctan(1/s ...
- function.py
#文档字符串 def square(x): 'calculates the square of the number x' return x*x square.__doc__ help(square) ...
- 【USACO06NOV】路障
[题目链接] 点击打开链接 [算法] 最短路 [代码] #include<bits/stdc++.h> using namespace std; #define MAXN 5000 #de ...
- phpstorm 10 初体验
一:安装phpstorm 10 去phpstorm 10官网下载,安装 https://www.jetbrains.com/phpstorm/ 按照提示安装,最后注册步骤,选择“License ser ...
- 依赖倒置原则DIP&控制反转IOC&依赖注入DI
依赖倒置原则DIP是软件设计里一个重要的设计思想,它规定上层不依赖下层而是共同依赖抽象接口,通常可以是上层提供接口,然后下层实现接口,上下层之间通过接口完全透明交互.这样的好处,上层不会因依赖的下层修 ...
- Vue Router的配置
1.beforeEnter function requireAuth (route, redirect, next) { if (!auth.loggedIn()) { redirect({ path ...
- Java 8的Lambda学习
参考资料:https://www.dotnetperls.com/lambda-java Lambdas用于创建函数对象.通过它们,我们可以在其它方法内部指定方法,甚至可以把方法做为参数传递给其它方法 ...
- k8s-部署dashboard1.10.1-十七
一.获取镜像和填坑 我的k8s是1.13.1,这里dashboard用的1.10.1: 由于国内不能访问Google,而且大部分人可能也没有其他途径访问:只能在阿里云或者其他镜像网站上获取了: 镜像获 ...
- 为什么linux有足够的内存还进行swap?
1.Linux在内存被用完之前开始交换.这是为了提高性能和响应能力: 性能提高是因为一些内存放磁盘缓存比方内存更合适.因此,最好将一个已经停用了一段时间的程序交换出去,而将经常使用的文件保存在缓存中. ...