CN101529919A - 在视频编码中减少参考帧搜索的设备和方法 - Google Patents

在视频编码中减少参考帧搜索的设备和方法 Download PDF

Info

Publication number
CN101529919A
CN101529919A CNA2007800404677A CN200780040467A CN101529919A CN 101529919 A CN101529919 A CN 101529919A CN A2007800404677 A CNA2007800404677 A CN A2007800404677A CN 200780040467 A CN200780040467 A CN 200780040467A CN 101529919 A CN101529919 A CN 101529919A
Authority
CN
China
Prior art keywords
reference frame
frame
block
subdivision
equipment according
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2007800404677A
Other languages
English (en)
Inventor
塞拉菲姆·S·小劳卡斯
维贾雅拉克希米·R·拉温德朗
田涛
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN101529919A publication Critical patent/CN101529919A/zh
Pending legal-status Critical Current

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/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
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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
    • 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/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • 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
    • 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/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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/57Motion estimation characterised by a search window with variable size or shape
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明包括多个方面改进多媒体传输系统中的编码器中的处理的系统和方法。多媒体数据可包括动态视频、音频、静止图像或任何其它合适类型的视听数据中的一者或一者以上。多个方面包括一种对视频数据进行编码的设备和方法。举例来说,揭示一种在视频编码中减少参考帧搜索的设备和方法。

Description

在视频编码中减少参考帧搜索的设备和方法
技术领域
本申请案涉及多媒体信号处理,且更明确地说,针对于视频编码。
背景技术
多媒体处理系统(例如,视频编码器)可基于例如MPEG-x和H.26x标准等国际标准而使用多种编码方法来编码多媒体数据。此些编码方法通常针对于压缩多媒体数据以供传输和/或存储。压缩泛指从数据移除冗余的过程。
可依据一序列图片来描述视频信号,所述图片包括帧(整个图片)或半帧(例如,交错视频流包含图片的交替奇数或偶数线的半帧)。如本文中所使用,术语“帧”广泛用于指代图片、帧或半帧。多媒体处理器(例如,视频编码器)可通过将帧分割成具有(例如)16×16个像素的区块或“宏区块”来对所述帧进行编码。编码器可进一步将每一宏区块分割成若干子区块。每一子区块可进一步包含额外的子区块。举例来说,宏区块的子区块可包括16×8和8×16子区块。所述8×16子区块中的子区块可包括8×8子区块,等等。如本文中所使用,术语“区块”指代宏区块或子区块。
视频编码方法通过使用无损失或有损失压缩算法来压缩每一帧或所述帧的区块而压缩视频信号。帧内编码指代使用来自一帧的数据来对所述帧进行编码。帧间编码指代预测性编码方案,例如包含基于其它(“参考”)帧来对一帧进行编码的方案。举例来说,视频信号通常展现时间冗余,其中在时间帧序列中彼此靠近的帧具有至少若干彼此匹配或至少部分匹配的部分。编码器可利用此时间冗余来减小经编码数据的大小。
编码器可通过依据一帧与一个或一个以上参考帧之间的差异对所述帧进行编码来利用此时间冗余。举例来说,视频编码器可使用基于运动补偿的算法,所述算法使正被编码的帧的区块与一个或一个以上其它帧的部分匹配。可使经编码帧的区块在所述帧中相对于参考帧的匹配部分移位。此移位由运动向量表征。所述区块与参考帧的部分匹配部分之间的任何差异可依据残余来表征。因此,编码器可将帧编码成包含用于所述帧的特定分区的运动向量和残余中的一者或一者以上的数据。用于对帧进行编码的特定区块分区可通过大致最小化成本函数(例如,使得编码大小与由编码产生的帧的内容的失真平衡)来选择。
参考帧可包括视频信号的一个或一个以上先前帧或视频信号中跟随在所述帧之后的一个或一个以上帧。举例来说,H.264标准规定在搜索最佳匹配区块中使用五个参考帧。一般来说,较多参考帧的搜索增加了编码器寻找所述参考帧中紧密匹配正被编码的帧的区块的一个参考帧的若干部分的能力。较佳匹配具有较小差异要编码,这通常导致较紧密的编码。然而,为了寻找用于区块的参考帧的匹配部分,编码器必须针对正被编码的帧的每一区块(例如,宏区块和子区块)而搜索每一参考帧。因为匹配部分可被移位,所以编码器通常对每一参考帧执行大量比较。因此,对帧进行编码(尤其是相对于许多参考帧)可能在计算上非常复杂,进而推动编码器的大小、成本和功率消耗。因此,需要在视频编码器中降低参考帧搜索的复杂性。
发明内容
本文中所描述的系统、方法和装置的实例每一者具有若干方面,所述方面中没有单个方面独自负责其所需属性。在不限制如由所附权利要求书表达的本发明范围的情况下,现将简要地论述本发明的较显著特征。在考虑此论述之后,且尤其是在阅读标题为“具体实施方式”的部分之后,将理解所揭示的特征如何提供包括更有效、更低功率和/或更快的视频编码器的优点。
一个方面包含一种处理多媒体数据的方法。所述方法包含将一帧的一部分与多个参考帧进行比较。所述帧的所述部分包含多个子部分。所述方法进一步包含基于所述比较而从所述多个参考帧中选择参考帧。所述方法进一步包含基于所述选定参考帧而处理所述子部分中的至少一者。
另一方面包含一种用于处理多媒体数据的设备。所述设备包含将一帧的一部分与多个参考帧进行比较的装置。所述帧的所述部分包含多个子部分。所述设备进一步包含用于基于所述比较而从所述多个参考帧中选择参考帧的装置。所述设备进一步包含用于基于所述选定参考帧而处理所述子部分中的至少一者的装置。
另一方面包含一种用于处理多媒体数据的设备。所述设备包含比较器,所述比较器经配置以将一帧的一部分与多个参考帧进行比较。所述帧的所述部分包含多个子部分。所述设备进一步包含选择器,所述选择器经配置以基于所述比较而从所述多个参考帧中选择参考帧。所述设备进一步包含处理器,所述处理器经配置以基于所述选定参考帧而比较所述子部分中的至少一者。
一个方面包含一种多媒体数据处理器,其包含用以将一帧的一部分与多个参考帧进行比较的配置。所述帧的所述部分包含多个子部分。所述配置进一步用以基于所述比较而从所述多个参考帧中选择参考帧且基于所述选定参考帧而处理所述子部分中的至少一者。
另一方面包含一种机器可读媒体,其包含用于处理多媒体数据的指令。所述指令在执行时促使机器将一帧的一部分与多个参考帧进行比较。所述帧的所述部分包含多个子部分。所述指令在执行时进一步促使机器基于所述比较而从所述多个参考帧中选择参考帧且基于所述选定参考帧而处理所述子部分中的至少一者。
附图说明
图1为说明根据一个方面的多媒体通信系统的功能框图。
图2图解说明在例如图1中所说明的系统中对视频帧的一部分进行编码的方法的若干部分。
图3为说明在例如图1中所说明的系统中对视频流的一部分进行编码的方法的一个实例的流程图。
图4为说明用于根据图3中所说明的方法来处理视频数据的设备的实例的功能框图。
图5为更详细说明图3中所说明的方法的一个实例的一部分的流程图。
图6为更详细说明图3中所说明的方法的另一实例的一部分的流程图。
图7为更详细说明图3中所说明的方法的另一实例的一部分的流程图。
具体实施方式
以下详细描述针对于本发明的某些特定方面。然而,本发明可用如由权利要求书定义并涵盖的许多不同方式来实施。在此描述中参看附图,其中相同部分始终用相同数字指定。在以下描述中,给出特定细节以提供对所描述的方面的透彻理解。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。举例来说,可以框图形式展示电组件,以免以不必要的细节混淆所述方面。在其它实例中,可详细展示此些组件、其它结构和技术以进一步解释所述方面。
此外,应认识到,依据实施例而定,本文中所描述的方法、过程、框图和流程图中的任一者的某些动作或事件可以不同顺序来执行,可被添加、合并或一起省去(例如,并非所有所描述的动作或事件均是实践所述方法所必要的)。此外,在某些实施例中,可同时(例如,通过多线程处理、中断处理或多个处理器)而非顺序地执行动作或事件。应进一步认识到,可整体或部分地重复本文中所描述的方法、过程、框图和流程图。
多个方面包括改进多媒体传输系统中的编码器中的处理的系统和方法。多媒体数据可包括动态视频、音频、静止图像或任何其它合适类型的视听数据中的一者或一者以上。多个方面包括一种对视频数据进行编码的设备和方法。举例来说,一个方面包含一种在视频编码中减少参考帧搜索的方法。一个此类方面包含一种在运动补偿方法中减少参考帧搜索的方法。明确地说,已发现根据一个方面搜索少于所有的一组参考帧合意地降低了运动补偿搜索的计算复杂性而不存在经编码帧中的噪声或失真量的大量增加。
图1为说明根据一个方面的多媒体通信系统100的功能框图。系统100包括经由网络140而与解码器装置150通信的编码器装置110。在一个实例中,编码器装置接收来自外部源102的多媒体信号且对所述信号进行编码以供在网络140上传输。
在此实例中,编码器装置110包含耦接到存储器114和收发器116的处理器112。处理器112对来自多媒体数据源的数据进行编码且将其提供到收发器116以供经由网络140传送。
在此实例中,解码器装置150包含耦接到存储器154和收发器156的处理器152。处理器152可包括通用处理器或数字信号处理器中的一者或一者以上。存储器154可包括固态存储装置或基于磁盘的存储装置中的一者或一者以上。收发器156经配置以经由网络140接收多媒体数据并将其提供到处理器152以进行解码。在一个实例中,收发器156包括无线收发器。网络140可包含以下各项中的一者或一者以上:有线或无线通信系统,其包括以太网、电话(例如,POTS)、电缆、电源线和光纤系统中的一者或一者以上;和/或无线系统,其包含码分多址(CDMA或CDMA2000)通信系统、频分多址(FDMA)系统、时分多址(TDMA)系统中的一者或一者以上,例如GSM/GPRS(通用分组无线电服务)/EDGE(增强型数据GSM环境)、TETRA(地面中继无线电)移动电话系统、宽带码分多址(WCDMA)系统、高数据速率(1xEV-DO或1xEV-DO黄金多播)系统、IEEE 802.11系统、媒体FLO系统、DMB系统或DVB-H系统。
图2图解说明在例如图1中所说明的系统中对视频帧的一部分进行编码的方法的一方面。如图2中所说明,帧170可被划分成许多宏区块171。每一宏区块171包含帧170的像素阵列,例如16×16像素阵列。另外,编码器110可将宏区块171分割成任何数目的较小区块,例如8×8子区块171a或4×4子区块171b。任选地,编码器110可在帧170内和/或在经编码帧170之间改变子区块大小。总的来说,宏区块171和宏区块的分区(例如,子区块171a)在本文中被称作“区块”且总体参考图2的项目171来称呼。
经编码的视频帧170(或帧170的区块171)可在不依赖于其它帧的情况下加以编码(例如,帧内模式)或基于其它经编码帧而预测性地编码(例如,帧间模式)。用于帧170的一部分的特定编码模式可被称作“模式”(编码模式)。编码器110可使用不同模式而对帧170的不同部分(例如,不同区块171或子区块171)进行编码。举例来说,可使用运动补偿算法来对帧170或帧170的一个或一个以上区块171进行编码。编码器110的一个实例依据区块来对帧170进行编码,所述区块包括具有例如16×16、16×8、8×16、8×8、8×4、4×8、4×4等大小(但可使用其它大小)的区块。经编码帧170可包含帧170的分区,其分割成一组经编码区块171,所述组经编码区块171对帧170的大致所有像素进行编码。经编码区块171可具有不同大小且基于成本函数而选择,所述成本函数允许基于例如图像的经编码数据大小和所得失真等因数的加权平均值来比较不同编码策略。
如上所述,预测视频帧的一种方式是使用运动估计算法,所述运动估计算法利用视频数据中的时间冗余基于从一个帧到另一帧(例如,参考帧)的至少部分匹配区块171来对帧170进行编码。运动估计算法识别一个或一个以上参考帧174中的与帧170的区块171相似(例如,至少部分匹配)但可能在经编码帧174中位置移位的区块176。请注意,在各种方面中,运动估计算法可使用时间上在当前帧170之前、时间上在帧170之后或时间上在当前帧170之前和之后的参考帧174。依据指示区块171与区块176之间的位置差异的运动向量和指示帧170的区块171相对于在一连串一个或一个以上参考帧174(例如,参考帧174a、174b、174c、174d和174e)中所发现的参考区块(例如,参考帧174c的区块176)的像素之间的差异的残余数据来对帧170的区块171进行编码。参考帧174可为按时间排序的一连串帧,其在视频信号中位于帧170之前或之后。如图2中所展示,编码器110可将帧170的区块171a与参考帧174进行比较以识别对应区块(例如,帧174c中的区块176)。
编码器110可计算用于例如区块171的16×16、16×8、8×16、8×8、8×4、4×8和4×4区块(分区)等区块群组中的每一区块的运动补偿数据(例如,运动向量和残余)。编码器110可首先计算用于较大区块171(例如,16×16)的运动补偿数据,接着计算用于较大区块的每一子区块(例如,16×8、8×8等)的运动补偿数据。编码器110可选择覆盖大致整个帧170的具有一个或一个以上大小的区块171的特定分区或集合。编码器110可基于成本函数(例如,速率失真(RD)函数)来选择用于帧170的每一部分的特定区块和相应预测性数据,所述成本函数包含基于针对一帧的区块的特定集合使用运动向量和残余的特定集合的所述帧或帧的一部分的编码数据大小和所得图像失真的对应估计而在编码大小与失真之间折衷的措施。编码器110可使用任何合适的成本函数,包括此项技术中已知的成本函数。举例来说,合适的成本函数在“视频编码标准的速率受限编码器控制与比较(Rate-Constrained Coder Control and Comparison of Video CodingStandards)”(IEEE视频技术的电路与系统学报,第13卷,第7,688期(2003年7月))中揭示。成本函数可包含(例如)速率失真函数、最小残余和/或绝对差总和(SAD)函数。
图3为说明对多媒体数据进行编码的方法204的实例的流程图。所述方法在方框222处开始,在方框222中编码器110将一帧的一区块(例如,如图2中所说明的帧170的区块171a)与一连串参考帧(例如,图2的帧174)中的每一者进行比较以识别用于对区块171a进行编码的匹配数据。编码器110可在参考帧174中的每一者中搜索至少部分匹配所述区块171a的部分(例如,帧174c的区块176)。接下来在方框224处,编码器110选择参考帧174中的具有用于调解区块171a的最低编码成本函数的一者(例如,参考帧174c)。另外,编码器110可任选地基于选定参考帧来选择参考帧174的子集。举例来说,所述子集可仅包括选定参考帧(例如,参考帧174c)。在参考帧174包含时间序列的帧1到N的另一实例中,选定参考帧174为所述序列中的帧j,使得所述子集包括参考帧j-M到j+M,其中M为用参数表示子集大小的整数。举例来说,如果M=1,则所述子集包括帧j-1到j+1,例如所识别的参考帧和在所述系列的帧1到N中邻近于所识别参考帧的参考帧。应认识到,M=1仅为说明性的,且多个方面可使用子集大小参数M的其它值。此外,应认识到,范围可具有在序列下端处的帧的下限(例如,被识别为1的帧)和在序列上端处的帧的上限(例如,帧N)。
接下来在方框228处,编码器110基于选定参考帧来处理子部分(例如,子区块)中的至少一者。编码器可通过将帧170的子区块与选定参考帧进行比较以寻找参考帧174的至少部分匹配部分176来处理子区块。举例来说,编码器110可将区块171a的每一子区块(例如,大小为16×8和8×16的子区块)仅与选定参考帧174进行比较。因此,编码器110不需要搜索所有五个参考帧174来对子区块进行编码,进而降低了处理复杂性,同时大致上未增加失真效应。
另外,编码器也可将所述子区块与参考帧174的子集进行比较,如参考方法方框224所论述。举例来说,如果帧174c被识别为用于8×8区块171a的参考帧,则参考帧的子集可包含帧174c或时间上邻近于帧174c的一范围的帧(例如,帧174b到174d)。此外,编码器110可经配置以执行以下各项的组合:搜索所有参考帧、仅搜索选定参考帧或仅搜索参考帧的子集。编码器110可基于(例如)正被搜索的区块的大小来选择这些组合。图5、图6和图7说明此些组合的特定实例。
已发现,根据以上所揭示的方法搜索少于所有的参考帧174合意地降低了运动补偿搜索的计算复杂性而不存在经编码帧170中的噪声或失真量的大量增加。可针对帧170的不同区块或子区块171来重复方法204。
图4为说明用于根据图3中所说明的方法来处理视频数据的设备的实例的框图。明确地说,图3说明编码器110的实例。编码器100包含:用于将一帧的一部分与多个参考帧进行比较的模块302;用于从所述多个参考帧中选择参考帧的模块304;以及用于基于所述选定参考帧来处理子部分中的至少一者的模块306。用于比较一帧的一部分的模块302可经配置以将一帧的一部分与多个参考帧进行比较。举例来说,模块302可执行参看图3的方框222而论述的动作。用于选择参考帧的模块304可经配置以从所述多个参考帧174(见图2)中选择参考帧(例如,174c)。举例来说,模块304可执行参看图3的方框224而论述的动作。模块304可基于成本函数来选择参考帧174,如上所述。参考帧选择模块304还可经配置以基于所识别的参考帧来选择参考帧的子集(例如,帧j-1到j+1),其中参考帧被识别为一时间排序系列的参考帧中的帧j。用于处理帧的子部分的模块306可经配置以基于选定参考帧174而处理所述子部分中的至少一者,例如,模块306可执行参看图3的方框228而描述的动作。
下文表1说明用于多种编码方法的许多实例(其中针对搜索各种大小的区块而减少对参考帧174的搜索)的模拟结果。表1比较针对所有区块大小搜索所有N个参考帧与本文中所揭示的减少参考帧搜索的方法的三个实例的成本。表1针对来自动画、音乐视频、新闻、综合体育、有线体育频道、有线电影频道和普通或典型有线电视信号的许多不同视频信号而比较位速率、峰值信噪比(PSNR)和“惩罚”(例如,针对减少搜索方法的增加的信噪比)。
图5为更详细展示图3的方法204的第一实例的流程图。此第一实例对应于表1中的实例A且包含一种以子8×8模式来减少参考帧的方法。举例来说,在350处,针对8×8子区块,搜索所有N个参考帧以用于对数据进行编码。选择特定参考帧174,例如具有用于对8×8子区块进行编码的最低成本函数值的帧j。在表1的模拟数据中,N等于5个参考帧。接下来在352处,针对所述8×8区块的子区块(例如,8×4、4×4、4×8区块),模拟编码器110仅搜索选定帧j以用于对数据进行编码。
图6为更详细展示图3的方法204的第二实例的流程图。第二实例对应于表1中的实例B且包含一种提供针对16×8区块和8×16区块搜索以用于对数据进行编码的参考帧的减少的方法。举例来说,在360处,针对16×16区块,编码器110搜索N个参考帧以用于对数据进行编码且将帧j识别为提供用于对所述16×16区块进行编码的成本函数的较低值。最低值可为最低经计算的成本值。接下来在362处,针对所述16×16区块的16×8和8×16子区块,编码器110仅搜索选定参考帧j以用于对数据进行编码。
图7为更详细展示图3的方法204的第三实例的流程图。第三实例对应于实例C且包含一种减少用于对16×8、8×16、8×8区块和子8×8区块进行编码的参考帧的方法。实例C的方法包括与图6的项目360和362相关联的动作,以通过仅搜索选定参考帧j来减少针对16×8和8×16区块的搜索。接下来在基于362处用于16×8和8×16区块的减少的参考帧来计算编码成本之后,针对16×8区块和8×16区块的8×8子区块中的每一者,编码器110在图6中的374处搜索时间上邻近于选定参考帧j(例如,在用于8×8子区块的一个帧内)的参考帧的集合(从max(0,j-1)到min(N,j+1)的帧)。移动到378,编码器110针对每一8×8区块选择具有最低编码成本的参考帧i。接着在380处,针对8×8区块的子区块,编码器110仅搜索参考帧i以用于对数据进行编码。
表1中的模拟数据是在假定自适应性帧编码和32×32个像素的搜索范围的情况下产生的。
Figure A20078004046700131
三个所说明的实例提供参考帧搜索复杂性与编码质量之间的不同折衷。其中,实例C的方法在仅约0.15dB的PSNR损失下具有最低复杂性。
鉴于上述内容,将了解,本发明克服编码例如视频数据等多媒体数据的问题。举例来说,根据一个方面的参考帧搜索的减少降低了视频编码的计算复杂性而不存在视频保真度的大量损失。因此,视频编码器可使用较低功率、较低等待时间和/或较不复杂的处理器及相关联的电子器件。
所属领域的技术人员应认识到,结合本文中所揭示的方面而描述的各种说明性逻辑区块、模块、电路和算法步骤可被实施为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件与软件的此互换性,上文已大体上在功能性方面描述了各种说明性组件、区块、模块、电路和步骤。所述功能性是实施为硬件还是软件取决于特定应用和强加于整个系统的设计约束。技术人员可针对每一特定应用以各种方式实施所描述的功能性,但此些实施方案决策不应被解释为会导致偏离本发明的范围。
结合本文中所揭示的方面而描述的各种说明性逻辑区块、模块和电路可用以下各项实施或执行:经设计以执行本文中所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任何组合。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器也可被实施为计算装置的组合,例如DSP与微处理器的组合、多个微处理器、一个或一个以上微处理器结合DSP核心或任何其它此类配置。
结合本文中所揭示的方面而描述的方法或算法的步骤可直接实施于硬件中、实施于由处理器执行的软件模块中或实施于所述两者的组合中。软件模块可驻留于RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可拆卸式磁盘、CD-ROM,或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦接到处理器,以使得处理器可从存储媒体读取信息和将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。处理器和存储媒体可驻留于ASIC中。ASIC可驻留于用户终端中。在替代方案中,处理器和存储媒体可作为离散组件驻留于用户终端中。
提供先前对所揭示方面的描述以使得所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易明白对这些方面的各种修改,且本文中所定义的一般原理可在不偏离本发明的精神或范围的情况下应用于其它实施例。因此,本发明并不意欲限于本文中所展示的方面,而是应符合与本文中所揭示的原理和新颖特征一致的最宽范围。
尽管以上详细描述已展示、描述并指出了被应用于各种方面时的本发明的新颖特征,但将理解,所属领域的技术人员可在不偏离本发明的精神的情况下对所说明的装置或过程的形式和细节做出各种省略、替代和改变。如将认识到的,可在并不提供本文中所阐述的所有特征和益处的形式内实施本发明,因为某些特征可与其它特征分开地使用或实践。本发明的范围由所附权利要求书而非由前文描述来指示。属于权利要求书的均等物的含义和范围内的所有改变均包含在权利要求书的范围内。

