首页> 中国专利> MPEG到AVS视频编码转换系统

MPEG到AVS视频编码转换系统

摘要

本发明公开了一种MPEG到AVS的视频编码转换系统,该系统的编码转码器将解复用输出的MPEG视频数据完全解码到像素域,再结合DCT帧内预测模式判断模块、运动矢量重用及帧间宏块模式判断模块进行AVS编码,然后送入MPEG系统层复用模块,转换器中的DCT帧内预测模式判断模块利用输入码流的VLC解码再反量化后的DCT系数进行帧内预测模式判断;运动矢量重用及帧间宏块模式判断模块中的运动矢量重用子模块将MPEG码流中的运动矢量MV作为AVS运动估计的参考,通过运动矢量MV优化后,获得半像素精度运动矢量MV,帧间宏块模式判断子模块则通过MPEG解码宏块,判断AVS宏块的编码类型,划分尺寸。本发明避免了复杂的解码-重编码处理,所需的计算量极低,可以采用软件方式实现MPEG-AVS转码,提供AVS节目源,推进AVS标准的应用发展。

著录项

  • 公开/公告号CN101668207A

    专利类型发明专利

  • 公开/公告日2010-03-10

    原文格式PDF

  • 申请/专利权人 天津大学;

    申请/专利号CN200910070597.6

  • 申请日2009-09-25

  • 分类号H04N7/26;H04N7/50;

  • 代理机构天津市北洋有限责任专利代理事务所;

  • 代理人李素兰

  • 地址 300072 天津市南开区卫津路92号

  • 入库时间 2023-12-17 23:40:01

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-11-13

    未缴年费专利权终止 IPC(主分类):H04N7/26 授权公告日:20111214 终止日期:20120925 申请日:20090925

    专利权的终止

  • 2011-12-14

    授权

    授权

  • 2010-04-28

    实质审查的生效 IPC(主分类):H04N7/26 申请日:20090925

    实质审查的生效

  • 2010-03-10

    公开

    公开

说明书

技术领域

本发明涉及一种视频编码技术,特别是涉及利用软件方法实现两种视频编码的转换的系统。

背景技术

数字多媒体技术发展迅速,多媒体应用领域呈现出多种标准共存的局面。AVS(Audio Video coding Standard)是由中国信息产业部科学技术司于2002年6月批准成立的音视频编解码技术标准工作组所制定的标准,具有中国自主的知识产权。AVS标准将在数字电视、IPTV以及移动多媒体服务等领域中获得广泛的应用。

然而,由于AVS标准的产业化还处于起步阶段,符合AVS标准的数字多媒体资源较少,实际应用中急需可以提供AVS格式的硬件或软件产品。

发明内容

鉴于上述技术问题,本发明提出了一种MPEG到AVS视频编码转换系统,利用软件实现MPEG编码到AVS编码的转换,高效率地实现大量MPEG格式的码流共享为AVS格式。

本发明提出了一种MPEG到AVS的视频编码转换系统,包括MPEG格式的数据流、MPEG系统层解复用模块和MPEG系统层复用模块,其特征在于,该系统还包括编码转换器,以及该编码转换器中的DCT帧内预测模式判断模块、运动矢量重用及帧间宏块模式判断模块,MPEG格式的数据流首先经过MPEG系统层解复用模块,解复用后分别提取出MPEG视频、音频数据及其他数据;其中解复用得到的MPEG音频数据不进行转码处理,直接送入后端的“MPEG系统层复用”模块,而编码转码器将解复用输出的MPEG视频数据完全解码到像素域,再结合DCT帧内预测模式判断模块、运动矢量重用及帧间宏块模式判断模块进行AVS编码,然后送入MPEG系统层复用模块,转换器中的DCT帧内预测模式判断模块利用输入码流的VLC解码再反量化后的DCT系数进行帧内预测模式判断;运动矢量重用及帧间宏块模式判断模块中的运动矢量重用子模块将MPEG码流中的运动矢量MV作为AVS运动估计的参考,通过运动矢量MV优化后,获得半像素精度运动矢量MV,帧间宏块模式判断子模块则通过MPEG解码宏块,判断AVS宏块的编码类型,划分尺寸。

所述DCT帧内预测模式判断模块的算法,包括以下步骤:

在帧内预测模式判断中,计算图像纹理的角度θ(请补充计算公式)和参数ρ,可以得到当前待编码块以及其左邻和上邻数据块的纹理方向,当待编码宏块与左邻或上邻数据宏块纹理方向一致时,得到帧内预测模式;

θ=arctan(Σu=17|F(u,0)|Σv=17|F(0,v)|)---(1)

式中,F(u,0)为DCT系数的第一列AC系数;F(0,v)为DCT系数的第一行AC系数。当待编码宏块与左邻或上邻数据宏块纹理方向存在较大差异时,即待编码宏块、左邻和上邻宏块中有两个分别满足20°<=θ<=35°或55°<=θ<=70°而不能进行水平、垂直和斜向预测时,需要进一步在DCT域计算预测矩阵,比较帧内预测模式与当前数据块的当前待编码块的DCT数据绝对误差和SAD,得到最佳帧内预测模式,具体的算法处理流程如下:

步骤1,判断当前待编码块是否处于图像左边缘或上边缘,如果是,则判断为DCT帧内预测模式,否则进入步骤2;

步骤2,判断当前宏块,左邻块和上邻块的θ值是否都满足T1<θ<T2,T1=35°、T2=55°,如果是,说明当前宏块所在区域具有一定的斜向纹理,进行步骤3,否则进行步骤4;

步骤3,判断参数ρ的值,如果ρ=1则可判断当前待编码块的帧内预测模式为右上帧内预测模式,ρ=0判断为右下帧内预测模式;

步骤4,判断当前宏块和上邻块的θ值是否都满足0°<=θ<T3(T3=20°),如果是,说明当前宏块所在区域具有一定的垂直纹理,可判断为垂直帧内预测模式,否则进行步骤5;

步骤5,判断当前宏块和左邻块的θ值是否都满足T4<θ<=90°,T4=70°,如果是,说明当前宏块所在区域具有一定水平纹理,可判断为水平帧内预测模式,否则进行步骤6;

步骤6,分别计算其与当前待编码块的DCT数据绝对误差和:

SAD=|DCT(D)-DCT(S)|=Σi=0i<8Σj=0j<8|Dij-Sij|

步骤7,记SADHZ为水平预测的绝对误差和,SADVT为垂直预测的绝对误差和,SADDC为DC预测的绝对误差和。通过比较SADHZ,SADVT和SADDC,确定最小者所对应的模式为最佳帧内预测模式;

上述的参数参数ρ由8×8 DCT系数矩阵的[0][1]和[1][0]位置的数据的正负符号确定,当两系数同号,参数ρ=1,当两系数异号,参数ρ=0。

所述运动矢量重用及帧间宏块模式判断模块,该模块在判断宏块划分模式时主要采用宏块细节程度作为判断准则,帧间宏块划分模式选择16×16和8×8两种,具体判断过程包括以下步骤:

步骤1,所有帧间宏块都初始化为16×16宏块划分模式;

步骤2,统计MPEG码流中的每个宏块残差系数的VLC编码比特数,计算当前帧宏块残差系数的VLC编码平均比特数,并以此平均比特数作为宏块是否属于细节较多区域的评判标准的基础门限;

步骤3,用每个宏块残差系数的VLC编码比特数和基础门限相除,如果比值大于1.5倍(实验设定阈值),则说明该宏块的细节程度明显大于图像平均值,需要使用8×8模式进行编码;否则使用默认的16×16模式。

运动矢量重用及帧间宏块模式判断模块中的帧间宏块模式判断子模块的算法,还包括以下步骤:

根据区域特性判断AVS宏块的编码类型,表1、表2为转换编码过程中MPEG帧间宏块编码类型到AVS帧间宏块编码类型的转换初始化映射表;

表1 P帧宏块编码类型初始化映射表

表2 B帧宏块编码类型初始化映射表

AVS中B帧宏块的4个8×8子块采用不同的预测方向进行编码,为了获得8×8子块的编码类型,需进一步进行处理:

初始化8×8子块E的编码类型为E子块所在宏块的MPEG编码类型,MPEG中当前编码宏块为前向预测编码,则E子块初始化为SB_Fwd_8×8;获得E子块相邻宏块A、B、C的MPEG编码类型:如果E子块的初始化编码类型为SB_Fwd_8×8或SB_Sym_8×8,而A、B、C三宏块的MPEG宏块编码类型均为后向预测编码,则判断E子块的编码类型为SB_Bck_8×8,否则判断为E的初始化编码类型;如果E子块的初始化编码类型为SB_Bck_8×8或SB_Sym_8×8,而A、B、C三宏块的MPEG宏块编码类型均为前向预测编码,则判断E子块的编码类型为SB_Fwd_8×8,否则判断为E的初始化编码类型;

帧间宏块模式判断算法的步骤如下:

步骤1,如果与当前编码宏块对应的MPEG解码宏块是帧内预测编码,则该宏块采用AVS帧内预测编码,由于当前宏块周围都是帧间宏块,只有残差数据,故不能像前节使用DCT域帧内预测模式判断,这里直接选择DC模式;

步骤2,判断帧间宏块的划分尺寸:如果是16×16划分尺寸,则进行步骤3;如果是8×8划分尺寸,则进行步骤4;

步骤3,按照表1、表2进行16×16划分模式下的编码类型映射;

步骤4,按照表1、表2进行8×8划分模式的编码类型初始化映射,然后按照前面介绍的8×8子块编码类型校正方法获得当前编码宏块内所有8×8子块的最终编码类型,并与16×16划分模式进行编码开销比较,选择最小者进行编码;

步骤5,如果是B帧宏块则进行Direct模式校正;

步骤6,对满足帧内预测宏块编码校正条件的帧间宏块进行帧内预测编码校正,帧内预测模式判定方法同步骤1。

运动矢量重用及帧间宏块模式判断模块中的运动矢量重用子模块的算法,还包括以下步骤:

对于采用16×16的编码模式和采用8×8的宏块划分模式,均以MPEG解码运动矢量作为最优的半像素精度运动矢量,然后在此运动矢量基础上做一次1/4像素精度的运动矢量重搜索优化,即搜索该半像素运动矢量周围的8个1/4像素精度运动矢量,从而得到最优1/4像素精度的运动矢量,以及采用8×8的宏块划分模式记录4个运动矢量。

与现有技术相比,本发明提供了一种MPEG到AVS的转换编码系统,避免了复杂的解码-重编码处理,所需的计算量极低,可以采用软件方式实现MPEG-AVS转码,提供AVS节目源,推进AVS标准的应用发展。

附图说明

图1为本发明的MPEG到AVS的视频编码转换系统结构图;

图2为本发明的图像纹理方向角示意图;

图3为8×8子块时域预测方向示意图;

图4为1/4像素运动矢量优化示意图;

图5为本发明实施例的标准测试码流实验R_D曲线图;

图6为本发明实施例的DVD序列R_D曲线图。

具体实施方式

目前,实际应用中的数字多媒体资源主要为MPEG标准格式。MPEG标准的多媒体资源可以分为节目流(PS)和传输流(TS)两种,针对这两种格式,可以采用图1所示的转换编码结构完成转码处理。由于AVS标准中的系统层部分和音频编码标准均可兼容MPEG标准的系统层和音频标准,本发明所提出的编码转换码系统中对音频和系统层复用采用了符合MPEG标准的技术。

如图1所示,为MPEG到AVS的视频编码转换系统结构图,MPEG格式的数字多媒体节目首先经过“MPEG系统层解复用”模块11,解复用后分别提取出MPEG视频、音频数据及其他数据;其中解复用得到的MPEG音频数据不进行转码处理,直接送入后端的“MPEG系统层复用”模块13,而解复用输出的MPEG视频数据被转码为AVS格式,然后送入“MPEG系统层复用”模块13。MPEG格式视频数据到AVS格式视频数据的编码转码器12的结构见图1中的虚线框部分,包括DCT帧内预测模式判断模块121和运动矢量MV重用及频域宏块模式判断模块122,还包括硬件部分,包括变长解码(VLD)、反量化(IQ)、反向离散余弦转换器(IDCT)、运动补偿(MC)等。该转码器12将输入的MPEG码流完全解码到像素域,再进行AVS编码,转换器中的关键处理模块为DCT帧内预测模式判断模块121,DCT帧内预测模式判断模块121利用输入码流的VLC解码再反量化后的DCT系数进行帧内预测模式判断;运动矢量重用及帧间宏块模式判断模块122中的运动矢量重用子模块将MPEG码流中的运动矢量MV作为AVS运动估计的参考,通过运动矢量MV优化后,可以较为准确的获得半像素精度MV,宏块模式判断子模块则通过MPEG解码宏块的编码类型、编码比特数等信息快速判断AVS宏块的编码类型,划分尺寸等参数,采用这两部分技术可以极大地降低转码计算量。与传统的简单级联转码结构(解码器和编码器级联)不同的是,图1所示的编码转换充分利用了MPEG解码信息,在AVS编码某宏块之前就基本确定了该宏块的编码参数,在AVS编码器中直接编码,而不是遍历式的编码,这样一来,提高了编码转换的效率。

