CN107646194B - 用于视频运动补偿的装置和方法 - Google Patents

用于视频运动补偿的装置和方法 Download PDF

Info

Publication number
CN107646194B
CN107646194B CN201580080207.7A CN201580080207A CN107646194B CN 107646194 B CN107646194 B CN 107646194B CN 201580080207 A CN201580080207 A CN 201580080207A CN 107646194 B CN107646194 B CN 107646194B
Authority
CN
China
Prior art keywords
block
motion
motion vector
frame
encoded
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
CN201580080207.7A
Other languages
English (en)
Other versions
CN107646194A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN107646194A publication Critical patent/CN107646194A/zh
Application granted granted Critical
Publication of CN107646194B publication Critical patent/CN107646194B/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/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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • 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/124Quantisation
    • 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/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/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/43Hardware specially adapted for motion estimation or compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/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/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/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
    • 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/567Motion estimation based on 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/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • 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
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/18Methods 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 set of transform coefficients
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

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

Abstract

本发明提供了:帧缓冲区(306),用于存储视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧;运动估计单元(307),用于通过估计所述参考帧的参考块与所述当前帧的当前块之间的运动来生成运动向量;模糊滤波器选择单元(313),用于根据所述运动向量的方向选择多个模糊滤波器中的一个;滤波单元(314),用于通过将所述选择的滤波器应用到所述参考块来生成滤波参考块;运动补偿单元(308),用于基于所述当前块、所述运动向量和所述滤波参考块生成所述当前块的滤波预测块。

Description

