H.264/H.265/H.266音视频编码基础

一、背景

跟音频编码一样,视频编码最重要的目的也是为了进行数据压缩,以此来降低数据传输和存储成本。

以一路分辨率 720x1280(常说的 720P),帧率为 30 fps 的视频为例,如果不经过编码压缩,直接传输或存储原始的 RGB 数据,对应的码率是:720 * 1280 * 3 * 8 * 30 = 632.8125 Mbps (宽 * 高 * 像素字节数 * 字节比特数 * 帧数)。一分钟的时间所需要的数据量是:632.8125 Mbps * 60s = 4.63 GB。

这个数据量很大,需要很高的存储或传输成本,因此需要采用编码压缩技术以减少码率。而对信息进行压缩,可以从这几个方面着手:

  • 信源包含的符号出现概率的非均匀性,使得信源是可以被压缩的:熵编码就利用信源的统计特性进行码率压缩的编码方式。比如著名的哈夫曼编码(也是熵编码的一种),就是当信源中各符号的出现概率都一样时编码效率最低。
  • 信源的相关性,使得信源是可以被压缩的:比如信息 A 和信息 B 的相关性,使得我们可以由信息 A 加残差 D(D = A - B) 来推导信息 B,这样只编码 A 和 D 来实现压缩,这就是所谓的差分编码技术。
  • 人的感知对不同信源的敏感度不一样,使得信源是可以被压缩的:对人感知不敏感的信息进行部分或全部忽略来实现压缩。

要对视频进行编码,则主要是研究视频数据中的冗余信息,并对其进行压缩。视频信息主要包括这几个方面的冗余:

猜你喜欢

转载自blog.csdn.net/xiangzhihong8/article/details/124978298