首页> 中国专利> 用于H.264视频解码系统中帧间预测过程的参考图像管理方法

用于H.264视频解码系统中帧间预测过程的参考图像管理方法

摘要

一种用于H.264视频解码系统中帧间预测过程的参考图像管理方法,对解码图像缓存中的参考图像进行初始化和重排序操作,并建立参考图像索引和参考图像在解码图像缓存的索引值的直接映射关系,在解码过程开始时,解码图像缓存中的第一个索引被分配给第一幅解码的图像,然后索引1-16依次分配给后续的解码图像;当解码第17幅图像时,这幅图像被存储进解码图像缓存的第17个索引,然后对解码图像缓存中的参考图像进行标记操作,从解码图像缓存中排出一幅图像;空出来的解码图像缓存位置留作存储下一幅待解码图像。本发明能大大提高效率、有效节省硬件开销和功耗、提升整体性能。

著录项

  • 公开/公告号CN102025992A

    专利类型发明专利

  • 公开/公告日2011-04-20

    原文格式PDF

  • 申请/专利权人 浙江大学;

    申请/专利号CN201010554801.4

  • 申请日2010-11-23

  • 分类号H04N7/26(20060101);H04N7/32(20060101);

  • 代理机构33201 杭州天正专利事务所有限公司;

  • 代理人王兵;王利强

  • 地址 310027 浙江省杭州市西湖区浙大路38号

  • 入库时间 2023-12-18 02:09:16

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-01-11

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

    专利权的终止

  • 2012-12-05

    著录事项变更 IPC(主分类):H04N7/26 变更前: 变更后: 申请日:20101123

    著录事项变更

  • 2012-11-21

    授权

    授权

  • 2011-06-08

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

    实质审查的生效

  • 2011-04-20

    公开

    公开

说明书

技术领域

本发明涉及H.264视频标准解码系统领域,尤其是一种对于H.264解码系统中,在帧间预测部分的参考图像管理方法。

背景技术

目前,H.264视频压缩标准由于其优良性能,已经成为诸多视频应用领域的主流标准。然而,其高效的压缩策略给解码系统的实现也带来了一定的难度,尤其在实时应用领域,对解码系统提出了更高的要求。

由于H.264支持多达16个参考图像,多个参考图像的管理具有一定的复杂性,这造成了基于参考图像管理机制的运动矢量生成过程和运动补偿过程成为了解码系统中最复杂和最耗时的两个环节。运动矢量生成过程为当前解码分割块得到指向其参考像素块的运动矢量,其中这个参考像素块位于16个参考图像之一。在运动补偿过程中,根据产生的运动矢量和参考图像索引,从参考图像中读取出正确的参考像素以产生当前块的像素值。

图1所示是传统的定位参考像素块的方法。当前解码图像首先被保存进当前图像缓存区。解码完毕之后,它被转移到解码图像缓存中以便后面的帧间运动补偿过程使用。一个包含16个条目的DPB_RP结构用来登记DPB的使用状态。在新一幅图像解码开始前,通过对当前DPB的图像进行参考图像初始化和重排序过程产生参考图像列表(reference picture list, 简称RefPicList)以便当前图像的帧间预测过程使用。参考图像的定位是通过refidx来得到的。在传统的方法里,refidx首先被映射到指向登记在DPB_RP结构里索引值(简称rpidx),然后rpidx再被映射到dpbidx。至此,参考图像被定位。具体的参考像素块的位置通过当前解码像素块的运动矢量值进一步定位。很明显,只是一个两步映射的策略。并且在解码图像的存储过程中包含一步耗时耗能的整幅图像搬移过程。

帧间预测过程基于大小从16x16到4x4分布的树形宏块分割块结构,其运动矢量生成过程包含空间相关预测和直接预测两种模式,其中直接预测模式又包含空间直接预测和时间直接预测两种模式。时间直接预测模式的复杂度最高,在码流中不包含任何运动矢量相关的数据,其运动矢量(包括前向和后向)的得到是通过当前解码分割块和存在于后向参考图像里的共享参考块的时间关系计算得出。其具体过程如下所述:

步骤一:得到共享块的运动信息。