以下将对本发明中的主要算法模块-“DCT帧内预测模式判断”和“运动矢量重用及帧间宏块模式判断”进行详细介绍。

一、DCT域帧内预测模式判断

AVS标准的帧内预测亮度帧内预测模式共有5种,分别为水平、垂直、DC帧内预测模式、右上和右下帧内预测模式。事实上,不同的帧内预测模式适用于不同纹理特性的图像数据块。本专利采用如下算法判断转码中AVS帧内预测模式:

图2中,θ表示图像纹理的角度,F(u,v)为DCT系数。其中DCT系数为MPEG输入码流中各宏块中的DCT变化系数,通过计算θ,并选择与θ相同方向的帧内预测模式,可以得到右上、水平以及垂直帧内预测模式。然而,采用该方法计算所得的θ在0~90度的范围内,无法获得AVS帧内预测模式的所有预测方向(如右下预测)。因此,进一步引入参数ρ,用于辅助判断θ的角度范围,参数ρ由8×8DCT系数矩阵的[0][1]和[1][0]位置的数据的正负符号确定,这两个系数分别是AC系数的最低频分量,反映了图像的基本纹理信息:

DCT系数[0][1]位置系数表示的纹理为:正负

DCT系数[1][0]位置系数表示的纹理为:正负

[0][1]、[1][0]两位置系数同号时图像大致纹理为:正正负负

[0][1]、[1][0]两位置系数异号时图像大致纹理为:正负负正

由上述分析可知,当两系数同号(ρ=1)时图像纹理大致为右上方向,异号(ρ=0)时图像纹理大致为右下方向,结合参数θ,可以预测图像数据块的纹理方向。

在帧内预测模式判断中,计算θ和ρ可以得到当前待编码块以及其左邻和上邻数据块的纹理方向,当待编码块与左邻或上邻数据块纹理方向一致时,可以快速得到帧内预测模式。当纹理方向存在较大差异时,则采用进一步在DCT域计算预测矩阵,比较帧内预测模式与当前数据块的SAD,得到最佳帧内预测模式,具体的算法处理流程如下:

1.判断当前待编码块是否处于图像左边缘或上边缘,如果是则判断为DCT帧内预测模式,否则进入步骤2;

2.判断当前宏块,左邻块和上邻块的θ值是否都满足T1<θ<T2(T1=35°、T2=55°),如果是,说明当前宏块所在区域具有一定的斜向纹理,进行步骤3,否则进行步骤4;

3.判断ρ的值,如果ρ=1则可判断当前待编码块的帧内预测模式为右上帧内预测模式,ρ=0判断为右下帧内预测模式;

4.判断当前宏块和上邻块的θ值是否都满足0°<=θ<T3(T3=20°),如果是,说明当前宏块所在区域具有一定的垂直纹理,可判断为垂直帧内预测模式,否则进行步骤5;

5.判断当前宏块和左邻块的θ值是否都满足T4<θ<=90°(T4=70°),如果是,说明当前宏块所在区域具有一定水平纹理,可判断为水平帧内预测模式,否则进行步骤6;

6.计算水平、垂直和DC三种模式的DCT预测数据(计算方法见下节),并分别计算其与当前待编码块的DCT数据绝对误差和:

SAD=|DCT(D)-DCT(S)|=Σi=0i<8Σj=0j<8|Dij-Sij|---(0.1)

7.记SADHZ为水平预测的绝对误差和,SADVT为垂直预测的绝对误差和,SADDC为DC预测的绝对误差和。通过比较SADHZ,SADVT和SADDC,确定最小者所对应的模式为最佳帧内预测模式。

8.由上述算法流程可见,在大多数情况下,不需进行第6步计算即可得到帧内预测模式。第6步处理涉及DCT域的预测矩阵计算。以下论述中用DCT(●)表示DCT变换,D表示8×8像素原始数据,S表示像素域预测数据,R表示像素域预测数据的提取矩阵,P表示DCT域预测数据的提取矩阵,在像素域和DCT域中用提取矩阵和原始数据矩阵相乘就可得到对应的预测矩阵。Y表示DC帧内预测模式中的像素域加权矩阵,Q表示DC帧内预测模式中的DCT域加权矩阵。不同的下标表示了各种帧内预测模式。“×”表示行列式乘法,表示矩阵对应位置的点乘运算。下面以垂直预测为例说明水平预测和垂直预测DCT预测矩阵的计算方法。在像素域,垂直预测矩阵数据Sup采用下式得出:

Sup=Rup×Dup                                        (0.2)

Sup=d70d71d72d73d74d75d76d77d70d71d72d73d74d75d76d77d70d71d72d73d74d75d76d77d70d71d72d73d74d75d76d77d70d71d72d73d74d75d76d77d70d71d72d73d74d75d76d77d70d71d72d73d74d75d76d77d70d71d72d73d74d75d76d77;Rup=0000000100000001000000010000000100000001000000010000000100000001;Dup=d00d01d02d03d04d05d06d07d10d11d12d13d14d15d16d17d20d21d22d23d24d25d26d27d30d31d32d33d34d35d36d37d40d41d42d43d44d45d46d47d50d51d52d53d54d55d56d57d60d61d62d63d64d65d66d67d70d71d72d73d74d75d76d77---(0.3)

其中:Dup表示当前待编码块上方的8×8数据块,dij为其中对应位置的像素数据。

在不考虑计算精度的条件下,DCT变换为线性变换。对式(0.2)进行DCT变换,有:

DCT(Sup)=DCT(Rup×Dup)

        =DCT(Rup)×DCT(Dup)                         (0.4)

        =Pup×DCT(Dup)

可见,垂直帧内预测模式的DCT域预测数据可由像素数据的DCT变换数据(DCT(Dup))和DCT域预测数据的提取矩阵(Pup)获得。其中Pup可通过对Rup进行DCT变换求得:

Pup=DCT(Rup)=DCT(0000000100000001000000010000000100000001000000010000000100000001)=1.0003-1.38721.3066-1.17591.0003-0.78580.5411-0.275800000000000000000000000000000000000000000000000000000000---(0.5)

采用上述类似方法可得到水平预测的DCT域预测矩阵:

DCT(Sleft)=DCT(Dleft)×Pleft                  (0.6)

其中:Pleft=PupT,T表示矩阵转置。

DCT帧内预测模式中需要对水平帧内预测模式或垂直帧内预测模式得到的预测矩阵作一次加权滤波处理,具体加权方式参看标准。以仅左块可用的DC帧内预测模式为例说明该加权过程在DCT域的矩阵处理方法,以及DC帧内预测模式中DCT预测矩阵的生成,在像素域中:

Sdc_left=(Yleft/4)×SleftYleft=3100000012100000012100000012100000012100000012100000012100000013---(0.7)

其中Sdc_left表示仅左块可用时DC帧内预测模式的像素域预测矩阵,Sleft表示水平帧内预测模式的像素域预测矩阵,Yleft表示像素域的加权矩阵。对式(0.7)进行DCT变换,有:

DCT(Sdc_left)=DCT((Yleft/4)×Sleft)                    (0.8)

通过对(0.7)式的数学整理可得:

DCT(Sdc_left)=QleftDCT(Sleft)Qleft=1.000000000000.961900000000.853500000000.691400000000.500000000000.308700000000.146400000000.03810000000---(0.9)

由式(0.8)可见,仅左块可用的DCT预测数据可以由水平帧内预测模式的DCT预测数据(DCT(Sleft))和加权矩阵Qleft获得。采用上述类似方法可得到仅上块可用的DCT域预测数据:

DCT(Sdc_up)=QupDCT(Sup)---(0.10)

进一步可以得到左、上块数据都可用时的DCT预测数据:

DCT(Sdc_both)=(DCT(Sdc_left)+DCT(Sdc_up))/2                (0.11)

其中Qup=QleftT

上述过程中,DCT(D)数据可以在转码中的解码部分直接获得,D则根据不同模式选择左邻或上邻的数据块。采用提取矩阵P和DCT(D)相乘,可以得到水平和垂直模式所对应的DCT预测数据DCT(S)。进一步使用加权矩阵Q与DCT(S)进行点乘运算,可以获得DCT预测所对应的DCT预测数据。P和Q中大部分数据为0,因此计算时较为简单。

二、运动矢量重用和帧间宏块模式判断算法

1、帧间宏块划分模式判断

MPEG的帧间宏块划分在帧编码模式下只支持16×16一种编码模式,在场编码模式下增加了16×8编码模式。AVS在帧间宏块模式上支持16×16,16×8,8×16,8×8四种编码模式。因此在MPEG到AVS转换编码过程中,就需要解决宏块划分模式的重新判断问题。

对于大部分自然序列,16×16宏块划分模式的使用概率最大,其它模式所占比例较小。本发明MPEG到AVS实时转换编码器设计中,帧间宏块划分模式选择16×16和8×8两种。不使用16×8和8×16两种宏块划分模式的主要原因有两点:第一,从计算量考虑,减少这两个模式,在帧间宏块模式判断环节的计算量就减少了50%左右,有利于达到实时转码的要求;第二,16×8和8×16这两种模式也是在细节较多区域使用,分别针对横向纹理较多和纵向纹理较多的情况,对于这两种情况8×8模式可以在只带来一个运动矢量开销的情况下完成。

帧间宏块划分模式判断在图1中运动矢量重用和帧间宏块模式判断模块完成,该模块在判断宏块划分模式时主要采用宏块细节程度作为判断准则,具体判断过程为:

第一步,所有帧间宏块都初始化为16×16宏块划分模式;

第二步,统计MPEG码流中的每个宏块残差系数的VLC编码比特数,计算当前帧宏块残差系数的VLC编码平均比特数,并以此平均比特数作为宏块是否属于细节较多区域的评判标准的基础门限;

第三步,用每个宏块残差系数的VLC编码比特数和基础门限相除,如果比值大于1.5倍(实验设定阈值),则说明该宏块的细节程度明显大于图像平均值,需要使用8×8模式进行编码;否则使用默认的16×16模式。

2、帧间宏块模式判断算法

对于帧间宏块,AVS标准提供了多种编码类型。虽然MPEG宏块编码类型不能和AVS宏块编码类型一一对应,不能在编码端被直接使用,但是它却能反映出图像的区域特性,从而根据这些区域特性判断AVS宏块的编码类型。表1、表2给出了转换编码过程中MPEG帧间宏块编码类型到AVS帧间宏块编码类型的转换初始化映射表。

表1 P帧宏块编码类型初始化映射表

表2 B帧宏块编码类型初始化映射表

AVS中B帧宏块的4个8×8子块采用不同的预测方向进行编码,为了获得8×8子块的编码类型,需进一步进行处理,如图3,初始化8×8子块E的编码类型为E子块所在宏块的MPEG编码类型,MPEG中当前编码宏块为前向预测编码,则E子块初始化为SB_Fwd_8×8;获得E子块相邻宏块A、B、C的MPEG编码类型:如果E子块的初始化编码类型为SB_Fwd_8×8或SB_Sym_8×8,而A、B、C三宏块的MPEG宏块编码类型均为后向预测编码,则判断E子块的编码类型为SB_Bck_8×8,否则判断为E的初始化编码类型;如果E子块的初始化编码类型为SB_Bck_8×8或SB_Sym_8×8,而A、B、C三宏块的MPEG宏块编码类型均为前向预测编码,则判断E子块的编码类型为SB_Fwd_8×8,否则判断为E的初始化编码类型。

宏块模式判断算法的步骤如下:

步骤1,如果与当前编码宏块对应的MPEG解码宏块是帧内预测编码,则该宏块采用AVS帧内预测编码,由于当前宏块周围都是帧间宏块,只有残差数据,故不能像前节使用DCT域帧内预测模式判断,这里直接选择DC模式;

步骤2,判断帧间宏块的划分尺寸:如果是16×16划分尺寸,则进行步骤3;如果是8×8划分尺寸,则进行步骤4;

步骤3,按照表1、表2进行16×16划分模式下的编码类型映射;

步骤4,按照表1、表2进行8×8划分模式的编码类型初始化映射,然后按照前面介绍的8×8子块编码类型校正方法获得当前编码宏块内所有8×8子块的最终编码类型,并与16×16划分模式进行编码开销比较,选择最小者进行编码;

步骤5,如果是B帧宏块则进行Direct模式校正;

步骤6,对满足帧内预测宏块编码校正条件的帧间宏块进行帧内预测编码校正,帧内预测模式判定方法同步骤1。

3、运动矢量重用及优化算法

运动矢量的重用是视频转换编码中的关键技术。在相同标准间的转换编码过程中,输入码流的运动矢量是经过编码器运动估计过程的,它代表着在某种运动搜索算法下的最优运动矢量。在不同标准间的转换编码,由于参考图像插值过程和运动矢量精度等差异,运动矢量重用并不会带来像同类码流转换时的直接利益,但是却可以作为运动估计时的重要参考运动矢量。MPEG的亮度参考图像是半像素精度,其半像素点是通过相邻的两个整像素样本线性插值而来。AVS的亮度参考图像是1/4像素精度,其插值过程参见标准文献。比较这两个标准中半像素点的计算过程,MPEG采用线性插值滤波器,AVS采用的4抽头滤波器(-1/8,5/8,5/8,-1/8),这两种半像素插值滤波器虽然结构不同,但最终插值结果反映在图像上的差别却不很明显。因此,可以认为MPEG的半像素精度运动矢量近似AVS编码器运动搜索得到的最优半像素精度运动矢量,转码时即以MPEG解码运动矢量作为最优的半像素精度运动矢量(图4中G所示为该半像素精度运动矢量所指的参考块位置),从而省去了整像素运动矢量搜索和半像素运动矢量搜索过程,然后在此运动矢量基础上做一次1/4像素精度的运动矢量重搜索优化,即搜索该半像素运动矢量周围的8个1/4像素精度运动矢量(图4中a~h为8个1/4像素精度运动矢量所指的参考块位置),从而得到最优1/4像素精度的运动矢量。

对于采用16×16的编码模式,直接采用以上方法,得到最优1/4像素精度运动矢量;对于8×8宏块划分模式,由于MPEG只有宏块级的运动矢量,因此需要独立编码每个8×8子块,每个8×8子块都采用MPEG的宏块级运动矢量,然后再分别做重搜索优化。

下面通过一个具体实施实例,进一步说明本发明的技术方案。

实验采用AVS标准工作组提供的参考软件rm52j_r1作为参考,实验结果中用REF中表示。本专利设计实现的MPEG到AVS转码系统在实验结果中用TRANS表示。实验序列为用bus_cif,mobile_cif,football_704×480,tempete_704×480标准测试序列制作的MPEG PS流(帧率:30),以及用于实际验证的DVD节目(MPEG PS流)《功夫》(720×576,帧率:30)。实验环境为P41.5GHZ,320M内存的PC机。各序列R-D曲线如图5和图6所示。

表3给出了实验中参考编码器REF与本文转码系统TRANS的运行时间,PSNR和比特率,以及计算量(时间比值倒数)的比较结果,量化参数为QP=35。

表3 不同测试序列的时间、PSNR和比特率的比较

图5、6和表3的实验结果表明,本专利提出的转码系统与参考编码器相比在相同码率下,图像PSNR略有降低。在football序列降低最为明显,原因是由于该序列运动较快、而且复杂,MPEG编码的运动矢量较大,在转码时增加了AVS编码开销,导致比特率上升。由表3可知,本专利转码系统在保证输出图像质量的前提下,计算量只有参考编码器的15%左右,实验中还采用了其他测试序列获得了一致的结果。

为了验证转码码流的正确性,实验中还采用了上海广电有限公司的AVS标准数字电视机顶盒作为辅助验证手段。将转码得到的AVS传输流(AVS TS)通过码流发送板卡发送到机顶盒,机顶盒的音/视频输出送入电视机,传输流节目播放流畅,音视频同步良好。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号