一种帧内预测方法、系统、计算机设备及可读存储介质技术方案

技术编号:24254482 阅读:28 留言:0更新日期:2020-05-23 01:12
本发明专利技术公开了一种帧内预测方法、系统、计算机设备及可读存储介质,涉及视频编解码领域、数字芯片技术领域,包括如下步骤:写入初始像素,划分LCU,首个CU预测及重建,更新寄存器,其他CU预测及重建,遍历所有CU,重复更新寄存器步骤以及其他CU预测及重建步骤,直至所有CU均完成预测及重建。本发明专利技术所提供的方法,对于大量只会被读取一次的参考像素,采用新的参考像素覆盖,占用原有的存储空间,不需要重新开辟存储空间存储新的参考像素,以实现减少片上存储空间的目标。

An intra prediction method, system, computer equipment and readable storage medium

【技术实现步骤摘要】
一种帧内预测方法、系统、计算机设备及可读存储介质
本专利技术涉及视频编解码领域、数字芯片
,具体涉及一种帧内预测方法、系统、计算机设备及可读存储介质。
技术介绍
HEVC(HighEfficiencyVideoCdoing)是由ITU(InternationalTelecommunicationUnio,国际电信组织)和MPEG(MovingPictureExpertsGroup,运动图像专家组)联合成立的组织JCTVC(JointCollaborativeTeamonVideoCoding)在2013年发布的新的视频编码标准。相比上一代视频编码标准,即H.264/AVC,其目标是在相同的视觉质量下,压缩率降低一倍。视频编码主要是利用各种编码工具去除视频信息的空间冗余、时间冗余、信息冗余等,实现压缩效果,利于存储及传输等。HEVC视频编码标准延续了上一代编码标准的基本方法,例如基于块的编码、帧内预测、帧间预测、变换量化、环路滤波、熵编码等。其中帧内预测主要是利用当前视频帧已编码完成的内容预测剩余视频帧内容的一种方法,去除大量的视频空间冗余。在HEVC中,帧内预测是基于块来进行的,若干个像素点组成一个方形块作为一个预测单元。当前预测块的预测值计算,需要当前块的预测模式以及周围的参考像素。其中,预测模式由前端输入,而参考像素需要当前模块管理。在HEVC标准中,当前块周围一共五个紧邻位置的重建像素会被用来作为当前块的参考像素,分别是上方,右上方,左上方,左方,左下方,如图1所示。当前块完成预测以及重建过程后,得到的重建像素依然会被部分存储,作为接下来的其他预测块的参考像素,需要存储的重建像素点位于当前块的最右的一列以及最下方的一行,如图1所示。为了进一步提升编码效率,HEVC中引入了四叉树的编码块划分方式,其中最大的编码块可以是64×64。在编码端,根据编码效率选择可以划分为4个32×32的编码块,也可以不继续划分。对于一个32×32的编码块,也可以选择继续划分为4个16×16的编码块。如此依次进行,最小的编码块大小可以是4×4。在解码端,当前64×64块的划分方式已确定,只需要根据当前块的大小,进行相应的帧内预测即可。在一个最大块64×64的帧内预测计算过程中,无论是编码端还是解码端都需要重复多次的参考像素写入、读取以及大量参考像素存储需求,硬件开销较大,速度较慢,成为实时高速视频编解码的硬件设计关键瓶颈之一。
技术实现思路
为解决前述问题,本专利技术提供了一种帧内预测方法,以克服现有技术中参考像素存储方法的不足,高效利用芯片资源,提高参考像素存储效率,满足高清高速的视频编解码需求。为了达到上述目的,本专利技术采用如下技术方案:一种帧内预测方法,包括如下步骤:写入初始像素:将位于N*N的LCU左侧的N/2个像素存储于水平寄存器,N/2个像素由LCU的最顶端开始计数;将位于N*N的LCU上侧的N个像素存储于垂直寄存器;将位于N*N的LCU左上角的像素存储于左上寄存器;划分:将N*N的LCU划分成若干CU;首个CU预测及重建:读取左上角的CU的参考像素在水平寄存器、垂直寄存器和左上寄存器中对应位置的像素,基于读取的像素对左上角的CU进行预测并重建;更新寄存器:将重建后的CU的最下一行像素更新至水平寄存器,将重建后的CU的最右一列像素更新至垂直寄存器,更新时覆盖水平寄存器或垂直寄存器对应位置已存储的像素,根据LCU的划分,将划分后的CU的左上参考像素在重建后的CU的最右一列像素中对应位置的像素更新至左上寄存器;其他CU预测及重建:对下一个CU进行预测,读取当前CU的参考像素在更新后的水平寄存器、垂直寄存器以及左上寄存器中对应位置的像素,基于读取的像素对当前CU进行预测并重建;遍历所有CU,重复更新寄存器步骤以及其他CU预测及重建步骤,直至所有CU均完成预测及重建。可选的,在遍历所有CU步骤中,按照zig-zag的顺序依次进行预测和重建。可选的,CU的横坐标为CU的右上参考像素和上方参考像素在水平寄存器中的对应位置;CU的纵坐标的低三位为CU的左侧参考像素和左下参考像素在垂直寄存器中的对应位置;CU的纵坐标的低三位为CU的左上参考像素在左上寄存器中的对应位置,仅读取一个像素。可选的,水平寄存器的读取及写入地址计算公式为:其中,x为当前CU的横坐标;CUSize为当前CU大小,HoriAddr为水平寄存器读取及写入地址,HoriSize为水平寄存器读取及写入像素数目;垂直寄存器的读取及写入地址计算公式为:其中,y为当前CU的纵坐标;CUSize为当前CU大小,VertAddr为垂直寄存器读取及写入地址,VertSize为垂直寄存器读取及写入像素数目;左上寄存器的读取及写入地址计算公式为:其中,TplfAddr为左上寄存器读取及写入地址,TplfSize为左上寄存器读取及写入像素数目。可选的,当左上角的CU为32*32时,左上角的CU的左下参考像素为位于64*64的LCU左侧的32个像素,32个像素由LCU的最顶端开始计数。可选的,N*N的LCU为64*64的LCU、32*32的LCU以及16*16的LCU其中之一。可选的,在其他CU预测及重建步骤中,如果读取的像素对当前CU无效,则由该当前CU的其他读取的像素填充。本专利技术具有如下有益效果:本专利技术所提供的技术方案,大量减少参考像素所需的存储空间的方法是根据帧内预测过程中参考像素的使用特性决定的。现有技术中,一个64*64的LCU经过划分后,所有的CU的最右一列以及最下方的一行都需要存储,供其他块的预测使用,如果把所有的CU的参考像素都存储下来,那么当64*64的LCU全部划分为4*4的CU时,所需要的存储空间最多,至少需要1792个像素的空间,其中左上参考像素共265个,右上参考像素和上方参考像素共768个,左方参考像素和左下参考像素共768个。因为只有满足最糟糕的存储需求,即全部划分为4*4的CU,方能满足其他划分方式的存储需求。这就造成无论是编码端还是解码端都需要重复多次的参考像素写入、读取以及大量参考像素存储需求,导致硬件开销大、速度慢的弊端。而当前CU的预测值的计算基于之前重建完成的CU产生的参考像素。但是,由于参考像素只采用当前块周围的一行及一列像素,其他位置像素不参考,所以大量的参考像素只会被使用一次,之后便不会再使用,因此,对于大量只会被读取一次的参考像素,采用新的参考像素覆盖,占用原有的存储空间,不需要重新开辟存储空间存储新的参考像素,以实现减少片上存储空间的目标。本专利技术中,只需要一列32个像素的空间用于左方以及左下的参考像素存储(垂直寄存器),以及一行64个像素的空间作为上方以及右上的参考像素存储(水平寄存器),加上8个左上方参考像素的存储空间(左上寄存器),即可实现整个64×64的LCU的参考像素管理。一共只需32+64+8=104个像素的空间用于参考像素存储,而不需要本文档来自技高网
...

【技术保护点】
1.一种帧内预测方法,其特征在于,所述帧内预测方法包括如下步骤:/n写入初始像素:将位于N*N的LCU左侧的N/2个像素存储于水平寄存器,N/2个像素由LCU的最顶端开始计数;将位于N*N的LCU上侧的N个像素存储于垂直寄存器;将位于N*N的LCU左上角的像素存储于左上寄存器;/n划分:将N*N的LCU划分成若干CU;/n首个CU预测及重建:读取左上角的CU的参考像素在水平寄存器、垂直寄存器和左上寄存器中对应位置的像素,基于读取的像素对左上角的CU进行预测并重建;/n更新寄存器:将重建后的CU的最下一行像素更新至水平寄存器,将重建后的CU的最右一列像素更新至垂直寄存器,更新时覆盖水平寄存器或垂直寄存器对应位置已存储的像素,根据LCU的划分,将划分后的CU的左上参考像素在重建后的CU的最右一列像素中对应位置的像素更新至左上寄存器;/n其他CU预测及重建:对下一个CU进行预测,读取当前CU的参考像素在更新后的水平寄存器、垂直寄存器以及左上寄存器中对应位置的像素,基于读取的像素对当前CU进行预测并重建;/n遍历所有CU,重复更新寄存器步骤以及其他CU预测及重建步骤,直至所有CU均完成预测及重建。/n...

【技术特征摘要】
1.一种帧内预测方法,其特征在于,所述帧内预测方法包括如下步骤:
写入初始像素:将位于N*N的LCU左侧的N/2个像素存储于水平寄存器,N/2个像素由LCU的最顶端开始计数;将位于N*N的LCU上侧的N个像素存储于垂直寄存器;将位于N*N的LCU左上角的像素存储于左上寄存器;
划分:将N*N的LCU划分成若干CU;
首个CU预测及重建:读取左上角的CU的参考像素在水平寄存器、垂直寄存器和左上寄存器中对应位置的像素,基于读取的像素对左上角的CU进行预测并重建;
更新寄存器:将重建后的CU的最下一行像素更新至水平寄存器,将重建后的CU的最右一列像素更新至垂直寄存器,更新时覆盖水平寄存器或垂直寄存器对应位置已存储的像素,根据LCU的划分,将划分后的CU的左上参考像素在重建后的CU的最右一列像素中对应位置的像素更新至左上寄存器;
其他CU预测及重建:对下一个CU进行预测,读取当前CU的参考像素在更新后的水平寄存器、垂直寄存器以及左上寄存器中对应位置的像素,基于读取的像素对当前CU进行预测并重建;
遍历所有CU,重复更新寄存器步骤以及其他CU预测及重建步骤,直至所有CU均完成预测及重建。


2.根据权利要求1所述的帧内预测方法,其特征在于,在遍历所有CU步骤中,按照zig-zag的顺序依次进行预测和重建。


3.根据权利要求1所述的帧内预测方法,其特征在于,CU的横坐标为CU的右上参考像素和上方参考像素在水平寄存器中的对应位置;CU的纵坐标的低三位为CU的左侧参考像素和左下参考像素在垂直寄存器中的对应位置;CU的纵坐标的低三位为CU的左上参考像素在左上寄存器中的对应位置,仅读取一个像素。


4.根据权利要求3所述的帧内预测方法,其特征在于,水平寄存器的读取及写入地址计算公式为:



其中,x为当前CU的横坐标;CUSize为当前CU大小,HoriAddr为水平寄存器读取及写入地址,HoriSize为水平寄存器读取及写入像素数目;
垂直寄存器的读取及写入地址计算公式为:



其中,y为当前CU的纵坐标;CUSize为当前CU大小,VertAddr为垂直寄存器读取及写入地址,VertSize为垂直寄存器读取及写入...

【专利技术属性】
技术研发人员:王军肖文勇朱旭东
申请(专利权)人:杭州雄迈集成电路技术股份有限公司
类型:发明
国别省市:浙江;33

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

1