关于一些视频编解码&编码格式&图像基础的介绍
- 视频编解码原理,大概包括熵编解,帧内编码及帧间编码,运动补偿,量化与反量化,变换和反变换和环路滤波等等技术。
-
I帧P帧B帧。
I帧:表示关键帧,你可以理解为这一帧画面的完整保留;解码时只需要本帧数据就可以完成。
P帧:表示的是这一帧跟之前的一个关键帧(或P帧)的差别,解码时需要用之前缓存的画面叠加上本帧定义的差别,生成最终画面。
B帧:双向差别帧,也就是B帧记录的是本帧与前后帧的差别,压缩率高。
-
理解GOP与DIR意思。
DIR:一个序列的第一个图像叫做 IDR 图像(立即刷新图像),IDR 图像都是 I 帧图像。
GOP:即图像组,指两个I帧之间的距离。
-
理解DTS与PTS意思。
DTS:(解码时间戳),表示packet的解码时间。
PTS:(显示时间戳),表示packet解码后数据的显示时间。
-
查看各种编解顺序的意思。
采集顺序指图像传感器采集原始信号得到图像帧的顺序。
编码顺序指编码器编码后图像帧的顺序。存储到磁盘的本地视频文件中图像帧的顺序与编码顺序相同。
传输顺序指编码后的流在网络中传输过程中图像帧的顺序。
解码顺序指解码器解码图像帧的顺序。
显示顺序指图像帧在显示器上显示的顺序。
采集顺序与显示顺序相同。编码顺序、传输顺序和解码顺序相同。
-
了解H264编码。
其编解码流程主要包括5个部分:帧间和帧内预测,变换和反变换,量化和反量化,环路滤波,熵编码。
H264标准的主要目标是:与其它现有的视频编码标准相比,在相同的带宽下提供更加优秀的图象质量。
- 了解H265编码帧内编码过程:
1.图像首先被分割为块状区域;
2.数据进行帧内估算(编码器),进行帧内编码;
3.进行帧内预测(反编码),注意,此时帧内预测得到数据与分块原图像帧应有些许偏差;
4.分块原图像帧减去帧内预测结果,得到帧内残差信号;
5.残差信号经过线性变换,变换后的系数再经过缩放、量化;
6.将处理后的残差信号系数经过反处理,得到残差信号,注意与原残差存在偏差;
7.将残差信号加上帧内预测信号,可得到分块预测图像帧;
8.最终通过环路滤波和自适应补偿,去除“分块效应”,得到未经分块的图像帧;
9.帧内编码信号和残差信号系数一起进行熵编码后输出。
- 了解H265编码帧间编码过程:
1.分块图像帧数据输入运动估算模块(编码器),再结合上一步帧内预测获得的上/下一幅图像帧数据,进行帧间编码;
2.对帧间编码数据进行运动补偿(帧间预测,解码器),注意,解码得到的图像帧与原图像块数据存在残差;
3.分块原图像帧减去帧间预测结果,得到帧内残差信号;
4.残差信号经过线性变换,变换后的系数再经过缩放、量化;
5.将处理后的残差信号系数经过反处理,得到残差信号,注意与原残差存在偏差;
6.将残差信号加上帧间预测信号,可得到分块预测图像帧;
7.最终通过环路滤波和自适应补偿,去除“分块效应”,得到未经分块的图像帧;
8.帧间编码信号和残差信号系数一起进行熵编码后输出。
-
了解JPEG格式。
JPEG即联合图像专家组,是用于连续色调静态图像压缩的一种标准,文件后缀名为,jpg或,jpeg,是最常用的图像文件格式。
-
了解YUV。
YUV是一种颜色空间,基于YUV的颜色编码是流媒体的常用编码方式。
-
了解YUV数据的几种采样格式。
(1) YUV 4:4:4
YUV三个信道的抽样率相同,因此在生成的图像里,每个象素的三个分量信息完整(每个分量通常8比特),经过8比特量化之后,未经压缩的每个像素占用3个字节。
(2) YUV 4:2:2
每个色差信道的抽样率是亮度信道的一半,所以水平方向的色度抽样率只是4:4:4的一半。对非压缩的8比特量化的图像来说,每个由两个水平方向相邻的像素组成的宏像素需要占用4字节内存(亮度2个字节,两个色度各1个字节)。
(3) YUV 4:1:1
4:1:1的色度抽样,是在水平方向上对色度进行4:1抽样。对于低端用户和消费类产品这仍然是可以接受的。对非压缩的8比特量化的视频来说,每个由4个水平方向相邻的像素组成的宏像素需要占用6字节内存(亮度4个字节,两个色度各1个字节)。
(4)YUV4:2:0
4:2:0并不意味着只有Y,Cb而没有Cr分量。它指得是对每行扫描线来说,只有一种色度分量以2:1的抽样率存储。相邻的扫描行存储不同的色度分量。
-
图像基础。
1,像素是组成图像的最小最基本元素,是分辨率的单位,方形,是一种数据结构,包含了RGB三个数据,分别对应红色、绿色、蓝色。
2,子像素:像素上的每种颜色叫一个子像素
3,像素插值:在感应器象素测量的基础上,进行计算和插值,增加照片象素。
4,分辨率:用640*480表示,它表示横向640像素和纵向480像素,因此其总数为640 × 480 = 307,200像素。
5,对比度:描述图像中最亮的白和最暗的黑之间的差异。
6,饱和度:饱和度是指色彩的鲜艳程度,也称色彩的纯度。饱和度取决于该色中含色成分和消色成分(灰色)的比例。
7,色调:画面中占主导地位的颜色。
8,灰度:用不同亮度的黑色来显示图像。
9,渲染:着色器将绘图数据加上着色数据后就被送入渲染器,渲染器根据绘图数据描述,将像素填充到描述的线框组里并送入帧缓存,然后然后送入显示器,显示器获取到帧缓存的数据后再根据数据的描述来绘图到屏幕上。
10,PPI;每英寸所拥有的图像数目:横向平方加纵向平方开根除以屏幕尺寸。