用于比特率控制的系统和方法技术方案

技术编号:20597189 阅读:38 留言:0更新日期:2019-03-16 12:45
提供了用于控制数据编码的比特率的技术。具体而言,可以使用这些技术,通过在对帧的每一片进行编码之后调整编码参数来将每帧的比特率保持在大约给定的最大比特大小或比特率或在给定的最大比特大小或比特率之下。这样的编码参数可以包括例如用于对所述片进行量化的量化索引。

System and Method for Bit Rate Control

A technique for controlling the bit rate of data encoding is provided. Specifically, these techniques can be used to maintain the bit rate of each frame at about a given maximum bit size or bit rate or below a given maximum bit size or bit rate by adjusting the encoding parameters after encoding each piece of the frame. Such coding parameters may include, for example, a quantized index for quantizing the slice.

【技术实现步骤摘要】
【国外来华专利技术】用于比特率控制的系统和方法
技术介绍
视频和其他媒体内容的流传输在近几年越来越流行。典型地,视频数据或其它媒体内容在源处被编码(例如,压缩)成编码的(例如,压缩的)比特流,然后通过通信信道将其传送到接收机。每单位时间(例如,秒)用于对数据单元(例如,视频帧)进行编码的比特数被称为比特率。较高的比特率通常意味着较高的回放质量(例如,视觉质量)的编码比特流。然而,控制编码比特流的比特率以确保满足发送机、接收机和/或通信信道的各种约束是重要的。例如,可能希望将编码视频帧的比特率保持在某个最大比特率以下,以防止缓冲区溢出或适应带宽限制。
技术实现思路
根据一些实施例,提供了一种用于控制比特率的计算机实现的方法。该方法包括:确定对帧的直到且包括第一片的一个或多个片进行编码所使用的累积比特数量与对所述帧的一个或多个片进行编码所允许的最大比特数量之间的差值,第一片使用第一编码参数进行编码;至少部分地基于计数(counter)更新编码参数阈值,所述计数指示用于编码所述一个或多个片的一个或多个编码参数达到或超过所述编码参数阈值的次数;至少部分地基于所述差值和更新后的编码参数阈值来确定用于对所述帧的第二片进行编码的第二编码参数。根据一些实施例,提供了一个或多个非暂时性计算机可读存储介质。所述存储介质存储计算机可执行指令,所述计算机可执行指令在由计算系统执行时将所述计算系统配置为执行操作,所述操作包括:确定对帧的直到且包括第一片的一个或多个片进行编码所使用的累积比特数量与对所述帧的一个或多个片进行编码所允许的最大比特数量之间的差值,第一片使用第一编码参数进行编码;至少部分地基于计数更新编码参数阈值,所述计数指示用于编码所述一个或多个片的一个或多个编码参数达到或超过所述编码参数阈值的次数;至少部分地基于所述差值和更新后的编码参数阈值来确定用于对所述帧的第二片进行编码的第二编码参数。根据一些实施例,提供了一种计算机系统。所述计算机系统包括存储一个或多个计算机可执行指令的存储器以及一个或多个处理器,所述处理器被配置为访问所述存储器并执行所述计算机可执行指令以执行包括以下的步骤:确定对帧的直到且包括第一片的一个或多个片进行编码所使用的累积比特数量与对所述帧的一个或多个片进行编码所允许的最大比特数量之间的差值,第一片使用第一编码参数进行编码;至少部分地基于计数更新编码参数阈值,所述计数指示用于编码所述一个或多个片的一个或多个编码参数达到或超过所述编码参数阈值的次数;以及至少部分地基于所述差值和更新后的编码参数阈值来确定用于对所述帧的第二片进行编码的第二编码参数。根据一些实施例,提供了一种用于控制比特率的计算机实现的方法。该方法包括:基于对直到且包括第一片的片进行编码所使用的累积比特数量与对所述片进行编码所允许的最大比特数量之间的差值,确定针对第一片的第一编码参数的预期调整;确定指示编码参数阈值与用于对所述片进行编码的编码参数之间的关系的指示符;至少部分地基于所述指示符来更新编码参数阈值;至少部分地基于更新后的编码参数阈值和所述预期调整来确定对所述第一编码参数的实际调整;以及将所述实际调整应用于第一编码参数,以确定用于对第二片进行编码的第二编码参数。应当理解,可以单独地、共同地或彼此组合地理解本专利技术的不同方面。本文描述的本专利技术的各个方面可以应用于下面阐述的任何特定应用或任何其他类型的可移动和/或静止物体之间的数据通信。通过阅读说明书、权利要求书和附图,本专利技术的其它目的和特征将变得明显。附图说明本专利技术的新颖特征在所附权利要求中具体阐述。通过参考下面的详细描述及其附图,将更好地理解本专利技术的特征和优点,所述详细描述中阐述了利用本专利技术的原理的说明性实施例,所述附图中:图1示出了根据实施例的用于实现速率控制的示例性系统。图2示出了根据实施例的用于要被编码的输入数据的示例性数据单元。图3示出了根据实施例的用于利用速率控制对数据进行编码的示例过程。图4示出了根据实施例的用于控制比特率的示例过程。图5示出了根据实施例的用于控制比特率的示例性过程。图6部分地示出了根据实施例的用于确定片的编码参数的示例性过程。图7部分地示出了根据实施例的用于确定片的编码参数的示例性过程。图8示出了根据实施例的用于利用速率控制对数据进行编码的示例性过程。图9示出了根据实施例的用于移除片的高频系数的示例性过程。图10示出了可以用于实施上文所描述的任何实体或组件的计算机系统的高层框图。具体实施方式本专利技术的系统、装置和方法提供了用于控制编码的视频或其他类型的数据的比特率的技术。具体而言,可以使用这些技术,通过在对帧的每一片进行编码之后调整编码参数来将每帧的比特率保持在大约给定的最大比特大小或比特率或在给定的最大比特大小或比特率之下。例如,如果片的编码导致累积比特大小超过所分配的最大累积比特大小,则相应地调整下一片的编码参数,以减少用于编码下一片的比特数;反之亦然。这样的编码参数可以包括例如用于量化下一片的量化索引,以及用于移除下一片的某些高频系数的截止(cutoff)索引。有利的是,可以使用所描述的技术来一次性完成(inasinglepass)实现输入数据的速率控制,而无需预处理输入数据,从而节省了编码过程所需的时间和计算资源。编码参数和比特率可以以渐进方式调整,而不显著影响重构数据的质量。另外,可以基于片的编码顺序自适应地调整编码参数。图1示出了根据实施例的用于实现速率控制的示例性系统100。系统100可以被配置为接收和编码输入数据102以产生输出数据108。例如,系统100可以被配置为接收视频作为输入数据,压缩该视频数据以产生一个或多个压缩比特流作为输出数据。在数据编码期间,系统100可以被配置为使用本文描述的技术来控制编码数据的比特大小(并因此控制比特率)。在各种实施例中,系统100的组件可由计算装置(例如,台式计算机、膝上型计算机、平板电脑、智能电话、安装盒)或诸如无人机(UAV)之类的可移动物体上的一个或多个处理器实现。一个或多个处理器可以包括ARM处理器、现场可编程门阵列(FPGA)、中央处理单元(CPU)、图形处理单元(GPU)等。在一些实施例中,系统100的组件可以使用硬件加速技术来实现。系统100包括编码器104和速率控制器106。编码器104和速率控制器106可以由相同或不同的计算装置来实现。在一些实施例中,速率控制器106可以形成编码器104的组成部分;反之亦然。编码器104被配置为接收输入数据102,对输入数据102进行编码,并提供包括编码输入数据的输出数据108。输入数据可以包括文本、图像、图形对象、动画序列、录音、视频或需要编码的任何其他数据。在一些情况下,输入数据可以包括来自诸如视觉传感器(例如,相机、红外传感器)、麦克风、近距离传感器(例如,超声波、激光雷达)、位置传感器、温度传感器、触摸传感器等一个或多个传感器的感测数据。在一些情况下,输入数据可以包括来自用户的输入,诸如包括面部特征的生物测定信息、指纹扫描、视网膜扫描、语音录音、DNA样本等。输入数据的编码对于数据的有效和/或安全传输或存储可能是必需的。输入数据的编码可涉及数据压缩、加密、差错编码、格式转换等。例如,诸如视频或音频的多媒体数据可以被压缩以减少通过网络传输的比特数。诸如财务信本文档来自技高网...

【技术保护点】
1.一种用于控制比特率的计算机实现的方法,包括:确定对帧的直到且包括第一片的一个或多个片进行编码所使用的累积比特数量与对所述帧的所述一个或多个片进行编码所允许的最大比特数量之间的差值,所述第一片使用第一编码参数进行编码;至少部分地基于计数来更新编码参数阈值,所述计数指示用于对所述一个或多个片进行编码的一个或多个编码参数达到或超过所述编码参数阈值的次数;以及至少部分地基于所述差值和更新后的编码参数阈值来确定用于对所述帧的第二片进行编码的第二编码参数。

【技术特征摘要】
【国外来华专利技术】1.一种用于控制比特率的计算机实现的方法,包括:确定对帧的直到且包括第一片的一个或多个片进行编码所使用的累积比特数量与对所述帧的所述一个或多个片进行编码所允许的最大比特数量之间的差值,所述第一片使用第一编码参数进行编码;至少部分地基于计数来更新编码参数阈值,所述计数指示用于对所述一个或多个片进行编码的一个或多个编码参数达到或超过所述编码参数阈值的次数;以及至少部分地基于所述差值和更新后的编码参数阈值来确定用于对所述帧的第二片进行编码的第二编码参数。2.根据权利要求1所述的方法,其中,使用对应的编码参数对所述帧的所述一个或多个片中的每一片进行编码。3.根据权利要求1所述的方法,其中,所述第一编码参数和所述第二编码参数是量化参数。4.根据权利要求1所述的方法,其中,所述帧的每一片包括多个宏块。5.根据权利要求1所述的方法,还包括:至少部分地基于所述差值来确定对所述第一编码参数的预期调整。6.根据权利要求5所述的方法,其中确定所述第二编码参数包括:至少部分地基于所述预期调整来确定对所述第一编码参数的实际调整。7.根据权利要求6所述的方法,其中,当所述累积比特数量大于所允许的最大比特数量时,对所述第一编码参数的预期调整为正。8.根据权利要求6所述的方法,其中当所述累积比特数量小于所允许的最大比特数量时,对所述第一编码参数的预期调整为负。9.根据权利要求1所述的方法,其中所述计数指示所述一个或多个编码参数达到或超过所述编码参数阈值的连续次数。10.根据权利要求1所述的方法,其中,所述编码参数阈值表示所述第一编码参数的上限,并且所述更新后的编码参数阈值表示所述第二编码参数的上限。11.根据权利要求1所述的方法,其中更新所述编码参数阈值包括:如果所述计数等于或大于预定义的计数阈值,并且所述累积比特数量与所述最大比特数量之间的差值超过预定义的比特阈值,则将所述编码参数阈值递增预定义的值。12.根据权利要求11所述的方法,其中,所述预定义的值根据所述第一片或第二片相对于所述帧的其他片被编码的顺序而变化。13.根据权利要求11所述的方法,其中,所述预定义的比特阈值根据所述第一片或第二片相对于所述帧的其他片被编码的顺序而变化。14.根据权利要求1所述的方法,其中更新所述编码参数阈值包括:如果所述计数小于预定义的计数阈值,或者如果所述累积比特数量与所述最大比特数量之间的差值不超过预定义的比特阈值,则将所述编码参数阈值按预定义的值递减。15.根据权利要求14所述的方法,其中,所述预定义的值根据所述第一片或第二片相对于所述帧的其他片被编码的顺序而变化。16.根据权利要求14所述的方法,其中,所述预定义的比特阈值根据所述第一片或第二片相对于所述帧的其他片被编码的顺序而变化。17.根据权利要求1所述的方法,还包括:至少部分地基于所述差值,移除所述帧的第二片的频率系数的预定义的集合。18.根据权利要求17所述的方法,其中,所述预定义的集合是至少部分地基于确定所述差值超过预定义的比特阈值来确定的。19.根据权利要求18所述的方法,其中,所述预定义的比特阈值根据所述第一片或第二片相对于所述帧的其他片被编码的顺序而变化。20.用于存储计算机可执行指令的一个或多个非暂时性计算机可读存储介质,所述计算机可执行指令在由计算系统执行时配置所述计算系统执行操作,所述操作包括:确定对帧的直到且包括第一片的一个或多个片进行编码所使用的累积比特数量与对所述帧的所述一个或多个片进行编...

【专利技术属性】
技术研发人员:赵文军武燕楠
申请(专利权)人:深圳市大疆创新科技有限公司
类型:发明
国别省市:广东,44

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

1