CN111770340B - 视频编码方法、装置、设备以及存储介质 - Google Patents

视频编码方法、装置、设备以及存储介质 Download PDF

Info

Publication number
CN111770340B
CN111770340B CN202010717847.7A CN202010717847A CN111770340B CN 111770340 B CN111770340 B CN 111770340B CN 202010717847 A CN202010717847 A CN 202010717847A CN 111770340 B CN111770340 B CN 111770340B
Authority
CN
China
Prior art keywords
sub
unit
blocks
encoded
coded
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
CN202010717847.7A
Other languages
English (en)
Other versions
CN111770340A (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 CN202010717847.7A priority Critical patent/CN111770340B/zh
Publication of CN111770340A publication Critical patent/CN111770340A/zh
Application granted granted Critical
Publication of CN111770340B publication Critical patent/CN111770340B/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/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/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/136Incoming video signal characteristics or properties
    • 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/182Methods 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 a pixel
    • 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/186Methods 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 a colour or a chrominance component
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • 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

Landscapes

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

Abstract

本申请公开了一种视频编码方法、装置、设备以及存储介质,属于视频处理领域。方法包括:通过本申请实施例提供的技术方案,终端能够根据对待编码单元进行预划分得到的至少两个子块与待编码单元之间在纹理上的相似程度,来确定是否对待编码单元进行划分。当至少两个子块与待编码单元之间的相似程度较高时,终端确定不对待编码单元进行划分。这样终端无需遍历对待编码单元进行划分的所有模式,只需要对与子块相似程度较低的待编码单元进行划分即可,减少了子块的数量,从而降低了编码的复杂度,在保证视频编码质量的条件下,减少了编码消耗的时间。

Description

视频编码方法、装置、设备以及存储介质
技术领域
本申请涉及视频处理领域,特别涉及一种视频编码方法、装置、设备以及存储介质。
背景技术
随着网络技术的发展,越来越多的用户通过各类终端观看视频。由于视频占用的存储空间往往十分巨大,而网络带宽又受限,因此在进行视频传输时,需要对视频进行压缩,也即是编码,来降低视频对存储空间的占用。相关技术中,计算机设备对视频进行编码时,需将视频图像划分为多个块,并对每个可能的块进行决策从而选择最优的编码方式。因此,计算机设备对视频图像进行编码的复杂度较高,需要耗费较多的时间。
发明内容
本申请实施例提供了一种视频编码方法、装置、设备以及存储介质,可以提升视频编码的效果。所述技术方案如下:
一方面,提供了一种视频编码方法,所述方法包括:
在视频编码过程中,按照目标划分模式,对待编码单元进行预划分,得到至少两个子块;
获取所述至少两个子块的纹理特征参数,所述纹理特征参数用于表示对应子块的图像纹理;
响应于所述至少两个子块的纹理特征参数与所述待编码单元的纹理特征参数之间的差异信息符合目标条件,在视频编码时,不对所述待编码单元按照所述目标划分模式进行划分。
一方面,提供了一种视频编码装置,所述装置包括:
预划分模块,用于在视频编码过程中,按照目标划分模式,对待编码单元进行预划分,得到至少两个子块;
获取模块,用于获取所述至少两个子块的纹理特征参数,所述纹理特征参数用于表示对应子块的图像纹理;
划分模块,用于响应于所述至少两个子块的纹理特征参数与所述待编码单元的纹理特征参数之间的差异信息符合目标条件,在视频编码时,不对所述待编码单元按照所述目标划分模式进行划分。
在一种可能的实施方式中,所述划分模块还用于响应于所述至少两个子块的纹理特征参数与所述待编码单元的纹理特征参数之间的差异信息不符合所述目标条件,按照所述目标划分模式,将所述待编码单元划分为所述至少两个子块。
在一种可能的实施方式中,所述装置还包括:
确定模块,用于在视频编码过程中,根据所述待编码单元中像素点的像素值,确定所述待编码单元中像素点的平均像素值和像素值方差;
所述划分模块还用于响应于所述像素值方差大于所述平均像素值与第一阈值之积,在视频编码时,不对所述待编码单元进行划分,所述第一阈值用于表示视频编码的清晰度。
在一种可能的实施方式中,所述划分模块还用于响应于所述至少两个子块的纹理特征参数之间的差异信息符合目标差异条件,在视频编码时,不对所述待编码单元按照所述目标划分模式进行划分。
一方面,提供了一种计算机设备,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述程序代码由所述一个或多个处理器加载并执行以实现所述视频编码方法。
一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现所述视频编码方法。
一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各种可选实现方式中提供的视频编码方法。
通过本申请实施例提供的技术方案,终端能够根据对待编码单元进行预划分得到的至少两个子块与待编码单元之间在纹理上的相似程度,来确定是否对待编码单元进行划分。当至少两个子块与待编码单元之间的相似程度较高时,终端确定不对待编码单元进行划分。这样终端无需遍历对待编码单元进行划分的所有模式,只需要对与子块相似程度较低的待编码单元进行划分即可,减少了子块的数量,从而降低了编码的复杂度,在保证视频编码质量的条件下,减少了编码消耗的时间。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种图像帧划分方法的示意图;
图2是本申请实施例提供的一种视频编码方法的实施环境的示意图;
图3是本申请实施例提供的一种视频编码方法的流程图;
图4是本申请实施例提供的一种视频编码方法的流程图;
图5是本申请实施例提供的一种二叉树划分的效果示意图;
图6是本申请实施例提供的一种三叉树划分的效果示意图;
图7是本申请实施例提供的一种四叉树划分的效果示意图;
图8是本申请实施例提供的一种像素点排列方式的示意图;
图9是本申请实施例提供的一种视频编码方法的流程图;
图10是本申请实施例提供的一种视频编码方法的流程图;
图11是本申请实施例提供的一种视频编码装置的结构示意图;
图12是本申请实施例提供的一种终端设备的结构示意图;
图13是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
本申请中术语“至少一个”是指一个或多个,“多个”的含义是指两个或两个以上,例如,多个参照人脸图像是指两个或两个以上的参照人脸图像。
为了对本申请提供的技术方案进行更加清楚的说明,首先对本申请实施例中涉及的名词进行介绍:
编码单元(Coding Unit,CU):一个图像帧包括多个编码单元。在视频编码过程中,需要对图像帧进行划分,划分包括多个层级。举例来说,参见图1,在视频编码过程中,计算机设备能够将图像帧101划分为四个宏块102,该四个宏块102也即是编码单元。计算机设备能够对宏块102中的任一个继续进行划分,得到子块。以划分方式为二叉树划分为例,计算机设备能够将一个宏块102划分为两个子块103。计算机设备还能够对两个子块103中的任一个继续进行划分。
像素值:为像素点的灰度值以及亮度色度值(YUV)中的至少一项。
在本申请提供的视频编码方法能够用于多种视频编码标准的上下文中,比如应用在多功能视频编码标准(Versatile Video Coding,VVC/H.266)中,也能够应用在第三代数字视频编解码技术标准(Audio Video coding Standard 3,AVS3)中,本申请实施例对此不做限定。
图2是本申请实施例提供的一种视频编码方法的实施环境示意图,参见图2,该实施环境中可以包括终端210和服务器240。
终端210通过无线网络或有线网络与服务器240相连。可选地,终端210是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端210安装和运行有支持视频编码的应用程序。
可选地,服务器240是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式***,或者是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、分发网络(ContentDelivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端以及服务器能够通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
在本申请实施例中,能够由服务器或终端作为执行主体来实施本申请实施例提供的技术方案,也能够通过终端和服务器之间的交互来实施本申请提供的技术方法,本申请实施例对此不作限定。下面将以执行主体为终端为例进行说明。
图3是本申请实施例提供的一种视频编码方法的流程图,以执行主体为终端为例进行说明,参见图3,方法包括:
301、在视频编码过程中,终端按照目标划分模式,对待编码单元进行预划分,得到至少两个子块。
其中,目标划分模式为二叉树划分、三叉树划分以及四叉树划分中的至少一项,而随着技术的发展,还包括有其他划分模式,本申请实施例对此不作限定。
为了更加清楚的对本申请提供的技术方案进行说明,下面对本申请中涉及的对待编码单元进行预划分和划分的区别进行说明。
预划分是一种虚拟的划分过程,也即是采用预划分时,终端并没有按照目标划分模式将待编码单元划分为至少两个实际的子块,而是得到了至少两个虚拟的子块。在编码过程中,若终端对任一个待编码单元进行划分,那么该待编码单元也就不再作为编码的基本单位,编码的基本单位变成了该待编码单元划分之后得到的子块。若终端对任一个待编码单元进行预划分,那么编码的基本单位仍然为该待编码单元,得到的是用于计算纹理特征参数的子块。终端能够根据对待编码单元按照目标划分模式进行预划分的结果,来确定是否按照目标划分模式将待编码单元划分为至少两个实际的子块,预划分能够作为划分之前的一个步骤。举例来说,若终端根据对待编码单元按照目标划分模式进行预划分得到的结果不符合划分条件,那么终端能够确定不对待编码单元进行划分得到至少两个实际的子块。终端根据对待编码单元按照目标划分模式进行预划分得到的结果符合划分条件,那么终端能够将待编码单元划分为至少两个实际的子块,对至少两个实际的子块进行后续的编码过程。
302、终端获取至少两个子块的纹理特征参数,纹理特征参数用于表示对应子块的图像纹理。
其中,纹理特征参数为像素点的平均像素值、像素值方差、图像梯度参数、像素值均方根误差以及像素值标准差中的至少一项。
303、响应于至少两个子块的纹理特征参数与待编码单元的纹理特征参数之间的差异信息符合目标条件,在视频编码时,终端不对待编码单元按照目标划分模式进行划分。
通过本申请实施例提供的技术方案,终端能够根据对待编码单元进行预划分得到的至少两个子块与待编码单元之间在纹理上的相似程度,来确定是否对待编码单元进行划分。当至少两个子块与待编码单元之间的相似程度较高时,终端确定不对待编码单元进行划分。这样终端无需遍历对待编码单元进行划分的所有模式,只需要对与子块相似程度较低的待编码单元进行划分即可,减少了子块的数量,从而降低了编码的复杂度,在保证视频编码质量的条件下,减少了编码消耗的时间。
图4是本申请实施例提供的一种视频编码方法的流程图,以执行主体为终端为例进行说明,参见图4,方法包括:
401、在视频编码过程中,终端确定对待编码单元进行预划分的多种划分模式对应的率失真参数,率失真参数为编码码率与图像失真率之和,图像失真率为采用一种划分模式对待编码单元进行划分后,对划分后的子块进行编码得到的单元与待编码单元之间的图像失真率。
其中,划分模式为终端所支持的视频编码的编码单元划分模式,例如,该多种划分模式包括二叉树划分、三叉树划分以及四叉树划分。
在一种可能的实施方式中,终端根据视频编码的码率以及编码得到的图像块与待编码单元之间的图像失真率,确定多种划分模式对应的率失真参数。
举例来说,若视频编码的码率为1000kbps,终端确定在码率为1000kbps下,二叉树划分、三叉树划分以及四叉树划分分别对应的率失真参数。采用同样的视频编码方法得到的视频码率和图像失真率之间的关系参见公式(1)。终端基于公式(1)生成拉格朗日代价函数(2),通过拉格朗日代价函数(2)来确定多种划分模式对应的率失真参数。
Figure BDA0002598864820000071
其中,R为码率,D为图像失真率,α为系数,δ2为待编码单元中多个像素点的方差。
Min{J=D+λR} (2)
其中,Min{}为取最小值,λ为系数,J为率失真参数。
402、终端从多种划分模式对应的率失真参数中,将最小的率失真参数对应的划分模式确定为目标划分模式。
在这种实现方式下,终端能够在同一个视频编码方法下,确定率失真参数最小的划分模式为目标划分模式,这样能够保证采用目标划分模式对待编码单元进行划分,对得到的子块进行编码后得到的图像质量较好。
需要说明的是,上述步骤401和402是可选步骤,终端除了能够执行上述步骤401和402来确定目标划分模式之外,还能够根据实际情况确定目标划分模式,比如由技术人员指定一个划分模式作为目标划分模式,或者由终端根据视频编码标准中指示的划分模式作为目标划分模式,当然终端也能够通过其他方式来确定目标划分模式,本申请实施例对于目标划分模式的确定方法不做限定。
403、终端按照目标划分模式,对待编码单元进行预划分,得到至少两个子块。
在一种可能的实施方式中,响应于目标划分模式为二叉树划分,终端将待编码单元预划分为两个面积相同的矩形子块。其中,二叉树划分(Binary Tree,BT)为将编码单元划分为两个子块的方法,二叉树划分包括水平二叉树划分和竖直二叉树划分。本申请实施例中涉及的矩形包括长方形和正方形,若待编码单元为正方形,那么采用二叉树对编码单元进行划分后能够得到两个长方形子块;若待编码单元的长方形,且长方形的长宽比为2:1,那么采用二叉树对编码单元进行划分后既可能得到两个正方形子块,也可能得到两个长方形子块。
举例来说,参见图5,终端能够对第一待编码单元501进行水平二叉树划分,得到子块5011和子块5012。终端能够对第二待编码单元502进行竖直二叉树划分,得到子块5021和子块5022。终端判断对待编码单元进行水平二叉树划分还是竖直二叉树划分的判断方法与判断目标划分方式的方法属于同一发明构思,详见步骤401和步骤402,在此不再赘述。
另外,对于不同的编码方法来说,会为二叉树划分设置不同的最小子块尺寸(minBTSize)。对于VVC/H.266来说,minBTSize为4×4,也即是划分后的子块尺寸最小为4×4。若采用竖直二叉树划分后得到的子块的尺寸小于4×4,那么终端不会采用竖直二叉树来对待编码单元进行划分。
在一种可能的实施方式中,响应于目标划分模式为三叉树划分,终端将待编码单元预划分为三个面积相同的矩形子块。其中,三叉树划分为将待编码单元划分为三个子块的方法,三叉树划分包括水平三叉树划分和竖直三叉树划分。
举例来说,参见图6,终端能够对第三待编码单元601进行水平三叉树划分,得到子块6011、子块6012和子块6013。终端能够对第四待编码单元602进行水平三叉树划分,得到子块6021、子块6022和子块6022。终端判断对待编码单元进行水平三叉树划分还是竖直三叉树划分的判断方法与判断目标划分方式的方法属于同一发明构思,详见步骤401和步骤402,在此不再赘述。
在一种可能的实施方式中,响应于目标划分模式为四叉树划分,终端将待编码单元预划分为四个面积相同的正方形的子块。四叉树划分(Quad Tree,QT)为将待编码单元划分为四个子块的方法。
举例来说,参见图7,终端能够对第五待编码单元701进行四叉树划分,得到子块7011、子块7012、子块7013和子块7014。
404、终端获取至少两个子块的纹理特征参数,纹理特征参数用于表示对应子块的图像纹理。
在一种可能的实施方式中,终端获取至少两个子块中多个参考像素点的像素值。终端基于多个参考像素点的像素值,获取至少两个子块的统计信息,统计信息为一个子块内的参考像素点的平均像素值、像素值方差、图像梯度参数、像素值均方根误差以及像素值标准差中的至少一项。终端将至少两个子块的统计信息作为至少两个子块的纹理特征参数。
为了便于理解,下面以终端对待编码单元进行二叉树划分为例,对终端获取两个子块的纹理特征参数的方法进行说明,需要说明的是,在下述说明过程中,为了更加简洁和清楚,对于数字的计算结果均保留了整数部分。
以统计信息为多个参考像素点的平均像素值为例,终端将待编码单元划分为子块A和子块B,子块A和子块B均由四个像素点组成。
若待编码单元为灰度图像,子块A的四个像素点的灰度值分别为125、110、108以及98,子块B的四个像素点的灰度值分别为135、128、130以及145。终端将子块A的四个像素点的灰度值的平均值(125+110+108+98)/4=110,作为子块A的纹理特征参数。终端将子块B的四个像素点的灰度值的平均值(135+128+130+145)/4=134作为子块B的纹理特征参数。
若待编码单元为彩色图像,子块A的四个像素点的亮度色度值(顺序为YUV,其中Y表示亮度,U和V表示色度)分别为(78,135,160)、(85,98,64)、(58,69,120)以及(46,84,90),子块B的四个像素点的亮度色度值分别为(98,135,25)、(63,55,46)、(72,89,85)以及(74,76,230)。终端将子块A的四个像素点的亮度色度值的平均值(67,96,108)作为子块A的纹理特征参数。终端将子块B的四个像素点的亮度色度值的平均值(77,89,96)作为子块B的纹理特征参数。
以统计信息为多个参考像素点的像素值方差为例,终端将待编码单元划分为子块A和子块B,子块A和子块B均由四个像素点组成。
若待编码单元为灰度图像,子块A的四个像素点的灰度值分别为125、110、108以及98,子块B的四个像素点的灰度值分别为135、128、130以及145,子块A的灰度值的平均值为110,子块B的灰度值的平均值为134。终端确定子块A的灰度值方差为[(125-110)2+(110-110)2+(108-110)2+(98-110)2]/4=93,终端将灰度值方差93作为子块A的纹理特征参数。终端确定子块B的灰度值方差为[(135-134)2+(128-134)2+(130-134)2+(145-134)2]/4=43,终端将灰度值方差43作为子块B的纹理特征参数。
若待编码单元为彩色图像,子块A的四个像素点的亮度色度值(顺序为YUV)分别为(78,135,160)、(85,98,64)、(58,69,120)以及(46,84,90),子块B的四个像素点的亮度色度值分别为(98,135,25)、(63,55,46)、(72,89,85)以及(74,76,230)。终端确定子块A的三个亮度色度值的方差为(241,599,1277),终端将三个亮度色度值的方差(241,599,1277)作为子块A的纹理特征参数。终端确定子块B的三个亮度色度值的方差为(167,860,6404),终端将三个亮度色度值的方差(167,860,6404)作为子块B的纹理特征参数。
以统计信息为多个参考像素点的图像梯度参数为例,终端将待编码单元划分为子块A和子块B,子块A和子块B均由四个像素点组成,子块A和子块B中像素点的排列方式如图8所示,为了便于理解,子块A和子块B中像素点的排列方向均规定为x方向。
若待编码单元为灰度图像,在一种可能的实施方式中,终端能够通过梯度近似公式(3)来确定子块A和子块B的图像梯度。
Gx(x,y)=H(x+1,y)-H(x-1,y) (3)
其中,Gx(x,y)为x方向的图像梯度,H(x,y)为像素点的灰度值,(x,y)为像素点的坐标。
以统计信息为多个参考像素点的像素值标准差为例,终端将待编码单元划分为子块A和子块B,子块A和子块B均由四个像素点组成。
若待编码单元为灰度图像,子块A的四个像素点的灰度值分别为125、110、108以及98,子块B的四个像素点的灰度值分别为135、128、130以及145,子块A的灰度值的平均值为110,子块B的灰度值的平均值为134。终端确定子块A的标准差为9,子块B的标准差为6。终端将标准差9作为子块A的纹理特征参数,将标准差6作为子块B的纹理特征参数。
若待编码单元为彩色图像,子块A的四个像素点的亮度色度值(顺序为YUV)分别为(78,135,160)、(85,98,64)、(58,69,120)以及(46,84,90),子块B的四个像素点的亮度色度值分别为(98,135,25)、(63,55,46)、(72,89,85)以及(74,76,230)。终端确定子块A的三个亮度色度值的标准差为(15,24,35),终端将三个亮度色度值的标准差(15,24,35)作为子块A的纹理特征参数。终端确定子块B的三个亮度色度值的标准差为(13,29,80),终端将三个亮度色度值的标准差(13,29,80)作为子块B的纹理特征参数。
需要说明的是,终端能够在执行步骤404之后执行步骤405,也能够在执行步骤404之前执行步骤405,还能够在执行步骤404的同时执行步骤405,本申请实施例对于步骤404和步骤405的执行顺序不做限定。
405、终端获取待编码单元的纹理特征参数。
其中,待编码单元的纹理特征参数为待编码单元中多个像素点的像素值的平均像素值、像素值方差、图像梯度参数、像素值均方根误差以及像素值标准差中的至少一项。
在一种可能的实施方式中,终端能够在视频编码开始时,确定待编码单元的纹理特征参数,将待编码单元的标识和纹理特征参数存储在终端的存储空间中。当需要获取待编码单元的纹理特征参数时,终端能够根据待编码单元的标识,从存储空间中获取待编码单元的纹理特征参数。待编码单元的纹理参数的获取方法与上述步骤404中获取至少两个子块的纹理特征参数属于同一发明构思,获取方法可以参见上述步骤404中的描述,在此不再赘述。
在这种实现方式下,终端能够提前确定待编码单元的纹理特征参数,并将待编码单元的纹理特征参数提前进行存储。在需要获取待编码单元的纹理特征参数时,终端能够直接获取待编码单元的纹理特征参数,节省了视频编码过程消耗的时间,提高了视频编码的效率。
当然,除了上述实施方式之外,终端也能够在执行完上述步骤404之后,实时获取待编码单元的纹理特征参数,本申请实施例对于终端获取待编码单元的纹理特征参数的时机不做限定。
终端在执行步骤405之后,能够根据至少两个子块的纹理特征参数与待编码单元的纹理特征参数之间的差异信息来判断执行步骤406还是步骤407。响应于至少两个子块的纹理特征参数与待编码单元的纹理特征参数之间的差异信息符合目标条件,终端执行步骤406;响应于至少两个子块的纹理特征参数与待编码单元的纹理特征参数之间的差异信息不符合目标条件,终端执行步骤407。
406、响应于至少两个子块的纹理特征参数与待编码单元的纹理特征参数之间的差异信息符合目标条件,在视频编码时,终端不对待编码单元按照目标划分模式进行划分。
在一种可能的实施方式中,响应于至少两个子块的纹理特征参数之和大于待编码单元的纹理特征参数与第一阈值之积,在视频编码时,终端不对待编码单元按照目标划分模式进行划分,第一阈值用于表示视频编码的清晰度。
下面,对这种实施方式下终端采用不同大小的第一阈值的效果进行说明。
若终端将第一阈值设置为较大的数值,那么能够满足至少两个子块的纹理特征参数之和大于待编码单元的纹理特征参数与第一阈值之积这个条件的待编码单元的数量也就较少,终端能够将视频的图像帧划分为较多的子块,最终经过视频编码得到的图像也就更加清晰。若终端将第一阈值设置为较小的数值,那么能够满足至少两个子块的纹理特征参数之和大于待编码单元的纹理特征参数与第一阈值之积这个条件的待编码单元的数量也就较多,终端无需将视频的图像帧划分为较多的子块就能够进行后续的编码,这样能够显著减少编码过程中计算资源的消耗,提高视频编码的速度。
对第一阈值进行说明之后,下面将通过几个例子,来对上述实施方式进行说明。
1、以纹理特征参数为多个像素点的平均像素值,目标划分模式为二叉树划分为例,终端能够将待编码单元划分为子块A和子块B,子块A和子块B均包括多个像素点。
若待编码单元为灰度图像,终端确定子块A和子块B中像素点的平均灰度值分别为M0和M1,待编码单元中像素点的平均灰度值为Mp。若终端设置第一阈值λ1,那么终端确定M0、M1以及Mp三者之间是否符合公式(4)。若确定M0、M1以及Mp三者之间符合公式(4),终端能够在视频编码时,不对待编码单元按照二叉树划分进行处理,直接对待编码单元进行后续的编码即可。
M0+M1>λ1Mp (4)
若待编码单元为彩色图像,终端确定子块A和子块B的平均亮度色度值分别为(Y1,U1,V1)和(Y2,U2,V2),待编码单元的平均亮度色度值为(Yp,Up,Vp)。若终端设置第一阈值λ2,那么终端确定(Y1,U1,V1)、(Y2,U2,V2)以及(Yp,Up,Vp)三者之间是否符合公式(5)。若确定(Y1,U1,V1)、(Y2,U2,V2)以及(Yp,Up,Vp)三者之间符合公式(5),终端能够在视频编码时,不对待编码单元按照二叉树划分进行处理,直接对待编码单元进行后续的编码即可。
1Y12U13V1)+(α1Y22U23V2)>λ21Yp2Up3Vp)(5)
其中,α1、α2以及α3为系数,α123=1,且α1>α2以及α1>α3
2、以纹理特征参数为多个像素点的平均像素值,目标划分模式为四叉树划分为例,终端能够将待编码单元划分为子块A、子块B、子块C以及子块D,子块A、子块B、子块C以及子块D均包括多个像素点。
若待编码单元为灰度图像,终端确定子块A、子块B、子块C以及子块D中像素点的平均灰度值分别为M0、M1、M2以及M3,待编码单元中像素点的平均灰度值为Mp。若终端设置第一阈值λ3,那么终端确定M0、M1、M2、M3以及Mp五者之间是否符合公式(6)。若确定M0、M1、M2、M3以及Mp五者之间符合公式(6),终端能够在视频编码时,不对待编码单元按照四叉树划分进行处理,直接对待编码单元进行后续的编码即可。
M0+M1+M2+M3>λ3Mp (6)
若待编码单元为彩色图像,终端确定子块A、子块B、子块C以及子块D的平均亮度色度值分别为(Y1,U1,V1)、(Y2,U2,V2)、(Y3,U3,V3)以及(Y4,U4,V4),待编码单元的平均亮度色度值为(Yp,Up,Vp)。若终端设置第一阈值λ2,那么终端确定(Y1,U1,V1)、(Y2,U2,V2)、(Y3,U3,V3)、(Y4,U4,V4)以及(Yp,Up,Vp)五者之间是否符合公式(7)。若确定(Y1,U1,V1)、(Y2,U2,V2)、(Y3,U3,V3)、(Y4,U4,V4)以及(Yp,Up,Vp)五者之间符合公式(7),终端能够在视频编码时,不对待编码单元按照四叉树划分进行处理,直接对待编码单元进行后续的编码即可。
1Y12U13V1)+(α1Y22U23V2)+(α1Y3,α2U3,α3V3)+(α1Y4,α2U4,α3V4)>λ41Yp2Up3Vp) (7)
其中,α1、α2以及α3为系数,α123=1,且α1>α2以及α1>α3
3、以纹理特征参数为多个像素点的像素值方差,目标划分模式为二叉树划分为例,终端能够将待编码单元划分为子块A和子块B,子块A和子块B均包括多个像素点。
若待编码单元为灰度图像,终端确定子块A和子块B中像素点的灰度值方差值分别为V0和V1,待编码单元中像素点的灰度值方差值为Vp。若终端设置第一阈值λ5,那么终端确定V0、V1以及Vp三者之间是否符合公式(8)。若确定V0、V1以及Vp三者之间符合公式(8),终端能够在视频编码时,不对待编码单元按照二叉树划分进行处理,直接对待编码单元进行后续的编码即可。
V0+V1>λ5Vp (8)
若待编码单元为彩色图像,终端确定子块A和子块B的亮度色度值方差分别为(VY1,VU1,VV1)和(VY2,VU2,VV2),待编码单元的亮度色度值方差为(VYp,VUp,VVp)。若终端设置第一阈值λ6,那么终端确定(VY1,VU1,VV1)、(VY2,VU2,VV2)以及(VYp,VUp,VVp)三者之间是否符合公式(9)。若确定(VY1,VU1,VV1)、(VY2,VU2,VV2)以及(VYp,VUp,VVp)三者之间符合公式(9),那么终端能够在视频编码时,不对待编码单元按照二叉树划分进行处理,直接对待编码单元进行后续的编码即可。
1VY1,α2VU1,α3VV1)+(α1VY2,α2VU2,α3VV2)>λ61VYp
α2VUp,α3VVp) (9)
其中,α1、α2以及α3为系数,α123=1,且α1>α2以及α1>α3
4、以纹理特征参数为多个像素点的平均像素值,目标划分模式为四叉树划分为例,终端能够将待编码单元划分为子块A、子块B、子块C以及子块D,子块A、子块B、子块C以及子块D均包括多个像素点。
若待编码单元为灰度图像,终端确定子块A、子块B、子块C以及子块D中像素点的灰度值方差分别为V0、V1、V2以及V3,待编码单元中像素点的灰度值方差为Vp。若终端设置第一阈值λ7,那么终端确定V0、V1、V2、V3以及Vp五者之间是否符合公式(10)。若确定V0、V1、V2、V3以及Vp五者之间符合公式(10),终端能够在视频编码时,不对待编码单元按照四叉树划分进行处理,直接对待编码单元进行后续的编码即可。
V0+V1+V2+V3>λ7Vp (10)
若待编码单元为彩色图像,终端确定子块A、子块B、子块C以及子块D的亮度色度值方差分别为(VY1,VU1,VV1)、(VY2,VU2,VV2)、(VY3,VU3,VV3)以及(VY4,VU4,VV4),待编码单元的亮度色度值方差为(VYp,VUp,VVp)。若终端设置第一阈值λ8,那么终端确定(VY1,VU1,VV1)、(VY2,VU2,VV2)、(VY3,VU3,VV3)、(VY4,VU4,VV4)以及(VYp,VUp,VVp)五者之间是否符合公式(11)。若确定(VY1,VU1,VV1)、(VY2,VU2,VV2)、(VY3,VU3,VV3)、(VY4,VU4,VV4)以及(VYp,VUp,VVp)五者之间符合公式(11),终端能够在视频编码时,不对待编码单元按照四叉树划分进行处理,直接对待编码单元进行后续的编码即可。
1VY12VU13VV1)+(α1VY22VU23VV2)+(α1VY32VU33VV3)+(α1VY42VU43VV4)>λ81VYp2VUp3VVp) (11)
其中,α1、α2以及α3为系数,α123=1,且α1>α2以及α1>α3
需要说明的是,上述四个例子中分别以纹理特征参数为多个像素点的平均像素值/像素值方差,目标划分模式为二叉树划分/四叉树划分为例进行说明的,在其他可能的实施方式中,纹理特征参数也能够为图像梯度参数、像素值均方根误差以及像素值标准差中的任一项,终端基于其他特征参数进行判断的方法与上述四个例子属于同一发明构思,实现方法参见上述四个例子的描述,在此不再赘述。
407、响应于至少两个子块的纹理特征参数与待编码单元的纹理特征参数之间的差异信息不符合目标条件,终端按照目标划分模式,将待编码单元划分为至少两个子块。
可选地,在步骤407之后,终端能够对划分得到的至少两个子块中的任一个继续执行上述步骤401-407,确定是否需要对至少两个子块进行划分。
需要说明的是,上述步骤401-407是以终端为执行主体进行说明的,在其他可能的实施方式中,上述步骤401-407也能够以服务器作为执行主体来实现,也即是由终端向服务器上传视频,服务器采用本申请提供的视频编码方法,对视频进行编码,本申请实施例对于方法的执行主体不做限定。
通过上述步骤401-407,终端能够根据对待编码单元进行预划分得到的至少两个子块与待编码单元之间在纹理上的相似程度,来确定是否对待编码单元进行划分。当至少两个子块与待编码单元之间的相似程度较高时,终端确定不对待编码单元进行划分。这样终端无需遍历对待编码单元进行划分的所有模式,只需要对与子块相似程度较低的待编码单元进行划分即可,减少了子块的数量,从而降低了编码的复杂度,在保证视频编码质量的条件下,减少了编码消耗的时间。
除了上述步骤401-407之外,本申请实施例还提供了另一种视频编码方法,该视频编码方法能够与上述步骤401-407提供的视频编码方法同时使用,也能够单独使用,本申请实施例对此不做限定。以执行主体为终端为例进行说明,参见图9,方法包括:
901、在视频编码过程中,终端根据待编码单元中像素点的像素值,确定待编码单元中像素点的平均像素值和像素值方差。
其中,终端确定待编码单元中像素点的平均像素值和像素值方差的方法与上述步骤404中属于同一发明构思,实现方法参见上述四个例子的描述,在此不再赘述。
902、响应于像素值方差大于平均像素值与第一阈值之积,在视频编码时,终端不对待编码单元进行划分,第一阈值用于表示视频编码的清晰度。
举例来说,若待编码单元的像素值方差为Vp,平均像素值为Mp,第一阈值为λ9,那么当Vp、Mp以及λ9满足公式(12)时,终端确定在视频编码时,不对待编码单元进行划分。
Vp>λ9×Mp (12)
需要说明的是,上述步骤901和902是以终端为执行主体进行说明的,在其他可能的实施方式中,上述步骤901和902也能够以服务器作为执行主体来实现,也即是由终端向服务器上传视频,服务器采用本申请提供的视频编码方法,对视频进行编码,本申请实施例对于方法的执行主体不做限定。
通过上述步骤901和902,终端无需对待编码单元进行预划分,直接根据待编码单元中像素点的平均像素值和像素值方差就能够确定是否需要对待编码单元进行划分,视频编码的效率更高。
除了上述步骤401-407和上述步骤901-902之外,本申请实施例还提供了另一种视频编码方法,该视频编码方法能够与上述步骤401-407和上述步骤901-902提供的视频编码方法同时使用,也能够单独使用,本申请实施例对此不做限定。以执行主体为终端为例进行说明,参见图10,方法包括:
1001、在视频编码过程中,终端确定对待编码单元进行预划分的多种划分模式对应的率失真参数,率失真参数为编码码率与图像失真率之和,图像失真率为采用一种划分模式对待编码单元进行划分后,对划分后的子块进行编码得到的单元与待编码单元之间的图像失真率。
步骤1001与上述步骤401属于同一发明构思,实现方法参见上述步骤401的描述,在此不再赘述。
1002、从多种划分模式对应的率失真参数中,终端将最小的率失真参数对应的划分模式确定为目标划分模式。
步骤1002与上述步骤402属于同一发明构思,实现方法参见上述步骤402的描述,在此不再赘述。
1003、终端按照目标划分模式,对待编码单元进行预划分,得到至少两个子块。
步骤1003与上述步骤403属于同一发明构思,实现方法参见上述步骤403的描述,在此不再赘述。
1004、终端获取至少两个子块的纹理特征参数,纹理特征参数用于表示对应子块的图像纹理。
步骤1004与上述步骤404属于同一发明构思,实现方法参见上述步骤404的描述,在此不再赘述。
1005、响应于至少两个子块的纹理特征参数之间的差异信息符合目标差异条件,在视频编码时,终端不对待编码单元按照目标划分模式进行划分。
在一种可能的实施方式中,响应于至少两个子块的纹理特征参数之间的差值小于第二阈值,在视频编码时,终端不对待编码单元按照目标划分模式进行划分,第二阈值用于表示视频编码的清晰度。
下面将通过两个例子,来对上述实施方式进行说明。
1、以纹理特征参数为多个像素点的平均像素值,目标划分模式为二叉树划分为例,终端能够将待编码单元划分为子块A和子块B,子块A和子块B均包括多个像素点。
若待编码单元为灰度图像,终端确定子块A和子块B中像素点的平均灰度值分别为M0和M1。终端确定子块A和子块B中像素点的平均灰度值之间的差值为|M0-M1|,若第二阈值为μ1,那么当|M0-M1|<μ1时,终端确定不对待编码单元按照二叉树划分进行处理,直接对待编码单元进行后续的编码即可。
若待编码单元为彩色图像,终端确定子块A和子块B的平均亮度色度值分别为(Y1,U1,V1)和(Y2,U2,V2)。终端确定子块A和子块B中像素点的亮度色度值之间的差值为α1|Y1-Y2|+α2|U1-U2|+α3|V1-V2|,若第二阈值为μ2,那么当α1|Y1-Y2|+α2|U1-U2|+α3|V1-V2|<μ2时,终端确定不对待编码单元按照二叉树划分进行处理,直接对待编码单元进行后续的编码即可。
2、以纹理特征参数为多个像素点的平均像素值,目标划分模式为四叉树划分为例,终端能够将待编码单元划分为子块A、子块B、子块C以及子块D,子块A、子块V、子块C以及子块D均包括多个像素点。
若待编码单元为灰度图像,终端确定子块A、子块B、子块C以及子块D中像素点的平均灰度值分别为M0、M1、M2以及M3。终端确定子块A、子块B、子块C以及子块D中任意两个子块之间的像素点的平均灰度值差值,也即是确定|M0-M1|、|M0-M2|、|M0-M3|、|M1-M2|、|M1-M3|以及|M2-M3|。若第二阈值为μ3,那么当|M0-M1|、|M0-M2|、|M0-M3|、|M1-M2|、|M1-M3|以及|M2-M3|中的任一项均小于μ3时,终端确定不对待编码单元按照四叉树划分进行处理,直接对待编码单元进行后续的编码即可。
若待编码单元为彩色图像,终端确定子块A、子块B、子块C以及子块D的平均亮度色度值分别为(Y1,U1,V1)、(Y2,U2,V2)、(Y3,U3,V3)以及(Y4,U4,V4)。终端确定子块A、子块B、子块C以及子块D中任意两个子块之间的像素点的平均亮度色度值差值,也即是确定|Y1-Y2,U1-U2,V1-V2|、|Y1-Y3,U1-U3,V1-V3|、|Y1-Y4,U1-U4,V1-V4|、|Y2-Y3,U2-U3,V2-V3|、|Y2-Y4,U2-U4,V2-V4|以及|Y3-Y4,U3-U4,V3-V4|。若第二阈值为|Yμ4,Uμ4,Vμ4|,那么当|Y1-Y2,U1-U2,V1-V2|、|Y1-Y3,U1-U3,V1-V3|、|Y1-Y4,U1-U4,V1-V4|、|Y2-Y3,U2-U3,V2-V3|、|Y2-Y4,U2-U4,V2-V4|以及|Y3-Y4,U3-U4,V3-V4|中任一个数值均小于对应的|Yμ4,Uμ4,Vμ4|时,终端确定不对待编码单元按照四叉树划分进行处理,直接对待编码单元进行后续的编码即可。
需要说明的是,上述两个例子中以纹理特征参数为多个像素点的平均像素值,目标划分模式为二叉树划分/四叉树划分为例进行说明的,在其他可能的实施方式中,纹理特征参数也能够为像素值方差、图像梯度参数、像素值均方根误差以及像素值标准差中的任一项,终端基于其他特征参数进行判断的方法与上述两个例子属于同一发明构思,实现方法参见上述两个例子的描述,在此不再赘述。
另外,上述步骤1001-1005是以终端为执行主体进行说明的,在其他可能的实施方式中,上述步骤1001-1005也能够以服务器作为执行主体来实现,也即是由终端向服务器上传视频,服务器采用本申请提供的视频编码方法,对视频进行编码,本申请实施例对于方法的执行主体不做限定。
通过上述步骤1001-1005,终端能够根据对待编码单元进行预划分得到的至少两个子块之间在纹理上的相似程度,来确定是否对待编码单元进行划分。当至少两个子块之间的相似程度较高时,终端确定不对待编码单元进行划分。这样终端无需遍历对待编码单元进行划分的所有模式,只需要将子块相似程度较低的待编码单元进行划分即可,减少了子块的数量,从而降低了编码的复杂度,在保证视频编码质量的条件下,减少了编码消耗的时间。
图11是本申请实施例提供的一种视频编码装置的结构示意图,参见图11,装置包括:预划分模块1101、获取模块1102以及划分模块1103。
预划分模块1101,用于在视频编码过程中,按照目标划分模式,对待编码单元进行预划分,得到至少两个子块。
获取模块1102,用于获取至少两个子块的纹理特征参数,纹理特征参数用于表示对应子块的图像纹理。
划分模块1103,用于响应于至少两个子块的纹理特征参数与待编码单元的纹理特征参数之间的差异信息符合目标条件,在视频编码时,不对待编码单元按照目标划分模式进行划分。
在一种可能的实施方式中,划分模块,用于响应于至少两个子块的纹理特征参数之和大于待编码单元的纹理特征参数与第一阈值之积,在视频编码时,不对待编码单元按照目标划分模式进行划分,第一阈值用于表示视频编码的清晰度。
在一种可能的实施方式中,获取模块,用于获取至少两个子块中多个参考像素点的像素值,基于多个参考像素点的像素值,获取至少两个子块的统计信息,统计信息为一个子块内的参考像素点的平均像素值、像素值方差、图像梯度参数、像素值均方根误差以及像素值标准差中的至少一项,将至少两个子块的统计信息作为至少两个子块的纹理特征参数。
在一种可能的实施方式中,预划分模块,用于响应于目标划分模式为二叉树划分,将待编码单元预划分为两个面积相同的矩形子块。或,响应于目标划分模式为三叉树划分,将待编码单元预划分为三个面积相同的矩形子块。或,响应于目标划分模式为四叉树划分,将待编码单元预划分为四个面积相同的正方形的子块。
在一种可能的实施方式中,装置还包括:
率失真确定模块,用于确定对待编码单元进行预划分的多种划分模式对应的率失真参数,率失真参数为编码码率与图像失真率之和,图像失真率为采用一种划分模式对待编码单元进行划分后,对划分后的子块进行编码得到的单元与待编码单元之间的图像失真率。
划分模式确定模块,用于从多种划分模式对应的率失真参数中,将最小的率失真参数对应的划分模式确定为目标划分模式。
在一种可能的实施方式中,待编码单元的纹理特征参数为待编码单元中多个像素点的像素值的平均像素值、像素值方差、图像梯度参数、像素值均方根误差以及像素值标准差中的至少一项。
在一种可能的实施方式中,划分模块还用于响应于至少两个子块的纹理特征参数与待编码单元的纹理特征参数之间的差异信息不符合目标条件,按照目标划分模式,将待编码单元划分为至少两个子块。
在一种可能的实施方式中,装置还包括:
确定模块,用于在视频编码过程中,根据待编码单元中像素点的像素值,确定待编码单元中像素点的平均像素值和像素值方差。
划分模块还用于响应于像素值方差大于平均像素值与第一阈值之积,在视频编码时,不对待编码单元进行划分,第一阈值用于表示视频编码的清晰度。
在一种可能的实施方式中,划分模块还用于响应于至少两个子块的纹理特征参数之间的差异信息符合目标差异条件,在视频编码时,不对待编码单元按照目标划分模式进行划分。
通过本申请实施例提供的技术方案,终端能够根据对待编码单元进行预划分得到的至少两个子块与待编码单元之间在纹理上的相似程度,来确定是否对待编码单元进行划分。当至少两个子块与待编码单元之间的相似程度较高时,终端确定不对待编码单元进行划分。这样终端无需遍历对待编码单元进行划分的所有模式,只需要对与子块相似程度较低的待编码单元进行划分即可,减少了子块的数量,从而降低了编码的复杂度,在保证视频编码质量的条件下,减少了编码消耗的时间。
本申请实施例提供了一种计算机设备,用于执行上述各个实施例提供的方法,该计算机设备可以实现为终端或者服务器,下面先对终端的结构进行介绍:
图12是本申请实施例提供的一种终端的结构示意图。该终端1200可以是:智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等。终端1200还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1200包括有:一个或多个处理器1201和一个或多个存储器1202。
处理器1201可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1201可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1201也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1201可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1201还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1202可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1202还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1202中的非暂态的计算机可读存储介质用于存储至少一个程序代码,该至少一个程序代码用于被处理器1201所执行以实现本申请中方法实施例提供的视频编码方法。
在一些实施例中,终端1200还可选包括有:***设备接口1203和至少一个***设备。处理器1201、存储器1202和***设备接口1203之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口1203相连。具体地,***设备包括:射频电路1204、显示屏1205、摄像头组件1206、音频电路1207、定位组件1208和电源1209中的至少一种。
***设备接口1203可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器1201和存储器1202。在一些实施例中,处理器1201、存储器1202和***设备接口1203被集成在同一芯片或电路板上;在一些其他实施例中,处理器1201、存储器1202和***设备接口1203中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1204用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1204通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1204将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1204包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。
显示屏1205用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1205是触摸显示屏时,显示屏1205还具有采集在显示屏1205的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1201进行处理。此时,显示屏1205还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。
摄像头组件1206用于采集图像或视频。可选地,摄像头组件1206包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。
音频电路1207可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1201进行处理,或者输入至射频电路1204以实现语音通信。
定位组件1208用于定位终端1200的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。
电源1209用于为终端1200中的各个组件进行供电。电源1209可以是交流电、直流电、一次性电池或可充电电池。
在一些实施例中,终端1200还包括有一个或多个传感器1210。该一个或多个传感器1210包括但不限于:加速度传感器1211、陀螺仪传感器1212、压力传感器1213、指纹传感器1214、光学传感器1215以及接近传感器1216。
加速度传感器1211可以检测以终端1200建立的坐标系的三个坐标轴上的加速度大小。
陀螺仪传感器1212可以检测终端1200的机体方向及转动角度,陀螺仪传感器1212可以与加速度传感器1211协同采集用户对终端1200的3D动作。
压力传感器1213可以设置在终端1200的侧边框和/或显示屏1205的下层。当压力传感器1213设置在终端1200的侧边框时,可以检测用户对终端1200的握持信号,由处理器1201根据压力传感器1213采集的握持信号进行左右手识别或块捷操作。当压力传感器1213设置在显示屏1205的下层时,由处理器1201根据用户对显示屏1205的压力操作,实现对UI界面上的可操作性控件进行控制。
指纹传感器1214用于采集用户的指纹,由处理器1201根据指纹传感器1214采集到的指纹识别用户的身份,或者,由指纹传感器1214根据采集到的指纹识别用户的身份。
光学传感器1215用于采集环境光强度。在一个实施例中,处理器1201可以根据光学传感器1215采集的环境光强度,控制显示屏1205的显示亮度。接近传感器1216用于采集用户与终端1200的正面之间的距离。
本领域技术人员可以理解,图12中示出的结构并不构成对终端1200的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
上述计算机设备还可以实现为服务器,下面对服务器的结构进行介绍:
图13是本申请实施例提供的一种服务器的结构示意图,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1301和一个或多个的存储器1302,其中,所述一个或多个存储器1302中存储有至少一条程序代码,所述至少一条程序代码由所述一个或多个处理器1301加载并执行以实现上述各个方法实施例提供的视频编码方法。当然,该服务器1300还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器1300还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括程序代码的存储器,上述程序代码可由处理器执行以完成上述实施例中的视频编码方法。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各种可选实现方式中提供的视频编码方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来程序代码相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
上述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (13)

