基于DSP的AVS视频编码算法优化与实现(9)
时间:2025-01-20
时间:2025-01-20
AVS
华J匕电力人学硕士学位论文
2.2AVS视频压缩编码的关键技术
AVS.P2视频部分采用了一系列技术来达到高效率的视频编码,包括帧内预测、帧问预测、变换、量化和熵编码等。帧问预测使用基于块的运动矢量来消除图像问的时间冗余;帧内预测使用空问预测模式来消除图像内的冗余。再通过对预测残差进行变换和量化消除图像内的空间和视觉冗余。最后,运动矢量、预测模式、量化参数和变换系数用熵编码进行压缩,消除统计冗余。
重新编写的AVS算法C语言代码完全支持AVS的新特性。算法共分为五个模块:帧内编码模块、帧间编码模块、变换量化模块、熵编码模块和去块滤波模块。算法结构。2.2.1帧内预测
AVS视频标准采用空域内的多方向帧内预测技术。基于空域多方向的帧内预测可以提高预测精度,从而提高编码效率。AVS视频标准的帧内预测基于8x8块人小,亮度分量的5种预测模式分别对应五个方向的预测:水平、垂直、均值、左下对角和右下对角,色度分量4种预测模式对应均值、水平、垂直和平面。AVS视频的帧内预测还对相邻像素进行了滤波处理来去除噪声,提高编码精度。
在AVS标准中,亮度块和色度块的帧内预测块P都是基于8×8子块,亮度块有5种可选预测模式,色度块有4种预测模式,二者预测模式类似。编码器通常选择使P块和编码块之间差异最小的预测模式。
对一个宏块进行帧内编码的主要过程就是对宏块亮度的4个8×8子块依次进行最优亮度预测模式选择。选择的方法是,首先根据当前子块的周围子块存在情况得到当前子块可能存在的预测模式,然后逐一计算这些可能预测模式下的预测值,进而计算出预测值和当日,J.值的残差块,最后利用经Hadmard变换后的绝埘误差和(SATD)最小准则得到最佳的预测模式。此处,选择SATD作为预测准则是因为帧内预测时需要对所有模式进行检测,绝对误差和(SAD)仅反映残差的时域差异,即PSNR值的影响,而Hadmard变换可以看作简单的时频变换,其值在一定程度上可以反映生成码流的大小,因此将其作为模式选择的依据可以同时兼顾预测模式对PSNR和码流大小的影响。色度块的处理与亮度块类似,唯一的区别就是色度块比亮度块少左下对角和右下对角两种预测模式。
实现帧内编码模块的主要函数包括:AVS
AVSmodedecisionintramodedecisionintray(AVSt幸t)和uv(AVSt木t)对亮度和色度进行帧内模式预测,然后调用5