CN106888379A - 应用于h.264到hevc的帧间快速视频转码方法 - Google Patents

应用于h.264到hevc的帧间快速视频转码方法 Download PDF

Info

Publication number
CN106888379A
CN106888379A CN201710023947.8A CN201710023947A CN106888379A CN 106888379 A CN106888379 A CN 106888379A CN 201710023947 A CN201710023947 A CN 201710023947A CN 106888379 A CN106888379 A CN 106888379A
Authority
CN
China
Prior art keywords
motion vector
motion
search
current
hevc
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
CN201710023947.8A
Other languages
English (en)
Other versions
CN106888379B (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.)
Tongji University
Original Assignee
Tongji University
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 Tongji University filed Critical Tongji University
Priority to CN201710023947.8A priority Critical patent/CN106888379B/zh
Publication of CN106888379A publication Critical patent/CN106888379A/zh
Application granted granted Critical
Publication of CN106888379B publication Critical patent/CN106888379B/zh
Expired - Fee Related 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/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Landscapes

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

Abstract

应用于H.264到HEVC的帧间快速视频转码方法。根据H.264码流信息以及HEVC帧间编码信息,对于H.264到HEVC的转码器中的帧间编码部分,采取快速的模式决策和运动估计方法。对于深度为0、1层的CU,结合H.264码流解码得到的信息和HEVC编码信息获取2N×2N提前判定阈值和非对称划分(Asymmetric Motion Partition,AMP)判定阈值,之后确定其PU的搜索情况。对于运动估计部分,将通过H.264解码信息来确定其运动矢量搜索范围和运动矢量搜索精度。将运动矢量搜索精度分为整像素精度、亚像素精度以及零运动矢量三个部分。该方法可显著减少H.264到HEVC转码过程中帧间编码的计算复杂度。

Description

应用于H.264到HEVC的帧间快速视频转码方法
技术领域
本发明涉及视频数据的转码,具体地指一种基于统计分析的H.264到HEVC转码方法,用于将H.264/AVC标准的视频数据转码为HEVC标准的视频数据。
背景技术
MPEG和ITU两大国际组织在2013年正式发布了HEVC新一代数字视频编解码标准,以适应高质量视频应用的发展。HEVC使用先进的技术用以改善码流、编码质量、延时和算法复杂度之间的关系,有效地提高了视频编码效率。HEVC依旧是沿用了前几代编码标准的预测加变换的混合编码框架。与H.264不同的是,HEVC扩大了编码块的尺寸大小。在H.264中,编码块的大小是从4×4到16×16,而HEVC将块的大小扩展为4×4到128×128来应对高分辨率视频。同时,HEVC也引入了更为灵活的块结构RQT(Residual Quad-tree Transform),自适应的选择最优大小的变换块。
除此之外,HEVC采用了更为灵活的图像编码结构,对于每一帧图像,HEVC会按照最大编码单元LCU(Largest Coding Unit)来进行编码,LCU的大小通常为64×64,而对于每个LCU,其中又可以划分为更小的编码单元CU(Coding Unit),而在每个CU中,在模式选择过程可以划分为预测单元PU(Prediction Unit),在变换过程中有可以划分为变换单元TU(Transform Unit)。目前网络上现存的大多数视频主要是基于H.264标准进行压缩编码的,为了减少视频传输的网络带宽及存储空间,需要将现存的H.264编码视频码流转换为HEVC视频码流,以进一步对视频进行压缩。由于HEVC采用了预测加变换的混合编码框架,其编码结构和H.264有部分相似性,如果能够利用H.264解码的码流信息来预测PU的搜索过程,那么就可以跳过一部分的模式搜索过程,除此之外,运动估计过程在HEVC中占了大约70%的编码复杂度,因此可以考虑对运动估计过程进行加速,这样可以有效地加快转码器的转码速度。
HEVC的测试软件(HEVC Test Model,HM)所采用的CU的大小为64×64、32×32、16×16和8×8,分别对应CU的深度层次为0、1、2、3。而在H.264的测试软件(Joint Model,JM)所采用的宏块大小为16×16和8×8。在HEVC帧间编码中,对于深度层次为0和1的CU,其大小并不存在于H.264的宏块结构中。而对于深度层次为2和3的CU,H.264拥有和HEVC一样的分块大小。对于帧间编码,其中主要可以分为模式选择和运动估计两部分。HM的编码器采用递归的方式对LCU进行划分,对于每一层的CU都要利用基于率失真优化(Rate-DistortionOptimization,RDO)的预测来决定PU和TU的划分,其中TU的划分也采用了四叉树的划分方式,在帧间编码中,它允许变换块的大小根据运动补偿块的大小进行自适应的调整。
为了减少四叉树编码结构递归划分所带来的多余的计算,现有的一些方案针对模式决策和运动估计进行了一系列的优化:例如
文献1(参见蒋炜.H.264到HEVC视频转码技术研究[D].浙江大学,2013.)提出了基于统计分析和基于区域特征分析的快速帧间转码算法。该文献首先根据HEVC码流中SKIP模式与H.264码流中各种模式的映射关系对SKIP模式进行提前判定,然后利用预测单元对应编码区域内宏块编码比特数的统计特性,对其分割模式进行了快速选择。同时文中还考虑了编码比特数和编码复杂度之间的关系,通过比较平均编码比特数和分割阀值来确定编码复杂度,借此来确定编码单元的搜索深度。同时对运动矢量进行聚类,对预测单元进行快速的分类。除此之外,一种优化运动估计搜索起点和搜索范围的方法也被给出,算法中将HEVC当前CU对应H.264所有宏块运动矢量的中值直接作为新的搜索起点,并根据运动矢量的最大值来重新限制搜索范围。
文献2(参见Peixoto,E.,Izquierdo,E.,"A complexity-scalable transcoderfrom H.264/AVC to the new HEVC codec,"Image Processing(ICIP),2012 19th IEEEInternational Conference on,pp.737-740,Sept.30 2012-Oct.3 2012.)中提出了一种基于运动矢量的转码算法,通过对运动矢量的处理,来得到编码单元划分预测的阈值,通过阈值的限定来提前划分或是终止,由于使用的运动信息较为单调,该算法在加速的同时带来了巨大的BD-rate损失。
发明内容
本发明的目的在于提供一种H.264到HEVC的帧间快速转码方法。
首先对HEVC中深度为0和1的CU的预测模式分布情况进行统计,其中图1给出了2N×2N和AMP模式在QP为22时最优模式中的分布比例。判断对模式决策优化的可行性。通过统计分析,从表中可以直观的看出,2N×2N的划分在其中占据了极大的比例,基本占比都处于70%左右。而四种非对称分割模式累积所占比例不过10%,相对于2N×2N划分来说,这一部分的计算就显现除了冗余性。除了SKIP模式和Intra模式之外,其他PU模式的编码复杂度都是近似的,由于不同PU分布比例的不平衡,整个模式选择过程就显得过于费时。因此在CU深度为0和1时,首先提前判断该CU是否为Skip模式,然后预测是否要进行AMP模式搜索,而在CU深度为2时,则根据码流信息进行模式映射,对CU的划分提前中止。而对于运动估计过程,我们可以定义一些规则来建立H.264运动信息和HEVC编码信息的相关性。首先,对于HEVC的运动搜索过程,我们可以根据获取的运动信息来对搜索范围进行一个限定。其次,运动搜索精度也是一个可以优化的部分,将运动搜索精度分成零运动矢量,整像素精度(不包含零运动矢量),亚像素精度,通过阈值分类来判断运动矢量的整体搜索过程。
为达到上述目的,本发明的给出的技术方案概括为:首先使用JM解码器对原始码流进行解码,在解码过程中提取后续转码所需的码流信息,并得到解码后视频序列。在HEVC重编码时保存部分所需HEVC编码信息,结合H.264解码信息计算阈值,在深度0和1时用于2N×2N模式的提前判定和AMP模式是否需要搜索,在深度2时则判断CU是否继续向下划分。对于运动估计过程,在PU计算运动矢量时,可以根据当前PU对应H.264解码得到的运动矢量最大值,限制其运动矢量的搜索范围,同时根据运动矢量值来确定运动矢量的搜索精度,包括可能产生的零运动矢量。
具体说,本发明技术方案包括以下步骤:
步骤S1:基于H.264通用的测试平台JM,对输入码流进行解码,提取所需码流信息,同时得到解码后的视频序列。随后将解码得到的视频序列送入优化后的HEVC测试平台HM,并在编码过程中获取所需的阈值。
步骤S1.1对于模式选择部分的相关阈值公式如下:
首先对于2N×2N划分,可以确定的是,2N×2N大小内的所有区域共享一个运动矢量,因此其内部的运动矢量方差一定为0。同样的,对于非对称分割的模式,其划分出的两个不规则区域,各自区域都只会包含一个运动矢量,为此本文会在算法中引入运动矢量方差来辅助预测过程,其定义如下:
其中D(MVx)和D(MVy)是前一帧非帧内编码图像中,当前层所有最优模式为SKIP和2N×2N划分时,对应运动矢量的x和y分量的方差,对前一帧内所有符合条件的运动矢量方差进行求和,然后求取其平均值作为阈值。若运动矢量为0,则不进行累加,其中n对应了运动矢量不为0的SKIP和2N×2N的个数。而对于AMP划分,其运动矢量只需按照下式进行计算,
AMPmv=D(MVx)+D(MVy)
其中D(MVx)和D(MVy)是当前层CU对应H.264中所有宏块,其运动矢量的x和y分量的方差,求得的即为用于判定AMP的阈值。而对于当前块的判定,其求值所需的运动矢量只包括AMP划分结果较大部分所对应的H.264宏块运动信息。
除此之外,2N×2N划分中的特殊模式SKIP模式与其他预测模式相比,其编码所需的码字更少,其平均值通常只占个位数的比特数,而其他模式的最小码字一般与SKIP的最大码字相等,因此通过从H.264码流信息中获得的对应块的运动信息,可以提前预测出当前块的运动矢量分布情况,以此来预测当前块PU可能选择的模式。在本文算法中,编码比特数通过如下公式进行处理:
Skipbit=Max(Avg(SKIPbit),Medium(SKIPbit),0.8×Max(SKIPbit))
其中,Avg(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块平均编码比特数,Medium(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块编码比特数的中值,Max(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块编码比特数的最大值,其中0.8是修正系数,通过经验和实验得到。
步骤S1.2对于运动估计部分的相关阈值公式如下:
首先,对于HEVC的运动搜索过程,我们可以根据获取的运动信息来对搜索范围进行一个限定。首先将当前PU对应到H.264中覆盖的所有宏块,对其中包含的运动矢量根据以下公式求取最大运动矢量长度Lmv
Lmv=Max(MVxi,MVyi)
其中MVxi和MVyi表示了对应宏块中所有运动矢量的x和y分量,i是PU对应范围内所有4×4的H.264宏块个数。由于H.264和HEVC的运动估计过程基本相似,Lmv可以一定程度上指导运动搜索的范围,为此结合H.264的运动搜索范围SR264和HEVC初始设置的运动搜索范围SR来确定新的搜索范围,其中SR264可由Lmv向上取最近的2的幂次获得,新的搜索范围SRnew计算如下,
为了应对HEVC设置的SR大于H.264搜索范围的情况,当Lmv介于SR264及其一半时,新的搜索范围SRnew直接选择HEVC初始运动搜索范围,否则根据第二个式子计算,若求得的SRnew大于HEVC设置的初始范围SR,则搜索范围设置为SR。
除了运动搜索范围外,运动搜索精度也是一个可以优化的部分,根据之前的分析,可以将运动搜索精度分成几个部分,零运动矢量,整像素精度(不包含零运动矢量),二分之一像素精度,四分之一像素精度,由于二分之一像素精度占据的比例不大,因此与四分之一像素精度合并为亚像素精度部分。通过获取的运动信息进行统计计数,具体的公式如下,
该公式用于判断零运动矢量,其中MVi是当前PU范围内对应的H.264运动矢量,若MVi都小于β像素长度,则Cmv0判定为true,当前PU的运动矢量为0。其中QP为22和27时β为0.5,QP为32和37时β为1。以下公式则只适用于深度0和深度1:
其中Countp1为当前PU对应范围内整像素运动矢量的个数,NumPU为当前PU中包含的运动矢量个数,当Countp1占据总运动矢量个数7/8以上时,转码效果相对较好,因此设置0.875为修正系数。当Pmv为true时只需进行整像素搜索,否则进入亚像素搜索。对于深度2和深度3,根据当前CU对应到H.264中宏块的划分来确定。若在深度2对应运动矢量精度为整像素且CBP为0,或在深度3对应运动矢量精度为整像素且像素残差为0,则只需要进行整像素搜索。
步骤S2:对于当前CU,在前一帧是帧间预测编码的情况下,对于深度为0的CU,计算当前2N×2N范围内对应H.264所有宏块运动矢量的方差curFmv与前一帧的Thmv作比较,判断是否只搜索SKIP和2N×2N模式,同时计算四种非对称划分模式各自较大块部分对应H.264的宏块运动矢量方差curAMPUmv、curAMPDmv、curAMPLmv、curAMPRmv,判断是否需要搜索相应的非对称划分模式。
步骤S3:如果当前深度为1,计算当前2N×2N范围内对应H.264所有宏块运动矢量的方差curFmv和编码比特数curSkipmv,与前一帧的Thmv和Skipbit作比较,判断是否只搜索SKIP和2N×2N模式,两个条件满足一个就进行模式缩减。同时计算四种非对称划分模式各自较大块部分对应H.264的宏块运动矢量方差curAMPUmv、curAMPDmv、curAMPLmv、curAMPRmv,判断是否需要搜索相应的非对称划分模式。
步骤S4:如果当前深度为2,搜索当前层所有模式,然后通过H.264的码流信息进行模式映射。若当前CU对应H.264的宏块为SKIP或Inter_16×16模式,则判定不进入深度3进行编码搜索。若当前CU对应H.264的宏块为Inter_16×8或Inter_8×16模式,则当对应宏块的CBP(Coded Block Pattern)为0时不继续向下一深度搜索。
步骤S5:在PU搜索的RDO过程中,对运动估计过程实施进一步的优化,具体过程如下。
步骤S5.1进入运动估计后,首先对该PU范围内对应的H.264运动矢量进行统计,计算出Cmv0,根据Cmv0可以直接判断当前PU的运动矢量是否为0。若运动矢量判定为0,则运动搜索过程提前中止。
步骤S5.2根据获取的H.264运动信息和HEVC配置信息,计算出当前PU新的搜索范围SRnew,随后按照SRnew进行整像素搜索。对于深度为0和1的CU,根据当前PU范围对应的H.264宏块,获取所有的运动矢量精度,根据统计结果得出Pmv的值,进而判断是否只需要进行整像素搜索。
步骤S5.3对于深度为2和3的CU,根据当前PU所在CU对应的H.264宏块,获取对应宏块运动矢量信息和残差信息,根据该信息来判断是否只需要进行整像素搜索。
本发明的以上技术方案为实现发明任务体现出的贡献性的关键技术要点体现在以下:
(1)、本发明对深度为0和1的CU采取了预测模式选择优化方法,结合H.264解码信息和HEVC编码信息,设置合适的阈值来对2N×2N模式提前判定,同时判断是否需要搜索AMP模式。在深度为2时,通过H.264解码信息的映射,在搜索完当前层所有的预测模式后,判断是否需要划分到下一层,该方案省去了大量的RDO计算,有效的对CU的编码进行优化。
(2)、本发明考虑到HEVC重编码的运动估计过程可以由H.264解码得到的运动信息进行指导,因此根据H.264解码得到的运动矢量,可以限制运动矢量搜索范围,同时进一步精确运动矢量搜索精度,考虑到视频图像通常会包含部分背景,因此也增加了零运动矢量的判定。
由于采用上述技术方案,本发明具有以下有益效果:本发明综合利用了转码中原始码流的可用信息,可以有效地减少深度0和1的PU搜索数量,并预测深度2的CU是否向下划分。除此之外,还对运动矢量的搜索范围和搜索精度进行优化,在保证图像质量的情况下,提高H.264到HEVC帧间转码效率。
附图说明
图1是本发明实例测试HEVC码流中2N×2N(包含SKIP)和AMP模式占比具体情况(QP=22)。
图2是本发明H.264到HEVC的帧间预测模式选择快速决策算法流程图。
图3是本发明H.264到HEVC的帧间预测快速运动估计算法流程图。
具体实施方式
根据H.264码流信息以及HEVC帧间编码信息,对于H.264到HEVC的转码器中的帧间编码部分,采取快速的模式决策和运动估计方法。对于深度为0、1层的CU,结合H.264码流解码得到的信息和HEVC编码信息获取2N×2N提前判定阈值和非对称划分(AsymmetricMotion Partition,AMP)判定阈值,之后确定其PU的搜索情况。首先根据2N×2N判定阈值对CU进行提前2N×2N模式判决,然后预测PU是否直接判定为2N×2N模式,随后根据AMP判定阈值来判断是否需要搜索AMP模式。对于深度为2的CU,根据H.264的码流信息进行映射,判断是否要进入深度3进行编码。对于运动估计部分,将通过H.264解码信息来确定其运动矢量搜索范围和运动矢量搜索精度。将运动矢量搜索精度分为整像素精度、亚像素精度以及零运动矢量三个部分。该方法结合了PU模式分布的统计特征以及H.264的码流信息,可以减少PU模式的搜索数量,降低运动估计过程的计算复杂度,从而对四叉树进行有效的剪枝并跳过不必要的编码分支。该方法可显著减少H.264到HEVC转码过程中帧间编码的计算复杂度。
以下结合附图所示实施例对本发明作进一步的说明。
步骤1:基于H.264通用的测试平台JM,对输入码流进行解码,提取所需码流信息,同时得到解码后的视频序列。随后将解码得到的视频序列送入优化后的HEVC测试平台HM,并在编码过程中获取所需的阈值。
步骤1.1对于模式选择部分的相关阈值公式如下:
首先对于2N×2N划分,可以确定的是,2N×2N大小内的所有区域共享一个运动矢量,因此其内部的运动矢量方差一定为0。同样的,对于非对称分割的模式,其划分出的两个不规则区域,各自区域都只会包含一个运动矢量,为此本文会在算法中引入运动矢量方差来辅助预测过程,其定义如下:
其中D(MVx)和D(MVy)是前一帧非帧内编码图像中,当前层所有最优模式为SKIP和2N×2N划分时,对应运动矢量的x和y分量的方差,对前一帧内所有符合条件的运动矢量方差进行求和,然后求取其平均值作为阈值。若运动矢量为0,则不进行累加,其中n对应了运动矢量不为0的SKIP和2N×2N的个数。而对于AMP划分,其运动矢量只需按照下式进行计算,
AMPmv=D(MVx)+D(MVy) (2)
其中D(MVx)和D(MVy)是当前层CU对应H.264中所有宏块,其运动矢量的x和y分量的方差,求得的即为用于判定AMP的阈值。而对于当前块的判定,其求值所需的运动矢量只包括AMP划分结果较大部分所对应的H.264宏块运动信息。
除此之外,2N×2N划分中的特殊模式SKIP模式与其他预测模式相比,其编码所需的码字更少,其平均值通常只占个位数的比特数,而其他模式的最小码字一般与SKIP的最大码字相等,因此通过从H.264码流信息中获得的对应块的运动信息,可以提前预测出当前块的运动矢量分布情况,以此来预测当前块PU可能选择的模式。在本文算法中,编码比特数通过如下公式进行处理:
Skipbit=Max(Avg(SKIPbit),Medium(SKIPbit),0.8×Max(SKIPbit)) (3)
其中,Avg(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块平均编码比特数,Medium(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块编码比特数的中值,Max(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块编码比特数的最大值,其中0.8是修正系数,通过经验和实验得到。
步骤1.2对于运动估计部分的相关阈值公式如下:
首先,对于HEVC的运动搜索过程,我们可以根据获取的运动信息来对搜索范围进行一个限定。首先将当前PU对应到H.264中覆盖的所有宏块,对其中包含的运动矢量根据以下公式求取最大运动矢量长度Lmv
Lmv=Max(MVxi,MVyi) (4)
其中MVxi和MVyi表示了对应宏块中所有运动矢量的x和y分量,i是PU对应范围内所有4×4的H.264宏块个数。由于H.264和HEVC的运动估计过程基本相似,Lmv可以一定程度上指导运动搜索的范围,为此结合H.264的运动搜索范围SR264和HEVC初始设置的运动搜索范围SR来确定新的搜索范围,其中SR264可由Lmv向上取最近的2的幂次获得,新的搜索范围SRnew计算如下,
为了应对HEVC设置的SR大于H.264搜索范围的情况,当Lmv介于SR264及其一半时,新的搜索范围SRnew直接选择HEVC初始运动搜索范围,否则根据第二个式子计算,若求得的SRnew大于HEVC设置的初始范围SR,则搜索范围设置为SR。
除了运动搜索范围外,运动搜索精度也是一个可以优化的部分,根据之前的分析,可以将运动搜索精度分成几个部分,零运动矢量,整像素精度(不包含零运动矢量),二分之一像素精度,四分之一像素精度,由于二分之一像素精度占据的比例不大,因此与四分之一像素精度合并为亚像素精度部分。通过获取的运动信息进行统计计数,具体的公式如下,
该公式用于判断零运动矢量,其中MVi是当前PU范围内对应的H.264运动矢量,若MVi都小于β像素长度,则Cmy0判定为true,当前PU的运动矢量为0。其中QP为22和27时β为0.5,QP为32和37时β为1。以下公式则只适用于深度0和深度1:
其中Countp1为当前PU对应范围内整像素运动矢量的个数,NumPU为当前PU中包含的运动矢量个数,当Countp1占据总运动矢量个数7/8以上时,转码效果相对较好,因此设置0.875为修正系数。当Pmv为true时只需进行整像素搜索,否则进入亚像素搜索。对于深度2和深度3,根据当前CU对应到H.264中宏块的划分来确定。若在深度2对应运动矢量精度为整像素且CBP为0,或在深度3对应运动矢量精度为整像素且像素残差为0,则只需要进行整像素搜索。
步骤2:首先判断当前CU的深度是否为0,若当前层的深度为0,则统计当前2N×2N范围内对应H.264所有宏块运动矢量的方差curFmv,以及四种非对称划分模式各自较大块部分对应H.264的宏块运动矢量方差curAMPUmv、curAMPDmv、curAMPLmv、curAMPRmv,然后算法进行至下一步;否则,算法跳转至步骤4。
步骤3:根据步骤2得到的curFmv是否不大于前一帧的Thmv,进而判断是否只搜索SKIP和2N×2N模式,根据步骤2得到的curAMPUmv、curAMPDmv、curAMPLmv、curAMPRmv是否不大于前一帧的AMPmv,进而判断是否需要搜索相应的非对称划分模式,若模式缩减则算法搜索指定的预测模式,之后划分至下一层CU;否则,搜索当前层所有的PU模式后划分至下一层CU。
步骤4:判断当前CU的深度是否为1,若当前层的深度为1,则统计当前2N×2N范围内对应H.264所有宏块运动矢量的方差curFmv和编码比特数curSkipmv,以及四种非对称划分模式各自较大块部分对应H.264的宏块运动矢量方差curAMPUmv、curAMPDmv、curAMPLmv、curAMPRmv,然后算法进行至下一步;否则,算法跳转至步骤6。
步骤5:根据步骤4得到的curFmv是否不大于前一帧的Thmv,或在上一层最优模式是2N×2N划分的情况下,curSkipmv是否不大于前一帧的Skipbit,进而判断是否只搜索SKIP和2N×2N模式,两个条件满足一个就进行模式缩减,根据步骤(2)得到的curAMPUmv、curAMPDmv、curAMPLmv、curAMPRmv是否不大于前一帧的AMPmv,进而判断是否需要搜索相应的非对称划分模式,若模式缩减则算法搜索指定的预测模式,之后划分至下一层CU;否则,搜索当前层所有的PU模式后划分至下一层CU。
步骤6:搜索当前层所有的PU模式,根据率失真优化准测(Rate DistortionOptimized,RDO)获取最优预测模式,然后判断当前层的深度。如果当前深度为2,通过H.264的码流信息进行模式映射。若当前CU对应H.264的宏块为SKIP或Inter_16×16模式,则判定不进入深度3进行编码搜索。若当前CU对应H.264的宏块为Inter_16×8或Inter_8×16模式,则当对应宏块的CBP(Coded Block Pattern)为0时不继续向下一深度搜索。
步骤7对于PU搜索的RDO过程,其中的运动估计将按照如下步骤进行。
步骤7.1进入运动估计后,首先对该PU范围内对应的H.264运动矢量进行统计,计算出Cmv0,根据Cmv0可以直接判断当前PU的运动矢量是否为0。若运动矢量判定为0,则运动搜索过程提前中止。
步骤7.2根据获取的H.264运动信息和HEVC配置信息,计算出当前PU新的搜索范围SRnew,随后按照SRnew进行整像素搜索。随后判断当前层深度,若深度为0或1,则进行至下一步;否则,跳转至步骤7.4。
步骤7.3对于深度为0和1的CU,根据当前PU范围对应的H.264宏块,获取所有的运动矢量精度,根据统计结果得出Pmv的值,进而判断是否只需要进行整像素搜索。
步骤7.4对于深度为2和3的CU,根据当前PU所在CU对应的H.264宏块,获取对应宏块运动矢量信息和残差信息,根据该信息来判断是否只需要进行整像素搜索。

Claims (3)

1.应用于H.264到HEVC的帧间快速视频转码方法,其特征在于,首先使用JM解码器对原始码流进行解码,在解码过程中提取后续转码所需的码流信息,并得到解码后视频序列;在HEVC重编码时保存部分所需HEVC编码信息,结合H.264解码信息计算阈值,在深度0和1时用于2N×2N模式的提前判定和AMP模式是否需要搜索,在深度2时则判断CU是否继续向下划分;对于运动估计过程,在PU计算运动矢量时,根据当前PU对应H.264解码得到的运动矢量最大值,限制其运动矢量的搜索范围,同时根据运动矢量值来确定运动矢量的搜索精度,包括可能产生的零运动矢量。
2.如权利要求1所述的方法,其特征在于,具体包括以下步骤:
步骤S1:基于H.264通用的测试平台JM,对输入码流进行解码,提取所需码流信息,同时得到解码后的视频序列;随后将解码得到的视频序列送入优化后的HEVC测试平台HM,并在编码过程中获取所需的阈值;
步骤S1.1对于模式选择部分的相关阈值公式如下:
首先对于2N×2N划分,确定的是,2N×2N大小内的所有区域共享一个运动矢量,其内部的运动矢量方差一定为0;同样的,对于非对称分割的模式,其划分出的两个不规则区域,各自区域都只会包含一个运动矢量,为此本文会在算法中引入运动矢量方差来辅助预测过程,其定义如下:
Th m v = 1 n × Σ ( D ( MV x ) + D ( MV y ) )
其中D(MVx)和D(MVy)是前一帧非帧内编码图像中,当前层所有最优模式为SKIP和2N×2N划分时,对应运动矢量的x和y分量的方差,对前一帧内所有符合条件的运动矢量方差进行求和,然后求取其平均值作为阈值;若运动矢量为0,则不进行累加,其中n对应了运动矢量不为0的SKIP和2N×2N的个数;而对于AMP划分,其运动矢量只需按照下式进行计算,
AMPmv=D(MVx)+D(MVy)
其中D(MVx)和D(MVy)是当前层CU对应H.264中所有宏块,其运动矢量的x和y分量的方差,求得的即为用于判定AMP的阈值;而对于当前块的判定,其求值所需的运动矢量只包括AMP划分结果较大部分所对应的H.264宏块运动信息;
除此之外,2N×2N划分中的特殊模式SKIP模式与其他预测模式相比,其编码所需的码字更少,其平均值通常只占个位数的比特数,而其他模式的最小码字一般与SKIP的最大码字相等,因此通过从H.264码流信息中获得的对应块的运动信息,可以提前预测出当前块的运动矢量分布情况,以此来预测当前块PU可能选择的模式;在本文算法中,编码比特数通过如下公式进行处理:
Skipbit=Max(Avg(SKIPbit),Medium(SKIPbit),0.8×Max(SKIPbit))
其中,Avg(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块平均编码比特数,Medium(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块编码比特数的中值,Max(SKIPbit)是上一帧图像所有最优模式为SKIP模式的对应H.264宏块编码比特数的最大值,其中0.8是修正系数,通过经验和实验得到;
步骤S1.2对于运动估计部分的相关阈值公式如下:
首先,对于HEVC的运动搜索过程,根据获取的运动信息来对搜索范围进行一个限定;首先将当前PU对应到H.264中覆盖的所有宏块,对其中包含的运动矢量根据以下公式求取最大运动矢量长度Lmv
Lmv=Max(MVxi,MVyi)
其中MVxi和MVyi表示了对应宏块中所有运动矢量的x和y分量,i是PU对应范围内所有4×4的H.264宏块个数;由于H.264和HEVC的运动估计过程基本相似,Lmv一定程度上指导运动搜索的范围,为此结合H.264的运动搜索范围SR264和HEVC初始设置的运动搜索范围SR来确定新的搜索范围,其中SR264由Lmv向上取最近的2的幂次获得,新的搜索范围SRnew计算如下,
SR n e w = S R , SR 264 / 2 < L m v &le; SR 264 M a x ( 2 &times; L m v , S R / 4 ) , o t h e r s
为了应对HEVC设置的SR大于H.264搜索范围的情况,当Lmv介于SR264及其一半时,新的搜索范围SRnew直接选择HEVC初始运动搜索范围,否则根据第二个式子计算,若求得的SRnew大于HEVC设置的初始范围SR,则搜索范围设置为SR;
步骤S2:对于当前CU,在前一帧是帧间预测编码的情况下,对于深度为0的CU,计算当前2N×2N范围内对应H.264所有宏块运动矢量的方差curFmv与前一帧的Thmv作比较,判断是否只搜索SKIP和2N×2N模式,同时计算四种非对称划分模式各自较大块部分对应H.264的宏块运动矢量方差curAMPUmv、curAMPDmv、curAMPLmv、curAMPRmv,判断是否需要搜索相应的非对称划分模式;
步骤S3:如果当前深度为1,计算当前2N×2N范围内对应H.264所有宏块运动矢量的方差curFmv和编码比特数curSkipmv,与前一帧的Thmv和Skipbit作比较,判断是否只搜索SKIP和2N×2N模式,两个条件满足一个就进行模式缩减;同时计算四种非对称划分模式各自较大块部分对应H.264的宏块运动矢量方差curAMPUmv、curAMPDmv、curAMPLmv、curAMPRmv,判断是否需要搜索相应的非对称划分模式;
步骤S4:如果当前深度为2,搜索当前层所有模式,然后通过H.264的码流信息进行模式映射;若当前CU对应H.264的宏块为SKIP或Inter_16×16模式,则判定不进入深度3进行编码搜索;若当前CU对应H.264的宏块为Inter_16×8或Inter_8×16模式,则当对应宏块的CBP(Coded Block Pattern)为0时不继续向下一深度搜索;
步骤S5:在PU搜索的RDO过程中,对运动估计过程实施进一步的优化,具体过程如下:
步骤S5.1进入运动估计后,首先对该PU范围内对应的H.264运动矢量进行统计,计算出Cmv0,根据Cmv0可以直接判断当前PU的运动矢量是否为0;若运动矢量判定为0,则运动搜索过程提前中止;
步骤S5.2根据获取的H.264运动信息和HEVC配置信息,计算出当前PU新的搜索范围SRnew,随后按照SRnew进行整像素搜索;对于深度为0和1的CU,根据当前PU范围对应的H.264宏块,获取所有的运动矢量精度,根据统计结果得出Pmv的值,进而判断是否只需要进行整像素搜索;
步骤S5.3对于深度为2和3的CU,根据当前PU所在CU对应的H.264宏块,获取对应宏块运动矢量信息和残差信息,根据该信息来判断是否只需要进行整像素搜索。
3.如权利要求2所述的方法,其特征在于,除了运动搜索范围外,运动搜索精度也是优化部分,将运动搜索精度分成几个部分,零运动矢量,整像素精度,二分之一像素精度,四分之一像素精度,由于二分之一像素精度占据的比例不大,因此与四分之一像素精度合并为亚像素精度部分;通过获取的运动信息进行统计计数,具体的公式如下,
C m v 0 = t r u e , | MV i | < &beta; f a l s e , o t h e r s
该公式用于判断零运动矢量,其中MVi是当前PU范围内对应的H.264运动矢量,若MVi都小于β像素长度,则Cmv0判定为true,当前PU的运动矢量为0;其中QP为22和27时β为0.5,QP为32和37时β为1;以下公式则只适用于深度0和深度1:
P m v = t r u e , Count p 1 &GreaterEqual; 0.875 &times; Num P U f a l s e , o t h e r s
其中Countp1为当前PU对应范围内整像素运动矢量的个数,NumPU为当前PU中包含的运动矢量个数,当Countp1占据总运动矢量个数7/8以上时,转码效果相对较好,因此设置0.875为修正系数;当Pmv为true时只需进行整像素搜索,否则进入亚像素搜索;对于深度2和深度3,根据当前CU对应到H.264中宏块的划分来确定;若在深度2对应运动矢量精度为整像素且CBP为0,或在深度3对应运动矢量精度为整像素且像素残差为0,则只需要进行整像素搜索。
CN201710023947.8A 2017-01-13 2017-01-13 应用于h.264到hevc的帧间快速视频转码方法 Expired - Fee Related CN106888379B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710023947.8A CN106888379B (zh) 2017-01-13 2017-01-13 应用于h.264到hevc的帧间快速视频转码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710023947.8A CN106888379B (zh) 2017-01-13 2017-01-13 应用于h.264到hevc的帧间快速视频转码方法

Publications (2)

Publication Number Publication Date
CN106888379A true CN106888379A (zh) 2017-06-23
CN106888379B CN106888379B (zh) 2019-07-05

Family

ID=59176393

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710023947.8A Expired - Fee Related CN106888379B (zh) 2017-01-13 2017-01-13 应用于h.264到hevc的帧间快速视频转码方法

Country Status (1)

Country Link
CN (1) CN106888379B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107404648A (zh) * 2017-08-24 2017-11-28 中南大学 一种基于hevc的视频多路转码方法
WO2020156538A1 (en) * 2019-02-03 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Interaction between mv precisions and mv difference coding
CN113365078A (zh) * 2020-03-03 2021-09-07 炬芯科技股份有限公司 帧间编码的运动估计方法、装置及可读存储介质
CN113489996A (zh) * 2021-07-02 2021-10-08 杭州未名信科科技有限公司 一种基于快速帧间编码单元尺寸决策模型的编码方法
WO2023078016A1 (zh) * 2021-11-08 2023-05-11 翱捷科技股份有限公司 一种适用于相机移动场景的运动估计方法及装置
US12034964B2 (en) 2019-02-14 2024-07-09 Beijing Bytedance Network Technology Co., Ltd Selective application of decoder side refining tools

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105430407A (zh) * 2015-12-03 2016-03-23 同济大学 应用于h.264到hevc转码的快速帧间模式决策方法
CN105430418A (zh) * 2015-11-13 2016-03-23 山东大学 一种h.264/avc到hevc快速转码方法
CN105959611A (zh) * 2016-07-14 2016-09-21 同观科技(深圳)有限公司 一种自适应的从h264到hevc的帧间快速转码方法及装置
US20160353121A1 (en) * 2014-01-17 2016-12-01 Sagemcom Broadband Sas Method and device for transcoding video data from h.264 to h.265

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160353121A1 (en) * 2014-01-17 2016-12-01 Sagemcom Broadband Sas Method and device for transcoding video data from h.264 to h.265
CN105430418A (zh) * 2015-11-13 2016-03-23 山东大学 一种h.264/avc到hevc快速转码方法
CN105430407A (zh) * 2015-12-03 2016-03-23 同济大学 应用于h.264到hevc转码的快速帧间模式决策方法
CN105959611A (zh) * 2016-07-14 2016-09-21 同观科技(深圳)有限公司 一种自适应的从h264到hevc的帧间快速转码方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
DONGDONG ZHANG,JIE TONG: "Fast CU Partition for H.264/AVC to HEVC Transcoding Based on Fisher Discriminant Analysis", 《VCIP 2016》 *
E. PEIXOTO, T. SHANABLEH, AND E. IZQUIERDO: "H.264/AVC to HEVC Video Transcoder based on Dynamic Thresholding and Content Modeling", 《IEEE TRANS. CSVT》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107404648A (zh) * 2017-08-24 2017-11-28 中南大学 一种基于hevc的视频多路转码方法
CN107404648B (zh) * 2017-08-24 2019-12-03 中南大学 一种基于hevc的视频多路转码方法
WO2020156538A1 (en) * 2019-02-03 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Interaction between mv precisions and mv difference coding
US12034964B2 (en) 2019-02-14 2024-07-09 Beijing Bytedance Network Technology Co., Ltd Selective application of decoder side refining tools
CN113365078A (zh) * 2020-03-03 2021-09-07 炬芯科技股份有限公司 帧间编码的运动估计方法、装置及可读存储介质
CN113489996A (zh) * 2021-07-02 2021-10-08 杭州未名信科科技有限公司 一种基于快速帧间编码单元尺寸决策模型的编码方法
CN113489996B (zh) * 2021-07-02 2023-09-01 杭州未名信科科技有限公司 一种基于快速帧间编码单元尺寸决策模型的编码方法
WO2023078016A1 (zh) * 2021-11-08 2023-05-11 翱捷科技股份有限公司 一种适用于相机移动场景的运动估计方法及装置

Also Published As

Publication number Publication date
CN106888379B (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
CN106888379B (zh) 应用于h.264到hevc的帧间快速视频转码方法
US9215462B2 (en) Image encoding/decoding method and device
CN103248893B (zh) 从h.264/avc标准到hevc标准的快速帧间转码方法及其转码器
CN104038764B (zh) 一种h.264到h.265的视频转码方法及转码器
CN103546749B (zh) 利用残差系数分布特征和贝叶斯定理优化hevc残差编码的方法
CN102025995B (zh) 一种可伸缩视频编码的空间增强层快速模式选择方法
CN105430407A (zh) 应用于h.264到hevc转码的快速帧间模式决策方法
CN102065298B (zh) 高性能宏块编码实现方法
CN107787582A (zh) 使用用于自适应加权预测的语法信令对图像进行编码或解码的方法和设备
CN108989802B (zh) 一种利用帧间关系的hevc视频流的质量估计方法及系统
CN102090065A (zh) 图像编码装置、图像解码装置、图像编码方法以及图像解码方法
TW201737709A (zh) 視訊解碼方法
CN104853191B (zh) 一种hevc的快速编码方法
CN106791848B (zh) 一种基于HEVC的Two-Pass码率控制方法
WO2017122604A1 (ja) 動画像符号化装置、動画像符号化方法、及び、動画像符号化プログラムが記憶された記憶媒体
CN104811729B (zh) 一种视频多参考帧编码方法
CN110351552B (zh) 视频编码中一种快速编码方法
CN106534849B (zh) 一种快速的hevc帧间编码方法
EP2661079A1 (en) H264 transcoding method by multiplexing code stream information
CN101022555A (zh) 帧间预测编码的模式快速选择方法
CN105791829A (zh) 一种基于多核平台的hevc并行帧内预测方法
CN108769696A (zh) 一种基于Fisher判别式的DVC-HEVC视频转码方法
CN106791828A (zh) 基于机器学习的高性能视频转码方法及其转码器
CN101179729A (zh) 一种基于帧间模式统计分类的h.264宏块模式选择方法
CN101883275B (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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190705

Termination date: 20220113

CF01 Termination of patent right due to non-payment of annual fee