CN109089121B - 一种基于视频编码的运动估计方法、装置及电子设备 - Google Patents

一种基于视频编码的运动估计方法、装置及电子设备 Download PDF

Info

Publication number
CN109089121B
CN109089121B CN201811221616.6A CN201811221616A CN109089121B CN 109089121 B CN109089121 B CN 109089121B CN 201811221616 A CN201811221616 A CN 201811221616A CN 109089121 B CN109089121 B CN 109089121B
Authority
CN
China
Prior art keywords
pixel block
distortion value
pixel
coded
motion estimation
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.)
Active
Application number
CN201811221616.6A
Other languages
English (en)
Other versions
CN109089121A (zh
Inventor
张二丽
范娟婷
朱政
张贤国
金星
樊鸿飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201811221616.6A priority Critical patent/CN109089121B/zh
Publication of CN109089121A publication Critical patent/CN109089121A/zh
Application granted granted Critical
Publication of CN109089121B publication Critical patent/CN109089121B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明实施例提供了一种基于视频编码的运动估计方法、装置及电子设备,方法包括:从待编码视频帧中获取待编码像素块;基于待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值;若最优失真值小于第一预设阈值,则基于待编码像素块,对参考视频帧进行分像素点的运动估计。通过本方案,可以实现更合理的对待编码像素块进行运动估计,提高运动估计整体的运行速度,进而提高视频编码效率。

Description

一种基于视频编码的运动估计方法、装置及电子设备
技术领域
本发明涉及视频图像处理技术领域,特别是涉及一种基于视频编码的运动估计方法、装置及电子设备。
背景技术
随着互联网及信息技术的不断发展,人们随时随地都可以通过各类终端来观看各种视频信息,例如,视频新闻、影视剧、直播等等。
由于网络带宽、延时等因素的限制,所以视频信息在通过各种渠道进行传输时,需要将视频信息进行编码压缩后再进行传输或存储。对于视频信息的生产方以及使用者来说,视频编解码***是视频应用领域的核心。它决定着视频媒体服务的质量,也直接影响网络带宽需求、用户体验质量、解码设备需求、直播延迟等问题的关键因素。因此高效的视频编解码***一直是广电、互联网视频、视频协作厂商等竞相追逐的重点对象。现有的视频编码技术最为通用的可以包括H.264以及H.265等。
在各类视频编码技术中,预测技术是非常重要的一部分内容。预测可以包括帧内预测和帧间预测。其中,帧间预测用于减少时域冗余,它是利用相邻视频帧之间的相关性进行预测编码,即当前待编码视频帧使用其它已编码并重构的视频帧作为参考视频帧,当前待编码视频帧中的待编码的像素块在参考帧中搜索相似像素块作为参考像素块。
帧间预测中的关键技术包括运动估计。其中运动估计是以当前待编码的像素块为模板,通过在一定范围内的参考帧中搜索最佳参考帧中的最佳的参考像素块的过程。当确定出最佳的参考像素块后,可以得到当前待编码像素块与参考像素块之间的运动运动矢量,即参考视频帧上的参考像素块,与当前待编码视频帧中的待编码像素块之间的相对位置,从而可以利用参考像素块对当前待编码像素块进行编码,进而提高编码效率。
运动估计可以分为整像素运动估计和分像素运动估计。在现有技术中,一般首先对当前待编码像素块执行整像素点运动估计,然后再执行分像素点运动估计,但是由于分像素点运动估计复杂度较高,很大程度上限制了运动估计整体的运行速度,进而降低了编码效率。所以,如何更合理的对待编码像素块进行运动估计,成为了亟待解决的问题。
发明内容
本发明实施例的目的在于提供一种基于视频编码的运动估计方法、装置及电子设备,以实现更合理的对待编码像素块进行运动估计,提高运动估计整体的运行速度,进而提高视频编码效率。具体技术方案如下:
本发明实施例提供了一种基于视频编码的运动估计方法,包括:
从待编码视频帧中获取待编码像素块;
基于所述待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值;其中,所述最优失真值为所述待编码像素块与参考像素块的匹配误差;所述参考像素块为所述参考视频帧中与所述待编码像素块匹配误差最小的像素块;
若所述最优失真值小于第一预设阈值,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计。
可选的,所述方法还包括:根据所述待编码像素块的尺寸和/或当前编码速度,确定所述第一预设阈值。
可选的,所述第一预设阈值与所述待编码像素块的尺寸成正比关系,和/或,所述第一预设阈值与所述当前编码速度成正比关系。
可选的,所述方法还包括:
若所述最优失真值小于所述第一预设阈值,且所述参考像素块在所述参考视频帧中不处于平坦区域,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计;其中,所述平坦区域内的像素点之间的差异程度小于第二预设阈值。
可选的,所述第二预设阈值包括,失真值差值阈值;
通过以下方法确定所述参考像素块在所述参考视频帧中是否处于平坦区域:
在所述待编码像素块中的预设像素点的邻域内,选取预设数量的目标像素点;
在所述参考像素块中与所述预设像素点对应的像素点的邻域内,选取与各所述目标像素点分别对应的参考像素点;
分别计算各所述目标像素点与各自对应的参考像素点的失真值;
确定各所述失真值中的最大失真值,将所述最大失真值作为参考失真值,或者,基于各所述失真值和所述最优失真值,计算平均失真值,将所述平均失真值作为所述参考失真值;
若所述最优失真值与所述参考失真值的差值小于所述失真值差值阈值,则确定所述参考像素块处于平坦区域;
若所述最优失真值与所述参考失真值的差值不小于所述失真值差值阈值,则确定所述参考像素块不处于所述平坦区域。
可选的,所述方法还包括:根据所述待编码像素块的尺寸和/或当前编码速度,确定所述失真值差值阈值。
可选的,所述失真值差值阈值与所述待编码像素块的尺寸成正比关系,和/或,所述失真值差值阈值与所述当前编码速度成正比关系。
本发明实施例还公开了一种基于视频编码的运动估计装置,包括:
获取模块,用于从待编码视频帧中获取待编码像素块;
运动估计模块,用于基于所述待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值;其中,所述最优失真值为所述待编码像素块与参考像素块的匹配误差;所述参考像素块为所述参考视频帧中与所述待编码像素块匹配误差最小的像素块;若所述最优失真值小于第一预设阈值,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计。
可选的,所述装置还包括:
计算模块,用于根据所述待编码像素块的尺寸和/或当前编码速度,确定所述第一预设阈值。
可选的,所述第一预设阈值与所述待编码像素块的尺寸成正比关系,和/或,所述第一预设阈值与所述当前编码速度成正比关系。
可选的,所述运动估计模块,还用于:
若所述最优失真值小于所述第一预设阈值,且所述参考像素块在所述参考视频帧中不处于平坦区域,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计;其中,所述平坦区域内的像素点之间的差异程度小于第二预设阈值。
可选的,所述第二预设阈值包括,失真值差值阈值;
所述装置还包括:
选取模块,用于在所述待编码像素块中的预设像素点的邻域内,选取预设数量的目标像素点;在所述参考像素块中与所述预设像素点对应的像素点的邻域内,选取与各所述目标像素点分别对应的参考像素点;
计算模块,用于分别计算各所述目标像素点与各自对应的参考像素点的失真值;
确定模块,用于确定各所述失真值中的最大失真值,将所述最大失真值作为参考失真值,或者,基于各所述失真值和所述最优失真值,计算平均失真值,将所述平均失真值作为所述参考失真值;若所述最优失真值与所述参考失真值的差值小于所述失真值差值阈值,则确定所述参考像素块处于平坦区域;若所述最优失真值与所述参考失真值的差值不小于所述失真值差值阈值,则确定所述参考像素块不处于所述平坦区域。
可选的,所述计算模块,还用于根据所述待编码像素块的尺寸和/或当前编码速度,确定所述失真值差值阈值。
可选的,所述失真值差值阈值与所述待编码像素块的尺寸成正比关系,和/或,所述失真值差值阈值与所述当前编码速度成正比关系。
本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一种基于视频编码的运动估计方法。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种基于视频编码的运动估计方法。
在本发明实施的又一方面,本发明实施例还提供了一种包含计算机程序的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一种基于视频编码的运动估计方法。
本发明实施例提供的一种基于视频编码的运动估计方法、装置及电子设备,从待编码视频帧中获取待编码像素块,基于待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值,若最优失真值小于第一预设阈值,则基于待编码像素块,对参考视频帧进行分像素点的运动估计。在最优失真值小于第一预设阈值时,才对参考视频帧进行分像素点的运动估计,避免了非必要的编码步骤,提高了运动估计整体的运行速度,进而提高视频编码效率。通过减少运动估计过程中的搜索的像素点个数,在编码性能损失很少的基础上有效降低编码复杂度。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于视频编码的运动估计方法的第一种流程图;
图2为本发明实施例提供的基于视频编码的运动估计方法的第二种流程图;
图3为本发明实施例提供的基于视频编码的运动估计方法的第三种流程图;
图4为本发明实施例提供的基于视频编码的运动估计装置的结构图;
图5为本发明实施例提供的电子设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,图1为本发明实施例提供的基于视频编码的运动估计方法的第一种流程图,包括:
步骤S101,从待编码视频帧中获取待编码像素块。
步骤S102,基于待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值,其中,最优失真值为待编码像素块与参考像素块的匹配误差,参考像素块为参考视频帧中与待编码像素块匹配误差最小的像素块。
视频中的图像又称为视频帧,视频帧一般分为三类,即I帧、P帧和B帧。其中,I帧又称帧内编码帧,是一种自带全部信息的独立帧,无需参考其他图像便可独立进行解码,可以简单理解为一张静态画面。视频序列中的第一个帧始终都是I帧,因为它是关键帧。P帧又称帧间预测编码帧,需要参考前面的I帧才能进行编码,表示的是当前帧画面与前一帧(前一帧可能是I帧也可能是P帧)的差别。对P帧进行解码时,需要用之前缓存的画面叠加上本帧定义的差别,生成最终画面。与I帧相比,P帧通常占用更少的数据位,但不足是,由于P帧对前面的P和I参考帧有着复杂的依耐性,因此对传输错误非常敏感。B帧又称双向预测编码帧,也就是B帧记录的是本帧与前后帧的差别。也就是说要解码B帧,不仅要取得之前的缓存画面,还要解码之后的画面,通过前后画面的与本帧数据的叠加取得最终的画面。B帧压缩率高,但是对解码性能要求较高。
P帧和B帧较I帧具有更好的压缩性能。这是由于I帧仅采用帧内预测,而P帧和B帧既可采用帧内预测也可采用帧间预测。
由于视频帧中图像之间具有一定的连续性,例如,视频帧中的一个图像在连续的不同的视频帧中很可能只是位置发生了改变,其图像内容可能只发生了很小的改变。帧间预测就是利用这样的特性,在参考视频帧中,找到与待编码视频帧中的待编码像素块对应的参考像素块,确定出该的待编码像素块和参考像素块之间的位移,以及运动矢量和残差。由于参考像素块已经完成了编码,所以就可以仅通过该参考像素块,以及运动矢量和残差就可以对待编码像素块进行编码,不需要再对待编码像素块进行编码,从而减少了编码的数据量。所以运动估计的过程实质上就是确定出待编码像素块与参考像素块之间运动矢量的过程。
本发明实施例中,运动估计一般多用于帧间预测,所以待编码视频帧一般可以是P帧和B帧。待编码视频帧中的待编码像素块,是该待编码的视频帧中在当前时刻需要进行编码压缩的像素块。根据编码的需要,待编码像素块可以为各种尺寸的像素块,例如,可以为64×64,16×16等大小的宏块,也可以是8x8或4x4等大小的像素块。或者,待编码像素块还可以是更小的单元,通过尽可能减小待编码像素块的大小,可以在参考视频帧中得到与该待编码像素块匹配误差最小的参考像素块,从而减少编码比特数,提高压缩率。
待编码视频帧可以对应一个或多个参考视频帧,一般参考视频帧可以为与待编码视频帧相邻的视频帧,例如,最近的I帧、B帧、P帧等。
实际应用时,在编码过程中,首先可以获取与待编码视频帧和该待编码视频帧对应的参考视频帧的图像信息,然后根据图像信息确定出初始运动矢量,根据初始运动矢量可以在参考视频帧中确定搜索窗口。
当确定出搜索窗口之后,对待编码像素块执行整像素点的运动估计。整像素点可以认为是编码有效像素,即经过扫描可以直接得到的像素点。执行整像素点的运动估计,指的是以整像素点为最小颗粒度,在参考视频帧中进行搜索,得到与待编码像素块相似度最高的像素块(即参考像素块),并基于搜索到的参考像素块得到待编码像素块与参考像素块之间的运动矢量,基于该运动矢量对待编码像素块进行编码。
在参考视频帧中进行搜索得到与参考像素块的方法具体为:将待编码像素块分别与搜索窗口内的各个候选像素块进行误差计算,得到待编码像素块与各个候选像素块的失真值;其中,候选像素块指的是与待编码像素块大小相同的像素块;将失真值最小(即最优失真值)的候选像素块作为该待编码像素块的参考像素块。
失真值可以采用以下计算方法:计算待编码像素块中每一个像素点的值与参考像素块中对应的像素点的值的差值;将各个差值的绝对值相加得到失真值。
参考像素块与待编码像素块可能具有一定的差异,可以通过最优失真值来表示该参考像素块与待编码像素块差异的大小。在一些特殊情况下,参考像素块与待编码像素块可能完全相同,从而最优失真值可能为0。
步骤S103,若最优失真值小于第一预设阈值,则基于待编码像素块,对参考视频帧进行分像素点的运动估计。
当得到了最优失真值之后,就可以和第一预设阈值进行比较,判断该最优失真值是否小于第一预设阈值。
在本发明实施例的一种实施方式中,第一预设阈值可以是预设的值,该第一预设阈值用于衡量最优失真值是否小于一定的门限值,从而可以反应出通过整像素点的运动估计得到的参考像素块与待编码像素块的匹配误差是否过大。即当最优失真值不小于第一预设阈值时,则可以认为参考像素块与待编码像素块的匹配误差过大。当参考像素块与待编码像素块的匹配误差过大时,则证明整像素点的运动估计没有在该参考视频帧中搜索到合适的参考像素块。
第一预设阈值可以根据需要进行配置,例如,可以为从0到24576以内的任意数值,在实际应用中,可以根据需要进行选择。
在本发明实施例的另一种实施方式中,本发明实施例提供的基于视频编码的运动估计方法中,还可以包括:根据待编码像素块的尺寸和/或当前编码速度,确定第一预设阈值。
可选的,第一预设阈值与待编码像素块的尺寸成正比关系,和/或,第一预设阈值与当前编码速度成正比关系。
当待编码像素块的尺寸越大和/或当前编码速度越快时,则表示在编码过程的精细化程度越低,从而编码中能够接受或能够允许的待编码像素块与参考像素块之间的失真程度越大。所以,用于衡量参考像素块与待编码像素块的匹配误差是否过大的第一预设阈值,就可以相对较大。同理,当待编码像素块的尺寸越小和/或当前编码速度越慢时,表示编码过程的精细度更高,则能够接受或能够允许的待编码像素块与参考像素块之间的失真程度越低,从而第一预设阈值,就可以相对较小。
具体的,第一预设阈值与待编码像素块的尺寸和/或当前编码速度的正比关系可以是列表的形式,在该列表中可以保存有多个待编码像素块的尺寸值,多个不同的编码速度值,以及对应的第一预设阈值。通过待编码像素块的尺寸值,以及编码速度值,可以得到对应的第一预设阈值。其中该列表可以是预先设置的,也可以是通过机器学习等方式得到的。
第一预设阈值与待编码像素块的尺寸和/或当前编码速度的正比关系可以表示为函数关系,例如,正比例函数,指数函数等等。其中,待编码像素块的尺寸值和编码速度值可以作为函数关系式中的参数,从而利用函数关系式确定出待编码像素块的尺寸值和编码速度值对应的第一预设阈值。
在本发明实施例一种可选的实施方式中,第一预设阈值可以通过以下公式计算得到:第一预设阈值=待编码像素块的面积×第一预设系数。
待编码像素块的面积可以通过待编码像素块的宽度和高度计算得到。其中,宽度和高度分别为宽度方向和高度方向上该待编码像素块所具有的像素点个数。例如,待编码像素块的面积可以为,16×16,8×8等。第一预设系数为与编码过程中所允许的失真程度有关的系数,允许的失真程度越大则该第一预设系数越大。当所允许的失真程度越大时,执行运动估计时的预测精度越差,但可以提高编码速度。所以可以通过编码速度确定出对应的第一预设系数。一般可选的,第一预设系数的取值范围可以为0到24之间。在实际应用中,还可以根据需要进行取值范围的调整,在此不进行限定。
如果最优失真值小于第一预设阈值,则表示通过整像素点的运动估计得到的参考像素块与待编码像素块的匹配误差较低,该参考像素块与待编码像素块的相似度较高,是较为合适的参考像素块。从而可以在整像素点运动估计的基础上,再继续执行分像素点的运动估计,从而得到更加准确的参考像素块。
分像素点的运动估计,是指在整像素点运动估计的基础上,对整像素点进行插值等处理,从而在整像素点的位置之间插值出分像素点。分像素点可以有二分之一像素点,四分之一像素点,甚至八分之一像素点等等。
然后在分像素点的位置处,进行搜索,以确定出更为准确的参考像素块,从而进一步提高所得到的参考像素块与待编码像素块的相似度,减小参考像素块与待编码像素块的差异程度,得到更准确的运动矢量,进而提高编码质量。
如果最优失真值不小于第一预设阈值,则表示通过整像素点的运动估计得到的参考像素块与待编码像素块的匹配误差较高,该参考像素块并不是适合待编码像素块的参考像素块。所以,即使再在整像素点运动估计的基础上执行分像素点的运动估计,也不会得到更准确的参考像素点。从而可以跳过执行分像素点的运动估计的步骤。
在结束在参考视频帧中,对待编码像素块的运动估计之后,还可以获取与待编码视频帧对应的其他参考视频帧。返回执行步骤S102,直至获取与待编码的视频帧对应的全部参考视频帧。
在视频编码的过程中,对于一个待编码的视频频,可以存在多个对应的参考视频帧。所以,当结束了在一个参考视频帧中的预测后,如果没有得到合适的参考像素块,还可以在其余的参考视频帧中继续进行预测,同样执行本发明实施例提供的基于视频编码的运动估计方法。直至得到准确的参考像素块,并通过该参考像素块得到准确的运动矢量,从而进行编码。
在本发明实施例中,通过在多个参考视频帧中执行本发明实施例提供的基于视频编码的运动估计方法,可以进一步特高预测的准确性,提高编码质量。
由于在参考视频帧中已经执行了整像素点的运动估计,通过整像素点的运动估计得到的参考像素块已经是该参考视频帧中最优的参考视频块。所以可以结束在参考视频帧中,对待编码像素块的运动估计。当对编码质量要求不高时,可以将该参考视频块作为待编码像素块的参考像素块,并获得其运动矢量,利用该运动矢量对其进行编码。或者,当对编码质量要求较高时,可以放弃该参考像素块,然后在其他参考视频帧中重新进行整像素点的运动估计,或者也可以不对该待编码像素块进行帧间预测,直接对其进行编码。
参见表1,表1中对比了应用本发明实施例提供的基于视频编码的运动估计方法后,对于编码过程中的编码速度和其他参数的提升情况。
表1
Figure BDA0001834907700000101
Figure BDA0001834907700000111
表1中,测试项目中尉不同格式或类型的视频,包括CIF(Common IntermediateFormat,通用媒介格式);240P、480P、720P、1080P表示不同清晰度的视频;游戏视频和电影视频分别为游戏视频画面和电影视频画面。
编码速度是指在执行过程中的速度,RD_Y为亮度信号,RD_U和RD_V两个色度信号,RD_YUV为亮度和色度的合并信号。
表1中的各种数据表示在应用了本发明实施例提供的基于视频编码的运动估计方法后,相比于普通的视频编码,各项编码参数的提高情况。其中,负值表示相对于普通的视频编码,该项参数降低的值。
从表1中可以看出,虽然在个别参数上,存在略微降低的情况,但在其他大多数情况下,应用了本发明实施例提供的基于视频编码的运动估计方法后,对编码过程的各项参数均有所提高,尤其是对编码速度有明显的提高效果。
在本发明实施例中,从待编码视频帧中获取待编码像素块,基于待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值,若最优失真值小于第一预设阈值,则基于待编码像素块,对参考视频帧进行分像素点的运动估计。在最优失真值小于第一预设阈值时,才对参考视频帧进行分像素点的运动估计,避免了非必要的编码步骤,提高了运动估计整体的运行速度,进而提高视频编码效率。通过减少运动估计过程中的搜索的像素点个数,在编码性能损失很少的基础上有效降低编码复杂度。
结合图1所示实施例,可选的,步骤S102具体可以包括:
第一步,通过预设搜索算法在参考视频帧中搜索与待编码像素块的图像匹配参数SAD值最小的像素块,作为参考像素块。
在参考视频帧中,对待编码像素块执行整像素点的运动估计时,可以通过预设搜索算法,在参考视频帧中进行参考像素块的搜索。
预设搜索算法可以为对称十字搜索法,菱形搜索法等各种搜索方法。通过预设搜索算法,可以在参考视频帧中的搜索区域或搜索窗口中,搜索参考像素块。
通过预设搜索算法进行参考像素块的搜索,实质上是在搜索区域或搜索窗口中,搜索可能的各个像素块,并计算各个像素块与待编码像素块的图像匹配参数SAD值(Sum ofAbsolute Differences,差的绝对值的和),SAD值是将待编码像素块中的每个像素对应数值,与搜索的像素块中每个像素对应的数值之差的绝对值求和,据此评估两个像素块的相似度。该SAD值可以称为图像匹配参数。当SAD值越小时,则证明待编码像素块与该像素块相似度越高,即匹配误差越小。
所以,搜索出的与待编码像素块的SAD值最小的像素块,就可以作为参考像素块。
第二步,将最小的SAD值作为最优失真值。
当确定出与待编码像素块的SAD值最小的像素块,并将其作为参考像素块之后,该最小的SAD值可以作为最优失真值。该SAD值可以反应出待编码像素块与参考像素块之间整体的差异程度。
在本发明实施例中,通过各种预设算法在参考视频帧中确定出与待编码像素块SAD值最小的像素块,作为参考像素块,并将该SAD值作为最优失真值。使得能够确定出更准确的参考像素块和最优失真值。
结合上述实施例,参见图2,在本发明实施例提供的基于视频编码的运动估计方法包括:
步骤S201,从待编码视频帧中获取待编码像素块。
步骤S202,基于待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值,其中,最优失真值为待编码像素块与参考像素块的匹配误差,参考像素块为参考视频帧中与待编码像素块匹配误差最小的像素块。
步骤S201与S202与图1所示实施例的步骤S101和S102相同,具体参见图1所示实施例,这里不再赘述。
步骤S203,若最优失真值小于第一预设阈值,且参考像素块在参考视频帧中不处于平坦区域,则基于待编码像素块,对参考视频帧进行分像素点的运动估计,其中,平坦区域内的像素点之间的差异程度小于第二预设阈值。
当最优失真值小于第一预设阈值时,可以先不进行分像素点的运动估计,而是进一步的进行判断参考像素块在参考视频帧中是否处于平坦区域。平坦区域在视频帧中像素之间的差异程度很小的区域。差异程度可以通过比较两个像素对应的数值来确定。例如,单一颜色的背景区域,在这样的区域中的各个像素对应的数值,如灰度值等数值之间的差异很小。所以可以通过该区域内像素之间的差异程度来判断出该区域是否为平坦区域。
像素点之间的差异程度用于描述像素点之间的差异。通过第二预设阈值,可以衡量像素点之间的差异程度,当像素点之间的差异程度小于第二预设阈值时,则可以确定出像素点所在区域为平坦区域。具体的,第二预设阈值可以根据需要进行配置和选择,在此不进行限定。
在实际应用中,判断参考像素块是否处于平坦区域可以采用多种方式,例如,可以判断参考像素块邻域的像素点之间的差异程度是否小于第二预设阈值,当小于时,则表示参考像素块处于平坦区域;或者在参考像素块***确定出一个大于参考像素块面积的区域,然后计算该区域内的像素点之间的差异程度是否小于第二预设阈值,当小于时,也可以确定参考像素块处于平坦区域。
在实际应用中,只要能够准确的确定出参考像素块是否处于平坦区域的方法,都可以应用于本发明实施例中,也都属于本发明实施例的保护范围。
分像素点的运动估计,是在整像素点的运动估计的基础上进行,整像素点的运动估计确定出参考像素块处于整像素点的位置。然而个别时候在参考视频帧中,最优的参考像素块可能处于整像素点的位置之间的分像素点的位置。所以,才需要在整像素点的运动估计的基础上,进一步差值出分像素点,然后再执行分像素点的运动估计,进而对参考像素块的位置进一步微调,得到更加准确的参考像素块。
如果参考像素块处于平坦区域,则在整像素点运动估计的基础上执行分像素点的运动估计,也很难得到更精确的参考像素块。由于参考像素块处于平坦区域,即使对其位置通过分像素点的运动估计进行微调,也无法得到更为准确的参考像素块。
所以,当参考像素块处于平坦区域时,与上述的步骤S104相同,可以直接跳过对执行分像素点的运动估计的步骤。并结束在参考视频帧中,对待编码像素块的运动估计。
如果参考像素块不处于平坦区域,则可以与上述的步骤S103相同,继续对待编码像素块执行分像素点的运动估计。从而得到更加准确的参考像素块,进的得到更加准确的运动矢量,提高编码的准确性。
在本发明实施例中,通过判断参考像素块所在的区域是否属于平坦区域,从而进一步避免了不必要的分像素点的运动估计过程,更合理的对待编码像素块进行运动估计,提高了编码效率。
结合上述的各个实施例,参考像素块是否处于平坦区域的判断可以通过计算最优失真值与参考失真值的差值来确定,具体的,上述第二预设阈值可以包括失真值差值阈值,确定参考像素块在参考视频帧中是否处于平坦区域的方式可以包括:
第一步,在待编码像素块中的预设像素点的邻域内,选取预设数量的目标像素点。
待编码像素块中的预设像素点可以是待编码像素块中的任意的像素点,优选的,预设像素点可以为待编码像素块顶点处的像素点,例如,可以以待编码像素块的左上角顶点处的像素点作为预设像素点。
预设像素点的邻域内是指与预设像素点相邻近的区域,具体的领域的大小和范围可以根据需要进行配置,例如,可以为与预设像素点四周直接相邻的各个像素点所构成的区域,也可以是预设像素点四周固定的预设面积内的区域等等。
在预设像素点的邻域内,可以选取预设数量的目标像素点,预设数量可以根据需要进行选择,一般可以为4个,即在预设像素点的邻域内选择4个目标像素点。预设数量的目标像素点可以是预设像素点的邻域内的任意4个像素点,例如,可以为预设像素点上下左右4个方向相邻的像素点。
第二步,在参考像素块中与预设像素点对应的像素点的邻域内,选取与各目标像素点分别对应的参考像素点。
由于待编码像素块的形状尺寸与参考像素块相同,所以在参考像素块中可以选取与预设像素点对应的像素点,例如,当预设像素点为待编码像素块的左上角顶点处的像素点时,参考像素块的左上角顶点处的像素点即为预设像素点对应的像素点。
同样的,可以在与预设像素点对应的像素点的邻域内,选取与预设数量的目标像素点分别对应的预设数量的参考像素点。
第三步,分别计算各目标像素点与各自对应的参考像素点的失真值。
当确定出预设数量的目标像素点和参考像素点之后,就可以分别计算各个目标像素点与各自分别对应的参考像素点之间的失真值。
例如,可以通过目标像素点的灰度值等数值,与该目标像素点对应的参考像素点的灰度值等数值求差值,将该差值作为目标像素点与对应的参考像素点之间的失真值。
第四步,确定各失真值中的最大失真值,将最大失真值作为参考失真值,或者,基于各失真值和最优失真值,计算平均失真值,将平均失真值作为参考失真值。
通过计算,得到了预设数量的目标像素点与各自对应的参考像素点之间的失真值之后,可以从得到的各个失真值中确定出最大失真值,并将该最大失真值作为参考失真值,进行后续步骤。
或者,可以将得到的各个失真值和通过整像素点的运动估计得到的最优失真值,计算平均失真值,并将该平均失真值作为参考失真值,进行后续步骤。
最优失真值可以反映出待编码像素块与参考像素块整体上的差异程度。通过计算最优失真值,与预设数量的目标像素点与各自对应的参考像素点之间的失真值求得平均失真值,能够更准确的反映出待编码像素块和参考像素块分别所在的区域的是否存在差异。进而可以更准确的确定出参考像素块是否处于平坦区域。
第五步,若最优失真值与参考失真值的差值小于失真值差值阈值,则确定参考像素块处于平坦区域。
当获得了参考失真值之后,就可以利用最优失真值和参考失真值计算出差值。通过该差值可以反应出待编码像素块或参考视频块与各自所在区域的近似程度。如果该差值小于失真值差值阈值,则表示参考像素块或待编码像素块都处于平坦区域。
第六步,若最优失真值与参考失真值的差值不小于失真值差值阈值,则确定参考像素块不处于平坦区域。
同理,如果最优失真值与参考失真值的差值不小于失真值差值阈值,则可以认为待编码像素块或参考视频块与各自所在区域的存在较大的差异,所以可以认为参考像素块不处于平坦区域。
在本发明实施例的一种实施方式中,失真值差值阈值与第一预设阈值类似,可以为预先设置的数值。在实际应用中,该失真值差值预设阈值可以根据需要进行设置。
或者,在本发明实施例的另一种实现方式中,本发明实施例提供的基于视频编码的运动估计方法中,还可以包括:根据待编码像素块的尺寸和/或当前编码速度,确定失真值差值阈值。
可选的,失真值差值阈值可以与待编码像素块的尺寸成正比关系,和/或,失真值差值阈值可以与当前编码速度成正比关系。
当待编码像素块的尺寸越大和/或当前编码速度越快时,则表示在编码过程的精细化程度越低,从而执行帧间预测的精度也越低。所以失真值差值阈值可以设置的更大,使得最优失真值与参考失真值的差值更容易小于失真值差值阈值,从而跳过分像素的运动估计过程。同理,当待编码像素块的尺寸越小和/或当前编码速度越慢时,则表示在编码过程的精细化程度越高,从而执行帧间预测的精度也越高。失真值差值阈值可以设置的更小,使得最优失真值与参考失真值的差值更容易大于该失真值差值阈值,从而在整像素点的运动估计之后,继续执行分像素点的运动估计,以得到更准确的参考像素块。
具体的,失真值差值阈值与待编码像素块的尺寸和/或当前编码速度的正比关系也可以是列表的形式,或者为函数关系的形式。可以参见上述对第一预设阈值与待编码像素块的尺寸和/或当前编码速度的正比关系的解释,再次不再赘述。
在本发明实施例一种可选的实施方式中,失真值差值阈值可以通过以下公式计算得到:失真值差值阈值=待编码像素块的面积×第二预设系数。
待编码像素块的面积可以通过待编码像素块的宽度和高度计算得到。第二预设系数为与视频帧中图像的纹理复杂度有关的系数。当编码速度越高时,执行运动估计时预测的精度越差,视频帧中图像的纹理不能得到更准确的表现,从而该第二预设系数越大。一般可选的,第二预设系数的取值范围可以为0到10之间。在实际应用中,还可以根据需要进行取值范围的调整,在此不进行限定。
在本发明实施例中,通过最优失真值与参考失真值的差值,与失真值差值阈值进行比较,能够更加准确的确定出参考像素块是否处于平坦区域,从而更加合理的决策出是否跳过执行分像素点的运动估计的步骤,进一步提高了编码效率。
参见图3,图3为本发明实施例提供的基于视频编码的运动估计方法的第三种流程图,包括:
步骤S301,从待编码视频帧中获取待编码像素块。
步骤S302,基于待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值。
步骤S303,判断最优失真值是否小于第一预设阈值。
当最优失真值小于第一预设阈值时,执行步骤S304。如果,最优失真值不小于第一预设阈值,则执行步骤S307。
步骤S304,在待编码像素块中的预设像素点的邻域内,选取预设数量的目标像素点,并在参考像素块中与预设像素点对应的像素点的邻域内,选取与各目标像素点分别对应的参考像素点。
在实际应用中,预设数量可以为4,即确定出4个目标像素点和4个参考像素点。
步骤S305,分别计算各目标像素点与各自对应的参考像素点的失真值。
步骤S306,确定各失真值中的最大失真值,将最大失真值作为参考失真值,或者,基于各失真值和最优失真值,计算出平均失真值,将平均失真值作为参考失真值。
步骤S307,判断最优失真值与参考失真值的差值是否小于失真值差值阈值。
如果最优失真值与参考失真值的差值小于失真值差值阈值,则没有必要执行分像素的运动估计,从而可以执行步骤S308。
如果最优失真值与参考失真值的差值不小于失真值差值阈值,可以执行步骤S309。
步骤S308,结束在参考视频帧中,对待编码像素块的运动估计。
步骤S309,基于待编码像素块,对参考视频帧进行分像素点的运动估计。
参见图4,图4为本发明实施例提供的基于视频编码的运动估计装置的结构图,包括:
获取模块410,用于从待编码视频帧中获取待编码像素块;
运动估计模块420,用于基于所述待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值;其中,所述最优失真值为所述待编码像素块与参考像素块的匹配误差;所述参考像素块为所述参考视频帧中与所述待编码像素块匹配误差最小的像素块;若所述最优失真值小于第一预设阈值,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计。
可选的,所述装置还可以包括:
计算模块,用于根据所述待编码像素块的尺寸和/或当前编码速度,确定所述第一预设阈值。
可选的,所述第一预设阈值可以与所述待编码像素块的尺寸成正比关系,和/或,所述第一预设阈值可以与所述当前编码速度成正比关系。
可选的,所述运动估计模块420,还可以用于:
若所述最优失真值小于所述第一预设阈值,且所述参考像素块在所述参考视频帧中不处于平坦区域,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计;其中,所述平坦区域内的像素点之间的差异程度小于第二预设阈值。
可选的,所述第二预设阈值可以包括,失真值差值阈值;
所述装置还可以包括:
选取模块,用于在所述待编码像素块中的预设像素点的邻域内,选取预设数量的目标像素点;在所述参考像素块中与所述预设像素点对应的像素点的邻域内,选取与各所述目标像素点分别对应的参考像素点;
计算模块,用于分别计算各所述目标像素点与各自对应的参考像素点的失真值;
确定模块,用于确定各所述失真值中的最大失真值,将所述最大失真值作为参考失真值,或者,基于各所述失真值和所述最优失真值,计算平均失真值,将所述平均失真值作为所述参考失真值;若所述最优失真值与所述参考失真值的差值小于所述失真值差值阈值,则确定所述参考像素块处于平坦区域;若所述最优失真值与所述参考失真值的差值不小于所述失真值差值阈值,则确定所述参考像素块不处于所述平坦区域。
可选的,所述计算模块,还可以用于根据所述待编码像素块的尺寸和/或当前编码速度,确定所述失真值差值阈值。
可选的,所述失真值差值阈值可以与所述待编码像素块的尺寸成正比关系,和/或,所述失真值差值阈值可以与所述当前编码速度成正比关系。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现如下步骤:
从待编码视频帧中获取待编码像素块;
基于所述待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值;其中,所述最优失真值为所述待编码像素块与参考像素块的匹配误差;所述参考像素块为所述参考视频帧中与所述待编码像素块匹配误差最小的像素块;
若所述最优失真值小于第一预设阈值,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述基于视频编码的运动估计方法。
本发明实施例还提供了一种包含计算机程序的计算机程序产品,当其在计算机上运行时,使得计算机执行上述基于视频编码的运动估计方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质和计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种基于视频编码的运动估计方法,其特征在于,包括:
从待编码视频帧中获取待编码像素块;
基于所述待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值;其中,所述最优失真值为所述待编码像素块与参考像素块的匹配误差;所述参考像素块为所述参考视频帧中与所述待编码像素块匹配误差最小的像素块;
根据所述待编码像素块的尺寸和/或当前编码速度,确定第一预设阈值;
若所述最优失真值小于第一预设阈值,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计;
所述若所述最优失真值小于第一预设阈值,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计,包括:
若所述最优失真值小于所述第一预设阈值,且所述参考像素块在所述参考视频帧中不处于平坦区域,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计;其中,所述平坦区域内的像素点之间的差异程度小于第二预设阈值;
所述第二预设阈值包括,失真值差值阈值;
通过以下方法确定所述参考像素块在所述参考视频帧中是否处于平坦区域:
在所述待编码像素块中的预设像素点的邻域内,选取预设数量的目标像素点;
在所述参考像素块中与所述预设像素点对应的像素点的邻域内,选取与各所述目标像素点分别对应的参考像素点;
分别计算各所述目标像素点与各自对应的参考像素点的失真值;
确定各所述失真值中的最大失真值,将所述最大失真值作为参考失真值,或者,基于各所述失真值和所述最优失真值,计算平均失真值,将所述平均失真值作为所述参考失真值;
若所述最优失真值与所述参考失真值的差值小于所述失真值差值阈值,则确定所述参考像素块处于平坦区域;
若所述最优失真值与所述参考失真值的差值不小于所述失真值差值阈值,则确定所述参考像素块不处于所述平坦区域。
2.根据权利要求1所述的方法,其特征在于,所述第一预设阈值与所述待编码像素块的尺寸成正比关系,和/或,所述第一预设阈值与所述当前编码速度成正比关系。
3.根据权利要求1所述的方法,其特征在于,还包括:根据所述待编码像素块的尺寸和/或当前编码速度,确定所述失真值差值阈值。
4.根据权利要求3所述的方法,其特征在于,所述失真值差值阈值与所述待编码像素块的尺寸成正比关系,和/或,所述失真值差值阈值与所述当前编码速度成正比关系。
5.一种基于视频编码的运动估计装置,其特征在于,包括:
获取模块,用于从待编码视频帧中获取待编码像素块;
计算模块,用于根据所述待编码像素块的尺寸和/或当前编码速度,确定第一预设阈值;
运动估计模块,用于基于所述待编码像素块对参考视频帧进行整像素点的运动估计,得到最优失真值;其中,所述最优失真值为所述待编码像素块与参考像素块的匹配误差;所述参考像素块为所述参考视频帧中与所述待编码像素块匹配误差最小的像素块;若所述最优失真值小于第一预设阈值,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计;
所述运动估计模块,具体用于:
若所述最优失真值小于所述第一预设阈值,且所述参考像素块在所述参考视频帧中不处于平坦区域,则基于所述待编码像素块,对所述参考视频帧进行分像素点的运动估计;其中,所述平坦区域内的像素点之间的差异程度小于第二预设阈值;
所述第二预设阈值包括,失真值差值阈值;
所述装置还包括:
选取模块,用于在所述待编码像素块中的预设像素点的邻域内,选取预设数量的目标像素点;在所述参考像素块中与所述预设像素点对应的像素点的邻域内,选取与各所述目标像素点分别对应的参考像素点;
计算模块,用于分别计算各所述目标像素点与各自对应的参考像素点的失真值;
确定模块,用于确定各所述失真值中的最大失真值,将所述最大失真值作为参考失真值,或者,基于各所述失真值和所述最优失真值,计算平均失真值,将所述平均失真值作为所述参考失真值;若所述最优失真值与所述参考失真值的差值小于所述失真值差值阈值,则确定所述参考像素块处于平坦区域;若所述最优失真值与所述参考失真值的差值不小于所述失真值差值阈值,则确定所述参考像素块不处于所述平坦区域。
6.根据权利要求5所述的装置,其特征在于,所述第一预设阈值与所述待编码像素块的尺寸成正比关系,和/或,所述第一预设阈值与所述当前编码速度成正比关系。
7.根据权利要求6所述的装置,其特征在于,所述计算模块,还用于根据所述待编码像素块的尺寸和/或当前编码速度,确定所述失真值差值阈值。
8.根据权利要求7所述的装置,其特征在于,所述失真值差值阈值与所述待编码像素块的尺寸成正比关系,和/或,所述失真值差值阈值与所述当前编码速度成正比关系。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-4任一所述的方法步骤。
CN201811221616.6A 2018-10-19 2018-10-19 一种基于视频编码的运动估计方法、装置及电子设备 Active CN109089121B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811221616.6A CN109089121B (zh) 2018-10-19 2018-10-19 一种基于视频编码的运动估计方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811221616.6A CN109089121B (zh) 2018-10-19 2018-10-19 一种基于视频编码的运动估计方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN109089121A CN109089121A (zh) 2018-12-25
CN109089121B true CN109089121B (zh) 2021-06-22

Family

ID=64843927

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811221616.6A Active CN109089121B (zh) 2018-10-19 2018-10-19 一种基于视频编码的运动估计方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN109089121B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109685824B (zh) * 2019-01-11 2021-01-01 湖南国科微电子股份有限公司 基于奇异值分解特征的运动判断方法、装置及电子设备
CN111510727B (zh) * 2020-04-14 2022-07-15 腾讯科技(深圳)有限公司 一种运动估计方法及装置
CN113489985A (zh) * 2021-05-26 2021-10-08 杭州博雅鸿图视频技术有限公司 一种分像素运动估计方法及估计***
CN114501029B (zh) * 2022-01-12 2023-06-06 深圳市洲明科技股份有限公司 图像编码、图像解码方法、装置、计算机设备和存储介质
CN117880520B (zh) * 2024-03-11 2024-05-10 山东交通学院 一种用于机车乘务员值乘标准化监控的数据管理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101431675A (zh) * 2008-12-09 2009-05-13 青岛海信电子产业控股股份有限公司 一种像素运动估计方法和装置
CN101795409A (zh) * 2010-03-03 2010-08-04 北京航空航天大学 内容自适应分数像素运动估计方法
CN102100059A (zh) * 2008-07-16 2011-06-15 索尼公司 用于运动估计迭代搜索的简单下一搜索位置选择
CN102905150A (zh) * 2012-10-22 2013-01-30 北京航空航天大学 一种新的多视点视频分形编码压缩与解压缩方法
CN106683108A (zh) * 2016-12-07 2017-05-17 乐视控股(北京)有限公司 确定视频帧中平坦区域的方法、装置及电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720151B2 (en) * 2003-02-11 2010-05-18 Texas Instruments Incorporated Motion estimation using early decision for goodness of estimation with quick convergence feedback
US9332264B2 (en) * 2007-12-30 2016-05-03 Intel Corporation Configurable performance motion estimation for video encoding
EP2362655B1 (en) * 2010-02-10 2013-07-17 Telefonaktiebolaget L M Ericsson (Publ) Motion-vector estimation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102100059A (zh) * 2008-07-16 2011-06-15 索尼公司 用于运动估计迭代搜索的简单下一搜索位置选择
CN101431675A (zh) * 2008-12-09 2009-05-13 青岛海信电子产业控股股份有限公司 一种像素运动估计方法和装置
CN101795409A (zh) * 2010-03-03 2010-08-04 北京航空航天大学 内容自适应分数像素运动估计方法
CN102905150A (zh) * 2012-10-22 2013-01-30 北京航空航天大学 一种新的多视点视频分形编码压缩与解压缩方法
CN106683108A (zh) * 2016-12-07 2017-05-17 乐视控股(北京)有限公司 确定视频帧中平坦区域的方法、装置及电子设备

Also Published As

Publication number Publication date
CN109089121A (zh) 2018-12-25

Similar Documents

Publication Publication Date Title
CN109089121B (zh) 一种基于视频编码的运动估计方法、装置及电子设备
US20200374514A1 (en) Video encoding and decoding method and device, computer device, and storage medium
US11128888B2 (en) Method and apparatus for video decoding
US11665350B2 (en) Method and apparatus for video encoding and decoding
US11206405B2 (en) Video encoding method and apparatus, video decoding method and apparatus, computer device, and storage medium
US11412229B2 (en) Method and apparatus for video encoding and decoding
WO2017005146A1 (zh) 视频编码和解码方法、视频编码和解码装置
US9414086B2 (en) Partial frame utilization in video codecs
CN108924553B (zh) 视频编码、解码方法、装置、计算机设备和存储介质
US20100166073A1 (en) Multiple-Candidate Motion Estimation With Advanced Spatial Filtering of Differential Motion Vectors
US20200389665A1 (en) Video encoding and decoding method, and storage medium thereof
CN110166771B (zh) 视频编码方法、装置、计算机设备和存储介质
CN109688407B (zh) 编码单元的参考块选择方法、装置、电子设备及存储介质
US20120076207A1 (en) Multiple-candidate motion estimation with advanced spatial filtering of differential motion vectors
US20130195178A1 (en) Object detection informed encoding
US11330254B2 (en) Video encoding method and apparatus, video decoding method and apparatus, computer device, and storage medium
KR101409826B1 (ko) 적응적 탐색 범위를 이용한 움직임 예측 방법
US20200021850A1 (en) Video data decoding method, decoding apparatus, encoding method, and encoding apparatus
US20170180745A1 (en) Prediction method and Electronic Apparatus of encoding mode of variable resolution
US20200128252A1 (en) Variable Frame Rate Encoding Method and Device, Computer Device and Computer Readable Storage Medium
CN103327319A (zh) 利用缩放后的运动搜索识别运动矢量候选的方法与设备
US20130235935A1 (en) Preprocessing method before image compression, adaptive motion estimation for improvement of image compression rate, and method of providing image data for each image type
US20120195364A1 (en) Dynamic mode search order control for a video encoder
US20140354771A1 (en) Efficient motion estimation for 3d stereo video encoding
CN113382249A (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
GR01 Patent grant
GR01 Patent grant