CN111886869B - 图像解码方法、编码方法以及存储比特流的记录介质 - Google Patents

图像解码方法、编码方法以及存储比特流的记录介质 Download PDF

Info

Publication number
CN111886869B
CN111886869B CN201980019969.4A CN201980019969A CN111886869B CN 111886869 B CN111886869 B CN 111886869B CN 201980019969 A CN201980019969 A CN 201980019969A CN 111886869 B CN111886869 B CN 111886869B
Authority
CN
China
Prior art keywords
sad
block
motion information
unit
motion
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
CN201980019969.4A
Other languages
English (en)
Other versions
CN111886869A (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.)
Intellectual Discovery Co Ltd
Original Assignee
Intellectual Discovery 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 Intellectual Discovery Co Ltd filed Critical Intellectual Discovery Co Ltd
Priority to CN202311502761.2A priority Critical patent/CN117640961A/zh
Priority to CN202311503419.4A priority patent/CN117544787A/zh
Priority to CN202311506471.5A priority patent/CN117640962A/zh
Priority to CN202311509601.0A priority patent/CN117336506A/zh
Publication of CN111886869A publication Critical patent/CN111886869A/zh
Application granted granted Critical
Publication of CN111886869B publication Critical patent/CN111886869B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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

Landscapes

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

Abstract

本发明提供了图像编码方法和图像解码方法。根据本发明的用于通过解码器侧运动信息导出来对图像进行解码的图像解码方法包括以下步骤:在多个运动信息导出类型中检查被应用于当前块的运动信息导出类型;以及根据检查出的运动信息导出类型导出当前块的运动信息,其中,能够根据运动信息导出类型应用不同的运动信息补偿技术。

Description

