视频编码、解码方法及装置制造方法及图纸

技术编号:23473176 阅读:13 留言:0更新日期:2020-03-06 14:20
本发明专利技术公开了一种视频编码、解码方法及装置。其中,视频编码方法,包括:对当前编码块,导出多个运动矢量;选取导出的多个运动矢量中的部分运动矢量进行偏移操作,得到第一运动矢量,未进行偏移操作的运动矢量为第二运动矢量;选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量,得到第三运动矢量;从第一运动矢量、第二运动矢量和第三运动矢量中确定当前编码块使用的运动矢量,并在码流中写入关于该确定使用的运动矢量的信息;以及根据当前编码块使用的运动矢量进行后续编码。该编码方法在不降低运动矢量候选情况下减少了比特数,通过平衡比特开销和候选运动矢量的多样性,提高了视频编码的性能。

Video coding and decoding methods and devices

【技术实现步骤摘要】
视频编码、解码方法及装置
本公开属于视频编解码
,涉及一种视频编码、解码方法及装置。
技术介绍
由于在自然视频中,图像与图像之间存在很高的相似性。因此在视频压缩时,为了去除图像与图像之间的信息冗余,需要进行帧间预测。所谓的帧间预测就是利用上一帧已编码过的图像对当前要编码的图像进行预测,然后将预测的误差传递给解码器。比起直接传输当前图像的内容,预测误差的信息量要小得多,这样就达到了压缩的目的。在实际编码中,编码器在编码当前图像块时,需要在已编码图像中确定一个图像块(称为参考块),然后将两者之间的差值传输给解码器,解码器在接收到预测误差后,再加上同一个参考块就恢复出了当前图像块的像素值了,因此编码器和解码器需要使用同一个参考块。参考块与当前块之间的位置差用运动矢量来表示,编码器需要把运动矢量传输给解码器,这样才能解码器才能找到正确的参考块。随着预测技术的不断进步,图像预测残差不断减小,运动矢量等运动信息在码流中所占比例不断上升。为了减少传输运动信息的开销,跳过模式、直接模式、合并模式等模式被提了出来。在这些模式中,运动信息不在码流中传输,编码器和解码器根据之前编过码的图像块的运动信息按照一定规则直接导出当前图像块的运动矢量等运动信息。这些模式可以省去传输运动信息,但是由于运动信息的导出规则是固定的,并且需要根据之前编过码的图像块的运动信息来导出。当当前图像块的运动情况和之前图像块的运动情况差别较大时,所导出的运动信息就不太合适当前块了。为了解决这一问题,一种新的运动矢量偏移技术被提了出来。这种技术在导出运动矢量后对所导出的运动矢量进行偏移,使得其更合适于当前的图像块,偏移信息由编码器决定并且在码流中传输。在这一技术中,为了减少用于表达偏移信息的比特数,偏移只能在水平方向和竖直方向进行,并且偏移的幅度也被进行了限制,只能在若干个候选幅度值中选择。由于偏移的这些限制,使得编码器能够使用较少比特数来对导出的运动矢量进行较好的修正,这大大提高了编码性能。同时,这一技术还会对帧间预测的预测方向进行修改,提供多种不同的候选预测方向。例如,偏移后运动矢量指向前向参考图像,那么该技术会按照线性模型导出指向后向参考图像的运动矢量,由编码器决定使用前向预测、后向预测还是双向预测,这些预测方向信息也会在在码流中指示。这就相当于给编码器提供了更多的候选运动矢量使得编码器可以找到一个更适合当前块的参考块,因此编码效率进一步提高。在AVS2视频编码标准中,跳过模式和直接模式本身就提供了多个不同预测方向候选运动矢量,包括前向预测、后向预测、双向预测和对称预测。因此当运动矢量偏移技术应用到AVS2视频编码标准中的直接和跳过模式时,由于直接模式和跳过模式导出的运动矢量已经覆盖了不同的预测方向,所以对偏移后的运动矢量进行预测方向的修改就有些冗余。例如,根据偏移后的前向运动矢量导出的后向运动矢量与由直接模式或跳过模式中的后向候选运动矢量进行偏移后的后向运动矢量相似度较高,没有必要同时提供这两种情况的候选运动矢量备选,因为这样会增加在码流中传输相关信息的开销,反而降低编码性能。另外,运动矢量偏移技术会对跳过模式和直接模式导出的各个候选运动矢量进行偏移,但如果各个候选运动矢量之间的距离较近,那么经过偏移后的值就有可能会相同,这又造成了冗余。因此,有必要对运动矢量偏移技术进行改进,以减少冗余和码流指示开销,从而提高编码性能。
技术实现思路
(一)要解决的技术问题本公开提供了一种视频编码、解码方法及装置,以至少部分解决以上所提出的技术问题。(二)技术方案根据本公开的一个方面,提供了一种视频编码方法,包括:对当前编码块,导出多个运动矢量;选取导出的多个运动矢量中的部分运动矢量进行偏移操作,得到第一运动矢量,未进行偏移操作的运动矢量为第二运动矢量;选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量,得到第三运动矢量;从第一运动矢量、第二运动矢量和第三运动矢量中确定当前编码块使用的运动矢量,并在码流中写入关于该确定使用的运动矢量的信息;以及根据当前编码块使用的运动矢量进行后续编码。在本公开的一些实施例中,在选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量的过程中,只导出不同预测方向中的部分预测方向上的运动矢量。在本公开的一些实施例中,偏移操作只对运动矢量在水平和竖直方向进行偏移,包括水平向左、水平向右、竖直向上和竖直向下,和/或偏移操作中对运动矢量进行偏移的偏移幅度为二的幂次方个像素。在本公开的一些实施例中,运动矢量导出规则包括:直接模式、跳过模式、以及合并模式。在本公开的一些实施例中,写入的运动矢量的信息包括:关于当前编码块是否对导出的运动矢量进行偏移操作的信息、关于当前编码块是对哪个导出的运动矢量进行偏移的信息、关于当前编码块对导出的运动矢量如何进行偏移操作的信息、以及关于当前编码块运动矢量的预测方向的信息。在本公开的一些实施例中,导出的多个运动矢量包括:根据参考图像上位置对应块的运动矢量导出的运动矢量、根据相邻块导出的双向预测的运动矢量、根据相邻块导出的对称预测的运动矢量、根据相邻块导出的前向预测的运动矢量、以及根据相邻块导出的后向预测的运动矢量。在本公开的一些实施例中,进行偏移操作的多个运动矢量中的部分运动矢量为:根据相邻块导出的双向预测的运动矢量、根据相邻块导出的对称预测的运动矢量、根据相邻块导出的前向预测的运动矢量、以及根据相邻块导出的后向预测的运动矢量;或者根据相邻块导出的双向预测的运动矢量、根据相邻块导出的前向预测的运动矢量、以及根据相邻块导出的后向预测的运动矢量;或者根据相邻块导出的对称预测的运动矢量、根据相邻块导出的前向预测的运动矢量、以及根据相邻块导出的后向预测的运动矢量;或者根据相邻块导出的前向预测的运动矢量和根据相邻块导出的后向预测的运动矢量;或者根据相邻块导出的双向预测的运动矢量和根据相邻块导出的对称预测的运动矢量;或者根据相邻块导出的双向预测的运动矢量。在本公开的一些实施例中,第一运动矢量中的部分运动矢量为:根据相邻块导出的双向预测的运动矢量、根据相邻块导出的前向预测的运动矢量、根据相邻块导出的后向预测的运动矢量,或者根据相邻块导出的前向预测的运动矢量、根据相邻块导出的后向预测的运动矢量,或者根据相邻块导出的双向预测的运动矢量和根据相邻块导出的对称预测的运动矢量;或者根据相邻块导出的双向预测的运动矢量。在本公开的一些实施例中,选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量的过程中,只导出不同预测方向中的部分预测方向上的运动矢量,该不同预测方向中的部分预测方向上的运动矢量包括:前向预测运动矢量和后向预测运动矢量,或者双向预测运动矢量和对称预测运动矢量,或者双向预测运动矢量,或者前向预测运动矢量,或者后向预测运动矢量。根据本公开的另一个方面,提供了一种视频编码装置,包括:运动矢量导出单元,用于导出多个运动矢量;运动矢量偏移单元,用于对导出的多个运动矢量中的部分运动矢量进行偏移操作,得到第一运动矢量,本文档来自技高网
...

