高并行的块内预测方法及系统与流程

未命名 08-02 阅读:140 评论:0


1.本发明涉及数字视频信号编解码技术领域,尤其涉及一种高并行的块内预测方法及系统。


背景技术:

2.在目标码率有上界的视频压缩体系中,参考帧越多,预测的精确度越高,使得压缩质量就越高,但随着当前输入图像数据分辨率、帧率等数据的提高,导致现有芯片的主频无法支持其对多个高分辨率的参考帧进行处理,损害压缩质量。
3.针对上述问题,当前主要的解决方案为:根据像素预测方法,对输入图像数据的参考帧进行帧内压缩处理,以减少参考帧的大小和其被处理时所占用的带宽,进而使芯片能更有效的对输入图像数据进行压缩,其中,现有的帧内压缩方法主要包括块内预测和块间预测两种,然而,当前像素预测方法存在以下两个问题:第一,现有块内预测在编码或者解码时,当前像素点需要等待先像素点的编码或者还原完成后才能进行相应的编码或者还原动作,使得大部分像素点之间存在强依赖关系;第二,现有块间预测在解码时,当前宏块的解压缩需要等待在先宏块完成解压缩后才能进行,使得各宏块之间存在块间依赖;上述问题导致当前像素预测方法的并发效率差,降低了芯片的像素处理效率。


技术实现要素:

4.以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
5.本发明实施例提供了一种高并行的块内预测方法及系统,能够有效解除大部分像素点之间存在的强依赖关系,并解除各宏块之间存在块间依赖,进而提升预测方法的并发效率,实现高并行预测,以提高芯片的像素处理效率。
6.第一方面,本发明实施例提供了一种高并行的块内预测方法,应用于浅压缩系统的编码端,所述方法包括:获取多个原始图像宏块,并根据量化步长对多个所述原始图像宏块进行量化处理,得到量化数据;从多个待选的块内预测模式中确定目标预测模式,并根据所述目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,所述待选的块内预测模式包括向上预测模式、左预测模式和中值预测模式;对所述量化数据和所述残差数据进行编码处理,得到多个待选编码,所述待选编码包括:根据所述量化数据进行编码的无符号变长码和无符号定长码,根据所述残差数据进行编码的有符号变长码和有符号定长码;从多个所述待选编码中确定出使用二进制位数最少的目标编码,并根据多个所述目标编码得到多个宏块编码数据;将多个所述宏块编码数据和对应的编码信息发送至所述浅压缩系统的解码端,以
使所述解码端根据所述编码信息对多个所述宏块编码数据进行解码处理得到多个所述原始图像宏块。
7.根据本发明提供的实施例的高并行的块内预测方法,至少具有如下有益效果:本发明通过根据所述目标预测模式和所述量化数据对应的预测数据进行预测处理的方式,得到残差数据,使得各待预测像素点的残差数据只需要根据宏块中参考像素点的量化像素值即可进行计算,由于编码时宏块内所有像素的预测值之间没有关联性,故在预测过程中本发明能同时对宏块中的多个像素点进行预测处理,而在解码时,各个待选预测模式均至少能对宏块中同行或者同列的多个像素点进行还原处理,进而能有效解除大部分像素点之间存在的强依赖关系,且各预测方法均为块内预测方式,支持解码端同时对多个宏块进行解码,故可以有效免除各宏块间的依赖关系,进而使本发明可以有效提高像素预测的并发效率,在保证预测精度的同时,有效提高芯片的像素处理效率。
8.在一些实施例中,在所述目标预测模式为所述向上预测模式或者所述左预测模式的情况下,所述宏块编码数据包括初始像素点的量化数据和多个待预测像素点对应的残差数据,所述根据所述目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,包括:根据所述目标预测模式和所述初始像素点计算出多个所述待预测像素点的预测值;根据多个所述待预测像素点的量化后像素值和所述预测值的差值得到所述残差数据。
9.在一些实施例中,在所述目标预测模式为所述向上预测模式的情况下,所述根据所述目标预测模式和所述初始像素点计算出多个所述待预测像素点的预测值,包括:对与所述初始像素点同行,且位于所述初始像素点右侧的各个首行待预测像素点进行预测,以使各个所述首行待预测像素点根据左侧相邻的像素点的量化后像素值计算出所述预测值;对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以计算出所述预测值。
10.在一些实施例中,所述对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以计算出所述预测值,包括:对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个所述次行待预测像素点根据上方相邻的像素点的量化后像素值计算出所述预测值;或者,对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个所述次行待预测像素点中的次行首列待预测像素点根据上方相邻的像素点的量化后像素值计算出所述预测值;以使各个所述次行待预测像素点中的次行次列待预测像素点根据左上方相邻的像素点的量化后像素值计算出所述预测值;或者,对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个所述次行待预测像素点中的次行末列待预测像素点根据上方相邻的像素点的量化后像素值计算出所述预测值;以使各个所述次行待预测像素点中的次行次列待预测像素点根据右上方相邻的像素点的量化后像素值计算出所述预测值。
11.在一些实施例中,在所述目标预测模式为所述左预测模式的情况下,所述根据所
述目标预测模式和所述初始像素点计算出多个所述待预测像素点的预测值,包括:对与所述初始像素点同列,且位于所述初始像素点下方的各个首列待预测像素点进行预测,以使各个所述首列待预测像素点根据上方相邻的像素点的量化后像素值计算出所述预测值;对位于所述初始像素点所在列右侧的各个次列待预测像素点进行预测,以使各个所述次列待预测像素点根据左侧相邻的像素点的量化后像素值计算出所述预测值。
12.在一些实施例中,在所述目标预测模式为所述中值预测模式的情况下,所述宏块编码数据包括像素中值的量化数据和宏块内所有像素点的残差数据,根据所述目标预测模式和所述像素中值的量化数据对宏块内所有像素点的量化后数据进行预测处理,得到残差数据,包括:根据图像像素位宽确定像素中值,然后量化所述像素中值得到量化后的中值编码值;将所述中值编码值确定为宏块内所有像素点的预测值;根据多个所述待预测像素点的量化后像素值和所述预测值的差值得到所述残差数据。
13.在一些实施例中,所述目标编码的定长码方式的二进制位数为m;其中,m为所述量化数据无符号定长码使用位数或者各个待选的块内预测模式中所述残差数据的有符号定长码最小使用位数。
14.在一些实施例中,在得到多个所述宏块编码数据之后,还执行以下步骤:通过视频缓冲区验证器对所述宏块编码数据进行溢出判断处理;在所述视频缓冲区验证器溢出的情况下,提高所述量化步长,并根据所述量化步长对所述原始图像宏块进行量化处理、预测处理和编码处理,确定所述目标编码,以重新生成所述宏块编码数据。
15.第二方面,本发明实施例提供了一种高并行的块内预测方法,应用于浅压缩系统的解码端,所述方法包括:接收所述浅压缩系统的编码端发送的多个宏块编码数据和对应的编码信息,并根据所述编码信息确定目标编码;在所述目标编码为无符号变长码或者无符号定长码的情况下,对多个所述宏块编码数据中的量化数据进行反量化处理得到多个原始图像宏块;在所述目标编码为有符号变长码或者有符号定长码的情况下,根据所述编码信息中的目标预测模式对多个所述宏块编码数据中的残差数据进行还原处理,得到多个所述量化数据,并对多个所述量化数据进行反量化处理得到多个原始图像宏块;其中,所述目标预测模式由所述编码端从多个待选的块内预测模式中确定,所述待选的块内预测模式包括向上预测模式、中值预测模式和左预测模式。
16.在一些实施例中,所述根据所述编码信息中的目标预测模式对多个所述宏块编码数据中的所述残差数据进行还原处理,得到多个所述量化数据,包括:在所述目标预测模式为向上预测模式或者左预测模式的情况下,从所述宏块编码数据中获取初始像素点的量化数据;根据所述初始像素点的量化数据和所述残差数据,对同一行或者同一列中的多个待预测像素点进行还原处理,得到多个所述待预测像素点的量
化数据;或者,在所述目标预测模式为中值预测模式的情况下,从所述宏块编码数据中获取像素中值的量化数据;根据所述像素中值的量化数据和所述残差数据,对同一宏块的所有像素点进行还原处理,得到各个所述待预测像素点对应的量化数据。
17.在一些实施例中,所述宏块编码数据包括第一宏块数据和第二宏块数据,所述第一宏块数据和所述第二宏块数据均携带字节长度信息,所述对多个所述宏块编码数据中的量化数据进行反量化处理得到多个原始图像宏块,包括;在对所述第一宏块数据中的量化数据进行反量化处理时,根据所述第一宏块数据对应的所述编码信息确定所述第二宏块数据的数据地址,并根据所述数据地址对所述第二宏块数据中的量化数据进行反量化处理,得到多个原始图像宏块。
18.在一些实施例中,所述宏块编码数据包括第三宏块数据和第四宏块数据,所述第三宏块数据和所述第四宏块数据均携带字节长度信息,所述根据所述编码信息中的目标预测模式对多个所述宏块编码数据中的所述残差数据进行还原处理,得到多个所述量化数据,所述方法包括:在对所述第三宏块数据中的残差数据进行还原处理时,根据所述第三宏块数据对应的所述编码信息确定所述第四宏块数据的数据地址,并根据所述数据地址对所述第四宏块数据中的残差数据进行还原处理,得到多个所述量化数据。
19.第三方面,本发明实施例提供了一种浅压缩系统,包括编码端和解码端;所述编码端用于获取多个原始图像宏块,并根据量化步长对多个所述原始图像宏块进行量化处理,得到量化数据;从多个待选的块内预测模式中确定目标预测模式,并根据所述目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,所述待选的块内预测模式包括向上预测模式、左预测模式和中值预测模式;对所述量化数据和所述残差数据进行编码处理,得到多个待选编码,所述待选编码包括:根据所述量化数据进行编码的无符号变长码和无符号定长码,根据所述残差数据进行编码的有符号变长码和有符号定长码;从多个所述待选编码中确定出使用二进制位数最少的目标编码,并根据多个所述目标编码得到多个宏块编码数据;将多个所述宏块编码数据和对应的编码信息发送至所述解码端;所述解码端用于接收所述编码端发送的多个所述宏块编码数据和对应的所述编码信息,并根据所述编码信息确定所述目标编码;在所述目标编码为所述无符号变长码或者所述无符号定长码的情况下,对多个所述宏块编码数据中的所述量化数据进行反量化处理得到多个所述原始图像宏块;在所述目标编码为所述有符号变长码或者所述有符号定长码的情况下,根据所述编码信息中的目标预测模式对多个所述宏块编码数据中的所述残差数据进行还原处理,得到多个所述量化数据,并对多个所述量化数据进行反量化处理得到多个所述原始图像宏块。
20.在一些实施例中,所述解码端包括多个解码硬件,多个所述解码硬件用于分别处理对多个所述宏块编码数据进行解码处理,以得到多个所述原始图像宏块。
21.第四方面,本发明实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面的应用于浅压缩系统的编码端的高并行的块内预测方法,并实现如上述第二方面的
应用于浅压缩系统的解码端的高并行的块内预测方法。
22.第五方面,本发明实施例提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,实现如上述第一方面的应用于浅压缩系统的编码端的高并行的块内预测方法,并实现如上述第二方面的应用于浅压缩系统的解码端的高并行的块内预测方法。
23.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
24.附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
25.图1是本发明实施例提供的高并行的块内预测方法应用于浅压缩系统的编码端的流程图;图2是图1中步骤s120的具体实现过程示意图;图3是本发明实施例提供的向上预测模式的首行预测方式的示意图;图4是本发明实施例提供的上预测模式的其余行预测方式的示意图;图5是本发明实施例提供的左上预测模式的其余行预测方式的示意图;图6是本发明实施例提供的右上预测模式的其余行预测方式的示意图;图7是本发明实施例提供的左预测方式的首列预测方式的示意图;图8是本发明实施例提供的左预测方式的其余列预测方式的示意图;图9是图1中步骤s120的另一具体实现过程示意图;图10是图1中步骤s140之后的具体实现过程示意图;图11是本发明实施例提供的高并行的块内预测方法应用于浅压缩系统的解码端的流程图;图12本发明实施例提供的对残差数据进行还原处理的具体实现过程示意图;图13是本发明实施例提供的示例一的具体实现过程示意图;图14是本发明实施例提供的示例二的具体实现过程示意图;图15是本发明实施例提供的超高清序列直接编解码压缩测试的结果示意图;图16是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
26.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
27.需要说明的是,虽然在模块示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于模块中的模块划分,或者流程图中的顺序执行所示出或者描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或者先后次序。
28.在目标码率有上界的视频压缩体系中,参考帧越多,预测的精确度越高,使得压缩质量就越高,但芯片主频一般在400m上下,在处理4k120 4:4:4 也即2x4k90 4:2:2的输入图像数据时,只用一个参考帧都已经开始超过ddr处理能力的上界,而我们一般只能规划ddr(双倍速率同步动态随机存储器)工作于70%的有效带宽下,情况就变得更差。如果需要好的压缩质量,就需要更多的参考帧,而更多的参考帧就会接近芯片ddr处理能力的上限,这是一对在图像类专业芯片设计中不可能回避的矛盾;针对上述问题,当前主要的解决方案为:根据像素预测方法,对输入图像数据的参考帧进行帧内压缩处理,以减少参考帧的大小和其被处理时所占用的带宽,进而使芯片能更有效的对输入图像数据进行压缩,其中,现有的帧内压缩方法主要包括块内预测和块间预测两种,然而,当前像素预测方法存在以下两个问题:第一,现有块内预测在编码或者解码时,当前像素点的需要等待先像素点的编码或者还原完成后才能进行相应的编码或者还原动作,使得大部分像素点之间存在强依赖关系;即现有的纯块内预测方法,在可查询的公开文档中都是点与点之间的形成强依赖关系的方法,后面的点的预测,依赖于先编码的点的解码重构,难以做到高并行和浅流水,具体的,类似jpeg lossless里面的点到点强依赖的预测方式,在对8x8的点阵进行预测时,需要63个硬件时钟,或者在预测方式与hevc参考帧的角度预测有关联,通过使用加权预测公式模拟hevc标准中的各种预测角度的各类方法中,每种预测方式的最左列和最上行的预测都和其它点不一样,导致大部分预测方式不能做到高并行,如当同时存在位于左侧位置和上方位置的两个参考像素点时,由于预测点和行列都有关,导致预测时必须等本行或者本列的上一个像素点还原了才可以得到当前点预测值,以继续还原当前点,使得解码时是不可以做到高并行。
29.第二,现有块间预测在解码时,当前宏块的解压缩需要等待在先宏块完成解压缩后才能进行,使得各宏块之间存在块间依赖;具体的,典型的高压缩技术如h264、h265、avs/avs+和avs2等,其预测模式都不会直接基于块内数据特征建立预测模型,一般是使用邻块的边缘数据建立预测模型,该类方法虽然也可以做到并行处理,但该类方法存在块间依赖,导致并行度降低。
30.上述问题导致当前像素预测方法的并发效率差,降低了芯片的像素处理效率。
31.块内预测应用于图像类芯片设计中的参考帧压缩或者视频接口压缩,而本发明描述的高并行块内预测方法则是应用于参考帧压缩的浅压缩系统中的关键算法部件;参考帧压缩,一般指图像压缩比在2-3倍附近的接近透明质量的压缩技术,属于浅压缩技术的一种。
32.上述提到的ddrsdram是双倍速率同步动态随机存储器,本领域技术人员习惯称其为ddr,其中,sdram 是synchronous dynamic random access memory的缩写,即同步动态随机存取存储器,而ddrsdram则是double data rate sdram的缩写。
[0033]“4k120 4:4:4
ꢀ”
为图像输入数据的一般缩写表示,其中,“4k”指的是4096x2160/3840x2160 的图像分辨率;“120”指的是每秒120帧的帧率;“4:4:4”指的是指图像中yuv(y亮度,uv色度)三通道的采样比。
[0034]
预测模式作为浅压缩系统中的关键部件,在视频数据压缩的过程中起重要作用,故为解决上述问题,本发明提出了一种利于硬件高并行处理的块内预测模式的方案,提供
了一种高并行的块内预测方法及系统,能够解决当前像素预测方法的并发效率差,降低了芯片的像素处理效率的问题,能有效提升预测方法的并发效率,实现高并行预测,以提高芯片的像素处理效率。该高并行的块内预测方法应用于浅压缩系统的编码端,包括:获取多个原始图像宏块,并根据量化步长对多个原始图像宏块进行量化处理,得到量化数据;从多个待选的块内预测模式中确定目标预测模式,并根据目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,待选的块内预测模式包括向上预测模式、左预测模式和中值预测模式;对量化数据和残差数据进行编码处理,得到多个待选编码,待选编码包括:根据量化数据进行编码的无符号变长码和无符号定长码,根据残差数据进行编码的有符号变长码和有符号定长码;从多个待选编码中确定出使用二进制位数最少的目标编码,并根据多个目标编码得到多个宏块编码数据;将多个宏块编码数据和对应的编码信息发送至浅压缩系统的解码端,以使解码端根据编码信息对多个宏块编码数据进行反量化处理得到多个原始图像宏块;其中,发明通过根据目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理的方式,得到残差数据,使得各待预测像素点的残差数据只需要根据宏块中参考像素点的量化后像素值即可进行计算,由于编码时预测值之间没有依赖关系,故在预测过程中本发明能同时对宏块中的多个像素点进行预测处理,而在解码时,各个待选预测模式均至少能对宏块中同行或者同列的多个像素点进行还原处理,进而能有效解除大部分像素点之间存在的强依赖关系,且各预测方法均为块内预测方式,支持解码端同时对多个宏块进行解码,故可以有效免除各宏块间的依赖关系,进而使本发明可以有效提高像素预测的并发效率,在保证预测精度的同时,有效提高芯片的像素处理效率,使得本发明专利的方法可以用一半或者更少的带宽完成相同的目标规格要求,可以有效减少芯片设计的复杂度,减少芯片的管脚数量,进而减少功耗。
[0035]
第一方面,参照图1,图1是本发明实施例提供的高并行的块内预测方法应用于浅压缩系统的编码端的流程图;该高并行的块内预测方法包括但不限于有以下步骤:步骤s110,获取多个原始图像宏块,并根据量化步长对多个原始图像宏块进行量化处理,得到量化数据;步骤s120,从多个待选的块内预测模式中确定目标预测模式,并根据目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,待选的块内预测模式包括向上预测模式、左预测模式和中值预测模式;步骤s130,对量化数据和残差数据进行编码处理,得到多个待选编码,待选编码包括:根据量化数据进行编码的无符号变长码和无符号定长码,根据残差数据进行编码的有符号变长码和有符号定长码;步骤s140,从多个待选编码中确定出使用二进制位数最少的目标编码,并根据多个目标编码得到多个宏块编码数据;步骤s150,将多个宏块编码数据和对应的编码信息发送至浅压缩系统的解码端,以使解码端根据编码信息对多个宏块编码数据进行解码处理得到多个原始图像宏块。
[0036]
本发明使得浅压缩系统的编码端能根据从多个待选的块内预测模式中确定目标预测模式,并进行预测处理得到残差数据,对量化数据和残差数据进行编码处理,得到多个待选编码,从多个待选编码中确定出使用二进制位数最少的目标编码,并根据多个目标编
码得到多个宏块编码数据,以将多个宏块编码数据和对应的编码信息发送至浅压缩系统的解码端,使得解码端根据编码信息对多个宏块编码数据进行反量化处理得到多个原始图像宏块,其中,相比于现有技术中,涉及hevc参考帧的各种预测方式的选择是跟参考帧在hevc中的预测模式进行了影射的,其增加了该类方法使用的局限性,且现有技术中该类方法一般只对i帧作为参考帧时的影射进行了设计,对于参考帧为p帧或b帧或其它非帧内预测的块没有任何设计说明,还隐含了其参考帧压缩方案的块大小必须与hevc标准一致的先决条件;而本发明中的所有预测模式都是可以做到基于行或列或块的高并发的,而且跟这个参考帧的来源标准没有任何影射关系,自然也不会有块大小的影射关系,进而解决了编解码的预测复杂度不对称和标准绑定的问题,使得本发明能够有效解除大部分像素点之间存在的强依赖关系,进而提升预测方法的并发效率,实现高并行预测。
[0037]
由于本技术中的各块内预测方式均解除了大部分像素间依赖,使本技术实现了高并行预测,具体的,例如对8x8的点阵进行预测处理,如果是类似jpeg lossless里面的点到点强依赖的预测方式,则要63个硬件时钟,而本发明编码端可以实现在编码端1个时钟完成整块的预测,在解码端则只需8个时钟,其中,对于jpeg lossless编码中的capm预测模型,当前像素点的预测需要依赖于上一个像素点(参考像素点)的预测结果,因此,在计算当前像素点的预测值时,需要先计算出这个参考像素点的预测值,再根据预测模型计算当前像素点的预测值,而因为当前像素点的预测需要依赖于上一个像素点的预测结果,所以jpeg lossless编码中的像素点预测无法并行化处理,故除了初始像素点外的其他63个节点各需要一个时钟,共63个硬件时钟,而本技术编码时是根据宏块中的量化后像素值进行预测的,故只需要一个时钟,解码时至少能整行或整列的进行解码,故只需要8个时钟。
[0038]
在一些实施例中,相对于现有使用邻块的边缘数据建立预测模型的预测方式,本发明的预测方法是基于块内相邻像素进行预测并且并行度更高,能在解码端完全解除块间依赖,支持多宏块同时解压缩,对于定长码宏块或变长码宏块在宏块头都有快速定位宏块的设计,可以进一步提升并发效率,进而有效降低芯片的时钟和流水线设计要求。
[0039]
在一些实施例中,本系统的预测模式有:上预测、左预测、左上预测、右上预测、dc中值预测、以及特殊的无预测的只量化模式。其中,上预测、左上预测、右上预测统称为含向上预测的模式,而只量化模式则对应本技术目标编码为根据量化数据进行编码的无符号变长码和无符号定长码时对应的无预测模式,在编码端上面的所有预模式都可以以块为单位同时算出预测数据信息,而在解码端除了dc中值预测以及特殊的无预测的只量化模式依然可以以块为单位同时算出预测数据信息外,其它的模式(向上预测和左预测)的最少预测信息还原单位为一行或一列,因为预测信息要加上残差才可以还原这一行或一列的数据,再用这一行或一列的数据作为下一行或一列数据的预测信息,该设计在提高并行度的同时,可以减轻解码端的计算压力,减少解码端预测信息和还原数据的耦合度,利于提高解码端的数据处理速度。
[0040]
在一些实施例中,本技术可以通过分别根据上预测、左预测、左上预测、右上预测和dc中值预得到各自对应的待选编码,将待选编码中使用二进制位数最少的编码对应的预测模式确定为目标预测模式,以提高压缩效果。
[0041]
在一些实施例中,特殊的无预测的只量化模式即为:目标编码为根据量化数据进行编码的无符号变长码或无符号定长码的情况,在只量化模式生成的目标编码的二进制位
数小于目标预测模式对应的二进制位数的情况下,则采用只量化模式进行后续编码过程,反之,则采用目标预测模式进行后续编码过程。
[0042]
在一些实施例中,本技术通过生成包括根据量化数据进行编码的无符号变长码和无符号定长码,根据残差数据进行编码的有符号变长码和有符号定长码在内的四种待选编码,并从多个待选编码中确定出使用二进制位数最少的目标编码的方式,进一步提高数据压缩效果。
[0043]
参照图2,图2是图1中步骤s120的具体实现过程示意图;在一些实施例中,在目标预测模式为向上预测模式或者左预测模式的情况下,宏块编码数据包括初始像素点的量化数据和多个待预测像素点对应的残差数据,根据目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,包括但不限于有以下步骤:步骤s210,根据目标预测模式和初始像素点计算出多个待预测像素点的预测值;步骤s220,根据多个待预测像素点的量化后像素值和预测值的差值得到残差数据。
[0044]
参照图3,图3是本发明实施例提供的向上预测模式的首行预测方式的示意图;在一些实施例中,在目标预测模式为向上预测模式的情况下,根据目标预测模式和初始像素点计算出多个待预测像素点的预测值,包括:对与初始像素点同行,且位于初始像素点右侧的各个首行待预测像素点进行预测,以使各个首行待预测像素点根据左侧相邻的像素点的量化后像素值计算出预测值;其中,对与初始像素点同行,且位于初始像素点右侧的各个首行待预测像素点进行预测,以使各个首行待预测像素点根据左侧相邻的像素点的量化后像素值计算出预测值,即为如图3向上预测模式的首行预测方式。
[0045]
在进行完首行预测之后,对位于初始像素点所在行下方的各个次行待预测像素点进行预测,以计算出预测值,其中,向上预测包括上预测、左上预测、右上预测。
[0046]
参照图4,图4是本发明实施例提供的上预测模式的其余行预测方式的示意图,其中,通过对位于初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个次行待预测像素点根据上方相邻的像素点的量化后像素值计算出预测值,实现其余行预测,其中,各个次行待预测像素点即为除首行(最上方的第一行)外其余行的预测点。
[0047]
参照图5,图5是本发明实施例提供的左上预测模式的其余行预测方式的示意图,其中,通过对位于初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个次行待预测像素点中的次行首列待预测像素点根据上方相邻的像素点的量化后数值计算出预测值;以使各个次行待预测像素点中的次行次列待预测像素点根据左上方相邻的像素点的量化后数值计算出预测值,实现其余行预测,其中,该实施例中的次行首列待预测像素点即为除首行外,且在首列(最左侧的第一列)的预测点,次行次列待预测像素点即为除首行和首列外的其余行和其余列的预测点。
[0048]
参照图6,图6是本发明实施例提供的右上预测模式的其余行预测方式的示意图,其中,通过对位于初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个次行待预测像素点中的次行末列待预测像素点根据上方相邻的像素点的量化后数值计算出预测值;以使各个次行待预测像素点中的次行次列待预测像素点根据右上方相邻的像素点的量化后数值计算出预测值,实现其余行预测,其中,该实施例中的次行末列待预测像素点
即为除首行外,且在末列(最右侧的第一列)的预测点,次行次列待预测像素点即为除首行和末列外的其余行和其余列的预测点。
[0049]
通过上述向上预测方法可以提高并行度,减轻解码端的计算压力,从而提高解码端的数据处理速度,此外,各个待选预测模式能对宏块中同行或同列的多个像素点进行还原处理,能有效解除大部分像素点之间存在的强依赖关系,支持解码端同时对多个宏块进行解码,从而免除各宏块间的依赖关系,进一步提高像素预测的并发效率,使本发明具有提高解码速度和并发效率的优点。
[0050]
在一些实施例中,本技术对单个宏块中的各个像素点进行扫描的方式包括水平扫描和垂直扫描。
[0051]
参照图7,图7是本发明实施例提供的左预测方式的首列预测方式的示意图;在一些实施例中,通过对与初始像素点同列,且位于初始像素点下方的各个首列待预测像素点进行预测,以使各个首列待预测像素点根据上方相邻的像素点的量化后像素值计算出预测值,实现首列预测,其中,该实施例中的首列待预测像素点即在首列(最左侧的第一列)的预测点。
[0052]
参照图8,图8是本发明实施例提供的左预测方式的其余列预测方式的示意图;在一些实施例中,对位于初始像素点所在列右侧的各个次列待预测像素点进行预测,以使各个次列待预测像素点根据左侧相邻的像素点的量化后像素值计算出预测值,实现其余行预测,其中,该实施例中的次列待预测像素点为除首列(最左侧的第一列)外的其余列的预测点。
[0053]
通过上述左预测方法可以有效提高并行度,免除各宏块间的依赖关系,进一步提高像素预测的并发效率。
[0054]
参照图9,图9是图1中步骤s120的另一具体实现过程示意图;在一些实施例中,在目标预测模式为中值预测模式的情况下,宏块编码数据包括像素中值的量化数据和多个待预测像素点的残差数据,根据目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,包括但不限于有以下步骤:步骤s910,根据图像像素位宽确定像素中值,然后量化像素中值得到量化后的中值编码值;步骤s920,将量化后中值编码值确定宏块内所有像素点的预测值;步骤s930,根据宏块内所有像素点的量化后像素值和预测值的差值得到残差数据。
[0055]
在一些实施例中,通过对当前图像像素位宽确定像素中值,然后应用量化公式求出dc中值(中值编码值)作为统一的预测点,即作为为各个待预测像素点的预测值,进而根据各个待预测像素点的量化后像素值和预测值的差值求出所有点的残差,同时,由于宏块编码数据包括像素中值的量化数据,故在解码端解码时可以根据像素中值的量化数据和残差数据对同一宏块中的各像素点进行还原处理。
[0056]
可以想到的是,中值预测模式和上述只量化模式在解码时,均可同时对一个宏块中的各个像素点进行还原或反量化,即与传统的像素和块间预测技术相比,本发明通过上述预测模式的综合设计,解除了像素间的预测依赖和块间的预测依赖,克服了现有技术中预测时必须等本行或者本列的上一个像素点还原了才可以得到当前点预测值的问题,使得
并行度大幅提升,显著提升了芯片设计每时钟的像素处理能力,降低了芯片设计的时钟要求。
[0057]
在一些实施例中,目标编码的定长码方式的二进制位数为m;其中,m为量化数据无符号定长码使用位数或者各个待选的块内预测模式中残差数据的有符号定长码最小使用位数。
[0058]
具体的,本发明通过最少无符号位数方法minunsignedbit(无符号数)得到无符号二进制数的最少位数m,通过最少有符号位数方法minsignedbit(残差中有符号数的绝对值最大值m,m对应的残差的正负符号情况)得到有符号二进制数的最少位数m。
[0059]
该方法包括:首先minunsignedbit(无符号数)中如果输入无符号数为0,最少无符号位数方法返回0,无符号数最少位数m等于0;如果输入无符号数非0,通过逆向位扫描方法bitscanreverse将无符号数作为非零无符号数输入,返回二进制数中与高位全零区域相邻的,最高位为1的位置对应的位映射(bit index)数值x,最大无符号位数方法返回x+1,x+1即为输入的无符号数的最少位数m。
[0060]
同时minsignedbit(残差中有符号数的绝对值最大值m,m对应的残差的正负符号情况)中通过minunsignedbit(m)求出m的最小位数n;当n等于0时,返回n;当n不等于0时,如果m对应的残差只有正数或者只有负数,且m等于2的n-1次幂2
n-1
(也就是1左移n-1个二进制位)时,返回n; 当n不等于0时,如果m对应的残差只有正数或者只有负数,且m不等于2的n-1次幂2
n-1
(也就是1左移n-1个二进制位)时,返回n + 1;当n不等于0时,如果m对应的残差同时有正数和负数时,返回n+1; minsignedbit(残差中有符号数的绝对值最大值m,m对应的残差的正负符号情况)方法的返回值就是有符号数的最少位数m。
[0061]
在一些实施例中,中值预测模式残差数据包括宏块内所有像素点的残差,宏块编码数据传输时所有残差以有符号变长码或有符号定长码的方式用水平序(水平扫描)进行传输,定长码表序号(各残差数据的最大二进制位数)以所有像素点的残差中的最大绝对值m应用上述minsignedbit (m,m对应的残差有符号数的正负号情况)求出确定。在一些实施例中,纯量化模式即对量化后的数据直接传输,用无符号变长码方式或无符号定长码方式以水平扫描顺序进行传输。令当前块的所有数据中的最大数为m,则当前块无符号定长码的最大位长等于 minunsignedbit(m)。
[0062]
参照图10,图10是图1中步骤s140之后的具体实现过程示意图;在一些实施例中,在得到多个宏块编码数据之后,还执行以下步骤:步骤s1010,通过视频缓冲区验证器对宏块编码数据进行溢出判断处理;步骤s1020,在视频缓冲区验证器溢出的情况下,提高量化步长,并根据量化步长对原始图像宏块进行量化处理、预测处理和编码处理,确定目标编码,以重新生成宏块编码数据。
[0063]
在一些实施例中,由于本技术全系统的图象质量下降由是由量化产生的,而量化是否产生图象质量下降是由缓冲区模型决定的,也就是由码率控制决定故本发明通过在vbv视频缓冲区验证器溢出的情况下,增加调整量化步长(qp)的方式,对编码数据进行调整,尽量保证图象传输质量。
[0064]
在一些实施例中,最大编码量化值quantmaxcode的计算公式如下:
quantmaxcode = (m * quantscale[qp%4])》》(14 + qp/4);其中,m=maxbitdeptcode(当前图像像素位宽),为当前图象像素位宽下的最大编码量化值,也就是图像像素位宽的码值全部为1,qp为当前选定的块量化系数(量化步长)。quantscale[4] = {16384,13777,11585,9742}为量化放大系数。
[0065]
在一些实施例中,量化后的最大位长maxquantbit=minunsignedbit(最大编码量化值)。
[0066]
具体的,向上预测模式对应的宏块编码数据传输时,以量化后的最大位长maxquantbit传输第一个像素(位于左上角位置的初始像素点),其它残差以有符号变长码或有符号定长码的方式用水平序进行传输;定长码表的序号(各残差数据的最大二进制位数)以除了第一个像素外的其它所有像素残差的最大绝对值m应用 minsignedbit (m,m对应的残差有符号数的正负号情况)求出确定。
[0067]
具体的,向左预测模式对应的宏块编码数据传输时以量化后的最大位长maxquantbit的位长传输第一个像素,其它残差以有符号变长码或有符号定长码的方式用垂直扫描顺序进行传输。定长码表序号以除了第一个像素外的其它所有像素残差的最大绝对值m应用 minsignedbit (m,m对应的残差有符号数的正负号情况)求出确定。
[0068]
其中,通过上述实施例中对有符号变长码、有符号定长码、无符号变长码和无符号定长码的位长进行限制,可以使本发明可用较低的主频和硬件资源,实现透明质量的2-3倍浅压缩。
[0069]
第二方面,参照图11,图11是本发明实施例提供的高并行的块内预测方法应用于浅压缩系统的解码端的流程图,应用于浅压缩系统的解码端,方法至少包括以下步骤:步骤s1110,接收浅压缩系统的编码端发送的多个宏块编码数据和对应的编码信息,并根据编码信息确定目标编码;步骤s1120,在目标编码为无符号变长码或者无符号定长码的情况下,对多个宏块编码数据中的量化数据进行反量化处理得到多个原始图像宏块;步骤s1130,在目标编码为有符号变长码或者有符号定长码的情况下,根据编码信息中的目标预测模式对多个宏块编码数据中的残差数据进行还原处理,得到多个量化数据,并对多个量化数据进行反量化处理得到多个原始图像宏块;其中,目标预测模式由编码端从多个待选的块内预测模式中确定,待选的块内预测模式包括向上预测模式、中值预测模式和左预测模式。
[0070]
在一些实施例中,编码信息由编码端根据宏块编码数据对应的目标预测模式、目标编码、qp值和宏块编码数据的长度信息生成,故使得解码端可以根据编码信息确定宏块编码数据对应的目标预测模式、目标编码、qp值和宏块编码数据的长度信息,以进行后续的还原处理、反量化处理、确定宏块数据地址处理。
[0071]
参照图12,图12本发明实施例提供的对残差数据进行还原处理的具体实现过程示意图;在一些实施例中,根据编码信息中的目标预测模式对多个宏块编码数据中的残差数据进行还原处理,得到多个量化数据,至少包括以下步骤:步骤s1210,在目标预测模式为向上预测模式或者左预测模式的情况下,从宏块编码数据中获取初始像素点的量化数据;根据初始像素点的量化数据和残差数据,对同一行或者同一列中的多个待预测像素点进行还原处理,得到多个待预测像素点的量化数据;
步骤s1220,或者,在目标预测模式为中值预测模式的情况下,从宏块编码数据中获取像素中值的量化数据;根据像素中值的量化数据和残差数据,对同一宏块的所有像素点进行还原处理,得到各个待预测像素点对应的量化数据。
[0072]
其中,可以想到的是在解码端解码时,向上预测模式或者左预测模式因为预测信息要加上残差才可以还原这一行或一列的数据,再用这一行或一列的数据作为下一行或一列数据的预测信息,故该类模式的预测信息还原单位为一行或一列;而中值预测模式以及特殊的无预测的只量化模式依然可以以块为单位同时算出预测数据信息,进而能够有效解除大部分像素点之间存在的强依赖关系,并解除各宏块之间存在块间依赖,进而提升预测方法的并发效率,实现高并行预测。
[0073]
在一些实施例中,宏块编码数据包括第一宏块数据和第二宏块数据,第一宏块数据和第二宏块数据均携带字节长度信息,对多个宏块编码数据中的量化数据进行反量化处理得到多个原始图像宏块,包括;在对第一宏块数据中的量化数据进行反量化处理时,根据第一宏块数据对应的编码信息确定第二宏块数据的数据地址,并根据数据地址对第二宏块数据中的量化数据进行反量化处理,得到多个原始图像宏块。
[0074]
在一些实施例中,宏块编码数据包括第三宏块数据和第四宏块数据,第三宏块数据和第四宏块数据均携带字节长度信息,根据编码信息中的目标预测模式对多个宏块编码数据中的残差数据进行还原处理,得到多个量化数据,方法包括:在对第三宏块数据中的残差数据进行还原处理时,根据第三宏块数据对应的编码信息确定第四宏块数据的数据地址,并根据数据地址对第四宏块数据中的残差数据进行还原处理,得到多个量化数据。
[0075]
在一些实施例中,本技术在解码端完全解除块间依赖,支持多宏块同时解压缩的同时,对于定长码宏块或变长码宏块在宏块头都有快速定位宏块的设计其中,定长码宏块或变长码宏块(块压缩数据)包括宏块头(对应编码信息)和像素压缩数据(对应宏块编码数据),使得本技术可以进一步提升并发效率。
[0076]
具体的,块压缩数据的结构如下:预测模式|是否定长码|定长码长度指示值|qp值|像素压缩数据|