图像解码方法、编码方法以及存储比特流的记录介质
技术领域
本发明涉及图像编码/解码方法和设备。更具体地,本发明涉及使用解码器侧运动导出的图像解码方法/设备以及与其对应的图像编码方法/设备。
背景技术
对高分辨率视频的市场需求正在增加,因此,需要能够高效地压缩高分辨率视频的技术。根据这些市场需求,ISO/IEC的运动图像专家组(MPEG)和ITU-T的视频编码专家组(VCEG)联合成立JCT-VC(视频编码联合协作组),在2013年1月完成了HEVC(高效视频压缩编码)视频压缩标准的开发,并且已经在积极地研究和开发下一代压缩标准。
视频压缩主要由帧内预测、帧间预测、变换、量化、熵编码和环内滤波器组成。同时,随着对高分辨率视频的需求增加,对作为一种新视频服务的立体视频内容的需求也增加。正在讨论用于有效地提供高分辨率和超高分辨率立体图像内容的视频压缩技术。
关于这一点,对于帧间预测,针对每个当前块生成运动信息并且用信号发送所有生成的运动信息可能导致编码或编码器效率劣化的问题。
发明内容
技术问题
本发明的目的是提供具有改进的效率的图像编码/解码方法和设备。特别地,本发明的目的是提供应用了解码器侧运动信息导出的图像解码方法和设备。另外,本发明的目的是提供应用了解码器侧运动信息导出的图像编码方法和设备。
另外,本发明的目的是提供一种图像解码方法和设备,其当在解码器侧使用一个或更多个运动信息导出方法导出运动信息时,根据目标运动信息导出方法使用不同的运动信息校正方法。
另外,本发明的目的是提供一种图像解码方法和设备,其包括当在解码器侧中使用一个或更多个运动信息导出方法导出运动信息时满足特定条件的情况下提前终止运动信息导出过程的方法。
另外,本发明的目的是提供一种图像解码方法和设备,其当在解码器侧使用一个或更多个运动信息导出方法导出运动信息时,使用子采样块匹配。
另外,本发明的目的是提供一种图像编码方法和设备,其用信号发送和提供相关信息以在解码器侧使用一个或更多个运动信息导出方法导出运动信息。
本发明的另一个目的是提供存储由视频编码方法/设备生成的比特流的计算机可读记录介质。
技术解决方案
根据本发明的视频编码/解码方法和设备可以确定用于改进当前块的运动信息的搜索区域,生成用于该搜索区域的SAD列表,基于SAD列表的SAD候选导出当前块的变化量运动信息,并且使用当前块的运动信息和变化量运动信息来更新当前块的运动信息。
在根据本发明的视频编码/解码方法和设备中,SAD列表可以包括多个SAD候选。
在根据本发明的图像编码/解码方法和设备中,搜索区域被确定为包括参考块或者参考块的相邻区域至少一者的区域,并且相邻区域可以是从参考块的边界延伸N条样本线的区域。
在根据本发明的视频编码/解码方法和设备中,可以通过L0块与L1块之间的SAD值来确定SAD候选。L0块可以基于当前块的L0参考块的位置和预定偏移来确定。L1块可以基于当前块的L1参考块的位置和预定偏移来确定。
在根据本发明的图像编码/解码方法和设备中,偏移可以包括非有向偏移或有向偏移中的至少一者。有向偏移可以包括针对左、右、上、下、左上、右上,左下或者右下至少一个方向的偏移。
在根据本发明的图像编码/解码方法和设备中,可以基于参考SAD候选与预定阈值之间的比较结果执行导出变化量运动信息的步骤,并且参考SAD候选可以指与非有向偏移对应的SAD候选。
在根据本发明的图像编码/解码方法和设备中,在参考SAD候选大于或等于阈值的情况下,导出变化量运动信息的步骤可以包括:识别属于SAD列表的SAD候选中具有最小值的SAD候选;以及基于与所识别的SAD候选对应的偏移来确定变化量运动信息。
在根据本发明的图像编码/解码方法和设备中,在参考SAD候选小于阈值的情况下,导出变化量运动信息的步骤可以包括:使用属于SAD列表的SAD候选中的全部或者一部分SAD候选来计算预定参数;以及基于所计算的参数确定变化量运动信息。
在根据本发明的图像编码/解码方法和设备中,可以通过考虑块大小、当前图片与参考图片之间的距离、帧间预测模式、预测方向或者运动信息的单位/分辨率中至少一者来有限地执行当前块的运动信息的更新。
有益效果
根据本发明,可以提供如下所述的具有改进的效率的图像编码/解码方法和设备。
首先,根据本发明,由于解码器使用一种或更多种运动信息导出方法导出运动信息,因此可以提供用于改进编码效率的图像解码方法和设备。
其次,根据本发明,当在解码器侧使用一种或更多种运动信息导出方法时,通过根据运动信息导出方法使用不同的运动信息校正方法,可以提供用于改进解码效率的图像解码方法和设备。
第三,根据本发明,当在解码器侧使用一种或更多种运动信息导出方法时,通过使用当满足特定条件时提前终止运动信息导出处理的方法,提供了用于改进解码效率的图像解码方法和设备的处理。
此外,根据本发明,可以提供存储有由根据本发明的视频编码方法/设备生成的比特流的计算机可读记录介质。
附图说明
图1是示出根据本发明的图像编码设备的框图。
图2是示出根据本发明的图像解码设备的框图。
图3示出了根据本发明的作为用于在解码器侧导出运动信息的方法之一的使用模板匹配的运动信息导出方法的构思。
图4是示出根据本发明的作为用于在解码器侧导出运动信息的方法之一的使用双向匹配的运动信息导出方法的构思的图。
图5是根据本发明的实施方式的解码方法的流程图的示例。
图6和图7示出了根据本发明的实施方式的解码方法的另一流程图。
图8是示出根据本发明的实施方式的解码方法的另一流程图的图。
图9是示出菱形搜索和十字搜索方法的图。
图10和图11是示出根据本发明的实施方式的解码方法的另一流程图的图。
图12示出了执行块匹配的目标块和块中的子采样像素的示例。
图13示出了将上述图12的子采样像素应用于使用模板匹配导出运动信息的方法的方法。
图14示出了将上述图12的子采样像素应用于使用双向匹配导出运动信息的方法的方法。
图15示出了构造关于初始搜索位置选择的运动候选列表以在解码器侧导出运动信息的示例。
图16示出了根据本发明的子块的并行处理的构思。
图17示出了例如被应用于子块并行处理的经修改的运动候选列表。
具体实施方式
最佳实施方式
根据本发明的视频编码/解码方法和设备可以确定用于改进当前块的运动信息的搜索区域,生成针对该搜索区域的SAD列表,基于SAD列表中的SAD候选导出当前块的变化量运动信息,并且使用当前块的运动信息和变化量运动信息来更新当前块的运动信息。
在根据本发明的视频编码/解码方法和设备中,SAD列表可以包括多个SAD候选。
在根据本发明的图像编码/解码方法和设备中,搜索区域被确定为包括参考块或参考块的相邻区域至少一者的区域,并且该相邻区域可以是从参考块的边界延伸N个样本线的区域。
在根据本发明的视频编码/解码方法和设备中,可以通过L0块与L1块之间的SAD值来确定SAD候选。L0块可以基于当前块的L0参考块的位置和预定偏移来确定。L1块可以基于当前块的L1参考块的位置和预定偏移来确定。
在根据本发明的图像编码/解码方法和设备中,偏移可以包括非有向偏移或有向偏移中的至少一者。有向偏移可以包括针对左、右、上、下、左上、右上,左下或者右下至少一个方向的偏移。
在根据本发明的图像编码/解码方法和设备中,可以基于参考SAD候选与预定阈值之间的比较结果执行导出变化量运动信息的步骤,并且参考SAD候选可以指与非有向偏移对应的SAD候选。
在根据本发明的图像编码/解码方法和设备中,在参考SAD候选大于或等于阈值的情况下,导出变化量运动信息的步骤可以包括:识别属于SAD列表的SAD候选中具有最小值的SAD候选;以及基于与所识别的SAD候选对应的偏移来确定变化量运动信息。
在根据本发明的图像编码/解码方法和设备中,在参考SAD候选小于阈值的情况下,导出变化量运动信息的步骤可以包括:使用属于SAD列表的SAD候选中的全部或者一部分SAD候选来计算预定参数;以及基于所计算的参数确定变化量运动信息。
在根据本发明的图像编码/解码方法和设备中,可以通过考虑块大小、当前图片与参考图片之间的距离、帧间预测模式、预测方向或者运动信息的单位/分辨率中至少一者来有限地执行当前块的运动信息的更新。
本发明的实施方式
在下文中,将参照本发明的附图详细描述本发明的实施方式,使得本领域技术人员可以容易地实现本发明。然而,本发明可以以许多不同的形式实施,并且不应该被解释为限于本文所阐述的实施方式。为了清楚地说明本发明,贯穿说明书省略了与描述无关的部件并且用相似的附图标记表示类似的部件。
在整个说明书中,当声称一个部分“连接”到另一个部分时,不仅包括这两个部分直接连接的示例,而且包括该部分与另一部件在其间电连接的示例。
此外,贯穿说明书,在部件被称为“包括”元件时,应当理解,除非另有特别说明,否则该元件也可以包括其他元件而不是与其他元件分离。
另外,可能使用术语第一、第二等来描述各种部件,但是部件不应受该术语限制。这些术语仅用于将一个部件与另一部件区分开的目的。
另外,在本文所述的装置和方法的实施方式中,可以省略装置的一些部件或者方法的一些步骤。另外,可以改变装置的一些部件的顺序或者方法的一些步骤的顺序。此外,可以将其他部件或者其他步骤插入装置的一些部件或者方法的一些步骤中。
另外,本发明的第一实施方式的一些部件或者步骤可以被添加到本发明的第二实施方式,或者可以替换第二实施方式的一些部件或者步骤。
另外,本发明的实施方式中示出的部件被独立示出以指示不同的特征功能,而不意味着每个部件都由单独的硬件或者一个软件部件单元组成。即,为了便于描述,每个部件被列出为每个部件,并且每个部件的至少两个部件可以被组合以形成一个部件,或者一个部件可以被分成多个部件以执行功能。在不脱离本发明的本质的情况下,这些部件中的每一个的集成和分离的实施方式也被包括在本发明的范围内。
首先,将如下简要描述本申请中使用的术语。
稍后将描述的解码设备(视频解码设备)可以是民用安全摄像机、民用安全系统、军用安全摄像机、军用安全系统、个人计算机(PC)、笔记本计算机、便携式多媒体播放器(PMP)、无线通信终端、智能电话、包括在诸如TV应用服务器和服务服务器的服务器终端中的设备,并且可以表示诸如各种设备的用户终端、诸如用于执行与有线/无线通信网络的通信的调制解调器的通信设备、用于存储用于对图像进行解码或者执行用于解码的帧间预测或帧内预测的各种程序和数据的存储器、配备有用于执行程序并且计算和控制程序的微处理器等的各种设备。
另外,被编码器编码为比特流的图像可以通过实时或者非实时的有线/无线通信网络(例如因特网、局域无线通信网络、无线LAN网络、WiBro网络、移动通信网络),或者通过诸如线缆、通用串行总线(USB)等的各种通信接口被发送到图像解码设备,被解码、重构为图像并且被再现。替选地,由编码器生成的比特流可以存储在存储器中。存储器可以包括易失性存储器和非易失性存储器两者。在本说明书中,存储器可以被表示为存储比特流的记录介质。
通常,视频可以由一系列图片组成,并且每个图片可以被划分成诸如块的编码单元。另外,具有本实施方式所属技术领域的普通知识的人可以理解,可以通过将下文描述的术语“图片”替换为具有等同含义的另一术语如“图像”或者“帧”来使用该术语。另外,本实施方式所属领域的普通技术人员将理解,术语“编码单元”可以被具有相同含义的其他术语代替和使用,例如“单元块”和“块”。
在下文中,将详细参考附图描述本发明的示例性实施方式。在描述本发明时,将省略对相同部件的冗余描述。
图1是示出根据本发明的图像编码设备的框图。参照图1,常规图像编码设备100包括图片划分单元110、预测单元120、125、变换单元130、量化单元135、重排单元160以及熵编码单元165、逆量化单元140、逆变换单元145、滤波器单元150和存储器155。
图片划分单元110可以将输入图片划分成至少一个处理单元。在这种情况下,处理单元可以是预测单元(PU)、变换单元(TU)或编码单元(CU)。在下文中,在本发明的实施方式中,编码单元可以用作执行编码的单位的含义,或者可以用作执行解码的单位的含义。
可以通过将一个编码单元划分为相同大小的至少一个正方形或非正方形形状来获得预测单元。一个编码单元可以被划分成使得预测单元中的一个预测单元具有与另一预测单元不同的形状和/或大小。当基于编码单元执行帧内预测的预测单元不是最小编码单元时,可以执行帧内预测而不将其划分为多个N×N预测单元。
预测单元120和125可以包括执行帧间预测的帧间预测单元120以及执行帧内预测的帧内预测单元125。可以确定针对预测单元使用帧间预测还是帧内预测,并且可以确定根据每种预测方法的特定信息(例如,帧内预测模式、运动矢量、参考图片等)。所生成的预测块与原始块之间的残差值(残差块)可以被输入到变换单元130。另外,可以由熵编码单元165将用于预测的预测模式信息、运动矢量信息等连同残差值一起编码并且发送到解码器。然而,当应用根据本发明的解码器侧运动信息导出方法时,由于预测模式信息、运动矢量信息等并非在编码器中生成,因此对应信息不被发送到解码器。另一方面,可以从编码器用信号发送指示运动信息在解码器侧被导出和使用的信息以及关于用来导出运动信息的方法的信息。
帧间预测单元120可以基于当前图片的先前图片或后续图片至少一者的信息来预测预测单元,并且在一些情况下,可以基于当前图片中已完成编码的一些区域的信息来预测预测单元。帧间预测单元120可以包括参考图片插值单元、运动预测单元和运动补偿单元。
参考图片插值单元可以从存储器155接收参考图片信息,并且生成参考图片中的整数像素或更小像素的像素信息。在亮度像素的情况下,可以使用具有不同滤波器系数的基于DCT的8抽头插值滤波器(基于DCT的插值滤波器)以1/4像素为单位生成整数像素或更小像素的像素信息。在色度信号的情况下,可以使用具有不同滤波器系数的基于DCT的4抽头插值滤波器(基于DCT的插值滤波器)以1/8像素为单位生成整数像素或更小像素的像素信息。
运动预测单元可以基于由参考图片插值单元进行插值的参考图片来执行运动预测。可以使用各种方法作为用于计算运动矢量的方法,例如基于完全搜索的块匹配算法(FBMA)、三步搜索(TSS)和新三步搜索算法(NTS)。运动矢量可以具有基于插值像素的以1/2或1/4像素为单位的运动矢量值。运动预测单元可以通过不同地使用运动预测方法来预测当前预测单元。可以使用诸如跳跃(skip)方法、合并方法、AMVP(高级运动矢量预测)方法和帧内块复制方法的各种方法作为运动预测方法。另外,当应用根据本发明的解码器侧的运动信息导出方法时,可以应用模板匹配方法和使用运动轨迹的双向匹配(双边匹配)方法作为由运动预测单元执行的方法。相关地,稍后将在图3中详细描述模板匹配方法和双向匹配方法。
帧内预测单元125可以基于当前块周围的参考像素信息生成预测单元,该参考像素信息是当前图片中的像素信息。当当前预测单元的相邻块是执行帧间预测的块并且参考像素是执行帧间预测的像素时,可以通过将执行帧间预测的块中包括的参考像素信息替换为该执行帧间预测的块周围的执行帧内预测的块的参考像素信息的方式使用在执行帧间预测的块中包括的参考像素。即,当参考像素不可用时,可以通过用可用参考像素中的至少一个参考像素进行替换的方式使用该不可用参考像素信息。
另外,可以生成包括残差信息的残差块,该残差信息是基于由预测单元120和125生成的预测单元来执行预测的预测单元与预测单元的原始块之间的差值。所生成的残差块可以被输入到变换单元130。
变换单元130可以通过使用诸如DCT(离散余弦变换)、DST(离散正弦变换)和KLT的变换方法来对包括有由预测单元120和125生成的预测单元与原始块之间的残差信息的残差块进行变换。可以基于用来生成残差块的预测单元的帧内预测模式信息来确定是应用DCT、DST还是KLT来对残差块进行变换。
量化单元135可以对由变换单元130变换到频域的值进行量化。量化系数可以根据图像的块或重要性而变化。由量化单元135计算出的值可以被提供给逆量化单元140和重排单元160。
重排单元160可以对量化后的残差值的系数值执行重排。
重排单元160可以通过系数扫描方法将二维块形式的系数改变为一维矢量形式。例如,重排单元160可以通过根据之字形(Zig-Zag)扫描方法从DC系数到高频区域中的系数进行扫描来改变为一维矢量形式。除了之字形扫描外,根据变换单元的大小和帧内预测模式,可以使用在列方向上扫描二维块形式的系数的竖直扫描和在行方向上扫描二维块形式的系数的水平扫描。即,可以根据变换单元的大小和帧内预测模式来确定使用之字形扫描、竖直扫描和水平扫描中的哪一个。
熵编码单元165可以基于由重排单元160计算出的值来执行熵编码。可以使用各种编码方法来进行熵编码,例如指数Golomb、CAVLC(上下文自适应可变长度编码)和CABAC(上下文自适应二进制算术编码)。关于这一点,熵编码单元165可以对来自重排单元160以及预测单元120和125的编码单元的残差系数信息进行编码。此外,根据本发明,可以从编码器用信号发送指示运动信息在解码器侧被导出和使用的信息以及关于用来导出运动信息的方法的信息。
逆量化单元140和逆变换单元145对由量化单元135量化的值进行逆量化以及对由变换单元130变换的值进行逆变换。可以通过将由逆量化单元140和逆变换单元145生成的残差值与通过预测单元120和125中包括的运动估计单元、运动补偿单元和帧内预测单元预测的预测单元进行组合来生成重构块。
滤波器单元150可以包括去块滤波器、偏移校正单元和自适应环路滤波器(ALF)中的至少一个。去块滤波器可以去除由重构图片中的块之间的边界引起的块失真。偏移校正单元可以针对经去块滤波的图像以像素为单位校正相对于原始图像的偏移。为了对特定图片执行偏移校正,在将图像中包括的像素分类为一定数目的区域并且确定偏移被施加到的区域之后,可以使用对区域偏移施加偏移的方法或者使用通过考虑每个像素的边缘信息来施加偏移的方法。可以基于通过将经滤波的重构图像与原始图像进行比较而获得的值来执行ALF(自适应环路滤波)。在将图像中包括的像素分类为预定组之后,可以确定要应用于该组的一个滤波器以针对每个组不同地执行滤波。
存储器155可以存储从滤波器单元150输出的重构块或图片,并且在执行帧间预测时,所存储的重构块或图片可以被提供给预测单元120和125。
图2是示出根据本发明的图像解码设备的框图。参照图2,图像解码器200可以包括熵解码单元210、重排单元215、逆量化单元220、逆变换单元225、预测单元230、235以及滤波器单元240、存储器245。
当从图像编码器输入图像比特流时,可以以与图像编码器的过程相反的过程对输入的比特流进行解码。
熵解码单元210可以以与由图像编码器的熵编码单元中的熵编码执行的过程相反的过程来执行熵解码。例如,可以应用与在图像编码器中执行的方法对应的各种方法,例如指数Golomb(CAVLC)、上下文自适应可变长度编码(CAVLC)和上下文自适应二进制算术编码(CABAC)。
熵解码单元210可以对与由编码器执行的帧内预测和帧间预测相关的信息进行解码。
重排单元215可以基于编码单元的重排方法对由熵解码单元210熵解码的比特流进行重排。一维矢量形式的系数可以再次被重排为二维块形式的系数。
逆量化单元220可以基于由编码器提供的量化参数和重排块的系数来执行逆量化。
逆变换单元225可以对由图像编码器执行的量化结果执行与由变换单元执行的变换(即,DCT、DST和KLT)对应的逆变换,即,逆DCT、逆DST和逆KLT。可以基于由图像编码器确定的传输单元来执行逆变换。在图像解码器的逆变换单元225中,可以根据多种信息例如预测方法、当前块的大小和预测方向来选择性地执行变换方法(例如,DCT、DST、KLT)。
预测单元230和235可以基于由熵解码单元210提供的与预测块生成相关的信息以及由存储器245提供的先前解码的块或图片信息来生成预测块。
如上所述,当在以与图像编码器中相同的方式执行帧内预测时预测单元的大小和变换单元的大小相同时,可以基于位于预测单元左侧、左上侧和上侧的像素来执行预测单元的帧内预测。然而,当在执行帧内预测时预测单元的大小和变换单元的大小不同时,可以使用基于变换单元的参考像素来执行帧内预测。另外,使用N×N划分的帧内预测可以仅用于最小编码单元。
预测单元230和235可以包括预测单元确定单元、帧间预测单元和帧内预测单元。预测单元确定单元可以从熵解码单元210接收各种信息例如预测单元信息、帧内预测方法的预测模式信息、以及帧间预测方法的运动预测相关信息,对当前编码单元中的预测单元分类,并且确定预测单元执行帧间预测还是帧内预测。另一方面,如果没有发送用于帧间预测的运动预测相关信息,而是从编码器100发送了指示运动信息在解码器侧被导出和使用的信息以及关于用来导出运动信息的方法的信息,则预测单元确定单元基于从编码器100发送的信息来确定帧间预测单元23的预测性能。
帧间预测单元230可以通过使用由图像编码器提供的当前预测单元的帧间预测所需的信息,基于包括有当前预测单元的当前图片的先前图片或后续图片中的至少一个中包括的信息,对当前预测单元执行帧间预测。为了执行帧间预测,可以在跳过模式、合并模式、AMVP模式和帧内块复制模式之中确定编码单元中包括的预测单元的运动预测方法。替选地,帧间预测单元230可以通过根据由图像编码器提供的指示运动信息在解码器侧被导出和使用的信息以及关于用来导出运动信息的方法的信息导出运动信息来执行帧间预测。
帧内预测单元235可以基于当前图片中的像素信息来生成预测块。在预测单元是已经执行帧内预测的预测单元的情况下,可以基于由图像编码器提供的预测单元的帧内预测模式信息来执行帧内预测。帧内预测单元235可以包括自适应帧内平滑(AIS)滤波器、参考像素插值单元和DC滤波器。AIS滤波器是对当前块的参考像素执行滤波的部分,并且可以通过根据当前预测单元的预测模式确定是否应用该滤波器来应用。可以通过使用由图像编码器提供的预测单元的AIS滤波器信息和预测模式对当前块的参考像素执行AIS滤波。在当前块的预测模式是不执行AIS滤波的模式的情况下,可以不应用AIS滤波器。
在预测单元的预测模式是基于通过对参考像素进行插值而获得的像素值来执行帧内预测的预测单元的情况下,参考像素插值单元可以对参考像素进行插值以生成整数像素或更小像素的参考像素。在当前预测单元的预测模式是无需对参考像素进行插值而生成预测块的预测模式的情况下,可以不对参考像素进行插值。在当前块的预测模式是DC模式的情况下,DC滤波器可以通过滤波来生成预测块。
重构的块或图片可以被提供给滤波器单元240。滤波器单元240可以包括去块滤波器、偏移校正单元和ALF。
可以从视频编码器提供关于是否向对应的块或图片应用去块滤波器的信息以及关于在应用去块滤波器时应用强滤波器还是弱滤波器的信息。在视频解码器的去块滤波器中,可以提供与由视频编码器提供的与去块滤波器相关的信息,并且视频解码器可以对相应块执行去块滤波。
偏移校正单元可以基于偏移校正的类型以及在编码期间应用于图像的偏移值信息对重构图像执行偏移校正。可以基于由编码器提供的关于是否应用ALF的信息、ALF系数信息等来对编码单元应用ALF。该ALF信息可以由特定参数集提供。
存储器245可以存储重构图片或块,使得重构图片或块可以用作参考图片或者参考块,并且还可以将重构图片提供给输出单元。
图3示出了根据本发明的作为用于在解码器侧导出运动信息的方法之一的使用模板匹配的运动信息导出方法的构思。即,编码器100中的帧间预测单元120和解码器200中的帧间预测单元230以相同方式使用模板匹配来执行运动信息导出方法,这将在后面描述。因此,编码器100不发送在编码期间生成的残差信号以及与预测相关的运动信息,或者甚至仅发送残差信号,解码器200自身可以使用模板匹配方法导出运动信息,然后重构运动信息。在下文中,将详细描述使用模板匹配导出运动信息的方法。
参照图3,使用模板匹配(在下文中也称为“TM”)导出运动信息是指基于当前的编码与解码目标图片300中的与当前目标块310在空间上相邻的多个像素与位于参考图片301和302中的相同形状的像素之间的像素相似度导出运动信息的方法。此处,与当前目标块300在空间上相邻的多个像素以及位于参考图片301和302中的相同形状的像素被称为模板。因此,模板的形状可以是预定形式,或者可以通过高级语法发送。
可以针对当前目标块300配置一个或更多个模板,并且如图3所示,可以分别使用在上侧相邻的模板130以及在左侧相邻的模板330。另外,每个模板可以被配置有参考图片中的相同形状和大小的模板。在参考图片中配置的模板可以由与当前目标块300的上侧相邻模板320对应的上侧模板321和322以及与当前目标块300的左侧相邻模板330对应的左侧模板(331、332)组成。
此处,检查上侧相邻像素和左侧相邻像素是否可配置,并且仅在可以使用上侧相邻像素和左侧相邻像素配置模板的情况下才配置模板。可以通过使用预定义的一个或更多个模板中的除了不可配置的模板之外的一些模板来执行模板匹配。
相关地,模板不可配置的情况可以是当前目标块位于图片、图块和切片边界处的情况。
图4是示出根据本发明的作为用于在解码器侧导出运动信息的方法之一的使用双向匹配的运动信息导出方法的构思的图。即,编码器100中的帧间预测单元120和解码器200中的帧间预测单元230使用双向匹配执行同一运动信息导出方法。因此,编码器100不发送在编码期间生成的残差信号以及与预测相关的运动信息,或者甚至仅发送残差信号,解码器200自身使用双向匹配方法导出运动信息,然后重构运动信息。在下文中,将详细描述使用双向匹配导出运动信息的方法。
参照图4,使用双向匹配(在下文中也称为“BM”)导出运动信息是指基于位于要编码和解码的当前图片300中的当前目标块310的两个方向上的参考图片(301、302)中的两个不同参考块(401、402)之间的像素相似度导出运动信息的方法。
此处,使用一个运动轨迹(400)来选择位于当前目标块310的两个方向上的参考图片301和302中的两个不同参考块401和402。
参照图4,根据本发明的实施方式,可以通过使用一个运动轨迹400来连接以当前目标块310为中心的两个不同的参考图片301和302。另外,可以在连接位置处配置与当前目标块310对应的具有相同大小和形状的参考块401和402。
根据本发明的实施方式的双向匹配方法包括以下处理:配置与当前目标块310对应的相同大小和形状的参考块401和402,并且获得使这两个参考块401和402中的像素之间的误差最小化的运动轨迹(400)。
图5是根据本发明的实施方式的解码方法的流程图的示例。特别地,图5涉及选择了解码器侧的导出运动信息的模式时解码的流程图。
在本发明中,将描述使用一种或更多种运动信息导出方法导出解码器侧的运动信息的情况作为实施方式。所述一种或更多种运动信息导出方法的示例包括模板匹配(TM)方法和双向匹配(BM)方法。
具体地,在针对当前目标块选择使用解码器侧运动矢量导出(DMVD)方法的模式的情况下,通过根据一个或更多个编码单元导出和修改运动信息,在解码器侧直接导出当前目标块以及通过划分当前目标块得到的子块的运动信息,而无需用信号发送信息。
参照图5,假设根据本发明的实施方式,针对当前目标块选择使用解码器侧运动矢量导出(DMVD)方法的模式(S300)。此处,包括基于指示多种解码器侧运动信息导出方法之一的信息来确定是否使用模板匹配(S310)。在步骤S310中,如果当前目标块使用模板匹配(TM),则以CU为单位使用模板匹配方法导出运动信息并且修改运动信息(S320);并且包括以子块为单位使用模板匹配方法附加地修改运动信息(S330)。另外,如果在步骤S310中当前目标块使用双向匹配(BM),则以CU为单位使用双向匹配方法导出运动信息并且修改运动信息(S321),并且包括以子块为单位使用双向匹配方法附加地修改运动信息(S331)。
此处,CU表示编码单元,并且意指编码和解码步骤中的编码单位。另外,子块是通过划分CU得到的多个子块之一。
在步骤(S320,S321)中获得的以CU为单位导出运动信息的结果是当前编码目标块的基于CU单元的最佳运动信息,并且基于CU单元的最佳运动信息可以用作以子块为单位附加地修改运动信息的步骤(S330,S331)中的修改的初始值。
图6示出了根据本发明的实施方式的解码方法的另一流程图。特别地,更详细地示出了在针对当前块选择在解码器侧导出运动信息的模式的情况下执行解码的方法。
在选择了由本发明提出的在解码器侧导出运动信息的模式的情况下,执行大致两个步骤的运动信息导出处理。由于在编码器和解码器中以相同方式执行运动信息导出处理,因此可以在无需从编码器发送至解码器的信息的情况下导出运动。
如图5和图6所示,由本发明提出的在解码器侧导出运动信息的处理可以被分类为CU单元改进步骤(S400)和子块单元改进步骤(S420)。
可以依次执行CU单元改进步骤(S400)和子块单元改进步骤(S420),但是也可以根据是否执行子块单元改进步骤(S420)的确定结果(S410)而仅单独执行CU单元改进步骤(S400)。
CU单元改进步骤(S400)和子块单元改进步骤(S420)中包括的处理被等同地应用于上述模板匹配方法和双向匹配方法,但是在搜索和确定步骤中,不同地应用确定像素相似度的匹配方法。
具体地,CU单元改进步骤(S400)包括CU单元运动候选列表生成步骤(S401)、CU单元最佳运动确定步骤(S402)和CU单元改进搜索步骤(S403)。
CU单元运动候选列表生成步骤(S401)是为了执行CU单元的解码器侧运动导出而进行初始搜索位置选择所需的生成运动候选列表的步骤。此处,可以预先限定要添加到运动候选列表的运动候选,并且在编码器和解码器中以相同顺序添加这些运动候选。关于这一点,稍后将参照图15详细描述构造CU单元运动候选列表的方法。
CU单元最佳运动确定步骤(S402)是下述步骤:通过依次搜索被添加到在CU单元运动候选列表生成步骤(S401)中生成的运动候选列表中的运动候选,选择多个运动候选中具有最小成本的一个最佳运动候选。
在这点上,可以将用于确定块中包括的像素之间的相似度的绝对差之和(SAD)用作用于确定最佳运动候选的成本。然而,除了SAD之外,可以以各种方式使用SATD(绝对变换差之和)、SSE(平方误差之和)等。可以通过考虑比特率的值以及像素之间的相似度来使用率失真值(RD成本)。
CU单元改进搜索步骤(S403)是下述步骤:通过将在CU单元最佳运动确定步骤(S402)中确定的最佳运动信息用作起始位置执行附加搜索来最终确定CU单元最佳运动。
在CU单元改进搜索步骤(S403)中,可以使用各种搜索方法作为用于确定CU单元的最佳运动的运动搜索方法。作为运动搜索方法的示例,可以使用正方形搜索、六边形搜索、菱形搜索,十字搜索和自适应十字搜索。
根据本发明的实施方式,在CU单元改进搜索步骤(S403)中可以依次执行一种或更多种不同的运动搜索方法。在利用初始的菱形搜索执行第一搜索处理的处理中搜索位置没有改变的情况下,可以通过应用十字搜索方法来执行第二搜索处理,十字搜索方法搜索对应位置的上、下、左和右四个像素位置。稍后将在图9中对此进行详细描述。
关于这一点,在搜索处理中搜索位置没有改变是指多个搜索位置中每个搜索步骤的初始位置的搜索值表示最小值的情况。在CU单元改进搜索步骤(S403)中使用的搜索方法和搜索方法的顺序可以遵循预定顺序,或者可以通过高级语法发送关于使用哪个搜索方法的信息。
在根据本发明的在解码器侧导出运动信息的处理中,在执行CU单元改进步骤(S400)之后,通过子块单元改进步骤(S420)确定是否执行子块单元改进步骤(S410)。作为步骤S410的结果,只有在确定执行子块单元改进步骤(S420)的情况下(S410,“是”分支)才执行子块单元改进步骤(S420)。
在步骤S410中,在确定是否执行子块单元改进步骤时,在存在当前CU单元运动信息导出步骤(S400)中确定的CU单元最佳运动信息的情况下,是否执行子块单元改进步骤(S420)被确定为真(是)。此处,存在CU单元的最佳运动信息的含义是指下述情况:构造了用于CU单元运动导出的运动候选列表并且可以使用包括在对应的构造列表中的运动候选的至少一个运动信息进行运动导出。
子块单元改进步骤(S420)包括:子块单元运动候选列表生成步骤(S421);子块单元最佳运动确定步骤(S422);以及子块单元改进搜索步骤(S423)。另外,针对当前目标块中的所有多个子块依次执行子块单元改进步骤(S420)。
子块单元运动候选列表生成步骤(S421)是为了在解码器侧导出子块单元的运动而进行初始搜索位置选择所需的生成运动候选列表的步骤。
此处,可以预定义要添加到运动候选列表的运动候选并且在编码器和解码器中以相同顺序添加。然而,当在生成子块单元运动候选列表之前执行CU单元改进步骤时,CU单元中确定的最佳运动信息被包括在子块单元运动候选列表中。关于这一点,稍后将在图15中详细描述构造子块单元运动候选列表的方法。
子块单元最佳运动确定步骤(S422)是下述步骤:通过依次搜索被添加到在子块单元运动候选列表生成步骤(S421)中确定的运动候选列表中的运动候选,选择多个运动候选中具有最小值(成本)的一个运动候选。
子块单元改进搜索步骤(S423)是下述步骤:通过将在子块单元最佳运动确定步骤(S422)中确定的运动信息用作起始位置执行附加搜索来最终确定子块单元最佳运动。
在确定子块单元中的一个运动候选时,可以根据解码器侧的运动导出方法使用不同的最佳运动信息确定值。根据本发明的实施方式,在使用模板匹配导出运动的方法的情况下,用于确定块中包括的像素之间的相似度的SAD可以被用作用来确定一个运动候选的成本。另一方面,在使用双向匹配(BM)导出运动的方法的情况下,根据用于确定块中包括的像素之间的相似度的SAD以及运动矢量的大小信息的加权和导出的率失真值(RD成本)可以被用作用来确定一个运动候选的成本。率失真值可以表达为下面的式(1)。
[式1]
RDcost=SAD+W*(|mvx-mv'y|+|mvy-mv'y|)
w表示运动矢量的大小信息的权重,mv表示CU单元的最佳运动矢量,mv'表示以子块为单位搜索的目标运动矢量。然而,不限于使用率失真值,而可以单独使用SAD、SATD和SSE,并且可以根据情况改变权重。
在下文中,将详细描述在解码器方面改进运动信息的方法。该实施方式可以应用于上述CU单元改进步骤和/或子块单元改进步骤。
可以基于预定的变化量运动信息来改进当前块的预重构运动信息,该改进可以表达为下面的式2。
[式2]
MVref=MVrec+deltaMV
在式2中,MVref意指经改进的运动信息,并且MVrec和deltaMV可以分别意指预重构运动信息和变化量运动信息。解码器可以将变化量运动信息的初始值设置为0。解码器可以通过基于当前块的参考块的位置执行搜索来确定最佳参考块。此处,当前块的参考块可以意指由预重构运动信息指示的区域。解码器可以基于最佳参考块的位置来更新变化量运动信息。此处,参考块可以包括L0/L1参考块。L0参考块可以指属于参考图片列表0(L0)中的参考图片的参考块,并且L1参考块可以指属于参考图片列表1(L1)中的参考图片的参考块。
具体地,解码器可以确定用于改进运动信息的搜索区域(S1)。搜索区域可以被确定为包括参考块或参考块的相邻区域至少一者的区域。此处,参考块的左上样本的位置可以是搜索的参考位置。可以分别针对L0方向和L1方向确定搜索区域。相邻区域可以意指从参考块的边界延伸N个样本线的区域。此处,N可以是1、2、3或更大的整数。
相邻区域可以位于参考块的左、上、右、下、左上、左下、右上或者右下至少一者。此处,如果当前块是W×H,则搜索区域可以表达为(W+2N)×(H+2N)。然而,为了减少改进处理的复杂度,相邻区域可以仅位于上述方向中的一些方向上。例如,可以限于与参考块的左侧和上侧相邻的区域,或者可以限于与参考块的右侧和下侧相邻的区域。
样本线的数目N可以是在解码器中预定义的固定值,或者可以考虑块属性来可变地确定。此处,块属性可以指块的大小/形状、块位置、帧间预测模式、部件类型等。块位置可以指参考块是否邻接图片或者预定片段区域的边界。片段区域可以指图块、编码树块的列/行、或者编码树块。例如,根据块属性,可以选择性地使用0个、1个或2个样本线中的任何一种。
解码器可以确定针对搜索区域(S2)中的每个搜索位置的指定绝对差之和(SAD)的列表(在下文中称为SAD列表)。
SAD列表可以包括多个SAD候选。构成SAD列表的SAD候选的数目为M,并且M可以是大于或等于2的整数。M可以限于最大值9。
可以通过L0块与L1块之间的SAD值确定SAD候选。此处,可以基于属于L0/L1块的所有样本来计算SAD值,或者可以基于L0/L1块中的一些样本来计算SAD值。此处,一些样本表示L0/L1块的子块,并且子块的宽度或高度中至少一者可以是L0/L1块的宽度或高度的一半。即,L0和L1块的大小为W×H,而样本中的一些样本可以是大小为W×H/2、W/2×H或者W/2×H/2的子块。在这种情况下,当一些样本是W×H/2时,一些样本可以是L0/L1块中的上侧子块(或下侧子块)。当一些样本是W/2xH时,一些样本可以是L0/L1块中的左侧子块(或右侧子块)。当一些样本是W/2xH/2时,一些样本可以是L0/L1块中的左上侧子块,但是不限于此。替选地,可以将一些样本定义为L0/L1块的一组偶数个或奇数个样本线(竖直或水平方向)。同样,此处,一些样本可以是在L0/L1块的宽度或高度方向上被子采样的块。即,L0和L1块具有WxH的大小,并且与某些样本对应的块具有WxH的大小,但是可以是块中包括的样本之中的一组奇数行、一组偶数行、一组奇数列或者一组偶数列中的一者。
可以基于当前块的L0参考块的位置和预定偏移来确定L0块的位置。该偏移可以意指L0参考块的位置与搜索位置之间的移位矢量。即,搜索位置可以是从L0参考块的位置(x0,y0)起在x轴方向上移位p并且在y轴方向上移位q的位置。此处,p和q可以是-1、0或1中的至少一个。此处,由p和q的组合生成的移位矢量可以表示偏移。L0块的位置可以被确定为从L0参考块的位置(x0,y0)起移位(p,q)的位置。p和q的大小(或绝对值)为0或1,但不限于此。例如,p和q的大小可以是2、3或更大。
偏移可以包括非有向偏移(0,0)或者有向偏移中至少一者。有向偏移可以包括针对左、右、上、下、左上、右上、左下或者右下中至少一个方向的偏移。例如,有向偏移是(-1,0)、(0,1)、(0,-1)、(0,1)、(-1,-1)、(-1,1)、(1,-1)或(1,1)中至少一个。
类似地,可以基于当前块的L1参考块的位置和预定偏移来确定L1块的位置。此处,可以基于L0块的偏移来确定L1块的偏移。例如,如果L0块的偏移是(p,q),则L1块的偏移可以被确定为(-p,-q)。
关于前述偏移的大小和/或方向的信息可以在解码器中被预先定义,或者可以在编码器中被编码并且用信号发送给解码器。可以考虑上述块属性而可变地确定该信息。
作为示例,可以如下表1中那样定义偏移。
【表1】
i 0 1 2 3 4 5 6 7 8
dX[i] -1 0 1 -1 0 1 -1 0 1
dY[i] -1 -1 -1 0 0 0 1 1 1
表1定义了用于确定每个索引i的搜索位置的偏移。然而,表1并不限制与索引i对应的偏移的位置,并且每个索引的偏移的位置可以与表1不同。根据表1的偏移可以包括上述非有向偏移(0,0)和8个有向偏移。
在这种情况下,可以基于参考块的位置(x,y)和偏移(-1,-1)确定第0个SAD候选。具体地,将从L0参考块的位置(x0,y0)起移位了偏移(-1,-1)的位置设置为搜索位置,并且可以将其左上侧样本是该搜索位置的WxH块确定为L0块。
类似地,可以将从L1参考块的位置(x1,y1)起移位了偏移(1,1)的位置设置为搜索位置,并且将其左上侧样本是该搜索位置的WxH块确定为L1块。可以通过计算L0块与L1块之间的SAD来确定第0个SAD候选。
通过上述处理,可以确定第1个至第8个SAD候选,并且可以确定包括九个SAD候选的SAD列表。
表1并不限制用于改进运动信息的偏移的数目。9个偏移中仅k个偏移可以被使用。此处,k可以是2至8范围内的任何值。例如,在表1中,可以使用诸如[0,4,8]、[1,4,7]、[2,4,6]、[3,4,5]的三个偏移,可以使用诸如[0,1,3,4]、[4,5,7,8]的四个偏移,以及可以使用诸如[0,1,3,4,6,7]、[0,1,2,3,4,5]的六个偏移。
在一个示例中,可以如下面的表2中那样定义偏移。即,偏移仅由非有向偏移(0,0)、水平偏移((-1,0)、(1,0))和竖直偏移((0,-1)、(0,1))组成。
【表2】
i 0 1 2 3 4
dX[i] 0 -1 0 1 0
dY[i] -1 0 0 0 1
这样,根据偏移的大小和/或数目,可以可变地确定上述搜索区域的大小和/或形状。搜索区域可以具有除正方形之外的几何形状,将参考图9对此进行描述。
解码器可以基于上述SAD列表的SAD候选来选择用于改进当前块的运动信息的第一方法或第二方法(S3)。
可以基于参考SAD候选与预定阈值之间的比较结果来执行选择(实施方式1)。
参考SAD候选可以意指与偏移(0,0)对应的SAD候选。替选地,参考SAD候选可以意指与通过稍后描述的第一方法改变的参考块的位置或参考位置对应的SAD候选。
阈值可以基于当前块(或参考块)的宽度(W)或高度(H)中的至少一者来确定。例如,阈值可以被确定为W*H、W*(H/2)、(W/2)*H、2*W*H、4*W*H等。
如果参考SAD候选大于或等于阈值,则可以基于第一方法更新变化量运动信息,否则可以基于第二方法更新变化量运动信息。
(1)在第一方法的情况下
在属于SAD列表的SAD候选之中,可以识别具有最小值的SAD候选。识别方法将在后面描述。可以基于与所识别的SAD候选对应的偏移来更新变化量运动信息。
然后,可以将与所识别的SAD候选对应的搜索位置改变为用于搜索的参考位置。基于改变的参考位置,可以再次执行上述确定SAD列表和/或识别具有最小值的SAD候选的处理,并且将省略重复的描述。基于再次执行的结果,可以更新变化量运动信息。
(2)在第二方法的情况下
可以基于使用属于SAD列表的全部或部分SAD候选计算出的参数来更新变化量运动信息。
参数可以包括针对x轴方向的参数dX或者针对y轴方向的参数dY中的至少一者。例如,可以如下计算该参数,并且为了便于描述,将基于上述表1进行描述。
当sadList[3]与sadList[5]之和等于(sadList[4]<<1)时,dX可以被设置为0。此处,sadList[3]可以是与偏移(-1,0)对应的SAD候选,sadList[5]可以是与偏移(1,0)对应的SAD候选,并且sadList[4]可以是与偏移(0,0)对应的SAD候选。
当sadList[3]与sadList[5]之和大于(sadList[4]<<1)时,可以按照下面的式3确定dX。
[式3]
dX=((sadList[3]-sadList[5])<<3)/(sadList[3]+sadList[5]-(sadList[4]<<1))
当sadList[1]与sadList[7]之和等于(sadList[4]<<1)时,dY可以被设置为0。此处,sadList[1]可以是与偏移(0,-1)对应的SAD候选,sadList[7]可以是与偏移(0,1)对应的SAD候选,并且sadList[4]可以是与偏移(0,0)对应的SAD候选。
当sadList[1]与sadList[7]之和大于(sadList[4]<<1)时,可以按照下面的式4确定dY。
[式4]
dY=((sadList[1]-sadList[7])<<3)/(sadList[1]+sadList[7]-(sadList[4]<<1))
基于所计算的参数,可以更新变化量运动信息。
替选地,可以基于参考SAD候选是否为属于SAD列表的SAD候选中的最小值来执行上述S3中的选择(实施方式2)。
例如,如果属于SAD列表的SAD候选中的最小值不是参考SAD候选,则基于第一方法更新变化量运动信息,否则可以基于第二方法更新变化量运动信息。第一方法和第二方法如上所述,并且将省略详细描述。
替选地,可以基于上述实施方式1和实施方式2的组合来执行上述S3中的选择(实施方式3)。
例如,当参考SAD候选小于阈值时,可以使用根据上述第二方法的参数来更新变化量运动信息。
然而,当参考SAD候选大于或等于阈值时,可以识别属于SAD列表的SAD候选之中具有最小值的SAD候选。当所识别的SAD候选是参考SAD候选时,可以使用根据上述第二方法的参数来更新变化量运动信息。另一方面,当所识别的SAD候选不是参考SAD候选时,可以根据上述第一方法来更新变化量运动信息。
将描述识别具有最小值的SAD候选的方法。可以将属于SAD列表的SAD候选分组为两个、三个或更多个组。在下文中,为了便于描述,将描述SAD候选被分为两组的情况。
多个SAD候选可以被分组为第一组和第二组。每个组可以包括SAD列表中的SAD候选之中的至少两个SAD候选。然而,所述组可以被限制为不包括参考SAD候选。通过对每个组进行最小运算,可以提取对于每个组而言具有最小值的SAD候选。
可以再次提取在从第一组提取的SAD候选以及从第二组提取的SAD候选之中具有最小值的SAD候选(在下文中称为临时SAD候选)。
基于临时SAD候选与参考SAD候选之间的比较结果,可以识别具有最小值的SAD候选。例如,当临时SAD候选小于参考SAD候选时,可以将临时SAD候选识别为SAD列表中的最小SAD候选。另一方面,当临时SAD候选大于或等于参考SAD候选时,可以将参考SAD候选识别为SAD列表中的最小SAD候选。
可以以子块为单位基于块大小执行上述在解码器侧改进运动信息的方法。例如,在当前块的大小大于或等于预定阈值大小的情况下,可以执行以阈值大小为单位改进运动信息的方法。另一方面,在当前块的大小小于预定阈值大小的情况下,可以执行以当前块为单位改进运动信息的方法。此处,阈值大小可以被确定为块宽度或高度中的至少一个是T值。T值可以是16、32、64或更大的整数。
可以考虑块大小、当前图片与参考图片之间的距离、帧间预测模式、预测方向、运动信息的单位或分辨率等来有限地执行上述在解码器侧改进运动信息的方法。
例如,可以仅在当前块的宽度或高度之一大于或等于8、16或32时执行改进方法。替选地,可以仅在当前块的宽度和高度大于或等于8、16或32时应用改进方法。替选地,可以仅在当前块的面积或样本数大于或等于64、128或256时应用改进方法。
可以仅在当前图片与L0参考图片之间的POC差异和当前图片与L1参考图片之间的POC差异相同时,应用改进方法。
可以仅在当前块的帧间预测模式是合并模式时应用改进方法,并且不能在其他模式(例如,仿射模式、AMVP模式等)中应用改进方法。
可以仅在当前块执行双向预测时应用改进方法。另外,可以仅在运动信息的单位是整数像素时应用改进方法,或者可以仅在运动信息的单位小于四分之一像素或半个像素时应用改进方法。
图7是示出根据本发明的实施方式的解码方法的另一流程图的图。特别地,在针对当前块选择了在解码器侧导出运动信息的模式的情况下,这是确定是否执行子块单元改进步骤(S420)的标准的示例。根据图7,当使用在CU单元改进步骤(S400)中选择的运动来计算块匹配成本时,将块匹配成本值与预定阈值(THR)进行比较(S411)。当块匹配成本值小于或等于阈值(THR)时,可以确定不执行子块单元改进步骤S420。即,可以确定,仅在块匹配成本值大于阈值(THR)时执行子块单元改进步骤S420。
根据本发明的实施方式,预定阈值(THR)可以被设置为“0”。这意味着在使用在CU单元改进步骤(S400)中导出的最佳运动执行模板匹配(TM)或双向匹配(BM)时,在用于块匹配的模板或参考块之间没有误差。然而,阈值不限于“0”,而可以是预定值或者通过高级语法发送。因此,可以通过使用块匹配值确定是否执行附加的子块单元改进来有效地降低复杂度。
通过图6的步骤S410和图7的步骤S411,可以在特定条件下不执行子块单元改进步骤(S420)而提前终止运动信息导出处理,这可以极大地有助于降低解码复杂度。
然而,使用块匹配成本的提前终止确定步骤(S411)不限于仅在图7所示的CU单元改进步骤(S400)和子块单元改进步骤(S420)中执行,而可以通过使用本发明提出的解码器侧运动预测方法应用于计算块匹配成本的多个步骤。即,在计算块匹配成本的处理中,由于当满足与步骤S411相同的条件时终止块匹配成本的计算,因此可以有助于降低解码复杂度。
图8是示出根据本发明的实施方式的解码方法的另一流程图的图。特别地,图8示出了仅执行子块单元改进搜索而不执行CU单元改进搜索的运动导出的流程图。即,根据本发明的实施方式,为了执行解码器侧的运动导出,不执行CU单元改进搜索,并且可以仅执行子块单元改进搜索。
参照图8,与上述图6所示的运动导出处理不同,仅执行子块单元改进搜索的运动导出处理不包括CU单元改进步骤中包括的CU单元改进搜索(S403),而是另外包括改进的子块单元改进搜索(S501)。然而,由于仅执行子块单元改进搜索(S501)而不执行CU单元改进搜索,因此使用比上述图6的子块单元改进搜索(S423)更详细的搜索方法来执行搜索。另一方面,由于不执行CU单元改进搜索步骤并且仅执行子块单元改进搜索,所以可以有效地降低在运动导出处理中产生的复杂度。
参照图8,解码器侧的运动导出处理包括CU单元运动候选列表生成步骤(S401)、CU单元最佳运动确定步骤(S402)、子块单元运动候选列表生成步骤(S421)和子块单元最佳运动确定步骤(S422)。每个步骤的操作与上述图6中的步骤(S401、S402、S421和S422)相同。不同的是,根据本发明的实施方式的特征在于补充了子块单元改进搜索步骤501。
具体地,在上述图6所示的子块单元改进搜索步骤S423中,执行诸如CU单元改进搜索和子块单元最佳运动确定步骤的多个搜索步骤以搜索最佳运动。因此,可以使用具有相对低的搜索复杂度的十字搜索和自适应十字搜索来执行运动改进搜索。
另一方面,在仅执行图8所示的子块单元改进搜索的情况下,子块单元改进搜索步骤501不执行CU单元改进搜索,并且仅使用多个预定义的运动信息来搜索最佳运动。因此,使用具有相对较高的搜索复杂度的菱形搜索来执行第一搜索,然后使用十字搜索执行第二搜索。然而,不限于仅使用菱形搜索作为具有相对高的搜索复杂度的搜索方法。可以附加地使用正方形搜索、六边形搜索等,并且可以通过使用多个不同的步骤来执行运动改进搜索。
在下文中,将详细描述在解码器侧改进运动补偿的方法。该实施方式可以应用于子块单元改进步骤。然而,本发明不限于此,并且可以以相同/相似的方式应用于上述CU单元改进步骤。
解码器可以考虑到属于预定参考区域的样本的梯度来改进运动补偿,者在下文中称为GMC方法。
解码器可以确定用于GMC方法的预定参考区域。参考区域可以被确定为包括当前块的参考块或者参考块的相邻区域至少一者的区域。可以分别针对L0方向和L1方向确定参考区域。相邻区域可以意指从参考块的边界延伸K个样本线的区域,其中K可以是1、2、3或更大的整数。
相邻区域可以位于参考块的左、上、右、下、左上、左下、右上或者右下中至少一个方向上。此处,在当前块是W×H时,参考区域可以被表达为(W+2K)×(H+2K)。然而,为了降低改进处理的复杂性,相邻区域可以仅位于上述方向中的一些方向上。例如,相邻区域可以限于与参考块的左侧和上侧相邻的区域,或者可以限于与参考块的右侧和下侧相邻的区域。
样本线的数目(K)可以是在解码器中预定义的固定值,或者可以考虑块属性而可变地确定。此处,块属性可以指块的大小/形状、块位置、帧间预测模式、部件类型等。块位置可以指参考块是否邻接图片或预定片段区域的边界。片段区域可以指图块、编码树块的列/行、或者编码树块。例如,根据块属性,可以选择性地使用0个、1个或2个样本线中的任何一种。
解码器可以计算属于参考区域的样本的梯度。当前样本的梯度可以被计算为与当前样本相邻的多个相邻样本之间的差。多个相邻样本可以与当前样本位于同一水平线和/或竖直线上。替选地,多个相邻样本可以与当前样本位于同一对角线上。替选地,多个相邻样本中的一个可以相对于另一样本位于不同的线上。多个相邻样本的数目可以是2、3、4或更多。
可以针对L0参考区域或L1参考区域中的至少一个计算梯度。此处,可以针对水平方向(H)或竖直方向(V)中的至少一个计算L0/L1参考区域的梯度。
例如,可以基于与当前样本的左侧和右侧相邻的两个相邻样本之间的差来计算针对L0参考区域在水平方向上的梯度(gradientHL0)。可以基于与当前样本的上侧和下侧相邻的两个相邻样本之间的差来计算针对L0参考区域在竖直方向上的梯度(gradientVL0)。可以以与上述相同的方式计算针对L1参考区域在水平/竖直方向上的梯度(gradientHL1,gradientVL1)。
通过上述方法,可以分别计算参考区域中的样本的梯度。然而,位于参考区域的边界处的样本(在下文中称为边界样本)的梯度可以共享与边界样本相邻的相邻样本的梯度。
例如,参考区域的上边界样本的梯度可以被设置为在上边界样本之下的相邻样本的梯度。参考区域的下边界样本的梯度可以被设置为在下边界样本之上的相邻样本的梯度。参考区域的左边界样本的梯度可以被设置为与左边界样本的左侧相邻的相邻样本的梯度。参考区域的右边界样本的梯度可以被设置为与右边界样本的右侧相邻的相邻样本的梯度。参考区域的角边界样本可以被设置为与角边界样本对角相邻的相邻样本的梯度。位于参考区域每个角的2x2区域中的样本可以共享相同的梯度。
解码器可以确定用于GMC方法一个或更多个参数。可以基于L0/L1参考区域的样本值或者样本的梯度中的至少一个来导出参数。具体地,可以基于L0参考区域与L1参考区域之间的样本值差导出第一参数(diff)。可以基于上述gradientHL0或gradientHL1中的至少一个导出第二参数(tempH),并且可以基于gradientVL0或gradientVL1中的至少一个导出第三参数(tempV)。例如,可以按照下面的式5导出参数。
[式5]
diff[x][y]=(predSamplesL0[hx][vy]>>shift2)-(predSamplesL1[hx][vy]>>shift2)
tempH[x][y]=(gradientHL0[x][y]+gradientHL1[x][y])>>shift3
tempV[x][y]=(gradientVL0[x][y]+gradientVL1[x][y])>>shift3
在式5中,可以基于与L0/L1参考区域中的(hx,vy)位置对应的样本导出在(x,y)位置处的样本的第一参数(diff),其中hx、vy可以由下面的式6确定。在式6中,nCbW和nCbH分别指当前块(或参考块)的宽度和高度。
[式6]
hx=Clip3(1,nCbW,x)
vy=Clip3(1,nCbH,y)
解码器可以基于先前确定的梯度或参数中的至少一个导出用于改进运动补偿的补偿值。
具体地,可以基于运动偏移和梯度导出补偿值。运动偏移可以被定义为水平运动偏移(Vx)或竖直运动偏移(Vy)中的至少一个。此处,梯度可以包括gradientHL0、gradientHL1、gradientVL0或gradientVL1中的至少一个。
例如,可以通过下面的式7导出补偿值(mcOffset)。
[式7]
mcOffset=Round((Vx*(gradientHL1[x+1][y+1]-gradientHL0[x+1][y+1]))>>1)+Round((Vy*(gradientVL1[x+1][y+1]-gradientVL0[x+1][y+1]))>>1)
在式7中,Vx可以表示水平运动偏移。这可以基于上述第一参数(diff)或第二参数(tempH)中的至少一个而确定。Vy可以表示竖直运动偏移。这可以基于水平运动偏移(Vx)、第一参数(diff)、第二参数(tempH)或第三参数(tempW)中的至少一个导出。
解码器可以使用当前块的参考块和补偿值(mcOffset)生成当前块的预测样本。此处,参考块可以包括L0参考块或L1参考块中的至少一个。
例如,解码器可以通过将补偿值添加到L0参考块的样本和L1参考块的样本之间的加权平均值来生成当前块的预测样本。
可以基于预定编码参数来选择性地使用上述GMC方法。此处,编码参数可以表示块大小/形状、参考图片的位置、帧间预测模式、预测方向、部件类型、参考块之间的差异等。编码参数可以包括从解码器导出的信息以及由编码器编码并用信号发送的信息。
例如,可以仅在当前块小于或大于预定阈值大小时应用。阈值大小可以被限定为允许GMC方法的块的最小大小或最大大小。阈值大小的宽度或高度中的至少一个可以是8、16、32或64。替选地,可以仅在当前块具有正方形形状时应用。替选地,可以仅在L0/L1参考图片中的一个与当前图片相比具有较小POC并且另一参考图片与当前图片相比具有较大POC时应用。替选地,可以仅在L0参考块与L1参考块之间的样本值差大于或等于预定阈值时应用。此处,可以基于参考块(或当前块)的位深度或宽度和高度中的至少一个来确定阈值。
可以基于上述限制条件中的任何一个来选择性地执行GMC方法,或者可以基于上述限制条件中的至少两个的组合来选择性地执行GMC方法。
图9是示出应用于子块单元改进搜索步骤(S501)的菱形搜索和十字搜索方法的图。特别地,图9(a)示出了作为示例的菱形搜索图案,图9(b)示出了作为示例的十字搜索图案。
参照图9(a),例如,由于在多个步骤或轮次中执行菱形搜索,因此,例如,搜索在菱形方向上从像素601周围的像素开始(轮次1)。此处,像素601对应于初始起始位置(例如,最佳运动候选位置)。根据第1轮搜索的结果选择了具有最低成本值的像素602,并且执行针对像素602的相同的菱形搜索(轮次2)。另外,根据第二轮搜索的结果选择了具有最低成本的像素603,并且执行针对像素603的相同的菱形搜索(轮次3)。可以重复执行菱形搜索轮次,直到达到目标成本,或者可以限定为执行预先限定的次数(例如3轮次)。
图9(b)示出了十字搜索的示例,例如,当菱形搜索轮次终止时,对竖直和水平地围绕最终选定像素603的像素611、612、613和614执行十字搜索。在十字搜索之后,具有最低成本值的像素位置被确定为最终运动信息位置。
图10是示出根据本发明的实施方式的解码方法的另一流程图的图。特别地,图10是示出当使用一种或更多种运动信息导出方法导出解码器侧的运动信息时,根据目标运动信息导出方法使用不同的运动信息校正方法的流程图。
参照图10,在使用模板匹配(TM)和双向匹配(BM)作为解码器侧的运动信息导出方法的情况下,在执行利用模板匹配的运动导出时,仅执行CU单元运动导出和校正。另一方面,当执行利用双向匹配的运动导出时,以CU为单位执行用于运动搜索的初始化处理,并且以子块为单位执行运动导出和校正。
因此,当使用一种或更多种运动信息导出方法导出解码器侧的运动信息时,这意味着使用了用于根据目标运动信息导出方法导出不同运动信息的块单元。例如,当执行使用模板匹配的运动导出时,可以以CU为单位执行运动导出。当执行使用双向匹配的运动导出时,可以以子块为单位执行运动导出。
具体地,通过步骤S300和S310,如果针对当前目标块选择了解码器侧的运动信息导出模式、并且选择了使用模板匹配方法导出运动的模式(S310“是”分支),则包括CU单元运动候选列表生成步骤(S401)、CU单元最佳运动确定步骤(S402)和CU单元改进搜索步骤(S403)。
另一方面,通过步骤S300和S310,如果针对当前目标块选择了解码器侧的运动导出模式、并且选择了使用双向匹配方法导出运动的模式(S310“否”分支),则包括CU单元运动候选列表生成步骤S401、CU最佳运动确定步骤S402、子块单元运动候选列表生成步骤S421、子块单元最佳运动确定步骤S422和子块单元改进搜索步骤S501。
替选地,如图11所示,通过步骤S300和S310,当针对当前目标块选择了解码器侧的运动信息导出模式、并且选择了使用双向匹配方法导出运动的模式时(S310“否”分支),可以省略上述CU单元运动候选列表生成步骤(S401)和CU单元最佳运动确定步骤(S402),可以仅包括子块单元运动候选列表生成步骤(S421)、子块单元最佳运动确定步骤(S422)和子块单元改进搜索步骤(S501)。
图12示出了执行块匹配的目标块以及块中的目标像素。图12示出了执行块匹配的目标块以及块中的目标像素。特别地,图12(a)示出了在一般的块匹配中,使用块700中的所有像素来计算目标块与参考块之间的误差的方法,而图12(b)示出了仅使用块710中的一些像素(例如,711或712)来计算目标块与参考块之间的误差从而降低块匹配所需的计算复杂度的方法的示例。
例如,根据本发明的实施方式,通过对710块进行子采样,将710块分类为属于偶数行711的像素以及属于奇数行712的像素。在计算块匹配成本、块之间的误差等时,可以通过仅基于属于偶数行的像素或者属于奇数行的像素进行计算来降低计算复杂度。
在这种情况下,对用于匹配的目标像素进行分类以降低计算复杂度的标准不限于偶数行和奇数行,而可以使用以2的倍数的整数行为单位确定目标行的方法或者使用仅使用与当前块相邻的像素进行确定的方法。在下文中,将描述使用块中的子采样像素应用上述模板匹配(TM)和双向匹配(BM)的情况。
图13示出了在解码器侧导出运动信息的方法之中,将使用图12的子采样像素的匹配应用于使用模板匹配的运动信息导出方法的构思。
如上所述,使用模板匹配导出运动信息是下述方法:基于当前的编码与解码目标图片300中的与当前目标块310在空间上相邻的多个像素与位于参考图片301和302中的具有相同形状的多个像素之间的像素相似度导出运动信息。与当前目标块300在空间上相邻的像素以及位于参考图片301和302中的具有相同形状的像素被称为模板。在这种情况下,在配置模板时,如上述图12所示,并非使用特定模板范围中包括的所有像素,而是可以使用一些子采样像素来降低计算复杂度。
具体地,可以针对当前目标块300配置一个或更多个模板,并且如图13所示,可以使用与上侧相邻的模板800以及与左侧相邻的模板810,可以将每个模板配置成在参考图片中具有相同形状和大小的模板。然而,并非使用模板(例如图3中所示的模板320和330)中的所有像素执行匹配,而是仅将模板800和810中的像素中的特定像素用于模板匹配。
在参考图片中配置的模板可以由与邻近当前目标块300上侧的模板800对应的上侧模板801和802以及与邻近当前目标块300左侧的模板810对应的左侧模板811、812组成。在这种情况下,检查上侧相邻像素和左侧相邻像素是否可配置,并且仅在能够使用上侧相邻像素和左侧相邻像素配置模板的情况下配置模板。可以通过使用除了预定义的一个或更多个模板中的不可配置模板之外的一些模板来执行模板匹配。模板不可配置的情况可以对应于当前目标块位于图片、图块和切片的边界处的情况。
图14示出了在解码器侧导出运动信息的方法中,将使用图12的子采样像素的匹配应用于使用双向匹配的运动信息导出方法的构思。
如上所述,使用双向匹配导出运动信息是下述方法:基于当前的编码和解码目标图片300中的位于当前目标块310周围双方向上的参考图片301与302中的两个不同参考块901与902的像素相似度导出运动信息。在这种情况下,使用一个运动轨迹(400)来选择位于当前目标块310周围双方向上的参考图片301和302中的两个不同的参考块901和902。
此外,在使用两个不同参考块901和902执行块匹配的处理中,并不使用块中包括的所有像素,而是仅使用块901和902中的一些子采样像素。通过这样做,可以降低计算复杂度。
具体地,根据本发明的实施方式,可以以当前目标块310为中心使用一个运动轨迹400连接两个不同的参考图片301和302。与当前目标块310对应的具有相同大小和形状的参考块901和902可以被配置在连接位置处。然而,不使用参考块(例如,图4所示的参考块201和202)中的所有像素来执行匹配,而是仅将参考块901和902中的像素之中的特定像素用于双向匹配。
即,根据本发明的实施方式的双向匹配方法包括以下处理:配置与当前目标块310对应的相同大小和形状的参考块901和902,以及获得使得两个参考块901与902中的一些像素之间的误差最小的一个运动轨迹(400)。
图15是用于说明为了在解码器侧导出运动信息而构造用于初始搜索位置选择的运动候选列表的方法的图。
图15(a)是上述CU单元运动候选列表生成步骤(S401)中的CU单元运动候选列表1000的构造的实施方式。参照图15(a),根据本发明的实施方式,在当前CU处于AMVP模式时,AMVP候选运动信息1501可以被添加到CU单元运动候选列表1000,并且当前目标块的合并候选中的除了子块单元运动候选的CU单元运动候选可以被添加到CU单元运动候选列表1000。另外,可以添加通过对当前目标子块的单向预测候选进行插值而生成的至多四个运动候选1503,并且可以添加空间相邻的左侧和上侧运动候选1504以构造CU单元运动候选列表1000。
图15(b)是示出子块单元运动候选列表生成步骤S421中的子块单元运动候选列表1010的构造的实施方式。参照图15(b),根据本发明的实施方式,可以将下述运动候选添加到子块单元运动候选列表1010:当前子块所属的目标CU的CU单元最佳运动候选1511、与当前子块在空间上相邻的子块中的左侧子块和上侧子块的运动候选1512、与当前子块在空间上相邻的子块中的左上侧子块和右上侧子块的运动候选1513、参考图片的同位子块的缩放运动候选1514以及ATMVP 1515和STMVP 1516中的与当前子块对应的运动候选。
然而,在参考在空间上相邻的左、上、左上和右上的运动以用于当前目标子块的并行处理时,如图16所述设置用于并行处理的特定区域1120,稍后将进行描述。并且其可以改变以参考位于该区域外的子块1130的运动。
替选地,对于当前目标子块的并行处理,除了空间上相邻的运动1020之外,可以构造子块单元运动候选列表。
图16示出了根据本发明的子块的并行处理的构思。特别地,示出了在参考子块的空间相邻运动时,考虑到并行处理而参考位于特定区域之外的运动的构思。
通过将要编码和解码的一个块划分为多个较小的块而得到的单元被称为子块,并且在当前的编码和解码中使用的子块的大小信息可以被预定义或者按照高级语法发送。
在使用参考现有子块的空间相邻运动的方法来参考当前目标子块1100的空间相邻运动时,参考左侧子块1110、上侧子块1112、左上侧子块1111和右上侧子块1113的运动中的一个或更多个运动。
然而,当使用现有方法参考左侧子块1110、上侧子块1112、左上侧子块1111和右上侧子块1113的运动时,由于当前目标子块1100的运动确定处理应该在对应子块1100的运动确定处理完成之后执行,所以会出现子块之间的依赖(冗余)。为了解决子块之间的依赖出现问题,在本发明中,考虑到子块的并行处理而设置用于并行处理的特定区域1120,并且参考位于对应区域外的子块1130的运动。
用于并行处理的特定区域1120可以是单个CU、由多个子块的数目限定的区域或者具有一定大小的区域,并且对应信息可以被预定义或者按照高级语法发送。
另外,当在上述解码器侧导出运动信息时,在确定子块的运动候选时,可以应用图16中的子块并行处理的构思。另外,该构思同样适用于不在解码器侧导出运动信息的情况,并且特别地,该构思可以等同地应用于子块单元运动信息生成处理和子块单元运动参考处理。
图17示出了例如应用于图16的并行处理的经修改的运动候选列表。与上述图15的运动候选列表相比,CU单元运动候选列表1000a与上述图15的CU单元运动候选列表1000相同。然而,由于以子块为单位执行并行处理,因此,与上述图15的子块单元运动候选列表1010相比,通过排除与当前子块在空间上相邻的子块中的左侧子块和上侧子块的运动候选1512以及与当前子块在空间上相邻的子块中的左上侧子块和右上侧子块的运动候选1513而构造了子块单元运动候选列表1010a。
本公开内容的各种实施方式不是意在列出所有可能的组合,而是旨在描述本公开内容的代表性方面,并且在各种实施方式中描述的内容可以被独立地应用或者以两个或更多个的组合来应用。
另外,本公开内容的各种实施方式可以通过硬件、固件、软件或者其组合来实现。在通过硬件实现的情况下,本公开内容可以通过一个或更多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑设备(PLD)、现场可编程门阵列(FPGA)、通用处理器、控制器、微控制器、微处理器等来实现。
本公开内容的范围包括使根据各种实施方式方法的操作在装置或计算机上执行的软件或机器可执行指令(例如,操作系统、应用、固件、程序等),并且这样的软件或指令包括在装置或计算机上存储且可执行的非暂态计算机可以读介质。
工业适用性
本发明可以用于对视频信号进行编码/解码。

