專利名稱:基于位平面的不等長的量化/反量化方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種不等長的量化/反量化方法,特別是指一種克服目前量化技術(shù)需要乘法的缺陷,為視頻編碼技術(shù)提供低復(fù)雜度高效的量化技術(shù),能降低計(jì)算復(fù)雜度,且在用于FGS視頻編碼的基本層編碼時(shí),可以實(shí)現(xiàn)基本層到增強(qiáng)層最優(yōu)過渡的量化/反量化方法,屬于視音頻編解碼技術(shù)領(lǐng)域。
背景技術(shù):
高效的視頻編解碼技術(shù)是實(shí)現(xiàn)高質(zhì)量、低成本多媒體數(shù)據(jù)存儲(chǔ)與傳輸?shù)年P(guān)鍵。目前常用的編碼方法有預(yù)測編碼、正交變換編碼、向量量化編碼等等,這些方法都基于信號(hào)處理理論,通常也稱為第一代編碼技術(shù)。現(xiàn)在比較流行的圖像編碼國際標(biāo)準(zhǔn)都是基于這種編碼理論,其采用的是基于塊匹配的運(yùn)動(dòng)補(bǔ)償、離散余弦變換和量化相結(jié)合的編碼方法。典型的有國際標(biāo)準(zhǔn)化組織/國際電工技術(shù)委員會(huì)第一聯(lián)合技術(shù)組(ISO/IEC JTC1)推出的MPEG-1,MPEG-2和MPEG-4等國際標(biāo)準(zhǔn),以及國際電信聯(lián)盟(ITU-T)提出的H.26x系列推薦。這些視頻編碼標(biāo)準(zhǔn)已經(jīng)在工業(yè)界得到了廣泛應(yīng)用。
上述的視頻編碼標(biāo)準(zhǔn)都采用了混合視頻編碼(Hybrid Video Coding)策略,通常包括預(yù)測、變換、量化和信息熵編碼等四個(gè)主要模塊。預(yù)測模塊的主要功能時(shí)利用已經(jīng)編碼并重建的圖像對當(dāng)前要編碼的圖像進(jìn)行預(yù)測(幀間預(yù)測),或者利用圖像中已經(jīng)編碼并重建的圖像塊(或宏塊)對當(dāng)前要編碼的圖像塊(或宏塊)進(jìn)行預(yù)測(幀內(nèi)預(yù)測);變換模塊的主要功能是將輸入的圖像塊變換到另外一個(gè)空間,使輸入信號(hào)的能量盡可能地集中在低頻變換系數(shù)上,進(jìn)而降低圖像塊內(nèi)元素之間的相關(guān)性,有利于壓縮;量化模塊的主要功能是將變換的系數(shù)映射到一個(gè)有利于編碼的有限元素集上;信息熵編碼模塊的主要功能是根據(jù)統(tǒng)計(jì)規(guī)律,將量化后的變換系數(shù)用變長碼表示。
視頻解碼系統(tǒng)中包含有與視頻編碼系統(tǒng)中相似的模塊,它的任務(wù)主要是將輸入的碼流通過熵解碼、反量化、反變換等過程重建解碼圖像。除了上述模塊,視頻編/解碼系統(tǒng)中通常還包含一些輔助的編碼工具,這些工具也會(huì)對整個(gè)系統(tǒng)的編碼性能(壓縮比)做出貢獻(xiàn)。
在上述視頻編/解碼框架中,量化和反量化技術(shù)作為一種十分有效的有損壓縮工具,對于整個(gè)視頻編/解碼系統(tǒng)至關(guān)重要。所述的量化主要有兩個(gè)作用一是使系數(shù)整數(shù)化,并縮小范圍;二是適當(dāng)調(diào)節(jié)量化步長,可以對編碼的碼率和重構(gòu)圖像的主客觀效果進(jìn)行調(diào)節(jié)。目前常用的量化方法可以分為標(biāo)量量化和矢量量化兩大類,而在編碼標(biāo)準(zhǔn)中通常采用的是標(biāo)量量化及其改進(jìn)方法。
國際標(biāo)準(zhǔn)化組織(ISO)和國際電信同盟ITU建立的聯(lián)合視頻工作組(Joint Video Team,簡稱JVT)制定的AVC(Advanced Video Coding)視頻編碼標(biāo)準(zhǔn)是新一代的視頻編碼標(biāo)準(zhǔn),它采用了一系列新型的編碼技術(shù),比現(xiàn)存的任何一種編碼標(biāo)準(zhǔn)的壓縮效率都要高的多。AVC標(biāo)準(zhǔn)在ISO中的正式名稱是MPEG-4標(biāo)準(zhǔn)的第十部分,在ITU中的正式名稱是H.264標(biāo)準(zhǔn)。在AVC標(biāo)準(zhǔn)中,碼率/圖像質(zhì)量的控制是通過量化參數(shù)(Qp)來實(shí)現(xiàn)的,典型的量化公式如下式所示W(wǎng)=(C*Q[Qp%6])>>(Qp/6)其中,Q是具有多個(gè)(在上述的公式中為6個(gè))值的量化表,Q[Qp%6]表示用Qp%6的值作為序號(hào)到量化表Q中去查找應(yīng)使用的Q值;C是量化前的系數(shù),W是量化后的系數(shù)。
這種量化方式可以有效地調(diào)節(jié)碼率和重構(gòu)圖像的質(zhì)量。相對于傳統(tǒng)的方法,該方法可以通過整數(shù)運(yùn)算實(shí)現(xiàn),相對簡單,但仍需要做乘法運(yùn)算,比較費(fèi)時(shí)。
此外,面向互聯(lián)網(wǎng)的流媒體業(yè)務(wù)也對視頻編碼的應(yīng)用提出了更高的要求,要求所生成的視頻流能適應(yīng)各種動(dòng)態(tài)變化的網(wǎng)絡(luò)和不同的用戶終端設(shè)備,即在傳輸帶寬波動(dòng)時(shí)還能有效利用帶寬傳輸視頻。當(dāng)帶寬由低到高變化時(shí),傳統(tǒng)的視頻編碼標(biāo)準(zhǔn)(例如MPEG-1、MPEG-2)無法根據(jù)帶寬的變化動(dòng)態(tài)自適應(yīng)調(diào)整,只能達(dá)到階梯曲線效果的調(diào)整,對變化帶寬的利用效率很低。解決該問題的一個(gè)有效途徑就是采用可伸縮編碼技術(shù)。一個(gè)典型代表是MPEG-4標(biāo)準(zhǔn)中采用的精細(xì)粒度可伸縮性(Fine Granularity Scalable,簡稱FGS)視頻編碼技術(shù),它采用了基本層加增強(qiáng)層的編碼方法。
FGS視頻編碼技術(shù)的基本層編碼和普通的非可伸縮性視頻編碼方法相同,由預(yù)測、變換、量化和熵編碼器組成;其中量化通常采用標(biāo)量量化。而在增強(qiáng)層編碼時(shí),從原始的變換系數(shù)中減去基本層量化后重建的變換系數(shù)值,獲得變換系數(shù)殘差;然后對每一個(gè)8×8的塊,按照從上到下、從左到右的順序,利用位平面進(jìn)行編碼。使用位平面編碼的好處就是使得每一個(gè)系數(shù)的重要部分(較高位)優(yōu)先編碼;這樣,在碼流截?cái)鄷r(shí)可以保證解碼器仍然可以獲得有關(guān)視頻圖像的重要信息,從而提供了精細(xì)的可擴(kuò)展性。盡管FGS視頻編碼具有優(yōu)良的可伸縮性,能夠很好地適應(yīng)網(wǎng)絡(luò)帶寬的變化。但是,它存在著一個(gè)嚴(yán)重的缺點(diǎn)其編碼效率與傳統(tǒng)的非可擴(kuò)展性編碼技術(shù)相比過低;特別是在中低碼率時(shí),也即碼率剛剛從基本層過渡到增強(qiáng)層時(shí),F(xiàn)GS視頻編碼的編碼效率非常低。造成該問題的主要原因是FGS視頻編碼技術(shù)在基本層和增強(qiáng)層編碼中采用了不同的量化技術(shù),因而不能平穩(wěn)地進(jìn)行過渡。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種基于位平面的不等長的量化/反量化方法,克服目前的量化技術(shù)需要乘法的缺陷,為視頻編碼技術(shù)提供低復(fù)雜度高效的量化技術(shù),以降低計(jì)算復(fù)雜度。
本發(fā)明的另一目的在于提供一種基于位平面的不等長的量化/反量化方法,其用于FGS視頻編碼的基本層編碼時(shí),可以實(shí)現(xiàn)基本層到增強(qiáng)層的最優(yōu)過渡。
本發(fā)明的目的是這樣實(shí)現(xiàn)的一種基于位平面的不等長的量化/反量化方法,其輸入為變換系數(shù)矩陣和量化參數(shù),根據(jù)輸入的量化參數(shù),對變換系數(shù)矩陣中不同位置的系數(shù)采用不同的量化步長,也即保留不同的位平面層數(shù)。所謂的為平面是指量化前后的系數(shù)在包括計(jì)算機(jī)在內(nèi)的數(shù)字設(shè)備中是用二進(jìn)制表示的,所有系數(shù)的相同的位(按從低位到高位的順序),就組成了相應(yīng)的位平面。如果量化步長剛好是2的冪次的話,則量化的過程可以看作是去掉較低位,保留較高位的過程,即去掉較低的位平面,保留較高的位平面。
本發(fā)明根據(jù)微調(diào)參數(shù)將量化前的系數(shù)動(dòng)態(tài)劃分出兩個(gè)集合,兩個(gè)集合保留不同的(且相差為1的)位平面層數(shù)。
具體而言,本發(fā)明的量化過程是這樣實(shí)現(xiàn)的首先,按照重要性由高到低的順序把量化前的系數(shù)編號(hào)為1,2,3,......,n;(這里,包括后面所提到的重要性是指系數(shù)的重要程度,可以自行定義;比如按照人眼對該頻率系數(shù)的敏感程度的高低來確定);然后,將上述的系數(shù)劃分為兩組,劃分的原則是1、一部分為重要系數(shù),記為C(L),另一部分為不重要系數(shù),記為C(H);2、編號(hào)大于n-Qf的系數(shù)被分到C(H)組,編號(hào)小于n-Qf的系數(shù)被分到C(L)組;設(shè)W(L)和W(H)分別為C(L)和C(H)量化后的系數(shù),則具體的量化的公式為W(L)=(C(L)+Qa1)>>QbitW(H)=(C(H)+Qa2)>>(Qbit+1)其中,Qa1和Qa2主要是為了起到四舍五入的作用;Qbit和Qf分別是用來調(diào)節(jié)量化器的粗調(diào)作用參數(shù)和微調(diào)作用參數(shù);n是量化前系數(shù)的最大編號(hào)。
本發(fā)明反量化的過程是首先,按照重要性由高到低的順序把反量化前的系數(shù)編號(hào)為1,2,3,......,n;
然后,將上述的系數(shù)劃分為兩組,劃分的原則是1、一部分為重要系數(shù),記為W(L),另一部分為不重要系數(shù),記為W(H);2、編號(hào)大于n-Qf的系數(shù)被分到W(H)組,編號(hào)小于n-Qf的系數(shù)被分到W(L)組;設(shè)C(L)和C(H)分別為W(L)和W(H)反量化后的系數(shù),則反量化的公式為C(L)=W(L)<<QbitC(H)=W(H)<<(Qbit+1)從上面的量化/反量化方案可以看出本發(fā)明的量化/反量化方法對于重要系數(shù),量化/反量化的步長短,對于不重要系數(shù),則使用長的量化/反量化步長;同時(shí),量化/反量化的步長都是2的冪次,并且只分成兩個(gè)等級(jí)。由于具有上述的特點(diǎn),本發(fā)明在量化/反量化過程中,不使用乘法,而只使用移位運(yùn)算就可以實(shí)現(xiàn),有利于硬件設(shè)計(jì),并且實(shí)現(xiàn)簡單;與基于位平面的熵編碼器相配合,在用于傳統(tǒng)的視頻編碼系統(tǒng)時(shí)可以獲得很高的壓縮比;本發(fā)明結(jié)合了標(biāo)量量化和位平面量化的優(yōu)點(diǎn),在用于FGS視頻編碼的基本層編碼時(shí),可以改進(jìn)傳統(tǒng)的FGS視頻編碼的編碼效率。
圖1為量化和反量化中Qbit和Qf的調(diào)節(jié)作用的示意圖。
具體實(shí)施例方式
,以下結(jié)合附圖和具體的實(shí)施例對本發(fā)明作進(jìn)一步的詳細(xì)說明在AVC(Advanced Video Coding高級(jí)視頻編碼)標(biāo)準(zhǔn)中,碼率/圖像質(zhì)量的控制是用量化參數(shù)Qp來實(shí)現(xiàn)的,設(shè)C為量化前的系數(shù),W為量化后的系數(shù),其典型的量化公式,如下式所示W(wǎng)=(C*Q[Qp%6])>>(Qp/6)其中,Q是具有多個(gè)(在上述的公式中為6個(gè))值的量化表,Q[Qp%6]表示用Qp%6的值作為序號(hào)到量化表Q中去查找應(yīng)使用的Q值;C是量化前的系數(shù),W是量化后的系數(shù)。
具體的量化實(shí)施過程如下首先,由于JVT中采用了4×4的變換,所以所述的系數(shù)共有16個(gè);可以由量化參數(shù)Qp算出粗調(diào)參數(shù)Qbit和微調(diào)參數(shù)Qf,比如Qbit=Qp/6,Qf=(Qp%6)*3。
然后,對量化前的系數(shù)按重要性進(jìn)行編號(hào),比如按zigzag(Z形掃描);掃描的順序編號(hào)。
同樣,按照Qf把量化前的系數(shù)劃分為兩組重要系數(shù)C(L)和不重要系數(shù)C(H);本實(shí)施例中,編號(hào)大于16-Qf的系數(shù)被分到C(H)組,編號(hào)小于16-Qf的系數(shù)被分到C(L)組。
設(shè)W(L)和W(H)分別為C(L)和C(H)量化后的系數(shù),則量化的公式為W(L)=(C(L)+Qa1)>>Qp/6W(H)=(C(H)+Qa2)>>(Qp/6+1)按照J(rèn)VT的量化原則,對于幀內(nèi)編碼的塊Qa1=(1<<(Qp/6))/3Qa2=(1<<(Qp/6+1))/3對于幀間編碼的塊Qa1=(1<<(Qp/6))/6Qa2=(1<<(Qp/6+1))/6;Qa1和Qa2主要用來起到四舍五入的作用,但是由于視頻編碼中較小的數(shù)可以用更少的位表示,所以量化的時(shí)候傾向于向較小的數(shù)量化。
具體的反量化過程如下設(shè)W為反量化前的系數(shù),C為反量化后的系數(shù),在JVT標(biāo)準(zhǔn)中,典型的反量化公式如下式所示C=(W*DQ[Qp%6])<<(Qp/6)本發(fā)明的反量化技術(shù)的實(shí)施過程如下
首先,由于JVT中采用了4×4的變換,所以系數(shù)共有16個(gè);由Qp算出Qbit和Qf,比如Qbit=Qp/6,Qf=(Qp%6)*3;然后,對反量化前的系數(shù)按重要性進(jìn)行編號(hào),比如按zigzag掃描的順序編號(hào);同樣,按照Qf將把反量化前的系數(shù)劃分為兩組,重要系數(shù)C(L)和不重要系數(shù)C(H);編號(hào)大于16-Qf的系數(shù)被分到C(H)組,編號(hào)小于16-Qf的系數(shù)被分到C(L)組;設(shè)W(L)和W(H)分別為C(L)和C(H)量化后的系數(shù);則量化的公式為C(L)=W(L)<<Qp/6C(H)=W(H)<<(Qp/6+1)參見圖1,對于量化來說,陰影部分是被量化掉的部分。從圖1中可以看出Qbit改變1,則所有系數(shù)被量化掉的位數(shù)都改變1;Qf改變1,則只有一個(gè)系數(shù)被量化掉的位數(shù)發(fā)生改變,且改變?yōu)?。
對于反量化來說,陰影部分是應(yīng)該恢復(fù)出的位。陰影部分可以全部恢復(fù)為0,或按一定規(guī)則恢復(fù)。同樣可以看出Qbit起到粗調(diào)的作用,而Qf起到微調(diào)的作用。
簡言之,本發(fā)明基于不等步長的量化/反量化方法可以降低量化/反量化的運(yùn)算復(fù)雜度,同時(shí)還可以保證很高的編碼效率。
最后應(yīng)說明的是以上實(shí)施例僅用以說明本發(fā)明而并非限制本發(fā)明所描述的技術(shù)方案;因此,盡管本說明書參照上述的各個(gè)實(shí)施例對本發(fā)明已進(jìn)行了詳細(xì)的說明,但是,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,仍然可以對本發(fā)明進(jìn)行修改或者等同替換;而一切不脫離本發(fā)明的精神和范圍的技術(shù)方案及其改進(jìn),其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種基于位平面的不等長的量化方法,其特征在于該方法進(jìn)行量化的步驟是步驟100依據(jù)預(yù)先定義的重要性,對量化前的系數(shù)按照其重要性,依照由高到低的順序依次從小到大編號(hào);步驟110根據(jù)微調(diào)參數(shù),將量化前的系數(shù)劃分為重要和不重要兩組系數(shù);步驟120根據(jù)該兩組量化前的系數(shù),以及粗調(diào)參數(shù),分別計(jì)算得到各自對應(yīng)的量化后的系數(shù)。
2.根據(jù)權(quán)利要求1所述的基于位平面的不等長的量化方法,其特征在于步驟120中的計(jì)算所對應(yīng)的計(jì)算公式是W(L)=(C(L)+Qa1)>>QbitW(H)=(C(H)+Qa2)>>(Qbit+1)其中,C(L)、C(H)分別為量化前的重要系數(shù)集合和不重要系數(shù)集合;W(L)、W(H)分別為C(L)、C(H)量化后的系數(shù)集合;Qa1和Qa2是為了起到四舍五入的作用;Qbit為粗調(diào)作用的參數(shù)。
3.根據(jù)權(quán)利要求1所述的基于位平面的不等長的量化方法,其特征在于所述的重要系數(shù)和不重要系數(shù)依照如下的原則進(jìn)行劃分如果量化前的系數(shù)編號(hào)大于n-Qf,則其對應(yīng)的量化前的系數(shù)為不重要系數(shù);否則是重要系數(shù);其中,n是量化前的系數(shù)的最大編號(hào);Qf是微調(diào)作用系數(shù),并且0≤Qf<n。
4.一種基于位平面的不等長的反量化方法,其特征在于該方法進(jìn)行反量化的步驟是步驟200依據(jù)預(yù)先定義的重要性,對反量化系數(shù)按照其重要性,依照由高到低的順序依次從小到大編號(hào);步驟210根據(jù)微調(diào)作用參數(shù),將反量化前的系數(shù)劃分為重要和不重要兩組系數(shù);步驟220根據(jù)該兩組反量化前的系數(shù),以及粗調(diào)參數(shù),分別計(jì)算得到各自對應(yīng)的反量化后的系數(shù)。
5.根據(jù)權(quán)利要求4所述的基于位平面的不等長的反量化方法,其特征在于步驟220中的計(jì)算所對應(yīng)的計(jì)算公式是C(L)=W(L)<<QbitC(H)=W(H)<<(Qbit+1)其中,W(L)、W(H)分別為反量化前的重要系數(shù)集合和不重要系數(shù)集合;C(L)、C(H)分別為W(L)、W(H)反量化后的系數(shù)集合;Qbit為粗調(diào)作用的參數(shù)。
6.根據(jù)權(quán)利要求4所述的基于位平面的不等長的反量化方法,其特征在于所述的重要系數(shù)和不重要系數(shù)依照如下的原則進(jìn)行劃分如果反量化前的系數(shù)編號(hào)大于n-Qf,則其對應(yīng)的反量化前的系數(shù)為不重要系數(shù);否則是重要系數(shù);其中,n是反量化前的系數(shù)的最大編號(hào);Qf是微調(diào)作用系數(shù),并且0≤Qf<n。
全文摘要
本發(fā)明公開了一種基于位平面的不等長的量化/反量化方法,首先依據(jù)預(yù)先定義,對量化/反量化前的系數(shù)按照其重要性,依照由高到低的順序依次從小到大編號(hào);再根據(jù)微調(diào)參數(shù),將量化/反量化前的系數(shù)劃分為重要和不重要兩組系數(shù);根據(jù)該兩組量化/反量化前的系數(shù)以及粗調(diào)參數(shù),分別計(jì)算得到各自對應(yīng)的量化/反量化后的系數(shù)。本發(fā)明的量化/反量化方法對于重要系數(shù),量化/反量化的步長短,對于不重要系數(shù),則使用長的量化/反量化步長;同時(shí),量化/反量化的步長都是2的冪次,并在給定微調(diào)參數(shù)和粗調(diào)參數(shù)后,量化/反量化的步長只分成兩個(gè)等級(jí)。本發(fā)明在量化/反量化過程中,不使用乘法,而只使用移位運(yùn)算就可以實(shí)現(xiàn),有利于硬件設(shè)計(jì),并且實(shí)現(xiàn)簡單。
文檔編號(hào)H04N11/00GK1568010SQ0314803
公開日2005年1月19日 申請日期2003年6月27日 優(yōu)先權(quán)日2003年6月27日
發(fā)明者高文, 范曉鵬, 呂巖 申請人:中國科學(xué)院計(jì)算技術(shù)研究所