專利名稱:增強型精細粒度可伸縮視頻編碼結(jié)構(gòu)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及編碼技術(shù)領(lǐng)域,具體的說是一種增強型精細粒度可伸縮視頻編碼結(jié)構(gòu),用于多媒體數(shù)據(jù)壓縮編碼的國際標準。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,有關(guān)互聯(lián)網(wǎng)上的各種傳輸均規(guī)定有不同的國際標準。例如,MPEG-4就是基于多媒體數(shù)據(jù)壓縮編碼的國際標準,該標準是一個開放式的標準,許多高性能的新技術(shù)和新算法會不斷納入其中。精細粒度可伸縮視頻編碼FGS是MPEG-4國際標準中的一項非常重要的核心技術(shù),它主要用于解決視頻流在互聯(lián)網(wǎng)上傳輸時遇到的網(wǎng)絡(luò)帶寬波動和數(shù)據(jù)包丟失等問題。
MPEG-4國際標準中目前采納的精細粒度可伸縮視頻編碼FGS是基于離散余弦變換DCT系數(shù)的位平面編碼方案,它在算法復雜度和編碼性能兩方面均優(yōu)于其它的編碼方式,例如優(yōu)于基于小波的精細粒度可伸縮視頻編碼FGS就優(yōu)于其它的編碼方式。該方案是精細粒度可伸縮視頻編碼的基本方案BFGS,如圖4所示。該基本方案的結(jié)構(gòu)由基本層和增強層兩種碼流構(gòu)成。其中,基本層碼流是必須傳輸?shù)?,并且碼率比較低,增強層碼流可以根據(jù)帶寬情況進行任意截斷。這種基本方案生成的視頻流雖說能夠適應(yīng)復雜的網(wǎng)絡(luò)帶寬波動,具有較好的魯棒性,但由于在編碼方案中的運動補償是參考了一個最低質(zhì)量的重構(gòu)層,因而存在編碼效率太低的致命弱點。在同等碼率下,質(zhì)量要比MPEG-4中的非可伸縮性編碼低2dB~3dB(3dB意味著碼率翻一番),這在實際應(yīng)用中是很難接受的。為此需要研究新的高性能的精細粒度可伸縮視頻編碼方案。在目前的主要研究中,最具代表性的有以下兩種方案(1)運動補償精細可伸縮編碼方案MC-FGS,此方案由Philip提出(M.vander Schaar,H.Radha,“Motion compensation based fine-granular scalability forwireless multimedia”,in Proc.IEEE Workshop Multimedia Signal Processing,vol.10,Oct.2001,pp.453-458.)。該方案在MPEG-4標準中的基本方案基礎(chǔ)上,提出了兩種可伸縮結(jié)構(gòu),分別稱為雙循環(huán)運動補償精細可伸縮編碼two-loopMC-FGS和單循環(huán)運動補償精細可伸縮編碼one-loop MC-FGS,這兩種結(jié)構(gòu)分別應(yīng)用于高誤碼率和低實現(xiàn)復雜度的情況;(2)漸進精細的可伸縮視頻編碼方案PFGS,此方案由微軟研究院提出(F.Wu,S.Li and Y.-Q.Zhang “A framework for efficient progressive finegranularity scalable video coding.,”IEEE Trans.Circuit and systems for videotechnology,vol.11,Mar.2001,pp.332-344.)。該編碼方案的思想是交替地使用低質(zhì)量的參考和高質(zhì)量的參考來防止誤差的傳播和積累,同時在一定程度上提高增強層的編碼效率。
雖然上述兩種方案(MC-FGS和PFGS)與基本方案BFGS相比在編碼效率上有了很大程度的提高,但是仍然存在許多不足。例如,雙循環(huán)運動補償精細可伸縮編碼two-loop MC-FGS由于只對B幀的增強層進行高質(zhì)量的運動補償,嚴重限制了其編碼效率;而單循環(huán)運動補償精細可伸縮編碼one-loopMC-FGS由于對基本層采用了高質(zhì)量的運動補償,所以易受信道帶寬波動和信道誤碼的影響,而產(chǎn)生誤差積累。漸進精細的可伸縮視頻編碼方案PFGS存在的主要問題是第一,在使用低質(zhì)量的基本層作為參考時圖像的編碼效率會低,從而降低了整個系統(tǒng)的編碼效率。第二,交替地使用低質(zhì)量的參考和高質(zhì)量的參考,會使相鄰幀解碼質(zhì)量相差較大,而人眼對相鄰幀圖像質(zhì)量的波動非常敏感。由于這些問題的存在,使得運動補償精細可伸縮編碼方案MC-FGS和漸進精細的可伸縮視頻編碼方案PFGS這兩種方案都遠沒有達到面向傳輸?shù)膲嚎s方法的標準最優(yōu)壓縮性能。
發(fā)明內(nèi)容本發(fā)明的目的在于克服上述已有技術(shù)的不足,提出一種編碼效率高,自適應(yīng)網(wǎng)絡(luò)帶寬變化及消除誤差積累的增強型精細粒度可伸縮視頻編碼結(jié)構(gòu)。
實現(xiàn)本發(fā)明目的的技術(shù)關(guān)鍵是在現(xiàn)有精細粒度可伸縮視頻編碼器的基本層和增強層之間增設(shè)中間層,構(gòu)成每幀為基本層、中間層和增強層的三層結(jié)構(gòu),進行編碼形成碼流。該中間層依不同的幀編碼而設(shè)置,P幀編碼的偶數(shù)幀中間層先采用前一幀的基本層進行運動補償生成幀存儲器F1,再通過幀存儲器F1進行運動補償編碼,形成偶數(shù)幀中間層碼流,P幀編碼的奇數(shù)幀中間層先采用前一幀的中間層進行運動補償生成幀存儲器F0,再通過幀存儲器F0進行運動補償編碼,形成奇數(shù)幀中間層碼流,即通過交替地使用幀存儲器F0和幀存儲器F1進行中間層運動補償編碼,形成當前幀的中間層碼流。B幀編碼方式的中間層與基本層和增強層相同,即使用前后兩幀生成的幀存儲器F1進行運動補償,這樣既提高了編碼效率,又不會因為帶寬的波動引起誤差的傳播和積累問題。
該增強層是利用幀存儲器F1進行運動補償而生成,P編碼方式與B幀編碼方式相同。
該結(jié)構(gòu)的基本層信息均可得到,如果第1幀的中間層信息由于信道帶寬的波動或信道誤碼等原因發(fā)生錯誤或丟失,則第2幀的增強層將受到誤差的影響,引起第2幀質(zhì)量的降低。但由于第2幀的中間層是使用第1幀的基本層進行運動補償?shù)?,所以?幀的中間層在解碼端是可以正確重建的,這樣第3幀的圖象就不會受到第1幀的中間層的影響。
上述P幀編碼結(jié)構(gòu)中設(shè)有兩個幀存儲器F0和F1,其中,幀存儲器F0用于存儲前一幀的重建基本層,以對后續(xù)幀的基本層編碼;幀存儲器F1用于存儲前一幀的重建中間層,以對后續(xù)幀的中間層和增強層編碼。
上述P幀編碼結(jié)構(gòu)中的中間層設(shè)有開關(guān)S1、S2和S3,用于控制中間層的編碼方式,三開關(guān)分為1和2兩個位置,位置1與中間層連接,位置2與基本層連接,三個開關(guān)S1、S2和S3都撥到位置2時,為偶數(shù)幀的中間層編碼,三個開關(guān)S1、S2和S3都撥到位置1時,為奇數(shù)幀的中間層編碼。
上述P幀編碼結(jié)構(gòu),其中利用幀存儲器F1進行運動補償編碼得到增強層的碼流,是通過對原始視頻數(shù)據(jù)Vi與中間層的高質(zhì)量運動補償數(shù)據(jù)HQCD的殘差進行離散余弦變換DCT后,減去基本層和中間層已經(jīng)編碼的數(shù)據(jù),再對這個殘差ED進行位平面編碼,形成增強層碼流。
上述P幀編碼結(jié)構(gòu),其中利用幀存儲器F1進行運動補償編碼得到中間層的碼流,是通過對原始視頻Vi與基本層編碼數(shù)據(jù)BD的殘差進行離散余弦變換DCT后,進行位平面編碼,編碼的前m個位平面形成偶數(shù)幀的中間層碼流;增強層的前m個位平面形成奇數(shù)幀的中間層碼流。
上述P幀編碼結(jié)構(gòu),其中間層的視頻信號獲取,是通過中間層碼流經(jīng)位平面解碼后與基本層的反量化系數(shù)求和,再進行離散余弦DCT反變換,將得到的數(shù)據(jù)與基本層視頻數(shù)據(jù)BD進行求和,最后通過限幅操作而得到。
本發(fā)明由于采用了中間層碼流結(jié)構(gòu),有效地解決了誤差傳播和積累問題;同時由于本發(fā)明的增強層采用中間層進行運動補償?shù)木幋a結(jié)構(gòu),提高了運動補償?shù)木龋乖鰪妼拥木幋a效率得到明顯提高。
圖1是本發(fā)明的原理結(jié)構(gòu)2是本發(fā)明的P幀編碼實例3是本發(fā)明的P幀解碼實例4是現(xiàn)有技術(shù)的原理結(jié)構(gòu)圖
具體實施例方式參照圖1,本發(fā)明的每一幀由基本層、中間層和增強層三層編碼結(jié)構(gòu)構(gòu)成。其中圖1a所示的P幀編碼結(jié)構(gòu)中,F(xiàn)0為用于基本層預測的幀存儲器,F(xiàn)1為用于中間層和增強層預測的幀存儲器。m為用于重建F1時用到的中間層信息,實線空心箭頭表示重建F1時運動補償信息來源于前一幀的中間層,虛線空心箭頭表示重建F1時運動補償信息來源于前一幀的基本層,實線實心箭頭表示數(shù)據(jù)的流向?;緦拥纳膳c現(xiàn)有基本方案BFGS完全一致,即通過對原始視頻Vi與基本層運動補償數(shù)據(jù)BMCD的殘差進行離散余弦變換DCT后,再進行量化,最后通過變長編碼形成基本層碼流;中間層的生成方式有兩種對于偶數(shù)幀先由前一幀的基本層進行運動補償?shù)玫綆鎯ζ鱂1,再通過幀存儲器F1進行運動補償編碼,形成偶數(shù)幀中間層碼流,即第2幀和第4幀碼流,對于奇數(shù)幀由前一幀的中間層進行運動補償而得到幀存儲器F0,再通過幀存儲器F0進行運動補償編碼,形成奇數(shù)幀中間層碼流,即第3幀和第5幀碼流。增強層的生成是利用幀存儲器F1進行運動補償而生成。
圖1b所示的B幀編碼結(jié)構(gòu)中,由于B幀為雙向預測幀,不作為其它幀的預測參考,所以在本發(fā)明中對B幀進行編碼時,對各個編碼層都使用前后兩幀生成的幀存儲器F1進行運動補償,這樣即提高了編碼效率,又不會因為帶寬的波動引起誤差的傳播和積累問題。
參照圖2,本發(fā)明在根據(jù)圖1編碼結(jié)構(gòu)原理構(gòu)造的P幀編碼實例中,設(shè)有兩個幀存儲器,其中幀存儲器F0用來存儲前一幀的重建基本層,用于后續(xù)幀的基本層編碼;幀存儲器F1用來存儲前一幀的重建中間層,它用于后續(xù)幀的中間層和增強層編碼。開關(guān)S1、S2和S3,用于控制中間層的編碼方式,三開關(guān)分為1和2兩個位置,位置1與中間層連接,位置2與基本層連接,當進行偶數(shù)幀的中間層編碼時,將三個開關(guān)S1、S2和S3都撥到位置2,當進行奇數(shù)幀的中間層編碼時三個開關(guān)S1、S2和S3都撥到位置1。該編碼器中的位平面編碼方式與現(xiàn)有精細粒度可伸縮視頻編碼基本方案BFGS中的編碼方式相同,都是采用基于位平面的變長編碼。當輸入的視頻數(shù)據(jù)被送到基本層、中間層和增強層三個編碼層中進行編碼時,基本層的編碼方式與H.263等標準的編碼方式相同,通過控制量化步長Q來限制基本層碼率,在增強層編碼中,首先對原始視頻數(shù)據(jù)Vi與中間層的高質(zhì)量運動補償數(shù)據(jù)HQCD的殘差進行離散余弦DCT變換,然后減去基本層和中間層已經(jīng)編碼的數(shù)據(jù),最后對這個殘差ED進行位平面編碼。對偶數(shù)幀的中間層進行編碼時,首先對原始視頻視數(shù)據(jù)Vi與基本層編碼數(shù)據(jù)BD的殘差進行離散余弦DCT變換,然后進行位平面編碼,編碼的前m個位平面形成偶數(shù)幀的中間層碼流;增強層的前m個位平面形成奇數(shù)幀的中間層碼流。
參照圖3,本發(fā)明在按照圖1編碼結(jié)構(gòu)原理構(gòu)造的P幀解碼實例中,也設(shè)有兩個幀存儲器,該幀存儲器F0和幀存儲器F1分別用來存儲前一幀的基本層和中間層。開關(guān)S用來選擇幀存儲器,以形成下一幀的增強層參考,即確定中間層的生成方式。該解碼器的解碼端,輸入基本層碼流、中間層碼流和增強層碼流,其中,基本層碼流按H.263標準進行解碼,產(chǎn)生基本層低質(zhì)量的解碼視頻。中間層碼流首先經(jīng)位平面解碼,然后與基本層的反量化系數(shù)求和,再進行離散余弦DCT反變換,最后將得到的數(shù)據(jù)與基本層視頻數(shù)據(jù)BD進行求和后,再進行限幅操作得到中間層的視頻。此中間層視頻也被存儲到幀存儲F1中作為下一幀增強層的運動補償參考。增強層碼流首先進行位平面解碼,然后與低層的數(shù)據(jù)LD求和,并對求和數(shù)據(jù)進行離散余弦DCT反變換,最后把DCT反變換后得到的數(shù)據(jù)與高質(zhì)量的運動補償數(shù)據(jù)HQCD進行求和后,再進行限幅操作得到增強層的視頻。
權(quán)利要求
1.一種增強型精細粒度可伸縮視頻編解碼結(jié)構(gòu),包括由基本層和增強層,其特征在于(1)在基本層和增強層之間增設(shè)中間層,構(gòu)成每幀為基本層、中間層和增強層三層結(jié)構(gòu),編碼后形成三層碼流;(2)中間層依不同的幀編碼設(shè)置,P幀編碼的偶數(shù)幀中間層先采用前一幀的基本層進行運動補償生成幀存儲器(F1),再通過幀存儲器(F1)進行運動補償編碼,形成偶數(shù)幀中間層碼流,P幀編碼的奇數(shù)幀中間層先采用前一幀的中間層進行運動補償生成幀存儲器(F0),再通過幀存儲器(F0)進行運動補償編碼,形成奇數(shù)幀中間層碼流,即通過交替地使用幀存儲器(F0)和幀存儲器(F1)進行中間層運動補償編碼,形成當前幀的中間層碼流;(3)增強層碼流是利用幀存儲器(F1)進行運動補償而生成。
2.根據(jù)權(quán)利要求1所述的視頻編碼結(jié)構(gòu),其特征在于P幀編碼中設(shè)有幀存儲器(F0)和幀存儲器(F1),幀存儲器(F0)用于存儲前一幀的重建基本層,以對后續(xù)幀的基本層編碼;幀存儲器(F1)用于存儲前一幀的重建中間層,以對后續(xù)幀的中間層和增強層進行編碼。
3.根據(jù)權(quán)利要求1所述的視頻編碼結(jié)構(gòu),其特征在于P幀編碼的中間層設(shè)有控制中間層編碼方式的三個開關(guān)(S1)、(S2)和(S3),三開關(guān)分為兩個位置(1)和(2),位置(1)與中間層連接,位置(2)與基本層連接,三個開關(guān)(S1)、(S2)和(S3)同時連接到位置(2)時,為偶數(shù)幀的中間層編碼,三個開關(guān)(S1)、(S2)和(S3)同時連接到位置(1)時,為奇數(shù)幀的中間層編碼。
4.根據(jù)權(quán)利要求1所述的視頻編解碼結(jié)構(gòu),其特征在于利用幀存儲器(F1)進行運動補償?shù)玫皆鰪妼哟a流,是通過對原始視頻數(shù)據(jù)(Vi)與中間層的運動補償數(shù)據(jù)(HQCD)的殘差進行離散余弦變換(DCT)變換后,減去基本層和中間層已經(jīng)編碼的數(shù)據(jù),再對該殘差(ED)進行位平面編碼而得到。
5.根據(jù)權(quán)利要求1所述的視頻編解碼結(jié)構(gòu),其特征在于利用幀存儲器(F1)進行運動補償?shù)玫街虚g層碼流,是通過對原始視頻(Vi)與基本層編碼數(shù)據(jù)(BD)的殘差進行離散余弦變換(DCT)后,進行位平面編碼,編碼的前m個位平面形成偶數(shù)幀的中間層碼流;增強層的前m個位平面形成奇數(shù)幀的中間層碼流。
6.根據(jù)權(quán)利要求1所述的視頻編碼結(jié)構(gòu),其特征在于中間層的視頻信號獲取,是將中間層碼流經(jīng)位平面解碼后,與基本層的反量化系數(shù)求和,再進行離散余弦(DCT)反變換,將得到的數(shù)據(jù)與基本層視頻數(shù)據(jù)(BD)進行求和后,再進行限幅操作而得到。
全文摘要
本發(fā)明涉及一種增強型精細粒度可伸縮視頻編碼結(jié)構(gòu)。該結(jié)構(gòu)由基本層、中間層和增強層三層碼流構(gòu)成,其中基本層的設(shè)置與現(xiàn)有二層碼流的結(jié)構(gòu)相同;中間層設(shè)置有兩種方式,即P幀編碼的偶數(shù)幀先采用前一幀的基本層進行運動補償生成幀存儲器F1,再通過幀存儲器F1進行運動補償編碼形成碼流,P幀編碼的奇數(shù)幀先采用前一幀的中間層進行運動補償生成幀存儲器F0,再通過幀存儲器F0進行運動補償編碼形成碼流。B幀編碼的中間層、基本層和增強層生成均用前后兩幀生成的幀存儲器F1進行運動補償;P幀與B幀的增強層都是利用幀存儲器F1進行運動補償而生成。本發(fā)明有效地解決了誤差的傳播和積累問題。提高了運動補償?shù)木群途幋a效率,可用于互聯(lián)網(wǎng)的傳輸。
文檔編號H04N7/26GK1484452SQ0313447
公開日2004年3月24日 申請日期2003年8月7日 優(yōu)先權(quán)日2003年8月7日
發(fā)明者郭寶龍, 丁貴廣 申請人:西安電子科技大學