1.一种视频编码方法,其特征在于,所述方法包括:
在视频编码过程中,按照目标划分模式,对待编码单元进行预划分,得到至少两个子块;
获取所述至少两个子块的纹理特征参数,所述纹理特征参数用于表示对应子块的图像纹理;
响应于所述至少两个子块的纹理特征参数之和大于所述待编码单元的纹理特征参数与第一阈值之积,在视频编码时,不对所述待编码单元按照所述目标划分模式进行划分,所述第一阈值用于表示所述视频编码的清晰度。
2.根据权利要求1所述的方法,其特征在于,所述获取所述至少两个子块的纹理特征参数包括:
获取所述至少两个子块中多个参考像素点的像素值;
基于所述多个参考像素点的像素值,获取所述至少两个子块的统计信息,所述统计信息为一个子块内的参考像素点的平均像素值、像素值方差、图像梯度参数、像素值均方根误差以及像素值标准差中的至少一项;
将所述至少两个子块的统计信息作为所述至少两个子块的纹理特征参数。
3.根据权利要求1所述的方法,其特征在于,所述按照目标划分模式,对待编码单元进行预划分,得到至少两个子块包括:
响应于所述目标划分模式为二叉树划分,将所述待编码单元预划分为两个面积相同的矩形子块;或,
响应于所述目标划分模式为三叉树划分,将所述待编码单元预划分为三个面积相同的矩形子块;或,
响应于所述目标划分模式为四叉树划分,将所述待编码单元预划分为四个面积相同的正方形的子块。
4.根据权利要求1所述的方法,其特征在于,所述按照目标划分模式,对待编码单元进行预划分,得到至少两个子块之前,所述方法还包括:
确定对所述待编码单元进行预划分的多种划分模式对应的率失真参数,所述率失真参数为编码码率与图像失真率之和,所述图像失真率为采用一种划分模式对所述待编码单元进行划分后,对划分后的子块进行编码得到的单元与所述待编码单元之间的图像失真率;
从所述多种划分模式对应的率失真参数中,将最小的率失真参数对应的划分模式确定为所述目标划分模式。
5.根据权利要求1所述的方法,其特征在于,所述获取所述至少两个子块的纹理特征参数之后,所述方法还包括:
响应于所述至少两个子块的纹理特征参数之和小于或等于所述待编码单元的纹理特征参数与第一阈值之积,按照所述目标划分模式,将所述待编码单元划分为所述至少两个子块。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在视频编码过程中,根据所述待编码单元中像素点的像素值,确定所述待编码单元中像素点的平均像素值和像素值方差;
响应于所述像素值方差大于所述平均像素值与第一阈值之积,在视频编码时,不对所述待编码单元进行划分,所述第一阈值用于表示视频编码的清晰度。
7.根据权利要求1所述的方法,其特征在于,所述获取所述至少两个子块的纹理特征参数之后,所述方法还包括:
响应于所述至少两个子块的纹理特征参数之间的差异信息符合目标差异条件,在视频编码时,不对所述待编码单元按照所述目标划分模式进行划分。
8.一种视频编码装置,其特征在于,所述装置包括:
预划分模块,用于在视频编码过程中,按照目标划分模式,对待编码单元进行预划分,得到至少两个子块;
获取模块,用于获取所述至少两个子块的纹理特征参数,所述纹理特征参数用于表示对应子块的图像纹理;
划分模块,用于响应于所述至少两个子块的纹理特征参数之和大于所述待编码单元的纹理特征参数与第一阈值之积,在视频编码时,不对所述待编码单元按照所述目标划分模式进行划分,所述第一阈值用于表示所述视频编码的清晰度。
9.根据权利要求8所述的装置,其特征在于,所述获取模块,用于获取所述至少两个子块中多个参考像素点的像素值;基于所述多个参考像素点的像素值,获取所述至少两个子块的统计信息,所述统计信息为一个子块内的参考像素点的平均像素值、像素值方差、图像梯度参数、像素值均方根误差以及像素值标准差中的至少一项;将所述至少两个子块的统计信息作为所述至少两个子块的纹理特征参数。
10.根据权利要求8所述的装置,其特征在于,所述预划分模块,用于响应于所述目标划分模式为二叉树划分,将所述待编码单元预划分为两个面积相同的矩形子块;或,响应于所述目标划分模式为三叉树划分,将所述待编码单元预划分为三个面积相同的矩形子块;或,响应于所述目标划分模式为四叉树划分,将所述待编码单元预划分为四个面积相同的正方形的子块。
11.根据权利要求8所述的装置,其特征在于,所述装置还包括:
率失真确定模块,用于确定对所述待编码单元进行预划分的多种划分模式对应的率失真参数,所述率失真参数为编码码率与图像失真率之和,所述图像失真率为采用一种划分模式对所述待编码单元进行划分后,对划分后的子块进行编码得到的单元与所述待编码单元之间的图像失真率;
划分模式确定模块,用于从所述多种划分模式对应的率失真参数中,将最小的率失真参数对应的划分模式确定为所述目标划分模式。
12.一种计算机设备,其特征在于,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述程序代码由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求7任一项所述的视频编码方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现如权利要求1至权利要求7任一项所述的视频编码方法。
CN202010717847.7A 2020-07-23 2020-07-23 视频编码方法、装置、设备以及存储介质 Active CN111770340B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010717847.7A CN111770340B (zh) 2020-07-23 2020-07-23 视频编码方法、装置、设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010717847.7A CN111770340B (zh) 2020-07-23 2020-07-23 视频编码方法、装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN111770340A CN111770340A (zh) 2020-10-13
CN111770340B true CN111770340B (zh) 2022-03-15

Family

ID=72727072

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010717847.7A Active CN111770340B (zh) 2020-07-23 2020-07-23 视频编码方法、装置、设备以及存储介质

Country Status (1)

Country Link
CN (1) CN111770340B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112437307B (zh) * 2020-11-10 2022-02-11 腾讯科技(深圳)有限公司 一种视频编码方法、装置、电子设备及介质
CN113079374B (zh) * 2021-03-03 2023-01-10 北京银河信通科技有限公司 图像编码方法和装置
CN113660490A (zh) * 2021-06-24 2021-11-16 浙江大华技术股份有限公司 编码单元的划分方法、编码方法、电子装置及存储介质
CN113542753B (zh) * 2021-07-27 2022-07-08 杭州当虹科技股份有限公司 Avs3视频编码方法及编码器
CN113709482B (zh) * 2021-07-30 2024-04-16 北京大学深圳研究生院 面向硬件的帧内编码模式中编码单元划分模式确定方法
CN113992915B (zh) * 2021-12-28 2022-05-17 康达洲际医疗器械有限公司 一种可适用于vvc帧内预测的编码单元划分方法与***
CN115802044B (zh) * 2023-02-06 2023-08-18 深流微智能科技(深圳)有限公司 编码块划分方式的确定及装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106961606A (zh) * 2017-01-26 2017-07-18 浙江工业大学 基于纹理划分特征的hevc帧内编码模式选择方法
CN108184115A (zh) * 2017-12-29 2018-06-19 华南理工大学 Hevc帧内cu划分和pu预测模式选择方法及***
CN110691254A (zh) * 2019-09-20 2020-01-14 中山大学 一种多功能视频编码的快速判决方法、***及存储介质
CN110730343A (zh) * 2019-09-20 2020-01-24 中山大学 一种多功能视频编码帧间划分方法、***及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107071418B (zh) * 2017-05-05 2020-03-17 上海应用技术大学 一种基于决策树的hevc帧内编码单元快速划分方法
JP6825506B2 (ja) * 2017-07-19 2021-02-03 富士通株式会社 動画像符号化装置、動画像符号化方法、動画像符号化用コンピュータプログラム、動画像復号装置及び動画像復号方法ならびに動画像復号用コンピュータプログラム
CN110351556B (zh) * 2018-04-02 2021-03-02 腾讯科技(北京)有限公司 确定编码单元的编码代价的方法及相关装置
CN108777794B (zh) * 2018-06-25 2022-02-08 腾讯科技(深圳)有限公司 图像的编码方法和装置、存储介质、电子装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106961606A (zh) * 2017-01-26 2017-07-18 浙江工业大学 基于纹理划分特征的hevc帧内编码模式选择方法
CN108184115A (zh) * 2017-12-29 2018-06-19 华南理工大学 Hevc帧内cu划分和pu预测模式选择方法及***
CN110691254A (zh) * 2019-09-20 2020-01-14 中山大学 一种多功能视频编码的快速判决方法、***及存储介质
CN110730343A (zh) * 2019-09-20 2020-01-24 中山大学 一种多功能视频编码帧间划分方法、***及存储介质

