视频解码装置、视频编码装置和计算机可读记录介质的制作方法

文档序号:20040072发布日期:2020-02-28 11:48阅读:76来源:国知局
视频解码装置、视频编码装置和计算机可读记录介质的制作方法

本专利申请是下列发明专利申请的分案申请:

申请号:201380009877.0

申请日:2013年1月18日

发明名称:对图像进行编码和解码的方法及设备

本发明涉及对图像进行编码和解码的方法及设备,并更具体地,涉及减少了计算复杂度的帧内预测和帧间预测方法。



背景技术:

最近hd(高清)广播服务在全国和全世界的蔓延使得更多的用户熟悉高分辨率、高质量图像,并且很多组织将更多的精力投入到下一代成像设备的研发中。另外,更多的兴趣指向分辨率是hdtv的4倍或者更多的uhd(超高清)以及hdtv,从而要求针对更高分辨率、更高质量图像的图像压缩技术。

为了进行图像压缩,可以使用用于根据在时间上先前和/或随后的画面来预测当前画面中包括的像素值的帧间预测、用于通过使用当前画面中的像素信息来预测当前画面中包括的像素值的帧内预测、以及用于对较频繁的码元分配较短的码而对不太频繁的码元分配较长的码的熵编码。



技术实现要素:

技术问题

本发明的目的在于提供一种可通过减少计算复杂度来增强图像编码/解码效率的图像编码方法及装置。

本发明的另一个目的在于提供一种通过减少计算复杂度来增强图像编码/解码效率的图像解码方法及装置。

本发明的又一个目的在于提供一种通过减少计算复杂度来增强图像编码/解码效率的预测块产生方法及装置。

本发明的又一个目的在于提供一种通过减少计算复杂度来增强图像编码/解码效率的帧内预测方法及装置。

本发明的又一个目的在于提供一种通过减少计算复杂度来增强图像编码/解码效率的帧间预测方法及装置。

技术方案

根据本发明的一个方面,提供了一种视频解码装置,包括:残差块重构单元,通过对经熵解码的残差块信息进行逆量化和逆变换,来重构残差块;预测块产生单元,通过对当前块执行帧内预测,来产生预测块;以及画面重构单元,通过将所重构的残差块添加到所述预测块,来重构画面,其中,所述预测块产生单元基于包括在所述当前块中的预测目标像素的第一预测值、以及通过对所述预测目标像素的初始校正值执行1个二进制数位的算术右移而计算出的最终校正值,来产生所述预测目标像素的最终预测值。

所述预测块产生单元取决于关于所述当前块的编码信息、以及所述当前块中的所述预测目标像素的位置来确定是否校正帧内预测值,并且基于所述确定的结果来产生所述预测目标像素的最终预测值。

所述编码信息包括所述当前块的帧内预测模式、亮度信号信息、色度信号信息以及块大小之中的至少一项。

当所述当前块的帧内预测模式是垂直预测模式时,所述预测块产生单元校正所述当前块的左边界上的像素。

当所述当前块的帧内预测模式是水平预测模式时,所述预测块产生单元校正所述当前块的上边界上的像素。

所述预测块产生单元不针对所述当前块的色度信号来校正所述帧内预测值。

当所述当前块具有小于32×32的大小时,所述预测块产生单元校正所述帧内预测值。

当帧内预测模式是垂直预测模式并且确定要执行对所述帧内预测值的校正时,所述预测块产生单元校正所述当前块的左边界上的像素,其中,所述预测块产生单元使用邻近所述当前块的上参考像素的值来产生所述第一预测值,使用与该块中的预测目标像素的垂直位置相对应的左参考像素的值、与所述当前块的左上像素的值之间的差,来确定初始校正值,通过对所述初始校正值的二互补整数表示执行1个二进制数位的算术右移来得到最终校正值,并且基于所述第一预测值和所述最终校正值来得到所述最终预测值。

当帧内预测模式是水平预测模式、并且确定要执行对所述帧内预测值的校正时,所述预测块产生单元校正所述当前块的上边界上的像素,其中,所述预测块产生单元使用邻近所述当前块的左参考像素的值来产生所述第一预测值,使用与该块中的预测目标像素的水平位置相对应的上参考像素的值、与所述当前块的左上像素的值之间的差,来确定初始校正值,通过对所述初始校正值的二互补整数表示执行1个二进制数位的算术右移来得到最终校正值,并且基于所述第一预测值和所述最终校正值来得到所述最终预测值。

当确定不对所述帧内预测值执行校正时,所述预测块产生单元在垂直预测模式下基于邻近所述当前块的上参考像素的值,来产生所述预测目标像素的最终预测值,并且在水平预测模式下基于邻近所述当前块的左参考像素的值,来产生所述预测目标像素的最终预测值。

所述预测块产生单元使用邻近所述当前块的像素中的、已经重构的像素,来确定参考像素,并且对所述参考像素的像素值执行平滑滤波。

根据本发明的一个方面,提供了一种视频解码方法,包括:通过对经熵解码的残差块信息进行逆量化和逆变换,来重构残差块;通过对当前块执行帧内预测,来产生预测块;以及通过将所重构的残差块添加到所述预测块,来重构画面,其中,所述产生预测块的步骤包括:基于包括在所述当前块中的预测目标像素的第一预测值、以及通过对所述预测目标像素的初始校正值执行1个二进制数位的算术右移而计算出的最终校正值,来产生所述预测目标像素的最终预测值。

所述产生预测块的步骤包括:取决于关于所述当前块的编码信息、以及所述当前块中的所述预测目标的位置,来确定是否校正帧内预测值;以及基于所述确定的结果,来产生所述预测目标像素的最终预测值。

所述编码信息包括所述当前块的帧内预测模式、亮度信号信息、色度信号信息以及块大小之中的至少一项。

所述确定是否校正的步骤包括:当所述当前块的帧内预测模式是垂直预测模式时,确定校正所述当前块的左边界上的像素。

所述确定是否校正的步骤包括:当所述当前块的帧内预测模式是水平预测模式时,确定校正所述当前块的上边界上的像素。

所述确定是否校正的步骤包括:确定不针对所述当前块的色度信号来校正所述帧内预测值。

所述确定是否校正的步骤包括:当所述当前块具有小于32×32的大小时,确定校正所述帧内预测值。

当帧内预测模式是垂直预测模式、并且确定要执行对所述帧内预测值的校正时,所述产生最终预测值的步骤校正所述当前块的左边界上的像素,并且包括:使用邻近所述当前块的上参考像素的值来产生所述第一预测值;使用与该块中的预测目标像素的垂直位置相对应的左参考像素的值、与所述当前块的左上像素的值之间的差,来确定初始校正值;通过对所述初始值的二互补整数表示执行1个二进制数位的算术右移,来得到最终校正值;以及,基于所述第一预测值和所述最终校正值,来得到所述最终预测值。

当帧内预测模式是水平预测模式、并且确定要执行对所述帧内预测值的校正时,所述产生最终预测值的步骤校正所述当前块的上边界上的像素,并且包括:使用邻近所述当前块的左参考像素的值来产生所述第一预测值;使用与该块中的预测目标像素的水平位置相对应的上参考像素的值、与所述当前块的左上像素的值之间的差,来确定初始校正值;通过对所述初始校正值的二互补整数表示执行1个二进制数位的算术右移,来得到最终校正值;以及,基于所述第一预测值和所述最终校正值,来得到所述最终预测值。

当确定不对所述帧内预测值执行校正时,所述产生最终预测值的步骤包括:在垂直预测模式下基于邻近所述当前块的上参考像素的值,来产生所述预测目标像素的最终预测值;以及,在水平预测模式下基于邻近所述当前块的左参考像素的值,来产生所述预测目标像素的最终预测值。

该视频解码方法还包括确定用于所述预测目标像素的帧内预测的参考像素,其中,所述确定参考像素的步骤包括:使用邻近所述当前块的像素中的、已经重构的像素,来确定参考像素;以及,对所述参考像素的像素值执行平滑滤波。

根据本发明的一个方面,提供了一种视频编码装置,包括:预测块产生单元,通过对当前块执行帧内预测,来产生预测块;以及熵解码单元,对作为原始画面与所述预测块之间的差的、残差块进行编码,其中,所述预测块产生单元基于包括在所述当前块中的预测目标像素的第一预测值、以及通过对所述预测目标像素的初始校正值执行1个二进制数位的算术右移而计算出的最终校正值,来产生所述预测目标像素的最终预测值。

所述预测块产生单元取决于关于所述当前块的编码信息、以及所述当前块中的所述预测目标像素的位置,来确定是否校正帧内预测值,并且基于所述确定的结果来产生所述预测目标像素的最终预测值。

所述编码信息包括所述当前块的帧内预测模式、亮度信号信息、色度信号信息以及块大小之中的至少一项。

当所述当前块的帧内预测模式是垂直预测模式时,所述预测块产生单元校正所述当前块的左边界上的像素。

当所述当前块的帧内预测模式是水平预测模式时,所述预测块产生单元校正所述当前块的上边界上的像素。

所述预测块产生单元不针对所述当前块的色度信号来校正所述帧内预测值。

当所述当前块具有小于32×32的大小时,所述预测块产生单元校正所述帧内预测值。

当帧内预测模式是垂直预测模式、并且确定要执行对所述帧内预测值的校正时,所述预测块产生单元校正所述当前块的左边界上的像素,其中,所述预测块产生单元使用邻近所述当前块的上参考像素的值,来产生所述第一预测值,使用与该块中的预测目标像素的垂直位置相对应的左参考像素的值、与所述当前块的左上像素的值之间的差,来确定初始校正值,通过对所述初始校正值的二互补整数表示执行1个二进制数位的算术右移,来得到最终校正值,并且基于所述第一预测值和所述最终校正值,来得到所述最终预测值。

当帧内预测模式是水平预测模式、并且确定要执行对所述帧内预测值的校正时,所述预测块产生单元校正所述当前块的上边界上的像素,其中,所述预测块产生单元使用邻近所述当前块的左参考像素的值,来产生所述第一预测值,使用与该块中的预测目标像素的水平位置相对应的上参考像素的值、与所述当前块的左上像素的值之间的差,来确定初始校正值,通过对所述初始校正值的二互补整数表示执行1个二进制数位的算术右移,来得到最终校正值,并且基于所述第一预测值和所述最终校正值,来得到所述最终预测值。

当确定不对所述帧内预测值执行校正时,所述预测块产生单元在垂直预测模式下基于邻近所述当前块的上参考像素的值,来产生所述预测目标像素的最终预测值,并且在水平预测模式下基于邻近所述当前块的左参考像素的值,来产生所述预测目标像素的最终预测值。

所述预测块产生单元使用邻近所述当前块的像素中的、已经重构的像素,来确定参考像素,并且对所述参考像素的像素值执行平滑滤波。

根据本发明的一个方面,提供了一种视频编码方法,包括:通过对当前块执行帧内预测,来产生预测块;以及对作为原始画面与所述预测块之间的差的、残差块进行编码,其中,所述产生预测块的步骤包括:基于包括在所述当前块中的预测目标像素的第一预测值、以及通过对所述预测目标像素的初始校正值执行1个二进制数位的算术右移而计算出的最终校正值,来产生所述预测目标像素的最终预测值。

所述产生预测块的步骤包括:取决于关于所述当前块的编码信息、以及所述当前块中的所述预测目标的位置,来确定是否校正帧内预测值;以及基于所述确定的结果,来产生关于所述预测目标像素的最终预测值。

所述编码信息包括所述当前块的帧内预测模式、亮度信号信息、色度信号信息以及块大小之中的至少一项。

所述确定是否校正的步骤包括:当所述当前块的帧内预测模式是垂直预测模式时,确定校正所述当前块的左边界上的像素。

所述确定是否校正的步骤包括:当所述当前块的帧内预测模式是水平预测模式时,确定校正所述当前块的上边界上的像素。

所述确定是否校正的步骤包括:确定不针对所述当前块的亮度信号来校正所述帧内预测值。

所述确定是否校正的步骤包括:当所述当前块具有小于32×32的大小时,确定校正所述帧内预测值。

当帧内预测模式是垂直预测模式、并且确定要执行对所述帧内预测值的校正时,所述产生最终预测值的步骤校正所述当前块的左边界上的像素,并且包括:使用邻近所述当前块的上参考像素的值,来产生所述第一预测值;使用与该块中的预测目标像素的垂直位置相对应的左参考像素的值、与所述当前块的左上像素的值之间的差,来确定初始校正值;通过对所述初始值的二互补整数表示执行1个二进制数位的算术右移,来得到最终校正值;以及,基于所述第一预测值和所述最终校正值,来得到所述最终预测值。

当帧内预测模式是水平预测模式、并且确定要执行对所述帧内预测值的校正时,所述产生最终预测值的步骤校正所述当前块的上边界上的像素,并且包括:使用邻近所述当前块的左参考像素的值,来产生所述第一预测值;使用与该块中的预测目标像素的水平位置相对应的上参考像素的值、与所述当前块的左上像素的值之间的差,来确定初始校正值;通过对所述初始校正值的二互补整数表示执行1个二进制数位的算术右移,来得到最终校正值;以及,基于所述第一预测值和所述最终校正值,来得到所述最终预测值。

当确定不对所述帧内预测值执行校正时,所述产生最终预测值的步骤包括:在垂直预测模式下基于邻近所述当前块的上参考像素的值,来产生所述预测目标像素的最终预测值;以及,在水平预测模式下基于邻近所述当前块的左参考像素的值,来产生所述预测目标像素的最终预测值。

该视频编码方法还包括确定用于所述预测目标像素的帧内预测的参考像素,其中,所述确定参考像素的步骤包括:使用邻近所述当前块的像素中的、已经重构的像素,来确定参考像素;以及,对所述参考像素的像素值执行平滑滤波。

根据本发明的一个方面,提供了一种视频解码装置,包括:预测块产生单元,通过对当前块执行帧间预测,来产生预测块,其中,所述预测块产生单元基于所述当前块的参考画面、以及用于所述当前块的帧间预测的参考块的参考画面的画面次序计数(poc)值,来确定是否对所述参考块的运动向量执行缩放,并且当确定执行对所述参考块的运动向量的缩放时,基于画面之间的poc差来计算第一值和第二值,通过对所述第一值的绝对值执行1个二进制数位的算术右移来计算偏移值、并使用所述偏移值来计算所述第一值的反比例值,并基于所述第一值的反比例值和所述第二值、来计算缩放因子,由此对所述参考块的运动向量进行缩放,其中,所述第一值是包括所述参考块的画面、与所述参考块所参考的参考画面之间的poc差,所述第二值是当前画面、与所述当前块所参考的参考画面之间的poc差。

在推导空间运动向量时,所述预测块产生单元仅在所述当前块的参考画面与用于所述当前块的帧间预测的参考块的参考画面不相同的情况下,才确定对所述参考块的运动向量进行缩放。

在推导时间运动向量时,所述预测块产生单元仅在所述当前画面与所述当块的参考画面之间的poc差不同于包括所述参考块的画面与所述参考块的参考画面之间的poc差的情况下,才确定对所述参考块的运动向量进行缩放。

在推导空间或时间运动向量时使用的参考块、或者时间合并候选,在推导所述空间运动向量时,包括邻近所述当前块的左侧的最下边的块、邻近左边最下边的块的下侧的块、所述当前块的左上角的块、所述当前块的右上角的块、以及邻近所述当前块的上边最右边的块之中的至少一个,并且在推导所述时间运动向量以及推导时间合并候选时,包括位于在所述当前画面的并置画面中、与所述当前块在空间上相对应的并置块之内以及之外的块之中的至少一个。

在推导空间运动向量时,所述第一值是所述当前画面与所述参考块所参考的参考画面之间的poc差,所述第二值是所述当前画面与所述当前块所参考的参考画面之间的poc差,并且在推导时间运动向量时以及在推导时间合并候选时,所述第一值是并置画面、与在所述并置画面中并置块和所述当前块参考的参考画面之间的poc差,所述第二值是当前块画面、与所述当前块所参考的参考画面之间的poc差。

所述预测块产生单元通过基于所述第一值的反比例值与所述第二值的乘法、执行加法运算和算术右移运算、来得到缩放因子,并且将所述缩放因子调整成被包括在特定范围内。

根据本发明的一个方面,提供了一种视频解码方法,包括:通过对经熵解码的残差块信息进行逆量化和逆变换,来重构残差块;通过对当前块执行帧间预测,来产生预测块;以及通过将所重构的残差块添加到所述预测块,来重构画面,其中,所述产生预测块的步骤包括:基于所述当前块的参考画面、以及用于所述当前块的帧间预测的参考块的参考画面的画面次序计数(poc)值,来确定是否执行缩放;以及,当确定执行对所述参考块的运动向量的缩放时,缩放并使用所述参考块的运动向量,用于当前块的预测,并且所述缩放步骤包括:基于画面之间的poc差来计算第一值和第二值;通过对所述第一值的绝对值执行1个二进制数位的算术右移来计算偏移值,并且使用所述偏移值来计算所述第一值的反比例值;以及,基于所述第一值的反比例值和所述第二值来计算缩放因子,其中,所述第一值是包括所述参考块的画面、与所述参考块所参考的参考画面之间的poc差,所述第二值是当前画面与所述当前块所参考的参考画面之间的poc差。

在推导空间运动向量时,所述确定是否执行缩放的步骤仅在所述当前块的参考画面与用于所述当前块的帧间预测的所述参考块的参考画面不相同的情况下,才确定对所述参考块的运动向量进行缩放。

在推导时间运动向量时,所述确定是否执行缩放的步骤仅在所述当前画面与所述当前块的参考画面之间的poc差不同于包括所述参考块的画面与所述参考块的参考画面之间的poc差的情况下,才确定对所述参考块的运动向量进行缩放。

在推导空间或时间运动向量时使用的参考块或者时间合并候选,在推导所述空间运动向量时,包括邻近所述当前块的左侧的最下边的块、邻近左边最下边的块的下侧的块、所述当前块的左上角的块、所述当前块的右上角的块、以及邻近所述当前块的上边最右边的块之中的至少一个,在推导所述时间运动向量时以及在推导所述时间合并候选时,包括位于在所述当前画面的并置画面中、与所述当前块在空间上相对应的并置块之内和之外的块之中的至少一个。

在推导空间运动向量时,所述第一值是所述当前画面与所述参考块所参考的参考画面之间的poc差,所述第二值是所述当前画面与所述当前块所参考的参考画面之间的poc差,并且在推导时间运动向量时以及在推导时间合并候选时,所述第一值是并置画面、与在所述并置画面中并置块和所述当前块所参考的参考画面之间的poc差,而所述第二值是当前块画面与所述当前块所参考的参考画面之间的poc差。

所述计算缩放因子的步骤包括:通过基于所述第一值的反比例值与所述第二值的乘法、执行加法运算和算术右移运算、来得到所述缩放因子;以及,将所述缩放因子调整成被包括在特定范围内。

根据本发明的一个方面,提供了一种视频编码装置,包括:预测块产生单元,通过对当前块执行帧间预测,来产生预测块,其中,所述预测块产生单元基于所述当前块的参考画面、以及用于所述当前块的帧间预测的参考块的参考画面的画面次序计数(poc)值,来确定是否对所述参考块的运动向量进行缩放,并且当确定执行对所述参考块的运动向量的缩放时,基于画面之间的poc差来计算第一值和第二值,通过对所述第一值的绝对值执行1个二进制数位的算术右移来计算偏移值、并使用所述偏移值来计算所述第一值的反比例值,基于所述第一值的反比例值和所述第二值来计算缩放因子,由此对所述参考块的运动向量进行缩放,其中,所述第一值是包括所述参考块的画面、与所述参考块所参考的参考画面之间的poc差,所述第二值是当前画面、与所述当前块所参考的参考画面之间的poc差。

在推导空间运动向量时,所述预测块产生单元仅在所述当前块的参考画面与用于所述当前块的帧间预测的参考块的参考画面不相同的情况下,才确定对所述参考块的运动向量进行缩放。

在推导时间运动向量时,所述预测块产生单元仅在所述当前画面与所述当块的参考画面之间的poc差不同于包括所述参考块的画面与所述参考块的参考画面之间的poc差的情况下,才确定对所述参考块的运动向量进行缩放。

在推导空间或时间运动向量时使用的参考块或者时间合并候选,在推导所述空间运动向量时,包括邻近所述当前块的左侧的最下边的块、邻近左边最下边的块的下侧的块、所述当前块的左上角的块、所述当前块的右上角的块、以及邻近所述当前块的上边最右边的块之中的至少一个,并且在推导所述时间运动向量以及推导时间合并候选时,包括位于在所述当前画面的并置画面中、与所述当前块在空间上相对应的并置块之内以及之外的块之中的至少一个。

在推导空间运动向量时,所述第一值是所述当前画面与所述参考块所参考的参考画面之间的poc差,而所述第二值是所述当前画面与所述当前块所参考的参考画面之间的poc差,在推导时间运动向量时以及在推导时间合并候选时,所述第一值是并置画面、与在所述并置画面中并置块和所述当前块所参考的参考画面之间的poc差,而所述第二值是当前块画面、与所述当前块所参考的参考画面之间的poc差。

所述预测块产生单元通过基于所述第一值的反比例值与所述第二值的乘法、执行加法运算和算术右移运算、来得到所述缩放因子,并且将所述缩放因子调整成被包括在特定范围内。

根据本发明的一个方面,提供了一种视频编码方法,包括:通过对当前块执行帧间预测,来产生预测块;以及对作为原始画面与所述预测块之间的差的、残差块进行编码,其中,所述产生预测块的步骤包括:基于所述当前块的参考画面、以及用于所述当前块的帧间预测的参考块的参考画面的画面次序计数(poc)值,来确定是否执行缩放;以及,当确定执行对所述参考块的运动向量的缩放时,缩放并使用所述参考块的运动向量,用于当前块的预测,并且所述缩放步骤包括:基于画面之间的poc差来计算第一值和第二值;通过对所述第一值的绝对值执行1个二进制数位的算术右移来计算偏移值,并且使用所述偏移值来计算所述第一值的反比例值;以及,基于所述第一值的反比例值和所述第二值来计算缩放因子,其中,所述第一值是包括所述参考块的画面、与所述参考块参考的参考画面之间的poc差,而所述第二值是当前画面、与所述当前块参考的参考画面之间的poc差。

在推导空间运动向量时,所述确定是否执行缩放的步骤仅在所述当前块的参考画面与用于所述当前块的帧间预测的所述参考块的参考画面不相同的情况下,才确定对所述参考块的运动向量进行缩放。

在推导时间运动向量时,所述确定是否执行缩放的步骤仅在所述当前画面与所述当前块的参考画面之间的poc差不同于包括所述参考块的画面与所述参考块的参考画面之间的poc差的情况下,才确定对所述参考块的运动向量进行缩放。

在推导空间或时间运动向量时使用的参考块、或者时间合并候选,在推导所述空间运动向量时,包括邻近所述当前块的左侧的最下边的块、邻近左边最下边的块的下侧的块、所述当前块的左上角的块、所述当前块的右上角的块、以及邻近所述当前块的上边最右边的块之中的至少一个,在推导所述时间运动向量时以及在推导所述时间合并候选时,包括位于所述当前画面的并置画面中、与所述当前块在空间上相对应的并置块之内和之外的块之中的至少一个。

在推导空间运动向量时,所述第一值是所述当前画面与所述参考块所参考的参考画面之间的poc差,而所述第二值是所述当前画面与所述当前块所参考的参考画面之间的poc差,并且在推导时间运动向量时以及在推导时间合并候选时,所述第一值是并置画面、与在所述并置画面中并置块和所述当前块所参考的参考画面之间的poc差,而所述第二值是当前块画面与所述当前块所参考的参考画面之间的poc差。

所述计算缩放因子的步骤包括:通过基于所述第一值的反比例值与所述第二值的乘法、执行加法运算和算术右移运算、来得到所述缩放因子;以及,将所述缩放因子调整成被包括在特定范围内。

根据本发明的一个方面,提供了一种视频解码装置,用于对时间参考块的运动向量选择性地执行缩放,包括:参考画面缓冲器,存储参考画面;预测块产生单元,通过对当前块执行帧间预测来产生预测块;和加法器,通过将预测块和残差块相加来重构当前块,其中,所述预测块产生单元基于所述当前块所参考的参考画面以及用于所述当前块的帧间预测的时间参考块所参考的参考画面的画面次序计数poc值,来确定是否对所述时间参考块的运动向量执行缩放,并且当确定执行对所述时间参考块的运动向量的缩放时,基于画面之间的poc差来计算第一值和第二值,通过对所述第一值的绝对值的二互补整数表示执行1个二进制数位的算术右移来计算偏移值,使用所述偏移值来计算所述第一值的反比例值,并基于所述第一值的反比例值和所述第二值来计算缩放因子,由此对所述时间参考块的运动向量进行缩放,所述第一值是包括所述时间参考块的并置画面与所述时间参考块所参考的参考画面之间的poc差,所述第二值是包括当前块的当前画面与所述当前块所参考的参考画面之间的poc差,其中,所述并置画面与所述当前画面不同,其中,仅在所述当前画面与所述当前块所参考的参考画面之间的poc差不同于所述并置画面与所述时间参考块所参考的参考画面之间的poc差的情况下,所述预测块产生单元才确定对所述时间参考块的运动向量执行缩放,其中,通过确定第一块和第二块之中的一块而获得所述时间参考块,所述第一块和所述第二块两者被包括在所述并置画面中,其中,所述并置画面中的并置块的位置对应于所述当前画面中的当前块的位置,其中,基于所述并置块的右下角位置来确定所述第一块的位置,并且其中,基于所述并置块的中心位置来确定所述第二块的位置。

根据本发明的一个方面,提供了一种视频解码装置,用于对时间参考块的运动向量选择性地执行缩放,包括:参考画面缓冲器,存储参考画面;预测块产生单元,通过对当前块执行帧间预测来产生预测块;和加法器,通过将预测块和残差块相加来重构当前块,其中,所述预测块产生单元基于所述当前块所参考的参考画面以及用于所述当前块的帧间预测的时间参考块所参考的参考画面的画面次序计数poc值,来确定是否对所述时间参考块的运动向量执行缩放,并且当确定执行对所述时间参考块的运动向量的缩放时,基于画面之间的poc差来计算第一值和第二值,通过对所述第一值的绝对值的二互补整数表示执行1个二进制数位的算术右移来计算偏移值,使用所述偏移值来计算所述第一值的反比例值,并基于所述第一值的反比例值和所述第二值来计算缩放因子,由此对所述时间参考块的运动向量进行缩放,所述第一值是包括所述时间参考块的并置画面与所述时间参考块所参考的参考画面之间的poc差,所述第二值是包括当前块的当前画面与所述当前块所参考的参考画面之间的poc差,其中,所述并置画面与所述当前画面不同,其中,所述预测块产生单元通过将所述第一值的反比例值与所述第二值相乘、向相乘后的结果添加32并对添加后的结果执行6个二进制数位的算术右移来得到缩放因子,并且将所述缩放因子调整成被包括在特定范围内,其中,通过确定第一块和第二块之中的一块而获得所述时间参考块,所述第一块和所述第二块两者被包括在所述并置画面中,其中,所述并置画面中的并置块的位置对应于所述当前画面中的当前块的位置,其中,基于所述并置块的右下角位置来确定所述第一块的位置,并且其中,基于所述并置块的中心位置来确定所述第二块的位置。

根据本发明的一个方面,提供了一种视频编码装置,用于对时间参考块的运动向量选择性地执行缩放,包括:参考画面缓冲器,存储参考画面;预测块产生单元,通过对当前块执行帧间预测来产生预测块;和减法器,通过从当前块中减去预测块来产生残差块,其中,所述预测块产生单元基于所述当前块所参考的参考画面以及用于所述当前块的帧间预测的时间参考块所参考的参考画面的画面次序计数poc值,来确定是否对所述时间参考块的运动向量执行缩放,并且当确定执行对所述时间参考块的运动向量的缩放时,基于画面之间的poc差来计算第一值和第二值,通过对所述第一值的绝对值的二互补整数表示执行1个二进制数位的算术右移来计算偏移值,使用所述偏移值来计算所述第一值的反比例值,并基于所述第一值的反比例值和所述第二值来计算缩放因子,由此对所述时间参考块的运动向量进行缩放,所述第一值是包括所述时间参考块的并置画面与所述时间参考块所参考的参考画面之间的poc差,所述第二值是包括当前块的当前画面与所述当前块所参考的参考画面之间的poc差,其中,所述并置画面与所述当前画面不同,其中,仅在所述当前画面与所述当前块所参考的参考画面之间的poc差不同于所述并置画面与所述时间参考块所参考的参考画面之间的poc差的情况下,所述预测块产生单元才确定对所述时间参考块的运动向量执行缩放,其中,通过确定第一块和第二块之中的一块而获得所述时间参考块,所述第一块和所述第二块两者被包括在所述并置画面中,其中,所述并置画面中的并置块的位置对应于所述当前画面中的当前块的位置,其中,基于所述并置块的右下角位置来确定所述第一块的位置,并且其中,基于所述并置块的中心位置来确定所述第二块的位置。

根据本发明的一个方面,提供了一种视频编码装置,用于对时间参考块的运动向量选择性地执行缩放,包括:参考画面缓冲器,存储参考画面;预测块产生单元,通过对当前块执行帧间预测来产生预测块;和减法器,通过从当前块中减去预测块来产生残差块,其中,所述预测块产生单元基于所述当前块所参考的参考画面以及用于所述当前块的帧间预测的时间参考块所参考的参考画面的画面次序计数poc值,来确定是否对所述时间参考块的运动向量执行缩放,并且当确定执行对所述时间参考块的运动向量的缩放时,基于画面之间的poc差来计算第一值和第二值,通过对所述第一值的绝对值的二互补整数表示执行1个二进制数位的算术右移来计算偏移值,使用所述偏移值来计算所述第一值的反比例值,并基于所述第一值的反比例值和所述第二值来计算缩放因子,由此对所述时间参考块的运动向量进行缩放,所述第一值是包括所述时间参考块的并置画面与所述时间参考块所参考的参考画面之间的poc差,所述第二值是包括当前块的当前画面与所述当前块所参考的参考画面之间的poc差,其中,所述并置画面与所述当前画面不同,其中,所述预测块产生单元通过将所述第一值的反比例值与所述第二值相乘、向相乘后的结果添加32并对添加后的结果执行6个二进制数位的算术右移来得到缩放因子,并且将所述缩放因子调整成被包括在特定范围内,其中,通过确定第一块和第二块之中的一块而获得所述时间参考块,所述第一块和所述第二块两者被包括在所述并置画面中,其中,所述并置画面中的并置块的位置对应于所述当前画面中的当前块的位置,其中,基于所述并置块的右下角位置来确定所述第一块的位置,并且其中,基于所述并置块的中心位置来确定所述第二块的位置。

根据本发明的一个方面,提供了一种存储比特流的计算机可读记录介质,所述比特流由视频解码装置接收和解码以对时间参考块的运动向量选择性地执行缩放并用于重构视频,其中,所述比特流包括关于当前块的预测块的信息,关于预测块的信息被用于通过执行帧间预测来生成预测块,其中,基于所述当前块所参考的参考画面以及用于所述当前块的帧间预测的时间参考块所参考的参考画面的画面次序计数poc值,来确定是否对所述时间参考块的运动向量执行缩放,并且当确定执行对所述时间参考块的运动向量的缩放时,基于画面之间的poc差来计算第一值和第二值,通过对所述第一值的绝对值的二互补整数表示执行1个二进制数位的算术右移来计算偏移值,使用所述偏移值来计算所述第一值的反比例值,并基于所述第一值的反比例值和所述第二值来计算缩放因子,由此对所述时间参考块的运动向量进行缩放,所述第一值是包括所述时间参考块的并置画面与所述时间参考块所参考的参考画面之间的poc差,所述第二值是包括当前块的当前画面与所述当前块所参考的参考画面之间的poc差,其中,所述并置画面与所述当前画面不同,其中,仅在所述当前画面与所述当前块所参考的参考画面之间的poc差不同于所述并置画面与所述时间参考块所参考的参考画面之间的poc差的情况下,才确定对所述时间参考块的运动向量执行缩放,其中,通过确定第一块和第二块之中的一块而获得所述时间参考块,所述第一块和所述第二块两者被包括在所述并置画面中,其中,所述并置画面中的并置块的位置对应于所述当前画面中的当前块的位置,其中,基于所述并置块的右下角位置来确定所述第一块的位置,其中,基于所述并置块的中心位置来确定所述第二块的位置,其中,所述参考画面存储在参考画面缓冲器中,并且其中,预测块与残差块相加以重构当前块。

根据本发明的一个方面,提供了一种存储比特流的计算机可读记录介质,所述比特流由视频解码装置接收和解码以对时间参考块的运动向量选择性地执行缩放并用于重构视频,其中,所述比特流包括关于当前块的预测块的信息,关于预测块的信息被用于通过执行帧间预测来生成预测块,其中,基于所述当前块所参考的参考画面以及用于所述当前块的帧间预测的时间参考块所参考的参考画面的画面次序计数poc值,来确定是否对所述时间参考块的运动向量执行缩放,并且当确定执行对所述时间参考块的运动向量的缩放时,基于画面之间的poc差来计算第一值和第二值,通过对所述第一值的绝对值的二互补整数表示执行1个二进制数位的算术右移来计算偏移值,使用所述偏移值来计算所述第一值的反比例值,并基于所述第一值的反比例值和所述第二值来计算缩放因子,由此对所述时间参考块的运动向量进行缩放,所述第一值是包括所述时间参考块的并置画面与所述时间参考块所参考的参考画面之间的poc差,所述第二值是包括当前块的当前画面与所述当前块所参考的参考画面之间的poc差,其中,所述并置画面与所述当前画面不同,其中,通过将所述第一值的反比例值与所述第二值相乘、向相乘后的结果添加32并对添加后的结果执行6个二进制数位的算术右移来得到缩放因子,并且将所述缩放因子调整成被包括在特定范围内,其中,通过确定第一块和第二块之中的一块而获得所述时间参考块,所述第一块和所述第二块两者被包括在所述并置画面中,其中,所述并置画面中的并置块的位置对应于所述当前画面中的当前块的位置,其中,基于所述并置块的右下角位置来确定所述第一块的位置,其中,基于所述并置块的中心位置来确定所述第二块的位置,其中,所述参考画面存储在参考画面缓冲器中,并且其中,预测块与残差块相加以重构当前块。

有益效果

根据本发明的图像编码方法可以减少计算复杂度并提高图像编码/解码效率。

根据本发明的图像解码方法可以减少计算复杂度并提高图像编码/解码效率

根据本发明的预测块产生方法可以减少计算复杂度并提高图像编码/解码效率。

根据本发明的帧内预测方法可以减少计算复杂度并提高图像编码/解码效率。

根据本发明的帧间预测方法可以减少计算复杂度并提高图像编码/解码效率。

附图说明

图1是例示根据本发明的实施例的图像编码装置的配置的框图。

图2是例示根据本发明的实施例的图像解码装置的配置的框图。

图3是例示根据本发明的实施例的图像编码/解码方法中的产生当前块的最终预测值的过程的流程图。

图4是示意性地例示根据本发明的实施例生成用于帧内预测的参考像素的过程的流程图。

图5是示意性地例示根据本发明的实施例的生成用于帧内预测的参考画面的过程中的、不可用像素的替换的视图。

图6是示意性地例示取决于预测目标像素的位置以及当前块的编码信息、来确定是否校正帧内预测值的过程的流程图。

图7a是示意性地例示在垂直预测模式下将当前块中的像素的第一预测值用作最终预测值的实施例的视图。

图7b是示意性地例示在水平预测模式下将当前块中的像素的第一预测值用作最终预测值的实施例的视图。

图8是示意性地例示对当前块中的像素的第一预测值执行校正、以生成最终预测值的实施例的流程图。

图9a是示意性地例示在使用垂直模式时通过对第一预测值执行校正、来生成最终预测值的实施例的视图。

图9b是示意性地例示在使用水平模式时通过对第一预测值执行校正、来生成最终预测值的实施例的视图。

图10是示意性地例示根据本发明的另一个实施例的图像编码/解码方法中的执行缩放的过程的流程图。

图11a是例示当前画面与空间参考块的当前画面之间的poc差、以及当前画面与当前块的参考画面之间的poc差的视图。

图11b是例示并置块的参考画面与并置画面之间的poc差、以及当前画面与当前块的参考画面之间的poc差的视图。

图12是示意性地例示基于画面之间的poc差、来计算运动向量的缩放因子的过程的流程图。

图13是示意性地例示基于tb以及td的反比例值、来计算最终缩放因子的配置的框图。

具体实施方式

下面将参考附图详细地描述本发明的实施例。在说明实施例的过程中,当确定使得本发明的要点不清楚时,将省略关于众所周知的配置或功能的详细说明。

当组件被“连接到”或“耦合到”另一组件时,该组件可以直接地连接或耦合到素数另一组件组件,或者其他组件也可以介于其间。另外,当“包括”特定组件时,并不排除其他组件,而是可以包括其他组件,并且这种配置也包括在本发明的范围内。

术语“第一”和“第二”可以用于描述各个组件,但是组件并不受其限制。这些术语仅用于将一个组件与另一个区分开。例如,也可以将第一组件称为第二组件,同样地,可以将第二组件称为第一组件。

独立示出实施例中的构成部分以表示不同的特征,但是这并不意味每个构成部分均由单独的硬件单元或一个软件构成单元形成。即,为了便于说明,将每个构成部分与其他部分分开。可以将至少两个构成部分结合成单一的构成部分,或者可以将一个构成部分划分成可以分别执行功能的多个构成部分。覆盖构成部分的结合或者其分开的实施例可以包括在本发明的范围内,而不脱离本发明的要点。

某些构成部分不是用于执行本发明的必需功能的基本部分,而是用于提高性能的可选的构成部分。可以仅通过对于实现本发明的要点所必需的构成部分来实现本发明,或者仅包括基本的构成部分并排除用于提高性能的可选的构成部分的这种配置也可以包括在本发明的范围内。

图1是例示根据本发明的实施例的图像编码装置的配置的框图。

参考图1,多视图视频图像编码装置100包括运动预测单元111、运动补偿单元112、帧内预测单元120、开关115、减法器125、变换单元130、量化单元140、熵编码单元150、逆量化单元160、逆变换单元170、加法器175、滤波器单元180以及参考图像缓冲器190。此处,可以使用术语“图像”以与下述的术语“画面”具有相同的含义。

图像编码装置100可以在帧内模式或帧间模式下对输入图像执行编码,并且可以输出比特流。帧内预测是指屏内预测(intra-screenprediction),帧间预测是指屏间预测(inter-screenprediction)。在帧内模式下,开关115可以换至帧内,在帧间模式下,开关115可以换至帧间。图像编码装置100可以对输入图像的输入块产生预测块,并然后可以对输入块与预测块之间的差值进行编码。

在帧内模式下,帧内预测单元120可以通过使用邻近当前块的已经编码的块的像素值执行空间预测,来产生预测块。

在帧间模式下,运动预测单元111可以通过计算出与在运动预测期间存储在参考图像缓冲器190中的参考图像的输入块最匹配的区域,来获得运动向量。运动补偿单元112可以通过使用运动向量执行运动补偿,来产生预测块。此处,运动向量是用于帧间预测的2d(二维)向量,并且可以表示当前编码/解码目标图像与参考图像之间的偏移。

减法器125可以基于输入块与产生的预测块之间的差值,来产生残差块。变换单元130可以对残差块执行变换,以输出变换系数。量化单元140可以基于量化参数对输入的变换系数执行量化,以输出量化后的系数。

熵编码单元150可以基于在编码过程期间生成的编码参数值或由量化单元140生成的值,来执行熵编码,从而输出比特流。

在应用熵编码时,对具有较高出现概率的码元分配较少数量的比特,而对具有较低出现概率的码元分配较多数量的比特,使得可以减少编码目标码元的比特流的大小。相应地,可以通过熵编码来提高图像编码的压缩性能。熵编码单元150可以采用诸如指数哥伦布(exponentialgolomb)、cavlc(上下文自适应可变长度编码)、cabac(上下文自适应二进制算术编码)这样的编码方案,用于熵编码的目的。

因为在图1中示出的图像编码装置进行帧间预测编码,即,帧间预测编码(inter-framepredictionencoding),所以需要对当前编码的图像进行解码,并然后存储以用作参考图像。相应地,量化后的系数在逆量化单元160中进行逆量化并在逆变换单元170中进行逆变换。通过加法器175将经逆量化、逆变换的系数添加到预测块,由此生成重构块。

重构块经过滤波器单元180,该滤波器单元180可以对重构块或重构画面应用解块滤波器、sao(采样自适应偏移)以及alf(自适应环路滤波器)之中的至少一个或多个。也可以将滤波器单元180称为自适应环内滤波器(adaptivein-loopfilter)。解块滤波器可以去除出现在块之间的边界处的失真。sao可以将适当的偏移值添加到像素值,以便对编码错误进行补偿。alf可以基于通过将重构图像与原始图像进行比较而获得的值,来执行滤波。可以将经过滤波器单元180的重构块存储在参考图像缓冲器190中。

图2是例示根据本发明的实施例的图像解码装置的配置的框图。

参考图2,图像解码装置200包括熵解码单元210、逆量化单元220、逆变换单元230、帧内预测单元240、运动补偿单元250、加法器255、滤波器单元260以及参考画面缓冲器270。

图像解码装置200可以接收从编码器输出的比特流,在帧内模式下或帧间模式下执行解码,并且输出重构的图像(即重构图像)。在帧内模式下,开关可以换至帧内,而在帧间模式下,开关可以换至帧间。图像解码装置200可以从接收到的比特流中获得重构的残差块,产生预测块,并且将重构的残差块添加到预测块,由此产生重构的块(即重构块)。

熵解码单元210可以根据概率分布对输入比特流进行熵解码,由此产生包括量化后的系数类型的码元在内的码元。熵解码方案类似于上述的熵编码方案。

当应用熵解码方案时,对具有较高出现概率的码元分配较少数量的比特,而对具有较低出现概率的码元分配较多数量的比特,使得可以减少每个码元的比特流的大小。相应地,可以通过熵解码方案来提高图像解码的压缩性能。

量化后的系数可以在逆量化单元220中进行逆量化并且在逆变换单元230中进行逆变换。作为量化后的系数的逆量化/逆变换的结果,可以产生重构的残差块。

在帧内模式下,帧内预测单元240可以通过使用邻近当前块的已经编码/解码的块的像素值执行空间预测,来产生预测块。在帧间模式下,运动补偿单元250可以通过使用存储在参考画面缓冲器270中的参考图像和运动向量执行运动补偿,来产生预测块。

通过加法器255将重构的残差块和预测块彼此相加,并且结果块可以经过滤波器单元260。滤波器单元260可以对重构块或重构画面应用解块滤波器、sao以及alf之中的至少一个或多个。滤波器单元260可以输出重构的图像(即,重构图像)。重构图像可以存储在参考画面缓冲器270中,并且可以用于帧间预测。

此后,“单位”表示进行图像编码和解码的基础。在图像编码和解码时,用于编码或解码的单位是为了编码或解码的目的而从图像中分割出的单位,因此,也可以将单位称为块、编码单位(cu)、预测单位(pu)、变换单位(tu)等。另外,还可以将单位标注为在下面说明的某些实施例中的块。可以将一个单位进一步地分割成具有更小的大小的子单位。另外,在本文中使用的“当前块”可以是指作为帧内预测或运动补偿的目标的块。在执行帧内预测的情况下,当前块可以是指预测单位、预测块、变换单位、和变换块之中的任何一种,而在执行运动补偿的情况下,当前块可以是指预测单位和预测块之一。

图3是例示根据本发明的实施例的图像编码/解码方法中的生成当前块的最终预测值的过程的流程图。

参考图3,根据本发明的实施例的图像编码/解码装置基于参考像素生成最终预测值,以产生关于当前块的预测块。为此目的,图像编码/解码装置获得要用于帧内预测的参考像素的像素值(s310)。可以将邻近当前块的像素中的已重构的像素用为参考像素。如果邻近像素是不可用的,则可以将不可用的像素的像素值替换为对应的参考像素的值。在获得参考像素之后,获得当前块的编码信息以及预测目标像素的块内(in-block)位置信息(s320)。然后,基于编码信息和预测目标像素的块内位置信息,来确定是否需要通过参考像素值校正第一预测值(s330)。此时,可以基于帧内(帧内)预测模式信息、辉度信号信息、色差信号信息以及块大小之中的至少一项,来改变该确定。

在确定不需要校正的情况下,图像编码/解码装置可以直接利用第一预测值作为当前块的最终预测值(s340)。相反,如果确定需要校正,则图像编码/解码装置可以首先获得第一预测值和校正值,并且可以将第一预测值添加到校正值,从而生成最终预测值(s350)。此时,与校正值的计算相关联的计算的复杂度一般非常高,因此为了降低这种复杂度,可以考虑进行算术右移运算。算术右移运算(“>>”)的特征在于,作为运算目标的值的符号不变,并且对比于给出四舍五入后接近于0的结果的普通整数除法运算(“/”),算术右移运算留下四舍五入后达到负无穷大的结果。

图4是示意性地例示根据本发明的实施例的生成要用于帧内预测的参考像素的过程的流程图。

参考图4,编码/解码装置基于当前块的邻近块的像素信息,来确定是否可以使用邻近块的像素值(s410)。此时,邻近块的像素值不可以使用的情况可能是以下情况之一:i)当邻近块的像素在画面边界之外时;ii)当邻近块的像素在片段(slice)/拼接块(tile)边界之外时;以及iii)当cip(约束_帧内_预测_标记(constrained_intra_pred_flag))为1时,即,在当前块是应用cip的块、并且邻近块是通过帧间预测进行编码的块时。如此,在不可以将邻近块的像素值用作参考像素值的情况下,可以将对应的参考像素值替换为另一邻近块的可用像素值或特定默认值(s420)。

图5是示意性地例示根据本发明的实施例在生成要用于帧内预测的参考画面的过程中、替换不可用的像素的视图。

参考图5,可以使用当前块500的邻近块来获得参考像素值。此时,作为要用于获得参考像素值的邻近块,可能存在邻近当前块500的邻近块、在当前块500的高度上邻近左边且最下边的邻近块的下侧的邻近块、以及在当前块500的宽度上邻近上边且最右边的邻近块的右侧的邻近块。此时,在邻近块的像素中,可仅使用位于邻近当前块500的像素作为参考像素。

此时,在邻近块不能用于获得参考像素值的情况下,可以将其替换为另一邻近块的可用像素值。在图5中,在当前块500的邻近块中,带阴影的是可用块,而其他是不可用的块。

根据本发明的实施例,图像编码/解码装置可以确定定位在邻近当前块500的像素是否可用,并且可以存储确定的结果。例如,在图5中,装置可以确定带阴影的块中的像素是可用像素,而不带阴影的块中的像素是不可用的,并且可以存储结果。此时,在存在一个或多个不可用像素的情况下,可以将不可用像素值替换为可用像素值。

从作为开始点的位置a处的像素520移位至在位置b处的像素522,可以将不可用的像素替换为恰好在该不可用的像素之前出现的可用的像素。此时,在开始点处的像素520不可用的情况下,在从位置a移位至位置b时首先出现的可用像素512的像素值可被替换为开始点的像素520值。在邻近块510、530和532中,邻近块510是可用的,邻近块530和532是不可用的。相应地,在开始点处的像素520是不可用的像素。在开始点处的像素520可以被替换为在从位置a去往位置b时最先出现的可用像素512的像素值,邻近块530的像素可以被替换为像素512的像素值,并且邻近块532的像素可以被替换为作为恰好在其之前出现的可用像素的像素514的像素值。这样,可以将不可用的像素替换为可用的像素,直至到达位置b为止。

回到图4,在确定邻近块像素是否可用的结果示出邻近块的像素值可用的情况下,可以按照原样将邻近块的像素值用作参考像素值(s422)。

图像编码/解码装置可以对获得的参考像素值执行平滑滤波(s430)。此时,可以根据目标块的大小和/或帧内预测模式,以不同的方式来进行平滑滤波。

图6是示意性地例示取决于预测目标像素的位置以及当前块的编码信息、来确定是否校正帧内预测值的过程的流程图。

参考图6,图像编码/解码装置可以基于预测目标像素的块内位置和当前块编码信息,来确定是否执行校正。如上所述,用于确定是否执行校正的编码信息可以包括帧内预测模式信息、辉度信号信息、色差信号信息以及块大小之中的任何一项。

为了确定是否执行校正,图像编码/解码装置首先确定当前块的帧内预测模式是否为垂直预测模式(s610)。在垂直预测模式下,确定预测目标像素是否是位于当前块的左边界处的像素(s612)。如果确定为位于左边界处的像素,则确定执行校正(s632)。在帧内预测模式是垂直预测模式但像素不位于左边界的情况下,可以不执行校正(s630)。可以参考将在下面说明的内容,来进行关于垂直预测模式和水平预测模式的确定。在确定水平预测模式时,可以严格地确定预测方向就是水平方向,但是可以应用更宽松的条件,来确定预测方向是否接近于水平方向。作为使用缓和的条件的水平预测模式确定的例子,如果在水平预测模式确定时、目标预测模式的预测方向是在水平方向的30度以内,则可以将其确定为水平预测模式。此时,作为确定的参考的度数不必限制于30度,可以使用其他角度作为参考。而且,在确定垂直预测模式时,如同在确定水平预测模式中一样,也可以使用更平滑的条件来确定预测方向是否接近于垂直方向。尽管在随后的实施例中严格地确定预测方向是否是水平和垂直方向,但是本发明并不限于此,并且上述基于缓和的条件进行关于水平和/或垂直方向的确定的示例也属于本发明的范围。

然后,确定是否为水平预测模式(s620)。基本上,确定垂直预测模式和水平预测模式的步骤(s610和s620)不必彼此相关联,并且可以改变执行步骤s610和s620的次序。在水平预测模式的情况下,确定预测目标像素是否为位于当前块的上边界处的像素(s622)。如果确定预测目标像素是位于上边界的像素,则确定执行校正(s632)。在帧内预测模式是水平预测模式、但像素未位于上边界的情况下,可以不执行校正(s630)。在帧内预测模式不是垂直或水平预测模式的情况下,可以不进行关于当前块的预测值的校正(s630)。

根据本发明的实施例,可以考虑如上所述的帧内预测模式和块大小之中的至少一项,并仅针对辉度(亮度)信号而不针对色差(色度)信号,来对当前块的预测值进行校正。

根据本发明的另一个实施例,可以对大小为32×32或以下的块进行预测值校正。换言之,可以对大小为4×4、8×8以及16×16的块执行预测值校正。

根据本发明的又一个实施例,在帧间预测模式是dc模式的情况下,可以对位于当前块的左上边界处的像素进行校正。

图7a是示意性地例示在垂直预测模式下将当前块中的像素的第一预测值用作最终预测值的实施例的图,而图7b是示意性地例示在水平预测模式下将当前块中的像素的第一预测值用作最终预测值的实施例的图。

参考图7a和7b,图像编码/解码装置获得第一预测值,然后当在步骤s330中取决于帧预测模式、辉度信号、色差信号信息和块大小之中的至少一项确定出不对预测值执行校正时,确定第一预测值作为当前块710的最终预测值,而不进行校正。

此时,可以基于参考像素值获得第一预测值(pred1[x,y])。将在下面说明的p[x,y]表示在位置[x,y]处的参考像素值。此后,在实施例中,x=-1、……、blockwidth-1,y=-1、……、blockheight-1。此处,blockwidth是指当前块的宽度,而blockheight是指当前块的高度。在结合图7a和7b说明的实施例中,将4×4块描述为示例,并且在这种情况下,参考像素的范围可以是x=-1、……、3并且y=-1、……、3,当前块的像素的范围可以是x=0、……、3并且y=0、……、3。

参考图7a,在垂直方向预测的情况下,可以将第一预测值(pred1[x,y])确定为邻近当前块的上参考像素的值(722,724,726,728)。

[等式1]

pred1[x,y]=p[x,-1](x=0、……、blockwidth-1;y=0、……、blockheight-1)

假设当前块的左上侧定位在[0,0],则使用相对于在当前块710的左边界的像素而定位在[0,-1]处的像素722的像素值、相对于在从左侧开始的第二列的像素而定位在[-1,-1]处的像素724的像素值、相对于在从左侧开始的第三列的像素而定位在[2,-1]处的像素726的像素值、以及相对于在右边界的像素而定位在[3,-1]处的像素728的像素值,来确定第一预测值(pred1[x,y])。

图像编码/解码装置可以使用第一预测值(pred1[x,y])作为最终预测值(preds[x,y])。

[等式2]

preds[x,y]=pred[x,y](x=0、……、blockwidth-1;y=0、……、blockheight-1)

此处,preds[x,y]是指最终预测值。

参考图7b,在水平方向预测的情况下,可以将第一预测值(pred1[x,y])确定为邻近当前块的左参考像素(732,734,736,738)的值。

[等式3]

pred1[x,y]=p[-1,y](x=0、……、blockwidth-1;y=0、……、blockheight-1)

使用相对于在上边界的像素而定位在[-1,0]处的像素732的像素值、相对于在从上侧开始的第二行的像素而定位在[-1,1]处的像素734的像素值、相对于在从上侧开始的第三行的像素而定位在[-1,2]处的像素736的像素值、以及相对于下边界而定位在[-1,3]处的像素738的像素值,来确定第一预测值(pred1[x,y])。正如在垂直方向预测中,甚至在水平方向预测中,可以将第一预测值(pred1[x,y])用作最终预测值(preds[x,y])。

图8是示意性地例示其中对当前块中的像素的第一预测值执行校正以生成最终预测值的实施例的流程图。

参考图8,图像编码/解码装置通过如下方案获得第一预测值(pred1[x,y])(s810):如果在步骤330中根据帧内预测模式、辉度信息、色差信号信息以及块大小之中的至少一项确定出要对预测值执行校正,则利用上述参考像素值(参考图7a和7b)。

然后,装置确定预测目标像素的第一预测值(pred1[x,y])的初始校正值(d[x,y])(s820)。可以取决于块中的预测目标像素的水平或垂直位置,来确定初始校正值(d[x,y])。换言之,在垂直方向预测的情况下,可以根据块中的预测目标像素的垂直方向的位置,来确定初始校正值(d[x,y]),而在水平方向预测的情况下,可以根据块中的预测目标像素的水平方向的位置来确定初始校正值(d[x,y])。

[等式4]

d[x,y]=d[y]=p[-1,y]-p[-1,-1](在垂直方向预测模式的情况下)

d[x,y]=d[x]=p[x,-1]-p[-1,-1](在水平方向预测模式的情况下)

在等式4中,可以关于方向改变差值,如等式4’。

[等式4’]

d[x,y]=d[y]=p[-1,-1]-p[-1,y](在垂直方向预测模式的情况下)

d[x,y]=d[x]=p[-1,-1]-p[x,-1](在水平方向预测模式的情况下)

接下来,基于初始校正值(d[x,y])生成最终校正值(delta[x,y])(s830)。此时,通过示出相对较低的计算复杂度的算术右移,而不执行具有较高的计算复杂度的除法或乘法,来生成最终校正值(delta[x,y]),由此可以提高计算效率。换言之,通过对初始校正值(d[x,y])的二互补整数表示进行m个二进制数位的算术右移,来获得最终校正值(delta[x,y])。此时,经算术右移的最终校正值(delta[x,y])的msb(最高有效位)与初始校正值(d[x,y])的msb相同,并且最终校正值(delta[x,y])的特征在于在接近负无穷大的方向上被舍入。

[等式5]

delta[x,y]=d[x,y]>>m

此时,优选地,二进制数位m为1或2。

最后,将第一预测值(pred1[x,y])添加到最终校正值(delta[x,y]),由此生成最终预测值(preds[x,y])。

[等式6]

preds[x,y]=clip1y(pred1[x,y]+delta[x,y])

此处,clip1y(x)=clip3(0,(1<<bitdepthy)-1,x),并且bitdepthy表示辉度信号的比特深度。

根据本发明的另一个实施例,可以使用多种方案来产生初始校正值(d[x,y]),并且使用该初始值(d[x,y])生成最终校正值(delta[x,y])。首先,根据第一实施例,可以在对初始校正值执行条件分析之后,通过算法右移运算来生成最终校正值(delta[x,y])。根据第一实施例,可以使用下面的等式来计算校正值,使得校正值被舍入成接近于0。

[等式7]

delta[x,y]=(d[x,y]+(d[x,y]<0?2x:0))>>(x+1)(在垂直方向预测模式的情况下)

delta[x,y]=(d[x,y]+(d[x,y]<0?2y:0))>>(y+1)(在水平方向预测模式的情况下)

另外,根据第二实施例,可以使用下面的等式来计算校正值,使得校正值被舍入成远离0的整数。

[等式8]

delta[x,y]=(d[x,y]+(d[x,y]<0?1+2x:1))>>(x+1)(在垂直方向预测模式的情况下)

delta[x,y]=(d[x,y]+(d[x,y]<0?1+2y:1))>>(y+1)(在水平方向预测模式的情况下)

另外,根据第三实施例,可以使用下面的等式来计算校正值,使得校正值被舍入成接近于负无穷大的整数。此时,可以仅对使用垂直方向预测模式的当前块的左边界、以及仅对使用水平方向预测模式的当前块的上边界应用等式9,并且在这种情况下,等式9与m为1时的等式5相同。

[等式9]

delta[x,y]=d[x,y]>>(x+1)(在垂直方向预测模式的情况下)

delta[x,y]=d[x,y]>>(y+1)(在水平方向预测模式的情况下)

根据本发明的第四实施例,可以产生初始校正值(d[x,y]),然后,基于初始校正值(d[x,y]),可以使用sign运算和abs运算来计算最终校正值(delta[x,y])。在这种情况下,可以通过将针对初始校正值执行sign运算而获得的值、乘以针对初始校正值的绝对值执行算术右移而获得的值,来获得最终校正值(delta[x,y])。此时,可以计算出最终校正值,使得获得的最终预测值被舍入成接近于0的整数。

[等式10]

delta[x,y]=sign(d[x,y])*((abs(d[x,y])+2x)>>(x+1))(在垂直方向预测模式的情况下)

delta[x,y]=sign(d[x,y])*((abs(d[x,y])+2y)>>(y+1))(在水平方向预测模式的情况下)

另外,可以通过将针对初始校正值执行sign运算而获得的值、乘以针对初始校正值的绝对值执行加法运算然后针对该加法的结果值执行算术右移而获得的值,来获得基于sign运算和abs算法的根据第五实施例的最终校正值。此时,可以计算出最终校正值,使得计算出的最终预测值被舍入成远离0的整数。

[等式11]

delta[x,y]=sign(d[x,y])*((abs(d[x,y])+2x)>>(x+1))(在垂直方向预测模式的情况下)

delta[x,y]=sign(d[x,y])*((abs(d[x,y])+2y)>>(y+1))(在水平方向预测模式的情况下)

然后,基于在第一至第五实施例中获得的最终校正值,可以将第一预测值(pred1[x,y])添加到最终校正值(delta[x,y]),由此生成最终预测值(preds[x,y])。

图9a是示意性地例示在使用垂直模式时通过对第一预测值执行校正来生成最终预测值的实施例的图。

参考图9a,在通过垂直方向预测模式执行帧内预测时,图像编码/解码装置将当前块910的上参考像素的像素值确定为第一预测值(pred1[x,y]=p[x,-1])。

然后,该装置以定位在当前块910的左边界的像素920作为目标执行校正。为了对第一预测值执行校正,首先确定初始校正值。此时,取决于预测目标像素的垂直位置来确定初始校正值。即,对应于预测目标像素的左参考像素940的值与左上角像素930的值之间的差可以成为初始校正值(d[x,y]=d[y]=p[-1,y]-p[-1,-1])。如上所述,在左边界的情况下,仅当x=0时才存在初始校正值,否则,初始校正值可以是0。

接下来,通过对初始校正值的二互补整数表示进行1个二进制数位的算术右移,来计算最终校正值(delta[x,y]=d[x,y]>>1=(p[-1,y]-p[-1,-1])>>1)。

最后,将第一像素值添加到最终校正值,由此生成最终预测值(preds[x,y]=clip1y(pred1[x,y]+delta[x,y])。

图9b是示意性地例示在使用水平模式时、通过对第一预测值执行校正、来生成最终预测值的实施例的视图。

参考图9b,图像编码/解码装置在通过水平方向预测模式执行帧内预测的情况下,将当前块910的左参考像素的像素值确定为第一预测值(pred1[x,y]=p[-1,y])。

然后,该装置针对定位在当前块910的上边界的像素950执行校正。根据预测目标像素的水平位置来确定初始校正值,以便对第一预测值执行校正。即,对应于预测目标像素的上参考像素960的值与左上角像素930的值之间的差可以成为初始校正值(d[x,y]=d[x]=p[x,-1]-p[-1,-1])。如上所述,在上边界的情况下,仅当y=0时才存在初始校正值,否则,初始校正值可以是0。

接下来,可以通过对初始校正值的二互补整数表示进行1个二进制数位的算术右移,来计算最终校正值(delta[x,y]=d[x,y]>>1=(p[x,-1]-p[-1,-1])>>1),并且将第一预测值添加到最终校正值,由此生成最终预测值(preds[x,y]=clip1y(pred1[x,y]+delta[x,y])。

图10是示意性地例示在根据本发明的另一实施例的图像编码/解码方法中执行缩放的过程的流程图。

参考图10,根据本明的另一实施例的图像编码/解码装置可以在对当前块执行帧间预测或运动补偿时,执行缩放以生成预测块的运动向量。为此目的,图像编码/解码装置确定当前块的参考画面是否与参考块的参考画面相同(s1010)。此时,图像编码/解码装置可以确定指示参考画面列表中的参考画面的参考画面索引是否相同,而不是仅确定参考画面的相同度。然后,取决于确定的结果,图像编码/解码装置确定是否对参考块的运动向量执行缩放(s1020)。在参考画面相同的情况下,可以不对参考块的运动向量进行缩放,但是在其他方面,需要对参考块的运动向量进行缩放。将缩放后的参考块的运动向量用作当前块的运动向量的基础,并且可以用于当前块的帧间预测。

同时,作为适用于通过缩放进行帧间预测的帧间预测方案,可以存在amvp(高级运动向量预测)或合并模式。具体地,在合并模式中,该方案可以适用于在合并模式下的时间合并候选推导过程,并且在amvp下适用于时间运动向量推导过程和空间运动向量推导过程。

图11a是例示当前画面与空间参考块的当前画面之间的poc差、以及当前画面与当前块的参考画面之间的poc差的图。

参考图11a,当前块1100的邻近块中的用于推导空间运动向量候选的参考块1110可以是邻近当前块1100的左侧的最下边的块、邻近左边最下边的块的下侧的块、当前块的左上角的块、当前块的右上角的块、以及邻近当前块的上边最右边的块之中的至少一个。此时,对于能够被用于当前块1100的预测而不执行缩放的参考块1110的运动向量,参考块1110的参考画面1140需要与当前块1100的参考画面1130相同,并且参考块1110的运动向量可以按照别的方式经受缩放,然后可用于当前块1100的预测。即,可以确定指示当前块的参考画面1130与当前画面1120的poc(画面次序计数)之间的差的tb是否和指示当前画面1120与参考块1110的参考画面1140之间的poc差的td相同,如果两者相同,则不执行缩放,如果两者不同,则可以进行缩放处理。

图11b是例示并置块的参考画面和并置画面之间的poc差、以及当前画面与当前画面的参考画面之间的poc差的图。

参考图11b,图像编码/解码装置可以基于与在已经重构的并置画面1160中对应于当前块1100的位置处的并置块1150相关联的参考块的运动向量,来执行当前块1100的预测。即,作为用于推导时间运动向量或时间合并候选的参考块,是定位在并置块之内或之外的块。可以根据并置块的右下角的块、或四个方块中的右下边的块相对于并置块的中心的相对位置,来确定参考块。

此时,在使用时间参考块的运动向量时,确定指示并置块1150所参考的参考画面1170与并置画面1160之间的poc差的td是否和指示当前块1100所参考的参考画面1130与当前画面1120之间的poc差的tb相同。可以做出如下确定:如果两个值相同,则不执行缩放;并且如果两个值不同,则执行缩放处理。

图12是示意性地例示基于画面之间的poc差来计算运动向量的缩放因子的过程的实施例的流程图。

如图12所示,图像编码/解码装置获得指示画面之间的poc差的td和tb,以便计算缩放因子(s1210)。此处,第一值可以表示td,第二值可以表示tb。如上所述,i)在推导空间运动向量的过程中(参考图11a),td表示当前画面的poc与空间邻近的参考块所参考的参考画面的poc之间的差,而tb表示当前画面的poc与当前块所参考的参考画面的poc之间的差。此时,当前块的参考画面和参考块的参考画面可以具有不同的预测方向,并且在这种情况下,可以为td和tb分配不同的符号。在某些情况下,可以将td或tb调整成包括在从-128到127的范围内。此时,如果td或tb小于-128,则可以将td或tb调整成-128,如果td或tb大于127,则可以将td或tb调整成127。如果td或tb被包括在-128与127之间的范围内,则不对td或tb进行调整。

[等式12]

td=clip3(-128,127,picordercnt(currpic)-refpicorder(currpic,refidxz,listz))

tb=clip3(-128,127,picordercnt(currpic)-refpicorder(currpic,refidxlx,lx))

此处,currpic可以表示当前画面。另外x可以具有0或1的值。例如,如果x=0,则refldxlx和lx可以分别是refldxl0和l0,其表示与l0时间运动信息相关联的变量。另外,refldxlx可以表示指示在其中分配了参考画面的lx参考画面列表中的参考画面的lx参考画面索引。在refldxlx为0的情况下,refldxlx可以表示lx参考画面列表中的第一参考画面,并且在refldxlx为-1的情况下,refldxlx可以表示不指示在参考画面列表中的参考画面。另外,z可以表示邻近左侧(即,用于推导空间运动向量的参考块的位置)的最下边的块、邻近左边最下边的块的下侧的块、当前块的左上角的块、当前块的右上角的块、以及邻近当前块的上边最右边的块之中的至少一个。

ii)在推导时间运动向量的过程中以及iii)在推导时间合并候选的过程中(参考图11b),td可以表示并置画面的poc与并置块所参考的参考画面的poc之间的差,而tb可以表示当前画面的poc和当前块所参考的参考画面的poc之间的差。在这种情况下,也可以将td或tb调整成被包括在-128与127之间的范围内。

[等式13]

td=clip3(-128,127,picordercnt(colpic)-refpicorder(currpic,refidxcol,listcol))

tb=clip3(-128,127,picordercnt(currpic)-refpicorder(currpic,refidxlx,lx))

此处,colpic可以表示并置块。另外,refldxcol和listcol可以表示并置块的参考画面索引和参考画面列表。

一旦获得td和tb,图像解码装置就可以通过对td的绝对值的二互补整数表示进行1个二进制数位的算术右移来生成偏移值(s1220)。即,偏移值可以使用与td的绝对值成比例的值,并且可以通过执行具有相对低的复杂度的算术右移、而不执行高复杂度的运算、来计算偏移值。

[等式14]

offset=abs(td)>>1

此时,abs()表示绝对值函数,并且从对应的函数输出的值是输入值的绝对值。

在执行算术右移之后,图像编码/解码装置基于偏移值计算td的反比例值(s1230)。

[等式15]

tx=(16384+offset)/td

在计算出td的反比例值(tx)之后,基于tb和td的反比例值(tx)计算缩放因子(s1240)。

图13是示意性地例示基于tb和td的反比例值来计算最终缩放因子的配置的框图。如图13所示,用于计算最终缩放因子(scalefactor)的配置1300可以包括乘法器1310、加法运算单元1320、算术移位单元1330以及因子调整单元1340。

参考图13,第一和第二值获得单元1302通过在步骤s1210中说明的方法来获得td和tb。然后,偏移值计算单元1306基于td通过在步骤s1220中说明的方法来计算偏移值,而反比例值计算单元1308基于偏移值通过在步骤s1230中说明的方法来计算td的反比例值(tx)。所述偏移值计算单元1306和反比例值计算单元1308可被包括在第一值的反比例值计算单元1304中。

乘法器1310接收tb和在反比例值计算单元1308中计算出的td的反比例值(tx)作为输入,并执行乘法。加法运算单元1320可以基于tb和td的反比例值(tx)的乘法,来执行加法运算。此时,可以执行添加32的运算。然后,算术移位单元1330对加法运算的结果值的二互补整数表示执行6个二进制数位的算术右移。可以将执行到这里的运算表示如下:

[等式16]

scalefactor=(tb*tx+32)>>6

然后,因子调整单元1340将缩放因子(scalefactor)调整成被包括在-4096与4095之间的范围内。此处,将缩放因子调整成被包括在特定范围内(例如,在a和b之间)是指:如果缩放因子小于a则将因子截短至a,如果缩放因子大于b则将因子截短至b。

在计算缩放因子之后,图像编码/解码装置可以计算缩放后的运动向量(scaledmv)。将缩放因子(scalefactor)乘以对应的运动向量(其可以表示与空间运动向量推导、时间运动向量推导以及时间合并之中的至少一项相关联的运动向量),对乘法的结果值执行sign运算,对乘法的结果值的绝对值执行加法运算和算术移位运算,并且将sign值乘以加法和算术移位运算的结果值,由此可以计算出缩放后的运动向量(scaledmv)。

[等式17]

scaledmv=sign(scalefactor*mv)*((abs(scalefactor*mv)+127)>>8)

此处,sign()输出关于指定值的符号的信息(例如,sign(-1)输入“-”),并且mv表示缩放前的运动向量。此时,可以对运动向量的x分量和y分量中的每一个执行缩放。

图像编码/解码装置可以使用上述缩放的运动向量,来产生当前块的预测块。

根据本发明的另一个实施例,上述的缩放因子计算方案还可以用于计算隐式加权预测中的(in-implicit-weighted-prediction)缩放因子的过程中。图像编码/解码装置获得表示画面之间的poc差的td和tb,以便在执行隐式加权预测时计算缩放因子。

td可以表示参考画面列表1中的参考画面中的当前画面所参考的参考画面的poc、以及参考画面列表0中的参考画面中的当前画面所参考的参考画面的poc,而tb可以表示当前画面的poc与参考画面列表0中的参考画面中的当前画面所参考的参考画面的poc之间的差。此时,可以将td或tb调整成被包括在-128与127之间的范围内。此时,如果td或tb小于-128,则可以将td或tb调整成-128,如果td或tb大于127,则可以将td或tb调整成127。如果td或tb被包括在-128与127之间的范围内,则不对td或tb进行调整。

[等式18]

td=clip3(-128,127,picordercnt(currpic,refidxl1,l1)-refpicorder(currpic,refidxl0,l0))

tb=clip3(-128,127,picordercnt(currpic)-refpicorder(currpic,refidxl0,l0))

然后,图像解码装置可以通过对td的绝对值的二互补整数表示执行1个二进制数位的算术右移,来计算偏移值。

在执行算术右移之后,图像编码/解码装置基于偏移值计算td的反比例值(tx=(16384+offset)/td),计算td的反比例值(tx),并且基于tb和td的反比例值(tx)来计算缩放因子(scalefactor=(tb*tx+32)>>6)。

具体地,在计算隐式加权预测中的缩放因子时,可以将缩放因子(scalefactor)调整成被包括在-1024和1023之间的范围内。此时,在图像之间的距离增加的情况下,使用图像之间的距离针对加权因子执行的缩放可能不会被正确地进行,因此执行了错误的隐式加权预测,从而导致编码效率的恶化。相应地,可以将缩放因子调整成被包括在-4096与4065之间的范围内,而不是被包括在-1024与1023之间的范围内。

此时,使用加权因子,可以将参考画面列表0中的参考画面的加权值确定为64-(scalefactor>>2),并且可以将参考画面列表1中的参考画面的加权值确定为scalefactor>>2。

尽管在实施例中基于具有一系列的步骤或框的流程图说明了方法,但是本发明并不限于该次序,某些步骤可以与其他步骤同时执行或者在不同于其他步骤的序列中执行。另外,本领域的技术人员可以理解的是,可以将其他步骤非排他性地包括在流程图的步骤中,或者可以从流程图中去除一个或多个步骤,而不影响本发明的范围。

上述实施例包括示例的各个方面。尽管在本文中可能未说明示例的各个方面的所有可能的组合,但是本领域的技术人员将理解这些组合是可能的。相应地,本发明包括对所附的权利要求做出的所有其他修改、变型、或变化。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1