用于视频运动补偿的装置和方法
技术领域
本发明大体上涉及视频处理领域和一种用于视频运动补偿的装置,尤其涉及一种视频编码器以及一种用于支持视频中预测帧的运动补偿的视频解码器。本发明还涉及一种编码方法以及一种用于使用运动补偿对视频流进行解码的方法。最后,本发明涉及一种具有程序代码的计算机程序,用于执行这一方法。
背景技术
在视频处理领域中,尤其是在混合视频编码与压缩领域中,使用帧间图像和帧内图像预测以及变换编码是众所周知的。H.261、H.263、MPEG-1、2、4、H.264/AVC或HEVC等已知视频压缩标准使用这种混合视频编码技术。
图1所示为根据现有技术的视频编码器。视频编码器100包括用于接收输入图像的输入端以及用于生成编码视频流的输出端。视频编码器100用于将预测、变换、量化以及熵编码应用到视频序列。变换、量化和熵编码由变换和量化单元101以及熵编码器103分别执行。在变换和量化单元101与熵编码器103之间提供有扫描单元102。
视频序列对应多个输入图像,其中每个图像被划分为一定大小的帧内编码块或帧间编码块。视频序列的第一个图像的块通过帧内预测单元109进行帧内编码。帧内图像仅使用同一图像中的信息进行编码,因此可以独立解码并且可以在比特流中提供入口点以供随机接入。
对于帧间编码图像,使用来自先前的和/或后来的编码图像的信息来减少时间冗余,这些先前的和/或后来的编码图像称为参考图像。参考图像由逆扫描、反量化、逆变换单元104、由去块效应和样本自适应偏移(sample adaptive offset,SAO)滤波器105进行处理,并存储在帧缓冲区106中。帧间编码图像的每个块从参考图像中的相同大小的一个块进行预测。
运动估计单元107应用运动估计以选择运动数据,例如运动向量(motion vector,MV)、模式判决和参考帧。运动估计单元107包括一个待进行帧间编码的图像以及一个参考图像作为输入。运动数据基于某一成本函数来选择,以使原始块与其预测块之间的差异最小化。编码器控制单元110基于率失真优化过程来选择运动信息,例如运动向量或参考帧索引。
运动补偿单元108进行的运动补偿使用运动数据来生成预测信号或运动补偿后的帧信号,运动数据被编码并作为边信息传输给解码器。然后变换原始块与其预测块之间的差异,称为残余或预测误差。变换系数通常与运动数据一起进行量化、扫描、熵编码和传输。
解码器处理,作为视频编码器100的一部分,在图1的虚线框111中示出。图2所示为根据现有技术的视频解码器200。与视频编码器100类似,视频解码器200包括熵解码器203、逆扫描、反量化、逆变换单元204、去块效应滤波器和SAO单元205、帧缓冲区206、运动补偿单元208、帧内预测单元209。
视频编码器100和视频解码器200产生相同的预测。逆扫描、反量化、逆变换单元204重构残差数据。近似输入图像通过将残差添加到预测中来分块重构。添加结果可进一步反馈给环路滤波器以消除伪影。然后将最终的重构图像存储在图像或帧缓冲区206中,其可用于预测子序列图像。
如在图1的视频编码器100和图2的视频解码器中应用的运动补偿是混合视频编码/解码中的最重要元素之一。运动补偿利用时间信息来预测当前块,从而减少视频的冗余。预测准确性取决于参考块与当前块之间的内容相似度。当场景中的相机或某些对象的速度发生变化时,这通常预计在动作和体育电影中发生,运动模糊逐帧变化,导致预测准确性降低。
视频编码标准的一般运动补偿方法比较适合静止对象或速度恒定的移动对象。但是在运动模糊变化的情况下,其准确性受到限制。如果对象在曝光时间内移动,则运动模糊发生在对象运动的方向。加速对象在当前帧中看起来比在前一参考帧中更模糊,而减速对象看起来更清晰。连续帧之间的模糊的变化程度通常使预测误差增大。因此,这导致压缩效率降低,从而导致帧间预测块的残差的数据速率提高。
在本上下文中,针对不同的运动模糊补偿通过对参考帧进行滤波来减小预测误差是众所周知的。例如,预定义多个模糊滤波器并将这些模糊滤波器应用到存储在帧缓冲区106中的参考帧是众所周知的。通过从率失真优化方面对每个滤波器的性能进行迭代测试,视频编码器可以选择最佳模糊滤波器。为了支持视频解码器对生成的比特流进行解码,将视频编码器已选择的模糊滤波器作为比特流中的边信息通过信号传送给解码器。
然而,即使这一技术可以在参考帧与当前帧之间的模糊变化进行了帧间编码的情况下使预测误差减小,将所选模糊滤波器从视频编码器通过信号传送到视频解码器也需要编码比特流中有附加比特。该附加传送反过来减少了可以用来对编码比特流中的预测误差进行编码的比特的数量。
发明内容
认识到上述的缺点和问题,本发明旨在改进现有技术。具体而言,本发明的目的是提供一种视频编码器、一种编码方法、一种视频解码器以及一种用于后续帧的视频流的改进编码和解码的解码方法。
本发明尤其旨在通过提高预测信号的准确性来提高帧间预测编码的质量。本发明还旨在减少编码比特流中的信令比特的数量。
本发明的上述目的通过所附独立权利要求中提供的方案来实现。本发明的有利实施方式在各个从属权利要求中进一步定义。
本发明的第一方面提供了一种用于根据运动补偿将后续帧的视频流预测编码为编码视频比特流的视频编码器。所述视频编码器包括帧缓冲区,用于存储所述视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧。所述视频编码器包括运动估计单元,用于通过估计所述参考帧的参考块与所述当前帧的当前块之间的运动来生成运动向量。所述视频编码器包括滤波器选择单元,用于根据所述运动向量的方向选择多个滤波器中的一个。所述视频编码器包括滤波单元,用于通过将所述选择的滤波器应用到所述参考块来生成滤波参考块。所述视频编码器包括运动补偿单元,用于基于所述当前块和所述滤波参考块来生成所述当前块的滤波预测块。
因此,现有技术要求针对后续帧的视频流在比特流中对附加信息进行编码,而本发明利用运动向量,所述运动向量已经是用于支持帧间预测的比特流的一部分。因此无需额外信令来支持所述参考帧/块的滤波。在下文中,特征“帧”和“块”可互换,因为滤波和预测可以应用到帧的块或者还应用到帧自身。
根据所述第一方面,在所述视频编码器的第一实施形式中,所述运动补偿单元还用于基于所述当前块和所述参考块来生成所述当前块的非滤波预测块,以及从所述滤波预测块和所述非滤波预测块当中输出将预测误差最小化的预测块,所述预测误差是所述当前块与各自的所述预测块之间的差异。
因此,可以进行率失真优化,以便使用所述滤波或非滤波参考块来生成编码预测误差。
根据所述第一方面,在所述视频编码器的又一实施形式中,所述运动估计单元用于通过估计所述滤波参考块与所述当前块之间的运动来生成第二运动向量。根据所述第二运动向量与所述参考块和所述当前块之间的运动向量的比较,考虑或忽略所述滤波参考块以生成所述编码视频比特流。
因此,通过第二运动估计的评估,块的预测可以更准确。
根据所述第一方面,在所述视频编码器的又一实施形式中,所述视频编码器包括编码构件,用于基于与所述运动补偿单元输出的所述预测块对应的所述预测误差来生成所述编码视频比特流。
因此,可以实现有效的预测编码。
根据所述第一方面,在所述视频编码器的又一实施形式中,所述视频编码器包括编码构件,用于生成所述编码视频比特流,以便所述编码视频比特流包括运动信息和滤波器信息。所述运动信息包括所述运动向量,所述滤波器信息指定所述编码视频比特流是基于所述当前块与所述滤波预测块之间的所述预测误差,还是基于所述当前块与所述非滤波预测块之间的所述预测误差。
因此,所述滤波器信息支持所述视频解码器快速确定是否要进行所述参考块的附加滤波以执行预测解码。
根据所述第一方面,在所述视频编码器的又一实施形式中,所述编码构件用于:在块级别针对每个预测编码当前块、在帧级别、在GOP级别、在PPS级别或在SPS级别,将所述滤波器信息添加到所述编码视频比特流中。
因此,有可能自适应地将所述滤波器信息设为所需粒度,以便能够优化信令。
根据所述第一方面,在所述视频编码器的又一实施形式中,所述视频编码器包括:变换和量化单元,用于:通过线性空间变换来变换所述预测误差以生成变换系数,以及对所述变换系数进行量化;以及扫描单元和熵编码器,分别用于对所述量化后的变换系数进行扫描和熵编码,以生成所述编码视频比特流。
因此,可以进一步减少用于传输所述视频比特流中的所述预测误差的比特数量。
根据所述第一方面,在所述视频编码器的又一实施形式中,所述滤波器选择单元用于推导所述运动向量相对于正水平轴的角度,并且根据所述角度来选择多个滤波器中的所述一个。
因此,要应用到所述参考块的滤波器选择得到简化并且可以在没有任何其它信令比特的情况下执行。
根据所述第一方面,在所述视频编码器的又一实施形式中,所述视频编码器是用于所述视频流的单层编码的视频编码器。
根据所述第一方面,在所述视频编码器的又一实施形式中,所述滤波器选择单元用于根据所述运动向量的所述方向选择多个模糊和/或去模糊滤波器中的一个。
因此,在所述视频流中的运动加速或减速的情况下,有可能增加模糊或从所述参考块中消除模糊。
本发明的又一方面提供了一种用于帧内和帧间预测的混合视频编码器,包括这一视频编码器。
本发明的又一方面提供了一种用于根据运动补偿将后续帧的视频流预测编码为编码视频比特流的方法。所述方法包括:存储所述视频流的至少一个参考帧的步骤,所述参考帧不同于所述视频流的当前帧;运动估计步骤,包括通过估计所述参考帧的参考块与所述当前帧的当前块之间的运动来生成运动向量;根据所述运动向量的方向选择多个滤波器中的一个的步骤;通过将所述选择的滤波器应用到所述参考块来生成滤波参考块的步骤;以及运动补偿步骤,包括基于所述当前块和所述滤波参考块来生成所述当前块的滤波预测块。
本发明的又一方面提供了一种用于对编码视频比特流进行解码的视频解码器,所述编码视频比特流是通过根据运动补偿对后续帧的视频流进行预测编码而获得的,其中所述编码视频比特流包括预测编码当前帧以及编码运动向量,所述编码运动向量反映所述参考帧的参考块与所述当前帧的当前块之间的运动,所述参考帧不同于所述当前帧。所述视频解码器包括:解码器,用于对编码参考帧和所述编码运动向量进行解码以生成参考帧和运动向量;帧缓冲区,用于存储所述参考帧;滤波器选择单元,用于根据所述运动向量的方向选择多个滤波器中的一个;滤波单元,用于通过将所述选择的滤波器应用到所述参考块来生成滤波参考块;运动补偿单元,用于基于所述运动向量和所述滤波参考块来生成所述预测编码当前帧的所述当前块。
因此,现有技术要求针对后续帧的视频流在比特流中对附加信息进行编码,而本发明利用运动向量,所述运动向量已经是用于支持帧间预测的比特流的一部分。因此无需额外信令来支持所述参考帧/块的滤波。此外,无需所述当前帧之外的信息来选择所述滤波器和将所述选择的滤波器应用到所述参考帧/块。
根据所述又一方面,在所述视频解码器的一实施形式中,所述编码视频比特流包括与所述当前块有关的滤波器信息。所述解码器用于对所述滤波器信息进行解码。所述运动补偿单元用于,根据所述滤波器信息的值,基于所述运动向量和所述滤波参考块,或者基于所述运动向量和所述参考块,来生成所述预测编码当前帧的所述当前块,其中所述参考块对应于所述非滤波参考块,即,对应于所述选择的滤波器尚未处理的所述参考块。
根据所述又一方面,在所述视频解码器的一实施形式中,所述滤波器选择单元用于推导所述运动向量相对于正水平轴等的角度,并且根据所述角度来选择多个滤波器中的所述一个。
根据所述又一方面,在所述视频解码器的一实施形式中,所述视频解码器是用于所述视频流的单层解码的视频解码器。
根据所述又一方面,在所述视频解码器的一实施形式中,所述滤波器选择单元用于根据所述运动向量的所述方向选择多个模糊和/或去模糊滤波器中的一个。
本发明的又一方面提供了一种用于帧内和帧间预测的混合视频解码器,包括这种视频解码器。
本发明的又一方面提供了一种用于对编码视频比特流进行解码的方法,所述编码视频比特流是通过根据运动补偿对后续帧的视频流进行预测编码而获得的。所述编码视频比特流包括:至少一个编码参考帧、一个预测编码当前帧,其中所述参考帧不同于所述当前帧,以及一个编码运动向量,其中所述编码运动向量反映所述参考帧的参考块与所述当前帧的当前块之间的运动。所述方法包括:对所述编码参考帧和所述编码运动向量进行解码以生成参考帧和运动向量;存储所述参考帧;根据所述运动向量的方向选择多个滤波器中的一个;通过将所述选择的滤波器应用到所述参考块来生成滤波参考块;运动补偿,包括基于所述运动向量和所述滤波参考块来生成所述预测编码当前帧的所述当前块。
本发明的又一方面提供了一种具有程序代码的计算机程序,所述计算机程序在计算设备上运行时用于执行编码和/或解码方法。
须注意,本申请中描述的所有设备、元件、单元和构件都可以在软件或硬件元件或其任意类型的组合中实施。本申请中描述的各种实体执行的所有步骤和所描述的将由各种实体执行的功能旨在表明各个实体适于或用于执行各自的步骤和功能。即使在下文描述或特定实施例中,由一般实体执行的具体功能或步骤没有体现在执行该具体步骤或功能的那个实体的具体详细元件的描述中,技术人员也应清楚,这些方法和功能可以在各个软件或硬件元件或其任意类型的组合中实施。
附图说明
结合所附附图,下面具体实施例的描述将阐述上述本发明的各方面及其实现形式,其中:
图1所示为根据现有技术的视频编码器。
图2所示为根据现有技术的视频解码器。
图3所示为根据本发明一实施例的视频编码器。
图4所示为根据本发明一实施例的视频解码器。
图5(a)所示为根据本发明的运动模糊补偿的一实施例。
图5(b)所示为根据本发明的运动模糊补偿的一实施例。
图6所示为通过图5(a)的实施例获得的运动向量的示例。
图7所示为根据本发明的滤波器的一实施例。
图8所示为根据本发明的滤波器的一实施例。
图9所示为根据本发明的滤波系数的一实施例。
具体实施方式
图3所示为根据本发明一实施例的视频编码器,具体是用于根据运动补偿将后续帧的视频流预测编码为编码视频比特流的混合视频编码器300。
视频编码器300具体包括帧缓冲区306、运动估计单元307、滤波器选择单元313、滤波单元314和运动补偿单元308。
帧缓冲区306用于存储视频流的至少一个参考帧。该参考帧不同于视频流的当前帧。在本发明的上下文中,当前帧是视频流的当前正在编码的帧。当前帧使用帧间编码技术进行编码,即,当前帧是从多个参考帧之一预测出的。参考帧可以是前一帧,即,位于后续帧的视频流中的当前帧之前的帧。或者,如果使用前向预测,则参考帧可以是后一帧,即,位于当前帧之后的帧。如果存在多个参考帧,则至少一个参考帧可以是前一帧,且至少一个参考帧可以是后一帧。参考帧可以进行帧内编码,即,可以在不使用任何后来帧且对其它帧没有任何依赖的情况下进行编码,因此其可以独立解码并且可以作为随机视频接入的入口点。
运动估计单元307用于通过估计参考帧的参考块与当前帧的当前块之间的运动来生成运动向量。图3相应地示出运动估计单元307包括用于存储在帧缓冲区306中的参考帧的输入端以及用于与当前帧对应的输入图片的输入端。
运动向量通过使用块运动估计来生成。参考块和当前块优选地是参考帧和当前帧的单独区域或子区域。这种块可具有规则的矩形形状或者具有不规则的形状。或者,这些块的大小可与帧相同。当前块和参考块两者具有相同的大小。块的大小通过块模式来定义。块可以对应编码单元(coding unit,CU),CU是具有预定义大小的视频序列的基本编码结构,包含一个帧的一部分,例如64x64像素。
进行帧间编码的当前帧的当前块是从参考帧的参考块中预测出的。帧间预测的编码流程包括选择运动数据,运动数据包括参考索引和用来预测当前块的运动向量。参考索引是参考块和/或参考帧的索引。
滤波器选择单元313用于根据运动向量的方向选择多个滤波器中的一个。滤波单元314用于通过将所选滤波器应用到参考块来生成滤波参考块。运动补偿单元308用于基于当前块和滤波参考块来生成当前块的滤波预测块。
图3相应地示出了运动估计单元307向滤波器选择单元313传输运动向量。滤波器选择单元313的输出确定了所选滤波器。然后,滤波单元314将滤波器选择单元313所选的滤波器应用到存储在帧缓冲区306中的参考帧的参考块,以生成传输给运动补偿单元308的滤波参考块。然后,运动补偿单元308基于当前帧的当前块和滤波参考块来生成滤波预测块。优选地,滤波预测块基于当前块、运动向量和滤波参考块来生成。
具体来说,对于混合视频编码,在编码期间执行运动估计307以找到指向参考帧中的最佳预测单元的运动向量。运动补偿308使用运动数据来生成预测信号,运动数据被编码并作为边信息传输给解码器。预测信号是指可以组合来获得预测帧的预测块。
图3的视频编码器300包括与图1的视频编码器100类似的其它单元。具体来说,视频编码器300包括的类似单元是变换和量化单元301、扫描单元302、熵编码器103、逆扫描、反量化、逆变换单元304、去块效应和SAO滤波器305。视频编码器300包括的其它类似单元是运动估计单元307、运动补偿单元308、帧内预测309和编码器控制310,帧内预测309负责参考帧等的帧内预测。
在图3所示的混合视频编码器300中,基于在块或编码单元等的运动估计307期间生成的运动向量,根据该运动向量的方向,具体是根据该运动向量相对于水平轴的角度,来选择313预定义滤波器。该角度基于当前块的运动向量来计算。然后,将所选滤波器应用到存储在帧缓冲区306中的参考帧。
在视频编码器300中,运动补偿单元308还用于基于当前块和参考块,具体是基于当前块、运动向量和参考块,来生成当前块的非滤波预测块。这里考虑的参考块是存储在帧缓冲区306中的参考帧的非滤波参考块。运动补偿单元308还用于从滤波预测块和非滤波预测块输出将预测误差最小化的预测块,该预测误差是当前块与相应预测块之间的差异。
这意味着将会比较滤波预测块与非滤波预测块的率失真性能。然后选择代表更好的率失真性能的选项。该比较和该选择可以通过编码器控制310执行。编码器控制310可以基于率失真优化过程来选择运动向量和参考索引等运动信息以及模糊标记等滤波器信息。
熵编码器303用于生成编码视频比特流,以便编码视频比特流包括运动信息和滤波器信息。运动信息包括单元所选的运动向量,有利地还包括参考索引,该参考索引是确定用于对当前块和/或当前帧进行预测编码的参考块和/或参考块帧的索引。滤波器信息指定编码视频比特流是基于当前块与滤波预测块之间的预测误差,还是基于当前块与非滤波预测块之间的预测误差。具体来说,滤波器信息指定是否已基于滤波预测块和非滤波预测块生成了编码比特流。
滤波器选择单元313用于根据运动向量的方向选择多个模糊或去模糊滤波器中的一个。这些滤波器可以是位于编码器300和对应解码器,如图4所示的解码器400,两者之上的预定滤波器。或者,这些滤波器的定义可以通过比特流中的对应滤波器信令从编码器300传输到解码器400。这意味着对所有视频序列使用固定滤波器,使得无需发送预定义滤波器,或者针对例如不同的视频类别定义自定义的滤波器。在后一种情况下,滤波器可以通过补充增强信息(supplemental enhancement information,SEI)消息发送给解码器。
在比特流中传输的滤波器信息可以是滤波器标记。例如,可以为已通过帧间预测,即根据帧间模式,进行编码的每个块定义一个模糊标记。块级别的这一标记可以用来指示是否已对当前块使用模糊或去模糊滤波器。此外,添加在片头中的模糊标记可以用来指示是否已对当前片使用模糊/去模糊滤波器。序列参数集(sequence parameter set,SPS)中的这一标记可以用来指示是否已对编码视频序列使用模糊/去模糊滤波器。图像参数集(picture parameter set,PPS)中的这一标记可以用来指示是否已对编码图像使用模糊/去模糊滤波器。或者,模糊标记可以用来指示是否已对当前块使用模糊滤波器,去模糊标记可以用来指示是否已对当前块使用去模糊滤波器。
除了已知的标准编码方法,即帧内和帧间预测(包括跳过),本发明还提议另一种模式,即,用于混合视频编码的运动模糊补偿模式。该运动模糊补偿可以视为在某一个块的编码期间对HEVC等混合视频编码的帧间模式(包括跳过)的补充。本发明提议通过使用角度为θ的滤波器对存储在帧缓冲区306中的重构帧进行滤波314来创建时间参考帧,角度θ是从通过运动估计307获得的运动向量推导出的。
这些滤波参考帧和/或参考块随后用于运动模糊补偿。如果将模糊滤波器应用到参考帧,则存储在帧缓冲区306中的滤波参考帧和原始参考帧共享同一个参考索引。即,一个参考索引将涉及混合视频编码中的一般运动估计中的重构帧,或涉及用于所提议的运动模糊补偿的运动估计的模糊时间帧。
根据本发明的运动模糊补偿的运动估计在混合视频编码的传统运动估计,例如HEVC中的运动估计之后执行。
可以针对所有分区大小(2Nx2N、2NxN、2NxNu、2NxNd……)为通过帧间模式(包括跳过)进行编码的每个块或编码单元定义模糊标记。解码器400能够确定参考帧是否在CU重构期间被模糊,并且能够使用从编码MV推导出的角度θ来复制参考帧的模糊。迷糊标记在率失真(rate distortion,RD)优化中考虑。
块级别或编码单元级别的这一标记可以用来指示是否已对编码单元使用模糊/去模糊滤波器。此外,SPS中的标记可以用来指示是否已对编码视频序列使用模糊/去模糊滤波器。PPS中的标记也可以用来指示是否已对编码图像使用模糊/去模糊滤波器。
图4所示为根据本发明一实施例的视频解码器。该视频解码器400对应视频编码器300,因为视频解码器400包括位于图3的虚线框311中的视频编码器300的元素。解码器400用于对视频编码器300生成的比特流进行解码,解码器400和该编码器产生相同的预测。
视频解码器400是用于对编码视频比特流进行解码的解码器,编码视频比特流是通过根据运动补偿对后续帧的视频流进行预测编码而获得的。编码视频比特流包括对应于预测误差的预测编码当前帧,以及编码运动向量,编码运动向量反映参考帧的参考块与当前帧的当前块之间的运动,参考帧不同于当前帧。
视频解码器400包括解码器403、帧缓冲区406、滤波器选择单元413、滤波单元414和运动补偿单元408。解码器403用于对编码参考帧和编码运动向量进行解码以生成参考帧和运动向量。帧缓冲区406用于存储参考帧。滤波器选择单元413用于根据运动向量的方向选择多个滤波器中的一个。滤波单元414用于通过将所选滤波器应用到参考块来生成滤波参考块。运动补偿单元408用于基于运动向量和滤波参考块来生成预测编码当前帧的当前块。
更进一步,编码视频比特流包括与当前块有关的滤波器信息。解码器403用于对滤波器信息进行解码,运动补偿单元408用于,根据滤波器信息的值,基于运动向量和滤波参考块,或者基于运动向量和参考块,生成预测编码当前帧的当前块。该参考块实际上对应于非滤波参考块,即,对应于所选滤波器尚未处理的参考块。
滤波器选择单元413用于推导运动向量相对于正水平轴的角度,并且根据该角度来选择多个滤波器中的一个。
图4示出了编码视频流,即比特流,被提供给熵解码器403,其中熵解码器403通过逆扫描、反量化、逆变换单元404以及去块效应和SAO滤波器405对当前块/帧的参考帧和预测误差进行解码。参考帧存储在帧缓冲区406中。另一方面,解码器403向滤波器选择单元413和运动补偿单元408传输运动信息和滤波器信息,运动信息和滤波器信息分别包括运动向量和模糊/去模糊标记。
可以针对所有分区大小,包括例如2Nx2N、2NxN、2NxNu、2NxNd……,为已经使用帧间模式(包括跳过)进行编码的每个块或编码单元定义滤波器信息,例如模糊/去模糊标记。模糊/去模糊标记可以存在于片头、PPS或SPS中。解码器400能够确定参考帧是否在块重构期间被模糊,并且能够使用从编码运动向量推导出的角度θ来复制参考帧的模糊。为了确保解码器400中的解码帧与重构帧相同,解码器400和编码器300将同一个滤波器应用到当前块,该滤波器可使用解码运动向量的方向来确定。然后将运动模糊滤波器应用到参考帧/块。运动补偿根据滤波器信息来利用模糊滤波信号,尤其是在模糊/去模糊标记指示已在编码器300中应用了一个滤波器,例如模糊滤波器的情况下。
下文说明了所提议的运动补偿,即编码器处的运动模糊补偿,的两个实施例。
图5(b)所示为根据本发明的运动模糊补偿的一实施例。本实施例包括一轮运动估计,即,在对当前块或编码单元(coding unit,CU)进行编码500时,运动估计单元307执行运动估计501以通过估计参考块与当前块之间的运动来生成运动向量。在滤波器生成503期间,滤波器选择单元313选择对应于运动向量的方向的滤波器,即选择对应于运动向量相对于水平轴等的角度θ的滤波器。角度θ的范围[0,π]被划分为子范围[0,θ1]、[θ12]......[θn-1n]、[θn,π],n是整数值,每个子范围与一个预定义滤波器相关。
一旦生成或选择了滤波器,就将该滤波器应用到参考块或帧以生成滤波参考块/帧,例如模糊参考块/帧504。图5(b)示出了为滤波器标记,即模糊标记true 502,生成滤波参考块/帧,而未针对滤波器标记,即模糊标记false 505,对参考块/帧进行滤波。运动补偿506应用到滤波参考块/帧和非滤波参考块/帧两者。基于后续率失真优化507决定是使用滤波参考块还是非滤波参考块来产生预测误差。
图5(a)所示为根据本发明的运动模糊补偿的又一实施例。与图5(b)的实施例相比,模糊参考块/帧504不发送到运动补偿506,而是用于进行第二运动估计。
相应地,运动估计单元307用于基于滤波参考块504进行第二运动估计510,从而通过估计滤波参考块504与当前块之间的运动来生成第二运动向量。然后在第二运动估计510生成的第二运动向量与第一运动估计501生成的第一运动向量之间进行比较511,其中第一运动估计501在参考块与当前块之间进行。根据该比较511,考虑或忽略该滤波参考块以生成编码视频比特流。
因此,图5(a)的实施例包括两轮运动估计501、510,第二运动估计510基于滤波参考块/帧进行。因此,如果根据基于扇区的算法,第一和第二运动向量没有位于同一个定义角扇区中,则忽略512滤波/模糊方法。
在某一个块或编码单元的编码501期间,在基于滤波/模糊参考块/帧进行第二运动估计510后,编码流程中基于扇区的算法的一个要素是预测运动向量的验证检查,该预测运动向量对应于第二运动向量。
验证检查具有以下三个标准:
(1)第一运动向量和第二运动向量位于同一扇区中。
(2)第二运动向量是非零向量。
(3)运动向量在定义的搜索范围内,即,在水平和垂直方向的±64内。
图6所示为使用基于扇区的算法通过图5(a)的实施例获得的运动向量的示例。图6示出了四个不同的角扇区[0,π/4]、[π/4,π/2]、[π/2,3π/4]和[3π/4,π]。通过第一运动估计501获得的第一运动向量标记为“1.MV”,位于第一扇区中。
根据第一示例,然后应用第二运动估计510,从而产生第二运动向量,标记为“valid 2.MV”。因为第二运动向量与第一运动向量位于相同的扇区中,所以模糊标记是true 513。这意味着基于滤波参考块的运动补偿是可能的。此时,对帧缓冲区中的滤波参考块和非滤波参考块两者执行运动补偿506。进行后续率失真优化以选择滤波或非滤波版本。
根据第二示例,标记为“invalid 2.MV”的第二运动向量与第一运动向量位于不同的扇区中。因此,忽略512滤波并且仅针对非滤波参考块应用运动补偿。
换言之,在模糊操作504之后,如果第一运动向量和第二运动向量位于同一个定义扇区中,则仅将模糊标记设为true 513。否则,将模糊标记设为false 512。相比之下,在图5(b)的实施例中,无需第二轮运动估计。如果执行模糊504,则将模糊标记设为true 502。这些实施例是关于如何决定是否应使用模糊滤波器的编码器相关实施例。
返回至图5(a)的实施例,第一个标准优选地意味着为每个预定义扇区定义一个代表性方向。代表性方向优选地位于扇区的中间。例如,图6示出了第一扇区的代表性方向,该方向标记为“Rep.MV”。模糊滤波器基于这些代表性方向生成。扇区的数量可以根据不同的准确性要求而给出,在编码开始之前计算相同数量的对应模糊滤波器。
如果第一和第二运动向量属于同一扇区,则编码器和解码器使用相同的代表性方向以及相同的模糊滤波器。解码器仅须找出所传输的运动向量携带的方向,并进行准确的滤波以具有相同的重构块或编码单元。
在图6的示例中,如果选择四个扇区,则每个滤波器覆盖的角度为π/4=45°。因为第一运动向量属于第一扇区,所以代表性运动方向指向扇区中间的方向。如果第二运动向量“valid 2.MV”属于同一扇区,则验证检查给出值true,并且解码器找到同一代表性运动向量。
优选地,然后向解码器传输第二运动向量。这意味着视频编码器包括编码构件303,用于生成编码视频比特流,以便编码视频比特流包括运动信息,其中运动信息包括第二运动向量。
如果第二运动向量“invalid 2.MV”引起第二向量的另一代表性运动向量,则验证检查将给出值false。
有利地,第二标准在于第二运动向量是非零向量。该标准是基于以下事实:在曝光期间,如果对象与相机之间存在相对运动,则发生运动模糊。零运动向量意味着没有发现块或编码单元的运动,所以应该没有模糊,验证检查给出的结果是false。随后没有滤波器应用314到参考块。该第二标准可以与第一标准一起考虑或者单独考虑。
最后,根据第三个标准,第二运动向量应位于运动估计的搜索范围内,以便验证检查为true。该第三标准可以与第一和/或第二标准一起考虑。
随着扇区数量的增长,模糊方向将会更准确,而第二运动向量的验证率会下降,这可能导致编码增益和效率下降。因此,存在滤波器准确性与验证率之间的权衡。
与图5(a)的实施例相比,图5(b)的实施例的编码结构通过以下方式得到简化:基于滤波参考,而不是基于扇区的第二运动估计和验证检查,将同一运动向量应用到运动补偿(motion compensation,MC)。因此图5(b)的实施例可以减少运行时间。实际上,本实施例不仅省去了一轮额外的运动估计,还节省了模糊的区域。其仅要求使运动向量指出的参考帧上的块或编码单元以及稍后插入将用到的运动向量周围的事物模糊,而不是使标准运动估计所覆盖的整个区域模糊。出于与上文图5(a)的实施例相同的原因,这里的运动模糊补偿也排除了零运动向量。
图5(a)的实施例引入了关于滤波参考帧的第二运动估计以及基于扇区的验证检查,以确保编码器和解码器共享相同的模糊方向。在图5(a)的实施例中,随着滤波器数量的增加,即,随着扇区数量的增加,块或编码单元的预测变得更准确,因为生成的滤波器在方向上更精确。另一方面,滤波器数量较多意味着第二运动向量的有效角度的范围缩小,运动模糊补偿更常被忽略。使用9个滤波器是一种良好的折衷。
在下文中将示出可以用于运动模糊补偿的模糊滤波器的实施例。
通过线段L和相对于水平轴的角度θ来描述在连续时域中常用的线性统一运动模糊点扩散函数(point spread function,PSF),如以下公式所给出:
Figure GDA0001475319280000101
其中,L与运动速度和曝光时长成正比,θ表示运动向量,(x,y)是笛卡尔坐标系统中的位置。该函数是例如从PSIVT 2006中H.Lin和C.Chang的“用于真实感图像合成的照片一致运动模糊建模(Photo consistent motion blur modeling for realistic imagesynthesis)”所获知的。
等式(1)的离散版本通过考虑在曝光时间内匀速穿过线段所覆盖的传感器的光点来获得,如从J.Oliveira、M.Figueiredo和J.Bioucas-Dias在2014年的图像处理的IEEE事务(IEEE Transactions on Image Processing),图像处理(Image Processing)中发表的“用于自然图像的盲复原的参数模糊估计:线性运动与离焦(Parametric Blur Estimationfor Blind Restoration of Natural Images:Linear Motion and Out-of-Focus)”所获知的。模糊核心的每个系数与每个传感元件所用的时间成正比。由于假设匀速运动,滤波系数由线段与网格中每个像素的交叉点的归一化长度给出,如图7所示。图7示出了θ=arctan4/5的线性运动模糊的离散版本。
在运动模糊变化的情况下,滤波参考可提高编码性能。假设运动模糊以及运动模糊的变化可以通过等式(1)来描述。运动可以视为在单个帧的曝光时间内是恒定的。因为对于一个50fps的视频序列,两个相邻帧之间的时间间隔仅为0.02秒,所以在大部分情况下建议运动模糊程度的变化较小。因此,采用3像素的固定程度来描述模糊发生变化的现象,即,L=3。因此亮度分量的二维模糊滤波器的尺寸为3x3。
模糊滤波器的另一自由度是角度θ。其是从在HEVC等混合视频编码中使用的运动向量推导出的。因此,在建立模糊滤波器之前,执行标准混合视频编码运动搜索。模糊参考帧通过使用运动向量的方向来生成。
3x3滤波器的一般离散版本由于对称性而具有5个不同的系数,即a、b、c、d和e,并且根据任意角度θ使用图8来计算。所建议的滤波器是低通滤波器。作为示例,图9中列出了针对θ=15°和θ=60°的滤波系数。
在一实施例中,如果测试序列具有4:2:0格式,则将使用这一3x3滤波器来仅使参考的亮度分量模糊。色度像素位于亮度分量[6]的每隔一个像素位置处。对于仅3像素的模糊程度,须考虑三个邻近亮度像素,但仅须考虑1个色度像素。邻近色度像素不在模糊的影响范围内,因此不需要滤波器。对于4:4:4色度二次采样的序列,将对色度分量应用与亮度分量相同的滤波器。
所提议的运动模糊模型和所提议的模糊滤波器为示例。还可以根据所提议的发明应用其它模糊滤波器,在所提议的发明中,使用当前编码单元/块的运动向量来选择预定义滤波器以提高混合视频编码中的编码效率。
已经结合作为实例的不同实施例以及实施方案描述了本发明。但本领域技术人员通过实践所请发明,研究附图、本公开以及独立权项,能够理解并获得其他变体。在权利要求以及描述中,术语“包括”不排除其他元件或步骤,且“一个”并不排除复数可能。单个元件或其它单元可满足权利要求书中所叙述的若干实体或项目的功能。在仅凭某些措施被记载在相互不同的从属权利要求书中这个单纯的事实并不意味着这些措施的结合不能在有利的实现方式中使用。

