视频编解码器的编码方法和解码方法与流程

文档序号:12136281阅读:235来源:国知局
视频编解码器的编码方法和解码方法与流程
本发明涉及属于数字媒体处理技术中的视频编解码
技术领域
,尤其涉及视频编解码器的编码方法和解码方法。
背景技术
:现有视频编码方法通常使用已编码过的图像作为参考帧。考虑到编码过程中存在量化损失,参考帧中所包含的像素值并不一定是最具参考价值的;同时,参考帧的选择并没有充分利用前面已编码的大量图像信息。因此,对当前待编码图像某些区域的预测并不准确,导致编码性能低下。技术实现要素:本发明的实施例提供了一种视频编解码器的编码方法和解码方法,能够提高编解码性能。一种视频编解码器的编码方法,包括:获取当前待编码图像以及所述当前待编码图像的前一帧的已编码图像对应的前一帧已编码图像对应的构建参考帧;所述构建参考帧为根据所述当前待编码图像的前两帧已编码图像和所述前两帧已编码图像对应的预测图像产生;根据所述已编码图像更新所述前一帧已编码图像对应的构建参考帧,将更新后的所述前一帧已编码图像对应的构建参考帧作为所述当前待编码图像对应的当前待编码图像对应的构建参考帧;将所述当前待编码图像对应的当前待编码图像对应的构建参考帧作为参考图像,对所述当前待编码图像进行编码。所述根据所述已编码图像更新所述前一帧已编码图像对应的构建参考帧,将更新后的所述前一帧已编码图像对应的构建参考帧作为所述当前待编码图像对应的当前待编码图像对应的构建参考帧的步骤包括:根据所述当前已编码图像与所述当前已编码图像所对应的预测图像之间的关系,计算所述当前已编码图像的各个像素位置的编码残差;根据所述当前已编码图像的各个像素位置的编码残差,对所述前一帧已编码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成所述当前待编码图像对应的当前待编码图像对应的构建参考帧。所述根据所述当前已编码图像的各个像素位置的编码残差,对所述前一帧已编码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成所述当前待编码图像对应的当前待编码图像对应的构建参考帧的步骤包括:步骤a,判断所述当前已编码图像的当前像素位置的编码残差是否小于阈值;当所述判断结果为小于时,则跳到步骤b,否则,跳到步骤c;步骤b,更新所述前一帧已编码图像对应的构建参考帧的当前像素位置的像素值;步骤c,不更新所述前一帧已编码图像对应的构建参考帧的当前像素位置的像素值;依照步骤a-步骤c,对所述前一帧已编码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成当前待编码图像对应的构建参考帧。所述步骤a之前,所述方法还包括:判断所述当前已编码图像的当前像素位置的所在预测单元是否采用跳过模式编码;当所述判断结果为是时,则跳到步骤c;否则,跳到步骤a。所述更新所述前一帧已编码图像对应的构建参考帧的当前像素位置的步骤包括:将所述当前已编码图像的所述当前像素位置的像素值与所述前一帧已编码图像对应的构建参考帧中的与所述当前像素位置对应处的像素值进行加权计算,生成计算结果;使用所述计算结果,更新所述前一帧已编码图像对应的构建参考帧的所述当前像素位置对应处的像素值。当所述当前待编码图像为第一帧时,所述当前待编码图像的前一帧的图像对应的前一帧已编码图像对应的构建参考帧的值设置为0。所述将所述当前已编码图像的所述当前像素位置的像素值与所述前一帧已编码图像对应的构建参考帧中的与所述当前像素位置对应处的像素值进行加权计算,生成计算结果的步骤包括:P`R(i,j)=PR(i,j)*w1+Prec(i,j)*w2其中,(i,j)为当前像素位置,Prec(i,j)为当前已编码图像的当前像素位置的像素值,PR(i,j)为前一帧已编码图像对应的构建参考帧的当前像素位置的像素值;P`R(i,j)为计算结果;w1与w2分别为第一权重和第二权重,w1+w2=1。一种视频编解码器的解码方法,包括:获取当前待解码图像以及所述当前待解码图像的前一帧的已解码图像对应的前一帧已解码图像对应的构建参考帧;所述构建参考帧为根据所述当前待解码图像的前两帧的已解码图像和所述前两帧的已解码图像对应的预测图像产生;根据所述已解码图像更新所述前一帧已解码图像对应的构建参考帧,将更新后的所述前一帧已解码图像对应的构建参考帧作为所述当前待解码图像对应的构建参考帧;将所述当前待解码图像对应的构建参考帧作为参考图像,对所述当前待解码图像进行解码。所述根据所述已解码图像更新所述前一帧已解码图像对应的构建参考帧,将更新后的所述前一帧已解码图像对应的构建参考帧作为所述当前待解码图像对应的构建参考帧的步骤包括:根据所述当前已解码图像与所述当前已解码图像所对应的预测图像之间的关系,计算所述当前已解码图像的各个像素位置的解码残差;根据所述当前已解码图像的各个像素位置的解码残差,对所述前一帧已解码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成所述当前待解码图像对应的构建参考帧。所述根据所述当前已解码图像的各个像素位置的解码残差,对所述前一帧已解码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成所述当前待解码图像对应的构建参考帧的步骤包括:步骤a,判断所述当前已解码图像的当前像素位置的解码残差是否小于阈值;当所述判断结果为小于时,则跳到步骤b,否则,跳到步骤c;步骤b,更新所述前一帧已解码图像对应的构建参考帧的当前像素位置的像素值;步骤c,不更新所述前一帧已解码图像对应的构建参考帧的当前像素位置的像素值;依照步骤a-步骤c,对所述前一帧已解码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成当前待解码图像对应的构建参考帧。所述步骤a之前,所述方法还包括:判断所述当前已解码图像的当前像素位置的所在预测单元是否采用跳过模式解码;当所述判断结果为是时,则跳到步骤c;否则,跳到步骤a。所述更新所述前一帧已解码图像对应的构建参考帧的当前像素位置的步骤包括:将所述当前已解码图像的所述当前像素位置的像素值与所述前一帧已解码图像对应的构建参考帧中的与所述当前像素位置对应处的像素值进行加权计算,生成计算结果;使用所述计算结果,更新所述前一帧已解码图像对应的构建参考帧的所述当前像素位置对应处的像素值。当所述当前待解码图像为第一帧时,所述当前待解码图像的前一帧的图像对应的前一帧已解码图像对应的构建参考帧的值设置为0。所述将所述当前已解码图像的所述当前像素位置的像素值与所述前一帧已解码图像对应的构建参考帧中的与所述当前像素位置对应处的像素值进行加权计算,生成计算结果的步骤包括:P`R(i,j)=PR(i,j)*w1+Prec(i,j)*w2其中,(i,j)为当前像素位置,Prec(i,j)为当前已解码图像的当前像素位置的像素值,PR(i,j)为前一帧已解码图像对应的构建参考帧的当前像素位置的像素值;P`R(i,j)为计算结果;w1与w2分别为第一权重和第二权重,w1+w2=1。由上述本发明的实施例提供的技术方案可以看出,本发明实施例中,构建参考帧的选择利用了前面已编解码的图像信息,能够提高编解码性能。本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一提供的一种视频编解码器的编码方法的示意图;图2为本发明实施例一提供的一种视频编解码器的解码方法的示意图;图3为本发明实施例所述的视频编解码器的编码方法中构建参考帧的生成与自适应更新方法的示意图;图4为本发明实施例所述的视频编解码器的解码方法中构建参考帧的生成与自适应更新方法的示意图。具体实施方式下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。如图1所示,为本发明所述的一种视频编解码器的编码方法,包括:步骤11,获取当前待编码图像以及所述当前待编码图像的前一帧的已编码图像对应的前一帧已编码图像对应的构建参考帧;所述构建参考帧为根据所述当前待编码图像的前两帧的已编码图像和所述前两帧的已编码图像对应的预测图像产生;当所述当前待编码图像为第一帧时,所述当前待编码图像的前一帧的图像对应的前一帧已编码图像对应的构建参考帧的值设置为0。步骤12,根据所述已编码图像更新所述前一帧已编码图像对应的构建参考帧,将更新后的所述前一帧已编码图像对应的构建参考帧作为所述当前待编码图像对应的当前待编码图像对应的构建参考帧;步骤13,将所述当前待编码图像对应的当前待编码图像对应的构建参考帧作为参考图像,对所述当前待编码图像进行编码。本发明中,本发明并不直接使用某一幅编码过的图像作为参考帧,而采用下述算法构建一个全新的参考帧,提高了编码特性。步骤12包括:步骤121,根据所述当前已编码图像与所述当前已编码图像所对应的预测图像之间的关系,计算所述当前已编码图像的各个像素位置的编码残差;编码残差即已编码图像与其对应的预测图像之间的差值。步骤122,根据所述当前已编码图像的各个像素位置的编码残差,对所述前一帧已编码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成所述当前待编码图像对应的当前待编码图像对应的构建参考帧。在一个实施例中,步骤122包括:步骤a,判断所述当前已编码图像的当前像素位置的编码残差是否小于阈值;当所述判断结果为小于时,则跳到步骤b,否则,跳到步骤c;步骤b,更新所述前一帧已编码图像对应的构建参考帧的当前像素位置的像素值;步骤c,不更新所述前一帧已编码图像对应的构建参考帧的当前像素位置的像素值;依照步骤a-步骤c,对所述前一帧已编码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成当前待编码图像对应的构建参考帧。步骤b包括:步骤b1,将所述当前已编码图像的所述当前像素位置的像素值与所述前一帧已编码图像对应的构建参考帧中的与所述当前像素位置对应处的像素值进行加权计算,生成计算结果;所述将所述当前已编码图像的所述当前像素位置的像素值与所述前一帧已编码图像对应的构建参考帧中的与所述当前像素位置对应处的像素值进行加权计算,生成计算结果的步骤包括:P`R(i,j)=PR(i,j)*w1+Prec(i,j)*w2其中,(i,j)为当前像素位置,Prec(i,j)为当前已编码图像的当前像素位置的像素值,PR(i,j)为前一帧已编码图像对应的构建参考帧的当前像素位置的像素值;P`R(i,j)为计算结果;w1与w2分别为第一权重和第二权重,w1+w2=1。步骤b2,使用所述计算结果,更新所述前一帧已编码图像对应的构建参考帧的所述当前像素位置对应处的像素值。在另一个实施例中,步骤122包括:步骤a,判断所述当前已编码图像的当前像素位置的所在预测单元是否采用跳过模式编码;步骤b,判断所述当前已编码图像的当前像素位置的编码残差是否小于阈值;当所述判断结果为小于时,则跳到步骤c,否则,跳到步骤d;步骤c,更新所述前一帧已编码图像对应的构建参考帧的当前像素位置的像素值;步骤d,不更新所述前一帧已编码图像对应的构建参考帧的当前像素位置的像素值;依照步骤a-步骤d,对所述前一帧已编码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成当前待编码图像对应的构建参考帧。如图2所示,为本发明所述的一种视频编解码器的解码方法,包括:步骤21,获取当前待解码图像以及所述当前待解码图像的前一帧的已解码图像对应的前一帧已解码图像对应的构建参考帧;所述构建参考帧为根据所述当前待解码图像的前两帧的已解码图像和所述前两帧的已解码图像对应的预测图像产生;当所述当前待解码图像为第一帧时,所述当前待解码图像的前一帧的图像对应的前一帧已解码图像对应的构建参考帧的值设置为0。步骤22,根据所述已解码图像更新所述前一帧已解码图像对应的构建参考帧,将更新后的所述前一帧已解码图像对应的构建参考帧作为所述当前待解码图像对应的构建参考帧;步骤23,将所述当前待解码图像对应的构建参考帧作为参考图像,对所述当前待解码图像进行解码。步骤22包括:步骤221,根据所述当前已解码图像与所述当前已解码图像所对应的预测图像之间的关系,计算所述当前已解码图像的各个像素位置的解码残差;步骤222,根据所述当前已解码图像的各个像素位置的解码残差,对所述前一帧已解码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成所述当前待解码图像对应的构建参考帧。在一个实施例中,步骤222包括:步骤a,判断所述当前已解码图像的当前像素位置的解码残差是否小于阈值;当所述判断结果为小于时,则跳到步骤b,否则,跳到步骤c;步骤b,更新所述前一帧已解码图像对应的构建参考帧的当前像素位置的像素值;步骤c,不更新所述前一帧已解码图像对应的构建参考帧的当前像素位置的像素值;依照步骤a-步骤c,对所述前一帧已解码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成当前待解码图像对应的构建参考帧。在另一个实施例中,步骤222包括:步骤a,判断所述当前已解码图像的当前像素位置的所在预测单元是否采用跳过模式解码;当所述判断结果为是时,则跳到步骤c;否则,跳到步骤a。步骤b,判断所述当前已解码图像的当前像素位置的解码残差是否小于阈值;当所述判断结果为小于时,则跳到步骤c,否则,跳到步骤d;步骤c,更新所述前一帧已解码图像对应的构建参考帧的当前像素位置的像素值;步骤d,不更新所述前一帧已解码图像对应的构建参考帧的当前像素位置的像素值;依照步骤a-步骤d,对所述前一帧已解码图像对应的构建参考帧的各个像素位置的像素值进行处理,生成当前待解码图像对应的构建参考帧。步骤c包括:步骤c1,将所述当前已解码图像的所述当前像素位置的像素值与所述前一帧已解码图像对应的构建参考帧中的与所述当前像素位置对应处的像素值进行加权计算,生成计算结果;所述将所述当前已解码图像的所述当前像素位置的像素值与所述前一帧已解码图像对应的构建参考帧中的与所述当前像素位置对应处的像素值进行加权计算,生成计算结果的步骤包括:P`R(i,j)=PR(i,j)*w1+Prec(i,j)*w2;其中,(i,j)为当前像素位置,Prec(i,j)为当前已解码图像的当前像素位置的像素值,PR(i,j)为前一帧已解码图像对应的构建参考帧的当前像素位置的像素值;P`R(i,j)为计算结果;w1与w2分别为第一权重和第二权重,w1+w2=1。步骤c2,使用所述计算结果,更新所述前一帧已解码图像对应的构建参考帧的所述当前像素位置对应处的像素值。以下描述本发明的应用场景。本发明提供一种视频编解码器中构建参考帧的生成与自适应更新方法。在编码过程中,首先,利用已编码的图像信息生成构建参考帧;然后,对构建参考帧的每个像素进行动态自适应更新;然后,后续输入的待编码图像可以选择性使用该构建参考帧作为参考图像进行预测编码。相应的,在解码过程中,首先,利用前序已解码的图像信息生成构建参考帧;然后,对构建参考帧的每个像素进行动态自适应更新;然后,当后续待解码图像的选中该构建参考帧时,使用该构建参考帧作为参考图像进行解码。以下具体描述:本发明提出一种视频编解码器中构建参考帧的生成与自适应更新方法。该方法包括:编码过程开始时,利用已编码的图像信息生成构建参考帧;构建参考帧的各像素值为0;在编码过程中,根据已编码图像与其对应的预测图像之间的关系,分析每个像素位置的编码残差;根据编码残差,判断构建参考帧的当前像素位置是否需要更新;经过更新的构建参考帧作为后续输入的待编码图像的参考图像进行预测编码。也就是说,构建参考帧的初始像素值全为0;随着编码过程的进行,其中的像素值会不断更新;更新原则为:根据编码残差进行判断是否需要更新;若更新,则计算出新的像素值并替换构建参考帧中该位置原来的像素值。上述步骤具体为:编码过程开始时,将构建参考帧R的各像素值初始化为0。当第0帧编码完成后,分析第0帧的重建图像与预测图像的关系,获得两者间的残差。对每个像素位置的残差进行分析;当残差绝对值小于阈值θ时,认为构建参考帧的该像素位置需要更新,否则不需要。对于构建参考帧中需要更新的像素位置,新的像素值计算如下:PR(i,j)=PR(i,j)*w1+Prec(i,j)*w2其中,(i,j)为当前像素的位置,Prec为已编码图像(重建图像),w1与w2为权重。对应的,在解码过程中,所述方法包括:解码过程开始时,构建参考帧各像素值为0;解码过程开始时,根据当前已解码的图像与其对应的预测图像之间的关系,分析每个像素位置的编码残差;根据编码残差,判断构建参考帧当前像素位置是否需要更新;经过更新的构建参考帧作为后续待解码图像的参考图像进行解码。本发明提出的一种视频编解码器中参考帧的生成与自适应更新方法中,更新构建参考帧的步骤具体为:在编码过程中,对于构建参考帧中需要更新的像素位置,使用已编码图像中对应位置的像素值与构建参考帧中该位置的像素值进行加权计算,计算结果作为构建参考帧中该位置新的像素值。相应的,本发明提出的一种视频编解码器中构建参考帧的生成与自适应更新方法,更新构建参考帧的步骤具体为:在解码过程中,对于构建参考帧中需要更新的像素位置,使用当前已解码图像中对应位置的像素值与构建参考帧中该位置的像素值进行加权计算,计算结果作为构建参考帧中该位置新的像素值。本发明提出的一种视频编解码器中构建参考帧的生成与自适应更新方法中,在编码过程中,已编码图像的像素位置所在预测单元是采用跳过模式编码时,构建参考帧中的该像素位置不进行更新。相应的,本发明提出的一种视频编解码器中构建参考帧的生成与自适应更新方法中,在编码过程中,当前已解码图像的像素位置所在预测单元是采用跳过模式编码时,构建参考帧中的该像素位置不进行更新。如图3所示,当前要对第3帧进行编码,利用第0,1,2帧生成构建参考帧R,并被第3帧用于帧间参考。如图4所示,随着编码过程的进行,构建参考帧是不断更新的,其利用了之前已编码过所有图像的信息。该实例的实现平台为HM16.1,基本配置如表1所示,测试结果如表2所示。表1:表2本方法与HM16.1编码性能结果对比Sequence序列Y分量U分量V分量视频序列1(576p)-0.9%-3.5%-5.2%视频序列2(720p)-1.6%-2.0%-2.0%视频序列3(480p)-1.3%-2.3%-2.9%视频序列4(1080p)-1.0%-0.8%-0.7%Average平均值-1.20%-2.15%-2.70%以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1