專利名稱::為資源受限設(shè)備中的視頻編碼提供快速幀間模式?jīng)Q策的方法、裝置和計(jì)算機(jī)程序產(chǎn)品的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明的實(shí)施方式主要涉及移動(dòng)電子設(shè)備技術(shù),而且更具體地,涉及用于提供快速INTER(幀間)模式?jīng)Q策算法以降低視頻編碼的編碼復(fù)雜度而不顯著降低視頻編碼效率的方法、裝置和計(jì)算機(jī)程序產(chǎn)品o
背景技術(shù):
:現(xiàn)代通信時(shí)代已經(jīng)使有線和無線網(wǎng)絡(luò)發(fā)生極大的發(fā)展。計(jì)算機(jī)網(wǎng)絡(luò)、電視網(wǎng)絡(luò)和電話網(wǎng)絡(luò)正在經(jīng)歷由消費(fèi)者需求推動(dòng)的空前的技術(shù)發(fā)展。無線和移動(dòng)網(wǎng)絡(luò)技術(shù)已經(jīng)解決了有關(guān)的消費(fèi)者需求,而且提供了信息傳輸?shù)母囔`活性和直觀性。當(dāng)前和將來的網(wǎng)絡(luò)技術(shù)持續(xù)地促進(jìn)信息傳輸簡易性以及對(duì)用戶的便利性。移動(dòng)電子設(shè)備的一種這樣的性能擴(kuò)展涉及這種設(shè)備處理諸如視頻序列的視頻數(shù)據(jù)的能力??梢詮木W(wǎng)絡(luò)服務(wù)器或其它網(wǎng)絡(luò)設(shè)備,或者甚至從移動(dòng)終端和網(wǎng)絡(luò)設(shè)備的結(jié)合來向例如移動(dòng)電話、便攜式數(shù)字助理(PDA)、移動(dòng)電視、視頻-iPOD、移動(dòng)游戲系統(tǒng)等提供視頻序列。視頻序列通常包括由大量像素形成的大量視頻幀,每個(gè)像素由一組數(shù)字位表示。由于視頻幀中的像素?cái)?shù)量巨大并且通常視頻序列中的視頻幀數(shù)量巨大,表示視頻序列所需要的數(shù)據(jù)量是巨大的。這樣,通過視頻壓縮(即,視頻編碼),用于表示視頻序列的信息量通常得以減少。例如,視頻壓縮將數(shù)字視頻數(shù)據(jù)轉(zhuǎn)換為促進(jìn)視頻數(shù)據(jù)的高效存儲(chǔ)及發(fā)射的、需要較少位的格式。H,264/AVC(高級(jí)視頻12編碼)(也稱為AVC/H.264或H.264/MPEG-4部分10或MPEG-4部分10/H.264AVC)是由ISO/MPEG和ITU-T/VCEG工作組共同開發(fā)出的視頻編碼標(biāo)準(zhǔn),其獲得了比先前的視頻編碼標(biāo)準(zhǔn)(例如,H.263)明顯更高的編碼效率。特別地,在類似的比特率下,H.264/AVC獲得了比先前的視頻編碼標(biāo)準(zhǔn)明顯更佳的視頻質(zhì)量。由于其高壓縮效率和網(wǎng)絡(luò)友好的設(shè)計(jì),H.264/AVC在從第三代移動(dòng)多媒體服務(wù)、手持?jǐn)?shù)字視頻廣播(DVB-H)到高分辨數(shù)字多功能盤(HD-DVD)的領(lǐng)域內(nèi)得以發(fā)展。然而,正如本領(lǐng)域技術(shù)人員充分意識(shí)到的,H.264實(shí)現(xiàn)的編碼效率增加,其代價(jià)是H.264編碼器以及H.264解碼器的復(fù)雜度增加。當(dāng)前,正在進(jìn)行多個(gè)移動(dòng)多媒體標(biāo)準(zhǔn)的發(fā)布,這些標(biāo)準(zhǔn)將在手持設(shè)備中實(shí)現(xiàn)H.264編碼功能。鑒于手持設(shè)備的空間有限、計(jì)算功能有限和資源有限,由于許多原因,采用H.264的手持設(shè)備必須具有低復(fù)雜度的編碼。首先,低復(fù)雜度的編碼降低手持設(shè)備中視頻編碼器的資源損耗,從而增加手持設(shè)備的電池續(xù)航時(shí)間。其次,如果某視頻幀的編碼時(shí)間比所分配的編碼時(shí)間長,則該視頻幀可能被略過。同樣地,編碼視頻幀的最大復(fù)雜度以及平均編碼復(fù)雜度將降低。H.264編碼器的復(fù)雜度大部分歸因于運(yùn)動(dòng)補(bǔ)償預(yù)測(MCP)。運(yùn)除連續(xù)視頻幀之間的時(shí)間冗余(即,幀間編碼)。當(dāng)視頻序列內(nèi)的連續(xù)一見頻幀之間具有相似性時(shí),通常出現(xiàn)時(shí)間冗余。例如,一見頻序列中連續(xù)幀的內(nèi)容變化基本上是視頻序列的場景運(yùn)動(dòng)的結(jié)果。該運(yùn)動(dòng)可能歸因于場景中對(duì)象的運(yùn)動(dòng)或照相機(jī)的運(yùn)動(dòng)。通常,只對(duì)連續(xù)幀之間的差別(例如,運(yùn)動(dòng)或移動(dòng))進(jìn)行編碼。運(yùn)動(dòng)補(bǔ)償預(yù)測通過使用先前編碼幀(例如,當(dāng)前幀之前的幀)中的段的參數(shù)來估計(jì)視頻序列的運(yùn)動(dòng),以此來消除時(shí)間冗余。換句話說,運(yùn)動(dòng)補(bǔ)償預(yù)測允許根據(jù)作為參考幀的先前編碼幀的運(yùn)動(dòng)向量來生成幀(即,預(yù)測幀)。如本領(lǐng)域技術(shù)人員充分意識(shí)S'j的,視頻幀可以被分段或者劃分為宏塊,并且可以對(duì)宏塊執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測。對(duì)于視頻幀的每個(gè)宏塊,可以根據(jù)與充當(dāng)參考幀的先前編碼幀中的匹配宏塊相對(duì)應(yīng)的運(yùn)動(dòng)向量來執(zhí)行運(yùn)動(dòng)估計(jì)并且生成預(yù)測的宏塊。與先前的視頻編碼標(biāo)準(zhǔn)不同,在H.264/AVC視頻編碼標(biāo)準(zhǔn)中,宏塊可以劃分為16X16塊的許多塊分區(qū),并且可以生成對(duì)應(yīng)于宏塊的每個(gè)分區(qū)的不同運(yùn)動(dòng)向量。生成對(duì)應(yīng)于宏塊的每個(gè)分區(qū)的不同運(yùn)動(dòng)向量,是因?yàn)镠.264/AVC為宏塊定義了新的INTER模式或塊大小。特別地,如圖1所示,H.264/AVC視頻編碼標(biāo)準(zhǔn)允許16X16宏塊的各種塊分區(qū)并且定義新的INTER模式,也就是,16X16模式宏塊的INTER16X16,INTER—16X8,INTER—8X16和INTER—8X8。另夕卜,如圖1所示,H.264/AVC^L頻編碼標(biāo)準(zhǔn)允許8X8子宏塊的各種分區(qū),并且定義新的INTER子模式,也就是,8X8子模式子宏塊的INTER—8X8,INTER—8X4,INTER—4X8和INTER—4X4??紤]INTER一16X8模式,在這個(gè)INTER模式中,宏塊水平地劃分為2個(gè)分區(qū)并且運(yùn)動(dòng)向量被傳送給每個(gè)分區(qū),這得到宏塊的兩個(gè)運(yùn)動(dòng)向量。在這點(diǎn)上,H.264/AVC生成兩幀之間運(yùn)動(dòng)的更精確的表示,并且顯著地增加編碼效率。由于H.264/AVC定義了更多數(shù)目的INTER模式,H.264編碼器需要比先前的視頻編碼標(biāo)準(zhǔn)檢查更多的模式以找到最佳模式。對(duì)于每個(gè)候選模式,需要針對(duì)該宏塊的所有分區(qū)來執(zhí)行運(yùn)動(dòng)估計(jì),由此顯著地增加運(yùn)動(dòng)估計(jì)操作的數(shù)目。對(duì)于每個(gè)候選模式,必須針對(duì)該宏塊的所有分區(qū)執(zhí)行運(yùn)動(dòng)估計(jì),這極大地增加運(yùn)動(dòng)估計(jì)操作的數(shù)目并且由此增加了H.264編碼器的復(fù)雜度。增加的運(yùn)動(dòng)估計(jì)操作數(shù)目增加了H.264編碼器的資源損耗,并且降低了采用H.264編碼器的移動(dòng)終端的電池續(xù)4元時(shí)間。為了降低編碼器處運(yùn)動(dòng)補(bǔ)償預(yù)測步驟的復(fù)雜度,應(yīng)該減少運(yùn)動(dòng)估計(jì)操作的數(shù)目。這可以通過禁用除了INTER—16X16之外的所有INTER模式、并且僅僅執(zhí)行INTER—16X16模式的運(yùn)動(dòng)估計(jì)來實(shí)現(xiàn)。然而,如圖2所示,如果禁用INTERJ6X8模式和INTER—8X16模式,則編碼效率發(fā)生懲罰。如圖2所示,對(duì)于給定的視頻序列(例14如,標(biāo)題為"Foreman"的視頻片斷,以QCIF(四分之一通用中間格式)編碼,每秒15幀中176x144的分辨率),其中針對(duì)INTER—16X16,INTER—16X8和INTER—8X16才莫式才丸4亍運(yùn)動(dòng)估計(jì),與僅針對(duì)INTER—16X16模式執(zhí)行運(yùn)動(dòng)估計(jì)的情形對(duì)比,實(shí)現(xiàn)了給定比特率(千比特/秒)處的更高的峰值信噪比(PSNR)(通過分貝測量)。在這點(diǎn)上,禁用除了INTER—16X16模式之外的所有INTER模式導(dǎo)致了編碼效率的顯著下降。這樣,需要一種快速INTER模式?jīng)Q策算法,用以通過降低運(yùn)動(dòng)估計(jì)操作的數(shù)目來降低H.264編碼器的編碼復(fù)雜度,而不使編碼效率顯著降低。
發(fā)明內(nèi)容因此,提供實(shí)現(xiàn)快速INTER模式?jīng)Q策算法的方法、裝置和計(jì)算機(jī)程序產(chǎn)品,該快速INTER模式?jīng)Q策算法能夠檢查和處理可以具有一個(gè)或多個(gè)分區(qū)的各種大小的宏塊。該方法、裝置和計(jì)算機(jī)程序產(chǎn)品降低與編碼器的運(yùn)動(dòng)補(bǔ)償預(yù)測相關(guān)聯(lián)的運(yùn)動(dòng)估計(jì)操作的數(shù)目。在這點(diǎn)上,編碼器的復(fù)雜性得以降低,而編碼效率不會(huì)顯著降低。因此,由于降低了編碼器的運(yùn)動(dòng)估計(jì)操作的數(shù)目,可以實(shí)現(xiàn)成本節(jié)約。本發(fā)明的快速INTER模式?jīng)Q策算法可以實(shí)現(xiàn)在H.264/AVC視頻編碼標(biāo)準(zhǔn)中,或能夠促進(jìn)可變大小宏塊的其它任意合適的視頻編碼標(biāo)準(zhǔn)中。在一個(gè)示例性實(shí)施方式中,提供了一種用于減少在執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測中的運(yùn)動(dòng)估計(jì)操作數(shù)目的方法。首先,確定是否從視頻幀的至少一個(gè)宏塊提取至少一個(gè)運(yùn)動(dòng)向量。該至少一個(gè)宏塊包括具有多個(gè)塊大小的第一多個(gè)幀間模式。接著,通過分析參考幀,根據(jù)該至少一個(gè)運(yùn)動(dòng)向量生成該宏塊的至少一個(gè)預(yù)測。然后確定所提取的運(yùn)動(dòng)向量是否基本上等于零,如果是,根據(jù)該至少一個(gè)預(yù)測宏塊和該至少一個(gè)宏塊之間的差別來計(jì)算失真值。接著將該失真值與第一預(yù)定閾值進(jìn)行比較,當(dāng)該失真值小于該第一預(yù)定閾值時(shí),從第一和第二編碼模式中選擇第一編碼模式,而不對(duì)第二編碼模式進(jìn)行評(píng)估。通過不對(duì)第二編碼模式進(jìn)行評(píng)估,提高了編碼處理的效率。在另一個(gè)示例性實(shí)施方式中,提供了一種用于降低在執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測中的運(yùn)動(dòng)估計(jì)操作數(shù)目的設(shè)備。該設(shè)備包括運(yùn)動(dòng)估計(jì)器、運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備和處理元件。運(yùn)動(dòng)估計(jì)器被配置用于從視頻幀的至少一個(gè)宏塊提取至少一個(gè)運(yùn)動(dòng)向量。該至少一個(gè)宏塊包括具有多個(gè)塊大小的第一多個(gè)幀間模式。運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備被配置用于通過分析參考幀,根據(jù)該至少一個(gè)運(yùn)動(dòng)向量生成所述至少一個(gè)宏塊的至少一個(gè)預(yù)測。處理元件與運(yùn)動(dòng)估計(jì)器和運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備通信。處理元件還被配置用于確定所提取的運(yùn)動(dòng)向量是否基本上等于零。處理元件進(jìn)一步配置用于當(dāng)所提取的運(yùn)動(dòng)向量基本上等于零時(shí),根據(jù)該至少一個(gè)預(yù)測宏塊和該至少一個(gè)宏塊之間的差別來計(jì)算失真值。處理元件還被配置用于將該失真值與第一預(yù)定閾值進(jìn)行比較,并且處理元件還被配置用于當(dāng)該失真值小于該第一預(yù)定閾值時(shí),從第一和第二編碼模式中選擇第一編碼模式,而不對(duì)第二編碼模式進(jìn)行評(píng)估。根據(jù)其它實(shí)施方式,以與前述方法一致的方式,提供了一種用于降低在執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測中的運(yùn)動(dòng)估計(jì)操作數(shù)目的相應(yīng)計(jì)算機(jī)程序產(chǎn)品。已經(jīng)總體上對(duì)本發(fā)明進(jìn)行了描述,現(xiàn)在將參考附圖,附圖未必是按比例畫出的,其中圖1為H.264/AVC視頻編碼標(biāo)準(zhǔn)中支持的INTER模式的圖示;圖2為當(dāng)禁用INTER模式16X8和8X16時(shí)編碼效率下降的圖形化表示;圖3為根據(jù)本發(fā)明示例性實(shí)施方式的移動(dòng)終端的示意性框圖;圖4為根據(jù)本發(fā)明示例性實(shí)施方式的無線通信系統(tǒng)的示意性框圖;圖5為根據(jù)本發(fā)明示例性實(shí)施方式的編碼器的示意性框圖;圖6為根據(jù)本發(fā)明示例性實(shí)施方式的運(yùn)動(dòng)補(bǔ)償預(yù)測模塊的示意性結(jié)構(gòu)圖7為示出16X16宏塊中8X8塊的編號(hào)的圖示;圖8為示出根據(jù)本發(fā)明示例性實(shí)施方式的絕對(duì)差異二進(jìn)制和圖的圖解;圖9A和圖9B為示出了根據(jù)本發(fā)明示例性實(shí)施方式的生成快速INTER模式?jīng)Q策算法的方法的各個(gè)步驟的流程圖10為與傳統(tǒng)編碼器相比的根據(jù)本發(fā)明實(shí)施方式的編碼器的示例性實(shí)施方式所達(dá)到的比率失真性能和平均復(fù)雜度降低的圖形化表示;圖11為示出了與傳統(tǒng)編碼器相比的本發(fā)明的示例性編碼器的復(fù)雜度降低和編碼效率的圖形化表示;圖12為示出了與傳統(tǒng)編碼器相比的根據(jù)本發(fā)明的編碼器的示例性實(shí)施方式的幀編碼復(fù)雜度的圖形表示。具體實(shí)施例方式下面參考附圖更加充分地描述本發(fā)明的實(shí)施方式,附圖中示出了一些但非全部實(shí)施方式。實(shí)際上,本發(fā)明的實(shí)施方式可以通過許多不同形式具體化,并不構(gòu)建為此處闡明的本發(fā)明的限制;相反地,提供這些實(shí)施方式從而本披露滿足適用的法律要求。相同的參考標(biāo)號(hào)貫穿涉及相同的元件。圖3示出了將得益于本發(fā)明實(shí)施方式的移動(dòng)終端10的框圖。然而,應(yīng)當(dāng)理解,所示出的以及此后描述的移動(dòng)電話僅僅是將得益于本發(fā)明實(shí)施方式的一種類型的移動(dòng)終端的示范,因此,不應(yīng)用來限制其范圍。盡管出于示例的目的而示出并在此后描述了移動(dòng)終端10的若干實(shí)施方式,但是其他類型的移動(dòng)終端也可以容易地采用本發(fā)明,這些其他類型的移動(dòng)終端諸如便攜式數(shù)字助理(PDA)、尋呼機(jī)、移動(dòng)電視、膝上型計(jì)算機(jī),以及其他類型的聲音和文本通信系統(tǒng)。此外,非移動(dòng)性設(shè)備也可以容易地采用本發(fā)明的實(shí)施方式。此外,盡管本發(fā)明方法的若干實(shí)施方式是由移動(dòng)終端IO來執(zhí)行或者使用的,但是可以通過移動(dòng)終端之外的其他設(shè)備來實(shí)現(xiàn)該方法。而且,將結(jié)合移動(dòng)通信應(yīng)用來主要描述本發(fā)明的系統(tǒng)和方法。然而,應(yīng)當(dāng)理解,可以結(jié)合移動(dòng)通信產(chǎn)業(yè)之內(nèi)以及移動(dòng)通信產(chǎn)業(yè)之外二者的各種其他應(yīng)用來使用本發(fā)明的系統(tǒng)和方法。移動(dòng)終端10包括天線12,其可操作地與發(fā)射機(jī)14和接收機(jī)16進(jìn)行通信。移動(dòng)終端10還包括控制器20或者其他處理元件,其分別提供去往發(fā)射機(jī)14的信號(hào)和接收來自接收機(jī)16的信號(hào)。該信號(hào)包括按照可應(yīng)用蜂窩系統(tǒng)的空中接口標(biāo)準(zhǔn)的信令信息,并且還包括用戶語音和/或用戶生成的數(shù)據(jù)。在此方面,移動(dòng)終端IO能夠利用一個(gè)或多個(gè)空中接口標(biāo)準(zhǔn)、通信協(xié)議、調(diào)制類型以及接入類型來進(jìn)行操作。作為示范,移動(dòng)終端IO能夠根據(jù)多個(gè)第一代、第二代和/或第三代通信協(xié)議等中的任何協(xié)議來進(jìn)行操作。例如,移動(dòng)終端10可以能夠按照第二代(2G)無線通信協(xié)議IS-136(TDMA)、GSM和IS-95(CDMA)來進(jìn)行操作,或者按照第三代(3G)無線通信協(xié)議寬帶碼分多址(WCDMA)來進(jìn)行操作??梢岳斫?,控制器20包括實(shí)現(xiàn)移動(dòng)終端10的音頻和邏輯功能所需的電路。例如,控制器20可以包括數(shù)字信號(hào)處理器設(shè)備、微處理器設(shè)備以及各種模數(shù)轉(zhuǎn)換器、數(shù)模轉(zhuǎn)換器和其他支持電路。移動(dòng)終端10的控制和信號(hào)處理功能按照這些設(shè)備各自的能力在其間分配??刂破?0由此還可以包括在調(diào)制和傳輸之前對(duì)消息和數(shù)據(jù)進(jìn)行巻積編碼和交織的功能??刂破?0還可以包括內(nèi)部聲音編碼器,并且可以包括內(nèi)部數(shù)據(jù)調(diào)制解調(diào)器。此外,控制器20可以包括對(duì)可以存儲(chǔ)在存儲(chǔ)器中的一個(gè)或多個(gè)軟件程序進(jìn)行操作的功能。例如,控制器20可以能夠操作連接程序,諸如傳統(tǒng)的Web瀏覽器。連接程序繼而可以允許移動(dòng)終端IO例如按照無線應(yīng)用協(xié)議(WAP)來發(fā)射和接收Web內(nèi)容(諸如基于位置的內(nèi)容)。移動(dòng)終端IO還包括用戶接口,其包括輸出設(shè)備,例如傳統(tǒng)的耳機(jī)或者揚(yáng)聲器24、振鈴器22、麥克風(fēng)26、顯示器28以及用戶輸入接口,所有這些設(shè)備都耦合至控制器20。允許移動(dòng)終端IO接收數(shù)據(jù)的用戶輸入接口可以包括允許移動(dòng)終端10接收數(shù)據(jù)的多種設(shè)備中的任意設(shè)備,例如小鍵盤30、觸摸顯示器(未示出)或者其他輸入設(shè)備。在包括小鍵盤30的實(shí)施方式中,小鍵盤30可以包括傳統(tǒng)的數(shù)字鍵(0-9)和相關(guān)鍵(#、*),以及用于操作移動(dòng)終端10的其他鍵。備選地,小鍵盤30可以包括傳統(tǒng)的QWERTY小鍵盤。移動(dòng)終端10還包括電池34,諸如振動(dòng)電池組,用于為操作移動(dòng)終端10所需的各種電路供電,以及可選地提供機(jī)械振動(dòng)作為可覺察輸出。在示例性實(shí)施方式中,移動(dòng)終端10可以是^f見頻電話并且包括與控制器20通信的視頻模塊36。視頻模塊36可以是捕獲視頻數(shù)據(jù)以用于存儲(chǔ)、顯示或發(fā)送的任意裝置。例如,視頻模塊36可以包括能夠根據(jù)所捕獲的圖像形成數(shù)字圖像文件的數(shù)字照相機(jī)。另外地,數(shù)字照相機(jī)能夠根據(jù)所捕獲的圖像序列形成視頻圖像文件。這樣,視頻模塊36包括根據(jù)所捕獲的圖像來創(chuàng)建數(shù)字圖像文件以及根據(jù)所捕獲的圖像序列來創(chuàng)建視頻圖像文件所需的所有硬件(諸如透鏡或其它光學(xué)設(shè)備)和軟件。備選地,視頻模塊36可以僅包括瀏覽圖像或視頻數(shù)據(jù)(例如,視頻序列、視頻流、視頻片段,等等)所需的硬件,而移動(dòng)終端10的存儲(chǔ)器設(shè)備以軟件形式存儲(chǔ)由控制器20執(zhí)行的、根據(jù)所捕獲的圖像來創(chuàng)建數(shù)字圖像文件所需的指令。移動(dòng)終端10的存儲(chǔ)器設(shè)備還可以以軟件形式存儲(chǔ)由控制器20執(zhí)行的、根據(jù)所捕獲的圖像序列來創(chuàng)建視頻圖像文件所需要的指令。圖像數(shù)據(jù)以及視頻數(shù)據(jù)可以在移動(dòng)終端的顯示28上顯示。在示例性實(shí)施方式中,視頻模塊36可以進(jìn)一步包括輔助控制器20處理視頻數(shù)據(jù)的處理元件(例如,協(xié)處理器)以及用于壓縮和/或解壓縮圖像數(shù)據(jù)和/或視頻數(shù)據(jù)的編碼器和/或解碼器。編碼器和/或解碼器可以根據(jù)H.264/AVC視頻編碼標(biāo)準(zhǔn),或者能夠支持可變大小宏塊的其它任意適當(dāng)?shù)囊曨l編碼標(biāo)準(zhǔn)來編碼和/或解碼視頻數(shù)據(jù)。移動(dòng)終端IO還可以包括通用身份才莫塊(UIM)38。UIM38通常是具有內(nèi)置存儲(chǔ)器的存儲(chǔ)器設(shè)備。UIM38例如可以包括訂戶身份模塊(SIM)、通用集成電路卡(UICC)、通用訂戶身份模塊(USIM)、可移動(dòng)用戶身份模塊(R-UIM)等。UIM38通常存儲(chǔ)與移動(dòng)訂戶相關(guān)的信元。除了UIM38之外,移動(dòng)終端IO還可以具有存儲(chǔ)器。例如,移動(dòng)終端10可以包括易失性存儲(chǔ)器40,例如包括用于數(shù)據(jù)臨時(shí)存儲(chǔ)的高速緩存區(qū)域的易失性隨機(jī)存取存儲(chǔ)器(RAM)。移動(dòng)終端10還可以包括其他非易失性存儲(chǔ)器42,其可以是嵌入式的和/或可移動(dòng)的。非易失性存儲(chǔ)器42可以附加地或者可選地包括例如可以從California,Sunnyvale的SanDisk乂i^司或者California,Fremont的LexarMedia公司獲得的EEPROM、閃存等。存儲(chǔ)器可以存儲(chǔ)移動(dòng)終端10所使用的多個(gè)信息片段和數(shù)據(jù)中的任意項(xiàng),以實(shí)現(xiàn)移動(dòng)終端10的功能。例如,存儲(chǔ)器可以包括能夠唯一標(biāo)識(shí)移動(dòng)終端10的標(biāo)識(shí)符,諸如全5求移動(dòng)設(shè)備標(biāo)識(shí)(IMEI)碼?,F(xiàn)在參考圖4,其提供了將得益于本發(fā)明實(shí)施方式的一種類型的系統(tǒng)的示范。該系統(tǒng)包括多個(gè)網(wǎng)絡(luò)設(shè)備。如圖所示,一個(gè)或多個(gè)移動(dòng)終端10每個(gè)都可以包括天線12,以用于將信號(hào)發(fā)射至基地或基站(BS)44以及用于從其接收信號(hào)?;?4可以是一個(gè)或多個(gè)蜂窩或移動(dòng)網(wǎng)絡(luò)的一部分,每個(gè)移動(dòng)網(wǎng)絡(luò)包括操作該網(wǎng)絡(luò)所需的元件,例如移動(dòng)交換中心(MSC)46。如本領(lǐng)域技術(shù)人員公知的,移動(dòng)網(wǎng)絡(luò)還可以表示為基站/MSC/互聯(lián)功能(BMI)。在操作中,當(dāng)移動(dòng)終端10進(jìn)行和接收呼叫時(shí),MSC46能夠路由去往和來自移動(dòng)終端10的呼叫。當(dāng)呼叫涉及移動(dòng)終端10時(shí),MSC46還可以提供到陸線主干的連接。此外,MSC46能夠控制去往和來自移動(dòng)終端10的消息的轉(zhuǎn)發(fā),并且還能夠控制去往和來自消息收發(fā)中心的、針對(duì)移動(dòng)終端10的消息的轉(zhuǎn)發(fā)。應(yīng)當(dāng)注意,盡管在圖4的系統(tǒng)中示出了MSC46,MSC46僅僅是示例性網(wǎng)絡(luò)設(shè)備,并且本發(fā)明的實(shí)施方式不限于在采用MSC的網(wǎng)絡(luò)中使用。MSC46可以耦合至數(shù)據(jù)網(wǎng)絡(luò),諸如局域網(wǎng)(LAN)、城域網(wǎng)(MAN)和/或廣域網(wǎng)(WAN)。MSC46可以直接耦合至數(shù)據(jù)網(wǎng)絡(luò)。20然而,在一個(gè)典型實(shí)施方式中,MSC46耦合至GTW48,而GTW48耦合至例如互聯(lián)網(wǎng)50的WAN。繼而,諸如處理元件(例如,個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)等)的設(shè)備可以經(jīng)由互聯(lián)網(wǎng)50耦合至移動(dòng)終端10。例如,如下所述,處理元件可以包括與下文描述的計(jì)算系統(tǒng)52(圖4中示出了兩個(gè))、視頻服務(wù)器54(圖4中示出了一個(gè))等相關(guān)聯(lián)的一個(gè)或多個(gè)處理元件。BS44還可以耦合至信令GPRS(通用分組無線服務(wù))支持節(jié)點(diǎn)(SGSN)56。如本領(lǐng)域技術(shù)人員公知的,SGSN56通常能夠執(zhí)行類似于MSC46的功能,以用于分組交換服務(wù)。與MSC46類似,SGSN56可以耦合至諸如互聯(lián)網(wǎng)50的數(shù)據(jù)網(wǎng)絡(luò)。SGSN56可以直接耦合至數(shù)據(jù)網(wǎng)絡(luò)。然而,在更典型的實(shí)施方式中,SGSN56耦合至分組交換核心網(wǎng),諸如GPRS核心網(wǎng)58。分組交換核心網(wǎng)繼而耦合至另一GTW48,諸如GTWGPRS支持節(jié)點(diǎn)(GGSN)60,而GGSN60耦合至互聯(lián)網(wǎng)50。除了GGSN60之外,分組交換核心網(wǎng)還可以耦合至GTW48。而且,GGSN60可以耦合至消息收發(fā)中心。在此方面,類似于MSC46,GGSN60和SGSN56可以能夠控制消息(諸如MMS消息)的轉(zhuǎn)發(fā)。GGSN60和SGSN56還可以能夠控制去往和來自消息收發(fā)中心的、針對(duì)移動(dòng)終端IO的消息的轉(zhuǎn)發(fā)。此外,通過將SGSN56耦合至GPRS核心網(wǎng)58和GGSN60,諸如計(jì)算系統(tǒng)52和/或視頻服務(wù)器54的設(shè)備可以經(jīng)由互聯(lián)網(wǎng)50、SGSN56以及GGSN60耦合至移動(dòng)終端10。在此方面,諸如計(jì)算系統(tǒng)52和/或視頻服務(wù)器54的設(shè)備可以跨越SGSN56、GPRS核心網(wǎng)58以及GGSN60來與移動(dòng)終端IO通信。通過將移動(dòng)終端IO以及其他設(shè)備(例如,計(jì)算系統(tǒng)52、視頻服務(wù)器54等)直接或者間接地連接至互聯(lián)網(wǎng)50,移動(dòng)終端10例如可以按照超文本傳輸協(xié)議(HTTP)來與其他通信以及相互之間彼此通信,由此執(zhí)行移動(dòng)終端IO的各種功能。盡管在此沒有示出和描述每個(gè)可能的移動(dòng)網(wǎng)絡(luò)的每個(gè)元件,應(yīng)當(dāng)意識(shí)到,移動(dòng)終端10可以通過BS44耦合至多種不同網(wǎng)絡(luò)中任意的一個(gè)或多個(gè)。在此方面,網(wǎng)絡(luò)可以能夠支持按照多個(gè)第一代(1G)、第二代(2G)、2.5G、第三代(3G)和/或未來的移動(dòng)通信協(xié)議等中的任意一個(gè)或多個(gè)協(xié)議的通信。例如,一個(gè)或多個(gè)網(wǎng)絡(luò)可以能夠支持按照2G無線通信協(xié)議IS-136(TDMA)、GSM和IS-95(CDMA)的通信。而且,例如,一個(gè)或多個(gè)網(wǎng)絡(luò)可以能夠支持按照2.5G無線通信協(xié)議GPRS、增強(qiáng)數(shù)據(jù)GSM環(huán)境(EDGE)等的通信。此外,例如,一個(gè)或多個(gè)網(wǎng)絡(luò)可以能夠支持按照3G無線通信協(xié)議的通信,其中3G無線通信協(xié)議諸如使用寬帶碼分多址(WCDMA)無線接入技術(shù)的通用移動(dòng)電話系統(tǒng)(UMTS)網(wǎng)絡(luò)。一些窄帶AMPS(NAMPS)網(wǎng)絡(luò)、TACS網(wǎng)絡(luò)以及雙?;蛘吒嗄5囊苿?dòng)臺(tái)(例如,數(shù)字/模擬或者TDMA/CDMA/模擬電話)也可以得益于本發(fā)明的實(shí)施方式。移動(dòng)終端10還可以耦合至一個(gè)或多個(gè)無線接入點(diǎn)(AP)62。AP62可以包括被配置為按照諸如以下的技術(shù)來與移動(dòng)終端10進(jìn)行通信的接入點(diǎn)射頻(RF)、藍(lán)牙(BT)、紅外(IrDA)或者多種不同的無線網(wǎng)絡(luò)技術(shù)中的任意技術(shù),其中無線網(wǎng)絡(luò)技術(shù)包括諸如IEEE802.il(例如,802.11a、802.llb、802.llg、謝.lln等)的無線LAN(WLAN)技術(shù),諸如IEEE802.16的WiMAX技術(shù),和/或諸如IEEE802.15的超寬帶(UWB)技術(shù),等等。AP62可以耦合至互聯(lián)網(wǎng)50。類似于MSC46,AP62可以直接耦合至互聯(lián)網(wǎng)50。然而,在一個(gè)實(shí)施方式中,AP62經(jīng)由GTW48間接耦合至互聯(lián)網(wǎng)50。此外,在一個(gè)實(shí)施方式中,可以將BS44^L作另一AP62。將會(huì)意識(shí)到,通過將移動(dòng)終端10以及計(jì)算系統(tǒng)52、視頻服務(wù)器54和/或多種其他設(shè)備中的任意設(shè)備直接或者間接地連接至互聯(lián)網(wǎng)50,移動(dòng)終端10可以彼此進(jìn)行通信,與計(jì)算系統(tǒng)進(jìn)行通信,等等,由此來執(zhí)行移動(dòng)終端10的各種功能,例如將數(shù)據(jù)、內(nèi)容等發(fā)射至計(jì)算系統(tǒng)52和/或視頻服務(wù)器54,和/或從計(jì)算系統(tǒng)52和/或視頻服務(wù)器54接收內(nèi)容、數(shù)據(jù)等。例如,視頻服務(wù)器54可以向訂閱了視頻服務(wù)的一個(gè)或多個(gè)移動(dòng)終端10提供視頻數(shù)據(jù)。可以根據(jù)H.264/AVC視頻編碼標(biāo)準(zhǔn)來壓22或者其可以包括先前錄制的視頻片段。視頻服務(wù)器54可以能夠提供包括例如第三代平臺(tái)(3GP)、音頻視頻交錯(cuò)(AVI)、WindowsMedia、MPEG(動(dòng)態(tài)圖像專家組,QuickTime,RealVideo,Shockwave(Flash)或類似)在內(nèi)的多種不同格式的一個(gè)或多個(gè)視頻序列。這里使用的術(shù)語"數(shù)據(jù)"、"內(nèi)容"、"信息"以及類似術(shù)語可以互換使用,用來表示能夠根據(jù)本發(fā)明的實(shí)施方式而被發(fā)射、接收和/或存儲(chǔ)的數(shù)神以及范圍的限制。盡管未在圖4中示出,除了跨越互聯(lián)網(wǎng)50將移動(dòng)終端10耦合至計(jì)算系統(tǒng)52之外或者作為替代,可以按照例如RF、BT、IrDA或者多種不同的有線或無線通信技術(shù)(包括LAN、WLAN、WiMAX和/或UWB技術(shù))中的任意技術(shù)來將移動(dòng)終端10與計(jì)算系統(tǒng)52彼此耦合和通信。一個(gè)或多個(gè)計(jì)算系統(tǒng)52可以附加地或者備選地包括可移動(dòng)存儲(chǔ)器,其能夠存儲(chǔ)隨后可以傳送給移動(dòng)終端10的內(nèi)容。此外,移動(dòng)終端10可以耦合至一個(gè)或多個(gè)電子設(shè)備,諸如打印機(jī)、數(shù)字投影儀和/或其他多媒體捕獲、產(chǎn)生和/或存儲(chǔ)設(shè)備(例如,其他終端)。類似于計(jì)算系統(tǒng)52,移動(dòng)終端10可以被配置為按照例如RF、BT、IrDA或者多種不同的有線或無線通信技術(shù)(包括USB、LAN、WLAN、WiMAX和/或UWB技術(shù))中的任意技術(shù)來與便攜式電子設(shè)備進(jìn)行通信?,F(xiàn)在將參考圖5來描述本發(fā)明的示例性實(shí)施方式中,圖5中示出了能夠?qū)嵤┛焖買NTER模式?jīng)Q策算法以通過減少運(yùn)動(dòng)估計(jì)操作的數(shù)目來降低視頻編碼復(fù)雜度而不使視頻編碼效率顯著降低的編碼器的元件。圖5的編碼器68可以在例如圖3的移動(dòng)終端10上使用。然而,可以意識(shí)到,圖5的編碼器還可以在移動(dòng)或者固定的多種其它設(shè)備上使用,因此,雖然下面以移動(dòng)終端中應(yīng)用為上下文更詳細(xì)地描述本發(fā)明的示例性實(shí)施方式,本發(fā)明不應(yīng)該局限在諸如圖3的移動(dòng)終端10的設(shè)備上的應(yīng)用中。通過示例而不是限制性方式給出下面的描述。例如,圖5的編碼器可以用于計(jì)算系統(tǒng)52,諸如DVD播放器、HD-DVD播放器的視頻錄像機(jī),數(shù)字視頻廣播(DVB)手持設(shè)備,個(gè)人數(shù)字助理(PDA),數(shù)字電視機(jī)頂盒,游戲和/或媒體控制臺(tái),等等。而且,圖5的編碼器68可以在移動(dòng)終端10的設(shè)備、組件、元件或視頻模塊36上使用。編碼器68可以通過硬件、軟件或硬件和軟件結(jié)合實(shí)現(xiàn)的、能夠編碼具有多個(gè)視頻幀的視頻序列的任意設(shè)備或裝置。在示例性實(shí)施方式中,編碼器68可以通過存儲(chǔ)在移動(dòng)終端IO的存儲(chǔ)器中、且由控制器20執(zhí)行的軟件指令來實(shí)現(xiàn)。在備選實(shí)施方式中,編碼器68可以通過存儲(chǔ)在視頻模塊36的存儲(chǔ)器中、且由視頻模塊36的處理元件執(zhí)行的軟件指令來實(shí)現(xiàn)??梢砸庾R(shí)到,雖然圖5示出了編碼器配置的一個(gè)示例,還可以使用多種其它配置來實(shí)施本發(fā)明的實(shí)施方式?,F(xiàn)在參考圖5,提供了編碼器68,如本領(lǐng)域技術(shù)人員所知,編碼器68能夠編碼傳入^L頻序列。如圖5所示,編碼器68接收輸入視頻幀F(xiàn)n(從諸如視頻服務(wù)器54的視頻源發(fā)送)。以宏塊為單位處理該輸入視頻幀F(xiàn)n。將該輸入視頻幀F(xiàn)n提供給差異塊78的正輸入,而將差異塊78的輸出提供給變換塊82,從而可以生成基于輸入視頻幀F(xiàn)n的變換系數(shù)集。繼而將變換系數(shù)集發(fā)送到量化塊84,其量化每個(gè)輸入視頻幀以生成具有量化變換系數(shù)集的量化幀?;芈?2將量化幀提供給反向量化塊88和反向變換塊90,其分別執(zhí)行量化幀的反向量化和變換系數(shù)的反向變換。反向變換塊90輸出的結(jié)果幀發(fā)送到求和塊80,求和塊80將該幀提供給濾波器76以降低塊失真的影響。經(jīng)過濾波的幀可以作為參考幀,并且可以存儲(chǔ)在參考幀存儲(chǔ)器74中。如圖5所示,參考幀可以是先前編碼的幀F(xiàn)Vi。運(yùn)動(dòng)補(bǔ)償預(yù)測(MCP)塊72基于存儲(chǔ)在參考幀存儲(chǔ)器74中的參考幀來執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測,以根據(jù)由運(yùn)動(dòng)估計(jì)塊70所生成的運(yùn)動(dòng)向量來生成經(jīng)過運(yùn)動(dòng)補(bǔ)償?shù)念A(yù)測宏塊。運(yùn)動(dòng)估計(jì)塊70#^居-現(xiàn)頻幀F(xiàn)n中的最佳匹配宏塊確定運(yùn)動(dòng)向量。運(yùn)動(dòng)補(bǔ)償塊72基于該運(yùn)動(dòng)向量來偏移參考幀中的相應(yīng)宏塊,以生成預(yù)測宏塊。H.264/AVC視頻編碼標(biāo)準(zhǔn)允許以INTRA(幀內(nèi))或INTER模式編碼每個(gè)宏塊。換句話說,H.264/AVC一見頻編碼標(biāo)準(zhǔn)允許編碼器選擇是按照INTRA或是INTER模式來進(jìn)行編碼。為了實(shí)行INTER模式編碼,差異塊78具有負(fù)輸出,其經(jīng)由選擇器71耦合到MCP塊72。在這點(diǎn)上,差異塊78從當(dāng)前視頻幀F(xiàn)n中的最佳匹配宏塊提取預(yù)測宏塊,以產(chǎn)生殘差宏塊或差異宏塊Dn。該差異宏塊由變換塊82和量化塊84來進(jìn)行變換和量化,以提供量化的變換系數(shù)集。這些系數(shù)可以由熵編碼塊86進(jìn)行熵編碼。熵編碼系數(shù)連同解碼宏塊所需的殘差數(shù)據(jù)(諸如宏塊預(yù)測模式、量化器步進(jìn)大小、指定宏塊運(yùn)動(dòng)補(bǔ)償方式的運(yùn)動(dòng)向量信息,等等)形成了已編碼宏塊的壓縮比特流。已編碼宏塊可以傳遞到網(wǎng)絡(luò)抽象層(NAL)以便發(fā)送和/或存儲(chǔ)。為了實(shí)行INTRA模式編碼,差異塊78的負(fù)輸出連接到INTRA模式塊(經(jīng)由選擇器71)。在INTRA模式中,根據(jù)傳入視頻幀F(xiàn)n中先前已被編碼和重構(gòu)(但沒有由濾波器76進(jìn)行濾波)的采樣來形成預(yù)測宏塊??梢詮漠?dāng)前傳入視頻幀F(xiàn)n中的最佳匹配宏塊中減去在INTRA模式中生成的預(yù)測宏塊,以產(chǎn)生殘差宏塊或差異宏塊D,n。該差異宏塊D,n由變換塊82和量化塊84進(jìn)行變換和量化,以提供量化的變換系數(shù)集。這些系數(shù)可由熵編碼塊86進(jìn)行熵編碼。熵編碼系數(shù)連同解碼宏塊所需的駐留數(shù)據(jù)形成了已編碼宏塊的壓縮比特流,其可被傳遞到網(wǎng)絡(luò)抽象層(NAL)以便發(fā)送和/或存儲(chǔ)。如本領(lǐng)域技術(shù)人員將意識(shí)到的,H.264/AVC支持用于INTRA編碼的兩種塊類型(大小),也就是,4X4和16X16。4X4INTRA塊支持9個(gè)預(yù)測模式。16X16INTRA塊支持4個(gè)預(yù)測模式。還應(yīng)該指出,H.264/AVC支持INTER編碼模式中的SKIP(跳過)模式。H.264/AVC在INTER模式編碼中利用各種塊大小和分區(qū)的樹結(jié)構(gòu)的運(yùn)動(dòng)補(bǔ)償。如上所述,H.264/AVC允許將INTER編碼的宏塊子劃分為分區(qū),并且大小范圍諸如為16X16、16X8、8X16和8X8。INTER編碼的宏塊在這里可以表示諸如INTER—16X16、INTER—16X8、INTER—8X16和INTER—8X8模式的INTER模式,其中INTER—16X16模式具有16X16的塊大小,INTER16X8模式具有16X8分區(qū),INTER—8X16模式具有8X16分區(qū)并且INTER—8X8模式具有8X8分區(qū)(例如,參見圖1)。另外,H.264/AVC支持塊大小范圍諸如為8X8、8X4、4X8和4X4的具有子分區(qū)的子宏塊。INTER編碼的子宏塊在這里可以表示諸如INTER_8X8、INTER_8X4、INTER_4X8和INTER一4X4子模式的INTER子模式(例如,參見圖1)。這些分區(qū)和子分區(qū)增加了每個(gè)宏塊內(nèi)的大量的可能結(jié)合。如
背景技術(shù):
部分所解釋,通常針對(duì)宏塊的每個(gè)分區(qū)或子分區(qū)來傳送獨(dú)立的運(yùn)動(dòng)向量,而且通常每個(gè)部分的執(zhí)行運(yùn)動(dòng)估計(jì)。運(yùn)動(dòng)估計(jì)操作的該增加的數(shù)目,極大地增加傳統(tǒng)H.264/AVC編碼器的復(fù)雜度。本發(fā)明的實(shí)施方式的快速INTER模式?jīng)Q策算法,通過降低運(yùn)動(dòng)估計(jì)操作的數(shù)目來降低與傳統(tǒng)H.264編碼器相關(guān)聯(lián)的大量復(fù)雜度,而不顯著降低編碼效率。編碼器68可以根據(jù)特定宏塊的質(zhì)量來確定將該宏塊劃分為分區(qū)或子宏塊分區(qū)的方式,以最大化成本函數(shù)以及最大化壓縮效率。成本函數(shù)是由編碼器68進(jìn)行的成本比較,其中編碼器68決定以INTER還是INTRA模式來編碼特定宏塊。編碼器68選擇具有最小成本函數(shù)的模式作為最佳模式。根據(jù)本發(fā)明的示例性實(shí)施方式,成本函數(shù)由J(MODE)|QP=SAD+、M0DE.R(MODE)確定,其中QP是量化參數(shù),SAD是預(yù)測宏塊與原始宏塊之間的絕對(duì)差異和,R(MODE)是用于給定模式(例如,INTER或INTRA)的語法位的數(shù)目,人mode是用以平衡失真和位數(shù)目之間權(quán)衡的拉格朗日參數(shù)?,F(xiàn)在參考圖6,示出了根據(jù)本發(fā)明示例性實(shí)施方式的運(yùn)動(dòng)補(bǔ)償預(yù)測塊94的結(jié)構(gòu)圖。運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以是編碼器68的組件。運(yùn)動(dòng)補(bǔ)償預(yù)測塊94包括運(yùn)動(dòng)估計(jì)器96,其可以是圖5的運(yùn)動(dòng)估計(jì)塊70。另外,運(yùn)動(dòng)補(bǔ)償預(yù)測塊94包括運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備98,其可以是圖5的運(yùn)動(dòng)補(bǔ)償預(yù)測塊72。運(yùn)動(dòng)補(bǔ)償預(yù)測(MCP)設(shè)備98包括絕對(duì)差異和(SAD)分析器91。運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以是通過硬件、軟件或硬件和軟件結(jié)合實(shí)現(xiàn)的、能夠?qū)赡芫哂蟹謪^(qū)和子分區(qū)的可變大小宏塊執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測的任意設(shè)備或裝置。運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以在處理元件(諸如控制器20,或協(xié)處理器,其可以是視頻模塊36的元件)的控制下操作。在示例性實(shí)施方式中,運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以對(duì)當(dāng)前視頻幀(例如FJ的分段的所對(duì)應(yīng)的可變大小宏塊進(jìn)行分析。例如,運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以分析具有一個(gè)或多個(gè)分區(qū)的16X16大小的宏塊(例如,參見圖1的INTER—16X8、INTER—8X16和INTER—8X8模式)。對(duì)應(yīng)于當(dāng)前視頻幀F(xiàn)。的16X16宏塊(這里稱為"原始宏塊")的運(yùn)動(dòng)向量可以由運(yùn)動(dòng)估計(jì)器96從16X16宏塊中才是取。將該運(yùn)動(dòng)向量發(fā)送至運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備98,并且運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備98使用該運(yùn)動(dòng)向量來生成預(yù)測的宏塊,這是通過對(duì)可以存儲(chǔ)在諸如參考幀存儲(chǔ)器74的存儲(chǔ)器中的先前編碼的參考幀(例如,幀F(xiàn)V!)中的相應(yīng)宏塊進(jìn)行偏移。運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備98包括SAD分析器91,其通過分析預(yù)測的16X16宏塊的一個(gè)或多個(gè)區(qū)域來確定原始宏塊和預(yù)測的宏塊之間的差異(或誤差)。特別地,如圖7所示,一個(gè)實(shí)施方式的SAD分析器評(píng)估16X16宏塊的8X8塊,以確定所預(yù)測宏塊內(nèi)4個(gè)區(qū)域的絕對(duì)差異和(SAD)(或誤差或例如失真值),也就是SAD。、SAD"SAD2和SAD3。SAD分析器91將4個(gè)區(qū)域(SADo、SAD!、SAD2和SAD3)的每一個(gè)與諸如Thre—2的預(yù)定閾值進(jìn)行比較。通過評(píng)估這4個(gè)區(qū)域,SAD分析器91能夠分析原始宏塊和所預(yù)測宏塊之間的失真的位置和能量。當(dāng)SAD小于預(yù)測的16X16宏塊的給定區(qū)域的預(yù)定闞值Thre—2時(shí),該SAD分析器確定給定區(qū)域的預(yù)測結(jié)果足夠精確,并且在二進(jìn)制SAD圖中為該區(qū)域指派二進(jìn)制位0。(例如,參見圖8的SAD圖中的SADJ。相反,當(dāng)該SAD分析器確定所預(yù)測的16X16宏塊的給定區(qū)域的預(yù)測結(jié)果超過預(yù)定的閾值Thre—2時(shí),SAD分析器決定所預(yù)測的16X16宏塊的特定區(qū)域的結(jié)果并不如期望精確,并且在二進(jìn)制SAD圖中為該區(qū)域指派二進(jìn)制位1。(例如,參見圖8的SAD圖中的SAD0)。參考圖8,其示出了由SAD分析器生成的具有二進(jìn)制值1010的二進(jìn)制SAD圖的示例。如圖8所示,SAD分析器確定區(qū)域SADo和SAD2的預(yù)測結(jié)果超過預(yù)定閾值Thre—2,并且指派給每個(gè)區(qū)域的二進(jìn)制位1表示所預(yù)測的16X16宏塊的這些區(qū)域的預(yù)測結(jié)果并不如期望精確。SAD分析器還確定區(qū)域SAD!和SAD3的預(yù)測結(jié)果小于預(yù)定的閾值Thre—2,并且為指派給這些區(qū)域的二進(jìn)制位0表示所預(yù)測的16X16宏塊的這些區(qū)域的預(yù)測結(jié)果足夠精確?;谟蒘AD分析器生成的二進(jìn)制SAD圖的結(jié)果,運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備98確定是否需要對(duì)16X16宏塊的某些區(qū)域進(jìn)行評(píng)估。如
背景技術(shù):
部分討論過,傳統(tǒng)上,針對(duì)16X16宏塊的每個(gè)分區(qū)提取運(yùn)動(dòng)向量。對(duì)于本發(fā)明的示例性實(shí)施方式的情形,這并不需要。出于示例目的,考慮當(dāng)前視頻幀F(xiàn)n中的原始宏塊,諸如具有16X8分區(qū)(也就是,圖1的INTER—16X8模式)的16X16塊大小的宏塊。運(yùn)動(dòng)估計(jì)器96首先從具有16X8分區(qū)(即,圖1的INTER—16X8模式)的16X16宏塊的相應(yīng)分段提取運(yùn)動(dòng)向量。最初,該運(yùn)動(dòng)向量由運(yùn)動(dòng)估計(jì)器96提取,就像16X16宏塊沒有16X8分區(qū)一樣(例如,就像16X16宏塊對(duì)應(yīng)于INTER—16X16模式;例如參見圖1)。換句話說,最初提取運(yùn)動(dòng)向量就像與16X8分區(qū)無關(guān)那樣樣。這樣,運(yùn)動(dòng)估計(jì)器96最初并不提取對(duì)應(yīng)于INTER—16X8模式塊的上面分區(qū)和下面分區(qū)的運(yùn)動(dòng)向量。運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備98通過按照上文討論的方式對(duì)參考幀中的匹配宏塊進(jìn)行偏移來生成預(yù)測宏塊。只要生成了預(yù)測宏塊,SAD分析器便對(duì)所預(yù)測的16X16宏塊的每個(gè)區(qū)域進(jìn)行評(píng)估,并且根據(jù)上文討論的方式來生成二進(jìn)制SAD圖。如果SAD分析器確定每個(gè)區(qū)域的結(jié)果都足夠精確,則運(yùn)動(dòng)補(bǔ)償預(yù)測塊94確定不需要提取INTER—16X8模式塊的上面分區(qū)和下面分區(qū)的運(yùn)動(dòng)向量。換句話i兌,不對(duì)該上面分區(qū)和下面分區(qū)進(jìn)4亍評(píng)估,并且由此不^^行關(guān)于上面分區(qū)和下面分區(qū)的運(yùn)動(dòng)估計(jì)。如果SAD分析器確定區(qū)域SADo、SAD^SAD2和SAD3的預(yù)測結(jié)果都低于預(yù)定閾值Thre—2,則為每個(gè)區(qū)域指派二進(jìn)制位0,并且由SAD分析器生成的二進(jìn)制SAD圖具有二進(jìn)制值0000,表明每個(gè)區(qū)域的預(yù)測結(jié)果都足夠精確。在這點(diǎn)上,運(yùn)動(dòng)補(bǔ)償預(yù)測塊94確定不需要針對(duì)INTER16X828模式塊的上面分區(qū)和下面分區(qū)執(zhí)行運(yùn)動(dòng)估計(jì),并且簡單地使用對(duì)應(yīng)于16X16模式塊(也就是,INTER—16X16模式;例如,參見圖1)的運(yùn)動(dòng)向量來執(zhí)行運(yùn)動(dòng)估計(jì),運(yùn)動(dòng)補(bǔ)償預(yù)測以及生成預(yù)測的宏塊。這樣,降低了編碼器68處的運(yùn)動(dòng)估計(jì)計(jì)算的數(shù)目,而編碼效率并未顯著降低。如果SAD分析器在二進(jìn)制SAD圖中生成二進(jìn)制值1010(不同于上面示例的二進(jìn)制值0000),表示區(qū)域SADo和SAD2的預(yù)測結(jié)果超過預(yù)定閾值Thre—2,而區(qū)域SAD:和SAD3的預(yù)測結(jié)果小于預(yù)定閾值Thre—2,則SAD分析器確定INTER_8X16的左邊分區(qū)的預(yù)測結(jié)果并不如期望精確,而右邊分區(qū)的預(yù)測結(jié)果足夠精確。這樣,運(yùn)動(dòng)估計(jì)器96從當(dāng)前視頻幀F(xiàn)n中具有8X16分區(qū)(INTER—16X8模式)的原始16X16宏塊中提取第二運(yùn)動(dòng)向量。該第二運(yùn)動(dòng)向量是從INTER—16X8模式塊的左邊分區(qū)提取的。運(yùn)動(dòng)估計(jì)器96執(zhí)行運(yùn)動(dòng)估計(jì),從而可以由運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備98對(duì)左邊分區(qū)寺丸行運(yùn)動(dòng)補(bǔ)償預(yù)測。然而,由于二進(jìn)制SAD圖表明區(qū)域SADi和SAD3的結(jié)果足夠精確,不需要從右邊分區(qū)提取運(yùn)動(dòng)向量,由此不需要執(zhí)行針對(duì)INTER_8X16模式塊的右邊分區(qū)的運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償,從而降低在編碼器68處的運(yùn)動(dòng)估計(jì)操作數(shù)目。其后,運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以從最佳INTER模式(即,這個(gè)示例中在INTER—16X16模式和INTER_8X16模式的左邊分區(qū)之中)和最佳INTRA模式中選擇最佳編碼模式。在一個(gè)實(shí)施方式中,最佳編碼模式是使得根據(jù)公式J(MODE)|QP=SAD+XM0DE.R(MODE)的成本函數(shù)最小化的模式??紤]另一個(gè)示例,其中SAD分析器生成的二進(jìn)制SAD圖具有二進(jìn)制值0101。SAD分析器確定區(qū)域SAD。和SAD2的預(yù)測結(jié)果低于預(yù)定閾值Thre—2且INTER—8X16模式塊的左邊分區(qū)的預(yù)測結(jié)果足夠精確,然而,區(qū)域SAD!和SAD3的預(yù)測結(jié)果超過預(yù)定閾值Thre—2,這表明INTER—8X16模式塊的右邊分區(qū)的預(yù)測結(jié)果并不如期望精確。這樣,運(yùn)動(dòng)估計(jì)器96根據(jù)上述方式基于16X16INTER模式提取第一運(yùn)動(dòng)向量,并且隨后從INTER—8X16模式塊的右邊分區(qū)提取另一個(gè)運(yùn)動(dòng)向量(即,第二運(yùn)動(dòng)向量),從而執(zhí)行針對(duì)右邊分區(qū)的運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償預(yù)測。然而,由于SADo和SAD2的結(jié)果足夠精確,不需要提取對(duì)應(yīng)于INTER—8X16模式塊的左邊分區(qū)的運(yùn)動(dòng)向量。換句話說,不評(píng)估左邊分區(qū)。其后,運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以從最佳INTER模式(即,這個(gè)示例中在INTER—16X16模式和INTER—8X16模式的右邊分區(qū)之中)和最佳INTRA模式中選擇最佳編碼模式。如上所述,一個(gè)實(shí)施方式的最佳編碼模式是使成本函數(shù)最小化的模式。假設(shè)運(yùn)動(dòng)估計(jì)器96評(píng)估當(dāng)前視頻幀F(xiàn)n的具有16X8分區(qū)(即,INTER—16X8模式;例如,參見圖1)的原始16X16大小的宏塊。在這點(diǎn)上,運(yùn)動(dòng)估計(jì)器96首先提取運(yùn)動(dòng)向量,就像16X16大小的宏塊是INTER—16X16模式塊一樣,也就是說,與INTER—16X8模式塊的上面分區(qū)和下面分區(qū)無關(guān)??紤]SAD分析器生成的二進(jìn)制SAD圖具有二進(jìn)制值0011的示例。在這點(diǎn)上,SAD分析器確定SADo和SAD!小于預(yù)定閾值Thre—2,而SADs和SAD3超過預(yù)定閾值Thre—2。這意味著,SAD()和SAD!的結(jié)果足夠精確,然而SADz和SAD3的結(jié)果并不如期望精確。這樣,運(yùn)動(dòng)估計(jì)器從對(duì)應(yīng)于下面分區(qū)的INTER—16X8才莫式塊提取第二運(yùn)動(dòng)向量并且執(zhí)行運(yùn)動(dòng)估計(jì),從而可以對(duì)下面分區(qū)執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測。然而,由于SADo和SAD!的結(jié)果非常精確,不需要提取對(duì)應(yīng)于INTER—16X8模式塊的上面分區(qū)的運(yùn)動(dòng)向量,由此不需要針對(duì)該上面分區(qū)來執(zhí)行運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償預(yù)測。這樣,降低了編碼器68處的運(yùn)動(dòng)估計(jì)操作的數(shù)目。隨后,運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以從最佳INTER模式(即,這個(gè)示例中在INTER—16X16模式和INTER—16X8模式的下面分區(qū)之中)和最佳INTRA模式之中選擇最佳編碼模式。如上所述,最佳編碼模式可以是使成本函數(shù)最小化的模式??紤]這樣的示例當(dāng)運(yùn)動(dòng)估計(jì)器96對(duì)當(dāng)前視頻幀F(xiàn)。的具有16X8部分(即,INTER—8X16模式;例如,參見圖1)的原始16X16大小的宏塊進(jìn)行評(píng)估時(shí),SAD分析器生成的二進(jìn)制SAD圖具有二進(jìn)制值1100。在這點(diǎn)上,SAD分析器確定SADo和SAD!超過預(yù)定閾值30Thre—2,而SAD2和SAD3小于預(yù)定閾值Thre—2。這意味著,SAD0和SAD:的結(jié)果并不如期望精確,然而SAD2和SAD3的結(jié)果足夠精確。這樣,運(yùn)動(dòng)估計(jì)器從對(duì)應(yīng)于上面分區(qū)的INTER—16X8模式塊提取第二運(yùn)動(dòng)向量并且執(zhí)行運(yùn)動(dòng)估計(jì),從而可以對(duì)上面分區(qū)執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測。然而,由于SAD2和SAD3的結(jié)果足夠精確,不需要提取對(duì)應(yīng)于INTER—16X8模式塊的下面分區(qū)的運(yùn)動(dòng)向量,由此不需要針對(duì)下面分區(qū)執(zhí)行運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償預(yù)測。在這點(diǎn)上,由于減少了運(yùn)動(dòng)估計(jì)操作的數(shù)目,降低了編碼器68的復(fù)雜度。隨后,運(yùn)動(dòng)補(bǔ)償預(yù)測塊94可以從最佳INTER模式(即,這個(gè)示例中在INTER—16X16模式和INTER—16X8才莫式的上面分區(qū)之中)和最佳INTRA模式中選擇最佳編碼模式。最佳編碼模式可以是使成本函數(shù)最小化的模式。圖9A和圖9B為根據(jù)本發(fā)明示例性實(shí)施方式的生成快速INTER模式?jīng)Q策算法的方法和程序產(chǎn)品的流程圖。可以由能夠在處理元件(諸如控制器20)或協(xié)處理器(可以是視頻模塊36的元件)的控制下操作的圖5的編碼器68來實(shí)現(xiàn)該快速INTER模式?jīng)Q策算法。這樣,該流程圖包括多個(gè)步驟,這些步驟的功能例如可以由諸如控制器20的處理元件或協(xié)處理器來執(zhí)行。應(yīng)當(dāng)理解,可以通過諸如硬件和/固件的各種手段來實(shí)現(xiàn)這些步驟。在這些情形中,硬件和/或固件可以單獨(dú)實(shí)施相應(yīng)步驟和/或受控于一個(gè)或多個(gè)計(jì)算機(jī)程序產(chǎn)品。在這點(diǎn)上,這種計(jì)算機(jī)程序產(chǎn)品可以包括包含在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的至少一個(gè)計(jì)算機(jī)可讀程序代碼部分,諸如一系列計(jì)算機(jī)指令。處理元件可以接收傳入視頻幀(例如,F(xiàn)n),并且可以分析可能具有在^L頻幀內(nèi)分^:的多個(gè)才莫式(例如,INTER—16X16、INTER—16X8、INTER—8X16和INTER_8X8)的可變大小的16X16宏塊。處理元件可以從視頻幀的16X16宏塊(這里稱為"原始宏塊")提取運(yùn)動(dòng)向量,并且執(zhí)行運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償預(yù)測以生成預(yù)測宏塊。而且,處理元件可以對(duì)預(yù)測宏塊和原始宏塊之間的絕對(duì)差異和(SAD)進(jìn)行比較。例如,為了實(shí)施本發(fā)明示例性實(shí)施方式的快速INTER模式?jīng)Q策算法,處理元件計(jì)算SKIP模式和ZERO—MOTION模式的SAD。也就是說,如本領(lǐng)域技術(shù)人員所知,處理元件分別計(jì)算SADsk!p和SADZER0—M0T。參見方框100。如此處定義,ZERO—MOTION模式表示提取的運(yùn)動(dòng)向量等于(0,0)的INTER一16X16模式,這表明在原始宏塊和預(yù)測宏塊之間沒有運(yùn)動(dòng)或運(yùn)動(dòng)很小。如H.264/AVC標(biāo)準(zhǔn)定義,在SKIP模式中,編碼器(例如,編碼器68)并不向解碼器發(fā)送任何運(yùn)動(dòng)向量或殘差數(shù)據(jù),該解碼器僅使用預(yù)測的運(yùn)動(dòng)向量來重構(gòu)該宏塊。如果所預(yù)測的運(yùn)動(dòng)向量為(0,0),針對(duì)SKIP模式而生成的預(yù)測將等同于針對(duì)ZERO—MOTION模式而生成的預(yù)測。(這是因?yàn)?,在H.264/AVC中,宏塊中的每個(gè)運(yùn)動(dòng)向量都是被預(yù)測編碼的。這就是說,運(yùn)動(dòng)向量的預(yù)測是使用先前宏塊、但是在同一幀中的運(yùn)動(dòng)向量來形成的。該預(yù)測運(yùn)動(dòng)向量可以具有值(0,0),或者一些其它值。如果按照SKIP模式來編碼宏塊,如本領(lǐng)域技術(shù)人員所知,不會(huì)向解碼器發(fā)送運(yùn)動(dòng)向量,而編碼器假定宏塊的運(yùn)動(dòng)向量與預(yù)測的運(yùn)動(dòng)向量相同。這樣,如果預(yù)測的運(yùn)動(dòng)向量為(0,0),那么ZERO—MOTION模式將于SKIP模式相同。)如果處理元件確定SADs,小于預(yù)定閾值Thre—1或SADZERO—M0T小于預(yù)定閾值Thre—1,處理元件根據(jù)提供最小成本函數(shù)的模式在SKIP模式或ZERO—MOTION模式之間進(jìn)行選擇,并且不對(duì)INTRA模式進(jìn)4亍進(jìn)一步評(píng)估。處理元件繼而將early—exit標(biāo)志改變?yōu)?(這表示SKIP模式或ZERO—MOTION提供充足精確的預(yù)測結(jié)果)。參見方框102和124。否則,處理元件繼而將early—exit標(biāo)志改變?yōu)?(這表示SKIP模式和ZERO—MOTION并未提供具有預(yù)期精度的預(yù)測結(jié)果)。參見方框102。處理元件繼而執(zhí)行針對(duì)INTER—16X16模式的運(yùn)動(dòng)估計(jì)(ME),并且針對(duì)16X16宏塊內(nèi)的每個(gè)8X8塊計(jì)算SAD,得到對(duì)應(yīng)于16X16宏塊的區(qū)域SAD16X16,0、SAD魔w!、SAD"踢,2和SAD16X16,j々4個(gè)SAD值。參見方框104;例如,還可參見圖7。隨后,處理元件確定SADT0TAL=SAD16x16,q+SADwmw+SAD16X162+SAD!6幻63是否大于預(yù)定閾值Thre3,如果大于,處理元件將early—exit標(biāo)志改變?yōu)?,并且確定最佳INTRA模式(如本領(lǐng)域技術(shù)人員所知的確定)而不評(píng)估附加的INTER模式。參見方框106和126。換句話說,在針對(duì)INTERJ6X16模式塊執(zhí)行運(yùn)動(dòng)估計(jì)后,當(dāng)SAD16X16,0+SADwxw,!+SAD16X16,2+SAD16X16,3的和(SADT0TAL)大于預(yù)定閾值Thre一3時(shí),處理元件確定對(duì)于16X16宏塊的分區(qū)而言,原始和預(yù)測的宏塊之間的誤差大(即,例如,對(duì)于諸如INTER—16X8、INTER—8X16和INTER—8X8模式的16X16模式宏塊的其它INTER模式而言,該誤差大)。這樣,處理元件決定不耗費(fèi)時(shí)間和成本來確定附加的INTER模式,而是確定最佳INTRA模式。如果SADTOTAL沒有超過預(yù)定閾值Thre_3,處理元件繼而生成包括對(duì)應(yīng)于4個(gè)SAD區(qū)域(也就是SADo、SAD!、SADz和SAD3)的4個(gè)位的二進(jìn)制SAD圖。參見方框108。每個(gè)位對(duì)應(yīng)于區(qū)域的SAD結(jié)果和預(yù)定闊值Thre_2之間的比較結(jié)果。如果SAD值小于預(yù)定閾值Thre一2,處理元件在二進(jìn)制SAD圖中為該相應(yīng)區(qū)域指派二進(jìn)制位0(例如,參考圖8的SAD!)。另一方面,如果SAD值超過預(yù)定閾值Thre—2,處理元件在二進(jìn)制SAD圖中為該相應(yīng)區(qū)域指派二進(jìn)制位1(例如,參考圖8的SADo)。取決于由處理元件生成的二進(jìn)制SAD圖,處理元件確定由下面表1列出的下列動(dòng)作中的一個(gè)。參見方框IIO。<table>tableseeoriginaldocumentpage33</column></row><table>0101改變t/owe—76x5標(biāo)志為0,<io_we_5x/6標(biāo)志為1其它改變<io—me—/(5x5標(biāo)志為1,t/o—me—標(biāo)志為1表1如果處理元件確定對(duì)于二進(jìn)制SAD圖中的給定二進(jìn)制值(例如,二進(jìn)制值0000),do—me—/6xS標(biāo)志為0,則處理元件繼而確定針對(duì)相應(yīng)二進(jìn)制值的me—5x/6標(biāo)志是否為0,如果是,該處理元件在先前執(zhí)行運(yùn)動(dòng)估計(jì)的INTER才莫式和最佳INTRA模式中確定最佳INTER模式,并且基于使成本函數(shù)最小化的模式在最佳INTER模式和最佳INTRA模式之間進(jìn)行選擇,其中成本函數(shù)例如由J(MODE)|QP=SAD+XMODE.R(MODE)給出。參見方框112、118和122。否則,處理元件確定SAD16X1M+SAD!6x^是否大于預(yù)定閾值Thre—4,如果是,處理元件針對(duì)16X8宏塊分區(qū)(例如,參見圖1的INTER—16X8才莫式)的上面分區(qū)4丸行運(yùn)動(dòng)估計(jì)。否則,處理元件使用在INTER—16X16模式中找到的運(yùn)動(dòng)向量(MV)(在方框104中確定)作為上面分區(qū)的運(yùn)動(dòng)向量。以相似的方式,處理元件確定SAD16X16,2+SAD腦w,3是否超過預(yù)定閾值Thre—4,如果是,處理元件針對(duì)16X8宏塊分區(qū)的下面分區(qū)執(zhí)行運(yùn)動(dòng)估計(jì)。否則,處理元件使用在INTER—16X16模式中找到的運(yùn)動(dòng)向量(MV)(在方框104中確定)作為下面分區(qū)的運(yùn)動(dòng)向量。參見方框114。處理元件繼而在針對(duì)INTER—16X8模式(即,16X8宏塊分區(qū))的運(yùn)動(dòng)估計(jì)過程之后計(jì)算SAD16X8,并且如果SAD腦s低于預(yù)定闊值Thre—1,處理元件改變do—we—&c/<5標(biāo)志為0。參見方框116。如果t/o—/^一&c/6標(biāo)志為0,處理元件在先前執(zhí)行運(yùn)動(dòng)估計(jì)的INTER模式和最佳INTRA模式中確定最佳INTER模式,并且基于具有最低成本函數(shù)的模式在最佳INTER模式和最佳INTRA模式之間進(jìn)行選擇。參見方框118和122。其后,處理元件確定SAD16X16,。+SAD!④6,2是否大于預(yù)定閾值Thre_4,如果是,處理元件針對(duì)8X16宏塊分區(qū)的左邊分區(qū)執(zhí)行運(yùn)動(dòng)估計(jì)。例如,參見圖1的INTEI^8X16模式。否則,處理元件使用在INTER一16X16模式中找到的運(yùn)動(dòng)向量(在方框104中確定)作為8X16宏塊分區(qū)的左邊分區(qū)的運(yùn)動(dòng)向量。相似地,處理元件確定SADmxw+SADgi6,3是否大于預(yù)定閾值Thre—4,如果是,處理元件針對(duì)8X16宏塊分區(qū)的右邊分區(qū)執(zhí)行運(yùn)動(dòng)估計(jì)。否則,處理元件使用在INTERJ6X16模式中找到的運(yùn)動(dòng)向量(在方框104中確定)作為8X16宏塊分區(qū)的右邊分區(qū)的運(yùn)動(dòng)向量。參見方框120。隨后,處理元件在先前執(zhí)行運(yùn)動(dòng)估計(jì)的INTER一莫式和最佳INTRA模式中確定最佳INTER模式,并且基于具有最低成本函數(shù)的模式在最佳INTER模式和最佳INTRA模式中進(jìn)行選擇。參見方框122。在本發(fā)明的示例性實(shí)施方式中,預(yù)定閾值Thre—1、Thre—2、Thre—3和Thre—4取決于具有分段線性函數(shù)的量化參數(shù)(QP)。下面的公式可以示出預(yù)定閾值值(Thre—1、Thre—2、Thre_3和Thre—4)對(duì)QP的依賴關(guān)系。T7^wm'《^"用來根據(jù)量化參數(shù)調(diào)節(jié)閾值。參數(shù)^^pMw/"戶/e是預(yù)定義的常數(shù),其用來確定SKIP和ZERO_MOTION模式的"及早退出(early-exit)"閾值。參數(shù)sat/Mw/^p/e/和^c/Mw/";p/e2是預(yù)定義的常數(shù),其如上所述的在示例性實(shí)施方式中使用。參數(shù)ex"7b/w,ra77i是預(yù)定義的常數(shù),其用來決定是否早先離開進(jìn)入INTRA模式。35<formula>formulaseeoriginaldocumentpage36</formula>現(xiàn)在參考圖10,其示出了由本發(fā)明示例性實(shí)施方式的編碼器實(shí)現(xiàn)的平均復(fù)雜度降低的圖形化表示。參考圖10,prof3對(duì)應(yīng)于本發(fā)明示例性實(shí)施方式的編碼器(例如,編碼器68),而prof2對(duì)應(yīng)于傳統(tǒng)的H.264編碼器。如圖IO所示,對(duì)于給定的視頻序列(即,根據(jù)QCIF編碼,15幀每秒176x144的分辨率的關(guān)于足球的視頻序列),采用了上述快速INTER模式?jīng)Q策算法的本發(fā)明的編碼器的運(yùn)動(dòng)估計(jì)操作數(shù)目為270,而傳統(tǒng)H.264編碼器則是471。如圖所示,與傳統(tǒng)的H.264編碼器相比,在給定的比特率下,本發(fā)明示例性實(shí)施方式的編碼器還實(shí)現(xiàn)了更低的峰值信噪比(PSNR)。現(xiàn)在轉(zhuǎn)到圖11,其按照比特率相對(duì)于秒每幀(即,Sec/Fmme)示出了由本發(fā)明的示例性編碼器所實(shí)現(xiàn)的平均復(fù)雜度降低的圖形化表示。參考圖11,prof3對(duì)應(yīng)于根據(jù)本發(fā)明示例性實(shí)施方式的編碼器,而prof2對(duì)應(yīng)于傳統(tǒng)的H.264編碼器。如圖ll所說明,在給定比特率下,本發(fā)明示例性實(shí)施方式的編碼器比傳統(tǒng)的H.264編碼器更快地編碼;現(xiàn)頻幀。參考圖12,其示出了關(guān)于幀復(fù)雜度(即,視頻幀的編碼復(fù)雜度)的圖形化表示。如這里所表示的,幀復(fù)雜度是以毫秒測量的基于奔騰(Pentium)的個(gè)人計(jì)算機(jī)的用于編碼一幀的時(shí)間。在圖12中,prof3對(duì)應(yīng)于根據(jù)本發(fā)明示例性實(shí)施方式的編碼器,而prof2對(duì)應(yīng)于傳統(tǒng)的H.264編碼器。如圖12所示,對(duì)于給定的視頻幀,根據(jù)本發(fā)明示例性實(shí)施方式的編碼器相比傳統(tǒng)的H.264編碼器,實(shí)現(xiàn)了18.06%的最大復(fù)雜度降低。應(yīng)當(dāng)理解,圖9A和9B中所示的流程圖的每個(gè)方框或步驟以及流程圖中方框的組合可以通過諸如硬件、固件和/或包括一個(gè)或多個(gè)計(jì)算機(jī)程序指令的軟件的各種手段來實(shí)現(xiàn)。例如,可以由計(jì)算機(jī)程序指令實(shí)現(xiàn)上述的一個(gè)或多個(gè)過程。在這點(diǎn),實(shí)現(xiàn)上述過程的計(jì)算機(jī)程序指令可以由移動(dòng)終端的存儲(chǔ)器設(shè)備存儲(chǔ),并且由移動(dòng)終端的內(nèi)置處理器執(zhí)行。將會(huì)意識(shí)到,任意這種計(jì)算機(jī)程序指令可以加載到計(jì)算機(jī)或其它可編程裝置(即,硬件)以產(chǎn)生機(jī)器,使得在計(jì)算機(jī)或其它可編程裝置上執(zhí)行的指令產(chǎn)生用于實(shí)施在流程圖方框或步驟中指明的功能的裝置。這些計(jì)算機(jī)程序指令還可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)中,可以指示計(jì)算機(jī)或其它可編程裝置以特定方式運(yùn)行,使得存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)中的指令產(chǎn)生包括實(shí)施在流程圖方框或步驟中指明的功能的指令工具的產(chǎn)品。計(jì)算機(jī)程序指令還可以裝載入計(jì)算機(jī)或其它可編程裝置,引起一系列的操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)施過程,使得在計(jì)算機(jī)或其它可編程裝置上執(zhí)行的指令提供用于實(shí)施在流程圖方框或步驟中指明的功能的步驟。因此,流程圖的方框或步驟支持用于執(zhí)行規(guī)定功能的裝置的組合,用于執(zhí)行規(guī)定功能的步驟的組合,以及用于執(zhí)行規(guī)定功能的程序指令裝置的組合。還可以理解,流程圖的一個(gè)或多個(gè)方框或步驟以及流程圖中方框或步驟的組合可以由執(zhí)行規(guī)定功能或步驟的基于硬件的專用計(jì)算機(jī)系統(tǒng)或?qū)S糜布陀?jì)算機(jī)指令的結(jié)合來執(zhí)行??梢酝ㄟ^多種方式執(zhí)行上述功能。例如,可以采用執(zhí)行每個(gè)上述功能的任意合適裝置來執(zhí)行本發(fā)明。在一個(gè)實(shí)施方式中,本發(fā)明的全部或部分元件通常受計(jì)算機(jī)程序產(chǎn)品的控制而操作。用于執(zhí)行本發(fā)明實(shí)施方式的方法的計(jì)算機(jī)程序產(chǎn)品包括諸如非易失性存儲(chǔ)介質(zhì)的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),以及諸如具體化到計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中的一串計(jì)算機(jī)指令的計(jì)算機(jī)可讀程序代碼部分。受益于前面描述和相關(guān)附圖所給出的啟示,屬于本發(fā)明的本領(lǐng)域技術(shù)人員可以想到在此記載的本發(fā)明的許多修改和其它實(shí)施方式。因此,可以理解,本發(fā)明并不局限于所公開的具體實(shí)施方式,而是意在將修改和其它實(shí)施方式包括在所附權(quán)利要求的范圍之內(nèi)。雖然這里采用了特定術(shù)語,它們僅作為一般性使用和描述意義,并不為了限制目的。例如,雖然參考具有16X8和8X16分區(qū)的宏塊描述了本發(fā)明的快速INTER模式?jīng)Q策算法,可以理解,快速INTER模式?jīng)Q策算法可以容易地?cái)U(kuò)展到諸如8X8宏塊分區(qū)的更小部分。而且,不脫離本發(fā)明的精神和范圍,本發(fā)明實(shí)施方式的快速INTER模式?jīng)Q策算法可以擴(kuò)展到子宏塊(例如,8X8塊大小的子宏塊)和諸如8X4、4X8和4X4的子分區(qū)。另外,雖然上文中按照H.264/AVC視頻編碼標(biāo)準(zhǔn)解釋本發(fā)明實(shí)施方式的快速INTER模式?jīng)Q策算法,但是可以理解,快速INTER模式?jīng)Q策算法適用于支持各種可變大小的塊大小運(yùn)動(dòng)估計(jì)的任意一見頻編碼標(biāo)準(zhǔn)。權(quán)利要求1、一種使用運(yùn)動(dòng)補(bǔ)償預(yù)測來選擇用于編碼宏塊的模式的方法,所述方法包括從視頻幀的至少一個(gè)宏塊提取至少一個(gè)運(yùn)動(dòng)向量,所述至少一個(gè)宏塊包括具有多個(gè)塊大小的第一多個(gè)幀間模式;通過分析參考幀,基于所述至少一個(gè)運(yùn)動(dòng)向量來生成針對(duì)所述宏塊的至少一個(gè)預(yù)測;以及將失真值與第一預(yù)定閾值進(jìn)行比較,并且基于所述失真值與所述第一預(yù)定閾值的所述比較,在第一編碼模式和第二編碼模式中選擇第一編碼模式,而不對(duì)所述第二編碼模式進(jìn)行評(píng)估。2、根據(jù)權(quán)利要求1所述的方法,其中在比較失真值之前,將所述至少一個(gè)宏塊的殘差與對(duì)應(yīng)于多個(gè)預(yù)定候選運(yùn)動(dòng)向量的另一預(yù)定閾值進(jìn)行比較,并且其中所述多個(gè)預(yù)定候選運(yùn)動(dòng)向量包括多個(gè)運(yùn)動(dòng)向量的子集。3、根據(jù)權(quán)利要求2所述的方法,其中所述多個(gè)預(yù)定候選運(yùn)動(dòng)向量包括在x和y方向上具有值(0,0)的至少一個(gè)運(yùn)動(dòng)向量,以及預(yù)測的運(yùn)動(dòng)向量,所述預(yù)測的運(yùn)動(dòng)向量的值取決于對(duì)應(yīng)于幀中宏塊的運(yùn)動(dòng)向量的值。4、根據(jù)權(quán)利要求1所述的方法,進(jìn)一步包括當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的第一塊大小時(shí),基于所述提取的運(yùn)動(dòng)向量來估計(jì)所述至少一個(gè)宏塊的運(yùn)動(dòng);以及當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),計(jì)算多個(gè)失真值,所述多個(gè)失真值中的每個(gè)對(duì)應(yīng)于所述至少一個(gè)宏塊的相應(yīng)區(qū)域。5、根據(jù)權(quán)利要求4所述的方法,進(jìn)一步包括對(duì)所述多個(gè)區(qū)域的所述多個(gè)失真值求和,以產(chǎn)生總和;以及將所述總和與第二預(yù)定閾值進(jìn)行比較,并且當(dāng)所述總和超過所述第二預(yù)定閾值時(shí),選擇所述第二編碼模式,而不對(duì)所述第一編碼模式進(jìn)行評(píng)估。6、根據(jù)權(quán)利要求4所述的方法,進(jìn)一步包括生成包括多個(gè)位的二進(jìn)制失真圖,其中每個(gè)位的值對(duì)應(yīng)于與第三預(yù)定閾值的比較,并且其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),每個(gè)位對(duì)應(yīng)于所述至少一個(gè)宏塊的相應(yīng)區(qū)域。7、根據(jù)權(quán)利要求4所述的方法,進(jìn)一步包括確定第一失真值和第二失真值的總和是否超過第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的第二塊大小時(shí),所述第一失真值和所述第二失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第一分區(qū);當(dāng)所述第一失真值和所述第二失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第一分區(qū)的運(yùn)動(dòng);以及當(dāng)所述第一失真值和所述第二失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第一分區(qū)的運(yùn)動(dòng)向量。8、根據(jù)權(quán)利要求7所述的方法,進(jìn)一步包括確定第三失真值和第四失真值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第二塊大小時(shí),所述第三失真值和所述第四失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第二分區(qū);當(dāng)所述第三失真值和所述第四失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第二分區(qū)的運(yùn)動(dòng);以及當(dāng)所述第三失真值和所述第四失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第二分區(qū)的運(yùn)動(dòng)向量。9、根據(jù)權(quán)利要求7所述的方法,進(jìn)一步包括確定第五失真值和第六失真值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的第三塊大小時(shí),所述第五失真值和所述第六失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第三分區(qū);當(dāng)所述第四失真值和所述第五失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第三分區(qū)的運(yùn)動(dòng);以及當(dāng)所述第五失真值和所述第六失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第三分區(qū)的運(yùn)動(dòng)向量。10、根據(jù)權(quán)利要求9所述的方法,進(jìn)一步包括確定第六失真值和第七失真值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第三塊大小時(shí),所述第六失真值和所述第七失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第四分區(qū);當(dāng)所述第六失真值和所述第七失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第四分區(qū)的運(yùn)動(dòng);以及當(dāng)所述第六失真值和所述第七失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第四分區(qū)的運(yùn)動(dòng)向量。11、根據(jù)權(quán)利要求IO所述的方法,進(jìn)一步包括在執(zhí)行運(yùn)動(dòng)估計(jì)的所述第一、第二、第三塊大小中確定最佳幀間模式;在候選幀內(nèi)模式中確定最佳幀內(nèi)模式;以及從所述最佳幀間模式和所述最佳幀內(nèi)模式中選擇具有最低成本函數(shù)的一個(gè)。12、根據(jù)權(quán)利要求1所述的方法,其中所述第一編碼模式包括基于時(shí)間冗余的幀間編碼模式,并且所述第二編碼模式包括基于空間冗余的幀內(nèi)編碼模式。13、根據(jù)權(quán)利要求IO所述的方法,其中所述第一塊大小大于所述第二和第三塊大小,并且其中所述第二塊大小包括水平分區(qū),并且其中所述第三塊大小包括垂直分區(qū)。14、一種用于執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括具有存儲(chǔ)于其中的計(jì)算機(jī)可讀程序代碼部分的至少一個(gè)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀程序代碼部分包括第一可執(zhí)行部分,用于從視頻幀的至少一個(gè)宏塊提取至少一個(gè)運(yùn)動(dòng)向量,所述至少一個(gè)宏塊包括具有多個(gè)塊大小的第一多個(gè)幀間模式;第二可執(zhí)行部分,用于通過分析參考幀,基于所述至少一個(gè)運(yùn)動(dòng)向量來生成針對(duì)所述至少一個(gè)宏塊的至少一個(gè)預(yù)測;以及第三可執(zhí)行部分,用于將失真值與第一預(yù)定閾值進(jìn)行比較,并且基于所述失真值與所述第一預(yù)定閾值的所述比較,在第一編碼模式和第二編碼模式中選擇第一編碼模式,而不對(duì)所述第二編碼模式進(jìn)行評(píng)估。15、根據(jù)權(quán)利要求14所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括第六可執(zhí)行部分,用于當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的第一塊大小時(shí),基于所述提取的運(yùn)動(dòng)向量來估計(jì)所述至少一個(gè)宏塊的運(yùn)動(dòng);以及第七可執(zhí)行部分,用于當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),計(jì)算多個(gè)SAD值,所述多個(gè)失真值中的每個(gè)對(duì)應(yīng)于所述至少一個(gè)宏塊的相應(yīng)區(qū)域。16、根據(jù)權(quán)利要求15所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括第八可執(zhí)行部分,用于對(duì)所述多個(gè)區(qū)域的所述多個(gè)失真值求和以生成總和;以及第九可執(zhí)行部分,用于將所述總和與第二預(yù)定閾值比較,并且當(dāng)所述總和超過所述第二預(yù)定閾值時(shí),選擇所述第二編碼模式,而不對(duì)所述第一編碼模式進(jìn)行評(píng)估。17、根據(jù)權(quán)利要求15所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括第十可執(zhí)行部分,用于生成包括多個(gè)位的二進(jìn)制失真圖,其中每個(gè)位的值對(duì)應(yīng)于與第三預(yù)定閾值的比較,并且其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),每個(gè)位對(duì)應(yīng)于所述至少一個(gè)預(yù)測宏塊的相應(yīng)區(qū)域。18、根據(jù)權(quán)利要求15所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括第十一可執(zhí)行部分,用于確定第一失真值和第二失真值的總和是否超過第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的第二塊大小時(shí),所述第一失真值和第二失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第一分區(qū);第十二可執(zhí)行部分,用于當(dāng)所述第一失真值和所述第二失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第一分區(qū)的運(yùn)動(dòng);以及第十三可執(zhí)行部分,用于當(dāng)所述第一失真值和所述第二失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第一分區(qū)的運(yùn)動(dòng)向量。19、根據(jù)權(quán)利要求18所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括第十四可執(zhí)行部分,用于確定第三失真值和第四失真值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第二塊大小時(shí),所述第三失真值和所述第四失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第二分區(qū);第十五可執(zhí)行部分,用于當(dāng)所述第三失真值和所述第四失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第二分區(qū)的運(yùn)動(dòng);以及第十六可執(zhí)行部分,用于當(dāng)所述第三失真值和所述第四失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第二分區(qū)的運(yùn)動(dòng)向量。20、根據(jù)權(quán)利要求18所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括第十七可執(zhí)行部分,用于確定第五失真值和第六失真值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括第三塊大小時(shí),所述第五失真值和第六失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第三分區(qū);第十八可執(zhí)行部分,用于當(dāng)所述第四失真值和所述第五失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第三分區(qū)的運(yùn)動(dòng);以及第十九可執(zhí)行部分,用于當(dāng)所述第五失真值和所述第六失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第三分區(qū)的運(yùn)動(dòng)向量。21、根據(jù)權(quán)利要求20所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括第二十可執(zhí)行部分,用于確定第六失真值和第七失真值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第三塊大小時(shí),所述第六失真值和第七失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第四分區(qū);第二十一可執(zhí)行部分,用于當(dāng)所述第六失真值和所述第七失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第四分區(qū)的運(yùn)動(dòng);以及第二十二可執(zhí)行部分,用于當(dāng)所述第六失真值和所述第七失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第四分區(qū)的運(yùn)動(dòng)向量。22、根據(jù)權(quán)利要求21所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括第二十三可執(zhí)行部分,用于在執(zhí)行運(yùn)動(dòng)估計(jì)的所述第一、第二、第三塊大小中選擇最佳幀間模式;第二十四可執(zhí)行部分,用于在候選幀內(nèi)模式中確定最佳幀內(nèi)模式;以及第二十五可執(zhí)行部分,用于從所述最佳幀間模式和所述最佳幀內(nèi)模式中選擇具有最低成本函數(shù)的一個(gè)。23、根據(jù)權(quán)利要求14所述的計(jì)算機(jī)程序產(chǎn)品,其中所述第一編碼模式包括基于時(shí)間冗余的幀間編碼模式,并且所述第二編碼模式包括基于空間冗余的幀內(nèi)編碼模式。24、根據(jù)權(quán)利要求21所述的計(jì)算機(jī)程序產(chǎn)品,其中所述第一塊大小大于所述第二和第三塊大小,并且其中所述第二塊大小包括水平分區(qū),并且其中所述第三塊大小包括垂直分區(qū)。25、一種用于執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測的設(shè)備,該設(shè)備包括運(yùn)動(dòng)估計(jì)器,其被配置用于從視頻幀的至少一個(gè)宏塊提取至少一個(gè)運(yùn)動(dòng)向量,所述至少一個(gè)宏塊包括具有多個(gè)塊大小的第一多個(gè)幀間才莫式;運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備,其被配置用于通過分析參考幀,基于所述至少一個(gè)運(yùn)動(dòng)向量來生成針對(duì)所述宏塊的至少一個(gè)預(yù)測;以及處理元件,其與所述運(yùn)動(dòng)估計(jì)器和所述運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備通信,所述處理元件被配置用于將失真值與第一預(yù)定閾值進(jìn)行比較;以及所述處理元件進(jìn)一步被配置用于基于所述失真值與所述第一預(yù)定閾值的所述比較,在第一編碼模式和第二編碼模式中選擇第一編碼模式,而不對(duì)所述第二編碼模式進(jìn)行評(píng)估。26、根據(jù)權(quán)利要求25所述的設(shè)備,其中所述處理元件進(jìn)一步被配置用于當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的第一塊大小時(shí),基于所述提取的運(yùn)動(dòng)向量來估計(jì)所述至少一個(gè)宏塊的運(yùn)動(dòng);以及所述處理元件進(jìn)一步被配置用于當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),計(jì)算多個(gè)失真值,所述多個(gè)失真值中的每個(gè)對(duì)應(yīng)于所述至少一個(gè)宏塊的相應(yīng)區(qū)域。27、根據(jù)權(quán)利要求26所述的設(shè)備,其中所述處理元件進(jìn)一步被配置用于對(duì)所述多個(gè)區(qū)域的所述多個(gè)失真值求和以產(chǎn)生總和;以及所述處理元件進(jìn)一步被配置用于將所述總和與第二預(yù)定閾值進(jìn)行比較,并且當(dāng)所述總和超過所述第二預(yù)定閾值時(shí),所述處理元件進(jìn)一步被配置用于選擇所述第二編碼模式,而不對(duì)所述第一編碼模式進(jìn)行評(píng)估。28、根據(jù)權(quán)利要求26所述的設(shè)備,其中所述處理元件進(jìn)一步被配置用于生成包括多個(gè)位的二進(jìn)制失真圖,其中每個(gè)位的值對(duì)應(yīng)于與第三預(yù)定閾值的比較,并且其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),每個(gè)位對(duì)應(yīng)于所述至少一個(gè)宏塊的相應(yīng)區(qū)i或。29、根據(jù)權(quán)利要求26所述的設(shè)備,其中所述處理元件進(jìn)一步被配置用于確定第一失真值和第二失真值的總和是否超過第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的第二塊大小時(shí),所述第一失真值和所述第二失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第一分區(qū);所述處理元件進(jìn)一步被配置用于當(dāng)所述第一失真值和所述第二失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第一分區(qū)的運(yùn)動(dòng);以及所述處理元件進(jìn)一步被配置用于當(dāng)所述第一失真值和所述第二失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第一分區(qū)的運(yùn)動(dòng)向量。30、根據(jù)權(quán)利要求29所述的設(shè)備,其中所述處理元件進(jìn)一步被配置用于確定第三失真值和第四失真值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第二塊大小時(shí),所述第三失真值和所述第四失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第二分區(qū);所述處理元件進(jìn)一步被配置用于當(dāng)所述第三失真值和所述第四失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第二分區(qū)的運(yùn)動(dòng);以及所述處理元件進(jìn)一步被配置用于當(dāng)所述第三失真值和所述第四失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第二分區(qū)的運(yùn)動(dòng)向量。31、根據(jù)權(quán)利要求29所述的設(shè)備,其中所述處理元件進(jìn)一步被配置用于確定第五失真值和第六SAD值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的第三塊大小時(shí),所述第五失真值和第六失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第三分區(qū);所述處理元件進(jìn)一步被配置用于當(dāng)所述第四失真值和所述第五失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第三分區(qū)的運(yùn)動(dòng);以及所述處理元件進(jìn)一步被配置用于當(dāng)所述第五失真值和所述第六失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第三分區(qū)的運(yùn)動(dòng)向量。32、根據(jù)權(quán)利要求31所述的設(shè)備,其中所述處理元件進(jìn)一步被配置用于確定第六失真值和第七失真值的總和是否超過所述第四預(yù)定閾值,其中,當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第三塊大小時(shí),所述第六失真值和第七失真值對(duì)應(yīng)于所述至少一個(gè)宏塊的第四分區(qū);所述處理元件進(jìn)一步被配置用于當(dāng)所述第六失真值和所述第七失真值的所述總和超過所述第四預(yù)定閾值時(shí),估計(jì)對(duì)應(yīng)于所述第四分區(qū)的運(yùn)動(dòng);以及所述處理元件進(jìn)一步被配置用于當(dāng)所述第六失真值和所述第七失真值的所述總和小于所述第四預(yù)定閾值時(shí),當(dāng)所述至少一個(gè)宏塊包括所述多個(gè)塊大小中的所述第一塊大小時(shí),使用從所述至少一個(gè)宏塊提取的所述至少一個(gè)運(yùn)動(dòng)向量作為對(duì)應(yīng)于所述第四分區(qū)的運(yùn)動(dòng)向量。33、根據(jù)權(quán)利要求32所述的設(shè)備,其中所述處理元件進(jìn)一步被配置用于在執(zhí)行運(yùn)動(dòng)估計(jì)的所述第一、第二、第三塊大小中確定最佳幀間模式;所述處理元件進(jìn)一步被配置用于在候選幀內(nèi)模式中確定最佳幀內(nèi)模式;以及所述處理元件進(jìn)一步被配置用于從所述最佳幀間模式和所述最佳幀內(nèi)模式中選擇具有最低成本函數(shù)的一個(gè)。34、根據(jù)權(quán)利要求25所述的設(shè)備,其中所述第一編碼模式包括基于時(shí)間冗余的幀間編碼模式,并且所述第二編碼模式包括基于空間冗余的幀內(nèi)編碼模式。35、根據(jù)權(quán)利要求25所述的設(shè)備,其中所述設(shè)備實(shí)現(xiàn)為編碼器。36、一種移動(dòng)終端,包括被配置用于執(zhí)行一個(gè)或多個(gè)視頻序列的視頻模塊,其中所述視頻模塊包括根據(jù)權(quán)利要求25所述的設(shè)備。全文摘要一種用于降低執(zhí)行運(yùn)動(dòng)補(bǔ)償預(yù)測中的運(yùn)動(dòng)估計(jì)操作數(shù)目的設(shè)備,包括運(yùn)動(dòng)估計(jì)器、運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備和處理元件。運(yùn)動(dòng)估計(jì)器被配置用于從視頻幀的宏塊提取運(yùn)動(dòng)向量。該宏塊包括幀間模式,該幀間模式是塊大小。運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備被配置用于通過分析參考幀中的相應(yīng)宏塊,基于運(yùn)動(dòng)向量來生成預(yù)測宏塊。處理元件與運(yùn)動(dòng)估計(jì)器和運(yùn)動(dòng)補(bǔ)償預(yù)測設(shè)備通信。處理元件還將失真值與第一預(yù)定閾值進(jìn)行比較,并且基于失真值與第一預(yù)定閾值的比較,在第一編碼模式和第二編碼模式中選擇第一編碼模式,而不對(duì)第二編碼模式進(jìn)行評(píng)估。文檔編號(hào)H04N7/32GK101480056SQ200780024486公開日2009年7月8日申請日期2007年2月27日優(yōu)先權(quán)日2006年6月30日發(fā)明者J·萊內(nèi)瑪,K·烏格爾申請人:諾基亞公司