System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及视频编解码,尤其涉及一种视频编码方法、装置、设备及计算机可读存储介质。
技术介绍
1、帧间预测编码技术是指利用视频序列较强的时域相关性,达到去除视频时域冗余信息目的的技术。目前主要的视频编码标准中帧间预测编码技术采用基于块的运动补偿的方式,具体的,对于当前图像中的当前预测块,为其确定一候选列表,在该候选列表的多个候选运动矢量(motion vector,mv)中确定出预测mv,进一步地,通过预测mv及其对应的已编码块的像素,预测当前预测块的像素。其中,利用相关技术所确定的上述候选列表中,不利于编解码效率的提升。
技术实现思路
1、本申请提供一种视频编码方法、装置、设备及存储介质,可以能够减少候选列表中冗余的候选mv,有利于提升编码效率。
2、第一方面,本申请提供一种视频编码方法,在预设编码模式下,确定待定运动矢量mv以用于加入目标预测块对应的候选列表;确定所述待定mv与所述候选列表当前包含的候选mv之间的第一相似度;在所述第一相似度大于第一阈值的情况下,将所述待定mv加入所述候选列表,以对所述候选列表进行更新;以及,根据更新后的候选列表,对所述目标预测块执行所述预设编码模式的视频编码。
3、本申请实施例提供的视频编码方法,能够保证候选列表中两两候选mv之间的差异度尽量大,在保持预测效果的前提下,通过减少冗余的mv来提升视频编码效率。
4、第二方面,本申请提供了一种视频编码装置,该装置包括:待定mv确定模块、相似度确定模块、候选列表
5、其中,上述待定mv确定模块,用于在预设编码模式下,确定待定运动矢量mv以用于加入目标预测块对应的候选列表;上述相似度确定模块,用于确定上述待定mv与上述候选列表当前包含的候选mv之间的第一相似度;上述候选列表更新模块,用于在上述第一相似度满足第一预设条件的情况下,将上述待定mv加入上述候选列表,以对上述候选列表进行更新;以及,上述视频编码模块,用于根据更新后的候选列表,对上述目标预测块执行上述预设编码模式的视频编码。
6、在一些实施例中,基于上述方案,上述视频编码装置10还包括:mv存储模块和mv候补模块。
7、上述mv存储模块用于:在上述相似度确定模块确定上述待定mv与上述候选列表当前包含的候选mv之间的第一相似度之后,在上述第一相似度满足上述第一预设条件的情况下,将上述待定mv作为候补mv存储至预设存储空间;
8、上述mv候补模块用于:在上述候选列表更新模块根据更新后的候选列表,对上述目标预测块执行上述预设编码模式的视频编码之前,确定上述更新后的候选列表中当前包含的候选mv的数量是否达到预设数量;以及,在上述更新后的候选列表中当前包含的候选mv的数量未达到上述预设数量的情况下,从上述预设存储空间存储的候补mv中确定出目标候补mv;上述候选列表更新模块还用于:将上述目标候补mv作为候选mv加入上述候选列表,以对上述候选列表进行更新。
9、在一些实施例中,基于上述方案,上述mv存储模块具体用于:在上述第一相似度不满足上述第一预设条件的情况下,根据上述第一相似度确定上述候补mv对应的等价相似度,并将上述候补mv及其对应的等价相似度关联存储至预设存储空间;
10、上述mv候补模块具体用于:在上述更新后的候选列表中候选mv的数量未达到预设数量的情况下,根据与上述候补mv关联存储的等价相似度,从上述预设存储空间存储的候补mv中确定出目标候补mv。
11、在一些实施例中,基于上述方案,上述相似度确定模块,具体用于:计算上述待定mv的水平分量与第一目标候选mv的水平分量之间的距离,得到水平距离,其中,上述第一目标候选mv为上述候选列表当前包含的候选mv中的任意一个;计算上述待定mv的竖直分量与第一目标候选mv的竖直分量之间的距离,得到竖直距离;以及,根据上述水平距离和上述竖直距离,确定上述待定mv与上述第一目标候选mv之间的第一相似度。
12、在一些实施例中,基于上述方案,上述第一预设条件包括:上述待定mv与上述候选列表中当前包含的一个或多个候选mv之间的第一相似度中,至少一个大于第一阈值;上述待定mv与上述候选列表当前包含的一个或多个候选mv之间的第一相似度中,大于第一阈值的个数大于第二阈值;或,上述待定mv与上述候选列表当前包含的一个或多个候选mv之间的第一相似度的统计值,大于第三阈值。
13、在一些实施例中,基于上述方案,上述预设编码模式包括:merge模式或高级运动矢量预测amvp模式。
14、在一些实施例中,基于上述方案,上述预设编码模式为高级运动矢量预测amvp模式的情况下,上述视频编码模块包括:搜索mv确定子模块和运动搜索子模块;
15、其中,上述搜索mv确定子模块用于:从上述更新后的候选列表中,确定出作为运动搜索起始点的搜索mv;以及,上述运动搜索子模块用于:基于上述搜索mv进行运动搜索,以对上述目标预测块执行amvp模式的视频编码。
16、在一些实施例中,基于上述方案,上述搜索mv确定子模块具体用于:对于上述更新后的候选列表中第二目标候选mv,确定上述第二目标候选mv与上述更新后的候选列表中其他候选mv之间的第二相似度,其中,上述第二目标候选mv为上述更新后的候选列表中的任意一个候选mv;以及,在上述第二相似度满足第二预设条件的情况下,将上述第二目标候选mv确定为搜索mv。
17、在一些实施例中,基于上述方案,上述相似度确定模块,还具体用于:计算上述第二候选mv的水平分量与上述其他候选mv中第h个其他候选mv的水平分量之间的距离,得到水平距离;计算上述第二候选mv的竖直分量与上述第h个其他候选mv的竖直分量之间的距离,得到竖直距离;以及,根据上述水平距离和上述竖直距离,确定上述第二候选mv与上述第h个其他候选mv之间的第二相似度;其中,h取值为不大于上述其他候选mv的数量的正整数。
18、在一些实施例中,基于上述方案,上述搜索mv确定子模块具体用于:在上述第二相似度不满足上述第二预设条件的情况下,确定上述第二目标候选mv的编码代价值;以及,在上述编码代价值小于第四阈值的情况下,将上述第二目标候选mv确定为搜索mv;
19、其中,在上述编码代价值大于或等于上述第四阈值的情况下,上述第二目标候选mv不能作为搜索mv。
20、在一些实施例中,基于上述方案,上述搜索mv确定子模块还具体用于:根据上述第二目标候选mv对上述目标预测块进行预测,得到关于上述目标预测块的预测像素,并确定关于上述目标预测块的预测像素与其原始像素之间的误差;确定编码上述第二目标候选mv,所需的比特数;以及,根据上述误差以及上述比特数,确定上述第二目标候选mv的编码代价值。
21、在一些实施例中,基于上述方案,上述第二预设条件包括:上述第二目标候选mv与上述更新后的候选列表中一个或多个其他候选mv之间的第二相似度中,至少一个大于第五本文档来自技高网...
【技术保护点】
1.一种视频编码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,
3.根据权利要求2所述的方法,其特征在于,
4.根据权利要求1所述的方法,其特征在于,所述确定所述待定MV与所述候选列表当前包含的候选MV之间的第一相似度,包括:
5.根据权利要求1至4中任意一项所述的方法,其特征在于,所述第一预设条件包括:
6.根据权利要求1至4中任意一项所述的方法,其特征在于,所述预设编码模式包括:Merge模式或高级运动矢量预测AMVP模式。
7.根据权利要求1至4中任意一项所述的方法,其特征在于,所述预设编码模式为高级运动矢量预测AMVP模式的情况下,所述根据更新后的候选列表,对所述目标预测块执行所述预设编码模式的视频编码,包括:
8.根据权利要求7所述的方法,其特征在于,所述从所述更新后的候选列表中,确定出作为运动搜索起始点的搜索MV,包括:
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
10.根据权利要求9所述的方法,其特征在于,所述确定
11.根据权利要求8至10中任意一项所述的方法,其特征在于,所述第二预设条件包括:
12.一种视频编码装置,其特征在于,所述装置包括:
13.一种电子设备,包括处理器和存储器;
14.一种计算机可读存储介质,其特征在于,用于存储计算机程序;
...【技术特征摘要】
1.一种视频编码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,
3.根据权利要求2所述的方法,其特征在于,
4.根据权利要求1所述的方法,其特征在于,所述确定所述待定mv与所述候选列表当前包含的候选mv之间的第一相似度,包括:
5.根据权利要求1至4中任意一项所述的方法,其特征在于,所述第一预设条件包括:
6.根据权利要求1至4中任意一项所述的方法,其特征在于,所述预设编码模式包括:merge模式或高级运动矢量预测amvp模式。
7.根据权利要求1至4中任意一项所述的方法,其特征在于,所述预设编码模式为高级运动矢量预测amvp模式的情况下,所述根据更新后...
【专利技术属性】
技术研发人员:匡伟,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。