專利名稱:依賴位平面的信號壓縮的制作方法
技術領域:
本發明一般涉及信號壓縮技術,特別說,涉及包括把源信號分成子信號然后編碼每一子信號的壓縮技術。
數字信號的位平面壓縮是用于多媒體應用的一種普通的編碼方法。例如,視聽信號的位平面編碼允許漸進地和可縮放傳輸這些信號。通常,音頻和視覺信號在位平面編碼前經歷某種變換。這種變換的例子包括離散余弦變換(DCT)或離散微波變換(DWT)。
在執行上述一種變換后,掃描信號中包含的每一位平面并以信號的最高位(MSB)表示開始和以最低位(LSB)結束編碼。因此,如果每一變換系數由n位表示的話,則有n個相應的位平面要被編碼和傳輸。
取決于特定的保真度判據(例如最大允許失真)或者位速率預算限制,信號的編碼被限制在一個特定的位平面。這一方法提供位平面壓縮的漸進特征,特別當該編碼在實時發生時,即在信號被傳輸時的同時。對于脫機或在傳輸前編碼的信號,位平面編碼產生嵌入的和可縮放的位流。這允許發送者響應例如諸如可用帶寬的網絡條件限制該流的傳輸在一個特定的位平面或在其內。
結果,位平面壓縮一般說提供信號的非常小區組(granularity)可縮放度(FGS)編碼。取決于為編碼位平面使用的特定方法,這一區組可以小到單一位或可以大到整個位平面。因此,如果一個信號是使用n個平面編碼的位平面且總數是b位,則產生的壓縮流可以包括在該流中嵌入的原始信號的n和b個漸進的表示之間任何位置。
本發明指向一種壓縮信號的方法。該方法把信號分成多個子信號,并根據不同的編碼技術編碼每一子信號。另外,子信號要么包括不同的位平面或者從信號的同一位平面來的不同的位。
本發明還指向一種壓縮信號的方法,該方法為信號決定一個“最佳選擇”劃分。信號根據“最佳選擇”劃分被分成多個子信號,然后編碼這些子信號。通過為信號定義一些不同的劃分決定“最佳選擇”劃分。另外,計算每一劃分的熵值,選擇具有最小熵值的劃分。
本發明還指向一種為解壓縮包含子信號和指示信號如何分成子信號的劃分信息的信號的方法。該方法包括解碼每一子信號然后根據劃分信息組合子信號。
現在參考附圖,類似的參考號碼通篇表示相應的部分
圖1是表示根據本發明的位平面劃分的一個例子的示意圖;圖2是表示根據本發明的位平面劃分的另一個例子的示意圖;圖3是一個方框圖,表示根據本發明的位平面壓縮的一個例子;圖4是一個方框圖,表示根據本發明的位平面解壓縮的一個例子;圖5是一個方框圖,表示根據本發明的系統的一個例子。
如前所述,一般說,位平面壓縮提供信號的一個非常小區組可縮放度(FGS)編碼。然而,位平面的小區組編碼潛在地以損失編碼效率為代價。這一點導致最普通的視頻壓縮標準(例如MPEG-1,MPEG-2,和MPEG-4視頻)適應作為整體掃描和編碼變換系數而不是以漸進方式掃描和編碼變換系數的單獨的位平面的方案。這一標準方法導致信號的高效編碼,然而,犧牲了可縮放度。
鑒于上述,本發明指向一種源信號的位平面的可變編碼。這包括首先劃分或分組不同的位平面為子信號和然后編碼每一子信號。這一技術允許按照本發明的編碼器控制和達到在可縮放度和編碼效率之間的一個希望的平衡點。因此,在不需要位或位平面級區組的場合,可以通過在編碼前組合兩個或多個位平面而改善編碼效率。另外,因為每一位平面的統計性質不同,因此可以改變在位平面上使用的分組級。
如上所述,本發明基于在編碼前劃分源信號為可變深度子信號。為討論的目的,假定源信號先前已經被數字化并經歷某種變換諸如離散余弦變換(DCT)或者離散微波變換(DWT)。然而,根據本發明,還打算僅數字化源信號。
圖1表示根據本發明劃分的一個例子。在該例中,源數據被劃分,使得每一子信號s1-s4包括不同的位平面。在圖1的劃分中,源信號S包括n個位平面。這里假定在S編碼前S中的每一個系數用n位表示。因此,信號可以被分成n個位平面b(j),j=1,2,…,n。
另外,定義m個子信號s1來表示S,這里,每一個子信號包括一個或多個位平面b(j)。設k1是在子信號s1,1=1,2,…m,中分組的連續的位平面的數目。因此,子信號s1包括位平面sl={b(1+Σi=1l-1ki),b(2+Σi=1l-1ki),......b(kl-1+Σi=1l-1ki),b(Σi=1lki)}---(1)]]>根據這一劃分,Σ1mki=n]]>。例如,信號S包括8個位平面。如果使用k1=4,k2=2,k3=1,和k4=1把S信號分成4個子信號,則這導致子信號s1,s2,s3和s4分別具有4,2,1,和1個位平面,如圖1所示。在該例中,s1={b(1),b(2),b(3),b(4)},s2={b(5),b(6)},s3={b(7)},和s4={b(8)}。
圖2表示根據本發明劃分的另一個例子。在該例中,劃分源數據,使得并非所有子信號s1-s4包括整個位平面。換句話說,當把源信號劃分為子信號時圖2的劃分使用源信號的不同系數的可變數目的位。這對于變換過的信號(例如DCT或DWT)可能非常有用,因為不同的系數對于它們包含的能量來說具有不同的意義。因此,在每一層(或子信號)內使用可變數目的位來改善特定子信號的總編碼性能。
在圖2的例子中,一個特定的位平面可以具有屬于多于一個子信號的位。因此,劃分源信號S使得子信號s1和s2每一個包括位平面b(2),b(3),和b(4)的不同的位。
圖3表示根據本發明的位平面壓縮的一個例子。如同可以從圖3看到的,對源信號S執行位平面劃分2以便產生子信號s1,s2,…,sm。根據本發明,位平面劃分2可以以類似于圖1或2的預定方式執行。然而,優選可變執行劃分2以便對于一個給定的源信號使編碼效率最高。
為執行可變劃分,包含一個處理以決定劃分信息4,該信息包括為一個給定的信號S的“最佳選擇劃分”,而使為信號S的編碼效率最高。對于這一處理4,定義一個超集合In。In中的每一元素是一個整數矢量v=(k1,k2,…,km),使得這些整數的和等于n(這里n表示信號S中的位平面數目)。換句話說In={ν=(k1,k2,…,km)使得Σi=1mki=n]]>這里m=1,2,…,n}(2)In的一個特殊成員是矢量v=(n),它只包含一個整數。當m=1(亦即當S被劃分成單個子信號)時這是唯一允許的矢量。In的另一個特殊成員是全1矢量v=(1,1,1,…,1)。當m=n(亦即當S被劃分成n個子信號)時這是唯一允許的矢量。
根據整數矢量的這一集合In,定義劃分單個信號S(包括n個位平面)為子信號s1,s2,…,sm的所有可能方式的一個集合Sn,使得s1包括k1個最有意義的位平面,s2包括下一(連續的)k2個位平面,等等Sn={s=(s1,s2,…,sm)使得(k1,k2,…,km)∈In}(3)這里s表示Sn的一個成員。這樣,根據確定Sn中滿足下面的判據的元素s0尋找劃分信息s0=mins∈snH(s)---(4)]]>這里H(s)是劃分s(其為Sn的一個成員)的總熵的測度H(s)=Σi=1mw(si;η)·H(si)---(5)]]>加權因子w是子信號si和其它與網絡有關的變量(它們用參數η表示)的函數。例如,如果系統試圖覆蓋一個其上數據要被傳輸的位速率(或帶寬)范圍,則不同的加權因子(w’s)可以測量解壓縮s提供多少區組來覆蓋希望的位速率范圍。在這一場合,因為我們尋找最小值(如等式4表示),于是解壓縮s在希望的位速率上提供的區組越多(亦即越細),則為w的值應該越小。
劃分s0稱為“最佳”選擇劃分。根據等式(4),最佳選擇劃分s0將具有為在信號S的該劃分中包含的子信號的最小總熵測度。重要的是要注意,s0相應于集合In中的一個唯一的整數矢量v0。整數矢量v0稱為“最佳”選擇矢量,從而在圖3的例子中優選用作劃分信息P。這樣,根據劃分信息P執行按照本發明的位平面劃分2以便使為信號S的編碼效率最高。另外,還通過一個劃分信息編碼器8編碼劃分信息P并傳輸到解碼器,如圖所示。
熵測度H可以顯著影響“最佳”選擇劃分的選擇。有幾種方法可以用來測量熵H。理想上說,在測量熵時要考慮為編碼從該劃分產生的每一子信號使用的方法。因此,如圖3所示,一種可能性是為選擇(從集合Sn)最佳選擇s0使用的處理考慮(作為對該處理的輸入)由該系統使用的不同的熵編碼器。(可以用于這種系統中的編碼器在下面討論)。
另外,為計算H的另一個可能的方法是使用經典著名的熵的香農測度。這后一種情況是當選擇處理也許不需要使用(作為輸入)實際正由系統使用的不同類型的編碼器時的方案的例子。結果,這可以簡化選擇處理。再一種可能性是使用一種熵測度,它可以近似或估計由系統使用的實際子信號編碼器。
因為S的可能劃分的數目(亦即在集合Sn中的數目)可以非常大(=2(n-1)),因此希望考慮這些所有可能的劃分的一個子集。換句話說,我們可以考慮整數矢量的超集合In的一個子集JnJnIn。例如,在條件Σi=1mki=n]]>之外,可以給整數矢量v=(k1,k2,…,km)增加其它限制以定義子集Jn。一個可能的限制是考慮在單調遞減整數內的整數矢量k1≥k2≥…km-1≥kmJn={ν=(k1,k2,…,km)Σi=1mki=n]]>和K1≥k2≥…km-1≥km,這里m=1,2,…,n}(6)在這一場合,通過簡單地用In的子集Jn代替它可以修改等式(2)Sn={(s1,s2,…,sm)使得(k1,k2,…,km)∈Jn}(7)如前所述,優選根據指示“最佳選擇”劃分的劃分信息P執行位平面劃分2以便使為信號S的編碼效率最大。在劃分位平面為子信號s1后,然后編碼每一這些子信號。如同可以從圖3中所看到的,優選可以使用相應單獨的編碼器6從子信號s1開始到子信號sm結束編碼每一子信號。
希望使用單獨的編碼器6,因為它能為每一子信號使用不同的掃描和熵編碼技術。換句話說,可以為圖3所示每一子信號使用不同的編碼策略。在這一場合,可以為原來的數據劃分的特定子信號設計和優化每一編碼策略。
可以用于編碼子信號的編碼器6的例子是基于DCT的運行長度編碼器,諸如由MPEG-1、MPEG-2、MPEG-4、H.261、和H.263視頻標準使用的那些。特別,對于包含單一位平面的子信號,可以使用MPEG-4小區組可縮放度(FGS)編碼器。也可以使用用于編碼包含多個位平面的子信號的FGS的推廣。此外,也可以使用嵌入式零樹微波(EZW)編碼方法族來編碼S的任何子信號。這包括普通的SPIHT編碼方法,由MPEG-4采用的基于EZW的組織編碼方法。曾被建議給JPEG 2000標準和/或由其采用的方法也是好的備選方法。可以用在這里的另一類熵編碼器是匹配跟蹤編碼器。
獨立于所用的編碼策略類型,優選輸出的壓縮信號以嵌入方式包含不同編碼的子信號σ1,σ2…σm。這允許依賴位平面編碼的可縮放特征。當信號以實時方式傳輸到解碼器或如果信號為以后在可變帶寬信道上傳輸存儲時嵌入信號的可縮放特征十分有用。因此,如果sm包含源信號S的最有意義的位平面的話,則首先傳輸相應編碼的子信號σm。在這一場合,s1包含最小意義的位平面,和最后傳輸σ1。
另外,根據本發明,可作為備選方案使用單編碼器系統編碼每一子信號來代替圖3所示單獨編碼器6。在可以給所有子信號應用同樣的總熵策略(例如,掃描順序和熵編碼類型)的場合希望使用單編碼器系統。這后一方法的優點是簡化了相應的系統。還存在第三種選擇,這里一些子信號可以共享同樣的編碼策略,而其它的子信號可以具有它們自己專用的編碼器。此外,熵編碼器系統和/或它的參數的設計也可以由為選擇上述最佳選擇s0使用的預處理(參見圖3)影響。
圖4表示根據本發明的位平面解壓縮的一個例子。如前所述,根據本發明的壓縮信號C包括編碼的子信號σ1…σm-1,σm和劃分信息P。如前所述,優選劃分信息指示“最佳選擇”劃分。然而,根據本發明,劃分信息P還可以指示只是一個預定的劃分,諸如圖1或2所示。
如同可以從圖4中所看到的,單獨的解碼器10還可以用于解碼編碼的子信號σ1…σm-1,σm。每一解碼器10配置為按照在編碼器側執行的編碼技術解碼一個編碼的子信號σ1…σm-1,σm。還包括一個劃分信息解碼器11用于解碼劃分信息P。
因為編碼的子信號σ1…σm-1,σm要么優選存儲或者在嵌入方式傳輸,因此可以另外選擇使用一個單解碼器來代替圖4所示單獨的編碼器10。該單解碼器首先解碼由編碼器傳輸的劃分信息P。然后該單解碼器優選以嵌入和漸進方式解碼編碼的子信號σm,σm-1…σ1,從編碼表示sm的接收到的最有意義的子信號σm開始,以編碼表示s1的接收到的最小意義的子信號σ1結束。
如果在編碼器側用不同的編碼技術編碼子信號,則單解碼器必須能夠根據到來的編碼的子信號σ1…σm-1,σm改變它的編碼技術。這可以通過在壓縮的信號C中包括指示為每一子信號使用的編碼技術的附加信息實現。
另外,一個組合器12使用解碼的劃分信息P組合解碼的子信號為先前在編碼器側被劃分的相應的位平面。在執行這一操作中,組合器12優選考慮信號內的位平面的意義(位置)。這將產生在組合器12的輸出端被提交的原來的源信號S。然而,如果在編碼器側使用一個變換的話,則僅產生源信號S的近似。因此,在組合器12的輸出端需要一個逆變換器來執行逆變換(例如,逆DCT-IDCT或逆DWT-IDWT),如果這一變換在編碼器側使用的話。
圖5表示其中實現本發明的一個系統的例子。作為一個例子,系統16可以表示一個電視,一個機頂盒,一個臺式、膝上型或掌上型計算機,一個個人數字助手(PDA),一個視頻/圖像存儲設備,諸如視頻盒式錄像機(VCR),一個數字視頻錄像機(DVR),一個TiVO設備等,以及這些和其它設備的一部分或組合。系統16包括一個或多個視頻/音頻源18,一個或多個輸入/輸出設備20,一個處理器22和一個存儲器24。視頻/圖像源18可以表示例如電視接收機,VCR或其它視頻/圖像存儲設備。源18可以另外可選表示一個或多個網絡連接,用于從一個或者多個服務器例如通過綜合計算機通信網絡諸如因特網、廣域網、市區網、局域網、陸地廣播系統、電纜網絡、衛星網絡、無線網絡或電話網絡以及這些和其它類型網絡的一部分或組合接收視頻/音頻。
輸入/輸出設備20、處理器22和存儲器24通過通信介質30通信。通信介質30可以表示例如總線、通信網絡、一個或多個內部連接電路、電路卡或其它設備,以及這些或其它通信介質的一部分或組合。從源18輸入的視頻/音頻數據按照存儲在存儲器24中并由處理器22執行的一個或者多個軟件程序處理,以便產生提供給顯示設備26的輸出視頻/圖像和提供輸出音頻/聲音給音頻播放器28。顯示設備26和音頻播放器28可以是單獨的設備或可以包括在諸如電視或個人計算機的單一設備中。
在一個優選的實施例中,根據本發明的位平面壓縮和解壓縮通過由系統16執行的計算機可讀代碼實現。該代碼可以存儲在存儲器24中或從諸如CD-ROM或軟盤的存儲器介質讀取/下載。在其它的實施例中,可以使用硬件電路來代替軟件指令或與之結合來實現本發明。例如,在圖3和4中表示的元件可以作為分離硬件元件實現。
雖然在上面根據特定例子說明本發明,但是應該理解,本發明并不打算限制或局限在這里公開的例子。例如,本發明不限制在任何特定的編碼策略框架類型或概率分布。相反,本發明打算覆蓋包含在所附權利要求的精神和范圍內的各種結構和對它的修改。
權利要求
1.一種壓縮信號的方法,包括步驟●劃分信號為多個子信號(2);和●根據一種不同的編碼技術(6)編碼每一子信號。
2.根據權利要求1的方法,其中,子信號包括信號的不同的位平面。
3.根據權利要求1的方法,其中,一些子信號包括信號的一個位平面的不同的位。
4.根據權利要求1的方法,其中,根據“最佳選擇”劃分執行劃分。
5.根據權利要求4的方法,其中,“最佳選擇”劃分由下述步驟確定●為信號定義一些不同的劃分;●為每一劃分計算一個熵值;●選擇具有最小熵值的劃分。
6.根據權利要求1的方法,其中,另外包括在以嵌入方式編碼后存儲或傳輸子信號。
7.一種壓縮信號的方法,包括步驟●為信號決定“最佳選擇”劃分;●根據“最佳選擇”劃分(2)將信號劃分為多個子信號;●編碼子信號。
8.根據權利要求7的方法,其中,決定“最佳選擇”劃分包括●為每一劃分計算一個熵值;和●選擇具有最小熵值的劃分。
9.一種存儲器介質,包括壓縮信號的代碼,該代碼包括●決定信號的“最佳選擇”劃分的決定代碼;●根據“最佳選擇”劃分將信號劃分為多個子信號的劃分代碼;●編碼子信號的編碼代碼。
10.一種解壓縮包含子信號和指示如何把信號分成子信號的劃分信息的信號的方法,該方法包括步驟;●解碼每一個子信號(10);●根據劃分信息(12)組合子信號。
11.根據權利要求10的方法,其中,劃分信息指示一個“最佳選擇”劃分。
12.根據權利要求10的方法,其中,劃分信息指示一些子信號包含信號的一個位平面的不同的位。
13.根據權利要求10的方法,其中,每一子信號先前根據不同編碼技術被編碼。
14.一種存儲介質,它包括解壓縮包含子信號和指示如何把信號分成子信號的劃分信息的信號的代碼,該代碼包括●解碼每一子信號的解碼代碼;●根據劃分信息組合子信號的組合代碼。
全文摘要
本發明指向為一個特定源信號的可變位平面編碼。它包括首先劃分或分組不同的位平面為嵌入的子信號和然后編碼每一子信號。這一技術允許根據本發明的編碼器控制和實現在可縮放度和編碼效率之間的一個希望的平衡點。因此,在不需要位或位平面級區組度的場合,通過在編碼前組合兩個或多個位平面可以改善編碼效率。另外,因為每一位平面的統計性質不同,因此可以改變位平面上使用的分組級。
文檔編號H04N7/30GK1406431SQ01801407
公開日2003年3月26日 申請日期2001年5月3日 優先權日2000年5月25日
發明者H·拉哈, M·范德沙爾-米特雷, Y·陳 申請人:皇家菲利浦電子有限公司