CN112565767B - 视频解码方法、视频编码方法及相关设备 - Google Patents

视频解码方法、视频编码方法及相关设备 Download PDF

Info

Publication number
CN112565767B
CN112565767B CN202010500079.XA CN202010500079A CN112565767B CN 112565767 B CN112565767 B CN 112565767B CN 202010500079 A CN202010500079 A CN 202010500079A CN 112565767 B CN112565767 B CN 112565767B
Authority
CN
China
Prior art keywords
string
current
string vector
vector
resolution
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
CN202010500079.XA
Other languages
English (en)
Other versions
CN112565767A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010500079.XA priority Critical patent/CN112565767B/zh
Publication of CN112565767A publication Critical patent/CN112565767A/zh
Application granted granted Critical
Publication of CN112565767B publication Critical patent/CN112565767B/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/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/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/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
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/182Methods 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 a pixel
    • 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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

本公开提供了一种视频解码方法、视频解码方法及相关设备。该方法包括:获取待解码码流,所述待解码码流包括当前解码块,所述当前解码块采用帧内串复制模式,所述当前解码块包括当前串;确定所述当前串的至少两个候选串矢量编码分辨率;解码所述待解码码流,获得所述当前串的串矢量编码信息;根据所述串矢量编码信息,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量。本公开实施例中提供的方案能够提高编码效率。

Description

视频解码方法、视频编码方法及相关设备
技术领域
本公开涉及视频编解码技术领域,具体而言,涉及一种视频解码方法、视频编码方法、电子设备和计算机可读存储介质。
背景技术
一方面,互联网即将进入5G(5th generation mobile networks或5thgeneration wireless systems、5th-Generation,第五代移动通信技术)新时代,各种互联网应用中出现的图像(视频)已经成为互联网带宽的主要消耗者。特别是移动互联网图像流量与日俱增,在5G时代更将有爆发式的增长,将给图像编解码技术的加速发展注入全新的强大推动力。与此同时,也对图像编解码技术提出了诸多过去未曾遇到的严峻的新挑战。5G时代,万物互联,各类新兴应用中产生的新型互联网图像具有多样性和差异性。因此,如何针对具有多样性和差异性的新型互联网图像的特点,研究高效的图像编解码技术成为了迫切需求。
另一方面,用于描绘即使相对较短影片所需的视频数据量也可能相当大,当数据为流式或者以其它方式通过具有有限带宽容量的通信网进行传送时,这可能产生困难。因此,在通过现代电信网络进行传送之前,视频数据通常进行压缩。在传输之前,视频压缩设备通常使用在源侧的软件和/或硬件来对视频数据进行编码,从而减少了用于表示数字视频图像所需的数据量。随后由视频解压缩设备在目的地接收压缩数据,所述视频解压缩设备对视频数据进行解码。在有限的网络资源以及对较高视频质量的需求不断增加的情况下,需要提高图像质量而不会增加位速率的改进的压缩和解压缩技术。
相关技术中的串预测方案(也可称之为帧内串复制技术或者串匹配技术)在对串矢量编码时,默认使用整像素精度或分辨率,导致串矢量的编码成本较高。
因此,需要一种新的视频解码方法、视频编码方法、电子设备和计算机可读存储介质。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解。
发明内容
本公开实施例提供一种视频解码方法、视频编码方法、电子设备和计算机可读存储介质,允许使用不同的分辨率编码串矢量,从而能够提高串矢量的编码效率。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
本公开实施例提供一种视频解码方法,所述方法包括:获取待解码码流,所述待解码码流包括当前解码块,所述当前解码块采用帧内串复制模式,所述当前解码块包括当前串;确定所述当前串的至少两个候选串矢量编码分辨率;解码所述待解码码流,获得所述当前串的串矢量编码信息;根据所述串矢量编码信息,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量。
本公开实施例提供一种视频编码方法,所述方法包括:获取当前编码块;对所述当前编码块采用帧内串复制模式,将所述当前编码块分成串,所述串包括当前串;确定所述当前串的至少两个候选串矢量编码分辨率;从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;根据所述当前串的目标串矢量编码分辨率编码所述当前串的目标串矢量,获得所述当前串的串矢量编码信息。
本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中所述的视频解码方法或者视频编码方法。
本公开实施例提供了一种电子设备,包括:至少一个处理器;存储装置,配置为存储至少一个程序,当所述至少一个程序被所述至少一个处理器执行时,使得所述至少一个处理器实现如上述实施例中所述的视频解码方法或者视频编码方法。
在本公开的一些实施例所提供的技术方案中,通过允许使用不同的分辨率对串矢量进行编码,通过自适应的选择分辨率对串矢量进行编码,能够提高串矢量的编码效率,从而提高视频数据的整体编码效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了相关技术中的一种视频编码基本框图;
图2示意性示出了相关技术中的帧间预测的示意图;
图3示意性示出了相关技术中的帧间预测的Merge(合并)模式的空域的候选MVP的位置示意图;
图4示意性示出了相关技术中的帧间预测的Merge模式的时域的候选MVP的位置示意图;
图5示意性示出了相关技术中的帧内块复制的示意图;
图6示意性示出了相关技术中的帧内串复制的示意图;
图7示意性示出了根据本公开的一实施例的视频解码方法的示意图;
图8示意性示出了根据本公开的一实施例的视频编码方法的示意图;
图9示出了适于用来实现本公开实施例的电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在至少一个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
首先对本公开实施例中涉及的部分术语进行说明。
AVS:Audio Video Coding Standard,音视频编码标准。
HEVC:High Efficiency Video Coding,高效视频编码,也称之为H.265。
VVC:Versatile Video Coding,多功能视频编码,也称之为H.266。
Intra(picture)Prediction:帧内预测。
Inter(picture)Prediction:帧间预测。
SCC:screen content coding,屏幕内容/图像编码。
Loop Filtering:环路滤波。
QP:Quantization Parameter,量化参数。
LCU:Largest Coding Unit,最大编码单元。
CTU:Coding Tree Unit,编码树单元,一般由最大编码单元开始往下划分。
CU:Coding Unit,编码单元。
PU:Prediction Unit,预测单元。
MV:Motion Vector,运动矢量。
MVP:Motion Vector Prediction,运动矢量预测值。
MVD:Motion Vector Difference,MVP与MV的真正估值之间的差值。
AMVP:Advanced Motion Vector Prediction,高级运动矢量预测。
ME:Motion Estimation,运动估计,得到运动矢量MV的过程称作为运动估计,作为运动补偿(Motion Compensation,MC)中的技术。
MC:根据运动矢量和帧间预测方法,求得当前图像的估计值过程。运动补偿是一种描述相邻帧(相邻在这里表示在编码关系上相邻,在播放顺序上两帧未必相邻)差别的方法,具体来说是描述前面一帧的每个小块怎样移动到当前帧中的某个位置去。这种方法经常被视频压缩/视频编解码器用来减少视频序列中的空域冗余。相邻的帧通常很相似,也就是说,包含了很多冗余。使用运动补偿的目的是通过消除这种冗余,来提高压缩比。
BV:Block Vector,块位移矢量/块矢量。
BVP:Block Vector Prediction,块矢量预测值。
BVD:Block Vector Difference,BVP与BV的真正估值之间的差值。
I Slice:Intra Slice,帧内条带/片。可以把图像分成一帧(frame)或两场(field),而帧又可以分成一个或几个片(Slice)。
视频信号,从信号的获取方式看,可以包括摄像机拍摄到的以及计算机生成的两种方式。由于统计特性的不同,其对应的压缩编码方式也可能有所区别。
部分视频编码技术例如HEVC,VVC以及AVS,采用了混合编码框架,如图1所示,对输入的原始视频信号(input video)中的图像(pictures)按顺序编码,进行了如下一系列的操作和处理:
1)块划分结构(block partition structure):将输入图像划分成若干个不重叠的处理单元,对每个处理单元将进行类似的压缩操作。这个处理单元可以称之为CTU或者LCU。CTU或者LCU再往下,可以继续进行更加精细的划分,得到至少一个基本编码的单元,称之为CU。每个CU是一个编码环节中最基本的元素。以下描述的是对每一个CU可能采用的各种编码方式。
2)预测编码(Predictive Coding):包括了帧内预测和帧间预测等方式,原始视频信号经过选定的已重建视频信号的预测后,得到残差视频信号。编码端需要为当前CU决定在众多可能的预测编码模式中,选择最适合的一种,并告知解码端。
a.帧内预测:预测的信号来自于同一图像内已经编码重建过的区域。
其中,帧内预测的基本思想就是利用相邻像素的相关性去除空间冗余。在视频编码中,相邻像素指的就是当前CU周围的已编码CU的重建(reconstructed)像素。
b.帧间预测:预测的信号来自已经编码过的,且不同于当前图像的其他图像(称之为参考图像)。
3)变换编码及量化(Transform&Quantization):残差视频信号经过DFT(DiscreteFourier Transform,离散傅里叶变换),DCT(Discrete Cosine Transform,离散余弦变换)等变换操作,将残差视频信号转换到变换域中,称之为变换系数。在变换域中的残差视频信号,进一步的进行有损的量化操作,丢失掉一定的信息,使得量化后的信号有利于压缩表达。
在一些视频编码标准中,可能有多于一种变换方式可以选择,因此,编码端也需要为待编码的当前CU选择其中的一种变换,并告知解码端。
其中,量化的精细程度通常由量化参数(Quantization Parameters,QP)来决定,QP取值较大时,表示更大取值范围的变换系数将被量化为同一个输出,因此通常会带来更大的失真及较低的码率;相反,QP取值较小时,表示较小取值范围的变换系数将被量化为同一个输出,因此通常会带来较小的失真,同时对应较高的码率。
4)熵编码(Entropy Coding)或统计编码:量化后的变换域信号,将根据各个值出现的频率,进行统计压缩编码,最后输出二值化(0或者1)的压缩码流(bitstream)。
同时,编码产生其他信息,例如选择的编码模式(coding modes),运动矢量等,也需要进行熵编码以降低码率。
其中,统计编码是一种无损编码方式,可以有效的降低表达同样的信号所需要的码率。常见的统计编码方式有变长编码(Variable Length Coding,VLC)或者基于上下文的二值化算术编码(Content Adaptive Binary Arithmetic Coding,CABAC)。
5)环路滤波(Loop Filtering):已经编码过的图像,经过反量化,反变换及预测补偿的操作(上述步骤2)~4)的反向操作),可获得重建的解码图像(decoded picture)。重建的解码图像与原始的输入图像相比,由于存在量化的影响,部分信息与原始的输入图像有所不同,产生失真(Distortion)。对重建的解码图像进行滤波操作,例如去块效应滤波(deblocking),SAO(Sample Adaptive Offset,样点自适应补偿)或者ALF(Adaptive LoopFilter,自适应环路滤波)等滤波器,可以有效的降低量化所产生的失真程度。由于这些经过滤波后的重建的解码图像,将做为后续编码图像的参考,用于对将来的信号进行预测,所以上述的滤波操作也称为环路滤波,及在编码环路内的滤波操作。
图1展示了一个视频编码器的基本流程图。图1中以第k个CU(标记为sk[x,y])为例进行举例说明。其中,k为大于或等于1且小于或等于输入的当前图像中的CU的数量的正整数,sk[x,y]表示第k个CU中坐标为[x,y]的像素点,x表示像素点的横坐标,y表示像素点的纵坐标。sk[x,y]经过运动补偿或者帧内预测等中的一种较优处理后获得预测信号
Figure BDA0002524383000000071
sk[x,y]与
Figure BDA0002524383000000072
相减得到残差信号uk[x,y],然后对该残差信号uk[x,y]进行变换和量化,量化输出的数据有两个不同的去处:一个是送给熵编码器进行熵编码,编码后的码流输出到一个缓冲器(buffer)中保存,等待传送出去;另一个应用是进行反量化和反变换后,得到信号u'k[x,y]。将信号u'k[x,y]与
Figure BDA0002524383000000073
相加得到新的预测信号s* k[x,y],并将s* k[x,y]送至当前图像的缓冲器中保存。s* k[x,y]经过帧内-图像预测获得f(s* k[x,y])。s* k[x,y]经过环路滤波后获得s'k[x,y],并将s'k[x,y]送至解码图像缓冲器中保存,以用于生成重建视频。s'k[x,y]经过运动-补偿预测后获得s'r[x+mx,y+my],s'r[x+mx,y+my]表示参考块,mx和my分别表示运动矢量的水平和竖直分量。
一些视频编码标准,如HEVC,VVC,AVS3,均采用基于块的混合编码框架。它们将原始的视频数据分成一系列的编码块,结合预测、变换和熵编码等视频编码方法,实现视频数据的压缩。其中,运动补偿是视频编码常用的一类预测方法,运动补偿基于视频内容在时域或空域的冗余特性,从已编码的区域导出当前编码块的预测值。这类预测方法包括:帧间预测、帧内块复制预测、帧内串复制预测等。在具体的编码实现中,可能单独或组合使用这些预测方法。对于使用了这些预测方法的编码块,通常需要在码流中显式或隐式的编码至少一个二维的位移矢量,指示当前块(或当前块的同位块)相对它的至少一个参考块的位移。
其中,在不同的预测模式及不同的实现下,位移矢量可能有不同的名称,本公开实施例中统一按照以下方式进行描述:1)帧间预测中的位移矢量称为运动矢量(MV);2)帧内块复制中的位移矢量称为块矢量或者块位移矢量(BV);3)帧内串复制中的位移矢量称为串矢量(String Vector,简称SV)。
以下先对帧间预测和帧内块复制预测中相关的技术进行介绍。
图2示意性示出了相关技术中的帧间预测的示意图。
如图2所示,帧间预测利用视频时间域的相关性,使用邻近已编码图像像素预测当前图像的像素,以达到有效去除视频时域冗余的目的,能够有效节省编码残差数据的比特。其中,P为当前帧,Pr为参考帧,B为当前待编码块,Br是B的参考块。B’与B在图像中的坐标位置相同。
假设Br坐标为(xr,yr),B’坐标为(x,y)。当前待编码块B与其参考块Br之间的位移,称为运动向量(MV),即:
MV=(xr-x,yr-y) (1)
考虑到时域或空域邻近块具有较强的相关性,可以采用MV预测技术进一步减少编码MV所需要的比特。在H.265/HEVC中,帧间预测包含Merge和AMVP两种MV预测技术。
其中,Merge模式会为当前PU建立一个MV候选列表,其中存在5个候选MV(及其对应的参考图像)。遍历这5个候选MV,选取率失真代价最小的作为最优MV。若编解码器依照相同的方式建立MV候选列表,则编码器只需要传输最优MV在MV候选列表中的索引即可。
需要注意的是,HEVC的MV预测技术还有一种skip(跳过)模式,是merge模式的一种特例。在merge模式找到最优MV后,如果当前待编码块和参考块基本一样,那么不需要传输残差数据,只需要传送MV的索引和一个skip flag(指示编码是否是skip模式的标志)。
其中,Merge模式建立的MV候选列表中包含了空域和时域两种情形。
其中,空域最多提供4个候选MV,它的建立如图3所示。当前块空域上的MV候选列表按照A1->B1->B0->A0->B2的顺序建立,其中B2为替补,即当A1,B1,B0,A0中有至少一个不存在时,则需要使用B2的运动信息。即MV候选列表的大小为5,但HEVC中至多使用其中4个(即使五个都存在),并且当其中某一个不可用时,顺序用下一个。
其中,类比空域,空域用相邻块,则时域用相邻帧的同位(对应位置)PU的MV来推测当前位置的MV。时域最多只提供1个候选MV,它的建立如图4所示。帧间预测的图像都要有参考图像,像B帧参考它之前的图像。当前图像叫cur,当前图像的参考图像叫cur_ref,当前图像的同位图像叫col,同位图像的参考图像叫col_ref。假设同位图像col与其参考图像col_ref之间的距离为tb,从当前图像cur与其参考图像cur_ref之间的距离为td,具体实现中,tb可以为同位图像与其参考图像的序号(picture order count,POC)的差值,td可以为当前图像与其参考图像的序号(picture order count,POC)的差值,可以由同位PU的MV按下式伸缩得到:
curMV=td*colMV/tb (2)
其中,curMV和colMV分别表示当前PU和同位PU的MV,这样就能由col(同位)图像推导出当前图像的MV。若同位块上D0位置PU不可用,则用D1位置的同位PU进行替换。
其中,Merge模式建立的MV候选列表中包含了上述空域和时域两种情形,对于BSlice,还包含组合列表的方式。对于B帧,就是需要参考前向帧MV又需要后向帧MV的帧,它有两个MV列表,list0,list。因此,对于B Slice中的PU,由于存在两个MV,其MV候选列表也需要提供两个MVP。HEVC通过将MV候选列表中的前4个候选MV进行两两组合,产生了用于BSlice的组合列表。
上文中提到的merge模式下直接使用MVP作为MV。AMVP模式,类似merge模式,利用空域和时域邻近块的MV相关性,先为当前PU建立候选预测MV列表。AMVP可以利用空间、时间上运动向量的相关性,分别建立空域候选列表以及时域候选列表,再从候选列表中选取最终的MVP。与Merge模式不同,AMVP模式下从候选预测MV列表中选择最有的预测MV即MVP,与当前待编码块通过运动搜索得到的最优MV(即真正的MV)进行差分编码,即编码MVD=MV-MVP。解码端通过建立相同的列表,仅需要MVD与MVP在该列表中的序号,即可计算当前解码块的MV。AMVP候选预测MV列表也包含空域和时域两种情形,不同的是AMVP列表长度仅为2。
如上所述,在HEVC的AMVP模式中,需要对MVD进行编码。在HEVC中,MVD的分辨率由slice_header(片头或者条带头或者切片数据头)中的use_integer_mv_flag控制,当该标志的值为0,MVD以1/4(亮度)像素分辨率进行编码;当该标志的值为1,MVD采用整(亮度)像素分辨率进行编码。
VVC中使用了一种自适应运动矢量精度(Adaptive motion vector resolution,简称AMVR)的方法。该方法允许每个CU自适应的选择编码MVD的分辨率。在普通的AMVP模式中,可选的分辨率包括1/4,1/2,1和4像素。对于具有至少一个非零MVD分量的CU,首先编码一个标志指示是否将四分之一亮度采样MVD精度用于CU。如果该标志为0,则当前CU的MVD采用1/4像素分辨率进行编码。否则,需要编码第二个标志,以指示CU使用了1/2像素分辨率或其他MVD分辨率。否则,编码第三个标志以指示对于CU是否使用1像素分辨率或4像素分辨率。在Affine AMVP模式中,可选的分辨率包括1/16像素,1/4(亮度)像素,1像素。
屏幕图像即由电脑、手机、电视等电子设备产生的图像,主要包含两类内容:一类是计算机生成的非连续色调的内容,包含大量小而尖的线条形状,如文字、图标、按钮和网格等;另一类是摄像机拍摄的包含大量连续色调的内容,例如电影、电视片段、自然图像视频等。相关技术中的基于块的混合编码方式的视频编码标准例如AVS、HEVC,对于包含大量连续内容的自然图像和视频有很高的压缩比,但是对于包含非连续色调内容的屏幕图像压缩效果并不好。
伴随着云计算、移动通信技术和无线显示技术的快速发展,如何在低码率下使屏幕图像在各类电子终端设备上高质量显示,是SCC需要解决的问题。为提高屏幕图像编码性能,开发HEVC标准的SCC版本,并已经采用了一些有利于屏幕图像编码的工具,例如IBC(intra block copy,帧内块复制)。
IBC是HEVC屏幕内容编码(SCC)扩展中采纳的一种帧内编码工具,它显著的提升了屏幕内容的编码效率。在AVS3,VVC中,也采纳了IBC技术以提升屏幕内容编码的性能。IBC利用屏幕内容视频在空间的相关性,使用当前图像上已编码图像像素预测当前待编码块(图5中称之为当前块)的像素,能够有效节省编码像素所需的比特。
如图5所示,在IBC中当前块与其参考块之间的位移,称为块矢量(BV)。VVC采用了类似于帧间预测中的AMVP模式对BV进行预测,并允许使用1或4像素分辨率编码BVD。
帧内串复制技术(Intra String Copy,ISC)/串预测技术较好地提高了屏幕图像编码效果,其将二维图像逐个编码单元CU一维化。ISC按照某种扫描顺序(光栅扫描、往返扫描和Zig-Zag扫描等)将一个编码块分成一系列像素串或未匹配像素。类似于IBC,每个串在当前图像的已编码区域中寻找相同形状的参考串,导出当前串的预测值,通过编码当前串的像素值与预测值之间残差,代替直接编码像素值,能够有效节省比特。
图6给出了帧内串复制的示意图,深色的区域为已编码区域,白色的28个像素为串1,浅色的35个像素为串2,黑色的1个像素表示未匹配像素。如果一个像素在可参考的区域中没有找到对应的参考,即称之为未匹配像素,也称为孤立点,未匹配像素的像素值被直接编码,而不是通过参考串的预测值导出。
ISC技术需要编码当前编码块中各个串对应的串矢量(String Vector,SV)、串长度以及是否有匹配的参考串的标志等。其中,串矢量(SV)表示待编码串(当前串,即当前待编码串)到其参考串的位移。串长度表示该待编码串所包含的像素数量。
目前的ISC方案在对串矢量编码时,默认采用整像素精度,导致串矢量的编码成本较高。本公开实施例提出了一种视频编码方法,允许使用不同的分辨率对串矢量进行编码,提高了串矢量的编码效率。本公开实施例还提出了一种视频解码方法,对采用不同的分辨率对串矢量进行编码的码流进行解码时,可以提高串矢量的解码效率。
本公开实施例提供的方法可以应用到使用了ISC的视频编解码器或视频压缩的产品中,可以适用于有损数据压缩的编码和解码,也可以适用于无损数据压缩的编码和解码。其中,编码和解码过程中所涉及到的数据是指以下例举之一或者其组合:
1)一维数据;
2)二维数据;
3)多维数据;
4)图形;
5)图像;
6)图像的序列;
7)视频;
8)三维场景;
9)持续变化的三维场景的序列;
10)虚拟现实的场景;
11)持续变化的虚拟现实的场景的序列;
12)像素形式的图像;
13)图像的变换域数据;
14)二维或二维以上字节的集合;
15)二维或二维以上比特的集合;
16)像素的集合;
17)三分量像素(Y,U,V)的集合;
18)三分量像素(Y,Cb,Cr)的集合;
19)三分量像素(Y,Cg,Co)的集合;
20)三分量像素(R,G,B)的集合;
21)四分量像素(C,M,Y,K)的集合;
22)四分量像素(R,G,B,A)的集合;
23)四分量像素(Y,U,V,A)的集合;
24)四分量像素(Y,Cb,Cr,A)的集合;
25)四分量像素(Y,Cg,Co,A)的集合。
当数据为上述列举出的图像、或者图像的序列、或者视频时,编码块是图像的一个编码区域,应当至少包括以下一种:一组图像、预定数目的若干幅图像、一幅图像、一帧图像、一场图像、图像的子图像、条带、宏块、最大编码单元LCU、编码树单元CTU、编码单元CU。
图7示意性示出了根据本公开的一实施例的视频解码方法的示意图。图7实施例以解码端为例进行介绍。图7实施例中,使用了一种称之为自适应串矢量精度/分辨率(Adaptive String Vector Resolution,ASVR)的方法对串矢量进行解码或者编码,即允许采用不同的分辨率对串矢量进行解码或者编码。如图7所示,本公开实施例提供的方法可以包括以下步骤。
在步骤S710中,获取待解码码流,所述待解码码流包括当前解码块,所述当前解码块采用帧内串复制模式,所述当前解码块包括当前串。
本公开实施例,在编码端,对编码块进行编码时,编码块是子图像,至少包括以下之一:CU、PU、TU,在下面的举例说明中,均以CU为例进行举例说明,但本公开并不限定于此。对编码块中的像素采用帧内串复制模式进行编码,用SV和/或串长度表示对应参考串通过预定运算获得当前像素的预测值,即产生ISC的编码信息压缩数据码流,并将ISC的编码信息压缩数据码流传输至解码端,作为解码端的待解码码流。
解码端解析上述待解码码流,获得表示编码块采用ISC的信息,对当前解码块(当前待解码的块)内的像素采用ISC进行解码。其中,当前串是当前解码块中当前待解码的串。
需要说明的是,本公开实施例中,在解码端,当前CU对应的是当前解码块;在编码端,当前CU对应的是当前编码块。
在步骤S720中,确定所述当前串的至少两个候选串矢量编码分辨率。
在示例性实施例中,所述至少两个候选串矢量编码分辨率为以下其中至少两项:1个整数样本,2个整数样本,4个整数样本,1/2个样本,1/4个样本。但本公开并不限定于此。在视频编码标准里,“像素”也可以使用“样本”这个表述。
本公开实施例中,允许使用以下2种或更多种分辨率的组合对串矢量进行编码:
a)串矢量的基本单位是1个整数样本;
b)串矢量的基本单位是2个整数样本;
c)串矢量的基本单位是4个整数样本;
d)串矢量的基本单位是1/2个样本;
e)串矢量的基本单位是1/4个样本。
在编码端,可以根据编码器的实现、性能和复杂度等各个因素从中选择相应的分辨率组合作为所述当前串的至少两个候选串矢量编码分辨率。
需要说明的是,本公开实施例中,分辨率越大或者越高,基本单位越小,对应的精度越高,表示像素/样本数量越多。
本公开实施例中,可以考虑编码器的实现选择当前串的至少两个候选串矢量编码分辨率。例如:在编码器中,如果允许ISC对参考帧进行插值操作,则SV可选的分辨率可以包括1/4个样本,1/2个样本,1个整数样本和4个整数样本;如果不允许ISC进行插值操作,则SV只能为1个整数样本,2个整数样本,4个整数样本等整像素分辨率。
本公开实施例中,也可以基于编码性能和复杂度的考虑选择当前串的至少两个候选串矢量编码分辨率。例如:方案1对当前串采用1个整数样本、2个整数样本和4个整数样本的组合,方案2对当前串采用1个整数样本和4个整数样本的组合,方案1比方案2具有更好的压缩性能,但复杂度更高。在编码端可以基于压缩性能和复杂度的权衡考虑选择哪一种组合。
在步骤S730中,解码所述待解码码流,获得所述当前串的串矢量编码信息。
在步骤S740中,根据所述串矢量编码信息,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率。
在示例性实施例中,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,可以包括:若所述当前串的串矢量编码信息的各分量的值均小于或等于第一阈值,则确定所述当前串的目标串矢量编码分辨率为所述至少两个候选串矢量编码分辨率中的任意一个预设值。其中所述第一阈值为大于或等于0的整数。
在示例性实施例中,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量,可以包括:利用所述预设值对所述当前串的串矢量编码信息进行缩放,获得所述当前串的目标串矢量。
在示例性实施例中,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,还可以包括:若所述当前串的串矢量编码信息的至少一个分量的值大于所述第一阈值,则解码所述待解码码流,获得串矢量编码分辨率索引;根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
在示例性实施例中,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,可以包括:解码所述待解码码流,获得串矢量编码分辨率索引;根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
在示例性实施例中,所述待解码码流对应的视频序列的序列头可以包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述视频序列中的串的目标串矢量编码分辨率;或者所述当前解码块对应的当前图像的图像头可以包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前图像中的串的目标串矢量编码分辨率;或者所述当前解码块对应的当前条带的片头可以包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前条带中的串的目标串矢量编码分辨率。
在示例性实施例中,所述待解码码流可以包括所述当前解码块对应的最大编码单元及其串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前解码块对应的最大编码单元中的串的目标串矢量编码分辨率;或者所述待解码码流可以包括所述当前解码块的串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前解码块中的串的目标串矢量编码分辨率;或者所述待解码码流可以包括所述当前串的串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前串的目标串矢量编码分辨率。
本公开实施例中,从待解码码流中解码得到串矢量分辨率索引asvr_index,指示当前串的SV的编码分辨率即目标串矢量编码分辨率,并确认对应的目标串矢量移位信息asvr_shift。有以下可选的方式:
a)在序列头解码asvr_index,表示该序列头对应的视频序列中所有的SV均根据asvr_index进行解码。
b)在图像头解码asvr_index,表示该图像头对应的当前图像中所有的SV均根据asvr_index进行解码。
c)在片头解码asvr_index,表示该片头对应的当前条带中所有的SV均根据asvr_index进行解码。
d)为每个最大编码单元(LCU)解码一个asvr_index,表示对应LCU中所有的SV均根据asvr_index进行解码。
本公开实施例中,对编码端如何确定asvr_index不作限制,编码端可以根据编码性能、复杂度的考虑设置asvr_index。例如:1)可以直接设置为某个常用值(如1个整数样本或者4个整数样本);2)通过分析选择,如分别使用不同asvr_index对视频序列、图像、片/条带、多个或一个LCU等范围的区域进行分析,在码流中发送性能最好的asvr_index。
e)如果当前CU的预测模式为串预测,则为当前CU解码asvr_index,表示该当前CU中所有SV(或SV的预测残差SVD)均根据asvr_index进行解码。
本公开实施例中,编码端可以通过分析选择使用不同asvr_index对当前CU进行编码分析,在码流中发送性能最好的asvr_index。分析的方法如:1)分别使用不同asvr_index对当前CU进行编码,权衡当前CU的失真和码率,编码其中最好的asvr_index。2)假如SV都为X的整数倍(X为能被整除的分辨率中最大的分辨率),将目标串矢量编码分辨率设置为X。
f)如果当前CU的预测模式为串预测,则为每个串解码一个asvr_index,表示该串中的SV(或SV的预测残差SVD)根据asvr_index进行解码。
本公开实施例中,编码端可以通过分析选择使用不同asvr_index对串进行编码分析,在码流中发送性能最好的asvr_index。
g),基于上述步骤f),先从待解码码流中解码获得当前串的串矢量编码信息(例如,可以包括已编码串矢量SV0或者第一已编码串矢量差SVD0),且它们的各分量例如水平和竖直分量的值都小于或等于第一阈值T1(T1为大于或等于0的整数),此时考虑当前串的SV的数值较小,使用ASVR能够节省的比特数较少,可直接跳过ASVR,即不采用ASVR方法对当前串的串矢量进行编解码。则可以隐式的采用预设的分辨率(预设值)对SV0或SVD0进行缩放,而不需要解码asvr_index。
本公开实施例中,根据asvr_index进行解码是指,根据asvr_index确定当前串的目标串矢量编码分辨率,根据当前串的目标串矢量编码分辨率缩放解码得到的SV0或者SVD0,以用于获取当前串的正确的SV。
其中,这里以解码获得当前串的SV0为例,可以采用以下两种解码流程达到根据asvr_index进行解码的效果:
第一种方式是,第一步解码待解码码流获得当前串的SV0;第二步解码asvr_index,确定当前串的目标串矢量编码分辨率;第三步根据asvr_index确定的当前串的目标串矢量编码分辨率对SV0缩放得到当前串的SV,根据当前串的SV获取当前串的预测值。
第二种方式是,第一步解码asvr_index,确定当前串的目标串矢量编码分辨率;第二步解码待解码码流获得当前串的SV0;第三步根据asvr_index确定的当前串的目标串矢量编码分辨率对SV0缩放得到当前串的SV,根据当前串的SV获取当前串的预测值。
上述步骤f)可以采取以上两种方式中的任一种得到当前串的SV,而上述步骤g)则只能使用第一种方式,即先解码得到SV0,然后再判断SV0是否满足条件(SV0的水平和竖直分量值都小于或等于第一阈值T1),如果满足条件,则不需要解码asvr_index,直接设置当前串的目标串矢量编码分辨率为预设值。这里的“隐式”表示的是“不需要解码asvr_index”。
在示例性实施例中,在已使用基于上下文的自适应二进制算术编码对所述串矢量编码分辨率索引和帧内块复制模式中的块矢量编码分辨率索引编码的情况下,所述串矢量编码分辨率索引与所述块矢量编码分辨率索引共用上下文模型。
本公开实施例中,asvr_index可以和IBC模式中的abvr_index(块矢量编码分辨率索引)共用一个语法元素。可选择的,还可以共用同样的算术编码上下文模型。ASVR和ABVR(Adaptive Block Vector Resolution,自适应块矢量精度)都是对位移矢量编码分辨率的控制,其数值具有类似的分布,通过共用同样的熵编码上下文模型在造成可忽略影响的情况下,可以节省一个熵编码上下文模型,降低复杂度。熵编码上下文模型与前文介绍的熵编码环节有关。在编码端,对asvr_index的编码首先是将asvr_index二值化,然后使用基于上下文的自适应二进制算术编码的方法对asvr_index编码。这里上下文表示二进制值的概率模型。
在示例性实施例中,确定所述当前串的至少两个候选串矢量编码分辨率,包括:获得所述当前解码块的尺寸;根据所述当前解码块的尺寸,确定所述当前串的至少两个候选串矢量编码分辨率。
在示例性实施例中,所述当前解码块的尺寸在预设尺寸范围内。所述预设尺寸范围为大于或等于1的正整数。例如,可以限制当前CU的宽或高小于或等于预定阈值(例如16)。再例如,也可以限制当前CU的宽*高小于或等于预定面积(例如16*16)。
可选的,基于上述提供的可选的串矢量的基本单位,可以对于不同尺寸的CU选择不同的串矢量编码分辨率组合作为串的候选串矢量编码分辨率;或者,仅在预设尺寸范围内才应用本公开实施例提供的ASVR方法。这是考虑到本公开实施例提供的ASVR方法可能会损失SV精度,对于小块而言,ASVR编码对编码块的SV精度影响较小,对于大块的影响较大。
本公开实施例中,基于上述步骤e)或f),如果当前CU的大小大于或等于预设的尺寸阈值,默认不使用ASVR,不需要解码asvr_index。尺寸阈值取值可以为正整数,例如可判断当前CU的宽*高是否大于或等于4*4,4*8,8*8,32*32等中的任意一个,具体可以考虑性能及复杂度选取尺寸阈值。这是因为出现大的编码块的时候,大的编码块周围的区域比较平滑,容易在附近找到参考串,即具有较小的SV,此时ASVR带来的性能可能较小。
在步骤S750中,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量。
在示例性实施例中,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量,可以包括:若所述当前串的串矢量编码信息包括所述当前串的已编码串矢量,则根据所述目标串矢量移位信息左移所述已编码串矢量的各分量,获得所述当前串的目标串矢量。
在示例性实施例中,所述方法还可以包括:将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
本公开实施例中,如果当前串的SV的编码没有使用串矢量预测技术,即从待解码码流中解码得到的是当前串的已编码串矢量,记为SV0,则可以采用以下方式导出当前串的SV:
a)对当前串的SV0的各分量左移asvr_shift位,得到当前串的SV的值;
b)可选的,可以根据以下公式(1)将当前串的SV各分量的值裁剪(clip)到预设的区间[i,j]:
Figure BDA0002524383000000181
通过裁剪使得当前串的SV的各分量的值处在有效范围之中。i,j均为大于或等于1的正整数,j大于i,i和j可以根据有效范围设置,本公开对此不做限定。
在示例性实施例中,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量,可以包括:若所述当前串的串矢量编码信息包括所述当前串的第一已编码串矢量差,获得所述当前串的第一预测串矢量;根据所述目标串矢量移位信息左移所述第一已编码串矢量差的各分量,获得所述当前串的第二已编码串矢量差;对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,所述第二预测串矢量的分辨率等于所述目标串矢量编码分辨率;根据所述目标串矢量移位信息左移所述第二预测串矢量的各分量,获得所述当前串的第三预测串矢量;根据所述第三预测串矢量和所述第二已编码串矢量差,获得所述当前串的目标串矢量。
在示例性实施例中,对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,可以包括:确定所述第一预测串矢量的分辨率;若所述第一预测串矢量的分辨率大于所述目标串矢量编码分辨率,则根据所述目标串矢量编码分辨率和所述第一预测串矢量的分辨率,获得第一移位信息;根据所述第一移位信息右移所述第一预测串矢量的各分量,获得所述第二预测串矢量。
在示例性实施例中,对所述第一预测串矢量的各分量右移所述第一移位信息时,可以使用四舍五入、向上取整或者向下取整中的任意一种取整方式。
在示例性实施例中,对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,可以包括:确定所述第一预测串矢量的分辨率;若所述第一预测串矢量的分辨率小于或等于所述目标串矢量编码分辨率,则根据所述目标串矢量编码分辨率和所述第一预测串矢量的分辨率,获得第二移位信息;根据所述第二移位信息左移所述第一预测串矢量的各分量,获得所述第二预测串矢量。
在示例性实施例中,在根据所述第三预测串矢量和所述第二已编码串矢量差,获得所述当前串的目标串矢量之前,所述方法还可以包括:将所述第三预测串矢量各分量的值裁剪到预设区间中。
在示例性实施例中,所述方法还可以包括:将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
本公开实施例中,如果采用了类似AMVP的方式编码串矢量,则从待解码码流中解码得到的是第一已编码串矢量差,记为SVD0,此时可以根据SV预测方法获得当前串的第一预测串矢量SVP0。可以采用以下方式导出当前串的SV:
一)对SVD0各分量左移asvr_shift位,得到当前串的第二已编码串矢量差SVD1的值;
二)对SVP0进行转换得到第二预测串矢量SVP1。可选的,SVP1可以由asvr_index指示的精度进行量化。例如,asvr_index指示当前串的SV是4个整数样本精度,则SVP1的值将被量化到4个整数样本精度,即SVP1的分辨率与当前串的目标串矢量编码分辨率SVR相等。以下给出具体的计算流程:
i.如果SVP0的基本单位小于或等于SVR(表示SVP0的分辨率(记为SVP0_R)大于SVR,即SVP0精度较高),令第一移位信息N1=LOG2(SVR/SVP0_R)。对SVP0各分量的值右移N1位,得到转换后的SVP1。
需要注意的是,当SVP0的分辨率与SVR相等时,N1等于0,该操作等价于SVP1=SVP0;
其中,对SVP0右移时使用的取整方法可为四舍五入、向上取整、向下取整中的任意一种。
ii.如果SVP0的基本单位大于SVR(SVP0精度较低),令第二移位信息N2=LOG2(SVP0_R/SVR)。对SVP0各分量的值左移N2位,得到转换后的SVP1。
iii.对SVP1各分量的值左移asvr_shift位,得到当前串的第三预测串矢量SVP2的值:
可选的,可以根据上述公式(1)将SVP2各分量的值裁剪(clip)到预设区间中。
三)通过计算SVP2与SVD1的和得到SV,即SV=SVP2+SVD1。
可选的,可以根据上述公式(1)将SV各分量的值裁剪(clip)到预设区间中。
在示例性实施例中,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量,可以包括:若所述当前串的串矢量编码信息包括所述当前串的第一已编码串矢量差,获得所述当前串的第一预测串矢量;对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,所述第二预测串矢量的分辨率等于所述目标串矢量编码分辨率;根据所述第二预测串矢量与所述第一已编码串矢量差,获得所述当前串的第一串矢量;根据所述目标串矢量移位信息左移所述第一串矢量的各分量,获得所述当前串的目标串矢量。
在示例性实施例中,所述方法还可以包括:将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
本公开实施例中,也可以先对当前串的SVP0进行右移操作得到SVP1,然后计算SVP1与SVD0的和得到当前串的第一串矢量SV0的值,再对SV0进行左移asvr_shift位得到SV,即SV=(SVP1+SVD0)<<avsr_shift。可选的,根据上述公式(1)将SV各分量的值裁剪(clip)到预设区间中。
在示例性实施例中,所述当前串的目标串矢量编码分辨率小于预定值。所述预定值可以根据编码性能和复杂度进行设定,本公开对此不做限定。
可选的,在某些串矢量编码分辨率下,禁用串矢量预测方法。例如,假设当前串的候选串矢量编码分辨率为1个整数样本和4个整数样本,在当前串的目标串矢量编码分辨率SVR=4时,禁用串矢量预测。这里考虑到应用串矢量预测获得串的SVP后,需要编码的变量由SV变为SVD,数值变小了,较大地SVR能带来的效果有限。
以下给出一个具体的实例进行举例说明:
1)假设允许的候选串矢量编码分辨率可为以下2种或更多种分辨率的组合:
a)1个整数样本;
b)4个整数样本。
2)解码串矢量分辨率索引asvr_index,指示串矢量的目标串矢量编码分辨率,可以采用以下方式:
a)如果当前CU的预测模式为串预测,则为该当前CU中每个串解码一个asvr_index,由asvr_index确认每个串对应的目标串矢量编码分辨率。假设解码器中串矢量均以1/4个样本存储(称为中间串矢量编码分辨率,解码得到了一个SV,首先需要根据SV的分辨率将其转换为1/4个样本),下表1给出目标串矢量编码分辨率与asvr_index和asvr_shift的关系:
表1
SVR 1 4
asvr_index 0 1
asvr_shift 2 4
3)设解码器中当前串的目标串矢量为SV,第一预测串矢量为SVP0,目标串矢量与第一预测串矢量的残差为第一已编码串矢量差SVD0。假设SVP0的分辨率SVP0_R为1/4个样本(与中间串矢量分辨率相等),目标串矢量编码分辨率SVR为4个整数样本,对应的asvr_shift=4。
a)从待解码码流中解码得到SVD0(假设编码器采用了类似AMVP的方式对SV进行编码),可以按以下方式导出SV:
i.首先对SVP0进行右移,这里假设以四舍五入的方式进行取整,即:
SVP1_x=Rounding(SVP0_x,asvr_shift) (2)
SVP1_y=Rounding(SVP0_y,asvr_shift) (3)
其中:
Figure BDA0002524383000000221
上述公式(4)中,Sign是符号函数,当x>0时,Sign(x)=1;当x<0时,Sign(x)=-1;x=0时,Sign(x)=0。Abs(x)是绝对值函数,即求x的绝对值。“<<”运算符表示左移,用来将一个数的各二进制位全部左移相应位,高位舍弃,低位补0。“>>”运算符表示右移,将一个数的各二进制位右移相应位,移到右端的低位被舍弃,对于无符号数,高位补0。
ii.对SVP1进行左移得到SVP2:
SVP2_x=SVP1_x<<asvr_shift (5)
SVP2_y=SVP1_y<<asvr_shift (6)
其中,SVP1_x表示SVP1的水平分量的值,SVP1_y表示SVP1的竖直分量的值;SVP2_x表示SVP2的水平分量的值,SVP2_y表示SVP2的竖直分量的值。
b)从待解码码流中解码得到SVD0,按以下方式计算SVD1:
SVD1_x=SVD0_x<<asvr_shift (7)
SVD1_y=SVD0_y<<asvr_shift (8)
其中,SVD0_x表示SVD0的水平分量的值,SVD0_y表示SVD0的竖直分量的值;SVD1_x表示SVD1的水平分量的值,SVD1_y表示SVD1的竖直分量的值。
c)计算SV:
SV_x=SVP2_x+SVD1_x (9)
SV_y=SVP2_y+SVD1_y (10)
其中,SV_x表示SV的水平分量的值,SV_y表示SV的竖直分量的值。
d)对SV的值进行Clip操作:
SV_x=Clip3(-32768,32767,SV_x) (11)
SV_y=Clip3(-32768,32767,SV_y) (12)
其中,假设上述公式(1)中的i=-32768,j=32767。
在示例性实施例中,所述方法还包括:存储所述当前串的目标串矢量。
在示例性实施例中,所述方法还包括:当所述目标串矢量编码分辨率小于或等于第二阈值时,存储所述当前串的目标串矢量。其中,所述第二阈值小于或等于所述至少两个候选串矢量编码分辨率中的最大值,且所述第二阈值为整数。
本公开实施例中,根据当前串的SV可以得到当前串的预测值,存储当前串的SV用于后续串的解码,有以下可选的方式:
A)仅当当前串的目标串矢量编码分辨率SVR小于或等于第二阈值T2时,才存储当前串的SV。其中,第二阈值T2为小于或等于最大允许的SV编码分辨率的整数,可以根据编码性能和复杂度来确定第二阈值T2的大小。这是考虑到SVR较大时,SV可能不准确。
B)存储所有SV。
在示例性实施例中,所述方法还包括:若所述当前串的目标串矢量使用串矢量预测方式导出,则为所述当前串建立串矢量候选列表;从所述待解码码流中解码所述当前串的串矢量索引;根据所述当前串的串矢量索引和所述串矢量候选列表,确定所述当前串的目标串矢量。
本公开实施例中,基于上述步骤f),如果当前串的SV由Merge或Skip等串矢量预测方式导出(将SVP(string vector predictor,预测串矢量)作为SV),默认不使用ASVR,不需要解码asvr_index。此时可以为当前串建立一个SV候选列表,从待解码码流中解码一个串矢量索引,指示SV候选列表中的哪个候选为当前串的SV。这种模式下仅解码一个串矢量索引,指示SV候选列表中的哪个候选为当前串的SV,不需要对SV(SVD)的值进行编码。
图8示意性示出了根据本公开的一实施例的视频解码方法的示意图。图8实施例以编码端为例进行介绍。如图8所示,本公开实施例提供的方法可以包括以下步骤。
在步骤S810中,获取当前编码块。
本公开实施例中,当前编码块可以是待编码的原始视频序列中的按顺序编码的当前图像中的子图像,至少包括以下之一:CU、PU、TU,在下面的举例说明中,均以CU为例进行举例说明,但本公开并不限定于此。这里假设当前编码块例如当前CU的最佳编码模式为ISC,则编码ISC对应的语法元素。
在步骤S820中,对所述当前编码块采用帧内串复制模式,将所述当前编码块分成串,所述串包括当前串。
按照某种扫描顺序对当前CU内的全部像素寻找匹配的参考串,这种扫描顺序可以是水平的或者垂直的,或者其他顺序。由于ISC是在一维字典(一维搜索缓存)里对当前CU内的像素寻找匹配的参考串,因此,必须在搜索之前,按照既定的扫描顺序,将当前CU的像素经过重排序(由二维格式转为一维格式)存入字典,字典里已经保存的历史像素数据,即已经编码的CU的重建像素,也已经过水平扫描顺序重排序。
其中,搜索缓存就是字典,在编码器/编码端里用于匹配的参考串搜索,在解码器中用于匹配的参考串重建,凡是已经编码的CU重建像素,都可以用来搜索当前CU的像素。
需要说明的是,上述例举的字典只是其中一种实现方式,本公开并不限定于此,例如还可以直接在当前已编码区域中找到与当前ISC块下一个待处理像素匹配的参考像素,然后根据扫描顺序依次计算下一个像素与参考像素的差值是否在预设阈值范围内,由此获得一个串。
在步骤S830中,确定所述当前串的至少两个候选串矢量编码分辨率。
在步骤S840中,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率。
在步骤S850中,根据所述当前串的目标串矢量编码分辨率编码所述当前串的目标串矢量,获得所述当前串的串矢量编码信息。
包含ISC的HEVC编码,按照CU自适应的方式,每个输入的CU经过帧间、帧内、IBC、ISC编码后,通过HEVC的率失真优化选择机制,选择率失真代价函数(Rate Distortioncost,RD cost)最小的编码模式,将编码结果放入码流。ISC编码流程可以为:1)以CU为单位,对CU内的像素,在搜索缓存内,寻找尽可能长的匹配的参考串。进行水平方向搜索,后进行竖直方向搜索,串的串长度L最小值为1,最大值为CU内像素总和。2)如果找到匹配的参考串,则保存串长度L和匹配位置P;如果在搜索范围内没有找到匹配的参考串,则保存当前像素,称为未匹配像素Pix;3)更新散列表,从下一个位置的像素继续搜索;4)整个CU搜索完成之后,对搜索的结果,即搜索顺序(水平或垂直)、(P,L)和Pix进行熵编码,根据RD cost进行HEVC模式选择。
对应的ISC解码流程:1)码流经过熵解码,得到搜索顺序以及(P,L)和Pix等语法元素。2)在重建缓存内,根据以上语法元素恢复当前CU。即如果有匹配的参考串,则根据匹配位置P,在重建缓存内找到相应位置,按照搜索顺序,依据串长度L复制相应像素到当前位置;如果没有匹配的参考串,则将解码得到的未匹配像素Pix直接填充到当前位置。
采用基于散列表的搜索,可以实现快速搜索,根据每个像素的YUV分量计算得到散列值,将像素在图像中的位置存入散列表,采用拉链开散列的方法处理散列冲突。搜索的时候,只需要根据当前像素的散列值从散列表中对应的链上得到搜索位置,进行尝试匹配,然后从链上得到下一个搜索位置,继续尝试匹配,直到找到最佳匹配,或者在限定的搜索次数内,没有找到匹配。
编码端与解码端是对应的,本公开实施例提供的视频编码方法的具体实现可以参照上述视频解码方法的实施例中的内容。
进一步的,本公开实施例还提供一种视频解码装置,所述装置可以包括:解码码流获取单元,可以用于获取待解码码流,所述待解码码流包括当前解码块,所述当前解码块采用帧内串复制模式,所述当前解码块包括当前串;候选分辨率确定单元,可以用于确定所述当前串的至少两个候选串矢量编码分辨率;码流解码单元,可以用于解码所述待解码码流,获得所述当前串的串矢量编码信息;目标分辨率确定单元,可以用于根据所述串矢量编码信息,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;串矢量获得单元,可以用于根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量。
在示例性实施例中,所述至少两个候选串矢量编码分辨率为以下其中至少两项:1个整数样本,2个整数样本,4个整数样本,1/2个样本,1/4个样本。
在示例性实施例中,目标分辨率确定单元可以包括:预设值确定单元,可以用于若所述当前串的串矢量编码信息的各分量的值均小于或等于第一阈值,则确定所述当前串的目标串矢量编码分辨率为所述至少两个候选串矢量编码分辨率中的任意一个预设值。其中所述第一阈值为大于或等于0的整数。
在示例性实施例中,串矢量获得单元可以包括:串矢量隐式缩放单元,可以用于利用所述预设值对所述当前串的串矢量编码信息进行缩放,获得所述当前串的目标串矢量。
在示例性实施例中,目标分辨率确定单元还可以包括:第一串矢量编码分辨率索引获得单元,可以用于若所述当前串的串矢量编码信息的至少一个分量的值大于所述第一阈值,则解码所述待解码码流,获得串矢量编码分辨率索引;第一分辨率移位信息获得单元,可以用于根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
在示例性实施例中,目标分辨率确定单元可以包括:第二串矢量编码分辨率索引获得单元,可以用于解码所述待解码码流,获得串矢量编码分辨率索引;第二分辨率移位信息获得单元,可以用于根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
在示例性实施例中,所述待解码码流对应的视频序列的序列头可以包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述视频序列中的串的目标串矢量编码分辨率;或者所述当前解码块对应的当前图像的图像头可以包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前图像中的串的目标串矢量编码分辨率;或者所述当前解码块对应的当前条带的片头可以包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前条带中的串的目标串矢量编码分辨率。
在示例性实施例中,所述待解码码流可以包括所述当前解码块对应的最大编码单元及其串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前解码块对应的最大编码单元中的串的目标串矢量编码分辨率;或者所述待解码码流可以包括所述当前解码块的串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前解码块中的串的目标串矢量编码分辨率;或者所述待解码码流可以包括所述当前串的串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前串的目标串矢量编码分辨率。
在示例性实施例中,在已使用基于上下文的自适应二进制算术编码对所述串矢量编码分辨率索引和帧内块复制模式中的块矢量编码分辨率索引编码的情况下,所述串矢量编码分辨率索引与所述块矢量编码分辨率索引共用上下文模型。
在示例性实施例中,串矢量获得单元可以包括:已编码串矢量缩放单元,可以用于若所述当前串的串矢量编码信息包括所述当前串的已编码串矢量,则根据所述目标串矢量移位信息左移所述已编码串矢量的各分量,获得所述当前串的目标串矢量。
在示例性实施例中,视频解码装置还可以包括:第一裁剪单元,可以用于将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
在示例性实施例中,串矢量获得单元可以包括:第一预测串矢量获得单元,可以用于若所述当前串的串矢量编码信息包括所述当前串的第一已编码串矢量差,获得所述当前串的第一预测串矢量;第二已编码串矢量差获得单元,可以用于根据所述目标串矢量移位信息左移所述第一已编码串矢量差的各分量,获得所述当前串的第二已编码串矢量差;第二预测串矢量获得单元,可以用于对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,所述第二预测串矢量的分辨率等于所述目标串矢量编码分辨率;第三预测串矢量获得单元,可以用于根据所述目标串矢量移位信息左移所述第二预测串矢量的各分量,获得所述当前串的第三预测串矢量;第一目标串矢量获得单元,可以用于根据所述第三预测串矢量和所述第二已编码串矢量差,获得所述当前串的目标串矢量。
在示例性实施例中,第二预测串矢量获得单元可以包括:第一预测串矢量分辨率确定单元,可以用于确定所述第一预测串矢量的分辨率;第一移位信息获得单元,可以用于若所述第一预测串矢量的分辨率大于所述目标串矢量编码分辨率,则根据所述目标串矢量编码分辨率和所述第一预测串矢量的分辨率,获得第一移位信息;第二预测串矢量确定单元,可以用于根据所述第一移位信息右移所述第一预测串矢量的各分量,获得所述第二预测串矢量。
在示例性实施例中,对所述第一预测串矢量的各分量右移所述第一移位信息时,可以使用四舍五入、向上取整或者向下取整中的任意一种取整方式。
在示例性实施例中,第二预测串矢量获得单元可以包括:第一预测串矢量分辨率获取单元,可以用于确定所述第一预测串矢量的分辨率;第二移位信息获得单元,可以用于若所述第一预测串矢量的分辨率小于或等于所述目标串矢量编码分辨率,则根据所述目标串矢量编码分辨率和所述第一预测串矢量的分辨率,获得第二移位信息;第二预测串矢量获取单元,可以用于根据所述第二移位信息左移所述第一预测串矢量的各分量,获得所述第二预测串矢量。
在示例性实施例中,视频解码装置还可以包括:第二裁剪单元,可以用于在根据所述第三预测串矢量和所述第二已编码串矢量差,获得所述当前串的目标串矢量之前,将所述第三预测串矢量各分量的值裁剪到预设区间中。
在示例性实施例中,视频解码装置还可以包括:第三裁剪单元,可以用于将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
在示例性实施例中,所述当前串的目标串矢量编码分辨率可以小于预定值。
在示例性实施例中,串矢量获得单元可以包括:第一预测串矢量获取单元,可以用于若所述当前串的串矢量编码信息包括所述当前串的第一已编码串矢量差,获得所述当前串的第一预测串矢量;第二预测串矢量获取单元,可以用于对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,所述第二预测串矢量的分辨率等于所述目标串矢量编码分辨率;第一串矢量获得单元,可以用于根据所述第二预测串矢量与所述第一已编码串矢量差,获得所述当前串的第一串矢量;第二目标串矢量获得单元,可以用于根据所述目标串矢量移位信息左移所述第一串矢量的各分量,获得所述当前串的目标串矢量。
在示例性实施例中,视频解码装置还可以包括:第四裁剪单元,可以用于将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
在示例性实施例中,所述当前串的目标串矢量编码分辨率小于预定值。
在示例性实施例中,候选分辨率确定单元可以包括:解码块尺寸获得单元,可以用于获得所述当前解码块的尺寸;候选分辨率选择单元,可以用于根据所述当前解码块的尺寸,确定所述当前串的至少两个候选串矢量编码分辨率。
在示例性实施例中,所述当前解码块的尺寸在预设尺寸范围内。
在示例性实施例中,视频解码装置还可以包括:第一串矢量存储单元,可以用于存储所述当前串的目标串矢量。
在示例性实施例中,视频解码装置还可以包括:第二串矢量存储单元,可以用于当所述目标串矢量编码分辨率小于或等于第二阈值时,存储所述当前串的目标串矢量。其中,所述第二阈值小于或等于所述至少两个候选串矢量编码分辨率中的最大值,且所述第二阈值为整数。
在示例性实施例中,视频解码装置还可以包括:串矢量候选列表建立单元,可以用于若所述当前串的目标串矢量使用串矢量预测方式导出,则为所述当前串建立串矢量候选列表;串矢量索引解码单元,可以用于从所述待解码码流中解码所述当前串的串矢量索引;目标串矢量直接确定单元,可以用于根据所述当前串的串矢量索引和所述串矢量候选列表,确定所述当前串的目标串矢量。
本公开实施例提供的视频解码装置中的各个单元的具体实现可以参照上述视频解码方法中的内容,在此不再赘述。
进一步的,本公开实施例还提供一种视频编码装置,所述装置可以包括:编码块获取单元,可以用于获取当前编码块;分串单元,可以用于对所述当前编码块采用帧内串复制模式,将所述当前编码块分成串,所述串包括当前串;串矢量分辨率选择范围确定单元,可以用于确定所述当前串的至少两个候选串矢量编码分辨率;目标串矢量分辨率确定单元,可以用于从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;串矢量编码单元,可以用于根据所述当前串的目标串矢量编码分辨率编码所述当前串的目标串矢量,获得所述当前串的串矢量编码信息。
本公开实施例提供的视频编码装置中的各个单元的具体实现可以参照上述视频解码方法和视频编码方法中的内容,在此不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中所述的视频解码方法。
本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中所述的视频编码方法。
本公开实施例提供了一种电子设备,包括:至少一个处理器;存储装置,配置为存储至少一个程序,当所述至少一个程序被所述至少一个处理器执行时,使得所述至少一个处理器实现如上述实施例中所述的视频解码方法。
本公开实施例提供了一种电子设备,包括:至少一个处理器;存储装置,配置为存储至少一个程序,当所述至少一个程序被所述至少一个处理器执行时,使得所述至少一个处理器实现如上述实施例中所述的视频编码方法。
图9示出了适于用来实现本公开实施例的电子设备的结构示意图。
需要说明的是,图9示出的电子设备900仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图9所示,电子设备900包括中央处理单元(CPU,Central Processing Unit)901,其可以根据存储在只读存储器(ROM,Read-Only Memory)902中的程序或者从储存部分908加载到随机访问存储器(RAM,Random Access Memory)903中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有系统操作所需的各种程序和数据。CPU901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(input/output,I/O)接口905也连接至总线904。
以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT,Cathode Ray Tube)、液晶显示器(LCD,Liquid Crystal Display)等以及扬声器等的输出部分907;包括硬盘等的储存部分908;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入储存部分908。
特别地,根据本公开的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(CPU)901执行时,执行本申请的方法和/或装置中限定的各种功能。
需要说明的是,本公开所示的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有至少一个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM(Erasable Programmable Read Only Memory,可擦除可编程只读存储器)或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF(Radio Frequency,射频)等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的方法、装置和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含至少一个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如下述实施例中所述的方法。例如,所述的电子设备可以实现如图7或图8所示的各个步骤。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (46)

