用于减小视频编码波动的系统及方法技术方案

技术编号:23413632 阅读:46 留言:0更新日期:2020-02-22 18:59
可以支持视频编码的系统和方法。视频编码器可以获得图像帧,其中,该图像帧包括多个编码块组,多个编码块组中的每一个包括一个或多个编码块(例如,一个或多个宏块)。该视频编码器可以使用一个或多个编码控制模型来估计多个编码参数(例如,多个量化参数),其中,每个编码参数与图像帧中的编码块组相对应。而且,该视频编码器可以基于对多个编码参数的评估来确定一个或多个有效编码参数,并且使用该一个或多个有效编码参数来对图像帧中的多个编码块组进行编码。

System and method for reducing the fluctuation of video coding

【技术实现步骤摘要】
【国外来华专利技术】用于减小视频编码波动的系统及方法有关申请的交叉引用本申请要求2017年11月30日提交的国际申请号PCT/CN2017/113926和2017年11月30日提交的国际申请号PCT/CN2017/113848的权益。
所公开的实施例总体涉及视频处理,且更具体地但非排他地涉及视频编码。
技术介绍
近年来,视频内容的消费一直在激增,这主要是由于各种类型的便携式、手持式或可穿戴设备的普及。通常,视频数据或其他媒体内容在源处被编码为编码(压缩)比特流,然后通过通信信道传输到接收器。然而,控制编码比特流的比特率很重要,以确保满足发送者、接收者和/或通信信道的各种约束。例如,可能期望将编码视频帧的比特率保持在某个最大比特率以下,以防止缓冲区溢出和编码波动或适应带宽限制。这是本专利技术的实施例旨在涉及的一般领域。
技术实现思路
本文描述的是可以支持视频编码的系统和方法。视频编码器可以获得图像帧,其中,该图像帧包括多个编码块组,多个编码块组中的每一个包括一个或多个编码块(例如,一个或多个宏块)。该视频编码器可以使用一个或多个编码控制模型来估计多个编码参数(例如,多个量化参数),其中,每个编码参数与图像帧中的编码块组相对应。而且,该视频编码器可以基于对多个编码参数的评估来确定一个或多个有效编码参数,并使用该一个或多个有效编码参数来对图像帧中的多个编码块组进行编码。附图说明图1示出根据本专利技术的各种实施例的用于实现码率控制的示例性系统。图2示出根据本专利技术的各种实施例的编码/压缩视频的示例性说明。图3示出根据本专利技术的各种实施例的一系列示例性数据级别。图4示出根据本专利技术的各种实施例的要被编码的示例性数据单元。图5示出根据本专利技术的各种实施例的要被编码的示例性分级数据单元。图6示出根据本专利技术的各种实施例的具有码率控制的示例性编码器。图7示出根据本专利技术的各种实施例的控制用于编码图像帧的流的码率的示例性说明。图8示出根据本专利技术的各种实施例的示例性码率控制方案。图9示出根据本专利技术的各种实施例的将多个滑动窗用于防止编码图像帧时的波动。图10示出根据本专利技术的各种实施例的将多个滑动窗用于防止编码图像帧的图像单元时的波动的示例性说明。图11示出根据本专利技术的各种实施例的用于支持视频编码的流程图。图12示出根据本专利技术的各种实施例的将有效QP用于减小编码波动的示例性说明。具体实施方式通过示例而非限制,在附图的各图中示出了本专利技术,其中相似的附图标记指示相似的元件。应当注意,在本公开中针对“实施例”或“一个实施例”或“一些实施例”的引用不一定是相同实施例,并且这种引用意指至少一个实施例。本专利技术的以下描述使用H.264标准(例如,H.264和高效视频编码(HEVC))作为编码方法的示例。对于本领域技术人员显而易见的是,可以使用其他类型的编码方法而没有限制。根据本专利技术的各种实施例,该系统可以提供用于支持视频编码(例如,防止编码波动)的技术解决方案,以提高视频编码质量,这是实现令人满意的用户体验的关键因素。视频编码器可以获得图像帧,其中,该图像帧包括多个编码块组,多个编码块组中的每一个包括一个或多个编码块(例如,一个或多个宏块)。该视频编码器可以使用一个或多个编码控制模型来估计多个编码参数(例如,多个量化参数),其中,每个编码参数与图像帧中的编码块组相对应。而且,该视频编码器可以基于对多个编码参数的评估来确定一个或多个有效编码参数,并使用该一个或多个有效编码参数来对图像帧中的多个编码块组进行编码。图1示出根据本专利技术的各种实施例的用于实现码率控制的示例性系统100。如图1所示,编码器101可以被配置为接收和编码输入数据102以产生输出数据104。例如,编码器101可以被配置为接收视频作为输入数据102,并且对输入视频数据进行编码以产生一个或多个压缩比特流作为输出数据104。在数据编码期间,编码器101可以被配置为(例如,通过码率控制器103)控制编码数据的比特大小(并因此控制比特率)。编码器101和码率控制器103可以由相同或不同的计算设备实现。在一些实施例中,码率控制器103可以形成编码器101的组成部分,或反之亦然。编码器101被配置为接收输入数据102,对输入数据102进行编码,并提供包括编码数据的输出数据104。输入数据102可以包括文本、图像、图形对象、动画序列、音频记录、视频或任何其他需要被编码的数据。在一些情况下,输入数据102可以包括来自一个或多个传感器(例如,视觉传感器(例如,相机、红外传感器)、麦克风、接近传感器(例如,超声、LIDAR)、位置传感器、温度传感器、触摸传感器等)的感测数据。输入数据102的编码可以涉及数据压缩、加密、误差编码、格式转换等。例如,诸如视频或音频之类的多媒体数据可以被压缩以减少通过网络传输的比特数量。诸如财务信息和个人标识信息之类的敏感数据可以在传输或存储之前进行加密,以保护机密性和/或隐私。因此,输入数据102的编码对于数据的高效和/或安全传输或存储可能是有益的。根据本专利技术的各种实施例,编码器101可以被配置为对视频或图像帧的序列进行编码。在一些实施例中,编码器101可以实现一个或多个不同的编解码器。一个或多个编解码器中的每一个都可以利用实现不同编码算法的各种代码、指令或计算机程序。可以基于各种因素来选择合适的编解码器,以对给定的一组输入数据进行编码,这些因素包括输入数据的类型和/或来源、编码数据的接收实体、计算资源的可用性、网络环境、业务需求、规定和标准等。图2示出根据本专利技术的各种实施例的编码/压缩视频的示例性说明。如图2中所示,可以使用一系列步骤(例如,预测步骤201、变换步骤202、量化步骤203和熵编码步骤204)对每帧中的数据进行编码。根据各种实施例,预测步骤201可以用于减少图像帧中的冗余信息。预测步骤201可以包括帧内预测和帧间预测。可以仅基于当前帧内包含的与视频序列中的其他帧无关的信息来执行帧内预测。例如,编码过程可以用于主要或完全基于包含在帧内帧(或I帧)内的空间信息来对帧内帧(I帧)进行编码。可以通过基于参考帧(例如,先前已处理的帧)消除当前帧中的冗余来执行帧间预测。例如,编码器103可以被配置为利用帧之间的时间冗余且基于根据先前帧和/或后续帧做出的前向和/或后向预测来对帧间帧(例如,P帧或B帧)进行编码。根据各种实施例,可以基于先前帧和/或后续帧通过估计摄像机和/或视频中的对象的运动,对帧进行帧间预测的前向和/或后向预测。例如,为了执行用于帧间预测的运动估计,可以将帧划分为多个图像块。每个图像块可以(例如,基于块匹配算法)与参考帧中的块相匹配。在一些实施例中,可以计算运动矢量(MV),该运动矢量表示从当前帧中的图像块的坐标到参考帧中的匹配图像块的坐标的偏移。而且,可以计算和分组残差(即,当前帧中的每个图像块与参考帧中的匹配块之间的差)。系统可以处理残差以提高编码效率。例如,可以通过在分组的残差上应用变换矩本文档来自技高网...

