CN113660492B - 一种颜色列表的编解码方法、装置及介质 - Google Patents
一种颜色列表的编解码方法、装置及介质 Download PDFInfo
- Publication number
- CN113660492B CN113660492B CN202110912857.0A CN202110912857A CN113660492B CN 113660492 B CN113660492 B CN 113660492B CN 202110912857 A CN202110912857 A CN 202110912857A CN 113660492 B CN113660492 B CN 113660492B
- Authority
- CN
- China
- Prior art keywords
- component
- coding
- bits
- encoding
- residual
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
Abstract
本发明公开了一种颜色列表的编解码方法、装置及介质,方法包括:获取调色板中颜色列表的色彩空间,所述色彩空间包括颜色的亮度分量和颜色的色度分量,所述颜色的色度分量包括第一色度分量和第二色度分量;采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果;采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量和所述第二色度分量进行编码,得到第二编码结果;对所述第一编码结果进行第一解码处理以及对所述第二编码结果进行第二解码处理,完成对所述颜色列表的编解码处理。本发明可以有效的减少编码所需的比特数。可广泛应用于视频编码技术领域。
Description
技术领域
本发明涉及视频编码技术领域,尤其是一种颜色列表的编解码方法、装置及介质。
背景技术
在ITU-T/ISO/IEC联合视频专家组(JVET)研发的新一代视频压缩标准——多功能视频编码(VVC)中,屏幕内容编码是其重要的目标应用之一。调色板作为一个高效的屏幕内容压缩工具,在之前的标准HEVC中已经进行了一定的研究,而VVC则更进一步的优化了调色板模式并把其作为一种独立的模式加入到标准当中。VVC参考软件在第六个版本VTM6之后正式加入了调色板模式,并在测试SSC序列时要求打开该模式。
在VVC标准中,当调色板模式被允许使用时,对于小于等于64*64及样本点大于16个的编码单元(Coding Unit,CU)会传送一个flag表示是否使用调色板。调色板模式的CU被视为帧内、帧间、IBC之外的另一种模式。
使用调色板时,CU中的样点值使用一组典型的颜色值集合来表示,这个集合被称为调色板。对于与调色板颜色相近的像素值,发送颜色索引。对于调色板之外的样点(escape点)会被标识出来,并将直接传输量化后的分量值。
为了编码调色板,会维护一个调色板预测器,预测器在非波前条件的slice开始时,和波前条件的编码树单元(Coding Tree Unit,CTU)行开始时,初始值为0。每个CU在进行调试板编码时都会调用一次预测器,预测器用reuse flag来表示某颜色是否是当前调色板的一部分,reuse flag使用0游程编码。然后,新调色板(当前CU调色板中在预测器中不存在的那部分颜色列表)颜色的数量和分量值会被编码和传输。编码调色板CU后,预测器使用当前调色板更新,没有在当前调色板复用的之前调色板预测器的颜色会加入到新预测器的尾部,直到允许的最大值。每个CU中有一个escape flag,如果escape flag为真,调色板颜色数加1,末尾会添加此颜色。
相关技术中,调色板颜色分量值是采用等比特长度进行直接二进制化编码,其中编码每个分量值所需的编码位数即为该分量的实际位深。
从现有的调色板颜色分量的编码方式中可以看出,该方法只是单纯地对颜色列表中的每个颜色分量值进行二进制化表示,而没用利用颜色列表的相关信息进行冗余的去除,因此编码时会消耗大量的比特来编码不需要的冗余信息。
发明内容
有鉴于此,本发明实施例提供一种颜色列表的编解码方法、装置及介质,以有效地减少编码所需的比特数。
本发明的一方面提供了一种颜色列表的编解码方法,包括:
获取调色板中颜色列表的色彩空间,所述色彩空间包括颜色的亮度分量和颜色的色度分量,所述颜色的色度分量包括第一色度分量和第二色度分量;
采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果;
采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量和所述第二色度分量进行编码,得到第二编码结果;
对所述第一编码结果进行第一解码处理以及对所述第二编码结果进行第二解码处理,完成对所述颜色列表的编解码处理。
可选地,所述采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果,包括:
对所述颜色列表中的第一色度分量按序排列;
采用原始位深对排列好的第一个第一色度分量进行二进制编码;
计算任意相邻两个第一色度分量之间的分量差值,并确定最大分量差值;
计算所述最大分量差值的最大编码比特数;
根据所述最大分量差值的最大编码比特数,对剩余第一色度分量进行编码,得到所述第一编码结果。
可选地,所述根据所述最大分量差值的最大编码比特数,对剩余第一色度分量进行编码,得到所述第一编码结果,包括:
当所述最大编码比特数大于第一阈值,将编码标识符配置为0,并使用1个比特位对所述编码标识符进行编码,然后采用原始方式编码剩余第一色度分量并结束所述第一色度分量的编码阶段;
当所述最大编码比特数小于第二阈值,将所述最大编码比特数配置为第二阈值;
计算使用原始方式编码剩余第一色度分量所需的第一比特数,并计算使用DPCM方式编码剩余第一色度分量所需的第二比特数,根据所述第一比特数与所述第二比特数之间的比较结果,将所述编码标识符配置为0或1,并根据所述编码标识符对所述剩余第一色度分量进行编码。
可选地,所述根据所述第一比特数与所述第二比特数之间的比较结果,将所述编码标识符配置为0或1,并根据所述编码标识符对所述剩余第一色度分量进行编码,包括:
当所述第一比特数小于或等于所述第二比特数,将所述编码标识符配置为0;当所述第一比特数大于所述第二比特数,将所述编码标识符配置为1;
使用1个比特位对所述编码标识符进行编码;
当所述编码标识符为0时,采用采用原始方式编码剩余第一色度分量并结束所述第一色度分量的编码阶段;
当所述编码标识符为1时,用3个比特位对所述最大编码比特数进行编码,计算每个第一色度分量的残差值,然后用所述最大编码比特数个比特位来编码每个残差值;
其中,所述采用原始方式编码剩余第一色度分量具体为:采用原始位深对剩余第一色度分量进行二进制编码处理。
可选地,所述采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量进行编码,包括:
构造亮度分量的线性模型;
确定所述线性模型中的梯度参数和偏移参数;
根据所述梯度参数和所述偏移参数,计算各个亮度分量与线性预测分量之间差值的最大亮度分量差值;
计算编码所述最大亮度分量差值所需的第三比特数;
当所述第三比特数大于第三阈值,将编码标识符配置为0;当所述第三比特数小于或等于所述第三阈值,将所述编码标识符配置为1;
当所述编码标识符为0,用1个比特位对所述编码标识符进行编码,然后采用原始方式编码剩余亮度分量并结束所述亮度分量的编码阶段;
当所述第三比特数小于第四阈值,将所述第三比特数配置为第四阈值;
计算使用原始方式编码剩余亮度分量时所需的第四比特数,以及计算使用LM方式编码剩余亮度分量时所需的第五比特数;
当所述第四比特数小于或等于所述第五比特数时,将所述编码标识符配置为0,否则配置为1;
使用1个比特位对所述编码标识符进行编码;
如果所述编码标识符为0,则采用原始位深对剩余亮度分量进行编码并结束所述亮度分量的编码阶段;
如果所述编码标识符不为0,则用3个比特位来编码所述第三比特数,计算每个亮度分量的残差,然后用1个比特位来编码亮度分量残差的符号位,用第三比特数个比特位来编码每个残差的绝对值。
可选地,所述对所述第一编码结果进行第一解码处理,包括:
采用原始位深对第一个第一色度分量进行二进制解码;
通过1个比特位对编码标识符进行解码;
当所述编码标识符为0,采用所述原始位深对剩余第一色度分量进行解码并完成所述第一色度分量的解码阶段;
当所述编码标识符为1,用3个比特位解码得到残差位深;
根据所述残差位深的比特数解码每个第一色度分量的残差;
根据所述每个第一色度分量的残差获取剩余第一色度分量的值。
可选地,所述对所述第二编码结果进行第二解码处理,包括:
用1个比特位解码编码标识符;
当所述编码标识符为0,采用原始位深对剩余亮度分量进行解码并结束所述亮度分量的解码阶段;
当所述编码标识符不为0,根据预测器中重用的颜色元素来建立线性模型,以获取梯度参数和偏移参数;
用3个比特位解码残差位深;
根据所述残差位深确定每个亮度残差的解码比特位,所述每个亮度残差的解码比特位中有1个比特位用于解码符号位,另外的比特位用于解码所述亮度残差的绝对值;
根据解码得到的亮度残差,获取亮度分量。
本发明实施例的另一方面提供了一种颜色列表的编解码装置,包括:
第一模块,用于获取调色板中颜色列表的色彩空间,所述色彩空间包括颜色的亮度分量和颜色的色度分量,所述颜色的色度分量包括第一色度分量和第二色度分量;
第二模块,用于采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果;
第三模块,用于采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量和所述第二色度分量进行编码,得到第二编码结果;
第四模块,用于对所述第一编码结果进行第一解码处理以及对所述第二编码结果进行第二解码处理,完成对所述颜色列表的编解码处理。
本发明实施例的另一方面提供了一种电子设备,包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器执行所述程序实现如前面所述的方法。
本发明实施例的另一方面提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如前面所述的方法。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
本发明的实施例获取调色板中颜色列表的色彩空间,所述色彩空间包括颜色的亮度分量和颜色的色度分量,所述颜色的色度分量包括第一色度分量和第二色度分量;采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果;采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量和所述第二色度分量进行编码,得到第二编码结果;对所述第一编码结果进行第一解码处理以及对所述第二编码结果进行第二解码处理,完成对所述颜色列表的编解码处理。本发明会利用同种分量间和不同分量间的相似信息来对颜色列表中的实际分量值进行预测,然后编码预测值与实际值之间的差值,由于差值的幅值往往要比原来的真实值要小得多,因此可以有效的减少编码所需的比特数。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的整体步骤流程图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
针对现有技术存在的问题,本发明实施例提供了一种颜色列表的编解码方法,参考图1,本发明的方法包括:
获取调色板中颜色列表的色彩空间,所述色彩空间包括颜色的亮度分量和颜色的色度分量,所述颜色的色度分量包括第一色度分量和第二色度分量;
采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果;
采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量和所述第二色度分量进行编码,得到第二编码结果;
对所述第一编码结果进行第一解码处理以及对所述第二编码结果进行第二解码处理,完成对所述颜色列表的编解码处理。
可选地,所述采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果,包括:
对所述颜色列表中的第一色度分量按序排列;
采用原始位深对排列好的第一个第一色度分量进行二进制编码;
计算任意相邻两个第一色度分量之间的分量差值,并确定最大分量差值;
计算所述最大分量差值的最大编码比特数;
根据所述最大分量差值的最大编码比特数,对剩余第一色度分量进行编码,得到所述第一编码结果。
可选地,所述根据所述最大分量差值的最大编码比特数,对剩余第一色度分量进行编码,得到所述第一编码结果,包括:
当所述最大编码比特数大于第一阈值,将编码标识符配置为0,并使用1个比特位对所述编码标识符进行编码,然后采用原始方式编码剩余第一色度分量并结束所述第一色度分量的编码阶段;
当所述最大编码比特数小于第二阈值,将所述最大编码比特数配置为第二阈值;
计算使用原始方式编码剩余第一色度分量所需的第一比特数,并计算使用DPCM方式编码剩余第一色度分量所需的第二比特数,根据所述第一比特数与所述第二比特数之间的比较结果,将所述编码标识符配置为0或1,并根据所述编码标识符对所述剩余第一色度分量进行编码。
可选地,所述根据所述第一比特数与所述第二比特数之间的比较结果,将所述编码标识符配置为0或1,并根据所述编码标识符对所述剩余第一色度分量进行编码,包括:
当所述第一比特数小于或等于所述第二比特数,将所述编码标识符配置为0;当所述第一比特数大于所述第二比特数,将所述编码标识符配置为1;
使用1个比特位对所述编码标识符进行编码;
当所述编码标识符为0时,采用采用原始方式编码剩余第一色度分量并结束所述第一色度分量的编码阶段;
当所述编码标识符为1时,用3个比特位对所述最大编码比特数进行编码,计算每个第一色度分量的残差值,然后用所述最大编码比特数个比特位来编码每个残差值;
其中,所述采用原始方式编码剩余第一色度分量具体为:采用原始位深对剩余第一色度分量进行二进制编码处理。
可选地,所述采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量进行编码,包括:
构造亮度分量的线性模型;
确定所述线性模型中的梯度参数和偏移参数;
根据所述梯度参数和所述偏移参数,计算各个亮度分量与线性预测分量之间差值的最大亮度分量差值;
计算编码所述最大亮度分量差值所需的第三比特数;
当所述第三比特数大于第三阈值,将编码标识符配置为0;当所述第三比特数小于或等于所述第三阈值,将所述编码标识符配置为1;
当所述编码标识符为0,用1个比特位对所述编码标识符进行编码,然后采用原始方式编码剩余亮度分量并结束所述亮度分量的编码阶段;
当所述第三比特数小于第四阈值,将所述第三比特数配置为第四阈值;
计算使用原始方式编码剩余亮度分量时所需的第四比特数,以及计算使用LM方式编码剩余亮度分量时所需的第五比特数;
当所述第四比特数小于或等于所述第五比特数时,将所述编码标识符配置为0,否则配置为1;
使用1个比特位对所述编码标识符进行编码;
如果所述编码标识符为0,则采用原始位深对剩余亮度分量进行编码并结束所述亮度分量的编码阶段;
如果所述编码标识符不为0,则用3个比特位来编码所述第三比特数,计算每个亮度分量的残差,然后用1个比特位来编码亮度分量残差的符号位,用第三比特数个比特位来编码每个残差的绝对值。
可选地,所述对所述第一编码结果进行第一解码处理,包括:
采用原始位深对第一个第一色度分量进行二进制解码;
通过1个比特位对编码标识符进行解码;
当所述编码标识符为0,采用所述原始位深对剩余第一色度分量进行解码并完成所述第一色度分量的解码阶段;
当所述编码标识符为1,用3个比特位解码得到残差位深;
根据所述残差位深的比特数解码每个第一色度分量的残差;
根据所述每个第一色度分量的残差获取剩余第一色度分量的值。
可选地,所述对所述第二编码结果进行第二解码处理,包括:
用1个比特位解码编码标识符;
当所述编码标识符为0,采用原始位深对剩余亮度分量进行解码并结束所述亮度分量的解码阶段;
当所述编码标识符不为0,根据预测器中重用的颜色元素来建立线性模型,以获取梯度参数和偏移参数;
用3个比特位解码残差位深;
根据所述残差位深确定每个亮度残差的解码比特位,所述每个亮度残差的解码比特位中有1个比特位用于解码符号位,另外的比特位用于解码所述亮度残差的绝对值;
根据解码得到的亮度残差,获取亮度分量。
本发明实施例的另一方面提供了一种颜色列表的编解码装置,包括:
第一模块,用于获取调色板中颜色列表的色彩空间,所述色彩空间包括颜色的亮度分量和颜色的色度分量,所述颜色的色度分量包括第一色度分量和第二色度分量;
第二模块,用于采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果;
第三模块,用于采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量和所述第二色度分量进行编码,得到第二编码结果;
第四模块,用于对所述第一编码结果进行第一解码处理以及对所述第二编码结果进行第二解码处理,完成对所述颜色列表的编解码处理。
本发明实施例的另一方面提供了一种电子设备,包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器执行所述程序实现如前面所述的方法。
本发明实施例的另一方面提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现如前面所述的方法。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
下面详细描述本发明的编解码方法的实现原理:
从现有技术的调色板颜色分量的编码方式中可以看出,现有技术只是单纯地对颜色列表中的每个颜色分量值进行二进制化表示,而没用利用颜色列表的相关信息进行冗余的去除,因此编码时会消耗大量的比特来编码不需要的冗余信息。基于上述缺点,本发明提出一种基于差分脉冲编码调制和线性预测的颜色列表编码优化算法。所提出的算法会利用同种分量间和不同分量间的相似信息来对颜色列表中的实际分量值进行预测,然后编码预测值与实际值之间的差值。由于差值的幅值往往要比原来的真实值要小得多,因此可以有效地减少编码所需的比特数。
需要说明的是,本发明中的调色板的颜色用Y、Cb、Cr格式色彩空间表示,Y为颜色的亮度(luma)分量、而Cb和Cr则为两个色度分量,其中,Cr为第一色度分量,Cb为第二色度分量。
首先,本发明对颜色列表中的其中一种色度分量(为不失一般性,这里选取Cr分量,即第一色度分量),采用基于差分脉冲编码调制的方式进行编码。
编码端的具体实现步骤包括(1)-(13):
(1)颜色列表按照以Cr分量为基准,从小到大进行重新排列。
(2)用原始位深对第一个Cr分量进行二进制直接编码。
(3)计算Cr分量差值的最大值(即最大分量差值)。计算方法为:
maxCr=max(maxCr,Cr[i]-C[i-1]),(1<i≤length),其中,length为列表长度,Cr[i]代表第i个Cr分量;max(val1,val2)表示取val1与val2两者的最大值,maxCr即为所求的Cr分量差值的最大值。
(4)计算编码最大Cr分量差值所需的比特数ResBitDepthCr(即最大编码比特数)。计算方法为:右移maxCr直到maxCr变为0,那么右移的次数即为编码最大Cr分量差值所需的比特数ResBitDepthCr。例如:若maxCr为6,其二进制表示为110,对其右移3位后会变成0,故ResBitDepthCr为3。
(5)若ResBitDepthCr>9,(这里的判断阈值“9”即为第一阈值),将use_DPCM_flag(即编码标识符)设置为0,并使用1比特位来编码use_DPCM_flag,然后采用原始方式编码其余Cr分量并结束Cr分量的编码阶段;否则,继续执行以下操作。
需要说明的是,本发明中提到的原始方式的编码方式是指:VVC中原有的颜色列表编码方式,即根据原始位深,直接对颜色分量进行二进制化处理,例如:若原始位深为10,某个颜色分量x=256,则x会被编码为0100000000。
(6)若ResBitDepthCr<2,ResBitDepthCr=2,(这里的判断阈值“2”即为第二阈值)。
(7)计算使用原始编码方式进行编码时所需的比特数costorig(即第一比特数),costorig=length*OrigBitDepthCr。其中,length为颜色列表的长度,OrigBitDepthCr为Cr分量的原始位深。
(8)计算使用DPCM方式进行编码时所需的比特数costDPCM(即第二比特数),costDPCM=length*ResBitDepthCr+3。
(9)比较costorig与costDPCM,若costorig≤costDPCM,标识符use_DPCM_flag设为0,否者use_DPCM_flag设为1。
(10)使用1个比特位来编码use_DPCM_flag。
(11)如果use_DPCM_flag为0,按照原始的比特位深来编码剩余的Cr分量,并结束Cr分量的编码阶段。否则,执行以下步骤。
(12)用3个比特位来编码ResBitDepthCr(注:根据前面的阈值判断步骤,本发明的ResBitDepthCr的范围为2到9,故此步骤需要3个比特位来进行编码)。
(13)计算每个Cr分量的残差ResCri,ResCri=Cri-Cri-1,(1<i≤length),并用ResBitDepthCr个比特位来编码每个ResCri。
在该阶段对应的解码端的具体实现步骤(即第一解码处理阶段),包括以下(1)-(6):
(1)用原始位深对第一个Cr分量进行二进制解码。
(2)用1比特位解码use_DPCM_flag。
(3)如果use_DPCM_flag为0,按照原来的比特位深来解码剩余的Cr分量,并结束Cr分量的解码阶段。否则,执行以下步骤。
(4)用3比特位解码得到残差位深ResBitDepthCr。
(5)用ResBitDepthCr个比特来解码每个Cr残差ResCri。
(6)获取其余Cr分量值Cri,Cri=ResCri+Cri-1,(1<i≤length)。这里的其余Cr分量值是指除第一个以外的Cr分量。
其次,本发明对颜色列表中的亮度分量和另外一个色度分量(为不失一般性,这里指Cb分量)采用基于线性模型的跨分量线性预测方式进行编码。
线性模型的构造方法如公式(1)-(4)所示。
在以上公式中,Y′[n]、Cb′[n]和Cr′[n]分别为重用颜色列表中的三种颜色分量,N为重用颜色列表的长度,aY和bY分别为Cr-Y线性模型中的梯度和偏移,aCb和bCb分别为Cr-Cb线性模型中的梯度参数和偏移参数。
注:下面仅描述亮度分量(即Y分量)的编解码流程,其中第二色度分量(Cb分量)的编解码流程与Y分量相似,在此不再赘述。
编码端的具体实现步骤:
(1)根据预测器中重用的颜色元素来建立Cr-Y线性模型,模型的构造方式如前面的公式(1)-(4)所示。从而获得参数aY和bY。
(2)计算各Y分量与线性预测Y分量差值的最大值(简称最大亮度分量差值)。
计算方法为:maxY=max(maxY,Yi-(aY*Cr+bY)),(1≤i≤length),其中length为列表长度,max(val1,val2)表示取val1与val2两者的最大值,maxY即为所求的最大亮度分量差值。
(3)计算编码最大亮度分量差值所需的比特数ResBitDepthY(即第三比特数)。
计算方法为:右移maxY直到maxY变为0,那么右移的次数即为编码最大Y分量差值所需的比特数ResBitDepthY。例如:若maxY为6,其二进制表示为110,对其右移3位后会变成0,故ResBitDepthY为3。
(4)若ResBitDepthY>8,(其中,这里的判断阈值“8”即为第三阈值),则将use_LM_Y_flag设置为0,否则,将use_LM_Y_flag设置为1,然后使用1比特位来编码use_LM_Y_flag。
(5)若use_LM_Y_flag为0,按照原始的方法来编码Y分量,并结束Y分量的编码流程。否则,继续执行以下步骤。
(6)若ResBitDepthY<1,ResBitDepthY=1,(这里的判断阈值“1”即为第四阈值)。
(7)计算使用原始编码方式进行编码时所需的比特数costorigY(即第四比特数),costorigY=length*OrigBitDepthY。其中length为颜色列表的长度,OrigBitDepthY为Y分量的原始位深。
(8)计算采用LM方式进行编码时所需的比特数costLMY(即第五比特数),costLMY=length*ResBitDepthY+4。
(9)比较costorigY与costLMY,若costorigY≤costLMY,标识符use_LM_Y_flag设置为0,否者use_LM_Y_flag设置为1。
(10)使用1个比特位编码use_LM_Y_flag。
(11)如果use_LM_Y_flag为0,按照原始的比特位深来编码剩余的Y分量,并结束Y分量的编码阶段。否则,继续执行以下步骤。
(12)用3个比特位来编码ResBitDepthY(注:ResBitDepthY的范围为1到8,故需要3个比特位来进行编码)。
(13)计算每个Y分量的残差ResYi,ResYi=Yi-(aY*Cr+bY),(1≤i≤length),然后用1个比特位来编码符号位,并用ResBitDepthY个比特位来编码每个ResYi的绝对值。
另外,本发明在该阶段的解码端的具体实现步骤(即第二解码处理阶段),包括以下步骤(1)-(6):
(1)用1比特位解码use_LM_Y_flag。
(2)如果use_LM_Y_flag为0,按照原来的比特位深来解码Y分量,并结束Y分量的解码阶段。否则,继续执行以下步骤。
(3)根据预测器中重用的颜色元素来建立Cr-Y线性模型,模型的构造方式如公式(1)-(4)所示。从而获得参数aY和bY。
(4)用3个比特位解码残差位深ResBitDepthY。
(5)对于每个亮度残差ResYi采用(ResBitDepthY+1)个比特位来进行解码,其中1个比特位用于解码符号位,另外REsBitDepthY个比特位用于解码ResY的绝对值。
(6)获取Y分量值Yi,Yi=ResYi+(aY*Cr+bY),(1≤i≤length)。
综上所述,本发明提出一种基于差分脉冲编码调制和线性预测的颜色列表编码优化方法。所提出的方法会利用同种分量间和不同分量间的相似信息来对颜色列表中的实际分量值进行预测,然后编码预测值与实际值之间的差值。由于差值的幅值往往要比原来的真实值要小得多,因此可以有效的减少编码所需的比特数。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (9)
1.一种颜色列表的编解码方法,其特征在于,包括:
获取调色板中颜色列表的色彩空间,所述色彩空间包括颜色的亮度分量和颜色的色度分量,所述颜色的色度分量包括第一色度分量和第二色度分量;
采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果;
采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量和所述第二色度分量进行编码,得到第二编码结果;
对所述第一编码结果进行第一解码处理以及对所述第二编码结果进行第二解码处理,完成对所述颜色列表的编解码处理;
所述采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量进行编码,包括:
构造亮度分量的线性模型;
确定所述线性模型中的梯度参数和偏移参数;
根据所述梯度参数和所述偏移参数,计算各个亮度分量与线性预测分量之间差值的最大亮度分量差值;
计算编码所述最大亮度分量差值所需的第三比特数;
当所述第三比特数大于第三阈值,将编码标识符配置为0;当所述第三比特数小于或等于所述第三阈值,将所述编码标识符配置为1;
当所述编码标识符为0,用1个比特位对所述编码标识符进行编码,然后采用原始方式编码剩余亮度分量并结束所述亮度分量的编码阶段;
当所述第三比特数小于第四阈值,将所述第三比特数配置为第四阈值;
计算使用原始方式编码剩余亮度分量时所需的第四比特数,以及计算使用LM方式编码剩余亮度分量时所需的第五比特数;
当所述第四比特数小于或等于所述第五比特数时,将所述编码标识符配置为0,否则配置为1;
使用1个比特位对所述编码标识符进行编码;
如果所述编码标识符为0,则采用原始位深对剩余亮度分量进行编码并结束所述亮度分量的编码阶段;
如果所述编码标识符不为0,则用3个比特位来编码所述第三比特数,计算每个亮度分量的残差,然后用1个比特位来编码亮度分量残差的符号位,用第三比特数个比特位来编码每个残差的绝对值。
2.根据权利要求1所述的一种颜色列表的编解码方法,其特征在于,所述采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果,包括:
对所述颜色列表中的第一色度分量按序排列;
采用原始位深对排列好的第一个第一色度分量进行二进制编码;
计算任意相邻两个第一色度分量之间的分量差值,并确定最大分量差值;
计算所述最大分量差值的最大编码比特数;
根据所述最大分量差值的最大编码比特数,对剩余第一色度分量进行编码,得到所述第一编码结果。
3.根据权利要求2所述的一种颜色列表的编解码方法,其特征在于,所述根据所述最大分量差值的最大编码比特数,对剩余第一色度分量进行编码,得到所述第一编码结果,包括:
当所述最大编码比特数大于第一阈值,将编码标识符配置为0,并使用1个比特位对所述编码标识符进行编码,然后采用原始方式编码剩余第一色度分量并结束所述第一色度分量的编码阶段;
当所述最大编码比特数小于第二阈值,将所述最大编码比特数配置为第二阈值;
计算使用原始方式编码剩余第一色度分量所需的第一比特数,并计算使用DPCM方式编码剩余第一色度分量所需的第二比特数,根据所述第一比特数与所述第二比特数之间的比较结果,将所述编码标识符配置为0或1,并根据所述编码标识符对所述剩余第一色度分量进行编码。
4.根据权利要求3所述的一种颜色列表的编解码方法,其特征在于,所述根据所述第一比特数与所述第二比特数之间的比较结果,将所述编码标识符配置为0或1,并根据所述编码标识符对所述剩余第一色度分量进行编码,包括:
当所述第一比特数小于或等于所述第二比特数,将所述编码标识符配置为0;当所述第一比特数大于所述第二比特数,将所述编码标识符配置为1;
使用1个比特位对所述编码标识符进行编码;
当所述编码标识符为0时,采用原始方式编码剩余第一色度分量并结束所述第一色度分量的编码阶段;
当所述编码标识符为1时,用3个比特位对所述最大编码比特数进行编码,计算每个第一色度分量的残差值,用所述最大编码比特数个比特位来编码每个残差值;
其中,所述采用原始方式编码剩余第一色度分量具体为:采用原始位深对剩余第一色度分量进行二进制编码处理。
5.根据权利要求1所述的一种颜色列表的编解码方法,其特征在于,所述对所述第一编码结果进行第一解码处理,包括:
采用原始位深对第一个第一色度分量进行二进制解码;
通过1个比特位对编码标识符进行解码;
当所述编码标识符为0,采用所述原始位深对剩余第一色度分量进行解码并完成所述第一色度分量的解码阶段;
当所述编码标识符为1,用3个比特位解码得到残差位深;
根据所述残差位深的比特数解码每个第一色度分量的残差;
根据所述每个第一色度分量的残差获取剩余第一色度分量的值。
6.根据权利要求1所述的一种颜色列表的编解码方法,其特征在于,所述对所述第二编码结果进行第二解码处理,包括:
用1个比特位解码编码标识符;
当所述编码标识符为0,采用原始位深对剩余亮度分量进行解码并结束所述亮度分量的解码阶段;
当所述编码标识符不为0,根据预测器中重用的颜色元素来建立线性模型,以获取梯度参数和偏移参数;
用3个比特位解码残差位深;
根据所述残差位深确定每个亮度残差的解码比特位,所述每个亮度残差的解码比特位中有1个比特位用于解码符号位,另外的比特位用于解码所述亮度残差的绝对值;
根据解码得到的亮度残差,获取亮度分量。
7.一种颜色列表的编解码装置,其特征在于,包括:
第一模块,用于获取调色板中颜色列表的色彩空间,所述色彩空间包括颜色的亮度分量和颜色的色度分量,所述颜色的色度分量包括第一色度分量和第二色度分量;
第二模块,用于采用差分脉冲编码调制的方式对所述颜色列表的所述第一色度分量进行编码,得到第一编码结果;
第三模块,用于采用基于线性模型的跨分量线性预测方式对所述颜色列表中的所述亮度分量和所述第二色度分量进行编码,得到第二编码结果;
第四模块,用于对所述第一编码结果进行第一解码处理以及对所述第二编码结果进行第二解码处理,完成对所述颜色列表的编解码处理;
所述第三模块具体用于:
构造亮度分量的线性模型;
确定所述线性模型中的梯度参数和偏移参数;
根据所述梯度参数和所述偏移参数,计算各个亮度分量与线性预测分量之间差值的最大亮度分量差值;
计算编码所述最大亮度分量差值所需的第三比特数;
当所述第三比特数大于第三阈值,将编码标识符配置为0;当所述第三比特数小于或等于所述第三阈值,将所述编码标识符配置为1;
当所述编码标识符为0,用1个比特位对所述编码标识符进行编码,然后采用原始方式编码剩余亮度分量并结束所述亮度分量的编码阶段;
当所述第三比特数小于第四阈值,将所述第三比特数配置为第四阈值;
计算使用原始方式编码剩余亮度分量时所需的第四比特数,以及计算使用LM方式编码剩余亮度分量时所需的第五比特数;
当所述第四比特数小于或等于所述第五比特数时,将所述编码标识符配置为0,否则配置为1;
使用1个比特位对所述编码标识符进行编码;
如果所述编码标识符为0,则采用原始位深对剩余亮度分量进行编码并结束所述亮度分量的编码阶段;
如果所述编码标识符不为0,则用3个比特位来编码所述第三比特数,计算每个亮度分量的残差,然后用1个比特位来编码亮度分量残差的符号位,用第三比特数个比特位来编码每个残差的绝对值。
8.一种电子设备,其特征在于,包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器执行所述程序实现如权利要求1-6中任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有程序,所述程序被处理器执行实现如权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110912857.0A CN113660492B (zh) | 2021-08-10 | 2021-08-10 | 一种颜色列表的编解码方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110912857.0A CN113660492B (zh) | 2021-08-10 | 2021-08-10 | 一种颜色列表的编解码方法、装置及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113660492A CN113660492A (zh) | 2021-11-16 |
CN113660492B true CN113660492B (zh) | 2023-05-05 |
Family
ID=78491127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110912857.0A Active CN113660492B (zh) | 2021-08-10 | 2021-08-10 | 一种颜色列表的编解码方法、装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113660492B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016049843A1 (zh) * | 2014-09-30 | 2016-04-07 | 富士通株式会社 | 调色板的编码方法、装置以及图像处理设备 |
CN106030651A (zh) * | 2014-03-21 | 2016-10-12 | 华为技术有限公司 | 利用改进的颜色表和索引图编码方法的高级屏幕内容编码 |
CN106415607A (zh) * | 2014-05-23 | 2017-02-15 | 华为技术有限公司 | 具有改进调色板表和索引图编码的先进屏幕内容编码方法 |
WO2020180119A1 (ko) * | 2019-03-06 | 2020-09-10 | 엘지전자 주식회사 | Cclm 예측에 기반한 영상 디코딩 방법 및 그 장치 |
-
2021
- 2021-08-10 CN CN202110912857.0A patent/CN113660492B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106030651A (zh) * | 2014-03-21 | 2016-10-12 | 华为技术有限公司 | 利用改进的颜色表和索引图编码方法的高级屏幕内容编码 |
CN106415607A (zh) * | 2014-05-23 | 2017-02-15 | 华为技术有限公司 | 具有改进调色板表和索引图编码的先进屏幕内容编码方法 |
WO2016049843A1 (zh) * | 2014-09-30 | 2016-04-07 | 富士通株式会社 | 调色板的编码方法、装置以及图像处理设备 |
WO2020180119A1 (ko) * | 2019-03-06 | 2020-09-10 | 엘지전자 주식회사 | Cclm 예측에 기반한 영상 디코딩 방법 및 그 장치 |
Non-Patent Citations (2)
Title |
---|
Kai Zhang等.Multi-model based cross-component linear model chroma intra-prediction for video coding.《2017 IEEE Visual Communications and Image Processing (VCIP)》.2018,第1-4页. * |
宋传鸣等.面向边缘反走样的屏幕内容索引图自适应预测.《模式识别与人工智能》.2021,第34卷(第3期),第253-266页. * |
Also Published As
Publication number | Publication date |
---|---|
CN113660492A (zh) | 2021-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6537511B2 (ja) | Hevcにおける改良型パレットモード | |
EP2015581A1 (en) | Dynamic image processing method, program for the dynamic image processing method, recording medium containing the program for the dynamic image processing method, dynamic image processing device | |
CN113382254B (zh) | 一种编解码方法、装置、设备及存储介质 | |
KR101356733B1 (ko) | 컨텍스트 기반 적응적 이진 산술 부호화, 복호화 방법 및장치 | |
JP6584501B2 (ja) | 復号方法、符号化方法、復号装置、符号化方法、プログラム | |
US7365660B2 (en) | Method and device for decoding syntax element in CABAC decoder | |
US7336711B2 (en) | Image encoding method, image decoding method, image encoder, image decode, program, computer data signal, and image transmission system | |
JP5264706B2 (ja) | 算術デコーディング方法及びデバイス | |
JP2006054877A (ja) | 適応算術復号化方法及び適応算術復号化装置 | |
JP2009534886A5 (zh) | ||
CN101742330B (zh) | 一种图像编码方法及装置 | |
KR101739603B1 (ko) | 2진 세트들을 인코딩 및 디코딩하기 위해 트리 구조들을 재이용하는 방법 및 장치 | |
CN113905242A (zh) | 一种点云颜色属性自适应压缩行程编码方法 | |
CN113660492B (zh) | 一种颜色列表的编解码方法、装置及介质 | |
KR20130135357A (ko) | 영상 양자화 파라미터 부호화 방법 및 영상 양자화 파라미터 복호 방법 | |
JP4865509B2 (ja) | 復号装置及び復号方法 | |
CN114827610B (zh) | 视频图像编码和解码方法、设备及介质 | |
CN112449201B (zh) | 解码方法、编码方法、相应的装置、电子设备及存储介质 | |
JP4644290B2 (ja) | 高域係数用符号化ブロックパターン生成方法及び装置 | |
CN113840150B (zh) | 一种点云反射率属性熵编解码方法 | |
CN112449186B (zh) | 编码方法、解码方法、相应的装置、电子设备及存储介质 | |
JP2008098751A (ja) | 算術符号化装置及び算術復号化装置 | |
WO2024077573A1 (zh) | 编解码方法、编码器、解码器、码流以及存储介质 | |
WO2024016156A1 (zh) | 滤波方法、编码器、解码器、码流以及存储介质 | |
JP2007028531A (ja) | 画像符号化装置及び画像符号化方法 |
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 |