CN112449197A - 视频编解码的方法、装置、电子设备及存储介质 - Google Patents
视频编解码的方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112449197A CN112449197A CN202110118227.6A CN202110118227A CN112449197A CN 112449197 A CN112449197 A CN 112449197A CN 202110118227 A CN202110118227 A CN 202110118227A CN 112449197 A CN112449197 A CN 112449197A
- Authority
- CN
- China
- Prior art keywords
- motion vector
- candidate list
- candidate
- difference value
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000003860 storage Methods 0.000 title claims abstract description 23
- 239000013598 vector Substances 0.000 claims abstract description 259
- 230000002123 temporal effect Effects 0.000 claims description 23
- 238000010276 construction Methods 0.000 claims description 5
- 230000006835 compression Effects 0.000 abstract description 8
- 238000007906 compression Methods 0.000 abstract description 8
- 230000014509 gene expression Effects 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000005457 optimization Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing 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
技术领域
本申请涉及多媒体处理技术领域,具体涉及一种视频编解码的方法、装置、电子设备及存储介质。
背景技术
视频是由一张张图片连接起来形成的动态图像序列,若直接将每张图片的每一个像素点数据都加以存储,视频码流所占用的带宽将不可估量。视频编解码的作用就是在摄像头采集画面后,将图像进行压缩和数字编码,获取更加优化、抗干扰能力强的码流,以用于传输。本质上,就是用尽可能小的带宽传送高质量的视音频数据。从MPEG-1到MPEG-2,从H.263、H.264到H.265(HEVC),以及现在的H.266等一系列标准,都是为了让码流更优化、压缩效率更高、稳定性更强。
其中,视频编码的输入是一系列未压缩图像,比如是来自图像传感器采集到的一系列连续的图像帧构成的视频信息,输出为包括已压缩视频数据、视频压缩及传输有关的信息码流。为了充分提高压缩率,视频编码时会尽量把多帧图像中相同的图像块采用同一段编码表示(解码时再利用这同一段编码在多帧不同图像中分别还原该图像块),这需要对多个图像中的不同图像块进行快速而准确的搜索、比对和识别,同时其处理效率不应影响整体的编码速度。
运动估计算法是寻找当前编码的块在已编码的图像(参考帧)中的最佳对应块,并且计算出对应块的偏移(运动矢量)的过程。在这里运动矢量用距离和方向来表示。如图1所示,P为当前帧,P_ref为参考帧,B为当前码块,B_ref是参考帧P_ref中与当前码块B相减残差最小的块,B_ref一般称为当前码块B的最佳匹配块。B*为假设的参考帧中与当前码块B在图像中的坐标位置相同的块,若运动估计算法找到的最佳匹配块B_ref坐标为(x_ref, y_ref),块B*坐标为(x_ref, y_ref);则块B_ref坐标减去块B*的坐标就是运动矢量MV(MotionVector)。
进一步地,由于空域上相邻块的运动矢量具有较强的相关性;同时,运动矢量在时域上也具有一定的相关性。故可利用空域或时域上相邻块的运动矢量对当前块的运动矢量进行预测,仅对预测残差编码,这样可进一步节省运动矢量的编码比特数。
但是也可以看出,图1中现有的运动估计中运动矢量计算仅根据一个点的坐标确定,仅考虑了物体整体平移的情况;而在物体旋转运动情况下,现有的运动矢量无法准确刻画物体的运动变化。因而虽然现有技术中存在关于运动估计和运动矢量预测的一些优化方案,但其运动矢量均是对平移运动的表达,并不能正确表达旋转运动物体的图像块对应关系,使得视频中编码效率受到限制。
发明内容
针对现有技术中的上述技术问题,本申请实施例提出了一种视频编解码的方法、装置、电子设备及存储介质,以解决现有视频压缩技术无法对物体旋转情况进行有效编码的问题。
本申请实施例的第一方面提供了一种视频编码的方法,包括:
获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
选择候选列表中的至少一个候选运动矢量作为参考运动矢量,利用所述参考运动矢量对当前预测单元的运动矢量进行编码。
在一些实施例中,所述利用所述参考运动矢量对当前预测单元的运动矢量进行编码包括:将所述参考运动矢量的索引信息进行编码和/或传输。
在一些实施例中,所述方法还包括:根据所述参考运动矢量和当前预测单元的运动矢量确定运动矢量差值,所述运动矢量差值包括角度差值信息;将所述运动矢量差值进行编码和/或传输。
在一些实施例中,所述至少一个候选列表包括:空域候选列表、时域候选列表和组合候选列表中的至少一个。
在一些实施例中,所述候选运动矢量包括:来自空间相邻预测单元的空间运动矢量预测值、来自相同位置预测单元的时间运动矢量预测值、来自基于历史的运动矢量预测值队列、来自成对平均运动矢量预测值和来自零运动矢量中的至少一项。
在一些实施例中,所述获得至少一个候选列表的方式包括运动合并模式和/或高级运动矢量预测模式。
本申请实施例的第二方面提供了一种视频解码的方法,包括:
获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
基于参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量计算当前预测单元的运动矢量。
在一些实施例中,所述计算当前预测单元的运动矢量包括:根据所述参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量确定参考运动矢量;根据所述参考运动矢量确定当前预测单元的运动矢量;所述当前预测单元的运动矢量包括角度信息。
在一些实施例中,所述根据所述参考运动矢量的索引信息确定参考运动矢量包括:根据运动矢量差值和所述参考运动矢量确定当前预测单元的运动矢量,所述运动矢量差值包括角度差值信息。
在一些实施例中,所述至少一个候选列表包括:空域候选列表、时域候选列表和组合候选列表中的至少一个。
本申请实施例的第三方面提供了一种视频编码的装置,包括:
候选列表构建模块,用于获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
运动矢量编码模块,用于选择候选列表中的至少一个候选运动矢量作为参考运动矢量,利用所述参考运动矢量对当前预测单元的运动矢量进行编码。
在一些实施例中,所述运动矢量编码模块包括:运动矢量索引编码模块,用于将所述参考运动矢量的索引信息进行编码和/或传输。
在一些实施例中,所述运动矢量编码模块包括:矢量差值确定模块,用于根据所述参考运动矢量和当前预测单元的运动矢量确定运动矢量差值,所述运动矢量差值包括角度差值信息;运动矢量索引编码模块,用于将所述参考运动矢量的运动矢量差值进行编码和/或传输。
本申请实施例的第四方面提供了一种视频解码的装置,包括:
候选列表构建模块,用于构建至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
解码模块,用于利用参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量计算当前预测单元的运动矢量。
在一些实施例中,所述解码模块包括:索引解码模块,用于根据所述参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量确定参考运动矢量;矢量解码模块,用于根据所述参考运动矢量确定当前预测单元的运动矢量,所述当前预测单元的运动矢量包括角度信息。
本申请实施例的第五方面提供了一种电子设备,包括:
存储器以及一个或多个处理器;
其中,所述存储器与所述一个或多个处理器通信连接,所述存储器中存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行时,所述电子设备用于实现如前述各实施例所述的方法。
本申请实施例的第六方面提供了一种计算机可读存储介质,其上存储有计算机可执行指令,当所述计算机可执行指令被计算装置执行时,可用来实现如前述各实施例所述的方法。
本申请实施例的第七方面提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,可用来实现如前述各实施例所述的方法。
本申请实施例通过对视频帧图像中的物体旋转情况进行帧间预测,使用带有旋转角度信息的运动矢量来进行编码,实现了对旋转运动物体的预测、表达和高效编码,进一步提升了视频数据的压缩效率。
附图说明
通过参考附图会更加清楚的理解本申请的特征和优点,附图是示意性的而不应理解为对本申请进行任何限制,在附图中:
图1是现有技术中通过运动估计算法得到运动矢量的示意图;
图2是根据本申请的一些实施例所示的一种视频编码的方法的流程示意图;
图3是根据本申请的一些实施例所示的一种视频编码的装置的结构框图;
图4是根据本申请的一些实施例所示的用于视频编解码的一种电子设备的结构示意图;
图5A和图5B是根据本申请的一些实施例所示的空域候选列表和时域候选列表的建立方式示意图。
具体实施方式
在下面的详细描述中,通过示例阐述了本申请的许多具体细节,以便提供对相关披露的透彻理解。然而,对于本领域的普通技术人员来讲,本申请显而易见的可以在没有这些细节的情况下实施。应当理解的是,本申请中使用“系统”、“装置”、“单元”和/或“模块”术语,是用于区分在顺序排列中不同级别的不同部件、元件、部分或组件的一种方法。然而,如果其他表达式可以实现相同的目的,这些术语可以被其他表达式替换。
应当理解的是,当设备、单元或模块被称为“在……上”、“连接到”或“耦合到”另一设备、单元或模块时,其可以直接在另一设备、单元或模块上,连接或耦合到或与其他设备、单元或模块通信,或者可以存在中间设备、单元或模块,除非上下文明确提示例外情形。例如,本申请所使用的术语“和/或”包括一个或多个相关所列条目的任何一个和所有组合。
本申请所用术语仅为了描述特定实施例,而非限制本申请范围。如本申请说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的特征、整体、步骤、操作、元素和/或组件,而该类表述并不构成一个排它性的罗列,其他特征、整体、步骤、操作、元素和/或组件也可以包含在内。
参看下面的说明以及附图,本申请的这些或其他特征和特点、操作方法、结构的相关元素的功能、部分的结合以及制造的经济性可以被更好地理解,其中说明和附图形成了说明书的一部分。然而,可以清楚地理解,附图仅用作说明和描述的目的,并不意在限定本申请的保护范围。可以理解的是,附图并非按比例绘制。
本申请中使用了多种结构图用来说明根据本申请的实施例的各种变形。应当理解的是,前面或下面的结构并不是用来限定本申请。本申请的保护范围以权利要求为准。
为了充分提高压缩率,视频编码时会尽量把图像块采用尽可能简短的编码表示,解码时再使用简短编码还原该图像块。大多数视频序列中,相邻图像内容非常相似,其背景画面变化极小,因此不需要对每幅图像的全部信息都进行编码,而只需要将将当前图像中运动物体的运动信息传给解码器,利用前一图像内容以及当前图像的运动信息即可恢复当前图像,这样可以有效的节省比特率。目前主要采用基于块的运动补偿技术,原理是通过运动估计算法为当前图像的每个像素块在之前已编码图像中寻找一个最佳匹配块,通过运动矢量表述两个图像块的位置关系,从而建立编码的关联。其中,用于预测的图像称为参考图像,参考块到当前像素块的位移称为运动矢量MV,当前块与参考块的差值称为预测残差。在本发明中,编码块泛指以任何方式对一帧完整的图像进行划分以利于进行变换、帧间编码/帧内编码的相对独立的单元。其中,在编码块内涉及到运动预测运算的基本单元或多个基本单元的组合泛称为预测块。
除了图像块具有相关性之外,现有技术还发现帧间不同编码块的运动矢量之间也存在空域和时域上的相关性,因而进一步出现了对运动矢量进行预测的技术,比如HEVC(High Efficiency Video Coding,高效率视频编码,已成为H.265国际标准)提出的运动合并(Merge)技术,其利用当前预测单元空时域上相邻已编码块的运动信息(运动矢量和参考帧信息)直接推导得到当前块运动信息,实现了运动矢量的预测。下一代标准VVC(Versatile Video Coding,通用视频编码)中也沿用了这一种帧间预测技术。
但是,由于现有技术的运动矢量仅考虑了物体整体平移的情况,仅根据一个像素点的坐标位移确定,当物体旋转运动时,现有的运动矢量无法有效描述旋转情况,因而也无法采用现有运动估计和Merge技术来进行旋转运动的运动矢量预测。
有鉴于此,本申请的实施例提出了一种视频编码的方法,通过对带有旋转角度的运动矢量进行计算和预测,有效解决了对平移且旋转运动的物体的视频数据进行高效编码的问题。具体地,参见图2,在本申请的一个实施例中,所述视频编码的方法包括:
S201,获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
S202,选择候选列表中的至少一个候选运动矢量作为参考运动矢量,利用所述参考运动矢量对当前预测单元的运动矢量进行编码。
在本申请的实施例中,针对现有技术仅考虑物体平移运动的情况进行了改进,在帧间预测时对周围已编码块的运动信息进行扩展,加入旋转角度信息进行预测计算,得到的候选列表中至少一个候选运动矢量还包括旋转角度信息,从而得到带有旋转角度信息的参考运动矢量和预测运动矢量,使得帧间预测结果可以准确表达旋转运动情况,从而对旋转运动的物体进行有效的压缩编码。
具体地,视频编码过程中除可通过运动估计逐一搜索每一个图像块的运动矢量(Motion Vector,MV)外;考虑到空域上相邻块的MV具有较强的相关性,同时MV在时域上也具有一定的相关性,因而进一步通过利用空域或时域上相邻块的MV对当前块的MV进行预测,仅对预测残差编码,能够进一步节省MV的编码比特数。优选地,HEVC标准中提出了Merge(合并)和AMVP(高级运动矢量预测)技术,都使用了空域和时域MV预测方式,通过建立候选MV列表,选取性能最优的一个作为当前预测单元(Prediction Units,PU)的预测MV。
在本申请的一个实施例中,为当前预测单元(Prediction Units,PU,通常为图像块)建立至少一个候选列表,候选列表由周围已编码块运动信息组成。其中,候选列表可以是空域候选列表、时域候选列表和组合候选列表中的至少一个。相对应地,建立候选列表包括了空域候选推导过程、空域候选冗余校验过程和时域候选推导过程等,进一步结合图5A和图5B对各过程的说明如下:
一、空域候选列表的建立,空域候选列表中的候选位置如图5A所示,A0, A1分别表示位于当前预测单元(中心的图像块)左下方距离最近的以及左侧最下方的已编码块,B0, B1分别表示位于当前预测单元右上方距离最近的以及上方最右侧的编码块,B2则表示当前预测单元左上方距离最近的编码块。空域候选列表最多为当前预测单元提供四个候选运动矢量,因而需要在上述的五个候选块中选出四个加入候选列表中,通常计入候选列表的顺序为A1—B1—B0—A0—(B2,仅在前四个候选均不可用时,才采用B2的运动信息)。如果当前编码块采用矩形划分方式进行划分,其候选列表的建立需要做特殊处理,具体参见Merge技术标准,此处不再展开描述。
二、时域候选列表的建立,时域候选块来自于当前预测单元(Prediction Units,PU)在时域上邻近已编码图像中对应位置的PU(即同位PU),如图5B所示。与空域候选列表不同的是,时域候选列表不能直接利用对应的候选块的运动信息,需要根据相对位置和距离做一定的比例伸缩调整。此外,在时域上只提供一个候选,由图5B中位置H的同位PU进行MV伸缩而得,如果H位置的候选存在不可用的情况,比如帧内编码或者是在当前CTU(编码树单元)行之外,则采用位置C的同位PU。其中,关于CTU、CU(Coding Units,CU)和PU等概念的区别详见HEVC标准中的说明,可简单理解为对视频图像以不同程度、层次、深度和/或大小的方式分割后的图像块单元,其具有一定的层级关系和对应性,分割方式也有一些标准模式,在相关标准中有详细的定义和说明,此处不再展开描述。
三、组合列表的建立,在某些视频编码技术中,对于B帧(双向预测内插编码帧)还采用了组合列表的方式。由于B 帧的帧间预测比较特殊,其进行双向预测,所以会存在两个MV,候选列表也需要提供两个预测MV,HEVC 标准将MV候选列表(由前述列表建立步骤得到的)中的前4 个候选MV两两组合,产生B 帧的组合列表。
进一步地,在VVC标准中,还存在以下五种类型的候选对象,将其按顺序引入以构造Merge候选列表,具体包括:来自空间相邻CU的空间MVP、来自相同位置CU的时间MVP、来自基于历史的MVP队列、来自成对平均MVP(在本申请地优选实施例中,旋转角度信息也被成对平均)和来自零MV。Merge候选列表的大小在Slice标头中用信号通知,并且Merge候选列表的最大允许大小为6。对于Merge模式下的每个CU,使用截断一元二进制化对最佳Merge候选索引进行编码。Merge索引的第一个位置使用上下文进行编码,其他容器使用旁路编码。
除了常规Merge模式(其中隐式导出的运动信息直接用于当前CU的预测样本生成)外,VVC中还引入了具有运动矢量差(MMVD)的Merge模式。发送skip标志后立即发出MMVD标志和Merge标志以指定是否将MMVD模式用于CU。相关技术的具体实现详见对应的标准文档说明,此处不再展开描述。
在本申请的实施例中,使用带有旋转角度信息的运动矢量来进行帧间预测,其中,各编码单元CU、预测单元PU或图像块(块)的表述均表示具有一定尺寸的图像块/像素块/像素矩阵,其分别具有各自对应的运动矢量MV,每个运动矢量均包括旋转角度信息。在上述候选列表建立过程中,本申请的实施例同时对运动矢量的旋转情况进行预测,并预测旋转后的图像块情况;获得的候选列表中也同样包括带有旋转角度信息候选运动矢量(与带有旋转角度信息的候选参考块对应)。
在建立/获得候选列表后,通过计算(比如比对)确定当前块的参考运动矢量(的位置)和参考运动矢量(将其作为当前块的运动矢量预测值),从而实现对视频的压缩编码。在一种实施例中,编码端计算当前块与参考块旋转角度大小,并至少部分基于旋转角度差值确定添加到候选列表中各MVP的顺序。
在一种实施例中,在确定最佳运动矢量预测参考块后,进一步比较当前块运动矢量与参考块运动矢量的差值,包括比较旋转角度的差值。将至少包括旋转角度差值的数据进行编码,作为视频信息的一部分,供解码端解码使用。
在一些实施例中,对当前预测单元的运动矢量进行编码包括:根据所述参考运动矢量和当前预测单元的运动矢量确定运动矢量差值,所述运动矢量差值包括角度差值信息;将所述参考运动矢量的索引信息和/或运动矢量差值进行编码和/或传输。在一些实施例中,所述至少一个候选列表包括:空域候选列表、时域候选列表和组合候选列表中的至少一个。在一些实施例中,所述候选运动矢量包括:来自空间相邻预测单元的空间运动矢量预测值、来自相同位置预测单元的时间运动矢量预测值、来自基于历史的运动矢量预测值队列、来自成对平均运动矢量预测值和来自零运动矢量中的至少一项。在一些实施例中,所述帧间预测包括运动合并模式和/或高级运动矢量预测模式。
当然,本领域技术人员应当理解,视频编码过程通常还包括一些进一步优化的手段,比如运动估计、帧内预测、DCT(离散余弦变换,Discrete Cosine Transform)、量化、熵编码和滤波等,故本申请的实施例除帧间预测外,还会进一步结合上述一种或多种优化手段来完成完整的视频编码。鉴于现有技术对这些优化手段已有充分的研究,本申请的实施例可直接使用现有手段来实现,故不再一一展开说明,上述优化手段也不应视作对本申请具体实现的限制。
与上述视频编码的方法相对应地,本申请的实施例还提供了一种视频解码的方法,解码过程通常是编码过程的逆过程。在本申请的一个实施例中,所述视频解码的方法包括:
获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
基于参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量计算当前预测单元的运动矢量。
其中,编码器将所选择的参考运动矢量作为当前预测单元运动矢量预测值,并将指示参考运动矢量的索引信息进行编码和/或传输,以供解码器获取该索引信息并确定所述参考运动矢量。在解码端也使用同样的方法建立该候选列表,如此以来,编码器只需要传输参考运动矢量的索引到解码端即可,大大减少了编码过程的比特消耗。其中,解码器确定参考运动矢量后,将其运动矢量作为当前块运动矢量预测值。解码器可以从候选列表中选择其中一项或多项运动矢量预测值确定当前块运动矢量预测值,可以选择优先级最高的若干项MVP进行线性组合作为当前块运动矢量预测值。编码时会进一步比较当前块运动矢量与参考块运动矢量的差值,包括比较旋转角度的差值。将至少包括旋转角度差值的数据进行编码,作为视频信息的一部分,供解码端解码使用。解码器通过角度差值恢复旋转角度信息:旋转角度信息=旋转角度预测值+旋转角度差值,从而确定当前块运动矢量信息。按旋转角度对参考块进行旋转后,以参考块为基准,加上块之间的残差值,就可以重建当前块数据。
在一些实施例中,所述利用所述参考运动矢量对当前预测单元的运动矢量进行编码包括:将所述参考运动矢量的索引信息进行编码和/或传输。在一些实施例中,所述方法还包括:根据所述参考运动矢量和当前预测单元的运动矢量确定运动矢量差值,所述运动矢量差值包括角度差值信息;将所述运动矢量差值进行编码和/或传输。在一些实施例中,所述至少一个候选列表包括:空域候选列表、时域候选列表和组合候选列表中的至少一个。在一些实施例中,所述候选运动矢量包括:来自空间相邻预测单元的空间运动矢量预测值、来自相同位置预测单元的时间运动矢量预测值、来自基于历史的运动矢量预测值队列、来自成对平均运动矢量预测值和来自零运动矢量中的至少一项。在一些实施例中,所述获得至少一个候选列表的方式包括运动合并模式和/或高级运动矢量预测模式。
图3是根据本申请的一些实施例所示的视频编码的装置示意图。如图3所示,所述视频编码的装置300包括:
候选列表构建模块310,用于获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
运动矢量编码模块320,用于选择候选列表中的至少一个候选运动矢量作为参考运动矢量,利用所述参考运动矢量对当前预测单元的运动矢量进行编码。
在一些实施例中,所述运动矢量编码模块包括:
运动矢量索引编码模块,用于将所述参考运动矢量的索引信息进行编码和/或传输。
在一些实施例中,所述运动矢量编码模块包括:矢量差值确定模块,用于根据所述参考运动矢量和当前预测单元的运动矢量确定运动矢量差值,所述运动矢量差值包括角度差值信息;运动矢量索引编码模块,用于将所述参考运动矢量的运动矢量差值进行编码和/或传输。
在另外一些实施例中,直接将参考运动矢量作为当前预测单元的运动矢量预测值,因此不计算前预测单元的运动矢量与参考运动矢量的差值,因此不存在矢量差值确定模块。
同样与上述视频编码的装置相对应地,本申请的实施例还提供了一种视频解码的装置,包括:候选列表构建模块,用于构建至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
解码模块,用于利用参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量计算当前预测单元的运动矢量。
在一些实施例中,所述解码模块包括:索引解码模块,用于根据所述参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量确定参考运动矢量;矢量解码模块,用于根据所述参考运动矢量确定当前预测单元的运动矢量,所述当前预测单元的运动矢量包括角度信息。
在一些实施例中,所述解码模块包括:差值解码模块,用于根据运动矢量差值和所述参考运动矢量确定当前预测单元的运动矢量,所述运动矢量差值包括角度差值信息。
在一些实施例中,所述至少一个候选列表包括:空域候选列表、时域候选列表和组合候选列表中的至少一个。在一些实施例中,所述候选运动矢量包括:来自空间相邻预测单元的空间运动矢量预测值、来自相同位置预测单元的时间运动矢量预测值、来自基于历史的运动矢量预测值队列、来自成对平均运动矢量预测值和来自零运动矢量中的至少一项。在一些实施例中,所述获得至少一个候选列表的方式包括运动合并模式和/或高级运动矢量预测模式。
参考附图4,本申请一个实施例还提供了一种电子设备。如图4所示,该电子设备400包括:
存储器430以及一个或多个处理器410;
其中,所述存储器430与所述一个或多个处理器410通信连接,所述存储器430中存储有可被所述一个或多个处理器执行的指令432,所述指令432被所述一个或多个处理器410执行,以使所述一个或多个处理器410执行本申请前述实施例中的方法。
具体地,处理器410和存储器430可以通过总线或者其他方式连接,图4中以通过总线440连接为例。处理器410可以为中央处理器(Central Processing Unit,CPU)。处理器410还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器430作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请实施例中的级联渐进网络等。处理器410通过运行存储在存储器430中的非暂态软件程序/指令432以及功能模块,从而执行处理器的各种功能应用以及数据处理。
存储器430可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器410所创建的数据等。此外,存储器430可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器430可选包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络(比如通过通信接口420)连接至处理器410。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请的一个实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令被执行后执行本申请前述实施例中的方法。
前述的计算机可读取存储介质包括以存储如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方式或技术来实现的物理易失性和非易失性、可移动和不可移动介质。计算机可读取存储介质具体包括,但不限于,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、可擦除可编程只读存储器(EPROM)、电可擦可编程只读存储器(EEPROM)、闪存或其他固态存储器技术、CD-ROM、数字多功能盘(DVD)、HD-DVD、蓝光(Blue-Ray)或其他光存储设备、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算机访问的任何其他介质。
尽管此处所述的主题是在结合操作系统和应用程序在计算机系统上的执行而执行的一般上下文中提供的,但本领域技术人员可以认识到,还可结合其他类型的程序模块来执行其他实现。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。本领域技术人员可以理解,此处所述的本主题可以使用其他计算机系统配置来实践,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机等,也可使用在其中任务由通过通信网络连接的远程处理设备执行的分布式计算环境中。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备的两者中。
本领域普通技术人员可以意识到,结合本文中所本申请的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对原有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
综上所述,本申请提出了一种视频编解码的方法、装置、电子设备及存储介质。本申请实施例通过对视频帧图像中的物体旋转情况进行帧间预测,使用带有旋转角度信息的运动矢量来进行编码,实现了对旋转运动物体的预测、表达和高效编码,进一步提升了视频数据的压缩效率。
应当理解的是,本申请的上述具体实施方式仅仅用于示例性说明或解释本申请的原理,而不构成对本申请的限制。因此,在不偏离本申请的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。此外,本申请所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
Claims (12)
1.一种视频编码的方法,其特征在于,所述方法包括:
获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
选择候选列表中的至少一个候选运动矢量作为参考运动矢量,根据所述参考运动矢量和当前预测单元的运动矢量确定运动矢量差值,所述运动矢量差值包括角度差值信息;
将所述运动矢量差值进行编码和/或传输。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述参考运动矢量的索引信息进行编码和/或传输。
3.根据权利要求1所述的方法,其特征在于,所述至少一个候选列表包括:空域候选列表、时域候选列表和组合候选列表中的至少一个。
4.根据权利要求1或3所述的方法,其特征在于,所述候选运动矢量包括:来自空间相邻预测单元的空间运动矢量预测值、来自相同位置预测单元的时间运动矢量预测值、来自基于历史的运动矢量预测值队列、来自成对平均运动矢量预测值和来自零运动矢量中的至少一项。
5.根据权利要求1所述的方法,其特征在于,所述获得至少一个候选列表的方式包括运动合并模式和/或高级运动矢量预测模式。
6.一种视频解码的方法,其特征在于,所述方法包括:
对编码压缩后的视频码流解码,获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
基于参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量确定参考运动矢量,根据运动矢量差值和所述参考运动矢量计算当前预测单元的运动矢量;所述运动矢量差值包括角度差值信息。
7.根据权利要求6所述的方法,其特征在于,所述至少一个候选列表包括:空域候选列表、时域候选列表和组合候选列表中的至少一个。
8.一种视频编码的装置,其特征在于,所述装置包括:
候选列表构建模块,用于获得至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
运动矢量编码模块,用于选择候选列表中的至少一个候选运动矢量作为参考运动矢量,根据所述参考运动矢量和当前预测单元的运动矢量确定运动矢量差值,所述运动矢量差值包括角度差值信息;将所述运动矢量差值进行编码和/或传输。
9.根据权利要求8所述的装置,其特征在于,所述运动矢量编码模块包括:
运动矢量索引编码模块,用于将所述参考运动矢量的索引信息进行编码和/或传输。
10.一种视频解码的装置,其特征在于,所述装置包括:
候选列表构建模块,用于对编码压缩后的视频码流解码,构建至少一个候选列表,所述候选列表中的至少一个候选运动矢量包括旋转角度信息;
解码模块,用于利用参考运动矢量的索引信息从候选列表中的至少一个候选运动矢量确定参考运动矢量,根据运动矢量差值和所述参考运动矢量计算当前预测单元的运动矢量;所述运动矢量差值包括角度差值信息。
11.一种电子设备,其特征在于,包括:
存储器以及一个或多个处理器;
其中,所述存储器与所述一个或多个处理器通信连接,所述存储器中存储有可被所述一个或多个处理器执行的指令,所述指令被所述一个或多个处理器执行时,所述电子设备用于实现如权利要求1-7任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机可执行指令,当所述计算机可执行指令被计算装置执行时,可用来实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110118227.6A CN112449197A (zh) | 2021-01-28 | 2021-01-28 | 视频编解码的方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110118227.6A CN112449197A (zh) | 2021-01-28 | 2021-01-28 | 视频编解码的方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112449197A true CN112449197A (zh) | 2021-03-05 |
Family
ID=74740147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110118227.6A Pending CN112449197A (zh) | 2021-01-28 | 2021-01-28 | 视频编解码的方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112449197A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109640097A (zh) * | 2018-12-07 | 2019-04-16 | 辽宁师范大学 | 自适应因子的视频仿射运动估计方法 |
WO2020008724A1 (ja) * | 2018-07-06 | 2020-01-09 | ソニー株式会社 | 画像処理装置、画像処理方法及びプログラム |
-
2021
- 2021-01-28 CN CN202110118227.6A patent/CN112449197A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020008724A1 (ja) * | 2018-07-06 | 2020-01-09 | ソニー株式会社 | 画像処理装置、画像処理方法及びプログラム |
CN112369024A (zh) * | 2018-07-06 | 2021-02-12 | 索尼公司 | 图像处理装置、图像处理方法和程序 |
CN109640097A (zh) * | 2018-12-07 | 2019-04-16 | 辽宁师范大学 | 自适应因子的视频仿射运动估计方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7358436B2 (ja) | マルチリファレンス予測のための動きベクトルの精密化 | |
US20190058896A1 (en) | Method and apparatus of video coding with affine motion compensation | |
JP5081305B2 (ja) | フレーム間予測符号化の方法および装置 | |
US8737480B2 (en) | Joint spatial and temporal block merge mode for HEVC | |
JP5373626B2 (ja) | 複数の動きベクトル・プレディクタを使用して動きベクトルを推定する方法、装置、エンコーダ、デコーダ及びデコーディング方法 | |
JP5277257B2 (ja) | 動画像復号化方法および動画像符号化方法 | |
JP2021022936A (ja) | 画像予測方法および関連装置 | |
US20120294372A1 (en) | Motion vector predictive encoding method, motion vector predictive decoding method, moving picture encoding apparatus, moving picture decoding apparatus, and programs thereof | |
JPWO2011099468A1 (ja) | 動きベクトル予測符号化方法,動きベクトル予測復号方法,動画像符号化装置,動画像復号装置およびそれらのプログラム | |
EP2666299A1 (en) | Method for decoding video using buffer compression for motion vector competition | |
CN112995670B (zh) | 一种顺序执行的帧间帧内联合预测编解码的方法及装置 | |
CN114827623A (zh) | 用于视频编解码的边界扩展 | |
WO2022227622A1 (zh) | 一种权值可配置的帧间帧内联合预测编解码的方法及装置 | |
CN117280691A (zh) | 增强的运动向量预测 | |
JP6019797B2 (ja) | 動画像符号化装置、動画像符号化方法、及びプログラム | |
CN114727114A (zh) | 运动矢量的确定方法和装置 | |
CN112468815B (zh) | 视频编解码的方法、装置、电子设备及存储介质 | |
CN112449197A (zh) | 视频编解码的方法、装置、电子设备及存储介质 | |
JP2018182435A (ja) | 動きベクトル予測装置及びコンピュータプログラム | |
WO2024008011A1 (en) | Method, apparatus, and medium for video processing | |
CN117296324A (zh) | 视频处理的方法、设备和介质 | |
JP2012095099A (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210305 |