CN105847798A - 一种用于视频编码的快速编码单元划分方法及装置 - Google Patents

一种用于视频编码的快速编码单元划分方法及装置 Download PDF

Info

Publication number
CN105847798A
CN105847798A CN201610195846.4A CN201610195846A CN105847798A CN 105847798 A CN105847798 A CN 105847798A CN 201610195846 A CN201610195846 A CN 201610195846A CN 105847798 A CN105847798 A CN 105847798A
Authority
CN
China
Prior art keywords
coding
frame
cost
coding unit
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610195846.4A
Other languages
English (en)
Inventor
蔡砚刚
白茂生
杨帆
刘阳
祁海
魏伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LeTV Holding Beijing Co Ltd
LeTV Cloud Computing Co Ltd
Original Assignee
LeTV Holding Beijing Co Ltd
LeTV Cloud Computing 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 LeTV Holding Beijing Co Ltd, LeTV Cloud Computing Co Ltd filed Critical LeTV Holding Beijing Co Ltd
Priority to CN201610195846.4A priority Critical patent/CN105847798A/zh
Publication of CN105847798A publication Critical patent/CN105847798A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/177Methods 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 group of pictures [GOP]
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

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

Abstract

本发明公开了一种用于视频编码的快速编码单元划分方法及装置,其方法包括:按照预设的规则将视频流分割为一个或多个图像组GOP;基于编码代价确定图像组GOP中的非B帧的编码单元;选取与B帧最邻近的非B帧,将B帧的编码单元设置为与此非B帧的编码单元的相同。本发明的用于视频编码的快速编码单元划分方法和装置,基于编码代价确定非B帧的编码单元,并将B帧的编码单元设置为与此B帧最邻近的非B帧的编码单元,能够提供低复杂度的编码单元结构,可以减小编码、解码的开销,并可以提高编码效率,节省编码时间,可以提高视频的观看质量,提高用户的感受度。

Description

一种用于视频编码的快速编码单元划分方法及装置
技术领域
本发明涉及视频编码技术领域,特别涉及一种用于视频编码的快速编码单元划分方法及装置。
背景技术
目前,随着互联网和硬件设备的发展,视频的分辨率愈来愈大。2013年,由ITU VCEG和ISO MPEG联合成立的视频编码联合协作团队研究制定了新一代视频编码标准——高效视频编码标准(High EfficiencyVideo Coding,HEVC)。相比H.264/AVC,在相当视觉质量下,HEVC节省一半上的码率。HEVC具有更高的压缩性能的一个主要原因就是它提供了更大的编码块结构以及灵活的子块划分方式。在HEVC中,最大的编码单元Largest Coding Unit(LCU)能够被递归地划分成更小的编码单元Coding Unit(CU),从而形成编码单元树Coding Unit Tree(CTU)结构。
在HEVC中,扩展了宏块的概念并分为编码单元、预测单元和变换单元,编码单元是HEVC中编码的基本单位。图像被划分为若干个最大编码单元,目前HEVC中主要档次的定义中,最大的编码单元的大小是64x64,最大编码单元能够被进一步递归的划分成更小的编码单元,最小的编码单元的大小是8x8。由此可以看出HEVC提供更加灵活的块划分方式以及更大的编码单位,这有利于适应不同纹理区域的编码特性。图1中展示了HEVC中编码单元的递归划分例子。图2展示了HEVC编码单元的扫描方式。HEVC编码单元的划分是根据四叉树结构进行划分的,如图3所示,其中四叉树的定义是:它的每个节点下至多可以有四个子节点,通常把一部分二维空间细分为四个象限或区域并把该区域里的相关信息存入到四叉树节点中。如图4所示,视频图像的每个像素都可以通过与其相关的像素预测来降低该像素的冗余。用帧内预测编码的帧图像称为I(Intra)帧,用前向预测编码的帧图像称为P帧,用双向预测编码的帧图像称为B帧。
HEVC通过灵活的编码单元结构可以获得很大的编码性能,然而这种灵活的编码单元结构是以更复杂的计算为代价的。目前,在视频编码中对于如何合理分配每帧的编码单元结构还没有很好的方法,由于视频中帧的编码单元结构设置不合理,使得运算开销大,影响视频的播放质量,影响用户的感受度。
发明内容
有鉴于此,本发明的目的在于提出一种用于视频编码的快速编码单元划分方法及装置。
基于上述目的,本发明提供一种用于视频编码的快速编码单元划分方法,包括:按照预设的规则将视频流分割为一个或多个图像组GOP;基于编码代价确定所述图像组GOP中的非B帧的编码单元;选取与B帧最邻近的非B帧,将所述B帧的编码单元设置为与此非B帧的编码单元的相同;其中,所述GOP中的编码帧包括I帧、P帧和B帧中的一种或多种。
可选地,所述按照预设的规则将所述视频流分割为一个或多个GOP包括:将所述视频流中的I帧或P帧作为分割帧;将所述视频流中的一个分割帧以及此分割帧与下一个分割帧之间的B帧组合为一个GOP。
可选地,基于编码代价确定所述图像组GOP中的非B帧的编码单元包括:确定所述非B帧能够采用的多个编码格式;按照所述多个编码格式的像素尺寸由大到小的顺序,从具有最大像素尺寸的编码格式开始,基于所述多个编码格式中的编码格式依次对所述非B帧进行编码,并计算编码单元对应的编码代价;在每次计算中,判断在此次计算中使用的编码单元对应的第一编码代价是否大于在上一次计算中使用的编码单元对应的第二编码代价,其中,所述第一编码代价和第二编码代价为针对于相同的图像像素块的编码代价;如果是,则结束计算,将在此次计算中使用的编码单元设置为此非B帧的编码单元;如果否,则继续计算;其中,如果在最后一次计算中使用的编码单元对应的第一编码代价小于在倒数第一次计算中使用的编码单元对应的第二编码代价,将在最后一次计算中使用的编码单元设置为此非B帧的编码单元。
可选地,确定所述多个编码格式为像素尺寸为2M×2M的编码格式;其中,所述M为3、4、5或6;按照所述M由大到小的顺序,基于所述多个编码格式中的编码格式对所述非B帧进行编码,并计算编码单元对应的编码代价;其中,在每次计算中,将在上一次计算中进行编码的图像像素块划分为4个子像素块,并基于在本此计算中使用的编码格对所述4个子像素块分别编码,生成4个子编码单元;判断所述4个子编码单元对应的编码代价之和是否大于在上一次计算中使用的编码单元对应的编码代价;如果是,则结束计算,将在此次计算中使用的子编码单元设置为此非B帧的编码单元;如果否,则继续计算;其中,如果在最后一次计算中使用的4个子编码单元对应的编码代价之和小于在倒数第一次计算中使用的编码单元对应的编码代价,将在最后一次计算中使用的子编码单元设置为此非B帧的编码单元。
可选地,所述计算编码单元对应的编码代价采用的公式为:cost=D+λR;其中,cost为编码代价,D表示该编码单元对应的图像像素块的失真程度,D采用绝对差值和SAD运算获取,λ为拉格朗日常数,R表示编码单元对应的图像编码块占用的比特数目。
可选地,所述视频流的格式包括:EPVC;所述多个编码格式中具有最大像素尺寸的编码格式为64×64,具有最小像素尺寸的编码格式为8×8。
本发明提供一种用于视频编码的快速编码单元划分装置,包括:图像分割模块,用于按照预设的规则将视频流分割为一个或多个图像组GOP;第一编码单元确定模块,用于基于编码代价确定所述图像组GOP中的非B帧的编码单元;第二编码单元确定模块,用于选取与B帧最邻近的非B帧,将所述B帧的编码单元设置为与此非B帧的编码单元的相同;其中,所述GOP中的编码帧包括I帧、P帧和B帧中的一种或多种。
可选地,所述图像分割模块具体用于将所述视频流中的I帧或P帧作为分割帧;将所述视频流中的一个分割帧以及此分割帧与下一个分割帧之间的B帧组合为一个GOP。
可选地,所述第一编码单元确定模块,包括:格式确定单元,用于确定所述非B帧能够采用的多个编码格式;编码代价获取单元,用于按照所述多个编码格式的像素尺寸由大到小的顺序,从具有最大像素尺寸的编码格式开始,基于所述多个编码格式中的编码格式依次对所述非B帧进行编码,并计算编码单元对应的编码代价;编码单元设置单元,用于在每次计算中,判断在此次计算中使用的编码单元对应的第一编码代价是否大于在上一次计算中使用的编码单元对应的第二编码代价,其中,所述第一编码代价和第二编码代价为针对于相同的图像像素块的编码代价;如果是,则结束计算,将在此次计算中使用的编码单元设置为此非B帧的编码单元;如果否,则继续计算;其中,如果在最后一次计算中使用的编码单元对应的第一编码代价小于在倒数第一次计算中使用的编码单元对应的第二编码代价,将在最后一次计算中使用的编码单元设置为此非B帧的编码单元。
可选地,所述格式确定单元,用于确定所述多个编码格式为像素尺寸为2M×2M的编码格式;其中,所述M为3、4、5或6;所述编码代价获取单元,用于按照所述M由大到小的顺序,基于所述多个编码格式中的编码格式对所述非B帧进行编码,并计算编码单元对应的编码代价;其中,在每次计算中,将在上一次计算中进行编码的图像像素块划分为4个子像素块,并基于在本此计算中使用的编码格对所述4个子像素块分别编码,生成4个子编码单元;所述编码单元设置单元,还用于判断所述4个子编码单元对应的编码代价之和是否大于在上一次计算中使用的编码单元对应的编码代价;如果是,则结束计算,将在此次计算中使用的子编码单元设置为此非B帧的编码单元;如果否,则继续计算;其中,如果在最后一次计算中使用的4个子编码单元对应的编码代价之和小于在倒数第一次计算中使用的编码单元对应的编码代价,将在最后一次计算中使用的子编码单元设置为此非B帧的编码单元。
可选地,所述编码代价获取单元计算所述计算编码单元对应的编码代价采用的公式为:cost=D+λR;其中,cost为编码代价,D表示该编码单元对应的图像编码块的失真程度,D采用绝对差值和SAD运算获取,λ为拉格朗日常数,R表示编码单元对应的图像编码块占用的比特数目。
本发明的用于视频编码的快速编码单元划分方法和装置,基于编码代价确定非B帧的编码单元,并将B帧的编码单元设置为与此B帧最邻近的非B帧的编码单元,能够提供低复杂度的编码单元结构,可以减小编码、解码的开销,并可以提高编码效率,节省编码时间,可以提高视频的观看质量,提高用户的感受度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中HEVC编码单元划分结构示意图;
图2为现有技术中HEVC编码单元扫描方式示意图;
图3为现有技术中四层完全四叉树结构示意图;
图4为现有技术中I帧、P帧和B帧的预测原理示意图;
图5为根据本发明的用于视频编码的快速编码单元划分方法的一个实施例的流程示意图;
图6A至6E为根据本发明的用于视频编码的比特分配方法的一个实施例的非B帧的编码单元划分方式的示意图;
图7为根据本发明的用于视频编码的比特分配装置的一个实施例的模块示意图;
图8为根据本发明的用于视频编码的比特分配装置中第一编码单元确定模块一个实施例的模块示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
图5为根据本发明的用于视频编码的快速编码单元划分方法的一个实施例的流程示意图,如图5所示:
步骤101,按照预设的规则将视频流分割为一个或多个图像组GOP。GOP中的编码帧包括I帧、P帧和B帧中的一种或多种。视频流的格式包括:HEVC、H.26X等。
步骤102,基于编码代价确定图像组GOP中的非B帧的编码单元。
步骤103,选取与B帧最邻近的非B帧,将B帧的编码单元设置为与此非B帧的编码单元的相同。。
上述实施例中的用于视频编码的快速编码单元划分方法,提出了一种快速编码单元分配方案,可以减小编码、解码的开销,可以提高视频的质量,并可以提高编码效率,节省编码时间。
可以按照多种预设的规则将视频流分割为一个或多个GOP。例如,将视频流中的I帧或P帧作为分割帧,将视频流中的一个分割帧以及此分割帧与下一个分割帧之间的B帧组合为一个GOP。例如,当前提取视频流中的帧为IBBPBBPBIBBP,依照上述的方法可以分割为5个GOP,GOP内的帧序列分别为:IBB、PBB、PB、IBB和P。
可以采用多种方法确定图像组GOP中的非B帧的编码单元。例如,确定非B帧能够采用的多个编码格式,例如有8×8,16×16等。按照所确定的多个编码格式的像素尺寸由大到小的顺序,从具有最大像素尺寸的编码格式开始,进行遍历计算,基于多个编码格式中的编码格式依次对非B帧进行编码,并计算编码单元对应的编码代价。
在每次计算中,判断在此次计算中使用的编码单元对应的第一编码代价是否大于在上一次计算中使用的编码单元对应的第二编码代价,第一编码代价和第二编码代价为针对于相同的图像像素块的编码代价,即对相同的图像像素块计算不同的编码单元的编码代价。
所有的编码单元都针对一块的图像像素块计算编码代价,或者,在一次计算中使用的编码单元与在上一次计算中使用的编码单元需要针对相同的图像像素块计算编码代价,这样进行编码代价的比较结果是准确的。
如果此次计算中使用的编码单元对应的第一编码代价大于在上一次计算中使用的编码单元对应的第二编码代价,则结束计算,将在此次计算中使用的编码单元设置为此非B帧的编码单元。
如果此次计算中使用的编码单元对应的第一编码代价小于在上一次计算中使用的编码单元对应的第二编码代价,则继续计算。如果在最后一次计算中使用的编码单元对应的第一编码代价小于在倒数第一次计算中使用的编码单元对应的第二编码代价,将在最后一次计算中使用的编码单元设置为此非B帧的编码单元。通过上述的计算可以为非B帧选择出编码代价小的编码单元。
在一个实施例中,确定多个编码格式为像素尺寸为2M×2M的编码格式,M为3、4、5或6。按照M由大到小的顺序,基于多个编码格式中的编码格式对非B帧进行编码,并计算编码单元对应的编码代价。
在每次计算中,将在上一次计算中进行编码的图像像素块划分为4个子像素块,并基于在本此计算中使用的编码格对4个子像素块分别编码,生成4个子编码单元;判断4个子编码单元对应的编码代价之和是否大于在上一次计算中使用的编码单元对应的编码代价。
如果4个子编码单元对应的编码代价之和大于上一次计算中使用的编码单元对应的编码代价,则结束计算,将在此次计算中使用的子编码单元设置为此非B帧的编码单元。如果4个子编码单元对应的编码代价之和小于上一次计算中使用的编码单元对应的编码代价,则继续计算。如果在最后一次计算中使用的4个子编码单元对应的编码代价之和小于在倒数第一次计算中使用的编码单元对应的编码代价,将在最后一次计算中使用的子编码单元设置为此非B帧的编码单元。
如图6A至6E所示,按多个编码格式为像素尺寸的由大到小的顺序,如图6A所示,依次计算所有种类编码单元的编码代价,并将在上一次计算中进行编码的图像像素块划分为4个子像素块。
如图6B所示,计算64x64编码单元的编码代价cost_64x64。如图6C所示,计算4个32x32编码单元的编码代价cost_32x32_0、cost_32x32_1、cost_32x32_2、cost_32x32_3。
如果cost_64x64<=cost_32x32_0+cost_32x32_1+cost_32x32_2+cost_32x32_3,则其划分格式为下面的64x64划分,无须继续下一步划分。如果cost_64x64>cost_32x32_0+cost_32x32_1+cost_32x32_2+cost_32x32_3,则其划分格式为下面的32x32划分,每个32x32还需要进一步划分。
如图6D所示,在每一个32x32编码单元中,继续计算4个16x16子块,以第一个32x32块为例。计算得到4个16x16子块:cost_16x16_0、cost_16x16_1、cost_16x16_2、cost_16x16_3。如果cost_32x32_0<=cost_16x16_0+cost_16x16_1+cost_16x16_2+cost_16x16_3,则其划分格式为下面的32x32划分,无须继续下一步划分。如果cost_32x32_0>cost_16x16_0+cost_16x16_1+cost_16x16_2+cost_16x16_3则其划分格式为下面的16x16划分,每个16x16还需要进一步划分。
每个16x16块的划分如图6E所示,在每一个16x16编码单元中,继续计算4个8x8子块,以第一个16x16块为例。计算得到4个8x8子块:cost_8x8_0、cost_8x8_1、cost_8x8_2、cost_8x8_3,如果cost_16x16_0<=cost_8x8_0+cost_8x8_1+cost_8x8_2+cost_8x8_3,则其划分格式为16x16划分。如果cost_16x16_0>cost_8x8_0+cost_8x8_1+cost_8x8_2+cost_8x8_3,则其划分格式为8x8划分。
计算编码单元对应的编码代价采用的公式为:cost=D+λR;其中,cost为编码代价,D表示该编码单元对应的图像像素块的失真程度,D采用绝对差值和SAD运算获取,λ为拉格朗日常数,R表示编码单元对应的图像编码块占用的比特数目。
在视频压缩中,每帧代表一幅静止的图像,需要采取各种算法减少数据的容量。I帧是关键帧,属于帧内压缩,P是向前搜索的意思,B是双向搜索。I帧解码时只需要本帧数据就可以完成,P帧表示的是这一帧跟之前的一个关键帧(或P帧)的差别,解码时需要用之前缓存的画面叠加上本帧定义的差别,生成最终画面。
P帧没有完整画面数据,只有与前一帧的画面差别的数据。B帧是双向差别帧,记录的是本帧与前后帧的差别,解码B帧时,不仅要取得之前的缓存画面,还要解码之后的画面,通过前后画面的与本帧数据的叠加取得最终的画面。B帧记录的是前后帧的差别,比P帧能节约更多的空间,B帧其实也包含了画面信息。因此,在对于P帧和B帧分配占用的比特时,P帧只参考前面最靠近它的P帧,B帧以前面的P帧和后面的P帧为参考帧。
采用绝对差值和或称为绝对误差和(Sum of absolute differences)SAD运算获取编码单元对应的图像像素块的失真程度可以采用多种方法。例如,以P帧为例,获取与GOP内的P帧P1紧邻、并位于P1前向的一个P帧P0,此P0为P1的前项参考帧或预测帧。
基于同一个编码单元针对同一图像像素块分别对于P0、P1编码,计算P1与P0的具有相同像素块的编码块中各个像素点数值之差,生成矩阵R1。采用绝对差值SAD对R1进行计算,即计算矩阵中R1各个元素的绝对值之和,获得该编码单元对应的图像像素块的失真程度。
确定GOP中的I帧或P帧的编码单元后,选取与B帧最邻近的I帧或P帧,可以为B帧的前向或后向,将B帧的编码单元设置为与最邻近的I帧或P帧的编码单元的相同。
如图7所示,本发明提供一种用于视频编码的快速编码单元划分装置20包括:图像分割模块21、第一编码单元确定模块22和第二编码单元确定模块23。图像分割模块21按照预设的规则将视频流分割为一个或多个图像组GOP。第一编码单元确定模块22确定图像组GOP中的非B帧的编码单元。第二编码单元确定模块23选取与B帧最邻近的非B帧,将B帧的编码单元设置为与此非B帧的编码单元的相同。
GOP中的编码帧包括I帧、P帧和B帧中的一种或多种。图像分割模块21将视频流中的I帧或P帧作为分割帧,将视频流中的一个分割帧以及此分割帧与下一个分割帧之间的B帧组合为一个GOP。
如图8所示,第一编码单元确定模块22包括:格式确定单元221、编码代价获取单元222和编码单元设置单元223。格式确定单元221确定非B帧能够采用的多个编码格式。编码代价获取单元222按照多个编码格式的像素尺寸由大到小的顺序,从具有最大像素尺寸的编码格式开始,基于多个编码格式中的编码格式依次对非B帧进行编码,并计算编码单元对应的编码代价。
编码单元设置单元223在每次计算中,判断在此次计算中使用的编码单元对应的第一编码代价是否大于在上一次计算中使用的编码单元对应的第二编码代价,其中,第一编码代价和第二编码代价为针对于相同的图像像素块的编码代价;如果是,则结束计算,编码单元设置单元223将在此次计算中使用的编码单元设置为此非B帧的编码单元;如果否,则继续计算;如果在最后一次计算中使用的编码单元对应的第一编码代价小于在倒数第一次计算中使用的编码单元对应的第二编码代价,编码单元设置单元223将在最后一次计算中使用的编码单元设置为此非B帧的编码单元。
在一个实施例中,格式确定单元221确定多个编码格式为像素尺寸为2M×2M的编码格式,M为3、4、5或6。编码代价获取单元222按照M由大到小的顺序,基于多个编码格式中的编码格式对非B帧进行编码,并计算编码单元对应的编码代价。在每次计算中,编码代价获取单元222将在上一次计算中进行编码的图像像素块划分为4个子像素块,并基于在本此计算中使用的编码格对4个子像素块分别编码,生成4个子编码单元。
编码单元设置单元223判断4个子编码单元对应的编码代价之和是否大于在上一次计算中使用的编码单元对应的编码代价,如果是,则编码单元设置单元223结束计算,将在此次计算中使用的子编码单元设置为此非B帧的编码单元;如果否,则继续计算。如果在最后一次计算中使用的4个子编码单元对应的编码代价之和小于在倒数第一次计算中使用的编码单元对应的编码代价,编码单元设置单元223将在最后一次计算中使用的子编码单元设置为此非B帧的编码单元。
编码代价获取单元222计算计算编码单元对应的编码代价采用的公式为:cost=D+λR;其中,cost为编码代价,D表示该编码单元对应的图像编码块的失真程度,D采用绝对差值和SAD运算获取,λ为拉格朗日常数,R表示编码单元对应的图像编码块占用的比特数目。
上述实施例提供的用于视频编码的快速编码单元划分方法和装置,基于编码代价确定非B帧的编码单元,并将B帧的编码单元设置为与此B帧最邻近的非B帧的编码单元,能够提供低复杂度的编码单元结构,可以减小编码、解码的开销,并可以提高编码效率,节省编码时间,可以提高视频的观看质量,提高用户的感受度。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本发明难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本发明的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (11)

1.一种用于视频编码的快速编码单元划分方法,其特征在于,包括:
将视频流分割为一个或多个图像组GOP;
基于编码代价确定所述图像组GOP中的非B帧的编码单元;
选取与B帧最邻近的非B帧,将所述B帧的编码单元设置为与此非B帧的编码单元相同;
其中,所述GOP中的编码帧包括I帧、P帧和B帧中的一种或多种。
2.如权利要求1所述的方法,其特征在于,将所述视频流分割为一个或多个GOP包括:
将所述视频流中的I帧或P帧作为分割帧;
将所述视频流中的一个分割帧、以及此分割帧与下一个分割帧之间的B帧组合为一个GOP。
3.如权利要求1或2所述的方法,其特征在于,基于编码代价确定所述图像组GOP中的非B帧的编码单元包括:
确定所述非B帧采用的多个编码格式;
按照所述多个编码格式的像素尺寸由大到小的顺序,从具有最大像素尺寸的编码格式开始,基于所述多个编码格式中的编码格式依次对所述非B帧进行编码,并计算编码单元对应的编码代价;
在每次计算中,判断在此次计算中使用的编码单元对应的第一编码代价是否大于在上一次计算中使用的编码单元对应的第二编码代价,其中,所述第一编码代价和第二编码代价为针对于相同的图像像素块的编码代价;
如果是,则结束计算,将在此次计算中使用的编码单元设置为此非B帧的编码单元;
如果否,则继续计算;
其中,如果在最后一次计算中使用的编码单元对应的第一编码代价小于在倒数第一次计算中使用的编码单元对应的第二编码代价,将在最后一次计算中使用的编码单元设置为此非B帧的编码单元。
4.如权利要求3所述的方法,其特征在于,包括:
确定所述多个编码格式为像素尺寸为2M×2M的编码格式;其中,所述M为3、4、5或6;
按照所述M由大到小的顺序,基于所述多个编码格式中的编码格式对所述非B帧进行编码,并计算编码单元对应的编码代价;
其中,在每次计算中,将在上一次计算中进行编码的图像像素块划分为4个子像素块,并基于在本此计算中使用的编码格对所述4个子像素块分别编码,生成4个子编码单元;
判断所述4个子编码单元对应的编码代价之和是否大于在上一次计算中使用的编码单元对应的编码代价;
如果是,则结束计算,将在此次计算中使用的子编码单元设置为此非B帧的编码单元;
如果否,则继续计算;
其中,如果在最后一次计算中使用的4个子编码单元对应的编码代价之和小于在倒数第一次计算中使用的编码单元对应的编码代价,将在最后一次计算中使用的子编码单元设置为此非B帧的编码单元。
5.如权利要求3所述的方法,其特征在于:
所述计算编码单元对应的编码代价采用的公式为:
cost=D+λR;
其中,cost为编码代价,D表示该编码单元对应的图像像素块的失真程度,D采用绝对差值和SAD运算获取,λ为拉格朗日常数,R表示编码单元对应的图像编码块占用的比特数目。
6.如权利要求3所述的方法,其特征在于
所述视频流的格式包括:EPVC;所述多个编码格式中具有最大像素尺寸的编码格式为64×64,具有最小像素尺寸的编码格式为8×8。
7.一种用于视频编码的快速编码单元划分装置,其特征在于,包括:
图像分割模块,用于将视频流分割为一个或多个图像组GOP;
第一编码单元确定模块,用于基于编码代价确定所述图像组GOP中的非B帧的编码单元;
第二编码单元确定模块,用于选取与B帧最邻近的非B帧,将所述B帧的编码单元设置为与此非B帧的编码单元相同;
其中,所述GOP中的编码帧包括I帧、P帧和B帧中的一种或多种。
8.如权利要求8所述的装置,其特征在于:
所述图像分割模块具体用于将所述视频流中的I帧或P帧作为分割帧;将所述视频流中的一个分割帧、以及此分割帧与下一个分割帧之间的B帧组合为一个GOP。
9.如权利要求7或8所述的装置,其特征在于:
所述第一编码单元确定模块,包括:
格式确定单元,用于确定所述非B帧采用的多个编码格式;
编码代价获取单元,用于按照所述多个编码格式的像素尺寸由大到小的顺序,从具有最大像素尺寸的编码格式开始,基于所述多个编码格式中的编码格式依次对所述非B帧进行编码,并计算编码单元对应的编码代价;
编码单元设置单元,用于在每次计算中,判断在此次计算中使用的编码单元对应的第一编码代价是否大于在上一次计算中使用的编码单元对应的第二编码代价,其中,所述第一编码代价和第二编码代价为针对于相同的图像像素块的编码代价;如果是,则结束计算,将在此次计算中使用的编码单元设置为此非B帧的编码单元;如果否,则继续计算;其中,如果在最后一次计算中使用的编码单元对应的第一编码代价小于在倒数第一次计算中使用的编码单元对应的第二编码代价,将在最后一次计算中使用的编码单元设置为此非B帧的编码单元。
10.如权利要求9所述的装置,其特征在于:
所述格式确定单元,用于确定所述多个编码格式为像素尺寸为2M×2M的编码格式;其中,所述M为3、4、5或6;
所述编码代价获取单元,用于按照所述M由大到小的顺序,基于所述多个编码格式中的编码格式对所述非B帧进行编码,并计算编码单元对应的编码代价;其中,在每次计算中,将在上一次计算中进行编码的图像像素块划分为4个子像素块,并基于在本此计算中使用的编码格对所述4个子像素块分别编码,生成4个子编码单元;
所述编码单元设置单元,还用于判断所述4个子编码单元对应的编码代价之和是否大于在上一次计算中使用的编码单元对应的编码代价;如果是,则结束计算,将在此次计算中使用的子编码单元设置为此非B帧的编码单元;如果否,则继续计算;其中,如果在最后一次计算中使用的4个子编码单元对应的编码代价之和小于在倒数第一次计算中使用的编码单元对应的编码代价,将在最后一次计算中使用的子编码单元设置为此非B帧的编码单元。
11.如权利要求9所述的装置,其特征在于:
所述编码代价获取单元计算所述计算编码单元对应的编码代价采用的公式为:
cost=D+λR;
其中,cost为编码代价,D表示该编码单元对应的图像编码块的失真程度,D采用绝对差值和SAD运算获取,λ为拉格朗日常数,R表示编码单元对应的图像编码块占用的比特数目。
CN201610195846.4A 2016-03-30 2016-03-30 一种用于视频编码的快速编码单元划分方法及装置 Pending CN105847798A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610195846.4A CN105847798A (zh) 2016-03-30 2016-03-30 一种用于视频编码的快速编码单元划分方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610195846.4A CN105847798A (zh) 2016-03-30 2016-03-30 一种用于视频编码的快速编码单元划分方法及装置

Publications (1)

Publication Number Publication Date
CN105847798A true CN105847798A (zh) 2016-08-10

Family

ID=56596323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610195846.4A Pending CN105847798A (zh) 2016-03-30 2016-03-30 一种用于视频编码的快速编码单元划分方法及装置

Country Status (1)

Country Link
CN (1) CN105847798A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107820077A (zh) * 2016-09-14 2018-03-20 北京金山云网络技术有限公司 一种最大可用编码单元尺寸确定方法及装置
CN111294591A (zh) * 2020-05-09 2020-06-16 腾讯科技(深圳)有限公司 视频信息处理方法、多媒体信息处理方法、装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103533355A (zh) * 2013-10-10 2014-01-22 宁波大学 一种hevc快速编码方法
US8948258B2 (en) * 2008-10-03 2015-02-03 Qualcomm Incorporated Video coding with large macroblocks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8948258B2 (en) * 2008-10-03 2015-02-03 Qualcomm Incorporated Video coding with large macroblocks
CN103533355A (zh) * 2013-10-10 2014-01-22 宁波大学 一种hevc快速编码方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
成益龙,滕国伟,石旭利,王国中: "一种快速HEVC帧内预测算法", 《电视技术》 *
罗霁: "HEVC快速CU大小选择与SKIP模式早期判断算法", 《中国优秀硕士学位论文全文数据库》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107820077A (zh) * 2016-09-14 2018-03-20 北京金山云网络技术有限公司 一种最大可用编码单元尺寸确定方法及装置
CN107820077B (zh) * 2016-09-14 2019-06-28 北京金山云网络技术有限公司 一种最大可用编码单元尺寸确定方法及装置
CN111294591A (zh) * 2020-05-09 2020-06-16 腾讯科技(深圳)有限公司 视频信息处理方法、多媒体信息处理方法、装置

Similar Documents

Publication Publication Date Title
KR102555673B1 (ko) 코딩 방법 및 장치
CN111147867B (zh) 一种多功能视频编码cu划分快速决策方法及存储介质
CN105532001B (zh) 用于使用基于深度的视差矢量对视频进行层间编码方法以及解码方法和设备
CN104067617B (zh) 解码视频信号的方法
CN104243997B (zh) 一种质量可分级hevc视频编码方法
CN109076216A (zh) 使用画面划分信息对视频进行编码和解码的方法和设备
CN113273213A (zh) 图像编码/解码方法和设备以及存储比特流的记录介质
WO2020140700A1 (zh) 色度块的预测方法和装置
WO2020088324A1 (zh) 一种视频图像预测方法及装置
CN111527752A (zh) 图像编码和解码的方法和装置以及存储比特流的记录介质
CN112040247B (zh) 视频解码方法、视频解码器以及计算机可读存储介质
CN109479134A (zh) 编码装置、解码装置、编码方法及解码方法
CN1220550A (zh) 用于隔行形状编码器的模式编码方法及装置
KR102616713B1 (ko) 이미지 예측 방법, 장치 및 시스템, 디바이스 및 저장 매체
CN109076219A (zh) 图像解码装置以及图像编码装置
CN104202612B (zh) 基于四叉树约束的编码单元的划分方法及视频编码方法
CN110891176A (zh) 基于仿射运动模型的运动矢量预测方法及设备
CN111698515B (zh) 帧间预测的方法及相关装置
CN109479135A (zh) 编码装置、解码装置、编码方法及解码方法
US20240283966A1 (en) Method and Apparatus for Motion Vector Prediction
WO2020088482A1 (zh) 基于仿射预测模式的帧间预测的方法及相关装置
WO2022166462A1 (zh) 编码、解码方法和相关设备
CN105847798A (zh) 一种用于视频编码的快速编码单元划分方法及装置
CN107278373A (zh) 用于使用自适应瓦片大小的视频译码的方法和设备
CN102647595A (zh) 一种基于avs的亚像素运动估计的装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160810