笔记:新一代视频压缩编码标准-h.264/AVC

第一章绪论:
    信源模型: 1.基于波形的编码。基于波形的编码采用了把预测编码和变化编码组合起来的基于块的混合编码方法。
                      2.基于内容的编码。mpeg4采用的编码方法即是基于块的混合编码,又有基于内容的编码方法。
第二章:数字视频
    取样定理: 当输入的模拟信号上线频率为fe,只要取药脉冲us(t)的重复频率fs不低于fc的 2倍,总够可以无失真地由取样后的离散信号恢复出原来的模拟信号。
PCM: 脉冲编码调制--PCM编码。
我国采用的PAL制规定彩色电视每秒25帧,美国日本采用的NTSC制彩色电视30帧。
最常用的测试标准是峰值信噪比(PSNR) ,一般来说PSNR 越高,视频质量越高,反之亦然。  
均方误差(MSE)
第三章 视频压缩编码的基本原理
预测编码:1.帧内预测编码
                  2 帧间预测编码
变换编码:1 K-L变换
                  2 离散余弦变换(DCT)
变换编码与预测编码的比较:变换编码实现比较复杂,预测编码的实现相对容易,预测编码的误差会扩散。变换编码泽不会误码扩散其影响只限制在一个块内。 现实中往往采用混合编码方法,即对图像先进行带有运动补偿的帧间预测编码,在对预测后的残差信号进行DCT变换
熵编码:利用信源的统计特性进行码率压缩的编码就称为熵编码,也叫统计编码。视频编码常用的有2种变长编码(哈夫曼编码)和算数编码。
第四章 视频编码标准简介
两大著名机构:MPEG(活动图像专家组 moving picture expert group)和ITU-T(国际电联)
AVS标准(中国的标准)
第五章 H.264/AVC编码器原理
H.264的基本部分支持3个不同档次的应用
(1)基本档次:主要用于“视频回话”,如会议电视、可视电话、远程医疗、远程教学。
(2)扩展档次:主要用于网络的视频流,如视频点播
(3)主要档次:主要用于消费电子应用,如数字电视广播、数字视频存储等。
帧间预测编码,其预测值PRED(P)是由当前片中前面已编码的参考图像经运动补偿(MC)后得出,其中参考图像用F`n-1表示。为了提高预测精度,从而提高压缩比,实际的参考图像客在过去或未来(指现实次序上)已编码解码重建和滤波的帧中进行选择。
    预测值PRED和当前块相减后,产生一个残差块Dn,经块变换、量化后产生一组量化后的变化系数X,在经熵编码,与解码所需的一些头信息(预测模式量化参数、运动矢量等一起组成一个压缩后的码流,经NAL(网络自适应层)供传输和存储用)。
    编码器必须有重建图像功能。因此必须使残差图像经反量化、反变化后得到的D`n与预测值P相加,得到uF`(未经滤波的帧)。为了祛除编解码环路中产生的噪声,提高参考帧的图像质量,从而提高压缩图像性能,设置一个环路滤波器。滤波后的输出F`n即重建图像,可用做参考图像。
帧和场
活动量较小或静止的图像宜采用帧编码方式、对活动量较大的运动图像宜采用场编码方式。
宏块、片:一个宏块由一个16*16亮度像素和附加的一个8*8Cb和8*8彩色像素块组成。
I片值包含I宏片,P片客包含P和 像素作为参考进行帧内侦测,不能取其他片中的已解码像素作为参考进行帧内预测。
P宏块利用前面已编码的图像作为参考图像进行帧间预测,一个帧内编码的宏块可进一步作宏块的分割。
B宏块则利用双向的参考图像。
档次和级
1 基本档次:利用I片和P片支持帧内和帧间编码,支持利用基于上下文的梓摄影的变长编码进行的熵编码(CAVLC),主要用于可视电话、会议电视、无线通信等实时视频通信。
2 主要档次:支持隔行视频,采用B片的帧间编码和采用加权预测的帧间编码;支持CABAC,主要用于数字广播电视和数字视频存储。
3 扩展档次:支持码流之间的有效切换(sp和SI)、改进误码性能 (数据分割),但不知隔行视频和CABAC。
编码数据格式
1 H.264的视频格式
H.264支持4:2:0的连续偶隔行视频的编码和解码。
H.264的功能分为两层:视频编码层(VCL,video coding layer)和网络提取层(NAL,Network Abstraction Layer)。VCL数据即编码处理的输出,它表示被压缩编码后的视频数据序列。
每个NAL单元包括一个原始字节序列符合(RBSP,raw byte sequence payload)、一组对应于视频编码数据的NAL头信息。
H.264中最多可以从15个参数图像中进行选择,选出最佳的匹配图像。
对于P片帧间编码宏块和宏块分割的预测可从表0中选择参数图像,对于B片中的帧间编码宏块和宏块和宏块分割的预测,可从表0和1中选择参考图像。
5.3.5 片和片组
1.片:编码片共有5种不同的类型,I P B SP SI
帧内预测模式的选择和编码
H.264采用拉格朗日率失真优化(RDO,)策略进行最优化编码模式选择,通过遍历所有可能的编码模式,最后选择最小失真代价模式作为 最佳帧内预测模式
5.5 帧间预测
B片预测有三种方式:一个前向和一个后向、两个前向、两个后向。
5.6 SP/SI 技术
SP帧编码的基本原理同P帧类似,仍是基于帧间预测的运动补偿预测编码,两者之间差异在于SP帧能够参照不同参考帧重构出相同的图像帧,利用这点,SP帧可取代I帧,广泛应用于流间切换、拼接、随机接入、快进快退以及错误恢复等应用中。
SI帧:空间预测帧。
当视频流的内容相同,编码参数不同时,采用SP帧,而当视频流的内容相差很大时,采用SI帧将更加有效。
5.8 CAVLC:基于上下文自适应的可变长熵编码。
熵编码时无损压缩编码方法,它生成的马骝可以经解码无失真地恢复出数据。熵编码时建立在随机过程的统计特性基础上的。
5.9 CABAC:基于上下文自适应二进制算数熵编码
结论:CABAC与其他主流的熵编码方式相比有更高的编码效率,用一组质量在28-40DB的视频图像做实测,应用CABAC可使比特率进一步提高9%-14%.
5.11 去方块滤波:DCT变换,变换系数的量化过程相对粗糙,因而反量化恢复的变换系数带有误差,会造成在图像块边界上的视觉不连续。第二个来自于运动补偿预测。
5.12 IDR图像一般为I片或SI片。当接受到IDR图像时,解码器立即将缓冲区中的图像标为“非参考”,后继的片进行无图像参考编码。通常编码视频序列的第一幅图像都是IDR图像。

第六章 H.264的句法和语意

在H.264中,分层结构最大的不同时取消了序列层和图像层,并将原本属于序列和图像头部的大部分句法元素游离出来形成序列和图像两级参数级,其余部分则放入片层。参数集时一个独立的数据单位。

只有编码器认为需要更新参数集的内容时,才会发送新的参数集,由于参数集时独立的。它可以被多次重发或者采用特殊技术加以保护。

一个序列的第一个图像叫做IDR图像(即使解码刷新图像),IDR图像都是I图像,H.264引入IDR图像视为了解码的重同步,当解码器解码到IDR图像时,立即将参考帧队列清空,将已解码的数据全部输出或抛弃,重新查找参数及,开始一个新的序列。这样,如果在前一个序列的传输中发生了重大错误,如严重的丢包或其他原因引起数据错位,在这里可以活着重新同步。IDR图像之后的图像永远不会引用IDR之前的图像的数据来解码。

IDR图像和I图像的区别,IDR图像一定是I图像,但I图像不一定是IDR图像,一个序列中可以有很多的I图像,I图像之后的图像可以引用I图像之前图像做运动参考。

为了提高编码效率。H.264将图像实际的宽度减去1在传送。

当数据存储在介质上时,在每个NAL前面增加起始码:0x000001.

第十章H.264的可伸缩性编码

视频编码的可伸缩性包括时域可伸缩性、空域可伸缩性、质量可伸缩性。

时域可伸缩性:指将视频流分解成表示不同帧率的信息,其中基本层保留最低帧率的信息,随着帧数的增加帧率也随之增加,从而用户能够观赏到更为连贯流畅的画面。

空域可伸缩性:指将视频流分解成表示不同分辨率的信息,其中基本层保留最低分辨率的信息,随着层数的增加分辨率也随之增加,从而用户能观赏到更为细腻的画面。

质量可伸缩性:将像素值分解成不同级别,在基本层每个像素只拥有很小的比特率,画面质量粗糙,随着层数的增加,每个像素的比特率也随之增加,从而能够展现出更为丰富的图像内容。

猜你喜欢

转载自blog.csdn.net/Doubao93/article/details/118259383