CN105556974A - 基于调色板的视频译码中的调色板预测 - Google Patents
基于调色板的视频译码中的调色板预测 Download PDFInfo
- Publication number
- CN105556974A CN105556974A CN201480039199.7A CN201480039199A CN105556974A CN 105556974 A CN105556974 A CN 105556974A CN 201480039199 A CN201480039199 A CN 201480039199A CN 105556974 A CN105556974 A CN 105556974A
- Authority
- CN
- China
- Prior art keywords
- palette
- entry
- pixel value
- block
- decoding
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/46—Colour picture communication systems
- H04N1/64—Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor
- H04N1/644—Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor using a reduced set of representative colours, e.g. each representing a particular range in a colour space
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/186—Methods 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 a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/93—Run-length coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/94—Vector quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
在基于调色板的译码中,视频译码器可形成所谓的“调色板”,作为表示给定块的视频数据的色彩的表。所述视频译码器可为当前视频数据块的一或多个像素值译码索引值,其中所述索引值指示所述调色板中表示所述当前块的所述像素值的条目。根据所述技术,一种视频译码器确定预测性调色板中复制到当前调色板的一或多个调色板条目,以及不在所述预测性调色板中但包含于所述当前调色板中的新调色板条目的数目。所述视频译码器将所述当前调色板的大小计算为等于所述复制的调色板条目的数目与所述新调色板条目的数目的和,且产生包含所述复制的调色板条目和所述新调色板条目的所述当前调色板。
Description
本申请案主张2013年7月12日申请的第61/845,824号美国临时申请案、2013年11月1日申请的第61/899,048号美国临时申请案和2013年12月6日申请的第61/913,040号美国临时申请案的权益,以上申请案中的每一者的整个内容以引入的方式并入本文中。
技术领域
本发明涉及视频编码和解码。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、电子图书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能电话”、视频电话会议装置、视频流式发射装置及其类似者。数字视频装置实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-TH.263、ITU-TH.264/MPEG-4第10部分高级视频译码(AVC)定义的标准、目前正在开发的高效率视频译码(HEVC)标准和此类标准的扩展中所描述的视频压缩技术。视频装置通过实施此类视频压缩技术可更有效地发射、接收、编码、解码和/或存储数字视频信息。
视频压缩技术执行空间(图片内)预测和/或时间(图片间)预测来减少或移除视频序列中固有的冗余。对于基于块的视频译码,可将视频切片(即,视频帧或视频帧的一部分)分割成视频块。使用相对于同一图片中的相邻块中的参考样本的空间预测对图片的经帧内译码(I)切片中的视频块进行编码。图片的经帧间译码(P或B)切片中的视频块可使用关于同一图片中的相邻块中的参考样本的空间预测或关于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。
空间或时间预测产生用于待译码块的预测性块。残差数据表示待译码的原始块与预测块之间的像素差。经帧间译码块是根据指向形成预测块的参考样本块的运动向量与指示经译码块与预测块之间的差的残差数据编码的。根据帧内译码模式和残差数据来编码经帧内译码块。为了实现进一步压缩,可将残差数据从像素域变换到变换域,从而产生残差系数,接着可对残差系数进行量化。可扫描最初布置为二维阵列的经量化的系数,以便产生系数的一维向量,且可应用熵译码来实现更多压缩。
可例如从多个视角编码视图来产生多视图译码位流。已经开发利用多视图译码方面的一些三维(3D)视频标准。举例来说,不同视图可传输左眼和右眼视图来支持3D视频。或者,一些3D视频译码过程可应用所谓的多视图加深度译码。在多视图加深度译码中,3D视频位流可不仅含有纹理视图分量,而且含有深度视图分量。举例来说,每一视图可包括一个纹理视图分量和一个深度视图分量。
发明内容
本发明的技术涉及基于调色板的视频译码。在基于调色板的译码中,视频译码器(例如视频编码器或视频解码器)可形成所谓的“调色板”,作为表示特定区域(例如给定块)的视频数据的色彩或像素值的表。以此方式,不是译码当前视频数据块的实际像素值或其残差,而是视频译码器可为当前块的像素值中的一或多者译码索引值,其中所述索引值指示调色板中用以表示当前块的像素值的条目。用于当前视频数据块的当前调色板可经显式编码并发送到视频解码器,从先前调色板条目预测,从先前像素值预测,或其组合。
根据本发明中描述的用于为当前块产生当前调色板的技术,视频解码器首先确定预测调色板中复制到当前调色板的一或多个调色板条目,且接着确定不在所述预测调色板中但包含于当前调色板中的新调色板条目的数目。基于此信息,视频解码器将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和,且产生包含复制的调色板条目和新的调色板条目的所述所确定大小的当前调色板。视频编码器可执行类似的技术来为当前块产生当前调色板。另外,视频编码器可显式地编码所述新调色板条目的像素值,并将其发送到视频解码器。本发明中描述的技术还可包含用于以下各项中的一或多者的各种组合的技术:发信号通知基于调色板的译码模式;发射调色板;预测调色板;导出调色板,或发射基于调色板的译码图和其它语法元素。
在一个实例中,本发明是针对一种译码视频数据的方法,所述方法包括:产生包含指示像素值的调色板条目的预测调色板;确定所述预测调色板中的调色板条目中复制到用于视频数据的当前块的当前调色板的一或多者;确定不在预测调色板但包含于当前块的当前调色板中的新调色板条目的数目;将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和;以及产生包含复制的调色板条目和新调色板条目的当前调色板。所述方法进一步包括为所述当前块的一或多个像素值确定索引值,其识别当前调色板中用以表示当前块的像素值的调色板条目。
在另一实例中,本发明是针对一种用于译码视频数据的设备,所述设备包括:存储器,其存储视频数据;以及一或多个处理器,其经配置以:产生包含指示像素值的调色板条目的预测调色板;确定所述预测调色板中的调色板条目中复制到用于视频数据的当前块的当前调色板的一或多者;确定不在预测调色板中但包含于当前块的当前调色板中的新调色板条目的数目;将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和;且产生包含复制的调色板条目和新调色板条目的当前调色板。所述处理器进一步经配置以为所述当前块的一或多个像素值确定索引值,其识别当前调色板中用以表示当前块的像素值的调色板条目。
在另一实例中,本发明是针对一种用于译码视频数据的设备,所述设备包括:用于产生包含指示像素值的调色板条目的预测调色板的装置;用于确定所述预测调色板中的调色板条目中复制到用于视频数据的当前块的当前调色板的一或多者的装置;用于确定不在预测调色板中但包含于当前块的当前调色板中的新调色板条目的数目的装置;用于将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和的装置;用于产生包含复制的调色板条目和新调色板条目的当前调色板的装置;以及用于为当前块的一或多个像素值确定索引值的装置,所述索引值识别当前调色板中用以表示当前块的像素值的调色板条目。
在另一实例中,本发明是针对一种上面存储有指令的非暂时性计算机可读媒体,所述指令在被执行时,致使一或多个处理器:产生包含指示像素值的调色板条目的预测调色板;确定所述预测调色板中的调色板条目中复制到用于视频数据的当前块的当前调色板的一或多者;确定不在预测调色板中但包含于当前块的当前调色板中的新调色板条目的数目;将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和;产生包含复制的调色板条目和新调色板条目的当前调色板;且为当前块的一或多个像素值确定索引值,其识别当前调色板中用以表示当前块的像素值的调色板条目。
在附图和下文描述中陈述本发明的一或多个实例的细节。其它特征、目标和优点将从所述描述、图式以及权利要求书而显而易见。
附图说明
图1是说明可利用本发明中所描述的技术的实例视频译码系统的框图。
图2是图解说明可实施本发明中描述的技术的实例视频编码器的框图。
图3是说明可实施本发明中描述的技术的实例视频解码器的框图。
图4是说明与本发明的技术一致的确定用于对视频数据进行译码的调色板的实例的概念图。
图5是说明与本发明的技术一致的确定到视频块的调色板的索引的实例的概念图。
图6是说明与本发明的技术一致的使用针对色度分量经自适应下取样的亮度分量的调色板索引延行(run)来确定视频块的几何边缘的实例的概念图。
图7是说明与本发明的技术一致的使用基于调色板的译码模式来编码预测残差视频数据的实例过程的流程图。
图8是说明与本发明的技术一致的用于使用基于调色板的译码模式来解码预测残差视频数据的实例过程的流程图。
图9是说明与本发明的技术一致的用于为基于调色板的译码产生调色板的实例过程的流程图。
具体实施方式
本发明包含用于视频译码和压缩的技术。确切地说,本发明描述用于视频数据的基于调色板的译码的技术。在传统的视频译码中,假定图像为连续色调且空间上平滑。基于这些假设,已经开发各种工具,例如基于块的变换、滤波等,且此些工具已展示用于自然内容视频的良好性能。
然而,在例如远程桌面、合作工作和无线显示器等应用中,计算机产生的屏幕内容(例如,例如文字或计算机图形)可为待压缩的主要内容。此类型的内容倾向于具有离散色调和特征清晰线,以及高对比度对象边界。连续色调和平滑度的假定可不再适用于屏幕内容,且因此,传统视频译码技术可能不是压缩包含屏幕内容的视频数据的高效方式。
本发明描述基于调色板的译码,其可特别适合于屏幕产生的内容译码。举例来说,假定特定视频数据区域具有相对少量的色彩,那么视频译码器(视频编码器或视频解码器)可形成所谓的“调色板”,作为表示所述特定区域(例如给定块)的视频数据的色彩或像素值的表。举例来说,所述调色板可包含给定块中的最主要像素值。在一些情况下,所述最主要像素值可包含在所述块内最频繁出现的一或多个像素值。另外,在一些情况下,可应用阈值来定义是否包含像素值作为所述块中的最主要像素值中的一者。根据本发明,不是译码当前视频数据块的实际像素值或其残差,而是视频译码器可译码指示所述当前块的像素值中的一或多者的索引值,其中所述索引值指示调色板中用以表示当前块的像素值的条目。
举例来说,视频编码器可通过以下步骤来编码视频数据块:为所述块确定调色板(例如显式地译码调色板,预测调色板,或其组合),定位调色板中的条目来表示所述像素值中的一或多者,切用指示调色板中用以表示所述块的像素值的条目的索引值来编码所述块。在一些实例中,视频编码器可在经编码位流中发信号通知所述索引值。视频解码器可从经编码位流获得用于块的调色板以及用于所述块的像素的索引值。视频解码器可使像素的索引值与调色板的条目相关以重构块的像素值。
以上实例既定提供基于调色板的译码的一般描述。在各种实例中,本发明中描述的技术可包含用于以下各项中的一或多者的各种组合的技术:发信号通知基于调色板的译码模式,发射调色板,预测调色板,导出调色板,以及发射基于调色板的译码图和其它语法元素。此些技术可改进视频译码效率,例如需要较少位来表示屏幕产生的内容。
举例来说,用于当前视频数据块的当前调色板可经显式编码并发送到视频解码器,从先前调色板条目预测,从先前像素值预测,或其组合。根据本发明中描述的用于为当前块产生当前调色板的技术,视频解码器首先确定预测调色板中复制到当前调色板的一或多个调色板条目,且接着确定不在所述预测调色板中但包含于当前调色板中的新调色板条目的数目。基于此信息,视频解码器将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和,且产生包含复制的调色板条目和新的调色板条目的所述所确定大小的当前调色板。视频编码器可执行类似的技术来为当前块产生当前调色板。另外,视频编码器可显式地编码所述新调色板条目的像素值,并将其发送到视频解码器。
在本发明的一些实例中,所述用于视频数据的基于调色板的译码的技术可与一或多种其它译码技术一起使用,例如用于视频数据的帧间预测性译码或帧内预测性译码的技术。举例来说,如下文更详细地描述,编码器或解码器或组合编码器-解码器(编解码器)可经配置以执行帧间和帧内预测性译码以及基于调色板的译码。在一些实例中,基于调色板的译码技术可经配置以在高效视频译码(HEVC)的一或多种译码单元(CU)模式下使用。在其它实例中,所述基于调色板的译码技术可独立地使用或作为其它现有或将来系统或标准的一部分而使用。
举例来说,高效率视频译码(HEVC)是由ITU-T视频译码专家组(VCEG)和ISO/IEC运动图片专家组(MPEG)的视频译码联合合作小组(JCT-VC)开发的新视频译码标准。布洛斯(Bross)等人的文献JCTVC-L1003v34“高效率视频译码(HEVC)文本规范草案10(针对FDIS和最后调用)(Highefficiencyvideocoding(HEVC)TextSpecificationDraft10(forFDIS&LastCall)”(ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11视频译码联合合作小组(JCT-VC),第12届会议:瑞士日内瓦,2013年1月14日到23日)中描述了HEVC标准的最近的草案,被称作“HEVC草案10”或“WD10”,其可从下处获得:http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zip。
相对于HEVC框架,作为实例,基于调色板的译码技术可经配置以用作CU模式。在其它实例中,基于调色板的译码技术可经配置以用作HEVC的框架中的PU模式。因此,在CU模式的上下文中描述的所有以下所揭示的过程可另外或替代地应用于PU。然而,这些基于HEVC的实例不应被视为对本文所描述的基于调色板的译码技术的限定或限制,因为此些技术可应用以独立地工作或作为其它现有或尚待开发的系统/标准的部分而应用。在这些情况下,用于调色板译码的单元可为正方形块、矩形块或甚至非矩形形状的区。
图1是说明可利用本发明的技术的实例视频编解码系统10的框图。如本文所使用,术语“视频译码器”一般是指视频编码器和视频解码器两者。在本发明中,术语“视频译码”或“译码”可一般地指代视频编码或视频解码。视频译码系统10的视频编码器20和视频解码器30表示可经配置以执行根据本发明中描述的各种实例的用于基于调色板的视频译码的技术的装置的实例。举例来说,视频编码器20和视频解码器30可经配置以使用基于调色板的译码或非基于调色板的译码选择性对例如HEVC译码中的CU或PU等各种视频数据块进行译码。非基于调色板的译码模式可指代各种帧间预测性时间译码模式或帧内预测性空间译码模式,例如由HEVC草案10指定的各种译码模式。
如图1中所示,视频译码系统10包含源装置12和目的地装置14。源装置12产生经编码视频数据。因此,源装置12可被称为视频编码装置或视频编码设备。目的地装置14可对由源装置12产生的经编码的视频数据进行解码。因此,目的地装置14可被称为视频解码装置或视频解码设备。源装置12和目的地装置14可为视频译码装置或视频译码设备的实例。
源装置12和目的地装置14可包括广泛范围的装置,包含桌上型计算机、移动计算装置、笔记本型(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的“智能”电话等电话手持机、电视、摄影机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机(in-carcomputer)或其类似者。
目的地装置14可经由信道16从源装置12接收经编码视频数据。信道16可包括能够将经编码视频数据从源装置12移动到目的地装置14的一或多个媒体或装置。在一个实例中,信道16可包括使得源装置12能够实时将经编码视频数据直接发射到目的地装置14的一或多个通信媒体。在此实例中,源装置12可根据通信标准(例如无线通信协议)来调制经编码的视频数据,且可将经调制视频数据发射到目的地装置14。一或多个通信媒体可包含无线和/或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。所述一或多个通信媒体可形成基于分组的网络的一部分,基于分组的网络例如为局域网、广域网或全球网络(例如,因特网)。一或多个通信媒体可包含路由器、交换器、基站或促进从源装置12到目的地装置14的通信的其它设备。
在另一实例中,信道16可包含存储由源装置12产生的经编码视频数据的存储媒体。在此实例中,目的地装置14可经由磁盘存取或卡存取来存取所述存储媒体。存储媒体可包含多种本地存取的数据存储媒体,例如蓝光光盘、DVD、CD-ROM、快闪存储器或用于存储经编码视频数据的其它适合的数字存储媒体。
在另一个实例中,信道16可包含文件服务器或存储由源装置12产生的经编码视频数据的另一中间存储装置。在此实例中,目的地装置14可经由流式传输或下载来存取存储在文件服务器或其它中间存储装置处的经编码视频数据。文件服务器可为能够存储经编码视频数据并且将经编码视频数据发射到目的地装置14的服务器类型。实例文件服务器包含网络服务器(例如,用于网站)、文件传输协议(FTP)服务器、网络连接存储(NAS)装置和本地磁盘驱动器。
目的地装置14可通过标准数据连接(例如因特网连接)来存取经编码视频数据。资料连接之实例类型可包含无线频道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆数据机等),或适合于存取存储在文件服务器上的经编码视频数据的两者的组合。经编码视频数据从文件服务器的传输可为流式传输、下载传输或两者的组合。
本发明的技术不限于无线应用或设定。所述技术可应用于视频译码以支持多种多媒体应用,例如空中电视广播、有线电视发射、卫星电视发射、流式视频发射(例如,经由因特网)、编码视频数据以存储于数据存储媒体上、解码存储于数据存储媒体上的视频数据,或其它应用。在一些实例中,视频译码系统10可经配置以支持单向或双向视频传输以支持例如视频流式传输、视频重放、视频广播和/或视频电话等应用。
图1中说明的视频译码系统10仅为实例,并且本发明的技术可适用于未必包含编码装置与解码装置之间的任何数据通信的视频译码设定(例如,视频编码或视频解码)。在其它实例中,从本地存储器数据检索数据,经由网络流式传输数据等。视频编码装置可对数据进行编码并且将数据存储到存储器,和/或视频解码装置可从存储器检索数据并且对数据进行解码。在许多实例中,通过并不彼此通信而是简单地将数据编码到存储器和/或从存储器检索数据且对数据进行解码的装置执行编码和解码。
在图1的实例中,源装置12包含视频源18、视频编码器20以及输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)和/或发射器。视频源18可包含视频俘获装置(例如,摄像机)、含有先前俘获的视频数据的视频存档、用以从视频内容提供者接收视频数据的视频馈入接口、和/或用于产生视频数据的计算机图形系统,或视频数据的此些来源的组合。
视频编码器20可对来自视频源18的视频数据进行编码。在一些实例中,源装置12经由输出接口22将经编码视频数据直接发射到目的地装置14。在其它实例中,经编码视频数据还可存储到存储媒体或文件服务器上,以便随后通过目的地装置14存取以用于解码和/或播放。
在图1的实例中,目的地装置14包含输入接口28、视频解码器30和显示装置32。在一些实例中,输入接口28包含接收器和/或调制解调器。输入接口28可经由信道16接收经编码视频数据。显示装置32可与目的地装置14集成或可在目的地装置14外部。一般来说,显示装置32显示经解码视频数据。显示装置32可包括多种显示装置,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
本发明可大体上将视频编码器20称为将某些信息“发信号通知”或“发射”到例如视频解码器30的另一装置。术语“发信号通知”或“发射”可大体上指代用以对经压缩视频数据进行解码的语法元素和/或其它数据的传送。此传送可实时或几乎实时发生。替代性地,可历时时间跨度而发生此通信,例如当在编码时,以经编码位流将语法元素存储到计算机可读存储媒体时,可发生此通信,接着,在存储到此媒体之后可由解码装置在任何时间检索所述语法元素。因此,虽然视频解码器30可被称为“接收”某些信息,但信息的接收不一定实时或近实时发生且可在存储之后的某个时间从媒体检索。
视频编码器20和视频解码器30各自可实施为例如以下各项的多种合适电路中的任一者:一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、硬件或其任何组合。当部分地以软件实施技术时,装置可将软件的指令存储于合适的非暂时性计算机可读存储媒体中且可使用一或多个处理器以硬件执行指令从而执行本发明的技术。可将前述内容中的任一者(包含硬件、软件、硬件与软件的组合等)视为一或多个处理器。视频编码器20和视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合式编码器/解码器(编解码器)的一部分。
在一些实例中,视频编码器20和视频解码器30根据视频压缩标准操作,例如上文所提到且在HEVC草案10中描述的HEVC标准。除基础HEVC标准以外,存在持续努力产生用于HEVC的可缩放视频译码、多视图视频译码和3D译码扩展。另外,可提供(例如)如本发明中所描述的基于调色板的译码模式以用于HEVC标准的扩展。在一些实例中,本发明中针对基于调色板的译码而描述的技术可应用于经配置以根据其它视频译码标准(例如ITU-T-H.264/AVC标准或将来标准)操作的编码器和解码器。因此,将基于调色板的译码模式用于HEVC编解码器中的译码单元(CU)或预测单元(PU)的译码是为了实例的目的而描述。
在HEVC和其它视频译码标准中,视频序列通常包含一连串图片。图片也可被称作“帧”。图片可包含三个样本阵列,表示为SL、SCb以及SCr。SL是亮度样本的二维阵列(即,块)。SCb是Cb色度样本的二维阵列。SCr是Cr色度样本的二维阵列。彩色样本在本文中还可被称为“色度”样本。在其它情况下,图片可为单色的且可仅包含亮度样本阵列。
为了产生图片的经编码表示,视频编码器20可产生译码树单元(CTU)的集合。CTU中的每一者可为亮度样本的译码树块、色度样本的两个对应的译码树块,以及用以对译码树块的样本进行译码的语法结构。译码树块可为样本的N×N块。CTU也可称为“树块”或“最大译码单元”(LCU)。HEVC的CTU可广泛地类似于例如H.264/AVC等其它标准的宏块。然而,CTU未必限于特定大小,且可包含一或多个译码单元(CU)。切片可包含光栅扫描中连续排序的整数数目的CTU。经译码切片可包括切片标头和切片数据。切片的切片标头可为包含提供关于切片的信息的语法元素的语法结构。切片数据可包含切片的经译码CTU。
本发明可使用术语“视频单元”或“视频块”或“块”来指代一或多个样本块以及用于译码所述一或多个样本块的样本的语法结构。实例类型的视频单元或块可包含CTU、CU、PU、变换单元(TU)、宏块、宏块分区等。在一些情形中,PU的论述可与宏块或宏块分区的论述互换。
为了产生经译码CTU,视频编码器20可在CTU的译码树块上以递归方式执行四叉树分割,以将译码树块划分为译码块,因此命名为“译码树单元”。译码块是样本的NxN块。CU可为具有亮度样本阵列、Cb样本阵列和Cr样本阵列的图片的亮度样本的译码块和色度样本的两个对应译码块,以及用于对译码块的样本进行译码的语法结构。视频编码器20可将CU的译码块分割为一或多个预测块。预测块可为对其应用相同预测的样本的矩形(即,正方形或非正方形)块。CU的预测单元(PU)可为图片的亮度样本的预测块、色度样本的两个对应预测块以及用于预测预测块样本的语法结构。视频编码器20可产生用于CU的每个PU的明度预测块、Cb预测块以及Cr预测块的预测性明度块、Cb块以及Cr块。
视频编码器20可使用帧内预测或帧间预测来产生用于PU的预测性块。如果视频编码器20使用帧内预测产生PU的预测性块,那么视频编码器20可基于与PU相关的图片的经解码样本产生PU的预测性块。
如果视频编码器20使用帧间预测产生PU的预测性块,那么视频编码器20可基于除与PU相关的图片以外的一或多个图片的经解码样本产生PU的预测性块。视频编码器20可使用单向预测或双向预测来产生PU的预测性块。当视频编码器20使用单向预测来产生PU的预测性块时,PU可具有单个运动向量(MV)。当视频编码器20使用双向预测来产生PU的预测性块时,PU可具有两个MV。
在视频编码器20产生CU的一或多个PU的预测性块(例如,预测性明度、Cb和Cr块)之后,视频编码器20可产生CU的残差块。CU的Cr残差块中的每一样本可指示CU的PU的预测性块中的样本与CU的译码块中的对应样本之间的差异。举例来说,视频编码器20可产生CU的亮度残差块。CU的亮度残差块中的每个样本指示CU的预测性亮度块中的一者中的亮度样本与CU的原始亮度译码块中的对应样本之间的差异。另外,视频编码器20可产生CU的Cb残差块。CU的Cb残差块中的每一样本可指示CU的预测性Cb块中的一者中的Cb样本与CU的原始Cb译码块中的对应样本之间的差异。视频编码器20还可产生CU的Cr残差块。CU的Cr残差块中的每一样本可指示CU的预测性Cr块中的一者中的Cr样本与CU的原始Cr译码块中的对应样本之间的差异。
此外,视频编码器20可使用四叉树分割将CU的残差块(例如,明度、Cb和Cr残差块)分解为一或多个变换块(例如,明度、Cb和Cr变换块)。变换块可为对其应用相同变换的样本的矩形块。CU的变换单元(TU)可为亮度样本的变换块、色度样本的两个对应的变换块,以及用以对变换块样本进行变换的语法结构。因此,CU的每一TU可与亮度变换块、Cb变换块和Cr变换块相关联。与TU相关联的亮度变换块可为CU的亮度残差块的子块。Cb变换块可为CU的Cb残差块的子块。Cr变换块可为CU的Cr残差块的子块。
视频编码器20可将一或多个变换应用于变换块从而产生TU的系数块。系数块可为变换系数的二维阵列。变换系数可为标量。举例来说,视频编码器20可将一或多个变换应用于TU的亮度变换块以产生TU的亮度系数块。视频编码器20可将一或多个变换应用到TU的Cb变换块从而产生TU的Cb系数块。视频编码器20可将一或多个变换应用于TU的Cr变换块从而为TU产生Cr系数块。
在产生系数块(例如,亮度系数块、Cb系数块或Cr系数块)之后,视频编码器20可量化系数块。量化通常是指对变换系数进行量化以可能减小用于表示变换系数的数据的量从而提供进一步压缩的过程。在视频编码器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,等等。包封用于视频译码数据的RBSP(与用于参数集和SEI消息的RBSP相比)的NAL单元可被称为视频译码层(VCL)NAL单元。
视频解码器30可接收由视频编码器20产生的位流。另外,视频解码器30可从所述位流获得语法元素。举例来说,视频解码器30可剖析位流以从所述位流解码语法元素。视频解码器30可至少部分地基于从位流获得(例如解码)的语法元素来重构视频数据的图片。重构视频数据的过程可大体上与视频编码器20所执行的过程互逆。举例来说,视频解码器30可使用PU的MV来确定当前CU的PU的预测性样本块(即,预测性块)。另外,视频解码器30可逆量化与当前CU的TU相关联的变换系数块。视频解码器30可对变换系数块执行逆变换以重构与当前CU的TU相关联的变换块。通过将用于当前CU的PU的预测性样本块的样本添加到当前CU的TU的变换块的对应的样本,视频解码器30可重构当前CU的译码块。通过重构用于图片的每一CU的译码块,视频解码器30可重构图片。
在一些实例中,视频编码器20和视频解码器30可经配置以执行基于调色板的译码。举例来说,在基于调色板的译码中,并非执行上述帧内预测性或帧间预测性译码技术,而是视频编码器20和视频解码器30可将所谓的调色板译码为表示特定区域(例如给定块)的视频数据的色彩或像素值的表。以此方式,不是译码当前视频数据块的实际像素值或其残差,而是视频译码器可为当前块的像素值中的一或多者译码索引值,其中所述索引值指示调色板中用以表示当前块的像素值的条目。
在一个实例中,视频编码器20可通过以下操作来编码视频数据块:为所述块确定调色板,定位调色板中具有表示所述块的一或多个像素的值的值的条目,以及用指示调色板中用以表示所述块的一或多个像素值的条目的索引值来编码所述块。在一些实例中,视频编码器20可在经编码位流中发信号通知所述索引值。视频解码器可从经编码位流获得用于块的调色板以及用于所述块的像素的索引值。视频解码器可使像素的索引值与调色板的条目相关以重构块的像素值。
在另一实例中,视频编码器20可通过以下操作来编码视频数据块:为所述块确定预测残差值,为所述块确定调色板,定位调色板中具有表示预测残差值中的一或多者的值的值的条目,以及用指示调色板中用以表示所述块的预测残差值的条目的索引值来编码所述块。视频解码器30可从经编码位流获得用于块的调色板,以及用于所述块的预测残差值的索引值。视频解码器30可使预测残差值的索引值与调色板的条目相关,以重构所述块的预测残差值。可将预测残差值添加到预测值(例如使用帧内或帧间预测获得)以重构所述块的像素值。
如下文更详细地描述,基于调色板的译码的基本理念是对于待译码的给定视频数据块,导出包含当前块中的最主要像素值的调色板。举例来说,调色板可指假定为对于当前CU来说为主要和/或代表性的若干像素值。视频编码器20可首先将调色板的大小和元素发射到视频解码器30。视频编码器20可根据某一扫描次序来编码给定块中的像素值。对于给定块中的每一像素位置,视频编码器20可发射指示所述像素位置处的像素值是否包含于调色板中的旗标或其它语法元素。如果像素值在调色板中(即,存在指定所述像素值的调色板条目),那么视频编码器20可发信号通知与给定块中的像素位置的像素值相关联的索引值,接着发信号通知给定块中的类似值连续像素值的“延行”。在此情况下视频编码器20并不发射由所述“延行”涵盖的以下像素位置的旗标或调色板索引,因为它们全部具有相同像素值。
如果所述像素值不在调色板中(即,不存在指定像素值的调色板条目),那么视频编码器20可发射给定块中的给定像素位置的像素值或残差值(或其量化版本)。视频解码器30可首先基于从视频编码器20接收到的信息来确定调色板。视频解码器30可接着将接收到的与给定块中的像素位置相关联的索引值映射到调色板的条目,以重构给定块的像素值。
基于调色板的译码可具有一定量的信令开销。举例来说,可需要若干位来发信号通知调色板的特性(例如调色板的大小)以及调色板自身。另外,可需要若干位来发信号通知块的像素的索引值。在一些实例中,本发明的技术可减少发信号通知此信息所需的位的数目。举例来说,本发明中描述的技术可包含以下各者中的一或多者的各种组合的技术:发信号通知基于调色板的译码模式,发射调色板,预测调色板,导出调色板,以及发射基于调色板的译码图和其它语法元素。本发明的特定技术可在视频编码器20和/或视频解码器30中实施。
本发明的方面是针对调色板预测。举例来说,根据本发明的方面,视频编码器20和/或视频解码器30可确定具有指示第一像素值的第一组条目的第一调色板。视频编码器20和/或视频解码器30可接着基于第一调色板的第一组条目来确定指示第二调色板的第二像素值的第二组条目。视频编码器20和/或视频解码器30还可使用第二调色板(即,使用第二组像素值)来译码视频数据块的像素。
当基于第一组条目确定第二调色板的第二组条目时,视频编码器20可编码多种语法元素,其可由视频解码器30用来重构第二调色板。举例来说,视频编码器20可将一或多个语法元素编码在位流中,以指示整个调色板(或若干调色板,在视频数据的每一色彩分量(例如Y、Cb、Cr或Y、U、V或R、G、B)具有分开的调色板的情况下)是从当前正译码的块的一或多个相邻块预测(例如从其复制)。
当前块的当前调色板的条目从其预测(例如,复制)的调色板可被称为预测性调色板。预测性调色板可含有来自包含空间相邻块和/或块的特定扫描次序中的相邻块的一或多个相邻块的调色板条目。举例来说,相邻块可在空间上位于当前正译码的块的左边(左边相邻块)或上方(上部相邻块)。在另一实例中,视频编码器20可使用当前块的因果相邻者中的最频繁样本值确定预测性调色板条目。在另一实例中,相邻块可根据用以对块进行译码的特定扫描次序与当前正译码的块相邻。即,相邻块可为在扫描次序中在当前块之前译码的一或多个块。视频编码器20可对一或多个语法元素进行编码以指示调色板从其复制的相邻块的位置。
在一些实例中,可逐条目执行调色板预测。举例来说,视频编码器20可编码一或多个语法元素,以针对预测调色板的每一条目来指示给定调色板条目是否包含于当前块的当前调色板中。如果视频编码器20不使用预测来填充当前块的当前调色板的条目,那么视频编码器20可编码一或多个额外语法元素来指定当前块的当前调色板中的非预测条目,以及此类条目的数目。
如上文所描述,对于当前块,例如CU或PU,其调色板中的条目可从包含来自一或多个经先前译码相邻块的调色板条目的预测性调色板中的条目预测。本发明描述为当前块预测调色板的若干替代技术。
在一个实例中,预测性调色板包含若干条目,N个。在此实例中,视频编码器20首先向视频解码器30发射二进制向量V,其与预测性调色板具有相同大小,即,大小为N的向量。二进制向量中的每一条目指示预测性调色板中的对应条目是否将重新使用或复制到当前块的当前调色板。举例来说,视频编码器20可编码包含所述二进制向量的一或多个语法元素。在一些情况下,视频编码器20编码包含预测性调色板中的调色板条目中的每一者的一位旗标的二进制向量,其指示是否将相应的调色板条目复制到当前调色板。在其它情况下,视频编码器20编码经无损压缩的二进制向量,其中对二进制向量中的条目的指示经压缩或组合在一起,而不是作为一位旗标个别地发送。以此方式,视频解码器30确定预测性调色板中复制到当前调色板的调色板条目中的一或多者。
另外,视频编码器20发射数目M,其指示多少新条目将包含于当前块的调色板中;且接着将新条目的像素值发射到视频解码器30。举例来说,视频编码器20可使用单位译码、截断单位译码、指数-哥伦布(Exponential-Golomb)译码或哥伦布-莱斯(Golomb-Rice)译码中的一者来编码一或多个语法元素,其指示包含于当前调色板中的新调色板条目的数目。以此方式,视频解码器30确定不在预测性调色板中但包含于当前块的当前调色板中的新调色板条目的数目;
在此实例中,当前块的当前调色板的最终大小可到处为等于M+S,其中S是在当前块的调色板中重新使用的预测性调色板中的条目的数目。视频解码器30可将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和。一旦确定当前调色板的大小,视频解码器30产生包含从预测性调色板复制的调色板条目和从视频编码器20显式发信号通知的新调色板条目的当前调色板。
为了产生当前块的调色板,视频解码器30可合并接收到的M个新调色板条目与正从预测性调色板重新使用的S个复制的调色板条目。在一些情况下,所述合并可基于像素值,使得例如当针对每一分量使用单独的调色板时,当前块的调色板中的条目可随着调色板索引而增加(或减少)。在其它情况下,合并可为两组条目(即,复制的调色板条目和新调色板条目)的串接。
在另一实例中,视频编码器20首先将当前块的调色板的大小N的指示发射到视频解码器30。视频编码器20接着将具有与当前块的调色板相同大小的向量V(即,大小为N的向量)发射到视频解码器30。向量中的每一条目指示当前块的调色板中的对应条目是由视频编码器20显式地发射还是从预测性调色板复制。对于从预测性调色板复制的条目,视频编码器20可使用不同方法来发信号通知预测性调色板中的那一条目用于当前块的调色板中。在一些情况下,视频编码器20可发信号通知指示将从预测性调色板复制到当前块的调色板的条目的调色板索引。在其它情况下视频编码器20可发信号通知索引偏移,其为当前块的调色板中的索引与预测性调色板中的索引之间的差异。
在以上两个实例中,从中形成用于预测当前块的当前调色板的预测性调色板的一或多个经先前译码相邻块可为所述块的特定扫描次序中当前块和/或当前块的相邻块的空间相邻块。举例来说,相邻块可在空间上位于当前块上方(即,顶部相邻块)或左侧(即,左相邻块)。在一些实例中,可构建相邻块的候选列表,且视频编码器20发射索引来指示用以形成预测性调色板的候选相邻块和相关联调色板中的一或多者。
对于某些块,例如切片开头处或其它切片边界处的CU,或切片的最左CU,或视频数据图片,可停用调色板预测。举例来说,当当前视频数据块包括视频数据切片中的一个或一第一块或所述切片的最左块或视频数据的图片时,视频编码器20和/或视频解码器30可停用将预测调色板中的调色板条目复制到当前块的当前调色板。
在额外实例中,视频编码器20将包含于当前块的调色板中的条目的数目的指示发射到视频解码器30。接着,对于所述调色板条目中的每一者,视频编码器20发射指示当前块的调色板的调色板条目是否由视频编码器20显式地发射或调色板条目是否从先前经重构像素导出的旗标或其它语法元素。对于从先前经重构像素导出的当前块的调色板的调色板条目中的每一者,视频编码器20发射关于经重构像素在当前块中的像素位置或经重构像素在对应于调色板条目的相邻块中的像素位置的另一指示。在一些情况下,经重构的像素位置指示可为相对于当前块的左上位置的移位向量。在其它情况下,经重构的像素位置指示可为到可用于为当前块指定调色板条目的经重构像素列表中的索引。举例来说,此列表可包含可用于HEVC中的一般帧内预测的所有参考像素。
在一些实例中,用于预测整个调色板的技术可与用于预测调色板的一或多个条目的技术组合。举例来说,视频编码器20可将一或多个语法元素编码在位流中,以指示当前调色板是否是完全从预测性调色板(例如用于上一调色板经译码块的调色板)复制。如果情况不是这样,那么视频编码器20可在位流中对一或多个语法元素进行编码以指示预测性调色板中的每一条目是否是复制的。
在一些情况下,调色板的大小可为视频编码器20和视频解码器30所应用的视频译码标准中所指定的固定值,或可从视频编码器20发信号通知到视频解码器30。在其中色彩分量中的每一者具有单独的调色板的情况下,视频编码器20可单独地发信号通知不同调色板的大小。在单个调色板用于所有色彩分量的情况下,视频编码器20可为所述单个调色板编码单个大小。在另一个实例中,代替于发信号通知条目的数目和调色板值,视频编码器20可在发信号通知每一调色板值之后发信号通知用以指示发信号通知的调色板值是否是调色板的最终调色板条目的旗标。如果调色板已经达到某一最大大小,那么视频编码器20可不发信号通知此“调色板末端”旗标。
视频编码器20可编码一或多个语法元素以指示调色板预测是否是启用的和/或活动的。在用于说明目的的实例中,视频编码器20可对pred_palette_flag进行编码以针对每一块(例如,CU或PU)指示视频编码器20是否使用调色板预测来预测相应块的调色板。在一些实例中,视频编码器可发信号通知每一色彩分量的单独旗标(例如,每一块的三个旗标)。在其它实例中,视频编码器20可发信号通知适用于块的所有色彩分量的单个旗标。
视频解码器30可从经编码位流获得以上识别的信息,且可使用所述信息来重构调色板。举例来说,视频解码器30可接收指示特定调色板是否是从另一调色板预测的数据以及允许视频解码器30使用适当预测性调色板条目的信息。
在一些实例中,另外或替代地,视频编码器20和/或视频解码器30可在运行中(即,动态地)构造调色板。举例来说,视频编码器20和/或视频解码器30可在译码期间将条目添加到空的调色板。也就是说,视频编码器20可在针对块中的位置产生且发射像素值时将像素值添加到调色板。所述块中相对较晚译码的像素(例如具有先前已添加且编索引在调色板内的值的像素)可指所述调色板的例如具有与像素值相关联的索引值的较早添加的条目,而不是发射所述像素值。同样地,在接收到块中的位置的新像素值之后,视频解码器30可即刻遵循与视频编码器20相同的过程,且在调色板中包含所述像素值。以此方式,视频解码器30构建与视频编码器20相同的调色板。对于具有已经包含于调色板中的值的像素,视频解码器30可接收识别所述像素值的索引值。视频解码器30可使用所接收的信息(例如,调色板的像素值和/或索引值)来重构块的像素。
在一些实例中,视频编码器20和视频解码器30可维持固定大小的调色板。举例来说,视频编码器20和视频解码器30可将最近经重构的像素值添加到调色板。对于添加到调色板的每一条目,丢弃最早添加到调色板的条目。这也有时称为先进先出(FIFO)。更新调色板的此过程可仅应用于使用调色板模式译码的块或无关于译码模式而应用于所有块。
上述技术大体上涉及视频编码器20和视频解码器30构造和/或发射用于基于调色板的译码的调色板。本发明的其它方面涉及构造和/或发射允许视频编码器20和/或视频解码器30确定像素值的映射。举例来说,本发明的其它方面涉及构建和/或发射指示调色板中指定视频数据块的像素值的条目的索引图。
在一些实例中,视频编码器20可指示块的像素是否具有调色板中的对应值。在用于说明目的的实例中,假定映射的(i,j)条目对应于视频数据块中的(i,j)像素位置。在此实例中,视频编码器20可对用于块的每一像素位置的旗标进行编码。视频编码器20可针对(i,j)条目设定等于一的旗标以指示在(i,j)位置处的像素值为调色板中的多个值中的一者。当像素值包含于调色板中(即,旗标等于一)时,视频编码器20还可编码指示识别调色板中指定像素值的对应条目的(ⅰ,j)条目的调色板索引的数据。当像素值不包含于调色板中(即,旗标等于零)时,视频编码器20还可编码指示像素的样本值(可能经量化)的数据。在一些情况下,不包含于调色板中的像素被称作“逃逸像素”。
视频解码器30可从经编码位流获得上述数据且使用所述数据确定块中的特定位置的调色板索引和/或像素值。举例来说,视频解码器30可解码指示当前块的像素值中的每一者是否在当前调色板中具有对应像素值的一或多个语法元素,解码为当前块的在当前调色板中具有对应像素值的一或多个像素值指示索引值的一或多个语法元素,且解码为当前块的并不在当前调色板中具有对应像素值的一或多个像素值指示像素值的一或多个语法元素。
在一些实例中,可存在给定位置处的像素映射到的调色板索引与相邻像素映射到同一调色板索引的概率之间的相关性。即,当像素映射到特定调色板索引时,一或多个相邻像素(就空间位置来说)映射到同一调色板索引的概率可相对高。
根据本发明的方面,视频编码器20和/或视频解码器30可相对于视频数据块的一或多个索引确定且译码同一视频数据块的一或多个索引。举例来说,视频编码器20和/或视频解码器30可经配置以确定与视频数据块中的第一像素相关联的第一索引值,其中所述第一索引值使第一像素的值与调色板的条目相关。视频编码器20和/或视频解码器30还可经配置以基于第一索引值确定与视频数据块中的一或多个第二像素相关联的一或多个第二索引值,且对视频数据块的第一和一或多个第二像素进行译码。因此,在此实例中,可相对于映射的一或多个其它索引译码映射的索引。
在一些实例中,视频编码器20可对指示映射到同一索引值的处于给定扫描次序的若干连续像素的一或多个语法元素。。相同值的索引值的串在本文中可被称作“延行”。在一些实例中,像素值可恰好与调色板中的一个索引值相关联。因此,在一些情况下,值的延行也可指代相同值的像素值的串。在其它实例中,如下文相对于有损译码所描述,一个以上像素值可映射到调色板中的同一索引值。在此些实例中,值的延行指代相同值的索引值。在此情况下,在解码器侧,相同值的索引值的延行可对应于与所述索引值对应的像素值的延行。
在用于说明目的的实例中,如果处于给定扫描次序的两个连续索引具有不同值,那么延行等于零。如果处于给定扫描次序的两个连续索引具有相同值但扫描次序中的第三索引具有不同值,那么延行等于一。视频解码器30可获得指示来自经编码位流的延行的语法元素,且可使用所述语法元素所指示的数据来确定具有相同索引值的连续像素位置的数目。
在一些实例中,当前块中具有位于当前块的调色板中的像素值的所有像素位置均编码有调色板索引,接着是连续像素位置处的像素值的“延行”。在调色板中仅存在一个条目时的情况下,调色板索引或“延行”的发射可跳过当前块。在当前块中的像素位置中的一者处的像素值不具有与调色板中的像素值的精确匹配的情况下,视频编码器20可选择调色板条目中具有最近像素值的一者,并计算原始像素值与包含于调色板中的预测像素值之间的预测误差或残差值。视频编码器20可量化、编码像素位置的残差值,并将其发射到视频解码器30。
视频解码器30可接着基于对应的接收到的调色板索引导出所述像素位置处的像素值。导出的像素值和残差值(从视频编码器20接收)接着用以预测当前块中的像素位置处的像素值。在一个实例中,使用HEVC草案10所指定的HEVC方法来编码残差值,例如应用残差四叉树(RQT)来变换残差值,量化变换系数,且对经量化变换系数进行熵编码。在一些情况下,可直接量化残差值而不应用变换。举例来说,视频解码器30可解码指示当前块的一或多个像素值的索引值的一或多个语法元素,其中所述索引值将当前调色板中的对应像素值识别为预测像素值,且解码指示当前块的一或多个像素值与当前调色板中的所识别的预测像素值之间的残差值的一或多个语法元素。在一些情况下,以上实例可被称为有损译码。
另外或替代地,根据本发明的方面,视频编码器20和视频解码器30可执行用于映射的一或多个条目的行复制。所述条目由于映射的条目与块的像素位置之间的关系而也可被称作“位置”。在一些实例中,行复制可取决于扫描方向。举例来说,视频编码器20可指示块中的特定位置的像素值或索引图值等于特定位置上方的行(针对水平定向的扫描)或特定位置左侧(例如在前)的列(针对垂直定向的扫描)中的像素或索引值。视频编码器20还可将扫描次序中等于特定位置上方的行或左侧的列中的像素值或索引的像素值或索引的数目指示为延行。在此实例中,视频编码器20和/或视频解码器30可从指定相邻行(或对于垂直扫描,列)且针对当前正译码的块的行(或对于垂直扫描,列)的指定数目的条目,复制像素或索引值。
在一些情况下,从中复制值的行(或对于垂直扫描,列)可与当前正译码的位置的行(或对于垂直扫描,列)直接相邻,例如在其上方或左侧。在其它实例中,块的若干线可由视频编码器20和/或视频解码器30缓冲,以使得映射的若干线中的任一者可用作当前正译码的映射的线的预测性值。对于垂直扫描,类似技术可应用于先前列。在用于说明目的的实例中,视频编码器20和/或视频解码器30可经配置以在对像素的当前行进行译码之前存储先前四行的索引或像素值。在此实例中,预测性行(索引或像素值从其复制的行)可在位流中以截断一元码或例如一元代码等其它码来指示。相对于截断一元码,视频编码器20和/或视频解码器30可基于针对水平扫描的最大行计算(例如row_index-1)或针对垂直扫描的最大列计算(例如column_index-1)来确定截断一元码的最大值。另外,被复制的来自预测性行的位置的数目的指示也可包含在位流中。在一些情况下,如果正从中预测当前位置的行(或在垂直扫描的情况下,列)属于另一块(例如CU或CTU),那么可停用此类预测。
作为另一实例,视频编码器20可发信号通知指令,例如“从上行左半部复制”或“从上行右半部复制”,其指示将复制到当前正译码图的行的相邻行以及所述相邻行的条目的数目或部分。作为额外实例,在译码之前,可对索引值的图进行重新排序。举例来说,可使索引值图旋转90、180或270度,或上下或从左到右倒置,来改进译码效率。因此,可使用任何扫描来将像素或索引值的二维阵列转换成一维阵列。
用于译码条目的所谓延行的技术可结合上述用于行复制的技术使用。举例来说,视频编码器20可对指示映射中的条目的值是否是从调色板获得或者映射中的条目的值是否是从映射中的经先前译码的线获得的一或多个语法元素(例如,旗标)进行编码。视频编码器20还可对指示调色板的索引值或线(行或列)中的条目的位置的一或多个语法元素进行编码。视频编码器20还可对指示共享相同值的若干连续条目的一或多个语法元素进行编码。视频解码器30可从经编码位流获得此信息且使用所述信息重构块的映射和像素值。
如上所述,以特定次序扫描映射的索引。根据本发明的方面,扫描方向可为垂直、水平或处于对角线(例如,在框中成对角线地45度或135度)。在一些实例中,视频编码器20可对每一块的指示用于扫描所述块的索引的扫描方向的一或多个语法元素进行编码。另外或替代地,扫描方向可为常数值,或可发信号通知或基于所谓的辅助信息(例如(举例来说)块大小、色彩空间和/或色彩分量)来推断。视频编码器20可指定用于块的每一色彩分量的扫描。或者,指定扫描可适用于块的所有色彩分量。
在一些实例中,视频编码器20可不以给定扫描次序将相同值的索引值的延行发射到视频解码器30。实情为,视频编码器20和/或视频解码器30可暗含地导出所述延行的值,以便确定所述图的条目。在此情况下视频编码器20可发信号通知视频解码器30给定索引值的延行发生,但可不发信号通知所述延行的值。举例来说,延行的值可为常数值,或可基于正译码的当前视频数据块的辅助信息(例如块大小)而导出。在其中延行的值取决于块大小的情况下,所述延行可等于当前块的宽度、当前块的高度、当前块的半宽度(或半高度)、当前块的宽度和/或高度的一部分,或当前块的宽度和/或高度的整倍数。在一些实例中,视频编码器20可使用高级语法来向视频解码器30发信号通知延行的值。在一些实例中,短语“高级语法”是指例如图片参数集(PPS)、序列参数集(SPS)和视频参数集(VPS)等参数集中的语法,以及切片标头。
另外或替代地,视频编码器20可甚至不必将所述图发射到视频解码器30。实情为视频编码器20和/或视频解码器30可暗含地导出包含于图中的索引值的每一延行的起始位置或定位。在一个实例中,视频编码器20和/或视频解码器30所应用的视频译码标准可确定延行可仅在某些定位处开始。举例来说,延行可仅在每一行的开头或当前块的每隔N行的开头开始。起始位置对于不同扫描方向可不同。举例来说,如果使用垂直扫描,那么延行可仅在列的开头或当前块的每隔N列的开头开始。在另一实例中,可取决于当前块的辅助信息导出起始位置。在其中延行的起始位置取决于块大小的情况下,起始位置可为当前块的每一行和/或每一列的中间点,或当前块的每一行和/或列的一部分。在一些实例中,视频编码器20可使用高级语法来向视频解码器30发信号通知起始位置。
在一些实例中,可组合暗含起始位置导出与暗含延行导出,各自在上文所述。举例来说,视频编码器20和/或视频解码器30可确定图中的相同值的索引值的延行等于两个相邻起始位置之间的距离。在起始位置为当前块的每一行的开头(即,第一位置)的情况下,接着视频编码器20和/或视频解码器30可确定延行的长度等于当前块的整个行的长度。
在下文更详细描述的一些情况下,产生一个调色板,并针对当前块中的多个色彩分量共享。举例来说,对于当前块中的每一像素定位,三个色彩分量(例如Y亮度以及U和V色度分量两者)中的像素值可形成向量(即,色彩向量)。接着,可通过选择某一数目的向量来表示当前块而形成调色板。针对亮度分量具有像素值的一个调色板且针对色度分量具有像素值的另一调色板可为可能的。上文更详细描述的行复制也可对单个调色板起作用。对于共享的调色板,调色板条目可为(Y,U,V)或(Y,Cb,Cr)或(R,G,B)的三元组。在此情况下,如果扫描是水平的,那么发信号通知每一像素定位的调色板索引等于上一行的调色板索引,或者如果扫描是垂直的,那么发信号通知每一像素定位的调色板索引等于左侧列的调色板索引,且接着还基于延行从前一行或列复制调色板索引的相关联数目。
在针对两个或更多个色彩分量的共享调色板或针对色彩分量中的每一者的单独调色板的情况下,几何信息可在色彩分量之间共享。通常,不同色彩分量中的并置块的边缘定位之间存在高相关性,因为色度分量可能已经以预定义方式从亮度分量下取样,例如4:2:2或4:2:0取样。
举例来说,在基于调色板的译码中,可使用延行译码来指示当前块的几何形状信息,因为当前块的边缘将破坏所述延行。在4:4:4色度格式的情况下,可产生所述延行一次,并用于所有色彩分量。可基于色彩分量中的一者来产生延行,或可使用一个以上所述色彩分量中来产生所述延行。在4:2:2色度格式或4:2:0色度格式的情况下,可对用于亮度分量的延行进行下取样,从而应用于色度分量。
本发明的技术还包含基于调色板的译码的其它方面。举例来说,根据本发明的方面,视频编码器20和/或视频解码器30可对用于每一块的一或多个语法元素进行译码以指示所述块是使用调色板译码模式译码的。举例来说,视频编码器20和/或视频解码器30可对调色板模式旗标(PLT_Mode_flag)进行译码以指示基于调色板的译码模式是否将用于对特定块进行译码。在此实例中,视频编码器20可编码等于一的PLT_Mode_flag以指定当前正编码的块(“当前块”)是使用调色板模式编码的。等于零的PLT_Mode_flag的值指定当前块不是使用调色板模式编码。在此情况下,视频解码器30可从经编码位流获得PLT_Mode_flag且应用基于调色板的译码模式以对块进行解码。在其中存在一个以上基于调色板的译码模式可用(例如,存在一个以上基于调色板的技术可用于译码)的实例中,一或多个语法元素可指示用于块的多个不同调色板模式中的一者。
在一些情况下,视频编码器20可编码等于零的PLT_Mode_flag以指定当前块不是使用调色板模式编码。在此些实例中,视频编码器20可使用多种帧间预测性、帧内预测性或其它译码模式中的任一者对块进行编码。当PLT_Mode_flag等于零时,视频编码器20可发射额外信息(例如,语法元素)以指示用于对相应块进行编码的特定模式。在一些实例中,如下所述,模式可为HEVC译码模式,例如HEVC标准中的常规帧间预测模式或帧内预测模式。PLT_Mode_flag的使用是出于实例的目的而描述。在其它实例中,例如多位码等其它语法元素可用以指示基于调色板的译码模式是否将用于一或多个块,或指示将使用多个模式中的哪一者。
当使用基于调色板的译码模式时,视频编码器20例如使用本文所描述的技术中的一或多者在供视频解码器30使用的经编码视频数据位流中发射调色板。调色板可针对每一块发射或可在若干块之间共享。调色板可指代对于块来说为主要的和/或代表性的若干像素值。
调色板的大小,例如就包含于调色板中的像素值的数目来说,可为固定的或可使用经编码位流中的一或多个语法元素来发信号通知。如下文更详细地描述,像素值可例如取决于用于译码的色彩空间而由若干样本构成。举例来说,像素值可包含明度和色度样本(例如,明度、U色度和V色度(YUV)样本或者明度、Cb色度和Cr色度(YCbCr)样本)。在另一实例中,像素值可包含红、绿和蓝(RGB)样本。如本文所描述,术语像素值可大体上指代贡献于像素的样本中的一或多者。也就是说,术语像素值不一定指代贡献于像素的所有样本,且可用以描述贡献于像素的单个样本值。
在一些实例中,可针对特定块的每一色彩分量分别发射调色板。举例来说,在YUV色彩空间中,可存在用于Y分量的调色板(表示Y值)、用于U分量的调色板(表示U值)和用于V分量的又一调色板(表示V值)。在另一个实例中,调色板可包含特定块的所有分量。在此实例中,调色板中的第i条目可包含三个值(例如,Yi、Ui、Vi)。根据本发明的方面,一或多个语法元素可单独地指示用于每一分量(例如,Y、U、V或类似物)的调色板的大小。在其它实例中,单个大小可用于所有分量,以使得一或多个语法元素指示所有分量的大小。
视频编码器20和/或视频解码器30可有损或无损方式执行基于调色板的译码。也就是说,在一些实例中,视频编码器20和/或视频解码器30可使用匹配于块的像素值的调色板条目(或通过在调色板中不包含所述像素值的情况下发送实际像素值)无损地对块的视频数据进行译码。在其它实例中,如下文相对于图5较详细描述,视频编码器20和/或视频解码器30可使用并不精确匹配于块的像素值的调色板条目对块的视频数据进行译码(有损译码)。类似地,如果实际像素值不包含于调色板中,那么可以有损方式来量化实际像素值。
根据本发明中描述的技术,视频编码器20和/或视频解码器30可执行对所预测视频块的基于调色板的译码。在一个实例中,视频编码器20首先基于当前块中的像素值为当前块导出调色板,且接着将当前块中的像素值映射到调色板索引来进行编码。映射可为一对一(即,针对无损译码)或多对一(即,针对有损译码)。视频编码器20还映射经先前译码块中将用以预测当前块中的像素值的参考像素值。一旦已将当前块的像素值映射到调色板索引,视频编码器20就可使用常规编码方法(例如HEVC标准中的常规帧内译码),编码具有调色板索引的当前块。
在以上实例中,如同当前块是具有像素值的原始块那样来处理具有调色板索引的当前块。类似地,参考像素的调色板索引用于对具有调色板索引的当前块执行常规帧内预测。视频编码器20将预测误差或残差值发射到视频解码器30。在编码当前块之后,视频编码器20将参考像素、预测像素和残差值的索引转换回到像素值,以用于当前块的重构和将来块的一般预测。视频解码器30可从位流获得当前块的经编码残差值,并使用常规解码方法来解码当前块,以获得具有调色板索引的当前块。视频解码器30可接着基于调色板中与所述调色板索引相关联的像素值来确定当前块的像素值。
在另一实例中,视频编码器20可为当前块产生调色板,其中所述调色板包含指示给定块的预测残差值的条目。可使用任何预测模式,例如HEVC标准中的常规帧间预测或帧内预测来产生给定块的预测残差值。给定块的预测残差值可为残差像素值或残差变换系数值。在任一情况下,可量化预测残差值。在此实例中,视频编码器20将当前块的预测残差值映射到指示当前块的调色板中用以表示当前块的预测残差值的条目的索引值,并使用所述索引值来编码预测残差值。视频解码器30可从位流获得索引值块,并基于调色板中由所述索引值识别的对应预测残差值来确定当前块的预测残差值。视频解码器30可接着基于预测残差值和经先前译码的参考像素值,使用常规解码方法来重构当前块的像素值。
在一些实例中,视频编码器20和/或视频解码器30可通过应用帧内预测模式(即,仅使用当前图片中的经先前译码像素信息的预测)来执行具有视频块预测的基于调色板的视频译码。在其它情况下,视频编码器20和/或视频解码器30可应用帧间预测模式(即,所述预测是从经先前译码图片中的像素进行)。在一些情况下,视频编码器20和/或视频解码器30可通过仅将预测模式过程的子集用于帧间预测模式或帧内预测模式,来为当前块确定预测残差值。
在另一实例中,视频编码器20和/或视频解码器30可不对当前块执行预测。在此情况下,视频编码器20代替地将像素值映射到调色板索引,并使用熵译码来编码所述索引而不预测。在额外实例中,视频编码器20和/或视频解码器30可使用当前块的映射到调色板索引值的像素值来执行残差差分脉码调制(RDPCM)。在此实例中,不使用从当前块外部的像素的预测,且可将水平或垂直预测用于当前CU内的行复制索引值。
在一些实例中,用于视频数据的基于调色板的译码的技术可与例如用于帧间或帧内预测性译码的技术等一或多个其它译码技术一起使用。举例来说,如下文更详细地描述,编码器或解码器或组合编码器-解码器(编解码器)可经配置以执行帧间和帧内预测性译码以及基于调色板的译码。
图2是说明可实施本发明的技术的实例视频编码器20的框图。图2是出于解释的目的而提供,且不应被视为将技术限制为本发明中所大致例示和描述的技术。出于解释的目的,本发明在HEVC译码的上下文中描述视频编码器20。然而,本发明的技术可适用于其它译码标准或方法。
视频编码器20表示可经配置以执行根据本发明中描述的各种实例的用于基于调色板的视频译码的技术的装置的实例。举例来说,视频编码器20可经配置以使用基于调色板的译码或非基于调色板的译码选择性对例如HEVC译码中的CU或PU等各种视频数据块进行译码。非基于调色板的译码模式可指代各种帧间预测性时间译码模式或帧内预测性空间译码模式,例如由HEVC草案10指定的各种译码模式。在一个实例中,视频编码器20可经配置以产生具有指示像素值的条目的调色板。此外,在此实例中视频编码器20可选择调色板中的像素值来表示视频数据块的至少一些位置的像素值。在此实例中视频编码器20可发信号通知使视频数据块的位置中的至少一些与调色板中分别对应于选定像素值的条目关联的信息。视频解码器30可使用发信号通知的信息来解码视频数据。
在图2的实例中,视频编码器20包含视频数据存储器98、预测处理单元100、残差产生单元102、变换处理单元104、量化单元106、逆量化单元108、反变换处理单元110、重构单元112、滤波器单元114、经解码图片缓冲器116和熵编码单元118。预测处理单元100包含帧间预测处理单元120和帧内预测处理单元126。帧间预测处理单元120包含运动估计单元和运动补偿单元(未图示)。视频编码器20还包含基于调色板的编码单元122,其经配置以执行本发明中描述的基于调色板的译码技术的各种方面。在其它实例中,视频编码器20可包含更多、更少或不同的功能组件。
视频数据存储器98可存储待由视频编码器20的组件编码的视频数据。可(例如)从视频源18获得存储在视频数据存储器98中的视频数据。经解码图片缓冲器116可为参考图片存储器,其存储用于由视频编码器20(例如)在帧内或帧间译码模式中对视频数据进行编码的参考视频数据。视频数据存储器98和经解码图片缓冲器116可由多种存储器装置中的任一者形成,例如动态随机存取存储器(DRAM),包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。视频数据存储器98和经解码图片缓冲器116可由相同存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器98可与视频编码器20的其它组件一起在芯片上,或相对于那些组件在芯片外。
视频编码器20可接收视频数据。视频编码器20可对视频数据的图片的切片中的每一CTU进行编码。CTU中的每一者可与图片的大小相等的亮度译码树块(CTB)以及对应的CTB相关联。作为对CTU进行编码的一部分,预测处理单元100可执行四分树分割以将CTU的CTB划分为逐渐更小的块。所述更小的块可为CU的译码块。举例来说,预测处理单元100可将与CTU相关联的CTB分割成四个大小相等的子块,将子块中的一或多者分割成四个大小相等的子子块等。
视频编码器20可对CTU的CU进行编码以产生CU的经编码表示(即,经译码的CU)。作为对CU进行编码的一部分,预测处理单元100可在CU的一或多个PU当中分割与CU相关联的译码块。因此,每一PU可与亮度预测块和对应的色度预测块相关联。视频编码器20和视频解码器30可支持具有各种大小的PU。如上文所指示,CU的大小可指CU的亮度译码块的大小并且PU的大小可指PU的亮度预测块的大小。假定特定CU的大小是2Nx2N,那么视频编码器20和视频解码器30可支持用于帧内预测的2Nx2N或NxN的PU大小,以及用于帧间预测的2Nx2N、2NxN、Nx2N、NxN或类似大小的对称PU大小。视频编码器20和视频解码器30还可支持用于帧间预测的2NxnU、2NxnD、nLx2N以及nRx2N的PU大小的非对称分割。
帧间预测处理单元120可通过对CU的每个PU执行帧间预测来产生用于PU的预测性数据。PU的预测性数据可包含PU的一或多个预测性样本块以及PU的运动信息。取决于PU是在I切片中、P切片中还是B切片中,帧间预测单元121可对CU的PU执行不同操作。在I切片中,所有PU都是经帧内预测。因此,如果PU是在I切片中,那么帧间预测单元121并不对PU执行帧间预测。因此,对于以I模式进行编码的视频块,使用来自相同帧内的经先前编码的相邻块的空间预测来形成预测块。
如果PU在P切片中,那么帧间预测处理单元120的运动估计单元可搜索参考图片列表(例如,“RefPicList0”)中的参考图片,以寻找用于PU的参考区。用于PU的参考区可为在参考图片内含有最紧密地对应于PU的样本块的样本块的区。运动估计单元可产生指示含有用于PU的参考区的参考图片在RefPicList0中的位置的参考索引。另外,运动估计单元可产生指示PU的译码块和与参考区相关联的参考位置之间的空间移位的MV。举例来说,MV可为用以提供从当前经解码的片中的坐标到参考图片中的坐标的偏移的二维向量。运动估计单元可将参考索引和MV输出为PU的运动信息。帧间预测处理单元120的运动补偿单元可基于在由PU的运动向量指示的参考位置处的实际或经内插样本而产生PU的预测性样本块。
如果PU是在B切片中,那么运动估计单元可对PU执行单向预测或双向预测。为了对PU执行单向预测,运动估计单元可搜索RefPicList0或第二参考图片列表(“RefPicList1”)的参考图片,以寻找用于PU的参考区。运动估计单元可输出以下各项作为PU的运动信息:参考索引,其指示含有参考区的参考图片在RefPicList0或RefPicList1中的位置;MV,其指示PU的样本块与同参考区相关联的参考位置之间的空间位移;以及一或多个预测方向指示符,其指示参考图片是否在RefPicList0或RefPicList1中。帧间预测处理单元120的运动补偿单元可至少部分地基于在由PU的运动向量指示的参考区的实际或经内插样本而产生PU的预测性样本块。
为了对PU执行双向帧间预测,运动估计单元可搜索RefPicList0中的参考图片是否有用于PU的参考区,并且还可搜索RefPicList1中的参考图片是否有用于PU的另一参考区。运动估计单元可产生指示含有参考区的参考图片在RefPicList0以及RefPicList1中的位置的参考图片索引。另外,运动估计单元可产生指示与参考区相关联的参考位置与PU的样本块之间的空间移位的MV。PU的运动信息可包含PU的参考索引和MV。运动补偿单元可至少部分地基于在由PU的运动向量指示的参考区处的实际或经内插样本而产生PU的预测性样本块。
根据本发明的各种实例,视频编码器20可经配置以执行基于调色板的译码。相对于HEVC框架,作为实例,基于调色板的译码技术可经配置以用作CU模式。在其它实例中,基于调色板的译码技术可经配置以用作HEVC的框架中的PU模式。因此,本文在CU模式的上下文中揭示的过程(贯穿本发明)可另外或替代地适用于PU模式。然而,这些基于HEVC的实例不应被视为对本文所描述的基于调色板的译码技术的限定或限制,因为此些技术可应用以独立地工作或作为其它现有或尚待开发的系统/标准的部分而应用。在这些情况下,用于调色板译码的单元可为正方形块、矩形块或甚至非矩形形状的区。
当(例如)针对CU或PU选择基于调色板的编码模式时,基于调色板的编码单元122(例如)可执行基于调色板的解码。举例来说,基于调色板的编码单元122可经配置以产生具有指示像素值的条目的调色板,选择调色板中表示视频数据块的至少一些位置的像素值的像素值,且发信号通知使视频数据块的位置中的至少一些与调色板中分别对应于选定像素值的条目关联的信息。虽然将各种功能描述为由基于调色板的编码单元122执行,但此些功能中的一些或全部可由其它处理单元或不同处理单元的组合执行。
基于调色板的编码单元122可经配置以产生本文中所描述的各种语法元素中的任一者。因此,视频编码器20可经配置以使用如本发明中所描述的基于调色板的译码模式对视频数据块进行编码。视频编码器20可选择性地使用调色板译码模式对视频数据块进行编码,或使用不同模式(例如此HEVC帧间预测性或帧内预测性译码模式)对视频数据块进行编码。视频数据块可(例如)为根据HEVC译码过程产生的CU或PU。视频编码器20可以帧间预测性时间预测或帧内预测性空间译码模式对一些块进行编码,且以基于调色板的译码模式对其它块进行解码。
帧内预测处理单元126可通过对PU执行帧内预测而产生PU的预测性数据。用于PU的预测性数据可包含用于PU的预测性样本块以及各种语法元素。帧内预测处理单元126可对I切片、P切片以及B切片中的PU执行帧内预测。
为了对PU执行帧内预测,帧内预测处理单元126可使用多个帧内预测模式以产生用于PU的预测性数据的多个集合。当使用某一帧内预测模式来产生用于PU的预测数据的集合时,帧内预测单元126可在与帧内预测模式相关联的方向上跨PU的视频块从相邻PU的样本块扩展样本的值。假定对于PU、CU和CTU采用从左到右、从上到下的编码次序,相邻PU可在所述PU的上方、右上方、左上方或左方。帧内预测处理单元126可使用各种数目的帧内预测模式,例如,33个定向帧内预测模式。在一些实例中,帧内预测模式的数目可取决于与PU相关联的区域的大小。
预测处理单元100可从PU的由帧间预测处理单元120产生的预测性数据或PU的由帧内预测处理单元126产生的预测性数据当中选择CU的PU的预测性数据。在一些实例中,预测处理单元100基于预测性数据集合的速率/失真量度选择CU的PU的预测性数据。所选预测性数据的预测性样本块在本文中可被称为所选预测性样本块。
残差产生单元102可基于CU的译码块(例如亮度、Cb和Cr译码块)以及CU的PU的选定预测性样本块(例如预测性亮度、Cb和Cr块)产生CU的残差块(例如亮度、Cb和Cr残差块)。举例来说,残差产生单元102可产生CU的残差块以使得残差块中的每一样本具有等于CU的译码块中的样本与CU的PU的对应选定预测性样本块中的对应样本之间的差的值。
变换处理单元104可执行四叉树分割以将与CU相关联的残差块分割为与CU的TU相关联的变换块。因此,在一些实例中,TU可与亮度变换块和两个对应色度变换块相关联。CU的TU的亮度变换块以及色度变换块的大小和位置可或可不基于CU的PU的预测块的大小和位置。被称为“残差四叉树”(RQT)的四叉树结构可包含与区域中的每一者相关联的节点。CU的TU可对应于RQT的叶节点。
变换处理单元104可通过将一个或一个以上变换应用到TU的变换块而产生用于CU的每一TU的变换系数块。变换处理单元104可将各种变换应用到与TU相关联的变换块。举例来说,变换处理单元104可将离散余弦变换(DCT)、定向变换或概念上类似的变换应用于变换块。在一些实例中,变换处理单元104并不将变换应用于变换块。在此类实例中,变换块可处理为变换系数块。
量化单元106可量化系数块中的变换系数。量化过程可减少与变换系数中的一些或全部相关联的位深度。举例来说,n位变换系数可在量化期间舍入到m位变换系数,其中n大于m。量化单元106可基于与CU相关联的量化参数(QP)值量化与CU的TU相关联的系数块。视频编码器20可通过调整与CU相关联的QP值来调整适用于与CU相关联的系数块的量化程度。量化可导致信息的损耗,因此经量化变换系数可具有比原始变换系数低的精度。
逆量化单元108和逆变换处理单元110可分别将逆量化和逆变换应用于系数块,以从所述系数块重构残差块。重建构单元112可将经重建构残差块添加到来自由预测处理单元100产生的一或多个预测性样本块的对应样本,以产生与TU相关联的经重建构变换块。通过以此方式重构用于CU的每一TU的变换块,视频编码器20可重构CU的译码块。
滤波器单元114可执行一或多个去块操作来减少与CU相关联的译码块中的成块假影。经解码图片缓冲器116可在滤波器单元114对经重构的译码块执行一或多个去块操作之后存储经重构的译码块。帧间预测处理单元120可使用含有经重建构译码块的参考图片来对其它图片的PU执行帧间预测。另外,帧内预测处理单元126可使用经解码图片缓冲器116中的经重构的译码块以对处于与CU相同的图片中的其它PU执行帧内预测。
熵编码单元118可从视频编码器20的其它功能组件接收数据。举例来说,熵编码单元118可从量化单元106接收系数块,且可从预测处理单元100接收语法元素。熵编码单元118可对数据执行一或多个熵编码操作以产生经熵编码数据。例如,熵编码单元118可对数据执行CABAC操作、上下文自适应可变长度译码(CAVLC)操作、可变到可变(V2V)长度译码操作、基于语法的上下文自适应二进制算术译码(SBAC)操作、概率区间分割熵(PIPE)译码操作、指数-哥伦布编码操作或另一类型的熵编码操作。视频编码器20可输出包含由熵编码单元118产生的经熵编码的数据的位流。举例来说,位流可包含表示用于CU的RQT的数据。
在一些实例中,残差译码并不与调色板译码一起执行。因此,当使用调色板译码模式来译码时,视频编码器20可不执行变换或量化。另外,视频编码器20可对单独地使用调色板译码模式从残差数据产生的数据进行熵编码。
根据本发明的技术中的一或多者,视频编码器20,并且具体地说基于调色板的编码单元122,可执行所预测视频块的基于调色板的视频译码。如上文所描述,视频编码器20所产生的调色板可显式地经编码并发送到视频解码器30,从先前调色板条目预测,从先前像素值预测,或其组合。
在一个实例中,视频编码器20的基于调色板的编码单元122确定预测性调色板中复制到当前视频数据块的当前调色板的一或多个调色板条目,且确定不在预测值调色板中但包含于当前调色板中的新调色板条目的数目。基于此信息,基于调色板的视频编码器20将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和,且产生包含复制的调色板条目和新调色板条目的所确定大小的当前调色板。视频编码器20可将关于复制的调色板条目和新调色板条目的所确定信息发射到视频解码器30。另外,视频编码器20可显式地编码新调色板条目的像素值,并将其发射到视频解码器30。视频编码器20的基于调色板的编码单元122可接着通过为当前块的识别当前调色板中用以表示当前块的像素值的调色板条目的一或多个像素值确定索引值,来编码当前块。
本发明中描述的技术还可包含用于以下各项中的一或多者的各种组合的技术:发信号通知基于调色板的译码模式;发射调色板;预测调色板;导出调色板,或发射基于调色板的译码图和其它语法元素。
图3是说明经配置以实施本发明的技术的实例视频解码器30的框图。图3是出于解释的目的而提供,并且不将技术限制为本发明中所大致例示和描述的技术。出于解释的目的,本发明在HEVC译码的上下文中描述视频解码器30。然而,本发明的技术可适用于其它译码标准或方法。
视频解码器30表示可经配置以执行根据本发明中描述的各种实例的用于基于调色板的视频译码的技术的装置的实例。举例来说,视频解码器30可经配置以使用基于调色板的译码或非基于调色板的译码选择性对例如HEVC译码中的CU或PU等各种视频数据块进行解码。非基于调色板的译码模式可指代各种帧间预测性时间译码模式或帧内预测性空间译码模式,例如由HEVC草案10指定的各种译码模式。在一个实例中,视频解码器30可经配置以产生具有指示像素值的条目的调色板。此外,在此实例中,视频解码器30可接收使视频数据块的至少一些位置与调色板中的条目关联的信息。在此实例中视频解码器30可基于所述信息来选择调色板中的像素值,且基于选定像素值来重构所述块的像素值。
在图3的实例中,视频解码器30包含视频数据存储器148、熵解码单元150、预测处理单元152、逆量化单元154、逆变换处理单元156、重构单元158、滤波器单元160和经解码图片缓冲器162。预测处理单元152包含运动补偿单元164和帧内预测处理单元166。视频解码器30还包含基于调色板的解码单元165,其经配置以执行本发明中描述的基于调色板的译码技术的各种方面。在其它实例中,视频解码器30可包含更多、更少或不同的功能组件。
视频数据存储器148可存储待由视频解码器30的组件解码的视频数据,例如经编码视频位流。存储在视频数据存储器148中的视频数据可例如从计算机可读媒体16获得,例如经由视频数据的有线或无线网络通信从本地视频源(例如相机)或通过存取物理数据存储媒体而获得。视频数据存储器148可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(CPB)。经解码图片缓冲器162可为参考图片存储器,其存储用于通过视频解码器30例如在帧内或帧间译码模式中对视频数据进行解码的参考视频数据。视频数据存储器148和经解码图片缓冲器162可由多种存储器装置中的任一者形成,例如动态随机存取存储器(DRAM),包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。视频数据存储器148和经解码图片缓冲器162可由相同存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器148可与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。
视频数据存储器148(即,CPB)可接收并存储位流的经编码视频数据(例如NAL单元)。熵解码单元150可从视频数据存储器148接收经编码视频数据(例如NAL单元),且可剖析NAL单元以解码语法元素。熵解码单元150可对NAL单元中的经熵编码的语法元素进行熵解码。预测处理单元152、逆量化单元154、逆变换处理单元156、重构单元158和滤波器单元160可基于从位流获得(例如提取)的语法元素来产生经解码视频数据。
位流的NAL单元可包含经译码切片NAL单元。作为对位流进行解码的部分,熵解码单元150可从经译码切片的NAL单元提取语法元素且对所述语法元素进行熵解码。经译码切片中的每一者可包含切片标头以及切片数据。切片标头可含有关于切片的语法元素。切片标头中的语法元素可包含识别与含有切片的图片相关联的PPS的语法元素。
除了对来自位流的语法元素进行解码之外,视频解码器30可对未分割CU执行重构操作。为了对未分割CU执行重构操作,视频解码器30可对CU的每一TU执行重构操作。通过对CU的每一TU执行重构操作,视频解码器30可重构CU的残差块。
作为对CU的TU执行重构操作的一部分,逆量化单元154可逆量化(即,去量化)与TU相关联的系数块。逆量化单元154可使用与TU的CU相关联的QP值来确定量化的程度,以及同样逆量化单元154将应用的逆量化的程度。也就是说,可通过调整当量化变换系数时所使用的QP的值来控制压缩比,即用以表示原始序列以及经压缩的序列的位的数目的比率。压缩比还可取决于所采用的熵译码的方法。
在逆量化单元154逆量化系数块之后,逆变换处理单元156可将一或多个逆变换应用于系数块以便产生与TU相关联的残差块。例如,逆变换处理单元156可将逆DCT、逆整数变换、逆卡忽南-拉维(Karhunen-Loeve)变换(KLT)、逆旋转变换、逆定向变换或另一逆变换应用于系数块。
如果使用帧内预测对PU进行编码,那么帧内预测处理单元166可执行帧内预测以产生用于PU的预测性块。帧内预测处理单元166可使用帧内预测模式,以基于空间上相邻的PU的预测块产生PU的预测性亮度、Cb和Cr块。帧内预测处理单元166可基于从位流解码的一或多个语法元素来确定用于PU的帧内预测模式。
预测处理单元152可基于从位流提取的语法元素来构建第一参考图片列表(RefPicList0)以及第二参考图片列表(RefPicList1)。此外,如果使用帧间预测对PU进行编码,那么熵解码单元150可提取用于PU的运动信息。运动补偿单元164可基于PU的运动信息来确定用于PU的一个或一个以上参考区。运动补偿单元164可基于在PU的一或多个参考块处的样本块而产生PU的预测性块(例如,预测性亮度、Cb和Cr块)。
重构单元158可使用与CU的TU相关联的变换块(例如,亮度、Cb和Cr变换块)以及CU的PU的预测性块(例如,亮度、Cb和Cr块)(即,在适用时,帧内预测数据或帧间预测数据)来重构CU的译码块(例如,亮度、Cb和Cr译码块)。举例来说,重构单元158可将变换块(例如亮度、Cb和Cr变换块)的样本添加到预测块(例如预测性亮度、Cb和Cr块)的对应样本,来重构CU的译码块(例如亮度、Cb和Cr译码块)。
滤波器单元160可执行去块操作以减少与CU的译码块(例如,亮度、Cb和Cr译码块)相关联的成块假影。视频解码器30可将CU的译码块(例如亮度、Cb和Cr译码块)存储在经解码图片缓冲器162中。经解码图片缓冲器162可提供参考图片以用于后续运动补偿、帧内预测以及在例如图1的显示装置32等显示装置上的呈现。举例来说,视频解码器30可基于经解码图片缓冲器162中的块(例如,亮度、Cb和Cr块)对其它CU的PU执行帧内预测或帧间预测操作。以此方式,视频解码器30可从位流提取有效系数块的变换系数层级,对所述变换系数层级进行逆量化,对所述变换系数层级应用变换以产生变换块,至少部分基于变换块产生译码块并且输出译码块以供显示。
根据本发明的各种实例,视频解码器30可经配置以执行基于调色板的译码。当基于调色板的解码模式经选择(例如)用于CU或PU时,基于调色板的解码单元165(例如)可执行基于调色板的解码。举例来说,基于调色板的解码单元165可经配置以产生具有指示像素值的条目的调色板。此外,在此实例中,基于调色板的解码单元165可接收使视频数据块的至少一些位置与调色板中的条目关联的信息。在此实例中基于调色板的解码单元165可基于所述信息来选择调色板中的像素值。另外,在此实例中基于调色板的解码单元165可基于选定像素值来重构所述块的像素值。虽然将各种功能描述为由基于调色板的解码单元165执行,但此些功能中的一些或全部可由其它处理单元或不同处理单元的组合来执行。
基于调色板的解码单元165可接收调色板译码模式信息,且当调色板译码模式信息指示调色板译码模式应用于块时执行上述操作。当调色板译码模式信息指示调色板译码模式未应用于块时,或当其它模式信息指示不同模式的使用时,基于调色板的解码单元165当调色板译码模式信息指示调色板译码模式未应用于块时使用非基于调色板的译码模式对视频数据块进行解码,例如此HEVC帧间预测性或帧内预测性译码模式。视频数据块可(例如)为根据HEVC译码过程产生的CU或PU。视频解码器30可以帧间预测性时间预测或帧内预测性空间译码模式对一些块进行解码且以基于调色板的译码模式对其它块进行解码。基于调色板的译码模式可包括多个不同基于调色板的译码模式中的一者,或可存在单个基于调色板的译码模式。
根据本发明的技术中的一或多者,视频解码器30,并且具体地说基于调色板的解码单元165,可执行所预测视频块的基于调色板的视频解码。如上文所描述,视频解码器30所产生的调色板可由视频编码器20显式地编码,从先前调色板条目预测,从先前像素值预测,或其组合。
在一个实例中,视频解码器30的基于调色板的解码单元165确定预测性调色板中复制到当前视频数据块的当前调色板的一或多个调色板条目,且确定不在预测值调色板中但包含于当前调色板中的新调色板条目的数目。视频解码器30可从视频编码器20接收关于复制的调色板条目和新调色板条目的信息。另外,视频解码器30可接收从视频编码器20发射的新调色板条目的经显式编码的像素值。基于此信息,基于调色板的解码单元165将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和,且产生包含复制的调色板条目和新调色板条目的所确定大小的当前调色板。视频解码器30的基于调色板的解码单元165可接着通过为当前块的识别当前调色板中用以表示当前块的像素值的调色板条目的一或多个像素值确定索引值,来解码当前块。
本发明中描述的技术还可包含用于以下各项中的一或多者的各种组合的技术:发信号通知基于调色板的译码模式;发射调色板;预测调色板;导出调色板,或发射基于调色板的译码地图和其它语法元素。
如上文所描述,在一些实例中,视频编码器20和/或视频解码器30可执行所预测视频块的基于调色板的译码。在一个实例中,视频编码器20首先基于当前块中的像素值为当前块导出调色板,且接着将当前块中的像素值映射到调色板索引来进行编码。映射可为一对一(即,针对无损译码)或多对一(即,针对有损译码)。视频编码器20还可映射经先前译码块中可用以预测当前块中的像素值的参考像素值。一旦视频编码器20将当前块的像素值映射到调色板索引,视频编码器20就使用常规编码方法(例如HEVC标准中的常规帧内译码)来编码当前块。
在以上实例中,如同是具有像素值的原始块那样来处理具有调色板索引的当前块。类似地,参考像素的调色板索引用于对具有调色板索引的当前块执行常规帧内预测。视频编码器20可将预测误差或残差值发射到视频解码器30。在一些情况下,可将预测误差或残差值变换、量化和熵编码到位流中。在其它情况下,针对调色板译码模式停用变换和量化也是可能的。在编码当前块之后,视频编码器20可将参考像素、预测像素和/或残差值的索引转换回到像素值,以用于当前块的重构和将来块的一般预测。视频解码器30可从位流获得当前块的经编码残差值。此外,视频解码器30可使用常规解码方法来解码当前块,以获得具有调色板索引的当前块。视频解码器30可接着基于调色板中与所述调色板索引相关联的像素值来确定当前块的像素值。
在另一实例中,视频编码器20可产生当前块的调色板。调色板可包含指示给定块的预测残差值的条目。可使用任何预测模式,例如HEVC标准中的常规帧间预测或帧内预测来产生给定块的预测残差值。给定块的预测残差值可为残差像素值(可能经量化)或残差变换系数值(可能经量化)。在此实例中,视频编码器20将当前块的预测残差值映射到指示当前块的调色板中用以表示当前块的预测残差值的索引值。在此实例中,视频编码器20可编码当前块中的一或多个位置的索引值,其中所述索引值指示当前块的调色板中指定当前块的预测残差值的条目。视频解码器30可从位流获得索引值的经编码块,并基于调色板中由所述索引值识别的对应预测残差值来确定当前块的预测残差值。视频解码器30可接着基于预测残差值和经先前译码的参考像素值,使用常规解码方法来重构当前块的像素值。
在一些实例中,视频编码器20和/或视频解码器30可通过应用帧内预测模式(即,仅使用当前图片中的经先前译码像素信息的预测)来执行具有视频块预测的基于调色板的视频译码。在其它实例中,视频编码器20和/或视频解码器30可应用帧间预测模式(即,所述预测是从经先前译码图片中的像素进行)。在一个实例中,当前块的预测残差值可为从当前块的像素值和经先前译码的参考像素值计算的当前块的残差像素值。可对残差像素值进行量化。在另一实例中,当前块的预测残差值可为从当前块的像素值和经先前译码的参考像素值计算,且接着经变换和可能经量化的当前块的残差变换系数值。
在一些情况下,视频编码器20和/或视频解码器30可通过仅将预测模式过程的子集用于帧间预测模式或帧内预测模式,来为当前块确定预测残差值。举例来说,在帧内预测模式的情况下,可启用DC、水平和/或垂直预测过程,但可停用其它帧内预测模式过程。停用的过程可包含帧内预测模式下的滤波,例如在此实例中停用模式相关帧内平滑(MDIS)、1/32像素双线性内插、边缘滤波和/或DC滤波中的一或多者(可在2013年10月14日申请的标题为“对视频译码中的帧内预测的自适应滤波器控制(AdaptiveFilterControlforIntraPredictioninVideoCoding)”的第61/890,844号美国临时申请案,申请参考号1212-671USP3/134960P3中找到背景介绍)。作为另一个实例,在帧间预测模式的情况下,可停用像素过程的平均,例如经加权预测/双向预测或子像素内插中的一或多者。
在另一实例中,视频编码器20和/或视频解码器30可不对当前块执行预测。在此情况下,视频编码器20代替地将像素值映射到调色板索引,并使用熵译码来编码所述索引而不预测。在额外实例中,视频编码器20和/或视频解码器30可使用当前块的映射到调色板索引值的像素值来执行残差差分脉码调制(RDPCM)。在此情况下,不使用从当前块外部的像素的预测,且可将水平或垂直预测用于当前CU内的行复制索引值。举例来说,当使用垂直预测时,不预测当前块的第一行中的定位,且可使用先前行中的值来预测后续行中的定位,例如使用x(i-1,j)来预测等于x(i,j)的行i(i>0)中的值。当使用水平预测时,不预测当前块的第一列中的定位,且可使用先前列中的值来预测后续列中的定位。
在一些实例中,用于视频数据的基于调色板的译码的技术可与例如用于帧间或帧内预测性译码的技术等一或多个其它译码技术一起使用。举例来说,如下文更详细地描述,编码器或解码器或组合编码器-解码器(编解码器)可经配置以执行帧间和帧内预测性译码以及基于调色板的译码。
图4是说明与本发明的技术一致的确定用于对视频数据进行译码的调色板的实例的概念图。图4的实例包含图片178,其具有与第一组调色板(即,第一调色板184)相关联的第一译码单元(CU)180,以及与第二组调色板(即,第二调色板192)相关联的第二CU188。如下文更详细描述且根据本发明的技术中的一或多者,第二调色板192基于第一调色板184。图像178还包含以帧内预测译码模式译码的块196和以帧间预测译码模式译码的块200。
出于解释的目的,在视频编码器20(图1和图2)和视频解码器30(图1和图3)的上下文中且相对于HEVC视频译码标准描述图4的技术。相对于HEVC框架,作为实例,基于调色板的译码技术可经配置以用作CU模式。在其它实例中,基于调色板的译码技术可经配置以用作HEVC的框架中的PU模式或TU模式。因此,在CU模式的上下文中描述的所有以下所揭示的过程可另外或替代地应用于PU或TU。然而,应理解,本发明的技术不限于此方式,且可由其它视频译码处理器和/或装置在其它视频译码过程和/或标准中应用。
一般来说,调色板是指对于当前正译码的CU(例如图4的实例中的CU188)来说为主要和/或代表性的若干像素值。将第一调色板184和第二调色板192示出为包含多个调色板。在一些实例中,根据本发明的方面,视频译码器(例如视频编码器20或视频解码器30)可针对CU的每一色彩分量单独地对调色板进行译码。举例来说,视频编码器20可为CU的亮度(Y)分量编码一调色板、为CU的色度(U)分量编码另一调色板以及为CU的色度(V)分量编码又一调色板。在此实例中,Y调色板的条目可表示CU的像素的Y值,U调色板的条目可表示CU的像素的U值,且V调色板的条目可表示CU的像素的V值。
在其它实例中,视频编码器20可针对CU的所有色彩分量编码单个调色板。在此实例中,视频编码器20可对具有为包含Yi、Ui和Vi的三重值的第i条目的调色板进行编码。在此情况下,调色板包含像素的分量中的每一者的值。因此,作为具有多个个别调色板的调色板的集合的调色板184和192的表示仅是一个实例且并不希望为限制性的。
在图4的实例中,第一调色板184中的每一者包含三个条目202到206,其分别具有条目索引值1、条目索引值2和条目索引值3。条目202到206使索引值分别与包含像素值A、像素值B和像素值C的像素值相关。应注意,第一调色板184中的每一者实际上不包含索引和列标头,而是仅包含像素值A、B和C,以及用以识别调色板中的条目的索引。
如本文中所描述,并非译码第一CU180的实际像素值,视频译码器(例如视频编码器20或视频解码器30)可使用基于调色板的译码,使用索引1到3来译码所述块的像素。也就是说,对于第一CU180的每一像素位置,视频编码器20可编码像素的索引值,其中所述索引值与第一调色板184中的一或多者中的像素值相关联。视讯解码器30可从位流获得索引值,且使用所述索引值以及第一调色板中的一或多者来重构像素值。换句话说,对于块的每一相应索引值,视频解码器30可确定第一调色板184中的一者中的条目。视频解码器30可用调色板中的所确定条目所指定的像素值来代替所述块中的相应索引值。视频编码器20可在经编码的视频数据位流中发射第一调色板184,以供视频解码器30用于基于调色板的解码。一般来说,针对每一CU可发射一或多个调色板,或可在不同CU之间共享一或多个调色板。
根据本发明的方面,视频编码器20和视频解码器30可基于第一调色板184来确定第二调色板192。举例来说,视频编码器20可为每一CU(作为一实例,包含第二CU188)编码pred_palette_flag,以指示CU的调色板是否是从与一或多个其它CU(例如相邻CU(空间上或基于扫描次序)或因果相邻者的最频繁样本相关联的一或多个调色板预测。举例来说,当此旗标的值等于一时,视频解码器30可确定第二CU188的第二调色板192是从一或多个已经解码调色板预测,并且因此没有第二CU188的新调色板包含在含有pred_palette_flag的位流中。当此旗标等于零时,视频解码器30可确定第二CU188的调色板192包含在位流中作为新调色板。在一些实例中,pred_palette_flag可针对CU的每一不同色彩分量单独地译码(例如,用于YUV视频中的CU的三个旗标,一个用于Y,一个用于U,且一个用于V)。在其它实例中,可针对CU的所有色彩分量译码单个pred_palette_flag。
在以上实例中,每CU发信号通知pred_palette_flag以指示当前块的调色板的条目中的任一者是否经预测。这表示与第一调色板184相同的第二调色板192,且不发信号通知额外信息。在其它实例中,可在每条目基础上发信号通知一或多个语法元素。那是可针对调色板预测符的每一条目发信号通知以指示所述条目是否存在于当前调色板中的旗标。如上所述,如果调色板条目并未预测,那么可显式地发信号通知所述调色板条目。在其它实例中,可组合这两种方法。举例来说,首先发信号通知pred_palette_flag。如果所述旗标为0,可发信号通知每条目预测旗标。另外,可发信号通知新条目的数目及其显式值。
当相对于第一调色板184确定第二调色板192(例如,pred_palette_flag等于一)时,视频编码器20和/或视频解码器30可定位预测性调色板(在此实例中为第一调色板184)从其确定的一或多个块。预测性调色板可与当前正译码的CU(即,第二CU188)的一或多个相邻CU(例如,例如相邻CU(空间上或基于扫描次序)或因果相邻者的最频繁样本)相关联。一或多个相邻CU的调色板可与预测符调色板相关联。在一些实例(例如图4中所说明的实例)中,当为第二CU188确定预测性调色板时,视频编码器20和/或视频解码器30可定位左相邻CU,第一CU180。在其它实例中,视频编码器20和/或视频解码器30可将一或多个CU定位在相对于第二CU188(例如上部,CU196)的其它位置中。在另一实例中,用于使用调色板模式的扫描次序中的上一CU的调色板可用作预测性调色板。
视频编码器20和/或视频解码器30可基于层级确定用于调色板预测的CU。举例来说,视频编码器20和/或视频解码器30可最初识别用于调色板预测的左相邻CU,第一CU180。如果左相邻CU不可用于预测(例如用不同于基于调色板的译码模式的模式(例如帧内预测模式或帧内预测模式)来译码左相邻CU,或左相邻CU位于图片或切片的最左边缘处),那么视频编码器20和/或视频解码器30可识别上部相邻CU,CU196。视频编码器20和/或视频解码器30可根据定位的预定次序继续搜索可用CU,直到定位到具有可用于调色板预测的调色板的CU为止。在一些实例中,视频编码器20和/或视频解码器30可基于多个块和/或相邻块的经重构样本确定预测性调色板。
虽然图4的实例将第一调色板184说明为来自单个CU(即,第一CU180)的预测性调色板,但在其它实例中,视频编码器20和/或视频解码器30可从相邻CU的组合定位用于预测的调色板。举例来说,视频编码器20和/或视频解码器可应用一或多个公式、函数、规则等来基于多个相邻CU(空间上或在扫描次序中)中的一者或组合的调色板来产生预测性调色板。
在又其它实例中,视频编码器20和/或视频解码器30可构建包含用于调色板预测的若干潜在候选者的候选者列表。在此些实例中,视频编码器20可编码到候选者列表的索引以指示从其选择用于调色板预测的当前CU(例如,复制调色板)的列表中的候选者CU。视频解码器30可以相同方式构建候选者列表,解码索引,且使用经解码索引选择用于与当前CU一起使用的对应CU的调色板。在另一实例中,列表中所指示的候选CU的调色板可用作当前CU的当前调色板的每条目预测的预测性调色板。
在用于说明目的的实例中,视频编码器20和视频解码器30可构造包含定位于当前正译码CU上方的一个CU和定位于当前正译码CU的左边的一个CU的候选者列表。在此实例中,视频编码器20可编码一或多个语法元素以指示候选者选择。举例来说,视频编码器20可编码具有零值的旗标以指示当前CU的调色板是从定位于当前CU的左边的CU复制。视频编码器20可编码具有值一的旗标以指示当前CU的调色板是从定位于当前CU上方的CU复制。视频解码器30解码所述旗标且选择用于调色板预测的适当CU。在另一实例中,所述旗标可指示顶部或左相邻CU的调色板是否用作预测性调色板。接着,对于预测性调色板中的每一条目,其可指示所述条目是否用于当前CU的调色板中。
在其它实例中,视频编码器20和/或视频解码器30基于包含在一或多个其它调色板中的样本值在一或多个相邻CU中出现的频率而确定当前正译码CU的调色板。举例来说,视频编码器20和/或视频解码器30可在预定数目的CU的译码期间跟踪与最频繁使用的索引值相关联的色彩。视频编码器20和/或视频解码器30可将最频繁使用的色彩包含在当前正译码CU的调色板中。
如上所述,在一些实例中,视频编码器20和/或视频解码器可从用于对当前CU进行译码的相邻CU复制整个调色板。另外或替代地,视频编码器20和/或视频解码器30可执行基于逐条目的调色板预测。举例来说,视频编码器20可针对调色板的每一条目编码一或多个语法元素,其指示相应条目是否是基于预测性调色板(例如,另一CU的调色板)而预测。在此实例中,当条目为来自预测性调色板的预测值(例如与相邻CU相关联的调色板的对应条目)时,视频编码器20可编码针对给定条目具有值一的旗标。视频编码器20可针对特定条目编码具有值零的旗标以指示所述特定条目并未从另一CU的调色板预测。在此实例中,视频编码器20还可对指示非预测调色板条目的值的额外数据进行编码。
本发明描述用于为当前CU预测调色板的若干替代技术。在一个实例中,包含来自一或多个经先前译码相邻CU的调色板条目的预测性调色板包含若干(N个)条目。在此情况下,视频编码器20首先向视频解码器30发射二进制向量V,其与预测性调色板具有相同大小,即,大小为N。二进制向量中的每一条目指示预测性调色板中的对应条目是否将被重新使用或被复制到当前CU的调色板。举例来说,V(i)=1意味着相邻CU的预测性调色板中的第i个条目将被重新使用或被复制到当前CU的调色板,其可在当前CU中具有不同索引。
另外,视频编码器20可发射数目M,其指示有多少新调色板条目包含于当前CU的调色板中,且接着将新调色板条目中的每一者的像素值发射到视频解码器30。在此实例中,可将当前CU的调色板的最终大小导出为等于M+S,其中S是预测性调色板中可被重新使用或被复制到当前CU的调色板的条目的数目(即,V(i)=1)。为了产生当前CU的调色板,视频解码器30可合并所发射的新调色板条目与从预测性调色板重新使用的所复制调色板条目。在一些情况下,所述合并可基于像素值,使得当前CU的调色板中的条目可随着调色板索引而增加(或减小)。在其它情况下,合并可为两组条目(即,新调色板条目和复制的调色板条目)的串接。
在另一实例中,视频编码器20首先将当前CU的调色板的大小N的指示发射到视频解码器30。视频编码器20接着将具有与当前CU的调色板相同大小(即,大小N)的向量V发射到视频解码器30。向量中的每一条目指示当前CU的调色板中的对应条目是由视频编码器20显式地发射还是从预测性调色板复制。举例来说,V(i)=1意味着视频编码器20将调色板中的第i个条目发射到视频解码器30,且V(i)=0意味着调色板中的第i个条目是从预测性调色板复制。对于从预测性调色板复制的条目(即,V(i)=0),视频编码器20可使用不同方法来发信号通知预测性调色板中的哪一条目用于当前CU的调色板中。在一些情况下,视频编码器20可发信号通知将从预测性调色板复制到当前CU的调色板的条目的调色板索引。在其它情况下,视频编码器20可发信号通知索引偏移,其为当前CU的调色板中的索引与预测性调色板中的索引之间的差异。
在两个以上实例中,用以产生用于当前CU的调色板的预测的预测性调色板的一或多个经先前译码相邻CU可为相对于当前CU的顶部相邻(即,上部)CU或左相邻CU。在一些实例中,可构建相邻CU的候选列表,且视频编码器20发射指示哪一候选相邻CU和相关联的调色板用于当前CU的调色板预测的索引。对于某些CU,例如位于切片开头或其它切片边界的CU或视频数据的切片或图片中的最左CU,可停用调色板预测。
在额外实例中,视频编码器20将包含于当前CU的调色板中的条目的数目的指示发射到视频解码器30。接着,对于调色板条目中的每一者,视频编码器20发射旗标或其它语法元素,以指示调色板条目是否由视频编码器20显式地发射,或其是否从先前经重构像素导出。举例来说,设定成等于的一位旗标可意味着视频编码器20显式地发送调色板条目,且设定成等于的一位旗标可意味着调色板条目是从先前经重构像素导出。对于从先前经重构像素导出的调色板条目中的每一者,视频编码器20发射关于当前CU或相邻CU中对应于调色板条目的经重构像素的像素位置的另一指示。在一些情况下,经重构的像素位置指示可为相对于当前CU的左上位置的移位向量。在其它情况下,经重构的像素位置指示可为到可用于为当前CU指定调色板条目的经重构像素列表中的索引。举例来说,此列表可包含可用于HEVC中的一般帧内预测的所有参考像素。
在图4的实例中,第二调色板192包含四个条目208到214,其分别具有条目索引值1、条目索引值2、条目索引值3和条目索引4。条目208到214使索引值相关到分别包含像素值A、像素值B、像素值C和像素值D的像素值。根据本发明的一个或一个以上方面,视频编码器20和/或视频解码器30可使用上文所描述的技术中的任一者来定位用于调色板预测目的的第一CU180,并将第一调色板184的条目1到3复本到第二调色板192的条目1到3,以用于译码第二CU188。以此方式,视频编码器20和/或视频解码器30可基于第一调色板184确定第二调色板192。另外,视频编码器20和/或视频解码器30可译码用于条目4的数据,以与第二调色板192包含在一起。此类信息可包含不是从预测性调色板预测的调色板条目的数目,以及对应于那些调色板条目的像素值。
在一些实例中,根据本发明的方面,一或多个语法元素可指示例如第二调色板192的调色板是否是完全从预测性调色板(图4中展示为第一调色板184,但其可由来自一或多个块的条目组成)预测或第二调色板192的特定条目是否经预测。举例来说,初始语法元素可指示所有条目是否经预测。如果初始语法元素指示并非所有条目经预测(例如,具有值0的旗标),那么一或多个额外语法元素可指示第二调色板192的哪些条目是从预测性调色板预测。
根据本发明的一些方面,与调色板预测相关联的某些信息可从正译码数据的一或多个特性推断。也就是说,并非视频编码器20编码语法元素(且视频解码器30解码此些语法元素),视频编码器20和视频解码器30可基于正译码数据的一或多个特性执行调色板预测。
在一实例中,出于说明的目的,上述pred_palette_flag的值可从以下各者(作为实例)中的一或多者推断:正译码CU的大小、帧类型、色彩空间、色彩分量、帧大小、帧速率、可缩放视频译码中的层id,或多视图译码中的视图id。即,相对于作为一实例的CU的大小,视频编码器20和/或视频解码器30可确定对于超过或小于预定大小的任何CU,上述pred_palette_flag等于一。在此实例中,并不需要在经编码位流中发信号通知pred_palette_flag。
虽然上文相对于pred_palette_flag而描述,但视频编码器20和/或视频解码器30还可或替代地基于正译码数据的一或多个特性推断与调色板预测相关联的其它信息,例如调色板用于从其预测的候选者CU,或用于构造调色板预测候选者的规则。
根据本发明的其它方面,视频编码器20和/或视频解码器30可在运行中构建调色板。举例来说,当最初译码第二CU188时,调色板192中不存在条目。随着视频编码器20和视频解码器30为第二CU188的像素译码新的值,每一新值包含于调色板192中。也就是说,举例来说,视频编码器20可在针对CU188中的位置产生且发信号通知像素值时将像素值添加到调色板192。随着视频编码器20编码CU中相对后面的像素,视频编码器20可使用索引值而不是发信号通知像素值,来编码具有与已经包含于调色板中的那些像素相同的值的像素。类似地,当视频解码器30接收到用于第二CU188中的位置的(例如,由视频编码器20发信号通知的)新像素值时,视频解码器30将所述像素值包含在调色板192中。当第二CU188中相对后面解码的像素位置具有已经添加到第二调色板192的像素值时,视频解码器30可接收信息。例如索引值,其识别第二调色板192中的对应像素值,用于重构第二CU188的像素值。
在一些实例中,如下文更详细地描述,视频编码器20和/或视频解码器30可将调色板184和192维持在最大调色板大小或低于最大调色板大小。根据本发明的方面,如果达到最大调色板大小,例如随着在运行中动态地构建第二调色板192,那么视频编码器20和/或视频解码器30执行相同过程来移除第二调色板192的条目。用于移除调色板条目的一个实例过程是其中视频编码器20和视频解码器30移除调色板的最老条目的先进先出(FIFO)技术。在另一个实例中,视频编码器20和视频解码器30可从调色板移除最不频繁使用的调色板条目。在再一实例中,视频编码器20和视频解码器30可对FIFO和使用过程的频率进行加权以确定移除哪一条目。也就是说,条目的移除可基于条目有多旧以及条目使用的频繁程度。
根据一些方面,如果条目(像素值)从调色板移除且像素值在正译码CU中的较晚位置处再次发生,那么视频编码器20可对所述像素值进行编码而不是在调色板中包含条目且对索引进行编码。另外或替代地,视频编码器20可在已经移除之后,例如在视频编码器20和视频解码器30扫描CU中的位置时,将调色板条目再输入到调色板中。
在一些实例中,用于在运行中导出调色板的技术可与用于确定调色板的一或多个其它技术组合。显式地说,作为一实例,视频编码器20和视频解码器30最初可译码第二调色板192(例如使用调色板预测来从第一调色板184预测第二调色板192),且可在译码第二CU188的像素时,更新第二调色板192。举例来说,在发射初始调色板后,视频编码器20可即刻将值添加到初始调色板,或在扫描CU中的额外位置的像素值时改变初始调色板中的值。同样地,在接收到初始调色板后,视频解码器30可将值添加(即,包含)到初始调色板,或随着扫描CU中的额外定位的像素值而改变初始调色板中的值。
视频编码器20可在一些实例中发信号通知当前CU是否使用整个调色板的发射、或在运行中的调色板产生,或者初始调色板的发射与通过在运行中的导出的初始调色板的更新的组合。在一些实例中,初始调色板可为处于最大调色板大小的全调色板,在此情况下可改变初始调色板中的值。在其它实例中,初始调色板可小于最大调色板大小,在此情况下视频编码器20和视频解码器30可将值添加到初始调色板和/或改变初始调色板的值。
根据本发明根据的一个或一个以上方面,例如第一调色板184和第二调色板192等调色板的大小(例如依据包含于调色板中的像素值的数目)可为固定的或可使用经编码位流中的一或多个语法元素来发信号通知。举例来说,根据一些方面,视频编码器20和视频解码器30可使用一元码或截断一元码(例如,在调色板大小的最大限制处截断的码)对调色板大小进行译码。根据其它方面,视频编码器20和视频解码器30可使用指数-哥伦布或莱斯-哥伦布码对调色板大小进行译码。
根据再其它方面,视频编码器20和视频解码器30可在调色板的每一条目之后对指示调色板的大小的数据进行译码。相对于第二调色板192,作为一实例,视频编码器20可条目208到214中的每一者之后编码停止旗标。在此实例中,等于一的停止旗标可指定当前正译码的条目是第二调色板192的最后条目,而等于零的停止旗标可指示第二调色板192中存在额外条目。因此,视频编码器20可在条目208到212中的每一者之后编码具有值零的停止旗标,且在条目214之后编码具有值一的停止旗标。在一些例子下,停止旗标可不包在所构建的调色板达到最大调色板大小限制后即刻含于位流中。虽然以上实例揭示用于显式地发信号通知调色板的大小的技术,但在其它实例中,调色板的大小也可以基于所谓的辅助信息(例如,特性信息,例如正译码CU的大小、帧类型、色彩空间、色彩分量、帧大小、帧速率、可缩放视频译码中的层id或多视图译码中的视图id,如上所述)有条件地发射或推断。
本发明的技术包含无损地或者以某些损失(有损译码)对数据进行译码。举例来说,相对于有损译码,视频编码器20可对CU的像素进行译码而无需确切地将调色板的像素值确切匹配于CU中的实际像素值。当本发明的技术应用于有损译码时,一些限制可应用于调色板。举例来说,视频编码器20和视频解码器30可量化调色板,例如第一调色板184和第二调色板192。也就是说,当条目的像素值在彼此的预定范围内时,视频编码器20和视频解码器30可合并或组合(即,量化)调色板的条目。换句话说,如果已经存在在新调色板值的错误裕度内的调色板值,那么不将新调色板值添加到调色板。在另一个实例中,块中的多个不同像素值可映射到单个调色板条目,或等效地映射到单个调色板像素值。
视频解码器30可以相同方式解码像素值,不管特定调色板是无损的还是有损的。作为一个实例,视频解码器30可针对经译码块中的给定像素位置使用由视频编码器20发射的索引值来选择调色板中用于所述像素位置的条目,而无关于所述调色板是无损的还是有损的。在此实例中,调色板条目的像素值用作经译码块中的像素值,无论其是否确切地匹配原始像素值。
在有损译码的实例中,出于说明的目的,视频编码器20可确定误差界限,称为差量值。候选像素值条目Plt_cand可对应于在例如CU或PU等待译码块中的位置处的像素值。在调色板的建构期间,视频编码器20确定候选像素值条目Plt_cand与调色板中的所有现有像素值条目之间的绝对差。如果候选像素值条目Plt_cand与调色板中的现有像素值条目之间的所有绝对差大于差量值,那么视频编码器20可将像素值候选者添加到调色板作为条目。如果像素值条目Plt_cand与调色板中的至少一个现有像素值条目之间的绝对差等于或小于差量值,那么视频编码器20可不将候选像素值条目Plt_cand添加到调色板。因此,当对像素值条目Plt_cand进行译码时,视频编码器20可选择具有作为最接近于像素值条目Plt_cand的像素值的条目,进而将一些损失引入到系统中。当调色板由多个分量(例如三个色彩分量)组成时,个别分量值的绝对差和可以用于对照差量值进行比较。或者或另外,每一分量值的绝对差可对照第二差量值进行比较。
在一些实例中,上文提到的调色板中的现有像素值条目可能已经使用相似差量比较过程而添加。在其它实例中,调色板中的现有像素值可能已经使用其它过程而添加。举例来说,可将一或多个初始像素值条目添加到调色板(无需差量比较)以开始构造调色板的差量比较过程。上述过程可由视频编码器20和/或视频解码器30实施以产生明度和/或色度调色板。
上文相对于调色板构造描述的技术也可以由视频编码器20和视频解码器30在像素译码期间使用。举例来说,当像素值的编码时,视频编码器20可将像素的值与调色板中的条目的像素值进行比较。如果所述像素的值与调色板中的条目中的一者之间的绝对像素值差等于或小于差量值,那么视频编码器20可将所述像素值编码为调色板的条目。也就是说,在此实例中,视频编码器20当像素值产生对调色板条目的充分小(例如,在预定范围内)绝对差时使用调色板的条目中的一者编码所述像素值。
在一些实例中,视频编码器20可选择产生最小绝对像素值差(与正译码的像素值相比)的调色板条目来编码像素值。举例来说,视频编码器20可编码索引来指示将用于所述像素值的调色板条目,例如将用以在视频解码器30处经译码像素值重构的调色板像素值条目。如果像素的值与调色板中的所有条目之间的绝对像素值差大于差量,那么编码器可不使用调色板条目中的一者来编码像素值,而是可将所述像素的像素值(可能在量化之后)发射到视频解码器30(且可能将所述像素值作为条目添加到调色板)。
在另一个实例中,视频编码器20可选择调色板的条目以用于对像素值进行编码。视频编码器20可使用选定条目作为预测性像素值。也就是说,视频编码器20可确定表示实际像素值与选定条目之间的差的残差值且对所述残差进行编码。视频编码器20可针对块中通过调色板的条目预测的像素产生残差值,且可产生包含像素块的相应残差像素值的残差块。视频编码器20可随后将变换和量化(如上文相对于图2所提到)应用于所述残差块。以此方式,视频编码器20可产生经量化残差变换系数。在另一实例中,残差经无损译码(而不变换和量化)或无变换。
视频解码器30可逆变换且逆量化变换系数以再现残差块。视频解码器30可随后使用预测性调色板条目值和像素值的残差值重构像素值。举例来说,视频解码器30可将残差值与调色板条目值组合以重构经译码像素值。
在一些实例中,差量值可针对不同CU大小、图片大小、色彩空间或不同色彩分量而不同。差量值可为预定的或基于各种译码条件而确定。举例来说,视频编码器20可使用高级语法将差量值发信号通知给视频解码器30,所述高级语法例如为PPS、SPS、VPS和/或切片标头中的语法。在其它实例中,视频编码器20和视频解码器30可经预配置以使用相同固定差量值。在其它实例中,视频编码器20和/或视频解码器30可基于辅助信息(例如,例如CU大小、色彩空间、色彩分量或类似物,如上所述)自适应地导出差量值。
在一些实例中,可包含有损译码调色板模式作为HEVC译码模式。举例来说,译码模式可包含帧内预测模式、帧间预测模式、无损译码调色板模式和有损译码调色板模式。在HEVC译码中,如上文相对于图2和3所提到,量化参数(QP)用以控制允许的失真。用于基于调色板的译码的差量值可随QP而变而计算或另外确定。举例来说,上述差量值可为1<<(QP/6)或1<<((QP+d)/6),其中d是常数,且“<<”表示逐位左移位算子。
本发明中描述的使用有损译码技术的调色板的产生可由视频编码器20、视频解码器30或两者执行。举例来说,视频编码器20可使用上述差量比较技术产生CU的调色板中的条目,且发信号通知供视频解码器30使用的用于构造调色板的信息。即,视频编码器20可经配置以发信号通知指示用于CU的调色板中的条目的像素值的信息,且随后使用与此些调色板条目相关联的像素值对像素值进行编码。视频解码器30可使用此信息来构建调色板,且随后使用条目对经译码块的像素值进行解码。在一些实例中,视频编码器20可发信号通知识别经译码块的一或多个像素位置的调色板条目的索引值,且视频解码器30可使用所述索引值从调色板检索相关像素值条目。
在其它实例中,视频解码器30可经配置以通过应用上述差量比较技术构造调色板。举例来说,视频解码器30可接收用于经译码块内的位置的像素值,且确定所述像素值与调色板中的现有像素值条目之间的绝对差是否大于差量值。如果是,那么视频解码器30可添加所述像素值作为调色板中的条目,例如供以后用于使用视频编码器20发信号通知的对应索引值来对所述块的其它像素位置的像素值进行基于调色板的解码。在此情况下,视频编码器20和视频解码器30应用相同或相似的工艺来产生所述调色板。如果不是,那么视频解码器30可不将像素值添加到调色板。
在用于说明目的的实例中,视频解码器30可接收用于块中的各种像素位置的索引值或像素值。如果例如针对像素位置接收索引值,那么视频解码器30可使用所述索引值识别调色板中的条目,且使用所述调色板条目的像素值用于所述像素位置。如果针对像素位置接收像素值,那么视频解码器30可使用所接收的像素值用于所述像素位置,并且还可应用差量比较以确定所述像素值是否应添加到调色板且随后稍后用于调色板译码。
在编码器侧,如果用于块中的一位置的像素值产生所述像素值与调色板中的现有像素值条目之间小于或等于差量值的绝对差,那么视频编码器20可发送索引值以识别调色板中的条目以用于重构所述位置的像素值。如果用于块中的一位置的像素值产生所述像素值与调色板中的现有像素值条目之间全部大于差量值的绝对差值,那么视频编码器20可发送所述像素值且在调色板中添加所述像素值作为新条目。为了构建调色板,视频解码器30可使用由编码器发信号通知的差量值,依靠固定或已知差量值,或推断或导出差量值,例如如上文所描述。
如上所述,视频编码器20和/或视频解码器30可在对视频数据进行译码时使用包含帧内预测模式、帧间预测模式、无损译码调色板模式和有损译码调色板模式在内的译码模式。根据本发明的一些方面,视频编码器20和视频解码器30可对指示基于调色板的译码是否经启用的一或多个语法元素进行译码。举例来说,在每一CU处,视频编码器20可对例如旗标PLT_Mode_flag等语法元素进行编码。PLT_Mode_flag或其它语法元素可指示基于调色板的译码模式是否将用于给定CU(或在其它实例中为PU)。举例来说,此旗标可在经编码视频位流中在CU层级发信号通知,且随后由视频解码器30在对所述经编码视频位流进行解码时即刻接收。
在此实例中,等于1的此PLT_Mode_flag的值可指定当前CU是使用基于调色板的译码模式编码。在此情况下,视频解码器30可应用基于调色板的译码模式以对CU进行解码。在一些实例中,语法元素可指示用于CU的多个不同基于调色板的译码模式中的一者(例如,有损或无损)。等于0的此PLT_Mode_flag的值可指定当前CU是使用除调色板模式外的模式编码。举例来说,可使用多种帧间预测性、帧内预测性或其它译码模式中的任一者。当PLT_Mode_flag的值是0时,视频编码器20还可对额外数据进行编码以指示用于编码相应CU的特定模式(例如,HEVC译码模式)。PLT_Mode_flag的使用是出于实例的目的而描述。然而,在其它实例中,例如多位码等其它语法元素可用以指示基于调色板的译码模式是否将用于CU(或在其它实例中为PU)或指示多个模式中的哪一者将用于译码。
在一些实例中,上述旗标或其它语法元素可在比CU(或PU)层级高的层级发射。举例来说,视频编码器20可在切片层级发信号通知此旗标。在此情况下,等于1的值指示切片中的所有CU是使用调色板模式编码。在此实例中,在CU层级不发信号通知例如用于调色板模式或其它模式的额外模式信息。在另一个实例中,视频编码器20可在PPS、SPS或VPS中发信号通知此旗标。
根据本发明的一些方面,视频编码器20和/或视频解码器30可在切片、PPS、SPS或VPS层级中的一者处对一或多个语法元素(例如,例如上述旗标)进行译码,其指定调色板模式是否针对特定切片、图片、序列或类似物经启用或停用,同时PLT_Mode_flag指示基于调色板的译码模式是否用于每一CU。在此情况下,如果在切片、PPS、SPS或VPS层级处发送的旗标或其它语法元素指示调色板译码模式经停用,那么在一些实例中,可不需要发信号通知每一CU的PLT_Mode_flag。或者,如果在切片、PPS、SPS或VPS层级发送的旗标或其它语法元素指示调色板译码模式经启用,那么可进一步发信号通知PLT_Mode_flag以指示基于调色板的译码模式是否将用于每一CU。再次,如上所提到,用于指示CU的基于调色板的译码的这些技术的应用可另外或替代地用以指示PU的基于调色板的译码。
在一些实例中,可在位流中有条件地发信号通知上述语法元素。举例来说,视频编码器20和视频解码器30可基于CU的大小、帧类型、色彩空间、色彩分量、帧大小、帧速率、可缩放视频译码中的层id或多视图译码中的视图id而分别仅编码或解码语法元素。
虽然上述实例涉及例如以位流中的一或多个语法元素的显式信令,但在其它实例中,视频编码器20和/或视频解码器30可隐式地确定调色板译码模式是否有效和/或用于对特定块进行译码。视频编码器20和视频解码器30可基于例如CU的大小、帧类型、色彩空间、色彩分量、帧大小、帧速率、可缩放视频译码中的层id或多视图译码中的视图id而确定基于调色板的译码是否用于块。
虽然上文在CU(HEVC)的上下文中描述图4的技术,但应理解所述技术也可以应用于预测单元(PU)或其它视频译码过程和/或标准中。
图5是说明与本发明的技术一致的确定到视频块的调色板的索引的实例的概念图。举例来说,图5包含使与索引值相关联的像素的相应位置相关到调色板244的条目的索引值(值1、2和3)的映射240。调色板244可以与上文相对于图4描述的第一调色板184和第二调色板192类似的方式确定。
再次,出于解释的目的,在视频编码器20(图1和图2)和视频解码器30(图1和图3)的上下文中且相对于HEVC视频译码标准描述图5的技术。然而,应理解,本发明的技术不限于此方式,且可由其它视频译码处理器和/或装置在其它视频译码过程和/或标准中应用。
虽然在图5的实例中将映射240说明为包含每一像素位置的索引值,但应理解,在其它实例中,不是所有的像素位置均可与指示调色板244的指定所述块的像素值的条目的索引值相关联。也就是说,如上所述,在一些实例中,如果像素值不包含于调色板244中,那么视频编码器20可编码(且视频解码器30可从经编码位流获得)用于映射240中的位置的实际像素值(或其经量化版本)的指示。
在一些实例中,视频编码器20和视频解码器30可经配置以对指示哪些像素位置与索引值相关联的额外映射进行译码。举例来说,假定所述映射中的(i,j)条目对应于CU的(i,j)位置。视频编码器20可针对所述映射的每一条目(即,每一像素位置)编码一或多个语法元素,其指示所述条目是否具有相关联索引值。举例来说,视频编码器20可编码具有值一的旗标以指示在CU中的(i,j)位置的像素值是调色板244中的值中的一者。视频编码器20可在此实例中还编码调色板索引(图5的实例中展示为值1-3)以指示调色板中的像素值且允许视频解码器重构所述像素值。在调色板244包含单个条目和相关联像素值的实例中,视频编码器20可跳过索引值的发信号通知。视频编码器20可将旗标编码为具有值零以指示在CU中的(i,j)位置处的像素值不是调色板244中的值中的一者。在此实例中,视频编码器20还可对供视频解码器30用于重构像素值的像素值的指示进行编码。在一些实例中,可以有损方式对像素值进行译码。
CU的一个位置中的像素的值可提供所述CU的其它位置中的一或多个其它像素的值的指示。举例来说,可存在CU的相邻像素位置将具有相同像素值或可映射到相同索引值(在有损译码的情况下,其中一个以上像素值可映射到单个索引值)的相对高概率。
因此,根据本发明的方面,视频编码器20可编码一或多个语法元素,其指示给定扫描次序中具有相同像素值或索引值的连续像素或索引值的数目。如上所述,相同值的像素或索引值的串在本文中可被称作延行。在用于说明目的的实例中,如果给定扫描次序中的两个连续像素或索引具有不同值,那么延行等于零。如果给定扫描次序中的两个连续像素或索引具有相同值但所述扫描次序中的第三像素或索引具有不同值,那么延行等于一。对于具有相同值的三个连续索引或像素,延行为二,等等。视频解码器30可从经编码位流获得指示延行的语法元素且使用所述数据确定具有相同像素或索引值的连续位置的数目。
在一些实例中,当前CU中具有位于当前CU的调色板中的像素值的所有像素定位均编码有调色板索引,接着是连续像素位置处的像素值的“延行”。在调色板中仅存在一个条目的情况下,调色板索引或“延行”的发射可跳过当前CU。在当前CU中的像素定位中的一者处的像素值不具有与调色板中的像素值的精确匹配的情况下,视频编码器20可选择调色板条目中具有最近像素值的一者,并计算原始像素值与包含于调色板中的预测像素值之间的预测误差或残差值。视频编码器20为像素位置编码残差值,并将其发射到视频解码器。视频解码器30可接着基于对应的接收到的调色板索引来导出所述像素定位处的像素值,且接着使用导出的像素值和残差值来预测当前CU中的像素定位处的原始像素值。在一个实例中,使用HEVC草案10所指定的HEVC方法(例如应用RQT来变换残差值,量化变换系数和对经量化变换系数进行熵编码)来编码残差值。在一些情况下,以上实例可被称为有损译码。
在出于说明的目的的实例中,考虑映射240的行248。假定水平的从左到右扫描方向,行248包含5个索引值“2”和三个索引值“3”。根据本发明的方面,视频编码器20可在所述扫描方向上为行248的第一位置编码索引值2。另外,视频编码器20可编码一或多个语法元素,其指示在扫描方向上具有与发信号通知的索引值相同的索引值的连续值的延行。在行248的实例中,视频编码器20可发信号通知延行4,进而指示在扫描方向上的随后四个位置的索引值共享与发信号通知的索引值相同的索引值。视频编码器20可对行248中的接下来的不同索引值执行相同的过程。也就是说,视频编码器20可编码索引值3和指示延行二的一或多个语法元素。视频解码器30可获得指示索引值和在扫描方向上具有相同索引值的连续索引的数目(延行)的语法元素。
如上所述,以特定次序扫描映射的索引。根据本发明的方面,扫描方向可为垂直、水平或处于对角线(例如,在框中成对角线地45度或135度)。在一些实例中,视频编码器20可对每一块的指示用于扫描所述块的索引的扫描方向的一或多个语法元素进行编码。另外或替代地,可基于例如块大小、色彩空间和/或色彩分量等所谓的辅助信息来发信号通知或推断扫描方向。视频编码器20可指定用于块的每一色彩分量的扫描。或者,指定扫描可应用于块的所有色彩分量。
举例来说,相对于基于列的扫描,考虑映射240的列252。假定垂直的从上到下扫描方向,列252包含一个索引值“1”、五个索引值“2”以及两个索引值“3”。根据本发明的方面,视频编码器20可为扫描方向上行252的第一位置(在列252的相对顶部)编码索引值1。另外,视频编码器20可发信号通知延行零,从而指示扫描方向上之后位置的索引值是不同的。视频编码器20可接着为扫描方向上的下一位置编码索引值2以及指示延行四的一或多个语法元素,即,扫描方向上后四个位置的索引值共享与发信号通知的索引值相同的索引值。视频编码器20可接着为扫描方向上接下来的不同索引值编码索引值3,以及指示延行一的一或多个语法元素。视频解码器30可获得指示索引值和在扫描方向上具有相同索引值的连续索引的数目(延行)的语法元素。
根据本发明的方面,视频编码器20和视频解码器30可另外或替代地执行用于映射的一或多个条目的行复制。在一些实例中,行复制可取决于扫描方向。举例来说,视频编码器20可指示用于映射中的特定条目的像素或索引值等于特定条目上方(针对水平扫描)的线或特定条目左边(针对垂直扫描)的列中的像素或索引值。视频编码器20还可将扫描次序中等于特定条目上方的线或左边的列中的条目的像素或索引值的数目指示为延行。在此实例中,视频编码器20和或视频解码器30可从指定相邻线且从当前正译码的映射的线的指定数目的条目复制像素或索引值。
在出于说明目的的实例中,考虑映射240的列256和260。假定垂直的从上到下扫描方向,列256包含三个索引值“1”、三个索引值“2”以及两个索引值“3”。列260包含在扫描方向上具有相同次序的相同索引值。根据本发明的方面,视频编码器20可为列260编码一或多个语法元素,其指示整个列260是从列256复制。所述一或多个语法元素可与映射240的相对顶部处的列260的第一条目相关联。视频解码器30可获得指示行复制的语法元素,并在解码列260时为列260复制列256的索引值。
根据本发明的方面,用于对所谓的条目延行进行译码的技术可与上述用于行复制的技术结合使用。举例来说,视频编码器20可对指示映射中的条目的值是否是从调色板获得或者映射中的条目的值是否是从映射240中的经先前译码的线获得的一或多个语法元素(例如,旗标)进行编码。视频编码器20还可对指示调色板的索引值或线(行或列)中的条目的位置的一或多个语法元素进行编码。视频编码器20还可对指示共享相同值的若干连续条目的一或多个语法元素进行编码。视频解码器30可从经编码位流获得此信息,且使用所述信息来重构块的映射和像素值。
在出于说明目的的实例中,考虑映射240的行264和268。假定水平的从左到右扫描方向,行264包含五个索引值“1”和三个索引值“3”。行268包含三个索引值“1”、两索引值“2”以及三个索引值“3”。在此实例中,视频编码器20在为行268编码数据时,可识别行264的特定条目,接着是延行。举例来说,视频编码器20可编码指示行268的第一位置(行268的最左边位置)与行264的第一位置相同的一或多个语法元素。视频编码器20还可编码一或多个语法元素,其指示行268中在扫描方向上的两个连续条目的下一延行与行264的第一位置相同。
在一些实例中,视频编码器20还可确定是相对于另一行(或列)中的位置对当前像素或索引值进行译码,还是使用延行语法元素对当前像素或索引值进行译码。举例来说,在对指示行264的第一位置和两个条目的延行(上文提到)的一或多个语法元素进行编码之后,视频编码器20可为行268中第四和第五位置(从左到右)编码针对第四位置指示值2的一或多个语法元素以及指示延行1的一或多个语法元素。因此,视频编码器20不参考另一行(或列)来编码这两个位置。视频编码器20可随后相对于上部行264对行268中具有索引值3的第一位置进行译码(例如,指示从上部行264的复制以及扫描次序中具有相同索引值的连续位置的延行)。因此,根据本发明的方面,视频编码器20可在例如使用延行相对于行(或列)的其它值对所述行(或列)的像素或索引值进行译码、相对于另一行(或列)的值对行(或列)的像素或索引值进行译码或其组合之间进行选择。在一些实例中,视频编码器20可执行速率/失真优化以做出所述选择。
视频解码器30可接收上述语法元素,且可重构行268。举例来说,视频解码器30可获得指示相邻行中的特定定位的数据,从所述相邻行复制当前正译码的映射240的位置的相关联索引值。视频解码器30还可获得指示扫描次序中具有相同索引值的连续位置的数目。
在一些实例中,从其复制条目的行可直接邻近于当前正译码的行的条目(如图5的实例中所示)。然而,在其它实例中,若干线可由视频编码器20和/或视频解码器30缓冲,使得映射的若干线中的任一者可用作当前正译码的映射的线的预测性条目。因此,在一些实例中,可将用于条目的像素值发信号通知为等于当前行的紧邻上方的行(或左边的列)或者当前行的上方的两个或两个以上行(或左边的列)中的条目的像素值。
在用于说明目的的实例中,视频编码器20和/或视频解码器30可经配置以在对当前行条目进行译码之前存储先前n行条目。在此实例中,视频编码器20可在位流中以截断一元码或其它码指示预测性行(从其复制条目的行)。在另一个实例中,视频编码器20可对当前线与用作对当前线进行译码的参考的映射240的预测性线之间的位移值进行编码(且视频解码器30可对其进行解码)。即,视频编码器20可对从其复制索引值的特定线(或列)的指示进行编码。在一些实例中,所述位移值可为位移向量。就是说,假设c[0]、c[1]、...表示映射240的当前行的索引且假设u[0]、u[1]、u[2]、...表示映射240的预测性行(例如上部相邻行)的索引。在此实例中,在给定移位向量为d的情况下,可从u[i+d]或u[i-d]预测c[i]的索引值,以避免d取负值。d的值可使用一元、截断一元、指数哥伦布或哥伦布-莱斯码来译码。
作为另一实例视频编码器20可发信号通知指令,例如“从上行左半部复制”或“从上行右半部复制”,其指示将复制到当前正译码图的行的相邻行以及所述相邻行的条目的数目或部分。作为额外实例,在译码之前,可对索引值的图进行重新排序。举例来说,可使索引值图旋转90、180或270度,或上下或左右倒置,来改进译码效率。
在其它实例中,视频编码器20可不将映射240的相同值的索引值的延行发射到视频解码器30。在此情况下,视频编码器20和/或视频解码器30可隐式地导出延行的值。在一个实例中,延行的值可为常数值,例如4、8、16或类似者。在另一实例中,延行的值可取决于正译码的当前视频数据块的辅助信息,例如当前块的块大小、量化参数(QP)、帧类型、色彩分量、色彩格式(例如4:4:4、4:2:2或4:2:0)、色彩空间(例如YUV或RGB)、扫描方向和/或其它类型的特性信息。在其中延行的值取决于块大小的情况下,所述延行可等于当前块的宽度、当前块的高度、当前块的半宽度(或半高度)、当前块的宽度和/或高度的一部分,或当前块的宽度和/或高度的整倍数。在另一实例中,视频编码器20可使用高级语法(例如图片参数集合(PPS)、序列参数集(SPS)、视频参数集(VPS)和/或片段标头中的语法)发信号通知到视频解码器30的延行的值。
另外或替代地,视频编码器20可甚至不必将映射240发射到视频解码器30。实情为,视频编码器20和/或视频解码器30可隐式地导出包含于映射240中的索引值的每一延行的起始位置或定位。在一个实例中,视频编码器20和/或视频解码器30所应用的视频译码标准可确定延行可仅在某些定位处开始。举例来说,延行可仅在每一行的开头或正译码的当前块的每隔N行的开头开始。起始位置对于不同扫描方向可不同。举例来说,如果使用垂直扫描,那么延行可仅在列的开头或当前块的每隔N列的开头开始。
在另一实例中,可取决于当前块的辅助信息而导出起始位置,例如当前块的块大小、QP、帧类型、色彩分量、色彩格式(例如4:4:4、4:2:2或4:2:0)、色彩空间(例如YUV或RGB)、扫描方向和/或其它类型的特性信息。在其中延行的起始位置取决于块大小的情况下,起始位置可为每一行和/或每一列的中间点,或每一行和/或列的一部分(例如1/n、2/n、…(n-1)/n)。在另一实例中,视频编码器20可使用高级语法(例如PPS、SPS、VPS和/或片段标头中的语法)来向视频解码器30发信号通知起始位置。
在一些实例中,可组合隐式起始位置导出与隐式延行导出,各自在上文所述。举例来说,视频编码器20和/或视频解码器30可确定映射的相同值的索引值的延行等于两个相邻起始位置之间的距离。在起始位置为当前块的每一行的开头(即,第一位置)的情况下,接着视频编码器20和/或视频解码器30可确定延行的长度等于当前块的整个行的长度。
图6是说明与本发明的技术一致的将调色板索引的延行用于为色度分量自适应下取样的亮度分量确定视频块的几何边缘270、272或274的实例的概念图。在图6中,将亮度样本说明为未填充的环,且将色度样本说明为与x符号重叠的亮度样本中的一者。图6说明基于视频块的几何边缘270、272或274的定位的亮度和色度分量的不同延行值的实例。
在一些情况下,产生一个调色板,并供当前块中的多个色彩分量共享,且在其它情况下,针对色彩分量中的一或多者产生单独的调色板。在一种情况下,可针对亮度分量产生一个调色板,且可针对两个色度分量产生另一调色板。在任一情况下,几何形状信息可在色彩分量之间共享。通常,不同色彩分量中的并置块的边缘定位之间存在高相关性,因为色度分量可能已经以预定义方式从亮度分量下取样,例如4:2:2或4:2:0取样。
举例来说,在基于调色板的译码中,可使用延行译码来指示当前块的几何形状信息,因为当前块的边缘将破坏所述延行。在4:4:4色度格式的情况下,可产生所述延行一次,并用于所有色彩分量。可基于色彩分量中的一者来产生延行,或可使用一个以上所述色彩分量中来产生所述延行。在4:2:2色度格式的情况下,可将用于亮度分量的延行水平下取样因子二,从而应用于色度分量。在4:2:0色度格式的情况下,可将用以亮度分量的延行水平且垂直下取样因子二,以应用于色度分量。
在一些情况下,延行下取样方法可适应色度下取样方法。在此情况下,可根据如图6中示出的视频块的边缘(例如边缘270、272或274)的定位来不同地计算色度分量的经下取样的延行值。在第一实例中,图6说明定位成使得亮度分量的延行在左侧块中具有值“1”且在右侧块中具有值“3”的两个相邻视频块之间的几何边缘270。在此情况下,色度分量的经下取样的延行在左侧块和右侧块两者中均具有值“1”。在第二实例中,图6说明定位成使得亮度分量的延行在左侧块和右侧块两者中均具有值“2”的两个相邻视频块之间的几何边缘272。在此情况下,色度分量的经下取样的延行在左侧块和右侧块两者中均具有值“1”。在第三实例中,图6说明定位成使得亮度分量的延行在左侧块中具有值“3”且在右侧块中具有值“1”的两个相邻视频块之间的几何边缘274。在此情况下,色度分量的经下取样的延行在左侧块中具有值“2”,且右侧块中具有值“0”。
除几何形状信息之外,还可能针对所有色彩分量的像素值具有单个调色板。举例来说,对于当前块中的每一像素定位,三个色彩分量(例如Y亮度以及U和V色度分量两者)中的像素值可形成向量(即,色彩向量)。接着,可通过选择某一数目的向量来表示当前块而形成调色板。针对亮度分量具有像素值的一个调色板且针对色度分量具有像素值的另一调色板可为可能的。在一些情况下,还可能组合共享几何形状信息和具有使用色彩向量的像素值的单个调色板的两种方法。
在一些实例中,本发明中其它地方更详细描述的行复制也可对单个调色板起作用。在此情况下,如果扫描是水平的,那么将每一像素定位的调色板索引发信号通知为等于上一行的调色板索引,或如果扫描是垂直的,那么等于左侧的列,且接着还从前一行或列复制调色板索引的相关联延行。使用共享的调色板,调色板条目可为(Y,U,V)的三元组,使得可从调色板索引重构后面的Y、U、V值。经重构的值可充当经解码像素值,或可充当与残差值组合以导出经解码像素值的预测值。在4:2:2色度格式和4:2:0色度格式中,与亮度分量相比,已下取样色度分量。在2:1下取样的实例中,亮度位置可位于0、1、2、…,且色度位置可位于1、3、5、…,或可位于0、2、4、…。对于其中不存在色度分量的位置,调色板条目中的U和V分量可丢弃。
图7是说明与本发明的技术一致的使用基于调色板的译码模式来编码预测残差视频数据的实例过程的流程图。本文相对于来自图2的视频编码器20的基于调色板的编码单元122来描述图7中说明的实例过程。在其它实例中,一或多个其它或额外组件可执行图7中说明的实例过程。
视频编码器20接收将使用预测视频块的基于调色板的视频译码来编码的当前视频块的视频数据,并将所述视频数据发送到基于调色板的编码单元122。基于调色板的编码单元122基于当前块的像素值和经先前译码的参考像素值来为当前块确定预测残差值(280)。
基于调色板的编码单元122可使用任何预测模式,例如HEVC标准的帧间预测模式或帧内预测模式,来计算预测残差值。在一个实例中,基于调色板的编码单元122可使用帧间预测处理单元120,使用参考块中的经先前译码的像素值来预测当前块的像素值。在另一实例中,基于调色板的编码单元122可使用帧内预测处理单元126,使用当前块中经先前译码的像素值来预测当前块的像素值。
在一些情况下,基于调色板的编码单元122可仅使用预测模式过程的子集来为当前块确定预测残差值。举例来说,在帧内预测模式的情况下,可启用DC、水平和/或垂直预测过程,但可停用其它帧内预测模式过程。停用的过程可包含帧内预测模式下的滤波,例如MDIS、1/32像素双线性内插、边缘滤波或DC滤波中的一或多者。作为另一个实例,在帧间预测模式的情况下,可停用像素过程的平均,例如经加权预测/双向预测或子像素内插中的一或多者。
在一个实例中,当前块的预测残差值可为当前块的残差像素值。在此实例中,基于调色板的编码单元122从当前块的像素值和经先前译码的参考像素值计算当前块的残差像素值。基于调色板的编码单元122接着进行到使用基于调色板的视频译码来为当前块编码残差像素值,如以下步骤中所描述。
在另一实例中,当前块的预测残差值可为当前块的残差经量化变换系数值。在此实例中,基于调色板的编码单元122从当前块的像素值和经先前译码的参考像素值计算当前块的残差像素值,且接着将残差像素值发送到变换处理单元104和量化单元106,以变换和量化为当前块的残差经量化变换系数值。基于调色板的编码单元122接着进行到使用基于调色板的视频译码来编码当前块的残差经量化变换系数值,如以下步骤中所描述。
基于调色板的编码单元122产生当前块的调色板,其包含指示当前块的预测残差值的一或多个条目(282)。基于调色板的编码单元122将当前块的预测残差值中的一或多者映射到识别调色板中用以表示当前块的调色板中的预测残差值的条目的索引值(284)。基于调色板的编码单元122编码当前块中的一或多个位置的索引值(286)。经编码的索引值指示包含于当前块的调色板中的预测残差值,其用以表示当前块的预测残差值。视频编码器20接着发射当前块中的一或多个位置的索引值。
图8是说明与本发明的技术一致的用于使用基于调色板的译码模式来解码预测残差视频数据的实例过程的流程图。本文相对于来自图3的视频解码器30的基于调色板的解码单元165来描述图8中说明的实例过程。在其它实例中,一或多个其它或额外组件可执行图8中说明的实例过程。
视频解码器30接收使用基于调色板的译码来表示经译码视频数据的位流,且将经熵编码的视频数据发送到基于调色板的解码单元165。基于包含于经解码位流中的一或多个语法元素,基于调色板的解码单元165产生当前视频数据块的调色板,其包含指示当前块的预测残差值的一或多个条目(290)。基于调色板的解码单元165接着解码当前块中的一或多个位置的索引值(292)。经解码的索引值指示包含于当前块的调色板中的预测残差值,其用以表示当前块的预测残差值。
基于调色板的解码单元165基于识别调色板中表示当前块的预测残差值的条目的所述索引值来确定当前块的预测残差值中的一或多者(294)。基于调色板的解码单元165可使用任何预测模式,例如HEVC标准的帧间预测模式或帧内预测模式,来确定预测残差值。在一个实例中,基于调色板的解码单元165可使用运动补偿单元164来使用参考块中的经先前译码的像素值来预测当前块的像素值。在另一实例中,基于调色板的解码单元165可使用帧内预测处理单元166,使用当前块中经先前译码的像素值来预测当前块的像素值。
在一些情况下,基于调色板的解码单元165可仅使用预测模式过程的子集来为当前块确定预测残差值。举例来说,在帧内预测模式的情况下,可启用DC、水平和/或垂直预测过程,但可停用其它帧内预测模式过程。停用的过程可包含帧内预测模式下的滤波,例如MDIS、1/32像素双线性内插、边缘滤波或DC滤波中的一或多者。作为另一个实例,在帧间预测模式的情况下,可停用像素过程的平均,例如经加权预测/双向预测或子像素内插中的一或多者。
视频解码器30接着基于当前块的预测残差值和经先前译码的参考像素值来确定当前块的像素值(296)。在一个实例中,当前块的预测残差值可为当前块的残差像素值。在此情况下,视频解码器30可使用残差像素值和经先前译码的参考像素值来重构当前块的像素值。在另一实例中,当前块的预测残差值可为当前块的残差经量化变换系数值。在此情况下,基于调色板的解码单元165首先将残差经量化变换系数值发送到逆量化单元154和逆变换处理单元156,以逆量化和逆变换为当前块的残差像素值。视频解码器30接着使用残差像素值和经先前译码的参考像素值重构当前块的像素值。
图9是说明与本发明的技术一致的用于为基于调色板的译码产生调色板的实例过程的流程图。本文相对于来自图3的视频解码器30的基于调色板的解码单元165来描述图9中说明的实例过程。在其它实例中,所述过程还可由来自图2的视频编码器20的基于调色板的编码单元122执行。用语为基于调色板的译码产生调色板的实例过程可用于产生包含指示像素值的调色板条目的调色板。在其它实例中,可使用相似过程来产生包含指示预测残差值的调色板条目的调色板。
视频解码器30接收使用基于调色板的译码来表示经译码视频数据的位流,且将经熵解码的视频数据发送到基于调色板的解码单元165。基于调色板的解码单元165产生包含指示像素值的调色板条目的预测性调色板(300)。在一些实例中,基于调色板的解码单元165产生预测性调色板以包含来自视频数据的一或多个经先前译码块的调色板条目。经先前译码块可包含当前块的相邻块,包含空间相邻块和/或块的特定扫描次序中的相邻块。
基于调色板的解码单元165接下来从经熵解码的视频数据确定预测性调色板中复制到当前块的当前调色板的调色板条目中的一或多者(302)。更具体地说,基于调色板的解码单元165可解码指示预测性调色板中的调色板条目中的每一者是否复制到当前调色板的一或多个语法元素。在一个实例中,所述一或多个语法元素包括二进制向量,其包含预测性调色板中的调色板条目中的每一者的旗标,其指示相应调色板条目是否复制到当前调色板。在另一实例中,所述一或多个语法元素包括二进制向量的经无损压缩的版本,其中二进制向量的未经压缩版本包含预测性调色板中的调色板条目中的每一者的旗标,其指示相应调色板条目是否复制到当前调色板。
基于调色板的解码单元165还从经熵解码的视频数据确定不在预测性调色板中但包含于当前块的当前调色板中的新调色板条目的数目(304)。基于调色板的解码单元165可解码指示包含于当前调色板中的新调色板条目的数目的一或多个语法元素。在一些实例中,基于调色板的解码单元165使用一元码、截断一元码、指数-哥伦布码或哥伦布-莱斯码中的一者来解码语法元素。在确定包含于当前调色板中的新调色板条目的数目之后,基于调色板的解码单元165解码指示新调色板条目中的每一者的像素值的一或多个语法元素。
基于从经熵解码的视频数据确定的信息,基于调色板的解码单元165将当前调色板的大小计算为等于复制的调色板条目的数目与新调色板条目的数目的和(306)。在确定当前调色板的大小之后,基于调色板的解码单元165产生当前调色板以包含复制的调色板条目和新调色板条目(308)。在一个实例中,基于调色板的解码单元165通过串接复制的调色板条目与新调色板条目来产生当前调色板。
基于调色板的解码单元165接着能够使用当前调色板来执行当前块的基于调色板的译码。举例来说,基于调色板的解码单元165确定当前块的一或多个像素值的索引值,其识别当前调色板中用以表示当前块的像素值的调色板条目(310)。在其中当前块的一或多个像素值不具有当前调色板中的对应像素值的情况下,视频编码器20可使用逃逸像素概念来指示所述像素值中的哪些不包含于当前调色板中,且显式发射这些像素值。视频解码器30中的基于调色板的解码单元165可接着解码一或多个语法元素,其指示一或多个像素值中的不具有当前调色板中的对应像素值的像素值。
在另一实例中,视频编码器20可不使用逃逸像素概念,而是可将包含于当前调色板中的像素值识别为当前块的一或多个像素值中的每一者的预测像素值,且发射当前块的像素值与当前调色板中的预测像素值之间的残差值。视频解码器30中的基于调色板的解码单元165可接着解码指示识别包含于当前调色板中的对应预测像素值的索引值的一或多个语法元素,以及当前块的一或多个像素值与当前调色板中的所识别预测像素值之间的残差值。
本发明还描述用于为基于调色板的译码产生调色板的若干替代技术,其可用于产生具有使索引值与当前块的像素值或预测残差值相关联的条目的调色板。在一个实例中,基于调色板的解码单元165解码当前块的调色板的大小的指示;解码具有与当前块的调色板相同大小的向量,其中所述向量中的每一条目指示相关联调色板条目是发射的还是从预测性调色板复制的;以及针对从预测性调色板复制的一或多个调色板条目,解码所述条目在预测性调色板中的位置的指示。在另一实例中,基于调色板的解码单元165解码当前块的调色板中的条目的数目的指示;解码调色板条目中的每一者的一位旗标,其指示调色板条目是显式发送的还是从先前经重构像素导出的;且对于从先前经重构像素导出的一或多个调色板条目中的每一者,解码对应于相应调色板条目的经重构像素的位置的指示。在所述实例中,经重构像素的位置的指示可为相对于当前块的左上位置的移位向量,或其可为到可包含用于普通帧内预测的所有参考像素的经重构像素列表中的索引。
在另一实例中,基于调色板的解码单元165开始于具有给定大小的相邻块的预测性调色板,且解码具有与预测性调色板相同大小的二进制向量,其中所述向量中的每一条目指示相关联的调色板条目是否从预测性调色板重新使用。基于调色板的解码单元165还解码待发射的新条目的数目的指示,且从视频编码器20接收新条目。基于调色板的解码单元165接着合并重新使用条目与新条目,以产生用于当前块的新调色板。
应认识到,取决于实例,本文中所描述的技术中的任一者的某些动作或事件可以用不同序列来执行,可以添加、合并或全部省略(例如,实践所述技术未必需要所有的所描述动作或事件)。此外,在某些实例中,可(例如)通过多线程处理、中断处理或多个处理器同时而非循序地执行动作或事件。此外,虽然为了清晰起见,本发明的某些方面被描述为是通过单个模块或单元执行,但是应理解,本发明的技术可以通过与视频译码器相关联的单元或模块的组合执行。
出于说明的目的已经相对于开发HEVC标准而描述本发明的某些方面。然而,本发明中描述的技术可有用于其它视频译码过程,包含尚未开发的其它标准或专有视频译码过程。
上文所描述的技术可由视频编码器20(图1和2)和/或视频解码器30(图1和3)执行,其两者可大体上被称作视频译码器。同样地,在适用时,视频译码可指代视频编码或视频解码。
虽然在上文描述所述技术的各个方面的特定组合,但提供这些组合仅为了说明本发明中描述的技术的实例。因此,本发明的技术不应限于这些实例组合且可涵盖本发明中描述的技术的各种方面的任何可设想的组合。
在一或多个实例中,所描述功能可以用硬件、软件、固件或其任何组合来实施。如果以软件实施,则所述功能可以作为一或多个指令或代码在计算机可读媒体上存储或传输,并且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于例如数据存储媒体等有形媒体,或包含任何促进将计算机程序从一处传送到另一处的媒体(例如,根据一种通信协议)的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)有形计算机可读存储媒体,其是非暂时的,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码和/或数据结构的任何可用的媒体。计算机程序产品可包含计算机可读媒体。
借助于实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来存储呈指令或数据结构的形式的所要程序代码并且可由计算机存取的任何其它媒体。而且,任何连接被恰当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴电缆、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它暂时媒体,而是实际上针对于非暂时性有形存储媒体。如本文所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。上述各者的组合也应包含在计算机可读媒体的范围内。
指令可由一或多个处理器执行,所述一或多个处理器例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指代上述结构或适合于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文所述的功能性可在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。并且,可将所述技术完全实施于一或多个电路或逻辑元件中。
本发明的技术可在广泛多种装置或设备中实施,包含无线手持机、集成电路(IC)或IC的集合(即,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所揭示技术的装置的功能方面,但未必需要通过不同硬件单元实现。而是,如上文所描述,各种单元可结合合适的软件和/或固件而组合在编解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
已经描述各种实例。这些和其它实例在所附权利要求书的范围内。
Claims (30)
1.一种对视频数据进行译码的方法,所述方法包括:
产生包含指示像素值的调色板条目的预测性调色板;
确定所述预测性调色板中的所述调色板条目中复制到所述视频数据的当前块的当前调色板的一或多者;
确定包含于所述当前块的所述当前调色板中的新调色板条目的数目,其中所述新调色板条目不在所述预测性调色板中;
将所述当前调色板的大小计算为等于所述复制的调色板条目的数目与所述新调色板条目的所述数目的和;
产生包含所述复制的调色板条目和所述新调色板条目的所述当前调色板;以及
为所述当前块的一或多个像素值确定索引值,其识别所述当前调色板中用以表示所述当前块的所述像素值的所述调色板条目。
2.根据权利要求1所述的方法,其中产生所述预测性调色板包括产生包含来自所述视频数据的一或多个经先前译码块的调色板条目的所述预测性调色板。
3.根据权利要求2所述的方法,其中所述一或多个经先前译码块包括所述当前块的相邻块,所述相邻块包含空间相邻块或所述块的特定扫描次序中的相邻块中的至少一者。
4.根据权利要求1所述的方法,其中确定所述预测性调色板中复制到所述当前调色板的所述一或多个调色板条目包括译码一或多个语法元素,其指示所述预测性调色板中的所述调色板条目中的每一者是否复制到所述当前调色板。
5.根据权利要求4所述的方法,其中所述一或多个语法元素包括二进制向量,其包含所述预测性调色板中的所述调色板条目中的每一者的旗标,所述旗标指示相应调色板条目是否复制到所述当前调色板。
6.根据权利要求4所述的方法,其中所述一或多个语法元素包括二进制向量的经无损压缩的版本,其中所述二进制向量的未经压缩版本包含所述预测性调色板中的所述调色板条目中的每一者的旗标,其指示相应调色板条目是否复制到所述当前调色板。
7.根据权利要求1所述的方法,其中确定包含于所述当前调色板中的所述新调色板条目的所述数目包括译码一或多个语法元素,其指示包含于所述当前调色板中的所述新调色板条目的所述数目,其中使用一元码、截断一元码、指数-哥伦布码或哥伦布-莱斯码中的一者来译码所述一或多个语法元素。
8.根据权利要求1所述的方法,其进一步包括译码一或多个语法元素,所述语法元素指示包含于所述当前调色板中的所述新调色板条目中的每一者的像素值。
9.根据权利要求1所述的方法,其中产生包含所述复制的调色板条目和所述新调色板条目的所述当前调色板包括串接所述复制的调色板条目与所述新调色板条目。
10.根据权利要求1所述的方法,其中所述当前块包括所述视频数据的切片中的第一块或所述视频数据的所述切片或图片的最左边块中的一者,所述方法进一步包括停用将所述预测调色板中的所述一或多个调色板条目复制到所述当前块的所述当前调色板。
11.根据权利要求1所述的方法,其中为所述当前块的所述一或多个像素值确定所述索引值包括:
译码指示所述当前块的所述像素值中的每一者是否在所述当前调色板中具有对应像素值的一或多个语法元素;
译码指示所述当前块的在所述当前调色板中具有对应像素值的所述一或多个像素值的所述索引值的一或多个语法元素;以及
译码指示所述当前块的在所述当前调色板中不具有对应像素值的所述一或多个像素值的所述像素值的一或多个语法元素。
12.根据权利要求1所述的方法,其中为所述当前块的所述一或多个像素值确定所述索引值包括:
译码指示所述当前块的所述一或多个像素值的所述索引值的一或多个语法元素,其中所述索引值将所述当前调色板中的对应像素值识别为预测像素值;以及
译码指示所述当前块的所述一或多个像素值与所述当前调色板中的所述所识别预测像素值之间的残差值的一或多个语法元素。
13.根据权利要求1所述的方法,其中所述译码视频数据的方法包括解码视频数据的方法,所述方法包括:
接收所述预测性调色板中的所述调色板条目中复制到所述当前调色板的所述一或多者的指示;
接收包含于所述当前调色板中的所述新调色板条目的所述数目;
接收所述新调色板条目中的每一者的像素值;
产生包含所述复制的调色板条目和所述接收到的新调色板条目的所述当前调色板;以及
接收所述当前块的所述一或多个像素值的所述索引值,其识别所述当前调色板中用以表示所述当前块的所述像素值的所述调色板条目。
14.根据权利要求1所述的方法,其中所述译码视频数据的方法包括编码视频数据的方法,所述方法包括:
产生包含所述复制的调色板条目和所述新调色板条目的所述当前调色板;
发射所述预测性调色板中的所述调色板条目中复制到所述当前调色板的所述一或多者的指示;
发射包含于所述当前调色板中的所述新调色板条目的所述数目;
发射所述新调色板条目中的每一者的像素值;以及
发射所述当前块的所述一或多个像素值的所述索引值,其识别所述当前调色板中用以表示所述当前块的所述像素值的所述调色板条目。
15.一种用于译码视频数据的设备,所述设备包括:
存储器,其存储视频数据;以及
一或多个处理器,其经配置以:
产生包含指示像素值的调色板条目的预测性调色板;
确定所述预测性调色板中的所述调色板条目中复制到所述视频数据的当前块的当前调色板的一或多者;
确定包含于所述当前块的所述当前调色板中的新调色板条目的数目,其中所述新调色板条目不在所述预测性调色板中;
将所述当前调色板的大小计算为等于所述复制的调色板条目的数目与所述新调色板条目的所述数目的和;
产生包含所述复制的调色板条目和所述新调色板条目的所述当前调色板;以及
为所述当前块的一或多个像素值确定索引值,其识别所述当前调色板中用以表示所述当前块的所述像素值的所述调色板条目。
16.根据权利要求15所述的设备,其中所述处理器经配置以产生包含来自所述视频数据的一或多个经先前译码块的调色板条目的所述预测性调色板。
17.根据权利要求16所述的设备,其中所述一或多个经先前译码块包括所述当前块的相邻块,所述相邻块包含空间相邻块或所述块的特定扫描次序中的相邻块中的至少一者。
18.根据权利要求15所述的设备,其中所述处理器经配置以译码指示所述预测性调色板中的所述调色板条目中的每一者是否复制到所述当前调色板的一或多个语法元素。
19.根据权利要求18所述的设备,其中所述一或多个语法元素包括二进制向量,其包含所述预测性调色板中的所述调色板条目中的每一者的旗标,所述旗标指示相应调色板条目是否复制到所述当前调色板。
20.根据权利要求18所述的设备,其中所述一或多个语法元素包括二进制向量的经无损压缩的版本,其中所述二进制向量的未经压缩版本包含所述预测性调色板中的所述调色板条目中的每一者的旗标,其指示相应调色板条目是否复制到所述当前调色板。
21.根据权利要求15所述的设备,其中所述处理器经配置以译码指示包含于所述当前调色板中的所述新调色板条目的所述数目的一或多个语法元素,其中使用一元码、截断一元码、指数-哥伦布码或哥伦布-莱斯码中的一者来译码所述一或多个语法元素。
22.根据权利要求15所述的设备,其中所述处理器经配置以译码指示包含于所述当前调色板中的所述新调色板条目中的每一者的像素值的一或多个语法元素。
23.根据权利要求15所述的设备,其中所述处理器经配置以串接所述复制的调色板条目与所述新调色板条目,以产生所述当前调色板。
24.根据权利要求15所述的设备,其中所述当前块包括所述视频数据的切片中的第一块或所述视频数据的所述切片或图片的最左边块中的一者,且其中所述处理器经配置以停用将所述预测调色板中的所述一或多个调色板条目复制到所述当前块的所述当前调色板。
25.根据权利要求15所述的设备,其中所述处理器经配置以:
译码指示所述当前块的所述像素值中的每一者是否具有所述当前调色板中的对应像素值的一或多个语法元素;
译码指示所述当前块的在所述当前调色板中具有对应像素值的所述一或多个像素值的所述索引值的一或多个语法元素;以及
译码指示所述当前块的在所述当前调色板中不具有对应像素值的所述一或多个像素值的所述像素值的一或多个语法元素。
26.根据权利要求15所述的设备,其中所述处理器经配置以:
译码指示所述当前块的所述一或多个像素值的所述索引值的一或多个语法元素,其中所述索引值将所述当前调色板中的对应像素值识别为预测像素值;以及
译码指示所述当前块的所述一或多个像素值与所述当前调色板中的所述所识别预测像素值之间的残差值的一或多个语法元素。
27.根据权利要求15所述的设备,其中所述设备包括用于解码视频数据的视频解码装置,且其中所述处理器经配置以:
接收所述预测性调色板中的所述调色板条目中复制到所述当前调色板的所述一或多者的指示;
接收包含于所述当前调色板中的所述新调色板条目的所述数目;
接收所述新调色板条目中的每一者的像素值;
产生包含所述复制的调色板条目和所述接收到的新调色板条目的所述当前调色板;以及
接收所述当前块的所述一或多个像素值的所述索引值,其识别所述当前调色板中用以表示所述当前块的所述像素值的所述调色板条目。
28.根据权利要求15所述的设备,其中所述设备包括用于编码视频数据的视频编码装置,且其中所述处理器经配置以:
产生包含所述复制的调色板条目和所述新调色板条目的所述当前调色板;
发射所述预测性调色板中的所述调色板条目中复制到所述当前调色板的所述一或多者的指示;
发射包含于所述当前调色板中的所述新调色板条目的所述数目;
发射所述新调色板条目中的每一者的像素值;且
发射所述当前块的所述一或多个像素值的所述索引值,其识别所述当前调色板中用以表示所述当前块的所述像素值的所述调色板条目。
29.一种用于译码视频数据的设备,所述设备包括:
用于产生包含指示像素值的调色板条目的预测性调色板的装置;
用于确定所述预测性调色板中的所述调色板条目中复制到所述视频数据的当前块的当前调色板的一或多者的装置;
用于确定包含于所述当前块的所述当前调色板中的新调色板条目的数目的装置,其中所述新调色板条目不在所述预测性调色板中;
用于将所述当前调色板的大小计算为等于所述复制的调色板条目的数目与所述新调色板条目的所述数目的和的装置;
用于产生包含所述复制的调色板条目和所述新调色板条目的所述当前调色板的装置;以及
用于为所述当前块的一或多个像素值确定索引值的装置,所述索引值识别所述当前调色板中用以表示所述当前块的所述像素值的所述调色板条目。
30.一种上面存储有指令的非暂时性计算机可读媒体,所述指令在被执行时致使一或多个处理器:
产生包含指示像素值的调色板条目的预测性调色板;
确定所述预测性调色板中的所述调色板条目中复制到所述视频数据的当前块的当前调色板的一或多者;
确定包含于所述当前块的所述当前调色板中的新调色板条目的数目,其中所述新调色板条目不在所述预测性调色板中;
将所述当前调色板的大小计算为等于所述复制的调色板条目的数目与所述新调色板条目的所述数目的和;
产生包含所述复制的调色板条目和所述新调色板条目的所述当前调色板;以及
为所述当前块的一或多个像素值确定索引值,其识别所述当前调色板中用以表示所述当前块的所述像素值的所述调色板条目。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361845824P | 2013-07-12 | 2013-07-12 | |
US61/845,824 | 2013-07-12 | ||
US201361899048P | 2013-11-01 | 2013-11-01 | |
US61/899,048 | 2013-11-01 | ||
US201361913040P | 2013-12-06 | 2013-12-06 | |
US61/913,040 | 2013-12-06 | ||
US14/328,502 | 2014-07-10 | ||
US14/328,502 US9558567B2 (en) | 2013-07-12 | 2014-07-10 | Palette prediction in palette-based video coding |
PCT/US2014/046402 WO2015006724A2 (en) | 2013-07-12 | 2014-07-11 | Palette prediction in palette-based video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105556974A true CN105556974A (zh) | 2016-05-04 |
CN105556974B CN105556974B (zh) | 2019-03-12 |
Family
ID=52277073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480039199.7A Active CN105556974B (zh) | 2013-07-12 | 2014-07-11 | 基于调色板的视频译码中的调色板预测 |
Country Status (21)
Country | Link |
---|---|
US (1) | US9558567B2 (zh) |
EP (1) | EP3020198B1 (zh) |
JP (1) | JP6246920B2 (zh) |
KR (1) | KR101821069B1 (zh) |
CN (1) | CN105556974B (zh) |
AU (1) | AU2014286986B2 (zh) |
BR (1) | BR112016000465B1 (zh) |
CA (1) | CA2913615C (zh) |
CL (1) | CL2016000057A1 (zh) |
DK (1) | DK3020198T3 (zh) |
ES (1) | ES2633947T3 (zh) |
HK (1) | HK1219372A1 (zh) |
HU (1) | HUE032104T2 (zh) |
MX (1) | MX353756B (zh) |
MY (1) | MY182937A (zh) |
PH (1) | PH12016500079A1 (zh) |
RU (1) | RU2641252C2 (zh) |
SA (1) | SA516370356B1 (zh) |
SG (1) | SG11201509667TA (zh) |
SI (1) | SI3020198T1 (zh) |
WO (1) | WO2015006724A2 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713921A (zh) * | 2016-11-29 | 2017-05-24 | 钟炎培 | 文字块的压缩方法和装置以及图像压缩方法和装置 |
CN111669598A (zh) * | 2019-03-08 | 2020-09-15 | 索尼公司 | 用于图像压缩的混合调色板-dpcm编码 |
CN113330740A (zh) * | 2019-03-01 | 2021-08-31 | 阿里巴巴集团控股有限公司 | 用于视频压缩系统的调色板模式中的调色板大小约束 |
CN113508585A (zh) * | 2019-03-13 | 2021-10-15 | 高通股份有限公司 | 用于视频译码中的调色板语法的分组译码 |
CN113853790A (zh) * | 2019-09-04 | 2021-12-28 | 深圳市大疆创新科技有限公司 | 编码方法、解码方法以及编码装置和解码装置 |
CN114128277A (zh) * | 2019-08-13 | 2022-03-01 | 高通股份有限公司 | 针对局部双树的调色板预测器更新 |
CN114402604A (zh) * | 2019-09-24 | 2022-04-26 | 高通股份有限公司 | 用于视频编解码的简化调色板预测器更新 |
CN114788289A (zh) * | 2019-12-03 | 2022-07-22 | 阿里巴巴集团控股有限公司 | 使用调色板模式的视频处理方法和装置 |
CN116437086A (zh) * | 2019-12-30 | 2023-07-14 | 阿里巴巴(中国)有限公司 | 用于在调色板模式下对视频数据进行编码的方法和装置 |
Families Citing this family (126)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9979960B2 (en) | 2012-10-01 | 2018-05-22 | Microsoft Technology Licensing, Llc | Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions |
US11259020B2 (en) | 2013-04-05 | 2022-02-22 | Qualcomm Incorporated | Determining palettes in palette-based video coding |
US9558567B2 (en) | 2013-07-12 | 2017-01-31 | Qualcomm Incorporated | Palette prediction in palette-based video coding |
KR102257269B1 (ko) | 2013-10-14 | 2021-05-26 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오 및 이미지 코딩 및 디코딩을 위한 인트라 블록 카피 예측 모드의 피쳐 |
CN105659602B (zh) | 2013-10-14 | 2019-10-08 | 微软技术许可有限责任公司 | 用于视频和图像编码的帧内块复制预测模式的编码器侧选项 |
KR102275639B1 (ko) | 2013-10-14 | 2021-07-08 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오 및 영상 코딩 및 디코딩에 대한 기본 색상 인덱스 맵 모드의 특징 |
US10291827B2 (en) | 2013-11-22 | 2019-05-14 | Futurewei Technologies, Inc. | Advanced screen content coding solution |
KR20150059269A (ko) * | 2013-11-22 | 2015-06-01 | 삼성디스플레이 주식회사 | 영상 데이터 인코딩 장치 및 방법 |
RU2679566C1 (ru) * | 2013-12-10 | 2019-02-11 | Кэнон Кабусики Кайся | Улучшенный палитровый режим в hevc |
EP3425914B1 (en) * | 2013-12-10 | 2021-08-18 | Canon Kabushiki Kaisha | Method and apparatus for encoding or decoding a palette in palette coding mode |
GB201321850D0 (en) * | 2013-12-10 | 2014-01-22 | Canon Kk | Palette Prediction |
US10321141B2 (en) | 2013-12-18 | 2019-06-11 | Hfi Innovation Inc. | Method and apparatus for palette initialization and management |
CN106031142B (zh) * | 2013-12-18 | 2019-07-26 | 寰发股份有限公司 | 在视频编码中用于调色板预测和共享的方法和装置 |
CA2934116C (en) | 2013-12-18 | 2019-07-30 | Tzu-Der Chuang | Method and apparatus for palette table prediction |
GB2523076B (en) * | 2013-12-19 | 2016-08-10 | Canon Kk | Improved palette mode in HEVC for the encoding process |
WO2015091879A2 (en) * | 2013-12-19 | 2015-06-25 | Canon Kabushiki Kaisha | Improved encoding process using a palette mode |
US10182242B2 (en) | 2013-12-27 | 2019-01-15 | Mediatek Inc. | Method and apparatus for palette coding with cross block prediction |
CN105981388B (zh) * | 2013-12-27 | 2019-05-10 | 寰发股份有限公司 | 调色板编码中句法冗余移除的方法和装置 |
CN110225345B (zh) * | 2013-12-27 | 2022-07-19 | 寰发股份有限公司 | 用于主颜色索引图编码的方法及装置 |
WO2015103496A2 (en) * | 2014-01-02 | 2015-07-09 | Vid Scale, Inc. | Two-demensional palette coding for screen content coding |
US10469863B2 (en) | 2014-01-03 | 2019-11-05 | Microsoft Technology Licensing, Llc | Block vector prediction in video and image coding/decoding |
US10390034B2 (en) | 2014-01-03 | 2019-08-20 | Microsoft Technology Licensing, Llc | Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area |
EP3061247A1 (en) * | 2014-01-07 | 2016-08-31 | MediaTek Inc. | Method and apparatus for color index prediction |
US11284103B2 (en) | 2014-01-17 | 2022-03-22 | Microsoft Technology Licensing, Llc | Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning |
CN104853209B (zh) * | 2014-02-16 | 2020-09-29 | 同济大学 | 图像编码、解码方法及装置 |
US10542274B2 (en) | 2014-02-21 | 2020-01-21 | Microsoft Technology Licensing, Llc | Dictionary encoding and decoding of screen content |
US10291915B2 (en) * | 2014-03-06 | 2019-05-14 | Samsung Electronics Co., Ltd. | Video decoding method and apparatus and video encoding method and apparatus |
WO2015135484A1 (en) * | 2014-03-14 | 2015-09-17 | Mediatek Inc. | Method of color index coding with palette stuffing |
US9826242B2 (en) | 2014-03-14 | 2017-11-21 | Qualcomm Incorporated | Palette-based video coding |
JP6164360B2 (ja) * | 2014-03-14 | 2017-07-19 | 富士通株式会社 | 画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法 |
US9681135B2 (en) * | 2014-03-14 | 2017-06-13 | Hfi Innovation Inc. | Method for palette table initialization and management |
KR102268090B1 (ko) * | 2014-03-14 | 2021-06-23 | 브이아이디 스케일, 인크. | 스크린 콘텐츠 코딩을 위한 팔레트 코딩 |
WO2015140400A1 (en) * | 2014-03-17 | 2015-09-24 | Nokia Technologies Oy | Method and technical equipment for video encoding and decoding |
US20150312573A1 (en) * | 2014-03-17 | 2015-10-29 | Nokia Technologies Oy | Method and technical equipment for video encoding and decoding |
US10638143B2 (en) * | 2014-03-21 | 2020-04-28 | Futurewei Technologies, Inc. | Advanced screen content coding with improved color table and index map coding methods |
US10362336B2 (en) | 2014-03-25 | 2019-07-23 | Qualcomm Incorporated | Palette predictor signaling with run length code for video coding |
US10264285B2 (en) | 2014-05-22 | 2019-04-16 | Qualcomm Incorporated | Coding runs in palette-based video coding |
US10038915B2 (en) | 2014-05-22 | 2018-07-31 | Qualcomm Incorporated | Escape sample coding in palette-based video coding |
US10750198B2 (en) * | 2014-05-22 | 2020-08-18 | Qualcomm Incorporated | Maximum palette parameters in palette-based video coding |
CN106416257B (zh) * | 2014-05-23 | 2019-05-10 | 寰发股份有限公司 | 调色板大小发信和有条件的调色板例外标志发信的方法 |
US10091512B2 (en) | 2014-05-23 | 2018-10-02 | Futurewei Technologies, Inc. | Advanced screen content coding with improved palette table and index map coding methods |
US10021418B2 (en) * | 2014-06-19 | 2018-07-10 | Hfi Innovation Inc. | Method and apparatus of candidate generation for single sample mode in video coding |
WO2015192353A1 (en) | 2014-06-19 | 2015-12-23 | Microsoft Technology Licensing, Llc | Unified intra block copy and inter prediction modes |
WO2015194187A1 (en) * | 2014-06-20 | 2015-12-23 | Sharp Kabushiki Kaisha | Harmonized palette coding |
CN106716999B (zh) * | 2014-06-20 | 2019-08-09 | 寰发股份有限公司 | 用于视频编码的调色板预测器信令的方法 |
US9906799B2 (en) | 2014-06-20 | 2018-02-27 | Qualcomm Incorporated | Copy from previous rows for palette mode coding |
US9955157B2 (en) | 2014-07-11 | 2018-04-24 | Qualcomm Incorporated | Advanced palette prediction and signaling |
US11330297B2 (en) | 2014-08-19 | 2022-05-10 | Qualcomm Incorporated | Methods incorporating extensions to copy-above mode for palette mode coding |
CN107079151B (zh) * | 2014-09-26 | 2020-06-05 | 株式会社Kt | 用于处理视频信号的方法和设备 |
EP3202150B1 (en) | 2014-09-30 | 2021-07-21 | Microsoft Technology Licensing, LLC | Rules for intra-picture prediction modes when wavefront parallel processing is enabled |
CN105491379A (zh) * | 2014-10-01 | 2016-04-13 | 财团法人工业技术研究院 | 解码器、编码器、解码方法、编码方法与编解码系统 |
US9807402B2 (en) | 2014-10-06 | 2017-10-31 | Industrial Technology Research Institute | Method of color palette coding applicable to electronic device and electronic device using the same |
GB2531005A (en) * | 2014-10-06 | 2016-04-13 | Canon Kk | Improved encoding process using a palette mode |
US9596479B2 (en) * | 2014-10-07 | 2017-03-14 | Hfi Innovation Inc. | Method of pulse-code modulation and palette coding for video coding |
US20160112724A1 (en) * | 2014-10-15 | 2016-04-21 | Qualcomm Incorporated | Hrd descriptor and buffer model of data streams for carriage of hevc extensions |
US10477218B2 (en) * | 2014-10-20 | 2019-11-12 | Kt Corporation | Method and apparatus for predicting and restoring a video signal using palette entry |
KR20190101495A (ko) * | 2014-11-12 | 2019-08-30 | 에이치에프아이 이노베이션 인크. | 인덱스 맵 코딩에서의 이스케이프 픽셀 코딩의 방법들 |
US9961351B2 (en) | 2014-11-26 | 2018-05-01 | Qualcomm Incorporated | Palette mode coding |
US10097839B2 (en) * | 2014-12-19 | 2018-10-09 | Qualcomm Incorporated | Palette mode for subsampling format |
KR101724555B1 (ko) * | 2014-12-22 | 2017-04-18 | 삼성전자주식회사 | 부호화 방법 및 장치와 복호화 방법 및 장치 |
CN111800632B (zh) * | 2015-01-15 | 2024-03-29 | 株式会社Kt | 对编码视频信号解码的方法和对视频信号编码的方法 |
US9749646B2 (en) * | 2015-01-16 | 2017-08-29 | Microsoft Technology Licensing, Llc | Encoding/decoding of high chroma resolution details |
US9854201B2 (en) * | 2015-01-16 | 2017-12-26 | Microsoft Technology Licensing, Llc | Dynamically updating quality to higher chroma sampling rate |
JP6122516B2 (ja) | 2015-01-28 | 2017-04-26 | 財團法人工業技術研究院Industrial Technology Research Institute | エンコーディング方法及びエンコーダ |
US10477243B2 (en) | 2015-01-29 | 2019-11-12 | Kt Corporation | Method and apparatus for predicting and restoring a video signal using palette entry and palette mode |
US9986248B2 (en) * | 2015-01-29 | 2018-05-29 | Qualcomm Incorporated | Palette mode coding for video coding |
CN112135143B (zh) * | 2015-01-29 | 2022-08-30 | 株式会社Kt | 用于对经编码的视频信号解码和对视频信号编码的方法 |
JP2018510539A (ja) * | 2015-01-29 | 2018-04-12 | ヴィド スケール インコーポレイテッド | パレット符号化モードのためのエスケープカラー符号化 |
RU2686559C2 (ru) * | 2015-01-29 | 2019-04-29 | Кэнон Кабусики Кайся | Инициализатор предсказателя палитры при кодировании или декодировании самостоятельных кодируемых структур |
CN107431817B (zh) * | 2015-01-29 | 2020-03-24 | Vid拓展公司 | 用于调色板译码的方法及装置 |
US10212434B2 (en) * | 2015-01-30 | 2019-02-19 | Qualcomm Incorporated | Palette entries coding in video coding |
US10425659B2 (en) * | 2015-01-30 | 2019-09-24 | Qualcomm Incorporated | Coding escape pixels for palette coding |
US10057587B2 (en) * | 2015-01-31 | 2018-08-21 | Qualcomm Incorporated | Coding escape pixels for palette mode coding |
CN107211149A (zh) * | 2015-02-05 | 2017-09-26 | 联发科技股份有限公司 | 调色板语法的解码操作装置与方法 |
CN105872539B (zh) * | 2015-02-08 | 2020-01-14 | 同济大学 | 图像编码方法和装置及图像解码方法和装置 |
US20160234494A1 (en) * | 2015-02-10 | 2016-08-11 | Qualcomm Incorporated | Restriction on palette block size in video coding |
EP3248377B1 (en) | 2015-02-16 | 2022-05-04 | HFI Innovation Inc. | Method and apparatus for palette predictor initialization for palette coding in video and image compression |
US9460365B1 (en) * | 2015-03-24 | 2016-10-04 | Intel Corporation | Clustered palette compression |
KR102691340B1 (ko) * | 2015-04-02 | 2024-08-02 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
KR102060871B1 (ko) * | 2015-04-08 | 2019-12-30 | 에이치에프아이 이노베이션 인크. | 비디오 코딩에서의 팔레트 모드 콘텍스트 코딩 및 이진화를 위한 방법 |
WO2016161967A1 (en) * | 2015-04-08 | 2016-10-13 | Mediatek Inc. | Methods of palette mode coding in video coding |
WO2016169020A1 (en) * | 2015-04-23 | 2016-10-27 | Mediatek Singapore Pte. Ltd. | A simplified coding method for palette coding |
KR20160140410A (ko) * | 2015-05-27 | 2016-12-07 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
US20160360205A1 (en) * | 2015-06-08 | 2016-12-08 | Industrial Technology Research Institute | Video encoding methods and systems using adaptive color transform |
CN106664405B (zh) * | 2015-06-09 | 2020-06-09 | 微软技术许可有限责任公司 | 用调色板模式对经逸出编码的像素的稳健编码/解码 |
EP3273692A4 (en) * | 2015-06-10 | 2018-04-04 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding or decoding image using syntax signaling for adaptive weight prediction |
US11146788B2 (en) | 2015-06-12 | 2021-10-12 | Qualcomm Incorporated | Grouping palette bypass bins for video coding |
GB2539486B (en) * | 2015-06-18 | 2019-07-31 | Gurulogic Microsystems Oy | Encoder, decoder and method employing palette compression |
GB2539488B8 (en) * | 2015-06-18 | 2020-08-19 | Gurulogic Microsystems Oy | Encoder, decoder and method employing palette utilization and compression |
JP6545570B2 (ja) * | 2015-08-18 | 2019-07-17 | 株式会社東芝 | 符号化装置、復号装置および画像処理装置 |
JP6613842B2 (ja) * | 2015-11-24 | 2019-12-04 | 富士通株式会社 | 画像符号化装置、画像符号化方法、及び画像符号化プログラム |
JP6662123B2 (ja) * | 2016-03-14 | 2020-03-11 | 富士通株式会社 | 画像符号化装置、画像符号化方法、及び画像符号化プログラム |
PL3731527T3 (pl) * | 2016-05-28 | 2023-01-09 | Hfi Innovation Inc. | Sposób i urządzenie do kodowania w trybie palety dla danych kolorowego wideo |
US10368080B2 (en) | 2016-10-21 | 2019-07-30 | Microsoft Technology Licensing, Llc | Selective upsampling or refresh of chroma sample values |
HUE062025T2 (hu) * | 2016-12-23 | 2023-09-28 | Huawei Tech Co Ltd | Kódoló berendezés egy kiterjesztési irányú intra-predikciós mód jelzésére irányított intra-predikciós módok csoportján belül |
JP2019022129A (ja) * | 2017-07-19 | 2019-02-07 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法、動画像復号装置、動画像復号方法、及び動画像符号化用コンピュータプログラムならびに動画像復号用コンピュータプログラム |
CN109788290A (zh) * | 2017-11-13 | 2019-05-21 | 慧荣科技股份有限公司 | 影像处理装置及利用帧内预测的无损影像压缩方法 |
US10986349B2 (en) | 2017-12-29 | 2021-04-20 | Microsoft Technology Licensing, Llc | Constraints on locations of reference blocks for intra block copy prediction |
US10262451B1 (en) * | 2018-04-09 | 2019-04-16 | 8i Limited | View-dependent color compression |
US10848787B2 (en) | 2018-08-28 | 2020-11-24 | Google Llc | Lossy image compression using palettization of locally mixed colors |
US11695919B2 (en) | 2018-08-28 | 2023-07-04 | Google Llc | Lossy image compression using palettization of locally mixed colors |
US11412260B2 (en) * | 2018-10-29 | 2022-08-09 | Google Llc | Geometric transforms for image compression |
FR3088511B1 (fr) * | 2018-11-09 | 2021-05-28 | Fond B Com | Procede de decodage d’au moins une image, procede de codage, dispositifs, signal et programmes d’ordinateur correspondants. |
EP3888354A4 (en) * | 2018-12-31 | 2022-03-09 | Huawei Technologies Co., Ltd. | METHOD AND APPARATUS OF MODE AND SIZE DEPENDENT BLOCK LEVEL CONSTRAINT FOR POSITION DEPENDENT PREDICTION COMBINATION |
US11134258B2 (en) | 2019-02-11 | 2021-09-28 | Qualcomm Incorporated | Predictive coefficient coding |
US11252442B2 (en) * | 2019-04-08 | 2022-02-15 | Tencent America LLC | Method and apparatus for video coding |
CN113906753B (zh) * | 2019-04-24 | 2023-12-01 | 字节跳动有限公司 | 编解码视频的量化残差差分脉冲编解码调制表示的约束 |
CN113796069B (zh) | 2019-05-01 | 2024-03-08 | 字节跳动有限公司 | 使用量化残差差分脉冲编解码调制编解码的帧内编解码视频 |
EP3949387A4 (en) | 2019-05-02 | 2022-05-18 | ByteDance Inc. | SIGNALING IN A TRANSFORM JUMP MODE |
CN113785306B (zh) | 2019-05-02 | 2024-06-14 | 字节跳动有限公司 | 基于编解码树结构类型的编解码模式 |
JP7273339B2 (ja) * | 2019-06-24 | 2023-05-15 | 日本電信電話株式会社 | 画像符号化方法、及び画像復号方法 |
US20220286700A1 (en) * | 2019-08-26 | 2022-09-08 | Lg Electronics Inc. | Image or video coding based on palette escape coding |
WO2021040402A1 (ko) * | 2019-08-26 | 2021-03-04 | 엘지전자 주식회사 | 팔레트 코딩 기반 영상 또는 비디오 코딩 |
CN116684583A (zh) | 2019-08-26 | 2023-09-01 | Lg电子株式会社 | 解码设备、编码设备和数据发送设备 |
KR20210027175A (ko) * | 2019-08-30 | 2021-03-10 | 주식회사 케이티 | 비디오 신호 처리 방법 및 장치 |
CN114375581A (zh) * | 2019-09-12 | 2022-04-19 | 字节跳动有限公司 | 在视频编解码中使用调色板预测器 |
US11323711B2 (en) * | 2019-09-20 | 2022-05-03 | Alibaba Group Holding Limited | Method and system for signaling chroma quantization parameter offset |
CN117412066A (zh) * | 2019-10-05 | 2024-01-16 | Lg电子株式会社 | 解码设备、编码设备和发送设备 |
US20220353506A1 (en) * | 2019-10-05 | 2022-11-03 | Lg Electronics Inc. | Image or video coding based on transform skip- and palette coding-related advanced syntax element |
MX2022004015A (es) * | 2019-10-05 | 2022-05-02 | Lg Electronics Inc | Codificacion de video o imagen basada en la se?alizacion de salto de transformacion e informacion relacionada con la codificacion de paletas. |
US11184632B2 (en) | 2020-01-20 | 2021-11-23 | Tencent America LLC | Method and apparatus for palette based coding mode under local dual tree structure |
US11595665B2 (en) * | 2021-02-11 | 2023-02-28 | Qualcomm Incorporated | Upsampling reference pixels for intra-prediction in video coding |
US11463716B2 (en) * | 2021-02-25 | 2022-10-04 | Qualcomm Incorporated | Buffers for video coding in palette mode |
WO2022220722A1 (en) * | 2021-04-13 | 2022-10-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Block importance mapping |
US11937070B2 (en) | 2021-07-01 | 2024-03-19 | Tencent America LLC | Layered description of space of interest |
WO2024081012A1 (en) * | 2022-10-13 | 2024-04-18 | Google Llc | Inter-prediction with filtering |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040151372A1 (en) * | 2000-06-30 | 2004-08-05 | Alexander Reshetov | Color distribution for texture and image compression |
US7343037B1 (en) * | 2004-02-04 | 2008-03-11 | Microsoft Corporation | Dynamic, locally-adaptive, lossless palettization of color and grayscale images |
US20100046628A1 (en) * | 2008-08-19 | 2010-02-25 | Vasudev Bhaskaran | Systems and Methods for Perceptually Lossless Video Compression |
US20110110416A1 (en) * | 2009-11-12 | 2011-05-12 | Bally Gaming, Inc. | Video Codec System and Method |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5686961A (en) * | 1992-01-27 | 1997-11-11 | Harris Corporation | Automatic video image data reduction and prioritization system and method |
US5408542A (en) | 1992-05-12 | 1995-04-18 | Apple Computer, Inc. | Method and apparatus for real-time lossless compression and decompression of image data |
JP2000511363A (ja) * | 1994-07-14 | 2000-08-29 | ジョンソン、グレイス、カンパニー | 画像を圧縮するための方法及び装置 |
US5930390A (en) * | 1996-03-28 | 1999-07-27 | Intel Corporation | Encoding/decoding signals using a remap table |
US6008816A (en) | 1996-04-25 | 1999-12-28 | Microsoft Corporation | Method and system for managing color specification using attachable palettes and palettes that refer to other palettes |
US6157746A (en) * | 1997-02-12 | 2000-12-05 | Sarnoff Corporation | Apparatus and method for encoding wavelet trees generated by a wavelet-based coding method |
US6064771A (en) * | 1997-06-23 | 2000-05-16 | Real-Time Geometry Corp. | System and method for asynchronous, adaptive moving picture compression, and decompression |
US6256415B1 (en) * | 1998-06-10 | 2001-07-03 | Seiko Epson Corporation | Two row buffer image compression (TROBIC) |
JP2000115782A (ja) * | 1998-10-06 | 2000-04-21 | Canon Inc | 符号化装置及び方法及び記憶媒体 |
AU2233801A (en) * | 1999-12-22 | 2001-07-16 | Neomtel Co., Ltd. | A system for moving image data using wireless communication and the method of the same |
US6909804B2 (en) * | 2000-01-27 | 2005-06-21 | Marger Johnson & Mccollom, P.C. | Image compression usable with animated images |
US6748116B1 (en) | 2000-08-22 | 2004-06-08 | Airzip, Inc. | Apparatus and method for compressing and decompressing image files |
AUPR212600A0 (en) * | 2000-12-18 | 2001-01-25 | Canon Kabushiki Kaisha | Efficient video coding |
JP2002369011A (ja) * | 2001-06-06 | 2002-12-20 | Canon Inc | 画像処理装置、画像処理方法及び画像処理プログラム |
US7319720B2 (en) * | 2002-01-28 | 2008-01-15 | Microsoft Corporation | Stereoscopic video |
US6898313B2 (en) * | 2002-03-06 | 2005-05-24 | Sharp Laboratories Of America, Inc. | Scalable layered coding in a multi-layer, compound-image data transmission system |
US7302006B2 (en) * | 2002-04-30 | 2007-11-27 | Hewlett-Packard Development Company, L.P. | Compression of images and image sequences through adaptive partitioning |
US7433526B2 (en) * | 2002-04-30 | 2008-10-07 | Hewlett-Packard Development Company, L.P. | Method for compressing images and image sequences through adaptive partitioning |
GB2388502A (en) * | 2002-05-10 | 2003-11-12 | Chris Dunn | Compression of frequency domain audio signals |
US20040071351A1 (en) * | 2002-10-07 | 2004-04-15 | Johan Rade | Method and system for graphics compression and display |
US20040151394A1 (en) * | 2003-01-31 | 2004-08-05 | Mikael Soderberg | Symmetrical, highly deterministic, low complexity, temporal transform video codec and vehicle distribution system incorporating same |
WO2006022741A1 (en) * | 2004-08-23 | 2006-03-02 | Marger Johnson & Mccollom, P.C. | Image compression usable with animated images |
WO2006085301A2 (en) * | 2005-02-09 | 2006-08-17 | Mobixell Networks | Image adaptation with target size, quality and resolution constraints |
US8848789B2 (en) * | 2006-03-27 | 2014-09-30 | Qualcomm Incorporated | Method and system for coding and decoding information associated with video compression |
US7343837B1 (en) | 2006-09-15 | 2008-03-18 | James Anthony Domanico | Multi-plane flexible handle for ratchets and wrenches |
US8170101B2 (en) * | 2006-10-27 | 2012-05-01 | Sharp Laboratories Of America, Inc. | Methods and systems for low-complexity data compression |
AU2006246497B2 (en) * | 2006-11-30 | 2010-02-11 | Canon Kabushiki Kaisha | Method and apparatus for hybrid image compression |
US8213511B2 (en) * | 2007-04-30 | 2012-07-03 | Texas Instruments Incorporated | Video encoder software architecture for VLIW cores incorporating inter prediction and intra prediction |
RU2420021C2 (ru) * | 2009-03-24 | 2011-05-27 | Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." | Способ сжатия изображений и видеопоследовательностей |
KR102588145B1 (ko) * | 2011-01-14 | 2023-10-12 | 지이 비디오 컴프레션, 엘엘씨 | 엔트로피 인코딩 및 디코딩 방식 |
US20120294353A1 (en) * | 2011-05-16 | 2012-11-22 | Mediatek Inc. | Apparatus and Method of Sample Adaptive Offset for Luma and Chroma Components |
US20130101033A1 (en) * | 2011-10-14 | 2013-04-25 | Qualcomm Incorporated | Coding non-symmetric distributions of data |
RU2634214C1 (ru) * | 2012-04-13 | 2017-10-24 | Кэнон Кабусики Кайся | Способ, устройство и система для кодирования и декодирования поднабора единиц преобразования кодированных видеоданных |
US11259020B2 (en) | 2013-04-05 | 2022-02-22 | Qualcomm Incorporated | Determining palettes in palette-based video coding |
US9558567B2 (en) | 2013-07-12 | 2017-01-31 | Qualcomm Incorporated | Palette prediction in palette-based video coding |
US10321141B2 (en) | 2013-12-18 | 2019-06-11 | Hfi Innovation Inc. | Method and apparatus for palette initialization and management |
WO2015103496A2 (en) * | 2014-01-02 | 2015-07-09 | Vid Scale, Inc. | Two-demensional palette coding for screen content coding |
-
2014
- 2014-07-10 US US14/328,502 patent/US9558567B2/en active Active
- 2014-07-11 EP EP14744735.3A patent/EP3020198B1/en active Active
- 2014-07-11 MY MYPI2015704450A patent/MY182937A/en unknown
- 2014-07-11 RU RU2016104535A patent/RU2641252C2/ru active
- 2014-07-11 WO PCT/US2014/046402 patent/WO2015006724A2/en active Application Filing
- 2014-07-11 MX MX2016000358A patent/MX353756B/es active IP Right Grant
- 2014-07-11 SI SI201430298T patent/SI3020198T1/sl unknown
- 2014-07-11 SG SG11201509667TA patent/SG11201509667TA/en unknown
- 2014-07-11 JP JP2016525816A patent/JP6246920B2/ja active Active
- 2014-07-11 CA CA2913615A patent/CA2913615C/en active Active
- 2014-07-11 KR KR1020167001705A patent/KR101821069B1/ko active IP Right Grant
- 2014-07-11 CN CN201480039199.7A patent/CN105556974B/zh active Active
- 2014-07-11 ES ES14744735.3T patent/ES2633947T3/es active Active
- 2014-07-11 AU AU2014286986A patent/AU2014286986B2/en active Active
- 2014-07-11 DK DK14744735.3T patent/DK3020198T3/en active
- 2014-07-11 HU HUE14744735A patent/HUE032104T2/en unknown
- 2014-07-11 BR BR112016000465-5A patent/BR112016000465B1/pt active IP Right Grant
-
2016
- 2016-01-06 SA SA516370356A patent/SA516370356B1/ar unknown
- 2016-01-12 PH PH12016500079A patent/PH12016500079A1/en unknown
- 2016-01-12 CL CL2016000057A patent/CL2016000057A1/es unknown
- 2016-06-21 HK HK16107194.1A patent/HK1219372A1/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040151372A1 (en) * | 2000-06-30 | 2004-08-05 | Alexander Reshetov | Color distribution for texture and image compression |
US7343037B1 (en) * | 2004-02-04 | 2008-03-11 | Microsoft Corporation | Dynamic, locally-adaptive, lossless palettization of color and grayscale images |
US20100046628A1 (en) * | 2008-08-19 | 2010-02-25 | Vasudev Bhaskaran | Systems and Methods for Perceptually Lossless Video Compression |
US20110110416A1 (en) * | 2009-11-12 | 2011-05-12 | Bally Gaming, Inc. | Video Codec System and Method |
Non-Patent Citations (1)
Title |
---|
S. LINDNER ET AL: "Motion palette coding for video compression", 《 ELECTRICAL AND COMPUTER ENGINEERING》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106713921B (zh) * | 2016-11-29 | 2019-07-23 | 西安万像电子科技有限公司 | 文字块的压缩方法和装置以及图像压缩方法和装置 |
CN106713921A (zh) * | 2016-11-29 | 2017-05-24 | 钟炎培 | 文字块的压缩方法和装置以及图像压缩方法和装置 |
CN113330740A (zh) * | 2019-03-01 | 2021-08-31 | 阿里巴巴集团控股有限公司 | 用于视频压缩系统的调色板模式中的调色板大小约束 |
US11503311B2 (en) | 2019-03-08 | 2022-11-15 | Sony Group Corporation | Hybrid palette-DPCM coding for image compression |
CN111669598A (zh) * | 2019-03-08 | 2020-09-15 | 索尼公司 | 用于图像压缩的混合调色板-dpcm编码 |
CN113508585A (zh) * | 2019-03-13 | 2021-10-15 | 高通股份有限公司 | 用于视频译码中的调色板语法的分组译码 |
CN114128277A (zh) * | 2019-08-13 | 2022-03-01 | 高通股份有限公司 | 针对局部双树的调色板预测器更新 |
CN114128277B (zh) * | 2019-08-13 | 2022-12-13 | 高通股份有限公司 | 针对局部双树的调色板预测器更新 |
CN113853790A (zh) * | 2019-09-04 | 2021-12-28 | 深圳市大疆创新科技有限公司 | 编码方法、解码方法以及编码装置和解码装置 |
CN114402604A (zh) * | 2019-09-24 | 2022-04-26 | 高通股份有限公司 | 用于视频编解码的简化调色板预测器更新 |
CN114788289A (zh) * | 2019-12-03 | 2022-07-22 | 阿里巴巴集团控股有限公司 | 使用调色板模式的视频处理方法和装置 |
US12015788B2 (en) | 2019-12-03 | 2024-06-18 | Alibaba Group Holding Limited | Video processing method and apparatus for using palette mode |
US12063372B2 (en) | 2019-12-03 | 2024-08-13 | Alibaba Group Holding Limited | Video processing method and apparatus for using palette mode |
CN116437086A (zh) * | 2019-12-30 | 2023-07-14 | 阿里巴巴(中国)有限公司 | 用于在调色板模式下对视频数据进行编码的方法和装置 |
CN116437086B (zh) * | 2019-12-30 | 2023-11-17 | 阿里巴巴(中国)有限公司 | 用于在调色板模式下对视频数据进行编码的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
SA516370356B1 (ar) | 2019-07-21 |
US20150016501A1 (en) | 2015-01-15 |
PH12016500079B1 (en) | 2016-04-18 |
SI3020198T1 (sl) | 2017-08-31 |
JP6246920B2 (ja) | 2017-12-13 |
US9558567B2 (en) | 2017-01-31 |
ES2633947T3 (es) | 2017-09-26 |
JP2016529783A (ja) | 2016-09-23 |
WO2015006724A2 (en) | 2015-01-15 |
CA2913615C (en) | 2019-03-05 |
PH12016500079A1 (en) | 2016-04-18 |
KR101821069B1 (ko) | 2018-01-22 |
BR112016000465A2 (zh) | 2017-07-25 |
CN105556974B (zh) | 2019-03-12 |
CL2016000057A1 (es) | 2016-08-19 |
RU2641252C2 (ru) | 2018-01-16 |
CA2913615A1 (en) | 2015-01-15 |
MX353756B (es) | 2018-01-26 |
EP3020198A2 (en) | 2016-05-18 |
MX2016000358A (es) | 2016-05-05 |
WO2015006724A3 (en) | 2015-03-26 |
DK3020198T3 (en) | 2017-06-06 |
HK1219372A1 (zh) | 2017-03-31 |
EP3020198B1 (en) | 2017-04-26 |
RU2016104535A (ru) | 2017-08-16 |
AU2014286986A1 (en) | 2016-02-11 |
SG11201509667TA (en) | 2016-01-28 |
AU2014286986B2 (en) | 2018-03-15 |
KR20160031495A (ko) | 2016-03-22 |
HUE032104T2 (en) | 2017-08-28 |
MY182937A (en) | 2021-02-05 |
BR112016000465B1 (pt) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105556974A (zh) | 基于调色板的视频译码中的调色板预测 | |
CN105075272B (zh) | 在基于调色板的视频译码中确定调色板索引的方法及设备 | |
US9826242B2 (en) | Palette-based video coding | |
JP6625644B2 (ja) | サブサンプリングフォーマットのためのパレットモード | |
EP3158747B1 (en) | Single color palette mode in video coding | |
KR102142181B1 (ko) | 비디오 코딩에서의 팔레트 블록 사이즈에 대한 제한 | |
CN104205837B (zh) | 视频译码中的经译码块旗标推断 | |
CN105264891A (zh) | 具有变换跳过、旋转和扫描的残余差分脉码调制(dpcm)扩展和协调 | |
CN106797484A (zh) | 用于基于调色板的视频译码的调色板索引二进制化 | |
CN105052145A (zh) | 剖析三维视频译码中的语法元素 | |
CN104054347A (zh) | 在视频译码中波前平行处理的使用的指示 | |
CN104365105A (zh) | 视频译码中的外部图片 | |
CN104335586A (zh) | 运动向量舍入 | |
CN104255035A (zh) | 视讯译码中的量化参数(qp)译码 | |
CN106464875A (zh) | 用于调色板模式译码的从先前行复制 | |
CN106797474A (zh) | 基于调色板的视频译码中的调色板游程隐藏 | |
CN104380748A (zh) | 用于样本自适应偏移(sao)语法元素的经旁通译码二进位的分组 | |
CN105075267A (zh) | 在视频译码中停用用于参考图片列表的视图间预测 | |
CN106664429A (zh) | 高级调色板预测和发信号通知 | |
CN107124915A (zh) | 用于调色板模式译码的对角线副本 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1219372 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |