亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

自適應(yīng)的多維信號(hào)序列編碼/解碼方法和裝置的制作方法

文檔序號(hào):7606737閱讀:201來(lái)源:國(guó)知局
專利名稱:自適應(yīng)的多維信號(hào)序列編碼/解碼方法和裝置的制作方法
技術(shù)領(lǐng)域
一個(gè)實(shí)施例一般地涉及數(shù)據(jù)編碼、存儲(chǔ)、分配和解碼,更特別地(但不是專門地)是涉及利用n維塊匹配方法的n維信號(hào)序列編碼、存儲(chǔ)、分配和解碼。
背景技術(shù)
視頻信號(hào)通常具有大量的信息。因而,視頻信號(hào)通常是在被傳輸或存儲(chǔ)之前被壓縮編碼。為了以高效率對(duì)視頻信號(hào)進(jìn)行編碼,單位為幀的圖像被分成單位為預(yù)定數(shù)目像素的多個(gè)塊。對(duì)每個(gè)塊進(jìn)行正交變換,把圖像的空間頻率分成多個(gè)頻率分量。每個(gè)頻率分量作為變換系數(shù)被獲得和被編碼。

發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個(gè)方面,處理信號(hào)序列的一個(gè)系統(tǒng)包括一個(gè)接收信號(hào)序列的區(qū)分器或差示器(differentiator),所述信號(hào)序列包括一個(gè)n維當(dāng)前幀,所述n維當(dāng)前幀包括多個(gè)當(dāng)前幀塊和多個(gè)n維參考幀,所述多個(gè)n維參考幀中的每一幀包括多個(gè)參考幀塊;一個(gè)存儲(chǔ)所述多個(gè)n維參考幀的幀緩沖器;一個(gè)塊匹配預(yù)測(cè)器,其為所述多個(gè)當(dāng)前幀塊中的每一塊識(shí)別所述多個(gè)參考幀塊中的一個(gè)預(yù)測(cè)塊,并為所述多個(gè)當(dāng)前幀塊中每一塊的相應(yīng)預(yù)測(cè)塊確定一個(gè)參考位移索引和一個(gè)塊預(yù)測(cè)差值,其中所述參考位移索引用以識(shí)別所述參考幀塊內(nèi)的一個(gè)點(diǎn);一個(gè)塊編碼器,其對(duì)所述多個(gè)當(dāng)前幀塊中每一塊的相應(yīng)塊預(yù)測(cè)差值和相應(yīng)參考位移索引進(jìn)行編碼,并藉此創(chuàng)建多個(gè)編碼塊;和一個(gè)序列編碼器,其根據(jù)預(yù)定格式把所述多個(gè)編碼塊打包在一起。
根據(jù)另一個(gè)方面,一個(gè)存儲(chǔ)系統(tǒng)包括n維存儲(chǔ)器。該n維存儲(chǔ)器包括一個(gè)或多個(gè)存儲(chǔ)切片或存儲(chǔ)器分割區(qū)(memory slice),以允許在一個(gè)時(shí)鐘周期中在每個(gè)切片中存儲(chǔ)或取出一個(gè)數(shù)據(jù)項(xiàng);組織一個(gè)n維幀內(nèi)的n維數(shù)據(jù)以允許一個(gè)既定立方體(cube)內(nèi)的所有數(shù)據(jù)在多個(gè)周期中被訪問的裝置,所述立方體可位于該n維幀中的任何地方,其中周期的數(shù)量被確定為該立方體內(nèi)的全部點(diǎn)數(shù)除以存儲(chǔ)切片的數(shù)量;一個(gè)尋址轉(zhuǎn)換模塊,其基于n維地址輸入從所述一個(gè)或多個(gè)存儲(chǔ)切片中訪問數(shù)據(jù);以及一個(gè)數(shù)據(jù)多路復(fù)用器/多路分離器,以將來(lái)自所述一個(gè)或多個(gè)切片的數(shù)據(jù)流橋接到利用n維數(shù)據(jù)的一個(gè)或多個(gè)外部處理模塊。
根據(jù)另外一個(gè)方面,一種系統(tǒng)包括一個(gè)處理陣列,該處理陣列包括一個(gè)或多個(gè)信號(hào)處理單元,以處理n維數(shù)據(jù)輸入;一個(gè)或多個(gè)數(shù)據(jù)寄存器,其為所述信號(hào)處理單元存儲(chǔ)數(shù)據(jù);以及控制所述處理陣列的裝置,其允許一個(gè)數(shù)據(jù)元素由所述陣列中一個(gè)以上的處理器使用。
根據(jù)另外的一個(gè)方面,一種方法包括接收一個(gè)n維幀序列,該n維幀序列包含一個(gè)原始n維幀;并且以保存所述原始n維幀內(nèi)塊的相鄰關(guān)系的順序,來(lái)掃描所述n維幀序列,使其成為一個(gè)一維的塊序列。
參考附圖和下文的詳細(xì)描述,本發(fā)明的其它特征將是明顯的。


