日内瓦会议 2015.10 19~21 h266
JVET-A1001 JEM平台相关算法简介
作者
依然是高通 三星 微软 intel 以及德国亚琛工业大学主导
Author(s) or
Contact(s):
Jianle Chen
Qualcomm Inc.
Elena Alshina
Samsung Electronics
Gary J. Sullivan
Microsoft Corp.
Jens-Rainer Ohm
RWTH Aachen University
Jill Boyce
Intel
Email:
cjianle@qti.qualcomm.com
elena_a.alshina@samsung.com
garysull@microsoft.com
ohm@ient.rwth-aachen.de
jill.boyce@intel.com
简介
在HEVC基础上设计的一些新特性(未纳入HEVC标准)
块结构
最大编码单元划分到256x256
最大变换单元划分到64x64
添加QTBT技术 Quadtree plus binary tree (QTBT) block structure
intra预测技术
65种预测方向
intra预测中的4-tap插值滤波
边界滤波器除水平垂直方向外适用于其他方向
CCLM预测 Cross-component linear model (CCLM) prediction
PDPC Position dependent intra prediction combination (PDPC)
自适应的参考样点平滑
inter预测技术
sub-PU级别的运动搜索
AMVR Locally adaptive motion vector resolution (AMVR)
OBMC Overlapped block motion compensation
LIC Local illumination compensation
Affine motion prediction
Pattern matched motion vector derivation
Bi-directional optical flow (BIO)
变换
Explicit multiple core transform
Mode dependent non-separable secondary transforms
Signal dependent transform (SDT)
熵编码
对上下文模型做了适当修正
对概率估计作了修正
以上技术除QTBT都将要集成到JEM中(H266参考软件)
JEM技术简介
更大的CU 更大的TU
添加默认256x256的最大CU
添加64x64的TU,为了减少运算,只保留左上角低频的32x32 其他区域全部置为0
我的理解是:高频信息被去除了 对高分辨率下超级平坦区域会有用,对低分辨率几乎没用,例如大块的白墙这些压缩率会超高
QTBT
在四叉树基础上有添加二叉树划分
这个技术就是可以将CU划分为矩形而不是先前的方形
原因是:先前CU划分为PU有矩形,然后再从CU划分TU,这样有模式太多的赶脚,不如直接将CU划分成矩形
划分步骤:首先进行四叉树划分,然后再四叉树节点上进行二叉树划分,所谓二叉树就是在水平方向对切成两个矩形块,或者在垂直方向上对切成两个矩形块,不断递归划分。这就是为啥叫QTBT 先四叉树划分 再进行二叉树划分。
估计未来的提案各种m叉树都会提了,不过四大厂一般会拒掉,除非他们自己提。
intra预测
- 由原来的33种预测方向扩展到65种加上DC、planar 就是67种预测模式
方向果然是多多益善 - 增加4-tap插值滤波
要不要测试个最优的插值抽头系数个数啊,大家赶紧了~~~ - 由原来只是对水平、垂直模式进行边界滤波 扩展到对其他方向上也进行边界滤波
- 跨组建预测
别被名字忽悠了,就是色度模式如何继承亮度模式
添加了色度残差直接的预测,非常类似3D-HEVC的ARP啊,看来色度模式由很多提案可以造了 - PDPC
就是intra预测的参考像素点与参考像素点的距离有关系,类似于一种根据参考位置像素点的加权预测
感觉意义不是很大,传的参数太多,具体看优化性能吧 - 自适应的参考像素平滑
inter预测
- 基于子块的运动矢量预测
更高级的时域运动矢量预测:就是将当前PU划分为子块,这些子块对应的时域mv就可以预测当前的运动矢量
STMVP:空域时域运动矢量预测,比较绕,拿到空域块的mv,貌似还需要拿到其第一个参考帧的对应时域mv做一些scale、平均操作 - AMVR
自适应mv精度,每个CU的mv可以只用整数mv表示 或者用1/4精度mv表示
还是为了省1/4精度mv表示的那点bits - OBMC
H.263的技术,重叠处(可以简单理解为PU之间的边界处)的运动补偿 - LIC
Local Illumination Compensation (LIC)
可以理解为对预测块进行加权 P’= a *P +b
a和b通过预测块P的周边像素预测得到 - 运动矢量预测
有两种方式根据周边块的运动矢量来拟合一个新的运动矢量进行预测当前的运动矢量。
pmv看来还是多多益善 - Pattern matched motion vector derivation
类似于MERGE模式,但是与MERGE模式是二选一 - BIO
Bi-directional optical flow
大体是根据光流对B预测块作了修正,与LIC冲突
变换
- 自适应选择多种变换核
可以选择多种变换核,区别于以前的MDDT、RDOT技术 - 第二次变换改变方式
先前是M = DCT*R 然后再 M*DCT’
现在更改为将M划分为4x4的小块 分别进行变换
这种方式仅限于intra - SDT
熵编码
对变换系数的编码,概率预测、初始化模型等作了修正
JEM根据HM16.0修改得到
HEVC reference software, https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/tags/HM-16.6/.
JEM reference software, https://jvet.hhi.fraunhofer.de/svn/svn_HMJEMSoftware/.