用于视频译码中自适应颜色变换的量化参数推导及偏移的制作方法

文档序号:11532825阅读:219来源:国知局
用于视频译码中自适应颜色变换的量化参数推导及偏移的制造方法与工艺

本申请案请求以下各者的权益:

2014年10月7日申请的美国临时专利申请案第62/061,099号,及

2014年10月15日申请的美国临时专利申请案第62/064,347号,

以上美国临时专利申请案的全部内容全文合并到本文中。

本发明涉及视频译码(诸如,视频编码或视频解码)。



背景技术:

数字视频能力可合并到广泛范围的装置中,包含数字电视、数字直播广播系统、无线广播系统、个人数字助理(pda)、膝上型或台式计算机、平板计算机、电子书阅读器、数字相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝或卫星无线电电话(所谓的“智能电话”)、视频电话会议装置、视频流式发射装置及类似者。数字视频装置实施视频压缩技术,诸如在由mpeg-2、mpeg-4、itu-th.263、itu-th.264/mpeg-4第10部分(高级视频译码(avc))所定义的标准、目前正在发展的高效率视频译码(hevc)标准及这些标准的扩展中所描述的视频压缩技术。视频装置可通过实施这些视频压缩技术而更有效地发射、接收、编码、解码和/或存储数字视频资讯。

视频压缩技术执行空间(图片内)预测和/或时间(图片间)预测来减少或移除视频序列中固有的冗余。对于基于块的视频译码,可将视频切片(即,视频帧或视频帧的一部分)分割为视频块(其也可被称作树块)、译码单元(cu)和/或译码节点。可使用相对于同一图片中的相邻块中的参考样本的空间预测来编码图片的帧内译码(i)的切片中的视频块。图片的帧间译码(p或b)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。

空间或时间预测产生待译码的块的预测性块。残余数据表示待译码的原始块与预测性块之间的像素差。根据指向形成预测性块的参考样本的块的运动向量及指示经译码块与预测性块之间的差异的残余数据来编码经帧间译码块。根据帧内译码模式及残余数据来编码帧内译码块。为进行进一步压缩,可将残余数据从像素域变换至变换域,从而产生残余变换系数,可随后量化所述残余变换系数。可扫描最初布置成二维阵列的经量化变换系数以便产生变换系数的一维向量,且可应用熵译码以实现甚至更多压缩。



技术实现要素:

本发明描述与在使用颜色空间转换译码时确定量化参数相关的技术,且此外,本发明描述用于在使用颜色空间变换译码时在视频数据的经编码位流中产生并解析用于用信号传递量化参数的各种语法元素的技术。

在一项实例中,一种解码视频数据的方法包含:基于视频数据的色度取样格式针对视频数据的一或多个块确定启用自适应颜色变换;基于确定启用自适应颜色变换确定一或多个块的量化参数;及基于经确定量化参数而解量化转换系数。

在另一实例中,一种用于解码视频数据的装置包含视频数据存储器;及一或多个处理器,所述一或多个处理器经配置以基于视频数据的色度取样格式针对视频数据的一或多个块确定启用自适应颜色变换;基于确定启用自适应颜色变换确定一或多个块的量化参数;以及基于经确定量化参数而解量化转换系数。

在另一实例中,一种用于解码视频数据的设备包含用于基于视频数据的色度取样格式确定针对视频数据的一或多个块启用自适应颜色变换的装置;用于基于确定启用自适应颜色变换而确定一或多个块的量化参数的装置;以及用于基于经确定量化参数而解量化转换系数的装置。

在另一实例中,一种计算机可读取媒体存储指令,所述指令在由一或多个处理器执行时使一或多个处理器:基于视频数据的色度取样格式确定针对视频数据的一或多个块启用自适应颜色变换;基于确定启用自适应颜色变换而确定一或多个块的量化参数;以及基于经确定量化参数而解量化转换系数。

在另一实例中,一种解码视频数据的方法包含针对视频数据的一或多个块确定启用自适应颜色变换;响应于启用自适应颜色变换而在图片参数集合中接收一或多个偏移值;基于一或多个偏移值中的第一者确定第一颜色空间的第一颜色分量的量化参数;以及基于量化参数而解量化转换系数。

在另一实例中,一种用于解码视频数据的装置包含视频数据存储器;一或多个处理器,所述一或多个处理器经配置以针对视频数据的一或多个块确定启用自适应颜色变换;响应于启用自适应颜色变换而在图片参数集合中接收一或多个偏移值;基于一或多个偏移值中的第一者确定第一颜色空间的第一颜色分量的量化参数;以及基于量化参数而解量化转换系数。

一种用于解码视频数据的设备包含用于针对视频数据的一或多个块确定启用自适应颜色变换的装置;用于响应于启用自适应颜色变换而在图片参数集合中接收一或多个偏移值的装置;用于基于一或多个偏移值中的第一者确定第一颜色空间的第一颜色分量的量化参数的装置;以及用于基于量化参数而解量化转换系数的装置。

在另一实例中,一种计算机可读存储媒体存储指令,所述指令在由一或多个处理器执行时使一或多个处理器:针对视频数据的一或多个块确定启用自适应颜色变换;响应于启用自适应颜色变换而在图片参数集合中接收一或多个偏移值;基于一或多个偏移值中的第一者确定第一颜色空间的第一颜色分量的量化参数;以及基于量化参数而解量化转换系数。

在随附图式及以下描述中阐述本发明的一或多个实例的细节。本发明的其它特征、目标及优势将从描述、图式及权利要求书变得显而易见。

附图说明

图1为绘示可利用本发明中所描述的技术的实例视频编码及解码系统的框图。

图2a至2c为绘示视频数据的不同样本格式的概念图。

图3为绘示根据4:2:0样本格式而格式化的16×16译码单元的概念图。

图4为绘示根据4:2:2样本格式而格式化的16×16译码单元的概念图。

图5为绘示根据本发明的一或多个技术的目标块及帧内8×8块的参考样本的实例的概念图。

图6为绘示可实施本发明中所描述的技术的实例视频编码器的框图。

图7为绘示可实施本发明中所描述的技术的实例视频解码器的框图。

图8为绘示根据本发明的一或多个方面的视频编码器的另一实例的框图,所述视频编码器可利用用于使用颜色变换将具有rgb颜色空间的视频数据变换为具有第二颜色空间的视频数据的技术。

图9为绘示根据本发明的一或多个方面的视频编码器的另一实例的框图,所述视频编码器可利用用于使用反向颜色变换将具有第一颜色空间的视频数据的块反变换为具有第二rgb颜色空间的视频数据的块的技术;

图10为绘示根据本发明的技术的实例视频解码方法的流程图。

图11为绘示根据本发明的技术的实例视频编码方法的流程图。

图12为绘示根据本发明的技术的实例视频解码方法的流程图。

图13为绘示根据本发明的技术的实例视频编码方法的流程图。

图14为绘示根据本发明的技术的实例视频解码方法的流程图。

具体实施方式

本发明描述关于自适应颜色变换量化参数推导的技术。本发明识别关于如何在使用自适应颜色变换时量化参数推导的各种问题且提出解决方案以处理这些问题。本发明描述视频译码技术,包含关于新兴的屏幕内容译码(screencontentcoding;scc)扩展及最近定案的高效率视频译码(hevc)标准的范围扩展(rangeextension;rext)的技术。scc及范围扩展正经设计以潜在地支持高位深度(例如,大于8位)和/或不同色度取样格式(诸如,4:4:4、4:2:2、4:2:0、4:0:0等),且因此正经设计以包含并未包含于基础hevc标准中的新的译码方法。

一个这种译码工具为颜色空间转换译码。在颜色空间转换译码中,视频编码器可将残余数据从第一颜色空间(例如,ycbcr)转换至第二颜色空间(例如,rgb)以便实现更佳的译码质量(例如,更佳的速率—失真权衡)。与残余数据的颜色空间无关,视频编码器通常将残余数据变换为变换系数并且量化所述变换系数。视频解码器执行解量化变换系数及反变换所述变换系数的互逆过程以重构建残余数据。视频编码器产生包含于视频数据的经编码位流中的量化参数,所述量化参数指示用于量化变换系数等级中的缩放量。视频解码器剖析位流以确定由视频编码器使用的量化参数。量化参数也可由其它视频译码过程(诸如,解块滤波)使用。

本发明描述关于在使用颜色空间转换译码时确定量化参数的技术,且此外,本发明描述用于在使用颜色空间转换译码时将量化参数作为视频数据的经编码位流的一部分从编码器用信号传递至解码器的技术。

图1为绘示可使用本发明中所描述的技术(包含用于以ibc模式译码块的技术及用于并行处理的技术)的实例视频编码及解码系统10的框图。如图1中所展示,系统10包含源装置12,其产生稍后时间将由目的地装置14解码的经编码视频数据。源装置12及目的地装置14可包括广泛范围的装置中的任一者,包含台式计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(诸如,所谓的“智能”电话)、所谓的“智能”平板、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、视频流式发射装置或类似者。在一些情况下,源装置12及目的地装置14可经装备以进行无线通信。

目的地装置14可经由链接16接收待解码的经编码视频数据。链接16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一项实例中,链接16可包括使得源装置12能够实时将经编码视频数据直接发射到目的地装置14的通信媒体。可根据通信标准(诸如,无线通信协议)调制经编码的视频数据,且将经编码的视频数据发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,诸如,射频(rf)频谱或一或多个物理发射线。通信媒体可形成分组式网络(诸如,局域网、广域网或诸如互联网的全球网)的部分。通信媒体可包含路由器、交换器、基站或可用于促进从源装置12到目的地装置14的通信的任何其它设备。

替代性地,可将经编码数据从输出接口22输出到存储装置17。类似地,可通过输入接口从存储装置17存取经编码数据。存储装置17可包含各种分散式或本地存取的数据存储媒体中的任一者,诸如,硬盘驱动器、蓝光光盘、dvd、cd-rom、闪速存储器、易失性或非易失性存储器,或用于存储经编码视频数据的任何其它适合的数字存储媒体。在另一实例中,存储装置17可对应于文件服务器或可保持由源装置12产生的经编码视频的另一中间存储装置。目的地装置14可经由流式发射或下载从存储装置17存取所存储的视频数据。文件服务器可为能够存储经编码视频数据且将所述经编码视频数据发射到目的地装置14的任何类型的服务器。实例文件服务器包含网页服务器(例如,用于网站)、ftp服务器、网络附接存储(nas)装置或本地磁盘驱动器。目的地装置14可经由任何标准数据连接(包含互联网连接)而存取经编码视频数据。其可包含无线信道(例如,根据无线标准调制,该无线标准包含适用于存取文件服务器上所存储的经编码视频数据的无线局域网标准(诸如,wi-fi)或无线电信标准(诸如,lte或另一蜂窝通信标准))、有线连接(例如,dsl、线缆调制解调器等)或两者的组合。经编码视频数据从存储装置17的发射可为流式发射、下载发射或两者的组合。

本发明的技术不必限于无线应用或设置。所述技术可应用于支持多种多媒体应用中的任一者的视频译码,所述应用诸如,空中电视广播、有线电视发射、卫星电视发射、(例如)经由互联网的流式视频发射、用于存储于数据存储媒体上的数字视频的编码、存储于数据存储媒体上的数字视频的解码或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频发射以支持诸如视频流式发射、视频播放、视频广播和/或视频电话的应用。

