当前课程知识点:多媒体技术基础 >  第四章 视频数据的压缩编码 >  4.4 H.265/HEVC >  4.4 H.265/HEVC

返回《多媒体技术基础》慕课在线视频课程列表

4.4 H.265/HEVC在线视频

下一节:4.5 基于率失真优化的编码模式选择

返回《多媒体技术基础》慕课在线视频列表

4.4 H.265/HEVC课程教案、知识点、字幕

我们首先来看一下

就是说关于它制定HEVC

他的一些目的

刚才我们说了

随着其实技术的发展

我们的视频

就是说

原来我们看的是标清

后来又两有2K到4K到8K

我们的就是说

清晰度

或者我们的分辨率

我们会越来越多

这时候我们先按照我们以前的标准

都主要是只知道

标清和高清

我们要支持这种超高清

需要我们一个更新的

更高效的

一个编码方法

这是第一个目的

第二个就是说

涌出了一些不断的出现一些新的

并行的一些技术设备算法

那么通过这些技术

可能会提高我们的编码的效率

降低我们实现的复杂度

至于这些目的就提出了这么一个

所谓的H265

或者说叫HEVC

就是说在SO里边

我们叫H265

那么就是说在ISO里边

我们叫HEVC

那么同样的

刚说了他也有一些范畴

那么对于H265范畴

主要是分成主要的

MAIN这一大

那么主要是它的取样结构

是4:2:0

那么每一个像素

它的量化比是8比特

那么是逐行扫描

这是它的一个主要特点

那么还有一个主要10

那么主要10在每像素的量化比特

那么由8比特变成了10比特

那么主要是在一些演播室里面

或者说将来我们的高清的时候

我们除了支持8比特

可能很多

还需要支持10比特

所以说专门有一个

主要10这么一个模式

那么还有一个是主要的针对静止主像

或者是静止画面

当然同样是4:2:0,8比特

那么当然是逐行

不包括帧间

因为它是一个针对静止图像的

这是关于他的目的

他的主要的prolife

那么对于HEVC来讲

它的编码器的框架

大概是这么一个框架

那么从这个框架

我们可以看的

其实我最初的

1990年的H201

其实主要的方面变化不大

主要的还是从三个方面来构成

第一个是关于变换编码

也就是我们的

关于我们的DCT

就这一部分

也就我们这一部分

这是我们的DCT这一部分

这是一个变换编码

那么还有一部分就是关于

帧间的运动补偿

带运动补偿的

一个帧间编码部分

也就是我们 DPCM

那么这是第二个主要的技术

那么第三个

主要是我们

针对你的这些获得这些结果

我们要进行一个无实证的熵编码

同样的这是我还知道那边也是

所以说大概来讲

对265来讲

还是一个混合编码

只是说这三部分

每一部分可能做得更加精细

或者说更加复杂

靠精细的复杂的技术

换取了相应的性能的提高

那么具体我们来看看

它到底采用了哪些技术

这三部分获得了一个

更好的结果

所以说它的技术特点

第一个就是说是一个灵活的编码结构

就是说它的宏块

我们从最早的我们的H264

是16×16

那么现在把它扩展到一个更大的宏块

就变成64×64

这样便于我们的高分辨率的视频

进行压缩编码

因为前面我们讲了

我们刚H65的一个主要目的

就是说我们要支持4K或者是8K

就这种高清晰度

高分辨率的图像

那么对于一个高分辨率图像来讲

它会有一个更大的尺寸

所以说它的相关的区域的面积

可能也会增加

那么所以说你要是处理的宏块

那么尺寸变大

可能你的效率就会提高

所以说带来更灵活的

编码结构

来提高我们的编码效率

其中包括我们的编码单元CU

以及我们的预测单元PU以及

我们的变化单元TU

这样通过三个单元的分离

那么使得我们的变换

我们的预测

我们的编码

各个处理环节更加灵活

因为它有相对的独立性

那么也有利于各个环节的来划分

更好的符合我们视频图像的一些

各自的特点

比如像文理特点

背景

还是对象

这样有利于为我们对各单元

采用更加优化的方法

来完成各自的工作

这是这么一个目的

那么另外一个特点

就说是一个灵活的快结构

那么对于一个也就是说

对一个帧间编码来讲

我们可以根据运动补偿块的大小

来确定你的变化快的大小

也就是当你变化块

具有

一定要自适应

调整能力

那么第二个同样的对

帧内我们可以根据

你帧内预测的残差的特性

来自身的调整

你的变化的大小

也就是帧间帧内

你的变化快的大小

其实都是可变的

而且都是基于某一个参数

来自适应的

那么对于一个大的块来讲

那么相对于一个小的块

可能在某些方面

可能会具有优势

比如说它可能会提供更好的能量集中度

对一个很大的尺寸

对一个高分辨率的图像来讲

那么你一个更大的块

你的能量集中度可能会更好

这样你可能压缩后

可能会保留更多的图像细节

提供一个更高的质量

但是另外一方面

就可能也会经过量化之后

也会带来更多的

因为你的面积大

你的块大

可能会带来

更多的这种帧内效应

所以说这样

我们就可以根据当前块的特性

你是帧内编码还是帧间编码

我们自适应的选择块的大小

你是选择一个非常大的

32×32的

还是选择一个非常小的

4×4的

这样做到在你的能量集中度

也就你的压缩性能方面

以及细节的保留程度方面

以及图像的损失

证明现象方面

来做到一个折中作用

获得一个更好的效果

那么我们怎么来组织这个块

实际上我们叫做

四叉树这么一个变化

也就我们根据这块

实际上是按四叉树来组织的

也就是一个块

我们给可以分田字形

把它分成4个字块

每1个子块

我们再分成4个子子块

所以这样构成1个树

我们有1个树根

那么有这个树根之后

我们可以分成4个树枝

那么这个树枝

再进一步

分子的树枝

这么不断来4分4分

一直分裂下去

那么一直到最后

你的树叶

根据你的树需要情况看

你划分成多少级

以及每一级

你是不是需要还继续往下分

可能有的只是分成4个块

有的还进一步的4个块

再进一步来分

所以说这是一个自适应的过程

刚才说了

根据你的帧的编码

帧间编码来选择

一个不同的大小

也就选择不同的树枝

以及树枝的深度

那么这是

另外一个就是说

关于帧间预测编码的改进

那么对于一个预测模式

就是说在做帧间预测的时候

那么bp的形状

分成了两种情况

那么第一个就是说是对称的运动划分

所谓的smp

另外一个呢是关于非对称的

一个划分amp

那么不同形状和大小的bp

可以更好的来近似

你一个物体的边缘

那么这样同样的

降低你的预测的误差

误差降低提高

可以反过来说

或者是从而来提高你的编码的

效率

所以说你可以看出来

那么这是对称的

那么这是上下对称

这是左右对称

那么这是一个田字形

当然这边就是一些

非对称的

可能是靠上面的

靠下面的

靠左边的

靠右边的

那么这样会有不同的形状

或者不同的大小

是会更匹配你的目标

这是关于

帧内预测编码的一个改进

那么另外一个对帧内预测编码

我们想希望提高我们预测的精度

预测精度的时候

我们就可以采用非整数像素

来进行内插

来获得一个更高精确度的图像

在更高精确度的图像来怎么样

我们来进行帧间预测编码

那可能会获得更好的效果

那么这地方就讲了

我们如何来进行一个

更高精度的非整数像素的内插

那么这些灰色的块

是表明我们已知的是物理上

整像素的位置

那么这些白色的位置

只是一些非整数项数

这是通过内插获得的

那么这是一个内插的公式

那么这个内插

其实我们就采用了7抽头

或者8抽头的这么一个滤波器

线性内插滤波器

通过7抽头或者8抽头的线性插滤波器来

获得这些非整数位置的

它所对应的值

那么在两个物理

我们可以内插出三个出来

比如像这个水平方向

我们知道这个知道这个

那么中间这三个

我们可以把它插出来

这样它的精度

就可以提高到1/4像素

那么原来我们精度物理上的精度呢

那么我们最想是一个像素

那么现在就可以虚拟出来

1/4像素出来

通过计算

那么这是关于1/4像素

内插

以及它所用的

滤波器它的系数

那么另外一个同样的对帧内预测编码

我们也可以做一些改进

包括h264

那么相比

那么它呢

当然还包括像以前一样

包括直流

包括平面

包括方向滤波

这么三个

三种类型的预测

但是预测的方向

要比原来增加很多

那么现在有33个方向

那也就是说你可以看出来

那么是非常密集的一些方向

在各个方向

我们都来做预测

当然一个非常密集

那么在某些角度

非常小的时候

你可能就会没有

真实的像素值存在

这时候同样的

我们需要一个亚像素

来进行内插

可能他可以做到1/3

精度的像素

这样可以每一个方向

可能会更精确的来来进行预测

另外一个就是说

帧内变换编码

那么以前的时候

可能支持的种类相对比较少

那么现在我们支持了

更多的这种变化编码的

块的大小

包括4×4

8×8 16×16

以及32×32

共这么4种

那么其中标准里面规定了

32×32这种变化矩阵

那么其他的三种

可以通过这个

来进行取样

来获得

16×16

8×8

4×4

这就是关于变换编码

那么另外一个

还采用了一些其他的

因为对于同样压缩来讲

因为我们主要采用DCT这种快变化

所以它的失真

主要是一些快效应

如何来降低这些块效应的影响

所以也采用了一些技术

比如说包括 S A O就是说

采样点自适应偏移

那么这个通过对重建图像的分类

对每一类图像的像素值

加减一个

偏移of sight

然后达到减少你区域内像素

平均失真的目的

这样来提高我们的编码效率

所以说经过实验或经过仿真

我们知道大概得这么一个

结果

就是说对经过SAO之后

我们的平均码流

可以减少2%到6%

我们所付出的代价是什么

我们付出的代价

我们的消耗可能会2%

增加2%的

这是关于这个

那么另外一个

我们就称为ALF就是说自适应

的环路滤波

那么这样来

进一步来减少我们的这种

产生的块效应

那么通过恢复重建图像

来达到你的重建图像

或你原始图像之间的

均方误差MSE

那么达到最小

那么这个ALF是

在帧级

就在一帧这个级别上面

来进行计算和传输的

比如说在整个帧里边

我们来应用这个A R F

当然也可以基于快

或者基于一个量化速度

一个部分区域

来进行ALF处理

但是相应的

你会需要增加一些附加的

一些指示信息

指示你哪些区域

来涉及到了ALF这个操作

那么这是关于就是说

它采用的一些

技术方面的一些情况

那么另外一个

刚才我们也说了

其实我们还要考虑到并行化

方面的一些发展

所以说也考虑一些并行的技术

那么随着我们从单核往多核

从2个核到4个核

到8个核的一些

这些发展

那么为了适应这种并行的发展

通过HEVC又引入了一些并行的思路

包括比如像TILE

所谓的TILE

就是我们

就是说把一些

沿着垂直或水平的边界

将图像的划分成一些行

或者一些列

那么这些矩形的区域

我们就称为一个TILE

那么每一个TILE

可能包含整数的一个LCU

可能包括12345 12 13

包括那么TILE之间

可以互相独立

也就是说

这些TILE之间

可以并行的处理

这样可以采用并行技术

来提高我们的效益

这是第一个

那么另外一个就是说

关于Entropy Slice

那么允许在一个

原来我们已经划分成一些Slice

在Slice内部

我们可以再进一步来进行

划分成多个Entropy Slice

那么每一个Entropy Slice

可以进行独立的编码和解码

这样同样的也可以你可以想象

提高它的并行能力

这是一个

那么还有下一个就是说

采用WPP所谓的波前

并行处理

也就是说呢

当你的

上一行的

第二个

比如对行行来讲

假如我们现在在这一行

那么你在上一行的第二点

第二个LCU处理完毕之后

我们就可以对当前行的这个LCU

那么进行一些

就是说

我们的熵编码的状态参数的初始化

所以说这样就可以

就是说我在处理

不需要等着第一行

完全处理完了

我才能处理第二行

那么在第一行只要是处理掉第二个

我就第二行就可以开始

因为我们的第二行就是说的处理

其实是基于我们过去的

已经处理过的一些信息

所以说对我们的当前行

当前LCU来讲

那么我们只或我们同一行的

左边的这些LCU以及上一行的

那么这个左上角的LCU

可能会有更大的关系

所以这样可以就是说

大家基本上是一个

同步的

略微往后延迟一点

的一个并行的处理

那么相对于我们

以前的H264

那么H265

当然它的算法的复杂性

会有大幅度的提高

刚才也讲了

其实主要的架构

还是一个混合编码

但是通过这种技术的复杂性

来获得我们更好的一个压缩性能

所以说它采用的一些

改进的技术

大概可以列出看到这个表里边

那么第一个

你可以看它的宏块

或者说它的编码块的大小

我们原来只是从4×4~16×16

现在可能进一步4×4

到64×64

那么中间可能还有32×32

还是之类的

所以说它的范围比原来更大

以及对量度差值

我们原来只是有1/2像素或1/4像素

现在有1/2像素1/4像素

以及另外一个1/4

不同的内插方程的一个像素

以及对 mvp

对我们的运动矢量的预测这个方法

那么以前我们只有空域的Mvp的预测

那么现在除了空域之外

我们还有实域

以及一些平均的mvp

以及这些mvp的一个融合

以及对亮度的一个预测

那么原来可能我们只有几种模式

4×4 8×8 16×16

可能只有9种

那么现在刚才说了

可能有34种角度的预测

以及包括其他的

包括我们的平面

以及包括我们的 DC

直流的预测

以及对亮度的帧内的预测

也是一样

以前我们可能只有直流

或水平或垂直以及面

那么现在可能会

提供了更多的模式

那么刚才我们也说过

对变化来讲

以前只是有DCT 4×4 8×8

那么现在有DCT的

4×4 8×8 16×16

以及32×32

那么这是DCT

同时提供了另外一个变换

就是DST就是说离散正弦变换

那么我们的DCT是离散余弦变换

他也说了

在某些场合下面

在某种情况下

可能DST

可能比DT可能会获得更好的

这个效果

所以说提供这么一个

4×4的DST方式

当然还有一些去块项的技术

因为以前可能是有一些技术

那么现在采用一些更复杂的技术

来获得一个更好的主观的改善

多媒体技术基础课程列表:

第一章 概述

-1.1 概述

--1.1 概述

-第一章 作业

--第一章 作业

第二章 视觉特性和视频基础

-2.1 光和彩色

--2.1 光和彩色

-2.2 视觉特性

--2.2 视觉特性

-2.3 扫描

--2.3 扫描

-2.4 模拟彩色电视信号

--2.4 模拟彩色电视信号

-2.5 数字电视信号

--2.5 数字电视信号

-第二章 作业

--第二章 作业

第三章 数据压缩的基本技术

-3.1 信息熵理论

--3.1 信息熵理论

-3.2 率失真理论

--3.2 率失真理论

-3.3 预测编码

--3.3 预测编码

-3.4 序列图像中运动矢量的估计

--3.4 序列图像中运动矢量的估计

-3.5 具有运动补偿的帧间预测

--3.5 具有运动补偿的帧间预测

-3.6 正交变换编码

--3.6 正交变换编码

-3.7 子带编码

--3.7 子带编码

-3.8 量化编码

--3.8 量化编码

-3.9 熵编码

--3.9 熵编码

-第三章 作业

--第三章 作业

第四章 视频数据的压缩编码

-4.1 基于帧的视频编码

--4.1 基于帧的视频编码

-4.2 视频压缩编码国际标准

--4.2 视频压缩编码国际标准

-4.3 H.264/AVC

--4.3 H.264/AVC

-4.4 H.265/HEVC

--4.4 H.265/HEVC

-4.5 基于率失真优化的编码模式选择

--4.5 基于率失真优化的编码模式选择

-4.6 恒定速率编码器的速率控制

--4.6 恒定速率编码器的速率控制

-4.7 压缩编码算法性能的评价

--4.7 压缩编码算法性能的评价

-第四章 作业

--第四章 作业

第五章 音频数据的压缩编码

-5.1 概述

--5.1 概述

-5.2 人的听觉特性

--5.2 人的听觉特性

-5.3 音频信号编码方法

--5.3 音频信号编码方法

-第五章 作业

--第五章 作业

第六章 多媒体传输网络

-6.1 多媒体传输对网络的要求

--6.1 多媒体传输对网络的要求

-6.2 网络对多媒体信息传输的支持

--6.2 网络对多媒体信息传输的支持

-第六章 作业

--第六章 作业

第七章 多媒体同步与数据封装

-7.1 多媒体数据及其时域特征的表示

--7.1 多媒体数据及其时域特征的表示

-7.2 分布式多媒体系统中的同步

--7.2 分布式多媒体系统中的同步

-7.3 连续媒体同步的基本方法

--7.3 连续媒体同步的基本方法

-7.4 广播应用的传输层协议

--7.4 广播应用的传输层协议

-7.5 宽带应用的传输层协议

--7.5 宽带应用的传输层协议

-第七章 作业

--第七章 作业

4.4 H.265/HEVC笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。