长期参考图片译码的制作方法

文档序号:15203434发布日期:2018-08-21 04:42阅读:350来源:国知局

本申请要求2016年1月21日提交的、题为“longtermreferencepicturecoding(长期参考图片译码)”的美国非临时专利申请s/n.15/002,697的优先权,并且该美国非临时专利申请通过引用其整体结合于此。



背景技术:

在压缩/解压缩(编解码器)系统中,压缩效率、视频质量和错误复原力是重要的性能准则。例如,视觉质量和错误复原力是许多视频应用中用户体验的重要方面,并且压缩效率影响存储视频文件所需的存储器存储量、和/或传送和/或流送(stream)视频内容所需的带宽量。例如,视频编码器压缩视频信息,以便较多的信息可通过给定带宽来发送或被存储在给定存储器空间中等。经压缩的信号或数据随后可经由对信号或数据进行解码或解压缩以向用户显示的解码器来被解码。在大多数实现中,期望具有较高压缩率的较高视觉质量。

此外,长期参考图片或帧是视频译码系统的重要特征。例如,长期参考图片可在h.264/mpeg-4高级视频译码(avc)标准和高效视频译码(hevc)标准中使用。由所谓的黄金帧提供的类似功能可被包括在vp8标准和vp9标准中。此类长期参考图片可被用于对其他图片进行译码,并且它们可在会发生数据传递损失的情况下(诸如,在网络分配上等)提供复原。长期参考图片可被存储在解码器处并被用于图片预测、恢复等,直到它们被后续长期参考图片替代。

对长期参考图片的选择和管理可在编码期间以及解码过程中的错误复原期间提供主观和客观改进。因此,选择和管理长期参考图片来提供改进的视频译码可能是有利的。正是针对这些和其它考虑需要本发明的改进。随着压缩和传送视频数据的期望变得更加普遍,此类改进可能变得至关重要。

附图说明

本文中所描述的资料通过示例方式而非限制性方式在所附附图中示出。为例示的简单和清楚起见,附图中所示出的元件不一定是按比例绘制的。例如,为了清楚起见,可将一些元件的大小相对于其他元件扩大。此外,在被认为合适的情况下,在多个附图之间重复多个附图标记以指示对应或类似的元件。在附图中:

图1是用于提供视频译码的示例系统的示图;

图2例示出示例图片序列;

图3例示出示例图片序列;

图4是例示出用于视频译码(包括对长期参考图片进行译码)的示例过程的流程图;

图5是例示出用于管理参考图片列表的示例过程的流程图;

图6例示出示例比特流;

图7是例示出用于视频译码(包括对长期参考帧进行译码)的示例过程的流程图;

图8是例示出用于视频译码(包括对长期参考帧进行译码)的示例系统的示图;

图9是示例系统的示图;以及

图10例示出完全根据本公开的至少一些实现来布置的示例设备。

具体实施方式

现在参考所附附图描述一个或多个实施例或实现。尽管讨论了特定的配置和布置,但是,应当理解,仅出于说明性目的而这样做。相关领域内的技术人员将认可,可采用其他配置和布置而不背离本说明书的精神和范围。对相关领域内的技术人员显而易见的是,也可在本文所描述内容以外的各种其他系统和应用中采用本文所描述的多种技术和/或布置。

尽管以下描述陈述了可在诸如例如片上系统(soc)架构之类的架构中显示的各种实现,但是本文所述的多种技术和/或布置的实现不限于特定的架构和/或计算系统,并且可由用于类似目的的任何架构和/或计算系统来实现。例如,采用例如多个集成电路(ic)芯片和/或封装的各种架构和/或各种计算设备和/或诸如机顶盒、智能电话等之类的消费者电子(ce)设备可实现本文所述的多种技术和/或布置。此外,尽管下列描述可能陈述了诸如逻辑实现、系统组件的类型和相互关系、逻辑分区/集成选择等之类的多个具体细节,但是可以不利用此类具体细节来实施要求保护的主题。在其他实例中,可能不详细地示出诸如例如控制结构和完整的软件指令序列之类的某些资料,从而避免使本文所公开的内容不清楚。

本文所公开的内容可实现在硬件、固件、软件或它们的任意组合中。也可以将本文所公开的内容实现为存储在机器可读介质上的指令,可由一个或多个处理器读取并执行这些指令。机器可读介质可包括用于以机器(如,计算设备)可读的形式存储或传送信息的任何介质和/或机制。例如,机器可读介质可包括只读存储器(rom);随机存取存储器(ram);磁盘存储介质;光存储介质;闪存设备;电、光、声或其它形式的传播信号(例如,载波、红外信号、数字信号等)等等。

在说明书中提到“一个实现”、“实现”、“示例实现”等表明所描述的实现可包括特定特征、结构或特性,但每个实施例可能不一定都包括该特定特征、结构或特性。此外,此类的短语不一定是指同一个实现。此外,当结合实现描述特定特征、结构或特性时,认为结合无论是否在本文中明确描述的其他实现以实现此类特征、结构或特性是在本领域技术人员的知识范围之内的。

本文描述的方法、设备、装置、计算平台和制品涉及视频译码,并且更具体地涉及长期参考图片译码。

如上所述,对长期参考图片的选择和译码以及对长期参考图片的管理可能是视频译码和错误复原中主观和客观改进方面的重要因子。如本文所使用的,术语图片指的是任何视频图片或帧。此外,术语长期参考图片指的是可作为用于视频序列的若干或更多个图片或帧的,和/或用于错误恢复或复原的参考帧或图片被维持或保持的任何长期参考帧、黄金帧等。

在本文讨论的一些实施例中,可针对视频的图片序列来确定长期参考图片。此类确定可以是基于视频的帧速率和图片组(gop)译码结构的。例如,选择长期参考图片可包括将图片序列的所有内部图片指派为长期参考图片,和/或将图片序列中所有检测到的场景改变图片指派为长期参考图片。在其他示例中,选择长期参考图片可包括以预定间隔来指派长期参考图片。

针对此类所选长期参考图片,可确定译码量化参数。顾名思义,译码量化参数可被用于对长期参考图片进行译码,并且可通过针对所选长期参考图片调整基于速率控制的量化参数来确定译码量化参数。例如,可使用速率控制技术来确定基于速率控制的量化参数,并且可基于与所选长期参考图片相对应的时间相关性来调整基于速率控制的量化参数,使得如果所选长期参考图片具有较大的时间相关性,则该调整减小基于速率控制的量化参数以生成译码量化参数(例如,使得长期参考图片的质量增加)。在一些示例中,可基于针对视频图片的小运动块的数量与块的总数量的比率和/或针对视频图片的预测失真成本来选择用于从基于速率控制的量化参数确定译码量化参数的调整因子。例如,可从基于速率控制的量化参数减去调整因子以确定译码量化参数。随后可基于译码量化参数对所选长期参考图片进行译码。

此外,可基于针对视频的图片序列选择的长期参考图片来生成参考图片列表语法。例如,在对所选长期参考图片进行译码之际,长期参考图片可被插入至短期参考图片列表中。在此类情况下,先前长期参考图片可驻留在长期参考图片列表中。随着译码继续,经译码的图片或诸图片可被插入至短期参考图片列表中。当所选长期参考图片在短期参考图片列表中被替换时,所选长期参考图片可被插入至长期参考图片列表中。在一些示例中,可使用单个后顾型(backwardlooking)短期参考图片列表。在此类示例中,所选长期参考图片可当其在单个后顾型短期参考图片列表中被替换时被插入至长期参考图片列表中。在其他示例中,可使用后顾型短期参考图片列表和前瞻型(forwardlooking)短期参考图片列表(例如,两个短期参考图片列表)。在此类示例中,所选长期参考图片可当其在后顾型短期参考图片列表和前瞻型短期参考图片列表两者中被替换时被插入至长期参考图片列表中。例如,参考图片列表语法可提供指示符或信号来指示在对视频的图片序列的译码期间要保持的参考图片。

经译码的个体长期参考图片和参考图片列表语法可被插入至比特流中并被传送至接收(解码)设备。本文讨论的技术可提供长期参考图片选择、对此类长期参考图片的速率控制以及参考图片列表管理。此类技术可被应用于任何合适的译码结构或标准,诸如h.264/mpeg-4高级视频译码(avc)标准、高效视频译码(hevc)标准、vp8标准、vp9标准等等。如本文进一步描述的,长期参考图片在图片序列中的位置可被决定,比特可在长期参考图片和其他图片之间进行分配,并且参考图片列表(例如,长期参考图片列表和一个或两个短期参考图片列表)可被管理。

图1是根据本公开的至少一些实现来布置的用于提供视频译码的示例系统100的示例性示图。如图1所示,系统100可包括速率控制模块101、长期参考图片(ltrp)决策模块102、时间相关性模块103、编码模块104、长期参考图片评估模块105(例如,被标示为“长期?”)、量化参数(qp)调整模块106、编码模块107、参考列表管理模块108以及熵编码器109。

同样如所示,速率控制模块101、长期参考图片决策模块102以及时间相关性模块103可接收视频121。系统100可提供例如视频压缩,并且系统100可以是经由计算机或计算设备等实现的视频编码器。例如,系统100可生成与诸如h.264/mpeg-4高级视频译码(avc)标准、高效视频译码(hevc)标准、vp8标准、vp9标准之类的视频压缩-解压缩(编解码器)标准兼容的比特流129。系统100可经由任何合适的设备来实现,这些设备诸如例如个人计算机、膝上型计算机、平板、平板电话、智能电话、数码相机、游戏控制台、可穿戴设备、显示设备、一体式设备、二合一设备等或诸如移动平台之类的平台。例如,如本文使用的,系统、设备、计算机或计算设备可包括任何此类设备或平台。

系统100可包括为了呈现的清晰而未示出的其他模块或组件。例如,系统100可包括变换模块、帧内预测模块、运动估计模块、运动补偿模块、环路滤波模块、参考帧缓冲器、扫描模块等。在一些示例中,系统100可包括用于生成在编码过程中使用的参考帧的本地解码循环。此类模块对于本领域技术人员来说是已知的,并且为了清楚地呈现所描述的技术而不在本文中进一步讨论。

