视频译码中成分的范围调整的固定点实施的制作方法

文档序号:14422246阅读:178来源:国知局
视频译码中成分的范围调整的固定点实施的制作方法

本申请案要求2015年9月21日申请的美国临时申请案第62/221,586号、2015年10月2日申请的美国临时申请案第62/236,804号及2015年10月13日申请的美国临时申请案第62/241,063号的权利,所述临时申请案中的每一个的全部内容以引用方式并入本文中。

本发明涉及视频处理。



背景技术:

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

视频译码技术包含空间(图片内)预测及/或时间(图片间)预测以缩减或去除为视频序列所固有的冗余。对于基于块的视频译码,可将视频切片(例如,视频帧或视频帧的一部分)分割成视频块(其还可被称作树型块)、译码单元(cu)及/或译码节点。图片的经帧内译码(i)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测来编码。图片的经帧间译码(p或b)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。

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

可由色域来定义可以捕获、译码及显示的色值的总数目。色域指装置可捕获(例如,摄影机)或再现(例如,显示器)的色彩的范围。常常,色域在装置之间是不同的。针对视频译码,可使用视频数据的预定义色域,以使得视频译码过程中的每一装置可经配置以在同一色域中处理像素值。某些色域是用比传统上已用于视频译码的色域大的色彩范围进行定义。具有较大色彩范围的此些色域可被称作广色域(wcg)。

视频数据的另一方面是动态范围。动态范围通常经界定为视频信号的最大亮度与最小亮度(例如,明度)之间的比。认为过去所使用的常用视频数据的动态范围具有标准动态范围(sdr)。视频数据的其它实例规范定义具有较大的最大亮度与最小亮度的比的色彩数据。此视频数据可描述为具有高动态范围(hdr)。



技术实现要素:

本发明描述用于使用固定点实施来实施视频数据的成分的动态范围调整的实例技术及装置。所述所描述技术可适用于经配置以编码及解码高动态范围(hdr)内容的视频译码标准,但不限于h.264/avc、h.265/hevc及其它标准。

在本发明的一个实例中,一种处理视频数据的方法包括:接收含有指定如何确定用于执行反动态范围调整过程的参数的信息的一或多个语法元素;接收经解码视频数据;及根据接收的所述信息,使用固定点计算对所述经解码视频数据执行所述反动态范围调整过程。

在本发明的另一实例中,一种经配置以处理视频数据的设备包括:存储器,其经配置以存储经解码视频数据;及经配置以进行以下操作的一或多个处理器;接收含有指定如何确定用于执行反动态范围调整过程的参数的信息的一或多个语法元素;接收所述经解码视频数据;及根据接收的所述信息,使用固定点计算对所述经解码视频数据执行所述反动态范围调整过程。

在本发明的另一实例中,一种经配置以处理视频数据的设备包括:用于接收含有指定如何确定用于执行反动态范围调整过程的参数的信息的一或多个语法元素的装置;用于接收经解码视频数据的装置;及用于根据接收的所述信息,使用固定点计算对所述经解码视频数据执行所述反动态范围调整过程的装置。

在另一实例中,本发明描述一种存储指令的计算机可读存储媒体,所述指令在执行时使经配置以处理视频数据的装置的一或多个处理器进行以下操作:接收含有指定如何确定用于执行反动态范围调整过程的参数的信息的一或多个语法元素;接收所述经解码视频数据;及根据接收的所述信息,使用固定点计算对所述经解码视频数据执行所述反动态范围调整过程。

在本发明的另一实例中,一种处理视频数据的方法包括使用固定点计算对视频数据执行动态范围调整过程,及使用固定点计算产生含有指定如何确定用于执行相对于所述动态范围调整过程的反动态范围调整过程的参数的信息的一或多个语法元素。

在本发明的另一实例中,一种经配置以处理视频数据的设备包括:存储器,其经配置以存储视频数据;及经配置以进行以下操作的一或多个处理器:使用固定点计算对所述视频数据执行动态范围调整过程;及使用固定点计算产生含有指定如何确定用于执行相对于所述动态范围调整过程的反动态范围调整过程的参数的信息的一或多个语法元素。

在本发明的另一实例中,一种经配置以处理视频数据的设备包括用于使用固定点计算对视频数据执行动态范围调整过程的装置,及用于使用固定点计算产生含有指定如何确定用于执行相对于所述动态范围调整过程的反动态范围调整过程的参数的信息的一或多个语法元素的装置。

在另一实例中,本发明描述一种存储指令的计算机可读存储媒体,所述指令在执行时使经配置以处理视频数据的装置的一或多个处理器进行以下操作:使用固定点计算对所述视频数据执行动态范围调整过程;及使用固定点计算产生含有指定如何确定用于执行相对于所述动态范围调整过程的反动态范围调整过程的参数的信息的一或多个语法元素。

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

附图说明

图1是说明经配置以实施本发明的技术的实例视频编码及解码系统的框图。

图2是展示色彩重映射信息(cri)过程的典型结构的概念图。

图3是说明hdr数据的概念的概念图。

图4是说明实例色域的概念图。

图5是说明hdr/wcg表示转换的实例的流程图。

图6是说明hdr/wcg逆转换的实例的流程图。

图7是说明用于从感知均匀的码层级到线性明度的视频数据转换(包含sdr及hdr)的电光转移函数(eotf)的实例的概念图。

图8是说明根据本发明的技术操作的实例hdr/wcg转换设备的框图。

图9是说明根据本发明的技术的实例hdr/wcg逆转换设备的框图。

图10是说明可实施本发明的技术的视频编码器的实例的框图。

图11是说明可实施本发明的技术的视频解码器的实例的框图。

图12是展示本发明的一个实例视频处理技术的流程图。

图13是展示本发明的另一实例视频处理技术的流程图。

具体实施方式

本发明涉及对具有高动态范围(hdr)及广色域(wcg)表示的视频数据的处理及/或译码。更具体地说,本发明的技术包含用于使用固定点处理操作(例如,与浮点处理操作对比)来执行对视频数据成分的范围调整的技术。本文中所描述的技术及装置可改进用于译码视频数据(包含hdr及wcg视频数据)的混合式视频译码系统(例如,h.265/hevc、h.264/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)扩展。已由itu-t视频译码专家组(vceg)及iso/iec运动图片专家组(mpeg)的视频译码联合合作小组(jct-vc)完成新的视频译码标准(即,高效率视频译码(hevc,也称作h.265))的设计。布罗斯(bross)等人的被称作hevc工作草案10(wd10)的hevc草案规范“高效视频译码(hevc)文本规范草案10(用于fdis及最后公告)(highefficiencyvideocoding(hevc)textspecificationdraft10(forfdis&lastcall))”(itu-tsg16wp3与iso/iecjtc1/sc29/wg11的关于视频译码的联合合作小组(jct-vc),第12次会议:瑞士日内瓦,2013年1月14日到23日,jctvc-l1003v34)可从http://phenix.int-evry.fr/jct/doc_end_user/documents/12_geneva/wg11/jctvc-l1003-v34.zip获得。定案的hevc标准被称作hevc版本1。

王(wang)等人的瑕疵报告“高效视频译码(hevc)瑕疵报告(highefficiencyvideocoding(hevc)defectreport)”(itu-tsg16wp3与iso/iecjtc1/sc29/wg11的关于视频译码的联合合作小组(jct-vc),第14次会议:奥地利维也纳,2013年7月25日到8月2日,jctvc-n1003v1)可从http://phenix.int-evry.fr/jct/doc_end_user/documents/14_vienna/wg11/jctvc-n1003-v1.zip获得。定案的hevc标准文件在2013年4月公布为“itu-th.265,h系列:视听及多媒体系统,视听服务基础设施—移动视频译码,高效视频译码,国际电信联盟(itu)电信标准化部门(itu-th.265,seriesh:audiovisualandmultimediasystems,infrastructureofaudiovisualservices-codingofmovingvideo,highefficiencyvideocoding,telecommunicationstandardizationsectorofinternationaltelecommunicationunion(itu))”,且定案在hevc标准的另一版本是在2014年10月公布。h.265/hevc规范文本的副本可从http://www.itu.int/rec/t-rec-h.265-201504-i/en下载。

图1是说明可利用本发明的技术的实例视频编码及解码系统10的框图。如图1中所示,系统10包含源装置12,其提供稍后时间将由目的地设备14解码的经编码视频数据。具体来说,源装置12经由计算机可读媒体16将视频数据提供到目的地装置14。源装置12及目的地装置14可包括广泛范围的装置中的任一个,包含台式计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的“智能型”电话)、所谓的“智能型”平板、电视机、摄影机、显示装置、数字媒体播放器、视频游戏控制台、视频流式传输装置、广播接收器装置或类似者。在一些情况下,可装备源装置12及目的地装置14以用于无线通信。

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

在其它实例中,计算机可读媒体16可包含非暂时性存储媒体,例如硬盘、随身碟、紧密光盘、数字视频光盘、蓝光光盘或其它计算机可读媒体。在一些实例中,网络服务器(未图示)可从源装置12接收经编码视频数据,且例如通过网络发射将经编码视频数据提供到目的地装置14。类似地,媒体生产设施(例如,光盘冲压设施)的计算装置可从源装置12接收经编码视频数据且生产含有经编码视频数据的光盘。因此,在各种实例中,可理解计算机可读媒体16包含各种形式的一或多个计算机可读媒体。

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

本发明的技术未必限于无线应用或设定。所述技术可应用于支持多种多媒体应用中的任一个的视频译码,例如空中电视广播、有线电视发射、卫星电视发射、因特网流式传输视频发射(例如,经由http的动态自适应流式传输(dash))、经编码到数据存储媒体上的数字视频、存储于数据存储媒体上的数字视频的解码或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频发射从而支持例如视频流式传输、视频播放、视频广播及/或视频电话的应用。

在图1的实例中,源装置12包含视频源18、视频编码单元21(其包含视频预处理器单元19及视频编码器20)以及输出接口22。目的地装置14包含输入接口28、视频解码单元29(其包含视频后处理器单元31及视频解码器30)以及显示装置32。根据本发明,源装置12的视频预处理器单元19及/或视频编码器20及目的地装置14的视频后处理器单元31及/或视频解码器30可经配置以实施本发明的技术,包含应用于特定色彩空间中的视频数据的发信及相关操作,以使得能够用固定点实施更有效率地压缩hdr及wcg视频数据。在一些实例中,视频预处理器单元19可与视频编码器20分离。在其它实例中,视频预处理器单元19可以是视频编码器20的部分。同样,在一些实例中,视频后处理器单元31可与视频解码器30分离。在其它实例中,视频后处理器单元31可以是视频解码器30的部分。在其它实例中,源装置及目的地装置可包含其它组件或布置。举例来说,源装置12可从外部视频源18(例如外部摄影机)接收视频数据。同样地,目的地装置14可与外部显示装置介接,而非包含集成式显示装置。

图1的所说明系统10仅为一个实例。用于处理hdr及wcg视频数据的技术可由任何数字视频编码及/或视频解码装置来执行。此外,本发明的技术还可由视频预处理器及/或视频后处理器(例如,视频预处理器单元19及视频后处理器单元31)来执行。通常,视频预处理器可以是经配置以在编码(例如,在hevc编码)之前对视频数据进行处理的任何装置。通常,视频后处理器可以是经配置以在解码(例如,在hevc解码)之后对视频数据进行处理的任何装置。源装置12及目的地装置14仅为源装置12产生经译码视频数据以供发射到目的地装置14的此些译码装置的实例。在一些实例中,装置12、14可以大体上对称的方式操作,以使得装置12、14中的每一个包含视频编码及解码组件,以及视频预处理器及视频后处理器(例如,分别为视频预处理器单元19及视频后处理器单元31)。因此,系统10可支持视频装置12、14之间的单向或双向视频发射,(例如)用于视频流式传输、视频播放、视频广播或视频电话。

源装置12的视频源18可包含视频捕获装置,例如摄像机、含有先前捕获的视频的视频存档及/或用以从视频内容提供者接收视频的视频馈送接口。作为另一替代,视频源18可产生基于计算机图形的数据以作为源视频,或实况视频、存档视频及计算机产生的视频的组合。在一些情况下,如果视频源18是摄像机,那么源装置12及目的地装置14可形成所谓的摄影机电话或视频电话。然而,如上文所提及,本发明中所描述的技术可适用于视频译码及视频处理,一般来说,且可应用于无线及/或有线应用。在每一情况下,可由视频编码单元21编码所捕获、预先捕获或计算机产生的视频。可接着通过输出接口22将经编码视频信息输出到计算机可读媒体16上。

目的地装置14的输入接口28从计算机可读媒体16接收信息。计算机可读媒体16的信息可包含由视频编码器20定义的语法信息(其还由视频解码单元29使用),所述语法信息包含描述块及其它经译码单元(例如,图片群组(gop))的特性及/或处理的语法元素。显示装置32向用户显示经解码视频数据,且可包括多种显示装置中的任一个,例如阴极射线管(crt)、液晶显示器(lcd)、等离子体显示器、有机发光二极管(oled)显示器或另一类型的显示装置。

如所说明,视频预处理器单元19从视频源18接收视频数据。视频预处理器单元19可经配置以处理视频数据以将其转化成适用于通过视频编码器20编码的形式。举例来说,视频预处理器单元19可执行动态范围压缩(例如,使用非线性转移函数)、到更紧凑或稳固色彩空间的色彩转换,及/或浮点到整数表示转换。视频编码器20可对由视频预处理器单元19输出的视频数据执行视频编码。视频解码器30可执行视频编码器20的逆转以解码视频数据,且视频后处理器单元31可执行视频预处理器单元19的逆转以将视频数据转换成适合显示器的形式。举例来说,视频后处理器单元31可执行整数到浮点转换、从紧密或稳固色彩空间的色彩转换及/或动态范围压缩的逆转以产生适合显示器的视频数据。

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

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

在一些实例中,视频编码器20及视频解码器30根据例如以下各者的视频压缩标准而操作:iso/iecmpeg-4visual及itu-th.264(也称为iso/iecmpeg-4avc),包含其可调式视频译码(svc)扩展、多视图视频译码(mvc)扩展及基于mvc的三维视频(3dv)扩展。在一些情况下,遵守基于mvc的3dv的任何位流始终含有与mvc配置文件(例如,立体声高配置文件)一致的子位流。此外,存在持续努力以产生h.264/avc的3dv译码扩展,即基于avc的3dv。视频译码标准的其它实例包含itu-th.261、iso/iecmpeg-1visual、itu-th.262或iso/iecmpeg-2visual、itu-th.263、iso/iecmpeg-4visual及itu-th.264、iso/iecvisual。在其它实例中,视频编码器20及视频解码器30可经配置以根据hevc标准而操作。

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

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

本发明可使用术语“视频单元”或“视频块”以指代样本的一或多个块,及用以对样本的一或多个块的样本译码的语法结构。视频单元的实例类型可包含hevc中的ctu、cu、pu、变换单元(tu),或其它视频译码标准中的宏块、宏块分割区等。

为产生经译码ctu,视频编码器20可对ctu的译码树型块递回地执行四分树分割,以将译码树型块划分成译码块,之后命名为“译码树单元”。译码块是样本的nxn块。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可产生当前切片的第一参考图片列表(refpiclist0)及第二参考图片列表(refpiclist1)。

参考图片列表中的每一个可包含一或多个参考图片。当使用单向预测时,视频编码器20可搜索refpiclist0及refpiclist1中的任一个或两者中的参考图片,以确定参考图片内的参考位置。此外,当使用单向预测时,视频编码器20可至少部分基于对应于参考位置的样本而产生pu的预测性样本块。此外,当使用单向预测时,视频编码器20可产生指示pu的预测块与参考位置之间的空间移位的单一运动向量。为了指示pu的预测块与参考位置之间的空间移位,运动向量可包含指定pu的预测块与参考位置之间的水平移位的水平成分且可包含指定pu的预测块与参考位置之间的垂直移位的垂直成分。

当使用双向预测编码pu时,视频编码器20可确定refpiclist0中的参考图片中的第一参考位置,及refpiclist1中的参考图片中的第二参考位置。视频编码器20可接着至少部分基于对应于第一及第二参考位置的样本产生pu的预测性块。此外,当使用双向预测编码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)可包括明度样本的变换块、色度样本的两个对应变换块及用于对变换块样本进行变换的语法结构。在单色图片或具有三个单独色平面的图片中,tu可包括单一变换块,及用以对变换块样本进行变换的语法结构。因此,cu的每一tu可与明度变换块、cb变换块及cr变换块相关联。与tu相关联的明度变换块可以是cu的明度残余块的子块。cb变换块可以是cu的cb残余块的子块。cr变换块可以是cu的cr残余块的子块。