Claims (8)

1.一种对图像进行解码的方法,包括:
确定用于更新当前块的运动信息的搜索区域;
生成用于所述搜索区域的SAD列表,所述SAD列表包括多个SAD候选;
基于所述SAD列表的SAD候选导出所述当前块的变化量运动信息;以及
使用所述当前块的运动信息和所述变化量运动信息更新所述当前块的运动信息,
其中,基于参考SAD候选与预定阈值之间的比较结果执行所述变化量运动信息的导出,
其中,所述参考SAD候选意指与非有向偏移对应的SAD候选,并且
其中,在所述参考SAD候选大于或等于所述预定阈值的情况下,导出所述变化量运动信息包括:
识别属于所述SAD列表的SAD候选中具有最小值的SAD候选;以及
基于与所识别的SAD候选对应的偏移来确定所述变化量运动信息。
2.根据权利要求1所述的方法,其中,所述搜索区域被确定为包括参考块或者所述参考块的相邻区域至少一者的区域,并且
其中,所述相邻区域是基于所述参考块的边界被延伸N个样本线的区域。
3.根据权利要求1所述的方法,其中,所述SAD候选由L0块与L1块之间的SAD值确定,并且
其中,所述L0块是基于所述当前块的L0参考块的位置和预定偏移而确定的,并且所述L1块是基于所述当前块的L1参考块的位置和所述预定偏移而确定的。
4.根据权利要求3所述的方法,其中,所述偏移包括非有向偏移或者有向偏移中的至少一者,并且
其中,所述有向偏移包括针对左、右、上、下、左上、右上、左下或者右下至少一个方向的偏移。
5.根据权利要求1所述的方法,在所述参考SAD候选小于所述阈值的情况下,导出所述变化量运动信息包括:
使用属于所述SAD列表的SAD候选的全部或者一部分SAD候选来计算预定参数;以及
基于所计算的参数确定所述变化量运动信息。
6.根据权利要求5所述的方法,其中,通过考虑块大小、当前图片与参考图片之间的距离、帧间预测模式,预测方向或者所述运动信息的单位/分辨率中至少一者来有限地执行对所述当前块的运动信息的更新。
7.一种对图像进行编码的方法,包括:
确定用于更新当前块的运动信息的搜索区域;
生成用于所述搜索区域的SAD列表,所述SAD列表包括多个SAD候选;并且
基于所述SAD列表的SAD候选导出所述当前块的变化量运动信息,
其中,使用所述当前块的运动信息和所述变化量运动信息更新所述当前块的运动信息,
其中,基于参考SAD候选与预定阈值之间的比较结果执行所述变化量运动信息的导出,
其中,所述参考SAD候选意指与非有向偏移对应的SAD候选,并且
其中,在所述参考SAD候选大于或等于所述预定阈值的情况下,导出所述变化量运动信息包括:
识别属于所述SAD列表的SAD候选中具有最小值的SAD候选;以及
基于与所识别的SAD候选对应的偏移来确定所述变化量运动信息。
8.一种用于存储比特流的非暂态计算机可读存储介质,所述比特流通过包括以下步骤的方法而生成:
确定用于更新当前块的运动信息的搜索区域;
生成用于所述搜索区域的SAD列表,所述SAD列表包括多个SAD候选;以及
基于所述SAD列表的SAD候选导出所述当前块的变化量运动信息,
其中,使用所述当前块的运动信息和所述变化量运动信息更新所述当前块的运动信息,
其中,基于参考SAD候选与预定阈值之间的比较结果执行所述变化量运动信息的导出,
其中,所述参考SAD候选意指与非有向偏移对应的SAD候选,并且
其中,在所述参考SAD候选大于或等于所述预定阈值的情况下,导出所述变化量运动信息包括:
识别属于所述SAD列表的SAD候选中具有最小值的SAD候选;以及
基于与所识别的SAD候选对应的偏移来确定所述变化量运动信息。
CN201980019969.4A 2018-03-19 2019-03-19 图像解码方法、编码方法以及存储比特流的记录介质 Active CN111886869B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202311502761.2A CN117640961A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311503419.4A CN117544787A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311506471.5A CN117640962A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311509601.0A CN117336506A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR20180031343 2018-03-19
KR10-2018-0031343 2018-03-19
PCT/KR2019/003192 WO2019182329A1 (ko) 2018-03-19 2019-03-19 영상 복호화 방법/장치, 영상 부호화 방법/장치 및 비트스트림을 저장한 기록 매체