|像素压缩数据;在传输设计中的宏块头部分会传输下面的信息:预测模式|是否定长码|定长码长度指示值|qp值;其中定长码传输:预测模式|是否定长码|定长码长度指示值|qp值;其中,定长码长度指示值即为上述定长码宏块头中的字节长度信息;变长码传输:预测模式|是否定长码|qp值|变长码像素压缩数据的字节长度(用宏块头信息中剩余位传输,可选快速定位设计);其中,变长码像素压缩数据的字节长度即为上述变长码宏块头中的字节长度信息;其中,对上述各字段的说明如下:qp值为不同的像素位宽对应不同的最大qp值;最大qp值maxqp的计算公式如下:在像素位宽为偶数时,maxqp = 4 * 像素位宽 / 2;
在像素位宽为奇数时,maxqp = 4 * (像素位宽 + 1) / 2;qp字段的位长度等于minunsignedbit(maxqp);例如,像素位宽==10的时候,maxqp = 20,相应的本字段长度是5;像素位宽==8的时候,maxqp = 16,相应的本字段长度是5。
[0077]
预测模式位长度为3bit,具体设计如下,该字段取值为0时对应上预测;该字段取值为1时对应左预测;该字段取值为2时对应左上预测;该字段取值为3时对应右上预测;该字段取值为4时对应dc中值预测;该字段取值为5时对应只量化模式;该字段取值为6、7时保留。
[0078]
是否定长码字段位长度为1bit;该字段取值为0时对应变长码,在预测模式为只量化模式时是无符号变长码,其它为有符号变长码;该字段取值为1对应定长码,在预测模式为只量化模式时是无符号定长码,其它为有符号定长码。
[0079]
定长码指示值即为上述定长码中的字节长度信息,位长度为(4bit + 1bit);定长码长度指示值由两部分组成,其中4个bit是定长码指示值的数值大小,无符号定长码时等于minunsignedbit (块中所有象素的传输值的绝对值的最大值),有符号定长码时等于minsignedbit (块中所有象素的传输值的绝对值的最大值m,m对应的残差有符号数的正负号情况),加上一个bit的非对称值域映射指示,这个bit是一个动态bit,只在定长码传输有符号数时存在,只有在m等于2的非负指数幂2
n-1
并且m对应的残差有符号数只有正数据,该字段取值为1,指示有符号定长码是取相反数后截断的传输方式,其它该字段取值为0,指示有符号定长码是常规补码截断传输方式;如果定长码指示值数值大小为0,表示所有要传输的数据都为0,也就是不需要传输任何定长码数据,同时也不需要传输一个bit的非对称值域映射指示。
[0080]
即当编码为只量化模式时,定长码长度为定长码指示值,反之,定长码长度则为定长码指示值 + 非对称值域映指示;非对称值域映射值为0,表达的是有符号定长码是常规补码截断传输方式;非对称值域映射值为1,表达的是有符号定长码是取相反数后截断的传输方式。
[0081]
在一些实施例中,定长码除固定字节长度的宏块头部信息外,其像素压缩数据是可以直接计算出来的,也就是不需要传输压缩数据的字节长度信息。在解码端,通过即为上述定长码宏块头中的字节长度信息,可以直接定位到当前宏块的下一个宏块的首字节;变长码宏块头部信息也是固定长度的,里面包含了可选的变长码像素压缩数据的字节长度(对应上述变长码宏块头中的字节长度信息),同样可以在解码端直接定位到当前宏块的下一个宏块的首字节;通过上述对于定长码宏块或变长码宏块在宏块头都有快速定位宏块的设计方案,使本发明能近一步提升预测方法的并发效率,实现高并行预测。
[0082]
参照图13,图13是本发明实施例提供的示例一的具体实现过程示意图;在一些实施例中,编码端执行以下步骤:编码端对原始图像数据进行量化,获得量化后的数据块;无符号的变长码输出至中间缓冲,判断无符号的变长码和无符号的定长码哪个更优,选择无符号最优输出;通过预测获得残差,有符号的变长码输出至中间缓冲,判断有符号的变长码和有符号的定长码哪个更优,选择有符号最优输出;判断无符号最优和有符号最优的bit,选择用bit最少的输出;判断vbv是否有上溢出,若有则向上增加调整量化qp,重新进行量化;若无则输出本块压缩数据,通过上述步骤,使得编码端对原始图像数据进行量化,进行
预测得到残差,通过无损的定长码或变长码进行传输,且传输的数据可以是直接的量化数据或预测得到的残差,无损传输由数据缓冲区模型来选择最优方式,同时进行码率控制。
[0083]
参照图14,图14是本发明实施例提供的示例二的具体实现过程示意图;在一些实施例中,解码端执行以下步骤:判断本块压缩数据中是否有预测;若有预测则按预测方式还原有符号定长码或有符号变长码;若无预测则还原无符号定长码或无符号变长码;对直接量化数据或通过残差还原的量化数据进行反量化;输出yuv(原始图像宏块);通过上述步骤,使得解码端通过无损的定长码或变长码还原直接的量化数据或预测得到的残差,用无损的残差数据还原量化数据,对直接量化数据或通过残差还原的量化数据进行反量化,获得有损或无损的原始图像数据。
[0084]
第三方面,本发明提供了一种浅压缩系统,包括编码端和解码端;编码端用于获取多个原始图像宏块,并根据量化步长对多个原始图像宏块进行量化处理,得到量化数据;从多个待选的块内预测模式中确定目标预测模式,并根据目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,待选的块内预测模式包括向上预测模式、左预测模式和中值预测模式;对量化数据和残差数据进行编码处理,得到多个待选编码,待选编码包括:根据量化数据进行编码的无符号变长码和无符号定长码,根据残差数据进行编码的有符号变长码和有符号定长码;从多个待选编码中确定出使用二进制位数最少的目标编码,并根据多个目标编码得到多个宏块编码数据;将多个宏块编码数据和对应的编码信息发送至解码端;解码端用于接收编码端发送的多个宏块编码数据和对应的编码信息,并根据编码信息确定目标编码;在目标编码为无符号变长码或者无符号定长码的情况下,对多个宏块编码数据中的量化数据进行反量化处理得到多个原始图像宏块;在目标编码为有符号变长码或者有符号定长码的情况下,根据编码信息中的目标预测模式对多个宏块编码数据中的残差数据进行还原处理,得到多个量化数据,并对多个量化数据进行反量化处理得到多个原始图像宏块。
[0085]
在一些实施例中,解码端包括多个解码硬件,多个解码硬件用于分别处理对多个宏块编码数据进行解码处理,以得到多个原始图像宏块,可以想到的是,在解码端可以同时用数份相同的硬件同时解码多个宏块。从而可以提高解码端的并发计算效率。
[0086]
参照图15,图15是本发明实施例提供的超高清序列直接编解码压缩测试的结果示意图,其中,该图为使用22个超高清序列直接编解码压缩测试的结果,序列22为随机噪声,通过上表可以看出,本发明对无法预测的随机噪声,可以很好地收敛并维持高质量,且本发明对其余序列部分达到完全无损(40%的序列),其余则达到人眼无法分辨的误差精度(》50db)。
[0087]
在一些实施例中,本发明无论是使用在参考帧压缩还是视频接口压缩,很大可能会面临多重压缩的使用场景,下面是本发明与更高压缩率的算法串联编解码时的效果:表(1)
其中,表(1)为本发明与20-30倍压缩串联的效果对比表;表(2)其中,表(2)为本发明与80-120倍压缩串联的效果对比表;根据表(1)和表(2)可以看到,本发明在和别的压缩编解码器串联时,对质量或码率带来的影响极小(码率影响《=0.7%),基本可以忽略,达到透明的串联效果,即本发明相对于现有技术来说压缩效果更好。
[0088]
综上,本发明至少具有通过块内预测模型解除大部分像素间依赖,实现了高并行预测,且在解码端完全解除块间依赖,支持多宏块同时解压缩,使得并行度大幅提升,显著提升了芯片设计每时钟的像素处理能力,降低了芯片设计的时钟要求,且对于定长码宏块或变长码宏块在宏块头都有快速定位宏块的设计,可以进一步提升并发效率的效果,以克服现有技术基本上都存在的较高的像素依赖和块间依赖,无法达到类似本发明的并行处理度效率的技术问题。
[0089]
第三方面,参照图16,图16是本发明实施例提供的一种电子设备的结构示意图。该电子设备1600包括存储器1610、处理器1620及存储在存储器1610上并可在处理器1620上运行的计算机程序,处理器1620执行计算机程序时实现如上述实施例中的高并行的块内预测方法。
[0090]
存储器1610作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本发明上述实施例中的高并行的块内预测方法。处理器1620通过运行存储在存储器1610中的非暂态软件程序以及指令,从而实现上述本发明上述实施例中的高并行的块内预测方法。
[0091]
存储器1610可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述实施例中的高并行的块内预测方法所需的数据等。此外,存储器1610可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。需要说明的是,存储器1610可选包括相对于处理器1620远程设置的存储器,这些远程存储器可以通过网络连接至该终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0092]
实现上述实施例中的高并行的块内预测方法所需的非暂态软件程序以及指令存储在存储器中,当被一个或者多个处理器执行时,执行上述实施例中的高并行的块内预测方法,例如,执行以上描述的图1中的方法步骤s110至步骤s150、图2中的方法步骤s210至步骤s220、图9中的方法步骤s910至步骤s930、图10中的方法步骤s1010至步骤s1020、图11中的方法步骤s1110至步骤s1130、图12中的方法步骤s1210至步骤s1220。
[0093]
第四方面,本发明还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使计算机执行如上述实施例中的高并行的块
内预测方法,例如,执行以上描述的图1中的方法步骤s110至步骤s150、图2中的方法步骤s210至步骤s220、图9中的方法步骤s910至步骤s930、图10中的方法步骤s1010至步骤s1020、图11中的方法步骤s1110至步骤s1130、图12中的方法步骤s1210至步骤s1220。
[0094]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0095]
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
[0096]
需要说明的是,服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
[0097]
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

