当前位置: 首页 > 专利查询>中山大学专利>正文

一种颜色列表生成方法技术

技术编号:29335977 阅读:32 留言:0更新日期:2021-07-20 17:54
本发明专利技术公开了一种颜色列表生成方法,方法包括:判断当前编码单元是否存在父编码单元;若当前编码单元存在父编码单元,获取所述父编码单元的第一调色板作为所述当前编码单元的颜色聚类起点,并通过简化的层次聚类算法对所述当前编码单元进行聚类处理,得到所述当前编码单元的颜色列表;若所述当前编码单元不存在父编码单元,则采用基于哈希的颜色列表生成方法生成目标元素,并对所述目标元素进行融合处理,得到所述当前编码单元的颜色列表。本发明专利技术能够减少计算复杂度,并提升聚类效率。本发明专利技术可广泛应用于计算机技术领域。

【技术实现步骤摘要】
一种颜色列表生成方法
本专利技术涉及计算机
,尤其是一种颜色列表生成方法。
技术介绍
在ITU-T/ISO/IEC联合视频专家组(JVET)研发的新一代视频压缩标准——多功能视频编码(VVC)中,屏幕内容编码是其重要的目标应用之一。调色板作为一个高效的屏幕内容压缩工具,在之前的标准HEVC中已经进行了一定的研究,而VVC则更进一步的优化了调色板模式并把其作为一种独立的模式加入到标准当中。VVC参考软件在第六个版本VTM6之后正式加入了调色板模式,并在测试SSC序列时要求打开该模式。在VVC标准中,当调色板模式被允许使用时,对于小于等于64*64及样本点大于16个的编码单元(CodingUnit,CU)会传送一个flag表示是否使用调色板。调色板模式的CU被视为帧内、帧间、IBC之外的另一种模式。使用调色板时,CU中的样点值使用一组典型的颜色值集合来表示,这个集合被称为调色板。对于与调色板颜色相近的像素值,发送颜色索引。对于调色板之外的样点(escape点)会被标识出来,并将直接传输量化后的分量值。为了编码调色板,会维护一个调色板预测器,预测器在非波前条件的slice开始时,和波前条件的编码树单元(CodingTreeUnit,CTU)行开始时,初始值为0。CU中每个点都会调用一次预测器,预测器用reuseflag来表示某颜色是否是当前调色板的一部分,reuseflag使用0游程编码。然后,传输新调色板颜色的数量和分量值。编码调色板CU后,预测器使用当前调色板更新,没有在当前调色板复用的之前调色版预测器的颜色会加入到新预测器的尾部,直到允许的最大值。每个CU中有一个escapeflag,如果escapeflag为真,调色板颜色数加1,末尾会添加此颜色。相关技术中,一般采用以下步骤来生成当前CU的调色板颜色列表:1、采用一种简化的K-means聚类算法来初始化当前CU颜色列表的元素,其中颜色列表的元素为通过聚类获得的簇(entry)的几何中心点。具体步骤为:先初始化一个空列表,然后对于CU中的每个样本点,分别计算这个样本点与颜色列表中每个entry中心点的SAD,由此来获得列表中与之SAD最小的entry。若该SAD小于预定的错误限制(errorLimit,由量化参数(quantizationparameter,QP)确定),那么这个样本点就会被归入到该entry中,否则就会在颜色列表中创建一个新的entry。其中errorLimit的大小取决于量化参数(quantizationparameter,QP)并且通过查表的方式来获得。当前CU所有的样本点都被处理完后,会根据entry中样本点的个数对列表中的entry进行从大到小排列,并把排在第31位以后的entry舍去。2、调整颜色列表。根据率失真代价(RDcost)来决定列表中的元素是采用调色板预测器中的元素还是采用第一步中获得的元素。3、对颜色列表排序,颜色列表中从调色板预测期获得的元素排在前面,而第一步初始化获得的元素排在后面。从颜色列表的初始化生成步骤中可以看出,简化的K-means算法可以较低计算复杂度的条件下实现颜色列表的初始化,但其算法具有以下缺点有待改进。首先,简化的K-means算法与传统的K-means算法相比由于只需一次迭代,因此可以节省大量的计算复杂度。但是这一次迭代过程中,需要把CU中每个样本与颜色列表已存在的entry进行SAD的计算,但CU的样本点较多时仍然需要较大的计算量。其次,简化的K-means算法存在entry中心点偏移的问题,特别是当errorLimit较大时,entry中的某些样本点有可能会因为中心点的偏移而导致离最终的聚类中心较远。而且简化的K-means算法由于只进行一轮的迭代,故其聚类的收敛性不高。除此以外,K-means算法中起始点选取不当有可能会造成聚类的效率下降的问题依旧存在。
技术实现思路
有鉴于此,本专利技术实施例提供一种颜色列表生成方法,以减少计算复杂度,并提升聚类效率。本专利技术实施例提供了一种颜色列表生成方法,包括:判断当前编码单元是否存在父编码单元;若当前编码单元存在父编码单元,获取所述父编码单元的第一调色板作为所述当前编码单元的颜色聚类起点,并通过简化的层次聚类算法对所述当前编码单元进行聚类处理,得到所述当前编码单元的颜色列表;若所述当前编码单元不存在父编码单元,则采用基于哈希的颜色列表生成方法生成目标元素,并对所述目标元素进行融合处理,得到所述当前编码单元的颜色列表。可选地,所述通过简化的层次聚类算法对所述当前编码单元进行聚类处理,包括:对所述当前编码单元中的每个样本用简化k-means算法进行第一聚类,得到第一样本点;用简化k-means算法对所述第一样本点进行第二聚类,得到所述当前编码单元的颜色列表。可选地,所述采用基于哈希的颜色列表生成方法生成目标元素,包括:按照光栅扫描的顺序依次读取所述当前编码单元或顶层编码单元中的每个样本点;计算所述每个样本点的哈希值;根据基于哈希的方法把每个样本归类到哈希表中的目标元素;所述目标元素的键值与所述样本点的键值相同。可选地,所述根据基于哈希的方法把每个样本归类到哈希表中的目标元素这一步骤中,当所述哈希表中不存在键值等于样本点键值的目标元素时,新建一个目标元素,并将所述样本点的键值作为该新建的目标元素的键值。可选地,所述对所述目标元素进行融合处理,得到所述当前编码单元的颜色列表,包括:当所述当前编码单元中的所有样本都被归类到对应的哈希表中后,对所述哈希表中的元素进行融合,得到所述当前编码单元的颜色列表。可选地,所述方法还包括对所述颜色聚类起点进行校正的步骤,该步骤包括:当每个编码单元在调色板模式的编码完成时,记录该编码单元的颜色列表记录;当该编码单元的子编码单元采用调色板编码时,以所述颜色列表记录中的每个元素作为所述子编码单元的颜色聚类起点。本专利技术实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。本专利技术的实施例判断当前编码单元是否存在父编码单元;若当前编码单元存在父编码单元,获取所述父编码单元的第一调色板作为所述当前编码单元的颜色聚类起点,并通过简化的层次聚类算法对所述当前编码单元进行聚类处理,得到所述当前编码单元的颜色列表;若所述当前编码单元不存在父编码单元,则采用基于哈希的颜色列表生成方法生成目标元素,并对所述目标元素进行融合处理,得到所述当前编码单元的颜色列表。本专利技术能够减少计算复杂度,并提升聚类效率。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施本文档来自技高网
...

【技术保护点】
1.一种颜色列表生成方法,其特征在于,包括:/n判断当前编码单元是否存在父编码单元;/n若当前编码单元存在父编码单元,获取所述父编码单元的第一调色板作为所述当前编码单元的颜色聚类起点,并通过简化的层次聚类算法对所述当前编码单元进行聚类处理,得到所述当前编码单元的颜色列表;/n若所述当前编码单元不存在父编码单元,则采用基于哈希的颜色列表生成方法生成目标元素,并对所述目标元素进行融合处理,得到所述当前编码单元的颜色列表。/n

【技术特征摘要】
1.一种颜色列表生成方法,其特征在于,包括:
判断当前编码单元是否存在父编码单元;
若当前编码单元存在父编码单元,获取所述父编码单元的第一调色板作为所述当前编码单元的颜色聚类起点,并通过简化的层次聚类算法对所述当前编码单元进行聚类处理,得到所述当前编码单元的颜色列表;
若所述当前编码单元不存在父编码单元,则采用基于哈希的颜色列表生成方法生成目标元素,并对所述目标元素进行融合处理,得到所述当前编码单元的颜色列表。


2.根据权利要求1所述的一种颜色列表生成方法,其特征在于,所述通过简化的层次聚类算法对所述当前编码单元进行聚类处理,包括:
对所述当前编码单元中的每个样本用简化k-means算法进行第一聚类,得到第一样本点;
用简化k-means算法对所述第一样本点进行第二聚类,得到所述当前编码单元的颜色列表。


3.根据权利要求1所述的一种颜色列表生成方法,其特征在于,所述采用基于哈希的颜色列表生成方法生成目标元素,包括:
按照光栅扫描的顺序依次读取所述当前编码单元或顶层编码单元中的每个样本点;
计算所述每个...

【专利技术属性】
技术研发人员:梁凡莫铭鸿
申请(专利权)人:中山大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1