视频编码简介

视频编码简介

视频压缩和视频编码的区别

“视频压缩”和“视频编码”两个词常常被认为是等同的,被广泛交替使用。无论是视频压缩还是视频编码,通常都是指采用预测、变换、量化和熵编码等方式,尽可能减少视频数据中的冗余,使用尽可能少的数据来表征视频。但是从严格意义上讲,二者存在细微的差别。视频压缩是“目的”,视频编码则更强调“手段”和”方法“。因此在讨论视频压缩的方法时,国际上通常采用”视频编码“这一说法,相应的标准也被称为”视频编码标准“。因此按照国际惯例,本书中均使用”视频编码“的说法。

编码框架

在这里插入图片描述

帧内预测

该模块主要用于去除图像的空间相关性。通过编码后的重构块信息来预测当前像素块以去除空间冗余信息,提高图像的压缩效率。

帧间预测

该模块主要用于去除图像的时间相关性。帧间预测通过将已编码的图像作为当前帧的参考图像,来获取各个块的运动信息,从而去除时间冗余,提供压缩效率。

变换量化

该模块通过对残差数据进行变换量化以去除频域相关性,对数据进行有损压缩。变换编码将图像从时域信号变换至频域,将能量集中至低频区域。量化模块可以减小图像编码的动态范围。

去方块滤波

在基于块的视频编码中,形成的重构图像会出现方块效应,采用去方块滤波可达到削弱甚至消除方块效应的目的,提高图像的主观质量和压缩效率。

样点自适应补偿

样点自适应补偿(Sample Adaptive Offset,SAO)滤波处于去方块滤波之后,通过解析去方块滤波后的像素的统计特性,为像素添加相应的偏移量,可以在一定程度上削弱振铃效应,提高图像的主观质量和压缩效率。

熵编码

该模块将编码控制数据、量化变换系数、帧内预测数据以及运动数据等编码为二进制流进行存储或传输。熵编码模块的输出数据即原始视频压缩后的码流。

猜你喜欢

转载自blog.csdn.net/math_new_photo/article/details/126663353