專(zhuān)利名稱(chēng):用于多媒體編碼的模式選擇技術(shù)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及多媒體編碼,且更明確地說(shuō),涉及對(duì)用于多媒體序列的幀內(nèi)的宏區(qū)塊的 編碼模式的選擇。
背景技術(shù):
多媒體能力可并入廣泛范圍的裝置中,所述裝置包含數(shù)字電視、數(shù)字直播系統(tǒng)、無(wú) 線通信裝置、個(gè)人數(shù)字助理(PDA)、膝上型計(jì)算機(jī)、臺(tái)式計(jì)算機(jī)、數(shù)碼攝像機(jī)、數(shù)字記 錄裝置、蜂窩式或衛(wèi)星無(wú)線電話等。與常規(guī)的模擬系統(tǒng)相比,數(shù)字多媒體編碼可提供在 建立、修改、傳輸、存儲(chǔ)、記錄和播放全運(yùn)動(dòng)多媒體序列方面的顯著改進(jìn)。舉例來(lái)說(shuō), 廣播網(wǎng)絡(luò)可使用多媒體編碼以促進(jìn)向無(wú)線訂戶裝置廣播多媒體序列的一個(gè)或一個(gè)以上信 道。已建立眾多不同的多媒體編碼標(biāo)準(zhǔn)來(lái)用于編碼數(shù)字多媒體序列。舉例來(lái)說(shuō),運(yùn)動(dòng)圖 片專(zhuān)家組(MPEG)已開(kāi)發(fā)包括MPEG-1、 MPEG-2和MPEG-4的眾多標(biāo)準(zhǔn)。其它標(biāo)準(zhǔn)包 括國(guó)際電信聯(lián)盟(ITU) H.263標(biāo)準(zhǔn)、由加利福尼亞州的寇坡蒂諾(Cupertino California) 的蘋(píng)果電腦公司(Apple Computer)開(kāi)發(fā)的QuickTimeTM技術(shù)、由華盛頓州的里德蒙德 (Redmond, Washington)的微軟公司(Microsoft Corporation)開(kāi)發(fā)的Video for WindowsTM、 由英特爾公司(Intel Corporation)開(kāi)發(fā)的Indeo 、來(lái)自華盛頓州西雅圖(Seattle, Washington)的里奧耐特沃克斯公司(RealNetworks, Inc.)的RealVideoTM和由瑟坡麥克 公司(SuperMac,Inc.)開(kāi)發(fā)的Cinepak 。此外,新標(biāo)準(zhǔn)不斷出現(xiàn)且演進(jìn),包括新出現(xiàn)的 ITU H.264標(biāo)準(zhǔn)和眾多專(zhuān)用標(biāo)準(zhǔn)。ITUH.264標(biāo)準(zhǔn)也在MPEG-4的標(biāo)題為"高級(jí)音頻編碼 (Advanced Audio Coding)"的第IO部分中得以陳述。許多多媒體編碼標(biāo)準(zhǔn)支持?jǐn)?shù)據(jù)壓縮,所述數(shù)據(jù)壓縮減少需要傳輸以用于多媒體幀的 有效傳輸?shù)臄?shù)據(jù)的總量。舉例來(lái)說(shuō),MPEG標(biāo)準(zhǔn)和ITU H.263和ITU H.264標(biāo)準(zhǔn)支持利 用連續(xù)視頻幀之間的類(lèi)似性(被稱(chēng)為時(shí)間或幀間相關(guān)性)的編碼技術(shù)以提供幀間壓縮。 此類(lèi)幀間壓縮通常經(jīng)由運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償編碼技術(shù)而實(shí)現(xiàn)。此外, 一些多媒體編碼技 術(shù)可利用幀內(nèi)的類(lèi)似性(被稱(chēng)為空間或幀內(nèi)相關(guān)性)來(lái)壓縮視頻幀。
大多數(shù)幀間壓縮技術(shù)利用基于區(qū)塊的編碼,所述編碼將多媒體幀劃分為數(shù)據(jù)區(qū)塊, 且使所述區(qū)塊與多媒體序列中的其它幀的區(qū)塊相關(guān)。通過(guò)編碼當(dāng)前區(qū)塊與另一幀的預(yù)測(cè) 區(qū)塊之間的差值可實(shí)現(xiàn)數(shù)據(jù)壓縮。編碼器通常將待傳輸?shù)亩嗝襟w幀劃分成數(shù)據(jù)區(qū)塊,所 述區(qū)塊被稱(chēng)為"宏區(qū)塊"。也可將所述宏區(qū)塊進(jìn)一步再分為分區(qū)或子分區(qū)。ITUH.264標(biāo) 準(zhǔn)支持16X16的宏區(qū)塊、16X8的分區(qū)、8X16的分區(qū)、8X8的分區(qū)、8X4的子分區(qū)、 4X8的子分區(qū)和4X4的子分區(qū)。其它標(biāo)準(zhǔn)可支持不同大小的區(qū)塊、宏區(qū)塊、分區(qū)和/或 子分區(qū)。
對(duì)于多媒體幀中的每一區(qū)塊(宏區(qū)塊、分區(qū)或子分區(qū))來(lái)說(shuō),編碼器搜索一個(gè)或一 個(gè)以上緊接在前面視頻幀(或后續(xù)幀)的具有類(lèi)似大小的區(qū)塊以識(shí)別類(lèi)似區(qū)塊,所述具 有類(lèi)似大小的區(qū)塊被稱(chēng)為"預(yù)測(cè)區(qū)塊"。比較當(dāng)前視頻區(qū)塊與其它幀的視頻區(qū)塊的過(guò)程通 常被稱(chēng)為運(yùn)動(dòng)估計(jì)。 一旦將"預(yù)測(cè)區(qū)塊"識(shí)別以用于待編碼的給定區(qū)塊,則編碼器可編 碼當(dāng)前區(qū)塊與預(yù)測(cè)區(qū)塊之間的差值。編碼當(dāng)前區(qū)塊與預(yù)測(cè)區(qū)塊之間的差值的這個(gè)過(guò)程包 括被稱(chēng)為運(yùn)動(dòng)補(bǔ)償?shù)倪^(guò)程。運(yùn)動(dòng)補(bǔ)償包含建立指示待編碼的當(dāng)前區(qū)塊與預(yù)測(cè)區(qū)塊之間的 差值的差值區(qū)塊。具體來(lái)說(shuō),運(yùn)動(dòng)補(bǔ)償常指使用運(yùn)動(dòng)向量獲取預(yù)測(cè)區(qū)塊,并隨后從輸入 區(qū)塊減去預(yù)測(cè)區(qū)塊以產(chǎn)生差值區(qū)塊的動(dòng)作。
在運(yùn)動(dòng)補(bǔ)償已建立差值區(qū)塊之后,通常執(zhí)行一系列額外的編碼步驟以進(jìn)一步編碼差 值區(qū)塊。這些額外的步驟可包括離散余弦變換、標(biāo)量量化、光柵到Z形重排(raster-to-zigzag reordering)、運(yùn)行長(zhǎng)度編碼、霍夫曼(Huffman)編碼等。經(jīng)編碼的差值區(qū)塊可與指示前 一幀(或后續(xù)幀)的哪一區(qū)塊用于編碼的運(yùn)動(dòng)向量一起傳輸。解碼器接收所述運(yùn)動(dòng)向量 和經(jīng)編碼的差值區(qū)塊,且解碼所接收的信息以重建多媒體序列。
為了改進(jìn)編碼過(guò)程,通常在運(yùn)動(dòng)估計(jì)過(guò)程期間作出模式?jīng)Q策。這些模式?jīng)Q策可為速 率控制算法的部分,且可用以確定應(yīng)如何劃分或再劃分宏區(qū)塊以確保實(shí)現(xiàn)所要的速率失 真平衡。在本發(fā)明中,短語(yǔ)"模式選擇"指對(duì)用于宏區(qū)塊等的一個(gè)或一個(gè)以上可能的編 碼模式的選擇,例如,是否應(yīng)將宏區(qū)塊編碼為一個(gè)16X16的區(qū)塊,或是否應(yīng)為宏區(qū)塊界 定兩個(gè)或兩個(gè)上的分區(qū)或子分區(qū)。遺憾的是,對(duì)于許多裝置或多媒體編碼情形來(lái)說(shuō),全面搜索用于視頻序列的每一宏區(qū)塊的每一可能編碼模式在計(jì)算上可為禁止的。
發(fā)明內(nèi)容
本發(fā)明描述用于在編碼多媒體序列的多媒體幀的宏區(qū)塊(或多媒體數(shù)據(jù)的其它大小 的區(qū)塊)期間改進(jìn)模式選擇決策的技術(shù)。在運(yùn)動(dòng)估計(jì)期間,可確定用于宏區(qū)塊的編碼模 式,以使得可實(shí)現(xiàn)所要的編碼速率和可接受的失真水平(即,可接受的速率失真)。本發(fā) 明描述可對(duì)多媒體序列執(zhí)行以便可能消除與極不可能用于宏區(qū)塊的模式相關(guān)聯(lián)的模式搜 索(原本將執(zhí)行)的預(yù)處理程序。
所述技術(shù)可利用用于每一宏區(qū)塊的細(xì)節(jié)量度,且此細(xì)節(jié)量度可關(guān)于給定宏區(qū)塊需要 以恒定視覺(jué)質(zhì)量進(jìn)行編碼的位的數(shù)目。所述技術(shù)可界定兩組或兩組以上的模式,且可選 擇這些組中的一者。因此,當(dāng)未選定組中的模式極不可能用于給定宏區(qū)塊時(shí),可不考慮 所述組中的模式。在一些情況下,所述技術(shù)利用包括細(xì)節(jié)量度的概率方程。在本發(fā)明中, 界定了兩組模式(幀間平面和幀間細(xì)節(jié))的實(shí)例,但本發(fā)明的技術(shù)在此方面不一定受到 限制。
所描述的技術(shù)也可確定與相鄰區(qū)塊相關(guān)聯(lián)的模式信息,且使用此模塊信息以改進(jìn)用 于當(dāng)前宏區(qū)塊的模式選擇。此外,在每一模式選擇之后可更新概率方程中的統(tǒng)計(jì),且概 率方程的更新可用于后續(xù)宏區(qū)塊的模式選擇決策。通過(guò)在多媒體序列的幀中的宏區(qū)塊的 模式選擇過(guò)程中更新概率方程的統(tǒng)計(jì),所述技術(shù)可適于多媒體序列的內(nèi)容,以改進(jìn)多媒 體序列上的模式選擇。
在一些實(shí)施例中,本發(fā)明提供一種用于處理多媒體數(shù)據(jù)的方法,所述方法包含基 于與多媒體幀的區(qū)塊相關(guān)聯(lián)的細(xì)節(jié)量度和與區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信息而從至少 兩組可能的多媒體編碼模式中選擇一組多媒體編碼模式以用于所述區(qū)塊。
在一些實(shí)施例中,本發(fā)明提供一種用于處理多媒體數(shù)據(jù)的設(shè)備,所述設(shè)備包含編碼 器,所述編碼器基于與多媒體幀的區(qū)塊相關(guān)聯(lián)的細(xì)節(jié)量度和與區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的 模式信息而從至少兩組可能的多媒體編碼模式中選擇一組多媒體編碼模式以用于所述區(qū) 塊。
在一些實(shí)施例中,本發(fā)明提供一種用于處理多媒體數(shù)據(jù)的處理器,所述處理器經(jīng)配 置以基于與多媒體幀的區(qū)塊相關(guān)聯(lián)的細(xì)節(jié)量度和與所述區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信 息而從至少兩組可能的多媒體編碼模式中選擇一組多媒體編碼模式以用于所述區(qū)塊。
在一些實(shí)施例中,本發(fā)明提供一種用于處理多媒體數(shù)據(jù)的設(shè)備,所述設(shè)備包含用于 基于與多媒體幀的區(qū)塊相關(guān)聯(lián)的細(xì)節(jié)量度和與所述區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信息而從至少兩組可能的多媒體編碼模式中選擇一組多媒體編碼模式以用于所述區(qū)塊的裝置。 可以硬件、軟件、固件或其任一組合實(shí)施本文所描述的技術(shù)。如果以軟件實(shí)施,則
可在數(shù)字信號(hào)處理器(DSP)或其它類(lèi)型的處理器中執(zhí)行所述軟件。執(zhí)行技術(shù)的軟件最
初可存儲(chǔ)在例如計(jì)算機(jī)可讀媒體的機(jī)器可讀媒體中,且載入并在處理器、設(shè)備或其它機(jī)
器中執(zhí)行以允許如本文所描述的模式選擇。
因此,本發(fā)明也涵蓋一種包含用于處理多媒體數(shù)據(jù)的指令的機(jī)器可讀媒體,所述指
令一旦執(zhí)行,就促使機(jī)器基于與多媒體幀的區(qū)塊相關(guān)聯(lián)的細(xì)節(jié)量度和與所述區(qū)塊的相鄰
區(qū)塊相關(guān)聯(lián)的模式信息而從至少兩組可能的多媒體編碼模式中選擇一組多媒體編碼模式
以用于所述區(qū)塊。
在以下附圖和描述中陳述各種實(shí)施例的額外細(xì)節(jié)。其它特征、目標(biāo)和優(yōu)點(diǎn)將從描述 和圖式且從權(quán)利要求書(shū)變得顯而易見(jiàn)。
圖1是說(shuō)明根據(jù)本發(fā)明的一些實(shí)施例的示范性多媒體編碼裝置的方框圖。 圖2是說(shuō)明與本發(fā)明的一些實(shí)施例相一致的模式選擇過(guò)程的樹(shù)形圖。 圖3是說(shuō)明根據(jù)本發(fā)明的一些實(shí)施例的技術(shù)的流程圖。
圖4是包括與根據(jù)本發(fā)明的一些實(shí)施例的不同的兩組模式相關(guān)聯(lián)的概率的直方圖的 圖表。
圖5是說(shuō)明根據(jù)本發(fā)明的一些實(shí)施例的正編碼的當(dāng)前宏區(qū)塊的可能的空間和/或時(shí)間 相鄰區(qū)塊的概念圖。
圖6是說(shuō)明根據(jù)本發(fā)明的一些實(shí)施例的用于編碼的示范性模塊的方框圖。
具體實(shí)施例方式
本發(fā)明描述一種用于在編碼多媒體序列的多媒體幀的宏區(qū)塊等期間改進(jìn)模式選擇決 策的技術(shù)。在本發(fā)明中,短語(yǔ)"模式選擇"是指對(duì)用于多媒體數(shù)據(jù)的宏區(qū)塊或其它大小 的區(qū)塊的一個(gè)或一個(gè)以上可能的編碼模式的選擇,例如,是否應(yīng)將宏區(qū)塊編碼為一個(gè)16 X16的區(qū)塊,或是否應(yīng)為宏區(qū)塊界定兩個(gè)或兩個(gè)以上的分區(qū)或子分區(qū)。所述模式?jīng)Q策通 常在運(yùn)動(dòng)估計(jì)過(guò)程期間作出,且可作為速率控制算法的部分,以便確定應(yīng)如何劃分或再 劃分宏區(qū)塊以確保在整個(gè)多媒體幀序列的幀上實(shí)現(xiàn)所要的速率失真平衡。經(jīng)選擇用于宏 區(qū)塊的模式通常按照分區(qū)和/或子分區(qū)來(lái)界定宏區(qū)塊的粒度,即,分區(qū)、子分區(qū)或分區(qū)和子分區(qū)。然而,本發(fā)明的模式選擇技術(shù)并不一定限于任一特定大小的宏區(qū)塊、區(qū)塊、分 區(qū)或子分區(qū)。
根據(jù)本發(fā)明,在運(yùn)動(dòng)估計(jì)期間,可對(duì)多媒體序列執(zhí)行預(yù)處理程序,以便可能消除與 極不可能用于宏區(qū)塊的模式相關(guān)聯(lián)的模式搜索。所述技術(shù)可利用用于每一宏區(qū)塊的細(xì)節(jié) 量度,且此細(xì)節(jié)量度可關(guān)于給定宏區(qū)塊需要以恒定視覺(jué)質(zhì)量進(jìn)行編碼的位的數(shù)目。所述 技術(shù)也可與相鄰區(qū)塊相關(guān)聯(lián)的模式信息,且使用此模式信息來(lái)改進(jìn)當(dāng)前宏區(qū)塊的模式選 擇。
所述技術(shù)可界定至少兩組模式,且可選擇這些組中的一者。在本發(fā)明中,界定了兩 組模式(幀間平面和幀間細(xì)節(jié))的實(shí)例,但本發(fā)明的技術(shù)在此方面不一定受到限制。在 任一情況下,當(dāng)未選定組的模式極不可能用于給定宏區(qū)塊時(shí),可不考慮所述組中的模式。 所述技術(shù)可使用包括細(xì)節(jié)量度和與相鄰區(qū)塊相關(guān)聯(lián)的模式選擇信息的概率方程。
此外,在每一模式選擇之后可更新概率方程中的統(tǒng)計(jì),且概率方程的更新可用于后 續(xù)宏區(qū)塊的模式選擇決策。以此方式,所述技術(shù)可適于給定多媒體序列的內(nèi)容,以改進(jìn) 多媒體序列上的模式選擇。
圖1為說(shuō)明示范性多媒體編碼裝置10的方框圖。多媒體編碼裝置10可形成數(shù)字視 頻裝置的能夠編碼并傳輸視頻數(shù)據(jù)的部分。舉例來(lái)說(shuō),多媒體編碼裝置io可包含向無(wú)線 訂戶裝置廣播多媒體序列的一個(gè)或一個(gè)以上信道的廣播裝置。在另一實(shí)例中,多媒體編 碼裝置IO可包含能夠?qū)⒍嗝襟w序列傳送到其它裝置的無(wú)線手持式單元(例如)以促進(jìn)視 頻電話(VT)或其它多媒體應(yīng)用。
如圖1中所展示,多媒體編碼裝置IO包括使用本文所述技術(shù)中的一者或一者以上來(lái) 編碼多媒體序列的多媒體編碼器12。此外,多媒體編碼裝置10可包括許多其它組件, 例如用以捕獲多媒體序列的視頻捕獲裝置14、用以存儲(chǔ)或可能保存多媒體序列的存儲(chǔ)器 16和用以將經(jīng)編碼的多媒體序列傳輸?shù)狡渌b置的傳輸器18。然而,這些額外組件中的 一些或所有在裝置IO中是可選的??山?jīng)由通信總線15等將多媒體編碼器12、視頻捕獲 裝置14、存儲(chǔ)器16和傳輸器18以通信方式耦合。
可由視頻捕獲裝置14捕獲,從存儲(chǔ)器16檢索或以另一方式獲得多媒體序列。在任 一情況下,可使用多媒體編碼裝置10的多媒體編輯器12以編碼多媒體序列,且可實(shí)施 本發(fā)明的技術(shù)中的一者或一者以上以改進(jìn)此編碼過(guò)程??稍诶鐢?shù)字廣播系統(tǒng)、數(shù)字電 視、無(wú)線通信裝置、個(gè)人數(shù)字助理(PDA)、膝上型計(jì)算機(jī)、臺(tái)式計(jì)算機(jī)、數(shù)碼攝像機(jī)、 數(shù)字記錄裝置、蜂窩式或衛(wèi)星無(wú)線電話或包括多媒體編碼能力的任一裝置的裝置中實(shí)施多媒體編碼裝置10。多媒體編碼裝置10可遵照例如MPEG-4、 ITU-T H.263、 ITU-T H.264或?yàn)槎嗝襟w序列的幀中的數(shù)據(jù)的宏區(qū)塊提供若干可能的編碼模式的另一編碼標(biāo)準(zhǔn)。多媒體編碼器12可包含所謂的"芯片組",且可經(jīng)由硬件、軟件、固件的任一組合 和/或一個(gè)或一個(gè)以上微處理器、數(shù)字信號(hào)處理器(DSP)、專(zhuān)用集成電路(ASIC)、場(chǎng)可 編程門(mén)陣列(FPGA)或其各種組合而實(shí)施。多媒體編碼器12可包含用于編碼并解碼數(shù) 字多媒體序列的編碼器/解碼器(CODEC)。此外,在一些情況下,多媒體編碼器12的功 能性可完全或部分地為軟件實(shí)施。因此,本發(fā)明也涵蓋機(jī)器可讀媒體,其包含一旦執(zhí)行 就促使機(jī)器(例如處理器或DSP的設(shè)備)執(zhí)行本文所描述的技術(shù)的指令。多媒體編碼器12包括模式選擇單元20,所述模式選擇單元20在幀間編碼期間執(zhí)行 作為運(yùn)動(dòng)估計(jì)過(guò)程的部分的模式選擇技術(shù)。多媒體編碼器12包括可作為整合或獨(dú)立單元 的運(yùn)動(dòng)估計(jì)器/空間估計(jì)器22。多媒體編碼器12也包括可作為整合或獨(dú)立單元的運(yùn)動(dòng)補(bǔ) 償器/幀內(nèi)預(yù)測(cè)單元24。搜索空間25表示存儲(chǔ)用于基于預(yù)測(cè)的編碼的數(shù)據(jù)(例如,通常 為多媒體序列的前一幀或前一幀的一部分)的存儲(chǔ)器單元。最后,多媒體編碼器12包括 殘余編碼器26,所述殘余編碼器對(duì)在運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償過(guò)程期間產(chǎn)生的殘余區(qū)塊執(zhí)行 一個(gè)或一個(gè)以上殘余編碼過(guò)程。在編碼過(guò)程期間,運(yùn)動(dòng)估計(jì)器/空間估計(jì)器22比較數(shù)據(jù)的當(dāng)前多媒體區(qū)塊與搜索空 間25中的各種區(qū)塊,以便識(shí)別預(yù)測(cè)區(qū)塊。運(yùn)動(dòng)估計(jì)器/空間估計(jì)器22通常表示為幀間編 碼執(zhí)行運(yùn)動(dòng)估計(jì)的運(yùn)動(dòng)估計(jì)器、為幀內(nèi)編碼執(zhí)行空間估計(jì)的空間估計(jì)器,或可執(zhí)行運(yùn)動(dòng) 估計(jì)和空間估計(jì)的組合單元。 一般來(lái)說(shuō),預(yù)測(cè)區(qū)塊是為了幀間相關(guān)性(或幀內(nèi)相關(guān)性) 的目的而獲得的提供與數(shù)據(jù)的當(dāng)前多媒體區(qū)塊的充分匹配的候選區(qū)塊,所述候選區(qū)塊可 為搜索空間中最緊密匹配的候選區(qū)塊。預(yù)測(cè)區(qū)塊是搜索空間25中的許多候選區(qū)塊中的在 運(yùn)動(dòng)估計(jì)期間進(jìn)行評(píng)估的一者。對(duì)于幀間編碼來(lái)說(shuō),通常相對(duì)于宏區(qū)塊的每一分區(qū)和子 分區(qū)來(lái)執(zhí)行運(yùn)動(dòng)估計(jì)過(guò)程。本發(fā)明的技術(shù)可有助于識(shí)別用于編碼給定宏區(qū)塊的模式(其 界定分區(qū)和子分區(qū)的數(shù)目和形狀)。為了執(zhí)行待編碼的數(shù)據(jù)的當(dāng)前多媒體區(qū)塊與搜索空間中的候選區(qū)塊之間的比較,運(yùn) 動(dòng)估計(jì)器/空間估計(jì)器22可執(zhí)行絕對(duì)差值和(SAD)技術(shù)、平方差值和(SSD)技術(shù)或有 關(guān)與區(qū)塊相關(guān)聯(lián)的像素亮度值的其它比較技術(shù)。以此方式,運(yùn)動(dòng)估計(jì)器/空間估計(jì)器22 可確定不同候選區(qū)塊的差值。較低差值通常指示候選區(qū)塊為正編碼區(qū)塊的較佳匹配,且 因此為用于運(yùn)動(dòng)估計(jì)編碼的優(yōu)于產(chǎn)生較高差值的其它候選區(qū)塊的候選區(qū)塊。 一旦獲得適 當(dāng)匹配,就可識(shí)別數(shù)據(jù)的預(yù)測(cè)區(qū)塊。一旦針對(duì)待編碼的多媒體區(qū)塊通過(guò)運(yùn)動(dòng)估計(jì)器/空間估計(jì)器22識(shí)別了區(qū)塊,運(yùn)動(dòng)補(bǔ) 償器/幀內(nèi)預(yù)測(cè)單元24就建立殘余區(qū)塊。所述殘余區(qū)塊是指示待編碼的當(dāng)前多媒體區(qū)塊 與通過(guò)運(yùn)動(dòng)估計(jì)或空間估計(jì)而識(shí)別的預(yù)測(cè)區(qū)塊之間的差值的數(shù)據(jù)區(qū)塊。運(yùn)動(dòng)補(bǔ)償/幀內(nèi)預(yù) 測(cè)單元24通常表示為幀間編碼執(zhí)行運(yùn)動(dòng)補(bǔ)償?shù)倪\(yùn)動(dòng)補(bǔ)償器、為幀內(nèi)編碼執(zhí)行空間補(bǔ)償?shù)?幀內(nèi)預(yù)測(cè)單元或可依據(jù)使用幀間編碼或幀內(nèi)編碼而執(zhí)行運(yùn)動(dòng)補(bǔ)償或幀內(nèi)預(yù)測(cè)的組合單元。運(yùn)動(dòng)補(bǔ)償/幀內(nèi)預(yù)測(cè)單元24可使用運(yùn)動(dòng)向量從搜索空間25獲取預(yù)測(cè)區(qū)塊,且隨后從 輸入?yún)^(qū)塊減去預(yù)測(cè)區(qū)塊以產(chǎn)生殘余區(qū)塊。所述殘余區(qū)塊通常包括由差值區(qū)塊表示的大體 上比原始視頻區(qū)塊少的數(shù)據(jù),從而導(dǎo)致數(shù)據(jù)壓縮。在運(yùn)動(dòng)補(bǔ)償/幀內(nèi)預(yù)測(cè)單元24己建立殘余區(qū)塊之后,殘余編碼器26可執(zhí)行一個(gè)或一 個(gè)以上殘余編碼步驟,例如離散余弦變換(DCT)、 Z形掃描、運(yùn)行長(zhǎng)度編碼、可變長(zhǎng)度 ("Huffman")編碼或給定編碼標(biāo)準(zhǔn)中所使用的任一其它過(guò)程。也可執(zhí)行眾多其它殘余編 碼步驟??上鄬?duì)于由給定宏區(qū)塊的選定模式而界定的每一區(qū)塊(即,每一宏區(qū)塊、分區(qū) 和/或子分區(qū))來(lái)執(zhí)行運(yùn)動(dòng)估計(jì)、運(yùn)動(dòng)補(bǔ)償和殘余編碼過(guò)程。根據(jù)本發(fā)明,在運(yùn)動(dòng)估計(jì)期間,模式選擇單元20對(duì)多媒體序列的幀的宏區(qū)塊執(zhí)行預(yù) 處理程序,以便可能消除與極不可能用于各自宏區(qū)塊的模式相關(guān)聯(lián)的模式搜索。具體來(lái) 說(shuō),模式選擇單元20界定用于每一宏區(qū)塊的細(xì)節(jié)量度,且所述細(xì)節(jié)量度可關(guān)于給定宏區(qū) 塊需要以恒定視覺(jué)質(zhì)量進(jìn)行編碼的位的數(shù)目。模式選擇單元20也在執(zhí)行所述模式選擇的 過(guò)程中考慮相鄰區(qū)塊的模式。模式選擇單元20可界定兩組或兩組以上模式,且可選擇這 些組中的一者。舉例來(lái)說(shuō),模式選擇單元20可界定一組幀間平面模式和一組幀間細(xì)節(jié)模 式。幀間平面模式包括宏區(qū)塊模式,其中所述宏區(qū)塊包括一個(gè)16X16的分區(qū)(幀間16 X16模式)、兩個(gè)16X8的分區(qū)(幀間16X8模式)或兩個(gè)8X16的分區(qū)(幀間8X16 模式)。幀間平面模式也可包括"跳過(guò)"模式,其中對(duì)于那個(gè)宏區(qū)塊,可跳過(guò)編碼。另一 方面,幀間細(xì)節(jié)模式包括宏區(qū)塊模式,其中所述宏區(qū)塊包括4個(gè)8X8的分區(qū)(幀間8X8 模式)、 一個(gè)或一個(gè)以上8X4的子分區(qū)(幀間8X4模式)、 一個(gè)或一個(gè)以上4X8的子分 區(qū)(幀間4X8模式)或一個(gè)或一個(gè)以上4X4的子分區(qū)(幀間4X4模式)。歸因于分區(qū)和子分區(qū)的許多組合和子組合,幀間細(xì)節(jié)中的可能模式的實(shí)際數(shù)目相對(duì) 較大。然而,實(shí)驗(yàn)研究已表明大多數(shù)多媒體序列中超過(guò)95%的宏區(qū)塊用16X16的分區(qū)、 16X8的分區(qū)、8X16的分區(qū)或8X8的分區(qū)進(jìn)行編碼。因此,通常少于5%的宏區(qū)塊以子 分區(qū)等級(jí)進(jìn)行編碼。為了搜索每一可能的模式(分區(qū)和子分區(qū)的每一可能組合),也要花 費(fèi)90%以上的時(shí)間搜索包括較小子分區(qū)的模式,盡管實(shí)際上僅少于5%的宏區(qū)塊可能使用所述模式。本發(fā)明使用統(tǒng)計(jì)概率技術(shù)來(lái)確定在何時(shí)將極不可能使用子分區(qū)。在所述情 況下,可避免搜索包括子分區(qū)的那些模式。
因此,模式選擇單元20可使用概率方程。概率方程可包括作為變量的呈時(shí)間帶寬比 量度的形式的細(xì)節(jié)量度和與相鄰區(qū)塊相關(guān)聯(lián)的模式信息。細(xì)節(jié)量度可指示宏區(qū)塊中的時(shí) 間和空間細(xì)節(jié)。與相鄰區(qū)塊相關(guān)聯(lián)的模式信息可基于與當(dāng)前區(qū)塊的時(shí)間和/或空間接近度 而加權(quán)。舉例來(lái)說(shuō),對(duì)于相鄰區(qū)塊的模式信息來(lái)說(shuō),歸因于不同區(qū)塊子組之間的時(shí)間差, 模式選擇單元20可與加權(quán)不同幀內(nèi)的第二區(qū)塊子組的模式信息不同地加權(quán)幀中的第一 區(qū)塊子組的模式信息。在任一情況下,可分析細(xì)節(jié)量度和與相鄰區(qū)塊相關(guān)聯(lián)的模式信息 以改進(jìn)用于當(dāng)前宏區(qū)塊的模式選擇。
在每一宏區(qū)塊的每一模式選擇之后可更新概率方程的統(tǒng)計(jì),且概率方程的更新可用 于后續(xù)宏區(qū)塊的模式選擇決策。以此方式,模式選擇單元20可適于給定序列的內(nèi)容,以 便改進(jìn)全運(yùn)動(dòng)多媒體序列上的模式選擇。最后,模式選擇單元20從選定組的可能的多媒 體編碼模式中選擇用于編碼各自宏區(qū)塊的模式。在許多情況下,本文所描述的技術(shù)可有 助于避免在未選定組的多媒體編碼模式中與用于宏區(qū)塊的模式相關(guān)聯(lián)的運(yùn)動(dòng)搜索。
圖2為可通過(guò)模式選擇單元20實(shí)施的模式選擇過(guò)程的樹(shù)形圖。具體來(lái)說(shuō),模式?jīng)Q策 32可包含使用幀內(nèi)編碼34或幀間編碼36的決策。如果使用幀內(nèi)編碼34,則模式選擇單 元20確定是否將宏區(qū)塊編碼為16X16的區(qū)塊(33)或4X4的區(qū)塊組(35),且所述決 策可受宏區(qū)塊中的內(nèi)容的等級(jí)和所要的速率失真的等級(jí)影響。
如果使用幀間編碼36,則模式選擇單元20確定是否使用幀內(nèi)平面模式37或幀內(nèi)細(xì) 節(jié)模式38。而且,在選擇平面內(nèi)模式平面模式37時(shí),此可(例如)通過(guò)避免詳細(xì)化子 分區(qū)搜索而顯著地簡(jiǎn)化模式搜索。此模式選擇過(guò)程可形成速率控制算法的部分,所述速 率控制算法用于通過(guò)使編碼過(guò)程中的編碼速率與失真水平平衡而實(shí)現(xiàn)經(jīng)編碼序列的相對(duì) 恒定的多媒體質(zhì)量。
具體來(lái)說(shuō),本發(fā)明的模式選擇技術(shù)在與幀間編碼期間的運(yùn)動(dòng)估計(jì)過(guò)程相關(guān)聯(lián)的預(yù)處 理程序期間應(yīng)用。圖3為說(shuō)明可在此上下文中執(zhí)行的技術(shù)的流程圖。如所展示,模式選 擇單元20初始化與模式選擇過(guò)程相關(guān)聯(lián)的統(tǒng)計(jì)(42)。舉例來(lái)說(shuō),統(tǒng)計(jì)可包含通過(guò)存取 在裝置制造期間所處理的多媒體幀的極大樣本的平均模式相關(guān)統(tǒng)計(jì)而初始化的概率方 程。舉例來(lái)說(shuō),初始化方程可基于模擬測(cè)試序列而經(jīng)預(yù)編程,但也可進(jìn)行更新以反映先 前通過(guò)多媒體編碼裝置IO而執(zhí)行的編碼過(guò)程。
接著,模式選擇單元20基于概率選擇用于多媒體序列的幀的宏區(qū)塊的一組模式(43)。概率可表達(dá)為概率方程,且所述方程可包括指示宏區(qū)塊中的時(shí)間和空間細(xì)節(jié)的細(xì) 節(jié)量度和與宏區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信息。在一個(gè)特定說(shuō)明性實(shí)例中,將模式劃 分為用于幀間編碼的可能的兩組模式 一組幀間平面模式和一組幀間細(xì)節(jié)模式。在一些 情況下,當(dāng)選擇所述組幀間平面模式時(shí)(45),可忽略與幀間細(xì)節(jié)模式相關(guān)聯(lián)的其它模式。 在一些情況下,當(dāng)選擇所述組幀間細(xì)節(jié)模式時(shí)(46),可忽略與幀間平面模式相關(guān)聯(lián)的其 它模式。在下文所論述的一些情況(圖3中未圖示)下,需要徹底搜索,以搜索幀間細(xì) 節(jié)組與幀間平面組中的每一可能模式。換句話說(shuō),盡管圖3展示幀間平面模式和幀間細(xì) 節(jié)模式,但在一些情況下(例如,在難以在統(tǒng)計(jì)上消除幀間平面模式或幀間細(xì)節(jié)模式的 情況下)執(zhí)行所有模式的全面搜索。在此意義上,圖3簡(jiǎn)單地說(shuō)明選擇幀間細(xì)節(jié)模式或 幀間平面模式的情形,但在其它情形下可選擇并搜索所有模式。在任一情況下,模式選擇單元20接著選擇用于給定宏區(qū)塊的所要模式,以實(shí)現(xiàn)所要 等級(jí)的速率失真(48)。在此情況下,如果避免每一可能模式的徹底搜索以有助于在幀間 平面組或幀間細(xì)節(jié)組中的所述模式上進(jìn)行搜索,則可實(shí)現(xiàn)顯著的計(jì)算上的節(jié)省。 一旦為 所述給定宏區(qū)塊選定所述模式(48),則模式選擇單元20更新概率統(tǒng)計(jì)(49),此允許算 法適于不同內(nèi)容。模式選擇過(guò)程可針對(duì)下一宏區(qū)塊進(jìn)行重復(fù),且可連續(xù)用于多媒體序列 的每一幀的每一宏區(qū)塊。本發(fā)明的技術(shù)特別可用于根據(jù)ITU H.264 (也描述于MPEG-4的標(biāo)題為"高級(jí)音頻編 碼(advanced audio coding)"的第10部分中)的模式?jīng)Q策。在高級(jí)音頻編碼中,通常在 評(píng)估了運(yùn)動(dòng)估計(jì)的有效性之后執(zhí)行幀間模式?jīng)Q策。然而,因?yàn)楦呒?jí)音頻編碼在宏區(qū)塊內(nèi) 允許許多不同的區(qū)塊大小,且每一區(qū)塊分區(qū)對(duì)應(yīng)于單獨(dú)的運(yùn)動(dòng)估計(jì),所以總的計(jì)算復(fù)雜 度可變得很大。在此情況下,本發(fā)明的技術(shù)可忽略對(duì)于給定宏區(qū)塊來(lái)說(shuō)不大可能是所要 選擇的一些區(qū)塊大小。而且,模式選擇單元20預(yù)處理多媒體序列以獲得每一宏區(qū)塊的時(shí)間帶寬比量度。如 上所提及,此量度與用于以恒定視覺(jué)質(zhì)量編碼各自宏區(qū)塊的位的數(shù)目高度相關(guān)。時(shí)間帶 寬比圖的一個(gè)示范性計(jì)算如下r 256 、2 / /V丄+ / 乂其中" 。,是靈敏度量度,y是宏區(qū)塊的平均亮度分量,"/OTH =i是用于亮度平方和",,值的加權(quán)因數(shù),Avwra 是歸一化因數(shù),A/W和M^是當(dāng)前宏區(qū)塊的前向運(yùn)動(dòng)向量和表平方差的和。如果SSD不可得,則可替代地使用SAZ)2 (絕 對(duì)差的和)。在一個(gè)實(shí)例中,可界定用于兩種情況(H0和H1)的"假設(shè)"測(cè)試HO:幀間平面 (包括幀間16x16、幀間16x8、幀間8xl6和跳過(guò));以及H1:幀間細(xì)節(jié)(包括幀間8x8、 幀間8x4、幀間4x8和幀間4x4)。所述測(cè)試被稱(chēng)為"假設(shè)"測(cè)試,因?yàn)樗鰷y(cè)試基于概 率而假設(shè)最有可能的模式組(幀間平面或幀間細(xì)節(jié))。當(dāng)然,本發(fā)明的技術(shù)也可擴(kuò)展到更 多情況,S卩,更多的模式組或不同的模式組。如圖4中所展示,在多媒體編碼位流的開(kāi)始,模式選擇單元20初始化幀間平面模式 的直方圖52和幀間細(xì)節(jié)模式的直方圖54??蓮哪M不同內(nèi)容類(lèi)別的若干較長(zhǎng)測(cè)試模擬 序列獲得經(jīng)初始化的直方圖。舉例來(lái)說(shuō),可使用在工廠中經(jīng)處理并預(yù)先存儲(chǔ)在給定裝置 IO上的測(cè)試序列,以界定經(jīng)初始化的直方圖。然而, 一旦裝置10已處理了一個(gè)或一個(gè) 以上多媒體序列,這些額外序列的處理也就可在后續(xù)序列的處理期間在經(jīng)初始化的直方 圖中反映出來(lái)。以此方式,甚至本文所述的模式選擇技術(shù)的初始化也可隨時(shí)間演進(jìn)并改 進(jìn)。對(duì)于具有時(shí)間帶寬比量度"6"的新宏區(qū)塊來(lái)說(shuō),模式選擇單元20僅基于圖4的直 方圖將概率計(jì)算為其它, 其它,其中e為防止數(shù)據(jù)缺乏的較小正數(shù)。宏區(qū)塊的模式與其空間和時(shí)間相鄰區(qū)塊相關(guān)。也就是說(shuō),通常需要維持用于空間和 時(shí)間鄰近宏區(qū)塊的類(lèi)似模式。所述空間和時(shí)間相鄰區(qū)塊的模式可界定宏區(qū)塊模式圖。維 持平滑的宏區(qū)塊模式圖可減少用于表示宏區(qū)塊編碼模式的位。從圖5可見(jiàn),依據(jù)當(dāng)前宏區(qū)塊如果在幀的角落上、在幀的邊界上或在幀的內(nèi)部,所 述宏區(qū)塊可具有4個(gè)到9個(gè)相鄰區(qū)塊。在圖5中所展示的相鄰區(qū)塊中,左上部(UL)、 上部(U)、右上部(UR)和左部(L)使其模式在當(dāng)前幀(即,來(lái)自幀內(nèi)的空間相鄰區(qū)0.5,0.5,如果如果塊)中確定。中央(c)、右部(r)、左下部(bl)、下部(b)和右下部(br)的模式 是從前一幀(即,從鄰近幀內(nèi)的時(shí)間相鄰區(qū)塊)獲得。 模式選擇單元20可計(jì)算g0 = 2x (/(Af此=餅卿Za離)十/(Af y =縦卿,"證)+ /(MM = /ATTE/ p/"匿)+=/AT£7 deta") + /(Afc =/AT£7 deta") )+/(Mfi =/Wr£7 det。!7) + /(Afs[ =/AT£/ deta!7)+/(Mfl =/Wr£7 deta")+/(M朋=/ATS det。!7)其中/ ( )是指示符函數(shù)。指示符函數(shù)是指組上所界定的指示元素在所述組的子組 中的成員資格的函數(shù)。在以上實(shí)例中,將雙權(quán)數(shù)應(yīng)用于4個(gè)在空間上有因果關(guān)系的相鄰 區(qū)塊(ul、 u、 ur、 l)和相對(duì)于其它時(shí)間相鄰區(qū)塊的時(shí)間中央相鄰區(qū)塊(c),這歸因 于其相對(duì)于當(dāng)前宏區(qū)塊的更近的空間和時(shí)間距離。模式選擇單元20也可將幀間平面組和幀間細(xì)節(jié)組中的模式的假設(shè)概率確定為° —(H。&)+啤。)+(仏&)+叫), '—(// +啤。)+(//刺+叫),其中a是在模式?jīng)Q策中調(diào)整鄰近宏區(qū)塊模式的有效值的加權(quán)因數(shù)。 模式選擇單元20可將置信度界定為"f"。模式選擇單元20可隨后將經(jīng)更新的假設(shè) 概率計(jì)算為如果/z。h [選擇平面間w/o完全/ -Z^ 如果/z。Sl-f [選擇細(xì)節(jié)間w/o完全W-d1 如果f</i。<l-r [完全/ -Z)選擇平面間l如果f<~<i-f [完全i -n選擇細(xì)節(jié)間i1, 0,、, 如果[選擇細(xì)節(jié)間w/o完全尺一Z)l/ip 如果年^l-r [選擇平面間w/o完全尺一£>1 1, 如果(</^<1 —f [完全W —D選擇細(xì)節(jié)間l0, 如果f〈/^〈l-r [完全/ -£)選擇平面間l當(dāng)在沒(méi)有(w/o)完全速率失真(R-D)搜索的情況下選擇一組模式時(shí),在以上那些 情況下可實(shí)現(xiàn)計(jì)算上的節(jié)省。在每一幀的結(jié)尾處,模式選擇單元20可找到當(dāng)前幀假設(shè)概 率的直方圖。當(dāng)前幀假設(shè)概率可表示為H'。和H、。因此,可用以下方式更新長(zhǎng)期的假設(shè) 概率。、 + + +H 仏( 八 //。(&)+^'。(6)+Z/,(&)+^'》)其中/ 為用于調(diào)整更新速度的加權(quán)因數(shù)。通過(guò)考慮計(jì)算負(fù)荷與PSNR性能之間的權(quán)衡,可在模式選擇單元20中選擇參數(shù)組 cM).10、 -=0.2、 r=0.90。也可調(diào)整置信度以在經(jīng)編碼多媒體序列中實(shí)現(xiàn)質(zhì)量和復(fù)雜性的 不同等級(jí)。模擬結(jié)果己表明相對(duì)于完全搜索,所述技術(shù)的實(shí)施可將經(jīng)完全搜索的宏區(qū) 塊的數(shù)目減少約1/6,而僅有約0.1~0.14dB的可忽略的PSNR損失。圖6為說(shuō)明用于編碼的模塊100的方框圖,所述模塊可包含編碼器且可形成能夠編 碼并傳輸多媒體數(shù)據(jù)的數(shù)字視頻裝置的部分。用于編碼的模塊IOO包括用于模式選擇的 模塊120,所述用于模式選擇的模塊在幀間編碼期間將模式選擇技術(shù)作為運(yùn)動(dòng)估計(jì)過(guò)程 的部分而執(zhí)行。用于編碼的模塊120也包括可分別包括運(yùn)動(dòng)估計(jì)器和運(yùn)動(dòng)補(bǔ)償器的用于 運(yùn)動(dòng)估計(jì)的模塊122和用于運(yùn)動(dòng)補(bǔ)償?shù)哪K124。用于編碼的模塊100可包括用于存儲(chǔ) 的模塊125,所述用于存儲(chǔ)的模塊可為存儲(chǔ)器單元等。用于編碼的模塊100也可包括用 于殘余編碼的模塊126,所述用于殘余編碼的模塊可包含殘余編碼器。在編碼過(guò)程中,用于運(yùn)動(dòng)估計(jì)的模塊122執(zhí)行運(yùn)動(dòng)估計(jì)過(guò)程,且用于運(yùn)動(dòng)補(bǔ)償?shù)哪?塊124執(zhí)行運(yùn)動(dòng)補(bǔ)償過(guò)程。可從用于存儲(chǔ)的模塊125存取所述編碼過(guò)程中所使用的數(shù)據(jù)。 在已執(zhí)行運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償過(guò)程之后,用于殘余編碼的模塊126可對(duì)殘余區(qū)塊執(zhí)行一 個(gè)或一個(gè)以上殘余編碼步驟。根據(jù)本發(fā)明,在運(yùn)動(dòng)估計(jì)期間,用于模式選擇的模塊120對(duì)多媒體序列的幀的宏區(qū)塊執(zhí)行預(yù)處理程序,以便可能消除與極不可能用于各自宏區(qū)塊的模式相關(guān)聯(lián)的模式搜索。 具體來(lái)說(shuō),用于模式選擇的模塊120界定用于每一經(jīng)幀間編碼的宏區(qū)塊的細(xì)節(jié)量度,且使用與相鄰區(qū)塊相關(guān)聯(lián)的模式信息。用于模式選擇的模塊120可使用概率方程,且所述 概率方程可包括細(xì)節(jié)量度和與相鄰區(qū)塊相關(guān)聯(lián)的模式信息。在每一宏區(qū)塊的每一模式選擇之后,可更新概率方程中的統(tǒng)計(jì),且概率方程的更新 可用于后續(xù)宏區(qū)塊的模式選擇決策。以此方式,用于模式選擇的模塊120可適于給定序 列的內(nèi)容,以改進(jìn)全運(yùn)動(dòng)多媒體序列上的模式選擇。最后,用于模式選擇的模塊120從 經(jīng)選定組的可能的多媒體編碼模式中選擇用于編碼各自宏區(qū)塊的模式。在許多情況下, 通過(guò)用于模式選擇的模塊120執(zhí)行的技術(shù)可有助于避免在未選定組的多媒體編碼模式中 與用于宏區(qū)塊的模式相關(guān)聯(lián)的運(yùn)動(dòng)搜索。根據(jù)本發(fā)明,用于選擇一組多媒體編碼模式的裝置可包含模式選擇單元20 (圖1) 或用于選擇的模塊120 (圖6)。類(lèi)似地,用于運(yùn)動(dòng)估計(jì)的裝置可包含運(yùn)動(dòng)估計(jì)器/空間估 計(jì)器22 (圖1)或用于運(yùn)動(dòng)估計(jì)的模塊122 (圖6)。用于運(yùn)動(dòng)補(bǔ)償?shù)难b置可包含運(yùn)動(dòng)補(bǔ) 償器/幀內(nèi)預(yù)測(cè)單元24 (圖l)或用于運(yùn)動(dòng)補(bǔ)償?shù)哪K124 (圖6),且用于殘余編碼的裝 置可包含殘余編碼器26 (圖1)或用于殘余編碼的模塊126 (圖6)。用于存儲(chǔ)的裝置可 包含搜索空間25 (圖1)或用于存儲(chǔ)的模塊125 (圖6)。用于更新統(tǒng)計(jì)的裝置也可用于 更新用于模式選擇決策的概率方程,且此用于更新的裝置可包含任一硬件、軟件、固件 等,其經(jīng)設(shè)計(jì)或編程以執(zhí)行對(duì)直方圖等(例如類(lèi)似于圖4中所展示的直方圖的直方圖)的統(tǒng)計(jì)更新。已描述眾多實(shí)施例。具體來(lái)說(shuō),已描述用于運(yùn)動(dòng)估計(jì)過(guò)程的模式選擇技術(shù),以使得 可確定用于宏區(qū)塊的編碼模式,以實(shí)現(xiàn)所要的編碼速率和可接受的失真水平(即,可接 受的速率失真)。如所描述,所述技術(shù)可利用用于每一宏區(qū)塊的細(xì)節(jié)量度和與各自宏區(qū)塊 的相鄰區(qū)塊相關(guān)聯(lián)的模式信息??蓪?shí)施概率方程以使用細(xì)節(jié)量度和與相鄰區(qū)塊相關(guān)聯(lián)的 模式信息,且可在每一模式選擇之后更新概率方程中的統(tǒng)計(jì)以適于給定序列的內(nèi)容。所 述技術(shù)可界定至少兩組模式,且可選擇這些組中的一者,從而可能消除與另一組模式相 關(guān)聯(lián)的不必要的搜索。所述技術(shù)也適用于其它區(qū)塊大小,S卩,與16X16的宏區(qū)塊不同的 區(qū)塊大小??赏ㄟ^(guò)各自的編碼標(biāo)準(zhǔn)來(lái)界定區(qū)塊的大小和所支持的模式。在任一情況下, 區(qū)塊可具有通過(guò)區(qū)塊的分區(qū)和/或子分區(qū)而界定的若千可能模式,且可使用本文所描述的 技術(shù)來(lái)改進(jìn)模式選擇??梢杂布④浖?、固件或其任一組合實(shí)施本文所描述的技術(shù)。如果以軟件實(shí)施,則可通過(guò)計(jì)算機(jī)可讀媒體(或其它機(jī)器可讀媒體)而部分地實(shí)現(xiàn)所述技術(shù),所述計(jì)算機(jī)可 讀媒體包含含有在執(zhí)行時(shí)執(zhí)行本文所描述的技術(shù)中的一者或一者以上的指令的程序代 碼。在此情況下,計(jì)算機(jī)可讀媒體可包含例如同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(SDRAM)的隨 機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、非易失性隨機(jī)存取存儲(chǔ)器(NVRAM)、電 可擦可編程只讀存儲(chǔ)器(EEPROM)、快閃存儲(chǔ)器、磁性或光學(xué)數(shù)據(jù)存儲(chǔ)媒體等??赏ㄟ^(guò)一個(gè)或一個(gè)以上處理器或例如一個(gè)或一個(gè)以上數(shù)字信號(hào)處理器(DSP)、通用 微處理器、專(zhuān)用集成電路(ASIC)、現(xiàn)場(chǎng)可編程邏輯陣列(FPGA)或其它等效集成電路 或離散邏輯電路的其它機(jī)器而執(zhí)行所述指令。 一般來(lái)說(shuō),執(zhí)行所述指令的機(jī)器通??砂?含一設(shè)備。在一些實(shí)施例中,本文所描述的功能性可提供在經(jīng)配置以用于編碼和解碼的 專(zhuān)用軟件模塊或硬件模塊或單元內(nèi),或并入組合的視頻編解碼器(CODEC)中。然而,在不偏離所附權(quán)利要求書(shū)的范圍的情況下,可對(duì)所述技術(shù)進(jìn)行各種修改。因 此,上述特定實(shí)施例和其它實(shí)施例處于所附權(quán)利要求書(shū)的范圍內(nèi)。
權(quán)利要求
1. 一種用于處理多媒體數(shù)據(jù)的方法,所述方法包含基于與多媒體幀的區(qū)塊相關(guān)聯(lián) 的細(xì)節(jié)量度和與所述區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信息,從至少兩組可能的多媒體 編碼模式中選擇一組多媒體編碼模式,以用于所述區(qū)塊。
2. 根據(jù)權(quán)利要求l所述的方法,其中所述區(qū)塊包含16個(gè)像素X16個(gè)像素的宏區(qū)塊。
3. 根據(jù)權(quán)利要求l所述的方法,其中所述多媒體編碼模式按照分區(qū)、子分區(qū)或分區(qū)和 子分區(qū)來(lái)界定所述區(qū)塊的粒度。
4. 根據(jù)權(quán)利要求l所述的方法,其中從至少兩組可能的多媒體編碼模式中進(jìn)行選擇包 含在一組幀間平面模式與一組幀間細(xì)節(jié)模式之間選擇。
5. 根據(jù)權(quán)利要求4所述的方法,其中所述幀間平面模式包含幀間16X16模式、幀間 16X8模式和幀間8X16模式;且其中所述幀間細(xì)節(jié)模式包含幀間8X8模式、幀間 8X4模式、幀間4X8模式和幀間4X4模式。
6. 根據(jù)權(quán)利要求l所述的方法,其中所述選擇是基于一個(gè)或一個(gè)以上概率方程,其中 所述概率方程包括作為變量的所述細(xì)節(jié)量度和與所述相鄰區(qū)塊相關(guān)聯(lián)的所述模式f曰息。
7. 根據(jù)權(quán)利要求6所述的方法,其進(jìn)一步包含更新所述一個(gè)或一個(gè)以上概率方程中的統(tǒng)計(jì),以用于多媒體序列的所述幀的后續(xù)區(qū)塊的模式選擇決策。
8. 根據(jù)權(quán)利要求1所述的方法,其中所述細(xì)節(jié)量度指示所述區(qū)塊中的時(shí)間和空間細(xì)節(jié)。
9. 根據(jù)權(quán)利要求l所述的方法,其中通過(guò)所述幀內(nèi)的第一區(qū)塊子組和不同幀內(nèi)的第二 區(qū)塊子組來(lái)界定與所述區(qū)塊的所述相鄰區(qū)塊相關(guān)聯(lián)的所述模式信息。
10. 根據(jù)權(quán)利要求9所述的方法,其進(jìn)一步包含與加權(quán)所述不同幀內(nèi)的所述第二區(qū)塊子組不同地加權(quán)所述幀內(nèi)的所述第一區(qū)塊子組。
11. 根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包含從所述選定組的可能的多媒體編碼模式 中選擇用于編碼所述區(qū)塊的模式。
12. 根據(jù)權(quán)利要求ll所述的方法,其進(jìn)一步包含避免在未選定組的多媒體編碼模式中與 用于所述區(qū)塊的模式相關(guān)聯(lián)的運(yùn)動(dòng)搜索。
13. —種用于處理多媒體數(shù)據(jù)的設(shè)備,其包含編碼器,所述編碼器基于與多媒體幀的區(qū) 塊相關(guān)聯(lián)的細(xì)節(jié)量度和與所述區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信息,從至少兩組可能 的多媒體編碼模式中選擇一組多媒體編碼模式,以用于所述區(qū)塊。
14. 根據(jù)權(quán)利要求13所述的設(shè)備,其中所述區(qū)塊包含16個(gè)像素X16個(gè)像素的宏區(qū)塊。
15. 根據(jù)權(quán)利要求13所述的設(shè)備,其中所述多媒體編碼模式按照分區(qū)、子分區(qū)或分區(qū) 和子分區(qū)來(lái)界定所述區(qū)塊的粒度。
16. 根據(jù)權(quán)利要求13所述的設(shè)備,其中所述編碼器通過(guò)在一組幀間平面模式與一組幀 間細(xì)節(jié)模式之間選擇而從至少兩組可能的多媒體編碼模式中進(jìn)行選擇,其中所述幀 間平面模式包含幀間16X16模式、幀間16X8模式和幀間8X16模式;且其中所述 幀間細(xì)節(jié)模式包含幀間8X8模式、幀間8X4模式、幀間4X8模式和幀間4X4模 式。
17. 根據(jù)權(quán)利要求13所述的設(shè)備,其中所述編碼器基于一個(gè)或一個(gè)以上概率方程來(lái)選 擇所述組多媒體編碼模式,其中所述一個(gè)或一個(gè)以上概率方程包含作為變量的所述 細(xì)節(jié)量度和與所述相鄰區(qū)塊相關(guān)聯(lián)的所述模式信息。
18. 根據(jù)權(quán)利要求17所述的設(shè)備,其中所述編碼器更新所述一個(gè)或一個(gè)以上概率方程 中的統(tǒng)計(jì),以用于多媒體序列的所述幀的后續(xù)區(qū)塊的模式選擇決策。
19. 根據(jù)權(quán)利要求13所述的設(shè)備,其中所述細(xì)節(jié)量度指示所述區(qū)塊中的時(shí)間和空間細(xì) 節(jié),且其中與所述區(qū)塊的所述相鄰區(qū)塊相關(guān)聯(lián)的所述模式信息是通過(guò)所述幀內(nèi)的第一區(qū)塊子組和不同幀內(nèi)的第二區(qū)塊子組而界定。
20. 根據(jù)權(quán)利要求19所述的設(shè)備,其中所述編碼器與加權(quán)所述不同幀內(nèi)的所述第二區(qū) 塊子組不同地加權(quán)所述幀內(nèi)的所述第一區(qū)塊子組。
21. 根據(jù)權(quán)利要求13所述的設(shè)備,其中所述編碼器從所述選定組的可能的多媒體編碼 模式中選擇用于編碼所述區(qū)塊的模式。
22. 根據(jù)權(quán)利要求21所述的設(shè)備,其中所述編碼器避免在未選定組的多媒體編碼模式 中與用于所述區(qū)塊的模式相關(guān)聯(lián)的運(yùn)動(dòng)搜索。
23. —種用于處理多媒體數(shù)據(jù)的處理器,所述處理器經(jīng)配置以基于與多媒體幀的區(qū)塊相 關(guān)聯(lián)的細(xì)節(jié)量度和與所述區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信息,從至少兩組可能的多 媒體編碼模式中選擇一組多媒體編碼模式,以用于所述區(qū)塊。
24. 根據(jù)權(quán)利要求23所述的處理器,其中所述區(qū)塊包含16個(gè)像素X16個(gè)像素的宏區(qū)塊。
25. 根據(jù)權(quán)利要求23所述的處理器,其中所述多媒體編碼模式按照分區(qū)、子分區(qū)或分 區(qū)和子分區(qū)來(lái)界定所述區(qū)塊的粒度。
26. 根據(jù)權(quán)利要求23所述的處理器,其中所述處理器經(jīng)配置以通過(guò)在一組幀間平面模 式與一組幀間細(xì)節(jié)模式之間選擇而從至少兩組可能的多媒體編碼模式中進(jìn)行選擇, 其中所述幀間平面模式包含幀間16X16模式、幀間16X8模式和幀間8X16模式; 且其中所述幀間細(xì)節(jié)模式包含幀間8X8模式、幀間8X4模式、幀間4X8模式和幀 間4X4模式。
27. 根據(jù)權(quán)利要求23所述的處理器,其中所述處理器經(jīng)配置以基于一個(gè)或一個(gè)以上概 率方程來(lái)選擇所述組多媒體編碼模式,其中所述一個(gè)或一個(gè)以上概率方程包含作為 變量的所述細(xì)節(jié)量度和與所述相鄰區(qū)塊相關(guān)聯(lián)的所述模式信息。
28. 根據(jù)權(quán)利要求27所述的處理器,其中所述處理器經(jīng)配置以更新所述一個(gè)或一個(gè)以 上概率方程中的統(tǒng)計(jì),以用于多媒體序列的所述幀的后續(xù)區(qū)塊的模式選擇決策。
29. —種機(jī)器可讀媒體,其包含用于處理多媒體數(shù)據(jù)的指令,所述指令一旦執(zhí)行便促使 機(jī)器基于與多媒體幀的區(qū)塊相關(guān)聯(lián)的細(xì)節(jié)量度和與所述區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的 模式信息而從至少兩組可能的多媒體編碼模式中選擇一組多媒體編碼模式以用于 所述區(qū)塊。
30. 根據(jù)權(quán)利要求29所述的機(jī)器可讀媒體,其中所述多媒體編碼模式按照分區(qū)、子分 區(qū)或分區(qū)和子分區(qū)來(lái)界定所述區(qū)塊的粒度。
31. 根據(jù)權(quán)利要求29所述的機(jī)器可讀媒體,其中所述指令通過(guò)在一組幀間平面模式與 一組幀間細(xì)節(jié)模式之間選擇而從至少兩組可能的多媒體編碼模式中進(jìn)行選擇,其中 所述幀間平面模式包括幀間16X16模式、幀間16X8模式和幀間8X16模式;且其 中所述幀間細(xì)節(jié)模式包括幀間8X8模式、幀間8X4模式、幀間4X8模式和幀間4 X4模式。
32. 根據(jù)權(quán)利要求29所述的機(jī)器可讀媒體,其中所述指令基于一個(gè)或一個(gè)以上概率方 程來(lái)選擇所述組多媒體編碼模式,其中所述一個(gè)或一個(gè)以上概率方程包含作為變量 的所述細(xì)節(jié)量度和與所述相鄰區(qū)塊相關(guān)聯(lián)的所述模式信息。
33. 根據(jù)權(quán)利要求32所述的機(jī)器可讀媒體,其中所述指令更新所述一個(gè)或一個(gè)以上概 率方程中的統(tǒng)計(jì),以用于多媒體序列的所述幀的后續(xù)區(qū)塊的模式選擇決策。
34. —種用于處理多媒體數(shù)據(jù)的設(shè)備,其包含用于基于與多媒體幀的區(qū)塊相關(guān)聯(lián)的細(xì)節(jié) 量度和與所述區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信息而從至少兩組可能的多媒體編碼 模式中選擇一組多媒體編碼模式以用于所述區(qū)塊的裝置。
35. 根據(jù)權(quán)利要求34所述的設(shè)備,其中所述多媒體編碼模式按照分區(qū)、子分區(qū)或分區(qū) 和子分區(qū)來(lái)界定所述區(qū)塊的粒度。
36. 根據(jù)權(quán)利要求34所述的設(shè)備,其中所述裝置通過(guò)在一組幀間平面模式與一組幀間 細(xì)節(jié)模式之間選擇而從至少兩組可能的多媒體編碼模式中進(jìn)行選擇,其中所述幀間平面模式包括幀間16X16模式、幀間16X8模式和幀間8X16模式;且其中所述幀 間細(xì)節(jié)模式包括幀間8X8模式、幀間8X4模式、幀間4X8模式和幀間4X4模式。
37. 根據(jù)權(quán)利要求34所述的設(shè)備,其中所述裝置基于一個(gè)或一個(gè)以上概率方程來(lái)選擇 所述組多媒體編碼模式,其中所述一個(gè)或一個(gè)以上概率方程包括作為變量的所述細(xì) 節(jié)量度和與所述相鄰區(qū)塊相關(guān)聯(lián)的所述模式信息。
38. 根據(jù)權(quán)利要求34所述的設(shè)備,其進(jìn)一步包含用于更新所述一個(gè)或一個(gè)以上概率方 程中的統(tǒng)計(jì)以用于多媒體序列的所述幀的后續(xù)區(qū)塊的模式選擇決策的裝置。
全文摘要
本發(fā)明描述用于在編碼多媒體序列的多媒體幀的宏區(qū)塊(或其它區(qū)塊)期間改進(jìn)模式選擇決策的技術(shù)。在運(yùn)動(dòng)估計(jì)期間,可確定用于宏區(qū)塊的所述編碼模式,以使得可實(shí)現(xiàn)所要的編碼速率和可接受的失真水平(即,可接受的速率失真)。所述技術(shù)可包括基于與多媒體幀的宏區(qū)塊相關(guān)聯(lián)的細(xì)節(jié)量度和與所述宏區(qū)塊的相鄰區(qū)塊相關(guān)聯(lián)的模式信息,在至少兩組可能的多媒體編碼模式之間選擇一組多媒體編碼模式以用于所述宏區(qū)塊。
文檔編號(hào)H04N7/26GK101313587SQ200680043706
公開(kāi)日2008年11月26日 申請(qǐng)日期2006年9月27日 優(yōu)先權(quán)日2005年9月27日
發(fā)明者濤 田, 維賈雅拉克希米·R·拉韋恩德拉恩 申請(qǐng)人:高通股份有限公司