首页 / 专利库 / 电脑图像 / 调色板 / 使用调色板编码模式的视频和图像编解码的方法和装置

使用调色板编码模式的视频和图像编解码的方法和装置

阅读:637发布:2020-05-12

专利汇可以提供使用调色板编码模式的视频和图像编解码的方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了使用包括游程模式的 调色板 编码模式的 视频编码 的方法和装置。在一个 实施例 中,系统基于编码信息来确定正被编码的当前 像素 的最大调色板游程,该编码信息包括当前 块 的块大小、当前像素的像素 位置 、以及当前块的最后一个游程类型是复制索引模式或复制上方模式。然后根据最大调色板游程将与当前像素相关联的当前游程编码为一个或多个二进制串,或者从比特流解码与当前像素相关联的当前游程编码。用于指示当前块的最后一个游程类型的语法元素可以被发信或从比特流中解析。,下面是使用调色板编码模式的视频和图像编解码的方法和装置专利的具体信息内容。

1.一种使用调色板编码模式的视频或图像解码的方法,其特征在于,包括:
接收对应于当前的编码数据的视频比特流;
从所述视频比特流解析第一语法元素,以指示所述当前块的最后一个游程类型是复制索引模式或复制上方模式,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有第一索引值的M个连续索引,以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前块的所述最后一个游程类型是所述复制索引模式或所述复制上方模式;以及根据所述最大调色板游程从所述视频比特流解码与所述当前像素相关的当前游程;
根据以下等式确定所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–last_palette_run_type_flag–1,或
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–(last_palette_run_type_flag==the copy-index mode?0:1)–1,或
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–(last_palette_run_type_flag==the copy-above mode?1:0)–1,
其中,maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置,NumIndicesLeft表示剩余调色板索引的数量,以及last_palette_run_type_flag表示第一语法元素,如果所述最后一个游程类型是所述复制上方模式,则last_palette_run_type_flag的值为1,如果所述最后一个游程类型是所述复制索引模式,则last_palette_run_type_flag的值为0。
2.根据权利要求1所述的方法,其特征在于,还包括确定所述当前块的块大小和所述当前像素的像素位置,其中所述编码信息还包括所述当前块的所述块大小和所述当前像素的所述像素位置。
3.根据权利要求2所述的方法,其特征在于,还包括为位于所述当前像素的所述像素位置的所述当前块导出剩余调色板索引的数量,其中所述编码信息还包括所述剩余调色板索引的数量。
4.一种使用调色板编码模式的视频或图像解码的方法,其特征在于,包括:
接收对应于当前块的编码数据的视频比特流;
从所述视频比特流解析第一语法元素,以指示所述当前块的最后一个游程类型是复制索引模式或复制上方模式,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有第一索引值的M个连续索引,以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前块的所述最后一个游程类型是所述复制索引模式或所述复制上方模式;以及根据所述最大调色板游程从所述视频比特流解码与所述当前像素相关的当前游程,其中,如果剩余调色板索引的数量大于0,则根据以下等式确定所述最大调色板游程,maxPaletteRun=nCbS*nCbS–scanPos–last_palette_run_type_flag–2,maxPaletteRun=nCbS*nCbS–scanPos–(last_palette_run_type_flag==the copy-index mode?0:1)–2,或
maxPaletteRun=nCbS*nCbS–scanPos–(last_palette_run_type_flag==the copy-above mode?1:0)–2,
其中,maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置,以及last_palette_run_type_flag表示第一语法元素,如果所述最后一个游程类型是所述复制上方模式,则last_palette_run_type_flag的值为1,如果所述最后一个游程类型是所述复制索引模式,则last_palette_run_type_flag的值为0。
5.一种使用调色板编码模式进行视频或图像解码的装置,其特征在于,包括一个或多个电子电路,用于执行以下步骤:
接收对应于当前块的编码数据的视频比特流;
从所述视频比特流解析第一语法元素,以指示所述当前块的最后一个游程类型是复制索引模式或复制上方模式,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有第一索引值的M个连续索引,以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前块的所述最后一个游程类型是所述复制索引模式或所述复制上方模式;以及根据所述最大调色板游程从所述视频比特流解码与所述当前像素相关的当前游程;
根据以下等式确定所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–last_palette_run_type_flag–1,或
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–(last_palette_run_type_flag==the copy-index mode?0:1)–1,或
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–(last_palette_run_type_flag==the copy-above mode?1:0)–1,
其中,maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置,NumIndicesLeft表示剩余调色板索引的数量,以及last_palette_run_type_flag表示第一语法元素,如果所述最后一个游程类型是所述复制上方模式,则last_palette_run_type_flag的值为1,如果所述最后一个游程类型是所述复制索引模式,则last_palette_run_type_flag的值为0。
6.一种使用调色板编码模式的视频或图像编码的方法,其特征在于,包括:
确定当前块的当前调色板索引图;
使用包括复制索引模式和复制上方模式的调色板索引预测模式将所述当前调色板索引图编码成语法元素,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有第一索引值的M个连续索引,以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前块的最后一个游程类型是所述复制索引模式或所述复制上方模式;以及根据所述最大调色板游程将与所述当前像素相关的当前游程编码为一个或多个二进制串;
根据以下等式确定所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–last_palette_run_type_flag–1,或
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–(last_palette_run_type_flag==the copy-index mode?0:1)–1,或
maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–(last_palette_run_type_flag==the copy-above mode?1:0)–1,
其中,maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置,NumIndicesLeft表示剩余调色板索引的数量,以及last_palette_run_type_flag表示第一语法元素,如果所述最后一个游程类型是所述复制上方模式,则last_palette_run_type_flag的值为1,如果所述最后一个游程类型是所述复制索引模式,则last_palette_run_type_flag的值为0。
7.根据权利要求6所述的方法,其特征在于,还包括发信第一语法元素以指示所述当前块的所述最后一个游程类型。
8.根据权利要求7所述的方法,其特征在于,还包括确定所述当前块的块大小和所述当前像素的像素位置,其中所述编码信息还包括所述当前块的所述块大小和所述当前像素的所述像素位置。
9.根据权利要求8所述的方法,其特征在于,还包括为位于所述当前像素的所述像素位置的所述当前块导出剩余调色板索引的数量,其中所述编码信息还包括所述剩余调色板索引的数量。
10.一种使用调色板编码模式的视频或图像编码的方法,其特征在于,包括:
确定当前块的当前调色板索引图;
使用包括复制索引模式和复制上方模式的调色板索引预测模式将所述当前调色板索引图编码成语法元素,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有第一索引值的M个连续索引,以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前块的最后一个游程类型是所述复制索引模式或所述复制上方模式;以及根据所述最大调色板游程将与所述当前像素相关的当前游程编码为一个或多个二进制串;如果剩余调色板索引的数量大于0,则根据以下等式确定所述最大调色板游程,maxPaletteRun=nCbS*nCbS–scanPos–last_palette_run_type_flag–2,maxPaletteRun=nCbS*nCbS–scanPos–(last_palette_run_type_flag==the copy-index mode?0:1)–2,或
maxPaletteRun=nCbS*nCbS–scanPos–(last_palette_run_type_flag==the copy-above mode?1:0)–2,
其中,maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置,以及last_palette_run_type_flag表示第一语法元素,如果所述最后一个游程类型是所述复制上方模式,则last_palette_run_type_flag的值为1,如果所述最后一个游程类型是所述复制索引模式,则last_palette_run_type_flag的值为0。
11.一种使用调色板编码模式的视频或图像解码方法,其特征在于,包括:
接收对应于当前块的编码数据的视频比特流;
在所述当前块的比特流中的所述当前块的游程类型组和游程长度组之前,解析所述当前块的复制索引模式的第一总数量和复制上方模式的第二总数量,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有所述第一索引值的M个连续索引;以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前像素的剩余复制索引模式的第一数量和剩余复制上方模式的第二数量,其中基于所述复制索引模式的所述第一总数来导出所述剩余复制索引模式的所述第一数量,并且基于所述复制上方模式的所述第二总数量来导出所述剩余复制上方模式的所述第二数量;以及根据所述最大调色板游程从所述视频比特流解码与所述当前像素相关的当前游程;
根据以下等式来确定所述当前像素的所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–1–所述剩余复制索引模式的所述第一数量–所述剩余复制上方模式的所述第二数量,
其中maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置;
如果所述剩余复制索引模式的所述第一数量和所述剩余复制上方模式的所述第二数量都大于0,则根据maxPaletteRun=nCbS*nCbS–scanPos–3来确定所述当前像素的所述最大调色板游程。
12.根据权利要求11所述的方法,其特征在于,还包括确定所述当前块的块大小和所述当前像素的像素位置,其中所述编码信息还包括所述当前块的所述块大小和所述当前像素的所述像素位置。
13.一种使用调色板编码模式的视频或图像解码方法,其特征在于,包括:
接收对应于当前块的编码数据的视频比特流;
在所述当前块的比特流中的所述当前块的游程类型组和游程长度组之前,解析所述当前块的复制索引模式的第一总数量和复制上方模式的第二总数量,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有所述第一索引值的M个连续索引;以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前像素的剩余复制索引模式的第一数量和剩余复制上方模式的第二数量,其中基于所述复制索引模式的所述第一总数来导出所述剩余复制索引模式的所述第一数量,并且基于所述复制上方模式的所述第二总数量来导出所述剩余复制上方模式的所述第二数量;以及根据所述最大调色板游程从所述视频比特流解码与所述当前像素相关的当前游程;
根据以下等式来确定所述当前像素的所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–1–所述剩余复制索引模式的所述第一数量–所述剩余复制上方模式的所述第二数量,
其中maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置;
如果所述剩余复制索引模式的所述第一数量和所述剩余复制上方模式的所述第二数量中的一个大于0,并且所述剩余复制索引模式的所述第一数量和所述剩余复制上方模式的所述第二数量中的另一个等于0,根据maxPaletteRun=nCbS*nCbS–scanPos–2来确定所述当前像素的所述最大调色板游程。
14.一种使用调色板编码模式的视频或图像解码方法,其特征在于,包括:
接收对应于当前块的编码数据的视频比特流;
在所述当前块的比特流中的所述当前块的游程类型组和游程长度组之前,解析所述当前块的复制索引模式的第一总数量和复制上方模式的第二总数量,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有所述第一索引值的M个连续索引;以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前像素的剩余复制索引模式的第一数量和剩余复制上方模式的第二数量,其中基于所述复制索引模式的所述第一总数来导出所述剩余复制索引模式的所述第一数量,并且基于所述复制上方模式的所述第二总数量来导出所述剩余复制上方模式的所述第二数量;以及根据所述最大调色板游程从所述视频比特流解码与所述当前像素相关的当前游程;
根据以下等式来确定所述当前像素的所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–1–所述剩余复制索引模式的所述第一数量–所述剩余复制上方模式的所述第二数量,
其中maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置;
如果所述剩余复制索引模式的所述第一数量和所述剩余复制上方模式的所述第二数量都不大于0,则根据maxPaletteRun=nCbS*nCbS–scanPos–1来确定所述当前像素的所述最大调色板游程。
15.一种使用调色板编码模式的视频或图像编码的方法,其特征在于,包括:
确定当前块的当前调色板索引图;
使用包括复制索引模式和复制上方模式的调色板索引预测模式将所述当前调色板索引图编码成语法元素,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有第一索引值的M个连续索引,以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
在所述当前块的比特流中的所述当前块的游程类型组和游程长度组之前,发信所述复制索引模式的第一总数量和所述复制上方模式的第二总数量;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前像素的剩余复制索引模式的第一数量和剩余复制上方模式的第二数量,其中基于所述复制索引模式的所述第一总数来导出所述剩余复制索引模式的所述第一数量,并且基于所述复制上方模式的所述第二总数量来导出所述剩余复制上方模式的所述第二数量;以及根据所述最大调色板游程将与所述当前像素相关的当前游程编码为一个或多个二进制串;
根据以下等式来确定所述当前像素的所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–1–所述剩余复制索引模式的所述第一数量–所述剩余复制上方模式的所述第二数量,
其中maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置;
如果所述剩余复制索引模式的所述第一数量和所述剩余复制上方模式的所述第二数量都大于0,则根据maxPaletteRun=nCbS*nCbS–scanPos–3来确定所述当前像素的所述最大调色板游程。
16.根据权利要求15所述的方法,其特征在于,还包括确定所述当前块的块大小和所述当前像素的像素位置,其中所述编码信息还包括所述当前块的所述块大小和所述当前像素的所述像素位置。
17.一种使用调色板编码模式的视频或图像编码的方法,其特征在于,包括:
确定当前块的当前调色板索引图;
使用包括复制索引模式和复制上方模式的调色板索引预测模式将所述当前调色板索引图编码成语法元素,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有第一索引值的M个连续索引,以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
在所述当前块的比特流中的所述当前块的游程类型组和游程长度组之前,发信所述复制索引模式的第一总数量和所述复制上方模式的第二总数量;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前像素的剩余复制索引模式的第一数量和剩余复制上方模式的第二数量,其中基于所述复制索引模式的所述第一总数来导出所述剩余复制索引模式的所述第一数量,并且基于所述复制上方模式的所述第二总数量来导出所述剩余复制上方模式的所述第二数量;以及根据所述最大调色板游程将与所述当前像素相关的当前游程编码为一个或多个二进制串;
根据以下等式来确定所述当前像素的所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–1–所述剩余复制索引模式的所述第一数量–所述剩余复制上方模式的所述第二数量,
其中maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置;
如果所述剩余复制索引模式的所述第一数量和所述剩余复制上方模式的所述第二数量中的一个大于0,并且所述剩余复制索引模式的所述第一数量和所述剩余复制上方模式的所述第二数量中的另一个等于0,根据maxPaletteRun=nCbS*nCbS–scanPos–2来确定所述当前像素的所述最大调色板游程。
18.一种使用调色板编码模式的视频或图像编码的方法,其特征在于,包括:
确定当前块的当前调色板索引图;
使用包括复制索引模式和复制上方模式的调色板索引预测模式将所述当前调色板索引图编码成语法元素,其中通过发信第一索引值和M个游程,所述复制索引模式表示所有具有第一索引值的M个连续索引,以及通过发信N个游程,所述复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值;
在所述当前块的比特流中的所述当前块的游程类型组和游程长度组之前,发信所述复制索引模式的第一总数量和所述复制上方模式的第二总数量;
基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前像素的剩余复制索引模式的第一数量和剩余复制上方模式的第二数量,其中基于所述复制索引模式的所述第一总数来导出所述剩余复制索引模式的所述第一数量,并且基于所述复制上方模式的所述第二总数量来导出所述剩余复制上方模式的所述第二数量;以及根据所述最大调色板游程将与所述当前像素相关的当前游程编码为一个或多个二进制串;
根据以下等式来确定所述当前像素的所述最大调色板游程,
maxPaletteRun=nCbS*nCbS–scanPos–1–所述剩余复制索引模式的所述第一数量–所述剩余复制上方模式的所述第二数量,
其中maxPaletteRun表示所述最大调色板游程,nCbS表示块宽度和高度,scanPos表示所述当前像素的像素位置;
如果所述剩余复制索引模式的所述第一数量和所述剩余复制上方模式的所述第二数量都不大于0,则根据maxPaletteRun=nCbS*nCbS–scanPos–1来确定所述当前像素的所述最大调色板游程。

说明书全文

使用调色板编码模式的视频和图像编解码的方法和装置

[0001] 相关申请的交叉引用
[0002] 本申请要求2015年3月18日递交的申请号为62/134,655的美国临时案的优先权。在此合并参考该美国临时案的申请标的。

技术领域

[0003] 本发明有关于使用包括游程模式(run mode)的调色板编码模式的视频编码系统。特别地,本发明关于根据与当前相关的编码信息,减少用于编码当前像素的最大游程长度。

背景技术

[0004] 高效率视频编码(High Efficiency Video Coding,HEVC)是近年来已经开发出来的新的编码标准。在高效率视频编码系统中,H.264/AVC的固定大小宏块被称为编码单元(coding unit,编码单元)的灵活块(flexible block)所替换。编码单元中的像素共享相同的编码参数以提高编码效率。编码单元可以从最大编码单元(largest CU,LCU)开始,其在HEVC中也被称为编码树单元(coded tree unit,CTU)。除了编码单元的概念,预测单元(PU)的概念也引入到了HEVC 中。一旦编码单元层次树(CU hierarchical tree)的拆分(splitting)完成,则根据预测类型和预测单元分区(PU partition)将每个叶编码单元(leaf CU)进一步拆分成一个或多个预测单元。
[0005] 随着高效率视频编码(HEVC)标准的开发,HEVC的扩展开发也开始了。 HEVC扩展包括屏幕内容编码(SCC)。由于屏幕内容的特定属性,编码工具已被开发出来,并且在编码效率方面取得了显著的进步。其中,颜色索引编码(又称基于主要颜色的编码)技术表示使用调色板(主要颜色)的索引的像素块,并通过利用空间冗余来编码调色板和索引。虽然可能的颜色组合的总数是巨大的,但是对于典型的屏幕内容,图片区域中的颜色数量通常非常有限。因此,颜色索引编码对于屏幕内容材料变得非常有效。相关的关键颜色索引编码技术(related key color index coding techniques)简要回顾如下。
[0006] 调色板编码
[0007] 在HEVC屏幕内容编码(SCC)的开发期间,已经公开了若干建议来解决基于调色板的编码。例如,在JCTVC-N0247(Guo et al.,“RCE3:Results of Test 3.1 on Palette Mode for Screen Content Coding”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11,14th Meeting:Vienna,AT,25July–2Aug.2013Document:JCTVC-N0247)和 JCTVC-O0218(Guo et al.“,Evaluation of Palette Mode Coding on HM-12.0+RExt-4.1”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11,15th Meeting:
Geneva,CH,23Oct. –1,Nov.2013,Document:JCTVC-O0218)中公开了调色板预测和共享技术。在 JCTVC-N0247中,每个颜色分量(color component)的调色板被构造和发送 (transmit)。可以从其左边相邻的编码单元来预测(或共享)调色板以减小比特率。然后,使用它们的调色板索引来对给定块内的所有像素进行编码。根据 JCTVC-N0247的编码处理的示例如下所示。
[0008] 1.调色板的发送:首先发送颜色索引表(也称为调色板表)大小,然后是调色板元素(即,颜色值)。
[0009] 2.像素值的发送:编码单元中的像素以光栅扫描顺序编码。对于一个或多个像素的每个组,首先发送用于基于游程的模式(run-based mode)的标志,以指示是否正在使用“复制索引模式(copy-index mode)”或“复制上方模式 (copy-above mode)”。
[0010] 2.1复制索引模式:在复制索引的模式中,首先发信(signal)调色板索引,然后是表示游程值(run value)的“palette_run”(例如,M)。在本发明中,术语“palette_run”也可以被称为“pixel_run”。游程值指示总共M个样本都使用复制索引模式来编码。对于当前位置和随后的M个位置,不需要发送进一步的信息,因为它们具有与在比特流中发信的相同的调色板索引。调色板索引(例如, i)也可以由所有的三个颜色分量共享,这意味着,对于YUV色彩空间的情况,重构的像素值是(Y,U,V)=(paletteY[i],paletteU[i],paletteV[i])。
[0011] 2.2复制上方模式:在复制上方模式中,发送值“copy_run”(例如,N),以指示对于随后的N个像素(包括当前像素),调色板索引与上方行中的相应调色板索引相同。
[0012] 3.残差(residue)的发送:在阶段2中发送的调色板索引被转换回像素值并且用作预测。使用HEVC残留编码(HEVC residual coding)来发送残差信息,并将残差信息添加到用于重构的预测中。
[0013] 在本发明中,“复制索引模式”和“复制上方模式”都被称为调色板索引编码的复制模式。此外,调色板模式在以下描述中也被称为调色板编码模式。
[0014] 在JCTVC-N0247中,每个分量的调色板可被构造和发送。可以从左侧相邻的编码单元来预测(共享)调色板以减小比特率。在JCTVC-O0218中,调色板中的每个元素是三位字节(triplet),表示三个颜色分量的特定组合。此外,编码单元外的调色板的预测编码被移除。
[0015] 主要颜色(或调色板)编码
[0016] 还已经公开了类似于JCTVC-O0218的另一调色板编码技术。取代从左侧 CU预测整个调色板表,调色板中的单独调色板颜色条目是从上方CU或左侧 CU中的确切对应调色板颜色条目来预测的。
[0017] 对于像素调色板索引值的传输,例如在JCTVC-O0182(Guo et al.,“AHG8: Major-color-based screen content coding”,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11,15th Meeting:Geneva,CH,23Oct.–1Nov.2013,Document:JCTVC-O0182)中公开了应用于索引的预测编码方法。使用三种行模式(line mode),即平模式、垂直模式和正常模式,用于编码每个索引行。在水平模式中,同一行中的所有索引具有相同的值。如果该值与上方像素行的第一像素相同,则仅发送行模式信令比特(line mode signaling bits)。否则,还需发送索引值。在垂直模式中,它指示当前索引行与上方索引行相同。因此,仅发送行模式信令比特。在正常模式下,一行中的索引是单独预测的。对于每个索引位置,左侧或上方的相邻像素被用作预测器,并且预测器号(prediction symbol)也被发送到解码器
[0018] 此外,根据JCTVC-O0182,将像素分类成主要颜色像素(具有指向调色板颜色的调色板索引)和跳出像素。对于主要颜色像素,根据解码器侧中的主要颜色索引(即,调色板索引)和调色板表来重构像素值。对于跳出像素,在比特流中进一步发信(signal)像素值。
[0019] 调色板表发信(Palette table signaling)
[0020] 在屏幕内容编码(screen content coding,SCC)标准的参考软件(即,SCM-2.0 (Joshi et al.,Screen content coding test model 2(SCM 2),Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG 16WP3 and ISO/IEC JTC 1/SC29/WG11, 18th Meeting:Sapporo,JP,30June–9July 2014,Document:JCTVC-R1014)) 中,改进的调色板方案统一到JCTVC-R0348(Onno et al.,Suggested combined software and text for run-based palette mode,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG 16WP3 and ISO/IEC JTC 1/SC29/WG11,18th Meeting:Sapporo,JP,30June–
9July 2014,Document:JCTVC-R0348)中。先前调色板编码的编码单元的调色板表被用作当前调色板表编码的预测器。在调色板表编码中,通过选择先前编码调色板表(调色板预测器)中的哪些调色板颜色被重用,或通过发送新调色板颜色,来发信(signal)当前调色板表。当前调色板大小被设置为预测调色板大小(即,numPredPreviousPalette)加上所发送的调色板大小(即,num_signaled_palette_entries)。预测调色板是从先前重构的调色板编码的编码单元导出的调色板。当将当前编码单元编码为调色板模式时,那些调色板颜色,不使用预测调色板来预测,而是在比特流(即,发信的条目) 中直接发送。
[0021] 调色板更新的示例如下所示。在此实例中,当前编码单元被编码为具有调色板大小等于6的调色板模式。六种主要颜色中的三种是从调色板预测器来预测的(numPredPreviousPalette=3),以及另外三种是通过比特流直接发送的。可以使用下面示出的示例性语法来发信所发送的三种颜色。
[0022] num_signaled_palette_entries=3
[0023] for(cIdx=0;cIdx<3;cIdx++)//signal colors for different components[0024] for(i=0;i
[0025] palette_entries[cIdx][numPredPreviousPalette+i]
[0026] 由于在该示例中调色板大小是6,所以从0到5的调色板索引用于指示调色板颜色表中的主要颜色条目。3个预测调色板颜色由索引0到2来表示。因此, 3个新的调色板条目为索引3到5而发送。
[0027] 在SCM-2.0中,如果不应用波前并行处理(wavefront parallel processing, WPP),则在每个切片(slice)的开始处或在每个图像块(tile)的开始处初始化 (重置)调色板预测器表。如果应用WPP,则最后编码的调色板表不仅在每个切片的开始处或在每个图像块的开始处被初始化(重置),而且还在每个编码树单元行(CTU row)的开始处被初始化(重置)。
[0028] SCM-4.0中的调色板索引图编码(Palette Index Map Coding)
[0029] 在根据SCM-4.0(Rosewarne et al.,High Efficiency Video Coding(HEVC)Test Model 16(HM 16)Improved encoder description Update 2,JCTVC-T1002,ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11,20th Meeting:Geneva,CH,Feb.2015, Document:JCTVC-T1002)的调色板模式编码中,调色板索引在最前面(即,在 palette_run_mode和palette_run编码之前)进行分组和编码,以及跳出像素在最后被编码。palette_run_mode和palette_run在调色板索引和跳出像素之间编码。
[0030] 调色板预测器初始化
[0031] 在SCM-4.0中,全局调色板预测器集合在PPS中被发信。使用从PPS获得的值,来设置调色板预测状态(包括PredictorPaletteSize、PreviousPaletteSize和 PredictorPaletteEntries),而不是设置为全0。
[0032] 调色板语法
[0033] 对于索引图中的索引的游程,需要发信的几个元素,包括:
[0034] 1)游程类型:它是复制上方游程或复制索引游程。
[0035] 2)调色板索引:在复制索引游程中,它用于发信用于此游程的索引。
[0036] 3)游程长度:复制上方和复制索引类型的游程的长度。
[0037] 4)跳出像素:如果在游程中有N(N>=1)个跳出像素,则需要为这N个跳出像素发信N个像素值。
[0038] 在JCTVC-T0065(Karczewicz,et al.,Non CE1:Grouping Palette Indices At Front,Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG 16WP 3 and ISO/IEC JTC 1/SC 29/WG 11,20th Meeting:Geneva,CH,10–18Feb.2015, Document:JCTVC-T0065)中,公开了一种语法信令,其中所有调色板索引被分组在一起。首先发信调色板索引的数量,随后是调色板索引,如表1所示。
[0039] 表1
[0040]
[0041]
[0042] 如上方的语法表所示,导出最大调色板游程以限制调色板游程的最大码字 (codeword)。希望基于与块相关的编码信息来减少最大调色板游程,以提高编码效率。

发明内容

[0043] 本发明公开了使用包括游程模式的调色板编码模式的视频编码的方法和装置。在一个实施例中,系统基于编码信息来确定正被编码的当前像素的最大调色板游程,所述编码信息包括所述当前块的最后一个游程类型是所述复制索引模式或所述复制上方模式。在另一个实施例中,用于确定最大调色板游程的编码信息还包括当前块的块大小和当前像素的像素位置。然后根据最大调色板游程,将与当前像素相关的当前游程编码为一个或多个二进制串,或者从比特流解码当前像素相关的当前游程。用于指示当前块的最后一个游程类型的语法元素可以被发信或从比特流中解析。
[0044] 系统可导出位于当前像素的像素位置处的当前块的剩余调色板索引的数量,并且将剩余调色板索引的数目包含在编码信息中。在一个示例中,最大调色板游程可以根据(nCbS*nCbS–scanPos–NumIndicesLeft– last_palette_run_type_flag–1)来确定,其中nCbS表示块宽度和高度,scanPos 表示当前像素的像素位置,NumIndicesLeft表示剩余调色板索引的数量,如果最后一个游程类型是复制上方模式,则语法元素last_palette_run_type_flag的值为 1,如果最后一个游程类型为复制索引模式,则last_palette_run_type_flag的值为  0。在一个示例中,最大调色板游程可以根据(nCbS*nCbS–scanPos– NumIndicesLeft–(last_palette_run_type_flag==the copy-index mode?0:1)–1) 或(nCbS*nCbS–scanPos–NumIndicesLeft–(last_palette_run_type_flag==the copy-above mode?1:0)–1)来确定。
[0045] 在又一示例中,如果剩余调色板索引的数量大于0,则最大调色板游程可以根据(nCbS*nCbS–scanPos–last_palette_run_type_flag–2),(nCbS*nCbS– scanPos–(last_palette_run_type_flag==the copy-index mode?0:1)–2)或(nCbS *nCbS–scanPos–(last_palette_run_type_flag==the copy-above mode?1:0)– 2)来确定。
[0046] 在另一个实施例中,在当前块的比特流中的当前块的游程类型组和游程长度组之前,发信或解析当前块的复制索引模式的数量和复制上方模式的数量,当前块。基于复制索引模式的数量导出剩余复制索引模式的数量。基于复制上方模式的数量导出剩余复制上方模式的数量。基于编码信息来导出正被编码的当前像素的最大调色板游程,该编码信息包括当前像素的剩余复制索引模式的数目和剩余复制上方模式的数量。在另一实施例中,编码信息还包括当前块的块大小和当前像素的像素位置。在一个示例中,根据(nCbS*nCbS–scanPos–1 –剩余复制索引模式的数量-剩余复制上方模式的数量)来确定当前像素的最大调色板游程。在另一示例中,如果剩余复制索引模式的数量和剩余复制上方模式的数目都大于0,则根据(nCbS*nCbS–scanPos–3)来确定当前像素的最大调色板游程。如果剩余复制索引模式数量和剩余复制上方模式的数量之一大于0,另一个等于0,则根据(nCbS*nCbS–scanPos–2)来确定当前像素的最大调色板游程。如果剩余复制索引模式数量和剩余复制上方模式数量都不大于 0,则根据(nCbS*nCbS–scanPos–1)来确定当前像素的最大调色板游程。附图说明
[0047] 图1为扩展复制上方游程模式的示例,其中从位于CU边界上方的上一行复制两行像素(即L=2)。
[0048] 图2为通过发信语法元素pixel_num(M)来指示第一M个(即,M=11 个)样本是从重构像素预测的跨越编码单元的预测的示例。
[0049] 图3为根据本发明的实施例的为copy_pixel_from_neighboring_CU插入附加索引的示例。
[0050] 图4为根据本发明的实施例的视频解码器使用调色板编码模式的示例性流程图
[0051] 图5为根据本发明的另一实施例的视频解码器使用调色板编码模式的示例性流程图。

具体实施方式

[0052] 以下描述为本发明的较佳实施例。以下实施例仅用来举例阐释本发明的技术特征,并非用以限定本发明。本发明的保护范围当视权利要求书所界定为准。
[0053] 调色板游程编码
[0054] 为了提高语法解析和/或编码效率,在本申请的一些共同发明人的共同待决的PCT专利申请(申请号为PCT/CN2015/094410,于2015年11月12日提交) 中公开了在调色板游程类型和调色板游程长度的语法元素之前对所有调色板索引进行分组的方法。发信“索引数量”,并使用一个标志(flag)来指示最后一个游程(last run)类型是COPY_ABOVE还是COPY_INDEX。随着索引数量和最后一个游程类型的识别,可以检测到最后一个游程,并且无需发信该最后一个游程。在解码器侧,可以导出长度以到达块的结尾(例如,调色板编码的CU),而不需要解析最后一个游程。
[0055] 根据本申请的一些共同发明人的另一共同未决的PCT专利申请(申请号为 PCT/CN2016/073289,于2016年2月3日提交)公开的方法的调色板语法信令的顺序为下面:
[0056] “number of palette indices→palette index group→last_run_type”→[0057] {run_type,run_length}pair interleaved↑Escape value group
[0058] 此外,在本申请的一些共同发明人的共同未决的PCT专利申请(申请号为 PCT/CN2015/094410,于2015年11月12日提交)中,所有游程类型和所有游程长度的编码是分组在一起的,与索引图编码(index map coding)相关的其他语法元素分组也可以与之进行组合。
[0059] 在SCM-4.0中,在每个编码块的比特流内,调色板索引在最前面被分组,并且跳出值在最后面被分组。发信语法last_palette_run_type_flag以指示最后一个游程类型是复制上方模式(COPY_ABOVE_MODE)还是复制索引模式(COPY_INDEX_MODE)。调色板游程模式和调色板游程对(palette run pairs) 在索引组之后进行编码。当编码调色板游程时,导出最大可用游程(也称为最大调色板游程),以限制调色板游程的最大码字。在SCM-4.0中,可以导出剩余 index_run模式的数量,并且发信的每个index_run模式对应于在比特流中发信的至少一个索引。因此,最大可用游程maxPaletteRun可以确定如下:
[0060] maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft–1  (1)[0061] 在等式(1)中,scanPos是扫描顺序中的当前位置,NumIndicesLeft是直到当前位置的剩余索引数,nCbS表示块宽度和高度,NumIndicesLeft表示剩余调色板索引的数量。
[0062] 在一个实施例中,当NumIndicesLeft大于0时,maxPaletteRun可以修改为如等式(2)所示。
[0063] if(NumIndicesLeft)
[0064] maxPaletteRun=nCbS*nCbS–scanPos–2  (2)
[0065] 在SCM-4.0中,在调色板游程之前还发信last_palette_run_type_flag。如果 last_palette_run_type_flag等于1,则表示最后一个游程类型为copy_above_mode。最后一个copy_above_mode对应于在比特流中发信的至少一个像素(索引)。因此,根据一个实施例,最大可用游程被修改为:
[0066] maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft– last_palette_run_type_flag–1  (3)
[0067] maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft– (last_palette_run_type_flag==COPY_INDEX_MODE?0:1)–1   (4)
[0068] 或
[0069] maxPaletteRun=nCbS*nCbS–scanPos–NumIndicesLeft– (last_palette_run_type_flag==COPY_ABOVE_MODE?1:0)–1   (5)
[0070] 在上述实施例中,等式(3)至(5)中的示例为产生相同结果的三种替代语法表示。在上述等式中,逻辑运算(x?y:z)具有以下含义:如果x为TRUE 或不等于0,则求值为y;否则,求值为z。
[0071] 在另一个实施例中,当NumIndicesLeft大于0时,maxPaletteRun可以根据 last_palette_run_type_flag的值来减少。根据本实施例的示例如下所示:
[0072] if(NumIndicesLeft)
[0073] maxPaletteRun=nCbS*nCbS–scanPos–last_palette_run_type_flag–2   (6)[0074] 或
[0075] if(NumIndicesLeft)
[0076] maxPaletteRun=nCbS*nCbS–scanPos– (last_palette_run_type_flag==COPY_INDEX_MODE?0:1)–2 (7)
[0077] 或
[0078] if(NumIndicesLeft)
[0079] maxPaletteRun=nCbS*nCbS–scanPos– (last_palette_run_type_flag==COPY_ABOVE_MODE?1:0)–2 (8)
[0080] 在上述实施例中,等式(6)至(8)中的示例为产生相同结果的三种替代语法表示。
[0081] 在另一个实施例中,可以改变语法顺序。例如,可以在调色板游程之前发信调色板游程类型组(palette run type group)。此外,可以在游程类型组(run type group)和游程长度组(run length group)之前发信复制上方模式(即, copy_above_run)的数量和/或复制索引模式(即index_run)的数量。示例性语法顺序可以是:number of copy_above_run or number of index_run→palette index group→last_run_mode→run type group→run length group→escape value group。当编码调色板游程时,最大可用游程可以减去其余已知模式的数量。例如,maxPaletteRun=nCbS*nCbS–scanPos–1–number of remaining COPY_ABOVE_MODE–number of remaining COPY_INDEX_MODE.
[0082] 在另一实施例中,
[0083] 如果所述number of remaining COPY_ABOVE_MODE和所述number of remaining COPY_INDEX_MODE都大于0,则
[0084] maxPaletteRun=nCbS*nCbS–scanPos–3  (9)
[0085] 或者,如果所述number of remaining COPY_ABOVE_MODE>0以及所述[0086] number of remaining COPY_INDEX_MODE==0,则
[0087] maxPaletteRun=nCbS*nCbS–scanPos–2,  (10)
[0088] 或者,如果所述number of rest COPY_ABOVE_MODE==0以及所述number of remaining COPY_INDEX_MODE>0,
[0089] maxPaletteRun=nCbS*nCbS–scanPos–2  (11)
[0090] 否则,maxPaletteRun=nCbS*nCbS–scanPos–1  (12)
[0091] 跨越(across)CU的预测
[0092] 为了进一步提高跨越CU边界的调色板预测的编码效率,公开了特定游程 (special run)。该特定游程扩展了从调色板编码的CU的第一个样本开始的复制上方游程。可以一次发信该特定游程。在扩展的复制上方游程模式中的样本是从相邻CU中的重构像素预测的。使用SCM-4.0中指定的调色板语法对该CU 中的剩余样本进行编码,但在PU/CU中的总调色板编码样本减少。
[0093] 实施例1:首先发信语法元素(例如,由L表示的line_num),以指示第一 L行样本是从相邻CU中的重构像素预测的,其中L是正整数。使用SCM-4.0 中的调色板语法对剩余样本进行编码,但PU/CU中的总调色板编码样本减少。对于第一L行样本,它们的像素值是从相邻CU中的重构像素预测的。例如,如果palette_transpose_flag为0,则使用上方CU中的重构像素。第一L行样本的像素值是上方CU的最后一行的重构像素值。类似于将内垂直预测应用于前 L行样本,而剩余的行用正常调色板模式进行编码。
[0094] 图1为扩展的复制上方游程模式的示例,其中从位于CU边界110上方的上方行复制两行像素(即L=2)。
[0095] 实施例2:首先发信语法元素(例如,由M表示的pixel_num),以指示第一M个采样是从相邻CU中的重构像素预测的,其中M是正整数。使用SCM-4.0 中的调色板语法对剩余样本进行编码,但PU/CU中的总调色板编码样本减少。例如,如果palette_transpose_flag为0,则使用上方CU中的重构像素。第一M 个样本的像素值是上方CU的最后一行的重构像素值。这类似于将帧内垂直预测应用于第一M个样本。如果CU的宽度为CU_width,则根据SCM-4.0中的语法,从CU中的第(M+1)个开始到(M+CU_width)个样本的第一CU_width个样本,不能在复制上方游程模式下进行编码。换句话说,根据SCM-4.0中的语法,扫描位置等于M到(M+CU_width-1)的样本不能在复制上方游程模式下进行编码。图2为通过发信语法元素pixel_num(M)来指示第一M个(即,M =11个)样本是从重构像素预测的跨越CU边界210的预测的示例。
[0096] 例如,可以修改SCM-4.0中palette_coding的语法表,如表2所示。
[0097] 表2
[0098]
[0099] 如表2所示,语法元素pixel_num被包含在其中,如注释(2-1)所示,其中在调色板索引图编码之前发信pixel_num。从pixel_num开始的扫描位置编码剩余调色板样本,如注释(2-2)所示。以前的调色板样品位置是根据注释(2-3) 得出的。在第一pixel_num个样本之后的第一个样本行不允许复制上方模式,如注释(2-4)所示。
[0100] 表示调整后的最大索引的变量adjustIndexMax通过如下方式导出:
[0101] adjustedIndexMax=indexMax
[0102] if(scanPos>pixel_num)
[0103] adjustedIndexMax-=1
[0104] 表示经调整后的最大参考索引的变量adjustRefIndexMax通过如下方式导出:
[0105]
[0106] 在上述实施例1和实施例2中,可以首先发信语法元素 copy_from_neighbouring_CU_flag。如果copy_from_neighbouring_CU_flag为0,则不会发信line_num和pixel_num,并将其推定为0。如果 copy_from_neighbouring_CU_flag为1,则会发信line_num和pixel_num。实际 line_num和pixel_num等于解析的line_num和pixel_num加1。
[0107] 联合第一行可以跨越CU的复制索引和在前面发信索引集合的调色板索引图编码方法
[0108] 当应用如JCTVC-T0036(JCTVC-T0036:Sun,et al.,CE1:Tests A.1: Extended copy above mode to the first line(1.1-1.5),Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11, 20th Meeting:Geneva,CH,10–18Feb.2015,Document:JCTVC-T0036)中描述的第一行的复制上方索引/像素时,需要部分冗余索引移除(partial redundant index removal)。adjustedIndexMax取决于先前编码的调色板游程模式以及上方样本是否是从相邻CU复制的。然而,如JCTVC-T0065中描述的在前面移动索引组的方法中,除第一个索引之外,adjustedIndexMax始终是固定值。为了解决这个冲突,adjustedRefIndex的导出修改如下。
[0109] 实施例1:对adjustedIndexMax没有改变
[0110] 在该实施例中,adjustedIndexMax始终固定为indexMax。除了当先前的编码游程类型是复制上方模式(即,COPY_ABOVE_MODE)时以及上方的样本是从相邻CU复制的,仍然应用索引冗余移除。变量adjustedRefIndex导出如下:
[0111]
[0112]
[0113] 如上述的伪码(pseudo codes)所示,包括对应于先前编码的游程类型为 COPY_ABOVE_MODE的测试条件“PaletteIndexMap[xC][yC-1]!= copy_pixel_from_neighbouring_CU”,使得索引冗余移除不会应用于先前编码的游程类型是复制上方模式(即,COPY_ABOVE_MODE)的情况,并且上方样本是从相邻CU复制的。
[0114] 实施例2:为copy_pixel_from_neighbouring_CU插入附加索引(additional index)
[0115] 在该实施例中,插入特定索引(special index)以指示该样本是从相邻CU 复制的。该特定索引(例如,copy_pixel_index)可以具有对应于0、等于 currentPaletteSize(即,escape_index-1)、或等于currentPaletteSize+1的索引值。如果copy_pixel_index等于0或currentPaletteSize,则设置跳出索引等于 currentPaletteSize+1。如果copy_pixel_index等于currentPaletteSize+1,则跳出索引将设置为currentPaletteSize。
[0116] adjustedIndexMax总是固定为indexMax,如果palette_escape_val_present_flag 等于1,则设置为currentPaletteSize;如果palette_escape_val_present_flag等于0,则将indexMax设置为(currentPaletteSize-1)。索引冗余移除应用于所有样本。变量adjustRefIndex导出如下:
[0117]
[0118]
[0119] 如果第一个样本的索引等于copy_pixel_index,则强制第一个样本使用 copy_above_mode。如果重构的索引等于copy_pixel_index,则其像素值是从相邻CU复制的。例如,在图3中,点填充的像素对应于具有索引等于 copy_pixel_index的样本。对于样本A和B,其像素值等于样本D的像素值。对于样本C,其像素值等于样本E的像素值。
[0120] 调色板语法集合
[0121] 在SCM-4.0中,在各种类型的语法元素之间,调色板索引在最前面被集合,并且跳出值在最后面被集合。调色板索引和跳出值都使用旁路二进制(bypass bins)进行编码。使用调色板索引(即分组旁路编码的二进制)对跳出值进行集合可以增加解析吞吐量。在SCM-4.0中,要解析的跳出值总数取决于调色板游程模式、调色板索引和调色板游程。因此,跳出值只能在最后进行集合。为了使用调色板索引对跳出值进行集合,提出了几个实施例。
[0122] 当跳出值在最前面集合时,需要解析的跳出值的数量应该与调色板游程无关。对于跳出值解析,为了移除调色板游程中的数据依赖关系,复制上方游程模式进程被修改以从上方行复制跳出样本。
[0123] 在复制上方游程模式中,传送或导出“调色板游程”值,以指示从上方行复制的随后样本的数量。颜色索引等于上方行中的颜色索引。根据一个实施例,如果上方或左侧样品是跳出样本,则将上方样本的颜色索引视为预定的颜色索引(例如0)。当前索引设置为预定义索引,并且在这些预测器复制模式中不需要跳出值。根据本实施例,即使发信的索引等于跳出索引,也可以为索引游程模式发信调色板游程。如果跳出索引的游程大于0(例如N),则使用编码的跳出值来重构第一个样本。可以将第一个样本的索引设置为跳出索引或预定的颜色索引。将剩余的N个样本的索引设置为预定索引(例如,索引0),并且使用预定的索引(例如,索引0)的值来重构剩余的N个样本。根据本实施例,除了索引游程模式的第一个样本之外,游程模式中的最大码字索引(即, adjustedIndexMax)是固定的(例如,indexMax-1)。对于CU中的第一个样本, adjustIndexMax等于indexMax。
[0124] 可以仍然应用冗余索引移除。需要解析的跳出值的数量取决于具有跳出索引的解析/重构的索引的数量。例如,如果调色板索使用截断的二进制代码编码,并且编码的二进制都是1,则解析的索引是跳出索引。要解析的跳出值的数量与调色板游程无关。因此,跳出值的语法可以与调色板索引一起带到前面(调色板游程之前)。
[0125] 根据该实施例,如果currentPaletteSize等于0,这意味着所有样本都被编码为跳出索引,则将第一调色板索引推定为0(即,跳出索引),并且将调色板游程推定为nCbS*nCbS–1。换句话说,所有样本都被编码为跳出索引。发信(nCbS *nCbS)个样本的跳出值。在这种情况下,不需要将剩余的nCbS*nCbS-1个样本作为预定义索引。
[0126] 图4为根据本发明的实施例的视频解码器使用调色板编码模式的示例性流程图。在步骤410中,系统接收对应于当前块的编码数据的视频比特流。在步骤420中,系统从视频比特流解析第一语法元素,以指示当前块的最后一个游程类型是复制索引模式或复制上方模式。通过发信第一索引值和M个游程,复制索引模式表示所有具有第一索引值的M个连续索引;以及通过发信N个游程,复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值。然后,在步骤430中,系统基于编码信息确定正被编码的当前像素的最大调色板游程,该编码信息包括当前块的最后一个游程类型是复制索引模式或复制上方模式。在步骤440中,根据最大调色板游程,系统从视频比特流解码与当前像素相关的当前游程。
[0127] 图5为根据本发明的另一实施例的视频解码器使用调色板编码模式的示例性流程图。在步骤510中,该系统接收对应于当前块的编码数据的视频比特流。在步骤520中,在当前块的比特流中的当前块的游程类型组和游程长度组之前,系统解析当前块的复制索引模式的第一总数量和复制上方模式的第二总数量。通过发信第一索引值和M个游程,复制索引模式表示所有具有第一索引值的M 个连续索引;以及通过发信N个游程,复制上方模式表示所有与对应的N个上方像素具有相同的第二索引值的N个连续第二索引值。然后,在步骤530中,系统基于编码信息确定正被编码的当前像素的最大调色板游程,该编码信息包括当前像素的剩余复制索引模式的第一数量和剩余复制上方模式的第二数量。基于复制索引模式的第一总数量来导出剩余复制索引模式的第一数量,并且基于复制上方模式的第二总数量来导出剩余复制上个模式的第二数量。在步骤540 中,根据最大调色板游程,系统从视频比特流解码与当前像素相关的当前游程。
[0128] 以上所述的流程图旨在说明根据本发明的使用调色板编码模式的视频解码的示例。本领域的技术人员可以修改每个步骤、重新安排步骤的顺序、拆分步骤或者结合某些步骤来实现本发明,而不脱离本发明的精神。在本公开中,已经使用特定语法和语义来说明实现本发明的实施例。本领域技术人员可以通过用使用等同的语法和语义来代替本发明中的语法和语义,从而实践本发明,而不例外本发明的精神。
[0129] 以上的描述是使本领域的技术人员在本文提供的特定应用和需求下能够实践本发明。本领域的技术人员将容易地观察到,在不例外本发明的精神和范围内,可以进行多种修改和变动。因此,本发明并非限定在所示和描述的特定的实施例上,而本发明公开是为了符合原则和新颖性的最广泛的范围。在上述详细的描述中,各种具体的细节,用以提供对本发明的透彻的了解。尽管如此,将被本领域的技术人员理解的是,本发明能够被实践。
[0130] 如上述所述的本发明的实施例,可以使用硬件、软件或其组合来实现。例如,本发明的一实施例可以是集成到视频压缩芯片中的电路或集成到视频压缩软件中的程序代码,以执行所描述的处理。本发明的实施例也可以是将在数字信号处理器上执行的程序代码来执行所描述的处理。本发明还涉及一系列的由计算机处理器、数字信号处理器、微处理器和现场可编程阵列(FPGA)执行的功能。根据本发明,这些处理器可以被配置为执行特定任务,通过执行定义特定方法的计算机可读软件代码固件代码来实现。软件代码或固件代码可以用不同的编程语言和不同的格式或样式来开发。软件代码也可以为不同的目标平台所编译。然而,软件代码的不同的代码格式、格和语言,以及配置代码的其他方式以执行任务,均不例外本发明之精神和范围。
[0131] 本发明可以以其它具体形式实施而不背离其精神或本质特征。所描述的实施例在所有方面都仅是说明性的而不是限制性。本发明的范围因此由所附权利要求为准而不是由前面的描述所界定。因此,各种修改、改编以及所描述的实施例的各种特征的组合可以在不例外本发明的范围如权利要求书中阐述的情况下实施。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