HEVC(H.265)的技术亮点
图
1
编码单元(
CU
)、预测单元(
PU
)、变换单元(
CU
)
作为新一代视频编码标准,HEVC(H.265)仍然属于预测加变换的混合编码框架。然而,相对于H.264,H.265 在很多方面有了革命性的变化。HEVC(H.265)的技术亮点有:
1.
灵活的编码结构
灵活的编码结构
在
H.265
中,将宏块的大小从
H.264
的
16
×
16
扩展到了
64
×
64
,以便于高分辨率视频的压缩。同时,采用了更加灵活的编码结构来提高编码效率,包括编码单元(
Coding Unit
)、预测单元(
Predict Unit
)和变换单元(
Transform Unit
)。如图
1
所示:
H.265
中,将宏块的大小从
H.264
的
16
×
16
扩展到了
64
×
64
,以便于高分辨率视频的压缩。同时,采用了更加灵活的编码结构来提高编码效率,包括编码单元(
Coding Unit
)、预测单元(
Predict Unit
)和变换单元(
Transform Unit
)。如图
1
所示:
图
1
编码单元(
CU
)、预测单元(
PU
)、变换单元(
CU
)
其中编码单元类似于
H.264/AVC
中的宏块的概念,用于编码的过程,预测单元是进行预测的基本单元,变换单元是进行变换和量化的基本单元。这三个单元的分离,使得变换、预测和编码各个处理环节更加灵活,也有利于各环节的划分更加符合视频图像的纹理特征,有利于各个单元更优化的完成各自的功能。
H.264/AVC
中的宏块的概念,用于编码的过程,预测单元是进行预测的基本单元,变换单元是进行变换和量化的基本单元。这三个单元的分离,使得变换、预测和编码各个处理环节更加灵活,也有利于各环节的划分更加符合视频图像的纹理特征,有利于各个单元更优化的完成各自的功能。
2.
灵活的块结构——RQT(Residual Quad-tree Transform)
灵活的块结构——RQT(Residual Quad-tree Transform)
RQT
是一种自适应的变换技术,这种思想是对
H.264/AVC
中
ABT
(
Adaptive Block-size Transform
)技术的延伸和扩展。对于帧间编码来说,它允许变换块的大小根据运动补偿块的大小进行自适应的调整;对于帧内编码来说,它允许变换块的大小根据帧内预测残差的特性进行自适应的调整。大块的变换相对于小块的变换,一方面能够提供更好的能量集中效果,并能在量化后保存更多的图像细节,但是另一方面在量化后却会带来更多的振铃效应。因此,根据当前块信号的特性,自适应的选择变换块大小,如图
2
所示,可以得到能量集中、细节保留程度以及图像的振铃效应三者最优的折中。
是一种自适应的变换技术,这种思想是对
H.264/AVC
中
ABT
(
Adaptive Block-size Transform
)技术的延伸和扩展。对于帧间编码来说,它允许变换块的大小根据运动补偿块的大小进行自适应的调整;对于帧内编码来说,它允许变换块的大小根据帧内预测残差的特性进行自适应的调整。大块的变换相对于小块的变换,一方面能够提供更好的能量集中效果,并能在量化后保存更多的图像细节,但是另一方面在量化后却会带来更多的振铃效应。因此,根据当前块信号的特性,自适应的选择变换块大小,如图
2
所示,可以得到能量集中、细节保留程度以及图像的振铃效应三者最优的折中。
图2 灵活的块结构示意图
3.采样点自适应偏移(Sample Adaptive Offset)
SAO
在编解码环路内,位于
Deblock
之后,通过对重建图像的分类,对每一类图像像素值加减一个偏移,达到减少失真的目的,从而提高压缩率,减少码流。
在编解码环路内,位于
Deblock
之后,通过对重建图像的分类,对每一类图像像素值加减一个偏移,达到减少失真的目的,从而提高压缩率,减少码流。
采用
SAO
后,平均可以减少
2%~6%
的码流
,
而编码器和解码器的性能消耗仅仅增加了约
2%
。
SAO
后,平均可以减少
2%~6%
的码流
,
而编码器和解码器的性能消耗仅仅增加了约
2%
。
4.自适应环路滤波(Adaptive Loop Filter)
ALF
在编解码环路内,位于
Deblock
和
SAO
之后,用于恢复重建图像以达到重建图像与原始图像之间的均方差(
MSE
)最小。
ALF
的系数是在帧级计算和传输的,可以整帧应用
ALF
,也可以对于基于块或基于量化树(
quadtree
)的部分区域进行
ALF
,如果是基于部分区域的
ALF
,还必须传递指示区域信息的附加信息。
在编解码环路内,位于
Deblock
和
SAO
之后,用于恢复重建图像以达到重建图像与原始图像之间的均方差(
MSE
)最小。
ALF
的系数是在帧级计算和传输的,可以整帧应用
ALF
,也可以对于基于块或基于量化树(
quadtree
)的部分区域进行
ALF
,如果是基于部分区域的
ALF
,还必须传递指示区域信息的附加信息。
5
.并行化设计
.并行化设计
当前芯片架构已经从单核性能逐渐往多核并行方向发展,因此为了适应并行化程度非常高的芯片实现,HEVC/H265引入了很多并行运算的优化思路, 主要包括以下几个方面:
(1)
Tile
Tile
如图
3
所示,用垂直和水平的边界将图像划分为一些行和列,划分出的矩形区域为一个
Tile
,每一个
Tile
包含整数个
LCU(Largest Coding Unit)
,
Tile
之间可以互相独立,以此实现并行处理:
3
所示,用垂直和水平的边界将图像划分为一些行和列,划分出的矩形区域为一个
Tile
,每一个
Tile
包含整数个
LCU(Largest Coding Unit)
,
Tile
之间可以互相独立,以此实现并行处理:
图3 Tile划分示意图
(2)
Entropy slice
Entropy slice
Entropy Slice
允许在一个
slice
内部再切分成多个
Entropy Slices
,每个
Entropy Slice
可以独立的编码和解码,从而提高了编解码器的并行处理能力:
允许在一个
slice
内部再切分成多个
Entropy Slices
,每个
Entropy Slice
可以独立的编码和解码,从而提高了编解码器的并行处理能力:
图4每一个slice可以划分为多个Entropy Slice
(3)
WPP(Wavefront Parallel Processing)
WPP(Wavefront Parallel Processing)
上一行的第二个
LCU
处理完毕,即对当前行的第一个
LCU
的熵编码(
CABAC
)概率状态参数进行初始化,如图
5
所示。因此,只需要上一行的第二个
LCU
编解码完毕,即可以开始当前行的编解码,以此提高编解码器的并行处理能力:
LCU
处理完毕,即对当前行的第一个
LCU
的熵编码(
CABAC
)概率状态参数进行初始化,如图
5
所示。因此,只需要上一行的第二个
LCU
编解码完毕,即可以开始当前行的编解码,以此提高编解码器的并行处理能力:
图
5 WPP
示意图
5 WPP
示意图
6
.
H.264
中已有特性的改进
.
H.264
中已有特性的改进
相对于H.264,H.265标准的算法复杂性有了大幅提升,以此获得较好的压缩性能。H.265在很多特性上都做了较大的改进,如表2所示:
H.264
|
||
MB/CU
大小 |
4×4 ~ 16×16 | 4×4 ~ 64×64 |
亮度插值
|
Luma-1/2
像素 {1,-5,20,20,-5,1}
Luma-1/4
像素 {1,1} |
Luma-1/2
像素 {-1,4,-11,40,40,-11,4,-1}
Luma-1/4
像素 {-1,4,-10,57,19,-7,3,-1}
Luma-1/4
像素 {-1,3,-7,19,57,-10,4,-1} |
MVP
预测方法 |
空域MVP预测 |
空域
+ 时域 MVP 预测
AMVP\Merge
|
亮度
Intra 预测 |
4×4 / 8×8 / 16×16:9/9/4模式 |
34
种角度预测 +
Planar
预测 DC 预测 |
色度
Intra 预测 |
DC, Horizontal, Vertical, Plane |
DM, LM,
planar, Vertical, Horizontal, DC, diagonal
|
变换
|
DCT4×4/8×8 |
DCT4
× 4/8 × 8/16 × 16/32 × 32
DST4x4
|
去块滤波器
|
4×4和8×8边界Deblock滤波 | 较大的CU尺寸,4×4的边界不进行滤波 |
表2 H.264和H.265关键特性对
主要SIZES上区别见上图!
-
顶
- 7
-
踩
HEVC(H.265)的技术亮点
图
1
编码单元(
CU
)、预测单元(
PU
)、变换单元(
CU
)
作为新一代视频编码标准,HEVC(H.265)仍然属于预测加变换的混合编码框架。然而,相对于H.264,H.265 在很多方面有了革命性的变化。HEVC(H.265)的技术亮点有:
1.
灵活的编码结构
灵活的编码结构
在
H.265
中,将宏块的大小从
H.264
的
16
×
16
扩展到了
64
×
64
,以便于高分辨率视频的压缩。同时,采用了更加灵活的编码结构来提高编码效率,包括编码单元(
Coding Unit
)、预测单元(
Predict Unit
)和变换单元(
Transform Unit
)。如图
1
所示:
H.265
中,将宏块的大小从
H.264
的
16
×
16
扩展到了
64
×
64
,以便于高分辨率视频的压缩。同时,采用了更加灵活的编码结构来提高编码效率,包括编码单元(
Coding Unit
)、预测单元(
Predict Unit
)和变换单元(
Transform Unit
)。如图
1
所示:
图
1
编码单元(
CU
)、预测单元(
PU
)、变换单元(
CU
)
其中编码单元类似于
H.264/AVC
中的宏块的概念,用于编码的过程,预测单元是进行预测的基本单元,变换单元是进行变换和量化的基本单元。这三个单元的分离,使得变换、预测和编码各个处理环节更加灵活,也有利于各环节的划分更加符合视频图像的纹理特征,有利于各个单元更优化的完成各自的功能。
H.264/AVC
中的宏块的概念,用于编码的过程,预测单元是进行预测的基本单元,变换单元是进行变换和量化的基本单元。这三个单元的分离,使得变换、预测和编码各个处理环节更加灵活,也有利于各环节的划分更加符合视频图像的纹理特征,有利于各个单元更优化的完成各自的功能。
2.
灵活的块结构——RQT(Residual Quad-tree Transform)
灵活的块结构——RQT(Residual Quad-tree Transform)
RQT
是一种自适应的变换技术,这种思想是对
H.264/AVC
中
ABT
(
Adaptive Block-size Transform
)技术的延伸和扩展。对于帧间编码来说,它允许变换块的大小根据运动补偿块的大小进行自适应的调整;对于帧内编码来说,它允许变换块的大小根据帧内预测残差的特性进行自适应的调整。大块的变换相对于小块的变换,一方面能够提供更好的能量集中效果,并能在量化后保存更多的图像细节,但是另一方面在量化后却会带来更多的振铃效应。因此,根据当前块信号的特性,自适应的选择变换块大小,如图
2
所示,可以得到能量集中、细节保留程度以及图像的振铃效应三者最优的折中。
是一种自适应的变换技术,这种思想是对
H.264/AVC
中
ABT
(
Adaptive Block-size Transform
)技术的延伸和扩展。对于帧间编码来说,它允许变换块的大小根据运动补偿块的大小进行自适应的调整;对于帧内编码来说,它允许变换块的大小根据帧内预测残差的特性进行自适应的调整。大块的变换相对于小块的变换,一方面能够提供更好的能量集中效果,并能在量化后保存更多的图像细节,但是另一方面在量化后却会带来更多的振铃效应。因此,根据当前块信号的特性,自适应的选择变换块大小,如图
2
所示,可以得到能量集中、细节保留程度以及图像的振铃效应三者最优的折中。
图2 灵活的块结构示意图
3.采样点自适应偏移(Sample Adaptive Offset)
SAO
在编解码环路内,位于
Deblock
之后,通过对重建图像的分类,对每一类图像像素值加减一个偏移,达到减少失真的目的,从而提高压缩率,减少码流。
在编解码环路内,位于
Deblock
之后,通过对重建图像的分类,对每一类图像像素值加减一个偏移,达到减少失真的目的,从而提高压缩率,减少码流。
采用
SAO
后,平均可以减少
2%~6%
的码流
,
而编码器和解码器的性能消耗仅仅增加了约
2%
。
SAO
后,平均可以减少
2%~6%
的码流
,
而编码器和解码器的性能消耗仅仅增加了约
2%
。
4.自适应环路滤波(Adaptive Loop Filter)
ALF
在编解码环路内,位于
Deblock
和
SAO
之后,用于恢复重建图像以达到重建图像与原始图像之间的均方差(
MSE
)最小。
ALF
的系数是在帧级计算和传输的,可以整帧应用
ALF
,也可以对于基于块或基于量化树(
quadtree
)的部分区域进行
ALF
,如果是基于部分区域的
ALF
,还必须传递指示区域信息的附加信息。
在编解码环路内,位于
Deblock
和
SAO
之后,用于恢复重建图像以达到重建图像与原始图像之间的均方差(
MSE
)最小。
ALF
的系数是在帧级计算和传输的,可以整帧应用
ALF
,也可以对于基于块或基于量化树(
quadtree
)的部分区域进行
ALF
,如果是基于部分区域的
ALF
,还必须传递指示区域信息的附加信息。
5
.并行化设计
.并行化设计
当前芯片架构已经从单核性能逐渐往多核并行方向发展,因此为了适应并行化程度非常高的芯片实现,HEVC/H265引入了很多并行运算的优化思路, 主要包括以下几个方面:
(1)
Tile
Tile
如图
3
所示,用垂直和水平的边界将图像划分为一些行和列,划分出的矩形区域为一个
Tile
,每一个
Tile
包含整数个
LCU(Largest Coding Unit)
,
Tile
之间可以互相独立,以此实现并行处理:
3
所示,用垂直和水平的边界将图像划分为一些行和列,划分出的矩形区域为一个
Tile
,每一个
Tile
包含整数个
LCU(Largest Coding Unit)
,
Tile
之间可以互相独立,以此实现并行处理:
图3 Tile划分示意图
(2)
Entropy slice
Entropy slice
Entropy Slice
允许在一个
slice
内部再切分成多个
Entropy Slices
,每个
Entropy Slice
可以独立的编码和解码,从而提高了编解码器的并行处理能力:
允许在一个
slice
内部再切分成多个
Entropy Slices
,每个
Entropy Slice
可以独立的编码和解码,从而提高了编解码器的并行处理能力:
图4每一个slice可以划分为多个Entropy Slice
(3)
WPP(Wavefront Parallel Processing)
WPP(Wavefront Parallel Processing)
上一行的第二个
LCU
处理完毕,即对当前行的第一个
LCU
的熵编码(
CABAC
)概率状态参数进行初始化,如图
5
所示。因此,只需要上一行的第二个
LCU
编解码完毕,即可以开始当前行的编解码,以此提高编解码器的并行处理能力:
LCU
处理完毕,即对当前行的第一个
LCU
的熵编码(
CABAC
)概率状态参数进行初始化,如图
5
所示。因此,只需要上一行的第二个
LCU
编解码完毕,即可以开始当前行的编解码,以此提高编解码器的并行处理能力:
图
5 WPP
示意图
5 WPP
示意图
6
.
H.264
中已有特性的改进
.
H.264
中已有特性的改进
相对于H.264,H.265标准的算法复杂性有了大幅提升,以此获得较好的压缩性能。H.265在很多特性上都做了较大的改进,如表2所示:
H.264
|
||
MB/CU
大小 |
4×4 ~ 16×16 | 4×4 ~ 64×64 |
亮度插值
|
Luma-1/2
像素 {1,-5,20,20,-5,1}
Luma-1/4
像素 {1,1} |
Luma-1/2
像素 {-1,4,-11,40,40,-11,4,-1}
Luma-1/4
像素 {-1,4,-10,57,19,-7,3,-1}
Luma-1/4
像素 {-1,3,-7,19,57,-10,4,-1} |
MVP
预测方法 |
空域MVP预测 |
空域
+ 时域 MVP 预测
AMVP\Merge
|
亮度
Intra 预测 |
4×4 / 8×8 / 16×16:9/9/4模式 |
34
种角度预测 +
Planar
预测 DC 预测 |
色度
Intra 预测 |
DC, Horizontal, Vertical, Plane |
DM, LM,
planar, Vertical, Horizontal, DC, diagonal
|
变换
|
DCT4×4/8×8 |
DCT4
× 4/8 × 8/16 × 16/32 × 32
DST4x4
|
去块滤波器
|
4×4和8×8边界Deblock滤波 | 较大的CU尺寸,4×4的边界不进行滤波 |
表2 H.264和H.265关键特性对
主要SIZES上区别见上图!
-
顶
- 7
-
踩
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/36171.html