Related Child Applications (4)

Application Number Title Priority Date Filing Date
CN202311506471.5A Division CN117640962A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311503419.4A Division CN117544787A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311509601.0A Division CN117336506A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311502761.2A Division CN117640961A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质

Publications (2)

Publication Number Publication Date
CN111886869A CN111886869A (zh) 2020-11-03
CN111886869B true CN111886869B (zh) 2023-12-05

Family

ID=67987951

Family Applications (5)

Application Number Title Priority Date Filing Date
CN202311502761.2A Pending CN117640961A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311506471.5A Pending CN117640962A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN201980019969.4A Active CN111886869B (zh) 2018-03-19 2019-03-19 图像解码方法、编码方法以及存储比特流的记录介质
CN202311509601.0A Pending CN117336506A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311503419.4A Pending CN117544787A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN202311502761.2A Pending CN117640961A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311506471.5A Pending CN117640962A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN202311509601.0A Pending CN117336506A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质
CN202311503419.4A Pending CN117544787A (zh) 2018-03-19 2019-03-19 图像解码方法、图像编码方法和存储比特流的记录介质

Country Status (4)

Country Link
US (3) US11356692B2 (zh)
KR (1) KR20190110065A (zh)
CN (5) CN117640961A (zh)
WO (1) WO2019182329A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111955008A (zh) * 2018-03-29 2020-11-17 世宗大学校产学协力团 用于对图像编码/解码的方法和设备
US11936899B2 (en) * 2021-03-12 2024-03-19 Lemon Inc. Methods and systems for motion candidate derivation
US11671616B2 (en) 2021-03-12 2023-06-06 Lemon Inc. Motion candidate derivation
CN113596475A (zh) * 2021-06-24 2021-11-02 浙江大华技术股份有限公司 图像/视频编码方法、装置、系统及计算机可读存储介质
WO2023091775A1 (en) * 2021-11-22 2023-05-25 Beijing Dajia Internet Information Technology Co., Ltd. Decoder side motion information derivation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103299642A (zh) * 2011-01-07 2013-09-11 Lg电子株式会社 编码和解码图像信息的方法和使用该方法的装置
US9137546B2 (en) * 2008-10-14 2015-09-15 Sk Telecom Co., Ltd. Method and apparatus for encoding/decoding motion vectors of multiple reference pictures, and apparatus and method for image encoding/decoding using the same
KR20170058866A (ko) * 2015-11-19 2017-05-29 한국전자통신연구원 영상 부호화/복호화 방법 및 장치
KR20170131446A (ko) * 2015-03-27 2017-11-29 퀄컴 인코포레이티드 비디오 코딩에서의 모션 정보 유도 모드 결정

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100446235B1 (ko) * 2001-05-07 2004-08-30 엘지전자 주식회사 다중 후보를 이용한 움직임 벡터 병합 탐색 방법
US8913660B2 (en) 2005-04-14 2014-12-16 Fastvdo, Llc Device and method for fast block-matching motion estimation in video encoders
CN101031088A (zh) * 2006-02-28 2007-09-05 展讯通信(上海)有限公司 一种用于视频编码器实现的快速十字运动估计方法
JP4843482B2 (ja) * 2006-12-27 2011-12-21 株式会社東芝 情報処理装置およびプログラム
JP4882956B2 (ja) * 2007-10-22 2012-02-22 ソニー株式会社 画像処理装置および画像処理方法
JP4506875B2 (ja) * 2008-05-19 2010-07-21 ソニー株式会社 画像処理装置および画像処理方法
JP4760923B2 (ja) * 2009-02-03 2011-08-31 ソニー株式会社 画像処理装置、画像処理方法および撮像装置
US8411756B2 (en) * 2009-05-21 2013-04-02 Ecole De Technologie Superieure Method and system for generating block mode conversion table for efficient video transcoding
US8446524B2 (en) * 2010-06-21 2013-05-21 Realtek Semiconductor Corp. Apparatus and method for frame rate conversion
US8755437B2 (en) * 2011-03-17 2014-06-17 Mediatek Inc. Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate
US20130329007A1 (en) * 2012-06-06 2013-12-12 Qualcomm Incorporated Redundancy removal for advanced motion vector prediction (amvp) in three-dimensional (3d) video coding
CN106537918B (zh) 2014-08-12 2019-09-20 英特尔公司 用于视频编码的运动估计的系统和方法
MX2018002477A (es) 2015-09-02 2018-06-15 Mediatek Inc Metodo y aparato de derivacion de movimiento de lado de decodificador para codificacion de video.
US10575011B2 (en) 2015-09-24 2020-02-25 Lg Electronics Inc. Inter prediction method and apparatus in image coding system
CN111955008A (zh) * 2018-03-29 2020-11-17 世宗大学校产学协力团 用于对图像编码/解码的方法和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9137546B2 (en) * 2008-10-14 2015-09-15 Sk Telecom Co., Ltd. Method and apparatus for encoding/decoding motion vectors of multiple reference pictures, and apparatus and method for image encoding/decoding using the same
CN103299642A (zh) * 2011-01-07 2013-09-11 Lg电子株式会社 编码和解码图像信息的方法和使用该方法的装置
KR20170131446A (ko) * 2015-03-27 2017-11-29 퀄컴 인코포레이티드 비디오 코딩에서의 모션 정보 유도 모드 결정
KR20170058866A (ko) * 2015-11-19 2017-05-29 한국전자통신연구원 영상 부호화/복호화 방법 및 장치

Also Published As

Publication number Publication date
US20230345034A1 (en) 2023-10-26
US11729410B2 (en) 2023-08-15
CN117640962A (zh) 2024-03-01
WO2019182329A1 (ko) 2019-09-26
CN117544787A (zh) 2024-02-09
KR20190110065A (ko) 2019-09-27
US20210006815A1 (en) 2021-01-07
CN111886869A (zh) 2020-11-03
US11356692B2 (en) 2022-06-07
CN117640961A (zh) 2024-03-01
US20220264140A1 (en) 2022-08-18
CN117336506A (zh) 2024-01-02

Similar Documents

Publication Publication Date Title
CN111213379B (zh) 用于将图像编码/解码的方法、装置和存储比特流的记录介质
CN111886869B (zh) 图像解码方法、编码方法以及存储比特流的记录介质
CN112369034B (zh) 使用合并候选的视频编码方法和装置
CN111937399B (zh) 基于仿射模型的图像编码/解码方法和装置
US11490077B2 (en) Image encoding/decoding method and apparatus involving merge candidate list and triangular shape partitions
CN117528088A (zh) 对图像进行解码和编码的方法、非暂态计算机可读介质
KR20210008105A (ko) 영상 부호화/복호화 방법 및 장치
US20230283795A1 (en) Video coding method and device using motion compensation of decoder side

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