亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

用于二進(jìn)制數(shù)據(jù)的壓縮和解壓縮的方法和設(shè)備與流程

文檔序號:11624437閱讀:320來源:國知局
用于二進(jìn)制數(shù)據(jù)的壓縮和解壓縮的方法和設(shè)備與流程
發(fā)明領(lǐng)域本發(fā)明涉及一種用于二進(jìn)制數(shù)據(jù)的壓縮和解壓縮的方法和設(shè)備,并且涉及一種用于利用所述用于壓縮和解壓縮的方法來存儲/檢索或傳輸/接收圖像或視頻數(shù)據(jù)流的方法。現(xiàn)有技術(shù)說明音頻視覺市場正在快速發(fā)展為超高分辨率(8192x4320個像素)以及更高的幀速率。因此,實時硬件系統(tǒng)需要以越來越高的像素速率對數(shù)據(jù)進(jìn)行處理。需要對存儲視頻圖像所需的存儲容量和/或傳輸視頻圖像所需的信道帶寬進(jìn)行限制。為了解決這一問題,已知的解決方案正在降低用于對二進(jìn)制值進(jìn)行編碼的位數(shù)。將在b位上編碼的值的位數(shù)降至在b位上編碼的值(其中,b>b)是一種被稱為量化的操作。以下描述了一種用于對數(shù)值進(jìn)行量化的已知方法。存在被適配于特定值特性的其他方法,例如,用于量化對數(shù)值或指數(shù)值。在此,我們將描述一般情況。如果[0,n最大]是用于量化的任何值的區(qū)間邊界并且dq是量化步長(量化集合中的兩個連續(xù)值之間的間隙),則值x如下被量化成值x’:其中,運算符代表“取整到最低的整數(shù)”。區(qū)間被分區(qū)為(n最大/dq)+1個子范圍,其中的每個子范圍對應(yīng)于量化值。項1/2將這些子范圍正確地集中在其各自的子區(qū)間上。量化值x’如下被去量化為值x”:圖1表示水平軸上x的值,x的值為零與127之間的整數(shù),即n最大=128。量化步長即量化集合中的兩個連續(xù)值之間的間隙,dq等于16。區(qū)間[0,128]被分區(qū)為9個子范圍。實線表示量化值x”。虛線表示原始的、未量化的值。從0到7的x值對應(yīng)于去量化值0。從8到23的x值對應(yīng)于去量化值16,依此類推,直至從120到127的x值對應(yīng)于去量化值128。當(dāng)值帶有符號時,原理仍保持相同。用于量化的值處于[-n最大,n最大]區(qū)間內(nèi),符號xs與絕對值y分離并且如上進(jìn)行:y=|x|xs=sign(x)圖2表示x與x”之間的相應(yīng)關(guān)系。逆量化在原始域中重構(gòu)了值x”。由于已經(jīng)丟失了某個精確量,因此所產(chǎn)生的值是不同的并且差值被稱為截斷誤差ε(實線與虛線之間的間隙)。x″=xs·y′.dqε=x″-x在輸入和輸出數(shù)據(jù)是二進(jìn)制值的情況下,情況如下:為了對b+1位上的整數(shù)值x進(jìn)行編碼,一位用于指示符號(例如,0表示正的,1表示負(fù)的),并且b位用于表示絕對值x。類似地,b位用于對量化的絕對值y’進(jìn)行編碼并且一位xs用于指示其符號:n最大=2bmax/lue在b位上被編碼,使經(jīng)量化的集合).ts為2位,其中,b﹥b,使eso限制存儲區(qū)域y=|x|xs=sign(x)其中,<<和>>運算符分別代表左二進(jìn)制移位和右二進(jìn)制移位。向右的二進(jìn)制移位將所產(chǎn)生的位保持到20權(quán)重位的右邊,即可以獲得分?jǐn)?shù)值。利用原始值的b-b位的簡單二進(jìn)制右移來獲得量化值,接著是取整到最接近的整數(shù)。等式(1)中的術(shù)語“1/2”需要一個額外位來對量化值進(jìn)行編碼,并且并非移除b-b位,量化僅移除b-b-1位。在圖1上可見,我們具有對應(yīng)于范圍為從0到8的y’的9個值的9個子范圍,并且需要四位以用于對量化值進(jìn)行編碼。在圖2中,取決于x的值,我們具有對應(yīng)于y’的17個值的17個子范圍,范圍為從-8到+8,需要五位以用于編碼。這不是所期望的,因為壓縮中尋求的性質(zhì)是精確地確定在傳輸或存儲量化值之前將需要多少位來對這些量化值進(jìn)行編碼的能力。當(dāng)根據(jù)目標(biāo)輸出速率(輸出了多少位)來選擇量化水平(移除了多少位)時,這種所需的額外位具有影響。由于相鄰值經(jīng)常是相關(guān)的并且包含在同一范圍內(nèi),因此壓縮算法利用這一特征在利用相同位數(shù)被編碼的塊中對它們進(jìn)行重組。這一數(shù)字由最高的絕對值設(shè)定,假設(shè)那些值以零為中心。唯一量化步長dq用于每個塊,從而減少了添加至壓縮碼流中以用于逆量化程序的信息量,為了恢復(fù)量化值,這需要檢索dq量化步長。因此,在選擇這一量化步長之后,輸出位數(shù)的任何變化將產(chǎn)生不正確的速率或者需要迭代過程以便使所述速錄保持在控制之下。例如,如果b<數(shù)字>是值的二進(jìn)制記數(shù)法,并且如果我們考慮到四個4位值的塊,則這一特定的x塊需要3位以便對其值中的每個值進(jìn)行編碼。如果算法決定這一塊應(yīng)當(dāng)具有輸出流中在2位上編碼的值(經(jīng)常決定質(zhì)量相對成本標(biāo)準(zhǔn)),則我們獲得:由于最接近整數(shù)的取整,我們明白了x2=7產(chǎn)生了3位上的量化值y’2=4。這是一個問題,因為早期的決定是針對這一個塊的每個值輸出2位,因此總共是8位而不是9位。固定寬度量化(方法1)根據(jù)具有固定寬度量化的已知方法(方法1),可避免這一問題并且使得位數(shù)恒定不變。這通過在量化中省略項1/2來完成。相應(yīng)的逆量化引入了校正項以便補償正向量化中由于簡化引起的偏置:x″=xs·y″這是量化值的b-b-1位的簡單二進(jìn)制左移位。值y’的數(shù)量是16,因此y’可利用4位來表示,即無需額外位。如圖3上示出的,這些輸出至仍居中但在這些輸出值中沒有零值。由于校正項,值從-dq/2跳至dq/2。在存在零周圍的小值的情況下,這產(chǎn)生了量化的“方格旗”模式(+dq/2、-dq/2、+dq/2、-dq/2、+dq/2、-dq/2……),這在大多數(shù)時候不是所期望的。圖10示出了示例,其中,具有全部小值(被表示為虛線)的一組二進(jìn)制值x導(dǎo)致去量化值為+8或者-8(實線)。死區(qū)(方法2)已知的方法(在零周圍具有死區(qū)(方法2))允許零值,并且解決了方法1的問題。死區(qū)被引入逆量化中(參見圖4):-16與+16之間的x的全部輸入值導(dǎo)致了去量化的零值。值y’的數(shù)量是15,因此y’可利用4位來表示,即無需額外位。由于取整操作的本質(zhì),在帶有符號的值的情況下,以零為中心的倉是其他倉的寬度的兩倍,從而導(dǎo)致了大的平坦區(qū)域。結(jié)果是,死區(qū)周圍的步驟比其他步驟高一半。這對使用這一技術(shù)的編解碼器的輸出端處的信號質(zhì)量具有消極影響。以上討論的這兩種二進(jìn)制值量化方法可在軟件中或者在邏輯門中被有效實現(xiàn),但是它們?nèi)匀徽谠馐懿煌膯栴}。對這些截斷值進(jìn)行編碼所需的位數(shù)可以取決于截斷水平而發(fā)生改變,零值可以不由逆操作合適地重構(gòu)(方法1),或者逆量化引入零周圍的死區(qū)(方法2)。us20070160138公開了一種用于對視頻數(shù)據(jù)(包括膠片顆粒信息)進(jìn)行編碼和解碼的方法,所述方法使用利用可控死區(qū)的量化方法。最小的系數(shù)值的量化步長的尺寸被調(diào)整,因此量化是非均勻的。與對量化系數(shù)可用的位數(shù)相關(guān)的量化步長的選擇并未得到解決。文檔“用于dtv接收機成本縮減的近無損復(fù)雜度可調(diào)整的嵌入式壓縮算法(near-losslesscomplexity-scalableembeddedcompressionalgorithmforcostreductionindtvreceivers)(范德沙爾m(vanderschaar,m)等人,ieeetransactionsonconsumerelectronics檔案,2000年11月,第46卷,第4期,923-93頁中)”討論了量化方法。一種量化方法涉及限于2的方冪的量化區(qū)間(參見等式5,928頁),并且因此具有以上討論的方法的優(yōu)點。另一種量化方法(參見等式6,929頁)更為復(fù)雜并且被設(shè)計成用于mpeg-2。ep2819412公開了一種量化方法,其中,針對一組二進(jìn)制輸入數(shù)據(jù)值,選擇偏執(zhí)值并且僅輸出來自所述偏執(zhí)值的偏移以作為在比輸入數(shù)據(jù)值更少的位上被編碼的二進(jìn)制輸出值。許多編碼方法是已知的,這些方法試圖實現(xiàn)更好的壓縮。然而,這些方法暗示了增加的計算和存儲需要,這使得它們不適用于高分辨率和高幀速率。技術(shù)實現(xiàn)要素:本發(fā)明的一個目的是提供一種用于將輸入二進(jìn)制數(shù)據(jù)值集合壓縮成被編碼為更少位數(shù)的相應(yīng)輸出數(shù)據(jù)值集合的方法和設(shè)備(所述方法和設(shè)備沒有以上討論的方法的缺陷)、以及一種用于對輸入二進(jìn)制數(shù)據(jù)值集合進(jìn)行解壓縮的相應(yīng)方法和設(shè)備。本發(fā)明是由獨立權(quán)利要求來限定的。從屬權(quán)利要求限定了有利的實施例。根據(jù)本發(fā)明的第一方面,提供了一種用于將輸入二進(jìn)制數(shù)據(jù)值x集合壓縮為相應(yīng)的輸出數(shù)據(jù)值x’集合的方法,所述輸入二進(jìn)制數(shù)據(jù)值全部被編碼為相同的位數(shù)b,當(dāng)所述輸入二進(jìn)制數(shù)據(jù)值包括負(fù)值時不對符號位進(jìn)行計數(shù),所述輸出數(shù)據(jù)值全部被編碼為更少的位數(shù)b,不對符號位進(jìn)行計數(shù),所述方法可通過以下步驟獲得:a)如果所述輸入二進(jìn)制數(shù)據(jù)值集合包括負(fù)值,·則針對每個輸入二進(jìn)制數(shù)據(jù)值x,確定被編碼為一位的、x的絕對值y和x的符號xs;b)如果所述輸入二進(jìn)制數(shù)據(jù)值集合不包括負(fù)值,·則針對每個輸入二進(jìn)制數(shù)據(jù)值x,確定x的值y;c)計算量化步長dqd)將y值的范圍劃分成2b個子范圍,·第一子范圍為[0,int(dq/2)]·第i個子范圍為[int((i-3/2)*dq)+1,int((i-1/2)*dq)],i從2到2be)針對每個y值,確定子范圍i并且計算y’=i-1,所述y值為所述子范圍的元素;f)如果所述輸入二進(jìn)制數(shù)據(jù)值集合包括負(fù)值,·則針對每個輸入二進(jìn)制數(shù)據(jù)值x,確定y’加上xs的值x’;g)如果所述輸入二進(jìn)制數(shù)據(jù)值集合不包括負(fù)值,·則針對每個輸入二進(jìn)制數(shù)據(jù)值x,確定y’的值x’。y值的范圍是區(qū)間[0,2b]。在本發(fā)明的一個實施例中,所述組的輸出數(shù)據(jù)值x’通過以上步驟獲得。在本發(fā)明的其他實施例中,所述組的輸出數(shù)據(jù)值x’通過以下寄存器移位方法或查找表方法獲得。所述子范圍還可以被稱為“倉”,并且所述方法可以被稱為所述“倉方法”。在實施例中,步驟c)、步驟d)以及步驟e)的結(jié)果可以等效地通過執(zhí)行以下步驟來獲得:·將y向右移位b-b位,得出第一結(jié)果;·將y向右移位b+1位,得出第二結(jié)果;·從第一結(jié)果中減去第二結(jié)果,得出第三結(jié)果;·加上0、5,得出第四結(jié)果;·選擇正權(quán)重和零權(quán)重即第四結(jié)果的非分?jǐn)?shù)位,得出y’。在所述右移位操作中,保持所述分?jǐn)?shù)權(quán)重位。這兩種方法是等效的。所述值y’被編碼為位數(shù)b。在另一實施例中,所述方法包括以下步驟:·獲得查找表,所述查找表針對y的所述2b個值中的每個值包含所述相應(yīng)的y’值;·針對所述集合中的每個y值,確定所述表中索引y處的所述相應(yīng)的y’值。根據(jù)本發(fā)明的第二方面,提供了一種用于將包括輸入二進(jìn)制數(shù)據(jù)值的輸入二進(jìn)制數(shù)據(jù)壓縮成輸出二進(jìn)制數(shù)據(jù)的方法,所述輸出二進(jìn)制數(shù)據(jù)具有小于限值的體積,所述方法包括以下步驟:·在ngcli輸入二進(jìn)制數(shù)據(jù)值集合中對所述輸入二進(jìn)制數(shù)據(jù)值進(jìn)行分組;·針對所述ngcli輸入二進(jìn)制數(shù)據(jù)值集合中的每個集合:-確定所述gcli,所述gcli是所述集合中最高非零位的索引,不對符號位進(jìn)行計數(shù)·選擇gtli的值,從而使得針對全部所述輸入二進(jìn)制數(shù)據(jù)值計數(shù)gcli-gtli位產(chǎn)生了具有比所述限值更小的體積的輸出二進(jìn)制數(shù)據(jù);·針對所述ngcli輸入二進(jìn)制數(shù)據(jù)值集合中的每個集合:-應(yīng)用如權(quán)利要求1至3中任一項所述的方法,其中,b=gcli并且b=max(gcli-gtli,0)·產(chǎn)生輸出二進(jìn)制數(shù)據(jù),所述輸出二進(jìn)制數(shù)據(jù)包括所述gtli以及針對所述ngcli輸入二進(jìn)制數(shù)據(jù)值集合中的每個ngcli輸入二進(jìn)制數(shù)據(jù)值集合的所述gtli的值和所述ngcli量化值x’。在b=0(這可以在執(zhí)行本發(fā)明的第二方面的方法時發(fā)生)的簡單情況下,所述輸出數(shù)據(jù)值具有值零并且在零位上被編碼。在那種情況下,所述集合的所述輸出二進(jìn)制數(shù)據(jù)僅包含所述gcli。當(dāng)所述輸入二進(jìn)制數(shù)據(jù)由視頻數(shù)據(jù)的解相關(guān)變換產(chǎn)生時,這一方法有利地被應(yīng)用。ngcli可以包括在4與16之間,并且優(yōu)選地等于4。根據(jù)本發(fā)明的第三方面,提供了一種用于將輸入二進(jìn)制數(shù)據(jù)值x’集合解壓縮成相應(yīng)的輸出數(shù)據(jù)值x”集合的方法,所述輸入二進(jìn)制數(shù)據(jù)值全部被編碼為相同的位數(shù)b,不對可能的符號位進(jìn)行計數(shù),所述輸出數(shù)據(jù)值全部被編碼為更大的位數(shù)b,不對可能的符號位進(jìn)行計數(shù),所述方法包括以下步驟:a)計算b)如果所述輸入二進(jìn)制數(shù)據(jù)值集合包括負(fù)值,則針對每個輸入二進(jìn)制數(shù)據(jù)值x’,確定被編碼為一位的、x’的絕對值y’和x’的符號x’s;c)如果所述輸入二進(jìn)制數(shù)據(jù)值集合不包括負(fù)值,則針對每個輸入二進(jìn)制數(shù)據(jù)值x’,確定x’的值y’;d)針對每個y’進(jìn)行計算e)如果所述輸入二進(jìn)制數(shù)據(jù)值集合包括負(fù)值,則針對每個輸入二進(jìn)制數(shù)據(jù)值y’,確定y”加上x’s的值x”;f)如果所述輸入二進(jìn)制數(shù)據(jù)值集合不包括負(fù)值,則針對每個輸入二進(jìn)制數(shù)據(jù)值x’,確定y”的值x”。在所述解壓縮方法中,所述步驟d)可以包括以下步驟:i.將y’向左移位b-b位,得出第一結(jié)果;ii.將第一結(jié)果向右移位b+1位,得出第二結(jié)果;iii.將第二結(jié)果加到第一結(jié)果上,得出總和結(jié)果;iv.將第二結(jié)果復(fù)制到第一結(jié)果;v.重復(fù)步驟ii.-iv.,直到第二結(jié)果低于零;vi.將y”計算作為總和結(jié)果的整數(shù)部分。在所述解壓縮方法中,所述步驟d)還可以包括以下步驟:i.將y’向左移位b-b位,得出第一結(jié)果;ii.將第一結(jié)果向右移位b+1位,得出第二結(jié)果;iii.將第二結(jié)果加到第一結(jié)果上,得出總和結(jié)果;iv.將y”計算作為總和結(jié)果的整數(shù)部分。所述解壓縮方法可以包括以下步驟:·獲得查找表,所述查找表針對y’的所述2b個值中的每個值包含所述相應(yīng)的y”;·針對所述集合中的每個y’值,確定所述表中索引y’處的所述相應(yīng)的y”值。根據(jù)本發(fā)明的第四方面,提供了一種用于對包括ngcli輸入二進(jìn)制數(shù)據(jù)值集合的輸入二進(jìn)制數(shù)據(jù)進(jìn)行解壓縮的方法,每個集合包括b值和b值,b為解壓縮的二進(jìn)制數(shù)據(jù)值的位數(shù),b為所述輸入二進(jìn)制數(shù)據(jù)值的位數(shù),不對可能的符號位進(jìn)行計數(shù),所述方法包括以下步驟:·應(yīng)用如權(quán)利要求7至10中任一項所述的方法以用于獲得解壓縮的二進(jìn)制數(shù)據(jù)值;·產(chǎn)生包括所述解壓縮的二進(jìn)制數(shù)據(jù)值的輸出二進(jìn)制數(shù)據(jù)。所述解壓縮的二進(jìn)制數(shù)據(jù)值可以利用多個‘0’位獲得具有給定長度的詞來完成。本發(fā)明還涉及使用根據(jù)本發(fā)明的用于對由本發(fā)明的壓縮方法獲得的輸入二進(jìn)制數(shù)據(jù)值x’集合進(jìn)行解壓素的解壓縮方法。本發(fā)明還涉及一種用于將輸入二進(jìn)制數(shù)據(jù)值x集合壓縮成相應(yīng)的輸出數(shù)據(jù)值x’集合的設(shè)備,所述輸入二進(jìn)制數(shù)據(jù)值全部被編碼為相同的位數(shù),所述輸出數(shù)據(jù)值全部被編碼為更小的位數(shù),所述設(shè)備包括用于執(zhí)行如本發(fā)明所述的壓縮方法的程序代碼。本發(fā)明還涉及一種用于將輸入二進(jìn)制數(shù)據(jù)值x集合壓縮成相應(yīng)的輸出數(shù)據(jù)值x’集合的設(shè)備,所述輸入二進(jìn)制數(shù)據(jù)值全部被編碼為相同的位數(shù),所述輸出數(shù)據(jù)值全部被編碼為更小的位數(shù),所述設(shè)備包括用于執(zhí)行如本發(fā)明所述的壓縮方法的硬件。本發(fā)明還涉及一種用于將輸入二進(jìn)制數(shù)據(jù)值x’集合解壓縮成相應(yīng)的輸出數(shù)據(jù)值x”集合的設(shè)備,所述輸入二進(jìn)制數(shù)據(jù)值全部被編碼為相同的位數(shù),所述輸出數(shù)據(jù)值全部被編碼為更大的位數(shù),所述設(shè)備包括用于執(zhí)行如本發(fā)明所述的解壓縮方法的程序代碼。本發(fā)明還涉及一種用于將輸入二進(jìn)制數(shù)據(jù)值x’集合解壓縮成相應(yīng)的輸出數(shù)據(jù)值x”集合的設(shè)備,所述輸入二進(jìn)制數(shù)據(jù)值全部被編碼為相同的位數(shù),所述輸出數(shù)據(jù)值全部被編碼為更大的位數(shù),所述設(shè)備包括用于執(zhí)行如本發(fā)明所述的解壓縮方法的硬件。本發(fā)明的這些方法應(yīng)用于具有全部正整數(shù)值的輸入二進(jìn)制數(shù)據(jù)值集合并且應(yīng)用于具有正值和負(fù)值的輸入二進(jìn)制數(shù)據(jù)值。在后一種情況下,假設(shè)這些負(fù)值由符號位和大小(絕對值)來表示。如果使用另一種表示,例如一次補充或者二次補充,則這對于本領(lǐng)域技術(shù)人員來說是已知的用于將所述輸入二進(jìn)制數(shù)據(jù)值轉(zhuǎn)換成其符號—大小表示的直接操作。附圖簡要說明將通過示例并參照附圖對本發(fā)明的這些和進(jìn)一步的方面進(jìn)行更詳細(xì)的解釋,在附圖中:圖1表示針對適用于自然值的已知量化方法的根據(jù)原始值x的以實線表示的重構(gòu)值x”以及以虛線表示的原始值x。n最大=128,dq=16;圖2表示針對適用于帶有符號的值的已知量化方法的根據(jù)原始值x的以實線表示的重構(gòu)值x”以及以虛線表示的原始值x;圖3表示利用固定寬度量化(方法1)的、針對適用于二進(jìn)制帶有符號的值的已知量化方法的根據(jù)原始值x的以實線表示的重構(gòu)值x”以及以虛線表示的原始值x;圖4表示利用死區(qū)(方法2)的、針對適用于二進(jìn)制帶有符號的值的已知量化方法的根據(jù)原始值x的以實線表示的重構(gòu)值x”以及以虛線表示的原始值x;圖5表示針對根據(jù)本發(fā)明的壓縮方法的根據(jù)原始值x的以實線表示的重構(gòu)值x”以及以虛線表示的原始值x。圖6示意性地表示了一種針對根據(jù)本發(fā)明的實施例的壓縮方法的量化設(shè)備;圖7示意性地表示了一種針對根據(jù)本發(fā)明的實施例的解壓縮方法的去量化設(shè)備;圖8示意性地表示了一種根據(jù)本發(fā)明的優(yōu)選實施例的方法;圖9表示應(yīng)用本發(fā)明的方法的示例性數(shù)據(jù)集合;圖10展示了如上討論的固定寬度量化(方法1)問題。附圖既未按比例繪制也不成比例。通常,在附圖中,相同的組成部分由相同的參考號來指示。具體實施方式本發(fā)明的第一組成部分是量化算法,所述量化算法提供了圖像壓縮范圍內(nèi)的優(yōu)點,無需額外位并且提供了以上關(guān)于方法1和方法2所提及的問題的解決方案。所述量化算法將被稱為“grq”。圖5示出了將量化算法應(yīng)用于根據(jù)本發(fā)明的壓縮方法的示例,其中,這些輸入二進(jìn)制數(shù)據(jù)值包括-127與+127之間的數(shù)據(jù)值。用于對x的絕對值進(jìn)行編碼的位數(shù)是7位,即b=7。絕對量化值的數(shù)量是8,即這些量化值可在3位上被編碼,并且b=3。根據(jù)本發(fā)明,值的范圍被劃分為2b+1-1個子范圍(在圖5的示例中,15個子范圍),而非2b+1個子范圍(在圖3的示例中,16個子范圍)。量化步長dq為:量化步長略大于現(xiàn)有技術(shù)中的量化補償(圖1、圖2、圖3和圖4中的示例全部具有量化補償16)。下表示出了針對x的正值(即圖5的右上側(cè)的四分之一)所產(chǎn)生的子范圍子范圍ix的第一值x的最后值值的nb1089292517326421744359175607617677931779411017811112717128量化值是通過減法1從子范圍中獲得的。量化算法總是產(chǎn)生量化值中的準(zhǔn)確位數(shù)b,并且因此在一速率分配為特征的壓縮解決方案中是合適的,因為其根據(jù)量化水平保證了可預(yù)測速率,具有更好的質(zhì)量。這使其成為與本發(fā)明的第二組成部分一起使用的理想量化算法,如段落[0040]中解釋的,這些gcli值(最大編碼線索引)允許高效速率分配方法。作為“倉方法”的替代方案,相同的量化值還可以通過以下公式獲得:如從這一等式的右手部分可見的,操作可以利用兩次加法和兩次二進(jìn)制移位來實現(xiàn),后者在邏輯門中是自由的。圖6上示出了用于執(zhí)行這些操作的硬件配置。移位操作易于利用邏輯門來實現(xiàn)。在這些移位操作中,必須保持這些分?jǐn)?shù)位。作為寄存器移位方法的替代方案,壓縮可以利用查找表來執(zhí)行。當(dāng)b不太大時,所述查找表方法是最簡便的。所述查找表可以通過將段落[0014]的方法應(yīng)用于0與2b-1之間的所有整數(shù)來獲得。逆量化值通過等式獲得從等比級數(shù)我們知道:有趣地是,y’在b位上被編碼,這允許對表達(dá)(2)進(jìn)行簡化其中,“v”運算符代表“二進(jìn)制或者”。實際上,由于二級制或被應(yīng)用于i.b位置的移位的b位值,因此這一操作可以被簡化成串接連續(xù)值的位。在實際情況中,值b將不高于b許多倍。如果b>b并且b<2b+1,則僅需要串接y’<<(b-b)和y’>>(2b-b+1)的位,如圖7所示。總之,所述操作具有與現(xiàn)有技術(shù)中完成的操作相同的復(fù)雜水平:·量化減去兩個移位值|x|,然后在lsb之后添加位·逆量化是移位值y’的串接假定量化的水平相同,則這些重構(gòu)值的質(zhì)量更高,這意味著本發(fā)明為壓縮算法提供了傳輸中相同比特率的增加的質(zhì)量。已經(jīng)根據(jù)方法2(具有死區(qū),“dz”)和本發(fā)明對典型的測試圖像集合進(jìn)行了壓縮。針對十六張測試圖像,對壓縮圖像與原始圖像之間的信噪比psnr進(jìn)行比較。下表表明了本發(fā)明的方法具有對測試集合的所有圖像的改進(jìn)。本發(fā)明的第二組成部分涉及對輸入二進(jìn)制數(shù)據(jù)(諸如視頻流)的壓縮。有關(guān)相關(guān)值的數(shù)據(jù)壓縮(典型地圖像壓縮)的方法包括以下兩個特點:·對數(shù)據(jù)進(jìn)行量化以便降低用于存儲或傳輸至解碼器的位的量;·將有關(guān)這些數(shù)據(jù)如何已被量化(b-b)的信息插到量化數(shù)據(jù)的前面,因為解碼器將需要其以便應(yīng)用逆量化。所產(chǎn)生的信息被稱為碼流。由于這些數(shù)據(jù)提供某個相關(guān)水平(例如,由dwt(離散小波變換)產(chǎn)生的系數(shù)),因此在對它們進(jìn)行重組并且應(yīng)用向量或塊上的一般量化水平時具有優(yōu)點,因此降低了解碼器將需要的用于對這些數(shù)據(jù)進(jìn)行重構(gòu)的信息量。大多數(shù)時候,所傳輸?shù)拇a流的帶寬受到通信信道比特率的限制,或者類似地,壓縮文件的尺寸受到存儲介質(zhì)的容量的限制。由于更高的壓縮率產(chǎn)生了重構(gòu)數(shù)據(jù)的更低質(zhì)量,因此對于壓縮算法來說,能夠產(chǎn)生碼流(盡可能地接近最優(yōu)比特率)并且使用所有可用帶寬以便最小化質(zhì)量是重要的。這是速率分配的目的,這必須確定應(yīng)用于數(shù)據(jù)的量化水平,從而使得質(zhì)量針對給定比特率是最大的。由速率分配處理的數(shù)據(jù)結(jié)構(gòu)的選擇是至關(guān)重要的,其必須滿足這些要求:·簡潔:通常,必須盡可能快地實現(xiàn)壓縮,并且由速率分配處理的數(shù)據(jù)量越高,其將采取的速度越慢;·表示質(zhì)量:速率分配優(yōu)化了給定比特率的質(zhì)量,其必須能夠根據(jù)量化水平來評估質(zhì)量損失;·高效轉(zhuǎn)碼到碼流中:解碼器需要足夠的信息來重構(gòu)數(shù)據(jù)(例如,應(yīng)用每個塊上的正確逆量化)。ngcli數(shù)據(jù)的向量或塊的gcli值為在二進(jìn)制表示中對其值的大小進(jìn)行編碼所需的最大位數(shù)。因此,-6被編碼成b110(加上一個符號位),并且需要3位以便對其絕對值進(jìn)行編碼。具有這些值(4、9、2、5)的框具有g(shù)cli=4,因為最大值是9并且被編碼成b1001。零需要零位以便進(jìn)行編碼,并且不需要符號。圖9中示出了進(jìn)一步的示例。表示了包括均在15位(加上符號位)中被編碼的16個二進(jìn)制數(shù)據(jù)值的輸入二進(jìn)制數(shù)據(jù)。如可能在不相關(guān)數(shù)據(jù)中發(fā)生的,許多數(shù)據(jù)值是小的并且最高有效位中的大部分是在零處(被表示為灰色區(qū)域)。這些輸入數(shù)據(jù)被分組為四(ngcli=4)詞集合。針對這些集合中的每個集合,確定gcli的值。針對輸入數(shù)據(jù)的整個集合,選擇gtli的值(此處,gtli=4),從而使得從壓縮中產(chǎn)生的數(shù)據(jù)的大小(針對每個集合的不同值b)將滿足存儲尺寸的可用帶寬的限制。針對所述集合中的每個集合,應(yīng)用量化方法,并且所產(chǎn)生的數(shù)據(jù)與gcli的值一起被放入輸出二進(jìn)制數(shù)據(jù)中。針對所有數(shù)據(jù)集合具有相同值的dtli僅傳輸或存儲一次。這些gcli值用于在速率分配時總結(jié)數(shù)據(jù),因為它們充分滿足以上提及的要求。為了展示理由,圖8中示出了可能的架構(gòu),其中:·相關(guān)數(shù)據(jù)被分組成從其中提取gcli的值的ngcli值塊;·gcli值由速率分配使用以便確定量化水平;·量化被應(yīng)用于數(shù)據(jù)(grq);·碼流是從已壓縮數(shù)據(jù)以及對其進(jìn)行解壓縮所需的信息(在這一示例中,量化水平和gcli的值)中創(chuàng)建的。gcli的值是間接的,一個值表示包含多個值的塊中的最大對數(shù),因此其將不需要許多位來進(jìn)行編碼:典型地,16位足以對dwt中的系數(shù)進(jìn)行編碼,這意味著可使用這些4位gcli值。如果ngcli=4,則一個4位gcli表示速率分配中16位的4個系數(shù),這是1與64之比。這是高效的,因為鄰值是相關(guān)的并且將具有相似的大小,因此使用相同位數(shù)對它們進(jìn)行編碼是接近最優(yōu)的。這意味著gcli的值為速率分配提供了間潔的信息以便根據(jù)截斷水平計算輸出速率。而且,如圖9中展示的,這些gcli值實際上提供局部量化步長dq。截斷部分或者gtli(最大微調(diào)水平索引)是針對像其他算法的每個子段單獨設(shè)定的,但因此針對每組ngcli數(shù)據(jù),最大位數(shù)b是由每個gcli設(shè)定的。所述后一特性通過移除大塊中的上部零msb的值降低了用于編碼的位數(shù),這不只是補償了將gcli信息插到輸出流(對于逆量化所必需的)中的成本。如段落[0004]中解釋的,使用gcli方法需要根據(jù)量化的可預(yù)測速率。grq量化維持了這些零值并且確保了用于對這些量化值進(jìn)行編碼的位數(shù)仍然保持在b,因此允許易于在速率分配過程中通過參數(shù)gtli(針對每個子段)根據(jù)量化對輸出速率進(jìn)行控制。如之前示出的,其不遭受像其他量化解決方案(維持了位數(shù)以及這些零值)的更大死區(qū),并且因此在解碼中具有更低的平均誤差。本發(fā)明的方法實現(xiàn)了以用于硬件實現(xiàn)方式的極其簡單且有效的方式在少的步驟中對一組系數(shù)進(jìn)行壓縮。由于這一壓縮解決方案同時對若干像素進(jìn)行編碼,因此對多個像素的并行編碼是提出的編解碼器所固有的。其允許利用低復(fù)雜度編解碼器達(dá)到高像素速率,同時保持良好的壓縮效率。已經(jīng)就具體實施例對本發(fā)明進(jìn)行了描述,這些具體實施例是對本發(fā)明的說明而不應(yīng)被理解為是限制的。更一般地,本領(lǐng)域技術(shù)人員將理解的是,本發(fā)明并不受限于上文中已經(jīng)具體示出和/或描述的內(nèi)容。權(quán)利要求書中的參考標(biāo)號并不限制其保護(hù)范圍。動詞“包括”、“包含”、“由…形成”或任何其他變體以及它們的對應(yīng)詞形變化的使用并不排除所陳述的那些之外的元件的存在。在元件前使用冠詞“一個”、“一種”或“所述”并不排除存在多個此類元件。本發(fā)明還被描述如下:本發(fā)明提供了一種用于將輸入二進(jìn)制數(shù)據(jù)值x集合壓縮為相應(yīng)的輸出數(shù)據(jù)值x’集合的方法和設(shè)備,所述輸入二進(jìn)制數(shù)據(jù)值全部被編碼為相同的位數(shù)b,當(dāng)所述輸入二進(jìn)制數(shù)據(jù)值包括負(fù)值時不對符號位進(jìn)行計數(shù),所述輸出數(shù)據(jù)值全部被編碼為更少的位數(shù)b,不對符號位進(jìn)行計數(shù),所述方法可通過以下步驟獲得:a)如果所述輸入二進(jìn)制數(shù)據(jù)值集合包括負(fù)值,·則針對每個輸入二進(jìn)制數(shù)據(jù)值x,確定被編碼為一位的、x的絕對值y和x的符號xs;b)如果所述輸入二進(jìn)制數(shù)據(jù)值集合不包括負(fù)值,·則針對每個輸入二進(jìn)制數(shù)據(jù)值x,確定x的值y;c)計算量化步長dqd)將y值的范圍[0,2b-1]劃分成2b個子范圍,·第一子范圍為[0,int(dq/2)]·第i個子范圍為[int((i-3/2)*dq)+1,int((i-1/2)*dq)],i從2到2be)針對每個y值,確定子范圍i并且計算y’=i-1,所述y值為所述子范圍的元素;f)如果所述輸入二進(jìn)制數(shù)據(jù)值集合包括負(fù)值,·則針對每個輸入二進(jìn)制數(shù)據(jù)值x,確定為y’加上xs的值x’;g)如果所述輸入二進(jìn)制數(shù)據(jù)值集合不包括負(fù)值,·則針對每個輸入二進(jìn)制數(shù)據(jù)值x,確定y’的值x’。當(dāng)前第1頁12
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1