【技术保护点】
1.一种用于支持视频编码的方法,包括:/n获得图像帧,其中,所述图像帧包括多个编码块组,所述多个编码块组中的每一个包括一个或多个编码块;/n使用与所述图像帧中的第一编码块组相关联的第一编码控制模型,估计一个或多个第一编码参数;/n使用与所述图像帧中的第二编码块组相关联的第二编码控制模型,估计一个或多个第二编码参数;/n基于对所述一个或多个第一编码参数和所述一个或多个第二编码参数的评估,确定一个或多个有效编码参数;以及/n使用所述一个或多个有效编码参数对所述图像帧中的所述多个编码块组进行编码。/n

【技术特征摘要】
【国外来华专利技术】20171130 CN PCT/CN2017/113848;20171130 CN PCT/CN201.一种用于支持视频编码的方法,包括:
获得图像帧,其中,所述图像帧包括多个编码块组,所述多个编码块组中的每一个包括一个或多个编码块;
使用与所述图像帧中的第一编码块组相关联的第一编码控制模型,估计一个或多个第一编码参数;
使用与所述图像帧中的第二编码块组相关联的第二编码控制模型,估计一个或多个第二编码参数;
基于对所述一个或多个第一编码参数和所述一个或多个第二编码参数的评估,确定一个或多个有效编码参数;以及
使用所述一个或多个有效编码参数对所述图像帧中的所述多个编码块组进行编码。


2.根据权利要求1所述的方法,其中,所述第一编码控制模型与第一模型参数集合相关联,而所述第二编码控制模型与第二模型参数集合相关联。


3.根据权利要求2所述的方法,其中,所述第一编码控制模型与所述第二编码控制模型不同。


4.根据权利要求2所述的方法,还包括:基于历史编码信息,更新与所述第一编码控制模型相关联的所述第一模型参数集合和与所述第二编码控制模型相关联的所述第二模型参数集合。


5.根据权利要求2所述的方法,还包括:使用梯度法确定所述第一模型参数集合和所述第二模型参数集合中的至少一个集合。


6.根据权利要求5所述的方法,其中,所述第一模型参数集合是基于第一学习码率计算的,而所述第二模型参数集合是基于第二学习码率计算的。


7.根据权利要求2所述的方法,还包括:使用滑动窗确定所述第一模型参数集合和所述第二模型参数集合中的至少一个集合,其中,所述滑动窗与参考图像数据单元序列相关联。


8.根据权利要求7所述的方法,其中,所述第一模型参数集合是使用包括第一参考图像数据单元序列的第一滑动窗计算的,而所述第二模型参数集合是使用包括第二参考图像数据单元序列的第二滑动窗计算的。


9.根据权利要求1所述的方法,其中,所述一个或多个第一编码参数是基于针对所述图像帧中的所述第一编码块组的第一比特分配确定的,而所述一个或多个第二编码参数是基于针对所述图像帧中的所述第二编码块组的第二比特分配确定的。


10.根据权利要求9所述的方法,还包括:基于用于传输所述图像帧的目标速率和/或一个或多个通信约束,执行针对所述图像帧中的每个编码块组的初始比特分配。


11.根据权利要求10所述的方法,还包括:基于所述图像帧中的一个或多个编码块组中的内容的复杂度,调整针对所述一个或多个编码块组的比特分配。


12.根据权利要求1所述的方法,其中,每个编码块组包括一行宏块。


13.根据权利要求1所述的方法,其中,所述一个或多个第一编码参数包括用于对所述第一编码块组进行编码的一个或多个第一量化参数,而所述一个或多个第二编码参数包括用于对所述第二编码块组进行编码的一个或多个第二量化参数。


14.根据权利要求1所述的方法,其中,所述评估包括获得具有最大值或平均值的一个或多个编码参数。


15.一种视频编码器,包括:
存储器,存储一个或多个计算机可执行指令;以及
一个或多个处理器,被配置为访问所述存储器并执行所述计算机可执行指令以执行包括以下的步骤:
获得图像帧,其中,所述图像帧包括多个编码块组,所述多个编码块组中的每一个包括一个或多个编码块;
使用与所述图像帧中的第一编码块组相关联的第一编码控制模型,估计一个或多个第一编码参数;
使用与所述图像帧中的第二编码块组相关联的第二编码控制模型,估计一个或多个第二编码参数;
基于对所述一个或多个第一编码参数和所述一个或多个第二编码参数的评估,确定一个或多个有效编码参数;以及
使用所述一个或多个有效编码参数对所述图像帧中的所述多个编码块组进行编码。


16.根据权利要求15所述的视频编码器,其中,所述第一编码控制模型与第一模型参数集合...

【专利技术属性】
技术研发人员:赵亮苏文艺朱磊
申请(专利权)人:深圳市大疆创新科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1