一种高效视频编码的帧内预测模式决策方法及装置的制造方法
【技术领域】
[0001] 本申请涉及视频编码领域,尤其涉及一种高效视频编码(High Efficiency Video Coding,HEVC)的帧内预测模式决策方法及装置。
【背景技术】
[0002] 近年来,随着互联网和硬件设备的发展,视频的制作成本愈来愈低,对视频的分 享和访问需求日益增强。视频的分辨率愈来愈大,高清视频(分辨率为1920X 1080,记作 1080p)甚至超高清视频(分辨率为3840X2160,记作4K)被越来越多地制作、传播和播放。 然而,无论是MPEG_2(MovingPicture Experts Group 2,运动图像专家组系列标准2)或是 H.264/AVC (Advanced Video Coding,高级视频编码)都不是为这种高分辨率视频所设计 的,这对视频压缩技术提出了新的要求及挑战。
[0003] 2013 年, 由 ITU-T (International Telecommunication Union Telecommunication Standardization Sector,国际电信联合会电信标准化分会) VCEG (Video Coding Experts Group,视频编码专家组)和 ISO (International Organization for Standardization,国际标准化组织)MPEG (Moving Picture Experts Group,运动图像专家组)联合成立的视频编码联合协作团队(Joint Collaborative Team on Video Coding,JCT-VC)研宄制定了新一代视频编码标准,即高效视频编码(HEVC)标准。 与H. 264/AVC相比,在相同的画质下,采用HEVC标准可以节省一半上的码率。
[0004] 图1是H. 264/AVC和HEVC分别采用的帧内预测模式的示意图。如图1所示,与 H. 264/AVC所采用的帧内预测模式相比,HEVC采用了多方向帧内预测,方向数高达35个。 包含Intra Planar模式(记作:模式0)、Intra DC模式(记作:模式1)以及33种方向性 预测模式(记作:模式2~模式34) :Intra_Angular[i],i = 2,…,34,这使得HEVC的帧 内预测更加精细,预测值更加准确。
[0005] 如图1所示,HEVC的33种方向性预测模式中,模式10称为水平方向预测模式。模 式2~9可称为向下偏移水平方向的方向性预测模式,模式11~34可称为向上偏移水平 方向的方向性预测模式。
[0006] 模式26称为垂直方向预测模式,模式27~34可称为向右偏移垂直方向的方向性 预测模式,模式2~25可称为向左偏移垂直方向的方向性预测模式。
[0007] HEVC中的帧内预测模式有35种,如果对每一种帧内预测模式都做一次率失真优 化(Rate Distortion Optimization,RD0)运算,即对每一种帧内预测模式都进行一次预 测、变换、量化、熵编码、反量化、反变换和求失真处理,将使编码器的计算复杂度成几何倍 数增长。因此,需要一个帧内预测模式的快速决策方法来选取最佳的预测模式以减小运算 量。
【发明内容】
[0008] 本申请所要解决的技术问题是,克服现有技术的不足,提供一种可减少进行帧内 预测模式决策运算量的高效视频编码01EVC)帧内预测模式决策方法及装置。
[0009] 为了解决上述问题,本申请提供一种高效视频编码的帧内预测模式决策方法,其 特征在于,该方法包括:
[0010] 将当前TO块的方向性预测模式按照各模式所对应的序号依次分为M个方向模式 组,并采用二分法分别查找出各方向模式组中基于哈达玛变换的率失真代价最小的一个最 优帧内预测模式;
[0011] 对Intra Planar模式、Intra DC模式、一个或多个最可能预测模式和上述各方向 模式组中的最优帧内预测模式做基于哈达玛变换的粗选,选择出其中基于哈达玛变换的率 失真代价最小的N个帧内预测模式加入到筛选列表中;
[0012] 对所述筛选列表中包含的帧内预测模式进行率失真优化运算,选取其中一个最优 的帧内预测模式用于预测所述当前PU块;
[0013] 其中:M为大于等于2且小于9的整数;N为正整数且小于进行所述粗选的帧内预 测模式的个数。
[0014] 此外,将方向差小于或等于45度的相邻的方向性预测模式划分至一个方向模式 组中;
[0015] 其中,进行上述分组时,将向下偏移水平方向的方向性预测模式和向上偏移水平 方向的方向性预测模式分入不同的方向模式组;将向左偏移垂直方向的方向性预测模式和 向右偏移垂直方向的方向性预测模式分入不同的方向模式组。
[0016] 此外,所述N等于3。
[0017] 此外,采用如下步骤进行所述二分法查找:
[0018] A :对当前待查找的方向模式组中包含的各模式按照其序号排序,并将该方向模式 组中的所有方向性预测模式确定为初始的搜索区间;
[0019] B:计算当前搜索区间的两个端点Low和High所对应的帧内预测模式的基于哈达 玛变换的率失真代价值:HSAUP HSAD High;
[0020] C :如果当前搜索区间中仅包含2个帧内预测模式,则根据HSAUP HSAD High的大 小确定该方向模式组中的最优帧内预测模式;否则:
[0021] 在两个端点Low和High之间确定一中间点Mid,并根据HSAUP HSAD High的大小 确定新的搜索区间的两个端点,并跳转至步骤B:
[0022] 如果HSADta〈HSADHigh,则将Low和Mid分别作为新的搜索区间的两个端点;
[0023] 如果HSADta>HSADHigh,则将Mid和High分别作为新的搜索区间的两个端点。
[0024] 此外,在所述步骤C中,还包括:
[0025] 如果HSADLot= HSAD High,则在Low和Mid之间确定一中间点Midi,在Mid与High 之间确定一中间点Mid2;分别计算Midl和Mid2所对应的帧内预测模式的基于哈达玛变换 的率失真代价值:HSAD Midl和HSAD Mid2;并根据HSAD Midl和HSAD Mid2的值确定新的搜索区间:
[0026] 如果HSADMidl彡HSAD Mid2,将Low和Mid分别作为新的搜索区间的两个端点;
[0027] 如果HSADMidl>HSADMid2,将Mid和High分别作为新的搜索区间的两个端点。
[0028] 本发明还提供一种高效视频编码的帧内预测模式决策装置,该装置包含:粗选模 块,率失真优化筛选模块,二分法查找模块;其中:
[0029] 所述二分法查找模块,用于将当前预测单元TO块的方向性预测模式按照各模式 所对应的序号依次分为M个方向模式组,并采用二分法分别查找并输出各方向模式组中基 于哈达玛变换的率失真代价最小的一个最优帧内预测模式;
[0030] 所述粗选模块,用于对Intra Planar模式、Intra DC模式、一个或多个最可能预 测模式和所述二分法查找模块输出的各方向模式组中的最优帧内预测模式做基于哈达玛 变换的粗选,选择并输出其中基于哈达玛变换的率失真代价最小的N个帧内预测模式;
[0031] 所述率失真优化筛选模块,用于对所述粗选模块输出的N个帧内预测模式进行率 失真优化运算,选取并输出其中一个最优的帧内预测模式用于预测所述当前PU块;
[0032] 其中:M为大于等于2且小于9的整数;N为正整数且小于进行所述粗选的帧内预 测模式的个数。
[0033] 此外,所述二分法查找模块将方向差小于或等于45度的相邻的方向性预测模式 划分至一个方向模式组中;
[0034] 其中,进行上述分组时,将向下偏移水平方向的方向性预测模式和向上偏移水平 方向的方向性预测模式分入不同的方向模式组;将向左偏移垂直方向的方向性预测模式和 向右偏移垂直方向的方向性预测模式分入不同的方向模式组。
[0035] 此外,所述二分法查找模块采用如下方式进行所述二分法查找:
[0036] A :对当前待查找的方向模式组中包含的各模式按照其序号排序,并将该方向模式 组中的所有方向性预测模式确定为初始的搜索区间;
[0037] B :计算当前搜索区间的两个端点Low和High所对应的帧内预测模式的基于哈达 玛变换的率失真代价值:HSAUP HSAD High;
[0038] C :如果当前搜索区间中仅包含2个帧内预测模式,则根据HSAUP HSAD High的大 小确定该方向模式组中的最优帧内预测模式;否则:
[0039] 在两个端点Low和High之间确定一中间点Mid,并根据HSAD^^P HSAD High的大小 确定新的搜索区间的两个端点,并跳转至步骤B :
[0040] 如果HSADta〈HSADHigh,则将Low和Mid分别作为新的搜索区间的两个端点;
[0041] 如果HSADta>HSADHigh,则将Mid和High分别作为新的搜索区间的两个端点。
[0042] 此外,如果HSADkW=
HSAD High,所述二分法查找模块采用如下方式确定新的搜索区 间:
[0043] 在Low和Mid之间确定一中间点Midi,在Mid与High之间确定一中间点Mid2 ;分 别计算Midi和Mid2所对应的帧内预测模式的基于哈达玛变换的率失真代价值:HSADMidl和 HSAD Mid2;并根据HSAD Midl和HSAD Mid2的值确定新的搜索区间:
[0044] 如果HSADMidl< HSAD Mid2,将Low和Mid分别作为新的搜索区间的两个端点;
[0045] 如果HSADMidl>HSADMid2,将Mid和High分别作为新的搜索区间的两个端点。
[0046] 此外,所述N等于3。
[0047] 综上所述,本发明充分利用了 35种帧内预测模式中的33种方向性预测模式在预 测角度上的渐变特征所对应的率失真代价值的渐变特征,以二分法查找方式代替现有技术 中对所有的35种帧内预测模式进行哈达玛粗选的方式,在不丢失每个分组中的最优解的 前提下,过滤掉不太可能成为最优帧内预测模式的候选模式,减少了进行哈达玛粗选的帧 内预测模式的个数,进而提高了帧内预测模式决策的运算效率。与现有技术相比,本发明可 以在视频压缩质量不变的情况下,将帧内预测编码速度提高20%。
【附图说明】
[0048] 图1是H. 264/AVC和HEVC分别采用的帧内预测模式的示意图;
[0049] 图2是现有的HM参考软件提出的一种帧内预测模式快速决策方法的流程图;
[0050] 图3为本发明实施例HEVC帧内预测模式决策方法流程图;
[0051] 图4是本发明另一具体实施例HEVC帧内预测模式决策方法流程图;
[0052] 图4-1为本发明实施例采用二分法查找方向模式组中基于哈达玛变换的率失真 代价最小的一个最优帧内预测模式的方法流程图;
[0053] 图5是本发明实施例HEVC帧内预测模式决策装置结构示意图。
【具体实施方式】
[0054] 本发明的核心是,将33种方向性预测模式按照方向/角度(或者帧内模式序号) 的顺序分为M (M可以为4)个方向模式组,并在各方向模式组中采用二分法查找出各方向模 式组中基于哈达玛变换的率失真代价最小的一个最优帧内预测模式;对模式0、模式1和各 方向模式组中最优的一个帧内预测模式做基于哈达玛变换的粗选,选择出其中基于哈达玛 变换的率失真代价最小的N (N可以为3)个帧内预测模式加入RDO筛选列表中,并将MPM加 入RDO筛选列表中;最后对RDO筛选列表中的各帧内预测模式进行RDO运算,得到各帧内预 测模式的率失真代价值最终选取其中最小的一个最优的帧内预测模式用于预测 当前TO块。
[0055] 现有的HM(HEVC Test Model,HEVC测试模型)参考软件提出了一种如图2所示的 帧内预测模式快速决策方法。如图2所示,该方法包括:
[0056] 步骤201:对当前PU(Prediction Unit,预测单元)块对应的所有帧内预测模式做 基于哈达玛变换的粗选(Rough Mode Decision,RMD),即计算各预测方向上基于哈达玛变 换的率失真代价,并选取其中率失真代价最小的8个(对于大小为4X4和8X8的PU块) 或3个(对于大小为16X16、32X32、64X64的PU块)帧内预测模式加入RD0筛选列表 中;
[0057] 由于哈达玛变换(Hadamard Transform,HT)可以近似地估计视频编码中的码率信 息,因此可以用哈达玛变换所计算得到的率失真代价来代替以RD0运算计算得到的率失真 代价,以便减少搜索最佳帧内预测模式的计算量。
[0058] 上述基于哈达玛变换的率失真代价是对图像预测之后残差值的哈达玛变换代价 值加上编码预测模式所估计的比特值,在本文中我们简称为哈达玛变换代价值,记作HSAD, 如公式1所示。
[0059] HSAD = SATD+ 入? B
[0060]
公式1
[0061] 公式1中,HSAD表示哈达玛变换代价值,SATD表示预测之后得到的残差经过哈达 玛变换后的累加和,A表示拉格朗日系数,B表示预测单元采用当前预测模式估计得到的 比特位数。
[0062] 本步骤中,对不同大小的TO块,加入上述RD0筛选列表中的帧内预测模式的个数 不同:对于大小为4X4和8X8的PU±夬,选取HSAD最小的前8个最优预测模式加入上述 RDO筛选列表中,以便进行后续的RDO运算及筛选;对于大小为16X 16、32X32、64X64的 TO块,选取HSAD最小的前3个最优预测模式加入上述RDO筛选列表中,以便进行后续的RDO 运算及筛选。
[0063] 步骤202 :获得当前PU块的相邻块的最可能预测模式(Most Probable Mode, MPM),并将MPM也加入上述RDO筛选列表中;
[0064] MPM包含三个选项,前两个选项根据当前PU块的上邻PU块和左邻PU块设定。如 果上邻TO块和左邻PU块与当前PU块属于同一个CTB (Coding Tree Block,树形编码块), 且为帧内预测模式,则选定上邻TO块和左邻PU块的帧内预测模式作为当前PU块的MPM候 选模式,否则判定相邻块不可用,选择Intra DC模式为MPM候选模式。
[0065] 如果前两个MPM候选模式不相同,贝1」按照Intra DC (模式1),Intra Planar (模式 0)和Intra垂直预测模式(即模式2~模式34中的垂直方向预测模式)的顺序选择一个 与前两个MPM候选模式不重复的模式作为第三个MPM候选模式;
[0066] 如果前两个MPM候选模式相同并且是Intra DC (模式1)或Intra Planar (模式 〇),则按照Intra DC,Intra Planar和Intra垂直预测模式的顺序选择两个不重复的模式 作为MPM候选模式;
[0067] 如果前两个MPM候选模式相同并且是方向性预测模式,则选择离对应方向最近的 两个预测模式作为第二和第三个MPM候选模式。
[0068] 如果当前TO块的预测模式和MPM候选模式之一相同,则只需编码该候选模式在 MPM中的索引值即可;否则,使用5比特定长编码对当前PU块的帧内预测模式进行编码。
[0069] 步骤203 :对RD0筛选列表中包含的多个帧内预测模式进行RD0运算,得到各帧内 预测模式所对应的基于RD0运算的率失真代价(记作J m(KJ,选取最小的一个最优的帧 内预测模式用于预测当前PU块。
[0070] 表1为现有的HM参考软件的帧内预测模式快速决策方法中针对不同的TO大小所 需进行的基于哈达玛变换的粗选(记作HAD筛选)和RD0筛选的次数。
[0071]
[0072]表 1
[0073] 虽然现有技术中的上述帧内预测模式快速决策方法可以降低帧内预测模式决策 的运算量,但是在进彳丁 RD0筛选时,对于大小为4X4和8X8的HJ块仍可能需要进彳丁 9次 左右的RDO运算,进行帧内预测模式决策的运算量依然相对较大。
[0074] 图3是本发明实施例HEVC帧内预测模式决策方法流程图;如图3所示,该方法包 括:
[0075] 步骤301 :将当前PU块的方向性预测模式按照各模式所对应的序号依次分为M个 方向模式组,并采用二分法分别查找出各方向模式组中基于哈达玛变换的率失真代价最小 的一个最优帧内预测模式。
[0076] 步骤302 :对Intra Planar模式、Intra DC模式、一个或多个最可能预测模式和上 述各方向模式组中的最优帧内预测模式做基于哈达玛变换的粗选,选择出其中基于哈达玛 变换的率失真代价最小的N个帧内预测模式加入到筛选列表中。
[0077] 步骤303 :对所述筛选列表中包含的帧内预测模式进行率失真优化运算,选取其 中一个最优的帧内预测模式用于预测所述当前PU块。
[0078] 下面结合图4对是本发明一个实施例HEVC帧内预测模式决策方法流程进行说明。 本实施例的帧内预测模式决策方法包括:
[0079] 步骤401 :将当前PU块的33种方向性预测模式(即模式2~模式34)按照方向/ 角度,或者说按照其帧内预测模式序号分为4个方向模式组;其中:将水平方向的方向性预 测模式分为两组,分别记作方向模式组1和方向模式组2 ;将垂直方向的方向性预测模式分 为两组,分别记作方向模式组3和方向模式组4 ;
[0080] 方向模式组1中包含的各预测模式序号为:{2, 3,4, 5,6, 7,8,9,10};
[0081] 方向模式组2中包含的各预测模式序号为:{11,12,13,14,15,16,17,18};
[0082] 方向模式组3中包含的各预测模式序号为:{19,20,21,22,23,24,25,26};
[0083] 方向模式组4中包含的各预测模式序号为:{27, 28, 29, 30, 31,32, 33, 34}。
[0084] 步骤402 :采用二分法分别查找出4个方向模式组中基于哈达玛变换的率失真代 价最小的一个最优帧内预测模式;
[0085] 图4-1为本发明实施例采用二分法查找方向模式组中基于哈达玛变换的率失真 代价最小的一个最优帧内预测模式的方法流
程图;如图4-1所示,该方法包括:
[0086] 步骤402a :将待搜索方向模式组中的各预测模式按照其预测模式序号排序;
[0087] 本步骤中可以按照预测模式序号由小到大或者由大到小的顺序进行排序,优选为 以由小到大的顺序对待搜索方向模式组中的各预测模式的序号排序,以减少内存的占用。
[0088] 步骤402b :将整个待搜索方向模式组设定为初始的搜索区间;
[0089] 将搜索区间记作I,搜索区间I的两个端点的预测模式序号分别记作Low和High ; I可以表示为:I [Low,…,High];
[0090] 例如,当前的待搜索方向模式组为方向模式组1,则初始搜索区间I = {2, 3,4, 5, 6, 7,8,9,10} ;1 的端点 Low = 2, High = 10。
[0091] 步骤402c :如果尚未计算,则计算当前搜索区间I的两个端点所对应帧内预测模 式的基于哈达玛变换的率失真代价值,分别记作:HSAD^^P HSADHigh。
[0092] 步骤402d :判断当前搜索区间中预测模式的个数k :如果k = 2,则根据HSAU口 HSADmgh的值确定当前方向模式组中的最优帧内预测模式;在当前方向模式组的二分法查 找结束。
[0093] 步骤402e:确定在当前搜索区间中位于两个端点之间的一个点,将该点所对应的 预测模式序号记作Mid ;并根据HSAD^^P HSAD High的值确定下一级搜索区间;
[0094] 本步骤中,可以令:
[0095]
[0096] Mid=ULow_+High.)/2_|;其中,[1表示向上取整,U表示向下取整。
[0097] 如果HSADk/HSAD^h,则将搜索区间I中Low点至Mid点所包含的各预测模式作 为新的搜索区间:I[Low,…,Mid];
[0098] 如果HSADta>HSADmgh,则将搜索区间I中Mid点至High点所包含的各预测模式作 为新的搜索区间[Mid,…,High];
[0099] 如果 HSADLot= HSAD High,则:
[0100] 步骤402el :在Low点与Mid点之间确定一个点,记作Midi,并在Mid与High之间 确定一个点,记作Mid2 ;
[0101] Midi和Mid2的确定方法与上述Mid的确定方法类似;
[0102] 步骤402e2 :分别计算Midi和Mid2所对应帧内预测模式的基于哈达玛变换的率 失真代价值,分别记作:HSADMidl和HSAD Mid2;根据HSAD Midl和HSAD Mid2的值确定下一级搜索区 间:
[0103] 如果HSADMidl彡HSADMid2,将搜索区间I中Low点至Mid点所包含的各预测模式作 为新的搜索区间:I [Low,…,Mid];
[0104] 如果HSADMidl>HSADMid2,将搜索区间I中Mid点至High点所包含的各预测模式作为 新的搜索区间[Mid,…,High]。
[0105] 在本发明的其它实施例中,如果HSADta= HSADmgh,也可以在[Low,…,Mid]和 [Mid,…,High]中随机选择一个作为新的搜索区间。
[0106] 步骤402f:跳转至步骤402c。
[0107] 步骤403 :对模式0、模式1和各方向模式组中的最优帧内预测模式做基于哈达玛 变换的粗选,选择出其中率失真代价最小的3个帧内预测模式加入RD0筛选列表中。
[0108] 步骤404 :获得当前PU块的相邻块的最可能预测模式(Most Probable Mode, MPM),并将MPM也加入上述RD0筛选列表中。
[0109] 步骤405 :对RD0筛选列表中包含的多个帧内预测模式进行RD0运算,得到各帧内 预测模式所对应的基于RD0运算的率失真代价(记作J m(KJ,选取最小的一个最优的帧 内预测模式用于预测当前PU块。
[0110] 本实施例中,基于RD0运算的率失真代价计算方法流程图包含如下步骤:
[0111] 步骤a:将当前的编码块记作Fee,根据当前的预测方向生成相应的预测块,记作 Pre ;
[0112] 步骤b :根据Fee和Pre计算生成当前预测方向的残差块Res :Res = Fee - Pre ;
[0113] 步骤c :对残差块作变换,将残差块Res从时域信号变换成频域信号,记作TRes ;
[0114] 步骤d :对变换后的残差块TRes进行量化,得到量化后的残差块QTRes ;
[0115] 步骤e :对量化后的残差块QTRes进行熵编码,以获得该残差块所占用的比特数目 R;
[0116] 步骤f :对量化后的残差块QTRes进行反量化,得到反量化后的残差块TRes' ;
[0117] 步骤g :对反量化后的残差块TRes'做反变换,将残差块从频域信号变换为时域信 号,记作Res' ;
[0118] 步骤h :根据残差块Res'和预测块Pre得到当前的重构解码块Rec :Rec = Res' +Pre ;
[0119] 步骤i :根据编码块Fee和重构解码块Rec计算得到当前编码块的失真D = Fee-Rec ;
[0120] 步骤j :根据失真D和比特数目R值计算当前预测方向的率失真代价J = D+入R, 其中A为Lagrange系数。
[0121] 从上述流程可以看到,基于RDO运算的率失真代价计算过程复杂,需要很大的运 舁里。
[0122] 由上可知,本发明的上述实施例根据33种方向性预测模式在预测角度上的渐变 特征所对应的率失真代价值的渐变特征,将33种方向性预测模式按照不同的方向区间分 为4个方向模式组后,在每一方向模式组中采用二分法查找出基于哈达玛变换的率失真代 价最小的一个最优帧内预测模式,无需对各方向模式组中的每一方向性预测模式进行哈达 玛变换,减少了进行哈达玛变换的次数,从而减少了帧内预测模式决策的整体运算量。
[0123] 图5是本发明实施例HEVC帧内预测模式决策装置结构示意图;如图5所示,该装 置包含:二分法查找模块,粗选模块,RDO筛选模块;其中:
[0124] 二分法查找模块,用于将当前TO块的方向性预测模式按照各模式所对应的序号 依次分为M个方向模式组,并采用二分法分别查找并输出各方向模式组中基于哈达玛变换 的率失真代价最小的一个最优帧内预测模式;
[0125] 粗选模块,用于对Intra Planar模式、Intra DC模式、一个或多个最可能预测模式 和二分法查找模块输出的各方向模式组中的最优帧内预测模式做基于哈达玛变换的粗选, 选择并输出其中基于哈达玛变换的率失真代价最小的N个帧内预测模式;
[0126] 率失真优化筛选模块,用于对粗选模块输出的N个帧内预测模式进行率失真优化 运算,选取并输出其中一个最优的帧内预测模式用于预测当前PU块;
[0127] 其中:M为大于等于2且小于9的整数;N为正整数且小于进行粗选的帧内预测模 式的个数。
[0128] 此外,二分法查找模块将方向差小于或等于45度的相邻的方向性预测模式划分 至一个方向模式组中;
[0129] 其中,进行上述分组时,将向下偏移水平方向的方向性预测模式和向上偏移水平 方向的方向性预测模式分入不同的方向模式组;将向左偏移垂直方向的方向性预测模式和 向右偏移垂直方向的方向性预测模式分入不同的方向模式组。
[0130] 此外,二分法查找模块采用如下方式进行二分法查找:
[0131] A :对当前待查找的方向模式组中包含的各模式按照其序号排序,并将该方向模式 组中的所有方向性预测模式确定为初始的搜索区间;
[0132] B :计算当前搜索区间的两个端点Low和High所对应的帧内预测模式的基于哈达 玛变换的率失真代价值:HSAUP HSAD High;
[0133] C :如果当前搜索区间中仅包含2个帧内预测模式,则根据HSAUP HSAD High的大 小确定该方向模式组中的最优帧内预测模式;否则:
[0134] 在两个端点Low和High之间确定一中间点Mid,并根据HSAD^^P HSAD High的大小 确定新的搜索区间的两个端点,并跳转至步骤B :
[0135] 如果HSADta〈HSADHigh,则将Low和Mid分别作为新的搜索区间的两个端点;
[0136] 如果HSADta>HSADHigh,则将Mid和High分别作为新的搜索区间的两个端点。
[0137]此外,如果HSAD_= HSADHigh,二分法查找模块采用如下方式确定新的搜索区间:
[0138] 在Low和Mid之间确定一中间点Midi,在Mid与High之间确定一中间点Mid2 ;分 别计算Midi和Mid2所对应的帧内预测模式的基于哈达玛变换的率失真代价值:HSADMidl和 HSAD Mid2;并根据HSAD Midl和HSAD Mid2的值确定新的搜索区间:
[0139] 如果HSADMidl彡HSAD Mid2,将Low和Mid分别作为新的搜索区间的两个端点;
[0140] 如果HSADMidl>HSADMid2,将Mid和
High分别作为新的搜索区间的两个端点。
[0141] 上述N等于3。
[0142] 根据本发明的基本原理,上述实施例还可以有其它变换方式,例如:
[0143] ( -)本发明的上述实施例将33种方向性预测模式分为4个方向模式组,并确定 了每个方向模式组中包含的方向性预测模式的序号;
[0144] 在本发明的其它实施例中,可以对上述各方向模式组中的序号进行微调,例如,将 模式10从方向模式组1调到方向模式组2 ;将模式18从方向模式组2调到方向模式组3 ; 将模式26从方向模式组3调到方向模式组4 ;等等。
[0145] (二)本发明的上述实施例将33种方向性预测模式分为4个方向模式组,即M = 4 ;
[0146] 在本发明的其它实施例中,可以对M值进行如下设置:
[0147] M = 2 ;例如,将水平方向的方向性预测模式分为1组,将垂直方向的方向性预测模 式分为1组;或
[0148] M = 3 ;例如,将水平方向的方向性预测模式分为1组,将垂直方向的方向性预测模 式分为2组;或水平方向的方向性预测模式分为2组,将垂直方向的方向性预测模式分为1 组;或
[0149] M = 5 ;例如,将水平方向的方向性预测模式分为2组,将垂直方向的方向性预测模 式分为3组;或将水平方向的方向性预测模式分为3组,将垂直方向的方向性预测模式分为 2组;或
[0150] M = 6 ;例如,将水平方向的方向性预测模式分为3组,将垂直方向的方向性预测模 式分为3组。
[0151] 需要注意的是,在上述分组方案中,仍然需要保证各方向模式组中的方向性预测 模式序号的连续性。
[0152] 综上所述,本发明充分利用了 35种帧内预测模式中的33种方向性预测模式在预 测角度上的渐变特征所对应的率失真代价值的渐变特征,以二分法查找方式代替现有技术 中对所有的35种帧内预测模式进行哈达玛粗选的方式,在不丢失每个分组中的最优解的 前提下,过滤掉不太可能成为最优帧内预测模式的候选模式,减少了进行哈达玛粗选的帧 内预测模式的个数,进而提高了帧内预测模式决策的运算效率。与现有技术相比,本发明可 以在视频压缩质量不变的情况下,将帧内预测编码速度提高20%。
【主权项】
1. 一种高效视频编码的帧内预测模式决策方法,其特征在于,该方法包括: 将当前PU块的方向性预测模式按照各模式所对应的序号依次分为M个方向模式组,并 采用二分法分别查找出各方向模式组中基于哈达玛变换的率失真代价最小的一个最优帧 内预测模式; 对Intra Planar模式、Intra DC模式、一个或多个最可能预测模式和上述各方向模式 组中的最优帧内预测模式做基于哈达玛变换的粗选,选择出其中基于哈达玛变换的率失真 代价最小的N个帧内预测模式加入到筛选列表中; 对所述筛选列表中包含的帧内预测模式进行率失真优化运算,选取其中一个最优的帧 内预测模式用于预测所述当前PU块; 其中:M为大于等于2且小于9的整数;N为正整数且小于进行所述粗选的帧内预测模 式的个数。2. 如权利要求1所述的方法,其特征在于, 将方向差小于或等于45度的相邻的方向性预测模式划分至一个方向模式组中; 其中,进行上述分组时,将向下偏移水平方向的方向性预测模式和向上偏移水平方向 的方向性预测模式分入不同的方向模式组;将向左偏移垂直方向的方向性预测模式和向右 偏移垂直方向的方向性预测模式分入不同的方向模式组。3. 如权利要求1或2所述的方法,其特征在于, 所述N等于3。4. 如权利要求1所述的方法,其特征在于, 采用如下步骤进行所述二分法查找: A :对当前待查找的方向模式组中包含的各模式按照其序号排序,并将该方向模式组中 的所有方向性预测模式确定为初始的搜索区间; B :计算当前搜索区间的两个端点Low和High所对应的帧内预测模式的基于哈达玛变 换的率失真代价值:HSADta和HSAD High; C :如果当前搜索区间中仅包含2个帧内预测模式,则根据HSADta和HSAD High的大小确 定该方向模式组中的最优帧内预测模式;否则: 在两个端点Low和High之间确定一中间点Mid,并根据HSADkjw和HSAD High的大小确定 新的搜索区间的两个端点,并跳转至步骤B : 如果HSADk^HSADlligh,则将Low和Mid分别作为新的搜索区间的两个端点; 如果HSADk^HSADlligh,则将Mid和High分别作为新的搜索区间的两个端点。5. 如权利要求4所述的方法,其特征在于, 在所述步骤C中,还包括: 如果HSADkjw= HSAD High,则在Low和Mid之间确定一中间点Midi,在Mid与High之间 确定一中间点Mid2 ;分别计算Midi和Mid2所对应的帧内预测模式的基于哈达玛变换的率 失真代价值:HSADmdl和HSAD Mid2;并根据HSAD Midl和HSAD Mid2的值确定新的搜索区间: 如果HSADmdlS HSADmd2,将Low和Mid分别作为新的搜索区间的两个端点; 如果HSADMidl>HSADMid2,将Mid和High分别作为新的搜索区间的两个端点。6. -种高效视频编码的帧内预测模式决策装置,其特征在于,该装置包含:粗选模块, 率失真优化筛选模块,二分法查找模块;其中: 所述二分法查找模块,用于将当前预测单元PU块的方向性预测模式按照各模式所对 应的序号依次分为M个方向模式组,并采用二分法分别查找并输出各方向模式组中基于哈 达玛变换的率失真代价最小的一个最优帧内预测模式; 所述粗选模块,用于对Intra Planar模式、Intra DC模式、一个或多个最可能预测模 式和所述二分法查找模块输出的各方向模式组中的最优帧内预测模式做基于哈达玛变换 的粗选,选择并输出其中基于哈达玛变换的率失真代价最小的N个帧内预测模式; 所述率失真优化筛选模块,用于对所述粗选模块输出的N个帧内预测模式进行率失真 优化运算,选取并输出其中一个最优的帧内预测模式用于预测所述当前PU块; 其中:M为大于等于2且小于9的整数;N为正整数且小于进行所述粗选的帧内预测模 式的个数。7. 根据权利要求6所述的装置,其特征在于, 所述二分法查找模块将方向差小于或等于45度的相邻的方向性预测模式划分至一个 方向模式组中; 其中,进行上述分组时,将向下偏移水平方向的方向性预测模式和向上偏移水平方向 的方向性预测模式分入不同的方向模式组;将向左偏移垂直方向的方向性预测模式和向右 偏移垂直方向的方向性预测模式分入不同的方向模式组。8. 根据权利要求6所述的装置,其特征在于, 所述二分法查找模块采用如下方式进行所述二分法查找: A :对当前待查找的方向模式组中包含的各模式按照其序号排序,并将该方向模式组中 的所有方向性预测模式确定为初始的搜索区间; B :计算当前搜索区间的两个端点Low和High所对应的帧内预测模式的基于哈达玛变 换的率失真代价值:HSADta和HSAD High; C :如果当前搜索区间中仅包含2个帧内预测模式,则根据HSADta和HSAD High的大小确 定该方向模式组中的最优帧内预测模式;否则: 在两个端点Low和High之间确定一中间点Mid,并根据HSADkjw和HSAD High的大小确定 新的搜索区间的两个端点,并跳转至步骤B : 如果HSADk^HSADlligh,则将Low和Mid分别作为新的搜索区间的两个端点; 如果HSADk^HSADlligh,则将Mid和High分别作为新的搜索区间的两个端点。9. 根据权利要求8所述的装置,其特征在于, 如果HSADkjw= HSADHigh,所述二分法查找模块采用如下方式确定新的搜索区间: 在Low和Mid之间确定一中间点Midi,在Mid与High之间确定一中间点Mid2 ;分别 计算Midi和Mid2所对应的帧内预测模式的基于哈达玛变换的率失真代价值:HSADmdl和 HSAD md2;并根据HSAD Midl和HSAD Mid2的值确定新的搜索区间: 如果HSADmdlS HSADmd2,将Low和Mid分别作为新的搜索区间的两个端点; 如果HSADMidl>HSADMid2,将Mid和High分别作为新的搜索区间的两个端点。10. 根据权利要求6所述的装置,其特征在于, 所述N等于3。
【专利摘要】一种高效视频编码的帧内预测模式决策方法及装置,该方法包括:将当前PU块的方向性预测模式按照各模式所对应的序号依次分为M个方向模式组,并采用二分法分别查找出各方向模式组中基于哈达玛变换的率失真代价最小的一个最优帧内预测模式;对模式0、模式1、一个或多个最可能预测模式和上述各方向模式组中的最优帧内预测模式做基于哈达玛变换的粗选,选择出其中基于哈达玛变换的率失真代价最小的N个帧内预测模式加入到筛选列表中;对筛选列表中包含的帧内预测模式进行率失真优化运算,选取其中一个最优的帧内预测模式用于预测所述当前PU块。与现有技术相比,本发明可以在视频压缩质量不变的情况下,将帧内预测编码速度提高20%。
【IPC分类】H04N19/147, H04N19/11
【公开号】CN104883565
【申请号】CN201410855847
【发明人】蔡砚刚, 魏伟, 白茂生, 刘阳
【申请人】乐视网信息技术(北京)股份有限公司
【公开日】2015年9月2日
【申请日】2014年12月31日
转载请注明原文地址:https://www.famiwei.com/read-8136014.html