【技术保护点】
1.一种视频编码方法,包括:/n对当前编码块,导出多个运动矢量;/n选取导出的多个运动矢量中的部分运动矢量进行偏移操作,得到第一运动矢量,未进行偏移操作的运动矢量为第二运动矢量;/n选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量,得到第三运动矢量;/n从第一运动矢量、第二运动矢量和第三运动矢量中确定当前编码块使用的运动矢量,并在码流中写入关于该确定使用的运动矢量的信息;以及/n根据当前编码块使用的运动矢量进行后续编码。/n

【技术特征摘要】
1.一种视频编码方法,包括:
对当前编码块,导出多个运动矢量;
选取导出的多个运动矢量中的部分运动矢量进行偏移操作,得到第一运动矢量,未进行偏移操作的运动矢量为第二运动矢量;
选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量,得到第三运动矢量;
从第一运动矢量、第二运动矢量和第三运动矢量中确定当前编码块使用的运动矢量,并在码流中写入关于该确定使用的运动矢量的信息;以及
根据当前编码块使用的运动矢量进行后续编码。


2.根据权利要求1所述的视频编码方法,其中,所述选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量的过程中,只导出不同预测方向中的部分预测方向上的运动矢量。


3.根据权利要求1或2所述的视频编码方法,其中:
所述偏移操作只对运动矢量在水平和竖直方向进行偏移,包括水平向左、水平向右、竖直向上和竖直向下,和/或
所述偏移操作中对运动矢量进行偏移的偏移幅度为二的幂次方个像素。


4.根据权利要求1至3任一项所述的视频编码方法,其中,所述运动矢量导出规则包括:直接模式、跳过模式、以及合并模式。


5.根据权利要求1至4任一项所述的视频编码方法,其中,写入的所述运动矢量的信息包括:
关于当前编码块是否对导出的运动矢量进行偏移操作的信息、关于当前编码块是对哪个导出的运动矢量进行偏移的信息、关于当前编码块对导出的运动矢量如何进行偏移操作的信息、以及关于当前编码块运动矢量的预测方向的信息。


6.根据权利要求1至5任一项所述的视频编码方法,其中,所述导出的多个运动矢量包括:根据参考图像上位置对应块的运动矢量导出的运动矢量、根据相邻块导出的双向预测的运动矢量、根据相邻块导出的对称预测的运动矢量、根据相邻块导出的前向预测的运动矢量、以及根据相邻块导出的后向预测的运动矢量。


7.根据权利要求6所述的视频编码方法,其中,进行偏移操作的所述多个运动矢量中的部分运动矢量为:
根据相邻块导出的双向预测的运动矢量、根据相邻块导出的对称预测的运动矢量、根据相邻块导出的前向预测的运动矢量、以及根据相邻块导出的后向预测的运动矢量;或者
根据相邻块导出的双向预测的运动矢量、根据相邻块导出的前向预测的运动矢量、以及根据相邻块导出的后向预测的运动矢量;或者
根据相邻块导出的对称预测的运动矢量、根据相邻块导出的前向预测的运动矢量、以及根据相邻块导出的后向预测的运动矢量;或者
根据相邻块导出的前向预测的运动矢量和根据相邻块导出的后向预测的运动矢量;或者
根据相邻块导出的双向预测的运动矢量和根据相邻块导出的对称预测的运动矢量;或者
根据相邻块导出的双向预测的运动矢量。


8.根据权利要求7所述的视频编码方法,其中,所述第一运动矢量中的部分运动矢量为:
根据相邻块导出的双向预测的运动矢量、根据相邻块导出的前向预测的运动矢量、根据相邻块导出的后向预测的运动矢量,或者
根据相邻块导出的前向预测的运动矢量、根据相邻块导出的后向预测的运动矢量,或者
根据相邻块导出的双向预测的运动矢量和根据相邻块导出的对称预测的运动矢量;或者
根据相邻块导出的双向预测的运动矢量。


9.根据权利要求8所述的视频编码方法,其中,选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量的过程中,只导出不同预测方向中的部分预测方向上的运动矢量,所述不同预测方向中的部分预测方向上的运动矢量包括:
前向预测运动矢量和后向预测运动矢量,或者
双向预测运动矢量和对称预测运动矢量,或者
双向预测运动矢量,或者
前向预测运动矢量,或者
后向预测运动矢量。


10.一种视频编码装置,包括:
运动矢量导出单元,用于导出多个运动矢量;
运动矢量偏移单元,用于对导出的多个运动矢量中的部分运动矢量进行偏移操作,得到第一运动矢量,未进行偏移操作的运动矢量为第二运动矢量;
不同预测方向运动矢量导出单元,用于选取第一运动矢量中的部分运动矢量导出不同预测方向上的运动矢量,得到第三运动矢量;
运动矢量确定和码流写入单元,用于从第一运动矢量、第二运动矢量和第三运动矢量中确定当前编码块使用的运动矢量,并在码流中写入关于该确定使用的运动矢量的信息;以及
后续编码单元,用于根据编码块使用的运动矢量进行后续编码。


11.根据权利要求10所述的视频编码装置,其中,所述不同预测方向运动矢量导出单元在导出不同预测方向上的运动矢量的过程中,只导出不同预测方向中的部分预测方向上的运动矢量。


12.一种视频解码方法,包括:
从码流中解析关于是否进行运...

【专利技术属性】
技术研发人员:陈杰欧阳晓郑丞洙
申请(专利权)人:北京三星通信技术研究有限公司三星电子株式会社
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1