H265/HEVC名词解释-- CTU,CTB,CU,CB,TU,PU,TB,PB,LCU,Slice,Tile,Chroma,Luma,I帧,B帧,P帧

H265/HEVC名词解释

学H265的时候,一堆名词 CTU,CTB,CU,CB,TU,PU,TB,PB,LCU,Slice,Tile,Chroma,Luma,I帧,B帧,P帧,绕的头疼,写篇博客汇总一下,尽量不涉及复杂概念



一、I帧,B帧,P帧

  ✐ I帧(帧内编码帧,Intra-Picture)就是一个完整的被压缩的图像,I帧可以通过解压缩得到一张完整的图像(数据量最大);
  ✐P帧(前后预测编码帧,又称Predictive-Picture)当后面的图像与I帧差异较大时,就会记录为P帧,P帧记录与前一帧的运动矢量;
  ✐B帧( 双向预测内插编码帧,Bi-directional interpolated prediction frame),根据下一帧和上一帧的情况,记录一个运动矢量(数据量最小);

 Ф 时间顺序上组成视频的图片一般是被编码成 I BB…B P B…BP . … I BBBB P IBB,也就是说,从时间顺序上, I帧和P帧中间的图像,两个P帧之间的图像都会被压缩成B帧;
解码时,需要先解码I帧(完整图像),再根据I帧解码P帧(存储着与前一个I/P帧的运动矢量),再根据I帧和P帧的情况解码B帧(运动信息),从而恢复出这段视频;

 ❗ 因此,I帧是必不可缺的,P帧的恢复需要I帧,B帧的恢复则同时需要I帧的P帧,所以在实际的视频码流中的传输顺序为I PBB…B P B…BP . … I PBB IPBB,即先传输这一段的I,P,再传输他们中间的B;同理,如果当前接收端最开始得到的是B或者P,没有得到前面的I帧,那就无法接码,只能等下一组的I帧;这也是为什么我们看视频时,很多视频不能把进度条精准的拖动到某一个时间点,甚至有些短视频没法拖进度条,就是因为他们这个进度点的图像不是I帧,因此无法开始解码;

二、Slice和Tilie

  ✐ 在对每一帧图像的编解码的过程中,为了提高效率,H265将一帧图像划分为多个slice或者Tile,一帧图像的各个Slice或Tile独立编解码,相互直接的依赖性不高,从而达到快速编解码一阵图像的效果;而slice和Tile的区别在于划分方式不同

  ❎ 如图所示,蓝色和绿色分别代表不同的Slice:
请添加图片描述
  ❎ 如图所示,将一帧图像划分为不同的Tile:
请添加图片描述
 ❗ 也就是说,slice的方式划分出来是带状的,Tile则是矩形

三、Chroma,Luma

  ✐ Luma(亮度): YUV格式图片中的Y分量;
  ✐ Chroma(色度):YUV格式图片中的U,V分量;

四、CTU,CU,CTB,CB,TU,PU,TB,PB

  ✐ CTU(coding tree unit):H265将一帧图像划分成多个矩形块,大小有16x16、 32x32和 64x64,这些块和对应的编码信息就是CTU;
  ✐ CU(coding unit):H265将部分CTU进行更细致的划分,划分成更小的矩阵块(大小为4*4),这些块和对应的编码信息就是CU;

  ✐ CTB(coding tree block):由于一个图像通常是由Y,U,V三个分量组成的,因此一个CTU就包含了三个CTB(CTB-Y,CTB-U,CTB-V);
  ✐ CB(coding block):和CTB同理,CU也是由Y,U,V三个分量组成,因此一个CU就包含了三个CB(CB-Y,CB-U,CB-V);

  ✐ PU(prediction unit):存储CU间的预测模式信息(编解码信息的一种,分帧间预测和帧内预测);
  ✐ PB(coding block):由于一个图像通常是由Y,U,V三个分量组成的,因此一个PU就包含了三个PB(PB-Y,PB-U,PB-V);

  ✐ TU(transform unit):存储CU的变换量化的信息(编解码信息的一种,通过预测得到的图像和原始图像有差值,该单元存储这个差值(DCT变换,量化后));
  ✐ TB(transform block):由于一个图像通常是由Y,U,V三个分量组成的,因此一个TU就包含了三个TB(TB-Y,TB-U,TB-V);

五、LCU和CTU

  ❌ 百度和CSDN都没找到关于LCU(logic coding unit)和CTU的区别,从概念和定义上,我没看出什么区别,个人觉得是同一种东西就想H265和HEVC常被写为H265/HEVC一样,LCU和CTU也常被写为 LCU/CTU。

参考资料

【1】H.265/HEVC编码原理及其处理流程的分析
【2】CSDN:视频图像的I帧、P帧、B帧详解
【3】CSDN:H265/HEVC编解码系列(1):图像分割(Slice、Tile、CTU)
【4】HEVC帧内预测学习(一)CTU、CU、PU、TU单元划分的理解

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮皮宽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值