1.一种视频解码方法,其特征在于,包括:
获取待解码码流,所述待解码码流包括当前解码块,所述当前解码块采用帧内串复制模式,所述当前解码块包括当前串;
确定所述当前串的至少两个候选串矢量编码分辨率;
解码所述待解码码流,获得所述当前串的串矢量编码信息;
根据所述串矢量编码信息,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;
根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量;
其中,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,包括:
解码所述待解码码流,获得串矢量编码分辨率索引,所述串矢量编码分辨率索引指示当前串的串矢量的编码分辨率即所述目标串矢量编码分辨率;
根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
2.根据权利要求1所述的视频解码方法,其特征在于,所述至少两个候选串矢量编码分辨率为以下其中至少两项:1个整数样本,2个整数样本,4个整数样本,1/2个样本,1/4个样本。
3.根据权利要求1所述的视频解码方法,其特征在于,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,包括:
若所述当前串的串矢量编码信息的各分量的值均小于或等于第一阈值,则确定所述当前串的目标串矢量编码分辨率为所述至少两个候选串矢量编码分辨率中的任意一个预设值;
其中所述第一阈值为大于或等于0的整数。
4.根据权利要求3所述的视频解码方法,其特征在于,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量,包括:
利用所述预设值对所述当前串的串矢量编码信息进行缩放,获得所述当前串的目标串矢量。
5.根据权利要求3所述的视频解码方法,其特征在于,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,还包括:
若所述当前串的串矢量编码信息的至少一个分量的值大于所述第一阈值,则解码所述待解码码流,获得串矢量编码分辨率索引;
根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
6.根据权利要求1或5所述的视频解码方法,其特征在于,所述待解码码流对应的视频序列的序列头包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述视频序列中的串的目标串矢量编码分辨率;或者
所述当前解码块对应的当前图像的图像头包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前图像中的串的目标串矢量编码分辨率;或者
所述当前解码块对应的当前条带的片头包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前条带中的串的目标串矢量编码分辨率。
7.根据权利要求1或5所述的视频解码方法,其特征在于,所述待解码码流包括所述当前解码块对应的最大编码单元及其串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前解码块对应的最大编码单元中的串的目标串矢量编码分辨率;或者
所述待解码码流包括所述当前解码块的串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前解码块中的串的目标串矢量编码分辨率;或者
所述待解码码流包括所述当前串的串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前串的目标串矢量编码分辨率。
8.根据权利要求1或5所述的视频解码方法,其特征在于,在已使用基于上下文的自适应二进制算术编码对所述串矢量编码分辨率索引和帧内块复制模式中的块矢量编码分辨率索引编码的情况下,所述串矢量编码分辨率索引与所述块矢量编码分辨率索引共用上下文模型。
9.根据权利要求1或5所述的视频解码方法,其特征在于,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量,包括:
若所述当前串的串矢量编码信息包括所述当前串的已编码串矢量,则根据所述目标串矢量移位信息左移所述已编码串矢量的各分量,获得所述当前串的目标串矢量。
10.根据权利要求9所述的视频解码方法,其特征在于,还包括:
将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
11.根据权利要求1或5所述的视频解码方法,其特征在于,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量,包括:
若所述当前串的串矢量编码信息包括所述当前串的第一已编码串矢量差,获得所述当前串的第一预测串矢量;
根据所述目标串矢量移位信息左移所述第一已编码串矢量差的各分量,获得所述当前串的第二已编码串矢量差;
对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,所述第二预测串矢量的分辨率等于所述目标串矢量编码分辨率;
根据所述目标串矢量移位信息左移所述第二预测串矢量的各分量,获得所述当前串的第三预测串矢量;
根据所述第三预测串矢量和所述第二已编码串矢量差,获得所述当前串的目标串矢量。
12.根据权利要求11所述的视频解码方法,其特征在于,对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,包括:
确定所述第一预测串矢量的分辨率;
若所述第一预测串矢量的分辨率大于所述目标串矢量编码分辨率,则根据所述目标串矢量编码分辨率和所述第一预测串矢量的分辨率,获得第一移位信息;
根据所述第一移位信息右移所述第一预测串矢量的各分量,获得所述第二预测串矢量。
13.根据权利要求12所述的视频解码方法,其特征在于,对所述第一预测串矢量的各分量右移所述第一移位信息时,使用四舍五入、向上取整或者向下取整中的任意一种取整方式。
14.根据权利要求11所述的视频解码方法,其特征在于,对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,包括:
确定所述第一预测串矢量的分辨率;
若所述第一预测串矢量的分辨率小于或等于所述目标串矢量编码分辨率,则根据所述目标串矢量编码分辨率和所述第一预测串矢量的分辨率,获得第二移位信息;
根据所述第二移位信息左移所述第一预测串矢量的各分量,获得所述第二预测串矢量。
15.根据权利要求11所述的视频解码方法,其特征在于,在根据所述第三预测串矢量和所述第二已编码串矢量差,获得所述当前串的目标串矢量之前,所述方法还包括:
将所述第三预测串矢量各分量的值裁剪到预设区间中。
16.根据权利要求11所述的视频解码方法,其特征在于,还包括:
将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
17.根据权利要求11所述的视频解码方法,其特征在于,所述当前串的目标串矢量编码分辨率小于预定值。
18.根据权利要求1或5所述的视频解码方法,其特征在于,根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量,包括:
若所述当前串的串矢量编码信息包括所述当前串的第一已编码串矢量差,获得所述当前串的第一预测串矢量;
对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,所述第二预测串矢量的分辨率等于所述目标串矢量编码分辨率;
根据所述第二预测串矢量与所述第一已编码串矢量差,获得所述当前串的第一串矢量;
根据所述目标串矢量移位信息左移所述第一串矢量的各分量,获得所述当前串的目标串矢量。
19.根据权利要求1所述的视频解码方法,其特征在于,确定所述当前串的至少两个候选串矢量编码分辨率,包括:
获得所述当前解码块的尺寸;
根据所述当前解码块的尺寸,确定所述当前串的至少两个候选串矢量编码分辨率。
20.根据权利要求1所述的视频解码方法,其特征在于,还包括:
当所述目标串矢量编码分辨率小于或等于第二阈值时,存储所述当前串的目标串矢量;
其中,所述第二阈值小于或等于所述至少两个候选串矢量编码分辨率中的最大值,且所述第二阈值为整数。
21.根据权利要求1所述的视频解码方法,其特征在于,还包括:
若所述当前串的目标串矢量使用串矢量预测方式导出,则为所述当前串建立串矢量候选列表;
从所述待解码码流中解码所述当前串的串矢量索引;
根据所述当前串的串矢量索引和所述串矢量候选列表,确定所述当前串的目标串矢量。
22.一种视频编码方法,其特征在于,包括:
获取当前编码块;
对所述当前编码块采用帧内串复制模式,将所述当前编码块分成串,所述串包括当前串;
确定所述当前串的至少两个候选串矢量编码分辨率;
从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;
根据所述当前串的目标串矢量编码分辨率编码所述当前串的目标串矢量,获得所述当前串的串矢量编码信息;
其中,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,包括:
获得串矢量编码分辨率索引,所述串矢量编码分辨率索引指示当前串的串矢量的编码分辨率即所述目标串矢量编码分辨率;
根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
23.一种视频解码装置,其特征在于,包括:
解码码流获取单元,用于获取待解码码流,所述待解码码流包括当前解码块,所述当前解码块采用帧内串复制模式,所述当前解码块包括当前串;
候选分辨率确定单元,用于确定所述当前串的至少两个候选串矢量编码分辨率;
码流解码单元,用于解码所述待解码码流,获得所述当前串的串矢量编码信息;
目标分辨率确定单元,用于根据所述串矢量编码信息,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;
串矢量获得单元,用于根据所述当前串的串矢量编码信息及其目标串矢量编码分辨率,获得所述当前串的目标串矢量;
其中,所述目标分辨率确定单元包括:
第二串矢量编码分辨率索引获得单元,用于解码所述待解码码流,获得串矢量编码分辨率索引,所述串矢量编码分辨率索引指示当前串的串矢量的编码分辨率即所述目标串矢量编码分辨率;
第二分辨率移位信息获得单元,用于根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
24.根据权利要求23所述的视频解码装置,其特征在于,所述至少两个候选串矢量编码分辨率为以下其中至少两项:1个整数样本,2个整数样本,4个整数样本,1/2个样本,1/4个样本。
25.根据权利要求23所述的视频解码装置,其特征在于,所述目标分辨率确定单元包括:
预设值确定单元,用于若所述当前串的串矢量编码信息的各分量的值均小于或等于第一阈值,则确定所述当前串的目标串矢量编码分辨率为所述至少两个候选串矢量编码分辨率中的任意一个预设值;
其中所述第一阈值为大于或等于0的整数。
26.根据权利要求25所述的视频解码装置,其特征在于,所述串矢量获得单元包括:
串矢量隐式缩放单元,用于利用所述预设值对所述当前串的串矢量编码信息进行缩放,获得所述当前串的目标串矢量。
27.根据权利要求25所述的视频解码装置,其特征在于,所述目标分辨率确定单元还包括:
第一串矢量编码分辨率索引获得单元,用于若所述当前串的串矢量编码信息的至少一个分量的值大于所述第一阈值,则解码所述待解码码流,获得串矢量编码分辨率索引;
第一分辨率移位信息获得单元,用于根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
28.根据权利要求23或27所述的视频解码装置,其特征在于,所述待解码码流对应的视频序列的序列头包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述视频序列中的串的目标串矢量编码分辨率;或者
所述当前解码块对应的当前图像的图像头包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前图像中的串的目标串矢量编码分辨率;或者
所述当前解码块对应的当前条带的片头包括所述串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前条带中的串的目标串矢量编码分辨率。
29.根据权利要求23或27所述的视频解码装置,其特征在于,所述待解码码流包括所述当前解码块对应的最大编码单元及其串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前解码块对应的最大编码单元中的串的目标串矢量编码分辨率;或者
所述待解码码流包括所述当前解码块的串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前解码块中的串的目标串矢量编码分辨率;或者
所述待解码码流包括所述当前串的串矢量编码分辨率索引,所述串矢量编码分辨率索引指示所述当前串的目标串矢量编码分辨率。
30.根据权利要求23或27所述的视频解码装置,其特征在于,在已使用基于上下文的自适应二进制算术编码对所述串矢量编码分辨率索引和帧内块复制模式中的块矢量编码分辨率索引编码的情况下,所述串矢量编码分辨率索引与所述块矢量编码分辨率索引共用上下文模型。
31.根据权利要求23或27所述的视频解码装置,其特征在于,所述串矢量获得单元包括:
已编码串矢量缩放单元,用于若所述当前串的串矢量编码信息包括所述当前串的已编码串矢量,则根据所述目标串矢量移位信息左移所述已编码串矢量的各分量,获得所述当前串的目标串矢量。
32.根据权利要求31所述的视频解码装置,其特征在于,还包括:
第一裁剪单元,用于将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
33.根据权利要求23或27所述的视频解码装置,其特征在于,所述串矢量获得单元包括:
第一预测串矢量获得单元,用于若所述当前串的串矢量编码信息包括所述当前串的第一已编码串矢量差,获得所述当前串的第一预测串矢量;
第二已编码串矢量差获得单元,用于根据所述目标串矢量移位信息左移所述第一已编码串矢量差的各分量,获得所述当前串的第二已编码串矢量差;
第二预测串矢量获得单元,用于对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,所述第二预测串矢量的分辨率等于所述目标串矢量编码分辨率;
第三预测串矢量获得单元,用于根据所述目标串矢量移位信息左移所述第二预测串矢量的各分量,获得所述当前串的第三预测串矢量;
第一目标串矢量获得单元,用于根据所述第三预测串矢量和所述第二已编码串矢量差,获得所述当前串的目标串矢量。
34.根据权利要求33所述的视频解码装置,其特征在于,所述第二预测串矢量获得单元包括:
第一预测串矢量分辨率确定单元,用于确定所述第一预测串矢量的分辨率;
第一移位信息获得单元,用于若所述第一预测串矢量的分辨率大于所述目标串矢量编码分辨率,则根据所述目标串矢量编码分辨率和所述第一预测串矢量的分辨率,获得第一移位信息;
第二预测串矢量确定单元,用于根据所述第一移位信息右移所述第一预测串矢量的各分量,获得所述第二预测串矢量。
35.根据权利要求34所述的视频解码装置,其特征在于,对所述第一预测串矢量的各分量右移所述第一移位信息时,使用四舍五入、向上取整或者向下取整中的任意一种取整方式。
36.根据权利要求33所述的视频解码装置,其特征在于,所述第二预测串矢量获得单元包括:
第一预测串矢量分辨率获取单元,用于确定所述第一预测串矢量的分辨率;
第二移位信息获得单元,用于若所述第一预测串矢量的分辨率小于或等于所述目标串矢量编码分辨率,则根据所述目标串矢量编码分辨率和所述第一预测串矢量的分辨率,获得第二移位信息;
第二预测串矢量获取单元,用于根据所述第二移位信息左移所述第一预测串矢量的各分量,获得所述第二预测串矢量。
37.根据权利要求33所述的视频解码装置,其特征在于,所述装置还包括:
第二裁剪单元,用于在根据所述第三预测串矢量和所述第二已编码串矢量差,获得所述当前串的目标串矢量之前,将所述第三预测串矢量各分量的值裁剪到预设区间中。
38.根据权利要求33所述的视频解码装置,其特征在于,还包括:
第三裁剪单元,用于将所述当前串的目标串矢量各分量的值裁剪到预设区间内。
39.根据权利要求33所述的视频解码装置,其特征在于,所述当前串的目标串矢量编码分辨率小于预定值。
40.根据权利要求23或27所述的视频解码装置,其特征在于,所述串矢量获得单元包括:
第一预测串矢量获取单元,用于若所述当前串的串矢量编码信息包括所述当前串的第一已编码串矢量差,获得所述当前串的第一预测串矢量;
第二预测串矢量获取单元,用于对所述第一预测串矢量进行转换获得所述当前串的第二预测串矢量,所述第二预测串矢量的分辨率等于所述目标串矢量编码分辨率;
第一串矢量获得单元,用于根据所述第二预测串矢量与所述第一已编码串矢量差,获得所述当前串的第一串矢量;
第二目标串矢量获得单元,用于根据所述目标串矢量移位信息左移所述第一串矢量的各分量,获得所述当前串的目标串矢量。
41.根据权利要求23所述的视频解码装置,其特征在于,所述候选分辨率确定单元包括:
解码块尺寸获得单元,用于获得所述当前解码块的尺寸;
候选分辨率选择单元,用于根据所述当前解码块的尺寸,确定所述当前串的至少两个候选串矢量编码分辨率。
42.根据权利要求23所述的视频解码装置,其特征在于,还包括:
第二串矢量存储单元,用于当所述目标串矢量编码分辨率小于或等于第二阈值时,存储所述当前串的目标串矢量;
其中,所述第二阈值小于或等于所述至少两个候选串矢量编码分辨率中的最大值,且所述第二阈值为整数。
43.根据权利要求23所述的视频解码装置,其特征在于,还包括:
串矢量候选列表建立单元,用于若所述当前串的目标串矢量使用串矢量预测方式导出,则为所述当前串建立串矢量候选列表;
串矢量索引解码单元,用于从所述待解码码流中解码所述当前串的串矢量索引;
目标串矢量直接确定单元,用于根据所述当前串的串矢量索引和所述串矢量候选列表,确定所述当前串的目标串矢量。
44.一种视频编码装置,其特征在于,包括:
编码块获取单元,用于获取当前编码块;
分串单元,用于对所述当前编码块采用帧内串复制模式,将所述当前编码块分成串,所述串包括当前串;
串矢量分辨率选择范围确定单元,用于确定所述当前串的至少两个候选串矢量编码分辨率;
目标串矢量分辨率确定单元,用于从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率;
串矢量编码单元,用于根据所述当前串的目标串矢量编码分辨率编码所述当前串的目标串矢量,获得所述当前串的串矢量编码信息;
其中,所述目标串矢量分辨率确定单元还用于:获得串矢量编码分辨率索引,所述串矢量编码分辨率索引指示当前串的串矢量的编码分辨率即所述目标串矢量编码分辨率;根据所述串矢量编码分辨率索引,从所述至少两个候选串矢量编码分辨率中确定所述当前串的目标串矢量编码分辨率,并确定所述当前串的目标串矢量移位信息。
45.一种电子设备,其特征在于,包括:
至少一个处理器;
存储装置,配置为存储至少一个程序,当所述至少一个程序被所述至少一个处理器执行时,使得所述至少一个处理器实现如权利要求1至21中任一项所述的视频解码方法或者如权利要求22所述的视频编码方法。
46.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至21中任一项所述的视频解码方法或者如权利要求22所述的视频编码方法。
CN202010500079.XA 2020-06-04 2020-06-04 视频解码方法、视频编码方法及相关设备 Active CN112565767B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010500079.XA CN112565767B (zh) 2020-06-04 2020-06-04 视频解码方法、视频编码方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010500079.XA CN112565767B (zh) 2020-06-04 2020-06-04 视频解码方法、视频编码方法及相关设备