如所讨论的,速率控制模块101、长期参考图片决策模块102以及时间相关性模块103可接收视频121。视频121可包括任何合适分辨率的任何合适的视频帧、视频图片、视频帧序列、图片组、多个图片组、视频数据等。例如,视频121可以是视频图形阵列(vga)、高清晰度(hd)、全高清(例如,1080p)或4k分辨率视频等。此外,视频121可包括任何数量的视频帧、视频帧序列、图片、图片组等等。为了呈现的清晰,关于图片和图片组讨论本文所讨论的技术。然而,此类图片和图片组可被表征为帧、视频帧、帧序列、视频序列等。视频121还可包括视频121的帧速率和/或图片组(gop)译码结构。帧速率和gop译码结构可以是任何合适的帧速率和gop译码结构,其示例在本文中进一步讨论。帧速率和gop译码结构可通过使用任何合适的技术或诸技术来确定。例如,帧速率和gop译码结构可由用户或应用等来选择。

如图1所示,速率控制模块101可针对视频121的个体图片确定量化参数(qp)122。例如,速率控制模块101可将量化参数122提供至编码模块104和/或编码模块107。如本文所使用的,量化参数122可被表征为基于速率控制的量化参数,使得量化参数122是基于速率控制方法来生成的。此类速率控制方法可包括任何合适的技术或诸技术。量化参数122可被用于经由编码模块104来对非长期参考图片进行编码(例如,如所标示的编码(qp))以产生经编码图片(ep)125,且量化参数122可通过调整因子或增量qp(δqp)来调整,且经调整的量化参数或译码量化参数(例如,qp-δqp))可被用于经由编码模块107来对长期参考图片进行译码(例如,如所标示的编码(qp-δqp))以生成经编码图片(ep)127。针对长期参考图片的量化参数122到经减小译码量化参数的这种减小可提供质量增加的长期参考图片,并且由此可有效地在长期参考图片与非长期参考图片之间分配比特。

同样如所示,长期参考图片决策模块102可接收视频121,并且长期参考图片决策模块102可针对视频121的每个图片生成长期参考图片决策(ltrpd)123。长期参考图片决策模块102可使用任何合适的技术或诸技术来生成长期参考图片决策123。在实施例中,视频121的每个帧内图片可被指派为长期参考图片,使得长期参考图片决策123指示视频121的所有帧内图片都是长期参考图片(例如,经由比特或指示符等)并且长期参考图片决策123指示视频121的所有非帧内图片都是非长期参考图片(例如,经由比特或指示符等)。替代地或附加地,视频121的每个场景改变图片可被指派为长期参考图片。在此类示例中,长期参考图片决策123可指示视频121的所有场景改变图片是长期参考图片(例如,经由比特或指示符等)。可使用任何合适的技术或诸技术来检测此类场景变化图片。在实施例中,个体帧的时间相关性可与预定阈值进行比较,使得如果时间相关性大于阈值,则个体帧被认为是场景改变帧。

在其他实施例中,长期参考图片决策模块102能以固定间隔指派或插入长期参考图片。例如,如果视频121的内部图片间隔小于(或不超过)阈值,则帧内图片间隔可被用作固定间隔,并且帧内图片或者帧内图片和场景改变图片两者可被选为长期参考图片。帧内图片间隔阈值可被预先设置并且可以是任何合适的值。在实施例中,帧内图片间隔阈值是1秒。如果帧内图片间隔大于(或者大于或等于)帧内图片间隔阈值,则能以固定间隔或以视频121的gop大小的倍数的间隔来指派长期参考图片,等等。例如,对于低延迟(ld)译码,可使用诸如每1秒、每半秒之类的固定间隔。对于分级b(hb)译码,长期参考图片间隔可被选择为视频121的gop大小的倍数。例如,如果gop大小是4张图片,则长期参考图片间隔可以每8、16、32或64张图片。例如,如果gop大小是8张图片,则长期参考图片间隔可以每16、32或64张图片。在一些示例中,可基于将gop大小乘以诸如2、4、8或16之类的乘数或因子来确定长期参考图片间隔。虽然讨论集中在整数乘数或因子上,但乘数或因子可以是诸如2.5之类的非整数值。

如所讨论的,长期参考图片决策123可提供视频121中长期参考图片和非长期参考图片的信号。可使用任何合适的技术或诸技术来执行此类信令。如经由长期参考图片评估模块105所示出的,如果视频121的图片是非长期参考图片,则可使用量化参数122经由编码模块104对图片进行编码。

如所示,如果视频121的图片是长期参考图片,则可使用基于量化参数122以及调整因子或增量qp(δqp)的调整的译码量化参数(例如,针对图片的基于速率控制的qp)经由编码模块107对图片进行编码。译码量化参数的这种减小可为译码提供较少的qp,使得长期参考图片具有较好的质量以实现对视频121的其他图片的较好预测。例如,时间相关性模块103可接收视频121,并且时间相关性模块103可生成至少与视频121的长期参考图片相关联的时间相关性数据(tcd)124。量化参数调整模块106可接收时间相关性数据124,并且量化参数调整模块106可基于时间相关性数据124生成调整因子(δqp)126,调整因子(δqp)126可从量化参数122扣除以生成用于对长期参考图片进行译码的译码量化参数(例如,qp-δqp)。

时间相关性数据124可包括指示或表示针对视频121的图像的时间相关性的任何合适的数据、值、指示符等。在一个实施例中,时间相关性数据124可包括通过对经降采样视频121的运动估计而获得的统计。在此类示例中,量化参数调整模块106可基于此类统计来生成调整因子126。

在实施例中,时间相关性数据124可包括视频121的图片中具有小运动向量的块(例如,小运动向量块)的数量以及全部块的数量。在实施例中,时间相关性数据124可包括视频121的图片中具有小运动向量的块的数量与全部块的数量的比率。如果比率被提供,则量化参数调整模块106可基于比率生成调整因子126。如果比率未被提供,则量化参数调整模块106可任选地生成比率,并且量化参数调整模块106可基于比率和/或所接收的具有小运动向量的块的数量以及全部块的数量来生成调整因子126。

例如,小运动向量块可以是具有小运动的块以使得运动向量的水平分量的绝对值和运动向量的垂直分量的绝对值之和小于(或不超过)预选阈值。例如,小运动向量块可具有满足等式(1)的运动向量:

|mv_horizontal|+|mv_vertical|<threshold

((|mv_水平|+|mv_垂直|<阈值))(1)

其中mv_horizontal(mv_水平)可以是块的运动向量的水平分量,mv_vertical(mv_垂直)可以是块的运动向量的水平分量,并且阈值可以是预选的阈值。此类小运动向量块与块的总数量的较大比率可指示较高的时间相关性(例如,低运动),并且可由量化参数调整模块106生成较大调整因子126。虽然关于运动向量分量的绝对值的和来进行讨论,但可使用任何合适的技术或诸技术来确定小运动向量块。

在一些实施例中,时间相关数据124可包括视频121的图片的预测失真。例如,预测失真可以是对预测图片与实际图片之间的差异的测量(例如,预测图片和实际输入图片的像素值之间的绝对差的和、差的平方和等)。较小的预测失真可指示较高的时间相关性(例如,低运动),并且可由量化参数调整模块106生成较大的调整因子126。

如所讨论的,时间相关性数据124可由量化参数调整模块106接收,并且量化参数调整模块106可基于时间相关性数据124生成针对长期参考图片的调整因子(δqp)126。例如,调整因子126可基于视频121的时间相关性来提供量化参数调整,使得调整因子126对于较高时间相关性较大且对于较低时间相关性较小。例如,如果视频121中存在高时间相关性,则提供较低译码量化参数(并且由此提供较高译码质量)可能是有利的,因为在高时间相关性环境中(例如,具有很少运动的环境中),人眼会容易地感知到低视频质量。如果视频121中存在低时间相关性(例如,大运动),则人眼可能不易感知到低视频质量,使得可允许较高的qp。

如所示,经由编码模块107,可从量化参数122扣除调整因子126(例如,δqp),并且编码模块107可使用经调整qp(例如,译码量化参数)对长期参考图片进行译码。例如,译码量化参数可以是基于速率控制的量化参数与调整因子之间的差。此外,在一些实施例中,对于视频121的序列中的第一内部帧或场景改变帧,调整因子126(例如,δqp)可以是预定值,使得提供已知质量的图片译码。对于后续长期参考图片,如所讨论的,可基于估计的时间相关性来确定调整因子126(例如,δqp),使得时间相关性越高,δqp越大。

在一些实施例中,量化参数调整模块106可基于预见分析(lookaheadanalysis)(例如,可缓冲一组未来图片并且可在对当前图片编码之前对此类图片进行时间相关性分析)生成针对长期参考图片的调整因子126(例如,δqp)。此类预见分析可提供基于未来帧的时间相关性来确定调整因子126。在其他实施例中,调整模块106可仅基于过去帧生成调整因子126。例如,可基于上一长期参考图片与当前长期参考图片之间帧的时间相关性的加权平均来生成调整因子126。在实施例中,所讨论的具有小运动向量的块的数量与块的总数量之间的比率的加权平均以及所讨论的时间失真的加权平均可被用于访问包含一组调整因子的查找表。例如,比率和时间失真的加权平均值可被用于访问查找表以提供针对当前长期参考图片的调整因子126。

如所描述的,编码模块107可使用经调整qp(例如,译码量化参数)对长期参考图片进行译码,使得译码量化参数可以是基于速率控制的量化参数(例如,量化参数122)与δqp(例如,调整因子126)之间的差。编码模块107可使用任何合适的技术或诸技术使用译码量化参数对长期参考图片进行译码。

如所示,经编码图片125(例如,经编码的非长期参考图片)和经编码图片127(例如,经编码的长期参考图片)可被提供至参考列表管理模块108。经编码图片125和经编码图片127还可经由经编码图片和参考图片列表语法(ep/rpls)128被向前传递至熵编码器以用于熵译码并插入至比特流129中。

参考列表管理模块108可生成参考图片列表语法,该参考图片列表语法包括管理经译码的图片(例如,用于对其他图片进行译码的参考图片)向短期和/或长期参考图片列表中的插入的指示符。例如,参考图片列表语法可提供针对可应用视频编解码器的参考列表管理方案并且可被编码和传送,使得解码器可保留和管理参考图片,使得它们可用作用于对后续图片进行解码(例如,按译码次序)的参考图片。

例如,编解码器可提供一个或两个短期参考图片列表和长期参考图片列表。当只有后顾型(例如,在时间上向后)预测被提供或可用时,单个后顾型短期参考图片列表可连同长期参考图片列表一起使用。当后顾型和前瞻型预测被提供或可用时,可提供两个短期参考图片列表:后顾型短期参考图片列表和前瞻型短期参考图片列表。应该理解,只有插入至参考图片列表中任一者中的图片可用于对当前图片进行译码。

在实施例中,参考图片列表语法可包括用于在长期参考图片的译码完成之际将经译码的长期参考图片插入至短期参考列表中的指示符。请注意,尽管经译码的长期参考图片是长期参考图片,但其不会立即被插入长期参考图片列表中,使得先前长期参考图片可被保留。此外,参考图片列表语法可包括用于仅在长期参考图片已从短期参考图片列表移除之后将长期参考图片插入至长期参考图片列表中的指示符。在使用单个短期参考列表的实施例中,仅在长期参考图片已从单个短期参考图片列表移除之后将长期参考图片插入至长期参考图片列表中。在使用后顾型和前瞻型短期参考列表的实施例中,长期参考图片可在已从短期参考图片列表中的一个被移除之后或者仅在已从两个短期参考图片列表被移除之后被插入至长期参考图片列表中。此类技术在本文中更详细地讨论。

继续参看图1,经编码图片和参考图片列表语法128可由熵编码器109接收,并且熵编码器109可将经编码图片和参考图片列表语法128译码成比特流129。熵编码器109可使用任何合适的技术或诸技术(诸如,内容自适应编码技术等)将经编码图片和参考图片列表语法128译码成比特流129。比特流129可以是任何合适的比特流,诸如符合标准的比特流。例如,比特流129可以是符合高级视频译码(avc)的比特流、符合高效视频译码(hevc)的比特流、符合vp8的比特流、符合vp9的比特流等。

图2例示出根据本公开至少一些实现来布置的示例图片序列200。参看图1,视频121可包括图片序列200。在实施例中,图片序列200可以是低延迟(ld)译码图片序列。如图2所示,图片序列200可包括图片201、202以及211-219,使得图片201、202是长期参考图片(用灰色填充来例示)而图片211-219是非长期参考图片。图片201、202和211-219的相对高度可指示用于对图片进行译码的近似比特数量。此外,图片序列200可具有如下显示次序:图片201,图片211-214,任何中间图片,图片215、216,图片202,图片217、218等。以上讨论的参考图片列表语法可关于图片序列200和表1来例示,表1提供针对图片序列200的示例短期和长期参考列表。

表1:示例参考图片列表方案

如表1所示,可针对图片序列200提供编码次序,使得编码次序为:图片202(例如,长期参考图片ln3)、图片217(例如,ln4)、图片218(例如,ln5)、图片219(例如,ln6)。在完成对图片216(例如,ln2)的译码处开始,要被译码的下一图片是图片202(例如,长期参考图片ln3)。此外,如表1所示,短期(l0)参考图片列表可包括(先前译码的)图片215、216(例如,ln2、ln1)而长期(lt)参考图片列表可包括(先前译码的)图片201(例如,长期参考图片l0)。随后可如本文所述的那样经由编码模块107使用经调整译码量化参数来对图片202(例如,长期参考图片ln3)进行译码。

在对图片202(例如,长期参考图片ln3)进行译码之后,要被译码的下一图片是图片217(例如,ln4),并且如经由参考列表管理模块108生成的参考图片列表语法可提供将图片202(例如,长期参考图片ln3)插入如表1所示的短期(l0)参考图片列表中。例如,参考图片列表语法可包括用于在紧接对图片202(例如,长期参考图片ln3)的译码之后或响应于对图片202的译码插入图片202(例如,长期参考图片ln3)的指示符或信号等。注意图片202(例如,长期参考图片ln3)并非立即被插入至长期(lt)参考图片列表中并且先前长期参考图片l0被保留在长期(lt)参考图片列表中。在此类上下文中,图片202(例如,长期参考图片ln3)可被表征为未来长期参考图片,因为图片202当前在短期(l0)参考图片列表上,但是将会如下文所讨论的那样基于参考图片列表语法被移动至长期(lt)参考图片列表。

随后可如本文所讨论的那样经由编码模块104使用基于速率控制的量化参数(例如,量化参数122)对图片217(例如,ln4)进行译码。在对图片217(例如,ln4)译码之后,要译码的下一图片是图片218(例如,ln5),并且如经由参考列表管理模块108生成的参考图片列表语法可提供经由指示符或信号等将图片217(例如,ln4)插入至如表1所示的短期(l0)参考图片列表中。注意,在将图片217(例如,ln4)插入至短期(l0)参考图片列表的上下文中,图片202(例如,长期参考图片ln3)尚未被从短期(l0)参考图片列表移除或替换。

随后可如本文所讨论的那样经由编码模块104使用基于速率控制的量化参数(例如,量化参数122)对图片218(例如,ln5)进行译码。在对图片218(例如,ln5)译码之后,要译码的下一图片是图片219(例如,ln6),并且如经由参考列表管理模块108生成的参考图片列表语法可提供经由指示符或信号等将图片218(例如,ln5)插入至如表1所示的短期(l0)参考图片列表中。如所示,图片218(例如,ln5)的插入可从短期(l0)参考图片列表替换或移除图片202(例如,长期参考图片ln3)。由参考列表管理模块108生成的参考图片列表语法可提供将图片218(例如,ln5)插入至短期(l0)参考图片列表中以及在短期(l0)参考图片列表中替换图片202(例如,长期参考图片ln3)时将图片202(例如,长期参考图片ln3)插入至长期(lt)参考图片列表中。

例如,此类技术可提供参考图片列表语法,该参考图片列表语法包括用于在将图片序列200的每个长期参考图片插入至长期参考图片列表中之前将该长期参考图片输入至短期参考图片列表中的指示符。在实施例中,每个长期参考图片紧接在其被译码之后被插入至短期参考图片列表中。此外,所描述技术可提供参考图片列表语法,该参考图片列表语法包括用于在使图片序列200的每个长期参考图片从短期参考图片列表退出或被移除之后将该长期参考图片插入至长期参考图片中的指示符。在一些示例中,短期或长期参考图片列表可被表征为参考列表或参考帧列表等。此外,在图2和表1的示例中,短期参考图片列表限于两个条目,而长期参考图片列表限于一个条目。然而,短期和长期参考图片列表可提供任意数量的条目。例如,一些编解码器提供对多达16个参考图片的使用(被插入至短期和长期参考图片列表中的参考图片的总数可高达16等等)。此外,如本文所使用的术语“插入至参考图片列表中”意指指示代表参考图片的信号、指示符、指针等等被保持在数据结构中。例如,实际参考图片可被保持在诸如经译码图片缓冲器之类的存储器中。

图2和表1的示例例示出具有单个短期参考图片列表的实现。在此类示例中,长期参考图片可如所描述的那样当在短期参考图片列表中退出或被替换时被插入至长期参考图片列表中。例如,短期参考图片列表可以是后顾型参考图片列表,因为这些图片在时间上和译码次序上都在当前要被译码的图片之前。在其他示例中,可实现多个短期参考图片列表。例如,前瞻型短期参考图片列表和后顾型短期参考图片列表可连同长期参考图片列表一起被保持。例如,后顾型短期参考图片列表可包括时间上在当前图片之前的图片的列表,而前瞻型短期参考图片列表可包括时间上在当前图片之后的图片的列表。当然,所有参考图片在译码次序上必须在要被译码的当前图片之前。

图3例示出根据本公开至少一些实现来布置的示例图片序列300。参看图1,视频121可包括图片序列300。在实施例中,图片序列300可以是分级(hb)译码图片序列。如图3所示,图片序列300可包括图片301、302以及311-326,使得图片301、302是长期参考图片(用灰色填充来例示)而图片311-326是非长期参考图片。图片301、302以及311-326的相对高度可指示用于对图片进行译码的近似比特数,并且图片序列300可具有以下显示次序:图片301、图片311-314、任何中间图片、图片315-319、图片302、图片319-326等等。关于图3和本文别处所讨论的参考图片列表语法可关于图片序列300和表3来例示,表3提供针对图片序列300的示例短期和长期参考列表。

表2:示例参考图片列表方案

如表2所示,可针对图片序列300提供编码次序,使得编码次序为:图片317(例如,ln2)、图片316(例如,ln1)、图片318(例如,ln3)、图片322(例如,ln8)、图片320(例如,ln6)、图片319(例如,ln5)、图片321(例如,ln7)、图片326(例如,ln12)。在完成对图片302(例如,长期参考图片302)的译码处开始,要被译码的下一图片是317(例如,ln2)。例如,已如本文所述的那样经由编码模块107使用经调整译码量化参数对图片302(例如,长期参考图片302)进行译码。此外,如表2所示,短期后顾型(l0)参考图片列表可包括(先前译码的)图片315(例如,ln0)和(先前译码的)图片(未示出)ln0-2(例如,先于ln0两个图片的图片;ln0-2可被读作ln零减二),短期前瞻型(l1)参考图片列表可包括(紧接先前译码的)图片302(例如,长期参考图片302),以及长期(lt)参考图片列表可包括(先前译码的)图片301(例如,长期参考图片l0)。

例如,参考图片列表语法可包括用于在紧接对图片302(例如,长期参考图片ln3)的译码之后或响应于对图片302的译码将图片302(例如,长期参考图片ln3)插入至短期后顾型(l0)参考图片列表中的指示符或信号等。注意图片302(例如,长期参考图片ln4)并非立即被插入至长期(lt)参考图片列表中并且先前长期参考图片l0被保留在长期(lt)参考图片列表中。在此类上下文中,图片302(例如,长期参考图片ln4)可被表征为未来长期参考图片,因为图片202当前在短期参考图片列表(例如,l0或l1)上,但是将会如下文所讨论的那样基于参考图片列表语法被移动至长期(lt)参考图片列表。

随后可如本文所讨论的那样经由编码模块104使用基于速率控制的量化参数(例如,量化参数122)对图片317(例如,ln2)进行译码。在对图片317(例如,ln2)译码之后,要译码的下一图片是图片316(例如,ln1),并且如经由参考列表管理模块108生成的参考图片列表语法可提供将图片317(例如,ln2)插入至短期前瞻型(l1)参考图片列表中。如所示,参考图片列表l0和lt保持不变。

随后可如本文所讨论的那样经由编码模块104使用量化参数122对图片316(例如,ln1)进行译码。在对图片316(例如,ln1)译码之后,要译码的下一图片是图片318(例如,ln3),并且如经由参考列表管理模块108生成的参考图片列表语法可提供将图片317(例如,ln2)插入至短期后顾型(l0)参考图片列表中以及从短期前瞻型(l1)参考图片列表移除图片317(例如,ln2)。如所示,参考图片列表lt保持不变。

随后可如本文所讨论的那样经由编码模块104使用量化参数122对图片318(例如,ln3)进行译码。在对图片318(例如,ln3)译码之后,要译码的下一图片是图片322(例如,ln8),并且如经由参考列表管理模块108生成的参考图片列表语法可提供将图片320(例如,长期参考图片ln4)插入至短期后顾型(l0)参考图片列表中(替换图片315(例如,ln0)并使图片列表l1为空)。如所示,参考图片列表lt保持不变。

随后可如本文所讨论的那样经由编码模块104使用量化参数122对图片322(例如,ln8)进行译码。在对图片322(例如,ln8)译码之后,要译码的下一图片是图片320(例如,ln6),并且如经由参考列表管理模块108生成的参考图片列表语法可提供将图片322(例如,ln8)插入至短期前瞻型(l1)参考图片列表中。如所示,参考图片列表l0和lt保持不变。

随后可如本文所讨论的那样经由编码模块104使用量化参数122对图片320(例如,ln6)进行译码。在对图片320(例如,ln6)译码之后,要译码的下一图片是图片319(例如,ln5),并且如经由参考列表管理模块108生成的参考图片列表语法可提供将图片320(例如,ln6)插入至短期前瞻型(l1)参考图片列表中。如所示,参考图片列表l0和lt保持不变。

随后可如本文所讨论的那样经由编码模块104使用量化参数122对图片319(例如,ln5)进行译码。在对图片319(例如,ln5)译码之后,要译码的下一图片是图片321(例如,ln7),并且如经由参考列表管理模块108生成的参考图片列表语法可提供将图片320(例如,ln6)插入至短期后顾型(l0)参考图片列表中(例如,替换317(例如,ln2))以及从短期前瞻型(l1)参考图片列表移除图片320(例如,ln6)。如所示,参考图片列表lt保持不变。

随后可如本文所讨论的那样经由编码模块104使用量化参数122对图片321(例如,ln7)进行译码。在对图片321(例如,ln7)译码之后,要译码的下一图片是图片326(例如,ln12),并且如经由参考列表管理模块108生成的参考图片列表语法可提供将图片322(例如,ln8)插入至短期后顾型(l0)参考图片列表中(替换318(例如,ln4)并使参考图片列表l1为空)。如所示,图片322(例如,ln8)的插入可从短期后顾型(l0)参考图片列表替换或移除图片302(例如,长期参考图片ln4)。如由参考列表管理模块108生成的参考图片列表语法可提供在图片302(例如,长期参考图片ln4)已从短期参考图片列表l0和l1两者中退出或被替换时将图片302(例如,长期参考图片ln4)插入至长期(lt)参考图片列表。

如所示,图片302(例如,长期参考图片ln4)可在对图片322(例如,ln8)编码时从短期前瞻型(l1)参考图片列表退出而在对图片326(例如,ln12)编码时从短期后顾型(l0)参考图片列表退出。如所讨论的,如经由参考列表管理模块108生成的参考图片列表语法可提供仅在图片302(例如,长期参考图片ln4)已退出短期前瞻型(l1)参考图片列表和短期后顾型(l0)参考图片列表l1时将图片302(例如,长期参考图片ln4)插入至长期(lt)参考图片列表中。

例如,此类技术可提供参考图片列表语法,该参考图片列表语法包括用于在将图片序列300的每个长期参考图片插入至长期参考图片列表中之前将该长期参考图片输入至短期参考图片列表(前瞻型或后顾型)中的指示符。在实施例中,每个长期参考图片紧接在其被译码之后被插入至短期参考图片列表中。此外,所描述技术可提供参考图片列表语法,该参考图片列表语法包括用于在使图片序列300的每个长期参考图片从任何或所有短期参考图片列表退出或被移除之后将该长期参考图片插入至长期参考图片中的指示符。在其他实施例中,参考图片列表语法可包括用于在图片序列300的长期参考图片从多个短期参考图片列表中的一个退出或被移除之后,将该长期参考图片插入至长期参考列表中的指示符。例如,在表2的上下文中,可在对图片322(例如,ln8)译码时将图片302(例如,长期参考图片ln4)从短期前瞻型(l1)参考图片列表移除之后将图片302(例如,长期参考图片ln4)插入至长期(lt)参考图片列表中。在图3和表2的示例中,两个短期参考图片列表限于两个条目,而长期参考图片列表限于一个条目。然而,短期和长期参考图片列表可提供任何数量的条目,诸如多达16个参考图片等。

图4是例示出根据本公开的至少一些实现来布置的用于视频译码(包括对长期参考图片进行译码)的示例过程400的流程图。过程400可包括一个或多个操作401-411,如图4所例示的那样。过程400可由设备(例如,如本文讨论的系统100)执行以对视频序列进行译码(包括对长期参考图片进行译码)。过程400可在视频序列层级或图片组层级执行,并且过程400可针对任何数量的视频序列或图片组而重复。

过程400可始于操作401,其中可获得图片结构组、帧速率和视频序列。可使用任何合适的技术或诸技术来获得图片结构组、帧速率和视频序列。在实施例中,图片结构、帧速率和视频序列可由诸如系统100之类的系统接收。例如,应用或用户可诱发系统100提供视频译码,并且该诱发可包括图片结构、帧速率和视频序列。

处理可在操作402处继续,其中可针对在操作401处获得的视频序列来确定长期参考图片。可使用任何合适的技术或诸技术来确定或指派长期参考图片。在实施例中,长期参考图片决策模块102可针对视频序列确定或指派长期参考图片。在实施例中,视频序列的所有帧内图片可被指派为长期参考图片。在实施例中,视频序列的所有检测到的场景改变可被指派为长期参考图片。在实施例中,可以以预定间隔或基于将视频序列的一组图片大小乘以预定乘数而确定的间隔将长期参考图片指派给视频序列。

处理可在操作403处继续,其中可针对译码选择视频序列的图片。可在操作403的第一次迭代中选择图片作为用于视频序列的译码次序中的第一个,并且在操作403的后续迭代中,可选择译码次序中的后续图片。

处理可在操作404处继续,其中可针对在操作404处选择的图片生成基于速率控制的量化参数(qp)。可使用任何合适的技术或诸技术来生成基于速率控制的量化参数,诸如标准速率控制操作,包括速率失真优化等。

处理可在决策操作405处继续,其中可作出关于在操作403处选择的图片是否是长期参考图片(ltrp)的判定。如果不是,则处理可在操作406处继续,其中可使用在操作404处生成的基于速率控制(rc)的量化参数来对所选图片进行译码。例如,编码模块104可对非长期参考图片进行译码。

如果在操作403选择的图片是长期参考图片,则处理可在操作407继续,其中可通过基于所选长期参考图像处或附近的视频序列的时间相关性的调整因子(δqp)来调整基于速率控制的量化参数(rcqp)。如所讨论的,在一些实施例中,视频序列中的第一长期参考图片可具有预定调整因子,使得可不提供基于时间相关性的调整。此类技术可为第一长期参考图片提供易于实现和已知的质量增强。此类预定调整因子例如可在操作407的第一次迭代中被应用。

在操作407的后续迭代中,如所讨论的,可通过基于所选长期参考图片处或附近的视频序列的时间相关性的调整因子(δqp)来调整基于速率控制的量化参数。可使用任何合适的技术或诸技术来确定时间相关性。例如,通过视频序列的降采样视频上的运动估计获得的统计可被用于确定调整因子。在实施例中,可基于视频序列的图片中具有小运动向量的块的数量与全部块的数量的比率来确定调整因子。在实施例中,可基于预测失真预测失真来确定调整因子。在实施例中,可使用比率和预测失真两者。此外,可使用用于时间上相邻且包括所选长期参考图片的任何数量的图片的此类比率和/或预测失真。如果使用前瞻型预测,则可使用前顾型图片(例如,按图片呈现次序)的时间相关性。如果仅使用后顾型预测,则只可使用后顾型图片(例如,按图片呈现次序)的时间相关性。在实施例中,可对此类可用图片的比率和预测失真进行加权并求和,并且所得加权比率和预测失真可被用于访问一组调整因子(δqp)的查找表以确定针对所选长期参考图片的调整因子(δqp)。

处理可在操作408处继续,其中可使用在操作407处生成的经调整量化参数(例如,译码量化参数)来对所选长期参考图片进行译码。例如,编码模块107可基于经调整量化参数(例如,译码量化参数)对长期参考图片进行译码。

处理可从操作406或408继续至操作409,其中可如本文所讨论的那样管理短期和长期参考图片列表。例如,在操作409处,可生成参考图片列表语法,包括用于将参考图片或诸图片插入至列表中、在列表之间移动图片或诸图片、从列表移除图片或诸图片等等的指示符或信号等。例如,在操作406或408处译码的图片可基于其作为后续图片的译码的参考的需要被插入至短期参考图片列表中。此外,响应于在操作406或408处译码的图片被插入至短期参考图片列表中,先前的长期参考图片可从短期参考图片列表或诸列表移动至长期参考图片列表。此外,如果所选图片是长期参考图片并且在操作408处被译码,则可生成标志或指示符,使得在从短期参考图片列表或诸列表被替换或退出之际,该长期参考图片将被插入至长期参考图片列表。此类技术已关于图2和图3以及表1和表2进行讨论过,并且关于图5进行进一步详细讨论。

处理可在决策操作410处继续,其中可作出关于在操作403处选择的图片是否是要被译码的最后图片的判定。如果是,处理可结束于操作411。如果不是,则处理可在操作403处继续,其中可选择视频序列中的后续图片以用于如文本所讨论的译码和进一步处理。此外,尽管在图4中未示出,但在操作406、408处译码的图片和在操作409处生成的参考图片列表语法可经由熵编码技术等被译码成比特流。此类译码可在序列的所有图片被处理之后、在特定数量的图片被处理之后、以实时方式等被执行。

图5是例示出根据本公开的至少一些实现来布置的用于管理参考图片列表的示例过程500的流程图。过程500可包括一个或多个操作501-507,如图5所例示的那样。过程500可由设备(例如,如本文讨论的系统100)执行以管理参考图片列表并生成参考图片列表语法。过程500可在图片层级、视频序列层级或图片组层级执行,并且过程500可针对任何数量的图片、视频序列或图片组而重复。

过程500可始于操作501,其中可如本文所讨论的那样对图片进行译码,使得用经调整译码量化参数对长期参考图片进行译码,而用基于速率控制的量化参数对非长期参考图片进行译码。

处理可在操作502处继续,其中可将经译码的图片被插入至短期参考列表中。如所描述的,如本文所使用的,术语“将经译码图片插入至参考列表中”是指数据结构的指示经译码图片要被保存为参考图片的任何修改。经译码图片本身可被存储或保存在诸如图片缓冲器之类的存储器中。如以上所讨论的,图片向短期参考列表中的插入可基于作为用于图片序列的未来(例如,以编码次序)图片的参考图片所需的图片。例如,如果在操作501处译码的图片将成为未来图片的后顾型参考图片,则在操作501处译码的图片可被插入至后顾型短期参考图片列表中,或者如果仅使用后顾型参考图片,则在操作501处译码的图片可被插入至短期参考图片列表。如果在操作501处译码的图片将成为未来图片的前瞻型参考图片,则在操作501处译码的图片可被插入至前瞻型短期参考图片列表中。无论在操作501处译码的图片是长期参考图像还是非长期参考图像,都可以执行操作502。如果在操作501处译码的图片是长期参考图像,则可设置附加标志或指示符等,使得长期参考图像可被表征为未来长期参考图像,并且长期参考图像从短期参考图片列表或诸列表的移除可触发长期参考图像向长期参考图像列表的移动。

处理可在决策操作503处继续,其中可做出关于操作502是否导致长期参考图片(ltrp)从短期参考图片列表或全部短期参考图片列表被替换或移除或者退出等的判定。如所讨论的,如果仅使用单个短期参考图片列表,则对长期参考图片的移除可触发其向长期参考图片列表的移动。如果使用多个短期参考图片列表,则在一些实施例中,长期参考图片从所有此类列表的移除可触发其向长期参考列表的移动。如所示,如果长期参考图片未被从短期参考图片列表或所有此类列表移除,则处理可在操作505处如以下所讨论的那样继续。

如果长期参考图片(例如,未来长期参考图片)被从短期参考图片列表或所有此类列表移除,则处理可在操作504处继续。注意,在使用多个短期参考列表的实施例中,过程500可能需要在操作503处从所有此类列表移除未来长期参考图片,以使过程在操作504处继续进行。然而,在其他实施例中,从多个短期参考列表中的一个移除未来长期参考图片可导致过程500从操作503继续进行至操作504处。

在操作504处,将在操作502处被替换的未来长期参考图片移动或插入至长期参考图片列表中。注意,与将长期参考图片立即插入至长期参考图片列表中相比,延迟长期参考图片的插入直到将其从此类短期参考列表移除可允许先前长期参考图片保留较长的持续时间。此类技术可提供较多要被保留以用于预测等的高质量图片。

处理可从操作503继续(如果长期参考图片在短期参考列表或诸列表中未被替换)或从操作504继续至操作505处,其中可以生成参考图片列表语法。如本文所讨论的,参考图片列表语法可基于对长期参考图片的选择、译码以及被译码的视频序列的图片结构来指示哪些图片要被插入至可用的短期和长期参考图片列表以及从可用的短期和长期参考图片列表移动、移除等。可使用任何合适的技术或诸技术来实现此类参考图片列表语法。例如,参考图片列表语法可包括将按照编码次序在每个图片中包括在此类列表中的图片列表或者指示图片要被插入此类列表以及从此类列表移除等的指示符。

处理可在决策操作506处继续,其中可作出关于在操作501处译码的图片是否是要被译码的最后图片的判定。如果是,处理可结束于操作507。如果不是,则处理可继续,视频序列中的后续图片被选择用于译码(未示出),所选图片在操作501处被译码,并且如本文所讨论的那样进行进一步处理。此外,尽管在图5中未示出,但在操作501处译码的图片和在操作505处生成的参考图片列表语法可经由熵编码技术等被译码成比特流。此类译码可在序列的所有图片被处理之后、在特定数量的图片被处理之后、以实时方式等被执行。

图6示出根据本公开至少一些实现来布置的示例比特流600。在一些示例中,比特流600可与如图1所示的比特流129相对应。如图6所示,在一些示例中,比特流600可包括头部部分601和数据部分602。在一些示例中,可经由比特流600来提供参考图片列表语法指示符,该参考图片列表语法指示符包括指示哪些图片将被保持在短期和长期参考图片列表中、图片进出此类列表的移动等等的指示符或标志或比特等等。例如,可经由比特流600来提供用于特定图片或视频序列或图片组等等的参考图片列表语法指示符。此外,数据部分602可包括针对经译码图片的经编码图片数据621。例如,经编码图片数据621可包括经编码图片125和/或经编码图片127等的表示。此类经编码图片数据621可包括例如经编码量化变换系数、经编码运动向量数据、经编码图片重构数据等。

图7是例示出根据本公开的至少一些实现来布置的用于视频译码(包括对长期参考帧进行译码)的示例过程700的流程图。过程700可包括一个或多个操作701-705,如图7所例示的那样。过程700可形成视频译码过程的至少部分。作为非限制性示例,过程700可形成由如本文讨论的任何设备或系统(例如,系统100)执行的视频译码过程的至少一部分。此外,本文将参考图8的系统800来描述过程700。

图8是例示出根据本公开的至少一些实现来布置的用于视频译码(包括对长期参考帧进行译码)的示例系统800的示图。如图8所示,系统800可包括中央处理器801、视频处理器802以及存储器803。同样如所示,视频处理器802可包括速率控制模块101、长期参考图片决策模块102、时间相关性模块103、编码模块104、量化参数调整模块106、编码模块107、参考列表管理模块108和熵编码器109。在系统800的示例中,存储器803可存储视频数据或有关内容,诸如视频、视频数据、图片数据、帧数据、图片数据组、图片类型数据、量化参数、时间相关性数据、量化参数调整因子、δ量化参数、经编码图片数据、短期参考图片列表、长期参考图片列表、参考图片列表语法数据、比特流数据、控制数据和/或如本文讨论的任何其他数据。

如所示,在一些示例中,速率控制模块101、长期参考图片决策模块102、时间相关性模块103、编码模块104、量化参数调整模块106、编码模块107、参考列表管理模块108和熵编码器109可经由视频处理器802来实现。在其他示例中,速率控制模块101、长期参考图片决策模块102、时间相关性模块103、编码模块104、量化参数调整模块106、编码模块107、参考列表管理模块108和熵编码器109中的一个或多个或部分可经由中央处理器801或者诸如图像处理器、图形处理器之类的另一处理单元来实现。

视频处理器802可包括能提供如本文所论述的操作的任何数量和类型的视频、图像或图形处理单元。此类操作可经由软件或硬件或其组合来实现。例如,视频处理器802可包括专用于操纵从存储器803获得的图片、图片数据等的电路。中央处理器801可包括能提供用于系统800的控制和其他高级功能和/或提供如本文所讨论的操作的任何数量和类型的处理单元或模块。存储器803可以是任何类型的存储器,诸如易失性存储器(例如,静态随机存取存储器(sram)、动态随机存取存储器(dram)等)或者非易失性存储器(例如,闪存等)等等。在非限制性示例中,存储器703可通过高速缓存存储器来实现。

在实施例中,速率控制模块101、长期参考图片决策模块102、时间相关性模块103、编码模块104、量化参数调整模块106、编码模块107、参考列表管理模块108和熵编码器109中的一个或多个或部分可经由执行单元(eu)来实现。eu可包括例如可编程逻辑或电路,诸如可提供广泛的可编程逻辑功能的逻辑核或诸逻辑核。在实施例中,速率控制模块101、长期参考图片决策模块102、时间相关性模块103、编码模块104、量化参数调整模块106、编码模块107、参考列表管理模块108和熵编码器109中的一个或多个或部分可经由诸如固定功能电路之类的专用硬件来实现。固定功能电路可包括专用逻辑或电路,并且可提供一组固定功能进入点,这组固定功能进入点可映射至用于固定目的或功能的专用逻辑。

返回对图7的讨论,过程700可始于操作701,其中可针对图片序列确定或选择一个或多个长期参考图片。可使用任何合适的技术或诸技术来针对图片序列确定或选择一个或多个长期参考图片。在实施例中,如经由视频处理器802实现的长期参考图片决策模块102可确定针对图片序列的一个或多个长期参考图片。在实施例中,确定一个或多个长期参考图片可包括将图片序列的所有帧内图片指派为长期参考图片,和/或将图片序列中所有检测到的场景改变图片指派为长期参考图片。在实施例中,确定一个或多个长期参考图片可包括以满足以下条件的间隔(例如,时间间隔或图片号码间隔)来指派长期参考图片:使得该间隔是预定间隔或者使得该间隔是基于将图片序列的一组图片大小与预定乘数相乘来确定的。

处理可在操作702处继续,其中可针对长期参考图片中的个体长期参考图片调整基于速率控制的量化参数以生成针对个体长期参考图片的译码量化参数。可使用任何合适的技术或诸技术来生成基于速率控制的量化参数。此外,可使用任何合适的技术或诸技术来调整基于速率控制的量化参数。在实施例中,如经由视频处理器802实现的速率控制模块101可生成针对个体长期参考图片的基于速率控制的量化参数,如经由视频处理器802实现的量化参数调整模块106可调整基于速率控制的量化参数以生成针对个体长期参考图片的译码量化参数。在实施例中,调整基于速率控制的量化参数可包括通过基于与个体长期参考图片相关联的时间相关性确定的调整因子来减小基于速率控制的量化参数。例如,如经由视频处理器802实现的时间相关性模块103可提供时间相关性数据,以及经由视频处理器802实现的量化参数调整模块106可生成调整因子。

在实施例中,可确定用于将基于速率控制的量化参数调整为译码量化参数的调整因子,使得调整因子基于针对图片序列的一个或多个图片的小运动块的数量与块的总数量的比率,或者与图片序列的一个或多个图片相对应的预测失真成本中的至少一者。在实施例中,调整因子可基于针对时间上接近个体长期参考图片(时间上之前和/或之后)并任选地包括个体长期参考图片的若干帧的平均比率或加权平均比率和/或平均预测失真成本或加权平均预测失真成本。在实施例中,可针对长期参考图片中的第二长期参考图片来调整第二基于速率控制的量化参数以生成针对第二个体长期参考图片的第二译码量化参数,使得基于比第二长期参考图片具有更高的时间相关性的个体长期参考图片,译码量化参数比第二译码量化参数小。例如,个体长期参考图片比第二长期参考图片具有更高的时间相关性可需要在时间上与个体长期参考图片相邻的图片比在时间上与第二个体长期参考图片相邻的图片具有更高的时间相关性。

处理可在操作703处继续,其中可基于译码量化参数对个体长期参考图片进行译码。可使用任何合适的技术或诸技术来执行对个体长期参考图片的译码。在实施例中,如经由视频处理器802实现的编码模块107可使用满足以下条件的译码量化参数来对个体长期参考图片进行译码:使得该译码量化参数是基于速率控制的量化参数减去调整因子(例如,qp-δqp)。此外,可基于如本文讨论的基于速率控制的量化参数来对非长期参考图片进行译码。在实施例中,如经由视频处理器802实现的编码模块104可对非长期参考图片进行译码。

处理可在操作704处继续,其中可生成包括指示符的参考图片列表语法,该指示符用于在个体长期参考图片在短期参考图片列表中被另一图片替换时将个体长期参考图片插入至长期参考图片列表中。可使用任何合适的技术或诸技术来生成参考图片列表语法。在实施例中,可通过如经由视频处理器802实现的参考列表管理模块108来生成参考图片列表语法。在实施例中,指示符用于指示当个体长期参考图片在单个短期参考图片列表中被替换时,个体长期参考图片向长期参考图片列表中的插入。在另一个实施例中,指示符用于指示当个体长期参考图片在短期后顾型参考图片列表和短期前瞻型参考图片列表两者中被替换时,个体长期参考图片向长期参考图片列表中的插入。在实施例中,参考图片列表语法还包括用于立即响应于对个体长期参考图片的译码将个体长期参考图片插入至短期参考列表中的第二指示符。在实施例中,指示符用于指示长期参考图片列表中由个体长期参考图片对先前长期参考图片的替换。

处理可在操作705处继续,其中可在比特流中提供经译码的个体长期参考图片和参考图片列表语法。例如,可在比特流中提供来自操作703的经译码的个体长期参考图片和来自操作704的参考图片列表语法。可使用任何合适的技术和诸技术在比特流中提供经译码的个体长期参考图片和参考图片列表语法。在实施例中,如经由视频处理器802实现的熵编码器109可提供经译码的个体长期参考图片,并且可在比特流中提供参考图片列表语法。例如,熵编码器109可提供上下文自适应可变长度译码、上下文自适应二进制算术译码等。在操作705处生成的比特流可以是任何合适的比特流,诸如符合标准的比特流。例如,比特流可以是符合高级视频译码(avc)的比特流、符合高效视频译码(hevc)的比特流、符合vp8的比特流、符合vp9的比特流等。

过程700可针对任何数量的图片或图片组或视频序列等而被串行或并行地重复任意次数。如所讨论的,过程700可提供视频编码,包括对长期参考图片进行译码。例如,所讨论的用于视频译码的技术可提供长期参考图片选择、速率控制和参考列表管理以实现改进的效率和视频质量。

可在软件、固件和/或硬件和/或它们的任意组合中实现本文所描述的系统的各种组件。例如,可至少部分地由诸如可在计算系统(诸如例如,智能电话)中找到的计算片上系统(soc)的硬件提供本文所讨论的系统或设备的各种组件。本领域技术人员会领会,本文中所描述的系统可包括未在对应的附图中描绘的附加组件。例如,本文中所讨论的系统可包括诸如为了使本文清楚而未描绘的比特流复用器或解复用器模块之类的附加组件。

虽然本文所讨论的示例过程的实现可包括以所解说的次序示出的全部操作的执行,但本公开不限于此,并且在各个示例中,本文的示例过程的实现可包括所示出的操作的子集、与所解说的不同次序执行的操作、或附加操作。

此外,可响应于由一个或多个计算机程序产品提供的指令来执行本文中所讨论的任何一个或多个操作。此类程序产品可包括提供指令的信号承载介质,当例如由处理器执行这些指令时,这些指令可提供本文所描述的功能。能以一种或多种机器可读介质的任意形式来提供计算机程序产品。因此,例如,包括一个或多个图形处理单元或处理器核的处理器可响应于通过一个或多个机器可读介质转达给处理器的程序代码和/或指令或指令集来执行本文的示例过程中的步骤中的一个或多个。一般而言,机器可读介质能以程序代码和/或指令或指令集的形式来传递软件,这些程序代码和/或指令或指令集可使本文中所描述设备和/或系统中的任一个实现本文所讨论的操作的至少多个部分和/或如本文所讨论的设备、系统或任何模块或组件的任何部分。

如本文所述任意实现所使用的,术语“模块”指的是配置成提供本文所述的功能的软件逻辑、固件逻辑、硬件逻辑和/或电路的任何组合。软件可具体化为软件包、代码和/或指令或指令集,而如本文所述任一实现所使用的,“硬件”可单独或任意组合地包括例如硬接线电路、可编程电路、状态机电路、固定功能电路、执行单元电路和/或存储由可编程电路执行的指令的固件。可将模块整体或单独地具体化为形成较大系统的部分的电路,例如,集成电路(ic)、片上系统(soc)等。

图9是根据本公开的至少一些实现来布置的示例系统900的示例性示图。在各种实现中,系统900可以是移动系统,虽然系统900并不限于此情境。例如,可将系统900结合到个人计算机(pc)、膝上型计算机、超膝上型计算机、平板、触摸板、便携式计算机、手持式计算机、掌上计算机、个人数字助理(pda)、蜂窝电话、组合蜂窝电话/pda、电视机、智能设备(例如,智能电话、智能平板或智能电视)、移动互联网设备(mid)、消息收发设备、数据通信设备、相机(例如,傻瓜相机、超变焦相机、数码单透镜反射(dslr)相机)等中。

在各种实现中,系统900可包括耦合至显示器920的平台902。平台902可接收来自诸如(诸)内容服务设备930或(诸)内容递送设备940或其他类似内容源之类的内容设备的内容。可将包括一个或多个导航特征的导航控制器950用于与例如平台902和/或显示器920交互。在下文中更详细地描述这些组件中的每一个组件。

在各种实现方案中,平台902可包括芯片组905、处理器910、存储器912、天线913、存储914、图形子系统915、应用916和/或无线电918的任意组合。芯片组905可提供处理器910、存储器912、存储914、图形子系统915、应用916和/或无线电918之间的相互通信。例如,芯片组905可包括能够提供与存储914的互通的存储适配器(未描绘)。

可将处理器910实现为复杂指令集计算机(cisc)或精简指令集计算机(risc)处理器、兼容x86指令集的处理器、多核或任何其他微处理器或中央处理单元(cpu)。在各种实现方案中,处理器910可以是(诸)双核处理器、(诸)双核移动处理器等。

可将存储器912实现为易失性存储器设备,诸如但不限于,随机存取存储器(ram)、动态随机存取存储器(dram)或静态ram(sram)。

可将存储914实现为非易失性存储设备,诸如但不限于,磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附连存储设备、闪存、电池备份的sdram(同步dram)和/或网络可访问存储设备。在各种实现方案中,存储设备914可包括用于例如当包括多个硬驱动器时增加对有价值的数字介质的存储性能增强的保护的技术。

图形子系统915可执行对诸如静止图像或视频之类的图像进行的处理,以便进行显示。图形子系统915可以是例如图形处理单元(gpu)或视觉处理单元(vpu)。可将模拟或数字接口用于通信地耦合图形子系统915和显示器920。例如,该接口可以是高清多媒体接口、显示端口、无线hdmi和/或符合无线hd的技术中的任意一个。可将图形子系统915集成到处理器910或芯片组905中。在一些实现中,图形子系统915可以是通信地耦合至芯片组905的单独设备。

可在各种硬件架构中实现本文中所描述的图形和/或视频处理技术。例如,可在芯片组中集成图形和/或视频功能。或者,可使用分立的图形和/或视频处理器。作为又另一个实现方案,可由通用处理器(包括多核处理器)提供图形和/或视频功能。在进一步的实施例中,可在消费电子设备中实现这些功能。

无线电918可包括能够使用各种合适的无线通信技术发送和接收信号的一个或多个无线电设备。此类技术可涉及跨一个或多个无线网络的通信。示例无线网络包括(但不限于)无线局域网(wlan)、无线个域网(wpan)、无线城域网(wman)、蜂窝网络和卫星网络。在跨此类网络进行通信时,无线电918可根据任何版本的一个或多个适用的标准进行操作。

在各种实现方案中,显示器920可包括任何电视机类型监视器或显示器。显示器920可包括例如,计算机显示屏、触屏显示器、视频监视器、电视型设备和/或电视机。显示器920可以是数字和/或模拟的。在各种实现方案中,显示器920可以是全息显示器。同样,显示器920可以是可接收视觉投影的透明表面。此类投影可传递各种形式的信息、图像和/或对象。例如,此类投影可以是用于移动增强现实(mar)应用的视觉重叠。在一个或多个软件应用916的控制下,平台902可在显示器922上显示用户界面920。

在各种实现中,(诸)内容服务设备930可由任何国家的、国际的和/或独立的服务机构来主管,并且进而例如经由因特网可访问平台902。可将(诸)内容服务设备930耦合至平台902和/或显示器920。可将平台902和/或(诸)内容服务设备930耦合至网络960,以向网络960和从网络960传达(如,发送和/或接收)媒体信息。也可将(诸)内容递送设备940耦合至平台902和/或耦合至显示器920。

在各种实现中,(诸)内容服务设备930可包括有线电视盒、个人计算机、网络、电话、能够递送数字信息和/或内容的因特网启用设备或装置,以及能够经由网络960或直接地在内容提供商与平台902和/或显示器920之间单向地或双向地传递内容的任何其他类似设备。将领会,可经由网络960,在系统900中的任何一个组件和内容提供商之间往返地单向和/或双向传递内容。内容的示例可包括任何媒体信息,这些媒体信息包括例如视频、音乐、医疗和游戏信息等。

(诸)内容服务设备930可接收诸如包括媒体信息、数字信息和/或其他内容的有线电视节目之类的内容。内容提供方的示例可包括任何有线或卫星电视或无线电或互联网内容提供方。所提供的示例并不旨在限制根据本公开、以任何方式进行的实现。

在各种实现方案中,平台902可接收来自具有一个或多个导航特征的导航控制器950的控制信号。导航特征可被用于与例如用户界面922交互。在各种实现中,导航可以是作为计算机硬件组件(更具体地说,人类接口设备)的、允许用户将空间(如,连续的和多维度的)数据输入计算机的指点设备。诸如图形用户界面(gui)之类的许多系统以及电视机和监视器允许用户使用物理手势来控制数据,并向计算机或电视机提供数据。

可通过指针、光标、聚焦环或显示设备上所显示的其他视觉指示符的移动,在显示设备(例如,显示器920)上复制导航特征的移动。例如,在软件应用916的控制下,位于导航上的导航特征可被映射到例如用户界面922上显示的虚拟导航特征。在各实施例中,可能不是单独的组件,但是可集成到平台902和/或显示器920中。然而,本公开并不旨在限于本文所示或所述的元件或限于本文所示或所述的情境中。

在各种实现方案中,驱动器(未示出)可包括使用户能够在例如启用时,在初始开机之后,能够像通过触摸按钮打开和关闭电视机一样立即打开和关闭平台902的技术。甚至当平台被“关闭”时,程序逻辑可允许平台902将内容以流送至媒体适配器或其它(诸)内容服务设备930或(诸)内容递送设备940。此外,芯片组905可包括例如针对5.1环绕声音频和/或高清晰度7.1环绕声音频的硬件和/或软件。驱动器可包括用于集成图形平台的图形驱动器。在各实施例中,图形驱动器可包括外围组件互连(pci)快速(express)图形卡。

在各种实现方案中,可集成系统900中所示的任意一个或多个组件。例如,可以集成平台902和(诸)内容服务设备930,或可以集成平台902和(诸)内容递送设备940,或例如可以集成平台902、(诸)内容服务设备930和(诸)内容递送设备940。在各种实施例中,平台902和显示器920可以是集成单元。可以集成显示器920和(诸)内容服务设备930,或例如可以集成显示器920和(诸)内容递送设备940。这些示例并不旨在限制本公开。

在各种实施例中,可将系统900实现为无线系统、有线系统或无线和有线系统两者的组合。当被实现为无线系统时,系统900可包括适合于通过无线共享介质进行通信的组件和接口,该组件和接口诸如,一个或多个天线、发射机、接收机、收发机、放大器、过滤器、控制逻辑等。无线共享介质的示例可包括无线频谱的多个部分,诸如,rf频谱等。当被实现为有线系统时,该系统900可包括适合于在有线通信介质上进行通信的部件和接口,有线通信介质例如是输入/输出(i/o)适配器、用于将该i/o适配器与对应的有线通信介质连接的物理连接器、网络接口卡(nic)、盘控制器、视频控制器、音频控制器等。有线通信介质的示例可包括线、电缆、金属引线、印刷电路板(pcb)、底板、交换结构、半导体材料、双绞线、同轴电缆、光纤等。

平台902可建立一个或多个逻辑或物理通道以传达信息。该信息可包括媒体信息和控制信息。媒体信息可以是指表示针对用户的内容的任何数据。内容的示例可包括例如来自语音对话、视频会议、流视频、电子邮件(“email”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等的数据。来自语音对话的数据可以是例如,话语信息、静默时段、背景噪声、舒适噪声、音调等。控制信息可以是指表示针对自动系统的命令、指令或控制字的任何数据。例如,可将控制信息用于通过系统来路由媒体信息,或用于指示节点按照预先定义的方式来处理该媒体信息。然而,这些实施例并不限于图9中所示或所述的元件,也并不限于图9中所示或所述的情境中。

如上文所述,能以不同的物理样式或形状因子来使系统900具体化。图10示出根据本公开至少一些实现来布置的小形状因子设备1000。在一些示例中,可经由设备1000来实现系统900。在其他示例中,可经由设备1000来实现系统100或其部分。在各实施例中,可例如将设备1000实现为具有无线能力的移动计算设备。移动计算设备可以是指具有处理系统和移动电源或供电(诸如例如,一个或多个电池)的任何设备。

移动计算设备的示例可包括个人计算机(pc)、膝上型计算机、超膝上型计算机、平板电脑、触摸板、便携式计算机、手持式计算机、掌上电脑、个人数字助理(pda)、蜂窝电话、蜂窝电话/pda的组合、智能设备(例如,智能电话、智能平板电脑或智能电视机)、移动因特网设备(mid)、消息接发设备、数据通信设备、相机等等。

移动计算设备的示例还可包括被布置为由人穿戴的计算机,诸如腕式计算机、手指计算机、戒指计算机、眼镜计算机、皮带扣计算机、臂带计算机、鞋计算机、衣服计算机以及其他可穿戴计算机。在各实施例中,可将例如移动计算设备实现为能够执行计算机应用以及语音通信和/或数据通信的智能电话。尽管已经通过示例方式将移动计算设备实现为智能电话而描述了一些实施例,但是可以领会,也可以使用其他无线移动计算设备来实现其他实施例。实施例不限于此上下文。

如图10所示,设备1000可包括具有前部1001和后部1002的外壳。设备1000包括显示器1004、输入/输出(i/o)设备1006以及集成天线1008。设备1000还可包括导航特征1012。i/o设备1006可包括用于向移动计算设备输入信息的任何合适的i/o设备。i/o设备1006的示例可包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、麦克风、扬声器、语音识别设备和软件等。信息还可借助麦克风(未示出)进入设备1000或者可通过语音识别设备来数字化。如所示,设备1000可包括集成到设备1000的后部1002(或别处)的相机1005(例如,包括透镜、光圈和成像传感器)以及闪光灯1010。在其他示例中,相机1005和闪光灯1010可被集成到设备1000的前部1001中,或者可以提供前部和后部相机两者。相机1005和闪光灯1010可以是相机模块的组件,用于产生被处理成流式视频的图像数据,该流式视频被输出至显示器1004和/或例如经由天线1008从设备1000被远程传达。

可使用硬件元件、软件元件或软硬件元件的组合来实现各实施例。硬件元件的示例可包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(asic)、可编程逻辑器件(pld)、数字信号处理器(dsp)、现场可编程门阵列(fpga)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片集等。软件的示例可包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(api)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或它们的任意组合。确定是否使用硬件元件和/或软件元件来实现实施例可根据任意数量的因素而变化,这些因素诸如所期望的计算速率、功率电平、热容限、处理循环预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其他设计或性能约束。

至少一个实施例的一个或多个方面可以由存储在机器可读介质上的表示处理器中的各种逻辑的表示性指令来实现,该表示性指令在被机器读取时使得该机器制造用于执行本文中所述的技术的逻辑。被称为ip核的此类表示可以被存储在有形的机器可读介质上,并可被供应给各个客户或生产设施以加载到实际制造该逻辑或处理器的制造机器中。

尽管已经参考各实现方案描述了本文陈述的某些特征,但并不旨在以限制的含义来解释本说明书。因此,对本公开所属技术领域中的技术人员显而易见的本文所述的各实现方案的各种修改以及其他实现方案被认为落在本公开的精神和范围之内。

以下实施例关于进一步的实施例。

在一个或多个第一实施例中,用于视频译码的计算机实现的方法包括:针对图片序列确定一个或多个长期参考图片;针对长期参考图片中的个体长期参考图片调整基于速率控制的量化参数以生成针对个体长期参考图片的译码量化参数;基于译码量化参数对个体长期参考图片进行译码;生成包括指示符的参考图片列表语法,指示符用于在个体长期参考图片在短期参考图片列表中被另一图片替换时将个体长期参考图片插入至长期参考图片列表中;以及在比特流中提供经译码的个体长期参考图片以及参考图片列表语法。

进一步针对第一实施例,确定一个或多个长期参考图片包括以下中的至少一者:将图片序列的所有帧内图片指派为长期参考图片、将图片序列的所有检测到的场景改变图片指派为长期参考图片、或者以预定间隔指派长期参考图片。

进一步针对第一实施例,确定一个或多个长期参考图片包括以一间隔来指派长期参考图片,其中方法进一步包括:基于将图片序列的一组图片大小乘以预定乘数来确定间隔。

进一步针对第一实施例,调整基于速率控制的量化参数包括通过基于与个体长期参考图片相关联的时间相关性确定的调整因子来减小基于速率控制的量化参数。

进一步针对第一实施例,方法进一步包括确定用于将基于速率控制的量化参数调整为译码量化参数的调整因子,其中调整因子基于以下中的至少一者:针对图片序列的一个或多个图片的小运动块的数量与块的总数量的比率,或者与图片序列的一个或多个图片相对应的预测失真成本。

进一步针对第一实施例,方法进一步包括针对长期参考图片中的第二长期参考图片来调整第二基于速率控制的量化参数以生成针对第二个体长期参考图片的第二译码量化参数,其中基于个体长期参考图片具有比第二长期参考图片更高的时间相关性,译码量化参数小于第二译码量化参数。

进一步针对第一实施例,指示符用于指示当个体长期参考图片在短期后向参考图片列表和短期前向参考图片列表两者中被替换时,将个体长期参考图片插入到长期参考图片列表中。

进一步针对第一实施例,参考图片列表语法还包括第二指示符,第二指示符用于响应于对个体长期参考图片的译码来立即将个体长期参考图片插入至短期参考图片列表中。

进一步针对第一实施例,参考图片列表语法进一步包括第二指示符,第二指示符用于响应于对个体长期参考图片的译码来立即将个体长期参考图片插入至短期参考图片列表中,以及所述指示符用于指示长期参考图片列表中由个体长期参考图片对先前长期参考图片的替换。

进一步针对第一实施例,比特流包括以下各项中的至少一者:符合高级视频译码(avc)的比特流、符合高效视频译码(hevc)的比特流、符合vp8的比特流、或者符合vp9的比特流。

进一步针对第一实施例,参考图片列表语法进一步包括第二指示符,第二指示符用于响应于对个体长期参考图片的译码来立即将个体长期参考图片插入至短期参考列表中,和/或所述指示符用于指示长期参考图片列表中由个体长期参考图片对先前长期参考图片的替换,和/或比特流包括以下各项中的至少一者:符合高级视频译码(avc)的比特流、符合高效视频译码(hevc)的比特流、符合vp8的比特流、或者符合vp9的比特流。

在一个或多个第二实施例中,用于视频译码的系统包括存储器,该存储器用于存储图片序列;以及处理器,该处理器耦合至存储器,该处理器用于:针对图片序列确定一个或多个长期参考图片;针对长期参考图片中的个体长期参考图片调整基于速率控制的量化参数以生成针对个体长期参考图片的译码量化参数;基于译码量化参数对个体长期参考图片进行译码;生成包括指示符的参考图片列表语法,指示符用于在个体长期参考图片在短期参考图片列表中被另一图片替换时将个体长期参考图片插入至长期参考图片列表中;以及在比特流中提供经译码的个体长期参考图片以及参考图片列表语法。

进一步针对第二实施例,处理器用于确定一个或多个长期参考图片包括以下中的至少一者:处理器用于将图片序列的所有帧内图片指派为长期参考图片;处理器用于将图片序列的所有检测到的场景改变图片指派为长期参考图片;或者处理器用于以预定间隔指派长期参考图片。

进一步针对第二实施例,处理器用于确定一个或多个长期参考图片包括:处理器用于以一间隔指派长期参考图片,其中处理器进一步用于基于将图片序列的一组图片大小乘以预定乘数来确定间隔。

进一步针对第二实施例,处理器用于调整基于速率控制的量化参数包括:处理器用于通过基于与个体长期参考图片相关联的时间相关性确定的调整因子来减小基于速率控制的量化参数。

进一步针对第二实施例,处理器用于确定用于将基于速率控制的量化参数调整为译码量化参数的调整因子,其中调整因子基于以下中的至少一者:针对图片序列的一个或多个图片的小运动块的数量与块的总数量的比率,或者与图片序列的一个或多个图片相对应的预测失真成本。

进一步针对第二实施例,处理器用于针对长期参考图片中的第二长期参考图片来调整第二基于速率控制的量化参数以生成针对第二个体长期参考图片的第二译码量化参数,其中基于个体长期参考图片具有比第二长期参考图片更高的时间相关性,译码量化参数小于第二译码量化参数。

进一步针对第二实施例,指示符用于指示当个体长期参考图片在短期后向参考图片列表和短期前向参考图片列表两者中被替换时,将个体长期参考图片插入到长期参考图片列表中。

进一步针对第二实施例,参考图片列表语法还包括第二指示符,第二指示符用于响应于对个体长期参考图片的译码来立即将个体长期参考图片插入至短期参考图片列表中。

进一步针对第二实施例,参考图片列表语法进一步包括第二指示符,第二指示符用于响应于对个体长期参考图片的译码来立即将个体长期参考图片插入至短期参考图片列表中,以及所述指示符用于指示长期参考图片列表中由个体长期参考图片对先前长期参考图片的替换。

进一步针对第二实施例,指示符用于指示当个体长期参考图片在短期后向参考图片列表和短期前向参考图片列表两者中被替换时,将个体长期参考图片插入到长期参考图片列表中;和/或参考图片列表语法还包括第二指示符,该第二指示符用于响应于对个体长期参考图片的译码来立即将个体长期参考图片插入至短期参考图片列表中。

进一步针对第二实施例,比特流包括以下各项中的至少一者:符合高级视频译码(avc)的比特流、符合高效视频译码(hevc)的比特流、符合vp8的比特流、或者符合vp9的比特流。

在一个或多个第三实施例中,系统包括:用于针对图片序列确定一个或多个长期参考图片的装置;用于针对长期参考图片中的个体长期参考图片调整基于速率控制的量化参数以生成针对个体长期参考图片的译码量化参数的装置;用于基于译码量化参数对个体长期参考图片进行译码的装置;用于生成包括指示符的参考图片列表语法的装置,该指示符用于在个体长期参考图片在短期参考图片列表中被另一图片替换时将个体长期参考图片插入至长期参考图片列表中;以及用于在比特流中提供经译码的个体长期参考图片以及参考图片列表语法的装置。

进一步针对第三实施例,用于确定一个或多个长期参考图片的装置包括以下中的至少一者:用于将图片序列的所有帧内图片指派为长期参考图片的装置;用于将图片序列的所有检测到的场景改变图片指派为长期参考图片的装置;或者用于以预定间隔指派长期参考图片的装置。

进一步针对第三实施例,系统进一步包括用于确定用来将基于速率控制的量化参数调整为译码量化参数的调整因子的装置,其中调整因子基于以下中的至少一者:针对图片序列的一个或多个图片的小运动块的数量与块的总数量的比率,或者与图片序列的一个或多个图片相对应的预测失真成本。

进一步针对第三实施例,系统进一步包括用于针对长期参考图片中的第二长期参考图片来调整第二基于速率控制的量化参数以生成针对第二个体长期参考图片的第二译码量化参数的装置,其中基于个体长期参考图片具有比第二长期参考图片更高的时间相关性,译码量化参数小于第二译码量化参数。

进一步针对第三实施例,指示符用于指示当个体长期参考图片在短期后向参考图片列表和短期前向参考图片列表两者中被替换时,将个体长期参考图片插入到长期参考图片列表中。

进一步针对第三实施例,参考图片列表语法还包括第二指示符,第二指示符用于响应于对个体长期参考图片的译码来立即将个体长期参考图片插入至短期参考图片列表中。

在一个或多个第四实施例中,至少一种机器可读介质包括多条指令,该指令响应于在计算设备上被执行,使计算设备通过以下各项操作来执行视频译码:针对图片序列确定一个或多个长期参考图片;针对长期参考图片中的个体长期参考图片调整基于速率控制的量化参数以生成针对个体长期参考图片的译码量化参数;基于译码量化参数对个体长期参考图片进行译码;生成包括指示符的参考图片列表语法,该指示符用于在个体长期参考图片在短期参考图片列表中被另一图片替换时将个体长期参考图片插入至长期参考图片列表中;以及在比特流中提供经译码的个体长期参考图片以及参考图片列表语法。

进一步针对第四实施例,确定一个或多个长期参考图片包括以下中的至少一者:将图片序列的所有帧内图片指派为长期参考图片、将图片序列的所有检测到的场景改变图片指派为长期参考图片、或者以预定间隔指派长期参考图片。

进一步针对第四实施例,机器可读介质进一步包括多条指令,该多条指令响应于在计算设备上被执行,使计算设备通过以下各项操作来执行视频译码:确定用于将基于速率控制的量化参数调整为译码量化参数的调整因子,其中调整因子基于以下中的至少一者:针对图片序列的一个或多个图片的小运动块的数量与块的总数量的比率,或者与图片序列的一个或多个图片相对应的预测失真成本。

进一步针对第四实施例,机器可读进一步包括多条指令,该多条指令响应于在计算设备上被执行,使计算设备通过以下各项操作来执行视频译码:针对长期参考图片中的第二长期参考图片来调整第二基于速率控制的量化参数以生成针对第二个体长期参考图片的第二译码量化参数,其中基于个体长期参考图片具有比第二长期参考图片更高的时间相关性,译码量化参数小于第二译码量化参数。

进一步针对第四实施例,指示符用于指示当个体长期参考图片在短期后向参考图片列表和短期前向参考图片列表两者中被替换时,将个体长期参考图片插入到长期参考图片列表中。

进一步针对第四实施例,参考图片列表语法还包括第二指示符,该第二指示符用于响应于对个体长期参考图片的译码来立即将个体长期参考图片插入至短期参考图片列表中。

在一个或多个第五实施例中,至少一种机器可读介质可包括多条指令,该多条指令响应于在计算设备上被执行,使该算设备用于执行根据上述实施例中的任一个的方法。

在一个或多个第六实施例中,设备可包括用于执行根据上述实施例中的任一个的方法的装置。

可认识到各实施例不被限制于所描述的实施例,也可被实施为带有修改和改动而不背离所附权利要求书的范围。例如,以上实施例可包括多个特征的特定组合。然而,上述实施例在这方面不受限制,并且在多个实现中,上述实施例可包括仅采用此类特征的子集、采用此类特征的不同次序、采用此类特征的不同组合、和/或采用与明确列出的那些特征相比而言的附加特征。因此,实施例的范围应参考所附权利要求书以及使这些权利要求享有权利的等效方案的完全范围来确定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1