專利名稱:采用一種自適應(yīng)量化技術(shù)的視頻信號編碼方法及設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種視頻信號編碼方法和設(shè)備;更具體地說,是涉及一種用于根據(jù)估計的比特分布信息使視頻信號通過兩條(即第一和第二)編碼路徑來對該視頻信號進(jìn)行自適應(yīng)編碼的方法和設(shè)備,其中第一編碼路徑提供了在調(diào)節(jié)第二編碼路徑中的量化過程時要用的比特分布信息。
已經(jīng)提出了一種編碼方法和設(shè)備,用來根據(jù)例如MPEG(動態(tài)畫面專家組)標(biāo)準(zhǔn)對輸入的視頻信號在第一和第二路徑中進(jìn)行量化和長度可變的編碼,其中第一路徑得到在第二路徑中進(jìn)行的編碼過程所需的比特分布信息,所得到的每一畫面的比特分布信息構(gòu)成一視頻信號序列和在每一畫面中的每一大小相等的塊(例如16×16象素),參見日本未決的第7-284097號公開專利申請。
在常規(guī)的視頻信號編碼技術(shù)如MPEG中,如果視頻信號為可變長度編碼時,特別是該視頻信號在用一固定的量化參數(shù)(Qp)或量化級大小(Qs)被量化后,編碼數(shù)據(jù)量就隨著視頻信號的復(fù)雜程度和動態(tài)補償誤差而增加。利用這種特征,現(xiàn)有技術(shù)的編碼方案用固定的Qp檢查在第一路徑的被編碼數(shù)據(jù)的分布或比特分布信息;并且基于此在第二路徑分配可用的比特,這些比特在畫面和塊間的目標(biāo)比特率的預(yù)計值內(nèi)確定,以提供均勻的和高質(zhì)量的畫面。根據(jù)畫面間的根據(jù)分布數(shù)據(jù)來分配比特,就可以提供時間上均勻的畫面質(zhì)量。類似地,通過在每個畫面中的塊間分配比特,就可以得到空間上均勻的畫面質(zhì)量。
第一路徑的Qp被設(shè)為比那些第二路徑的小,以便在第一路徑產(chǎn)生的數(shù)據(jù)量得到控制,使其比在第二路徑所產(chǎn)生的數(shù)據(jù)量大。通過在第一路徑使用幅值較小的Qp,視頻信號中的高頻成分就可以被更完全地被檢測到,視頻信號的特性也可以更精確地檢查,這對于第二路徑的有效的比特分配是必需的。
在一種典型的現(xiàn)有技術(shù)方案中,第二路徑的比特分配根據(jù)來自第一路徑的比特分布信息和一個預(yù)定的目標(biāo)比特率用被編碼數(shù)據(jù)與Qp或Qs的大約的反比例關(guān)系來控制。換言之,第二路徑畫面和塊的編碼比特的分布率被控制,以便在保持目標(biāo)比特率的同時使那些在第一路徑中的畫面和塊的編碼比特分布維持一個大致相同的比值。對第二路徑所產(chǎn)生的被編碼數(shù)據(jù)量的控制通過改變Qp來進(jìn)行。
但是,某些編碼數(shù)據(jù)的量即使在Qp改變時也保持不變。那些是附加的或與量化無關(guān)的可編碼數(shù)據(jù),如MPEG中的報頭信息和動態(tài)矢量,它們是不被量化的可變長度編碼。
這種附加數(shù)據(jù)的量取決于畫面的大小。例如,對于用MPEG 2方案編碼的有720×480象素的畫面,平均產(chǎn)生20-50K比特的附加數(shù)據(jù)。
在圖7A和7B中,分別說明了對于每個畫面由第一和第二路徑所產(chǎn)生的數(shù)據(jù)量,其中每一條表示對于一個畫面產(chǎn)生的數(shù)據(jù)總量,而其中的陰影部分表示附加的或與量化無關(guān)的數(shù)據(jù)量。
與量化無關(guān)的數(shù)據(jù)量和數(shù)據(jù)總量之比根據(jù)所分配的比特的實際分布而在畫面間各有不同。對于6Mbps的傳送速率,與量化無關(guān)的數(shù)據(jù)在由第一路徑所產(chǎn)生的數(shù)據(jù)總量中約占20%,如圖7A所示。但是,因為第二路徑以比第一路徑低的平均傳送速率對視頻信號編碼,在第二路徑中與量化無關(guān)的數(shù)據(jù)的占用率就變大了。例如,與量化無關(guān)的數(shù)據(jù)量占由目標(biāo)比特率為4Mbps的第二路徑所產(chǎn)生的數(shù)據(jù)總量的30%,如圖7B所示。
參考圖8A和8B,它們分別說明了由第一路徑和第二路徑為每個塊產(chǎn)生的編碼數(shù)據(jù)量,其中每一根條塊表示為一個塊所產(chǎn)生的數(shù)據(jù)量,而其陰影部分表示一個塊中與量化無關(guān)的數(shù)據(jù)量。類似地,在第一路徑,某些塊中的附加數(shù)據(jù)在總數(shù)據(jù)中的占用率要大于50%,如圖8A所示;因為在第二路徑中的平均傳輸率被控制在低于第一路徑,附加數(shù)據(jù)量在某些塊中占用了由第二路徑所產(chǎn)生的數(shù)據(jù)總量的70%,如圖8B所示。
但是,上述常規(guī)的比特分配方法中,因為該比特分配是基于由被編碼數(shù)據(jù)的總量(包括與量化相關(guān)的和無關(guān)的數(shù)據(jù))確定的比特分布信息來進(jìn)行的,位分配的結(jié)果并不反映Qp和與量化相關(guān)數(shù)據(jù)量之間的反比關(guān)系,導(dǎo)致某些畫面或塊的被分配比特的局部短缺,這可能造成畫面質(zhì)量變差。
因此,本發(fā)明的一個目的就是提供一種能夠通過分配比特來改進(jìn)畫面質(zhì)量而不會有被分配比特短缺問題的方法和設(shè)備。
根據(jù)本發(fā)明的一個方面,提供了一種對輸入的視頻信號進(jìn)行編碼方法,該方法包括如下步驟按照預(yù)定方式處理輸入的視頻信號以由此提供一處理后的信號,被處理的信號包括一與量化相關(guān)的信號和一與量化無關(guān)的信號;根據(jù)一個固定的Qp對與量化相關(guān)的信號進(jìn)行量化以由此提供第一量化后數(shù)據(jù);對第一量化后數(shù)據(jù)和與量化無關(guān)的數(shù)據(jù)進(jìn)行可變長度編碼,以由此分別提供第一和第二數(shù)據(jù);將第一數(shù)據(jù)量和第二數(shù)據(jù)量儲存;根據(jù)預(yù)定目標(biāo)比特率和第一、第二數(shù)據(jù)量來確定每個視頻信號單元的編碼比特的目標(biāo)量;根據(jù)基于編碼比特目標(biāo)量所確定的一個或多個Qp量化與量化相關(guān)的信號,以由此提供被編碼的數(shù)據(jù),其中第二量化數(shù)據(jù)根據(jù)目標(biāo)編碼比特量和被編碼數(shù)據(jù)量之差來調(diào)整。
其編碼比特目標(biāo)量被確定的視頻信號單元可以是畫面和/或塊。
根據(jù)本發(fā)明優(yōu)選實施例的另一個方面,提供了一種視頻信號編碼設(shè)備,包括一第一編碼裝置、一存儲器、一延遲器和一第二編碼裝置。
第一編碼裝置包括一第一信號處理器,用于按預(yù)定方式處理輸入的視頻信號,以產(chǎn)生一包括與量化信號無關(guān)的和與量化信號有關(guān)的處理后的視頻信號;一第一量化器;一第一可變長度編碼(VLC)電路;一第一計數(shù)器。第一量化器根據(jù)一個固定的Qp來量化與量化相關(guān)的信號,以由此提供第一量化后的數(shù)據(jù)。然后第一VLC電路用VLC技術(shù)分別對第一量化數(shù)據(jù)和與量化無關(guān)信號進(jìn)行編碼來產(chǎn)生第一和第二數(shù)據(jù)。在第一計數(shù)器,第一和第二數(shù)據(jù)量分別被計數(shù),第一數(shù)據(jù)量與Qp的幅值有關(guān),而第二數(shù)據(jù)量與Qp的幅值無關(guān)。
存儲器存儲第一和第二數(shù)據(jù)各自的量;而延遲器則對輸入的視頻信號延遲以進(jìn)行同步。換言之,輸入的視頻信號被延遲器延遲直到第一和第二數(shù)據(jù)量被存儲進(jìn)存儲器為止,然后送給第二編碼裝置。
第二編碼裝置包括一第二信號處理器,一目標(biāo)比特確定電路,一比特控制器,一第二量化器,一第二VLC電路和一第二計數(shù)器。第二處理器按照與第一處理器相同的方式處理延遲后的輸入視頻信號以產(chǎn)生處理后的視頻信號。目標(biāo)比特確定電路根據(jù)預(yù)定目標(biāo)比特率和第一和第二數(shù)據(jù)各自的量來確定每個視頻信號單元的編碼比特的目標(biāo)量。比特控制器根據(jù)編碼比特的目標(biāo)量確定第個單元的一個或多個新的Qp。第二量化器根據(jù)新確定的Qp量化與量化相關(guān)的信號以產(chǎn)生第二量化數(shù)據(jù)。接著,第二VLC電路對第二量化后的數(shù)據(jù)和與量化無關(guān)的信號編碼以分別產(chǎn)生第三數(shù)據(jù)和第四數(shù)據(jù)。二計數(shù)器對第三和第四數(shù)據(jù)的各量計數(shù);比特控制器計算在被編碼目標(biāo)量與第三和第四數(shù)據(jù)量的和之間的偏差,由此通過根據(jù)該偏差調(diào)節(jié)Qp自適應(yīng)地控制在第二量化器的Qs。
根據(jù)本發(fā)明的上述方法和設(shè)備,輸入的視頻信號在第一編碼裝置中用固定的Qp和可變長度編碼被量化,然后,可變長度編碼的數(shù)據(jù)按照第一數(shù)據(jù)量(取決于Qp)和第二數(shù)據(jù)量(與Qp無關(guān))分別存入存儲器中。接著,在第二編碼裝置,根據(jù)第一和第二數(shù)據(jù)的存入的量來確定每個視頻信號單元編碼比特的目標(biāo)量。因為在第二編碼裝置的Qp是根據(jù)編碼比特的目標(biāo)量與由第二編碼裝置產(chǎn)生的可變長度編碼數(shù)據(jù)的實際量之間的偏差來調(diào)整,從而被編碼數(shù)據(jù)的實際量與編碼比特的目標(biāo)量之間接近,考慮到與量化無關(guān)的第二數(shù)據(jù)而確定的編碼比特的目標(biāo)量可以在第二路徑中優(yōu)化分配。
根據(jù)本發(fā)明的另一優(yōu)選實施例,視頻信號編碼設(shè)備是通過將公共部分(即第一實施例中第一和第二編碼裝置的信號處理器、量化器、VLC電路以及比特計數(shù)器)共用從而減少部件數(shù)目來實現(xiàn)的。在這種情況下,就構(gòu)成第二實施例的設(shè)備,它有一個信號處理器、一個量化器、一個VLC電路、一個比特計數(shù)器、一個存儲器、一根據(jù)預(yù)定目標(biāo)比特率與第一和第二數(shù)據(jù)各自的量來確定視頻信號各單元編碼比特目標(biāo)量的目標(biāo)比特確定電路、一根據(jù)編碼比特目標(biāo)量來確定初始Qp并進(jìn)一步找出編碼比特目標(biāo)量和可變長度編碼數(shù)據(jù)的實際量之間偏差以由此可調(diào)整地控制Qp(其依次自適應(yīng)地改變量化器的Qs)的比特控制器、用于提供固定Qp的Qfix發(fā)生電路、以及一個開關(guān)電路。
在第二實施例設(shè)備的結(jié)構(gòu)中,首先,固定的Qp由開關(guān)電路加到量化器中,由此使得在信號處理器中處理的輸入視頻信號按固定的Qp所確定的Qs來量化;所產(chǎn)生的被編碼數(shù)據(jù)量被計數(shù)和儲存。然后,所儲存的被編碼數(shù)據(jù)量送給目標(biāo)比特確定電路,以確定每個單元編碼比特的目標(biāo)量。編碼比特的目標(biāo)量再提供給比特控制器,在那里Qp被自適應(yīng)地調(diào)整以控制量化器的Qs。
本發(fā)明的上述目的、特征和其它的目的、特征通過下面結(jié)合附圖對優(yōu)選實施例的說明將顯而易見。在附圖中,
圖1所示是根據(jù)本發(fā)明第一優(yōu)選實施例的視頻信號編碼設(shè)備的方框圖;圖2是圖1中所示第一編碼裝置的方框圖;圖3是圖2中所示比特計數(shù)器的方框圖;圖4是圖2中所示第一編碼裝置數(shù)據(jù)存儲格式的示例;圖5是圖1中所示第二編碼裝置的方框圖;圖6是根據(jù)本發(fā)明第二優(yōu)選實施例的視頻信號編碼設(shè)備的方框圖;圖7A和7B分別提供了在畫面的與量化相關(guān)數(shù)據(jù)和與量化無關(guān)數(shù)據(jù)間進(jìn)行比特分配前后兩種數(shù)據(jù)之間的關(guān)系示例;圖8A和8B分別給出了在塊的與量化相關(guān)數(shù)據(jù)和與量化無關(guān)數(shù)據(jù)間進(jìn)行比特分配前后兩種數(shù)據(jù)之間的關(guān)系示例。
圖9是本發(fā)明的裝置的第三實施例的方框圖。
參考圖1,其描繪了根據(jù)本發(fā)明第一優(yōu)選實施例的視頻信號編碼設(shè)備的方框圖。在此說明的本發(fā)明的第一和其它的優(yōu)選實施例采用MPEG編碼方法。
在MPEG中,視頻信號序列劃分為畫面組(GOP)。眾所周知,畫面可以用視頻信號的幀或半幀來表示;而在技術(shù)中術(shù)語“畫面”要比術(shù)語“幀”或“半幀”更為常用。GOP是在顯示次序上相鄰接的一組畫面,是最小的編碼單元,其能在一序列中獨立地被解碼。GOP包括至少一個內(nèi)編碼畫面(I-畫面)和任意數(shù)目的預(yù)編碼畫面(P-畫面)和雙向預(yù)測編碼畫面(B-畫面)。最小的編碼單元是8×8像素的塊。在4∶2∶0格式中,四個相信的亮度塊和兩個色度塊(每個表示與四個亮度塊相應(yīng)的不同類型亮度信號)構(gòu)成了一個宏塊,它是運動估計和補償?shù)淖钚卧?;?shù)個宏塊構(gòu)成一個畫面或一頁。關(guān)于MPEG的詳細(xì)內(nèi)容,請參考國際標(biāo)準(zhǔn)化組織(ISO)的ISO-IEC11172-2和國際電信聯(lián)盟(ITU)的ITU-TH.262/ISO-IEC13818-2。
再參考圖1,一輸入數(shù)字視頻信號送給構(gòu)成一第一路徑的第一編碼裝置1和延遲緩沖器3。在第一編碼裝置1,視頻信號用第一量化參數(shù)(Qp)量化并用統(tǒng)計學(xué)技術(shù)進(jìn)行編碼。接著,包含在每個視頻信號預(yù)定單元編碼數(shù)據(jù)中的與量化相關(guān)數(shù)據(jù)和與量化無關(guān)數(shù)據(jù)量被分別計數(shù)。與量化相關(guān)數(shù)據(jù)和與量化無關(guān)數(shù)據(jù)的計數(shù)作為比特分布信息從第一編碼裝置1提供給存儲器2并在其中保存。
視頻信號由延遲緩沖器3延遲一段時間,該時間與得到比特信息并將其存入存儲器2中所需要的時間一致,再送入構(gòu)成第二路徑的第二編碼裝置4。
在第二編碼裝置4,每個畫面的編碼比特目標(biāo)量根據(jù)來自存儲器2的目標(biāo)比特率和比特分布信息用后面將說明的一種算法來確定,然后在每個畫面中包括的宏塊的編碼比特的目標(biāo)量根據(jù)每個畫面的比特分布和編碼比特的目標(biāo)量來確定。此后,由延遲緩沖器3來的視頻信號用畫面和宏塊的編碼比特目標(biāo)量確定的量化步長(Qs)來量化。
在確定畫面的編碼比特的目標(biāo)量時,對包含畫面的預(yù)定畫面集合(如GOP)根據(jù)目標(biāo)比特率和集合中畫面數(shù)相對于單元時間中畫面數(shù)的比值來第一次計算編碼比特的總的目標(biāo)量。然后集合中畫面的與量化無關(guān)的數(shù)據(jù)總量就從編碼比特的總目標(biāo)量中被減去,以由此提供集合的與量化相關(guān)的編碼比特目標(biāo)量。畫面的與量化相關(guān)的編碼比特目標(biāo)量根據(jù)集合的與量化相關(guān)編碼比特目標(biāo)量和畫面的與量化相關(guān)數(shù)據(jù)量相對于集合的與量化相關(guān)數(shù)據(jù)總量之比來計算。最后畫面的編碼比特目標(biāo)量通過將畫面的與量化相關(guān)數(shù)據(jù)量和與量化相關(guān)編碼比特總量加和得到。
類似地,在一個畫面中的宏塊的編碼比特目標(biāo)量確定如下。首先,宏塊的與量化相關(guān)的編碼比特目標(biāo)量根據(jù)畫面的與量化相關(guān)編碼比特目標(biāo)量和宏塊的與量化相關(guān)數(shù)據(jù)量相對于畫面的與量化相關(guān)數(shù)據(jù)總量之比來計算。然后通過將宏塊的與量化相關(guān)編碼比特目標(biāo)量與宏塊的與量化無關(guān)數(shù)據(jù)量相加來計算宏塊的編碼比特目標(biāo)量。
根據(jù)本發(fā)明,作為考慮與量化相關(guān)的附加數(shù)據(jù)來確定編碼比特目標(biāo)量的結(jié)果,畫面和宏塊間的比特分布可以在不受到比特局部缺陷的情況下完成。
本發(fā)明的第一優(yōu)選實施例將參考圖2至圖5更詳細(xì)地說明。
參考圖2,該圖說明了圖1中所示第一編碼裝置1的詳細(xì)情況。根據(jù)在記錄電路(未示出)中畫面的類型,一包括亮度和色度信號的數(shù)字化圖像信號按一編碼順序被記錄。被記錄的視頻信號作為一輸入的數(shù)字化視頻信號送給減法器10和運動估計與運動補償(ME & MC)電路11。在減法器10,通過從輸入的數(shù)字化視頻信號中減去ME & MC電路11產(chǎn)生的運動補償信號而產(chǎn)生一偏差信號。該偏差信號提供給變換器12,偏差信號在其中用例如離散余弦變換(DCT)技術(shù)以塊一塊(block-by-block)為基礎(chǔ)被變換,偏差信號的每一個塊被變換為一組變換系數(shù),包括一表示塊的平均像素值的DC(直流)系數(shù)和多個(例如63個)表示塊中像素的高頻分量的AC(交流)系數(shù)。所有的變換系數(shù)在后續(xù)的編碼過程中被量化,因此,它們是與量化相關(guān)的。
一量化器(Q)13用一個固定的Qp量化變換系數(shù)以提供量化后的系數(shù)給逆量化器(IQ)14和一個統(tǒng)計學(xué)器(VLC)18。如所共知,在量化器中的量化系數(shù)的Qs確定幅值是基于Qp和量化矩陣來計算的;因此在塊之間加入一個唯一的Qs,但在塊的內(nèi)部Qs的數(shù)目可以多達(dá)64個。
其后,因為I畫面和P畫面作為ME & MC中的參考畫面,與之相應(yīng)的量化系數(shù)分別在IQ14和逆變換器(IT)15中被依次逆量化和逆變換。一加法器16將ME & MC電路11產(chǎn)生的運動補償信號與IT 15產(chǎn)生的逆變換系數(shù)相加,由此產(chǎn)生一重組的視頻信號,與接收端解碼的信號相同。然后重組的視頻信號被存在畫面存儲器17中。應(yīng)當(dāng)注意與一I畫面或塊的內(nèi)部相應(yīng)的運動補償信號為零值。
在ME & MC電路11,在例如宏塊一宏塊(macroblock-by-macroblock)的基礎(chǔ)上參考畫面存儲器17中的重組參考信號用常規(guī)的運動估計和補償技術(shù)進(jìn)行I-或B-畫面的輸入數(shù)字視頻信號的運動估計和補償。輸入數(shù)字視頻信號的每個宏塊在ME & MC電路11的輸出是送到減法器10和加法器16中去的運動補償后信號和送到統(tǒng)計學(xué)器18中去的運動矢量預(yù)測模式信號。該運動矢量信息可包括兩個用于B-畫面宏塊的運動矢量。和代表指示該宏塊為內(nèi)編碼(intra-coded)還是交互編碼(inter-coded)的信息的預(yù)測模式信號。該預(yù)測模式信號還可包括假使B-畫面宏塊只得到一個運動矢量時,該宏塊是向前還是向后作運動估計的信息。這些包含運動矢量信息和預(yù)測模式信號的附加數(shù)據(jù)是不被量化的,因此其編碼比特量是與量化無關(guān)的。
統(tǒng)計學(xué)器18根據(jù)例如常規(guī)的可變長度編碼技術(shù)(將較短的代碼字分配給較常出現(xiàn)的輸入數(shù)據(jù)),將從量化器13順序輸入的量化后系數(shù)和ME & MC電路11的運動矢量信息和預(yù)測模式信號編碼。
上面參照圖2所述的部件10至18的功能和特征在技術(shù)人員中是共知的,除了在量化器13中根據(jù)固定的Qp進(jìn)行變換系數(shù)的量化以外,在MPEG supra中都有更詳細(xì)的說明。還有,根據(jù)本發(fā)明,統(tǒng)計學(xué)器18向比特計數(shù)器20提供與量化相關(guān)的數(shù)據(jù),即被統(tǒng)計學(xué)的變換系數(shù),和附加的與量化無關(guān)的數(shù)據(jù),包括被統(tǒng)計學(xué)的運動矢量信息、預(yù)測模式信號及其它控制位如開始代碼、序列報頭等等。在靜態(tài)編碼裝置18的輸出中,這種涉及宏塊的靜態(tài)編碼后的數(shù)據(jù)如統(tǒng)計學(xué)的運動矢量信息、預(yù)測模式信號及用于包括被編碼塊圖形(coded-block-pattern)在內(nèi)的宏塊的控制位等按照宏塊-宏塊的基礎(chǔ)傳送到比特計數(shù)器20上。
參考圖3,其說明了比特計數(shù)器20的一個詳細(xì)的方框圖,包括一個開關(guān)21,一與量化(Q)有關(guān)的數(shù)據(jù)計數(shù)電路22和與量化(Q)無關(guān)數(shù)據(jù)計數(shù)電路23。開關(guān)21在對其的輸入中識別與量化相關(guān)數(shù)據(jù)和與量化無關(guān)數(shù)據(jù),并將前者與后者分別提供給Q-有關(guān)數(shù)據(jù)計數(shù)電路22和Q-無關(guān)數(shù)據(jù)計數(shù)電路23。在計數(shù)電路22和23,對它們的輸入被分別計數(shù)。
由比特計數(shù)器20得到的與量化相關(guān)和與量化無關(guān)數(shù)據(jù)各自的量被送入圖1所示的存儲器2,并在其中儲存作為比特分布信息。存儲器2可用一個硬dick或任何其它的高速存儲介質(zhì)來實現(xiàn)。
對每個宏塊產(chǎn)生的量可按其原樣保存,或是除以一個預(yù)定的數(shù),如256,以在存儲前降低其精度。還有,假定整個畫面產(chǎn)生的數(shù)據(jù)量是以2N來表示,每個宏塊產(chǎn)生的數(shù)據(jù)量可以用2N來標(biāo)準(zhǔn)化以便保存,N是一個正數(shù)。標(biāo)準(zhǔn)化對圖1所示第二編碼裝置4中給定比特目標(biāo)量的計算率上帶來了一些優(yōu)點,因為分母可以移位運算。
在這里給出的優(yōu)選實施例中,2N假定為211,即2048。
每個宏塊產(chǎn)生的數(shù)據(jù)量表示為5位,也就是說,其值為0到31。因為所需要的信息是宏塊產(chǎn)生的數(shù)據(jù)量在編碼裝置中順序相加之和,如果宏塊產(chǎn)生的數(shù)據(jù)量大于31/2048,那個宏塊即被存為最大值31,余數(shù)就加到其下一個宏塊產(chǎn)生的數(shù)據(jù)量中。每個宏塊產(chǎn)生的數(shù)據(jù)量按照與量化相關(guān)數(shù)據(jù)和與量化無關(guān)數(shù)據(jù)量分別存儲。
類似地,每個畫面產(chǎn)生的代碼量可按其原樣保存而不作改變,或是被預(yù)定的數(shù)目例如28(=256)來除,以在保存之前降低其精度。在這一瞬間,假定一個畫面產(chǎn)生的最大數(shù)據(jù)總量是1Mb,需要20位的存儲器,以移動8位后的較低精度來儲存該數(shù)據(jù)量只需要12位。在宏塊的情況下也類似,每個畫面的與量化相關(guān)數(shù)據(jù)量和與量化無關(guān)數(shù)據(jù)量也分別被保存。
當(dāng)每個畫面的儲存數(shù)據(jù)是標(biāo)準(zhǔn)化的數(shù)據(jù)時,每個畫面產(chǎn)生的數(shù)據(jù)量也必須儲存。在另一個例子中,畫面的數(shù)據(jù)量不需要被儲存,因為通過將畫面內(nèi)塊的數(shù)據(jù)量加和可以計算出該數(shù)據(jù)量。
參考圖4,其說明了產(chǎn)生的數(shù)據(jù)量的存儲格式。首先,每個畫面的與量化相關(guān)數(shù)據(jù)量(“PIC-ACDC”)和與量化無關(guān)數(shù)據(jù)量(“PIC-ETC”)分別以12位保存。每個在其后以5位保存的是在畫面中包括的例如1350個塊中每一個塊的與量化相關(guān)數(shù)據(jù)量(“BLOCK-ACDC”)和與量化無關(guān)數(shù)據(jù)量(“BLOCK-ETC”)。
參考圖5,它是圖1所示第二編碼裝置4的一個詳細(xì)方框圖。第二編碼裝置4所包括的減法器30、運動估計和補償(ME&MC)電路31、變換器32、量化器(Q)、逆量化器(IQ)34、逆變換器(IT)35、加法器36、畫面存儲器37、統(tǒng)計學(xué)器38的功能與特征與圖2所示第一編碼裝置1相應(yīng)的部分相同;因此,對其詳細(xì)的說明出于簡潔的考慮將不予以說明。
根據(jù)本發(fā)明,第二編碼裝置4還包括一個目標(biāo)比特確定電路40,用于根據(jù)目標(biāo)比特率和比特分布信息(存儲在圖1所示的存儲器2中)確定每個畫面和宏塊的編碼比特目標(biāo)量;一比特計數(shù)器41,用于對統(tǒng)計學(xué)器38來的統(tǒng)計學(xué)數(shù)據(jù)量計數(shù);一量化器(Q)33;以及一傳送緩沖器39。比特控制電路42計算每個畫面和宏塊的比特計數(shù)器41來的編碼數(shù)據(jù)量與編碼比特目標(biāo)量之間的偏差,并據(jù)此調(diào)整Qp以改變量化器33中的Qs,由此控制根據(jù)編碼比特目標(biāo)量產(chǎn)生的編碼比特量。
下面將說明一種用于在目標(biāo)比特確定塊40確定目標(biāo)比特量的優(yōu)選實施例的算法。由第一編碼裝置1根據(jù)固定的Qp,Qfix產(chǎn)生的比特分布信息按照PIC ACDC,PIC_ETC,BLOCK_ACDC,BLOCK_ETC的形式存在圖1所示的存儲器2中。Qfix優(yōu)選地設(shè)為最小值Qp,例如“1”,其不大于第二編碼裝置中用到的任何可能的Qp,以精確地估計視頻和運動補償偏差的復(fù)雜程度。
為了確定一個畫面編碼比特的目標(biāo)量,每個預(yù)定的畫面組(例如,一個GOP)的編碼比特目標(biāo)量被首先確定。每個組的目標(biāo)量可以根據(jù)目標(biāo)比特率及在一個組中畫面數(shù)目與視頻信號的畫面速率間的比值來計算。
一組畫面的編碼比特目標(biāo)量TARGET BUDGET根據(jù)畫面的比特分布信息來分配的。在組的比特分布信息中,PIC ETC是與量化相關(guān)的。因此,對于組的與量化相關(guān)的編碼比特的目標(biāo)量,ACDC_TARGET_BUDGET由下式確定ACDC_TARGET_BUDGET=TARGET_BUDGET_PETC(i) (1)其中PETC(i)代表組中第i個畫面的PIC_ETC值,i等于1到I,I是組中畫面的數(shù)目。
然后根據(jù)組中每個畫面PIC_ACDC的值與組中值的比值分配每個畫面的ACDC_TARGET_BUDGET,定義為PIC_ACDC_TARGET_BUDGET(i)(j)=ACDC_TARGET_BUDGET(i)×PACDC(j)/∑PACDC(i) (2)其中PIC_ACDC_TARGET(i)代表第i個畫面的與量化相關(guān)編碼比特的目標(biāo)量,PACDC(i)代表第i個畫面的PIC_ACDC的值。
最后,一個畫面的編碼比特目標(biāo)量可以通過將與量化無關(guān)數(shù)據(jù)量和與量化相關(guān)編碼比特目標(biāo)量相加得到,定義為PIC_TARGET BUDGET(i)
=PIC_ACDC_TARGET_BUDGET(i)+PETC(i) (3)其中PIC_TARGET_BUDGET(i)代表第i個畫面編碼比特的目標(biāo)量。
類似地,第i個畫面與量化相關(guān)的編碼比特的目標(biāo)量PIC_ACDC_TARGET_BUDGET(i)根據(jù)每個塊的BLOCK_ACDC的值的比值為畫面中的每個宏塊分配如下BLOCK_ACDC_TARGET_BUDGET(i)(j)=PIC_ACDC_TARGET_BUDGET(i)×BACDC(j)/2048(4)其中BLOCK_ACDC_TARGET_BUDGET(i)(j)代表第i個畫面的第j個宏塊與量化相關(guān)編碼比特目標(biāo)量,而BACDC(j)是第i個畫面的第j個塊的BLOCK_ACDC的值,j為1到J,J是第i個畫面的塊數(shù)。
第i個畫面的第j個塊與量化無關(guān)編碼比特目標(biāo)量BLOCK_ETC_TARGET_BUDGET(i)(j)可以如下計算BLOCK_ETC_TARGET_BUDGET(i)(j)=PETC(i)×BETC(j)/2048 (5)其中BETC(j)是第i個畫面的第j個塊的BLOCK_ETC的值。
最后,第i個畫面的第j個塊的編碼比特目標(biāo)量可以如下計算BLOCK_TARGET_BUDGET(i)(j)=BLOCK_ACDC_TARGET_BUDGET(i)(j)+BLOCK_ETC_TARGET_BUDGET(i)(j)(6)圖5所示比特控制電路42中執(zhí)行的比特控制算法如下為了根據(jù)編碼比特目標(biāo)量(即PIC_TARGET_BUDGET(i))控制第i個畫面的實際產(chǎn)生編碼數(shù)據(jù)量,畫面的當(dāng)前宏塊的Qp通過將先前編碼宏塊實際產(chǎn)生的編碼數(shù)據(jù)量之和與其編碼比特目標(biāo)量之和的偏差或差異反饋來確定。第i個畫面的第j個宏塊的差d(j)確定為
d(j)=d(0)+Bits(j-1)-TGT(j-1) (7)其中d(0)是虛擬緩沖器的初始占用量;Bits(j-1)是由畫面的第一至第j-1個宏塊實際產(chǎn)生的編碼數(shù)據(jù)量的總和;而TGT(j-1)是第i個畫面的第j-1個塊的編碼比特目標(biāo)量BLOCK_TARGET_BUDGET(i)(j)之和。
對于畫面中的第一個宏塊,Bits(j-1)和TGT(j-1)被分別設(shè)為零值,因此,d(1)=d(0)。
第j個宏塊的Qp即Q(j)定義為Q(j)=d(j)×31/r (8)其中r是確定反饋的響應(yīng)速度的參數(shù)。
參數(shù)r與比特率/畫面速率成比例;并定義為r=2×Bit_rate/picture_rate (9)其中Bit_rate是每秒鐘編碼數(shù)據(jù)的目標(biāo)數(shù)目,即目標(biāo)比特率,而picture_rate是每秒輸入畫面的數(shù)目。
確定虛擬緩沖器的初始占用量d(0)的初始Qp即Q(0)根據(jù)Qp和產(chǎn)生的數(shù)據(jù)量之間的反比關(guān)系來計算。Q(0)可定義為Q(0)=Qfix×PACDC/PIC_ACDC_TARGET_BUDGET(i) (10)而d(0)可定義為d(0)=Q(0)×r/31 (11)其中Qfix、PACDC、PIC_ACDC_TARGET_BUDGET(i)的意義與上面相同。
按上述方式對每個宏塊確定的Qp被送到量化器33,其根據(jù)由Qp確定的量化步長量化來自變換器32來的每個宏塊的變換系數(shù)。該量化后的系數(shù)送到IQ 34和統(tǒng)計學(xué)器38。在統(tǒng)計學(xué)器38,從ME & MC電路31來的輸出采用例如VLC技術(shù)被編碼。來自統(tǒng)計學(xué)器38的編碼數(shù)據(jù)提供給比特計數(shù)器41和傳送緩沖器19,其中不規(guī)則比特率的編碼數(shù)據(jù)被暫時保存,并以一個恒定的比特率作為編碼視頻信號發(fā)送到用于發(fā)送的傳送器(未示出)。
參考圖6,其為說明根據(jù)本發(fā)明第二實施例的視頻信號編碼設(shè)備6的方框圖。第二實施例的設(shè)備6通過共用第一實施例中圖2所示第一編碼裝置1和圖5所示第二編碼裝置4的公共部件而實現(xiàn)的。共用部件與圖6所示設(shè)備6的標(biāo)號50至58以及62所標(biāo)識的元件相應(yīng),因此,其詳細(xì)內(nèi)容出于簡潔的考慮不再重復(fù)。
還有,設(shè)備6的傳送緩沖器59、目標(biāo)比特確定電路67以及比特控制電路68與圖5所示的第二編碼裝置4中的一樣;而存儲器69與第一實施例中存儲器2的功能一樣。設(shè)備6還包括一路徑控制電路60,開關(guān)63-65,-Qfix產(chǎn)生電路61和一數(shù)據(jù)存儲器66。路徑控制電路60發(fā)出一開關(guān)控制信號到開關(guān)63-65。借助于開關(guān)控制信號將開關(guān)63-65中的每一個切換至a端或b端,這樣設(shè)備6的作用方式就分別與第一實施例設(shè)備中的第一編碼裝置1和第二編碼裝置4相同了。
Qfix產(chǎn)生電路通過開關(guān)65提供一預(yù)定的固定Qp和Qfix給量化器53。數(shù)據(jù)存儲器66有一個比存儲器69更大的容量,其恢復(fù)存儲器69所儲存的數(shù)據(jù)并將恢復(fù)數(shù)據(jù)保存。
為了根據(jù)本發(fā)明第二實施例對輸入數(shù)字視頻信號編碼,首先,路徑控制電路60發(fā)出一第一開關(guān)控制信號給各開關(guān)63-65。對此響應(yīng),開關(guān)63-65切換到a端,開關(guān)64的a端是零或打開端,由此使比特計數(shù)器62的輸出端通過開關(guān)63與存儲器耦連,而變換系數(shù)通過開關(guān)65在量化器53按照根據(jù)Qfix產(chǎn)生電路61送來的Qfix所確定的Qs量化。
輸入的視頻信號以同參考圖2所說明的第一編碼裝置1一樣的方式編碼;與量化相關(guān)被編碼變換系數(shù)數(shù)據(jù)和與量化相關(guān)數(shù)據(jù)如運動矢量和預(yù)測模式信號以宏塊一宏塊模式從統(tǒng)計學(xué)器58提供給比特計數(shù)器62。
在比特計數(shù)器62,與量化相關(guān)和與量化無關(guān)各數(shù)據(jù)量被計數(shù)并提供給存儲器69,作為比特分布信息保存在其中。在存儲器69所保存的比特分布信息然后保存在數(shù)據(jù)存儲器66。在比特分布信息獲取過程中,由統(tǒng)計學(xué)器58得到的被編碼數(shù)據(jù)未提供給傳送緩沖器59。
一得到預(yù)定畫面組的比特分布信息,就通過從路徑控制電路60產(chǎn)生一第二開關(guān)信號來開始比特分配過程,為響應(yīng)此第二開關(guān)信號,開關(guān)63-65中每一個都將其所連接端由a變?yōu)閎。根據(jù)這一開關(guān)操作,比特計數(shù)器62、比特控制電路68和存儲器69分別與比特控制電路68、量化器53和目標(biāo)比特確定電路67相連,從而提供了設(shè)備6,其與圖5所示第二編碼裝置4有相同的結(jié)構(gòu),并使量化器53根據(jù)由比特控制電路68所確定的Qp進(jìn)行自適應(yīng)量化處理。
在自適應(yīng)量化處理對視頻信號編碼的過程中,對設(shè)備6的輸入是與比特分布信息獲取過程中所用的相同的輸入數(shù)字視頻信號。該輸入數(shù)字視頻信號可以由存儲介質(zhì)(未示出)如輸入緩沖器或VTR(錄相機)上安裝的磁帶中提供。例如,如果磁帶是用作存儲介質(zhì),一旦比特分布信息獲取過程完成,磁帶即被倒帶,通過再次播放磁帶將相同的輸入數(shù)字視頻信號提供給設(shè)備6。
此后,編碼過程與圖5所示第二編碼裝置4的一樣。
下面對本發(fā)明的第三實施例進(jìn)行說明。
圖9是本發(fā)明的第三實施例的方框圖。當(dāng)參照圖9時,圖象信號從輸入端子101提供給正交變換器102。連續(xù)的各個信號塊的圖象數(shù)據(jù)通過正交變換器102來進(jìn)行哈達(dá)馬變換或離散余弦變換這樣的正交變換。正交變換器102對連續(xù)的各個信號塊,輸出包含一個直流成分(DC系數(shù))和交流成分(AC系數(shù))的多個正交變換系數(shù)。
從正交變換器102所輸出的正交變換系數(shù)被提供給標(biāo)準(zhǔn)化器103,由標(biāo)準(zhǔn)化器103進(jìn)行標(biāo)準(zhǔn)化。
標(biāo)準(zhǔn)化器103把輸入DC系數(shù)進(jìn)行標(biāo)準(zhǔn)化而成為標(biāo)準(zhǔn)的DC系數(shù)。標(biāo)準(zhǔn)化器103把輸入AC系數(shù)進(jìn)行標(biāo)準(zhǔn)化而成為標(biāo)準(zhǔn)的AC系數(shù)。DC系數(shù)的標(biāo)準(zhǔn)化與AC系數(shù)的標(biāo)準(zhǔn)化分開進(jìn)行。標(biāo)準(zhǔn)DC系數(shù)和標(biāo)準(zhǔn)AC系數(shù)分別從輸出端子所輸出。標(biāo)準(zhǔn)化器103生成代表電平值和變動值的標(biāo)準(zhǔn)化信息(數(shù)據(jù)),并輸出。
輸入DC系數(shù)的標(biāo)準(zhǔn)化方法和輸入AC系數(shù)的標(biāo)準(zhǔn)化方法相互不同。由于DC系數(shù)對應(yīng)于塊內(nèi)的平均值,因而,以與一般的取樣值的標(biāo)準(zhǔn)化相類似的方法,使用極大值和極小值來對DC系數(shù)進(jìn)行標(biāo)準(zhǔn)化。由于AC系數(shù)的平均值接近于零,則標(biāo)準(zhǔn)化根據(jù)AC系數(shù)的絕對值來進(jìn)行。
連續(xù)輸入的各塊的DC系數(shù)的極小值和極大值分別被檢測。
通過所檢測的極小值和極大值,從極大值減去極小值,來得到極大值與極小值的差分值d1。
算出輸入AC系數(shù)的絕對值,把所算出的絕對值乘2。把絕對值乘2的原因是考慮到峰值在絕對值算出時近似為二分之一這樣的事實來進(jìn)行的。
檢測把AC系數(shù)乘2的絕對值的極大值d2。
與DC系數(shù)相關(guān)聯(lián)的差分值d1和同樣與AC系數(shù)相關(guān)聯(lián)的極大值d2代表偏差量(偏差值),因此,值d1和d2可以在后面同樣進(jìn)行處理。選擇值d1和d2的較大的值,則使所選擇的值為偏差值d3。
偏差值d3和極小值(代表電平值)被提供給未圖示的矢量量化器,進(jìn)行量化來減少信息量。
從未圖示的矢量量化器所輸出的被量化的代表電平值和被量化的偏差值代表標(biāo)準(zhǔn)化信息D。被量化的代表電平值和被量化的偏差值被變換為與信息的減小量相關(guān)的極小值(代表電平值)m和偏差值d。
從DC系數(shù)減去極小值而生成新的DC系數(shù)a。其結(jié)果,新的DC系數(shù)a的最小值等于零,DC系數(shù)的范圍移動,由此,減少了信息量。
用偏差值d除以新的DC系數(shù),由此,DC系數(shù)被進(jìn)行標(biāo)準(zhǔn)化,而生成在0和1之間存在的標(biāo)準(zhǔn)化的DC系數(shù),而輸出給固定長度存儲器104。
AC系數(shù)被進(jìn)行延遲,而成為被延遲的AC系數(shù)b,用偏差值d除以AC系數(shù)b,由此,AC系數(shù)被進(jìn)行標(biāo)準(zhǔn)化,而生成在0和1之間存在的標(biāo)準(zhǔn)化的AC系數(shù),而輸出給固定長度存儲器104。
來自標(biāo)準(zhǔn)化器103的輸出信號通過固定長度存儲器而被延遲預(yù)定的時間,該預(yù)定時間被設(shè)定為補償由前饋控制所引起的時間滯后。
AC和DC系數(shù)的被延遲的信號從固定長度存儲器104提供給自適應(yīng)量化器105。自適應(yīng)量化器105以對各信號塊而決定的可變量化步幅Sq來對AC和DC系數(shù)進(jìn)行量化。來自自適應(yīng)量化器105的輸出數(shù)據(jù)通過熵編碼器106被編碼為赫夫曼代碼這樣的可變長度編碼。
在較大的量化步幅Sq被自適應(yīng)量化器105使用時,表示來自熵編碼器106的編碼數(shù)據(jù)的比特數(shù)較小。反之,在較小的量化步幅Sq被自適應(yīng)量化器105使用時,表示來自熵編碼器106的編碼數(shù)據(jù)的比特數(shù)較大。在該方法中,來自熵編碼器106的輸出編碼數(shù)據(jù)量依賴于被自適應(yīng)量化器105所使用的量化步幅Sq。來自熵編碼器106的輸出編碼數(shù)據(jù)被暫時地存儲在可變長度緩沖存儲器107中。編碼數(shù)據(jù)被從可變長度緩沖存儲器107讀出,而經(jīng)過輸出端子108以預(yù)定的固定傳輸率進(jìn)行傳輸。
在使用赫夫曼代碼的情況下,電平“0”的數(shù)據(jù)對應(yīng)于最短的代碼字,更大的絕對電平的數(shù)據(jù)對應(yīng)于更長的代碼字。由于AC正交變換系數(shù)的大部分存在于0附近,則數(shù)據(jù)的大部分由熵編碼器106進(jìn)行編碼而成為短的代碼字。這樣,由熵編碼器所進(jìn)行的編碼可以實現(xiàn)數(shù)據(jù)的充分壓縮。
從標(biāo)準(zhǔn)化器103所輸出的標(biāo)準(zhǔn)化信息信號D通過固定長度存儲器104進(jìn)行延遲。標(biāo)準(zhǔn)化信息信號由固定長度存儲器104讀出,經(jīng)過輸出端子109來進(jìn)行傳輸。由于標(biāo)準(zhǔn)化信息信號數(shù)據(jù)具有固定字長,就不需要為標(biāo)準(zhǔn)化信息信號而準(zhǔn)備緩沖存儲器。
如上述那樣,來自熵編碼器106的輸出編碼數(shù)據(jù)量取決于由自適應(yīng)量化器105所使用的量化步幅Sq??刂撇緼通過調(diào)整由自適應(yīng)量化器105所使用的量化步幅Sq來控制來自熵編碼器106的輸出編碼數(shù)據(jù)量。該控制被設(shè)計成這樣在每個象一幀期間這樣的預(yù)定期間內(nèi),把輸出編碼數(shù)據(jù)量近似地保持為預(yù)定的固定值上??刂撇緼根據(jù)由標(biāo)準(zhǔn)化器103所提供的非延遲標(biāo)準(zhǔn)化信息、由固定長度存儲器104所提供的延遲標(biāo)準(zhǔn)化信息和代表實際的輸出編碼數(shù)據(jù)量Db的由熵編碼器106所提供的信號來決定量化步幅Sq。
控制部A具有數(shù)據(jù)量預(yù)測器110和量化步設(shè)定器112。由標(biāo)準(zhǔn)化器103給數(shù)據(jù)量預(yù)測器110提供非延遲標(biāo)準(zhǔn)化信息。由固定長度存儲器104給量化步設(shè)定器112提供延遲標(biāo)準(zhǔn)化信息??刂撇緼根據(jù)非延遲標(biāo)準(zhǔn)化信息和延遲標(biāo)準(zhǔn)化信息來執(zhí)行前饋控制。
數(shù)據(jù)量預(yù)測器110具有ROM,該ROM保持對應(yīng)于標(biāo)準(zhǔn)化信息而預(yù)定的塊的代表編碼數(shù)據(jù)而于必要的比特量相對的預(yù)測值。如上述那樣,數(shù)據(jù)量預(yù)測器110從標(biāo)準(zhǔn)化器103受取代表標(biāo)準(zhǔn)化信息的信號D。數(shù)據(jù)量預(yù)測器110使用標(biāo)準(zhǔn)化信息信號作為與ROM相對的地址信號,以及從由地址信號所表示的ROM的場讀出預(yù)測值,由此,根據(jù)受取的標(biāo)準(zhǔn)化信息來決定與比特量相對的預(yù)測值。與數(shù)據(jù)量相對的預(yù)測值隨量化的粗度或精密度的程度而變化,因此,這些預(yù)測值被選擇以便于對應(yīng)于由自適應(yīng)量化器105所使用的量化步幅。所決定的預(yù)測值被從數(shù)據(jù)量預(yù)測器110輸出給閾值設(shè)定器111。閾值設(shè)定器111根據(jù)由數(shù)據(jù)量預(yù)測器110所提供的預(yù)測值來設(shè)定閾值。由閾值設(shè)定器111給量化步設(shè)定器112提供閾值。
量化步設(shè)定器112從固定長度存儲器104受取延遲標(biāo)準(zhǔn)化信息,把延遲標(biāo)準(zhǔn)化信息與各塊所對的閾值進(jìn)行比較,由此,來決定塊的等級。
根據(jù)等級來生成最初的量化步幅Sq。具有未圖示的ROM,以存儲被指定給每個地址的量化步幅Psqs的預(yù)定值。
根據(jù)等級來生成預(yù)測數(shù)據(jù)量PDb。所生成的預(yù)測數(shù)據(jù)量PDb與目標(biāo)數(shù)據(jù)量相一致。具有未圖示的ROM,以存儲被指定給每個地址的預(yù)測數(shù)據(jù)量PDb的預(yù)定值。
由于根據(jù)塊等級來決定地址,則根據(jù)塊等級來選擇預(yù)測數(shù)據(jù)量PDb的預(yù)定值。預(yù)先決定預(yù)測數(shù)據(jù)量PDb的值的過程與預(yù)先決定由數(shù)據(jù)量預(yù)測器110所使用的每塊的比特量的預(yù)測值的過程相同。采用統(tǒng)計地計算出的平均值來作為預(yù)測數(shù)據(jù)量PDb的值。
熵編碼器106在對應(yīng)于一個塊的期間生成代表從熵編碼器106所輸出的編碼數(shù)據(jù)的實際量Db的信號。實際數(shù)據(jù)量信號從熵編碼器106輸出給減法器113。減法器113生成預(yù)測數(shù)據(jù)量PDb與實際數(shù)據(jù)量Db的數(shù)據(jù)量差分(誤差)。數(shù)據(jù)量誤差從減法器113提供給累積加法器114中的未圖示的加法器。
累積加法器114具有保持累積加法計算值K的未圖示的塊保持電路。加法器把數(shù)據(jù)量誤差與累積加法計算值K進(jìn)行加法運算,而生成新的累積加法計算值,把新的累積加法計算值輸出給未圖示的塊保持電路。在塊保持電路中,累積加法計算值K被新的累積加法計算值所置換,這樣來更新累積值。累積加法計算值K由未圖示的塊保持電路提供給量化步設(shè)定器。
其中,累積加法計算值K被變換為移位信號DSq。把最初的量化步幅PSq進(jìn)行加法運算,來生成提供給適應(yīng)量化器105的最終量化步幅Sq。
如上述那樣,在控制器A的數(shù)據(jù)量預(yù)測器中,預(yù)先決定與塊的數(shù)據(jù)量相對的預(yù)測值來作為標(biāo)準(zhǔn)化信息的函數(shù)。與塊的數(shù)據(jù)量相對的預(yù)測值和標(biāo)準(zhǔn)化信息之間的關(guān)系被選擇為保證預(yù)定期間的來自熵編碼器106的輸出編碼數(shù)據(jù)量被近似地保持為預(yù)定的恒定量。采用統(tǒng)計地計算出的平均值來作為與塊的數(shù)據(jù)量相對的預(yù)測值。
閾值設(shè)定器111根據(jù)由數(shù)據(jù)量預(yù)測器110連續(xù)提供的各塊的預(yù)測數(shù)據(jù)量來預(yù)測在預(yù)定期間所輸出的數(shù)據(jù)量。在閾值設(shè)定器111中,選擇或決定為各塊的分類所使用的閾值,以便于使在一幀期間這樣的預(yù)定期間所輸出的數(shù)據(jù)的預(yù)測量等于預(yù)先設(shè)定的目標(biāo)量。
由于對應(yīng)于塊的各等級來決定量化步幅,則閾值中的偏差帶來了量化步幅中的變化。這樣,在一幀期間這樣的預(yù)定期間所輸出的數(shù)據(jù)的實際量就能等于預(yù)先設(shè)定的目標(biāo)量。
特別是,閾值設(shè)定器111,在一幀期間這樣的預(yù)定期間內(nèi),把由數(shù)據(jù)量預(yù)測器110連續(xù)提供的各塊的預(yù)測數(shù)據(jù)量進(jìn)行合計,由此,來計算出在預(yù)定(例如一幀)期間內(nèi)所輸出的預(yù)測數(shù)據(jù)量。在數(shù)據(jù)量預(yù)測器110中準(zhǔn)備多組預(yù)定的閾值。通過使用在預(yù)定期間內(nèi)所輸出的數(shù)據(jù)的預(yù)測量和預(yù)定的閾值的各組來評價輸出數(shù)據(jù)實際量。
在該方法中,對于輸出數(shù)據(jù)的實際量的評價值能夠與預(yù)定的閾值的各組相一致。評價值被與預(yù)定的目標(biāo)值相比較,而選擇等于目標(biāo)值或者小于目標(biāo)值并且最近的評價值的一個。從閾值設(shè)定器111輸出與所選擇的評價值相一致的閾值的組。
閾值設(shè)定器111的功能與下述處理相一致。為了得到在一幀期間這樣的預(yù)定期間內(nèi)所生成的其的合計,來把從數(shù)據(jù)量預(yù)測器110連續(xù)輸入的輸出編碼的預(yù)測量進(jìn)行加法運算。預(yù)測量的合計被與在一幀期間這樣的預(yù)定期間內(nèi)所生成的輸出編碼的目標(biāo)量進(jìn)行比較。根據(jù)預(yù)測量的合計與目標(biāo)量的比較結(jié)果來決定與預(yù)定期間中的連續(xù)的塊相對的閾值。閾值的決定被設(shè)定成把輸出編碼的實際量維持在輸出編碼的目標(biāo)量上。所決定的閾值被連續(xù)地輸出給量化步設(shè)定器112。
在一般的圖象信號的情況下,預(yù)測數(shù)據(jù)量PDb的累積值略等于實際數(shù)據(jù)量Db的累積值,累積加法計算值K接近于零。在實際的實際量Db被偏置的情況下,累積加法計算值K顯然是負(fù)或正的,量化步移位器119生成能夠補償實際數(shù)據(jù)量Db的偏置的移位信號DSq。
如上述那樣,量化步設(shè)定器112把累積加法計算值K變換為移位信號DSq?;旧嫌诰幋a的特性相獨立地來決定向移位信號DSq的累積加法計算值的變換特性,并且,累積加法計算值K被設(shè)定為不超過預(yù)定的上限Kmax。
如從上述中所看到的那樣,通過使用預(yù)測數(shù)據(jù)量來進(jìn)行前饋控制。得到預(yù)測誤差而作為前饋控制的結(jié)果。前饋控制根據(jù)預(yù)測誤差來進(jìn)行。在與幾個塊相對應(yīng)的期間這樣短的期間中,反復(fù)進(jìn)行前饋控制和反饋控制。上述的數(shù)據(jù)編碼量的控制在各個一幀期間的結(jié)束時刻上把數(shù)據(jù)量誤差維持在上限Kmax以下。在前饋控制部中所決定的閾值與目標(biāo)數(shù)據(jù)量相關(guān)而需要具有上限值Kmax的裕量。
盡管本發(fā)明以優(yōu)選實施例作為說明,在不背離由所附權(quán)利要求確定的本發(fā)明精神和范圍的前提下可以有各種修改和變化。
權(quán)利要求
1.一種對含有與量化相關(guān)信號和與量化無關(guān)信號的視頻信號進(jìn)行編碼的方法,其步驟為(a)用一固定量化參數(shù)量化與量化相關(guān)信號,以產(chǎn)生第一量化數(shù)據(jù);(b)分別對第一量化后數(shù)據(jù)和與量化無關(guān)的信號進(jìn)行統(tǒng)計學(xué)編碼,以分別提供第一和第二數(shù)據(jù);(c)將第一數(shù)據(jù)量和第二數(shù)據(jù)量儲存;(d)根據(jù)預(yù)定目標(biāo)比特率和第一、第二數(shù)據(jù)量來確定每個視頻信號單元的編碼比特的目標(biāo)量;(e)根據(jù)編碼比特目標(biāo)量確定一個或多個量化參數(shù);(f)根據(jù)確定的量化參數(shù)來量化與量化相關(guān)數(shù)據(jù)以產(chǎn)生第二量化數(shù)據(jù);和(g)對第二量化數(shù)據(jù)和與量化無關(guān)信號進(jìn)行統(tǒng)計學(xué)編碼,以由此分別產(chǎn)生第三數(shù)據(jù)和第四數(shù)據(jù)作為視頻信號的編碼數(shù)據(jù),其中,根據(jù)編碼比特目標(biāo)量和編碼數(shù)據(jù)量之間的差異,量化參數(shù)被自適應(yīng)地確定。
2.根據(jù)權(quán)利要求1的方法,其中每個單元與視頻信號的一個畫面相對應(yīng)。
3.根據(jù)權(quán)利要求1的方法,其中每個單元與視頻信號的一個宏塊相對應(yīng)。
4.根據(jù)權(quán)利要求1的方法,其中對視頻信號的每個畫面和宏塊確定編碼比特目標(biāo)量。
5.根據(jù)權(quán)利要求1的方法,其中所述確定步驟(d)包括如下步驟(d1)根據(jù)目標(biāo)比特率、畫面組中的畫面數(shù)以及視頻信號的畫面速率計算一預(yù)定畫面組的編碼比特目標(biāo)量;(d2)對該畫面組,通過從該組的編碼比特目標(biāo)量中減去該組的第二數(shù)據(jù)來檢測該組的與量化相關(guān)編碼比特的目標(biāo)量;(d3)找到與畫面組中每一畫面相應(yīng)的第一數(shù)據(jù)量相對于與該畫面組相應(yīng)的第一數(shù)據(jù)量的比值;(d4)將該畫面組的與量化相關(guān)編碼比特目標(biāo)量乘以步驟(d3)所得到的比值,由此得到每一畫面的與量化相關(guān)編碼比特目標(biāo)量;(d5)將步驟(d4)中得到的與量化相關(guān)編碼比特目標(biāo)量與每一畫面的第二數(shù)據(jù)量相加,以確定每一畫面的編碼比特目標(biāo)量。
6.根據(jù)權(quán)利要求5的方法,其中所述確定步驟(d)還包括如下步驟(d6)計算對應(yīng)于一畫面中每一宏塊的第一數(shù)據(jù)量相對于該畫面的第一數(shù)據(jù)量之比值;(d7)在步驟(d4)中得到的該畫面的與量化相關(guān)編碼比特目標(biāo)量乘以(d6)中得到的比值,以由此提供每一宏塊的與量化相關(guān)編碼比特目標(biāo)量;和(d8)將(d7)提供的與量化相關(guān)編碼比特目標(biāo)量與每一宏塊的第二數(shù)據(jù)量相加,從而確定每一宏塊的編碼比特目標(biāo)量。
7.根據(jù)權(quán)利要求5的方法,其中每一畫面第二數(shù)據(jù)的量通過將每個畫面中多個宏塊的第二數(shù)據(jù)各量加和得到,而每個畫面的第一數(shù)據(jù)量通過將每一畫面中所含的多個宏塊各自的第一數(shù)據(jù)量加和得到。
8.一種對含有與量化相關(guān)信號和與量化無關(guān)信號的視頻信號進(jìn)行編碼的設(shè)備,其特征在于包括一第一編碼裝置,其具有一第一量化裝置,用于根據(jù)一固定量化參數(shù)量化與量化相關(guān)信號,以產(chǎn)生第一量化數(shù)據(jù),一第一統(tǒng)計學(xué)編碼裝置,用于對第一量化數(shù)據(jù)和與量化無關(guān)信號編碼,以分別提供第一數(shù)據(jù)和第二數(shù)據(jù),和一第一計數(shù)裝置,用于對第一和第二數(shù)據(jù)分別計數(shù);用于存儲第一和第二數(shù)據(jù)的存儲裝置;和一第二編碼裝置,其具有用于確定每一預(yù)定視頻信號單元編碼比特目標(biāo)量的裝置,根據(jù)編碼比特目標(biāo)量為每個單元產(chǎn)生一個或多個量化參數(shù)的裝置,一第二量化裝置,用于根據(jù)所確定的量化參數(shù)量化與量化相關(guān)信號,以產(chǎn)生第二量化數(shù)據(jù),一第二統(tǒng)計學(xué)編碼裝置,用于對第二量化數(shù)據(jù)和與量化無關(guān)信號編碼,以分別提供第三數(shù)據(jù)和第四數(shù)據(jù),作為視頻信號的編碼數(shù)據(jù),和一第二計數(shù)裝置,用于對第三和第四數(shù)據(jù)分別計數(shù)。
9.根據(jù)權(quán)利要求8的設(shè)備,其特征在于所述量化參數(shù)產(chǎn)生裝置包括檢測編碼比特目標(biāo)量和編碼數(shù)據(jù)量之間差別的裝置;和根據(jù)所述差別自適應(yīng)地調(diào)節(jié)量化參數(shù)的裝置。
10.根據(jù)權(quán)利要求8的設(shè)備,其特征在于每個單元與視頻信號的一個畫面相對應(yīng)。
11.根據(jù)權(quán)利要求8的設(shè)備,其特征在于每個單元與視頻信號的宏塊相對應(yīng)。
12.根據(jù)權(quán)利要求8的設(shè)備,其特征在于對視頻信號的每個畫面和宏塊確定編碼比特的目標(biāo)量。
13.根據(jù)權(quán)利要求8的設(shè)備,其特征在于對視頻信號的每個畫面和宏塊儲存其第一和第二數(shù)據(jù)量。
14.根據(jù)權(quán)利要求8的設(shè)備,其特征在于還包括一個延遲裝置,用于將視頻信號延遲直至第一和第二數(shù)據(jù)量存入存儲裝置,然后其將視頻信號送給第二編碼裝置。
15.一用于對含有與量化相關(guān)信號和與量化無關(guān)信號的視頻信號編碼的裝置,其特征在于包括對與量化相關(guān)信號進(jìn)行量化以提供第一量化數(shù)據(jù)的裝置;對第一量化數(shù)據(jù)和與量化無關(guān)信號進(jìn)行統(tǒng)計學(xué)編碼以分別產(chǎn)生第一數(shù)據(jù)和第二數(shù)據(jù)的裝置;一計數(shù)裝置,用于得到第一數(shù)據(jù)量和第二數(shù)據(jù)量;用于儲存第一數(shù)據(jù)量和第二數(shù)據(jù)量的裝置;一目標(biāo)比特確定裝置,用于根據(jù)目標(biāo)比特率和所儲存的第一和第二數(shù)據(jù)量確定視頻信號每個預(yù)定單元的編碼比特目標(biāo)量;一比特控制裝置,用于根據(jù)編碼比特目標(biāo)量確定初始量化參數(shù),并根據(jù)編碼比特目標(biāo)量和統(tǒng)計學(xué)編碼裝置產(chǎn)生的編碼數(shù)據(jù)量之差來進(jìn)一步確定量化參數(shù),以此產(chǎn)生所確定的量化參數(shù);用于設(shè)置固定量化參數(shù)的裝置;和控制裝置,用于將固定量化參數(shù)耦連到量化裝置,并輸入第一和第二數(shù)據(jù)量到到存儲裝置,此后,將所儲存的第一和第二數(shù)據(jù)量、計數(shù)裝置的輸出和確定的量化參數(shù)分別提供給目標(biāo)比特確定裝置、比特控制裝置和量化裝置,由此自適應(yīng)地在量化裝置中控制量化步長。
16.根據(jù)權(quán)利要求15的設(shè)備,其特征在于每個單元是視頻信號的一個畫面。
17.根據(jù)權(quán)利要求15的設(shè)備,其特征在于每個單元是視頻信號的一個宏塊。
18.根據(jù)權(quán)利要求15的設(shè)備,其特征在于對視頻信號每個畫面和宏塊確定編碼比特的目標(biāo)量。
19.一種代表所編碼的輸出數(shù)據(jù)而控制必要的比特數(shù)的系統(tǒng),包括把輸入數(shù)據(jù)進(jìn)行編碼而成為代碼并且輸出上述代碼的裝置;在各個第一預(yù)定期間內(nèi)預(yù)測由編碼裝置所輸出的輸出代碼中的比特數(shù)的裝置;為了得到在長于上述第一期間的第二預(yù)定期間內(nèi)所生成的預(yù)測比特數(shù)的合計來把輸出代碼中的預(yù)測比特數(shù)進(jìn)行加法運算的裝置;對應(yīng)于所得到的合計來控制來自編碼裝置的輸出代碼中的實際比特數(shù)的裝置;連續(xù)生成在各個第一期間所生成的輸出代碼的預(yù)測比特數(shù)和輸出代碼的實際比特數(shù)之差的裝置;用于對上述差進(jìn)行累積而成為累積值的裝置;用于根據(jù)累積值來控制來自編碼裝置的輸出代碼的實際比特數(shù)的裝置,由此,能夠把在各個第二期間內(nèi)從編碼裝置所輸出的代碼中的實際比特數(shù)保持在預(yù)定量以下。
20.一種編碼輸出數(shù)據(jù)量控制系統(tǒng)的解碼裝置,其特征在于,包括對使用權(quán)利要求19的控制比特數(shù)的系統(tǒng)來進(jìn)行編碼和傳輸?shù)目刂菩畔⑦M(jìn)行解碼的控制信息解碼裝置;和由上述所解碼的控制信息所控制并且進(jìn)行編碼數(shù)據(jù)的解碼動作的編碼數(shù)據(jù)解碼裝置。
21.一種代表所編碼的輸出數(shù)據(jù)而控制必要的比特數(shù)的系統(tǒng),包括把輸入數(shù)據(jù)進(jìn)行編碼而成為代碼并且輸出上述代碼的裝置;用于預(yù)測來自編碼裝置的代碼的輸出率的裝置;用于根據(jù)預(yù)測率來控制來自編碼裝置的代碼的輸出實際率的裝置;用于檢測來自編碼裝置的代碼的輸出實際率與目標(biāo)率之差的裝置;根據(jù)所檢測出的差來控制來自編碼裝置的代碼的輸出實際率的裝置。
22.一種編碼輸出數(shù)據(jù)量控制系統(tǒng)的解碼裝置,其特征在于,包括對使用權(quán)利要求21的控制比特數(shù)的系統(tǒng)來進(jìn)行編碼和傳輸?shù)目刂菩畔⑦M(jìn)行解碼的控制信息解碼裝置;和由上述所解碼的控制信息所控制并且進(jìn)行編碼數(shù)據(jù)的解碼動作的編碼數(shù)據(jù)解碼裝置。
全文摘要
在編碼設(shè)備中采用的一種方法,根據(jù)與量化相關(guān)和與量化無關(guān)信號為視頻信號的每個畫面和塊分配比特。首先,與量化相關(guān)信號根據(jù)固定量化參數(shù)被量化,量化數(shù)據(jù)和與量化無關(guān)信號被統(tǒng)計學(xué)編碼以由此產(chǎn)生第一數(shù)據(jù)和第二數(shù)據(jù)。每個畫面和塊的編碼比特目標(biāo)量根據(jù)目標(biāo)比特率和第一、第二數(shù)據(jù)量確定。畫面和塊的編碼數(shù)據(jù)量根據(jù)編碼比特目標(biāo)量,通過按編碼比特目標(biāo)量和所產(chǎn)生編碼數(shù)據(jù)量之差來可調(diào)節(jié)地改變量化參數(shù)而實現(xiàn)自適應(yīng)地控制。
文檔編號G06T9/00GK1230080SQ9810093
公開日1999年9月29日 申請日期1998年3月19日 優(yōu)先權(quán)日1998年3月19日
發(fā)明者菅原隆幸, 上田基晴, 中川裕史, 西谷勝義, 藤原光章 申請人:日本勝利株式會社