Claims (34)

1.一种处理多媒体数据的方法,其包含:
将一帧的一部分与多个参考帧进行比较,其中所述帧的所述部分包含多个子部分;
基于所述比较而从所述多个参考帧中选择一参考帧;以及
基于所述选定参考帧而处理所述子部分中的至少一者。
2.根据权利要求0所述的方法,其中选择所述参考帧包含:
选择所述参考帧的子集,其中处理所述子部分中的所述至少一者基于所述参考帧的所述子集。
3.根据权利要求0所述的方法,其中处理所述子部分中的所述至少一者包含:
选择所述参考帧的所述子集中的至少一者;以及
至少部分基于所述子集中的所述至少一者而处理所述子部分中的所述至少一者。
4.根据权利要求0所述的方法,其中所述多个参考帧定义时间排序,且其中所述参考帧的所述子集包含所述时间排序中的至少两个邻近帧。
5.根据权利要求0所述的方法,其中处理所述子部分中的所述至少一者包含将所述子部分中的所述至少一者与所述选定参考帧的至少一部分进行比较。
6.根据权利要求0所述的方法,其中所述帧的所述部分包含一宏区块,且所述子部分包含若干子区块。
7.根据权利要求0所述的方法,其中所述帧的所述部分包含一子区块,且所述子部分包含所述子区块的若干子区块。
8.根据权利要求0所述的方法,其进一步包含计算用于所述帧的至少所述部分的编码量度。
9.根据权利要求8所述的方法,其中选择所述参考帧至少部分基于所述编码量度。
10.根据权利要求8所述的方法,其中所述编码量度基于经编码数据的失真和经编码数据的大小中的至少一者。
11.一种用于处理多媒体数据的设备,其包含:
用于将一帧的一部分与多个参考帧进行比较的装置,其中所述帧的所述部分包含多个子部分;
用于基于所述比较而从所述多个参考帧中选择一参考帧的装置;以及
用于基于所述选定参考帧而处理所述子部分中的至少一者的装置。
12.根据权利要求11所述的设备,其中所述选择装置经配置以选择所述参考帧的子集,且其中所述处理装置经配置以基于所述子集而处理所述子部分中的所述至少一者。
13.根据权利要求12所述的设备,其中所述处理装置进一步经配置以:
选择所述参考帧的所述子集中的至少一者;且
至少部分基于所述子集中的所述至少一者而处理所述子部分中的所述至少一者。
14.根据权利要求12所述的设备,其中所述多个参考帧定义时间排序,且其中所述参考帧的所述子集包含所述时间排序中的至少两个邻近帧。
15.根据权利要求11所述的设备,其中所述处理装置进一步经配置以将所述子部分中的所述至少一者与所述选定参考帧的至少一部分进行比较。
16.根据权利要求11所述的设备,其中所述部分包含一宏区块,且所述子部分包含若干子区块。
17.根据权利要求11所述的设备,其中所述部分包含一子区块,且所述子部分包含所述子区块的若干子区块。
18.根据权利要求11所述的设备,其中所述选择装置进一步经配置以计算用于所述帧的至少所述部分的编码量度。
19.根据权利要求11所述的设备,其中所述处理装置进一步经配置以将所述子部分中的所述至少一者与所述选定参考帧的至少一部分进行比较。
20.根据权利要求18所述的设备,其中选择装置经配置以至少部分基于所述编码量度而选择所述参考帧。
21.根据权利要求18所述的设备,其中选择装置至少部分基于所述编码量度而选择所述参考帧。
22.根据权利要求18所述的设备,其中所述编码量度基于经编码数据的失真和经编码数据的大小中的至少一者。
23.一种用于处理多媒体数据的设备,其包含:
比较器,其经配置以将一帧的一部分与多个参考帧进行比较,其中所述帧的所述部分包含多个子部分;
选择器,其经配置以基于所述比较而从所述多个参考帧中选择一参考帧;以及
处理器,其经配置以基于所述选定参考帧而比较所述子部分中的至少一者。
24.根据权利要求23所述的设备,其中所述选择器进一步经配置以选择所述参考帧的子集,其中所述处理器经配置以基于所述子集而处理所述子部分中的所述至少一者。
25.根据权利要求24所述的设备,其中所述处理器进一步经配置以:
选择所述参考帧的所述子集中的至少一者;且
至少部分基于所述子集中的所述至少一者而处理所述子部分中的所述至少一者。
26.根据权利要求24所述的设备,其中所述多个参考帧定义时间排序,且其中所述参考帧子集包含所述时间排序中的至少两个邻近帧。
27.根据权利要求23所述的设备,其中所述部分包含一宏区块,且所述子部分包含若干子区块。
28.根据权利要求23所述的设备,其中所述部分包含一子区块,且所述子部分包含所述子区块的若干子区块。
29.根据权利要求23所述的设备,其中所述选择器进一步经配置以计算用于所述帧的至少所述部分的编码量度。
30.根据权利要求23所述的设备,其中所述选择器经配置以至少部分基于所述编码量度而选择所述参考帧。
31.根据权利要求23所述的设备,其中所述选择器进一步经配置以至少部分基于所述编码量度而选择所述参考帧。
32.根据权利要求23所述的设备,其中所述编码量度基于经编码数据的失真和经编码数据的大小中的至少一者。
33.一种多媒体数据处理器,其包含用以执行以下操作的配置:
将一帧的一部分与多个参考帧进行比较,其中所述帧的所述部分包含多个子部分;
基于所述比较而从所述多个参考帧中选择一参考帧;以及
基于所述选定参考帧而处理所述子部分中的至少一者。
34.一种机器可读媒体,其包含用于处理多媒体数据的指令,其中所述指令在执行时促使机器:
将一帧的一部分与多个参考帧进行比较,其中所述帧的所述部分包含多个子部分;
基于所述比较而从所述多个参考帧中选择一参考帧;且
基于所述选定参考帧而处理所述子部分中的至少一者。
CNA2007800404677A 2006-11-02 2007-10-29 在视频编码中减少参考帧搜索的设备和方法 Pending CN101529919A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/555,989 US8923393B2 (en) 2006-11-02 2006-11-02 Apparatus and method of reduced reference frame search in video encoding
US11/555,989 2006-11-02

