CN110336999B - 利用调色板编码的编码视频数据区块的方法和装置 - Google Patents

利用调色板编码的编码视频数据区块的方法和装置 Download PDF

Info

Publication number
CN110336999B
CN110336999B CN201910660243.0A CN201910660243A CN110336999B CN 110336999 B CN110336999 B CN 110336999B CN 201910660243 A CN201910660243 A CN 201910660243A CN 110336999 B CN110336999 B CN 110336999B
Authority
CN
China
Prior art keywords
palette
coding
block
unit
tree unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910660243.0A
Other languages
English (en)
Other versions
CN110336999A (zh
Inventor
庄子德
赖柏霖
孙域晨
刘杉
许晓中
黄毓文
陈鼎匀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Inc
Original Assignee
MediaTek Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MediaTek Inc filed Critical MediaTek Inc
Publication of CN110336999A publication Critical patent/CN110336999A/zh
Application granted granted Critical
Publication of CN110336999B publication Critical patent/CN110336999B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods 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/196Methods 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
    • H04N19/197Methods 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 including determination of the initial value of an encoding parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本发明提供一种通过初始化调色板或三重调色板、或利用自先前图像区域的选择的调色板或三重调色板以用于当前图像区域的起始区块的、视频数据的区块的调色板编码的方法和装置。该方法接收与当前图像区域相关的输入数据,该当前图像区域由多个区块组成。对于起始区块,基于初始的调色板或三重调色板、或基于与选择的区块相关的选择的调色板或三重调色板,确定其调色板预测子,其中该先前图像区域中的选择的编码树单元在该当前图像区域中的起始编码树单元之上的位置处。对于当前图像区域的区块,调色板编码被应用多个区块,其中至少一区块使用起始区块的调色板预测子作为调色板预测子。

Description

利用调色板编码的编码视频数据区块的方法和装置
交叉引用
本发明主张在2013年12月18日提出的申请号为61/917,474的美国临时专利申请的优先权;主张在2013年12月27日提出的申请号为61/921,152的美国临时专利申请的优先权;主张在2014年3月14日提出的申请号为61/952,917的美国临时专利申请的优先权;主张在2014年3月14日提出的申请号为61/952,932的美国临时专利申请的优先权;以及主张在2014年9月26日提出的申请号为62/055,692的美国临时专利申请的优先权。本发明是申请号为201480069501.3、发明名称为“利用调色板编码的编码视频数据区块的方法和装置”的发明申请的分案申请。因此在全文中合并参考该些专利申请案。
技术领域
本发明是有关于视频数据的调色板编码(palette coding),特别是有关于利用更有效的调色板初始化和管理来改进调色板预测的性能的技术。
背景技术
高效视频编码(High Efficiency Video Coding,以下简称为HEVC)是近年来开发的新的编码标准。在HEVC系统中,H.264/AVC中固定尺寸的宏块由灵活的区块来代替,并将其命名为编码单元(coding unit,CU)。在编码单元中像素共享相同的编码参数,以改善编码效率。编码单元可开始于最大编码单元(largest CU,LCU),其在HEVC中也被称为编码树单元。除编码单元的概念之外,预测单元的概念也被引入HEVC中。一旦编码单元分层树的分割完成,根据预测类型和预测分割,每一个叶编码单元被进一步分割为一个或多个预测单元。
在HEVC标准的发展过程中,也开发了HEVC的扩展版本。HEVC的扩展包括范围扩展(range extensions,以下简称为RExt),其目标在于非4:2:0颜色格式(例如4:2:2和4:4:4)以及更高比特深度视频(例如,每次采样12、14以及16比特)。利用RExt的一个可能的应用是通过有线或无线连接的屏幕共享。由于屏幕内容的具体特点,已开发一些编码工具以及这些编码工具证明编码效率收益显著。在这些编码工具中,调色板编码(也称为基于主要颜色的编码)技术利用至调色板(主要颜色)的索引(indices)而表示区块的像素,并利用空间冗余来编码调色板和索引。尽管可能的颜色组合的总数很大,但是用于典型的屏幕内容的图片区域中的颜色数通常有限。因此,调色板编码十分有效地用于屏幕内容素材(screencontent materials)。
在HEVC RExt的早期开发中,若干提议已被揭示,以处理基于调色板的编码。举例来说,调色板预测和共享技术揭示于JCTVC-N0247中(Guo et al.,“RCE3:Results of Test3.1on Palette Mode for Screen Content Coding”,Joint Collaborative Team onVideo Coding(JCT-VC)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11,14thMeeting:Vienna,AT,25July–2Aug.2013Document:JCTVC-N0247)。在JCTVC-N0247中,调色板的每一个颜色组分被构建和传送。调色板可自其左相邻的编码单元而被预测(或共享)以降低比特率。
一种改进的调色板预测和共享技术被揭示于JCTVC-O0218中(Guo et al.,“Evaluation of Palette Mode Coding on HM-12.0+RExt-4.1”,Joint CollaborativeTeam 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-O0218)。在JCTVC-O0218中,编码过程如下所示:
1.调色板的传送:首先传送调色板尺寸(调色板中颜色的数目),之后传送调色板元素(颜色值)。
2.像素调色板索引值的传送(在调色板中指向颜色的索引):在编码单元中像素的索引值以光栅扫描的顺序而被编码。对于每一个位置,首先传送一个标志来指示是否开始使用“运行模式(run mode)”或“复制上方模式(copy above mode)”。
2.1“运行模式”:在“运行模式”中,首先发送调色板索引,随后发送“palette_run”(例如,M)。一旦发送当前位置和随后M个位置具有相同的调色板索引,当前位置和随后M个位置不需要发送进一步的信息。调色板索引(例如,i)可由所有的三个颜色组分来共享,这意味着已重建的像素值(Y,U,V)=(paletteY[i],paletteU[i],paletteV[i])(假设颜色空间为YUV)。
2.2“复制上方模式”:在“复制上方模式”中,“copy_run”的值被传送以指示对于随后N个位置(包括当前位置),调色板索引等于在上方行中相同位置处像素的调色板索引。
3.残差的传送:在阶段2中传送的调色板索引被转换为颜色值并用作预测子。残差信息利用HEVC残差编码而被传送,并被添加至用于重建的预测中。
另一个调色板编码技术被揭示于JCTVC-O-0182中(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)。然而,在调色板中的各个调色板颜色条目可自上方的编码单元或左侧的编码单元中精确对应的调色板颜色条目而被预测,而不是自左侧编码单元预测整个调色板。换句话说,JCTVC-O-0182揭示了逐元素调色板预测。线模式的三种类型可被用于预测每一个索引线,即水平模式、垂直模式、以及正常模式。在水平模式中,在相同线中的所有索引具有相同的值。若值与上方像素线的第一像素相同,仅线模式发送比特被传送。否则,索引值也被传送。在垂直模式中,当前索引线与上方索引线相同。因此,仅线模式发送比特被传送。在正常模式中,在线中的索引分别被预测。对于每一个索引的位置,其左侧或上方相邻像素的索引被用作预测子,以及预测符号被传送至解码器。
因此,JCTVC-O-0182揭示了将像素分类为主要颜色像素(major color pixels)(具有指向调色板颜色的调色板索引)和逃逸像素(escape pixel)的技术。对于主要颜色像素,解码器根据主要颜色索引(也称为调色板索引)和调色板来重建像素值。对于逃逸像素,编码器会进一步发送像素值。
因此,需要开发一种进一步改善编码效率及/或降低调色板编码相关复杂性的方法。
发明内容
根据本发明的实施方式,提出一种通过初始化调色板或三重调色板、或利用自先前图像区域的选择的调色板或三重调色板以用于当前图像区域的起始区块的、视频数据的区块的调色板编码的方法和装置。该方法接收与当前图像区域相关的输入数据,该当前图像区域由多个区块组成。对于起始区块,基于初始的调色板或三重调色板、或基于与选择的区块相关的选择的调色板或三重调色板,确定调色板预测子,其中该先前图像区域中的选择的编码树单元在该当前图像区域中的起始编码树单元之上的位置处。对于当前图像区域的区块,调色板编码被应用多个区块,其中至少一区块使用起始区块的调色板预测子作为调色板预测子。图像区域可对应于编码树单元行、图块、或条带。多个区块可被配置为区块组。区块对应于编码单元;区块组对应于编码树单元;以及图像区域对应于编码树单元行。
当初始调色板或三重调色本被用作调色板预测子时,初始调色板或三重调色板可对应于预定义的值或得到的值,例如,0。当选择的调色板或三重调色板被用作调色板预测子时,选择的区块可对应于在先前编码树单元行中选择的编码树单元中的最后的编码单元,该先前编码树单元行的该选择的编码树单元位于当前编码树单元行中的起始编码树单元的右上角的位置处,其中起始编码树单元包括起始区块以及选择的调色板或三重调色板对应于选择的编码树单元的最后编码单元的最后编码的调色板或三重调色板。
若该波前并行处理被开启以用于该视频数据,则对当前图像区域的起始区块执行调色板编码,以及若波前并行处理被关闭以用于该视频数据,则跳过对当前图像区域的起始区块执行调色板编码,其中该调色板编码是利用初始调色板或三重调色板、或利用选择的调色板或三重调色板。若波前并行处理被关闭以用于该视频数据,当前图像区域的该起始区块使用在先前图像区域中最后编码区块的最后编码的调色板或三重调色板作为调色板预测子,而应用调色板编码。换句话说,当前图像区域的多个区块的调色板编码以及先前图像区域的多个区块的调色板编码在当前图像区域的起始区块的调色板编码之后,以相同的速度进行,并且根据先前图像区域中选择的区块的调色板编码的完成而开始
当前图像的每一个区块的一个或多个语法元素利用算术编码而被编码,以及用于当前图像区域的起始区块的算术编码(例如,上下文自适应二进制算术编码(contextadaptive binary arithmetic coding,CABAC))的状态继承先前图像区域的选择的区块的状态。当选择的调色板或三重调色板被用作调色板预测子,选择的区块对应于在先前图像区域中的选择的编码树单元中的选择的编码单元,先前图像区域中的选择的编码树单元在该当前图像区域中的起始编码树单元之上的位置处,其中起始编码树单元包括该起始区块。在选择的编码树单元中的选择的编码单元是预定义的,例如,对应于起始区块的最近的编码单元。
附图说明
图1描述了当波前并行处理(wavefront parallel processing,WPP)开启时,用于上下文自适应二进制算术编码(context adaptive binary arithmetic coding,CABAC)的初始化的示例。
图2描述了根据本发明的实施方式当波前并行处理开启时,用于每一个编码树单元行的起始区块的调色板/三重调色板(triplet palette)的初始化的示例。
图3描述了利用当前编码树单元的上方编码树单元的底部编码单元行中最近的编码单元的最后编码的调色板初始化用于当前编码树单元行的起始编码单元的调色板推导的示例。
图4描述了根据本发明实施方式的当波前并行处理开启时,利用初始调色板/三重调色板或选择的调色板/三重调色板用于每一个编码树单元行的起始区块的调色板编码的流程图。
具体实施方式
在本发明中,揭示了改善调色板编码的性能的各种技术。具体地,揭示了利用波前并行处理(wavefront parallel processing,WPP)的、关于系统的调色板初始化和管理的有效的调色板编码技术。在本发明的一个实施方式中,一个或多个派生的颜色表被存储于调色板书(palette book)中,以及颜色表可自调色板书中选择以用于调色板预测。各种手段可用于产生调色板书。举例来说,最近的已编码的调色板的历史可被存储于“调色板书”中。当前编码单元可选择由book_index指示的、存储于调色板书中的一个调色板,以作为颜色表预测子。颜色表预测可基于逐条目预测而被应用。在此情况下,当前颜色表的每一个对应元素可由存储于颜色表中的调色板预测子的对应的元素来预测。颜色表预测也可复制条目颜色表。在此情况下,整个当前颜色表可自存储于颜色表中的调色板预测子而被编码。若当前编码单元在调色板模式中被编码,当前调色板可替代调色板书中的一个颜色表。新的调色板被编码并被传送至解码器,以使得相同调色板更新过程可在编码器侧或解码器侧以相同的方式来执行。
存在各种方式更新和排序先前已编码的调色板组。在一个特定的示例中,调色板,也称为调色板组(palette sets),基于调色板的编码顺序而简单排序,即最近编码的调色板存储于“调色板书”的起始处(即,具有最小的索引),而较先编码的调色板存储于底部(即,具有较大的索引)。举例来说,尺寸为KK的调色板书可用于存储KK组先前已编码调色板。当新的调色板被编码时,为使得第一条目对于最新编码的调色板可用,在“调色板书”中的条目1~(KK-1)可被移至条目2~KK。这是简单的先进先出的更新和顺序处理。基于调色板编码的“调色板书”的各种示例描述如下。
利用“调色板书”的编码单元式(CU-wise)调色板共享控制。下面的伪代码描述了当共享在编码单元式的基础上被控制时(即,共享所有的颜色组分),利用调色板书的调色板共享的示例。实施方式也可用于在JCTVC-N0249中揭示的三重调色板格式。
Figure BDA0002138276100000061
在上述伪代码中,当由值为1的palette_pred所示调色板预测被使用时,调色板书索引(即,book_index)自比特流而被确定。用于当前编码单元的调色板(即,Current CUpalette[color_index])自具有book_index的调色板书而得到(即,palette_book[book_index][color_index])。若当前编码单元不使用调色板预测,为使得第一条目对于新的已编码的调色板可用,在“调色板书”中的条目1~(KK-1)将被移至条目2~KK(即,for(k<=KK,k>1,k--),palette_book[k][color_index]=palette_book[k-1][color_index])。新解析的当前编码单元的调色板(即,Parse syntax for current CU palette[color_index][n])将在引导调色板书(leading palette book)中被替代(即,palette_book[0][color_index][n]=current CU palette[color_index][n])。
利用“调色板书”的组分式(Component-wise)调色板共享控制。除共享控制为组分式之外,此实施方式相似于以上实施方式。根据本发明实施方式的用于每一个颜色组分的示范性伪代码如下所示。
Figure BDA0002138276100000071
利用“调色板书”的亮度/色度式(Component-wise)调色板共享控制。尽管在上述实施方式中分别描述了利用“调色板书”的编码单元式和组分式调色板共享控制,调色板书的共享控制也为亮度/色度式。亮度组分和色度组分可具有各自的共享控制(例如,一个用于亮度的控制标志和一个用于色度的控制标志)。亮度和色度组分中的每一个具有自己的调色板。这对于在亮度和色度组分中具有不同变化程度的内容特别有用。根据本实施方式的用于YUV颜色格式的示范性伪代码如下所示,其中相同的共享控制标志用于U组分和V组分(即,palette_pred_UV),也可使用各自的控制标志。
Figure BDA0002138276100000072
Figure BDA0002138276100000081
由于“调色板书”跟踪并更新最近编码的调色板组,不存在线缓冲器问题。调色板书尺寸的选择成为在提供更好调色板匹配(即,使用较大的调色板书尺寸)和发送边信息(即,使用较小的调色板书尺寸)之间的权衡问题。
另一个设计的考虑是,在被复位之前,调色板持续保持有效。较长的有效期间,例如整个条带/图片,使能调色板较长的存储将可用于区块。然而,差错恢复性能会变差,其是因为损失这样的调色板书将影响在条带/图片中的所有区块的解码。
利用具有调色板书尺寸kk=1和有效期间(valid duration)=1LCU的“调色板书”的编码单元式调色板共享控制。此实施方式对应于调色板共享的特定示例,其中仅一个最近编码的调色板在调色板书(即,调色板尺寸kk=1)中以及调色板书在每一个最大编码单元的起始处被复位(即,valid duration=1LCU)。由于在调色板书中仅存在一个条目,不需要发送如前面提及的实施方式中提到的book_index。此外,调色板书的更新过程将变为用当前调色板来简单代替调色板书。利用调色板书尺寸kk=1以及有效期间=1LCU的“调色板书”的编码单元式调色板共享控制的伪代码如下所示。
Figure BDA0002138276100000091
如上所示,不需要移动先前的调色板书以为新的调色板书制造空间。如伪代码中所示,调色板书在每一个最大编码单元的起始处被复位(即,“If(begin new LCU),Clearpalette_book”)。
利用具有调色板书尺寸kk=1和有效期间=1LCU的“调色板书”的组分式调色板共享控制。利用具有调色板尺寸kk=1和有效期间=1LCU的“调色板书”的组分式调色板共享控制的对应的伪代码如下所示:
Figure BDA0002138276100000092
Figure BDA0002138276100000101
利用具有调色板书尺寸kk=1和有效期间=1LCU的“调色板书”的亮度/色度式调色板共享控制。利用具有调色板尺寸kk=1和有效期间=1LCU的“调色板书”的亮度/色度式调色板共享控制的对应的伪代码如下所示:
Figure BDA0002138276100000102
在相关的现有技术中,当区块(即,编码单元)在调色板模式中不被编码时,颜色表将被复位为0或被设置为不可用。因此,后续区块不会使用调色板信息用于调色板预测。为了改善性能,本发明的一个实施方式节约或存储一个或多个颜色表以用于非调色板编码的编码单元。用于此非调色板已编码的区块的颜色表可自已编码的颜色表来推导,并认为是此非调色板已编码的区块的颜色表。因此,用于非调色板已编码的区块的颜色表被推导,并用于另一区块的调色板预测。举例来说,最后已编码的颜色表或自左侧区块或上方区块的颜色表可被用作非调色板已编码区块的颜色表。在本申请中,推导的用于非调色板已编码区块的颜色表可被称为推导的颜色表(derived color table)。当在调色板编码模式中一个区块被编码时,已存储的颜色表可通过当前处理的颜色表而被更新。这些节约的或存储的颜色表可由相邻的区块参考以用于调色板编码或可为参考颜色表以用于非调色板已编码的相邻区块。
本发明的另一方面描述了用于预测调色板编码的调色板初始化。当预测编码被使用以跨越不同区块编码调色板时,先前的已编码/已解码的调色板(调色板书)被用作预测子。然而,某些区块可不具有存储任意先前的已编码/已解码的调色板,例如,在条带/图片中的第一已编码调色板的区块。若使用复位机制,则第一已编码调色板的区块可使用复位的调色板书作为预测子。在下文中,各种初始化方式被揭示以用于调色板书的初始化。
初始化为全0。在此实施方式中,在每一个条带/图片中起始处,在调色板书中的调色板被全复位为0,以用于所有的颜色表。至于复位机制,即在波前(wavefront)分割或图块(tile)分割的起始处复位调色板、或在每一个最大编码单元行的起始处,调色板书被复位为全0。
初始化为特定颜色值。在此实施方式中,当需要初始化时(例如,每一个条带/图片的起始处,每一个波前/图块分割的起始处,或每一个最大编码单元行的起始处),特定值被分配至调色板颜色。对于YUV视频格式来说,U组分和V组分包含较少的变化并趋向于集中在中间等级(mid-level)周围(即,8比特格式的128和10比特格式的512)。因此,在这种情况下,用于U组分和V组分的颜色表可被初始化等于或十分接近中间等级的值。对于Y组分来说,0或中间等级可用于初始化。因此,用于初始化的特定值可被发送或自较高等级语法而推导,例如条带头(Slice Header,SH)、图片参数集(Picture Parameter Set,PPS)或序列参数集(Sequence Parameter Set,SPS)。
在较高等级语法(high-level syntax,HLS)发送特定颜色值。较高等级语法的各种示例如下所示。
序列参数集(Sequence Parameter Set,SPS)。如先前提及,中间等级初始化将会对于YUV格式特别有用。因此,高等级语法指示序列的颜色格式,例如在序列参数集中的语法元素,可被利用以指定用于调色板书的中间等级初始化的使用。在序列参数集级中用于较高等级语法的伪代码如下所示。
Figure BDA0002138276100000121
中间等级可以是用于8比特格式的128和用于10比特格式的512。
图片参数集(Picture Parameter Set,PPS)。另一实施方式是利用图片参数集以指定调色板书的初始化值。此方法对于在序列中的不同场景(different scene)的设置特别有用。举例来说,对于在暗场景中的图片,图片参数集可指示初始化调色板书具有较低值(即,0用于全黑)。另一方面,对于在亮场景中的图片,较高的颜色值可用于初始化。用于初始化的精确值可在图片参数集中明确地被发送。
分配初始化值的另一种方法是分析图片的色度以及发送对应于图片的主颜色(dominant colors)的初始化值。在一个示例中,当调色板的初始化需要图片的一部分(例如,条带、波前、图块的起始部分)时,在对应的图片参数集中推导或发送的特定的初始化值将被使用。
条带头(Slice Header,SH)。在此示例中,用于每一个条带的初始化值在条带头中被发送。在一个特定的示例中,每一个图片仅包括一个条带,这将与使用图片参数集等效。当在图片中有多个条带时,调色板初始化值的选择的细粒度(finer granularity)可利用基于条带头的规格而获得。语法元素被添加至条带头,以指示将被用于调色板书的初始化的特定值。与图片参数集的情况相似,可确定精确值,例如,通过分析条带的亮度及/或条带的色度。
层颜色表示法(Layer Color Representation)
在调色板编码模式中,在每一个编码单元中的像素被分类为主要颜色(即,主要颜色像素)和逃逸像素。主要颜色为在编码单元中最具代表性的像素,其覆盖编码单元的多数像素。另一方面,逃逸像素为不属于主要颜色的像素。
本发明的另一个实施方式揭示了层颜色表示法来描述主颜色。基于层颜色表示法,每一个像素由三重颜色索引来表示。以及三重颜色索引为预测编码的并被传送以指示像素是否为主要颜色像素。若为主要颜色像素,则进一步指示该像素属于的主要颜色。
为在编码单元中描述主要颜色,在本发明中揭示两层表示法。第一层描述在每一个组分中最具代表性的颜色值,称为主要颜色。基于主要颜色,第二层描述最具代表性的组合,称为主要(颜色)组合。
分层的颜色表示法(Layered color representation)
对于每一个编码单元,编码器首先计算每一个颜色组分的颜色值的柱状图,并选择一组代表主要颜色值。这些主要颜色值被存储作为调色板以用于每一个颜色组分。然后,基于一组用于每一个颜色组分的主要颜色值,编码器进一步选择一组代表颜色组合。该代表颜色组合被记录为三重调色板。
本发明可应用于任意颜色格式,例如,YUV444,YUV420,YUV422,YUV400或RGB。第二层的组合可被应用于所有组分或组分的子集。举例来说,对于YUV444以及RGB,第二层的组合可被应用于如表1(a)~1(d)所示的所有组分。表1(a)~1(c)对应于第一层颜色表表示法,即用于表示颜色组分的三个各自的颜色表。表1(d)为对应于三重索引的第二层颜色表示法的示例。
表1(a)
第一组分的主要颜色索引 第一组分的主要颜色值
0 value[0][1<sup>st</sup> color]
N1 value[N1][1<sup>st</sup> color]
表1(b)
第二组分的主要颜色索引 第二组分的主要颜色值
0 value[0][2<sup>nd</sup>color]
N<sub>2</sub> value[N<sub>2</sub>][2<sup>nd</sup> color]
表1(c)
第三组分的主要颜色索引 第三组分的主要颜色值
0 value[0][3<sup>rd</sup> color]
N<sub>3</sub> value[N3][3<sup>rd</sup> color]
表1(d)
Figure BDA0002138276100000141
利用调色板和三重调色板,一个像素可通过三重索引来表示。解码器首先利用三重索引来自三重找出对应于三个颜色组分的三个主要颜色索引。然后解码器利用主颜色索引来自调色板找出颜色值并重建像素。对于YUV420和YUV422,第二层的组合可被应用于UV组分。因此,需要一个调色板索引(用于Y组分)和一个三重索引(用于UV组分)来表示一个像素。
调色板和三重调色板编码
在一个示例中,在解码期间,解码器保持M组调色板和三重调色板预测子。M可被传送或得到。在一个实施方式中,M可以为1。若M大于1,则编码器可进一步发送预测子被使用或解码器可得到M的信号。
在另一示例中,解码器可根据编码单元尺寸来得到哪一个预测子被使用。换句话说,具有不同尺寸的编码单元可利用不同的预测子。相似地,解码器可根据预测单元尺寸或其他相关单元的尺寸来得到哪一个预测子被使用。
在一个示例中,调色板预测子包含最后的调色板尺寸和具有NMax个条目的调色板。NMax等于当前调色板和三重的尺寸。对于已编码调色板的编码单元,将被使用的调色板或三重调色板可自预测子而得到。
调色板和三重调色板共享模式的示例如下所示。调色板共享模式可直接使用调色板预测子,而不需要修改。在当前编码单元中将被使用的调色板可根据存储的最后的调色板尺寸而得到,如表2(a)和表2(b)中的示例所示。若已存储的最后的调色板尺寸为10,则在调色板预测子中的首先10个条目将直接被提取而形成用于当前编码单元的调色板。表2(a)描述了最后的调色板的示例以及表2(b)描述了自表2(b)中的最后调色板得到当前编码单元的调色板的示例。调色板共享模式也可发送新尺寸的值。然后,仅具有尺寸修改,调色板直接自调色板预测子而得到。
表2(a)
Figure BDA0002138276100000142
Figure BDA0002138276100000151
表2(b)
Figure BDA0002138276100000152
调色板和三重调色板正常模式的示例如下所示。在正常模式中,调色板修改的信息将被发送以指示怎样自预测子而得到调色板。表3(a)~3(c)描述了调色板推导的示例。首先,“新尺寸”被发送以指示新的调色板尺寸,例如,在表3(a)中的3。然后,每一个条目将发送一比特以指示主要颜色值是否需要被修改。若主要颜色值需要被修改,则对应的新值将被进一步发送。举例来说,如表3(a)所示,若用于颜色索引0和颜色索引2的修改比特指示的主要颜色值修改(即,比特为“1”表示主要颜色值需要修改),基于表3(b)中的调色板预测子,新的Value0和Value2将更新如表3(c)所示。
表3(a)
Figure BDA0002138276100000153
表3(b)
Figure BDA0002138276100000154
Figure BDA0002138276100000161
表3(c)
Figure BDA0002138276100000162
调色板和三重调色板预测子更新。根据一个实施方式,在解码期间,解码器保持M组调色板和三重调色板预测子。在每一个条带的起始处,解码器可利用已传送的或得到的值来初始化调色板预测子。在解码调色板编码的编码单元之后,若修改被发送,则预测子将被更新。表4(a)~表4(c)描述了预测子更新的示例。在解码(N-1)个调色板编码的编码单元期间,修改被发送,包括新尺寸=3和第一/第三条目的新值。在解码(N-1)个调色板编码的编码单元之后,预测子将相应地更新。更新的条目如表4(c)中的斜体所示。
表4(a)
Figure BDA0002138276100000163
表4(b)
Figure BDA0002138276100000164
Figure BDA0002138276100000171
表4(c)
Figure BDA0002138276100000172
在HEVC中,支持波前并行处理(Wavefront Parallel Processing,WPP),其中,编码树单元的每一行可通过多个编码或解码线程而被当作子比特流并行地处理。为了限制编码效率的降低,处理顺序的波前模式(wavefront pattern)保证空间相邻的依赖关系不会改变。另一方面,在每一个编码树单元行的起始处,上下文自适应二进制算术编码(contextadaptive binary arithmetic coding,以下简称为CABAC)的状态基于在上方的编码树单元行的同步点的CABAC的状态而被初始化。用于CABAC的波前并行处理(wavefrontparallel processing,WPP)的示例如图1所示,其中并行处理被应用于编码树单元行。因此,在此示例中假设每一个当前编码树单元(在图1中标记为“X”)的调色板编码依赖其左侧、左上方、上方、左上方的编码树单元。对于顶部编码树单元行来说,调色板处理仅依赖于左侧编码树单元。同步点为自上方编码树单元行的第二编码树单元的最后编码单元。此外,CABAC引擎在每一个编码树单元行的末端被清除(flush),以及在每一个子比特流的末端强制字节对齐。在包含波前的条带的条带头中,波前并行处理的子比特流的条目点(entrypoints)被作为字节偏移而发送。
在图1中,每一个区块代表一个编码树单元,以及在图片中存在四个编码树单元行。每一个编码树单元行形成一个波前子比特流,该波前子比特流可通过编码或解码线程而独立地处理。符号“X”代表当前编码树单元在多线程下的处理。由于当前编码树单元依赖于右上方的编码树单元,当前编码树单元的处理需要等待右上方编码树单元的处理完成。因此,在相邻编码树单元行的两个处理线程之间,存在两个编码树单元延迟,以使得数据依赖(例如,空间像素和运动向量)可被保持。此外,每一个编码树单元行的第一编码树单元的CABAC状态利用在上方编码树单元行的第二编码树单元被处理之后获得的状态而被初始化。举例来说,在第二编码树单元行中的第一编码树单元的第一编码单元(表示为“p1”)在上方编码树单元行的第二编码树单元中的最后编码单元(表示为“p2”)被处理之后而被初始化。依赖关系通过自“p1”指向“p2”的曲线箭头线来指示。对于每一个编码树单元行的第一编码树单元的相似依赖关系可通过曲线箭头来指示。比起利用每一个编码树单元行的条带初始状态来说,这允许沿编码树单元的第一列的更快的学习概率。由于上方编码树单元行的第二编码树单元通常对于当前编码树单元行可用,并行处理可利用此波前结构而获得。对于每一个当前编码树单元,处理依赖于左侧编码树单元。因此,需要等待直到左侧编码树单元的最后编码单元被处理。如图1所示,在当前编码树单元中的第一编码单元(表示为“p3”)需要等待左侧编码树单元的最后编码单元(表示为“p4”)完成。此外,依赖关系由自“p3”指向“p4”的曲线箭头线来指示。左侧编码树单元的相似依赖关系由用于当前编码树单元处理的曲线箭头指示(表示为“X”)。
在解码调色板编码的编码单元之后,若修改被发送,则预测子可被更新。调色板及/或三重调色板预测子可在条带级、图块级、编码树单元行级、或编码树单元级而被复位。条带、图块、编码树单元行、或编码树单元可被称为在本申请中的图像区域。图像可被分割为并行处理(例如,波前并行处理)的多个图像区域。根据本发明的实施方式,当应用波前并行处理时,可开启复位。对于复位处理,调色板或三重调色板预测子可被设置为预定或推导的值,例如,0。可选地,调色板和三重调色板预测子可继承先前已处理区块的调色板和三重调色板。举例来说,调色板和三重调色板预测子可继承在上方编码树单元行中的右上方区块、上方区块、或任意区块的调色板或三重调色板。
本发明的一个方面提出语法设计以改善调色板编码相关的效率。在调色板编码中,palette_share_flag可先被发送。若palette_share_flag为1,则在最后编码的调色板中所有的调色板颜色被重使用以用于当前编码单元。当前调色板尺寸也等于最后编码的调色板的编码单元的调色板尺寸。否则(palette_share_flag为0),通过选择在最后已编码的调色板中哪一个调色板颜色可被重使用,或通过传送新的调色板颜色,当前调色板被发送。当前调色板的尺寸被设置为已预测的调色板尺寸(numPredPreviousPalette)加上已传送的调色板的尺寸(num_signalled_palette_entries)。已预测的调色板为自先前已重建的调色板编码的编码单元而得到的调色板。当编码当前编码单元为调色板模式时,没有利用已预测的调色板预测的这些调色板颜色可直接传送于比特流中。举例来说,若当前编码单元被编码为调色板尺寸等于6的调色板模式。假设6个主要颜色中的3个自调色板预测子而被预测,以及三个主要颜色直接通过比特流而被传送。已传送的三个主颜色将利用如下所示的采样语法而被发送。
Figure BDA0002138276100000191
在上述示例中,要被发送的主要颜色的数目通过num_signalled_palette_entries来指示。语法,palette_entries[cIdx][numPredPreviousPalette+i],对应于每一个颜色组分(即,cIdx)的要传送的颜色。由于在此示例中调色板尺寸为6,自0~5的调色板索引用于指示每一个调色板已编码的像素将被重建为在调色板颜色表中的主要颜色。
在波前并行处理中的调色板初始化(复位)。对于以上提到的条带、图块、编码树单元行、或编码树单元的调色板复位也可被应用于利用波前并行处理的系统。举例来说,若波前并行处理没有被应用,则在每一个条带的起始处、或在每一个图块的起始处,最后编码的调色板被初始化(即,复位)。若应用波前并行处理,则在每一个条带的起始处、或每一个条带的起始处,最后已编码的调色板不仅被初始化(复位),而且在每一个编码树单元行的起始处被初始化(复位)。在调色板初始化(复位)中,在最后编码的调色板中的所有调色板颜色被设置为0。然而,当应用波前并行处理时,在每一个编码树单元行的起始处设置所有的调色板颜色为0可降低编码效率。因此,进一步改善在波前并行处理系统中的调色板编码效率的技术被揭示。
调色板初始化的第一实施方式:自在上方编码树单元行中的先前已编码的编码单元继承最后编码的调色板。在调色板初始化的第一实施方式中,在上方编码树单元行中的先前编码的编码单元的最后编码的调色板可被用作初始化调色板。在每一个编码单元行的起始处,自在上方编码树单元行中的一个编码单元的最后更新的已编码的调色板被继承以用于调色板初始化。在当前编码树单元行中的最后已编码的调色板中的初始调色板颜色不被设置为0。当前编码树单元行的最后已编码的调色板的初始调色板颜色自上方编码树单元行中的一个编码单元的更新的最后已编码的调色板而被复制。已继承的调色板可被用作调色板预测子。在上方编码树单元行中的要被继承的编码单元的位置可被预定义。举例来说,在上方编码树单元行中的上方编码单元的更新的最后编码的调色板(即图2中的位置A)可被用作在当前编码树单元行的起始处的初始最后已编码的调色板(即,图2中的位置C)。在另一示例中,在右上方编码树单元中的最后编码单元的更新的最后编码的调色板(即,图2中的位置B)被用作在当前编码树单元行的起始处的初始最后已编码的调色板(即,图2中的位置C)。在上方编码树单元行中的要被继承的编码单元的位置可在高级语法(例如,SPS,PPS,VPS,条带头)中被定义。
当波前并行处理被开启时,调色板编码可被并行应用于编码树单元行。当波前并行处理被关闭时,不对编码树单元行应用调色板编码。根据本发明的一实施方式,若波前并行处理被开启以用于视频数据,则利用初始调色板或三重调色板、或利用选择的调色板或三重调色板为当前图像区域的起始区块执行调色板预测子,以及若波前并行处理被关闭以用于视频数据,则不对当前图像区域的起始区块执行调色板预测子更改。根据本发明的另一实施方式,若波前并行处理被开启以用于视频数据,则利用初始调色板或三重调色板、或利用选择的调色板或三重调色板为当前图像区域的起始区块执行调色板预测子,以及若波前并行处理被关闭以用于视频数据,则跳过对当前图像区域的起始区块执行调色板预测子更改。
如图2所示的示例中,用于每一个当前编码树单元行的调色板编码可相对于上方编码树单元行延迟2个编码树单元。在当前编码树单元行的起始编码单元的2个编码树单元延迟之后,上方编码树单元行和当前编码树单元行的调色板编码可以相同的处理速度维持2个编码树单元延迟而进行处理。相似地,在当前编码树单元行之后的下方编码树单元行可具有相对于当前编码树单元行的2个编码树单元延迟,开始处理下方编码树单元的起始编码单元。当前编码树单元行和下方编码树单元行的调色板编码可以相同的处理速度维持2个编码树单元延迟而进行处理。因此,图片的编码树单元行的调色板编码可在对于每一个下一编码树单元行具有2个编码树单元延迟而以交错的方式(staggered fashion)处理。相应地,在编码树单元行之间被处理的编码单元或编码树单元形成波前,以使得在初始化延迟之后并行处理编码树单元行。
调色板初始化的第二实施方式:根据在波前并行处理中的CABAC同步点自编码单元继承最后编码的调色板。在HEVC中,在每一个编码树单元行的起始处,基于在上方编码树单元行中的同步点的CABAC状态而初始化CABAC状态。在上方编码树单元行中的同步点的位置可在图片参数集中被定义。根据此实施方式,CABAC初始化的同步位置和最后编码的调色板初始化的继承位置是统一的。在每一个编码树单元行的起始处,自在上方编码树单元行的CABAC同步点处的编码单元的更新最后编码的调色板,用于当前编码树单元行中的起始编码单元的最后编码的调色板的初始调色板颜色可被复制。举例来说,在图1中,自上方编码树单元行的第二编码树单元的最后编码单元为CABAC同步点(标记为“p2”)。在图2中,自上方编码树单元的第二编码树单元(即,当前编码树单元的右上方的编码树单元)的最后编码单元(标记为“B”)的更新最后编码的调色板作为初始化的最后编码的调色板。用于CABAC同步点的状态的编码单元和用于继承调色板/三重调色板预测子的起始编码单元的编码单元是统一的。
调色板初始化的第三实施方式:继承在上方编码树单元行中的空间距离中最近的编码单元的最后编码的调色板。根据此实施方式,在上方编码树单元行中最近的编码单元的更新最后编码的调色板被用作初始化最后编码的调色板。举例来说,在图3中,在第二编码树单元行的起始处,最近的编码单元为在上方编码树单元行上方的编码树单元中的编码单元CU-a。若编码单元CU-a为调色板编码的编码单元,其更新的调色板被用作用于第二编码树单元行的初始化最后编码的调色板。若编码单元CU-a不是调色板编码的编码单元,随后的编码单元(即,编码单元CU-b,编码单元CU-c,编码单元CU-d)将以先后顺序而被检查,以确定是否有任意编码单元为调色板编码的编码单元。在上方编码树单元的下方编码单元行中的第一调色板编码的编码单元的更新的调色板将被用作用于当前(或随后)编码树单元行的初始的最后编码的调色板。因此,在上方编码树单元的下方编码单元行中的第一调色板编码的编码单元的调色板(即,若编码单元CU-a可用,则编码单元CU-a,否则若编码单元CU-b可用,则编码单元CU-b)被存储,直到当编码在当前或随后的编码树单元行中的第一调色板编码的编码单元时,其被存取和使用。若上方编码树单元的下方编码单元行中没有编码单元为调色板编码,则在上方编码树单元的第二下方的编码单元行中的编码单元可被检查,第一调色板编码的编码单元的调色板,自左至右,可被使用以用于当前编码树单元行初始化。若在上方编码树单元的第二下方编码单元行中没有编码单元为调色板编码,则上方编码树单元的第三下方编码单元行中的编码单元被检测,诸如此类,直到找到有效的调色板。在另一示例中,若在上方编码树单元的下方编码单元行中没有编码单元为调色板编码,则在右上方的编码树单元的下方编码单元行中的编码单元将被检测,自左自右,第一调色板编码的编码单元的调色板被使用以用于当前编码树单元行初始化。若在右上方编码树单元的下方编码单元行中没有编码单元是调色板编码,则在右上方编码树单元的右侧处的编码树单元的下方编码单元中的编码单元将被检测,自左至右。若调色板编码的编码单元被发现,第一调色板编码的编码单元的调色板被使用以用于当前编码树单元行的初始化。
在另一示例中,在上方编码树单元行中的第一非全0的最后编码的调色板将被用作初始化最后编码调色板以用于第二编码树单元行。若在CABAC同步点处,不存在可用的调色板用于上方编码树单元行中,则最后编码的调色板将被初始化为全0。
调色板初始化的第四实施方式:以编码顺序继承最近的最后编码的调色板。在此实施方式中,在上方编码树单元行中的第N个调色板编码的编码单元的更新的最后编码的调色板可被用作初始化最后编码的调色板。N可以为1。在另一示例中,在图3中以编码顺序最接近编码单元CU-a的编码单元的更新的最后编码的调色板被用作初始的最后编码的调色板。
图4描述了根据本发明实施方式的当波前并行处理被开启时,利用用于每一个编码树单元行的起始区块的初始化调色板/三重调色板或选择的调色板/三重调色板的调色板编码的流程图。如步骤410所示,系统接收与由多个区块组成的当前图像区域相关的输入数据。输入数据在编码器侧对应于要被编码的当前图像区域的像素数据;或输入数据在解码器侧对应于要被解码的当前图像区域的已编码数据。自存储器(例如,计算机存储器、缓冲器(RAM或DRAM)、或其他媒体)或自处理器提取输入数据。如步骤420所示,基于初始化调色板或三重调色板、或基于在先前图像区域的末端之前的位置处的选择的区块相关的选择的调色板或三重调色板,用于当前图像区域的起始区块的调色板预测子被确定。如步骤30所示,调色板编码被应用于当前图像区域的区块,其中当前图像区域的至少一个区块使用当前图像区域的起始区块的调色板预测子作为调色板预测子。
上述的流程图用于描述根据本发明实施方式的调色板编码的示例。本领域技术人员可在不脱离本发明精神的前提下,修改、重排列、拆分、或组合各个步骤,以实现本发明。在本申请中,具体的语法和语义已被用来说明实施方式。本领域技术人员可以用等效的语法和语义在不脱离本发明的精神的前提下而代替本申请中提到的语法和语义来实现本发明。
在提供特定应用和其需求的情况下,以上描述使得本领域技术人员能够实现本发明。对本领域技术人员来说,各种修饰是清楚的,以及在此定义的基本原理可以应用与其他实施方式。因此,本发明并不限于描述的特定实施方式,而应与在此公开的原则和新颖性特征相一致的最广范围相符合。在上述详细描述中,为全面理解本发明,描述了各种特定细节。然而,本领域技术人员能够理解本发明可以实现。
以上描述的本发明的实施方式可在各种硬件、软件编码或两者组合中进行实施。例如,本发明的实施方式可为集成入视频压缩芯片的电路或集成入视频压缩软件以执行上述过程的程序代码。本发明的实施方式也可为在数据信号处理器(Digital SignalProcessor,DSP)中执行上述程序的程序代码。本发明也可涉及计算机处理器、数字信号处理器、微处理器或现场可编程门阵列(Field Programmable Gate Array,FPGA)执行的多种功能。可根据本发明配置上述处理器执行特定任务,其通过执行定义了本发明揭示的特定方法的机器可读软件代码或固件代码来完成。可将软件代码或固件代码发展为不同的程序语言与不同的格式或形式。也可为了不同的目标平台编译软件代码。然而,根据本发明执行任务的软件代码与其他类型配置代码的不同代码样式、类型与语言不脱离本发明的精神与范围。
在不脱离本发明精神或本质特征的情况下,可以其他特定形式实施本发明。描述示例被认为仅在所有方面进行说明并且不是限制性的。因此,本发明的范围由权利要求书指示,而非前面描述。所有在权利要求等同的方法与范围中的变化都属于本发明的涵盖范围。

Claims (14)

1.一种在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,图片被分割为多个图像区域,该方法包括:
接收与当前图像区域相关的输入数据,该当前图像区域由多个区块组成;
基于与选择的区块相关的选择的调色板或三重调色板,确定该当前图像区域的起始区块的调色板预测子,其中该多个区块被配置为区块组,以及该区块对应于编码单元;该区块组对应于编码树单元;以及该图像区域对应于编码树单元行,该选择的区块对应于在先前图像区域中的选择的编码树单元中的选择的编码单元,该先前图像区域中的选择的编码树单元在该当前图像区域中的起始编码树单元之上的位置处,其中该选择的调色板或三重调色板对应于该选择的编码树单元的该选择的编码的单元的最后已编码的调色板或三重调色板;以及
对该当前图像区域的多个区块应用调色板编码,其中该当前图像区域的至少一个区块使用该当前图像区域的起始区块的调色板预测子作为该调色板预测子。
2.根据权利要求1所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,若波前并行处理被开启以用于该视频数据,则利用该选择的调色板或三重调色板为该当前图像区域的该起始区块执行调色板预测子,以及若该波前并行处理被关闭以用于该视频数据,则不对该当前图像区域的该起始区块执行调色板预测子更改。
3.根据权利要求2所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,若该波前并行处理被关闭以用于该视频数据,该当前图像区域的该起始区块使用在该先前图像区域中最后编码区块的最后编码的调色板或三重调色板作为调色板预测子。
4.根据权利要求1所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,该选择的区块对应于在先前编码树单元行中的选择的编码树单元的最后的编码单元或最下方编码单元行的编码单元,该先前编码树单元行的该选择的编码树单元位于当前编码树单元行中的起始编码树单元的上方或右上角的位置处,其中该起始编码树单元包括该起始区块以及该选择的调色板或三重调色板对应于该选择的编码树单元的最后编码单元的最后编码的调色板或三重调色板。
5.根据权利要求1所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,在该选择的编码树单元中的该选择的编码单元是预定义的。
6.根据权利要求1所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,该选择的编码单元对应于该起始区块的最近的编码单元。
7.根据权利要求6所述的视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,如果该最近的编码单元不是调色板编码的编码单元,则检查在该最近的编码单元之后的可用编码单元,并且该选择的编码单元对应于该可用编码单元。
8.根据权利要求1所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,使用初始调色板或三重调色板被用作该调色板预测子,该初始调色板或三重调色板对应于预定值或得到的值,该预定值对应于0。
9.根据权利要求1所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,该当前图像区域的多个区块的调色板编码以及该先前图像区域的多个区块的调色板编码在该当前图像区域的起始区块的调色板编码之后,以相同的速度进行,并且根据该先前图像区域中该选择的区块的调色板编码的完成而开始。
10.根据权利要求9所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,该当前图像的每一个区块的一个或多个语法元素利用算术编码而被编码,以及用于该当前图像区域的该起始区块的算术编码的状态继承该先前图像区域的该选择的区块的状态。
11.根据权利要求10所述的在视频编码系统中利用调色板编码的编码视频数据的区块的方法,其特征在于,该算术编码对应于上下文自适应二进制算术编码。
12.一种在视频编码系统中利用调色板编码的编码视频数据的区块的装置,其特征在于,图片被分割为多个图像区域,该装置包括:
接收与当前图像区域相关的输入数据的装置,该当前图像区域由多个区块组成;
基于与选择的区块相关的选择的调色板或三重调色板,确定该当前图像区域的起始区块的调色板预测子的装置,该多个区块被配置为区块组,以及该区块对应于编码单元;该区块组对应于编码树单元;以及该图像区域对应于编码树单元行,该选择的区块对应于在先前图像区域中的选择的编码树单元中的选择的编码单元,该先前图像区域中的选择的编码树单元在该当前图像区域中的起始编码树单元之上的位置处,其中该选择的调色板或三重调色板对应于该选择的编码树单元的该选择的编码的单元的最后已编码的调色板或三重调色板;以及
对该当前图像区域的多个区块应用调色板编码的装置,其中该当前图像区域的至少一个区块使用该当前图像区域的起始区块的调色板预测子作为该调色板预测子。
13.根据权利要求12所述的在视频编码系统中利用调色板编码的编码视频数据的区块的装置,其特征在于,该选择的区块对应于在先前编码树单元行中的选择的编码树单元的最后的编码单元或最下方编码单元行的编码单元,该先前编码树单元行的该选择的编码树单元位于当前编码树单元行中的起始编码树单元的上方或右上角的位置处,其中该起始编码树单元包括该起始区块以及该选择的调色板或三重调色板对应于该选择的编码树单元的最后编码单元的最后编码的调色板或三重调色板。
14.根据权利要求12所述的在视频编码系统中利用调色板编码的编码视频数据的区块的装置,其特征在于,该当前图像区域的多个区块的调色板编码以及该先前图像区域的多个区块的调色板编码在该当前图像区域的起始区块的调色板编码之后,以相同的速度进行,并且根据该先前图像区域中该选择的区块的调色板编码的完成而开始。
CN201910660243.0A 2013-12-18 2014-12-18 利用调色板编码的编码视频数据区块的方法和装置 Active CN110336999B (zh)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US201361917474P 2013-12-18 2013-12-18
US61/917,474 2013-12-18
US201361921152P 2013-12-27 2013-12-27
US61/921,152 2013-12-27
US201461952917P 2014-03-14 2014-03-14
US201461952932P 2014-03-14 2014-03-14
US61/952,932 2014-03-14
US61/952,917 2014-03-14
US201462055692P 2014-09-26 2014-09-26
US62/055,692 2014-09-26
CN201480069501.3A CN105981380B (zh) 2013-12-18 2014-12-18 利用调色板编码的编码视频数据区块的方法和装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201480069501.3A Division CN105981380B (zh) 2013-12-18 2014-12-18 利用调色板编码的编码视频数据区块的方法和装置

Publications (2)

Publication Number Publication Date
CN110336999A CN110336999A (zh) 2019-10-15
CN110336999B true CN110336999B (zh) 2021-09-03

Family

ID=53402120

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201480069501.3A Active CN105981380B (zh) 2013-12-18 2014-12-18 利用调色板编码的编码视频数据区块的方法和装置
CN201910660243.0A Active CN110336999B (zh) 2013-12-18 2014-12-18 利用调色板编码的编码视频数据区块的方法和装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201480069501.3A Active CN105981380B (zh) 2013-12-18 2014-12-18 利用调色板编码的编码视频数据区块的方法和装置

Country Status (5)

Country Link
US (2) US10321141B2 (zh)
EP (1) EP3085083B1 (zh)
CN (2) CN105981380B (zh)
BR (1) BR112016012417B1 (zh)
WO (1) WO2015090219A1 (zh)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9621905B2 (en) * 2012-06-29 2017-04-11 Qualcomm Incorporated Tiles and wavefront parallel processing
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
WO2015054811A1 (en) 2013-10-14 2015-04-23 Microsoft Corporation Features of intra block copy prediction mode for video and image coding and decoding
KR102318785B1 (ko) 2013-10-14 2021-10-27 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 비디오 및 영상 코딩 및 디코딩에 대한 기본 색상 인덱스 맵 모드의 특징
EP3058736B1 (en) 2013-10-14 2019-02-27 Microsoft Technology Licensing, LLC Encoder-side options for intra block copy prediction mode for video and image coding
BR112016015080A2 (pt) 2014-01-03 2017-08-08 Microsoft Technology Licensing Llc Predição de vetor de bloco em codificação / decodificação de vídeo e imagem
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
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
US10542274B2 (en) 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
AU2014385769B2 (en) 2014-03-04 2018-12-06 Microsoft Technology Licensing, Llc Block flipping and skip mode in intra block copy prediction
US11323733B2 (en) * 2014-05-23 2022-05-03 Qualcomm Incorporated Predictor palette initialization in palette-based video coding
US10291940B2 (en) 2014-05-23 2019-05-14 Qualcomm Incorporated Coding runs with escape in palette-based video coding
US10382749B2 (en) 2014-05-23 2019-08-13 Qualcomm Incorporated Coding run values based on palette index in palette-based video coding
US9924175B2 (en) * 2014-06-11 2018-03-20 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
US10136141B2 (en) 2014-06-11 2018-11-20 Qualcomm Incorporated Determining quantization parameter (QP) values and delta QP values for palette coded blocks in video coding
US10785486B2 (en) 2014-06-19 2020-09-22 Microsoft Technology Licensing, Llc Unified intra block copy and inter prediction modes
US10237557B2 (en) 2014-06-20 2019-03-19 Hfi Innovation Inc. Method of run-length coding for palette predictor
CA3171803A1 (en) * 2014-09-30 2016-04-07 Microsoft Technology Licensing, Llc Rules for intra-picture prediction modes when wavefront parallel processing is enabled
US20160112724A1 (en) 2014-10-15 2016-04-21 Qualcomm Incorporated Hrd descriptor and buffer model of data streams for carriage of hevc extensions
GB2534607A (en) * 2015-01-29 2016-08-03 Canon Kk Palette predictor initializer when encoding or decoding self-contained coding structures
CN107211122B (zh) 2015-01-29 2020-05-05 佳能株式会社 对自包含式编码结构进行编码或解码时的调色板预测结果初始化程序
US10212434B2 (en) 2015-01-30 2019-02-19 Qualcomm Incorporated Palette entries coding in video coding
CN106254865B (zh) 2015-06-08 2020-06-09 同济大学 一种图像编码及解码方法、图像处理设备
WO2016197893A1 (zh) * 2015-06-08 2016-12-15 同济大学 图像编码及解码方法、图像处理设备、计算机存储介质
CN106664405B (zh) 2015-06-09 2020-06-09 微软技术许可有限责任公司 用调色板模式对经逸出编码的像素的稳健编码/解码
US10356432B2 (en) * 2015-09-14 2019-07-16 Qualcomm Incorporated Palette predictor initialization and merge for video coding
US11259047B2 (en) 2016-04-06 2022-02-22 Kt Corporation Method and apparatus for processing video signal
US11039147B2 (en) 2016-05-28 2021-06-15 Mediatek Inc. Method and apparatus of palette mode coding for colour video data
CN109479137B (zh) * 2016-05-28 2021-09-21 联发科技股份有限公司 用于彩色视频数据的调色板模式编解码的方法及装置
WO2018061550A1 (ja) * 2016-09-28 2018-04-05 シャープ株式会社 画像復号装置及び画像符号化装置
CN106851294B (zh) * 2017-01-03 2018-08-14 西安万像电子科技有限公司 图像的压缩方法和装置及其文字块的压缩方法和装置
US10986349B2 (en) 2017-12-29 2021-04-20 Microsoft Technology Licensing, Llc Constraints on locations of reference blocks for intra block copy prediction
US10491902B1 (en) * 2018-07-16 2019-11-26 Tencent America LLC Method and apparatus for history-based motion vector prediction
US10440378B1 (en) 2018-07-17 2019-10-08 Tencent America LLC Method and apparatus for history-based motion vector prediction with parallel processing
KR20230087621A (ko) 2018-08-10 2023-06-16 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 처리 방법, 비디오 처리 장치, 인코더, 디코더, 매체 및 컴퓨터 프로그램
CA3111156A1 (en) * 2018-08-30 2020-03-05 Huawei Technologies Co., Ltd. An encoding device, a decoding device, and corresponding methods using a palette coding
EP4294007A3 (en) 2018-10-04 2024-02-21 LG Electronics Inc. History-based image coding methods
US10924750B2 (en) * 2019-03-01 2021-02-16 Alibaba Group Holding Limited Palette size constraint in palette mode for video compression system
US11330306B2 (en) * 2019-08-07 2022-05-10 Tencent America LLC Method and apparatus for video coding
KR20210027174A (ko) * 2019-08-30 2021-03-10 주식회사 케이티 비디오 신호 처리 방법 및 장치
MX2022002617A (es) 2019-09-12 2022-03-25 Bytedance Inc Uso de predictor de paleta en codificacion de video.
KR20220104052A (ko) * 2019-12-05 2022-07-25 알리바바 그룹 홀딩 리미티드 크로마 샘플링을 위한 방법 및 장치
WO2021137947A1 (en) * 2019-12-31 2021-07-08 Alibaba Group Holding Limited Method an apparatus for initializing predictor palette

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343037B1 (en) * 2004-02-04 2008-03-11 Microsoft Corporation Dynamic, locally-adaptive, lossless palettization of color and grayscale images
CN101217668A (zh) * 2008-01-14 2008-07-09 浙江大学 基于块分类的混合图像压缩方法
CN102088604A (zh) * 2011-02-10 2011-06-08 深圳创维数字技术股份有限公司 一种影片缩略图的压缩方法及压缩装置
CN103209326A (zh) * 2013-03-29 2013-07-17 惠州学院 一种png图片的压缩方法

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3630835B2 (ja) 1996-04-02 2005-03-23 キヤノン株式会社 画像処理方法
US6819793B1 (en) 2000-06-30 2004-11-16 Intel Corporation Color distribution for texture and image compression
US7940652B1 (en) 2005-02-14 2011-05-10 Brixham Solutions Ltd. Pseudowire protection using a standby pseudowire
US8243340B2 (en) * 2006-02-23 2012-08-14 Microsoft Corporation Pre-processing of image data for enhanced compression
CN101068352A (zh) 2007-06-08 2007-11-07 中兴通讯股份有限公司 一种网络图像的压缩方法和系统
US20090010533A1 (en) 2007-07-05 2009-01-08 Mediatek Inc. Method and apparatus for displaying an encoded image
US7903873B2 (en) 2007-09-13 2011-03-08 Microsoft Corporation Textual image coding
GB2457646B (en) 2007-10-30 2010-03-03 Imagination Tech Ltd Method and apparatus for compressing and decompressing data
KR101228020B1 (ko) 2007-12-05 2013-01-30 삼성전자주식회사 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
US9232226B2 (en) 2008-08-19 2016-01-05 Marvell World Trade Ltd. Systems and methods for perceptually lossless video compression
CN101365136B (zh) 2008-09-09 2011-01-26 深圳市同洲电子股份有限公司 帧内预测的方法及装置
CN101645173B (zh) 2008-12-16 2012-05-16 中国科学院声学研究所 一种随机调色板编码系统及方法
US20110110416A1 (en) 2009-11-12 2011-05-12 Bally Gaming, Inc. Video Codec System and Method
KR101700358B1 (ko) 2009-12-09 2017-01-26 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
US10021384B2 (en) 2010-12-23 2018-07-10 Samsung Electronics Co., Ltd. Method and device for encoding intra prediction mode for image prediction unit, and method and device for decoding intra prediction mode for image prediction unit
WO2012095467A1 (en) 2011-01-12 2012-07-19 Canon Kabushiki Kaisha Video encoding and decoding with low complexity
EP2690093A4 (en) * 2011-03-24 2014-08-13 Idemitsu Kosan Co BISCARBAZOLE DERIVATIVE AND ORGANIC ELECTROLUMINESCENT ELEMENT THEREWITH
WO2012147622A1 (ja) 2011-04-28 2012-11-01 ソニー株式会社 画像処理装置、及び、画像処理方法
CN106937126B (zh) 2011-05-20 2019-11-15 索尼公司 图像处理装置和图像处理方法
CN102800365A (zh) 2011-05-26 2012-11-28 北京兆易创新科技有限公司 非易失存储器的测试校验方法和系统
CN103636203B (zh) 2011-06-17 2017-07-14 寰发股份有限公司 内部预测模式编码的方法及装置
WO2013003777A1 (en) 2011-06-29 2013-01-03 General Instrument Corporation Methods and system for using a scan coding pattern during intra coding
UA116082C2 (uk) 2011-09-27 2018-02-12 Конінклійке Філіпс Н.В. Пристрій та спосіб для перетворення динамічного діапазону зображень
JP6120490B2 (ja) 2011-11-07 2017-04-26 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
KR101827939B1 (ko) 2011-12-13 2018-02-12 주식회사 스카이미디어테크 적응적인 인트라 예측 모드 부호화 방법 및 장치, 그리고 복호화 방법 및 장치
US8571311B2 (en) 2011-12-15 2013-10-29 Microsoft Corporation Raster graphics image transcoding for file size reduction
RU2579665C9 (ru) 2011-12-28 2016-12-27 ДжейВиСи КЕНВУД КОРПОРЕЙШН Устройство кодирования движущегося изображения, способ кодирования движущегося изображения и программа кодирования движущегося изображения, а также устройство декодирования движущегося изображения, способ декодирования движущегося изображения и программа декодирования движущегося изображения
US10587898B2 (en) 2012-03-12 2020-03-10 Sun Patent Trust Image coding method, and image decoding method
JP6151067B2 (ja) * 2012-06-28 2017-06-21 日本特殊陶業株式会社 圧力センサ付きグロープラグ
US9621905B2 (en) * 2012-06-29 2017-04-11 Qualcomm Incorporated Tiles and wavefront parallel processing
US9161039B2 (en) * 2012-09-24 2015-10-13 Qualcomm Incorporated Bitstream properties in video coding
US9363517B2 (en) 2013-02-28 2016-06-07 Broadcom Corporation Indexed color history in image coding
US11259020B2 (en) 2013-04-05 2022-02-22 Qualcomm Incorporated Determining palettes in palette-based video coding
CN103248893B (zh) 2013-05-10 2015-12-23 四川大学 从h.264/avc标准到hevc标准的快速帧间转码方法及其转码器
US9558567B2 (en) 2013-07-12 2017-01-31 Qualcomm Incorporated Palette prediction in palette-based video coding
US10291827B2 (en) 2013-11-22 2019-05-14 Futurewei Technologies, Inc. Advanced screen content coding solution
US9654806B2 (en) 2014-03-26 2017-05-16 Qualcomm Incorporated Determining palette size, palette entries and filtering of palette coded blocks in video coding
US11323733B2 (en) 2014-05-23 2022-05-03 Qualcomm Incorporated Predictor palette initialization in palette-based video coding
WO2015194187A1 (en) * 2014-06-20 2015-12-23 Sharp Kabushiki Kaisha Harmonized palette coding
KR101953482B1 (ko) 2014-07-07 2019-02-28 에이치에프아이 이노베이션 인크. 인덱스 맵 부호화의 예측자로서 이스케이프 픽셀을 취급하는 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343037B1 (en) * 2004-02-04 2008-03-11 Microsoft Corporation Dynamic, locally-adaptive, lossless palettization of color and grayscale images
CN101217668A (zh) * 2008-01-14 2008-07-09 浙江大学 基于块分类的混合图像压缩方法
CN102088604A (zh) * 2011-02-10 2011-06-08 深圳创维数字技术股份有限公司 一种影片缩略图的压缩方法及压缩装置
CN103209326A (zh) * 2013-03-29 2013-07-17 惠州学院 一种png图片的压缩方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
AHG4: Dependent slices restriction;Semih Esenlik;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11;11th Meeting: Shanghai, CN, 10–19 Oct. 2012》;20121001;全文 *

Also Published As

Publication number Publication date
EP3085083A4 (en) 2017-03-15
US10321141B2 (en) 2019-06-11
US20160323591A1 (en) 2016-11-03
BR112016012417B1 (pt) 2023-04-11
CN105981380B (zh) 2019-08-20
EP3085083B1 (en) 2021-12-15
WO2015090219A1 (en) 2015-06-25
CN110336999A (zh) 2019-10-15
US20190246125A1 (en) 2019-08-08
EP3085083A1 (en) 2016-10-26
BR112016012417A2 (pt) 2018-12-26
CN105981380A (zh) 2016-09-28
US10979726B2 (en) 2021-04-13

Similar Documents

Publication Publication Date Title
CN110336999B (zh) 利用调色板编码的编码视频数据区块的方法和装置
US11265537B2 (en) Method for palette table initialization and management
US10972723B2 (en) Method and apparatus for palette table prediction
CN107211122B (zh) 对自包含式编码结构进行编码或解码时的调色板预测结果初始化程序
US9788004B2 (en) Method of color index coding with palette stuffing
KR102063274B1 (ko) 향상된 인트라 예측 모드 시그날링
KR101213904B1 (ko) 화상 복호 장치, 화상 복호 방법, 화상 부호화 장치 및 화상 부호화 방법
US10070145B2 (en) Method of coding based on string matching for video compression
US10484696B2 (en) Method and apparatus for color index prediction
CA2934246C (en) Palette prediction and sharing in video coding
WO2016115728A1 (en) Improved escape value coding methods

Legal Events

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