CN112969067B - 一种视频编码方法、装置、设备和可读存储介质 - Google Patents
一种视频编码方法、装置、设备和可读存储介质 Download PDFInfo
- Publication number
- CN112969067B CN112969067B CN202110536998.7A CN202110536998A CN112969067B CN 112969067 B CN112969067 B CN 112969067B CN 202110536998 A CN202110536998 A CN 202110536998A CN 112969067 B CN112969067 B CN 112969067B
- Authority
- CN
- China
- Prior art keywords
- transformation
- residual block
- mode
- block
- transform
- 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/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种视频编码方法、装置、设备和可读存储介质,应用于视频编解码技术领域,包括:获取视频图像信息;对视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;遍历所有残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;基于相邻残差块和/或历史残差块的变换信息,确定当前残差块的变换模式和变换类型;对经变换后的视频图像进行量化以及熵编码处理。本方案利用当前残差块的相邻残差块和/或历史残差块的变换信息来快速确定当前残差块的变换模式和变换类型,无需对每个残差块遍历所有的变换模式和变换类型,进而达到减少编码时间的目的。
Description
技术领域
本发明涉及视频编解码技术领域,尤其涉及一种视频编码方法、装置、设备和可读存储介质。
背景技术
在现有视频编码技术中,对于视频图像残差块的变换模式和变换类型的选取方式是通过遍历所有可能的变换模式和类型,从中选择代价最小的变换类型作为变换类型,该过程编码的时间复杂度较高,并且随着变换模式的增多,时间复杂度就会越来越高。
发明内容
本发明实施例提供了一种视频编码方法、装置、设备和可读存储介质,具有提高视频编码效率的技术效果。
本发明一方面提供一种视频编码方法,所述方法包括:获取视频图像信息;对所述视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;遍历所有所述残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;基于所述相邻残差块和/或历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型;对经变换后的视频图像进行量化以及熵编码处理。
在一可实施方式中,所述基于所述历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:若确定所述历史残差块的变换模式,则将所述历史残差块的变换模式作为所述当前残差块的变换模式,并且遍历所述变换模式下的所有变换类型,以确定变换类型;或,若确定所述历史残差块的变换模式和变换类型,则将所述历史残差块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型。
在一可实施方式中,所述基于所述相邻残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:若所述当前残差块存在任一相邻块,则选取所述相邻块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型。
在一可实施方式中,若所述当前残差块不存在任一相邻块,则遍历所有满足变换条件的变换模式和变换类型。
在一可实施方式中,所述基于所述相邻残差块的变换信息,确定所述当前残差块的变换模式,包括:所有所述相邻残差块遍历所有的变换模式,确定各个所述相邻残差块的变换模式;选取所有所述相邻残差块中变换模式最多的变换模式作为所述当前残差块的变换模式。
在一可实施方式中,所述基于所述相邻残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:若确定所有相邻残差块的变换模式和变换类型,并且多个所述变换模式和/或变换类型不同,则将所述当前残差块遍历所有相邻残差块的变换模式和/或变换类型,从中确定所述当前残差块的变换模式和变换类型。
在一可实施方式中,所述基于所述相邻残差块和历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:若确定所述当前残差块同时存在所述相邻残差块和历史残差块,则选取所述历史残差块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型。
在一可实施方式中,所述基于所述相邻残差块和历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:若确定所述相邻残差块和历史残差块存在变换模式或者变换类型不同,则将所述当前残差块遍历所述相邻残差块和历史残差块的变换模式或者变换类型,从中确定所述当前残差块的变换模式和变换类型。
在一可实施方式中,所述基于所述相邻残差块和历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:选取所述相邻残差块和历史残差块中出现概率最大的变换模式和变换类型作为所述当前残差块的变换模式和变换类型;若出现的变换模式和变换类型的概率相同,则选取历史残差块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型。
本发明另一方面提供一种视频编码装置,所述装置包括:图像获取模块,用于获取视频图像信息;残差块获取模块,用于对所述视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;遍历模块,用于遍历所有所述残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;变换模块,用于基于所述相邻残差块和/或历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型;量化以及熵编码模块,用于对经变换后的视频图像进行量化以及熵编码处理。
本发明另一方面提供一种视频编码设备,所述设备包括存储器和处理器;所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行时实现上述任一项所述的视频编码方法。
本发明另一方面提供一种计算机可读存储介质,所述存储介质包括一组计算机可执行指令,当所述指令被执行时用于执行上述任一项所述的视频编码方法。
在本发明实施例中,本方案在对经预测后的残差块进行变换处理时,利用当前残差块的相邻残差块和/或历史残差块的变换信息来快速确定当前残差块的变换模式和变换类型,无需通过遍历每个残差块所有的变换模式和变换类型以确定当前编码块的变换信息,进而达到减少编码时间的目的。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
在附图中,相同或对应的标号表示相同或对应的部分。
图1为本发明实施例一种视频编码方法的实现流程示意图;
图2为本发明实施例一种视频编码方法中表示相邻残差块的示意图;
图3为本发明实施例一种视频编码方法中表示历史残差块的示意图;
图4为本发明实施例一种视频编码装置的结构组成示意图。
具体实施方式
为使本发明的目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明一方面提供一种视频编码方法,方法包括:
步骤101,获取视频图像信息;
步骤102,对视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;
步骤103,遍历所有残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;
步骤104,基于相邻残差块和/或历史残差块的变换信息,确定当前残差块的变换模式和变换类型;
步骤105,对经变换后的视频图像进行量化以及熵编码处理。
本实施例中,视频编码的主要作用是将视频像素数据(RGB,YUV等)压缩成为视频码流,减少视频的数据量,从而降低传输过程中的网络带宽和减少存储空间,其中待编码的视频格式可以但不仅限于以下几种:MPEG、AVI、nAVI、ASF、MOV、3GP、WMV、DivX、XviD、RM、RMVB、FLV/F4V。
在步骤101中,视频图像信息的获取方式可通过采集芯片自动完成图像的采集,也可以采用通用视频A/D转换器实现图像的采集。
在步骤102中,每一帧图像的预测处理方式具体分为帧内预测和帧间预测,其中帧内预测大致为把一个视频图像帧划分成多个小的分割块,以每一分割块为单元获取当前分割块周围的重建像素值,并作为当前分割块像素的预测值,将当前分割块的实际像素值与预测得到的预测值相减,得到一个残差块,残差块就表示当前分割块真实像素与预测像素之间的差异;帧间预测大致为在当前残差块的参考帧图像内,搜索与当前残差块最匹配的块,并将其像素值作为当前残差块的预测值,再将当前残差块的实际像素值与预测值相减,得到残差块。经过针对每一帧图像的预测处理,可得到对应于每一帧图像的多个残差块。
在步骤103中,遍历所有残差块,其中当前残差块定义为遍历过程中正在处理的残差块,在遍历过程中,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息,其中相邻残差块为当前残差块周围的残差块,可参考图2所示,图2中当前残差块的上方、左上以及左边的残差块均为当前残差块的相邻残差块,需要说明的是,本实施例不仅限于图2所示的相邻关系。历史残差块的确定可参考图3所示,假设视频帧在预测时采用划分方式一得到子块A,再通过划分方式二得到子块B,其中子块A和子块B起点和大小均相同,则确定子块A为子块B的历史残差块,历史残差块的数量可以是一个或者多个。
相邻残差块和/或历史残差块的变换信息具体可以包括各自的变换模式和变换类型,其中变换模式还具体包括SBT(子块变换,Sub-Block Transform)、PBT(基于位置的块变换,Position based transform)、IST(隐式变换,Implicit selection of transforms)、EST(Enhanced Secondary Transform,EST)和ISTS(隐式变换跳过,ISTS,Implicitselection of transform skip),变换类型具体包括离散余弦变换(Discrete CosineTransform,DCT)以及离散正弦变换(Discrete Sine Transform,DST),用于对预测残差进行空域/频域的转换,DCT和DST都各自有多种类型(如DCT2、DCT8、DST7)。对于不同的预测方式产生的不同分布特性的残差,选用不同的变换类型进行变换,残差的集中性也不同。
在步骤104中,在确定对应于当前残差块的相邻残差块和/或历史残差块的变换信息之后,基于相邻残差块和/或历史残差块的变换信息,确定当前残差块的变换模式和变换类型,其中确定方式可以是将相邻残差块或历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型,也可以是综合参考各个相邻残差块和/或历史残差块的变换模式和变换类型,最终选取的变换模式和变换类型,并作相应的变换处理。
在步骤105中,对残差块进行量化以及熵编码处理,其中量化处理可以去除能量较小的变换系数,从而达到压缩数据的目的,量化方式可以是标量(Scalar)量化,也可以是矢量(Vector)量化;熵编码处理即编码过程中按熵原理不丢失任何信息的编码,熵编码具体可以采用香农(Shannon)编码、哈夫曼(Huffman)编码或者算术编码(arithmetic coding)。
由此,本方案在对经预测后的残差块进行变换处理时,利用当前残差块的相邻残差块和/或历史残差块的变换信息来快速确定当前残差块的变换模式和变换类型,无需通过遍历每个残差块所有的变换模式和变换类型以确定当前编码块的变换信息,进而达到减少编码时间的目的。
进一步地,该方法可以应用于CTC(自然图像场景)场景,也可以应用于自然图像场景和混合场景,以及SCC(屏幕内容,主要由计算机产生的图像)+自然图像。
在一可实施方式中,基于历史残差块的变换信息,确定当前残差块的变换模式和变换类型,包括:
若确定历史残差块的变换模式,则将历史残差块的变换模式作为当前残差块的变换模式,并且遍历变换模式下的所有变换类型,以确定变换类型;
或,若确定历史残差块的变换模式和变换类型,则将历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本实施例中,在步骤104中,若仅基于历史残差块的变换信息的情况下,具体过程为:
在遍历残差块过程中,判断当前残差块是否存在历史残差块,若判定为否,则该当前残差块进行遍历所有变换模式和变换类型的操作,若判定为是,则获取历史残差块的变换信息。
若所获取的历史残差块的变换信息只包括变换模式,未包括变换类型,则将历史残差块的变换模式作为当前残差块的变换模式,至于变换类型的确定,则将当前残差块通过遍历该变换模式的变换类型,从中选取变换类型。假设当前残差块为帧间预测得到,历史残差块的变换模式为SBT,则当前残差块的变换模式为SBT,当前残差块通过遍历所有满足的SBT划分方式和位置,选取代价最小的变换类型。
若所获取的历史残差块的变换信息既包括变换模式又包括变换类型,则将历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。例如,假设当前残差块为帧内预测得到,并且当前残差块的变换模式为IST,那么当前残差块的变换模式也为IST,不需要对当前残差块遍历所有可能的变换类型选择代价最小的变换模式。
在一可实施方式中,基于相邻残差块的变换信息,确定当前残差块的变换模式和变换类型,包括:
若当前残差块存在任一相邻块,则选取任一相邻块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本实施例中,在步骤104中,若仅基于相邻残差块的变换信息的情况下,具体过程为:
判断当前残差块是否存在相邻残差块,若判定为否,则当前残差块遍历所有可能的变换模式和变换类型,从中选取最小代价的变换模式和变换类型,若判定为是,则将相邻残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型,其中相邻残差块至少包括以相邻残差块为中心的8个方位的相邻块,优选上方相邻残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
在一可实施方式中,基于相邻残差块的变换信息,确定当前残差块的变换模式,包括:
所有相邻残差块遍历所有的变换模式,确定各个相邻残差块的变换模式;
选取所有相邻残差块中变换模式最多的变换模式作为当前残差块的变换模式。
本实施例中,在步骤104中,若仅基于相邻残差块的变换信息的情况下,第二种具体过程为:
所有相邻残差块各自遍历所有的变换模式,确定各个相邻残差块的变换模式,选取所有相邻残差块中变换模式最多的变换模式作为当前残差块的变换模式。结合图2举例,假设当前残差块存在上方相邻块、左边相邻块以及左上相邻块,各相邻残差块对应的变换模式分别为:DCT2、IST、IST, 则当前残差块的变换模式确定为IST。
在一可实施方式中,基于相邻残差块的变换信息,确定当前残差块的变换模式和变换类型,包括:
若确定所有相邻残差块的变换模式和变换类型,并且多个变换模式和/或变换类型不同,则将当前残差块遍历所有相邻残差块的变换模式和/或变换类型,从中确定当前残差块的变换模式和变换类型。
本实施例中,在步骤104中,若仅基于相邻残差块的变换信息的情况下,第三种具体过程为:
若当前残差块存在多个相邻残差块,且多个相邻残差块的变换模式和/或变换类型不同,则当前残差块遍历所有相邻残差块的变换模式中满足使用条件的变换模式,选择代价最小的变换模式和/或变换类型作为当前残差块的变换模式和变换类型。参考图2所示,假设当前残差块存在上方相邻块、左边相邻块以及左上相邻块,各相邻块对应的变换模式分别为:DCT2、IST、IST,且当前残差块满足IST的条件,则当前残差块需要遍历DCT2和IST,选择代价最小的变换模式。再假设当前残差块为帧间预测块,且存在多个相邻残差块,假设当前帧间块上方相邻块、左边相邻块以及左上相邻块,各相邻残差块对应的变换模式分别为:DCT2、DCT2、SBT,且当前残差块满足SBT的使用条件,则当前残差块需要遍历DCT2和SBT,选择代价最小的变换模式和变换类型。
在一可实施方式中,基于相邻残差块和历史残差块的变换信息,确定当前残差块的变换模式和变换类型,包括:
若确定当前残差块同时存在相邻残差块和历史残差块,则选取历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本实施例中,在步骤104中,若基于相邻残差块和历史残差块的变换信息的情况下,第一种具体过程为:
判断当前残差块是否同时存在相邻残差块和历史残差块,若判定为是,则优先选取历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。仍结合图2为例,假设当前残差块存在帧内历史块,帧内历史块对应的变换类型为DCT2,且当前残差块存在上方相邻块、左边相邻块以及左上相邻块,各相邻块对应的变换模式分别为:DCT2、IST、IST,则当前残差块对应的变换类型为DCT2。
在一可实施方式中,基于相邻残差块和历史残差块的变换信息,确定当前残差块的变换模式和变换类型,包括:
若确定相邻残差块和历史残差块存在变换模式或者变换类型不同,则将当前残差块遍历相邻残差块和历史残差块的变换模式或者变换类型,从中确定当前残差块的变换模式和变换类型。
本实施例中,在步骤104中,若基于相邻残差块和历史残差块的变换信息的情况下,第二种具体过程为:
获取当前残差块对应的相邻残差块和历史残差块的变换信息;
判断相邻残差块和历史残差块的变换信息是否相同,若判定为否,则将当前残差块遍历相邻残差块和历史残差块的变换模式或者变换类型,从中选取代价最小的变换模式和变换类型。
在一可实施方式中,基于相邻残差块和历史残差块的变换信息,确定当前残差块的变换模式和变换类型,包括:
选取相邻残差块和历史残差块中出现概率最大的变换模式和变换类型作为当前残差块的变换模式和变换类型;
若出现的变换模式和变换类型的概率相同,则选取历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本实施例中,在步骤104中,若基于相邻残差块和历史残差块的变换信息的情况下,第三种具体过程为:
若经判定当前残差块同时存在历史残差块和相邻残差块,则进一步统计历史残差块和相邻残差块的变换模式和变换类型,并计算变换模式和变换类型出现的概率,从中选取概率最大的变换模式和变换类型作为当前残差块的变换模式和变换类型。
若出现变换模式或者变换类型出现概率相同的情况下,优选选取历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
如图4所示,本发明另一方面提供一种视频编码装置,装置包括:
图像获取模块201,用于获取视频图像信息;
残差块获取模块202,用于对视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;
遍历模块203,用于遍历所有残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;
变换模块204,用于基于相邻残差块和/或历史残差块的变换信息,确定当前残差块的变换模式和变换类型;
量化以及熵编码模块205,用于对经变换后的视频图像进行量化以及熵编码处理。
本实施例中,视频编码的主要作用是将视频像素数据(RGB,YUV等)压缩成为视频码流,减少视频的数据量,从而降低传输过程中的网络带宽和减少存储空间,其中待编码的视频格式可以但不仅限于以下几种:MPEG、AVI、nAVI、ASF、MOV、3GP、WMV、DivX、XviD、RM、RMVB、FLV/F4V。
在图像获取模块201中,视频图像信息的获取方式可通过采集芯片自动完成图像的采集,也可以采用通用视频A/D转换器实现图像的采集。
在残差块获取模块202中,每一帧图像的预测处理方式具体分为帧内预测和帧间预测,其中帧内预测大致为把一个视频图像帧划分成多个小的分割块,以每一分割块为单元获取当前分割块周围的重建像素值,并作为当前分割块像素的预测值,将当前分割块的实际像素值与预测得到的预测值相减,得到一个残差块,残差块就表示当前分割块真实像素与预测像素之间的差异;帧间预测大致为在当前残差块的参考帧图像内,搜索与当前残差块最匹配的块,并将其像素值作为当前残差块的预测值,再将当前残差块的实际像素值与预测值相减,得到残差块。经过针对每一帧图像的预测处理,可得到对应于每一帧图像的多个残差块。
在遍历模块203中,遍历所有残差块,其中当前残差块定义为遍历过程中正在处理的残差块,在遍历过程中,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息,其中相邻残差块为当前残差块周围的残差块,可参考图2所示,图2中当前残差块的上方、左上以及左边的残差块均为当前残差块的相邻残差块,需要说明的是,本实施例不仅限于图2所示的相邻关系。历史残差块的确定可参考图3所示,假设视频帧在预测时采用划分方式一得到子块A,再通过划分方式二得到子块B,其中子块A和子块B起点和大小均相同,则确定子块A为子块B的历史残差块,历史残差块的数量可以是一个或者多个。
相邻残差块和/或历史残差块的变换信息具体可以包括各自的变换模式和变换类型,其中变换模式还具体包括SBT(子块变换,Sub-Block Transform)、PBT(基于位置的块变换,Position based transform)、IST(隐式变换,Implicit selection of transforms)、EST(Enhanced Secondary Transform,EST)和ISTS(隐式变换跳过,ISTS,Implicitselection of transform skip),变换类型具体包括离散余弦变换(Discrete CosineTransform,DCT)以及离散正弦变换(Discrete Sine Transform,DST),用于对预测残差进行空域/频域的转换,DCT和DST都各自有多种类型(如DCT2、DCT8、DST7)。对于不同的预测方式产生的不同分布特性的残差,选用不同的变换类型进行变换,残差的集中性也不同。
在变换模块204中,在确定对应于当前残差块的相邻残差块和/或历史残差块的变换信息之后,基于相邻残差块和/或历史残差块的变换信息,确定当前残差块的变换模式和变换类型,其中确定方式可以是将相邻残差块或历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型,也可以是综合参考各个相邻残差块和/或历史残差块的变换模式和变换类型,最终选取的变换模式和变换类型,并作相应的变换处理。
在量化以及熵编码模块205中,对残差块进行量化以及熵编码处理,其中量化处理可以去除能量较小的变换系数,从而达到压缩数据的目的,量化方式可以是标量(Scalar)量化,也可以是矢量(Vector)量化;熵编码处理即编码过程中按熵原理不丢失任何信息的编码,熵编码具体可以采用香农(Shannon)编码、哈夫曼(Huffman)编码或者算术编码(arithmetic coding)。
由此,本方案在对经预测后的残差块进行变换处理时,利用当前残差块的相邻残差块和/或历史残差块的变换信息来快速确定当前残差块的变换模式和变换类型,无需通过遍历每个残差块所有的变换模式和变换类型以确定当前编码块的变换信息,进而达到减少编码时间的目的。
进一步地,该装置可以应用于CTC(自然图像场景)场景,也可以应用于自然图像场景和混合场景,以及SCC(屏幕内容,主要由计算机产生的图像)+自然图像。
在一可实施方式中,变换模块204具体用于:
若确定历史残差块的变换模式,则将历史残差块的变换模式作为当前残差块的变换模式,并且遍历变换模式下的所有变换类型,以确定变换类型;
或,若确定历史残差块的变换模式和变换类型,则将历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本实施例中,在变换模块204中,若仅基于历史残差块的变换信息的情况下,具体执行过程为:
在遍历残差块过程中,判断当前残差块是否存在历史残差块,判定为否,则该当前残差块进行遍历所有变换模式和变换类型的操作,若判定为是,则获取历史残差块的变换信息。
若所获取的历史残差块的变换信息只包括变换模式,未包括变换类型,则将历史残差块的变换模式作为当前残差块的变换模式,至于变换类型的确定,则将当前残差块通过遍历该变换模式的变换类型,从中选取变换类型。假设当前残差块为帧间预测得到,历史残差块的变换模式为SBT,则当前残差块的变换模式为SBT,当前残差块通过遍历所有满足的SBT划分方式和位置,选取代价最小的变换类型。
若所获取的历史残差块的变换信息既包括变换模式又包括变换类型,则将历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。例如,假设当前残差块为帧内预测得到,并且当前残差块的变换模式为IST,那么当前残差块的变换模式也为IST,不需要对当前残差块遍历所有可能的变换类型选择代价最小的变换模式。
在一可实施方式中,变换模块204还具体用于:
若当前残差块存在任一相邻块,则选取任一相邻块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本实施例中,在变换模块204中,若仅基于相邻残差块的变换信息的情况下,具体执行过程为:
判断当前残差块是否存在相邻残差块,若判定为否,则当前残差块遍历所有可能的变换模式和变换类型,从中选取最小代价的变换模式和变换类型,若判定为是,则将相邻残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型,其中相邻残差块至少包括以相邻残差块为中心的8个方位的相邻块,优选上方相邻残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
在一可实施方式中,变换模块204还具体用于:
所有相邻残差块遍历所有的变换模式,确定各个相邻残差块的变换模式;
选取所有相邻残差块中变换模式最多的变换模式作为当前残差块的变换模式。
本实施例中,在变换模块204中,若仅基于相邻残差块的变换信息的情况下,变换模块204第二种具体执行过程为:
所有相邻残差块各自遍历所有的变换模式,确定各个相邻残差块的变换模式,选取所有相邻残差块中变换模式最多的变换模式作为当前残差块的变换模式。结合图2举例,假设当前残差块存在上方相邻块、左边相邻块以及左上相邻块,各相邻残差块对应的变换模式分别为:DCT2、IST、IST, 则当前残差块的变换模式确定为IST。
在一可实施方式中,变换模块204还具体用于:
若确定所有相邻残差块的变换模式和变换类型,并且多个变换模式和/或变换类型不同,则将当前残差块遍历所有相邻残差块的变换模式和/或变换类型,从中确定当前残差块的变换模式和变换类型。
本实施例中,在变换模块204中,若仅基于相邻残差块的变换信息的情况下,第三种具体执行过程为:
若当前残差块存在多个相邻残差块,且多个相邻残差块的变换模式和/或变换类型不同,则当前残差块遍历所有相邻残差块的变换模式中满足使用条件的变换模式,选择代价最小的变换模式和/或变换类型作为当前残差块的变换模式和变换类型。参考图2所示,假设当前残差块存在上方相邻块、左边相邻块以及左上相邻块,各相邻块对应的变换模式分别为:DCT2、IST、IST,且当前残差块满足IST的条件,则当前残差块需要遍历DCT2和IST,选择代价最小的变换模式。再假设当前残差块为帧间预测块,且存在多个相邻残差块,假设当前帧间块上方相邻块、左边相邻块以及左上相邻块,各相邻残差块对应的变换模式分别为:DCT2、DCT2、SBT,且当前残差块满足SBT的使用条件,则当前残差块需要遍历DCT2和SBT,选择代价最小的变换模式和变换类型。
在一可实施方式中,变换模块204还具体用于:
若确定当前残差块同时存在相邻残差块和历史残差块,则选取历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本实施例中,在变换模块204中,若基于相邻残差块和历史残差块的变换信息的情况下,第一种具体执行过程为:
判断当前残差块是否同时存在相邻残差块和历史残差块,若判定为是,则优先选取历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。仍结合图2为例,假设当前残差块存在帧内历史块,帧内历史块对应的变换类型为DCT2,且当前残差块存在上方相邻块、左边相邻块以及左上相邻块,各相邻块对应的变换模式分别为:DCT2、IST、IST,则当前残差块对应的变换类型为DCT2。
在一可实施方式中,变换模块204还具体用于:
若确定相邻残差块和历史残差块存在变换模式或者变换类型不同,则将当前残差块遍历相邻残差块和历史残差块的变换模式或者变换类型,从中确定当前残差块的变换模式和变换类型。
本实施例中,在变换模块204中,若基于相邻残差块和历史残差块的变换信息的情况下,第二种具体执行过程为:
获取当前残差块对应的相邻残差块和历史残差块的变换信息;
判断相邻残差块和历史残差块的变换信息是否相同,若判定为否,则将当前残差块遍历相邻残差块和历史残差块的变换模式或者变换类型,从中选取代价最小的变换模式和变换类型。
在一可实施方式中,变换模块204还具体用于:
选取相邻残差块和历史残差块中出现概率最大的变换模式和变换类型作为当前残差块的变换模式和变换类型;
若出现的变换模式和变换类型的概率相同,则选取历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本实施例中,在变换模块204中,若基于相邻残差块和历史残差块的变换信息的情况下,第三种具体执行过程为:
若经判定当前残差块同时存在历史残差块和相邻残差块,则进一步统计历史残差块和相邻残差块的变换模式和变换类型,并计算变换模式和变换类型出现的概率,从中选取概率最大的变换模式和变换类型作为当前残差块的变换模式和变换类型。
若出现变换模式或者变换类型出现概率相同的情况下,优选选取历史残差块的变换模式和变换类型作为当前残差块的变换模式和变换类型。
本发明另一方面提供一种视频编码设备,设备包括存储器和处理器;
存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行时实现上述任一项的视频编码方法。
在本发明实施例中计算机可读存储介质包括一组计算机可执行指令,当指令被执行时用于:获取视频图像信息;对视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;遍历所有残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;基于相邻残差块和/或历史残差块的变换信息,确定当前残差块的变换模式和变换类型;对经变换后的视频图像进行量化以及熵编码处理。
由此,本方案在对经预测后的残差块进行变换处理时,利用当前残差块的相邻残差块和/或历史残差块的变换信息来快速确定当前残差块的变换模式和变换类型,无需通过遍历每个残差块所有的变换模式和变换类型以确定当前编码块的变换信息,进而达到减少编码时间的目的。
本发明另一方面提供一种计算机可读存储介质,存储介质包括一组计算机可执行指令,当指令被执行时用于执行上述任一项的视频编码方法。
在本发明实施例中计算机可读存储介质包括一组计算机可执行指令,当指令被执行时用于:获取视频图像信息;对视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;遍历所有残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;基于相邻残差块和/或历史残差块的变换信息,确定当前残差块的变换模式和变换类型;对经变换后的视频图像进行量化以及熵编码处理。
由此,本方案在对经预测后的残差块进行变换处理时,利用当前残差块的相邻残差块和/或历史残差块的变换信息来快速确定当前残差块的变换模式和变换类型,无需通过遍历每个残差块所有的变换模式和变换类型以确定当前编码块的变换信息,进而达到减少编码时间的目的。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (11)
1.一种视频编码方法,其特征在于,所述方法包括:
获取视频图像信息;
对所述视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;
遍历所有所述残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;
基于所述相邻残差块和/或历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,至少包括:若所述当前残差块存在任一相邻块,则选取所述相邻块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型;
对经变换后的视频图像进行量化以及熵编码处理。
2.根据权利要求1所述的方法,其特征在于,所述基于所述历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:
若确定所述历史残差块的变换模式,则将所述历史残差块的变换模式作为所述当前残差块的变换模式,并且遍历所述变换模式下的所有变换类型,以确定变换类型;
或,若确定所述历史残差块的变换模式和变换类型,则将所述历史残差块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型。
3.根据权利要求1所述的方法,其特征在于,若所述当前残差块不存在任一相邻块,则遍历所有满足变换条件的变换模式和变换类型。
4.根据权利要求1所述的方法,其特征在于,所述基于所述相邻残差块的变换信息,确定所述当前残差块的变换模式,包括:
所述相邻残差块遍历所有的变换模式,确定各个所述相邻残差块的变换模式;
选取所有所述相邻残差块中变换模式最多的变换模式作为所述当前残差块的变换模式。
5.根据权利要求1所述的方法,其特征在于,所述基于所述相邻残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:
若确定所有相邻残差块的变换模式和变换类型,并且多个所述变换模式和/或变换类型不同,则将所述当前残差块遍历所有相邻残差块的变换模式和/或变换类型,从中确定所述当前残差块的变换模式和变换类型。
6.根据权利要求1所述的方法,其特征在于,所述基于所述相邻残差块和历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:
若确定所述当前残差块同时存在所述相邻残差块和历史残差块,则选取所述历史残差块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型。
7.根据权利要求1所述的方法,其特征在于,所述基于所述相邻残差块和历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:
若确定所述相邻残差块和历史残差块存在变换模式或者变换类型不同,则将所述当前残差块遍历所述相邻残差块和历史残差块的变换模式或者变换类型,从中确定所述当前残差块的变换模式和变换类型。
8.根据权利要求1所述的方法,其特征在于,所述基于所述相邻残差块和历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,包括:
选取所述相邻残差块和历史残差块中出现概率最大的变换模式和变换类型作为所述当前残差块的变换模式和变换类型;
若出现的变换模式和变换类型的概率相同,则选取历史残差块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型。
9.一种视频编码装置,其特征在于,所述装置包括:
图像获取模块,用于获取视频图像信息;
残差块获取模块,用于对所述视频图像信息的每一帧图像进行预测处理,确定表征每帧图像中每一分割块实际像素与预测像素之间差异的残差块;
遍历模块,用于遍历所有所述残差块,获取每一当前残差块所对应的相邻残差块和/或历史残差块的变换信息;
变换模块,用于基于所述相邻残差块和/或历史残差块的变换信息,确定所述当前残差块的变换模式和变换类型,至少包括:若所述当前残差块存在任一相邻块,则选取所述相邻块的变换模式和变换类型作为所述当前残差块的变换模式和变换类型;
量化以及熵编码模块,用于对经变换后的视频图像进行量化以及熵编码处理。
10.一种视频编码设备,其特征在于,所述设备包括存储器和处理器;
所述存储器用于存储指令,所述指令用于控制所述处理器进行操作以执行时实现权利要求1-8任一项所述的视频编码方法。
11.一种可读存储介质,其特征在于,所述存储介质包括一组计算机可执行指令,当所述指令被执行时用于执行权利要求1-8任一项所述的视频编码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110536998.7A CN112969067B (zh) | 2021-05-18 | 2021-05-18 | 一种视频编码方法、装置、设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110536998.7A CN112969067B (zh) | 2021-05-18 | 2021-05-18 | 一种视频编码方法、装置、设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112969067A CN112969067A (zh) | 2021-06-15 |
CN112969067B true CN112969067B (zh) | 2021-08-03 |
Family
ID=76279762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110536998.7A Active CN112969067B (zh) | 2021-05-18 | 2021-05-18 | 一种视频编码方法、装置、设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112969067B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101877792A (zh) * | 2010-06-17 | 2010-11-03 | 北京中星微电子有限公司 | 帧内模式预测方法与装置、编码器 |
CN102939756A (zh) * | 2010-04-16 | 2013-02-20 | Sk电信有限公司 | 视频编码/解码设备和方法 |
CN103096053A (zh) * | 2011-11-04 | 2013-05-08 | 华为技术有限公司 | 一种变换模式的编解码方法和装置 |
CN110268715A (zh) * | 2017-02-28 | 2019-09-20 | 谷歌有限责任公司 | 变换核选择与熵编译 |
WO2019228332A1 (en) * | 2018-05-31 | 2019-12-05 | Huawei Technologies Co., Ltd. | Spatially varying transform with adaptive transform type |
-
2021
- 2021-05-18 CN CN202110536998.7A patent/CN112969067B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102939756A (zh) * | 2010-04-16 | 2013-02-20 | Sk电信有限公司 | 视频编码/解码设备和方法 |
CN101877792A (zh) * | 2010-06-17 | 2010-11-03 | 北京中星微电子有限公司 | 帧内模式预测方法与装置、编码器 |
CN103096053A (zh) * | 2011-11-04 | 2013-05-08 | 华为技术有限公司 | 一种变换模式的编解码方法和装置 |
CN110268715A (zh) * | 2017-02-28 | 2019-09-20 | 谷歌有限责任公司 | 变换核选择与熵编译 |
WO2019228332A1 (en) * | 2018-05-31 | 2019-12-05 | Huawei Technologies Co., Ltd. | Spatially varying transform with adaptive transform type |
Also Published As
Publication number | Publication date |
---|---|
CN112969067A (zh) | 2021-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11438610B2 (en) | Block-level super-resolution based video coding | |
RU2765300C1 (ru) | Способ кодирования и декодирования изображений, устройство кодирования и декодирования и соответствующие компьютерные программы | |
US9699458B2 (en) | Image encoding apparatus, image encoding method, image decoding apparatus, and image decoding method | |
JP3149417B2 (ja) | 画像予測復号化方法及び装置 | |
RU2720975C2 (ru) | Способ кодирования и декодирования изображений, устройство кодирования и декодирования и соответствующие компьютерные программы | |
TWI551122B (zh) | Image predictive coding apparatus, image predictive coding method, image predictive decoding apparatus, image predictive decoding method | |
KR101717510B1 (ko) | 화상 예측 부호화 장치, 방법 및 프로그램, 화상 예측 복호 장치, 방법 및 프로그램, 및 부호화·복호 시스템 및 방법 | |
US20070025621A1 (en) | Coding device, coding method, decoding device, decoding method, and programs of same | |
TW201215159A (en) | Image decoding device, image encoding device, and method and program thereof | |
JP3857298B2 (ja) | 画像予測符号化装置及び方法、並びに画像予測復号化装置及び方法 | |
CN112969067B (zh) | 一种视频编码方法、装置、设备和可读存储介质 | |
JP6992825B2 (ja) | 映像符号化装置、映像符号化方法、映像復号装置、映像復号方法、及び映像符号化システム | |
JP3343554B1 (ja) | 画像予測復号化方法及び画像予測符号化装置 | |
KR101583870B1 (ko) | 이미지 인코딩 시스템, 디코딩 시스템 및 그 제공방법 | |
RU2782400C2 (ru) | Способ кодирования и декодирования изображений, устройство кодирования и декодирования и соответствующие компьютерные программы | |
JP3851317B2 (ja) | 画像予測符号化方法及び装置 | |
JP3157144B1 (ja) | 画像予測復号化方法 | |
JP3343553B1 (ja) | 画像予測符号化装置及び方法 | |
JP2002359852A (ja) | 画像予測復号化装置及び方法 | |
KR20170120634A (ko) | 벡터 양자화에 의한 이미지들의 인코딩 | |
JP3857297B2 (ja) | 画像予測符号化方法及び装置 | |
KR20150096353A (ko) | 이미지 인코딩 시스템, 디코딩 시스템 및 그 제공방법 | |
CN112019855A (zh) | 一种视频编码方法、装置及计算机设备 | |
JP3237029B2 (ja) | 動画像圧縮装置 | |
CN115834882A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |