2.3 视频编解码
2.3.1 视频编解码的基础知识
国际上主流的视频编解码技术主要由如下三大组织推动和发展。
● 国际电信联盟(International Telecommunication Union,ITU):制定的标准有H.261、H.262、H.263、H.263+、H.263++等,这些统称为H.26X系列。它们主要应用于实时视频通信领域,如会议电视、可视电话等。
● 国际标准化组织(International Organization for Standardization,ISO):制定的标准有MPEG-1、MPEG-2、MPEG-4、MPEG-7、MPEG-21,这些统称为MPEG系列。
● 视频联合工作组(Joint Video Team,JVT):ITU和ISO/IEC一开始相互独立,后来两者成立了一个联合小组,名叫JVT。JVT致力于新一代视频编码标准的制定,并成功推出包括H.264在内的一系列标准。
视频编码标准推出机构和时间如表2-3所示。
表2-3 视频编码标准推出机构和时间
视频编码的核心目标是实现数据压缩,以降低数据传输和存储的成本。
以一段分辨率为1920像素×1080像素(即1080P),每个像素由RGB三原色组成,每个颜色通道8位,总共24位,帧率为30FPS的视频为例,如果不经过编码压缩,直接传输或存储原始的RGB数据,每秒的视频数据量为
30×1920×1080×24=1 492 992 000(b)= 186 624 000(B)
这意味着1 min的视频所需要的视频数据量约11 GB。由于这个数据量很大,存储或传输成本非常高,因此需要采用编码压缩技术以降低码率。
视频编码压缩主要针对视频数据中的冗余信息。视频信息的冗余主要包括如下4方面。
● 空间冗余。图像中相邻像素之间有较强的相关性,通常相邻像素是渐变而非突变的,因此没必要保存每个像素,可以通过算法计算出中间值。
● 时间冗余。视频序列中相邻图像内容相似,连续图像通常也不是突变的,可以根据已有的图像进行预测和推断。
● 视觉冗余。人的视觉系统对某些细节不敏感,允许一定程度的数据丢失。
● 编码冗余。不同像素出现的概率不同,可以采用类似赫夫曼编码的方法,使高频像素用较少的字节表示,低频像素用较多的字节表示。
总之,虽然用于编码的算法复杂且多样,但是编码过程本质上是类似的。
编码之后,原本生动的图像帧转变成一串难以理解的二进制数字,这些数字可以按照一定的格式保存在一个文件中。