一种向量场外插的错误隐藏方法和装置与流程

文档序号:13252734阅读:155来源:国知局
技术领域本发明涉及计算机领域,特别涉及一种向量场外插的错误隐藏方法和装置。

背景技术:
随着压缩码率的提高,在无线网络中压缩码流对错误的敏感度增加,当某一帧码流数据发生错误时,如果没有进行错误控制,将导致后续帧的数据发生错误,进而发生连锁反应,导致整个码流数据出现错误。如果在带宽允许的范围内且并非实时运用,可以使用重传机制的错误修复方法,可以保证数据不丢失,达到最好的修复效果。但是,大多数运用是实时运用,需要实时传送,采用重传机制的方法无法满足需求。为解决在实时运用过程中码流数据发生错误的问题,人们提出了许多方法。其中,基于块映射的方法(BMVE)的方法是最经典的方法,这种方法采用的是用错误帧前一帧的向量场进行外插拟合错误帧的向量场。尽管该方法克服了不正确宏块的映射的缺点,但是经常会导致块的不连续性,方块效应明显,尤其是在运动激烈不规则时。再后来基于像素的向量外插的方法(PMVE)被提出,这种方法可以提高PSNR,但是仍然不能改善在剧烈运动情况下的视觉效果。之后,又有了结合BMVE和PMVE的方法——HMVE。HMVE可以尽可能地模拟出MV,但是运动激烈场景比如打篮球等运动场景的时候依然效果不理想。综上所述,如何剧烈运动的视觉场景下,在还原出错误帧码流数据的同时,又能保证视频的视觉效果,同时减少计算复杂度,是计算机领域一个亟需解决的问题。

技术实现要素:
本发明所要解决的技术问题是:提供一种向量场外插的错误隐藏的技术方案,解决现有的错误隐藏技术在还原出错误帧码流数据(尤其是对于画面剧烈运动的视觉场景)的同时,视觉效果差、计算复杂等问题。为解决上述技术问题,发明人提供了一种向量场外插的错误隐藏方法,包括步骤:获取参考帧第一信息,并对参考帧第一信息进行第一预设处理,得到参考帧第二信息,参考帧和错误帧包括多个子块;对参考帧第二信息进行第二预设处理,得到参考帧第三信息,所述参考帧第三信息为未进行第一预设处理的参考帧子块对应的参考帧信息;根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量。进一步地,所述第一预设处理包括:采用固定速度模型的光流法归一化参考帧第一信息;在归一化后的参考帧第一信息中筛选出满足第一预设条件的参考帧第一信息。进一步地,所述第一预设条件为归一化后的参考帧第一信息的横坐标数值大于参考帧宽的两倍与帧率的比值,且纵坐标数值大于参考帧高的两倍与帧率的比值。进一步地,所述第二预设处理包括:对第二参考帧信息中采用SKIP_P模式或中值滤波进行处理,得到第三参考帧信息。进一步地,所述步骤“根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量”具体包括:根据参考帧第二信息和参考帧第三信息,将参考帧中的各个子块映射到错误帧的对应位置,并计算映射后每一参考帧子块与错误帧各个子块之间的重叠面积;根据不同参考帧子块与某一错误帧子块重叠面积的大小,确定该错误帧子块对应的运动矢量,所述错误帧子块对应的运动矢量为优先级最高的运动矢量,所述优先级最高的运动矢量为与该错误帧子块重叠面积最高的参考帧子块对应的参考帧第二信息或参考帧第三信息。进一步地,每一参考帧第二信息对应一第一预设优先级,每一参考帧第三信息对应一第二预设优先级,则所述“根据不同参考帧子块与某一错误帧子块重叠面积的大小,确定该错误帧子块对应的运动矢量”包括:计算每一错误帧子块的优先级值,当参考帧子块对应的参考帧信息为参考帧第二信息时,则所述优先级值为映射到该错误帧子块的参考帧子块对应的第一预设优先级与重叠面积之和;当参考帧子块对应的参考帧信息为参考帧第三信息时,则所述优先级值为映射到该错误帧子块的参考帧子块对应的第二预设优先级与重叠面积之和;所述错误帧子块对应的运动矢量为优先级值最高的映射到该错误帧子块的参考帧子块对应的第二参考帧信息或第三参考帧信息。进一步地,所述方法还包括步骤:对错误帧中各个子块对应的运动矢量进行方向平均插值滤波。发明人还提供了一种向量场外插的错误隐藏装置,所述装置包括获取单元、第一预设处理单元、第二预设处理单元、错误帧运动矢量确定单元;所述获取单元用于获取参考帧第一信息,所述第一预设处理单元用于对参考帧第一信息进行第一预设处理,得到参考帧第二信息,参考帧和错误帧包括多个子块;所述第二预设处理单元用于对参考帧第二信息进行第二预设处理,得到参考帧第三信息,所述参考帧第三信息为未进行第一预设处理的参考帧子块对应的参考帧信息;所述错误帧运动矢量确定单元用于根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量。进一步地,所述第一预设处理单元进行第一预设处理包括:采用固定速度模型的光流法归一化参考帧第一信息;在归一化后的参考帧第一信息中筛选出满足第一预设条件的参考帧第一信息。进一步地,所述第一预设条件为归一化后的参考帧第一信息的横坐标数值大于参考帧宽的两倍与帧率的比值,且纵坐标数值大于参考帧高的两倍与帧率的比值。进一步地,所述第二预设处理单元进行第二预设处理包括:对第二参考帧信息中采用SKIP_P模式或中值滤波进行处理,得到第三参考帧信息。进一步地,所述装置包括映射单元和计算单元;所述映射单元用于根据参考帧第二信息和参考帧第三信息,将参考帧中的各个子块映射到错误帧的对应位置,所述计算单元用于计算映射后每一参考帧子块与错误帧各个子块之间的重叠面积;所述错误帧运动矢量确定单元用于根据不同参考帧子块与某一错误帧子块重叠面积的大小,确定该错误帧子块对应的运动矢量;所述错误帧子块对应的运动矢量为优先级最高的运动矢量,所述优先级最高的运动矢量为与该错误帧子块重叠面积最高的参考帧子块对应的参考帧第二信息或参考帧第三信息。进一步地,每一参考帧第二信息对应一第一预设优先级,每一参考帧第三信息对应一第二预设优先级;所述计算单元还用于计算每一错误帧子块的优先级值,当参考帧子块对应的参考帧信息为参考帧第二信息时,则所述优先级值为映射到该错误帧子块的参考帧子块对应的第一预设优先级与重叠面积之和;当参考帧子块对应的参考帧信息为参考帧第三信息时,则所述优先级值为映射到该错误帧子块的参考帧子块对应的第二预设优先级与重叠面积之和;所述错误帧子块对应的运动矢量为优先级值最高的映射到该错误帧子块的参考帧子块对应的第二参考帧信息或第三参考帧信息。进一步地,所述装置还包括插值滤波单元;所述插值滤波单元用于对错误帧中各个子块对应的运动矢量进行方向平均插值滤波。上述技术方案所述的向量场外插的错误隐藏方法和装置,所述方法包括如下步骤:获取参考帧第一信息,并对参考帧第一信息进行第一预设处理,得到参考帧第二信息,参考帧和错误帧包括多个子块;对参考帧第二信息进行第二预设处理,得到参考帧第三信息,所述参考帧第三信息为未进行第一预设处理的参考帧子块对应的参考帧信息;根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量。由于错误帧各个子块对应的运动矢量的还原是基于参考帧第二信息和参考帧第三信息的优先级而确定的,使得错误帧中各个子块的运动矢量分布更加合理,画面效果更加平滑,可以应用于向量混乱并且运动量大的场景修复,视觉效果良好,因而在计算机领域具有广阔的市场前景。附图说明图1为本发明实施方式中一实施方式涉及的错误隐藏方法的流程图;图2为本发明实施方式中另一实施方式涉及的错误隐藏方法的流程图;图3为本发明实施方式中一实施方式涉及的错误隐藏装置的示意图;图4为本发明实施方式中一实施方式涉及的参考帧子块映射到错误帧子块过程的示意图;图5为本发明实施方式中一实施方式涉及的方向平均插值滤波的示意图。标号说明:101、获取单元;102、第一预设处理单元;103、第二预设处理单元;104、映射单元;105、计算单元;106、错误帧运动矢量确定单元;107、插值滤波单元。具体实施方式为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。请参阅图1,为本发明实施方式中一实施方式涉及的错误隐藏方法的流程图。所述方法可以用于计算视频码流数据发生错误的那一帧(即错误帧)的运动矢量,进而还原出错误帧的码流数据。所述方法具体包括如下步骤:首先进入步骤S101获取参考帧第一信息。所述参考帧为计算错误帧的运动矢量所需的参考图像,可以是错误帧的上一帧或前几帧图像,也可以是错误帧的后一帧或或几帧图像。优选的,在本实施方式中,所述参考帧为错误帧的前一显示图像。参考帧和错误帧均包括有多个子块。参考帧的第一信息具体包括:参考帧中各个子块的运动向量、YUV数据、POC、块类型等,这些是计算错误帧各个子块的运动矢量的必要参数。所述块类型包括帧间块、帧内块和无向量块,所述帧间块是指本身具备MV(即参考帧运动矢量)的子块,所述帧内块是指需要通过周围块的MV计算得出该块的MV的子块,所述无向量块是指不具备运动矢量的子块。而后可以进入步骤S102对参考帧第一信息进行第一预设处理,得到参考帧第二信息。如图2所示,在本实施方式中,所述第一预设处理包括:步骤S201采用固定速度模型的光流法归一化参考帧第一信息,而后进入步骤S202在归一化后的参考帧第一信息中筛选出满足第一预设条件的参考帧第一信息,得到参考帧第二信息。具体地,光流法归一化的步骤可以通过公式(1)实现:OFEMVF(t-1,i,j)=MVFt-1,i,j/distance(1)其中,MVF表示向量场(由参考帧中各个不同子块对应的运动矢量构成),distance表示参考帧中的子块的运动矢量所参考的帧和参考帧相差的帧数,参考帧在编码过程中,同样参考了上一帧或者前几帧的显示图像。t表示错误帧的帧数,t-1即表示错误帧的前一帧显示图像,即本实施方式中的参考帧,i和j表示的参考帧中第i行第j列的子块。以参考帧中的子块B(t-1,i,j)为例,子块B进行光流法归一化后的运动矢量等于子块B的运动矢量与子块B对应的帧数差的比值,而子块B对应的帧数差是指子块B所参考的子块(可能是参考帧的上一帧,也可能是参考帧的前几帧中的某一子块)所在的帧与参考帧之间的帧数差。经过光流法归一化处理后,得到参考帧第二信息,可以使得参考帧各个子块对应的运动矢量更加拟合物体的实际运动。第一预设处理除了光流法归一化参考帧第一信息之外,还包括在归一化后的参考帧第一信息中筛选出满足第一预设条件的参考帧第一信息,以便将归一化后不合理的运动矢量剔除,经过筛选得到参考帧第二信息。在本实施方式中,所述第一预设条件为归一化后的参考帧第一信息的横坐标数值大于参考帧宽的两倍与帧率的比值,且纵坐标数值大于参考帧高的两倍与帧率的比值。而后可以进入步骤S103对参考帧第二信息进行第二预设处理,得到参考帧第三信息。所述参考帧第三信息为未进行第一预设处理的参考帧子块对应的参考帧信息。参考帧中的子块包括三种类型:原本就具备有参考帧运动矢量(包括光流法预测规整的向量)的子块,需要通过周围子块预测得出运动矢量的子块和无运动矢量的子块。对于原本就具备有参考帧运动矢量,进行第一预设处理,得到参考帧第二信息。而对于需要通过周围子块预测得出运动矢量的子块,则进行第二预设处理,以便得出这一类型子块的运动矢量。如图2所示,在本实施方式中,所述第二预设处理包括:步骤S203对第二参考帧信息中采用SKIP_P模式或中值滤波进行处理,得到第三参考帧信息。通过第二预设处理,可以有效弥补参考帧中个别子块运动矢量缺失的部分。而后可以进入步骤S104根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量。如图2所示,所述步骤“根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量”具体包括:首先进入步骤S204根据参考帧第二信息和参考帧第三信息,将参考帧中的各个子块映射到错误帧的对应位置。在本实施方式中,所述错误帧的对应位置为参考帧子块的坐标减去参考帧运动矢量后的坐标。例如参考帧中某一子块A的坐标为(15,12),该子块对应的运动矢量为(3,4),则将该子块映射到错误帧中(12,8)的坐标位置。而后进入步骤S205计算映射后每一参考帧子块与错误帧各个子块之间的重叠面积。错误帧本身也是由各个子块构成,当参考帧的各个子块映射到错误帧后,映射的参考帧子块必然与错误帧子块有所重叠。如图4所示,其中P1、P2为帧间块,I为帧内块,P1、I映射到错误帧后,分别与错误帧原有的四个子块具有重叠,需要分别计算P1和I块与错误帧原有的各个子块的重叠面积。P2块映射到错误帧后,位于错误帧边界外围,无需计算,可将P2块对应的运动矢量舍弃。而后进入步骤S206根据不同参考帧子块与某一错误帧子块重叠面积的大小,确定该错误帧子块对应的运动矢量,所述错误帧子块对应的运动矢量为优先级最高的运动矢量,所述优先级最高的运动矢量为与该错误帧子块重叠面积最高的参考帧子块对应的参考帧第二信息或参考帧第三信息。所述错误帧子块对应的运动矢量为优先级值最高的映射到该错误帧子块的参考帧子块对应的第二参考帧信息或第三参考帧信息。以错误帧中的某一子块C为例,假设映射到它上的参考帧子块(即映射后与子块C有重叠面积的参考帧子块)有D、E、F、G,重叠面积为1、2、3、4,则对于错误帧子块C而言,其与参考帧子块G的重叠面积最大,则可以将子块G对应的运动矢量作为子块C的运动矢量。在本实施方式中,每一参考帧第二信息对应一第一预设优先级,每一参考帧第三信息对应一第二预设优先级,则所述“根据不同参考帧子块与某一错误帧子块重叠面积的大小,确定该错误帧子块对应的运动矢量”包括:计算每一错误帧子块的优先级值,当参考帧子块对应的参考帧信息为参考帧第二信息时,则所述优先级值为映射到该错误帧子块的参考帧子块对应的第一预设优先级与重叠面积之和;当参考帧子块对应的参考帧信息为参考帧第三信息时,则所述优先级值为映射到该错误帧子块的参考帧子块对应的第二预设优先级与重叠面积之和。参考帧中包括了帧间块和帧内块,在本实施方式中,帧间块的预设优先级值要高于帧内块的。假设帧间块的第一预设优先级为2,帧内块的第二预设优先级为1,同样以错误帧子块C为例,假设映射到它上的参考帧子块有D、E、F、G,重叠面积为1、2、3、4。其中,参考帧子块D、E为帧间块,参考帧子块F、G为帧内块,易得参考帧子块D、E、F、G的优先级值分别为3、4、4、5,则对于错误帧子块C而言,其与参考帧子块G的优先级值最大,则可以将子块G对应的运动矢量作为子块C的运动矢量。至此,错误帧子块的运动矢量填补完毕,但由于错误帧中各个子块对应的运动矢量参差不齐,其所产生的画面块效应明显,因而在步骤S206后还可以进入步骤S207对错误帧中各个子块对应的运动矢量进行方向平均插值滤波。如图5所示,为本发明实施方式中一实施方式涉及的方向平均插值滤波的示意图。方向平均插值滤波步骤如下:首先选取一预设窗口,所述预设窗口的大小为子块的整数倍,且该整数大于2。以预设窗口大小为5X5子块为例,即预设窗口的大小为25个子块大小。将预设窗口以光栅方式按照预设轨迹扫描整个错误帧,以图5为例,预设窗口先从第一位置(如图像的左上角处)开始进行平均插值计算。平均插值计算具体包括:根据预设窗口内错误帧子块对应的运动矢量,将错误帧的子块分为4类,每一类分别对应一二维直角坐标系的象限。例如预设窗口内某一子块的运动矢量为(-1,1),则其位于第二象限内,再如预设窗口内某一子块的运动矢量为(1,12),则其位于第一象限内。而后分别计算每一象限内各个子块的平均运动矢量,以第一象限为例,第一象限的平均矢量的横坐标为位于第一象限内的错误帧子块的运动矢量的横坐标之和与位于第一象限内的错误帧子块个数的比值,第一象限的平均矢量的纵坐标为位于第一象限内的错误帧子块的运动矢量的纵坐标之和与位于第一象限内的错误帧子块个数的比值。当各个象限的平均矢量计算完成后,则将该平均矢量的值分别赋予该象限内的子块。同样以第一象限为例,当第一象限内的平均矢量计算完成后,则将位于第一象限内的错误帧子块的运动矢量全部赋值为该平均矢量的值,其他象限同理可得,至此,完成第一位置的窗口扫描。而后可以将窗口移动至第二位置,在本实施方式中,第二位置为窗口向右平移半个窗口宽度后对应的位置。当窗口移动至第二位置时,则开始新一轮的赋值计算,即将第二位置内所包含的所有错误帧子块的运动矢量分在四个象限内,并计算各个象限内的平均矢量,而后将各个象限内的平均矢量赋值给对应象限内的错误帧子块。至此,完成第二位置的窗口扫描。二号再将窗口向右平移半个窗口宽度后对应的位置,到达第三位置,开始新一轮的扫描计算。如图5所示,当窗口扫描计算完成第一行图像时(这里的行是以窗口的大小为高度的行),则选取第一行与第二行最左边的交界位置作为新的初始位置,开始新一轮的扫描。而后再开始第二行的扫描计算,而后再开始第二行与第三行交界位置的扫描计算,以此类推,知道扫描计算完成整个错误帧。经过对错误帧子块的运动矢量方向平均插值滤波处理,可以使得错误帧子块的运动矢量整体平滑,有利于消除错误帧图像的块效应,增加画面的视觉效果。以及发明人还提供了一种向量场外插的错误隐藏装置,请参阅图3,为本发明实施方式中一实施方式涉及的错误隐藏装置的示意图。所述装置包括获取单元101、第一预设处理单元102、第二预设处理单元103、错误帧运动矢量确定单元106;所述获取单元101用于获取参考帧第一信息,所述第一预设处理单元102用于对参考帧第一信息进行第一预设处理,得到参考帧第二信息,参考帧和错误帧包括多个子块;所述第二预设处理单元103用于对参考帧第二信息进行第二预设处理,得到参考帧第三信息,所述参考帧第三信息为未进行第一预设处理的参考帧子块对应的参考帧信息;所述错误帧运动矢量确定单元106用于根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量。在使用向量场外插的错误隐藏装置时,首先获取单元获取参考帧第一信息。所述参考帧为计算错误帧的运动矢量所需的参考图像,可以是错误帧的上一帧或前几帧图像,也可以是错误帧的后一帧或或几帧图像。优选的,在本实施方式中,所述参考帧为错误帧的前一显示图像。参考帧和错误帧均包括有多个子块。参考帧的第一信息具体包括:参考帧中各个子块的运动向量、YUV数据、POC、块类型等,这些是计算错误帧各个子块的运动矢量的必要参数。所述块类型包括帧间块、帧内块和无向量块,所述帧间块是指本身具备MV(即参考帧运动矢量)的子块,所述帧内块是指需要通过周围块的MV计算得出该块的MV的子块,所述无向量块是指不具备运动矢量的子块。而后第一预设处理单元对参考帧第一信息进行第一预设处理,得到参考帧第二信息。如图2所示,在本实施方式中,所述第一预设处理包括:采用固定速度模型的光流法归一化参考帧第一信息,在归一化后的参考帧第一信息中筛选出满足第一预设条件的参考帧第一信息,得到参考帧第二信息。具体地,光流法归一化的步骤可以通过公式(1)实现:OFEMVF(t-1,i,j)=MVFt-1,i,j/distance(1)其中,MVF表示向量场(由参考帧中各个不同子块对应的运动矢量构成),distance表示参考帧中的子块的运动矢量所参考的帧和参考帧相差的帧数,参考帧在编码过程中,同样参考了上一帧或者前几帧的显示图像。t表示错误帧的帧数,t-1即表示错误帧的前一帧显示图像,即本实施方式中的参考帧,i和j表示的参考帧中第i行第j列的子块。以参考帧中的子块B(t-1,i,j)为例,子块B进行光流法归一化后的运动矢量等于子块B的运动矢量与子块B对应的帧数差的比值,而子块B对应的帧数差是指子块B所参考的子块(可能是参考帧的上一帧,也可能是参考帧的前几帧中的某一子块)所在的帧与参考帧之间的帧数差。经过光流法归一化处理后,得到参考帧第二信息,可以使得参考帧各个子块对应的运动矢量更加拟合物体的实际运动。第一预设处理除了光流法归一化参考帧第一信息之外,还包括在归一化后的参考帧第一信息中筛选出满足第一预设条件的参考帧第一信息,以便将归一化后不合理的运动矢量剔除,经过筛选得到参考帧第二信息。在本实施方式中,所述第一预设条件为归一化后的参考帧第一信息的横坐标数值大于参考帧宽的两倍与帧率的比值,且纵坐标数值大于参考帧高的两倍与帧率的比值。而后第二预设处理单元对参考帧第二信息进行第二预设处理,得到参考帧第三信息。所述参考帧第三信息为未进行第一预设处理的参考帧子块对应的参考帧信息。参考帧中的子块包括三种类型:原本就具备有参考帧运动矢量(包括光流法预测规整的向量)的子块,需要通过周围子块预测得出运动矢量的子块和无运动矢量的子块。对于原本就具备有参考帧运动矢量,进行第一预设处理,得到参考帧第二信息。而对于需要通过周围子块预测得出运动矢量的子块,则进行第二预设处理,以便得出这一类型子块的运动矢量。如图2所示,在本实施方式中,所述第二预设处理包括:对第二参考帧信息中采用SKIP_P模式或中值滤波进行处理,得到第三参考帧信息。通过第二预设处理,可以有效弥补参考帧中个别子块运动矢量缺失的部分。而后错误帧运动矢量确定单元根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量。所述装置包括映射单元104和计算单元105;所述“错误帧运动矢量确定单元根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量”具体包括:首先映射单元根据参考帧第二信息和参考帧第三信息,将参考帧中的各个子块映射到错误帧的对应位置。在本实施方式中,所述错误帧的对应位置为参考帧子块的坐标减去参考帧运动矢量后的坐标。例如参考帧中某一子块A的坐标为(15,12),该子块对应的运动矢量为(3,4),则将该子块映射到错误帧中(12,8)的坐标位置。而后计算单元计算映射后每一参考帧子块与错误帧各个子块之间的重叠面积。错误帧本身也是由各个子块构成,当参考帧的各个子块映射到错误帧后,映射的参考帧子块必然与错误帧子块有所重叠。如图4所示,其中P1、P2为帧间块,I为帧内块,P1、I映射到错误帧后,分别与错误帧原有的四个子块具有重叠,需要分别计算P1和I块与错误帧原有的各个子块的重叠面积。P2块映射到错误帧后,位于错误帧边界外围,无需计算,可将P2块对应的运动矢量舍弃。而后错误帧运动矢量确定单元根据不同参考帧子块与某一错误帧子块重叠面积的大小,确定该错误帧子块对应的运动矢量,所述错误帧子块对应的运动矢量为优先级最高的运动矢量,所述优先级最高的运动矢量为与该错误帧子块重叠面积最高的参考帧子块对应的参考帧第二信息或参考帧第三信息。所述错误帧子块对应的运动矢量为优先级值最高的映射到该错误帧子块的参考帧子块对应的第二参考帧信息或第三参考帧信息。以错误帧中的某一子块C为例,假设映射到它上的参考帧子块(即映射后与子块C有重叠面积的参考帧子块)有D、E、F、G,重叠面积为1、2、3、4,则对于错误帧子块C而言,其与参考帧子块G的重叠面积最大,则可以将子块G对应的运动矢量作为子块C的运动矢量。在本实施方式中,每一参考帧第二信息对应一第一预设优先级,每一参考帧第三信息对应一第二预设优先级,则所述“根据不同参考帧子块与某一错误帧子块重叠面积的大小,确定该错误帧子块对应的运动矢量”包括:计算每一错误帧子块的优先级值,当参考帧子块对应的参考帧信息为参考帧第二信息时,则所述优先级值为映射到该错误帧子块的参考帧子块对应的第一预设优先级与重叠面积之和;当参考帧子块对应的参考帧信息为参考帧第三信息时,则所述优先级值为映射到该错误帧子块的参考帧子块对应的第二预设优先级与重叠面积之和。参考帧中包括了帧间块和帧内块,在本实施方式中,帧间块的预设优先级值要高于帧内块的。假设帧间块的第一预设优先级为2,帧内块的第二预设优先级为1,同样以错误帧子块C为例,假设映射到它上的参考帧子块有D、E、F、G,重叠面积为1、2、3、4。其中,参考帧子块D、E为帧间块,参考帧子块F、G为帧内块,易得参考帧子块D、E、F、G的优先级值分别为3、4、4、5,则对于错误帧子块C而言,其与参考帧子块G的优先级值最大,则可以将子块G对应的运动矢量作为子块C的运动矢量。至此,错误帧子块的运动矢量填补完毕,但由于错误帧中各个子块对应的运动矢量参差不齐,其所产生的画面块效应明显,因而所述装置还包括插值滤波单元107,所述插值滤波单元用于对错误帧中各个子块对应的运动矢量进行方向平均插值滤波。如图5所示,为本发明实施方式中一实施方式涉及的方向平均插值滤波的示意图。方向平均插值滤波步骤如下:首先选取一预设窗口,所述预设窗口的大小为子块的整数倍,且该整数大于2。以预设窗口大小为5X5子块为例,即预设窗口的大小为25个子块大小。将预设窗口以光栅方式按照预设轨迹扫描整个错误帧,以图5为例,预设窗口先从第一位置(如图像的左上角处)开始进行平均插值计算。平均插值计算具体包括:根据预设窗口内错误帧子块对应的运动矢量,将错误帧的子块分为4类,每一类分别对应一二维直角坐标系的象限。例如预设窗口内某一子块的运动矢量为(-1,1),则其位于第二象限内,再如预设窗口内某一子块的运动矢量为(1,12),则其位于第一象限内。而后分别计算每一象限内各个子块的平均运动矢量,以第一象限为例,第一象限的平均矢量的横坐标为位于第一象限内的错误帧子块的运动矢量的横坐标之和与位于第一象限内的错误帧子块个数的比值,第一象限的平均矢量的纵坐标为位于第一象限内的错误帧子块的运动矢量的纵坐标之和与位于第一象限内的错误帧子块个数的比值。当各个象限的平均矢量计算完成后,则将该平均矢量的值分别赋予该象限内的子块。同样以第一象限为例,当第一象限内的平均矢量计算完成后,则将位于第一象限内的错误帧子块的运动矢量全部赋值为该平均矢量的值,其他象限同理可得,至此,完成第一位置的窗口扫描。而后可以将窗口移动至第二位置,在本实施方式中,第二位置为窗口向右平移半个窗口宽度后对应的位置。当窗口移动至第二位置时,则开始新一轮的赋值计算,即将第二位置内所包含的所有错误帧子块的运动矢量分在四个象限内,并计算各个象限内的平均矢量,而后将各个象限内的平均矢量赋值给对应象限内的错误帧子块。至此,完成第二位置的窗口扫描。二号再将窗口向右平移半个窗口宽度后对应的位置,到达第三位置,开始新一轮的扫描计算。如图5所示,当窗口扫描计算完成第一行图像时(这里的行是以窗口的大小为高度的行),则选取第一行与第二行最左边的交界位置作为新的初始位置,开始新一轮的扫描。而后再开始第二行的扫描计算,而后再开始第二行与第三行交界位置的扫描计算,以此类推,知道扫描计算完成整个错误帧。经过对错误帧子块的运动矢量方向平均插值滤波处理,可以使得错误帧子块的运动矢量整体平滑,有利于消除错误帧图像的块效应,增加画面的视觉效果。上述技术方案所述的向量场外插的错误隐藏方法和装置,所述方法包括如下步骤:获取参考帧第一信息,并对参考帧第一信息进行第一预设处理,得到参考帧第二信息,参考帧和错误帧包括多个子块;对参考帧第二信息进行第二预设处理,得到参考帧第三信息,所述参考帧第三信息为未进行第一预设处理的参考帧子块对应的参考帧信息;根据参考帧第二信息和参考帧第三信息的优先级,确定错误帧中各个子块对应的运动矢量。由于错误帧各个子块对应的运动矢量的还原是基于参考帧第二信息和参考帧第三信息的优先级而确定的,使得错误帧中各个子块的运动矢量分布更加合理,画面效果更加平滑,可以应用于向量混乱并且运动量大的场景修复,视觉效果良好,因而在计算机领域具有广阔的市场前景。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1