一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自适应分辨率管理中的帧缓冲的制作方法

2022-05-08 10:47:04 来源:中国专利 TAG:

自适应分辨率管理中的帧缓冲
1.相关申请的交叉引用
2.本技术要求于2019年8月6日提交的、标题为"自适应分辨率管理中的帧缓冲(frame buffering in adaptive resolution management)"的美国临时专利申请第62/883,503号的优先权,其全部内容通过引用并入本文。
技术领域
3.本发明大体上涉及视频压缩领域。具体地,本发明涉及自适应分辨率管理中的帧缓冲。


背景技术:

4.视频编解码器可以包括对数字视频进行压缩或解压缩的电子电路或软件。其可以将未压缩视频转换为压缩格式,反之亦然。在视频压缩的上下文中,对视频进行压缩(和/或执行其某些功能)的装置备通常可以被称为编码器,对视频进行解压缩(和/或执行其某些功能)的装置可以被称为解码器。
5.压缩后数据的格式可以符合标准视频压缩规范。压缩可能是有损的,因为压缩后视频可能会缺少原始视频中存在的一些信息。这样的后果可能包括解压缩后视频可能具有比原始的未压缩视频更低的质量,因为没有足够的信息来准确地重建原始视频。
6.视频质量、用于表示视频的数据量(例如,由比特率决定)、编码算法和解码算法的复杂性、对数据丢失和错误的敏感性、编辑的容易性、随机访问、端对端延迟(例如,延迟时间)等之间可以存在复杂的关系。
7.运动补偿可以包括通过考虑照相机和/或视频中对象的运动来预测视频帧或者给定参考帧(例如先前帧和/或未来帧)的一部分的方法。方法可以对视频数据进行编码和解码,用于视频压缩,例如使用运动图像专家组(mpeg)的高级视频编码(avc)标准(也称为h.264)进行编码和解码。
8.运动补偿可以根据参考图像到当前图像的变换来描述图像。当与当前图像进行比较时,参考图像可以是时间上先前的,和/或,当与当前图像比较时,参考图像可以是来自未来的。


技术实现要素:

9.一方面,一种解码器,包括电路,所述电路被配置成接收比特流,使用所述比特流解码第一帧,使用所述第一帧和缩放常数来确定缩放后第一帧,将第一帧存储在第一图像缓冲器中的第一索引位置处,以及将缩放后第一帧存储在第二图像缓冲器中的第一索引位置处。
10.另一方面,一种方法包括:接收比特流,使用比特流解码第一帧,使用第一帧和缩放常数来确定缩放后第一帧,将第一帧存储在第一图像缓冲器中的第一索引位置处,以及将缩放后第一帧存储在第二图像缓冲器中的第一索引位置处。
11.在此描述的主题的一种或多种变型的细节在下面的附图和具体实施方式中进行阐述。根据具体实施方式和附图以及权利要求,在此描述的主题的其他特征和优点将显而易见。
附图说明
12.为了说明本发明,附图示出了本发明的一个或多个实施例的各个方面。然而,应当理解的是,本发明不限于附图中所示的精确布置和手段,在附图中:
13.图1是说明各种分辨率等级的示例参考帧和示例预测帧的图示;
14.图2是描绘示例参考帧、示例重缩放后考帧和示例后续块预测过程的图示;
15.图3示出了具有不同分辨率的四个不同帧;
16.图4示出了两个示例缓冲器,一个用于全分辨率帧(上),一个用于缩放后帧(下),其中缩放后帧和全分辨率帧存储在它们各自缓冲器内的相同位置;
17.图5是示出了根据当前主题的一些实施方式的示例过程的过程流程图;
18.图6是示出了根据当前主题的一些实施方式的能够解码比特流的示例解码器的系统框图;
19.图7是示出了根据当前主题的一些实施方式来对视频进行编码的示例过程的过程流程图;
20.图8是示出了根据当前主题的一些实施方式的示例视频编码器的系统框图;以及
21.图9是可以用于实现本文公开的任何一个或多个方法及其任何一个或多个部分的计算系统的框图。
22.附图不一定是按比例绘制的,并且可以用虚线、示意图和局部视图来说明。在某些情况下,可能已经省略了对于理解实施例而言不必要的细节或者使得其他细节难以理解的细节。在图中,相同的附图标记指代相同的元件。
具体实施方式
23.在许多当前最先进的编码器中,分辨率是通过重新编码和重新发送被称为图像组(gop)的整个视频部分来管理的。这需要发送内部帧(i帧),这可能导致额外的成本,因为这些帧负责gop中的大部分比特。
24.本公开描述的实施例涉及自适应分辨率管理(arm),其是一种为视频编码器/解码器提供额外灵活性的技术,从而允许在各种使用情况下节省比特率。通常,arm包括使用分辨率不同于当前帧的参考帧来执行预测。在当前的编码标准中,参考帧具有与预测帧相同的分辨率。在arm中,参考帧的分辨率可能小于或大于被预测帧的分辨率。这种方法可以用于降低视频分辨率,从而降低比特率,或者提高视频分辨率,从而促进视频回放的显示特性。
25.出于本公开的目的,arm可替代地或等效地被称为参考图像重采样(rpr);rpr和arm可以互换使用。
26.当前主题的一些实施方式可以包括在gop内的任何位置对任何数量的帧使用arm,从而消除对i帧重新编码的要求。
27.图1是说明各种分辨率等级的参考帧和预测帧的图示。帧1比参考帧小(分辨率较
低),帧2与参考帧大小相同(分辨率相同),而帧3比参考帧更大(分辨率较高)。本公开中使用的“分辨率”是在视频回放、压缩等中使用的图像、帧、子帧和/或其他显示区域或其部分中的像素数量,较高的像素数量对应于较高的分辨率,而较少的像素数量对应于较低的分辨率。分辨率可以根据面积来测量,例如但不限于通过使用一个或多个长度维度,以定义面积的像素来测量。例如,圆形子帧或其他区域可以具有根据半径定义的分辨率。可替代地或附加地,分辨率可以由像素的总数来定义。
28.作为示例,继续参考图1,其中参考帧和/或子帧具有可以完全根据两个长度参数来定义面积的几何形式,例如但不限于三角形、平行四边形和/或矩形形式,参考帧和/或子帧可以具有分辨率w
×
h,其中w和h可以指示分别描述参考帧和/或子帧的宽度(或底部)和高度尺寸的像素数量。每个预测帧也可以具有分辨率,该分辨率可以类似于参考帧的分辨率来确定;举例来说,帧1可以具有较小的分辨率ws
×
hs,帧2可以具有与参考帧相同的分辨率w
×
h,且帧3可具有较大的分辨率wl
×
hl。较小和较大帧的宽度和高度可以通过将参考宽度和高度乘以任意的重缩放常数(rc)来获得,该重缩放常数也被称为缩放系数和/或常数。在更小帧的情况下,rc可以具有0和1之间的值。在更大帧的情况下,rc可以具有大于1的值;例如,rc可以具有1到4之间的值。其他值也是可能的。一个分辨率维度的重缩放常数可能不同于另一个分辨率维度;例如,重缩放常数rch可以用于重缩放高度,而另一个重缩放常数rcw可以用于重缩放宽度。
29.仍然参考图1,arm可以作为一种模式来实现。在解码期间的某个点激活arm模式的情况下,解码器可能已经接收到分辨率为w
×
h的参考帧,并且可以使用重缩放常数来重缩放预测帧。在一些实施方式中,编码器可以向解码器标识使用哪个重缩放常数。可以在对应于包含当前图像的gop的序列参数集(sps)中和/或对应于当前图像的图像参数集(pps)中执行该标识。例如,但不限于,编码器可以使用诸如pps_pic_width_in_luma_samples、pps_pic_height_in_luma_samples、pps_scaling_win_left_offset、pps_scaling_win_right_offset,pps_scaling_win_top_offset、pps_scaling_win_bottom_offset和/或sps_num_subpics_minus1之类的字段来标识重缩放后参数。
30.进一步参考图1,如上所述的w和h参数可以但不限于分别使用变量currpicscalwinwidthl和currpicscalwinheightl来表示;这些变量可以使用表示参数和变量之间的一个或多个数学关系从如上所述的标识参数中导出。例如,但不限于,currpicscalwinwidthl可以根据以下等式导出:
31.currpicscalwinwidthl=pps_pic_width_in_luma_samples

32.subwidthc*(pps_scaling_win_right_offset pps_scaling_win_left_offset)
33.作为另一个非限制性示例,currpicscalwinheightl可以根据以下等式导出:
34.currpicscalwinwidthl=pps_pic_width_in_luma_samples

35.subwidthc*(pps_scaling_win_right_offset pps_scaling_win_left_offset)
36.本领域一般技术人员在阅读了本公开的全部内容后,将会了解可用于导出上述变量的各种替代计算。编码器可替代地或附加地直接,例如但不限于在pps和/或sps中标识一个或多个这样的变量rc、rch和/或rcw。
37.可替代地或附加地,仍然参考图1,如上所述的重缩放常数和/或一组重缩放常数可以使用对所存储的一个和/或多个缩放常数和/或帧和/或块的索引的引用在比特流中标
识,所述帧和/或块是使用先前标识和/或使用的一个和/或多个缩放常数来标识的。对存储的缩放常数的索引的引用可以明确地标识和/或从比特流中标识的一个或多个附加参数中确定。例如但不限于,解码器可以识别包含当前帧的参考帧和/或图像组;在先前已经标识了重缩放常数和/或在这样的图像组中使用了重缩放常数的情况下,被标识的参考帧可应用于当前帧和/或当前图像组等,解码器可以识别该重缩放常数,以便用作当前帧的重缩放常数。
38.在一些实施方式中,继续参考图1,arm操作可以在编码帧的块层面上执行。例如,参考帧可以首先被重缩放,随后可以执行预测,如图2所示。图2是描绘参考帧、重缩放考帧和后续块预测过程的图示。可以对缩放后参考帧(具有缩放后分辨率)而不是原始参考帧执行块预测过程。如上所述,重缩放参考帧可以包括根据被编码器标识的任何参数进行重缩放;例如但不限于,在将与当前画面一起使用的参考帧被标识的情况下,例如通过参考与参考帧相关联的索引值等,可以在预测之前,根据上述任何重缩放方法来重缩放被标识的参考帧。经重缩放的参考帧可以存储在存储器和/或缓冲器中,其可以包括但不限于通过索引识别包含在其中的帧的缓冲器,根据该索引可以执行帧检索;缓冲器可以包括解码图片缓冲器(dcb)和/或由解码器实施的一个或多个附加缓冲器。预测过程可以包括,例如包括运动补偿的图片间预测。
39.基于块的arm的一些实施方式可以实现对每个块应用最佳滤波器的灵活性,而不是对整个帧应用相同的滤波器。在一些实施方式中,skip-arm模式是可能的,使得一些块(例如基于像素的均匀性和比特率成本)可以处于skip-arm模式(使得重缩放不会改变比特率)。skip-arm模式可以是在比特流中标识;例如,但不限于,skip-arm模式可以在pps参数中标识。可替代地或附加地,解码器可以基于由解码器设置和/或在比特流中标识的一个或多个参数来确定skip-arm模式是激活的。在基于块的arm中使用的空间滤波器可以包括但不限于应用双三次插值的双三次空间滤波器、应用双线性插值的双线性空间滤波器、使用lanczos滤波和/或使用sinc滤波器、sinc函数插值和/或信号重建技术等组合的重采样的lanczos滤波器;本领域一般技术人员在阅读了本公开的全部内容后将会了解与本公开一致的可用于插值的各种滤波器。作为非限制性示例,内插滤波器可以包括如上所述的任何滤波器,低通滤波器,其可以通过但不限于上采样过程来使用,其中可以将缩放之前的块和/或帧的像素之间的像素初始化为零,然后用低通滤波器的输出来填充。可替代地或附加地,可以使用任何亮度样本内插滤波过程。亮度样本内插可以包括在半样本内插滤波器索引处计算内插值,该内插值落在未缩放样本阵列的两个连续样本值之间。可以通过从查找表中检索系数和/或权重来执行内插值的计算,但不限于此;查找表的选择可以作为编码单元的运动模型和/或缩放比例量的函数来执行,例如使用如上所述的缩放常数来确定。计算可以包括但不限于执行相邻像素值的加权求和,其中权重是从查找表中检索的。可替换地或附加地,计算值可以被移位;例如,但不限于,值可以移位min(4,位深度-8)、6、max(2,14-位深度)等。本领域一般技术人员在阅读了本公开的全部内容后,将会了解可用于内插滤波器的各种替代或附加实施方式。
40.在一些实施方式中,仍然参考图2,arm可以用于在编码器处重新缩放一个或多个帧,编码器然后可以对通过重缩放生成的一个或多个重缩放后帧进行编码。在解码器处,在以全分辨率显示结果帧之前,可以对重缩放后帧进行解码和回缩放(scaled back)。
41.现在参考图3,当编码重缩放后帧时,可以在执行运动估计之前重缩放所有可用作参考帧的帧。例如,并且如图3中出于示例性目的所示,帧i 1可以被编码为重缩放后帧(分辨率降低),并且如果帧i可用作解码帧i的参考,则帧i可以被重缩放。编码器可以进行如下操作:编码器可以首先以全分辨率编码帧i。编码器然后可以将帧i 1重缩放为召回帧(i 1)r,并且以重建的形式来重缩放重建帧i,其在这里可以表示为i
*
,在本公开中表示为i
*r
。换句话说,在此实例中使用的i
*r
表示对应于i
*
的重缩放后版本的重缩放后的重建帧。编码器然后可以使用i
*r
作为参考来编码(i 1)r。
42.类似地,仍然参考图3,可以使用重建帧(i 1)
r*
作为参考来编码帧i 2。
43.进一步参考图3,帧i 3可以以全分辨率编码;因此,可以用已经被重缩放到全分辨率的一个或多个参考帧来解码帧i 3。如果允许参考两个先前的帧,例如为了说明的目的,两个先前帧为帧i 1和帧1 2,则可以在重建之前和/或之后将这两个先前的帧重缩放到全分辨率。
44.仍然参考图3,重缩放后帧可能是复杂的。在一个实施例中,解码器和/或编码器可以最小化需要重缩放的次数。作为非限制性示例,解码器和/或编码器可以通过维持具有全分辨率和重缩放后分辨率帧的帧缓冲器来降低重缩放复杂度。
45.继续参考图3,在一些实施例中,在解码器处,任何或所有参考帧都可以在重缩放后分辨率下可用。任何或所有重缩放后帧都可以缩放回全分辨率以进行显示和/或用作参考帧。
46.仍然参考图3,解码器可以维护两个解码图像缓冲器:一个用于全分辨率帧,一个用于重缩放后帧。重缩放后帧和全分辨率帧可以分别存储在用于重缩放后帧的解码图像缓冲器和用于全分辨率帧的解码图像缓冲器中。当分离的缓冲器被用于全分辨率和重缩放后分辨率帧时,全分辨率和相应的重缩放后帧可以被存储在相同的缓冲器位置,和/或存储在由相同索引指示的缓冲器位置,其中缓冲器被实施为索引数据结构,诸如数组类型结构等。例如,运动矢量索引可以指两个或更多不同缓冲器中的相同位置,并且解码器和/或编码器可以根据要使用的参考帧是否被重缩放来选择从索引位置检索的缓冲器。
47.继续参考图3,相应的全分辨率和重缩放后分辨率帧可以存储在不同缓冲器中的相同位置,并且使用相同的图像索引来引用。
48.图4示出了缓冲器的两个非限制性示例,一个用于全分辨率帧(上),一个用于缩放帧(下),其中缩放后帧和全分辨率帧可如上所述那样,存储在它们各自缓冲器内的相同位置。在非限制性示例中,可以使用子层解码图像缓冲器(dpb)来保存重缩放后图像、帧、子帧等;在这种情况下,子层dbp可以在一个或多个参数和/或内容元素方面不同于主dbp,主dbp可以包含其它和/或未重采样和/或未重缩放的参考图像或其他图像帧和/或子帧。可以在比特流中,例如在sps头中,标识对参考图像进行重采样和/或重缩放的能力,和/或用于这种重采样和/或重缩放的参数。例如,但不限于,可以表示为sps_ref_pic_resampling_enabled_flag的sps参数,当等于1时,可以指定参考图像重采样被启用;引用sps的当前图像可能具有引用rpl的活动条目中的参考图像的分片,该参考图像具有与当前图像的参数不同的以下七个参数中的一个或多个:1)pps_pic_width_in_luma_samples、2)pps_pic_height_in_luma_samples、3)pps_scaling_win_left_offset、4)pps_scaling_win_right_offset、5)pps_scaling_win_top_offset、6)pps_scaling_win_bottom_offset以及7)sps_
num_subpics_minus1。等于0的sps_ref_pic_resampling_enabled_flag可以指示参考图像重采样被禁用和/或参考sps的当前图像不具有参考rpl的活动条目中的参考图像的分块,该参考图像具有与当前图像的参数不同的上述七个参数中的一个或多个参数。在一个实施例中,当sps_ref_pic_resampling_enabled_flag等于1时,对于当前图像,具有与当前图像不同的上述七个参数中的一个或多个参数的参考图像可以属于与包含当前图像的层相同的层或不同的层。可以表示为例如vps_sublayer_dpb_params_present_flag的参数可以用于控制支配dbp行为的参数的存在,例如dpb_max_dec_pic_buffering_minus1[j]指定dbc的最大所需尺寸,dpb_max_num_reorder_pics[j]指定输出层集合(ols)的图像的最大允许数目,其可以在定义待解码的最高时间子层的htid等于i时在解码次序上先于ols中的任何图像且在输出次序上跟随该图像,并且/或者dpb_max_latency_increase_plus1[j]可以用于指定ols中的图像的最大数目,其可以在htid等于i时在输出次序上先于ols中的任何图像且在解码次序上跟随该图像。图5是示出了自适应分辨率管理的过程500的示例性实施例的过程流程图,该过程500可以实现视频编码器和/或解码器的额外活性,从而允许在各种使用情况下节省比特率。
[0049]
在步骤505处,仍然参考图5,解码器接收比特流。包括当前块的当前帧可以包含在解码器接收的比特流中。比特流可以例如包括在比特流中找到的数据,当使用数据压缩时,所述比特流是解码器的输入。比特流可以包括对视频进行解码所需的信息。接收比特流可以包括提取和/或解析比特流中的块以及相关联的标识信息。在一些实施方式中,当前块可以包括编码树单元(ctu)、编码单元(cu)或预测单元(pu)。
[0050]
在步骤510处,仍然参考图5,使用比特流解码第一帧。
[0051]
在515处,继续参考图5,可以使用第一帧和缩放常数来确定缩放后第一帧。缩放常数可以在比特流中被标识。
[0052]
仍然参考图5,在步骤520处,可以将第一帧存储在第一图像缓冲器中的第一索引位置处。
[0053]
在步骤525处,进一步参考图5,可以将缩放后第一帧存储在第二图像缓冲器中的第一索引位置处。在一些实施方式中,与所述第一图像缓冲器相比,所述第二图像缓冲器可存储分辨率较高的帧;可替代地,与所述第一图像缓冲器相比,所述第二图像缓冲器可存储分辨率较低的帧。可以显示缩放后第一帧。
[0054]
在一些实施方式中,仍然参考图5,可以使用缩放后第一帧作为参考帧在自适应分辨率管理模式下对第二帧或其一部分进行解码。可以根据自适应分辨率管理模式对第一帧或其一部分进行解码。缩放常数可以包括垂直缩放分量和/或水平缩放分量。在一个实施例中,可以非限制性地表示为pps_scaling_window_explicit_signalling_flag的参数,当设置为等于1时,可以指定在pps中存在缩放窗口偏移参数;pps_scaling_window_explicit_signalling_flag等于0可以指定pps中不存在缩放窗口偏移参数。当sps_ref_pic_resampling_enabled_flag等于0时,pps_scaling_window_explicit_signalling_flag的值可以等于0。在一个实施例中,pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset以及pps_scaling_win_bottom_offset可以指定应用于图像尺寸以进行缩放比率计算的偏移量。当不存在时,可以推断pps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset和pps_
scaling_win_bottom_offset的值分别等于pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset和pps_conf_win_bottom_offset。
[0055]
图6是示出了如本公开中描述的能够实现自适应分辨率管理中的帧缓冲的示例解码器600的系统框图。解码器600可以包括熵解码处理器604,逆量化和逆变换处理器608,解块滤波器612,帧缓冲器616,运动补偿处理器620和/或帧内预测处理器624。
[0056]
在操作中,仍然参考图6,比特流628可以由解码器600接收并输入到熵解码处理器604,熵解码处理器604可以将部分比特流熵解码为量化系数。量化系数可以被提供给逆量化和逆变换处理器608,逆量化和逆变换处理器608可以执行逆量化和逆变换以创建残差信号,残差信号可以根据处理模式被添加到运动补偿处理器620或帧内预测处理器624的输出。运动补偿处理器620和帧内预测处理器624的输出可以包括基于先前的解码块的块预测。预测和残差之和可以由解块滤波器612进行处理,并存储到帧缓冲器616中。
[0057]
图7是示出了利用自适应分辨率管理来编码视频的示例性过程700的过程流程图,该过程700可以实现视频编码器和/或解码器的额外灵活性,从而允许在各种使用情况下节省比特率。在步骤705处,视频帧可以经历初始块分割,例如,使用树结构宏块分割方案进行分割,该方案可以包括将图像帧划分为ctu和cu。
[0058]
在步骤710处,可以执行基于块的自适应分辨率管理,包括帧或其部分的分辨率缩放。
[0059]
在步骤715处,块可以被编码并包括在比特流中。例如,编码可以包括利用帧间预测和帧内预测模式。
[0060]
图8是示出了如本公开中描述的能够实现自适应分辨率管理中的帧缓冲的示例视频编码器800的系统框图。示例视频编码器800可以接收输入视频804,输入视频804可以根据诸如树结构宏块分割方案(例如四叉树加二叉树)之类的处理方案进行初始分割或划分。树结构宏块分割方案的示例可以包括将图像帧划分为称为编码树单元(ctu)的大块元素。在一些实施方式中,每个ctu可以被进一步一次或多次地分割成多个称为编码单元(cu)的子块。这种分割的结果可以包括称为预测单元(pu)的一组子块。也可以使用变换单元(tu)。
[0061]
仍然参考图8,示例性视频编码器800可以包括帧内预测处理器808、能够构建运动矢量候选列表,包括将全局运动矢量候选添加到运动矢量候选列表的运动估计/补偿处理器812(还称为帧间预测处理器)、变换/量化处理器816、逆量化/逆变换处理器820、环路滤波器824、解码图像缓冲器828和/或熵编码处理器832。可以将比特流参数输入到熵编码处理器832,以包括在输出比特流836中。
[0062]
在操作时,继续参考图8,对于输入视频804的帧的每个块,可以确定是通过图像内预测还是使用运动估计/补偿来处理该块。可以将块提供给帧内预测处理器808或运动估计/补偿处理器812。如果要通过帧内预测来处理块,则帧内预测处理器808可以执行处理以输出预测因子(predictor)。如果要通过运动估计/补偿来处理块,则如果适用的话,运动估计/补偿处理器812可以执行包括构建运动矢量候选列表的处理,包括将全局运动矢量候选添加到运动矢量候选列表。
[0063]
进一步参考图8,可以通过从输入视频中减去预测因子来形成残差。残差可以由变换/量化处理器816接收,变换/量化处理器816可以执行变换处理(例如,离散余弦变换(dct))以产生可以被量化的系数。可以将量化系数和任何相关联的标识信息提供给熵编码
处理器832,以进行熵编码并将包括在输出比特流836中。熵编码处理器832可以支持对与编码当前块有关的标识信息进行编码。此外,量化系数可以被提供给逆量化/逆变换处理器820,逆量化/逆变换处理器820可以再现像素,所述像素可与预测因子组合并由环路滤波器824处理,环路滤波器824的输出可以被存储在解码图像缓冲器828中,以供运动估计/补偿处理器812使用,运动估计/补偿处理器812能够构建运动矢量候选列表,包括将全局运动矢量候选添加到运动矢量候选列表。
[0064]
继续参考图8,尽管上文已经详细描述了一些变型,但是其他修改或添加也是可能的。例如,在一些实施方式中,当前块可以包括任何对称块(8
×
8、16
×
16、32
×
32、64
×
64、128
×
128等)以及任何非对称块(8
×
4、16
×
8等)。
[0065]
在一些实施方式中,仍然参考图8,可以实施四叉树加二进制决策树(qtbt)。对于qtbt,在编码树单元层面,可以动态地推导出qtbt的分割参数以适应局部特征,而无需传输任何开销。随后,在编码单元层面,联合分类器决策树结构可以消除不必要的迭代并控制错误预测的风险。在一些实施方式中,ltr帧块更新模式可以作为在qtbt的每个叶节点上可用的附加选项。
[0066]
在一些实施方式中,仍然参考图8,可以在比特流的不同层次层面标识其他语法元素。例如,可以通过在序列参数集(sps)中包含编码的启用标志来为整个序列启用标志。此外,可以在编码树单元(ctu)层面对ctu标志进行编码。
[0067]
一些实施例可以包括存储指令的非暂时性计算机程序产品(即,物理实现的计算机程序产品),所述指令,当由一个或多个计算系统的一个或多个数据处理器执行时,使得至少一个数据处理器执行本文中的操作。
[0068]
本文公开的一些实施例中,解码器包括电路,所述电路被配置成接收比特流,使用所述比特流解码第一帧,使用所述第一帧和缩放常数来确定缩放后第一帧,将第一帧存储在第一图像缓冲器中的第一索引位置处,以及将缩放后第一帧存储在第二图像缓冲器中的第一索引位置处。
[0069]
在一些实施例中,与所述第一图像缓冲器相比,所述第二图像缓冲器可存储分辨率较高的帧。在一些实施例中,与所述第一图像缓冲器相比,所述第二图像缓冲器可存储分辨率较低的帧。所述解码器可以被进一步被配置成显示所述缩放后第一帧。所述解码器可以被配置成使用所述缩放后第一帧作为参考帧,在自适应分辨率管理模式下对第二帧的至少一部分进行解码。所述解码器可以被配置成根据自适应分辨率管理模式对所述第一帧的至少一部分或一部分进行解码。所述自适应分辨率管理模式可以在图像参数集(pps)中被标识。所述自适应分辨率管理模式可以在序列参数集(sps)中被标识。所述缩放常数可以包括垂直缩放分量和水平缩放分量。所述解码器可以包括:熵解码处理器,被配置成接收比特流并将所述比特流解码为量化系数;逆量化和逆变换处理器,被配置成处理所述量化系数,所述处理所述量化系数包括执行逆离散余弦变换;解块滤波器;帧缓冲器;以及帧内预测处理器。
[0070]
本文公开的一些实施例中,方法可以包括:接收比特流,使用所述比特流解码第一帧,使用所述第一帧和缩放常数来确定缩放后第一帧,将所述第一帧存储在第一图像缓冲器中的第一索引位置处,以及将所述缩放后第一帧存储在第二图像缓冲器中的所述第一索引位置处。
[0071]
在一些实施例中,与所述第一图像缓冲器相比,所述第二图像缓冲器可存储分辨率较高的帧。与所述第一图像缓冲器相比,所述第二图像缓冲器可存储分辨率较低的帧。实施例可以包括显示所述缩放后第一帧。实施例可以包括使用所述缩放后第一帧作为参考帧在自适应分辨率管理模式下对第二帧的至少一部分进行解码。实施例可以包括根据自适应分辨率管理模式对所述第一帧的至少一部分进行解码。所述自适应分辨率管理模式可以在图像参数集(pps)中被标识。所述自适应分辨率管理模式可以在序列参数集(sps)中被标识。所述缩放常数可以包括垂直缩放分量和水平缩放分量。所述接收、所述解码、所述确定以及所述存储中的至少一者可以由解码器执行,所述解码器可以包括:熵解码处理器,被配置成接收比特流并将所述比特流解码为量化系数;逆量化和逆变换处理器,被配置成处理所述量化系数,所述处理所述量化系数包括执行逆离散余弦变换;解块过滤器;帧缓冲器;以及帧内预测处理器。
[0072]
应当注意的是,本文描述的任何一个或多个方面和实施例可以方便地使用数字电子电路、集成电路、专门设计的专用集成电路(asic)、现场可编程门阵列(fpga)、计算机硬件、固件、软件和/或上述项的组合来实现,如在根据本说明书的教导编程的一个或多个机器(例如,用作电子文档的用户计算设备的一个或多个计算设备、诸如文档服务器之类的一个或多个服务器设备等)中实现和/或实施的,这对于计算机领域的普通技术人员来说是显而易见的。这些各种方面或特征可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序和/或软件中的实现,所述可编程系统包括至少一个可编程处理器,所述至少一个可编程处理器可以是专用的或通用的,其被耦接以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,以及向存储系统、至少一个输入设备和至少一个输出设备发送数据和指令。对于软件领域的普通技术人员来说显而易见的是,熟练的程序员基于本公开的教导可以容易地准备适当的软件编码。上文讨论的采用软件和/或软件模块的方面和实施方式还可以包括用于帮助实现软件和/或软件模块的机器可执行指令的适当硬件。
[0073]
这种软件可以是采用机器可读存储介质的计算机程序产品。机器可读存储介质可以是能够存储和/或编码由机器(例如,计算设备)执行的指令序列并且使得机器执行本文描述的方法和/或实施例中的任何一个的任何介质。机器可读存储介质的示例包括但不限于磁盘、光盘(例如,cd、cd-r、dvd、dvd-r等)、磁光盘、只读存储器"rom"设备、随机存取存储器"ram"设备、磁卡、光卡、固态存储设备、eprom、eeprom、可编程逻辑器件(pld)和/或上述项的任意组合。本文使用的机器可读介质旨在包括单个介质以及物理上分离的介质的集合,例如光盘的集合,或者与计算机存储器结合的一个或多个硬盘驱动器。本文使用的机器可读存储介质不包括信号传输的暂时形式。
[0074]
这种软件还可以包括在诸如载波之类的数据载体上作为数据信号而携带的信息(例如数据)。例如,机器可执行信息可以被包括作为包含在数据载体中的数据承载信号,其中,所述信号对下述项进行编码:由机器(例如,计算设备)执行的指令序列或其部分,以及使机器执行本文描述的方法和/或实施例中的任何一个的任何相关信息(例如,数据结构和数据)。
[0075]
计算设备的示例包括但不限于电子书阅读设备、计算机工作站、终端计算机、服务器计算机、手持设备(例如,平板计算机、智能手机等)、网络设备、网络路由器、网络交换机、
网桥、任何能够执行指定其要采取的动作的指令序列的机器,以及上述项的任意组合。在一个示例中,计算设备可以包括和/或被包括在资讯站(kiosk)中。
[0076]
图9示出了计算机系统900的示例性形式的计算设备的一个实施例的图示,其中,可以执行用于使控制系统执行本公开的任何一个或多个方面和/或方法的一组指令。还可以预期的是,可以利用多个计算设备来实施专门配置的指令集,用于使一个或多个所述设备执行本公开的方面和/或方法中的任何一个或多个。计算机系统900包括处理器904和存储器908,它们经由总线912彼此通信并且与其他组件通信。总线912可以包括使用多种总线架构中的任何一种的多种类型的总线结构中的任何一种,其包括但不限于存储器总线、存储器控制器、外围总线、本地总线以及上述项的任意组合。
[0077]
存储器908可以包括各种组件(例如,机器可读介质),其包括但不限于随机存取存储器组件、只读组件以及上述项的任意组合。在一个示例中,基本输入/输出系统916(bios)可以存储在存储器908中,该基本输入/输出系统916(bios)包括诸如在启动期间帮助在计算机系统900内的元件之间传递信息的基本例程。存储器908还可以包括(例如,存储在一个或多个机器可读介质上的)体现本公开的方面和/或方法中的任意一个或多个的指令(例如,软件)920。在另一示例中,存储器908可以进一步包括任何数量的程序模块,其包括但不限于操作系统、一个或多个应用程序、其他程序模块、程序数据以及上述项的任意组合。
[0078]
计算机系统900还可以包括存储设备924。存储设备(例如,存储设备924)的示例包括但不限于硬盘驱动器、磁盘驱动器、与光学介质组合的光盘驱动器、固态存储设备以及上述项的任意组合。存储设备924可以通过适当的接口(未示出)连接至总线912。示例性接口包括但不限于scsi、高级技术附件(ata)、串行ata、通用串行总线(usb)、ieee1394(firewire)以及上述项的任意组合。在一个示例中,存储设备924(或其一个或多个组件)可以可移除地与计算机系统900连接(例如,经由外部端口连接器(未示出))。特别地,存储设备924和相关联的机器可读介质928可以为计算机系统900提供机器可读指令、数据结构、程序模块和/或其他数据的非易失性和/或易失性存储。在一个示例中,软件920可以全部或部分地保存在机器可读介质928内。在一个示例中,软件920可以全部或部分地保存在处理器904内。
[0079]
计算机系统900还可以包括输入设备932。在一个示例中,计算机系统900的用户可以经由输入设备932将命令和/或其他信息输入到计算机系统900中。输入设备932的示例包括但不限于:字母数字输入设备(例如,键盘)、指示设备、操纵杆、游戏手柄、音频输入设备(例如,麦克风、语音响应系统等)、光标控制设备(例如鼠标)、触摸板、光学扫描仪、视频捕获设备(例如静物摄影机、摄像机)、触摸屏以及上述项的任意组合。输入设备932可以经由各种接口(未示出)中的任一个连接到总线912,所述各种接口包括但不限于串行接口、并行接口、游戏端口、usb接口、火线接口、至总线912的直接接口以及上述项的任意组合。输入设备932可以包括触摸屏界面,所述触摸屏界面可以是显示器936的一部分或者与显示器936分开,这将在下面进一步进行讨论。输入设备932可以用作用户选择设备,用于如上所述在图形界面中选择一个或多个图形表示。
[0080]
用户还可以经由存储设备924(例如,可移动磁盘驱动器、闪盘驱动器等)和/或网络接口设备940向计算机系统900输入命令和/或其他信息。诸如网络接口设备940之类的网络接口设备可以用于将计算机系统900连接至诸如网络944之类的各种网络中的一个或多
个,以及连接至网络944的一个或多个远程设备948。网络接口设备的示例包括但不限于网络接口卡(例如,移动网络接口卡、lan卡)、调制解调器及其任意组合。网络的示例包括但不限于广域网(例如,互联网、企业网络)、局域网(例如,与办公室、建筑物、校园或其他相对较小的地理空间相关联的网络)、电话网络、与电话/语音提供商相关联的数据网络(例如,移动通信提供商数据和/或语音网络)、两个计算设备之间的直接连接以及上述项的任意组合。诸如网络944之类的网络可以采用有线和/或无线通信模式。通常,可以使用任何网络拓扑结构。信息(例如,数据、软件920等)可以经由网络接口设备940传送至计算机系统900和/或来自计算机系统900。
[0081]
计算机系统900可以进一步包括视频显示适配器952,用于将可显示图像传送至诸如显示设备936之类的显示设备。显示设备的示例包括但不限于液晶显示器(lcd)、阴极射线管(crt)、等离子显示器、发光二极管(led)显示器以及上述项的任意组合。显示适配器952和显示设备936可以与处理器904结合使用,以提供本公开的各个方面的图形表示。除了显示设备之外,计算机系统900可以包括一个或多个其他外围输出设备,其包括但不限于音频扬声器、打印机以及上述项的任意组合。这样的外围输出设备可以经由外围接口956连接至总线912。外围接口的示例包括但不限于串行端口、usb连接、火线连接、并行连接以及上述项的任意组合。
[0082]
前面已经详细描述了本发明的示例性实施例。在不脱离本发明的主旨和范围的情况下,可以进行各种修改和添加。为了在相关的新的实施例中提供多种特征组合,上述各种实施例中的每一个的特征可以与其他描述的实施例的特征进行适当地组合。此外,虽然前面描述了许多单独的实施例,但是本文所描述的内容仅仅是本发明的原理的应用的说明。此外,尽管本文的特定方法可以被示出和/或描述为以特定顺序执行,但是在实现本文所公开的实施例的普通技术中,顺序是高度可变的。因此,此描述仅意味着作为示例,而不是限制本发明的范围。
[0083]
在以上的描述和权利要求中,诸如"至少一个"或"一个或多个"之类的短语之后可以出现元件或特征的连接列表。术语"和/或"还可以出现在两个或多个元件或特征的列表中。除非与使用短语的上下文隐含地或明确地矛盾,否则这样的短语旨在表示单独列出的任意元素或特征,或者任何列举的元素或特征与任何其他列举的元素或特征的组合。例如,短语"a和b中的至少一个"、"a和b中的一个或多个"和"a和/或b"分别旨在表示"单独的a、单独的b,或者a和b二者"。类似的解释还适用于包含三个或更多项目的列表。例如,短语"a、b和c中的至少一个"、"a、b和c中的一个或多个"、"a、b和/或c"分别旨在表示"单独的a、单独的b、单独的c、a和b二者、a和c二者、b和c二者,或者a和b和c"。此外,上文和权利要求中使用术语"基于"旨在表示"至少部分基于",使得未引用的特征或元素也是允许的。
[0084]
本文描述的主题可以根据期望的配置体现在系统、装置、方法和/或物品中。前面的描述中阐述的实施方式并不代表与本文描述的主题一致的所有实施方式。而是,它们仅仅是与所描述的主题相关的方面一致的一些示例。尽管上文已经详细描述了一些变型,但是其他修改或添加也是可能的。特别地,除了在此阐述的特征和/或变型之外,还可以提供进一步的特征和/或变型。例如,上述实施方式可以针对所公开特征的各种组合和子组合和/或上面公开的几个其他特征的组合和子组合。此外,附图中描述的和/或本文描述的逻辑流程不一定要求所示的特定顺序或先后顺序来实现所期望的结果。其他实施方式可以在
权利要求的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献