CN104754337B - 视频编码方法 - Google Patents
视频编码方法 Download PDFInfo
- Publication number
- CN104754337B CN104754337B CN201410190465.8A CN201410190465A CN104754337B CN 104754337 B CN104754337 B CN 104754337B CN 201410190465 A CN201410190465 A CN 201410190465A CN 104754337 B CN104754337 B CN 104754337B
- Authority
- CN
- China
- Prior art keywords
- information
- elementary area
- frame
- video coding
- video
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供一种视频编码方法。该视频编码方法包括:接收与画面的图像单元相关的视频数据;根据编码器***信息及/或图像单元信息确定图像单元的参考类型;其中编码器***信息与用于编码视频数据的画面编码器相关,以及图像单元信息从图像单元取得,以及其中参考类型包括参考和非参考;以及根据确定的参考类型编码视频数据。本发明所提供的视频编码方法,可改善编码效率。
Description
技术领域
本发明是有关于一种视频编码方法,特别是有关于一种包括参考类型的视频编码方法。
背景技术
自适应帧内(Intra)/帧间(Inter)预测是广泛用于视频编码领域的编码技术,其中帧或图像单元是帧内编码或帧间编码。在编码之前,每一个视频帧或图像单元被分配用于压缩的帧类型(或图像单元类型)。用于压缩的帧类型(或图像单元类型)为帧内帧或帧内编码帧(Intra-frame or Intra coded frame,I-frame)、预测帧(Predicted frame,P-frame)以及双向预测帧(Bi-directional predicted frame,B-frame)。其中,帧内帧或帧内编码帧简称为I帧;预测帧简称为P帧;双向预测帧简称为B帧。I帧为将图像编码至数据流中的帧内帧并不需要其他帧而能被重建。在编码期间,I帧是能被其他帧作为参考帧的关键帧。P帧或B帧是基于其他帧而被预测的帧间帧。P帧包括来自它的先前帧的图像的改变并因此包括来自先前I帧或P帧的运动补偿差异信息(motion-compensated differenceinformation)。B帧包括来自先前和后续I帧或P帧的差异信息。在现有的视频编码方法中,在编码之前决定具体指定帧内/帧间帧的排列顺序的帧类型结构。视频序列的帧类型结构可通过具有预定帧类型和参考信息的连续画面组(Group Of successive Pictures,GOP)来反映,其中参考信息包括参考帧的数目、参考方向以及参考距离。举例来说,现有的画面组的四个画面帧类型结构为IBBP,IBPB,IPPP或IIII。
在视频序列的每一个帧的帧类型和帧类型结构确定之后,分配每一个帧间帧(例如,P帧或B帧)的拉姆达(lambda)表。在拉姆达表中λ值用于视频编码模式决策。在模式决策过程期间,估计每一个成本函数的视频压缩的成本,以使得确定具有最小成本的最佳压缩模式。基于失真和编码位的数目计算对应于编码模式的视频压缩成本。利用如下公式计算视频压缩的成本:
Cost=a*Distortion+λ*Bits (1)
其中,a为与失真相关的常数;λ与编码位的数目相关。根据给定的量化参数(Quantization Parameter,QP)值计算λ值。λ值可以通过如下公式计算:
λ=f(QP) (2)
若利用低量化参数QP来编码图像的编码单元,则失真将较低以及编码位的数目将较多。若利用高量化参数QP来编码图像的编码单元,则编码位的数目将较低。在视频编码的模式决策中λ值起重要作用。当λ值较高时,视频压缩的成本更多地依赖于编码位的数目。另一方面,若λ值较低,视频压缩的成本更多地依赖于失真(或图像的质量)。因此,λ值是在失真和编码位的数目之间的加权因子(weighting factor)。在现有的方法中,视频序列的每一个帧的拉姆达表被确定为序列级(sequence level)。一旦确定连续画面组的帧类型结构,拉姆达表就固定下来。
利用视频编码的预定帧类型结构和固定的拉姆达表的现有视频编码方法具有一些缺点。在某些情况下,具有固定拉姆达表的预定帧类型结构不能对所有场景的视频压缩表现良好。预定帧类型结构或非自适应帧类型视频编码过程可引起图像质量恶化,特别是在快速运动的场景中。恶化部分的原因在于,依据画面的类型将每个画面视为参考画面或非参考画面,而没有考虑图像的特点。举例来说,若帧类型结构为“IPPP”,则通过每一个P帧的先前帧(即,I帧或P帧)来预测每一个P帧。换句话说,除在利用“IPPP”编码的画面组中的最后一个P帧之外,每一个P帧被编码为参考画面。若在具有“IPPP”编码结构的序列中的第一P帧发生快速运动或场景变化,第一P帧将要求较高的比特率来编码。然而,现有的编码技术利用固定的编码结构并不能有效地使用可用的(available)比特率预算。另一方面,若在此情况下高数据率被分配至第一P帧,则***可能不具有足够的比特率来分配给后续的P帧。因此,固定的帧类型结构不能适应帧的特点。用于现有的编码***中的拉姆达表也没有考虑帧的特点。因此,它不能适应帧的特点而在图像质量(或失真)或比特方面衡量更多。
对于在图像序列中由另一个画面参考的画面,需要重建该参考的画面并在编码器中由另一画面将该参考的画面作为参考画面来使用。因此,参考的画面将消耗更多的处理功率以及更多的存储带宽。然而,在现有的编码***中,对于固定的帧类型结构,需要的计算功率和需要的***带宽大致是固定的,不能适应给定的编码***的特定计算功率和存储带宽。需要开发一种自适应的方法来确定视频编码的帧类型结构和拉姆达表以改善性能、或适应***处理功率或***带宽限制。
发明内容
有鉴于此,本发明提出一种视频编码方法。
根据本发明第一实施方式,提供一种视频编码方法,该视频编码方法包括:接收与画面的图像单元相关的视频数据;根据编码器***信息及/或图像单元信息确定图像单元的参考类型;以及根据确定的参考类型编码视频数据。其中编码器***信息与用于编码视频数据的画面编码器相关,以及图像单元信息从图像单元取得,以及其中参考类型包括参考和非参考。
根据本发明第二实施方式,提供一种视频编码方法。该视频编码方法包括:接收与视频序列的多个图像单元相关的视频数据;确定与每一个图像单元相关的图像单元信息;根据图像单元信息确定多个图像单元的参考结构;以及根据确定的参考类型编码视频数据。其中参考结构包括每一个图像单元的参考类型以及其中参考类型包括参考和非参考。
根据本发明第三实施方式,提供一种视频编码方法。该视频编码方法包括:接收与当前帧相关的视频数据;确定与一个或多个先前编码帧相关的第一信息;基于包括第一信息的设计信息确定拉姆达表;基于拉姆达表确定当前帧的多个编码参数;以及使用确定的多个编码参数编码该当前帧。
本发明所提出的视频编码方法,可改善编码效率。
附图说明
图1为视频解码器的实施方式的***方框图。
图2为视频解码器的实施方式的***方框图。
图3为视频解码器的实施方式的***方框图。
图4A为根据本发明一实施方式的视频编码***的示意图。
图4B为根据本发明另一实施方式的视频编码***的示意图。
图5A为根据本发明实施方式的包括自适应参考/非参考帧选择的视频编码***的视频编码过程的流程图。
图5B为基于图像单元信息的图像单元组的自适应参考/非参考帧选择的流程图。
图5C为根据本发明实施方式的基于确定的参考类型的修正帧/切片类型结构的视频编码***的视频编码过程的流程图。
图6为根据本发明实施方式的具有自适应参考/非参考帧选择的IPPPPP视频序列的示意图。
图7为根据本发明实施方式的具有自适应参考/非参考帧选择的IBBBPBBBP视频序列的示意图。
图8为根据本发明实施方式的具有自适应参考/非参考帧选择的IPPPP视频序列的示意图。
图9为根据本发明实施方式的具有自适应修正的帧类型结构的IPPPPIPPPP视频序列的示意图。
图10为基于先前编码帧的分析信息的具有自适应拉姆达表决策的视频编码***的视频编码程序的流程图。
图11为基于输入帧的预分析信息和先前编码帧信息的具有自适应拉姆达表决策的视频编码***的视频编码过程的流程图。
图12为根据本发明实施方式的对于图像单元的具有自适应参考/非参考帧决策选择的视频编码***的视频编码过程的流程图。
图13为根据本发明实施方式的具有视频序列的自适应帧/切片类型结构决策的视频编码的流程图。
图14为根据本发明实施方式的具有自适应拉姆达表决策的视频编码***的视频编码过程的流程图。
具体实施方式
在本发明的实施方式中,描述了在视频编码***中自适应确定图像单元的参考/非参考类型和拉姆达表的方法。图像单元可以是一个帧或一个切片,其中每一个切片包括一组编码单元。参考类型指示每一个图像单元是否由其他图像单元参考。因此,图像单元能被分配为参考帧内编码类型、非参考帧内编码类型、参考预测类型、非参考预测类型、参考双向预测类型、和非参考双向预测类型等。因此,一个帧可以被确定为参考I帧、非参考I帧、参考P帧、非参考P帧、参考B帧或非参考B帧等。
为确定视频序列或图像单元组的图像单元(例如,帧或切片)类型结构,使用自适应方法来确定每一个图像单元的参考类型。然后根据确定的参考类型,自适应地确定或调整图像单元类型结构。根据确定的参考类型,也自适应地调整对应于每一个图像单元的拉姆达表,以使得可以根据拉姆达表修正模式决策过程。
根据本发明的另一实施方式,接收与视频序列的多个图像单元相关的视频数据;确定与每一个图像单元相关的图像单元信息;根据图像单元信息确定该多个图像单元的参考结构,其中参考结构包括每一个图像单元的参考类型以及其中参考类型包括参考和非参考;以及根据确定的参考类型编码视频数据。参考结构包括参考方向和参考距离。参考结构可以在编码一个或多个先前图像单元之后确定。
若在解码过程中其他图像参考一个图像单元的一个或多个信息,则在本发明中将该图像单元定义为参考图像单元。图像单元信息包括时间信息和空间信息。时间信息可以为图像单元的运动矢量信息;空间信息可以为像素信息,而像素信息可以为重建的像素值,以及空间信息可以为图像单元的帧内预测信息(例如,帧内预测方向)、方差(例如,像素值的方差值)、量化信息(例如,量化步骤、量化参数)或变换信息(例如,变换尺寸、变换系数)、或频率响应(例如,经由频率变换产生的变换信息)。根据本发明的实施方式,图像单元信息可以从如下至少一个信息中选择:图像单元及/或至少一个先前图像单元的空间信息;以及从空间信息提取的时间信息。根据本发明的另一实施方式,图像单元信息为在图像单元和至少一个先前图像单元之间的运动信息(例如,运动矢量信息)。若在解码过程中其他图像不参考该图像单元相关的图像单元信息,则在发明中将该图像单元定义为非参考图像单元。
对于视频压缩来说,在编码侧确定用于预测其他图像单元的所有图像信息。图像单元信息采用编码视频数据的比特流的方式发信号,以使得能够在解码侧恢复图像单元信息。因此,图像单元信息可以从比特流中恢复。图1~图3描述了产生重建像素的解码***。
图1为视频解码器的实施方式的***方框图。解码比特流110包括编码数据(codeddata),例如帧内/帧间预测块的残差(residue)。解码比特流110也包括需要执行解码任务的运动信息和其他编码信息,例如量化参数。通过逆量化(inverse quantization)120和逆变换130处理解码比特流110,以重建通过帧内/帧间预测编码的残差。自逆变换130得到的重建残差通过使用加法器150被加入到来自帧内/帧间预测140的预测数据,以形成重建的视频数据。部分重建像素缓冲器160可用于改善帧内/帧间预测的存储器存取效率。然后应用去区块滤波器(De-blocking filter)170于解码视频数据,以通过降低特定围绕块边界的噪声来改善视频质量。存储去区块的结果于重建像素缓冲器180中。在重建像素缓冲器180中的重建像素也提供给帧内/帧间预测140。如图1所示,帧内/帧间预测140也从解码比特流110接收数据(例如,编码类型、运动矢量、帧内预测模式等)以执行帧内/帧间预测。此外,去区块滤波器170也就从解码比特流110接收数据(例如,去区块滤波器参数)以执行去区块。来自重建像素缓冲器180的最后结果可用于显示器190显示视频数据。
图2和图3视频解码器的实施方式的***方框图。除添加的采样自适应偏移(Sample adaptive offset,SAO)220之外,在图2中的解码器***与图1中的解码器***相似。相似的模块分配如图1所示的相同的标号。采样自适应偏移220应用来自去区块滤波器170的去区块数据以进一步改善视频质量。如图2所示,采样自适应偏移220接收来自解码比特流110的数据(例如,采样自适应偏移类型和采样自适应偏移值)以适当应用采样自适应偏移。除了添加的自适应环路滤波器(adaptive loop filter,ALF)330之外,在图3中的解码***也与图2中的解码***实质上相似。相似的模块分配如图2所示的相同的标号。自适应环路滤波器330应用来自采样自适应偏移220的已处理数据,以进一步提高视频质量。自适应环路滤波器330也接收来自解码比特流110的与自适应环路滤波关联的滤波器信息,以适当应用自适应环路滤波。
根据本发明的实施方式,图像单元的参考类型可以基于编码器***信息及/或图像单元信息来确定。编码器***信息与用于编码视频数据的视频编码***相关。编码器***信息可以从带宽信息、功率信息、信道(channel)能力信息、计算能力信息、以及时间预算中选择。图像单元信息可以从图像单元得到。
视频编码***可能受益于自适应地确定图像单元的参考类型来降低外部设备的负载。视频编码***可以进一步受益于自适应地确定图像单元的参考类型来改善编码效率或改善重建视频图像的质量。若视频编码***用于降低负载,外部设备可以为帧处理引擎,例如图像信号处理器(image signal processor,ISP)、图形处理单元(graphicprocessing unit,GPU)、显示设备。外部设备也可以对应于运动滤波器、位置传感器、发送设备或接收设备。发送设备或接收设备可以为无线设备或有线设备。负载表示如下一个信息的数目:外部设备的带宽、功率、信道能力、计算能力、时间预算。
图4A为根据本发明一实施方式的视频编码***的示意图。视频编码***包括确定单元410以及画面编码器420。确定单元410接收图像信号、编码***信息、以及配置信息。确定单元410被配置为自适应地确定图像单元的参考类型和拉姆达表。确定单元410也被配置为自适应地确定图像单元组的图像单元类型结构。在此实施方式中,确定单元410发送图像单元的参考类型和拉姆达表以及图像单元组的图像单元类型结构至画面编码器420。画面编码器420可以为视频编码器、运动图像编码器、或图像编码器。画面编码器420接收图像单元各自的图像信号、参考类型以及拉姆达表,接收图像单元组的图像单元类型结构,以及接收编码器配置信息以准备编码器操作。画面编码器420根据参考类型、拉姆达表、图像单元类型结构、以及编码器配置信息编码图像信号以产生编码的比特流。图4B为根据本发明另一实施方式的视频编码***的示意图。在另一实施方式中,如图4B所示,确定单元410可以存储图像单元的参考类型以及拉姆达表至信息清单,以及存储图像单元组的图像单元类型结构至存储器430。其中,信息清单存储于存储器430中。画面编码器420自存储器430接收图像单元的参考信息和拉姆达表以及图像单元组的图像单元类型结构。
图5A为根据本发明实施方式的包括自适应参考/非参考帧选择的视频编码***的视频编码过程的流程图。其中,自适应地确定每一个图像单元的参考类型。图像单元可以为如上所述的帧或切片,以及每一个切片包括视频图像的一个或多个编码单元。基于编码器***信息及/或图像单元信息确定参考类型。对于来自视频比特流的每一个图像单元,如步骤501所示,在编码之前首先分析与当前图像单元相关的信息。如步骤502所示,然后基于分析结果确定当前图像单元的参考类型。此外,在步骤502中,也可以确定当前图像单元的图像单元类型。举例来说,帧类型或切片类型(例如,I类型、P类型、或B类型)也可和当前图像单元的参考/非参考决策一起确定。举例来说,若图像单元对应于一个帧,则当前帧可以被设置为参考I帧、非参考I帧、参考P帧、非参考P帧、参考B帧、非参考B帧,或其他。
在步骤503中,传递图像单元类型以及参考类型至画面编码器。除确定图像单元类型和参考类型的信息之外,编码器也需要其他配置信息,例如编码器配置信息,以适当地准备画面编码器操作。因此,如步骤504所示,传递或提供对应的图像单元的编码器配置信息至画面编码器。编码器配置信息是指用于视频编码的参数,例如比特率、帧率、图像分辨率、轮廓、编码工具的开关信息。根据本发明的另一实施方式,编码器配置信息也可以包括图像单元类型。在步骤505中,根据编码器配置信息,在画面编码器中修正当前图像单元的模式决策过程,然后编码当前图像单元。当提供编码器配置信息时,编码器将执行率失真(rate-distortion)优化过程或其他决策过程,以选择一个模式来获得优化或较佳的性能。举例来说,编码器可以决定:是否将帧内或帧间编码应用至下层的(underlying)图像单元;设置使用哪一个量化参数;或是否分割区块为子区块以用于编码或预测操作。在步骤506中,执行过程以确定是否编码最后一个图像单元。若当前图像单元不是最后一个图像单元,则在步骤507中选择将被编码的下一个图像单元作为在编码之前处理的当前图像单元。
图5B为基于图像单元信息的图像单元组的自适应参考/非参考帧选择的流程图。图5C为根据本发明实施方式的基于确定的参考类型的修正帧/切片类型结构的视频编码***的视频编码过程的流程图。图像单元组由一个或多个图像单元组成。每一个图像单元可以为如上所述的帧或切片,以及每一个切片包括视频图像的一个或多个编码单元。如图5B所述,首先确定每一个图像单元的参考类型,并将每一个图像单元的参考类型写入信息清单。如图5C所示,对于编码每一个图像单元组来说,从信息清单中读取图像单元类型的信息,并传递至编码器。
为确定每一个图像单元的图像单元类型,在步骤510中分析与当前图像单元相关的信息,例如图像单元信息及/或编码器信息。如步骤520所示,基于分析结果确定当前图像单元的参考类型。此外,也可以确定当前图像单元的图像单元类型。举例来说,也可利用当前图像单元的参考/非参考决策确定帧类型或切片类型。在步骤525中,存储参考类型信息和图像单元类型信息(例如,帧或切片类型信息)于信息清单中。信息清单存储于存储器430中。在步骤526中,确定当前图像单元是否是该组的最后一个图像单元。若当前图像单元不是最后一个,则在步骤530中选择下一个图像单元作为处理的当前的图像单元,以确定其图像单元类型,直到该组的所有图像单元已经分配参考类型。
当图像单元将被编码时,在步骤535中,自信息清单中读取参考类型和图像单元类型信息,然后在步骤540中将参考类型和图像单元类型信息传递至画面编码器。除确定图像单元类型和参考类型的信息之外,编码器也需要其他配置信息,例如,编码器配置信息,以准备画面编码器操作。因此,如步骤550所示,传递或提供对应的图像单元的编码器配置信息至画面编码器。编码器配置信息包括比特率、帧率、图像分辨率、轮廓、编码工具的开关信息、或上述信息的组合。在步骤560中,根据画面编码器的编码器配置信息,修正模式决策过程以用于编码画面编码器中的当前图像单元。当提供编码器配置信息时,编码器将执行率失真优化过程或其他决策过程,以选择一个模式来获得优化或较佳的性能。举例来说,编码器可以决定:是否将帧内或帧间编码应用至下层的(underlying)图像单元;设置使用哪一个量化参数;或是否分割区块为子区块以用于编码或预测操作。为进一步提高编码效率或降低编码***的负载,在步骤560中也修正帧或切片类型。在编码的所有参数提供或传递至编码器之后,在步骤570中,根据确定参考类型和图像单元类型编码当前图像单元。在步骤575中,确定当前图像单元是否是最后一个图像单元。在步骤580中,选择下一个图像单元作为被编码的当前图像单元。
与图5A所示的流程图不同,在本发明的一个实施方式中,在步骤560中,也可以在修正模式决策过程之前、同时、或之后修正图像单元(例如,帧或切片)类型结构。图像单元类型结构指定图像单元组的顺序和参考关系,并且图像单元类型结构可以基于其他配置信息来确定。可使用的配置信息可以为编码场景、高质量模式或低质量模式、高功率模式或低功率模式、或高带宽模式信息或低带宽模式信息。当输入配置信息指示图像单元组在较大运动场景、高质量模式、高功率模式、或高带宽模式时,编码更多的图像单元作为参考图像单元以改善重建质量。反之,编码更多的图像单元作为非参考图像单元以改善编码效率或降低视频编码***的负载。若编码一组或多组图像单元,则帧或切片类型结构也可以根据先前编码图像单元的信息或编码图像单元的编码信息,或输入帧或切片的预分析信息来确定,以及输入帧或切片从当前图像单元或后续图像单元中选择。根据本发明另一实施方式,用于确定帧或切片类型结构的编码图像单元的信息可从视频编码***中的重建像素中得到。
图6为根据本发明实施方式的具有自适应参考/非参考帧选择的IPPPPP视频序列的示意图。其中,图像单元对应于一个帧。视频序列包括六个帧。如图6所示,预先确定的图像单元类型(例如,帧类型)表示为IrefPnon-refPrefPnon-refPnon-refPref。在图6中,“non-ref”表示非参考视频;“ref”表示参考视频。每一个箭头描述由参考帧预测的从参考帧至帧间帧的参考关系。根据本发明的实施方式,参考/非参考决策可以基于编码器***信息及/或图像单元信息而执行。举例来说,当分析指示当前帧包括大运动场景时,当前帧被编码为参考帧。否则,当前帧被编码为非参考帧。由于与非参考帧/切片相关的编码数据不被用作处理其他帧/切片的参考数据,非参考帧/切片的重建像素值不必写回参考存储器。因此,非参考帧/切片的使用将减轻处理功率和存储器带宽的需要。编码效率将通过微调(fine tune)参考或非参考帧的模式决策处理来改善。由于没有B帧,如图6所示的视频序列的编码结构适用于低延迟的应用。
图7为根据本发明实施方式的具有自适应参考/非参考帧选择的IBBBPBBBP视频序列的示意图。预先确定的图像单元类型或帧类型表示为IrefBrefBnon-refBrefPrefBnon-refBnon- refBnon-refPref。箭头描述参考帧和帧间帧之间的参考关系。由于确定视频序列的多个B帧,视频序列的编码结构不适合低延迟应用。在现有的编码方法中,B帧通常不参考其他帧。然而,在本发明的实施方式中的B帧可用作参考或非参考帧,例如如图7所示的实施方式。当可用更多的计算功率时,参考帧的数目可以增加。
图8为根据本发明实施方式的具有自适应参考/非参考帧选择的IPPPP视频序列的示意图。在此实施方式中,视频序列的帧类型预先确定为IPPPP,在IPPPP中每一个帧间帧通过先前帧来预测。如帧组810所示,预先确定的帧类型结构通过箭头来说明。根据是否为高带宽模式确定帧类型。若当前视频序列的配置信息指示低带宽模式,视频序列的帧类型结构可以被调整为使用较少参考帧。举例来说,仅第一个I帧和第三的P帧作为参考帧来使用。如帧组820所示,通过箭头说明调整的参考关系。由于非参考帧的数据不被写入,降低了需要的带宽。
图9为根据本发明实施方式的具有自适应修正的帧类型结构的IPPPPIPPPP视频序列的示意图。视频序列包括帧组910和帧组920的两个相邻组。每一个组包括具有预先确定的帧类型“IPPPP”的五个帧。在每一个组中,基于低运动模式,第一帧和第三帧预先确定为参考帧以及其他三个帧被分配为非参考帧。在编码第一组帧之后,根据先前编码信息或输入帧的预分析信息,调整第二组的帧类型结构。如图9所示,当用于确定参考类型的信息指示该组为高运动模式时,调整第二组的帧组920的帧类型结构。增加参考帧的数目以改善重建视频画面的质量。已调整的组的帧组925的前四组用作参考帧,并且参考关系如图9中的箭头所示。
如图5A~5C所示,在确定每一个帧的帧类型和参考类型之后,修正模式决策过程或编码机制。为修帧模式决策过程,根据现有的帧类型和参考类型自适应地调整拉姆达表。对于给定的量化参数值,根据视频序列中的帧类型和帧类型的数目改变拉姆达的值。举例来说,对于给定的量化参数值,P帧的拉姆达值不同于B帧的拉姆达值。当两个关键帧(用于预测其他帧的I帧或P帧)之间的B帧的数目改变时,根据该B帧的数目改变B帧的拉姆达值。根据本发明的实施方式,自适应地调整每一个帧的拉姆达表以找到改善编码效率的更佳的拉姆达值。因此,通过微调模式决策过程改善编码效率。
基于与被处理的帧相关的设计信息确定拉姆达表。设计信息包括第一信息(例如,先前编码帧的信息)及/或第二信息(例如,输入帧的分析信息)。从运动矢量、帧内模式比率(ratio)、帧间模式比率、特定编码模式比率、帧率、比特率、编码比特、帧类型或其组合中选择设计信息。根据本发明的实施方式,帧内模式比率被定义为由一个或多个帧的帧内模式编码的一部分宏块。举例来说,若在一个帧内由帧内模式编码的宏块的数目为X以及宏块的总数为N,则帧的帧内模式比率为X/N。若在帧1至帧n中由帧内模式编码的宏块的数目表示为X1至Xn,则n个帧的帧内模式比率为(X1+X2+…+Xn)/N。若在帧内模式比率的计算中考虑加权因子,n个帧的帧内模式比率为(a1X1+a2X2+…+anXn)/N,其中,a1至an分别代表这些帧的相应的加权值。相似地,帧间模式比率意味着在一个或多个帧中由帧间模式编码的一部分宏块。对于特定的模式比率,它是用来表示由特定的模式编码的一部分宏块。特定的模式是指特定的编码模式,该特定的编码模式可以为帧内4x4模式、帧内8x8模式、帧内16x16模式、跳过模式(skip mode)、帧间16x16模式等。
图10为基于先前编码帧的分析信息的具有自适应拉姆达表决策的视频编码***的视频编码程序的流程图。根据本发明的实施方式,每一个帧的拉姆达表被确定为帧级(frame level)。在步骤1010中,序列级设置用于执行视频编码***的初始化。除拉姆达表之外,编码视频序列的参数被确定为序列级(sequence level)。在步骤1020中,帧级设置可以为用于编码一个帧的编码器配置,以及根据一个或多个先前编码帧的信息(例如,分析结果)确定当前编码帧的拉姆达表。然后,在步骤1030中,根据确定的拉姆达表,视频编码***编码当前帧。在步骤1040中,确定当前帧是否为视频序列的最后一个帧,则序列编码结束。否则,在步骤1050中,分析当前帧以产生用于确定下一个帧的拉姆达表的信息并积累一个或多个编码帧的信息。在步骤1060中,在帧序列中进行处理的下一个帧被设置为当前帧。
图11为基于输入帧的预分析信息和先前编码帧信息的具有自适应拉姆达表决策的视频编码***的视频编码过程的流程图。在此示范性流程图中,每一个帧的拉姆达表也确定为帧级。在步骤1110中,序列级设置用于执行视频编码***的初始化。除拉姆达表之外,编码视频序列的参数被确定为序列级。帧级设置从步骤1120开始。为确定当前帧的拉姆达表,在步骤1120中预分析当前帧的信息。在步骤1125中,基于当前帧和一个或多个先前编码帧的信息确定当前帧的拉姆达表。然后,在步骤1130中,根据确定的拉姆达表,视频编码***编码当前帧。在步骤1140中,确定当前帧是否为序列的最后一个帧,则结束序列的编码。否则,在步骤1150中分析当前帧以产生用于确定下一个帧的拉姆达表的信息,并积累一个或多个编码帧的信息。在步骤1160中,在帧序列中处理的下一个帧被设置为当前帧。
图12为根据本发明实施方式的对于图像单元的具有自适应参考/非参考决策的视频编码***的视频编码过程的流程图。为编码图像单元,在步骤1210中接收与图像单元相关的视频数据。然后,在步骤1220中确定图像单元的参考类型。参考类型包括参考和非参考。基于编码器***信息及/或图像单元信息确定参考类型。编码器***信息与用于编码视频数据的视频编码***相关。从带宽信息、功率信息、信道能力信息、计算能力、和时间预算中选择编码器***信息。从视频编码***的外部设备得到编码器***信息。外部设备可以为视频压缩器的先前级(previous stage)、后续级,或嵌入于视频压缩器中。编码器***信息来自至少一个如下设备:帧处理引擎、运动滤波器、位置传感器、发送或接收设备。帧处理引擎可以为图像信号处理器,图形处理单元或显示功能引擎。发送或接收设备可以为无线或有线设备。图像单元信息可以从图像单元取得。现有的图像单元类型,例如I类型、P类型、B类型,也可以在步骤1220中确定。确定现有的图像单元类型和参考类型的步骤可以同时进行,或依次进行。在步骤1230中,基于确定的参考类型,编码视频数据(例如图像单元)。在此实施方式中,从画面编码器的先前级中的第一设备及/或嵌入于画面编码器的第二设备获得图像单元信息。其中,第一设备对应于图像信号处理器(image signal processor,ISP)或预处理元件。第二设备对应于画面编码器的部分处理单元(例如运动分析)、预处理元件、或图像分析元件。然而,以上描述仅用于解释本发明,而并非用于限制本发明。
图13为根据本发明实施方式的具有视频序列的自适应帧/切片类型结构决策的视频编码的流程图。其中基于图像单元信息确定视频序列的帧/切片类型结构。为编码视频序列,在步骤1310中接收与视频序列的图像单元相关的数据。视频序列包括一个或多个图像单元。在步骤1320中确定与每一个图像单元相关的图像单元信息。在步骤1330中根据图像单元信息确定视频序列的帧/切片类型结构。帧/切片类型结构包括参考类型的信息、现有的图像单元类型、以及用于预测序列的帧间帧的参考帧的位置。参考类型包括参考和非参考。在步骤1340中,基于帧/切片类型结构,编码视频序列。
图14为根据本发明实施方式的具有自适应拉姆达表决策的视频编码***的视频编码过程的流程图。在步骤1410中接收与当前帧相关的视频数据之后,在步骤1420中分析先前编码帧的信息。然后在步骤1430中确定当前帧的拉姆达表。根据先前编码帧的信息或连同输入帧的预分析信息确定拉姆达表。然后在步骤1440中基于拉姆达表确定当前帧的编码参数。在获得所有参数之后,在步骤1450中利用确定的编码参数编码当前帧。
在图5至图14所示的示范性流程图仅用于解释说明的目的。本领域技术人员可以在不脱离本发明精神的范围内可以从重新安排,组合或拆分图5至图14所示的步骤来实现本发明。本发明的上述实施方式可以实现于各种硬件、软件代码、或其结合中。举例来说,本发明的实施方式可以为集成于视频压缩芯片的电路或集成于视频压缩软件中执行上述处理过程的程序代码。本发明的实施方式也可以为在数字信号处理器上处理上述过程的程序代码。本发明也可以涉及计算机处理器、数字信号处理器、微处理器,或现场可编程门阵列(FPGA)执行的一些功能。根据本发明的实施方式,这些处理器可以被配置为通过执行本发明定义的特定方法的机器可读软件代码或固件代码,来执行特定任务。软件代码或固件代码可以不同的编程语言和不同的格式或样式来开发。软件代码也可以被编译以用于不同的目标平台。然而,不同的代码格式、样式和软件代码的语言以及配置代码的其他方式来执行本发明相一致任务的不会脱离本发明的精神和范围。
虽然本发明已以较佳实施方式揭露如上,然而必须了解其并非用以限定本发明。相反,任何本领域技术人员,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围应当以权利要求书所界定的保护范围为准。
Claims (26)
1.一种视频编码方法,其特征在于,该视频编码方法包括:
接收与画面的图像单元相关的视频数据;
根据编码器***信息及图像单元信息确定该图像单元的参考类型;其中该编码器***信息与用于编码该视频数据的画面编码器相关,以及该图像单元信息从重建像素得到,以及其中该参考类型包括参考和非参考;以及
根据确定的该参考类型编码该视频数据;
其中,该视频编码方法进一步包括:
从一个或多个外部设备收集该编码器***信息以用于确定该图像单元的该参考类型;以及
其中根据该编码器***信息确定该参考类型以降低该一个或多个外部设备的负载或改善编码效率。
2.根据权利要求1所述的视频编码方法,其特征在于,该图像单元对应于该画面的一个帧或一个切片,以及每一个切片包括编码单元。
3.根据权利要求1所述的视频编码方法,其特征在于,进一步包括确定该图像单元的图像单元类型,其中该图像单元类型从类型组中选择,该类型组包括参考帧内编码类型、非参考帧内编码类型、参考预测类型、非参考预测类型、参考双向预测类型、非参考双向预测类型。
4.根据权利要求1所述的视频编码方法,其特征在于,进一步包括:
接收该画面编码器的编码器配置信息;
修正在该画面编码器中编码该图像单元的模式决策过程。
5.根据权利要求4所述的视频编码方法,其特征在于,该编码器配置信息包括图像单元类型、比特率、帧率、图像分辨率、轮廓以及编码工具的开关信息。
6.根据权利要求1所述的视频编码方法,其特征在于,当确定的该参考类型对应于非参考时,在解码过程中其他图像单元不参考与该图像单元相关的图像单元信息;
以及该图像单元信息从如下至少一个信息中选择:运动矢量信息、帧内预测方向、量化步骤、量化参数、变换尺寸、变换系数。
7.根据权利要求1所述的视频编码方法,其特征在于,该一个或多个外部设备位于视频压缩器的先前级或后续级、或嵌入于该视频压缩器中。
8.根据权利要求1所述的视频编码方法,其特征在于,该一个或多个外部设备包括:
从图像信号处理器、图形处理单元、或显示设备中选择的一个或多个帧处理引擎,一个或多个运动滤波器,一个或多个位置传感器,发送设备,接收设备、或其组合;以及
其中该发送设备或该接收设备为无线设备或有线设备。
9.根据权利要求1所述的视频编码方法,其特征在于,该编码器***信息包括:带宽信息、功率信息、信道能力信息、计算能力信息、时间预算信息、或其组合。
10.根据权利要求1所述的视频编码方法,其特征在于,该一个或多个外部设备的负载对应于带宽、功率、信道能力、计算能力、或时间预算的数目。
11.根据权利要求1所述的视频编码方法,其特征在于,该视频编码方法进一步包括:
分析或接收该图像单元信息;以及
其中根据该图像单元信息确定该参考类型。
12.根据权利要求11所述的视频编码方法,其特征在于,该图像单元信息为在该图像单元和至少一个先前图像单元之间的运动信息。
13.根据权利要求11所述的视频编码方法,其特征在于,该图像单元信息从如下至少一个信息中选择:
该图像单元及/或至少一个先前图像单元的空间信息;以及
从该空间信息提取的时间信息。
14.根据权利要求13所述的视频编码方法,其特征在于,该空间信息包括像素值、像素值的方差、帧内预测方向和频率响应。
15.根据权利要求11所述的视频编码方法,其特征在于,从该画面编码器的先前级中的第一设备及/或嵌入于该画面编码器的第二设备获得该图像单元信息。
16.根据权利要求15所述的视频编码方法,其特征在于,该第一设备对应于图像信号处理器或预处理元件。
17.根据权利要求1所述的视频编码方法,其特征在于,该视频编码方法进一步包括:修正该图像单元的模式决策过程。
18.一种视频编码方法,其特征在于,该视频编码方法包括:
接收与视频序列的多个图像单元相关的视频数据;
确定与每一个图像单元相关的图像单元信息;
根据该图像单元信息确定该多个图像单元的参考结构,其中该图像单元信息从重建像素得到,并且该参考结构包括每一个图像单元的参考类型;以及其中该参考类型包括参考和非参考;以及
根据确定的该参考类型编码该视频数据;
其中,该视频编码方法进一步包括:
从一个或多个外部设备收集编码器***信息以用于确定该图像单元的该参考类型;以及
其中根据该编码器***信息确定该参考类型以降低该一个或多个外部设备的负载或改善编码效率。
19.根据权利要求18所述的视频编码方法,其特征在于,该多个图像单元对应于第一组帧或第二组切片,以及每一个切片包括一个或多个编码单元。
20.根据权利要求18所述的视频编码方法,其特征在于,该图像单元信息为在该多个图像单元中的一个图像单元和至少一个先前图像单元之间的运动信息。
21.根据权利要求18所述的视频编码方法,其特征在于,该图像单元信息从如下至少一个信息中选择:
该图像单元及/或至少一个先前图像单元的空间信息;
从该空间信息提取的时间信息;以及其组合。
22.根据权利要求18所述的视频编码方法,其特征在于,该参考结构包括每一个图像单元的图像单元类型,其中该图像单元类型从类型组中选择,该类型组包括参考帧内编码类型、非参考帧内编码类型、参考预测类型、非参考预测类型、参考双向预测类型、非参考双向预测类型、或其组合。
23.根据权利要求18所述的视频编码方法,其特征在于,该参考结构进一步包括参考方向和参考距离。
24.根据权利要求18所述的视频编码方法,其特征在于,在编码一个或多个先前图像单元之后确定该参考结构。
25.根据权利要求18所述的视频编码方法,其特征在于,根据一个或多个先前图像单元的编码信息或多个非编码图像单元的预分析信息来确定该参考结构,以及该多个非编码图像单元从当前图像单元或后续图像单元中选择。
26.根据权利要求18所述的视频编码方法,其特征在于,该视频编码方法进一步包括:
修正该每一个图像单元的模式决策过程。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/140,967 | 2013-12-26 | ||
US14/140,967 US9699466B2 (en) | 2013-12-26 | 2013-12-26 | Adaptive reference/non-reference frame determination for video encoding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104754337A CN104754337A (zh) | 2015-07-01 |
CN104754337B true CN104754337B (zh) | 2018-08-07 |
Family
ID=53483423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410190465.8A Active CN104754337B (zh) | 2013-12-26 | 2014-05-07 | 视频编码方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9699466B2 (zh) |
CN (1) | CN104754337B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180053028A (ko) * | 2016-11-11 | 2018-05-21 | 삼성전자주식회사 | 계층 구조를 구성하는 프레임들에 대한 인코딩을 수행하는 비디오 처리 장치 |
AU2018230328B2 (en) * | 2017-03-10 | 2021-05-06 | Hfi Innovation Inc. | Method and apparatus of implicit intra coding tool settings with intra directional prediction modes for video coding |
US10855988B2 (en) * | 2018-12-19 | 2020-12-01 | Qualcomm Incorporated | Adaptive prediction structures |
TWI749676B (zh) | 2020-08-03 | 2021-12-11 | 緯創資通股份有限公司 | 影像品質評估裝置及其影像品質評估方法 |
TWI743919B (zh) * | 2020-08-03 | 2021-10-21 | 緯創資通股份有限公司 | 視訊處理裝置及視訊串流的處理方法 |
CN112351277B (zh) * | 2020-11-04 | 2024-04-05 | 北京金山云网络技术有限公司 | 一种视频的编码方法和装置,视频的解码方法和装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010009273A (ko) * | 1999-07-08 | 2001-02-05 | 김영환 | 움직임 정도 기술방법을 이용한 동영상 색인 및 검색방법 |
KR100491530B1 (ko) * | 2002-05-03 | 2005-05-27 | 엘지전자 주식회사 | 모션 벡터 결정 방법 |
US7010037B2 (en) * | 2002-08-06 | 2006-03-07 | Koninklijke Philips Electronics N.V. | System and method for rate-distortion optimized data partitioning for video coding using backward adaptation |
US7512278B2 (en) * | 2003-04-07 | 2009-03-31 | Modulus Video Inc. | Scalable array encoding system and method |
US20120169845A1 (en) * | 2010-12-30 | 2012-07-05 | General Instrument Corporation | Method and apparatus for adaptive sampling video content |
US10045089B2 (en) * | 2011-08-02 | 2018-08-07 | Apple Inc. | Selection of encoder and decoder for a video communications session |
US9262986B2 (en) * | 2011-12-07 | 2016-02-16 | Cisco Technology, Inc. | Reference frame management for screen content video coding using hash or checksum functions |
-
2013
- 2013-12-26 US US14/140,967 patent/US9699466B2/en active Active
-
2014
- 2014-05-07 CN CN201410190465.8A patent/CN104754337B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN104754337A (zh) | 2015-07-01 |
US20150189271A1 (en) | 2015-07-02 |
US9699466B2 (en) | 2017-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2694012C1 (ru) | Усовершенствованное кодирование с внутрикадровым предсказанием с использованием планарных представлений | |
CN104754337B (zh) | 视频编码方法 | |
KR101192026B1 (ko) | 소스 픽쳐의 시퀀스를 코딩하는 방법 또는 장치 | |
JP3964391B2 (ja) | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 | |
TWI514855B (zh) | 用於編碼單元的視訊編碼的局部多重假設預測的執行方法及裝置 | |
JP4752631B2 (ja) | 画像符号化装置、及び画像符号化方法 | |
EP3038362B1 (en) | Decoding method for intra predicting a block by first predicting the pixels at the boundary | |
CN101711481B (zh) | 使用预测数据精选进行视频编码的方法和装置 | |
CN100593955C (zh) | 用于以帧间或帧内模式编码视频图像的方法和设备 | |
EP2076046A2 (en) | Configurable performance motion estimation for video encoding | |
JP4690966B2 (ja) | 動画像符号化装置 | |
MXPA06010360A (es) | Metodos y aparato para tomar decisiones en modo rapido en codecs de video. | |
CN102413323B (zh) | 一种基于h.264的视频压缩方法 | |
GB2501836A (en) | Generating a set of motion vector predictors including one temporal motion vector predictor | |
CN106034235B (zh) | 计算编码失真度和编码模式控制的方法及其*** | |
CN102150427A (zh) | 用于使用自适应环路滤波器进行视频编码的***和方法 | |
KR20070005848A (ko) | 인트라 예측 모드 결정 방법 및 장치 | |
US20090225871A1 (en) | Image encoding apparatus | |
WO2017122604A1 (ja) | 動画像符号化装置、動画像符号化方法、及び、動画像符号化プログラムが記憶された記憶媒体 | |
KR101033769B1 (ko) | 영상 데이터의 인트라 예측 모드 결정 방법 | |
JP4994877B2 (ja) | ビデオのフレームシーケンスにおけるマクロブロックの符号化モードを選択する方法及びシステム | |
CN115118976A (zh) | 一种图像编码方法、可读介质及其电子设备 | |
JP2008271127A (ja) | 符号化装置 | |
AU2019210554B2 (en) | Enhanced intra-prediction coding using planar representations | |
JP7033946B2 (ja) | 画像符号化装置及び画像符号化プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220214 Address after: ottawa Patentee after: Xueshan Technology Co.,Ltd. Address before: China Taiwan Hsinchu Science Park Hsinchu city Dusing a road No. Patentee before: MEDIATEK Inc. |
|
TR01 | Transfer of patent right |