專利名稱:信息熵保持編碼方法與裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電數(shù)字?jǐn)?shù)據(jù)處理技術(shù)領(lǐng)域,特別是涉及一種信息熵保持編碼方法與裝置。
背景技術(shù):
對變量X1、X2進(jìn)行二維聯(lián)合信息熵保持變長編碼往往是通過查找二維碼表實(shí)現(xiàn)的。當(dāng)變量X1、X2的取值范圍很大時(shí),如果采用二維信息組合{X1、X2}與碼字一一對應(yīng)就會導(dǎo)致二維碼表十分龐大,不利于存儲和查找。通常的方法是,對于出現(xiàn)概率較大的信息組合{X1、X2}用查表實(shí)現(xiàn)編碼,而對于出現(xiàn)概率小的{X1、X2}組合,先查表得到一個(gè)控制碼字。這個(gè)控制碼字僅僅用來標(biāo)記對該事件的編碼不能通過查表直接實(shí)現(xiàn),而X1、X2的信息將由緊鄰該控制碼字后面的其他符號攜帶。
對于不能通過查表直接實(shí)現(xiàn)編碼的{X1、X2}組合,普遍被采用的編碼方法是在控制碼字后面,依次對X1、X2單獨(dú)編碼。這種編碼裝置如附圖1所示。信號X1、X2輸入查表裝置,輸出查表所得的碼字。當(dāng)輸出碼字是控制碼字時(shí),控制信號使開關(guān)向下打,否則,控制信號使開關(guān)向上打。當(dāng)開關(guān)向下打時(shí),說明X1、X2不能通過查表直接實(shí)現(xiàn)編碼。這時(shí),就要通過時(shí)分復(fù)用裝置先后傳輸控制碼字、X1、X2三個(gè)信號。這種方法的不足之處在于沒有利用X1、X2之間的相關(guān)性,同時(shí)控制碼字僅僅作為標(biāo)記,沒有攜帶一些關(guān)于X1或X2的信息。這就導(dǎo)致當(dāng)事件不能通過查表直接實(shí)現(xiàn)編碼時(shí),需要用3部分符號——控制碼字、X1、X2——來完成對X1、X2的編碼,壓縮效率不高。
發(fā)明內(nèi)容
本發(fā)明的目的是提供信息壓縮效率更高的一種信息熵保持編碼方法與裝置。對變量X1、X2進(jìn)行二維聯(lián)合變長編碼過程中出現(xiàn)的不能通過查表直接實(shí)現(xiàn)編碼的小概率信號{X1=xn,X2=y(tǒng)m}的編碼方法和裝置提出了改進(jìn)。
為了達(dá)到上述目的,本發(fā)明采用的技術(shù)方案如下1.一種信息熵保持編碼方法,包括將輸入信號{X1=xn,X2=y(tǒng)m}查二維變長編碼表,若碼表中存在與輸入信號一一對應(yīng)的碼字,則用該碼字編碼輸入信號,若不存在與輸入信號一一對應(yīng)的碼字,則用一個(gè)統(tǒng)一的控制碼字標(biāo)識輸入信號;若輸入信號{X1=xn,X2=y(tǒng)m}被控制碼字標(biāo)識,則編碼步驟如下1)將X1經(jīng)函數(shù)f(x)映射所得的信息和X2經(jīng)函數(shù)g(x)映射所得的信息與控制碼字結(jié)合為第一合成信號;2)將X1經(jīng)函數(shù)u(x)映射所得的信息和X2經(jīng)函數(shù)v(x)映射所得的信息結(jié)合為第二合成信號;3)將第一合成信號,第二合成信號串行輸出。
將X1經(jīng)函數(shù)f(x)映射所得的信息和X2經(jīng)函數(shù)g(x)映射所得的信息與控制碼字結(jié)合為第一合成信號,方法如下第一合成信號=控制碼字+f(X1)+g(X2),其中,f(x)是自變量為X1的函數(shù),g(x)是自變量為X2的函數(shù)。
所說的將X1經(jīng)函數(shù)u(x)映射所得的信息和X2經(jīng)函數(shù)v(x)映射所得的信息結(jié)合為第二合成信號,方法如下第二合成信號=v(X2)-u(X1),其中,u(x)是自變量為X1的函數(shù),v(x)是自變量為X2的函數(shù)。
所說的將第一合成信號,第二合成信號串行輸出,即依次輸出第一合成信號、第二合成信號,形成編碼碼流。
2.一種信息熵保持編碼方法的裝置,包括將輸入信號{X1=xn,X2=y(tǒng)m}進(jìn)行查二維碼表的查表裝置;以及1)將X1經(jīng)函數(shù)f(x)映射所得的信息和X2經(jīng)函數(shù)g(x)映射所得的信息與控制碼字結(jié)合為第一合成信號的信息合成裝置;2)將X1經(jīng)函數(shù)u(x)映射所得的信息和X2經(jīng)函數(shù)v(x)映射所得的信息結(jié)合為第二合成信號的剩余信息編碼裝置;3)依次輸出第一合成信號、第二合成信號的時(shí)分復(fù)用裝置。
所說的信息合成裝置,其中包括1)用于實(shí)現(xiàn)函數(shù)f(x)功能的第一映射裝置(601);2)用于實(shí)現(xiàn)函數(shù)g(x)功能的第二映射裝置(602);3)用于構(gòu)造第一合成信號的加法裝置(605);信號X1輸入第一映射裝置(601);第一映射裝置(601)與加法裝置(605)相連,作為加法裝置(605)的一個(gè)輸入;信號X2輸入第二映射裝置(602);第二映射裝置(602)與加法裝置(605)相連,作為加法裝置(605)的一個(gè)輸入;控制碼字與加法裝置(605)相連,作為加法裝置(605)的一個(gè)輸入;加法裝置(605)輸出第一合成信號。
所說的剩余信息編碼裝置,包括
1)用于實(shí)現(xiàn)函數(shù)u(x)功能的第三映射裝置(603);2)用于實(shí)現(xiàn)函數(shù)v(x)功能的第四映射裝置(604);3)減法裝置(606);信號X1輸入第三映射裝置(603);第三映射裝置(603)與減法裝置(606)相連,作為減法裝置(606)的一個(gè)輸入;信號X2輸入第四映射裝置(604);第四映射裝置(604)與減法裝置(606)相連,作為減法裝置(606)的一個(gè)輸入;減法裝置(606)輸出第二合成信號。
所說的時(shí)分復(fù)用裝置(607),將第一合成信號、第二合成信號作為時(shí)分復(fù)用裝置(607)的兩個(gè)輸入,時(shí)分復(fù)用裝置(607)將這兩個(gè)信號分時(shí)串行輸出。
本發(fā)明與背景技術(shù)相比,具有的有益的效果本方法利用了X1、X2之間的相關(guān)性,同時(shí)對控制碼字做了修正,使之?dāng)y帶X1、X2的部分信息。結(jié)果顯示本發(fā)明將X1、X2的信息分成兩部分進(jìn)行編碼,其中一部分附加在控制碼字上;這樣所需的比特?cái)?shù)小于傳統(tǒng)方法單獨(dú)對3部分符號——控制碼字、X1、X2——編碼所需的比特?cái)?shù),從而克服了傳統(tǒng)方法的不足。本發(fā)明主要應(yīng)用在對數(shù)字信號進(jìn)行二維聯(lián)合信息熵保持變長編碼的編碼器中,還可以推廣至多維聯(lián)合信息熵保持變長編碼。
圖1是傳統(tǒng)方法的編碼裝置框圖;圖2是本發(fā)明裝置的原理框圖;圖3是本發(fā)明裝置的部件結(jié)構(gòu)框圖。
具體實(shí)施例方式
圖像數(shù)據(jù)和視頻數(shù)據(jù)在壓縮編碼過程中,經(jīng)過變換量化掃描后的一維系數(shù)是n(n≥0)個(gè)0和一個(gè)非0系數(shù)交替出現(xiàn)組成的。一個(gè)非0系數(shù)的值為level,該非0系數(shù)前值為0的系數(shù)個(gè)數(shù)叫做游程run。對變換量化掃描后的系數(shù)的編碼往往是通過{run,level}二維聯(lián)合編碼實(shí)現(xiàn)的。本發(fā)明適用于對信號{run=xn,level=y(tǒng)m}進(jìn)行二維聯(lián)合信息熵保持變長編碼,下面是
具體實(shí)施例方式實(shí)施例11.一種信息熵保持編碼過程,包括以下步驟1)將輸入信號{run=xn,level=y(tǒng)m}輸入查表裝置,查二維變長編碼表,若碼表中存在與輸入信號一一對應(yīng)的碼字,則用該碼字編碼輸入信號,若不存在與輸入信號一一對應(yīng)的碼字,則用一個(gè)統(tǒng)一的控制碼字標(biāo)識輸入信號;2)若輸入信號{run=xn,level=y(tǒng)m}被控制碼字標(biāo)識,則編碼步驟如下將run輸入第一映射裝置601經(jīng)函數(shù)f(x)映射所得的信息和將level輸入第二映射裝置602經(jīng)函數(shù)g(x)映射所得的信息與控制碼字經(jīng)加法裝置605結(jié)合為第一合成信號;將run輸入第三映射裝置603經(jīng)函數(shù)u(x)映射所得的信息和level輸入第四映射裝置604經(jīng)函數(shù)v(x)映射所得的信息經(jīng)減法裝置606結(jié)合為第二合成信號;將第一合成信號,第二合成信號經(jīng)時(shí)分復(fù)用裝置607串行輸出。
2.第1點(diǎn)所說的將run輸入第一映射裝置601經(jīng)函數(shù)f(x)映射所得的信息和將level輸入第二映射裝置602經(jīng)函數(shù)g(x)映射所得的信息與控制碼字經(jīng)加法裝置605結(jié)合為第一合成信號,方法如下第一合成信號=控制碼字+f(xn)+g(ym),其中f(x)=2*x, 控制碼字為59。
3.第1點(diǎn)所說的將run輸入第三映射裝置603經(jīng)函數(shù)u(x)映射所得的信息和level輸入第四映射裝置604經(jīng)函數(shù)v(x)映射所得的信息經(jīng)減法裝置606結(jié)合為第二合成信號,方法如下第二合成信號=v(ym)-u(xn),其中函數(shù)u(xn)實(shí)現(xiàn)的功能是對于run=xn,找到|yl|,使得{run=xn,level=|yl|}不能通過查表實(shí)現(xiàn)編碼而{run=xn,level=|yl|-1}能通過查表實(shí)現(xiàn)編碼,則u(xn)=|yl|;其中函數(shù)v(x)=|ym|。
4.第1點(diǎn)所說的將第一合成信號,第二合成信號經(jīng)時(shí)分復(fù)用裝置607串行輸出,即經(jīng)時(shí)分復(fù)用裝置607依次輸出第一合成信號、第二合成信號,形成編碼碼流。
實(shí)施例21.一種信息熵保持編碼方法,包括以下步驟1)將輸入信號{run=xn,level=y(tǒng)m}輸入查表裝置,查二維變長編碼表,若碼表中存在與輸入信號一一對應(yīng)的碼字,則用該碼字編碼輸入信號,若不存在與輸入信號一一對應(yīng)的碼字,則用一個(gè)統(tǒng)一的控制碼字標(biāo)識輸入信號;2)若輸入信號{run=xn,level=y(tǒng)m}被控制碼字標(biāo)識,則編碼步驟如下將run輸入第一映射裝置601經(jīng)函數(shù)f(x)映射所得的信息和將level輸入第二映射裝置602經(jīng)函數(shù)g(x)映射所得的信息與控制碼字經(jīng)加法裝置605結(jié)合為第一合成信號;
將run輸入第三映射裝置603經(jīng)函數(shù)u(x)映射所得的信息和level輸入第四映射裝置604經(jīng)函數(shù)v(x)映射所得的信息經(jīng)減法裝置606結(jié)合為第二合成信號;將第一合成信號,第二合成信號經(jīng)時(shí)分復(fù)用裝置607串行輸出。
2.第1點(diǎn)所說的將run輸入第一映射裝置601經(jīng)函數(shù)f(x)映射所得的信息和將level輸入第二映射裝置602經(jīng)函數(shù)g(x)映射所得的信息與控制碼字經(jīng)加法裝置605結(jié)合為第一合成信號,方法如下第一合成信號=控制碼字+f(xn)+g(ym),其中 控制碼字為59。
3.第1點(diǎn)所說的將run輸入第三映射裝置603經(jīng)函數(shù)u(x)映射所得的信息和level輸入第四映射裝置604經(jīng)函數(shù)v(x)映射所得的信息經(jīng)減法裝置606結(jié)合為第二合成信號,方法如下第二合成信號=v(ym)-u(xn),其中 4.第1點(diǎn)所說的將第一合成信號,第二合成信號經(jīng)時(shí)分復(fù)用裝置607串行輸出,即經(jīng)時(shí)分復(fù)用裝置607依次輸出第一合成信號、第二合成信號,形成編碼碼流。
上述的用于提高信息熵保持變長編碼壓縮效率的裝置,可以用處理器系統(tǒng),微控制器,可編程邏輯器件或硬件電路實(shí)現(xiàn)部分或全部的操作。上述的一些操作可以用軟件實(shí)現(xiàn),同時(shí)另一些操作可以用硬件實(shí)現(xiàn)。
為了方便起見,這些操作被描述為不同的互連的功能單元或不同的軟件模塊。但是,這不是必要的。在一些應(yīng)用中,這些功能單元或模塊可以被集成到單一的邏輯器件、程序或操作中,而沒有明顯的界限。在任何情況中,功能單元和軟件模塊或描述的特征可以獨(dú)立實(shí)現(xiàn),或與其他操作一起用硬件或軟件實(shí)現(xiàn)。
權(quán)利要求
1.一種信息熵保持編碼方法,包括將輸入信號{X1=xn,X2=y(tǒng)m}查二維變長編碼表,若碼表中存在與輸入信號一一對應(yīng)的碼字,則用該碼字編碼輸入信號;若不存在與輸入信號一一對應(yīng)的碼字,則用一個(gè)統(tǒng)一的控制碼字標(biāo)識輸入信號;其特征在于若輸入信號{X1=xn,X2=y(tǒng)m}被控制碼字標(biāo)識,則編碼步驟如下1)將X1經(jīng)函數(shù)f(x)映射所得的信息和X2經(jīng)函數(shù)g(x)映射所得的信息與控制碼字結(jié)合為第一合成信號;2)將X1經(jīng)函數(shù)u(x)映射所得的信息和X2經(jīng)函數(shù)v(x)映射所得的信息結(jié)合為第二合成信號;3)將第一合成信號,第二合成信號串行輸出。
2.根據(jù)權(quán)利要求1所述的一種信息熵保持編碼方法,其特征在于所說的將X1經(jīng)函數(shù)f(x)映射所得的信息和X2經(jīng)函數(shù)g(x)映射所得的信息與控制碼字結(jié)合為第一合成信號,方法如下第一合成信號=控制碼字+f(X1)+g(X2),其中,f(x)是自變量為X1的函數(shù),g(x)是自變量為X2的函數(shù)。
3.根據(jù)權(quán)利要求1所述的一種信息熵保持編碼方法,其特征在于所說的將X1經(jīng)函數(shù)u(x)映射所得的信息和X2經(jīng)函數(shù)v(x)映射所得的信息結(jié)合為第二合成信號,方法如下第二合成信號=v(X2)-u(X1),其中,u(x)是自變量為X1的函數(shù),v(x)是自變量為X2的函數(shù)。
4.根據(jù)權(quán)利要求1所述的一種信息熵保持編碼方法,其特征在于所說的將第一合成信號、第二合成信號串行輸出,形成編碼碼流。
5.根據(jù)權(quán)利要求1所述的一種信息熵保持編碼方法的裝置,包括將輸入信號{X1=xn,X2=y(tǒng)m}進(jìn)行查二維碼表的查表裝置;其特征在于1)將X1經(jīng)函數(shù)f(x)映射所得的信息和X2經(jīng)函數(shù)g(x)映射所得的信息與控制碼字結(jié)合為第一合成信號的信息合成裝置;2)將X1經(jīng)函數(shù)u(x)映射所得的信息和X2經(jīng)函數(shù)v(x)映射所得的信息結(jié)合為第二合成信號的剩余信息編碼裝置;3)依次輸出第一合成信號、第二合成信號的時(shí)分復(fù)用裝置。
6.根據(jù)權(quán)利要求5所述的一種信息熵保持編碼方法的裝置,其特征在于所說的信息合成裝置,包括1)用于實(shí)現(xiàn)函數(shù)f(x)功能的第一映射裝置(601);2)用于實(shí)現(xiàn)函數(shù)g(x)功能的第二映射裝置(602);3)用于構(gòu)造第一合成信號的加法裝置(605);信號X1輸入第一映射裝置(601);第一映射裝置(601)與加法裝置(605)相連,作為加法裝置(605)的一個(gè)輸入;信號X2輸入第二映射裝置(602);第二映射裝置(602)與加法裝置(605)相連,作為加法裝置(605)的一個(gè)輸入;控制碼字與加法裝置(605)相連,作為加法裝置(605)的一個(gè)輸入;加法裝置(605)輸出第一合成信號。
7.根據(jù)權(quán)利要求5所述的一種信息熵保持編碼方法的裝置,其特征在于所說的剩余信息編碼裝置,包括1)用于實(shí)現(xiàn)函數(shù)u(x)功能的第三映射裝置(603);2)用于實(shí)現(xiàn)函數(shù)v(x)功能的第四映射裝置(604);3)減法裝置(606);信號X1輸入第三映射裝置(603);第三映射裝置(603)與減法裝置(606)相連,作為減法裝置(606)的一個(gè)輸入;信號X2輸入第四映射裝置(604);第四映射裝置(604)與減法裝置(606)相連,作為減法裝置(606)的一個(gè)輸入;減法裝置(606)輸出第二合成信號。
8.根據(jù)權(quán)利要求5所述的一種信息熵保持編碼方法的裝置,其特征在于所說的時(shí)分復(fù)用裝置(607),將第一合成信號、第二合成信號作為時(shí)分復(fù)用裝置(607)的兩個(gè)輸入,時(shí)分復(fù)用裝置(607)將這兩個(gè)信號分時(shí)串行輸出。
全文摘要
本發(fā)明公開了一種信息熵保持編碼方法與裝置。對變量X
文檔編號H04N7/26GK1535021SQ20031010948
公開日2004年10月6日 申請日期2003年12月14日 優(yōu)先權(quán)日2003年12月14日
發(fā)明者虞露, 董潔, 樓劍, 虞 露 申請人:浙江大學(xué)