CN109922347A - 视频编译码方法及其图像处理装置 - Google Patents

视频编译码方法及其图像处理装置 Download PDF

Info

Publication number
CN109922347A
CN109922347A CN201811524353.6A CN201811524353A CN109922347A CN 109922347 A CN109922347 A CN 109922347A CN 201811524353 A CN201811524353 A CN 201811524353A CN 109922347 A CN109922347 A CN 109922347A
Authority
CN
China
Prior art keywords
control point
vector
motion
encoder unit
current encoder
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
CN201811524353.6A
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.)
Industrial Technology Research Institute ITRI
Original Assignee
Industrial Technology Research Institute ITRI
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 Industrial Technology Research Institute ITRI filed Critical Industrial Technology Research Institute ITRI
Publication of CN109922347A publication Critical patent/CN109922347A/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
    • 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/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • 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/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors

Landscapes

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

Abstract

一种视频编译码方法及其图像处理装置,视频编译码方法适用于图像处理装置并且包括下列步骤。接收目前编码单元,并且设定目前编码单元的控制点数量,其中控制点数量大于或是等于3。根据控制点数量,产生至少一仿射模型,并且计算各个仿射模型所分别对应的仿射移动向量。根据所有仿射移动向量,计算目前编码单元的移动向量预测子,据以针对目前编码单元进行画面间预测编译码。

Description

视频编译码方法及其图像处理装置
技术领域
本发明是有关于一种视频编译码的技术。
背景技术
随着虚拟现实以及扩增实境于影音娱乐产业的快速发展,消费者对于高质量图像的需求则日渐提升,以更为融入、探索以及操控虚拟环境而仿佛感觉身历其境。为了可提供流畅且高画质的图像画面,在有限的储存容量和网络带宽下接收或传送图像数据,图像编译码的技术为关键核心之一。
发明内容
有鉴于此,本公开提供一种视频编译码方法及其图像处理装置,其能够有效地提升视频图像的编译码效能。
在本公开的一示例实施例中,上述的方法适用于图像处理装置,并且包括下列步骤。接收目前编码单元,并且设定目前编码单元的控制点数量,其中控制点数量大于或是等于3。接着,根据控制点数量,产生至少一仿射模型,并且计算各个仿射模型所分别对应的仿射移动向量。之后,根据所有仿射移动向量,计算目前编码单元的移动向量预测子,据以对目前编码单元进行画面间预测编译码。
在本公开的一示例实施例中,上述的图像处理装置包括存储器以及处理器,其中处理器耦接存储器。存储器用以储存数据。处理器用以:接收目前编码单元;设定目前编码单元的控制点数量,其中控制点数量大于或是等于3;根据控制点数量,产生至少一仿射模型;计算各个仿射模型所分别对应的仿射移动向量;以及根据所有仿射移动向量,计算目前编码单元的移动向量预测子,据以对目前编码单元进行画面间预测编译码。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。
附图说明
图1A~图1B是一个区块的移动向量场域的示意图。
图1C是一个具有多个移动对象的编码单元的示意图。
图2是根据本公开一示例实施例所绘示的图像处理装置的方块图。
图3是根据本公开一示例实施例所绘示的视频编译码方法的流程图。
图4A~图4D是根据本公开的示例实施例所绘示的控制点的设定方法示意图。
图5A是根据本公开的示例实施例所绘示的控制点的邻近移动向量的搜寻方法的示意图。
图5B是根据本公开的示例实施例所绘示具有三个控制点的目前编码单元的示意图。
图5C是根据本公开的示例实施例所绘示具有五个控制点的目前编码单元的示意图。
图6是根据本公开的示例实施例所绘示的控制点的设定方法的流程图。
图7是根据本公开的示例实施例所绘示的控制点的设定方法的示意图。
附图标记列表
100:区块
110、120、40B、41B、42B、40C、41C、42C、43、44、50A、51A、52A、50B、51B、52B、50C、51C、52C、7A、7B、7C、7D、7E:控制点
200:图像处理装置
210:存储器
220:处理器
S302~S310、S602~S612:步骤
CU1:编码单元
CU4A、CU4B、CU4C、CU4D、CU5A、CU7:目前编码单元
1~20:编号
RB、RC、R7:参考线
A、B、C、D、E、F、G、H、I、J、K、L、M、N、O、P、Q、R、S、T、U、V、W、X、Y、Z、ZZ:子区块
具体实施方式
本公开的部份示例实施例接下来将会配合附图来详细描述,以下的描述所引用的组件符号,当不同附图出现相同的组件符号将视为相同或相似的组件。这些示例实施例只是本发明的一部份,并未揭示所有本公开的可实施方式。更确切的说,这些示例实施例仅为本公开的专利申请范围中的方法以及装置的示例。
目前国际电信联盟电信标准化部门(Telecommunication StandardizationSector,ITU-T)以及动态图像专家群(Moving Picture Experts Group,MPEG)共同组成的联合视频探索小组(Joint Video Expert Team,JVET)会议中提出了下世代视频编码(Versatile Video Coding,H.266/VVC),以提供编码效能高于高效率视频编码(HighEfficiency Video Coding,H.265/HEVC)的标准。在响应于JVET会议中的征求压缩技术效能竞赛(Call for Proposal,CfP)中,主要是针对标准动态范围(standard dynamicrange,SDR)影片、高动态范围(highdynamicrange,HDR)影片以及360度影片等三种技术项目进行探讨,而此三种技术皆需要进行预测,以进行画面数据的编码。
上述的预测方法大致分为画面内预测(intra-prediction)以及画面间预测(inter-prediction),前者主要是在空间域上对于画面中的邻近区块进行相关性分析,而后者主要是在时间域上对于画面之间的区块之间进行相关性分析以进行移动补偿预测(motion-compensation prediction,MCP)。移动补偿预测可基于平移移动模型(translation motion model)来计算出区块于画面之间的移动向量。相较于区块的原始数据传输,移动向量的传输得以大幅减少所需的编码位数。然而,在真实世界中,存在着例如是放大(zoom in)、缩小(zoom out)、旋转(rotation)、相似变换(similaritytransformation)、螺旋相似(spiral similarity)、透视(perspective motion)或是其它不规则的移动。因此,基于平移移动模型的移动补偿预测机制将会大幅地影响编码效能。
目前联合探索测试平台(Joint Exploration Test Model,JEM)已提出仿射移动补偿预测(affine motion compensation prediction),其根据两个控制点以单一仿射模型来描述一个区块的移动向量场域(motion vector field,MVF),以提升具有旋转、缩放、平移的场景的预测效果。以图1A的单一个区块100为例,区块100中样本位置为(x,y)的移动向量场域可以方程式(1)的仿射模型来描述:
在此,vx代表控制点的水平移动向量,而vy代表控制点的垂直移动向量。因此,(v0x,v0y)为控制点110的移动向量,(v1x,v1y)为控制点120的移动向量,而w为相对于区块的宽度的权重。
为了进一步地简化移动补偿预测,可先将区块100分成M×N个子区块(如图1B中将区块100分成4×4个子区块),再根据方程式(1)推导出每个子区块的中心取样的移动向量。接着,再将移动补偿插值滤波器(motion compensation interpolation filter)应用至每个子区块的移动向量,以得出每个子区块的预测。在移动补偿预测之后,每个子区块具有高精度的移动向量将会被取整(rounded)并且储存至与一般移动向量相同的精度。
然而,为了满足消费者对于高质量视频的需求,视频的分辨率将相对提高,每个编码单元(coding unit,CU)的尺寸也相对提高,在一实施例中,可能大至128×128。现行的仿射移动补偿预测是在一个编码单元全属于单一对象的假设下所进行。然而,当编码单元包含不只一个对象且具有不同动作时(例如图1C中的编码单元CU1具有不同旋转方向的移动对象OB1、OB2、OB3,例如移动对象OB1以逆时针旋转,移动对象OB2、OB3以顺时针旋转但转速不同),现行的机制可能产生错误的预测。本公开的示例实施例所提出的视频编码技术可解决高分辨率视频中因两个控制点和单一仿射模型所造成效能不足的问题。
图2是根据本公开一示例实施例所绘示的图像处理装置的方块图,但此仅是为了方便说明,并不用以限制本公开。在一实施例中,图像处理装置200可以是编码器和/或译码器。
请参照图2,在本示例实施例中,图像处理装置200至少包括存储器210以及处理器220,其中处理器220耦接存储器210。在一示例实施例中,图像处理装置200可以是个人计算机、笔记本电脑、服务器计算机、平板计算机、智能型手机、穿戴装置、工作站等电子装置。
存储器210用以储存图像、数据、程序代码等数据,其可以例如是任意型式的固定式或可移动式随机存取存储器(random access memory,RAM)、只读存储器(read-onlymemory,ROM)、快闪存储器(flash memory)、硬盘或其他类似装置、集成电路及其组合。
处理器220用以控制图像处理装置200整体的作动以执行视频编译码,可以例如是中央处理单元(central processing unit,CPU)、应用处理器(application processor,AP),或是其他可程序化之一般用途或特殊用途的微处理器(microprocessor)、数字信号处理器(digital signal processor,DSP)、图像信号处理器(image signal processor,ISP)、图形处理器(graphics processing unit,GPU)或其他类似装置、集成电路及其组合。
附带说明的是,在一示例实施例中,图像处理装置200可选择性地包括图像捕获设备、传输接口、显示器、通讯单元。图像捕获设备可以例如是数字相机、数字摄影机、网络摄影机、监视摄影机,用以撷取图像数据。传输接口可以是I/O接口,以使处理器220接收图像数据以及相关信息。显示器可以是任何用以显示处理后的图像数据的屏幕。通讯单元可以是支持任何有线连接或是无线通信标准的调制解调器、传送接收器,用以自外部来源接收原始图像数据以及将处理后的图像数据传送至其它装置或是平台。本领域具通常知识者应明了,以编码的观点来说,处理器220可在完成编码后,将编码后的比特流以及相关资/讯透过通讯单元传送至其它具有译码器的装置或是平台。此外,处理器220亦可将编码后的比特流以及相关信息储存至例如是DVD光盘、传统硬盘、随身硬盘、记忆卡等储存记录媒体,本公开不在此设限。以译码的观点来说,处理器220在接收到已编码的比特流以及相关信息后,可根据相关信息将已编码的比特流以及相关信息进行译码并且输出至播放器进行播放。
图3是根据本公开一示例实施例所绘示的视频编译码方法的流程图,而图3的方法流程可以图2的图像处理装置200来实现。在本公开一实施例中,编译码可以是编码和/或译码,编译码方法可以是编码方法和/或译码方法。
在本示例实施例中,处理器220可执行图像处理装置200的编码流程和/或译码流程。举例来说,图3的方法流程可以是以程序代码的形式储存于存储器210中,而处理器220将执行程序代码以实现图3的各个步骤。当处理器220执行编码流程时,在执行图3的流程之前,其将会先接收到原始视频串流/画面,再对此原始视频串流/画面进行编码程序。当处理器220执行译码流程时,在执行图3的流程之前,其将会先接收到已编码的比特流,再对此已编码的比特流进行译码程序。在以下的说明当中,将对所接收到的原始视频串流/画面或是已编码的比特流中多个做为基本处理单元(basic processing unit)的编码树单元(Coding Tree Unit,CTU)中的其中一个编码单元(coding unit,CU)来进行说明,并且将其统称为“目前编码单元”。
请同时参照图2以及图3,首先,图像处理装置200的处理器220将接收目前编码单元(步骤S302),并且设定目前编码单元的控制点数量,其中控制点数量大于或是等于3(步骤S304)。控制点数量可以是依照使用者预先透过输入设备(未绘示)所输入的默认值、***默认值、亦或是适应性地依照目前编码单元中的对象移动状态所设定。
接着,处理器220将根据控制点数量,产生至少一仿射模型(步骤S306),并且计算各个仿射模型所分别对应的仿射移动向量(步骤S308)。之后,处理器220将根据所有仿射移动向量,计算目前编码单元的移动向量预测子,据以进行目前编码单元的画面间预测编译码(步骤S310)。在此,处理器220是将所有仿射模型套用至目前编码单元中的所有子区块,每个子区块以不同权重来分配所有仿射移动向量,进而获得对应的移动向量预测子,以进行目前编码单元的画面间预测编译码。以下将以下列示例实施例来针对步骤S304~S310的细节加以说明。
图4A~图4D是根据本公开的示例实施例所绘示的控制点的设定方法,而此些示例可以图2用以进行编码和/或译码的图像处理装置200来实现。
在本示例实施例中,处理器220将依照用户设定或是***默认来设定控制点的数量以及参考范围,此控制点的数量将会满足1+2N,而其中N为正整数。控制点的参考范围为目前编码单元的左方以及上方的邻近子区块的行数与列数,其可以M来表示,其中M为正整数。以图4A为例,当M=1时,目前编码单元CU4A的控制点的参考范围为其左方邻近1列与上方邻近1行的邻近子区块(编号1~9),当M=2时,目前编码单元CU4A的控制点的参考范围为其左方邻近2列与上方邻近2行的邻近子区块(编号1~20),以此类推。
处理器220设定完控制点的数量以及参考范围后,将会设定控制点的位置。首先,处理器220会将三个控制点设置在目前编码区块的左下角、左上角以及右上角。以图4B为例,40B、41B、42B分别为位于目前编码单元CU4B的左上角、右上角以及左下角的三个控制点,也就是对应于编号为5、9、1的子区块。以另一观点来看,若将编号1~9的子区块排列于参考线RB上,基于目前编码单元CU4B为正方形,因此三个控制点40B、41B、42B则是分别位于参考线RB的两端点以及中点。又以图4C为例,40C、41C、42C为位于目前编码单元CU4C的左上角、右上角以及左下角的三个控制点,也就是对应于编号为5、13、1的子区块。以另一观点来看,若将编号1~13的子区块排列于参考线RC上,基于目前编码单元CU4C为宽大于长的非正方形,因此三个控制点40C、41C、42C是分别位于参考线RC的两端点以及左半部。
处理器220将会根据N的数值来决定是否在每两个控制点之间增设新的控制点。以另一观点来说,处理器220将会判断设置于目前编码单元的控制点的数量是否已达到控制点数量的设定值。详细来说,当N=1时,即代表控制点数量为3,已设置于目前编码单元的控制点的数量已达到控制点数量的设定值,因此完成了控制点的设置。当N=2时,代表控制点数量为5,也就是已设置于目前编码单元的控制点的数量尚未达到控制点数量的设定值,因此处理器220会新增2个控制点于目前编码单元中各两相邻的控制点之间。以图4D为例,接续于图4B,在40B、41B、42B分别为已设置于目前编码单元CU4D的三个控制点,处理器220会将控制点43额外地设置于控制点40B与控制点41B的中点,并且将控制点44额外地设置于控制点42B与控制点40B的中点。当N=3时,即代表控制点数量为9,处理器220会将4个控制点分别额外地设置于每两相邻的控制点之间,例如控制点42B与控制点44的中点、控制点44与控制点40B的中点、控制点40B与控制点43的中点以及控制点43与控制点41B的中点。以此类推,当处理器220判定设置至目前编码单元420的控制点的数量尚未达到控制点数量的设定值时,将递归地设置新控制点于各两相邻的已设置的控制点的中点,直到设置至目前编码单元420的控制点的数量达到控制点数量的设定值为止。
接着,处理器220将根据控制点的移动向量来产生仿射模型。在本示例实施例中,当N=1(即,控制点数量为3)时,仿射模型的数量为1,而当N>1(即,控制点数量大于3),仿射模型的数量为1+2N-1。控制点的移动向量可根据已编解码的邻近移动向量来计算,而此已编解码的邻近移动向量的参考画面与控制点的参考画面相同。
以图5A根据本公开的示例实施例所绘示的控制点的邻近移动向量的搜寻方法示意图为例,当M=1时,处理器220可分别从目前编码单元CU5A的控制点50A、51A、52A的邻近子区块来搜寻已编解码的移动向量。以位于子区块D的控制点50A而言,假设处理器220搜寻到子区块A~C为已编解码的子区块,而控制点50A的移动向量可自子区块A~C的移动向量中选择。举例来说,处理器220可以是以一个固定顺序逐一判断子区块A~C是否与目前编码单元CU5A具有相同的参考画面,而最先判定出符合此设定的子区块的移动向量将会做为控制点50A的移动向量的设定依据。
另一方面,以位于子区块G的控制点51A而言,假设处理器220搜寻到子区块E~F为已编解码的子区块,其移动向量可自子区块E~F的移动向量中选择,而子区块H由于尚未编译码,因此不做为控制点51A的移动向量的选择依据。以位于子区块K的控制点52A而言,假设处理器220搜寻到子区块I~J为已编解码的子区块,其移动向量可自子区块I~J的移动向量中选择,而子区块L由于尚未编译码,因此不做为控制点52A的移动向量的选择依据。
此外,当M=2时,处理器220可分别从目前编码单元CU5A的控制点50A、51A、52A的邻近子区块以仿射移动模型来搜寻已编译码的移动向量。相较于M=1,控制点50A可参考更多的邻近子区块来搜寻出控制点50A、51A、52A的移动向量的选择与设定依据,例如控制点50A所能参考的邻近子区块为A~C、M~Q,控制点51A所能参考的邻近子区块为E~F、H、R~V,控制点52A所能参考的邻近子区块为I、J、L、W~ZZ。控制点50A、51A、52A的移动向量的选择与设定方式可参考M=1的相关说明,于此不再赘述。
在一示例实施例中,控制点的移动向量可由其他控制点的移动向量计算,例如,若是控制点52A的移动向量无法根据邻近子区块得知,可根据控制点50A及控制点51A的移动向量计算,控制点52A的移动向量例如是采用方程式(2.01)来计算:
其中,以及为控制点52A的移动向量的水平分量以及垂直分量,以及为控制点50A的移动向量的水平分量以及垂直分量,以及为控制点51A的移动向量的水平分量以及垂直分量,h是编码单元CU5A的高度,w是编码单元CU5A的宽度。
在另一示例实施例中,若是控制点51A的移动向量无法根据邻近子区块得知,可根据控制点50A及控制点52A的移动向量例如是采用方程式(2.02)计算:
其中,以及为控制点52A的移动向量的水平分量以及垂直分量,以及为控制点50A的移动向量的水平分量以及垂直分量,以及为控制点51A的移动向量的水平分量以及垂直分量,h是编码单元CU5A的高度,w是编码单元CU5A的宽度。
以图5B根据本公开的示例实施例所绘示具有三个控制点50B、51B、52B的目前编码单元CU5B的示意图为例,处理器220可以依照控制点50B的移动向量(v0x,v0y)、控制点51B的移动向量(v1x,v1y)、控制点52B的移动向量(v2x,v2y)产生目前编码单元CU5B的仿射模型,如方程式(2.1)所表示:
其中(vx,vy)是目前编码单元CU5B中样本位置为(x,y)的子区块的移动向量场域,w为相对于子区块的宽度的权重。在本示例实施例中,处理器220将仿射模型套用至目前编码单元CU5B中的所有子区块后,每个子区块以不同权重来分配所有仿射移动向量,进而获得对应的移动向量预测子。
以图5C根据本公开的示例实施例所绘示具有五个控制点50C、51C、52C、53C、54C的目前编码单元CU5C的示意图为例,处理器220可以依照控制点v0的移动向量(v0x,v0y)、控制点v1的移动向量(v1x,v1y)、控制点v2的移动向量(v2x,v2y)、控制点v3的移动向量(v3x,v3y)、控制点v4的移动向量(v4x,v4y)产生目前编码单元CU5C的三个仿射模型,其中各个仿射模型可由任三个控制点的不同组合所产生,而五个控制点将会全部利用到并且同样的控制点可出现于不同组合中。在一示例实施例中,目前编码单元CU5C的三个仿射模型可以如方程式(2.2)~(2.4)表示:
其中(vx1,vy1)、(vx2,vy2)、以及(vx3,vy3)是目前编码单元CU5B中样本位置为(x,y)的子区块的移动向量场域,w为相对于子区块的宽度的权重。处理器220将仿射模型套用至目前编码单元CU5C中的所有子区块后,将分别产生三个仿射移动向量(Vx1,Vy1)、(Vx2,Vy2)、以及(Vx3,Vy3),每个子区块以不同权重来分配所有仿射移动向量,处理器220可依方程式(2.5)来产生各个子区块的移动向量预测子:
其中X′、Y′分别为子区块于水平方向以及垂直方向的移动向量预测子,w1、w2、w3分别为子区块与三个仿射移动向量之间的距离所对应的权重。
图6是根据本公开的示例实施例所绘示的控制点的设定方法的流程图,图7是根据本公开的示例实施例所绘示的控制点的设定方法示意图,以下的设定方法可以图2用以进行编码或是译码的图像处理装置200来实现。在本示例实施例中,处理器220将适应性地依照目前编码单元中的对象移动状态来设定控制点的数量。
请同时参照图2、图6,首先,处理器220将设定目前编码单元的三个初始控制点(步骤S602)。在本示例实施例中将以参考范围M=1做为默认值来进行说明,而此三个初始控制点将会依序设置在目前编码区块的左下角、左上角以及右上角,以下分别称为第一初始控制点、第二初始控制点以及第三初始控制点。以图7为例,目前编码单元CU7的7A、7B、7C分别为第一初始控制点、第二初始控制点以及第三初始控制点。附带说明的是,在其它示例实施例中,处理器220亦可以在步骤S602之前,依照用户设定或是***默认来设定参考范围。
接着,处理器220将计算各个初始控制点的移动向量(步骤S604),计算每两个相邻的初始控制点的移动向量差值(步骤S606),并且判断是否有任何移动向量差值大于预设差值并且设置至目前编码单元的初始控制点的数量小于位于目前编码单元的上方以及左方的邻近子区块的数量(步骤S608)。需说明的是,在此所谓的两个相邻的初始控制点是指依序排列在目前编码单元的角点的两个相邻的初始控制点。以图7为例,处理器220将计算第一初始控制点7A的移动向量VA与第二初始控制点7B的移动向量VB之间的移动向量差值||VA-VB||(称为“第一移动向量差值”),并且计算第二初始控制点7B的移动向量VB与第三初始控制点7C的移动向量VC之间的移动向量差值||VB-VC||(称为“第二移动向量差值”),再判断是否第一移动向量差值||VA-VB||以及第二移动向量差值||VB-VC||的任一者大于预设差值d。
当处理器220判定没有任何移动向量差值大于预设差值时,在一示例实施例中,代表所有的移动向量具有高相似度,目前的初始控制点对应于相同的移动对象,因此无需再新增控制点。此外,当设置至目前编码单元的初始控制点的数量不小于(已到达)位于目前编码单元的上方以及左方的邻近子区块的数量时,亦无需再新增控制点。处理器220可在此结束控制点的设定流程,而开始根据此些初始控制点的移动向量来产生仿射模型。以图7为例,若处理器220判定||VA-VB||<d并且||VB-VC||<d,则将会利用第一初始控制点7A的移动向量VA、第二初始控制点7B的移动向量VB以及第三初始控制点7C的移动向量VC来产生一个仿射模型,进而计算各个仿射模型所分别对应的仿射移动向量,以及根据所有仿射移动向量,计算目前编码单元的移动向量预测子,据以进行目前编码单元的画面间预测编码。
另一方面,当处理器220判定有任何移动向量差值大于预设差值时,在一示例实施例中,代表目前的初始控制点对应于不同的移动对象,因此可增加控制点,以较完整地描述目前编码单元中所有移动对象,使后续预测更为精确。在此,当处理器220进一步地判定设置至目前编码单元的初始控制点的数量小于(尚未到达)位于目前编码单元的上方以及左方的邻近子区块的数量时,处理器220将于每两个相邻的初始控制点的之间增加一个控制点(步骤S610),并且将所增加的控制点加入至初始控制点(步骤S612)。换句话说,第一初始控制点与第二初始控制点之间所新增的控制点将会成为第四初始控制点,而第二初始控制点与第三初始控制点之间所新增的控制点将会成为第五初始控制点。之后,处理器220将会回到步骤S604,以重复接续的流程,直到每两相邻的初始控制点的移动向量差值皆小于预设差值或者是设置至目前编码单元的初始控制点的数量已达到位于目前编码单元的上方以及左方的邻近子区块的数量为止。
以图7为例,若处理器220判定||VA-VB||>d以和/或是||VB-VC||>d,处理器220可以是在第一初始控制点7A与第二初始控制点7B的中点新增控制点7D,以及在第二初始控制点7B与第三初始控制点7C的中点新增控制点7E。之后,处理器220将计算第一初始控制点7A的移动向量VA与第四初始控制点7D的移动向量VD之间的移动向量差值||VA-VD||、第四初始控制点7D的移动向量VD与第二初始控制点7B的移动向量VB之间的移动向量差值||VD-VB||、第二初始控制点7B的移动向量VB与第五初始控制点7E的移动向量VE之间的移动向量差值||VB-VE||、第五初始控制点7E的移动向量VE与第三初始控制点7C的移动向量VC之间的移动向量差值||VE-VC||,再判断此四个移动向量差值之中是否有任一者大于预设差值d。若此四个移动向量差值之中有任何一者大于预设差值d,则处理器220会更进一步地分别在此五个初始控制点7A~7E中每两相邻的控制点的中点新增控制点。换句话说,当处理器220判定有任何设置至目前编码单元CU7的各两相邻的初始控制点的移动向量差值不小于预设差值时,将递归地设置新控制点于各两相邻的已设置的初始控制点的中点,直到设置至目前编码单元CU7的各两相邻的初始控制点的移动向量差值皆小于预设差值或者是设置至目前编码单元CU7的初始控制点的数量已达到位于目前编码单元CU7的上方以及左方的邻近子区块的数量(例如图7可设置的初始控制点的数量最多为9)为止。
若此四个差值之中皆小于预设差值d,则处理器220会利用第一初始控制点7A的移动向量VA、第二初始控制点7B的移动向量VB、第三初始控制点7C的移动向量VC、第四初始控制点7D的移动向量VD、第五初始控制点7E的移动向量VE来产生三个仿射模型,进而计算各个仿射模型所分别对应的仿射移动向量,以及根据所有仿射移动向量,计算目前编码单元的移动向量预测子,据以进行目前编码单元的画面间预测编译码。
综上所述,本公开所提出的视频编译码方法及其图像处理装置,其在编码单元中利用三个以上的控制点来产生至少一个仿射模型,以分别计算出所对应的仿射移动向量,再根据所有仿射移动向量来计算编码单元的移动向量预测子。本公开所提出的视频编译码技术可解决高分辨率视频中因两个控制点和单一仿射模型所造成效能不足的问题,以提升画面间预测编译码的准确性以及视频图像的编译码效能。
虽然本发明已以实施例公开如上,然其并非用以限定本发明,任何所属技术领域技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围应以权利要求的保护范围为准。

Claims (32)

1.一种视频编译码方法,其特征在于,适用于图像处理装置,该方法包括:
接收并且设定目前编码单元的控制点数量,其中该控制点数量大于或是等于3;
根据该控制点数量,产生至少一仿射模型;
计算各所述仿射模型所分别对应的仿射移动向量;以及
根据所述仿射移动向量,计算该目前编码单元的移动向量预测子,据以对该目前编码单元进行画面间预测编译码。
2.如权利要求1所述的方法,其特征在于,该控制点数量为1+2N,其中N为正整数。
3.如权利要求2所述的方法,其特征在于,当N=1时,所述仿射模型的数量为1。
4.如权利要求2所述的方法,其特征在于,当N>1时,所述仿射模型的数量为1+2N-1
5.如权利要求1所述的方法,其特征在于,设定该目前编码单元的该控制点数量的步骤为:
取得对于该控制点数量的设定值。
6.如权利要求5所述的方法,其特征在于,当该控制点数量的该设定值为3时,该方法更包括:
分别设置第一控制点、第二控制点以及第三控制点至该目前编码单元的左上角、右上角以及左下角。
7.如权利要求6所述的方法,其特征在于,产生所述仿射模型的步骤包括:
利用该第一控制点的移动向量、该第二控制点的移动向量以及该第三控制点的移动向量,建立所述仿射模型,其中所述仿射模型的数量为1。
8.如权利要求5所述的方法,其特征在于,当该控制点数量的该设定值为1+2N并且N>1时,在产生所述仿射模型的步骤之前,该方法更包括:
分别设置第一控制点、第二控制点以及第三控制点至该目前编码单元的左下角、左上角以及右上角;
设置第四控制点于该第一控制点与该第二控制点的之间,并且设置第五控制点于该第二控制点与该第三控制点的之间;
判断设置至该目前编码单元的所述控制点的数量是否已达到该控制点数量的该设定值;以及
若否,递归地设置新控制点于各两相邻的已设置的控制点的之间,直到设置于该目前编码单元的所述控制点的数量达到该控制点数量的该设定值为止。
9.如权利要求8所述的方法,其特征在于,产生所述仿射模型的步骤包括:
利用设置至该目前编码单元的各所述控制点的移动向量,建立所述仿射模型,其中所述仿射模型的数量为1+2N-1,各所述仿射模型是由不同组合的其中三个所述控制点的所述移动向量所建立。
10.如权利要求1所述的方法,其特征在于,该方法更包括:
分别设置第一初始控制点、第二初始控制点以及第三初始控制点至该目前编码单元的左下角、左上角以及右上角。
11.如权利要求10所述的方法,其特征在于,设定该目前编码单元的该控制点数量的步骤包括:
计算该第一初始控制点的移动向量与该第二初始控制点的移动向量的第一移动向量差值;
计算该第二初始控制点的该移动向量与该第三初始控制点的移动向量的第二移动向量差值;以及
根据该第一移动向量差值以及该第二移动向量差值,判断是否增加多个新控制点于该目前编码单元。
12.如权利要求11所述的方法,其特征在于,根据该第一移动向量差值以及该第二移动向量差值,判断是否增加所述新控制点于该目前编码单元的步骤包括:
当该第一移动向量差值以及该第二移动向量差值皆小于预设差值,不增加所述新控制点,并且设定该控制点数量为设置至该目前编码单元的所述初始控制点的数量。
13.如权利要求12所述的方法,其特征在于,产生所述仿射模型的步骤包括:
利用该第一初始控制点的移动向量、该第二初始控制点的移动向量以及该第三初始控制点的移动向量,建立所述仿射模型,其中所述仿射模型的数量为1。
14.如权利要求11所述的方法,其特征在于,根据该第一移动向量差值以及该第二移动向量差值,判断是否增加所述新控制点于该目前编码单元的步骤包括:
当该第一移动向量差值以及该第二移动向量差值至少之一者大于预设差值,新增第四初始控制点于该第一初始控制点与该第二初始控制点的之间,以及新增第五初始控制点于该第二初始控制点与该第三初始控制点的之间。
15.如权利要求14所述的方法,其特征在于,更包括:
判断设置至该目前编码单元的各两相邻的所述初始控制点的移动向量差值是否皆小于预设差值;以及
若否,递归地设置新控制点于各两相邻的已设置的初始控制点的之间,直到设置至该目前编码单元的各两相邻的所述初始控制点的该移动向量差值皆小于该预设差值或是设置至该目前编码单元的所述初始控制点的数量已达到该目前编码单元的上方以及左方的多个邻近子区块的数量为止。
16.如权利要求15所述的方法,其特征在于,产生所述仿射模型的步骤包括:
利用设置至该目前编码单元的各所述初始控制点的该移动向量,建立所述仿射模型,其中所述仿射模型的数量为1+2N-1,各所述仿射模型是由不同的其中三个所述初始控制点的所述移动向量所建立。
17.一种图像处理装置,其特征在于,包括:
存储器,用以储存数据;
处理器,耦接该存储器,并且经配置用以:
接收并且设定目前编码单元的控制点数量,其中该控制点数量大于或是等于3;
根据该控制点数量,产生至少一仿射模型;
计算各所述仿射模型所分别对应的仿射移动向量;以及
根据所述仿射移动向量,计算该目前编码单元的移动向量预测子,据以对该目前编码单元进行画面间预测编译码。
18.如权利要求17所述的图像处理装置,其特征在于,该控制点数量为1+2N,其中N为正整数。
19.如权利要求18所述的图像处理装置,其特征在于,当N=1时,所述仿射模型的数量为1。
20.如权利要求18所述的图像处理装置,其特征在于,当N>1时,所述仿射模型的数量为1+2N-1
21.如权利要求17所述的图像处理装置,其特征在于,该处理器取得对于该控制点数量的设定值,以设定为该目前编码单元的该控制点数量。
22.如权利要求21所述的图像处理装置,其特征在于,当该控制点数量的该设定值为3时,该处理器更用以:
分别设置第一控制点、第二控制点以及第三控制点至该目前编码单元的左上角、右上角以及左下角。
23.如权利要求22所述的图像处理装置,其特征在于,该处理器利用该第一控制点的移动向量、该第二控制点的移动向量以及该第三控制点的移动向量,建立所述仿射模型,其中所述仿射模型的数量为1。
24.如权利要求21所述的图像处理装置,其特征在于,当该控制点数量的该设定值为1+2N并且N>1时,该处理器更用以:
分别设置第一控制点、第二控制点以及第三控制点至该目前编码单元的左下角、左上角以及右上角;
设置第四控制点于该第一控制点与该第二控制点的之间,并且设置第五控制点于该第二控制点与该第三控制点的之间;
判断设置至该目前编码单元的所述控制点的数量是否已达到该控制点数量的该设定值;以及
若否,递归地设置新控制点于各两相邻的已设置的控制点的之间,直到设置于该目前编码单元的所述控制点的数量达到该控制点数量的该设定值为止。
25.如权利要求24所述的图像处理装置,其特征在于,该处理器利用设置至该目前编码单元的各所述控制点的移动向量,建立所述仿射模型,其中所述仿射模型的数量为1+2N-1,各所述仿射模型是由不同组合的其中三个所述控制点的所述移动向量所建立。
26.如权利要求17所述的图像处理装置,其特征在于,该处理器更用以:
分别设置第一初始控制点、第二初始控制点以及第三初始控制点至该目前编码单元的左下角、左上角以及右上角。
27.如权利要求26所述的图像处理装置,其特征在于,该处理器计算该第一初始控制点的移动向量与该第二初始控制点的移动向量的第一移动向量差值,计算该第二初始控制点的该移动向量与该第三初始控制点的移动向量的第二移动向量差值,以及根据该第一移动向量差值以及该第二移动向量差值,判断是否增加多个新控制点于该目前编码单元。
28.如权利要求27所述的图像处理装置,其特征在于,当该第一移动向量差值以及该第二移动向量差值皆小于预设差值,该处理器不增加所述新控制点,并且设定该控制点数量为设置至该目前编码单元的所述初始控制点的数量。
29.如权利要求28所述的图像处理装置,其特征在于,该处理器利用该第一初始控制点的移动向量、该第二初始控制点的移动向量以及该第三初始控制点的移动向量,建立所述仿射模型,其中所述仿射模型的数量为1。
30.如权利要求27所述的图像处理装置,其特征在于,当该第一移动向量差值以及该第二移动向量差值至少之一者大于预设差值,该处理器新增第四初始控制点于该第一初始控制点与该第二初始控制点的之间,以及新增第五初始控制点于该第二初始控制点与该第三初始控制点的之间。
31.如权利要求30所述的图像处理装置,其特征在于,该处理器更用以:
判断设置至该目前编码单元的各两相邻的所述初始控制点的移动向量差值是否皆小于预设差值;以及
若否,递归地设置新控制点于各两相邻的已设置的初始控制点的之间,直到设置至该目前编码单元的各两相邻的所述初始控制点的该移动向量差值皆小于该预设差值或是设置至该目前编码单元的所述初始控制点的数量已达到该目前编码单元的上方以及左方的多个邻近子区块的数量为止。
32.如权利要求31所述的图像处理装置,其特征在于,该处理器利用设置至该目前编码单元的各所述初始控制点的该移动向量,建立所述仿射模型,其中所述仿射模型的数量为1+2N-1,各所述仿射模型是由不同的其中三个所述初始控制点的所述移动向量所建立。
CN201811524353.6A 2017-12-13 2018-12-13 视频编译码方法及其图像处理装置 Pending CN109922347A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762597938P 2017-12-13 2017-12-13
US62/597,938 2017-12-13

Publications (1)

Publication Number Publication Date
CN109922347A true CN109922347A (zh) 2019-06-21

Family

ID=65278102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811524353.6A Pending CN109922347A (zh) 2017-12-13 2018-12-13 视频编译码方法及其图像处理装置

Country Status (5)

Country Link
US (1) US20190182503A1 (zh)
EP (1) EP3499882A1 (zh)
JP (1) JP2019118101A (zh)
CN (1) CN109922347A (zh)
TW (1) TW201929550A (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118042151A (zh) * 2018-01-25 2024-05-14 三星电子株式会社 使用基于子块的运动补偿进行视频信号处理的方法和装置
US11277628B2 (en) 2018-09-24 2022-03-15 Qualcomm Incorporated Restrictions for the worst-case bandwidth reduction in video coding
EP3939262A4 (en) * 2019-03-11 2022-11-09 Alibaba Group Holding Limited METHOD, DEVICE AND SYSTEM FOR DETERMINING PREDICTION WEIGHT FOR MERGE MODE
US11343525B2 (en) * 2019-03-19 2022-05-24 Tencent America LLC Method and apparatus for video coding by constraining sub-block motion vectors and determining adjustment values based on constrained sub-block motion vectors

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017026681A1 (ko) * 2015-08-07 2017-02-16 엘지전자 주식회사 비디오 코딩 시스템에서 인터 예측 방법 및 장치

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012012582A1 (en) * 2010-07-21 2012-01-26 Dolby Laboratories Licensing Corporation Reference processing using advanced motion models for video coding
CN109005407B (zh) * 2015-05-15 2023-09-01 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017026681A1 (ko) * 2015-08-07 2017-02-16 엘지전자 주식회사 비디오 코딩 시스템에서 인터 예측 방법 및 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HAN HUANG ET AL: "Control-Point Representation and Differential Coding Affine-Motion Compensation", 《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》 *

Also Published As

Publication number Publication date
US20190182503A1 (en) 2019-06-13
TW201929550A (zh) 2019-07-16
EP3499882A1 (en) 2019-06-19
JP2019118101A (ja) 2019-07-18

Similar Documents

Publication Publication Date Title
CN109922347A (zh) 视频编译码方法及其图像处理装置
TWI678915B (zh) 一種視訊編解碼的方法及裝置
EP3531698A1 (en) Deblocking filter method and terminal
CN109391827A (zh) 全方位视频的解码方法、编码方法及电子设备
CN104967852B (zh) 通过帧内预测来对图像进行编码和解码的方法和设备
CN108476322A (zh) 用于球面图像和立方体图像的帧间预测的装置
CN109792517A (zh) 用于编码和解码大视场视频的方法和装置
CN109803175A (zh) 视频处理方法及装置、设备、存储介质
CN108648257A (zh) 全景画面的获取方法、装置、存储介质及电子装置
CN107809642A (zh) 用于视频图像编码和解码的方法、编码设备和解码设备
CN106664414A (zh) 视频编码中用于单个样本模式的候选生成的方法及装置
CN107888928A (zh) 运动补偿预测方法和设备
CN101765011B (zh) 缩放运动估计的方法和装置
JP2021525401A (ja) 画像生成ネットワークの訓練および画像処理方法、装置、電子機器、ならびに媒体
KR20190054150A (ko) 무지향성 비디오들에 대한 개선된 모션 보상을 위한 방법 및 장치
JP2019515606A (ja) イントラ予測動画符号化方法および装置
CN110692241B (zh) 使用多种全局运动模型的多样化运动
US20220014447A1 (en) Method for enhancing quality of media
CN107801039A (zh) 运动补偿预测方法和设备
CN107231557A (zh) 用于在视频编码中的高级帧内预测的递归块分区中的智能重排
CN104125472B (zh) 视频帧压缩和解压缩***以及视频帧解压缩的方法
EP1719342B1 (en) Method of visualizing a large still picture on a small-size display.
CN108605145A (zh) 混合的布尔-令牌ans系数代码化
CN110536087A (zh) 电子设备及其运动轨迹照片合成方法、装置和嵌入式装置
CN111654696B (zh) 一种帧内的多参考行预测方法、装置、存储介质及终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190621