本发明涉及视频技术领域,具体涉及一种视频参考帧管理方法和系统。
背景技术:
编码图像分成三种类型:I帧、P帧和B帧。用来对编码图像进行预测的图像称为参考帧。其中,I帧是内部编码帧,不需要参考其他帧,利用视频图像的空间相关性进行独立压缩编码。P帧是前向预测帧,以I帧为参考帧,在I帧中找出P帧“某点”的预测值和运动矢量,取预测差值和运动矢量一起传送。B帧是双向内插帧,以前面的I或P帧和后面的P帧为参考帧,“找出”B帧“某点”的预测值和两个运动矢量,并取预测差值和运动矢量传送,接收端根据运动矢量在两个参考帧中“找出(算出)”预测值并与差值求和,得到B帧“某点”样值,从而得到完整的B帧。简单地讲,I帧是一个完整的画面,而P帧和B帧记录的是相对于I帧的变化。三种类型的编码图像在编码过程中的参考关系可以利用图1来表示,图1中的箭头表示参考关系,由参考帧指向编码帧。
poc表示画面顺序计数,指示图像的显示顺序;DPB表示保存所有的重建图像队列。
量化参数QP和量化步长Qstep的关系:
量化步长Qstep共有52个值(对于亮度编码而言),量化参数QP是量化步长Qstep的序号,取值0~51。
其中,QP取最小值0时,表示量化最精细;相反,QP取最大值51时,表示量化最粗糙;Qstep随着QP的增加而增加,QP每增加6,Qstep增加一倍。
对于色度编码,QP的最大值是39。
ListX[i](i=0,1)表示参考帧图像列表,其包含的参考帧指向DPB中的重建图像。ListX[0]是前向参考帧图像列表,P、B帧都会用到;ListX[1]是后向参考帧图像列表,只有B帧会用到。
多参考帧的引入能够提高编码效率,现有的H.264、H.265和AVS2视频编码压缩标准均支持多参考帧编码。但是现有编码方法中采用的参考帧排序方法只考虑到当前帧与参考帧的相邻位置关系,如果参考帧与当前帧越近(poc差值小),那么分配的参考索引序号(ref_idx)越小。
例如:假设当前帧图像序列号poc为10,那么当前帧的参考帧为0、6、7、8、9帧,排序如下所示:
前向参考队列Ref_idx=4 3 2 1 0对应的参考帧为0、6、7、8、9。
现有的参考帧图像列表的排序技术是根据图像的poc差值来进行排序,不考虑各个图像之间的质量差别,以及一些场景图像的变化情况,导致编码效率不高。
技术实现要素:
有鉴于此,本发明实施例提供了一种视频参考帧管理方法和系统,解决了现有视频编码技术中编码效率低下的问题。
本发明实施例提供的一种视频参考帧管理方法包括:
参考帧图像列表的初始化,通过基础参数使参考帧得到初步排序;
参考帧图像列表的重排序,通过基础参数结合附加参数使参考帧得到重新排序。
本发明实施例提供的一种视频参考帧管理系统包括:
初始化装置101,用于参考帧图像列表的初始化,通过基础参数使参考帧得到初步排序;
重排序装置102,用于参考帧图像列表的重排序,通过基础参数结合附加参数使参考帧得到重新排序。
本发明实施例提供的视频参考帧管理方法和系统,通过将参考帧的QP值和参考帧与当前帧的poc差值作权重计算,获得重排序序号并进行重排序,在参考帧的重排序过程中充分考虑到参考帧的图像质量问题,提高了编码效率。
附图说明
图1为I帧、P帧和B帧编码图像在编码过程中的参考关系示意图。
图2所示为本发明实施例提供的一种视频参考帧管理方法的流程示意图。
图3所示为本发明实施例提供的一种视频参考帧管理系统的装置示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图2所示为本发明实施例提供的一种视频参考帧管理方法的流程示意图。如图2所示,以亮度编码为例,本发明第一实施例中视频参考帧管理方法步骤如下:
步骤01,参考帧图像列表的初始化,通过基础参数使参考帧得到初步排序。
步骤01中,基础参数指参考帧与当前帧的poc差值。
步骤02,参考帧图像列表的重排序,通过基础参数结合附加参数使参考帧得到重新排序。
步骤02中,附加参数指各参考帧的QP值。
其中,步骤01还包括步骤03:
步骤03,将DPB中符合要求的参考帧按照与当前帧的poc差值进行初步排序,并存入参考帧图像列表。
在步骤03的参考帧图像列表中,短期参考按降序排列,长期参考按升序排列。
其中,步骤02还包括步骤04:
步骤04,计算各参考帧的QP值,将各参考帧的QP值和当前帧与参考帧的poc差值作权重,得出权重值,根据得出的权重值标记各参考帧并进行重排序。
在步骤04中,亮度编码的QP值为0~51,取QP值权重占40%,参考帧poc差值权重占60%进行计算,通过计算得出的权重值对参考帧进行重排序。具体地为,根据得出的各参考帧权重值来确定该参考帧是否继续作为参考帧,按照实际情况进行标记,标记为不作参考,还可以标记为短期参考和/或长期参考;并对继续作为参考帧的各帧重新分配参考索引序号。
举例说明,假设当前帧图像序列号poc为10,那么当前帧的参考帧为0、6、7、8、9帧,QP值依次为5、30、35、40、45,其中0帧图像质量好(QP值较小),则经过权重计算后得出的权重值依次为8、14.4、15.8、17.2、18.6,那么本发明参考帧重排序如下所示:
前向参考队列Ref_idx=4 3 2 1 0对应的参考帧为9、8、7、6、0。
又比如,假设当前帧图像序列号poc为10,那么当前帧的参考帧为0、6、7、8、9帧,其中QP值依次为10、20、30、40、50,则经过权重计算后得出的权重值依次为10、10.4、13.8、17.2、20.6,因此,重排序顺序如下所示:
前向参考队列Ref_idx=4 3 2 1 0对应的参考帧为9、8、7、6、0。
本发明第一实施例给出的视频参考帧管理方法,在编码时设置图像质量较好的帧(QP值较小),用来保存更多图像信息,使当前帧获得更好的参考图像信息,然后根据参考帧的图像质量和与当前帧的距离(poc差值)作权重,根据得出的权重值来决定分配给各参考帧的参考索引序号。本发明第一实施例中的视频参考帧管理方法,充分考虑了各帧图像之间的质量差别以及当前帧与参考帧之间场景图像的变化情况,提高了编码效率。
图2所示为本发明实施例提供的一种视频参考帧管理方法的流程示意图。如图2所示,以色度编码为例,本发明第二实施例中视频参考帧管理方法步骤如下:
步骤01,参考帧图像列表的初始化,通过基础参数使参考帧得到初步排序。
步骤02,参考帧图像列表的重排序,通过基础参数结合附加参数使参考帧得到重新排序。
其中,步骤01还包括步骤03:
步骤03,将DPB中符合要求的参考帧按照与当前帧的poc差值进行初步排序,并存入参考帧图像列表。
在步骤03的参考帧图像列表中,短期参考按降序排列,长期参考按升序排列。
其中,步骤02还包括步骤04:
步骤04,计算各参考帧的QP值,将各参考帧的QP值和当前帧与参考帧的poc差值作权重,得出权重值,根据得出的权重值标记各参考帧并进行重排序。
在步骤04中,色度编码的QP值为0~39,取QP值权重占50%,参考帧poc差值权重占50%进行计算,通过计算得出的权重值对参考帧进行重排序。具体地为,根据得出的各参考帧权重值来确定该参考帧是否继续作为参考帧,按照实际情况进行标记,标记为不作参考,还可以标记为短期参考和/或长期参考;并对继续作为参考帧的各帧重新分配参考索引序号。
举例说明,假设当前帧图像序列号poc为10,那么当前帧的参考帧为0、6、7、8、9帧,QP值依次为5、15、25、35、38,其中0帧图像质量好(QP值较小),则经过权重计算后得出的权重值依次为7.5、9.5、14、18.5、19.5,那么本发明参考帧重排序如下所示:
前向参考队列Ref_idx=4 3 2 1 0对应的参考帧为9、8、7、6、0。
又比如,假设当前帧图像序列号poc为10,那么当前帧的参考帧为0、6、7、8、9帧,其中QP值依次为5、10、15、30、20,则经过权重计算后得出的权重值依次为7.5、7、9、16、10.5,因此,重排序顺序如下所示:
前向参考队列Ref_idx=4 3 2 1 0对应的参考帧为8、9、7、0、6。
本发明第二实施例给出的视频参考帧管理方法,利用色度编码的QP值与参考帧与当前帧的poc差值来进行权重计算,得出权重值。根据得出的权重值对参考帧图像列表进行重排序。本发明第二实施例中的视频参考帧管理方法,充分考虑了各帧图像之间的质量差别以及当前帧与参考帧之间场景图像的变化情况,提高了编码效率。
实际应用过程中,本发明实施例中计算权重时的参数形式和具体参数值可根据实际需求进行设置,不限于本发明实施例中给出的权重设置方法。
应当注意,在进行图像编码时,为了获得质量相对较好的帧,可以人为设置较小QP值的图像,从而得到图像质量较好的参考帧。
图3所示为本发明实施例提供的一种视频参考帧管理系统的装置示意图。如图3所示,本发明第一实施例提供的视频参考帧管理系统包括:
初始化装置101,用于参考帧图像列表的初始化,通过基础参数使参考帧得到初步排序。
重排序装置102,用于参考帧图像列表的重排序,通过基础参数结合附加参数使参考帧得到重新排序。
初始化装置101中包括:
初步排序装置103,用于将DPB中符合要求的参考帧按照与当前帧的poc差值进行初步排序,并存入参考帧图像列表。
重排序装置102中包括:
计算权重并排序装置104,用于计算各参考帧的QP值,将各参考帧的QP值和当前帧与参考帧的poc差值作权重,得出权重值,根据得出的权重值标记各参考帧并进行重排序。
图3所示为本发明实施例提供的一种视频参考帧管理系统的装置示意图。如图3所示,本发明第二实施例提供的视频参考帧管理系统包括:
初始化装置101,用于参考帧图像列表的初始化,通过基础参数使参考帧得到初步排序。
重排序装置102,用于参考帧图像列表的重排序,通过基础参数结合附加参数使参考帧得到重新排序。
初始化装置101中包括:
初步排序装置103,用于将DPB中符合要求的参考帧按照与当前帧的poc差值进行初步排序,并存入参考帧图像列表。
重排序装置102中包括:
计算权重并排序装置104,用于计算各参考帧的QP值,将各参考帧的QP值和当前帧与参考帧的poc差值作权重,得出权重值,根据得出的权重值标记各参考帧并进行重排序。
应当理解,尽管在上文的详细描述中提及了装置的若干模块或单元,但是这种划分仅仅是示例性而非强制性的。实际上,根据本发明的示例性实施方式,上文描述的两个或更多模块/单元的特征和功能可以在一个模块/单元中实现,反之,上文描述的一个模块/单元的特征和功能可以进一步划分为由多个模块/单元来实现。此外,上文描述的某些模块/单元在某些应用场景下可被省略。
还应当理解,为了不模糊本发明的实施方式,说明书仅对一些关键、未必必要的技术和特征进行了描述,而可能未对一些本领域技术人员能够实现的特征做出说明。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换等,均应包含在本发明的保护范围之内。