共享参考图像位于后向参考中。对于只支持帧或场的图像组的简单情形,当前解码块在当前解码图像中的位置就是共享块在共享参考图像中的位置。对于支持宏块级帧场自适应和图像级帧场自适应的视频流,共享块位置的得到变得复杂起来,根据当前解码图像的编码结构和共享参考图像的编码结构可以分成三种情形:单对单,帧对场,场对帧。然后共享参考块的运动信息(包括共享运动矢量,简称mvCol,和共享图像参考索引,简称refidxCol)就很容易得到了。

步骤二:得到当前解码块的参考图像索引

后向图像参考索引(简称refidxL1)指向后向参考图像列表中的第一个索引。前向的参考图像索引(简称refidxL0)通过映射共享参考块的refidx来得到。由于共享参考块的解码参考图像在共享参考块解码时的参考图像列表中的索引值不同与在当前参考图像列表中的索引值,因此两个不同图像参考列表需要建立一种映射关系。

如前所述,这种映射关系分为三类:单对单,帧对场,场对帧,如图像2所示。图2(a)表示了单对单的映射关系,这时共享参考块和当前解码块属于同一种解码结构。图2(b)表示了帧对场的映射关系,这时共享参考块被解码为帧块,当前分割块被解码为场块。场对帧的映射关系与帧对场的映射关系相反,如图2(c)所示。

传统的映射机制是对于上述每一种映射关系都要进行从refidxCol到dpbidx的映射,然后再映射到refidxL0的过程。如前所述,每一次的refidx到dpbidx的映射或者从dpbidx到refidx的映射都要经过2个步骤。所以,从refidxCol到dpbidx的映射过程包含4个步骤。效率无疑是很低的。另外,在这种传统的映射机制下,4个映射表:refidx-rpidx, rpidx-refidx, rpidx-dpbidx, dpbidx-rpidx 对于每一幅解码图像都要进行保存了,这无疑增加不少硬件开销。

步骤三:得到当前解码块的运动矢量

当前解码块的运动矢量(包括两个方向)是通过对mvCol值进行比例划分得到的。比例划分因子通过参考图像和当前解码图像的图像序号(picture order count,简称POC)进行计算得到。

发明内容

为了克服已有H.264视频解码系统中帧间预测过程的效率较低、硬件开销和功耗较大、整体性能较低的不足,本发明提供一种大大提高效率、有效节省硬件开销和功耗、提升整体性能的用于H.264视频解码系统中帧间预测过程的参考图像管理方法。

本发明解决其技术问题所采用的技术方案是: 

一种用于H.264视频解码系统中帧间预测过程的参考图像管理方法,对解码图像缓存(decoded picture buffer,简称DPB)中的参考图像进行初始化和重排序操作,并建立参考图像索引(reference index,简称refidx)和参考图像在解码图像缓存的索引值(dpb index,简称dpbidx)的直接映射关系,在解码过程开始时,解码图像缓存中的第一个索引被分配给第一幅解码的图像,然后索引1-16依次分配给后续的解码图像;当解码第17幅图像时,这幅图像被存储进解码图像缓存的第17个索引,然后对解码图像缓存中的参考图像进行标记操作,从解码图像缓存中排出一幅图像;空出来的解码图像缓存位置留作存储下一幅待解码图像;后续的解码过程,每一幅新解码的图像都被存入由上次图像标记过程排出的图像的位置。

进一步,所述帧间预测过程采用直接预测模式,建立共享参考块的解码图像缓存索引值(简称为dpbidxCol)和当前分割块的解码图像缓存索引值的直接关系,将解码图像缓存索引值和共享运动矢量进行统一存储;采用共享参考块的解码图像缓存索引,在解码共享参考块时,存储解码图像缓存的索引信息到存储器中,解码当前分割块时,根据共享分割块位置从存储器中直接读取相应的解码图像缓存索引信息进行调整,每个分割块的存取操作缩减为一次,得到当前解码分割块的参考图像在解码图像缓存中的索引。

再进一步,在视频源具有图像级或宏块级帧场自适应的情况下,共享参考块所依赖的参考块位于顶场,底场还是帧中在解码图像缓存索引中进行标记;同时,共享参考块是采用帧内预测还是帧间预测也需要在解码图像缓存索引标记,解码图像缓存索引采用7比特来标记所有的内容。

更进一步,在对解码图像缓存的索引信息进行存储时,将所需的7比特缩减为6比特的标记调整方式,所需的标记包括对参考索引号的标记,对顶场、底场和帧的标记,以及对帧内预测和帧间预测的标记。

本发明的技术构思为:通过在参考图像管理过程中采用两种有效的调度策略提高以下两个过程的效率和节省其带来的硬件开销和功耗:

A.运动补偿中参考像素定位过程

B、直接预测模式中共享参考块解码时的参考图像列表和当前参考图像列表的关系映射过程

首先通过建立refidx和dpbidx的直接映射关系的策略提高了运动补偿过程参考像素定位的效率。该策略的特征在于:

1、在对DPB中的参考图像进行初始化和重排序操作之后建立起refidx与dpbidx的直接映射关系,代替传统的refidx-rpidx-dpbidx的两层映射。

2、将DPB的条目增加到17个,取消了传统的从当前图像缓存中整体搬移图像都DPB中的这个耗时耗能过程,改为解码图像直接被存储进DPB,然后再进行图像标记。

其次,本发明通过在直接预测中用共享参考块的解码图像缓存索引代替refidxCol的策略简化了不同参考列表的关系映射过程。

传统的从refidxCol到refidxL0的映射过程包含了4个步骤。而当前解码分割块通过refidx定位参考像素时,refidx需要重新映射回dpbidx。所以,在直接预测过程中为了定位当前分割块的参考像素,传统方法需要6次映射过程。而根据直接预测的特征,dpbidxCol和当前分割块的dpbidx肯定是指向DPB中的同一个索引,所以用dpbidxCol代替refidxCol的策略将会建立从共享参考块的参考像素位置到当前分割块的参考像素位置的直接映射。具体步骤包括:

1、在解码共享参考块时存储dpbidx信息到存储器中,不同传统的存储refidx信息的方法。

2、解码当前分割块时,根据共享分割块位置从存储器中直接读取相应的dpbidxCol信息,根据共享参考块的映射方式对dpbidxCol进行适当调整就可直接得到当前解码分割块的参考图像在DPB中的索引。

本发明的有益效果主要表现在:

1、将传统的两步参考像素定位过程缩减为一步,提高了系统性能的同时,减少了映射表的存储和读取操作。考虑到存储器的存取操作占用了较大比例的系统功耗,本发明在减小系统功耗和硬件开销方面都具有较大的作用。

2、将直接预测模式中参考图像定位的六步映射过程缩减为一步,大大缩减了直接预测模式的硬件设计复杂度,减小了硬件开销,提高了系统性能。

3、避免了解码图像从当前解码图像缓存区到DPB的整帧搬移过程,这大大提高了系统的显示效率,同时避免了大量的存储器存取操作。

4、本发明对于传统的refidx-rpidx和rpidx-dpbidx的映射关系的简化缩减了RISC的工作负载,大大提高了RISC工作效率。

5、对于片上存储器的硬件开销方面,传统的方法需要存储refidx-rpidx和rpidx-dpbidx两个映射表,需要1728比特的存储单元。本发明提出的参考像素的直接定位过程只需要864比特的存储单元,减小了50%的存储单元的消耗。

附图说明

图1为传统的定位参考像素块的方法的示意图;

图2为不同图像参考列表三种映射关系的示意图;

图3为refidx和dpbidx的直接映射示意图;

图4为直接映射的具体系统实现的结构图;

图5为将解码图像保存进DPB的存储-标记过程的示意图;

图6为根据共享参考块位置的映射方式对dpbidxCol进行调整策略的示意图。

具体实施方式

下面结合附图对本发明作进一步描述。

参照图3~图6,一种用于H.264视频解码系统中帧间预测过程的参考图像管理方法,对解码图像缓存中的参考图像进行初始化和重排序操作,并建立参考图像索引和参考图像在解码图像缓存的索引值的直接映射关系,在解码过程开始时,解码图像缓存中的第一个索引被分配给第一幅解码的图像,然后索引1-16依次分配给后续的解码图像;当解码第17幅图像时,这幅图像被存储进解码图像缓存的第17个索引,然后对解码图像缓存中的参考图像进行标记操作,从解码图像缓存中排出一幅图像;空出来的解码图像缓存位置留作存储下一幅待解码图像;后续的解码过程,每一幅新解码的图像都被存入由上次图像标记过程排出的图像的位置。

