[go: up one dir, main page]

CN102918839B - 用于视频编码的功率高效的运动估计技术 - Google Patents

用于视频编码的功率高效的运动估计技术 Download PDF

Info

Publication number
CN102918839B
CN102918839B CN201080067136.4A CN201080067136A CN102918839B CN 102918839 B CN102918839 B CN 102918839B CN 201080067136 A CN201080067136 A CN 201080067136A CN 102918839 B CN102918839 B CN 102918839B
Authority
CN
China
Prior art keywords
motion vector
motion
reference frame
sheet
estimation
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.)
Expired - Fee Related
Application number
CN201080067136.4A
Other languages
English (en)
Other versions
CN102918839A (zh
Inventor
L·徐
Y-J·秋
H·江
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN102918839A publication Critical patent/CN102918839A/zh
Application granted granted Critical
Publication of CN102918839B publication Critical patent/CN102918839B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/174Methods 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 slice, e.g. a line of blocks or a group of 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/187Methods 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 scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/37Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability with arrangements for assigning different transmission priorities to video input data or to video coded data
    • 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/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/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes

Landscapes

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

Abstract

自适应控制可以使用分层运动估计(HME)和/或多参考运动估计(MRME)来进行当前编码块的运动估计。在运动估计中允许HME和MRME二者获得高编码增益。控制包括片级控制和宏块(MB)级控制。片为一个或多个连续的宏块。在片级控制中,基于在粗级运动估计中获得的运动向量,决定使用仅一个参考帧或使用多个参考帧来对当前片进行编码。在MB级控制中,基于MB的粗级运动向量,决定对于MB及其子块执行MRME或执行HME。

Description

用于视频编码的功率高效的运动估计技术
背景技术
H.264(也称作高级视频编解码(AVC))和MPEG-4第10部分为业界期望广泛推行的ITU-T/ISO视频压缩标准。H.264标准已经由联合视频组(JVT)制订并且包括ITU-TSG16Q.6,其被称作VCEG(视频编码专家组),还包括ISO/IECJTC1/SC29/WG11,其被称作MPEG(运动图像专家组)。H.264被设计用于数字电视广播(DTV)、直播卫星(DBS)视频、数字用户线路(DSL)视频、交互式存储媒体(ISM)、多媒体消息(MMM)、数字电视地面广播(DTTB)以及远程视频监控(RVS)的领域中的应用。
视频编码中的运动估计(ME)可以被用于通过去除或减少视频帧之间的时间冗余来提高视频压缩性能。为了对输入块进行编码,可以在编码器处在参考帧中的指定搜索窗口内执行传统的运动估计。这可以允许确定最小化在参考帧中的参考块与输入块之间的绝对差之和(SAD)的运动向量。然后,运动向量(MV)信息可以被发送到解码器用于运动补偿。
当在解码器处无法得到原始输入帧时,可以使用重构的参考帧执行解码器处的ME。当对预测帧(P帧)进行编码时,在前向参考缓冲器中可以有多个参考帧。当对双向预测帧(B帧)进行编码时,在前向参考缓冲器中可以有多个参考帧,并且在后向参考缓冲器中有至少一个参考帧。对于B帧编码,可以执行镜像ME或投影ME来确定MV。对于P帧编码,可以执行投影ME来确定MV。
附图说明
图1绘示了示例性的分层运动估计(HME)。
图2示出视频编码系统的框图。
图3示出用于确定是使用HME还是使用MRME来确定P图像或B图像的输入片的块的运动向量的方式的流程图。
图4绘示了确定是使用HME还是使用MRME来确定块的运动向量的方式的流程图。
图5绘示了确定宏块的运动向量的方式。
图6绘示了根据实施例的系统。
具体实施方式
已知方案可以仅使用一个参考帧而不是多参考运动估计(MRME)来降低编码复杂度,或当搜索窗口非常有限时使用分层运动估计(HME)来处理高运动。已知仅使用一个参考帧可能不足以获得高编码增益,并且对于图像的某些块使用HME可能不是有效的。
ME从参考帧获取对当前编码块的预测。ME包括在参考帧中以搜索中心为中心的搜索窗口内的运动搜索。一般而言,当使用较大搜索窗口时可以获得较高的编码增益。另一方面,使用较大搜索窗口大幅度增加了编码复杂度,这可能在功率利用上效率不高。另外,对于硬件实现,由于芯片上存储器大小非常有限,从而搜索窗口可能非常小。在各实施例中,分层运动估计(HME)可以用来通过按比例缩小参考帧并使用小搜索窗口来扩展该小窗口的搜索范围。但是,对于有小的帧内运动的块,小搜索窗口可能是足够的,因此,对于小的帧内运动的块,HME可能会浪费功率。为了获得较高的编码增益,可以对具有小的帧内运动的块应用多参考运动估计(MRME),从而在多个可用的参考帧上执行运动搜索以确定对当前编码块的预测。将参考索引发送到解码器侧用于运动补偿。对于某些高运动的块,在最接近参考帧上的运动搜索已经足够了,并可以节约与搜索多个帧相关联的功率。
各实施例自适应地控制是否使用HME和/或MRME来对当前块进行编码,这可以大幅度地节约编码功率同时还获得高编码增益。控制可以基于片(slice)级控制和/或宏块(MB)级控制。片为一个或多个连续的宏块。片内的宏块的次序可以是从左到右和从上到下的。基于使用HME所确定的运动向量,可以将MB分成三类,高运动MB、低运动MB以及其它MB。如果在当前片中有过多的高运动MB,则实验结果表明MRME不利于整个片的编码增益。在片级控制中,在当前片中有过多高运动MB时,决定仅使用一个参考帧来对当前片的块进行编码。然而,可以使用其它数量的参考帧,例如两个或三个。将参考帧的数量设定为一允许编码器在单个参考帧中寻找运动向量。选定的参考帧可以是时间上最接近的帧(前向或后向)或与当前帧类似但在时间上不是最接近的帧(例如谐运动)。对于在此片中的所有块,没有将参考索引编码到比特流中,这是因为当不提供参考索引时解码器知道要使用的参考帧。另外,在单个参考帧上的运动搜索可以是足够的,因此,对于这些块使用多个参考帧进行运动估计可能会浪费功率。不对参考索引进行编码可以节约比特并可以提高编码增益。
对于非高运动的片,可以将此片的参考帧数量设定为任意数量,例如最多允许的参考帧。例如,H.264允许高达16个参考帧。
在MB级控制中,基于使用HME所确定的MB的运动向量(MV),来决定是对MB及其子块执行MRME还是执行HME。基于使用HME所确定的MV,如果MB是高运动的,则对该MB及其子块执行HME。基于使用HME所确定的MV,如果MB是低运动的,则对该MB及其子块执行MRME。但是,如果低运动MB位于高运动片中,则可以使用一个参考帧来对低运动MB及其子块进行编码。如果MB既不是高运动的也不是低运动的,则可以将HME或MRME二者之一或HME和MRME的组合应用于MB及其子块。HME及MRME的组合意味着在多个可用参考帧中扩展的搜索范围。
MRME在多个可用参考帧上应用运动搜索以获取对当前编码块的预测,并且将参考索引发送到解码器侧用于校正运动补偿。参考图像缓冲器存储解码的参考图像。可以选择那些参考帧作为MRME中的参考帧。可以基于最接近的时间距离或图像级相似度测量来选择参考图像。多参考运动估计可能会增加编码器的复杂度。
用于对当前块进行编码的HME和MRME的自适应控制可以极大地节约编码功率,同时还获得高编码效率增益。
图1绘示了示例性的分层运动估计(HME)。在运动估计之前,通过S因子将当前帧和参考帧按比例缩小到粗级帧。换句话说,按比例缩小的帧的宽度和高度为原始帧尺寸的1/(S*S)。原始帧被称作细级帧。一般而言,S可以被设定为1.5、1.6、2、4、8或其它值。可以对按比例缩小的、粗级的当前帧中的每个M×N块执行运动估计。在按比例缩小的、粗级的参考帧中具有W×H尺寸的小搜索窗口内执行运动估计。在获得粗级运动向量(mvx,mvy)之后,按比例放大的运动向量(mvx*S,mvy*S)被用作搜索中心,并在细级帧上,在W×H的搜索窗口内执行运动搜索,以找出细级运动向量。按比例放大的MV(mvx*S,mvy*S)可以用作在细级当前帧中的(M*S)×(N*S)块中像素的搜索中心。对于W×H的搜索窗口,可以被搜索的最大运动在正/负水平方向为W/2,以及在正/负垂直方向为H/2。在HME之后,可以被搜索的最大运动在水平方向为(S+1)W/2,以及在垂直方向为(S+1)H/2。按比例缩小的帧可以被按比例缩小超过一次。例如,可以使用S=2将尺寸为120的原始图像按比例缩小成60×60像素,并且接着再次按比例缩小成30×30像素。可以将搜索窗口应用到一个或更多的按比例缩小的图像。
HME可以极大地减少ME的复杂度同时获得相同的运动范围。复杂度可以指处理器软件运算周期或指芯片的硬件门数。令在W×H的搜索窗口内执行M×N块的ME的复杂度为C。则用于对整个细级帧进行编码的HME的复杂度约为K*C+S*S*K*C=(S*S+1)KC,其中K为粗级中M×N块的数量。但是,如果搜索窗口为细级中的((S+1)W)×((S+1)H),则用于对整个细级帧进行编码的ME的复杂度将约为(S+1)*(S+1)*S*S*K*C,其为HME的很多倍。
在一些实施例中,设立标志mb_HME_flag=1来告知编码器应用HME以确定宏块的运动向量。
在例如H.264/AVC的一些高级视频编码标准中,可以在多个参考帧中执行运动估计,并且将最佳预测的参考索引和运动向量发送到解码器用于运动补偿。可以在片头部中用信号表示最多允许的参考帧数量。如果最多允许参考是一个,那么如果解码器知道对于那些块参考索引为0,则可以不对每个块的参考索引进行编码。否则,对参考索引进行编码。MRME可以减少预测误差,但是参考索引的编码比特是不可忽略的开销。MRME可能由于通知解码器在编码中使用什么参考帧而比HME使用更多的开销。
实验结果表明,当帧内的块运动大时,HME在较高编码效率方面具有明显增益,而当帧内的块运动相对小时,MRME具有较高编码效率的明显增益。因此,自适应的控制机制可以用于自适应地决定使用HME或MRME来对块进行编码。自适应的控制可以极大地降低编码复杂度并且提高编码增益。例如,如果真实的块运动非常小,则在细级上的W×H搜索窗口内执行一般ME可能就足以获得运动向量。在这种情况下,对于这些小运动块,HME是不必要的,并且可以替代地使用MRME。
图2示出了视频编码系统的框图。自适应ME控制块基于片或宏块是高运动还是低运动,通知运动估计块执行MRME或使用来自粗级ME块的运动向量。运动估计块使用在W×H搜索窗口内的预测MV(pmv),支持MRME以及在搜索中心周围进行传统的细级运动搜索。
粗级ME块基于HME来确定运动向量。HME可被用于大的运动,并且应用HME和MRME的自适应控制来降低编码复杂度。
在对于粗级片中的所有M×N块执行粗级ME之后,基于获得的粗级运动向量来执行片级控制。对于S=4和M×N=4×4块,细级中的对应块为16×16宏块。如果细级MB的粗级MV满足“abs(mv_x)>=TH_1||abs(mv_y)>=TH_1”,则细级MB可以被定义为高运动MB,其中TH_1可以是预定义的常数。假设在输入片中的宏块总数为total_MB并且在输入片中有N个高运动宏块。如果N/total_MB大于预定义的阈值TH_0,则输入片被认为是高运动片。
对于高运动片,MRME可能无法为视频编码系统提供适当的增益。此外,用于对参考索引进行编码的比特开销甚至可能会降低编码增益。因此,对于高运动片,ME被限于在时间上或在图像级上的最接近的参考帧,并且在片头部中,允许的参考帧数量被用信号表示为1。对于在此片中的所有块,将不对参考索引进行编码,从而节约了带宽。可以将参考索引与片一起发送到解码器,或参考索引可以基于在编码器与解码器之间的共识,从而不发送索引。
对于非高运动片,用于确定片中的块的运动向量的参考帧的数量(slice_num_ref)可被设定为M,其中M是编码器的参考缓冲器中的可用帧的数量。在H.264/AVC中,在序列参数头部中用信号表示最多允许的参考帧。
图3示出用于确定是使用HME还是使用MRME来确定P或B图像的输入片的块的运动向量的方式的流程图。
块302包括在片上执行HME以确定粗运动向量。例如,关于图1所述的HME技术可被用于确定片中每个宏块的运动向量。将输入片按比例缩小成粗级片,并且按比例缩小的粗级参考帧在参考缓冲器中是可用的。接着,对于当前粗级片中的第i个M×N块,在W×H搜索窗口内执行运动估计以获取其运动向量(mvx(i),mvy(i))。例如,块可以为4×4并且搜索窗口可以为48×40。此运动向量可以用作原始尺寸的帧中的对应(M*S)×(N*S)块(如16×16块)中的像素的搜索中心。
块304包括确定片中的高运动宏块的数量N。如果abs(mv_x)>=TH_1||abs(mv_y)>=TH_1,则MB被认为是高运动MB,其中|表示逻辑或,mv_x为在x方向上按比例放大的运动向量,mv_y为在y方向上按比例放大的运动向量,以及TH_1为阈值。
块306包括确定片是否为高运动片。例如,高运动片可以为这样一个运动片,该片中某些数量的宏块是高运动的。块306可以包括确定是否N/total_MB>TH_0,其中total_MB为片中宏块的总数并且TH_0为阈值。如果片不是高运动片,则块308跟在块306之后。如果片为高运动片,则块310跟在块306之后。
块308包括将用于确定当前片中的宏块的运动向量的参考帧的数量设定为M,M为编码器的参考缓冲器中的可用帧的数量。
块310包括将用于确定当前片中宏块的运动向量的参考帧的数量设定为一。然而,参考帧的数量可以超过一个。
块312包括以关于图5所述的方式来确定片中的所有MB和子块的运动向量。
图4绘示了用于基于宏块来确定是使用HME还是使用MRME来确定块的运动向量的方式的流程图。
块402包括确定宏块是否为高运动宏块。如果abs(mv_x)>TH_2并且abs(mv_y)>TH_2,则宏块可以为高运动宏块,其中mv_x及mv_y表示以与块302类似的方式确定的运动向量。此处,TH_2不大于TH_1。
块404包括确定宏块是否为低运动宏块。如果abs(mv_x)<=TH_2并且abs(mv_y)<=TH_2,则宏块可以为低运动宏块,其中mv_x及mv_y表示在块304中所确定的运动向量。
块406包括将参考帧的数量设定为一,并指示要使用MRME来确定当前宏块的运动向量。变量mb_num_ref可以用于表示用于确定当前块的运动向量的参考帧的数量。变量mb_HME_flag表示是HME还是MRME被用于确定当前块的运动向量。
块408包括将参考帧的数量设定为用于当前宏块的片的参考帧的数量,并指示要使用MRME来确定当前宏块的运动向量。例如,可以基于图3的流程图来确定用于当前宏块的片的参考帧的数量。只要功率/复杂度不是要考虑的问题,就可以增加参考帧的数量。
块410包括将参考帧的数量设定为一,并指示要使用HME来确定当前宏块的运动向量。从而,以与块302类似的方式所确定的运动向量mv_x及mv_y可被用作当前宏块的运动向量。
块412包括使用HME或MRME来确定当前宏块及子块的运动向量。可以以关于图5所述的方式来做出当前宏块及子块的运动向量的确定。
在一些实施例中,基于片级和宏块级二者来做出运动向量的确定。因此,不执行块312并且图3的过程在图4的过程之前,取而代之的是在块412中确定运动向量。
图5绘示了确定宏块的运动向量的方式。
块502包括,在最接近的单个参考帧中,在以宏块及其子块的预测运动向量(pmv)为中心的W×H搜索窗口内执行一般ME。向量pmv的确定基于在ITU-TSeriesH:AUDIOVISUALANDMULTIMEDIASYSTEMS:Infrastructureofaudiovisualservices-Codingofmovingvideo,Advancedvideocodingforgenericaudiovisualservices(2009年3月)的称作“Interpredictionprocess”的第8.4节中描述的众所周知的技术,该技术使用与关注的宏块相邻的三个宏块的中值(median)运动向量。
块504包括确定宏块是否为高运动宏块。可以以与块402类似的方式来做出宏块是否为高运动的确定。如果宏块是高运动宏块,则块506跟在块504之后。如果宏块不是高运动宏块,则块508跟在块504之后。
块506包括,在最接近的参考帧中,在以宏块及其子块的按比例放大的粗级运动向量(cmv)为中心的W×H搜索窗口内应用ME。向量cmv从粗级运动向量而得到。块506可以基于从按比例放大的cmv定中心的ME来确定MV。
块508包括确定宏块是否为低运动宏块。可以以与块404类似的方式来做出宏块是否为低运动的确定。如果宏块为低运动宏块,则块510跟在块508之后。如果宏块不是低运动宏块,则块512跟在块508之后。
块510包括,在可用参考帧(除了最接近的单个参考帧之外)中,在以宏块及其子块的预测运动向量(pmv)为中心的W×H搜索窗口内执行一般ME。使用众所周知的H.264的称为“Interpredictionprocess”的第8.4节来确定向量pmv。注意,对于每个参考帧,向量pmv可以不同。
块512包括基于最低的率失真代价来选择对于宏块所确定的运动向量。块502及510提供多个预测运动向量,并且块502及506提供预测运动向量及单个粗运动向量。可以使用具有最小的率失真(RD)代价的运动向量和参考索引来对当前块进行编码。
自适应控制可以用于选择要执行哪个块来降低ME复杂度同时保持编码增益。例如,如果当前MB为高运动MB,则对于此MB及其子块还将执行块506,并且对于此MB及其子块将跳过块510。另外,如果仅使用单个参考帧,则对于此MB及其子块也将跳过块510。若MB为低运动MB,则对于此MB及其子块将执行块510,并且对于此MB及其子块将跳过块506。如果MB既不是高运动MB也不是低运动MB,则对于此MB及其子块将跳过块506及块510二者。利用此MB级控制,可以极大地降低ME复杂度并且仍然可以获得高编码增益。
图6绘示根据实施例的系统。系统600可以包括主机系统602和显示器622。可以在手持个人计算机、移动电话、机顶盒或任意计算设备中实现计算机系统600。主机系统602可以包括芯片组605、处理器610、主机存储器612、存储设备614、图形子系统615以及无线电620。芯片组605可以提供处理器610、主机存储器612、存储设备614、图形子系统615以及无线电620之间的相互通信。例如,芯片组605可以包括能够提供与存储设备614相互通信的存储适配器(未示出)。例如,存储适配器能够根据下列协议中的任意一种与存储设备614通信:小型计算机系统接口(SCSI)、光纤信道(FC)和/或串行高级技术附件(S-ATA)。
在各实施例中,图形子系统615可以基于在本申请中所述的技术,利用运动估计的运动向量和参考帧信息来执行视频的编码。经编码的视频可从系统600发送到视频解码器。
处理器610可以被实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、多核心或任意其它微处理器或中央处理单元。
主机存储器612可以被实现为易失性存储器设备,例如但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。存储设备614可以被实现为非易失性存储设备,例如但不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附加存储设备、闪存、电池备份SDRAM(同步DRAM)和/或网络可访问的存储设备。
图形子系统615可以执行对例如静态的或视频的图像的处理以用于显示。模拟或数字接口可以被用于通信地耦合图形子系统615和显示器622。例如,该接口可以为高清晰度多媒体接口、显示端口、无线HDMI和/或无线HD兼容技术的任意一种。图形子系统615可以被集成到处理器610或芯片组605中。图形子系统615可以为通信地耦合到芯片组605的独立卡。
无线电620可以包括能够根据适用的无线标准来发送和接收信号的一个或多个无线电,其中无线标准例如但不限于IEEE802.11和IEEE802.16的任意版本。
可以由各种硬件架构实现在本申请中所述的图形和/或视频处理技术。例如,可以将图形和/或视频功能集成在芯片组内。可替代地,可以使用分立的图形和/或视频处理器。作为另一个实施例,可以通过包括多核处理器的通用处理器来实现图形和/或视频功能。在又一个实施例中,可以在消费电子设备中实现这些功能。
本发明的实施例可以被实现为如下的任意一个或其组合:使用母板互连的一个或多个微芯片或集成电路、硬线逻辑、由存储器设备存储并由微处理器执行的软件、固件、专用集成电路(ASIC)和/或现场可编程门阵列(FPGA)。举例而言,术语“逻辑”可以包括软件或硬件和/或软件和硬件的组合。
例如可以提供本发明的实施例作为计算机程序产品,其可以包括上面存储有机器可执行指令的一个或多个机器可读介质,当由一个或多个机器(例如计算机、计算机网络或其它电子设备)执行时,所述指令可使得一个或多个机器进行根据本发明的实施例的操作。机器可读介质可以包括,但不限于软盘、光学盘、CD-ROM(光盘只读存储器)、磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁卡或光卡、闪存或适合存储机器可执行指令的其它类型的介质/机器可读介质。
附图和上述说明书给出了本发明的示例。尽管被描绘成若干不同的功能项,然而本领域技术人员将理解到这些部件的一个或多个可以很好地组合到单个功能部件中。可替代地,可以将某些部件划分成多个功能部件。可以将一个实施例的部件添加到另一个实施例。例如,在本申请中所述的过程的次序可以改变且不限于在本申请中所述的方式。此外,不需要以所示出的次序来实现任何流程图的动作;也无需一定执行所有的动作。并且,不取决于其它动作的那些动作可以与所述其它动作并行执行。然而,本发明的范围绝不受限于这些特定的示例。无论在此说明书中明确给出与否,例如结构、尺寸及材料使用上的差异的许多变型均为可能的。本发明的范围至少如同所附权利要求所给出的范围一样宽。

Claims (20)

1.一种计算机实现的用于视频编码的运动估计方法,包括:
基于按比例缩小的参考帧来确定块的按比例缩小的运动向量;
部分基于所述块的片是否为高运动片或所述块是否为高运动块中的一项或多项,确定是应用分层运动估计(HME)技术还是应用多参考运动估计(MRME)技术,其中片是否为高运动的或所述块是否为高运动的部分地取决于所确定的按比例缩小的运动向量;
基于所确定的运动估计技术来确定所述块的运动向量;以及
将包括所确定的运动向量的编码的视频发送到视频解码器。
2.根据权利要求1所述的方法,其中:
当所述块的片为低运动片时,用于确定所述块的运动向量的参考帧的数量被设定为运动缓冲器中的参考帧的数量,并且发送编码的视频包括对所述参考帧的索引进行指定;以及
当所述块的片为高运动片时,用于确定所述块的运动向量的参考帧的数量被设定为一,并且发送编码的视频包括不对所述参考帧的索引进行指定。
3.根据权利要求1所述的方法,其中,当所述块为高运动块时,基于所确定的运动估计技术来确定所述块的运动向量包括:
基于最接近参考帧来确定预测运动向量;
基于所述最接近参考帧来确定运动向量;以及
以来自基于最接近参考帧的所述预测运动向量与基于所述最接近参考帧的所述运动向量之间的最低的率失真为基础,来选择运动向量和参考帧。
4.根据权利要求3所述的方法,其中,基于最接近参考帧来确定预测运动向量包括确定与关注的所述块相邻的宏块的中值运动向量。
5.根据权利要求3所述的方法,其中,基于所述最接近参考帧来确定运动向量包括在以所述按比例缩小的运动向量的按比例放大版本为中心的搜索窗口内应用运动估计。
6.根据权利要求1所述的方法,其中,当所述块为低运动块时,基于所确定的运动估计技术来确定所述块的运动向量包括:
基于最接近参考帧来确定预测运动向量;
基于除了所述最接近参考帧之外的至少一个可用参考帧来确定至少一个运动向量;以及
以来自基于最接近参考帧的所述预测运动向量与基于除了所述最接近参考帧之外的至少一个可用参考帧的所述至少一个运动向量之间的最低的率失真为基础,来选择运动向量和参考帧。
7.根据权利要求6所述的方法,其中,基于最接近参考帧来确定预测运动向量包括确定与关注的所述块相邻的宏块的中值运动向量。
8.根据权利要求6所述的方法,其中,基于除了所述最接近参考帧之外的至少一个可用参考帧来确定至少一个运动向量包括确定与关注的所述块相邻的宏块的中值运动向量。
9.一种用于视频编码的运动估计装置,包括:
粗级运动估计器,用于基于参考帧的按比例缩小版本来确定块的按比例缩小的运动向量;
自适应运动估计控制块,用于:
部分基于所述按比例缩小的运动向量来确定片是否为高运动片,并且部分基于所述按比例缩小的运动向量来确定所述片的块是否为高运动的,以及
基于所述片是否为高运动片和所述片的所述块是否为高运动中的一项或多项,确定是基于分层运动估计(HME)技术还是基于多参考运动估计(MRME)技术来确定所述块的运动向量;以及
运动估计块,用于响应于来自所述自适应运动估计控制块的请求来选择性地确定所述块的运动向量。
10.根据权利要求9所述的装置,其中,当所述块为高运动块时,所述运动估计块用于:
基于最接近参考帧来确定预测运动向量;
基于所述最接近参考帧来确定运动向量;以及
以来自基于最接近参考帧的所述预测运动向量与基于所述最接近参考帧的所述运动向量之间的最低的率失真为基础,来选择运动向量和参考帧。
11.根据权利要求10所述的装置,其中,为了基于最接近参考帧来确定预测运动向量,所述运动估计块用于确定与关注的所述块相邻的宏块的中值运动向量。
12.根据权利要求10所述的装置,其中,为了基于所述最接近参考帧来确定运动向量,所述运动估计块用于在以按比例缩小的运动向量的按比例放大版本为中心的搜索窗口内应用运动估计。
13.根据权利要求9所述的装置,其中,当所述块为低运动块时,所述运动估计块用于:
基于最接近参考帧来确定预测运动向量;
基于除了所述最接近参考帧之外的至少一个可用参考帧来确定至少一个运动向量;以及
以来自基于最接近参考帧的所述预测运动向量与基于除了所述最接近参考帧之外的至少一个可用参考帧的所述至少一个运动向量之间的最低的率失真为基础,来选择运动向量和参考帧。
14.根据权利要求13所述的装置,其中,为了基于最接近参考帧来确定预测运动向量,所述运动估计块用于:
确定与关注的所述块相邻的宏块的中值运动向量。
15.根据权利要求13所述的装置,其中,为了基于除了所述最接近参考帧之外的至少一个可用参考帧来确定至少一个运动向量,所述运动估计块用于:
确定与关注的所述块相邻的宏块的中值运动向量。
16.根据权利要求13所述的装置,其中:
当所述块的片为低运动片时,用于选择性地确定所述块的运动向量的参考帧的数量被设定为在运动缓冲器中的参考帧的数量;以及
当所述块的片为高运动片时,用于选择性地确定所述块的运动向量的参考帧的数量被设定为一。
17.根据权利要求13所述的装置,其中,高运动片包括具有超过预定数量的高运动块的片。
18.一种用于视频编码的运动估计系统,包括:
显示设备;
无线网络接口;以及
计算机系统,被配置为:
基于按比例缩小的参考帧来确定块的按比例缩小的运动向量,
部分基于所述块的片是否为高运动片或所述块是否为高运动块中的一项或多项,来确定是应用分层运动估计(HME)技术还是应用多参考运动估计(MRME)技术,其中片是否为高运动的或所述块是否为高运动的部分地取决于所确定的按比例缩小的运动向量,以及
基于所确定的运动估计技术来确定所述块的运动向量。
19.根据权利要求18所述的系统,其中:
当所述块的片为低运动片时,用于确定所述块的运动向量的参考帧的数量被设定为运动缓冲器中的参考帧的数量;以及
当所述块的片为高运动片时,用于确定所述块的运动向量的参考帧的数量被设定为一。
20.根据权利要求18所述的系统,其中:
当所述块为高运动块时,为了基于所确定的运动估计技术来确定所述块的运动向量,所述计算机系统用于:
基于最接近参考帧来确定预测运动向量;
基于所述最接近参考帧来确定运动向量;以及
以来自基于最接近参考帧的所述预测运动向量与基于所述最接近参考帧的所述运动向量之间的最低的率失真为基础,来选择运动向量和参考帧;
当所述块为低运动块时,为了基于所确定的运动估计技术来确定所述块的运动向量,所述计算机系统用于:
基于最接近参考帧来确定预测运动向量,
基于除了所述最接近参考帧之外的至少一个可用参考帧来确定至少一个运动向量,以及
以来自基于最接近参考帧的所述预测运动向量与基于除了所述最接近参考帧之外的至少一个可用参考帧的所述至少一个运动向量之间的最低的率失真为基础,来选择运动向量和参考帧。
CN201080067136.4A 2010-03-31 2010-03-31 用于视频编码的功率高效的运动估计技术 Expired - Fee Related CN102918839B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2010/071451 WO2011120221A1 (en) 2010-03-31 2010-03-31 Power efficient motion estimation techniques for video encoding

Publications (2)

Publication Number Publication Date
CN102918839A CN102918839A (zh) 2013-02-06
CN102918839B true CN102918839B (zh) 2016-05-18

Family

ID=44711304

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080067136.4A Expired - Fee Related CN102918839B (zh) 2010-03-31 2010-03-31 用于视频编码的功率高效的运动估计技术

Country Status (5)

Country Link
US (2) US9591326B2 (zh)
KR (1) KR101390620B1 (zh)
CN (1) CN102918839B (zh)
TW (1) TWI451766B (zh)
WO (1) WO2011120221A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102918839B (zh) * 2010-03-31 2016-05-18 英特尔公司 用于视频编码的功率高效的运动估计技术
CN104169971B (zh) * 2012-03-15 2020-08-25 英特尔公司 使用非线性缩放和自适应源块大小的分层运动估计
US9019340B2 (en) * 2012-03-28 2015-04-28 Intel Corporation Content aware selective adjusting of motion estimation
CN102685371B (zh) * 2012-05-22 2015-04-08 大连理工大学 基于多分辨率块匹配和pi控制的数字视频稳像方法
CN104885470B (zh) * 2013-01-30 2018-08-07 英特尔公司 用于下一代视频的预测和编码的内容自适应划分
CN106797229B (zh) 2014-11-20 2019-06-21 寰发股份有限公司 视频编码方法
CN105306953A (zh) * 2015-12-10 2016-02-03 腾讯科技(深圳)有限公司 图像编码方法和装置
WO2019001741A1 (en) 2017-06-30 2019-01-03 Huawei Technologies Co., Ltd. MOTION VECTOR REFINEMENT FOR MULTI-REFERENCE PREDICTION
US10542277B2 (en) 2017-10-24 2020-01-21 Arm Limited Video encoding
US12132923B2 (en) * 2018-08-27 2024-10-29 Ati Technologies Ulc Motion estimation using pixel activity metrics
CN117834906A (zh) * 2019-03-08 2024-04-05 华为技术有限公司 运动矢量细化的搜索区域
TWI768324B (zh) * 2020-04-16 2022-06-21 瑞昱半導體股份有限公司 影像處理方法及影像處理裝置
CN113542743B (zh) * 2020-04-22 2024-07-09 瑞昱半导体股份有限公司 图像处理方法及图像处理装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549575B1 (en) * 1996-11-07 2003-04-15 International Business Machines Corporation. Efficient, flexible motion estimation architecture for real time MPEG2 compliant encoding

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100243430B1 (ko) * 1997-12-31 2000-02-01 구자홍 적응형 양자화 제어방법
US6721454B1 (en) * 1998-10-09 2004-04-13 Sharp Laboratories Of America, Inc. Method for automatic extraction of semantically significant events from video
KR100510138B1 (ko) * 2003-05-01 2005-08-26 삼성전자주식회사 참조 픽처 결정 방법, 그 움직임 보상 방법 및 그 장치
KR100970726B1 (ko) * 2003-10-04 2010-07-16 삼성전자주식회사 계층적 움직임 추정 방법
DE602004002455T2 (de) * 2004-04-30 2007-01-11 Matsushita Electric Industrial Co., Ltd., Kadoma Bewegungsvektorschätzung durch adaptive zeitliche Vorhersage
WO2006039382A2 (en) * 2004-09-29 2006-04-13 Thomson Research Funding Corporation Method and apparatus for reduced resolution update video coding and decoding
JP2006174415A (ja) * 2004-11-19 2006-06-29 Ntt Docomo Inc 画像復号装置、画像復号プログラム、画像復号方法、画像符号化装置、画像符号化プログラム及び画像符号化方法
US20070121728A1 (en) * 2005-05-12 2007-05-31 Kylintv, Inc. Codec for IPTV
US8879856B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Content driven transcoder that orchestrates multimedia transcoding using content information
JP5044568B2 (ja) * 2005-12-15 2012-10-10 アナログ・デバイシズ・インコーポレーテッド 予測誘導間引き探索を使用する動き推定
CN100471275C (zh) * 2006-09-08 2009-03-18 清华大学 用于h.264/avc编码器的运动估计方法
US8379734B2 (en) * 2007-03-23 2013-02-19 Qualcomm Incorporated Methods of performing error concealment for digital video
CN102918839B (zh) * 2010-03-31 2016-05-18 英特尔公司 用于视频编码的功率高效的运动估计技术

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549575B1 (en) * 1996-11-07 2003-04-15 International Business Machines Corporation. Efficient, flexible motion estimation architecture for real time MPEG2 compliant encoding

Also Published As

Publication number Publication date
KR101390620B1 (ko) 2014-04-30
CN102918839A (zh) 2013-02-06
US9591326B2 (en) 2017-03-07
TWI451766B (zh) 2014-09-01
KR20130001303A (ko) 2013-01-03
US20120281759A1 (en) 2012-11-08
US20130022126A1 (en) 2013-01-24
TW201204055A (en) 2012-01-16
WO2011120221A1 (en) 2011-10-06

Similar Documents

Publication Publication Date Title
CN102918839B (zh) 用于视频编码的功率高效的运动估计技术
US10547873B2 (en) System and method for providing real-time super-resolution for compressed videos
CN101877789B (zh) 编码器辅助式自适应视频帧内插
TW411698B (en) Methods for encoding and decoding the image sequences
CN110740318A (zh) 用于视频处理和视频译码的自动自适应长期参考帧选择
CN113678452A (zh) 对解码器侧运动矢量细化的约束
CN101610417B (zh) 一种图像填充方法、装置及设备
CN101895765B (zh) 代码转换器、记录装置和代码转换方法
CN106060539B (zh) 一种低传输带宽的视频编码方法
CN102084655A (zh) 通过过滤器选择进行的视频编码
JPWO2013031071A1 (ja) 動画像復号装置、動画像復号方法、及び集積回路
CN100539670C (zh) 已编码a/v序列的编辑
US9319682B2 (en) Moving image encoding apparatus, control method therefor, and non-transitory computer readable storage medium
US20230239464A1 (en) Video processing method with partial picture replacement
US20140354771A1 (en) Efficient motion estimation for 3d stereo video encoding
JP2008153907A (ja) 画像符号化装置及びそれらを含む情報端末ならびに画像符号化方法
US9363523B2 (en) Method and apparatus for multi-core video decoder
Jubran et al. Sequence-level reference frames in video coding
CN115190302B (zh) 在视频解码装置中进行图像处理的方法、装置及系统
CN118476225A (zh) 用于隐式地指示运动矢量预测值精度的方法和装置
CN118118680A (zh) 视频处理方法及装置
US20110051815A1 (en) Method and apparatus for encoding data and method and apparatus for decoding data
CN102318203B (zh) 用于编码包含光变的视频帧的方法及设备
JP2007067526A (ja) 画像処理装置
JP2010171480A (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160518

CF01 Termination of patent right due to non-payment of annual fee