视频编码器20可将一或多个变换应用于tu的明度变换块,以产生tu的明度系数块。系数块可以是变换系数的二维阵列。变换系数可以是标量。视频编码器20可将一或多个变换应用到tu的cb变换块以产生tu的cb系数块。视频编码器20可将一或多个变换应用到tu的cr变换块以产生用于tu的cr系数块。

在产生系数块(例如,明度系数块、cb系数块或cr系数块)之后,视频编码器20可量化所述系数块。量化通常指变换系数经量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的过程。此外,视频编码器20可反量化变换系数,并将反变换应用到变换系数,以便重构建图片的cu的tu的变换块。视频编码器20可使用cu的tu的经重构建变换块,及cu的pu的预测性块,以重构建cu的译码块。通过重构建图片的每一cu的译码块,视频编码器20可重构建图片。视频编码器20可将经重构建图片存储于经解码图片缓冲器(dpb)中。视频编码器20可将dpb中的经重构建的图片用于进行帧间预测及帧内预测。

在视频编码器20量化系数块之后,视频编码器20可熵编码指示经量化变换系数的语法元素。举例来说,视频编码器20可对指示经量化变换系数的语法元素执行上下文自适应性二进制算术译码(cabac)。视频编码器20可在位流中输出经熵编码的语法元素。

视频编码器20可输出包含形成经译码图片及相关联数据的表示的位序列的位流。位流可包括网络抽象层(nal)单元的序列。所述nal单元中的每一个包含nal单元报头且封装原始字节序列有效负载(rbsp)。nal单元报头可包含指示nal单元类型码的语法元素。由nal单元的nal单元报头指定的nal单元类型码指示nal单元的类型。rbsp可以是含有封装在nal单元内的整数数目个字节的语法结构。在一些情况下rbsp包含零个位。

不同类型的nal单元可封装不同类型的rbsp。举例来说,第一类型的nal单元可封装图片参数集(pps)的rbsp,第二类型的nal单元可封装经译码切片的rbsp,第三类型的nal单元可封装补充增强信息(sei)的rbsp等等。pps是可含有适用于零或多个完整经译码图片的语法元素的语法结构。封装视频译码数据的rbsp(与参数集及sei消息的rbsp相反)的nal单元可被称作视频译码层(vcl)nal单元。封装经译码切片的nal单元在本文中可被称作经译码切片nal单元。用于经译码切片的rbsp可包含切片报头及切片数据。

视频解码器30可接收位流。此外,视频解码器30可剖析位流以从位流解码语法元素。视频解码器30可至少部分基于从位流解码的语法元素重构建视频数据的图片。重构建视频数据的过程可大体上与由视频编码器20执行的过程互逆。举例来说,视频解码器30可使用pu的运动向量,以确定当前cu的pu的预测性块。视频解码器30可使用pu的一或多个运动向量来产生pu的预测性块。

此外,视频解码器30可反量化与当前cu的tu相关联的系数块。视频解码器30可对系数块执行反变换以重构建与当前cu的tu相关联的变换块。视频解码器30可通过将当前cu的pu的预测性样本块的样本添加到当前cu的tu的变换块的对应样本来重构建当前cu的译码块。通过重构图片的每一cu的译码块,视频解码器30可重构图片。视频解码器30可将经解码图片存储于经解码图片缓冲器中,以用于输出及/或用于解码其它图片。

补充增强信息(sei)消息常常包含于视频位流中,通常用以载运对于通过解码器(例如,视频解码器30)解码位流并非必需的信息。含于sei消息中的信息可对改进经解码输出的显示或处理有用;例如,此信息可供解码器侧实体使用以改进内容的可视性。也有可能,特定应用标准可以授权此些sei消息在位流中的存在,使得质量的改进能够到达符合应用标准的所有装置(针对帧兼容的平立体3dtv视频格式的帧填充sei消息的载运,其中针对视频的每个帧载运sei消息,例如,如以下各者中所描述:etsi-ts101547-2,数字视频广播(digitalvideobroadcasting)(dvb)平立体3dtv(plano-stereoscopic3dtv);第2部分:帧兼容平立体3dtv(framecompatibleplano-stereoscopic3dtv);恢复点sei消息的处置,例如,如以下各者中所描述:3gppts26.114v13.0.0,第三代合作伙伴计划(3rdgenerationpartnershipproject);技术规范组服务及系统方面(technicalspecificationgroupservicesandsystemaspects);ip多媒体子系统(ipmultimediasubsystem)(ims);多媒体电话(multimediatelephony);媒体处置及互动(版本13)(mediahandlingandinteraction(release13));或dvb中拉移式扫描矩形sei消息的使用,例如,如以下各者中所描述:etsi-ts101154,数字视频广播(digitalvideobroadcasting)(dvb);在基于mpeg-2传输流的广播应用中使用视频及音频译码的规范(specificationfortheuseofvideoandaudiocodinginbroadcastingapplicationsbasedonthempeg-2transportstream))。

色调映射信息sei消息用以映射明度样本或rgb成分样本中的每一个。tone_map_id的不同值用以界定不同用途,且色调映射sei消息的语法还经过对应修改。tone_map_id的值1允许sei消息将rgb样本裁剪到最小值及最大值。tone_map_id的值3允许发信呈支点形式的查找表。然而,在应用时,相同值被应用于所有rgb成分,或仅应用于明度成分。

膝函数sei消息用以指示归一化线性域中的经解码图片的rgb成分的映射。还指示出输入及输出最大明度值,且查找表将输入明度值映射到输出明度值。将同一查找表应用于所有三个色彩成分。

使用在hevc标准中定义的色彩重映射信息(cri)sei消息来输送用以将一个色彩空间中的图片映射另一色彩空间的信息。在一个实例中,crisei消息的语法包含三个部分:第一查找表(前lut),之后是指示色彩重映射系数的3×3矩阵,之后是第二查找表(后lut)。对于每一色彩成分(例如,r、g、b或y、cb、cr),定义用于两者的独立lut,前lut及后lut。crisei消息还包括称作colour_remap_id的语法元素,其不同值可用以指示sei消息的不同用途。图2展示crisei消息所指定的色彩重映射信息过程的典型结构。

动态范围调整(dra)sei消息。动态范围调整sei消息(例如,如d.布格达兹萨斯利(d.bugdaycisansli)、a.k.拉姆苏不拉莫妮(a.k.ramasubramonian)、d.洛桑诺斯基(d.rusanovskyy)、s.李(s.lee)、j.索勒(j.sole)、m.卡克则维奇(m.karczewicz)的“动态范围调整sei消息(dynamicrangeadjustmentseimessage)”(m36330,mpeg会议,波兰华沙,2015年6月22日到26日)中所描述)尚未被采用作为任何视频译码标准的部分;然而,sei消息包含发信比例及偏移数字的一个集合以映射输入样本。sei消息还允许针对不同成分发信不同查找表,且还允许当将相同比例及偏移用于超过一个成分时的发信优化。比例及偏移数字以固定长度准确度进行发信。

预期下一代视频应用操作表示具有hdr及wcg的经捕获景物的视频数据。所利用动态范围及色域的参数为视频内容的两个独立属性,且出于数字电视及多媒体服务的目的,其规范由若干国际标准界定。举例来说,itu-rrec.bt.709:“用于生产及国际方案交流的hdtv标准的参数值(parametervaluesforthehdtvstandardsforproductionandinternationalprogrammeexchange)”及itu-rrec.bt.2020:“用于生产及国际方案交流的超高清晰度电视系统的参数值(parametervaluesforultra-highdefinitiontelevisionsystemsforproductionandinternationalprogrammeexchange)”分别定义用于高清晰度电视(hdtv)及超高清晰度电视(uhdtv)参数,例如标准动态范围(sdr)以扩展超出标准色域的色彩原色。rec.bt.2100:“用于生产及国际方案交流的高动态范围电视的图像参数值(imageparametervaluesforhighdynamicrangetelevisionforuseinproductionandinternationalprogrammeexchange)”定义用于hdr电视用途的转移函数及表示,包含支持广色域表示的原色。还存在其它标准开发组织(sdo)文献,其指定其它系统中的动态范围及色域属性,例如dci-p3色域界定于smpte-231-2(运动图片及电视工程师协会)中且hdr的一些参数界定于smpte-2084中。以下提供视频数据的动态范围及色域的简单描述。

动态范围通常经界定为视频信号的最大亮度与最小亮度(例如,明度)之间的比。还可以“f光阑”为单位测量动态范围,其中一个f光阑对应于信号动态范围的加倍。在mpeg定义中,特征化相对于多于16f光阑的亮度变化的内容被称作hdr内容。在一些术语中,10f光阑与16f光阑之间的电平被视为中间动态范围,但在其它定义中被视为hdr。在本发明的一些实例中,hdr视频内容可为相较于传统使用的具备标准动态范围的视频内容(例如,如通过itu-rrec.bt.709所指定的视频内容)具有较高动态范围的任何视频内容。

人类视觉系统(hvs)能够感知比sdr内容及hdr内容大很多的动态范围。然而,hvs包含适应机构,其将hvs的动态范围缩窄到所谓的同时范围。同时范围的宽度可取决于当前照明条件(例如,当前亮度)。由hdtv的sdr、uhdtv的预期hdr及hvs动态范围提供的动态范围的可视化展示于图3中,但精确范围可基于每一个人及显示器而改变。

当前视频应用及服务由iturec.709调节,且提供sdr,从而通常支持约每m20.1到100烛光(cd)(常常被称作“尼特”)的亮度(例如,明度)范围,导致小于10f光阑。预期一些实例下代视频服务将提供达到16f光阑的动态范围。尽管用于此些内容的详细规格目前正在研发,但一些初始参数已于smpte-2084及itu-rrec.2020中予以指定。

除hdr以外,更逼真视频体验的另一方面是色彩维度。色彩维度通常由色域定义。图4是展示sdr色域(基于bt.709色彩原色的三角形100)及用于uhdtv的较广色域(基于bt.2020色彩原色的三角形102)的概念图。图4还描绘所谓的光谱轨迹(由舌片形状的区域104定界),从而表示天然色的界限。如图3所说明,从bt.709(三角形100)移动到bt.2020(三角形102),色彩原色旨在提供具有约多于70%的色彩的uhdtv服务。d65指定用于bt.709及/或bt.2020规范的实例白色。

用于dci-p3、bt.709及bt.2020色彩空间的色域规范的实例展示于表1中。

表1-色域参数

如表1中可以看出,色域可通过白点的x及y值及通过原色(例如,红色(r)、绿色(g)及蓝色(b))的x及y值界定。x及y值表示根据色彩的色度(x及z)及亮度(y)导出的归一化值,如cie1931色彩空间所界定。cie1931色彩空间定义纯色(例如,就波长而言)之间的连接及人眼如何感知此些色彩。

通常在每成分(甚至浮点)极高精度下(在4:4:4色度格式及极广色彩空间(例如,ciexyz)的情况下)获取及存储hdr/wcg视频数据。此表示以高精度为目标且在数学上几乎无损。然而,用于存储hdr/wcg视频数据的此格式可包含大量冗余且对于压缩用途而言可能非最优选的。具有基于hvs的假定的较低精确度格式通常用于目前先进技术的视频应用。

出于压缩目的的视频数据格式转换过程的一个实例包含三个主要过程,如图5中所示。图5的所述技术可由源装置12执行。线性rgb数据110可以是hdr/wcg视频数据且可以浮点表示存储。可使用用于动态范围压缩的非线性转移函数(tf)112来压缩线性rgb数据110。转移函数112可使用任何数目的非线性转移函数(例如,如smpte-2084中所定义的pqtf)来压缩线性rgb数据110。在一些实例中,色彩转换过程114将经压紧的数据转换成较适合于通过混合式视频编码器压缩的更紧凑或稳固的色彩空间(例如,yuv或ycrcb色彩空间)。接着使用浮点到整数表示量化单元116将此数据量化以产生经转换hdr的数据118。在此实例中,hdr的数据118呈整数表示。hdr的数据现在为更适合于通过混合式视频编码器(例如,应用hevc技术的视频编码器20)进行压缩的格式。图5中所描绘的过程的次序是作为一实例给出,且在其它应用中可改变。举例来说,色彩转换可先于tf过程。另外,可将额外处理(例如,空间次采样)应用于色彩成分。

在图6中描绘解码器侧的逆转换。可由目的地装置14执行图6的技术。经转换hdr的数据120可在目的地装置14处通过使用混合式视频解码器(例如,应用hevc技术的视频解码器30)对视频数据进行解码而获得。接着可由反量化单元122对hdr的数据120进行反量化。接着可将反色彩转换过程124应用于经反量化的hdr的数据。反色彩转换过程124可以是色彩转换过程114的逆转。举例来说,反色彩转换过程124可将hdr的数据从ycrcb格式转换回到rgb格式。接下来,可将反转移函数126应用于所述数据以添加通过转移函数112压缩的动态范围,从而重建线性rgb数据128。

现将更详细地论述图5中所描绘的技术。一般来说,将转移函数应用于数据(例如,hdr/wcg视频数据)以压缩数据的动态范围,以使得由量化引起的错误在明度值范围中在感知上(近似)均匀。此压缩允许用较少位来表示数据。在一个实例中,转移函数可以是一维(1d)非线性函数且可反映最终用户显示器的电光转移函数(eotf)的逆,例如,如rec.709中针对sdr所指定。在另一实例中,转移函数可近似对亮度变换的hvs感知,例如,smpte-2084中针对hdr所指定的pq转移函数。oetf的反向过程是电光转移函数(eotf),其将码层级映射回到明度。图7展示用作eotf的非线性转移函数的若干实例。所述转移函数还可单独地应用于每一r、g及b成分。

在本发明的上下文中,术语“信号值”或“色值”可用以描述对应于图像元素的特定色彩成分(例如,r、g、b或y)的值的明度电平。信号值通常表示线性光阶(明度值)。术语“码层级”或“数字码值”可指图像信号值的数字表示。通常,此数字表示表示非线性信号值。eotf表示提供到显示装置(例如,显示装置32)的非线性信号值与由显示装置产生的线性色值之间的关系。

rgb数据通常被用作输入色彩空间,这是因为rgb是通常通过图像捕获传感器产生的数据类型。然而,rgb色彩空间在其成分当中具有高冗余且对于紧密表示而言并非最佳的。为达成更紧凑且更稳固的表示,rgb成分通常经转换(例如,执行色彩变换)到更适合于压缩的更不相关色彩空间(例如,ycbcr)。ycbcr色彩空间分离不同的相关较少成分中的呈明度(y)形式的亮度及色彩信息(crcb)。在此上下文中,稳固表示可指在以受限位速率进行压缩时特征为较高阶错误弹性的色彩空间。

在色彩变换之后,仍然可以高位深度(例如,浮点准确度)来表示目标色彩空间中的输入数据。可例如使用量化过程将高位深度数据转换为目标位深度。某些研究展示,10位到12位准确度结合pq转移足以提供具有低于恰可辨差异(jnd)的失真的16f光阑的hdr数据。一般来说,jnd是为了使差异可辨(例如,通过hvs)而必须改变的某物(例如,视频数据)的量。以10位准确度表示的数据可进一步通过大部分目前先进技术视频译码解决方案进行译码。此量化为有损译码的元素且为引入到经转换数据的不准确度的来源。

预期下一代hdr/wcg视频应用将对以hdr及cg的不同参数捕获的视频数据进行操作。不同配置的实例可以是具有高达1000尼特或高达10,000尼特的峰值亮度的hdr视频内容的捕获。不同色域的实例可包含bt.709、bt.2020以及smpte指定的p3或其它色域。

还预期并有(或几乎并有)所有其它当前使用的色域的单一色彩空间(例如,目标色彩容器)将在未来使用。此目标色彩容器的一个实例是bt.2020。支持单一目标色彩容器将显著简化hdr/wcg系统的标准化、实施及部署,这是因为操作点的减小数目(例如,色彩容器、色彩空间、色彩转换算法等的数目)及/或所需算法的减小数目应由解码器(例如,视频解码器30)支持。

在此系统的一个实例中,所捕获的具有不同于目标色彩容器(例如bt.2020)的天然色域(例如p3或bt.709)的内容可在处理之前(例如,在视频编码之前)转换到目标容器。以下是此转换的若干实例:

