一、H264编码原理
对于每一帧图像,是划分为一个个块进行编码,就是我们说的宏块
宏块大小一般是16x16(H264、VP8),32x32(H265、VP9),64x64(H265、VP9、AV1),128x128(AV1)
1.宏块扫描
对于一个 YUV 图像,可以把划分成一个个16x16的宏块(以H264 为例),Y、U、V 分量块小分别是 16x16、8x8、8x8。这里我们只对Y分量进行分析(U、V分量同理)。假设Y分16x16 个像素就是一个个数字,采用“之"字方式扫描每一个像素值,则可以得到一个"像素值"

压缩的目的是使得编码器当前的字符出现连续相同的字符比如1,1,1,1,1,1,1,1,我们可以描述为8个1.
比如一连串数字很小数字,越小越容易用更少的bit做压缩,(比如0,1,2,1,0)的“像素串”,因为0在二进制中只占1个位,2只占2个位即可。
2.帧内预测
1.帧内预测就是在已经编码完成的块中找到与将要编码的块相邻的块。一般就是即将编码块的左边块、上边块、左上角块和右上角块,通过将这些块与编码块相邻的像素经过多种不同的算法得到多个不同的预测块。
2.然后我们再用编码块减去每一个预测块得到一个个残差块。最后,我们取这些算法得到的残差

本文介绍了H264视频编码的基本原理,包括宏块扫描、帧内和帧间预测,以及DCT变换和量化步骤。通过宏块划分和预测技术减少空间冗余,DCT变换则利用视觉特性去除高频信息,量化进一步压缩数据,以实现高效的视频编码。
最低0.47元/天 解锁文章
3100

被折叠的 条评论
为什么被折叠?



