CN115802057A - 数据处理方法、可读介质和电子设备 - Google Patents
数据处理方法、可读介质和电子设备 Download PDFInfo
- Publication number
- CN115802057A CN115802057A CN202211097397.1A CN202211097397A CN115802057A CN 115802057 A CN115802057 A CN 115802057A CN 202211097397 A CN202211097397 A CN 202211097397A CN 115802057 A CN115802057 A CN 115802057A
- Authority
- CN
- China
- Prior art keywords
- block
- information
- prediction block
- transform
- transformation
- 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.)
- Pending
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请涉及计算机技术领域,公开了一种数据处理方法、可读介质和电子设备。具体方法包括:获取视频压缩数据,视频压缩数据中包括第一预测块的头部信息,其中,第一预测块是采用递归划分方式划分为多个变换块的预测块;基于第一预测块的头部信息,获得各变换块的划分信息,并通过预设存储格式存储各变换块的划分信息,其中,变换块的划分信息包括变换块的大小信息和变换块中起始残差点在第一预测块中的位置信息;基于各变换块的划分信息,获得第一预测块的残差信息。上述数据处理方法节省了较大的存储空间,节省了电子设备用于计算变换块的起始残差点的位置信息的时间和硬件资源,有利于提高解码速度。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种数据处理方法、可读介质和电子设备。
背景技术
AV1是2018年发布的新一代的采用混合编码技术的视频压缩标准,AV1编码的基本技术流程,就是把输入的视频数据按照不同的帧,划分成多个预测块后,以预测块为单位采用不同的预测模式,再通过变换、量化和熵编码,最后形成压缩数据。AV1解码的基本技术流程,则是根据接收的压缩数据,解码预测块的划分模式,再针对不同的预测块分别进行解码,进一步获得每帧图像的视频数据,最后获得总视频数据。
AV1中的块划分技术是AV1编码技术中,把每帧图像中的预测块划分成多个变换块的技术。其中,视频数据的每一帧图像中包含若干个128×128大小的图像块,每一个图像块可以根据不同的预测模式,划分为若干个预测块;每一个预测块又可以进一步划分成更小的变换块,其中,预测块的最小颗粒度的大小为4×4,即预测块中的变换块的大小必须大于等于最小颗粒度的大小,且每一个变换块包括大于等于1个最小颗粒度。根据AV1协议的规定,在解码过程中,块参数被用来标识预测块的划分方式,把块参数赋值给预测块中的最小颗粒度,块参数为范围在[0,18]的任意一个自然数。例如,如果变换块的大小为4×4,则可以设置变换块的块参数为0,块参数等于0用来标识大小为4×4的变换块,即变换块中的1个最小颗粒度的块参数等于0;如果变换块的大小为8×8,则可以设置变换块的块参数为1,块参数等于1用来标识大小为8×8的变换块,即变换块中的2个最小颗粒度的块参数都等于1,等等。同一个变换块中的最小颗粒度的块参数相等。
最大的预测块的大小可以等于图像块的大小,为128×128,则每一个预测块最多可以有32×32个最小颗粒度,从而在解码过程中,需要存储32×32个块参数,而每个块参数为范围在[0,18],需要采用5bit的二进制数来表示一个块参数,那么一个预测块最多需要约为5kbit(32×32×5bit)的存储空间来存储所有的块参数。
如果视频压缩数据的数据量较大,那么用于标识视频压缩数据中预测块的划分方式的块参数的数据量也较大,所需的存储块参数的存储空间也较大,解码器基于块参数的计算时间和解码时间也较长,解码器中所需的芯片面积也较大。
发明内容
本申请的第一方面提供一种数据处理方法,应用于电子设备,包括:
获取视频压缩数据,视频压缩数据中包括第一预测块的头部信息,其中,第一预测块是采用递归划分方式划分为多个变换块的预测块;
基于第一预测块的头部信息,获得各变换块的划分信息,并通过预设存储格式存储各变换块的划分信息,其中,变换块的划分信息包括变换块的大小信息和变换块中起始残差点在第一预测块中的位置信息;
基于各变换块的划分信息,获得第一预测块的残差信息。
在上述第一方面的一种可能的实现中,预设存储格式包括队列。
在上述第一方面的一种可能的实现中,通过预设存储格式存储各变换块的划分信息的包括:
按照各变换块的解码顺序,将各变换块的划分信息依次存入队列中,并且每个变换块的划分信息为队列中的一个元素。
在上述第一方面的一种可能的实现中,基于各变换块的划分信息,得到第一预测块的残差信息,包括:
从队列中逐个读取各变换块的划分信息,获得各变换块的大小信息和各变换块中起始残差点在第一预测块中的位置信息;
根据各变换块的大小信息和各变换块中起始残差点在第一预测块中的位置信息,获得第一预测块的所有残差点的位置信息;
基于第一预测块的所有残差点的位置信息,获得第一预测块的残差信息。
在上述第一方面的一种可能的实现中,递归划分方式为逐层递进划分方式,且最大层数为3层。
在上述第一方面的一种可能的实现中,第一预测块的大小小于等于128×128。
在上述第一方面的一种可能的实现中,第一预测块的最小颗粒度的大小为4×4,变换块的大小大于等于所述最小颗粒度的大小。
在上述第一方面的一种可能的实现中,位置信息包括笛卡尔坐标系中的坐标信息。
在上述第一方面的一种可能的实现中,位置信息由包括2个5位的二进制数表示,大小信息由包括1个5位的二进制数表示。
本申请的第二方面提供一种数据处理装置,该装置包括:
第一单元,用于获取视频压缩数据,视频压缩数据中包括第一预测块的头部信息,其中,第一预测块是采用递归划分方式划分为多个变换块的预测块;
第二单元,用于基于第一预测块的头部信息,获得各变换块的划分信息,并通过预设存储格式存储各变换块的划分信息,其中,变换块的划分信息包括变换块的大小信息和变换块中起始残差点在第一预测块中的位置信息;
第三单元,用于基于各变换块的划分信息,获得第一预测块的残差信息。
本申请的第三方面提供了一种计算机可读介质,计算机可读介质上存储有指令,指令在电子设备上执行时使电子设备实现上述的数据处理方法。
本申请的第四方面提供了一种电子设备,包括:存储器,用于存储由电子设备的一个或多个处理器执行的指令,以及处理器,是电子设备的处理器之一,用于执行第一方面的电子设备的数据处理方法。
本申请的数据处理方法节省了较大的存储空间,节省了电子设备用于计算变换块的起始残差点的位置信息的时间和硬件资源,有利于提高解码速度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1根据本申请的一些实施例,示出了一种数据处理方法的应用场景图;
图2根据本申请的一些实施例,示出了一种电子设备解码预测块的方法的流程示意图;
图3根据本申请的一些实施例,示出了一种电子设备解码块划分方式为递归划分方式的预测块的方法的流程示意图;
图4a根据本申请的一些实施例,示出了一种按照递归方式划分的预测块的组成示意图;
图4b根据本申请的一些实施例,示出了一种与图4a中的预测块对应的分块矩阵的组成示意图;
图4c根据本申请的一些实施例,示出了一种赋值后的分块矩阵的组成示意图;
图5根据本申请的一些实施例,示出了一种数据处理方法的流程示意图;
图6根据本申请的一些实施例,示出了一种将按照递归方式划分的预测块的信息存入队列的方法的示意图;
图7根据本申请的一些实施例,示出了一种电子设备的硬件模块示意图。
具体实施方式
本申请的说明性实施例包括但不限于一种数据处理方法、可读介质和电子设备。以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
除非上下文明确要求,否则整个说明书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方式作进一步地详细描述。
在介绍本申请中的方案之前,为了便于理解本申请中的方案,下面对本申请中涉及的一些概念、术语进行介绍。
混合编码技术:整个编码系统由很多的模块混合在一起构成,每个模块可以从不同的角度和手段,对图像不同方面的数据冗余度进行压缩,不同的模块联合在一起,相辅相成,以实现较高的性能。
AOMedia Video 1(AV1):是为因特网上的视频传输设计的一种开放式视频编解码格式。AV1由开放媒体联盟(AOMedia)开发,且AV1比特流规范、基于软件的参考编码器和解码器于2018年由开放媒体联盟发布。
队列:一种特殊的线性表,允许在表的前端(front)进行删除操作,在表的后端(rear)进行插入操作,是一种操作受限制的线性表。因为队列只允许在一端插入,在另一端删除,所以只有最早进入队列的元素才能最先从队列中删除,故队列又称为先进先出(FIFO—first in first out)线性表。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了便于理解本申请的技术方案,下面首先结合图1介绍本申请技术方案适用的一种数据处理的应用场景。如图1所示的应用场景中,电子设备100包括AV1解码器。参考图1,用户将编码后的视频数据,即视频码流输入电子设备100后,AV1解码器对视频码流进行解码,并将解码后的视频数据通过电子设备100的显示屏显示出来。
其中,电子设备100可以包括但不限于:平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、台式电脑、超级移动个人计算机(ultra-mobile personalcomputer,UMPC)、上网本,以及手机、蜂窝电话、个人数字助理(personal digitalassistant,PDA)、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备、媒体播放器、智能电视、智能音箱、智能手表等。
下面将结合图1所示的应用场景介绍本申请实施例中的一种电子设备解码预测块的方法的流程示意图。参考图2,具体地,图2所示的方法包括以下内容:
编码后的视频压缩数据,即视频码流被输入电子设备100,电子设备100包括AV1解码器。电子设备100中的AV1解码器接收码流,对码流中的每帧图像进行解码。
S201,电子设备100解码视频压缩数据中每个预测块的头部信息获得每个预测块的块划分方式。
每个预测块的头部信息包括每个预测块的预测模式、预测模式的相关参数以及块划分方式等。电子设备100可以根据每个预测块的头部信息获得每个预测块的预测模式、预测模式的相关参数以及块划分方式等。
可以理解,每一帧图像可以看成是由若干个128×128大小的图像块组成的单元,每个图像块又可以根据不同的预测模式分为若干个预测块,预测块中的最小颗粒度的大小为4×4,也即预测块中的变换块的大小大于等于最小颗粒度的大小。
可以理解,预测块的块划分方式分为固定划分方式、深度划分方式和递归划分方式。
其中,固定划分方式即将预测块按照最小颗粒度划分,即预测块中的每一个变换块都为最小颗粒度,大小为4×4。例如对于64×64大小的预测块,可以划分为16×16个变换块,每一个变换块的大小等于4×4。
深度划分方式又可以分为不划分方式、一层划分方式和两层划分方式。其中,不划分方式即整个预测块作为一个变换块,不再进行划分。一层划分方式即将预测块划分为4个大小相等的变换块,两层划分方式即将预测块划分为16个大小相等的变换块。
递归划分方式即将预测块逐层递进划分。例如,对于一个64×64大小的预测块,首先,电子设备100对预测块的第0层进行四等份划分,将预测块的第0层划分为四个大小相等的块,每个块的大小为32×32;然后,电子设备100再对预测块的第1层的进行划分,将前述四个大小为32×32的块分别再划分为四个大小为16×16的块,等等。
S202,电子设备100根据每个预测块的块划分方式,获得每个预测块的残差信息。
S202a,电子设备100将根据每个预测块的块划分方式,获得每个预测块中的每个小格的位置信息。
例如,如果预测块的块划分方式为固定划分方式,电子设备100可以通过预测块的块划分方式,直接获得每个变换块的大小信息和每个变换块中的起始小格的位置信息,并通过每个变换块的大小信息和每个变换块中的起始小格的位置信息计算获得所有变换块中所有小格的位置信息。起始小格为预测块中每一个变换块中的第一个小格。
如果预测块的划分方式为深度划分方式,电子设备100可以通过预测块的块划分方式,直接获得每个变换块的大小信息和每个变换块中的起始小格的位置信息,并通过每个变换块的大小信息和每个变换块中的起始小格的位置信息计算获得所有变换块中所有小格的位置信息。起始小格为预测块中每一个变换块中的第一个小格。
如果预测块的划分方式为递归划分方式,则电子设备100需要通过预测块对应的分块矩阵中上一个变换块的大小,以及上一个变换块中的起始小格的位置信息,计算分块矩阵中下一个变换块中的起始小格信息,最后计算出分块矩阵中所有变换块中的所有小格的位置信息,分块矩阵中的每个变换块的小格对应于预测块中每个变换块的每个残差点。起始小格为分块矩阵中每一个变换块中的第一个小格,分块矩阵中的每一个变换块的每一个小格对应于预测块中每一个变换块的每一个残差点。
具体的对于块划分方式为递归划分方式的预测块的解码过程将在图3中详细描述。
S202b,电子设备100解码每个预测块中的每个小格的位置信息和与每个小格临近的小格的位置信息,获得预测块的残差信息。
最后,电子设备100可以根据预测块的残差信息,最终获得每帧图像的残差信息。残差信息即预测块中预测的图像像素值与图像实际像素值的差别信息。
具体的,下面将结合图2所示的一种电子设备解码预测块的方法,介绍本申请实施例中的一种电子设备解码块划分方式为递归划分方式的预测块的方法的流程示意图。图3所示的方法包括以下内容:
S301,电子设备100初始化分块矩阵。
电子设备100初始化分块矩阵,用于记录预测块中的变换块的信息,存入块参数,分块矩阵的大小等于预测块的矩阵大小,每一个分块矩阵对应一个预测块,每一个分块矩阵的小格对应一个预测块的残差点,且预测块和分块矩阵的最小颗粒度都为4×4大小的矩阵。
S302,电子设备100解码预测块的头部信息,获得预测块的块划分方式为递归划分方式。
电子设备100解码每个预测块的头部信息,可以通过头部信息获得预测块的块划分方式为递归划分方式,即预测块的划分方式为逐层递进划分。
S303,电子设备100解码预测块的层划分信息,根据层划分信息给分块矩阵赋值,获得赋值后的分块矩阵。
如背景描述中所述,电子设备100将用块参数来标识预测块的块划分方式,把块参数赋值给预测块中的最小颗粒度,块参数为范围在[0,18]中的任意一个自然数,不同的块参数代表不同大小的分块矩阵的变换块,且同一个变换块中的最小颗粒度的块参数相等。
电子设备100根据层划分信息,将不同的块参数赋值给分块矩阵中的每一个变换块的最小颗粒度的方法为:
S303a,电子设备100解码预测块的层划分信息,层划分信息包括层划分方式、递归标志位等。
例如,电子设备100解码预测块的第0层的层划分信息,获得递归标志位split等于1,且层划分方式为四等份划分,说明预测块的第0层被划分为四等份,预测块的第0层被划分为4个大小相等的矩阵,即L01、L02、L03和L04。
然后,电子设备100再解码预测块的第1层的层划分信息,电子设备100将从L01矩阵开始解码,直到L04矩阵结束。如果对于L01矩阵,电子设备100获得递归标志位split等于1,且层划分方式为四等份划分,说明L01矩阵被划分为4个大小相等的矩阵,等等。
以此类推,直至电子设备100把预测块的所有层的层划分信息解码完成,获得预测块的所有层的层划分信息。
S303b,电子设备100根据层划分信息给分块矩阵每个变换块赋值。
电子设备100在完全解码预测块的所有层的层划分信息后,给预测块对应的分块矩阵的每一个变换块赋值。电子设备100从范围在[0,18]的26个自然数中选择若干个自然数给分块矩阵中不同大小的变换块的每一个最小颗粒度赋值。
例如,图4a为一种按照递归方式划分的预测块的组成示意图,图4b为一种与图4a中的预测块对应的分块矩阵的组成示意图。如图4a所示,假设预测块为大小为64×64的矩阵。第1A变换块、第9A变换块和第10A变换块为大小为32×32的矩阵,第2A变换块、第7A变换块和第8A变换块为大小为16×16的矩阵,第3A变换块、第4A变换块、第5A变换块和第6A变换块为大小为8×8的矩阵。对应的,分块矩阵的大小也为64×64,分块矩阵中有64×64个小格,第1B变换块、第9B变换块和第10B变换块为大小为32×32的矩阵,第2B变换块、第7B变换块和第8B变换块为大小为16×16的矩阵,第3B变换块、第4B变换块、第5B变换块和第6B变换块为大小为8×8的矩阵。
图4c为一种赋值后的分块矩阵的组成示意图。如图4c所示,采用块参数0给第1B变换块、第9B变换块和第10B变换块中所有的最小颗粒度赋值,采用块参数1给第2B变换块、第7B变换块和第8B变换块中所有的最小颗粒度赋值,采用块参数2给第3B变换块、第4B变换块、第5B变换块和第6B变换块中所有的最小颗粒度赋值,即将第1B变换块、第9B变换块和第10B变换块中所有的最小颗粒度都赋值为0,将第3B变换块、第4B变换块、第5B变换块和第6B变换块中所有的最小颗粒度都赋值为1,将第3B变换块、第4B变换块、第5B变换块和第6B变换块中所有的最小颗粒度都赋值为2。
S304,电子设备100解码赋值后的分块矩阵,获得预测块的残差信息。
S304a,电子设备100可以通过赋值后的分块矩阵,获得分块矩阵中每一个变换块的大小信息以及分块矩阵中每一个变换块的起始小格的位置信息,起始小格为分块矩阵中每一个变换块中的第一个小格,分块矩阵中的每一个变换块的每一个小格对应于预测块中每一个变换块的每一个残差点;
S304b,电子设备100根据每一个变换块的大小信息以及分块矩阵中每一个变换块的起始小格的位置信息,获得分块矩阵中每一小格的位置信息;
S304c,电子设备100根据分块矩阵中每一小格的位置信息,获得分块矩阵对应的预测块的残差信息。
例如,图4b中,假设第1B变换块的起始小格的位置的笛卡尔坐标系中的二维坐标为(0,0),第1B变换块的大小为32×32,第2B变换块的大小为16×16,电子设备100可以计算获得第2B变换块的起始小格的位置的二维坐标为(0,32),第3B变换块的起始格的位置的二维坐标为(0,48),以此类推。
可以理解,分块矩阵中的变换块对应于预测块中的变换块,由于分块矩阵中的每一个小格都对应预测块中的每一个残差点,电子设备100通过解码赋值后的分块矩阵中的每一个小格的位置信息以及每一个小格临近的小格的位置的信息,可以最终获得预测块的残差信息。
如图3所述,如果电子设备100需要解码视频压缩数据,而视频压缩数据的数据量又比较大,那么在步骤S303b中,电子设备100根据层划分信息给分块矩阵每个变换块赋值需要使用的块参数的数据量也较大,如背景技术中所述,相应的用于存储块参数的存储空间最多可以为5kbit;同时,由于预测块的划分方式为递归划分方式,解码器需要通过分块矩阵中上一个变换块的起始小格的位置信息和变换块的大小信息,计算得出下一个变换块的起始小格的位置信息,最终通过解码分块矩阵中所有小格的位置信息,获得预测块的残差信息,因此,用于分块矩阵中每一个变换块的起始小格的位置信息的计算时间和解码时间也较长,解码器中所需的芯片面积也较大。
为此,本申请提供了一种数据处理方法,采用第一存储格式,比如采用先进先出(FIFO—first in first out)线性表的格式来存储预测块中每一个变换块的划分信息,第一存储格式为用来存储预测块中每一个变换块的划分信息的存储格式,其中,先进先出线性表中的每一个线性块用于存储预测块中的一个变换块的划分信息(例如,在第一存储格式为队列时,一个变换块的划分信息为队列的一个元素),一个变换块的划分信息包括变换块的大小信息和变换块中的起始残差点的位置信息等等,起始残差点为变换块中的第一个残差点。电子设备再通过读取先进先出线性表的每一个线性块中存储的划分信息,进行解码来获得预测块的残差信息。
根据AV1协议,递归划分方式中,预测块的划分最多可以有三层。例如,对于一个大小为128×128的预测块,第0层划分最多可以划分为四个块,每个块的大小为64×64,第1层再将每个大小为64×64的块分别划分为四个大小为32×32的块,第2层再将每个大小为32×32的块分别划分为四个大小为16×16的块,因此,预测块中最多可以有64个变换块,也就是最多需要64个线性块来存储每一个变换块的划分信息,每一个变换块的划分信息可以包括每一个变换块的起始残差点的位置信息和每一个变换块的大小信息。其中,每一个变换块的起始残差点的位置信息可以采用二维坐标x和y表示,每一个变换块的大小信息可以采用范围在[0,18]的自然数,也即块参数进行标记。
由于最小颗粒度的大小为4×4,预测块中的变换块的大小必须大于等于4×4,且预测块中包括有若干个最小颗粒度,所以每一个变换块的起始残差点的横坐标x和纵坐标y都必须为4的倍数。预测块的大小小于等于图像块的大小,即128×128,那么对于一个128×128大小的最大的预测块,其变换块的起始残差点的横坐标x和纵坐标y分别有32种取值方式,25等于32,则每一个变换块的起始残差点的横坐标x和纵坐标y都可以采用5bit的二进制数来表示,即分别需要5bit的存储空间。每一个变换块的大小信息可以采用块参数,即范围在[0,18]的任意一个自然数表示,则每一个变换块的大小信息同样需要5bit的存储空间。因此,每一个变换块的划分信息,包括每一个变换块的起始残差点的位置信息和每一个变换块的大小信息,总共需要15bit的存储空间。对于数量最多为64的变换块,则总共最多需要960bit的存储空间,相较于采用分块矩阵记录变换的划分方式最多需要的5kbit的存储空间,节省了较大的存储空间。
在一些实施例中,电子设备将预测块中的变换块的划分信息,按照各个变换块的解码顺序依次存储进队列中的线性块,从而电子设备解码先进先出线性表时可以按照先进先出的原则,直接读取每一个变换块的大小信息和起始残差点的位置信息,而不需要在解码分块矩阵中通过上一个变换块的大小信息和起始残差点的位置信息计算获得下一个变换块起始残差点的位置信息,节省了电子设备用于计算变换块的起始残差点的位置信息的时间和硬件资源,有利于提高解码速度。
具体的,图5所示为根据本申请的实施例提供的一种数据处理方法。
如图5所示,上述数据处理方法的具体为:
电子设备100接收视频压缩数据,并采用AV1解码器对视频压缩数据进行解码。
S501,电子设备100初始化队列。
电子设备100初始化队列,即初始化先进先出线性表。队列被用于存储预测块的划分信息。
S502,电子设备100解码预测块的头部信息,获得预测块的块划分方式为递归划分方式。
电子设备100解码预测块的头部信息,并通过预测块的头部信息获得预测块的块划分方式为递归划分方式。
可以理解,预测块的块划分方式可以为固定划分方式、深度划分方式和递归划分方式中的一种。固定划分方式为将预测块按照最小颗粒度划分的方式,即预测块中的每一个变换块的大小都为最小颗粒度的大小,即4×4。深度划分方式又可以分为不划分方式、一层划分方式和两层划分方式,其中,一层划分方式即将预测块划分为4个大小相等的变换块,两层划分方式即将预测块划分为16个大小相等的变换块。递归划分方式为将预测块逐层递进划分的方式。
S503,电子设备100根据递归划分方式,将每一个变换块的划分信息按照顺序存入队列中的线性块。
其中,每一个变换块的划分信息可以包括每一个变换块的起始残差点的位置信息和每一个变换块的大小信息,起始残差点为变换块中的第一个残差点。其中,每一个变换块的起始残差点的位置信息可以采用二维坐标x和y表示,每一个变换块的大小信息可以采用范围在[0,18]的自然数,也即块参数进行标记。
例如,如果预测块的块划分方式为递归划分方式,如图6所示,预测块为一个64×64大小的矩阵,将预测块划分为10个大小不相等的变换块,其中,第1s变换块、第9s变换块和第10s变换块为大小为32×32的矩阵,第2s变换块、第7s变换块和第8s变换块为大小为16×16的矩阵,第3s变换块、第4s变换块、第5s变换块和第6s变换块为大小为8×8的矩阵。电子设备100将所有的变换块的划分信息从第一行第一列的变换块1s的划分信息开始,依次放入队列的线性块中,变换块的划分信息包括变换块的大小信息和变换块中起始残差点的位置信息,即变换块1s的划分信息放入队列的线性块BLOCK1s中,变换块2s的划分信息放入队列的线性块BLOCK2s中,变换块3s的划分信息放入队列的线性块BLOCK3s中,变换块4s的划分信息放入队列的线性块BLOCK4s中。
可以理解,在本申请的其他的实施例中,还可以采用其他的存储格式用于存储预测块的划分信息,例如表格、链表等等,在此不做过多叙述。
S504,电子设备100解码每一个变换块的划分信息,获得预测块的残差信息。
电子设备100按照队列的先进先出原则,依次读取队列中的线性块保存的每一个变换块的划分信息,包括变换块的大小信息以及变换块中的起始残差点的位置信息,电子设备100可以直接获得每一个变换块中的起始残差点的位置信息,而不需要如分块矩阵中通过上一个变换块的大小信息和上一个变换块的起始残差点的位置信息计算获得下一个变换块的起始残差点的位置信息,节省了计算时间。
电子设备100根据变换块的大小信息和起始残差点的位置信息,计算获得每一个残差点的位置信息。
电子设备100根据每一个残差点的位置信息和与其相邻的残差点的位置信息,计算获得预测块的残差信息。
上述数据处理方法,采用队列的形式存储预测块中每一个变换块的划分信息,队列中的每一个线性块用于存储对应的变换块的划分信息,包括变换块的大小信息以及变换块中的起始残差点的坐标,由于变换块最多可以为64个,因此,最多需要64×15bit等于960bit的存储空间用于存储变换块的划分信息,相较于采用分块矩阵存储变换块的划分信息所需的最多5kbit的存储空间,节省了较大的存储空间。同时变换块中的起始残差点的坐标可以直接从线性块中读取,而不需要通过分块矩阵中的划分信息来计算,节省了计算时间。
图7为本申请实施例中提供的一种电子设备的硬件模块示意图。图7示例性地示出了根据多个实施例的示例电子设备100。在一个实施例中,电子设备100可以包括一个或多个处理器104,与处理器104中的至少一个连接的系统控制逻辑108,与系统控制逻辑108连接的系统内存112,与系统控制逻辑108连接的非易失性存储器(NVM)116,以及与系统控制逻辑108连接的网络接口120。
在一些实施例中,处理器104可以包括一个或多个单核或多核处理器。在一些实施例中,处理器104可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任意组合。在电子设备1000采用eNB(Evolved Node B,增强型基站)101或RAN(Radio Access Network,无线接入网)控制器102的实施例中,处理器104可以被配置为执行各种符合的实施例。可以理解,本申请实施例中,处理器104可以用于执行本申请实施例中提供的数据处理方法。
在一些实施例中,系统控制逻辑108可以包括任意合适的接口控制器,以向处理器104中的至少一个和/或与系统控制逻辑108通信的任意合适的设备或组件提供任意合适的接口。
在一些实施例中,系统控制逻辑108可以包括一个或多个存储器控制器,以提供连接到系统内存112的接口。系统内存112可以用于加载以及存储数据和/或指令。在一些实施例中电子设备1000的内存112可以包括任意合适的易失性存储器,例如合适的动态随机存取存储器(DRAM)。
NVM/存储器116可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。在一些实施例中,NVM/存储器116可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如HDD(Hard Disk Drive,硬盘驱动器),CD(Compact Disc,光盘)驱动器,DVD(Digital Versatile Disc,数字通用光盘)驱动器中的至少一个。
NVM/存储器116可以包括安装电子设备1000的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口120通过网络访问NVM/存储116。
特别地,系统内存112和NVM/存储器116可以分别包括:指令124的暂时副本和永久副本。指令124可以包括:由处理器104中的至少一个执行时导致电子设备1000实施本申请实施例中提及的数据存储方法的指令。在一些实施例中,指令124、硬件、固件和/或其软件组件可另外地/替代地置于系统控制逻辑108,网络接口120和/或处理器104中。
网络接口120可以包括收发器,用于为电子设备1000提供无线电接口,进而通过一个或多个网络与任意其他合适的设备(如前端模块,天线等)进行通信。在一些实施例中,网络接口120可以集成于电子设备1000的其他组件。例如,网络接口120可以集成于处理器104的,系统内存112,NVM/存储器116,和具有指令的固件设备(未示出)中的至少一种,当处理器104中的至少一个执行所述指令时,电子设备1000实现本申请实施例中提及的数据处理方法。
网络接口120可以进一步包括任意合适的硬件和/或固件,以提供多输入多输出无线电接口。例如,网络接口120可以是网络适配器,无线网络适配器,电话调制解调器和/或无线调制解调器。
在一个实施例中,处理器104中的至少一个可以与用于系统控制逻辑108的一个或多个控制器的逻辑封装在一起,以形成系统封装(SiP)。在一个实施例中,处理器104中的至少一个可以与用于系统控制逻辑108的一个或多个控制器的逻辑集成在同一管芯上,以形成片上系统(SoC)。
电子设备1000可以进一步包括:输入/输出(I/O)设备132。I/O设备132可以包括用户界面,使得用户能够与电子设备1000进行交互;外围组件接口的设计使得外围组件也能够与电子设备1000交互。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(Digital Signal Processor,DSP)、微控制器、专用集成电路(Application Specific Integrated Circuit,ASIC)或微处理器之类的处理器的任何系统。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(CD-ROMs)、磁光盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、可擦除可编程只读存储器(Erasable Programmable Read OnlyMemory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable ProgrammableRead-Only Memory,EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。
Claims (11)
1.一种数据处理方法,应用于电子设备,其特征在于,所述方法包括:
获取视频压缩数据,所述视频压缩数据中包括第一预测块的头部信息,其中,所述第一预测块是采用递归划分方式划分为多个变换块的预测块;
基于所述第一预测块的头部信息,获得各所述变换块的划分信息,并通过预设存储格式存储各所述变换块的划分信息,其中,所述变换块的划分信息包括变换块的大小信息和变换块中起始残差点在所述第一预测块中的位置信息;
基于各所述变换块的划分信息,获得所述第一预测块的残差信息。
2.根据权利要求1所述的方法,其特征在于,所述预设存储格式包括队列。
3.根据权利要求2所述的方法,其特征在于,所述通过预设存储格式存储各所述变换块的划分信息的包括:
按照各所述变换块的解码顺序,将各所述变换块的划分信息依次存入所述队列中,并且每个变换块的划分信息为所述队列中的一个元素。
4.根据权利要求1所述的方法,其特征在于,所述基于各所述变换块的划分信息,得到所述第一预测块的残差信息,包括:
从所述预设存储格式中逐个读取各所述变换块的划分信息,获得各所述变换块的大小信息和各所述变换块中起始残差点在所述第一预测块中的位置信息;
根据各所述变换块的大小信息和各所述变换块中起始残差点在所述第一预测块中的位置信息,获得所述第一预测块的所有残差点的位置信息;
基于所述第一预测块的所有残差点的位置信息,获得所述第一预测块的残差信息。
5.根据权利要求1所述的方法,其特征在于,所述递归划分方式为逐层递进划分方式,且最大层数为3层。
6.根据权利要求1所述的方法,其特征在于,所述第一预测块的大小小于等于128×128。
7.根据权利要求1所述的方法,其特征在于,所述第一预测块的最小颗粒度的大小为4×4,所述变换块的大小大于等于所述最小颗粒度的大小。
8.根据权利要求1所述的方法,其特征在于,所述位置信息包括笛卡尔坐标系中的坐标信息。
9.根据权利要求8所述的方法,其特征在于,所述位置信息由包括2个5位的二进制数表示,所述大小信息由包括1个5位的二进制数表示。
10.一种计算机可读介质,其特征在于,所述计算机可读介质上存储有指令,所述指令在电子设备上执行时使所述电子设备实现权利要求1至9中任一项所述的数据处理方法。
11.一种电子设备,其特征在于,包括:
存储器,用于存储由电子设备的一个或多个处理器执行的指令;
以及处理器,是所述电子设备的处理器之一,用于执行所述存储器中存储的指令以实现权利要求1至9中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211097397.1A CN115802057A (zh) | 2022-09-08 | 2022-09-08 | 数据处理方法、可读介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211097397.1A CN115802057A (zh) | 2022-09-08 | 2022-09-08 | 数据处理方法、可读介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115802057A true CN115802057A (zh) | 2023-03-14 |
Family
ID=85431817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211097397.1A Pending CN115802057A (zh) | 2022-09-08 | 2022-09-08 | 数据处理方法、可读介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115802057A (zh) |
-
2022
- 2022-09-08 CN CN202211097397.1A patent/CN115802057A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8265407B2 (en) | Method for coding and decoding 3D data implemented as a mesh model | |
CN110377257B (zh) | 图层合成方法、装置、电子设备及存储介质 | |
US8774535B2 (en) | Method and apparatus for compression of multi-sampled anti-aliasing color data | |
EP3588948A1 (en) | Method of adaptive filtering for multiple reference line of intra prediction in video coding, video encoding apparatus and video decoding apparatus therewith | |
US10397612B2 (en) | Three-dimensional video encoding method, three-dimensional video decoding method, and related apparatus | |
CN114501024B (zh) | 一种视频压缩系统、方法、计算机可读存储介质及服务器 | |
CN105700821B (zh) | 半导体装置及其压缩/解压缩方法 | |
US9813739B2 (en) | Backward adaptation apparatus for applying backward adaptation to probability table at end of processing of frame and related backward adaptation method | |
US8634470B2 (en) | Multimedia decoding method and multimedia decoding apparatus based on multi-core processor | |
CN108377394A (zh) | 视频编码器的图像数据读取方法、计算机装置及计算机可读存储介质 | |
US10171804B1 (en) | Video frame encoding scheme selection | |
US20220159265A1 (en) | Method and device for image encoding and decoding | |
CN112948151A (zh) | 程序界面图像传输方法、基板管理控制器及远程控制设备 | |
CN113573072B (zh) | 一种图像处理方法、装置及相关组件 | |
CN105163126A (zh) | 一种基于hevc协议的硬件解码方法和装置 | |
CN111432213A (zh) | 用于视频和图像压缩的自适应贴片数据大小编码 | |
CN110460854B (zh) | 图像压缩方法 | |
CN115802057A (zh) | 数据处理方法、可读介质和电子设备 | |
US20160358590A1 (en) | System on Chip Devices and Operating Methods Thereof | |
US6785337B2 (en) | MPEG picture processing apparatus and data transferring method using the apparatus | |
KR102247741B1 (ko) | 이미지 프로세서, 상기 이미지 프로세서의 동작 방법, 및 상기 이미지 프로세서를 포함하는 애플리케이션 프로세서 | |
US9307259B2 (en) | Image decoding methods and image decoding devices | |
US20220108480A1 (en) | Bit plane decoding method and apparatus | |
WO2024140568A1 (zh) | 图像处理方法、装置、电子设备及可读存储介质 | |
CN112188213B (zh) | 编码方法、装置、计算机设备和存储介质 |
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 |