Also Published As

Publication number Publication date
CN111770340A (zh) 2020-10-13

Similar Documents

Publication Publication Date Title
CN111770340B (zh) 视频编码方法、装置、设备以及存储介质
CN110234008B (zh) 编码方法、解码方法及装置
JP7085014B2 (ja) ビデオ符号化方法並びにその装置、記憶媒体、機器、及びコンピュータプログラム
CN112449192B (zh) 解码方法、编码方法及装置
AU2018208733A1 (en) Adaptive transfer function for video encoding and decoding
CN112532975B (zh) 视频编码方法、装置、计算机设备及存储介质
US11985358B2 (en) Artifact removal method and apparatus based on machine learning, and method and apparatus for training artifact removal model based on machine learning
CN111603772B (zh) 区域检测方法、装置、设备及存储介质
CN109151477B (zh) 一种图像数据的编码、解码方法及装置
CN109168032B (zh) 视频数据的处理方法、终端、服务器及存储介质
CN113099233A (zh) 视频编码方法、装置、视频编码设备及存储介质
WO2023016191A1 (zh) 图像显示方法、装置、计算机设备及存储介质
CN116074512A (zh) 视频编码方法、装置、电子设备以及存储介质
CN111770339B (zh) 视频编码方法、装置、设备及存储介质
CN116563771A (zh) 图像识别方法、装置、电子设备及可读存储介质
CN111698512B (zh) 视频处理方法、装置、设备及存储介质
CN109040753B (zh) 预测模式选择方法、装置及存储介质
CN114079787B (zh) 视频解码方法、视频编码方法、装置、设备和存储介质
CN114422782B (zh) 视频编码方法、装置、存储介质及电子设备
JP2021013145A (ja) 動画像伝送装置、動画像伝送方法
CN115474037B (zh) 视频的质量检测方法、装置、电子设备及可读存储介质
CN112437304B (zh) 视频解码方法、编码方法、装置、设备及可读存储介质
CN116980627A (zh) 用于解码的视频滤波方法、装置、电子设备及存储介质
CN117676170A (zh) 块效应检测的方法、装置、设备和存储介质
CN116506616A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40031409

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant