基于DSP的AVS视频编码算法优化与实现(12)

时间:2025-01-20

AVS

华J匕电力人学硕士学位论文

该模块包括整数8×8变换、量化和扫描、反量化和反变换。整个过程以帧内或帧问预测得到的残差块作为输入,通过整数变换、量化和ZiaZig扫描,得到二维幅值和游程数组并提供给后续熵编码模块;同时,对量化后的系数进行反量化和反变换,利用其结果和先前计算的残差信号重建原始图像,作为帧I’日J编码时的参考图像使用。该模块共包含五个实现函数:前向8×8整数变换fdct8x8(intl6t奉data)、量化quant8x8(intl6_t}data,constint32.tQp,int32_tiSjntra)、反变换idct8x8(intl6-t事data)、反量化iquant8x8(intl6一t宰data,constint32_tQp)和扫描scan—zig_8x8(intl6一t木leVel,int16一t母run,int16-t牛data)。

AvS的8x8整数变换采用了一维8点蝶形快速算法,量化主要通过尺度变换结合查表操作实现。该模块的算法步骤如下:

1.编码过程中,对输入残差矩阵X进行如下二维正变换:

y=(砑汀7’)>>5

其中,r为变换矩阵,y为输出矩阵。(2.1)

将残差矩阵扩大32倍,残差数据比较小,扩大32倍是为了提高其量化精度。

2.将正变换输出系数矩阵先与尺度缩放矩阵玩的元素对应相乘,结果右移19位,再通过量化参数妒查找量化表得到Q_忍6昆[QP】,与尺度缩放后的结果相乘,再右移l5位,保证量化输出结果在16位以内。

硇f√)={[(I巧,_,)I鲫’(,,/)+(1<<l8))>>l9】木Q一砌6HQ同+力>>15(2-2)

式(2—2)中,输出矩阵为坦,每个元素阳Ⅳ∥的符号与玮∥相同;E8’是尺度缩放的调整矩阵,在程序中已经设计成了查找表;f足改善图像视觉效果的偏移量,当I帧时,f=(1<<15)×lO/3l,当P帧时,f_(1<<15)×10/62;陡勋6,P[QP】的值足16位的无符号数,在程序中通过查表提时得到。

3.反量化时的输出矩阵为y’,,Q一勋6,P为反量化表,舶泸是与QP相对应的位移表,反量化公式为:

‰=(玛u)坦一死6M妒】)>>鼬纠Q尸】

4.反变换可以表示为:(2-3)

x‘={rr[(】,’r)>>3】)>>7(2.4)

为了节省编码时间和码流,在该模块中我们对量化后的系数进行了门限处理。8

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219