Claims (19)

1.一种用于根据运动补偿将后续帧的视频流预测编码为编码视频比特流的视频编码器,其特征在于:
包括:
帧缓冲区(306),用于存储所述视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧,
运动估计单元(307),用于通过估计所述参考帧的参考块与所述当前帧的当前块之间的运动来生成运动向量,
滤波器选择单元(313),用于根据所述运动向量的方向选择多个滤波器中的一个,
滤波单元(314),用于通过将所述选择的滤波器应用到所述参考块来生成滤波参考块,
运动补偿单元(308),用于基于所述当前块和所述滤波参考块来生成所述当前块的滤波预测块。
2.根据权利要求1所述的视频编码器,其特征在于:
所述运动补偿单元(308)还用于:基于所述当前块和所述参考块来生成所述当前块的非滤波预测块,以及
从所述滤波预测块和所述非滤波预测块当中输出将预测误差最小化的预测块,所述预测误差是所述当前块与所述相应预测块之间的差异。
3.根据权利要求1或2所述的视频编码器,其特征在于:
所述运动估计单元(307、510)用于通过估计所述滤波参考块与所述当前块之间的运动来生成第二运动向量,以及
根据所述第二运动向量与所述参考块和所述当前块之间的运动向量的比较(511),考虑或忽略所述滤波参考块以生成所述编码视频比特流。
4.根据权利要求2所述的视频编码器,其特征在于:
包括编码构件(303),用于基于与所述运动补偿单元(308)输出的所述预测块对应的所述预测误差来生成所述编码视频比特流。
5.根据权利要求2所述的视频编码器,其特征在于:
包括编码构件(303),用于生成所述编码视频比特流,以便所述编码视频比特流包括运动信息和滤波器信息,
其中所述运动信息包括所述运动向量,以及
所述滤波器信息指定所述编码视频比特流是基于所述当前块与所述滤波预测块之间的所述预测误差,还是基于所述当前块与所述非滤波预测块之间的所述预测误差。
6.根据权利要求5所述的视频编码器,其特征在于:
所述编码构件(303)用于:在块级别针对每个预测编码当前块、在帧级别、在图像组(group of pictures,GOP)级别、在图像参数集(picture parameter set,PPS)级别或在序列参数集(sequence parameter set,SPS)级别,将所述滤波器信息添加到所述编码视频比特流中。
7.根据权利要求2所述的视频编码器,其特征在于:
包括:变换和量化单元(301),用于通过线性空间变换来变换所述预测误差以生成变换系数,并且对所述变换系数进行量化;以及
扫描单元(302)和熵编码器(303),分别用于对所述量化后的变换系数进行扫描和熵编码,以生成所述编码视频比特流。
8.根据权利要求1或2所述的视频编码器,其特征在于:
所述滤波器选择单元(210)用于推导所述运动向量相对于正水平轴等的角度,并且根据所述角度来选择多个滤波器中的所述一个。
9.根据权利要求1或2所述的视频编码器,其特征在于,用于所述视频流的单层编码。
10.根据权利要求1或2所述的视频编码器,其特征在于:
所述滤波器选择单元(313)用于根据所述运动向量的所述方向选择多个模糊和/或去模糊滤波器中的一个。
11.一种用于根据运动补偿将后续帧的视频流预测编码为编码视频比特流的方法,其特征在于:
包括:
存储所述视频流的至少一个参考帧的步骤,所述参考帧不同于所述视频流的当前帧,
运动估计步骤,包括通过估计所述参考帧的参考块与所述当前帧的当前块之间的运动来生成运动向量,
根据所述运动向量的方向选择多个滤波器中的一个的步骤,
通过将所述选择的滤波器应用到所述参考块来生成滤波参考块的步骤,
运动补偿步骤,包括基于所述当前块和所述滤波参考块生成所述当前块的滤波预测块。
12.一种用于对编码视频比特流进行解码的视频解码器,其中所述编码视频比特流是通过根据运动补偿对后续帧的视频流进行预测编码而获得的,其特征在于:
所述编码视频比特流包括预测编码当前帧以及编码运动向量,所述编码运动向量反映所述预测编码当前帧的参考帧的参考块与所述预测编码当前帧的当前块之间的运动,所述参考帧不同于所述预测编码当前帧,
包括:
解码器(403),用于对编码参考帧和所述编码运动向量进行解码以生成所述参考帧和运动向量,
帧缓冲区(406),用于存储所述参考帧,
滤波器选择单元(413),用于根据所述运动向量的方向选择多个滤波器中的一个,
滤波单元(414),用于通过将所述选择的滤波器应用到所述参考帧的参考块来生成滤波参考块,
运动补偿单元(408),用于基于所述运动向量和所述滤波参考块来生成所述预测编码当前帧的所述当前块。
13.根据权利要求12所述的视频解码器,其特征在于:
所述编码视频比特流包括与所述当前块有关的滤波器信息,
所述解码器(403)用于对所述滤波器信息进行解码,以及
所述运动补偿单元(408)用于,根据所述滤波器信息的值,基于所述运动向量和所述滤波参考块,或者基于所述运动向量和所述参考块,来生成所述预测编码当前帧的所述当前块。
14.根据权利要求12或13所述的视频解码器,其特征在于:
所述滤波器选择单元(413)用于推导所述运动向量相对于正水平轴的角度,并且根据所述角度来选择多个滤波器中的所述一个。
15.根据权利要求12或13中的任一项所述的视频解码器,其特征在于:
所述滤波器选择单元(413)用于根据所述运动向量的所述方向选择多个模糊和/或去模糊滤波器中的一个。
16.一种用于对编码视频比特流进行解码的方法,其中所述编码视频比特流是通过根据运动补偿对后续帧的视频流进行预测编码而获得的,其特征在于:
所述编码视频比特流包括:至少一个编码参考帧、一个预测编码当前帧,其中所述参考帧不同于所述当前帧,以及一个编码运动向量,其中所述编码运动向量反映所述参考帧的参考块与所述当前帧的当前块之间的运动,
包括:
对所述编码参考帧和所述编码运动向量进行解码以生成参考帧和参考向量,
存储所述参考帧,
根据所述运动向量的方向选择多个滤波器中的一个,
通过将所述选择的滤波器应用到所述参考帧的参考块来生成滤波参考块,
运动补偿,包括基于所述运动向量和所述滤波参考块来生成所述预测编码当前帧的所述当前块。
17.根据权利要求16所述解码的方法,其特征在于:所述编码视频比特流还包括与所述当前块有关的滤波器信息,所述方法还包括:
对所述滤波器信息进行解码,以及
根据所述滤波器信息的值,基于所述运动向量和所述滤波参考块,或者基于所述运动向量和所述参考块,来生成所述预测编码当前帧的所述当前块。
18.根据权利要求17所述解码的方法,其特征在于:所述方法还包括:推导所述运动向量相对于正水平轴的角度;
所述根据所述运动向量的方向选择多个滤波器中的一个包括:
根据所述角度来选择多个滤波器中的所述一个。
19.根据权利要求16所述解码的方法,其特征在于:所述根据所述运动向量的方向选择多个滤波器中的一个包括:
用于根据所述运动向量的所述方向选择多个模糊和/或去模糊滤波器中的一个。
CN201580080207.7A 2015-05-21 2015-05-21 用于视频运动补偿的装置和方法 Active CN107646194B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2015/061278 WO2016184527A1 (en) 2015-05-21 2015-05-21 Apparatus and method for video motion compensation

