高级屏幕内容编码方案的制作方法

文档序号:13681340阅读:822来源:国知局
技术领域本发明通常针对屏幕内容编码。

背景技术:
相比于传统的自然视频,因为信号特征的不同,屏幕内容编码对视频压缩技术提出新的挑战。似乎有几个针对高级屏幕内容编码的有前景的技术,例如伪字符串匹配、调色板编码、帧内运动补偿或者帧内块拷贝。在这些技术中,对于无损编码,伪字符串匹配收益最高,但是复杂度开销较大并且在有损编码模式上存在困难。基于非相机捕捉内容通常包含有限颜色而非自然视频中的连续色调的假设,为屏幕内容开发调色板编码。尽管所述伪字符串匹配和调色板编码方法显示巨大的潜力,但是屏幕内容编码的工作草案(workingdraft,WD)版本4和正在开发的HEVC范围扩展(HEVCrangeextension,HEVCRExt)的参考软件采用帧内运动补偿或者帧内块拷贝。这主要是因为对运动估计和补偿方法的广泛研究已经有几十年,并且其观点和实际执行相当容易(尤其对于硬件)。但是帧内块拷贝的编码性能因为其固定的块结构划分而受限。另一方面,块匹配的执行,有时与帧内图像的运动估计相似,也会使编码器的计算和存储访问的复杂度显著增加。

技术实现要素:
本发明是针对高级屏幕内容编码方案。在一个示例性实施例中,一种将屏幕内容编码成比特流的方法包括:为屏幕内容的编码单元(codingunit,CU)选择调色板颜色表。为所述CU创建了所述调色板颜色表,并且为相邻CU创建了调色板颜色表。利用所述选择的调色板颜色表为所述屏幕内容的编码单元(codingunit,CU)创建了有索引的颜色索引图。针对多个CU中的每一个CU,将所述选择的调色板颜色表和所述颜色索引图编码/压缩成了比特流。附图说明为了更完整地理解本发明及其优点,现在参考下文结合附图进行的描述,相同的数字表示相同的对象,其中:图1示出了本发明一个示例性实施例中利用调色板颜色表和索引图模式或者调色板模式的屏幕内容编码方案;图2示出了针对调色板颜色表和索引图模式或者调色板模式的屏幕内容解码方案;图3示出了CU的调色板颜色表和索引图模式或者调色板模式的屏幕内容方案的过程或者工作流程;图4示出了传统的平面模式(左侧)中的G、B、R进入填充模式(右侧);图5示出了利用相邻重构块重新生成调色板颜色表;图6示出了从实际字幕内容中解析的索引图;图7示出了水平扫描后1-D搜索的一个片段;图8示出了U_PIXEL模块;图9示出了U_ROW模块;图10示出了U_CMP模块;图11示出了U_COL模块;图12示出了U_2D_BLOCK模块;图13示出了示例性CU的索引图的水平和垂直扫描处理;图14A示出了4:2:0色度采样格式;图14B示出了4:4:4色度采样格式;图15示出了4:2:0和4:4:4之间的插值;图16示出了有上侧/左侧行缓存的索引图处理;图17示出了应用于当前HEVC的装置和方法/流程;图18示出了通信系统的一个示例;图19A和19B示出了本发明提供的可以执行所述方法和理念的示例性设备。具体实施方式在本发明中,描述了一种优于高性能视频编码(High-EfficiencyVideoCoding,HEVC)范围扩展(例如,HEVC版本2或者HEVCRExt)的高级屏幕内容编码方案。这个新方案包括多个专门为屏幕内容编码而设计的算法。这些算法包括利用调色板或者颜色表,这里也称作调色板颜色表,调色板颜色压缩,颜色索引图压缩,串搜索和残差压缩的像素表示。该技术协调发展,并且能够与HEVC范围扩展(RExt)和未来HEVC扩展集成,以支持高效屏幕内容编码。但是该技术可以利用任何现有视频制式执行。为简单起见,下文描述中以HEVCRExt为例,利用HEVCRExt软件来描述并证明压缩效率。利用调色板颜色表和索引图,这里定义为调色板模式,将该方案集成为HEVC中的附加模式以证明所述性能。在附图中示出了本发明的概念和描述。根据本发明,图1示出了具有包括存储器的处理器12的编码器10,图2示出了具有处理器16和存储器的解码器14,并且分别示出了针对所述调色板模式的编码和解码方案的示例性实施例。如图所示,每个编码器10和解码器14包括处理器和存储器,并且组成编解码方案。所述编解码方案包括:所述编码器10的处理器12执行新的算法或者方法,所述算法或者方法包括:处理1:创建调色板颜色表;处理2:针对对应的颜色索引,利用之前获取的调色板颜色表对颜色或者像素值进行分类;处理3:编码所述调色板颜色表;处理4:编码所述颜色索引图;处理5:编码所述残差;处理6:将新的语法元素写入压缩的比特流。解码器14的处理器16执行包括所述逆向步骤的新算法或者方法。图3根据本发明提供屏幕内容解决方案的过程或者工作流程。基本上,对每个编码单元(codingunit,CU)执行高效调色板压缩(colorpalettecompression,CPC)方法。编码单元是HEVC和HEVCRExt中的基本操作单元,其是三个部分(即RGB、YUV或者XYZ)组成的像素的方形块。在每个CU级别,所述CPC方法主要包括两个步骤:首先,在第一步骤中,所述处理器12获取或者生成调色板颜色表。该表是根据柱状图(即每个颜色值的出现频率)、其实际颜色强度或者任意方法进行排列的,以提高以下编码过程的效率。基于获取的调色板颜色表,将原始CU中的每个像素转换成了所述调色板颜色表中的颜色索引。本发明的一个贡献是通过压缩等将每个CU的调色板颜色表和颜色索引图有效地编码成比特流的技术。在接收器侧,所述处理器16解析压缩的比特流以为每个CU重构完整的调色板颜色表和颜色索引图,然后通过将所述颜色索引和调色板颜色表合并在每个位置进一步获取像素值。在本发明的示例中,假设一个CU有NxN个像素(N=8、16、32、64以与HEVC兼容)。所述CU通常包含采样比不同(即4:4:4、4:2:2、4:2:0)的3个色度(chroma)成分(即G、B、R;Y、Cb、Cr;X、Y、Z)。为简单起见,本发明示出了4:4:4序列。对于4:2:2和4:2:0视频序列,色度上采样可以用于获得所述4:4:4序列,或者每个颜色成分可以单独处理。然后可以应用本发明中描述的相同程序。对于4:0:0单色视频,这可以视为没有其他两个平面的4:4:4的单个平面。针对4:4:4的所有方法都可以直接应用。填充或者平面图1中示出了针对块CTU或者CU的方法。首先为每个CU定义称作enable_packed_component_flag的标志,以指示当前CU是以填充形式还是传统的平面模式(即G、B、R或者Y、U、V成分都是单独处理)进行处理。图4示出了传统的平面模式(左侧)中的G、B、R进入填充模式(右侧)。YUV或者其他颜色格式可以以与RGB内容所示的处理形式相同的形式进行处理。所述填充模式和平面模式都有各自的优点和缺点。例如,所述平面模式支持对G/B/R或者Y/U/V的并行颜色成分处理。但是可能会存在编码效率较低的问题。所述填充模式可以在不同的颜色成分之间共享该CU的头信息(例如本发明中的调色板颜色表和索引图)。但是可能会打断并行性。确定当前CU是否应该以填充形式编码的一个简单方法是测量率失真(R-D)代价。所述enable_packed_component_flag用于将编码模式显式发送至解码器。另外,为了定义CU级别的enable_packed_component_flag用于低级别处理,根据特定的应用要求,其可以在条带头部甚或序列级别(如序列参数集或者图像参数集)进行复制以允许条带级别或者序列级别处理。调色板颜色表和索引图获取如图1所示,在处理1和处理3中,每个CU的像素位置都是横向的,获取了后续处理过程中的所述调色板颜色表和索引图。根据柱状图(即出现频率)、颜色强度或者任意方法在所述调色板颜色表中排列每个不同的颜色,以提高接下来的编码过程的效率。例如,如果在所述编码过程中使用差值脉冲编码调制(differentialpulsecodemodulation,DPCM)方法编码邻近像素之间的差异,且如果所述邻近像素分配有所述调色板颜色表中的邻近颜色索引,则可以获得最佳编码结果。在获得所述调色板颜色表之后,每个像素映射到对应的颜色索引以形成当前CU的索引图。索引图的处理在后续部分进行描述。对于传统的平面CU,每个颜色或者色度成分可以有自己的调色板颜色表,如colorTable_Y、colorTable_U、colorTable_V、colorTable_R、colorTable_G或者colorTable_B,这里例举一部分作为示例。同时,可以获取主要成分例如YUV中的Y或者GBR中的G的调色板颜色表并且将其共享给所有成分。通常经过此次共享,除了Y或者G的其他颜色成分可能会与调色板颜色表中共享成分存在一些有关原始像素颜色的不匹配。然后残差引擎(如HEVC系数编码方法)可以用于编码这些不匹配的残差。另一方面,对于填充CU,单个调色板颜色表在所有成分之间共享。提供一种证明所述调色板颜色表和索引图获取的伪代码如下:deriveColorTableIndexMap(){deriveColorTable();deriveIndexMap();
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1