CN110198443B - 视频帧的编码单元划分方法、装置、存储介质及电子装置 - Google Patents

视频帧的编码单元划分方法、装置、存储介质及电子装置 Download PDF

Info

Publication number
CN110198443B
CN110198443B CN201810444914.5A CN201810444914A CN110198443B CN 110198443 B CN110198443 B CN 110198443B CN 201810444914 A CN201810444914 A CN 201810444914A CN 110198443 B CN110198443 B CN 110198443B
Authority
CN
China
Prior art keywords
coding unit
frame
target
type
frame type
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
Application number
CN201810444914.5A
Other languages
English (en)
Other versions
CN110198443A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810444914.5A priority Critical patent/CN110198443B/zh
Priority to JP2020543747A priority patent/JP7171748B2/ja
Priority to EP19799390.0A priority patent/EP3793196B1/en
Priority to PCT/CN2019/081211 priority patent/WO2019214373A1/zh
Publication of CN110198443A publication Critical patent/CN110198443A/zh
Priority to US16/933,455 priority patent/US11317089B2/en
Application granted granted Critical
Publication of CN110198443B publication Critical patent/CN110198443B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/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/172Methods 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 picture, frame or field
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种视频帧的编码单元划分方法、装置、存储介质及电子装置。其中,该方法包括:根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,目标编码单元类型用于指示对目标帧进行划分时的划分深度;在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件,得到目标结果;对目标编码单元执行目标结果对应的划分操作。本发明解决了相关技术中帧的编码速度较低的技术问题。

Description

视频帧的编码单元划分方法、装置、存储介质及电子装置
技术领域
本发明涉及计算机领域,具体而言,涉及一种视频帧的编码单元划分方法、装置、存储介质及电子装置。
背景技术
未来视频的发展趋势是高清晰度,高帧率,高压缩率,在高压缩率视频编码时,目前均采用逐层自上而下对当前编码单元(CU)做4个子块划分,直到CU大小为8截止,然后自下而上,再逐层比较,选出最优模式的CU划分情况,这种方式会导致编码速度较低。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种视频帧的编码单元划分方法、装置、存储介质及电子装置,以至少解决相关技术中帧的编码速度较低的技术问题。
根据本发明实施例的一个方面,提供了一种视频帧的编码单元划分方法,包括:根据具有对应关系的帧类型和预定编码单元类型确定目标帧中属于目标编码单元类型的目标编码单元,其中,所述目标编码单元类型为待进行编码单元划分的所述目标帧所属的目标帧类型对应的预定编码单元类型,所述预定编码单元类型用于指示属于所述帧类型的帧中的预定编码单元被划分时的编码单元深度;在对所述目标帧中的目标编码单元进行划分时,根据所述目标编码单元的编码单元信息确定所述目标编码单元是否满足目标条件,得到目标结果;对所述目标编码单元执行所述目标结果对应的划分操作。
根据本发明实施例的另一方面,还提供了一种视频帧的编码单元划分装置,包括:第一确定模块,用于根据具有对应关系的帧类型和预定编码单元类型确定目标帧中属于目标编码单元类型的目标编码单元,其中,所述目标编码单元类型为待进行编码单元划分的所述目标帧所属的目标帧类型对应的预定编码单元类型,所述预定编码单元类型用于指示属于所述帧类型的帧中的预定编码单元被划分时的编码单元深度;第二确定模块,用于在对所述目标帧中的目标编码单元进行划分时,根据所述目标编码单元的编码单元信息确定所述目标编码单元是否满足目标条件,得到目标结果;处理模块,对所述目标编码单元执行所述目标结果对应的划分操作。
根据本发明实施例的另一方面,还提供了一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。
根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行上述任一项中所述的方法。
在本发明实施例中,采用根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,目标编码单元类型用于指示对目标帧进行划分时的划分深度;在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件,得到目标结果;对目标编码单元执行目标结果对应的划分操作的方式,在对帧进行编码单元划分的过程中,根据帧的帧类型与编码单元类型的对应关系,确定是否对编码单元进行快速的划分深度的确定,对于属于上述对应关系中记载的编码单元类型的编码单元,在划分时根据该编码单元的编码单元信息确定是否停止对该编码单元进行划分,并根据得到的目标结果执行后续的划分操作。从而能够针对不同帧类型,在对不同划分深度进行划分时采取不同的划分方式,也就避免了将每个视频帧均划分到低的操作,从而实现了提高帧的编码速度的技术效果,进而解决了相关技术中帧的编码速度较低的技术问题。进一步,充分考虑了不同帧类型的帧在划分编码单元时的不同情况,为不同帧类型的帧指定不同的快速确定是否继续划分的划分深度,从而减少编码误差的产生。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的视频帧的编码单元划分方法的示意图;
图2是根据本发明实施例的一种可选的视频帧的编码单元划分方法的应用环境示意图;
图3是根据本发明可选的实施方式的一种可选的视频帧的编码单元划分方法的示意图;
图4是根据本发明可选的实施方式的另一种可选的视频帧的编码单元划分方法的示意图;
图5是根据本发明实施例的一种可选的视频帧的编码单元划分装置的示意图;
图6是根据本发明实施例的一种可选的视频帧的编码单元划分方法的应用场景示意图;以及
图7是根据本发明实施例的一种可选的电子装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种视频帧的编码单元划分方法,如图1所示,该方法包括:
S102,根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,目标编码单元类型用于指示对目标帧进行划分时的划分深度;
S104,在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件,得到目标结果;
S106,对目标编码单元执行目标结果对应的划分操作。
可选地,在本实施例中,上述视频帧的编码单元划分方法可以应用于如图2所示的目标设备202所构成的硬件环境中。如图2所示,目标设备202用于根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,目标编码单元类型用于指示对目标帧进行划分时的划分深度;在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件,得到目标结果;对目标编码单元执行目标结果对应的划分操作。
可选地,在本实施例中,上述视频帧的编码单元划分方法可以但不限于应用于对帧进行编码单元划分的场景中。其中,上述视频帧的编码单元划分方法可以但不限于应用于各种类型的能够进行视频编码的客户端中,例如,上述客户端可以但不限于包括:在线教育应用、即时通讯客户端、社区空间客户端、游戏客户端、购物客户端、浏览器客户端、金融客户端、多媒体客户端、视频直播客户端等。具体的,可以但不限于应用于在上述多媒体客户端中进行视频编码时对视频资源中的帧进行编码单元划分的场景中,或还可以但不限于应用于在上述游戏客户端中进行视频编码时对视频资源中的帧进行编码单元划分的场景中,以提高帧的编码速度。上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,上述视频帧的编码单元划分方法可以应用于客户端侧,或者,服务器侧,或者通过客户端侧与服务器侧的交互来执行。
可选地,在本实施例中,帧类型可以但不限于按照在帧的编码过程中帧之间的参考关系进行划分。例如:如图3所示,帧类型包括:I帧、P帧、B帧和b帧,其中,P帧参考I帧,B帧参考P帧或者I帧,b帧参考I帧或者P帧或者B帧,而b帧不被用做参考帧,图3中箭头所指的帧为参考帧。
可选地,在本实施例中,划分深度可以按照编码单元的大小来确定。例如:在视频编码过程中进行帧内帧间预测时,如图4所示,从最大编码单元(LCU,Largest Code Unit)开始,每层按照4叉树,一层层向下划分,做递归计算。对于每一个CTU,由CU64x64到CU32x32,CU32x32到CU16x16,和CU16x16到CU8x8总共三个层次的递归过程。其中,编码单元的大小用2Nx2N来表示,比如:上述64x64、32x32、16x16、8x8表示编码单元的大小,大小为64x64的编码单元的划分深度为0,大小为32x32的编码单元的CU划分深度为1,大小为16x16的编码单元的CU划分深度为2,大小为8x8的编码单元的CU划分深度为3。还可以对编码单元的划分可以用划分层数的表达形式,比如:64x64的编码单元到32x32的编码单元为第0层,32x32的编码单元到16x16的编码单元为第1层,16x16的编码单元到8x8的编码单元为第2层。对于划分深度的等级排列可以是划分深度的值越小等级越高,比如:大小为64x64的编码单元的划分等级低值大于大小为32x32的编码单元的划分深度的等级值,大小为32x32的编码单元的划分深度的等级低于值大于大小为16x16的编码单元的划分深度的等级值,大小为16x16的编码单元的划分深度的等级低于值大于大小为8x8的编码单元的划分深度的等级值。
可选地,在本实施例中,可以为每种帧类型配置对应的编码单元类型。例如:误差累计在一个I帧周期内扩散,P帧参考I帧,B帧参考P帧或者I帧,b帧参考I帧或者P帧或者B帧,而b帧不被用做参考帧。上述4种帧类型中权重由大到小排序是I帧>P帧>B帧>b帧;此外,CU由最大CU64到CU32划分中,一旦错误,会导致所对应的CU不再做后面4个CU32到CU16,及16个CU16到CU8的划分;同样CU32到CU16划分中,一旦错误,会导致所对应的CU不再做后面4个CU16到CU8的划分;而CU16到CU8划分中,一旦错误,只影响其自身,因此,CU大小的影响权重按由大到小排序为CU64>CU32>CU16。结合上面两个特性,可以采用以下方式为不同权重的帧类型分配不同权重的划分深度:针对I帧:因为I帧一旦错误将影响后面所有帧,因此I帧所有CU块均进行由CU64到CU8的划分,设置I帧不对应编码单元类型,或者设置I帧对应的编码单元类型所指示的划分深度低于0或者高于3;针对P帧:P帧权重仅次于I帧,影响也很多,故设置P帧对应的编码单元类型所指示的划分深度为2;针对B帧:其影响范围只在一个P帧周期内,设置B帧对应的编码单元类型所指示的划分深度为1和2;针对b帧:误差不会影响到其他帧,故设置b帧对应的编码单元类型所指示的划分深度为0、1和2。
可选地,在本实施例中,在对目标帧中不属于目标编码单元类型的编码单元进行划分时,可以但不限于采用现有技术中的划分方式。例如:对于I帧的编码单元的划分均采用现有技术的划分方式,即进行的由CU64x64到CU32x32,CU32x32到CU16x16,和CU16x16到CU8x8总共三个层次的划分均采用现有技术的划分方式。对于P帧的编码单元划分过程,对深度为2的编码单元进行深度快速划分,对于深度为0和1的编码单元采用现有技术的划分方式,即采用现有技术进行由CU64x64到CU32x32,CU32x32到CU16x16的划分,然后判断CU16x16是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU16x16划分为CU8x8。对于B帧的编码单元划分过程,对深度为1和2的编码单元进行深度快速划分,对于深度为0的编码单元采用现有技术的划分方式,即采用现有技术的划分方式进行由CU64x64到CU32x32的划分,然后判断CU32x32是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU32x32划分为CU16x16,然后判断CU16x16是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU16x16划分为CU8x8。对于b帧的编码单元划分过程,对深度为0,1和2的编码单元进行深度快速划分,也就是说,全部划分过程均进行深度快速划分,判断CU64x64是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则将CU64x64划分为CU32x32,然后判断CU32x32是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU32x32划分为CU16x16,然后判断CU16x16是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU16x16划分为CU8x8。
可选地,在本实施例中,目标编码单元的编码单元信息可以但不限于包括:目标编码单元的最优模式、目标编码单元的最优模式的率失真代价等等。
可选地,在本实施例中,目标条件可以但不限于包括:目标编码单元的最优模式为skip模式,目标编码单元的最优模式的率失真代价落入目标阈值范围。
可见,通过上述步骤,在对帧进行编码单元划分的过程中,根据帧的帧类型与编码单元类型的对应关系,确定是否对编码单元进行快速的划分深度的确定,对于属于上述对应关系中记载的编码单元类型的编码单元,在划分时根据该编码单元的编码单元信息确定是否停止对该编码单元进行划分,并根据得到的目标结果执行后续的划分操作。从而能够针对不同帧类型,在对不同划分深度进行划分时采取不同的划分方式,也就避免了将每个视频帧均划分到低的操作,从而实现了提高帧的编码速度的技术效果,进而解决了相关技术中帧的编码速度较低的技术问题。进一步,充分考虑了不同帧类型的帧在划分编码单元时的不同情况,为不同帧类型的帧指定不同的快速确定是否继续划分的划分深度,从而减少编码误差的产生。
作为一种可选的方案,对所述目标编码单元执行所述目标结果对应的划分操作包括:
S1,在目标结果用于指示目标编码单元满足目标条件的情况下,停止对目标编码单元进行划分;和/或,
S2,在目标结果用于指示目标编码单元不满足目标条件的情况下,对目标编码单元进行划分。
可选地,在本实施例中,当目标编码单元满足目标条件时,该目标结果对应的划分操作可以但不限于包括停止对目标编码单元进行划分。
可选地,在本实施例中,当目标编码单元满足目标条件时,该目标结果对应的划分操作可以但不限于包括继续对目标编码单元进行划分。
作为一种可选的方案,在根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型之前,还包括:
S1,获取帧类型,其中,帧类型为按照在帧的编码过程中帧之间的参考关系划分的帧的类型;
S2,获取帧类型对应的编码单元类型,其中,编码单元类型用于指示属于帧类型的帧进行划分时划分深度为第一深度值,或者,编码单元类型用于指示属于帧类型的帧进行划分时的第二深度值与目标深度值之间的深度关系;
S3,存储具有对应关系的帧类型和编码单元类型。
可选地,在本实施例中,编码单元类型可以用于指示一个或者多个具体的深度值(比如:3、2、1、0等等),或者,还可以用于指示深度关系(例如:低于最高深度值、在最高深度值与最低深度值之间、仅低于最高深度值等等)。
在一个可选的实施方式中,以深度值包括4种类型,分别为3、2、1、0为例,当编码单元类型用于指示属于帧类型的帧进行划分时划分深度为第一深度值时,具有对应关系的帧类型和编码单元类型可以如表1所示。
表1
帧类型 编码单元类型
I帧
P帧 2
B帧 1、2
b帧 0、1、2
可选地,在本实施例中,可以将在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件,在目标编码单元满足目标条件的情况下,停止对目标编码单元进行划分,在目标编码单元不满足目标条件的情况下,对目标编码单元进行划分的过程称为编码单元深度快速确定过程。通过为不同的帧类型配置不同的编码单元类型,在对目标编码单元深度进行快速确定的过程中按照帧之间的参考关系为不同类型的帧分配进入快速确定过程的划分深度,使得在确保编码准确率的同时能够大幅度地提升编码速度。
作为一种可选的方案,获取帧类型包括:
S1,确定帧类型,其中,帧类型包括:第一帧类型、第二帧类型、第三帧类型和第四帧类型,第一帧类型为进行编码的过程中不参考其他帧的帧类型,第二帧类型为进行编码的过程中参考属于第一帧类型的帧的帧类型,第三帧类型为进行编码的过程中参考属于第一帧类型的帧和属于第二帧类型的帧的帧类型,第四帧类型为进行编码的过程中参考属于第一帧类型的帧和属于第三帧类型的帧,或者,参考属于第二帧类型的帧和属于第三帧类型的帧的帧类型。
可选地,在本实施例中,第一帧类型、第二帧类型、第三帧类型和第四帧类型的帧之间可以但不限于为以下参考关系,第二帧类型的帧参考第一帧类型的帧,第三帧类型的帧参考第一帧类型的帧和第二帧类型的帧,第四帧类型的帧参考第一帧类型的帧和第三帧类型的帧,或者,第四帧类型的帧参考第二帧类型的帧和第三帧类型的帧。
例如:上述第一帧类型的帧可以为I帧,第二帧类型的帧可以为P帧,第三帧类型的帧可以为B帧,第四帧类型的帧可以为b帧。
作为一种可选的方案,获取所述帧类型对应的所述编码单元类型包括:
S1,确定所述第一帧类型不具有所述编码单元类型;
S2,确定所述第二帧类型对应的所述编码单元类型为第一编码单元类型,其中,所述第一编码单元类型的编码单元包括:16×16的编码单元;
S3,确定所述第三帧类型对应的所述编码单元类型为第二编码单元类型,其中,所述第二编码单元类型的编码单元包括:16×16的编码单元和32×32的编码单元;
S4,确定所述第四帧类型对应的所述编码单元类型为第三编码单元类型,其中,所述第三编码单元类型的编码单元包括:16×16的编码单元、32×32的编码单元和64×64的编码单元。
可选地,在本实施例中,第一帧类型可以为I帧,对于I帧可以不进行编码单元的快速划分的判断,也就是说,对于I帧的每一层编码单元均直接进行划分,将其划分到最小的编码单元。
可选地,在本实施例中,第二帧类型可以为P帧,对于P帧可以仅对16×16的编码单元进行快速划分的判断,也就是说,对于P帧,将其从64×64的编码单元划分为32×32的编码单元,再从32×32的编码单元划分为16×16的编码单元,再根据16×16的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将16×16的编码单元划分为8×8的编码单元。
可选地,在本实施例中,第三帧类型可以为B帧,对于B帧可以对32×32的编码单元和16×16的编码单元进行快速划分的判断,也就是说,对于B帧,将其从64×64的编码单元划分为32×32的编码单元,再根据32×32的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将32×32的编码单元划分为16×16的编码单元。对于划分到16×16的编码单元,根据16×16的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将16×16的编码单元划分为8×8的编码单元。
可选地,在本实施例中,第四帧类型可以为b帧,对于b帧可以对32×32的编码单元和16×16的编码单元进行快速划分的判断,也就是说,对于b帧,根据64×64的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则将其从64×64的编码单元划分为32×32的编码单元。对于划分到32×32的编码单元,根据32×32的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将32×32的编码单元划分为16×16的编码单元。对于划分到16×16的编码单元,根据16×16的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将16×16的编码单元划分为8×8的编码单元。
作为一种可选的方案,编码单元类型还可以用于指示属于帧类型的帧进行划分时划分深度为第一深度值,在这种的情况下,获取帧类型对应的编码单元类型包括:
S1,确定第一帧类型对应的编码单元类型为第一编码单元类型,其中,第一编码单元类型所指示的第一深度值为第一目标值,第一目标值可以设置为空;
S2,确定第二帧类型对应的编码单元类型为第二编码单元类型,其中,第二编码单元类型所指示的第一深度值为第二目标值,第二目标值为仅低于最高深度值的深度值,最高深度值为帧可划分成的最小编码单元的深度值;
S3,确定第三帧类型对应的编码单元类型为第三编码单元类型,其中,第三编码单元类型所指示的第一深度值为第三目标值,第三目标值为低于最高深度值且高于最低深度值的深度值,最高深度值为帧可划分成的最小编码单元的深度值,最低深度值为为帧可划分成的最大编码单元的深度值;
S4,确定第四帧类型对应的编码单元类型为第四编码单元类型,其中,第四编码单元类型所指示的第一深度值为第四目标值,第四目标值为低于最高深度值的深度值,最高深度值为帧可划分成的最小编码单元的深度值。
可选地,在本实施例中,对于不以其他帧为参考帧的第一帧类型的帧,由于该类型的帧是其他类型的帧的参考帧,该类型的帧的关键程度更高一些,因此对于第一帧类型的帧可以不设置对应的编码单元类型或者将其对应的编码单元类型设置为用于指示预设的划分深度中不包括的划分深度,以使得该类型的帧在编码单元划分时不进行编码单元深度快速确定的过程,而是直接从最低深度划分到最高深度。
可选地,在本实施例中,由于第二帧类型的帧仅以第一帧类型的帧为参考帧,而第三帧类型的帧和第四帧类型的帧均可能以第二帧类型的帧为参考帧,第二帧类型的帧的关键程度仅次于第一帧类型的帧,因此,对于第二帧类型的帧可以仅在最高划分深度的上一层进行编码单元深度快速确定的过程。可以设置仅低于最高深度值的深度值为第二帧类型指示的深度值。仅低于最高深度值的深度值为一个深度值。
可选地,在本实施例中,第三帧类型的帧以第一帧类型的帧和第二帧类型的帧为参考帧,而第三帧类型的帧是第四帧类型的帧的参考帧,对于第三帧类型的帧可以在最高划分深度和最低划分深度之间的各层进行编码单元深度快速确定的过程。可以设置低于最高深度值且高于最低深度值的深度值为第三帧类型指示的深度值。低于最高深度值且高于最低深度值的深度值可以为多个深度值。
可选地,在本实施例中,第四帧类型的帧以第一帧类型的帧和第三帧类型的帧为参考帧或者以第二帧类型的帧和第三帧类型的帧为参考帧,而第四帧类型的帧不会作为其他帧类型的帧的参考帧,对于第四帧类型的帧可以从最高划分深度开始逐层进行编码单元深度快速确定的过程。可以设置低于最高深度值的深度值为第三帧类型指示的深度值。低于最高深度值的深度值可以为多个深度值。
作为一种可选的方案,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件包括:
S1,将目标帧中当前划分深度符合目标编码单元类型所指示的目标划分深度的编码单元确定为目标编码单元;
S2,在对目标编码单元进行划分时,获取目标编码单元的编码单元信息;
S3,根据编码单元信息确定目标编码单元是否满足目标条件。
可选地,在本实施例中,在对目标帧进行划分时,可以根据确定出的目标帧对应的目标编码单元类型来获取该目标帧中属于目标编码单元类型的目标编码单元,当划分过程进行到目标编码单元时,对该目标编码单元进行编码单元深度快速确定过程,从而根据获取到的编码单元信息决定是否对该目标编码单元继续划分。
可选地,在本实施例中,获取的目标编码单元的编码单元信息可以但不限于包括:目标编码单元的最优模式以及最优模式的率失真代价。
可选地,在本实施例中,目标条件可以但不限于包括:目标编码单元的最优模式为skip模式、目标编码单元的最优模式的率失真代价落入目标阈值范围等等。
可选地,在本实施例中,可以将同时满足上述两个目标条件确定为满足目标条件。
可选地,在本实施例中,上述目标阈值范围可以是预先设置的,也可以是根据编码过程中获取的信息来确定的。
例如:统计当前CTU相邻位置(左边、上边、左上角及右上角)CTU可用的个数,及相邻CTU内为skip模式且相同CU深度的个数,及率失真代价的平均值,分别记作ctu_validnum_skip_adjacent,samecudepth_num_skip_adjacent,samecudepth_avgcost_skip_adjacent。并统计当前CTU内已做CU中为skip模式且CU深度相同的个数,及率失真代价的平均值,分别记作samecudepth_num_skip_curr,samecudepth_avgcost_skip_curr。
将当前CU最优模式的率失真代价记作bestcost,初始check设为false,如果经过下列比较后check为true,则确定当前CU最优模式的率失真代价满足目标条件:
Figure BDA0001656940460000141
Figure BDA0001656940460000151
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例的另一个方面,还提供了一种用于实施上述视频帧的编码单元划分方法的视频帧的编码单元划分装置,如图5所示,该装置包括:
1)第一确定模块52,用于根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,目标编码单元类型用于指示对目标帧进行划分时的划分深度;
2)第二确定模块54,用于在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件,得到目标结果;
3)处理模块56,用于对所述目标编码单元执行目标结果对应的划分操作。
可选地,在本实施例中,上述视频帧的编码单元划分装置可以应用于如图2所示的目标设备202所构成的硬件环境中。如图2所示,目标设备202用于根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,目标编码单元类型用于指示对目标帧进行划分时的划分深度;在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件;在目标编码单元满足目标条件的情况下,停止对目标编码单元进行划分;和/或,在目标编码单元不满足目标条件的情况下,对目标编码单元进行划分。
可选地,在本实施例中,上述视频帧的编码单元划分装置可以但不限于应用于对帧进行编码单元划分的场景中。其中,上述视频帧的编码单元划分装置可以但不限于应用于各种类型的能够进行视频编码的客户端中,例如,上述客户端可以但不限于包括:在线教育应用、即时通讯客户端、社区空间客户端、游戏客户端、购物客户端、浏览器客户端、金融客户端、多媒体客户端、视频直播客户端等。具体的,可以但不限于应用于在上述多媒体客户端中进行视频编码时对视频资源中的帧进行编码单元划分的场景中,或还可以但不限于应用于在上述游戏客户端中进行视频编码时对视频资源中的帧进行编码单元划分的场景中,以提高帧的编码速度。上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,帧类型可以但不限于按照在帧的编码过程中帧之间的参考关系进行划分。例如:如图3所示,帧类型包括:I帧、P帧、B帧和b帧,其中,P帧参考I帧,B帧参考P帧或者I帧,b帧参考I帧或者P帧或者B帧,而b帧不被用做参考帧,图3中箭头所指的帧为参考帧。
可选地,在本实施例中,划分深度可以按照编码单元的大小来确定。例如:在视频编码过程中进行帧内帧间预测时,如图4所示,从最大编码单元(LCU,Largest Code Unit)开始,每层按照4叉树,一层层向下划分,做递归计算。对于每一个CTU,由CU64x64到CU32x32,CU32x32到CU16x16,和CU16x16到CU8x8总共三个层次的递归过程。其中,编码单元的大小用2Nx2N来表示,比如:上述64x64、32x32、16x16、8x8表示编码单元的大小,大小为64x64的编码单元的划分深度为0,大小为32x32的编码单元的CU划分深度为1,大小为16x16的编码单元的CU划分深度为2,大小为8x8的编码单元的CU划分深度为3。还可以对编码单元的划分可以用划分层数的表达形式,比如:64x64的编码单元到32x32的编码单元为第0层,32x32的编码单元到16x16的编码单元为第1层,16x16的编码单元到8x8的编码单元为第2层。对于划分深度的等级排列可以是划分深度的值越小等级越高,比如:大小为64x64的编码单元的划分等级低值大于大小为32x32的编码单元的划分深度的等级值,大小为32x32的编码单元的划分深度的等级低于值大于大小为16x16的编码单元的划分深度的等级值,大小为16x16的编码单元的划分深度的等级低于值大于大小为8x8的编码单元的划分深度的等级值。
可选地,在本实施例中,可以为每种帧类型配置对应的编码单元类型。例如:误差累计在一个I帧周期内扩散,P帧参考I帧,B帧参考P帧或者I帧,b帧参考I帧或者P帧或者B帧,而b帧不被用做参考帧。上述4种帧类型中权重由大到小排序是I帧>P帧>B帧>b帧;此外,CU由最大CU64到CU32划分中,一旦错误,会导致所对应的CU不再做后面4个CU32到CU16,及16个CU16到CU8的划分;同样CU32到CU16划分中,一旦错误,会导致所对应的CU不再做后面4个CU16到CU8的划分;而CU16到CU8划分中,一旦错误,只影响其自身,因此,CU大小的影响权重按由大到小排序为CU64>CU32>CU16。结合上面两个特性,可以采用以下方式为不同权重的帧类型分配不同权重的划分深度:针对I帧:因为I帧一旦错误将影响后面所有帧,因此I帧所有CU块均均进行由CU64到CU8的划分,设置I帧不对应编码单元类型,或者设置I帧对应的编码单元类型所指示的划分深度低于0或者高于3;针对P帧:P帧权重仅次于I帧,影响也很多,故设置P帧对应的编码单元类型所指示的划分深度为2;针对B帧:其影响范围只在一个P帧周期内,设置B帧对应的编码单元类型所指示的划分深度为1和2;针对b帧:误差不会影响到其他帧,故设置b帧对应的编码单元类型所指示的划分深度为0、1和2。
可选地,在本实施例中,在对目标帧中不属于目标编码单元类型的编码单元进行划分时,可以但不限于采用现有技术中的划分方式。例如:对于I帧的编码单元的划分均采用现有技术的划分方式,即进行的由CU64x64到CU32x32,CU32x32到CU16x16,和CU16x16到CU8x8总共三个层次的划分均采用现有技术的划分方式。对于P帧的编码单元划分过程,对深度为2的编码单元进行深度快速划分,对于深度为0和1的编码单元采用现有技术的划分方式,即采用现有技术进行由CU64x64到CU32x32,CU32x32到CU16x16的划分,然后判断CU16x16是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU16x16划分为CU8x8。对于B帧的编码单元划分过程,对深度为1和2的编码单元进行深度快速划分,对于深度为0的编码单元采用现有技术的划分方式,即采用现有技术的划分方式进行由CU64x64到CU32x32的划分,然后判断CU32x32是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU32x32划分为CU16x16,然后判断CU16x16是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU16x16划分为CU8x8。对于b帧的编码单元划分过程,对深度为0,1和2的编码单元进行深度快速划分,也就是说,全部划分过程均进行深度快速划分,判断CU64x64是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则将CU64x64划分为CU32x32,然后判断CU32x32是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU32x32划分为CU16x16,然后判断CU16x16是否满足快速划分的条件,如果满足则停止对其进行划分,如果不满足,则继续将CU16x16划分为CU8x8。
可选地,在本实施例中,目标编码单元的编码单元信息可以但不限于包括:目标编码单元的最优模式、目标编码单元的最优模式的率失真代价等等。
可选地,在本实施例中,目标条件可以但不限于包括:目标编码单元的最优模式为skip模式,目标编码单元的最优模式的率失真代价落入目标阈值范围。
可见,通过上述装置,在对帧进行编码单元划分的过程中,根据帧的帧类型与编码单元类型的对应关系,确定是否对编码单元进行快速的划分深度的确定,对于属于上述对应关系中记载的编码单元类型的编码单元,在划分时根据该编码单元的编码单元信息确定是否停止对该编码单元进行划分,并根据得到的目标结果执行后续的划分操作。从而能够针对不同帧类型,在对不同划分深度进行划分时采取不同的划分方式,也就避免了将每个视频帧均划分到低的操作,从而实现了提高帧的编码速度的技术效果,进而解决了相关技术中帧的编码速度较低的技术问题。进一步,充分考虑了不同帧类型的帧在划分编码单元时的不同情况,为不同帧类型的帧指定不同的快速确定是否继续划分的划分深度,从而减少编码误差的产生。
作为一种可选的方案,处理模块包括:
第一处理单元,用于在目标结果用于指示目标编码单元满足目标条件的情况下,停止对目标编码单元进行划分;和/或,
第二处理单元,用于在目标结果用于指示目标编码单元不满足目标条件的情况下,对目标编码单元进行划分。
可选地,在本实施例中,当目标编码单元满足目标条件时,该目标结果对应的划分操作可以但不限于包括停止对目标编码单元进行划分。
可选地,在本实施例中,当目标编码单元满足目标条件时,该目标结果对应的划分操作可以但不限于包括继续对目标编码单元进行划分。
作为一种可选的方案,上述装置还包括:
1)第一获取模块,用于获取帧类型,其中,帧类型为按照在帧的编码过程中帧之间的参考关系划分的帧的类型;
2)第二获取模块,用于获取帧类型对应的编码单元类型,其中,编码单元类型用于指示属于帧类型的帧进行划分时划分深度为第一深度值,或者,编码单元类型用于指示属于帧类型的帧进行划分时的第二深度值与目标深度值之间的深度关系;
3)存储模块,用于存储具有对应关系的帧类型和编码单元类型。
可选地,在本实施例中,编码单元类型可以用于指示一个或者多个具体的深度值(比如:3、2、1、0等等),或者,还可以用于指示深度关系(例如:低于最高深度值、在最高深度值与最低深度值之间、仅低于最高深度值等等)。
在一个可选的实施方式中,以深度值包括4种类型,分别为3、2、1、0为例,当编码单元类型用于指示属于帧类型的帧进行划分时划分深度为第一深度值时,具有对应关系的帧类型和编码单元类型可以如表2所示。
表2
帧类型 编码单元类型
I帧
P帧 2
B帧 1、2
b帧 0、1、2
可选地,在本实施例中,可以将在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件,在目标编码单元满足目标条件的情况下,停止对目标编码单元进行划分,在目标编码单元不满足目标条件的情况下,对目标编码单元进行划分的过程称为编码单元深度快速确定过程。通过为不同的帧类型配置不同的编码单元类型,在对目标编码单元深度进行快速确定的过程中按照帧之间的参考关系为不同类型的帧分配进入快速确定过程的划分深度,使得在确保编码准确率的同时能够大幅度地提升编码速度。
作为一种可选的方案,第一获取模块用于:
1)确定帧类型,其中,帧类型包括:第一帧类型、第二帧类型、第三帧类型和第四帧类型,第一帧类型为进行编码的过程中不参考其他帧的帧类型,第二帧类型为进行编码的过程中参考属于第一帧类型的帧的帧类型,第三帧类型为进行编码的过程中参考属于第一帧类型的帧和属于第二帧类型的帧的帧类型,第四帧类型为进行编码的过程中参考属于第一帧类型的帧和属于第三帧类型的帧,或者,参考属于第二帧类型的帧和属于第三帧类型的帧的帧类型。
可选地,在本实施例中,第一帧类型、第二帧类型、第三帧类型和第四帧类型的帧之间可以但不限于为以下参考关系,第二帧类型的帧参考第一帧类型的帧,第三帧类型的帧参考第一帧类型的帧和第二帧类型的帧,第四帧类型的帧参考第一帧类型的帧和第三帧类型的帧,或者,第四帧类型的帧参考第二帧类型的帧和第三帧类型的帧。
例如:上述第一帧类型的帧可以为I帧,第二帧类型的帧可以为P帧,第三帧类型的帧可以为B帧,第四帧类型的帧可以为b帧。
作为一种可选的方案,第二获取模块包括:
第一确定单元,用于确定所述第一帧类型不具有所述编码单元类型;
第二确定单元,用于确定所述第二帧类型对应的所述编码单元类型为第一编码单元类型,其中,所述第一编码单元类型的编码单元包括:16×16的编码单元;
第三确定单元,用于确定所述第三帧类型对应的所述编码单元类型为第二编码单元类型,其中,所述第二编码单元类型的编码单元包括:16×16的编码单元和32×32的编码单元;
第四确定单元,用于确定所述第四帧类型对应的所述编码单元类型为第三编码单元类型,其中,所述第三编码单元类型的编码单元包括:16×16的编码单元、32×32的编码单元和64×64的编码单元。
可选地,在本实施例中,第一帧类型可以为I帧,对于I帧可以不进行编码单元的快速划分的判断,也就是说,对于I帧的每一层编码单元均直接进行划分,将其划分到最小的编码单元。
可选地,在本实施例中,第二帧类型可以为P帧,对于P帧可以仅对16×16的编码单元进行快速划分的判断,也就是说,对于P帧,将其从64×64的编码单元划分为32×32的编码单元,再从32×32的编码单元划分为16×16的编码单元,再根据16×16的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将16×16的编码单元划分为8×8的编码单元。
可选地,在本实施例中,第三帧类型可以为B帧,对于B帧可以对32×32的编码单元和16×16的编码单元进行快速划分的判断,也就是说,对于B帧,将其从64×64的编码单元划分为32×32的编码单元,再根据32×32的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将32×32的编码单元划分为16×16的编码单元。对于划分到16×16的编码单元,根据16×16的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将16×16的编码单元划分为8×8的编码单元。
可选地,在本实施例中,第四帧类型可以为b帧,对于b帧可以对32×32的编码单元和16×16的编码单元进行快速划分的判断,也就是说,对于b帧,根据64×64的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则将其从64×64的编码单元划分为32×32的编码单元。对于划分到32×32的编码单元,根据32×32的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将32×32的编码单元划分为16×16的编码单元。对于划分到16×16的编码单元,根据16×16的编码单元的编码单元信息确定其是否满足目标条件,如果满足,则停止划分,如果不满足,则继续将16×16的编码单元划分为8×8的编码单元。
作为一种可选的方案,编码单元类型还可以用于指示属于帧类型的帧进行划分时划分深度为第一深度值在这种的情况下,第二获取模块包括:
1)第五确定单元,用于确定第一帧类型对应的编码单元类型为第一编码单元类型,其中,第一编码单元类型所指示的第一深度值为第一目标值,第一目标值为低于最低深度值或者高于最高深度值的深度值,最高深度值为帧可划分成的最小编码单元的深度值,最低深度值为帧的深度值;
2)第六确定单元,用于确定第二帧类型对应的编码单元类型为第二编码单元类型,其中,第二编码单元类型所指示的第一深度值为第二目标值,第二目标值为仅低于最高深度值的深度值,最高深度值为帧可划分成的最小编码单元的深度值;
3)第七确定单元,用于确定第三帧类型对应的编码单元类型为第三编码单元类型,其中,第三编码单元类型所指示的第一深度值为第三目标值,第三目标值为低于最高深度值且高于最低深度值的深度值,最高深度值为帧可划分成的最小编码单元的深度值,最低深度值为帧的深度值;
4)第八确定单元,用于确定第四帧类型对应的编码单元类型为第四编码单元类型,其中,第四编码单元类型所指示的第一深度值为第四目标值,第四目标值为低于最高深度值的深度值,最高深度值为帧可划分成的最小编码单元的深度值。
可选地,在本实施例中,对于不以其他帧为参考帧的第一帧类型的帧,由于该类型的帧是其他类型的帧的参考帧,该类型的帧的关键程度更高一些,因此对于第一帧类型的帧可以不设置对应的编码单元类型或者将其对应的编码单元类型设置为用于指示预设的划分深度中不包括的划分深度,以使得该类型的帧在编码单元划分时不进行编码单元深度快速确定的过程,而是直接从最低深度划分到最高深度。
可选地,在本实施例中,由于第二帧类型的帧仅以第一帧类型的帧为参考帧,而第三帧类型的帧和第四帧类型的帧均可能以第二帧类型的帧为参考帧,第二帧类型的帧的关键程度仅次于第一帧类型的帧,因此,对于第二帧类型的帧可以仅在最高划分深度的上一层进行编码单元深度快速确定的过程。可以设置仅低于最高深度值的深度值为第二帧类型指示的深度值。仅低于最高深度值的深度值为一个深度值。
可选地,在本实施例中,第三帧类型的帧以第一帧类型的帧和第二帧类型的帧为参考帧,而第三帧类型的帧是第四帧类型的帧的参考帧,对于第三帧类型的帧可以在最高划分深度和最低划分深度之间的各层进行编码单元深度快速确定的过程。可以设置低于最高深度值且高于最低深度值的深度值为第三帧类型指示的深度值。低于最高深度值且高于最低深度值的深度值可以为多个深度值。
可选地,在本实施例中,第四帧类型的帧以第一帧类型的帧和第三帧类型的帧为参考帧或者以第二帧类型的帧和第三帧类型的帧为参考帧,而第四帧类型的帧不会作为其他帧类型的帧的参考帧,对于第四帧类型的帧可以从最高划分深度开始逐层进行编码单元深度快速确定的过程。可以设置低于最高深度值的深度值为第三帧类型指示的深度值。低于最高深度值的深度值可以为多个深度值。
作为一种可选的方案,第二确定模块包括:
1)第九确定单元,用于将目标帧中当前划分深度符合目标编码单元类型所指示的目标划分深度的编码单元确定为目标编码单元;
2)获取单元,用于在对目标编码单元进行划分时,获取目标编码单元的编码单元信息;
3)第十确定单元,用于根据编码单元信息确定目标编码单元是否满足目标条件。
可选地,在本实施例中,在对目标帧进行划分时,可以根据确定出的目标帧对应的目标编码单元类型来获取该目标帧中属于目标编码单元类型的目标编码单元,当划分过程进行到目标编码单元时,对该目标编码单元进行编码单元深度快速确定过程,从而根据获取到的编码单元信息决定是否对该目标编码单元继续划分。
作为一种可选的方案,获取单元用于:获取目标编码单元的最优模式以及最优模式的率失真代价;
第十确定单元用于:在最优模式为skip模式且率失真代价落入目标阈值范围的情况下,确定目标编码单元满足目标条件;和/或,在最优模式不为skip模式,或者,率失真代价未落入目标阈值范围的情况下,确定目标编码单元不满足目标条件。
可选地,在本实施例中,获取的目标编码单元的编码单元信息可以但不限于包括:目标编码单元的最优模式以及最优模式的率失真代价。
可选地,在本实施例中,目标条件可以但不限于包括:目标编码单元的最优模式为skip模式、目标编码单元的最优模式的率失真代价落入目标阈值范围等等。
可选地,在本实施例中,可以将同时满足上述两个目标条件确定为满足目标条件。
可选地,在本实施例中,上述目标阈值范围可以是预先设置的,也可以是根据编码过程中获取的信息来确定的。
例如:统计当前CTU相邻位置(左边、上边、左上角及右上角)CTU可用的个数,及相邻CTU内为skip模式且相同CU深度的个数,及率失真代价的平均值,分别记作ctu_validnum_skip_adjacent,samecudepth_num_skip_adjacent,samecudepth_avgcost_skip_adjacent。并统计当前CTU内已做CU中为skip模式且CU深度相同的个数,及率失真代价的平均值,分别记作samecudepth_num_skip_curr,samecudepth_avgcost_skip_curr。
将当前CU最优模式的率失真代价记作bestcost,初始check设为false,如果经过下列比较后check为true,则确定当前CU最优模式的率失真代价满足目标条件:
Figure BDA0001656940460000271
Figure BDA0001656940460000281
本发明实施例的应用环境可以但不限于参照上述实施例中的应用环境,本实施例中对此不再赘述。本发明实施例提供了用于实施上述实时通信的连接方法的一种可选的具体应用示例。
作为一种可选的实施例,上述视频帧的编码单元划分方法可以但不限于应用于如图6所示的对帧进行编码的场景中。对于视频编码中的预测过程要做到完全准确是不可能,一旦预测错误,必将会导致压缩比损失,且因为误差累计,会逐步被扩大。而CU深度的误差累计主要与两个方面有关,一是当前帧的帧类型,误差累计在一个I帧周期内扩散,P帧参考I帧,B帧参考P帧或者I帧,b帧参考I帧或者P帧或者B帧,而b帧不被用做参考帧。4种帧类型中权重由大到小排序是I帧>P帧>B帧>b帧;另外,与CU大小有关,CU由最大CU64到CU32划分中,一旦错误,会导致所对应的CU不再做后面4个CU32到CU16,及16个CU16到CU8的划分;同样CU32到CU16划分中,一旦错误,会导致所对应的CU不再做后面4个CU16到CU8的划分,而CU16到CU8划分中,一旦错误,只影响其自身,因此,CU大小的影响权重按由大到小排序为CU64>CU32>CU16。在本场景中,对于视频帧的编码单元划分过程,结合上面两个特性,对不同CU大小及当前帧的帧类型分开处理。
针对I帧:因为I帧一旦错误将影响后面所有帧,因此I帧所有CU块均不做CU深度快速确定。针对P帧:P帧权重仅次于I帧,影响也很多,故P帧只在CU16到CU8那层做深度快速确定。针对B帧:其影响范围只在一个P帧周期内,可在CU32到CU16、CU16到CU8那2层做快速确定。针对b帧:误差不会影响到其他帧,因此在所有层均做快速确定。
可选地,在本场景中,深度快速确定过程是根据CU是否有残差,及周边CTU相同深度没有残差块的个数,及平均率失真代价与当前CU最优模式下的率失真代价来判断;另外根据当前CU是否为skip模式,及周边CTU相同深度skip模式的个数,及平均率失真代价与当前CU最优模式下的率失真代价来判断是否继续划分。
一帧送入到编码器,先经过帧内或帧间预测之后,得到预测值,预测值与输入数据相减,得到残差,然后进行DCT变化和量化,得到残差系数,然后送入熵编码模块输出码流,同时,残差系数经反量化反变换之后,得到重构图像的残差值,再和帧内或者帧间的预测值相加,从而得到了重构图像,重构图像再经环内滤波之后,进入参考帧队列,作为下一帧的参考图像,从而一帧帧向后编码。其中,在帧内帧间预测时,从最大编码单元(LCU,LargestCode Unit)开始,每层按照4叉树,一层层向下划分,做递归计算。对于每一个CTU,由CU64x64到CU32x32,CU32x32到CU16x16,和CU16x16到CU8x8总共三个层次的递归过程,然后再逐层比较,选出最优模式的CU划分情况。
在本场景中,利用当前CU周边CTU的信息,当前帧是否被用于参考帧,或者被用作参考帧的权重,已经计算过的当前CU最优信息,针对不同大小的CU,采取不同的策略,来预测当前编码单元的划分情况,从而实现编码单元深度的快速选择,进而降低编码的复杂度,提高编码速度。
在本场景中,如图6所示,在对帧进行编码时,有时将SubCU递归提前,放在PU2Nx2N之后。编码单元深度快速确定过程在判断当前CU是否做4个子块划分的步骤中执行。即在判断当前CU深度是否继续划分时,已经做了PU merge和skip计算,及PU 2Nx2N的预测。以下涉及到的最优模式为PU 2Nx2N帧间预测并择优后的最优模式。
在编码单元深度快速确定的过程中,针对I帧,不进行判断,采用原始CU64到CU32,CU32到CU16,CU16到CU8的逐层判断。
针对P帧,只做CU16至CU8划分深度时的判断。判断过程包括如下步骤:
步骤1,统计当前CTU相邻位置左边、上边、左上角及右上角CTU可用的个数,及相邻CTU内为skip模式且相同CU深度的个数,及率失真代价的平均值,分别记作ctu_validnum_skip_adjacent,samecudepth_num_skip_adjacent,samecudepth_avgcost_skip_adjacent;
步骤2,统计当前CTU内已做CU中为skip模式且CU深度相同的个数,及率失真代价的平均值,分别记作samecudepth_num_skip_curr,samecudepth_avgcost_skip_curr;
步骤3,如果满足以下所有条件,则当前CU不再做4个子块划分,否则做4个子块划分。
条件1:当前CU最优模式为skip模式;
条件2:当前CU最优模式的率失真代价记作bestcost,初始check为false,经过比较后check为true。比较过程如下:
Figure BDA0001656940460000301
Figure BDA0001656940460000311
Figure BDA0001656940460000321
针对B帧,其影响范围在一个P帧周期内,可在CU32到CU16及CU16到CU8划分深度时的判断。对于CTU32到CU16划分深度时的判断,采用方法除系数3.5为1.5外,其余与P帧方式相同,在此不再赘述。
对应CTU16到CTU8划分深度时的判断,方法与CTU32到CU16划分深度时的判断类似,不同的地方为统计信息必须满足量化后残差系数为0,判断过程包括如下步骤:
步骤1,统计当前CTU相邻位置左边、上边、左上角及右上角CTU可用的个数,及相邻CTU内量化后残差系数为0且相同CU深度的个数,及率失真代价的平均值,分别记作ctu_validnum_cbf_adjacent,samecudepth_num_cbf_adjacent,samecudepth_avgcost cbf_adjacent;
步骤2,统计当前CTU内已做CU中为skip模式且相同CU深度的个数,及率失真代价的平均值,分别记作samecudepth_num_cbf_curr,samecudepth_avgcost_cbf_curr;
步骤3,如果满足以下所有条件,则当前CU不再做4个子块划分,否则做4个子块划分
条件1:当前CU最优模式为skip模式;
条件2:当前CU最优模式的率失真代价记作bestcost,初始check为false,经过比较后check为true。比较过程如下:
Figure BDA0001656940460000322
Figure BDA0001656940460000331
Figure BDA0001656940460000341
需要说明的是,如果为skip模式,一定满足量化后残差系数为零,但量化后残差系数为零并不一定是skip模式。
针对b帧,b帧不用做参考帧,自身损失不会影响到其他帧,因此对所有层均进行编码单元深度快速确定的过程。
对于CU64到CU32快速确定(根据skip决定,且受限于个数)判断过程包括如下步骤:
步骤1,统计当前CTU相邻位置左边、上边、左上角及右上角CTU可用的个数,及相邻CTU内为skip模式,且相同CU深度的个数,及率失真代价的平均值,分别记作ctu_validnum_skip_adjacent,samecudepth_num_skip_adjacent,samecudepth_avgcost_skip_adjacent;
步骤2,如果满足以下所有条件,则当前CU不再做4个子块划分,否则做4个子块划分。
条件1:当前CU最优模式为skip模式;
条件2:当前CU最优模式的率失真代价记作bestcost,初始check为false,经过比较后check为true。比较过程如下:
Figure BDA0001656940460000342
Figure BDA0001656940460000351
对于CU32到CU16快速确定(根据skip模式决定,但不受限于个数)判断过程包括如下步骤:
步骤1,统计当前CTU相邻位置左边、上边、左上角及右上角CTU可用的个数,及相邻CTU内为skip模式,且相同CU深度的个数,及率失真代价的平均值,分别记作ctu_validnum_skip_adjacent,samecudepth_num_skip_adjacent,samecudepth_avgcost_skip_adjacent;
步骤2,统计当前CTU内已做CU中为skip模式且相同CU深度的个数,及率失真代价的平均值,分别记作samecudepth_num_skip_curr,samecudepth_avgcost_skip_curr;
步骤3,如果满足以下所有条件,则当前CU不再做4个子块划分,否则做4个子块划分。
条件1:当前CU最优模式为skip模式;
条件2:当前CU最优模式的率失真代价记作bestcost,初始check为false,经过比较后check为true。比较过程如下:
Figure BDA0001656940460000352
Figure BDA0001656940460000361
对于CU16到CU8快速确定(根据量化后残差系数决定,但不受限于个数)判断过程包括如下步骤:
跟B帧中CU16到CU8类似,但不在受个数限制,即
步骤1,统计当前CTU相邻位置左边、上边、左上角及右上角CTU可用的个数,及相邻CTU内量化后残差系数为0,且相同CU深度的个数,及率失真代价的平均值,分别记作ctu_validnum_cbf_adjacent,samecudepth_num_cbf_adjacent,samecudepth_avgcost cbf_adjacent;
步骤2,统计当前CTU内已做CU量化后残差系数为0,且相同CU深度的个数,及率失真代价的平均值,分别记作samecudepth_num_cbf_curr,samecudepth_avgcost_cbf_curr;
步骤3,如果满足以下所有条件,则当前CU不再做4个子块划分,否则做4个子块划分
条件1:当前CU最优模式为skip模式;
条件2:当前CU最优模式的率失真代价记作bestcost,初始check为false,经过比较后check为true。比较过程如下:
Figure BDA0001656940460000371
Figure BDA0001656940460000381
通过本场景中提供的方式,大幅度提升了编码速度,如知道CU深度为32时就不做4个子块划分,则所对应的CU的4个子CU(CU大小为16),及每个CU16包含的4个子CU(CU大小为8)均不需要在做PU的各种计算,可以大大减少计算量。
根据本发明实施例的又一个方面,还提供了一种用于实施上述视频帧的编码单元划分方法的电子装置,如图7所示,该电子装置包括:一个或多个(图中仅示出一个)处理器702、存储器704、传感器706、编码器708以及传输装置710,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,目标编码单元类型用于指示对目标帧进行划分时的划分深度,得到目标结果;
S2,在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件;
S3,对目标编码单元执行目标结果对应的划分操作。
可选地,本领域普通技术人员可以理解,图7所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图7其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图7中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图7所示不同的配置。
其中,存储器702可用于存储软件程序以及模块,如本发明实施例中的视频帧的编码单元划分方法和装置对应的程序指令/模块,处理器704通过运行存储在存储器702内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的目标组件的控制方法。存储器702可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器702可进一步包括相对于处理器704远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置710用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置710包括一个网络适配器(NetworkInterface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置710为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器702用于存储应用程序。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,目标编码单元类型用于指示对目标帧进行划分时的划分深度;
S2,在对目标帧中属于目标编码单元类型的目标编码单元进行划分时,根据目标编码单元的编码单元信息确定目标编码单元是否满足目标条件,得到目标结果;
S3,对目标编码单元执行目标结果对应的划分操作。
可选地,存储介质还被设置为存储用于执行上述实施例中的方法中所包括的步骤的计算机程序,本实施例中对此不再赘述。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (15)

1.一种视频帧的编码单元划分方法,其特征在于,包括:
根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,所述目标编码单元类型用于指示对所述目标帧进行划分时的划分深度,所述帧类型为按照在帧的编码过程中帧之间的参考关系划分的帧的类型,所述帧类型包括:第一帧类型、第二帧类型、第三帧类型和第四帧类型,所述第一帧类型为进行编码的过程中不参考其他帧的帧类型,所述第二帧类型为进行编码的过程中参考属于所述第一帧类型的帧的帧类型,所述第三帧类型为进行编码的过程中参考属于所述第一帧类型的帧和属于所述第二帧类型的帧的帧类型,所述第四帧类型为进行编码的过程中参考属于所述第一帧类型的帧和属于所述第三帧类型的帧,或者,参考属于所述第二帧类型的帧和属于所述第三帧类型的帧的帧类型;
在对所述目标帧中属于所述目标编码单元类型的目标编码单元进行划分时,根据所述目标编码单元的编码单元信息确定所述目标编码单元是否满足目标条件,得到目标结果;
对所述目标编码单元执行所述目标结果对应的划分操作。
2.根据权利要求1所述的方法,其特征在于,对所述目标编码单元执行所述目标结果对应的划分操作包括:
在所述目标结果用于指示所述目标编码单元满足所述目标条件的情况下,停止对所述目标编码单元进行划分;和/或,
在所述目标结果用于指示所述目标编码单元不满足所述目标条件的情况下,对所述目标编码单元进行划分。
3.根据权利要求1所述的方法,其特征在于,在根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型之前,所述方法还包括:
获取所述帧类型;
获取所述帧类型对应的所述编码单元类型;
存储所述具有对应关系的帧类型和编码单元类型。
4.根据权利要求3所述的方法,其特征在于,获取所述帧类型包括:
确定所述帧类型。
5.根据权利要求4所述的方法,其特征在于,获取所述帧类型对应的所述编码单元类型包括:
确定所述第一帧类型不具有所述编码单元类型;
确定所述第二帧类型对应的所述编码单元类型为第一编码单元类型,其中,所述第一编码单元类型的编码单元包括:16×16的编码单元;
确定所述第三帧类型对应的所述编码单元类型为第二编码单元类型,其中,所述第二编码单元类型的编码单元包括:16×16的编码单元和32×32的编码单元;
确定所述第四帧类型对应的所述编码单元类型为第三编码单元类型,其中,所述第三编码单元类型的编码单元包括:16×16的编码单元、32×32的编码单元和64×64的编码单元。
6.根据权利要求1至5中任一项所述的方法,其特征在于,根据所述目标编码单元的编码单元信息确定所述目标编码单元是否满足目标条件包括:
将所述目标帧中当前划分深度符合所述目标编码单元类型所指示的目标划分深度的编码单元确定为所述目标编码单元;
在对所述目标编码单元进行划分时,获取所述目标编码单元的所述编码单元信息;
根据所述编码单元信息确定所述目标编码单元是否满足目标条件。
7.根据权利要求6所述的方法,其特征在于,
获取所述目标编码单元的所述编码单元信息包括:获取所述目标编码单元的最优模式以及所述最优模式的率失真代价;
根据所述编码单元信息确定所述目标编码单元是否满足目标条件包括:在所述最优模式为skip模式且所述率失真代价落入目标阈值范围的情况下,确定所述目标编码单元满足所述目标条件;和/或,在所述最优模式不为skip模式,或者,所述率失真代价未落入所述目标阈值范围的情况下,确定所述目标编码单元不满足所述目标条件。
8.一种视频帧的编码单元划分装置,其特征在于,包括:
第一确定模块,用于根据具有对应关系的帧类型和编码单元类型,确定待划分的目标帧所属的目标帧类型对应的目标编码单元类型,其中,所述目标编码单元类型用于指示对所述目标帧进行划分时的划分深度,所述帧类型为按照在帧的编码过程中帧之间的参考关系划分的帧的类型,所述帧类型包括:第一帧类型、第二帧类型、第三帧类型和第四帧类型,所述第一帧类型为进行编码的过程中不参考其他帧的帧类型,所述第二帧类型为进行编码的过程中参考属于所述第一帧类型的帧的帧类型,所述第三帧类型为进行编码的过程中参考属于所述第一帧类型的帧和属于所述第二帧类型的帧的帧类型,所述第四帧类型为进行编码的过程中参考属于所述第一帧类型的帧和属于所述第三帧类型的帧,或者,参考属于所述第二帧类型的帧和属于所述第三帧类型的帧的帧类型;
第二确定模块,用于在对所述目标帧中属于所述目标编码单元类型的目标编码单元进行划分时,根据所述目标编码单元的编码单元信息确定所述目标编码单元是否满足目标条件,得到目标结果;
处理模块,用于对所述目标编码单元执行所述目标结果对应的划分操作。
9.根据权利要求8所述的装置,其特征在于,所述处理模块包括:
第一处理单元,用于在所述目标结果用于指示所述目标编码单元满足所述目标条件的情况下,停止对所述目标编码单元进行划分;和/或,
第二处理单元,用于在所述目标结果用于指示所述目标编码单元不满足所述目标条件的情况下,对所述目标编码单元进行划分。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一获取模块,用于获取所述帧类型;
第二获取模块,用于获取所述帧类型对应的所述编码单元类型;
存储模块,用于存储所述具有对应关系的帧类型和编码单元类型。
11.根据权利要求10所述的装置,其特征在于,所述第一获取模块用于:
确定所述帧类型。
12.根据权利要求11所述的装置,其特征在于,所述第二获取模块包括:
第一确定单元,用于确定所述第一帧类型不具有所述编码单元类型;
第二确定单元,用于确定所述第二帧类型对应的所述编码单元类型为第一编码单元类型,其中,所述第一编码单元类型的编码单元包括:16×16的编码单元;
第三确定单元,用于确定所述第三帧类型对应的所述编码单元类型为第二编码单元类型,其中,所述第二编码单元类型的编码单元包括:16×16的编码单元和32×32的编码单元;
第四确定单元,用于确定所述第四帧类型对应的所述编码单元类型为第三编码单元类型,其中,所述第三编码单元类型的编码单元包括:16×16的编码单元、32×32的编码单元和64×64的编码单元。
13.根据权利要求8至12中任一项所述的装置,其特征在于,所述第二确定模块包括:
第九确定单元,用于将所述目标帧中当前划分深度符合所述目标编码单元类型所指示的目标划分深度的编码单元确定为所述目标编码单元;
获取单元,用于在对所述目标编码单元进行划分时,获取所述目标编码单元的所述编码单元信息;
第十确定单元,用于根据所述编码单元信息确定所述目标编码单元是否满足目标条件。
14.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至7任一项中所述的方法。
15.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的方法。
CN201810444914.5A 2018-05-10 2018-05-10 视频帧的编码单元划分方法、装置、存储介质及电子装置 Active CN110198443B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201810444914.5A CN110198443B (zh) 2018-05-10 2018-05-10 视频帧的编码单元划分方法、装置、存储介质及电子装置
JP2020543747A JP7171748B2 (ja) 2018-05-10 2019-04-03 ビデオフレームの符号化単位の分割方法、装置、記憶媒体及び電子装置
EP19799390.0A EP3793196B1 (en) 2018-05-10 2019-04-03 Video frame encoding unit division method and apparatus, and storage medium and electronic apparatus
PCT/CN2019/081211 WO2019214373A1 (zh) 2018-05-10 2019-04-03 视频帧的编码单元划分方法、装置、存储介质及电子装置
US16/933,455 US11317089B2 (en) 2018-05-10 2020-07-20 Method, apparatus, and storage medium for dividing coding unit of video frame

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810444914.5A CN110198443B (zh) 2018-05-10 2018-05-10 视频帧的编码单元划分方法、装置、存储介质及电子装置

Publications (2)

Publication Number Publication Date
CN110198443A CN110198443A (zh) 2019-09-03
CN110198443B true CN110198443B (zh) 2022-09-13

Family

ID=67751027

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810444914.5A Active CN110198443B (zh) 2018-05-10 2018-05-10 视频帧的编码单元划分方法、装置、存储介质及电子装置

Country Status (5)

Country Link
US (1) US11317089B2 (zh)
EP (1) EP3793196B1 (zh)
JP (1) JP7171748B2 (zh)
CN (1) CN110198443B (zh)
WO (1) WO2019214373A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110572679B (zh) * 2019-09-27 2022-04-26 腾讯科技(深圳)有限公司 帧内预测的编码方法、装置、设备及可读存储介质
CN111901591B (zh) * 2020-07-28 2023-07-18 有半岛(北京)信息科技有限公司 一种编码模式的确定方法、装置、服务器和存储介质
CN113242429B (zh) * 2021-05-11 2023-12-05 杭州网易智企科技有限公司 视频编码模式决策方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104023234A (zh) * 2014-06-24 2014-09-03 华侨大学 一种适用于hevc的快速帧间预测方法
CN104602017A (zh) * 2014-06-10 2015-05-06 腾讯科技(北京)有限公司 视频编码器、方法和装置及其帧间模式选择方法和装置
CN107295336A (zh) * 2017-06-21 2017-10-24 鄂尔多斯应用技术学院 基于图像相关性的自适应快速编码单元划分方法及装置
CN107396121A (zh) * 2017-08-22 2017-11-24 中南大学 一种基于分层b帧结构的编码单元深度预测方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101484280B1 (ko) * 2009-12-08 2015-01-20 삼성전자주식회사 임의적인 파티션을 이용한 움직임 예측에 따른 비디오 부호화 방법 및 장치, 임의적인 파티션을 이용한 움직임 보상에 따른 비디오 복호화 방법 및 장치
WO2014158049A1 (en) * 2013-03-28 2014-10-02 Huawei Technologies Co., Ltd Method for protecting a video frame sequence against packet loss
CN103491369B (zh) * 2013-09-18 2016-09-28 华为技术有限公司 一种帧间预测编码方法和编码器
US9924183B2 (en) * 2014-03-20 2018-03-20 Nanjing Yuyan Information Technology Ltd. Fast HEVC transcoding
CN104243997B (zh) * 2014-09-05 2017-05-03 南京邮电大学 一种质量可分级hevc视频编码方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104602017A (zh) * 2014-06-10 2015-05-06 腾讯科技(北京)有限公司 视频编码器、方法和装置及其帧间模式选择方法和装置
CN104023234A (zh) * 2014-06-24 2014-09-03 华侨大学 一种适用于hevc的快速帧间预测方法
CN107295336A (zh) * 2017-06-21 2017-10-24 鄂尔多斯应用技术学院 基于图像相关性的自适应快速编码单元划分方法及装置
CN107396121A (zh) * 2017-08-22 2017-11-24 中南大学 一种基于分层b帧结构的编码单元深度预测方法及装置

Also Published As

Publication number Publication date
WO2019214373A1 (zh) 2019-11-14
US11317089B2 (en) 2022-04-26
US20200351498A1 (en) 2020-11-05
CN110198443A (zh) 2019-09-03
EP3793196B1 (en) 2024-01-10
JP7171748B2 (ja) 2022-11-15
EP3793196A4 (en) 2021-06-09
EP3793196A1 (en) 2021-03-17
JP2021514158A (ja) 2021-06-03

Similar Documents

Publication Publication Date Title
CN110198443B (zh) 视频帧的编码单元划分方法、装置、存储介质及电子装置
CN112738511B (zh) 一种结合视频分析的快速模式决策方法及装置
WO2020207162A1 (zh) 帧内预测编码方法、装置、电子设备及计算机存储介质
KR102214937B1 (ko) 디블로킹 필터 방법 및 장치
TW201507439A (zh) 視訊編碼方法與裝置以及非暫時性電腦可讀記錄媒體
CN112312133B (zh) 一种视频编码方法、装置、电子设备及可读存储介质
CN111193924B (zh) 视频码率的确定方法、装置、计算机设备及存储介质
CN111741297B (zh) 帧间预测方法、视频编码方法及其相关装置
JP7391456B2 (ja) 画像処理方法、装置、端末及びコンピュータプログラム
CN109819250A (zh) 一种多核全组合方式的变换方法和***
WO2020019316A1 (zh) 帧内预测模式搜索方法及装置、视频编码方法及装置以及记录介质
CN110198442B (zh) 一种用于视频编码的帧内预测方法、装置和存储介质
CN104333755A (zh) HEVC中B帧的基于SKIP/Merge RD Cost的CU提前终止方法
Chen et al. Fast intra coding algorithm for HEVC based on depth range prediction and mode reduction
WO2021168817A1 (zh) 视频处理的方法及装置
US20200351518A1 (en) Prediction direction selection method and apparatus in image encoding, and storage medium
CN113422959A (zh) 视频编解码的方法、装置、电子设备及存储介质
CN109660806B (zh) 一种编码方法、装置和电子设备
CN110049322B (zh) 模式选择的方法、装置、电子设备及存储介质
CN111918059B (zh) 硬件友好的基于回归树的帧内预测模式决策方法及装置
CN114666579A (zh) 视频编码方法、装置、电子设备及存储介质
CN112153381B (zh) 动态3d点云压缩帧内cu快速划分方法、设备及介质
CN109618152B (zh) 深度划分编码方法、装置和电子设备
Wang et al. Prediction mode grouping and coding bits grouping based on texture complexity for Fast HEVC intra-coding
KR101671759B1 (ko) Hevc에 적용되는 바텀 업 프루닝 기법을 이용한 인트라 예측의 수행 방법 및 이를 위한 장치

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