CN116962697A - 视频编码的运动搜索处理方法、系统、设备及存储介质 - Google Patents

视频编码的运动搜索处理方法、系统、设备及存储介质 Download PDF

Info

Publication number
CN116962697A
CN116962697A CN202310777782.9A CN202310777782A CN116962697A CN 116962697 A CN116962697 A CN 116962697A CN 202310777782 A CN202310777782 A CN 202310777782A CN 116962697 A CN116962697 A CN 116962697A
Authority
CN
China
Prior art keywords
pixel
reference block
current reference
sub
motion
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
Application number
CN202310777782.9A
Other languages
English (en)
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.)
You Peninsula Beijing Information Technology Co ltd
Original Assignee
You Peninsula Beijing Information 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 You Peninsula Beijing Information Technology Co ltd filed Critical You Peninsula Beijing Information Technology Co ltd
Priority to CN202310777782.9A priority Critical patent/CN116962697A/zh
Publication of CN116962697A publication Critical patent/CN116962697A/zh
Pending legal-status Critical Current

Links

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/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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/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/523Motion estimation or motion compensation with sub-pixel accuracy

Landscapes

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

Abstract

本申请实施例公开了一种视频编码的运动搜索处理方法、系统、设备及存储介质。本申请实施例提供的技术方案,通过在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索;在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将梯度信息比对设定梯度阈值,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。以此通过在像素搜索过程中,筛选梯度较小的部分,跳过其分像素搜索流程,减少运动搜索的耗时,进而提升视频编码效率。

Description

视频编码的运动搜索处理方法、系统、设备及存储介质
技术领域
本申请实施例涉及视频编码技术领域,尤其涉及一种视频编码的运动搜索处理方法、系统、设备及存储介质。
背景技术
目前,在视频编码过程中,都会通过运动搜索以提升编码信息。运动搜索的基本思想是将图像序列的每一帧分成许多互不重叠的宏块,并认为宏块内所有像素的位移量都相同。然后对每个宏块到参考帧某一给定特定搜索范围内根据一定的匹配准则找出与当前块最相似的块,即匹配块,匹配块与当前块的相对位移即为运动矢量。视频压缩的时候,只需保存运动矢量和残差数据就可以完全恢复出当前块。
但是,相关的运动搜索方案为了提升视频编码性能,需要进行复杂的计算流程,整个过程耗时较长。对于部分视频编码实时性要求较高的场景,复杂的运动搜索流程难以达到实时性要求,用户体验相对较差。
发明内容
本申请实施例提供一种视频编码的运动搜索处理方法、系统、设备及存储介质,能够在保障视频编码质量的同时简化运动搜索流程,提升视频编码效率,解决相关运动搜索方案耗时较长的技术问题。
在第一方面,本申请实施例提供了一种视频编码的运动搜索处理方法,包括:
在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索;
在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;
获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据梯度信息、最小失真代价和预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。
在第二方面,本申请实施例提供了一种视频编码的运动搜索处理系统,包括:
运动搜索模块,配置为在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索;
第一流程跳过模块,配置为在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;
第二流程跳过模块,用于获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据梯度信息、最小失真代价和预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。
在第三方面,本申请实施例提供了一种视频编码的运动搜索处理设备,包括:
存储器以及一个或多个处理器;
所述存储器,配置为存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的视频编码的运动搜索处理方法。
在第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在由计算机处理器执行时配置为执行如第一方面所述的视频编码的运动搜索处理方法。
在第五方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品中包含有指令,当指令在计算机或处理器上运行时,使得计算机或处理器执行如第一方面所述的视频编码的运动搜索处理方法。
本申请实施例通过在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索;在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据梯度信息、最小失真代价和预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。采用上述技术手段,可以在像素搜索过程中,通过筛选梯度较小的部分,跳过其分像素搜索流程,以实现运动搜索流程的简化,减少运动搜索的耗时,进而提升视频编码效率。
附图说明
图1是本申请实施例提供的一种视频编码的运动搜索处理方法的流程图;
图2是本申请实施例提供的运动搜索流程图;
图3是本申请实施例中分像素搜索的跳过流程图;
图4是本申请实施例提供的一种视频编码的运动搜索处理系统的结构示意图;
图5是本申请实施例提供的一种视频编码的运动搜索处理设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
本申请提供的视频编码的运动搜索处理方法,旨在进行运动搜索过程中,通过在像素搜索时筛选梯度较小的部分参考块,跳过其分像素搜索流程,以实现运动搜索流程的简化,提升运动搜索效率。
在相关的视频编码场景中,为了视频编码的性能收益,其编码过程的计算复杂度相对较大。对于其中的运动搜索流程而言,整个过程耗时较长。但在具体应用中,存在一些编码器、编码场景对实时性有着近乎苛刻的要求,而由于业务的不同,待编码序列的特征也各不相同,比如运动剧烈、不规律的自然视频和以直播为主的视频,其使用不同算法的效果也各不相同。对于这部分视频编码实时性要求较高的场景,复杂的运动搜索流程难以达到实时性要求。基于此,提供本申请实施例的视频编码的运动搜索处理方法,以对运动搜索流程进行优化,提升视频编码效率,解决相关运动搜索方案耗时较长的技术问题。
实施例:
图1给出了本申请实施例提供的一种视频编码的运动搜索处理方法的流程图,本实施例中提供的视频编码的运动搜索处理方法可以由视频编码的运动搜索处理设备执行,该视频编码的运动搜索处理设备可以通过软件和/或硬件的方式实现,该视频编码的运动搜索处理设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。一般而言,该视频编码的运动搜索处理设备可以是编码器设备,电脑,手机,平板等计算设备。
下述以该视频编码的运动搜索处理设备为执行视频编码的运动搜索处理方法的主体为例,进行描述。参照图1,该视频编码的运动搜索处理方法具体包括:
S110、在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索;
S120、在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;
S130、获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据梯度信息、最小失真代价和预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。
本申请在进行视频编码的运动搜索处理时,通过对运动搜索流程的部分流程进行筛选,选择部分对运动搜索结果、视频编码质量影响较小的运动搜索流程,对这部分流程进行跳过,以此来实现运动搜索流程的优化,缩短运动搜索耗时,提升视频编码效率。
以HEVC编码器为例,参照图2,在进行当前编码块的运动搜索时,首先通过获取当前参考块的周围的编码块的运动向量(mv,motion vector),遍历各个运动向量预测最佳运动向量(mvp,motion vector predict)。进而基于找到的最佳运动向量依序进行整像素搜索,找到整像素搜索的最佳运动向量。根据整像素搜索的最佳运动向量进行二分之一像素搜索,找到二分之一像素搜索的最佳运动向量。根据二分之一像素搜索的最佳运动向量进行四分之一像素搜索,计算出四分之一像素搜索的最佳运动向量,以此得到对应的最佳参考块,即匹配块,完成运动搜索流程。
基于上述运动搜索流程,本申请通过筛选其中部分对运动搜索结果影响较小的部分流程进行跳过,以实现本申请实施例的运动搜索流程优化。由于这部分流程对运动搜索结果影响较小,对最终的编码质量影响较小,因此可以对这部分流程进行跳过。并且,由于在实际编码过程中,预编码是不可缺少的一环,预取未编码的帧对其进行下采样并进行简单的分析,可以得到大量编码信息,以便给后面的码控、实际编码工程提供一些指导。而在预编码过程中同样也需要进行运动搜索操作。在HEVC中预编码的运动搜索与实际编码的运动搜索一致,因此预编码的运动搜索流程也可以适应性筛选进行跳过。
其中,对应预编码步骤的运动搜索,在预编码步骤中会获取当前参考块周围编码块中的运动向量mv以计算最佳运动向量mvp。基于最佳运动向量mvp得到最佳运动向量mvp的率失真代价mvpcost。因为预编码步骤不是正式编码,在正式编码过程中所占比重较大,对于率失真代价小于一定阈值的编码块,可以直接跳过其整个运动搜索过程,以此在质量损失极小的情况下取得可观的编码加速效果。
此外,若预编码过程中未直接跳过其整个运动搜索过程,也可以进一步判断是否可以跳过运动搜索中的整像素搜索部分。由于预编码步骤已经对图像进行下采样,图像信息分布更加集中,对于一些特殊的块可以跳过整像素搜索。例如,直播视频序列往往主要是主播在动,主播所处的背景相对恒定,因此序列中最下面一行编码树单元往往是比较固定的,跳过这些块的整像素搜索不会导致编码结果的损失;同样对于最佳运动向量mvp的率失真代价mvpcost较小的参考块,可以认为最佳运动向量mvp预测的已经比较准确,没有必要再去进行复杂的整像素搜素,因此最佳运动向量mvp小的参考块也可以直接跳过整像素搜索过程。
之后,在视频正式编码中,同样需要做运动搜索。在整像素搜索后,由于已经确定了参考块的大致范围,可以得到偏移后的参考块。此时基于整像素搜索确定的最佳运动向量mvp确定分像素搜索的最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索。在分像素搜索时,先对当前参考块计算对应方向(水平方向和竖直方向)的梯度信息,如果对应方向的梯度信息较小,低于设定梯度阈值,确定当前处于第一设定情况,此时跳过当前参考块对应方向的分像素搜索流程。
此外,本申请还获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,结合该梯度信息,进一步判断是否进行当前参考块所有方向的分像素搜索流程的跳过。通过梯度信息、最小失真代价和预测残差绝对值总和确定当前处于第二设定情况下,认定当前参考块周围的梯度信息均偏小,可以直接跳过整个分像素搜索流程。
以此通过不同情况下的运动搜索流程跳过,实现运动搜索的简化和加速,提升编码效果。需要说明的是,实际应用中,还可以适应性对预编码的分像素搜索流程,正式编码的整个运动搜索流程或者整像素搜索流程进行跳过判断。本申请实施例通过实际测验,确定上述预编码的运动搜索流程或者整像素搜索流程,以及正式编码的分像素搜索流程跳过可以在保障编码质量的同时提升运动搜索效率,因此选择适应性进行运动搜索跳过判断。根据实际流程简化需求,可以适应性选择对应的运动搜索过程进行简化,本申请实施例对具体的简化细节不做固定限制在,在此不一一赘述。
具体地,在视频预编码的运动搜索过程中,根据预测到的最佳运动向量的率失真代价比对第一设定代价阈值,在率失真代价小于或等于设定代价阈值的情况下,跳过视频预编码的运动搜索。
根据编码器逻辑,预编码在函数estimateCuCost中会估算当前块与参考块之间的率失真代价(rdcost,Rate Distortion cost)。在寻找最佳参考块时,首先获取周围块的运动向量mv,然后计算出参考帧中运动向量对应的参考块,运动补偿后计算参考块和当前块的预测残差绝对值总和。遍历所有运动向量,预测残差绝对值总和最小的运动向量保存为最佳运动向量mvp,对应的率失真代价为mvpcost。在原本的逻辑中,会直接进行运动搜索流程,并比较搜索到的mvcost与前面得到的mvpcost,选取最优mv。本申请在预编码的运动搜索过程添加了一个前置条件,只有当最佳运动向量的率失真代价大于设定代价阈值(即mvpcost>K1,K1取256)时才会进入到运动搜索当中,否则直接使用当前mvp作为最佳运动矢量,完成预编码的整个运动搜索过程。
在根据预测到的最佳运动向量的率失真代价比对第一设定代价阈值之后,还包括:逐个参考块进行整像素搜索,确定处于设定运动平缓状态的参考块,跳过对应参考块的整像素搜索流程。
如果预编码时中没有跳过运动搜索,则会直接进入到函数MotionEstimate,此时仍然可以对运动搜索其中的整像素搜索部分进行简化。对于预编码中最后一行,往往认为更可能是运动平缓或者不运动的背景块,认为这部分参考块设定运动平缓状态,不需要进行较多的运动搜索,对于这些块令标志位skipPixelSearch=1,直接对标志位skipPixelSearch=1的参考块进行整像素跳过。需要说明的是,实际应用中,根据实际视频图像中运动平缓或者不运动的背景块的分布位置,可以适应性设置对应位置的参考块处于设定运动平缓状态,以进行标志位标志。
此外,在根据预测到的最佳运动向量的率失真代价比对第一设定代价阈值之后,还包括:逐个参考块进行整像素搜索,在当前参考块的最佳运动向量的率失真代价小于当前参考块的帧内最优率失真代价,且率失真代价小于第二设定代价阈值,跳过当前参考块的整像素搜索流程。
可以理解的是,当预测到的最佳运动向量的率失真代价mvpcost小于当前参考块的帧内最优率失真代价intracost,且最佳运动向量的率失真代价mvpcost小于第二设定代价阈值(mvpcost<K2,K2=min(1024,intracost))时,认为当前块使用最佳运动向量mvp预测的效果较好,可以使用相对更加简单的运动搜索算法,同样令当前参考块的标志位skipPixelSearch=1。在后面的运动搜索中,如果参考块的skipPixelSearch=1,直接跳过其整像素搜索流程进入分像素搜索,以此可以使得编码质量没有损失且编码速度明显提升。
进一步地,完成上述预编码过程的运动搜索简化之后,在正式编码过程中,本申请进一步对正式编码运动搜索的分像素搜索进行处理。上述运动搜索优化都是在预编码过程中的优化,而由于正常编码中的运动搜索更为复杂,因此优化空间更大。并且由于视频分辨率较高情况下,直接跳过运动搜索或者跳过整像素搜索会导致视频编码质量损失都较大,因此本申请在正式编码过程中,会选择尝试跳过其运动搜索的二分之一像素搜索和四分之一像素搜索,以此来实现正式编码过程的运动搜索流程优化。
正式编码的运动搜索与预编码中的运动搜索一致,都是先尝试找到最佳运动矢量mvp,然后从最佳运动矢量对应位置出发按照不同的搜索算法进行搜索。在移动直播中,一般使用最简单的钻石搜索法,通过整像素搜索,找到整像素搜索的最佳运动向量。根据整像素搜索的最佳运动向量,再进行二分之一分像素搜索和四分之一分像素搜索。
本申请的分像素搜索包括二分之一像素搜索和四分之一像素搜索,四分之一像素搜索在二分之一像素搜索之后执行,并实时更新用于分像素搜索流程跳过判断的判断条件。通过在二分之一搜索之后对四分之一像素搜索的判断条件进行更新,以实现更精准的运动搜索流程判断。判断条件的更新具体包括该设定梯度阈值,以及梯度信息、最小失真代价和预测残差绝对值总和处于第二设定情况的相关比对信息。
具体地,参照图3,设定梯度阈值基于双向预测信息、当前参考块的高度和宽度设置,对应方向包括竖直方向和水平方向;
在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程,包括;
S1201、在竖直方向的梯度信息小于设定梯度阈值的情况下,跳过当前参考块竖直方向的分像素搜索流程;
S1202、在水平方向的梯度信息小于设定梯度阈值的情况下,跳过当前参考块水平方向的分像素搜索流程。
由于整像素搜索后找到了最佳起始点对应的参考块,已经距离最优参考块比较接近了,因此为了大致了解参考块信息,可以直接从起始点出发计算当前参考块的梯度,主要计算水平方向梯度和竖直方向梯度。设立梯度阈值M,在编码器中:
M=(2+bBipred)*blockheight*blockwidth>>1
其中bBipred代表是否开启双向预测,blockheight代表当前参考块的高度,blockwidth代表当前参考块的宽度。令vgrad代表当前参考块竖直方向的梯度,如果vgrad<M,则跳过当前参考块竖直方向的二分之一像素搜索流程。水平方向同理,通过计算其水平方向的梯度信息,与上述梯度阈值M进行比较,在水平方向的梯度信息小于设定梯度阈值的情况下,跳过当前参考块水平方向的分像素搜索流程。
在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程,包括:
根据梯度信息、最小失真代价和预测残差绝对值总和确定当前参考块的像素处于设定平缓状态,跳过当前参考块所有方向的分像素搜索流程。
除了上述分像素搜索流程跳过判断步骤之外,本申请还同步进行上述第二设定情况下的分像素搜索流程跳过判断。令当前参考块的最小的失真代价为bcost,令最佳模式的预测残差绝对值总和为bestSatd,那么当满足如下公式:
hgrad+vgrad<7*bcost/8
或,
ibcost-((vgrad+hgrad)>>2)>bestSatd
则认为当前块已经较为平缓,处于第二设定情况,此时已经不是导致bcost较大的原因,因此跳过当前参考块所有方向的分像素搜索流程。
由此完成当前参考块的半像素搜索,之后,在四分之一搜索过程中,参照上述第一设定情况的判断,计算参考块梯度信息,如果vgrad<2*M,则跳过当前参考块对应方向的四分之一像素搜索。二分之一搜索流程和四分之一搜索流程只在搜索流程跳过判断条件进行更新,其他流程不做变化,此处不再赘述。对于第二设定情况下的四分之一像素搜索流程判断,同样由于bcost经过半像素搜索后已经更新,此时应该更新判断跳出四分之一像素搜索的终止条件,当满足如下公式:
hgrad+vgrad<bcost
(bcost-((vgrad+hgrad)>>2)>(3*bestSatd>>2))
则可以直接跳出四分之一像素搜索。需要注意的是,由于高分辨率相同大小的块内容更加稀疏,运动搜索冗余相对较大,所以这种跳出分像素搜索的效果较好,反之低分辨率的序列视频内容过于集中,不适合做相关的优化。因此跳过分像素搜索的优化在相应分辨率情况下效果更好。实际应用中,可以通过识别待编码视频的分辨率,选择对应分辨率的待编码视频执行视频编码的运动搜索处理流程,实现运动搜索的优化,提升视频编码效率。
需要说明的是,实际应用中,在正式编码过程中,也可以通过上述运动估计跳过逻辑和整像素跳过逻辑进行运动搜索过程优化。同样地,预编码过程中,也可以使用上述分像素跳过逻辑进行运动搜索过程优化。本申请实施例根据实际测验,选择在预编码过程跳过使用运动估计跳过逻辑和整像素跳过逻辑,在正式编码过程使用分像素跳过逻辑,可以在保障编码质量的同时,简化运动搜索过程,提升视频编码效率。根据实际的编码质量损失情况和运动搜索过程的优化收益衡量,可以适应性选择相应的跳过逻辑优化运动搜索过程。
上述,通过在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索;在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据梯度信息、最小失真代价和预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。采用上述技术手段,可以在像素搜索过程中,通过筛选梯度较小的部分,跳过其分像素搜索流程,以实现运动搜索流程的简化,减少运动搜索的耗时,进而提升视频编码效率。
在上述实施例的基础上,图4为本申请提供的一种视频编码的运动搜索处理系统的结构示意图。参考图4,本实施例提供的视频编码的运动搜索处理系统具体包括:运动搜索模块21、第一流程跳过模块22和第二流程跳过模块23。
其中,运动搜索模块21配置为在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索;
第一流程跳过模块22配置为在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;
第二流程跳过模块23用于获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据梯度信息、最小失真代价和预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。
具体地,在视频预编码的运动搜索过程中,根据预测到的最佳运动向量的率失真代价比对第一设定代价阈值,在率失真代价小于或等于设定代价阈值的情况下,跳过视频预编码的运动搜索。
在根据预测到的最佳运动向量的率失真代价比对第一设定代价阈值之后,还包括:
逐个参考块进行整像素搜索,确定处于设定运动平缓状态的参考块,跳过对应参考块的整像素搜索流程。
逐个参考块进行整像素搜索,在当前参考块的最佳运动向量的率失真代价小于当前参考块的帧内最优率失真代价,且率失真代价小于第二设定代价阈值,跳过当前参考块的整像素搜索流程。
具体地,分像素搜索包括二分之一像素搜索和四分之一像素搜索,四分之一像素搜索在二分之一像素搜索之后执行,并实时更新用于分像素搜索流程跳过判断的判断条件。
具体地,设定梯度阈值基于双向预测信息、当前参考块的高度和宽度设置,对应方向包括竖直方向和水平方向;
在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程,包括;
在竖直方向的梯度信息小于设定梯度阈值的情况下,跳过当前参考块竖直方向的分像素搜索流程;
在水平方向的梯度信息小于设定梯度阈值的情况下,跳过当前参考块水平方向的分像素搜索流程。
在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程,包括:
根据梯度信息、最小失真代价和预测残差绝对值总和确定当前参考块的像素处于设定平缓状态,跳过当前参考块所有方向的分像素搜索流程。
上述,通过在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从最优起始点对应的参考块开始逐个参考块进行分像素搜索;在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据梯度信息、最小失真代价和预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。采用上述技术手段,可以在像素搜索过程中,通过筛选梯度较小的部分,跳过其分像素搜索流程,以实现运动搜索流程的简化,减少运动搜索的耗时,进而提升视频编码效率。
本申请实施例提供的视频编码的运动搜索处理系统可以配置为执行上述实施例提供的视频编码的运动搜索处理方法,具备相应的功能和有益效果。
在上述实际上例的基础上,本申请实施例还提供了一种视频编码的运动搜索处理设备,参照图5,该视频编码的运动搜索处理设备包括:处理器31、存储器32、通信模块33、输入装置34及输出装置35。存储器作为一种计算机可读存储介质,可配置为存储软件程序、计算机可执行程序以及模块,如本申请任意实施例所述的视频编码的运动搜索处理方法对应的程序指令/模块(例如,视频编码的运动搜索处理系统中的运动搜索模块、第一流程跳过模块和第二流程跳过模块)。通信模块配置为进行数据传输。处理器通过运行存储在存储器中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的视频编码的运动搜索处理方法。输入装置可配置为接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置可包括显示屏等显示设备。上述提供的视频编码的运动搜索处理设备可配置为执行上述实施例提供的视频编码的运动搜索处理方法,具备相应的功能和有益效果。
在上述实施例的基础上,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在由计算机处理器执行时配置为执行一种视频编码的运动搜索处理方法,存储介质可以是任何的各种类型的存储器设备或存储设备。当然,本申请实施例所提供的一种计算机可读存储介质,其计算机可执行指令不限于如上所述的视频编码的运动搜索处理方法,还可以执行本申请任意实施例所提供的视频编码的运动搜索处理方法中的相关操作。
在上述实施例的基础上,本申请实施例还提供一种计算机程序产品,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机程序产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备、移动终端或其中的处理器执行本申请各个实施例所述视频编码的运动搜索处理方法的全部或部分步骤。

Claims (11)

1.一种视频编码的运动搜索处理方法,其特征在于,包括:
在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从所述最优起始点对应的参考块开始逐个参考块进行分像素搜索;
在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将所述梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;
获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据所述梯度信息、所述最小失真代价和所述预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。
2.根据权利要求1所述的视频编码的运动搜索处理方法,其特征在于,所述设定梯度阈值基于双向预测信息、当前参考块的高度和宽度设置,所述对应方向包括竖直方向和水平方向;
所述在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程,包括;
在竖直方向的所述梯度信息小于所述设定梯度阈值的情况下,跳过当前参考块竖直方向的分像素搜索流程;
在水平方向的所述梯度信息小于所述设定梯度阈值的情况下,跳过当前参考块水平方向的分像素搜索流程。
3.根据权利要求1所述的视频编码的运动搜索处理方法,其特征在于,所述在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程,包括:
根据所述梯度信息、所述最小失真代价和所述预测残差绝对值总和确定当前参考块的像素处于设定平缓状态,跳过当前参考块所有方向的分像素搜索流程。
4.根据权利要求1任一所述的视频编码的运动搜索处理方法,其特征在于,所述分像素搜索包括二分之一像素搜索和四分之一像素搜索,所述四分之一像素搜索在所述二分之一像素搜索之后执行,并实时更新用于分像素搜索流程跳过判断的判断条件。
5.根据权利要求1所述的视频编码的运动搜索处理方法,其特征在于,在视频编码的运动搜索之前,还包括:
在视频预编码的运动搜索过程中,根据预测到的最佳运动向量的率失真代价比对第一设定代价阈值,在所述率失真代价小于或等于所述设定代价阈值的情况下,跳过视频预编码的运动搜索。
6.根据权利要求5所述的视频编码的运动搜索处理方法,其特征在于,在根据预测到的最佳运动向量的率失真代价比对第一设定代价阈值之后,还包括:
逐个参考块进行整像素搜索,确定处于设定运动平缓状态的参考块,跳过对应参考块的整像素搜索流程。
7.根据权利要求5所述的视频编码的运动搜索处理方法,其特征在于,在根据预测到的最佳运动向量的率失真代价比对第一设定代价阈值之后,还包括:
逐个参考块进行整像素搜索,在当前参考块的最佳运动向量的率失真代价小于当前参考块的帧内最优率失真代价,且所述率失真代价小于第二设定代价阈值,跳过当前参考块的整像素搜索流程。
8.一种视频编码的运动搜索处理系统,其特征在于,包括:
运动搜索模块,配置为在视频编码的运动搜索过程中,基于整像素搜索确定最优起始点,从所述最优起始点对应的参考块开始逐个参考块进行分像素搜索;
第一流程跳过模块,配置为在分像素搜索过程中,计算当前参考块对应方向的梯度信息,将所述梯度信息比对设定梯度阈值,根据比对结果进行当前参考块对应方向的分像素搜索流程跳过判断,在第一设定情况下,跳过当前参考块对应方向的分像素搜索流程;
第二流程跳过模块,用于获取当前参考块实时的最小失真代价和最优模式的预测残差绝对值总和,根据所述梯度信息、所述最小失真代价和所述预测残差绝对值总和进行当前参考块所有方向的分像素搜索流程跳过判断,在第二设定情况下,跳过当前参考块所有方向的分像素搜索流程。
9.一种视频编码的运动搜索处理设备,其特征在于,包括:
存储器以及一个或多个处理器;
所述存储器,配置为存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7任一所述的视频编码的运动搜索处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在由计算机处理器执行时配置为执行如权利要求1-7任一所述的视频编码的运动搜索处理方法。
11.一种计算机程序产品,其特征在于,所述计算机程序产品中包含有指令,当所述指令在计算机或处理器上运行时,使得所述计算机或处理器执行如权利要求1-7任一所述的视频编码的运动搜索处理方法。
CN202310777782.9A 2023-06-28 2023-06-28 视频编码的运动搜索处理方法、系统、设备及存储介质 Pending CN116962697A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310777782.9A CN116962697A (zh) 2023-06-28 2023-06-28 视频编码的运动搜索处理方法、系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310777782.9A CN116962697A (zh) 2023-06-28 2023-06-28 视频编码的运动搜索处理方法、系统、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116962697A true CN116962697A (zh) 2023-10-27

Family

ID=88455732

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310777782.9A Pending CN116962697A (zh) 2023-06-28 2023-06-28 视频编码的运动搜索处理方法、系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116962697A (zh)

Similar Documents

Publication Publication Date Title
CN110809887B (zh) 用于多参考预测的运动矢量修正的方法和装置
KR101393824B1 (ko) 저 복잡성 움직임 벡터 도출을 위한 시스템 및 방법
CN111385569A (zh) 一种编解码方法及其设备
CN106851305B (zh) 动态图像预测解码装置及方法
CN109218733B (zh) 一种确定预测运动矢量预测的方法以及相关设备
US11102501B2 (en) Motion vector field coding and decoding method, coding apparatus, and decoding apparatus
KR102642784B1 (ko) 모션 벡터 리파인먼트를 위한 제한된 메모리 액세스 윈도우
CN110870313A (zh) 用于候选列表修剪的方法和装置
US20060280252A1 (en) Method and apparatus for encoding video signal with improved compression efficiency using model switching in motion estimation of sub-pixel
US20170359592A1 (en) Image coding method, image decoding method, image coding apparatus, and image decoding apparatus
US8462849B2 (en) Reference picture selection for sub-pixel motion estimation
CN111526370B (zh) 视频编码、解码方法及装置和电子设备
CN112004097B (zh) 帧间预测方法、图像处理装置以及计算机可读存储介质
CN107360433A (zh) 一种帧间预测编码方法和装置
CN110392265B (zh) 帧间运动估计方法、装置、电子设备及可读存储介质
CN101765011A (zh) 缩放运动估计的方法和装置
CN104918047B (zh) 一种双向运动估计的排除方法和装置
CN108401185B (zh) 参考帧选择方法、视频转码方法、电子设备和存储介质
CN112004091B (zh) 帧间预测方法及其相关装置
CN111901590B (zh) 一种用于帧间预测的细化运动矢量存储方法及装置
CN116962697A (zh) 视频编码的运动搜索处理方法、系统、设备及存储介质
CN113891089B (zh) 一种运动信息候选列表的构建方法、装置及其设备
US20130195190A1 (en) Method for deciding motion partition mode and encoder
CN106231340A (zh) 一种基于hevc 的帧内预测解码方法及装置
CN113242427B (zh) 一种基于vvc中自适应运动矢量精度的快速方法及装置

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