从bt.709到bt.2020色彩容器的rgb转换:

○r2020=0.627404078626*r709+0.329282097415*g709+0.043313797587*b709

○g2020=0.069097233123*r709+0.919541035593*g709+0.011361189924*b709

○b2020=0.016391587664*r709+0.088013255546*g709+0.895595009604*b709

(1)从p3到bt.2020色彩容器的rgb转换:

○r2020=0.753832826496*rp3+0.198597635641*gp3+0.047569409186*bp3

○g2020=0.045744636411*rp3+0.941777687331*gp3+0.012478735611*bp3

○b2020=-0.001210377285*rp3+0.017601107390*gp3+0.983608137835*bp3

(2)在此转换期间,由在p3或bt.709色域中捕获的信号的每一成分(例如,rgb、yuv、ycrcb等)占用的值范围在bt.2020表示中可缩小。由于数据是以浮点准确度表示,因此无损失;然而,当与色彩转换(例如,从rgb到ycrcb的转换,在下文于方程式3中展示)及量化(下文方程式4中的实例)结合时,值范围的收缩引起输入数据的增加的量化错误。

○dy′=(round((1<<(bitdepthy-8))*(219*y′+16)))

○dcb=(round((1<<(bitdepthcr-8))*(224*cb+128)))

○dcr=(round((1<<(bitdepthcb-8))*(224*cr+128)))

(4)在方程式(4)中,dy'是经量化的y'成分,dcb是经量化的cb,且dcr是经量化的cr成分。项目<<表示逐位右移。bitdepthy、bitdepthcr及bitdepthcb分别是经量化成分的所要位深度。

另外,在现实世界译码系统中,利用缩小的动态范围对信号进行译码可导致经译码色度成分的准确度的显著损失,且可由观看者观察为译码伪影,例如,色彩失配及/或渗色。

为解决上述问题,可考虑以下技术。一个实例技术涉及原生色彩空间处的hdr译码。在此技术中,hdr视频译码系统将支持各种类型的当前已知色域,且允许视频译码标准的扩展以支持未来色域。此支持将不仅限于支持不同色彩转换变换(例如,rgb到ycbcr,及其反变换),并且将指定应用于色域中的每一个的变换函数。对此些多种工具的支持可为复杂及代价大的。

另一实例技术包含色域感知型视频编解码器。在此技术中,假想视频编码器经配置以估计输入信号的天然色域且调整译码参数(例如,用于经译码色度成分的量化参数),以减少由减小的动态范围产生的任何失真。然而,此技术将不能够恢复可归因于以上方程式(4)中所进行的量化而发生的准确度损失,这是因为所有输入数据是以整数点准确度提供到典型编码解码器。

本发明描述用以执行动态范围调整(dra)以补偿通过色域转换而引入到hdr信号表示的动态范围变化的技术、方法及设备。动态范围调整可帮助阻止及/或减轻由色域转换引起的任何失真,包含色彩失配、渗色等。在本发明的一或多个实例中,在编码器侧的量化(例如,通过源装置12)之前及在解码器侧的反量化(例如,通过目的地装置14)之后,对目标色彩空间(例如,ycbcr)的每一色彩成分的值进行dra。

图8是说明根据本发明的技术操作的实例hdr/wcg转换设备的框图。在图8中,实线指定数据流且虚线指定控制信号。本发明的所述技术可由源装置12的视频预处理器单元19执行。如上文所论述,视频预处理器单元19可以是与视频编码器20分离的装置。在其它实例中,视频预处理器单元19可与视频编码器20并入到同一个装置中。

如图8所示,rgb原生cg视频数据200经输入到视频预处理器单元19。在通过视频预处理器单元19进行的视频预处理的情况下,rgb原生cg视频数据200是由输入色彩容器定义。输入色彩容器指定用以表示视频数据200的一组色彩原色(例如,bt.709、bt.2020、p3等)。在本发明的一个实例中,视频预处理器单元19可经配置以将rgb原生cb视频数据200的色彩容器及色彩空间两者转换到hdr的数据216的目标色彩容器及目标色彩空间。与输入色彩容器相同,目标色彩容器可指定用以表示hdr的数据216的一组或色彩原色。在本发明的一个实例中,rgb原生cb视频数据200可以是hdr/wcg视频,且可具有bt.2020或p3色彩容器(或任何wcg),且可在rgb色彩空间中。在另一实例中,rgb原生cb视频数据200可以是sdr视频,且可具有bt.709色彩容器。在一个实例中,hdr的数据216的目标色彩容器可能已针对hdr/wcg视频经配置(例如,bt.2020色彩容器)且可使用对于视频编码更为最佳的色彩空间(例如,ycrcb)。

在本发明的一个实例中,cg转换器202可经配置以将rgb原生cg视频数据200的色彩容器从输入色彩容器(例如,第一色彩容器)转换到目标色彩容器(例如,第二色彩容器)。作为一个实例,cg转换器202可将rgb原生cg视频数据200从bt.709色彩表示转换到bt.2020色彩表示(其实例于下文展示)。

将rgbbt.709样本(r709,g709,b709)转换到rgbbt.2020样本(r2020,g2020,b2020)的过程可用两步转换来实施,所述两步转换涉及首先转换到xyz表示,继而使用适当转换矩阵进行从xyz到rgbbt.2020的转换。

从xyz到r2020g2020b2020(bt.2020)的转换

类似地,单一步骤且建议的方法如下:

cg转换之后的所得视频数据在图8中展示为rgb目标cg视频数据204。在本发明的其它实例中,输入数据及输出hdr的数据的色彩容器可相同。在此实例中,cg转换器202不必对rgb原生cg视频数据200执行任何转换。

接下来,转移函数单元206压缩rgb目标cg视频数据204的动态范围。转移函数单元206可经配置以应用转移函数以压缩动态范围,其方式与上文参看图5所述的相同。色彩转换单元208将rgb目标cg色彩数据204从输入色彩容器的色彩空间(例如,rgb)转换到目标色彩容器的色彩空间(例如,ycrcb)。如上文参看图5所解释,色彩转换单元208将经压缩数据转换到更紧密或稳固的色彩空间(例如,yuv或ycrcb色彩空间)中,所述色彩空间更适合于由混合式视频编码器(例如,视频编码器20)进行的压缩。

调整单元210经配置以根据通过dra参数估计单元212导出的dra参数来执行经色彩转换的视频数据的动态范围调整(dra)。一般来说,在通过cg转换器202进行的cg转换及通过转移函数单元206进行的动态范围压缩之后,所得视频数据的实际色值可能不会使用为特定目标色彩容器的色域分配的所有可获得码字(例如,表示每一色彩的独特位序列)。即,在某些情况下,rgb原生cg视频数据200从输入色彩容器到输出色彩容器的转换可将视频数据的色值(例如,cr及cb)过度压缩,以使得所得经压缩视频数据并不高效地使用所有可能色彩表示。如上文所解释,利用色彩的缩小动态范围对信号进行译码可导致经译码色度成分的准确度的显著损失,且可由观看者观察为译码伪影,例如,色彩失配及/或渗色。

调整单元210可经配置以将dra参数应用于视频数据(例如,动态范围压缩及色彩转换之后的rgb目标cg视频数据204)的色彩成分(例如,ycrcb),以充分利用可用于特定目标色彩容器的码字。调整单元210可在像素层级将dra参数应用于视频数据。

一般来说,dra参数定义将用以表示实际视频数据的码字扩展到尽可能多的可用于目标色彩容器的码字的功能。

在本发明的一个实例中,所述dra参数包含应用于视频数据的成分的比例值及偏移值。一般来说,视频数据的色彩成分的值范围愈低,可使用的缩放因数愈大。偏移参数可用以使色彩成分的值以用于目标色彩容器的可用码字的中心为中心。举例来说,如果目标色彩容器每个色彩成分包含1024个码字,那么可选择偏移值,以使得中心码字移动到码字512(例如,最中间的码字)。在其它实例中,偏移参数可用以提供输入码字到输出码字的较佳映射,以使得目标色彩容器中的总体表示在对抗译码伪影时更有效。

在一个实例中调整单元210如下所述地将dra参数应用于目标色彩空间(例如,ycrcb)中的视频数据:

其中信号成分y'、cb'及cr'是由rgb到ycbcr转换(方程式3中的实例)产生的信号。请注意,y'、cr'及cr'也可以是由视频解码器30解码的视频信号。y”、cb”及cr”是dra参数已应用于每一色彩成分之后的视频信号的色彩成分。如在以上实例中可见,每一色彩成分与不同的比例及偏移参数相关。举例来说,scale1及offset1用于y'成分,scale2及offset2用于cb'成分,且scale3及offset3用于cr'成分。应理解,此仅为实例。在其它实例中,相同的比例值及偏移值可用于每个色彩成分。

在其它实例中,每一色彩成分可与多个比例及偏移参数相关联。举例来说,cr或cb色彩成分的色度值的实际分布对于码字的不同分割区或范围可能不同。作为一个实例,与低于中心码字相比,可使用更多的高于中心码字(例如,码字512)的独特码字。在此实例中,调整单元210可经配置以针对高于中心码字(例如,具有大于中心码字的值)的色度值应用比例及偏移参数的一个集合,且针对低于中心码字(例如,具有小于中心码字的值)的色度值应用比例及偏移参数的不同集合。

如在以上实例中可见,调整单元210将比例及偏移dra参数应用作为线性函数。因而,调整单元210并非必需在通过色彩转换单元208进行的色彩转换之后在目标色彩空间中应用dra参数。这是因为色彩转换本身是线性过程。因而,在其它实例中,调整单元210可在任何色彩转换过程之前将dra参数应用于原生色彩空间(例如,rgb)中的视频数据。在此实例中,色彩转换单元208将在调整单元210应用dra参数之后应用色彩转换。

在本发明的另一实例中,调整单元210可如下所述地在目标色彩空间或原生色彩空间中应用dra参数:

在此实例中,参数scale1、scale2、scale3、offset1、offset2及offset3具有如上所述的相同含义。参数offsety是反映信号的亮度的参数,且可等于y'的平均值。在其它实例中,类似于offsety的偏移参数可应用于cb'及cr'成分,以更好地保留输入表示及输出表示中的中心值的映射。

在本发明的另一实例中,调整单元210可经配置以在除原始色彩空间或目标色彩空间以外的色彩空间中应用dra参数。一般来说,调整单元210可经配置以如下所述地应用dra参数:

其中信号成分a、b及c是不同于目标色彩空间的色彩空间(例如,rgb或中间色彩空间)中的信号成分。

在本发明的其它实例中,调整单元210经配置以将线性转移函数应用于视频以执行dra。此转移函数不同于由转移函数单元206用以压缩动态范围的转移函数。类似于上文所定义的比例及偏移术语,由调整单元210应用的转移函数可用以扩充色值且使色值以目标色彩容器中的可用码字为中心。应用转移函数以执行dra的实例展示如下:

-y”=tf2(y')

-cb”=tf2(cb')

-cr”=tf2(cr')

项tf2指定由调整单元210应用的转移函数。在一些实例中,调整单元210可经配置以将不同转移函数应用于成分中的每一个。

在本发明的另一实例中,调整单元210可经配置以在单一过程中与色彩转换单元208的色彩转换结合而应用dra参数。即,可组合调整单元210及色彩转换单元208的线性函数。下面展示组合应用的实例,其中f1及f2是rgb到ycbcr矩阵及dra缩放因数的组合:

在本发明的另一实例中,在应用dra参数之后,调整单元210可经配置以执行剪裁过程,从而防止视频数据具有在针对特定目标色彩容器所指定的码字范围外的值。在某些情况下,由调整单元210应用的比例及偏移参数可使某些色彩成分值超过可允许码字的范围。在此情况下,调整单元210可经配置以将超过范围的成分的值裁剪到范围中的最大值。

由调整单元210应用的dra参数可由dra参数估计单元212确定。dra参数估计单元212用来更新dra参数的频率及时间例项是灵活的。举例来说,dra参数估计单元212可从时间层级上更新dra参数。即,针对图片群组(gop)或单一图片(帧)可确定新dra参数。在此实例中,rgb原生cg视频数据200可以是gop或单一图片。在其它实例中,dra参数估计单元212可从空间层级上(例如,在切片方块或块层级)更新dra参数。在此上下文中,视频数据块可以是宏块、编码树单元(ctu)、译码单元或任何其它大小及形状的块。块可以是正方形、矩形或任何其它形状。相应地,可使用dra参数以达成更加高效的时间及空间预测及译码。

在本发明的一个实例中,dra参数估计单元212可基于rgb原生cg视频数据200的天然色域于目标色彩容器的色域的对应而导出所述dra参数。举例来说,给定特定天然色域(例如,bt.709)及目标色彩容器的色域(例如,bt.2020),dra参数估计单元212可使用一组预定义规则来确定比例值及偏移值。

举例来说,假定天然色域及目标色彩容器是以xy空间中的色彩原色坐标及白点坐标的形式定义。用于bt.709及bt.2020的此信息的一个实例展示于下文的表2中。

表2-rgb色彩空间参数

在一个实例中,bt.2020是目标色彩容器的色域且bt.709是原生色彩容器的色域。在此实例中,调整单元210将dra参数应用于ycbcr目标色彩空间。dra参数估计单元212可经配置以估计dra参数且将所述参数转送到调整单元210,如下所述:

scale1=1;offset1=0;

scale2=1.0698;offset2=0;

scale3=2.1735;offset3=0;

作为另一实例,在bt.2020是目标色域且p3是天然色域且在ycbcr目标色彩空间中应用dra的情况下,dra参数估计单元212可经配置以估计dra参数如下:

scale1=1;offset1=0;

scale2=1.0068;offset2=0;

scale3=1.7913;offset3=0;

在以上实例中,dra参数估计单元212可经配置以通过查阅指示将使用的dra参数(给定特定天然色域及特定目标色域)的查找表来确定上文列出的比例值及偏移值。在其它实例中,dra参数估计单元212可经配置以根据天然色域及目标色域的原色及白色空间值来计算所述dra参数,例如,如表2中所示。

举例来说,考虑由原色坐标(xxt,yxt)指定的目标(t)色彩容器,其中针对r、g、b色彩成分陈述x:

及由原色坐标(xxn,yxn)指定的原生(n)色域,其中针对r、g、b色彩成分陈述x:

两个色域的白点坐标等于whitep=(xw,yw)。dra参数估计单元212可依据原色坐标到白点之间的距离而导出用于dra的scale2及scale3参数。此估计的一个实例给定如下:

rdt=sqrt((primet(1,1)-whitep(1,1))^2+(primen(1,2)-whitep(1,2))^2)

gdt=sqrt((primet(2,1)-whitep(1,1))^2+(primen(2,2)-whitep(1,2))^2)

bdt=sqrt((primet(3,1)-whitep(1,1))^2+(primen(3,2)-whitep(1,2))^2)

rdn=sqrt((primen(1,1)-whitep(1,1))^2+(primen(1,2)-whitep(1,2))^2)

gdn=sqrt((primen(2,1)-whitep(1,1))^2+(primen(2,2)-whitep(1,2))^2)

bdn=sqrt((primen(3,1)-whitep(1,1))^2+(primen(3,2)-whitep(1,2))^2)

scale2=bdt/bdn

scale3=sqrt((rdt/rdn)^2+(gdt/gdn)^2)

在一些实例中,dra参数估计单元212可经配置以通过根据rgb原生cg视频数据200中的色彩值的实际分布(而非根据天然色域的预定义原色值)确定primen中的原色坐标来估计所述dra参数。即,dra参数估计单元212可经配置以分析存在于rgb原生cg视频数据200中的实际色彩,且在上述函数中使用根据此分析确定的原色色彩及白点来计算dra参数。可使用对上文所定义的某些参数的近似作为dra以促进所述计算。举例来说,在某些架构中,可将scale3=2.1735近似为scale3=2,其允许更容易实施。

在本发明的其它实例中,dra参数估计单元212可经配置以不仅基于目标色彩容器的色域,而且基于目标色彩空间来确定所述dra参数。成分值的实际值分布在色彩空间与色彩空间之间可不同。举例来说,与具有非恒定明度的ycbcr色彩空间相比,对于具有恒定明度的ycbcr色彩空间而言,色度值分布可不同。dra参数估计单元212可使用不同色彩空间的色彩分布来确定所述dra参数。

在本发明的其它实例中,dra参数估计单元212可经配置以导出dra参数的值,以便将与预处理及/或编码视频数据相关联的特定成本函数减到最小。作为一个实例,dra参数估计单元212可经配置以估计最小化上文由量化单元214引入的量化错误(例如,参见方程式(4))的dra参数。dra参数估计单元212可通过对已应用了dra参数的不同集合的视频数据执行量化错误测试而将此错误减到最小。在另一实例中,dra参数估计单元212可经配置而以感知方式估计将由量化单元214引入的量化错误减到最小的dra参数。dra参数估计单元212可基于对已应用了dra参数的不同集合的视频数据的感知错误测试而将此错误减到最小。dra参数估计单元212接着可选择产生最少量化错误的dra参数。

在另一实例中,dra参数估计单元212可选择将与由调整单元210执行的dra及由视频编码器20执行的视频编码两者相关联的成本函数减到最小的dra参数。举例来说,dra参数估计单元212可利用dra参数的多个不同集合来执行dra及对视频数据进行编码。dra参数估计单元212接着可通过形成由dra及视频编码引起的位速率以及由此些两种有损过程引入的失真的加权总和来计算用于dra参数的每一集合的成本函数。dra参数估计单元212接着可选择将成本函数减到最小的dra参数集合。

在针对dra参数估计的以上技术中的每一个中,dra参数估计单元212可使用关于成分的信息针对每一成分单独地确定dra参数。在其它实例中,dra参数估计单元212可使用交叉成分信息来确定dra参数。举例来说,针对cr成分导出的dra参数可用以导出用于cb成分的dra参数。

除导出dra参数外,dra参数估计单元212还可经配置以在经编码位流中发信所述dra参数。dra参数估计单元212可直接发信指示dra参数的一或多个语法元素,或可经配置以将一或多个语法元素提供到视频编码器20以供于发信。参数的此些语法元素可在位流中发信,以使得视频解码器30及/或视频后处理器单元31可执行视频预处理器单元19的过程的逆转,从而以原生色彩容器重构建视频数据。在下文论述用于发信dra参数的实例技术。

在一个实例中,dra参数估计单元212可在以下各者中发信一或多个语法元素:作为元数据的经编码视频位流、补充增强信息(sei)消息、视频可用性信息(vui)、视频参数集合(vps)、序列参数集合(sps)、图片参数集合、切片报头、ctu报头或适合于指示用于视频数据的大小的dra参数的任何其它语法结构(例如,gop、图片、块、宏块、ctu等)。

在一些实例中,所述一或多个语法元素明确地指示dra参数。举例来说,所述一或多个语法元素可以是用于dra的各种比例值及偏移值。在其它实例中,所述一或多个语法元素可以是到包含用于dra的比例值及偏移值的查找表中的一或多个索引。在再一实例中,所述一或多个语法元素可以是到指定供dra使用的线性转移函数的查找表的索引。

在其它实例中,未明确地发信所述dra参数,实情为,视频预处理器单元19及视频后处理器单元31两者经配置以使用相同预定义过程使用相对于位流可辨别的视频数据的相同信息及/或特性来导出所述dra参数。作为一个实例,视频后处理器单元31可经配置以在经编码位流中指示视频数据的原生色彩容器以及经编码视频数据的目标色彩容器。视频后处理器单元31接着可经配置以使用如上所定义的相同过程根据此信息导出所述dra参数。在一些实例中,识别原生及目标色彩容器的一或多个语法元素是在语法结构中供应。此些语法元素可显式地指示色彩容器,或可以是查找表的索引。在另一实例中,视频预处理器单元19可经配置以发信指示色彩原色的xy值及用于特定色彩容器的白点的一或多个语法元素。在另一实例中,视频预处理器单元19可经配置以基于由dra参数估计单元212执行的分析而发信指示视频数据中的色彩原色的xy值及实际色彩值的白点(内容原色及内容白点)的一或多个语法元素。

作为一个实例,可发信含有内容中的色彩的最小色域的色彩原色,且在视频解码器30及/或视频后处理器单元31处,使用容器原色及内容原色两者导出所述dra参数。在一个实例中,如上所述,使用用于r、g及b的x及y成分来发信内容原色。在另一实例中,内容原色可作为两个已知主要集合之间的比率而发信。举例来说,内容原色可作为bt.709原色与bt.2020原色之间的线性位置而发信:xr_content=alfar*xr_bt709+(1-alfar)*xr_bt2020(类似方程式具有用于g及b成分的alfag及alfab),其中参数alfar指定两个已知主要集合之间的比率。在一些实例中,所发信及/或所导出的dra参数可供视频编码器20及/或视频解码器30使用以基于用于译码hdr/wcg视频数据的技术促进加权预测。

在利用加权预测的视频译码方案中,根据以权重(wwp)及偏移(owp)取得的参考图片sr的样本(针对单向预测)来预测当前经译码图片sc的样本,此将产生预测样本sp:

sp=sr*wwp+owp。

在利用dra的一些实例中,可用使用不同参数(即,针对当前图片的{scale1cur,offset1cur}及针对参考图片的{scale1ref,offset1ref})的dra对参考及当前经译码图片的样本进行处理。在此些实施例中,加权预测的参数可从dra导出,例如:

wwp=scale1cur/scale1ref

owp=offset1cur-offset1ref

在调整单元210应用dra参数之后,视频预处理器单元19接着可使用量化单元214将视频数据量化。量化单元214可以与上文参看图4所述的方式相同的方式操作。在量化之后,现在于hdr的数据216的目标原色的目标色彩空间及目标色域中对视频数据进行调整。接着可将hdr的数据216发送到视频编码器20以供压缩。

图9是说明根据本发明的技术的实例hdr/wcg逆转换设备的框图。如图9所示,视频后处理器单元31可经配置以应用由图8的视频预处理器单元19执行的所述技术的逆转。在其它实例中,视频后处理器单元31的技术可并入视频解码器30中且通过视频解码器执行。

在一个实例中,视频解码器30可经配置以解码由视频编码器20编码的视频数据。接着将经解码视频数据(目标色彩容器中的hdr的数据316)转送到视频后处理器单元31。反量化单元314对hdr的数据316执行反量化过程以逆转由图8的量化单元214执行的量化过程。

视频解码器30还可经配置以解码由图8的dra参数估计单元212产生的一或多个语法元素中的任一个且将语法元素发送到视频后处理器单元31的dra参数导出单元312。如上所述,dra参数导出单元312可经配置以基于一或多个语法元素来确定dra参数。在一些实例中,一或多个语法元素明确地指示dra参数。在其它实例中,dra参数导出单元312经配置以使用供图8的dra参数估计单元212使用的相同技术来导出dra参数。

将由dra参数导出单元312导出的参数发送到反调整单元310。反调整单元310使用所述dra参数执行由调整单元210执行的线性dra调整的逆转。反调整单元310可应用上文针对调整单元210所描述的调整技术中的任一个的逆转。另外,如同调整单元210一样,反调整单元310可在任何反色彩转换之前或之后应用反dra。因而,反调整单元310可对目标色彩容器或原生色彩容器中的视频数据应用dra参数。在一些实例中,可定位反调整单元310以在反量化单元314之前应用反调整。

反色彩转换单元308将视频数据从目标色彩空间(例如,ycbcr)转换到原生色彩空间(例如,rgb)。反转移函数306接着应用由转移函数206应用的转移函数的反转,以解压缩视频数据的动态范围。在一些实例中,所得视频数据(rgb目标cg304)仍在目标色域中,但现在处于原生动态范围及原生色彩空间中。接下来,反cg转换器302将rgb目标cg304转换到天然色域以重构建rgb原生cg300。

在一些实例中,额外后处理技术可由视频后处理器单元31使用。应用dra可使视频处于其实际天然色域外。由量化单元214及反量化单元314执行的量化步骤以及由调整单元210及反调整单元310执行的增频采样及降频采样技术可有助于原生色彩容器中的所得色值在天然色域外。当已知天然色域(或如上所述,在发信情况下,实际最小内容原色)时,那么可将额外过程应用于rgb原生cg视频数据304,以将色值(例如,rgb或cb及cr)变换回到预期色域中,如针对dra的后处理。在其它实例中,可在量化之后或在dra应用之后应用此后处理。

如上文所提及,若干sei消息可用以传达关于用于视频数据的各种色彩成分的动态范围调整信息的信息。成分缩放sei消息(例如上文所描述及下文更详细描述的)可传达可用以指示用于视频数据的各种色彩成分的映射信息的一组比例因数、偏移及范围(例如,码字值的分割区)。映射信息可用以向视频解码器30及/或视频后处理器单元31指示如何扩大或缩小样本值的不同范围,以使得重构建的hdr视频数据的总体质量或重构建的sdr视频数据的质量(在需要后向兼容性的一些情况下)得到改进,或使重构建的输出更适合于显示器能力。

以下表3提供成分缩放sei消息的语法结构中一个变体。应注意,以下语法元素的名称含有首码“hdr_recon_”,其不同于以下实例中所描述的首码,其中语法元素的名称以component_scaling为前缀,且语法表另外相同。

表3-实例范围调整sei语法

以下呈现表3的sei语法的语义。

映射过程是基于片段线性函数map[c]()(其中c=0..hdr_recon_num_comps_minus1),所述函数如下所述地将[0,1]中的值x映射到值y=map[c](x):

-对于i在0到hdr_recon_num_ranges[c]-1(包含0及hdr_recon_num_ranges[c]-1)范围内,以下适用:

-值scalevalue[c][i]如语法元素hdr_recon_scale_val[c][i]的语义中所描述地导出。

-值rangevalue[c][i]如语法元素hdr_recon_range_val[c][i]的语义中所描述地导出。

-值inputranges[c][i]及outputranges[c][i](其中i在0到hdr_recon_num_ranges[c]-1范围中(包含0及hdr_recon_num_ranges[c]-1))如下所述地导出:

-如果i等于0,那么以下适用:

outputranges[c][i]=-hdr_recon_global_offset_val[c]*scalevalue[c][i-1](d-xx)

inputranges[c][i]=0(d-xx)

-否则(i不等于0),以下适用:

inputranges[c][i]=inputranges[c][i-1]+rangevalue[c][i-1](d-xx)

outputranges[c][i]=outputranges[c][i-1]+rangevalue[c][i-1]*scalevalue[c][i-1](d-xx)

-值offsetvalue[c][i](其中i在0到hdr_recon_num_ranges[c]-1范围中(包含0及hdr_recon_num_ranges[c]-1))如下所述地导出:

-参数y=map[c](x)如下所述地导出:

-如果x小于或等于outputranges[c][0],那么以下适用:

y=inputranges[c][0](d-xx)

-否则,如果x大于outputranges[c][hdr_recon_num_ranges[c]],那么以下适用:

y=inputranges[c][hdr_recon_num_ranges[c]](d-xx)

-否则,以下适用:

for(i=1;i<=hdr_recon_num_ranges[c];i++)

if(outputranges[i-1]<x&&x<=outputranges[i])

y=x÷scalevalue[c][i-1]+offsetvalue[c][i-1](d-xx)

已识别出与成分缩放信息sei消息及可适用于调整成分的动态范围的其它参数相关联的若干问题。具体来说,已识别出与用以导出比例值及偏移值的浮点数的使用以及用于样本值的码字的范围(例如,rgb值、ycrcb值、yuv值、xyz值等)相关的问题。举例来说,在位流中发信的比例值在解码器侧(例如,通过视频后处理器31)使用,以执行反动态范围调整过程。然而,为了将比例值用于计算样本值的范围及用于计算映射过程,在视频后处理器31处执行互逆操作。针对成分缩放sei消息的先前实例语义指定将乘以样本值的互逆(例如,比例值的互逆,或比例值及附加偏移值的互逆)的使用。在此互逆操作中引入的误差将显著大于转送操作中的潜在误差,这是因为互逆被应用于所产生的每一个样本值。

成分缩放sei消息的语义指示样本值范围的导出过程,及关于浮点操作的到色彩成分(例如,样本值)的每一码字范围的映射过程(例如,比例值及偏移值的应用)。此可以产生重构建的hdr输出基于不同计算系统中的各种浮点算术实施的差异。

本申请案描述用以改进使用sei发信及处理来通信成分缩放信息的若干技术,或可在视频译码标准(例如h.265/hevc、h.264/avc、bda、mpeg或其它标准)中指定的其它类似发信技术。应认识到,以下方面中的一或多个可独立地应用,或以与任何特定实例中的此些方面的其它方面的合适组合而应用。

一般来说,本发明描述多种技术,其中视频编码器20及/或视频预处理器单元19可经配置以发信用于成分样本值(例如,色彩成分值)的一或多个样本值范围的比例值。指定比例值,以使得视频解码器30及视频后处理器单元31可经配置以执行映射过程,从而通过以下操作而从成分的输入样本值获得输出样本值:将针对含有输入样本值的特定样本值范围指定的比例值乘以输入样本值,及添加基于作为成分缩放信息的部分的参数而计算出的偏移。

在本发明的另一实例中,并非使用浮点实施来计算色彩成分的码字的范围的大小及数目,视频编码器20及/或视频预处理器单元19可经配置以使用固定点计算实施来导出色彩成分的码字的范围的大小及数目。举例来说,视频编码器20及/或视频预处理器单元19可经配置以使用预定数目个分数位来确定及应用动态范围调整映射过程的参数。应注意,分数位的数目针对动态范围调整过程的每一参数(例如,每一色彩成分(码字)的值的范围、比例值及偏移值)可不同。

举例来说,视频预处理器单元19可经配置以对用以传达色彩成分的码字的范围的大小及数目的任何参数或语法元素(例如,hdr_recon_num_ranges[c])执行整数操作。视频预处理器单元19可经配置以记住供所使用的固定点实施中的范围的大小及数目的任何计算的分数部分使用的位的数目。视频预处理器单元19及/或视频编码器20可经配置以发信sei消息中的分数部分中所使用的位的数目(例如,hdr_recon_offset_frac_bit_depth、hdr_recon_scale_frac_bit_depth),或用于分数部分中的位的数目可为预定值。视频解码器30可经配置以解码sei消息中指示分数部分中的位的数目的语法元素,且视频后处理器单元31可经配置以使用反动态范围调整过程的参数中的一或多个的分数部分中的相同数目个位来执行反动态范围调整过程。

在本发明的一个实例中,当确定用于映射过程的范围及/或其它参数时,视频解码器30及/或视频后处理器单元31可经配置以确定此些参数,使得当不同参数的发信的分数位深度不同时,针对参数所执行的计算的准确度尽可能地保持。举例来说,视频解码器30及/或视频后处理器单元31可经配置以通过累积用以确定特定参数的任何中间计算步骤中的分数位的数目来保持由舍位到最小值引入的任何误差。视频解码器30及/或视频后处理器单元31接着可在确定及/或计算特定参数的最后步骤执行裁剪过程以使特定参数的最终值达到所要的分数准确度。在另一实例中,当参数的发信的分数位深度相同时,视频解码器30及/或视频后处理器单元31可经配置以累积中间步骤中的分数位的数目,且在最后步骤执行裁剪以使参数的最终值达到所要准确度。

在另一实例中,视频解码器30及/或视频后处理器单元31可经配置以裁剪及/或截断计算过程的一或多个中间步骤的参数的值或所述参数,以使得针对所述参数所获得的值的分数部分减小到预定值。即,并非一直等到确定参数的最终值以执行任何裁剪,视频解码器30及/或视频后处理器单元31可裁剪经执行的计算的中间值以确定参数。此裁剪或截断可基于sei消息中所指示的分数位的数目。在另一实例中,当确定如果操作/步骤是无裁剪地执行,那么分数位的累积数目将超过某一预定值(例如,用以存储中间值的寄存器的位深度)时,视频解码器30及/或视频后处理器单元31可经配置以在特定操作/步骤之前裁剪及/或截断当计算特定参数时所使用的中间值。

在本发明的另一实例中,视频预处理器单元19及/或视频后处理器单元31可经配置以基于针对色彩成分的固定表示所定义的经定义最小值及最大值而根据预定样本值范围导出比例值、偏移值及范围值。举例来说,色彩成分的固定表示可具有经定义的多个值范围,例如,“标准”值范围、“完全”值范围及“受限”值范围。与“标准”值范围(例如,ycbcr色彩空间的8位标准范围表示,y成分可选取16到235范围中(包含16及235)的值,且cb及cr成分可选取16与240之间的值(包含16及240))相比,“完全”值范围可具有特定成分的最小值与最大值之间的较大跨度(例如,对于ycbcr色彩空间的8位全范围表示,y、cb及cr成分可选取0到255范围中(包含0及255)的值)。与“标准”值范围相比,“受限”值范围可具有特定成分的最小值与最大值之间的较小跨度(例如,对于ycbcr色彩空间的10位受限范围表示,y、cb及cr成分可选取4到1019范围中(包含4及1019)的值)。

在一个实例中,视频编码器20及/或视频预处理器单元19可经配置以发信语法元素(例如,在sei消息中)以向视频解码器30及/或视频后处理器单元31指示基于所使用的样本范围(例如,完全、受限、标准或其它)的样本(例如,色彩成分值)的最小及最大准许值。在另一实例中,视频编码器20及/或视频预处理器单元19可经配置以发信基于所使用的样本范围(例如,完全、受限、标准)向视频解码器指示样本的最小及最大准许值的一或多个语法值(例如,在sei消息中)。视频解码器30及/或视频后处理器单元31接着可基于接收的最小值及接收的最大值而确定反动态范围调整过程所允许的成分值的范围。

在另一实例中,视频编码器20及/或视频预处理器单元19可经配置以发信旗标(例如,在sei消息中)以指示比例值是否有正负号或无正负号。在此实例中,不管旗标的值如何,任何sei消息的剖析过程是相同的。

以下部分包含使用先前部分中所公开的实例技术的实施例的若干实例。在此实施例中,成分缩放函数发信为查找表,且还发信用以发信定义查找表的点的位的数目。在一个实例中,查找定义片段线性映射函数。查找表的点对应于定义片段线性映射的(x,y)坐标。对于不具有发信的明确点的样本值,基于相邻支点对值进行内插。

范围及输出样本值的导出过程定义为如下。

来自成分c的样本x到样本y=map[c](x)的映射指定如下:

-设定defaultprecshift的值等于9

-令变量minsampleval及maxsampleval表示如内容的样本范围所界定的最小及最大样本值。

-变量scalevalue[c][i](其中i在0到hdr_recon_num_ranges[c]-1范围中(包含0及hdr_recon_num_ranges[c]-1))如下所述地导出:

-变量rangevalue[c][i](其中i在0到hdr_recon_num_ranges[c]-1范围中(包含0及hdr_recon_num_ranges[c]-1)如下所述地导出:

-如果hdr_recon_equal_ranges_flag[c]等于0,那么以下适用:

rangevalue[c][i]=hdr_recon_range_val[c][i](d-xx)

-否则(hdr_recon_equal_ranges_flag[c]等于1),那么以下适用:

rangevalue[c][i]=((inputdynamicrangevalue&lt;&lt;hdr_recon_offset_frac_bit_depth)+((hdr_recon_num_ranges[c]+1)&gt;&gt;1))/hdr_recon_num_ranges[c](d-xx)

其中当将样本范围从0归一化到1时,inputdynamicrangevalue等于1。

-变量inputranges[c][i]及outputranges[c][i](其中i在0到hdr_recon_num_ranges[c]范围中(包含0及hdr_recon_num_ranges[c]))如下所述地导出:

-如果i等于0,那么以下适用:

outputranges[c][i]=-hdr_recon_global_offset_val[c]*invscalevalue[c][i-1](d-xx)

inputranges[c][i]=0(d-xx)

-否则(i不等于0),以下适用:

inputranges[c][i]=inputranges[c][i-1]+rangevalue[c][i-1](d-xx)outputranges[c][i]=outputranges[c][i-1]+rangevalue[c][i-1]*invscalevalue[c][i-1](d-xx)

-参数offsetvalue[c][i](其中i在0到hdr_recon_num_ranges[c]-1范围中(包含0及hdr_recon_num_ranges[c]-1))如下所述地导出:

precoffsetdeltabits=defaultprecshift+hdr_recon_scale_frac_bit_depthoffsetvalue[c][i]=inputranges[c][i+1]*(1&lt;&lt;precoffsetdeltabits)-outputranges[c][i+1]*scalevalue[c][i-1](d-xx)

offsetvalue[c][i]=((offsetvalue[c][i]+(1&lt;&lt;(bitdepth-1)))&gt;&gt;bitdepth)*(maxsampleval-minsampleval)

-参数y=map[c](x)如下所述地导出:

-变量bitdepthdelta设定等于defaultprecshift+hdr_recon_offset_frac_bit_depth-bitdepth

-如果(x&lt;&lt;bitdepthdelta)小于或等于outputranges[c][0],那么以下适用:

y=inputranges[c][0](d-xx)

fracbitdepth=hdr_recon_offset_frac_bit_depth

-否则,如果(x&lt;&lt;bitdepthdelta)大于outputranges[c][hdr_recon_num_ranges[c]],那么以下适用:

y=inputranges[c][hdr_recon_num_ranges[c]](d-xx)

fracbitdepth=hdr_recon_offset_frac_bit_depth

-否则,以下适用:

替代地,不对offsetvalue执行基于minsampleval及maxsampleval对样本范围的调整,而对inputranges及outputranges执行调整,如下所述:

本发明提供用以改进使用sei发信及处理来携载成分缩放信息的若干技术,或视频译码标准(例如h.265/hevc、h.264/avc、bda、mpeg或其它标准)中已指定或将指定的其它方法。此些技术中的一或多个可独立地应用,或与其它技术组合而应用。另外,上文所述的用于发信及/或使用sei消息中的信息以用于执行动态范围过程的固定点实施的所述技术可利用下文所描述的用于发信/接收所述信息的语法结构中的一或多个。

在一些实例中,视频编码器20可发信包含全域偏移值的一或多个sei消息,对于每一成分,包含确定第一未调整成分的第一偏移值,低于其的所有成分值在应用如本发明中所描述的动态范围调整之前被裁剪到第一成分值。解码器30可接收此些sei消息中的一或多个,剖析及/或解码所述sei消息中的信息,且将所述信息传递到视频后处理器31。

在一些实例中,对于每一成分,视频编码器20可发信包含第二偏移值的一或多个sei消息,所述第二偏移值指定在动态范围调整之后第一偏移值映射到的调整后值。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在另一实例中,第一全域偏移值或第二全域偏移值均不在sei消息中发信。实情为,解码器30假定第一全域偏移及第二全域偏移的值为解码器30根据序列确定或通过外部装置接收的恒定、预定或发信的值。在另一实例中,视频编码器20在sei消息中发信第一全域偏移值,但第二全域偏移值不在sei消息中发信。实情为,视频解码器30推断其值为解码器30根据序列确定或通过外部装置接收的恒定、预定或发信的值。在又一实例中,视频编码器20在sei消息中发信第二全域偏移值,但第一全域偏移值不在sei消息中发信。实情为,视频解码器30推断第一全域偏移值为解码器30根据序列确定或通过外部装置接收的恒定、预定或发信的值。

在一些实例中,视频编码器20可发信偏移值,所述偏移值由解码器30接收且供解码器30使用以导出其它全域或区域参数(包含全域及区域比例值及偏移值两者),以及一系列未调整值的分割区,及一系列调整后值的分割区。

在一些实例中,视频编码器20可发信一或多个sei消息,其包含输入表示值(即,成分值)的范围在动态范围调整期间划分成的分割区的数目。在一个实例中,分割区的数目可限于2的幂(即,1、2、4、8、16等),且分割区的数目发信为对数(例如,8分割区发信为3=log28)。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在一些实例中,用于色度成分的分割区的数目可不同于用于明度成分的分割区的数目。分割区的数目可限于2的幂+1且发信为对数且向负0舍位。以此方式,具有中性色度的像素可具有自身的值,且所述分割区的大小可小于其它分割区。在此实例中,中性色度可指中值(例如,当色度值范围在-0.5与0.5之间或在-512与511(在10位表示中)之间时为0)周围的色度的值。将分割区的数目限制为2的幂可使编码器20能够节约位,这是因为编码器20可能够以与整数值的实际值相比更少的位来表示值的对数。将分割区的数目限制为2的幂+1可确保至少一个分割区可专用于中性色度值,且在一些实例中,对应于中性色度值的分割区的宽度可小于其余部分。在其它实例中,此分割区可大于其它分割区中的一或多个。

在一些实例中,解码器30可使用发信的分割区的数目导出其它全域或区域参数(包含全域及区域比例值及偏移值两者),以及一系列未调整成分值的分割区的实际大小及/或一系列调整后成分值的分割区的大小。

在一些实例中,编码器20可发信一或多个sei消息,其可包含用于每一分割区的区域比例及区域偏移值,所述值指定一系列输入成分值及对应的映射输出成分值。在一些实例中,编码器20可发信sei消息,其包含供语法元素使用以发信比例及偏移的位的数目。在其它实例中,编码器20可发信sei消息,其指示语法元素中用以表示比例及偏移的分数部分的位的数目。在其它实例中,编码器20可发信一或多个sei消息或语法元素,其指示缩放参数的整数部分以有正负号表示进行发信。在一些实例中,有正负号表示是二的补码。在其它实例中,有正负号表示是有正负号量值表示。视频解码器30可接收此些sei消息及/或语法元素,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在其它实例中,编码器20可相继使用每一偏移值来首先计算经调整成分或表示值的范围,接着使用比例值来计算未调整表示中的对应范围。举例来说,一个偏移值可用以使用针对调整后成分导出或发信的全域偏移值的值来计算调整后成分中的第一分割区的范围,接着使用比例值及调整后表示的第一分割区的范围导出未调整表示的对应分割区中的范围,且利用调整后表示的第一分割区及未调整表示的对应分割区的相应范围,导出针对调整后范围的第一分割区及指示分割区的边界的未调整表示的对应分割区导出的相应值。此后,另一偏移值可用以使用在前一步骤中导出的调整后成分中的第一分割区的边界值来计算调整后成分中的第二分割区的范围,接着使用比例值及调整后表示的第二分割区的范围导出未调整表示的范围,且利用调整后表示的第二分割区及未调整表示的对应分割区的相应范围,导出针对调整后及未调整表示中指示相应表示的边界的分割区导出的相应值。重复此方法,直到针对调整后及未调整表示中的所有分割区导出所有范围及边界。在另一实例中,编码器20可相继使用每一偏移值以首先计算未调整成分或表示值的范围,接着使用比例值计算调整后表示中的对应范围。换句话说,经应用比例值及偏移值的成分或表示可在未调整表示与调整后表示之间调换。

在一些实例中,供语法元素使用以发信比例值及偏移值的位的数目可取决于成分。在其它实例中,定义位的默认数目且在此些数目未显式地发信时使用所述默认数目。

在一些实例中,编码器20可发信指示输出表示(即,输出成分)的分割区的长度是否相等的语法元素。在此实例中,对于一或多个分割区,编码器20可不发信偏移值。解码器30可推断偏移值在一些实例中相等。在另一实例中,解码器30可假设分割区具有相等长度且可不接收如此指示的语法元素。在一些实例中,解码器30可从发信的语法元素及表示的预定义总动态范围而导出每一分割区的大小。

在其它实例中,并非发信每一分割区的支点以及每一分割区的比例值及偏移值,视频编码器20可发信指示每一分割区的导数或比例值以及一或多个或所有分割区的大小的一或多个sei消息。此方法可允许编码器20避免发信每一分割区的区域偏移值。实情为,在一些实例中,编码器20可能够在一或多个sei消息中发信一或多个分割区的分割区大小及比例值(或导数)。每一分割区或分割(其可能需要更高准确度)的区域偏移值可由解码器30确定或导出。

在一些实例中,编码器20可发信指示模式值的一或多个sei消息,模式值指定特定分割区的偏移值及比例值的若干默认值。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在一些实例中,编码器20可发信一或多个sei消息,其指示定义sei消息的持续以使得可定义成分的子集的持续且可更新成分的子集的成分比例值的值。sei消息的持续指示sei的执行个体中所发信的值可应用于的图片。在一些实例中,定义sei消息的持续,以使得在sei消息的一个执行个体中发信的值可相应地应用于经应用sei消息的图片的所有成分。在其它实例中,定义sei消息的持续,以使得在sei消息的一个执行个体中发信的值可经指示为相应地应用于成分的子集,其中未应用sei消息的执行个体中的值的成分可不具有可适用的值或可具有在sei消息的另一执行个体中发信的可适用的值。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在一些实例中,编码器20可发信包含指示将对经解码输出执行的后处理步骤的语法元素的一或多个sei消息。每一语法元素可与特定过程(例如,缩放成分、色彩变换、增频取样/降频采样滤波器等)相关联,且语法元素的每一值可指定将使用与处理相关联的参数的特定集合。在一些实例中,与过程相关联的参数是由视频编码器20使用sei消息(所述消息是位流的部分或作为可通过其它装置发射的元数据)来发信。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在一些实例中,编码器20可发信语法元素或一或多个sei消息,其可用于描述及/或构建用于将输入表示(即,输入成分值)映射到输出表示(即,输出成分值)的片段线性模型函数。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。在其它实例中,预定义假设可用于描述及/或构建用于将输入表示映射到输出表示的片段线性模型函数。

在一些实例中,编码器20可发信可包含一或多个语法元素的一或多个sei消息,语法元素指示sei消息中所发信的比例及偏移参数表示作为第二成分的不同值的函数的待应用于第一成分的比例的变化。

在一些实例中,编码器20可发信指示偏移参数的一或多个sei消息,所述偏移参数作为第二成分的不同值的函数将或可与用于第一成分的比例一起应用。在一些实例中,编码器20可发信可包含一或多个额外语法元素的一或多个sei消息,额外语法元素指示作为第二成分的不同值的函数将或可与用于第一成分的比例一起应用的偏移参数。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在一些实例中,编码器20可发信包含指示电光转移函数特性的第一集合的第一语法元素的一或多个sei消息,以使得当在解码器侧使用电光转移函数特性时,sei消息所应用的经发信的比例、偏移及其它动态范围调整参数类似于电光转移函数特性的第一集合。

在另一实例中,编码器20可发信一或多个sei消息,其指示当电光转移函数特性的第一集合或具有类似特性的函数供解码器30使用时,将应用sei消息中的经发信的偏移、比例及其它动态范围参数以实现hdr输出的最佳重构建。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在另一实例中,编码器20可发信一或多个sei消息,其指示电光转移函数特性的第一集合,及当在解码器侧应用对应的反电光转移函数特性时,通过解码器30应用的经发信的比例、偏移及其它动态范围调整参数。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在其它实例中,编码器20可发信条件,以使得当超过一个sei消息呈现从而指示电光/光电特性及可适用的当前图片的不同集合时,仅应用一个sei消息。编码器可发信电光/光电特性的不同集合以满足不同类型的解码器或具有不同能力的解码器。举例来说,解码器侧处的某些显示器可应用pteotf,以将适当域中的经译码成分值转换到线性光,而其它显示器(例如,旧式显示器)可应用γeotf以转换到线性光。编码器发送的具有特定特性的每一sei对于特定类型的显示器可为适当或有益的,而对于其它类型的显示器并非适当或有益的,例如,具有pqeotf特性的sei消息可适合于应用pqeotf以将经译码视频转换到线性光的显示器。解码器30确定将应用哪一sei消息,且基于应用标准、基于最终用户装置、基于接收的信号或基于通过外部装置接收的另一指示而做出此选择。举例来说,解码器30可确定:应用于当前图片的第一sei消息中的第一语法元素指示sei消息将以反pqoetf应用,且应用于当前图片的第二sei消息中的第一语法元素指示sei消息将以另一转移函数(例如bbc或ph)应用,解码器30或最终用户装置可选择应用第一sei消息中的参数,这是因为装置使用pqeotf。在一些实例中,解码器符合的应用标准可指定具有特性的特定集合的sei消息将被使用。

在其它实例中,编码器20可发信载运对应于多组转移特性的参数的sei消息。在其它实例中,编码器20可发信不同sei消息以用于所述目的。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在一些实例中,编码器20可发信包含指示sei消息的适用性的语法元素的一或多个sei消息。sei消息的适用性可包含(但不限于):(1)比例及偏移将应用到的成分,(2)应用成分缩放的位置,及/或(3)是否发信额外缩放参数。

如所描述,编码器20可发信包含指示比例及偏移应用到的成分的语法元素的一或多个sei消息。以下列出此应用的若干实例。举例来说,语法元素的一个值可以指示第一成分索引的发信参数将应用于rgb成分。另一值可指示第一成分索引的发信参数将应用于明度成分,且第二及第三索引的发信参数将应用于cb及cr成分。另一值可指示第一成分索引的发信参数将应用于r、g及b成分,且第二及第三索引的发信参数将应用于cb及cr成分。另一值可指示前三个索引的发信参数将应用于明度、cb及cr成分,且对应于剩余索引的发信参数被应用于色彩校正。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

还如所描述,编码器20可发信包含指示应用成分缩放的位置的语法元素的一或多个sei消息。若干过程在解码视频之后在解码器侧上及在视频后处理器31中发生。发信指示将应用与sei相关联的过程的位置的语法元素(换句话说,指示与使用sei中的信息相关联的过程的前述或接续操作的任何子集)对于视频解码器30或视频后处理器31处理视频将有帮助。举例来说,此语法元素可指示在增频采样之前或之后将成分缩放应用于(例如)ycbcr成分的位置。在另一实例中,语法元素可指示成分缩放是在量化之前应用于解码器侧。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

还如所描述,编码器20可发信包含指示是否发信缩放及参数的额外集合(例如针对色彩校正)的语法元素的一或多个sei消息。参数的额外集合可用于色彩校正以映射色彩成分以配合特定色域,或在应用不同于vui中的transfer_characteristics语法元素所指示的转移函数的转移函数时用于校正成分值。

在其它实例中,编码器20可发信不同语法元素以指示以上方面;例如,一个语法元素用以指示sei应用于哪个(哪些)成分,一个语法元素用以指示sei是否应用于hdr兼容的sdr兼容内容,且一个语法元素用以指示将应用成分缩放sei消息的位置。

当成分缩放sei消息参数应用到的成分的数目大于一时,编码器20可发信包含指示可基于成分的索引依序进行比例及偏移参数的应用的语法元素的一或多个sei消息。举例来说,可应用基于第一成分的比例及偏移参数的映射,接着第二成分的映射(其例如使用针对第二成分发信的比例及偏移)可取决于第一成分的值。在一些实例中,此(例如)通过指定应使用第一成分的映射值的语法元素来指示。视频解码器30可接收此些sei消息,剖析及/或解码所述信息,且将所述信息传递到视频后处理器31。

在另一实例中,视频编码器20可限制一或多个sei消息中或位流中所发信的值,以此方式使得hdr10接收器可解码及展示可视hdr视频,即使未应用sei后处理。sei消息可包含语法元素以指示情况如此(例如,位流是hdr10后向兼容的位流)。

此部分包含使用根据本发明的一或多个方面公开的技术的若干实例。

实例1

在此实例中1,成分缩放函数发信为查找表,且还发信用以发信定义查找表的点的位的数目。对于不具有发信的明确点的样本值,基于相邻支点对值进行内插。

成分缩放sei消息的语法

成分缩放sei消息的语义

成分缩放sei消息提供信息以对经解码图片的各种成分执行缩放操作。色彩空间及应加以执行缩放操作的成分是由sei消息中所发信的语法元素的值确定。

comp_scale_id含有可用以识别成分缩放sei消息的用途的识别数字。comp_scale_id的值应在0到232-2范围中(包含0及232-2)。comp_scale_id的值可用以指定成分缩放sei消息所处的色彩空间,或成分缩放sei消息是在线性或非线性域中应用。

如应用所确定,可使用0到255(包含0及255)及512到231-1(包含512及231-1)的comp_scale_id的值。保留256到511(包含256及511)及231到232-2(包含231及232-2)的comp_scale_id的值以供itu-t|iso/iec未来使用。解码器应忽略含有256到511范围中(包含256及511)或231到232-2范围中(包含231及232-2)的comp_scale_id的值的所有成分比例信息sei消息,且位流不应含有此些值。

注解1-comp_scale_id可用以支持适合于不同显示情境的成分缩放过程。举例来说,comp_scale_id的不同值可对应于不同显示位深度或缩放应用所在的不同色彩空间。

替代地,comp_scale_id还可用以识别针对与特定类型的显示或解码器(例如hdr、sdr)的兼容性是否执行缩放。

等于1的comp_scale_cancel_flag指示成分缩放信息sei消息以应用于当前层的输出次序抵消任何先前成分信息sei消息的持续。等于0的comp_scale_cancel_flag指示成分缩放信息跟随。

comp_scale_persistence_flag指定当前层的成分缩放信息sei消息的持续。

等于0的comp_scale_persistence_flag指定成分缩放信息仅应用于当前经解码图片。

令pica为当前图片。等于1的comp_scale_persistence_flag指定成分缩放信息对于当前层按输出次序持续,直到以下条件中的任一个成立:

-当前层的新clvs开始。

-位流结束。

-含有具有comp_scale_id的相同值且可适用于当前层的成分缩放信息sei消息的存取单元中的当前层中的图片picb被输出,其中picordercnt(picb)大于picordercnt(pica),其中picordercnt(picb)及picordercnt(pica)分别为紧接在调用用于针对picb的图片次序计数的解码过程之后的picb及pica的picordercntval值。

comp_scale_num_comps_minus1加1指定成分缩放函数经指定的成分的数目。comp_scale_num_comps_minus1应在0到2(包含0及2)的范围中。

当comp_scale_num_comps_minus1小于2且第c个成分的成分缩放参数未发信时,推断成分缩放参数等于第(c-1)个成分的那些参数。

替代地,当comp_scale_num_comps_minus1小于2且第c个成分的成分缩放参数未发信时,推断第c个成分的成分缩放参数等于默认值,以使得实际上不存在成分的缩放。

替代地,对成分缩放参数的推断可基于sei消息所应用于的色彩空间来指定。

-当色彩空间是ycbcr且comp_scale_num_comps_minus1等于1时,成分缩放参数应用于cb及cr成分两者。

-当色彩空间是ycbcr且comp_scale_num_comps_minus1等于2时,第一及第二成分缩放参数应用于cb及cr成分两者。

在一个替代方案中,基于comp_scale_id的值或基于明确语法元素来指定不同推断。

替代地,添加如下所述的约束:

针对位流一致性的约束是,对于具有clvs内的comp_scale_id的给定值的所有成分缩放sei消息,comp_scale_num_comps_minus1的值应相同。

comp_scale_input_bit_depth_minus8加8指定用以发信语法元素comp_scale_input_point[c][i]的位的数目。comp_scale_input_bit_depth_minus8的值应在0到8(包含0及8)的范围中。

当将成分缩放sei消息应用于在0.0到1.0的范围中的归一化浮点表示中的输入时,sei消息指为了以等于colour_remap_input_bit_depth_minus8+8的位深度将输入视频转换到经转换视频表示所执行的量化操作的假想结果。

当将成分缩放sei消息应用于具有不等于comp_scale_input_bit_depth_minus8+8的位深度的输入时,sei消息指为了以等于colour_remap_input_bit_depth_minus8+8的位深度将输入视频表示转换到经转换视频表示所执行的转码操作的假想结果。

comp_scale_output_bit_depth_minus8加8指定用以发信语法元素comp_scale_output_point[c][i]的位的数目。comp_scale_output_bit_depth_minus8的值应在0到8范围中(包含0及8)。

当将成分缩放sei消息应用于浮点表示中的输入时,sei消息指为了将在处理成分缩放消息之后获得具有等于colour_remap_output_bit_depth_minus8+8的位深度的视频表示转换到范围0.0到1.0中的浮点表示所执行的反量化操作的假想结果。

替代地,用以发信comp_scale_input_point[c][i]及comp_scale_output_point[c][i]的位的数目分别发信为comp_scale_input_bit_depth及comp_scale_output_bit_depth,或换句话说,无需减去8。

comp_scale_num_points_minus1[c]加1指定用以定义成分缩放函数的支点的数目。comp_scale_num_points_minus1[c]应在0到(1&lt;&lt;min(comp_scale_input_bit_depth_minus8+8,comp_scale_output_bit_depth_minus8+8))-1范围中(包含0及(1&lt;&lt;min(comp_scale_input_bit_depth_minus8+8,comp_scale_output_bit_depth_minus8+8))-1)。

comp_scale_input_point[c][i]指定输入图片的第c个成分的第i个支点。comp_scale_input_point[c][i]的值应在0到(1&lt;&lt;comp_scale_input_bit_depth_minus8[c]+8)-1范围中(包含0及(1&lt;&lt;comp_scale_input_bit_depth_minus8[c]+8)-1)。comp_scale_input_point[c][i]的值应大于或等于comp_scale_input_point[c][i-1]的值,其中i在1到comp_scale_points_minus1[c]范围中(包含1及comp_scale_points_minus1[c])。

comp_scale_output_point[c][i]指定输出图片的第c个成分的第i个支点。comp_scale_output_point[c][i]的值应在1到(1&lt;&lt;comp_scale_output_bit_depth_minus8[c]+8)-1范围中(包含1及(1&lt;&lt;comp_scale_output_bit_depth_minus8[c]+8)-1)。comp_scale_output_point[c][i]的值应大于或等于comp_scale_output_point[c][i-1]的值,其中i在1到comp_scale_points_minus1[c]范围中(包含1及comp_scale_points_minus1[c])。

将映射输入信号表示x及输出信号表示y的过程指定如下,其中输入及输出两者的样本值分别在0到(1&lt;&lt;comp_scale_input_bit_depth_minus8[c]+8)-1范围中(包含0及(1&lt;&lt;comp_scale_input_bit_depth_minus8[c]+8)-1)及0到(1&lt;&lt;comp_scale_output_bit_depth_minus8[c]+8)-1范围中(包含0及(1&lt;&lt;comp_scale_output_bit_depth_minus8[c]+8)-1):

在一个替代方案中,将输入及输出支点comp_scale_input_point[c][i]及comp_scale_output_point[c][i]译码为邻近值的差;例如,delta_comp_scale_input_point[][]及delta_comp_scale_output_point[][],且使用指数哥伦布码来译码所述语法元素。

在另一替代方案中,通过其它内插方法(包含(但不限于)样条及立方内插)来指定映射输入及输出表示值的过程。

实例2

此实例2展示与实例1中所描述的sei语法结构相比的不同语法结构。在此语法结构中,关于比例及偏移(而非支点)来描述映射函数。

成分缩放sei消息的语法

comp_scale_bit_depth_scale_val指定用以发信语法元素comp_scale_val[c][i]的位的数目。comp_scale_bit_depth_scale_val的值应在0到24范围中(包含0及24)。

comp_scale_log2_denom_scale_val指定比例值的底数2分母。comp_scale_log2_denom_scale_val的值应在0到16范围中(包含0及16)。

comp_scale_global_offset_input_val[c]加1指定输入样本值,小于所述输入样本值的所有输入表示值被裁剪到compscaleoffsetoutputval[c][0]。用以定义成分缩放函数。comp_scale_num_points_minus1[c]应在0到(1&lt;&lt;comp_scale_input_bit_depth)-1范围中(包含0及(1&lt;&lt;comp_scale_input_bit_depth)-1)。用以表示comp_scale_global_offset_input_val[c]的位的数目是comp_scale_input_bit_depth。

comp_scale_global_offset_output_val[c]加1指定输出样本值,低于comp_scale_global_offset_input_val[c]的所有输入表示值将裁剪到所述输出样本值。

comp_scale_num_points_minus1[c]应在0到(1&lt;&lt;comp_scale_output_bit_depth)-1范围中(包含0及(1&lt;&lt;comp_scale_output_bit_depth)-1)。用以表示comp_scale_global_offset_output_val[c]的位的数目是comp_scale_output_bit_depth。

comp_scale_num_points_minus1[c]加1指定用以定义成分缩放函数的支点的数目。comp_scale_num_points_minus1[c]应在0到(1&lt;&lt;min(comp_scale_input_bit_depth,comp_scale_output_bit_depth)-1范围中(包含0及(1&lt;&lt;min(comp_scale_input_bit_depth,comp_scale_output_bit_depth)-1)。

将映射输入信号表示x及输出信号表示y的过程指定如下,其中输入表示两者的样本值在0到(1&lt;&lt;comp_scale_input_bit_depth)-1范围中(包含0及(1&lt;&lt;comp_scale_input_bit_depth)-1),且输出表示在及0到(1&lt;&lt;comp_scale_output_bit_depth)-1范围中(包含0及(1&lt;&lt;comp_scale_output_bit_depth)-1):

comp_scale_offset_val[c][i]指定第c个成分的第i个样本值区的偏移值。用以表示comp_scale_offset_val[c]的位的数目等于comp_scale_input_bit_depth。

comp_scale_val[c][i]指定第c个成分的第i个样本值区点的比例值。用以表示comp_scale_val[c]的位的数目等于comp_scale_bit_depth_scale_val。

如下所述地导出变量compscaleoffsetoutputval[c][i]及compscaleoffsetinputval[c][i],其中i在0到comp_scale_num_points_minus1[c]范围中(包含0及comp_scale_num_points_minus1[c]):

在一个替代方案中,如下所述,使用comp_scale_offset_val[c][i]直接计算compscaleoffsetoutputval[][i]及间接计算compscaleoffsetinputval[][i],其中i在0到comp_scale_num_points_minus1[c]范围中:

在一个替代方案中,未发信comp_scale_offset_val[c][i],其中i在0到comp_scale_num_points_minus1[c]范围中(包含0及comp_scale_num_points_minus1[c]),且基于比例经指定的comp_scale_num_points_minus1[c]等距分布的间隔来导出comp_scale_offset_val[c][i]的值。如下所述地导出comp_scale_offset_val[c][i]的值,其中i在0到comp_scale_num_points_minus1[c]-1范围中(包含0及comp_scale_num_points_minus1[c]-1):

comp_scale_offset_val[c][i]=((1&lt;&lt;comp_scale_output_bit_depth)-comp_scale_global_offset_output_val[c])÷(comp_scale_num_points_minus1[c])

在另一替代方案中,如下所述地计算comp_scale_offset_val[c][i],其中i在0到comp_scale_num_points_minus1[c]范围中(包含0及comp_scale_num_points_minus1[c]):

comp_scale_offset_val[c][i]=(1&lt;&lt;comp_scale_output_bit_depth)÷(comp_scale_num_points_minus1[c])

在一个替代方案中,替代发信comp_scale_num_points_minus1[c],使用log2_comp_scale_num_points[c]来发信支点的数目,其中(1&lt;&lt;log2_comp_scale_num_points[c])指定第c个成分的支点的数目。

替代地,将comp_scale_offset_val[c][]及comp_scale_val[c][]中的每一个发信为浮点数字,或具有指数及尾数的两个语法元素。

在另一替代方案中,由comp_scale_output_point[c][i]来替代comp_scale_val[c][i]的发信。

语法元素的其余部分的语义类似于实例1中所描述的那些语义。

实例3

实例3中所描述的此方法类似于实例2中所描述的替代方案中的一个,以下情况除外:允许成分缩放函数独立地更新。

成分缩放sei消息的语法

成分缩放sei消息的语义

语义类似于实例2,以下语法元素除外。

comp_scale_num_scale_regions[c]指定用于针对第c个成分发信语法元素comp_scale_val[c][i]的区的数目。comp_scale_num_scale_regions[c]应在0到(1&lt;&lt;comp_scale_input_bit_depth)-1范围中(包含0及(1&lt;&lt;comp_scale_input_bit_depth)-1)。

等于0的comp_scale_persist_component_flag[c]指定用于第c个成分的成分缩放参数明确地在sei消息中发信。等于1的comp_scale_persist_component_flag[c]指定用于第c个成分的成分缩放参数未明确地在sei消息中发信,且其按输出次序从应用于先前图片的成分缩放sei消息的第c个成分的成分缩放参数持续。

位流一致性的要求为:当成分缩放sei消息存在于irap存取单元中时,comp_scale_persist_component_flag[c](如果存在)的值应等于0。

替代地,添加以下条件:

位流一致性的要求为:当成分缩放sei消息存在于非irap存取单元的存取单元中且comp_scale_persist_component_flag[c]等于1时,那么存在按输出次序先于当前图片且按输出次序在按解码次序的先前irap图片之后的至少一个图片(包含性),以使得所述一个图片与comp_scale_persistence_flag等于1的成分缩放sei消息相关联。

comp_scale_persistence_flag指定当前层的成分缩放信息sei消息的持续。

等于0的comp_scale_persistence_flag指定成分缩放信息仅应用于当前经解码图片。

令pica为当前图片。等于1的comp_scale_persistence_flag指定第c个成分在成分缩放信息对于当前层按输出次序持续,直到以下条件中的任一个成立:

-当前层的新clvs开始。

-位流结束。

-含有具有comp_scale_id的相同值及comp_scale_persist_component_flag[c]等于0且可适用于当前层的成分缩放信息sei消息的存取单元中的当前层中的图片picb被输出,其中picordercnt(picb)大于picordercnt(pica),其中picordercnt(picb)及picordercnt(pica)分别为紧接在调用用于针对picb的图片次序计数的解码过程之后的picb及pica的picordercntval值。

实例4

在此实例4中,公开发信比例区的不同方法。

成分缩放sei消息语法的变化

成分缩放sei消息语义的变化

所述语法元素的语义类似于先前实例中所描述的语义,以下除外:

comp_scale_offset_begin_val[c][i]指定比例值comp_scale_val[c][i]可适用的样本值范围的开始。用以表示comp_scale_offset_begin_val[c]的位的数目等于comp_scale_input_bit_depth。

comp_scale_offset_end_val[c][i]指定比例值comp_scale_val[c][i]可适用的样本值范围的结束。用以表示comp_scale_offset_end_val[c]的位的数目等于comp_scale_input_bit_depth。

针对comp_scale_offset_begin_val及comp_scale_offset_end_val未明确指定的区,推断那些区的comp_scale_value[c][i]等于0。

替代地,不发信comp_scale_offset_end_val[c][i],而改为发信comp_scale_offset_end_val[c][i]与comp_scale_offset_begin_val[c][i]之间的差,且在解码器侧导出comp_scale_offset_end_val[c][i]的值。

在另一替代方案中,指定输出样本范围分成的区的总数目,且发信比例区经显式地发信的区的数目。

comp_scale_tot_scale_regions[c]指定样本值分成的相等长度样本值范围的总数目。用以表示comp_scale_tot_scale_regions[c]的位的数目等于comp_scale_input_bit_depth。

在一个替代方案中,comp_scale_tot_scale_regions[c]样本值范围在长度上可能不完全相等而是几乎完全相等,以考虑区长度的整数准确度。

comp_scale_region_idx[c][i]指定比例值comp_scale_val[c][i]所应用于的样本值范围的索引。语法元素comp_scale_region_idx[c]的长度是ceil(log2(comp_scale_tot_scale_regions[c]))个位。

替代方案

替代地,色度中值(对于10位数据为511)围绕的区具有较小大小,即其它区的大小的一半。

实例5

成分比例sei消息的语法

成分比例sei消息的语义

成分缩放sei消息提供信息以对经解码图片的各种成分执行缩放操作。色彩空间及应加以执行缩放操作的成分是由sei消息中所发信的语法元素的值确定。

comp_scale_id含有可用以识别成分缩放sei消息的用途的识别数字。comp_scale_id的值应在0到232-2范围中(包含0及232-2)。comp_scale_id的值可用以指定成分缩放sei消息所处的色彩空间,或成分缩放sei消息是在线性或非线性域中应用。

在一些实例中,comp_scale_id可指定hdr重构建过程的配置。在一些实例中,comp_scale_id的特定值可与用于3个成分的缩放参数的发信相关联。第一成分的缩放将应用于r',g',b'色彩空间的样本,且应用随后2个成分的参数以用于缩放cr及cb。

对于又一comp_scale_id值,hdr重构建过程可利用用于3个成分的参数,且将缩放应用于明度、cr及cb色彩成分的样本。

在又一comp_scale_id值中,hdr重构建过程可利用针对4个成分的发信,所述成分中的3个将应用于明度、cr及cb缩放,且第4成分携带色彩校正的参数。

在一些实例中,comp_scale_id值的特定范围可与以sdr后向兼容配置进行的hdr重构建相关联,而comp_scale_id值的另一范围可与进行到非后向兼容配置的hdr重构建相关联。

如应用所确定,可使用0到255(包含0及255)及512到231–1(包含512及231-1)的comp_scale_id的值。保留256到511(包含256及511)及231到232-2(包含231及232-2)的comp_scale_id的值以供itu-t|iso/iec未来使用。解码器应忽略含有256到511范围中(包含256及511)或231到232-2范围中(包含231及232-2)的comp_scale_id的值的所有成分比例信息sei消息,且位流不应含有此些值。

注解1-comp_scale_id可用以支持适合于不同显示情境的成分缩放过程。举例来说,comp_scale_id的不同值可对应于不同显示位深度或缩放应用所在的不同色彩空间。

替代地,comp_scale_id还可用以识别针对与特定类型的显示或解码器(例如hdr、sdr)的兼容性是否执行缩放。

等于1的comp_scale_cancel_flag指示成分缩放信息sei消息以应用于当前层的输出次序抵消任何先前成分信息sei消息的持续。等于0的comp_scale_cancel_flag指示成分缩放信息跟随。

comp_scale_persistence_flag指定当前层的成分缩放信息sei消息的持续。

等于0的comp_scale_persistence_flag指定成分缩放信息仅应用于当前经解码图片。

令pica为当前图片。等于1的comp_scale_persistence_flag指定成分缩放信息对于当前层按输出次序持续,直到以下条件中的任一个成立:

-当前层的新clvs开始。

-位流结束。

-含有具有comp_scale_id的相同值且可适用于当前层的成分缩放信息sei消息的存取单元中的当前层中的图片picb被输出,其中picordercnt(picb)大于picordercnt(pica),其中picordercnt(picb)及picordercnt(pica)分别为紧接在调用用于针对picb的图片次序计数的解码过程之后的picb及pica的picordercntval值。

comp_scale_scale_bit_depth指定用以发信语法元素comp_scale_scale_val[c][i]的位的数目。comp_scale_scale_bit_depth的值应在0到15范围中(包含0及15)。

comp_scale_offset_bit_depth指定用以发信语法元素comp_scale_global_offset_val[c]及comp_scale_offset_val[c][i]的位的数目。comp_scale_offset_bit_depth的值应在0到15范围中(包含0及15)。

comp_scale_scale_frac_bit_depth指定用以指示第c个成分的第i个分割区的缩放参数的分数部分的lsb的数目。comp_scale_scale_frac_bit_depth的值应在0到15范围中(包含0及15)。comp_scale_scale_frac_bit_depth的值应小于或等于comp_scale_scale_bit_depth的值。

comp_scale_offset_frac_bit_depth指定用以指示第c个成分的第i个分割区的偏移参数的分数部分的lsb的数目及第c个成分的全域偏移。comp_scale_offset_frac_bit_depth的值应在0到15范围中(包含0及15)。comp_scale_offset_frac_bit_depth的值应小于或等于comp_scale_offset_bit_depth的值。

comp_scale_num_comps_minus1加1指定成分缩放函数经指定的成分的数目。comp_scale_num_comps_minus1应在0到2(包含0及2)的范围中。

comp_scale_num_ranges[c]指定输出样本范围分割成的范围的数目。comp_scale_num_ranges[c]的值应在0到63范围中(包含0及63)。

等于1的comp_scale_equal_ranges_flag[c]指示:输出样本范围经分割成comp_scale_num_ranges[c]几乎相等的分割区,且未明确发信分割区宽度。等于0的comp_scale_equal_ranges_flag[c]指示:输出样本范围可分割成comp_scale_num_ranges[c]分割区,并非所有分割区具有相同大小,且明确发信分割区宽度。

comp_scale_global_offset_val[c]用以导出偏移值,所述偏移值用以映射第c个成分的有效输入数据范围的最小值。comp_scale_global_offset_val[c]的长度是comp_scale_offset_bit_depth个位。

comp_scale_scale_val[c][i]用以导出偏移值,所述偏移值用以导出第c个成分的第i个分割区的宽度。comp_scale_global_offset_val[c]的长度是comp_scale_offset_bit_depth个位。

如下所述地导出变量compscalescaleval[c][i]:

comp_scale_offset_val[c][i]用以导出偏移值,所述偏移值用以导出第c个成分的第i个分割区的宽度。comp_scale_global_offset_val[c]的长度是comp_scale_offset_bit_depth个位。

当发信comp_scale_offset_val[c][i]时,如下所述地导出compscaleoffsetval[c][i]的值:

compscaleoffsetval[c][i]=(comp_scale_offset_val[c][i]&gt;&gt;comp_scale_offset_frac_bit_depth)+(comp_scale_offset_val[c][i]&((1<<comp_scale_offset_frac_bit_depth)-1)))÷(1&lt;&lt;comp_scale_offset_frac_bit_depth)

替代地,如下所述地导出变量compscalescaleval[c][i]及compscaleoffsetval[c][i]:

compscalescaleval[c][i]=comp_scale_scale_val[c][i]&(1<<comp_scale_scale_frac_bit_depth)

compscaleoffsetval[c][i]=comp_scale_offset_val[c][i]÷(1&lt;&lt;comp_scale_offset_frac_bit_depth)

当comp_scale_equal_ranges_flag[c]等于1时,不发信comp_scale_offset_val[c][i],且如下所述地导出compscaleoffsetval[c][i]的值。

compscaleoffsetval[c][i]=1÷comp_scale_num_ranges[c]

如下所述地导出变量compscaleoutputranges[c][i]及compscaleoutputranges[c][i],其中i在0到comp_scale_num_ranges[c]范围中。

在一个替代方案中,如下所述地导出compscaleoutputranges[][]及compscaleoutputranges[][]的值:

如下所述地指定映射输入信号表示(其可用以涵盖整数以及浮点两者)x及输出信号表示y的过程,其中输入表示的样本值经归一化在0到1范围中,且输出表示在及0到1范围中:

在一个替代方案中,基于准许的样本值范围来设定compscaleoutputranges[c][0]的值。

替代地,如下所述地定义将输入值valin映射到输出值valout的过程:

在一个替代方案中,对于第c个成分,m_offset2等于comp_scale_global_offset_val[c]÷(1&lt;&lt;comp_scale_offset_frac_bit_depth),m_patfscale[c][i]等于compscalescaleval[c][i]且m_patfdelta[i]等于compscaleoffsetval[c][i],且pscale及poffset是从m_atfscale及m_patfdelta导出的缩放参数及偏移参数。

将相应地定义反操作。

实例6

在一些实例中,上文所述(例如,实例5中)的发信方法中的一些可如展示地用于以下伪程序码中。

m_atfnumberranges是针对给定c的语法元素comp_scale_num_ranges[c]的项,其指定针对映射数据的动态范围分割的数目。

m_patfrangein是compscaleinputranges的项,是具有大小m_atfnumberranges+1的阵列,其包含指定两个串接分割区(例如,i及i+1)之间的边界的输入样本值。

m_patfrangeout是compscaleoutputranges的项,是具有大小m_atfnumberranges+1的阵列,其包含指定两个串接分割区(例如,i及i+1)之间的边界的输出样本值。

m_patfscale2是变量compscalescaleval[c]的项,是具有大小m_atfnumberranges的阵列,其包含用于每一分割区的比例值。

m_patfoffset2是阵列大小为m_atfnumberranges的阵列,其包含用于每一分割区的偏移值。

m_offset2是针对comp_scale_global_offset_val的项目。

在此实例中,可根据语法元素确定片段线性模型的参数,如在算法1中:

算法1:

一旦确定,即可将片段线性模型应用于输入样本值invalue,以确定输出样本值outvalue,如在算法2中:

算法2:

将进行逆过程,如在算法3中:

算法3:

在一些实例中,两个串接分割区i与i+1之间的边界样本值(m_patfrangein或m_patfrangeout的输入项)可不同地解译为属于i+1分割区(而非属于i分割区),这是因为其展示于算法2及3中。

在一些实例中,算法3中所展示的逆过程可通过利用乘以m_patfinversescale2值(而非除以m_patfscale2[j])来实施。在此些实例中,预先根据m_patfscale2[j]来确定m_patfscale2[j]的值。

在一些实例中,m_patfinversescale2[j]在解码器侧经确定为1/m_patfscale2[j]。

在一些实例中,m_patfinversescale2[j]可在编码器侧进行计算,且通过位流发信。在此些实例中,算法1、2及3中给定的操作将予以相应调整。

各种实例

在一些实例中,建议的发信机制可用以模型化片段函数,其可用以实现针对输入信号的样本的动态范围调整,(例如)以改进视频译码系统的压缩效率。

在一些实例中,建议的发信机制可用以模型化片段函数,其可应用于通过oetf(例如,通过st.2084的pqtf或其它)产生的码字(r,g,b样本的非线性表示)。

在一些实例中,建议的发信机制可用以模型化可应用于ycbcr色彩表示的样本的片段函数。

在一些实例中,建议的发信机制可用以模型化可用以具有sdr兼容性的hdr/wcg解决方案的片段函数。

在一些实例中,建议的发信机制可用以模型化可应用于浮点表示的样本的片段函数。在另一实例中,建议的发信机制及所得函数可应用于整数表示(例如,10位)的样本。

在一些实例中,建议的发信机制可用以模型化可应用于查找表形式的样本的片段函数。在另一实例中,建议的发信机制可用以模型化可应用于乘法器形式的样本的函数。

组合及扩展

在以上实例中,针对每一区采用线性模型(即,比例加偏移);本发明的技术还可适用于高阶多项式模型,例如,第2程度的多项式需要三个参数而非两个参数。将针对此情境适当地扩展发信及语法。

上述方面的组合是可能的且为本发明的技术的部分。

工具箱组合:存在可以与本发明中所描述的sei的目的有些类似的目的为目标的若干hdr方法。为了适应其中超过一个的目标,但同时限制每个帧的可适用sei处理的数目,建议将此些方法(中的一或多个)组合在单一sei中。建议的语法元素将指示在各情况下应用的特定方法。举例来说,如果sei中存在两种可能方法,那么语法元素将为指示待使用的方法的旗标。

实例7

在此实例中,修改缩放参数的发信,以使得可发射负比例,且所发信的缩放参数指示针对各种成分的不同范围将应用的比例的偏差。以下为相对于实例5的变化。

sei消息的语法的变化

sei消息的语义的变化

等于1的comp_scale_negative_scales_present_flag指定从comp_scale_scale_val[c][i]导出的缩放参数的整数部分表示为有正负号整数。等于0的comp_scale_negative_scales_present_flag指定从comp_scale_scale_val[c][i]导出的整数部分缩放参数表示为无正负号整数。

在一个替代方案中,将偏移参数的另一集合与comp_scale_scale_val一起发信,所述偏移参数用以定义与第一成分的比例一起应用的偏移作为第二成分的值的函数。

有正负号整数表示包含(但不限于)二补码记法且有正负号量值表示(一个位用于正负号且剩余位用于整数部分)。针对有正负号量值表示给出以下推导。对于其它形式的有正负号表示,可类似地定义推导。

如下所述地导出变量compscalescaleval[c][i]:

位流一致性的要求为:当comp_scale_negative_scale_present_flag等于1时,comp_scale_scale_bit_depth的值应大于或等于comp_scale_scale_frac_bit_depth。

comp_scale_dependent_component_id指定缩放参数及偏移参数于视频的各种成分的应用。当comp_scale_dependent_component_id等于0时,使用语法元素comp_scale_global_offset_val[c]、comp_scale_scale_val[c][i]及comp_scale_offset_val[c][i]来识别第c个成分的输入值及输出值的映射。当comp_scale_dependent_component_id大于0时,comp_scale_dependent_component_id-1指定成分的索引,以使得语法元素comp_scale_global_offset_val[c]、comp_scale_scale_val[c][i]及comp_scale_offset_val[c][i]指定待应用于样本的第c个成分的缩放参数的映射为样本的第(comp_scale_dependent_component_id-1)个成分的值的函数。

语义的其余部分类似于实例5中所描述的那些语义。

实例8

在此实例中,atf参数的位深度取决于成分。对于每一成分,语法元素的位深度显式地发信。另外,对于那些语法元素,存在默认位深度。默认值是在位深度未明确地发信时指派。旗标可指示是否应用默认值或显式地发信默认值。

下表展示此些概念的实例。atf参数的语法元素是比例hdr_recon_scale_val[][]及范围hdr_recon_range_val[][]。指示对应位深度的语法元素(整数部分及分数部分)是以下各者:

●hdr_recon_scale_bit_depth[c],

●hdr_recon_offset_bit_depth[c],

●hdr_recon_scale_frac_bit_depth[c],

●hdr_recon_offset_frac_bit_depth[c],

其中c是成分索引。可将比例及偏移(范围)的默认位深度设定为:

●hdr_recon_scale_bit_depth[c]=8,

●hdr_recon_offset_bit_depth[c]=8,

●hdr_recon_scale_frac_bit_depth[c]=6,

●hdr_recon_offset_frac_bit_depth[c]=8。

参数的准确度还可针对atf参数及色彩调整参数而不同。并且,默认值可按成分且针对色彩调整参数而不同。在此实例中,假定默认值为相同的。

实例9

新hdr解决方案的所需性质为与先前hdr解决方案(如hdr10)后向兼容。语法元素可指示情况如此。此指示位流的特性,且hdr解码器可决定在某些环境下不将计算资源耗费在反atf处理上,如果非atf版本已经可视。

在一个实例中,保留hdr_recon_id语法元素的某些值以指示hdr10后向兼容性,或后向兼容性的程度。

在另一实例中,旗标(hdr_recon_hdr10_bc)指示此情形。

在一个实例中,发信的hdr10后向兼容性指示位流是可视的。替代地,其可指示发信值的某些特定性质:例如,发信值是保证此性质的一系列值。举例来说,约束可为比例在0.9与1.1之间。

图10是说明可实施本发明的技术的视频编码器20的实例的框图。视频编码器20可执行目标色彩容器中已由视频预处理器单元19处理的视频切片内的视频块的帧内及帧间译码。帧内译码依赖于空间预测以减少或去除给定视频帧或图片内的视频的空间冗余。帧间译码依赖于时间预测以减少或去除视频序列的相邻帧或图片内的视频的时间冗余。帧内模式(i模式)可指若干基于空间的译码模式中的任一个。帧间模式(例如,单向预测(p模式)或双向预测(b模式))可指若干基于时间的译码模式中的任一个。

如图10所示,视频编码器20接收待编码视频帧的当前视频块。在图10的实例中,视频编码器20包含模式选择单元40、视频数据存储器41、经解码图片缓冲器64、求和器50、变换处理单元52、量化单元54及熵编码单元56。模式选择单元40又包含运动补偿单元44、运动估计单元42、帧内预测处理单元46及分割单元48。为了视频块重构建,视频编码器20还包括反量化单元58、反变换处理单元60及求和器62。还可包括解块滤波器(图10中未图示)以滤波块边界以从重构建视频去除块效应伪影。如果需要,解块滤波器通常将对求和器62的输出进行滤波。还可使用除解块滤波器以外的额外滤波器(回路中或回路后)。为简洁起见未展示此些滤波器,但如果需要,此些滤波器可对求和器50的输出进行滤波(作为回路中滤波器)。

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

在编码过程期间,视频编码器20接收待译码的视频帧或切片。帧或切片可划分成多个视频块。运动估计单元42及运动补偿单元44执行所接收的视频块相对于一或多个参考帧中的一或多个块的帧间预测性译码以提供时间预测。帧内预测处理单元46可替代地执行所接收视频块相对于在与待译码的块相同的帧或切片中的一或多个相邻块的帧内预测性译码以提供空间预测。视频编码器20可执行多个译码遍次,(例如)以选择用于每一视频数据块的适当译码模式。

此外,分割单元48可基于对先前译码遍次中的先前分割方案的评估而将视频数据的块分割成子块。举例来说,分割单元48可起初将帧或切片分割成lcu,并且基于速率-失真分析(例如,速率-失真优化)将lcu中的每一个分割成子cu。模式选择单元40可进一步产生指示将lcu分割为子cu的四分树数据结构。四分树的叶节点cu可包含一或多个pu及一或多个tu。

模式选择单元40可(例如)基于误差结果而选择译码模式(帧内或帧间)中的一个,且将所得经帧内译码或经帧间译码块提供到求和器50以产生残余块数据,且提供到求和器62以重构建用作参看帧的经编码块。模式选择单元40还将语法元素(例如,运动向量、帧内模式指示符、分区信息及其它此类语法信息)提供到熵编码单元56。

运动估计单元42及运动补偿单元44可高度集成,但为概念目的而分开说明。由运动估计单元42执行的运动估计是产生运动向量的过程,运动向量估计视频块的运动。举例来说,运动向量可指示在当前视频帧或图片内的视频块的pu相对于在参考图片(或其它经译码单元)内的预测性块相对于在所述当前图片(或其它经译码单元)内正经译码的当前块的位移。预测性块是就像素差而言被发现紧密地匹配待译码块的块,所述像素差可通过绝对差总和(sad)、平方差总和(ssd)或其它差度量确定。在一些实例中,视频编码器20可计算存储于经解码图片缓冲器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可内插所述参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可执行相对于全像素位置及分数像素位置的运动搜索且输出具有分数像素精确度的运动向量。

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

由运动补偿单元44执行的运动补偿可涉及基于由运动估计单元42所确定的运动向量来提取或产生所述预测性块。而且,在一些实例中,运动估计单元42及运动补偿单元44可在功能上集成。在接收到当前视频块的pu的运动向量之后,运动补偿单元44可在参考图片列表中的一个中定位运动向量所指向的预测性块。求和器50通过从正经译码的当前视频块的像素值减去预测性块的像素值来形成残余视频块,从而形成像素差值,如下文所论述。一般来说,运动估计单元42相对于明度成分而执行运动估计,且运动补偿单元44将基于明度成分所计算的运动向量用于色度成分与明度成分两者。模式选择单元40还可产生与视频块及视频切片相关联的语法元素以供视频解码器30在解码视频切片的视频块过程中使用。

如上所述,作为由运动估计单元42及运动补偿单元44所执行的帧间预测的替代,帧内预测处理单元46可对当前块进行帧内预测。具体来说,帧内预测处理单元46可确定帧内预测模式以用以编码当前块。在一些实例中,帧内预测处理单元46可(例如)在分开的编码遍次期间使用各种帧内预测模式来编码当前块,且帧内预测单元46(或在一些实例中,模式选择单元40)可从所测试的模式选择使用的适当帧内预测模式。

举例来说,帧内预测处理单元46可使用针对各种所测试帧内预测模式的速率-失真分析来计算速率-失真值,且在所测试模式间选择具有最佳速率-失真特性的帧内预测模式。速率-失真分析一般确定经编码块与原始未经编码块(其经编码以产生经编码块)之间的失真(或误差)量,以及用以产生经编码块的位速率(即,位数目)。帧内预测处理单元46可从各种经编码块的失真及速率计算比率以确定哪一帧内预测模式展现所述块的最佳速率-失真值。

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

视频编码器20通过从正被译码的原始视频块减去来自模式选择单元40的预测数据而形成残余视频块。求和器50表示执行此减法运算的一或多个组件。变换处理单元52将变换(例如离散余弦变换(dct)或概念上类似的变换)应用于残余块,从而产生包括残余变换系数值的视频块。变换处理单元52可执行概念上类似于dct的其它变换。还可使用小波变换、整数变换、子频带变换或其它类型的变换。在任何状况下,变换处理单元52将变换应用于残差块,从而产生残差变换系数块。所述变换可将残差信息从像素值域变换到变换域,例如频域。变换处理单元52可将所得变换系数发送到量化单元54。

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

在量化之后,熵编码单元56熵译码经量化的变换系数。举例来说,熵编码单元56可执行上下文自适应性可变长度译码(cavlc)、上下文自适应性二进制算术译码(cabac)、基于语法的上下文自适应性二进制算术译码(sbac)、概率区间分割熵(pipe)译码或另一熵译码技术。在基于上下文的熵译码的状况下,上下文可基于邻近块。在由熵译码单元56进行熵译码之后,可将经编码位流发射到另一装置(例如,视频解码器30)或加以存档以供稍后发射或检索。

反量化单元58及反变换单元60分别应用反量化及反变换以在像素域中重构建残余块(例如)以供稍后用作参考块。运动补偿单元44可通过将残余块添加到经解码图片缓冲器64的帧中的一个的预测性块而计算参考块。运动补偿单元44还可将一或多个内插滤波器应用到经重构建的残余块,以计算在运动估计中使用的子整数像素值。求和器62将经重构建的残余块添加到由运动补偿单元44所产生的经运动补偿预测块,以产生用于存储于经解码图片缓冲器64中的经重构建视频块。经重构建的视频块可由运动估计单元42及运动补偿单元44用作参考块以帧间译码在后续视频帧中的块。

图11是说明可实施本发明的技术的视频解码器30的实例的框图。具体来说,视频解码器30可将视频数据解码成目标色彩容器,其接着可由视频后处理器单元31进行处理,如上所述。在图11的实例中,视频解码器30包含熵解码单元70、视频数据存储器71、运动补偿单元72、帧内预测处理单元74、反量化单元76、反变换处理单元78、经解码图片缓冲器82及求和器80。在一些实例中,视频解码器30可执行大体上与关于视频编码器20(图10)所描述的编码遍次互逆的解码遍次。运动补偿单元72可基于从熵解码单元70所接收的运动向量产生预测数据,而帧内预测处理单元74可基于从熵解码单元70所接收的帧内预测模式指示符产生预测数据。

视频数据存储器71可存储待由视频解码器30的组件解码的视频数据,例如经编码视频位流。可(例如)通过视频数据的有线或无线网络通信或通过存取物理数据存储媒体而从计算机可读媒体16(例如,从本地视频源,例如摄影机)获得存储于视频数据存储器71中的视频数据。视频数据存储器71可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(cpb)。经解码图片缓冲器82可以是存储用于由视频解码器30在解码视频数据(例如,在帧内或帧间译码模式中)过程中使用的参考视频数据的参考图片存储器。视频数据存储器71及经解码图片缓冲器82可由多种存储器设备中的任一个形成,例如动态随机存取存储器(dram),包含同步dram(sdram)、磁阻式ram(mram)、电阻式ram(rram)或其它类型的存储器设备。可由同一存储器装置或单独存储器装置提供视频数据存储器71及经解码图片缓冲器82。在各种实例中,视频数据存储器71可与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。

在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块及相关联语法元素的经编码视频位流。视频解码器30的熵解码单元70熵解码位流以产生经量化的系数、运动向量或帧内预测模式指示符及其它语法元素。熵解码单元70将运动向量及其它语法元素转递到运动补偿单元72。视频解码器30可接收视频切片层级及/或视频块层级的语法元素。

当视频切片经译码为经帧内译码(i)切片时,帧内预测处理单元74可基于经传信帧内预测模式及来自当前帧或图片的先前经解码块的数据而产生当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(即,b或p)切片时,运动补偿单元72基于从熵解码单元70接收的运动向量及其它语法元素而产生当前视频切片的视频块的预测性块。可从参考图片列表中的一个内的参考图片中的一个产生预测性块。视频解码器30可基于存储于经解码图片缓冲器82中的参考图片使用默认构建技术来构建参考图片列表(列表0及列表1)。运动补偿单元72通过剖析运动向量及其它语法元素来确定用于当前视频切片的视频块的预测信息,且使用所述预测信息产生用于正经解码的当前视频块的预测性块。举例来说,运动补偿单元72使用所接收语法元素中的一些,以确定用以译码视频切片的视频块的预测模式(例如,帧内或帧间预测)、帧间预测切片类型(例如,b切片或p切片)、用于所述切片的参考图片列表中的一或多个的构建信息、用于所述切片的每一经帧间编码视频块的运动向量、用于所述切片的每一经帧间译码视频块的帧间预测状态及用以解码当前视频切片中的视频块的其它信息。

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

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

在运动补偿单元72基于运动向量及其它语法元素而产生当前视频块的预测性块之后,视频解码器30通过将来自反变换处理单元78的残余块与由运动补偿单元72产生的对应预测性块求和而形成经解码视频块。求和器80表示可执行此求和运算的组件或多个组件。如果需要,还可应用解块滤波器来对经解码块滤波以便去除块效应伪影。还可使用其它回路滤波器(在译码回路中或在译码回路之后)使像素转变平滑,或以其它方式改进视频质量。接着将给定帧或图片中的经解码视频块存储在经解码图片缓冲器82中,经解码图片缓冲器存储用于后续运动补偿的参考图片。经解码图片缓冲器82还存储经解码视频,以用于稍后在显示装置(例如,图1的显示装置32)上呈现。

图12是展示本发明的一个实例视频处理技术的流程图。图12的所述技术可由视频编码器20及/或视频预处理器单元19执行。在图12的实例中,源装置12可经配置以使用摄影机捕捉视频数据(1200)。视频编码器20及/或视频预处理器单元19可经配置以使用固定点计算对视频数据执行动态范围调整过程(1210)。视频编码器20及/或视频预处理器单元19可经进一步配置以使用固定点计算产生含有指定如何确定用于执行相对于所述动态范围调整过程的反动态范围调整过程的参数的信息的一或多个语法元素(1220)。

在一个实例中,视频编码器20及/或视频预处理器单元19可经配置以通过在一或多个补充增强信息(sei)消息中产生所述一或多个语法元素而产生所述一或多个语法元素。在一个实例中,所述参数包括范围参数、比例参数或偏移参数中的一或多个。在另一实例中,所述信息指示以下各者中的一或多个:用于确定所述范围参数的分数位的第一数目、用于确定所述比例参数的分数位的第二数目及用于确定所述偏移参数的分数位的第三数目。在另一实例中,所述信息包含所述视频数据的一或多个色彩成分的最小值及最大值。在另一实例中,所述信息包含所述经解码视频数据的样本值的预定范围的索引。

图13是展示本发明的另一实例视频处理技术的流程图。图13的所述技术可由视频解码器30及/或视频后处理器单元31执行。在本发明的一个实例中,视频解码器30及/或视频后处理器单元31可经配置以接收含有指定如何确定用于执行反动态范围调整过程的参数的信息的一或多个语法元素(1300),且接收所述经解码视频数据(1310)。

视频解码器30及/或视频后处理器单元31可经进一步配置以根据所述接收的信息确定用于反动态范围调整过程的参数(1320),且根据接收的所述信息及所述经确定参数,使用固定点计算对所述经解码视频数据执行所述反动态范围调整过程(1330)。目的地装置14可经进一步配置以在对所述经解码视频数据执行所述反动态范围调整过程之后而显示所述经解码视频数据(1340)。

在本发明的一个实例中,视频解码器30及/或视频后处理器单元31可经配置以接收一或多个补充增强信息(sei)消息中的所述一或多个语法元素。在一个实例中,所述参数包括范围参数、比例参数或偏移参数中的一或多个。在另一实例中,所述信息指示以下各者中的一或多个:用于确定所述范围参数的分数位的第一数目、用于确定所述比例参数的分数位的第二数目及用于确定所述偏移参数的分数位的第三数目。

在本发明的另一实例中,视频解码器30及/或视频后处理器单元31可经配置以在分数位的所述第一数目、分数位的所述第二数目或分数位的所述第三数目中的至少一个彼此不同的情况下,通过在用以确定所述参数的任何中间计算过程期间累积任何分数位来确定所述参数,且基于预定的分数准确度而裁剪最终结果以用于确定所述参数。

在本发明的另一实例中,视频解码器30及/或视频后处理器单元31可经配置以通过在用以确定所述参数的所有中间计算过程期间截断超出所要分数准确度的任何分数位来确定所述参数。

在另一实例中,所述信息包含所述经解码视频数据的一或多个色彩成分的最小值及最大值,且视频解码器30及/或视频后处理器单元31可经配置以基于所述接收的最小值及所述接收的最大值来确定所述参数。

在另一实例中,所述信息包含所述经解码视频数据的一或多个色彩成分的样本值的预定范围的索引,且视频解码器30及/或视频后处理器单元31可经配置以基于所述接收的索引来确定所述经解码视频数据的所述一或多个色彩成分的最小值及最大值,且基于所述确定的最小值及所述确定的最大值来确定所述参数。

在本发明的另一实例中,视频解码器30及/或视频后处理器单元31可经配置以接收指示所述参数带正负号或不带正负号的语法元素,且对所述sei消息中的所述信息执行剖析过程,其中所述剖析过程不管所述语法元素的值如何都相同。

出于说明目的,本发明的某些方面已经关于hevc标准的扩展而描述。然而,本发明中所描述的技术可用于其它视频译码过程,包含尚未开发的其它标准或专有视频译码过程。

如本发明中所描述,视频译码器可指视频编码器或视频解码器。类似地,视频译码单元可指视频编码器或视频解码器。同样地,如适用,视频译码可指视频编码或视频解码。

应认识到,取决于实例,本文中所描述的技术中的任一个的某些动作或事件可以不同序列执行、可添加、合并或完全省略(例如,并非所有所描述的动作或事件对于技术的实践是必要的)。此外,在某些实例中,可例如通过多线程处理、中断处理或多个处理器同时地(而非依序地)执行动作或事件。

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

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

可通过例如一或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、场可编程逻辑阵列(fpga)或其它等效集成或离散逻辑电路的一或多个处理器来执行指令。相应地,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任何其它结构中的任一个。另外,在一些方面中,本文中所描述的功能性可提供于经配置用于编码及解码的专用硬件及/或软件模块内,或并入于组合式编解码器中。再者,所述技术可完全实施于一或多个电路或逻辑元件中。

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

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

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