所述帧间预测过程采用直接预测模式,建立共享参考块的解码图像缓存索引值和当前分割块的解码图像缓存索引值的直接关系,将解码图像缓存索引值和共享运动矢量进行统一存储;采用共享参考块的解码图像缓存索引,在解码共享参考块时,存储解码图像缓存的索引信息到存储器中,解码当前分割块时,根据共享分割块位置从存储器中直接读取相应的解码图像缓存索引信息进行调整,每个分割块的存取操作缩减为一次,得到当前解码分割块的参考图像在解码图像缓存中的索引。

在视频源具有图像级或宏块级帧场自适应的情况下,共享参考块所依赖的参考块位于顶场,底场还是帧中在解码图像缓存索引中进行标记;同时,共享参考块是采用帧内预测还是帧间预测也需要在解码图像缓存索引标记,解码图像缓存索引采用7比特来标记所有的内容。

在对解码图像缓存的索引信息进行存储时,将所需的7比特缩减为6比特的标记调整方式,所需的标记包括对参考索引号的标记,对顶场、底场和帧的标记,以及对帧内预测和帧间预测的标记。

图3所示为refidx和dpbidx的直接映射示意图。不同于图1所示的传统方法,DPB_RP结构在本发明中被省略。本发明中,这种直接映射关系通过CPU建立,DPB_RP结构硬件不可见。具体实现如图4所示,一个通常的网络抽象层单元(network abstraction unit,简称为NALU)包含一个序列参数集(sequence parameter set,简称为SPS), 一个图像参数集(picture parameter set,简称为PPS)和编码的各条带(slice)。PPS,SPS和NALU的头信息由CPU主系统进行解码处理,同时CPU对DPB中的参考图像进行初始化和重排序操作。然后CPU将存储序列参数信息,图像参数信息,条带参数信息以及生成的refidx-dpbidx, dpbidx-refidx两个映射表写进特定的寄存器或者存储器,以便后续的硬件加速器解码工作时进行读取使用。然后CPU配置并启动硬件解码器进行条带数据的解码。当一个NALU的条带数据解码完毕,硬件解码器产生一个中断给CPU用来请求解码下一个NALU的条带数据。

同时,传统的解码-转移-标记过程被存储-标记过程所代替。具体步骤是如图5所示。在解码过程开始时,第DPB中的第一个索引被分配给第一幅解码的图像。然后索引1-16依次分配给后续的解码图像。当解码第17幅图像时,这幅图像被存储进DPB的第17个索引,然后对DPB中的参考图像进行标记操作,从DPB中排出一幅图像。空出来的DPB位置留作存储下一幅待解码图像。后续的解码过程,每一幅新解码的图像都被存入由上次图像标记过程排出的图像的位置。

其次,本发明在直接预测模式中建立共享参考块的dpbidxCol和当前分割块的dpbidx的直接关系时,将dpbidxCol和mvCol进行统一存储。在视频源具有图像级或宏块级帧场自适应的情况下,共享参考块所依赖的参考块位于顶场,底场还是帧中需要在dpbidxCol中进行标记。同时,共享参考块是采用帧内预测还是帧间预测也需要在dpbidxCol标记。由于DPB中有17个条目,所以,dpbidxCol需要7比特来标记所有的内容。而在支持4.1级别的视频流里,mvCol的水平和垂直运动范围分别需要14比特和12比特来标记,所以每一个分割块需要存储33比特。这对于字长度存取的操作来说,每一个分割块需要2次存取操作。本发明对dpbidxCol的标记方式进行了调整,通过6比特来标记上述所有信息,从而将每个分割块的存取操作缩减为一次。如表1所示,本发明针对三种不同情形对dpbidxCol的标记方式进行了比特缩减的调整。

1.     dpbidxCol比共享图像在DPB中存储的索引值(简称为dpbidxCurr)小的情形下。

2.     dpbidxCol与共享图像在DPB中存储的索引值相同的情形下,这意味着共享块将其对立场的某个分割块作为其参考块。

3.     dpbidxCol比共享图像在DPB中存储的索引值大的情形下。

表1为对dpbidxCol标记方式的调整方式:

                              表1

在解码当前分割块时,dpbidxCol根据共享块位置的映射方式进行图6所示的调整,就可以直接得到当前被解码分割块的dpbidx。

以上所述为本发明的较佳实施例而已,但本发明不应该局限于该实施例和附图所公开的内容。所以凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号