H.264水印编解码标准/压缩过程

H.264压缩标准

零.结构

1.视频结构:

GOP图像组:I内部编码帧,B双向帧,P前向帧


2.I帧(帧内编码图像帧):

I帧可随机访问,本质上是一副图像,压缩比为六分之一

特点:I帧是关键帧/P帧和B帧的参考帧,I帧信息量大质量影响到BP帧质量,从而影响到整个视频质量

压缩方法:基于DCT的压缩技术

编码流程:

1.帧内预测

2.像素值减去预测值得到残差

3.对残差进行变换和量化

4.变长编码和算术编码

5.重构图像并滤波,得到的图像作为参考帧

3.P帧(前向预测编码图像帧):


前向帧,记录与前一帧的差别。解码时使用前一帧和差值来生成最终画面

特点:

1.I帧后的1-2帧

2.预测误差

3.只参考前面最靠近的I/P帧

4.由于P帧作为参考帧的原因,会造成错误扩散

5.P帧压缩比高

压缩方法:基于DCT的压缩技术

编码流程:

P帧的预测和重构:在I帧中找到某点预测值和差值相加得到P帧某点值,恢复P帧

4.B帧(双向参考帧):


压缩时,既参考前向帧,又参考后向帧,采用帧间压缩技术

特点:

1.需要前后帧来进行预测

2.B帧传送的是它与前面的I帧或P帧和后面的P帧之间的预测误差及运动矢量

3.B帧是双向预测编码帧;

4.B帧压缩比最高,因为它只反映两参考帧间运动主体的变化情况,预测比较准确

5.B帧不是参考帧,不会造成解码错误的扩散

压缩方法:基于DCT的压缩技术

编码流程:

接收端根据运动矢量在两个参考帧中“找出(算出)”预测值并与差值求和,得到B帧“某点”样值,从而可得到完整的B帧。采用运动预测的方式进行帧间双向预测编码

为什么需要B帧/和P帧的区别:

B帧压缩比比P帧更高

是否一定要使用B帧?不一定。

在对实时性要求较高的情景,不适用B帧,解码速度更快


5.PTS/DTS:

实际上的解码顺序和播放顺序并不一致

PTS:显示时间戳

DTS:解码时间戳

6.其他术语:

I帧(IDR):立即刷新图像,当解码器解码到IDR图像时,立即将参考帧队列清空,删除缓存的BP帧,开始解码新的序列,在播放中的意义为重新同步,丢弃之前的错误

参考周期(Reference):两个P帧之间的距离

一.技术

1.帧内预测编码

解决了空域数据冗余的问题

2.帧间预测编码

运动估计与补偿,解决了时域数据冗余的问题

时域上的冗余大于空域上的冗余

3.CABAC压缩

无损压缩

二.编解码

三.H264压缩过程

1.原始视频帧(30帧/秒)在H264编码器的缓冲区中,编码器先为每一帧划分宏块(默认宏块大小16*16),划分子块(追求更高的压缩率)

1.1 帧内预测:在划分完宏块后,对每个宏块进行九种模式的预测,找出最合适的预测模式,其中对于16*16的宏块划分,一共存在4种亮度预测模式:

垂直/水平/DC/平面

帧内预测的本质:在宏块中,用最少的信息/最少的亮度值来预测出整个宏块的亮度值。

压缩效果类比图像卷积滤波 类比高斯模糊

1.2 在得到了预测图像后,使用原图减去预测图像的差值得到 “残差值”

保存预测模式和残差值,使得帧内数据大幅减少

在解码时 预测模式信息+残差值 恢复出原图

1.3 对残差值进行DCT离散余弦变换,去掉数据相关性,使得数据进一步被压缩(有损压缩的最后一步)

1.4 CABAC 无损压缩:类似霍夫曼编码

2.帧分组通过宏块扫描和宏块搜索可以得到关联度比较高的一组帧,划分标准:在相邻几幅图像画面中,一般有差别的像素只有10%以内的点,亮度差值变化不超过2%,而色度差值的变化只有1%以内,我们认为这样的图可以分到一组

3.划分帧组后,对于一组帧内,只保留第一帧的完整数据(IDR帧)其他帧为B/P帧

4.运动估计与补偿,计算帧组内物体的运动矢量。H264编码器首先按顺序从缓冲区头部取出两帧视频数据,然后进行宏块扫描。当发现其中一幅图片中有物体时,就在另一幅图的邻近位置(搜索窗口中)进行搜索。如果此时在另一幅图中找到该物体,那么就可以计算出物体的运动矢量了

5.计算完运动矢量后,将相同部分减去,得到补偿数据

四.错误恢复


简书这个对MD太不友好了...

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,525评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,203评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,862评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,728评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,743评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,590评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,330评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,244评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,693评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,885评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,001评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,723评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,343评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,919评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,042评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,191评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,955评论 2 355

推荐阅读更多精彩内容