CN118077195A - 视频编码中合并候选列表中改进的时间合并候选 - Google Patents

视频编码中合并候选列表中改进的时间合并候选 Download PDF

Info

Publication number
CN118077195A
CN118077195A CN202280063449.5A CN202280063449A CN118077195A CN 118077195 A CN118077195 A CN 118077195A CN 202280063449 A CN202280063449 A CN 202280063449A CN 118077195 A CN118077195 A CN 118077195A
Authority
CN
China
Prior art keywords
picture
candidates
motion vector
motion
collocated
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.)
Pending
Application number
CN202280063449.5A
Other languages
English (en)
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.)
Alibaba Damo Institute Hangzhou Technology Co Ltd
Original Assignee
Alibaba Damo Institute Hangzhou 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 Alibaba Damo Institute Hangzhou Technology Co Ltd filed Critical Alibaba Damo Institute Hangzhou Technology Co Ltd
Publication of CN118077195A publication Critical patent/CN118077195A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/172Methods 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 picture, frame or field

Landscapes

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

Abstract

通过利用如下方法实现VVC标准编码器和VVC标准解码器在许多方面实现了对VVC和ECM的改进:(1)并置CTU的重定位,(2)利用扩展的选择范围,(3)利用缩放运动矢量的非常规推导,(4)在设置参考图像索引时利用多个选项,例如缩放因子最接近于1共同定位图像的参考图像索引,(5)比例因子偏移;省略时间运动矢量预测候选的合并候选列表构建方法。所述改进还赖于利用运动信息细化的图像重建方法。

Description

