CN105681812A - Hevc帧内编码处理方法和装置 - Google Patents

Hevc帧内编码处理方法和装置 Download PDF

Info

Publication number
CN105681812A
CN105681812A CN201610192577.6A CN201610192577A CN105681812A CN 105681812 A CN105681812 A CN 105681812A CN 201610192577 A CN201610192577 A CN 201610192577A CN 105681812 A CN105681812 A CN 105681812A
Authority
CN
China
Prior art keywords
rate distortion
distortion costs
costs
specific brightness
next layer
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.)
Granted
Application number
CN201610192577.6A
Other languages
English (en)
Other versions
CN105681812B (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
Tencent Cloud Computing Beijing 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 CN201610192577.6A priority Critical patent/CN105681812B/zh
Publication of CN105681812A publication Critical patent/CN105681812A/zh
Application granted granted Critical
Publication of CN105681812B publication Critical patent/CN105681812B/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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/124Quantisation
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/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/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

Landscapes

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

Abstract

一种HEVC帧内编码处理方法,用于简化率失真代价的计算过程,提高HEVC编码速度。在本发明一些可行的实施方式中,方法包括:计算第一亮度率失真代价和第二亮度率失真代价,所述第一亮度率失真代价是当前层的第一CU的亮度分量的率失真代价,所述第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价;比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。本发明实施例还提供相应的装置。

Description

HEVC帧内编码处理方法和装置
技术领域
本发明涉及视频编码技术领域,具体涉及一种HEVC帧内编码处理方法和装置。
背景技术
高效视频编码(HighEfficiencyVideoCoding,HEVC)是下一代新的视频压缩标准,其目标是视频压缩效率比现有H.264/AVC(AdvancedVideoCoding,高级视频编码)HighProfile(高端规格)提高30%以上,以用于替代H.264/AVC编码标准。
编码树单元(Codingtreeunit,CTU)是HEVC编码基本单元,类似于H.264/AVC中的宏区块(Macroblock),CTU的大小可以从16x16到64x64,单位为像素。CTU可以包含一个编码单元(CodingUnit,CU)或是切割划分成多个较小的CU。CU是HEVC帧间和帧内编码的最基本单元,尺寸大小可以为64×64、32×32、16×16和8×8,单位为像素。
HEVC编码技术中,视频的每一帧图像被分割成CTU,每个CTU可以是一个CU,也可以进一步划分为多个CU。在HEVC帧内编码,或者说I帧编码中,CU划分采用四叉树遍历递归的方式进行,即从大到小依次遍历所有可能的CU类型,计算每一层CU的率失真代价,然后选取代价最小的CU块组合类型。率失真代价的大小是确定CU划分的准则。
实践发现,率失真代价的计算过程中需要经过预测、变换量化、CABAC(Context-basedAdaptiveBinaryArithmeticCoding,适应性二元算术编码)编码、反变换反量化等过程,是整个帧内编码过程中计算最复杂、最耗时的部分,严重影响HEVC编码速度。
发明内容
本发明实施例提供一种HEVC帧内编码处理方法和装置,用于简化率失真代价的计算过程,提高HEVC编码速度。
本发明第一方面提供一种HEVC帧内编码处理方法,包括:计算第一亮度率失真代价和第二亮度率失真代价,所述第一亮度率失真代价是当前层的第一CU的亮度分量的率失真代价,所述第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价;比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。
本发明第二方面提供一种HEVC帧内编码处理装置,包括:计算模块,用于计算第一亮度率失真代价和第二亮度率失真代价,所述第一亮度率失真代价是当前层的第一CU的亮度分量的率失真代价,所述第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价;处理模块,用于比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。
本发明第三方面提供一种计算机设备,包括处理器、存储器、总线和通信接口;所述存储器用于存储程序,所述处理器与所述存储器通过所述总线连接,当所述计算机设备运行时,所述处理器执行所述存储器存储的所述程序,以使所述计算机设备执行如第一方面所述的HEVC帧内编码处理方法。
本发明第四方面提供一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当被包括一个或多个处理器的计算机设备执行时,使所述计算机设备执行如第一方面所述的HEVC帧内编码处理方法。
由上可见,在本发明的一些可行的实施方式中,采用分别计算当前层CU和下一层多个CU的亮度分量的率失真代价,直接以亮度分量的率失真代价为划分准则,判断是否继续向下一层划分的技术方案,采用该方案,可以部分跳过色度分量的率失真代价的计算过程,从而可以减少计算量,提高计算速度,于是,简化了率失真代价的计算过程,有助于提高HEVC编码速度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例和现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是HM和x265方案的编码流程示意图;
图2是率失真代价的计算过程的示意图;
图3是本发明实施例提供的一种HEVC帧内编码处理方法的流程示意图;
图4是本发明实施例的另一种HEVC帧内编码处理方法的流程示意图;
图5是本发明实施例提供的一种HEVC帧内编码处理装置的结构示意图;
图6是本发明实施例提供的一种计算机设备的结构示意图;
图7是本发明实施例中CU结构的划分示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同的对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明技术方案应用于视频编码技术领域。衡量视频编码标准性能的指标主要是编码码率和编码失真。其中,编码码率是指编码块经过预测编码得到的残差,再经过变换、量化最后得到的编码信息。图像失真是指重建块和原始块的图像的差值。较少的编码比特数有利于存储或者网络传输,但重构视频编码失真更大;反之,就会增加编码比特数。这两个指标是相互制约和相互矛盾的。
在视频编码中,可使用率失真优化(Rate-DistortionOptimization,RDO)技术来实现码率与失真之间的折中。RDO是一种视频编码技术,用于在尽可能小的编码码率下,减少图像失真度,使得编码效率达到最高。RDO的目的是:在一定的比特率下,如何使重建图像的失真最小;或者允许一定失真的条件下,用最小的比特数来编码图像。
下一代视频压缩标准HEVC包含了众多高复杂度的编码算法,编码速度受到限制,因而提高HEVC视频编码速度是非常现实的需求。HEVC编码技术中,视频的每一帧图像被分割成CTU,每个CTU可以包含一个CU,也可以进一步划分为多个CU。其中,在I帧(Intra-frame,帧内编码帧)编码中,使用RDO计算得到的率失真代价(Rate-DistortionCost,RDCost)作为CU划分的准则,CU划分中RDO的计算是最耗时的部分,这增加了HEVC的编码复杂度。
在HEVC帧内编码,也就是I帧编码中,CU划分通常采用四叉树遍历递归的方式进行,即从大到小依次遍历所有可能的CU块类型,计算每一层CU的率失真代价,然后选取代价最小的CU块组合类型。
HM和x265是实现HEVC编码的两种方案,其中,HM是HEVC的一个官方标准测试模型,x265是一个用于编码符合高效视频编码(HEVC/H.265)标准的视频的开源自由软件及函数库。这两种方案都是以亮度分量和色度分量的率失真代价(RDCost)之和作为是否继续向下层划分的准则。
如图1所示,编码流程可以包括:
计算当前层CU的包括亮度分量和色度分量的总的率失真代价,用RDCost_cur表示;
计算当前层CU对应的下一层四个子CU的包括亮度分量和色度分量的总的率失真代价的和,用RDCost_next表示;
比较RDCost_cur和RDCost_next的大小,如果RDCost_cur>RDCost_next,则继续向下划分,否则停止划分。
如图2所示,是率失真代价的计算过程。在进行RDO计算时,首先得到待编码CU块的预测数据,与原始数据相减得到残差。残差数据经过变换量化、CABAC编码得到比特数(bits),再经过反变换反量化,得到重构数据,最终计算出失真(distortion)。由比特数(bits)和失真(distortion)计算得到最终RDCost。
由此可见,RDO的过程中需要经过预测、变换量化、CABAC编码、反变换反量化等过程。因此,计算率失真代价是整个帧内编码过程中计算最复杂、最耗时的部分,严重影响HEVC编码速度。简化RDO流程,或减少编码过程中RDO的次数,可以显著提高编码速度。
为此,本发明实施例提供一种HEVC帧内编码处理方法和装置,用于简化率失真代价的计算过程,提高HEVC编码速度。
下面通过具体实施例,分别进行详细的说明。
请参考图3,本发明实施例提供一种HEVC帧内编码处理方法。
本发明实施例方法应用于HEVC帧内编码的CU划分流程。HEVC编码技术中,视频的每一帧图像被分割成CTU,每个CTU可以是一个CU,也可以进一步划分为多个CU。I帧编码中,CU划分通常采用四叉树遍历递归的方式进行。
CU的划分可以从CTU开始,此时CTU只包含有一个CU,也就是第0层的CU。举例来说,CTU的大小可以是64×64,单位为像素。
然后,可以采用四叉树方法将第0层的CU划分为4个子CU,这4个子CU是第1层的CU;举例来说,第1层CU的大小可以是32×32,单位为像素。
然后,将第1层的一个CU再次划分为4个子CU,这4个子CU是第2层的CU;举例来说,第2层CU的大小可以是16×16,单位为像素。
最后,将第2层的一个CU再次划分为4个子CU,这4个子CU是3层的CU;举例来说,第3层CU的大小可以是8×8,单位为像素。
其中,在每一层,计算当前层CU的率失真代价,以及对应的下一层的四个子CU的率失真代价,判断是否继续向下一层划分,目的是选取率失真代价最小的CU块组合类型。
实际应用中,最终可能划分到第3层,得到大小是8×8的CU;但是,也能是其它层划分的CU的率失真代价最小,最终划分到第2层或第1层甚至第0层就不再继续向下一层划分了。
另外,目前HEVC的CU包括以上四种大小不同的类型,但未来也可能有更多种大小不同的类型,CU划分时可能不限于四层,也能有更多层。
其中,划分的层数也可以称为划分深度,例如,第0、1、2、3层的划分深度分别为0、1、2、3。
请参考图3,本发明实施例提供的HEVC帧内编码处理方法,用在上述的CU划分过程中,该方法可包括:
301、计算第一亮度率失真代价和第二亮度率失真代价,所述第一亮度率失真代价是当前层的第一CU的亮度分量的率失真代价,所述第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价。
通常,可以采用四叉树遍历递归的方式进行CU划分,这时每一层的CU对应于下一层的4个子CU,所述第一CU对应于相同大小的4个第二CU,每个第二CU对应于所述第一CU的四分之一个象限。
如图7所示的CU结构的划分示意图,如果用一个大方框表示第一CU,则可以将该大方框按照对应边的中点连线等分为四个小方框,每个小方框相当于一个第二CU。
值得说明的是,本步骤中在计算第一CU和第二CU的率失真代价时,仅仅计算亮度分量的率失真代价,而暂不计算色度分量的率失真代价。其中,第一亮度率失真代价是当前层的第一CU的亮度分量的率失真代价。第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价。这里,需要指出的是,第二亮度率失真代价是多个第二CU的亮度分量的率失真代价的和。
为便于描述,下文中,用RDCost_luma_cur表示所述第一亮度率失真代价,用RDCost_luma_next表示所述第二亮度率失真代价。
为便于理解,本文中所说的当前层可以被理解为划分深度为N的层,所说的下一层可以被理解为划分深度为N+1的层,其中N等于0、1或2。
302、比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。
在通常的实现方案中,CU块划分计算的率失真代价是包括了亮度分量和色度分量的总的率失真代价,而率失真代价的计算非常耗时。
本发明申请人在实际编码过程中分析发现,亮度分量RDO的计算占据了整个RDCost的大部分,尤其对于YUV422或者YUV420采样的视频而言,由于色度分量采样点减少,其亮度分量的RDCost计算占比会更高。基于该特点,如果部分跳过色度分量的率失真代价的计算过程,可以在几乎不降低失真的情况下,降低率失真代价的计算量,提高HEVC编码速度。
因此,本步骤,首先使用亮度分量的率失真代价作为CU划分的判断准则,通过比较所述第一亮度率失真代价和第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。如果比较结果显示,当前层的失真最小,则CU划分就截止到当前层为止,不再继续向下划分。
针对前文所述的YUV422或者YUV420,需要说明的是:YUV是被电视系统所采用的一种颜色编码方法,是PAL(PhaseAlterationLine,帕尔制,意为逐行倒相)和SECAM(法文SequentielCouleurAMemoire)模拟彩色电视制式采用的颜色空间。在现代彩色电视系统中,通常采用三管彩色摄影机或彩色CCD(Charge-coupledDevice,中文全称:电荷耦合元件,也可以称为CCD图像传感器,也叫图像控制器)摄影机进行取像,然后把取得的彩色图像信号经分色、分别放大校正后得到RGB,再经过矩阵变换电路得到亮度信号Y和两个色差信号B-Y(即U)、R-Y(即V),最后发送端将亮度和色差三个信号分别进行编码,用同一信道发送出去。这种色彩的表示方法就是所谓的YUV色彩空间表示。采用YUV色彩空间的重要性是它的亮度信号Y和色度信号U、V是分离的。
在本发明一些实施例中,步骤302中比较所述第一亮度率失真代价和第二亮度率失真代价,根据比较结果判断是否继续向下一层划分的步骤,一种具体的实现方式可以包括:
a1、计算所述第二亮度率失真代价减去所述第一亮度率失真代价的差值;也就是,计算RDCost_luma_next-RDCost_luma_cur的值。
a2、判断所述差值是否大于阈值;用于TH表示给定的阈值,本步骤中判断是否存在(RDCost_luma_next-RDCost_luma_cur)>TH。
a3、如果所述差值大于所述阈值,则确认当前层的所述第一CU的失真最小,不再继续向下一层划分。
可见,如果下一层代价超过当前层代价给定的阈值TH,即(RDCost_luma_next-RDCost_luma_cur)>TH,那么认为当前CU块是最佳块,确认当前层的CU划分失真最小,停止向下划分,跳过下一层四个子CU块的RDO计算,退出。
另外,在差值等于阈值时,可以停止向下一层划分,也可以继续向下一层划分,具体如何执行可以预先进行定义。
本文中,阈值TH可以采用经验值,由人工确定,采用阈值TH进行判断,而不是直接比较的RDCost_luma_next和RDCost_luma_cur的大小的原因在于,RDCost_luma_next和RDCost_luma_cur仅仅是亮度分量的值,不能反映色度分量,因此,需要针对色度分量设置一个阈值TH,才能较为准确的用于判断失真的大小。
在本发明一些实施例中,上述步骤a2之后,还可以包括以下步骤:
a4、如果所述差值小于或者不大于所述阈值,则进一步计算第一色度率失真代价和第二色度率失真代价,所述第一色度率失真代价是当前层的第一CU的色度分量的率失真代价,所述第二色度率失真代价是所述第一CU对应的下一层的多个第二CU的色度分量的率失真代价;
本文中,如果判断所述第二亮度率失真代价减去所述第一亮度率失真代价的差值(RDCost_luma_next-RDCost_luma_cur)<TH,并不能真正表示下一层的代价小于当前层,因为,上述差值中没有考虑色度分量。因此,在该差值小于阈值时,本步骤,进一步计算第一CU的色度分量的率失真代价,以及,第一CU对应的下一层的多个第二CU的色度分量的率失真代价。这里,需要指出的是,第二色度率失真代价是多个第二CU的色度分量的率失真代价的和。
为便于描述,下文中,用RDCost_chroma_cur表示所述第一色度率失真代价,用RDCost_chroma_next表示所述第二色度率失真代价。
a5、根据所述第一亮度率失真代价和所述第一色度率失真代价,计算第一率失真代价,所述第一率失真代价是所述第一CU的总的率失真代价;根据所述第二亮度率失真代价和所述第二色度率失真代价,计算第二率失真代价,所述第二率失真代价是所述第一CU对应的下一层的多个第二CU的总的率失真代价;
具体的,可以计算所述第一亮度率失真代价和所述第一色度率失真代价的和,作为所述第一率失真代价;以及,计算所述第二亮度率失真代价和所述第二色度率失真代价的和,作为所述第二率失真代价。
为便于描述,本文中用RDCost_cur表示所述第一率失真代价,用RDCost_next表示所述第二率失真代价,有:
RDCost_cur=RDCost_luma_cur+RDCost_chroma_cur;
RDCost_next=RDCost_luma_next+RDCost_chroma_next。
a6、比较所述第一率失真代价和所述第二率失真代价,根据比较结果判断是否继续向下一层划分。
本步骤,首先使用总的率失真代价作为CU划分的判断准则,通过比较所述第一率失真代价和第二率失真代价,根据比较结果判断是否继续向下一层划分。如果比较结果显示,当前层的失真最小,则CU划分就截止到当前层为止,不再继续向下划分;如果比较结果显示,下一层的失真比当前层要小,则CU划分就不能停止,需要继续向下划分。
在本发明一些实施例中,步骤a6的一种具体实现方式可以包括:
b1、判断所述第二率失真代价是否大于所述第一率失真代价;
b2、如果大于,则判断所述第一CU的失真最小,不再继续向下一层划分;
b3、如果小于或者不大于,则判断为继续向下一层划分。
可见,如果当前层CU率失真代价之和大于下一层多个子CU的率失真代价之和,即:RDCost_cur>RDCost_next,则向下继续划分,否则停止向下划分。本步骤中,由于采用的总的率失真代价,因此可以直接通过当前层和下一层的率失真代价的大小,来判断失真情况,如果RDCost_cur>RDCost_next,说明当前层失真较大,需要继续向下划分;如果RDCost_cur<LRDCost_next,说明当前层失真较小,不需要继续向下划分;对于RDCost_cur=LRDCost_next这种相等的情况,可以预先定义,可以继续划分,也可以不继续划分。
其中,在RDCost_cur>RDCost_next,需要继续向下划分时,下一层的划分方法和上述步骤相同,即,以下一层为当前层,从步骤301开始重复执行上述流程,直到找到失真最小的划分方案。
可以理解,本发明实施例上述方案例如可以在个人计算机,平板电脑,手机,服务器,电视机,游戏机等各种设备具体实施。
为便于更好的理解本发明实施例提供的技术方案,下面通过一个具体场景下的实施方式为例进行介绍。
请参考图4,本发明实施例的另一种HEVC帧内编码处理方法,可包括:
401、计算当前层CU的亮度分量的率失真代价RDCost_luma_cur;
402、计算下一层四个子CU的亮度分量的率失真代价RDCost_luma_next;
403、判断是否存在(RDCost_luma_next–RDCost_luma_cur)>TH,TH为根据经验值确定的阈值,若是,进入步骤404,否则,进入步骤405;
404、停止向下划分;
405、计算当前层CU的色度分量的率失真代价RDCost_chroma_cur;
406、计算下一层四个子CU的色度分量的率失真代价RDCost_chroma_next;
407、计算RDCost_next和RDCost_cur,其中,
RDCost_cur=RDCost_luma_cur+RDCost_chroma_cur;
RDCost_next=RDCost_luma_next+RDCost_chroma_next。
判断是否存在RDCost_next>RDCost_cur,若是,则进入步骤408,否
则进入步骤409;
408、停止向下划分;
409、判断继续向下一层划分,返回步骤401,以原来的下一层为当前层,重复执行上述流程。
以上,对HEVC帧内编码处理流程中,CU划分的逻辑流程进行了介绍。
本发明实施例方法可以集成到开源x265中,在全I帧编码模式下,编码速度可以明显提高20%以上,同时PSNR(PeakSignaltoNoiseRatio,峰值信噪比)的损失可以控制在0.1dB以内。PSNR是广泛使用的评鉴图像的客观量测法。
本文中,在CU块划分过程采用率失真代价RDCost作为划分标准,但需要说明的是,其他类似的衡量标准也可以采用,尤其是,该衡量标准可以分解为亮度分量和色度分量的值时。
由上可见,在本发明的一些可行的实施方式中,采用分别计算当前层CU和下一层多个CU的亮度分量的率失真代价,直接以亮度分量的率失真代价为划分准则,判断是否继续向下一层划分的技术方案,采用该方案,可以部分跳过色度分量的率失真代价的计算过程,从而可以减少计算量,提高计算速度,于是,简化了率失真代价的计算过程,有助于提高HEVC编码速度。采用本发明实施例方法可以在编码速度和编码性能之间做出合适的折中。
为了更好的实施本发明实施例的上述方案,下面还提供用于配合实施上述方案的相关装置。
请参考图5,本发明实施例提供一种HEVC帧内编码处理装置500,可包括:
计算模块501,用于计算第一亮度率失真代价和第二亮度率失真代价,所述第一亮度率失真代价是当前层的第一CU的亮度分量的率失真代价,所述第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价;
处理模块502,用于比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。
在本发明一些实施例中,所述第一CU对应于相同大小的4个第二CU,每个第二CU对应于所述第一CU的四分之一个象限。
在本发明一些实施例中,所述处理模块502包括:
第一处理单元5021,用于计算所述第二亮度率失真代价减去所述第一亮度率失真代价的差值;判断所述差值是否大于阈值;如果大于所述阈值,则确认当前层的所述第一CU的失真最小,不再继续向下一层划分。
在本发明一些实施例中,所述处理模块还包括:
第二处理单元5022,用于如果所述差值不大于所述阈值,则进一步计算第一色度率失真代价和第二色度率失真代价,所述第一色度率失真代价是当前层的第一CU的色度分量的率失真代价,所述第二色度率失真代价是所述第一CU对应的下一层的多个第二CU的色度分量的率失真代价;根据所述第一亮度率失真代价和所述第一色度率失真代价,计算第一率失真代价,所述第一率失真代价是所述第一CU的总的率失真代价;根据所述第二亮度率失真代价和所述第二色度率失真代价,计算第二率失真代价,所述第二率失真代价是所述第一CU对应的下一层的多个第二CU的总的率失真代价;比较所述第一率失真代价和第二率失真代价,根据比较结果判断是否继续向下一层划分。
在本发明一些实施例中,所述第二处理单元5022,具体用于判断所述第二率失真代价是否大于所述第一率失真代价;如果大于,则判断所述第一CU的失真最小,不再继续向下一层划分;如果不大于,则判断为继续向下一层划分。
本发明实施例的HEVC帧内编码处理装置例如可以是服务器,个人计算机,平板电脑,手机,电视机,游戏机等设备。
可以理解,本发明实施例的HEVC帧内编码处理装置的各个功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可参照上述方法实施例中的相关描述,此处不再赘述。
由上可见,在本发明的一些可行的实施方式中,采用分别计算当前层CU和下一层多个CU的亮度分量的率失真代价,直接以亮度分量的率失真代价为划分准则,判断是否继续向下一层划分的技术方案,采用该方案,可以部分跳过色度分量的率失真代价的计算过程,从而可以减少计算量,提高计算速度,于是,简化了率失真代价的计算过程,有助于提高HEVC编码速度。采用本发明实施例方法可以在编码速度和编码性能之间做出合适的折中。
请参考图6,本发明实施例还提供一种计算机设备600,可包括:
处理器601、存储器602、总线603和通信接口604;所述存储器602用于存储程序605,所述处理器601与所述存储器602通过所述总线603连接,当所述计算机设备600运行时,所述处理器601执行所述存储器602存储的所述程序605,以使所述计算机设备600执行如上文方法实施例所述的HEVC帧内编码处理方法。
该计算机设备600可以是微处理计算机。比如:该计算机设备600可以是通用计算机、服务器,个人计算机、手机终端,平板电脑,电视机,游戏机等设备中的一种。
所述总线603可以是工业标准体系结构(IndustryStandardArchitecture,简称为ISA)总线或外部设备互连(PeripheralComponent,简称为PCI)总线或扩展工业标准体系结构(ExtendedIndustryStandardArchitecture,简称为EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线中的一种或多种。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
所述存储器602用于存储程序代码,该程序代码包括计算机操作指令。所述存储器602可以包含高速RAM(RamdomAccessMemory)存储器。可选地,所述存储器602还可以还包括非易失性存储器(non-volatilememory)。例如所述存储器602可以包括磁盘存储器。
所述处理器601可以是一个中央处理器(CentralProcessingUnit,简称为CPU),或者所述处理器601可以是特定集成电路(ApplicationSpecificIntegratedCircuit,简称为ASIC),或者所述处理器601可以是被配置成实施本发明实施例的一个或多个集成电路。
所述处理器601,用于执行以下步骤:计算第一亮度率失真代价和第二亮度率失真代价,所述第一亮度率失真代价是当前层的第一CU的亮度分量的率失真代价,所述第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价;比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。
可选的,所述处理器601执行所述比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分的步骤可以包括:计算所述第二亮度率失真代价减去所述第一亮度率失真代价的差值;判断所述差值是否大于阈值;如果所述差值大于所述阈值,则确认当前层的所述第一CU的失真最小,不再继续向下一层划分。
可选的,所述处理器601执行所述判断该差值是否大于阈值的步骤之后,还可以执行以下步骤:如果所述差值不大于所述阈值,则进一步计算第一色度率失真代价和第二色度率失真代价,所述第一色度率失真代价是当前层的第一CU的色度分量的率失真代价,所述第二色度率失真代价是所述第一CU对应的下一层的多个第二CU的色度分量的率失真代价;根据所述第一亮度率失真代价和所述第一色度率失真代价,计算第一率失真代价,所述第一率失真代价是所述第一CU的总的率失真代价;根据所述第二亮度率失真代价和所述第二色度率失真代价,计算第二率失真代价,所述第二率失真代价是所述第一CU对应的下一层的多个第二CU的总的率失真代价;比较所述第一率失真代价和所述第二率失真代价,根据比较结果判断是否继续向下一层划分。
可选的,所述处理器601执行所述比较所述第一率失真代价和第二率失真代价,根据比较结果判断是否继续向下一层划分的步骤,可以包括:判断所述第二率失真代价是否大于所述第一率失真代价;如果大于,则判断所述第一CU的失真最小,不再继续向下一层划分;如果不大于,则判断为继续向下一层划分。
可以理解,本发明实施例的计算机设备600的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可参照上述方法实施例中的相关描述,此处不再赘述。
由上可见,在本发明的一些可行的实施方式中,采用分别计算当前层CU和下一层多个CU的亮度分量的率失真代价,直接以亮度分量的率失真代价为划分准则,判断是否继续向下一层划分的技术方案,采用该方案,可以部分跳过色度分量的率失真代价的计算过程,从而可以减少计算量,提高计算速度,于是,简化了率失真代价的计算过程,有助于提高HEVC编码速度。采用本发明实施例方法可以在编码速度和编码性能之间做出合适的折中。
本发明实施例还提供一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当被包括一个或多个处理器的计算机设备执行时,使所述计算机设备执行如上文方法实施例所述的HEVC帧内编码处理方法。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其它实施例的相关描述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明实施例所提供的HEVC帧内编码处理方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种高效视频编码HEVC帧内编码处理方法,其特征在于,包括:
计算第一亮度率失真代价和第二亮度率失真代价,所述第一亮度率失真代价是当前层的第一编码单元CU的亮度分量的率失真代价,所述第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价;
比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。
2.根据权利要求1所述的方法,其特征在于,所述比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分包括:
计算所述第二亮度率失真代价减去所述第一亮度率失真代价的差值;
判断所述差值是否大于阈值;
如果所述差值大于所述阈值,则确认当前层的所述第一CU的失真最小,不再继续向下一层划分。
3.根据权利要求2所述的方法,其特征在于,所述判断所述差值是否大于阈值之后,还包括:
如果所述差值不大于所述阈值,则进一步计算第一色度率失真代价和第二色度率失真代价,所述第一色度率失真代价是当前层的第一CU的色度分量的率失真代价,所述第二色度率失真代价是所述第一CU对应的下一层的多个第二CU的色度分量的率失真代价;
根据所述第一亮度率失真代价和所述第一色度率失真代价,计算第一率失真代价,所述第一率失真代价是所述第一CU的总的率失真代价;
根据所述第二亮度率失真代价和所述第二色度率失真代价,计算第二率失真代价,所述第二率失真代价是所述第一CU对应的下一层的多个第二CU的总的率失真代价;
比较所述第一率失真代价和所述第二率失真代价,根据比较结果判断是否继续向下一层划分。
4.根据权利要求3所述的方法,其特征在于,所述比较所述第一率失真代价和第二率失真代价,根据比较结果判断是否继续向下一层划分包括:
判断所述第二率失真代价是否大于所述第一率失真代价;
如果大于,则判断所述第一CU的失真最小,不再继续向下一层划分;
如果不大于,则判断为继续向下一层划分。
5.根据权利要求1至4中任一所述的方法,其特征在于,
所述第一CU对应于相同大小的4个第二CU,每个第二CU对应于所述第一CU的四分之一个象限。
6.一种高效视频编码HEVC帧内编码处理装置,其特征在于,包括:
计算模块,用于计算第一亮度率失真代价和第二亮度率失真代价,所述第一亮度率失真代价是当前层的第一编码单元CU的亮度分量的率失真代价,所述第二亮度率失真代价是所述第一CU对应的下一层的多个第二CU的亮度分量的率失真代价;
处理模块,用于比较所述第一亮度率失真代价和所述第二亮度率失真代价,根据比较结果判断是否继续向下一层划分。
7.根据权利要求6所述的装置,其特征在于,所述处理模块包括:
第一处理单元,用于计算所述第二亮度率失真代价减去所述第一亮度率失真代价的差值;判断所述差值是否大于阈值;如果大于所述阈值,则确认当前层的所述第一CU的失真最小,不再继续向下一层划分。
8.根据权利要求7所述的装置,其特征在于,所述处理模块还包括:
第二处理单元,用于如果所述差值不大于所述阈值,则进一步计算第一色度率失真代价和第二色度率失真代价,所述第一色度率失真代价是当前层的第一CU的色度分量的率失真代价,所述第二色度率失真代价是所述第一CU对应的下一层的多个第二CU的色度分量的率失真代价;根据所述第一亮度率失真代价和所述第一色度率失真代价,计算第一率失真代价,所述第一率失真代价是所述第一CU的总的率失真代价;根据所述第二亮度率失真代价和所述第二色度率失真代价,计算第二率失真代价,所述第二率失真代价是所述第一CU对应的下一层的多个第二CU的总的率失真代价;比较所述第一率失真代价和所述第二率失真代价,根据比较结果判断是否继续向下一层划分。
9.根据权利要求8所述的装置,其特征在于,
所述第二处理单元,具体用于判断所述第二率失真代价是否大于所述第一率失真代价;如果大于,则判断所述第一CU的失真最小,不再继续向下一层划分;如果不大于,则判断为继续向下一层划分。
10.根据权利要求6至9中任一所述的装置,其特征在于,
所述第一CU对应于相同大小的4个第二CU,每个第二CU对应于所述第一CU的四分之一个象限。
CN201610192577.6A 2016-03-30 2016-03-30 Hevc帧内编码处理方法和装置 Active CN105681812B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610192577.6A CN105681812B (zh) 2016-03-30 2016-03-30 Hevc帧内编码处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610192577.6A CN105681812B (zh) 2016-03-30 2016-03-30 Hevc帧内编码处理方法和装置

Publications (2)

Publication Number Publication Date
CN105681812A true CN105681812A (zh) 2016-06-15
CN105681812B CN105681812B (zh) 2019-11-19

Family

ID=56224656

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610192577.6A Active CN105681812B (zh) 2016-03-30 2016-03-30 Hevc帧内编码处理方法和装置

Country Status (1)

Country Link
CN (1) CN105681812B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109286816A (zh) * 2018-09-12 2019-01-29 天津大学 一种hevc优化帧内预测分块的方法
CN111355959A (zh) * 2018-12-22 2020-06-30 华为技术有限公司 一种图像块划分方法及装置
CN111669586A (zh) * 2020-06-17 2020-09-15 北京百度网讯科技有限公司 编码方法、装置、设备和计算机存储介质
CN112104867A (zh) * 2020-11-09 2020-12-18 腾讯科技(深圳)有限公司 一种视频处理方法、视频处理装置、智能设备及存储介质
CN114501007A (zh) * 2021-12-20 2022-05-13 杭州当虹科技股份有限公司 基于422视频的快速编码方法及编码器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102917225A (zh) * 2012-10-25 2013-02-06 电子科技大学 Hevc帧内编码单元快速选择方法
CN103596004A (zh) * 2013-11-19 2014-02-19 北京邮电大学 Hevc中基于数学统计和分类训练的帧内预测方法及装置
CN104202605A (zh) * 2014-08-18 2014-12-10 山东大学 一种通过降低分辨率预测高清图像编码单元cu的划分方式的方法及其实现装置
CN104754338A (zh) * 2014-12-30 2015-07-01 北京奇艺世纪科技有限公司 一种帧内预测模式的选择方法和装置
CN105264889A (zh) * 2013-04-05 2016-01-20 佳能株式会社 用于生成帧内预测样本的方法、设备和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102917225A (zh) * 2012-10-25 2013-02-06 电子科技大学 Hevc帧内编码单元快速选择方法
CN105264889A (zh) * 2013-04-05 2016-01-20 佳能株式会社 用于生成帧内预测样本的方法、设备和系统
CN103596004A (zh) * 2013-11-19 2014-02-19 北京邮电大学 Hevc中基于数学统计和分类训练的帧内预测方法及装置
CN104202605A (zh) * 2014-08-18 2014-12-10 山东大学 一种通过降低分辨率预测高清图像编码单元cu的划分方式的方法及其实现装置
CN104754338A (zh) * 2014-12-30 2015-07-01 北京奇艺世纪科技有限公司 一种帧内预测模式的选择方法和装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109286816A (zh) * 2018-09-12 2019-01-29 天津大学 一种hevc优化帧内预测分块的方法
CN111355959A (zh) * 2018-12-22 2020-06-30 华为技术有限公司 一种图像块划分方法及装置
CN111355959B (zh) * 2018-12-22 2024-04-09 华为技术有限公司 一种图像块划分方法及装置
CN111669586A (zh) * 2020-06-17 2020-09-15 北京百度网讯科技有限公司 编码方法、装置、设备和计算机存储介质
CN111669586B (zh) * 2020-06-17 2023-02-17 北京百度网讯科技有限公司 编码方法、装置、设备和计算机存储介质
CN112104867A (zh) * 2020-11-09 2020-12-18 腾讯科技(深圳)有限公司 一种视频处理方法、视频处理装置、智能设备及存储介质
CN114501007A (zh) * 2021-12-20 2022-05-13 杭州当虹科技股份有限公司 基于422视频的快速编码方法及编码器
CN114501007B (zh) * 2021-12-20 2024-01-09 杭州当虹科技股份有限公司 基于422视频的快速编码方法及编码器

Also Published As

Publication number Publication date
CN105681812B (zh) 2019-11-19

Similar Documents

Publication Publication Date Title
TWI665907B (zh) 用於圖像和視訊編碼的基於模板的圖框內預測的方法和裝置
CN112534818B (zh) 使用运动和对象检测的用于视频编码的译码参数的基于机器学习的自适应
US10349083B2 (en) Method for low-latency illumination compensation process and Depth Lookup Table based coding
CN105681812A (zh) Hevc帧内编码处理方法和装置
US20050147165A1 (en) Prediction encoding apparatus, prediction encoding method, and computer readable recording medium thereof
CN114339262B (zh) 熵编/解码方法及装置
WO2020088324A1 (zh) 一种视频图像预测方法及装置
EP3646589A1 (en) Method and apparatus for most probable mode (mpm) sorting and signaling in video encoding and decoding
US9503751B2 (en) Method and apparatus for simplified depth coding with extended prediction modes
EP3002948A1 (en) Decoder, decoding method, and codec system
EP3709648A1 (en) Method and apparatus for video encoding and decoding with subblock based local illumination compensation
US11968363B2 (en) Multi-type tree depth extension for picture boundary handling
US11418803B2 (en) Intra-prediction-based image coding method and device therefor
Saldanha et al. Fast partitioning decision scheme for versatile video coding intra-frame prediction
CN113544705A (zh) 用于图片编码和解码的方法和设备
US11632570B2 (en) Method and apparatus for processing image signal
US20230254507A1 (en) Deep intra predictor generating side information
CN109587491A (zh) 一种帧内预测方法、装置及存储介质
EP3706421A1 (en) Method and apparatus for video encoding and decoding based on affine motion compensation
WO2020008328A1 (en) Shape dependent merge mode and amvp mode coding
CN111742553A (zh) 用于视频压缩的基于深度学习的图像分区
EP3111642B1 (en) Method and apparatus of single sample mode for video coding
WO2022111233A1 (zh) 帧内预测模式的译码方法和装置
CN112544085A (zh) 执行去块的装置和方法
EP2890124B1 (en) Coding method and device applied to hevc-based 3dvc

Legal Events

Date Code Title Description
C06 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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240102

Address after: 518000 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 Floors

Patentee after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

Patentee after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd.

Address before: 2, 518000, East 403 room, SEG science and Technology Park, Zhenxing Road, Shenzhen, Guangdong, Futian District

Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.