CN110381311B - 视频帧的编码方法、装置、计算机可读介质及电子设备 - Google Patents
视频帧的编码方法、装置、计算机可读介质及电子设备 Download PDFInfo
- Publication number
- CN110381311B CN110381311B CN201910586661.XA CN201910586661A CN110381311B CN 110381311 B CN110381311 B CN 110381311B CN 201910586661 A CN201910586661 A CN 201910586661A CN 110381311 B CN110381311 B CN 110381311B
- Authority
- CN
- China
- Prior art keywords
- coding
- encoding
- decision process
- coding unit
- 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.)
- 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/103—Selection of coding mode or of prediction mode
-
- 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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请的实施例提供了一种视频帧的编码方法、装置、计算机可读介质及电子设备。该视频帧的编码方法包括:确定待编码视频帧中的编码单元所在的编码区域,所述编码区域是对所述待编码视频帧进行划分得到的;根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程;若对所述编码单元进行的编码模式决策过程表明目标编码模式对所述编码单元的编码效果达到设定效果,则跳过其它编码模式的决策过程;通过所述目标编码模式对所述编码单元进行编码处理。本申请实施例的技术方案可以降低编码模式决策过程的计算复杂度,进而可以缩短对视频帧的编码时长,提高了视频帧编码的实时性。
Description
技术领域
本申请涉及计算机及通信技术领域,具体而言,涉及一种视频帧的编码方法、装置、计算机可读介质及电子设备。
背景技术
相关技术中提出的对待编码视频帧进行基于块的视频编码方案主要是对于某一个CU(Coding Unit,编码单元),会进行普通的帧间预测(如果该CU所在的条带类型是帧间预测条带)、帧内预测、帧内块拷贝(如果IBC(Intra Block Copy,帧内块拷贝技术)工具打开)、调色板编码(如果PLT(Palette Mode,调色板模式)工具打开)等模式的决策,然后通过比较所有可能的编码模式的Rate-Distortion Cost(简称RD Cost,率失真代价),以找到对于当前CU而言最好的编码模式,从而达到压缩的目的。但是这种方式的计算复杂度较高,因此对视频帧的编码实时性较差。
发明内容
本申请的实施例提供了一种视频帧的编码方法、装置、计算机可读介质及电子设备,进而至少在一定程度上可以降低编码模式决策过程的计算复杂度,以缩短对视频帧的编码时长,提高了视频帧编码的实时性。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种视频帧的编码方法,包括:确定待编码视频帧中的编码单元所在的编码区域,所述编码区域是对所述待编码视频帧进行划分得到的;根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程;若对所述编码单元进行的编码模式决策过程表明目标编码模式对所述编码单元的编码效果达到设定效果,则跳过其它编码模式的决策过程;通过所述目标编码模式对所述编码单元进行编码处理。
根据本申请实施例的一个方面,提供了一种视频帧的编码装置,包括:确定单元,用于确定待编码视频帧中的编码单元所在的编码区域,所述编码区域是对所述待编码视频帧进行划分得到的;处理单元,用于根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程,其中,若对所述编码单元进行的编码模式决策过程表明目标编码模式对所述编码单元的编码效果达到设定效果,则跳过其它编码模式的决策过程;编码单元,用于通过所述目标编码模式对所述编码单元进行编码处理。
在本申请的一些实施例中,基于前述方案,所述处理单元配置为:若所述编码单元所在的编码区域的类型是帧内编码类型,则至少对所述编码单元进行方向性帧内预测模式决策过程。
在本申请的一些实施例中,基于前述方案,所述处理单元配置为:计算所述编码单元进行方向性帧内预测的最优预测模式对应的离散余弦变换DCT系数,若所述方向性帧内预测的最优预测模式对应的DCT系数中非零系数所占的比例小于比例阈值,则确定所述方向性帧内预测模式对所述编码单元的编码效果达到了设定效果,并将所述方向性帧内预测模式确定为所述目标编码模式。
在本申请的一些实施例中,基于前述方案,所述比例阈值与所述方向性帧内预测模式的残差系数成正相关关系。
在本申请的一些实施例中,基于前述方案,所述处理单元配置为:计算所述编码单元进行方向性帧内预测的最优预测模式对应的率失真代价,若所述方向性帧内预测的最优预测模式对应的率失真代价小于第一阈值,则确定所述方向性帧内预测模式对所述编码单元的编码效果达到了设定效果,并将所述方向性帧内预测模式确定为所述目标编码模式。
在本申请的一些实施例中,基于前述方案,所述处理单元配置为:若所述编码单元所在的编码区域的类型不是帧内编码类型,则至少对所述编码单元进行帧间预测模式决策过程和方向性帧内预测模式决策过程其中之一。
在本申请的一些实施例中,基于前述方案,所述处理单元配置为:计算所述编码单元进行帧间预测的最优预测模式对应的率失真代价,若所述帧间预测的最优预测模式对应的率失真代价小于第二阈值,则确定所述帧间预测模式对所述编码单元的编码效果达到了设定效果,并将所述帧间预测模式确定为所述目标编码模式。
在本申请的一些实施例中,基于前述方案,所述处理单元至少对所述编码单元进行帧间预测模式决策过程和方向性帧内预测模式决策过程中的之一的过程,包括:先对所述编码单元进行帧间预测模式决策过程,再对所述编码单元进行方向性帧内预测模式决策过程;或先对所述编码单元进行方向性帧内预测模式决策过程,再对所述编码单元进行帧间预测模式决策过程。
在本申请的一些实施例中,基于前述方案,所述处理单元配置为:按照预定的顺序,对所述编码单元依次进行与所述编码区域的类型相对应的各个编码模式决策过程。
在本申请的一些实施例中,基于前述方案,所述编码区域包括条带Slice或Tile。
在本申请的一些实施例中,基于前述方案,所述待编码视频帧包括根据电子设备屏幕内容生成的视频帧,所述其它编码模式包括调色板编码模式。
在本申请的一些实施例中,基于前述方案,在所述编码单元的最优编码模式决策过程是自下而上的情况下,所述处理单元还用于:根据所述编码单元的各个子编码单元对应的最优编码预测模式,确定是否针对所述编码单元跳过所述调色板编码模式的决策过程。
在本申请的一些实施例中,基于前述方案,所述处理单元配置为:若所述编码单元的子编码单元中有预定数量个子编码单元的最优编码预测模式不是所述调色板编码模式,则确定针对所述编码单元跳过所述调色板编码模式的决策过程。
根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的视频帧的编码方法。
根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的视频帧的编码方法。
在本申请的一些实施例所提供的技术方案中,通过根据编码单元所在的编码区域的类型,对编码单元进行与编码区域的类型相对应的编码模式决策过程,以在对编码单元进行的编码模式决策过程表明目标编码模式对编码单元的编码效果能够达到设定效果的情况下,跳过其它编码模式的决策过程,以通过目标编码模式对编码单元进行编码处理,使得在确定编码单元的编码模式时,只要确定某种编码模式对编码单元的编码效果较好,那么就可以不进行所有编码模式的决策过程,进而可以在保证编码效果的情况下,有效降低编码模式决策过程的计算复杂度,进而可以缩短对视频帧的编码时长,提高了视频帧编码的实时性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图;
图2示出了根据本申请的一个实施例的视频帧的编码方法的流程图;
图3示出了根据本申请的一个实施例的视频帧的快速编码方法的流程图;
图4示出了根据本申请的一个实施例的视频帧的编码装置的框图;
图5示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图。
如图1所示,系统架构可以包括终端设备(如图1中所示智能手机101、平板电脑102和便携式计算机103中的一种或多种,当然也可以是台式计算机等等)、网络104和服务器105。网络104用以在终端设备和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线通信链路、无线通信链路等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
在本申请的一个实施例中,终端设备可以通过网络104从服务器105获取到待编码视频,当终端设备获取到待编码视频之后,可以确定待编码视频帧中的编码单元所在的编码区域,该编码区域可以是条带(Slice)或者Tile(Tile即为矩形区域)等,在确定编码单元所在的编码区域之后,可以确定编码单元所在的编码区域的类型,比如编码区域的类型可以是帧内编码类型、帧间编码类型等。当确定编码单元所在的编码区域的类型之后,可以根据编码单元所在的编码区域的类型,对编码单元进行与该编码区域的类型相对应的编码模式决策过程。比如,若编码单元所在的编码区域的类型是帧内编码类型,则可以进行方向性帧内预测模式决策过程等;若编码单元所在的编码区域的类型是帧间编码类型,则可以进行帧间预测模式决策过程、方向性帧内预测模式决策过程等。
在本申请的一个实施例中,在对编码单元进行与该编码区域的类型相对应的编码模式决策过程时,若对编码单元进行的编码模式决策过程表明目标编码模式对编码单元的编码效果能够达到设定效果,则可以跳过其它编码模式的决策过程,进而直接通过该目标编码模式对编码单元进行编码处理。可见,本申请实施例的技术方案可以在保证编码效果的情况下,不进行所有编码模式的决策过程,进而可以有效降低编码模式决策过程的计算复杂度,有利于提高对视频帧的编码效率。
需要说明的是,本申请实施例所提供的视频帧的编码方法可以由终端设备执行,相应地,视频帧的编码装置可以设置于终端设备中,在这种情况下,由于本申请实施例所提供的视频帧编码方法的计算复杂度较低,因此能够更适合终端设备进行编码处理。但是,在本申请的其它实施例中,服务器105也可以与终端设备具有相似的功能,从而执行本申请实施例所提供的视频帧的编码方案。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图2示出了根据本申请的一个实施例的视频帧的编码方法的流程图,该视频帧的编码方法可以由具有计算处理功能的设备来执行,比如可以由图1中所示的终端设备来执行。参照图2所示,该视频帧的编码方法至少包括步骤S210至步骤S240,详细介绍如下:
在步骤S210中,确定待编码视频帧中的编码单元所在的编码区域,所述编码区域是对所述待编码视频帧进行划分得到的。
在本申请的一个实施例中,待编码视频帧可以是根据电子设备屏幕内容生成的视频帧,比如电子设备屏幕内容的分享画面形成的视频帧等。条带(Slice)是由一系列的编码树单元(Coding Tree Unit,CTU)组成的,CTU包含有编码单元(即CU)。
在本申请的一个实施例中,编码区域可以是条带(Slice)或者Tile(Tile即为矩形区域),编码区域的类型可以是帧内编码类型、帧间编码类型等。比如,若编码区域为条带,那么条带类型可以是帧内编码条带类型(即I Slice)、帧间编码条带类型等,其中,帧间编码条带类型包括单向帧间编码条带的类型(即P Slice)和双向帧间编码条带的类型(即BSlice)。
继续参照图2所示,在步骤S220中,根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程。
在本申请的一个实施例中,若编码单元所在的编码区域的类型是帧内编码类型,则至少对编码单元进行方向性帧内预测模式决策过程。即与帧内编码类型相对应的编码模式决策过程至少包括方向性帧内预测模式决策过程。当然还可以包括帧内块拷贝模式、调色板编码模式等。
在本申请的一个实施例中,对编码单元进行方向性帧内预测模式决策过程可以包括:计算编码单元进行方向性帧内预测的最优预测模式对应的离散余弦变换(DiscreteCosine Transform,简称DCT)系数。当然,也可以计算编码单元进行方向性帧内预测的最优预测模式对应的率失真代价。
在本申请的一个实施例中,若编码单元所在的编码区域的类型不是帧内编码类型(如可以是帧间编码类型),则至少对编码单元进行帧间预测模式决策过程和方向性帧内预测模式决策过程中的之一。即与非帧内编码类型相对应的编码模式决策过程至少包括帧间预测模式决策过程和方向性帧内预测模式决策过程之一。当然还可以包括帧内块拷贝模式、调色板编码模式等。
在本申请的一个实施例中,如果与编码区域的类型相对应的编码模式决策过程包括多个,则可以按照预定的顺序,对编码单元依次进行与编码区域的类型相对应的各个编码模式决策过程,这样可以在确定某个编码模式对编码单元的编码效果较好时,跳过其它编码模式的决策过程,进而可以降低计算复杂度,提高编码效率。比如,如果需要对编码单元进行帧间预测模式决策过程和方向性帧内预测模式决策过程,那么既可以先对编码单元进行帧间预测模式决策过程,再对编码单元进行方向性帧内预测模式决策过程;也可以先对编码单元进行方向性帧内预测模式决策过程,再对编码单元进行帧间预测模式决策过程。
在本申请的一个实施例中,对编码单元进行帧间预测模式决策过程可以包括:计算编码单元进行帧间预测的最优预测模式对应的率失真代价。
继续参照图2所示,在步骤S230中,若对所述编码单元进行的编码模式决策过程表明目标编码模式对所述编码单元的编码效果达到设定效果,则跳过其它编码模式的决策过程。
在本申请的一个实施例中,如果计算了编码单元进行方向性帧内预测的最优预测模式对应的DCT系数,那么若方向性帧内预测的最优预测模式对应的DCT系数中非零系数所占的比例小于比例阈值,则确定方向性帧内预测模式对编码单元的编码效果达到了设定效果,并将方向性帧内预测模式确定为目标编码模式,即跳过其它编码模式的决策过程。其中,该比例阈值与方向性帧内预测模式的残差系数成正相关关系。
在本申请的一个实施例中,如果计算了编码单元进行方向性帧内预测的最优预测模式对应的率失真代价,那么若方向性帧内预测的最优预测模式对应的率失真代价小于第一阈值,则确定方向性帧内预测模式对编码单元的编码效果达到了设定效果,并将方向性帧内预测模式确定为目标编码模式,即跳过其它编码模式的决策过程。
在本申请的一个实施例中,如果计算了编码单元进行帧间预测的最优预测模式对应的率失真代价,那么若帧间预测的最优预测模式对应的率失真代价小于第二阈值,则确定帧间预测模式对编码单元的编码效果达到了设定效果,并将帧间预测模式确定为目标编码模式,即跳过其它编码模式的决策过程。
在本申请的一个实施例中,如果待编码视频帧是根据电子设备屏幕内容生成的视频帧,比如电子设备屏幕内容的分享画面形成的视频帧等,那么其它编码模式可以是调色板编码模式。其中,调色板编码模式是将编码单元CU内的像素颜色聚类为一个调色板,然后把CU中的每个像素映射为调色板中的颜色索引,最后对调色板以及颜色索引进行编码。
继续参照图2所示,在步骤S240中,通过所述目标编码模式对编码单元进行编码处理。
图2所示实施例的技术方案使得在确定编码单元的编码模式时,只要确定某种编码模式对编码单元的编码效果较好,那么就可以不进行所有编码模式的决策过程,进而可以在保证编码效果的情况下,有效降低了编码模式决策过程的计算复杂度,进而可以缩短对视频帧的编码时长,提高了视频帧编码的实时性。
在本申请的一个实施例中,如果编码单元的最优编码模式决策过程是自下而上进行的,那么可以根据编码单元的各个子编码单元对应的最优编码预测模式,确定是否针对编码单元跳过调色板编码模式的决策过程。比如,若编码单元的子编码单元中有预定数量个子编码单元的最优编码预测模式不是调色板编码模式,则确定针对编码单元跳过调色板编码模式的决策过程,进而也可以通过跳过调色板编码模式来降低编码模式决策过程的计算复杂度,缩短对视频帧的编码时长。
以下以对屏幕分享产生的内容画面(如办公软件PPT、Word等文档分享产生的内容画面)进行编码处理为例,对本申请实施例的技术方案进行详细阐述:
在本申请的一个实施例中,屏幕分享产生的内容画面与摄像头捕获的自然图像相比具有明显的差别——屏幕分享产生的内容画面通常没有噪声,并且色调离散、线条明显且边缘锐利;而摄像机捕获的视频通常有噪声、色调连续且纹理比较杂乱。为了提升对屏幕分享产生的内容画面的编码性能,相关技术中提出了一种专门为屏幕内容设计的编码技术——调色板编码模式。调色板编码模式是将编码单元CU内的像素颜色聚类为一个调色板,然后把CU中的每个像素映射为调色板中的颜色索引,最后对调色板以及颜色索引进行编码。调色板编码模式适用于颜色数相对较少且纹理不是很平坦的区域,其可以用很少的码率表示该CU内的信息,虽然调色板编码模式可以明显提高对于屏幕内容类视频的编码效率,但其算法复杂度相对较高,且不易做汇编优化,因此在实时应用上存在缺陷。本申请实施例中提出的编码方案可以判断当前待编码CU是否适用于调色板编码,对于不适合使用调色板编码的CU,可以跳过调色板编码模式的决策过程,省去了大量的RDO(Rate-DistortionOptimization,码率-失真优化)决策时间,能够在不降低编码性能的情况下,提高编码速度。
如图3所示,根据本申请一个实施例的视频帧的快速编码方法,包括如下步骤:
步骤S301,在输入待编码CU之后,判断待编码CU所在的条带类型是否是I Slice,若是,则执行步骤S3034;否则,执行步骤S302。
步骤S302,进行帧间预测模式决策的过程。
在本申请的一个实施例中,对待编码CU进行普通的帧间预测模式决策,包括决策CU的最佳PU(Prediction Unit,预测单元)划分以及每个PU的最佳预测模式,并计算最优预测模式所对应的RD Cost。将CU最优的帧间预测模式对应的RD Cost记为min_inter_cost。
步骤S303,进行普通帧内预测模式决策的过程,普通帧内预测模式决策即为方向性帧内预测模式。
在本申请的一个实施例中,对待编码CU进行普通的帧内预测模式决策,包括决策CU的最佳PU划分以及每个PU的最佳预测模式,并计算最优预测模式所对应的RD Cost。将CU最优的普通帧内预测模式对应的RD Cost记为min_intra_cost。同时,还可以计算普通帧内预测模式决策时,最优模式对应的DCT系数。
需要说明的是,若待编码CU所在的条带类型不是I Slice,那么既可以如图3中所示先进行帧间预测模式决策过程,再进行普通帧内预测模式决策过程;或者也可以先进行普通帧内预测模式决策过程,再进行帧间预测模式决策过程。
步骤S304,根据帧间预测模式决策的过程和普通帧内预测模式决策的过程,判断是否快速跳过调色板PLT编码模式的决策过程,若是,则执行步骤S306;否则,执行步骤S305。
在本申请的一个实施例中,跳过PLT编码模式决策过程的条件包括(满足下述任一条件都可以跳过PLT编码模式的决策过程):
a)若普通帧内预测的最优预测模式对应的DCT系数中,非零系数所占的百分比(非零系数的个数/CU块大小)小于阈值NON_ZERO_DCT_TH,则表明当前块用普通帧内预测模式时残差分布较为集中,预测效果较好,可以不用进一步尝试PLT模式。其中,NON_ZERO_DCT_TH可以是一个与QP(Quantization Parameter,量化参数,在此处即为残差系数)相关的值,QP越大,NON_ZERO_DCT_TH越大。
b)若min_intra_cost<MIN_INTRA_TH,则表示普通帧内预测效果较好,因此可以跳过PLT决策过程。
c)若min_inter_cost<MIN_INTER_TH,则表示帧间预测效果较好,因此可以跳过PLT模式的决策过程。
d)当待编码CU的最优模式决策过程是自下而上(即从8x8~64x64)时,可以利用待编码CU的四个已经决策好的子CU(如32x32的CU包含4个16x16的子CU)的最优RD Cost(根据子CU的最优RD Cost可以确定子CU选择的最优编码模式)以及最优模式来确定是否快速跳过PLT决策过程。比如,若待编码CU的四个子CU中至少有N个子CU的最优预测模式不是PLT,很针对待编码CU跳过PLT模式的决策过程。
步骤S305,计算PLT编码模式对应的RD Cost,记为min_PLT_cost。
步骤S306,根据各编码模式对应的RD Cost确定最优预测模式。比如,若帧间预测效果与普通帧内预测效果都不好,而根据min_PLT_cost确定PLT编码模式的预测效果较好,则可以将PLT编码模式确定为最优预测模式。
需要说明的是:图3所示实施例的技术方案是以编码单元CU所在的编码区域是条带为例进行了说明,在本申请的其它实施例中,编码区域还可以是Tile等其它划分形式。
本申请实施例的技术方案能够在尽可能保证压缩效率的情况下减小计算复杂度。实验证明,利用本申请上述实施例的技术方案,可以在BD-Rate(BD-rate计算的是两种算法对应的两条RD曲线的差值的均值,具体需要通过对测试的几个(一般是4个)点进行曲线拟合,再做差值,最后取平均)损失1.6%左右的情况下,达到编码速度提升约30%左右的效果。其中,本申请实施例的技术方案可以成功应用到TSE(Tencent Screen Encoder,腾讯屏幕编码器)中,此编码器对屏幕内容序列可以显著提升编码效率,并且也可以应用到无线投屏项目中。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的视频帧的编码方法。对于本申请装置实施例中未披露的细节,请参照本申请上述的视频帧的编码方法的实施例。
图4示出了根据本申请的一个实施例的视频帧的编码装置的框图。
参照图4所示,根据本申请的一个实施例的视频帧的编码装置400,包括:确定单元402、处理单元404和编码单元406。
其中,确定单元402用于确定待编码视频帧中的编码单元所在的编码区域,所述编码区域是对所述待编码视频帧进行划分得到的;处理单元404用于根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程,其中,若对所述编码单元进行的编码模式决策过程表明目标编码模式对所述编码单元的编码效果达到设定效果,则跳过其它编码模式的决策过程;编码单元406用于通过所述目标编码模式对所述编码单元进行编码处理。
在本申请的一些实施例中,处理单元404配置为:若所述编码单元所在的编码区域的类型是帧内编码类型,则至少对所述编码单元进行方向性帧内预测模式决策过程。
在本申请的一些实施例中,处理单元404配置为:计算所述编码单元进行方向性帧内预测的最优预测模式对应的离散余弦变换DCT系数,若所述方向性帧内预测的最优预测模式对应的DCT系数中非零系数所占的比例小于比例阈值,则确定所述方向性帧内预测模式对所述编码单元的编码效果达到了设定效果,并将所述方向性帧内预测模式确定为所述目标编码模式。
在本申请的一些实施例中,所述比例阈值与所述方向性帧内预测模式的残差系数成正相关关系。
在本申请的一些实施例中,处理单元404配置为:计算所述编码单元进行方向性帧内预测的最优预测模式对应的率失真代价,若所述方向性帧内预测的最优预测模式对应的率失真代价小于第一阈值,则确定所述方向性帧内预测模式对所述编码单元的编码效果达到了设定效果,并将所述方向性帧内预测模式确定为所述目标编码模式。
在本申请的一些实施例中,处理单元404配置为:若所述编码单元所在的编码区域的类型不是帧内编码类型,则至少对所述编码单元进行帧间预测模式决策过程和方向性帧内预测模式决策过程其中之一。
在本申请的一些实施例中,处理单元404配置为:计算所述编码单元进行帧间预测的最优预测模式对应的率失真代价,若所述帧间预测的最优预测模式对应的率失真代价小于第二阈值,则确定所述帧间预测模式对所述编码单元的编码效果达到了设定效果,并将所述帧间预测模式确定为所述目标编码模式。
在本申请的一些实施例中,处理单元404至少对所述编码单元进行帧间预测模式决策过程和方向性帧内预测模式决策过程中的之一的过程,包括:先对所述编码单元进行帧间预测模式决策过程,再对所述编码单元进行方向性帧内预测模式决策过程;或先对所述编码单元进行方向性帧内预测模式决策过程,再对所述编码单元进行帧间预测模式决策过程。
在本申请的一些实施例中,处理单元404配置为:按照预定的顺序,对所述编码单元依次进行与所述编码区域的类型相对应的各个编码模式决策过程。
在本申请的一些实施例中,基于前述方案,所述编码区域包括条带Slice或Tile。
在本申请的一些实施例中,所述待编码视频帧包括根据电子设备屏幕内容生成的视频帧,所述其它编码模式包括调色板编码模式。
在本申请的一些实施例中,在所述编码单元的最优编码模式决策过程是自下而上的情况下,处理单元404还用于:根据所述编码单元的各个子编码单元对应的最优编码预测模式,确定是否针对所述编码单元跳过所述调色板编码模式的决策过程。
在本申请的一些实施例中,处理单元404配置为:若所述编码单元的子编码单元中有预定数量个子编码单元的最优编码预测模式不是所述调色板编码模式,则确定针对所述编码单元跳过所述调色板编码模式的决策过程。
图5示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图5示出的电子设备的计算机系统500仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图5所示,计算机系统500包括中央处理单元(Central Processing Unit,CPU)501,其可以根据存储在只读存储器(Read-Only Memory,ROM)502中的程序或者从存储部分508加载到随机访问存储器(Random Access Memory,RAM)503中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在RAM 503中,还存储有系统操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(Input/Output,I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (12)
1.一种视频帧的编码方法,其特征在于,包括:
确定根据电子设备屏幕内容生成的待编码视频帧中的编码单元所在的编码区域,所述编码区域是对所述待编码视频帧进行划分得到的;
根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程;
若对所述编码单元进行的编码模式决策过程表明目标编码模式对所述编码单元的编码效果达到设定效果,则跳过调色板编码模式的决策过程;
通过所述目标编码模式对所述编码单元进行编码处理;
其中,在所述编码单元的最优编码模式决策过程是自下而上的情况下,所述编码方法还包括:若所述编码单元的子编码单元中有预定数量个子编码单元的最优编码预测模式不是所述调色板编码模式,则确定针对所述编码单元跳过所述调色板编码模式的决策过程。
2.根据权利要求1所述的视频帧的编码方法,其特征在于,根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程,包括:
若所述编码单元所在的编码区域的类型是帧内编码类型,则至少对所述编码单元进行方向性帧内预测模式决策过程。
3.根据权利要求2所述的视频帧的编码方法,其特征在于,对所述编码单元进行方向性帧内预测模式决策过程,包括:计算所述编码单元进行方向性帧内预测的最优预测模式对应的离散余弦变换DCT系数;
所述视频帧的编码方法还包括:若所述方向性帧内预测的最优预测模式对应的DCT系数中非零系数所占的比例小于比例阈值,则确定所述方向性帧内预测模式对所述编码单元的编码效果达到了设定效果,并将所述方向性帧内预测模式确定为所述目标编码模式。
4.根据权利要求3所述的视频帧的编码方法,其特征在于,所述比例阈值与所述方向性帧内预测模式的残差系数成正相关关系。
5.根据权利要求2所述的视频帧的编码方法,其特征在于,对所述编码单元进行方向性帧内预测模式决策过程,包括:计算所述编码单元进行方向性帧内预测的最优预测模式对应的率失真代价;
所述视频帧的编码方法还包括:若所述方向性帧内预测的最优预测模式对应的率失真代价小于第一阈值,则确定所述方向性帧内预测模式对所述编码单元的编码效果达到了设定效果,并将所述方向性帧内预测模式确定为所述目标编码模式。
6.根据权利要求1所述的视频帧的编码方法,其特征在于,根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程,包括:
若所述编码单元所在的编码区域的类型不是帧内编码类型,则至少对所述编码单元进行帧间预测模式决策过程和方向性帧内预测模式决策过程其中之一。
7.根据权利要求6所述的视频帧的编码方法,其特征在于,对所述编码单元进行帧间预测模式决策过程,包括:计算所述编码单元进行帧间预测的最优预测模式对应的率失真代价;
所述的视频帧的编码方法还包括:若所述帧间预测的最优预测模式对应的率失真代价小于第二阈值,则确定所述帧间预测模式对所述编码单元的编码效果达到了设定效果,并将所述帧间预测模式确定为所述目标编码模式。
8.根据权利要求1所述的视频帧的编码方法,其特征在于,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程,包括:
按照预定的顺序,对所述编码单元依次进行与所述编码区域的类型相对应的各个编码模式决策过程。
9.根据权利要求1所述的视频帧的编码方法,其特征在于,所述编码区域包括条带(Slice)或矩形区块(Tile)。
10.一种视频帧的编码装置,其特征在于,包括:
确定单元,用于确定根据电子设备屏幕内容生成的待编码视频帧中的编码单元所在的编码区域,所述编码区域是对所述待编码视频帧进行划分得到的,所述待编码视频帧包括根据电子设备屏幕内容生成的视频帧;
处理单元,用于根据所述编码单元所在的编码区域的类型,对所述编码单元进行与所述编码区域的类型相对应的编码模式决策过程,其中,若对所述编码单元进行的编码模式决策过程表明目标编码模式对所述编码单元的编码效果达到设定效果,则跳过调色板编码模式的决策过程;
编码单元,用于通过所述目标编码模式对所述编码单元进行编码处理;
其中,所述处理单元还用于:在所述编码单元的最优编码模式决策过程是自下而上的情况下,若所述编码单元的子编码单元中有预定数量个子编码单元的最优编码预测模式不是所述调色板编码模式,则确定针对所述编码单元跳过所述调色板编码模式的决策过程。
11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9中任一项所述的视频帧的编码方法。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至9中任一项所述的视频帧的编码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910586661.XA CN110381311B (zh) | 2019-07-01 | 2019-07-01 | 视频帧的编码方法、装置、计算机可读介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910586661.XA CN110381311B (zh) | 2019-07-01 | 2019-07-01 | 视频帧的编码方法、装置、计算机可读介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110381311A CN110381311A (zh) | 2019-10-25 |
CN110381311B true CN110381311B (zh) | 2023-06-30 |
Family
ID=68251597
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910586661.XA Active CN110381311B (zh) | 2019-07-01 | 2019-07-01 | 视频帧的编码方法、装置、计算机可读介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110381311B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102601022B1 (ko) | 2019-08-06 | 2023-11-13 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 색상 포맷에 기초한 비디오 영역 분할 |
JP7381722B2 (ja) | 2019-09-02 | 2023-11-15 | 北京字節跳動網絡技術有限公司 | カラーフォーマットに基づいたコーディングモード決定 |
MX2022003122A (es) | 2019-09-21 | 2022-04-06 | Beijing Bytedance Network Tech Co Ltd | Modo intra basado para croma de restriccion de tama?o. |
KR20220165277A (ko) * | 2020-04-10 | 2022-12-14 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩에서 변환 스킵 블록들에 대한 최소 허용 양자화 |
CN113747162B (zh) * | 2020-05-29 | 2023-09-29 | 北京金山云网络技术有限公司 | 视频处理方法和装置、存储介质和电子装置 |
CN111988607B (zh) * | 2020-08-07 | 2023-03-24 | 北京奇艺世纪科技有限公司 | 编码单元处理方法、装置、电子设备及存储介质 |
CN112153385B (zh) * | 2020-11-25 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 编码处理方法、装置、设备及存储介质 |
CN115474055B (zh) * | 2021-06-10 | 2024-07-09 | 腾讯科技(深圳)有限公司 | 视频编码方法、编码器、介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106797478A (zh) * | 2014-11-06 | 2017-05-31 | 联发科技股份有限公司 | 基于子块的调色板编码的方法 |
CN107277509A (zh) * | 2017-08-03 | 2017-10-20 | 重庆邮电大学 | 一种基于屏幕内容的快速帧内预测方法 |
CN107623850A (zh) * | 2017-09-26 | 2018-01-23 | 杭州电子科技大学 | 一种基于时空相关性的快速屏幕内容编码方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8155189B2 (en) * | 2005-10-19 | 2012-04-10 | Freescale Semiconductor, Inc. | System and method of coding mode decision for video encoding |
US8559512B2 (en) * | 2010-05-05 | 2013-10-15 | Ceva D.S.P. Ltd. | Device, system, and method for predicting residual data for intra and inter frame encoding of image or video data |
CN102186070B (zh) * | 2011-04-20 | 2013-06-05 | 北京工业大学 | 分层结构预判的快速视频编码方法 |
US11223832B2 (en) * | 2014-07-24 | 2022-01-11 | Qualcomm Incorporated | Methods and apparatus for encoding video data using block palettes and sub-block and pixel scanning orders |
GB2531003A (en) * | 2014-10-06 | 2016-04-13 | Canon Kk | Method and apparatus for vector encoding in video coding and decoding |
CN105933717B (zh) * | 2016-04-25 | 2019-03-12 | 北京奇艺世纪科技有限公司 | 一种编码单元的模式决策方法和装置 |
CN107623848B (zh) * | 2017-09-04 | 2019-11-19 | 浙江大华技术股份有限公司 | 一种视频编码方法及装置 |
-
2019
- 2019-07-01 CN CN201910586661.XA patent/CN110381311B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106797478A (zh) * | 2014-11-06 | 2017-05-31 | 联发科技股份有限公司 | 基于子块的调色板编码的方法 |
CN107277509A (zh) * | 2017-08-03 | 2017-10-20 | 重庆邮电大学 | 一种基于屏幕内容的快速帧内预测方法 |
CN107623850A (zh) * | 2017-09-26 | 2018-01-23 | 杭州电子科技大学 | 一种基于时空相关性的快速屏幕内容编码方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110381311A (zh) | 2019-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110381311B (zh) | 视频帧的编码方法、装置、计算机可读介质及电子设备 | |
US12010302B2 (en) | Image processing apparatuses including CNN-based in-loop filter | |
US10841583B2 (en) | Coding unit depth determining method and apparatus | |
CN114363612B (zh) | 用于双向光流的比特宽度控制的方法和设备 | |
CN111711825B (zh) | 视频编解码中的去块效应滤波方法、装置、设备及介质 | |
US20230024834A1 (en) | Video decoding method, video encoding method, and related apparatuses | |
CN103891278A (zh) | 图像编码以及解码方法、装置、程序 | |
WO2016180129A1 (zh) | 预测模式选择方法、装置及设备 | |
US20230056211A1 (en) | Video encoding method and apparatus, video decoding method and apparatus, computer program product, computer-readable storage medium, and electronic device | |
WO2019114225A1 (zh) | 编码单元划分确定方法及装置、计算设备及可读存储介质 | |
CN112106372B (zh) | 用于混合帧内预测的方法和设备 | |
CN115834882A (zh) | 一种帧内预测方法、装置、电子设备及存储介质 | |
CN114303380B (zh) | 用于几何划分标志的索引的cabac译码的编码器、解码器及对应方法 | |
KR20100136883A (ko) | 의사 난수 필터를 이용한 영상 필터링 방법 및 장치 | |
US20170201767A1 (en) | Video encoding device and video encoding method | |
KR20180099369A (ko) | 비디오 비트율 제어 방법, 및 이를 이용한 영상 부호화 방법 및 장치 | |
US20150312590A1 (en) | Methods for encoding and decoding a picture and corresponding devices | |
CN110249630B (zh) | 去块效应滤波装置、方法和存储介质 | |
US20210185314A1 (en) | Image decoding device, image coding device, image processing system, and program | |
CN112738522A (zh) | 视频编码方法、装置 | |
CN109995962B (zh) | 图片编码尺寸上限的控制方法及系统 | |
WO2020258052A1 (zh) | 图像分量预测方法、装置及计算机存储介质 | |
CN113542737A (zh) | 编码模式确定方法、装置、电子设备及存储介质 | |
CN109525843B (zh) | skip块判断方法、电子装置及计算机可读存储介质 | |
Zhao et al. | A novel fast intra-prediction algorithm for high-efficiency video coding based on structural similarity |
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 |