视频编码中合并候选列表中改进的时间合并候选
相关申请
该PCT申请要求申请号为63/250,208、在2021年9月29日提交的美国专利申请的优先权益,该申请通过引用并入本文。
背景技术
在2020,ITU-T视频编码专家组(“ITU-T VCEG”)和ISO/IEC运动图像专家组(“ISO/IEC MPEG”)的联合视频专家组(“JVET”)发布了下一代视频编解码器规范通用视频编码(“VVC”)的最终草案。该规范进一步改进了优于诸如H.264/AVC(高级视频编码)和H.265/HEVC(高效视频编码)的现有标准的视频编码性能。JVET继续提出在增强压缩模型(“ECM”)标题下收集的超出VVC标准本身的范围的附加技术。
在AVC、HEVC和VVC标准中的每一个中,除了离散余弦变换(“DCT”)之外,运动补偿预测(“MCP”)被实现为另一种中心图像压缩技术。图像被划分为编码块;MCP基于图像的块中的运动倾向于在相邻块以及时间上在前的和在后的图像的块中重现的原理来提高图像的压缩效率。通过搜索这样的“运动候选”并从中导出运动信息以便重建块,在运动预测中实现MCP。
尽管诸如HEVC的早期标准仅基于平移运动实现MCP,但是VVC也实现仿射运动补偿预测(“仿射MCP”)。通常,分别基于不同格式的运动矢量来重建空间相邻块和时间相邻块的运动信息,并且具体地,根据基于时间运动矢量预测(“TMVP”)的技术来导出时间运动矢量。以这些方式,减少了编码图像中的冗余运动信息,降低了传输视频流所需的比特率,从而实现了速率增益。
ECM的第一稿(在2021年1月的运动图像专家组(“MPEG”)第133次会议上作为“超越VVC能力的增强压缩的探索实验”提出)包括进一步扩展根据VVC的MCP技术搜索的运动候选的范围的建议。然而,根据VVC及ECM的MCP实施方案,TMVP技术相对于HEVC的MCP实施方案基本上保持不变。由于TMVP仍然是MCP的组成部分,因此期望进一步改进其性能,使得其相对于其它运动矢量预测技术不会变得冗余。
附图说明
本文的详细描述参考附图得以阐述。在附图中,参考数字的最左边的数字标识参考数字首次出现的图。在不同的附图中使用相同的附图标记表示相似或相同的条目或特征。
图1A和图1B分别示出了根据本公开的示例实施例的视频编码过程和视频解码过程的示例框图。
图2说明图像的当前CU的多个空间相邻块。
图3示出了基于根据VVC标准的运动预测编码的用于图像的CU的运动候选的示例选择。
图4说明根据VVC标准获得用于时间合并候选的经缩放运动矢量。
图5示出了根据VVC标准在候选C0和C1之间选择时间候选的位置。
图6示出了根据ECM3的可能的空间相邻块,从该空间相邻块不仅可以导出相邻的空间合并候选,而且可以导出非相邻的空间合并候选。
图7A和图7B分别示出根据本公开的示例实施例的、与利用并置CTU的重定位的时间运动矢量预测候选选择方法相比的、根据ECM的时间运动矢量预测候选的选择方法。
图8示出根据本公开的示例实施例的根据相邻块的运动信息将时间合并候选添加到合并候选列表。
图9示出了用于实现上述用于实现细化的时间运动候选行为的过程和方法的示例系统。
具体实施方式
根据VVC视频编码标准(“VVC标准”)和其中所述的运动预测,存储在计算机可读存储介质上的计算机可读指令可由计算系统的一个或多个处理器执行,以将一个或多个处理器配置为执行如由VVC标准描述的编码器的操作以及如由VVC标准描述的解码器的操作。随后将更详细地描述根据VVC标准的这些编码器操作和解码器操作中的一部分,但是这些后续描述不应被理解为根据VVC标准的编码器操作和解码器操作的穷举。随后,“VVC标准编码器”和“VVC标准解码器”将描述存储在计算机可读存储介质上的相应计算机可读指令,这些指令配置一个或多个处理器以执行这些相应操作(通过示例的方式,其可以被称为编码器或解码器的“参考实现”)。
此外,根据本公开的示例实施例,VVC标准编码器和VVC标准解码器还包括存储在计算机可读存储介质上的计算机可读指令,所述计算机可读指令可由计算系统的一个或多个处理器执行,以将所述一个或多个处理器配置为执行未由VVC标准指定的操作。VVC标准编码器不应被理解为限于编码器的参考实现的操作,而是应当理解为包括配置计算系统的一个或多个处理器以执行如本文所述的进一步操作的进一步计算机可读指令。VVC标准解码器不应被理解为限于解码器的参考实现的操作,而是也应当理解为包括配置计算系统的一个或多个处理器以执行如本文所述的进一步操作的进一步计算机可读指令。
图1A和图1B分别示出了根据本公开的示例实施例的编码过程100和解码过程150的示例框图。
在编码过程100中,VVC标准编码器配置计算系统的一个或多个处理器以从图像源102接收一个或多个输入图像作为输入。输入图像包括由诸如光电传感器阵列的图像捕获设备采样的一定数量的像素,并且包括以图像的原始分辨率存储颜色数据的多个颜色通道(诸如RGB颜色通道)的未压缩流,其中,每个通道使用一定数量的比特来存储图像的每个像素的颜色数据。VVC标准编码器将计算系统的一个或多个处理器配置为以压缩格式存储该未压缩颜色数据,其中颜色数据以比图像的原始分辨率低的分辨率存储,编码为亮度(“Y”)通道和分辨率低于亮度通道的两个色度(“U”和“V”)通道。
VVC标准编码器通过配置计算系统的一个或多个处理器,以根据划分结构将原始图像划分为单元和子单元的方式来编码图像(被编码的图像被称为“当前图像”,以区别于从图像源102接收的任何其他图像)。VVC标准编码器配置计算系统的一个或多个处理器以将图像划分成每一个具有16×16像素的尺寸的多个宏块(“MB”),宏块可以被进一步划分成多个分区。VVC标准编码器配置计算系统的一个或多个处理器以将图像划分成编码树单元(“CTU”),CTU亮度和色度分量可以被进一步划分成编码树块(“CTB”),CTB被进一步细分成编码单元(“CU”)。或者,VVC标准编码器配置计算系统的一个或多个处理器,将图像细分成包含N×N个像素的单元,然后可以将其进一步划分成子单元。为本公开之的目的,通常图像的这些最大划分单元中的每一个都可称为“块”。
使用亮度样本的一个块和色度样本的两个对应块来对CU进行编码,其中图像不是单色的且使用一个编码树来编码。
VVC标准编码器配置计算系统的一个或多个处理器以将块划分成具有4×4像素的倍数的尺寸的分区。例如,块的分区可具有8×4像素、4×8像素、8×8像素、16×8像素或8×16像素的尺寸。
通过编码图像的块及其再划分的颜色信息,而不是对全分辨率原始图像的像素的颜色信息进行编码,VVC标准编码器将计算系统的一个或多个处理器配置,以比输入图像更低的分辨率来对图像的颜色信息来进行编码,以比输入图像更少的比特对颜色信息进行存储。
此外,VVC标准编码器通过配置计算系统的一个或多个处理器以对当前图像的多个块执行运动预测来编码图像。根据帧内预测104或帧间预测106,运动预测编码是指使用运动信息和预测单元(“PU”)而不是像素数据来存储当前图像的块的图像数据(其中原始图像的块在编码之前被称为“输入块”)。
运动信息是指描述图像或其单元或子单元的块结构的运动的数据,例如运动矢量和对当前图像或参考图像的块的参考。PU可指代对应于图像的多个块结构中的块结构的单元或多个子单元,例如MB或CTU,其中基于图像数据划分块且根据VVC标准对块进行编码。对应于PU的运动信息可描述如由如本文中所描述的VVC标准编码器编码的运动预测。
一种VVC标准编码器将计算系统的一个或多个处理器配置成以块之间的编码顺序(诸如光栅扫描顺序,其中首先解码的块是图像的最上面和最左边的块)对图像的每个块上的运动预测信息进行编码。被编码的块被称为“当前块”,以与相同图像的任何其他块相区别。
根据帧内预测104,计算系统的一个或多个处理器被配置为通过参考同一图像的一个或多个其他块的运动信息和PU来对块进行编码。根据帧内预测编码,计算系统的一个或多个处理器通过基于来自当前块的空间相邻块的空间相邻样本,通过对当前块的运动信息进行编码来执行帧内预测104(也称为空间预测)计算。
根据帧间预测106,计算系统的一个或多个处理器被配置为通过参考一个或多个其他图像的运动信息和PU来对块进行编码。计算系统的一个或多个处理器被配置为出于帧间预测编码的目的将一个或多个先前编码和解码的图像存储在参考图像缓冲区中;这些存储的图像被称为参考图像。
一个或多个处理器被配置为通过基于来自一个或多个参考图像的样本,通过对当前块的运动信息进行编码来执行帧间预测106(也称为时间预测或运动补偿预测)计算。帧间预测可以进一步根据单向预测或双向预测来计算:在单向预测中,仅使用指向一个参考图像的一个运动矢量来产生用于当前块的预测信号。在双向预测中,使用各自指向相应参考图像的两个运动矢量来产生当前块的预测信号。
VVC标准编码器配置计算系统的一个或多个处理器,对CU进行编码以包括参考索引,以识别当前块的预测信号以供VVC标准解码器参考。计算系统的一或多个处理器可编码CU以包含帧间预测指示符。帧间预测指示符分别指示参考被称为列表0的第一参考图像列表的列表0预测、参考被称为列表1的第二参考图像列表的列表1预测、或参考分别被称为列表0和列表1的两个参考图像列表的双向预测。
在帧间预测指示符指示列表0预测或列表1预测的情况下,计算系统的一或多个处理器被配置为对包含参考索引的CU进行编码,所述参考索引参考分别由列表0或列表1参考的参考图像缓冲区的参考图像。在帧间预测指示符指示双向预测的情况下,计算系统的一或多个处理器被配置为编码包含参考由列表0参考的参考图像缓冲区的第一参考图像的第一参考索引的CU,以及由列表1参考的参考图像缓冲区的第二参考图像的二参考索引。
一种VVC标准编码器配置计算系统的一个或多个处理器来单独地编码图像的每个当前块,并输出每个当前块的预测块。根据VVC标准,CTU可以与128×128亮度样本(取决于色度格式,加上对应的色度样本)一样大。CTU可根据四叉树、二叉树或三元树进一步划分成CU。计算系统的一个或多个处理器被配置为最终记录编码参数集,诸如在划分结构的叶节点的语法结构处的编码模式(帧内模式或帧间模式)、用于帧间编码块的运动信息(参考索引、运动矢量等)、经量化的残差系数。
在输出预测块之后,VVC标准编码器配置计算系统的一个或多个处理器发送编码参数集,诸如编码模式(例如,帧内或帧间预测)、帧内预测的模式或帧间预测的模式、和熵编码器124的动信息(如随后所述)。
VVC标准提供用于记录CU的编码参数集的语义。例如,关于上述编码参数集,用于CU的pred_mode_flag对于帧间编码块设置为0,对于帧内编码块设置为1;用于CU的general_merge_flag被设置为指示在CU的帧间预测中是否使用合并模式;用于CU的inter_affine_flag和cu_affine_type_flag被设置为指示在CU的帧间预测中是否使用仿射运动补偿;mvp_l0_flag和mvp_ll_flag被设置为分别指示列表0或列表1中的运动矢量索引;并且ref_idx_l0和ref_idx_ll被设置为分别指示列表0或列表1中的参考图像索引。应当理解,VVC标准包括用于记录超出本公开的范围的各种其他信息、标志和选项的语义。
VVC标准编码器进一步实现一个或多个模式决策和编码器控制设置108,包括码率控制设置。计算系统的一个或多个处理器被配置为通过在帧内或帧间预测之后基于率失真优化方法为当前块选择优化的预测模式来执行模式决定。
码率控制设置配置计算系统的一个或多个处理器以将不同的量化参数(“QP”)分配给不同的图像。QP的大小确定在编码期间由一个或多个处理器(如随后将描述的)对图像信息进行量化的尺度,并且因此确定编码过程100在编码期间从序列的MB中丢弃图像信息(由于落在缩放的步长之间的信息)的程度。
VVC标准编码器进一步实现了减法器110。计算系统的一个或多个处理器被配置为通过计算输入块和预测块之间的差来执行减法运算。基于优化的预测模式,从输入块中减去预测块,输入块和预测块之间的差称为预测残差,或简称为“残差”。
基于预测残差,VVC标准编码器进一步实现变换112。计算系统的一个或多个处理器被配置为通过矩阵算术运算对残差执行变换操作以导出系数阵列(其可以被称为“残差系数”、“变换系数”等),从而将当前块编码为变换块(“TB”)。变换系数可指表示可应用于子块的若干空间变换(例如,对角线翻转、垂直翻转或旋转)中的一个的系数。
应当理解,系数可以被存储为两个分量,绝对值和符号,如随后将进一步的详细描述。
CU(例如,PU和TB)的子块可按如上所述的子块维度的任何组合来布置。VVC标准编码器配置计算系统的一个或多个处理器以将CU细分为残差四叉树(“RQT”),即TB的分层结构。RQT提供用于运动预测的顺序,并对每个级别的子块进行残差编码,并递归地向下执行RQT的每个级别。
VVC标准编码器进一步实现量化114。计算系统的一或多个处理器被配置为基于量化矩阵及如上文所指派的QP,通过矩阵算术运算对残差系数执行量化运算。保持落在区间内的残差系数,并且丢弃落在区间步长之外的残差系数。
VVC标准编码器进一步实现逆量化116和逆变换118。计算系统的一个或多个处理器被配置为通过作为如上所述的量化操作和变换操作的逆矩阵算术运算,对量化的残差系数执行逆量化操作和逆变换操作。逆量化操作和逆变换操作产生重建残差。
VVC标准编码器进一步实现加法器120。计算系统的一个或多个处理器被配置为通过将预测块和重建残差相加来执行加法操作,输出重建块。
VVC标准编码器进一步实现环路滤波器122。计算系统的一个或多个处理器被配置为将环路滤波器(诸如去块滤波器、样本自适应偏移(“SAO”)滤波器和自适应环路滤波器(“ALF”))应用于重建块,输出经滤波的重建块。
VVC标准编码器进一步配置计算系统的一个或多个处理器以将经滤波的重建块输出到解码图像缓冲区(“DPB”)200。DPB 200存储由计算系统的一个或多个处理器在编码除当前图像之外的图像时用作参考图像的重建图像,如上文参考帧间预测所述。
VVC标准编码器进一步实现熵编码器124。计算系统的一个或多个处理器被配置为执行熵编码,其中,根据上下文自适应二进制算术编解码器(“CABAC”),通过映射到二进制串(随后为“bin”,其可以以压缩比特率在输出比特流中传输)来对构成量化残差系数的符号进行编码。被编码的量化残差系数的符号包括残差系数的绝对值(这些绝对值随后被称为“残差系数级别”)。
然而,尽管残差系数水平被预测和编码,但是使用指示等概率(随后为“EP”)的状态的二进位来用信号表示残差系数符号(应当理解,具有值0的系数没有符号,因此不需要用信号表示)。由于计算挑战(本领域技术人员将理解,但不需要在本文中为了理解本公开的示例实施例而重复),VVC标准编码器不会将计算系统的一个或多个处理器配置为预测残差系数的符号。出于这些原因,CABAC将计算系统的一个或多个处理器配置为绕过残差系数符号的编码,从而导致输出比特流中的每个符号1比特的附加传输。
因此,熵编码器配置计算系统的一个或多个处理器以对块的残差系数级别进行编码;绕过残差系数符号的编码并将残差系数符号与编码块一起记录;记录编码参数集,如编码模式、帧内预测模式或帧间预测模式、以及在编码块的语法结构中编码的运动信息(诸如在图像头中找到的图像参数集(“PPS”)),以及在多个图像的序列中找到的序列参数集(“SPS”));并且输出编码块。
VVC标准编码器配置计算系统的一个或多个处理器以输出由来自熵编码器124的编码块组成的编码图像。编码图像被输出到传输缓冲区,在那里它最终被打包成比特流,用于从VVC标准编码器输出。
在解码过程150中,VVC标准解码器配置计算系统的一个或多个处理器以从比特流接收一个或多个编码图像作为输入。
VVC标准解码器实现熵解码器152。计算系统的一个或多个处理器被配置为执行熵解码,其中,根据CABAC,通过符号到bin的逆映射来解码bin,从而恢复经熵编码的量化残差系数。熵解码器152输出量化残差系数,输出绕过编码的残差系数符号,并且还输出诸如PPS和SPS的语法结构。
VVC标准解码器进一步实现逆量化154和逆变换156。计算系统的一个或多个处理器是被配置为,通过如上所述的量化操作和变换操作的逆矩阵算术运算,对解码的量化残差系数执行逆量化操作和逆变换操作。逆量化操作和逆变换操作产生重建残差。
此外,基于熵编码器124在诸如PPS和SPS的语法结构中记录的编码参数集(或者,替代地,通过带外传输接收或编码到解码器中中的语法结构),以及编码参数集中包括的编码模式,VVC标准解码器确定是对重建残差应用帧内预测156(即,空间预测)还是应用运动补偿预测158(即,时间预测)。
在编码参数集指定帧内预测的情况下,VVC标准解码器配置计算系统的一个或多个处理器使用编码参数集中指定的预测信息执行帧内预测156。帧内预测156由此生成预测信号。
在编码参数集指定帧间预测的情况下,VVC标准解码器配置计算系统的一个或多个处理器使用来自DPB 200的参考图像执行运动补偿预测158。运动补偿预测158由此生成预测信号。
VVC标准解码器进一步实现加法器160。加法器160配置计算系统的一个或多个处理器以对重建残差和预测信号执行加法运算,从而输出重建块。
VVC标准解码器进一步实现环路滤波器162。计算系统的一个或多个处理器被配置为将诸如去块滤波器、SAO滤波器和ALF等环路滤波器应用于重建块,输出滤波的重建块。
VVC标准解码器进一步配置计算系统的一个或多个处理器以将滤波后的重建块输出到DBP 200。如上所述,DPB 200存储由算系统的一个或多个处理器在编码除了当前图像之外的图像时作为参考图像的重建图像,如以上参考运动补偿预测的描述。
VVC标准解码器进一步配置计算系统的一个或多个处理器以将来自DPB的重建图像输出到计算系统的用户可视显示器,诸如电视显示器、个人计算监视器、智能电话显示器或平板显示器。
因此,如上述编码过程100和解码过程150所示,VVC标准编码器和VVC标准解码器各自根据VVC规范实现运动预测编码。VVC标准编码器和VVC标准解码器各自配置计算系统的一个或多个处理器,以根据如由VVC标准描述的运动补偿预测,基于DPB的先前重建图像来生成重建图像。其中,如本文所述,先前重建的图像用作运动补偿预测中的参考图像。
如上所述,参考编码参数集,对于通过帧间预测编码编码的重建图像,VVC标准编码器和VVC标准解码器实现用于重建块的帧间预测的合并模式和仿射运动补偿。VVC标准编码器和VVC标准解码器实现用于重建图像的CU的运动信息的帧间预测的多个合并模式,包括运动补偿预测(“MCP”)、仿射运动补偿预测(“仿射MCP”)、和VVC标准规定的其他合并模式。运动信息可以包括多个运动矢量。
重建图像的CU的运动信息可以进一步包括运动候选列表。根据VVC标准,运动候选列表可为含有对多个运动候选的参考的数据结构。运动候选可以是块结构或其子单元,诸如像素或当前图像的块结构的任何其他合适的细分,或者可以是对另一图像的运动候选的参考。运动候选可以是空间运动候选或时间运动候选。通过应用运动矢量补偿(“MVC”),VVC标准解码器可从运动候选列表选择运动候选,并导出运动候选的运动矢量作为经重建图像的CU的运动矢量。
图3说明根据根据VVC标准的合并模式编码的用于图像的CU的运动候选的实例选择。
根据VVC标准,运动候选列表可以是合并候选列表,并且可以包括多达五种类型的合并候选(根据ECM是六种,如随后之描述)。VVC标准编码器可实施CU的语法结构的编码来包含合并索引。
对于在合并模式中编码的每一CU,使用截断一元二进制化(TU)来编码最优合并候选的索引。
根据合并模式编码的图像的CU的合并候选列表可以按顺序包括以下合并候选:
从空间相邻CU到当前CU的空间MVP候选;
来自当前CU的并置CU的时间MVP候选(“TMVP候选”);
来自FIFO表的基于历史的MVP候选;
成对平均MVP候选;以及
零运动矢量。
如图2所示,存在图像的当前CU的多个空间相邻块。当前CU的空间相邻块包括与当前CU的左边缘相邻的块和与当前CU的上边缘相邻的块。空间相邻块与当前CU具有如图2所示的左右关系和上下关系。如图2所示,根据合并模式编码的图像的合并候选列表可以包括多达以下合并候选:
左空间相邻块(A0);
上空间相邻块(B0);
右上空间相邻块(B1);
左下空间相邻块(A1);以及
左上空间相邻块(B2)。
在本文中所示的空间相邻块中,块A0是当前CU左侧的块;块A1是当前CU左侧的块;块B0是当前CU上方的块,块B1是当前CU上方的块;以及块B2是当前CU上方的块。每一空间相邻块相对于当前CU或相对于彼此的相对位置不应被进一步限制超出这些关系,且关于每一空间相邻块相对于当前CU或相对于彼此的相对大小不应存在限制。
VVC标准编码器和V VC标准解码器实现从搜索当前CU左侧的空间相邻块和搜索当前CU上方的空间相邻块导出至多四个合并候选。可按B0、A0、B1、A1及B2的次序搜索这些空间相邻块。这些空间相邻块中的任一者可用于合并候选列表,只要其不属于另外的条带(slice)和块片(tile)。因此,仅在其它四个空间相邻块中的任一者不可用或为帧内编码的情况下才将B2添加到合并候选列表。
对于发现可用的每一空间相邻块,从所述空间相邻块的运动导出合并候选并将其添加到合并候选列表。在以这种方式添加A1候选之后,在找到任何另外的候选时,VVC标准编码器和VVC标准解码器进一步实施执行冗余校验;包含与另一候选相同的运动信息的候选不应被添加到列表。然而,为了降低计算复杂度,在冗余校验中不考虑所有可能的候选对。取而代之的是,仅使用如图3所示的用箭头链接的对。考虑图3的示例,并且如果用于冗余校验的对应候选不具有相同的运动信息,则仅将候选添加到列表。
接下来,仅将一个时间合并候选添加到列表。特别地,在该时间合并候选的推导中,基于属于并置参考图像的并置CU来推导缩放运动矢量。VVC标准编码器实现显式地用信号通知参考图像列表和参考索引以用于片头部中的并置CU的推导。
应当理解,VVC标准将“并置图像”定义为具有与当前图像相同的空间分辨率、相同的缩放窗口偏移、相同数量的子图像和相同的CTU大小的图像。
图4通过虚线示出了根据VVC标准获得用于时间合并候选的缩放运动矢量;使用图像顺序计数(“POC”)距离tb和td从并置CU的运动矢量缩放缩放运动矢量。其中tb当前图像的参考图像与当前图像之间的POC差,并且td表示并置图像与并置图像的参考图像之间的POC差。将时间合并候选的参考图像索引设定为等于零。
应当理解,在导出时间合并候选时,VVC标准编码器和VVC标准解码器实施从并置CU的L0运动矢量和L1运动矢量之一导出缩放运动矢量,其中,根据以下步骤确定并置CU的L0运动矢量和L1运动矢量之一:
如果并置CU的运动矢量是双向预测运动矢量并且当前图像是低延迟图像,TMVP候选的L0运动矢量从并置CU的L0运动矢量缩放,且TMVP候选的L1运动矢量从并置CU的L1运动矢量缩放。
否则,如果并置CU的运动矢量是双向预测运动矢量并且当前图像是非低延迟图像,VVC标准编码器和VVC标准解码器实施根据并置CU的参考图像列表确定并置CU的两个运动矢量中的一个作为缩放的基础。更具体地,如果并置CU来自L0参考图像列表,则TMVP候选的L0和L1运动矢量均从并置CU的L1运动矢量缩放。类似地,如果并置CU来自L1参考图像列表,则TMVP候选的L0和L1运动矢量均从并置CU的L0运动矢量缩放。
否则,如果并置CU的运动矢量是L0预测的运动矢量,则无论当前图像是否是低延迟图像,TMVP候选的L0和L1运动矢量都从并置CU的L0运动矢量缩放。类似地,如果并置CU的运动矢量是L1预测的运动矢量,则TMVP候选的L0和L1运动矢量均从并置CU的L1运动矢量缩放。
图5示出了根据VVC标准的在候选C0和C1之间的时间候选的位置的选择,其中以实线示出的块表示当前CU的位置。如果在位置C0的并置CU不可用、不是帧内编码、或者在CTU的当前行之外,VVC标准编码器和VVC标准解码器实现使用位置C1处的并置CU来导出时间合并候选。否则,VVC标准编码器和VVC标准解码器使用位置C0处的并置CU来实现导出时间合并候选。
因此,应当理解,根据VVC标准,时间候选从相对位于当前CU的右下角的并置CU或相对位于当前CU的中心的并置CU导出。
接下来,VVC标准编码器和VVC标准解码器实施在空间MVP候选和TMVP候选之后将基于历史的MVP(“HMVP”)合并候选添加到合并候选列表。在此,先前编码块的运动信息被存储在表中并且被用作当前CU的MVP候选。在编码/解码过程期间维持具有多个HMVP候选的表。当遇到新的CTU行时,表被重置(清空)。每当存在非子单元帧间编码的CU时,将相关联的运动信息添加到表的最后条目作为新HMVP候选。
HMVP表大小S被设置为6,其指示最多五个HMVP候选可被添加到该表。当向表插入新的运动候选时,VVC标准编码器和VVC标准解码器实施约束的先进先出(“FIFO”)处理,其中首先应用冗余校验以查找表中是否存在相同的HMVP。如果找到,则从表中移除相同的HMVP,并且随后向前移动所有HMVP候选,并且将相同的HMVP插入到表的最后条目。
HMVP候选可以在合并候选列表构建过程中使用。表中的最新的几个HMVP候选被按顺序检查并且在TMVP候选之后被插入到候选列表中。对空间或时间合并候选的HMVP候选应用冗余校验。
为了减少冗余校验操作的数量,引入了以下简化:
表中的最后两个条目分别对A1和B1空间候选进行冗余校验。
一旦达到最大允许的合并候选的可用合并候选的总数小于1,则终止来自HMVP的合并候选列表构建过程。
接下来,VVC标准编码器和VVC标准解码器通过使用前两个合并候选对现有合并候选列表中的预定义的候选对进行平均来实现生成成对平均候选。分别地,第一合并候选被定义为p0Cand,并且第二合并候选可以被定义为plCand。根据p0Cand和plcand的运动矢量的可用性,分别为每个参考列表计算平均运动矢量。如果在一个列表中两个运动矢量都可用,则这两个运动矢量即使在它们指向不同的参考图像时也被平均,并且其参考图像被设置为“p0Cand'中的一个,如果只有一个运动矢量可用,则直接使用该一个;如果没有运动矢量可用,保持此列表无效。此外,如果pOCand和plcand的半像素插值滤波器索引不同,则将其设置为0。
最后,在添加成对平均合并候选后合并列表未满的情况下,在末尾插入零个MVP,直到最大遇到合并候选数量。零运动矢量具有(0,0)的运动移位。
而VVC标准提供了最多六个候选的合并候选列表,JVET在这一领域的持续工作,超出了VVC标准的范围(在2021年1月的运动图像专家组(“MPEG”)第133次会议上作为“超越VVC能力的增强压缩的探索实验”提出,并且在2021年10月的MPEG的136次会议上作为“增强压缩模型3(ECM3)的算法描述”,提出了最多十五个候选的扩展合并候选列表,包括以下候选,按顺序:
从空间相邻CU到当前CU的空间MVP候选;
来自当前CU的并置CU的时间MVP候选;
非相邻空间候选;
来自FIFO表的基于历史的MVP候选;
成对平均MVP候选;以及
零运动矢量。
图6示出了根据ECM3的可能的空间相邻块,从中不仅可以导出相邻的空间合并候选,而且可以导出非相邻的空间合并候选。在常规合并候选列表中的TMVP候选之后插入非相邻空间合并候选。非相邻空间候选与当前编码块之间的距离基于当前编码块的宽度和高度。未应用行缓冲区限制。
此外,在构建合并候选列表之后,对合并候选重新排序(根据合并候选的自适应重新排序,以下称为“ARMC”)。合并候选首先被分成几个子组。对于常规合并模式和TM合并模式,子组大小被设置为5。对于仿射合并模式,子组大小被设置为3。基于模板匹配,根据成本值递增的方式重新排序每个子组中的合并候选。为了简化,最后而不是第一子组中的合并候选不被重新排序。合并候选的模板匹配成本通过当前块的模板的样本与其对应参考样本之间的绝对差的总和(“SAD”)来测量。模板包括与当前块相邻的重建样本的集合。通过合并候选的运动信息来定位模板的参考样本。
ECM 3的合并候选列表搜索技术集中于扩大合并候选搜索的范围,但是VVC标准和ECM提议都没有改进TMVP技术的性能,因为TMVP候选继续仅占据合并候选列表中的一个位置。因此,与其它合并候选相比,TMVP候选将表现不佳的可能性越来越大。期望TMVP性能得以改进,使得其与基于合并候选列表中的其它运动预测技术的合并候选能保持竞争。
因此,本公开的示例实施例提供了一种时间运动矢量预测候选选择方法,其在多个方面提供了对VVC和ECM的改进。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现利用并置CTU的重定位的时间运动矢量预测候选选择方法。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现利用扩展的选择范围的时间运动矢量预测候选选择方法。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现利用缩放运动矢量的无条件推导的时间运动矢量预测候选选择方法的。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现了利用省略缩放单向预测运动矢量到双向预测运动矢量的时间运动矢量预测候选选择方法。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现在设置参考图像索引时利用多个选项的时间运动矢量预测候选选择方法。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现利用缩放因子偏移的时间运动矢量预测候选选择方法。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器实现省略时间运动矢量预测候选的合并候选列表构建方法。
在一个或多个方面,本公开的示例实施例提供了一种实现利用运动信息细化的图像重建方法的VVC标准编码器和VVC标准解码器。
随后,将进一步详细描述本公开的示例实施例的上述方面中的每一个。
根据ECM设计,为了最小化时间运动的片上缓冲区大小,只能从并置的CTU加上位于并置的CTU右侧的一列获得时间运动矢量,其中,并置CTU是并置参考图像中位置与当前CTU相同的CTU。然而,该设计不适合于具有快速运动的序列,或者不适合于并置参考图像远离该图像(即,图像与其并置参考图像之间的POC距离大)的图像。因此,本公开的示例实施例提供了允许从除了并置CTU之外的位置导出时间运动矢量的VVC标准编码器和VVC标准解码器。
图7A和图7B分别示出了根据本公开的示例实施例的根据ECM的时间运动矢量预测候选选择方法,与利用并置CTU的重定位的运动矢量预测候选选择方法的比较。首先,图像的块划分有效地将图像分割成多个块网格,其中图像的一些网格可具有较大的块大小,而其它网格具有较小的块大小。对于图像的每个网格,用信号通知运动矢量以指示网格的时间运动来自哪里;因此,为了简洁起见,这样的网格被称为“运动网格”,因为网格粒度确定运动矢量的分布。
图7A和图7b示出了当前块和并置块的运动网格大小等于CTU的大小的示例:左图示出了ECM提议,而右图示出了本公开。根据本公开的示例实施例,VVC标准编码器和VVC标准解码器实现根据用信号通知的运动矢量702来改变并置CTU的位置。换句话说,VVC标准编码器和VVC标准解码器根据运动矢量702(其可以但不一定是用信号通知的,如随后将描述的)导出:来自并置图像710的重定位并置CTU 708当前图像706的当前CTU 704的当前CU的TMVP候选,相对于当前图像706中的当前CTU 704由运动矢量702重定位的位于并置图像710中的CTU 708。
应当理解,根据本公开的示例实施例,并置CTU 708的“改变位置”或“重新定位”并置CTU 708不意味着并置图像710的图像数据被移动。相反,“改变位置”或“重新定位”并置CTU 708应被理解为VVC标准编码器和VVC标准解码器使用并置CTU 708来实现本文所述的操作。不是并置CTU 708在并置图像710中必须像当前图像706中的当前CTU 704类似地定位,并置图像的另一CTU 710(其可以是,但不必是,相对于当前CTU 704位于不同位置)在实现每个此类操作时代替并置CTU 708。
可替换地,当前块和并置块的运动网格大小可以不同于CTU的大小。在一个示例中,运动网格大小可以是N×N,其中N等于256、128、64、32或16个亮度样本。在其他示例中,运动网格大小可以是N×M,其中N不等于M,并且N和M都是2的整数幂。
运动网格大小可以根据序列、时间层或图像类型的差异而不同,从而导致不同的块分割。根据一些示例实施例,VVC标准编码器和VVC标准解码器实现以序列级、图像级或条带级语法结构用信号通知当前块的运动网格大小。根据其他示例实施例,根据时间层来调整运动网格大小。
为了理解本公开的目的,应当理解,在VVC标准编码器和VVC标准解码器实现在语法结构中用信号通知参数的情况下,编码器实现在块、图像、序列、条带等的语法结构中记录参数,以及通过比特流发送编码的语法结构;以及编码器实现从比特流解析编码的语法结构。
VVC标准编码器和VVC标准解码器可以实现在序列级语法结构中用信号通知最高时间层的运动网格大小,或者可以实现最高时间层的固定运动网格大小,例如与CTU相同的大小。然后,VVC标准编码器和VVC标准解码器实现针对每个较低时间层减小运动网格大小;这是因为在较低时间层中,图像与其并置参考图像之间的POC距离较大。因此,运动在较低时间层中比在较高时间层中更复杂且粒度更细,因而较小粒度可以提高时间运动预测的准确度。
此外,VVC标准编码器和VVC标准解码器可以实现在语法结构中用信号通知最低时间层的运动网格大小,并且实现针对每个较高时间层增加运动网格大小。
为了用信号通知每个运动网格的运动矢量,可以直接用信号通知运动矢量或者可以预测运动矢量。根据一些示例实施例,当前运动网格的运动矢量可以合并自与其任何相邻运动网格(例如,根据光栅扫描顺序编码的左侧或顶部相邻运动网格,或先前已根据如下所述的其它扫描次序编码的块的任何其它相邻运动网格)。VVC标准编码器和VVC标准解码器实现在语法结构中用信号通知参数(例如,标志或索引)以指示当前运动网格的运动矢量是否与其相邻运动网格的运动矢量相同。如果用信号通知的参数指示相同,则当前运动网格的运动矢量不被用信号通知并且直接从其相邻运动网格继承。否则,在语法结构中用信号通知当前运动网格的运动矢量。
或者,当前运动网格的运动矢量可以从其相邻运动网格预测。VVC标准编码器和VVC标准解码器实现将相邻运动网格的运动矢量作为为当前运动网格的运动矢量预测值。不是用信号发送上述参数,而是在语法结构中仅用信号发送通知矢量差。
此外,在每个运动网格的运动矢量在语法结构中被用信号通知的情况下,VVC标准编码器和VVC标准解码器实现根据默认顺序对运动网格的编码,其中默认顺序可以是光栅扫描顺序、z顺序扫描顺序、水平扫描顺序、垂直扫描顺序和对角线扫描顺序。
应当理解,并置的CTU可以处于时间运动矢量的最佳位置,使得用信号通知的运动矢量等于零运动。因此,为了减少信令开销,VVC标准编码器和VVC标准解码器实现在语法结构中用信号通知控制参数以确定并置CTU的位置是否从当前CTU重定位。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现用信号通知序列级、图像级或条带级语法结构标志,以指示并置CTU的位置是否从当前CTU重新定位。
根据其他示例实施例,较高时间层的并置CTU的位置相对于当前CTU保持不变,并且不需要用信号通知其他参数。
在一个或多个方面,本公开的示例实施例提供了一种利用扩展的选择范围的时间运动矢量预测候选选择方法。
根据如上参考图5所述的VVC和ECM,时间候选的位置只能从图5所示的候选C0和C1中选择。因此,本公开的示例实施例提供了从附加位置选择时间候选。
根据一些示例实施例,VVC标准编码器和VVC标准解码器实现从如图5所示的C0和C1(“时间候选”)以及如图2所示的A0、A1、B0、B1和B2(“空间候选”)的组合集合中选择时间候选。(即,如参考图2所描述但相对于图5中所示出的当前CU的位置的空间相邻块)。
根据一些示例实施例,VVC标准编码器和VVC标准解码器实现根据默认顺序选择时间候选。默认顺序是C0,然后是C1,然后是B0,然后是A0,然后是A1,然后是B1,然后是B2。如果位置C0处的CU不可用、是帧内编码或在CTU的当前行外部,那么检查位置C1。否则,在TMVP候选的推导中使用位置C0,并且搜索结束。类似地,如果位置C1处的CU不可用、是帧内编码或在CTU的当前行外部,那么检查位置B0,等等。根据本公开的示例实施例的默认顺序可以是C0、C1、A0、A1、B0、B1和B2的任何组合,但不限于此。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现通过对时间候选的所有时间运动矢量求平均来导出TMVP候选。时间候选的时间运动矢量通过缩放到固定的参考图像而被归一化,然后归一化的时间运动矢量被平均。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现通过将时间候选的时间运动矢量与空间合并候选进行比较来导出TMVP候选。在TMVP候选的推导中使用在比较时产生最大运动矢量差的时间运动矢量。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现根据模板匹配的相应成本值从时间候选的时间运动矢量中选择TMVP候选。通过当前块的模板的样本与其对应的参考样本之间的SAD来测量时间候选的模板匹配成本。模板包括与当前块相邻的重建样本的集合。通过时间候选的运动信息来定位模板的参考样本。
根据其他示例实施例,不是间接地确定从哪里选择TMVP候选,TMVP候选的导出可以被显式地用信号通知。VVC标准编码器和VVC标准解码器实现从包括{C0,C1,A0,A1,B0,B1,B2}的集合中获得时间候选。时间候选可以是{C0,C1,A0,A1,B0,B1,B2}的任何子集。还可以从并置CTU内的任何位置获得时间候选。
VVC标准编码器和VVC标准解码器实现在每个CTU的语法结构中用信号通知索引以识别TMVP候选的推导。举例来说,用信号通知的索引0标识TMVP候选导出自位置C0;用信号表示的索引1识别TMVP候选导出自位置C1位置;等等。可以在不同粒度的语法结构(诸如序列级、图像级、条带级、64×64网格级、32×32网格级、16×16网格级等)处用信号通知索引。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现利用缩放运动矢量的无条件推导的时间运动矢量预测候选选择方法。
根据ECM,根据当前图像是否为低延迟图像,有条件地从L0或L1时间运动来缩放时间运动矢量。根据本公开的实例实施例,可省略此条件:因此,在导出时间合并候选时,VVC标准编码器和VVC标准解码器实现从并置CU的运动矢量中的一个导出缩放运动矢量。其中,根据以下步骤确定并置CU的运动矢量之一:
如果并置CU的运动矢量是双向预测运动矢量,则无论当前图像是否是低延迟图像,TMVP候选的L0运动矢量从并置CU的L0运动矢量缩放,且TMVP候选的L1运动矢量从并置CU的L1运动矢量缩放。
否则,如果并置CU的运动矢量是L0预测的运动矢量,则TMVP候选的L0和L1运动矢量都从并置CU的L0运动进行缩放,而不管当前图像是否是低延迟图像。类似地,如果并置CU的运动矢量是L1预测的运动矢量,则TMVP候选的L0和L1运动矢量均从并置CU的L1运动矢量缩放。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现利用将单向预测运动矢量缩放到双向预测运动矢量的省略的时间运动矢量预测候选选择方法。
根据ECM,TMVP候选的运动矢量总是由双向预测运动导出,而不管并置CU的运动是单向预测还是双向预测。将单向预测运动矢量缩放为双向预测运动矢量是不合适的,因为缩放过程是不准确的。
根据一些示例实施例,提出了省略将单向预测运动矢量转换为双向预测运动矢量的缩放过程。VVC标准编码器和VVC标准解码器实现在导出时间合并候选时从并置CU的运动矢量之一导出缩放运动矢量,其中并置CU的运动矢量之一是根据以下步骤确定的:
如果并置CU的运动矢量是双向预测运动矢量并且当前图像是低延迟图像,TMVP候选的L0运动矢量从并置CU的L0运动矢量缩放,且TMVP候选的L1运动矢量从并置CU的L1运动矢量缩放。
否则,如果并置CU的运动是双向预测运动矢量并且当前图像是非低延迟图像,则根据并置CU的参考图像列表确定并置CU的两个运动矢量中的哪一个用于执行缩放:如果并置CU来自L0参考图像列表,则TMVP候选的L0和L1运动矢量均从并置CU的L1运动矢量缩放。类似地,如果并置CU来自L1参考图像列表,则TMVP候选的L0和L1运动矢量均从并置CU的L0运动矢量缩放。
否则,如果并置CU的运动矢量是L0预测的运动矢量,则从并置CU的L0运动矢量缩放TMVP候选的L0运动矢量,而不管当前图像是否是低延迟图像,而TMVP候选的L1运动矢量被设定为不可用。类似地,如果并置CU的运动是L1预测的运动,则从并置CU的L1运动矢量缩放TMVP候选的L1运动矢量,而将TMVP候选的L0运动矢量设置为不可用。
根据其他示例实施例,仅对于最低时间层,而不是所有时间层,可以省略将单向预测运动转换为双向预测运动的缩放过程。例如,当时间层低于层3时,省略缩放。
根据其他示例实施例,可以仅对于最低时间层并且仅对于非低延迟图像省略将单向预测运动转换为双向预测运动的缩放过程。
根据其他示例实施例,仅对于一些合并模式省略将单向预测运动转换为双向预测运动的缩放过程,其中这些合并模式可以是以下中的任何、一些或全部:常规合并模式;与MVD合并;几何划分模式;组合的帧间和帧内模式;基于子块的时间运动矢量预测;仿射合并模式;以及模板匹配模式。
根据其他示例实施例,根据模板匹配的成本值来确定TMVP候选的运动矢量是通过单向预测还是双向预测运动来导出的。VVC标准编码器和VVC标准解码器实现通过当前块的模板的样本与其对应的参考样本之间的绝对差的总和来测量模板匹配成本。模板包括与当前块相邻的重建样本的集合。模板的参考样本由时间候选的L0预测、L1预测及双向预测运动信息定位。
应理解,仅在启用ARMC时才执行用于决定TMVP候选的单向预测运动矢量或双向预测运动矢量的模板匹配。此外,为了简化实现,在构造合并候选列表时,VVC标准编码器和VVC标准解码器首先实现将TMVP候选缩放为双向预测的运动矢量,然后,当应用ARMC时,可以基于模板匹配的成本值将TMVP候选转换为单向预测的运动矢量。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现当并置CU的运动是单向预测的时添加附加的单向预测TMVP候选。
在一个或多个方面,本公开的示例实施例提供了一种VVC标准编码器和VVC标准解码器,其实现在设置参考图像索引时利用多个选项的时间运动矢量预测候选选择方法。
根据ECM,将时间合并候选的参考图像索引设置为等于零。根据本公开的示例实施例,可以选择不同的参考图像索引。
根据一些示例实施例,所选择的参考图像索引是其缩放因子(如图4所示的tbltd)最接近1的并置图像的参考图像索引。
根据其他示例实施例,所选择的参考图像索引是针对空间相邻块最频繁选择的参考图像索引。空间相邻块可为空间候选、HMVP候选或非邻近候选,如上文参考VVC标准和ECM所描述。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现在序列级、图像级、条带级或CTU级语法结构处用信号通知参考图像索引。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现当使用基于子块的时间运动矢量预测(“SbTMVP”)模式对块进行编码时,为每个子块选择不同的参考图像索引。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现当使用SbTMVP模式对块进行编码时,基于每个子块参考图像索引选择来确定每个子块的一致参考图像索引。对于每个子块,首先选择参考图像索引,其中所选择的参考图像索引是缩放因子最接近1的并置图像的参考索引。然后,整个块的参考图像索引是在每个子块中最频繁选择的参考图像索引。
在一个或多个方面,本公开的示例实施例提供了一种实现利用缩放因子偏移的时间运动矢量预测候选选择方法的VVC标准编码器和VVC标准解码器。
根据ECM,使用如上文参考VVC标准和ECM所描述的POC距离来计算缩放因子;然而,可以看到到缩放因子的计算是不准确的。本公开的示例实施例提供了VVC标准编码器和VVC标准解码器,实现缩放因子偏移以提高准确性。
根据一些示例实施例,缩放因子可以被偏移如下:
这里,tb表示当前图像的参考图像与当前图像之间的POC差;td表示并置图像的参考图像与并置图像之间的POC差;并且/V表示非零整数(例如,N等于±8,±16)。给定负N,缩放因子被调整为更小。给定正N,缩放因子被调整为更大。
根据其他示例实施例,作为上述偏移的缩放因子被影响为更接近于1。给定小于1的缩放因子,如上定义的N被设置为正数。给定大于1的缩放因子,则将N设置为负数。
根据其他示例实施例,VVC标准编码器和VVC标准解码器实现在序列级、图像级、条带级或CTU级语法结构处用信号通知偏移(即,数字N)。
作为示例,当用信号通知偏移时,偏移的绝对值和符号都被用信号通知。
作为另一示例,当用信号通知偏移时,仅用信号通知偏移的符号。绝对值固定为默认数字。
作为另一示例,偏移的绝对值和符号可以在不同级别用信号通知绝对值在序列级别语法结构用信号通知,并且符号在CTU级别语法结构用信号通知。
根据其他示例实施例,缩放因子针对每个CU单独地偏移或不偏移。对于每个CU,根据以下任一项,缩放因子可以是偏移的或可以是不偏移的:
应用模板匹配方法来选择最佳偏移或非偏移。
根据其他示例实施例,缩放因子可以是每时间层的偏移。也就是说,每个时间层可以具有不同的缩放因子偏移。
在一个或多个方面,本公开的示例实施例提供了V VC标准编码器和VVC标准解码器,其实现了省略时间运动矢量预测候选的合并候选列表构建方法。
根据ECM,将时间合并候选添加到常规合并模式、几何划分模式(“GPM”)、具有MVD的合并模式(“MMVD”)、组合的帧间和帧内预测(“CIIP”)、SbTMVP和仿射模式。可以看到时间合并候选并不总是最终在编码中使用。
根据一些示例实施例,VVC标准编码器和VVC标准解码器实现根据相邻块的运动信息有条件地将时间合并候选添加到合并候选列表。当相邻块的时间运动类似于当前块的时间运动且相邻块的运动不是从时间运动获得时,当前块的TMVP候选被视为不可用于添加到合并候选列表。
图8示出根据本公开的示例实施例的根据相邻块的运动信息有条件地将时间合并候选添加到合并候选列表。在图8中,运动矢量是当前CU的运动矢量(等于并置CU的运动),运动矢量/>是并置CU的相邻块的运动矢量,且运动矢量/>是当前CU的相邻块的运动矢量。当/>类似于/>并且/>不是缩放自/>时间合并候选将不被添加到当前块的合并候选列表。
相邻块可以是{A0,A1,B0,B1,B2}的任何子集。相邻块也可以是非相邻空间合并候选或HMVP合并候选。
将当前块的时间运动矢量与相邻块的时间运动矢量之间的相似性与默认阈值进行比较。当运动矢量差小于默认阈值时,两个时间运动矢量被视为类似。
所述默认阈值是大于0的整数。可以根据当前块的编码模式或当前块的大小将默认阈值设置为不同的值。例如,对于常规合并模式,默认阈值设置为1,对于模板匹配模式,默认阈值设置为16。
根据其他示例实施例,VVC标准编码器和VVC标准解码器根据时间层、图像类型(例如,低延迟图像或非低延迟图像)或当前CU的编码模式来实现自适应合并列表构造顺序。在一个实例中,对于较高时间层,TMVP候选的优先级较高,从而致使TMVP候选优先添加在空间合并候选之前,借此超驰如上文所描述的合并候选次序。
在一个或多个方面,本公开的示例实施例提供了一种实现利用运动信息细化的图像重建方法的VVC标准编码器和VVC标准解码器。
根据一些示例实施例,在用帧间模式编码的当前块被重建之后,运动信息被细化,包括帧间预测方向(即,L0预测、L1预测或双向预测)、参考图像索引和运动矢量。当前块的重建样本被用作模板,并且执行运动估计。
当执行运动估计时,仅考虑失真。然后,将细化的运动信息用作未来编码图像的时间运动。在运动估计过程中使用的重建样本可以是在环路滤波过程之前或之后的样本。
根据一些示例实施例,当构造用于常规合并模式、CIIP、GPM、MMVD和模板匹配模式的合并候选列表时,如果相邻块的时间运动类似于当前块的时间运动并且相邻块的运动不是从时间运动获得时,则VVC标准编码器和VVC标准解码器实现将当前块的TMVP候选视为不可用。在将TMVP候选添加到合并候选列表的情况下,按照如下方法导出TMVP候选:
如果并置CU的运动是双向预测运动,则无论当前图像是否是低延迟图像,TMVP候选的L0运动矢量从并置CU的L0运动矢量缩放,且TMVP候选的L1运动矢量从并置CU的L1运动矢量缩放。
否则,如果并置CU的运动矢量是L0预测的运动矢量,则TMVP候选的L0和L1运动矢量都从并置CU的L0运动进行缩放,而不管当前图像是否是低延迟图像。类似地,如果并置CU的运动矢量是L1预测的运动矢量,则TMVP候选的L0和L1运动矢量均从并置CU的L1运动矢量缩放。
此外,VVC标准编码器和VVC标准解码器实现将TMVP候选的参考图像索引设置为并置图像的参考图像索引,该并置图像的缩放因子(即,即如图4所示的tbltd)最接近1。此外,当ARMC被启用并且当前图像是非低延迟图像时,VVC标准编码器和VVC标准解码器实现应用模板匹配方法来决定TMVP候选是单向预测的还是双向预测的,并选择最佳偏移或非偏移缩放因子。
本领域技术人员将理解,本公开的所有上述方面可以以其任何组合同时实现,并且本公开的所有方面可以组合实现为本公开的又一实施例。
图9示出了用于实现上述用于实现细化的时间运动候选行为的过程和方法的示例系统900。
本文描述的技术和机制可以由系统900的多个实例以及由任何其他计算设备、系统和/或环境来实现。图9仅是系统的一个示例,并且不旨在对用于执行上述过程和/或程序的任何计算设备的使用范围或功能提出任何限制。可适合于与本实施例一起使用的其它众所周知的计算装置、系统、环境和/或配置包含(但不限于)个人计算机、服务器计算机、手持式或膝上型装置、多处理器系统、基于微处理器的系统、机顶盒、游戏控制台、可编程消费电子产品、网络PC、小型计算机、大型计算机、包括任何上述系统或设备的分布式计算环境、使用现场可编程门阵列(“FPGA”)和专用集成电路(“ASIC”)的实现等。
系统900可以包括一个或多个处理器902和通信地耦合到处理器902的系统存储器904。处理器902可以执行一个或多个模块和/或过程以使处理器902执行各种功能。在一些实施例中,处理器902可以包括中央处理单元(“CPU”)、图形处理单元(“GPU”)、同时包括前两者或本领域中已知的其它处理单元或组件。另外,处理器902中的每一个可以拥有其自己的本地存储器,其也可以存储程序模块、程序数据和/或一个或多个操作系统。
根据系统900的确切配置和类型,系统存储器904可以是易失性的,例如RAM,非易失性的,例如ROM、闪存、微型硬盘驱动器、存储卡等、或其某种组合。系统存储器904可以包括可由处理器902执行的一个或多个计算机可执行模块906。
模块906可以包括但不限于编码器908和解码器910中的一个或多个。
编码器908可以是实现如上所述的本公开的示例实施例的任何、一些或所有方面的VVC标准编码器,其可由处理器902执行以配置处理器902以执行如上所述的操作。
解码器910可以是实现如上所述的本公开的示例实施例的任何、一些或所有方面的VVC标准解码器,其可由处理器902执行以配置处理器902执行如上所述的操作。
系统900可以附加地包括输入/输出(I/O)接口940,用于接收图像源数据和比特流数据,并且用于将重建图像输出到参考图像缓冲区或DBP和/或显示缓冲区中。系统900还可以包括允许系统900通过网络(未示出)与其他设备(未示出)通信的通信模块950。网络可以包括因特网、诸如有线网络或直接有线连接的有线介质、以及诸如声学、射频(“RF”)、红外和其他无线介质的无线介质。
上述方法的一些或全部操作可以通过执行存储在计算机可读存储介质上的计算机可读指令来执行,如下面所定义的。如在说明书和权利要求书中使用的术语“计算机可读指令”包括例程、应用模块、程序、组件、数据结构、算法等。计算机可读指令可以在各种系统配置上实现,包括单处理器或多处理器系统、小型计算机、大型计算机、个人计算机、手持式计算设备、基于微处理器的可编程消费电子产品、其组合等。
计算机可读存储介质可以包括易失性存储器(诸如随机存取存储器(“RAM”))和/或非易失性存储器(诸如只读存储器(“ROM”)、闪存等)。计算机可读存储介质还可以包括附加的可移动存储和/或不可移动存储,包括但不限于闪存、磁存储、光存储和/或磁带存储,其可以提供计算机可读指令、数据结构、程序模块等的非易失性存储。
非暂态计算机可读存储介质是计算机可读介质的示例。计算机可读介质包括至少两种类型的计算机可读介质,即计算机可读存储介质和通信介质。计算机可读存储介质包括在用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何过程或技术中实现的易失性和非易失性、可移动和不可移动介质。计算机可读存储介质包括但不限于相变存储器(“PRAM”)、静态随机存取存储器(“SRAM”)、动态随机存取存储器(“DRAM”)、其他类型的随机存取存储器(“RAM”)、只读存储器(“ROM”)、电可擦除可编程只读存储器(“EEPROM”)、闪存或其他存储器技术、光盘只读存储器(“CD-ROM”)、数字多功能光盘(“DVD”)或其他光学存储器、磁带盒、磁带、磁盘存储或其他磁存储设备,或可用于存储信息以供计算设备访问的任何其他非传输介质。相比之下,通信介质可以承载计算机可读指令、数据结构、程序模块或在诸如载波或其他传输机制的调制数据信号中的其他数据。本文采用的计算机可读存储介质不应被解释为瞬态信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如通过光纤电缆的光脉冲),或者通过电线传播的电信号。
存储在一个或多个非暂时性计算机可读存储介质上的计算机可读指令,当由一个或多个处理器执行时,可以执行上面参考图1A-图8描述的操作。通常,计算机可读指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。本文描述操作的顺序不应被解释为限制,并且任何数量的所描述的操作可以以任何顺序和/或并行地组合以实现上述过程。
尽管已经以特定于结构特征和/或方法动作的语言描述了所述主题,但是应当理解,所附权利要求中限定的主题不一定限于所描述的具体特征或动作。相反,具体特征和动作被公开为实现权利要求的示例性形式。
通过至少以下条款进一步描述本公开的示例实施例。
A.一种方法,包括:由计算系统(900)的一个或多个处理器(902)为当前图像(706)的当前编码单元(“CU”)选择多个运动候选;其中,所述一个或多个处理器(902)导出:根据当前图像(706)的运动网格的运动矢量(702),来自并置图像(706)的重定位的并置CTU(708)的当前图像(710)的当前CTU(704)的当前CU的时间运动矢量预测候选(“TMVP候选”),重定位的所述并置CTU(708)通过相对于所述当前图像(710)中的当前CTU(704)的所述运动矢量(702)定位于所述并置图像(706)中。
B.根据段落A所述的方法,其中当前CU和并置CU的运动网格大小不同于所述当前CTU(704)和所述并置CTU(708)的大小;并且还包括在序列级别、图像级别或条带级别语法结构用信号通知所述当前图像(706)的所述运动网格大小。
C.根据段落B所述的方法,其中用信号通知所述当前CU的所述运动网格大小包括在序列级别语法结构处用信号通知所述当前图像(706)的最高时间层的运动网格大小。
D.根据段落B所述的方法,其中,用信号通知所述当前CU的所述网格大小包括:从所述当前图像(706)的最高时间层开始,针对所述当前图像(706)的每个较低时间层减小网格大小。
E.根据段落B所述的方法,其中,用信号通知所述当前CU的所述网格大小包括:从所述当前图像(706)的最低时间层开始,增加所述当前图像(706)的每个较高时间层的网格大小。
F.根据段落A所述的方法,其中所述运动矢量(702)不在语法结构中用信号通知,且指示所述运动矢量(702)与相邻运动网格的另一运动矢量相同的参数在语法结构中用信号表示。
G.根据段落A所述的方法,其中所述运动矢量(702)不在语法结构中用信号通知,且指示所述运动矢量(702)与相邻运动网格的另一运动矢量的差的参数在语法结构中用信号表示。
H.根据段落A所述的方法,其中所述运动矢量(702)在语法结构中被用信号通知,并且,所述运动网格的块根据以下之一中的默认顺序被编码:光栅扫描顺序、z顺序扫描顺序、水平扫描顺序、垂直扫描顺序、和对角线扫描顺序。
I.根据段落A所述的方法,其进一步包括在序列级别、图像级别或条带级别语法结构标志处用信号通知送指示所述并置CTU(708)的位置从所述当前CTU(704)重新定位的参数。
J.根据段落A所述的方法,在序列级别、图像级别或条带级别语法结构标志处,不用信号通知指示所述并置CTU(708)的位置从当前CTU(704)重新定位的参数。
K.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中所述一或多个处理器(902)从包含相对于所述当前CU的并置图像(710)的空间相邻块的运动候选集合中选择时间运动矢量预测候选(“TMVP候选”)。
L.根据段落K所述的方法,其中,所述一个或多个处理器(902)通过对多个时间候选的时间运动矢量求平均来导出TMVP候选。
M.根据段落K所述的方法,其中,所述一个或多个处理器(902)通过与空间合并候选相比产生最大运动矢量差的时间候选的多个时间运动矢量中的一个来导出TMVP候选。
N.根据段落K所述的方法,其中,所述一个或多个处理器(902)通过具有模板匹配的最低成本值的时间候选的运动矢量来导出TMVP候选,模板匹配的成本值包括当前块的模板的样本与邻近当前块的对应参考样本之间的绝对差的和。
O.根据段落K所述的方法,还包括由所述一个或多个处理器(902)用信号通知标识CTU的语法结构中的导出的TMVP候选的索引,所述语法结构在序列级别、图像级别、条带级别、64×64网格级别、32×32网格级别、或16×16网格级别。
P.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中所述一或多个处理器(902)通过从并置CU的运动矢量导出经缩放的运动矢量来选择时间运动矢量预测候选(“TMVP候选”);其中所述经缩放的运动矢量包括L0运动矢量和L1运动矢量;其中,对于并置CU的双向预测运动矢量,不管当前图像(706)是否是低延迟图像,从并置CU的L0运动矢量缩放L0运动矢量,并且从并置CU的L1运动矢量缩放L1运动矢量;其中,对于并置CU的L0预测的运动矢量,L0运动矢量和L1运动矢量都是缩放自并置CU的L0运动矢量,而不管当前图像(706)是否是低延迟图像;并且其中,对于并置CU的L1预测的运动矢量,L0运动矢量和L1运动矢量都是缩放自并置CU的L1运动矢量,而不管当前图像(706)是否是低延迟图像。
Q.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中所述一或多个处理器(902)通过从并置CU的运动矢量导出经缩放的运动矢量来选择时间运动矢量预测候选(“TMVP候选”);其中所述经缩放运动矢量包括L0运动矢量和L1运动矢量;其中,对于并置CU的双向预测运动矢量,在当前图像(706)是低延迟图像的情况下,从并置CU的L0运动矢量缩放L0运动矢量,并且从并置CU的L1运动矢量缩放L1运动矢量,或者,在并置CU来自L0参考图像列表并且当前图像(706)是低延迟图像的情况下,L0运动矢量和L1运动矢量都缩放自并置CU的L0运动矢量进行,或者,在并置CU来自L1参考图像列表并且当前图像(706)是低延迟图像的情况下,L0运动矢量和L1运动矢量都缩放自并置CU的L1运动矢量;其中,对于并置CU的L0预测的运动矢量,从并置CU的L0运动矢量缩放L0运动矢量,并且L1运动矢量被设置为不可用,而不管当前图像(706)是否是低延迟图像;并且其中,对于并置CU的Ll预测的运动矢量,L0运动矢量被设置为不可用,并且从并置CU的L1运动矢量缩放L1运动矢量,而不管当前图像(706)是否是低延迟图像。
R.根据段落Q所述的方法,其中,所述当前CU的时间层低于层3。
S.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中所述一个或多个处理器(902)通过从并置CU的运动矢量导出经缩放运动矢量来选择时间运动矢量预测候选(“TMVP候选”);其中所述经缩放运动矢量包括L0运动矢量和L1运动矢量;其中,对于并置CU的双向预测运动矢量,在当前图像(706)是非低延迟图像的情况下,从并置CU的L0运动矢量缩放L0运动矢量,并且从并置CU的L1运动矢量缩放L1运动矢量,或者,在并置CU来自L0参考图像列表并且当前图像(706)是低延迟图像的情况下,L0运动矢量和L1运动矢量都缩放自并置CU的L0运动矢量,或者,在并置CU来自L1参考图像列表并且当前图像(706)是非低延迟图像的情况下,L0运动矢量和L1运动矢量都缩放自并置CU的L1运动矢量;其中,在当前图像(706)是非低延迟图像的情况下,对于并置CU的L0预测运动矢量,从并置CU的L0运动矢量缩放L0运动矢量,并将L1运动矢量设置为不可用;并且其中,在当前图像(706)是非低延迟图像的情况下,对于并置CU的Ll预测的运动矢量,在,L0运动矢量被设置为不可用,并且从并置CU的L1运动矢量缩放L1运动矢量。
T.根据段落S所述的方法,其中当前CU的时间层低于层3。
根据段落Q、R、S或T中任一项所述的方法,其中,所述多个运动候选被选择用于以下之一:常规合并模式,与MVD合并,几何分区模式,组合的帧间和帧内模式,基于子块的时间运动矢量预测,仿射合并模式,以及模板匹配模式。
V.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中所述一个或多个处理器(902)根据模板匹配的最低成本值,通过由单向预测运动或双向预测运动从并置CU的运动矢量导出缩放运动矢量来选择时间运动矢量预测候选(“TMVP候选”),模板匹配的成本值包括当前块的模板的样本与邻近当前块的对应参考样本之间的绝对差的和。
W.根据段落V所述的方法,其中,通过将所述TMVP候选缩放为双向预测的运动矢量,然后将所述双向预测的运动矢量转换为单向预测的运动矢量来导出所述缩放的运动矢量。
X.根据段落V所述的方法,其中,所述TMVP候选包括两个TMVP候选,每个TMVP候选通过单向预测运动导出。
Y.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中,所述一个或多个处理器(902)选择时间运动矢量预测候选(“TMVP候选”),并且将所述TVMP候选的参考图像索引设置为除零之外的值。
Z.根据段落Y所述的方法,其中,所述参考图像索引包括缩放因子最接近1的并置图像的参考图像索引。
AA.根据段落Y所述的方法,其中,所述参考图像索引包括针对空间相邻块最频繁地选择的多个参考图像索引中的一个。
AB.根据段落Y所述的方法,还包括由一个或多个处理器(902)在序列级别、图像级别、条带级别或CTU级別语法结构处用信号通知所述参考图像索引。
AC.根据段落Y所述的方法,其中,使用基于子块的时间运动矢量预测(“SbTMVP”)模式对当前块进行编码;并且还包括为所述当前块的不同子块选择至少一些不同的参考图像索引。
AD.根据段落Y所述的方法,其中,使用基于子块的时间运动矢量预测(“SbTMVP”)模式对当前块进行编码;并且还包括:针对所述当前块的每个子块,选择缩放因子最接近1的并置图像的参考图像索引;将当前块的子块中最频繁选择的参考图像索引确定为当前块的一致参考图像索引。
AE.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中,所述一个或多个处理器(902)通过以缩放因子从并置CU的运动矢量导出缩放运动矢量来选择时间运动矢量预测候选(“TMVP候选”),所述缩放因子通过与该缩放因子和一偏移的乘积相加而被偏移。
AF.根据段落AE所述的方法,其进一步包括在序列级别、图像级别、条带级别或CTU级别语法结构处用信号通知所述偏移。
AG.根据段落AF所述的方法,其中,所述偏移的绝对值和所述偏移的符号都被用信号通知。
AH.根据段落AF所述的方法,其中,在不同级别的语法结构处用信号通知所述绝对值和所述符号。
AI.根据段落AF所述的方法,其中,用信号通知所述偏移的符号,并且不用信号通知所述偏移的绝对值。
AJ.根据段落AE所述的方法,其中所述缩放因子针对所述当前图像(706)的每个CU单独地偏移或不偏移。
AK.根据段落AE所述的方法,其中,所述缩放因子对于所述当前图像(706)的每个时间层不同。
AL.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中所述一或多个处理器(902)在所述当前CU的运动矢量类似于并置CU的相邻块的运动矢量的情况下,不选择时间运动矢量预测候选(“TMVP候选”),并且当前CU的相邻块的运动矢量不是从并置CU的相邻块导出的缩放运动矢量。
AM.根据段落AL所述的方法,其中,根据基于当前块的编码模式和所述当前块的大小中的至少一个的相似度阈值来确定相似度。
AN.一种方法,包括:由计算系统(900)的一个或多个处理器(902)选择用于当前图像(706)的当前编码单元(“CU”)的多个运动候选;其中,所述一个或多个处理器(902)基于以下中的至少一个来自适应地改变选择所述多个合并候选的顺序:当前图像(706)的时间层,当前图像(706)是低延迟还是非低延迟,以及当前块的编码模式。
AO.根据段落AN所述的方法,其中,所述一个或多个处理器(902)优选地在用于具有高时间层的当前图像(706)的空间运动矢量预测候选之前选择时间运动矢量预测候选(“TMVP候选”)。
AP.一种方法,包括:由计算系统(900)的一个或多个处理器(902)重建帧间预测编码的当前块;由所述一个或多个处理器(902)使用所述重建块的样本作为模板来执行运动估计;生成所述重建块的细化运动信息;以及由一个或多个处理器(902)选择从所述重建块的细化运动信息导出的时间运动矢量预测候选(“TMVP候选”)。