Publications (1)

Publication Number Publication Date
CN101529919A true CN101529919A (zh) 2009-09-09

Family

ID=39365206

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2007800404677A Pending CN101529919A (zh) 2006-11-02 2007-10-29 在视频编码中减少参考帧搜索的设备和方法

Country Status (10)

Country Link
US (1) US8923393B2 (zh)
EP (1) EP2084911A2 (zh)
JP (1) JP5259608B2 (zh)
KR (1) KR101184245B1 (zh)
CN (1) CN101529919A (zh)
BR (1) BRPI0717889A2 (zh)
CA (1) CA2666217A1 (zh)
RU (1) RU2404535C1 (zh)
TW (1) TW200838322A (zh)
WO (1) WO2008057819A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104247407A (zh) * 2012-02-10 2014-12-24 易卜拉欣·纳拉 数据、多媒体和视频传输更新系统

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8861598B2 (en) * 2008-03-19 2014-10-14 Cisco Technology, Inc. Video compression using search techniques of long-term reference memory
US8326075B2 (en) 2008-09-11 2012-12-04 Google Inc. System and method for video encoding using adaptive loop filter
US8385404B2 (en) 2008-09-11 2013-02-26 Google Inc. System and method for video encoding using constructed reference frame
US8619856B2 (en) * 2008-10-03 2013-12-31 Qualcomm Incorporated Video coding with large macroblocks
US8503527B2 (en) 2008-10-03 2013-08-06 Qualcomm Incorporated Video coding with large macroblocks
US8265155B2 (en) * 2009-01-05 2012-09-11 Electronics And Telecommunications Research Institute Method of block partition for H.264 inter prediction
US8233534B2 (en) * 2010-04-09 2012-07-31 Newport Media, Inc. Frame buffer compression and memory allocation in a video decoder
US8503528B2 (en) 2010-09-15 2013-08-06 Google Inc. System and method for encoding video using temporal filter
US9154799B2 (en) 2011-04-07 2015-10-06 Google Inc. Encoding and decoding motion via image segmentation
US8780971B1 (en) 2011-04-07 2014-07-15 Google, Inc. System and method of encoding using selectable loop filters
US8781004B1 (en) 2011-04-07 2014-07-15 Google Inc. System and method for encoding video using variable loop filter
US8638854B1 (en) 2011-04-07 2014-01-28 Google Inc. Apparatus and method for creating an alternate reference frame for video compression using maximal differences
US8780996B2 (en) 2011-04-07 2014-07-15 Google, Inc. System and method for encoding and decoding video data
US8885706B2 (en) 2011-09-16 2014-11-11 Google Inc. Apparatus and methodology for a video codec system with noise reduction capability
US9131073B1 (en) 2012-03-02 2015-09-08 Google Inc. Motion estimation aided noise reduction
WO2013162980A2 (en) 2012-04-23 2013-10-31 Google Inc. Managing multi-reference picture buffers for video data coding
US9609341B1 (en) 2012-04-23 2017-03-28 Google Inc. Video data encoding and decoding using reference picture lists
US9014266B1 (en) 2012-06-05 2015-04-21 Google Inc. Decimated sliding windows for multi-reference prediction in video coding
US9344729B1 (en) 2012-07-11 2016-05-17 Google Inc. Selective prediction signal filtering
US9866835B2 (en) * 2013-02-07 2018-01-09 Schlumberger Technology Corporation Borehole image compression
CN103200408B (zh) * 2013-04-23 2016-03-30 华录出版传媒有限公司 一种视频编解码方法
US9756331B1 (en) 2013-06-17 2017-09-05 Google Inc. Advance coded reference prediction
US10102613B2 (en) 2014-09-25 2018-10-16 Google Llc Frequency-domain denoising
WO2016176592A1 (en) * 2015-04-29 2016-11-03 Arris Enterprises Llc Reference picture selection for inter-prediction in video coding
CN116684610A (zh) * 2023-05-17 2023-09-01 北京百度网讯科技有限公司 确定长期参考帧的参考状态的方法、装置及电子设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950014862B1 (ko) 1992-02-08 1995-12-16 삼성전자주식회사 움직임추정방법 및 그 장치
JP2003284091A (ja) 2002-03-25 2003-10-03 Toshiba Corp 動画像符号化方法及び動画像符号化装置
JP4841101B2 (ja) * 2002-12-02 2011-12-21 ソニー株式会社 動き予測補償方法及び動き予測補償装置
BR0317982A (pt) 2003-01-10 2005-12-06 Thomson Licensing Sa Rápida tomada de decisão de modo para codificação interquadros
KR100510137B1 (ko) * 2003-04-30 2005-08-26 삼성전자주식회사 고속 움직임 추정을 위한 참조 픽쳐 및 블록 모드 결정방법, 그 장치, 블록 모드 결정 방법 및 그 장치
WO2005094083A1 (en) 2004-03-29 2005-10-06 Koninklijke Philips Electronics N.V. A video encoder and method of video encoding
WO2006001485A1 (ja) 2004-06-29 2006-01-05 Sony Corporation 動き予測補償方法及び動き予測補償装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104247407A (zh) * 2012-02-10 2014-12-24 易卜拉欣·纳拉 数据、多媒体和视频传输更新系统

