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而实际是W的代价,其他类似。

(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的更多相关文章

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

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

  2. 【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 ...

  3. 【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 ...

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

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

  5. 【HEVC帧间预测论文】P1.1 基于运动特征的HEVC快速帧间预测算法

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

  6. 【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 ...

  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. H.264学习笔记3——帧间预测

    帧间预测主要包括运动估计(运动搜索方法.运动估计准则.亚像素插值和运动矢量估计)和运动补偿. 对于H.264,是对16x16的亮度块和8x8的色度块进行帧间预测编码. A.树状结构分块 H.264的宏 ...

随机推荐

  1. oracle:程序后台提示Io异常: The Network Adapter could not establish the connection)

    今天要用tomcat部署一个系统,windows环境下,oracle和程序在一台机器上. 在配置jndi时,直接写成 jdbc:oracle:thin:@127.0.0.1:1521:orcl.启动程 ...

  2. Java 给Thread传递参数

    一开始我想把run()函数写成有参函数来传值,后来发现行不通.经过查找,最终用如下方法传递了参数: 也就是用另外一个有参函数setTar()传递参数. 调用的时候用这4行code传递参数: 上面是用i ...

  3. BZOJ_2017_[Usaco2009 Nov]硬币游戏_博弈论+DP

    BZOJ_2017_[Usaco2009 Nov]硬币游戏_博弈论+DP Description 农夫约翰的奶牛喜欢玩硬币游戏,因此他发明了一种称为“Xoinc”的两人硬币游戏. 初始时,一个有N(5 ...

  4. caffe 入门实例2 如何写一个模型

    占坑,记录如何写一个基于lenet5的模型,并进行测试.

  5. File System Programming --- (一)

    About Files and Directories The file system is an important part of any operating system. After all, ...

  6. Codeforces703B Mishka and trip

    题意: 就是有n个点,本来相邻点之间就有一条边,1和n之间也有一条,然后给你几个特殊点,说这些特殊点和其他所有点都连起来了,然后算一个所有边的权值和,每条边的权值等于两个点的c相乘. 思路: 水题啊- ...

  7. hdoj1028;他们说这题叫dp...

    #include<cstdio> #include<string> #include<iostream> #include<vector> #inclu ...

  8. PTA 水...

    习题4-2 求幂级数展开的部分和 (20分) 已知函数e^x可以展开为幂级数1+x+x2/2!+x3/3!+⋯+xk/k!+⋯1+x+x^2 /2! + x^3 /3! + \cdots + x^k ...

  9. bzoj 5499: [2019省队联测]春节十二响【堆】

    首先看两条链怎么合并,贪心可得是从大到小取max,多条链同理 所以dfs合并子树的大根堆即可,注意为了保证复杂度,合并的时候要合并到最长链上,证明见长链剖分 #include<iostream& ...

  10. 键值编码 KVC

    http://www.cnblogs.com/dyf520/p/3805297.html 1,什么是Key-Value Coding? Key-Value Coding是一种间接访问对象属性的机制,使 ...