视频编码中具有多种成本计算方法的运动细化引擎及方法

文档序号:7669603阅读:125来源:国知局

专利名称::视频编码中具有多种成本计算方法的运动细化引擎及方法
技术领域
:本发明涉X^i^t^W^5马器/编解码器的装置中使用的编码。背景絲对于S5/^见频处理装置来iJ0M编码已经成为一个重要的问题。鲁棒编码算法允许^5信号以更小的带宽传输并在更小的务賭器中务賭。但是,这些编码方法的精确度需要面对jEi^f习惯于更高,率和更高图片质量的用户的苛求。已经公布用于多种编码方法的标准包括H,264标准,该H.264标准"lbl皮称为MPEO4partl0或高M^编码(AVC)。虽然该标g出了很多功能强的技术,但进一步的改进也可以提高实施这些方法的性肯^^1。通iiii样的系统与本发明的tbi艮,常^p传统方法的其它限制和故存、对于^域"fi^^A员来"M^AE而易见的。图1-3呈淑緣本发明实施例的4#处^^置的实物图形表示。图4呈3^Nt本发明实施例的M处^^置125的方框图表示。图5呈淑娥本发明实施例的包^动搜索模夹204、运动细^^:206g式判决^212的编码器102的方才匡图表示。图6呈船本发明实施例的示例性的顶帧与底帧宏块(250,252)和示例性的顶场与底场宏块(254,256)之间关系的图示。图7呈淑緣本发明实施例的示例性的宏块分割的图示。图8呈现了M输入信号的多个宏块的图示,其示出了在特狄块的运动4hl尝或编码中使用的邻近宏块的例子。图9呈淑娥本发明实施例的包^:动细化引擎175的编码器102的方框图表示。图IO呈淑娥本发明实施例的方法的流程图表示。图11呈救娥本发明实施例的方法的流程图表示。图12呈舰娥本发明的实施例的方法的沐程图。图13呈救娥本发明实施例的方法的流程图表示。图14呈救娥本发明实施例的方法的沐程图表示。图15呈淑本发明实施例的方法的沐程图表示。图16呈淑娘本发明实施例的方法的沐程图表示。图17呈5iL^^本发明实施例的方法的沐程图表示。图18呈11#^本发明实施例的方法的沐^呈图^示。图19呈淑娥本发明实施例的方法的流程图表示。M实施方式图1-3呈船^1本发明实施例的不同的处3^^置的示意图。M来说,带内置数字记录器功食诚独立的数字5记录器的机顶盒10、计,20^W更携式计糸^30示出了结合包括本发明的一个或多个特征或功能的,处理装置125的电子装置。虽然示出了这些特定的装置,树Nt结合图本19和所附W'J^絲述的方法和系统,M处3S^置125还包括能够;itM5内^i^彌码的^^可装置。图4呈淑Mf本发明实施例的处^置125的方才匡图表示。M来说,^W处S^置125包括接Jl^^100,例如,电>1^几、有线电^L^1^几、卫星广#^1^几、宽,制解调器、3G^C才咸其它能够接收接JR^的信号98,过时分复用、频分复用或其它JJ^i^Mta取一个或多个M信号110的信息^蜮1机。^舰编石^^:102^^^到接》^100以将5信号编码或转码成与自显示装置104相对应的格式。^^发明一个实施例中,^WJ的信号98A/it^M信号,例如,电视信号、高清晰度电视信号、增强高清晰度电视信号或者其它直接地或通过一个或多个卫星或其它中继站或者通过有线网络、光网络或其它传输网络通it^线介质传输的广播M5信号。另外,接^'J的信号98还可由絲的舰文件生成,从诸如磁带、磁盘或M的记录介质中回放,并且可以包M过诸如局域网、广域网、J^网或因特网的公用网络或专用网M输的^fJJI信号。信号110可包^j^^W信号,其以多种^LM格式中的任一^H皮格式化,包括美国国家电视系,员^'J式(NTSC)、逐行倒相制式(PAL)或顺序传it^色与记忆制式(SECAM)。处^的5信号112包4^者如H.264即MPEG"4Part10高M^W编码(AVC)的数字编解码器标絲其它数字格式,例3遮动图像专家组(MPEG)格式(例如,MPEG1、MPEG2或MPEG4)、Quicktime格式、RealMedia格式、WindowsMediaVideo(WMV)或^交##式(AVI)),或另一种标准的或专有的数字^JJ^^式。舰显示装置104可包括电舰、监视器、计胁、手持装置或其它舰显示^£,其基于将处^的^!M信号112解码为;MM信号或通it4^I数字文件的回放,例M过投影,直接或间接^'J逸fe学图傳流。编码器102包樹MI本发明运Wl运动4h^^:150,M来说,包括下面结合图5-19描述的许多可选功負沐特征。图5呈船本发明实施例的包减动搜索模夹204、运动细^f娥块206g式判决模夹212的M编码器102的方4匡图^示。具体来说,编码器1024緣H.264标准、MPEG"4标准、VC-1(SMPTE标准421M)或其它标准的一些功^Ht4iE^皿作以对经由信号接口198被转^;数字格式的输入信号110进摘码。编码器102包括可^^单个处SE^置或多个处S^置^Wm处S^200。该处《置可以是孩说理器、M理器、微控制器、数^f言号处理器、微型计#^几、中M理单元、现场可编程门阵列、可编禾lil辑器件、状态机、逻辑电路、模拟电路、数字电路、和/或^^可基于4#在诸如^^块202的員器中的可辦指4^^辦信号(樹^N或数字)的装置。^f^:202可以是一个单独的存储装置或多个^ft装置。该員装置可包括^Jt驱动器或其它盘驱动器、只读絲器、随机访问賴器、易失'^##器、非易失'M^器、静态賴器、动态賴器、闪存、緩存和/或^f可^^数^f言息的装置。注意,当处^^通过状态机、才莫似电路、数字电路和/或逻辑电i^M亍其功能的一种或多种时,^f^目应可^Mt指令的賴器可被^A^包括状态机、樹以电路、数字电路和/或逻辑电路的电路内部或其夕Mp。处g块200和^f^块202通it悉线220连接到信号接口198和多个其它模块,例如,运动搜索^204、运动细^^莫块206、直接模,块208、帧内预观',210、模式判决微212、重建微214、熵编石W^216、邻居管S^块218、正向变换^JM娥块220以及去方频应滤波模块222。祯濒编码器102的各^^可以#^处,块200的M实施方案用软件、固件iU更件来实现。还需要注意的是,本发明的软件实现可被>4#在诸如磁盘或光盘、只读絲器或随机访问賴器的有形^t介质上,并iUi可以净妓产为制品。虽然示出了一个胁的总线结构,但同样可以才緣本发明实现^^1一个或多个微和/或附加总银之间的直接连接的可选结构。运动州t^:150包减动搜索微204,其基于将来自舰输入信号110的帧和/或场的行和列分割成浙。16像素*16像素大小的像素值的宏块,处#自朝顿输入信号110的图片。>^^发明的一个实施例中,运动搜索才^;M5信号的场和/或帧的每个宏块4^^t确定一个或多^动矢量(M于将宏块分割成多付块,如结合图7进一步描述的那样),所舰动矢量表示将宏块(或子块)AMW信号的参考帧或参考场移动到当前帧或场的位移。在操怍中,运动搜索mit搜索范围内操作,以在*1像素,率的^lt像素精度等MJi查找当前帧或场中的宏块(或子块)。基于用于确定具有最有利(如最低)成本的位置^目应运动矢量的^^式来估计^^位置。4^发明的一个实施例中,^^iU^于参考宏块和^^J^象素值之间的糾差值和(SAD)与加&匕率项(weightedrateterm)的和,该加拟匕率项表示对候献动矢量稀观']运动矢量(PMV)之间或者^l^t动矢量和估iffi测运动矢量之间的差进4彌码所需要的位数,其中,预测运动矢量絲于当前宏块右边的邻近宏块以;5L^于,输入信号的前一行中的相邻的当前宏块的运动矢量而确定的,估iffi测运动矢量U于M输入信号的前一行中的相邻的当前宏块的运动矢量而确定的。jth^卜,^^计算iat了在当前宏块内的邻i^子块的4吏用。照这样,运动搜索;j^:204能够^f宏块i^ff^怍以同时为宏块中的每M块确定运动搜索运动矢量。运动细^r^块206基于运动搜索运动矢量生成用于多个宏块中的每个宏块的细4腿动矢量。^^发明的一个实施例中,运动细^^M;M输入信号110的场和/或帧的每个宏块MM确^^示将宏块M^^信号的参考帧或参考场移动到当前帧或场的^^的细^^动矢量。在,中,运动细^^^将当前帧或场中的宏块的位置细化为诸如1/4像素^f率的更高像素精度等级。同样基于用于确定具有最有利(例如,最低)^^的位置和细m^动矢量的成^^式来估计候选位置。^动搜索^的1中,^^iU^于参考宏块和候^块像素值之间的^差值和(SAD)与加权比率项的和,该加权比率项表示对候艇动矢量械观'隨动矢量(PMV)之间或候躯动矢量和估i"h55观'隨动矢量之间的差进4亍编码所需要的位数,其中,预测运动矢量A^于当前宏^边的邻^块以;^于输入信号的前一行中的相邻的当前宏块的运动矢量而确定的,估iffi测运动矢量A^于M5输入信号的前一行中的相邻的当前宏块的运动矢量而确定的。jH^卜,^^计算敏了在当前宏块内的邻近子块的^^。照这样,运动细4^块206能够对宏块进,怍,以同时为宏块中的每个子块确定运动搜索运动矢量。射卜,如^Mi^iCA^(skipmodecost)H^Ui^式阈值更有利,则运动搜索,202iUt动细4^^:204可通过估计与固定运动矢對目关的^^,以线淑Mt^动搜索和/iUt动细化的針部分,辆定^LM输入信号110的P片段的浪Ut^iU^。需要注意的是,当估计的预观'隨动矢4^fM时,^/>^€^了来自当前^^ji^动矢量的^JI,并iUl动搜索a204^il动细^tt1^206均能以流7JC线方i(JL^M输入信号110的^Nt上以并,方i^lMt以同时为行中的每个宏块确定细4腿动矢量。直接模i^:208基于与像素宏块相邻的多个宏块,生賴于多个宏块中的每个宏块的直接模錄动矢量。^^发明的一个实施例中,直接模A^:208例如以H.264标准定义的方^^来确^i:接模^动矢量并基于;^M输入信号110的B片段的直接模^动矢量的^M定与直接模^动矢對目关的虽然以-b^:侧重于运动矢量的帧间预测,但帧内预观,J^:210生^1于多个宏块中的每个宏块的最佳帧内预须'膽式。M来说,帧内预须',210基于从邻^块确定的运动矢量来确定最佳帧内预测模式^目关的M,以诸如H.264标准定义的方式来估计多个帧内预观'碟式。模式判决微212基于与细^^动矢量、直接模錄动矢量和最佳帧内预测模iU目关的成本,为多个宏块中的每个宏块确^L终运动矢量,M来说,该方法实现最有利(最低)成本,不然则;i可接受的成本。重建模块214通过4树多个宏块中的每个宏处成与最终运动矢衫目对应的残余^t和/或色度像素值完^t动^^尝。^fW编码器102的正向变换^iMt^块220通过将编石^J:化的残^f象素值变^量化的变^的系数,从而生成处3^的^LM信号112,该量化的变换后的系数可i;H^tii^编^央216中的熵编/5^Aii—步编码,通过去方M应滤波模块222被滤波,并被传^Vil^为处理后的M信号112。如上所述,运动州^^150中的许多>|^^于为邻^^^斤确定的运动矢量而运作。当对多个宏块中的至少一个邻战块辦时,邻居管^#^218生成并a用于多个宏块中的至少一个宏块的邻居数据,以供运动搜索^204、运动细^^206、直接模^^208、帧内预领'J^:210、熵编^^:216和去方賊应滤波^^:222中的至少一个^^检索。扭动矢量(或在宏块分割的情况下的多恒动矢量,结合图7和8进一步M)和其它编^lt据被最^f匕时,邻近数据被>4#用扭未净狄理、但仍需^fM该数据的邻战块的处理中。W卜,邻近数4t^被M用于a图片的处理,例如,输入信号110的^帧和/或场。^v发明的一个实施例中,诸i^^接表、凝iail—个或多个寄存器的数据结构净iUD来关^^^每个宏块的邻居数悟。邻居数据包M动矢量、参考指标、量4tl^:、编码块模式、宏块类型、帧内/帧间预领,J^:类型的邻近像素值和/或来自相邻宏块和/或子块的其它数据,这些数据:R^发明的一个或多个;^:或过程用来计算当前宏块的结果。例如,为了供运动搜索嫩204械动细化206确定预观'隨动矢量,需^4卩居的运动矢量和参考指标。除了这些数据O卜,直接模,夹208需要前面的参考图片的协同找到的宏块(collocatedmacroblock)的运动矢量。去方i^应滤波模块222才^f^I邻居的运动矢量、量^#数、参考指标和编码块模式等确定的一组滤波强度而进4沐怍。对于熵编;娥块216中的熵编码,则需^"运动矢量差(MVD)、宏块类型、量^#^变量5、帧间预测类型等。考虑一个例子,其中,特定的宏块MB(x,y)需要来自宏块MB(x-l,y-l)、MB(x,y-l)、MB(x+l,y-l)和MB(x-l,y)的邻居数据。4^技术的编解码器中,邻居数据的准备需要计算相关邻居子块的位置。但是,该计算并不是^^传统编码标准中一样直接。例如,在IL264编码中,支持多分割类型使得子块的大小树^E^变化。jH^卜,支持宏块自适应帧和场(mbaff)编码允许宏狄于帧模式或场模式。对于每种模式,在H,264中定义了一种邻居导出方法。因此,计算需要相应财虑每种模式。jH^卜,为了得到所需要的所有邻居数据(neighbordata),该推导需要被调用四次,这是因为存在四个有关的邻居——MB(x-l,y國l)、MB(x,y-l)、MB(x+l,y-l)、和MB(x画l,y)。因此,直到四个邻居的位置已经被确定并且它们的数据都M^t器中取出,才可以开始当前宏块MB(x,y)的编码。本发明i^t了以上问题。*^来说,当每个宏块;tN^理并Jj:终的运动矢量和编^^t据^皮确定时,邻居数据被^^在用于将需要该数据的每个邻^块的数据结构中。因为邻居数据被预先准备,所以在当前宏块MB(x,y)准备^^t理时其可立即开始处理。精确确认邻居的负担实际上被重新分酉Ci^^L前的宏块。因jH^块的编^更流畅^il。换句"^i兑,当对于MB(x-l,y-l)^定了最终运动矢量时,邻居数据被<##用于ii^f狄理的每个邻妙块,包括MB(x,y)以;5L^4p战块,例如MB(x,y-l)、MB(x-2,y)、MB(x-l,y)。#^Mk,当对于MB(x,y-l),MB(x+l,y-l)和MB(x-l,y)确定了最终运动矢量时,邻居数据被,宏块。照这样,当MB(x,y)准^4i^理时,邻居数据已经被^#在与该宏块相对应的数据结构中以便'^1检索。然后可利用检索到的数据进极动州尝。絲来说,运动搜索微204和/少一个预测运动矢量(例如,标准PMV或估计的预测运动矢量)。直接模i^:208可利用检索到的邻居数据生成用于多个宏块中的每个宏块的至少一个直4^模^动矢量,并且帧内预观'J^:210可利用检索到的邻居数据生成用于多个宏块中的每个宏块的最佳帧内预须'展式,并,石^:216可将检索到的邻居数据用在熵编码中,分别如在H.264标准、MPEG^4标准、VC-1(SMPTE标准421M)中所述的那样或通过其它标准或其它方法。虽然未清楚地示出,^L频编码器102可包括M器緩存、务賭器管,块、皿滤波器或其它视频滤波器,和/或支持将输入信号110编码为处理后的视濒信号112的其它模夹。图6呈淑緣本发明实施例的示例性的顶帧与底帧宏块(250,252)和示例性的顶场和底场宏块(254,256)之间关系的图示。a个实施例中,运动搜索模块204通过同时估计宏^t生成用于多个宏块中的每个宏块的运动搜索运动矢量,其中,该宏JM"包^fJ^输入信号110的一帧中的顶帧宏块250和底帧宏块252以及^LM输入信号110的相应场中的顶场宏块254和底场宏块256。考虑所示的例子,每个宏块都是16像素xl6像素大小。通过将包括顶帧宏块250和底帧宏块252的当前帧的候选帧宏M与参考帧的宏块对相I^艮,以^象素^f率或其它M率(更粗或更细的,率)扭4豫动搜索。jH^卜,来自^l^帧宏^t的第一奇偶线(例如,奇Kt^)净i^^且形成顶场宏块254。翻以地,来自^i^帧宏树的第二奇偶线(例如,^MJ^^^且形餘场宏块256。运动搜索模块204计算与多条勤目关的^,并JJ^于对所述多条线中的多条顶线所累计的礼^而生成与顶帧宏块250相关的^^,基于对所述多条线中的多条底线所累计的成本而生成与底帧宏块252相关的#,基于对所述多条线中的多条第一奇偶线所累计的^与顶场参考i^场参考相H^而生成与顶场宏块254相关的成本,并JL&于对所述多条线的多条第二奇偶线所累计的^并JL^于顶场参考M场参考而生成与底场宏块256相关的^。照这样,可以同时生成用于宏^t的六个^:与参考的顶帧相tb^的顶帧;与参考的底帧相t嫩的底帧;与参考的顶场相t嫩的顶场;与参考的底场相t嫩的底场;与参考的底场相t傲的顶场;与参考的顶场相t嫩的底场。这些M中的—个可基于当前帧或场与参考帧或场之间的像素值的^差值和(SAD)来生成。这些SAD可在单^t道中基于^^的累计结果被同时计算。对于特^块(顶帧鎮帧,顶场城场)的总的SAD可通辦《誠该特定宏块的线的SAD,1^来确定。可选地,基iH者如4xl段的更小的段,可在单^itif中计算这些SAD,上述更小的段可以累计成子块,而这些子块又可以累计成总的宏块总和。该可选的安排特别可用于基于将宏块分割为更小的子块而工作的运动搜索模块,这一点将结合图7进^ii一步"^用于当前宏M的帧模iU^可按照如上所述的方^^^成。J^卜,运动搜索微204可i4^4于在当前底场宏块和底场宏块参考之间、当前底场宏块和顶场宏块参考之间、当OT场宏块和底场宏块参考之间、以及当"W场宏块和顶场宏块参考之间累计的差(例如,SAD)生成场判决。场判决包括确定哪种组合(顶顺,l底)或(顶/底,細)具有更低的絲。类合她,基于帧模式成本是比场模iU^更有利(例如,更低)还U不利(例如,更高),基于场模式判决,运动搜索微204可以任意^^#+贞模錄场模^于特定的宏块M来说,邻居管块218生成邻居数悟,该邻居数据包括当在帧模式下处理时供在至少一个宏块下方的一行中的邻i^块检索的帧下方邻居数据以及当在场模式下处理时供在至少一个宏块下方的一行中的邻i^块检索的场下方邻居数据。jH^卜,邻居数据包括当在场模式下处理时供在至少一个宏^边的邻i^块检索的帧右侧邻居数据以及当在场模式下处理时供在至少一个宏块右边的邻^块检索的场右侧邻居数据。照这样,利用邻居数据^ft并可以在帧模式或场模式下,的运动州i^:150的运动搜索^:和其它^^可直接访问用于在所关心的宏块上方的帧模式邻居的帧模式邻居数悟、用于在所关心的宏块上方的场模式邻居的场模式邻居数悟、用于在所关心的宏块左边的帧模式邻居的帧模式邻居数^V或用于在所关心的宏^边的场模式邻居的场模式邻居数据。如前所述,该信息在前面的宏块的处理中被^W,不管宏^身是在帧模式下^A在场模^^t理,并且可以通it^賭器中直,索,而不需絲^J^进一步处理,就可以在所关心的宏块的处理过程中访问该信息。图7呈^N舰输入信号的宏块分割为多付块的图示。*^来说,虽然以上结合图5所描述的i^:可例:H艮提H.264标^具有例如16像素*16像素大小的宏块进41#^,但A^块可^^割为更小尺寸的子块,如在一个iiJi是4像素,其中参照宏块描述的功能和特减用于每付块,子块的^H象素位置用圆A^示。例如,运动搜索微204可生賴于每个宏块中的每付块的单独的运动搜索运动矢量等。宏块302表示根据H.264标准分割成子块的一个例子。宏块300、304和306表示其它可能的分割成子块的例子。M来说,宏块300是^^割为一个8x16子块和两个8x8子块的16x16宏块。宏块302是^A^割为三个8x8子块和四个4x4子块的16x16宏块。宏块304是^fc^割为一个8x16子块、一个8x8子块和两个4x8子块的16x16宏块。宏块306是,A^割为一个8x8子块、三个4x8子块、两个8x4子块、和两个4x4子块的16x16宏块。由于需要多种4hf尝方法,将宏块分割成更小的子块增加了运动4M尝的复杂性,例她动搜索不仅要确^I于每个子块的运动搜索运动矢量,还要确定在特定宏块的所有可能分割的齡范围内的最^il动矢量。然而,结果可以iiJ"更精确的运动4hl尝并且斷^解码的视频图像中的压缩伪像。图8呈HWM输/v信号的多个宏块的图示,其示出了在特U块的运动补偿或编码中使用的邻近宏块的例子。三个宏块MBn-l、MBn和MBn+l被显示为在帧或场模式下的输入信号的三行行i-l、行i和行i+l。为了清楚而省略了表示^N^像素位置的圆点。例如,考虑M编码器102正^t宏块MB(n4)进4沐怍。进一步考虑,运动细4娥块206、运动搜索模块204、直接模^块208、帧间预测模块210和编鄉块216可能需要为MB(n-:M-l)中的4x4子块DO、MB(n4-l)中的子块B0、MB(n+14-l)中的子块C0和MB(n-:M)中的子块AO而确定的最终运动矢量。当MB(n-14-l^^t理时,DO的运动矢量连同用于其它邻居的(例如,MB(iM-l)、MB(n-24)和MB(n-14))的邻居数#-^被^#在与MB(n4)^目关的数据结构中。当MB(n4-lW狄理时,BO的运动矢量连同用于其它邻居的其它邻居数4t"^被"^^在与MB(iM)^目关的数据结构中'当MB(n+14-l)^^t理时,CO的运动矢量连同用于其它邻居的其它邻居数据^^被^4^在与MB(n4)相关的数据结构中。并且当MB(n-l扭狄理时,DO的运动矢量连同用于其它邻居的其它邻居数^"^^被^i^ft在与MB(ii4)相关的数据结构中。照这样,当MB(n浙狄理时,必要的邻居数据中的4—个都可以容易地从数据结构中检索到。虽然以上讨论涉及如结合图6讨论的帧或场模式下的处理,但帧模式和场模式的邻居数据均可以被^4,以供|5|^在邻^块的处理中##需要进#^索。jt(^卜,虽然以上讨论集中在单独的宏块,链于宏财的处理的邻居数据也可与例如由从直接在宏块对的处理中生成的、M块对内的顶宏块导出的底宏^^HM的邻居数^^^被,。图9呈淑娥本发明实施例的包^t动细化引擎175的M编码器102的方框图。除了之前已经描idit的由相同的附图相^^斤指示的^M^卜,运动细化引擎175包括一个共享M器205,其可以单M由M器^202实舰者是该*器模块202的4分。jtk^卜,运动细化引擎175可以用专用硬件配置实现,^*有能^捐不同的参考图片处理子像素搜索的非常通用的设计~不管帧或场并且不管时间上向前、时间上向后、或向前和向后之间的混合。运动细化引擎175可在多种压缩模式下操怍以在优化的单个框架中支持多种不同的压缩算法,例如H.264、MPE04、VC-1等。可以只刮对色度、只针对H或同时4树色度和亮度进4rt建。例如,这些压缩模式的性能可以包拾H.264:I.当MBAFF为ON时,对于向前/向后和混合方向,对所有分割成大小为(16x16)、(16x8)、(8x16)、(8x8)的子块的大分割进彼动搜索和细化。舰包括场和帧MB类型。2.当MBAFF为OFF时,对于向前/向后和混合方向,对分割^(16x16)、(16x8)、(8x16)、(8x8)的子块的所有分割、以及细分成大小为(8x8)、(8x4)、(4x8)、(4x4)的子块的子分割进^^动搜索和细化。3.计算MBAFFON和OFF时的直接模式和/i^Mt^^A^。4.模式判;^i^于在MBAFFON和OFF下的所有以上分割。当调用M运动重建时,隐^i^目应分割的色度重建。5.运动^f沐^M尝包^f^!H.264标准的6抽头滤波算法的四分^L-^f象素精錄终运动矢量。1.在场和帧模式下,对于向前、向后和混合方向,对于16x16和8x8分割的运动搜索和细化。2.模式判^l^于以上分割中的^个。这包括亮度柄目应色度重建。3.运动细^^MM尝包括VC-1标准的赠性^H象素精^if运动矢量。MPEG~4:1.在场和帧模式下,对于向前、向后和混合方向,对于16x16和8x8分割的运动搜索和细化。2.模式判^A^于所有以上分割。重ltK涉及亮度。3.运动细m^^M尝包括vc-i标准的^性^H象素精度MV。jHl^卜,运动细化引擎175可在下述两种1^X作模式下运行(1)运动细^^莫块206的操怍由包括^##器*202中并且由处S^块200扭/ff^软件/固件算法li^和/或指挥;(2)运动细^^狭206的^ft由运动搜索才狭204触发,而很少有或没有软件/固件干涉。第一模^娥可肯fe^本文修改的一个或多个标准g行。第_=1#^模式能以自动方式被动态控制并被'^^^亍,而没有质量损失。共享g器205可以单3她、独JL^并同时^M皮运动搜索模块204^动细>^206访问,以协助第一或第^Mt模式。*^来说,共享絲器205包括M器的-"^分,例如务賭由运动搜索模块204扭行的计算产生的结果(例如,运动矢量和絲)的^^。该^^可包括共享絲器中的多个固定位置,其中,这些计算结^C存储以供运动细4娥块206!^检索,尤其用在第"^Mt模式中。除了^4"卜,共享賴器205还可絲附加信息(例如,提示表),该附加信息也狄于由运动搜索微204^f亍的计算结果,告械动细^^206和在^^模式下^^I的判决的固件。例子包拾伊^哪些分割是好的,其它的是不好的和/或可被丟弃的;识别帧模式或场模式項Ph^W^到什么M;以及识别向前、向后和〉'^^方向中項P个方向^W(f到什么禾i^等。运动搜索^^可基于它获得的结果提早终ii^计算。在^^T情况下,运动搜索可通it^it动搜索模块204发i!U'J运动细^^块206的触发信号来直接触17发运动细化的开始。运动细^^块206可以基于^^La示^N或^表中的数据可选择只细4沐定的分割、特定的模式(帧或场)和/或特定的方向(向前、向后或混合方向),其中运动搜索模块204或运动细4娥块206基于成本阈值或其它性肯M示)^角^h述特定的分割、特定的模式(帧或场)和/或特定的方向(向前、向后或混合方向)是好的。可选的是,运动细4娥块能够以更统一的方法基于软件/固件算法直接进行。照这样,运动细化引擎175能够动态^it棒,操作以流水线A^并行地完a动搜索和运动细化,使得基于由运动搜索模块204扭軒的计算,对于向前、向后和混合方向或对于仅一^Nt定方向,对选定分割、单个分割的所有子块、分割组錄于帧和场、只基于帧或场模式的整个MB/MB对拟亍细化。在辦中,运动搜索才缺204针对多个MB/MB对的一个宏块的多个分割同时生^1于多^K"块的运动搜索运动矢量。当运动细^^:206被使能时,其基于用于多个宏块的所述宏块的多个子块中的#-个子块的运动搜索运动矢量,4树多个宏块的MB/MB对的多个分割同时生^1于多^K"块的细^^动矢量。才莫式判决^^于与用于多个宏块的所述宏块的多个分割的多个子块中的^个子块的细4^1动矢對目关的成本,选择多个宏块的所述宏块的多个分割中的M分割,并为与多个宏块的所述宏块的J^分割相对应的多个子块中的^-H^块确^L终运动矢量。重建模块214生成与用于多个宏块的所i^块的多个子块的最终运动矢封目对应的色度和/或亮度的残^^象素值。jHJ卜,运动搜索模块204^t动细^^块206可以在多种其它选定模式下操怍,这些模式包括与第一压缩标料目对应的模式、与第二压缩标斜目对应的模式和/或与第三压缩标料目对应的模式等,其中,可以基于i^l模iC^行多个分割。例如,在"^t模式下,在MBAFF信^i皮断言时,运动搜索模块204和运动细4娥块206能够在宏块自适应帧和场(MBAFF)被使能的情况下进4沐作,并且当MB層信"!i皮撤销断言时,运动搜索微204械动细^^:206能够在宏块自适应帧和场(MBAFF)被禁用的情况下进^Wt,并且其中,多个分吝bU^于MBAFF使能信号。在一个实施例中,当MBAFF信"!i皮断言时,宏块的多个分割将宏块分割为具有大小为16像素xl6像素、16像素x8像素、8像素xl6像素和8像素x8像素的第一最小尺寸的子块,其具有8像素的最小尺寸。W卜,当MBAFF信"!i皮撤销断言时,宏块中的多^^割将宏块分割为具有大小为16像素xl6像素、16像素x8像素、8像素xl6像素、8像素x8像素、4像素x8像素、8像素x4像素和4像素x4像素的第二最小尺寸的子块,^Jr有4像素的最小尺寸。在其它辦模式下,宏块的多个分割将宏块分割为大小为16像素xl6像素和8像素x8像素的子块。虽然在上面描述了具体宏M寸,但其它尺寸也同样可肯t^^发明的较宽范围之内。除MB/MB对的分割U于所iM)的特定压缩标准外,运动搜索模块204可生成用于多个宏块的一个宏块的多个分割的多个子块的运动搜索运动矢量,并J^于^Li^H言号生成多个分割的^i且。jtk^卜,运动细^^206可以基于多个宏块的一个宏块的多个子块中的^个子块的运动搜索运动矢量,生成用于多个宏块的所ii^块的多个分割的^i且的多个子块的细^it动矢量。在这个实施例中,为了加决算'^1,Mi^H言号可被运动搜索微204用絲捧l^fe应用一个或多个阈錄P艮制运动细^^206所考虑的分割数量。例如,当^i^H言号具有第Hi时,运动搜索微204通辦于多个宏块的所ii^块的多个分割将与用于多个子块中的^"个子块的运动搜索运动矢量相关的累计M与第一阈值进行比较,并#^^且指定为累计礼比第一阈值更有利的分割,借J^角定多个分割的ii^组。^Eit种模式下,如果JC现一个生成非常好的M的特定分割,则运动搜索,204可对于该特^块提早终止,并Jil动细^^块206可不对整个分割^ii,怍,而对生成比第一阈值更有利的4的特定分割进^#^。^卜,当^i^a号具有第4时,运动搜索a204通iW于多个宏块的一个宏块的多个分割比较与用于多个子块中的^"个子块的运动搜索运动矢對目关的累计礼^,并^p^i且指定为具有最有利的累计^^的^:的分割,借jH^角定多个分割的^M。jH^卜,运动细>*^206可不对整个分割^ii^#怍,而对Mi^动搜索中生成最有利^^的特定分割进^f沐怍。jH^卜,当^it賴号具有笫三值时,运动搜索^204通iW于多个宏块中的一个宏块的多个分割将与用于多个子块中的^-H^"块的运动搜索运动矢J^目关的累计iU^第二阈值进行》嫩,并^i^i且指定为具有比第二阈值更有利的累计M的多个分割中的^"个分割,借jtb^定多个分割的^i且。在这种模式下,运动细^^块206可不对整个分割lt^剩乍,而M生成比第二阈值更有利的^的那些分割进^#怍。19如上所述,运动搜索模块204和运动细^f诚块206可以被iMC线化并可以用来同时并行i^十对多个宏块的一个宏块的多个分割生成用于多个子块的运动搜索运动矢量。j^卜,共享务賭器205可紧密m^到运动搜索模块204械动细^^块206以有效iik^4^来自运动搜索模块204的、对于分割的i^i且的结果,以供运动细^^狭206寸M。胁来说,运动搜索微204#^割的狄组^M目应的运动搜索运动矢量^^到共享务賭器中,并将其它结果^ft在M^:示表中。运动细^^206从共享^器中检索分割的i^i^H目应的运动搜索运动矢量。在一个M实施例中,响应于将所^块的分割的i^i脉相应的运动搜索运动矢量和/或其它结^ft在共享絲器中,运动搜索微204可生成一个0^L信号,并且响应于该触发信号,运动细^^:206可以开始检索共享員器中的分割的选^ia^目应的运动搜索运动矢J^/或其它结果。如上所述,例如当徊Mi^式下,与固定运动矢對目关的^^k^ii^式鉢阈值更有利时,或如果与特定分割相关的总鉢to^过细化絲阈值更有利时,可通iii^捧歸禁用用于特^I用、压缩标絲用于特n块的运动细^^^M亭ji^t特^^块的运动细化,其中,运动搜索运动矢量可以,M来代替细^i^动矢量。在另一可选的特征中,运动搜索模夹204基于一个或多个成本计算(例如之前讨^l^差值和(SAD)M),对于多个宏块中的一个宏块的多个分割生划于多个子块的运动搜索运动矢量。然而,当运动细^^缺206被使能时,其基于多个宏块中的所述宏块的多^K"块中的^H^块的运动搜索运动矢量,基于累计变^JHi^(satd)^^,对于多个宏块中的所^块的多个分割生成用于多个子块的细^t动矢量。在这种情况下,模式判决模块212—^4于来自运动搜索#204的sad^^者基于来自运动细^^块206的satdil^ii^ft的。M来说,模式判决微212^^到运动细^^:206械动搜索粼204。当运动细^206对于多个宏块中的一个宏块被使能时,模式判决敝212基于与用于多个宏块中的所述宏块的多个分割的多M块中的^个子块的细^f^^动矢l^目关的satd礼,选择多个分割中的一^S4^^割。jHW卜,当运动细^^206对于多个宏块中的一个宏块被禁用时,模式判决微212基于与用于多个宏块中的所^块的多个分割的多M块中的^^H"块的运动搜索运动矢&目关的sad#,选择多^h^割的-H^^分割,并且为与多个宏块中的所述宏块的it^分割相对应的多个子块中的^H^块确定最终运动矢量。因为运动细化引擎175可在帧模式或场模式下剩乍,所以模式判决模夹212基于与用于多个宏块中的一个宏块的多个分割的多个子块中的^-^H"块的细^^动矢對目关的SATDM于与用于多个宏块中的一个宏块的多个分割的多W块中的^-H^块的运动搜索运动矢勤目关的SAD^^,为所ii^块选##模式或场模式中的一种模式。^^发明的一个实施例中,运动细化?I擎175被设计为通过位于共享M器205内的命令FIFO进行工作。由于命令FIFO的高AA活的设计,使引擎的功能灵活性劾可能。命令FIFO具有四个32位寄存器,其中之一^JU于运动细化引擎175的l^器。它可被编程为在有或没有MBAFF的情况下,对于向前、向后和混合方向能够同样容易地完成对单个分割、一组分割或整个MB/MB对的运动细^/W尝。需要注意的是,保留了多*以支持本发明的其它特征。在一个特定实施例中,命令FIFO的结构如下表所示。字"^比特位置描述TASK1:00=搜索/细化1=直接2=运动稀/重建D腿CTION4:2位0:向前位l:向后位2:絲WRTTE一COST50=不写出M1=写出#PARTITIONS51:6哪些分割要开始和停止'这才娥MBAFF^iiii娜释TAG58:52銜己IndexFIFO条目-7位DONE59在结束该条目时产生中断<table>tableseeoriginaldocumentpage22</column></row><table>将写出运动4M尝像素并将开始运动^hf尝的^项)CURR一MB一X102:96宏块的当前X坐标絲103CURR一MB一Y110:104宏块的当前Y坐标絲mLAMBDA118:112对于^^a权的部分絲121:119BWD—REF—歸EX124:122向后参考索引FWDREF—INDEX127:125向前参考索引除了命令FIFO"卜,g动细化引擎175的共享^#器中^一些片,寄存器。这些包^iH^f吏用的编解码器、图片H图片高度、片段类型、MBAFF#iE*、SATD/SAD^i己等共用^LM信息。通ii^J"以上lt据位的适当编程,可以解决以下灵活掛场景1.任^i定义了将要由运动细化引擎175^^f亍的,。通过将其与寄存器中的编解码^f言息适当地组合,运动细化引擎175可为以上所列的所有编解码^M亍上述任务中的4i-种。2.方向位是指需JH^^J并^S^码B片段中特别有用的参考图片。这3个位的任意组合可i经用于^f可任务。通过使能所有这3个^i^f^化,运动细化引擎175可以在一次调用中沿所有三个方向完^j"整个MB的运动细化。然而,运动细化引擎175还可以选^f壬意特^r向^tef那个方向船细化(也许在P片段中需要)。命令FEFO因jtb^供灵活性以解决单次全方向调用或多次单方向调用这两种情况。3.分割#其设计中非常灵活,^HP满A^)于所有分割和子分割的运动细4沐重建。通过有^Mf这些位与方向^^且合,运动细化引擎175可实致情况,即,对于所有方向一次'树所有分割^f亍细化,或者在一^#定方向Ji^^的分割ll^旨细^^卜偿。分割伍£由运动细化引擎175基于寄存器中的MBAFFON才封eii行不同地动态解释。因此,^J1优化的、有限的位集合,运动细化引擎175可解决分割組合的无穷情况。用于这些模式中的每种模23式的分割位的结构在下表中列出,该表体现了帧(FRM)、场(FLD)和直接模式(DIRECT)结果。MBAFFON:<table>tableseeoriginaldocumentpage24</column></row><table><table>tableseeoriginaldocumentpage25</column></row><table>MBAFFOFF:<table>tableseeoriginaldocumentpage26</column></row><table>命令FIFO还具有提早终止策略,其可以有舰用来智肯^>速运动细化。这些策略可直接结^动搜索;^:204或在处理器200的"f^下^f^J以it应算法的需要。;^^如下a.BESTMBPARTITION(最佳MB分割)狄一俠级舰的模式,^it择由运动搜索所指示的最^^式来^t细化。运动细卩m查看基于用于BEST分割的运动搜索结果而只诏!一帧或一场的阈M中的特定分割。b.THRESHOLDENABLE(阚值使能)该才射己用于使阈值信息能够^i^动搜索MS状态寄存器中^^J。如果该位为ON,则运动细化引擎175M在MS状态寄存器的阈值部分中的指定模式^f亍细化。该位如下工作。对于顶部/底部,帧/场MB中的^—个,按以下4^f亍如絲MS状态寄存器的阈值部分中使能任意分割位(16x16、16x8、8x16、8x8中4—个)(这意pM阈值e^合这些分割),则进行所有那些使能的分割而不顾命令FIFO中的PARTITION位。对于MBAFFOFF情况,当8x8#^皮iM时,树如在8x8分割中的#^个分割的提示表中指定的最佳子分割完成细化。运动细^f5L查看基于满足该阈值的那些分割的运动搜索结果iM的、位于阈*中的多^#定分割。图10呈船娘本发明实施例的方法的^f呈图。*#来说,该方法呈綱于结合与图l-9-"^描述的一个或多^N^妙功能。在步骤300中,通过同时估计来自输入信号的一帧的顶帧宏块和底帧宏块以及来自输入信号的相应场的顶场宏块和底场宏块,生成用于多个宏块中的#-个宏块的一个或多个运动搜索运动矢量。在步骤302中,当步^f皮使能时,基于一个或多桓动搜索运动矢量,生成用于多个宏块中的每个宏块的细^^动矢量。^^发明的一个实施例中,步骤300基于估计的预测运动矢4i十^运动搜索运动矢對目关的礼^,该估计的预观'隨动矢量只A4i^5输入信号的至少一个在先行中的邻^块。至少一个在先行可包括包含顶帧宏块的输入信号的一行上面的行。jHJ卜,步骤300可以伶计多个宏块中的#-~个宏块#割成多个子块,并且其中,用于计算多个子块中的一个子块的i^的估计的预领'降动矢4^^于残余多付块中的^-付块。jft^卜,步骤300可以将与每个宏块的多个分割相关的^M礼^阈銜目》诚,并且如果与多个分割中的一错定分割相关的絲比絲阈值更有利,则终止估计。^^发明的一个实施例中,步骤300计算与多条线有关的^,并M于对于多条线中的多条顶部线所累计的成本生成与顶帧宏块相关的成本,基于对于多条线中的多条底部线所累计的成本生成与底帧宏块相关的礼^,基于对于多条线中的多条第一奇偶线所累计的成本生成与顶场宏块相关的成本,基于对于多条线和的多条第二奇偶线所累计的成本生成与底场宏块相关的礼^。jHJ卜,步骤300可以基于底场宏块和底场宏块参考之间、底场宏块和顶场宏块参考之间、顶场宏块和底场宏块参考之间、顶场宏块和顶场宏块参考之间所累计的差值产生场判决。^^发明的一个实施例中,步骤300在以开始运动矢量为中心的小搜索区域内启动一个小搜索,估计与小搜索区域内的多^S矣i^t动搜索运动矢對目关的#,将与每^H吳^动矢對目关的^^小搜索^^阈銜目比较,并且当与小搜索区域内的多个^i^运动搜索运动矢量中的一个矢*4目关的礼^比小搜索#阈值更有利时终止估计。》b^卜,步骤300可生^1动搜索矢量,将与固定运动矢對目关的^M固^^阈似目比较,并JL^"于多个宏块中的一顿^块,当与固定运动矢對目关的鉢比固^^阈值更有利时,生錄动搜索模块的步骤禁用生成用于多个宏块中的一个特定宏块的细化运动矢量的步骤,并且将固定运动矢量指^细^^动矢量。iW^卜,步骤300可在以开始运动矢量为中心的比小搜索区域大的大搜索区域内启动一个大搜索,估计与大搜索区域内的多^S矣魅动搜索运动矢勤目关的鉢,将与每^H^t动矢對目关的成^大搜索成本阈銜目t嫩,并且当与在大搜索区域内的多w吳^动搜索运动矢量中的一个相关的M比大搜索礼^阈值更有利时终止估计.图11呈舰娥本发明实施例的方法的流程图。M来说,该方法呈现用于结合与图1-10""^描述的一个或多>^##功能。在步骤400中,对于多个宏块中的^-个宏狄成一个或多恒动搜索运动矢量。在步骤402中,基于一个或多^动搜索运动矢量,对于多个宏块中的每个宏块生成细^t动矢量。在步骤404中,基于与像素宏块相邻的多个宏块,生成用于多个宏块中的每个宏块的直接模^动矢量。在步骤406中,生成用于多个宏块中的每个宏块的最佳帧内预须,J^式。在步骤408中,基于与细^it动矢量、直接模^动矢i^最佳帧内预测模^目关的4,为多个宏块中的每个宏块确^l终运动矢量。在步骤410中,生成与用于多个宏块中的每个宏块的最终运动矢對目对应的残^^象素值。在步骤412中,当对多个宏块中的至少一个邻被块进^^t时,生成并^ft用于多个宏块中的至少一个宏块的邻居数据,以供生g动搜索运动矢量、生成细4腿动矢量、生成直接模^动矢量以M成最佳帧内预测模式的步骤中的至少一个步^i^Hr。4^发明的一个实施例中,步骤400、402、404和/或406在宏块自适应帧和场模式下,并且基于包#输入信号的一个帧中的顶帧宏块和底帧宏块以及输入信号的相应场中的顶场宏块和底场宏块的宏块对,分析多个宏块中的每个宏块。邻居数据可以包括当在帧模式下处理时供在至少一个宏块下方的一行中的邻^块检索的帧下方邻居数据;以及当在场模式下处理时供在至少一个宏块下方的一行中的邻i^块检索的场下方邻居数据。jH"卜,邻居数据可以包括当在场模式下处理时供在至少一个宏^边的邻^块检索的帧右侧邻居数据以及当在场模式下处理时供在至少一个宏块右边的邻^块检索的场右侧邻居数据。在一个实施例中,步骤400和/或402利用检索到的邻居数据生^!于多个宏块中的每个宏块的至少一^观'隨动矢量。oH^卜,步骤404可以利用M到的邻居数据生成用于多个宏块中的每个宏块的至少一个直接模^动矢量。同样,步骤406可利用检索到的邻居数悟生成用于多个宏块中的每个宏块的最佳帧内预观,赠式。图12呈救緣本发明实施例的方法的^^呈图。胁来说,该方法呈,于结合与图1-11-^^描述的一个或多^#棘功能。在步骤600中,对于多个宏块的一个宏块的多个分割同时生成用于多个子块的运动搜索运动矢量。在步骤602中,基于用于多个宏块中的一个宏块的多付块中的^""付块的运动搜索运动矢量,对于多个宏块中的所迷宏块的多个分割同时生成用于多个子块的细^it动矢量,在步骤604中,基于与用于多个宏块中的所^块的多个分割的多个于块中的^H^块的细^f腿动矢勤目关的威本iMt择多个分割中的一个i^L分割。在步骤606中,为与多个宏块中的所^块的it^^割相对应的多^H"块中的"^H^块确;t^终运动矢量。在步骤608中,生成与用于多个宏块中的所述宏块的多个子块的最终运动矢衫目对应的残^f象素值。4^发明的一个实施例中,步骤600和602可在多种i^L模式下操怍,包括与第一压缩标料目对应的第一模式、与第二压缩标料目对应的第4式以及与第三压缩标斜目对应的第4式。例如,在第一模式中,在MBAFF信"fi皮断言时,步骤600和602能够在宏块自适应帧和场被使能的情况下进^^t,并且当MBAFF信"^i皮撤铕断言时,步骤600和602能够在宏块自适应帧和场被禁用的情况下进#^,并且其中,多个分割狄于MBAFF使能信号。第一压缩标准可以包括H,264标准,并且当MBAFF信号被断言时,宏块的多个分割将宏块分割为具有第一最小尺寸的子块。例如,当MBAFF信"fi皮断言时,宏块的多个分割将宏块分割为大小为16像素xl6像素、16像素x8像素、8像素xl6像素、和8像素x8像素的子块。jH^卜,当mbaff信"i皮^t销断言时,宏块的多个分割将宏块分割为具有大小比第一最小尺寸小的第二最小尺寸的子块。例如,当MBAFF信"fi皮撤销断言时,宏块的多个分割将宏块分割为大小为16像素xl6像素、16像素x8像素、8像素xl6像素、8像素x8像素、4像素x8像素、8像素x4像素、4像素x4像素的子块。jH^卜,在第^r^莫式中,例如当第二压缩标准包^i4动图像专家组(mpeg)标准时,宏块的多个分割将宏块分割为大小为16像素xl6像素和8像素x8像素的子块。同样,在第^式中,例如当第三压缩标准包括电影与电賴LX^呈师学会(SMPTE)标准时,宏块的多个分割将宏块分割为大小为16像素xl6像素和8像素x8j象素的子块。图13呈淑娥本发明实施例的方法的流程图。M来说,该方法呈现用于结合与图l-12-"^描述的一个或多^Nt妙功能。在步骤700中,对于多个宏块中的一个宏块的多个分割生成用于多M块的运动搜索运动矢量。在步骤704中,基于^i^W号,生成多个分割的-HSi^^且。在步骤716中,基于多个宏块中的所述宏块的多个子块中的^-个子块的运动搜索运动矢量,对于多个宏块中的所述宏块的多个分割的一*定组生成用于多个子块的细化运动矢量。^W^发明一个实施例中,当组选,号M第"H直时,步骤704通逸叶于多个宏块中的一个宏块的多个分割将与用于多M块中的^"H^"块的运动搜索运动矢J^目关的累计M与第一阈值进行1^艮,并将该it^i且指^7具有比第一阈值更有利的累计M的分割,借雄^^斤述多个分割的^i且。当《诚^f言号具有第二值时,步骤704通过对于多个宏块中的一个宏块的多个分割比较与用于多个子块中的每一个子块的运动搜索运动矢勤目关的累计成本,并将该i^ia指^;具有最有利的累计#的^分割,借jtb^定所述多个分割的i^i且。当^^#^号具有第三值时,步骤704通辦于多个宏块中的一个宏块的多个分割将与用于多个子块中的^个子块的运动搜索运动矢對目关的累计^4第二阈值进行比较,并4^ia指^具有比第二阈值更有利的累计#的多个分割中的^""个分割,借jtb^^;斤述多个分割的ii^i且。任选的是,步骤700对于多个宏块中的一个宏块的多个分割同时生成用于多^H"块的运动搜索运动矢量,并且步骤716对于多个宏块中的一个宏块的多个分割的i^i且同时生成用于多个子块的细4腿动矢量。图14呈船娥本发明实施例的方法的流程图。该方法呈现用于结合与图1-12-"^描述的一个或多>!^##功能,并且胁来说它包^f皮公共的附图标记标注的图13的方法一个或多个ma部分。jH^卜,该方法包括将多个分割的选^i^H目应的运动搜索运动矢量^^在共享,器中的步骤708。同样,在步骤712中,从共享M器中检索多个分割的i^i^目应的运动搜索运动矢量。图15呈淑Nt本发明实施例的方法的流程图。该方法呈现用于结合与图1-12~"^描述的一个或多^##功能,并且^^来说它包^^皮公共的附图标记标注的图13和图14的方法的一个或多个《J^部分。jtb^卜,该方法包括响应于将多个分割的选^i且和相应的运动搜索运动矢量^^在共享务賭器中而生成^C信号的步骤710。itW卜,步骤712,包^l应于该li^信号从共享,器中检索分割的ii^ia^目应的运动搜索运动矢量。图16呈船娥;^发明实施例的方法的流程图。该方法呈现用于结合与图1-15-^描述的一个或多^#妙功能。糾来说,该方法呈现的是,其可以用作被公共的附图标^^示注的公共-M部^^U,J^求13的方法的智代方法。jW^卜,该方法包括生成多个分割的-hs^組的步骤704,。图17呈淑i^本发明实施例的方法的流程图。M来说,该方法呈现用于结合与图1-16"^描述的一个或多^##功能。在步骤800中,基于累计差值和(SAD)礼^,生成用于多个宏块中的一个宏块的多个分割的多个子块的运动搜索运动矢量。在步骤802中,该方法确定细4^i否被使能。如U,则该方法继续到步骤804,并JL^于多个宏块中的所ii^块的多#块中的^-"个子块的运动搜索运动矢量和基于累计变^J:值和(SATO)成本,生成用于多个宏块中的所述宏块的多个分割的多^f块的细化运动矢量。在步骤806中,当对于多个宏块中的所^块使能生成细^il动矢量的步骤时,基于与用于多个宏块中的所iit块的多个分割的多个子块中的^"个子块的细^^动矢對目关的SATD^^Mt择多个分割中的i4^分割。如果细4W皮禁用,则作为替换,该方法继续到步骤808,其中,基于与用于多个宏块的一个宏块的多个分割的多个子块中的^"个子块的细^^动矢量相关的SAD^^M^择多个分割的一^i^:分割。不论^jl唄附情况,该方法继续到步骤810,其中,为与多个宏块中的所^块的i^l分割相对应的多^1块中的^H^块确;^jL终运动矢量。在步骤812,生成与多个宏块中的所i^块的多个子块的最终运动矢對目对应的残^f象素值。^^发明的一个实施例中,基于^M^应用、基于^L压缩标准、和/*于与一个宏块的多个分割中的至少一个分割相关的总成本与浪組细化礼^阈值的雌,选棒眺禁用细化。需要注意的是,可逐个宏舰禁用细化。》M卜,该方法可在多种i^^模式下操怍,包括与第一压缩标料目对应的第一模式,与第二压缩标斜目对应的第二模式和与第三压缩标准(例如,H.264标准、运动图像专家组(MPEG)标准、电影与电^LX^呈师学会(SMPTE)标絲其它标准)相对应的第4式。图18呈淑^^^发明实施例的方法的流程图。M来说,该方法呈现用于结合与图17-"^描述的一个或多^Nt^功能。在步骤820中,当对于多个宏块中的一个宏块使能生成细^it动矢量的步骤时,基于与用于多个宏块中的所述宏块的多个分割的多^"块中的^-"个子块的细^it动矢對目关的SATD成本,为所战^t娜模式和场模式中的一种。图19呈舰娥本发明实施例的方法的流程图。M来说,该方法呈现用于结合与图17和18—起描述的一个或多个特扭—功能。在步骤830中,当对于多个宏块中的一个宏块禁用生成细4腿动矢量的步骤时,基于与用于多个宏块中的所^块的多个分割的多H块中的^-H^块的运动搜索运动矢4^目关的SAD^,为所il^fc^M模式和场模式中的一种。在M的实施例中,利用0.35樣M^更小的CMOS工艺来实现多种电路元件。然而,我们认为其它电路工艺,无论絲的还是非絲的,树^^发32明的宽广范围内使用。虽然本发明的树功能和特征的^^组合e^中清楚麵述,^ait些特征和功能的其它组合也是可能的,其不被文中公开的M例子限制,而是被清楚地并7v^发明的范围内。^4页域的^t才il^A员将,,可^JL中^^I的术i^i4Ui"或"近^^"为其相应的术^v或各项之间的相关性提^-种工业上可接受的容差。该工业上可接受的容差在小于百分之一到百分e十的范围内变动,其对应于斜限于元件值、M电路工艺变量、温度变量、上升和下降时间和/或热噪声。M之间的相关'^t少许百分比的差别到很;^I别内变动。;M页域的"fit技^A员将进一步理解,可在文中使用的术洽'旨,包^it过另一部件、元件、电路或才^jL^^K曰"m^,^E对于间^^,居中的部件、元件、电路或才^:并不修改信号信息,而只可调整其电流电平、电压电平和/或功率电平。本领域的"f通技术人员还将理解,推断的輪^(即,其中通过推断,一个元⑩合到另一个元件)包括以和'臉,相同的方i^两个元件之间直接和间^^。4^页域的"^t技权员将进一步理解,可在文中^fM的术洽'与...相t沐利地"表示在两个或多个元件、项、信号等之间的tb^提供期望的关系。例如,当期望的关系;l信号1具有比信号2更大的幅度时,当信号1的幅度大于信号2的幅度或当信号2的幅度小于信号1的幅度时可以实,利的t败4^发明的不同实施例的描述中使用的术译'^"包括用硬件、软件、和/或固件实现的功能块,其^f亍一种或多种功能,例如处理输入信号以产生输出信号。如在文中^^I的那样,微可以包含本身:tt^微的f^。这样,已^M^中描述了一种设备和方法,以及包括M实施例的多个实施例,用于实^f舰编码器^t动;^t^以及与其""^fM的运动细化引擎。对于辆域才JM^员来i^明白,^^f的发明能以多种方式进^tf务改并可以设想不同于以上具体阐明和描述的>^^形式。因此,本发明试图通ii^斤附权矛决求^w落^^发明的銜申和范围内的_明的所有<务权利要求1.一种运动补偿模块,用于在对包括被分割为多个宏块的图像序列的视频输入信号进行编码的视频编码器中使用,所述运动补偿模块包括运动搜索模块,其基于第一形式成本,对于多个宏块中的一个宏块的多个分割生成用于多个子块的运动搜索运动矢量;耦合到所述运动搜索模块的运动细化模块,当该运动细化模块被使能时,其基于用于多个宏块中的所述宏块的多个子块中的每一个子块的运动搜索运动矢量并且基于第二形式成本,对于多个宏块中的所述宏块的多个分割生成用于多个子块的细化运动矢量;耦合到所述运动细化模块和所述运动搜索模块的模式判决模块,当所述运动细化模块对于多个宏块中的所述宏块被使能时,所述模式判决模块基于与用于多个宏块中的所述宏块的多个分割的多个子块中的每一个子块的细化运动矢量相关的第二形式成本,选择所述多个分割中的选定分割;当所述运动细化模块对于多个宏块中的所述宏块被禁用时,所述模式判决模块基于与用于多个宏块中的所述宏块的多个分割的多个子块中的每一个子块的运动搜索运动矢量相关的第一形式成本,选择所述多个分割的选定分割,并且对于与多个宏块中的所述宏块的选定分割相对应的多个子块中的每一个子块确定最终运动矢量;以及耦合到所述模式判决模块的重建模块,其生成与用于多个宏块中的所述宏块的多个子块的最终运动矢量相对应的残余像素值。2.:^怯求1所述的运动州i^:,其中,所舰动细4^^于特定应用^fo^棒I^^禁用。3.如W'漆求1所述的运动州^^,其中,所iiit动搜索^:和所舰动细^^能够在与多种压缩标料目对应的多种^:模式下辦,并且其中,所^动细^^^于特定的压缩标^fic^棒I^禁用。4.:N5U'溪求1所述的运动4Mi^:,其中,所舰动细4^felt于所述宏块她棒舰禁用。5.^M'漆求1所述的运动州對狭,其中,基于与所战块的多个分割中的至少一个分割相关的总A^M浪tit细化^^阈值之间的》嫩,所iiit动细^^t于所錄块舰捧,禁用。6.^tH5U'决求1所述的运动州^^:,其中,第1^是累计差#(SAD)M,第二形iU^是累计变M^(SATD)^^,并且其中,在所^动细^f^t于多个宏块中的所狄块被使能时,所繊式判决^4于与用于多个宏块中的所#块的多个分割的多个子块中的每一个子块的细化运动矢對目关的SATO成本,为所^Jfe^^t贞模式和场模式中的一种模式,并JUt所i^动细4诚i^于多个宏块中的所i^块被禁用时,所iit莫式判决#^于与用于多个宏块中的所^块的多个分割的多个子块中的^""个子块的运动搜索运动矢*4目关的SADM,为所^^^^#+贞模式和场模式中的一种模式。7.:H5Uf'漆求1所述的运动^hf^^:,其中,所舰动搜索才狭和所m动细4^块能够在多种^1模式下操怍,包括与第一压缩标料目对应的第一模式、与第二压缩标料目对应的笫二模式以及与第三压缩标料目对应的第n8.如权矛jj^求7所述的运动^M^块,其中,第一压缩标准包括H,264标准。9.^M'J要求7所述的运动^h^^:,其中,第二压缩标准包被动图像专家组(MPEG)标准。10.^M'漆求7所述的运动州t^:,其中,第^缩标准包括电影与电^LXif呈师学会(SMPET)标准。11.在一种用于^"包^^皮分割为多个宏块的图^象净列的输入信号进^^码的编码器中使用的方法,所述方法包拾基于累计差值和(SAD)#,对于多个宏块中的一个宏块的多个分割生于多O块的运动搜索运动矢量;当被使能时,基于多个宏块中的所^块的多^H"块中的^-MH"块的运动搜索运动矢量并錄于累计变^t值和(SATD)絲,对于多个宏块中的所迷宏块的多个分割生成用于多^块的细^^动矢量;当生成细4腿动矢量的步树于多个宏块中的所战块被使能时,基于与用于多个宏块中的所i^块的多个分割的多^块中的^"H^块的细4^动矢封目关的SATD^^,选择所述多个分割中的i^^割;当生成细4腿动矢量的步财于多个宏块中的所狄块被禁用时,基于与用于多个宏块中的所iit块的多个分割的多个子块中的^-H^块的运动搜索运动矢*#关的SADM,选择所述多个分割中的i^:分割;对于与多个宏块中的所述宏块的选定分割相对应的多个子块中的—个子块确^J:终运动矢量;以及生成与用于多个宏块中的所^块的多个子块的最终运动矢J^目对应的残棘素值。12.>'涹求11所述的运动4hf^^:,其中,生成细^^动矢量的步骤基于特定的应用净ic^捧^4禁用。13.:H5U'J^求11所述的方法,其中,所述方法肯^与多种压缩标拟目对应的多种i^:模式下操作,其中,生成细^t动矢量的步g于特定的压缩标桐烛棒,禁用。14.^U'J^求11所述的方法,其中,生成细化运动矢量的步W于所述宏块舰棒,禁用。15.^M'漆求11所述的方法,其中,生成细^^动矢量的步l^于与所迷宏块的多个分割中的至少一个分割相关的总成本与浪近细化礼^阈值之间的t汲,对于所^块^it棒l^禁用。16.io^'J^求ll所述的方法,还包拾当生成细4腿动矢量的步财于多个宏块中的所錄块被使能时,基于与用于多个宏块中的所iit块的多个分割的多M块中的^-个子块的细^it动矢對目关的SATDM,为所ii^fc^^贞模式和场模式中的一种模式;当生成细4腿动矢量的步m于多个宏块中的一个宏块被禁用时,基于与用于多个宏块中的所i^t块的多个分割的多个子块中的#-个子块的运动搜索运动矢勤目关的SAD为所^^fe^^t贞模式和场模式中的一种模式。17.:H^'漆求11所述的方法,其中,所述方法能够在多种^>模式下操作,包括与第一压缩标料目对应的第一模式、与第二压缩标斜目对应的第4式以及与第三压缩标料目对应的第三模式。18.:H5U'J要求17所述的方法,其中,第一压缩标准包括R264标准。19.:N5^,漆求17所述的方法,其中,第二压缩标准包絲动图像专家组(MPEG)标准。20.:W5^'J^求17所述的方法,其中,第^S缩标准包括电影与电^LX^师学会(SMPET)标准。21.—种运动4M尝模夬,用于^t包^^L^割为多个宏块的图l象序列的视频输入信号进^^码的,编码器中^JU,所iiit动4hf^^包拾运动搜索^,其基于第""^iU^,对于多个宏块中的一个宏块的多个分割生成用于多H块的运动搜索运动矢量;^^到所親动搜索微的运动细^^:,当所舰动细^*^被使能时,其基于用于多个宏块中的所述宏块的多个子块中的^-个子块的运动搜索运动矢量并iL^于第二形iU本,对于多个宏块中的所述宏块的多个分割生成用于多个子块中的^"H^块的细^^:动矢量;^^到所m动细^^^和所m动搜索M的模式判决,,当所g动细^^M"于多个宏块中的所奴块被使能时,所鄉式判决m^于与用于多个宏块中的所ii^块的多个分割的多个子块中的^-^H"块的细^1动矢目关的第二形^,选择所述多个分割中的^分割#^#+贞模式和场模式中的一种模式,当所i^动细^H^M"于多个宏块中的所^块被禁用时,所,式判决m^于与用于多个宏块中的所^块的多个分割的多个子块中的^个子块的运动搜索运动矢彭目关的第一^^,选择所述多个分割中的i^分割^^^t贞模式和场模式中的一种模式,并且对于与多个宏块中的所奴块的i^l分割相对应的多付块中的^-付块确^^终运动矢量;以及^^到所ii^式判决模块的重建模块,其生成与用于多个宏块中的所^块的多个子块的最终运动矢對目对应的残^f象素值;应的多种^t模式下旨,并且其中「所iiit动细^j^i于特定的压缩标准她棒,禁用。22.iwM'J^求21所述的运动^hf雜块,其中,多种压缩标准包括H.264标准、运动图像专家组(MPEG)标准和电影与电^LX^呈师学会(SMPET)标准中的至少一个。23.:N5U'凌求1所述的运动州t^:,其中,所親动细4^^于与所ii^块的多个分割中的至少一个分割相关的总^^洵近细化成本阈值之间的H^,对于所^块^4##^禁用。24.^U,溪求1所述的运动州t^:,其中,第"^i(A^是累计差值和(SAD)第二形iU^是累计变^I值和(SATO)M。全文摘要本发明涉及视频编码中具有多种成本计算方法的运动细化引擎及其方法。一种用于在对包括被分割为多个宏块的图像序列的视频输入信号进行编码的视频编码器中使用的运动补偿模块。该运动补偿模块包括运动搜索模块,其基于累计差值和(SAD)成本,对于多个宏块中的一个宏块的多个分割生成用于多个子块的运动搜索运动矢量。运动细化模块,当运动细化模块被使能时,其基于多个宏块中的所述宏块的多个子块中的每一个子块的运动搜索运动矢量并且基于累计变换差值和(SAD)成本,对于多个宏块中的所述宏块的多个分割生成用于多个子块的细化运动矢量。模式判决模块基于运动细化模块是被使能还是禁用而对SAD成本或SATD成本进行操作。文档编号H04N7/26GK101325710SQ20071030762公开日2008年12月17日申请日期2007年11月21日优先权日2006年11月21日发明者A·拉马钱德兰,E·鸿,刚邱申请人:Vixs系统公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1