Publications (2)

Publication Number Publication Date
CN112565767A CN112565767A (zh) 2021-03-26
CN112565767B true CN112565767B (zh) 2022-04-01

Family

ID=75040799

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010500079.XA Active CN112565767B (zh) 2020-06-04 2020-06-04 视频解码方法、视频编码方法及相关设备

Country Status (1)

Country Link
CN (1) CN112565767B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117356094A (zh) * 2021-04-02 2024-01-05 抖音视界有限公司 用于视频处理的方法、设备和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011053054A2 (ko) * 2009-10-30 2011-05-05 에스케이텔레콤 주식회사 움직임 벡터 해상도 제한을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
WO2016052977A1 (ko) * 2014-10-01 2016-04-07 주식회사 케이티 비디오 신호 처리 방법 및 장치
CN110913216A (zh) * 2013-10-12 2020-03-24 洪学文 一种结合块匹配和串匹配的图像压缩方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5717548B2 (ja) * 2011-06-09 2015-05-13 日本放送協会 超解像補助情報生成装置、符号化装置、復号装置、及びこれらのプログラム
US10638137B2 (en) * 2018-03-07 2020-04-28 Tencent America LLC Method and apparatus for video coding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011053054A2 (ko) * 2009-10-30 2011-05-05 에스케이텔레콤 주식회사 움직임 벡터 해상도 제한을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
CN110913216A (zh) * 2013-10-12 2020-03-24 洪学文 一种结合块匹配和串匹配的图像压缩方法
WO2016052977A1 (ko) * 2014-10-01 2016-04-07 주식회사 케이티 비디오 신호 처리 방법 및 장치

