CN115834882A - 一种帧内预测方法、装置、电子设备及存储介质 - Google Patents
一种帧内预测方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115834882A CN115834882A CN202211485667.6A CN202211485667A CN115834882A CN 115834882 A CN115834882 A CN 115834882A CN 202211485667 A CN202211485667 A CN 202211485667A CN 115834882 A CN115834882 A CN 115834882A
- Authority
- CN
- China
- Prior art keywords
- intra
- frame
- frame prediction
- video frame
- mode
- 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
技术领域
本发明涉及视频处理技术领域,特别是涉及帧内预测方法、装置、电子设备及存储介质。
背景技术
随着技术的进步,人们对多媒体娱乐的要求也越来越高,视频内容的分辨率、帧率都在提高,从而导致带宽和存储的成本也不断上升。因此需要对视频进行编码,以降低带宽和存储的成本,在这种背景下,新一视频编码标准:多功能视频编码(Versatile VideoCoding,VVC)被制定出来,VVC相对于高效率视频编码(High Efficiency Video Coding,HEVC)(目前编码效率最高的编码标准之一)能节省30%的码率。但是复杂度也是HEVC的10倍,很耗费计算资源和成本。帧内预测是视频编码过程中非常耗时的一个过程,会导致视频编码过程变得复杂,因此如何降低帧内预测的复杂度成为亟待解决的问题。
发明内容
本发明实施例的目的在于提供一种帧内预测方法、装置、电子设备及存储介质,以降低帧内预测的复杂度。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种帧内预测方法,所述方法包括:
获取待编码的编码块,所述编码块是待编码视频帧对应的编码块;
获取所述待编码视频帧对应的模式选择标识信息,所述模式选择标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式;
在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含所述预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
在一种可能的实施方式中,所述模式选择标识信息包括高边缘视频帧标识信息和非高边缘视频帧标识信息,所述高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式,所述非高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式。
在一种可能的实施方式中,在所述获取所述待编码视频帧对应的模式选择标识信息之前,所述方法还包括:
利用边缘检测算法,对所述待编码视频帧进行边缘检测,得到所述待编码视频帧的边缘像素的像素值;其中,除所述边缘像素以外的像素为非边缘像素;
在所述边缘像素的像素值与所述边缘像素相邻的非边缘像素的像素值的差值的绝对值大于第一预设阈值的情况下,将所述边缘像素作为强边缘像素;
在所述待编码视频帧中的强边缘像素占所有边缘像素的比例大于第二预设阈值的情况下,对所述待编码视频帧标识高边缘视频帧标识信息;
在所述待编码视频帧中的强边缘像素占所有边缘像素的比例小于或等于第二预设阈值的情况下,对所述待编码视频帧标识非高边缘视频帧标识信息。
在一种可能的实施方式中,在所述获取所述待编码视频帧对应的模式选择标识信息之后,所述方法还包括:
在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式的情况下,从包含所述预设帧内预测模式的多种帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
在一种可能的实施方式中,所述预设帧内预测模式为基于块的增量脉冲译码调制BDPCM模式,所述其他帧内预测模式包括直流DC模式、平面PLANAR模式、角度模式。
在一种可能的实施方式中,述从不包含所述预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测,包括:
针对其他帧内预测模式中的每一帧内预测模式,分别计算所述帧内预测模式对应的所述待编码视频帧中的编码块的预测像素值,得到多个预测像素值;
基于所述多个预测像素值,分别计算所述帧内预测模式对应的率失真代价值;
选择所述其他帧内预测模式中率失真代价值最小的帧内预测模式,作为目标帧内预测模式,并利用所述目标帧内预测模式对所述编码块进行帧内预测。
在本发明实施的第二方面,还提供了一种帧内预测装置,所述装置包括:
第一获取模块,用于获取待编码的编码块,所述编码块是待编码视频帧对应的编码块;
第二获取模块,用于获取所述待编码视频帧对应的模式选择标识信息,所述模式选择标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式;
第一预测模块,用于在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含所述预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
在一种可能的实施方式中,所述模式选择标识信息包括高边缘视频帧标识信息和非高边缘视频帧标识信息,所述高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式,所述非高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式。
在一种可能的实施方式中,在所述获取所述待编码视频帧对应的模式选择标识信息之前,所述装置还包括:
边缘检测模块,用于利用边缘检测算法,对所述待编码视频帧进行边缘检测,得到所述待编码视频帧的边缘像素的像素值;其中,除所述边缘像素以外的像素为非边缘像素;
强边缘像素生成模块,用于在所述边缘像素的像素值与所述边缘像素相邻的非边缘像素的像素值的差值的绝对值大于第一预设阈值的情况下,将所述边缘像素作为强边缘像素;
第一标识模块,用于在所述待编码视频帧中的强边缘像素占所有边缘像素的比例大于第二预设阈值的情况下,对所述待编码视频帧标识高边缘视频帧标识信息;
第二标识模块,用于在所述待编码视频帧中的强边缘像素占所有边缘像素的比例小于或等于第二预设阈值的情况下,对所述待编码视频帧标识非高边缘视频帧标识信息。
在一种可能的实施方式中,在所述获取所述待编码视频帧对应的模式选择标识信息之后,所述装置还包括:
第二预测模块,用于在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式的情况下,从包含所述预设帧内预测模式的多种帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
在一种可能的实施方式中,所述预设帧内预测模式为基于块的增量脉冲译码调制BDPCM模式,所述其他帧内预测模式包括直流DC模式、平面PLANAR模式、角度模式。
在一种可能的实施方式中,第一预测模块,具体用于针对其他帧内预测模式中的每一帧内预测模式,分别计算所述帧内预测模式对应的所述待编码视频帧中的编码块的预测像素值,得到多个预测像素值;基于所述多个预测像素值,分别计算所述帧内预测模式对应的率失真代价值;选择所述其他帧内预测模式中率失真代价值最小的帧内预测模式,作为目标帧内预测模式,并利用所述目标帧内预测模式对所述编码块进行帧内预测。
根据本发明实施的第三方面,还提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信,
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面中任一所述的方法步骤。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的帧内预测方法。
在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的帧内预测方法。
本发明实施例提供了一种帧内预测方法,在对待编码视频帧中的编码块进行帧内预测之前,先获取编码块所属的待编码视频帧对应的模式选择标识信息,在模式选择标识信息标识在对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,仅从不包含预设帧内预测模型的其他帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测,相对于相关技术中,从包含预设帧内预测模式和其他帧内预测模式的所有帧内预测模式中选择目标帧内预测对编码块进行帧内预测,能够降低帧内预测的复杂度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的帧内预测方法的一种流程图。
图2为本发明实施例提供的VVC编码器的编码流程图。
图3为本发明实施例提供的获取模式选择标识信息的流程图。
图4为本发明实施例提供的强边缘像素与非强边缘像素的示意图。
图5为本发明实施例提供的对待编码视频帧标识高边缘视频帧标识信息或非高边缘视频帧标识信息的流程图。
图6为本发明实施例提供的选择目标帧内预测模式的算法流程图。
图7为本发明实施例提供的选择目标帧内预测模式的流程图。
图8为本发明实施例提供的待编码视频帧中编码块的参考像素的示意图。
图9为本发明实施例提供的角度模式示意图。
图10为本发明实施例提供的帧内预测装置的一种结构示意图。
图11为本发明实施例提供的一种电子设备结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
为了便于理解,此处对帧内预测的相关内容进行以下说明。
帧内预测是指在编码过程中,当前编码块参考相邻的像素得到预测像素值,将原始像素值减去预测像素值,得到残差像素值,最后对残差像素值进行变换、量化、熵编码得到最终的码流。对于一帧视频帧而言,相邻的两个像素的亮度和色度值之间通常是比较接近的,即颜色是逐渐变化的。帧内预测是利用视频的空间相关性,使用同一帧视频帧内邻近的已编码像素预测当前的像素,以达到有效去除视频的空间冗余的目的。
为了降低帧内预测的复杂度,本发明实施例提供了一种帧内预测方法、装置、电子设备及存储介质。
下面先对本发明实施例提供的帧内预测方法进行详细说明。
图1为本发明实施例提供的帧内预测方法的一种流程图。如图1所示,包括以下步骤:
步骤S101,获取待编码的编码块,编码块是待编码视频帧对应的编码块。
在对待编码视频帧进行编码之前可以先对待编码视频帧进行划分,得到编码块,这个过程可以理解为块划分。
对待编码视频帧进行块划分的的方式是多种多样的,可以根据实际需求和经验进行选择,作为一个示例,选择VVC中的划分方式,得到编码块CU。一帧待编码视频帧中包含多个编码块,从多个编码块中获取当前待编码的编码块。
例如,在HEVC中,首先将待编码视频帧划分为一系列编码树单元(coding treeunit,CTU),CTU的大小有16x16、32x32和64x64,一个CTU包含了同一位置处的一个亮度编码树块和两个色度编码树块。在HEVC中,一个CTU使用树结构划分为编码块(coding unit,CU),在进行帧内预测时,将CU作为叶子结点可以分为1个,2个个或者4个预测块(prediction unit,PU),每个PU内部使用相同的预测过程并发送给解码端。在VVC中,取消了复杂的CU、PU的概念区分,一个CU既可以是方形的,也可以是矩形的。VVC采用混合树的方式划分,CTU先划分为四叉树,然后四叉树的叶子节点可以继续进行不同的树划分,目前新引入了水平二叉树划分,垂直二叉树划分,水平三叉树划分和垂直三叉树划分。将这样划分产生的叶子节点称为CU,在当前划分使得CU大小满足限制条件的情况下,就可以对当前CU进行预测和变换过程,而不用再进行额外的划分。
步骤S102,获取待编码视频帧对应的模式选择标识信息,模式选择标识信息用于标识对待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式。
本发明实施例中可以基于预设的待编码视频帧的分类准则,对待编码视频帧进行分类,对不同的待编码视频帧标识不同的模式选择标识信息,例如,通过对待编码视频帧进行类别检测,基于检测结果确定模式选择标识信息。
一种可实现方式中,预先确定好待编码视频帧的模式选择标识信息,在帧内预测之前直接获取。例如,针对每一待编码视频帧进行图像分析,得到待编码视频帧的模式选择标识信息,并将各待编码视频帧的模式选择标识信息保存下来,如此,在帧内预测过程中获取编码块后,可以直接获取编码块对应的待编码视频帧的模式选择标识信息。
另一种可实现方式中,获取模式选择标识信息也可以是在对编码块进行帧内预测时边标识边获取等。
模式选择标识信息的形式可以是多种多样的,例如数字、文字等,不同的值表示不同的含义。以模式选择标识信息的形式是文字为例进行说明,如,当模式选择标识信息为“选择”时,表示对待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式;当模式选择标识信息为“不选择”时,表示对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式。
预设帧内预测模式可以根据实际需求、经验、实验等设置。预设帧内预测模式可以是帧内预测领域中所有帧内预测模式中的一种或多种,在所有帧内预测模式中除预设帧内预测模式以外的帧内预测模式为其他帧内预测模式。各个视频编码标准均包含多种帧内预测模式,例如,HEVC共有35种帧内预测模式,其中,包括一种直流(Direct Current,DC)模式、一种平面(PLANAR)模式和33种角度模式,当DC模式和PLANAR模式为预设帧内预测模式时,则其余33种角度模式为其他帧内预测模式;VVC共有67种帧内预测模式,其中,包括一种DC模式、一种PLANAR模式和65种角度模式,基于块的增量脉冲译码调制(BlockDifferential Pulse Coded Modulation,BDPCM)模式是VVC中新引入的一种帧内预测模式。当BDPCM模式为预设帧内预测模式时,则DC模式、PLANAR模式和65种角度模式为其他帧内预测模式。
步骤S103,在模式选择标识信息标识对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测。
从不包含预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测,可以包括分别计算其他帧内预测模式分别对应的率失真代价值,并选择其他帧内预测模式中率失真代价值最小的帧内预测模式,作为目标帧内预测模式。针对每一个帧内预测模式计算对应的率失真代价值可以包括:分别计算帧内预测模式对应的待编码视频帧中的编码块的预测像素值,得到多个预测像素值,基于多个预测像素值,计算该帧内预测模式计算对应的率失真代价值。其中,基于多个预测像素值,计算该帧内预测模式计算对应的率失真代价值在下述实施例中会进行详细说明,这里暂不赘述。
相关技术中,需要遍历所有帧内预测模式中每一种帧内预测模式,以从所有帧内预测模式中选择目标帧内预测模式,在本发明实施例中,在模式选择标识信息标识对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,无需再遍历所有帧内预测模式,仅需从不包含预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测,例如,帧内预测模式共有4类,本发明实施例中,在对编码块进行帧内预测的过程中不选择预设帧内预测模式,即从4类帧内预测模式中除去一类预设帧内预测模式,将候选帧内预测模式减少为3类,从而在帧内预测的过程中仅需从3类帧内预测模式中选择目标帧内预测模式即可。
本发明实施例提供了一种帧内预测方法,通过获取待编码的编码块,所述编码块是待编码视频帧对应的编码块;获取待编码视频帧对应的模式选择标识信息,模式选择标识信息用于标识对待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式;在模式选择标识信息标识对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含预设帧内预测模式的其他帧内预测模式中选择待使用帧内预测模式对编码块进行帧内预测。本发明实施例中,在对待编码视频帧中的编码块进行帧内预测之前,先获取编码块所属的待编码视频帧对应的模式选择标识信息,在模式选择标识信息标识在对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,仅从不包含预设帧内预测模型的其他帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测,相对于相关技术中,从包含预设帧内预测模式和其他帧内预测模式的所有帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测,能够降低帧内预测的复杂度。
进一步地,由于选择目标帧内预测模式的过程中需要计算候选帧内预测模式中每一种帧内预测模式对应的率失真代价值,相比于相关技术中,需要计算所有帧内预测模式对应的率失真代价值,本发明实施例中仅需计算除预设帧内预测模式之外的其他帧内预测模式对应的率失真代价值。因此,采用本发明实施例提供的帧内预测方法还可以减少计算成本,从而减少帧内预测过程的耗时。
在一种可能的实施方式中,在获取待编码视频帧对应的模式选择标识信息之后,上述帧内预测方法还包括以下步骤:
在模式选择标识信息标识对待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式的情况下,从包含预设帧内预测模式的多种帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测。
在模式选择标识信息标识对待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式时,即候选帧内预测模式中包含预设帧内预测模式。
本发明实施例中,根据模式选择标识信息标识的情形不同,针对待编码视频帧中的编码块进行帧内预测时,候选的帧内预测模式不同。即根据模式选择标识信息对待编码视频帧进行分类,不同的待编码视频帧对应不同的候选帧内预测模式,可以使帧内预测的流程步骤更加完整。
VVC是目前最新的视频编码标准,采用VVC对视频进行编码的过程中,可以使用上述帧内预测方法对待编码视频帧的编码块进行帧内预测。图2为本发明实施例提供的VVC编码器的编码流程图,参照图2,结合图1所示的帧内预测方法,对图2所示的编码流程图进行以下说明:
图2所示的VVC编码器的编码流程可以通过以下步骤实现:
S201,输入视频(Input video)。
S202,变换、量化(transform/quantization)
S203,帧内预测(Intra prediction);
S204;运动补偿、运动估计(Motion est./comp.);
S205,熵编码(Entropy coding);
S206,反量化、反变换(inv.quant/inv.transform);
S207,环路滤波器(In loop filter);
S208,参考帧缓存(decoded picture buffer)。
首先进行预测编码,帧内预测编码可以采用帧内预测或者帧间预测。通常帧间预测性编码包括运动补偿、运动估计。
在帧内预测前,首先将输入视频转换为多个待编码视频帧,对待编码视频帧标识模式选择标识信息,在对待编码视频帧中的编码块进行帧内预测时,获取待编码视频帧对应的模式选择标识信息,模式选择标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式,在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含所述预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。相对于相关技术中,在进行帧内预测时,需要从所有帧内预测模式中选择目标帧内预测模式,本发明实施例中,在进行进行帧内预测时,仅需从不包含预测模式的其他帧内预测模式中选择目标帧内预测模式,可以降低帧内预测的复杂度。由于在选择目标帧内预测模式的过程中需要计算各候选帧内预测模式对应的预测像素值、率失真代价值等,因此,本发明实施例中,在对编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,则无需计算预设帧内预测模式对应的预测像素值、率失真代价值等,因此能够减少计算成本,从而减少帧内预测过程的耗时。
输入视频经过帧内预测或者帧间预测得到的预测残差像素值作变换、量化,具体地,对预测残差像素值进行变换,得到变换系数,对变换系数进行量化,得到量化系数。
量化之后进行熵编码,进而可以得到编码结果。
其中,变换可以包括主变换、二次变换,主变换可以采用离散余弦变换,二次变换可以采用低频不可分变换。
相关技术中首先输入一帧待编码的图像,按照CTU(例如128X128大小的正方形块)为单位逐个进行编码。然后对CTU进行块划分,划分为CU。然后进行预测编码(包括帧内预测、帧间预测模式,二选一),然后进行变换、量化、最后进行熵编码。为了得到参考帧,需要对变换量化之后的数据进行反变换、反量化,然后加上预测块,得到重建块,重建块进行滤波得到最终重建块,保存到DPB(decoded picture buffer)中,用于帧间预测备用。
例如,输入视频帧之后,先对视频帧进行图像分析,判断是否关闭二次变换并记录下来,如此,在视频编码过程中,根据记录的信息判断是否对视频帧的编码块进行二次变换。如果当前帧被判定为需要开启LFNST,则标记下来,后面对这帧所有的块进行变换的时候,都先做主变换,再做二次变换。如果当前帧被判定为不需要做LFNST,也标记下来,则后面对这帧所有的块进行变换的时候,都只做主变换,不做二次变换。
具体地确定二次变换标识信息以及基于二次变换标识信息判断是跳过二次变换还是进行二次变换在上述实施例中已经进行了详细说明,这里不再赘述。
熵编码是将得到的所有数据包括运动矢量、残差的量化系数、还有预测性编码的一些参数进行压缩。熵编码包括可变长度编码,算术编码和霍夫曼编码。
后续可以对编码结果进行解码。视频解码可以看作视频编码的逆过程,对应于变换、量化,将反量化后得到的系数进行反变换后得到残差数据。
在视频解码时,根据熵编码的类型,将编码的数据展开,得到转换编码数据,
对应编码过程,转换编码数据包括运动矢量、残差的量化系数、还有预测性编码的一些参数。
具体地,可以对编码结果进行反量化、反变换等。
环路滤波器是线性的低通滤波器,通过环路滤波器可以滤除高频分量和噪声。根据帧间预测或帧内预测的预测模式,在参考帧缓存的基础上,处理运动矢量,产生预测帧,在预测帧的基础上,叠加残差数据,得到当前帧,实现对编码视频的解码。
对应变换过程中可以包括主变换、二次变换,在视频解码过程中,反变换可以包括反主变换、反二次变换,反主变换可以理解为上述主变换的逆过程,反二次变换可以理解为上述二次变换的逆过程。本发明实施例中,针对视频帧的变那块,可以获取编码块对应的标志位;若标志位标识在视频编码过程中针对编码块未进行低频不可分变换,则在针对编码块的编码结果进行反量化之后跳过反低频不可分变换而进行后续解码过程。
由于图1所示的帧内预测方法能够降低帧内预测的复杂度、减少计算成本,从而减少帧内预测过程的耗时,则将图1所示的帧内预测方法应用于VVC的编码过程中,可以降低视频编码的复杂度,减少计算成本,从而降低视频编码的耗时。另外,由于VVC的复杂度过高,限制了在VVC在帧内预测中的实用性,采用本发明实施例提供的帧内预测方法,可以有效节省计算和带宽成本,提高VVC在帧内预测中的实用性,有利于提高VVC使用的成熟度。进而在基于VVC对视频进行编码、解码时,可以提升终端的视频呈现效果,因此,可以提升观看视频的用户的观影体验。
在一种可能的实施方式中,模式选择标识信息包括高边缘视频帧标识信息和非高边缘视频帧标识信息,高边缘视频帧标识信息用于标识对待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式,非高边缘视频帧标识信息用于标识对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式。
可以对待编码视频帧进行检测,将待编码视频帧分为高边缘视频帧和非高边缘视频帧,例如,高边缘视频帧中包含较多的高频信号,可以对待编码视频帧进行信号检测,将待编码视频帧中包含高频信号的数量大于预设阈值的待编码视频帧确定为高边缘视频帧,将高边缘视频帧以外的待编码视频帧确定为非高边缘视频帧。高边缘视频帧与非高边缘视频帧中图像的边缘存在差异,因此可以基于边缘存在的差异,通过边缘检测算法对待编码视频帧进行检测,将待编码视频帧分为高边缘视频帧和非高边缘视频帧。然后,对高边缘视频帧标识高边缘视频帧标识信息,对非高边缘视频帧标识非高边缘视频帧标识信息。
高边缘视频帧包含比较多的高频信号,对高边缘视频帧进行变换,并不能达到信息量减少的目的,甚至有可能使得信息量增多,故而不能提高压缩率,而一些帧内预测模式由于跳过了变换过程,直接对空域信号进行量化和熵编码,因此对高边缘视频帧的预测效果更好。
高边缘视频帧标识信息和非高边缘视频帧标识信息可以采用不同的形式表示,如文字、数字等。
本发明实施例中,模式选择标识信息包括高边缘视频帧标识信息和非高边缘视频帧标识信息,利用边缘强度检测算法对待编码视频帧进行检测,将待编码视频帧分为高边缘视频帧和非高边缘视频帧,分别对高边缘视频帧和非高边缘视频帧标识对应的模式选择标识信息,有利于在后续的帧内预测过程中,基于待编码视频帧对应的模式选择标识信息得到对应的候选帧内预测模式。
基于高边缘视频帧和非高边缘视频帧之间存在的差异,将待编码视频帧分为高边缘视频帧和非高边缘视频帧。对待编码视频帧标识高边缘视频帧标识信息或非高边缘视频帧标识信息的方式可以是多种多样的,例如,对待编码视频帧进行信号检测、对待编码视频帧进行信号检测,基于检测结果,对对待编码视频帧标识高边缘视频帧标识信息或非高边缘视频帧标识信息。
在一种可能的实施方式中,如图3所示,获取待编码视频帧对应的模式选择标识信息之前,上述帧内预测方法还包括以下步骤:
步骤S301,利用边缘检测算法,对待编码视频帧进行边缘检测,得到待编码视频帧的边缘像素的像素值;其中,除边缘像素以外的像素为非边缘像素。
上述边缘检测算法可以是拉普拉斯边缘检测算法、差分边缘检测算法等,具体可以根据实际需求或经验进行选择。图像边缘是图像最基本的特征,所谓边缘(Edge)是指图像局部特性的不连续性,灰度或结构等信息的突变处称之为边缘。例如,灰度级的突变、颜色的突变、纹理结构的突变等,即像素值突变。边缘是一个区域的结束,也是另一个区域的开始,利用该特征可以提取图像边缘。利用边缘检测算法对对待编码视频帧进行边缘检测,可以得到到编码视频帧中对象的边缘像素的像素值,例如,待编码视频中的图像是一个苹果的图像,则可以得到苹果的边缘像素的像素值。
步骤S302,在边缘像素的像素值与边缘像素相邻的非边缘像素的像素值的差值的绝对值大于第一预设阈值的情况下,将边缘像素作为强边缘像素。
第一预设阈值可以根据实际需求或经验进行设置,针对不同的待编码视频帧,第一预设阈值可以相同也可以不同。
如图4所示,为本发明实施例提供的强边缘像素与非强边缘像素的示意图,图4中,A为非强边缘像素,B为强边缘像素。
步骤S303,在待编码视频帧中的强边缘像素占所有边缘像素的比例大于第二预设阈值的情况下,对待编码视频帧标识高边缘视频帧标识信息。
第二预设阈值可以根据实际需求或经验进行设置,例如,设置为85%、90%等。作为一个示例,对待编码视频帧标识高边缘视频帧标识信息可以是标识Flag=1。
步骤S304,在待编码视频帧中的强边缘像素占所有边缘像素的比例小于或等于第二预设阈值的情况下,对待编码视频帧标识非高边缘视频帧标识信息。
作为一个示例,对待编码视频帧标识非高边缘视频帧标识信息可以是标识Flag=0。
本发明实施例中,对待编码视频帧进行边缘检测,得到边缘像素的像素值,基于第一预设阈值,得到边缘像素中的强边缘像素,然后根据强边缘像素占所有边缘像素的比例是否大于第二预设阈值,对待编码视频帧标识高边缘视频帧标识信息或标识非高边缘视频帧标识信息。根据对待编码视频帧标识的高边缘视频帧标识信息或非高边缘视频帧标识信息,有利于在后续的帧内预测过程中,基于待编码视频帧的标识信息得到对应的候选帧内预测模式。
图5为本发明实施例提供的获取模式选择标识信息的流程图,如图5所示,在编码前先对待编码视频帧进行分析,利用边缘强度检测算法对待编码视频帧进行检测,判断待编码视频帧是否为高边缘视频帧,如果是,则对待编码视频帧标识高边缘视频帧标识Flag=1,如果否,则对待编码视频帧标识非高边缘视频帧标识Flag=0。
在一种可能的实施方式中,所述预设帧内预测模式为基于块的增量脉冲译码调制BDPCM模式,所述其他帧内预测模式包括直流DC模式、平面PLANAR模式、角度模式。
BDPCM模式包括水平BDPCM模式和垂直BDPCM模式,在预设帧内预测模式为BDPCM模式的情况下,则可以根据待编码视频帧对应的模式选择标识信息确定候选帧内预测模式是否包含BDPCM模式。作为一个示例,当待编码视频帧对应的模式选择标识信息为高边缘视频帧标识信息时,候选帧内预测模式包含BDPCM模式;当待编码视频帧对应的模式选择标识信息为非高边缘视频帧标识信息时,候选帧内预测模式不包含BDPCM模式。
BDPCM模式对于高边缘视频帧的预测效果优于对非高边缘视频帧的预测效果。因为高边缘视频帧包含比较多的高频信号,对高边缘视频帧进行变换,并不能达到信息量减少的目的,甚至有可能使得信息量增多,故而不能提高压缩率,而BDPCM模式跳过了变换过程,直接对空域信号进行量化和熵编码。所以BDPCM模式对高边缘视频帧的预测效果更好。
因为BDPCM模式对高边缘视频帧的预测效果优于对非高边缘视频帧的预测效果,因此在对视频进行编码前,对待编码视频中的待编码视频帧提前进行分析,将待编码视频帧分为高边缘视频帧和非高边缘视频帧,对高边缘视频帧提前打开BDPCM模式,对非高边缘视频帧提前关闭BDPCM模式。具体可参照图6,图6为本发明实施例提供的选择目标帧内预测模式的算法流程图,如图6所示,对于待编码视频帧中的编码块依次通过直流DC模式、平面PLANAR模式、角度模式分别计算此三种帧内预测模式对应的编码块的预测像素值,然后判断当前编码块所属的待编码视频帧对应的标识Flag(相当于上述模式选择标识信息)取值是否为1(相当于判断当前编码块所属的待编码视频帧是否为高边缘视频帧),如果是,继续通过基于块的增量脉冲译码调制BDPCM模式计算编码块的预测像素值,根据DC模式、PLANAR模式、角度模式、BDPCM模式分别对应的编码块的预测像素值,选择出目标帧内预测模式;如果否,则根据DC模式、PLANAR模式、角度模式分别对应的编码块的预测像素值,选择出目标帧内预测模式,结束END即为得到目标帧内预测模式。图6所示的执行过程仅为示意,本发明中并不对不同的帧内预测模式的执行顺序进行限定,不同的帧内预测模式可以按照任意的先后顺序执行。
为了便于理解当预设帧内预设模式为BDPCM模式时,本发明实施提供的帧内预测方法的流程,现对BDPCM模式的原理进行以下说明:
VVC视频编码支持BDPCM帧内预测模式,在待编码视频帧的序列级,BDPCM使能开关在序列参数集(Sequence Paramater Set,SPS)中标志;这个标志位只有在变换跳过模式(Transform Skip,TS)工具打开的时候才标志。
当BDPCM打开的时候,如果CU的大小小于或者等于最大变换跳过模式尺寸(MaxTsSize×MaxTsSize),且CU是帧内预测单编码块,CU级别将会传输一个标志位。MaxTsSize是TS工具允许的最大CU块。这个标志位标志当前块是采用常规的帧内预测模式还是BCPCM模式。如果是BDPCM模式,一个BDPCM预测方向的符号将会传输,用于标志当前块采用的是水平还是垂直方向的预测。然后,这个块会利用未滤波的参考像素进行常规的水平或者垂直的帧内预测。残差像素值被量化,量化后的残差像素值和预测像素值之间的差值被编码。
对一个大小为M(高)×N(宽)的编码块,ri,,0≤i≤M-1,0≤j≤N-1为第i行,第j列的预测残差。Q(ri,),0≤i≤M-1,0≤j≤N-1为量化后的残差ri,j,即对预测残差ri,j进行量化后的值。BDPCM应用在量化后的残差,得到一个修改后的M×N矩阵其中的元素为通过相邻的量化后的残差像素值预测得来,即经过BDPCM预测模式预测得到。对于垂直的BDPCM预测模式,0≤j≤(N-1),
在解码端,上述的流程的逆过程用来计算Q(ri,j),0≤i≤M-1,0≤j≤N-1,
反量化后的残差Q-1(Q(ri,)),和帧内预测值相加得到重建像素。
预测的量化后的残差值被传输到解码器。使用相同的残差编码流程和在TS模式中的一致。对于无损编码,如果slice_ts_residual_coding_disabled_flag设置为1,量化后的残差像素值被传输到解码器,采用常规的变化残差编码。对于多路处理模块(multi-processing module,MPM)模式,水平或者垂直预测模式存储起来,如果BDPCM预测方向是相应的水平或者垂直模式。对于去块效应滤波,如果边界的相邻块都采用了BDPCM编码,则这个边界不进行滤波。
采用本发明实施例提供的选择目标帧内预测模式的算法,可以使编码器的编码速度是增加为不使用此算法的1.06倍,同时编码损失效率较小,在峰值信噪比(Peak Signalto Noise Ratio,PSNR)对齐的情况下,码率只增加0.03%,在结构相似性(structuralsimilarity,SSIM)对齐的情况下,码率仅增加0.012%。在PSNR指标下此算法性价比(CP-PSNR)的计算公式为:(加速比-1)×100/bdrate-psnr,其中,bdrate-psnr表示在PSNR指标下该算法编码的视频的码率变化情况,将数据代入该公式得到:(1.06-1)×100/0.03=200。在SSIM指标下此算法性价比(CP-SSIM)的计算公式为:(加速比-1×100/bdrate-ssim,其中,bdrate-ssim表示在SSIM指标下该算法编码的视频的码率变化情况,将数据代入该公式得到:(1.06-1)×100/0.012=50。
相关技术中,从所有帧内预测模式中选择目标帧内预测模式是分别采用每一种帧内预测模式对编码块进行预测,最终通过率失真优化(Rate distortion optimize,RDO)得到目标帧内预测模式。
本发明实施例中,预设帧内预测模式为BDPCM模式,采用本发明实施例提供的选择目标帧内预测模式的算法,在当前编码块所属的待编码视频帧不为高边缘视频帧时,仅需遍历DC模式、PLANAR模式、角度模式即可选出目标帧内预测模式,可以有效减少帧内预测的耗时,降低帧内预测的复杂度。
在一种可能的实施方式中,如图7所示,从不包含预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测,包括以下步骤:
步骤S701,针对其他帧内预测模式中的每一帧内预测模式,分别计算帧内预测模式对应的待编码视频帧中的编码块的预测像素值,得到多个预测像素值。
步骤S702,基于多个预测像素值,分别计算帧内预测模式对应的率失真代价值。
步骤S703,选择其他帧内预测模式中率失真代价值最小的帧内预测模式,作为目标帧内预测模式,并利用目标帧内预测模式对编码块进行帧内预测。
其中,上述步骤S701具体可以包含以下步骤:
步骤A,获取待编码视频帧中的编码块的相邻参考像素。
参考图8,为待编码视频帧中当前编码块的参考像素的示意图,如图8左边的示意图所示,当前编码块的大小为NxN,N为大于1的整数,编码块的参考像素按区域可分成5部分,左下(相当于图中p[-1][2N-1])、左侧(相当于图中p[-1][N-1])、左上(相当于图中p[-1][-1])、上方(相当于图中p[0][-1])和右上(相当于图中p[2N-1][-1]),一共4xN+1个点,在图中分别用A、B、C、D表示左侧区域的参考像素,分别用E、F、G、H表示上方区域的参考像素。在一些情况下,可能会会存在相邻参考像素可能会不存在或不可用,例如,当前CU位于图像边界、条带(Slice)边界、瓦片(Tile)边界或左下或右上所在的编码块可能尚未编码。当相邻参考像素不存在或不可用时,可以使用最邻近的像素进行填补,例如左下的参考像素不存在,则左下区域的所有参考像素可使用左侧区域最下方的像素进行填补,参考图8中右边的示意图,用A填补左下区域;若右上区域的参考像素不存在,则可以使用上方区域最右侧的像素进行填补,参考图8中右边的示意图,用H填补右上区域。
在所有相邻参考像素都可用的情况下,则所有的参考像素都用固定值填充,例如,对于对于8比特像素,编码块的预测像素值为128,对于10比特像素,编码块的预测像素值为512。
步骤B,对相邻参考像素进行滤波,得到滤波后的相邻参考像素。
对相邻参考像素进行滤波时可以采用预设滤波算法,例如使用高斯插值滤波器、1:2:1的滤波器等进行滤波。
步骤C,基于滤波后相邻参考像素和其他帧内预测模式中的每一帧内预测模式,分别计算帧内预测模式对应的待编码视频帧中的编码块的预测像素值,得到多个预测像素值。
针对不同的帧内预测模式可以采用不同的计算方式得到编码块的预测像素值。对于DC预测模式,所有的预测像素值采用同一数值,该数值由左方和上方的相邻参考像素的像素值的平均值生成。
对于角度模式,参考图9所示的角度模式示意图,可以得到编码块的预测像素值。图9所示的角度预测模式以HEVC中的角度预测模式做为示例,角度预测方向总共有33种,其中编号2到17的角度预测模式为水平类模式,编号为18到34的角度预测模式为垂直类模式,编号为10的为水平预测,编号为26的位垂直预测模式。在具体的帧内预测过程中,根据选定的帧内预测模式,图9中右边的示意图以编号为29的角度预测模式为例,通过使用“投影像素”法将其需要用到的已编码的参考像素映射到当前编码块中,变为一维的形式,得到编码块的预测像素值。
对于BDPCM模式,具体可以采用水平BDPCM模式和垂直BDPCM模式得到编码块的预测像素值,水平BDPCM模式即对于编码块按照水平方向进行预测,垂直BDPCM模式即对于编码块按照垂直方向进行预测。
步骤S702中,率失真代价值(RD cost)可以通过公式J=D+Lambda×R计算得到。J表示率失真代价,D表示失真程度,即接收短信号与源信号的差异程度,Lambda为拉格朗日参数,R为比特率。
步骤S703中,将目标帧内预测模式对应的编码块的预测像素值,作为编码块的预测像素值。
本发明实施例中,仅从不包含预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式,将率失真代价值最小的帧内预测模式作为目标帧内预测模式,计算率失真代价值需要先计算帧内预测模式对应的编码块的预测像素值,再基于预测像素值计算率失真代价值,即计算率失真代价值是一个较为复杂的过程。本发明实施例中,仅需要计算不包含预设帧内预测模式的其他帧内预测模式对应的率失真代价值,而无需计算预设帧内预测模式对应的率失真代价值相比于相关技术中,需要计算包含预设帧内预测模式和其他帧内预测模式的所有帧内预测模式,能够减少计算成本,减少帧内预测的耗时,进一步地,可以使帧内预测的过程变得更加便捷。
图10为本发明实施例提供的帧内预测装置的一种结构示意图,参照图10,该装置包括:
第一获取模块1001,用于获取待编码的编码块,所述编码块是待编码视频帧对应的编码块;
第二获取模块1002,用于获取所述待编码视频帧对应的模式选择标识信息,所述模式选择标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式;
第一预测模块1003,用于在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含所述预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
本发明实施例中,通过获取待编码的编码块,所述编码块是待编码视频帧对应的编码块;获取待编码视频帧对应的模式选择标识信息,模式选择标识信息用于标识对待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式;在模式选择标识信息标识对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含预设帧内预测模式的其他帧内预测模式中选择待使用帧内预测模式对编码块进行帧内预测。本发明实施例中,在对待编码视频帧中的编码块进行帧内预测之前,先获取编码块所属的待编码视频帧对应的模式选择标识信息,在模式选择标识信息标识在对待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,仅从不包含预设帧内预测模型的其他帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测,相对于相关技术中,从包含预设帧内预测模式和其他帧内预测模式的所有帧内预测模式中选择目标帧内预测模式对编码块进行帧内预测,能够降低帧内预测的复杂度。
在一种可能的实施方式中,所述模式选择标识信息包括高边缘视频帧标识信息和非高边缘视频帧标识信息,所述高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式,所述非高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式。
在一种可能的实施方式中,在所述获取所述待编码视频帧对应的模式选择标识信息之前,所述装置还包括:
边缘检测模块,用于利用边缘检测算法,对所述待编码视频帧进行边缘检测,得到所述待编码视频帧的边缘像素的像素值;其中,除所述边缘像素以外的像素为非边缘像素;
强边缘像素生成模块,用于在所述边缘像素的像素值与所述边缘像素相邻的非边缘像素的像素值的差值的绝对值大于第一预设阈值的情况下,将所述边缘像素作为强边缘像素;
第一标识模块,用于在所述待编码视频帧中的强边缘像素占所有边缘像素的比例大于第二预设阈值的情况下,对所述待编码视频帧标识高边缘视频帧标识信息;
第二标识模块,用于在所述待编码视频帧中的强边缘像素占所有边缘像素的比例小于或等于第二预设阈值的情况下,对所述待编码视频帧标识非高边缘视频帧标识信息。
在一种可能的实施方式中,在所述获取所述待编码视频帧对应的模式选择标识信息之后,所述装置还包括:
第二预测模块,用于在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式的情况下,从包含所述预设帧内预测模式的多种帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
在一种可能的实施方式中,所述预设帧内预测模式为基于块的增量脉冲译码调制BDPCM模式,所述其他帧内预测模式包括直流DC模式、平面PLANAR模式、角度模式。
在一种可能的实施方式中,第一预测模块,具体用于针对其他帧内预测模式中的每一帧内预测模式,分别计算所述帧内预测模式对应的所述待编码视频帧中的编码块的预测像素值,得到多个预测像素值;基于所述多个预测像素值,分别计算所述帧内预测模式对应的率失真代价值;选择所述其他帧内预测模式中率失真代价值最小的帧内预测模式,作为目标帧内预测模式,并利用所述目标帧内预测模式对所述编码块进行帧内预测。
本发明实施例还提供了一种电子设备,如图11所示,包括处理器1101、通信接口1102、存储器1103和通信总线1104,其中,处理器1101,通信接口1102,存储器1103通过通信总线1104完成相互间的通信,
存储器1103,用于存放计算机程序;
处理器1101,用于执行存储器1103上所存放的程序时,实现上述任一所述的帧内预测方法的方法步骤。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中任一所述的帧内预测方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的帧内预测方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、存储介质及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种帧内预测方法,其特征在于,所述方法包括:
获取待编码的编码块,所述编码块是待编码视频帧对应的编码块;
获取所述待编码视频帧对应的模式选择标识信息,所述模式选择标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式;
在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含所述预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
2.根据权利要求1所述的方法,其特征在于,所述模式选择标识信息包括高边缘视频帧标识信息和非高边缘视频帧标识信息,所述高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式,所述非高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式。
3.根据权利要求2所述的方法,其特征在于,在所述获取所述待编码视频帧对应的模式选择标识信息之前,所述方法还包括:
利用边缘检测算法,对所述待编码视频帧进行边缘检测,得到所述待编码视频帧的边缘像素的像素值;其中,除所述边缘像素以外的像素为非边缘像素;
在所述边缘像素的像素值与所述边缘像素相邻的非边缘像素的像素值的差值的绝对值大于第一预设阈值的情况下,将所述边缘像素作为强边缘像素;
在所述待编码视频帧中的强边缘像素占所有边缘像素的比例大于第二预设阈值的情况下,对所述待编码视频帧标识高边缘视频帧标识信息;
在所述待编码视频帧中的强边缘像素占所有边缘像素的比例小于或等于第二预设阈值的情况下,对所述待编码视频帧标识非高边缘视频帧标识信息。
4.根据权利要求1所述的方法,其特征在于,在所述获取所述待编码视频帧对应的模式选择标识信息之后,所述方法还包括:
在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式的情况下,从包含所述预设帧内预测模式的多种帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述预设帧内预测模式为基于块的增量脉冲译码调制BDPCM模式,所述其他帧内预测模式包括直流DC模式、平面PLANAR模式、角度模式。
6.根据权利要求1至4任一项所述的方法,所述从不包含所述预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测,包括:
针对其他帧内预测模式中的每一帧内预测模式,分别计算所述帧内预测模式对应的所述待编码视频帧中的编码块的预测像素值,得到多个预测像素值;
基于所述多个预测像素值,分别计算所述帧内预测模式对应的率失真代价值;
选择所述其他帧内预测模式中率失真代价值最小的帧内预测模式,作为目标帧内预测模式,并利用所述目标帧内预测模式对所述编码块进行帧内预测。
7.一种帧内预测装置,其特征在于,所述装置包括:
第一获取模块,用于获取待编码的编码块,所述编码块是待编码视频帧对应的编码块;
第二获取模块,用于获取所述待编码视频帧对应的模式选择标识信息,所述模式选择标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中是否选择预设帧内预测模式;
第一预测模块,用于在所述模式选择标识信息标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式的情况下,从不包含所述预设帧内预测模式的其他帧内预测模式中选择目标帧内预测模式对所述编码块进行帧内预测。
8.根据权利要求7所述的装置,其特征在于,所述模式选择标识信息包括高边缘视频帧标识信息和非高边缘视频帧标识信息,所述高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中选择预设帧内预测模式,所述非高边缘视频帧标识信息用于标识对所述待编码视频帧中的编码块进行帧内预测过程中不选择预设帧内预测模式。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211485667.6A CN115834882A (zh) | 2022-11-24 | 2022-11-24 | 一种帧内预测方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211485667.6A CN115834882A (zh) | 2022-11-24 | 2022-11-24 | 一种帧内预测方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115834882A true CN115834882A (zh) | 2023-03-21 |
Family
ID=85531349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211485667.6A Pending CN115834882A (zh) | 2022-11-24 | 2022-11-24 | 一种帧内预测方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115834882A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118509607A (zh) * | 2024-07-19 | 2024-08-16 | 典基网络科技(上海)有限公司 | 一种基于边缘计算的实时视频处理和智能分析方法 |
-
2022
- 2022-11-24 CN CN202211485667.6A patent/CN115834882A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118509607A (zh) * | 2024-07-19 | 2024-08-16 | 典基网络科技(上海)有限公司 | 一种基于边缘计算的实时视频处理和智能分析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3448038B1 (en) | Decoding method for intra predicting a block by first predicting the pixels at the boundary | |
US8634464B2 (en) | Video compression and encoding method | |
WO2020259631A1 (en) | Signaling coding of transform-skipped blocks | |
US11695962B2 (en) | Encoding and decoding methods and corresponding devices | |
CN111316642B (zh) | 信令图像编码和解码划分信息的方法和装置 | |
KR20080018469A (ko) | 영상 변환 방법 및 장치, 역변환 방법 및 장치 | |
KR20090087767A (ko) | 영상의 인트라 예측 부호화 방법 | |
CN111684810A (zh) | 数据编码和解码 | |
CN112543337B (zh) | 视频解码方法、装置、计算机可读介质及电子设备 | |
CN112565751B (zh) | 视频解码方法、装置、计算机可读介质及电子设备 | |
US20230056211A1 (en) | Video encoding method and apparatus, video decoding method and apparatus, computer program product, computer-readable storage medium, and electronic device | |
KR20200096227A (ko) | 블록 형상에 기초한 비디오 인코딩 및 디코딩을 위한 방법 및 장치 | |
JP2016134860A (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム | |
CN115834882A (zh) | 一种帧内预测方法、装置、电子设备及存储介质 | |
US10015484B2 (en) | Adaptive scan device and method for scanning thereof | |
JP2024533258A (ja) | ビデオ符号化における変換係数の残差符号予測の改良 | |
CN116982262A (zh) | 视频编码中依赖性量化的状态转换 | |
JP2019036772A (ja) | 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム | |
JP2024511272A (ja) | イントラ予測方法、符号器、復号器及び記憶媒体 | |
JP6992825B2 (ja) | 映像符号化装置、映像符号化方法、映像復号装置、映像復号方法、及び映像符号化システム | |
KR101796876B1 (ko) | 움직임 추정을 이용한 영상 부호화 방법 및 장치 | |
JP2017073602A (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム | |
RU2800683C2 (ru) | Способ и устройство предсказывания компонента видеоизображения и компьютерный носитель данных | |
CN114079772B (zh) | 视频解码方法、装置、计算机可读介质及电子设备 | |
CN114079773B (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 |