在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)和/或发射器。在源装置12中,视频源18可包含源,诸如视频捕获装置(例如,摄像机)、含有先前所捕获的视频的视频档案库、用以从视频内容提供者接收视频的视频馈送接口,和/或用于产生计算机图形数据作为源视频的计算机图形系统,或这些源的组合。作为一项实例,如果视频源18为摄像机,则源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,本发明中所描述的技术一般可适用于视频译码,且可应用于无线和/或有线应用。

可由视频编码器20编码所捕获的视频、预捕获的视频或计算机产生的视频。经编码视频数据可经由源装置12的输出接口22直接发射到目的地装置14。经编码视频数据也可(或替代地)存储至存储装置17上以供稍后由目的地装置14或其它装置存取以用于解码和/或播放。

目的地装置14包含输入接口28、视频解码器30及显示装置32。在一些情况下,输入接口28可包含接收器和/或调制解调器。目的地装置14的输入接口28经由链接16接收经编码视频数据。经由链接16传达或在存储装置17上提供的经编码视频数据可包含由视频编码器20产生以由视频解码器(诸如,视频解码器30)用于解码视频数据的各种语法元素。可包含这些语法元素与在通信媒体上发射、存储于存储媒体上或存储于文件服务器上的经编码视频数据。

显示装置32可与目的地装置14集成或位于目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且也经配置以与外部显示装置接口连接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置32向用户显示经解码视频数据,且可包括各种显示装置(诸如,液晶显示器(lcd)、等离子体显示器、有机发光二极管(oled)显示器或另一类型的显示装置)中的任一者。

视频编码器20及视频解码器30可根据诸如hevc的视频压缩标准操作,且可符合hevc测试模型(hm)。hevc标准的工作草案(被称作“hevc工作草案10”或“hevcwd10”)描述于bross等人的“editors'proposedcorrectionstohevcversion1”中(itu-tsg16wp3及iso/iecjtc1/sc29/wg11的视频译码联合合作小组(jct-vc)在2013年4月韩国仁川的第13次会议)。另一hevc草案规范可从http://phenix.int-evry.fr/jct/doc_end_user/documents/15_geneva/wg11/jctvc-o1003-v2.zip获得。本发明中所描述的技术也可根据当前正在开发中的hevc标准的扩展而操作。

替代地或另外,视频编码器20及视频解码器30可根据其它专属或行业标准(诸如,itu-th.264标准,替代地被称作mpeg-4,第10部分,高级视频译码(avc))或这些标准的扩展而操作。然而,本发明的技术不限于任何特定译码标准。视频压缩标准的其它实例包含itu-th.261、iso/iecmpeg-1visual、itu-th.262或iso/iecmpeg-2visual、itu-th.263、iso/iecmpeg-4visual及itu-th.264(也称为iso/iecmpeg-4avc),包含其可调式视频译码(svc)及多视图视频译码(mvc)扩展。

hevc的设计最近已由itu-t视频译码专家组(vceg)及iso/iec运动图片专家组(mpeg)的jct-vc定案。对hevc的范围扩展(被称作hevcrext)也正由jct-vc开发。范围扩展的最近工作草案(wd)(下文中被称作rextwd7)可自http://phenix.int-evry.fr/jct/doc_end_user/documents/17_valencia/wg11/jctvc-q1005-v4.zip获得。

本发明将大体上将最近定案的hevc规范文字称为hevc版本1或基础hevc。范围扩展规范可变为hevc的版本2。关于许多译码方法(诸如,运动向量预测),hevc版本1及范围扩展规范技术上类似。因此,不论何时本发明描述相对于hevc版本1的变化,相同变化也可适用于范围扩展规范,其大体上包含基础hevc规范,加上一些额外译码工具。此外,可大体上假定hevc版本1模块也可合并到实施hevc范围扩展的解码器中。

用于屏幕内容材料(诸如,运动的文字及图形)的新的译码工具当前正在开发中且正预期包含于未来视频译码标准中,包含hevc的未来版本。这些新的译码工具潜在地改善屏幕内容的译码效率。由于有迹象表明可通过使用新颖的专用译码工具开发屏幕内容的特性获得译码效率的重要改善,已以可能开发包含用于scc的特定工具的hevc标准的未来扩展为目标发布提案(callforproposals;cfp)。已邀请公司及组织响应于此提案而提交建议。在mpeg文件n14174中描述此cfp的使用情况及要求。在第17次jct-vc会议期间,建立了scc测试模型(scm)。最新的scc工作草案(wd)为jctvc-u1005且在http://phenix.int-evry.fr/jct/doc_end_user/documents/21_warsaw/wg11/jctvc-u1005-v1.zip处可获得。

本发明预期,源装置12的视频编码器20可经配置以根据这些当前或未来标准中的任一者编码视频数据。类似地,本发明也预期,目的地装置14的视频解码器30可经配置以根据这些当前或未来标准中的任一者解码视频数据。

尽管图1中未展示,但在一些方面中,视频编码器20及视频解码器30可各自与音讯编码器及解码器集成,且可包含适当的mux-demux单元或其它硬件及软件,以处置共同数据流或单独数据流中的音讯及视频两者的编码。在一些实例中,如果适用,则mux-demux单元可符合ituh.223多路复用器协议或其它协议(诸如,用户数据报协议(udp))。

视频编码器20及视频解码器30各自可实施为各种适合的编码器电路中的任一者,诸如,一或多个微处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、离散逻辑、软件、硬件、固件或其任何组合。当所述技术部分以软件实施时,装置可将用于软件的指令存储于合适的非暂时性计算机可读媒体中,且在硬件中使用一或多个处理器执行指令以执行本发明的技术。视频编码器20及视频解码器30中的每一者可包含于一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为各别装置中的组合式编码器/解码器(codec)的部分。

如上文介绍,jct-vc最近已定案hevc标准的开发。hevc标准化努力基于视频译码装置的演进模型(被称作hevc测试模型(hm))。hm假定视频译码装置相对于根据(例如)itu-th.264/avc的现有装置的若干额外能力。例如,h.264提供九个帧内预测编码模式,而hm可提供多达三十五个帧内预测编码模式。

在hevc及其它视频译码规范中,视频序列通常包含一系列图片。图片也可被称作“帧”。图片可包含三个样本阵列,表示为sl、scb及scr。sl为亮度样本的二维阵列(即,块)。scb为cb彩度(chrominance)样本的二维阵列。scr为cr彩度样本的二维阵列。彩度样本在本文中也可被称作“色度”样本。在其它情况下,图片可为单色的,且可仅包含亮度样本阵列。

为产生图片的经编码表示,视频编码器20可产生译码树型单元(codingtreeunit;ctu)的集合。ctu中的每一者可包括亮度样本的译码树块、色度样本的两个对应译码树块及用以译码译码树块的样本的语法结构。在单色图片或具有三个单独彩色平面的图片中,ctu可包括单一译码树块及用以对译码树块的样本进行译码的语法结构。译码树块可为样本的n×n块。ctu也可被称作“树块”或“最大译码单元”(largestcodingunit;lcu)。hevc的ctu可广泛地类似于诸如h.264/avc的其它标准的宏块。然而,ctu未必限于特定大小,且可包含一或多个译码单元(cu)。切片可包含在光栅扫描次序中连续排序的整数数目个ctu。

为产生经译码ctu,视频编码器20可对ctu的译码树块递回地执行四分树分割,以将译码树块划分成译码块,因此命名为“译码树型单元”。译码块可为样本的n×n块。cu可包括具有亮度样本阵列、cb样本阵列及cr样本阵列的图片的亮度样本的译码块,及色度样本的两个对应译码块,及用于对译码块的样本进行译码的语法结构。在单色图片或具有三个单独颜色平面的图片中,cu可包括单一译码块及用于译码块的样本进行译码的语法结构。

视频编码器20可将cu的译码块分割为一或多个预测块。预测块为供应用相同预测的样本的矩形(即,正方形或非正方形)块。cu的预测单元(pu)可包括亮度样本的预测块、色度样本的两个对应预测块及用以对预测块进行预测的语法结构。在单色图片或具有三个单独颜色平面的图片中,pu可包括单一预测块及用以对预测块进行预测的语法结构。视频编码器20可针对cu的每一pu的亮度预测块、cb预测块及cr预测块产生预测性亮度块、预测性cb块及预测性cr块。

视频编码器20可使用帧内预测或帧间预测以产生pu的预测性块。如果视频编码器20使用帧内预测产生pu的预测性块,则视频编码器20可基于与pu相关联的图片的经解码样本产生pu的预测性块。如果视频编码器20使用帧间预测以产生pu的预测性块,则视频编码器20可基于除与pu相关联的图片的外的一或多个图片的经解码样本产生pu的预测性块。

在视频编码器20产生cu的一或多个pu的预测性亮度块、预测性cb块及预测性cr块之后,视频编码器20可产生cu的亮度残余块。cu的亮度残余块中的每一样本指示cu的预测性亮度块中的一者中的亮度样本与cu的原始亮度译码块中的对应样本之间的差异。另外,视频编码器20可产生cu的cb残余块。cu的cb残余块中的每一样本可指示cu的预测性cb块中的一者中的cb样本与cu的原始cb译码块中的对应样本之间的差异。视频编码器20也可产生cu的cr残余块。cu的cr残余块中的每一样本可指示cu的预测性cr块中的一者中的cr样本与cu的原始cr译码块中的对应样本之间的差异。

此外,视频编码器20可使用四分树分割以将cu的亮度残余块、cb残余块及cr残余块分解为一或多个亮度变换块、cb变换块及cr变换块。变换块为应用相同变换的样本的矩形(即,正方形或非正方形)块。cu的变换单元(tu)可包括亮度样本的变换块、色度样本的两个对应变换块及用以变换块样本的语法结构。因此,cu的每一tu可与亮度变换块、cb变换块及cr变换块相关联。与tu相关联的亮度变换块可为cu的亮度残余块的子块。cb变换块可为cu的cb残余块的子块。cr变换块可为cu的cr残余块的子块。在单色图片或具有三个单独颜色平面的图片中,tu可包括单一变换块及用以对变换块的样本进行变换的语法结构。

视频编码器20可将一或多个变换应用至tu的亮度变换块以产生tu的亮度系数块。系数块可为变换系数的二维阵列。变换系数可为纯量。视频编码器20可将一或多个变换应用于tu的cb变换块以产生tu的cb系数块。视频编码器20可将一或多个变换应用至tu的cr变换块以产生tu的cr系数块。

在产生系数块(例如,亮度系数块、cb系数块或cr系数块)之后,视频编码器20可量化所述系数块。量化通常指代对变换系数进行量化以可能减少用以表示变换系数的数据的量,从而提供进一步压缩的过程。在视频编码器20量化系数块之后,视频编码器20可熵编码指示经量化变换系数的语法元素。例如,视频编码器20可对指示经量化变换系数的语法元素执行上下文自适应二进制算术译码(cabac)。

视频编码器20可输出包含形成经译码图片及相关联数据的表示的位序列的位流。位流可包括nal单元序列。nal单元为含有nal单元中的数据的类型的指示的语法结构及含有呈视需要穿插有模拟阻止位的rbsp形式的数据的字节。nal单元中的每一者包含nal单元标头,且封装rbsp。nal单元标头可包含指示nal单元类型码的语法元素。由nal单元的nal单元标头指定的nal单元类型码指示nal单元的类型。rbsp可为含有封装于nal单元内的整数数目个字节的语法结构。在一些情况下,rbsp包含零位。

不同类型的nal单元可封装不同类型的rbsp。例如,第一类型的nal单元可封装pps的rbsp,第二类型的nal单元可封装经译码切片的rbsp,第三类型的nal单元可封装sei消息的rbsp等。封装视频译码数据的rbsp(与参数集及sei消息的rbsp相对)的nal单元可被称作vclnal单元。

视频解码器30可接收由视频编码器20产生的位流。另外,视频解码器30可剖析位流以自位流获得语法元素。视频解码器30可至少部分基于自位流获得的语法元素而重构建视频数据的图片。重构建视频数据的过程可大体上与由视频编码器20执行的过程互逆。另外,视频解码器30可反量化与当前cu的tu相关联的系数块。视频解码器30可对系数块执行反变换,以重构建与当前cu的tu相关联的变换块。通过将当前cu的pu的预测性块的样本添加至当前cu的tu的变换块的对应样本,视频解码器30可重构建当前cu的译码块。通过重构建图片的每一cu的译码块,视频解码器30可重构建图片。

也可被称作色度格式的视频取样格式可相对于包含于cu中的亮度样本的数目定义包含于cu中的色度样本的数目。取决于色度分量的视频取样格式,u及v分量的大小(就样本的数目来说)可与y分量的大小相同或不同。在hevc标准中,定义称为chroma_format_idc的值以指示色度分量相对于亮度分量的不同取样格式。在hevc中,在sps中用信号传递chroma_format_idc。表1说明chroma_format_idc与相关联的色度格式的值之间的关系。

表1:hevc中定义的不同色度格式

在表1中,变量subwidthc及subheightc可用以指示亮度分量的样本的数目与每一色度分量的样本的数目之间的水平及垂直取样速率比。在表1中所描述的色度格式中,两个色度分量具有相同取样速率。因此,在4:2:0取样中,两个色度阵列中的每一者具有亮度阵列的高度的一半及宽度的一半,而在4:2:2取样中,两个色度阵列中的每一者具有与亮度阵列相同的高度及亮度阵列的宽度的一半。在4:4:4取样中,两个色度阵列中的每一者可具有与亮度阵列相同的高度及宽度,或在一些情况下,可将三个颜色平面全部单独处理为单色取样图片。

在表1的实例中,对于4:2:0格式,针对水平及垂直方向两者,亮度分量的取样速率为色度分量的取样速率的两倍。因此,对于根据4:2:0格式经格式化的译码单元,亮度分量的样本阵列的宽度及高度为色度分量的每一样本阵列的宽度及高度的两倍。类似地,对于根据4:2:2格式经格式化的译码单元,亮度分量的样本阵列的宽度为每一色度分量的样本阵列的宽度的两倍,但亮度分量的样本阵列的高度等于每一色度分量的样本阵列的高度。对于根据4:4:4格式经格式化的译码单元,亮度分量的样本阵列具有与每一色度分量的样本阵列相同的宽度及高度。应注意,除yuv颜色空间的外,可根据rgb空间颜色定义视频数据。以此方式,本文中所描述的色度格式可适用于yuv或rgb颜色空间。通常对rgb色度格式进行取样以使得红色样本的数目、绿色样本的数目及蓝色样本的数目相等。因此,如本文中所使用的术语“4:4:4色度格式”可指代yuv颜色空间或rgb颜色空间,其中对于所有颜色分量,样本的数目相等。

图2a至2c为绘示视频数据的不同样本格式的概念图。图2a为绘示4:2:0样本格式的概念图。如图2a中所绘示,对于4:2:0样本格式,色度分量的大小为亮度分量的大小的四分之一。因此,对于根据4:2:0样本格式经格式化的cu,针对色度分量的每一样本存在四个亮度样本。图2b为绘示4:2:2样本格式的概念图。如图2b中所绘示,对于4:2:2样本格式,色度分量的大小为亮度分量的大小的二分之一。因此,对于根据4:2:2样本格式经格式化的cu,针对色度分量的每一样本存在两个亮度样本。图2c为绘示4:4:4样本格式的概念图。如图2c中所绘示,对于4:4:4样本格式,色度分量的大小与亮度分量的大小相同。因此,对于根据4:4:4样本格式经格式化的cu,针对色度分量的每一样本存在一个亮度样本。

图3为绘示根据4:2:0样本格式格式化的16×16译码单元的实例的概念图。图3绘示在cu内色度样本相对于亮度样本的相对位置。如上文所描述,通常根据水平及垂直亮度样本的数目来定义cu。因此,如图3中所绘示,根据4:2:0样本格式经格式化的16×16cu包含亮度分量的16×16样本及每一色度分量的8×8样本。此外,如上文所描述,可将cu分割为较小cu。例如,可将图3中所绘示的cu分割为4个8×8cu,其中每一8×8cu包括亮度分量的8×8样本及每一色度分量的4×4样本。

图4为绘示根据4:2:2样本格式经格式化的16×16译码单元的实例的概念图。图4绘示在cu内色度样本相对于亮度样本的相对位置。如上文所描述,通常根据水平及垂直亮度样本的数目来定义cu。因此,如图4中所绘示,根据4:2:2样本格式经格式化的16×16cu包含亮度分量的16×16样本及每一色度分量的8×16样本。此外,如上文所描述,可将cu分割为较小cu。例如,可将图4中所绘示的cu分割为4个8×8cu,其中每一cu包括亮度分量的8×8样本及每一色度分量的4×8样本。

根据本发明中所描述的技术,提出残余信号(即,残余块)的回路内颜色空间变换以用于4:4:4色度格式中的序列;然而,技术并不限于4:4:4格式。回路内颜色空间变换过程将rgb/yuv色度格式的预测误差信号(即,残余信号)变换为次佳颜色空间中的那些信号。回路内颜色空间变换可进一步减少颜色分量之中的相关性。可通过奇异值分解(svd)自每一cu的像素样本值推导出变换矩阵。颜色空间变换可应用于帧内模式及帧间模式两者的预测误差。

当颜色空间变换应用于帧间模式时,残余首先转换为具有经推导变换矩阵的不同域。在颜色空间转换之后,按次序执行译码步骤(诸如,dct/dst、量化及熵译码)。

当颜色空间变换应用于使用帧内模式译码的cu时,首先将预测块及当前块分别转换为具有经推导变换矩阵的不同域。在颜色空间转换之后,进一步使用dct/dst变换、量化及熵译码当前块与当前块的预测因子之间的残余。

视频编码装置(诸如,视频编码器20)执行正向操作,其中包括转换值a、b、c、d、e、f、g、h及i的颜色空间变换矩阵应用于三个平面g、b及r以推导颜色分量p、q及s的值,如下:

可在hevc规范的范围内削减所得值,因为在最坏情况下所述值可增大至倍。视频解码装置(诸如,视频解码器30)执行反向操作,其中包括转换值at、bt、ct、dt、et、ft、gt、ht及it的颜色空间变换矩阵应用于三个颜色分量p'、q'及r'以推导三个平面g'、b'及r',如下,

图5为绘示根据本发明的一或多个技术的目标块及帧内8×8块的参考样本的实例的概念图。可使用奇异值分解(svd)自参考样本值推导变换矩阵。对于帧内情况及帧间情况,视频译码装置(例如,视频编码器20或视频解码器30)可能使用不同参考样本。对于帧内译码块的情况,目标块及参考样本可如图5中所展示。在图5中,目标块由8×8交叉影线样本94组成,且上方参考样本96展示为条纹,且左侧参考样本98展示为加点的。

对于帧间译码块的情况,用于矩阵推导的参考样本可与用于运动补偿的参考样本相同。高级运动预测(amp)块中的参考样本可经子取样,以使得参考样本的数目减少。例如,12×16块中的参考样本的数目减少2/3。

在以上实例中的一些中,可始终应用颜色空间变换过程。因此,可能不需要用信号传递是否调用颜色空间变换过程。另外,视频编码器20及视频解码器30两者可使用相同方法以推导变换矩阵以便避免用于用信号传递变换矩阵的额外负荷。

视频编码器20及视频解码器30可使用各种颜色空间变换矩阵。例如,视频编码器20及视频解码器30可针对不同颜色空间应用不同颜色空间变换矩阵。例如,视频编码器20及视频解码器30可使用一对ycbcr变换矩阵以将样本值自rgb颜色空间转换至ycbcr颜色空间并返回。以下等式展示ycbcr变换矩阵的一个实例集:

正向:

反向:

在另一实例中,视频编码器20及视频解码器30可使用一对ycocg变换矩阵以将样本值自rgb颜色空间转换至ycocg颜色空间并返回。以下等式展示ycocg矩阵矩阵的一个实例集:

正向:

反向:

另一此矩阵可为ycocg-r矩阵,其为将co及cg分量缩放两倍的ycocg矩阵的可修改版本。通过使用提升技术,视频编码器20及视频解码器30可通过以下等式实现正向及反变换:

正向:

反向:

在以上等式及矩阵中,可在编码过程之前(例如,由视频编码器)执行正向变换。相反地,可在解码过程之后(例如,由视频解码器)执行反变换。也应注意,视频编码器20包含用以重构建经编码数据以用于预测其它视频数据的解码回路。因此,类似视频解码器30,视频编码器20的解码回路也可执行反变换。

本发明的技术潜在地处理一或多个问题,且更具体来说,处理在启用cu_residual_act_flag时伴随qp推导的潜在问题。例如,根据现有解决方案,在启用自适应颜色变换时,在缩放及变换过程期间,添加-5的qp偏移以用于亮度及cb色度分量,且添加-3以用于cr色度分量。然而,qp的所得值可能下溢允许的qp范围。例如,在当前测试模型中当hevc所允许的范围介于0与51之间时有可能所得qp可能下溢至-5。本发明也描述用于在启用自适应颜色变换时用信号传递自适应qp偏移的技术。

以下阐述缩放及变换过程的一部分。

8.6.2缩放及变换过程

-----

在当前测试模型中如下推导量化参数qp,

如果cidx等于0,

qp=qp′y+(cu_residual_act_flag[xtby][ytby]?-5:0)(8-261)

-否则,如果cidx等于1,

qp=qp′cb+(cu_residual_act_flag[xtby][ytby]?-5:0)(8-262)

-否则(cidx等于2),

qp=qp′cr+(cu_residual_act_flag[xtby][ytby]?-3:0)(8-263)

其中cidx指定当前块的颜色分量,且cu_residual_act_flag指定自适应颜色变换是否适用于当前译码单元的残余样本。

