有界率近無損和無損圖像壓縮的制作方法
【專利說明】
[0001] 相關(guān)申請的交叉引用
[0002] 本申請要求于2012年10月3日提交的美國臨時申請序號61/709,316W及 于2013年10月2日提交的題為"BoundedRateNear-LosslessAndLosslessImage Compression"的美國申請?zhí)?4/044,627的優(yōu)先權(quán),該兩個申請的全文通過引用結(jié)合于此。
技術(shù)領(lǐng)域
[0003] 本公開設(shè)及圖像處理。本公開還設(shè)及用于圖像傳輸和顯示的壓縮和解壓縮技術(shù)。
【背景技術(shù)】
[0004] 巨大的客戶需求促使了顯示器技術(shù)、圖像分析算法W及通信技術(shù)的高速發(fā)展和復(fù) 雜圖像顯示裝置的廣泛應(yīng)用。僅舉幾例,該種裝置的范圍從驅(qū)動家庭影院的高分辨率顯示 器的DVD和藍(lán)光播放器到也具有非常高的分辨率顯示器的現(xiàn)在普遍存在的智能電話和平 板電腦。圖像處理技術(shù)的提高繼續(xù)擴(kuò)大該些裝置的功能。
【附圖說明】
[0005] 圖1示出了源(source)將編碼數(shù)據(jù)傳送給接收器(sink)的一個實(shí)例架構(gòu)。
[0006] 圖2為編碼器的一個實(shí)例。
[0007] 圖3示出了并行處理架構(gòu)。
[000引圖4示出了預(yù)測器和量化器的一個實(shí)例。
[0009] 圖5示出了實(shí)例樣本位置。
[0010] 圖6示出了壓縮樣本的編碼格式的實(shí)例。
[0011] 圖7示出了虛擬緩沖模型的一個實(shí)例。
[0012] 圖8示出了一個實(shí)例解碼器。
[0013] 圖9示出了編碼的實(shí)例邏輯。
[0014] 圖10示出了解碼的實(shí)例邏輯。
[0015] 圖11示出了一個實(shí)例編碼和解碼系統(tǒng)。
[0016] 圖12示出了圖片和圖片參數(shù)集的一個實(shí)例。
[0017] 圖13示出了編碼器的另一個實(shí)例。
[001引圖14示出了解碼器的另一個實(shí)例。
[0019] 圖15示出了塊捜索的樣本組。
[0020] 圖16示出了索引顏色歷史的實(shí)例。
[0021] 圖17示出了使用子流多路復(fù)用的切片的一部分的實(shí)例。
[0022] 圖18示出了子流多路分解邏輯的實(shí)例。
[0023] 圖19示出了子流多路復(fù)用邏輯的一個實(shí)例。
[0024] 圖20示出了切片定時和延遲的一個實(shí)例。
[0025] 圖21示出了形成9x1SAD的3x1部分SAD的實(shí)例。
[0026] 圖22示出了用于編碼器平坦度檢查的原始像素的實(shí)例。
[0027] 圖23示出了顯示系統(tǒng)的實(shí)例。
[002引圖24示出了編碼器的實(shí)例。
[0029] 圖25示出了用于動態(tài)調(diào)整由編碼器、解碼器或該兩者使用的速率控制參數(shù)的系 統(tǒng)的實(shí)例。
[0030] 圖26示出了忙碌像素區(qū)域與光滑像素區(qū)域相鄰的圖像內(nèi)容的一個實(shí)例。
[0031] 圖27示出了單元重排過程的實(shí)例。
【具體實(shí)施方式】
[0032] 圖1示出了源150通過通信鏈路154與接收器152通信的一個實(shí)例架構(gòu)100。源 150或接收器152可W存在于操控圖像數(shù)據(jù)的任意裝置內(nèi),例如,DVD或藍(lán)光播放器、智能電 話、平板電腦或任意其他裝置。源150可W包括保持虛擬緩沖器114的編碼器104。接收器 152可W包括解碼器106、存儲器108W及顯示器110。編碼器104接收源數(shù)據(jù)112 (例如, 源圖像數(shù)據(jù)),并且可W保持預(yù)定容量的虛擬緩沖器114,W模制或模擬臨時儲存壓縮輸出 數(shù)據(jù)的物理緩沖器。編碼器104還可W評估編碼符號,W通過預(yù)定的比特率進(jìn)行傳輸。編 碼器104可W指定比特率,僅舉兩例,W每個像素的比特為單位或者W每個時間單位的比 特為單位。
[0033] 例如,通過保持用于編碼的比特數(shù)減去輸出的比特數(shù)的累計(jì)計(jì)數(shù),編碼器104可 W確定比特率。雖然編碼器104可W在將編碼數(shù)據(jù)116傳輸給存儲器108之前,使用虛擬緩 沖器114來模制數(shù)據(jù)的緩沖,但是預(yù)定容量的虛擬緩沖器和輸出比特率不必等于編碼器內(nèi) 的任何緩沖器的實(shí)際容量或者實(shí)際輸出比特率。而且,編碼器104可W響應(yīng)于虛擬緩沖器 的充溢度或空虛度,調(diào)整用于編碼的量化步長。下面,描述示例性編碼器104和編碼器104 的操作。
[0034] 解碼器106可W從存儲器108中獲得編碼數(shù)據(jù)116。而且,解碼器106可W確定預(yù) 定的虛擬緩沖器的容量和比特率,并且可W確定編碼器104用于編碼該編碼數(shù)據(jù)116的量 化步長。在解碼器106將編碼數(shù)據(jù)116解碼時,解碼器106還可W確定虛擬緩沖器114的 充溢度或空虛度,并且調(diào)整用于解碼的量化步長。目P,解碼器106可W跟蹤編碼器104的操 作,并且確定編碼器104所使用的量化步長。解碼器106對編碼數(shù)據(jù)116解碼,并且將視頻 數(shù)據(jù)118提供給顯示器110。在一些實(shí)施方式中,在編碼數(shù)據(jù)116內(nèi)沒有量化步長,節(jié)省了 大量帶寬。下面描述解碼器106和編碼器104的實(shí)例及其操作。
[0035] 存儲器108可W實(shí)施為靜態(tài)隨機(jī)存取存儲器(SRAM)、動態(tài)RAM值RAM)、固態(tài)驅(qū)動器 (SSD)、硬盤或其他類型的存儲器。顯示鏈路154可W是無線或有線連接或有線和無線連接 的組合。編碼器104、解碼器106、存儲器108W及顯示器110可W存在于單個裝置(例如, 智能電話)內(nèi)?;蛘?,編碼器104、解碼器106、存儲器108W及顯示器110的任意子集可W 存在于給定的裝置內(nèi)。例如,藍(lán)光播放器可W包括解碼器106和存儲器108,并且顯示器110 可W是與藍(lán)光播放器進(jìn)行通信的分體顯示器。
[0036] 圖2示出了編碼器200的實(shí)例。編碼器200對視頻數(shù)據(jù)202編碼。例如,視頻數(shù) 據(jù)202可W采用一系列連續(xù)帖202,…,202-X的形式。帖202,…,202-X可W采用像素分 量的二維矩陣的形式,可W在任意顏色空間內(nèi)表示該形式,例如,紅/綠/藍(lán)(RGB)、YUV、亮 度Y/色度藍(lán)色Cb/色度紅色化(YCb化)、亮度Y/色度澄色/色度綠色(YCoCg)、a、紅色、 綠色、藍(lán)色(ARGB)或其他顏色空間。每個像素分量可W與空間位置對應(yīng)。雖然矩陣可W重 疊,W形成圖片,但是在矩陣內(nèi)的每個像素分量不必與在其他矩陣內(nèi)的像素分量共同定位。
[0037] 可W使用包括預(yù)定數(shù)量的比特(例如,每個像素分量具有8、10或12比特)的值, 編碼每個像素分量。作為實(shí)例,編碼可W使用10比特YCb化4:2:2、8比特YCb化4:2:2、10 比特YCbCr4:4:4、8比特YCbCr4:4:4、8比特ARGB32或8比特RGB24編碼。編碼器200 可W按照光柵掃描順序接收帖的像素分量:從左到右、從上到下。在某些實(shí)現(xiàn)方式中,視頻 編碼器200可預(yù)定速率接收像素分量。預(yù)定速率可W與每秒顯示速率的實(shí)時帖對應(yīng)。 [003引視頻編碼器200可W包括輸入、預(yù)測器&量化器204、映射和可變長度編碼器 (化0 206、速率控制器208、速率緩沖器210W及存儲器(例如,DRAM) 212。視頻編碼器200 接收和編碼像素分量。雖然表示進(jìn)入視頻編碼器200內(nèi)的像素分量的比特數(shù)可W恒定(每 個像素分量),但是表示每個編碼的像素的比特數(shù)可W顯著改變。編碼器200可W通過減小 量化步長來增大表示編碼像素的比特數(shù),或者通過增加量化步長來減少比特數(shù)。
[0039] 輸入、預(yù)測器&量化器204預(yù)測并且量化像素分量,產(chǎn)生量化殘差。在某些實(shí)現(xiàn)方 式中,輸入、預(yù)測器&量化器204可W由相同帖(例如,202-0)內(nèi)的先前編碼并且重構(gòu)的像 素分量預(yù)測像素分量。映射器和可變長度編碼器206編碼量化殘差,產(chǎn)生編碼比特。
[0040] 輸入、預(yù)測器&量化器204可W使用預(yù)定的初始量化步長來量化預(yù)定量的數(shù)據(jù),例 如,視頻像素數(shù)據(jù)。映射和可變長度編碼器206向速率控制器208發(fā)信號,該速率控制器反 過來指導(dǎo)輸入、預(yù)測器&量化器204遞增、遞減或不改變量化參數(shù),在下面更詳細(xì)地進(jìn)行描 述。
[0041] 映射和可變長度編碼器206可W使用其自然數(shù)2的補(bǔ)碼的二進(jìn)制值編碼量化的樣 本值。映射和可變長度編碼器206用于編碼每個值的比特數(shù)量可W由相同像素分量的編碼 值和與每單位樣本相關(guān)聯(lián)的前綴值的最近歷史的組合動態(tài)地確定。
[0042] 速率控制器208確定遞增、遞減還是不改變量化參數(shù)。速率控制器208可W執(zhí)行 量化步長分析,例如,通過模擬或模制W預(yù)定比特率評估的預(yù)定容量的緩沖器。模制的緩沖 器可W稱為虛擬緩沖器。如果虛擬緩沖器變滿,那么速率控制器208可W增大或遞增量化 步長。如果虛擬緩沖器變空,那么速率控制器208可W減小或遞減量化步長。下面相對于 切片的速率控制,描述其進(jìn)一步的方面。
[0043] 速率控制器208可W確