没有合适的资源?快使用搜索试试~ 我知道了~
首页视频编解码学习之二:编解码框架 - Mr.Rico - 博客园.pdf
视频编解码学习之二:编解码框架 - Mr.Rico - 博客园.pdf
需积分: 0 233 浏览量
更新于2023-05-27
评论
收藏 3.56MB PDF 举报
介绍了码流结构、帧类型、条带、宏块、预测编码、运动估计、变化编码、量化等知识
资源详情
资源评论
资源推荐

2018/3/2 视频编解码学习之二:编解码框架 - Mr.Rico - 博客园
https://www.cnblogs.com/xkfz007/archive/2012/07/29/2613824.html 1/25
追随技术WithPassion
学如逆水行舟,不进则退
博客园 首页 新随笔 联系 订阅 管理
随笔 - 343 文章 - 235 评论 - 126
视频编解码学习之二:编解码框架
第四章 视频编码基础
1. 压缩码流
语法:码流中各个元素的位置关系
01001001…
图像编码类型(01),宏块类型(00),编码系数1001等
语义:每个语法元素所表达的意义。
例如:图像编码类型
2. 编码层次
序列(Sequence)
图像组(Group of Pictures,GOP)
图像(Picture)
条带(Slice)
宏块(Macroblock,MB)
块(Block)
3. 码流结构
3. PB帧编码
昵称:Mr.Rico
园龄:6年11个月
粉丝:479
关注:3
+加关注
< 2012年7月 >
日 一 二 三 四 五 六
24 25 26 27 28 29 30
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 1 2 3 4
搜索
搜索
找找看
谷歌搜索
常用链接
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
我的标签
我的标签
H.264(16)
x264(12)
JM(11)
C与C++区别(7)
volatile(7)
虚函数(7)
程序员(6)
const(6)
static(6)
随机数(5)
更多

2018/3/2 视频编解码学习之二:编解码框架 - Mr.Rico - 博客园
https://www.cnblogs.com/xkfz007/archive/2012/07/29/2613824.html 2/25
4. 序列编码对象
(1)IBBP序列
序列:一段连续编码的并具有相同参数的视频图像。
序列起始码:专有的一段比特串,标识一个序列的压缩数据的开始
MPEG-2的序列起始码为十六进制数000001(B3)。
序列头:记录序列信息
档次(Profile),级别(Level),宽度,高度,是否是逐行序列,帧率等。
序列结束码:专有的一段比特串,标识该序列的压缩数据的结束
MPEG-2的序列结束码为十六进制数000001(B7)。
5. 图像组编码对象
6. 图像编码结构
图像:
图像起始码:专有的一段比特串,标识一个图像的压缩数据的开始
MPEG-2的图像起始码为十六进制数000001(00)。
图像头:记录图像信息
图像编码类型,图像距离,图像编码结构,图像是否为逐行扫描。
随笔分类
随笔分类
(316)
(316)
Algorithm(19)
Algorithm笔记(2)
C/C++笔记(67)
C/C++编程(71)
DataStructure(1)
DataStructure笔记(11)
Fedora配置(19)
FFmpeg(2)
H.264/JM(30)
Hardware(1)
ImageRetrieval(1)
Interview
IT技术(1)
Linux笔记(11)
Linux编程
Linux学习(1)
Matlab技术(3)
MPEG系列
Networks
Opencv学习(1)
OperatingSys(13)
Shell笔记(5)
Shell编程(7)
Softwares(1)
UsefulProgs(9)
VideoCodec(23)
Windows技术
X264(4)
编程语言(2)
多媒体技术(11)

2018/3/2 视频编解码学习之二:编解码框架 - Mr.Rico - 博客园
https://www.cnblogs.com/xkfz007/archive/2012/07/29/2613824.html 3/25
7. 图像分块编码
8. 条带编码结构
条带:多个宏块的组合。
条带起始码:专有的一段比特串,标识一个条带的压缩数据的开始
MPEG-2的条带起始码为十六进制数000001(0~AF)。
条带头:记录当前图像的相关信息
条带位置,条带量化参数,宏块编码技术标识等。
9. 条带编码对象
10. 宏块编码结构
宏块:16x16的像素块(对亮度而言)。
宏块内容:宏块编码类型,编码模式,参考帧索引,运动矢量信息,宏块编码系数等。
11. 宏块编码对象
随笔档案
随笔档案
(344)
(344)
2017年2月 (6)
2015年5月 (2)
2014年5月 (1)
2013年7月 (2)
2013年6月 (1)
2012年11月 (48)
2012年10月 (31)
2012年8月 (42)
2012年7月 (66)
2012年6月 (15)
2012年5月 (14)
2012年4月 (33)
2012年3月 (25)
2012年2月 (30)
2011年12月 (1)
2011年11月 (8)
2011年10月 (5)
2011年9月 (7)
2011年8月 (2)
2011年7月 (4)
2011年4月 (1)
文章分类
文章分类
(175)
(175)
Algorithm(6)
C/C++编程(40)
DataStructor(2)
Fedora配置(11)
H.264/JM(22)
Hardware(2)
IT技术(3)
Linux编程(9)
Linux学习(7)