本发明描述可处理以上所介绍的问题的各种技术。以下技术中的每一者可单独地或与其它中的一或多者共同地实施。根据本发明的一种技术,视频解码器30可能(在启用自适应颜色变换时添加偏移之后)削减来自章节8.6.2等式8-261、8-262、8-263——缩放及变换过程的所得qp'至为0,51+qpbdoffsety的hevcqp范围。根据本发明的另一技术,视频编码器20可在启用自适应颜色变换时向视频解码器30用信号传递将应用于章节8.6.2(缩放及变换过程)中的qp偏移。可在各种粒度级别(如vps、sps、pps、切片标头或其扩展)处进行qp偏移的此用信号传递。可针对所有分量(亮度+色度)或仅分量中的一些(例如,色度)用信号传递qp偏移。

根据本发明的另一技术,视频编码器20可向视频解码器30用信号传递指示在启用自适应颜色变换时qp偏移是否将应用于章节8.6.2(缩放及变换过程)中的旗标。可在各种粒度位准(如vps、sps、pps、切片标头或其扩展)处进行旗标的此用信号传递。可针对所有分量(亮度+色度)或仅分量中的一些(例如,色度)用信号传递旗标的用信号传递。

现将更详细地描述以上所介绍的技术的实例实施。根据本发明的一种技术,视频编码器20及视频解码器30可经配置以将qp'削减至hevcqp'范围内。为了在使用自适应颜色变换时将所述允许的qp范围保持与hevc中所使用的qp范围相同,本发明描述用于将qp值的范围削减至hevcqp范围的值的技术。以下对测试模型所提出的改变为斜体的。

8.6.2缩放及变换过程

-----

-如果cidx等于0,

qp=clip3(0,51+qpbdoffsety,

qp′y+(cu_residual_act_flag[xtby][ytby]?-5:0))

当chromaarraytype不等于0时,

-如果cidx等于1,

qp=clip3(0,51+qpbdoffsetc,qp′cb+(cu_residual_act_flag[xtby][ytby]?-5:0))(8-262)

-否则(cidx等于2),

qp=clip3(0,51+qpbdoffsetc,qp′cr+(cu_residual_act_flag[xtby][ytby]?-3:0)(8-262)

用于自适应颜色变换的qp偏移的可挠性用信号传递

提出削减亮度分量及色度分量的qp值的范围。

如果cidx等于0,

qp=clip3(0,51+qpbdoffsety,qp′y+(cu_residual_act_flag[xtby][ytby]?pps_act_y_qp_offset+slice_act_y_qp_offset:0))

当chromaarraytype不等于0时,

如果cidx等于1,

qp=clip3(0,51+qpbdoffsetc,qp′cb+(cu_residual_act_flag[xtby][ytby]?pps_act_pps_cb_qp_offset+slice_act_cb_qp_offset:0))(8-262)

否则(cidx等于2),

qp=clip3(0,51+qpbdoffsetc,qp′cr+(cu_residual_act_flag[xtby][ytby]?pps_act_pps_cr_qp_offset+slice_act_cr_qp_offset:0)(8-263)

pps_act_y_qp_offset、pps_act_cb_qp_offset及pps_act_cr_qp_offset分别向章节8.6.2中推导的亮度、cb及cr量化参数qp指定偏移。pps_act_y_qp_offset、pps_cb_qp_offset及pps_cr_qp_offset的值应在-12至+12(包含性)范围内。当chromaarraytype等于0时,pps_act_cb_qp_offset及pps_act_cr_qp_offset并不用于解码过程中,且解码器应忽略其值。

pps_slice_act_qp_offsets_present_flag等于1指定slice_act_y_qp_offset、slice_act_cb_qp_offset、slice_act_cr_qp_offset存在于切片标头中。pps_slice_act_qp_offsets_present_flag等于0指定slice_act_y_qp_offset、slice_act_cb_qp_offset、slice_act_cr_qp_offset并不存在于切片标头中。当不存在时,推断cu_chroma_qp_offset_enabled_flag的值等于0。

slice_act_y_qp_offset、slice_cb_qp_offset及slice_cr_qp_offset分别向章节8.6.2中推导的亮度、cb及cr量化参数qp指定偏移。slice_act_y_qp_offset、slice_cb_qp_offset及slice_cr_qp_offset的值应在-12至+12(包含性)范围内。当chromaarraytype等于0时,slice_act_cb_qp_offset及slice_act_cr_qp_offset并不用于解码过程中,且解码器应忽略其值。

现将描述用于用信号传递自适应颜色变换的qp偏移的现状的技术。如以上技术(1)中所论述,在启用自适应颜色变换时固定负qp偏移在更高的qp'处缩小qp范围。例如,在当前定义的情况下,在启用自适应颜色变换时,不可能达到大于46+qpbdoffsety的qp',在一些情境中其必需符合目标位率。在以下解决方案中,提出用信号传递旗标以指示是否应添加qp偏移。对测试模型所提出的改变以黄色文字突出显示。

slice_act_qp_offset_present_flag等于1指定在cu_residual_act_flag等于1的情况下qp偏移适用于译码单元。slice_act_qp_offset_present_flag等于0指定在cu_residual_act_flag等于1的情况下qp偏移并不适用于译码单元。当不存在时,推断cu_chroma_qp_offset_enabled_flag的值等于0。

如果cidx等于0,

qp=clip3(0,51+qpbdoffsety,qp′y+(cu_residual_act_flag[xtby][ytby]&&slice_act_qp_offset_present_flag?-5:0))

当chromaarraytype不等于0时,

如果cidx等于1,

qp=clip3(0,51+qpbdoffsetc,qp′cb+(cu_residual_act_flag[xtby][ytby]&&slice_act_qp_offset_present_flag?-5:0))(8-262)

否则(cidx等于2),

qp=clip3(0,51+qpbdoffsetc,qp′cr+(cu_residual_act_flag[xtby][ytby]&&slice_act_qp_offset_present_flag?-3:0)(8-263)

现将描述用于用信号传递自适应颜色变换的qp偏移的另一实例实施。本发明提出以下内容:

a)在图片参数集合而非序列参数集中用信号传递自适应颜色变换启用旗标。此潜在地受益于能够在图片级别上修改自适应颜色变换的使用。

b)提出位流限制以在色度格式并非4:4:4时停用自适应颜色变换。在一项实例中,提出此限制以应用于自适应颜色变换启用旗标上(residual_adaptive_colour_transform_enabled_flag)。

以下详述实例语法及语义。

residual_adaptive_colour_transform_enabled_flag等于1指定自适应彩色变换可用适于指代pps的图片的解码过程中的残余。residual_adaptive_colour_transform_enabled_flag等于0指定自适应彩色变换并不适用于指代pps的图片的残余。当不存在时,推断residual_adaptive_colour_transform_enabled_flag的值等于0。

当chroma_format_idc并不等于3时,residual_adaptive_colour_transform_enabled_flag应等于0。

pps_act_y_qp_offset、pps_act_cb_qp_offset及pps_act_cr_qp_offset分别向章节8.6.2中推导的亮度、cb及cr量化参数qp指定偏移。pps_act_y_qp_offset、pps_cb_qp_offset及pps_cr_qp_offset的值应在-12至+12(包含性)范围内。当chromaarraytype等于0时,pps_act_cb_qp_offset及pps_act_cr_qp_offset并不用于解码过程中,且解码器应忽略其值。

pps_slice_act_qp_offsets_present_flag等于1指定slice_act_y_qp_offset、slice_act_cb_qp_offset、slice_act_cr_qp_offset存在于切片标头中。pps_slice_act_qp_offsets_present_flag等于0指定slice_act_y_qp_offset、slice_act_cb_qp_offset、slice_act_cr_qp_offset并不存在于切片标头中。当不存在时,推断cu_chroma_qp_offset_enabled_flag的值等于0。

slice_act_y_qp_offset、slice_cb_qp_offset及slice_cr_qp_offset分别向章节8.6.2中推导的亮度、cb及cr量化参数qp指定偏移。slice_act_y_qp_offset、slice_cb_qp_offset及slice_cr_qp_offset的值应在-12至+12(包含性)范围内。当chromaarraytype等于0时,slice_act_cb_qp_offset及slice_act_cr_qp_offset并不用于解码过程中,且解码器应忽略其值。

图6为绘示可实施本发明中所描述的技术的实例视频编码器20的框图。视频编码器20可经配置以将视频输出到后处理实体27。后处理实体27旨在表示可处理来自视频编码器20的经编码视频数据的视频实体的实例(诸如,媒体感知网络元件(mane)或拼接/编辑装置)。在一些情况下,后处理实体27可为网络实体(诸如,mane)的实例,而是在其它情况下后处理实体27可被视为编码器20的部分。例如,在一些视频编码系统中,后处理实体27及视频编码器20可为独立装置的部分,而在其它情况下,关于后处理实体27所描述的功能性可由包括视频编码器20的相同装置执行。在其它实例中,后处理实体27可实施为图1的存储装置17的部分。

视频编码器20可对视频切片内的视频块执行帧内、帧间及imc译码。帧内译码依赖于空间预测以减少或移除给定视频帧或图片内的视频的空间冗余。帧间译码依赖于时间预测以减少或移除视频序列的相邻帧或图片内的视频的时间冗余。帧内模式(i模式)可指代若干基于空间的压缩模式中的任一者。帧间模式(诸如,单向预测(p模式)或双向预测(b模式))可指代若干基于时间的压缩模式中的任一者。如上文所描述,imc译码模式可从视频数据的帧移除空间冗余,但不同于传统帧内模式,imc译码代码可用以在讯帧内的更大搜索区域中定位预测性块且指代具有偏移向量的预测性块,而非依赖于帧内预测译码模式。

在图6的实例中,视频编码器20包含视频数据存储器33、分割单元35、预测处理单元41、滤波器单元63、经解码图片缓冲器64、求和器50、变换处理单元52、量化单元54及熵编码单元56。预测处理单元41包含运动估计单元42、运动补偿单元44及帧内预测处理单元46。为了视频块重新构建,视频编码器20也包含反量化单元58、反变换处理单元60及求和器62。滤波器单元63旨在表示一或多个回路滤波器(诸如,解块滤波器、自适应回路滤波器(alf)及样本自适应偏移(sao)滤波器)。虽然滤波器单元63在图6中展示为回路滤波器,但在其它配置中,滤波器单元63可实施为后回路滤波器。

视频数据存储器33可存储待通过视频编码器20的组件编码的视频数据。可(例如)从视频源18获得存储于视频数据存储器33中的视频数据。经解码图片缓冲器64可为存储用于通过视频编码器20(例如,以帧内、帧间或imc译码模式)编码视频数据的参考视频数据的参考图片存储器。视频数据存储器33及经解码图片缓冲器64可由多种存储器装置中的任一者形成,诸如动态随机存取存储器(dram),包含同步dram(sdram)、磁阻式ram(mram)、电阻式ram(rram)或其它类型的存储器装置。视频数据存储器33及经解码图片缓冲器64可由同一存储器装置或独立存储器装置提供。在各种实例中,视频数据存储器33可与视频编码器20的其它组件一起在芯片上,或相对于那些组件在芯片外。

如图6中所展示,视频编码器20接收视频数据且将视频数据存储于视频数据存储器33中。分割单元35将数据分割为视频块。此分割也可包含分割为切片、图片块或其它较大单元以及(例如)根据lcu及cu的四分树结构的视频块分割。视频编码器20大体上说明编码待编码的视频切片内的视频块的组件。可将切片划分为多个视频块(且可能划分为被称作图片块的视频块集合)。预测处理单元41可基于误差结果(例如,译码速率及失真等级)针对当前视频块选择多个可能译码模式中的一者(诸如,多个帧内译码模式中的一者、多个帧间译码模式中的一者或多个imc译码模式中的一者)。预测处理单元41可将所得经帧内、帧间或imc译码块提供至求和器50以产生残余块数据且提供至求和器62以重构建经编码块以用作参考图片。

预测处理单元41内的帧内预测处理单元46可执行当前视频块相对于与待译码的当前块相同的帧或切片中的一或多个相邻块的帧内预测性译码以提供空间压缩。预测处理单元41内的运动估计单元42及运动补偿单元44可执行当前视频块相对于一或多个参考图片中的一或多个预测性块的帧间预测性译码以提供时间压缩。预测处理单元41内的运动估计单元42及运动补偿单元44也可执行当前视频块相对于相同图片中的一或多个预测性块的imc译码以提供空间压缩。

运动估计单元42可经配置以根据视频序列的预定图案确定用于视频切片的帧间预测模式或imc模式。预定图案可将序列中的视频切片指定为p切片、b切片或gpb切片。运动估计单元42及运动补偿单元44可高度集成,但出于概念的目的而单独绘示。由运动估计单元42执行的运动估计为产生运动向量的过程,所述运动向量估计视频块的运动。例如,运动向量可指示当前视频帧或图片内的视频块的pu相对于参考图片内的预测性块的移位。在imc译码的情况下,可被称作imc中的偏移向量的运动向量可指示当前视频帧或图片内的视频块的pu相对于当前视频帧内的预测性块的移位。

预测性块为被发现在像素差方面紧密地匹配待译码视频块的pu的块,所述像素差可通过绝对差总和(sad)、平方差总和(ssd)或其它差度量确定。在一些实例中,视频编码器20可计算存储于经解码图片缓冲器64中的参考图片的子整数像素位置的值。例如,视频编码器20可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可执行相对于全像素位置及分数像素位置的运动搜索且输出具有分数像素精确度的运动向量。

运动估计单元42通过比较pu的位置与参考图片的预测性块的位置而计算经帧间译码切片中的视频块的pu的运动向量。所述参考图片可选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述参考图片列表中的每一者识别存储于经解码图片缓冲器64中的一或多个参考图片。运动估计单元42将所计算的运动向量发送到熵编码单元56及运动补偿单元44。

根据本发明的一些技术,在使用imc模式对视频块进行译码时,运动估计单元42可确定视频块的亮度分量的运动向量或偏移向量,且基于亮度分量的偏移向量确定视频块的色度分量的偏移向量。在另一实例中,在使用imc模式对视频块进行译码时,运动估计单元42可确定视频块的色度分量的运动向量或偏移向量,且基于色度分量的偏移向量确定视频块的亮度分量的偏移向量。因此,视频编码器20可在位流中用信号传递仅一个偏移向量,据此可确定视频块的色度及亮度分量两者的偏移向量。

由运动补偿单元44执行的运动补偿可涉及基于由运动估计确定的运动向量提取或产生预测性块,可能执行内插达到子像素精确度。内插滤波可从已知像素样本产生额外像素样本,因此潜在地增加可用以对视频块进行译码的候选预测性块的数目。在接收当前视频块的pu的运动向量后,运动补偿单元44可将运动向量所指向的预测性块定位在参考图片列表中的一者中,或在imc译码的状况下定位在正经译码的图片内。视频编码器20通过从正经译码的当前视频块的像素值减去预测性块的像素值来形成残余视频块,从而形成像素差值。像素差值形成用于块的残余数据,且可包含亮度及色度差分量两者。求和器50表示执行此减法运算的组件或多个组件。运动补偿单元44也可产生与视频块及视频切片相关联的语法元素以供视频解码器30用于解码视频切片的视频块。

如上文所描述,作为由运动估计单元42及运动补偿单元44执行的帧间预测及imc的替代方案,帧内预测处理单元46可对当前块进行帧内预测。确切地说,帧内预测处理单元46可确定一帧内预测模式以用以编码当前块。在一些实例中,帧内预测处理单元46可(例如)在单独的编码遍次期间使用各种帧内预测模式编码当前块,且帧内预测处理单元46(或在一些实例中,模式选择单元40)可从所测试的模式选择适当帧内预测模式来使用。例如,帧内预测处理单元46可使用对于各种所测试的帧内预测模式的速率-失真分析来计算速率-失真值,且在所测试的模式之中选择具有最佳速率-失真特性的帧内预测模式。速率-失真分析大体上确定经编码块与原始未经编码块(其经编码以产生经编码块)之间的失真(或误差)量,以及用以产生经编码块的位率(即,位的数目)。帧内预测处理单元46可根据各种经编码块的失真及速率计算比率以确定哪一帧内预测模式展现所述块的最佳速率-失真值。

在任何情况下,在选择用于块的帧内预测模式之后,帧内预测处理单元46可将指示用于块的所选择帧内预测模式的资讯提供至熵编码单元56。熵编码单元56可根据本发明的技术编码指示所选择帧内预测模式的资讯。视频编码器20可在所发射的位流中包含配置数据(其可包含多个帧内预测模式索引表及多个经修改的帧内预测模式索引表(也称作码字映射表))、各种块的编码上下文的定义及待用于所述上下文中的每一者的最有可能的帧内预测模式、帧内预测模式索引表及经修改的帧内预测模式索引表的指示。

在预测处理单元41(例如,经由帧间预测、帧内预测或imc)产生当前视频块的预测性块之后,视频编码器20通过自当前视频块减去预测性块而形成残余视频块。残余块中的残余视频数据可包含于一或多个tu中且应用于变换处理单元52。变换处理单元52使用诸如离散余弦变换(dct)或概念上类似的变换的变换将残余视频数据变换为残余变换系数。变换处理单元52可将残余视频数据自像素域转换至变换域(诸如,频域)。

变换处理单元52可将所得变换系数发送到量化单元54。量化单元54量化变换系数以进一步减小位率。量化过程可减小与系数中的一些或所有相关联的位深度。可通过调整量化参数来修改量化的程度。在一些实例中,量化单元54可随后执行对包含经量化变换系数的矩阵的扫描。替代性地,熵编码单元56可执行扫描。

在量化之后,熵编码单元56对经量化变换系数进行熵编码。例如,熵编码单元56可执行上下文自适应可变长度译码(cavlc)、上下文自适应二进制算术译码(cabac)、基于语法的上下文自适应二进制算术译码(sbac)、机率区间分割熵(pipe)译码或另一熵编码方法或技术。在由熵编码单元56进行熵译码之后,可将经编码位流发射到视频解码器30,或加以存档以供稍后由视频解码器30发射或检索。熵编码单元56也可对正经译码的当前视频切片的运动向量及其它语法元素进行熵编码。

反量化单元58及反变换处理单元60分别应用反量化及反变换以重构建像素域中的残余块以供稍后用作参考图片的参考块。运动补偿单元44可通过将残余块添加至参考图片列表中的一者内的参考图片中的一者的预测性块来计算参考块。运动补偿单元44也可将一或多个内插滤波器应用至经重构建的残余块以计算子整数像素值以用于运动估计。内插滤波可自已知像素样本产生额外像素样本,因此潜在地增加可用以对视频块进行译码的候选预测性块的数目。求和器62将经重构建的残余块添加至由运动补偿单元44产生的运动补偿预测块以产生参考块以用于存储于经解码图片缓冲器64中。参考块可由运动估计单元42及运动补偿单元44用作为参考块以对后续视频帧或图片中的块进行帧间预测。

图7为绘示可实施本发明中所描述的技术的实例视频解码器30的框图。在图7的实例中,视频解码器30包含视频数据存储器78、熵解码单元80、预测处理单元81、反量化单元86、反变换处理单元88、求和器90、滤波器单元91及经解码图片缓冲器92。预测处理单元81包含运动补偿单元82及帧内预测处理单元84。在一些实例中,视频解码器30可执行与关于来自图6的视频编码器20所描述的编码遍次大体上互逆的解码遍次。

在解码过程期间,视频解码器30从视频编码器20接收视频数据(例如,表示经编码视频切片的视频块及相关联的语法元素的经编码视频位流)。视频解码器30可从网络实体29接收视频数据且将视频数据存储于视频数据存储器78中。视频数据存储器78可存储待由视频解码器30的组件解码的视频数据(诸如,经编码视频位流)。可(例如)从存储装置17(例如,从本地视频源(诸如,相机))经由视频数据的有线或无线网络通信或者通过存取物理数据存储媒体而获得存储于视频数据存储器78中的视频数据。视频数据存储器78可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器。因此,虽然在图7中单独展示,视频数据存储器78及经解码图片缓冲器92可由同一存储器装置或单独存储器装置提供。视频数据存储器78及经解码图片缓冲器92可由各种存储器装置中的任一者形成,所述存储器装置诸如动态随机存取存储器(dram),包含同步dram(sdram)、磁阻式ram(mram)、电阻式ram(rram)或其它类型的存储器装置。在各种实例中,视频数据存储器78可与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。

例如,网络实体29可包括服务器、mane、视频编辑器/拼接器或经配置以实施上文所描述的技术中的一或多者的其它这些装置。网络实体29可包含或可不包含视频编码器(诸如,视频编码器20)。在网络实体29将经编码视频位流发射到视频解码器30之前可由网络实体29实施本发明中所描述的技术中的一些。在一些视频解码系统中,网络实体29及视频解码器30可为独立装置的部分,而在其它情况下,关于网络实体29所描述的功能性可由包括视频解码器30的同一装置执行。在一些情况下,网络实体29可为图1的存储装置17的实例。

视频解码器30的熵解码单元80对位流进行熵解码以产生经量化系数、运动向量及其它语法元素。熵解码单元80将运动向量及其它语法元素转送至预测处理单元81。视频解码器30可接收视频切片级别和/或视频块级别的语法元素。

当将视频切片译码为经帧内译码(i)切片时,预测处理单元81的帧内预测处理单元84可基于经用信号传递帧内预测模式及来自当前帧或图片的先前经解码块的数据而产生当前视频切片的视频块的预测数据。当将视频帧译码为经帧内译码(即,b、p或gpb)切片时或在块经imc译码时,预测处理单元81的运动补偿单元82基于自熵解码单元80接收的运动向量及其它语法元素而产生当前视频切片的视频块的预测性块。对于帧间预测,可自参考图片列表中的一者内的参考图片中的一者产生预测性块。视频解码器30可基于存储于经解码图片缓冲器92中的参考图片使用预设构建技术而构建参考帧列表(列表0及列表1)。对于imc译码,可自与正经预测的块相同的图片产生预测性块。

运动补偿单元82通过剖析运动向量及其它语法元素来确定用于当前视频切片的视频块的预测资讯,并使用所述预测资讯以产生正经解码的当前视频块的预测性块。例如,运动补偿单元82使用所接收的语法元素中的一些确定用以译码视频切片的视频块的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,b切片、p切片或gpb切片)、切片的参考图片列表中的一或多者的构建资讯、切片的每一经帧间编码视频块的运动向量、切片的每一经帧间译码视频块的帧间预测状态及用以解码当前视频切片中的视频块的其它资讯。

运动补偿单元82也可基于内插滤波器执行内插。运动补偿单元82可使用如由视频编码器20在视频块的编码期间使用的内插滤波器,以计算参考块的子整数像素的内插值。在此状况下,运动补偿单元82可自所接收的语法元素确定由视频编码器20使用的内插滤波器,且使用所述内插滤波器以产生预测性块。

根据本发明的一些技术,在使用imc模式对视频块进行译码时,运动补偿单元82可确定视频块的亮度分量的运动向量或偏移向量,且基于亮度分量的运动向量确定视频块的色度分量的运动向量。在另一实例中,在使用imc模式对视频块进行译码时,运动补偿单元82可确定视频块的色度分量的运动向量或偏移向量,且基于色度分量的运动向量确定视频块的亮度分量的运动向量。因此,视频解码器30可在位流中接收仅一个偏移向量,据此可确定视频块的色度及亮度分量两者的偏移向量。

在使用imc模式对视频块进行解码时,运动补偿单元82可(例如)修改亮度分量的运动向量(被称作imc模式的偏移向量)以确定色度分量的偏移向量。运动补偿单元82可基于视频块的取样格式及基于偏移向量所指向的子像素位置的精确度(例如)修改亮度块的偏移向量的x分量及y分量中的一者或两者。例如,如果使用4:2:2取样格式对视频块进行译码,则随后运动补偿单元82可能仅修改亮度偏移向量的x分量而非y分量以确定色度分量的偏移向量。如可自图4所见,在4:2:2取样格式中,色度块及亮度块在垂直方向上具有相同数目的样本,因此潜在地无需对y分量进行修改。如果在用于定位色度预测性块时,亮度偏移向量指向无色度样本的位置(例如,在包含当前块的当前图片的色度样本中的子像素位置处),则运动补偿单元82可仅修改亮度偏移向量。如果亮度偏移向量在用以定位色度预测性块时指向色度样本存在的位置,则运动补偿单元82可不修改亮度偏移向量。

在其它实例中,如果使用4:2:0取样格式对视频块进行译码,则运动补偿单元82可修改亮度偏移向量的x分量及y分量中的任一者或两者,以确定色度分量的偏移向量。如可自图3所见,在4:2:0取样格式中,色度块及亮度块在垂直方向及水平方向两者上具有相同样本数目。如果在用于定位色度预测性块时,亮度偏移向量指向无色度样本的位置(例如,在包含当前块的当前图片的色度样本中的子像素位置处),则运动补偿单元82可能仅修改亮度偏移向量。如果亮度偏移向量在用以定位色度预测性块时指向色度样本存在的位置,则运动补偿单元82可不修改亮度偏移向量。

运动补偿单元82可修改亮度偏移向量以产生经修改运动向量(也被称作经修改的偏移向量)。运动补偿单元82可修改在用以定位色度预测性块时指向子像素位置的亮度偏移向量,以使得用于色度块的经修改偏移向量指向较低解析度子像素位置或指向整数像素位置。作为一项实例,指向1/8像素位置的亮度偏移向量可经修改以指向1/4像素位置,指向1/4像素位置的亮度偏移向量可经修改以指向1/2像素位置等。在其它实例中,运动补偿单元82可修改亮度偏移向量,以使得经修改偏移向量始终指向整数像素位置以用于定位色度参考块。修改亮度偏移向量以指向较低解析度子像素位置或整数像素位置可消除一些内插滤波的需要且/或降低任何所需内插滤波的复杂度。

参考图3及4且假设左上样本位于位置(0,0)处,视频块在奇数及偶数x位置以及奇数及偶数y位置两者处具有亮度样本。在4:4:4取样格式中,视频块也在奇数及偶数x位置以及在奇数及偶数y位置两者处具有色度样本。因此,对于4:4:4取样格式,运动补偿单元可能使用同一偏移向量以用于定位亮度预测性块及色度预测性块两者。对于4:2:2取样格式,如图4中所展示,视频块在奇数及偶数y位置但仅在偶数x位置两者处具有色度样本。因此,对于4:2:2取样格式,如果亮度偏移向量指向奇数x位置,则运动补偿单元82可修改亮度偏移向量的x分量以产生指向偶数x位置的经修改偏移向量,以使得经修改偏移向量可用于情不需要内插的情况下定位当前块的色度块的参考色度块。例如,运动补偿单元82可通过上捨入或下捨入至最接近的偶数x位置而修改x分量(即,改变x分量),以使得其指向最接近的左侧x位置或最接近的右侧x位置。如果亮度偏移向量已经指向偶数x位置,则修改可为不必要的。

对于4:2:0取样格式,如图3中所展示,视频块仅在偶数y位置及仅在偶数x位置处具有色度样本。因此,对于4:2:0取样格式,如果亮度偏移向量指向奇数x位置或奇数y位置,则运动补偿单元82可修改亮度偏移向量的x分量或y分量以产生指向偶数x位置的经修改偏移向量,以使得经修改偏移向量可用于在不需要内插的情况下定位当前块的色度块的参考色度块。例如,运动补偿单元82可通过上捨入或下捨入至最接近的偶数x位置而修改x分量(即,改变x分量),以使得其指向最接近的左侧x位置或最接近的右侧x位置。例如,运动补偿单元82可通过上捨入或下捨入至最接近的偶数y位置而修改y分量(即,改变y分量),以使得其指向最接近的上方y位置或最接近的下方y位置。如果亮度偏移向量已经指向偶数x位置及偶数y位置,则修改可为不必要的。

反量化单元86反量化(即,解量化)位流中所提供并由熵解码单元80解码的经量化变换系数。反量化过程可包含使用由视频编码器20针对视频切片中的每一视频块计算的量化参数,以确定量化程度及(同样地)应所述应用的反量化程度。反变换处理单元88将反变换(例如,反dct、反整数变换或概念上类似的反变换过程)应用于变换系数,以便在像素域中产生残余块。

在运动补偿单元82基于运动向量及其它语法元素而产生当前视频块的预测性块之后,视频解码器30通过将来自反变换处理单元88的残余块与由运动补偿单元82所产生的对应预测性块求和,而形成经解码视频块。求和器90表示执行此求和运算的一或多个组件。如果需要,也可使用回路滤波器(在译码回路中或在译码回路后)以使像素转变平滑,或以其它方式改善视频质量。滤波器单元91旨在表示一或多个回路滤波器,诸如,解块滤波器、自适应回路滤波器(alf)及样本自适应偏移(sao)滤波器。尽管滤波器单元91在图7中展示为回路滤波器,但在其它配置中,滤波器单元91可实施为后回路滤波器。随后将给定帧或图片中的经解码视频块存储于经解码图片缓冲器92中,所述经解码图片缓冲器存储用于后续运动补偿的参考图片。经解码图片缓冲器92可为也存储用于稍后呈现于显示装置(诸如,图1的显示装置32)上的经解码视频的存储器的部分,或可与此存储器分离。

图8为绘示根据本发明的一或多个方面的另一实例视频编码器21的框图,所述视频编码器可利用用于使用颜色变换将具有rgb颜色空间的视频数据变换为具有第二颜色空间的视频数据块的技术。

图8绘示视频编码器20的更详细版本。视频编码器21可为视频编码器20(图2)或视频编码器20(图1)的实例。图8的实例绘示用于实施本发明的技术的两个可能实例。在第一实施中,视频编码器21使用一或多个颜色变换中的颜色变换将具有第一颜色空间的输入视频信号的第一块自适应地变换为具有第二颜色空间的第二块。第二所绘示的实例执行相同技术,但对残余视频数据的块而非输入信号执行颜色变换。

在图8的实例中,视频编码器21展示为基于切换器101、105、113、121的状态对视频数据的预测性块及残余块执行颜色变换。如果切换器101、105、113及121经切换替代位置,则视频编码器21经配置以在执行运动估计及运动预测之前对具有rgb颜色空间的原始信号的视频数据的块执行至具有第二颜色空间的视频数据的块的颜色变换,而非变换预测性和/或残余视频数据的块。

现在更详细地描述如图8中所绘示的对残余视频数据的块执行颜色变换的一个实例过程。在图8的实例中,将原始信号100传递至预测处理单元104(遵循切换器101的路径)。预测处理单元104可从来自参考图片存储器122的一或多个参考图片接收数据。预测处理单元104产生视频数据的预测性块,且组合来自原始信号100的视频数据的预测性块,以产生残余信号124。在此实例中,自适应颜色变换器106将视频数据的预测性块及残余块自rgb颜色空间变换为具有第二颜色空间的视频的第二预测性块及第二残余块。在一些实例中,视频编码器21可基于成本函数选择第二颜色空间及颜色变换。

变换/量化单元108可对具有第二颜色空间的第二视频块执行变换(例如,离散余弦变换(discretecosinetransformation;dct)或另一类型的变换)。另外,变换/量化单元108可量化第二视频块(即,经变换残余视频块)。熵编码器110可对经量化残余视频块进行熵编码。熵编码器110可输出包含用于由视频解码器(例如,视频解码器30)解码的经量化残余视频块的位流。

解量化/反变换单元112也可接收经量化、经变换系数和/或残余视频块,并且可反变换且解量化经变换系数及残余视频块。经解量化、经反变换的视频块此时仍可具有第二颜色空间。反量化/反变换的结果为经重构建残余信号126。反向自适应颜色变换器114可基于与由自适应颜色变换器106执行的变换相关联的反向颜色变换而对经重构建残余信号进行反向颜色变换。所得经反向自适应颜色变换的系数和/或残余视频块此时可具有rgb颜色空间。

在将反向颜色变换应用于残余视频块之后,预测补偿器116可将预测性块加回至残余视频块。解块滤波器118可对所得块进行解块。sao滤波器120可执行sao滤波。参考图片存储器122可随后存储所得重构建信号128以供未来使用。

为了对输入信号的视频块(即,未经编码视频数据)而非残余视频数据的块进行颜色变换,将切换器101翻转至交替位置,且自适应变换器102使用一或多个颜色变换中的颜色变换将输入视频块自具有rgb颜色空间的视频块颜色变换为第二颜色空间。使用预测处理单元104的预测如上文所描述进行,但结果可直接馈送至变换/量化单元108,因为切换器105处于替代位置中(与图8中所绘示的位置相比),而非由自适应颜色变换器106进行颜色变换。

变换/量化单元108、熵编码器110及解量化/反变换单元112可各自如上文关于颜色变换残余视频块所描述而操作,且重构建信号126得以产生且也处于第二颜色空间中。重构建信号126经由切换器113馈送至预测补偿器116。切换器113处于对于图8中所绘示的位置的替代位置中,且绕过反向自适应颜色变换器114。预测补偿器116、解块滤波器118及sao滤波器120可如上文关于颜色变换残余视频块所描述而操作,以生产重构建信号128。然而,不同于上文所描述的重构建信号128,在此实例中,重构建信号128的块可仍具有第二颜色空间而非rgb颜色空间。

重构建信号128可经由切换器121馈送至反向自适应颜色变换器130,所述切换器处于对于图8中所绘示的位置的替代位置中。反向自适应颜色变换器130可将重构建信号128的块反向颜色变换为具有rgb颜色空间的块,且参考图片存储器122可将块存储为参考图片的块以供未来参考。

如上文所描述,视频编码器21可选择一或多个颜色空间的变换以将具有rgb颜色空间的视频数据的第一块变换至第二颜色空间。在一些实例中,视频编码器21通过计算与颜色变换中的每一者相关联的速率-失真成本而自适应地选择颜色变换。例如,视频编码器21可选择多个颜色变换中针对cu或cu块具有最低相关联失真成本的颜色变换。视频编码器21可用信号传递指示具有最低相关联失真成本的经选择颜色变换的索引语法元素或其它语法数据。

在一些实例中,视频编码器21可使用拉格朗日成本函数,其将通过颜色变换的位率(例如,所获得的压缩)之间的权衡以及与颜色变换相关联的失真(例如,保真度的缺失)考虑在内。在一些实例中,拉格朗日成本对应于l=d+λr,其中l为拉格朗日成本,d为失真,λ为拉格朗日乘数,且r为位率。在一些实例中,视频编码器21可用信号传递指示多个颜色变换中使拉格朗日成本最小化的颜色变换的索引语法元素。

在一些高性能或高保真度视频译码应用或配置中,应超过最小化位率而最小化失真。在这些状况下,在将视频数据从rgb颜色空间变换至第二颜色空间时,视频编码器21可选择颜色变换及产生最少失真的颜色空间。视频编码器21可用信号传递指示所选择的颜色变换或产生最少失真的颜色空间的索引语法元素。

在一些其它状况下,视频编码器21可基于rgb视频数据的块的颜色分量中的每一者与第二颜色空间的块的颜色分量之间的相关而计算将rgb颜色空间的块变换至第二颜色空间的成本。具有最低相关联成本的颜色变换可为具有与输入信号的rgb颜色分量最紧密相关的颜色分量的颜色变换。视频编码器21可用信号传递指示在其颜色分量与rgb颜色分量之间具有最高相关的经选择颜色变换的索引语法元素。

应认识到,在一些状况下,视频编码器21可能针对不同cu、lcu、ctu或视频数据的其它单元选择不同颜色变换。即,针对单一图片,视频编码器21可选择与不同颜色空间相关联的不同颜色变换。选择多个不同颜色变换可更好地最佳化译码效率且减少速率失真。为了指示视频编码器21针对当前块已选择的多个变换中的哪一个变换,视频编码器21可用信号传递对应于所选择的颜色变换的索引值。视频编码器21可用信号传递视频ctu、cu、pu及tu的第一块中的一或多者处的索引值。

然而,在一些状况下,视频编码器21可确定待应用于一个或多个块或经译码图片序列(被称作cvs)的单一颜色变换。在选择仅一个颜色变换的状况下,针对每一块,视频编码器21可用信号传递旗标语法元素。旗标语法元素的一个值可指示视频编码器21已将单一变换应用于当前块或cvs中的全部图片。旗标语法元素的其它值指示无变换已应用于当前块。视频编码器21可(例如)使用上文所描述的基于成本的标准基于个别基础确定是否将颜色变换应用于图片的块中的每一者。

在一些实例中,视频编码器21确定是否将多个反向颜色变换中的预定义颜色变换应用于多个块中的每一者。例如,视频编码器21及视频解码器31可使用预设预定义颜色变换/反向颜色变换。响应于确定将预定义颜色变换应用于多个块中的每一者,视频编码器21可使用预定义颜色变换而变换多个块中的每一者,而无需解码指示预定义颜色变换已应用于多个视频数据的块中的每一者的数据。

以互逆方式,视频解码器31可经配置以确定是否将多个反向颜色变换中的预定义反向颜色变换应用于多个块中的每一者。响应于确定将预定义反向颜色变换应用于多个块中的每一者,视频解码器31可使用预定义颜色变换而反变换多个块中的每一者,而无需解码指示预定义颜色变换已应用于多个视频数据块中的每一者的数据。

本发明的颜色变换可包含但不一定限于对视频数据的块的恒等变换、微分变换、加权微分变换、dct、ycbcr变换、ycgco变换及ycgco-r变换。根据本发明的技术配置的视频译码器(诸如,视频编码器21)可应用这些变换中的一或多者和/或其反变换以及其它变换,诸如至/自以下各者的变换:adobergb、srgb、scrgb、rec.709、rec.2020、adobewidegamutrgb、prophotorgb、cmyk、pantone、yiq、ydbdr、ypbpr、xvycc、itubt.601、itubt.709、hsv以及本文中未具体描述的其它颜色空间、颜色空间和/或色度子取样格式。

为了将颜色变换应用于具有rgb颜色空间的视频数据的块,视频编码器21可将包括rgb像素的红色分量、绿色分量及蓝色分量的3×1矩阵与颜色变换矩阵相乘。相乘的结果为具有第二颜色空间的像素。视频译码器可将颜色变换矩阵应用于视频块的每一像素以产生第二颜色空间中的像素的第二块。现在更详细地描述各种颜色变换。

在一些实例中,视频编码器21可应用恒等变换矩阵或反向恒等变换矩阵。恒等变换矩阵包括:

且视频解码器30可应用的反变换矩阵包括:

在视频译码器应用恒等变换时,所得像素值等同于输入像素值,即应用恒等变换等效于根本不应用颜色变换。视频编码器21可在要求维持视频块的rgb颜色空间时选择恒等变换。

在另一实例中,视频编码器21可应用微分变换矩阵。微分变换矩阵包括:

视频解码器30可应用互逆的反向微分矩阵,其包括:

在另一实例中,视频编码器21可经配置应用加权微分变换或反向加权微分变换。加权微分变换矩阵包括:

且视频解码器31可应用的反向加权微分矩阵包括:

在加权微分变换中,α1及α2为视频译码器可调整的参数。在一些实例中,视频编码器20可根据以下等式计算参数α1及α2:

α1=cov(g,b)/var(g),及

α2=cov(g,r)/var(g)。

在各种实例中,视频编码器21可在经译码视频位流中用信号传递α1及α2的值。

在这些等式中,r对应于rgb颜色空间的红色信道,g对应于绿色信道,且b对应于蓝色信道。在微分变换等式中,“cov()”为共变数函数,且“var()”为变异数函数。

为了确定r、g及b的值,编码器或解码器可使用参考像素集合以便确保在由编码器或解码器计算时共变数函数及变异数函数具有相同结果或权重。在一些实例中,可在经译码视频位流中用信号传递特定参考像素(例如,作为经译码视频位流中的语法元素)。在其它实例中,编码器及解码器可经预先编程以使用某些参考像素。

在一些实例中,视频编码器21可在使用微分变换来对块进行变换时限制或约束α1及α2的值。视频译码器可将α1及α2的值约束为整数或二进数(例如1/2、1/4、1/8等)的集合。在其它实例中,视频译码器可将α1及α2约束为具有二进数的分数值,例如1/8、2/8、3/8、……、8/8。二进数或二进分数为具有分母为二的幂的有理数,且其中分子为整数。限制α1及α2的值可改善译码α1及α2的位流效率。

在其它实例中,视频编码器21可经配置以使用dct变换对具有rgb颜色空间的块进行变换,以产生第二块。dct对块的样本进行变换以将样本表达为不同频率及振幅的正弦波的总和。就余弦函数的总和来说,dct变换或反变换可将像素变换至数据点的有限序列且自数据点的有限序列变换像素。dct变换矩阵对应于:

以互逆方式,视频解码器31可经配置以将反变换应用于使用dct变换的块,以将块恢复回至原始样本。反向dct变换矩阵对应于:

视频编码器21也可将ycbcr变换应用于具有rgb颜色空间的块,以产生具有ycbcr颜色空间的块。如上文所描述,ycbcr颜色空间包含亮度(y)分量,以及蓝色色度(cb)分量及红色色度(cr)分量。ycbcr变换矩阵可对应于:

视频解码器31可经配置以应用反向ycbcr变换以将具有ycbcr颜色空间的块转换至具有rgb颜色空间的块。反向ycbcr变换矩阵可对应于:

视频编码器21也可将ycgco变换应用于具有rgb颜色空间的块,以产生具有ycgco颜色空间的块。ycgco颜色空间包含亮度(y)分量,以及绿色色度(cg)分量及橙色色度(co)分量。ycgco变换矩阵可对应于:

视频解码器31可经配置以应用反向ycgco变换,以将具有ycgco颜色空间的块转换至具有rgb颜色空间的块。反向ycgco变换矩阵可对应于:

视频编码器21也可经配置以将ycgco-r变换应用于具有rgb颜色空间的块,以生产具有ycgco-r颜色空间的块。ycgco-r颜色空间包含亮度(y)分量,以及绿色色度(cg)分量及橙色色度(co)分量。然而,不同于上文所描述的ycgco变换,ycgco-r变换为可逆的,例如ycgco-r变换可(例如)归因于捨入误差而不产生任何失真。

ycbcr变换矩阵可对应于:

视频解码器31可经配置以应用反向ycgco-r变换。ycgco-r反变换将具有ycgco-r颜色空间的块反变换至具有rgb颜色空间的块。反向ycgco-r变换矩阵可对应于:

为了应用本文中所描述的颜色变换中的任一者,视频编码器21可实施具有灵活参数的提升方案。提升方案为将离散小波变换分解为简单滤波阶梯(被称作提升阶梯或梯子结构)的有限序列的技术。视频编码器21可在经译码视频位流中用信号传递参数,或视频编码器21可推导参数可以相同方式推导参数。提升方案的一个实例如下:

其中a、b、c及d为如上文所描述的参数。在此提升方案中,r、g和b分别为红、绿及蓝色信道或样本。如上文关于加权微分变换所描述的α参数,a、b、c及d的值可受限或有限,例如因此符号可仅为正或负。在一些状况下,提升方案中可存在额外阶梯,诸如:

其中f、g、h、i及j为参数。在使用提升方案时以及在其它实例中,视频编码器20及视频解码器30可校正三个分量的输出深度,r”'、b”及g”可在预定位深度内加以校正,预定位深度针对每一分量可能不一定为相同的。

图9为绘示根据本发明的一或多个方面的另一实例视频解码器31的框图,所述视频解码器可利用用于使用反向颜色变换来将具有第一颜色空间的视频数据反变换至具有第二rgb颜色空间的视频数据的技术。

图9绘示视频解码器31相对于图1及7的视频解码器30的更为详细的版本。实际上,在一些实例中,视频解码器31可被视为视频解码器30(图7)和/或视频解码器30(图1)的更特定实例。图9的实例绘示用于实施本发明的技术的两个可能实例。在第一实施中,视频解码器31使用多个反向颜色变换中的反向颜色变换来将输入视频信号的块自第一颜色空间(例如,非rgb颜色空间)自适应地反变换至具有第二rgb颜色空间的第二块。第二所绘示的实例执行相同技术,但对残余视频数据的块而非输入信号执行反向颜色变换。

在图9的实例中,视频解码器31展示为由于当前切换切换器145及156的方式而对残余视频数据实例块执行反向颜色变换。如果切换器145和156经切换替代位置,则视频解码器31经配置以将具有第一表示的输入视频数据的块反向颜色变换至具有第二rgb颜色空间的视频数据块,而非反变换残余视频数据的块。

现在更详细地描述如图9中所绘示的对残余视频数据的块执行反向颜色变换的过程。在图9的实例中,将经编码输入位流140(也被称作输入信号)传递至熵解码单元142。熵解码单元142可对位流140进行熵解码以产生具有第一颜色空间的残余视频数据的经量化块。例如,熵解码单元142可对包含于位流140中的特定语法元素进行熵解码。解量化/反变换单元144可解量化变换系数块。另外,解量化/反变换单元144可将反变换应用于变换系数块以确定包括残余视频数据的变换块。因此,解量化/反变换单元144可解量化且反变换位流140的经熵解码视频数据的块。在视频解码器31经配置以反向颜色变换残余数据的块时,切换器148将具有第一颜色空间的残余视频数据的块馈送至反向自适应颜色变换器150。以此方式,反向自适应颜色变换器150可接收tu的变换块。

反向自适应颜色变换器150可将具有第一颜色空间的视频数据的块自适应地反变换至到具有第二rgb颜色空间的第二视频数据的块。例如,反向自适应颜色变换器150可选择反变换以应用于tu的变换块。在此实例中,反向自适应颜色变换器150可将所选择的反变换应用于变换块以便将变换块自第一颜色空间变换至rgb颜色空间。预测补偿单元152可组合来自参考图片存储器154的参考图片。例如,预测补偿单元152可接收cu的tu的变换块。在此实例中,预测补偿单元152可确定cu的译码块。在此实例中,cu的译码块的每一样本可等于变换块中的样本与cu的pu的预测块中的对应样本的总和。解块滤波器157可对经组合经重构建图片进行解块。如果适用,则sao滤波器单元158可执行额外sao滤波。

sao滤波器单元158的输出为经重构建信号160。如果视频解码器31经配置以反向颜色变换残余视频数据的块,则切换器162将经重构建信号160馈送至参考图片存储器154以供未来用作参考图片。视频解码器31也可输出经重构建信号160作为图像/视频164。

在视频解码器31经配置以对照残余视频数据的块反向颜色变换原始输入信号的块的实例中,熵解码单元142及解量化/反变换单元144以先前所描述的方式操作。切换器148处于替代位置中且将经重构建残余信号直接馈送至预测补偿单元152。此时,提供至预测补偿单元152的残余块仍处于第一颜色空间而非rgb颜色空间中。

预测补偿单元152可重构建原始图像的块且可将残余块与来自参考图片存储器154的图片的一或多个块组合。解块滤波器157及sao滤波器单元158可如上文关于反变换视频数据的残余块所描述而操作。sao滤波器158的输出为其块仍处于第一颜色空间中的经重构建信号160,且可不具有rgb颜色空间(例如,如果使用恒等变换,则块仍可具有rgb颜色空间)。

经重构建信号160可经由切换器162馈送至反向自适应颜色变换器166,所述切换器处于相比于图9中所绘示的位置的替代位置中。反向自适应颜色变换器166可使用一或多个反向颜色变换中的反向颜色变换来将具有第一颜色空间的经重构建信号的块反向颜色变换至具有第二rgb颜色空间的视频数据的第二块。在一些实例中,可在位流140中用信号传递解码器31使用的特定反变换。反向自适应颜色变换器166可馈送具有第二颜色空间的第二块以供输出为图像/视频164,以及馈送至参考图片存储器154以供未来存储及使用为参考图片。

图10展示根据本发明的技术的解码视频数据的方法的实例。将关于通用视频解码器描述图10的技术。例如,通用视频解码器可对应于图7的视频解码器30或图9的视频解码器31,但图10的技术并不限于任一特定类型的视频解码器。如视频编码器通常将视频解码执行为编码过程的部分,图10的技术也可由视频编码器(诸如,图6的视频编码器20及8的视频编码器21)执行。例如,视频编码器20包含反量化单元58及反变换处理单元60,其形成解码回路的部分,在所述解码回路中可实施图10的技术。因此,尽管将参考视频解码器解释图10的技术,但应理解,此视频解码器可为视频编码器的部分。

在图10的实例中,视频解码器针对视频数据的一或多个块确定启用自适应颜色变换(210)。在一些实例中,视频解码器可通过接收指示是否启用自适应颜色变换的语法元素而确定启用自适应颜色变换的视频数据的一或多个块。例如,可在pps中或在另一级别处接收语法元素。通过剖析所接收的语法元素,视频解码器可确定是否启用或禁用自适应颜色变换。在其它实例中,视频解码器可通过确定视频数据的色度格式确定启用自适应颜色变换的视频数据的一或多个块。例如,响应于确定视频数据的色度格式为4:4:4,视频解码器可确定启用自适应颜色变换。响应于确定视频数据的色度格式不同于4:4:4,视频解码器可确定禁用自适应颜色变换。

对于启用自适应颜色变换的视频数据,视频解码器可确定一或多个块的量化参数(212)。响应于量化参数的值低于阈值,视频解码器可修改量化参数以确定经修改量化参数(214)。例如,阈值可为零,且经修改量化参数的值可为大于或等于零。经修改量化参数可小于或等于51加上偏移值。为了修改量化参数,视频解码器可将偏移值添加至量化参数。视频解码器可接收用以指示是否偏移值待添加至量化参数的旗标。

例如,视频解码器可接收偏移值作为语法元素。偏移值可为量化参数的偏移(在针对块启用自适应颜色变换时)。视频解码器可基于经修改量化参数而解量化变换系数(216)。

图11展示根据本发明的技术的编码视频数据的方法的实例。将关于通用视频编码器描述图11的技术。例如,通用视频编码器可对应于图6的视频编码器20或图8的视频编码器21,但图11的技术并不限于任一特定类型的视频编码器。视频编码器选择视频数据的色度取样格式(220)。响应于色度取样格式为第一色度取样格式,视频编码器产生用以指示是否启用自适应颜色变换的语法元素(222)。响应于色度取样格式不同于第一色度取样格式,视频编码器在无自适应颜色变换的情况下编码视频数据(224)。例如,第一色度取样格式可为4:4:4色度取样格式。

图12展示根据本发明的技术的解码视频数据的方法的实例。将关于通用视频解码器描述图12的技术。例如,通用视频解码器可对应于图7的视频解码器30或图9的视频解码器31,但图12的技术并不限于任一特定类型的视频解码器。在一些实例中,通用视频解码器也可对应于视频编码器的解码回路。

在图12的实例中,视频解码器基于视频数据的色度取样格式针对视频数据的一或多个块确定启用自适应颜色变换(230)。例如,视频解码器可通过确定色度取样格式为4:4:4取样格式来针对视频数据的一或多个块确定启用自适应颜色变换。视频解码器可基于确定启用自适应颜色变换而确定一或多个块的量化参数(232)且基于所确定的量化参数而解量化变换系数(234)。

例如,视频解码器也可针对视频数据的一或多个第二块确定视频块的色度取样格式为不同于4:4:4的色度取样格式,且基于色度取样格式为不同于4:4:4的色度取样格式,确定针对第二一或多个块禁用自适应颜色变换。例如,视频解码器可在无需接收不同于色度取样格式的指示的用以指示是否禁用自适应颜色变换的语法元素的情况下确定针对第二一或多个块禁用自适应颜色变换。

图13展示根据本发明的技术的编码视频数据的方法的实例。将关于通用视频编码器描述图13的技术。例如,通用视频编码器可对应于图6的视频编码器20或图8的视频编码器21,但图13的技术并不限于任一特定类型的视频编码器。视频编码器针对视频数据的一或多个块确定自适应颜色变换用以编码块(240)。视频编码器确定视频数据的第一颜色空间的第一颜色分量的量化参数(242)。视频编码器基于量化参数而量化变换系数(244)。视频编码器产生包含于图片参数集合中的一或多个偏移值,所述一或多个偏移值表示视频数据的第二颜色空间的第一颜色分量的量化参数与视频数据的所述第二颜色空间的所述第一颜色分量的所述量化参数之间的差(246)。

图14展示根据本发明的技术的解码视频数据的方法的实例。将关于通用视频解码器描述图14的技术。例如,通用视频解码器可对应于图7的视频解码器30或图9的视频解码器31,但图14的技术并不限于任一特定类型的视频解码器。在图14的实例中,视频解码器针对视频数据的一或多个块确定启用自适应颜色变换(250)。响应于启用自适应颜色变换,视频解码器在图片参数集合中接收一或多个偏移值(252)。视频解码器基于一或多个偏移值中的第一偏移值确定第一颜色空间的第一颜色分量的量化参数(254)且基于经修改量化参数解量化变换系数(256)。一或多个偏移值可包含第一颜色分量的偏移值、第二颜色分量的偏移值及第三颜色分量的偏移值。

视频解码器可确定第二颜色空间的第一颜色分量的量化参数。为了基于一或多个偏移值中的第一偏移值确定第一颜色空间的第一颜色分量的量化参数,视频解码器可通过将一或多个偏移值中的第一偏移值添加至第二颜色空间的第一颜色分量的量化参数而将第二颜色空间的第一颜色分量的量化参数转换至第一颜色空间的第一颜色分量的量化参数。

在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件实施,则功能可作为一或多个指令或代码而存储于计算机可读媒体上或经由计算机可读媒体发射且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于诸如数据存储媒体的有形媒体,或包含促进(例如,根据通信协议)将计算机过程自一个地点传送至另一地点的任何媒体的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)非暂时性的有形计算机可读存储媒体或(2)通信媒体,诸如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、代码和/或数据结构的任何可用媒体。计算机过程产品可包含计算机可读媒体。

借助于实例而非限制,这些计算机可读存储媒体可包括ram、rom、eeprom、cd-rom或其它光盘存储器、磁盘存储器或其它磁性存储装置、闪速存储器或可用以存储呈指令或数据结构的形式的所需过程代码且可由计算机存取的任何其它媒体。此外,将任何连接适当地称为计算机可读媒体。例如,如果使用同轴线缆、光缆、双绞线、数字用户线(dsl)或诸如红外线、无线电及微波的无线技术而从网站、服务器或其它远程源发射指令,则同轴线缆、光缆、双绞线、dsl或诸如红外线、无线电及微波的无线技术包含于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而实情为关于非暂时性有形存储媒体。如本文所使用,磁盘及光盘包含光盘(cd)、激光光盘、光学光盘、数字多功能盘(dvd)、软盘及蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘用激光以光学方式再生数据。以上各者的组合也应包含于计算机可读媒体的范围内。

可通过诸如一或多个dsp、通用微处理器、asic、fpga或其它等效集成或离散逻辑电路的一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指代前述结构或适用于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,可在经配置用于编码及解码的专用硬件和/或软件模块内提供本文中所描述的功能性,或将本文中所描述的功能性合并到于组合式编码解码器中。此外,所述技术可完全实施于一或多个电路或逻辑元件中。

本发明的技术可以各种装置或设备实施,所述装置或设备包含无线手机、集成电路(ic)或ic集合(例如,芯片集合)。在本发明中描述各种组件、模块或单元以强调经配置以执行所揭示技术的装置的功能方面,但未必要求通过不同硬件单元予以实现。确切地说,如上文所描述,可将各种单元组合于编解码器硬件单元中,或通过互操作性硬件单元(包含如上文所描述的一或多个处理器)的集合而结合合适软件和/或固件来提供所述单元。

已描述各种实例。这些及其它实例处于以下权利要求书的范围内。

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