参考了《#####》这篇博客
- 对H.265中的编码结构——“编码时的分层处理架构”和“压缩码流结构”——有了进一步理解和掌握。
摘要:
-
编码时的分层处理架构
-
在对视频序列进行压缩的时候,会将其先分割成若干个小的图像组(GOP,Group of Pictures),定义一个GOP编码后生成的压缩数据为CVS(Coded Video Sequence)
-
视频编解中,存在封闭式GOP和开放式GOP
-
每个图像组包含若干张图片,每张图片可以划分为一个或多个片(Slice)
-
每个GOP分为若干个片(Slice),片与片之间进行独立编码
-
每个片由一个或者多个片段(SS,Slice Segment)组成
-
一个SS在编码时,被分割成大小相同的树形结构单元(CTU,Coding Tree Unit),CTU是HEVC新引进的概念
-
每个CTU按照四叉树分割方式分割成不同类型的编码单元(CU,Coding Unit)
-
-
压缩码流结构
-
GOP层、Slice层中公用的大部分语法元素游离出来组成序列参数集(SPS,Sequence Paramenter Set)和图像参数集(PPS,Picture Paramenter Set)
-
SPS中包含了一个CVS中所有图像共用的信息,包括解码相关信息,如档次级别,分辨率deng
-
PPS中包含了一幅图像所有的公共参数,即一个图像中的所有SS会使用同样的PPS,包括初始图像控制信息,如初始化量化参数(QP,Quantization Parament)、分块信息等
-
此外为了适应其他应用如可分级视频编码器,多视点视频编码器,HEVC语法架构中增加了视频参数集(VPS,Video Parament Set),其中包含了多个子层共享的语法元素,其他不属于SPS的特定信息等。
-
一个SS获取参数的引用顺序如下(实则上是一个树状的结构):SS <-- PPS <-- SPS <-- VPS
-
参考了《#####》这篇博客
- 对H.265中的编码结构——“CTU”、“CU”、“TU”、“PU”、“CTB”、“CB”——有了进一步理解和掌握。
摘要:- “编码单元(Unit)=块(Block)+语法元素(Syntactic Element)”,每个单元中块或有或无,但语法元素一定有。
- CTU是HEVC的
基本处理单元
。帧内有多个CTU,CTU尺寸为64×64,CTU采用四叉树结构递归地分成多个CU。 - CU是在HEVC的
最基本的编码单元
。 - CU可以分为两类:跳过型CU(Skipped CU)和普通CU。
- 跳过型CU只能采用帧间预测模式,而且产生的运动向量和图像的残差信息不需要传送给解码器;
- 普通CU则可以采用帧内预测和帧间预测两种方式进行预测,然后对残差数据以及附加的控制信息进行编码。
- 普通CU还可以进一步分割成一个或多个预测单元(PU)和一个或多个变换单元(TU)
- TU是
变换和量化的基本单元
,TU的尺寸可以大于PU,但不能超过CU。 - PU是
含了预测信息的基本单元
。包括了亮度PU、色度PU和相应的预测语法。
参考了《#####》这篇博客
- 对H.265中的编码框架——“预测+变换”的混合编码框架——有了进一步理解和掌握。
摘要:
1.
来源:oschina
链接:https://my.oschina.net/u/4300733/blog/4484744