專利名稱:使用固定比率壓縮的有效視頻數(shù)據(jù)存取的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種用于對(duì)數(shù)字視頻數(shù)據(jù)進(jìn)行編碼的系統(tǒng),其中有效完成壓縮策略選擇及視頻幀的特定元素的確定和檢索。與利用自適應(yīng)動(dòng)態(tài)范圍編碼方法的數(shù)字電視解碼器設(shè)計(jì)一起,本發(fā)明具有特定的效用。
自適應(yīng)動(dòng)態(tài)范圍編碼(ADRC)涉及授予Kondo的題為“用于對(duì)數(shù)字視頻信號(hào)進(jìn)行編碼的高效率技術(shù)”的美國(guó)專利4703352中描述的一種編碼技術(shù),由此通過(guò)引用將其內(nèi)容結(jié)合到主題申請(qǐng)中,如同在此完整地進(jìn)行闡述。按照此技術(shù),可按照某一比例來(lái)計(jì)算并表征連續(xù)圖象點(diǎn)之間的差別。此比例隨后被用于選擇數(shù)據(jù)的量化策略,其目的是實(shí)現(xiàn)進(jìn)一步壓縮而不降低圖象質(zhì)量。量化通過(guò)將視頻數(shù)據(jù)除以適合于數(shù)據(jù)范圍的量化器步長(zhǎng)來(lái)丟棄視覺(jué)上不重要的信息。
ADRC方法將視頻序列的各個(gè)幀分割成如
圖1所示的許多帶。假定每個(gè)視頻幀包括720列和480行,并且視頻幀進(jìn)行4∶2∶0交錯(cuò)掃描,則Y場(chǎng)為720×720,并且U、V場(chǎng)為360×120。每個(gè)幀有2個(gè)場(chǎng)。每個(gè)帶占有幀的四行,包括Y分量22及U與V分量26。在每個(gè)帶中,圖象進(jìn)一步分割成許多塊20,每個(gè)塊為4像素乘4像素或16像素。
每個(gè)帶內(nèi),每個(gè)塊使用一種策略進(jìn)行編碼,該策略取決于塊的動(dòng)態(tài)范圍,即表示圖象元素的數(shù)字視頻數(shù)據(jù)的最大與最小值之間的差。具有較小動(dòng)態(tài)范圍的塊使用較少的比特來(lái)編碼,并且相反的情況也成立,某些塊需要較多的比特。相應(yīng)地,每個(gè)編碼塊具有不同的比特長(zhǎng)度。然而,按照此編碼,ADRC方法也使用固定的壓縮比將每個(gè)整帶進(jìn)行壓縮。為獲得該比率,相同帶中的所有塊互相交換比特,從而使得難以定位某個(gè)特定塊。
另外,因?yàn)檫\(yùn)動(dòng)補(bǔ)償是基于預(yù)測(cè)技術(shù),需要能夠在錨幀(anchorframe)中定位參考宏塊,所以使用帶作為編碼單位增加了實(shí)時(shí)解碼處理的復(fù)雜性和困難。使用ADRC方法,假定帶中的塊未使用固定比特率壓縮,則計(jì)算宏塊的位置是不直接的。一些情況下,要定位特定宏塊,必須搜索多達(dá)五個(gè)帶的大量數(shù)據(jù)。這不但耗時(shí)而且影響性能。
此外,通過(guò)提供七種塊編碼策略,ADRC還導(dǎo)致低效。視數(shù)據(jù)而定,任一給定的帶可能要應(yīng)用所有七種編碼/解碼策略。因?yàn)閹е械臄?shù)據(jù)不是使用固定比特率來(lái)壓縮,所以,即使是在顯示單一行,也都必須對(duì)一個(gè)完整的帶進(jìn)行解碼。
使用ADRC方法的其它專利并未以與本發(fā)明相同的方式來(lái)解決所述方法的低效。這些專利包括1997年2月27日公布的題為“圖象信號(hào)的編碼/解碼設(shè)備”的日本特許公報(bào)09139941 A和題為“圖象編碼裝置、圖象編碼方法、圖象編碼和傳送方法及圖象記錄媒體”的美國(guó)專利No.5734433(′433)。日本特許公報(bào)09139941A涉及通過(guò)由分形編碼中的ADRC編碼對(duì)層向的圖象元素值進(jìn)行歸一化來(lái)減少所需的計(jì)算量?!?33專利使用最小平方優(yōu)化方法來(lái)確定編碼數(shù)據(jù)的最小值。
本發(fā)明通過(guò)提供一種用于對(duì)編碼的輸入數(shù)字視頻數(shù)據(jù)進(jìn)行組織和檢索的系統(tǒng)(即一種方法、一種裝置和計(jì)算機(jī)可執(zhí)行處理步驟)來(lái)著手滿足上述需求,以便可以容易地確定和檢索數(shù)據(jù)的任一特定段。這由兩個(gè)創(chuàng)新來(lái)完成。首先,所述帶不再是用于對(duì)數(shù)字視頻數(shù)據(jù)進(jìn)行編碼的單位。相反,更小的單位,即編碼塊被用作幀的編碼單位。編碼塊是例如6個(gè)的更少數(shù)量的壓縮到固定長(zhǎng)度的4×4水平附加塊(horizontally adjunct block)。其次,在每個(gè)編碼塊中,僅采用兩種量化策略,因此容易確定任一編碼塊的開(kāi)始和結(jié)束位置以及編碼塊中任一單獨(dú)塊的位置。
本發(fā)明的另一個(gè)目的是提供一種有效并且經(jīng)濟(jì)的量化選擇策略,通過(guò)在必要時(shí)犧牲幀的質(zhì)量來(lái)確保所需的壓縮率。而且,由于僅丟棄視覺(jué)上不重要的數(shù)據(jù),因此,在產(chǎn)生用戶可接受的預(yù)定圖象質(zhì)量的視頻輸出的同時(shí),本發(fā)明的量化選擇策略還增強(qiáng)了總體編碼和解碼效率。該策略確保所產(chǎn)生的圖象的主觀視覺(jué)質(zhì)量令人滿意,不合討厭的非自然信號(hào)。
在本發(fā)明中,ADRC方法下提供的七種量化策略被替代為兩種策略細(xì)量化和粗量化。在選擇量化策略中,首先使用修改的動(dòng)態(tài)范圍表所指定的比特?cái)?shù)對(duì)數(shù)據(jù)進(jìn)行編碼。然而,如果此細(xì)量化策略對(duì)產(chǎn)生所需比特傳輸率的壓縮度不保證,則立即選擇粗策略,該策略使用更大的壓縮,因而使用較少的比特。因?yàn)閯?dòng)態(tài)范圍不準(zhǔn)確反應(yīng)數(shù)據(jù)的分布,所以使用不止一種策略。例如,下組數(shù)據(jù){0,20,22,21,24,25,200}具有動(dòng)態(tài)范圍200。然而,大多數(shù)數(shù)據(jù)集中在值22周圍。諸如32的粗量化級(jí)可保證整個(gè)編碼塊具有固定的壓縮率2。然而,這比諸如8的較小量化級(jí)更嚴(yán)重地降低圖象質(zhì)量。雖然層次200需要更多的比特,然而對(duì)于數(shù)據(jù)范圍20-25,較細(xì)量化級(jí)可提供更準(zhǔn)確的結(jié)果。額外需要的比特可從相同編碼塊中具有較小動(dòng)態(tài)范圍的其它塊中提供。相應(yīng)地,本發(fā)明對(duì)編碼塊使用不止一個(gè)策略,但避免了ADRC方法提供的七種策略帶來(lái)的復(fù)雜性。
本發(fā)明的另一個(gè)目的是提供一種用于減少必須傳送的表示特定編碼塊的最小值的比特?cái)?shù)的系統(tǒng)。在本發(fā)明的一個(gè)實(shí)施例中,不是傳送按照ADRC方法需要8比特的每個(gè)數(shù)據(jù)塊的最小值,本發(fā)明是利用表示最小值所在范圍的3比特代碼和表示每個(gè)最小值所需的比特?cái)?shù)目。由于圖象部分的連續(xù)性,給定編碼塊中某些最小值會(huì)有相對(duì)小的差值,因此這些最小值可用不到8比特來(lái)表示;許多塊的最小值為0。因此,從統(tǒng)計(jì)上說(shuō),此編碼系統(tǒng)減少了對(duì)圖象進(jìn)行編碼所需的比特?cái)?shù)目。
提供此概述以便于快速理解本發(fā)明的特性。結(jié)合附圖,參考下列對(duì)本發(fā)明優(yōu)選實(shí)施例的詳細(xì)描述,可獲得對(duì)本發(fā)明更完整的理解。
圖1是按照傳統(tǒng)ADRC系統(tǒng)的分割成帶和塊的幀的視圖;圖2a是按照本發(fā)明的分割成編碼塊的幀的視圖;圖2b是按照本發(fā)明的分割成4×4微型塊的編碼塊的內(nèi)部的視圖;圖3是按照本發(fā)明的用壓縮率p壓縮的分割成編碼塊的幀的一部分的視圖;圖4是編碼塊的視圖,其中每一個(gè)4×4微型塊具有不同的動(dòng)態(tài)范圍,因此在應(yīng)用量化策略后有不同數(shù)量的比特。
圖5是按照本發(fā)明表示兩個(gè)編碼的編碼塊的視圖;圖6a是顯示如何按照本發(fā)明檢索宏塊的視圖,說(shuō)明宏塊大小為16×16,編碼塊大小為4×24,并且宏塊在4個(gè)編碼塊中的最佳情況;圖6b是顯示如何按照本發(fā)明檢索宏塊的視圖,說(shuō)明宏塊大小為16×16,編碼塊大小為4×24,并且宏塊居中于10個(gè)編碼塊的邊界間的最差情況;圖6c是顯示如何按照本發(fā)明檢索宏塊的視圖,說(shuō)明宏塊大小為17×17,編碼塊大小為4×24,并且宏塊在5個(gè)編碼塊中的最佳情況;圖6d是顯示如何按照本發(fā)明檢索宏塊的視圖,說(shuō)明宏塊大小為17×17,編碼塊大小為4×24,并且宏塊居中于10個(gè)編碼塊邊界間的最差情況;圖7是用于說(shuō)明本發(fā)明操作的流程圖;圖8是顯示本發(fā)明第一和第二實(shí)施例的單元的功能框圖;圖9描述可實(shí)現(xiàn)本發(fā)明的系統(tǒng)。
圖9示出可實(shí)現(xiàn)本發(fā)明的系統(tǒng)的代表性實(shí)施例。在此實(shí)施例中,在DTV視頻解碼器118中實(shí)現(xiàn)所述系統(tǒng)。首先,視頻比特流94輸入MPEG 2解碼器122。在比特流被解碼后,便應(yīng)用嵌入式編碼器124的固定比率壓縮方案。壓縮的數(shù)據(jù)隨后保存在SDRAM 126中。因?yàn)閿?shù)據(jù)是以壓縮格式保存并且占用的空間比原始視頻數(shù)據(jù)占用的空間少,所以需要較小的SDRAM存儲(chǔ)器空間。一般出于以下兩個(gè)原因來(lái)檢索保存的數(shù)據(jù)第一是要輸出到顯示器130,第二是在系統(tǒng)控制120的控制下MPEG 2解碼器122請(qǐng)求運(yùn)動(dòng)補(bǔ)償參考?jí)K時(shí)。在第一種情況中,嵌入式解碼器128由系統(tǒng)控制單元120調(diào)用,以從SDRAM 16檢索數(shù)據(jù)并對(duì)數(shù)據(jù)執(zhí)行解壓。在解壓后,數(shù)據(jù)逐行輸出到DTV顯示器130。在第二種情況中,MPEG 2解碼器122通過(guò)系統(tǒng)控制120向SDRAM 126請(qǐng)求特定參考?jí)K。這些塊隨后由嵌入式解碼器128進(jìn)行解壓并被輸出。
圖8是一個(gè)框圖,描述視頻輸入和用于實(shí)現(xiàn)信號(hào)處理步驟的模塊。此設(shè)備可被修改以通過(guò)無(wú)線電發(fā)射機(jī)或通過(guò)無(wú)線裝置傳送輸出信號(hào),其中信號(hào)可為載波。圖7是一個(gè)流程圖,說(shuō)明圖8所示模塊的功能。在步驟S801開(kāi)始,原始未編碼的視頻數(shù)據(jù)輸入到本發(fā)明中。從視頻源輸入的視頻數(shù)據(jù)94輸入到塊分割器96,在步驟S802,該分割器將幀分成編碼塊。編碼塊是本發(fā)明的編碼組。編碼塊包括如圖2b所示的固定數(shù)量的4×4微型塊20。例如,編碼塊可以是k個(gè)4×4的水平附加微型塊(horizontally adjunct miniblock),其中,k=6,導(dǎo)致每四行數(shù)據(jù)包括M個(gè)編碼塊,其中M=(像素行數(shù))/4k。與傳統(tǒng)的ADRC方法相比較,將編碼塊用作編碼組導(dǎo)致更簡(jiǎn)化和水平規(guī)則的數(shù)據(jù)結(jié)構(gòu)(horizontally regularized data structure)。
例如,如果我們假定編碼塊是垂直方向上的4個(gè)像素乘以水平方向上的4k個(gè)像素,或者為水平方向上的k個(gè)4×4塊,則在一個(gè)編碼塊中有水平方向上的24個(gè)像素,并且在圖2a每個(gè)場(chǎng)的每個(gè)水平路徑中,有1920/24,或者說(shuō)有80個(gè)Y編碼塊以及40個(gè)U與40個(gè)V編碼塊。因?yàn)槊總€(gè)編碼塊以固定長(zhǎng)度獨(dú)立編碼,所以只需直接搜索每個(gè)編碼塊的起始地址,便可檢索任一特定編碼塊。如圖3所示,所指的各個(gè)節(jié)點(diǎn)30具有固定比特?cái)?shù)的間隔。例如,如果每個(gè)編碼塊按因子p=2進(jìn)行壓縮,作為圖7步驟S803中的壓縮的結(jié)果,一個(gè)編碼塊的指定比特?cái)?shù)是4×24×8/2或384比特。因此,如圖3所示,忽略一個(gè)編碼塊28意味著忽略384比特,并且搜索參考宏塊的過(guò)程被簡(jiǎn)化。按照此示例,雖然k個(gè)4×4微型塊中的任一個(gè)可能具有不同數(shù)量的比特,如圖4中42,44,46,48,50,52所示,但編碼塊中所有比特的總和必須等于相同的固定數(shù)。在此示例中為384比特。如果使用的總比特?cái)?shù)少于384,則添加虛比特。
在每個(gè)編碼塊中,利用ADRC方法的簡(jiǎn)化有效的適應(yīng)來(lái)壓縮比特。首先,由圖8的102確定數(shù)字?jǐn)?shù)據(jù)的最小值,最小值范圍為0到255。按照?qǐng)D7的步驟S804,如果k=6并且有k個(gè)微型塊,則每個(gè)編碼塊將有6個(gè)被確定的最小值。
如圖7的步驟S805所示,圖8中104所示的最大/最小值編碼器能以多種方式對(duì)這些最小值進(jìn)行存儲(chǔ)。在一種模式中,在圖7的步驟S810,采用全長(zhǎng)方法。這意味著每個(gè)最小值以一個(gè)字節(jié)(8比特)來(lái)存儲(chǔ)。因此,如果編碼塊中有6個(gè)微型塊,則需要48比特來(lái)存儲(chǔ)該編碼塊的6個(gè)最小值。
另一方面,采用可變長(zhǎng)度存儲(chǔ)方法。此方法利用以下事實(shí)平均起來(lái),編碼塊中的多數(shù)最小值不需要8比特的存儲(chǔ)。對(duì)于編碼塊中所有最小值均為0或255的最佳情況,僅需1比特的存儲(chǔ)。對(duì)于最差情況,最大需要42比特來(lái)存儲(chǔ),如下表第4層所示。
此編碼的算法在下表中說(shuō)明,它基于計(jì)算每個(gè)編碼塊的最小值范圍并以編碼形式存儲(chǔ)這些最小值及指出如何對(duì)這些最小值進(jìn)行解碼的層次碼(level code)。
首先,按照著圖7的步驟806,每個(gè)編碼塊中的最小值按降序進(jìn)行排序。隨后,在圖7的步驟807,計(jì)算每個(gè)最小值的層次。
建立7個(gè)層次,每個(gè)層次對(duì)應(yīng)于最小值的不同范圍,如下所述。第1層對(duì)應(yīng)于編碼塊的最高最小值小于2的情況。在這種情況下,將最小值作為0處理。第1層也對(duì)應(yīng)于最低最小值等于255的情況。對(duì)于第1層的這兩種情況,整個(gè)編碼塊的最小值所需的存儲(chǔ)量為1比特加上3個(gè)層次比特。
第2層對(duì)應(yīng)于編碼塊最高最小值為23且每個(gè)微型塊需要的存儲(chǔ)量是3比特的情況。第3層對(duì)應(yīng)于編碼塊的最高最小值小于25且每個(gè)微型塊需要的存儲(chǔ)量是5比特的情況。第4層對(duì)應(yīng)于編碼塊的最高最小值小于27且每個(gè)微型塊需要的存儲(chǔ)量是7比特的情況。第5層對(duì)應(yīng)于最低最小值介于27和27+24之間的情況。這種情況下,從范圍減去128,并且每個(gè)微型塊需要的存儲(chǔ)量是4比特。第6層對(duì)應(yīng)于最低最小值介于27和27+26之間的情況。這種情況下,從范圍中減去128,并且每個(gè)微型塊需要6比特。第7層對(duì)應(yīng)于最低最小值大于或等于27+26的情況。這種情況下,從255中減去最低最小值,并且每個(gè)微型塊需要6比特。
在所有情況下,均需要3比特的開(kāi)銷來(lái)存儲(chǔ)層次號(hào)。最佳情況下,每個(gè)編碼塊需要4比特存儲(chǔ)最小值,顯示出比先有技術(shù)節(jié)省92%存儲(chǔ)量。最差情況下,需要45比特,顯示出比先有技術(shù)節(jié)省6%存儲(chǔ)量。毫無(wú)疑問(wèn),使用此方法存儲(chǔ)最小值將節(jié)省存儲(chǔ)器。不論是使用圖7中步驟S810的全長(zhǎng)存儲(chǔ)方法還是使用圖7中步驟S806、S807、S808和S809的可變長(zhǎng)度存儲(chǔ)方法,最小值均被存儲(chǔ)并且隨后如圖7中步驟S811所示的那樣由圖8中的最大/最小值減法器106將其從數(shù)字視頻數(shù)據(jù)中減去。
在減去最小值后,數(shù)據(jù)被輸入圖8中的動(dòng)態(tài)范圍計(jì)算器108。在圖7的步驟S812中為每個(gè)微型塊計(jì)算動(dòng)態(tài)范圍時(shí),以一種簡(jiǎn)化的方式使用ADRC動(dòng)態(tài)范圍查找表。ADRC表被設(shè)計(jì)成使用8個(gè)子范圍覆蓋整個(gè)范圍的空間分辨率,即
,每個(gè)子范圍都具有不同的量化級(jí)并因而有不同的比特率。相應(yīng)地,僅需要存儲(chǔ)3比特以指出選定的子范圍。
ADRC方法由于應(yīng)用八種不同的量化策略,使得數(shù)據(jù)檢索麻煩且耗時(shí),與ADRC方法不同,在圖8的110中,本發(fā)明僅使用兩種量化策略,但仍取得了同樣的客戶滿意度。因?yàn)閮H使用一種策略可能導(dǎo)致嚴(yán)重的圖象質(zhì)量降低,因此采用兩種策略。動(dòng)態(tài)范圍只是一個(gè)數(shù)據(jù)塊將如何動(dòng)態(tài)變化的指示,而并不指出數(shù)據(jù)集中在任一特定數(shù)據(jù)值周圍。由于量化策略確定壓縮數(shù)據(jù)的粗細(xì)度如何,因此這很重要。
下列示例展示了數(shù)據(jù)集中的重要性。假設(shè)有一組數(shù)據(jù){0,20,22,21,24,25,200},該組具有的動(dòng)態(tài)范圍200但緊密地集中在數(shù)據(jù)值22周圍。單個(gè)邊遠(yuǎn)值200導(dǎo)致200的動(dòng)態(tài)范圍,但并不反應(yīng)大多數(shù)數(shù)據(jù)的特性,大多數(shù)數(shù)據(jù)集中于值22周圍。根據(jù)動(dòng)態(tài)范圍,可以選擇諸如32的粗量化級(jí),因?yàn)檫@將保證整個(gè)編碼塊具有固定的壓縮率2。然而,選擇此粗量化級(jí)將比諸如8的較小量化級(jí)更嚴(yán)重降低壓縮圖象的質(zhì)量。較小的量化級(jí)對(duì)于數(shù)據(jù)范圍[20,25]將產(chǎn)生更精確的結(jié)果,但表示數(shù)據(jù)值200將需要更多比特。如圖5所示,額外的比特可由相同編碼塊中具有較小動(dòng)態(tài)范圍的其它塊來(lái)提供。因此,本著產(chǎn)生用戶可接受的預(yù)定視覺(jué)質(zhì)量而不犧牲數(shù)據(jù)檢索的簡(jiǎn)單和速度的目的,在圖7的步驟S813,本發(fā)明確定第一量化策略,所述第一量化策略將為各個(gè)微型塊提供細(xì)量化,但如果在圖7的步驟S814中確定無(wú)法達(dá)到編碼塊所需的壓縮率,則在圖7的步驟S815,選擇保證所需比特率的較粗策略。
在選擇量化策略后,下一步驟是在圖7的S816中對(duì)數(shù)據(jù)進(jìn)行量化。一旦數(shù)據(jù)被圖8中的量化器112處理后,在圖7的S817中,圖8中的壓縮數(shù)據(jù)格式化器114就對(duì)所述數(shù)據(jù)進(jìn)行格式化。圖5示出編碼塊數(shù)據(jù)結(jié)構(gòu)。圖5中的第一比特76用于存儲(chǔ)編碼策略,該編碼策略表示選定的量化策略。圖5中的緊接著的3個(gè)比特78用于存儲(chǔ)最小值開(kāi)銷,該最小值開(kāi)銷表示在利用可變長(zhǎng)度方法時(shí)選定的最小值層次。圖5中的下一部分?jǐn)?shù)據(jù)結(jié)構(gòu)80用于存儲(chǔ)最小值。這些值可以為全長(zhǎng)形式,或者在已選定可變長(zhǎng)度方法時(shí)為編碼形式。圖5中的緊接著的3比特40表示微型塊0的動(dòng)態(tài)范圍信息。圖5中的量化的數(shù)據(jù)84隨后,并且長(zhǎng)度隨數(shù)據(jù)的特性和選定的量化策略而變化。編碼塊中每個(gè)微型塊的動(dòng)態(tài)范圍信息和量化的數(shù)據(jù)均出現(xiàn)。相應(yīng)地,對(duì)于任一給定編碼塊,假設(shè)編碼塊包括k個(gè)微型塊,則所需存儲(chǔ)的總比特?cái)?shù)可由以下公式表示總比特=1+3+∑最小值比特+3k+∑數(shù)據(jù)比特。圖5表示k=6的情況。
此水平規(guī)則的數(shù)據(jù)結(jié)構(gòu)(horizontally regularized data structure)有利于方便地檢索信息。這因以下兩個(gè)原因而重要1)因要能對(duì)壓縮的視頻數(shù)據(jù)進(jìn)行快速解碼和輸出;以及2)因要能對(duì)特定參考?jí)K快速檢索并有效計(jì)算運(yùn)動(dòng)補(bǔ)償。例如,對(duì)于宏塊大小為16×16且編碼塊大小為4×24,最差情況下,必須檢索10個(gè)編碼塊并將它們解壓,以便確定所需編碼塊的位置,這就意味著要檢索水平和垂直方向中的所有編碼塊。如圖6b所示,在宏塊居中于10個(gè)編碼塊的邊界之間時(shí),這種情況便會(huì)出現(xiàn)。對(duì)于最佳情況,宏塊在4個(gè)編碼塊中,如圖6a所示。假設(shè)有規(guī)則的數(shù)據(jù)結(jié)構(gòu),因?yàn)楹陦K和編碼塊兩者的大小均已知道,所以易于找出宏塊開(kāi)始的編碼塊及結(jié)束的編碼塊。
作為規(guī)則的數(shù)據(jù)結(jié)構(gòu)的結(jié)果,可以檢索編碼塊中的任一4×4微型塊而無(wú)需對(duì)整個(gè)編碼塊進(jìn)行解碼。這通過(guò)計(jì)算確切的編碼塊開(kāi)始地址、每個(gè)4×4塊使用的比特?cái)?shù)及所有的開(kāi)銷比特而完成。因?yàn)榫幋a塊小且所需的計(jì)算僅為加和減,所以檢索任一特定塊不復(fù)雜。
已經(jīng)關(guān)于特定說(shuō)明性實(shí)施例對(duì)本發(fā)明進(jìn)行了描述。要知道本發(fā)明不限于上述實(shí)施例和對(duì)其的修改,并且在不脫離后附的精神和范圍的情況下,本領(lǐng)域的普通技術(shù)人員可以進(jìn)行各種的改變和修改。
權(quán)利要求
1.一種對(duì)包括一個(gè)或多個(gè)幀的數(shù)字視頻數(shù)據(jù)進(jìn)行編碼的方法,所述方法包括· 將每個(gè)幀劃分成固定長(zhǎng)度的編碼塊,每個(gè)編碼塊包括固定數(shù)量的微型塊;· 確定每個(gè)編碼塊中每個(gè)微型塊的最大值和最小值;· 通過(guò)將每個(gè)編碼塊中的每個(gè)微型塊的所述最大值減去所述最小值來(lái)計(jì)算每個(gè)編碼塊中的每個(gè)微型塊的動(dòng)態(tài)范圍;· 按照選定的量化策略對(duì)每個(gè)微型塊進(jìn)行量化,這樣,以固定的壓縮率對(duì)每個(gè)編碼塊進(jìn)行編碼,每個(gè)編碼塊中的比特?cái)?shù)少于原來(lái)的數(shù)目,并且可以容易確定每個(gè)編碼塊的開(kāi)始和結(jié)束位置;· 將包括所述最小值數(shù)據(jù)、動(dòng)態(tài)范圍數(shù)據(jù)及編碼壓縮視頻數(shù)據(jù)的壓縮編碼塊輸出。
2.如權(quán)利要求1所述的方法,其特征在于對(duì)所述動(dòng)態(tài)范圍的計(jì)算還包括以下步驟· 將每個(gè)動(dòng)態(tài)范圍劃分成多個(gè)子范圍,每個(gè)子范圍對(duì)應(yīng)于一個(gè)唯一的量化級(jí);· 將每個(gè)子范圍與一個(gè)標(biāo)識(shí)符相關(guān)聯(lián)。
3.如權(quán)利要求2所述的方法,其特征在于對(duì)每個(gè)微型塊的量化還包括以下步驟· 選擇所述子范圍和對(duì)應(yīng)于每個(gè)微型塊的所述動(dòng)態(tài)范圍的第一對(duì)應(yīng)量化策略;以及· 為每個(gè)微型塊確定第二較粗量化策略,該第二較粗量化策略將提供所需的壓縮率和解碼時(shí)將展示預(yù)定圖像質(zhì)量的圖像。
4.如權(quán)利要求3所述的方法,其特征在于還包括以下步驟· 在所述第一量化策略可提供所需的壓縮率時(shí),選擇所述第一量化策略;以及· 在未選擇所述第一量化策略時(shí)選擇所述第二量化策略。
5.如權(quán)利要求4所述的方法,其特征在于還包括以下步驟· 將所述編碼塊最小值從最低到最高值進(jìn)行排序;· 對(duì)于每個(gè)編碼塊,從一組預(yù)定層次中確定對(duì)應(yīng)于所述最小值的層次;· 將標(biāo)識(shí)符與每個(gè)層次相關(guān)聯(lián);· 將所述最小值存儲(chǔ)為變長(zhǎng)的位模式(bit patterns);以及· 其中,通過(guò)將每個(gè)標(biāo)識(shí)符與表示所述最小值的每個(gè)位模式相結(jié)合,可重構(gòu)所述最小值。
6.一種用于對(duì)包括一個(gè)或多個(gè)幀的視頻數(shù)據(jù)輸入進(jìn)行編碼的裝置,所述裝置包括· 塊分割部分(96),用于將所述輸入視頻信號(hào)劃分成固定長(zhǎng)度的編碼塊,每個(gè)編碼塊還包括固定數(shù)量的微型塊,包含固定數(shù)量的比特;· 最大/最小值確定部分(102),用于確定每個(gè)編碼塊中的每個(gè)微型塊的最大值和最小值;· 動(dòng)態(tài)范圍計(jì)算部分(108),用于根據(jù)所述最大和最小值來(lái)計(jì)算每個(gè)微型塊的動(dòng)態(tài)范圍;· 量化部分(112),用于以選定的量化策略對(duì)每個(gè)微型塊進(jìn)行量化,這樣,以固定的壓縮率對(duì)每個(gè)編碼塊進(jìn)行編碼,每個(gè)編碼塊中的比特?cái)?shù)少于原來(lái)的數(shù)目,并且可以容易確定每個(gè)編碼塊的開(kāi)始和結(jié)束位置;· 輸出裝置(114),用于將包括最小值數(shù)據(jù)、動(dòng)態(tài)范圍數(shù)據(jù)及壓縮視頻數(shù)據(jù)的壓縮編碼塊輸出。
7.如權(quán)利要求6所述的裝置,其特征在于還包括量化策略選擇部分(116),用于1)為每個(gè)微型塊確定對(duì)應(yīng)于所述微型塊的動(dòng)態(tài)范圍的第一細(xì)量化策略,b)為每個(gè)微型塊確定第二較粗量化策略,該第二較粗量化策略比所述第一量化策略提供更大的壓縮,并將提供所需的比特傳輸率和解碼時(shí)展示預(yù)定圖像質(zhì)量的圖像;以及c)在所述第一量化策略不提供所需的壓縮率時(shí)選擇所述第二量化策略。
8.如權(quán)利要求7所述的裝置,其特征在于還包括最小值層次計(jì)算部分(104),用于將所述最小值與一組預(yù)定的層次相比較,并為每個(gè)編碼塊確定對(duì)應(yīng)的層次;相關(guān)部分(104),用于將算得的最小值層次與標(biāo)識(shí)符相關(guān);和最小值存儲(chǔ)部分(104),其中最小值被存儲(chǔ)為變長(zhǎng)的位模式;其中所述最小值可以通過(guò)將所述標(biāo)識(shí)符與表示所述最小值的所述位模式相結(jié)合而被重構(gòu)。
9.對(duì)包括一個(gè)或多個(gè)幀的數(shù)字視頻數(shù)據(jù)進(jìn)行編碼的計(jì)算機(jī)可執(zhí)行處理步驟,所述計(jì)算機(jī)可執(zhí)行處理步驟被存儲(chǔ)在計(jì)算機(jī)可讀取的媒體上并包括· 將每個(gè)幀劃分成相鄰的垂直和水平比特的微型塊;· 將固定數(shù)量的所述微型塊分組成固定長(zhǎng)度的編碼塊;· 為每個(gè)編碼塊確定固定的壓縮率,這樣,每個(gè)編碼塊中的比特?cái)?shù)少于原來(lái)的數(shù)目,并且可以容易確定每個(gè)編碼塊的開(kāi)始和結(jié)束位置;· 確定每個(gè)編碼塊中的每個(gè)微型塊的最大值和最小值;· 通過(guò)將每個(gè)編碼塊中的每個(gè)微型塊的所述最大值減去所述最小值來(lái)計(jì)算每個(gè)微型塊的動(dòng)態(tài)范圍;· 將所述動(dòng)態(tài)范圍劃分成多個(gè)子范圍,每個(gè)子范圍對(duì)應(yīng)于一個(gè)唯一的量化策略;· 將每個(gè)子范圍與一個(gè)標(biāo)識(shí)符相關(guān)聯(lián);· 選擇所述子范圍和對(duì)應(yīng)于所述微型塊的所述動(dòng)態(tài)范圍的第一量化策略;· 確定第二量化策略,所述第二量化策略將提供所述壓縮率和解碼時(shí)具有預(yù)定圖像質(zhì)量的圖像;· 當(dāng)與所述選定子范圍相關(guān)聯(lián)的所述第一量化策略未提供所需的壓縮率時(shí)選擇所述第二量化策略;· 按照所述選定的量化策略對(duì)每個(gè)微型塊進(jìn)行量化;以及· 輸入壓縮的視頻數(shù)據(jù)。
10.一種信號(hào),體現(xiàn)為載波,它表示數(shù)字視頻數(shù)據(jù),包括相鄰的垂直和水平字節(jié)的單位的幀,被分組成固定數(shù)量的固定長(zhǎng)度編碼塊,每個(gè)編碼塊以固定的壓縮率被編碼,這樣,每個(gè)編碼塊中的比特?cái)?shù)少于原來(lái)的未壓縮的數(shù)目,并且可以容易確定每個(gè)編碼塊的開(kāi)始和結(jié)束位置;每個(gè)單位具有確定的最大值和最小值,每個(gè)編碼塊具有一個(gè)動(dòng)態(tài)范圍,該動(dòng)態(tài)范圍是通過(guò)將所述編碼塊中的每個(gè)單位的所述最大值減去所述最小值的算得的,每個(gè)動(dòng)態(tài)范圍被劃分成多個(gè)子范圍,每個(gè)子范圍對(duì)應(yīng)于一個(gè)唯一的量化策略并與一個(gè)標(biāo)識(shí)符相關(guān)聯(lián),按照所述單位的所述動(dòng)態(tài)范圍選擇第一子范圍,并且在所述第一子范圍不能提供所需的壓縮率時(shí),由將提供所需壓縮率的第二子范圍代替所述第一子范圍,并應(yīng)用所述選定的量化策略對(duì)所述數(shù)據(jù)進(jìn)行量化。
11.如權(quán)利要求10所述的信號(hào),其特征在于從最低到最高值對(duì)每個(gè)編碼塊的最小值范圍進(jìn)行排序;以及計(jì)算每個(gè)編碼塊的最小值層次;以及將各層次的標(biāo)識(shí)符與各編碼塊相關(guān)聯(lián);以及所述最小值被存儲(chǔ)為變長(zhǎng)的位模式;以及通過(guò)將所述標(biāo)識(shí)符與表示所述最小值的所述位模式相結(jié)合可重構(gòu)所述最小值。
12.一種用于對(duì)包括一個(gè)或多個(gè)幀的視頻數(shù)據(jù)輸入進(jìn)行編碼的裝置,所述裝置包括· 裝置(96),用于將所述輸入視頻信號(hào)劃分成固定長(zhǎng)度的編碼塊,每個(gè)編碼塊還包括固定數(shù)量的微型塊,包含固定數(shù)量的比特;· 裝置(102),用于確定每個(gè)編碼塊中的每個(gè)微型塊的最大值和最小值;· 裝置(108),用于根據(jù)所述最大和最小值來(lái)計(jì)算每個(gè)微型塊的動(dòng)態(tài)范圍;· 裝置(112),用于以選定的量化策略對(duì)每個(gè)微型塊進(jìn)行量化,這樣,以固定的壓縮率對(duì)每個(gè)編碼塊進(jìn)行編碼,每個(gè)編碼塊中的比特?cái)?shù)少于原來(lái)的數(shù)目,并且可以容易確定每個(gè)編碼塊的開(kāi)始和結(jié)束位置;· 裝置(114),用于將包括最小值數(shù)據(jù)、動(dòng)態(tài)范圍數(shù)據(jù)及壓縮視頻數(shù)據(jù)的壓縮編碼塊輸出。
13.如權(quán)利要求12所述的裝置,其特征在于還包括裝置(110),用于a)為每個(gè)微型塊確定對(duì)應(yīng)于所述微型塊的動(dòng)態(tài)范圍的第一細(xì)量化策略,b)為每個(gè)微型塊確定第二較粗量化策略,該第二較粗量化策略比所述第一量化策略提供更大的壓縮,并將提供所需的比特傳輸率和解碼時(shí)展示預(yù)定圖像質(zhì)量的圖像;以及c)在所述第一量化策略不提供所需的壓縮率時(shí)選擇所述第二量化策略。
14.如權(quán)利要求13所述的裝置,其特征在于還包括用于通過(guò)將每個(gè)最小值與一組預(yù)定的層次相比較來(lái)計(jì)算最小值層次的裝置(104);用于將所述算得的最小值層次與標(biāo)識(shí)符相關(guān)聯(lián)的裝置;用于將最小值存儲(chǔ)為變長(zhǎng)的位模式的裝置;其中所述最小值可以通過(guò)將所述標(biāo)識(shí)符與表示所述最小值的所述位模式相結(jié)合而被重構(gòu)。
15.一種對(duì)包括一個(gè)或多個(gè)幀的數(shù)字視頻數(shù)據(jù)進(jìn)行編碼的方法,所述方法包括· 將每個(gè)幀劃分成編碼單位;· 確定每個(gè)所述編碼單位的最大值和最小值;· 通過(guò)將每個(gè)編碼單位的所述最大值減去所述最小值來(lái)計(jì)算每個(gè)編碼單位的動(dòng)態(tài)范圍;· 將每個(gè)動(dòng)態(tài)范圍劃分成多個(gè)子范圍,每個(gè)子范圍對(duì)應(yīng)于一個(gè)唯一的量化級(jí);· 將每個(gè)子范圍與標(biāo)識(shí)符相關(guān)聯(lián);· 選擇所述子范圍和對(duì)應(yīng)于每個(gè)編碼單位的所述動(dòng)態(tài)范圍的第一對(duì)應(yīng)量化策略;以及· 為每個(gè)編碼單位確定第二較粗量化策略,所述第二較粗量化策略將提供所需壓縮率和解碼時(shí)將展示預(yù)定圖像質(zhì)量的圖像;· 按照選定的量化策略對(duì)每個(gè)編碼單位進(jìn)行量化,這樣,以固定的壓縮率對(duì)每個(gè)編碼單位進(jìn)行編碼,每個(gè)編碼單位中的比特?cái)?shù)少于原來(lái)的數(shù)目,并且可以容易確定每個(gè)編碼單位的開(kāi)始和結(jié)束位置;將包括所述最小值數(shù)據(jù)、動(dòng)態(tài)范圍數(shù)據(jù)及編碼的壓縮視頻數(shù)據(jù)的壓縮編碼單位輸出。
全文摘要
一種數(shù)據(jù)組織和存取方案,用于允許在運(yùn)動(dòng)補(bǔ)償期間更方便定位參考宏塊,并用于向視頻輸出系統(tǒng)提供輸出數(shù)據(jù)。將幀分割成編碼塊,編碼塊包括少量的壓縮成固定長(zhǎng)度的水平附加塊。在每個(gè)編碼塊中,僅采用兩種量化策略,因此易于確定任一編碼塊的開(kāi)始和結(jié)束位置以及編碼塊中任一單獨(dú)塊的位置。
文檔編號(hào)H03M7/30GK1383685SQ01801734
公開(kāi)日2002年12月4日 申請(qǐng)日期2001年4月6日 優(yōu)先權(quán)日2000年4月19日
發(fā)明者S·彭 申請(qǐng)人:皇家菲利浦電子有限公司