在vps中用信号通知位速率信息及图片速率信息的制作方法_3

文档序号:9621413阅读:来源:国知局
9] 此外,分割单元48可以基于前述译码遍次中的前述分割方案的评估将视频数据 块分割成子块。举例来说,分割单元48可初始地将帧或切片分割为LCU,且基于速率失真分 析(例如,速率失真优化等)将LCU中的每一者分割为子CU。模式选择单元40可以进一步 产生指示LCU分割成子CU的四叉树数据结构。四叉树的叶节点CU可包含一或多个PU及 一或多个TU。
[0070] 模式选择单元40可例如基于误差结果选择译码模式(帧内、帧间或层间预测模 式)中的一者,且将所产生的帧内、帧间或层间经译码块提供到求和器50来产生残差块数 据并提供到求和器62来重构经编码块以用作参考帧。模式选择单元40还将语法元素(例 如运动向量、帧内模式指示符、分割信息和其它此类语法信息)提供到熵编码单元56。
[0071] 运动估计单元42和运动补偿单元44可高度集成,但出于概念的目的分别加以说 明。由运动估计单元42执行的运动估计是产生运动向量的过程,所述运动向量估计视频块 的运动。举例来说,运动向量可指示当前视频帧或图片内的视频块的PU相对于参考帧(或 其它经译码单元)内的预测性块相对于当前帧(或其它经译码单元)内正被译码的当前块 的位移。预测性块是被发现在像素差方面与待译码块紧密匹配的块,像素差可通过绝对差 总和(SAD)、平方差总和(SSD)或其它差度量来确定。在一些实例中,视频编码器20可计算 存储于参考帧存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20 可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此, 运动估计单元42可相对于全像素位置和分数像素位置执行运动搜索并且输出具有分数像 素精度的运动向量。
[0072] 运动估计单元42通过比较PU的位置与参考图片的预测性块的位置来计算用于经 帧间译码切片中的视频块的PU的运动向量。参考图片可选自第一参考图片列表(列表0) 或第二参考图片列表(列表1),其中的每一者识别存储在参考图片存储器64中的一或多 个参考图片。运动估计单元42将所计算的运动向量发送到熵编码单元56和运动补偿单元 44 〇
[0073] 由运动补偿单元44执行的运动补偿可涉及基于由运动估计单元42确定的运动向 量来获取或产生预测性块。在一些实例中,运动估计单元42与运动补偿单元44可在功能 上整合。在接收到当前视频块的PU的运动向量后,运动补偿单元44可在参考图片列表中 的一者中定位所述运动向量指向的预测块。求和器50通过从正经译码的当前视频块的像 素值减去预测性块的像素值从而形成像素差值来形成残差视频块,如下文所论述。在一些 实施例中,运动估计单元42可相对于明度分量执行运动估计,且运动补偿单元44可针对色 度分量和明度分量两者使用基于明度分量计算的运动向量。模式选择单元40可产生与视 频块和视频切片相关联的语法元素供视频解码器30在解码视频切片的视频块时使用。
[0074] 作为如上文所描述由运动估计单元42和运动补偿单元44执行的帧间预测的替代 方案,帧内预测单元46可帧内预测或计算当前块。确切地说,帧内预测单元46可以确定用 来对当前块进行编码的帧内预测模式。在一些实例中,帧内预测单元46可以例如在分开的 编码编次期间使用各种帧内预测模式对当前块进行编码,并且帧内预测单元46 (或在一些 实例中为模式选择单元40)可以从所述测试模式中选择适当帧内预测模式来使用。
[0075] 举例来说,帧内预测单元46可使用速率-失真分析计算针对各种测试的帧内预测 模式的速率-失真值,且从所述测试的模式当中选择具有最好速率失真特性的帧内预测模 式。速率失真分析一般确定经编码块与经编码以产生所述经编码块的原始的未经编码块之 间的失真(或误差)的量,以及用于产生经编码块的位速率(也就是说,位数目)。帧内预 测单元46可根据用于各种经编码块的失真和速率计算比率,以确定哪个帧内预测模式对 于所述块展现最佳速率-失真值。
[0076] 在选择用于块的帧内预测模式后,帧内预测单元46可将指示用于块的选定帧内 预测模式的信息提供到熵编码单元56。熵编码单元56可编码指示选定帧内预测模式的信 息。视频编码器20在所发射的位流中可包含配置数据,其可包含多个帧内预测模式索引表 和多个经修改的帧内预测模式索引表(也称为码字映射表),对用于各种块的上下文进行 编码的定义,以及对最可能帧内预测模式、帧内预测模式索引表和经修改的帧内预测模式 索引表的指示以用于所述上下文中的每一者。
[0077] 视频编码器20可包含层间预测单元66。层间预测单元66经配置以使用SVC中可 用的一或多个不同层(例如,基础或参考层)来预测当前块(例如,EL中的当前块)。此预 测可称作层间预测。层间预测单元66利用预测方法以减少层间冗余,进而提高译码效率且 降低计算资源要求。层间预测的一些实例可包含层间帧内预测、层间运动预测及层间残差 预测。层间帧内预测使用基础层中的位于同一地点的块的重构来预测增强层中的当前块。 层间运动预测使用基础层的运动信息来预测增强层中的运动信息。层间残差预测使用基础 层的残差来预测增强层的残差。当基础层与增强层具有不同的空间分辨率时,可由层间预 测单元66执行使用时间缩放功能的空间运动向量缩放及/或层间位置映射,如下文更详细 地描述。
[0078] 视频编码器20通过从正译码原始视频块减去来自模式选择单元40的预测数据而 形成残差视频块。求和器50表示执行此减法运算的一或多个组件。变换处理单元52将例 如离散余弦变换(DCT)或概念上类似的变换等变换应用于残差块,从而产生包括残差变换 系数值的视频块。变换处理单元52可以执行概念上类似于DCT的其它变换。举例来说,还 可使用离散正弦变换(DST)、小波变换、整数变换、子带变换或其它类型的变换。
[0079] 变换处理单元52可将变换应用于残差块,从而产生残差变换系数的块。所述变换 可将残差信息从像素值域转换到变换域(例如,频域)。变换处理单元52可将所得变换系 数发送到量化单元54。量化单元54量化所述变换系数以进一步减小位速率。量化过程可 减少与系数中的一些系数或全部相关联的位深度。可通过调节量化参数来修改量化程度。 在一些实例中,量化单元54可以接着执行对包含经量化的变换系数的矩阵的扫描。替代 地,熵编码单元56可执行所述扫描。
[0080] 在量化之后,熵编码单元56对经量化变换系数进行熵编码。举例来说,熵编码单 元56可执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、 基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵 译码技术。在基于上下文的熵译码的情况下,上下文可以基于相邻块。在由熵编码单元56 进行熵译码之后,可将经编码位流发射到另一装置(例如,视频解码器30),或者将所述经 编码位流存档以用于稍后发射或检索。
[0081] 反量化单元58和反变换单元60分别应用反量化和反变换以在像素域中重构残差 块(例如,用于稍后用作参考块)。运动补偿单元44可通过将残差块添加到参考帧存储器 64的帧中的一者的预测性块来计算参考块。运动补偿单元44还可将一或多个内插滤波器 应用于经重构的残差块来计算用于在运动估计中使用的子整数像素值。求和器62将经重 构的残差块添加到由运动补偿单元44产生的经运动补偿的预测块,以产生经重构的视频 块以用于存储于参考帧存储器64中。经重构的视频块可由运动估计单元42和运动补偿单 元44用作参考块以对后续视频帧中的块进行帧间译码。
[0082] 多层视频编码器
[0083] 图2B是说明可实施根据本发明中描述的方面的技术的多层视频编码器21的实例 的框图。视频编码器21可经配置以处理多层视频帧,例如,用于SHVC和多视图译码。此外, 视频编码器21可经配置以执行本发明的技术中的任一者或全部。
[0084] 视频编码器21包含视频编码器20A和视频编码器20B,其中的每一者可经配置为 图2A的视频编码器20且可执行上文关于视频编码器20所描述的功能。此外,如再使用参 考数字所指示,视频编码器20A和20B可包含系统及子系统中的至少一些作为视频编码器 20。虽然将视频编码器21说明为包含两个视频编码器20A和20B,但视频编码器21不受如 此限制且可包含任何数目的视频编码器20层。在一些实施例中,视频编码器21可针对存 取单元中的每一图片或帧包含视频编码器20。例如,包含五个图片的存取单元可由包含五 个编码器层的视频编码器处理或编码。在一些实施例中,视频编码器21可包含比存取单元 中的帧多的编码器层。在一些此类情况下,当处理一些存取单元时,一些视频编码器层可能 不在作用中。
[0085] 除了视频编码器20A和20B外,视频编码器21还可包含再取样单元90。在一些情 况下,再取样单元90可上取样所接收的视频帧的基础层以(例如)创建增强层。再取样单 元90可对与帧的所接收的基础层相关联的特定信息上取样,但不对其它信息上取样。举例 来说,再取样单元90可上取样基础层的空间大小或像素数目,但切片的数目或图片次序计 数可保持恒定。在一些情况下,再取样单元90可不处理所接收的视频及/或可为任选的。 例如,在一些情况下,模式选择单元40可执行上取样。在一些实施例中,再取样单元90经 配置以对层进行上取样且重新组织、重新界定、修改或调整一或多个切片以符合一组切片 边界规则及/或光栅扫描规则。虽然主要描述为对基础层或存取单元中的较低层进行上取 样,但在一些情况下,再取样单元90可对层进行下取样。例如,如果在视频的流式传输期间 减小带宽,那么可对帧进行下取样而不是上取样。再取样单元90还可进一步经配置以执行 裁剪和/或填补操作。
[0086] 再取样单元90可经配置以从较低层编码器(例如,视频编码器20A)的经解码图 片缓冲器114接收图片或帧(或与图片相关联的图片信息)且对所述图片(或所接收的图 片信息)上取样。接着可将经上取样图片提供到较高层编码器(例如,视频编码器20B)的 模式选择单元40,所述较高层编码器经配置以编码与较低层编码器相同的存取单元中的图 片。在一些情况下,较高层编码器为从较低层编码器去除的一个层。在其它情况下,在图2B 的层0编码器与层1编码器之间可存在一或多个较高层编码器。
[0087] 在一些情况下,可省略或绕过再取样单元90。在此些情况下,来自视频编码器20A 的经解码图片缓冲器64的图片可直接提供到视频编码器20B的模式选择单元40,或至少 不提供到再取样单元90。例如,如果提供到视频编码器20B的视频数据及来自视频编码器 20A的经解码图片缓冲器64的参考图片具有相同的大小或分辨率,那么可将参考图片提供 到视频编码器20B而没有任何再取样。
[0088] 在一些实施例中,视频编码器21使用下取样单元94下取样待提供到较低层编码 器的视频数据,随后将所述视频数据提供到视频编码器20A。替代地,下取样单元94可为能 够对视频数据上取样或下取样的再取样单元90。在另外其它实施例中,可省略下取样单元 94〇
[0089] 如图2B中所说明,视频编码器21可进一步包含多路复用器98或mux。mux 98可 从视频编码器21输出组合的位流。可通过从视频编码器20A和20B中的每一者取得位流 且交替在给定时间输出哪一位流来创建组合的位流。虽然在一些情况下,可一次一个位地 交替来自两个(或在两个以上视频编码器层的情况下,两个以上)位流的位,但在许多情况 下,不同地组合所述位流。举例来说,可通过一次一个块地交替选定位流来产生输出位流。 在另一实例中,可通过从视频编码器20A和20B中的每一者输出非1:1比率的块来产生输 出位流。举例来说,可从视频编码器20B输出用于从视频编码器20A输出的每一块的两个 块。在一些实施例中,可预编程来自mux 98的输出流。在其它实施例中,mux 98可基于从 视频编码器21外部的系统(例如从源装置12上的处理器)接收的控制信号而组合来自视 频编码器20A、20B的位流。可基于来自视频源18的视频的分辨率或位速率、基于信道16 的带宽、基于与用户相关联的预订(例如,付费预订与免费预订)或基于用于确定来自视频 编码器21的所要分辨率输出的任何其它因素而产生控制信号。
[0090] 视频解码器
[0091] 图3A是说明可实施本发明中描述的方面的技术的视频解码器的实例的框图。视 频解码器30可经配置以处理视频位流的单层(例如,针对HEVC)。此外,视频解码器30可 经配置以执行本发明的技术中的任一者或全部,包含但不限于在VPS中用信号通知视图ID 位深度且用信号通知位速率信息及/或图片速率信息的方法,其在上文及下文相对于图4 到6更详细地描述。作为一个实例,层间预测单元75可经配置以执行本发明中描述的技术 中的任一者或全部。然而,本发明的方面不限于此。在一些实例中,本发明中描述的技术可 在视频解码器30的各种组件之间共享。在一些实例中,另外或替代地,处理器(未图示) 可经配置以执行本发明中描述的技术中的任一者或全部。
[0092] 出于解释的目的,本发明描述在HEVC译码的背景下的视频解码器30。然而,本发 明的技术可以适用于其它译码标准或方法。图3A的解码器30说明编解码器的单层。然而, 如将关于图3B进一步描述,可复制视频编码器30中的一些或全部以用于根据多层编解码 器进行处理。
[0093] 在图3A的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测 单元74、层间预测单元75、反量化单元76、反变换单元78、参考帧存储器82及求和器80。 在一些实施例中,运动补偿单元72和/或帧内预测单元74可经配置以执行层间预测,在此 情况下,可省略层间预测单元75。在一些实例中,视频解码器30可执行一般与关于视频编 码器20 (图2A)描述的编码遍次互逆的解码遍次)。运动补偿单元72可基于从熵解码单元 70接收的运动向量产生预测数据,而帧内预测单元74可基于从熵解码单元70接收的帧内 预测模式指示符产生预测数据。参考帧存储器82可包含经解码图片缓冲器。经解码图片 缓冲器是具有其一般含义的广义术语,且在一些实施例中涉及视频编解码器管理的参考帧 的数据结构。
[0094] 在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视 频块和相关联的语法元素的经编码视频位流。视频解码器30的熵解码单元70对位流熵解 码以产生经量化系数、运动向量或帧内预测模式指示符和其它语法元素。熵解码单元70将 运动向量及其它语法元素转发到运动补偿单元72。视频解码器30可在视频切片层级及/ 或视频块层级接收语法元素。
[0095] 当视频切片经译码为经帧内译码(I)切片时,帧内预测单元74可以基于用信号通 知的帧内预测模式及来自当前帧或图片的先前经解码块的数据产生用于当前视频切片的 视频块的预测数据。在视频帧经译码为经帧间译码(例如,B、P或GPB)切片时,运动补偿单 元72基于从熵解码单元70接收的运动向量和其它语法元素产生用于当前视频切片的视频 块的预测块。可从参考图片列表中的一者内的参考图片中的一者产生预测性块。视频解码 器30可基于存储在参考帧存储器82中的参考图片使用默认构建技术构建参考帧列表一一 列表0和列表1。
[0096] 运动补偿单元72通过解析运动向量和其它语法元素确定用于当前视频切片的视 频块的预测信息,且使用所述预测信息产生用于经解码的当前视频块的预测块。举例来说, 运动补偿单元72使用所接收语法元素中的一些语法元素确定用于对视频切片的视频块译 码的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,B切片、P切片或 GPB切片)、切片的参考图片列表中的一或多者的构建信息、切片的每一经帧间编码的视频 块的运动向量、切片的每一经帧间译码的视频块的帧间预测状态,以及用以解码当前视频 切片中的视频块的其它信息。
[0097] 运动补偿单元72还可以基于内插滤波器执行内插。运动补偿单元72可使用如由 视频编码器20在视频块的编码期间使用的内插滤波器来计算参考块的子整数像素的经内 插值。在此情况下,运动补偿单元72可根据接收的语法元素而确定由视频编码器20使用 的内插滤波器并使用所述内插滤波器来产生预测性块。
[0098] 视频解码器30还可包含层间预测单元75。层间预测单元75经配置以使用SVC中 可用的一或多个不同层(例如,基础或参考层)预测当前块(例如,EL中的当前块)。此预 测可称作层间预测。层间预测单元75利用预测方法减少层间冗余,进而提高译码效率且降 低计算资源要求。层间预测的一些实例可包含层间帧内预测、层间运动预测及层间残差预 测。层间帧内预测使用基础层中的位于同一地点的块的重构来预测增强层中的当前块。层 间运动预测使用基础层的运动信息来预测增强层中的运动。层间残差预测使用基础层的残 差来预测增强层的残差。当基础及增强层具有不同的空间分辨率时,可通过层间预测单元 75使用时间缩放功能执行空间运动向量缩放及/或层间位置映射,如下文更详细地描述。
[0099] 反量化单元76将提供于位流中且由熵解码单元70解码的经量化的变换系数反量 化(即,解量化)。反量化过程可包含使用由视频解码器30针对视频切片中的每一视频块 计算以确定应应用的量化程度及同样的反量化程度的量化参数QPY。
[0100] 反变换单元78对变换系数应用反变换(例如,反DCT、反DST、反整数变换或概念 上类似的反变换过程),以便产生像素域中的残差块。
[0101] 在运动补偿单元72基于运动向量及其它语法元素产生当前视频块的预测性块 后,视频解码器30通过对来自反变换单元78的残差块与由运动补偿单元72产生的对应预 测性块求和而形成经解码的视频块。求和器90表示执行此求和运算的一或多个组件。视 需要,还可应用解块滤波器以对经解码块进行滤波,以便移除成块假影。还可使用其它环路 滤波器(在译码环路中或在译码环路之后)来使像素转变变平滑或者以其它方式改善视频 质量。接着将给定帧或图片中的经解码视频块存储在参考帧存储器82中,所述参考图片存 储器存储用于后续运动补偿的参考图片。参考帧存储器82还存储经解码视频以用于稍后 呈现在显示装置(例如,图1的显示装置32)上。
[0102] 多层解码器
[0103] 图3B是说明可实施根据本发明中描述的方面的技术的多层视频解码器31的实例 的框图。视频解码器31可经配置以处理多层视频帧,例如,用于SHVC及多视图译码。另外, 视频解码器31可经配置以执行本发明的技术中的任一者或全部。
[0104] 视频解码器31包含视频解码器30A和视频解码器30B,其中的每一者可经配置为 图3A的视频解码器30且可执行上文关于视频解码器30所描述的功能。此外,如再使用参 考数字所指示,视频解码器30A和30B可包含系统及子系统中的至少
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1