CN110933439B - 运动信息候选者列表构建方法、装置及可读存储介质 - Google Patents

运动信息候选者列表构建方法、装置及可读存储介质 Download PDF

Info

Publication number
CN110933439B
CN110933439B CN201811102877.6A CN201811102877A CN110933439B CN 110933439 B CN110933439 B CN 110933439B CN 201811102877 A CN201811102877 A CN 201811102877A CN 110933439 B CN110933439 B CN 110933439B
Authority
CN
China
Prior art keywords
motion information
encoded
block
decoded
decoded block
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.)
Active
Application number
CN201811102877.6A
Other languages
English (en)
Other versions
CN110933439A (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.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
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 Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201811102877.6A priority Critical patent/CN110933439B/zh
Priority to PCT/CN2019/106473 priority patent/WO2020057556A1/zh
Publication of CN110933439A publication Critical patent/CN110933439A/zh
Application granted granted Critical
Publication of CN110933439B publication Critical patent/CN110933439B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

本申请提供一种运动信息候选者列表构建方法、装置及可读存储介质,该方法包括:获取当前图像块的已有运动信息,所述已有运动信息至少包括运动矢量;对所述已有运动信息进行变换;将变换后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表。该方法可以增加候选者样本的丰富性。

Description

运动信息候选者列表构建方法、装置及可读存储介质
技术领域
本申请涉及视频编码技术,尤其涉及一种运动信息候选者列表构建方法、装置及可读存储介质。
背景技术
帧间预测是指利用视频时域的相关度,使用邻近已编码图像像素预测当前图像的像素,以达到有效去除视频时域冗余的目的。
目前,主要的视频编码标准的帧间预测部分均采用基于块的运动补偿技术,其主要原理是为当前图像的每一个像素块在之前的已编码图像中寻找一个最佳匹配块,该过程称为运动估计(Motion Estimation,简称ME)。其中用于预测的图像称为参考图像(Reference Frame),参考块到当前像素块的位移称为运动矢量(Motion Vector,简称MV),当前像素块与参考块的差值称为预测残差(Prediction Residual)。
由于空域相邻块的运动信息具有较强的相关度,同时运动信息在时域上也有一定的相关度,因此,若利用空域或者时域上相邻块的运动信息对当前块的运动信息进行预测,得到预测像素值,则仅需要对残差进行编码,可以大幅度的节省运动信息的编码比特数。通过编解码端构建相同的运动信息候选者列表,不需要直接编码运动信息,仅需要编码最终选择的候选者列表中的序号(例如Merge_idx)就可以表达运动信息,从而大幅度减少编码比特数。
为了利用相邻块的空域相关度和时域相关度,目前的视频编码标准在运动信息的预测方面提出了合并技术(Merge)、高级运动矢量预测技术 (Advanced Motion VectorPrediction,简称AMVP)以及仿射(Affine)技术。其均使用空域和时域运动信息预测的思想,通过建立运动信息候选者列表,并按照预设规则从列表中择取最优的一个候选者作为当前单元的预测信息。
现有视频编码标准中在构建运动信息候选者列表时,仅从空域候选者列表和时域候选者列表中选择候选运动信息,容易出现不存在可用运动信息或可用运动信息数量不足的情况。
发明内容
有鉴于此,本申请提供一种运动信息候选者列表构建方法、装置及可读存储介质。
具体地,本申请是通过如下技术方案实现的:
根据本申请实施例的第一方面,提供一种运动信息候选者列表构建方法,包括:
获取当前图像块的已有运动信息,所述已有运动信息至少包括运动矢量;
对所述已有运动信息进行变换;
将变换后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表。
可选地,所述对所述已有运动信息进行变换,包括:
对所述已有运动信息在指定方向上进行伸缩。
可选地,所述对所述已有运动信息在指定方向上进行伸缩,包括:
根据当前图像块所属调整单元的上一调整单元中零运动矢量的占比确定对所述已有运动信息在所述指定方向上进行伸缩的幅度;其中,所述调整单元包括帧、条带slice或行;所述幅度与所述零运动矢量的占比负相关;
根据所述幅度对所述已有运动信息在指定方向上进行伸缩。
可选地,所述对所述已有运动信息在指定方向上进行伸缩,包括:
根据当前图像块的不同位置的空域相邻块的运动信息的相似度确定对所述已有运动信息在所述指定方向上进行伸缩的幅度;
根据所述幅度对所述已有运动信息在指定方向上进行伸缩。
可选地,所述对所述已有运动信息进行变换,包括:
对所述已有运动信息进行加权。
可选地,所述已有运动信息包括与所述当前图像块关联的空域候选者的运动信息、时域候选者的运动信息和/或已编码/解码块的运动信息。
根据本申请实施例的第二方面,提供一种运动信息候选者列表构建方法,包括:
根据预设过滤条件对当前图像块之前的已编码/解码块进行筛选,并基于筛选后的已编码/解码块构建已编码/解码块运动信息列表;
从所述已编码/解码块运动信息列表中选择候选运动信息加入所述当前图像块的运动信息候选者列表,所述候选运动信息至少包括运动矢量。
可选地,所述根据预设过滤条件对当前图像块之前的已编码/解码块进行筛选,并基于筛选后的已编码/解码块构建已编码/解码块运动信息列表,包括:
对于当前图像块之前的任一已编码/解码块,当该已编码/解码块的残差系数中的非零系数个数小于所述预设数量阈值时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表;
或,
当该已编码/解码块的长小于所述第一预设阈值,和/或该已编码/解码块的宽小于所述第二预设阈值时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表;
或,
当该已编码/解码块的运动信息的量化步长小于所述预设步长阈值时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
可选地,所述基于筛选后的已编码/解码块构建已编码/解码块运动信息列表,包括:
对所述筛选后的已编码/解码块进行分类,并根据所述筛选后的已编码/解码块的类别将所述筛选后的已编码/解码块加入到对应的已编码/解码块运动信息列表;其中,不同的类别对应不同的已编码/解码块运动信息列表。
可选地,所述对所述筛选后的已编码/解码块进行分类,包括:
根据所述筛选后的已编码/解码块的形状对所述筛选后的已编码/解码块进行分类。
可选地,所述根据所述筛选后的已编码/解码块的形状对所述筛选后的已编码/解码块进行分类,包括:
当所述筛选后的已编码/解码块的宽高比大于1时,将所述筛选后的已编码/ 解码块划分为第一类别;或
当所述筛选后的已编码/解码块的宽高比小于1时,将所述筛选后的已编码/ 解码块划分为第二类别。
可选地,所述根据所述筛选后的已编码/解码块的形状对所述筛选后的已编码/解码块进行分类,包括:
当所述筛选后的已编码/解码块的宽高比等于1时,将所述筛选后的已编码/ 解码块划分为第一类别;或,
当所述筛选后的已编码/解码块的宽高比等于1时,将所述筛选后的已编码/ 解码块划分为第二类别;或,
当所述筛选后的已编码/解码块的宽高比等于1时,将所述筛选后的已编码/ 解码块划分为第三类别。
可选地,所述对所述筛选后的已编码/解码块进行分类,包括:
当所述筛选后的已编码/解码块的宽与高的积大于预设阈值时,将所述筛选后的已编码/解码块划分为第一类别;
当所述筛选后的已编码/解码块的宽与高的积小于等于预设阈值时,将所述筛选后的已编码/解码块划分为第二类别。
可选地,所述对所述筛选后的已编码/解码块进行分类,包括:
根据所述筛选后的已编码/解码块的预测模式对所述筛选后的已编码/解码块进行分类。
可选地,所述根据所述筛选后的已编码/解码块的预测模式对所述筛选后的已编码/解码块进行分类,包括:
当所述筛选后的已编码/解码块的预测模式为合并模式时,将所述筛选后的已编码/解码块划分为第一类别;
当所述筛选后的已编码/解码块的编码模式为高级运动矢量预测AMVP模式时,将所述筛选后的已编码/解码块划分为第二类别。
可选地,所述从所述已编码/解码块运动信息列表中选择候选运动信息加入所述运动信息候选者列表,包括:
按照各类别对应的已编码/解码块运动信息列表的优先级从高到低的顺序,依次从各已编码/解码块运动信息列表中选择候选运动信息加入所述运动信息候选者列表;其中,不同的类别对应不同的优先级。
可选地,所述从所述已编码/解码块运动信息列表中选择候选运动信息加入所述运动信息候选者列表,包括:
确定与所述当前图像块匹配的已编码/解码块的运动信息列表;
从所述与所述当前图像块匹配的已编码/解码块的运动信息列表中选择候选运动信息加入所述运动信息候选者列表。
可选地,所述确定与所述当前图像块匹配的已编码/解码块的运动信息列表,包括:
根据所述当前图像块的形状确定所述当前图像块的类别;
根据所述当前图像块的类别确定与所述当前图像块的类别匹配的已编码/解码块的运动信息列表。
可选地,所述基于筛选后的已编码/解码块构建已编码/解码块运动信息列表之后,还包括:
对所述已编码/解码块运动信息列表中的所述筛选后的已编码/解码块的运动信息进行重排序。
可选地,所述对所述已编码/解码块运动信息列表中的所述筛选后的已编码/ 解码块的运动信息进行重排序,包括:
基于所述筛选后的已编码/解码块的残差系数对所述筛选后的已编码/解码块的运动信息进行重排序。
可选地,所述基于所述筛选后的已编码/解码块的残差系数对所述筛选后的已编码/解码块的运动信息进行重排序,包括:
按照残差系数的非零系数个数从多到少的顺序对所述筛选后的已编码/解码块的运动信息进行重排序。
可选地,所述对所述已编码/解码块运动信息列表中的所述筛选后的已编码/ 解码块的运动信息进行重排序,包括:
基于所述当前图像块的形状以及所述筛选后的已编码/解码块与所述当前图像块的相对位置,对所述筛选后的已编码/解码块的运动信息进行重排序。
可选地,所述基于所述当前图像块的形状以及所述筛选后的已编码/解码块与所述当前图像块的相对位置,对所述筛选后的已编码/解码块的运动信息进行重排序,包括:
当所述当前图像块的宽高比大于1时,按照所述当前图像块左侧的所述筛选后的已编码/解码块在前,所述当前图像块上侧的所述筛选后的已编码/解码块在后的顺序,对所述筛选后的已编码/解码块的运动信息进行重排序。
可选地,所述基于所述当前图像块的形状以及所述筛选后的已编码/解码块与所述当前图像块的相对位置,对所述筛选后的已编码/解码块的运动信息进行重排序,包括:
当所述当前图像块的宽高比小于1时,按照所述当前图像块上侧的所述筛选后的已编码/解码块在前,所述当前图像块左侧的所述筛选后的已编码/解码块在后的顺序,对所述筛选后的已编码/解码块的运动信息进行重排序。
可选地,所述基于所述当前图像块的形状以及所述筛选后的已编码/解码块与所述当前图像块的相对位置,对所述筛选后的已编码/解码块的运动信息进行重排序,包括:
当所述当前图像块的宽高比等于1时,按照所述当前图像块左侧的所述筛选后的已编码/解码块在前,所述当前图像块上侧的所述筛选后的已编码/解码块在后的顺序,对所述筛选后的已编码/解码块的运动信息进行重排序;
或,
当所述当前图像块的宽高比等于1时,按照所述当前图像块上侧的所述筛选后的已编码/解码块在前,所述当前图像块左侧的所述筛选后的已编码/解码块在后的顺序,对所述筛选后的已编码/解码块的运动信息进行重排序。
根据本申请实施例的第三方面,提供一种运动信息候选者列表构建方法,包括:
对当前图像块之前的已编码/解码块进行分类;
根据所述已编码/解码块的类别将所述已编码/解码块加入到对应的已编码/ 解码块运动信息列表;其中,不同的类别对应不同的已编码/解码块运动信息列表;
从所述已编码/解码块运动信息列表中选择候选运动信息加入所述当前图像块的运动信息候选者列表,所述候选运动信息至少包括运动矢量。
根据本申请实施例的第四方面,提供一种运动信息候选者列表构建方法,包括:
根据当前图像块之前的已编码/解码块的运动信息,构建已编码运动信息列表;
对所述已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序;
从重排序后的所述已编码/解码块运动信息列表中选择候选运动信息加入所述当前图像块的运动信息候选者列表,所述候选运动信息至少包括运动矢量。
根据本申请实施例的第五方面,提供一种运动信息候选者列表构建方法,包括:
构建已编码/解码块运动信息列表,所述已编码/解码块运动信息列表中包括当前图像块之前的已编码/解码块的运动信息;
当所述当前图像块的预测模式为仿射Affine模式时,从所述已编码/解码块的运动信息中选择候选运动信息加入所述当前图像块的运动信息候选者列表。
可选地,所述从所述已编码/解码块的运动信息中选择候选运动信息加入所述当前图像块的运动信息候选者列表,包括:
从预测模式为Affine Merge模式的已编码/解码块的运动信息中选择候选运动信息加入所述当前图像块的运动信息候选者列表;或,
从预测模式为Affine AMVP模式的已编码/解码块的运动信息中选择候选运动信息加入所述当前图像块的运动信息候选者列表。
可选地,所述构建已编码/解码块运动信息列表,包括:
对预测模式为Affine模式的已编码/解码块进行分类,并根据所述预测模式为Affine模式的已编码/解码块的类别将所述预测模式为Affine模式的已编码/ 解码块加入到对应的已编码/解码块运动信息列表;其中,不同的类别对应不同的已编码/解码块运动信息列表。
可选地,所述对预测模式为Affine模式的已编码/解码块进行分类,包括:
根据所述预测模式为Affine模式的已编码/解码块的参数模型对所述预测模式为Affine模式的已编码/解码块进行分类。
可选地,所述根据所述预测模式为Affine模式的已编码/解码块的参数模型对所述预测模式为Affine模式的已编码/解码块进行分类,包括:
当所述预测模式为Affine模式的已编码/解码块的参数模型为2参数模型时,将所述预测模式为Affine模式的已编码/解码块划分为第一类别;
当所述预测模式为Affine模式的已编码/解码块的参数模型为4参数模型时,将所述预测模式为Affine模式的已编码/解码块划分为第二类别;
当所述预测模式为Affine模式的已编码/解码块的参数模型为6参数模型时,将所述预测模式为Affine模式的已编码/解码块划分为第三类别。
可选地,所述从所述已编码/解码块的运动信息中选择候选运动信息加入所述当前图像块的运动信息候选者列表,包括:
按照各类别对应的已编码/解码块运动信息列表的优先级从高到低的顺序,依次从各已编码/解码块运动信息列表中选择候选运动信息加入所述当前图像块的运动信息候选者列表;其中,不同的类别对应不同的优先级。
可选地,所述从所述已编码/解码块的运动信息中选择候选运动信息加入所述当前图像块的运动信息候选者列表,包括:
确定与所述当前图像块匹配的已编码/解码块的运动信息列表;
从所述与所述当前图像块匹配的已编码/解码块的运动信息列表中选择候选运动信息加入所述当前图像块的运动信息候选者列表。
根据本申请实施例的第六方面,提供一种运动候选者列表构建装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述运动候选者列表构建方法。
根据本申请实施例的第七方面,提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述运动信息候选者列表构建方法。
本申请实施例的运动信息候选者列表构建方法,通过对当前图像块的已有运动信息进行变换,并将变换后的已有运动信息作为候选运动信息加入当前图像块的运动信息候选者列表,增加了候选者样本的丰富性。
本申请实施例的运动信息候选者列表构建方法,通过在构建已编码/解码块运动信息列表时,对当前图像块之前的已编码/解码块进行筛选、分类和/或重排序,在增加候选者样本的丰富性的基础上,提高了已编码/解码块运动信息列表构建的精准度。
本申请实施例的运动信息候选者列表构建方法,当当前图像块的预测模式为Affine模式时,从已编码/解码块的运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,增加了Affine模式的运动信息预测的候选者样本的丰富性。
附图说明
图1A~1B是本申请示例性实施例示出的块划分的示意图;
图2A是本申请一示例性实施例示出的一种运动信息候选者列表构建方法的流程示意图;
图2B~图2D是本申请示例性实施例示出的运动信息候选者列表的示意图;
图3是本申请一示例性实施例示出的一种运动信息候选者列表构建方法的流程示意图;
图4是本申请一示例性实施例示出的一种运动信息候选者列表构建方法的流程示意图;
图5是本申请一示例性实施例示出的一种运动信息候选者列表构建方法的流程示意图;
图6A是本申请一示例性实施例示出的一种运动信息候选者列表构建方法的流程示意图;
图6B是本申请一示例性实施例示出的一种运动信息候选者列表的示意图;
图7A是本申请一示例性实施例示出的一种对已有运动信息进行伸缩的示意图;
图7B是本申请一示例性实施例示出的一种帧运动强度与伸缩的幅度的对应关系的示意图;
图7C是本申请一示例性实施例示出的一种不同位置的相邻块的相似度与伸缩的幅度的对应关系的示意图;
图7D是本申请一示例性实施例示出的一种对已编码/解码块进行筛选的示意图;
图7E是本申请另一示例性实施例示出的一种对已编码/解码块进行筛选的示意图;
图7F是本申请又一示例性实施例示出的一种对已编码/解码块进行筛选的示意图;
图7G是本申请一示例性实施例示出的一种对已编码/解码块进行分类的示意图;
图7H是本申请一示例性实施例示出的一种从多个已编码/解码块运动信息列表中选择候选运动信息的示意图;
图7I是本申请另一示例性实施例示出的一种对已编码/解码块进行分类的示意图;
图7J是本申请又一示例性实施例示出的一种对已编码/解码块进行分类的示意图;
图7K是本申请一示例性实施例示出的一种对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序的示意图;
图7L是本申请另一示例性实施例示出的一种对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序的示意图;
图7M是本申请一示例性实施例示出的一种Affine模式的运动信息预测终中的已编码/解码块运动信息列表构建的示意图;
图7N是本申请一示例性实施例示出的一种对Affine模式的已编码/解码块进行分类的示意图;
图7O是本申请一示例性实施例示出的一种已编码/解码块运动信息存储的示意图;
图8是本申请一示例性实施例示出的一种运动信息候选者列表构建装置的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面先对现有视频编码标准中块划分技术进行简单说明。
在HEVC中,一个CTU(Coding Tree Unit,编码树单元)使用四叉树递归划分成CU(Coding Unit,编码单元)。在叶子节点CU级确定是否使用帧内编码或者帧间编码。CU可以进一步划分成两个或者四个PU(Prediction Unit,预测单元),同一个PU内使用相同的预测信息。在预测完成后得到残差信息后,一个CU可进一步四叉划分成多个TU(TransformUnits)。例如,本申请中的当前图像块即为一个PU。
但是在最新提出的VVC(Versatile Video Coding,通用视频编码)中的块划分技术有了较大变化。一种混合了二叉树/三叉树/四叉树的划分结构取代了原先的划分模式,取消了原先CU,PU,TU的概念的区分,支持了CU的更灵活的划分方式。其中,CU可以是正方形也可以是矩形划分。CTU首先进行四叉树的划分,然后四叉树划分的叶子节点可以进一步进行二叉树和三叉树的划分。图 1A所示,CU共有五种划分类型,分别为四叉树划分,水平二叉树划分,垂直二叉树划分,水平三叉树划分和垂直三叉树划分,如图1B所示,一种CTU内的CU划分可以是上述五种划分类型的任意组合由上可知不同的划分方式,使得各个PU的形状有所不同,如不同尺寸的矩形,正方形。
对本发明中的预测模式进行如下介绍:
1、合并模式
H265/HEVC在运动信息预测方面提出了合并技术(Merge模式的运动信息预测)和AMVP技术(即AMVP模式的运动信息预测)。两者均使用了空域和时域运动信息预测的思想,通过建立候选运动信息列表,基于率失真代价择取最优的一个运动信息候选者作为当前数据块的预测运动信息。
Merge模式下,当前数据块的运动信息直接基于空域或者时域上相邻的数据块的运动信息预测得到,不存在运动矢量差(Motion Vector Difference, MVD);若编解码端依照一样的方式构建运动信息候选者列表,则编码器只需要传输预测运动信息在运动信息候选者列表中的索引即可,这样可以大幅度节省了运动信息的编码比特数。
2、AMVP模式
AMVP模式的运动信息预测也是利用空域和时域上相邻数据块的运行信息的相关性,为当前数据块建立运动信息候选者列表。编码器从中选出最优的预测运动信息,并对运动信息进行差分编码;解码端通过建立相同的运动信息候选者列表,仅需要运动矢量残差和预测运动信息在该列表中的序号就可以计算出当前数据块的运动信息信息;其中,AMVP模式下的运动信息候选者列表的长度为2。
3、Affine Merge模式
Affine模式技术是Affine模式是H.266新引进的帧间预测模式,针对旋转,缩放的场景有很好的预测效果。
JEM中Affine模式分为两种,一种是Affine Inter,一种是Affine Merge。 AffineMerge通过遍历候选图像块找到第一个是Affine模式编码的候选者即可。对于AF_MERGE方式无需传输一些额外的索引值,只需传输是否使用 Affine Merge的Flag即可。
为了使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
需要说明的是,本文中所描述的运动信息候选者列表构建方法可以应用于编码端设备,也可以应用于解码端设备;其中,当应用于编码端设备时,本文中所描述的已编码/解码块指代已编码块;当应用于解码端设备时,本文中所描述的已编码/解码块指代已解码块,本文后续不再复述。
本申请实施例中,对于合并模式或AMVP模式等模式的运动信息预测,可以通过对已有运动信息进行变换的方式得到新的候选运动信息,以增加候选者样本的丰富性。
请参见图2A,为本申请实施例提供的一种运动信息候选者列表构建方法的流程示意图,如图2A所示,该运动信息候选者选择列表构建方法可以包括以下步骤:
步骤S200、获取当前图像块之前的已有运动信息。
本申请实施例中,已有运动信息可以包括但不限于空域候选者的运动信息、时域候选者的运动信息和/或已编码/解码块的运动信息。
其中,空域候选者的运动信息和时域候选者的运动信息是位于当前图像块的运动信息候选者列表中的候选运动信息,如图2B所示,当前图像块的运动信息候选者列表中包括空域候选者、时域候选者和零运动信息等,对于不同的模式,当前图像块的运动信息候选者列表中的空域候选者的运动信息和时域候选者的运动信息的数量不同。
当前图像块的空域候选块可以包括空域相邻块,也可以同时包括一些空域次相邻块,还可以同时包括一些空域非相邻块。当前图像块的空域候选块可以包括与当前图像块在同一个CTU的空域相邻块,也可以包括与当前图像块所在的CTU不同的空域相邻块。当前图像块的时域候选块,可以是当前图像块的参考图像帧中的图像块,尤其是参考帧图像中的时域相邻块,包括当前图像块的参考图像帧中与当前图像块位置相同的中间图像块,以及该中间图像块的空域相邻块。
当前图像块的运动信息候选者列表中的空域候选者的运动信息,包括当前图像块的一些空域相邻块的运动信息。当前图像块的运动信息候选者列表中的时域候选者的运动信息包括当前图像块的参考图像帧中,与当前图像块位置相同的中间图像块及该中间图像块的空域相邻块的运动信息。
需要说明的是,在本申请实施例中,若未特殊说明,所提及的已编码/ 解码块的运动信息是指当前图像块的运动信息候选者列表中除空域候选者和时域候选者之外的其他已编码图像块的运动信息,本申请实施例后续不再复述。
优选地,已编码图像块可以包括当前图像块的空域相邻块中除空域候选者之外的其余空域相邻块;或/和,当前图像块的时域候选块中除运动信息候选者列表中的时域候选块者之外的其余时域相邻块。
其中,当前图像块可以是任意一个图像单元,图像单元可以是一个CTU 但不限于CTU,也可以是CTU继续划分的块或单元,也可以是比CTU更大的块的单元。
其中,已有运动信息至少包括运动矢量。
但应该认识到,已有运动信息并不限于包括运动矢量,也可以是运动矢量之外的其他编码信息,相应地,对已有运动信息的变换也可以包括对运动矢量之外的其他运动信息的变换,本申请实施例对此不做赘述。
步骤S210、对获取到的已有运动信息进行变换。
本申请实施例中,为了增加候选者样本的丰富性,可以对已有运动信息进行变换,以得到新的候选运动信息。
在本申请其中一个实施例中,上述对获取到的已有运动信息进行变换,可以包括:
对获取到的已有运动信息在指定方向上进行伸缩。
在该实施例中,可以通过对已有运动信息进行伸缩的方式实现对已有运动信息的变换,以得到新的候选运动信息。
相应地,当获取到已有运动信息之后,可以对获取到的已有运动信息在指定方向上进行伸缩。
在一个示例中,该指定方向可以为当前图像块的运动矢量的运动方向,运动信息包括的MV(Motion Vector,运动矢量)方向。其中,当前图像块可以是双向帧间预测块,也可以是单向帧间预测块。
但应该认识到,对已有运动信息进行伸缩时并不限于在MV方向上进行伸缩,也可以在其他指定方向上进行伸缩,其具体实现在此不做赘述。
进一步地,在该实施例中,为了提高对已有运动信息进行伸缩的灵活性和合理性,对于不同已有运动信息,进行伸缩的幅度可以根据实际场景灵活调整。
作为该实施例的一种实施方式,为了提高运动信息候选者列表的构建效率,对已有运动信息进行伸缩时可以为帧级、slice(条带)级或行级的伸缩,即同一帧、slice或行的已有运动信息的伸缩幅度可以相同。
其中,一帧图像可以被划分为一个或多个slice;一个slice可以包括一个或多个CTU。
在一个示例中,上述对获取到的已有运动信息在指定方向上进行伸缩,可以包括:
根据当前图像块所属调整单元的上一调整单元中零运动矢量的占比确定对已有运动信息在指定方向上进行伸缩的幅度;
根据所确定的幅度对已有运动信息在指定方向上进行伸缩。
本申请实施例中,当前图像块是指当前进行运动信息预测的数据块。其中,应用于编码端,该数据块可以为待编码的数据块(本文中可以称为编码块);应用于解码端,该数据块可以为待解码的数据块(本文中可以称为解码块)。
在该示例中,调整单元可以包括帧、slice或行,相应地,对已有运动信息在指定方向身上进行伸缩时,可以采用帧级、slice级或行级语法控制。
在该示例中,可以根据调整单元的运动剧烈程度确定对已有运动信息进行伸缩的幅度。
其中,运动剧烈程度可以通过零运动矢量的占比表征,零运动矢量的占比越高,运动剧烈程度越低;零运动矢量的占比越低,运动剧烈程度越高。
其中,调整单元的零运动矢量为调整单元中零运动矢量的数量与该调整单元中与全部运动矢量的数量的比值。
在该示例中,当需要对已有运动信息进行指定方向上的伸缩时,可以根据当前图像块所属调整单元的上一调整单元中零运动矢量的占比确定对已有运动信息在指定方向上进行伸缩的幅度。
其中,对已有运动信息在指定方向上进行伸缩的幅度与该零运动矢量的占比负相关,即当前图像块所属调整单元的上一调整单元中零运动矢量的占比越高,所确定的对已有运动信息在指定方向上进行伸缩的幅度越小;当前图像块所属调整单元的上一调整单元中零运动矢量的占比越低,所确定的对已有运动信息在指定方向上进行伸缩的幅度越大。
举例来说,以调整单元为帧(即进行帧级的调整)为例,当前图像块所属帧的上一帧中零运动矢量的占比与所确定的对已有运动信息在指定方向上进行伸缩的幅度的对应关系可以如表所示:
零运动矢量占比 幅度
(T1,T2) A1
(T2,T3) A2
(T3,T4) A3
其中,0≤T1<T2<T3<T4≤100%,A1>A2>A3≥0。
需要说明的是,在该示例中,当当前图像块所属调整单元的上一调整单元中零运动矢量的占比超过一个比较大的比例阈值时(即该上一调整单元的运动剧烈程度很弱),对当前图像块进行帧间预测时,零运动信息被选中为最终的预测运动信息的概率会比较大,此时,对已有运动信息在指定方向上进行伸缩的幅度可以为零,即不对已有运动信息进行伸缩,以提高零运动信息被加入最终的运动信息候选者列表的概率。
作为该实施例的另一种实施方式,为了提高对已有运动信息进行伸缩的准确性,对已有运动信息进行伸缩时可以为块级的,即对于每一个数据块,可以分别确定已有运动信息的伸缩幅度。
在一个示例中,上述对获取的已有运动信息在指定方向上进行伸缩,可以包括:
根据当前图像块的不同位置的空域相邻块的运动信息的相似度确定对已有运动信息在指定方向上进行伸缩的幅度;
根据所确定的幅度对已有运动信息在指定方向上进行伸缩。
在该示例中,可以根据当前图像块相邻块的运动信息的相似度确定对已有运动信息进行伸缩的幅度。
在该示例中,当需要对已有运动信息进行指定方向上的伸缩时,可以根据当前图像块的不同位置的空域相邻块的运动信息的相似度确定已有运动信息进行伸缩的幅度。
其中,当前图像块的不同位置的空域相邻块的运动信息的相似度越高,所确定的对已有运动信息在指定方向上进行伸缩的幅度越小;当前图像块的不同位置的空域相邻块的运动信息的相似度越低,所确定的对已有运动信息在指定方向上进行伸缩的幅度越大。
需要说明的是,在该示例中,当当前图像块的任意两个不同位置的空域相邻块的运动信息的相似度均超过预设相似度阈值时,对已有运动信息在指定方向上进行伸缩的幅度可以为零,即不对已有运动信息进行伸缩。
在本申请另一个实施例中,上述对获取到的已有运动信息进行变换,可以包括:
对至少两个获取到的已有运动信息进行加权。
在该实施例中,可以通过对已有运动信息进行加权的方式实现对已有运动信息的变换,以得到新的候选运动信息。
相应地,当获取到已有运动信息之后,可以对至少两个获取到的已有运动信息进行加权,即确定该至少两个获取到的已有运动信息的加权平均值。
其中,对至少两个获取到的已有运动信息进行加权时的加权系数可以根据已有运动信息的来源块(该已有运动信息为该来源块的运动信息)的特点自适应调整。
步骤S220、将变换后的运动信息作为候选运动信息加入当前图像块的运动信息候选者列表。
本申请实施例中,对获取到的已有运动信息进行变换之后,可以将变换后的运动信息作为候选运动信息加入当前图像块的运动信息候选者列表。
举例来说,以合并模式的运动信息预测为例,在本申请实施例中,针对合并模式的运动信息预测构建的运动信息候选者列表除了可以包括空域候选者、时域候选者以及零运动信息之外,还可以包括对已有运动信息进行变换得到的候选运动信息,其示意图可以如图2C所示。
其中,对已有运动信息进行变换可以包括但不限于对已有运动信息进行伸缩或加权等。
需要说明的是,对于合并模式的运动信息预测,当存在组合候选者时,对已有运动信息进行变换得到的候选运动信息可以位于组合候选者之前,也可以位于组合候选者之后,但并不限于上述举例;其中,图2C以存在组合候选者,且对已有运动信息进行变换得到的候选运动信息位于组合候选者之前(即位于时域候选者之后,组合候选者之前)为例。
又举例来说,以AMPV模式的运动信息预测为例,在本申请实施例中,针对AMVP模式的运动信息预测构建的运动信息候选者列表除了可以包括空域候选者、时域候选者以及零运动信息之外,还可以包括对已有运动信息进行变换得到的候选运动信息,该对已有运动信息进行变换得到的候选运动信息在运动信息候选者列表中可以位于时域候选者之后,零运动信息之前,其示意图可以如图2D所示。
可见,在图2A所示方法流程中,通过对已有运动信息进行变换,并将变换后的运动信息作为候选运动信息加入当前图像块的运动信息候选者列表,增加候选者样本的丰富性,并提高了运动信息候选者选择的灵活性。
本申请实施例中,对于合并模式或AMVP模式等模式的运动信息预测,除了可以按照图2A所示的方法对已有运动信息进行变换,以增加候选样本的丰富性之外,还可以通过筛选、分类以及排序等方式中的一种或多种方式基于已编码/解码块的运动信息构建已编码/解码块运动信息列表,并从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,在增加候选样本丰富性的基础上,提高已编码/解码块运动信息列表构建的精准度。
请参见图3,为本申请实施例提供的一种运动信息候选者列表构建方法的流程示意图,如图3所示,该运动信息候选者选择列表构建方法可以包括以下步骤:
步骤S300、根据预设过滤条件对当前图像块之前的已编码/解码块进行筛选,并基于筛选后的已编码/解码块构建已编码/解码块运动信息列表。
本申请实施例中,为了增加候选者样本的丰富性,可以基于当前图像块之前的已编码/解码块的运动信息构建已编码/解码块运动信息列表,并从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
本申请实施例中,考虑到对于某些已编码/解码块的运动信息,其被选中为最终的预测运动信息的概率很小,因此,为了提高已编码/解码块运动信息列表构建的精准度,构建已编码/解码块运动信息列表时,可以对当前图像块之前的已编码/解码块进行筛选,并基于筛选,并基于筛选后的已编码/解码块构建已编码/解码块运动信息列表。
在本申请其中一个实施例中,上述根据预设过滤条件对当前图像块之前的已编码/解码块进行筛选,并基于筛选后的已编码/解码块构建已编码/解码块运动信息列表,可以包括:
对于当前图像块之前的任一已编码/解码块,当该已编码/解码块的残差系数中的非零系数个数大于等于预设数量阈值时,拒绝将该已编码/解码块的运动信息加入已编码/解码块运动信息列表;
当该已编码/解码块的残差系数中的非零系数个数小于所述预设数量阈值时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
在该实施例中,考虑到已编码/解码块的残差系数中的非零系数个数可以直观地体现运动信息预测是否准确,因此,在构建已编码/解码块运动信息列表时,可以基于已编码/解码块的残差系数中的非零系数个数对已编码/解码块进行筛选。
其中,已编码/解码块的残差系数中的非零系数个数越多,已编码/解码块的运动信息的预测准确性越差。
相应地,在该实施例中,对于当前图像块之前的任一已编码/解码块,可以确定该已编码/解码块的残差系数中的非零系数个数,并判断该已编码/解码块的残差系数中的非零系数个数是否大于预设数量阈值(该预设数量阈值可以根据实际场景设定)。
当该已编码/解码块的残差系数中的非零系数个数大于等于预设数量阈值时,拒绝将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
当该已编码/解码块的残差系数中的非零系数个数小于预设数量阈值时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
可见,在该实施例中,通过基于已编码/解码块的残差系数中非零系数个数对已编码/解码块进行过滤,剔除预测准确性过差的已编码/解码块的运动信息,提高了已编码/解码块运动信息列表构建的精准度。
在本申请另一个实施例中,上述据预设过滤条件对当前图像块之前的已编码/解码块进行筛选,并基于筛选后的已编码/解码块构建已编码/解码块运动信息列表,可以包括:
对于当前图像块之前的任一已编码/解码块,当该已编码/解码块的宽大于等于第一预设阈值,且该已编码/解码块的高大于等于第二预设阈值时,拒绝将该已编码/解码块的运动信息加入已编码/解码块运动信息列表;
当该已编码/解码块的宽小于所述第一预设阈值,和/或该已编码/解码块的高小于第二预设阈值时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
在该实施例中,考虑到宽高均过大的已编码/解码块的运动信息被选中为最终的预测信息的概率会很低,因此,在构建已编码/解码块运动信息列表时,可以基于已编码/解码块的宽和高对已编码/解码块进行筛选。
相应地,在该实施例中,对于当前图像块之前的任一已编码/解码块,可以判断该已编码/解码块的宽是否大于等于第一预设阈值(该第一预设阈值可以根据实际场景设定),以及该已编码/解码块的高是否大于等于第二预设阈值(该第二预设阈值可以根据实际场景设定)。
当该已编码/解码块的宽大于等于第一预设阈值,且该已编码/解码块的高大于等于第二预设阈值时,拒绝将该已编码/解码块的运动信息加入已编码 /解码块运动信息列表。
当该已编码/解码块的宽小于第一预设阈值,和/或该已编码/解码块的高小于第二预设阈值时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
可见,在该实施例中,通过基于已编码/解码块的宽和高对已编码/解码块进行过滤,剔除宽和高均过大的已编码/解码块的运动信息,提高了已编码 /解码块运动信息列表构建的精准度。
在本申请又一个实施例中,上述根据预设过滤条件对已编码/解码块进行筛选,并基于筛选后的已编码/解码块构建已编码/解码块运动信息列表,可以包括:
对于当前图像块之前的任一已编码/解码块,当该已编码/解码块的运动信息的量化步长大于等于预设步长阈值时,拒绝将该已编码/解码块的运动信息加入已编码/解码块运动信息列表;
当该已编码/解码块的运动信息的量化步长小于预设步长阈值时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
在该实施例中,考虑到已编码/解码块的运动信息的量化步长可以直观地体现已编码/解码块的运动信息的精度,因此,在构建已编码/解码块运动信息列表时,可以基于已编码/解码块的运动信息的量化步长对已编码/解码块进行筛选。
其中,已编码/解码块的运动信息的量化步长越大,已编码/解码块的运动信息的精度越低,相应地,其运动信息预测准确性越低。
举例来说,对于参数5、6、7和8,当量化步长为1时,其量化值分别为5、6、7和8;当量化步长为2时,其量化值分别3(对应参数5和6)和 4(对应参数7和8);当量化步长为4时,其量化值均为2,即量化步长越大,会有越多参数被量化成同一个量化值,其精度相应下降。因此,量化步长与精度负相关。
相应地,在该实施例中,对于当前图像块之前的任一已编码/解码块,可以确定该已编码/解码块的运动信息的量化步长,并判断该已编码/解码块的运动信息的量化步长是否大于等于预设步长阈值(该预设步长阈值可以根据实际场景设定)。
当该已编码/解码块的运动信息的量化步长大于等于预设步长阈值时,拒绝将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
当该已编码/解码块的运动信息的量化步长小于预设步长阈值时,将该已编码/解码块的运动信息加入已编码运动信息列表。
可见,在该实施例中,通过基于已编码/解码块的运动信息的量化步长对已编码/解码块进行过滤,剔除预测精度过低的已编码/解码块的运动信息,提高了已编码/解码块运动信息列表构建的精准度。
步骤S330、从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,该候选运动信息至少包括运动矢量。
本申请实施例中,基于筛选后的已编码/解码块构建已编码/解码块运动信息列表之后,可以从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
在本申请其中一个实施例中,上述从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,可以包括:
按照各类别对应的已编码/解码块运动信息列表的优先级从高到低的顺序,依次从各已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表;其中,不同的类别对应不同的优先级。
相应地,在该实施例中,不同类别的筛选后的已编码/解码块作为候选运动信息的优先级不同。其中,筛选后的已编码/解码块的运动信息的精度越高,筛选后的已编码/解码块作为候选运动信息的优先级越高。
当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以按照各类别对应的已编码/解码块运动信息列表的优先级从高到低的顺序,依次从各已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,以保证精度高的已编码/解码块的运动信息在运动信息候选者列表中的排序比精度低的已编码/ 解码块的运动信息在运动信息候选者列表中的排序靠前。
需要说明是,在本申请实施例中,候选运动信息并不限于包括运动矢量,也可以是运动矢量之外的其他编码信息,相应地,对运动信息的筛选、分类和/或排序也可以包括对运动矢量之外的其他编码信息的筛选、分类和/或排序,本申请实施例对此不做赘述。
在本申请另一个实施例中,上述从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,可以包括:
确定与当前图像块匹配的已编码/解码块运动信息列表;
从与当前图像块匹配的已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
在一个示例中,上述确定与当前图像块匹配的已编码/解码块运动信息列表,可以包括:
根据当前图像块的形状确定当前图像块的类别;
根据当前图像块的类别确定与当前图像块的类别匹配的已编码/解码块运动信息列表。
在该示例中,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以先根据当前图像块的形状确定当前图像块的类别,进而,可以根据当前图像块的类别确定与当前图像块的类别匹配的已编码/解码块运动信息列表,并从该已编码/解码块运动信息列表中选择候选运动信息加入运动细信息候选者列表。
举例来说,假设对筛选后的已编码/解码块进行分类时是基于已编码/解码块的形状将已编码/解码块划分为三个类别(分别为第一类别、第二类别和第三类别,具体实现可以参见步骤S310中的相关描述),则需要从已编码/ 解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,若当前图像块的宽高比大于1,则从第一类别的已编码/解码块对应的已编码/解码块运动信息列表选择候选运动信息加入当前图像块的运动信息候选者列表;若当前图像块的宽高比小于1,则从第二类别的已编码/解码块对应的已编码/解码块运动信息列表选择候选运动信息加入当前图像块的运动信息候选者列表;若当前图像块的宽高比等于1,则从第三类别的已编码/解码块对应的已编码/解码块运动信息列表选择候选运动信息加入当前图像块的运动信息候选者列表。
可见,在图3所示方法流程中,通过在构建已编码/解码块运动信息列表时,对已编码/解码块进行筛选,剔除被选中为最终的预测运动信息的概率过低的已编码/解码块的运动信息,提高了已编码/解码块运动信息列表构建的精准度。
本申请实施例中,在对已编码/解码块进行筛选的基础上,还可以对已编码/解码块进行分类,并根据已编码/解码块的类别构建不同的已编码/解码块运动信息列表,和/或,对所构建的已编码/解码块运动信息列表中的已编码/ 解码块的运动信息进行重排序,进一步提高了已编码/解码块运动信息列表构建的精准度,并可以提高视频编码的性能。
作为又一种可选示例,在本申请实施例中,为了进一步提高运动信息候选者列表构建的精确度,在上述步骤S300对已编码/解码块进行筛选的基础上,还可以对筛选后的已编码/解码块进行分类,并将不同类别的筛选后的已编码/解码块加入到不同的已编码/解码块运动信息列表。
相应地,在本申请其中一个实施例中,在上步骤S300之后,还包括步骤S310:
对筛选后的已编码/解码块进行分类,并根据筛选后的已编码/解码块的类别将筛选后的已编码/解码块加入到对应的已编码/解码块运动信息列表。
在该实施例中,按照上述实施例中描述的方式对已编码/解码块进行筛选之后,还可以根据已编码/解码块的特性,如形状、尺寸或预测模式等,对筛选后的已编码/解码块进行分类,并根据筛选后的已编码/解码块的类别将筛选后的已编码/解码块加入到对应的已编码/解码块运动信息列表。
其中,不同的类别对应不同的已编码/解码块运动信息列表。
作为该实施例的一种实施方式,上述对筛选后的已编码/解码块进行分类,可以包括:
根据筛选后的已编码/解码块的形状对筛选后的已编码/解码块进行分类。
在一个示例中,根据筛选后的已编码/解码块的形状对筛选后的已编码/ 解码块进行分类,可以包括:
当筛选后的已编码/解码块的宽高比大于1时,将筛选后的已编码/解码块划分为第一类别;和/或,
当筛选后的已编码/解码块的宽高比小于1时,将筛选后的已编码/解码块划分为第二类别。
在该示例中,已编码/解码块的形状可以通过已编码/解码块的宽高比表征。
例如,可以分别通过当前图像块的宽高比与1的大小关系来表征当前图像块的不同形状。
其中,若当前图像块的宽高比大于1,则当前图像块的形状为宽大于高的矩形;若当前图像块的宽高比等于1,则当前图像块的形状为正方形;若当前图像块的宽高比小于1,则当前图像块的形状为宽小于高的矩形。
相应地,在该示例中,可以根据筛选后的已编码/解码块的宽高比将筛选后的已编码/解码块划分为不同类别。
在该示例中,将宽高比大于1的筛选后的已编码/解码块所属的类别称为第一类别;将宽高比小于1的筛选后的已编码/解码块所属的类别称为第二类别。
进一步地,在该示例中,对于宽高比等于1的筛选后的已编码/解码块,可以将其划分为第一类别,或,可以将其划分为第二类别,或,可以将其划分为一个新的类别。
其中,当将宽高比等于1的筛选后的已编码/解码块被划分为一个新的类别时,可以将宽高比等于1的筛选后的已编码/解码块所属的类别称为第三类别。
作为该实施例另一种实施方式,上述对筛选后的已编码/解码块进行分类,可以包括:
当筛选后的已编码/解码块的宽与高的积大于预设阈值时,将筛选后的已编码/解码块划分为第一类别;
当筛选后的已编码/解码块的宽与高的积小于等于预设阈值时,将筛选后的已编码/解码块划分为第二类别。
在该实施方式中,可以根据筛选后的已编码/解码块的尺寸(即宽与高的积)将筛选后的已编码/解码块划分为不同类别。
在一个示例中,可以将宽与高的积大于预设阈值(该预设阈值可以根据实际场景设定)的筛选后的已编码/解码块所属的类别称为第一类别;将宽与高的积小于等于预设阈值的筛选后的已编码/解码块所属的类别称为第二类别。
需要说明的是,在本申请实施例中,当根据筛选后的已编码/解码块的宽与高的积对筛选后的已编码/解码块进行分类时,也可以通过两个或两个以上的预设阈值将宽与高的积划分为三个或三个以上的区间,并分别对应一个区间划分一个类别。
举例来说,假设预设阈值包括Ta和Tb(Tb>Ta),则可以将宽与高的积小于等于Ta的已编码/解码块划分为第一类别,将宽与高的积大于Ta,且小于等于Tb的已编码/解码块划分为第二类别,将宽与高的积大于Tb的已编码/解码块划分为第三类别。
此外,在本申请实施例中,若对已编码/解码块进行筛选时是基于已编码 /解码块的宽和高对已编码/解码块进行筛选(即上述实施例中描述的将宽大于等于第一预设阈值,且高大于等于第二预设阈值的),则根据已编码/解码块的尺寸对筛选后的已编码/解码块进行分类时,分类使用的阈值需要小于第一预设阈值与第二预设阈值的积。
作为该实施例又一种实施方式,上述对筛选后的已编码/解码块进行分类,可以包括:
根据筛选后的已编码/解码块的预测模式对筛选后的已编码/解码块进行分类。
在一个示例中,上述根据筛选后的已编码/解码块的预测模式对筛选后的已编码/解码块进行分类,包括:
当筛选后的已编码/解码块的预测模式为合并模式时,将筛选后的已编码 /解码块划分为第一类别;
当筛选后的已编码/解码块的预测模式为AMVP模式时,将筛选后的已编码/解码块划分为第二类别。
在该示例中,可以将预测模式为合并模式的筛选后的已编码/解码块所属的类别称为第一类别;将预设侧模式为AMVP模式的筛选后的已编码/解码块所属的类别称为第二类别。
需要说明的是,在本申请实施例中,根据筛选后的已编码/解码块的预测模式对筛选后的已编码/解码块进行分类时,并不限于划分上述两个类别,还可以将其他预测模式的筛选后的已编码/解码块划分为其他类别(如第三类别、第四类别等),其具体实现在此不做赘述。
进一步地,在本申请实施例中,考虑到运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时,可以减少进行索引值编码时所需比特位,提高视频编码的性能;此外,在进行运动信息预测时,运动信息候选者列表中最终选中的预测运动信息在运动信息候选者中排序靠前时可以减少进行预测运动信息选择的消耗,即在同样编码索引的消耗下,将相关度高的排在前面有利于提高视频编码的性能,因此,在构建已编码/解码块运动信息列表时,可以对已编码/解码块运动信息列表中的已编码/解码块运动信息进行重排序,将被选中为最终的预测信息的概率更高的已编码/解码块的运动信息排在已编码/解码块运动信息列表的后面(从已编码/解码块运动信息列表中选择候选运动信息时,按照从后往前的顺序从已编码/解码块运动信息列表中选择已编码/解码块的运动信息),以便被选中为最终的预测信息的候选运动信息能够尽量在运动信息候选者中排序靠前。
作为又一种可选示例,在本申请实施例中,在基于筛选后的已编码/解码块构建已编码/解码块运动信息列表(包括对已编码/解码块进行筛选后直接构建已编码/解码块运动信息列表,以及对已编码/解码块进行筛选,并对筛选后的已编码/解码块进行分类后,构建对应不同类别的多个已编码/解码块运动信息列表)之后,可以对已编码/解码块运动信息列表中的筛选后的已编码/解码块的运动信息进行重排序。
其中,当构建了对应不同类别的多个已编码/解码块运动信息列表时,可以分别对各已编码/解码块运动信息列表中的筛选后的已编码/解码块的运动信息进行重排序。
在本申请其中一个实施例中,在上步骤S300之后,还包括步骤S320:基于筛选后的已编码/解码块的残差系数对筛选后的已编码/解码块的运动信息进行重排序。
可选的,步骤S320也可以在步骤S310之后,则步骤S320也可替换为:基于分类后的已编码/解码块的残差系数对筛选后的已编码/解码块的运动信息进行重排序。
在该实施例中,考虑到已编码/解码块的残差系数中的非零个数越少,已编码/解码块的运动信息的预测准确性越高;已编码/解码块的运动信息的预测准确性越高,其被选中为最终的预测运动信息的概率越高,因此,可以根据筛选后的已编码/解码块的残差系数中非零个数对筛选后的已编码/解码块的运动信息进行重排序。
在一个示例中,上述基于筛选后的已编码/解码块的残差系数对筛选后的已编码/解码块的运动信息进行重排序,可以包括:
按照残差系数的非零系数个数从多到少的顺序对筛选后的已编码/解码块的运动信息进行重排序。
在该示例中,考虑到从已编码/解码块运动信息列表中选择候选运动信息时,通常是按照从后往前的顺序选择,因此,在进行重排序时可以将被选中为最终的预测运动信息的概率高的已编码/解码块的运动信息排在已编码/解码块运动信息列表的后列。
相应地,在该示例中,对于基于筛选后的已编码/解码块的运动信息构建的已编码/解码块运动信息列表,可以按照残差系数的非零个数从多到少的顺序对筛选后的已编码/解码块运动信息进行重排序,即残差系数的非零个数最多的筛选后的已编码/解码块的运动信息排在已编码/解码块运动信息列表的最前,残差系数的非零个数最少的筛选后的已编码/解码块的运动信息排在已编码/解码块运动信息列表的最后。
在本申请另一个实施例中,对已编码/解码块运动信息列表中的筛选后的已编码/解码块的运动信息进行重排序,可以包括:
基于当前图像块的形状以及筛选后的已编码/解码块与当前图像块的相对位置,对筛选后的已编码/解码块的运动信息进行重排序。
在该实施例中,考虑到对于不同形状的数据块,对该数据块进行运动信息预测时,该数据块的不同位置的周围块与该数据块的相关度不完全相同。
当对数据块进行运动信息预测时,相关度越高的候选运动信息被选中为最终的预测运动信息对编码效果越有利,因此,在基于筛选后的已编码/解码块的运动信息构建已编码/解码块运动信息列表之后,可以基于当前图像块的形状以及筛选后的已编码/解码块与当前图像块的相对位置,对筛选后的已编码/解码块的运动信息进行重排序。
在一个示例中,上述基于当前图像块的形状以及筛选后的已编码/解码块与当前图像块的相对位置,对筛选后的已编码/解码块的运动信息进行重排序,可以包括:
当当前图像块的宽高比大于1时,按照当前图像块左侧的筛选后的已编码/解码块在前,当前图像块上侧的筛选后的已编码/解码块在后的顺序,对筛选后的已编码/解码块的运动信息进行重排序。
在该示例中,考虑到当数据块的宽高比大于1时,数据块的上侧的周围块与数据块的相关度比数据块左侧的周围块与数据块的相关度高,而运动信息候选者列表中相关度高候选块的运动信息的排在前面一方面可以减少编码索引的开销,另一方面可以提高相关度高的候选块的运动信息被选为最终的预测运动信息的概率,进而,可以提高视频编码的性能。
相应地,在该示例中,当当前图像块的宽高比大于1时,可以按照当前图像块左侧的筛选后的已编码/解码块在前,当前图像块的上侧的筛选后的已编码/解码块在后的顺序,对筛选后的已编码/解码块的运动信息进行重排序,以便从已编码/解码块运动信息列表中选择候选运动信息时,可以先选中当前图像块的上侧的筛选后的已编码/解码块的运动信息,进而,可以使当前图像块的上侧的筛选后的已编码/解码块的运动信息在运动信息候选者列表中的排序比当前图像块的左侧的筛选后的已编码/解码块的运动信息靠前。
在另一示例中,上述基于当前图像块的形状以及筛选后的已编码/解码块与当前图像块的相对位置,对筛选后的已编码/解码块的运动信息进行重排序,可以包括:
当当前图像块的宽高比小于1时,按照当前图像块上侧的筛选后的已编码/解码块在前,当前图像块左侧的筛选后的已编码/解码块在后的顺序,对筛选后的已编码/解码块的运动信息进行重排序。
在该示例中,考虑到当数据块的宽高比小于1时,数据块的左侧的周围块与数据块的相关度比数据块上侧的周围块与数据块的相关度高。
因此,在该示例中,当当前图像块的宽高比小于1时,可以按照当前图像块上侧的筛选后的已编码/解码块在前,当前图像块的左侧的筛选后的已编码/解码块在后的顺序,对筛选后的已编码/解码块的运动信息进行重排序,以便从已编码/解码块运动信息列表中选择候选运动信息时,可以先选中当前图像块的左侧的筛选后的已编码/解码块的运动信息,进而,可以使当前图像块的左侧的筛选后的已编码/解码块的运动信息在运动信息候选者列表中的排序比当前图像块的上侧的筛选后的已编码/解码块的运动信息在运动信息候选者列表中的排序靠前。
需要说明的是,在该示例中,对于当前图像块的宽高比大于1的情况,可以按照上一示例中描述的重排序方式实现对已编码/解码块运动信息列表中的筛选后的已编码/解码块运动信息的重排序,其具体实现在此不再赘述。
此外,在该实施例中,对于当前图像块的宽高比等于1的情况,可以按照上述示例中描述的当前图像块的宽高比大于1的情况下的重排序方式实现对已编码/解码块运动信息列表中的筛选后的已编码/解码块运动信息的重排序,或者,可以按照上述示例中描述的当前图像块的宽高比小于1的情况下的重排序方式实现对已编码/解码块运动信息列表中的筛选后的已编码/解码块运动信息的重排序。
在该实施例中,当按照步骤S310中描述的方式对筛选后的已编码/解码块进行了分类,并根据筛选后的已编码/解码块的类别将筛选后的已编码/解码块加入到对应的已编码/解码块运动信息列表之后,可以分别确定各已编码 /解码块运动信息列表的优先级高低。
举例来说,以步骤S310中描述的根据筛选后的已编码/解码块的预测模式对筛选后的已编码/解码块进行分类为例。由于AMVP模式的已编码/解码块的运动信息的精度高于合并模式的已编码/解码块的运动信息的精度,因此,可以确定预测模式为AMVP模式的筛选后的已编码/解码块的运动信息所在的已编码/解码块运动信息列表的优先级高于预测模式为合并模式的筛选后的已编码/解码块的运动信息所在的已编码/解码块运动信息列表的优先级。
在该实施例中,当按照步骤S310中描述的方式对筛选后的已编码/解码块进行了分类,并根据筛选后的已编码/解码块的类别将筛选后的已编码/解码块加入到对应的已编码/解码块运动信息列表之后,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以先确定与当前图像块匹配的已编码/解码块运动信息列表,然后从与当前图像块匹配的已编码/解码块运动信息列表中选择候选运动信息加入所述运动信息候选者列表。
本申请实施例中,对于合并模式或AMVP模式等模式的运动信息预测,在基于已编码/解码块的运动信息构建已编码/解码块运动信息列表时,可以对已编码/解码块进行分类,并分别构建对应不同类别的已编码/解码块的已编码/解码块运动信息列表,以提高已编码/解码块运动信息列表构建的精准度。
请参见图4,为本申请实施例提供的一种运动信息候选者列表构建方法的流程示意图,如图4所示,该运动信息候选者选择列表构建方法可以包括以下步骤:
步骤S400、对当前图像块之前的已编码/解码块进行分类。
步骤S410、根据已编码/解码块的类别将已编码/解码块加入到对应的已编码/解码块运动信息列表;其中,不同的类别对应不同的已编码/解码块运动信息列表。
步骤S420、从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,该候选运动信息至少包括运动矢量。
本申请实施例中,对当前图像块之前的已编码/解码块进行分类,并构建对应不同类别的已编码/解码块的已编码/解码块运动信息列表的具体实现可以参见图3所示方法流程中的相关描述,区别在于图3所示方法流程中进行分类的已编码/解码块由筛选后的已编码/解码块替换为未进行筛选的已编码/ 解码块,对进行分类的已编码/解码块进行分类的方法与步骤310的相同,本申请实施例在此不做赘述。
需要说明的是,在本申请实施例中,对已编码/解码块进行分类之后,在构建已编码/解码块的已编码/解码块运动信息列表时,还可以分别对各类别的已编码/解码块进行筛选,并基于筛选后的已编码/解码块构建已编码/解码块运动信息列表,其具体实现可以参见图3所示方法流程中的相关描述,本申请实施例在此不做赘述。
此外,对于所构建多个不同的已编码/解码块运动信息列表(包括进行了已编码/解码块的筛选和未进行已编码/解码块的筛选两种情况),还可以对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序,其具体实现可以参见图3所示方法流程中的相关描述,本申请实施例在此不做赘述。
需要说明是,在本申请实施例中,候选运动信息并不限于包括运动矢量,也可以是运动矢量之外的其他编码信息,相应地,对运动信息的分类也可以包括对运动矢量之外的其他编码信息的分类,本申请实施例对此不做赘述。
本申请实施例中,对于合并模式或AMVP模式等模式的运动信息预测,在基于已编码/解码块的运动信息构建已编码/解码块运动信息列表时,可以对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序,以尽量保证被选中为最终预测运动信息的已编码/解码块的运动信息在运动信息候选者列表中排序靠前,以提高编码性能。
请参见图5,为本申请实施例提供的一种运动信息候选者列表构建方法的流程示意图,如图5所示,该运动信息候选者选择列表构建方法可以包括以下步骤:
步骤S500、根据当前图像块之前的已编码/解码块的运动信息,构建已编码运动信息列表。
本申请实施例中,构建已编码运动信息列表时,可以直接将所有的已编码/解码块的运动信息均加入同一个已编码/解码块运动信息列表,或者,也可以先对已编码/解码块进行筛选和/或分类后,再基于筛选和/或分类后的已编码/解码块构建已编码/解码块运动信息列表,其具体实现在此不做赘述。
步骤S510、对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序。
步骤S520、从重排序后的已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,该候选运动信息至少包括运动矢量。
本申请实施例中,对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序的具体实现可以参见图3所示方法流程中的相关描述,本申请实施例在此不做赘述。
需要说明的是,在本申请实施例中,对于合并模式或AMVP模式,在构建最终的运动信息候选者列表时,对已有运动信息进行变换得到的候选运动信息,或,从已编码/解码块运动信息列表中选择的候选运动信息可以排在空域候选者(若存在)和时域候选者(若存在)的后面,即当空域候选者和时域候选者的数量不满足要求时,可以在最终的运动信息候选者列表中加入对已有运动信息进行变换得到的候选运动信息,或,从已编码/解码块运动信息列表中选择的候选运动信息。
进一步地,若在最终的运动信息候选者列表中加入对已有运动信息进行变换得到的候选运动信息,或,从已编码/解码块运动信息列表中选择的候选运动信息之后,候选运动信息的数量仍不满足要求,还可以进一步在最终的运动信息候选者列表中加入组合候选者(对于合并模式)以及零运动信息。
需要说明是,在本申请实施例中,候选运动信息并不限于包括运动矢量,也可以是运动矢量之外的其他编码信息,相应地,对运动信息的排序也可以包括对运动矢量之外的其他编码信息的分类,本申请实施例对此不做赘述
本申请实施例中,对于Affine模式的运动信息预测,也可以基于已编码 /解码块的运信息构建已编码/解码块运动信息列表,并从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,以增加候选者样本的丰富性。
其中,Affine模式可以包括Affine Merge模式或Affine AMVP模式。
为了使本领域技术人员更好地理解Affine模式的运动信息预测,下面先对Affine模式的参数模型进行简单说明。
参见公式(1),一般Affine模式的参数模型,由a,b,c,d,e,f六个参数构成,
Figure BDA0001807119520000361
其中(x,y)是当前帧上的点;(x’,y’)是对应的参考帧上的点;a, b,c,d,e,f是参数模型的6个参数。
为了导出参数模型的6个参数,需要3组已知的(x,y)和(x’,y’) 对,即三个运动矢量以及运动矢量的起始点位置。假设这三对运动矢量为v0, v1和v2,三个运动矢量的起始点分别为(0,0),(S,0)和(0,S),即分别为左上角、右上角和左下角的坐标;其中,S为当前PU的边长。
联立三组方程组,从而计算得到a,b,c,d,e,f这6个参数的值:
Figure BDA0001807119520000362
将其代入公式(1),可以得到如公式(2)所示的6参数模型下的运动矢量导出方程:
Figure BDA0001807119520000363
为了简化参数模型,帧间预测块被分为等大小的若干小区域,每个小区域(即子块)内运动速度是一致的,而每个小区域的运动补偿模型仍是平面平动模型(图像块在图像平面内只有平移,不改变形状、大小,因此对子块运动的描述仍可参数化为一个运动矢量)。
由于当物体的旋转运动的旋转轴垂直于图像平面时,仿射物体的任意两点的尺度缩放比例是一致的(任意两条直线构成的夹角大小保持不变)。在此限制下a,b,c,d,e,f这6个参数的仿射运动退化为4参数的仿射运动模型,即a,b,c,d这4个参数之间存在一定的关系。
其中,仅需2组已知的(x,y)和(x’,y’)对,即可推导出这4个参数。
假设这两个运动矢量为v0和v1,两个运动矢量的起始点分别为(0,0) 和(S,0),即分别是左上角和右上角的坐标。联立两组方程组,从而计算得到a,b,c,d四个参数的值:
Figure BDA0001807119520000371
将这4个参数的值代入公式(1),即可得到如公式(3)所示的4参数模型下的运动矢量导出方程
Figure BDA0001807119520000372
请参见图6A,为本申请实施例提供的一种运动信息候选者列表构建方法的流程示意图,如图6A所示,该运动信息候选者选择列表构建方法可以包括以下步骤:
步骤S600、构建已编码/解码块运动信息列表,该已编码/解码块运动信息列表中包括当前图像块之前的已编码/解码块的运动信息。
本申请实施例中,为了增加候选者样本的丰富性,可以基于已编码/解码块的运动信息构建已编码/解码块运动信息列表,并从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
步骤S610、当当前图像块的预测模式为Affine模式时,从已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表。
本申请实施例中,对于Affine模式的运动信息预测,也可以从已编码/ 解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表,以增加Affine模式的运动信息预测的候选者样本的丰富性。
其中,对于Affine模式的运动信息预测,运动信息可以包括运动矢量,参考帧索引,运动方向以及参数模型。
其中,当已编码/解码块的参数模型为4参数模型时,可以根据已编码/ 解码块的控制点(包括左上角控制点和右上角控制点)的运动信息确定当前图像块的控制点的运动信息,并根据当前图像块的控制点的运动信息(假设为V0(Vx0、Vy0、)和V1(Vx1、Vy1)),利用公式(3)得到当前图像块各子块的运动信息;其中,4参数模型下的运动信息可以表征MV在平面内旋转的角度和速度。
当已编码/解码块的参数模型为6参数模型时,可以根据已编码/解码块的控制点(包括左上角控制点、右上角控制点和左下角控制点)的运动信息确定当前图像块的控制点的运动信息,并根据当前图像块的控制点的运动信息(假设为V0(Vx0、Vy0、)、V1(Vx1、Vy1)以及V2(Vx2、Vy2)),利用公式(2)得到当前图像块各子块的运动信息;其中,6参数模型下的运动信息可以表征MV在立体空间旋转的角度、速度和方向。
举例来说,在本申请实施例中,针对Affine模式的运动信息预测构建的运动信息候选者列表除了可以包括空域候选者和零运动信息之外,还可以包括从已编码/解码块运动信息列表中选择的候选运动信息,其示意图可以如图 6B所示。
本申请其中一个实施例中,上述从已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表,包括:
从预测模式为Affine Merge模式的已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表;或,
从预测模式为Affine AMVP模式的已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表。
在该实施例中,考虑到Affine模式的运动信息预测与合并模式或AMVP 模式的运动信息预测使用的运动信息不同,因此,对于Affine模式的运动信息预测,当需要从已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以从预测模式为Affine模式的已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表。
相应地,在该实施例中,当当前图像块的预测模式为Affine模式时,可以从预测模式为Affine Merge模式的已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表;或者,
可以从预测模式为Affine AMVP模式的已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表。
需要说明的是,在本申请实施例中,对于Affine模式的运动信息预测,当从已编码/解码块的运动信息中选择候选运动信息时,并不限于从预测模式为Affine模式的已编码/解码块的运动信息中选择,也可以选择非Affine模式的已编码/解码块的运动信息。
其中,当选择的候选运动信息为非Affine模式的已编码/解码块的运动信息时,可以使用该已编码/解码块的左上角和右上角的运动信息(对于4参数模型)或左上角、右上角和左下角的运动信息(对于6参数模型),其具体实现在此不做赘述。
进一步地,在本申请实施例中,为了提高已编码/解码块运动信息列表构建的精准度,当基于预测模式为Affine模式的已编码/解码块构建已编码/解码块运动信息列表时,可以对预测模式为Affine模式的已编码/解码块进行分类,并根据预测模式为Affine模式的已编码/解码块的类别将预测模式为 Affine模式的已编码/解码块加入到对应的已编码/解码块运动信息列表。
其中,不同的类别对应不同的已编码/解码块运动信息列表。
在一个示例中,对预测模式为Affine模式的已编码/解码块进行分类时,可以根据预测模式为Affine模式的已编码/解码块的参数模型对预测模式为 Affine模式的已编码/解码块进行分类。
例如,当预测模式为Affine模式的已编码/解码块的参数模型为2参数模型时,可以将预测模式为Affine模式的已编码/解码块划分为第一类别;
当预测模式为Affine模式的已编码/解码块的参数模型为4参数模型时,可以将预测模式为Affine模式的已编码/解码块划分为第二类别;
当预测模式为Affine模式的已编码/解码块的参数模型为6参数模型时,可以将预测模式为Affine模式的已编码/解码块划分为第三类别。
在本申请其中一个实施例中,上述从已编码/解码块的运动信息中选择候选运动信息加入当前图像块的运动信息候选者列表,可以包括:
按照各类别对应的已编码/解码块运动信息列表的优先级从高到低的顺序,依次从各已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表;其中,不同的类别对应不同的优先级。
在该实施例中,若对预测模式为Affine模式的已编码/解码块进行分类,并分别构建了对应不同类别的多个已编码/解码块运动信息列表,则当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以按照各类别对应的已编码/解码块运动信息列表的优先级从高到低的顺序,依次从各已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,以保证精度高的已编码/解码块的运动信息在运动信息候选者列表中的排序比精度低的已编码/解码块的运动信息在运动信息候选者列表中的排序靠前。
举例来说,当按照Affine模式的已编码/解码块的参数模型对Affine模式的已编码/解码块进行了分类(参见上述实施例中的相关描述)时,可以按照List2(对应6参数模型)、List1(对应4参数模型)和List0(对应2参数模型)从先到后的顺序,从各已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
在本申请另一个实施例中,上述从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,可以包括:
确定与当前图像块匹配的已编码/解码块运动信息列表;
从与当前图像块匹配的已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
在该实施例中,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以先确定与当前图像块匹配的已编码/解码块运动信息列表,并从与当前图像块匹配的已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
举例来说,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以分别确定当前图像块的空域候选块中2参数模型、4参数模型和6参数模型的空域候选块的数量,并从空域候选块的数量最多的参数模型对应的已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
例如,假设当前图像块的空域候选块中4参数模型的空域候选块的数量最多,则可以从List1(对应4参数模型)中选择候选运动信息加入当前图像块的运动信息候选者列表。
可见,在图6A所示方法流程中,对于Affine模式的运动信息预测,也可以通过构建已编码/解码块运动信息列表,并从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表,增加了候选者样本的丰富性。
需要说明的是,在本申请实施例中,构建已编码/解码块运动信息列表时,可以按照先进先出(First-In-First-Out,简称FIFO)的方式对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行更新,即当已编码/解码块运动信息列表中已编码/解码块的运动信息数量达到预设最大数量,且有新的已编码/解码块的运动信息需要加入已编码/解码块运动信息列表时,可以将已编码/解码块运动信息列表中最先加入的已编码/解码块运动信息删除,并将该新的已编码/解码块的运动信息加入。
但应该认识到,上述FIFO方式仅仅是对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行更新的一种具体实现方式,而并不是对本申请保护范围的限定,即本申请实施例中也可以通过其他方式实现对已编码/ 解码块运动信息列表中的已编码/解码块的运动信息的更新,其具体实现在此不做赘述。
为了使本领域技术人员更好地理解本申请实施例提供的技术方案,下面结合具体实例对本申请实施例提供的技术方案进行说明。
实施例一
在该实施例中,为了增加候选者样本的丰富性,并提高运动信息候选者选择的灵活性,在构建运动信息候选者列表时,可以通过对已有运动信息在指定方向上进行伸缩的方式增加新的候选运动信息。
其中,已有运动信息可以包括空域候选者的运动信息,时域候选者的运动信息,已编码/解码块的运动信息。
以合并模式的运动信息预测为例,在构建运动信息候选者列表时,可以在运动信息候选者列表中已有候选运动信息的基础上,对运动信息候选者列表中已有候选运动信息在指定方向上进行伸缩,以得到新的候选运动信息。
即对于合并模式的运动信息预测,构建的运动信息候选者列表中除了可以包括空域候选者、时域候选者、组合候选者以及零运动信息之外,还可以包括对已有运动信息在指定方向上伸缩后得到的候选运动信息。
举例来说,请参见图7A,对于运动矢量(mx,my),可以沿着运动矢量的方向度该运动矢量进行伸缩,伸缩后的运动矢量为(mx+delta_mv_x,my +delta_mv_y)。
其中,delta_mv_x为x方向上的伸缩幅度,delta_mv_y为y方向上的伸缩幅度。
需要说明的是,在本申请实施例中,对已有运动信息进行伸缩并不限于沿着运动矢量的方向进行伸缩,也可以是其他方向,本申请实施例对此不做赘述。
实施例二
在该实施例中,对已有运动信息进行伸缩时,可以进行帧级、slice级或行级的伸缩。
以帧级为例,可以以帧为单位,确定某一帧中已有运动信息是否需要进行伸缩以及进行伸缩时的幅度。
其中,当伸缩幅度为0时,可以确定为不需要进行伸缩。
举例来说,请参加图7B,对于任一已有运动信息,可以根据该已有运动信息所属帧的上一帧的帧复杂度以及运动剧烈程度来确定对该已有运动信息进行伸缩的幅度。
其中,可以通过零运动矢量的占比来表征帧复杂度以及运动剧烈程度;零运动矢量占比(帧中零运动矢量的数量与运动矢量的总数的比值)越高,帧复杂度越低,运动剧烈程度越低;零运动矢量占比越高,帧复杂度越高,运动剧烈程度越高。
帧复杂度越高,运动剧烈程度越高,伸缩的幅度越大;帧复杂度越低,运动剧烈程度越低,伸缩的幅度越小。
如图7B所示,假设帧1的帧复杂度高,且运动剧烈,所确定的伸缩的幅度为delta_mv0;帧2的帧复杂度极高,且运动极剧烈,所确定的伸缩的幅度为delta_mv1;帧3的帧复杂度低,且运动较弱,所确定的伸缩的幅度为 delta_mv2,则delta_mv2<delta_mv0<deltamv1。
实施例三
在该实施例中,对已有运动信息进行伸缩时,可以进行块级的伸缩。
举例来说,请参见图7C,对于任一块(可以为空域候选块、时域候选块或已编码/解码块),可以根据该块相邻块的运动信息的相似度确定是否需要对该进行伸缩以及进行伸缩的幅度。
其中,当伸缩幅度为0时,可以确定为不需要进行伸缩。
其中,相邻块的运动信息的相似度越高,所确定的伸缩的幅度越小;相邻块的运动信息的相似度越低,所确定的伸缩的幅度越大。
如图7C所示,假设数据块1的不同位置的相邻块的相似度极低,所确定的伸缩的幅度为delta_mv0;数据块2的不同位置的相邻块的相似度低,所确定的伸缩的幅度为delta_mv1;数据块3的不同位置的相邻块的相似度高,所确定的伸缩的幅度为delta_mv2,则delta_mv2<delta_mv1<deltamv0。
实施例四
在该实施例中,为了增加候选者样本的丰富性,并提高运动信息候选者选择的灵活性,在构建运动信息候选者列表时,可以通过对已有运动信息进行加权的方式增加新的候选运动信息。
其中,已有运动信息可以包括空域候选者的运动信息,时域候选者的运动信息,已编码/解码块的运动信息。
其中,对已有运动信息进行加权时各已有运动信息的加权比例可以根据已有运动信息的来源块(可以包括空域候选块、时域候选块或已编码/解码块) 的特点自适应调整。
举例来说,假设已有运动信息的来源块A和来源块B均参考同一帧,且来源块A的运动矢量(amx,amy),来源块B的运动矢量为(bmx,bmy)。来源块A的加权系数为W0,来源块B的加权系数为W1,则加权后的运动矢量为(Mv_x,Mv_y)。其中:
Mv_x=W0*amv_x+W1*bmv_x;
Mv_y=W0*amv_x+W1*bmv_x。
实施例五
在该实施例中,为了增加候选者样本的丰富性,可以基于已编码/解码块的运动信息构建已编码/解码块运动信息列表,并从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
为了提高构建已编码/解码块运动信息列表的精准度,在构建已编码/解码块运动信息列表时,可以先对已编码/解码块进行筛选,并基于筛选后的已编码/解码块的运动信息构建已编码/解码块运动信息列表。
在该实施例中,考虑到已编码/解码块的残差系数中非零系数个数直观体现预测的准确性,因此,可以基于已编码/解码块的残差系数中非零系数个数对已编码/解码块进行筛选,以剔除预测准确性过低的已编码/解码块。
请参见图7D,对于任一已编码/解码块,在将该已编码/解码块加入已编码/解码块运动信息列表时,可以判断该已编码/解码块的残差系数中的非零系数个数是否大于等于预设数量阈值;若是,则拒绝将该已编码/解码块的运动信息加入已编码/解码块运动信息列表;否则,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
实施例六
在该实施例中,考虑到已编码/解码块的宽和高均过大时,该已编码/解码块的运动信息被选中为最终的预测运动信息的概率过低,因此,可以基于已编码/解码块的宽高对已编码/解码块进行筛选,以剔除被选中为最终的预测运动信息的概率过低的已编码/解码块。
请参见图7E,对于任一已编码/解码块,在将该已编码/解码块加入已编码/解码块运动信息列表时,可以判断该已编码/解码块的宽是否大于等于第一预设阈值(以64为例),以及高是否大于等于第二预设阈值(以64为例);若该已编码/解码块的宽大于等于64,且高大于等于64,则拒绝将该已编码/ 解码块的运动信息加入已编码/解码块运动信息列表;否(该已编码/解码块的宽小于64和/或高小于64)则,将该已编码/解码块的运动信息加入已编码 /解码块运动信息列表。
实施例七
在该实施例中,考虑到已编码/解码块的量化步长可以直观体现已编码/ 解码块的运动信息的精度,因此,可以基于已编码/解码块的运动信息的量化步长对已编码/解码块进行筛选,以剔除精度过低的已编码/解码块的运动信息。
请参见图7F,对于任一已编码/解码块,在将该已编码/解码块加入已编码/解码块运动信息列表时,可以判断该已编码/解码块的运动信息的量化步长是否大于等于预设步长阈值(以2为例);若是,则拒绝将该已编码/解码块的运动信息加入已编码/解码块运动信息列表;否则,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表。
实施例八
在该实施例中,为了提高已编码/解码块运动信息列表构建的精准度,在构建已编码/解码块运动信息列表时,可以先对已编码/解码块进行分类,并将不同类别的已编码/解码块加入不同的已编码/解码块运动信息列表。
在该实施例中,以根据已编码/解码块的形状对已编码/解码块进行分类为例。
请参见图7G,对于任一已编码/解码块,在将该已编码/解码块加入已编码/解码块运动信息列表时,可以确定该已编码/解码块的形状(以宽高比为例),当该已编码/解码块的宽高比大于等于1时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表1(可以称为List0);当该已编码/ 解码块的宽高比小于1时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表2(可以称为list1)。
在该实施例中,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以根据当前图像块的形状确定匹配的已编码运动信息列表,并从匹配的已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
请参见图7H,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,以确定当前图像块的宽高比,若当前图像块的宽高比大于等于1,则从List0中选择候选运动信息加入当前图像块的运动信息候选者列表;若当前图像块的宽高比小于1,则从List1中选择候选运动信息加入当前图像块的运动信息候选者列表。
实施例九
在该实施例中,可以根据已编码/解码块的尺寸(以宽与高的积为例)对已编码/解码块进行分类。
请参见图7I,对于任一已编码/解码块,在将该已编码/解码块加入已编码/解码块运动信息列表时,可以确定该已编码/解码块的宽与高的积,并判断该已编码/解码块的宽与高的积是否大于等于预设阈值(以2048为例),若是,则将该已编码/解码块的运动信息加入已编码/解码块运动信息列表1 (可以称为List0);否则,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表2(可以称为list1)。
在该实施例中,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以按照优先级从高到低的顺序从各已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
在该实施例中,List1的优先级高于List0的优先级,因此,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以按照先List1,后List0的顺序,从List1和List0中选择候选运动信息加入当前图像块的运动信息候选者列表。
实施例十
在该实施例中,可以根据已编码/解码块的预测模式对已编码/解码块进行分类。
请参见图7J,对于任一已编码/解码块,在将该已编码/解码块加入已编码/解码块运动信息列表时,可以确定该已编码/解码块的预测模式,当该已编码/解码块的预测模式为合并模式时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表1(可以称为List0);当该已编码/解码块的预测模式为AMVP模式时,将该已编码/解码块的运动信息加入已编码/解码块运动信息列表2(可以称为list1)。
在该实施例中,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以按照优先级从高到低的顺序从各已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
在该实施例中,List1的优先级高于List0的优先级,因此,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以按照先List1,后List0的顺序,从List1和List0中选择候选运动信息加入当前图像块的运动信息候选者列表。
实施例十一
在该实施例中,为了使被选中为最终的预测运动信息的候选运动信息在运动信息候选者列表中排序尽量靠前,以提高编码性能,在基于已编码/解码块的运动信息构建了已编码/解码块运动信息列表之后,可以对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序。
在该实施例中,可以基于已编码/解码块的残差系数对已编码/解码块运动信息列表中的已编码/解码块的运动信息进行重排序。
例如,对于已编码/解码块运动信息列表中的已编码/解码块的运动信息,可以按照残差系数的非零系数个数从多到少的顺序对已编码/解码块的运动信息进行重排序。
举例来说,请参见图7K,假设已编码/解码块3的运动信息(假设为HMVP (History-based Motion Vector Prediction,基于已有运动信息的运动信息预测)2)的残差系数的非零个数少于已编码/解码块4的运动信息(假设为 HMVP3)的残差系数的非零个数,因此,可以将HMVP2排在HMVP3的后面。
其中,当从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,按照从列表尾部到头部的顺序进行选择(即排序越靠后的越先被选择)。
实施例十二
在该实施例中,可以基于当前图像块的形状以及已编码/解码块与当前图像块的相对位置,对已编码/解码块的运动信息进行重排序。
举例来说,参见图7L,假设已编码/解码块A为当前图像块左侧的已编码/解码块;已编码/解码块B为当前图像块上侧的已编码/解码块,则:
1)、当当前图像块的宽高比大于等于1时,可以将已编码/解码块A的运动信息排在已编码/解码块B的运动信息的前面;
2)、当当前图像块的宽高比小于1时,可以将已编码/解码块A的运动信息排在已编码/解码块B的运动信息的后面。
实施例十三
在该实施例中,对于Affine模式(包括Affine Merge模式或Affine AMVP 模式)的运动信息预测,为了增加候选者样本的丰富性,也可以基于已编码/ 解码块的运动信息构建已编码/解码块运动信息列表,并从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表。
在该实施例中,可以将Affine模式的已编码/解码块的运动参数模型 (Motionmodel)信息存成一个候选者列表(即已编码/解码块运动信息列表),列表长度为L,可以按照FIFO方式或其他方式更新列表成员(运动模型信息成员(Motion model informationcandidate,简称MMIC)),其示意图可以如图7M。
当构建Affine模式块的运动信息候选者列表时,可以从已编码/解码块运动信息列表中选择候选运动信息(在该实施例中也可以称为候选运动参数模型信息)。
实施例十四
在该实施例中,对于Affine模式的运动信息预测,在构建已编码/解码块运动信息列表时,可以根据Affine模式的已编码/解码块的参数模型对Affine 模式的已编码/解码块进行分类,并将不同类别的Affine模式的已编码/解码块加入到不同的已编码/解码块运动信息列表。
举例来说,请参见图7N,对于任一Affine模式的已编码/解码块,当该 Affine模式的已编码/解码块的参数模型为2参数模型时,将该Affine模式的已编码/解码块的运动参数模型信息加入已编码/解码块运动信息列表1(可以称为List0);当该Affine模式的已编码/解码块的参数模型为4参数模型时,将该Affine模式的已编码/解码块的运动参数模型信息加入已编码/解码块运动信息列表2(可以称为List1);当该Affine模式的已编码/解码块的参数模型为6参数模型时,将该Affine模式的已编码/解码块的运动参数模型信息加入已编码/解码块运动信息列表3(可以称为List2)。
在该实施例中,当需要从已编码/解码块运动信息列表中选择候选运动信息加入当前图像块的运动信息候选者列表时,可以从与当前图像块匹配的已编码/解码块运动信息列表中选择,或者,可以按照各已编码/解码块运动信息列表的优先级从高到低的顺序,依次从各已编码/解码块运动信息列表中选择,其具体实现可以参见图6所示方法流程中的相关描述,本申请实施例在此不做赘述。
实施例十五
在该实施例中,考虑到已编码/解码块运动信息列表的长度有限(假设长度为L1),因此,通常已编码/解码块运动信息列表中仅包括当前图像块所属CTU左侧的CTU中的各已编码/解码块的运动信息,对于其他与当前图像块临近,但编码顺序比当前图像块要早得多的已编码/解码块(如当前图像块上侧的已编码/解码块)的运动信息已不在运动信息列表中。
针对这一问题,在该实施例中,除了按照上述实施例中描述的方式构建已编码/解码块运动信息列表之外,还可以存储当前图像块所属CTU上侧的若干行的CTU中各已编码/解码块的运动信息,在构建运动信息候选者列表时,还可以从当前图像块所属CTU上侧的若干行的CTU中各已编码/解码块的运动信息中选择候选运动信息。
举例来说,请参见图7O,可以分别存储当前图像块所属CTU的上一行 CTU中各已编码/解码块的运动信息,其中,对于任一CTU,所存储的该CTU 中各已编码/解码块的运动信息的数量不超过L2个(L1与L2可以相同,也可以不同)。其中,CTU内各已编码/解码块的运动信息可以按照其编码顺序进行存储。
在构建运动信息候选者列表时,还可以从当前图像块所属CTU的正上方的CTU中的各已编码/解码块运动信息中选择候选运动信息,进一步增加了候选者样本的丰富性。
以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
请参见图8,为本申请实施例提供的一种运动信息候选者列表构建装置的硬件结构示意图。该运动信息候选者列表构建装置可以包括处理器801、通信接口 802、存储器803和通信总线804。处理器801、通信接口802以及存储器803 通过通信总线804完成相互间的通信。其中,存储器803上存放有计算机程序;处理器801可以通过执行存储器803上所存放的程序,实现图2A、图3、图4、图5或图6A所对应的运动信息候选者列表构建方法。
本文中提到的存储器803可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,存储器802可以是:RAM(Radom AccessMemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
需要说明的是,在本申请实施例中,上述运动信息候选者列表构建装置可以为编码端设备,也可以为解码端设备。
本申请实施例还提供了一种存储有计算机程序的机器可读存储介质,例如图8中的存储器803,所述计算机程序可由图8所示运动信息候选者列表构建装置中的处理器801执行图2A、图3、图4、图5或图6A所对应的运动信息候选者列表构建方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (5)

1.一种运动信息候选者列表构建方法,应用于编码端设备或解码端设备,其特征在于,包括:
获取当前图像块的已有运动信息,所述已有运动信息至少包括运动矢量;
对所述已有运动信息进行变换;
将变换后的运动信息作为候选运动信息加入所述当前图像块的运动信息候选者列表;
其中,所述对所述已有运动信息进行变换,包括:
根据当前图像块的不同位置的空域相邻块的运动信息的相似度确定对所述已有运动信息在指定方向上进行伸缩的幅度;
根据所述幅度对所述已有运动信息在指定方向上进行伸缩。
2.根据权利要求1所述的方法,其特征在于,所述对所述已有运动信息进行变换,还包括:
对所述已有运动信息进行加权。
3.根据权利要求1或2所述的方法,其特征在于,所述已有运动信息包括与所述当前图像块关联的空域候选者的运动信息、时域候选者的运动信息和/或已编码/解码块的运动信息。
4.一种运动候选者列表构建装置,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-3任一所述的方法步骤。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-3任一所述的方法步骤。
CN201811102877.6A 2018-09-20 2018-09-20 运动信息候选者列表构建方法、装置及可读存储介质 Active CN110933439B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811102877.6A CN110933439B (zh) 2018-09-20 2018-09-20 运动信息候选者列表构建方法、装置及可读存储介质
PCT/CN2019/106473 WO2020057556A1 (zh) 2018-09-20 2019-09-18 运动信息候选者列表构建方法、装置及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811102877.6A CN110933439B (zh) 2018-09-20 2018-09-20 运动信息候选者列表构建方法、装置及可读存储介质

Publications (2)

Publication Number Publication Date
CN110933439A CN110933439A (zh) 2020-03-27
CN110933439B true CN110933439B (zh) 2022-05-31

Family

ID=69855583

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811102877.6A Active CN110933439B (zh) 2018-09-20 2018-09-20 运动信息候选者列表构建方法、装置及可读存储介质

Country Status (2)

Country Link
CN (1) CN110933439B (zh)
WO (1) WO2020057556A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110809161B (zh) 2019-03-11 2020-12-29 杭州海康威视数字技术股份有限公司 运动信息候选者列表构建方法及装置
CN112073735B (zh) * 2020-11-16 2021-02-02 北京世纪好未来教育科技有限公司 视频信息处理方法、装置、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101257630A (zh) * 2008-03-25 2008-09-03 浙江大学 结合三维滤波的视频编码方法和装置
CN102714736A (zh) * 2010-01-19 2012-10-03 三星电子株式会社 基于减少的运动矢量预测候选对运动矢量进行编码和解码的方法和设备
CN102934434A (zh) * 2010-07-12 2013-02-13 联发科技股份有限公司 时间运动矢量预测的方法与装置
CN103430547A (zh) * 2011-03-08 2013-12-04 Jvc建伍株式会社 动图像编码装置、动图像编码方法及动图像编码程序、及动图像解码装置、动图像解码方法及动图像解码程序
WO2017157259A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Method and apparatus of video coding with affine motion compensation
WO2017209455A2 (ko) * 2016-05-28 2017-12-07 세종대학교 산학협력단 비디오 신호의 부호화 또는 복호화 방법 및 장치
CN108141588A (zh) * 2015-09-24 2018-06-08 Lg电子株式会社 图像编码***中的帧间预测方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018097117A1 (ja) * 2016-11-22 2018-05-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101257630A (zh) * 2008-03-25 2008-09-03 浙江大学 结合三维滤波的视频编码方法和装置
CN102714736A (zh) * 2010-01-19 2012-10-03 三星电子株式会社 基于减少的运动矢量预测候选对运动矢量进行编码和解码的方法和设备
CN102934434A (zh) * 2010-07-12 2013-02-13 联发科技股份有限公司 时间运动矢量预测的方法与装置
CN103430547A (zh) * 2011-03-08 2013-12-04 Jvc建伍株式会社 动图像编码装置、动图像编码方法及动图像编码程序、及动图像解码装置、动图像解码方法及动图像解码程序
CN108141588A (zh) * 2015-09-24 2018-06-08 Lg电子株式会社 图像编码***中的帧间预测方法和装置
WO2017157259A1 (en) * 2016-03-15 2017-09-21 Mediatek Inc. Method and apparatus of video coding with affine motion compensation
WO2017209455A2 (ko) * 2016-05-28 2017-12-07 세종대학교 산학협력단 비디오 신호의 부호화 또는 복호화 방법 및 장치

Also Published As

Publication number Publication date
WO2020057556A1 (zh) 2020-03-26
CN110933439A (zh) 2020-03-27

Similar Documents

Publication Publication Date Title
US11750818B2 (en) Inter-prediction mode based image processing method, and apparatus therefor
TWI736903B (zh) 非對稱加權雙向預測Merge
CN111147850B (zh) 用于基于历史的运动矢量预测的表维护
CN113039802B (zh) 基于历史的仿射参数的使用
CN113170112A (zh) 用于具有几何分割的帧间预测的构建方法
US11128887B2 (en) Method and apparatus for processing video signal
CN110740327B (zh) 一种处理视频数据的方法、装置和可读介质
CN112369021A (zh) 用于吞吐量增强的图像编码/解码方法和设备以及存储比特流的记录介质
CN111031317B (zh) 编解码方法、装置及设备
CN111656783A (zh) 使用基于子块的运动补偿进行视频信号处理的方法和装置
CN110677679A (zh) 依赖形状的帧内编码
CN110933439B (zh) 运动信息候选者列表构建方法、装置及可读存储介质
CN110662076A (zh) 子块的边界增强
US20200336747A1 (en) Inter prediction mode-based image processing method and device therefor
CN110662072A (zh) 运动信息候选者列表构建方法、装置及可读存储介质
TW202027501A (zh) 交織預測的快速編碼方法
CN110876064B (zh) 部分交织的预测
CN110557639B (zh) 交织预测的应用
US20230388529A1 (en) Method and apparatus for temporal interpolated prediction in video bitstream
CN113454990B (zh) 帧间预测编解码方法及装置
US20230388484A1 (en) Method and apparatus for asymmetric blending of predictions of partitioned pictures
CN111919449A (zh) 使用运动补偿的视频信号处理方法及设备
CN113454990A (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