專利名稱:編碼作為圖象序列組織的信息流的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及編碼作為圖象序列組織的信息流的方法和設(shè)備。
數(shù)字音頻和視頻的處理,例如為傳輸和存儲(chǔ),需要使用各種數(shù)據(jù)壓縮技術(shù)。一個(gè)非限制例子是MPEG標(biāo)準(zhǔn),它有用于音頻以及視頻的多種版本。另一標(biāo)準(zhǔn)是H.261。Ho-CHao Huang等人公開(kāi)了用軟件實(shí)現(xiàn)這種壓縮“實(shí)時(shí)的基于軟件的新一代視頻編碼譯碼器流行視頻編碼器II”,IEEE TR.Cons.EI.第42卷,第4期,963-973頁(yè)。以混合的軟件和硬件環(huán)境執(zhí)行壓縮和類似操作是適宜的。通過(guò)軟件編碼需要的操作數(shù)目很難預(yù)測(cè)。下面主要參考視頻說(shuō)明一個(gè)實(shí)施例。現(xiàn)在一般來(lái)說(shuō),壓縮基于圖象組(GOP)執(zhí)行。下面始終使用術(shù)語(yǔ)“圖象”。根據(jù)實(shí)際視頻標(biāo)準(zhǔn),術(shù)語(yǔ)“圖象”可以指“幀(frame)”,也可以指“場(chǎng)(field)”?,F(xiàn)在,可以以類似方式實(shí)現(xiàn)幀方式組織的音頻或音頻/視頻混合信息流的壓縮。這種處理必須以實(shí)時(shí)方式進(jìn)行,這意味著如果處理器過(guò)載,則必須付出高的代價(jià),損失全部或部分圖象。
這種壓縮曾根據(jù)所謂的內(nèi)圖象(Intra-pictures),預(yù)測(cè)圖象(Predictive-pictures)和雙向預(yù)測(cè)圖象提出。
本發(fā)明人認(rèn)識(shí)到對(duì)這3類圖象必需進(jìn)行的不一致的處理努力。他們也看到可以在這些圖象類別中使用的各種折衷措施改善處理能力,同時(shí)保持編碼質(zhì)量。
因此,除別的目的外,本發(fā)明的一個(gè)目的是系統(tǒng)地抑制常規(guī)處理的某些單元以減輕處理負(fù)載。因此,根據(jù)本發(fā)明的一個(gè)方面,其特征在于權(quán)利要求1的特征部分?jǐn)⑹龅奶卣?。本發(fā)明還涉及為實(shí)現(xiàn)本發(fā)明方法而設(shè)計(jì)的編碼器。另外的有利方面在從屬權(quán)利要求中敘述。
下面參考優(yōu)選實(shí)施例的公開(kāi)詳細(xì)討論本發(fā)明的這些和其它方面及優(yōu)點(diǎn)。
圖1表示一個(gè)發(fā)明裝置的方框圖;圖2A-C表示各種示例MPEG組織。
圖1是按照本發(fā)明的一個(gè)裝置的方框圖,該裝置特別用于視頻。首先討論一個(gè)簡(jiǎn)化版,其中忽略單元62、64、66、68、70、72、74、76、77、78、80。在輸入20接收的視頻以具有一定像素?cái)?shù)目的圖象組織。在DCT單元22中,每一圖象被分成一系列視頻塊,每一塊由8×8的像素矩陣組成。圖象的中級(jí)劃分為片段(slice),它們由相鄰兩橫行的塊組成。每一塊經(jīng)過(guò)離散余弦變換,產(chǎn)生一個(gè)8×8的數(shù)字頻率系數(shù)的矩陣。
在一個(gè)兩維的DCT結(jié)果塊中,每一系數(shù)相關(guān)于一個(gè)波頻。左上部系數(shù)“0 0”與在兩坐標(biāo)方向中的零空間頻率有關(guān)的平均值相關(guān)。其右,波形(waviness)是水平的。在第一位置以下,波形是垂直的。在斜方向上,波形面向關(guān)于坐標(biāo)方向的相應(yīng)方式。由逆離散余弦變換實(shí)現(xiàn)的后繼的解碼將無(wú)損失重新構(gòu)造原來(lái)圖象。
在圖1中,加權(quán)單元24引入各系數(shù)的加權(quán)因子,考慮人感知較小細(xì)節(jié)或較高的空間頻率較低的靈敏度。加權(quán)的目的是減少數(shù)據(jù)。系數(shù)“0 0”的加權(quán)因子是1,而其它系數(shù)從離開(kāi)該系數(shù)的所有方向減小。這樣產(chǎn)生的信息損失即使在合適的條件下,一般對(duì)用戶來(lái)說(shuō)也不可見(jiàn)。
為進(jìn)一步減少數(shù)據(jù),在量化器26中除系數(shù)“0 0”外用一個(gè)對(duì)所涉及的視頻塊一致的冗余因子Q除各系數(shù)。該因子對(duì)一系列視頻塊例如片段或?qū)φ麄€(gè)視頻圖象可以一致。隨后相對(duì)于一個(gè)一致的閾值截取各個(gè)商丟棄低于該閾值的系數(shù)。使用這種軟件來(lái)編碼的處理器負(fù)載加在圖1中的單元26、28,而且可以映射到單一高性能微處理器,諸如INTEL Pentium。Q值和處理器負(fù)載彼此大約成反比。
最后,在編碼器28中把結(jié)果系數(shù)串行化,并使之經(jīng)受按照Huffmann或類似類型代碼的可變長(zhǎng)編碼。結(jié)果位流在輸出端32上輸出。在計(jì)算單元34中,計(jì)算實(shí)際處理負(fù)載,并沿線30后連接到量化器26。后者可以調(diào)整Q值以保持每塊或每幅圖象的處理負(fù)載在一個(gè)允許的范圍。
在上面,時(shí)鐘周期數(shù)目依賴于圖象內(nèi)容。在各種圖象之間以及在單一圖象的片段或塊之間可能發(fā)生差別。因此,應(yīng)付最差情況條件的需要將使硬件設(shè)施過(guò)大。
本發(fā)明例如可應(yīng)用于MPEG環(huán)境?,F(xiàn)在,圖2A-2C表示各種例示MPEG組織,其作為圖象序列表示。MPEG有3類I-、B-和P-圖象。內(nèi)圖象包含重現(xiàn)所述圖象的全部信息。預(yù)測(cè)圖象包含的信息少于全部必需的信息,還需要另一已經(jīng)處理的以下述方式重現(xiàn)的圖象,即該已經(jīng)處理的圖象自身可以作為還要在后面處理的圖象的前一圖象。最后,雙向預(yù)測(cè)圖象包含的信息少于全部必需的信息,還需要一個(gè)或者多個(gè)已經(jīng)處理的圖象,以重現(xiàn)所述圖象;然而這將不產(chǎn)生其自身可再次作為將要被處理的一個(gè)圖象的前一圖象。就其自身而言,這一過(guò)程的使用及其所需的數(shù)學(xué)認(rèn)為是視頻編碼技術(shù)中普通公知的知識(shí)。因此,P-圖象可以鏈接,但B-圖象總是結(jié)束圖象。其相關(guān)性由箭頭指示。在壓縮前進(jìn)行預(yù)測(cè)。
現(xiàn)在,本發(fā)明人認(rèn)識(shí)到B-圖象是減少處理負(fù)載的一個(gè)適合的目標(biāo),其理由如下。首先,雙向預(yù)測(cè)需要“前向”以及“后向”矢量,其使獲取這些矢量需要的努力加倍。此外,必須處理這兩組矢量以產(chǎn)生單一相關(guān)的圖象供壓縮,這更進(jìn)一步增加需要的努力。其次,后向預(yù)測(cè)通常需要至少兩個(gè)圖象存儲(chǔ)器,因?yàn)楹罄^要被壓縮的圖象的參考圖象必需在要被預(yù)測(cè)的圖象的參考矢量可以被計(jì)算前可用、被編碼和再次解碼。
這些缺點(diǎn)對(duì)于只從一個(gè)前面的圖象預(yù)測(cè)的B-圖象不存在。這些“單邊”(single-side)B-圖象可以組成所有B-圖象的一個(gè)可觀的部分,諸如每?jī)蓚€(gè)中的一個(gè),三分之二,或甚至所有B-圖象。在后一情況,最能節(jié)省存儲(chǔ)器。最好是,它們?yōu)槊拷M圖象有均勻分配,使得系統(tǒng)知道應(yīng)該采取什么措施。然而,非均勻模式在本質(zhì)上是適宜的。最晚在以一特定圖象組開(kāi)始時(shí)系統(tǒng)應(yīng)該知道做什么,例如通過(guò)在引導(dǎo)的I-圖象的頭標(biāo)中的一個(gè)代碼?,F(xiàn)在,這種B-圖象的某些方面類似一個(gè)P-圖象。然而,“簡(jiǎn)化”的B-圖象的下述方面將其與P-圖象區(qū)別開(kāi)來(lái)-以較高(例如40%)Q因子值,編碼B-圖象可以改善編碼效率。附加編碼噪聲幾乎永遠(yuǎn)看不見(jiàn),因?yàn)檫@樣的編碼噪聲不加在后繼的圖象上,就像真得作為參照的I-和P-圖象。這種編碼噪聲實(shí)際上需要以較高位長(zhǎng)度表示后繼圖象,因?yàn)樵趨⒖紙D象中的質(zhì)量較低。
-通過(guò)提高Q值確實(shí)可以降低處理負(fù)載。該負(fù)載依賴于圖象的復(fù)雜性,還依賴于冗余因子Q較高的冗余因子將減小處理器負(fù)載。
-在編碼后,“單邊”B-圖象不需再次解碼,因?yàn)樗鼈儾粸槿魏吻懊婊蚝竺娴膱D象用作參考圖象。就其自身說(shuō),和P-圖象相比,給出可觀的負(fù)載減少量。“實(shí)時(shí)”硬件編碼器允許極少的資源共享或干脆不允許資源共享不管怎樣編碼側(cè)的本地解碼器已在芯片上提供,而通過(guò)共享也節(jié)省不下什么。然而,使用全部或者部分軟件編碼允許為各種不同目的使用資源。代替本地解碼,該設(shè)施可用于其它目的。
-可以在任何后面的參考圖象被接收到以前編碼B-圖象,允許使用較少圖象緩沖器。此外,單一B-圖象的編碼只需存儲(chǔ)單一解碼的圖象。
-以遞歸運(yùn)動(dòng)估計(jì),為P-圖象獲得的矢量通過(guò)按比例縮放可以形成良好的備選矢量。另一種可能性是使用為一個(gè)特定B-圖象獲得的矢量作為為下一后繼P-圖象的備選矢量。
現(xiàn)在,通過(guò)后連接回路(retrocoupling 1oop)為一種MPEG方案擴(kuò)展圖1。首先,開(kāi)關(guān)66為I-和P-圖象閉合。它為B-圖象打開(kāi)。該回路包括一個(gè)逆量化器68,其為量化器26的逆。單元70作為DCT單元22的逆執(zhí)行逆離散余弦變換。其結(jié)果供給加法器72并隨之存儲(chǔ)在存儲(chǔ)器74中。運(yùn)動(dòng)估算器76執(zhí)行運(yùn)動(dòng)估算以及運(yùn)動(dòng)補(bǔ)償。運(yùn)動(dòng)估算器76連接到輸入20和控制單元77。對(duì)于P-圖象,相對(duì)于一個(gè)先行圖象估算運(yùn)動(dòng)。對(duì)于B-圖象,相對(duì)于先行以及后繼圖象估算運(yùn)動(dòng)。在“單邊”B-圖象的場(chǎng)合,只使用一個(gè)預(yù)測(cè)方向。在該情況下,控制單元77執(zhí)行B-圖象的一個(gè)基本的和預(yù)測(cè)定位的選擇。根據(jù)從控制單元77到運(yùn)動(dòng)估算器76的控制信號(hào),只使用一個(gè)預(yù)測(cè)方向?yàn)樗鲞x擇估算運(yùn)動(dòng)。在一個(gè)優(yōu)選實(shí)施例中,預(yù)測(cè)方向應(yīng)該和時(shí)序前進(jìn)方向相同。在使用一個(gè)預(yù)測(cè)方向的場(chǎng)合,不需為其它預(yù)測(cè)方向進(jìn)行運(yùn)動(dòng)估算,它導(dǎo)致已經(jīng)提到的優(yōu)點(diǎn)。在另一實(shí)施例中,所述B-圖象的選擇依賴于處理負(fù)載。在該種情況下,計(jì)算單元34應(yīng)該連接到控制單元77。為任何剩余的B-圖象,維持兩個(gè)預(yù)測(cè)方向。在一個(gè)實(shí)際的實(shí)施例中,所有B-圖象具有單邊預(yù)測(cè)。在該情況下,可以獲得最簡(jiǎn)單和成本高效的裝置。來(lái)自運(yùn)動(dòng)估算器76的結(jié)果圖象內(nèi)容被送往減法器60,該減法器只用于操作B-和P-圖象。開(kāi)關(guān)62為I-圖象閉合,有效短路減法器60。對(duì)于B-和P-圖象,運(yùn)動(dòng)補(bǔ)償?shù)膱D象也通過(guò)開(kāi)關(guān)64送往加法器72,以便加在從IDCT70接收到的圖象上。
可變長(zhǎng)編碼器28在輸出32輸出編碼的信息流供存儲(chǔ)或傳輸。它另外輸出進(jìn)展信息給計(jì)算單元34并可以發(fā)送有關(guān)輸出位速率32的信息給位速率控制塊80。后者檢查作為在一個(gè)可用時(shí)間段上平均的位速率是否不超過(guò)位于輸出32下游的單元的處理和/或緩沖能力。其結(jié)果是一個(gè)控制信號(hào),它可以隨輸出32向下游方向輸出,也可以與來(lái)自計(jì)算單元34的控制信號(hào)一起后連接到邏輯組合單元78。如果位速率負(fù)載不超過(guò),則計(jì)算單元34做決定。如果位速率過(guò)高,則單元78拒絕通過(guò)計(jì)算單元34的控制。
圖2A表示一個(gè)示例圖象組,它有1個(gè)I-圖象,兩個(gè)P-圖象,和4個(gè)B-圖象,所有B-圖象具有雙向預(yù)測(cè)。在一個(gè)GOP中的圖象數(shù)目原則上任意。在圖2B中,相當(dāng)多部分的B-圖象只有單邊預(yù)測(cè),使得選擇打開(kāi)圖1中開(kāi)關(guān)66。其它相當(dāng)多部分可為1/3或2/3。小部分只產(chǎn)生小改善。較大的部分有P-圖象彼此不可能相離太遠(yuǎn)的缺點(diǎn),因?yàn)轭A(yù)測(cè)將更為困難。在圖2C中,所有B-圖象只有單邊預(yù)測(cè)。
應(yīng)該注意,上述實(shí)施例是說(shuō)明而并非限制本發(fā)明,熟悉本技術(shù)領(lǐng)域的人能夠設(shè)計(jì)多種另外的實(shí)施例而不離開(kāi)所附權(quán)利要求的范圍。在權(quán)利要求中,括號(hào)中的任何參考標(biāo)號(hào)不解釋為限制該權(quán)利要求。詞“包括”不排除沒(méi)有列在權(quán)利要求書(shū)的其它單元或步驟的存在。本發(fā)明可以以包括若干不同單元的硬件實(shí)現(xiàn),也可以以合適的編程計(jì)算機(jī)實(shí)現(xiàn)。在列舉幾種設(shè)備的設(shè)備權(quán)利要求中,可以通過(guò)一個(gè)和同樣的硬件實(shí)現(xiàn)幾種這樣的設(shè)備。
權(quán)利要求
1.編碼作為圖象序列組織的信息流的方法,其特征在于,所述方法包括步驟壓縮所述信息流以獲得包括內(nèi)圖象、預(yù)測(cè)圖象和雙向預(yù)測(cè)圖象的輸出流;對(duì)于雙向預(yù)測(cè)圖象的一個(gè)可觀部分只使用一個(gè)預(yù)測(cè)方向(76),而對(duì)其余的雙向預(yù)測(cè)圖象維持兩個(gè)預(yù)測(cè)方向。
2.如權(quán)利要求1所述方法,另外包括一致地維持兩預(yù)測(cè)方向(76,77)之一的步驟,其與時(shí)序前進(jìn)方向相同。
3.如權(quán)利要求1所述方法,其中,所述可觀部分的數(shù)量近似為所述信息流的所有雙向預(yù)測(cè)圖象的一半。
4.如權(quán)利要求1所述方法,其中,所述可觀部分的數(shù)量為所有雙向預(yù)測(cè)圖象。
5.如權(quán)利要求1所述方法,其中,所述可觀部分依賴于編碼的處理負(fù)載(34)。
6.如權(quán)利要求1所述方法,另外包括對(duì)于所有雙向預(yù)測(cè)圖象相對(duì)于其它圖象類型提高冗余因子Q(26)的步驟。
7.編碼作為圖象序列組織的信息流的設(shè)備,其特征在于,所述設(shè)備包括處理所述信息流以獲得包括內(nèi)圖象、預(yù)測(cè)圖象和雙向預(yù)測(cè)圖象的輸出流的設(shè)備;運(yùn)動(dòng)估算機(jī)構(gòu)(76),用于為所述選擇的雙向預(yù)測(cè)圖象的一個(gè)可觀部分只使用一個(gè)預(yù)測(cè)方向(76),而對(duì)其余雙向預(yù)測(cè)圖象維持兩個(gè)預(yù)測(cè)方向。
8.如權(quán)利要求7所述設(shè)備,其中一致地維持與時(shí)序前進(jìn)方向相同的預(yù)測(cè)方向(76,77)。
9.如權(quán)利要求7所述設(shè)備,其中,所述可觀部分的數(shù)量近似為所述信息流的所有雙向預(yù)測(cè)圖象的一半。
10.如權(quán)利要求7所述設(shè)備,其中,所述可觀部分的數(shù)量為所有雙向預(yù)測(cè)圖象。
全文摘要
組織為圖象序列的音頻和/或視頻信息流通過(guò)一個(gè)至少部分基于軟件的過(guò)程編碼。該圖象序列包括內(nèi)圖象、預(yù)測(cè)圖象和雙向預(yù)測(cè)圖象。特別是,對(duì)于在所述雙向預(yù)測(cè)圖象中一個(gè)基本和預(yù)測(cè)定位的選擇(77),只使用一個(gè)預(yù)測(cè)方向(76)。對(duì)于其余任何雙向預(yù)測(cè)圖象維持兩個(gè)預(yù)測(cè)方向。
文檔編號(hào)H04N7/32GK1272288SQ99800762
公開(kāi)日2000年11月1日 申請(qǐng)日期1999年5月10日 優(yōu)先權(quán)日1998年5月20日
發(fā)明者R·B·M·克萊恩貢尼維克, W·H·A·布魯爾斯 申請(qǐng)人:皇家菲利浦電子有限公司