Also Published As

Publication number Publication date
CN112565767A (zh) 2021-03-26

Similar Documents

Publication Publication Date Title
US7426308B2 (en) Intraframe and interframe interlace coding and decoding
CN112543332B (zh) 视频解码方法、视频编码方法及相关设备
KR102616714B1 (ko) 광학 흐름 정제를 위한 조기 종료
JP7314274B2 (ja) ビデオピクチャの復号および符号化の方法ならびに装置
CN113615194A (zh) 使用抽取预测块的dmvr
CN114902661A (zh) 用于跨分量线性模型预测的滤波方法和装置
JP2024009038A (ja) 双予測のオプティカルフロー計算および双予測補正におけるブロックレベル境界サンプル勾配計算のための整数グリッド参照サンプルの位置を計算するための方法
CN113597769A (zh) 基于光流的视频帧间预测
US11064201B2 (en) Method and device for image encoding/decoding based on effective transmission of differential quantization parameter
CN112565767B (zh) 视频解码方法、视频编码方法及相关设备
US20220224888A1 (en) Video encoding method, video decoding method, and related device
CN112532989B (zh) 视频编码方法、视频解码方法及相关设备
CN112543333B (zh) 视频解码方法、视频编码方法及相关设备
CN113170176A (zh) 视频编码器、视频解码器及相应方法
KR102660120B1 (ko) 이중 예측 옵티컬 플로 계산 및 이중 예측 보정에서 블록 레벨 경계 샘플 그레이디언트 계산을 위한 정수 그리드 참조 샘플의 위치를 계산하는 방법
RU2808608C2 (ru) Раннее прекращение уточнения оптического потока
CN114079782A (zh) 视频图像重建方法、装置、计算机设备及存储介质
KR20240056654A (ko) 이중 예측 옵티컬 플로 계산 및 이중 예측 보정에서 블록 레벨 경계 샘플 그레이디언트 계산을 위한 정수 그리드 참조 샘플의 위치를 계산하는 방법
CN115086656A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40040676

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant