欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

自適應系數(shù)掃描次序的制作方法

文檔序號:7628671閱讀:129來源:國知局
專利名稱:自適應系數(shù)掃描次序的制作方法
技術(shù)領(lǐng)域
本發(fā)明大致涉及基于塊變換的數(shù)字媒體(例如,視頻和圖像)壓縮。
背景技術(shù)
基于塊變換的編碼概述轉(zhuǎn)換編碼是在許多音頻、圖像和視頻壓縮系統(tǒng)中使用的壓縮技術(shù)。通常未經(jīng)壓縮的數(shù)字圖像和視頻被描繪或捕捉為以二維(2D)柵格排列的圖像或視頻幀內(nèi)的位置的圖形元素或顏色的樣本。這就稱之為圖像或視頻的空間域表示。例如,圖像的典型格式包括以柵格形式排列的24比特彩色圖形的樣本流。每個樣本都是在諸如RGB、YIQ之類的彩色空間內(nèi)以柵格形式在像素單元處的多個代表彩色的分量。各類圖像和視頻系統(tǒng)可以使用各種不同的彩色、空間和時間分辨率進行樣本。類似地,數(shù)字音頻通常被代表作為時間樣本的音頻信號。例如,典型的音頻格式包括以一定的時間間隔所獲的音頻信號的16比特振幅樣本流。
未經(jīng)壓縮的數(shù)字音頻、圖像和視頻信號會占據(jù)大量的存儲和傳輸能力。變換編碼通過將信號的空間域表示變換成頻率域表示,隨后減少變換域表示的某些通常不易感知的頻率成分的分辨率,從而縮減了數(shù)字音頻、圖像和視頻的大小。這與在空間域內(nèi)降低圖像或視頻的顏色或空間分辨率或者在時域內(nèi)降低音頻分辨率相比,通常產(chǎn)生數(shù)字信號的更加不易察覺劣化。
更具體地,圖1中示出的典型基于塊變換的編碼/解碼器100將未經(jīng)壓縮的數(shù)字圖像像素分為固定大小的二維塊(X1,...,Xn),每個塊都可與其他的塊交疊。將進行空間-頻率分析的線性變換120-121應用到每個塊上,將塊內(nèi)的空間樣本轉(zhuǎn)換成通常代表了塊間隔上對應于頻帶中數(shù)字信號強度的一組頻率(或變換)系數(shù)。為了進行壓縮,變換系數(shù)可被選擇性地量化130(即通過諸如舍去系數(shù)值的最低有效比特或者將高分辨率數(shù)組的值映射到低分辨率之類的方法降低分辨率),并且可信息熵編碼或可變長度編碼130為壓縮數(shù)據(jù)流。解碼時,變換系數(shù)將被逆變換170-171以近似地重建原始的顏色/空間樣本的圖像/視頻信號(重建塊 )。
可以將塊變換120-121定義成大小為N的矢量x上的數(shù)學操作。最通常情況下,該操作是線性乘法,產(chǎn)生變換域輸出y=Mx,其中M是變換矩陣。當輸入數(shù)據(jù)是任意長度時,它就被分割為大小為N的多個矢量并且將塊變換應用到每個分段上。為了數(shù)據(jù)壓縮,選擇可逆的塊變換。換句話說,矩陣M是可逆的。在乘法維度上(例如對圖像和視頻),通常以分開的操作實現(xiàn)塊變換。沿著數(shù)據(jù)的每個維度(即行和列)分別應用矩陣乘法。
為了壓縮,變換系數(shù)(矢量y的分量)將被選擇性地量化(即通過諸如忽略系數(shù)值的最低有效比特或者將高分辨率數(shù)組的值映射到低分辨率之類的方法降低分辨率),并且還被信息熵編碼或可變長度編碼成壓縮數(shù)據(jù)流。
在解碼器150內(nèi)的解碼時,將如圖1所示將這些操作的逆操作(解量化/信息熵解碼160以及逆塊變換170-171)應用到解碼器150側(cè)。當重建所述數(shù)據(jù)時,將逆矩陣M-1(逆變換170-171)作為乘子應用到變換域數(shù)據(jù)上。當被應用到變換域數(shù)據(jù)時,所述逆變換近似地重建原始的時域或空間域數(shù)字媒體。
使用的變換可能是簡單的DPCM型預測器/校正器,或者是諸如小波或DCT(離散余弦變換)之類的更為復雜的結(jié)構(gòu)。通常采用的標準JPEG/MPEG2/MPEG4、JPEG2000以及Window Media Video(WMV)分別使用DCT、小波和集成化的DCT。此外,WMV使用對內(nèi)部塊和內(nèi)部幀提供有益于可視化和速率失真以利于的交疊平滑運算符。所述交疊平滑運算符連同塊變換,試圖模仿由H.S.Malvar所著、在ArtechHouse Boston,Ma,1992發(fā)表的《Signal Processing with Lapped Transforms》中描述類型的交疊變換。
系數(shù)掃描模式包括JPEG、MPEG2、MPEG4以及WMV的許多基于塊變換的編碼譯碼器使用游程長度碼技術(shù)編碼對響應于特定塊的量化系數(shù)(參見例如在Van NostrandReinhold,New York,1993上發(fā)表的由W.B.Rennebaker和J.L.Mitchell所著的《JPEGStill Image Compression Standard》)。按照預定模式通過掃描量化變換系數(shù)塊來實現(xiàn)游程長度碼。一個相關(guān)實例是如圖3中示出的連續(xù)“Z字形”掃描模式。雖然類似的連續(xù)Z字形掃描模式在JPEG和MPEF2/4中廣泛使用,對掃描模式的連續(xù)性沒有內(nèi)在的要求。
游程長度碼技術(shù)使用基本變換的統(tǒng)計信息。通常更大的系數(shù)指向“DC”值(通常在左上角表示)出現(xiàn),而更為少見或更小的系數(shù)在遠離DC處出現(xiàn)。例如,通常變換塊的大多數(shù)變換系數(shù)量化后的值為零。許多掃描模式對更可能具有非零值的系數(shù)給予更高的優(yōu)先級。換句話說,在掃描模式中會更早地掃描這些系數(shù)。這樣,非零值的系數(shù)就更可能被聚集在一起,其后跟隨著一長串或多長串零值系數(shù)。這樣尤其會導致更有效的游程/級別/末尾編碼,但是其他信息熵編碼的其他形式也可從此重新排序中獲益。
在Lin等人于2004年11月15日提交的美國專利號No.10/989,844的《ScanPatterns For Interlaced Video Content》以及Liang等人也于2004年11月15日提交的美國專利號10/989,594,的《Scan Patterns For Progressive Video Content》中描述了在根據(jù)塊大小的一組受限的預定或靜態(tài)掃描模式以及所述圖像是隔行掃描的還是逐行掃描格式之間選擇的視頻壓縮系統(tǒng)。

發(fā)明內(nèi)容
現(xiàn)存編碼/解碼器中預定系數(shù)掃描模式所遇到的難題我們已經(jīng)認識到在變換塊內(nèi)相似系數(shù)的模式示出了某種本地數(shù)據(jù)的相關(guān)性。例如在水平和垂直維度上橫跨多個塊的圖像網(wǎng)狀組織區(qū)域中,系數(shù)如期望出現(xiàn)。但是在具有強烈垂直或水平特性的圖像區(qū)域中,沿著相應的軸的系數(shù)更可能相似。因此,對網(wǎng)狀組織區(qū)域的理想掃描模式(要考慮到減少使用比特數(shù)的情況)不總是帶線性特征的區(qū)域的理想模式。
此外,使用交疊變換還會影響掃描模式的優(yōu)化。當交疊變換作為塊變換之前的預濾波被實現(xiàn)時,該預濾波會加強原始圖像中的不連續(xù)性。因此變換系數(shù)就示出更大的變化,而且最高的頻率會以更大的強度出現(xiàn)。實際上,通常觀察到最高的2D頻率(該頻率是位于多次變換系數(shù)塊右下角處的變換系數(shù))不再具有最低可能。
對圖像塊范圍的給定掃描次序缺乏優(yōu)化還存在第三個原因。所示原因是基于“DCAC預測”的變換效率。DCAC預測是用于將“DCAC”系數(shù)的出現(xiàn)和幅值最小化的編碼工具,而“DCAC”系數(shù)在X維度或Y維度上是DC而在另一個維度上是AC。這些是沿著軸分布的系數(shù)。對強烈的線性區(qū)域,對DCAC系數(shù)預測的置信度要高于隨機的網(wǎng)狀組織化的區(qū)域。因此,最佳掃描次序不僅依賴于基本數(shù)據(jù),它還受到所述基本數(shù)據(jù)能在多么好的用DCAC系數(shù)預測其影響。
自適應系數(shù)掃描次序這些難題將由在此描述的自適應系數(shù)掃描排序技術(shù)解決,該技術(shù)有效地將塊系數(shù)的掃描次序和圖像的本地統(tǒng)計信息相匹配。對該技術(shù)的描述實現(xiàn)是非常具有計算效率的并且具有最小的等待時間,這對注重速度的圖像和視頻編碼/解碼器來講是一個巨大的優(yōu)勢。此外,描述的自適應系數(shù)掃描次序?qū)崿F(xiàn)“學習”來自編碼器和譯碼器遇到的統(tǒng)計信息;因此在壓縮比特流中不存在附加信令或比特使用以發(fā)送從屬信息給解碼器。
在隨后對參考附圖進行的實施例的詳盡描述中,本發(fā)明另外的特性和優(yōu)點將會變得顯而易見。


圖1用現(xiàn)有技術(shù)內(nèi)傳統(tǒng)的基于塊變換的編碼/解碼器的框圖。
圖2也是用現(xiàn)有技術(shù)作為結(jié)合了圖1中基于塊變換的編碼/解碼器的前處理和后處理操作而實現(xiàn)的空間域交疊變換的框圖。
圖3是示出了用現(xiàn)有技術(shù)使用連續(xù)Z字形掃描模式的系數(shù)掃描次序的示意圖。
圖4是基于利用了可逆交疊運算符的交疊變換的編碼器流程圖。
圖5是基于所述交疊變換的解碼器流程圖。
圖6是用于在圖4中編碼器和圖5中解碼器的系數(shù)掃描次序自適應的過程的流程圖。
圖7是示出了用于圖6的自適應系數(shù)掃描次序過程的水平系數(shù)的原始掃描次序的示意圖。
圖8是示出了用于圖6的自適應系數(shù)掃描次序過程的垂直系數(shù)原始掃描次序的示意圖。
圖9是示出了在圖6的自適應系數(shù)掃描次序程序中使用的,為了跟蹤系數(shù)的非零值發(fā)生以及相應掃描次序的初始化次序和總的數(shù)組的實例示意圖。
圖10是示出了由圖6的過程交換的圖9中數(shù)組元素用以重新安排系數(shù)的掃描次序的情況實例的示意圖。
圖11是示出了如圖10顯示的元素交換操作之后數(shù)組元素的安排結(jié)果的示意圖。
圖12是示出了在如圖10顯示的元素交換操作之后,對應于對圖9中數(shù)組元素進行如圖11示出的安排的掃描次序結(jié)果的示意圖。
圖13是用于以圖4和圖5的改進的空間域交疊變換來實現(xiàn)基于塊變換的編碼/解碼器的合適計算環(huán)境的框圖。
具體實施例方式
隨后的描述涉及利用自適應系數(shù)掃描次序技術(shù)的數(shù)字媒體壓縮系統(tǒng)或編碼/解碼器。為了說明的目的,結(jié)合了自適應系數(shù)掃描次序技術(shù)的壓縮系統(tǒng)的一個實施例是一個圖像或視頻壓縮系統(tǒng)。另外,可逆的交疊運算符也可以加入到壓縮系統(tǒng)或編碼/解碼器用于其他的數(shù)字媒體或2D數(shù)據(jù)。自適應系數(shù)掃描次序技術(shù)不要求數(shù)字媒體壓縮系統(tǒng)以特定的編碼格式編碼壓縮的數(shù)字媒體。
1.編碼器/解碼器圖4和圖5是基于交疊變換并且使用將在如下進行更全面描述的自適應系數(shù)掃描次序,在典型的2維(2D)數(shù)據(jù)編碼器400和解碼器500中使用的進程的歸納圖。該示意圖代表了在結(jié)合了2D數(shù)據(jù)編碼器和解碼器的壓縮系統(tǒng)內(nèi)部對此自適應系數(shù)掃描次序技術(shù)的使用的歸納性或簡化圖示。在結(jié)合有自適應系數(shù)掃描次序技術(shù)的另外編碼器中,可以使用比在典型編碼器和解碼器中示出的更多或更少的進程來進行2D數(shù)據(jù)的壓縮。例如,某些編碼器/解碼器還可包括顏色轉(zhuǎn)換、顏色格式、可縮放的編碼、無損編碼、宏模塊模型等等。壓縮系統(tǒng)(編碼器和解碼器)依賴于基于從無損到有損變化的量化參數(shù)的量化,可提供2D數(shù)據(jù)的無損和/或有損編碼。
2D數(shù)據(jù)編碼器400生成壓縮的比特流420,該比特流是作為編碼器輸入的2D數(shù)據(jù)410的更緊密表示。例如,所述2D數(shù)據(jù)輸入可以是圖像、視頻序列的一幀或其他二維數(shù)據(jù)。所述2D數(shù)據(jù)編碼器將輸入數(shù)據(jù)平鋪430為在此典型編碼器中大小為16×16像素的宏模塊。該2D數(shù)據(jù)編碼器還將每個宏模塊平鋪成4×4的塊432。把“正向交疊”運算符440應用在各塊之間的邊緣處之后使用塊變換450對每個4×4的塊進行變換。塊變換450可以是由Srinivasan于2004年12月17號提交的美國專利《Improved Reversible Transform For Lossy And Lossless 2-D DataCompression》中所描述的可逆的,與比例無關(guān)的2D變換,該專利的內(nèi)容通過引用加入這里。所述交疊運算符可以是由Tu等人于2004年12月17號提交的美國專利《Reversible Overlap Operator For Efficient Lossless Data Compression》中所描述的可逆交疊運算符,所有在此合并為參考。另外,可以使用離散余弦變換或其他的塊變換、交疊變換或交疊運算符。變換之后,每個4×4變換塊的DC系數(shù)460經(jīng)歷相似的處理過程(平鋪、正向交疊、隨后是4×4塊變換)。得到的DC變換系數(shù)和AC變換系數(shù)被量化470、信息熵化編碼的480以及打包490。
解碼器執(zhí)行相反的過程。在解碼器側(cè),從各自的信息包中通過這些系數(shù)自行解碼520和解量化530提取510變換系數(shù)比特。通過應用逆變換重新生成DC系數(shù)540,并且使用穿過DC塊邊緣的合適平滑運算符使得DC系數(shù)的平面被“逆向交疊”。隨后,通過將4×4逆變換550應用到從所述比特流中解碼的DC系數(shù)和AC系數(shù)542來重新生成完整數(shù)據(jù)。最終,在得到的圖像平面內(nèi)的塊邊緣被逆交疊過濾560。這樣就產(chǎn)生了重建的2D數(shù)據(jù)輸出。
2.自適應系數(shù)掃描次序示出的數(shù)字媒體壓縮系統(tǒng)的編碼器400(圖4)和解碼器500(圖5)在信息熵化編碼所述變換系數(shù)時,利用了一種自適應系數(shù)掃描次序技術(shù)來進一步增強壓縮效率。所述自適應系數(shù)掃描次序根據(jù)數(shù)字媒體數(shù)據(jù)的本地統(tǒng)計信息有效地調(diào)整塊系數(shù)的掃描次序,使得可以通過信息熵編碼480(圖4)更有效的編碼該系數(shù)。示出的自適應系數(shù)掃描次序技術(shù)的實現(xiàn)通過在編碼器和解碼器側(cè)都使用相同的確定進程以學習來自在編碼器和解碼器處理媒體數(shù)據(jù)時遇到的本地統(tǒng)計信息,從而避免了用于發(fā)送附帶信息給解碼器的附加的信令或比特使用。此外,該技術(shù)示出的實現(xiàn)是非常有計算效率的,這在編碼/解碼數(shù)字媒體流時收到最小等待時間的效果(這對實時通信以及相似的應用是有益的)。
該自適應系數(shù)掃描次序技術(shù)隨后示出的實現(xiàn)具有如下的屬性1.該掃描次序允許越過數(shù)字媒體數(shù)據(jù)(如圖像)變化,其約束條件是,該掃描次序僅在塊內(nèi)部對其的使用之后才進行改變或更新。
2.用于掃描次序自適應的算法是基于有條件的交換步驟,由此兩個連續(xù)的掃描索引在某些條件下翻轉(zhuǎn)。
圖6示出了根據(jù)所述自適應系數(shù)掃描次序技術(shù)在編碼器400和解碼器500內(nèi)的一次實現(xiàn)的過程600。過程600在操作610處開始,將系數(shù)掃描次序(或者在對例如水平的或垂直系數(shù)的多個掃描次序進行自適應變換的情況下的次序)初始化成期望能夠充分執(zhí)行跨越典型的數(shù)據(jù)范圍的已知次序。在所述自適應系數(shù)掃描次序技術(shù)的某些實現(xiàn)下,該原始排序在不同的掃描次序背景下是不同的,諸如用于宏模塊的系數(shù)掃描次序示出了主導的“水平”定向相對于“垂直定向”。在某些自適應系數(shù)掃描次序的過程的實現(xiàn)中,可將所述定向或掃描的背景從編碼器直接發(fā)信號給解碼器。在其他實施例中,可以從先于AC系數(shù)發(fā)送的DC子帶的定向推斷出所述定向。例如,圖7顯示了用于具有水平定向的4×4塊的原始掃描次序700的實例。圖8顯示了用于具有垂直定向的4×4塊的原始掃描次序800的實例。在此實例中,水平掃描次序700是原始掃描次序也用于無特定定向的塊。
如圖9所示,示出的過程600使用兩個一維數(shù)組次序數(shù)組910和總值數(shù)組920來跟蹤塊系數(shù)的本地統(tǒng)計信息。每個掃描次序背景都保有分別的數(shù)組集。在所示實現(xiàn)中,該數(shù)組(標記為“次序”)包含反向掃描作為其條目,即在上升的掃描次序內(nèi)系數(shù)的索引。過程600在初始化操作610中將該數(shù)組初始化到原始掃描過程。圖9示出了存儲在次序數(shù)組910內(nèi)的值,用于圖8中示出的原始垂直定向掃描次序800在初始化時的實例。在此示意圖中,DC系數(shù)先于AC系數(shù)發(fā)送,因此未出現(xiàn)在該數(shù)組中。
對每次反向掃描次序數(shù)組910,次序600也保持在此示意圖中以“總值”標記的數(shù)組,其中過程600計數(shù)各自系數(shù)出現(xiàn)的發(fā)生率。在下一操作620處,過程600將總值數(shù)組初始化為任意遞減值。例如,該數(shù)組對某個值k用值{k*N,k*(N-1),k*(N-1),...,k}填充。這在圖9表格的下一行中示出。在此實例中的值k被選擇為小的整數(shù),通常在2到4之間。在自適應系數(shù)掃描次序過程的某些實現(xiàn)中,對k的選擇可基于在量化470(圖4)中使用的量化參數(shù)。
在編碼進程中,過程600根據(jù)在次序數(shù)組910的元素反映出的掃描次序遍歷當前塊的系數(shù)(如示出的“for”循環(huán)630、680)。在此遍歷中,該過程更新在總值數(shù)組920中反映的系數(shù)出現(xiàn)的統(tǒng)計發(fā)生率。更具體地,在此圖實現(xiàn)中過程610還根據(jù)用于各自系數(shù)的非零值的發(fā)生率更新所述總值數(shù)組。如果此掃描的第n個元素是非零值(即索引次序[n]的變換系數(shù)是非零值),那么隨后如操作640和650所示,過程600將總值的第n個元素加1(即Totals[n]=Totals[n]+1)。
如果在增加之后發(fā)現(xiàn)總值[n]>總值[n-1],則意味著當前系數(shù)的非零值以比之前系數(shù)更高頻率出現(xiàn)。在這一事件中(操作660),過程將交換(exchange)操作670應用到掃描次序上。在交換操作670期間,所述掃描次序和相應的n和n-1的總值如下偽碼所示地進行交換Temp=Order[n]Order[n]=Order[n-1]Order[n-1]=TempTemp=Totals[n]Totals[n]=Totals[n-1]Totals[n-1]=Temp作為交換操作670的結(jié)果,由次序[n]索引的系數(shù)(先于交換)現(xiàn)在就先于由次序[n-1]索引的系數(shù)(先于交換)進行掃描。這是基于為此系數(shù)非零值出現(xiàn)的發(fā)生率的有效冒泡法。
例如,圖10示出了總值[n]>總值[n-1]的情形。箭頭示出了需要被交換的元素。圖11示出了緊接著該交換的次序和總值數(shù)組,而圖12示出了在4×4的塊上相應掃描次序的索引。
在典型的自適應系數(shù)掃描次序過程600中,不存在對總值[n-1]和總值[n-2]等等的條件交換。這意味著在掃描次序數(shù)組中最多有一個轉(zhuǎn)移用于每個非零值系數(shù),因此示出的過程600在多個非零值系數(shù)中具有復雜的線性次序。對于循環(huán)630-680內(nèi)部的每次塊遍歷,一個系數(shù)在所述掃描次序中最多可以移動一個位置。
雖然示出的過程600不能保證每一步驟的優(yōu)化,但是長時間運行來看基于排序算法邏輯掃描數(shù)組接近對固定分配的全局優(yōu)化。
因為自適應進程僅僅涉及了當前系數(shù)(在循環(huán)630-680內(nèi))和之前掃描元素(可以是也可以不是非零值),并且還因為有條件的切換發(fā)生從變換矩陣中編碼系數(shù)或系數(shù)解碼到變換矩陣之后,所以所述自適應是具有因果關(guān)系的。等效地,整個塊可以使用當前掃描次序編碼,隨后可以基于編碼的非零值系數(shù)和總值數(shù)組修改所述掃描次序。因此,在編碼和解碼的過程中未引入附加的等待時間。
在遍歷了當前塊內(nèi)所有系數(shù)之后,所述過程600檢查是否還存在數(shù)字媒體數(shù)據(jù)塊(例如擬被編碼的圖像)擬在操作690處被編碼/解碼。過程600在經(jīng)歷了所有塊之后結(jié)束。
過程600以周期的時間間隔復位總值數(shù)組至初始狀態(tài)以便防止算術(shù)溢出,同時有利于自適應。在圖像原始編碼解碼器內(nèi)的一個自適應系數(shù)掃描次序過程的實現(xiàn)中,總值數(shù)組在8個宏模塊的每個信息塊開始處被復位(宏模塊是輝度像素的16×16數(shù)組并且包括相應的色度像素)??傊禂?shù)組的任何元素的最大值被限制在8(宏模塊)×16(一個宏模塊中特定頻率的系數(shù))×3(在宏模塊中的顏色平面)=384+最大初始化值,它可安全地小于511。對此情況下的總值數(shù)組,9比特是足夠的。其他的復位時間間隔可被選擇用于更塊或更慢的自適應,并且復位時間間隔可以是依賴量化參數(shù)的。因此,在由操作692示出的總值數(shù)組復位時間間隔處,過程600在行進到下一個系數(shù)塊之前循環(huán)回到初始化總值數(shù)組的操作620。
總值和次序數(shù)組都以其他(更低頻率)周期間隔被復位到初始化狀態(tài)以便于在這些位置的隨機訪問。如操作693所示,過程在每個時間間隔處循環(huán)回到總值和次序數(shù)組的初始化操作610。例如根據(jù)編碼/解碼器實現(xiàn),所述過程可以在至圖像比特流獨立的編碼部分的每個入口點,或者在視頻序列每副圖像的開始處等等復位到初始化狀態(tài)。
3.與冒泡法的比較冒泡法是一種用于數(shù)據(jù)數(shù)組進行排序的傳統(tǒng)計算機過程。冒泡法程序可如下描述。令用X代表N(在不失一般性的情況下假設(shè)為數(shù)字)。X[i]是第I個元素,其中索引i的范圍從1到N。
冒泡法程序進行N-1次數(shù)組遍歷,每次遍歷都由N-1次有條件的交換操作組成。用于升序排列次序的有條件的交換操作如下定義如果i在2和N之間,且若X[i-1]>X[i],就交換數(shù)組元素X[i-1]和X[i]在每次遍歷期間,有條件交換操作被應用到從2開始按順序運行到N的索引i上。
在N-1次遍歷的末尾,數(shù)組X被排序。也用最少的修改使用相同的過程以降序、按字母順序排序、或者生成排列次序索引。實際上因為其不佳的運行時間,冒泡法不是很常用。
在此描述的自適應系數(shù)掃描次序過程600是基于相似的有條件交換操作,即有條件交換操作660和670。自適應系數(shù)掃描次序過程600的圖示的實現(xiàn)與冒泡法的不同在于圖示的過程600遵循寬松的更新時間進度。特別地,與冒泡法的兩點不同包括1.每個編碼/解碼塊的只有一次數(shù)組的遍歷,以及2.在每次遍歷期間,只將有條件的交換操作應用到對應于非零系數(shù)的數(shù)組元素上。
這些不同幫助確保了過程600的計算復雜度被限定在任何圖像/視頻編碼解碼器的能力范圍內(nèi)的。與此同時,有條件的交換操作660和670(如同在冒泡法中)在過程600中的使用在統(tǒng)計信息(如在總量數(shù)組中反映的)穩(wěn)定時具有在漸進的意義上保持最優(yōu)化的優(yōu)勢。
已經(jīng)發(fā)現(xiàn)示出的自適應系數(shù)掃描次序程序600與使用固定掃描表格的信息熵編碼方案相比,其比特率的節(jié)省高出2%。另外,該技術(shù)可以結(jié)合其他復雜的背景模型使用以在若干自適應表格中的一個中選擇,并且還可以結(jié)合赫夫曼(Huffman)、比特平面或用于數(shù)據(jù)游程長度碼的算術(shù)編碼技術(shù)一起使用。例如,可連同高通或低通頻帶使用不同的自適應掃描模型。
可使用自適應系數(shù)掃描次序技術(shù)來編碼更大的變換尺寸,也與多個變換形狀進行編碼(例如在4×8和8×4大小的塊上等等)。類似地,能夠以任何預定的方法橫跨圖像對塊或宏模塊進行掃描。有條件的交換步驟可以使用滯后現(xiàn)象或者用于性能效益的不同規(guī)則或者劣化/混亂數(shù)據(jù)用于權(quán)利管理的目的。
4.計算環(huán)境以上描述的利用了自適應系數(shù)掃描次序技術(shù)的編碼/解碼器能在任何可以實現(xiàn)數(shù)據(jù)媒體信號處理的各種設(shè)備上使用,包括計算機、圖像和視頻記錄裝置、發(fā)送和接收設(shè)備、便攜視頻播放器、視頻會議等等。數(shù)字媒體編碼技術(shù)可在硬件電路、以及在計算機或其他諸如圖13所示的計算環(huán)境內(nèi)執(zhí)行的數(shù)字媒體處理軟件內(nèi)實現(xiàn)。
圖13示出了可在其中可實現(xiàn)上述實施例的合適計算環(huán)境(1300)的歸納實例。計算環(huán)境(1300)并非要對本發(fā)明的使用或功能提出任何限制,因為本發(fā)明可以在各種通用或?qū)S玫挠嬎悱h(huán)境中實現(xiàn)。
參見圖13,計算環(huán)境(1300)包括了至少一個處理單元(1310)和存儲器(1320)。在圖13中,最基本的配置(1330)包含在虛線內(nèi)。處理單元(1310)執(zhí)行計算機可執(zhí)行指令并且可以是真實的或虛擬的處理器。在多處理系統(tǒng)中,多個處理單元執(zhí)行計算機可執(zhí)行指令以增加處理能力。存儲器(1320)可以是易失性存儲器(例如寄存器、高速緩存、RAM)、非易失性存儲器(例如ROM、EEPROM、閃存等等)或兩者的組合。存儲器(1320)存儲實現(xiàn)上述編碼器/解碼器和自適應系數(shù)掃描次序過程的軟件(1380)。
計算環(huán)境還可具有附加特性。例如,計算環(huán)境(1300)可包括存儲裝置(1340)、一個或多個輸入設(shè)備(1350)、一個或多個輸出設(shè)備(1360)以及一個或多個通信連接(1370)。諸如總線、控制器或網(wǎng)絡的互連機制(未示出)互連了計算環(huán)境(1300)的各個組件。典型地,操作系統(tǒng)軟件(未示出)提供了用于其他軟件在計算環(huán)境(1300)中執(zhí)行的操作環(huán)境,并協(xié)調(diào)計算機環(huán)境(1300)的各組件的活動。
存儲裝置(1340)可以是可移動或不可移動的,并且包括磁盤、磁帶或磁帶盒、CD-ROM、CD-RW、DVD或者其他任何能夠存儲信息并可在計算環(huán)境(1300)中被訪問的介質(zhì)。存儲裝置(1340)存儲用于實現(xiàn)編碼/解碼器和自適應系數(shù)掃描次序過程的軟件(1380)的指令。
輸入設(shè)備(1350)可以是諸如鍵盤、鼠標、輸入筆、跟蹤球的觸摸輸入設(shè)備或語音輸入設(shè)備、掃描設(shè)備或其他提供輸入給計算環(huán)境(1300)的設(shè)備。對于音頻,輸入設(shè)備(1350)可以是聲卡或者類似的以模擬或數(shù)字形式接受音頻輸入的設(shè)備,或者是為計算環(huán)境提供音頻采樣的CD-ROM讀取器。輸出設(shè)備(1360)可以是顯示器、打印機、揚聲器、CD寫入器或其他提供來自計算環(huán)境(1300)輸出的設(shè)備。
通信連接(1370)能夠經(jīng)由通信媒介與其他計算實體進行通信。通信媒介傳送諸如計算機可執(zhí)行指令、壓縮的音頻或視頻信息或者其他在已調(diào)制數(shù)據(jù)信號內(nèi)的數(shù)據(jù)。已調(diào)制數(shù)據(jù)信號是具有一個或更多以在信號內(nèi)對信息編碼的方式設(shè)置或變化其特征的信號。作為例子而非限制,通信媒介包括諸如由電的、光的、聲的、RF、紅外線、音頻或其他載體實現(xiàn)的有線或無線技術(shù)。
此處的數(shù)字媒體處理技術(shù)可結(jié)合計算機可讀介質(zhì)的上下文進行描述。計算機可讀介質(zhì)是任何可在計算環(huán)境內(nèi)被訪問的可用介質(zhì)。作為實例而非限制,在計算環(huán)境(1300)中,計算機可讀介質(zhì)包括存儲器(1320)、存儲裝置(1340)、通信媒介以及上述的任意組合。
此處的數(shù)字媒體處理技術(shù)可結(jié)合計算機可執(zhí)行指令的的上下文進行描述,諸如包括在過程模塊內(nèi)并在計算環(huán)境內(nèi)真實或虛擬的目標處理器上執(zhí)行的那些指令。通常過程模塊包括執(zhí)行特定任務或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、過程、庫、對象、類、組件、數(shù)據(jù)結(jié)構(gòu)等等。如各個實施例期望的那樣可在程序模塊之間合并和拆分過程模塊功能。用于過程模塊的計算機可執(zhí)行指令可在本地或分布式計算環(huán)境中執(zhí)行。
為了表述的原因,詳盡描述使用了諸如“確定”、“生成”、“調(diào)整”和“應用”之類的術(shù)語描述在計算環(huán)境中的計算機操作。這些術(shù)語是用于由計算機執(zhí)行操作的高度抽象,并且不應與人類執(zhí)行的動作相混淆。對應于這些術(shù)語的實際的計算機操作依據(jù)實現(xiàn)情況而變化。
考慮到可應用本發(fā)明原理的許多可能的實施例,我們聲明本發(fā)明的所有實施例都落于所附權(quán)利要求及其等效物的范圍和精神之內(nèi)。
權(quán)利要求
1.一種基于塊變換的編碼和解碼數(shù)字媒體數(shù)據(jù)的方法,所述方法包括分析在塊排列的各位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率;根據(jù)所述統(tǒng)計信息自適應所述系數(shù)的掃描次序;以及按所述自適應的掃描次序?qū)λ鱿禂?shù)進行信息熵編碼/解碼。
2.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括在決定論的因果基礎(chǔ)上對編碼和解碼數(shù)字媒體數(shù)據(jù)執(zhí)行所述自適應掃描次序,由此避免了在已編碼數(shù)字媒體數(shù)據(jù)內(nèi)系數(shù)掃描次序的明確的信令。
3.如權(quán)利要求1所述的方法,其特征在于,自適應掃描次序還包括根據(jù)在所述塊排列內(nèi)各位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率排序所述位置;以及根據(jù)所述排序重新排列掃描次序。
4.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括將系數(shù)的掃描次序初始化為原始次序;對所述數(shù)字媒體數(shù)據(jù)的當前塊內(nèi)的系數(shù),更新代表了所述塊排列內(nèi)各位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率的一組值;以及在根據(jù)掃描次序?qū)Ω魑恢玫谋闅v中,基于對代表了在所述位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率的值的比較,有條件地交換次序上相鄰的位置的次序。
5.如權(quán)利要求4所述的方法,其特征在于,所述方法還包括對每個數(shù)字媒體數(shù)據(jù)塊執(zhí)行一次遍歷。
6.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括在編碼和解碼數(shù)字媒體數(shù)據(jù)塊期間周期性地復位各位置處系數(shù)值出現(xiàn)的發(fā)生率的統(tǒng)計。
7.如權(quán)利要求1所述的方法,其特征在于,本方法還包括將所述掃描次序初始化為原始次序;以及周期性地將所述掃描次序重新初始化為原始次序。
8.如權(quán)利要求1所述的方法,其特征在于,所述分析是對塊排列上各位置處非零值系數(shù)出現(xiàn)的統(tǒng)計發(fā)生率進行的。
9.一種數(shù)字媒體編碼器和/或解碼器,包括存儲器,其中含有代表了在變換系數(shù)的塊排列內(nèi)位置的掃描次序的掃描次序表示數(shù)據(jù)結(jié)構(gòu)以及代表了各位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率的統(tǒng)計表示數(shù)據(jù)結(jié)構(gòu);處理器編程用于初始化擬代表原始掃描次序的所述掃描次序表示數(shù)據(jù)結(jié)構(gòu);初始化所述統(tǒng)計表示數(shù)據(jù)結(jié)構(gòu);對在數(shù)字媒體數(shù)據(jù)的這些塊序列內(nèi)的交換系數(shù)的當前塊,更新用于所述當前塊內(nèi)系數(shù)的所述統(tǒng)計表示數(shù)據(jù)結(jié)構(gòu);基于所述更新的統(tǒng)計表示數(shù)據(jù)結(jié)構(gòu)自適應位置的掃描次序;以及更新掃描次序表示數(shù)據(jù)結(jié)構(gòu)用于表示自適應的掃描次序。
10.如權(quán)利要求9所述的數(shù)字媒體編碼器和/或解碼器,其特征在于,自適應所述掃描次序的處理器包括經(jīng)編程以根據(jù)由更新的統(tǒng)計表示數(shù)據(jù)結(jié)構(gòu)所代表的出現(xiàn)的統(tǒng)計發(fā)生率對各位置進行排序的處理器。
11.如權(quán)利要求10所述的數(shù)字媒體編碼器和/或解碼器,其特征在于,自適應所述掃描次序的處理器包括經(jīng)編程以比較以所述掃描次序在相鄰次序位置處所述系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率,并且基于所述比較以所述掃描次序有條件地交換相鄰次序的位置的處理器。
12.如權(quán)利要求11所述的數(shù)字媒體編碼器和/或解碼器,其特征在于,自適應所述掃描次序的處理器包括經(jīng)編程作為對每個數(shù)字媒體數(shù)據(jù)的變換系數(shù)塊的所述掃描次序進行單次遍歷,以所述掃描次序為各位置執(zhí)行所述比較和有條件的交換的處理器。
13.如權(quán)利要求10所述的數(shù)字媒體編碼器和/或解碼器,其特征在于,所述統(tǒng)計表示數(shù)據(jù)結(jié)構(gòu)代表在各位置處非零系數(shù)出現(xiàn)的統(tǒng)計發(fā)生率。
14.至少一個計算機可讀記錄介質(zhì),其上帶有計算機可執(zhí)行數(shù)字媒體處理程序用于執(zhí)行基于塊交換的編碼和解碼數(shù)字媒體數(shù)據(jù)的方法,所述方法包括分析在塊排列的各位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率;根據(jù)所述統(tǒng)計信息自適應所述系數(shù)的掃描次序;以及以所述自適應的掃描次序?qū)λ鱿禂?shù)進行信息熵編碼/解碼。
15.如權(quán)利要求14所述的至少一個計算機可讀記錄介質(zhì),其特征在于,所述方法還包括在決定論的因果基礎(chǔ)上對編碼和解碼數(shù)字媒體數(shù)據(jù)執(zhí)行自適應的所述掃描次序,由此避免了在已編碼數(shù)字媒體數(shù)據(jù)內(nèi)系數(shù)掃描次序的明確的信令。
16.如權(quán)利要求14所述的至少一個計算機可讀記錄介質(zhì),其特征在于,所述方法還包括根據(jù)在所述塊排列內(nèi)各位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率排序各所述位置;以及根據(jù)所述排序重新排列掃描次序。
17.如權(quán)利要求14所述的至少一個計算機可讀記錄介質(zhì),其特征在于,所述方法還包括將系數(shù)的掃描次序初始化為原始次序;對所述數(shù)字媒體數(shù)據(jù)的當前塊內(nèi)的系數(shù),更新代表了所述塊排列內(nèi)各位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率的一組值;以及在根據(jù)掃描次序?qū)Ω魑恢玫谋闅v中,基于對代表了在所述位置處系數(shù)值出現(xiàn)的統(tǒng)計發(fā)生率的值的比較,有條件地交換次序上相鄰的位置的次序。
18.如權(quán)利要求17所述的至少一個計算機可讀記錄介質(zhì),其特征在于,所述方法還包括對每個數(shù)字媒體數(shù)據(jù)塊執(zhí)行一次遍歷。
19.如權(quán)利要求14所述的至少一個計算機可讀記錄介質(zhì),其特征在于,所述方法還包括在編碼和解碼數(shù)字媒體數(shù)據(jù)塊期間周期性地復位各位置處系數(shù)值出現(xiàn)的發(fā)生率的統(tǒng)計。
20.如權(quán)利要求14所述的至少一個計算機可讀記錄介質(zhì),其特征在于,所述方法還包括將所述掃描次序初始化為原始次序;以及周期性地將所述掃描次序重新初始化為原始次序。
全文摘要
數(shù)字媒體編碼/解碼器根據(jù)所述數(shù)字媒體的本地統(tǒng)計信息自適應地重新排列變換系數(shù)的系數(shù)掃描次序,使得可以使用信息熵編碼對所述系數(shù)進行更有效的編碼。所述自適應掃描次序被因果地應用到編碼和解碼上用來避免在所述壓縮數(shù)字媒體流中將所述掃描次序明確地發(fā)信號給所述解碼器。為了計算效率,自適應掃描次序通過經(jīng)由對每次統(tǒng)計分析更新的所述掃描次序進行的單次遍歷,在相鄰排序的系數(shù)位置上應用有條件的交換操作從而重新排列掃描次序。
文檔編號H04N7/30GK1798341SQ20051012873
公開日2006年7月5日 申請日期2005年11月30日 優(yōu)先權(quán)日2004年12月31日
發(fā)明者S·斯里尼瓦杉 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
玉环县| 馆陶县| 光泽县| 衡阳县| 扎赉特旗| 浦城县| 合水县| 襄城县| 从化市| 佛学| 辽阳县| 荆门市| 灵台县| 图木舒克市| 罗城| 绿春县| 平原县| 岐山县| 东台市| 错那县| 稷山县| 昌邑市| 东宁县| 南岸区| 临猗县| 尉犁县| 墨玉县| 视频| 印江| 大同县| 葫芦岛市| 肃南| 万年县| 镇沅| 射阳县| 双柏县| 陇南市| 永嘉县| 佳木斯市| 图们市| 辽阳县|