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. Android 代码设置RelativeLayout元素居中

    RelativeLayout relativeLayout= new RelativeLayout(this); RelativeLayout.LayoutParams rlp=new Relativ ...

  2. skynet源码阅读<4>--定时器实现

    昨天和三石公聊天,他提到timer的实现原理,我当时迟疑了一下,心想timer不是系统底层时钟中断驱动上层进程/线程,累积计时实现的么?他简述了timer的实现,什么堆排序,优先级队列等,与我想象的不 ...

  3. 如何使用BMap.Point传递变量、存储数据?

    在开发中使用到了百度地图进行开发,用于展示企业位置.由于数据量庞大,如果使用marker,将会造成界面卡顿,处理慢的问题. 在查看百度地图API示例是发现了海量点这个东西,还别说对于大数量的点加载起来 ...

  4. [Selenium] 操作 警告框、提示框、确认框

    以如下页面为例: http://sislands.com/coin70/week1/dialogbox.htm 示例代码: pachage com.learningselenium.normalweb ...

  5. 【转】implements百科

    implements是一个类,实现一个接口用的关键字,它是用来实现接口中定义的抽象方法.实现一个接口,必须实现接口中的所有方法.   中文名 实现 外文名 implements 意    思 类实现一 ...

  6. Spring注解的(List&Map)特殊注入功能

    一.先看一个示例演示:spring注解的一个特殊的注入功能. 首先,是定义一个接口,3个实现类. public interface GreetService { public String sayHe ...

  7. ul下的li浮动,如何是ul有li的高度

    此时ul展示的界面为: ①给ul加上一个样式,display:inline-block; <html> <head> <title>float</title& ...

  8. 连接mysql报错-Can't connect to MySQL server on

    1.问题: 在Windows 上远程连接数据库报错-Can't connect to MySQL server on... 但是重启系统后就可以连接: 2.这种原因大致是因为系统缓冲区空间不足或列队已 ...

  9. IBATIS sql 小于(<) 写法 特殊符号写法

    SELECT * FROM XXX where  column1  <![CDATA [ < 100 ]]> ************************************ ...

  10. (水题)洛谷 - P1149 - 火柴棒等式

    https://www.luogu.org/problemnew/show/P1149 一开始还分类重复了.在非0的dfs中居然赋值了0,脑残得一笔. 其实就按 $lead0$ 分类就好了, $lea ...