CN117440156A - 视频编码方法、视频发布方法及相关产品 - Google Patents

视频编码方法、视频发布方法及相关产品 Download PDF

Info

Publication number
CN117440156A
CN117440156A CN202311236937.4A CN202311236937A CN117440156A CN 117440156 A CN117440156 A CN 117440156A CN 202311236937 A CN202311236937 A CN 202311236937A CN 117440156 A CN117440156 A CN 117440156A
Authority
CN
China
Prior art keywords
prediction
video
prediction mode
unit
target
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
Application number
CN202311236937.4A
Other languages
English (en)
Inventor
高敏
陈靖
段晨辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shuhang Technology Beijing Co ltd
Original Assignee
Shuhang Technology Beijing Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shuhang Technology Beijing Co ltd filed Critical Shuhang Technology Beijing Co ltd
Priority to CN202311236937.4A priority Critical patent/CN117440156A/zh
Publication of CN117440156A publication Critical patent/CN117440156A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Abstract

本申请公开了一种视频编码方法、视频发布方法及相关产品。所述方法包括:获取待编码视频帧和预定预测模式,所述待编码视频帧为所述待编码视频中的任意一帧视频帧;对所述待编码视频帧进行分割,得到至少两个预测单元,所述至少两个预测单元包括目标预测单元,与所述目标预测单元相邻的预测单元的预测模式为参考预测模式;去除所述预定预测模式中与所述参考预测模式不匹配的预测模式,得到候选预测模式;从所述候选预测模式中选择率失真代价最小的预测模式,作为所述目标预测单元的预测模式。

Description

视频编码方法、视频发布方法及相关产品
技术领域
本申请涉及视频编码技术领域,尤其涉及一种视频编码方法、视频发布方法及相关产品。
背景技术
为压缩视频的数据量,通常需要对视频进行编码,而通过目前的方法对视频进行编码的时间长、效率低,因此如何降低视频编码的时间,提升视频编码的效率具有非常重要的意义。
发明内容
本申请提供一种视频编码方法、视频发布方法及相关产品,其中,相关产品包括视频编码装置、视频发布装置、电子设备以及计算机可读存储介质。
第一方面,提供了一种视频编码方法,所述方法包括:
获取待编码视频帧和预定预测模式,所述待编码视频帧为所述待编码视频中的任意一帧视频帧;
对所述待编码视频帧进行分割,得到至少两个预测单元,所述至少两个预测单元包括目标预测单元,与所述目标预测单元相邻的预测单元的预测模式为参考预测模式;
去除所述预定预测模式中与所述参考预测模式不匹配的预测模式,得到候选预测模式;
从所述候选预测模式中选择率失真代价最小的预测模式,作为所述目标预测单元的预测模式。
结合本申请任一实施方式,在从所述候选预测模式中选择率失真代价最小的预测模式,作为所述目标预测单元的目标预测模式之后,所述方法还包括:
基于所述待编码视频帧中各预测单元的预测模式,对所述待编码视频中的预测单元进行编码,得到所述待编码视频帧的编码视频帧。
结合本申请任一实施方式,所述对所述待编码视频帧进行分割,得到至少两个预测单元,包括:
基于四叉树对所述待编码视频帧进行四叉树分割,得到至少两个编码单元;
对所述至少两个编码单元进行分割,得到至少两个预测单元。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元和参考预测单元,所述参考预测单元的预测模式已确定;
所述基于与所述目标预测单元相邻的预测单元的预测模式,去除所述预定预测模式中非最优的预测模式,得到候选预测模式,包括:
去除所述预定预测模式中与所述参考预测单元的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元,所述四叉树的节点包括所述目标编码单元的父节点;
所述基于与所述目标预测单元相邻的预测单元的预测模式,去除所述预定预测模式中非最优的预测模式,得到候选预测模式,包括:
获取所述目标编码单元的父节点的变换量化系数;
在所述目标编码单元的父节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除所述预定预测模式中与所述父节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元,所述四叉树的节点包括所述目标编码单元的子节点,所述目标编码单元的子节点的预测模式均相同;
所述基于与所述目标预测单元相邻的预测单元的预测模式,去除所述预定预测模式中非最优的预测模式,得到候选预测模式,包括:
去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式,包括:
获取所述目标编码单元的子节点的变换量化系数;
在所述目标编码单元的子节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述预定预测模式包括帧内预测模式和帧间预测模式。
第二方面,提供了一种视频发布方法,所述方法包括:
接收客户端上传的待发布视频,所述待发布视频为前文所述的视频编码方法编码得到的视频;
对所述待发布视频进行解码得到待编码视频;
对所述待编码视频进行转码,得到转码视频;
将所述编码视频发布到视频平台。
结合本申请任一实施方式,所述视频平台包括短视频平台、直播平台。
第三方面,提供了一种视频编码装置,所述视频编码装置包括:
获取单元,用于获取待编码视频帧和预定预测模式,所述待编码视频帧为待编码视频中的任意一帧视频帧;
分割单元,用于对所述待编码视频帧进行分割,得到至少两个预测单元,所述至少两个预测单元包括目标预测单元,与所述目标预测单元相邻的预测单元的预测模式为参考预测模式;
去除单元,用于去除所述预定预测模式中与所述参考预测模式不匹配的预测模式,得到候选预测模式;
选择单元,用于从所述候选预测模式中选择率失真代价最小的预测模式,作为所述目标预测单元的预测模式。
结合本申请任一实施方式,所述视频编码装置,还包括:编码单元,用于基于所述待编码视频帧中各预测单元的预测模式,对所述待编码视频中的预测单元进行编码,得到所述待编码视频帧的编码视频帧。
结合本申请任一实施方式,所述分割单元,用于:
基于四叉树对所述待编码视频帧进行四叉树分割,得到至少两个编码单元;
对所述至少两个编码单元进行分割,得到至少两个预测单元。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元和参考预测单元,所述参考预测单元的预测模式已确定;
所述去除单元,用于去除所述预定预测模式中与所述参考预测单元的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元,所述四叉树的节点包括所述目标编码单元的父节点;
所述去除单元,用于:
获取所述目标编码单元的父节点的变换量化系数;
在所述目标编码单元的父节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除所述预定预测模式中与所述父节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元,所述四叉树的节点包括所述目标编码单元的子节点,所述目标编码单元的子节点的预测模式均相同;
所述去除单元,用于去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述去除单元,用于:
获取所述目标编码单元的子节点的变换量化系数;
在所述目标编码单元的子节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述预定预测模式包括帧内预测模式和帧间预测模式。
第四方面,提供了一种视频发布装置,所述视频发布装置包括:
接收单元,用于接收客户端上传的待发布视频,所述待发布视频为前文所述的视频编码方法编码得到的视频;
解码单元,用于对所述待发布视频进行解码得到待编码视频;
转码单元,用于对所述待编码视频进行转码,得到转码视频;
发布单元,用于将所述编码视频发布到视频平台。
结合本申请任一实施方式,所述视频平台包括短视频平台、直播平台。
第五方面,提供了一种电子设备,其特征在于,包括:处理器和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;
在所述处理器执行所述计算机指令的情况下,所述电子设备执行如上述第一方面及其任一实施方式;在所述处理器执行所述计算机指令的情况下,所述电子设备或者执行如上述第二方面及其任一实施方式。
第六方面,提供了另一种电子设备,包括:处理器、发送装置、输入装置、输出装置和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;
在所述处理器执行所述计算机指令的情况下,所述电子设备执行如上述第一方面及其任一实施方式;在所述处理器执行所述计算机指令的情况下,所述电子设备或者执行如上述第二方面及其任一实施方式。
第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令;
在所述程序指令被处理器执行的情况下,使所述处理器执行如上述第一方面及其任一实施方式;在所述程序指令被处理器执行的情况下,或者使所述处理器或者执行如上述第二方面及其任一实施方式。
第八方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或指令;在所述计算机程序或指令在计算机上运行的情况下,使得所述计算机执行上述第一方面及其任一实施方式;在所述程序指令被处理器执行的情况下,或者使所述处理器执行如上述第二方面及其任一实施方式。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本申请。
本申请中,视频编码方法在对待编码视频中的视频帧进行预测编码的过程中,获取待编码视频中的待编码视频帧和预定预测模式,通过对待编码视频帧进行分割,得到至少两个预测单元,其中,至少两个预测单元包括目标预测单元。由于对目标预测单元进行编码之前需要从预定预测模式中确定率失真代价最小的预测模式,作为目标预测单元的预测模式,然后再基于目标预测单元的预测模式对预测单元进行编码,因此从预定预测模式中确定目标预测单元的预测模式所消耗的时间,将直接影响目标预测单元的编码效率,进而影响待编码视频帧的编码效率和待编码视频的编码效率。
考虑到对于至少两个预测单元中的目标预测单元,目标预测单元与相邻的预测单元的相关性高,因此在与目标预测单元相邻的预测单元的预测模式为参考预测模式的情况下,可通过去除预定预测模式中与参考预测模式不匹配的预测模式,得到候选预测模式,再从候选预测模式中选择率失真代价最小的预测模式,作为目标预测单元的预测模式。这样无需计算预定预测模式中的每一种预测模式的率失真代价,可减少需要计算率失真代价的预测模式的数量,进而可降低确定目标预测单元的预测模式的时间,从而可提升对待编码视频帧进行编码的效率,由此可提升待编码视频的编码效率。
附图说明
为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。
图1为本申请实施例提供的一种超块的分割示意图;
图2为本申请实施例提供的一种与图1对应的四叉树示意图;
图3为本申请实施例提供的一种未对编码单元进行分割得到预测单元的示意图;
图4为本申请实施例提供的一种对编码单元进行分割得到预测单元的示意图;
图5为本申请实施例提供的另一种对编码单元进行分割得到预测单元的示意图;
图6为本申请实施例提供的又一种对编码单元进行分割得到预测单元的示意图;
图7为本申请实施例提供的一种视频编码方法的流程示意图;
图8为本申请实施例提供的一种基于预测模式对预测单元进行编码的示意图;
图9为本申请实施例提供的一种视频发布系统的架构示意图;
图10为本申请实施例提供的一种视频发布的时序图;
图11为本申请实施例提供的一种视频发布法的流程示意图;
图12为本申请实施例提供的一种视频编码装置的结构示意图;
图13为本申请实施例提供的一种视频发布装置的结构示意图;
图14为本申请实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在进行下文的阐述之前,先对下文将要出现的技术术语进行定义。超块(superblock):待编码视频帧可分为多个超块,可选的,超块的大小为定值,例如,超块的大小为64x64,超块的大小或为128x128。在待编码视频帧的编码过程中,编码器可将超块分割成多个编码块(coding block),可选的,编码器为AV1编码器。
四叉树分割(quad-tree partition):可将一个大小为2Nx2N的编码块(codingblock)分割成4个大小为NxN的编码块,每个大小为NxN的编码块是大小为2Nx2N的编码块的孩子节点(下文简称为子节点),大小为2Nx2N的编码块是4个大小为NxN的编码块的父亲节点(下文简称为父节点)。例如,假设超块大小是64x64,如果按照四叉树分割方式对该超块进行分割,那么该超块被分割为4个大小为32x32的编码块,每个大小为32x32的编码块被称为大小为64x64的超块的子节点。
编码单元(coding unit):不再继续分割的编码块。例如,假设超块大小是64x64,如果不对这个超块进行划分,那么该超块为一个大小为64x64的编码块,而且该超块是一个大小为64x64的编码单元。
预测单元(prediction unit):为在预测待编码视频帧的像素值时的最小预测单元。
请参阅图1,图1所示为一种超块的分割示意图。如图1所示,大小为64x64的超块被分割为4个大小为32x32的编码块,具体的,4个大小为32x32的编码块,指图1中由编号为0、1、2、3、4、5、6的编码块组成的编码块(下文称为第一个大小为32x32的编码块)、编号为7的编码块、编号为8的编码块、以及由编号为9、10、11、12、13、14、15的编码块组成的编码块(下文称为最后一个大小为32x32的编码块)。
第一个大小为32x32的编码块继续分割为4个大小为16x16的编码块,具体的,4个大小为16x16的编码块,指图1中由编号为0、1、2、3的编码块组成的编码块(下文称为第一个大小为16x16的编码块)、编号为4的编码块、编号为5的编码块、编号为6的编码块。第一个大小为16x16的编码块继续分割为4个大小为8x8的编码块,具体的,4个大小为8x8的编码块,指图1中编号为0的编码块、编号为1的编码块、编号为2的编码块、编号为3的编码块,编号为4、5、6、7、8的编码块则不再继续分割。最后一个大小为32x32的编码块则继续分割为编号为9、10、11、12、13、14、15的编码块。因此,通过对大小为64x64的编码块进行分割,最终得到的编码单元包括编号为1至15的编码单元。
请参阅图2,图2所示为与图1对应的四叉树示意图。在图2的四叉树中,根节点表示大小为64x64的超块,每个叶子节点表示一个编码块。如图2所示,大小为64x64的编码块被分割为四个大小为32x32的编码块,其中,编号为7、8的编码块不再继续分割,另外两个编码块分别被分割为四个大小为16x16的编码块。在大小为16x16的编码块中,编号为4、5、6、9、10、15的编码块均不再继续分割,其余两个编码块分别被分割为四个大小为8x8的编码块,分别为编号为0、1、2、3、11、12、13、14的编码块。在图2中,被框出来的大小为16x16的节点为编号为0、1、2、3的编码块的父节点。
在得到编码单元后,可通过任意分割方式对编码单元进行分割得到预测单元,具体的,可将编码单元分割为至少两个预测单元,也可不对编码单元进行分割,此时预测单元即为编码单元。不同的编码单元所采用的分割方式也可以不同。图3所示为未对编码单元进行分割得到预测单元的示意图,如图3所示,未对编号为0的编码单元进行分割,编码单元与预测单元相同。图4所示为一种对编码单元进行分割得到预测单元的示意图,如图4所示,通过对编码单元进行分割可得到编号为1、2的预测单元,或通过对编码单元进行分割可得到编号为3、4的预测单元。图5所示为另一种对编码单元进行分割得到预测单元的示意图,如图5所示,通过对编码单元进行分割可得到编号为5、6、7的预测单元,或通过对编码单元进行分割可得到编号为8、9、10的预测单元,或通过对编码单元进行分割可得到编号为11、12、13的预测单元,或通过对编码单元进行分割可得到编号为14、15、16的预测单元。图6所示为又一种对编码单元进行分割得到预测单元的示意图,如图6所示,通过对编码单元进行分割可得到编号为17、18、19、20的预测单元,或通过对编码单元进行分割可得到编号为21、22、23、24的预测单元。
本申请实施例的执行主体为视频编码装置,其中,视频编码装置可以是任意一种可执行本申请方法实施例所公开的技术方案的电子设备。可选的,视频编码装置可以是以下中的一种:计算机、服务器。
应理解,本申请方法实施例还可以通过处理器执行计算机程序代码的方式实现。下面结合本申请实施例中的附图对本申请实施例进行描述。请参阅图7,图7是本申请实施例提供的一种视频编码方法的流程示意图。
701、获取待编码视频帧和预定预测模式。
本申请实施例中,待编码视频帧为待编码视频中的任意一帧视频帧,其中,待编码视频为需要进行预测编码的视频。
在一种获取待编码视频帧的实现方式中,视频编码装置接收用户通过输入组件输入的待编码视频帧获取待编码视频帧,其中,输入组件包括:键盘、鼠标、触控屏、触控板和音频输入器。
在另一种获取待编码视频帧的实现方式中,视频编码装置接收终端发送的待编码视频帧获取待编码视频帧。可选的,终端可以是以下任意一种:手机、计算机、平板电脑、服务器。例如,终端为服务器,服务器与视频编码装置之间存在通信连接。服务器通过该通信连接将编码后的视频发送至视频编码装置,视频编码装置通过接收编码后的视频获取待编码视频帧。
在又一种获取待编码视频帧的实现方式中,视频编码装置在获取待编码视频后,从待编码视频中选取一帧作为待编码视频帧。
在对待编码视频帧进行预测编码时,需要通过预测待编码视频帧的像素值实现对待编码视频帧的编码,预测模式则是预测待编码视频帧的像素值所采用的模式。本申请实施例中,预定预测模式为预先设定的预测模式。在一种可能实现的方式中,预定预测模式包括帧间预测模式和帧内预测模式两大类,帧间预测模式可包括一种或一种以上的预测模式,帧内预测模式也可包括一种或一种以上的预测模式。
帧内预测模式为采用帧内预测的方式进行编码的预测模式,帧内预测指利用待编码预测单元所属的视频帧中已编码的像素来预测待编码预测单元的像素。例如,待编码预测单元为目标预测单元,目标预测单元属于待编码视频帧,那么可利用待编码视频帧中的已编码的像素,来预测目标预测单元的像素值。通过帧内预测,可去除视频中的空间冗余。
帧间预测模式为采用帧间预测的方式进行编码的预测模式,帧间预测是指利用与待编码预测单元相邻的视频帧中已编码的像素来预测待编码预测单元的像素。例如,待编码预测单元为目标预测单元,目标预测单元属于待编码视频帧,那么可利用与待编码视频帧相邻的视频帧中的已编码的像素,来预测目标预测单元的像素值。通过帧间预测,可去除视频中的时间冗余。
在一种获取预定预测模式的实现方式中,视频编码装置接收用户通过输入组件输入的预定预测模式获取预定预测模式。
在另一种获取预定预测模式的实现方式中,视频编码装置接收终端发送的预定预测模式获取预定预测模式。
应理解,本申请实施例中,确定装置获取待编码视频帧的步骤、获取预定预测模式的步骤,可以分开执行,也可以同时执行,本申请对此不做限定。
702、对上述待编码视频帧进行分割,得到至少两个预测单元。
本申请实施例中,至少两个预测单元包括目标预测单元,目标预测单元为至少两个预测单元中的任意一个。在一种可能实现的方式中,视频编码装置基于四叉树对待编码视频帧进行四叉树分割,得到至少两个编码单元。对至少两个编码单元进行分割,得到至少两个预测单元。
与目标预测单元相邻的预测单元的预测模式为参考预测模式。本申请实施例中,与目标预测单元相邻的预测单元可以是与目标预测单元属于同一编码单元的预测单元,例如,目标预测单元为图6中编号为18的预测单元,那么与目标预测单元相邻的预测单元可以是编号为17的预测单元,也可以是编号为19的预测单元,还可以是编号为20的预测单元。与目标预测单元相邻的预测单元也可以是与目标预测单元但与目标预测单元分属于不同编码单元的预测单元。
703、去除上述预定预测模式中与上述参考预测模式不匹配的预测模式,得到候选预测模式。
由于在待编码视频帧中,相邻的两个预测单元之间存在较高的相关性,故基于与目标预测单元相邻的预测单元的预测模式,可确定对目标预测单元而言,哪些预测模式不是最优的预测模式。预测单元的最优预测模式为编码效果最好的预测模式,其中,编码效果包括以下至少一种:率失真代价、编码所消耗的时间,具体的,率失真代价越小编码效果越好,编码所消耗的时间越少编码效果越好。
在一种可能实现的方式中,视频编码装置去除预定预测模式中与该参考预测模式不同的预测模式,得到候选预测模式。例如,预定预测模式包括预测模式a、预测模式b、预测模式c,其中,预测模式a和预测模式b为帧间预测模式,预测模式c为帧内预测模式,若参考预测模式为帧间预测模式,那么去除预定预测模式中的帧内预测模式后得到候选预测模式,因此,对目标预测单元而言,预测模式a和预测模式b为候选预测模式。
704、从上述候选预测模式中选择率失真代价最小的预测模式,作为上述目标预测单元的预测模式。
在得到候选预测模式后,视频编码装置再以率失真代价为依据确定目标预测单元的最优预测模式。具体的,视频编码装置从候选预测模式中选择率失真代价最小的预测模式,作为目标预测单元的预测模式。
本申请实施例中,视频编码方法在对待编码视频中的视频帧进行预测编码的过程中,获取待编码视频中的待编码视频帧和预定预测模式,通过对待编码视频帧进行分割,得到至少两个预测单元,其中,至少两个预测单元包括目标预测单元。由于对目标预测单元进行编码之前需要从预定预测模式中确定率失真代价最小的预测模式,作为目标预测单元的预测模式,然后再基于目标预测单元的预测模式对预测单元进行编码,因此从预定预测模式中确定目标预测单元的预测模式所消耗的时间,将直接影响目标预测单元的编码效率,进而影响待编码视频帧的编码效率和待编码视频的编码效率。
考虑到对于至少两个预测单元中的目标预测单元,目标预测单元与相邻的预测单元的相关性高,因此在与目标预测单元相邻的预测单元的预测模式为参考预测模式的情况下,可通过去除预定预测模式中与参考预测模式不匹配的预测模式,得到候选预测模式。再从候选预测模式中选择率失真代价最小的预测模式,作为目标预测单元的预测模式。这样无需计算预定预测模式中的每一种预测模式的率失真代价,可减少需要计算率失真代价的预测模式的数量,进而可降低确定目标预测单元的预测模式的时间,从而可提升对待编码视频帧进行编码的效率,由此可提升待编码视频的编码效率。
作为一种可选的实施方式,视频编码装置在执行完步骤704后,还执行以下步骤:基于上述待编码视频帧中各预测单元的预测模式,对上述待编码视频中的预测单元进行编码,得到上述待编码视频帧的编码视频帧。
视频编码装置在确定待编码视频帧中各预测单元的预测模式后,可基于各个预测单元的预测模式对预测单元进行编码,从而完成对待编码视频帧的编码得到编码视频帧。
可选的,视频编码装置通过编码器执行上述视频编码方法,其中,编码器可以是开放媒体联盟视频(AV1)编码器,例如,编码器为可扩展视频技术(scalable videotechnology,SVT)-AV1,编码器或者为开放媒体联盟(alliance for open media,AOM)-AV1。
而且基于与目标预测单元相邻的预测单元的预测模式确定目标预测单元的预测模式,可减少确定预测模式的缓存未命中(cash-miss),进而可降低确定预测模式所消耗的时间,从而可降低待编码视频帧的编码时间。
在一种可能实现的方式中,图8为基于预测模式对预测单元进行编码的示意图。如图8所示,预测单元包括8x4个原始像素值,预测单元的大小为8x4。视频编码装置首先基于预测单元的预测模式生成预测单元的预测像素值。具体的,在预测模式为帧内预测模式的情况下,视频编码装置利用预测模式以及相邻的预测单元的重建像素值,生成该预测单元的预测像素值,其中,重建像素值为相邻的预测单元编码后的像素值。在预测模式为帧间预测模式的情况下,视频编码装置利用预测模式以及相邻的视频帧的重建像素值,生成该预测单元的预测像素值,其中,重建像素值为相邻的预测视频帧编码后的像素值。然后视频编码装置用预测单元的原始像素值减去预测单元的预测像素值生成预测单元的预测残差,再对预测残差依次进行变换、量化,生成预测单元的变换量化系数。如图8所示,变换量化系数为二维矩阵,其中,该二维矩阵包括多个元素,即变换量化系数包括多个系数。在变换量化系数中,一个系数表征一个维度的信息,不同系数表征不同维度的信息。再通过对变换量化系数依次进行反量化、反变换,生成预测单元的重建残差,其中,反量化为量化的逆过程,反变换为变换的逆过程。最后通过将预测像素值与重建残差相加,可生成预测单元的重建像素值,由此完成预测单元的编码。
由于若直接基于预测单元的预测残差生成预测单元的重建像素值,易导致预测单元的重建像素值的码率大,因此在该种实现方式中,视频编码装置在确定预测单元的预测残差后,通过对预测残差进行变换、量化生成变换量化系数,以压缩预测残差的码率。由此,再通过对变换量化系数进行反量化、反变换生成重建残差,并基于重建残差生成预测单元的重建像素值,可降低重建像素值的码率。
但对预测残差进行变换、量化生成变换量化系数,会导致预测残差的信息的丢失,进而导致基于变换量化系数生成的重建残差与预测残差之间存在差异,从而导致基于重建残差生成的重建像素值与原始像素值之间存在差异,该差异为原始像素值与重建像素值之间的失真(distortion)。若用D表示原始像素值与重建像素值之间的失真,那么上述率失真代价为D+λ*R,其中,λ为常数,R为表示变换量系数所消耗的比特以及预测模式所消耗的比特(Rate)。
可选的,视频编码器按照对编码视频帧进行编码的方式,对待编码视频中的视频帧分别进行编码,可完成对待编码视频的编码得到编码视频。
作为一种可选的实施方式,至少两个编码单元包括目标编码单元,其中,目标编码单元包括目标预测单元和参考预测单元,参考预测单元的预测模式已确定。在该种实施方式中,视频编码装置在执行步骤703的过程中执行以下步骤:去除上述预定预测模式中与上述参考预测单元的预测模式不同的预测模式,得到上述候选预测模式。
由于目标预测单元与参考预测单元均属于目标编码单元,目标预测单元的最优预测模式与参考预测单元的最优预测模式相同的几率大,因此视频编码装置确定预定预测模式中与参考预测单元的预测模式不同的预测模式为非最优预测模式,并通过去除预定预测模式中的非最优预测模式,得到候选预测模式,应理解,参考预测单元已确定的预测模式为参考预测单元的最优预测模式。
在一种可能实现的方式中,预定预测模式包括帧内预测模式和帧间预测模式。对于目标预测单元,如果目标预测单元所属的目标编码单元中存在已确定预测模式的参考预测单元,那么在参考预测单元的预测模式为帧内预测模式的情况下,去除预定预测模式中的帧间预测模式得到候选预测模式,在参考预测单元的预测模式为帧间预测模式的情况下,去除预定预测模式中的帧内预测模式得到候选预测模式。
作为一种可选的实施方式,至少两个编码单元包括目标编码单元,目标编码单元包括目标预测单元,四叉树的节点包括目标编码单元的父节点。在该种实施方式中,视频编码装置在执行步骤703的过程中执行以下步骤:获取目标编码单元的父节点的变换量化系数,在目标编码单元的父节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除预定预测模式中与父节点的预测模式不同的预测模式,得到候选预测模式。
目标编码单元的父节点的变换量化系数中的非零系数越少,说明目标编码单元的父节点的预测像素值与目标编码单元的父节点的原始像素值的差异越小,也就说明基于目标编码单元的父节点的预测模式对目标编码单元的父节点进行编码,目标编码单元的父节点在编码前后的差异小,基于目标编码单元的父节点的预测模式进行编码所产生的失真小。
本申请实施例中,视频编码装置以预定阈值为依据,确定目标编码单元的父节点的变换量化系数中非零系数的数量是多还是少,具体的,目标编码单元的父节点的变换量化系数中非零系数的数量小于预定阈值,说明目标编码单元的父节点的变换量化系数中非零系数的数量少,目标编码单元的父节点的变换量化系数中非零系数的数量大于或等于预定阈值,说明目标编码单元的父节点的变换量化系数中非零系数的数量多。可选的,预定阈值为7。
因此,视频编码装置在目标编码单元的父节点的变换量化系数中非零系数的数量小于预定阈值的情况下,确定预定预测模式中与目标编码单元的父节点的预测模式不同的预测模式为非最优预测模式,可提升对非最优预测模式的判断准确度。在确定非最优预测模式后,将非最优预测模式从预定预测模式中去除得到候选预测模式。
在一种可能实现的方式中,预定预测模式包括帧内预测模式和帧间预测模式,预定阈值为7。对于目标预测单元,如果目标预测单元属于目标编码单元,目标编码单元的父节点的预测模式已确定,那么在目标编码单元的父节点的预测模式为帧内预测模式,且目标编码单元的父节点的变换量化系数中非零系数的数量小于7的情况下,去除预定预测模式中的帧间预测模式得到候选预测模式,在目标编码单元的父节点的预测模式为帧间预测模式,且目标编码单元的父节点的变换量化系数中非零系数的数量小于7的情况下,去除预定预测模式中的帧内预测模式得到候选预测模式。
作为一种可选的实施方式,至少两个编码单元包括目标编码单元,目标编码单元包括目标预测单元,四叉树的节点包括目标编码单元的子节点,目标编码单元的子节点的预测模式均相同,具体的,目标编码单元的子节点共有四个,目标编码单元的四个子节点的预测模式均为帧内预测模式,目标编码单元的四个子节点的预测模式或均为帧间预测模式。
在该种实施方式中,视频编码装置在执行步骤703的过程中执行以下步骤:去除上述预定预测模式中与上述目标编码单元的子节点的预测模式不同的预测模式,得到上述候选预测模式。
由于目标预测单元包括目标编码单元的子节点,目标预测单元的最优预测模式与目标编码单元的子节点的预测模式相同的几率大,因此视频编码装置确定预定预测模式中与目标编码单元的子节点的预测模式不同的预测模式为非最优预测模式,并通过去除预定预测模式中的非最优预测模式,得到候选预测模式。
在一种可能实现的方式中,预定预测模式包括帧内预测模式和帧间预测模式。对于目标预测单元,如果目标预测单元属于目标编码单元,目标编码单元的子节点的预测模式已确定,那么在目标编码单元的子节点的预测模式为帧内预测模式的情况下,去除预定预测模式中的帧间预测模式得到候选预测模式,在目标编码单元的子节点的预测模式为帧间预测模式的情况下,去除预定预测模式中的帧内预测模式得到候选预测模式。
作为一种可选的实施方式,视频编码装置获取目标编码单元的子节点的变换量化系数,在目标编码单元的子节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除预定预测模式中与目标编码单元的子节点的预测模式不同的预测模式,得到候选预测模式。
在该种实施方式中,视频编码装置在目标编码单元的子节点的变换量化系数中非零系数的数量小于预定阈值的情况下,确定预定预测模式中与目标编码单元的子节点的预测模式不同的预测模式为非最优预测模式,这样可提升对非最优预测模式的判断准确度。
在一种可能实现场景中,基于前文所提供的视频编码方法可实现视频发布。请参阅图9,图9所示为视频发布系统的架构示意图,如图9所示,视频发布系统1包括客户端11、客户端12、服务端13,其中,客户端11和客户端12均与服务端13之间存在通信连接,客户端11和客户端12均可通过该通信连接向服务端13上传视频,客户端11和客户端12通过向服务端13上传视频在服务端13所运行的视频平台发布视频。在一种可能实现的方式中,服务端13所运行的视频平台为短视频平台,在另一种可能实现的方式中,服务端13所运行的视频平台为直播平台。
可选的,客户端11和客户端12均可以是以下中的一个:手机、电脑、平板电脑、可穿戴智能设备,例如,客户端11为手机,客户端12为电脑,又例如,客户端11和客户端12均为平板电脑。可选的,服务端13为服务器。
应理解,图9所示的客户端11和客户端12仅为示例,不应理解为与服务端13之间存在通信连接的客户端只能是2个,在实际应用中,与服务端13之间存在通信连接的客户端的数量可以是m个,其中,m为正整数。
客户端11和客户端12可登录该服务端13所运行的视频平台,用户进而可通过客户端11或客户端12向该视频平台上传视频,以在该视频平台发布所上传的视频。而服务端13在接收到用户上传的视频后,可采用前文所述的技术方案,对用户所上传的视频进行转码,然后将转码视频发布至视频平台。这样可提升对用户上传的视频的压缩速度,从而可提高用户发布视频的体验。
请参阅图10,图10为本申请实施例提供的一种视频发布的时序图。如图10所示,客户端11首先对目标视频进行编码得到待发布视频,其中,目标视频为客户端11期望通过视频平台进行发布的视频。可选的,客户端11基于本申请实施例提供的视频编码方法,对目标视频进行编码得到待发布视频。在得到待发布视频后,客户端11向服务端13上传待发布视频。客户端11通过对目标视频进行编码处理得到待发布视频,然后向服务端13上传待发布视频,相较于向服务端13上传目标视频,可减少数据传输量,提高传输速度。
服务端13在接收到客户端11上传的待发布视频后,对待发布视频进行解码得到待编码视频。然后利用本申请实施例提供的视频编码方法,对待编码视频进行转码得到转码视频。再将转码视频发布到视频平台。最后客户端12从视频平台获取转码视频。由于服务端13通过对待编码视频进行转码得到转码视频,可压缩待编码视频的数据量,故客户端12从视频平台获取转码视频,相较于客户端12从视频平台获取待编码视频,可减少数据传输量,提高传输速度。
基于前文所提供的视频编码方法,本申请实施例还提供了一种视频发布方法,该视频发布方法的执行主体为视频发布装置,该视频发布装置即为视频发布系统1中的服务端13。请参阅图11,图11是本申请实施例提供的一种视频发布方法的流程示意图,该视频发布方法为图10中的服务端13所执行的方法。
1101、接收客户端上传的待发布视频。
上述待发布视频为基于前文所述的编码方法编码得到的视频。
1102、对上述待发布视频进行解码得到待编码视频。
由于待发布视频为编码后的视频,因此视频发布装置在接收到待发布视频后,需对待发布视频进行解码,得到待编码视频。
1103、对上述待编码视频进行转码,得到转码视频。
视频发布装置通过对待编码视频进行转码,可压缩待编码视频得到转码视频。在一种可能实现的方式中,视频发布装置可通过前文所述的视频编码方法,对待编码视频进行编码,实现对待编码视频进行转码,得到转码视频。
1104、将上述转码视频发布到视频平台。
本申请实施例中,由于待发布视频为基于前文所述的编码方法编码得到的视频,可提升服务端接收客户端上传的视频的效率。视频发布装置在接收客户端上传的待发布视频后,通过对待发布视频进行解码得到待编码视频。再通过对待编码视频进行转码得到转码视频,这样可压缩待编码视频的数据量。最后将转码视频发布至视频平台,可提高用户发布视频的体验。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。
请参阅图12,图12为本申请实施例提供的一种视频编码装置的结构示意图,该视频编码装置2用于对视频中的视频帧进行预测编码,该视频编码装置2包括:获取单元21、分割单元22、去除单元23、选择单元24,可选的,视频编码装置2还包括编码单元25,具体的:
获取单元21,用于获取待编码视频帧和预定预测模式,所述待编码视频帧为待编码视频中的任意一帧视频帧;
分割单元22,用于对所述待编码视频帧进行分割,得到至少两个预测单元,所述至少两个预测单元包括目标预测单元;
去除单元23,用于基于与所述目标预测单元相邻的预测单元的预测模式,去除所述预定预测模式中非最优的预测模式,得到候选预测模式;
选择单元24,用于从所述候选预测模式中选择率失真代价最小的预测模式,作为所述目标预测单元的预测模式。
结合本申请任一实施方式,所述视频编码装置2,还包括:编码单元25,用于基于所述待编码视频帧中各预测单元的预测模式,对所述待编码视频中的预测单元进行编码,得到所述待编码视频帧的编码视频帧。
结合本申请任一实施方式,所述分割单元22,用于:
基于四叉树对所述待编码视频帧进行四叉树分割,得到至少两个编码单元;
对所述至少两个编码单元进行分割,得到至少两个预测单元。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元和参考预测单元,所述参考预测单元的预测模式已确定;
所述去除单元23,用于去除所述预定预测模式中与所述参考预测单元的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元,所述四叉树的节点包括所述目标编码单元的父节点;
所述去除单元23,用于:
获取所述目标编码单元的父节点的变换量化系数;
在所述目标编码单元的父节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除所述预定预测模式中与所述父节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元,所述四叉树的节点包括所述目标编码单元的子节点,所述目标编码单元的子节点的预测模式均相同;
所述去除单元23,用于去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述去除单元23,用于:
获取所述目标编码单元的子节点的变换量化系数;
在所述目标编码单元的子节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式。
结合本申请任一实施方式,所述预定预测模式包括帧内预测模式和帧间预测模式。
本申请实施例中,视频编码方法在对待编码视频中的视频帧进行预测编码的过程中,获取待编码视频中的待编码视频帧和预定预测模式,通过对待编码视频帧进行分割,得到至少两个预测单元,其中,至少两个预测单元包括目标预测单元。由于对目标预测单元进行编码之前需要从预定预测模式中确定率失真代价最小的预测模式,作为目标预测单元的预测模式,然后再基于目标预测单元的预测模式对预测单元进行编码,因此从预定预测模式中确定目标预测单元的预测模式所消耗的时间,将直接影响目标预测单元的编码效率,进而影响待编码视频帧的编码效率和待编码视频的编码效率。
考虑到对于至少两个预测单元中的目标预测单元,目标预测单元与相邻的预测单元的相关性高,因此在与目标预测单元相邻的预测单元的预测模式为参考预测模式的情况下,可通过去除预定预测模式中与参考预测模式不匹配的预测模式,得到候选预测模式,再从候选预测模式中选择率失真代价最小的预测模式,作为目标预测单元的预测模式。这样无需计算预定预测模式中的每一种预测模式的率失真代价,可减少需要计算率失真代价的预测模式的数量,进而可降低确定目标预测单元的预测模式的时间,从而可提升对待编码视频帧进行编码的效率,由此可提升待编码视频的编码效率。
请参阅图13,图13为本申请实施例提供的一种视频发布装置的结构示意图。该视频发布装置3包括:接收单元31、解码单元32、转码单元33、发布单元34,具体的:
接收单元31,用于接收客户端上传的待发布视频,所述待发布视频为基于前文所述的视频编码方法编码得到的视频;
解码单元32,用于对所述待发布视频进行解码得到待编码视频;
转码单元33,用于对所述待编码视频进行转码,得到转码视频;
发布单元34,用于将所述转码视频发布到视频平台。
结合本申请任一实施方式,所述视频平台包括短视频平台、直播平台。
本申请实施例中,由于待发布视频为基于前文所述的编码方法编码得到的视频,可提升服务端接收客户端上传的视频的效率。视频发布装置在接收客户端上传的待发布视频后,通过对待发布视频进行解码得到待编码视频。再通过对待编码视频进行转码得到转码视频,这样可压缩待编码视频的数据量。最后将转码视频发布至视频平台,可提高用户发布视频的体验。
在一些实施例中,本申请实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
图14为本申请实施例提供的一种电子设备的硬件结构示意图。该电子设备4包括处理器41,存储器42。可选的,该电子设备4还包括输入装置43,输出装置44。该处理器41、存储器42、输入装置43和输出装置44通过连接器相耦合,该连接器包括各类接口、传输线或总线等等,本申请实施例对此不作限定。应当理解,本申请的各个实施例中,耦合是指通过特定方式的相互联系,包括直接相连或者通过其他设备间接相连,例如可以通过各类接口、传输线、总线等相连。
处理器41可以包括是一个或多个处理器,例如包括一个或多个中央处理器(central processing unit,CPU),在处理器是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。可选的,处理器41可以是多个CPU构成的处理器组,多个处理器之间通过一个或多个总线彼此耦合。可选的,该处理器还可以为其他类型的处理器等等,本申请实施例不作限定。
存储器42可用于存储计算机程序指令,以及用于执行本申请方案的程序代码在内的各类计算机程序代码。可选地,存储器包括但不限于是随机存储记忆体(random accessmemory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasableprogrammable read only memory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM),该存储器用于相关指令及数据。
输入装置43用于输入数据和/或信号,以及输出装置44用于输出数据和/或信号。输入装置43和输出装置44可以是独立的器件,也可以是一个整体的器件。
可理解,本申请实施例中,存储器42不仅可用于存储相关指令,还可用于存储相关数据,本申请实施例对于该存储器中具体所存储的数据不作限定。
可以理解的是,图14仅仅示出了一种电子设备的简化设计。在实际应用中,电子设备还可以分别包含必要的其他元件,包含但不限于任意数量的输入/输出装置、处理器、存储器等,而所有可以实现本申请实施例的电子设备都在本申请的保护范围之内。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。所属领域的技术人员还可以清楚地了解到,本申请各个实施例描述各有侧重,为描述的方便和简洁,相同或类似的部分在不同实施例中可能没有赘述,因此,在某一实施例未描述或未详细描述的部分可以参见其他实施例的记载。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriberline,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(digitalversatiledisc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:只读存储器(read-only memory,ROM)或随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可存储程序代码的介质。

Claims (14)

1.一种视频编码方法,其特征在于,所述方法包括:
获取待编码视频帧和预定预测模式,所述待编码视频帧为所述待编码视频中的任意一帧视频帧;
对所述待编码视频帧进行分割,得到至少两个预测单元,所述至少两个预测单元包括目标预测单元,与所述目标预测单元相邻的预测单元的预测模式为参考预测模式;
去除所述预定预测模式中与所述参考预测模式不匹配的预测模式,得到候选预测模式;
从所述候选预测模式中选择率失真代价最小的预测模式,作为所述目标预测单元的预测模式。
2.根据权利要求1所述的方法,其特征在于,在从所述候选预测模式中选择率失真代价最小的预测模式,作为所述目标预测单元的目标预测模式之后,所述方法还包括:
基于所述待编码视频帧中各预测单元的预测模式,对所述待编码视频中的预测单元进行编码,得到所述待编码视频帧的编码视频帧。
3.根据权利要求1或2所述的方法,其特征在于,所述对所述待编码视频帧进行分割,得到至少两个预测单元,包括:
基于四叉树对所述待编码视频帧进行四叉树分割,得到至少两个编码单元;
对所述至少两个编码单元进行分割,得到至少两个预测单元。
4.根据权利要求3所述的方法,其特征在于,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元和参考预测单元,所述参考预测单元的预测模式已确定;
所述基于与所述目标预测单元相邻的预测单元的预测模式,去除所述预定预测模式中非最优的预测模式,得到候选预测模式,包括:
去除所述预定预测模式中与所述参考预测单元的预测模式不同的预测模式,得到所述候选预测模式。
5.根据权利要求3所述的方法,其特征在于,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元,所述四叉树的节点包括所述目标编码单元的父节点;
所述基于与所述目标预测单元相邻的预测单元的预测模式,去除所述预定预测模式中非最优的预测模式,得到候选预测模式,包括:
获取所述目标编码单元的父节点的变换量化系数;
在所述目标编码单元的父节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除所述预定预测模式中与所述父节点的预测模式不同的预测模式,得到所述候选预测模式。
6.根据权利要求3所述的方法,其特征在于,所述至少两个编码单元包括目标编码单元,所述目标编码单元包括所述目标预测单元,所述四叉树的节点包括所述目标编码单元的子节点,所述目标编码单元的子节点的预测模式均相同;
所述基于与所述目标预测单元相邻的预测单元的预测模式,去除所述预定预测模式中非最优的预测模式,得到候选预测模式,包括:
去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式。
7.根据权利要求6所述的方法,其特征在于,所述去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式,包括:
获取所述目标编码单元的子节点的变换量化系数;
在所述目标编码单元的子节点的变换量化系数中非零系数的数量小于预定阈值的情况下,去除所述预定预测模式中与所述目标编码单元的子节点的预测模式不同的预测模式,得到所述候选预测模式。
8.根据权利要求1或2所述的方法,其特征在于,所述预定预测模式包括帧内预测模式和帧间预测模式。
9.一种视频发布方法,其特征在于,所述方法包括:
接收客户端上传的待发布视频,所述待发布视频为基于权利要求2所述的方法编码得到的视频;
对所述待发布视频进行解码得到待编码视频;
对所述待编码视频进行转码,得到转码视频;
将所述转码视频发布到视频平台。
10.根据权利要求9所述的方法,其特征在于,所述视频平台包括短视频平台、直播平台。
11.一种视频编码装置,其特征在于,所述装置包括:
获取单元,用于获取待编码视频帧和预定预测模式,所述待编码视频帧为待编码视频中的任意一帧视频帧;
分割单元,用于对所述待编码视频帧进行分割,得到至少两个预测单元,所述至少两个预测单元包括目标预测单元,与所述目标预测单元相邻的预测单元的预测模式为参考预测模式;
去除单元,用于去除所述预定预测模式中与所述参考预测模式不匹配的预测模式,得到候选预测模式;
选择单元,用于从所述候选预测模式中选择率失真代价最小的预测模式,作为所述目标预测单元的预测模式。
12.一种视频发布装置,其特征在于,所述装置包括:
接收单元,用于接收客户端上传的待发布视频,所述待发布视频为基于权利要求2所述的方法编码得到的视频;
解码单元,用于对所述待发布视频进行解码得到待编码视频;
转码单元,用于对所述待编码视频进行转码,得到转码视频;
发布单元,用于将所述转码视频发布到视频平台。
13.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;
在所述处理器执行所述计算机指令的情况下,所述电子设备执行如权利要求1至8中任意一项所述的方法;
在所述处理器执行所述计算机指令的情况下,所述电子设备或者执行如权利要求9或10所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令;
在所述程序指令被处理器执行的情况下,使所述处理器执行权利要求1至8中任意一项所述的方法;
在所述程序指令被处理器执行的情况下,或者使所述处理器执行权利要求9或10所述的方法。
CN202311236937.4A 2023-09-22 2023-09-22 视频编码方法、视频发布方法及相关产品 Pending CN117440156A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311236937.4A CN117440156A (zh) 2023-09-22 2023-09-22 视频编码方法、视频发布方法及相关产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311236937.4A CN117440156A (zh) 2023-09-22 2023-09-22 视频编码方法、视频发布方法及相关产品

Publications (1)

Publication Number Publication Date
CN117440156A true CN117440156A (zh) 2024-01-23

Family

ID=89557387

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311236937.4A Pending CN117440156A (zh) 2023-09-22 2023-09-22 视频编码方法、视频发布方法及相关产品

Country Status (1)

Country Link
CN (1) CN117440156A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170353719A1 (en) * 2016-06-03 2017-12-07 Mediatek Inc. Method and Apparatus for Template-Based Intra Prediction in Image and Video Coding
CN110198442A (zh) * 2018-12-27 2019-09-03 腾讯科技(深圳)有限公司 一种用于视频编码的帧内预测方法、装置和存储介质
CN112738573A (zh) * 2020-12-25 2021-04-30 北京达佳互联信息技术有限公司 视频数据传输方法和装置以及视频数据发布方法和装置
CN114666579A (zh) * 2022-03-22 2022-06-24 北京达佳互联信息技术有限公司 视频编码方法、装置、电子设备及存储介质
US20220239904A1 (en) * 2020-05-25 2022-07-28 Tencent Technology (Shenzhen) Company Limited Video Encoding Method, Video Playback Method, Related Device, and Medium
CN116016913A (zh) * 2018-07-13 2023-04-25 腾讯美国有限责任公司 视频编解码的方法、视频编解码器以及计算机可读介质
CN116405665A (zh) * 2023-04-25 2023-07-07 腾讯科技(深圳)有限公司 编码方法、装置、设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170353719A1 (en) * 2016-06-03 2017-12-07 Mediatek Inc. Method and Apparatus for Template-Based Intra Prediction in Image and Video Coding
CN116016913A (zh) * 2018-07-13 2023-04-25 腾讯美国有限责任公司 视频编解码的方法、视频编解码器以及计算机可读介质
CN110198442A (zh) * 2018-12-27 2019-09-03 腾讯科技(深圳)有限公司 一种用于视频编码的帧内预测方法、装置和存储介质
US20220239904A1 (en) * 2020-05-25 2022-07-28 Tencent Technology (Shenzhen) Company Limited Video Encoding Method, Video Playback Method, Related Device, and Medium
CN112738573A (zh) * 2020-12-25 2021-04-30 北京达佳互联信息技术有限公司 视频数据传输方法和装置以及视频数据发布方法和装置
CN114666579A (zh) * 2022-03-22 2022-06-24 北京达佳互联信息技术有限公司 视频编码方法、装置、电子设备及存储介质
CN116405665A (zh) * 2023-04-25 2023-07-07 腾讯科技(深圳)有限公司 编码方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈东斌,段晓辉等: "抗剪切的彩色图像多数字水印算法", 信息隐藏全国学术研讨会(CIHW2000/2001)论文集, no. 2001, 31 December 2001 (2001-12-31), pages 36 *

Similar Documents

Publication Publication Date Title
US11659210B2 (en) Video encoding method for encoding division block, video decoding method for decoding division block, and recording medium for implementing the same
KR101997604B1 (ko) 영상 부호화/복호화 방법 및 장치
JP5957561B2 (ja) 大きいサイズの変換単位を用いた映像符号化、復号化方法及び装置
CN113424547A (zh) 点云属性编解码的加权中值预测的技术和装置
CN113454691A (zh) 自适应点云属性编解码的方法和装置
JP2013179707A (ja) 大きいサイズの変換単位を利用した映像符号化、復号化方法及び装置
KR20100113703A (ko) 예측 모드 선택 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
CN113795870B (zh) 一种对点云属性编解码的方法、装置及存储介质
KR20130003718A (ko) 고속 코딩 단위(Coding Unit) 모드 결정을 통한 부호화/복호화 방법 및 장치
CN108777794B (zh) 图像的编码方法和装置、存储介质、电子装置
WO2020140218A1 (zh) 用于视频编码或解码的运动信息获取方法与装置
JP2021506180A (ja) ビデオデータインター予測方法及び装置
KR101789610B1 (ko) 이미지 코딩/디코딩 방법, 기기 및 시스템
CN112188197A (zh) 通道间点云属性解码方法、装置以及可读存储介质
KR101943058B1 (ko) 영상 부호화/복호화 방법 및 장치
WO2023193701A1 (zh) 图像编码方法及装置
CN116866591A (zh) 一种图像编码方法、装置及计算机设备、介质
KR101911587B1 (ko) 적응적인 인트라 예측을 이용한 영상 부호화/복호화 장치 및 방법
CN116527909A (zh) 编码参数的传输方法、装置、设备、存储介质及程序产品
CN117440156A (zh) 视频编码方法、视频发布方法及相关产品
CN116405665A (zh) 编码方法、装置、设备及存储介质
Li et al. 3D tensor auto-encoder with application to video compression
CN114025166A (zh) 视频压缩方法、电子设备及计算机可读存储介质
KR20110098089A (ko) 영상 부호화 장치 및 그 방법, 및 영상 복호화 장치 및 그 방법
CN111885378B (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