CN112001943A - 运动估计方法及装置、计算机可读介质和电子设备 - Google Patents
运动估计方法及装置、计算机可读介质和电子设备 Download PDFInfo
- Publication number
- CN112001943A CN112001943A CN202010897247.3A CN202010897247A CN112001943A CN 112001943 A CN112001943 A CN 112001943A CN 202010897247 A CN202010897247 A CN 202010897247A CN 112001943 A CN112001943 A CN 112001943A
- Authority
- CN
- China
- Prior art keywords
- motion vector
- candidate motion
- determining
- value
- calculation block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 239000013598 vector Substances 0.000 claims abstract description 213
- 238000004364 calculation method Methods 0.000 claims abstract description 71
- 238000001514 detection method Methods 0.000 claims description 49
- 238000013507 mapping Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 11
- 230000035945 sensitivity Effects 0.000 abstract description 4
- 230000002123 temporal effect Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003252 repetitive effect Effects 0.000 description 3
- 239000000835 fiber Substances 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/223—Analysis of motion using block-matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本公开提供一种运动估计方法、运动估计装置、计算机可读介质和电子设备,涉及图像处理技术领域。该方法包括:获取当前计算块对应的候选运动矢量集,候选运动矢量集中包括至少一个候选运动矢量;基于候选运动矢量的类型确定候选运动矢量对应的惩罚值;基于惩罚值计算候选运动矢量对应的匹配误差,并将最小匹配误差对应的候选运动矢量确定为当前计算块对应的运动矢量。本公开基于候选运动矢量的类型,可以确定不同的惩罚值,提高了候选运动矢量对应惩罚值的多样性;同时,由于不同类型的候选运动矢量对应的惩罚值不同,因此能够基于运动矢量对运动的敏感程度、以及对运动估计的可靠性对惩罚值进行不同的设置,进而能够匹配和适用更多的应用场景。
Description
技术领域
本公开涉及图像处理技术领域,具体涉及一种运动估计方法、运动估计装置、计算机可读介质和电子设备。
背景技术
随着多媒体领域的不断发展,人们对视频的要求也越来越高。为了提高视频的质量,往往需要对视频格式进行必要的转换。其中,帧率转换技术是视频转换技术中非常重要的一环,目前广泛应用于电视芯片中,能够有效解决和改善视频内容播放时的抖动和高清电视观看时的液晶拖尾现象。
目前,基于运动估计运动补偿的帧率转换算法是帧率转换技术的主流实现方式,其中运动估计通过计算得到两帧之间物体的运动矢量,为运动补偿插值提供运动信息。在进行运动估计时,常常需要通过一个经验值或者实验值确定一个固定的惩罚值,用于描述候选运动矢量的可靠性。然而,这种采用固定惩罚值的方式明显无法匹配和适用所有的应用场景。
发明内容
本公开的目的在于提供一种运动估计方法、运动估计装置、计算机可读介质和电子设备,进而至少在一定程度上提高惩罚值选取的多样性,进而避免惩罚值无法匹配和适用多种场景的问题。
根据本公开的第一方面,提供一种运动估计方法,包括:获取当前计算块对应的候选运动矢量集;其中,候选运动矢量集中包括至少一个候选运动矢量;基于候选运动矢量的类型确定候选运动矢量对应的惩罚值;基于惩罚值计算候选运动矢量对应的匹配误差,并将匹配误差最小的候选运动矢量确定为所述当前计算块对应的运动矢量。
根据本公开的第二方面,提供一种运动估计装置,包括:矢量获取模块,用于获取当前计算块对应的候选运动矢量集;其中,候选运动矢量集中包括至少一个候选运动矢量;惩罚值确定模块,用于基于候选运动矢量的类型确定候选运动矢量对应的惩罚值;矢量确定模块,用于基于惩罚值计算候选运动矢量对应的匹配误差,并将匹配误差最小的候选运动矢量确定为所述当前计算块对应的运动矢量。
根据本公开的第三方面,提供一种计算机可读介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法。
根据本公开的第四方面,提供一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的方法。
本公开的一种实施例所提供的运动估计方法,在获取到当前计算块对应的候选运动矢量集后,可以根据候选运动矢量类型确定候选运动矢量对应的惩罚值,进而基于该惩罚值计算候选运动矢量对应的匹配误差。本申请的技术方案,基于候选运动矢量的类型,可以确定不同的惩罚值,提高了候选运动矢量对应惩罚值的多样性;同时,由于不同类型的候选运动矢量对应的惩罚值不同,因此能够基于运动矢量对运动的敏感程度、以及对运动估计的可靠性对惩罚值进行不同的设置,进而能够匹配和适用更多的应用场景。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本公开实施例的一种示例性***架构的示意图;
图2示出了可以应用本公开实施例的一种电子设备的示意图;
图3示意性示出本公开示例性实施例中一种运动估计方法的流程图;
图4示意性示出本公开示例性实施例中一种当前计算块和候选运动矢量集的示意图;
图5示意性示出本公开示例性实施例中一种检测窗口组的示意图;
图6示意性示出本公开示例性实施例中运动估计装置的组成示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1示出了可以应用本公开实施例的一种运动估计方法及装置的示例性应用环境的***架构的示意图。
如图1所示,***架构100可以包括终端设备101、102、103中的一个或多个,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103可以是各种具有图像处理功能的电子设备,包括但不限于台式计算机、便携式计算机、智能手机和平板电脑等等。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
本公开实施例所提供的运动估计方法一般由终端设备101、102、103中执行,相应地,运动估计装置一般设置于终端设备101、102、103中。但本领域技术人员容易理解的是,本公开实施例所提供的运动估计方法也可以由服务器105执行,相应的,运动估计装置也可以设置于服务器105中,本示例性实施例中对此不做特殊限定。举例而言,在一种示例性实施例中,终端设备101、102、103等一方面作为采集设备,采集原始视频和对应的运动数据,同时作为运动估计方法的执行主体,基于采集到的原始视频和运动数据进行运动估计;在另一种示例性实施例中,可以以终端设备101、102、103等为采集设备,将采集到的原始视频和运动数据发送至其他终端设备101、102、103等或者服务器105中进行运动估计等。
本公开的示例性实施方式提供一种用于实现运动估计方法的电子设备,其可以是图1中的终端设备101、102、103或服务器105。该电子设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行运动估计方法。
下面以图2中的移动终端200为例,对电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图2中的构造也能够应用于固定类型的设备。在另一些实施方式中,移动终端200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或软件和硬件的组合实现。各部件间的接口连接关系只是示意性示出,并不构成对移动终端200的结构限定。在另一些实施方式中,移动终端200也可以采用与图2不同的接口连接方式,或多种接口连接方式的组合。
如图2所示,移动终端200具体可以包括:处理器210、内部存储器221、外部存储器接口222、通用串行总线(Universal Serial Bus,USB)接口230、充电管理模块240、电源管理模块241、电池242、天线1、天线2、移动通信模块250、无线通信模块260、音频模块270、扬声器271、受话器272、麦克风273、耳机接口274、传感器模块280、显示屏290、摄像模组291、指示器292、马达293、按键294以及用户标识模块(subscriber identification module,SIM)卡接口295等。其中传感器模块280可以包括深度传感器2801、压力传感器2802、陀螺仪传感器2803等。
处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(Application Processor,AP)、调制解调处理器、图形处理器(Graphics ProcessingUnit,GPU)、图像信号处理器(Image Signal Processor,ISP)、控制器、视频编解码器、数字信号处理器(Digital Signal Processor,DSP)、基带处理器和/或神经网络处理器(Neural-Network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
NPU为神经网络(Neural-Network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现移动终端200的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
处理器210中设置有存储器。存储器可以存储用于实现六个模块化功能的指令:检测指令、连接指令、信息管理指令、分析指令、数据传输指令和通知指令,并由处理器210来控制执行。
移动终端200的无线通信功能可以通过天线1、天线2、移动通信模块250、无线通信模块260、调制解调处理器以及基带处理器等实现。
移动终端200通过GPU、显示屏290及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏290和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
移动终端200可以通过ISP、摄像模组291、视频编解码器、GPU、显示屏290及应用处理器等实现拍摄功能。其中,ISP用于处理摄像模组291反馈的数据;摄像模组291用于捕获静态图像或视频;数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号;视频编解码器用于对数字视频压缩或解压缩,移动终端200还可以支持一种或多种视频编解码器。
外部存储器接口222可以用于连接外部存储卡,例如Micro SD卡,实现扩展移动终端200的存储能力。内部存储器221可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器221可以包括存储程序区和存储数据区。
移动终端200可以通过音频模块270、扬声器271、受话器272、麦克风273、耳机接口274及应用处理器等实现音频功能。例如音乐播放、录音等。
深度传感器2801用于获取景物的深度信息。压力传感器2802用于感受压力信号,可以将压力信号转换成电信号。陀螺仪传感器2803可以用于确定移动终端200的运动姿态。此外,还可以根据实际需要在传感器模块280中设置其他功能的传感器,例如气压传感器、磁传感器、加速度传感器、距离传感器、接近光传感器、指纹传感器、温度传感器、触摸传感器、环境光传感器、骨传导传感器等。
移动终端200中还可包括其它提供辅助功能的设备。例如,按键294包括开机键,音量键等,用户可以通过按键输入,产生与移动终端200的用户设置以及功能控制有关的键信号输入。再如,指示器292、马达293、SIM卡接口295等。
在运动估计的方法中,惩罚值作为匹配误差计算中的依据,通常用于描述运动矢量的可靠性,进而对确定当前计算块对应的运动矢量具有重大的影响。在相关技术中,通常会采用经验值或者实验来确定一个固定的惩罚值,然而这种固定的惩罚值明显无法描述不同运动矢量的可靠性。
基于上述一个或多个问题,本公开示例性实施方式提供了一种运动估计方法和运动估计装置,以下进行详细阐述。
图3示出了本示例性实施方式中一种运动估计方法的流程,包括以下步骤S310至S330:
在步骤S310中,获取当前计算块对应的候选运动矢量集。
在一示例性实施例中,在进行运动估计之前,需要在视频帧中选取参考帧。在得到参考帧后,可以根据一定的大小对参考帧进行划分,得到多个图像块,该图像块即为本公开中的计算块。在进行运动估计时,需要针对每个计算块分别进行处理,当前处理的计算块即为当前计算块。例如,在针对参考帧中第一行、第一列的图像块进行处理时,当前计算块即为参考帧中第一行、第一列的图像块。
在一示例性实施例中,当前计算块对应的候选运动矢量集中可以包括至少一个候选运动矢量。其中,候选运动矢量可以是当前计算块对应的空间候选运动矢量、时间候选运动矢量、随机候选运动矢量、全局运动矢量、局部运动矢量、零运动矢量等多种不同类型的候选运动矢量中一种或者多种的组合,本公开对此不做特殊限定。例如,图4示例性示出了当前计算块C和当前计算块C对应候选运动矢量集,其中包括了4个空间候选运动矢量S1、S2、S3、S4对应的计算块和3个时间候选运动矢量T1、T2、T3对应的计算块。
在步骤S320中,基于候选运动矢量的类型确定候选运动矢量对应的惩罚值。
在一示例性实施例中,不同类型的候选运动矢量对运动状态的敏感程度不同,对应的对运动估计的可靠性也不同,因此可以针对不同类型的候选运动矢量选择不同的方式确定候选运动矢量对应的惩罚值。例如,随机候选运动矢量对运动状态的敏感程度更高,在当前计算块的运动较大时,随机候选运动矢量对运动估计的可靠性更高,因此可以选择更小的惩罚值;反之,在当前计算块的运动较小时,则针对随机候选运动矢量的惩罚值可以选择较大的值。
在一示例性实施例中,在候选运动矢量为随机候选运动矢量时,由于随机运动候选矢量对于当前计算块的运动状态更加敏感,因此可以先根据候选运动矢量集中的所有候选运动矢量计算当前计算块对应的运动状态参数,然后基于当前计算块的运动状态参数,进而可以根据计算得到的运动状态参数,通过参数-惩罚值映射关系确定随机候选运动矢量对应的第一惩罚值。
通过上述参数-惩罚值映射关系确定第一惩罚值的方式,一方面,可以结合当前计算块的运动状态,确定随机候选运动矢量的可靠性;另一方面,在同一画面中出现多种运动状态的运动物体时,根据当前计算块的运动状态确定第一惩罚值,可以充分体现在运动状态不同时,随机候选运动矢量的可靠性,进而能够对存在多个不同运动状态的复杂场景中的运动物体进行更加精确的运动估计。
其中,参数-惩罚值映射关系可以用于表征运动状态参数和惩罚值之间的关系,可以是多种形式的映射关系。例如,可以预先建立运动状态参数和惩罚值之间的关系曲线,在得到运动状态参数后,可以根据关系曲线确定该运动参数对应的惩罚值;再如,可以通过映射表、机器学习模型等方式表征运动参数和惩罚值之间的关系,进而通过计算得到的运动状态参数确定随机候选运动矢量对应的第一惩罚值。
在一示例性实施例中,在候选运动矢量为随机候选运动矢量时,可以基于当前计算块对应的候选运动矢量集确定当前计算块对应的状态参数。在参考帧不同时,可以选择不同的方式确定当前计算块的运动状态参数。
具体的,在一示例性实施例中,由空间候选运动矢量与当前计算块的距离较近,对当前计算块的运动状态判断有更重要的影响,因此,可以直接在候选运动矢量集中选择所有的空间候选运动矢量,并根据空间候选运动矢量确定当前计算块的运动状态参数。具体确定时,可以将候选运动矢量集中所有空间候选运动矢量的平均值作为运动状态参数;在存在遮挡时,还可以引入候选运动矢量集中的所有时间候选运动矢量,并计算所有空间候选运动矢量和所有时间候选运动矢量的平均值,作为运动状态参数。除上述方式外,还可以采用其它方式确定当前计算块对应的运动状态参数,本公开对此也不做特殊限定。
在一示例性实施例中,还可以根据设定的规则在空间候选运动矢量中筛选一部分空间候选运动矢量,并根据筛选出的空间候选运动矢量作为运动状态参数。例如,在设定的规则为选择匹配误差最小的两个空间候选运动矢量时,可以计算筛选得到的两个空间候选运动矢量的平均值,并将平均值确定为运动状态参数;再如,还可以直接选择匹配误差最小的一个空间候选运动矢量,直接确定为运动状态参数。需要说明的是,在上述方法中,设定的规则不同时,对应的确定方式也可以不同。
进一步地,在参考帧中存在重复性的图案时,当前计算块在重复性图案所在的区域内时,随机候选运动矢量的可靠性会受到影响。因此,在确定了随机候选运动矢量对应的第一惩罚值之后,可以根据当前计算块是否在重复图案所在的区域内,对应第一惩罚值进行进一步的修正。具体的,可以先对当前计算块所在的参考帧进行梯度检测,并在参考帧中某一区域内的梯度值十分接近时,确定该区域为重复图案区域;然后在当前计算块在重复图案区域内时,根据预设方式将第一惩罚值增大。
其中,在确定梯度值是否接近时,可以根据区域内各梯度值与该区域的梯度平均值之差在一定范围内进行判断,也可以根据区域内各梯度值均在一固定差值的数值范围内进行判断,本公开对梯度值接近的判断方式不做特殊限定。在根据预设方式将第一惩罚值增大时,可以选择向计算的得到的第一惩罚值增加固定数值的方式进行,也可以选择根据梯度值选择对应的数值,并向第一惩罚值增加该数值的方式进行,本公开对此也不做特殊限定。
在一示例性实施例中,在候选运动矢量为时间候选运动矢量时,可以通过检测当前计算块的遮挡状态,并根据遮挡状态确定当前计算块的惩罚值。具体的,可以预先设置不同遮挡状态对应的预设值。例如,可以在当前计算块为被遮挡状态时,确定时间候选运动矢量对应的第二惩罚值为第一预设值,在当前计算块为未遮挡状态时,确定时间候选运动矢量对应的第二惩罚值为第二预设值。其中,由于在当前计算块被遮挡时,通过较小的惩罚值可以得到更准确的运动估计结果,因此通常可以设置第一预设值小于第二预设值。
需要说明的是,在根据遮挡状态设置预设值时,除了上述根据遮挡和未遮挡状态进行设置外,还可以根据遮挡的比例不同设置更多的预设值,本公开对此不做特殊限定。例如,在当前计算块被遮挡1%到50%时,设置一个预设值,在当前计算块被遮挡50%至100%时,设置另一个预设值。
在一示例性实施例中,在检测当前计算块的遮挡状态时,可以采用以下的方式:根据预设窗口在当前计算块所在的参考帧中选择至少一组与当前计算块相接的检测窗口组,该检测窗口组中包括以当前计算块为对称中心的,相互对称的第一窗口和第二窗口。然后分别计算第一窗口中包括的所有计算块对应的运动矢量的第一平均值,以及第二窗口中包括的所有计算块对应的第二平均值,并根据第一平均值和第二平均值确定该检测窗口组对应的检测结果。由于可能存在多组检测窗口组,因此在各检测窗口组对应的检测结果中,只要有任意一个检测结果为被遮挡时,则可以确定当前计算块为被遮挡状态;反之,只有在所有的检测结果均为未遮挡时,才可以确定当前计算块的检测结果为未遮挡状态。
其中,预设窗口的大小可以根据参考帧中计算块的数量不同进行不同的设置。例如可以是与3*3个计算块大小相同的预设窗口,可以是与3*4个计算块大小相同的预设窗口,本公开对此也不做特殊限定。
需要说明的是,为了得到更准确的结果,通常情况下选择第一窗口和第二窗口时,可以使第一窗口和第二窗口与当前计算块相接。在第一窗口和第二窗口中的计算块与当前计算块越接近时,确定遮挡状态时的结果也会更准确。
举例而言,在预设窗口的大小仅包括一个计算块时,可以选择当前计算块左侧计算块和右侧的计算块分别作为第一窗口和第二窗口;再如,在预设窗口的大小包括3*3个计算块时,参照图5所示,可以选择与当前计算块相接,且位于当前计算块正上方和正下方的9个计算块作为第一窗口和第二窗口。此外,除了上述左右两侧、上下两侧以外,还可以选择其它方向上的检测窗口组,如左上方和右下方,左下方和右上方等,本公开对此也不做特殊限定。
在一示例性实施例中,在根据第一平均值和第二平均值确定检测结果时,可以先计算第一平均值和第二平均值的差的绝对值,在该绝对值大于预设阈值时,可以确定检索窗口组对应的检索结果为被遮挡;在该绝对值小于等于预设阈值时,可以确定检测窗口组对应的检测结果为未遮挡。需要说明的是,除了上述方案以外,还可以通过其他方式检测当前计算块的遮挡状态,本公开对此也不做特殊限定。
此外,在确定检测结果后,可以将检测结果转换为结果标识,在后续根据检测窗口组对应的检测结果确定当前计算块的遮挡状态时,可以直接通过确定检索结果中是否包含结果标识进行判断。例如,可以通过1和0分别指代被遮挡状态和未遮挡状态,在后续确定当前计算块的遮挡状态时,直接通过判断检索结果中是否包括1确定遮挡状态。
在一示例性实施例中,除了上述空间候选运动矢量、随机候选运动矢量和时间运动矢量以外,还可以包括其他类型的目标候选运动矢量。具体的,目标候选运动矢量可以包括全局运动矢量、局部运动矢量以及零运动矢量中的一种或多种的组合。由于目标候选运动矢量的可靠性也受当前计算块遮挡状态的影响,因此可以基于第二惩罚值确定目标候选运动矢量对应的第三惩罚值。例如,可以将第三惩罚值设置为第二惩罚值的预设倍数,也可以对第二惩罚值进行其他运算,得到对应的第三惩罚值。
在一示例性实施例中,在候选运动矢量为空间候选运动矢量时,由于空间候选运动矢量与当前计算块的距离最接近,因此在确定当前计算块的运动矢量时,这些空间候选运动矢量的可靠性通常比较高,因此可以直接根据将空间候选运动矢量对应的第四惩罚值确定为一个较小的第三预设值。需要说明的是,由于空间候选运动矢量的可靠性较高,通产情况下可以直接将第三预设值设置为0。
在步骤S330中,基于惩罚值计算候选运动矢量对应的匹配误差,并将匹配误差最小的候选运动矢量确定为所述当前计算块对应的运动矢量。
在一示例性实施例中,在计算匹配误差时,可以先基于现有技术中的方法,针对每个候选运动矢量计算对应的绝对差值和(SAD),然后根据已确定的惩罚值和SAD,共同计算候选运动矢量的匹配误差。具体计算时,可以采用相关技术中基于固定惩罚值和SAD计算匹配误差的方法,基于本公开中确定的惩罚值和SAD计算候选运动矢量的匹配误差。然后,在所有匹配误差中找到最小的匹配误差,并将该最小匹配误差对应的候选运动矢量确定为当前计算块对应的运动矢量。
综上,本示例性实施方式中,可以根据候选运动矢量的类型不同,分别采用与该类型相匹配的方式,确定候选运动矢量对应的惩罚值,避免了相关技术中,固定的惩罚值无法实现区分不同类型候选运动矢量的设置初衷;同时,根据与候选运动矢量类型匹配的方式计算得到的惩罚值,能够匹配和适应各种场景下的参考帧。即使在视频中存在多个速度不一致的运动物体时,也能适应性的进行运动估计。
需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
进一步的,参考图6所示,本示例的实施方式中还提供一种运动估计装置600,包括矢量获取模块610、惩罚值确定模块620和矢量确定模块630。其中:
矢量获取模块610可以用于获取当前计算块对应的候选运动矢量集;其中,候选运动矢量集中包括至少一个候选运动矢量。
惩罚值确定模块620可以用于基于候选运动矢量的类型确定候选运动矢量对应的惩罚值。
矢量确定模块630可以用于基于惩罚值计算候选运动矢量对应的匹配误差,并将匹配误差最小的候选运动矢量确定为所述当前计算块对应的运动矢量。
在一示例性实施例中,惩罚值确定模块620可以用于在候选运动矢量为随机候选运动矢量时,基于候选运动矢量集计算当前计算块对应的运动状态参数;基于运动状态参数和参数-惩罚值映射关系确定随机候选运动矢量对应的第一惩罚值。
在一示例性实施例中,惩罚值确定模块620可以用于对当前计算块所在的参考帧进行梯度检测,并根据参考帧的梯度值确定重复图案区域;在当前计算块在重复图案区域内时,根据预设方式增大第一惩罚值。
在一示例性实施例中,惩罚值确定模块620可以用于在候选运动矢量为时间候选运动矢量时,检测当前计算块的遮挡状态;在当前计算块为被遮挡状态时,确定时间候选运动矢量对应的第二惩罚值为第一预设值;在当前计算块为未遮挡状态时,确定时间候选运动矢量对应的第二惩罚值为第二预设值。
在一示例性实施例中,惩罚值确定模块620可以用于根据预设窗口在当前计算块所在的参考帧中选择至少一组检测窗口组;检测窗口组包括第一窗口和第二窗口,且第一窗口和第二窗口以当前计算块为对称中心相互对称;计算第一窗口中各计算块对应的运动矢量的第一平均值,并计算第二窗口中各计算块对应的运动矢量的第二平均值;根据第一平均值和第二平均值确定检测窗口组对应的检测结果;在各检测窗口组对应的检测结果包括至少一个被遮挡时,确定当前计算块为被遮挡状态;在各检测窗口组对应的检测结果均为未遮挡时,确定当前计算块为未遮挡状态。
在一示例性实施例中,惩罚值确定模块620可以用于计算第一平均值和第二平均值的差的绝对值;在绝对值大于预设阈值时,确定检测窗口组对应的检测结果为被遮挡;在绝对值小于等于预设阈值时,确定检测窗口组对应的检测结果为未遮挡。
在一示例性实施例中,惩罚值确定模块620可以用于在候选运动矢量为目标候选运动矢量时,基于第二惩罚值确定目标候选运动矢量对应的第三惩罚值
在一示例性实施例中,目标候选运动矢量包括全局运动矢量、局部运动矢量、零运动矢量中的一种或多种的组合。
在一示例性实施例中,惩罚值确定模块620可以用于在候选运动矢量为空间候选运动矢量时,确定空间候选运动矢量对应的四惩罚值为第三预设值。
在一示例性实施例中,矢量确定模块630可以用于计算候选运动矢量对应的绝对差值和,并根据惩罚值和绝对差值和计算候选运动矢量的匹配误差。
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为***、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。
本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤,例如可以执行图3中任意一个或多个步骤。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
此外,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (13)
1.一种运动估计方法,其特征在于,包括:
获取当前计算块对应的候选运动矢量集;其中,所述候选运动矢量集中包括至少一个候选运动矢量;
基于所述候选运动矢量的类型确定所述候选运动矢量对应的惩罚值;
基于所述惩罚值计算所述候选运动矢量对应的匹配误差,并将匹配误差最小的候选运动矢量确定为所述当前计算块对应的运动矢量。
2.根据权利要求1所述的方法,其特征在于,所述基于所述候选运动矢量的类型确定所述候选运动矢量对应的惩罚值,包括:
在所述候选运动矢量为随机候选运动矢量时,基于所述候选运动矢量集计算所述当前计算块对应的运动状态参数;
基于所述运动状态参数和参数-惩罚值映射关系确定所述随机候选运动矢量对应的第一惩罚值。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
对所述当前计算块所在的参考帧进行梯度检测,并根据所述参考帧的梯度值确定重复图案区域;
在所述当前计算块在所述重复图案区域内时,根据预设方式增大所述第一惩罚值。
4.根据权利要求1所述的方法,其特征在于,所述基于所述候选运动矢量的类型确定所述候选运动矢量对应的惩罚值,包括:
在所述候选运动矢量为时间候选运动矢量时,检测所述当前计算块的遮挡状态;
在所述当前计算块为被遮挡状态时,确定所述时间候选运动矢量对应的第二惩罚值为第一预设值;
在所述当前计算块为未遮挡状态时,确定所述时间候选运动矢量对应的第二惩罚值为第二预设值。
5.根据权利要求4所述的方法,其特征在于,检测所述当前计算块的遮挡状态,包括:
根据预设窗口在所述当前计算块所在的参考帧中选择至少一组检测窗口组;所述检测窗口组包括第一窗口和第二窗口,且所述第一窗口和所述第二窗口以所述当前计算块为对称中心相互对称;
计算所述第一窗口中各计算块对应的运动矢量的第一平均值,并计算所述第二窗口中各计算块对应的运动矢量的第二平均值;
根据所述第一平均值和所述第二平均值确定所述检测窗口组对应的检测结果;
在各所述检测窗口组对应的检测结果包括至少一个被遮挡时,确定所述当前计算块为被遮挡状态;
在各所述检测窗口组对应的检测结果均为未遮挡时,确定所述当前计算块为未遮挡状态。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一平均值和所述第二平均值确定所述检测窗口组对应的检测结果,包括:
计算所述第一平均值和所述第二平均值的差的绝对值;
在所述绝对值大于预设阈值时,确定所述检测窗口组对应的检测结果为被遮挡;
在所述绝对值小于等于预设阈值时,确定所述检测窗口组对应的检测结果为未遮挡。
7.根据权利要求4所述的方法,其特征在于,所述基于所述候选运动矢量的类型确定所述候选运动矢量对应的惩罚值还包括:
在所述候选运动矢量为目标候选运动矢量时,基于所述第二惩罚值确定所述目标候选运动矢量对应的第三惩罚值。
8.根据权利要求7所述的方法,其特征在于,所述目标候选运动矢量包括全局运动矢量、局部运动矢量、零运动矢量中的一种或多种的组合。
9.根据权利要求1所述的方法,其特征在于,所述基于所述候选运动矢量的类型确定所述候选运动矢量对应的惩罚值,包括:
在所述候选运动矢量为空间候选运动矢量时,确定所述空间候选运动矢量对应的第四惩罚值为第三预设值。
10.根据权利要求1所述的方法,其特征在于,基于所述惩罚值计算各所述候选运动矢量对应的匹配误差,包括:
计算所述候选运动矢量对应的绝对差值和,并根据所述惩罚值和所述绝对差值和计算所述候选运动矢量的匹配误差。
11.一种运动估计装置,其特征在于,包括:
矢量获取模块,用于获取当前计算块对应的候选运动矢量集;其中,所述候选运动矢量集中包括至少一个候选运动矢量;
惩罚值确定模块,用于基于所述候选运动矢量的类型确定所述候选运动矢量对应的惩罚值;
矢量确定模块,用于基于所述惩罚值计算所述候选运动矢量对应的匹配误差,并将匹配误差最小的候选运动矢量确定为所述当前计算块对应的运动矢量。
12.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述的方法。
13.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010897247.3A CN112001943A (zh) | 2020-08-31 | 2020-08-31 | 运动估计方法及装置、计算机可读介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010897247.3A CN112001943A (zh) | 2020-08-31 | 2020-08-31 | 运动估计方法及装置、计算机可读介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112001943A true CN112001943A (zh) | 2020-11-27 |
Family
ID=73466123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010897247.3A Pending CN112001943A (zh) | 2020-08-31 | 2020-08-31 | 运动估计方法及装置、计算机可读介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112001943A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1656514A (zh) * | 2002-05-30 | 2005-08-17 | 皇家飞利浦电子股份有限公司 | 估计运动矢量的单元和方法 |
US20090244388A1 (en) * | 2008-03-27 | 2009-10-01 | Siou-Shen Lin | Motion estimation method and related apparatus for determining target motion vector according to motion of neighboring image blocks |
CN105657319A (zh) * | 2016-03-09 | 2016-06-08 | 宏祐图像科技(上海)有限公司 | Me中基于特征动态控制候选矢量惩罚值的方法及*** |
CN108271022A (zh) * | 2016-12-30 | 2018-07-10 | 展讯通信(上海)有限公司 | 一种运动估计的方法及装置 |
CN111462170A (zh) * | 2020-03-30 | 2020-07-28 | Oppo广东移动通信有限公司 | 运动估计方法、运动估计装置、存储介质与电子设备 |
-
2020
- 2020-08-31 CN CN202010897247.3A patent/CN112001943A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1656514A (zh) * | 2002-05-30 | 2005-08-17 | 皇家飞利浦电子股份有限公司 | 估计运动矢量的单元和方法 |
US20090244388A1 (en) * | 2008-03-27 | 2009-10-01 | Siou-Shen Lin | Motion estimation method and related apparatus for determining target motion vector according to motion of neighboring image blocks |
CN105657319A (zh) * | 2016-03-09 | 2016-06-08 | 宏祐图像科技(上海)有限公司 | Me中基于特征动态控制候选矢量惩罚值的方法及*** |
CN108271022A (zh) * | 2016-12-30 | 2018-07-10 | 展讯通信(上海)有限公司 | 一种运动估计的方法及装置 |
CN111462170A (zh) * | 2020-03-30 | 2020-07-28 | Oppo广东移动通信有限公司 | 运动估计方法、运动估计装置、存储介质与电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020224479A1 (zh) | 目标的位置获取方法、装置、计算机设备及存储介质 | |
CN111641835A (zh) | 视频处理方法、视频处理装置和电子设备 | |
CN110059623B (zh) | 用于生成信息的方法和装置 | |
CN110062157B (zh) | 渲染图像的方法、装置、电子设备和计算机可读存储介质 | |
JP2021531589A (ja) | 目標対象の動作認識方法、装置及び電子機器 | |
WO2016186782A1 (en) | Video encoding and decoding | |
CN113610911A (zh) | 深度预测模型的训练方法及装置、介质和电子设备 | |
CN113902636A (zh) | 图像去模糊方法及装置、计算机可读介质和电子设备 | |
CN110619602B (zh) | 一种图像生成方法、装置、电子设备及存储介质 | |
KR20210000671A (ko) | 헤드 포즈 추정 | |
US11810336B2 (en) | Object display method and apparatus, electronic device, and computer readable storage medium | |
CN114882576B (zh) | 人脸识别方法、电子设备、计算机可读介质和程序产品 | |
CN112001943A (zh) | 运动估计方法及装置、计算机可读介质和电子设备 | |
CN111798385B (zh) | 图像处理方法及装置、计算机可读介质和电子设备 | |
CN114119413A (zh) | 图像处理方法及装置、可读介质和移动终端 | |
CN113362260A (zh) | 图像优化方法及装置、存储介质及电子设备 | |
CN113205530A (zh) | 阴影区域处理方法及装置、计算机可读介质和电子设备 | |
CN112950516B (zh) | 图像局部对比度增强的方法及装置、存储介质及电子设备 | |
CN111353929A (zh) | 图像处理方法、装置和电子设备 | |
WO2023223704A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
CN111105345B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN115952830B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN112418233B (zh) | 图像处理方法、装置、可读介质及电子设备 | |
CN110047520B (zh) | 音频播放的控制方法、装置、电子设备和计算机可读存储介质 | |
CN114372974B (zh) | 图像检测方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |