CN112383774B - 编码方法、编码器以及服务器 - Google Patents

编码方法、编码器以及服务器 Download PDF

Info

Publication number
CN112383774B
CN112383774B CN202011192534.0A CN202011192534A CN112383774B CN 112383774 B CN112383774 B CN 112383774B CN 202011192534 A CN202011192534 A CN 202011192534A CN 112383774 B CN112383774 B CN 112383774B
Authority
CN
China
Prior art keywords
unit
target
coded
depth level
target coding
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
CN202011192534.0A
Other languages
English (en)
Other versions
CN112383774A (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.)
Wangsu Science and Technology Co Ltd
Original Assignee
Wangsu Science and Technology 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 Wangsu Science and Technology Co Ltd filed Critical Wangsu Science and Technology Co Ltd
Priority to CN202011192534.0A priority Critical patent/CN112383774B/zh
Publication of CN112383774A publication Critical patent/CN112383774A/zh
Application granted granted Critical
Publication of CN112383774B publication Critical patent/CN112383774B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

本发明实施例涉及图像处理技术领域,公开了一种编码方法、编码器以及服务器。编码方法,包括:获取与待编码单元相邻的N个目标编码区域,目标编码区域为与待编码单元大小相同的已编码的编码区域,N为大于或等于1的整数;获取各目标编码区域的递归深度范围与像素复杂度;根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式,编码方式包括:跳过当前深度级别的模式选择进行下一深度级别的编码模式选择、仅进行当前深度级别的编码模式选择以及同时进行当前深度级别以及下一深度级别的编码模式选择。本发明中,减少了编码的运算量,提升了编码速度。

Description

编码方法、编码器以及服务器
技术领域
本发明实施例涉及图像处理技术领域,特别涉及一种编码方法、编码器以及服务器。
背景技术
随着用户对视频清晰度要求的提高,使得高清视频的传输带宽需求也越来越大,进一步的对视频压缩算法的要求也越来越高,高效率视频编码(High Efficiency VideoCoding,简称HEVC)作为新一代的视频压缩编码标准,能够进行更高效率的视频编码。
HEVC标准支持64*64的分块,每个分块叫做一个编码单元(CodingUnit,简称CU),同时HEVC标准也支持非对称的矩形分块。在编码过程中,编码器对一个编码单元进行编码时,会对该编码单元进行帧内、帧间的编码模式选择,得到一个编码模式1;然后再将该CU分成4个正方形的子CU,分别对这4个子CU进行模式选择,得到编码模式2至5,然后分别计算编码模式1至编码模式5的代价,选择代价最小的编码模式作为当前CU的编码模式。
在上述编码模式的选择过程中,将当前CU分为4个子CU进行模式选择的过程是递归的,即4个子CU分别进行模式选择时,对于每个子CU来说,其仍然可以被分为4个CU,直至达到最小分块。因此,在现有的编码模式选择的过程中,计算量大、编码复杂度高,编码速度慢。
发明内容
本发明实施方式的目的在于提供一种编码方法、编码器以及服务器,能够结合待编码单元的深度级别与各目标编码区域的递归深度范围,来减少编码过程中对待编码单元进行递归划分的递归次数,从而减少了编码的运算量,提升了编码速度。
为解决上述技术问题,本发明的实施方式提供了一种编码方法,包括:获取与待编码单元相邻的N个目标编码区域,目标编码区域为与待编码单元大小相同的已编码的编码区域,N为大于或等于1的整数;获取各目标编码区域的递归深度范围与像素复杂度;根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式,编码方式包括:跳过当前深度级别的模式选择进行下一深度级别的编码模式选择、仅进行当前深度级别的编码模式选择以及同时进行当前深度级别以及下一深度级别的编码模式选择。
本发明的实施方式还提供了一种编码器,用于执行上述的编码方法。
本发明的实施方式还提供了一种服务器,包括上述的编码器。
本发明实施方式相对于现有技术而言,在确定待编码单元的编码模式时,首先获取与待编码单元相邻的N个目标编码区域,目标编码区域为与待编码单元大小相同的已编码的编码区域,N为大于或等于1的整数;然后,获取各目标编码区域的递归深度范围,并根据待编码单元的深度级别与各目标编码区域的递归深度范围,确定是否对待编码单元进行下一深度级别的编码模式选择;即能够结合待编码单元的深度级别与各目标编码区域的递归深度范围,来减少编码过程中对待编码单元进行递归划分的递归次数,从而减少了编码的运算量,提升了编码速度。
另外,递归深度范围包括:目标编码区域的最小递归深度与最大递归深度;根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式,包括:统计像素复杂度小于待编码单元且最小递归深度大于待编码单元的目标编码区域的数量记作第一数量;若第一数量大于第一预设阈值,则跳过当前深度级别的模式选择对待编码单元进行下一深度级别的编码模式选择;若第一数量小于或等于第一预设阈值,统计像素复杂度大于或等于待编码单元且最大递归深度小于或等于待编码单元的目标编码区域的数量记作第二数量;若第二数量大于第二预设阈值,则仅对待测编码单元进行当前深度级别的编码模式选择;若第二数量小于或等于第二预设阈值,则同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择。本实施方式提供了根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式的一种具体实现方式。
另外,在同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择之前,还包括:计算N个目标编码区域的最小递归深度的参考值;若最小递归深度的参考值减去待编码单元的深度级别的差值大于第三预设阈值,则跳过当前深度级别的模式选择对待编码单元进行下一深度级别的编码模式选择;若最小递归深度的参考值减去待编码单元的深度级别的差值小于或等于第三预设阈值,则同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择。本实施方式中,在确定待编码单元的编码方式时,结合了最小递归深度的参考值减去待编码单元的深度级别的差值,即能够根据具体情况选择待编码单元的编码方式,进一步减少了编码过程中对待编码单元进行递归划分的递归次数,从而进一步提升了编码速度。
另外,在最小递归深度的参考值减去待编码单元的深度级别的差值小于或等于第三预设阈值时,且在同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择之前,还包括:计算N个目标编码区域的最大递归深度的参考值;若待编码单元的深度级别减去最大递归深度的参考值的差值大于第四预设阈值,则仅对待测编码单元进行当前深度级别的编码模式选择;若待编码单元的深度级别减去最大递归深度的参考值的差值小于或等于第四预设阈值,则同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择。本实施方式中,在确定待编码单元的编码方式时,结合了待编码单元的深度级别减去最大递归深度的参考值的差值,即能够根据具体情况选择待编码单元的编码方式,进一步减少了编码过程中对待编码单元进行递归划分的递归次数,从而进一步提升了编码速度。
另外,参考值的计算方式为:根据各目标编码区域的像素复杂度与待编码单元的像素复杂度,设定各目标编码区域的权重值;根据各目标编码区域的目标递归深度与各目标编码区域的权重值,计算N个目标编码区域的目标递归深度的参考值,目标递归深度为最大递归深度或最小递归深度。本实施方式提供了参考值的一种具体计算方式。
另外,获取待编码单元的像素复杂度以及各目标编码区域的像素复杂度,包括:对于每个目标编码块,计算目标编码块作为目标编码单元的分块时,目标编码块与目标编码单元的最佳匹配块之间的像素差值作为目标编码块的像素复杂度;其中,目标编码块为待编码单元或目标编码区域,像素差值为绝对误差和或绝对变换误差和。本实施方式提供了获取待编码单元的像素复杂度以及各目标编码区域的像素复杂度的一种具体计算方式。
另外,获取待编码单元的像素复杂度以及各目标编码区域的像素复杂度,包括:对于每个目标编码块,将目标编码块划分为多个基本分块,并计算各基本分块与目标编码块的最佳匹配块之间的像素差值;其中,目标编码块为待编码单元或目标编码区域,像素差值为绝对误差和或绝对变换误差和;计算所有的基本分块的像素差值之和作为目标编码块的像素复杂度。本实施方式提供了获取待编码单元的像素复杂度以及各目标编码区域的像素复杂度的另一种具体计算方式。
另外,获取待编码单元的像素复杂度以及各目标编码区域的像素复杂度,包括:对于每个目标编码块,对目标编码块进行下采样,并计算下采样后的目标编码块的像素复杂度;其中,目标编码块为待编码单元或目标编码区域。本实施方式中,能够减少像素复杂度的计算量,以进一步提升编码速度。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是根据本发明第一实施方式中的调度方法的具体流程图;
图2是根据本发明第一实施方式中的一种编码分块的示意图;
图3是根据本发明第二实施方式中的调度方法的具体流程图;
图4是根据本发明第三实施方式中的调度方法的具体流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
本发明的第一实施方式涉及一种编码方法,应用于编码器,编码器可以支持HEVC、H.264、AV1、VCC等多种视频编码标准,该编码器可以使用在CDN网络的CDN节点服务器中,能够为用户提供高清视频的服务。
本实施例的编码方法的具体流程如图1所示。
步骤101,获取与待编码单元相邻的N个目标编码区域,目标编码区域为与待编码单元大小相同的已编码的编码区域,N为大于或等于1的整数。
具体而言,待编码单元可以为待编码的视频图像中的任意一个未编码的编码单元,对于一个待编码单元来说,待编码单元相邻的区域可以为一个编码单元、一个编码单元的一部分或者是由多个编码单元共同组成的区域。在对该待编码单元进行编码时,从与其相邻的区域中选取与待编码单元大小相同的已编码的编码区域,记作目标编码区域;目标编码区域的数量可以为N个,N为大于或等于1的正整数。以图2的编码分块示意图为例,待编码单元1周围的目标编码区域为4个,分别为目标编码区域2、目标编码区域3、目标编码区域4、目标编码区域5。其中,目标编码区域2为编码单元20的一部分,目标编码区域3为编码单元30的一部分,目标编码区域4为一个单独的编码单元,目标编码区域5包括多个编码单元。
步骤102,获取各目标编码区域的递归深度范围与像素复杂度。
具体而言,对于每个目标编码区域,其可以为一个编码单元、一个编码单元的一部分或者是由多个编码单元共同组成的区域,从而根据该目标编码区域的类型,获取该目标编码区域的递归深度范围;以图2为例,此时能够分别获取目标编码区域1至目标编码区域5的递归深度范围。另外,像素复杂度能够衡量视频图像中不同区域的画面复杂程度;在得到待编码单元的目标编码区域后,分别计算各目标编码区域的像素复杂度。
步骤103,根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式,编码方式包括:跳过当前深度级别的模式选择进行下一深度级别的编码模式选择、仅进行当前深度级别的编码模式选择以及同时进行当前深度级别以及下一深度级别的编码模式选择。
具体而言,获取待编码单元的像素复杂度以及待编码单元的深度级别;以编码器最大允许64*64的编码单元大小为例,则64*64的编码单元的深度级别为0、32*32的编码单元的深度级别为1、16*16的编码单元的深度级别为2、8*8的编码单元的深度级别为3。然后,根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式,编码方式包括:跳过当前深度级别的模式选择进行下一深度级别的编码模式选择、仅进行当前深度级别的编码模式选择以及同时进行当前深度级别以及下一深度级别的编码模式选择;即能够结合待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定出待编码单元的编码方式,在对待编码单元进行编码模式选择的过程中,无需每次都同时进行当前深度级别以及下一深度级别的编码模式选择,也可以跳过当前深度级别的模式选择进行下一深度级别的编码模式选择、或仅进行当前深度级别的编码模式选择,减少了编码过程中对待编码单元进行递归划分的递归次数。
本实施例中,在确定待编码单元的编码模式时,首先获取与待编码单元相邻的N个目标编码区域,目标编码区域为与待编码单元大小相同的已编码的编码区域,N为大于或等于1的整数;然后,获取各目标编码区域的递归深度范围与像素复杂度,并根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式,编码方式包括:跳过当前深度级别的模式选择进行下一深度级别的编码模式选择、仅进行当前深度级别的编码模式选择以及同时进行当前深度级别以及下一深度级别的编码模式选择;即能够结合待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定出待编码单元的编码方式,在对待编码单元进行编码模式选择的过程中,无需每次都同时进行当前深度级别以及下一深度级别的编码模式选择,也可以跳过当前深度级别的模式选择进行下一深度级别的编码模式选择、或仅进行当前深度级别的编码模式选择,减少了编码过程中对待编码单元进行递归划分的递归次数,从而减少了编码的运算量,提升了编码速度。
本发明第二实施方式涉及一种编码方法,本实施方式相对于第一实施方式而言,主要区别之处在于:提供了根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式的一种具体实现方式。
本实施方式的编码方法的具体流程如图3所示。
步骤201,获取与待编码单元相邻的N个目标编码区域,目标编码区域为与待编码单元大小相同的已编码的编码区域,N为大于或等于1的整数。与第一实施方式中的步骤101大致相同,在此不再赘述。
步骤202,获取各目标编码区域的递归深度范围与像素复杂度。
具体而言,像素复杂度能够衡量视频图像中不同区域的画面复杂程度;在得到待编码单元的目标编码区域后,分别各目标编码区域的像素复杂度。
递归深度范围包括:该目标编码区域的最小递归深度与最大递归深度。对于每个目标编码区域来说,若该目标编码区域为一个编码单元,则该目标编码区域的递归深度范围中的最小递归深度与最大递归深度均为该目标编码区域的深度级别;若该目标编码区域为一个编码单元的一部分,则该目标编码区域的递归深度范围中的最小递归深度与最大递归深度为目标编码区域所属的编码单元的深度级别;若该目标编码区域为由多个编码单元共同组成的区域,则该目标编码区域的递归深度范围中的最小递归深度与最大递归深度为目标编码区域包含的多个编码单元的深度级别的最小值和最大值。
步骤203,包括以下子步骤:
子步骤2031,统计像素复杂度小于待编码单元且最小递归深度大于待编码单元的目标编码区域的数量记作第一数量,并判断第一数量是否大于第一预设阈值。若是,则进入子步骤2032;若否,则进入子步骤2033。
子步骤2032,跳过当前深度级别的模式选择对待编码单元进行下一深度级别的编码模式选择。
子步骤2033,统计像素复杂度大于或等于待编码单元且最大递归深度小于或等于待编码单元的目标编码区域的数量记作第二数量,并判断第二数量是否大于第二预设阈值。若是,则进入子步骤2034;若否,则进入子步骤2035。
子步骤2034,仅对待测编码单元进行当前深度级别的编码模式选择。
子步骤2035,同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择。
具体而言,统计像素复杂度小于待编码单元且最小递归深度大于待编码单元的目标编码区域的数量记作第一数量,并判断第一数量是否大于第一预设阈值。若第一数量大于第一预设阈值,跳过当前深度级别的编码模式选择,并对待编码单元进行下一深度级别的编码模式选择,即将待编码单元进行分块,并对待编码单元的各个分块分别进行编码模式选择,对于每个分块来说,同样可以采样本实施方式中的编码方法,以确定各分块的编码模式;然后,计算确定出的各编码模式的代价值,选取代价最小的编码模式作为待编码单元的编码模式。
若第一数量小于或等于第一预设阈值,统计像素复杂度大于或等于待编码单元且最大递归深度小于或等于待编码单元的目标编码区域的数量记作第二数量,并判断第二数量是否大于第二预设阈值。若第二数量大于第二预设阈值,则仅对待编码单元在当前深度级别进行帧内、帧间的编码模式选择,不再对待编码单元进行下一深度级别的编码模式选择;若第二数量小于或等于第二预设阈值,则同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择,首先对待编码单元在当前深度级别进行帧内、帧间的编码模式选择,然后将待编码单元进行分块,并对待编码单元的各个分块分别进行编码模式选择;然后,计算确定出的各编码模式的代价值,选取代价最小的编码模式作为待编码单元的编码模式。其中,第一预设阈值与第二预设阈值可以设置为小于或等于待编码单元的相邻区域的的数量。
本实施方式中,像素复杂度的具体计算方式包括以下两种:
第一种,对于每个目标编码块,计算目标编码块作为目标编码单元的分块时,目标编码块与目标编码单元的最佳匹配块之间的像素差值作为目标编码块的像素复杂度;其中,目标编码块为待编码单元或目标编码区域,像素差值为绝对误差和或绝对变换误差和。即将待编码单元或目标编码区域作为目标编码块,然后将目标编码块作为一个目标编码单元的分块,首先对该目标编码单元进行帧内、帧间编码模式的选择,然后确定出代价最小的编码模式所对应的分块作为目标编码单元的最佳匹配块,然后计算目标编码块与待编码模块之间的像素差值,该像素差值即为待编码单元的像素复杂度,像素差值可以为绝对误差和或绝对变换误差和。
第二种,对于每个目标编码块,将目标编码块划分为多个基本分块,并计算各基本分块与目标编码块的最佳匹配块之间的像素差值;其中,目标编码块为待编码单元或目标编码区域,像素差值为绝对误差和或绝对变换误差和;计算所有的基本分块的像素差值之和作为目标编码块的像素复杂度。即将待编码单元或目标编码区域作为目标编码块,然后将目标编码块分为多个基本块,并进行编码模式的选择,将确定出代价最小的编码模式所对应的基本块作为目标编码块的最佳匹配块。再分别计算各基本块与最佳匹配块之间的像素差值,像素差值可以为绝对误差和或绝对变换误差和,然后计算所有的基本块的像素差值之和作为目标编码块的像素复杂度。
在一个例子中,在获取待编码单元的像素复杂度以及各目标编码区域的像素复杂度时,将待编码单元或目标编码区域作为目标编码块,然后对目标编码块进行下采样,即以使得目标编码块对应的图像符合预设区域的大小,生成目标编码块对应的图像的缩略图像;然后计算下采样后的目标编码块的像素复杂度,从而能够减少像素复杂度的计算量,以进一步提升编码速度。
需要说明的是,本实施方式中,在计算出各目标编码块(可以为待编码单元或目标编码区域)的像素复杂度后,可以对各目标编码块的像素复杂度进行缓存,从而在后续使用像素复杂度时可以直接调用,以避免重复计算像素复杂度,减少了计算量。
本实施方式相对于第一实施方式而言,提供了根据待编码单元的深度级别与像素复杂度以及各目标编码区域的递归深度范围与像素复杂度,确定待编码单元的编码方式的一种具体实现方式。
本发明第三实施方式涉及一种编码方法,本实施方式相对于第二实施方式而言,主要改进之处在于:增加了利用N个目标编码区域的最大递归深度的参考值、最小递归深度的参考值对编码模式的选择方式的筛选。
本实施方式的编码方法的具体流程如图4所示。
步骤301,获取与待编码单元相邻的N个目标编码区域,目标编码区域为与待编码单元大小相同的已编码的编码区域,N为大于或等于1的整数。与第二实施方式中的步骤201大致相同,在此不再赘述。
步骤302,获取各目标编码区域的递归深度范围与像素复杂度。与第二实施方式中的步骤202大致相同,在此不再赘述。
步骤303,包括以下子步骤:
子步骤3031,统计像素复杂度小于待编码单元且最小递归深度大于待编码单元的目标编码区域的数量记作第一数量,并判断第一数量是否大于第一预设阈值。若是,则进入子步骤3032;若否,则进入子步骤3033。
子步骤3032,跳过当前深度级别的模式选择对待编码单元进行下一深度级别的编码模式选择。
子步骤3033,统计像素复杂度大于或等于待编码单元且最大递归深度小于或等于待编码单元的目标编码区域的数量记作第二数量,并判断第二数量是否大于第二预设阈值。若是,则进入子步骤3034;若否,则进入子步骤3035。
子步骤3034,仅对待测编码单元进行当前深度级别的编码模式选择。
子步骤3035,计算N个目标编码区域的最小递归深度的参考值,并判断最小递归深度的参考值减去待编码单元的深度级别的差值是否大于第三预设阈值。若是,则进入子步骤3032;若否,则进入子步骤3036。
子步骤3036,计算N个目标编码区域的最大递归深度的参考值,并判断待编码单元的深度级别减去最大递归深度的参考值的差值是否大于第四预设阈值。若是,则进入子步骤3034;若否,则进入子步骤3037。
子步骤3037,同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择。
具体而言,统计像素复杂度小于待编码单元且最小递归深度大于待编码单元的目标编码区域的数量记作第一数量,并判断第一数量是否大于第一预设阈值。若第一数量大于第一预设阈值,跳过当前深度级别的编码模式选择,并对待编码单元进行下一深度级别的编码模式选择,即将待编码单元进行分块,并对待编码单元的各个分块分别进行编码模式选择,对于每个分块来说,同样可以采样本实施方式中的编码方法,以确定各分块的编码模式;然后,计算确定出的各编码模式的代价值,选取代价最小的编码模式作为待编码单元的编码模式。
若第一数量小于或等于第一预设阈值,统计像素复杂度大于或等于待编码单元且最大递归深度小于或等于待编码单元的目标编码区域的数量记作第二数量,并判断第二数量是否大于第二预设阈值。若第二数量大于第二预设阈值,则仅对待编码单元在当前深度级别进行帧内、帧间的编码模式选择,不再对待编码单元进行下一深度级别的编码模式选择;若第二数量小于或等于第二预设阈值,计算N个目标编码区域的最小递归深度的参考值和最大递归深度的参考值,然后计算最小递归深度的参考值减去待编码单元的深度级别的差值(记作第一差值),并判断第一差值是否大于第三预设阈值,若第一差值大于第三预设阈值,跳过当前深度级别的编码模式选择,并对待编码单元进行下一深度级别的编码模式选择,即将待编码单元进行分块,并对待编码单元的各个分块分别进行编码模式选择,对于每个分块来说,同样可以采样本实施方式中的编码方法,以确定各分块的编码模式;然后,计算确定出的各编码模式的代价值,选取代价最小的编码模式作为待编码单元的编码模式。
若第一差值小于或等于第三预设阈值,则计算待编码单元的深度级别减去最大递归深度的参考值的差值(记作第二差值),并判断第二差值是否大于第四预设阈值。若第二差值大于第四预设阈值,则仅对待编码单元在当前深度级别进行帧内、帧间的编码模式选择,不再对待编码单元进行下一深度级别的编码模式选择;若第二差值小于或等于第四预设阈值,则对待编码单元进行正常的编码模式选择,即同时对待测编码单元进行当前深度级别以及下一深度级别的编码模式选择,首先对待编码单元在当前深度级别进行帧内、帧间的编码模式选择,然后将待编码单元进行分块,并对待编码单元的各个分块分别进行编码模式选择;然后,计算确定出的各编码模式的代价值,选取代价最小的编码模式作为待编码单元的编码模式。
需要说明的是,本实施方式中可以通过第三预设阈值和第四预设阈值的调整,来选择是跳过当前深度级别的编码模式选择,并对待编码单元进行下一深度级别的编码模式选择,或者仅执行当前深度级别的编码模式选择。
本实施例中,参考值可以为算数平均值或加权平均值。以参考值为加权平均值为例,参考值的计算方式为:根据各目标编码区域的像素复杂度与待编码单元的像素复杂度,设定各目标编码区域的权重值;根据各目标编码区域的目标递归深度与各目标编码区域的权重值,计算N个目标编码区域的目标递归深度的参考值,目标递归深度为最大递归深度或最小递归深度。
下面以计算最小递归深度的参考值为例进行详细说明,当然最大递归深度的参考值的方法也可以参照以下方式计算得出,在此不再赘述。
对于每个目标编码区域,基于该目标编码区域的像素复杂度与待编码单元的像素复杂度,设定该目标编码区域的权重值,像素复杂度能够衡量视频图像中不同区域的画面复杂程度;例如,可以根据目标编码区域的像素复杂度与待编码单元的像素复杂度的接近程度来设定目标编码区域的权重,即目标编码区域的像素复杂度与待编码单元的像素复杂度越接近,则设定该目标编码区域的权重越大。在一个例子中,可以按照下面的公式来设定各目标编码区域的权重。
其中,C0表示待编码单元的像素复杂度,Ci表示第i个目标编码区域的像素复杂度,fi表示第i个目标编码区域的权重值。
在设定了各目标编码区域的权重值以后,再根据下面的公式来计算最小递归深度的参考值。
avgD表示最小递归深度的参考值,fi表示第i个目标编码区域的权重值,N为目标编码区域的数量,Di表示第i个目标编码区域的最小递归深度。
本实施方式相对于第二实施方式而言,在确定待编码单元的编码方式时,进一步结合了最小递归深度的参考值减去待编码单元的深度级别的差值与待编码单元的深度级别减去最大递归深度的参考值的差值,即能够根据具体情况选择待编码单元的编码方式,进一步减少了编码过程中对待编码单元进行递归划分的递归次数,从而进一步提升了编码速度。
本发明第四实施方式涉及一种编码器,编码器可以支持HEVC、H.264、AV1、VCC等多种视频编码标准,该编码器可以使用在CDN网络的CDN节点服务器中,能够为用户提供高清视频的服务。本实施方式中的编码器能够执行第一实施方式至第三实施方式中任一项的编码方法。
本发明第五实施方式涉及一种服务器,服务器可以为CDN网络的CDN节点服务器,该CDN节点服务器包括第四实施方式中的编码器,能够为用户提供高清视频的服务;编码器可以支持HEVC、H.264、AV1、VCC等多种视频编码标准。
本实施方式中的服务器还可以是:包括至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行第一实施方式至第三实施方式中任一项的编码方法。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (9)

