CN112335248A - 使用解码器侧的运动补偿的视频编码方法和装置 - Google Patents

使用解码器侧的运动补偿的视频编码方法和装置 Download PDF

Info

Publication number
CN112335248A
CN112335248A CN201980043825.2A CN201980043825A CN112335248A CN 112335248 A CN112335248 A CN 112335248A CN 201980043825 A CN201980043825 A CN 201980043825A CN 112335248 A CN112335248 A CN 112335248A
Authority
CN
China
Prior art keywords
block
motion
prediction
unit
modification
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.)
Granted
Application number
CN201980043825.2A
Other languages
English (en)
Other versions
CN112335248B (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.)
Indy Co ltd
Original Assignee
Indy 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 Indy Co ltd filed Critical Indy Co ltd
Priority to CN202311508957.2A priority Critical patent/CN117354508A/zh
Priority to CN202311507833.2A priority patent/CN117354506A/zh
Priority to CN202311509851.4A priority patent/CN117354509A/zh
Priority to CN202311511354.8A priority patent/CN117354510A/zh
Publication of CN112335248A publication Critical patent/CN112335248A/zh
Application granted granted Critical
Publication of CN112335248B publication Critical patent/CN112335248B/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
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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

Landscapes

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

Abstract

根据本发明,视频编码方法和装置确定是否以子块为单位执行运动补偿,确定用于当前块的运动补偿的搜索区域,计算关于搜索区域的多个SAD候选,基于多个SAD候选来导出当前块的变化量运动信息,以及可以通过使用当前块的变化量运动信息和预生成的运动信息来补偿当前块的运动信息。

Description

使用解码器侧的运动补偿的视频编码方法和装置
技术领域
本发明涉及视频编码技术。特别地,本发明涉及视频编码技术之中的解码器侧处的运动修改技术。
背景技术
对高分辨率视频的市场需求正在增加,因此,需要能够有效率地压缩高分辨率图像的技术。响应于这样的市场需求,ISO/IEC的运动图片专家组(MPEG)和ITU-T的VCEG(视频编码专家组)联合成立JCT-VC(视频编码联合协作组),在2013年1月开发了高效视频编码(HEVC)视频压缩标准,并且已经在积极地进行对下一代压缩标准的研究和开发。
视频压缩主要由帧内预测、帧间预测、变换、量化、熵编码、环内滤波器组成。同时,随着对高分辨率图像的需求增加,对作为一种新图像服务的3D图像内容的需求也正在增加。正在讨论用于有效地提供高分辨率和超高分辨率的3D视频内容的视频压缩技术。
发明内容
技术问题
本公开内容的目的是提供具有改进的效率的图像编码/解码方法和设备。
另外,本发明的目的是提供用于在图像编码/解码方法和设备中执行有效率的运动修改的视频编码方法和设备。
另外,本公开内容的目的是提供存储由图像编码方法/设备生成的比特流的计算机可读记录介质。
技术解决方案
根据本发明的图像编码/解码方法和设备确定是否以子块为单位执行运动修改;确定用于当前块的运动修改的搜索区域;计算搜索区域的多个SAD候选;基于多个SAD候选来导出当前块的变化量(delta)运动信息;以及通过使用当前块的预生成的运动信息和变化量运动信息来修改当前块的运动信息。
在根据本发明的视频编码/解码方法和设备中,可以基于当前块的大小来确定是否以子块为单位执行运动修改。
在根据本发明的视频编码/解码方法和设备中,将搜索区域确定为包括参考块或参考块的相邻区域中的至少一者的区域,并且相邻区域可以为与参考块的边界相邻的N条样本线。
在根据本发明的视频编码/解码方法和设备中,SAD候选可以确定为L0块与L1块之间的SAD值,并且L0块可以基于当前块的L0参考块的位置和预定偏移来确定。L1块可以基于当前块的L1参考块的位置和预定偏移来确定。
在根据本发明的用于对图像进行编码/解码的方法和设备中,可以基于L0块和L1块中的一些样本来确定SAD候选。
在根据本发明的图像编码/解码方法和设备中,偏移可以包括非有向偏移或有向偏移中的至少一者,并且有向偏移可以包括对左、右、上、下、左上、右上、左下或者右下中至少一个方向的偏移。
在根据本发明的视频编码/解码方法和设备中,可以基于参考SAD候选与预定阈值之间的比较结果适应性地执行运动修改,并且参考SAD候选可以意味着与非有向偏移对应的SAD候选。
在根据本发明的图像编码/解码方法和设备中,可以考虑到块大小、当前图片与参考图片之间的距离、帧间预测模式、预测方向、或者运动信息的分辨率或单位中的至少一者来有限地执行运动修改。
有益效果
根据本发明,可以提供能够进行有效率的运动修改的图像编码/解码方法和设备。
此外,可以提供根据本公开内容的用于存储由图像编码方法/设备生成的比特流的计算机可读记录介质。
附图说明
图1是示出了根据本公开内容的图像编码设备的框图。
图2是示出了根据本公开内容的图像解码设备的框图。
图3是示出了用于在解码器侧处修改运动的技术的概念的图。
图4是示出了解码器侧处的运动修改技术的流程图的图。
图5是示出了一个编码块和相应编码块的子块的概念的图。
图6是示出了解码器侧处的基于子块的运动修改技术的流程图的图。
图7是示出了执行块匹配的目标块和相应块中的目标像素的图。
图8是示出了使用经子采样的块执行解码器侧处的运动修改的概念的图。
图9是示出了执行解码器侧处的运动修改的过程中当满足特定条件时执行提前终止的流程图的图。
具体实施方式
最佳模式
根据本发明的图像编码/解码方法和设备确定是否以子块为单位执行运动修改;确定用于当前块的运动修改的搜索区域;计算搜索区域的多个SAD候选;基于多个SAD候选来导出当前块的变化量运动信息;以及通过使用当前块的预生成的运动信息和变化量运动信息来修改当前块的运动信息。
在根据本发明的视频编码/解码方法和设备中,可以基于当前块的大小来确定是否以子块为单位执行运动修改。
在根据本发明的视频编码/解码方法和设备中,将搜索区域确定为包括参考块或参考块的相邻区域中的至少一者的区域,并且相邻区域可以为与参考块的边界相邻的N条样本线。
在根据本发明的视频编码/解码方法和设备中,SAD候选可以确定为L0块与L1块之间的SAD值,并且L0块可以基于当前块的L0参考块的位置和预定偏移来确定。L1块可以基于当前块的L1参考块的位置和预定偏移来确定。
在根据本发明的用于对图像进行编码/解码的方法和设备中,可以基于L0块和L1块中的一些样本来确定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)和上下文自适应二进制算术编码(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是示出了用于在解码器侧中修改运动的技术的概念的图。特别地,图3是示出了用于在解码器侧中修改运动的技术的概念的图。在解码器侧的运动修改技术的情况下,当当前块是由双预测所预测的块时,解码器通过基于由预定的预测方法生成的预测块来执行另外的运动预测处理来修改运动。在本发明中,稍后将描述解码器侧上的运动修改技术的操作和过程。在本说明书中,运动意味着运动信息,并且运动信息可以包括运动矢量、参考图片索引或预测方向中的至少一者。
当使用双预测来预测作为当前编码和解码目标的当前图片(300)中的当前块(310)时,可以应用本发明中提出的解码器侧处的运动修改技术。
如图3所示,当前块(310)是双向预测块,并且使用沿L0方向的运动(340)和沿L1方向的运动(341)的沿L0方向的参考块(321)和沿L1方向的参考块(322)被用作预测块。
在这种情况下,经双向预测的预测块是块(320),这意味着块具有与通过沿L0方向的参考块(321)和沿L1方向的参考块(322)的加权和而生成的当前块(310)相同大小。
在这种情况下,加权和的权重为n:m,并且n和m可以是非0的整数。例如,n的绝对值是大于或等于1并且小于或等于10的自然数。n可以为正或负。m可以导出为(8-n)。在这种情况下,当权重比为1:1时,(320)块可以是沿两个不同的方向具有参考块的平均值的块。
在常规的双向预测的情况下,经双向预测的预测块(320)被用作当前块的最终预测块。
本发明中提出的解码器侧处的运动修改技术通过基于经双向预测的预测块(320)在解码器中在一定的搜索范围内执行另外的运动预测来将运动修改成具有最佳速率失真值。在下文中,沿L0方向的参考块与沿L1方向的参考块将分别称为L0预测块和L1预测块。遍历分别包括L0预测块(321)和L1预测块(322)的预定搜索范围(360)内的像素,并且针对每个方向搜索预测块(320)和相对于预测块(320)的速率失真值最小的运动。
在这种情况下,通过对具有如下运动——该运动的相对于预测块(320)的速率失真值在沿L0方向的搜索范围中是最小——的块执行搜索来确定沿L0方向的修改的运动信息(350)和沿L0方向的新的预测块(331)。
以相同的方式,通过对具有如下运动——该运动的相对于预测块(320)的速率失真值在沿L1方向的搜索范围中是最小——的块执行搜索来确定沿L1方向的修改的运动信息(351)和沿L1方向的新的预测块(332)。
基于沿L0方向和L1方向新确定的预测块(331,332)的加权和,获得在解码器侧处执行运动修改的最终的双向预测块(330)。
图4是示出了解码器侧上的运动修改技术的流程图的图。特别地,图4是示出了解码器侧上的运动修改技术的流程图的图,并且解码器侧上的运动修改技术是如下技术:当当前块是通过双预测所预测的块时,通过基于由预定预测方法生成的预测块来在解码器中执行另外的运动预测处理来修改运动。
如图4所示,解码器侧处的运动修改技术基于执行关于运动补偿的条件操作。在解码器侧处使用运动补偿技术的运动补偿的流程包括根据预定的帧间预测模式的运动导出和/或运动补偿步骤(400),以及包括在解码器侧处的运动修改性能确定单元(410);在解码器侧处的运动修改性能单元(420);以及基于经修改运动的运动补偿步骤(430)。
在解码器侧上的运动修改性能确定单元(410)确定当前块是否执行运动修改。使用当前编码单元的编码模式信息、帧间预测方向性、块大小、当前图片与参考图片之间的距离、预测模式、预测方向、运动信息的单位或分辨率来执行确定,而没有对用于执行解码器侧处的以编码单元为单位的运动修改的信息进行信号传输。然而,可以执行用于执行解码器侧处的运动修改的序列级的信号传输。
在这种情况下,作为使用帧间预测方向性的实施方式,当不执行双向预测时,不执行解码器侧处的运动修改。然而,即使当执行双向预测时,在使用相同的时间方向的双向预测的情况下,也不执行解码器侧处的运动修改。
当前编码单元的编码模式信息可以包括是否合并当前预测单元的运动,是否执行仿射变换预测。在实施方式中,当当前预测单元执行运动合并时,可以执行解码器侧处的运动修改。
当前编码单元的编码模式信息可以包括是否合并当前预测单元的运动,是否执行仿射变换预测。
在实施方式中,当当前预测单元执行运动合并时,可以执行解码器侧处的运动修改。然而,在运动合并候选之中的执行子块单元运动预测的运动合并候选的情况下,不执行解码器侧处的运动修改。
在实施方式中,当当前预测单元执行仿射变换预测时,不执行解码器侧处的运动修改。
仅当当前块的宽度或高度中的任一个大于或等于8、16或32时,才可以执行解码器侧上的运动修改。替选地,仅当当前块的宽度和高度大于或等于8、16或32时,才可以执行解码器侧处的运动修改。替选地,仅当当前块的样本的面积或数量大于或等于64、128或256时,才可以执行解码器侧处的运动修改。
仅当当前图片与L0参考图片之间的图片顺序计数(picture order count,POC)差异和当前图片与L1参考图片之间的POC差异相同时,才可以执行解码器侧处的运动修改。
仅当双向预测的权重比为1:1时,才可以执行解码器侧处的运动修改。
仅当运动的单位是整数像素时,才可以执行解码器侧处的运动修改,或者仅当运动的单位等于或小于四分之一像素或二分之一像素时,才可以执行解码器侧处的运动修改。
仅当当前块的预测模式不是混合预测模式时,才可以执行解码器侧上的运动修改。混合预测模式是基于帧内预测与帧间预测的组合的预测模式,并且可以意味着其中分别计算帧内预测像素和帧间预测像素并且执行两个像素的加权预测的模式。
仅当当前块不基于预定偏移信息执行运动修改时,才可以执行解码器侧处的运动修改。在此,偏移信息可以包括偏移矢量的长度、方向或分辨率(或精度)中的至少之一。也就是说,可以通过基于偏移信息指定偏移矢量并且将偏移矢量应用至预先恢复的运动矢量来执行运动修改。偏移信息可以在帧间预测模式中用信号传输,在该帧间预测模式中,分离的运动矢量差值(motion vector difference value,mvd)不用信号传输,例如合并模式。
然而,当偏移矢量的长度大于预定阈值长度时,解码器侧处的运动修改可以与基于偏移信息的运动修改一起应用。在此,阈值长度可以是1、2、3或更大的整数。在这种情况下,可以以解码器侧上的运动修改和基于偏移信息的运动修改的顺序执行运动修改,或者可以以相反的顺序执行运动修改。替选地,当偏移矢量的长度是0时,可以应用解码器侧处的运动修改。
可以基于上述性能条件中的任一个来执行解码器侧处的运动修改,或者可以基于以上性能条件中的至少两个的组合来执行解码器侧处的运动修改。
解码器侧上的运动修改性能单元(420)包括L0方向运动修改单元(421)和L1方向运动修改单元(422)。
解码器侧处的运动修改性能单元(420)通过仅对沿L0和L1方向的有限搜索区域使用通过执行运动补偿(400)而获得的预测块另外地执行解码器侧处的运动预测来获得相对于预测块具有最佳速率失真值的经修改运动。
在这种情况下,沿L0和L1方向的有限搜索区域是指在执行解码器侧上的运动修改之前空间上与参考块相邻的像素区域。
基于相应的参考块的位置,空间上相邻的像素区域可以限于8个相邻的像素。然而,本发明不限于此,并且扩展范围也包括在本发明中。
在通过在搜索区域中执行另外的运动预测来获得最佳速率失真值的过程中,不同于在常规运动预测中通过块匹配获取运动矢量的比特率和失真值,由本发明提出的解码器侧运动修改方法通过在不考虑运动矢量的比特率的情况下通过块匹配来使用仅失真值,在运动搜索处理中选择了具有最小失真值的块作为最终参考块,并且由本发明提出的解码器侧运动修改方法使用此时的运动矢量作为最终运动矢量。
具体地,解码器可以确定用于运动修改的搜索区域(S1)。可以将搜索区域确定为包括参考块或参考块的相邻区域中的至少一者的区域。在这种情况下,参考块的左上样本的位置可以是搜索的参考位置。可以分别针对L0方向和L1方向确定搜索区域。相邻区域可以意味着与参考块的边界相邻的N条样本线。在此,N可以是1、2、3或更大的整数。
相邻区域可以位于参考块的左、上、右、下、左上、左下、右上或右下中的至少一者。在这种情况下,当当前块是W×H时,搜索区域可以被表示为(W+2N)×(H+2N)。然而,为了降低运动修改处理的复杂度,相邻区域可以仅位于上述方向中的一些方向中。例如,相邻区域可以限于与参考块的左、上或左上中的至少一个相邻的区域,或者可以限于与参考块的右、下或右下中的至少一个相邻的区域。
样本线的数量(N)可以是在解码器中预定义的固定值,或者可以考虑块属性而可变地确定。在此,块属性可以意味着块的大小/形状、块位置、帧间预测模式、部件类型等。块位置可以意味着参考块是否与图片或预定片段区域的边界相邻。片段区域可以意味着切片、图块、子图块(砖)、编码树块的列/行(CTB行/列)、或编码树块。例如,可以根据块属性选择性地使用0、1或2样本线中之一。
解码器可以确定关于搜索区域中的每个搜索位置的绝对差之和(sum ofabsolute difference,SAD)(S2)。
在下文中,将关于每个搜索位置的SAD称为SAD候选。SAD候选的数量是M,并且M可以是大于或等于2的整数。可以基于上述样本线的数量(N)来确定M。例如,如果N为1,则M可以被限制为小于或等于9。替选地,如果N为2,则M可以被限制为小于或等于25。替选地,不管上述样本线的数量(N),M可以小于或等于9。
可以将SAD候选确定为L0块与L1块之间的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/2×H时,一些样本可以属于L0/L1块内的左区域(或右区域)。当部分区域是W/2×H/2时,一些样本可以属于L0/L1块内的左上区域,但是本发明不限于此。替选地,一些样本可以定义为一组偶数个或奇数个样本线(垂直或水平方向)的L0/L1块或部分区域。另外,一些样本可以是通过沿垂直和/或水平方向对L0/L1块或部分区域进行二次采样而获得的块。也就是说,L0块和L1块具有W×H的大小,并且与一些样本相对应的块可以是包括在L0/L1块或部分区域中的样本之中的一组奇数行、一组偶数行、一组奇数列或一组偶数列中的至少一者。上述一些样品的位置将参照图7和图8进一步描述。
可以基于当前块的L0参考块的位置和预定偏移来确定L0块的位置。偏移可以意味着L0参考块的位置与搜索位置之间的视差(disparity)矢量。也就是说,搜索位置可以是从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
对于每个索引i,表1定义了用于确定搜索位置的偏移。然而,表1不限制与索引i相对应的偏移的位置,并且每个索引的偏移的位置可以与表1不同。根据表1的偏移可以包括上述的非有向偏移(0,0)和八个有向偏移。
在这种情况下,可以基于参考块的位置(x,y)和偏移(-1,-1)来确定第0个SAD候选。具体地,将从L0参考块的位置(x0,y0)移位了偏移(-1,-1)的位置设置为搜索位置,并且将左上样本包括为搜索位置的W×H的块可以被确定为L0块。
类似地,可以将从L1参考块的位置(x1,y1)移位了偏移(1,1)的位置设置为搜索位置,并且将左上样本包括为搜索位置的W×H块可以被确定为L1块。可以通过计算L0块与L1块之间的SAD来确定第0个SAD候选。
通过上述处理,可以确定第一至第八个SAD候选,并且可以确定包括9个SAD候选的SAD阵列。
表1不限制运动修改的偏移的数量。在九个偏移中,仅可以使用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
作为示例,可以如下表3所示定义偏移。
[表3]
i 0 1 2 3 4
dX[i] -2 -1 0 1 2
dY[i] -2 -2 -2 -2 -2
i 5 6 7 8 9
dX[i] -2 -1 0 1 2
dY[i] -1 -1 -1 -1 -1
i 10 11 12 13 14
dX[i] -2 -1 0 1 2
dY[i] 0 0 0 0 0
i 15 16 17 18 19
dX[i] -2 -1 0 1 2
dY[i] 1 1 1 1 1
i 20 21 22 23 24
dX[i] -2 -1 0 1 2
dY[i] 2 2 2 2 2
对于每个索引i,表3定义了用于确定搜索位置的偏移。然而,表3不限制与索引i相对应的偏移的位置,并且每个索引的偏移的位置可以与表3不同。根据表3的偏移可以包括上述的非有向偏移(0,0)和24个有向偏移。
在这种情况下,可以基于参考块的位置(x,y)和偏移(-2,-2)来确定第0个SAD候选。具体地,将从L0参考块的位置(x0,y0)移位了偏移(-2,-2)的位置设置为搜索位置,并且将左上样本包括为搜索位置的W×H的块可以被确定为L0块。
类似地,可以将从L1参考块的位置(x1,y1)移位了偏移(2,2)的位置设置为搜索位置,并且将左上样本包括为搜索位置的W×H的块可以被确定为L1块。可以通过计算L0块与L1块之间的SAD来确定第0个SAD候选。
通过上述处理,可以确定第1至第24个的SAD候选,并且可以确定包括25个SAD候选的SAD阵列。
以这种方式,根据偏移的大小和/或数量,可以可变地确定上述搜索区域的大小和/或形状,并且可以确定SAD候选的数量。
解码器可以基于所确定的SAD候选来执行当前块的运动修改(S3)。
首先,可以在多个SAD候选之中识别具有最小值的SAD候选。将描述识别具有最小值的SAD候选的方法。可以比较第一SAD候选与第二SAD候选之间的大小。第一SAD候选和第二SAD候选之中的小的候选可以被设置为具有最小值的SAD候选(minSad)。可以执行minSad与第三SAD候选之间的比较,并且可以以相同的方式更新minSad。通过执行与上述偏移的数量一样多的比较处理,可以确定最终的minSad。
替选地,作为示例,可以将多个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候选可以意味着与偏移(0,0)相对应的SAD候选。替选地,参考SAD候选可以意味着与由稍后要描述的第一方法改变的参考块的位置或参考位置相对应的SAD候选。可以基于当前块或参考块的宽度(W)或高度(H)中的至少一者来确定阈值。替选地,当当前块基于子块执行运动修改时,可以基于子块的宽度(W)或高度(H)中的至少一者来确定当前块。例如,可以将阈值确定为W*H、W*(H/2)、(W/2)*H、2*W*H、4*W*H、8*W*H、16*W*H等。
当参考SAD候选大于或等于阈值时,可以基于稍后要描述的方法来导出变化量运动信息。另一方面,当参考SAD候选小于阈值时,可以不执行运动修改。
此外,可以将与所识别的SAD候选相对应的搜索位置改变为用于搜索的参考位置。基于改变的参考位置,可以重新执行上述确定SAD候选和/或识别具有最小值的SAD候选的处理,并且将省略冗余描述。可以基于重新执行结果来更新变化量运动信息。
另外,代替SAD,也可以基于关于每个搜索位置的绝对变换差之和(SATD)来执行运动修改。例如,可以生成L0块与L1块之间的差异块,并且可以将差异块中的所有或一些样本变换到频域中以确定SATD候选。在此,一些样本的区域如上所述,并且将省略详细描述。可以以n*m子块为单位执行变换,并且n和m可以是4、8或更大的整数。可以基于哈达玛变换、DCT、DST等来执行变换。变换可以包括第一变换或第二变换中的至少一者。第二变换可以意味着另外地施加于第一变换的结果值的二次变换,并且在这种情况下,可以仅将其施加于第一变换的结果值的DC分量。
然后,基于与在SATD候选之中具有最小值的SATD候选对应的偏移,可以导出变化量运动信息,并且可以使用其来修改预先恢复的运动信息。基于SAD的运动修改方法可以以相同/相似的方式应用于基于SATD的运动修改方法,并且将省略其详细描述。
图4中所示的基于经修改运动的运动补偿步骤(430)是如下步骤:基于通过解码器侧处的运动修改性能单元(420)获得的经修改的L0运动和L1运动来执行双向运动补偿。
图5是示出了一个编码块和相应编码块的子块的概念的图。特别地,图3是示出了一个编码块(500)和相应编码块的子块(501)的概念的图。在图5中,大小为16×16的编码块被示出为实施方式,并且相应编码块被划分为具有4×4的大小的总共16个子块。
在描述以子块为单位的解码器侧处的运动修改技术——其是在本发明中提出的解码器侧处的运动修改技术的实施方式——之前,图5示出了一个编码块(500)及其子块的概念。
通常,其包括使用4×4的固定的块大小作为子块来划分一个编码块。
然而,除了4×4的固定的大小之外,还可以通过另外的高级句法来由信号发送子块的大小。
替选地,可以考虑到当前块的运动信息、块的大小等来计算。例如,当当前块的宽度大于或等于预定阈值大小时,子块可以具有与阈值大小相同的宽度,否则,子块可以具有与当前块相同的宽度。类似地,当当前块的高度大于或等于预定阈值大小时,子块可以具有与阈值大小相同的高度,否则,子块可以具有与当前块相同的高度。在此,阈值大小可以是16、32、64或更大的整数。
图6是示出了解码器侧处以子块为单位的运动修改技术的流程图的图。特别地,图6是示出了用于解码器侧处的以子块为单位的运动修改的技术的流程图的图,其中,当当前块是通过双预测所预测的块时,通过使用由常规预测方法生成的预测块,在解码器中以子块或块为单位来执行另外的运动预测处理来修改运动。
如图6所示,解码器侧处的运动修改技术基于执行关于运动补偿的条件操作。
使用以子块为单位的解码器侧处的运动修改技术的运动补偿技术可以包括根据预定的帧间预测模式的运动导出和/或运动补偿步骤(600);在解码器侧上的运动修改性能确定单元(610);以及子块级性能确定单元(620)。在执行以子块为单位的解码器侧上的运动修改的情况下,其可以包括:以子块为单位的解码器侧处的运动修改性能单元(660),其将当前编码块划分为多个子块并且重复直到最后一个子块;以及以子块为单位的基于经修改运动的运动补偿单元(670)。当不执行以子块为单位的解码器侧处的运动修改时,其可以包括:以编码块为单位的解码器侧上的运动修改性能单元(630);以及基于经修改运动的运动补偿步骤(640)。
在解码器侧上的运动修改性能确定单元(610)确定当前块是否执行运动修改。使用当前编码单元的编码模式信息、帧间预测方向性、块大小、当前图片与参考图片之间的距离、帧间预测模式、预测方向、运动信息的单位或分辨率来执行确定,而没有对用于执行解码器侧处的以编码单元为单位的运动修改的信息进行信号传输。然而,可以执行用于执行解码器侧处的运动修改的序列级的信号传输。
在这种情况下,作为使用帧间预测方向性的实施方式,当不执行双向预测时,不执行解码器侧处的运动修改。然而,即使当执行双向预测时,在使用相同的时间方向的双向预测的情况下,也不执行解码器侧处的运动修改。
当前编码单元的编码模式信息可以包括是否合并当前预测单元的运动,是否执行仿射变换预测。在实施方式中,当当前预测单元执行运动合并时,可以执行解码器侧处的运动修改。
当前编码单元的编码模式信息可以包括是否合并当前预测单元的运动,是否执行仿射变换预测。
在实施方式中,当当前预测单元执行运动合并时,可以执行解码器侧处的运动修改。然而,在运动合并候选之中的执行子块单元运动预测的运动合并候选的情况下,不执行解码器侧处的运动修改。
替选地,当当前预测单元执行基于子块的运动合并时,可以执行解码器侧上的基于子块的运动修改而无需另外的确定。
在实施方式中,当当前预测单元执行仿射变换预测时,不执行解码器侧处的运动修改。
仅当当前块的宽度或高度中的任一个大于或等于8、16或32时,才可以执行解码器侧上的运动修改。替选地,仅当当前块的宽度和高度大于或等于8、16或32时,才可以执行解码器侧处的运动修改。替选地,仅当当前块的样本的面积或数量大于或等于64、128或256时,才可以执行解码器侧处的运动修改。
仅当当前图片与L0参考图片之间的图片顺序计数(POC)差异和当前图片与L1参考图片之间的POC差异相同时,才可以执行解码器侧处的运动修改。
仅当双向预测的权重比为1:1时,才可以执行解码器侧处的运动修改。
仅当运动的单位是整数像素时,才可以执行解码器侧处的运动修改,或者仅当运动的单位等于或小于四分之一像素或二分之一像素时,才可以执行解码器侧处的运动修改。
如图6所示,其可以包括确定当前编码块是执行解码器侧上的基于编码块的运动修改还是基于子块的运动修改的步骤(620)。
如以上实施方式中那样,可以使用关于当前编码块的信息而无需另外的信号传输来确定是否执行解码器侧上的基于子块的运动修改或者是否执行解码器侧上的基于编码块的运动修改。
在这种情况下,关于当前编码块的信息可以指示是否执行运动合并以及是否执行基于子块的运动合并。
此外,关于当前编码块的信息可以包括空间上和时间上与当前块相邻的运动信息。
替选地,可以基于当前块的大小来确定是否执行基于子块的运动修改。例如,当当前块的大小大于预定阈值大小时,当前块以子块为单位执行运动修改,否则,当前块可以不以子块为单位执行运动修改。在此,当前块的大小可以意味着当前块的宽度或高度中的至少之一。阈值大小可以是16、32或更大。
例如,如果当前块是16×32并且阈值大小是16,则由于当前块的高度大于16,因此当前块可以以子块为单位执行运动修改。同时,当当前块是16×8并且阈值大小是16时,则由于当前块的宽度和高度两者不大于16,因此可以不以子块为单位对当前块执行运动修改。
在执行解码器侧上的基于子块的运动修改的情况下,一个编码块被划分为多个子块。在这种情况下,可以通过预定义的子块的大小和当前编码块的大小来定义多个子块的数量。
在这种情况下,预定义的子块的大小可以是4×4。替选地,其可以是8×8或16×16,其可以通过高级句法预定义或者发送。已经参照图5描述了划分为子块的方法,并且将省略其详细描述。
解码器侧处的基于子块的运动修改性能单元(660)包括L0方向运动修改单元(661)和L1方向运动修改单元(662)。
解码器侧处的基于子块的运动修改性能单元(660)通过对沿L0和L1方向的有限搜索区域执行解码器侧处的另外的运动预测来获得经修改的具有最佳速率失真值的基于子块的运动并且获得子预测块。通过使用子预测块来执行另外的运动预测。通过将通过执行运动补偿(600)获得的预测块划分为多个子块来获得子预测块。
在这种情况下,沿L0和L1方向的有限搜索区域是指在执行解码器侧上的运动修改之前空间上与参考块相邻的像素区域。
基于相应的参考块的位置,空间上相邻的像素区域可以限于8个相邻的像素。然而,本发明不限于此,并且扩展范围也包括在本发明中。
在通过在搜索区域中执行另外的运动预测来获得最佳速率失真值的过程中,不同于在现有运动预测中通过块匹配获取运动矢量的比特率和失真值,由本发明提出的解码器侧运动修改方法通过在不考虑运动矢量的比特率的情况下通过块匹配来使用仅失真值,在运动搜索处理中选择了具有最小失真值的块作为最终参考块,并且由本发明提出的解码器侧运动修改方法使用此时的运动矢量作为最终运动矢量。
1)确定用于运动修改的预定的搜索区域、2)确定搜索区域中的SAD候选以及3)执行运动修改的方法与S1至S3中所述的方法相同,并且将省略详细描述。然而,当当前块以子块为单位执行运动修改时,可以基于除当前块之外的子块来确定搜索区域。
图6中所示的以子块为单位的基于经修改运动的运动补偿步骤(670)是如下步骤:基于通过解码器侧处的基于子块的运动修改性能单元(660)获得的以子块为单位的经修改的L0运动和L1运动来执行双向运动补偿。
图7是示出了执行块匹配的目标块和相应块中的目标像素的图。700示出了使用一般块匹配中的块中的所有像素来计算目标块与参考块之间的误差的方法,以及710和720示出了使用块中的仅一些像素来计算目标块与参考块之间的误差以减少块匹配所需的计算复杂度的方法的示例。
根据本发明的实施方式,块710被分类为属于偶数行(711)的像素和属于奇数行(712)的像素。在计算块匹配成本、块之间的误差等时,可以通过仅使用属于偶数行的像素或仅属于奇数行的像素进行计算来减小计算复杂度。
在这种情况下,用于对用于匹配的目标像素进行分类以便降低计算复杂度的标准不限于偶数行和奇数行,并且也可以包括通过以是2的倍数的整数行为单位跳跃来确定目标行的方法。
根据本发明的用于减少计算复杂度的实施方式,图7中所示的块720表示其中使用是4的倍数的行的实施方式。
图8是示出了使用经子采样的块执行解码器侧处的运动修改的概念的图。如图8所示,在针对由双预测所预测的当前块修改解码器侧处的运动信息的过程中执行搜索最佳运动信息的过程。在这种情况下,在计算块的失真值的过程中,可以通过不使用块中包括的所有像素而仅使用块中的一些像素来降低计算复杂度。
图9是示出了在执行解码器侧处的运动修改的过程中当满足特定条件时执行提前终止的流程图的图。图9是更详细地示出了在如上所述的解码器侧处修改运动的过程中的解码器侧处的运动修改性能单元(420、630,650)的图。图9是示出了由本发明提出的用于解码器侧处的运动修改的提前终止方法的流程图。
本发明中提出的解码器侧处的运动修改性能单元在分别沿L0方向和L1方向与现有参考块在空间上相邻的位置上执行运动搜索。在这种情况下,可以通过使用块中的全部或仅一些像素来降低计算复杂度。
在这种情况下,当特定条件通过对与空间上与现有参考块相邻的位置对应的块计算失真值被满足时,可以提前终止另外的运动搜索。
在这种情况下,特定条件可以是与初始参考块的失真值相比小于一定值的情况。例如,当参考SAD候选小于一定值时,不执行在解码器侧处的运动修改,并且可以提前终止。在此,可以基于当前块或参考块的宽度(W)或高度(H)中的至少一者来确定一定值。替选地,当当前块基于子块执行运动修改时,可以基于子块的宽度(W)或高度(H)中的至少一者来确定一定值。作为示例,可以将一定值确定为W*H、W*(H/2)、(W/2)*H、2*W*H、4*W*H、8*W*H或16*W*H。替选地,一定值可以表示为0.9、0.75等的比率。
本公开内容的各种实施方式没有以所有可能的组合列出,而是旨在描述本公开内容的代表性方面,并且可以独立地应用或者可以以两个或更多个的组合应用在各种实施方式中描述的事件。
另外,可以通过硬件、固件、软件或其组合来实现本公开内容的各种实施方式。对于硬件实现,其可以由一个或更多个ASIC(专用集成电路)、DSP(数字信号处理器)、DSPD(数字信号处理装置)、PLD(可编程逻辑器件)、FPGA(现场可编程门阵列)、通用处理器、控制器、微控制器、微处理器等实现。
本公开内容的范围包括:允许根据各种实施方式的方法的操作在装置或计算机上执行的软件或机器可执行指令(例如,操作系统、应用、固件、程序等),以及存储这样的软件或指令并且在装置或计算机上可执行的非暂态计算机可读介质。
工业适用性
本发明可以用于对视频信号进行编码/解码。

Claims (8)

1.一种对图像进行解码的方法,包括:
确定是否以子块为单位执行运动修改;
确定用于当前块的运动修改的搜索区域;
计算所述搜索区域的多个SAD候选;
基于所述多个SAD候选来导出所述当前块的变化量运动信息;以及
通过使用所述当前块的预生成的运动信息和所述变化量运动信息来修改所述当前块的运动信息。
2.根据权利要求1所述的方法,其中,能够基于所述当前块的大小来确定是否以子块为单位执行所述运动修改。
3.根据权利要求1所述的方法,其中,将所述搜索区域确定为包括参考块或所述参考块的相邻区域中的至少一者的区域,并且
其中,所述相邻区域为与所述参考块的边界相邻的N条样本线。
4.根据权利要求1所述的方法,其中,所述SAD候选被确定为L0块与L1块之间的SAD值,并且
其中,所述L0块基于所述当前块的L0参考块的位置和预定偏移来确定,并且所述L1块基于所述当前块的L1参考块的位置和所述预定偏移来确定。
5.根据权利要求4所述的方法,其中,基于所述L0块和所述L1块中的一些样本来确定所述SAD候选。
6.根据权利要求4所述的方法,其中,所述偏移包括非有向偏移或有向偏移中的至少一者,并且
其中,所述有向偏移包括针对左、右、上、下、左上、右上、左下或者右下中的至少一个方向的偏移。
7.根据权利要求1所述的方法,其中,基于参考SAD候选与预定阈值之间的比较结果来适应性地执行所述运动修改,并且
其中,所述参考SAD候选意味着与非有向偏移对应的SAD候选。
8.根据权利要求1所述的方法,其中,考虑到块大小、当前图片与参考图片之间的距离、帧间预测模式、预测方向或者运动信息的分辨率或单位中的至少一者来有限地执行所述运动修改。
CN201980043825.2A 2018-06-29 2019-07-01 使用解码器侧的运动补偿的视频编码方法和装置 Active CN112335248B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202311508957.2A CN117354508A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311507833.2A CN117354506A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311509851.4A CN117354509A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311511354.8A CN117354510A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2018-0075932 2018-06-29
KR20180075932 2018-06-29
PCT/KR2019/007975 WO2020005042A1 (ko) 2018-06-29 2019-07-01 디코더 측면의 움직임 보정을 사용하는 비디오 코딩 방법 및 장치

Related Child Applications (4)

Application Number Title Priority Date Filing Date
CN202311508957.2A Division CN117354508A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311509851.4A Division CN117354509A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311507833.2A Division CN117354506A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311511354.8A Division CN117354510A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112335248A true CN112335248A (zh) 2021-02-05
CN112335248B CN112335248B (zh) 2023-12-05

Family

ID=68987533

Family Applications (5)

Application Number Title Priority Date Filing Date
CN202311509851.4A Pending CN117354509A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311507833.2A Pending CN117354506A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311511354.8A Pending CN117354510A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311508957.2A Pending CN117354508A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN201980043825.2A Active CN112335248B (zh) 2018-06-29 2019-07-01 使用解码器侧的运动补偿的视频编码方法和装置

Family Applications Before (4)

Application Number Title Priority Date Filing Date
CN202311509851.4A Pending CN117354509A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311507833.2A Pending CN117354506A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311511354.8A Pending CN117354510A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质
CN202311508957.2A Pending CN117354508A (zh) 2018-06-29 2019-07-01 对图像解码和编码的方法及非暂态计算机可读存储介质

Country Status (4)

Country Link
US (2) US11677970B2 (zh)
KR (1) KR20200002701A (zh)
CN (5) CN117354509A (zh)
WO (1) WO2020005042A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113452921A (zh) * 2020-03-26 2021-09-28 华为技术有限公司 图像处理方法和电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004236049A (ja) * 2003-01-31 2004-08-19 Hitachi Ltd 符号化方法及び復号化方法
US20070291846A1 (en) * 2006-06-16 2007-12-20 Via Technologies, Inc. Systems and Methods of Improved Motion Estimation using a Graphics Processing Unit
KR20090058954A (ko) * 2007-12-05 2009-06-10 삼성전자주식회사 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
US20130177076A1 (en) * 2010-09-30 2013-07-11 Mitsubishi Electric Corporation Moving image encoding device, moving image decoding device, moving image coding method, and moving image decoding method
KR20170058866A (ko) * 2015-11-19 2017-05-29 한국전자통신연구원 영상 부호화/복호화 방법 및 장치
KR20170131446A (ko) * 2015-03-27 2017-11-29 퀄컴 인코포레이티드 비디오 코딩에서의 모션 정보 유도 모드 결정
CN107454403A (zh) * 2016-05-31 2017-12-08 谷歌公司 块尺寸可调整的方向性帧内预测

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3301918A1 (en) * 2016-10-03 2018-04-04 Thomson Licensing Method and apparatus for encoding and decoding motion information
US10986367B2 (en) * 2016-11-04 2021-04-20 Lg Electronics Inc. Inter prediction mode-based image processing method and apparatus therefor
CN117528105A (zh) * 2016-11-28 2024-02-06 英迪股份有限公司 图像编码方法、图像解码方法及用于传送比特流的方法
US10750203B2 (en) * 2016-12-22 2020-08-18 Mediatek Inc. Method and apparatus of adaptive bi-prediction for video coding
US10911761B2 (en) * 2016-12-27 2021-02-02 Mediatek Inc. Method and apparatus of bilateral template MV refinement for video coding
US10602180B2 (en) * 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction
US11750832B2 (en) * 2017-11-02 2023-09-05 Hfi Innovation Inc. Method and apparatus for video coding
KR20190114913A (ko) * 2018-03-29 2019-10-10 세종대학교산학협력단 디코더 사이드 움직임 유도 기반의 영상 부호화/복호화 방법 및 장치

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004236049A (ja) * 2003-01-31 2004-08-19 Hitachi Ltd 符号化方法及び復号化方法
US20070291846A1 (en) * 2006-06-16 2007-12-20 Via Technologies, Inc. Systems and Methods of Improved Motion Estimation using a Graphics Processing Unit
KR20090058954A (ko) * 2007-12-05 2009-06-10 삼성전자주식회사 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
US20130177076A1 (en) * 2010-09-30 2013-07-11 Mitsubishi Electric Corporation Moving image encoding device, moving image decoding device, moving image coding method, and moving image decoding method
KR20170131446A (ko) * 2015-03-27 2017-11-29 퀄컴 인코포레이티드 비디오 코딩에서의 모션 정보 유도 모드 결정
KR20170058866A (ko) * 2015-11-19 2017-05-29 한국전자통신연구원 영상 부호화/복호화 방법 및 장치
CN107454403A (zh) * 2016-05-31 2017-12-08 谷歌公司 块尺寸可调整的方向性帧内预测

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SEMIH ESENLIK等: "Description of Core Experiment 9 (CE9): Decoder Side Motion Vector Derivation", pages 2 - 3 *

Also Published As

Publication number Publication date
CN117354506A (zh) 2024-01-05
KR20200002701A (ko) 2020-01-08
CN112335248B (zh) 2023-12-05
US20230283795A1 (en) 2023-09-07
WO2020005042A1 (ko) 2020-01-02
US20210185337A1 (en) 2021-06-17
CN117354508A (zh) 2024-01-05
CN117354510A (zh) 2024-01-05
CN117354509A (zh) 2024-01-05
US11677970B2 (en) 2023-06-13

Similar Documents

Publication Publication Date Title
CN111213379B (zh) 用于将图像编码/解码的方法、装置和存储比特流的记录介质
CN111937399B (zh) 基于仿射模型的图像编码/解码方法和装置
CN112369034B (zh) 使用合并候选的视频编码方法和装置
US11490077B2 (en) Image encoding/decoding method and apparatus involving merge candidate list and triangular shape partitions
US11729410B2 (en) Image decoding method/apparatus, image encoding method/apparatus, and recording medium storing bitstream
CN112823514A (zh) 图像信号编码/解码方法及其设备
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