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. 【转】Java数字抽奖游戏核心代码

    1. [代码][Java]代码    package com.luiszhang.test; import java.util.Arrays; /** * NumberLotteryGame * 一个 ...

  2. 用 javascript 操作 xml

    1. [代码]js代码     <script language="JavaScript"><!--var doc = new ActiveXObject(&qu ...

  3. oracle:block 的 water mark问题

    看了小布老师关于block里面数据存储的high water mark的实验,自己也做了一遍. SQL> create table x(i int,name varchar(20)); Tabl ...

  4. 常用文件操作模块json,pickle、shelve和XML

    一.json 和 pickle模块 用于序列化的两个模块 json,用于字符串 和 python数据类型间进行转换 pickle,用于python特有的类型 和 python的数据类型间进行转换 Js ...

  5. 第四届蓝桥杯C++B组省赛

    1.高斯日记 2.马虎的算式 3.第39级台阶 4.黄金连分数 5.前缀判断 6.三部排序 7.错误票据 8.翻硬币 9.带分数 10.连号区间数

  6. Python之路,Day13 - 堡垒机

    项目实战:运维堡垒机开发 前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多人觉得,堡垒机就是跳板机,其实这个认识是不全面的,跳板功能只是堡垒 ...

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

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

  8. input required字段;django input输入框不填写会自动变红如何修改

    前端页面中,input不输入任何内容时,点击submit时,未填写的input会标红框,有些人还会有"该字段必填的字样"!! 什么鬼,你妹的,js也见不到,css3动画也见不到,怎 ...

  9. 【WIP】iOS UIKit

    创建: 2018/04/10 更新: 2019/02/19 原来忘记分类,把此博文归入ios应用开发                            

  10. (水题)洛谷 - P1051 - 谁拿了最多奖学金

    https://www.luogu.org/problemnew/show/P1051 这个根本就不用排序啊…… #include<bits/stdc++.h> using namespa ...