雖然本發(fā)明是通過示例來(lái)描述的,但其并不限于所附的附圖。附圖中相同的參考標(biāo)記表示類似的元件。
圖1根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了一個(gè)自適應(yīng)多維信號(hào)序列編碼系統(tǒng)。
圖2根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了利用線性模型和分段線性模型來(lái)擬合R_AC與AC_NORM。
圖3根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了自適應(yīng)的速率(rate)查詢表/求值器的結(jié)構(gòu)。
圖4根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了一個(gè)快速M(fèi)E(運(yùn)動(dòng)估計(jì))搜索過程。
圖5根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了在二維視頻序列情況中鄰居開拓集(neighbor exploit set)的一個(gè)示例。
圖6根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了為確定詳細(xì)搜索起點(diǎn)而被求值的點(diǎn)。
圖7根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了詳細(xì)搜索的一個(gè)實(shí)施例。
圖8根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了全局搜索的一個(gè)實(shí)施例。
圖9根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了利用碎片網(wǎng)格點(diǎn)(fractionalgrid points)上的塊匹配進(jìn)行編碼的一個(gè)實(shí)施例圖10根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了ME搜索過程中利用平均濾波器來(lái)計(jì)算子像素值。
圖11根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了一個(gè)自適應(yīng)ME控制結(jié)構(gòu)。
圖12根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了可調(diào)節(jié)的ME搜索范圍的一個(gè)示例。
圖13根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了MEPU周期調(diào)度器的一個(gè)實(shí)施例。
圖14根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了在螺旋搜索情況中的提前終止(early-termination)。
圖15示出了具有用于幀中的塊的固定網(wǎng)格的二維幀以及需要在任意位置的塊存取模式的示例。
圖16示出了N維存儲(chǔ)器結(jié)構(gòu)的一個(gè)實(shí)施例。
圖17示出了二維存儲(chǔ)器中切片ID的分配,以允許在一個(gè)周期中在任何位置存取一個(gè)二維塊。
圖18示出了二維存儲(chǔ)器中切片ID分配,以允許在2個(gè)周期的猝發(fā)(burst)中在任何位置存取一個(gè)二維塊。
圖19示出了多級(jí)N維存儲(chǔ)器的一個(gè)實(shí)施例,其利用SDRAM作為第二級(jí)外部記憶裝置(memory storage)。
圖20示出了第二級(jí)外部SDRAM中二維幀數(shù)據(jù)的分配,以優(yōu)化二維塊的訪問性能。
圖21示出了一個(gè)線性第二級(jí)外部存儲(chǔ)器中的一個(gè)二維塊的數(shù)據(jù)分配序列。
圖22示出了ME搜索的PSP陣列處理器的一個(gè)實(shí)施例。
圖23示出了ME搜索算法中通常使用的單處理器螺旋搜索模式。
圖24示出了利用一個(gè)3×3陣列的平行螺旋搜索模式的示例。
圖25示出了假定使用的是傳統(tǒng)的線性存儲(chǔ)器,在該3×3陣列中的數(shù)據(jù)存取共享。
圖26示出了假定使用的是二維存儲(chǔ)器,在該3×3陣列中的數(shù)據(jù)存取共享。
圖27根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了N維信號(hào)序列的示例。
圖28根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了相鄰保留(neighborpreserving)的一種掃描方法。
圖29根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了二維幀中的一個(gè)塊。
圖30根據(jù)本發(fā)明的一個(gè)實(shí)施例示出了應(yīng)用到CCD或CMOS圖像傳感器的相鄰保留掃描。
具體實(shí)施例方式
在本文的描述中,提供了大量的具體細(xì)節(jié),如系統(tǒng)組件和方法的描述,以提供對(duì)本發(fā)明的實(shí)施例的透徹理解。然而,相關(guān)技術(shù)領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,如果缺少一個(gè)或多個(gè)這樣的具體細(xì)節(jié),或者利用了其它的系統(tǒng)、方法、組件、材料、部件等等,仍然可以實(shí)現(xiàn)本發(fā)明。此外,公知的結(jié)構(gòu)、材料或操作未被詳細(xì)地顯示或描述,以免混淆本發(fā)明的特征。
在整個(gè)說(shuō)明書中所提到的“一個(gè)實(shí)施例”或“實(shí)施例”表示結(jié)合該實(shí)施例描述的一個(gè)特定特征、結(jié)構(gòu)或特性將被包括在本發(fā)明的至少一個(gè)實(shí)施例中。因此,整個(gè)說(shuō)明書中各處出現(xiàn)的短語(yǔ)“在一個(gè)實(shí)施例中”或“在實(shí)施例中”,并不必表示同一個(gè)實(shí)施例。此外,特定的特征、結(jié)構(gòu)或特性可以任何適當(dāng)?shù)姆绞奖话谝粋€(gè)或多個(gè)實(shí)施例中。
概述在一個(gè)實(shí)施例中,描述了一種有效地壓縮多維信號(hào)序列的方法和裝置,以在一定的失真限制下降低比特速率。該方法可被用于對(duì)一個(gè)N維信號(hào)序列進(jìn)行編碼,圖27示出了一些示例。該方法的一個(gè)示例性應(yīng)用是在以傳輸和存儲(chǔ)為目的的視頻編碼中。需注意的是,盡管在下文的多數(shù)描述中,僅將二維視頻信號(hào)序列壓縮作為說(shuō)明性示例而詳細(xì)描述,但是本文給出的方法和裝置可擴(kuò)展到壓縮一個(gè)普通的n維信號(hào)序列。
N維塊匹配信號(hào)序列的編碼圖1示出了一個(gè)自適應(yīng)多維信號(hào)序列編碼系統(tǒng)100的一個(gè)示例性實(shí)施例的方框圖。該系統(tǒng)可被用于壓縮n維信號(hào)序列中的一個(gè)序列。圖27中的項(xiàng)2704、2705和2706是n維序列的一些示例。該系統(tǒng)的輸入可以是一個(gè)n維信號(hào)幀(如圖27中的項(xiàng)2701、2702和2703)。一個(gè)幀可由n維塊組成。圖29表示二維幀2901中的塊2902的一個(gè)示例。如圖1所示,系統(tǒng)100在幀緩沖器102中保存一組解碼幀。目標(biāo)塊是一個(gè)塊或參考幀中多個(gè)塊的某種組合。輸入幀101中的每個(gè)塊可根據(jù)預(yù)定標(biāo)準(zhǔn)與幀緩沖器內(nèi)參考幀中的多個(gè)目標(biāo)塊匹配。
為改進(jìn)對(duì)幀間信號(hào)變化的跟蹤,塊尺寸可以是可變的。在一個(gè)實(shí)施例中,不同的塊尺寸和塊形狀可被用于匹配參考幀中的塊。較大的塊可被用于跟蹤較大對(duì)象的移動(dòng),而較小的塊可被用于跟蹤較小對(duì)象的移動(dòng)。該塊匹配的操作可在二維視頻編碼情況中的運(yùn)動(dòng)估計(jì)的一個(gè)示例形式中被執(zhí)行。在發(fā)現(xiàn)最佳目標(biāo)塊之后,當(dāng)前塊與目標(biāo)塊之間的差別通過n維系數(shù)去相關(guān)轉(zhuǎn)換T104被轉(zhuǎn)換,該轉(zhuǎn)換系數(shù)通過一個(gè)可選的量化操作Q105被量化,然后與運(yùn)動(dòng)矢量信息一起被編碼。如果要求無(wú)損編碼,量化操作Q可被跳過。在無(wú)損編碼的情況下,編碼過程是可逆的,即,原始信號(hào)序列可由解碼器以準(zhǔn)確度100%的進(jìn)行恢復(fù)。由于人眼具有一定的精確度限制,因此在不影響人類感覺的情況下可允許進(jìn)行一定程度的量化。量化的配置方式應(yīng)使量化誤差不會(huì)被人眼明顯感知。
在一個(gè)典型的視頻壓縮系統(tǒng)中,轉(zhuǎn)換T是一個(gè)二維離散余弦變換(DCT)(參考文獻(xiàn)[1])。在一些情況下,DCT可產(chǎn)生接近于最優(yōu)的系數(shù)去相關(guān)結(jié)果。但是,由于計(jì)算的復(fù)雜性,DCT通常只能處理小的固定塊(MPEG4標(biāo)準(zhǔn)中為8×8,和H.264標(biāo)準(zhǔn)中為4×4)。為了具有較大的塊尺寸和節(jié)省計(jì)算時(shí)間,在一個(gè)實(shí)施例中,離散哈達(dá)馬變換(DHT)可被用作系數(shù)去相關(guān)轉(zhuǎn)換。根據(jù)去相關(guān)系數(shù)(參考文獻(xiàn)[2]),與DCT不同的是,DHT可能不是最優(yōu)的。但是,由于DHT只要求加法和減法操作,因此其處理非常大的塊尺寸是可能的,而且與DCT相比復(fù)雜性較低。在一個(gè)示例性實(shí)施例中,系統(tǒng)100允許轉(zhuǎn)換可選的可變塊尺寸,而且可選地,允許為不同的塊尺寸利用不同的轉(zhuǎn)換。例如,DCT可被用于轉(zhuǎn)換較小的塊,而DHT可被用于轉(zhuǎn)換較大的塊。利用可變塊尺寸轉(zhuǎn)換,轉(zhuǎn)換的塊尺寸可與塊匹配大小相同,從而產(chǎn)生比小固定塊尺寸的轉(zhuǎn)換更好的系數(shù)去相關(guān)效果。
被編碼的視頻的質(zhì)量是由量化控制的,量化是基于特定的量化參數(shù)(QP)把轉(zhuǎn)換系數(shù)量化為離散級(jí)別。QP越大,級(jí)別的數(shù)量就越少,因此表示系數(shù)的比特的數(shù)量越少,但這是以降低質(zhì)量為代價(jià)的。認(rèn)真調(diào)節(jié)QP,可對(duì)速率-失真進(jìn)行平衡折衷。在量化操作之后,轉(zhuǎn)換塊中的許多系數(shù)變?yōu)?。為了降低比特速率,通過折線掃描方法(從低頻分量到高頻分量掃描這些系數(shù),或以相反的方向掃描)來(lái)掃描量化的轉(zhuǎn)換系數(shù)。該操作把N維系數(shù)轉(zhuǎn)換為一維序列。然后被掃描的一維序列通過游程長(zhǎng)度(run-length)編碼106被編碼,其對(duì)多個(gè)前導(dǎo)零(游程)、非零系數(shù)(級(jí)別)值對(duì)(pairs)的示例表單中的信息進(jìn)行編碼。然后該(游程,級(jí)別)對(duì)可利用熵編碼操作107(如霍夫曼(Huffman)或算術(shù)編碼)被編碼,以進(jìn)一步降低速率。
運(yùn)動(dòng)估計(jì)(ME)成本函數(shù)在一個(gè)示例性實(shí)施例中,一個(gè)運(yùn)動(dòng)估計(jì)(ME)模塊103是圖1所示的系統(tǒng)中的一個(gè)計(jì)算強(qiáng)度模塊。ME塊匹配可以基于對(duì)參考幀中當(dāng)前塊與目標(biāo)塊之間誤差測(cè)量的最小化來(lái)進(jìn)行。誤差測(cè)量可以根據(jù)差值能量測(cè)量而被指定(例如,這兩塊像素之間的平方誤差之和(SSE)或絕對(duì)誤差(SAE)之和,SAE作為ME搜索的最廣泛使用的測(cè)量,以節(jié)省計(jì)算時(shí)間(參考文獻(xiàn)[1]))。利用如SAE或SSE的差值能量測(cè)量并不一定產(chǎn)生最小的比特速率。在一個(gè)實(shí)施例中,一個(gè)墑測(cè)量可被用作成本函數(shù),引導(dǎo)ME搜索來(lái)發(fā)現(xiàn)最佳目標(biāo)塊。該墑測(cè)量可以測(cè)量在給定了參考幀的情況下,對(duì)當(dāng)前塊進(jìn)行編碼所需的信息量。在一個(gè)示例性實(shí)施例中,可以利用一種引導(dǎo)ME搜索以便為目標(biāo)塊發(fā)現(xiàn)最小墑的方法。在一個(gè)實(shí)施例中,該ME成本函數(shù)可表示為J=Rate_T(T(FPD)|QP)+Rate_MV(MV)(1)其中Rate_*()是信號(hào)通過它的每個(gè)編碼方法如Rate_T、Rate_MV等等的比特?cái)?shù)量;T(FPD)是幀預(yù)測(cè)差值FPD的變換式;QP是量化參數(shù)。
由于確定Rate_MV()很容易,因此成本函數(shù)J可以通過確定ME搜索過程中的Rate_T(T(FPD)|QP)的近似值而被求值。在一個(gè)實(shí)施例中,Rate_T()可以表示為Rate_T(T(FPD)|QP)=Rate_T_DC(T_DC{FPD)|QP_dc)+Rate_T_AC(T_AC(FPD)|QP_ac)~=Rate_T_DC(DC{FPD)|QP_dc)+Rate_T_AC(AC_NORM(FPD)|QP_ac)(2)其中T_DC(FPD)是T{FPD)的DC分量;T_AC(FPD)是T(FPD)的AC矩陣;DC(FPD)是FPD塊的DC值;AC_Norm(FPD)是FPD塊的AC矩陣的Norm(范數(shù))值A(chǔ)C_NORM(FPD)=∑ijABS(FPDij-DC(FPD)) (3)墑測(cè)量的一種簡(jiǎn)單近似值可被表示為J=R_DC(DC(FPD)|QP_dc)+R_AC(AC_NORM(FPD)|QP_ac)+R_MV(MV) (4)其中R_DC()和R_MV()可通過簡(jiǎn)單的表查詢而被準(zhǔn)確地求值;R_AC()可通過一個(gè)預(yù)先擬合的表而被近似求值。
R_AC與AC_NORM之間的關(guān)系可取決于所用的編碼方法,并且在一個(gè)實(shí)施例中,可通過線性或分段線性模型進(jìn)行擬合,如圖2所示。在一個(gè)實(shí)施例中,利用MPEG4標(biāo)準(zhǔn),R_AC()的下列近似值可被利用R_AC(AC_NORM|QP_ac)=AC_NORM/(2*QP_ac)(5)
在另一個(gè)實(shí)施例中,下列線性模型可被利用R_AC(AC_NORM(FPD)|QP_ac)=K*AC_NORM/QP_ac (6)一般地,K可基于FPD的局部統(tǒng)計(jì)而變化。為發(fā)現(xiàn)R_AC與AC_NORM之間的局部統(tǒng)計(jì)關(guān)系,可使用一種自適應(yīng)方法,以動(dòng)態(tài)地調(diào)節(jié)上文指定的因子K。
圖3表示自適應(yīng)速率查詢表/求值器結(jié)構(gòu)的一個(gè)實(shí)施例。在ME搜索過程中,墑(表示為比特速率)可通過將一組表輸入?yún)?shù)301輸入到速率查詢表/求值器302而被估計(jì)。對(duì)于每個(gè)塊來(lái)說(shuō),來(lái)自墑編碼107的實(shí)際的編碼速率303可與估計(jì)的速率304比較,誤差305可被反饋到自適應(yīng)速率查詢表,以調(diào)節(jié)某些表參數(shù),從而降低速率誤差??傊?,速率查詢表包括一個(gè)準(zhǔn)確速率部分和一個(gè)估計(jì)速率部分,如下所示J~=R_Accurate+R_Estimation (7)R_Accurate是速率的一部分,其在給定某些輸入?yún)?shù)的情況下,可被準(zhǔn)確地確定。在一個(gè)具體實(shí)施例中,R_Accurate包括R_DC和R_MV,即R_Accurate=R_DC(DC/QP_dc)+R_MV(MV) (8)R_Estimation是塊的估計(jì)部分,一般取決于到查詢表的一組輸入?yún)?shù)。在一個(gè)實(shí)施例中,R_Estimation是作為特定輸入?yún)?shù)的一個(gè)線性組合,即R_Estimation=∑iKi*(Xi-Θi) (9)其中{Xi}是輸入?yún)?shù),{Θi}是輸入?yún)?shù)的閾值,而{Ki}是加權(quán)因子。這里我們采用了最小均方(LMS)算法(參考文獻(xiàn)[3])來(lái)訓(xùn)練(train)加權(quán)因子{Ki},使閾值{Θi}預(yù)先固定或動(dòng)態(tài)可調(diào)。在上述方法的一個(gè)具體實(shí)施例中,我們可準(zhǔn)確地查詢R_DC()、R_MV_X()和R_MV_Y()(以及在H.264中使用的多個(gè)幀參考情況下的R_MV_F()),利用線性模型自適應(yīng)地調(diào)節(jié)R_AC()的因子K。在該情況下,成本函數(shù)可表示如下
J=R_DC(DC|QP_dc)+R_MV(MV)+K*(AC_NORM-AC_THRESHOLD)/QP_ac (10)將R設(shè)為墑編碼之后的塊的速率(包括DCT和MV的速率),并將J設(shè)為塊的速率的估計(jì)值,則K可以是通過下面的過程被調(diào)節(jié)ΔK=μ*(R-J)*(AC_NORM-AC_THRESHOLD)/QP_ac(11)其中ΔK是因子K的平差,(R-J)是速率誤差;μ是學(xué)習(xí)因子,通常以平衡收斂速度與穩(wěn)定性的方式來(lái)設(shè)定;AC_THRESHOLD是在AC速率保持非零時(shí)表征最小AC_NORM值的閾值。AC_THRESHOLD可被預(yù)先固定為特定值或者可被動(dòng)態(tài)地調(diào)節(jié)。在一個(gè)實(shí)施例中,AC_THRESHOLD可根據(jù)下列示例性處理被調(diào)節(jié)(以類似C語(yǔ)言的偽碼來(lái)表示)Zero_Point=Th0;for each block {//塊處理的循環(huán)……If{Actual AC Rate==0}{Zero_Point=α*AC_NORM+(1-α)*Zero_Point;AC_THRESHOLD=m*Zero_Point;}}其中Zero_Point是跟蹤零速率AC_NORM位置的一個(gè)變量;Zero_Point在程序開始時(shí)被初始化為Th0;α是平均窗口控制因子,它是一個(gè)大于0的小的正數(shù);m是一個(gè)比例因子,基于平均的Zero_Point值控制AC_THRESHOLD的位置。
在一個(gè)實(shí)施例中,在(11)中調(diào)節(jié)K的方法可以使速率函數(shù)的均方誤差最小化min E{(R-J)2} (12)一般地,多個(gè)參數(shù)可被用于確定R_Estimation,如(9)中所指定的,其中可對(duì)因子K使用下面所示的自適應(yīng)方法
對(duì)于每個(gè)i,ΔKi=μ*(R-J)*(Xi-Θi) (13)在一個(gè)實(shí)施例中,與基于成本函數(shù)的差值能量測(cè)量相比,基于墑的成本函數(shù)(4)可產(chǎn)生較低的比特速率和較好的圖像質(zhì)量。
ME搜索方法為了識(shí)別產(chǎn)生最低成本函數(shù)值的最佳點(diǎn),需要進(jìn)行大區(qū)域搜索。為了支持實(shí)時(shí)應(yīng)用,應(yīng)該避免計(jì)算成本過高。在一個(gè)示例性實(shí)施例中,使用一種方法,以執(zhí)行大區(qū)域ME搜索,以小于與完全搜索相比的計(jì)算時(shí)間的1%來(lái)產(chǎn)生接近于完全搜索的結(jié)果。該方法是基于這樣一種現(xiàn)象,即真實(shí)世界的N維幀序列中的多數(shù)幀內(nèi)(如在典型的視頻實(shí)例中),只有少量的運(yùn)動(dòng)矢量串,運(yùn)動(dòng)矢量域從每個(gè)串內(nèi)的塊到塊連續(xù)地變化?;谶@一觀察,來(lái)自相鄰塊的運(yùn)動(dòng)矢量可提供有關(guān)ME搜索的起點(diǎn)的一個(gè)好的建議。
圖4表示快速M(fèi)E搜索過程的一個(gè)實(shí)施例,在操作401中,一組點(diǎn)基于相鄰塊的參考位移索引(如運(yùn)動(dòng)矢量(MVs))而被求值,(和可能的是,MVs指定的圍繞那些點(diǎn)的直接鄰近的點(diǎn),如圖6所示),以確定詳細(xì)搜索的起點(diǎn)(圖4中的操作402)。鄰近的塊可以是空間域和/或時(shí)域中的鄰居,可被稱為鄰居開拓集。圖5表示把該方法應(yīng)用于二維視頻序列情況的一個(gè)示例,其中來(lái)自三個(gè)相鄰塊的MVs左501,上502,上右503,以及原點(diǎn)被用于確定當(dāng)前塊500的ME搜索的起點(diǎn)。四個(gè)塊一起構(gòu)成該當(dāng)前塊的鄰居開拓集504。產(chǎn)生最低成本值的點(diǎn)被選擇作為詳細(xì)ME搜索的一個(gè)起點(diǎn)。
在鄰居開拓操作401之后,執(zhí)行詳細(xì)搜索操作402。詳細(xì)搜索可被利用,以執(zhí)行圍繞搜索起點(diǎn)的點(diǎn)的徹底的求值,這可基于鄰居開拓集中的點(diǎn)的求值而被選擇。
圖7表示該操作的一個(gè)具體實(shí)施例。這里,在圍繞搜索起點(diǎn)701的一個(gè)小區(qū)域內(nèi)執(zhí)行兩個(gè)級(jí)別的搜索。在級(jí)別1,對(duì)于所有其它的點(diǎn),執(zhí)行ME搜索。在確定了級(jí)別1上的最佳點(diǎn)703之后,其在級(jí)別0上的直接鄰近點(diǎn)704被求值,以確定出最佳點(diǎn)。將迄今發(fā)現(xiàn)的最佳成本函數(shù)值設(shè)置為J-Best。
在詳細(xì)搜索之后,在圖4的操作403執(zhí)行大區(qū)域的分層搜索。操作403可被稱為全局搜索操作,該操作的目的是在大的搜索窗口中的點(diǎn)進(jìn)行取樣,以發(fā)現(xiàn)在詳細(xì)搜索區(qū)域之外的運(yùn)動(dòng)矢量,萬(wàn)一相鄰塊不提供準(zhǔn)確的初始起點(diǎn)。圖8表示該操作的一個(gè)實(shí)施例。這里N個(gè)級(jí)別的分層搜索被執(zhí)行。在每個(gè)級(jí)別上,圍繞來(lái)自上個(gè)級(jí)別的最佳點(diǎn)的8個(gè)點(diǎn)被求值。對(duì)于搜索窗口=+-128的情況,表示如下級(jí)別6(64,0),(-64,0),(0,64),(0,-64),(64,64),(64,-64),(-64,64),(-64,64)級(jí)別5來(lái)自級(jí)別6中的最佳點(diǎn)(+-32,0),(0,+-32),(+-32,+-32)級(jí)別4來(lái)自級(jí)別5中的最佳點(diǎn)(+-16,0),(0,+-16),(+-16,+-16)級(jí)別3來(lái)自級(jí)別4中的最佳點(diǎn)(+-8,0),(0,+-8),(+-8,+-8)級(jí)別2來(lái)自級(jí)別3中的最佳點(diǎn)(+-4,0),(0,+-4),(+-4,+-4)級(jí)別1來(lái)自級(jí)別2中的最佳點(diǎn)(+-2,0),(0,+-2),(+-2,+-2)級(jí)別0來(lái)自級(jí)別1中的最佳點(diǎn)(+-1,0),(0,+-1),(+-1,+-1)為節(jié)省計(jì)算時(shí)間,可以不必一直搜索到級(jí)別0。在級(jí)別3停止(操作尺寸8)即可產(chǎn)生可接受的結(jié)果。該過程可繼續(xù),直到達(dá)到最終級(jí)別。在N級(jí)分層搜索的過程中具有最小成本值的點(diǎn)隨后可與來(lái)自詳細(xì)搜索的最佳點(diǎn)比較,產(chǎn)生較小的成本值的點(diǎn)被選擇作為最佳ME搜索匹配點(diǎn)。
圖4中表示的ME搜索操作不同于通常使用的快速搜索方法。圖4的操作401、402、493的獨(dú)特組合和順序可產(chǎn)生接近于完全搜索的結(jié)果。這里,操作401可被用來(lái)從相鄰塊識(shí)別發(fā)現(xiàn)的MV,以設(shè)定詳細(xì)搜索起點(diǎn)。操作402可被用來(lái)對(duì)操作401中發(fā)現(xiàn)的最佳起點(diǎn)周圍的點(diǎn)徹底求值。該操作也可設(shè)定下一個(gè)操作的成本函數(shù)值閾值。如果詳細(xì)搜索不能發(fā)現(xiàn)產(chǎn)生足夠低成本值的點(diǎn),操作403可超出小的詳細(xì)搜索區(qū)域,以覆蓋全部的搜索空間,盡量達(dá)到良好的點(diǎn)的鄰近。來(lái)自先前求值的塊的這些搜索結(jié)果可被轉(zhuǎn)移到鄰近的塊。這種中繼效果可傳播好的結(jié)果,并且可以產(chǎn)生塊間的一個(gè)局部的組合作,以實(shí)現(xiàn)全局最優(yōu)化,這類似于在蜂窩自動(dòng)機(jī)(參考文獻(xiàn)[4])或神經(jīng)網(wǎng)絡(luò)系統(tǒng)(參考文獻(xiàn)[5])中觀察到的系統(tǒng)動(dòng)態(tài)特性。
碎片網(wǎng)格點(diǎn)搜索方法在一個(gè)實(shí)施例中,為了進(jìn)一步降低速率,在通過執(zhí)行上述ME搜索過程發(fā)現(xiàn)了最佳的完整網(wǎng)格點(diǎn)之后,可以執(zhí)行碎片網(wǎng)格點(diǎn)搜索。在MPEG4和H.264標(biāo)準(zhǔn)中,使用多分支插值函數(shù)以創(chuàng)建q-pel模式的h-pel像素。如果在ME搜索內(nèi)部循環(huán)(loop)中執(zhí)行,這可以是高強(qiáng)度的計(jì)算。為了說(shuō)明該問題,可以采用一種利用簡(jiǎn)化插值在碎片點(diǎn)上執(zhí)行ME搜索的方法。在一個(gè)示例性實(shí)施例中,可以在一個(gè)視頻編碼應(yīng)用中采用一個(gè)簡(jiǎn)單的濾波器來(lái)為ME搜索產(chǎn)生子像素值。在發(fā)現(xiàn)了最佳的sub-pel點(diǎn)之后,可以利用更復(fù)雜的多分支濾波器來(lái)進(jìn)行運(yùn)動(dòng)補(bǔ)償計(jì)算。其結(jié)果可接近于利用真正多分支濾波器的ME搜索。通過選擇自適應(yīng)運(yùn)動(dòng)補(bǔ)償濾波器可以增強(qiáng)這些結(jié)果。圖9示出了該原理的一個(gè)示例性實(shí)施例。利用一個(gè)簡(jiǎn)單的平均濾波器來(lái)執(zhí)行ME搜索,然后選擇一個(gè)在運(yùn)動(dòng)補(bǔ)償(MC)過程中產(chǎn)生較低速率的濾波器。圖10示出了如何使用平均濾波器來(lái)計(jì)算ME搜索過程中的子像素值。僅僅在完整像素(1001,1001a等)處才可以得到這些像素值,而子像素位置只能被插值。在一個(gè)實(shí)施例中,使用了雙線性插值來(lái)為ME搜索參考幀計(jì)算子像素值。圖10中示例的說(shuō)明如下半像素在1002的像素值=(在1001處的像素值+在1001a的像素值)/21/4像素在1003的像素值=(在1001的像素值+在1002的像素值)/2
1/8像素在1004的像素值=(在1001的像素值+在1003的像素值)/2在一個(gè)實(shí)施例中,該方法可被擴(kuò)展到對(duì)1/(2n)像素進(jìn)行求值,并且可以被進(jìn)一步擴(kuò)展來(lái)處理N維信號(hào)序列。
自適應(yīng)編碼器控制器這些輸入幀中各個(gè)塊的特性在一個(gè)幀內(nèi)以及在幀和幀之間是變化的??梢曰诰幋a器輸出的反饋,以及可選地基于在整個(gè)編碼過程中測(cè)量的某些塊特性值的反饋,利用一個(gè)結(jié)構(gòu)來(lái)改善編碼器的質(zhì)量和性能。例如,跨越塊和幀的MV距離分布可以是不均勻的。由于較大的MV意味著需要更多的ME搜索周期,因此跨越塊和幀可能需要不均勻的ME搜索周期。在一個(gè)實(shí)施例中,為了更好地利用硬件處理周期,利用了一種可以在幀和塊中進(jìn)行周期共享的方法。圖11表示一種自適應(yīng)ME控制結(jié)構(gòu)。ME處理單元(MEPU)1101是一個(gè)執(zhí)行ME搜索的引擎。ME控制單元(MECU)1102是用于控制MEPU的單元。MECU將某些ME監(jiān)測(cè)參數(shù)1104、編碼器反饋參數(shù)1106和存儲(chǔ)在參數(shù)存儲(chǔ)器1103中的某些可調(diào)參數(shù)作為輸入,創(chuàng)建一組ME控制參數(shù)1105,自適應(yīng)地控制MEPU,以便更好地利用MEPU周期來(lái)實(shí)現(xiàn)最佳的ME搜索目標(biāo)。圖3所示的自適應(yīng)速率查詢表和前面所述的學(xué)習(xí)方法可被認(rèn)為是圖11中ME控制函數(shù)1107的一個(gè)具體實(shí)施例。
在ME控制函數(shù)的另一個(gè)示例性實(shí)施例中,基于來(lái)自先前幀的MV值,可為當(dāng)前幀調(diào)節(jié)ME搜索范圍??梢员O(jiān)測(cè)先前的X、Y(以及H.264情況下的幀)運(yùn)動(dòng)矢量值,從而可以擴(kuò)大或縮小當(dāng)前幀上每個(gè)維度(X、Y或F)的ME搜索范圍。該自適應(yīng)ME搜索窗口調(diào)節(jié)方法可有效地降低表示運(yùn)動(dòng)矢量需要的比特速率,并降低ME搜索的周期數(shù)。
圖12示出了ME搜索范圍的一個(gè)示例。
調(diào)節(jié)方法。對(duì)于既定的當(dāng)前ME搜索范圍D1201,ME搜索范圍可根據(jù)下面的標(biāo)準(zhǔn)被調(diào)節(jié)1.如果范圍大于擴(kuò)大的范圍閾值1204(在該例中設(shè)定為3D/4)的MVs的數(shù)量大于某個(gè)預(yù)先設(shè)定的閾值數(shù)量,則將ME搜索范圍擴(kuò)大到2D。
2.如果范圍大于縮小的范圍閾值1205(在該例中設(shè)定為3D/8)的MVs的數(shù)量小于某個(gè)預(yù)先設(shè)定的閾值數(shù)量,則將ME搜索范圍縮小到D/2。
圖12所示的方法可被用來(lái)調(diào)節(jié)每個(gè)獨(dú)立ME搜索維度(對(duì)于H.264多幀情況而言,是X、Y和可能的F)上的ME搜索范圍。
除了上述自適應(yīng)ME搜索范圍方法之外,當(dāng)滿足一定條件時(shí),系統(tǒng)100也可提前終止每個(gè)塊的ME搜索,以節(jié)省處理周期。提前終止所節(jié)省的處理周期可被添加到可用周期池中。MECU將基于該池中的可用周期來(lái)分配和調(diào)度MEPU將要使用的周期。這種方案可以允許充分利用可用處理周期來(lái)實(shí)現(xiàn)最佳的ME搜索結(jié)果。
圖13表示MEPU周期調(diào)度器1301的一個(gè)實(shí)施例。MEPU周期調(diào)度器基于周期池中可用周期來(lái)調(diào)節(jié)用于MEPU 1302中各個(gè)模塊的ME控制參數(shù)。
3種示例性的提前終止情況如下所示1.跳過情形根據(jù)參考幀中相同位置的塊來(lái)檢查當(dāng)前塊。如果兩個(gè)塊相同,則可跳過ME處理。在這種情況下,我們跳過了視頻編碼循環(huán)的主要部分(包括ME、DCT等),節(jié)省了許多周期。用于跳過的類似條件的一個(gè)實(shí)施例是a.計(jì)算當(dāng)前塊與參考幀的相同位置的塊之間的塊差值(BD)。
b.計(jì)算DC[BD]和AC[BD]c.如果DC[BD]/QP_dc<SKIP_DC_TH且AC[BD]/QP_ac<SKIP_AC_TH,則跳過。SKIP_DC_TH和SKIP_AC_TH是確定SKIP條件的一些閾值。SKIP_DC_TH和SKIP_AC_TH可被固定或根據(jù)來(lái)自編碼器的特定反饋動(dòng)態(tài)地調(diào)節(jié)。例如,在一個(gè)實(shí)施例中,SKIP_AC_TH被設(shè)定為上述的動(dòng)態(tài)調(diào)節(jié)的AC_THRESHOLD值。
2.良好匹配終止在ME搜索特定塊的過程中的任何時(shí)刻,當(dāng)成本函數(shù)值低于特定閾值J_Early_Terminate_TH時(shí),我們可終止ME搜索。當(dāng)發(fā)現(xiàn)了非常好的塊匹配時(shí),這種情況就會(huì)發(fā)生,從而形成低成本函數(shù)值。J_Early_Terminate_TH可以是預(yù)先固定的值或基于編碼器的特定特性值可動(dòng)態(tài)地調(diào)節(jié)。例如,在本發(fā)明的一個(gè)實(shí)施例中,J_Early_Terminate_TH=f*J_B_est_Mean其中f是小于1的正數(shù),用于控制J_Early_Terminate_TH;J_Best_Mean是通過特定移動(dòng)取樣窗口的J_Best的移動(dòng)平均值。在本發(fā)明的一個(gè)實(shí)施例中,J_Best_Mean可通過下面公式被簡(jiǎn)單計(jì)算J_Best_Mean=α*J_Best+(1-α)*J_Best_Mean其中α是小于1的小數(shù)值,用于控制移動(dòng)平均窗口的寬度。
3.ME搜索放棄終止如果進(jìn)一步的ME搜索不可能產(chǎn)生比迄今發(fā)現(xiàn)的最佳成本值J_Best更好的結(jié)果,這將發(fā)生。當(dāng)這一情況發(fā)生時(shí),我們不需要浪費(fèi)周期來(lái)搜索該特定塊的更多的點(diǎn)。這可由將來(lái)搜索點(diǎn)的一些較低的界限估計(jì)來(lái)求值。如果將來(lái)搜索點(diǎn)的較低界限大于迄今發(fā)現(xiàn)的最佳成本,那么可終止搜索,不用犧牲任何東西。該想法可被認(rèn)為是應(yīng)用經(jīng)常用于策略樹搜索的A*搜索算法(參考文獻(xiàn)[6])到ME搜索。下面的實(shí)施例是由該想法派生的一些實(shí)施例a.在完成1MV搜索之后,和4MV搜索之前,如果從1MV發(fā)現(xiàn)的最佳成本小于運(yùn)動(dòng)矢量速率,我們終止4MV搜索,即,J_Best(1MV)<=R_MV(4MV)這是因?yàn)镽_MV(4MV)<J(4MV)=R_DC(4MV)+R_AC(4MV)+R_MV(4MV)b.在MPEG4中,如果我們執(zhí)行遵循來(lái)自ME預(yù)測(cè)點(diǎn)的螺旋模式的ME搜索,則R_MV(MV)將從運(yùn)動(dòng)矢量的速率的增加順序中的搜索起點(diǎn)中被分類。在該情況下,如果運(yùn)動(dòng)矢量的速率大于迄今發(fā)現(xiàn)的最佳成本,我們可終止ME搜索過程。該想法被表示在圖14中。如圖14所示,ME搜索從某種預(yù)測(cè)點(diǎn)1401開始。如圖14所示,ME搜索遵循某種螺旋波擴(kuò)展模式。在MPEG4中,MV被編碼為自預(yù)測(cè)點(diǎn)的差值R_MV=R_MV_X(Delta_X)+R_MV_Y(Delta_Y)。R_MV_X()和R_MV_Y()遵循相同VLC表R_MV(Delta),二者隨Delta單調(diào)增長(zhǎng)。在圖14中,如果R_MV(D)>=J_Best(迄今發(fā)現(xiàn)的最佳成本值),當(dāng)ME搜索波擴(kuò)展到達(dá)波陣面1402時(shí),可終止該搜索,因?yàn)樗袑?lái)的R_MV()將大于R_MV(D)。
在另一個(gè)實(shí)施例中,A*搜索方法可被用來(lái)以刪節(jié)搜索過程中被求值的點(diǎn)的數(shù)量。一般地,如果在任何既定點(diǎn)p的成本函數(shù)J(p)大于特定的界限B(p),并且如果B(p)>J_Best,迄今發(fā)現(xiàn)的最佳成本函數(shù)值,則點(diǎn)p可被跳過,而不犧牲任何質(zhì)量。注意,B(p)可以是某種變量,在點(diǎn)p的求值全部過程中增加,同時(shí)有關(guān)點(diǎn)p的更多信息被處理。在任何給定的時(shí)刻,如果滿足B(p)>J_Best,點(diǎn)p的計(jì)算可被停止。
相鄰保留掃描方法為了從前面的塊處理結(jié)果中獲得最佳的自適應(yīng)學(xué)習(xí)效果,如果按照一定的序列來(lái)掃描和處理這些塊,以保留空間和時(shí)間距離的順序關(guān)系,那么所學(xué)習(xí)的信息可能會(huì)更加有用。圖28示出了在二維視頻序列處理中實(shí)施一種相鄰保留掃描方法的示例。這里,塊2803根據(jù)2804所示的順序被掃描和處理。該方法的說(shuō)明如下(a)掃描n塊組(由n個(gè)塊構(gòu)成的組)的一行,正整數(shù)n從前一行結(jié)束的位置開始n塊組下一行。
(b)掃描完一幀之后,從前一幀結(jié)束的位置處開始下一幀的掃描,而且掃描這些行的順序與前一幀的相反。對(duì)每幀重復(fù)(a)和(b)。所示的掃描過程可以保留掃描序列中的相鄰關(guān)系,即掃描之后一維序列中的相鄰塊在原始的N維序列中也是空間或時(shí)間上相鄰的。一般地,相鄰保留掃描使下列條件的匹配最大化(a)掃描后一維序列中的相鄰塊在原始N維序列中也是鄰居。
(b)如果塊是同一幀中的相鄰塊(空間鄰居),或位于鄰近幀中相同位置(時(shí)間鄰居),兩個(gè)塊被認(rèn)為是鄰居。
這個(gè)示例性的掃描方法可被分層使用。
在一個(gè)實(shí)施例中,也可通過相同的方法在每個(gè)N維塊內(nèi)掃描N維塊本身。一般地,可允許該掃描方法具有多級(jí)層次結(jié)構(gòu)。一種示例性相鄰保留掃描方法也可被用于外圍圖像掃描設(shè)備,例如電荷耦合裝置(CCD)傳感器和CMOS傳感器,以準(zhǔn)備好與信號(hào)處理順序相匹配的輸入信號(hào)。這樣,從輸入傳感設(shè)備中移除幀緩沖器就成為可能。圖30表示我們的掃描方法應(yīng)用于CNOS或CCD圖像掃描的一個(gè)實(shí)施例。這里,在每個(gè)像素3001感知的光信號(hào)以保留相鄰關(guān)系的順序3002而被掃描出。
N維記憶裝置ME算法的實(shí)施在訪問參考緩沖存儲(chǔ)器時(shí)通常具有瓶頸。利用典型地以視頻算法在2維或3維目標(biāo)中組織的視頻流,基于存儲(chǔ)器的一維線性尋址不提供有效率的結(jié)果。為解決這個(gè)問題,在傳統(tǒng)的基于一維尋址的存儲(chǔ)器的基礎(chǔ)上開發(fā)了一種特殊的存儲(chǔ)器結(jié)構(gòu),即N維記憶裝置,以優(yōu)化ME算法幀緩沖器存取的存儲(chǔ)器訪問效率和存取模式的靈活性。當(dāng)然,該結(jié)構(gòu)的使用并不僅限于ME算法。任何N維數(shù)據(jù)處理均可利用該機(jī)制來(lái)實(shí)現(xiàn)靈活性和效率優(yōu)勢(shì)。
圖15說(shuō)明該存儲(chǔ)器訪問問題。一個(gè)2維的例子在該圖表中被用作示例,如在ME算法中。在視頻應(yīng)用程序中,視頻數(shù)據(jù)通常是以2維幀來(lái)組織,表示出在電視屏幕上任何情況的一個(gè)圖像。(圖15中的1501)在一個(gè)幀內(nèi)部,數(shù)據(jù)通常是以小于2維的塊被組織。這些塊通常尺寸是16×16或8×8。這些塊被形成為具有每個(gè)幀上的固定網(wǎng)格模式(圖15中的1502)。
在視頻算法中,必須以高效方式來(lái)訪問這些塊,如在1個(gè)單周期或單個(gè)猝發(fā)中得到所有像素。在視頻算法中,一個(gè)2維塊必須在不對(duì)齊固定網(wǎng)格的任何隨機(jī)位置被訪問,如圖15中1503所示。
電子存儲(chǔ)器(如SDRAM、SRAM等)是按照基于一維的尋址機(jī)制而被組織的,最多是以線性方式來(lái)對(duì)像素進(jìn)行同時(shí)訪問/猝發(fā),即訪問一行像素。利用存儲(chǔ)器中像素?cái)?shù)據(jù)分配的某些預(yù)先安排,在一個(gè)與該幀中的固定網(wǎng)格模式對(duì)齊的塊進(jìn)行猝發(fā)是可能的。但是,不可能在一個(gè)周期/一個(gè)猝發(fā)中訪問一個(gè)隨機(jī)位置的塊。
存儲(chǔ)器結(jié)構(gòu)方案的一個(gè)實(shí)施例的方框圖表示在圖16中。在該方框圖中,n維目標(biāo)存儲(chǔ)器被分成L個(gè)切片。每個(gè)存儲(chǔ)器切片是一個(gè)傳統(tǒng)的一維存儲(chǔ)器(如在SRAM中)。每個(gè)切片的數(shù)據(jù)寬度是該目標(biāo)的最小單元尺寸。在視頻中,該尺寸是(例如8比特的)一個(gè)像素。在其它應(yīng)用中,存儲(chǔ)器切片的總線寬度可以是任何尺寸。L切片組織的目的是允許在一個(gè)周期中(如果數(shù)據(jù)塊具有L個(gè)元素),或每個(gè)具有L個(gè)元素的多個(gè)訪問周期的一個(gè)猝發(fā)中訪問一個(gè)N維塊。實(shí)現(xiàn)該目的的問題在于如何將N維塊數(shù)據(jù)分配成L個(gè)切片。我們?yōu)榉峙涞矫總€(gè)切片的數(shù)據(jù)設(shè)定了2個(gè)條件(1)屬于同一塊的數(shù)據(jù)元素應(yīng)該被平均分配成L個(gè)切片,以使該塊中的L個(gè)數(shù)據(jù)元素能夠被無(wú)沖突地同時(shí)訪問。
(2)如果切片的數(shù)量L小于一個(gè)塊中數(shù)據(jù)元素的數(shù)量,例如如果B=L*M,其中B是一個(gè)塊中數(shù)據(jù)元素的數(shù)量,那么一個(gè)塊中的多個(gè)元素(M)會(huì)存在于同一個(gè)切片上。M個(gè)數(shù)據(jù)元素應(yīng)該被放置在一個(gè)切片的連續(xù)區(qū)域內(nèi),從而實(shí)現(xiàn)單個(gè)猝發(fā)的塊訪問。
基于一種示例性方法的數(shù)據(jù)分配示例被示于圖17中。在該圖中,示出了一個(gè)L=12的3×4的2維塊的示例??梢?,在一個(gè)單周期中可以訪問該幀中任意的3×4塊。L=6、M=2的另一個(gè)示例被表示在圖18中。在該例中,所有3×4的塊均由具有相同切片存儲(chǔ)器ID的2個(gè)元素組成。也就是說(shuō),該3×4的塊可在2個(gè)時(shí)鐘周期中被訪問。另外,如圖17和18所示,對(duì)一行中L個(gè)像素的任意訪問也可在一個(gè)時(shí)鐘周期中完成,因?yàn)樵谛邢袼丶胁淮嬖谇衅鎯?chǔ)器重疊。
一旦根據(jù)示例性方法完成了數(shù)據(jù)分配,就可設(shè)計(jì)地址轉(zhuǎn)換和數(shù)據(jù)多路控制,以反映圖16所示的分配模式。
在一個(gè)示例性實(shí)施例中,可以用參數(shù)來(lái)表示維度數(shù)目n、每個(gè)維度上塊尺寸的大小、以及存儲(chǔ)器切片的數(shù)目L,以適應(yīng)特定應(yīng)用所需要的任何可能的情況。
多級(jí)N維記憶裝置視頻ME算法具有下列一組獨(dú)特的要求,這將其與非實(shí)時(shí)CPU系統(tǒng)區(qū)別開來(lái)。
1.大容量2.大帶寬3.2維數(shù)據(jù)元素的隨機(jī)訪問
4.低成本在這些要求中,第二和第三項(xiàng)要求可通過先前所述的存儲(chǔ)機(jī)制解決。但是,如果僅使用N維存儲(chǔ)裝置,也許并不能滿足大容量和低成本方面的要求。另外,較大的切片數(shù)量L將提供較大的訪問帶寬,但同時(shí)也會(huì)增加成本。
可將傳統(tǒng)的多級(jí)高速緩沖存儲(chǔ)器結(jié)構(gòu)用于所述的N維存儲(chǔ)器中。n維記憶裝置的高速度和成本使之最適于用作最接近于處理引擎的最核心層次的存儲(chǔ)器。
用于該n維記憶裝置的一個(gè)示例性二級(jí)存儲(chǔ)器實(shí)施例被表示在圖19中。在這種機(jī)制中,對(duì)數(shù)據(jù)進(jìn)行組織,以便首先從第二級(jí)存儲(chǔ)器(例如一個(gè)SDRAM)中讀取數(shù)據(jù),并將其存儲(chǔ)在片上(on-chip)n維記憶裝置中。一旦數(shù)據(jù)存儲(chǔ)在n維記憶裝置中,那么數(shù)據(jù)就可被靈活地訪問,并被多次重復(fù)使用。這樣,就降低了對(duì)外部SDRAM帶寬和訪問模式靈活性的要求。
如果將SDRAM用作二級(jí)n維記憶裝置中的第二級(jí)存儲(chǔ)器時(shí),在SDRAM使用中需要精心設(shè)置某些細(xì)節(jié)來(lái)支持n維數(shù)據(jù)結(jié)構(gòu),并克服SDRAM架構(gòu)的限制。由于SDRAM設(shè)計(jì)架構(gòu)方面的原因,存在與SDRAM訪問有關(guān)的開銷。典型的是,SDRAM訪問包括下列操作,每個(gè)操作所具有的各種延遲都會(huì)在猝發(fā)之間產(chǎn)生開銷(1)先前訪問的存儲(chǔ)體(memory bank)的預(yù)先充電(2)發(fā)送RAS命令(3)發(fā)送CAS命令沒有像素?cái)?shù)據(jù)的適當(dāng)安排,猝發(fā)訪問之間的開銷可能是非常高的。另一方面,SDRAM提供了多存儲(chǔ)體的存儲(chǔ)結(jié)構(gòu),允許獨(dú)立地發(fā)出命令和預(yù)先充電。利用幀的像素?cái)?shù)據(jù)的適當(dāng)組織,SDRAM訪問開銷可被最小化。為做到這點(diǎn),我們?nèi)缭趫D20中固定SDRAM中的幀緩沖器數(shù)據(jù)分配模式。一個(gè)幀緩沖器首先被預(yù)先分成固定尺寸的塊(16×16、8×8或其它固定尺寸),每個(gè)塊被分配到一個(gè)SDRAM存儲(chǔ)器的存儲(chǔ)體中。圖20中的示例表示8×8的塊。這些塊被對(duì)齊到固定網(wǎng)格模式,如圖15的1502所示。這些塊被有順序地排列成有順序的存儲(chǔ)體ID,如圖20所示。在一個(gè)塊內(nèi),像素?cái)?shù)據(jù)以圖21所示的順序被排列。
藉此,下面列出的對(duì)SDRAM的訪問模式是以零開銷方式完成的(1)塊猝發(fā)整個(gè)塊被連續(xù)地排列在一個(gè)存儲(chǔ)體中。因此,只需利用一個(gè)單個(gè)猝發(fā)即可完成整個(gè)塊的訪問。
(2)有順序的塊猝發(fā)光柵掃描順序中的多個(gè)塊猝發(fā)(如圖20所示)是利用多個(gè)猝發(fā)實(shí)現(xiàn)的。由于每個(gè)塊是被分配到不同的存儲(chǔ)體中,所以這些猝發(fā)命令是由管道傳送的,不存在開銷問題。
(3)行訪問可利用多個(gè)猝發(fā)來(lái)訪問相同線上的一行像素。此外,多個(gè)猝發(fā)屬于不同的存儲(chǔ)體,因此進(jìn)行跨猝發(fā)的管道傳送是可能的。是否存在零開銷取決于塊內(nèi)的猝發(fā)長(zhǎng)度,以及SDRAM的CAS和RAS延遲。
盡管對(duì)外部SDRAM的訪問可以具有非常有限的訪問模式,但是對(duì)于將SDRAM作為第二或更高級(jí)別存儲(chǔ)器的多級(jí)N維記憶裝置而言,一旦將數(shù)據(jù)從SDRAM讀到N維記憶裝置中,數(shù)據(jù)訪問就會(huì)非常靈活。
ME搜索的平行螺旋模式(PSP)陣列處理器在一個(gè)實(shí)施例中提出了一種結(jié)構(gòu),以降低利用平行螺旋搜索模式和陣列處理器的ME算法中對(duì)參考帶寬的需求。該方案可允許多個(gè)處理器共享來(lái)自參考緩沖器的相同數(shù)據(jù)輸出,如圖22所示。
在一個(gè)實(shí)施例中,可以利用ME算法中的固定搜索/訪問模式的特點(diǎn)。共享二級(jí)存儲(chǔ)器輸出的方法是預(yù)先規(guī)定ME算法中搜索模式,以使多個(gè)搜索點(diǎn)被平行或并行地處理。傳統(tǒng)上,ME算法利用各種算法。一種實(shí)施方式利用了螺旋搜索,其遵循預(yù)先規(guī)定的搜索路線,直到最終發(fā)現(xiàn)最佳搜索點(diǎn)。圖23示出了一個(gè)操作尺寸為4像素的螺旋搜索。為允許具有固定訪問存儲(chǔ)器的訪問模式的平行搜索,本發(fā)明利用一種搜索模式,即“平行螺旋搜索”。
圖24示出了平行螺旋模式的一個(gè)示例,該平行螺旋模式具有平行的P個(gè)搜索點(diǎn),在該例中P=9。利用固定的3×3網(wǎng)格模式中平行處理的P搜索點(diǎn),輸入數(shù)據(jù)可被進(jìn)一步分析,以增強(qiáng)共享和降低存儲(chǔ)器帶寬使用。
該概念的一個(gè)示例被表示在圖25中。圖中的每個(gè)搜索點(diǎn)規(guī)定了成本函數(shù)將被執(zhí)行的位置。在該例中,可以假定成本函數(shù)是基于一個(gè)尺寸為16×16的塊。搜索點(diǎn)1、2和3共享每行中24個(gè)像素中的16個(gè)像素。這樣,當(dāng)從參考緩沖器讀取第一行時(shí),其被全部3個(gè)搜索點(diǎn)1、2和3共享。從第5行開始,數(shù)據(jù)被搜索點(diǎn)1、2、3、4、5和6共享。從第9行開始,被全部9個(gè)搜索點(diǎn)共享。由于9個(gè)搜索點(diǎn)是以固定的3×3網(wǎng)格排列,參考緩沖器的訪問模式是固定的,并容易設(shè)計(jì)為重新使用數(shù)據(jù),當(dāng)數(shù)據(jù)被從緩沖器讀取時(shí)。
注意,在基于平行螺旋搜索模式的該陣列處理結(jié)構(gòu)中,搜索模式操作尺寸,X、Y方向上的陣列尺寸是可被設(shè)定為任何值的所有參數(shù)。
用于ME搜索具有N維存儲(chǔ)器的PSP陣列處理器可替代地,PSP陣列處理器也可參加一列數(shù)據(jù),或一個(gè)數(shù)據(jù)塊(如4×4),如果一個(gè)N維存儲(chǔ)器與平行螺旋陣列處理器一起被使用。該組合的一個(gè)實(shí)施例表示在圖26中。
使用具有N維記憶裝置的平行螺旋陣列處理器可以獲得更好的性能。在沒有N維記憶裝置的情況下,該陣列處理器僅能讀取和共享一行或一列的數(shù)據(jù)。假定參考緩沖器的數(shù)據(jù)寬度為16像素,即提供輸入數(shù)據(jù)時(shí)是一次提供16像素??紤]圖25中的情況。如果沒有可用的N維記憶裝置,每次就只能讀取一行或一列的16個(gè)像素。為了訪問全部24行、每行24個(gè)像素,9個(gè)處理器就需要和共享48個(gè)周期。這樣,每個(gè)處理器的周期數(shù)量就是48/9=5.33。
如果N維記憶裝置可用,從而允許在一個(gè)周期中訪問一個(gè)4×4塊(如圖26所示),那么總共需要36個(gè)周期。在這種情況下,每個(gè)處理器的周期數(shù)量為36/9=4。注意,在不存在PSP和陣列處理器的情況下,周期數(shù)量為每個(gè)處理器16個(gè)周期。該性能對(duì)單獨(dú)PSP處理器從16改進(jìn)到5.33,對(duì)具有N維存儲(chǔ)的PSP改進(jìn)到4??傊?,這種陣列處理器架構(gòu)可被單獨(dú)使用,或者如此處所述,可以與N維存儲(chǔ)器一起使用。與傳統(tǒng)的單螺旋點(diǎn)搜索模式相比,利用帶二級(jí)存儲(chǔ)器的陣列處理器的平行螺旋模式可使ME算法的執(zhí)行效率更高,以搜索更多的點(diǎn),從而獲得更高的壓縮性能。
還要注意的是,本文描述的實(shí)施例不僅可以實(shí)施在物理電路(例如半導(dǎo)體芯片)中,而且也可以實(shí)施在機(jī)器可讀介質(zhì)中。例如,上面所討論的電路和設(shè)計(jì)可以存儲(chǔ)在和/或嵌入在與用于設(shè)計(jì)半導(dǎo)體器件的設(shè)計(jì)工具有關(guān)的機(jī)器可讀介質(zhì)中。具體示例包括以“VHSIC硬件描述語(yǔ)言”(VHDL)語(yǔ)言、Verilog語(yǔ)言或SPICE語(yǔ)言表現(xiàn)的網(wǎng)表(netlist)。部分網(wǎng)表示例包括行為層網(wǎng)表、寄存器傳送層(RTL)網(wǎng)表、柵層網(wǎng)表、以及晶體管層網(wǎng)表。機(jī)器可讀介質(zhì)也包括具有布局信息例如GDS-II文件的介質(zhì)。此外,用于半導(dǎo)體芯片設(shè)計(jì)的網(wǎng)表文件或其它機(jī)器可讀介質(zhì)可使用在仿真環(huán)境中,以執(zhí)行本文所述原理的各種方法。
因此,也應(yīng)理解的是,本發(fā)明的實(shí)施例可被用作或支持在某種形式的處理核(例如計(jì)算機(jī)的CPU)上執(zhí)行的軟件程序,或在機(jī)器可讀介質(zhì)上或其中實(shí)施或?qū)崿F(xiàn)的軟件程序。機(jī)器可讀介質(zhì)包括存儲(chǔ)或傳輸機(jī)器(如計(jì)算機(jī))可讀形式信息的任何裝置或機(jī)制。例如,機(jī)器可讀介質(zhì)包括只讀存儲(chǔ)器(ROM),隨機(jī)訪問存儲(chǔ)器(RAM),磁盤存儲(chǔ)介質(zhì),光存儲(chǔ)器,閃存裝置,電子、光學(xué)、聲學(xué)或其它形式的傳播信號(hào)(例如載波、紅外信號(hào)、數(shù)字信號(hào)等)等等。
至此,本文已描述了自適應(yīng)多維信號(hào)序列編碼和解碼的方法和系統(tǒng)。盡管本發(fā)明的描述參考了具體的示例性實(shí)施例,但是顯然,在不脫離本發(fā)明的更廣泛的精神和范圍的情況下,可對(duì)這些實(shí)施例做出各種修改和變化。因此,應(yīng)該以一種說(shuō)明性的而非限制性的角度來(lái)看待本發(fā)明的說(shuō)明書和附圖。
參考文獻(xiàn)[1]Iaiain E.G.Richardson,Video Codec Design,John Willey&Sons,Ltd.,2002,1983[2]Douglas F.Elliott and K.Ramamohan Rao,F(xiàn)ast TransformsAlgorithms,Analyses,APPlications,Academic Press,1983[3]Bernard Widrow and Samuel D.Steams,Adaptive SignalProcessing,Prentice-Hall,Inc.,1985[4]John von Neumann,″Theory of Self-Reproducing Automata″,edited and completed by Arthur W.Burks,University of Illinois Press,Urbana and London,1966[5]Tsu-Chang Lee,Structure Level Adaptation for Artifcial N6uralN6tworks,Kluwer Academic Publishers,1991[6]Nils J.Nilsson,Principles of Artificial Intelligence,MorganKaufmann,198權(quán)利要求
1.一種處理信號(hào)序列的系統(tǒng),該系統(tǒng)包括一個(gè)接收信號(hào)序列的區(qū)分器,所述信號(hào)序列包括一個(gè)n維當(dāng)前幀,所述n維當(dāng)前幀包括多個(gè)當(dāng)前幀塊和多個(gè)n維參考幀,所述多個(gè)n維參考幀中的每一幀包括多個(gè)參考幀塊;一個(gè)存儲(chǔ)所述多個(gè)n維參考幀的幀緩沖器;一個(gè)塊匹配預(yù)測(cè)器,其為所述多個(gè)當(dāng)前幀塊中的每一塊識(shí)別所述多個(gè)參考幀塊中的一個(gè)預(yù)測(cè)塊,并為所述多個(gè)當(dāng)前幀塊中每一塊的相應(yīng)預(yù)測(cè)塊確定一個(gè)參考位移索引和一個(gè)塊預(yù)測(cè)差值,其中所述參考位移索引用以識(shí)別所述參考幀塊內(nèi)的一個(gè)點(diǎn);一個(gè)塊編碼器,其對(duì)所述多個(gè)當(dāng)前幀塊中每一塊的相應(yīng)塊預(yù)測(cè)差值和相應(yīng)參考位移索引進(jìn)行編碼,并藉此創(chuàng)建多個(gè)編碼塊;和一個(gè)序列編碼器,其根據(jù)預(yù)定格式把所述多個(gè)編碼塊打包在一起。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),包括一個(gè)序列解碼器,其根據(jù)所述預(yù)定格式對(duì)所述多個(gè)編碼塊進(jìn)行解包;和一個(gè)塊解碼器,其利用相應(yīng)的塊預(yù)測(cè)差值和相應(yīng)的參考位移索引對(duì)所述多個(gè)編碼塊中的每一塊進(jìn)行解碼。
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述預(yù)測(cè)塊被識(shí)別,從而使利用所述多個(gè)參考幀塊對(duì)一個(gè)當(dāng)前幀塊進(jìn)行編碼所需的信息量減至最小。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其包括一個(gè)成本估計(jì)組件,以確定識(shí)別所述預(yù)測(cè)塊的計(jì)算強(qiáng)度,所述成本估計(jì)組件利用了一個(gè)成本函數(shù)。
5.根據(jù)權(quán)利要求4所述的系統(tǒng),其中所述成本估計(jì)組件是利用基于一個(gè)或多個(gè)參數(shù)的一個(gè)估計(jì),所述參數(shù)選自包括所述塊預(yù)測(cè)差值的一個(gè)或多個(gè)特性值和所述塊匹配預(yù)測(cè)器的一個(gè)或多個(gè)狀態(tài)的的線性組合的組中。
6.根據(jù)權(quán)利要求4所述的系統(tǒng),其中所述成本函數(shù)是基于至少一個(gè)表查詢,所述表查詢具有所述塊預(yù)測(cè)差值的特性值和所述塊匹配預(yù)測(cè)器的一個(gè)或多個(gè)狀態(tài)指定的表?xiàng)l目。
7.根據(jù)權(quán)利要求3所述的系統(tǒng),其中利用所述多個(gè)參考幀塊對(duì)所述當(dāng)前幀塊進(jìn)行編碼所需的信息量是由相應(yīng)塊預(yù)測(cè)差值的比特速率與相應(yīng)參考位移索引的比特速率之和確定的。
8.根據(jù)權(quán)利要求1所述的系統(tǒng),其包括一個(gè)系數(shù)去相關(guān)轉(zhuǎn)換組件,以在對(duì)轉(zhuǎn)換的N維系數(shù)進(jìn)行編碼之前,利用N維系數(shù)去相關(guān)轉(zhuǎn)換T來(lái)轉(zhuǎn)換所述塊預(yù)測(cè)差值。
9.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器能夠處理各種形狀和尺寸的塊。
10.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述系數(shù)去相關(guān)轉(zhuǎn)換組件能夠處理各種形狀和尺寸的塊。
11.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述系數(shù)去相關(guān)轉(zhuǎn)換組件將利用具有有關(guān)形狀和尺寸的塊,所述有關(guān)形狀和尺寸是由所述塊匹配預(yù)測(cè)器選擇的。
12.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述系數(shù)去相關(guān)轉(zhuǎn)換組件是根據(jù)一個(gè)或多個(gè)系統(tǒng)性能要求來(lái)利用一種轉(zhuǎn)換方法。
13.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述塊編碼器是利用N維折線掃描和游程長(zhǎng)度編碼對(duì)轉(zhuǎn)換的N維系數(shù)進(jìn)行編碼。
14.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述轉(zhuǎn)換T是一個(gè)N維離散余弦變換DCT。
15.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述轉(zhuǎn)換T是N維離散哈達(dá)馬變換DHT。
16.根據(jù)權(quán)利要求4所述的系統(tǒng),其中所述成本函數(shù)J的形式如下J=Rdc(DC)+Rac(AC)+Rri(參考索引)其中Rdc(DC)是所述塊預(yù)測(cè)差值的DC系數(shù)的速率;Rac(AC)是所述塊預(yù)測(cè)差值的AC系數(shù)的速率;而Rri(參考索引)是所述參考索引的速率。
17.根據(jù)權(quán)利要求16所述的系統(tǒng),其中Rac(AC)可被估計(jì)為AC_NORM(Rac(AC_NORM)),其中AC_NORM是所述塊預(yù)測(cè)差值的AC部件的NORM。
18.根據(jù)權(quán)利要求17所述的系統(tǒng),其中Rac(AC_NORM)是AC_NORM的線性函數(shù)或者是AC_NORM的分段線性函數(shù)。
19.根據(jù)權(quán)利要求18所述的系統(tǒng),其中Rac(AC_NORM)的形式如下Rac(AC_NORM)=K*(AC_NORM-AC_THRESHOLD)/QP_ac其中AC_THRESHOLD能夠可選地從所述估計(jì)中移除。
20.根據(jù)權(quán)利要求19所述的系統(tǒng),其中所述K能夠通過基于實(shí)際速率的最小均方LMS算法調(diào)節(jié),以致ΔK=μ*Error*(AC_NORM-AC_THRESHOLD)/QP_ac其中Error是所述速率估計(jì)誤差,所述μ是一個(gè)學(xué)習(xí)因子,并且Error=Actual_AC_Rate-Rac(AC_NORM)。
21.根據(jù)權(quán)利要求19所述的系統(tǒng),其中利用實(shí)際的AC速率和AC_NORM可調(diào)節(jié)所述AC_THRESHOLD。
22.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述AC_NORM是L1NORM,所述L1 NORM是所述塊預(yù)測(cè)差值中每個(gè)分量的絕對(duì)值之和。
23.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述AC_NORM是L2NORM,所述L2 NORM是所述塊預(yù)測(cè)差值中每個(gè)分量的平方之和。
24.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述系統(tǒng)適合用于對(duì)二維視頻序列進(jìn)行編碼。
25.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器對(duì)所述多個(gè)參考幀中一個(gè)或多個(gè)參考幀內(nèi)的一個(gè)或多個(gè)點(diǎn)進(jìn)行求值。
26.根據(jù)權(quán)利要求25所述的系統(tǒng),其中所述多個(gè)參考幀中一個(gè)或多個(gè)參考幀內(nèi)的一個(gè)或多個(gè)點(diǎn)的求值包括了一種鄰居開拓操作,所述鄰居開拓操作包括利用響應(yīng)一個(gè)相鄰塊而獲得的結(jié)果對(duì)所述目標(biāo)參考?jí)K求值。
27.根據(jù)權(quán)利要求26所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器是利用與所述相鄰塊有關(guān)的參考位移索引對(duì)所述目標(biāo)參考?jí)K求值。
28.根據(jù)權(quán)利要求27所述的系統(tǒng),其中所述鄰居開拓操作是利用與所述相鄰塊有關(guān)的參考位移索引對(duì)所述目標(biāo)參考?jí)K的目標(biāo)系統(tǒng)對(duì)象進(jìn)行求值,以確定所述目標(biāo)參考?jí)K是否是所述預(yù)測(cè)塊。
29.根據(jù)權(quán)利要求28所述的系統(tǒng),其包括識(shí)別由所述參考位移索引所指示的一個(gè)目標(biāo)點(diǎn);和對(duì)鄰近點(diǎn)進(jìn)行求值,所述鄰近點(diǎn)是直接與所述目標(biāo)點(diǎn)相鄰。
30.根據(jù)權(quán)利要求29所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器執(zhí)行詳細(xì)搜索操作,所述詳細(xì)搜索操作對(duì)所述目標(biāo)點(diǎn)周圍的區(qū)域進(jìn)行求值。
31.根據(jù)權(quán)利要求30所述的系統(tǒng),其中所述詳細(xì)搜索操作包括在每個(gè)維度上以步長(zhǎng)2來(lái)識(shí)別所述目標(biāo)點(diǎn)周圍的一個(gè)最佳點(diǎn);和對(duì)直接鄰近所述目標(biāo)點(diǎn)的一個(gè)或多個(gè)點(diǎn)進(jìn)行求值。
32.根據(jù)權(quán)利要求25所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器執(zhí)行全局搜索操作,所述全局搜索操是響應(yīng)用于多個(gè)點(diǎn)求值的一個(gè)閾值的建立而被執(zhí)行的。
33.根據(jù)權(quán)利要求32所述的系統(tǒng),其中所述全局搜索操作包括一個(gè)N級(jí)分層搜索。
34.根據(jù)權(quán)利要求33所述的系統(tǒng),其中所述N級(jí)分層搜索可在級(jí)別K>0時(shí)停止。
35.根據(jù)權(quán)利要求32所述的系統(tǒng),其中所述閾值是通過所述鄰居開拓操作的最佳結(jié)果來(lái)建立的。
36.根據(jù)權(quán)利要求32所述的系統(tǒng),其中所述閾值是通過所述詳細(xì)搜索操作的最佳結(jié)果來(lái)建立的。
37.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述方法適合用于對(duì)二維視頻序列進(jìn)行編碼。
38.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器包括一個(gè)碎片點(diǎn)預(yù)測(cè)器;和所述參考幀包括多個(gè)網(wǎng)格點(diǎn)和多個(gè)碎片點(diǎn)。
39.根據(jù)權(quán)利要求38所述的系統(tǒng),其中來(lái)自所述多個(gè)碎片點(diǎn)的一個(gè)碎片點(diǎn)上的信號(hào)是根據(jù)一個(gè)或多個(gè)完整網(wǎng)格點(diǎn)或者根據(jù)一個(gè)或多個(gè)先前插值的網(wǎng)格點(diǎn)而被插值的。
40.根據(jù)權(quán)利要求39所述的系統(tǒng),其中所述碎片點(diǎn)是利用雙線性插值而被插值的。
41.根據(jù)權(quán)利要求39所述的系統(tǒng),其中所述碎片點(diǎn)是利用多分支插值而被插值的。
42.根據(jù)權(quán)利要求39所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器是利用第一插值機(jī)制對(duì)來(lái)自所述多個(gè)碎片點(diǎn)的一個(gè)或多個(gè)碎片點(diǎn)進(jìn)行求值,以選擇最佳點(diǎn),并且利用第二插值機(jī)制來(lái)計(jì)算所述塊預(yù)測(cè)差值。
43.根據(jù)權(quán)利要求42所述的系統(tǒng),其中所述第一插值機(jī)制是基于雙線性插值,而所述第二插值機(jī)制是基于多分支插值。
44.根據(jù)權(quán)利要求39所述的系統(tǒng),其中所述第二插值機(jī)制能夠被自適應(yīng)地從一組插值中選擇,以對(duì)目標(biāo)系統(tǒng)對(duì)象進(jìn)行優(yōu)化。
45.根據(jù)權(quán)利要求1所述的系統(tǒng),其包括一個(gè)編碼反饋控制單元,以動(dòng)態(tài)地調(diào)節(jié)一個(gè)或多個(gè)編碼參數(shù),其中所述一個(gè)或多個(gè)編碼參數(shù)是根據(jù)一個(gè)或多個(gè)條件而被調(diào)節(jié)的,所述一個(gè)或多個(gè)條件選自包括從所述塊編碼器獲得的一個(gè)或多個(gè)反饋參數(shù)和一組編碼器監(jiān)測(cè)參數(shù)的組中。
46.根據(jù)權(quán)利要求45所述的系統(tǒng),其中所述編碼反饋控制單元包括一個(gè)自適應(yīng)塊匹配控制單元,以根據(jù)從所選擇的一個(gè)或多個(gè)條件動(dòng)態(tài)地調(diào)節(jié)一個(gè)或多個(gè)預(yù)測(cè)處理參數(shù),所述一個(gè)或多個(gè)條件選自包括從所述塊編碼器獲得的一個(gè)或多個(gè)反饋參數(shù)和一組編碼器監(jiān)測(cè)參數(shù)的組中。
47.根據(jù)權(quán)利要求46所述的系統(tǒng),其中所述塊匹配控制單元是基于來(lái)自先前編碼幀的一個(gè)或多個(gè)搜索特征,為所述當(dāng)前幀在每個(gè)維度上調(diào)節(jié)一個(gè)搜索范圍。
48.根據(jù)權(quán)利要求47所述的系統(tǒng),其中所述當(dāng)前幀的每個(gè)維度上的所述搜索范圍是基于來(lái)自先前編碼幀的運(yùn)動(dòng)矢量分布的函數(shù)而被調(diào)節(jié)的。
49.根據(jù)權(quán)利要求46所述的系統(tǒng),其中所述塊匹配控制單元根據(jù)來(lái)自所述塊編碼器的反饋,來(lái)調(diào)節(jié)由所述成本估計(jì)組件所利用的一個(gè)成本函數(shù)。
50.根據(jù)權(quán)利要求49所述的系統(tǒng),其中所述塊匹配控制單元根據(jù)所述塊編碼器創(chuàng)建的一個(gè)實(shí)際成本函數(shù)值與一個(gè)估計(jì)的成本值之間的誤差,來(lái)調(diào)節(jié)所述成本函數(shù)的參數(shù),所述估計(jì)成本值是利用所述參數(shù)表示的成本函數(shù)來(lái)計(jì)算的。
51.根據(jù)權(quán)利要求49所述的系統(tǒng),其中所述成本函數(shù)利用最小均方LMS算法被組織和調(diào)節(jié)。
52.根據(jù)權(quán)利要求46所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器控制單元?jiǎng)討B(tài)地調(diào)節(jié)一個(gè)或多個(gè)處理參數(shù),從而為塊預(yù)測(cè)處理分配和調(diào)度處理周期。
53.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器根據(jù)一個(gè)提前終止條件來(lái)終止處理。
54.根據(jù)權(quán)利要求53所述的系統(tǒng),其中所述提前終止條件包括一個(gè)跳過條件,所述跳過條件指示根據(jù)一個(gè)跳過閾值,所述當(dāng)前塊可由先前的塊表示。
55.根據(jù)權(quán)利要求54所述的系統(tǒng),其中所述跳過閾值根據(jù)來(lái)自所述塊編碼器的反饋是動(dòng)態(tài)可調(diào)的。
56.根據(jù)權(quán)利要求53所述的系統(tǒng),其中所述提前終止條件包括一個(gè)良好匹配條件,所述良好匹配條件指示一個(gè)成本函數(shù)值小于一個(gè)預(yù)先確定的良好匹配閾值。
57.根據(jù)權(quán)利要求56所述的系統(tǒng),其中所述良好匹配閾值能夠根據(jù)先前求值塊的特性值的移動(dòng)窗口平均值的函數(shù)被動(dòng)態(tài)地調(diào)節(jié)。
58.根據(jù)權(quán)利要求57所述的系統(tǒng),其中所述特性值是先前求值塊的最佳成本函數(shù)值。
59.根據(jù)權(quán)利要求53所述的系統(tǒng),其中所述提前終止條件包括一個(gè)放棄條件,所述放棄條件是響應(yīng)這樣一個(gè)決定,即進(jìn)一步搜索產(chǎn)生的成本函數(shù)值將不會(huì)低于迄今發(fā)現(xiàn)的最佳成本值,而被觸發(fā)的。
60.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器基于A*算法跳過搜索點(diǎn)。
61.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器利用平行螺旋搜索過程對(duì)參考幀進(jìn)行求值。
62.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述塊匹配預(yù)測(cè)器利用一個(gè)處理器陣列對(duì)所述參考幀中多個(gè)點(diǎn)上的系統(tǒng)對(duì)象求值,所述處理器陣列包括一個(gè)或多個(gè)信號(hào)處理單元,以處理N維數(shù)據(jù)輸入。
63.一種存儲(chǔ)系統(tǒng),其包括n維存儲(chǔ)器,所述n維存儲(chǔ)器包括一個(gè)或多個(gè)存儲(chǔ)切片,以允許在一個(gè)時(shí)鐘周期中在每個(gè)切片中存儲(chǔ)或取出一個(gè)數(shù)據(jù)項(xiàng);組織一個(gè)n維幀內(nèi)的n維數(shù)據(jù)以允許一個(gè)既定立方體內(nèi)的所有數(shù)據(jù)在多個(gè)周期中被訪問的裝置,所述立方體可位于該n維幀中的任何地方,其中周期的數(shù)量被確定為該立方體內(nèi)的全部點(diǎn)數(shù)除以存儲(chǔ)切片的數(shù)量;一個(gè)尋址轉(zhuǎn)換模塊,其基于n維地址輸入從所述一個(gè)或多個(gè)存儲(chǔ)切片中訪問數(shù)據(jù);以及一個(gè)數(shù)據(jù)多路復(fù)用器/多路分離器,以將來(lái)自所述一個(gè)或多個(gè)切片的數(shù)據(jù)流橋接到利用n維數(shù)據(jù)的一個(gè)或多個(gè)外部處理模塊。
64.根據(jù)權(quán)利要求53所述的系統(tǒng),其包括至少一個(gè)級(jí)別的塊存儲(chǔ)器,從而以塊的形式存儲(chǔ)數(shù)據(jù),所述塊存儲(chǔ)器被連接到所述n維存儲(chǔ)器;一個(gè)尋址轉(zhuǎn)換模塊,以訪問所述塊存儲(chǔ)器和所述n維存儲(chǔ)器中的數(shù)據(jù);以及一個(gè)數(shù)據(jù)多路復(fù)用器/多路分離器,以將來(lái)自所述n維存儲(chǔ)器的數(shù)據(jù)流橋接到所述塊存儲(chǔ)器。
65.根據(jù)權(quán)利要求64所述的系統(tǒng),其中所述塊存儲(chǔ)器是SDRAM。
66.根據(jù)權(quán)利要求63所述的系統(tǒng),其中所述存儲(chǔ)系統(tǒng)適于存儲(chǔ)二維圖像。
67.一種系統(tǒng),其包括一個(gè)處理陣列,該處理陣列包括一個(gè)或多個(gè)信號(hào)處理單元,以處理n維數(shù)據(jù)輸入;一個(gè)或多個(gè)數(shù)據(jù)寄存器,其為所述信號(hào)處理單元存儲(chǔ)數(shù)據(jù);以及控制所述處理陣列的裝置,其允許一個(gè)數(shù)據(jù)元素由所述陣列中一個(gè)以上的處理器使用。
68.根據(jù)權(quán)利要求67所述的系統(tǒng),其中所述處理陣列處理來(lái)自一個(gè)n維存儲(chǔ)器的數(shù)據(jù),其中所述n維存儲(chǔ)器包括一個(gè)或多個(gè)存儲(chǔ)切片,以允許在一個(gè)時(shí)鐘周期中在每個(gè)切片中存儲(chǔ)或取出一個(gè)數(shù)據(jù)項(xiàng);組織一個(gè)n維幀內(nèi)的n維數(shù)據(jù)以允許一個(gè)既定立方體內(nèi)的所有數(shù)據(jù)在多個(gè)周期中被訪問的裝置,所述立方體可位于該n維幀中的任何地方,其中周期的數(shù)量被確定為該立方體內(nèi)的全部點(diǎn)數(shù)除以存儲(chǔ)切片的數(shù)量;一個(gè)尋址轉(zhuǎn)換模塊,其基于n維地址輸入從所述一個(gè)或多個(gè)存儲(chǔ)切片中訪問數(shù)據(jù);以及一個(gè)數(shù)據(jù)多路復(fù)用器/多路分離器,以將來(lái)自所述一個(gè)或多個(gè)切片的數(shù)據(jù)流橋接到利用n維數(shù)據(jù)的一個(gè)或多個(gè)外部處理模塊。
69.根據(jù)權(quán)利要求67所述的系統(tǒng),其中所述處理陣列處理來(lái)自多級(jí)n維存儲(chǔ)器的數(shù)據(jù),其中所述多級(jí)n維存儲(chǔ)器包括至少一個(gè)級(jí)別的塊存儲(chǔ)器,從而以塊的形式存儲(chǔ)數(shù)據(jù),所述塊存儲(chǔ)器被連接到所述n維存儲(chǔ)器;一個(gè)尋址轉(zhuǎn)換模塊,以訪問所述塊存儲(chǔ)器和所述n維存儲(chǔ)器中的數(shù)據(jù);以及一個(gè)數(shù)據(jù)多路復(fù)用器/多路分離器,以將來(lái)自所述n維存儲(chǔ)器的數(shù)據(jù)流橋接到所述塊存儲(chǔ)器。
70.根據(jù)權(quán)利要求67所述的系統(tǒng),其中所述系統(tǒng)適于對(duì)二維視頻序列進(jìn)行編碼。
71.一種方法,其包括接收一個(gè)n維幀序列,該n維幀序列包含一個(gè)原始n維幀;并且以保存所述原始n維幀內(nèi)塊的相鄰關(guān)系的順序,來(lái)掃描所述n維幀序列,使其成為一個(gè)一維的塊序列。
72.根據(jù)權(quán)利要求71所述的方法,其中如果兩個(gè)塊是空間上或時(shí)間上的鄰居,那么它們就被認(rèn)為是鄰居。
73.根據(jù)權(quán)利要求71所述的方法,其中所述方法適于對(duì)二維視頻序列進(jìn)行編碼。
74.根據(jù)權(quán)利要求73所述的方法,其中所述的掃描所述n維幀序列使其成為一個(gè)一維的塊序列的步驟包括掃描來(lái)自所述n維幀序列的一組塊中第一行的點(diǎn);識(shí)別這組塊中第二行的點(diǎn),識(shí)別所述第二行的點(diǎn)的開端位于所述第一行結(jié)束的位置處。
75.根據(jù)權(quán)利要求74所述的方法,其包括對(duì)完成所述n維幀序列的第一幀的掃描做出響應(yīng);對(duì)所述n維幀序列的第二幀進(jìn)行掃描,識(shí)別所述第一幀結(jié)束處的所述第二幀的開端;并且掃描所述第二幀中各行的點(diǎn),掃描順序與掃描所述第一幀時(shí)的順序相反。
76.一種處理信號(hào)序列的方法,其包括接收一個(gè)信號(hào)序列,所述信號(hào)序列包括一個(gè)n維當(dāng)前幀,所述n維當(dāng)前幀包括多個(gè)當(dāng)前幀塊和多個(gè)n維參考幀,所述多個(gè)n維參考幀中的每一幀包括多個(gè)參考幀塊;存儲(chǔ)所述多個(gè)n維參考幀;為所述多個(gè)當(dāng)前幀塊中的每一塊識(shí)別所述多個(gè)參考幀塊中的一個(gè)預(yù)測(cè)塊;為所述多個(gè)當(dāng)前幀塊中每一塊的相應(yīng)預(yù)測(cè)塊確定一個(gè)參考位移索引和一個(gè)塊預(yù)測(cè)差值,其中所述參考位移索引用于識(shí)別參考幀塊內(nèi)的一個(gè)點(diǎn);為所述多個(gè)當(dāng)前幀塊中的每一塊,對(duì)其相應(yīng)的塊預(yù)測(cè)差值和相應(yīng)的參考位移索引進(jìn)行編碼,并藉此創(chuàng)建多個(gè)編碼塊;并且根據(jù)預(yù)定格式把所述多個(gè)編碼塊打包在一起。
77.一種處理信號(hào)序列的系統(tǒng),其包括用于接收一個(gè)信號(hào)序列的裝置,所述信號(hào)序列包括一個(gè)n維當(dāng)前幀,所述n維當(dāng)前幀包括多個(gè)當(dāng)前幀塊和多個(gè)n維參考幀,所述多個(gè)n維參考幀中的每一幀包括多個(gè)參考幀塊;存儲(chǔ)所述多個(gè)n維參考幀的裝置;為所述多個(gè)當(dāng)前幀塊中的每一塊識(shí)別所述多個(gè)參考幀塊中一個(gè)預(yù)測(cè)塊的裝置;為所述多個(gè)當(dāng)前幀塊中每一塊的相應(yīng)預(yù)測(cè)塊確定一個(gè)參考位移索引和一個(gè)塊預(yù)測(cè)差值的裝置,其中所述參考位移索引用于識(shí)別參考幀塊內(nèi)的一個(gè)點(diǎn);為所述多個(gè)當(dāng)前幀塊中的每一塊、對(duì)其相應(yīng)塊預(yù)測(cè)差值和相應(yīng)參考位移索引進(jìn)行編碼的裝置,并藉此創(chuàng)建多個(gè)編碼塊;以及根據(jù)預(yù)定格式把所述多個(gè)編碼塊打包在一起的裝置。
78.一種存有電路描述的機(jī)器可讀介質(zhì),所述電路包括一個(gè)用于接收信號(hào)序列的區(qū)分器,所述信號(hào)序列包括一個(gè)n維當(dāng)前幀,所述n維當(dāng)前幀包括多個(gè)當(dāng)前幀塊和多個(gè)n維參考幀,所述多個(gè)n維參考幀中的每一幀包括多個(gè)參考幀塊;一個(gè)存儲(chǔ)所述多個(gè)n維參考幀的幀緩沖器;一個(gè)塊匹配預(yù)測(cè)器,其為所述多個(gè)當(dāng)前幀塊中的每一塊識(shí)別所述多個(gè)參考幀塊中的一個(gè)預(yù)測(cè)塊,并為所述多個(gè)當(dāng)前幀塊中每一塊的相應(yīng)預(yù)測(cè)塊確定一個(gè)參考位移索引和一個(gè)塊預(yù)測(cè)差值,其中所述參考位移索引用于識(shí)別所述參考幀塊內(nèi)的一個(gè)點(diǎn);一個(gè)塊編碼器,其為所述多個(gè)當(dāng)前幀塊中的每一塊,對(duì)其相應(yīng)的塊預(yù)測(cè)差值和相應(yīng)的參考位移索引進(jìn)行編碼,并藉此創(chuàng)建多個(gè)編碼塊;以及一個(gè)序列編碼器,其根據(jù)預(yù)定格式把所述多個(gè)編碼塊打包在一起。
全文摘要
本發(fā)明描述了一種處理信號(hào)序列的系統(tǒng)和方法。公開了一個(gè)混合型的基于塊匹配和轉(zhuǎn)換的N維信號(hào)序列編碼器和解碼器。該編碼器包括編碼器側(cè)的塊匹配預(yù)測(cè)器,其包括基于墑的成本函數(shù),該成本函數(shù)可根據(jù)塊匹配差值的特定能量監(jiān)測(cè)而被估計(jì);一種快速塊匹配搜索方法,它學(xué)習(xí)來(lái)自相鄰塊的結(jié)果,并且僅僅通過訪問少量的點(diǎn)來(lái)執(zhí)行大范圍的搜索。而且公開了一種方法,其基于編碼器的輸出,來(lái)動(dòng)態(tài)地調(diào)節(jié)成本函數(shù)參數(shù)和其他的編碼控制參數(shù),并對(duì)編碼器的質(zhì)量和性能進(jìn)行優(yōu)化。
文檔編號(hào)H04N7/12GK1809839SQ200480017625
公開日2006年7月26日 申請(qǐng)日期2004年6月23日 優(yōu)先權(quán)日2003年6月23日
發(fā)明者T-C·李, W-L·陳, Y·黃, L-H·姚, H-S·陳 申請(qǐng)人:維切普公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1