Also Published As

Publication number Publication date
US20080130755A1 (en) 2008-06-05
KR20090085667A (ko) 2009-08-07
JP5259608B2 (ja) 2013-08-07
US8923393B2 (en) 2014-12-30
BRPI0717889A2 (pt) 2013-11-05
WO2008057819A3 (en) 2008-08-07
WO2008057819A2 (en) 2008-05-15
CA2666217A1 (en) 2008-05-15
TW200838322A (en) 2008-09-16
KR101184245B1 (ko) 2012-09-21
EP2084911A2 (en) 2009-08-05
JP2010509850A (ja) 2010-03-25
RU2404535C1 (ru) 2010-11-20

Similar Documents

Publication Publication Date Title
CN101529919A (zh) 在视频编码中减少参考帧搜索的设备和方法
CN101335896B (zh) 用于前向预测的隔行扫描视频帧的场的预测运动矢量
CN1332563C (zh) 一种视频图像跳过宏块的编码方法
US20050114093A1 (en) Method and apparatus for motion estimation using variable block size of hierarchy structure
CN101171842B (zh) 多媒体数据的改进的编码
CN110024398A (zh) 针对屏幕远程处理场景的局部的基于散列的运动估计
EP1773071A2 (en) Method of and apparatus for lossless video encoding and decoding
US20050265461A1 (en) Method and apparatus to enable acquisition of media in streaming applications
CN107431814B (zh) ρ域速率控制的变化的方法、系统及计算机可读存储器
EP1044566A1 (en) Improved video coding using adaptive coding of block parameters for coded/uncoded blocks
CN101185336A (zh) 用于使用切片内再同步点的错误恢复的方法及设备
CN102067608A (zh) 用于视频译码的时间压缩中的片段化参考
CN1812577A (zh) 译码数字影像位流所含画面的方法及其数字影像译码系统
CN106331700B (zh) 参考图像编码和解码的方法、编码设备和解码设备
CN1825976A (zh) 译码数字影像序列的方法及装置
CN112188196A (zh) 一种基于纹理的通用视频编码帧内快速预测的方法
US20120057784A1 (en) Image processing apparatus and image processing method
CN1650635A (zh) 对低速率应用的数字图像进行处理的方法
JPH09331536A (ja) 誤り訂正デコーダ及び誤り訂正デコーディング方法
CN101411204B (zh) 视频压缩中增强帧内插的设备和方法
CN100586185C (zh) 一种h.264视频降低分辨率转码的模式选择方法
CN100337481C (zh) 一种mpeg-2到avs视频码流格式转换方法及其装置
TW201338553A (zh) 用於評估要轉換成被跳過巨集區塊的巨集區塊候選者的方法、系統和電腦程式產品
CN101277449A (zh) 一种264视频以任意比例降低分辨率的像素域转码的方法
CN112637605B (zh) 基于分析cavlc码字和非零dct系数个数的视频隐写分析方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20090909