技术特征:
1.一种高并行的块内预测方法,应用于浅压缩系统的编码端,所述方法包括:获取多个原始图像宏块,并根据量化步长对多个所述原始图像宏块进行量化处理,得到量化数据;从多个待选的块内预测模式中确定目标预测模式,并根据所述目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,所述待选的块内预测模式包括向上预测模式、左预测模式和中值预测模式;对所述量化数据和所述残差数据进行编码处理,得到多个待选编码,所述待选编码包括:根据所述量化数据进行编码的无符号变长码和无符号定长码,根据所述残差数据进行编码的有符号变长码和有符号定长码;从多个所述待选编码中确定出使用二进制位数最少的目标编码,并根据多个所述目标编码得到多个宏块编码数据;将多个所述宏块编码数据和对应的编码信息发送至所述浅压缩系统的解码端,以使所述解码端根据所述编码信息对多个所述宏块编码数据进行解码处理得到多个所述原始图像宏块。2.根据权利要求1所述的高并行的块内预测方法,其特征在于,在所述目标预测模式为所述向上预测模式或者所述左预测模式的情况下,所述宏块编码数据包括初始像素点的量化数据和多个待预测像素点对应的残差数据,所述根据所述目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,包括:根据所述目标预测模式和所述初始像素点计算出多个所述待预测像素点的预测值;根据多个所述待预测像素点的量化后像素值和所述预测值的差值得到所述残差数据。3.根据权利要求2所述的高并行的块内预测方法,其特征在于,在所述目标预测模式为所述向上预测模式的情况下,所述根据所述目标预测模式和所述初始像素点计算出多个所述待预测像素点的预测值,包括:对与所述初始像素点同行,且位于所述初始像素点右侧的各个首行待预测像素点进行预测,以使各个所述首行待预测像素点根据左侧相邻的像素点的量化后像素值计算出所述预测值;对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以计算出所述预测值。4.根据权利要求3所述的高并行的块内预测方法,其特征在于,所述对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以计算出所述预测值,包括:对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个所述次行待预测像素点根据上方相邻的像素点的量化后像素值计算出所述预测值;或者,对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个所述次行待预测像素点中的次行首列待预测像素点根据上方相邻的像素点的量化后像素值计算出所述预测值;以使各个所述次行待预测像素点中的次行次列待预测像素点根据左上方相邻的像素点的量化后像素值计算出所述预测值;或者,对位于所述初始像素点所在行下方的各个次行待预测像素点进行预测,以使各个所述次行待预测像素点中的次行末列待预测像素点根据上方相邻的像素点的量化后像素值计算出所述预测值;以使各个所述次行待预测像素点中的次行次列待预测像素点根据
右上方相邻的像素点的量化后像素值计算出所述预测值。5.根据权利要求2所述的高并行的块内预测方法,其特征在于,在所述目标预测模式为所述左预测模式的情况下,所述根据所述目标预测模式和所述初始像素点计算出多个所述待预测像素点的预测值,包括:对与所述初始像素点同列,且位于所述初始像素点下方的各个首列待预测像素点进行预测,以使各个所述首列待预测像素点根据上方相邻的像素点的量化后像素值计算出所述预测值;对位于所述初始像素点所在列右侧的各个次列待预测像素点进行预测,以使各个所述次列待预测像素点根据左侧相邻的像素点的量化后像素值计算出所述预测值。6.根据权利要求1所述的高并行的块内预测方法,其特征在于,在所述目标预测模式为所述中值预测模式的情况下,所述宏块编码数据包括像素中值的量化数据和宏块内所有像素点的残差数据,根据所述目标预测模式和所述像素中值的量化数据对宏块内所有像素点的量化后数据进行预测处理,得到残差数据,包括:根据图像像素位宽确定像素中值,然后量化所述像素中值得到量化后的中值编码值;将所述量化后的中值编码值确定为宏块内所有像素点的预测值;根据所述宏块内所有像素点的量化后像素值和所述预测值的差值得到所述残差数据。7.根据权利要求1所述的高并行的块内预测方法,其特征在于,所述目标编码的定长码编码方式的最小二进制位数为m;其中,m为所述量化数据的无符号定长码使用位数或者各个待选的块内预测模式中所述残差数据的有符号定长码最小使用位数。8.根据权利要求1所述的高并行的块内预测方法,其特征在于,在得到多个所述宏块编码数据之后,还执行以下步骤:通过视频缓冲区验证器对所述宏块编码数据进行溢出判断处理;在所述视频缓冲区验证器溢出的情况下,提高所述量化步长,并根据所述量化步长对所述原始图像宏块进行量化处理、预测处理和编码处理,确定所述目标编码,以重新生成所述宏块编码数据。9.一种高并行的块内预测方法,应用于浅压缩系统的解码端,所述方法包括:接收所述浅压缩系统的编码端发送的多个宏块编码数据和对应的编码信息,并根据所述编码信息确定目标编码;在所述目标编码为无符号变长码或者无符号定长码的情况下,对多个所述宏块编码数据中的量化数据进行反量化处理得到多个原始图像宏块;在所述目标编码为有符号变长码或者有符号定长码的情况下,根据所述编码信息中的目标预测模式对多个所述宏块编码数据中的残差数据进行还原处理,得到多个所述量化数据,并对多个所述量化数据进行反量化处理得到多个原始图像宏块;其中,所述目标预测模式由所述编码端从多个待选的块内预测模式中确定,所述待选的块内预测模式包括向上预测模式、中值预测模式和左预测模式。10.根据权利要求9所述的高并行的块内预测方法,其特征在于,所述根据所述编码信息中的目标预测模式对多个所述宏块编码数据中的所述残差数据进行还原处理,得到多个所述量化数据,包括:在所述目标预测模式为向上预测模式或者左预测模式的情况下,从所述宏块编码数据
中获取初始像素点的量化数据;根据所述初始像素点的量化数据和所述残差数据,对同一行或者同一列中的多个待预测像素点进行还原处理,得到多个所述待预测像素点的量化数据;或者,在所述目标预测模式为中值预测模式的情况下,从所述宏块编码数据中获取像素中值的量化数据;根据所述像素中值的量化数据和所述残差数据,对同一宏块的所有像素点进行还原处理,得到各个所述待预测像素点对应的量化数据。11.根据权利要求9所述的高并行的块内预测方法,其特征在于,所述宏块编码数据包括第一宏块数据和第二宏块数据,所述第一宏块数据和所述第二宏块数据均携带字节长度信息,所述对多个所述宏块编码数据中的量化数据进行反量化处理得到多个原始图像宏块,包括;在对所述第一宏块数据中的量化数据进行反量化处理时,根据所述第一宏块数据对应的所述编码信息确定所述第二宏块数据的数据地址,并根据所述数据地址对所述第二宏块数据中的量化数据进行反量化处理,得到多个原始图像宏块。12.根据权利要求9所述的高并行的块内预测方法,其特征在于,所述宏块编码数据包括第三宏块数据和第四宏块数据,所述第三宏块数据和所述第四宏块数据均携带字节长度信息,所述根据所述编码信息中的目标预测模式对多个所述宏块编码数据中的所述残差数据进行还原处理,得到多个所述量化数据,所述方法包括:在对所述第三宏块数据中的残差数据进行还原处理时,根据所述第三宏块数据对应的所述编码信息确定所述第四宏块数据的数据地址,并根据所述数据地址对所述第四宏块数据中的残差数据进行还原处理,得到多个所述量化数据。13.一种浅压缩系统,其特征在于,包括编码端和解码端;所述编码端用于获取多个原始图像宏块,并根据量化步长对多个所述原始图像宏块进行量化处理,得到量化数据;从多个待选的块内预测模式中确定目标预测模式,并根据所述目标预测模式和各个像素点的量化数据对应的量化后像素值同时对多个像素点进行预测处理,得到残差数据,所述待选的块内预测模式包括向上预测模式、左预测模式和中值预测模式;对所述量化数据和所述残差数据进行编码处理,得到多个待选编码,所述待选编码包括:根据所述量化数据进行编码的无符号变长码和无符号定长码,根据所述残差数据进行编码的有符号变长码和有符号定长码;从多个所述待选编码中确定出使用二进制位数最少的目标编码,并根据多个所述目标编码得到多个宏块编码数据;将多个所述宏块编码数据和对应的编码信息发送至所述解码端;所述解码端用于接收所述编码端发送的多个所述宏块编码数据和对应的所述编码信息,并根据所述编码信息确定所述目标编码;在所述目标编码为所述无符号变长码或者所述无符号定长码的情况下,对多个所述宏块编码数据中的所述量化数据进行反量化处理得到多个所述原始图像宏块;在所述目标编码为所述有符号变长码或者所述有符号定长码的情况下,根据所述编码信息中的目标预测模式对多个所述宏块编码数据中的所述残差数据进行还原处理,得到多个所述量化数据,并对多个所述量化数据进行反量化处理得到多个所述原始图像宏块。14.根据权利要求13所述的浅压缩系统,其特征在于,所述解码端包括多个解码硬件,多个所述解码硬件用于分别处理对多个所述宏块编码数据进行解码处理,以得到多个所述
原始图像宏块。15.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至8中任意一项所述的应用于浅压缩系统的编码端的高并行的块内预测方法,并实现如权利要求9至12中任意一项所述的应用于浅压缩系统的解码端的高并行的块内预测方法。16.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1至8中任意一项所述的应用于浅压缩系统的编码端的高并行的块内预测方法,并实现如权利要求9至12中任意一项所述的应用于浅压缩系统的解码端的高并行的块内预测方法。

技术总结
本发明提供了一种高并行的块内预测方法及系统,方法应用于浅压缩系统,包括:编码端根据从多个待选的块内预测模式中确定目标预测模式,并进行预测处理得到残差数据,对量化数据和残差数据进行编码处理,得到多个待选编码,从多个待选编码中确定出使用二进制位数最少的目标编码,并根据多个目标编码得到多个宏块编码数据后将多个宏块编码数据和对应的编码信息发送至浅压缩系统的解码端,使得解码端根据编码信息对多个宏块编码数据进行反量化处理得到多个原始图像宏块,其中,本发明能够有效解除大部分像素点之间存在的强依赖关系,并解除各宏块之间存在的块间依赖,进而提升预测方法的并发效率,实现高并行预测。实现高并行预测。实现高并行预测。


技术研发人员:李健恒 曾志华
受保护的技术使用者:广州柯维新数码科技有限公司
技术研发日:2023.06.28
技术公布日:2023/8/1
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