Publications (2)

Publication Number Publication Date
CN107646194A CN107646194A (zh) 2018-01-30
CN107646194B true CN107646194B (zh) 2020-08-07

Family

ID=53276093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580080207.7A Active CN107646194B (zh) 2015-05-21 2015-05-21 用于视频运动补偿的装置和方法

Country Status (12)

Country Link
US (1) US10536716B2 (zh)
EP (1) EP3286917A1 (zh)
JP (1) JP6593934B2 (zh)
KR (1) KR102162856B1 (zh)
CN (1) CN107646194B (zh)
AU (1) AU2015395514B2 (zh)
CA (1) CA2986613C (zh)
HK (1) HK1244136A1 (zh)
MX (1) MX2017014914A (zh)
MY (1) MY190056A (zh)
RU (1) RU2684193C1 (zh)
WO (1) WO2016184527A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10694181B2 (en) * 2017-01-27 2020-06-23 Qualcomm Incorporated Bilateral filters in video coding with reduced complexity
EP3468198A1 (en) * 2017-10-05 2019-04-10 Thomson Licensing Method and apparatus for video encoding and decoding based on illumination compensation
US11527852B2 (en) 2018-01-19 2022-12-13 Lg Energy Solution, Ltd. Separable high-voltage connector assembly and manufacturing method therefor
CN109348222B (zh) * 2018-11-22 2020-08-07 随锐科技集团股份有限公司 一种参考帧的选取方法
CN113170175A (zh) * 2018-11-27 2021-07-23 Op方案有限责任公司 用于不可用参考图像的自适应时间滤波器
US20220312004A1 (en) * 2021-03-23 2022-09-29 Tencent America LLC Method and apparatus for video coding
CN113259669B (zh) * 2021-03-25 2023-07-07 浙江大华技术股份有限公司 编码方法、装置、电子设备及计算机可读存储介质
CN117795974A (zh) * 2021-08-05 2024-03-29 三星电子株式会社 支持图像数据去模糊的电子装置和方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101527847A (zh) * 2009-01-04 2009-09-09 炬力集成电路设计有限公司 运动补偿插值装置和方法
CN102714718A (zh) * 2009-12-28 2012-10-03 索尼公司 图像处理装置、方法和程序
CN104012094A (zh) * 2011-11-07 2014-08-27 李英锦 视频数据的解码方法

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2286740B (en) * 1994-02-21 1998-04-01 Sony Uk Ltd Coding and decoding of video signals
US7412002B2 (en) * 2000-04-28 2008-08-12 Texas Instruments Incorporated Image preprocessing with selective lowpass filtering from motion compensation
US7450641B2 (en) * 2001-09-14 2008-11-11 Sharp Laboratories Of America, Inc. Adaptive filtering based upon boundary strength
US7266150B2 (en) 2001-07-11 2007-09-04 Dolby Laboratories, Inc. Interpolation of video compression frames
US6965645B2 (en) * 2001-09-25 2005-11-15 Microsoft Corporation Content-based characterization of video frame sequences
DE602004022865D1 (de) * 2003-12-01 2009-10-08 Koninkl Philips Electronics Nv Bewegungskompensierte invers-filterung mit bandpassfiltern für die bewegungsverschmierungsreduktion
EP1578137A2 (en) 2004-03-17 2005-09-21 Matsushita Electric Industrial Co., Ltd. Moving picture coding apparatus with multistep interpolation process
US7337358B2 (en) 2004-12-20 2008-02-26 Microsoft Corporation Method and computer-readable medium for verifying and saving an electronic document
US20060171569A1 (en) 2005-01-10 2006-08-03 Madhukar Budagavi Video compression with blur compensation
JP2008536414A (ja) * 2005-04-13 2008-09-04 ゴットフリート・ヴィルヘルム・ライプニッツ・ウニヴェルジテート・ハノーヴァー ビデオの拡張された符号化方法及び装置
EP1915860A2 (en) * 2005-08-12 2008-04-30 Nxp B.V. Method and system for digital image stabilization
KR101378185B1 (ko) 2006-07-11 2014-03-26 톰슨 라이센싱 가상 참조 픽처를 사용하는 방법 및 장치
BRPI0813122A2 (pt) * 2007-07-02 2015-08-04 Nippon Telegraph & Telephone Método de codificação e método de decodificação de vídeo escalonável, aparelhos e programas para os mesmos, e meio de armazenamento que armazena os programas
KR101392482B1 (ko) * 2007-08-30 2014-05-07 삼성전자주식회사 블록킹 효과 제거 시스템 및 방법
BRPI0907242A2 (pt) * 2008-01-07 2015-07-14 Thomson Licensing Métodos e aparelho para codificação e decodificação utilizando-se filtragem paramétrica
EP2266321B1 (en) * 2008-04-23 2017-12-13 Telefonaktiebolaget LM Ericsson (publ) Template-based pixel block processing
JP4613990B2 (ja) * 2008-07-31 2011-01-19 ソニー株式会社 画像処理装置、画像処理方法、プログラム
WO2010027457A1 (en) * 2008-09-04 2010-03-11 Thomson Licensing Methods and apparatus for prediction refinement using implicit motion prediction
FR2952497B1 (fr) * 2009-11-09 2012-11-16 Canon Kk Procede de codage et de decodage d'un flux d'images; dispositifs associes
JP5047344B2 (ja) * 2009-12-28 2012-10-10 キヤノン株式会社 画像処理装置及び画像処理方法
JP5805991B2 (ja) * 2010-05-07 2015-11-10 トムソン ライセンシングThomson Licensing ピクチャ・シーケンスを符号化する方法、それに対応する再構築方法、および当該シーケンスを表す符号化データのストリーム
CN102907099A (zh) * 2010-05-20 2013-01-30 星河通信株式会社 适用利用选择性运动检索区域的运动补偿方法的视频压缩编码装置及解码装置和用于运动补偿的选择性运动检索区域的决定方法
KR101373814B1 (ko) * 2010-07-31 2014-03-18 엠앤케이홀딩스 주식회사 예측 블록 생성 장치
WO2012066866A1 (ja) * 2010-11-17 2012-05-24 三菱電機株式会社 動きベクトル検出装置、動きベクトル検出方法、フレーム補間装置及びフレーム補間方法
US9560372B2 (en) * 2010-12-27 2017-01-31 Stmicroelectronics, Inc. Directional motion vector filtering
CN102547272B (zh) * 2010-12-30 2015-03-11 中国移动通信集团公司 一种解码方法、装置及终端
US9319716B2 (en) * 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
US8982960B2 (en) * 2011-02-23 2015-03-17 Qualcomm Incorporated Multi-metric filtering
JPWO2012147622A1 (ja) 2011-04-28 2014-07-28 ソニー株式会社 画像処理装置、及び、画像処理方法
US10034018B2 (en) 2011-09-23 2018-07-24 Velos Media, Llc Decoded picture buffer management
GB2501535A (en) * 2012-04-26 2013-10-30 Sony Corp Chrominance Processing in High Efficiency Video Codecs
US9270993B2 (en) * 2012-09-10 2016-02-23 Apple Inc. Video deblocking filter strength derivation
WO2015051011A1 (en) * 2013-10-02 2015-04-09 Arris Enterprises, Inc. Modified hevc transform tree syntax
TWI549489B (zh) * 2014-04-16 2016-09-11 智原科技股份有限公司 移動偵測電路與方法
FR3022724A1 (fr) * 2014-06-19 2015-12-25 Orange Procede de codage et de decodage d'images, dispositif de codage et de decodage d'images et programmes d'ordinateur correspondants
CN108476319A (zh) * 2016-01-11 2018-08-31 三星电子株式会社 图像编码方法和设备以及图像解码方法和设备
WO2017134992A1 (ja) * 2016-02-03 2017-08-10 シャープ株式会社 予測画像生成装置、動画像復号装置および動画像符号化装置
EP3296950A1 (en) * 2016-09-15 2018-03-21 Thomson Licensing Method and device for blurring a virtual object in a video
IT201600094414A1 (it) * 2016-09-20 2018-03-20 St Microelectronics Srl Un procedimento per rilevare un veicolo in sorpasso, relativo sistema di elaborazione, sistema di rilevazione di un veicolo in sorpasso e veicolo

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101527847A (zh) * 2009-01-04 2009-09-09 炬力集成电路设计有限公司 运动补偿插值装置和方法
CN102714718A (zh) * 2009-12-28 2012-10-03 索尼公司 图像处理装置、方法和程序
CN104012094A (zh) * 2011-11-07 2014-08-27 李英锦 视频数据的解码方法

Also Published As

Publication number Publication date
US10536716B2 (en) 2020-01-14
RU2684193C1 (ru) 2019-04-04
EP3286917A1 (en) 2018-02-28
AU2015395514B2 (en) 2019-10-10
KR20180006972A (ko) 2018-01-19
HK1244136A1 (zh) 2018-07-27
BR112017024902A2 (pt) 2018-07-31
WO2016184527A1 (en) 2016-11-24
MX2017014914A (es) 2018-06-13
US20180160142A1 (en) 2018-06-07
CA2986613C (en) 2020-04-28
MY190056A (en) 2022-03-23
KR102162856B1 (ko) 2020-10-07
CA2986613A1 (en) 2016-11-24
JP2018520565A (ja) 2018-07-26
CN107646194A (zh) 2018-01-30
JP6593934B2 (ja) 2019-10-23
AU2015395514A1 (en) 2017-12-21

Similar Documents

Publication Publication Date Title
CN107646194B (zh) 用于视频运动补偿的装置和方法
KR101769937B1 (ko) 영상 부호화 및 복호화 장치 및 그 방법
EP3598758B1 (en) Encoder decisions based on results of hash-based block matching
JP4565010B2 (ja) 画像復号装置および画像復号方法
WO2005034517A1 (en) Adaptive reference picture generation
EP2041981A2 (en) Methods and apparatus for adaptive reference filtering
KR102146436B1 (ko) 비디오 모션 보상을 위한 장치 및 방법
JP2024113089A (ja) 映像デコード方法及びその装置
JP7481544B2 (ja) 画像デコード方法及びその装置
CN114258684A (zh) 图像解码方法及其设备
KR20220017426A (ko) 크로마 성분에 대한 영상 디코딩 방법 및 그 장치
CN116113985A (zh) 利用基于深度学习的环内滤波器进行视频编码和解码
KR20220003119A (ko) 크로마 양자화 파라미터 데이터에 대한 영상 디코딩 방법 및 그 장치
CN117981323A (zh) 使用可选的基于神经网络的编码工具的视频编码
CN117941352A (zh) 帧间预测方法、编码器、解码器以及存储介质
KR20130049603A (ko) Hevc 디블록킹 필터 병렬 처리 알고리즘 및 hevc 디블록킹 필터에서 병렬 처리가 가능하게 만든 방법
JP2007082048A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1244136

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant