CN113573066A - 一种视频编码的方法及装置 - Google Patents
一种视频编码的方法及装置 Download PDFInfo
- Publication number
- CN113573066A CN113573066A CN202110766981.0A CN202110766981A CN113573066A CN 113573066 A CN113573066 A CN 113573066A CN 202110766981 A CN202110766981 A CN 202110766981A CN 113573066 A CN113573066 A CN 113573066A
- Authority
- CN
- China
- Prior art keywords
- sub
- block
- inter
- frame prediction
- coding 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000004364 calculation method Methods 0.000 claims abstract description 56
- 230000015654 memory Effects 0.000 claims description 16
- 238000005516 engineering process Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 11
- 238000005192 partition Methods 0.000 description 9
- 230000011218 segmentation Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请公开了一种视频编码的方法及装置,用以降低视频编码技术的计算复杂度。其中,方法包括:获取编码单元中多个子块的帧内预测代价和帧间预测代价;根据所述编码单元中多个子块的帧内预测代价和帧间预测代价,对所述编码单元执行SKIP模式的帧间预测计算之后,停止对所述编码单元继续执行所述帧间预测计算。
Description
技术领域
本申请实施例涉及云转码技术领域,尤其涉及一种视频编码的方法及装置。
背景技术
随着各类视频直播网站的不断涌现,直播类场景中的画质与流畅性是用于衡量直播质量的两大指标,如何提升画质与流畅性是目前主要的研究方向。高效视频编码标准(high efficiency video coding,HEVC)是新一代视频编码标准,也可称为是h.265,其可用于解决人们对直播类场景中视觉和听觉的需求。
HEVC可有效提高压缩效率,但在编码过程中,编码设备需要将每帧图像分割为多个编码单元(coding unit,CU),每个编码单元又可以分割为一个或多个预测单元(prediction unit,PU),预测单元用于实现编码单元的预测过程。预测单元的分割方式有多种,编码设备在确定需要采用哪种分割方式时,需要遍历所有的分割方式来确定每种分割方式的率失真代价,并从中选择率失真代价最小的分割方式。如此该编码技术的计算复杂度较高。
发明内容
本申请实施例提供一种视频编码的方法及装置,用以降低视频编码技术的计算复杂度。
第一方面,本申请实施例提供的一种视频编码的方法,该方法可由编码设备执行,或该方法可由编码设备中的模块例如芯片执行。
所述方法包括:获取编码单元中多个子块的帧内预测代价和帧间预测代价;根据所述编码单元中多个子块的帧内预测代价和帧间预测代价,对所述编码单元执行SKIP模式的帧间预测计算之后,停止对所述编码单元继续执行所述帧间预测计算。
上述技术方案中,帧间预测可包括SKIP,Merge,2N×2N,2N×N,N×2N,不对称分割等多种预测计算,可以根据编码单元中多个子块的帧内预测代价和帧间预测代价,从多种预测计算中确定出为该编码单元进行帧间预测的预测计算。从而无需对该编码单元进行所有的预测计算,有助于降低视频编码技术的计算复杂度。
在一种可能的实现方式中,所述根据所述编码单元中多个子块的帧内预测代价和帧间预测代价,对所述编码单元执行SKIP模式的帧间预测计算之后,停止对所述编码单元继续执行所述帧间预测计算,包括:若所述编码单元中多个子块的帧内预测代价之和小于所述编码单元中多个子块的帧间预测代价之和,则在对所述编码单元执行完成SKIP模式的帧间预测计算之后,不再对所述编码单元执行其它帧间预测计算。
上述技术方案中,在帧内预测代价之和小于帧间预测代价之和时,可以只对该编码单元执行SKIP模式的帧间预测计算,而无需执行其他的预测计算,有助于降低视频编码技术的计算复杂度。
在一种可能的实现方式中,所述获取编码单元中多个子块的帧内预测代价和帧间预测代价之前,还包括:获取第一子块的运动参数,所述第一子块是所述编码单元中多个子块中的任一个;若所述第一子块的运动参数满足预设条件,则对所述第一子块执行帧内预测和帧间预测,分别得到所述第一子块的帧内预测代价和帧间预测代价。
在一种可能的实现方式中,还包括:若所述第一子块的运动参数不满足所述预设条件,则对所述第一子块执行运动估计,得到所述第一子块的运动矢量;根据所述第一子块的运动矢量,对所述第一子块执行帧内预测和帧间预测,分别得到所述第一子块的帧内预测代价和帧间预测代价。
上述技术方案中,若第一子块的运动参数满足预设条件,则无需对第一子块执行运动估计,而直接对第一子块执行帧内预测和帧间预测,从而进一步降低视频编码技术的计算复杂度。
在一种可能的实现方式中,所述第一子块的运动参数是所述第一子块的预测运动矢量代价;所述第一子块的运动参数满足预设条件,包括:所述第一子块的预测运动矢量代价小于第一阈值。
在一种可能的实现方式中,所述第一子块的运动参数是所述第一子块的相邻子块的预测运动矢量代价,所述第一子块的相邻子块是位于所述第一子块的左方、上方、左上方和右上方的四个子块中的任一个;所述第一子块的运动参数满足预设条件,包括:所述第一子块的相邻子块的预测运动矢量代价小于第二阈值。
在一种可能的实现方式中,所述预测代价为视频残差信号大小,所述编码单元对应的帧类型为P帧。
上述技术方案中,采用计算量较小的视频残差信号大小作为预测代价,可进一步降低视频编码技术的计算复杂度。
第二方面,本申请实施例提供的一种视频编码的装置,该装置可以是编码设备,或者是编码设备中的模块例如芯片。
所述装置包括:获取模块和预测模块;获取模块,用于获取编码单元中多个子块的帧内预测代价和帧间预测代价;预测模块,用于根据所述编码单元中多个子块的帧内预测代价和帧间预测代价,对所述编码单元执行SKIP模式的帧间预测计算之后,停止对所述编码单元继续执行所述帧间预测计算。
在一种可能的实现方式中,所述预测模块具体用于:若所述编码单元中多个子块的帧内预测代价之和小于所述编码单元中多个子块的帧间预测代价之和,则在对所述编码单元执行完成SKIP模式的帧间预测计算之后,不再对所述编码单元执行其它帧间预测计算。
在一种可能的实现方式中,所述获取模块在获取编码单元中多个子块的帧内预测代价和帧间预测代价之前,还用于:获取第一子块的运动参数,所述第一子块是所述编码单元中多个子块中的任一个;若所述第一子块的运动参数满足预设条件,则所述预测模块还用于对所述第一子块执行帧内预测和帧间预测,分别得到所述第一子块的帧内预测代价和帧间预测代价。
在一种可能的实现方式中,若所述第一子块的运动参数不满足所述预设条件,则所述预测模块还用于对所述第一子块执行运动估计,得到所述第一子块的运动矢量;根据所述第一子块的运动矢量,对所述第一子块执行帧内预测和帧间预测,分别得到所述第一子块的帧内预测代价和帧间预测代价。
在一种可能的实现方式中,所述第一子块的运动参数是所述第一子块的预测运动矢量代价;所述第一子块的运动参数满足预设条件,包括:所述第一子块的预测运动矢量代价小于第一阈值。
在一种可能的实现方式中,所述第一子块的运动参数是所述第一子块的相邻子块的预测运动矢量代价,所述第一子块的相邻子块是位于所述第一子块的左方、上方、左上方和右上方的四个子块中的任一个;所述第一子块的运动参数满足预设条件,包括:所述第一子块的相邻子块的预测运动矢量代价小于第二阈值。
在一种可能的实现方式中,所述预测代价为视频残差信号大小,所述编码单元对应的帧类型为P帧。
第三方面,本申请实施例还提供了一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述第一方面或第一方面中的任意一种方法。
第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令被计算设备执行时,使得该计算设备执行上述第一方面或第一方面中的任意一种方法。
第五方面,本申请提供一种计算机程序产品,该计算机程序产品包括计算机程序或指令,当该计算机程序或指令被计算设备执行时,实现上述第一方面或第一方面中的任意一种方法。
上述第二方面至第五方面中任一方面可以达到的技术效果可以参照上述第一方面中有益效果的描述,此处不再重复赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种系统架构的示意图;
图2为本申请实施例提供的一种视频编码的示意图;
图3为本申请实施例提供的一种视频编码的方法的流程示意图;
图4为本申请实施例提供的一种确定相邻子块的示意图;
图5为本申请实施例提供的再一种确定相邻子块的示意图;
图6为本申请实施例提供的一种运动估计的判断流程的示意图;
图7为本申请实施例提供的又一种视频编码的方法的流程示意图;
图8为本申请实施例提供的一种视频编码的装置的结构示意图;
图9为本申请实施例提供的另一种视频编码的装置的结构示意图。
具体实施方式
下面将结合附图,对本申请实施例进行详细描述。
如图1为本申请实施例所使用的系统架构,其中包括编码设备和解码设备。编码设备可以对获取到的视频数据进行编码,将编码后的视频数据经网络发送至解码设备。可选的,编码设备或解码设备均可以是电子设备,电子设备比如台式电脑、笔记本电脑、平板电脑、机顶盒、电视、照相机、显示设备、数字媒体播放器、视频游戏机、视频流设备等。
参照图2示例性示出的编码示意图,编码设备在编码过程中,会针对视频数据中的每一帧视频图像,将该帧视频图像分割为多个编码单元,编码单元的最大尺寸可以是64×64,最小尺寸可以是8×8。
在具体实现中,编码设备获取到的原始视频图像中包括的编码单元尺寸为64×64,此时,编码单元尚未被分割,其对应的深度为0(可参见图2示出的深度=0,64×64)。然后编码设备执行多次分割:
第一次分割:将每个尺寸为64×64的编码单元分割为四个32×32的编码单元(可参见图2示出的深度=1,32×32);
第二次分割:将每个尺寸为32×32的编码单元分割为四个16×16的编码单元(可参见图2示出的深度=2,16×16);
第三次分割:将每个尺寸为16×16的编码单元分割为四个8×8的编码单元(可参见图2示出的深度=3,8×8)。
进一步的,编码设备可以基于不同的预测计算模式和每次分割得到的编码单元确定该编码单元对应的一个或多个预测单元。其中预测计算模式具体可以包括:帧内(intra)模式和帧间(inter)模式。
继续参见图2,对于帧间预测,每个预测深度需要穷尽计算各种各样的分割组合:SKIP,Merge,2N×2N,2N×N,N×2N,不对称分割(比如2N×nU、2N×nD、nL×2N和nR×2N)等。对于帧内预测,每个深度需要计算2N×2N,其中最小深度8×8还需要计算N×N,且每个深度需要计算35种预测计算组合。编码设备在确定需要采用哪种分割组合的方式时,需要遍历所有的分割组合来确定每种分割方式的率失真代价,并从中选择率失真代价最小的分割方式。如此该编码技术的计算复杂度较高。
基于此,本申请提供一种视频编码的方法,用于降低计算复杂度。
图3示例性的示出了本申请实施例提供的一种视频编码的方法的流程,该流程可以由视频编码的装置执行,该装置具体可以是图1示例性示出的编码设备,该编码设备还可称为是编码器。
如图3所示,该流程具体包括:
步骤301,获取编码单元中多个子块的帧内预测代价和帧间预测代价。
一个编码单元可以划分为多个子块,示例性的,一个编码单元可以划分为四个子块,比如可以将64×64的编码单元划分为四个32×32的编码单元,或者可以将32×32的编码单元划分为四个16×16的编码单元等。本申请中,可以将编码单元划分为四个子块来举例说明,其中四个子块可分别表示为子块1、子块2、子块3和子块4。
可以针对该编码单元中的每个子块,确定该子块的帧内预测代价和帧间预测代价。比如分别确定出子块1的帧内预测代价1和帧间预测代价1,子块2的帧内预测代价2和帧间预测代价2,子块3的帧内预测代价3和帧间预测代价3,以及子块4的帧内预测代价4和帧间预测代价4。
一种可能的实现方式中,在进行帧间编码开始时,可以先对当前帧进行2×2下采样,计算当前帧作为I帧、P帧和B帧的代价,然后从I帧、P帧和B帧的代价中选取最小代价对应的帧类型,作为当前帧的帧类型。如此,可以得到帧类型为P帧的编码帧,对该编码帧中的编码单元进行划分得到四个子块,其中每个子块对应于各自的代价。为了进一步减少计算量,编码单元中子块的帧内预测代价和帧间预测代价可以是低复杂度的SATD(视频残差信号大小)。
步骤302,根据编码单元中多个子块的帧内预测代价和帧间预测代价,对编码单元执行帧间预测。
一种可能的实现方式中,可以确定编码单元中多个子块的帧内预测代价之和,以及确定编码单元中多个子块的帧间预测代价之和。在编码单元中多个子块的帧内预测代价之和小于编码单元中多个子块的帧间预测代价之和的情况下,确定只需要进行SKIP模式,不进行帧间预测的其余模式计算,即直接跳过Merge模式,2Nx2N,2NxN,Nx2N等其余模式的计算。
示例性的,编码单元中多个子块的帧内预测代价之和可以表示为:帧内预测代价1+帧内预测代价2+帧内预测代价3+帧内预测代价4;编码单元中多个子块的帧间预测代价之和可以表示为:帧间预测代价1+帧间预测代价2+帧间预测代价3+帧间预测代价4;在帧内预测代价之和>帧间预测代价之和的情况下,只需要进行SKIP模式,不进行帧间预测的其余模式计算,即直接跳过Merge,2Nx2N,2NxN,Nx2N等其余模式的计算。
在编码单元中多个子块的帧内预测代价之和大于或等于编码单元中多个子块的帧间预测代价之和的情况下,可以分别执行SKIP模式,Merge模式,2Nx2N,2NxN,Nx2N等预测计算。
此外,还可以对编码单元中执行帧内预测,可以对当前的编码单元执行2N×2N的帧内预测计算,且在最小深度8×8时,可增加N×N的帧内预测计算。
本申请中,为了进一步减少计算量,可以在计算子块的帧间预测代价时,跳过子块的运动估计过程。
针对于编码单元中的任一个子块(可称为第一子块),可获取该第一子块的运动参数。根据第一子块的运行参数,来确定是否跳过第一子块的运动估计过程。具体可参见下述两种情况:
在第一子块的运动参数满足预设条件的情况下,可以跳过对第一子块执行运动估计的过程,而对第一字块直接执行帧内预测和帧间预测,分别得到第一子块的帧内预测代价和帧间预测代价。
在第一子块的运动参数不满足预设条件的情况下,对第一子块执行运动估计,得到第一子块的运动矢量;然后根据第一子块的运动矢量,对第一子块执行帧内预测和帧间预测,分别得到第一子块的帧内预测代价和帧间预测代价。
预先说明的是,在对某个子块进行运动估计之前,需要先预测该子块的运动矢量(即获取该子块的预测运动矢量),并以最优预测运动矢量得出的偏移点作为运动估计的起点,对子块进行运动估计。而在预测子块的运动矢量时,子块的预测运动矢量是基于率失真代价计算得到,故当子块的预测运动矢量代价足够小时,可以将其认为是最优预测运动矢量,而最优预测运动矢量可作为最终的运动矢量,从而跳过对子块的运动估计过程。进一步的,由于视频数据中相邻的子块在空域上具有极强的相关性,所以在当前子块的预测运动矢量代价没有足够小时,可以参考当前子块的相邻子块的预测运动矢量,在当前子块的相邻子块的预测运动矢量足够小,同样可以确定当前子块的预测运动矢量为最终运动矢量,从而可以跳过对当前子块的运动估计过程,有助于减少计算量。
基于上述分析可知,第一子块的运动参数可以是第一子块的预测运动矢量代价,或者是第一子块的相邻子块的预测运动矢量代价。
示例1,在第一子块的运动参数是第一子块的预测运动矢量代价时,可以确定第一子块的预测运动矢量代价是否小于第一阈值,若是,则可以跳过对第一子块执行运动估计的过程;否则,在对第一子块执行完运动估计之后,对第一子块执行帧内预测和帧间预测。
示例2,在第一子块的运动参数是第一子块的相邻子块的预测运动矢量代价时,可以是确定第一子块的相邻子块的预测运动矢量代价是否小于第二阈值,若是,则可以跳过对第一子块执行运动估计的过程;否则,在对第一子块执行完运动估计之后,对第一子块执行帧内预测和帧间预测。
在示例2中,可以预先获得第一子块的相邻子块,示例性的,第一子块的相邻子块可以是位于第一子块的左方、上方、左上方和右上方的四个子块中的任一个。第一子块的相邻子块可以与第一子块的大小相同或不同。
示例性的,如图4示出的编码单元的划分示意图中,若第一子块是子块1,则子块1的相邻子块可以是子块5、子块6、子块7、子块8中的任一个,其中子块5、子块6、子块7、子块8分别位于子块1的左方、左上方、上方和右上方。其中,子块1的大小与子块5、子块6、子块7、子块8的大小均相同。
再示例性的,如图5示出的编码单元的划分示意图中,若当前子块是子块1,则子块1的相邻子块可以是子块5、子块6、子块7、子块8中的任一个,其中子块5、子块6、子块7、子块8分别位于子块1的左方、左上方、上方和右上方。其中,子块1的大小与子块5、子块6、子块8的大小均相同,子块1的大小与子块7的大小不同。
进一步的,本申请在确定第一子块的运动参数的是否满足预设条件时,具体可以是,先确定第一子块的预测运动矢量代价是否小于第一阈值,若否,则再确定第一子块的相邻子块的预测运动矢量代价是否小于第二阈值。进一步的,还可以根据位于第一子块的左方的子块、位于第一子块的上方的子块、位于第一子块的左上方的子块、位于第一子块的右上方的子块的顺序,来确定第一子块的相邻子块的预测运动矢量代价是否小于第二阈值。具体可参见图6示例性示出的对第一子块进行运动估计的判断流程。
本申请中,第一阈值与第二阈值可以相等或不等。在一种可能的实现方式中,第一阈值与第二阈值可以都等于64。
为了更好的解释本申请实施例,图7为本申请提供的再一种视频编码的方法的流程,该流程中:
步骤701,获取第一子块的运动参数。其中,第一子块是编码单元中的任一个子块,第一子块的运动参数可以是第一子块的预测运动矢量代价,或者是第一子块的相邻子块的预测运动矢量代价。
步骤702,判断第一子块的运动参数是否满足预设条件,若是,则执行步骤704,否则,在执行步骤703之后执行步骤704。
步骤703,对第一子块执行运动估计,得到第一子块的运动矢量。
步骤704,对第一子块执行帧内预测和帧间预测,得到第一子块的帧内预测代价和帧间预测代价。
步骤705,判断编码单元中多个子块的帧内预测代价之和是否小于编码单元中多个子块的帧间预测代价之和,若是,则执行步骤706,否则执行步骤707。
步骤706,对编码单元执行完成SKIP模式的帧间预测计算之后,不再对编码单元执行其它帧间预测计算。
步骤707,对编码单元执行所有帧间预测计算。
在当前编码单元执行完成帧间预测计算(步骤706或者步骤707)之后,可以将当前编码单元的下一个编码单元作为新的当前编码单元,重新执行步骤701至步骤707,直至将最后一帧视频数据中的最后一个编码单元执行完成。
上述技术方案中,帧间预测可包括SKIP,Merge,2N×2N,2N×N,N×2N,不对称分割等多种预测计算,可以根据编码单元中多个子块的帧内预测代价和帧间预测代价,从多种预测计算中确定出为该编码单元进行帧间预测的预测计算模式。具体的,在帧内预测代价之和小于帧间预测代价之和的情况下,可以只对编码单元执行SKIP的帧间预测计算模式。从而无需对该编码单元进行所有的预测计算,有助于降低视频编码技术的计算复杂度。进一步的,若第一子块的运动参数满足预设条件,则无需对第一子块执行运动估计,而直接对第一子块执行帧内预测和帧间预测,进一步降低视频编码技术的计算复杂度。
需要说明的是,本申请提供的视频编码的方法可以适用于多种编码技术,比如h.265,或者h.266,或者其他编码技术,只要是在帧内预测代价之和小于帧间预测代价之和,即可以仅对该编码单元执行SKIP模式,而无需执行其余模式的计算。进一步的,只要编码单元中子块的预测运动矢量代价足够小,即可以不对该子块执行运动估计,而直接对第一子块执行帧内预测和帧间预测。从而有助于较大的节省编码过程中的计算量。
基于上述内容和相同构思,图8和图9为本申请的提供的可能的视频编码的装置的结构示意图。这些装置可以用于实现上述方法实施例中的功能,因此也能实现上述方法实施例所具备的有益效果。在本申请中,该装置可以是如图1所示的编码设备,或者是编码设备中的模块例如芯片。
所述装置包括:获取模块801和预测模块802;获取模块801,用于获取编码单元中多个子块的帧内预测代价和帧间预测代价;预测模块802,用于根据所述编码单元中多个子块的帧内预测代价和帧间预测代价,对所述编码单元执行SKIP模式的帧间预测计算之后,停止对所述编码单元继续执行所述帧间预测计算。
在一种可能的实现方式中,所述预测模块802具体用于:若所述编码单元中多个子块的帧内预测代价之和小于所述编码单元中多个子块的帧间预测代价之和,则在对所述编码单元执行完成SKIP模式的帧间预测计算之后,不再对所述编码单元执行其它帧间预测计算。
在一种可能的实现方式中,所述获取模块801在获取编码单元中多个子块的帧内预测代价和帧间预测代价之前,还用于:获取第一子块的运动参数,所述第一子块是所述编码单元中多个子块中的任一个;若所述第一子块的运动参数满足预设条件,则所述预测模块802还用于对所述第一子块执行帧内预测和帧间预测,分别得到所述第一子块的帧内预测代价和帧间预测代价。
在一种可能的实现方式中,若所述第一子块的运动参数不满足所述预设条件,则所述预测模块802还用于对所述第一子块执行运动估计,得到所述第一子块的运动矢量;根据所述第一子块的运动矢量,对所述第一子块执行帧内预测和帧间预测,分别得到所述第一子块的帧内预测代价和帧间预测代价。
在一种可能的实现方式中,所述第一子块的运动参数是所述第一子块的预测运动矢量代价;所述第一子块的运动参数满足预设条件,包括:所述第一子块的预测运动矢量代价小于第一阈值。
在一种可能的实现方式中,所述第一子块的运动参数是所述第一子块的相邻子块的预测运动矢量代价,所述第一子块的相邻子块是位于所述第一子块的左方、上方、左上方和右上方的四个子块中的任一个;所述第一子块的运动参数满足预设条件,包括:所述第一子块的相邻子块的预测运动矢量代价小于第二阈值。
在一种可能的实现方式中,所述预测代价为视频残差信号大小,所述编码单元对应的帧类型为P帧。
如图9所示为本申请实施例提供的装置900,图9所示的装置可以为图8所示的装置的一种硬件电路的实现方式。该装置可适用于前面所示出的流程图中,执行上述方法实施例中的功能。
为了便于说明,图9仅示出了该装置的主要部件。
图9所示的装置900包括通信接口910、处理器920和存储器930,其中存储器930用于存储程序指令和/或数据。处理器920可能和存储器930协同操作。处理器920可能执行存储器930中存储的程序指令。存储器930中存储的指令或程序被执行时,该处理器920用于执行上述实施例中确定模块601和停止模块602执行的操作。
存储器930和处理器920耦合。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。所述存储器930中的至少一个可以包括于处理器920中。
在本申请实施例中,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。在本申请实施例中,通信接口为收发器时,收发器可以包括独立的接收器、独立的发射器;也可以集成收发功能的收发器、或者是通信接口。
装置900还可以包括通信线路940。其中,通信接口910、处理器920以及存储器930可以通过通信线路940相互连接;通信线路940可以是外设部件互连标准(peripheralcomponent interconnect,简称PCI)总线或扩展工业标准结构(extended industrystandard architecture,简称EISA)总线等。所述通信线路940可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
基于上述内容和相同构思,本申请实施例还提供了一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述方法实施例中的方法。
基于上述内容和相同构思,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令被计算设备执行时,使得该计算设备执行上述方法实施例中的方法。
基于上述内容和相同构思,本申请提供一种计算机程序产品,该计算机程序产品包括计算机程序或指令,当该计算机程序或指令被计算设备执行时,实现上述方法实施例中的方法。
本发明是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种视频编码的方法,其特征在于,包括:
获取编码单元中多个子块的帧内预测代价和帧间预测代价;
根据所述编码单元中多个子块的帧内预测代价和帧间预测代价,对所述编码单元执行SKIP模式的帧间预测计算之后,停止对所述编码单元继续执行所述帧间预测计算。
2.如权利要求1所述的方法,其特征在于,所述根据所述编码单元中多个子块的帧内预测代价和帧间预测代价,对所述编码单元执行SKIP模式的帧间预测计算之后,停止对所述编码单元继续执行所述帧间预测计算,包括:
若所述编码单元中多个子块的帧内预测代价之和小于所述编码单元中多个子块的帧间预测代价之和,则在对所述编码单元执行完成SKIP模式的帧间预测计算之后,不再对所述编码单元执行其它帧间预测计算。
3.如权利要求1所述的方法,其特征在于,所述获取编码单元中多个子块的帧内预测代价和帧间预测代价之前,还包括:
获取第一子块的运动参数,所述第一子块是所述编码单元中多个子块中的任一个;
若所述第一子块的运动参数满足预设条件,则对所述第一子块执行帧内预测和帧间预测,分别得到所述第一子块的帧内预测代价和帧间预测代价。
4.如权利要求3所述的方法,其特征在于,还包括:
若所述第一子块的运动参数不满足所述预设条件,则对所述第一子块执行运动估计,得到所述第一子块的运动矢量;
根据所述第一子块的运动矢量,对所述第一子块执行帧内预测和帧间预测,分别得到所述第一子块的帧内预测代价和帧间预测代价。
5.如权利要求3或4所述的方法,其特征在于,所述第一子块的运动参数是所述第一子块的预测运动矢量代价;
所述第一子块的运动参数满足预设条件,包括:
所述第一子块的预测运动矢量代价小于第一阈值。
6.如权利要求3或4所述的方法,其特征在于,所述第一子块的运动参数是所述第一子块的相邻子块的预测运动矢量代价,所述第一子块的相邻子块是位于所述第一子块的左方、上方、左上方和右上方的四个子块中的任一个;
所述第一子块的运动参数满足预设条件,包括:
所述第一子块的相邻子块的预测运动矢量代价小于第二阈值。
7.如权利要求1所述的方法,其特征在于,所述预测代价为视频残差信号大小,所述编码单元对应的帧类型为P帧。
8.一种视频编码的装置,其特征在于,包括用于执行如权利要求1至7中的任一项所述方法的模块。
9.一种计算设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1至7任一项所述的方法。
10.一种计算机可读非易失性存储介质,其特征在于,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110766981.0A CN113573066B (zh) | 2021-07-07 | 2021-07-07 | 一种视频编码的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110766981.0A CN113573066B (zh) | 2021-07-07 | 2021-07-07 | 一种视频编码的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113573066A true CN113573066A (zh) | 2021-10-29 |
CN113573066B CN113573066B (zh) | 2024-07-02 |
Family
ID=78163938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110766981.0A Active CN113573066B (zh) | 2021-07-07 | 2021-07-07 | 一种视频编码的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113573066B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113938690A (zh) * | 2021-12-03 | 2022-01-14 | 北京达佳互联信息技术有限公司 | 视频编码方法、装置、电子设备及存储介质 |
CN114584768A (zh) * | 2022-02-17 | 2022-06-03 | 百果园技术(新加坡)有限公司 | 视频编码控制方法、装置、设备和存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179728A (zh) * | 2007-12-13 | 2008-05-14 | 北京中星微电子有限公司 | 帧间编码模式确定方法及装置 |
CN101562750A (zh) * | 2009-05-25 | 2009-10-21 | 腾讯科技(深圳)有限公司 | 视频编码快速模式选择装置及方法 |
CN102932642A (zh) * | 2012-11-13 | 2013-02-13 | 北京大学 | 一种帧间编码快速模式选择方法 |
CN103634606A (zh) * | 2012-08-21 | 2014-03-12 | 腾讯科技(深圳)有限公司 | 视频编码方法和装置 |
US20160182904A1 (en) * | 2013-07-25 | 2016-06-23 | Nippon Telegraph And Telephone Corporation | Image encoding method, image encoding apparatus, and image encoding program |
CN108419082A (zh) * | 2017-02-10 | 2018-08-17 | 北京金山云网络技术有限公司 | 一种运动估计方法及装置 |
CN108810531A (zh) * | 2017-05-03 | 2018-11-13 | 腾讯科技(深圳)有限公司 | 视频编码处理方法、装置及电子设备 |
WO2019074273A1 (ko) * | 2017-10-10 | 2019-04-18 | 한국전자통신연구원 | 인터 예측 정보를 사용하는 방법 및 장치 |
CN110087087A (zh) * | 2019-04-09 | 2019-08-02 | 同济大学 | Vvc帧间编码单元预测模式提前决策及块划分提前终止方法 |
CN110662078A (zh) * | 2019-09-28 | 2020-01-07 | 杭州当虹科技股份有限公司 | 适用于avs2和hevc的4k/8k超高清编码帧间编码帧快速算法 |
CN112637591A (zh) * | 2020-12-11 | 2021-04-09 | 百果园技术(新加坡)有限公司 | 一种视频预测编码的方法及装置 |
-
2021
- 2021-07-07 CN CN202110766981.0A patent/CN113573066B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179728A (zh) * | 2007-12-13 | 2008-05-14 | 北京中星微电子有限公司 | 帧间编码模式确定方法及装置 |
CN101562750A (zh) * | 2009-05-25 | 2009-10-21 | 腾讯科技(深圳)有限公司 | 视频编码快速模式选择装置及方法 |
CN103634606A (zh) * | 2012-08-21 | 2014-03-12 | 腾讯科技(深圳)有限公司 | 视频编码方法和装置 |
CN102932642A (zh) * | 2012-11-13 | 2013-02-13 | 北京大学 | 一种帧间编码快速模式选择方法 |
US20160182904A1 (en) * | 2013-07-25 | 2016-06-23 | Nippon Telegraph And Telephone Corporation | Image encoding method, image encoding apparatus, and image encoding program |
CN108419082A (zh) * | 2017-02-10 | 2018-08-17 | 北京金山云网络技术有限公司 | 一种运动估计方法及装置 |
CN108810531A (zh) * | 2017-05-03 | 2018-11-13 | 腾讯科技(深圳)有限公司 | 视频编码处理方法、装置及电子设备 |
WO2019074273A1 (ko) * | 2017-10-10 | 2019-04-18 | 한국전자통신연구원 | 인터 예측 정보를 사용하는 방법 및 장치 |
CN110087087A (zh) * | 2019-04-09 | 2019-08-02 | 同济大学 | Vvc帧间编码单元预测模式提前决策及块划分提前终止方法 |
CN110662078A (zh) * | 2019-09-28 | 2020-01-07 | 杭州当虹科技股份有限公司 | 适用于avs2和hevc的4k/8k超高清编码帧间编码帧快速算法 |
CN112637591A (zh) * | 2020-12-11 | 2021-04-09 | 百果园技术(新加坡)有限公司 | 一种视频预测编码的方法及装置 |
Non-Patent Citations (3)
Title |
---|
NANA SHAN; WEI ZHOU; ZHEMIN DUAN; HENGLU WEI: "A Fast Coding Unit Depth Decision Algorithm for HEVC Inter Prediction", 2015 NINTH INTERNATIONAL CONFERENCE ON FRONTIER OF COMPUTER SCIENCE AND TECHNOLOGY, pages 316 - 320 * |
王英坤;徐伯庆;杨华: "基于运动信息分布的帧间预测模式选择算法", 计算机工程, vol. 37, no. 17, pages 250 - 251 * |
黄涛涛;刘立程;彭同壮;: "基于运动特性的帧间预测模式快速选择算法", 广东工业大学学报, vol. 37, no. 2, pages 74 - 79 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113938690A (zh) * | 2021-12-03 | 2022-01-14 | 北京达佳互联信息技术有限公司 | 视频编码方法、装置、电子设备及存储介质 |
CN113938690B (zh) * | 2021-12-03 | 2023-10-31 | 北京达佳互联信息技术有限公司 | 视频编码方法、装置、电子设备及存储介质 |
CN114584768A (zh) * | 2022-02-17 | 2022-06-03 | 百果园技术(新加坡)有限公司 | 视频编码控制方法、装置、设备和存储介质 |
WO2023155751A1 (zh) * | 2022-02-17 | 2023-08-24 | 百果园技术(新加坡)有限公司 | 视频编码控制方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113573066B (zh) | 2024-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019144930A1 (en) | Hardware friendly constrained motion vector refinement | |
JP7279154B2 (ja) | アフィン動きモデルに基づく動きベクトル予測方法および装置 | |
EP3939291A1 (en) | Method and apparatus for video encoding and decoding with subblock based local illumination compensation | |
CN111698515B (zh) | 帧间预测的方法及相关装置 | |
CN113573066B (zh) | 一种视频编码的方法及装置 | |
CN111316641B (zh) | 根据块尺寸使用变换来解码图像的方法和设备 | |
CN110876282A (zh) | 运动矢量预测方法以及相关装置 | |
JP2021502786A (ja) | 符号化単位分割決定方法及び装置、コンピューティングデバイス及び読み取り可能な記憶媒体 | |
CN113473133A (zh) | 利用几何分区geo模式进行预测的方法和装置 | |
JP2023179684A (ja) | ピクチャ予測方法および装置、およびコンピュータ可読記憶媒体 | |
KR102699681B1 (ko) | 인터 예측 방법 및 장치 | |
CN112740663B (zh) | 图像预测方法、装置以及相应的编码器和解码器 | |
CN112839224B (zh) | 一种预测模式选择方法、装置、视频编码设备及存储介质 | |
KR20160030146A (ko) | 깊이 정보를 이용한 비디오 부호화 방법 및 장치 | |
WO2023034629A1 (en) | Intra prediction modes signaling | |
CN113573067B (zh) | 一种视频编码的方法及装置 | |
CN112135149B (zh) | 语法元素的熵编码/解码方法、装置以及编解码器 | |
CN103716607A (zh) | 一种应用于HEVC-based 3DVC的编码方法和装置 | |
CN113542737A (zh) | 编码模式确定方法、装置、电子设备及存储介质 | |
KR20220027173A (ko) | 비디오 인코딩 및 디코딩에서의 모션 벡터 예측 | |
CN113330748A (zh) | 帧内预测模式信令的方法和装置 | |
RU2822447C2 (ru) | Способ и оборудование взаимного прогнозирования | |
RU2787885C2 (ru) | Способ и оборудование взаимного прогнозирования, поток битов и энергонезависимый носитель хранения | |
CN112136328B (zh) | 视频处理系统中的帧间预测的方法和装置 | |
EP3706419A1 (en) | Multi-model local illumination compensation for video encoding or decoding |
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 |