一种基于机器学习的动态运动估计算法选择的方法与流程

    专利2022-07-07  143


    本发明涉及视频编码技术领域,尤其涉及一种基于机器学习的动态运动估计算法选择的方法。



    背景技术:

    视频编码是以视频信号的相关性和人眼的视觉特性为出发点,通过恰当的编码方法,来消除各类相关性和人眼特性所产生的冗余,从而在保证视频质量的同时,降低码率。视频信号之间的冗余,主要表现在时域相关性和空域相关性。时域相关性,指的是图象序列中相邻的图象之间相似性;空域相关性,指的是同一图象中,相邻像素之间的相似性。基于这种相似性,可以采用预测编码的方式,用已知的已编码的像素,对当前像素进行预测,将当前像素与预测值做减法得到预测残差,然后再对预测的残差进行编码,从而达到降低码率的目的。

    视频序列的相邻帧之间存在位移,在对当前像素进行帧间预测编码时,最佳参考像素的所在位置,并不一定总是与当前像素具有相同的二维坐标。所以,帧间预测编码,又可以称作“基于运动补偿的预测编码”。帧间预测编码的目的,就是为当前像素寻找最佳预测值,而寻找该预测值的所在位置的过程,则被称为“运动估计”。运动估计技术,是预测编码的关键技术,它有效的消除了图象帧间的时域冗余度,从而提高了压缩效率。但同时,为了最大程度的消除时域冗余度,编码器在进行运动估计时需要进行大量的搜索工作,以便在参考图像中寻找到与当前像素最佳匹配的参考像素。所以,运动估计模块由于其复杂的计算过程,成为决定编码器计算复杂度的主要因素。针对不同种类的视频,如何选择高效率低复杂度的运动估计算法,是本发明要解决的主要问题。



    技术实现要素:

    本发明提供了一种基于机器学习的动态运动估计算法选择的方法。本发明的核心思想在于通过机器学习的方法,在同码率下,对每个类型的视频用不同的运动估计算法进行编码,得到每一类视频的每种运动估计方法的vmaf和编码用时,通过设定vmaf阈值,根据vmaf阈值自适应的匹配高效率低复杂度的运动估计算法,以达到降低编码器复杂度的目的,从而在保证视频质量的同时节省了码率。具体包括如下步骤。

    (1)准备各种类型的视频,比如:游戏直播、体育赛事、动漫、电影、综艺等,作为训练数据训练视频分类神经网络模型。

    (2)比较不同运动估计算法对于每类视频的压缩性能。

    (2.1)对每一类视频用不同运动估计算法进行编码,编码时以同样的目标码率为限制。

    (2.2)分别获得每一类视频用每一种运动估计算法的vmaf评分和编码用时。

    (2.3)通过拟合以编码时长为横轴,以vmaf纵轴的曲线,以曲线斜率最大的点对应的vmaf值作为vmaf阈值,找到最接近vmaf阈值的运动估计算法,该算法为该类视频的最优运动估计算法。

    (3)对带压缩视频进行压缩,最终输出压缩后的视频。

    (3.1)将带压缩视频输入步骤(1)中训练好的网络模型进行分类。

    (3.2)根据步骤(2)中得到的结论选择最优的运动估计算法对待压缩视频进行压缩。

    (3.3)输出压缩后的视频。

    附图说明

    图1为本发明一种基于机器学习的动态运动估计算法选择的方法的流程图。

    图2为4种类型视频使用不同运动估计算法编码的vmaf和编码时长曲线图。

    具体实施方式

    为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。

    下面结合附图对本发明作更进一步的说明。

    如图1所示,本发明的一种基于机器学习的动态运动估计算法选择的方法具体包括以下步骤。

    (1)准备各种类型的视频,比如:游戏直播、体育赛事、动漫、电影、综艺等,作为训练数据训练视频分类神经网络模型。

    (2)比较不同运动估计算法对于每类视频的压缩性能。

    (2.1)对每一类视频用不同运动估计算法进行编码,编码时以同样的目标码率为限制:以x.264的搜索方法为例,但不限于所举例的方法,对于每类视频分别用菱形搜索算法、六边形搜索算法、非对称十字型多层次六边形格点搜索算法和完全搜索法进行编码。

    (2.1.1)对于视频a用菱形搜索算法进行搜索:通过计算各点的匹配误差,得到mbd点。如果mbd点位于模板中心,则停止搜索,此时的mbd点就是最优匹配点,对应的宏块就是最佳匹配块。如果mbd点不在模板中心位置,则以现在mbd点为中心点,继续进行小菱形搜索,直至mbd点位于中心点为止。

    (2.1.2)对于视频a用六边形搜索算法进行搜索:首先按六边形模板对包括中心点在内的7个点进行sad计算,如果mbd点在六边形的中心,则停止搜索,以该mbd点为中心,将搜索模板改为菱形,然后进行匹配计算,得到的mbd点即为所求的最佳匹配点;否则,以该mbd点为中心组成新的六边形,并计算新加入的点,如此往复,直到mbd点在六边形的中心。

    (2.1.3)对于视频a用非对称十字型多层次六边形格点搜索算法进行搜索,该算法综合考虑了大范围运动和缓慢运动的特点,利用时空相关性进行运动矢量场的预测,并采用了多种形状的模板进行搜索,例如六边形搜索法,菱形搜索法等,兼顾了搜索速度和搜索质量,搜索步骤如下。

    (2.1.3.1)准静止块检测:搜索中值预测矢量和原点后,通过是否满足收敛收缩的

    条件来判断是否为准静止块,若满足,进行收敛搜索后停止搜索,否则进入步骤(2.1.3.2)。

    (2.1.3.2)运动类型判定:进行一次小的局部搜索,获得最佳匹配点后,对运动类

    型进行判断:若满足大运动块的要求进入步骤(2.1.3.3);否则进入步骤(2.1.3.4)。

    (2.1.3.3)大运动块搜索:以获得的最佳匹配点为中心,进行对称的十字形搜索,

    获得最佳匹配点后进入一次6点的六边形搜索,获得最佳匹配点后,采用不断扩大一倍搜索半径的16点的大六边形模板进行搜索,直至搜索超出范围结束步骤(2.1.3.3)。

    (2.1.3.4)中运动块搜索:首先检测上层块预测矢量,并进行一次小的局部搜索,获得最佳匹配点。再次判断是否满足收敛搜索的条件:满足则进入步骤(2.1.3.5),进行收敛搜索后结束搜索;否则使用扩展的六边形搜索以确定的最佳匹配点为中心进行连续的中六边形搜索,直至其最佳的运动矢量位于六边形的中心。获得最佳匹配点后进入步骤(2.1.3.5)。

    (2.1.3.5)小运动块的精细搜索以当前最佳匹配点为中心进行小菱形模板搜索,直至最佳匹配点为菱形中心。

    (2.1.4)对于视频a用完全搜索法进行搜索:首先从坐标(0,0)出发,按照某种路径由近及远逐个计算sad值,直到遍历搜索框内的所有的点;然后在所有sad值中找到最小误差mbd点,该点即最佳匹配点。

    (2.1.5)分别获得视频a用每一种运动估计算法的vmaf和编码用时。

    (2.2)分别获得每一类视频用每一种运动估计算法的vmaf评分和编码用时。

    (2.3)通过拟合以编码时长为横轴,以vmaf纵轴的曲线,以曲线斜率最大的点对应的vmaf值作为vmaf阈值,找到最接近vmaf阈值的运动估计算法,该算法为该类视频的最优运动估计算法。

    (3)对带压缩视频进行压缩,最终输出压缩后的视频。

    (3.1)将带压缩视频输入步骤(1)中训练好的网络模型进行分类。

    (3.2)根据步骤(2)中得到的结论选择最优的运动估计算法对待压缩视频进行压缩。

    (3.3)输出压缩后的视频。

    本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。

    本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

    上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。


    技术特征:

    1.一种基于机器学习的动态运动估计算法选择的方法,其特征在于,包括以下步骤:

    s1:基于卷积神经网络训练视频分类模型;

    s2:比较不同运动估计算法对于每类视频的压缩性能:

    s2.1对每一类视频用不同运动估计算法进行编码,以同样的目标码率为限制;

    s2.2分别获得每一类视频用每一种运动估计算法的vmaf评分和编码用时;

    s2.3通过拟合以编码时长为横轴,以vmaf纵轴的曲线,找到与vmaf阈值最接近的运动估计算法,则该算法为该类视频的最优运动估计算法;

    s3:根据待压缩视频的类型和实验结果选择最优运动估计算法进行压缩,最终输出压缩后的视频。

    2.根据权利要求1所述的方法,其特征在于,所述vmaf阈值是在指s2.3拟合的曲线中斜率最大的点对应的vmaf评分。

    技术总结
    本发明提供了一种基于机器学习的动态运动估计算法选择的方法,属于视频编码技术领域。本发明的核心思想在于通过机器学习的方法,在同码率下,对每个类型的视频用不同的运动估计算法进行编码,得到每一类视频的每种运动估计方法的VMAF和编码用时。通过设定VMAF阈值,根据VMAF阈值自适应的匹配高效率低复杂度的运动估计算法,以达到降低编码器复杂度的目的,从而在保证视频质量的同时节省了码率。

    技术研发人员:王明琛;刘宇新;朱政
    受保护的技术使用者:杭州微帧信息科技有限公司
    技术研发日:2020.11.25
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-6529.html

    最新回复(0)