1.一种编码方法,其特征在于,包括:
获取与待编码单元相邻的N个目标编码区域,所述目标编码区域为与所述待编码单元大小相同的已编码的编码区域,N为大于或等于1的整数;
获取各所述目标编码区域的递归深度范围与像素复杂度;
根据所述待编码单元的深度级别与像素复杂度以及各所述目标编码区域的递归深度范围与像素复杂度,确定所述待编码单元的编码方式,所述编码方式包括:跳过当前深度级别的模式选择进行下一深度级别的编码模式选择、仅进行当前深度级别的编码模式选择以及同时进行当前深度级别以及下一深度级别的编码模式选择;
所述递归深度范围包括:所述目标编码区域的最小递归深度与最大递归深度;所述根据所述待编码单元的深度级别与像素复杂度以及各所述目标编码区域的递归深度范围与像素复杂度,确定所述待编码单元的编码方式,包括:
统计像素复杂度小于所述待编码单元且最小递归深度大于所述待编码单元的所述目标编码区域的数量记作第一数量;
若所述第一数量小于或等于第一预设阈值,统计像素复杂度大于或等于所述待编码单元且最大递归深度小于或等于所述待编码单元的所述目标编码区域的数量记作第二数量;
若所述第二数量小于或等于第二预设阈值,则同时对所述待编码单元进行当前深度级别以及下一深度级别的编码模式选择;
在所述同时对所述待编码单元进行当前深度级别以及下一深度级别的编码模式选择之前,还包括:
计算所述N个目标编码区域的最小递归深度的参考值;所述参考值为所述N个目标编码区域的最小递归深度的算数平均值或加权平均值;
若所述最小递归深度的参考值减去所述待编码单元的深度级别的差值大于第三预设阈值,则跳过当前深度级别的模式选择对所述待编码单元进行下一深度级别的编码模式选择;
若所述最小递归深度的参考值减去所述待编码单元的深度级别的差值小于或等于第三预设阈值,则同时对所述待编码单元进行当前深度级别以及下一深度级别的编码模式选择。
2.根据权利要求1所述的编码方法,其特征在于,若所述第一数量大于第一预设阈值,则跳过当前深度级别的模式选择对所述待编码单元进行下一深度级别的编码模式选择;
若所述第二数量大于所述第二预设阈值,则仅对所述待编码单元进行当前深度级别的编码模式选择。
3.根据权利要求1所述的编码方法,其特征在于,在所述最小递归深度的参考值减去所述待编码单元的深度级别的差值小于或等于第三预设阈值时,且在所述同时对所述待编码单元进行当前深度级别以及下一深度级别的编码模式选择之前,还包括:
计算所述N个目标编码区域的最大递归深度的参考值;所述N个目标编码区域的最大递归深度的参考值为所述N个目标编码区域的最大递归深度的算数平均值或加权平均值;
若所述待编码单元的深度级别减去所述最大递归深度的参考值的差值大于第四预设阈值,则仅对所述待编码单元进行当前深度级别的编码模式选择;
若所述待编码单元的深度级别减去所述最大递归深度的参考值的差值小于或等于第四预设阈值,则同时对所述待编码单元进行当前深度级别以及下一深度级别的编码模式选择。
4.根据权利要求1或3所述的编码方法,其特征在于,所述参考值为加权平均值;所述参考值的计算方式为:
根据各所述目标编码区域的像素复杂度与所述待编码单元的像素复杂度,设定各所述目标编码区域的权重值;
根据各所述目标编码区域的目标递归深度与各所述目标编码区域的权重值,计算所述N个目标编码区域的目标递归深度的参考值,所述目标递归深度为最大递归深度或最小递归深度。
5.根据权利要求1所述的编码方法,其特征在于,所述获取所述待编码单元的像素复杂度以及各所述目标编码区域的像素复杂度,包括:
对于每个目标编码块,计算所述目标编码块作为目标编码单元的分块时,所述目标编码块与所述目标编码单元的最佳匹配块之间的像素差值作为所述目标编码块的像素复杂度;其中,所述目标编码块为所述待编码单元或所述目标编码区域,所述像素差值为绝对误差和或绝对变换误差和。
6.根据权利要求1所述的编码方法,其特征在于,所述获取所述待编码单元的像素复杂度以及各所述目标编码区域的像素复杂度,包括:
对于每个目标编码块,将所述目标编码块划分为多个基本分块,并计算各所述基本分块与所述目标编码块的最佳匹配块之间的像素差值;其中,所述目标编码块为所述待编码单元或所述目标编码区域,所述像素差值为绝对误差和或绝对变换误差和;
计算所有的所述基本分块的像素差值之和作为所述目标编码块的像素复杂度。
7.根据权利要求1所述的编码方法,其特征在于,所述获取所述待编码单元的像素复杂度以及各所述目标编码区域的像素复杂度,包括:
对于每个目标编码块,对所述目标编码块进行下采样,并计算下采样后的所述目标编码块的像素复杂度;其中,所述目标编码块为所述待编码单元或所述目标编码区域。
8.一种编码器,其特征在于,用于执行权利要求1至7中任一项所述的编码方法。
9.一种服务器,其特征在于,包括:权利要求8所述的编码器。
CN202011192534.0A 2020-10-30 2020-10-30 编码方法、编码器以及服务器 Active CN112383774B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011192534.0A CN112383774B (zh) 2020-10-30 2020-10-30 编码方法、编码器以及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011192534.0A CN112383774B (zh) 2020-10-30 2020-10-30 编码方法、编码器以及服务器

Publications (2)

Publication Number Publication Date
CN112383774A CN112383774A (zh) 2021-02-19
CN112383774B true CN112383774B (zh) 2023-10-03

Family

ID=74576915

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011192534.0A Active CN112383774B (zh) 2020-10-30 2020-10-30 编码方法、编码器以及服务器

Country Status (1)

Country Link
CN (1) CN112383774B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103338370A (zh) * 2013-06-05 2013-10-02 宁波大学 一种多视点深度视频快速编码方法
CN103517069A (zh) * 2013-09-25 2014-01-15 北京航空航天大学 一种基于纹理分析的hevc帧内预测快速模式选择方法
CN104113754A (zh) * 2014-07-17 2014-10-22 四川大学 基于时域相关性的高性能视频帧间编码方法及其转码器
CN104125469A (zh) * 2014-07-10 2014-10-29 中山大学 一种用于hevc的快速编码方法
CN104360945A (zh) * 2014-11-18 2015-02-18 电信科学技术第十研究所 一种测试用例筛选的计算机实现的方法、计算机及***
CN104602017A (zh) * 2014-06-10 2015-05-06 腾讯科技(北京)有限公司 视频编码器、方法和装置及其帧间模式选择方法和装置
CN104702958A (zh) * 2013-12-05 2015-06-10 中国科学院深圳先进技术研究院 一种基于空间相关性的hevc帧内编码方法及***
CN106105220A (zh) * 2014-01-07 2016-11-09 诺基亚技术有限公司 用于视频编码和解码的方法和装置
CN108322747A (zh) * 2018-01-05 2018-07-24 中国软件与技术服务股份有限公司 一种面向超高清视频的编码单元划分优化方法
CN109274965A (zh) * 2018-11-27 2019-01-25 广东工业大学 Hevc中基于像素值统计特性的快速预测模式选择方法
CN110113600A (zh) * 2018-02-01 2019-08-09 腾讯科技(深圳)有限公司 视频编码方法、装置、计算机可读存储介质和计算机设备
CN110300302A (zh) * 2019-06-05 2019-10-01 锐捷网络股份有限公司 一种视频编码方法、装置和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10834384B2 (en) * 2017-05-15 2020-11-10 City University Of Hong Kong HEVC with complexity control based on dynamic CTU depth range adjustment

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103338370A (zh) * 2013-06-05 2013-10-02 宁波大学 一种多视点深度视频快速编码方法
CN103517069A (zh) * 2013-09-25 2014-01-15 北京航空航天大学 一种基于纹理分析的hevc帧内预测快速模式选择方法
CN104702958A (zh) * 2013-12-05 2015-06-10 中国科学院深圳先进技术研究院 一种基于空间相关性的hevc帧内编码方法及***
CN106105220A (zh) * 2014-01-07 2016-11-09 诺基亚技术有限公司 用于视频编码和解码的方法和装置
CN104602017A (zh) * 2014-06-10 2015-05-06 腾讯科技(北京)有限公司 视频编码器、方法和装置及其帧间模式选择方法和装置
CN104125469A (zh) * 2014-07-10 2014-10-29 中山大学 一种用于hevc的快速编码方法
CN104113754A (zh) * 2014-07-17 2014-10-22 四川大学 基于时域相关性的高性能视频帧间编码方法及其转码器
CN104360945A (zh) * 2014-11-18 2015-02-18 电信科学技术第十研究所 一种测试用例筛选的计算机实现的方法、计算机及***
CN108322747A (zh) * 2018-01-05 2018-07-24 中国软件与技术服务股份有限公司 一种面向超高清视频的编码单元划分优化方法
CN110113600A (zh) * 2018-02-01 2019-08-09 腾讯科技(深圳)有限公司 视频编码方法、装置、计算机可读存储介质和计算机设备
CN109274965A (zh) * 2018-11-27 2019-01-25 广东工业大学 Hevc中基于像素值统计特性的快速预测模式选择方法
CN110300302A (zh) * 2019-06-05 2019-10-01 锐捷网络股份有限公司 一种视频编码方法、装置和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
通信.《中国无线电电子学文摘》.2008,(第05期), *

Also Published As

Publication number Publication date
CN112383774A (zh) 2021-02-19

Similar Documents

Publication Publication Date Title
EP1797722B1 (en) Adaptive overlapped block matching for accurate motion compensation
US9451255B2 (en) Image encoding apparatus, image encoding method, image decoding apparatus, and image decoding method
US10448015B2 (en) Method and device for performing adaptive filtering according to block boundary
US6192148B1 (en) Method for determining to skip macroblocks in encoding video
JP4711712B2 (ja) 行ベクトルおよび列ベクトルを用いた動きベクトル検出
US20030059120A1 (en) Image predictive coding method
US20060104527A1 (en) Video image encoding method, video image encoder, and video image encoding program
EP0762776A2 (en) A method and apparatus for compressing video information using motion dependent prediction
JP2005318620A (ja) 適応時間予測を用いた動きベクトル検出
KR100922510B1 (ko) 영상의 부호화 및 복호화 방법, 장치 및 그 애플리케이션
US20070047651A1 (en) Video prediction apparatus and method for multi-format codec and video encoding/decoding apparatus and method using the video prediction apparatus and method
JP5133290B2 (ja) 動画像符号化装置および復号装置
JP2003018603A (ja) 動画像符号化方法及び装置
JP2015103970A (ja) 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、及び動画像撮影装置
US6748114B1 (en) Moving picture encoding method and moving picture encoding apparatus
US8594192B2 (en) Image processing apparatus
CN114900691B (zh) 编码方法、编码器及计算机可读存储介质
US8144775B2 (en) Method and device for generating candidate motion vectors from selected spatial and temporal motion vectors
JP2007515115A (ja) 内挿される画素値の計算方法の改良
CN113068025B (zh) 解码预测方法、装置及计算机存储介质
US20230396780A1 (en) Illumination compensation method, encoder, and decoder
CN112383774B (zh) 编码方法、编码器以及服务器
WO2022077490A1 (zh) 一种帧内预测方法、编码器、解码器及存储介质
CN113395520A (zh) 解码预测方法、装置及计算机存储介质
US7706440B2 (en) Method for reducing bit rate requirements for encoding multimedia data

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