CN111669597B - 调色板解码装置和方法 - Google Patents

调色板解码装置和方法 Download PDF

Info

Publication number
CN111669597B
CN111669597B CN201910487082.XA CN201910487082A CN111669597B CN 111669597 B CN111669597 B CN 111669597B CN 201910487082 A CN201910487082 A CN 201910487082A CN 111669597 B CN111669597 B CN 111669597B
Authority
CN
China
Prior art keywords
palette
color
storage device
pixel
codec
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
CN201910487082.XA
Other languages
English (en)
Other versions
CN111669597A (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 CN111669597A publication Critical patent/CN111669597A/zh
Application granted granted Critical
Publication of CN111669597B publication Critical patent/CN111669597B/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/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/182Methods 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 pixel
    • 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
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or 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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

本发明提供一种调色板解码的装置和方法。调色板解码装置包括调色板颜色存储设备、颜色索引存储设备以及调色板值处理电路,其通过从颜色索引存储设备和调色板颜色存储设备读取数据来为每个像素生成调色板值。帧被划分为第一编解码单元,并且每个第一编解码单元被细分为一个或多个第二编解码单元。在调色板值处理电路生成第一编解码单元中的最后一个像素的调色板值之前,调色板值处理电路生成第一编解码单元中的非最后像素的调色板值,并由视频解码器的重构电路使用。本发明的调色板解码装置和方法可以放宽对存储器的要求。

Description

调色板解码装置和方法
技术领域
本发明有关于视频解码,更具体而言,有关于调色板解码的装置和方法。
背景技术
传统的视频编解码标准通常采用基于块的编解码技术来利用空间和时间冗余。例如,基本方法是将源帧划分为多个块(或编解码单元),对每个块执行帧内预测/帧间预测,变换每个块的残差,以及执行量化和熵编码。此外,生成重构帧以提供用于编解码后续块的参考像素数据。对于某些视频编解码标准,可以使用环路滤波器来增强重构帧的图像质量。视频解码器用于执行由视频编码器执行的视频编码操作的逆操作。
屏幕内容可以是计算机生成的包括文本、图形和动画的内容。例如,屏幕内容可以用在诸如桌面共享、视频会议、社交网络和远程教育的应用中。由于提出的用于捕获的图像内容编解码技术不能为屏幕内容提供最佳编解码效率,因此屏幕内容的编解码应该与摄影内容的编解码不同。当通过使用不同的编解码工具(例如,调色板编解码)在视频编码器处对屏幕内容进行编码而不是将其用于捕获的图像内容时,在视频解码器中需要适当的解码方案(例如,调色板解码)以重构屏幕内容。
发明内容
要求保护的发明的一个目的是提供一种用于调色板解码的装置和方法。
根据本发明的第一方面,公开了示例性视频解码器。示例性视频解码器包括调色板解码设备,其具有调色板颜色存储设备、颜色索引存储设备和调色板值处理电路。调色板颜色存储设备被配置为存储从比特流解码的调色板颜色。颜色索引存储设备被布置为存储像素的颜色索引,其中颜色索引从比特流解码。调色板值处理电路被配置为通过从颜色索引存储设备读取该每个像素的颜色索引,搜索存储在调色板颜色存储设备中的调色板颜色,并通过调色板颜色设置该每个像素的调色板值,为多个像素的每个像素生成调色板值,其中调色板颜色存储设备由该每个像素的颜色索引来索引。帧被划分为多个第一编解码单元,并且每个第一编解码单元被细分为一个或多个第二编解码单元。在调色板值处理电路生成第一编解码单元中的最后一个像素的调色板值之前,调色板值处理电路生成第一编解码单元中的非最后像素的调色板值,并由视频解码器的重构电路使用。
根据本发明的第二方面,公开了示例性视频解码方法。示例性视频解码方法包括:将从比特流解码的调色板颜色存储到调色板颜色存储设备中;将像素的颜色索引存储到颜色索引存储设备中,其中颜色索引从比特流中解码;通过从颜色索引存储设备读取所述每个像素的颜色索引,搜索存储在调色板颜色存储设备中的调色板颜色,并通过调色板颜色设置所述每个像素的调色板值,为每个像素生成调色板值,其中调色板颜色存储设备由所述每个像素的颜色索引来索引。帧被划分为多个第一编解码单元,并且每个第一编解码单元被细分为一个或多个第二编解码单元。在生成第一编解码单元中的最后像素的调色板值之前,生成第一编解码单元中的非最后像素的调色板值,并通过重构非最后像素来使用调色板值。
根据本发明的第三方面,公开了示例性视频解码器。示例性视频解码器包括调色板解码装置,其具有调色板颜色存储设备、颜色索引存储设备和调色板值处理电路。调色板颜色存储设备被配置为存储从比特流解码的调色板颜色。颜色索引存储设备被配置为存储像素的颜色索引,其中颜色索引从比特流解码。调色板值处理电路被配置为通过从颜色索引存储设备读取所述每个像素的颜色索引,搜索存储在调色板颜色存储设备中由每个像素的颜色索引索引的调色板颜色,并通过调色板颜色设置所述每个像素的调色板值,为多个像素的每个像素生成调色板值。帧被划分为多个第一编码单元,并且第一编码单元中的每一个被细分为一个或多个第二编码单元。直到该第一组的调色板解码所需的所有调色板颜色存储在该调色板颜色存储设备中以及该第一组的所有像素的颜色索引存储在该颜色索引存储设备中,调色板值处理电路才开始生成至少一个第一编解码单元的第一组中的第一像素的调色板值。根据从调色板颜色存储设备和颜色索引存储设备读取的数据生成第一组中的像素的调色板值的处理时间与将至少一个第一编解码单元的第二组的调色板解码所需的调色板颜色写入调色板颜色存储装置和将第二组像素的颜色索引写入颜色索引存储设备的处理时间重叠。
在阅读了在各个附图和图示中示出的优选实施例的以下详细描述之后,本发明的这些和其他目的无疑将对本领域技术人员变得显而易见。
附图说明
图1是示出根据本发明的实施例的调色板解码设备的图。
图2是示出根据本发明实施例的在帧的一个MI单元中重构像素的像素值所涉及的调色板解码处理的流程图。
图3是示出根据本发明的实施例的调色板解码处理中涉及的基于TU的调色板值计算处理的流程图。
图4是示出根据本发明的一个实施例存储在图1所示的调色板颜色存储装置中的多个调色板颜色表的图。
图5是示出了根据本发明实施例的将像素的颜色索引写入图1所示的颜色索引存储设备,以创建一个TU的颜色索引图的操作的图。
图6是示出根据本发明的一个实施例从图1所示的颜色索引存储设备读取颜色索引图的颜色索引的操作的图。
图7是示出示出了根据本发明的一个实施例由图1所示的调色板值处理电路执行的调色板值生成处理的图。
图8是图示根据本发明的实施例的第一视频解码器的图。
图9是示出根据本发明的实施例的解码帧的MI单元中的TU所涉及的控制流程的流程图。
图10是图示根据本发明的实施例的第二视频解码器的图。
图11是图示根据本发明的实施例的基于管线的调色板解码过程的图。
具体实施方式
本说明书及权利要求书通篇中所用的某些用语指代特定部件。如所属领域的技术人员可以理解的是,电子设备制造商可利用不同名称来指代同一个部件。本文并非以名称来区分部件,而是以功能来区分部件。在以下说明书及权利要求书中,用语“包括”是开放式的限定词语,因此其应被解释为意指“包括但不限于…”。另外,用语“耦合”旨在意指间接电连接或直接电连接。因此,当一个装置耦合到另一装置时,则这种连接可以是直接电连接或通过其他装置及连接部而实现的间接电连接。
调色板编码利用屏幕内容中几乎没有唯一(unique)颜色的事实,并尝试发送这些唯一颜色的调色板。本发明在视频解码器中提出了一种高性能和低成本的调色板解码方案。图1是示出根据本发明的实施例的调色板解码装置的图。调色板解码装置100可以在诸如AV1解码器的视频解码器中实现。调色板解码装置100包括调色板值处理电路102、颜色索引存储设备104和调色板颜色存储设备106。颜色索引存储设备104和调色板颜色存储设备106中的任何一个可以通过以下实现:诸如静态随机存取存储器(SRAM)的片上存储器,诸如动态随机存取存储器(DRAM)的片外存储器,或其组合。
视频解码器中的熵解码器10接收从视频编码器产生的比特流BS。熵解码器10对比特流BS进行解码以获得发送的(signaled)调色板相关信息,并将解码的调色板相关信息提供给调色板解码装置100。例如,从比特流BS导出的调色板相关信息可包括调色板大小(size)数据D_IN1、调色板颜色数据D_IN2和颜色索引数据D_IN3。在该实施例中,调色板颜色存储设备106被布置为存储从比特流BS解码的调色板颜色,颜色索引存储设备104被布置为存储从比特流BS解码的像素的颜色索引,并且调色板值处理电路102通过从颜色索引存储设备104读取像素的颜色索引,搜索存储在调色板颜色存储设备106中的调色板颜色(通过像素的颜色索引来索引),以及通过调色板颜色存储设备106中找到的调色板颜色来设置像素的调色板值,来生产每个像素的调色板值。调色板值处理电路102还用于产生调色板值输出D_OUT到视频解码器的重构电路20,其中调色板值输出D_OUT包括重构像素所需的调色板值。
为了实现高性能和低成本的调色板解码,调色板解码装置100被设计为以基于小尺寸编解码单元的方式而不是基于大尺寸编解码单元的方式执行调色板解码。例如,一个帧可以被划分为多个模式信息(mode info,简写为MI)单元,并且每个MI单元可以被划分为一个或多个变换单元(transform unit,简写为TU)。在确定另一个小尺寸编解码单元(例如,另一个TU)中的像素的调色板值之前,调色板解码装置100可以开始在一个小尺寸编解码单元(例如,一个TU)中输出像素的调色板值以用于在重构电路20处重构。换句话说,在调色板值处理电路102生成大尺寸编解码单元(例如,一个MI单元)中的最后一个像素的调色板值之前,大尺寸编解码单元(例如,一个MI单元)中的非最后像素的调色板值由调色板值处理电路102生成,并由视频解码器的重构电路20使用。以这种方式,调色板解码装置100不需要大尺寸缓冲器来将所有像素的调色板值保持在一个大尺寸编解码单元(例如,一个MI单元)中,从而放宽了缓冲器要求。此外,重构电路20可以在调色板解码装置100获得大尺寸编码单元(例如,一个MI单元)中的所有像素的调色板值之前,开始重构一个大尺寸编解码单元(例如,一个MI单元)中的像素,从而提高整体解码性能。
图2是示出根据本发明实施例的在帧的一个MI单元中重构像素的像素值所涉及的调色板解码处理的流程图。假设结果基本相同,则不需要以图2所示的确切顺序执行步骤。在步骤202,调色板解码装置100从熵解码器10获得调色板大小数据D_IN1。在步骤204,调色板解码装置100从熵解码器10获得调色板颜色数据D_IN2。在步骤206,调色板解码装置100从熵解码器10获得颜色索引数据D_IN3。在步骤208,在视频解码器处开始对残差数据的解码。在步骤210,调色板解码装置100通过参考经由比特流BS发信的语法元素来检查MI单元是否使用调色板模式。如果MI单元未使用调色板模式,则中止MI单元的调色板解码处理。如果MI单元使用调色板模式,则流程进行到步骤212。调色板解码装置100根据调色板大小数据D_IN1、调色板颜色数据D_IN2和颜色索引数据D_IN3给出的信息确定MI单元中的像素的调色板值。在步骤214,重构电路20使用MI单元中的像素的调色板值来重构像素。
如上所述,调色板解码装置100被设计为以基于小尺寸编解码单元的方式执行调色板解码,以实现高性能和低成本的调色板解码。例如,调色板值处理电路102执行步骤212以基于TU的方式计算像素的调色板值。图3是示出根据本发明的实施例的调色板解码处理中涉及的基于TU的调色板值计算处理的流程图。假设结果基本相同,则不需要以图3所示的确切顺序执行步骤。在步骤302,调色板值处理电路102检查颜色索引存储设备104中是否存在多于“N”个颜色索引,其中N是整数,M是要在当前TU中计算的所有调色板值的数量,1≤N≤M。在步骤302检查的条件满足之前,流程不进行到步骤304。在步骤304,调色板值处理电路102从颜色索引存储设备104获得“O”颜色索引,并从调色板颜色存储设备106获得相应的调色板颜色,其中O是整数且1≤O≤N。另外,重构电路200获得相应的残差数据。在步骤306,调色板值处理电路102根据“O”颜色索引和相应的调色板颜色计算“O”调色板值。另外,重构电路200根据调色板值处理电路102确定的调色板值计算重构结果。在步骤308,调色板值处理电路102检查计算的调色板值计数是否达到M。当计算的调色板值计数达到M时,这意味着调色板值处理电路102已经确定了与当前TU相关的所有调色板值。因此,完成了当前TU的调色板值计算处理。当计算的调色板值计数尚未达到M时,流程进行到步骤302。所提出的基于编解码单元的调色板解码方案(例如,基于TU的调色板解码方案)的进一步细节描述如下。
如上所述,调色板颜色存储设备106被布置为存储从比特流BS解码的调色板颜色。在该实施例中,调色板值处理电路102以基于TU的方式计算像素的调色板值。当一个MI单元使用调色板模式时,MI单元中包括的每个TU的调色板解码共享用于调色板编码MI单元的相同调色板颜色(即,基色(base color))。图4是示出根据本发明实施例的存储在调色板颜色存储设备106中的多个调色板颜色表的图。一个MI单元的调色板编码可以建立Y平面的亮度调色板颜色表TB_Y、U平面的色度调色板颜色表TB_U和V平面的色度调色板颜色表TB_V。具有调色板大小N+1的亮度调色板颜色表TB_Y具有分别由颜色索引(调色板索引)0-N索引的8比特调色板颜色Y0-YN,其中2≤N+1≤8。在该示例中,色度调色板颜色表TB_U和TB_V可以具有相同的调色板大小M+1但是具有不同的调色板颜色,其中2≤M+1≤8。具有调色板大小M的色度调色板颜色表TB_U具有分别由颜色索引(调色板索引)0-M索引的8比特调色板颜色U0-UM。具有调色板大小M的色度调色板颜色表TB_V具有分别由颜色索引(调色板索引)0-M索引的8比特调色板颜色V0-VM。调色板颜色Y0-YN、U0-UM、V0-VM和一个MI单元的调色板大小N+1和M+1被编码并通过比特流BS发信。因此,在从比特流BS解码用于一个MI单元的调色板颜色Y0-YN、U0-UM、V0-VM和调色板大小N+1和M+1之后,获得由视频编码器处的调色板编码使用的相同的亮度调色板颜色表TB_Y、色度调色板颜色表TB_U和色度调色板颜色表TB_V,并将其存储在视频解码器处的调色板颜色存储设备106中。
如上所述,颜色索引存储设备104被布置为存储从比特流BS解码的颜色索引。关于视频编码器处的调色板编码,通过使用代表调色板颜色Y0-YN之一的颜色索引(调色板索引)0-N之一对像素的Y通道值进行调色板编码,通过使用代表调色板颜色U0-UM之一的颜色索引(调色板索引)0-M之一对像素的U通道值进行调色板编码,并且通过使用代表调色板颜色V0-VM之一的颜色索引(调色板索引)0-M之一对像素的V通道值进行调色板编码。对于在调色板模式下编码的一个TU中包括的每个像素,像素的YUV颜色索引被编码并经由比特流BS发信。因此,在从比特流BS解码像素的YUV颜色索引之后,获得像素的YUV颜色索引并将其存储在视频解码器处的颜色索引存储设备104中。
根据调色板模式,可以以波前顺序在视频编码器处预测一个TU中的像素以允许并行计算。因此,可以以波前顺序(wavefront order)对相同TU中的像素的Y颜色索引进行编码和发送,可以以波前顺序对相同TU中的像素的U颜色索引进行编码和发送,并且可以以波前顺序对相同TU中的像素的V颜色索引进行编码和发送。在该实施例中,熵解码器10可以以波前顺序解码和输出相同TU中的像素的Y颜色索引,可以以波前顺序解码和输出相同TU中的像素的U颜色索引,并且可以以波前顺序解码和输出相同TU中的像素的V颜色索引。图5是示出根据本发明实施例的将像素的颜色索引写入颜色索引存储设备104以创建一个TU的颜色索引图的操作的图。假设要调色板解码的当前TU的大小是8x8。通过以与解码顺序相同的写缓冲器顺序依次写入TU中的像素的Y颜色索引,在颜色索引存储设备104中创建TU的Y平面的亮度颜色索引图M_CB_Y。如图5所示,写缓冲器顺序是波前顺序,如附图标记所示。
一个像素的Y颜色索引用于指示亮度调色板颜色表TB_Y中的调色板颜色。因此,从颜色索引存储设备104读取亮度颜色索引图M_CB_Y中的Y颜色索引,用于计算用于重构TU中的像素的Y通道值的调色板值。图6是示出根据本发明实施例的从颜色索引存储设备104读取颜色索引图的颜色索引的操作的图。由于亮度颜色索引图M_CB_Y中的Y颜色索引用于计算用于重构TU中的像素的Y通道值的调色板值,因此排列在亮度颜色索引图M_CB_Y中的Y颜色索引以与残差数据输出顺序相同的读缓冲器顺序从颜色索引存储设备104读取。在图6中,读缓冲器顺序是由附图标记指示的逐列(column-by-column)顺序。
类似地,通过以与解码顺序相同的写缓冲器顺序依次将TU中的像素的U颜色索引写入至写缓冲器,在颜色索引存储设备104中创建TU的U平面的色度颜色索引图M_CB_U,排序在色度颜色索引图M_CB_U中的U颜色索引以与残差数据输出顺序相同的读缓冲器顺序从颜色索引存储设备104读取。此外,通过以与解码顺序相同的写缓冲器顺序依次写入TU中的像素的V颜色索引,在颜色索引存储设备104中创建TU的V平面的色度颜色索引图M_CB_V,并且以与残差数据输出顺序相同的读缓冲器顺序从颜色索引存储设备104读取在亮度颜色索引图M_CB_V中排列的V颜色索引。由于本领域技术人员在阅读上述针对亮度颜色索引图M_CB_Y的段落之后可以容易地理解写入缓冲区顺序的细节和色度颜色索引图M_CB_U和M_CB_V的读取缓冲区顺序,因此为了简洁起见,在此省略进一步的描述。
当调色板颜色存储设备106中的亮度调色板颜色表TB_Y和色度调色板颜色表TB_U和TB_V可用,且颜色索引存储设备104中的亮度颜色索引图M_CB_Y和色度颜色索引图M_CB_U和M_CB_V可用时,调色板值处理电路102根据从颜色索引存储设备104读取的颜色索引和存储在调色板颜色存储设备106中的调色板颜色,计算一个TU中的像素的调色板值。
图7是示出根据本发明实施例的调色板值处理电路102执行的调色板值生成处理的图。调色板值处理电路102将控制信号CS输出到调色板颜色存储设备106,用于选择亮度调色板颜色表TB_Y和色度调色板颜色表TB_U和TB_V中的一个,并进一步将控制信号CS输出到颜色索引存储设备104,用于选择亮度颜色索引图M_CB_Y和色度颜色索引图M_CB_U和M_CB_V中的一个,其中控制信号CS用作平面选择信号。调色板值处理电路102将索引地址ADR_IDX输出到颜色索引存储设备104,用于从所选择的颜色索引图(即,由控制信号CS选择的颜色索引图)中选择像素的颜色索引,搜索所选择的调色板颜色表(即,由控制信号CS选择的调色板颜色表),用于由存储在索引地址ADR_IDX处的所选颜色索引来索引的调色板颜色,并通过在选定的调色板颜色表中找到的调色板颜色设置像素的调色板值PV。
例如,当此时需要重构像素的Y通道值时,调色板值处理电路102更新控制信号CS以选择亮度调色板颜色表TB_Y和亮度颜色索引图M_CB_Y并且更新索引地址ADR_IDX以选择存储在亮度颜色索引图M_CB_Y中的像素的Y颜色索引。因此,由调色板值处理电路102确定并输出与像素的Y通道值的重构相关联的调色板值PV。
作为另一示例,当此时需要重构像素的U通道值时,调色板值处理电路102更新控制信号CS以选择色度调色板颜色表TB_U和色度颜色索引图M_CB_U,并更新索引地址ADR_IDX以选择存储在色度颜色索引图M_CB_U中的像素的U颜色索引。因此,由调色板值处理电路102确定并输出与重构像素的U通道值相关联的调色板值PV。
再例如,当此时需要重构像素的V通道值时,调色板值处理电路102更新控制信号CS以选择色度调色板颜色表TB_V和色度颜色索引图M_CB_V,并更新索引地址ADR_IDX以选择存储在色度颜色索引图M_CB_V中的像素的V颜色索引。因此,由调色板值处理电路102确定并输出与重构像素的V通道值相关联的调色板值PV。
在该实施例中,调色板值处理电路102被布置为执行基于TU的调色板值计算处理。因此,颜色索引存储设备104可以由具有足以缓冲基于TU的调色板值计算处理所需的颜色索引的存储容量的小尺寸缓冲器实现,和/或调色板颜色存储设备106可以通过其存储容量足以缓冲基于TU的调色板值计算处理所需的调色板颜色的小尺寸缓冲器实现。
如图7所示,调色板颜色存储设备106存储单个MI单元的亮度调色板颜色表TB_Y和色度调色板颜色表TB_U、TB_V,其中同一MI单元中的每个TU的调色板解码共享相同的亮度调色板颜色表TB_Y和色度调色板颜色表TB_U、TB_V。在一个示例性设计中,调色板颜色存储设备106存储在帧的第一MI单元中的每个TU的调色板解码所需的调色板颜色(例如,由第一MI单位的调色板模式使用的亮度调色板颜色表TB_Y和色度调色板颜色表TB_U、TB_V),然后,通过重写第一MI单元中每个TU的调色板解码所需的调色板颜色的至少一部分(即,部分或全部),在帧的第二MI单元中存储每个TU的调色板解码所需的调色板颜色(例如,第二MI单元的调色板模式使用的亮度调色板颜色表TB_Y和色度调色板颜色表TB_U、TB_V)。由于调色板颜色存储设备106的存储容量等于一个MI单元的调色板解码所需的调色板颜色的最大大小,调色板颜色存储设备106的有限存储容量用于缓冲一个MI单元的调色板模式使用的调色板颜色表,并重新用于缓冲另一个MI单元的调色板模式使用的调色板颜色表。
如图7所示,颜色索引存储设备104存储单个TU的亮度颜色索引图M_CB_Y和色度颜色索引图M_CB_U、M_CB_V,其中相同TU中的所有像素的Y颜色索引排列在亮度颜色索引图M_CB_Y中,相同TU中的所有像素的U颜色索引排列在色度颜色索引图M_CB_U中,并且相同TU中的所有像素的V颜色索引排列在色度颜色索引图M_CB_V中。在一个示例性设计中,颜色索引存储设备104存储包括在第一TU中的像素的颜色索引(例如,第一TU的亮度颜色索引图M_CB_Y和色度颜色索引图M_CB_U、M_CB_V),然后通过重写包括在第一TU中的像素颜色索引的至少一部分(即部分或全部)来存储包括在第二TU中的像素的颜色索引(例如,第二TU的亮度颜色索引图M_CB_Y和色度颜色索引图M_CB_U、M_CB_V)。由于颜色索引存储设备104的存储容量等于一个TU中所有像素的颜色索引的最大大小,因此颜色索引存储设备104的有限存储容量用于缓冲一个TU中的像素的颜色索引,并重新用于缓冲另一个TU中像素的颜色索引。简言之,调色板值处理电路102以基于TU的方式计算像素的调色板值,因此允许颜色索引存储设备104的存储容量小于一帧中所有像素的颜色索引的大小。
关于视频解码器中的低成本调色板解码设计,调色板颜色存储设备106的最大存储容量可能能够缓冲仅由单个MI单元的调色板模式使用的调色板颜色,以及颜色索引存储设备104的最大存储容量可能能够缓冲仅包括在单个TU中的像素的颜色索引。然而,这仅用于说明目的,并不意味着是对本发明的限制。在成本和性能之间存在权衡。在一个替代设计中,调色板颜色存储设备106的最大存储容量可以能够缓冲由要被解码的帧中包括的K个MI单元(K≥2)的调色板模式所使用的调色板颜色,和/或颜色索引存储设备104的最大存储容量可以能够缓冲要解码的MI单元的L个TU(L≥2)中包括的像素的颜色索引,其中要解码的帧可以被划分为K'个MI单元(K'>K),并且要解码的MI单元可以被分成L'个TU(L'>L)。例如,调色板颜色存储设备106可以由乒乓缓冲器(ping-pong buffer)实现,和/或颜色索引存储设备104可以由乒乓缓冲器实现。
调色板解码装置100的调色板值输出D_OUT包括用于像素重构的调色板值。根据TU的编解码模式,在TU中重构像素可能需要像素的调色板值,或像素的残差数据,或像素的调色板值和残差数据两者。图8是图示根据本发明的实施例的第一视频解码器的图。例如,视频解码器800可以是AV1解码器。如图8所示,视频解码器800包括上述熵解码器(由“熵解码”表示)10、调色板解码装置(由“调色板解码”表示)100和重构电路(由“REC”表示)20,并且还包括残差解码电路(由“IS/IQ/IT”表示)802、加法器电路804、多个多工器(由“MUX”表示)806和820、残差缓冲器808、去块滤波器(由“DF”表示)810、至少一个参考帧缓冲器812、帧内预测电路(由“IP”表示)814、运动向量生成电路(由“MV生成”表示)816,以及运动补偿电路(用“MC”表示)818。
调色板解码装置100能够生成要重构的一个TU中包括的每个像素的调色板值PV。残差解码电路802能够为要重构的一个TU中包括的每个像素生成残差数据(residue data)RD。例如,残差解码电路802可以将逆扫描(IS)、逆量化(IQ)和逆变换(IT)应用于比特流BS的熵解码结果,以获得残差数据RD。加法器电路840被布置为将调色板值PV添加到残差数据RD以生成调整后的残差数据。多工器806包括第一输入端口、第二输入端口、第三输入端口和输出端口,其中第一输入端口被布置为接收调色板解码装置100的输出作为模式0数据D_M0(例如,D_M0=PV),第二输入端口用于接收加法器电路804的输出作为模式1数据D_M1(例如,D_M1=PV+RD),第三输入端口用于接收残差解码电路816的输出作为模式2数据D_M2(例如,D_M2=RD),并且输出端口被布置为将模式0数据D_M0、模式1数据D_M1和模式2数据D_M1中的一个输出到残差缓冲器808。
多工器806由从调色板解码装置100的控制逻辑产生的模式选择信号MS控制。换句话说,模式选择信号MS确定调色板解码装置100的输出、加法器电路804的输出和残差解码电路816的输出中的哪一个被存储到残差缓冲器808中。重构器20从残差缓冲器808读取存储的数据,用于在一个TU中重构像素。当重构TU不需要残差数据时,模式选择信号MS由模式0(其为“仅调色板值”模式)设置,使得多工器806将TU中像素的调色板值PV传递给残差缓冲器808用于重构。当TU的重构需要调色板值以及残差数据时,模式选择信号MS由模式1(其是“调色板值加残差数据”模式)设置,使得多工器806传递组合调色板值PV和残差数据RD的结果到残差缓冲器808,以用于重构。当重构TU不需要调色板值时,模式选择信号MS由模式2设置(其为“仅残差数据”模式),使得多工器806将残差数据RD传递到残差缓冲器808以供重构使用。
图9是示出根据本发明的实施例的解码帧的MI单元中的TU所涉及的控制流程的流程图。假设结果基本相同,则不需要以图9所示的确切顺序执行步骤。在步骤902,开始MI单元的解码。在步骤904,检查MI单元是否使用调色板模式。如果MI单元未使用调色板模式,则不需要执行所提出的基于TU的调色板解码处理,并且流程前进到步骤918。在步骤918,开始MI单元中的当前TU的解码。在步骤920,多工器806从残差解码电路802获得残差数据RD,并将残差数据RD存储到残差缓冲器808中以用于重构。在步骤922,检查当前TU是否是MI单元中的最后一个TU。当当前TU是MI单元中的最后一个TU时,MI单元的解码结束。当当前TU不是MI单元中的最后一个TU时,流程前进到步骤918以处理MI单元中的下一个TU。
当步骤904指示MI单元使用调色板模式时,流程前进到步骤906。在步骤906,开始解码MI单元中的当前TU。在步骤908,检查当前TU是否使用跳过模式。当当前TU使用跳过模式时,没有信息从视频编码器发送到视频解码器。例如,比特流BS不具有编解码变换系数,没有报头(header),并且没有用于跳过模式TU的帧内/帧间预测信息。因此,对于当前TU是跳过模式TU,没有从残差解码电路802生成残差数据RD。在步骤910,多工器806从调色板解码装置100获得调色板值PV,并将调色板值PV存储到残差缓冲器808中以用于重构。应当注意,在当前TU是跳过模式TU的条件下,没有从比特流BS解码当前TU的残差数据,并且残差缓冲器808用作用于缓冲当前TU的调色板值的调色板缓冲器。在步骤916,检查当前TU是否是MI单元中的最后一个TU。当当前TU是MI单元中的最后一个TU时,MI单元的解码结束。当当前TU不是MI单元中的最后一个TU时,流程前进到步骤906以处理MI单元中的下一个TU。
当步骤908指示当前TU未使用跳过模式时,从残差解码电路802生成残差数据RD,以用于为非跳过模式TU的当前TU。在步骤912,加法器电路804从调色板解码装置100获得调色板值PV,并从残差解码电路802获得残差数据RD。作为示例而非限制,当前TU的所有残差数据RD准备好时,残差解码电路802断言(assert)残差数据就绪的信号,并且调色板解码装置100不执行用于生成当前TU的调色板值PV的调色板值计算处理,直到残差解码电路802断言残差数据就绪信号为止。在步骤914,多工器806从加法器电路804接收经调整的残差数据,并将经调整的残差数据存储到残差缓冲器808中以用于重构。在步骤916,检查当前TU是否是MI单元中的最后一个TU。当当前TU是MI单元中的最后一个TU时,MI单元的解码结束。当当前TU不是MI单元中的最后一个TU时,流程前进到步骤906以处理MI单元中的下一个TU。
重构电路20在残差缓冲器808中读取存储的数据以用于重构。另外,当使用帧内模式或帧间模式对TU进行编码时,重构电路20还使用预测值PRED,其中预测值PRED可以是由帧内预测电路814确定的帧内模式预测值或者由运动向量生成电路816和运动补偿电路818确定的帧间预测值。具体地,当使用帧内模式对当前TU进行编码时,多工器820将帧内模式预测值输出到重构电路20;当使用帧间模式对当前TU进行编码时,多工器820将帧间模式预测值输出到重构电路20。去块滤波器810用于在重构之后执行去块处理。因此,从重构电路20生成的重构帧通过去块滤波器810存储到参考帧缓冲器814中。
图8中所示的架构包括:使用相同的残差缓冲器808在不同的时序(timing)来存储通过在调色板模式MI单元中重构跳过模式TU所使用的模式0数据D_M0,通过在调色板模式MI单元中重构非跳过模式TU而使用的模式1数据D_M1,以及通过在非调色板模式MI单元中重构TU而使用的模式2数据D_M2。以这种方式,可以放宽视频解码器的缓冲要求。然而,这仅用于说明目的,并不意味着是对本发明的限制。实际上,使用所提出的高性能和低成本调色板解码装置100的任何视频解码器都落入本发明的范围内。在替代设计中,一个调色板缓冲器和一个残差缓冲器均可以在使用所提出的高性能和低成本调色板解码装置100的视频解码器中实现。
图10是图示根据本发明的实施例的第二视频解码器的图。例如,视频解码器1000可以是AV1解码器。如图10所示,视频解码器800包括上述熵解码器10、调色板解码装置100、重构电路20、残差解码电路802、去块滤波器810、参考帧缓冲器812、帧内预测电路814、运动向量生成电路816、运动补偿电路818、多工器820,还包括调色板缓冲器1002、残差缓冲器1004和选择电路(用“SEL”表示)1006。调色板缓冲器1002用于存储从调色板解码装置100生成的像素的调色板值PV。残差缓冲器1004用于存储从残差解码电路802生成的像素的残差数据RD。选择器电路1006由调色板解码装置100的控制逻辑产生的模式选择信号MS控制,并具有第一输入端口、第二输入端口和输出端口,其中第一输入端口用于接收从调色板缓冲器1002中读取的调色板值PV,第二输入端口用于接收从残差缓冲器1004读取的残差数据RD,输出端口用于输出调色板缓冲器1002的数据输出中的一个或两个(即,从调色板缓冲器1002读取的调色板值PV),以及将残差缓冲器1004的数据输出(即,从残差缓冲器1004读取的残差数据RD)输出到重构电路20。
在要解码的当前TU是调色板模式MI单元中的跳过模式TU的第一种情况下,从调色板解码装置100生成当前TU的调色板值PV并将其存储到调色板缓冲器1002中,同时对于当前TU,不从残差解码电路802产生残差数据。由于模式选择信号MS由模式0(其为“仅调色板值”模式)设置,因此选择器电路1006将从调色板缓冲器1002读取的调色板值PV传递到重构电路20,以重构当前TU。
在要解码的当前TU是调色板模式MI单元中的非跳过模式TU的第二种情况下,从调色板解码装置100生成当前TU的调色板值PV并将其存储到调色板缓冲器1002中,当前TU的残差数据RD从残差解码电路802产生并存储到残差缓冲器1004中。由于模式选择信号MS由模式1设置(其为“调色板值加残差数据”模式),选择器电路1006将从调色板缓冲器1002读取的调色板值PV和从残差缓冲器1004读取的残差数据RD传递到重构电路20,以重构当前TU,其中每个像素的调色板值PV和残差数据RD的总和在由加法器电路实现的重构电路20处实现。
在要解码的当前TU是非调色板模式MI单元中的TU的第三种情况下,从残差解码电路802生成当前TU的残差数据RD并将其存储到残差缓冲器1004中,同时对于当前TU,不从调色板解码装置100生成调色板值。由于模式选择信号MS由模式2设置(其为“仅残差数据”模式),因此选择器电路1006将从残差缓冲器1004读取的残差数据RD传递到重构电路20,以重构当前TU。
在以上实施例中,调色板解码装置100可以以基于小尺寸编解码单元(例如,TU)的方式而不是基于大尺寸编解码单元(例如,MI)的方式来执行调色板解码。或者,调色板解码装置100可以在基于大尺寸编解码单元(例如MI)的管线中执行调色板解码。与在没有管线的大尺寸编解码单元(例如MI)中执行的调色板解码相比,在基于大尺寸编解码单元(例如MI)的管线中执行的调色板解码可以具有改进的性能。图11是图示根据本发明的实施例的基于管线的调色板解码过程的图。颜色索引存储设备104可以被配置为具有足以缓冲由一个或多个MI单元组成的一个MI组中的所有像素的颜色索引的存储容量。另外,调色板颜色存储设备106可以被配置为具有足以缓冲由一个或多个MI单元组成的一个MI组的调色板解码所需的调色板颜色的存储容量。此外,直到MI组的调色板解码所需的所有调色板颜色存储在调色板颜色存储设备106中及MI组的所有像素的颜色索引存储在颜色索引存储设备104中,调色板值处理电路102才开始生成由一个或多个MI单元组成的MI组中的第一像素的调色板值。
为了清楚和简单起见,假设每个MI组仅具有单个MI单元。如图11所示,第一MI组(由MI单元MI0组成)的调色板解码所需的调色板颜色在第一时间段T0期间被写入调色板颜色存储设备106,并且第一MI组(其由MI单元MI0组成)中的所有像素的颜色索引在第一时间段T0期间被写入颜色索引存储设备104中。在第一MI组(其由MI单元MI0组成)的调色板解码所需的调色板颜色在调色板颜色存储设备106中可用(are available),并且第一MI组(其由MI单元MI0组成)中的所有像素的颜色索引在颜色索引存储设备104中可用后,调色板值处理电路102开始生成第一MI组(由MI单元MI0组成)中的像素的调色板值。在第二时间段T1期间,调色板值处理电路102根据从调色板颜色存储设备106和颜色索引存储设备104读取的数据,生成第一MI组(由MI单元MI0组成)中的像素的调色板值。另外,第二MI组(由MI单元MI1组成)的调色板解码所需的调色板颜色在第二时间段T1期间被写入调色板颜色存储设备106,并且第二MI组(其由MI单元MI1组成)中的所有像素的颜色索引,在第二时间段T1期间被写入颜色索引存储设备104中。因此,将第二MI组(由MI单元MI1组成)的调色板解码所需的调色板颜色写入调色板颜色存储设备106以及将第二MI组(由MI单元MI1组成)中的所有像素的颜色索引写入到颜色索引存储设备104的处理时间,与根据从调色板颜色存储设备106和颜色索引存储设备104读取的数据产生第一MI组(由MI单元MI0组成)中的像素的调色板值的处理时间重迭。
类似地,在第二MI组(其由MI单元MI1组成)的调色板解码所需的调色板颜色在调色板颜色存储设备106中可用,并且第二MI组(其由MI单元MI1组成)中的所有像素的颜色索引在颜色索引存储设备104中可用后,调色板值处理电路102开始生成第二MI组(由MI单元MI1组成)中的像素的调色板值。在第三时间段T2期间,调色板值处理电路102根据从调色板颜色存储设备106和颜色索引存储设备104读取的数据,生成第二MI组(由MI单元MI1组成)中的像素的调色板值。另外,第三MI组(由MI单元MI2组成)的调色板解码所需的调色板颜色在第三时间段T2期间被写入调色板颜色存储设备106,并且第三MI组(其由MI单元MI2组成)中的所有像素的颜色索引,在第三时间段T2期间被写入颜色索引存储设备104中。因此,将第三MI组(由MI单元MI2组成)的调色板解码所需的调色板颜色写入调色板颜色存储设备106以及将第三MI组中的所有像素的颜色索引写入到颜色索引存储设备104的处理时间,与根据从调色板颜色存储设备106和颜色索引存储设备104读取的数据产生第二MI组(由MI单元MI1组成)中的像素的调色板值的处理时间重迭。
应该注意,图11中所示的基于管线的调色板解码处理仅用于说明目的,并不意味着是对本发明的限制。
本领域技术人员将容易地观察到,可以在保留本发明的教导的同时对装置和方法进行多种修改和更改。因此,上述公开内容应被解释为仅受所附权利要求的范围和界限的限制。

Claims (20)

1.一种视频解码器,包括:
调色板解码装置,包括:
调色板颜色存储设备,用于存储从比特流解码的多个调色板颜色;
颜色索引存储设备,用于存储多个像素的多个颜色索引,其中该多个颜色索引从该比特流中解码;以及
调色板值处理电路,用于通过以下方式为该多个像素的每个像素生成调色板值:
从该颜色索引存储设备读取该每个像素的颜色索引;
搜索存储在该调色板颜色存储设备中的调色板颜色,该调色板颜色由该每个像素的该颜色索引来索引;以及
通过该调色板颜色设置该每个像素的该调色板值;
其中,帧被划分为多个第一编解码单元,该多个第一编解码单元的每个被细分为一个或多个第二编解码单元,并且在该调色板值处理电路生成该第一编解码单元中的最后一个像素的调色板值之前,该第一编解码单元中的非最后像素的调色板值由该调色板值处理电路生成,并由该视频解码器的重构电路使用,
其中该调色板解码装置为一个第二编解码单元中的每个像素生成调色板值,并为另一个第二编解码单元中的每个像素生成调色板值;以及该视频解码器还包括:
残差解码电路,用于解码该比特流的熵解码结果,以为该另一个第二编解码单元中的该每个像素生成残差数据,并为又一个第二编解码单元中的每个像素生成残差数据;
加法器电路,用于将该另一个第二编解码单元中的该每个像素的该调色板值与该另一个第二编解码单元中的该每个像素的该残差数据相加,以生成该另一个第二编解码单元中的该每个像素的调整后的残差数据;
存储设备;以及
多工器,具有第一输入端口、第二输入端口、第三输入端口和输出端口,其中该第一输入端口用于接收该调色板解码装置的输出,该第二输入端口用于接收该加法器电路的输出,该第三输入端口用于接收该残差解码电路的输出,该输出端口用于分别在不同时序输出该调色板解码装置的该输出、该加法器电路的该输出和该残差解码电路的该输出到该存储设备;
其中,该重构电路从该存储设备读取存储的数据以进行重构。
2.根据权利要求1所述的视频解码器,其特征在于,该颜色索引存储设备存储包括在该多个第二编解码单元之一中的多个像素的多个颜色索引,然后通过重写包括在该多个第二编解码单元中的该一个中的多个像素的该多个颜色索引的至少一部分,来存储包括在该多个第二编解码单元中的另一个中的多个像素的多个颜色索引。
3.根据权利要求2所述的视频解码器,其特征在于,该颜色索引存储设备的存储容量等于一个第二编解码单元中的所有像素的颜色索引的最大大小。
4.根据权利要求2所述的视频解码器,其特征在于,每个第一编解码单元是模式信息单元,并且每个第二编解码单元是变换单元。
5.根据权利要求1所述的视频解码器,其特征在于,该颜色索引存储设备的存储容量小于一个第一编解码单元中的所有像素的颜色索引的大小。
6.根据权利要求1所述的视频解码器,其特征在于,该调色板颜色存储装置存储该多个第一编解码单元之一中的每个第二编解码单元的调色板解码所需的多个调色板颜色,然后通过重写该多个第一编解码单元之一中的每个第二编解码单元的调色板解码所需的该多个调色板颜色的至少一部分,来存储该多个第一编解码单元中的另一个中的每个第二编解码单元的调色板解码所需的多个调色板颜色。
7.根据权利要求6所述的视频解码器,其特征在于,该调色板颜色存储设备的存储容量等于一个第一编解码单元的调色板解码所需的多个调色板颜色的最大大小。
8.根据权利要求6所述的视频解码器,其特征在于每个第一编解码单元是模式信息单元,并且每个第二编解码单元是变换单元。
9.一种视频解码器,包括:
调色板解码装置,包括:
调色板颜色存储设备,用于存储从比特流解码的多个调色板颜色;
颜色索引存储设备,用于存储多个像素的多个颜色索引,其中该多个颜色索引从该比特流中解码;以及
调色板值处理电路,用于通过以下方式为该多个像素的每个像素生成调色板值:
从该颜色索引存储设备读取该每个像素的颜色索引;
搜索存储在该调色板颜色存储设备中的调色板颜色,该调色板颜色由该每个像素的该颜色索引来索引;以及
通过该调色板颜色设置该每个像素的该调色板值;
其中,帧被划分为多个第一编解码单元,该多个第一编解码单元的每个被细分为一个或多个第二编解码单元,并且在该调色板值处理电路生成该第一编解码单元中的最后一个像素的调色板值之前,该第一编解码单元中的非最后像素的调色板值由该调色板值处理电路生成,并由该视频解码器的重构电路使用,其中该视频解码器还包括:
第一存储设备,其中,该调色板值处理电路还用于将多个调色板值存储到该第一存储设备中;
第二存储设备;
残差解码电路,用于对该比特流的熵解码结果进行解码,生成多个残差数据,并将该多个残差数据存储到该第二存储设备中;以及
选择器电路,具有第一输入端口、第二输入端口和输出端口,其中该第一输入端口设置为接收从该第一存储设备读取的该多个调色板值,该第二输入端口设置为接收从该第二存储设备读取的多个残差数据,并且该输出端口被布置成将该多个调色板值和该多个残差数据中的一个或两个输出到该重构电路。
10.一种视频解码方法,包括:
将从比特流解码的多个调色板颜色存储到调色板颜色存储设备中;
将多个像素的多个颜色索引存储到颜色索引存储设备中,其中该多个颜色索引从该比特流中解码;以及
通过以下方式为该多个像素的每个像素生成调色板值:
从该颜色索引存储设备读取该每个像素的颜色索引;
搜索存储在该调色板颜色存储设备中的调色板颜色,该调色板颜色由该每个像素的该颜色索引来索引;以及
通过该调色板颜色设置该每个像素的该调色板值;
其中,帧被划分为多个第一编解码单元,该多个第一编解码单元的每个被细分为一个或多个第二编解码单元,并且在生成第一编解码单元中的最后一个像素的调色板值之前,生成该第一编解码单元中的非最后像素的调色板值,并用于该非最后像素的重构,
其中,为一个第二编解码单元中的每个像素生成调色板值,并且为另一个第二编解码单元中的每个像素生成调色板值,该视频解码方法还包括:
解码该比特流的熵解码结果,以生成用于该另一个第二编解码单元中的该每个像素的残差数据,并生成用于又一个第二编解码单元中的每个像素的残差数据;
通过将该另一个第二编解码单元中的该每个像素的该调色板值与该另一个第二编解码单元中的该每个像素的该残差数据相
加,生成该另一个第二编解码单元中的该每个像素的调整后的残差数据;
在不同时序将包括为该一个第二编解码单元生成的多个调色板值的第一输入,包括为该另一个第二编解码单元生成的调整后的残差数据的第二输入,以及包括为该又一个第二编解码单元生成的残差数据的第三输入存储到同一存储设备中,其中从该存储设备读取存储的数据以重构像素。
11.根据权利要求10所述的视频解码方法,其特征在于,将多个像素的多个颜色索引存储到该颜色索引存储设备中包括:
存储包括在该多个第二编解码单元之一中的多个像素的多个颜色索引;以及
通过重写包括在该多个第二编解码单元中的该一个中的多个像素的该多个颜色索引的至少一部分,来存储包括在该多个第二编解码单元中的另一个中的多个像素的多个颜色索引。
12.根据权利要求11所述的视频解码方法,其特征在于,该颜色索引存储设备的存储容量等于一个第二编解码单元中的所有像素的颜色索引的最大大小。
13.根据权利要求11所述的视频解码方法,其特征在于,其中每个第一编解码单元是模式信息单元,并且每个第二编解码单元是变换单元。
14.根据权利要求10所述的视频解码方法,其特征在于,该颜色索引存储设备的存储容量小于一个第一编解码单元中的所有像素的颜色索引的大小。
15.根据权利要求10所述的视频解码方法,其特征在于,将从该比特流解码的多个调色板颜色存储到该调色板颜色存储装置中包括:
存储该多个第一编解码单元之一中的每个第二编解码单元的调色板解码所需的多个调色板颜色;以及
通过重写该多个第一编解码单元之一中的每个第二编解码单元的调色板解码所需的该多个调色板颜色的至少一部分,来存储该多个第一编解码单元中的另一个中的每个第二编解码单元的调色板解码所需的多个调色板颜色。
16.根据权利要求15所述的视频解码方法,其特征在于,该调色板颜色存储设备的存储容量等于一个第一编解码单元的调色板解码所需的多个调色板颜色的最大大小。
17.根据权利要求15所述的视频解码方法,其特征在于每个第一编解码单元是模式信息单元,并且每个第二编解码单元是变换单元。
18.一种视频解码方法,包括:
将从比特流解码的多个调色板颜色存储到调色板颜色存储设备中;
将多个像素的多个颜色索引存储到颜色索引存储设备中,其中该多个颜色索引从该比特流中解码;以及
通过以下方式为该多个像素的每个像素生成调色板值:
从该颜色索引存储设备读取该每个像素的颜色索引;
搜索存储在该调色板颜色存储设备中的调色板颜色,该调色板颜色由该每个像素的该颜色索引来索引;以及
通过该调色板颜色设置该每个像素的该调色板值;
其中,帧被划分为多个第一编解码单元,该多个第一编解码单元的每个被细分为一个或多个第二编解码单元,并且在生成第一编解码单元中的最后一个像素的调色板值之前,生成该第一编解码单元中的非最后像素的调色板值,并用于该非最后像素的重构,其中该视频解码方法还包括:
将多个调色板值存储到第一存储设备中;
对该比特流的熵解码结果进行解码,生成多个残差数据,并将该多个残差数据存储到第二存储设备中;以及
通过以下方式执行像素重构:
从该第一存储设备读取该多个调色板值;或者
从该第二存储设备读取该多个残差数据;或者
从该第一存储设备读取该多个调色板值,并从该第二存储设备读取该多个残差数据。
19.一种视频解码器,包括:
调色板解码装置,包括:
调色板颜色存储设备,用于存储从比特流解码的多个调色板颜色;
颜色索引存储设备,用于存储多个像素的多个颜色索引,其中该多个颜色索引从该比特流中解码;以及
调色板值处理电路,用于通过以下方式为该多个像素的每个像素生成调色板值:
从该颜色索引存储设备读取该每个像素的颜色索引;
搜索存储在该调色板颜色存储设备中的调色板颜色,该调色板颜色由该每个像素的该颜色索引索引;以及
通过该调色板颜色设置该每个像素的该调色板值;
其中,帧被划分为多个第一编解码单元,并且每个第一编解码单元被细分为一个或多个第二编解码单元;
其中,直到第一组的调色板解码所需的所有调色板颜色存储在该调色板颜色存储设备中,以及该第一组的所有像素的颜色索引存储在该颜色索引存储设备中,该调色板值处理电路开始生成至少一个第一编解码单元的该第一组中的第一像素的调色板值;以及
其中,根据从该调色板颜色存储设备和该颜色索引存储设备读取的数据生成该第一组中的多个像素的多个调色板值的处理时间与将至少一个第一编解码单元的第二组的调色板解码所需的多个调色板颜色写入该调色板颜色存储装置和将该第二组的多个像素的多个颜色索引写入该颜色索引存储设备的处理时间重叠。
20.根据权利要求19所述的视频解码器,其特征在于,每个第一编解码单元是模式信息单元,并且每个第二编解码单元是变换单元。
CN201910487082.XA 2018-03-06 2019-06-05 调色板解码装置和方法 Active CN111669597B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862639025P 2018-03-06 2018-03-06
US16/293,647 2019-03-06
US16/293,647 US10659794B2 (en) 2018-03-06 2019-03-06 Apparatus and method for palette decoding

Publications (2)

Publication Number Publication Date
CN111669597A CN111669597A (zh) 2020-09-15
CN111669597B true CN111669597B (zh) 2022-06-07

Family

ID=67842282

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910487082.XA Active CN111669597B (zh) 2018-03-06 2019-06-05 调色板解码装置和方法

Country Status (3)

Country Link
US (1) US10659794B2 (zh)
CN (1) CN111669597B (zh)
TW (1) TWI709330B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022532444A (ja) * 2019-09-07 2022-07-14 ベイジン、ターチア、インターネット、インフォメーション、テクノロジー、カンパニー、リミテッド ビデオデータを復号化する方法、コンピューティングデバイス、非一時的コンピュータ可読記憶媒体、デコーダ可読記憶媒体、およびコンピュータプログラム製品
WO2021133529A1 (en) * 2019-12-26 2021-07-01 Alibaba Group Holding Limited Methods for coding video data in palette mode
CN116134820A (zh) * 2020-08-04 2023-05-16 现代自动车株式会社 基于补丁本的视频数据编码和解码的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106068648A (zh) * 2014-01-02 2016-11-02 高通股份有限公司 调色板译码模式中视频块的逸出像素的量化
CN106415607A (zh) * 2014-05-23 2017-02-15 华为技术有限公司 具有改进调色板表和索引图编码的先进屏幕内容编码方法
CN106464871A (zh) * 2014-05-23 2017-02-22 高通股份有限公司 在基于调色板的视频译码中对具有逸出的行程进行译码

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106068648A (zh) * 2014-01-02 2016-11-02 高通股份有限公司 调色板译码模式中视频块的逸出像素的量化
CN106415607A (zh) * 2014-05-23 2017-02-15 华为技术有限公司 具有改进调色板表和索引图编码的先进屏幕内容编码方法
CN106464871A (zh) * 2014-05-23 2017-02-22 高通股份有限公司 在基于调色板的视频译码中对具有逸出的行程进行译码

Also Published As

Publication number Publication date
CN111669597A (zh) 2020-09-15
US20190281312A1 (en) 2019-09-12
TW201939954A (zh) 2019-10-01
TWI709330B (zh) 2020-11-01
US10659794B2 (en) 2020-05-19

Similar Documents

Publication Publication Date Title
US11140401B2 (en) Coded-block-flag coding and derivation
US10911754B2 (en) Image coding method using history-based motion information and apparatus for the same
CN111669597B (zh) 调色板解码装置和方法
TW202038611A (zh) 用於視訊寫碼之三角運動資訊
US11166029B2 (en) Video encoding apparatus having reconstruction buffer with fixed size and/or bandwidth limitation and associated video encoding method
TW202044833A (zh) 使用不同色度格式之三角預測單元模式中之視訊寫碼
TW202034695A (zh) 用於視訊寫碼之限制仿射運動繼承
CN111684807A (zh) 用于360度视频的帧内预测
US20120121018A1 (en) Generating Single-Slice Pictures Using Paralellel Processors
CN114830667A (zh) 视频编解码中用于参考图片重采样的参考图片缩放比例
US20050259747A1 (en) Context adaptive binary arithmetic code decoder for decoding macroblock adaptive field/frame coded video data
US10999604B2 (en) Adaptive implicit transform setting
TW202002654A (zh) 具有群組分流位元子之係數寫碼
CA2774940C (en) Joint scalar embedded graphics coding for color images
US8737469B1 (en) Video encoding system and method
EP4374573A1 (en) Cross component end of block flag coding
CN115550666A (zh) 用于视频数据的编码方法、解码方法、计算设备和介质
KR20220157455A (ko) 이미지 인코딩 및 디코딩을 위한 방법 및 디바이스
CN114424544A (zh) 允许基于矩阵的帧内预测块具有多个变换块
CN106686380B (zh) 采用基于多块的流水线的增强型数据处理设备及操作方法
TW202029747A (zh) 對於視訊寫碼中最壞情況頻寬縮減之限制
US20230336711A1 (en) Method for determining specific linear model and video processing device
JP2022540659A (ja) ルマツークロマ量子化パラメータテーブルシグナリング
KR20230157975A (ko) 딥러닝 기반 yuv 비디오 압축을 위한 모션 흐름 코딩
KR20220024643A (ko) 위치 의존적 인트라 예측 조합을 이용한 픽처 인코딩 및 디코딩을 위한 방법 및 디바이스

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