System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及视频编解码领域,具体而言,涉及一种运动搜索方法、装置、电子设备、计算机程序产品及存储介质。
技术介绍
1、目前,在视频编码过程中,通常会通过运动搜索来提升视频的编码性能。运动搜索是视频编码器中较为关键的一个模块,该模块负责搜索出编码单元(coding unit,cu)在图像块匹配过程中的运动矢量(motion vector,mv)。运动矢量的准确性直接影响了编码单元的残差大小,进而影响了残差编码的码率消耗。因此,该模块对于编码器的整体编码性能至关重要。
2、然而,在进行运动搜索过程中,通常所采用的绝对误差和算法(sum of absolutedifference,sad)存在一些缺陷,会限制编码器的编码效率。
技术实现思路
1、本公开实施例提供一种运动搜索方法、装置、电子设备及存储介质,该方法通过对不同待编码图像块采用差异化的整像素搜索算法进行整像素搜索,优化了运动搜索过程中由于亮度差异导致的失真计算存在误差的问题,进而提高了视频编码性能。
2、根据本公开实施例的第一方面,提供一种运动搜索方法,包括:对待编码帧中的至少一个第一待编码图像块,在对应的参考帧中,通过第一整像素搜索算法进行整像素搜索,确定整像素匹配点;所述待编码帧中包括有至少一个待编码图像块;所述第一待编码图像块属于所述至少一个待编码图像块;所述第一整像素搜索算法采用mr-sad算法;以所述整像素匹配点为起始点,在所述参考帧的预设分像素搜索范围中,通过分像素搜索算法进行分像素搜索,确定分
3、在本公开的一些示例性实施例中,所述方法还包括:对所述待编码帧中的至少一个第二待编码图像块,在对应的所述参考帧中,通过第二整像素搜索算法进行整像素搜索,确定所述整像素匹配点;所述第二待编码图像块属于所述至少一个待编码图像块;所述第二整像素搜索算法采用sad算法。
4、在本公开的一些示例性实施例中,所述方法还包括:根据所述待编码图像块的亮度、尺寸或帧类型中的至少一个信息,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块。
5、在本公开的一些示例性实施例中,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:计算所述待编码图像块与所述参考帧中对应图像块之间的亮度差值;响应于所述亮度差值大于等于亮度阈值,所述待编码图像块为所述第一待编码图像块;响应于所述亮度差值小于亮度阈值,所述待编码图像块为所述第二待编码图像块。
6、在本公开的一些示例性实施例中,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:响应于所述待编码图像块大于等于尺寸阈值,所述待编码图像块为所述第一待编码图像块;响应于所述待编码图像块小于尺寸阈值,所述待编码图像块为所述第二待编码图像块。
7、在本公开的一些示例性实施例中,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:响应于所述待编码帧为关键帧(i帧)或前向预测帧(p帧),所述待编码帧的待编码图像块为所述第一待编码图像块;响应于所述待编码帧为双向预测帧(b帧),所述待编码帧的待编码图像块为所述第二待编码图像块。
8、在本公开的一些示例性实施例中,所述方法还包括:根据所述第一待编码图像块和第二待编码图像块生成掩膜图;所述掩膜图,用于表示所述待编码图像块为所述第一待编码图像块或第二待编码图像块。
9、在本公开的一些示例性实施例中,所述分像素搜索算法采用satd算法。
10、在本公开的一些示例性实施例中,所述方法还包括:响应于解码端采用dmvr算法,将所述掩膜图发送给所述解码端,以供所述解码端根据所述掩膜图进行所述运动矢量的修正。
11、在本公开的一些示例性实施例中,所述方法还包括:响应于所述待编码图像块为所述第一待编码图像块,将所述第一待编码图像块设置为dmvr算法可开启状态;响应于所述待编码图像块为所述第二待编码图像块,检测所述第二待编码图像块对应的bcw是否设置为默认值;响应于所述第二待编码图像块对应的bcw设置为默认值,将所述第二待编码图像块设置为dmvr算法可开启状态;响应于所述第二待编码图像块对应的bcw设置为非默认值,将所述第二待编码图像块设置为dmvr算法不可开启状态。
12、在本公开的一些示例性实施例中,所述方法还包括:响应于所述待编码图像块为所述第一待编码图像块,基于mr-sad算法计算所述第一待编码图像块的失真代价;响应于所述待编码图像块为所述第二待编码图像块,基于sad算法计算所述第二待编码图像块的失真代价。
13、根据本公开实施例的第二方面,提供一种运动搜索装置,包括:整像素搜索模块,被配置为对待编码帧中的至少一个第一待编码图像块,在对应的参考帧中,通过第一整像素搜索算法进行整像素搜索,确定整像素匹配点;所述待编码帧中包括有至少一个待编码图像块;所述第一待编码图像块属于所述至少一个待编码图像块;所述第一整像素搜索算法采用mr-sad算法;分像素搜索模块,被配置为以所述整像素匹配点为起始点,在所述参考帧的预设分像素搜索范围中,通过分像素搜索算法进行分像素搜索,确定分像素匹配点;运动矢量确定模块,被配置为根据所述分像素匹配点,确定所述待编码图像块的运动矢量。
14、根据本公开实施例的第三方面,提供一种电子设备,其特征在于,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述可执行指令,以实现任一项所述的运动搜索方法。
15、根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行任一项所述的运动搜索方法。
16、根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现任一项所述的运动搜索方法。
17、本公开实施例提供的运动搜索方法,通过在运动搜索的整像素搜索过程中,对于待编码帧中的第一待编码图像块采用mr-sad算法来进行整像素搜索,从而可以获得更加准确的整像素匹配点,优化了运动搜索过程中由于亮度差异导致的失真计算存在误差的问题,进而降低了相关残差数据编码的码率消耗,提高了整体编码性能。
18、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
本文档来自技高网...【技术保护点】
1.一种运动搜索方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,还包括:
3.根据权利要求2所述的方法,其特征在于,还包括:根据所述待编码图像块的亮度、尺寸或帧类型中的至少一个信息,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块。
4.根据权利要求3所述的方法,其特征在于,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:
5.根据权利要求3所述的方法,其特征在于,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:
6.根据权利要求3所述的方法,其特征在于,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:
7.根据权利要求2所述的方法,其特征在于,还包括:根据所述第一待编码图像块和第二待编码图像块生成掩膜图;所述掩膜图,用于表示所述待编码图像块为所述第一待编码图像块或第二待编码图像块。
8.根据权利要求1所述的方法
9.根据权利要求7所述的方法,其特征在于,还包括:
10.根据权利要求2所述的方法,其特征在于,还包括:
11.根据权利要求2所述的方法,其特征在于,还包括:
12.一种运动搜索装置,其特征在于,包括:
13.一种电子设备,其特征在于,包括:
14.一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至11中任一项所述的运动搜索方法。
15.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1至11中任一项所述的运动搜索方法。
...【技术特征摘要】
1.一种运动搜索方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,还包括:
3.根据权利要求2所述的方法,其特征在于,还包括:根据所述待编码图像块的亮度、尺寸或帧类型中的至少一个信息,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块。
4.根据权利要求3所述的方法,其特征在于,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:
5.根据权利要求3所述的方法,其特征在于,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:
6.根据权利要求3所述的方法,其特征在于,所述根据所述待编码图像块的亮度,确定所述待编码图像块为所述第一待编码图像块或第二待编码图像块,包括:
7.根据权利要求2所述的方法,其特征在于,还包括:根据所述第一待编码图像块和第二待编码图像块生成掩膜图;所述掩膜图,...
【专利技术属性】
技术研发人员:简云瑞,周超,
申请(专利权)人:北京达佳互联信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。