CN106664428B - 用于调色板模式译码的方法和设备 - Google Patents

用于调色板模式译码的方法和设备 Download PDF

Info

Publication number
CN106664428B
CN106664428B CN201580035281.7A CN201580035281A CN106664428B CN 106664428 B CN106664428 B CN 106664428B CN 201580035281 A CN201580035281 A CN 201580035281A CN 106664428 B CN106664428 B CN 106664428B
Authority
CN
China
Prior art keywords
bit stream
video
pixel value
value
palette
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201580035281.7A
Other languages
English (en)
Other versions
CN106664428A (zh
Inventor
濮伟
瑞珍·雷克斯曼·乔许
陈建乐
马尔塔·卡切维奇
谢成郑
邹锋
霍埃尔·索赖·罗哈斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN106664428A publication Critical patent/CN106664428A/zh
Application granted granted Critical
Publication of CN106664428B publication Critical patent/CN106664428B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种用于解码提供于位流中的视频数据的方法,其中所述位流包含在调色板模式中译码的译码单元CU,所述方法包含:解析与提供于所述位流中的所述CU相关联的调色板;解析提供于所述位流中的与所述CU相关联的一或多个游程长度;解析提供于所述位流中的与所述CU相关联的一或多个索引值;及解析提供于所述位流中的与所述CU相关联的一或多个逸出像素值。可从所述位流中的连续位置解析所述逸出像素值,所述连续位置在与所述CU相关联的所有所述游程长度和所述索引值之后的所述位流中。所述方法可进一步包含基于所述经解析调色板、经解析游程长度、经解析索引值和经解析逸出值来解码所述CU。

Description

用于调色板模式译码的方法和设备
技术领域
本发明涉及视频译码和压缩的领域,且尤其涉及屏幕内容译码。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播***、无线广播***、个人数字助理(PDA)、膝上型或台式计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置及其类似者。数字视频装置实施视频压缩技术,例如在由运动图片专家组-2(MPEG-2)、MPEG-4、国际电信联盟电信标准化部门(ITU-T)H.263、ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)定义的标准、高效率视频译码(HEVC)标准和这些标准的扩展中描述的视频压缩技术。视频装置可通过实施此些视频译码技术而更有效地发射、接收、编码、解码及/或存储数字视频信息。
随着高速因特网接入的流行,新兴视频应用(例如远程桌面共享、虚拟桌面基础结构及无线显示)要求屏幕内容的高压缩效率。然而,额外帧内和帧间视频译码工具经设计主要用于自然内容。屏幕内容相较于自然内容具有明显不同的特性(例如,锐边缘和较低或无噪声),这使得那些传统译码工具不够用。
发明内容
本发明的***、方法及装置各自具有若干创新方面,其中没有单个方面单独负责本文中所公开的所要属性。
在一个方面中,一种在位流中解码视频数据的方法,其中位流含有在调色板模式中译码的译码单元(CU),所述方法包含:解析与提供于位流中的CU中相关联的调色板,所述调色板包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目;解析提供于位流中的与CU相关联的一或多个游程长度,每一游程长度指示始于且包含CU中的当前位置的连续位置的数目,所述连续位置的数目与左方复制模式或上方复制模式相关联;解析提供于位流中的与CU相关联的一或多个索引值,每一索引值指示调色板中与CU中的当前位置相关联的像素值;解析提供于位流中的与CU相关联的一或多个逸出像素值,每一逸出像素值指示不在调色板中的像素值,其中从所述位流中的连续位置解析所述逸出像素值,所述连续位置在与CU相关联的所有游程长度和索引值之后的位流中;及基于经解析调色板、经解析游程长度、经解析索引值和经解析逸出值来解码CU。
在另一方面中,一种用于解码提供于位流中的视频数据的设备包含存储器和与所述存储器通信的处理器。存储器经配置以存储与位流相关联的视频数据,所述位流包含在调色板模式中译码的译码单元(CU)。处理器经配置以:解析与提供于位流中的CU相关联的调色板,所述调色板包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目;解析提供于位流中的与CU相关联的一或多个游程长度,每一游程长度指示始于且包含CU中的当前位置的连续位置的数目,所述连续位置的数目与左方复制模式或上方复制模式相关联;解析提供于位流中的与CU相关联的一或多个索引值,每一索引值指示调色板中与CU中的当前位置相关联的像素值;解析提供于位流中的与CU相关联的一或多个逸出像素值,每一逸出像素值指示不在调色板中的像素值,其中从位流中的连续位置解析所述逸出像素值,所述连续位置在与CU相关联的所有游程长度和索引值之后的位流中;及基于经解析调色板、经解析游程长度、经解析索引值和经解析逸出值来解码CU。
在一个方面中,一种在位流中编码视频数据的方法包含:分析译码单元(CU)中的多个像素,每一像素具有与之相关联的像素值;基于CU中的多个像素产生调色板,所述调色板包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目;确定与位流中的CU相关联的一或多个游程长度,每一游程长度指示始于且包含CU中的当前位置的连续位置的数目,所述连续位置的数目与左方复制模式或上方复制模式相关联;确定与位流中的CU相关联的一或多个索引值,每一索引值指示调色板中与CU中的当前位置相关联的像素值;确定与位流中的CU相关联的一或多个逸出像素值,每一逸出像素值指示不在调色板中的像素值;及基于所产生调色板、所确定游程长度、所确定索引值和所确定逸出像素值来编码CU,其中逸出像素值在位流中的连续位置中经编码,所述连续位置在与CU相关联的所有游程长度和索引值之后的位流中。
在另一方面中,一种用于在位流中编码视频数据的设备包含存储器和与所述存储器通信的处理器。存储器经配置以存储与位流相关联的视频数据,所述位流包含在调色板模式中译码的译码单元(CU)。处理器经配置以:分析译码单元(CU)中的多个像素,每一像素具有与之相关联的像素值;基于CU中的多个像素产生调色板,所述调色板包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目;确定与位流中的CU相关联的一或多个游程长度,每一游程长度指示始于且包含CU中的当前位置的连续位置的数目,所述连续位置的数目与左方复制模式或上方复制模式相关联;确定与位流中的CU相关联的一或多个索引值,每一索引值指示调色板中与CU中的当前位置相关联的像素值;确定与位流中的CU相关联的一或多个逸出像素值,每一逸出像素值指示不在调色板中的像素值;及基于所产生调色板、所确定游程长度、所确定索引值和所确定逸出像素值来编码CU,其中所述逸出像素值在位流中的连续位置中经编码,所述连续位置在与CU相关联的所有游程长度和索引值之后的位流中。
附图说明
图1A是说明可利用根据本发明中所描述的方面的技术的实例视频编码和解码***的框图。
图1B是说明可执行根据本发明中所描述的方面的技术的另一实例视频编码和解码***的框图。
图2是说明可实施根据本发明中所描述的方面的技术的视频编码器的实例的框图。
图3是说明可实施根据本发明中所描述的方面的技术的视频解码器的实例的框图。
图4是说明输入CU、索引块、逸出像素和与CU相关联的调色板的框图。
图5是说明根据本发明中所描述的方面的用于在位流中译码视频数据的方法的流程图。
图6是说明根据本发明中所描述的方面的用于在位流中解码视频数据的方法的流程图。
图7是说明根据本发明中所描述的方面的用于在位流中解码视频数据的另一方法的流程图。
图8是说明根据本发明中所描述的方面的用于在位流中译码视频数据的另一方法的流程图。
图9是说明根据本发明中所描述的方面的用于在位流中编码视频数据的方法的流程图。
具体实施方式
在屏幕内容译码的现有实施方案中,位流中可存在一些冗余。可通过跳过在满足某些条件时用信号表示的某些语法元素来移除这些冗余。另外,一些语法元素可引入解析相关性。举例来说,由于解码器可推断游程模式为索引复制模式(例如,左方复制模式),所以当当前像素在块中的第一线中时可能不需要用信号表示用于指示游程模式的语法元素。另外,在解码器首先对索引值进行解码的情况下,且取决于经解码索引值,解码器决定所述模式是索引复制模式还是逸出模式(例如,基于索引值是否表示逸出索引值)。如果解码器确定模式为索引复制模式,那么解码器解析器继续解析游程长度。如果解码器确定模式为逸出模式,那么解码器解析器可继续解析逸出值及/或游程长度。由于解析器通常以比解码器高得多的速度操作,解码引擎与解析引擎之间的这种相关性可能影响解析器的吞吐量(例如,由于解析引擎可能需要等待解码引擎对经解析位进行解码)。因此,需要一种处理在调色板译码模式中译码的块的改进方法。在本申请案中,描述用于组织位流中的调色板元素以避免或减少调色板模式中的解析相关性的若干新颖方法。
在以下描述中,描述与某些实施例相关的H.264/高级视频译码(AVC)技术;也论述了HEVC标准和相关技术。虽然本文中在HEVC和/或H.264标准的上下文中描述某些实施例,但所属领域的技术人员将了解,本文中所公开的***和方法可适用于任何合适的视频译码标准。举例来说,本文中所公开的实施例可适用于以下标准中的一或多者:国际电信联盟(ITU)电信标准分会(ITU-T)H.261、国际标准化组织/国际电工委员会(ISO/IEC)MPEG-1Visual、ITU-T H.262或ISO/IEC MPEG-2Visual、ITU-T H.263、ISO/IEC MPEG-4Visual和ITU-T H.264(也称为ISO/IEC MPEG-4AVC),包含范围扩展。
在许多方面,HEVC通常遵循先前视频译码标准的框架。HEVC中的预测单元不同于某些先前视频译码标准中的预测单元(例如,宏块)。实际上,在HEVC中不存在如在某些先前视频译码标准中所理解的宏块的概念。宏块由基于四叉树方案的分层结构替换,所述分层结构可提供高灵活性和其它可能益处。举例来说,在HEVC方案内,定义三个类型的块,例如译码单位(CU)、预测单元(PU)和变换单元(TU)。CU可指区***的基本单元。可将CU视为类似于宏块的概念,但HEVC不限制CU的最大大小,且可允许递归***成四个大小相等的CU以改进内容适应性。PU可被认为是帧间/帧内预测的基本单元,且单个PU可含有多个任意形状分区以有效地译码不规则图像样式。TU可认为是变换的基本单元。可独立于PU界定TU;然而,TU的大小可限于TU属于的CU的大小。此块结构分离为三个不同概念可允许根据单元的相应作用来优化每一单元,这可得到改善的译码效率。
视频译码标准
例如视频图像、TV图像、静态图像或由录像机或计算机产生的图像等的数字图像可包含布置成水平及垂直线的像素或样本。单个图像中的像素的数目通常有数万个。每一像素通常含有明度和色度信息。在无压缩的情况下,将从图像编码器传达到图像解码器的信息的绝对量将使实时图像发射变得不切实际。为了减少待发射的信息的量,已开发出例如JPEG、MPEG及H.263标准等数个不同压缩方法。
视频译码标准包含ITU-T H.261、ISO/IEC MPEG-1Visual、ITU-T H.262或ISO/IECMPEG-2Visual、ITU-T H.263、ISO/IEC MPEG-4Visual和ITU-T H.264(也称为ISO/IECMPEG-4AVC),和包含范围扩展的HEVC。
另外,存在一种视频译码标准,即HEVC,其已由ITU-T视频译码专家组(VCEG)及ISO/IEC MPEG的视频译码联合合作小组(JCT-VC)开发。对HEVC草案10的完全引用为Bross等人的文件JCTVC-L1003,“高效视频译码(HEVC)文本规范草案10(High Efficiency VideoCoding(HEVC)Text Specification Draft 10)”,ITU-T SG16WP3与ISO/IEC JTC1/SC29/WG11的视频译码联合协作小组(JCT-VC),第12次会议:瑞士日内瓦,2013年1月14日到2013年1月23日。对HEVC的范围扩展也正由JCT-VC开发。
视频译码***
下文参考附图更充分地描述新颖***、设备及方法的各个方面。然而,本发明可以许多不同形式来体现,且不应将其解释为限于贯穿本发明所呈现的任何特定结构或功能。相反地,提供这些方面以使得本发明将透彻且完整,并且将向所属领域的技术人员充分传达本发明的范围。基于本文中的教示,所属领域的技术人员应了解,本发明的范围既定涵盖无论是独立于本发明的任何其它方面而实施还是与之组合而实施的本文中所揭示的新颖***、设备及方法的任何方面。举例来说,可以使用本文中所阐述的任何数目个方面来实施设备或实践方法。另外,本发明的范围既定涵盖使用除本文中所阐述的本发明的各种方面之外的或不同于本文中所阐述的本发明的各种方面的其它结构、功能性或结构与功能性来实践的此设备或方法。应理解,可通过权利要求的一或多个要素来体现本文中所公开的任何方面。
尽管本文描述了特定方面,但这些方面的许多变化及排列落在本发明的范围内。尽管提及了优选方面的一些益处及优点,但本发明的范畴不希望限于特定益处、用途或目标。而是,本发明的方面既定广泛地适用于不同无线技术、***配置、网络及发射协议,其中的一些是借助于实例而在图中以及在优选方面的以下描述中说明。具体实施方式和图式仅说明本发明,而不是限制由所附权利要求书和其等效物界定的本发明的范围。
附图说明若干实例。由附图中的参考标号指示的元件对应于在以下描述中由相同参考标号指示的元件。在本发明中,具有以序数词(例如,“第一”、“第二”、“第三”等)开始的名称的元件不一定暗示所述元件具有特定次序。而是,这些序数词仅用于指代相同或类似类型的不同元件。
图1A是说明可利用根据本发明中描述的方面的技术的实例视频译码***10的框图。如本文中所描述地使用,术语“视频译码器”或“译码器”一般指代视频编码器和视频解码器两者。在本发明中,术语“视频译码”或“译码”可一般地指代视频编码和视频解码。除了视频编码器和视频解码器外,本申请案中描述的方面可扩展到其它相关装置,例如,转码器(例如,可解码位流且重新编码另一位流的装置)及中间框(例如,可修改、变换及/或另外操纵位流的装置)。
如图1A中所展示,视频译码***10包含源装置12,所述源装置12产生稍后由目的地装置14解码的经编码视频数据。在图1A的实例中,源装置12和目的地装置14构成独立装置。然而,应注意,源装置12和目的地装置14可在相同装置上或为相同装置的一部分,如图1B的实例中所展示。
再次参考图1A,源装置12和目的地装置14可分别包括多种多样的装置中的任一者,包含台式计算机、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的“智能”电话的电话手持机、所谓的“智能”板、电视、摄像机、显示装置、数字媒体播放器、视频游戏控制台、视频流装置或其类似者。在各种实施例中,源装置12和目的地装置14可经装备以用于无线通信。
目的地装置14可经由链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在图1A的实例中,链路16可包括使得源装置12能够实时将经编码视频数据发射到目的地装置14的通信媒体。可根据通信标准(例如,无线通信协议)调制经编码的视频数据,并将其发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理发射线。通信媒体可形成分组网络(例如,局域网、广域网或全球网络,例如因特网)的部分。通信媒体可包含路由器、交换机、基站或可用于促进从源装置12到目的地装置14的通信的任一其它设备。
替代地,经编码数据可从输出接口22输出到存储装置31(任选地存在)。类似地,可通过(例如)目的地装置14的输入接口28从存储装置31存取经编码数据。存储装置31可包含多种分布式或本地存取数据存储媒体中的任一者,例如硬盘驱动器、快闪存储器、易失性或非易失性存储器,或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置31可对应于文件服务器或可保持源装置12产生的经编码视频的另一中间存储装置。目的地装置14可经由串流或下载从存储装置31存取所存储的视频数据。文件服务器可为任何类型的能够存储经编码视频数据且将经编码视频数据发射到目的地装置14的服务器。实例文件服务器包含万维网服务器(例如,用于网站)、文件发射协议(FTP)服务器、网络连接存储(NAS)装置或本地磁盘驱动器。目的地装置14可通过任何标准数据连接(包含因特网连接)来存取经编码的视频数据。此可包含无线信道(例如,无线局域网(WLAN)连接)、有线连接(例如,数字用户线(DSL)、电缆调制解调器等)或适合于存取存储在文件服务器上的经编码视频数据的两者的组合。经编码视频数据从存储装置31的发射可为流式发射发射、下载发射或两者的组合。
本发明的技术不限于无线应用或设置。所述技术可应用于支持多种多媒体应用中的任一者的视频译码,例如空中电视广播、有线电视发射、***发射、例如经由因特网的流式视频发射(例如,超文本传送协议(HTTP)动态自适应流式发射等)、用于存储在数据存储媒体上的数字视频的编码、存储在数据存储媒体上的数字视频的解码,或其它应用。在一些实例中,视频译码***10可经配置以支持单向或双向视频发射以支持例如视频流式发射、视频回放、视频广播及/或视频电话等应用。
在图1A的实例中,源装置12包含视频源18、视频编码器20和输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)及/或发射器。在源装置12中,视频源18可包括源,例如视频捕获装置(例如,视频摄像机)、含有先前所捕获的视频的视频存档、用于从视频内容提供者接收视频的视频馈入接口和/或用于产生计算机图形数据以作为源视频的计算机图形***,或此类源的组合。作为一个实例,如果视频源18是视频摄像机,那么源装置12和目的地装置14可形成所谓的“相机电话”或“视频电话”,如图1B的实例中所说明。然而,本发明中所描述的技术一般来说可适用于视频译码,且可应用于无线和/或有线应用。
可由视频编码器20对所捕获、预捕获或计算机产生的视频进行编码。可经由源装置12的输出接口22将经编码视频数据发射到目的地装置14。还可(或替代地)将经编码视频数据存储到存储装置31上以用于稍后由目的地装置14或其它装置存取以供解码和/或回放。图1A和1B中说明的视频编码器20可包含图2中说明的视频编码器20或本文中描述的任一其它视频编码器。
在图1A的实例中,目的地装置14包含输入接口28、视频解码器30和显示装置32。在一些情况下,输入接口28可包含接收器及/或调制解调器。目的地装置14的输入接口28可经由链路16和/或从存储装置31接收经编码视频数据。经由链路16传送或在存储装置31上提供的经编码视频数据可包含由视频编码器20所产生的多种语法元素以供由例如视频解码器30等的视频解码器用于解码视频数据。此类语法元素可与在通信媒体上发射、存储于存储媒体上或存储文件服务器的经编码视频数据包含在一起。图1A和1B中说明的视频解码器30可包括图3中说明的视频解码器30或本文中描述的任一其它视频解码器。
显示装置32可与目的地装置14集成或在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还可经配置以与外部显示装置介接。在其它实例中,目的地装置14可能是显示装置。一般来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在相关方面中,图1B展示实例译码***10′,其中源装置12和目的地装置14在装置11上或作为其一部分。装置11可为电话手持机,例如“智能”电话或类似者。装置11可包含与源装置12和目的地装置14操作性通信的控制器/处理器装置13(任选地存在)。图1B的视频译码***10′及其组件另外类似于图1A的视频译码***10及其组件。
视频编码器20和视频解码器30可根据例如HEVC等视频压缩标准操作,且可符合HEVC测试模型(HM)。替代地,视频编码器20和视频解码器30可根据其它专属或业界标准或此类标准的扩展来操作,所述标准例如ITU-T H.264标准,或者被称为MPEG-4第10部分AVC。但是,本发明的技术不限于任何特定译码标准。视频压缩标准的其它实例包含MPEG-2和ITU-T H.263。
尽管图1A和1B的实例中未展示,但视频编码器20和视频解码器30可各自与音频编码器和解码器集成,且可包含适当的多路复用器-多路分用器单元或其它硬件和软件,以处置对共同数据流或单独数据流中的音频和视频两者的编码。在一些实例中,如果适用的话,那么多路复用器-多路分用器单元可以符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
视频编码器20和视频解码器30各自可实施为多种合适的编码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当部分以软件实施所述技术时,装置可将用于所述软件的指令存储于合适非暂时性计算机可读媒体中并使用一或多个处理器用硬件执行所述指令以执行本发明的技术。视频编码器20和视频解码器30中的每一者可以包含在一个或一个以上编码器或解码器中,所述编码器或解码器中的任一者可以集成为相应装置中的组合编码器/解码器的一部分。
视频译码过程
如上文简要提及,视频编码器20编码视频数据。视频数据可以包括一或多个图片。图片中的每一者为形成视频的部分的静态图像。在一些情况下,图片可被称作视频“帧”。当视频编码器20编码视频数据时,视频编码器20可以产生位流。位流可包含形成视频数据的经译码表示的一连串位。位流可包含经译码图片和相关联的数据。经译码的图片是图片的经译码的表示。
为了产生位流,视频编码器20可对视频数据中的每一图片执行编码操作。当视频编码器20对图片执行编码操作时,视频编码器20可产生一系列经译码图片和相关联数据。相关联数据可包含视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、自适应参数集(APS)和其它语法结构。SPS可含有适用于图片的零或更多序列的参数。PPS可含有适用于零或更多图片的参数。APS可含有适用于零个或更多图片的参数。APS中的参数可为比PPS中的参数更可能改变的参数。
为了产生经译码图片,视频编码器20可将图片分割成大小相等的视频块。视频块可为样本的二维阵列。视频块中的每一者与树块相关联。在一些情况下,树块可被称作最大译码单元(LCU)。HEVC的树块可广泛类似于例如H.264/AVC等先前标准的宏块。然而,树块不必限于特定大小,且可包含一或多个译码单元(CU)。视频编码器20可使用四叉树分割来将树块的视频块分割成与CU相关联的视频块(因此名称为“树块”)。
在一些实例中,视频编码器20可将图片分割成多个切片。切片中的每一者可包含整数数目个CU。在一些情况下,一个切片包括整数数目个树块。在其它情况下,切片的边界可在树块内。
作为对图片执行编码操作的部分,视频编码器20可对图片的每一切片执行编码操作。当视频编码器20对切片执行编码操作时,视频编码器20可产生与切片相关联的经编码数据。与切片相关联的经编码数据可被称为“经译码切片”。
为产生经译码切片,视频编码器20可对切片中的每一树块执行编码操作。当视频编码器20对树块执行编码操作时,视频编码器20可产生经译码树块。经译码树块可包括表示树块的经编码型式的数据。
当视频编码器20产生经译码切片时,视频编码器20可根据光栅扫描次序对切片中的树块执行编码操作(例如,编码)。举例来说,视频编码器20可按如下次序来对切片的树块进行编码:跨越切片中的树块的最顶行从左到右进行,接着跨越树块的下一较低行从左到右进行,以此类推,直到视频编码器20已对切片中的树块的每一者进行了编码为止。
作为根据光栅扫描次序编码树块的结果,可已编码在给定树块的上方和左边的树块,但尚未编码在给定树块的下方和右边的树块。因此,当对给定树块进行编码时,视频编码器20可能能够存取通过对给定树块的上方和左边的树块进行编码而产生的信息。然而,当编码给定树块时,视频编码器20可能不能够存取通过编码在给定树块的下方和右边的树块而产生的信息。
为了产生经译码树块,视频编码器20可对树块的视频块递归地执行四叉树分割以将视频块划分为越来越小的视频块。较小视频块中的每一者可与不同CU相关联。举例来说,视频编码器20可将树块的视频块分割成四个大小相等的子块、将所述子块中的一或多者分割成四个大小相等的子子块(sub-sub-block),以此类推。经分割的CU可为其视频块被分割成与其它CU相关联的视频块的CU。未分割CU可为其视频块未被分割成与其它CU相关联的视频块的CU。
位流中的一或多个语法元素可指示视频编码器20可分割树块的视频块的最大次数。CU的视频块在形状上可为正方形。CU的视频块的大小(例如,CU的大小)范围可从8×8像素直至最大64×64像素或更大的树块的视频块大小(例如,树块的大小)。
视频编码器20可根据z扫描次序对树块的每一CU执行编码运算(例如编码)。换句话说,视频编码器20可对左上CU、右上CU、左下CU和接着右下CU按所述次序进行编码。当视频编码器20对经分割的CU执行编码操作时,视频编码器20可根据z扫描次序对与经分割的CU的视频块的子块相关联的CU进行编码。换句话说,视频编码器20可对与左上子块相关联的CU、与右上子块相关联的CU、与左下子块相关联的CU,且接着与右下子块相关联的CU按所述顺序进行编码。
作为根据z扫描次序编码树块的CU的结果,可已编码在给定CU的上方、左上方、右上方、左边的左下方的CU。尚未对给定CU的右下方的CU进行编码。因此,当对给定CU进行编码时,视频编码器20可能能够存取通过对与给定CU相邻的一些CU进行编码而产生的信息。然而,当编码给定CU时,视频编码器20可能不能够存取通过编码邻接给定CU的其它CU而产生的信息。
当视频编码器20编码未经分割CU时,视频编码器20可产生所述CU的一或多个预测单元(PU)。CU的PU中的每一者可与CU的视频块内的不同视频块相关联。视频编码器20可产生用于CU的每一PU的经预测视频块。PU的经预测视频块可为样本块。视频编码器20可使用帧内预测或帧间预测来产生PU的经预测视频块。
当视频编码器20使用帧内预测来产生PU的经预测视频块时,视频编码器20可基于与PU相关联的图片的经解码样本来产生PU的经预测视频块。如果视频编码器20使用帧内预测来产生CU的PU的经预测视频块,那么CU为经帧内预测的CU。当视频编码器20使用帧间预测来产生PU的经预测视频块时,视频编码器20可基于不同于与PU相关联的图片的一或多个图片的经解码样本而产生PU的经预测视频块。如果视频编码器20使用帧间预测来产生CU的PU的经预测视频块,那么所述CU为经帧间预测CU。
此外,当视频编码器20使用帧间预测来产生PU的经预测视频块时,视频编码器20可产生PU的运动信息。PU的运动信息可指示PU的一或多个参考块。PU的每一参考块可为参考图片内的视频块。参考图片可为除与PU相关联的图片以外的图片。在一些情况下,PU的参考块也可被称作PU的“参考样本”。视频编码器20可基于PU的参考块产生所述PU的预测视频块。
在视频编码器20产生CU的一或多个PU的经预测视频块之后,视频编码器20可基于CU的PU的经预测视频块而产生CU的残余数据。CU的残余数据可指示用于CU的PU的预测视频块中的样本与CU的原始视频块之间的差。
此外,作为对未分割的CU执行编码操作的部分,视频编码器20可对CU的残余数据执行递归四叉树分割以将CU的残余数据分割成与CU的变换单元(TU)相关联的一或多个残余数据块(例如,残余视频块)。CU的每一TU可与不同残余视频块相关联。
视频编码器20可将一或多个变换应用到与TU相关联的残余视频块以产生与TU相关联的变换系数块(例如,变换系数块)。在概念上,变换系数块可为变换系数的二维(2D)矩阵。
在产生变换系数块之后,视频编码器20可对所述变换系数块执行量化处理。量化总体上是指对变换系数进行量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的过程。量化过程可减少与变换系数中的一些或全部相关联的位深度。例如,可在量化期间将n位变换系数向下舍入到m位变换系数,其中n大于m。
视频编码器20可使每一CU与量化参数(QP)值相关联。与CU相关联的QP值可确定视频编码器20如何对与CU相关联的变换系数块进行量化。视频编码器20可通过调整与CU相关联的QP值来调整应用于与CU相关联的变换系数块的量化的程度。
在视频编码器20量化变换系数块之后,视频编码器20可产生表示经量化变换系数块中的变换系数的语法元素集。视频编码器20可将例如上下文自适应二进制算术译码(CABAC)操作等熵编码操作应用于这些语法元素中的一些。也可使用例如上下文自适应可变长度译码(CAVLC)、概率区间分割熵(PIPE)译码或其它二进制算术译码的其它熵译码技术。
由视频编码器20产生的位流可包含一系列网络抽象层(NAL)单元。所述NAL单元中的每一者可为含有NAL单元中的数据类型的指示及含有数据的字节的语法结构。举例来说,NAL单元可含有表示视频参数集、序列参数集、图片参数集、经译码切片、SEI、接入单元分隔符、填充数据或另一类型的数据的数据。NAL单元中的数据可包含各种语法结构。
视频解码器30可接收由视频编码器20产生的位流。位流可包含由视频编码器20编码的视频数据的经译码表示。当视频解码器30接收到位流时,视频解码器30可对位流执行解析操作。当视频解码器30执行解析操作时,视频解码器30可从位流提取语法元素。视频解码器30可基于从位流提取的语法元素而重建视频数据的图片。基于语法元素而重建视频数据的过程一般可与由视频编码器20执行以产生语法元素的过程互逆。
在视频解码器30提取与CU相关联的语法元素之后,视频解码器30可基于所述语法元素产生用于CU的PU的经预测视频块。另外,视频解码器30可对与CU的TU相关联的变换系数块进行反量化。视频解码器30可对变换系数块执行反变换以重构与CU的TU相关联的残余视频块。在产生经预测视频块且重构残余视频块之后,视频解码器30可基于经预测视频块及残余视频块重构CU的视频块。以此方式,视频解码器30可基于位流中的语法元素重建CU的视频块。
视频编码器
图2是说明可实施根据本发明中描述的方面的技术的视频编码器20的实例的框图。视频编码器20可经配置以处理视频帧的单层(例如,针对HEVC)。此外,视频编码器20可经配置以执行本发明的技术中的任一者或全部。在一些实例中,本发明中描述的技术可在视频编码器20的各种组件之间共享。在一些实例中,另外或替代地,处理器(未图示)可经配置以执行本发明中描述的技术中的任一者或全部。
出于解释的目的,本发明在HEVC译码的上下文中描述视频编码器20。然而,本发明的技术可以适用于其它译码标准或方法。图2中所描绘的实例是针对单层编解码器。然而,在某些实施例中,可复制视频编码器20中的一些或全部以用于多层编解码器的处理。
视频编码器20可对视频切片内的视频块执行帧内译码及帧间译码。帧内译码依赖于空间预测来减小或移除给定视频帧或图片内的视频的空间冗余。帧间译码依靠时间预测来减少或移除视频序列的邻近帧或图片内的视频中的时间冗余。帧内模式(I模式)可指代若干基于空间的译码模式中的任一者。例如单向预测(P模式)或双向预测(B模式)等帧间模式可指代若干基于时间的译码模式中的任一者。
在图2的实例中,视频编码器20包含多个功能组件。视频编码器20的功能组件包含预测处理单元100、残余产生单元102、变换处理单元104、量化单元106、反量化单元108、反变换单元110、重构单元112、滤波器单元113、经解码图片缓冲器114和熵编码单元116。预测处理单元100包含帧间预测单元121、运动估计单元122、运动补偿单元124、帧内预测单元126及层间预测单元128。在其它实例中,视频编码器20可包含更多、更少或不同功能组件。此外,运动估计单元122与运动补偿单元124可高度集成,但出于解释的目的而在图2的实例中分开来表示。
视频编码器20可接收视频数据。视频编码器20可从各种源接收视频数据。举例来说,视频编码器20可自视频源18(例如,图1A或1B中所展示)或另一源接收视频数据。视频数据可表示一系列图片。为编码视频数据,视频编码器20可对图片中的每一者执行编码操作。作为对图片执行编码操作的一部分,视频编码器20可对图片的每一切片执行编码操作。作为对切片执行编码操作的部分,视频编码器20可对切片中的树块执行编码操作。
作为对树块执行编码操作的部分,预测处理单元100可对树块的视频块执行四叉树分割以将所述视频块划分成逐渐变小的视频块。较小视频块中的每一者可与不同CU相关联。举例来说,预测处理单元100可将树块的视频块分割成四个相等大小的子块,将所述子块中的一或多者分割成四个相等大小的子子块,等等。
与CU相关联的视频块的大小范围可从8×8样本高达最大64×64像素或更大的树块大小。在本发明中,“N×N”与“N乘N”可互换使用来指代在垂直和水平维度方面的视频块的样本尺寸,例如,16×16个样本或16乘16个样本。一般来说,16×16视频块在垂直方向上具有16个样本(y=16),且在水平方向上具有16个样本(x=16)。同样,N×N块一般在垂直方向上具有N个样本,且在水平方向上具有N个样本,其中N表示非负整数值。
另外,作为对树块执行编码操作的部分,预测处理单元100可产生用于所述树块的阶层式四叉树数据结构。例如,树块可对应于四叉树数据结构的根节点。如果预测处理单元100将树块的视频块分割成四个子块,那么根节点在四叉树数据结构中具有四个子级节点。所述子节点中的每一者对应于与子块中的一者相关联的CU。如果预测处理单元100将子块中的一者分割成四个子子块,那么对应于与子块相关联的CU的节点可具有四个子级节点,其中的每一者对应于与子子块中的一者相关联的CU。
四叉树数据结构的每一节点可含有用于对应树块或CU的语法数据(例如,语法元素)。例如,四分树中的节点可包含***标记,其指示对应于所述节点的CU的视频块是否被分割(例如,***)成四个子块。用于CU的语法元素可递归地界定,且可取决于所述CU的视频块是否***成子块。视频块未被分割的CU可对应于四叉树数据结构中的叶节点。经译码树块可包含基于对应树块的四分树数据结构的数据。
视频编码器20可对树块的每一未经分割的CU执行编码操作。当视频编码器20对未经分割的CU执行编码操作时,视频编码器20产生表示未经分割的CU的经编码表示的数据。
作为对CU执行编码操作的部分,预测处理单元100可在CU的一或多个PU间分割CU的视频块。视频编码器20和视频解码器30可支持各种PU大小。假定特定CU的大小为2N×2N,视频编码器20及视频解码器30可支持2N×2N或N×N的PU大小,及2N×2N、2N×N、N×2N、N×N、2N×nU、nL×2N、nR×2N或类似的对称PU大小的帧间预测。视频编码器20和视频解码器30还可支持用于2N×nU、2N×nD、nL×2N和nR×2N的PU大小的不对称分割。在一些实例中,预测处理单元100可执行几何分割以沿并不按直角与CU的视频块的侧会合的边界来在CU的PU间分割CU的视频块。
帧间预测单元121可对CU的每一PU执行帧间预测。帧间预测可提供时间压缩。为了对PU执行帧间预测,运动估计单元122可产生PU的运动信息。运动补偿单元124可基于运动信息和除与CU相关联的图片(例如,参考图片)以外的图片的经解码样本而产生PU的经预测视频块。在本发明中,由运动补偿单元124产生的经预测视频块可称作经帧间预测视频块。
切片可为I切片、P切片,或B切片。运动估计单元122和运动补偿单元124可取决于PU处于I切片、P切片还是B切片中而对CU的PU执行不同操作。在I切片中,所有PU都是经帧内预测。因此,如果PU在I切片中,那么运动估计单元122及运动补偿单元124不对PU执行帧间预测。
如果PU在P切片中,那么含有所述PU的图片与被称作“列表0”的参考图片列表相关联。列表0中的参考图片中的每一者含有可用于其它图片的帧间预测的样本。当运动估计单元122关于P切片中的PU执行运动估计操作时,运动估计单元122可搜索列表0中的参考图片以找出PU的参考块。PU的参考块可为最紧密对应于PU的视频块中的样本的一组样本,例如样本块。运动估计单元122可使用多种度量来确定参考图片中的一组样本对应于PU的视频块中的样本的紧密程度。例如,运动估计单元122可通过绝对差总和(SAD)、平方差总和(SSD)或其它差异度量来确定参考图片中的一组样本对应于PU的视频块中的样本的接近程度。
在识别出P切片中的PU的参考块之后,运动估计单元122可产生指示列表0中含有参考块的参考图片的参考索引,以及指示PU与参考块之间的空间位移的运动向量。在各种实例中,运动估计单元122可以不同精确度产生运动向量。举例来说,运动估计单元122可以四分之一样本精确度、八分之一样本精确度或其它分数样本精确度产生运动向量。在分数样本精确度的情况下,参考块值可从参考图片中的整数位置样本值内插。运动估计单元122可将参考索引及运动向量输出为PU的运动信息。运动补偿单元124可基于由PU的运动信息识别的参考块而产生PU的经预测视频块。
如果PU处于B切片中,那么含有PU的图片可与被称作“列表0”和“列表1”的两个参考图片列表相关联。在一些实例中,含有B切片的图片可与为列表0与列表1的组合的列表组合相关联。
此外,如果PU在B切片中,那么运动估计单元122可对PU执行单向预测或双向预测。当运动估计单元122对PU执行单向预测时,运动估计单元122可搜索列表0或列表1中的参考图片以找出用于所述PU的参考块。运动估计单元122可随后产生指示列表0或列表1中的含有参考块的参考图片的参考索引和指示PU与参考块之间的空间位移的运动向量。运动估计单元122可输出参考索引、预测方向指示符和运动向量作为所述PU的运动信息。预测方向指示符可指示参考索引指示列表0还是列表1中的参考图片。运动补偿单元124可基于由PU的运动信息指示的参考块来产生PU的经预测视频块。
当运动估计单元122针对PU执行双向预测时,运动估计单元122可搜索列表0中的参考图片以找到用于所述PU的参考块,且还可搜索列表1中的参考图片以找到用于所述PU的另一参考块。运动估计单元122可随后产生指示列表0和列表1中的含有参考块的参考图片的参考索引和指示参考块与PU之间的空间位移的运动向量。运动估计单元122可输出PU的参考索引及运动向量作为PU的运动信息。运动补偿单元124可基于由PU的运动信息指示的参考块而产生PU的经预测视频块。
在一些情况下,运动估计单元122不将PU的运动信息的完整集合输出到熵编码单元116。实际上,运动估计单元122可参考另一PU的运动信息用信号表示PU的运动信息。举例来说,运动估计单元122可确定PU的运动信息足够类似于相邻PU的运动信息。在此实例中,运动估计单元122可在与PU相关联的语法结构中指示一值,所述值向视频解码器30指示PU具有与相邻PU相同的运动信息。在另一实例中,运动估计单元122可在与PU相关联的语法结构中识别相邻PU和运动向量差(MVD)。运动向量差指示PU的运动向量与所指示的相邻PU的运动向量之间的差。视频解码器30可使用所指示的相邻PU的运动向量和运动向量差来确定PU的运动向量。通过在用信号表示第二PU的运动信息时参考第一PU的运动信息,视频编码器20可能能够使用较少位用信号表示第二PU的运动信息。
作为对CU执行编码操作的部分,帧内预测单元126可对CU的PU执行帧内预测。帧内预测可提供空间压缩。当帧内预测单元126对PU执行帧内预测时,帧内预测单元126可基于同一图片中的其它PU的经解码样本来产生用于PU的预测数据。用于PU的预测数据可包含经预测视频块和各种语法元素。帧内预测单元126可对I切片、P切片和B切片中的PU执行帧内预测。
为了对PU执行帧内预测,帧内预测单元126可使用多个帧内预测模式以产生用于PU的预测数据的多个集合。当帧内预测单元126使用帧内预测模式来产生PU的预测数据的集合时,帧内预测单元126可在与帧内预测模式相关联的方向和/或梯度上跨越PU的视频块从相邻PU的视频块扩展样本。相邻PU可在所述PU的上方、右上方、左上方或左侧,假定对于PU、CU和树块采用从左到右、从上到下的编码次序。帧内预测单元126可取决于PU的大小而使用各种数目个帧内预测模式,例如33个定向帧内预测模式。
预测处理单元100可从由运动补偿单元124针对PU产生的预测数据或由帧内预测单元126针对PU产生的预测数据当中选择用于PU的预测数据。在一些实例中,预测处理单元100基于预测数据集合的速率/失真度量而选择PU的预测数据。
如果预测处理单元100选择由帧内预测单元126产生的预测数据,那么预测处理单元100可用信号表示用以产生用于PU的预测数据的帧内预测模式,例如,选定帧内预测模式。预测处理单元100可以各种方式用信号表示所选帧内预测模式。举例来说,有可能所选帧内预测模式与相邻PU的帧内预测模式相同。换句话说,相邻PU的帧内预测模式可为用于当前PU的最可能模式。因此,预测处理单元100可产生用以指示选定帧内预测模式与相邻PU的帧内预测模式相同的语法元素。
如上文所论述,视频编码器20可包含层间预测单元128。层间预测单元128经配置以使用可用于SHVC中的一或多个不同层(例如,基础层或参考层)预测当前块(例如,EL中的当前块)。此预测可称作层间预测。层间预测单元128利用预测方法以减少层间冗余,进而改进译码效率且降低计算资源要求。层间预测的一些实例可包含层间帧内预测、层间运动预测及层间残余预测。层间帧内预测使用基础层中的协同定位块的重建来预测增强层中的当前块。层间运动预测使用基础层的运动信息来预测增强层中的运动。层间残余预测使用基础层的残余来预测增强层的残余。
在预测处理单元100选择用于CU的PU的预测数据之后,残余产生单元102可通过从CU的视频块减去(例如,由减号指示)CU的PU的经预测视频块而产生用于CU的残余数据。CU的残余数据可包含对应于CU的视频块中的样本的不同样本分量的2D残余视频块。举例来说,残余数据可包含对应于CU的PU的经预测视频块中的样本的明度分量与CU的原始视频块中的样本的明度分量之间的差的残余视频块。另外,CU的残余数据可包含对应于CU的PU的预测视频块中的样本的色度分量与CU的原始视频块中的样本的色度分量之间的差的残余视频块。
预测处理单元100可执行四叉树分割以将CU的残余视频块分割成子块。每一未经划分的残余视频块可与CU的不同TU相关联。与CU的TU相关联的残余视频块的大小及位置可基于或可不基于与CU的PU相关联的视频块的大小及位置。被称为“残余四叉树”(RQT)的四叉树结构可包含与残余视频块中的每一者相关联的节点。CU的TU可以对应于RQT的叶节点。
变换处理单元104可通过将一或多个变换应用于与CU的每一TU相关联的残余视频块而产生用于所述TU的一或多个变换系数块。变换系数块中的每一者可为变换系数的2D矩阵。变换处理单元104可将各种变换应用于与TU相关联的残余视频块。举例来说,变换处理单元104可将离散余弦变换(DCT)、方向性变换或概念上类似的变换应用到与TU相关联的残余视频块。
在变换处理单元104产生与TU相关联的变换系数块之后,量化单元106可量化所述变换系数块中的变换系数。量化单元106可基于与CU相关联的QP值而对与CU的TU相关联的变换系数块进行量化。
视频编码器20可以各种方式使QP值与CU相关联。例如,视频编码器20可对与CU相关联的树块执行速率失真分析。在速率-失真分析中,视频编码器20可通过对树块执行多次编码操作而产生树块的多个经译码表示。当视频编码器20产生树块的不同经编码表示时,视频编码器20可使不同QP值与CU相关联。当给定QP值与具有最低位速率和失真度量的树块的经译码表示中的CU相关联时,视频编码器20可用信号表示给定QP值与CU相关联。
反量化单元108和反变换单元110可分别将反量化及反变换应用于变换系数块以从变换系数块重构残余视频块。重构单元112可将经重构的残余视频块添加到来自由预测处理单元100产生的一或多个预测视频块的对应样本,以产生与TU相关联的经重构视频块。通过以此方式重构用于CU的每一TU的视频块,视频编码器20可重构CU的视频块。
在重构单元112重构CU的视频块之后,滤波器单元113可执行解块操作以减小与所述CU相关联的视频块中的成块假象。在执行一或多个解块操作之后,滤波器单元113可将CU的经重构视频块存储在经解码图片缓冲器114中。运动估计单元122和运动补偿单元124可使用含有经重构视频块的参考图片来对后续图片的PU执行帧间预测。另外,帧内预测单元126可使用经解码图片缓冲器114中的经重构视频块对处于与CU相同图片中的其它PU执行帧内预测。
熵编码单元116可从视频编码器20的其它功能组件接收数据。举例来说,熵编码单元116可从量化单元106接收变换系数块且可从预测处理单元100接收语法元素。当熵编码单元116接收到数据时,熵编码单元116可执行一或多个熵编码操作以产生经熵编码数据。举例来说,视频编码器20可对数据执行CAVLC操作、CABAC操作、可变到可变(V2V)长度译码操作、基于语法的上下文自适应二进制算术译码(SBAC)操作、概率区间分割熵(PIPE)译码操作或另一类型的熵编码操作。熵编码单元116可输出包含经熵编码数据的位流。
作为对数据执行熵编码操作的一部分,熵编码单元116可选择上下文模型。如果熵编码单元116正执行CABAC操作,那么上下文模型可指示特定二进制数具有特定值的概率的估计。在CABAC的情况下,术语“二进数(bin)”用以指语法元素的二进制化版本的位。
视频解码器
图3为说明可实施本发明中描述的方面的技术的视频解码器30的实例的框图。视频解码器30可经配置以处理视频帧的单层(例如针对HEVC)。此外,视频解码器30可经配置以执行本发明的技术中的任一者或全部。在一些实例中,本发明中描述的技术可在视频解码器30的各种组件之间共享。在一些实例中,另外或替代地,处理器(未图示)可经配置以执行本发明中描述的技术中的任一者或全部。
出于解释的目的,本发明在HEVC译码的上下文中描述视频解码器30。然而,本发明的技术可以适用于其它译码标准或方法。图3中所描绘的实例是针对单层编解码器。然而,在某些实施方案中,可复制视频编码器30中的一些或全部以用于多层编解码器的处理。
在图3的实例中,视频解码器30包含多个功能组件。视频解码器30的功能组件包含熵解码单元150、预测处理单元152、反量化单元154、反变换单元156、重建单元158、滤波器单元159和经解码图片缓冲器160。预测处理单元152包含运动补偿单元162、帧内预测单元164和层间预测单元166。在一些实例中,视频解码器30可执行一般与关于图2的视频编码器20描述的编码遍次互逆的解码遍次。在其它实例中,视频解码器30可包含较多、较少或不同的功能组件。
视频解码器30可接收包括经编码视频数据的位流。所述位流可包含多个语法元素。当视频解码器30接收到位流时,熵解码单元150可对所述位流执行解析操作。对位流执行解析操作的结果是,熵解码单元150可从所述位流提取语法元素。作为执行解析操作的一部分,熵解码单元150可对位流中的经熵编码语法元素进行熵解码。预测处理单元152、反量化单元154、反变换处理单元156、重构单元158及滤波器单元159可执行重构操作,重构操作基于从位流提取的语法元素产生经解码视频数据。
如上文所论述,位流可包括一系列NAL单元。位流的NAL单元可包含视频参数集NAL单元、序列参数集NAL单元、图片参数集NAL单元、SEI NAL单元等等。作为对位流执行解析操作的一部分,熵解码单元150可执行解析操作,所述解析操作从序列参数集NAL单元提取且熵解码序列参数集、从图片参数集NAL单元提取且熵解码图片参数集、从SEI NAL单元提取且熵解码SEI数据等等。
此外,位流的NAL单元可包含经译码切片NAL单元。作为对位流执行解析操作的部分,熵解码单元150可执行解析操作,所述解析操作从经译码切片NAL单元提取且熵解码经译码切片。经译码切片中的每一者可包含切片标头以及切片数据。切片标头可以含有关于切片的语法元素。切片标头中的语法元素可包含识别与含有所述切片的图片相关联的图片参数集的语法元素。熵解码单元150可对经译码切片标头中的语法元素执行熵解码操作(例如,CABAC解码操作),以恢复切片标头。
作为从经译码切片NAL单元提取切片数据的部分,熵解码单元150可执行从切片数据中的经译码CU提取语法元素的解析操作。所提取的语法元素可包含与变换系数块相关联的语法元素。熵解码单元150可接着对语法元素中的一些执行CABAC解码操作。
在熵解码单元150对未分割的CU执行解析操作之后,视频解码器30可对未分割的CU执行重构操作。为了对未分割CU执行重构操作,视频解码器30可对CU的每一TU执行重构操作。通过对CU的每一TU执行重构操作,视频解码器30可重构与CU相关联的残余视频块。
作为对TU执行重构操作的一部分,反量化单元154可对与TU相关联的变换系数块进行反量化(例如,解量化)。反量化单元154可以类似于针对HEVC所提议或由H.264解码标准定义的反量化过程的方式对变换系数块进行反量化。反量化单元154可使用由视频编码器20针对变换系数块的CU计算的量化参数QP来确定量化程度,且同样地,确定反量化单元154应用的反量化的程度。
在反量化单元154对变换系数块进行反量化之后,反变换单元156可产生与变换系数块相关联的TU的残余视频块。反变换单元156可将反变换应用到变换系数块以便产生所述TU的残余视频块。举例来说,反变换单元156可将反DCT、反整数变换、反卡忽南-拉维(Karhunen-Loeve)变换(KLT)、反旋转变换、反定向变换或另一反变换应用于变换系数块。在一些实例中,反变换单元156可基于来自视频编码器20的信令而确定适用于变换系数块的反变换。在这些实例中,反变换单元156可基于在用于与变换系数块相关联的树块的四叉树的根节点处的用信号表示的变换来确定反变换。在其它实例中,反变换单元156可从例如块大小、译码模式或类似者等一或多个译码特性推断反变换。在一些实例中,反变换单元156可应用级联的反变换。
在一些实例中,运动补偿单元162可通过基于内插滤波器执行内插而精炼PU的预测视频块。用于将用于以子样本精确度进行运动补偿的内插滤波器的识别符可包含在语法元素中。运动补偿单元162可使用由视频编码器20在产生PU的经预测视频块期间使用的相同内插滤波器来计算参考块的子整数样本的内插值。运动补偿单元162可根据接收到的语法信息确定由视频编码器20使用的内插滤波器且使用所述内插滤波器来产生经预测视频块。
如果PU是使用帧内预测编码,那么帧内预测单元164可执行帧内预测以产生用于PU的经预测视频块。举例来说,帧内预测单元164可基于位流中的语法元素确定用于PU的帧内预测模式。位流可包含帧内预测模块164可用以确定PU的帧内预测模式的语法元素。
在一些情况下,语法元素可指示帧内预测单元164将使用另一PU的帧内预测模式来确定当前PU的帧内预测模式。举例来说,可能有可能当前PU的帧内预测模式与相邻PU的帧内预测模式相同。换句话说,相邻PU的帧内预测模式可为用于当前PU的最可能模式。因此,在此实例中,位流可包含小语法元素,所述小语法元素指示PU的帧内预测模式与相邻PU的帧内预测模式相同。帧内预测单元164可随后使用帧内预测模式基于在空间上相邻的PU的视频块而产生用于PU的预测数据(例如,经预测样本)。
如上文所论述,视频解码器30还可包含层间预测单元166。层间预测单元166经配置以使用可用于SHVC(例如,基础或参考层)中的一或多个不同层来预测当前块(例如,增强层中的当前块)。此预测可称作层间预测。层间预测单元166利用预测方法减少层间冗余,借此改进译码效率且降低计算资源要求。层间预测的一些实例可包含层间帧内预测、层间运动预测及层间残余预测。层间帧内预测使用基础层中的协同定位块的重建来预测增强层中的当前块。层间运动预测使用基础层的运动信息来预测增强层中的运动信息。层间残余预测使用基础层的残余来预测增强层的残余。下文更详细地论述层间预测方案中的每一者。
重建单元158可使用与CU的TU相关联的残余视频块以及CU的PU的经预测测视频块(例如,帧内预测数据或帧间预测数据,如果适用)来重建CU的视频块。因此,视频解码器30可基于位流中的语法元素而产生经预测视频块及残余视频块,且可基于经预测视频块及残余视频块而产生视频块。
在重建单元158重建CU的视频块之后,滤波器单元159可执行解块操作以减少与CU相关联的块假象。在滤波器单元159执行解块操作以减少与CU相关联的块假影之后,视频解码器30可将CU的视频块存储在经解码图片缓冲器160中。经解码图片缓冲器160可提供参考图片以用于后续运动补偿、帧内预测和在例如图1A或1B的显示装置32等显示装置上的呈现。举例来说,视频解码器30可基于经解码图片缓冲器160中的视频块对其它CU的PU执行帧内预测或帧间预测操作。
调色板译码模式
与主要移除不同译码单元之间的冗余的常规帧内和帧间预测相反,调色板译码以译码单元内的重复像素值/图案的冗余为目标。在调色板译码模式中,首先用信号表示被称作调色板的将像素值映射到表索引(也被称为调色板索引)中的查找表。在一些实施方案中,调色板具有指定的最大大小(例如,像素值32)。调色板包含由表示颜色分量(例如,RGB、YUV等)值的表索引编号的条目或可用作块样本的预测子或用作最终经重建块样本的强度。在一些实施方案中,使用三个游程模式(即,‘左方复制模式’(或游程模式)、‘上方复制模式’和‘逸出模式’(或像素模式))来译码调色板块中的样本。
对于调色板块中在左方复制模式中译码的位置,首先用信号表示调色板索引,随后用信号表示“run_length”(或“palette_run”)(例如,M)。不需要针对调色板块中的当前位置和后续M个位置用信号表示额外信息,这是因为调色板块中的当前位置和后续M个位置具有针对当前位置用信号表示的相同调色板索引。调色板索引(例如,i)由所有三个颜色分量共享,这意味着经重建像素值为(Y,U,V)=(paletteY[i],paletteU[i],paletteV[i])(假设颜色空间为YUV)。
对于调色板中在上方复制模式中译码的位置,用信号表示值“run_length”(或“copy_run”)(例如,N)以指示对于调色板块中的后续N个位置(总计N+1个位置,包含当前位置),调色板索引等于调色板块中的正上方的位置的调色板索引。
对于调色板块中在逸出模式(或像素模式)中译码的位置,用信号表示对应于调色板块中的当前位置的像素值。可使用逸出标记(例如,标记值1指示当前位置在逸出模式中译码)或调色板索引(例如,不对应于调色板条目中的任一者的索引值或大于或等于调色板大小的索引值)来用信号表示逸出模式。
调色板位流
在现有实施方案中,将调色板位流(例如,包含在调色板译码模式中译码的译码单元的位流)组织如下:
palette_entries
palette_index_map
表1.调色板模式位流
palette_entries包含各自映射到表索引的一或多个像素值。举例来说,如果给定译码单元包含三个独特像素值(例如,红色、绿色和蓝色),那么调色板条目可包含三个条目,(0,红色)、(1,绿色)和(2,蓝色)。palette_index_map包含使用调色板条目译码的一或多个调色板块,其中调色板表索引(例如,上文实例中的0、1和2)用于指示调色板块中的像素值。
图4说明输入CU 410、索引块420、逸出像素430和调色板440的实例配置。如图4中所展示,输入CU 410含有三个独特像素值:白色、灰色和黑色。基于白色和灰色的频率,仅白色和灰色像素值包含于调色板440中,其中索引值0与白色像素值相关联且索引值1与灰色像素值相关联。将未包含在调色板中的黑色像素值标记为逸出像素430,其独立于调色板经译码。如图4中所展示,索引块420包含块中的每一位置的索引值。如同在逸出模式中那样而译码索引块420中的两个位置(例如,无需参考调色板索引0或1)。尽管在图4的实例中使用仅单一逸出像素和仅两个调色板条目,本申请案的实施例并不因此受限,且可使用任何数目个逸出像素和调色板条目。在一些实施例中,调色板大小限于32个条目,且不与32个条目中的一者相关联的任何像素值成为逸出像素。可将最大调色板大小设定成任何数字。此外,CU大小不限于8个像素乘8个像素,且可为16×16或任何其它大小。
调色板位流的实例语法
在一些实施方案中,在调色板索引映射中,在调色板译码模式中译码的块在位流中可能采取以下形式:
表2.palette_index_map位流(默认设定)
在表2中说明的实例中,取决于run_mode_flag的值,在位流中用信号表示不同语法元素。如果游程模式标记指示调色板块中的当前位置在上方复制模式中译码,那么游程主体包含游程长度值(上文“run_length”的第一个例)。如果游程模式标记指示调色板块中的当前位置在‘左方复制’模式中译码,那么游程主体包含索引值(“索引”),后接游程长度值(上文“run_length”的第二个例),除非索引值对应于逸出索引,在此情况下用信号表示经量化逸出像素值(“escape_pixel_value”)。
在替代实施方案中,使用显式逸出标记。更确切地说,调色板索引映射在位流中可能采取以下形式:
表3.palette_index_map位流(替代设定)
在表3中说明的实例中,取决于escape_flag的值,在位流中用信号表示不同语法元素。如果逸出标记具有值1,那么游程主体包含经量化逸出像素值。如果逸出标记具有值0,那么用信号表示游程模式标记以区分‘上方复制’和‘左方复制’模式。如果游程模式标记指示调色板块中的当前位置在‘左方复制’模式中译码,那么位流包含索引值,后接游程长度值。另外,在位流中仅用信号表示游程长度值。
图5是说明根据本发明的各方面的用于在位流中译码非自然视频数据的方法500的流程图。可由视频编码器(例如,视频编码器20)、视频解码器(例如,视频解码器30)或任何其它组件执行图5中所说明的步骤。为方便起见,将方法500描述为由视频译码器(还简称为译码器)执行,所述视频译码器可为视频编码器20、视频解码器30或另一组件。
方法500开始于框501。在框505处,译码器基于与CU相关联的调色板处理具有多个像素的译码单元(CU)。如上文所描述,编码器可基于CU的内容导出调色板且在位流中用信号表示调色板,使得解码器可使用与CU相关联的调色板处理CU。调色板可包含各自与索引值和像素值相关联的多个调色板条目。像素值可与CU中的像素中的一者相关联。在一些实施例中,每一调色板条目与在CU中发现的独特像素值相关联。框505可包括参考图6至8所描述的一或多个步骤及/或方法。所述方法在框510处结束。
分组旁路二进数
在H.264、HEVC和许多其它现代视频译码标准中,对于语法元素,在二进制化之后,将0/1二进数位流供应到上下文适应性二进制算术译码器(CABAC)中,其中概率模型(称为“上下文”)经自适应地选择及更新以追踪非静态概率分布。作为特殊情况,可能不更新概率模型以改进熵译码器的吞吐量。使用这种简化方法译码而无需上下文更新的二进数被称作旁路二进数。
在表2和3的实例中,位流中可存在一些冗余。可通过跳过在满足某些条件时用信号表示的某些语法元素来移除这些冗余。另外,一些语法元素可引入解析相关性。举例来说,在表2中,由于解码器可推断游程模式为索引复制模式(例如,左方复制模式),所以当当前像素在块中的第一线中时可能不需要用信号表示语法元素run_mode_flag。另外,在表2的实例中,解码器首先对索引值进行解码,且取决于经解码索引值,解码器决定所述模式是索引复制模式还是逸出模式(例如,基于索引值是否表示逸出索引值)。如果解码器确定模式为索引复制模式,那么解码器解析器继续解析游程长度。如果解码器确定模式为逸出模式,那么解码器解析器可继续解析逸出值及/或游程长度。由于解析器通常以比解码器高得多的速度操作,解码引擎与解析引擎之间的这种相关性可能影响解析器的吞吐量(例如,由于解析引擎可能需要等待解码引擎对经解析位进行解码)。因此,需要一种处理在调色板译码模式中译码的块的改进方法。在本申请案中,描述用于组织位流中的调色板元素以避免或减少调色板模式中的解析相关性的若干新颖方法。
实施例#1:在调色板模式块的末端处安放经量化逸出像素值
在一些实施例中,在位流中的调色板模式块的末端处用信号表示所有经量化逸出像素值。在此类实施例中,可在(索引、游程长度)译码之后应用熵译码器复位。举例来说,在译码块中的所有可能的(索引、游程长度)对之后,将算术译码引擎的ivlCurrRange变量(例如,指定当前算术译码间隔的范围的变量)设定成256。通过这一方法,解码器可从位流读取位且如同其无需调用CABAC译码器那样对其进行处理。在没有将变量复位为256的这一程序的情况下,虽然可能不需要更新上下文,但解码器可能仍需要调用CABAC译码器以做出二进制决策。因此,可在解析及/或解码所有(索引、游程长度)对之后并行地解析经量化逸出像素值。在一个实施例中,如果使用固定长度码译码逸出像素,那么可在解析游程索引块之后并行地解析和解码逸出像素。
在另一实施例中,如果使用截断二进制码译码逸出像素,那么逸出像素的每一颜色分量可取决于其经量化强度耗费‘k’或‘k+1’个位。举例来说,在截断二进制编码中,对于具有值X的语法元素,假设其最大可能值Max为已知的且n=Max+1且k=floor(log2(n)),使得2k≤n<2k+1,且假设u=2k+1-n,如果X<u,那么通过具有长度k的X的二进制表示指定截断二进制码字。另外,通过具有长度k+1的X+u的二进制表示指定截断二进制码字。在此类实施例中,可将用于当前块中的所有逸出像素的每一颜色分量的最前‘k’个位分组在一起,后跟着任选的第k+1个位。通过这种组织,可并行地解析和解码所有逸出像素的每一颜色分量的最前‘k’个位。某种相关性可仍存在于解析任选的第k+1个位中。
图6是说明根据本发明的各方面的用于在位流中解码非自然视频数据的方法600的流程图。可由视频解码器(例如,视频解码器30)或任何其它组件执行图6中所说明的步骤。为方便起见,将方法600描述为由视频译码器(也简称为译码器)执行,所述视频译码器可为视频解码器30或另一组件。
方法600开始于框601。在框605处,译码器解析与提供于位流中的CU相关联的调色板。调色板可包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目。调色板的实例在图4中说明。
在框610处,译码器解析与CU相关联的一或多个游程长度。如上文所描述,每一游程长度指示始于且包含CU中的当前位置的连续位置的数目,所述连续位置与左方复制模式或上方复制模式相关联。
在框615处,译码器解析与CU相关联的一或多个索引值。如上文所描述,每一索引值指示调色板中与CU中的当前位置相关联的像素值。在图4的实例中,索引值0指示CU中的当前位置具有白色像素值,且索引值1指示CU中的当前位置具有灰色像素值。
在框620处,译码器解析与CU相关联的一或多个逸出像素值。如上文所描述,每一逸出像素值指示不在与CU相关联的调色板中的像素值。在图4的实例中,CU中具有黑色像素值的两个位置在逸出模式中译码,且译码器将位流中的黑色像素值用信号表示为逸出像素值。在一些实施例中,从位流中的连续位置(例如,在与CU相关联的位流的部分的末端处)解析逸出像素值。举例来说,逸出像素值的连续位置出现在与CU相关联的所有游程长度和索引值之后的位流中。在此类实施例中,在已解析所有游程长度和索引值之后,可并行地处理(例如,解析)逸出像素值。在框625处,译码器基于经解析调色板、经解析游程长度、经解析索引值和经解析逸出值对CU进行解码。所述方法在框630处结束。
在方法600中,可移除(例如,不执行)图6中展示的框中的一或多者及/或可交换执行方法的次序。举例来说,框610和框615可一起执行以解析与CU相关联的每一游程长度和索引值对。在一些实施例中,可将额外框添加到方法600。因此,本发明的实施例不限于图6展示的实例或不受图6中展示的实例限制,且可在不脱离本发明的精神的情况下实施其它变化。
实施例#2:在调色板模式块的末端处安放索引值
在一些实施例中,在位流中的调色板模式块的末端处用信号表示所有索引值。在一个实施例中,在位流中的调色板模式块的末端处用信号表示所有经量化逸出值,随后用信号表示所有出现的索引值的群组。在另一实施例中,仅在位流中的经量化逸出值之前用信号表示所有索引值。
可在游程长度译码之后应用熵译码器复位。举例来说,在译码块中的所有可能的游程长度对之后,将算术译码引擎的ivlCurrRange变量(例如,指定当前算术译码间隔的范围的变量)设定成256。因此,可在解析及/或解码调色板块中的所有游程长度之后并行地解析索引值及/或逸出值。在一个实施例中,如果使用固定长度码译码索引值,那么可在解析游程长度块之后并行地解析和解码索引值。
在另一实施例中,如果使用截断二进制码译码索引值,那么索引可取决于其值耗费‘k’或‘k+1’个位。在此类实施例中,可将当前块中的所有索引值及/或逸出像素的每一颜色分量最初‘k’个位分组在一起,后接任选的第k+1个位。通过这种组织,可并行地解析和解码当前块中的所有索引值及/或逸出值的最前‘k’个位。某种相关性可仍存在于解析任选的第k+1个位中。
图7是说明根据本发明的各方面的用于在位流中解码非自然视频数据的方法700的流程图。可由视频解码器(例如,视频解码器30)或任何其它组件执行图7中所说明的步骤。为方便起见,将方法700描述为由视频译码器(也简称为译码器)执行,所述视频译码器可为视频解码器30或另一组件。
方法700开始于块701处。在框705处,译码器解析与提供于位流中的CU相关联的调色板。调色板可包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目。调色板的实例在图4中说明。
在框710处,译码器解析与CU相关联的一或多个游程长度。如上文所描述,每一游程长度指示始于且包含CU中的当前位置的连续位置的数目,所述连续位置与左方复制模式或上方复制模式相关联。
在框715处,译码器解析与CU相关联的一或多个索引值。如上文所描述,每一索引值指示调色板中与CU中的当前位置相关联的像素值。在图4的实例中,索引值0指示CU中的当前位置具有白色像素值,且索引值1指示CU中的当前位置具有灰色像素值。在图7的实例中,可从位流中的连续位置(例如,在与CU相关联的所有游程长度之后)解析索引值。在此类实施例中,在已解析所有游程长度之后,可并行地处理(例如,解析)索引值。举例来说,可紧接在位流中的逸出像素值之前提供索引值。
在框720处,译码器解析与CU相关联的一或多个逸出像素值。如上文所描述,每一逸出像素值指示不在与CU相关联的调色板中的像素值。在图4的实例中,CU中具有黑色像素值的两个位置在逸出模式中译码,且译码器将位流中的黑色像素值用信号表示为逸出像素值。在一些实施例中,可从位流中的连续位置(例如,在与CU相关联的位流的部分的末端处)解析逸出像素值。举例来说,逸出像素值的连续位置可出现在与CU相关联的所有游程长度和索引值之后的位流中。在此类实施例中,在已解析所有游程长度和索引值之后,可并行地处理(例如,解析)逸出像素值。在框725处,译码器基于经解析调色板、经解析游程长度、经解析索引值和经解析逸出值对CU进行解码。所述方法在框730处结束。
在方法700中,可移除(例如,不执行)图7中展示的框中的一或多者及/或可交换执行方法的次序。在一些实施例中,可将额外框添加到方法700。因此,本发明的实施例不限于图7展示的实例或不受图7中展示的实例限制,且可在不脱离本发明的精神的情况下实施其它变化。
实施例#3:使用偏移以指定索引值和逸出像素值的位置
在一些实施例中,可在位流中的调色板模式块的起点处用信号表示两个偏移,其中所述两个偏移分别指定(例如)由S0和S1表示的上文所论述的索引值群组和逸出像素值群组的起始位置。在索引值群组在逸出像素值群组前方的情况下,可针对第二偏移用信号表示两个起始位置之间的仅增量值(例如,可用信号表示偏移S0和S1-S0)。可使用各种熵译码方法(例如,截断莱斯、指数哥伦布、截断二进制、固定长度、一元、截断一元等)用信号表示两个偏移。在一些实施例中,也可用信号表示指示调色板模式块的末端的偏移值S2。替代地,可用信号表示第二偏移和S2之间的增量值(例如,S2-S1)。
分组旁路二进数的实施方案
根据上文所描述的实施例#1和#3,可如下修改palette_index_map位流:
表4.修改palette_index_map位流的实例
根据上文所描述的实施例#1、#2和#3,可如下修改palette_index_map位流:
表5.实例palette_index_map位流
索引冗余检验
在一些实施例中,当译码索引值时,可应用冗余检验。举例来说,如果光栅扫描次序中的前一相邻位置(表示为位置‘x-1’)是左方复制游程模式的末端,那么当前索引值不能与其前一相邻位置的索引值相同。换句话说,如果位置‘x-1’是有效的(例如,在当前块内或在当前块外但(例如)通过边界填充具有确定值)且是左方复制游程的末端,那么位置‘x’的索引值不能等于位置‘x-1’处的索引值(第1种情况)。原因是如果两个索引值相同,那么其应已合并到更长的左方复制游程中。在另一个实例中,如果光栅扫描次序中的前一相邻位置是上方复制游程模式的末端,及/或如果满足当前位置的上方相邻者不是逸出像素的额外限制,那么当前值不能与其顶部相邻者的索引值相同。换句话说,如果位置‘x-1’是有效的且是上方复制游程的末端,及/或如果满足位置‘x’上方的像素值不是逸出像素的额外限制,那么位置‘x’的索引值不能等于其上方相邻者的索引值(第2种情况)。原因是如果两个索引值相同,那么其应已合并到更长的上方复制游程中。因此,这些实例假设编码器遵循‘更长的可能游程’原则。在这些情况中的任一者中,范围(例如,上文所描述的Max值)可减少一且可实现位节省。
然而,对于第1种情况,位置‘x’处的索引值的解码取决于位置‘x-1’处的索引值的重建(例如,因为解码器需要知晓位置‘x-1’处的索引值以确定位置‘x’处的索引值不能取的值)。然而,位置‘x-1’的索引值在位置‘x’处的索引值正经解码的时间处可能并非现成的。因此,这一相关性可能在解码过程中造成一定延迟。为了移除这一相关性,在一些实施例中,可停用对第1种情况的条件检验。在此类实施例中的一些中,可仍执行对第2种情况的条件检验(例如,因为在当前像素上方的位置的索引值更有可能为可用的)。在此类实施例中,完全停用对第1种情况的条件检验。替代地,可仅针对特定情况停用对第1种情况的条件检验。举例来说,可仅在启用‘受限游程’特征时停用对第1种情况的条件检验,其中凭以译码游程长度的最大调色板索引值(或凭以不译码游程长度的最小调色板索引值)经指示。
在第2种情况下,当逸出像素进入到左方复制或上方复制游程中时,可移除对于位置‘x’上方的像素是否为逸出像素的检验。举例来说,逸出像素可被分配不在调色板中的一或多个索引值且具有其自身游程(例如,与调色板中的像素值类似)。类似地,当逸出像素进入到左方复制或上方复制游程中时,可移除对于位置‘x’左方的像素是否为逸出像素的检验(例如,当给定实施方案不允许从左方或从上方复制逸出像素时可能需要在解析位置x处的当前索引值之前执行的步骤)。
图8是说明根据本发明的各方面的用于在位流中译码非自然视频数据的方法800的流程图。可由视频编码器(例如,视频编码器20)视频解码器(例如,视频解码器30)或任何其它组件执行图8中所说明的步骤。为方便起见,将方法800描述为由视频译码器(还简称为译码器)执行,所述视频译码器可为视频编码器20、视频解码器30或另一组件。
方法800开始于框801。在框805处,译码器确定在CU中的当前位置左方的位置与上方复制游程的末端相关联。如上文所描述,当CU中的一或多个位置在上方复制模式中译码时,游程长度指示用信号表示始于且包含CU中的初始位置的与上方复制模式相关联的连续位置的数目。基于游程长度,译码器可确定给定位置(例如,紧接在CU中的当前位置之前的位置)为上方复制游程的末端。
在框810处,响应于确定在当前位置左方的位置与上方复制游程的末端相关联,译码器确定与当前位置相关联的索引值而无需确定当前位置上方的位置是否与逸出像素值相关联。如上文所描述,译码器通常需要在确定当前像素的索引值之前确定当前位置上方的位置是否与逸出像素值相关联(例如,如果当前位置上方的位置与逸出像素相关联,那么对于当前位置的索引值不等于在当前位置上方的位置的索引值的假设可变得不准确)。然而,在本发明的一些实施例中,逸出像素可为左方复制或上方复制游程的部分。因此,不需要对当前位置上方的位置的单独检验。所述方法在框815处结束。
在方法800中,可移除(例如,不执行)图8中展示的框中的一或多者及/或可交换执行方法的次序。在一些实施例中,可将额外框添加到方法800。因此,本发明的实施例不限于图8展示的实例或不受图8中展示的实例限制,且可在不脱离本发明的精神的情况下实施其它变化。
将索引二进数的最大数目保持为常量
在调色板模式译码的一些实施方案中,使用截断二进制码来译码调色板索引。假设当前CU中的最大索引包含性地为N(例如,索引值是从{0,1,2,...,N}中选出),如果这两个值不相等,那么译码每一索引的二进数的数目可为由于逸出像素被分配最大索引(例如,在调色板中的所有像素值被分配其索引值之后),译码逸出像素需要个二进数。
在一些情况下,通过利用相关性,例如上文所描述的方法,当前索引的最大符号值可减少一。换句话说,逸出像素可取决于是否启用冗余移除条件而耗费个二进数。因此,解码器可能首先需要计算最大索引符号值是N还是N-1,从而确定解码索引需要的二进数的数目。这引入额外芯片上延迟且对解码器流水线化具有负面影响。在一些实施例中,为了移除这一延迟和对解码器流水线化的任何负面影响,可限制此冗余移除机制。举例来说,可将用于索引译码的二进数的最大数目设定成常量。在一个实例中,逸出像素的索引值可始终使用ceil(log2(N+1))个二进数。在另一个实例中,如果ceil(log2(N+1))等于ceil(log2(N)),那么启用用于逸出像素的冗余移除程序,否则,停用用于逸出像素的冗余移除程序。
编码器侧流程图
图9是说明根据本发明的各方面的用于在位流中编码视频数据的方法900的流程图。举例来说,视频数据可为包含计算机产生的屏幕内容的非自然视频数据。可由视频编码器(例如,视频编码器20)或任何其它组件执行图9中所说明的步骤。为方便起见,将方法900描述为由视频译码器(也简称为译码器)执行,所述视频译码器可为视频编码器20或另一组件。
方法900开始于框901。在框905处,译码器分析译码单元(CU)中的多个像素。CU中的每一像素可与一像素值相关联。举例来说,CU中的多个像素可具有相同像素值。
在框910处,译码器基于CU中的多个像素产生调色板。调色板可包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目。调色板的实例在图4中说明。
在框915处,译码器确定与CU相关联的一或多个游程长度。如上文所描述,每一游程长度指示始于且包含CU中的当前位置的连续位置的数目,所述连续位置与左方复制模式或上方复制模式相关联。
在框920处,译码器确定与CU相关联的一或多个索引值。如上文所描述,每一索引值指示调色板中与CU中的当前位置相关联的像素值。在图4的实例中,索引值0指示CU中的当前位置具有白色像素值,且索引值1指示CU中的当前位置具有灰色像素值。
在框925处,译码器确定与CU相关联的一或多个逸出像素值。如上文所描述,每一逸出像素值指示不在与CU相关联的调色板中的像素值。在图4的实例中,CU中具有黑色像素值的两个位置在逸出模式中译码,且译码器将位流中的黑色像素值用信号表示为逸出像素值。
在框930处,译码器基于所产生调色板、所确定游程长度、所确定索引值和所确定逸出像素值来编码CU。在一些实施例中,在位流中的连续位置中(例如,在与CU相关联的位流的部分的末端处)编码逸出像素值。举例来说,逸出像素值的连续位置出现在与CU相关联的所有游程长度和索引值之后的位流中。在此类实施例中,在已由解码器解析所有游程长度和索引值之后,可并行地处理(例如,解析)逸出像素值。所述方法在框935处结束。
在方法900中,可移除(例如,不执行)图9中展示的框中的一或多者及/或可交换执行方法的次序。在一些实施例中,可将额外框添加到方法900。因此,本发明的实施例不限于图9展示的实例或不受图9中展示的实例限制,且可在不脱离本发明的精神的情况下实施其它变化。
其它考虑因素
可使用多种不同技术和技艺中的任一者来表示本文中所公开的信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和芯片。
结合本文揭示的实施例所描述的各种说明性逻辑块及算法步骤可实施为电子硬件、计算机软件或两者的组合。为清晰地说明硬件与软件的此可互换性,以上已大体就其功能性来描述了各种说明性组件、块和步骤。此功能性是实施为硬件还是软件取决于特定应用及施加于整个***的设计约束。熟练的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但这样的实施方案决策不应被解释为会引起脱离本发明的范围。
本文中所描述的技术可以硬件(例如,计算机硬件)、软件、固件,或其任何组合实施。所述技术可实施于多种装置中的任一者中,例如通用计算机、无线通信装置手持机或集成电路装置,其具有包含在无线通信装置手持机及其它装置中的应用的多种用途。被描述为装置或组件的任何特征可一起实施于集成逻辑装置中或分开来实施为离散但可互操作的逻辑装置。如果实施于软件中,那么可至少部分通过包括程序代码的计算机可读数据存储媒体实现所述技术,所述程序代码包括当经执行时执行上文所描述的方法中的一或多者的指令。计算机可读数据存储媒体可形成计算机程序产品的一部分,所述计算机程序产品可包含封装材料。计算机可读媒体可包括存储器或数据存储媒体,例如,随机存取存储器(RAM)(例如,同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、闪存器、磁性或光学数据存储媒体等等。另外或作为替代,所述技术可至少部分地由计算机可读通信媒体来实现,所述计算机可读通信媒体以指令或数据结构的形式载运或传达程序代码且可由计算机存取、读取和/或执行(例如,传播的信号或波)。
程序代码可由处理器执行,所述处理器可包含一或多个处理器,例如,一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路。此处理器可经配置以执行本发明中所描述的技术中的任一者。通用处理器可为微处理器;但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心,或任何其它此类配置。因此,如本文中所使用的术语“处理器”可指前述结构中的任一者、上述结构的任何组合,或适合于实施本文中所描述的技术的任何其它结构或设备。另外,在一些方面中,可将本文中所描述的功能性提供于经配置以用于编码和解码的专用软件或硬件内或并入组合的视频编码器-解码器(CODEC)中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明的技术可在各种各样的装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件或单元是为了强调经配置以执行所公开的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可以配合合适的软件和/或固件组合在编解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
虽然已经结合各种不同实施例描述了前文,但可在不脱离本发明的教示的情况下将来自一个实施例的特征或元件与其它实施例组合。然而,相应实施例之间的特征的组合不必限于此。已经描述本发明的各种实施例。这些和其它实施例在所附权利要求书的范围内。

Claims (24)

1.一种用于解码提供于位流中的视频数据的方法,所述位流包含在调色板模式中译码的译码单元CU,所述方法包括:
解析与提供于所述位流中的所述CU相关联的调色板,所述调色板包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目;
解析提供于所述位流中的与所述CU相关联的一或多个游程长度,每一游程长度指示始于且包含所述CU中的当前位置的连续位置的数目,所述连续位置与左方复制模式或上方复制模式相关联;
解析提供于所述位流中的与所述CU相关联的一或多个索引值,每一索引值指示所述调色板中与所述CU中的所述当前位置相关联的像素值,其中从在与所述CU相关联的所有所述游程长度之后的所述位流中的第一连续位置解析所述索引值;
解析提供于所述位流中的与所述CU相关联的一或多个逸出像素值,每一逸出像素值指示不在所述调色板中的像素值,其中从在与所述CU相关联的所有所述游程长度和所述索引值之后的所述位流中的第二连续位置解析所述逸出像素值;及
基于经解析的所述调色板、经解析游程长度、经解析索引值和经解析逸出值来解码所述CU。
2.根据权利要求1所述的方法,其进一步包括在解析与所述CU相关联的所有所述游程长度和所述索引值之后复位指定与所述CU相关联的当前间隔的范围的算术译码变量。
3.根据权利要求1所述的方法,其中在解析与所述CU相关联的所有所述游程长度和所述索引值之后并行地解析与所述CU相关联的所述逸出像素值。
4.根据权利要求1所述的方法,其进一步包括在解析与所述CU相关联的所有所述游程长度之后复位指定与所述CU相关联的当前间隔的范围的算术译码变量。
5.根据权利要求1所述的方法,其中在解析与所述CU相关联的所有所述游程长度之后并行地解析与所述CU相关联的所述索引值。
6.根据权利要求1所述的方法,其进一步包括:
确定所述CU中紧接在所述当前位置之前的第一位置与上方复制游程的末端相关联;及
响应于确定所述CU中的所述第一位置与上方复制游程的末端相关联,确定与所述当前位置相关联的索引值而无需确定所述CU中紧接在所述当前位置上方的第二位置是否与逸出像素值相关联。
7.根据权利要求1所述的方法,其中所述CU包含含有逸出像素值的上方复制游程或左方复制游程中的一者。
8.一种用于解码提供于位流中的视频数据的设备,其包括:
存储器,其经配置以存储与所述位流相关联的视频数据,所述位流包含在调色板模式中译码的译码单元CU;及
处理器,其与所述存储器通信且经配置以:
解析与提供于所述位流中的所述CU相关联的调色板,所述调色板包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目;
解析提供于所述位流中的与所述CU相关联的一或多个游程长度,每一游程长度指示始于且包含所述CU中的当前位置的连续位置的数目,所述连续位置与左方复制模式或上方复制模式相关联;
解析提供于所述位流中的与所述CU相关联的一或多个索引值,每一索引值指示所述调色板中与所述CU中的所述当前位置相关联的像素值,其中从在与所述CU相关联的所有所述游程长度之后的所述位流中的第一连续位置解析所述索引值;
解析提供于所述位流中的与所述CU相关联的一或多个逸出像素值,每一逸出像素值指示不在所述调色板中的像素值,其中从在与所述CU相关联的所有所述游程长度和所述索引值之后的所述位流中的第二连续位置解析所述逸出像素值;及
基于经解析的所述调色板、经解析游程长度、经解析索引值和经解析逸出值来解码所述CU。
9.根据权利要求8所述的设备,其中所述处理器经进一步配置以在解析与所述CU相关联的所有所述游程长度和所述索引值之后复位指定与所述CU相关联的当前间隔的范围的算术译码变量。
10.根据权利要求8所述的设备,其中所述处理器经配置以在解析与所述CU相关联的所有所述游程长度和所述索引值之后并行地解析与所述CU相关联的所述逸出像素值。
11.根据权利要求8所述的设备,其中所述处理器经进一步配置以在解析与所述CU相关联的所有所述游程长度之后复位指定与所述CU相关联的当前间隔的范围的算术译码变量。
12.根据权利要求8所述的设备,其中所述处理器经配置以在解析与所述CU相关联的所有所述游程长度之后并行地解析与所述CU相关联的所述索引值。
13.根据权利要求8所述的设备,其中所述处理器经进一步配置以:
确定所述CU中紧接在所述当前位置之前的第一位置与上方复制游程的末端相关联;及
响应于确定所述CU中的所述第一位置与上方复制游程的末端相关联,确定与所述当前位置相关联的索引值而无需确定所述CU中紧接在所述当前位置上方的第二位置是否与逸出像素值相关联。
14.根据权利要求8所述的设备,其中所述CU包含含有逸出像素值的上方复制游程或左方复制游程中的一者。
15.一种用于在位流中编码视频数据的方法,其包括:
分析译码单元CU中的多个像素,每一像素具有与之相关联的像素值;
基于所述CU中的所述多个像素产生调色板,所述调色板包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目;
确定与所述位流中的所述CU相关联的一或多个游程长度,每一游程长度指示始于且包含所述CU中的当前位置的连续位置的数目,所述连续位置与左方复制模式或上方复制模式相关联;
确定与所述位流中的所述CU相关联的一或多个索引值,每一索引值指示所述调色板中与所述CU中的所述当前位置相关联的像素值;
确定与所述位流中的所述CU相关联的一或多个逸出像素值,每一逸出像素值指示不在所述调色板中的像素值;及
基于所产生的所述调色板、所确定游程长度、所确定索引值和所确定逸出像素值来编码所述CU,其中所述索引值在与所述CU相关联的所有所述游程长度之后的所述位流中的第一连续位置中经编码,且所述逸出像素值在与所述CU相关联的所有所述游程长度和所述索引值之后的所述位流中的第二连续位置中经编码。
16.根据权利要求15所述的方法,其进一步包括∶
确定所述CU中紧接在所述当前位置之前的第一位置与上方复制游程的末端相关联;及
响应于确定所述CU中的所述第一位置与上方复制游程的末端相关联,确定与所述当前位置相关联的索引值而无需确定所述CU中紧接在所述当前位置上方的第二位置是否与逸出像素值相关联。
17.根据权利要求15所述的方法,其中所述CU包含含有逸出像素值的上方复制游程或左方复制游程中的一者。
18.根据权利要求15所述的方法,其进一步包括确定指示所述位流中对应于与所述CU相关联的所述索引值当中具有最早位置的索引值的位置的第一偏移。
19.根据权利要求15所述的方法,其进一步包括确定指示所述位流中对应于与所述CU相关联的所述逸出像素值当中具有最早位置的逸出像素值的位置的第二偏移。
20.一种用于在位流中编码视频数据的设备,其包括:
存储器,其经配置以存储与所述位流相关联的视频数据,所述位流包含在调色板模式中译码的译码单元CU;及
处理器,其与所述存储器通信且经配置以:
分析译码单元CU中的多个像素,每一像素具有与之相关联的像素值;
基于所述CU中的所述多个像素产生调色板,所述调色板包含各自与索引值及与所述索引值相关联的像素值相关联的多个调色板条目;
确定与所述位流中的所述CU相关联的一或多个游程长度,每一游程长度指示始于且包含所述CU中的当前位置的连续位置的数目,所述连续位置与左方复制模式或上方复制模式相关联;
确定与所述位流中的所述CU相关联的一或多个索引值,每一索引值指示所述调色板中与所述CU中的所述当前位置相关联的像素值;
确定与所述位流中的所述CU相关联的一或多个逸出像素值,每一逸出像素值指示不在所述调色板中的像素值;及
基于所产生的所述调色板、所确定游程长度、所确定索引值和所确定逸出像素值来编码所述CU,其中所述索引值在与所述CU相关联的所有所述游程长度之后的所述位流中的第一连续位置中经编码,且所述逸出像素值在与所述CU相关联的所有所述游程长度和所述索引值之后的所述位流中的第二连续位置中经编码。
21.根据权利要求20所述的设备,其中所述处理器经进一步配置以:
确定所述CU中紧接在所述当前位置之前的第一位置与上方复制游程的末端相关联;及
响应于确定所述CU中的所述第一位置与上方复制游程的末端相关联,确定与所述当前位置相关联的索引值而无需确定所述CU中紧接在所述当前位置上方的第二位置是否与逸出像素值相关联。
22.根据权利要求20所述的设备,其中所述CU包含含有逸出像素值的上方复制游程或左方复制游程中的一者。
23.根据权利要求20所述的设备,其中所述处理器经进一步配置以确定指示所述位流中对应于与所述CU相关联的所述索引值当中具有最早位置的索引值的位置的第一偏移。
24.根据权利要求20所述的设备,其进一步包括确定指示所述位流中对应于与所述CU相关联的所述逸出像素值当中具有最早位置的逸出像素值的位置的第二偏移。
CN201580035281.7A 2014-07-02 2015-06-30 用于调色板模式译码的方法和设备 Active CN106664428B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201462020340P 2014-07-02 2014-07-02
US62/020,340 2014-07-02
US201462028039P 2014-07-23 2014-07-23
US62/028,039 2014-07-23
US14/754,577 2015-06-29
US14/754,577 US9860560B2 (en) 2014-07-02 2015-06-29 Method for palette mode coding
PCT/US2015/038629 WO2016004086A1 (en) 2014-07-02 2015-06-30 Method for palette mode coding

Publications (2)

Publication Number Publication Date
CN106664428A CN106664428A (zh) 2017-05-10
CN106664428B true CN106664428B (zh) 2019-07-26

Family

ID=55017948

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580035281.7A Active CN106664428B (zh) 2014-07-02 2015-06-30 用于调色板模式译码的方法和设备

Country Status (10)

Country Link
US (1) US9860560B2 (zh)
EP (1) EP3164993B1 (zh)
JP (1) JP6553181B2 (zh)
KR (1) KR102400410B1 (zh)
CN (1) CN106664428B (zh)
BR (1) BR112016030530B1 (zh)
CA (1) CA2952629C (zh)
ES (1) ES2705760T3 (zh)
HU (1) HUE040098T2 (zh)
WO (1) WO2016004086A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2531005A (en) * 2014-10-06 2016-04-13 Canon Kk Improved encoding process using a palette mode
US10097842B2 (en) * 2015-09-18 2018-10-09 Qualcomm Incorporated Restriction of escape pixel signaled values in palette mode video coding
JP6855722B2 (ja) * 2016-09-21 2021-04-07 富士ゼロックス株式会社 画像処理装置およびプログラム
US10869050B2 (en) 2019-02-09 2020-12-15 Tencent America LLC Method and apparatus for video coding
AU2020224256A1 (en) 2019-02-24 2021-09-09 Beijing Bytedance Network Technology Co., Ltd. Independent coding of palette mode usage indication
US10924750B2 (en) * 2019-03-01 2021-02-16 Alibaba Group Holding Limited Palette size constraint in palette mode for video compression system
US11503311B2 (en) 2019-03-08 2022-11-15 Sony Group Corporation Hybrid palette-DPCM coding for image compression
JP7359936B2 (ja) 2019-07-20 2023-10-11 北京字節跳動網絡技術有限公司 パレットモードの使用の指示の条件依存符号化
CA3147923A1 (en) * 2019-07-20 2021-01-28 Beijing Bytedance Network Technology Co., Ltd. Quantization process for palette mode
CN117221536A (zh) 2019-07-23 2023-12-12 北京字节跳动网络技术有限公司 调色板模式编解码的模式确定
JP2022543009A (ja) 2019-07-29 2022-10-07 北京字節跳動網絡技術有限公司 予測処理におけるパレットモードの符号化
JP2023504407A (ja) 2019-12-03 2023-02-03 アリババ グループ ホウルディング リミテッド パレットモードを使用するための映像処理方法及び機器
US11967973B2 (en) * 2021-05-06 2024-04-23 Samsung Display Co., Ltd. Low overhead transition encoding codes

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1279860A (zh) * 1997-11-25 2001-01-10 汤姆森许可公司 使用比特映象的屏幕显示菜单的设备互用性
EP1988703A1 (en) * 2007-05-02 2008-11-05 TTPCOM Limited Image transformation
CN102790880A (zh) * 2004-06-15 2012-11-21 思科技术公司 用于视频压缩的混合可变长度编码的方法和设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10542271B2 (en) * 2013-12-27 2020-01-21 Hfi Innovation Inc. Method and apparatus for major color index map coding
CN105850132B (zh) * 2014-01-07 2019-10-22 联发科技股份有限公司 编解码视频数据块的方法和装置
KR101845462B1 (ko) * 2014-03-14 2018-04-04 브이아이디 스케일, 인크. 스크린 콘텐츠 코딩을 위한 팔레트 코딩
WO2015140400A1 (en) * 2014-03-17 2015-09-24 Nokia Technologies Oy Method and technical equipment for video encoding and decoding
WO2015194187A1 (en) * 2014-06-20 2015-12-23 Sharp Kabushiki Kaisha Harmonized palette coding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1279860A (zh) * 1997-11-25 2001-01-10 汤姆森许可公司 使用比特映象的屏幕显示菜单的设备互用性
CN102790880A (zh) * 2004-06-15 2012-11-21 思科技术公司 用于视频压缩的混合可变长度编码的方法和设备
EP1988703A1 (en) * 2007-05-02 2008-11-05 TTPCOM Limited Image transformation

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
AHG10: Modified copy above mode for palette based coding;Jianqing Zhu, Jiangli Ye, Kimihiko Kazui;《JCT-VC of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11》;20140319;全文
Description of screen content coding technology proposal by InterDigital;Xiaoyu Xiu, Chia-Ming Tsai, Yuwen He;《JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11》;20140318;全文
Non-CE6: Simplification on Escape Coding of Palette Mode in HEVC SCC;Meng Xu, Zhan Ma, Wei Wang, H. Yu;《JCT-VC of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11》;20141008;1-3页
Removal of parsing dependency in palette-based coding;Xiaoyu Xiu, Yuwen He, Yan Ye;《JCT-VC of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11》;20141008;1-5页

Also Published As

Publication number Publication date
CN106664428A (zh) 2017-05-10
CA2952629A1 (en) 2016-01-07
KR102400410B1 (ko) 2022-05-19
JP2017525316A (ja) 2017-08-31
CA2952629C (en) 2022-09-27
JP6553181B2 (ja) 2019-07-31
ES2705760T3 (es) 2019-03-26
US9860560B2 (en) 2018-01-02
HUE040098T2 (hu) 2019-02-28
WO2016004086A1 (en) 2016-01-07
BR112016030530B1 (pt) 2024-02-15
KR20170028905A (ko) 2017-03-14
US20160007042A1 (en) 2016-01-07
EP3164993A1 (en) 2017-05-10
BR112016030530A2 (zh) 2017-08-22
EP3164993B1 (en) 2018-10-17

Similar Documents

Publication Publication Date Title
CN106664428B (zh) 用于调色板模式译码的方法和设备
CN106105197B (zh) 针对帧内块复制的基于散列的编码器搜索
CN105900429B (zh) 一种译码视频信息的方法、设备、装置及计算机可读媒体
CN106464902B (zh) 译码视频信息的方法和设备
CN106464919B (zh) 用于编码和解码具有视频数据的多层位流的方法和装置
CN103891281B (zh) 检测用于视频译码的相邻视频单元的可用性
CN104704833B (zh) 多视图或3维视频译码中的高级视图间残差预测
CN105393536B (zh) 使用位移向量从预测性块的帧内预测
CN106416258B (zh) 视频编码器、视频解码器及其可操作的方法
CN104365106B (zh) 发信用于视频译码的长期参考图片的数据
CN106165426B (zh) 多层视频中确定起始随机存取的装置、方法及存储媒体
CN106105209B (zh) 多层视频编解码器的级别定义
CN104685887B (zh) 于视频译码中发信用于操作点的层识别符
CN105637881B (zh) 用于视频信息的可缩放译码的装置和方法
CN104704843B (zh) 视频性质的指示
CN104685888B (zh) 补充增强信息消息译码
CN104221374B (zh) 一种用于编码、解码视频数据的方法和设备
CN106464909B (zh) 可缩放视频译码中的位流符合性约束
CN104471942B (zh) 重新使用参数集用于视频译码
CN104885469B (zh) 用于处理视频数据的方法和设备
CN105556967B (zh) 用于视频信息的可缩放译码的装置和方法
CN104067524B (zh) 具有精简的初始化值集合的上下文自适应熵译码
CN109716774A (zh) 用于视频译码的可变数目的帧内模式
CN105379278B (zh) 用于视频信息的可缩放译码的装置和方法
CN107787583A (zh) 在块内复制模式中的参考图片列表构建

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant