CN109788287A - 视频编码方法、装置、计算机设备和存储介质 - Google Patents
视频编码方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109788287A CN109788287A CN201711107801.8A CN201711107801A CN109788287A CN 109788287 A CN109788287 A CN 109788287A CN 201711107801 A CN201711107801 A CN 201711107801A CN 109788287 A CN109788287 A CN 109788287A
- Authority
- CN
- China
- Prior art keywords
- prediction mode
- rate distortion
- target code
- distortion costs
- code unit
- 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.)
- Granted
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及一种视频编码方法、装置、计算机设备和存储介质,方法包括:获取未分割预测模式下目标编码单元对应的第一率失真代价;对目标编码单元进行划分得到下一层对应的子编码单元集,统计各个子编码单元对应的子单元率失真代价得到第二率失真代价;根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态;根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码。上述方法可跳过部分预测模式的预测计算,因此提高了视频编码效率。
Description
技术领域
本发明涉及视频编码领域,特别是涉及视频编码方法、装置、计算机设备和存储介质。
背景技术
随着多媒体技术和网络技术的飞速发展和广泛应用,人们在日常生活和生产活动大量使用视频信息。为了减少视频的传输数据量或者存储数据量,需要对视频进行编码。
进行视频编码时,通常把一帧图像划分成多个最大编码单元,再采用四叉树的循环分层结构对最大编码单元进行多次划分,得到编码单元,然后对最大编码单元以及编码单元的每种预测模式进行率失真代价运算,得到各个编码单元的最佳预测模式,再根据最佳预测模式进行预测以及编码。这种方法需要对每种预测模式进行模式计算,计算量大,导致视频编码效率低。
发明内容
基于此,有必要针对上述的问题,提供一种视频编码方法、装置、计算机设备和存储介质,可通过待确定预测模式的目标编码单元的未分割预测模式下的率失真代价以及对目标编码单元进行划分后得到的子编码单元的率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态,从而跳过部分预测模式计算,提高视频编码效率。
一种视频编码方法,所述方法包括:
获取待确定预测模式的目标编码单元;
获取未分割预测模式下所述目标编码单元对应的第一率失真代价;
对所述目标编码单元进行划分得到下一层对应的子编码单元集,获取所述子编码单元集中各个子编码单元对应的子单元率失真代价,统计所述各个子编码单元对应的子单元率失真代价得到第二率失真代价;
根据所述未分割预测模式和非跳过状态的分割预测模式对所述目标编码单元进行编码。
在一个实施例中,所述根据所述第一率失真代价以及所述第二率失真代价确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:获取所述子编码单元集各个子编码单元对应的目标预测模式;若所述子编码单元对应的目标预测模式中的一个或多个预测模式不是帧内预测模式时,所述目标编码单元对应的帧内预测模式的帧内跳过状态为跳过。
一种视频编码装置,所述装置包括:
目标编码单元获取模块,用于获取待确定预测模式的目标编码单元;
第一代价获取模块,用于获取未分割预测模式下所述目标编码单元对应的第一率失真代价;
第二代价获取模块,用于对所述目标编码单元进行划分得到下一层对应的子编码单元集,获取所述子编码单元集中各个子编码单元对应的子单元率失真代价,统计所述各个子编码单元对应的子单元率失真代价得到第二率失真代价;
跳过状态确定模块,用于根据所述第一率失真代价以及所述第二率失真代价确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态;
根据所述未分割预测模式和非跳过状态的分割预测模式对所述目标编码单元进行编码。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述视频编码方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述视频编码方法的步骤。
上述视频编码方法、装置、计算机设备和存储介质,通过获取未分割预测模式下目标编码单元对应的第一率失真代价,对目标编码单元进行划分得到下一层对应的子编码单元集,并获取子编码单元集中各个子编码单元对应的子单元率失真代价,以及统计各个子编码单元对应的子单元率失真代价得到第二率失真代价,然后根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态,根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码。由于可通过待确定预测模式的目标编码单元的未分割预测模式下的率失真代价以及对目标编码单元进行划分后得到的子编码单元的率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态,从而跳过部分预测模式的预测计算,因此提高了视频编码效率。
附图说明
图1为一个实施例中提供的视频编码方法的应用环境图;
图2A为一个实施例中视频编码方法的流程图;
图2B为一个实施例中预测模式的示意图;
图3为一个实施例中视频编码方法的流程图;
图4为一个实施例中目标编码单元的划分示意图;
图5为一个实施例中获取子编码单元集中子编码单元对应的子运动矢量代价的流程图;
图6为一个实施例中根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的流程图;
图7A为一个实施例中根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码的流程图;
图7B为一个实施例中根据目标编码单元对应的目标预测模式对目标编码单元进行编码的流程图;
图8为一个实施例中视频编码方法的流程图;
图9为一个实施例中视频编码方法的流程图;
图10为一个实施例中根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的流程图;
图11为一个实施例中视频编码装置的结构框图;
图12为一个实施例中视频编码装置的结构框图;
图13为一个实施例中跳过状态确定模块的结构框图;
图14为一个实施例中矢量代价获取模块的结构框图;
图15为一个实施例中代价阈值模块的结构框图;
图16为一个实施例中跳过状态确定模块的结构框图;
图17为一个实施例中第一代价获取模块的结构框图;
图18A为一个实施例中编码模块的结构框图;
图18B为一个实施例中编码单元的结构框图;
图19为一个实施例中视频编码装置的结构框图;
图20为一个实施例中跳过状态确定模块的结构框图;
图21为一个实施例中目标编码单元的示意图;
图22为一个实施例中目标编码单元的划分示意图;
图23为一个实施例中计算机设备的内部结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一率失真代价称为第二率失真代价,且类似地,可将第二率失真代价称为第一率失真代价。
图1为一个实施例中提供的视频编码方法的应用环境图,如图1所示,在该应用环境中,要进行视频编码时,将视频图像分成多个编码单元,编码控制模块根据视频帧中不同编码单元的局部特性,选择该编码单元所采用的编码预测模式,预测模式可以包括帧内或帧间预测编码。对帧内预测编码的编码单元进行空域预测,对帧间预测编码的编码单元进行运动估计后进行运动补偿预测,得到预测值后将编码单元的实际值与预测值相减得到预测残差,再通过变换和量化处理形成残差系数,最后通过熵编码器生成最终的码流。其中,在进行帧间预测时,需要参考其他已经预测编码的编码单元进行运动估计,因此,需要将已经编码的编码单元进行反量化和反变换、滤波器控制、去块滤波、参考帧缓存后进行运动估计。由于编码单元的预测模式有多种,且计算过程复杂,因此,如果要对每一种预测模式度进行计算,将会导致编码效率下降,故可以根据编码单元的一些特性跳过部分预测模式的模式计算,以减少计算量,提高编码效率。
需要说明的是,上述的应用环境图中所描述的流程仅为与本发明实施例相关的示例性介绍,在实际应用中还可以存在其他的步骤流程或者数据流向,本发明在此不做限制。
如图2A所示,在一个实施例中,提出了一种视频编码方法,具体可以包括以下步骤:
步骤S202,获取待确定预测模式的目标编码单元。
具体地,目标编码单元指需要进行预测编码的编码单元。预测编码指根据已编码的一个或多个编码单元以及选择的预测模式对当前的目标编码单元值进行预测得到预测值,并对编码单元的真实值和预测值之间的差值进行编码,由此提高编码效率。视频编码中,图像的冗余信息包括时间冗余信息以及空间冗余信息,预测模式可以包括帧间预测模式以及帧内预测模式。帧间预测可以减少时间冗余信息,帧内预测可以减少空间冗余信息。当视频图像输入编码器时,可以将视频图像分成一个或多个编码单元,然后选择编码单元对应的目标预测模式,预测模式可以根据不同的视频编码标准进行设置。
在一般的视频编码标准中,编码单元根据预测模式的不同可以划分为一个或多个预测单元,每个预测单元含有一组预测信息,例如帧内预测的预测方向或帧间预测的运动信息(如选择的参考编码单元以及运动向量等)。预测单元的划分方式可以根据不同视频编码标准设置。以HEVC(High EfficiencyVideo Coding,高效视频编码标准)为例,如图2B所示,HEVC中一共定义了8种预测单元的预测模式,若给定一个编码单元,设它的尺寸为2N×2N,其中N为正整数,N的取值可以为4、8、16或32。对称预测模式包括2N*2N、N*2N、2N*N以及N*N四种,非对称预测模式包括2N×nU、2N×nD、nL×2N和nR×2N。其中的U、D、L、R分别表示是在编码单元的上半部分、下半部分、左半部分以及右半部分划分。当编码单元的预测模式为帧内预测时,预测模式的类型可以是2N×2N或N×N。当编码单元的预测模式为帧间预测时,预测单元的类型可以是8种预测模式中的一种。在选择预测模式时,可以计算出每种预测模式的率失真代价,然后选择率失真代价小的预测模式作为编码单元对应的目标预测模式。
步骤S204,获取未分割预测模式下目标编码单元对应的第一率失真代价。
具体地,未分割预测模式是指没有对编码单元进行划分的预测模式,例如可以为运动合并预测模式或者帧间整体预测模式即帧间2N*2N预测模式,运动合并模式是指利用时域和空域相邻的编码后的编码单元的运动信息预测出当前的目标编码单元的运动信息参数,例如在HEVC中,可以将时域或空域相邻编码单元的运动信息组成一个候选表,然后利用该候选表选出率失真代价最小的运动信息并记录其索引号,在编码时只需要传递索引号就可以了。率失真是指编码码率和图像失真度之间的相互关系,可以用预设的率失真代价函数进行得到的率失真代价表示,率失真代价小,则表示在一定的码率限制下,视频的失真度小。
在一个实施例中,可以获取运动合并模式(merge模式)下目标编码单元对应的率失真代价以及帧间整体预测模式下目标编码单元对应的率失真代价,然后将率失真代价小的率失真代价作为第一率失真代价。以目标编码单元的大小为2N*2N为例,帧间整体预测模式是指帧间的2N*2N预测模式。
步骤S206,对目标编码单元进行划分得到下一层对应的子编码单元集,获取子编码单元集中各个子编码单元对应的子单元率失真代价,统计各个子编码单元对应的子单元率失真代价得到第二率失真代价。
具体地,可以将视频图像分为多个编码单元,然后可以对编码单元进一步的划分得到多个子编码单元,划分得到的子编码单元组成目标编码单对应的子编码单元集。以目标编码单元所在的层为当前层,则子编码单元所在的层为下一层。子单元率失真代价可以为子编码单元在帧间整体预测模式下对应的率失真代价。得到子单元率失真代价后,对各个子编码单元对应的子单元率失真代价进行统计,得到第一率失真代价。
以HEVC为例,最大的编码单元的尺寸为64*64像素,一个最大编码单元最多可进行4层分解,即可以为64×64像素,32×32像素,16×16像素和8×8像素的编码单元。假设目标编码单元为32*32像素,则将目标编码单元进一步划分后可以得到4个16*16像素的子编码单元,然后获取这4个16*16像素的子编码单元在帧间2N*2N模式下的率失真代价,并进行求和计算,得到第二率率失真代价。
步骤S208,根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态。
具体地,分割预测模式是指需要对目标编码单元进行划分得到多个预测单元的预测模式,以目标单元大小为2N×2N,N为正整数为例,分割预测模式可以包括其N*2N、2N*N、N*N、2N×nU、2N×nD、nL×2N和nR×2N等。跳过状态可以包括跳过或者执行。可以根据第一率失真代价以及第二率失真代价确定目标编码单元要跳过哪一些预测模式的模式计算。例如,当第二率失真代价大于或等于第一率失真代价时,可以跳过对所有或部分未分割预测模式的计算。当然也可以结合其他因素对是否跳过未分割预测模式的计算进行判断。例如,当第二率失真代价大于或等于第一率失真代价与阈值的和时,可以跳过对所有或部分未分割预测模式的计算。阈值可以根据实际需要进行设置或者实验得到。
在一些实施例中,阈值大于0。因为若目标编码单元最终利用分割预测模式进行预测,则目标编码单元不会进一步进行划分得到子编码单元,但是在分割预测模式下需要将目标编码单元变成小的预测单元,说明如果目标编码单元的最优预测模式为分割预测模式的话,将目标编码单元进行划分得到的子编码单元的子单元率失真代价的和在很大概率下是小于未分割预测模式下目标单元和的。为了保证准确性,防止在一定条件下的遗漏,可以加上一定的阈值,以提高确定预测模式的准确性。
步骤S210,根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码。
具体地,跳过状态包括跳过以及非跳过,可以从未分割预测模式和非跳过状态的分割预测模式中筛选出对应的预测模式对目标编码单元进行编码。得到各个分割预测模式的跳过状态时,若跳过状态为跳过,则跳过该分割预测模式的预测计算。若为非跳过状态,可以计算该分割预测模式下目标编码单元对应的第三率失真代价。可以理解,非跳过状态的分割预测模式可以有0个、一个或者多个。得到第一率失真代价以及第三率失真代价后,可以将第一率失真代价以及各个第三率失真代价进行比较,将未分割预测模式以及非跳过状态的分割预测模式中最小的率失真代价对应的预测模式作为目标编码单元对应的目标预测模式。得到目标编码单元对应的目标预测模式后,可以直接利用该预测模式对目标编码单元进行预测,然后根据预测得到的预测值进行编码。也可以获取子编码单元对应的目标预测模式,然后进行率失真代价判断,确定是需要对目标编码单元进行进一步划分。若不需要划分,则可以利用该目标编码单元对应的目标预测模式对目标编码单元进行预测,然后根据预测得到的预测值进行编码。若需要划分,则可以根据各个子编码单元对应的目标预测模式对子编码单元进行编码。
上述视频编码方通过获取未分割预测模式下目标编码单元对应的第一率失真代价,对目标编码单元进行划分得到下一层对应的子编码单元集,并获取子编码单元集中各个子编码单元对应的子单元率失真代价,以及统计各个子编码单元对应的子单元率失真代价得到第二率失真代价,然后根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态,由于可通过待确定预测模式的目标编码单元的未分割预测模式下的率失真代价以及对目标编码单元进行划分后得到的子编码单元的率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态,从而跳过部分模式计算,因此提高了视频编码效率。
在一个实施例中,如图3所示,视频编码方法还可以包括以下步骤:
步骤S302,获取子编码单元集中子编码单元对应的子运动矢量代价。
具体地,运动矢量代价是指对运动矢量进行编码的代价。在一些实施例中可以为运动矢量差(MVD,MotionVectorDifference)的比特率与预设比例系数的乘积。在帧间预测编码中,可以用运动矢量(MV,MotionVector)表示目标编码单元与其参考图像中的最佳匹配编码单元之间的相对位移。例如首先可以使用相邻已编码单元的MV预测目标编码单元的MV,得到预测值MVP(Motion VectorPrediction,运动矢量预测值),然后对目标编码单元的预测值MVP与目标编码单元实际MV的运动矢量差MVD(MotionVectorDifference)进行编码,从而有效降低MV的编码比特数。子编码单元对应的子运动矢量代价可以是全部或者部分子编码单元在帧间整体预测模式下对应的运动矢量代价。具体可以根据实际需求进行设置。例如,可以是任意两个子编码单元的运动矢量代价。
步骤S304,根据子运动矢量代价得到运动矢量代价阈值。
具体地,得到子运动矢量代价后,根据子运动矢量进行计算,得到运动矢量代价阈值。计算方法可以根据需要进行设置。例如可以是对子运动矢量代价进行求和计算后再对计算得到的和进行平方运算,得到运动矢量代价阈值。当然也可以是在进行平方运算后再加上一定的数值或者乘以相应的系数。例如,如图4所示,假设目标编码单元划分为4个子编码单元,编号分别为0、1、2以及3,对应的在帧间整体预测模式下的运动矢量代价为MVcost0、MVcost1、MVcost2以及MVcost3。则运动矢量代价阈值可以是(MVcost0+MVcost1)2。
在一个实施例中,当得到运动矢量代价阈值后,步骤S208可以包括以下步骤:根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态。
具体地,得到运动矢量代价后,可以根据第二率失真代价与运动矢量代价阈值相减计算得到一个比较值,然后比较第一率失真代价与比较值的大小,当第一率失真代价小于或等于比较值时,目标编码单元在当前层对应的跳过状态为跳过。当然,也可以根据第一率失真代价和运动矢量代价阈值得到跳过阈值,当第二率失真代价大于或等于跳过阈值时,目标编码单元在当前层对应的分割预测模式的跳过状态为跳过。当第二率失真代价小于跳过阈值时,对目标编码单元在当前层对应的分割预测模式进行预测模式计算。
在一个实施例中,如图4所示,步骤S302即获取子编码单元集中子编码单元对应的子运动矢量代价的步骤具体可以包括:
步骤S502,根据当前分割预测模式的划分位置从目标编码单元对应的子编码单元中选取划分位置对应的目标子编码单元。
具体地,当前分割预测模式指目标编码单元的分割预测模式中的任一个预测模式。分割预测模式划分位置对应的目标子编码单元指划分位置所在的子编码单元。当前分割预测模式的划分位置根据不同的预测模式而不同,例如2N×nU、2N×nD、nL×2N和nR×2N对应的划分位置分别为上半部分、下半部分、左半部分以及右半部分,则在图4中,2N×nU、2N×nD、nL×2N和nR×2N的划分位置对应的目标子编码单元分别为子编码单元0和子编码单元1、子编码单元2和子编码单元3、子编码单元0和子编码单元2以及子编码单元1和子编码单元4。而对于对称划分方式N*2N、2N*N,由于划分位置位于子编码单元的边界,因此可以取任意两个子编码单元作为划分位置对应的目标子编码单元。在一个实施例中,2N*N的预测模式下划分位置对应的目标子编码单元可以为子编码单元0以及子编码单元1,N*2N的预测模式下划分位置对应的目标子编码单元可以为子编码单元0以及子编码单元2。
步骤S504,将目标子编码单元的运动矢量代价分别作为当前分割预测模式对应的子运动矢量代价。
具体地,得到目标子编码单元后,获取目标子编码单元的运动矢量代价作为当前分割预测模式对应的子运动矢量代价。目标子编码单元的运动矢量代价可以是目标子编码单元在帧间整体预测模式下的运动矢量代价。
在一个实施例中,步骤S304即根据子运动矢量代价得到运动矢量代价阈值的步骤包括:根据子运动矢量代价计算得到当前分割预测模式对应的运动矢量代价阈值。步骤S208即根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:根据第一率失真代价、第二率失真代价以及当前分割预测模式对应的运动矢量代价阈值确定目标编码单元在当前分割预测模式的跳过状态。
具体地,由于每个当前分割预测模式都有对应的子运动矢量代价,因此可以根据子运动矢量代价得到当前分割预测模式对应的运动矢量代价阈值,然后根据第一率失真代价、第二率失真代价以及当前分割预测模式对应的运动矢量代价阈值确定目标编码单元在当前分割预测模式的跳过状态。例如,假设当前分割预测模式为2N×nU预测模式,对应的运动矢量代价阈值为threshold1,第一率失真代价为mincost,第二率失真代价为subcucost,则若mincost与threshold1的和大于subcucost,则执行当前分割预测模式2N×nU的模式计算,否则,则跳过当前分割预测模式2N×nU的模式计算。可以理解,由于分割预测模式有多个,因此可以逐一地或者并行地将分割预测模式作为当前分割预测模式,计算当前分割预测模式的跳过状态。例如,可以先计算2N×nU对应的跳过状态,再计算2N×nD对应的跳过状态。
在一个实施例中,可以对子运动矢量代价进行求和运算,得到矢量代价统计结果,然后再根据矢量代价统计结果进行平方运算,得到当前分割预测模式对应的运动矢量代价阈值。以图4的目标编码单元为例,在2NxN的情况下运动矢量代价阈值=(MVCost0+MVCost1)2,在Nx2N的情况下运动矢量代价阈值=(MVCost0+MVCost2)2,2NxnU的情况下运动矢量代价阈值=(MVCost0+MVCost1)2,2NxnD的情况下运动矢量代价阈值=(MVCost2+MVCost3)2,nLx2N的情况下运动矢量代价阈值=(MVCost0+MVCost2)2,nRx2N的情况下运动矢量代价阈值=(MVCost1+MVCost3)2。
图6示出了一个实施例中,步骤S208即根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:
步骤S602,对第二率失真代价与第一率失真代价的进行比例计算,得到比例计算结果。
具体地,可以将第二率失真代价与第一率失真代价进行相除,得到比例计算结果。例如,假设第二率失真代价为a,第一率失真代价为b,则比例计算结果为a/b。
步骤S604,当比例计算结果小于第一预设阈值时,目标编码单元在当前层对应的各个分割预测模式的跳过状态为跳过。
具体地,第一预设阈值可以根据实际需要进行设置。在一个实施例中,第一预设阈值可以为1.3。即当a/b小于1.3时,跳过当前层对应的各个分割预测模式的预测计算。在一个实施例中,当比例计算结果小于第一预设阈值时,可以跳过帧间分割预测模式的预测计算。当比例计算结果小于第一预设阈值且目标编码单元左边和/或上边的相邻预测单元对应的目标预测模式没有帧内预测时,跳过帧间分割预测模式以及帧内预测模式的预测计算。在一个实施例中,可以先执行步骤S602以及S604,若比例计算结果大于或等于第一预设阈值时,再执行步骤S302以及步骤S304。
在一个实施例中,如图7A所示,步骤S210即根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码的步骤包括:
步骤S702,计算非跳过状态的分割预测模式下目标编码单元对应的第三率失真代价。
具体的,跳过状态包括跳过以及非跳过,在得到各个分割预测模式的跳过状态时,若跳过状态为跳过,则跳过该分割预测模式的预测计算。若为非跳过状态,可以计算该分割预测模式下目标编码单元对应的第三率失真代价。可以理解,非跳过状态的分割预测模式可以有0个、一个或者多个。
步骤S704,根据第一率失真代价以及第三率失真代价从未分割预测模式以及非跳过状态的分割预测模式中筛选出目标编码单元对应的目标预测模式。
具体地,得到第一率失真代价以及第三率失真代价后,可以将第一率失真代价以及各个第三率失真代价进行比较,将未分割预测模式以及非跳过状态的分割预测模式中最小的率失真代价对应的预测模式作为目标编码单元对应的目标预测模式。
步骤S706,根据目标编码单元对应的目标预测模式对目标编码单元进行编码。
具体地,得到目标编码单元对应的目标预测模式后,可以直接利用该预测模式对目标编码单元进行预测,然后根据预测得到的预测值进行编码。也可以获取子编码单元对应的目标预测模式,然后进行率失真代价判断,确定是需要对目标编码单元进行进一步划分。若不需要划分,则可以利用该目标编码单元对应的目标预测模式对目标编码单元进行预测,然后根据预测得到的预测值进行编码。若需要划分,则可以根据各个子编码单元对应的目标预测模式对子编码单元进行编码。
在一个实施例中,如图7B所示,步骤S706即根据目标编码单元对应的目标预测模式对目标编码单元进行编码可以包括以下步骤:
步骤S706A,获取各个子编码单元对应的目标预测模式的率失真代价,统计各个子编码单元对应的目标预测模式的率失真代价得到第四率失真代价。
具体地,子编码单元对应的目标预测模式指子编码单元进行预测模式判断后得到的的预测模式,得到各个子编码单元对应的目标预测模式的率失真代价后,对各个子编码单元对应的目标预测模式的率失真代价进行求和运算,得到第四率失真代价。
步骤S706B,根据目标编码单元对应的目标预测模式对应的率失真代价以及第四率失真代价得到目标编码单元的划分方式。
具体地,可以比较目标编码单元对应的目标预测模式对应的率失真代价与第四率失真代价的大小,若目标编码单元对应的目标预测模式对应的率失真代价大于第四率失真代价,则目标编码单元的划分方式为需要进行进一步划分,得到子编码单元。若目标编码单元对应的目标预测模式对应的率失真代价小于第四率失真代价,则目标编码单元的划分方式为不需要对进行划分。
步骤S706C,根据目标编码单元的划分方式对目标编码单元进行编码。
具体地,划分方式包括划分或者不划分,若不需要划分,则可以利用该预测模式对目标编码单元进行预测,然后根据预测得到的预测值进行编码。若需要划分,则可以根据各个子编码单元对应的目标预测模式对子编码单元进行编码。可以理解,子编码单元也可以进一步判断是否进行划分,具体判断方式方式可以参考目标编码单元,在此再赘述。
在一个实施例中,如图8所示,视频编码方法还可以包括以下步骤:
步骤S802,对目标编码单元执行运动合并模式计算,得到第一预测信息,第一预测信息包括目标编码单元在运动合并模式下的预测残差信息、目标编码单元的参考编码单元信息以及运动合并模式计算结束后的最优模式的至少一个。
具体地,预测残差信息指目标编码单元的实际值与预测值的差值,参考编码单元信息指在运动合并模式下的参考预测单元的信息,在一些实施例中可以用参考索引值表示,在HEVC的运动合并模式下,采用的是基于“竞争”机制的运动参数选择方法,即可以搜索相邻的己编码的编码单元,将它们的运动参数组成一个候选列表,由编码器选择其中最优的一个作为当前编码单元的运动参数并编码其索引值。在一个实施例中,由于目标编码单元对应的目标预测模式为运动合并模式的概率较大,因此可以首先对目标编码单元执行运动合并模式计算。
步骤S804,当第一预测信息满足预设第一条件时,将运动合并模式作为目标编码单元对应的目标预测模式,预设第一条件包括目标编码单元在运动合并模式下没有预测残差、目标编码单元的参考编码单元与目标编码单元的相似概率排序在候选编码单元的预设排序内以及运动合并模式计算结束后的最优模式为跳过模式中的至少一个。
具体地,当第一预测信息满足预设第一条件时,将运动合并模式作为目标编码单元对应的目标预测模式,并跳过目标编码单元在其他预测模式下的预测计算若不满足预设第一条件时,则执行步骤S202。在视频编码中,可以用CBF(Code Block Flag,编码标志位)表示目标编码单元是否存在残差信息,例如CBF为0表示无预测残差,CBF为1表示有残差,因此可以根据CBF标志位的数值确定在运动合并模式下有没有出现过预测残差。预设排序可以根据需要进行设置。例如可以为第一位。而在视频编码中,与目标编码单元相似度高的参考编码单元在候选编码单元的编号在前,因此可以根据参考编码单元的索引值确定目标编码单元的参考预测单元与目标编码单元的相似概率排序在候选编码单元的预设排序内。例如,当参考索引值为0时,表示参考编码单元在所有的候选编码单元中与目标编码单元的相似度最高。跳过模式为一种特殊的运动合并预测模式,当运动合并模式计算结束后没有预测残差时,则为跳过(skip)模式。
本实施例中,可以首先对目标编码单元执行运动合并模式计算,当得到的第一预测信息满足预设第一条件时,对目标编码单元跳过其他预测模式的计算,因此,可以使得计算过程进一步简化,提高了编码效率。
在一个实施例中,如图9所示,视频编码方法还可以包括以下步骤:
步骤S902,当第一预测信息不满足预设第一条件时,对目标编码单元执行整体预测模式计算,得到目标编码单元在整体预测模式下对应的率失真代价。
具体地,若在运动合并模式下得到的第一预测信息不满足第一条件,则需要进行帧间整体预测模式的判断,得到目标编码单元在帧间整体预测模式下对应的率失真代价。
步骤S904,获取目标编码单元在运动合并模式下对应的率失真代价。
具体地,目标编码单元在运动合并模式下对应的率失真代价可以是在执行运动合并模式计算是计算得到的。
步骤S906,若在帧间整体预测模式下没有预测残差,根据目标编码单元在运动合并模式下的率失真代价以及目标编码单元在整体预测模式的率失真代价得到选择预测模式。
具体地,若目标编码单元在帧间整体预测模式下没有预测残差,将可以将目标编码单元在运动合并模式下的率失真代价以及目标编码单元在整体预测模式的率失真代价进行比较,将最小值对应的目标预测模式作为选择预测模式。例如,若运动合并模式下的率失真代价小于目标编码单元在整体预测模式的率失真代价,则运动合并模式为选择预测模式。
步骤S908,若选择预测模式为帧间整体预测模式和/或目标编码单元在帧间整体预测模式下对应的运动矢量差小于或等于第二预设阈值时,将帧间整体预测模式作为目标编码单元对应的目标预测模式,若选择预测模式为运动合并模式时,将运动合并模式作为目标编码单元对应的目标预测模式。
具体地,运动矢量差指目标编码单元运动实际值与运动矢量预测值的差值。由于运动矢量差是以坐标形式存在的,因此可以将运动矢量差的横坐标的绝对值与总坐标的绝对值的和表示运动矢量差。第二预设阈值可以根据实际需要设置。例如第二预设阈值可以为0。得到选择预测模式后,若选择预测模式为帧间整体预测模式以及目标编码单元在帧间整体预测模式下对应的运动矢量差小于或等于第二预设阈值中的至少一个满足时,将帧间整体预测模式作为目标编码单元对应的目标预测模式并跳过目标编码单元在其他预测模式下的预测计算。若选择预测模式为运动合并模式时,将运动合并模式作为目标编码单元对应的目标预测模式并跳过目标编码单元在其他预测模式下的预测计算。
在一个实施例中,当步骤S908中的条件不满足时,再执行步骤S202。即若选择预测模式不是帧间整体预测模式或者目标编码单元在帧间整体预测模式下对应的运动矢量差大于预设阈值中的一个或两个满足时,且若选择预测模式不是运动合并模式时,执行步骤S202。
在一个实施例中,如图10所示,根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤还可以包括以下步骤:
步骤S1002,获取子编码单元集各个子编码单元对应的目标预测模式。
具体地,子编码单元对应的目标预测模式可以指子编码单元进行预测模式计算后确定的最优预测模式。可以为帧间模式中的一种,也可以为帧内模式中的一种,具体根据子编码单元的实际情况以及判断条件确定。
步骤S1004,若子编码单元对应的目标预测模式中的一个或多个预测模式不是帧内预测模式时,目标编码单元对应的帧内预测模式的帧内跳过状态为跳过。
具体地,一个或多个子编码单元对应的目标预测模式不是帧内预测模式时,目标编码单元对应的帧内预测模式的帧内跳过状态为跳过。例如,可以是1个子编码单元对应的目标预测模式不是帧内预测模式,也可以是2个或者3个或者4个子编码单元对应的目标预测模式不是帧内预测模式,具体数量可以根据实际需要确定。
如图11所示,在一个实施例中,提供了一种视频编码装置,具体可以包括:
目标编码单元获取模块1102,用于获取待确定预测模式的目标编码单元;
第一代价获取模块1104,用于获取未分割预测模式下目标编码单元对应的第一率失真代价;
第二代价获取模块1106,用于对目标编码单元进行划分得到下一层对应的子编码单元集,获取子编码单元集中各个子编码单元对应的子单元率失真代价,统计各个子编码单元对应的子单元率失真代价得到第二率失真代价;
跳过状态确定模块1108,用于根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态。
编码模块1110,用于根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码。
如图12所示,在一个实施例中,装置还包括:
矢量代价获取模块1202,用于获取子编码单元集中子编码单元对应的子运动矢量代价;
代价阈值模块1204,用于根据子运动矢量代价得到运动矢量代价阈值;
跳过状态确定模块1108用于:根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态。
如图13所示,在一个实施例中,跳过状态确定模块1108包括:
跳过阈值得到单元1108A,用于根据第一率失真代价和运动矢量代价阈值得到跳过阈值;
跳过状态确定单元1108B,用于当第二率失真代价大于或等于跳过阈值时,目标编码单元在当前层对应的分割预测模式的跳过状态为跳过。
如图14所示,在一个实施例中,矢量代价获取模块1202包括:
目标子单元获取单元1202A,用于根据当前分割预测模式的划分位置从目标编码单元对应的子编码单元中选取划分位置对应的目标子编码单元;
矢量代价获取单元1202B,用于将目标子编码单元的运动矢量代价作为当前分割预测模式对应的子运动矢量代价;
代价阈值模块1204用于:根据子运动矢量代价计算得到当前分割预测模式对应的运动矢量代价阈值;
跳过状态确定模块1108用于:根据第一率失真代价、第二率失真代价以及当前分割预测模式对应的运动矢量代价阈值确定目标编码单元在当前分割预测模式的跳过状态。
如图15所示,在一个实施例中,代价阈值模块1204包括:
和运算单元1204A,用于对子运动矢量代价进行和运算,得到矢量代价统计结果;
平方运算单元1204B,用于根据矢量代价统计结果进行平方运算,得到当前分割预测模式对应的运动矢量代价阈值。
如图16所示,在一个实施例中,跳过状态确定模块1108包括:
比例计算单元1602,用于对第二率失真代价与第一率失真代价的进行比例计算,得到比例计算结果;
跳过状态确定单元1604,用于当比例计算结果小于第一预设阈值时,目标编码单元在当前层对应的各个分割预测模式的跳过状态为跳过。
如图17所示,在一个实施例中,第一代价获取模块1104包括:
率失真代价获取单元1104A,用于获取目标编码单元在运动合并模式下的率失真代价以及在帧间整体预测模式下的率失真代价;
第一代价获取单元1104B,用于将运动合并模式下的率失真代价以及帧间整体预测模式下的率失真代价的最小值作为第一率失真代价。
在一个实施例中,子单元率失真代价为子编码单元为帧间整体预测模式下对应的率失真代价。
如图18A所示,在一个实施例中,编码模块1110包括
第三代价获取单元1802,用于计算非跳过状态的分割预测模式下目标编码单元对应的第三率失真代价;
筛选单元1804,用于根据第一率失真代价以及第三率失真代价从未分割预测模式以及非跳过状态的分割预测模式中筛选出目标编码单元对应的目标预测模式;
编码单元1806,用于根据目标编码单元对应的目标预测模式对目标编码单元进行编码。
如图18B所示,在一个实施例中,编码单元1806还包括:
第四代价获取单元1806A,用于获取各个子编码单元对应的目标预测模式的率失真代价,统计各个子编码单元对应的目标预测模式的率失真代价得到第四率失真代价;
划分方式确定模块1806B,用于根据目标编码单元对应的目标预测模式对应的率失真代价以及第四率失真代价得到目标编码单元的划分方式;
编码单元1806C,用于根据目标编码单元的划分方式对目标编码单元进行编码。
如图19所示,在一个实施例中,装置还包括:
合并模式计算模块1902,用于对目标编码单元执行运动合并模式计算,得到第一预测信息,第一预测信息包括目标编码单元在运动合并模式下的预测残差信息、目标编码单元的参考编码单元信息以及运动合并模式计算结束后的最优模式的至少一个;
条件判断模块1904,用于当第一预测信息满足预设第一条件时,将运动合并模式作为目标编码单元对应的目标预测模式,预设第一条件包括目标编码单元在运动合并模式下没有预测残差、目标编码单元的参考编码单元与目标编码单元的相似概率排序在候选编码单元的预设排序内以及运动合并模式计算结束后的最优模式为跳过模式中的至少一个。
如图19所示,在一个实施例中,装置还包括:
整体模式计算模块1906,用于当第一预测信息不满足预设第一条件时,对目标编码单元执行帧间整体预测模式计算,得到目标编码单元在帧间整体预测模式下对应的率失真代价;
合并模式代价获取模块1908,用于获取目标编码单元在运动合并模式下对应的率失真代价;
选择预测模式得到模块1910,用于若在帧间整体预测模式下没有预测残差,根据目标编码单元在运动合并模式下的率失真代价以及目标编码单元在整体预测模式的率失真代价得到选择预测模式;
预测模式判断模块1912,用于若选择预测模式为整体预测模式和/或目标编码单元在帧间整体预测模式下对应的运动矢量差小于或等于第二预设阈值时,将帧间整体预测模式作为目标编码单元对应的目标预测模式,或者若选择预测模式为运动合并模式时,将运动合并模式作为目标编码单元对应的目标预测模式。
如图20所示,在一个实施例中,跳过状态确定模块1108还包括:
子单元预测模式获取模块2002,用于获取子编码单元集各个子编码单元对应的目标预测模式;
帧内跳过状态获取模块2004,用于若子编码单元对应的目标预测模式中的一个或多个预测模式不是帧内预测模式时,目标编码单元对应的帧内预测模式的帧内跳过状态为跳过。
下面以一个具体的实施例对本发明提供的视频编码方法进行说明:
1、接收视频图像,将视频图像分解为一个或多个编码单元,作为目标编码单元,以对目标编码单元进行编码。目标编码单元的尺寸可以根据实际设置,例如,如图22所示,HEVC中,一个目标编码单元的尺寸可以为64*64像素。
3、首先对目标编码单元执行运动合并模式计算,得到运动合并模式下计算得到的第一预测信息,若目标编码单元的第一预测信息满足第一条件,则将跳过模式作为目标编码单元对应的目标预测模式,并跳过对目标编码单元其他所有预测模式的模式计算,目标编码单元预测模式计算提前结束,可以对目标编码单元进行划分得到子编码单元,并对子编码单元进行预测模式判断。否则进入步骤4。在本实施例中,第一预测信息不满足第一条件,因此,进入步骤4。第一条件包括在运动合并模式下没有预测残差、目标编码单元的参考编码单元与目标编码单元的相似概率排序在候选编码单元的预设排序内以及运动合并模式计算结束后的最优模式为跳过模式。
4、对目标编码单元进行帧间整体预测模式计算,若CBF为0,且帧间整体预测模式对应的率失真代价小于步骤3中的运动合并模式对应的率失真代价,且帧间整体预测模式下运动矢量差的横坐标以及纵坐标的绝对值之和为0,则将帧间整体预测模式作为目标编码单元对应的目标预测模式。若CBF为0,且帧间整体预测模式对应的率失真代价大于步骤3中的运动合并模式对应的率失真代价,则将运动合并模式作为目标编码单元对应的目标预测模式。在本实施例中,帧间整体预测模式下目标编码单元的CBF不为0,因此进入步骤5。
5、对目标编码单元进行划分得到目标编码单元下一层对应的子编码单元,进入子编码单元的模式计算,并获取子编码单元在帧间整体预测模式下的率失真代价,统计求和得到子编码单元的率失真代价之和,作为第二率失真代价。
6、比较目标编码单元在运动合并模式下的率失真代价与帧间整体预测模式下的率失真代价,将最小值作为第一率失真代价,并计算子编码单元的率失真代价之和与第一率失真代价的比例系数,若比例系数小于1.3且目标编码单元左边以及上边相邻的编码单元对应的目标预测模式均不是帧内预测模式时,说明目标编码单元需要进行进一步划分,已无必要进行预测模式计算,故跳过对目标编码单元所有预测模式的计算,在本实施例中,比例系数大于1.3,故进入步骤7。
7、获取各个分割预测模式对应的子编码单元的子运动矢量代价,根据子运动矢量代价得到每个分割预测模式的运动矢量代价阈值,例如,若分割预测模式为2NxN的情况下运动矢量代价阈值=(MVCost0+MVCost1)2,在Nx2N的情况下运动矢量代价阈值=(MVCost0+MVCost2)2,2NxnU的情况下运动矢量代价阈值=(MVCost0+MVCost1)2,2NxnD的情况下运动矢量代价阈值=(MVCost2+MVCost3)2,nLx2N的情况下运动矢量代价阈值=(MVCost0+MVCost2)2,nRx2N的情况下运动矢量代价阈值=(MVCost2+MVCost3)2。
8、分别计算第一率失真代价与运动矢量阈值的和,得到每个分割预测模式的跳过阈值。
9、比较子编码单元的率失真代价之和与每个分割预测模式的跳过阈值的大小关系,对每一个当前分割预测模式,若第二率失真代价小于当前分割预测模式的跳过阈值,则对目标编码单元进行当前分割预测模式的预测计算。否则,跳过当前分割预测模式。例如,对于2NxN预测模式,若率失真代价之和小于2NxN预测模式对应的跳过阈值,则进行2NxN预测模式的预测计算。在本实施例中,经比较,第二率失真代价小于2NxN、2N×nU以及nL×2N这三个分割预测模式对应的跳过阈值,故对目标编码单元进行2NxN、2N×nU以及nL×2N这三个分割预测模式的预测计算,得到2NxN、2N×nU以及nL×2N这三个分割预测模式对应的率失真代价。
10、获取目标编码单元的子编码单元对应的目标预测模式,本实施例中,由于所有子编码单元对应的目标预测模式都不是帧内预测模式,故则跳过目标编码单元的帧内预测模式的判断。
11、根据上述10个步骤中目标编码单元进行了预测计算的预测模式对应的率失真代价进行比较,将率失真代价最小的的预测模式作为目标编码单元对应的目标预测模式。在本实施例中,将第一率失真代价与2NxN、2N×nU以及nL×2N这三个分割预测模式对应的率失真代价进行比较,得到2N*N的率失真代价最小,故2NxN为目标编码单元对应的目标预测模式。
12、获取各个子编码单元对应的目标预测模式的率失真代价,统计各个子编码单元对应的目标预测模式的率失真代价得到第四率失真代价,并根据目标编码单元对应的目标预测模式对应的率失真代价以及第四率失真代价得到目标编码单元的划分方式。若目标编码单元对应的目标预测模式对应的率失真代价大于第四率失真代价,则目标编码单元的划分方式为需要进行进一步划分,得到子编码单元。若目标编码单元对应的目标预测模式对应的率失真代价小于第四率失真代价,则目标编码单元的划分方式为不需要对进行划分。本实施例中,目标编码单元对应的目标预测模式对应的率失真代价大于第四率失真代价,因此目标编码单元需要进一步划分为4个子编码单元。
13、4个子编码单元可以根据上述步骤确定是否需要进行划分。可以理解,子编码单元的子编码单元也可以根据上述步骤确定是否需要进行划分……如此循环,直至判断目标编码单元不需要进一步划分或者达到视频编码标准允许的划分深度停止划分,得到最终的最优划分方法。例如,HEVC标准中一个64*64像素的目标编码单元的最大划分深度为4。在本实施例中,图23为目标编码单元的最终划分结果,每一个正方形表示一个编码单元,即目标编码单元最终分解为多个编码单元,每一个编码单元都有对应的目标预测模式。
14、利用各个编码单元对应的目标预测模式对编码单元进行预测,根据预测得到的预测值进行编码。
图23示出了一个实施例中计算机设备的内部结构图。如图23所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现视频编码方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行视频编码方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图23中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的视频编码装置可以实现为一种计算机程序的形式,计算机程序可在如图23所示的计算机设备上运行。计算机设备的存储器中可存储组成该视频编码装置的各个程序模块,比如,图11所示的目标编码单元获取模块、第一代价获取模块、第二代价获取模块和跳过状态确定模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的视频编码方法中的步骤。
例如,图23所示的计算机设备可以通过如图11所示的视频编码装置中的目标编码单元获取模块1102获取待确定预测模式的目标编码单元,通过第一代价获取模块1104获取未分割预测模式下目标编码单元对应的第一率失真代价,通过第二代价获取模块1106对目标编码单元进行划分得到下一层对应的子编码单元集,获取子编码单元集中各个子编码单元对应的子单元率失真代价,统计各个子编码单元对应的子单元率失真代价得到第二率失真代价,通过跳过状态确定模块1108根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态,通过编码模块1110根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码。
在一个实施例中,提出了一种计算机设备,计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取待确定预测模式的目标编码单元;获取未分割预测模式下目标编码单元对应的第一率失真代价;对目标编码单元进行划分得到下一层对应的子编码单元集,获取子编码单元集中各个子编码单元对应的子单元率失真代价,统计各个子编码单元对应的子单元率失真代价得到第二率失真代价;根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态;根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码。
处理器执行计算机程序时还执行以下步骤:获取子编码单元集中子编码单元对应的子运动矢量代价;根据子运动矢量代价得到运动矢量代价阈值;根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态。
在一个实施例中,处理器所执行的根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:根据第一率失真代价和运动矢量代价阈值得到跳过阈值;当第二率失真代价大于或等于跳过阈值时,目标编码单元在当前层对应的分割预测模式的跳过状态为跳过。
在一个实施例中,处理器所执行的获取子编码单元集中子编码单元对应的子运动矢量代价的步骤包括:根据当前分割预测模式的划分位置从目标编码单元对应的子编码单元中选取划分位置对应的目标子编码单元;将目标子编码单元的运动矢量代价作为当前分割预测模式对应的子运动矢量代价;根据子运动矢量代价得到运动矢量代价阈值的步骤包括:根据子运动矢量代价计算得到当前分割预测模式对应的运动矢量代价阈值;根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:根据第一率失真代价、第二率失真代价以及当前分割预测模式对应的运动矢量代价阈值确定目标编码单元在当前分割预测模式的跳过状态。
在一个实施例中,处理器所执行的根据当前分割预测模式对应的子运动矢量代价计算得到当前分割预测模式对应的运动矢量代价阈值的步骤包括:对子运动矢量代价进行和运算,得到矢量代价统计结果;根据矢量代价统计结果进行平方运算,得到当前分割预测模式对应的运动矢量代价阈值。
在一个实施例中,处理器所执行的根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:对第二率失真代价与第一率失真代价的进行比例计算,得到比例计算结果;当比例计算结果小于第一预设阈值时,目标编码单元在当前层对应的各个分割预测模式的跳过状态为跳过。
在一个实施例中,处理器所执行的获取未分割预测模式下目标编码单元对应的第一率失真代价的步骤包括:获取目标编码单元在运动合并模式下的率失真代价以及在帧间整体预测模式下的率失真代价;将运动合并模式下的率失真代价以及帧间整体预测模式下的率失真代价的最小值作为第一率失真代价。
在一个实施例中,子单元率失真代价为子编码单元在帧间整体预测模式下对应的率失真代价。
在一个实施例中,处理器所执行的根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码的步骤包括:计算非跳过状态的分割预测模式下目标编码单元对应的第三率失真代价;根据第一率失真代价以及第三率失真代价从未分割预测模式以及非跳过状态的分割预测模式中筛选出目标编码单元对应的目标预测模式;根据目标编码单元对应的目标预测模式对目标编码单元进行编码。
在一个实施例中,处理器所执行的根据目标编码单元对应的目标预测模式对目标编码单元进行编码的步骤包括:获取各个子编码单元对应的目标预测模式的率失真代价,统计各个子编码单元对应的目标预测模式的率失真代价得到第四率失真代价;根据目标编码单元对应的目标预测模式对应的率失真代价以及第四率失真代价得到目标编码单元的划分方式;根据目标编码单元的划分方式对目标编码单元进行编码。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:对目标编码单元执行运动合并模式计算,得到第一预测信息,第一预测信息包括目标编码单元在运动合并模式下的预测残差信息、目标编码单元的参考编码单元信息以及运动合并模式计算结束后的最优模式的至少一个;当第一预测信息满足预设第一条件时,将运动合并模式作为目标编码单元对应的目标预测模式,预设第一条件包括目标编码单元在运动合并模式下没有预测残差、目标编码单元的参考编码单元与目标编码单元的相似概率排序在候选编码单元的预设排序内以及运动合并模式计算结束后的最优模式为跳过模式中的至少一个。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:当第一预测信息不满足预设第一条件时,对目标编码单元执行帧间整体预测模式计算,得到目标编码单元在帧间整体预测模式下对应的率失真代价;获取目标编码单元在运动合并模式下对应的率失真代价;若在帧间整体预测模式下没有预测残差,根据目标编码单元在运动合并模式下的率失真代价以及目标编码单元在整体预测模式的率失真代价得到选择预测模式;若选择预测模式为整体预测模式和/或目标编码单元在帧间整体预测模式下对应的运动矢量差小于或等于第二预设阈值时,将帧间整体预测模式作为目标编码单元对应的目标预测模式,或者若选择预测模式为运动合并模式时,将运动合并模式作为目标编码单元对应的目标预测模式。
在一个实施例中,处理器执行的根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤还包括:获取子编码单元集各个子编码单元对应的目标预测模式;若子编码单元对应的目标预测模式中的一个或多个预测模式不是帧内预测模式时,目标编码单元对应的帧内预测模式的帧内跳过状态为跳过。
在一个实施例中,提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取待确定预测模式的目标编码单元;获取未分割预测模式下目标编码单元对应的第一率失真代价;对目标编码单元进行划分得到下一层对应的子编码单元集,获取子编码单元集中各个子编码单元对应的子单元率失真代价,统计各个子编码单元对应的子单元率失真代价得到第二率失真代价;根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态;根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码。
处理器执行计算机程序时还执行以下步骤:获取子编码单元集中子编码单元对应的子运动矢量代价;根据子运动矢量代价得到运动矢量代价阈值;根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态。
在一个实施例中,处理器所执行的根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:根据第一率失真代价和运动矢量代价阈值得到跳过阈值;当第二率失真代价大于或等于跳过阈值时,目标编码单元在当前层对应的分割预测模式的跳过状态为跳过。
在一个实施例中,处理器所执行的获取子编码单元集中子编码单元对应的子运动矢量代价的步骤包括:根据当前分割预测模式的划分位置从目标编码单元对应的子编码单元中选取划分位置对应的目标子编码单元;将目标子编码单元的运动矢量代价作为当前分割预测模式对应的子运动矢量代价;根据子运动矢量代价得到运动矢量代价阈值的步骤包括:根据子运动矢量代价计算得到当前分割预测模式对应的运动矢量代价阈值;根据第一率失真代价、第二率失真代价以及运动矢量代价阈值确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:根据第一率失真代价、第二率失真代价以及当前分割预测模式对应的运动矢量代价阈值确定目标编码单元在当前分割预测模式的跳过状态。
在一个实施例中,处理器所执行的根据当前分割预测模式对应的子运动矢量代价计算得到当前分割预测模式对应的运动矢量代价阈值的步骤包括:对子运动矢量代价进行和运算,得到矢量代价统计结果;根据矢量代价统计结果进行平方运算,得到当前分割预测模式对应的运动矢量代价阈值。
在一个实施例中,处理器所执行的根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:对第二率失真代价与第一率失真代价的进行比例计算,得到比例计算结果;当比例计算结果小于第一预设阈值时,目标编码单元在当前层对应的各个分割预测模式的跳过状态为跳过。
在一个实施例中,处理器所执行的获取未分割预测模式下目标编码单元对应的第一率失真代价的步骤包括:获取目标编码单元在运动合并模式下的率失真代价以及在帧间整体预测模式下的率失真代价;将运动合并模式下的率失真代价以及帧间整体预测模式下的率失真代价的最小值作为第一率失真代价。
在一个实施例中,子单元率失真代价为子编码单元在帧间整体预测模式下对应的率失真代价。
在一个实施例中,处理器所执行的根据未分割预测模式和非跳过状态的分割预测模式对目标编码单元进行编码的步骤包括:计算非跳过状态的分割预测模式下目标编码单元对应的第三率失真代价;根据第一率失真代价以及第三率失真代价从未分割预测模式以及非跳过状态的分割预测模式中筛选出目标编码单元对应的目标预测模式;根据目标编码单元对应的目标预测模式对目标编码单元进行编码。
在一个实施例中,处理器所执行的根据目标编码单元对应的目标预测模式对目标编码单元进行编码的步骤包括:获取各个子编码单元对应的目标预测模式的率失真代价,统计各个子编码单元对应的目标预测模式的率失真代价得到第四率失真代价;根据目标编码单元对应的目标预测模式对应的率失真代价以及第四率失真代价得到目标编码单元的划分方式;根据目标编码单元的划分方式对目标编码单元进行编码。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:对目标编码单元执行运动合并模式计算,得到第一预测信息,第一预测信息包括目标编码单元在运动合并模式下的预测残差信息、目标编码单元的参考编码单元信息以及运动合并模式计算结束后的最优模式的至少一个;当第一预测信息满足预设第一条件时,将运动合并模式作为目标编码单元对应的目标预测模式,预设第一条件包括目标编码单元在运动合并模式下没有预测残差、目标编码单元的参考编码单元与目标编码单元的相似概率排序在候选编码单元的预设排序内以及运动合并模式计算结束后的最优模式为跳过模式中的至少一个。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:当第一预测信息不满足预设第一条件时,对目标编码单元执行帧间整体预测模式计算,得到目标编码单元在帧间整体预测模式下对应的率失真代价;获取目标编码单元在运动合并模式下对应的率失真代价;若在帧间整体预测模式下没有预测残差,根据目标编码单元在运动合并模式下的率失真代价以及目标编码单元在整体预测模式的率失真代价得到选择预测模式;若选择预测模式为整体预测模式和/或目标编码单元在帧间整体预测模式下对应的运动矢量差小于或等于第二预设阈值时,将帧间整体预测模式作为目标编码单元对应的目标预测模式,或者若选择预测模式为运动合并模式时,将运动合并模式作为目标编码单元对应的目标预测模式。
在一个实施例中,处理器执行的根据第一率失真代价以及第二率失真代价确定目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤还包括以下步骤:获取子编码单元集各个子编码单元对应的目标预测模式;若子编码单元对应的目标预测模式中的一个或多个预测模式不是帧内预测模式时,目标编码单元对应的帧内预测模式的帧内跳过状态为跳过。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (15)
1.一种视频编码方法,所述方法包括:
获取待确定预测模式的目标编码单元;
获取未分割预测模式下所述目标编码单元对应的第一率失真代价;
对所述目标编码单元进行划分得到下一层对应的子编码单元集,获取所述子编码单元集中各个子编码单元对应的子单元率失真代价,统计所述各个子编码单元对应的子单元率失真代价得到第二率失真代价;
根据所述第一率失真代价以及所述第二率失真代价确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态;
根据所述未分割预测模式和非跳过状态的分割预测模式对所述目标编码单元进行编码。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述子编码单元集中子编码单元对应的子运动矢量代价;
根据所述子运动矢量代价得到运动矢量代价阈值;
所述根据所述第一率失真代价以及所述第二率失真代价确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:
根据所述第一率失真代价、所述第二率失真代价以及所述运动矢量代价阈值确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态。
3.根据权利要求2所述的方法,其特征在于,根据所述第一率失真代价、所述第二率失真代价以及所述运动矢量代价阈值确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:
根据所述第一率失真代价和所述运动矢量代价阈值得到跳过阈值;
当所述第二率失真代价大于或等于所述跳过阈值时,所述目标编码单元在当前层对应的分割预测模式的跳过状态为跳过。
4.根据权利要求2所述的方法,其特征在于,所述获取所述子编码单元集中子编码单元对应的子运动矢量代价的步骤包括:
根据当前分割预测模式的划分位置从所述目标编码单元对应的子编码单元中选取划分位置对应的目标子编码单元;
将所述目标子编码单元的运动矢量代价作为所述当前分割预测模式对应的子运动矢量代价;
所述根据所述子运动矢量代价得到运动矢量代价阈值的步骤包括:
根据所述子运动矢量代价计算得到所述当前分割预测模式对应的运动矢量代价阈值;
所述根据所述第一率失真代价、所述第二率失真代价以及所述运动矢量代价阈值确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:
根据所述第一率失真代价、所述第二率失真代价以及所述当前分割预测模式对应的运动矢量代价阈值确定所述目标编码单元在所述当前分割预测模式的跳过状态。
5.根据权利要求4所述的方法,其特征在于,所述根据所述当前分割预测模式对应的子运动矢量代价计算得到所述当前分割预测模式对应的运动矢量代价阈值的步骤包括:
对所述子运动矢量代价进行和运算,得到矢量代价统计结果;
根据所述矢量代价统计结果进行平方运算,得到所述当前分割预测模式对应的运动矢量代价阈值。
6.根据权利要求1所述的方法,其特征在于,所述根据所述第一率失真代价以及所述第二率失真代价确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态的步骤包括:
对所述第二率失真代价与所述第一率失真代价的进行比例计算,得到比例计算结果;
当所述比例计算结果小于第一预设阈值时,所述目标编码单元在当前层对应的各个分割预测模式的跳过状态为跳过。
7.根据权利要求1所述的方法,其特征在于,所述获取未分割预测模式下所述目标编码单元对应的第一率失真代价的步骤包括:
获取所述目标编码单元在运动合并模式下的率失真代价以及在帧间整体预测模式下的率失真代价;
将所述运动合并模式下的率失真代价以及所述帧间整体预测模式下的率失真代价的最小值作为第一率失真代价。
8.根据权利要求1所述的方法,其特征在于,所述子单元率失真代价为所述子编码单元在帧间整体预测模式下对应的率失真代价。
9.根据权利要求1所述的方法,其特征在于,所述根据所述未分割预测模式和非跳过状态的分割预测模式对所述目标编码单元进行编码的步骤包括:
计算所述非跳过状态的分割预测模式下所述目标编码单元对应的第三率失真代价;
根据所述第一率失真代价以及所述第三率失真代价从所述未分割预测模式以及所述非跳过状态的分割预测模式中筛选出所述目标编码单元对应的目标预测模式;
根据所述目标编码单元对应的目标预测模式对所述目标编码单元进行编码。
10.根据权利要求9所述的方法,其特征在于,所述根据所述目标编码单元对应的目标预测模式对所述目标编码单元进行编码包括:
获取所述各个子编码单元对应的目标预测模式的率失真代价,统计所述各个子编码单元对应的目标预测模式的率失真代价得到第四率失真代价;
根据所述目标编码单元对应的目标预测模式对应的率失真代价以及所述第四率失真代价得到所述目标编码单元的划分方式;
根据所述目标编码单元的划分方式对所述目标编码单元进行编码。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述目标编码单元执行运动合并模式计算,得到第一预测信息,所述第一预测信息包括所述目标编码单元在运动合并模式下的预测残差信息、所述目标编码单元的参考编码单元信息以及所述运动合并模式计算结束后的最优模式的至少一个;
当所述第一预测信息满足预设第一条件时,将运动合并模式作为所述目标编码单元对应的目标预测模式,所述预设第一条件包括所述目标编码单元在运动合并模式下没有预测残差、所述目标编码单元的参考编码单元与所述目标编码单元的相似概率排序在候选编码单元的预设排序内以及所述运动合并模式计算结束后的最优模式为跳过模式中的至少一个。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
当所述第一预测信息不满足预设第一条件时,对所述目标编码单元执行帧间整体预测模式计算,得到所述目标编码单元在帧间整体预测模式下对应的率失真代价;
获取所述目标编码单元在运动合并模式下对应的率失真代价;
若在帧间整体预测模式下没有预测残差,根据所述目标编码单元在运动合并模式下的率失真代价以及所述目标编码单元在整体预测模式的率失真代价得到选择预测模式;
若所述选择预测模式为整体预测模式和/或所述目标编码单元在所述帧间整体预测模式下对应的运动矢量差小于或等于第二预设阈值时,将帧间整体预测模式作为所述目标编码单元对应的目标预测模式,或者若所述选择预测模式为运动合并模式时,将所述运动合并模式作为所述目标编码单元对应的目标预测模式。
13.一种视频编码装置,所述装置包括:
目标编码单元获取模块,用于获取待确定预测模式的目标编码单元;
第一代价获取模块,用于获取未分割预测模式下所述目标编码单元对应的第一率失真代价;
第二代价获取模块,用于对所述目标编码单元进行划分得到下一层对应的子编码单元集,获取所述子编码单元集中各个子编码单元对应的子单元率失真代价,统计所述各个子编码单元对应的子单元率失真代价得到第二率失真代价;
跳过状态确定模块,用于根据所述第一率失真代价以及所述第二率失真代价确定所述目标编码单元在当前层对应的各个分割预测模式的跳过状态;
编码模块,用于根据所述未分割预测模式和非跳过状态的分割预测模式对所述目标编码单元进行编码。
14.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1至12中任一项权利要求所述视频编码方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至12中任一项权利要求所述视频编码方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711107801.8A CN109788287B (zh) | 2017-11-10 | 2017-11-10 | 视频编码方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711107801.8A CN109788287B (zh) | 2017-11-10 | 2017-11-10 | 视频编码方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109788287A true CN109788287A (zh) | 2019-05-21 |
CN109788287B CN109788287B (zh) | 2022-10-25 |
Family
ID=66485240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711107801.8A Active CN109788287B (zh) | 2017-11-10 | 2017-11-10 | 视频编码方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109788287B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111294591A (zh) * | 2020-05-09 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 视频信息处理方法、多媒体信息处理方法、装置 |
CN111669586A (zh) * | 2020-06-17 | 2020-09-15 | 北京百度网讯科技有限公司 | 编码方法、装置、设备和计算机存储介质 |
CN111901602A (zh) * | 2020-08-07 | 2020-11-06 | 北京奇艺世纪科技有限公司 | 视频数据编码方法、装置、计算机设备和存储介质 |
CN111988612A (zh) * | 2020-08-28 | 2020-11-24 | 北京奇艺世纪科技有限公司 | 一种视频编码处理方法、装置及电子设备 |
CN111988607A (zh) * | 2020-08-07 | 2020-11-24 | 北京奇艺世纪科技有限公司 | 编码单元处理方法、装置、电子设备及存储介质 |
CN112204974A (zh) * | 2019-10-31 | 2021-01-08 | 深圳市大疆创新科技有限公司 | 图像预测和视频编码方法、装置、可移动平台及存储介质 |
CN112839224A (zh) * | 2019-11-22 | 2021-05-25 | 腾讯科技(深圳)有限公司 | 一种预测模式选择方法、装置、视频编码设备及存储介质 |
WO2021159785A1 (zh) * | 2020-02-12 | 2021-08-19 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、终端及计算机可读存储介质 |
WO2023147780A1 (zh) * | 2022-02-07 | 2023-08-10 | 杭州未名信科科技有限公司 | 视频帧的编码模式筛选方法、装置及电子设备 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070140338A1 (en) * | 2005-12-19 | 2007-06-21 | Vasudev Bhaskaran | Macroblock homogeneity analysis and inter mode prediction |
US20130016783A1 (en) * | 2011-07-12 | 2013-01-17 | Hyung Joon Kim | Method and Apparatus for Coding Unit Partitioning |
WO2013077660A1 (ko) * | 2011-11-24 | 2013-05-30 | 에스케이텔레콤 주식회사 | 세밀한 예측 단위를 사용하는 효과적인 부호화/복호화 방법 및 장치 |
CN104023234A (zh) * | 2014-06-24 | 2014-09-03 | 华侨大学 | 一种适用于hevc的快速帧间预测方法 |
CN105812795A (zh) * | 2014-12-31 | 2016-07-27 | 浙江大华技术股份有限公司 | 一种最大编码单元的编码模式的确定方法和装置 |
CN105915925A (zh) * | 2015-07-24 | 2016-08-31 | 乐视云计算有限公司 | 基于hevc的编码单元构建方法及装置 |
CN105933717A (zh) * | 2016-04-25 | 2016-09-07 | 北京奇艺世纪科技有限公司 | 一种编码单元的模式决策方法和装置 |
US20170094286A1 (en) * | 2014-06-10 | 2017-03-30 | Tencent Technology (Shenzhen) Company Limited | Video Coding Device, Method, and Apparatus and Inter-Frame Mode Selection Method and Apparatus Therefor |
CN106937116A (zh) * | 2017-03-15 | 2017-07-07 | 杭州电子科技大学 | 基于随机训练集自适应学习的低复杂度视频编码方法 |
-
2017
- 2017-11-10 CN CN201711107801.8A patent/CN109788287B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070140338A1 (en) * | 2005-12-19 | 2007-06-21 | Vasudev Bhaskaran | Macroblock homogeneity analysis and inter mode prediction |
US20130016783A1 (en) * | 2011-07-12 | 2013-01-17 | Hyung Joon Kim | Method and Apparatus for Coding Unit Partitioning |
WO2013077660A1 (ko) * | 2011-11-24 | 2013-05-30 | 에스케이텔레콤 주식회사 | 세밀한 예측 단위를 사용하는 효과적인 부호화/복호화 방법 및 장치 |
US20170094286A1 (en) * | 2014-06-10 | 2017-03-30 | Tencent Technology (Shenzhen) Company Limited | Video Coding Device, Method, and Apparatus and Inter-Frame Mode Selection Method and Apparatus Therefor |
CN104023234A (zh) * | 2014-06-24 | 2014-09-03 | 华侨大学 | 一种适用于hevc的快速帧间预测方法 |
CN105812795A (zh) * | 2014-12-31 | 2016-07-27 | 浙江大华技术股份有限公司 | 一种最大编码单元的编码模式的确定方法和装置 |
CN105915925A (zh) * | 2015-07-24 | 2016-08-31 | 乐视云计算有限公司 | 基于hevc的编码单元构建方法及装置 |
CN105933717A (zh) * | 2016-04-25 | 2016-09-07 | 北京奇艺世纪科技有限公司 | 一种编码单元的模式决策方法和装置 |
CN106937116A (zh) * | 2017-03-15 | 2017-07-07 | 杭州电子科技大学 | 基于随机训练集自适应学习的低复杂度视频编码方法 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112204974A (zh) * | 2019-10-31 | 2021-01-08 | 深圳市大疆创新科技有限公司 | 图像预测和视频编码方法、装置、可移动平台及存储介质 |
WO2021081905A1 (zh) * | 2019-10-31 | 2021-05-06 | 深圳市大疆创新科技有限公司 | 图像预测和视频编码方法、装置、可移动平台及存储介质 |
CN112839224B (zh) * | 2019-11-22 | 2023-10-10 | 腾讯科技(深圳)有限公司 | 一种预测模式选择方法、装置、视频编码设备及存储介质 |
CN112839224A (zh) * | 2019-11-22 | 2021-05-25 | 腾讯科技(深圳)有限公司 | 一种预测模式选择方法、装置、视频编码设备及存储介质 |
WO2021159785A1 (zh) * | 2020-02-12 | 2021-08-19 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、终端及计算机可读存储介质 |
US12058320B2 (en) | 2020-02-12 | 2024-08-06 | Tencent Technology (Shenzhen) Company Limited | Image processing method and apparatus, terminal, and computer-readable storage medium |
CN111294591B (zh) * | 2020-05-09 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 视频信息处理方法、多媒体信息处理方法、装置 |
CN111294591A (zh) * | 2020-05-09 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 视频信息处理方法、多媒体信息处理方法、装置 |
CN111669586B (zh) * | 2020-06-17 | 2023-02-17 | 北京百度网讯科技有限公司 | 编码方法、装置、设备和计算机存储介质 |
CN111669586A (zh) * | 2020-06-17 | 2020-09-15 | 北京百度网讯科技有限公司 | 编码方法、装置、设备和计算机存储介质 |
CN111988607A (zh) * | 2020-08-07 | 2020-11-24 | 北京奇艺世纪科技有限公司 | 编码单元处理方法、装置、电子设备及存储介质 |
CN111901602A (zh) * | 2020-08-07 | 2020-11-06 | 北京奇艺世纪科技有限公司 | 视频数据编码方法、装置、计算机设备和存储介质 |
CN111901602B (zh) * | 2020-08-07 | 2022-09-30 | 北京奇艺世纪科技有限公司 | 视频数据编码方法、装置、计算机设备和存储介质 |
CN111988612A (zh) * | 2020-08-28 | 2020-11-24 | 北京奇艺世纪科技有限公司 | 一种视频编码处理方法、装置及电子设备 |
WO2023147780A1 (zh) * | 2022-02-07 | 2023-08-10 | 杭州未名信科科技有限公司 | 视频帧的编码模式筛选方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109788287B (zh) | 2022-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109788287A (zh) | 视频编码方法、装置、计算机设备和存储介质 | |
CN104811736B (zh) | 处理视频信号的方法和设备 | |
KR102034004B1 (ko) | 블록 분할 및 블록 병합을 지원하는 픽처 코딩 | |
CN104754355B (zh) | 一种图像解码设备 | |
CN104796722B (zh) | 用于对运动矢量进行编码和解码的方法和设备 | |
CN110521205A (zh) | 用于视频编解码的子预测单元时间运动向量预测 | |
EP2983365A1 (en) | Image prediction coding method and image coder | |
CN107925759A (zh) | 用于编码和解码帧内预测的方法和设备 | |
CN108605137A (zh) | 利用仿射运动补偿的视频编码方法与装置 | |
CN110446044B (zh) | 线性模型预测方法、装置、编码器及存储装置 | |
CN106686378A (zh) | 对图像进行解码的方法和设备 | |
CN110460857A (zh) | 视频解码方法、设备以及计算机可读存储介质 | |
CN105519106B (zh) | 用于三维或多视图视频编码中基于深度的块分区模式的编码方法 | |
CN110249628A (zh) | 用于预测分区的视频编码器和解码器 | |
CN107318017A (zh) | 对视频数据进行解码的方法和设备 | |
CN110166771A (zh) | 视频编码方法、装置、计算机设备和存储介质 | |
CN103024397B (zh) | 确定时域运动矢量预测值的方法和装置 | |
CN108712648A (zh) | 一种深度视频快速帧内编码方法 | |
CN106993187B (zh) | 一种可变帧率的编码方法及装置 | |
US10931965B2 (en) | Devices and methods for video coding using segmentation based partitioning of video coding blocks | |
CN105637872A (zh) | 图像解码装置、图像编码装置 | |
CN106233334A (zh) | 一种将视频块分割模式和视频编码块关联的装置和方法 | |
CN112055203A (zh) | 帧间预测方法、视频编码方法及其相关装置 | |
CN100385957C (zh) | 一种运动矢量预测的方法 | |
CN105519120A (zh) | 3d以及多视图视频编码中子pu语法信令以及亮度补偿的方法 |
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 |