2018/3/2 视频编解码学习之二:编解码框架 - Mr.Rico - 博客园
https://www.cnblogs.com/xkfz007/archive/2012/07/29/2613824.html 4/25
12. 块编码结构
8x8或4x4块的变换量化系数的熵编码数据。
CBP (Coded Block Patten):用来指示块的变换量化系数是否全为零。
对于YUV(4:2:0)编码,CBP通常6比特长,每个比特对应一个块,当某一块的变换量化系数
全为零时,其对应比特位值为0,否则为1。
每个块的变换量化系数的最后用一个EOB (End of Block)符号来标识。
13. 视频编解码关键技术
预测:通过帧内预测和帧间预测降低视频图像的空间冗余和时间冗余。
变换:通过从时域到频域的变换,去除相邻数据之间的相关性,即去除空间冗余。
量化:通过用更粗糙的数据表示精细的数据来降低编码的数据量,或者通过去除人眼不敏感的信息
来降低编码数据量。
扫描:将二维变换量化数据重新组织成一维的数据序列。
熵编码:根据待编码数据的概率特性减少编码冗余。
14. 预测
空间预测:利用图像空间相邻像素的相关性来预测的方法。
帧内预测技术:利用当前编码块周围已经重构出来的像素预测当前块
Intra图像编码(I帧)
时间预测:利用时间上相邻图像的相关性来预测的方法。
帧间预测:运动估计(Motion Estimation,ME),运动补偿(Motion Compensation,
MC)
Inter图像编码:前向预测编码图像(P帧),双向预测编码图像(B帧)
15. 帧内预测
I帧图像的每个宏块都采用帧内(Intra)预测编码模式。
宏块分成8x8或者4x4块,对每个块采用帧内预测编码,称作Intra8x8或者Intra4x4。
帧内预测有多个预测方向:水平,垂直,左下,右上。
帧内预测还有直流(DC)预测。
色度块预测还有平面预测。
Matlab技术
MPEG系列(4)
Networks(4)
Opencv学习
OperatingSys(7)
Programmer(17)
Shell编程(7)
VideoCodec(8)
Windows技术(3)
X264(12)
编程语言(4)
多媒体技术(1)
面试(6)
文章档案
文章档案
(235)
(235)
2017年4月 (1)
2017年2月 (30)
2015年6月 (1)
2015年5月 (29)
2013年1月 (1)
2012年11月 (9)
2012年10月 (8)
2012年8月 (17)
2012年7月 (46)
2012年6月 (13)
2012年5月 (17)
2012年3月 (9)
2012年2月 (24)
2011年11月 (1)
2011年10月 (6)
2011年9月 (7)
2011年8月 (8)
2011年7月 (6)

2018/3/2 视频编解码学习之二:编解码框架 - Mr.Rico - 博客园
https://www.cnblogs.com/xkfz007/archive/2012/07/29/2613824.html 5/25
16. 帧间预测
块基运动估计:为待预测块在参考帧上找到最佳的预测块,并记录预测块在参考帧上的相对位置。
运动矢量(MV):参考帧上的预测块与当前帧上的的待预测块的相对位置。
MV有两个分量:(x,y)
分像素运动估计
最佳的预测块不在整像素位置,而在分像素位置;
1/2,1/4,1/8像素插值得到分像素值。
2011年4月 (2)
相册
相册
(5)
(5)
android(1)
c(3)
else(1)
最新评论
最新评论
1. Re:视频编解码学习之一:理论基础
楼主, csdn的这个也是你的么?
这个更全..
--跬步者
2. Re:C/C++中的getline函数总结
厉害厉害!
--清风弥天
3. Re:视频编解码学习之一:理论基础
楼主,数字视频中的那个YUV和
RGB的转换公式写错啦~
--苏筠
4. Re:最简单的视频网站(JavaEE+F
Fmpeg)
线程代码报错啊
--dufeida
5. Re:转:C++中const、volatile、
mutable的用法
讲解的非常详细
--Wali8822
6. Re:转:十进制小数转化为二进制小
数
写的详细
666
--M冷拥M
7. Re:交换两个整型数的方法
恩,写的很好啊,能否转载一
下,会给出转载链接和标注转载。
--Jerrylp
剩余24页未读,继续阅读






安全验证
文档复制为VIP权益,开通VIP直接复制

评论0