Claims (12)

1.一种计算系统,包括:
一个或多个处理器,以及
通信地耦合到所述一个或多个处理器的存储器,所述存储器存储可由所述一个或多个处理器执行的前端应用,所述前端应用在由所述一个或多个处理器执行时执行相关联的操作,包括:
为当前图像的当前编码单元(“CU”)选择多个运动候选,其中,通过将时间运动矢量预测候选(“TMVP候选”)的参考图像索引设置为缩放因子最接近1的并置图像的参考图像索引来选择所述TMVP候选。
2.根据权利要求1所述的计算系统,其中,缩放因子包括在以下之间的比率值:
当前图像的参考图像与所述当前图像之间的图像顺序计数(“POC”)差,以及
并置图像与所述并置图像的参考图像之间的POC差。
3.根据权利要求1所述的计算系统,还包括根据合并候选的自适应重新排序(“ARMC”)对所述多个合并候选进行重新排序。
4.根据权利要求1所述的计算系统,其中所述多个合并候选中的多个TMVP候选基于模板匹配通过成本值重新排序,其中,合并候选的模板匹配成本值包括所述当前块的模板的样本与相应参考样本之间的绝对差之和(“SAD”)。
5.一种方法,包括:
为当前图像的当前编码单元(“CU”)选择多个运动候选,其中,通过将时间运动矢量预测候选(“TMVP候选”)的参考图像索引设置为缩放因子最接近1的并置图像的参考图像索引来选择所述TMVP候选。
6.根据权利要求5所述的方法,其中,缩放因子包括在以下之间的比率值:
当前图像的参考图像与所述当前图像之间的图像顺序计数(“POC”)差,以及
并置图像与所述并置图像的参考图像之间的POC差。
7.根据权利要求5所述的方法,还包括根据合并候选的自适应重新排序(“ARMC”)对所述多个合并候选重新排序。
8.根据权利要求5所述的方法,其中所述多个合并候选中的多个TMVP候选基于模板匹配通过成本值重新排序,其中,合并候选的模板匹配成本值包括所述当前块的模板的样本与相应参考样本之间的绝对差之和(“SAD”)。
9.一种非暂时性计算机可读存储媒体,其存储用于根据方法进行处理的视频的位流,所述方法包括:
由计算系统的一个或多个处理器响应于接收到所述位流,解析在编码单元(“CU”)的语法结构中用信号通知的合并索引;
由所述一个或多个处理器响应于接收到所述位流,选择所述CU的多个运动候选,其中,通过将时间运动矢量预测候选(“TMVP候选”)的参考图像索引设置为缩放因子最接近1的并置图像的参考图像索引来选择所述TMVP候选;以及
由所述一个或多个处理器且响应于接收到所述位流,基于所述合并索引及所述多个运动候选通过应用合并模式来执行所述CU的帧间预测。
10.根据权利要求9所述的非暂时性计算机可读存储介质,其中缩放因子包括以下各项之间的比率:
当前图像的参考图像与所述当前图像之间的图像顺序计数(“POC”)差,以及
并置图像与所述并置图像的参考图像之间的POC差。
11.根据权利要求9所述的非暂时性计算机可读存储媒体,其中所述方法进一步包括根据合并候选的自适应重新排序(“ARMC”)对所述多个合并候选重新排序。
12.根据权利要求9所述的非暂时性计算机可读存储介质,其中所述多个合并候选中的多个TMVP候选基于模板匹配通过成本值重新排序,其中,合并候选的模板匹配成本值包括所述当前块的模板的样本与相应参考样本之间的绝对差之和(“SAD”)。
CN202280063449.5A 2021-09-29 2022-09-28 视频编码中合并候选列表中改进的时间合并候选 Pending CN118077195A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163250208P 2021-09-29 2021-09-29
US63/250,208 2021-09-29
PCT/SG2022/050701 WO2023055298A2 (en) 2021-09-29 2022-09-28 Improved temporal merge candidates in merge candidate lists in video coding

Publications (1)

Publication Number Publication Date
CN118077195A true CN118077195A (zh) 2024-05-24

Family

ID=85783722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280063449.5A Pending CN118077195A (zh) 2021-09-29 2022-09-28 视频编码中合并候选列表中改进的时间合并候选

Country Status (4)

Country Link
US (1) US20230115768A1 (zh)
KR (1) KR20240088912A (zh)
CN (1) CN118077195A (zh)
WO (1) WO2023055298A2 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12022085B2 (en) * 2021-04-12 2024-06-25 Qualcomm Incorporated Template matching refinement in inter-prediction modes

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150090031A (ko) * 2012-11-27 2015-08-05 인텔렉추얼디스커버리 주식회사 깊이 정보를 이용한 부호화/복호화 방법 및 장치
CN116567225A (zh) * 2016-08-11 2023-08-08 Lx 半导体科技有限公司 编码/解码设备以及发送图像数据的设备
US20180310017A1 (en) * 2017-04-21 2018-10-25 Mediatek Inc. Sub-prediction unit temporal motion vector prediction (sub-pu tmvp) for video coding
WO2018205914A1 (en) * 2017-05-10 2018-11-15 Mediatek Inc. Method and apparatus of reordering motion vector prediction candidate set for video coding
CN118200552A (zh) * 2018-03-19 2024-06-14 株式会社Kt 对图像进行解码或编码的方法以及非暂态计算机可读介质
WO2020147745A1 (en) * 2019-01-15 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Motion candidate lists that use local illumination compensation
WO2020147747A1 (en) * 2019-01-15 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Weighted prediction in video coding
CN113302919A (zh) * 2019-01-17 2021-08-24 北京字节跳动网络技术有限公司 在视频处理中使用虚拟候选预测和加权预测
WO2020173477A1 (en) * 2019-02-27 2020-09-03 Beijing Bytedance Network Technology Co., Ltd. Regression-based motion vector field based sub-block motion vector derivation

Also Published As

Publication number Publication date
US20230115768A1 (en) 2023-04-13
KR20240088912A (ko) 2024-06-20
WO2023055298A3 (en) 2023-06-08
WO2023055298A2 (en) 2023-04-06

Similar Documents

Publication Publication Date Title
TWI805627B (zh) 視訊寫碼中之仿射預測
JP7218287B2 (ja) ビデオコード化のためのツリータイプコード化
CN112956190B (zh) 仿射运动预测
CN114731398B (zh) 视频译码中的跨分量自适应环路滤波器
CN113196749B (zh) 用于译码视频数据的方法和设备
US9826244B2 (en) Device and method for scalable coding of video information based on high efficiency video coding
KR20230143590A (ko) 인터 예측 방법 및 그 장치
EP2756674B1 (en) Motion vector determination for video coding
CN112534821B (zh) 运动向量预测子列表生成
KR20200116462A (ko) 비디오 코딩을 위한 인트라-블록 카피
CN112806012A (zh) 用于帧间预测译码的基于历史的运动向量预测
CN113812153B (zh) 用于视频译码的方法和设备
CN113727101A (zh) 编码器、解码器及对应帧间预测方法
CN110771164A (zh) 视频译码中的帧间预测与帧内预测的组合
JP2022521979A (ja) デコーダ側動きベクトル改良に対する制約
TW202415068A (zh) 視訊寫碼中之三角合併模式索引之發信
KR20210093926A (ko) 비디오 코딩을 위한 삼각형 모션 정보
KR20210128396A (ko) 비디오 코딩에서 모션 벡터 차이들에 의한 병합 모드를 위한 시그널링
US9693060B2 (en) Device and method for scalable coding of video information
WO2020056024A1 (en) Vector predictor list generation
EP3891988A1 (en) Spatio-temporal motion vector prediction patterns for video coding
CN113892264A (zh) 使用非矩形预测模式来减少用于视频数据预测的运动场存储
US20230115768A1 (en) Improved temporal merge candidates in merge candidate lists in video coding
KR20220145407A (ko) 직사각형 슬라이스의 크기 정보를 선택적으로 부호화 하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
WO2021007547A1 (en) Motion vector prediction with motion information collecting buffer

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