TW201306495A - 位元流之編碼方法和裝置以及解碼方法和裝置 - Google Patents

位元流之編碼方法和裝置以及解碼方法和裝置 Download PDF

Info

Publication number
TW201306495A
TW201306495A TW101122127A TW101122127A TW201306495A TW 201306495 A TW201306495 A TW 201306495A TW 101122127 A TW101122127 A TW 101122127A TW 101122127 A TW101122127 A TW 101122127A TW 201306495 A TW201306495 A TW 201306495A
Authority
TW
Taiwan
Prior art keywords
symbol
bit stream
portions
decoding
symbols
Prior art date
Application number
TW101122127A
Other languages
English (en)
Inventor
Wen-Fei Jiang
Kang-Ying Cai
Zhi-Bo Chen
Original Assignee
Thomson Licensing
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Licensing filed Critical Thomson Licensing
Publication of TW201306495A publication Critical patent/TW201306495A/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/40Tree coding, e.g. quadtree, octree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/001Model-based coding, e.g. wire frame
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4031Fixed length to variable length coding
    • H03M7/4037Prefix coding
    • H03M7/4043Adaptive prefix coding
    • H03M7/4056Coding table selection
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6064Selection of Compressor
    • H03M7/6082Selection strategies
    • H03M7/6088Selection strategies according to the data type
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6064Selection of Compressor
    • H03M7/6082Selection strategies
    • H03M7/6094Selection strategies according to reasons other than compression rate or data type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

在三維網路寫碼中,幾何學資料是利用空間樹狀植基式方略加以壓縮。從巡訪空間樹狀植基式方略之樹狀結構,以編碼三維網路模式所得位元流,具有系統性特別冗餘,係開發來進一步改良網狀模式壓縮。位元流之編碼方法包括步驟為:界定(51)二進符號之至少第一和第二符號群組,S1為S2之子集;決定(52)之位元流內第一部位(J1,J2)、第二部位(K1)和第三部位(N1,N2,N3),其中第一部位有Th1或更多之接續性S1符號,而第二部位有Th2或更多之接續性S2符號;把位元流編碼(54),其中第一部位、第二部位、第三部位編碼(54a,54B,54C)使用不同碼;以及把指示位元流內第一、第二和第三部位間邊界位置之數值(C1)加以編碼(55)。

Description

位元流之編碼方法和裝置以及解碼方法和裝置
本發明係關於樹狀結構之適應性熵寫碼,及相對應裝置。本發明又關於樹狀結構之適應性熵解碼,及相對應裝置。
熵寫碼之研究已歷數十年。基本上,有三種熵寫碼方法:可變長度寫碼(VLC),像Huffman寫碼;算術寫碼;和以字典為基本之壓縮,像Lempel-Ziv壓縮或Lempel-Ziv-Welch壓縮。VLC碼使用位元整數,代表各符號。Huffman寫碼是最廣泛使用的VLC方法。以較大或然率給符號指派較少位元,而以較小或然率給符號指派較多位元。然而,Huffman碼不會是最適用,除非各符號之或然率是1/2之整數次方。反之,算術寫碼可對各符號分配小數(或分數)位元,故可更佳趨近資料群組之熵。Huffman碼和算術碼已廣用於現有形像/視訊壓縮標準,例如JPEG、MPEG-2、H.264/AVC。Lempel-Ziv(LZ)或Lempel-Ziv-Welch(LZW)利用以列表為基本之壓縮模式,其中列表條目為重複之資料串列而被取代。對大多數LZ方法而言,此列表係由較早輸入資料所動態發生。演算之設計是可快速實施,但並非往往最適合,因為其效益只是有限的資料分析。此類演算曾用在GIF、Zip、PNG和一些其他標準。
在三維網路寫碼中,幾何學資料往往被空間樹狀植基式方略所壓縮,例如二等分樹狀(kdtree)植基式[OG00]或八等分樹狀(octree)植基式[PK05](詳文未註)。此等演算利用某些空間樹狀,組織輸入空間點。然後,巡訪樹狀結構,並記錄必要之資訊,供稍後回復輸入點。在建造空間樹狀時,格(cell)以遞歸方式區分,直到各非空白格小到夠含唯一頂點,並致能充分準確重構頂點位置。起初,在三維模式的全部點周圍,構造邊限方格。全部三維點的完全邊限方格,開 始時視為單格。由於頂點位置可從相對應格的邊限方格回復,空間樹狀植基式演算包含可達成多解像度壓縮,以及和單解像度壓縮同樣之壓縮比。
每次迭代,[OG00]都把格區分為二個子格(child cell),把頂點數編碼於二個子格之一內,如第1圖所示。若親格(parent cell)含有p頂點,則子格之一內的頂點數可藉算術寫碼器,使用log2(p+1)位元編碼。
另方面,[PK05]在每次迭代中把非空白格區分成八個子格。對於各八等分樹狀格(octree cell)區分,幾何學寫碼器編碼非空白格數T(1≦T≦8),以及KT=可能組合當中的非空白子格組態。當資料被率直編碼時,T取3位元,而非空白子格組態取log2KT位元。為改進寫碼效率,[PK05]為為各子格估計非空白之擬似或然率。子格之巡訪順序適應按照或然率下降順序。為容易標示起見,第2圖表示四等分樹狀(quadtree)子格所得二維例,以及所得碼字。巡訪順序以箭頭指示。
然而,始終亟需改進壓縮,以達成更高之壓縮比。為求無資料損耗而能達成此舉,特別需要一種方法,容許完全品質解壓縮,獲得(擬似)無損耗重製。
本發明基於認知事實上,位元流若是從巡訪空間樹狀植基式方略之樹狀結構以編碼三維網路模式所得,即具有系統性特殊冗餘,可加以開發,進一步改進網路模式壓縮。尤其是對於超過二個子格,諸如四等分樹狀植基式或八等分樹狀植基式方法中,各格區分結果之樹狀植基式方略,可達成更高之壓縮效率。
所以,本發明提供至少位元流之編碼方法、所編碼位元流之解碼方法、位元流之編碼裝置,以及所編碼位元流之解碼裝置。
基本上,位元流之編碼方法包括步驟為:界定二進符號 之至少第一和第二符號群組,S1係S2之子集;在位元流內決定第一部位、第二部位和第三部位,其中第一部位有Th1或更多之接續性S1符號,而第二部位有Th2或更多之接續性S2符號;把位元流編碼,其中第一部位、第二部位和第三部位係使用不同碼加以編碼;以及把指示位元流內第一、第二和第三部位邊界位置之數值加以編碼。
在一具體例中,位元流之編碼方法包括步驟為:界定二進符號之至少第一和第二符號群組,其中第一符號群組為第二符號群組之子集;在位元流內決定二個或以上之第一部位、零個或以上之第一部位,和二個或以上之第三部位,其中各第一部位有第一符號群組之至少Th1接續性符號,各第二部位有第二符號群組之至少Th2接續性符號(但無第一符號群組之至少Th1接續性符號),又其中位元流其餘部份為第三部位;決定位元流內只包括第一和第三部位之部份;把位元流編碼,其中該第一部位使用第一碼加以編碼,該第二部位(若有存在)使用第二碼加以編碼,而該第三部位則用第三碼加以編碼,其中亦將指示位元流內第一、第二和第三部位間的邊界位置之值加以編碼;又其中在另包括第一和第三部位之該部份內,若第三部位有預定長度時,即跳越第一部位和相鄰第三部位間邊界位置之編碼,而第三部位若為預定長度以外之不同長度,則以隱含方式編碼。
意即位元流之各第三部位無第一符號群組之至少Th1接續性符號,亦無第二符號群組之至少Th2接續性符號。典型上,位元流之第三部位相當短,只包括少數符號,往往只有一符號。
第二部份的第一部位和相鄰第三部位間邊界位置之隱含編碼,可有不同種類,例如利用置換二相鄰邊界位置(可以決定,因邊界位置有單調的增減順序),或利用分離或附著於 另一邊界位置數值之逸出序列,或利用截然不同儲存二符號。
在一具體例中,被跳越邊界位置(即其編碼被跳越)係位元流之該部份內的第三部位左方(或起始,或開啟)邊界。在另一具體例,被跳越邊界位置係位元流之該部份內的第三部位右方(最後,關閉)邊界。
在一要旨中,位元流之編碼方法包括步驟為,界定二進符號之至少第一和第二符號群組,其中第一符號群組包括之符號比第二符號群組少,而第一符號群組之符號亦包含在第二符號群組內;在位元流內決定二個或以上之第一部位,各有第一符號群組之至少第一界定最低數接續性符號、零個或以上之第二部位、各有第二符號群組之至少第二界定最少數接續性符號,和二個或以上之第三部位,包括位元流之其餘部份:把位元流分成至少接續性第一部份和接續性第二部份,其中第一部份包括該第三部位和該零個或以上第二部位之至少其一,而第二部份包括該第一部位和該至少第二部位之至少其一;把位元流編碼,其中該一個或以上之第一部位,在第一編碼器內使用第一碼加以編碼,該一個或以上之第二部位,在第二編碼器內使用第二碼加以編碼,而該一個或以上之第三部位,在第三編碼器內使用第三碼加以編碼;把位元流內之第一、第二和第三部位之長度(或邊界位置)加以編碼,其中至少在第二部份內,若長度為預定長度時(即邊界位置與預定相鄰邊界位置有預定距離),第一部位的長度(或邊界位置至少其一)之該項編碼即被跳越。
易言之,位元流第二部份之構成,不包括任何該第三部位。在一具體例中,此是位元流之最後部份。在一具體例中,決定諸部位時,同等類型之相鄰部位累積,故位元流內之相鄰部位始終有不同的類型。
在一要旨中,位元流之編碼裝置包括一個或以上之處理機構,包含:界定二進符號的至少第一和第二符號群組之處理機構,其中第一符號群組為第二符號群組之子集;在位元流內決定二個或以上第一部位、零個或以上第二部位和二個以上第三部位之處理機構,其中各第一部位有第一符號群組之至少Th1接續性符號,各第二部位有第二符號群組之至少Th2接續性符號(但無第一符號群組之至少Th1接續性符號),又其中位元流之其餘部份為第三部位;決定位元流只包括第一和第三部位的部份之處理機構;供位元流編碼之編機構,其中該第一部位係在第一編碼器內使用第一碼加以編碼,該第二部位(若有存在)係在第二編碼器內使用第二碼加以編碼,而該第三部位係在第三編碼器內使用第三碼加以編碼;邊界/長度編碼機構,對指示位元流內第一、第二和第三部位間邊界位置(或第一、第二和第三部位之長度)數值加以編碼,其中在只包括第一和第三部位之該部份內,若第三部位具有預定長度(即邊界位置與界定相鄰邊界位置具有預定距離),則第一部位和相鄰第三部位間邊界位置之編碼即被跳越。
一種電腦可讀取之媒體,具有可執行之指令,造成電腦遂行上述方法。
本發明有益之諸具體例,載於申請專利範圍附屬項、以下說明和附圖。
茲參照附圖說明本發明具體例。
以下具體例係基於三維網路模式的八等分樹狀表示方式。本發明可適應其他資料集或應用,詳後。由[OG00]已知三維網路寫碼規劃所用八等分樹狀表示方式之基本方法,於 此就第2圖進行說明。雖然第2圖顯示二維情況的四等分樹狀幾何學寫碼之原理,但容易適用於三維模式,如下參照第8圖所述。為供編碼,現時親格分裂成四個子格,按預定順序巡訪,每子格單一位元指示子格內是否有一點。例如在第2a圖內,按圖示巡訪二親格1,2內之子格(灰色者為非空白子格)。第一親格1之子格10,11,12,13係以第一序列1010編碼,因巡訪之第一和第三子格10,12為非空白(即含一個或以上之點),以一個表示。第二和第四子格11,13為空白(即不含點),係以零編碼。第2b圖表示使用不同巡訪之同樣格,和所得碼。
第8圖表示八等分樹規劃之親格和子格。在八等分樹規劃內,親格分成八個子格80,...86(另一子格被左下方子格82遮住未顯示)。可能之巡訪順序為左右、上下、前後,造成巡訪序列為80-81-82-83-84-85-(左下方子格82所遮蔽子格)-86。因此,在八等分樹狀情況下,非空白子格組態是以8位元二進式標示,涵蓋空白和非空白子格之全部255種可能組合。非空白子格數不需分開編碼。表1為非空白子格組態序列之一例。
表1:子格組態序列11111111 01100110 00111011 11001100...00010000 00000010 00000010 10000000 00000001
雖然詳述如上,但親格內的子格巡訪順序,與本發明不太有關聯。原則上,對於本發明可以實質上等效使用任何巡訪順序。
8位元符號可利用習知算術寫碼有效壓縮,但結果不如預期良好(即有效)。本發明提供改進效率之編碼方法,和相對應解碼方法。
表2所示為典型複合三維模式(m1007)內最常發生符號之分配或然率。可見二進表示方式中只有一個1的符號,以壓倒性或然率發生。幾何學的解釋是,經數次區分後,頂點罕能共享一格。按照本發明,界定符號集S0={1,2,3,...,255},其元素為任何可能之符號。又界定另一符號集S1={1,2,4,8,16,32,64,128},其元素為2(即經常發生的符號)之整數平方。業已觀察到S1所含符號的運轉往往長。因此,在只含S1符號之副序列裡,或然率模式可簡化成8符號模式。
第3圖表示位元流之基本結構。位元流有二個第一部位J1,J2(即第一型J之部位),一個第二部位K1(即第二型K之部位),和三個第三部位N1,N2,N3(即第三型N之部位)。各第一部位有第一符號群組S1之至少第一預定數Th1接續性符號,各第二部位有第二符號群組之至少第二預定數Th2接續性符號,位元流之其餘部份為第三部位N1,N2,N3,意即第三部N1,N2,N3可有會在位元流內出現之任何符號,但無 第一符號群組S1之足夠(即少於第一預定數Th1)接續性符號,不夠格充做第一部位,又無第二符號群組之足夠(即少於第二預定數Th2)接續性符號,不夠格充做第二部位。當然,雖然第一符號群組S1為第二符號群組S2之子集,惟夠格充做第一部位J的接續性符號副序列,即做為第一部位J編碼,而非做為第二部位K。理由是第一部位可以第二部位更高效率編碼。又,第一和第二部位J,K可以比第三部位N更高效率編碼,故夠格充做第二部位K之副序列,可做為第二部位編碼。
Th1(例如供三維網路模式)之適當數值,在10-100範圍,但可更高,分別視輸入序列性質或受巡訪樹狀結構和深度而定。Th2(例如供三維網路模式)之適當數值,在20-200範圍,但可更高,分別視輸入序列性質或受巡訪樹狀結構和深度而定。舉例值為Th1=50,Th2=70。對三維網路模式之壓縮,尤其是在三維網路模式中重複結構檢測所得實例位置之壓縮,最適合。應用於其他用途時,可以調節。因此,雖然在一具體例中,樹的葉節點為三維網路模式之點,但在另一具體例中,樹的葉節點為多數連接的三維網路模式中重複結構之實例位置。
當副序列區分時,要以少數位元組為代價,以指示邊界。代價可藉S0模式改為S1或S2模式,利用壓縮改進以補償之。由於S2模式的符號多於S1,由S0模式改為S2所得增益較少。因此,Th2應比Th1大,才更有效。然而,本發明在Th2=Th1或Th2<Th1時,亦可行。
又如第3圖所示,解碼器控制資訊是在位元流開始時編碼。解碼器控制資訊包括C1值,指示位元流第一、第二和第三部位間之邊界位置。
茲舉例如下。考量如下符號序列:0212301230011323000111011011001011100001有16個0、16個1、4個2、4個3。故符號序列之熵為: -16*log2(16/40)-16*log2(16/40)-4*log2(4/40)-4*log2(4/40)68.88。此為最佳直接算術寫碼所可為。
然則,若將符號序列分成二副序列,可達成進一步壓縮。第一副序列0212301230011323包括全部可能之符號型,最末是第16個符號。四種符號型均勻分佈,其熵為:-4*log2(4/16)-4*log2(4/16)-4*log2(4/16)-4*log2(4/16)=32第二副序列000111011011001011100001只含二型符號,即16個0和16個1,其熵為:-16*log2(16/32)-16*log2(16/32)=32總熵為32+32=64。所以,只要妥當賦予分裂點,可以進一步改進,詳後。分裂點表示方式之代價是,大量符號壓縮之平凡常務,亦利用本發明達最適合。
本發明適應性熵寫碼方法,例如供八等分樹狀寫碼,其作業如下。一如上述,八等分樹狀符號絕大部份在二進表示方式中只有一個1。二個符號集界定為S0={1,2,3...255}和S1={1,2,4,8,16,32,64,128},即S1符號在二進表示方式中只有1個1。若S1符號單獨寫碼,會減少熵,但完成特定此等符號位置的位元之常務。本發明使熵減少和常務二者均最適合,實質上只有檢測和編碼S1符號之長期運轉而已。
為進一步改善壓縮,界定另一符號集S2={3,5,9,17,33,65,129,6,10,18,34,66,130,12,20,36,68,132,24,40,72,136,48,80,144,96,160,192,1,2,4,8,16,32,64,128},其元素係在二進表示方式中有二個以下(即一或二個)1之符號。S2所含符號群組之寫碼,亦能改進某種條件下之壓縮。因此,本發明採用二或三個算術寫解碼器,單獨編碼和/或解碼不同符號集內之符號。在一具體例中,二或三個算術寫解碼器同時操作,或至少有部份時間重疊。因此,全部編碼和/或解碼過程加速。
原則上,位元流之不同部位或部位類型J,K,N,可以任何方式決定。決定位元流不同部位之一方法例,如下就第7圖 所述,顯示位元流分成第一、第二和第三部位之方法例。
第7圖內,從任何電子儲存器接收或讀取輸入序列之符號後,符號自始即被掃描,發現全部副序列含有Th1接續性S2符號,其中Th1為預定臨限值,已如上述。以L1,L2...Ln標示此等副序列,其餘以N1,N2...Nn標示。所得結構如第7圖橫列#1所示。
然後,搜尋前一步驟所發現各L型副序列,找出含有超過Th1接續性S1符號之副序列。以J1,J2...Jm標示。從Li除去Jis所得副序列,以K1,K2...Kn標示(見第7圖橫列#2)。含少於Th2符號的Kjs放回Ni,其中Th2為S2符號的預定臨限值,已如上述(見第7圖橫列#3)。如此一來,符號序列即分成J,K,N三型之許多副序列(於此亦為部位或截區)。第一型部位J各有至少Th1接續性S1符號(第一符號群組),第二型部位K各有至少Th2接續性S2符號(第二符號群組),而輸入位元流之其餘部份為第三部位N1,N2,N3,有少於Th1接續性S1符號,亦少於Th2接續性S2符號。位元流可在邏輯上分成二接續性部份,即包括至少全部K型部位之第一接續性部份H1,和只包括J和N型部位之第二部份H2。為編碼空間樹狀,通常使用巡訪順序,以巡訪樹狀結構的葉節點結束。例如就三維網路模式而言,葉節點相當於模式之一單點。因此,位元流(和因此第二部份H2)始終以J型副序列結束。
第4圖表示所得截區例(無頭標),其中c1...c6係副序列邊界位置指示器,解碼作業如下。關於邊界,一具體例內之編碼是從位元流終端開始,因為終點始終已知。在一具體例中,位置指示器是在頭標內以逆向順序c6,...,c1編碼/解碼(見第10圖,在第4圖內未示),因最後的c6最先用於解碼。最後部位始終為J型(即唯有一個位元設定於1),因為J型值相當於空間樹狀之葉節點。因此,位元流之最後部位J3係J型部位,從符號#100開始,以位元流之最末符號結束。 符號來自第一符號集S1,因其為J型副序列。
關於位元流結構的資訊,編碼於頭標內。如第10圖所示,單一位元91可編碼於頭標內,指示位元流內是否有任何K序列(例如初始位元91設定於1,意指有K序列)。在一具體例內,若有K序列,後續之碼字92(例如4位元)指示位元流內最末K序列之位置。此資訊與解碼有關,詳後。碼字92可為序列數,指示第一部份H1和第二部份H2間的邊界(是故在第4圖實施例中,碼字92可有數值"4",指示c2係從末端算起第4個編碼邊界位置,或數值"5",指示c2係從末端算起第5個編碼邊界位置,或數值"2",指示c2係從末端算起第2個編碼邊界位置,亦可為最末K序列K1位置範圍內之任何數值,例如50之類)。因此,碼字92亦指示位元流第一部份H1的最末部位,以最末K序列結束。
在一具體例中,後續第二碼字93指示所編碼邊界位置數。須知第一和第二碼字92,93可在位元流內不同位置(例如被置換),取決於習用。然後,接著是部位94,其值代表邊界位置cmax,...c0(例如各12位元,視可能之位元流長度而定),然後是實際位元流95。在一具體例中,暗示第一部份H1只包括一N型部位和一K型部位。在此情況下,指示位元流第一部份H1最末部位之碼字92,即不必要。
因此,頭標內之資訊透露出次一副序列(按反逆順序)N3仍然在第二部份H2內,故必定為N型,因為第二部份H2有交替之J型和N型部位,以J型部位終結。在此實施例中決定N3副序列很短,即只有一符號,在此具體例內對N副序列為從缺值長度。因此,由於先前邊界位置為c6=100,次一邊界為c5=99,即N3副序列為[99,100]。然後,決定次一部位(按反逆順序)J2在第二部份H2,因而必然為J型。其下限邊界為c4=72。然後,決定次一部位(按反逆順序)N2在第二部份H2,因而必然為N型。其下限邊界c3=70。然後,決定次一部位(按反逆順序)J1在第二部份H2,因為必 然為J型。其下限邊界為c2=50。於此,可決定第4個編碼邊界位置數c2,係第一部份H1和第二部份H2間之邊界。然後,決定次一部位(按反逆順序)K1有下限邊界c1=30,所以按照第一部份指示器92,即為第一部份H1之最後部位。因此,必然為K型。
意即在此具體例中,邊界位置之預備編碼為[100,99,72,70,50,30],而第二部份H2會在第5個編碼邊界位置開始,即在c2=50。欲得提供額外位元節省的邊界位置之最後編碼,邊界位置之預備編碼進一步精練如下。
至少N型部位之長度,與從缺值長度(例如一)進行比較。決定N型之一部位,其長度等於從缺值長度,因應此項決定,N型部位的下限邊界之編碼,即被跳越。因此,可節省一邊界值之編碼。為指示長度與從缺值長度不同之N型部位,相鄰(例如其次)J型部位之邊界位置,即在頭標內被置換。意即雖然邊界位置常常以單調順序編碼(cmax,...,c0遞減,或co,...cmax遞增),見第10圖,因而其值按單調順序遞增或遞減,若相鄰N部位有從缺值長度,則J型部位之二邊界位置即被置換。
意即在此具體例中,邊界位置之編碼為[100,70,72,50,30],第二部份H2在第4個編碼邊界位置c2=50(或是在第5個編碼邊界位置c2=50,詳後)開始。
由於被置換的邊界位置,係在解碼之際按照其數值檢測,即不用位元來指示位元流第二部份H2內N型序列之邊界位置。在通常三維網路模式以外的資料序列之一具體例中,於位元流第一部份H1內亦可用類似之編碼方法。
在上述具體例中,邊界位置之解碼如下(參見第10圖):首先,從有至少一K序列存在的位元流之第一位元91解碼。然後,在一具體例中,把指示最末K序列後的邊界位置c2之指示器92解碼,有例如數值四。然後,在一具體例中,把代表所編碼邊界位置之數值93解碼為五。再將其次 (邊界位置數)*12位元解碼,做為邊界位置數值,即[100,70,72,50,30]。在一具體例中,按照指示器92,在第4個編碼邊界位置之前的邊界位置數值(即50),即在第二部位H2。因此,若數值並非單調遞降(在此實施例中)則指示1位元N部位之邊界數值即省略。因此,解碼器測知第三數值(即72)高於第二數值(即70),因此把隱含邊界位置插在(前一邊界位置-1),即100-1=99,又把被置換的邊界位置,置換回到其正確順序。所以,解碼可檢復所解碼位置序列,以[100,99,72,70,...]開始。此實施例中之後續邊界位置為單調式。則解碼之位置序列為[100,99,72,70,50,30]。
指示最末K部位之指示器92,和因此位元流之第一部位H1,可用來決定部位類型。即在一具體例中,從事實上指示器92係例如五,解碼器即決定第5個數值(即50),係位元流第一部份H1和第二部份H2間之邊界。所以,解碼器決定前導四個數值(100,99,72,70)係J型和N型部位間之邊界位置,第5個邊界位置(即50)分別在J型和K型部位之間,或H1和H2之間,而其餘邊界位置(在此情況下只有30)係在K型和J型部位之間。
第5圖表示本發明一具體例之編碼方法流程圖。在此具體例中,位元流之編碼方法包括如下步驟:第一步驟包括界定51二進符號之至少第一和第二符號群組,其中第一符號群組S1為第二符號群組S2之子集。
第二步驟包括決定52位元流內二個或以上之第一部位J1,J2、零個或以上之第二部份K1,以及二個或以上之第三部位N1,N2,N3,其中各第一部位J有第一符號群組S1的至少第一預定數Th1接續性符號,各第二部位K有第二符號群組的至少第二預定數Th2接續性符號,又其中位元流其餘由第三部位N1,N2,N3組成。
第三步驟包括決定53位元流內之至少一接續性部份H2,只包括第一和第三部位J1,J2,N2。
第四步驟包括把位元流編碼54,其中該第一部位使用第一碼編碼54A,該第二部位使用第二碼編碼54B,而該第三部位使用第三碼編碼54C。
第五步驟包括把指示位元流內第一、第二和第三部位間邊界位置之數值C1編碼55,其中在只包括第一和第三部位的該接續性部份H2內,若第三部位N2之長度LN2為預定長度,則第一部位J1,J2和相鄰第三部位N2(即鄰接第一部位J1,J2)間邊界位置之編碼,即跳越,而若與預定長度不同,則第三部位N2之長度LN2係經隱含編碼。預定長度必須為正數(即非零),以1為佳。然而,可為另外數值,例如二,視資料結構之特性特點而定。預定長度可以隱含預定或明顯預定,例如做為參數,當做解碼器控制資訊編碼。
在一具體例中,預定長度係隱含預定為一。此具體例特別有益於對巡訪空間樹狀植基式方略之樹狀結構以編碼三維網路模式所得位元流,進行寫碼。
在一具體例中,位元流之編碼方法包括步驟為:界定二進符號之至少第一和第二符號群組S1,S2,其中第一符號群組S1包括之符號較第二符號群組S2為少,而第一符號群組之符號亦包含在第二符號群組內;決定位元流內二個或以上之第一部位J1,J2,各有第一符號群組S1之至少第一界定最少數Th1接續性符號、零個或以上之第二部位K1、各有第二符號群組S2之至少第二界定最少數Th2接續性符號,和二個或以上之第三部位N1,N2,N3,包括位元流之其餘部位(其中同型之相鄰部位累積,使位元流有不同型之較替相鄰部位);把位元流分成至少接續性第一部份H1和接續性第二部位H2,其中第一部份包括該第三部位N1和該零個或以上第二部位K1之至少其一,而第二部份包括該第一部位N2和該至少二個第二部位J1,J2之至少其一;把位元流編碼,其中該一個或以上之第一部位J1,J2使 用第一編碼器Enc1編碼,該一個或以上之第二部位K1使用第二編碼器Enc2編碼,而該一個或以上之第三部位N1,N2,N3使用第三編碼器Enc3編碼;把位元流內的第一、第二和第三部位之長度編碼,其中至少在第二部份H2內,若長度為一,第一部位N2,N3的長度LN2,LN3之該項編碼即被跳越。
編碼方法其他優良具體例說明如下:
在一具體例中,第一符號群組(S1)包括二進符號,有一位元設定於1,其餘位元設定於0,而第二符號群組(S2)包括二進符號,有一或二位元設定於1,其餘位元為0。
在一具體例中,位元流代表空間資料結構之受巡訪八等分樹狀表示方式,尤其是三維網路模式。
在一具體例中,編碼步驟54包括第一編碼步驟54A,使用基於第一符號集S1之第一碼,第二編碼步驟54B使用基於第二符號集S2之第二碼,第三編碼步驟54C使用基於第三符號集S3之第三碼。在一具體例中,第一、第二和第三編碼步驟54A、54B、54C至少一部份,係同時進行。
在一具體例中,解碼器控制資訊係在位元流開頭編碼,解碼器控制資訊包括該數值C1,指示位元流第一、第二和第三部位間之邊界位置。
在一具體例中,位元流內第一、第二和第三部位之邊界位置或長度,編碼成序列數值cmax,...,c0,其中對位元流第一部份H1和第二部份H2第一部位,若無邊界被跳越,則代表邊界位置之數值是以單調順序編碼,又其中第一部位J1,J2和相鄰第三部位N2間邊界位置之該項隱含編碼,包括置換該第一部位J1之邊界順序(即下限和上限邊界)。在一具體例中,位元流第三部位N2之該預定長度LN2為一。
第6圖表示本發明一具體例之解碼方法流程圖。位元流之解碼方式包括如下步驟:
第一步驟包括從位元流控制資訊C1起頭解碼61。
第二步驟包括按照該控制資訊,決定62位元流內至少二個或以上之第一部位J1,J2,各有第一符號群組S1之接續性符號;零個或以上之第二部位K1,各有第二符號群組S2之接續性符號;以及二個或以上之第三部位N1,N2,N3,各有第三符號群組S3之接續性符號,其中該第三部位N1和該零個或以上第二部位K1之至少其一,係在位元流之接續性第一部份H1,而該第一部位N2和該至少二個第二部位J1,J2之至少其一,係在位元流之接續性第二部份H2。
第三步驟包括把該接續性符號解碼64,有至少如下三個副步驟:
第一副步驟包括使用第一符號解碼器(基於第一符號群組S1),把該至少二個或以上第一部位J1,J2之接續性符號,解碼64A成固定長度之符號。
第二副步驟包括若至少一個第二部位K1已決定,使用第二符號解碼器(基於第二符號群組S2),把該零個或以上第二部位K1之接續性符號,解碼64B成該固定長度之符號。第二符號群組S2包括該第一符號群組S1之符號,和額外符號。
第三副步驟包括使用第三符號解碼器(基於第三符號群組S3),把該二個或以上第三部位N1,N2,N3之符號,解碼64C成該固定長度之符號,其中第三符號群組S3只包括該第二符號群組S2內不包括之符號。
最後,第四步驟66包括按照該控制資訊之序列順序重整順序,並提供該位元流第一、第二和第三部位之解碼符號。
解碼方法之其他有益具體例說明如下:
在一具體例中,第一符號群組包括二進符號,有一位元設定於1,其餘位元為0,而第二符號群組包括二進符號,有一或二位元設定於1,其餘位元為0。
在一具體例中,位元流代表三維網路模式之被巡訪八等分樹狀表示方式。
在一具體例中,從位元流起頭的控制資訊C1之解碼步驟61,包括將指示位元流內第一、第二和第三部位邊界位置的一序列數值cmax,...,c0解碼,其中代表位元流第一部份H1邊界位置之數值,呈單調順序,又其中代表位元流第二部份H2第一部位J1,J2的邊界位置之數值,呈單調順序。
在一具體例中,解碼方法又包括步驟為:檢測66B至少一對數值c3,c4,代表位元流第二部份H2具有被置換單調順序之邊界位置;以及把長度係按照該至少一對數值c3,c4間相差的該第一部位N2,N3之一,按照該數值之一插入66C於邊界位置。
在一具體例中,該解碼64A至少二個或以上第一部位J1,J2,該解碼64B零個或以上第二部位K1(若至少一個第二部位K1已決定)以及該解碼64C二個或以上第三部位N1,N2,N3,係至少部份同時進行(至少部份時間重疊)。
在一具體例中,位元流第一、第二和第三部位的解碼符號提供步驟66,包括重新排序66A該第一、第二和第三部位。
在一具體例中,控制資訊C1包括至少第一、第二和第三部位之長度。長度可以邊界位置之形式表示。
第11圖表示本發明一具體例之位元流編碼裝置700方塊圖。在此具體例中,位元流編碼裝置包括下列模組。各模組可做為分開之硬體方塊實施。第一模組751為符號界定模組,以界定二進符號之至少第一和第二符號群組,其中第一符號群組S1為第二符號群組S2之子集。
第二模組752為決定模組,決定位元流內二個或以上之第一部位J1,J2、零個或以上之第二部位K1,和二個或以上之第三部位N1,N2,N3,其中各第一部位J有第一符號群組S1之至少第一預定數Th1接續性符號,各第二部位K有第二符號群組之至少第二預定數Th2接續性符號,又其中位元流之其餘係由第三部位N1,N2,N3組成。
第三模組753為決定模組,決定位元流內只包括第一和第三部位J1,J2,N2之至少接續性部份H2。
第四模組754為編碼模組,以編碼位元流,其中該第一部位使用第一碼編碼754A,該第二部位使用第二碼編碼754B,而該第三部位使用第三碼編碼754C編碼。
第五模組755為編碼模組,對指示位元流內第一、第二和第三部位間的邊界位置之數值C1加以編碼,其中在只包括第一和第三部位之該接續性部份H2內,若第三部位N2之長度LN2為預定長度,則第一部位J1,J2和相鄰第三部位N2(即鄰接於第一部位J1,J2)間的邊界位置之編碼,即被跳越,而若與預定長度不同,則隱含編碼第三部位N2之長度LN2。預定長度必須為正數(即非零),以一為佳。然而,可為另一數值,例如二,視資料結構之特性特點而定。預定長度可隱含預定或明顯預定,例如做為參數,編碼成解碼器控制資訊。
第12圖表示本發明一具體例位原元流解碼裝置800之方塊圖。在此具體例中,位元流解碼裝置包括下列模組。各模組可做為分開之硬體方塊實施。第一模組861為解碼模組,從位元流控資訊C1起頭解碼61。
第二模組862為決定模組62,按照該控制資訊,決定位元流內至少二個或以上之第一部位J1,J2,各有第一符號群組S1之接續性符號;零個或以上之第二部位K,個有第二符號群組S2之接續性符號;以及二個或以上之第三部位N1,N2,N3,各有第三符號群組S3之接續性符號;其中該第三部位N1和該零個或以上第二部位K1之至少其一,係在位元流的接續性第一部份H1,而該第二部位N2和該至少二個第一部位J1,J2之至少其一,係在位元流的接續性第二部份H2。
第三模組864為解碼模組,供姊解碼該接續性符號,並有至少下列三個副模組。
第一副模組864A為第一解碼模組,使用第一符號解碼器(基於第一符號群組S1),把該至少二個或以上第一部位J1,J2之接續性符號,解碼成固定長度之符號。
第二副模組864B為第二解碼模組,若至少一個第二部位K1已決定,使用第一符號解碼器(基於第二符號群組S2),把該零個或以上第二部位K1之接續性符號,解碼成該固定長度之符號。第二符號群組S2包括該第一符號群組S1之符號,和額外符號。
第三副模組864C為第三解碼模組,使用第三符號解碼器(基於第三符號群組S3),把該二個或以上第三部位N1,N2,N3之符號,解碼成該固定長度之符號,其中第三符號群組S3只包括該第二符號群組S2內不包括之符號。
第四模組866為重構和輸出模組,按照該控制資訊,按序列順序,重新排序並提供位元流內該第一、第二和第三部位之解碼符號。即,此模組把位元流之諸部位重構成解碼位元流。
在解碼裝置之一具體例中,從位元流起頭就解碼控制資訊C1之解碼模組861,對指示位元流內第一、第二和第三部位的邊界位置之序列數值(cmax,...,c0)進行解碼,其中代表位元流第一部份H1邊界位置之數值,呈單調順序,又其中代表位元流第二部份H2的第一部位J1,J2邊界位置之數值,呈單調順序,其中解碼模組861又包括檢測模組866B,檢測至少一對數值(c3,c4,見上述和第4圖),代表位元流第二部份H2內已有置換單調順序之邊界位置;和插入模組866C,按照該數值之一把長度係按照該至少一對數值(c3,c4)間相差的該第一部位J1,J2之一,按照該數值之一插入邊界位置。
8圖表示八等分樹狀植基式三維幾何學寫碼,其上述四等分樹狀植基式二維幾何學寫碼比較。
第9圖表示各種位元流結構例。第9a圖所示第一種結構中,位元流之第一部份H1包括二個K型部位,因此也有二 個N型部位(因為起初部位往往是N型,相當於八等分樹狀結構之根)。位元流之第二部份H2包括二個J型部位,和因此一個N型部位(即N型部位數為J型部位數減一)。
在第9b圖所示第二種結構中,位元流之第一部份H1包括二個K型部位,和唯一N型部位(相當於罕見情況,即親格只有Th2非空白子格,故起初部位為K型)。此情況亦可按照本發明原理處置。最末K型部位在此情況為K2部位,而按照邊界位置數,解碼器可決定起初序列必定為K型。位元流之第二部份H2包括二個J型部位,和因此一個N型部位。
在9c圖所示第三結構中,位元流之第一部份H1包括一個K型部位,因此也有一個N型部位。若第一部份只包括單一部位,可按照第一部份內的邊界位置數編碼/解碼,則需額外指示,以指示究係K型或N型,如上述。位元流之第二部份H2包括六個J型部位,和因此五個N型部位(J型部位數減一)。
在第9d圖所示第四結構中,位元流之第一部份H1包括二個K型部位,因此也有二個N型部位。位元流之第二部份H2包括六個J型部位,和因此五個N型部位(J型部位數減一)。
第10圖表示位元流頭標結構例,已如前述。為簡明起見,上述具體例限制K型副序列數為一。位元流起頭可用二進4位元92,指示最末K型副序列。此係最先解碼之K型副序列,因為解碼是在位元流末端開始。例如,當無副序列夠格為K型時,二進92為"0000",而第一部份H1只包括N型部位。
本發明提供一種方法,可供有效率壓縮資料,分成許多節段,具有大為不同之統計分配。對各部份應用最妥當統計模式,可達成更大壓縮。尤其是本發明方法對三維頂點位置之八等分樹狀壓縮作用非常良好。
寫碼之一項優點是,本身調節到資料不同節段之特點。最佳或然率模式是自動選擇並應用於不同節段之算術寫碼(或其他熵壓縮),予以最適應壓縮。本發明另一優點是,與已知方法相較,以減少指數數量特定節段限度。具體而言,在八等分樹狀壓縮之一具體例中,八等分樹狀之符號分成一些節段,以255符號或然率模式、36符號或然率模式或8符號或然率模式寫碼。此等模式對三維模式(尤其是複合或中度複合三維模式)之大量八等分樹狀資料最適佳。本發明又一優點是,具有上述起初或然率模式之三個(或以上)熵寫解碼器,可單獨運作以壓縮相對應資料。
以下註記係關於特殊具體例。
在一具體例中(見第4圖),限度指示器順序是在編碼之前反逆,即從cy至c1。須知大多數Nis(i>2)只有一元素,為此等一符號副序列寫碼二限度指示器,太過浪費。因此,例如,當N3只有一符號,只寫碼二限度,若c6已寫碼,則c5不需寫碼。當N3有複數符號時,c5和c6二者均寫碼。但c5寫碼在c6之先,與通常順序不同。則寫碼器會接到指示,把N3視為複數符號副序列。因此,不必要全部限度指示器。設有x個必須寫碼之邊界位置指示器,x是做為二進4位元寫碼,而必須之限度指示器是做為二進12位元寫碼。以第4圖為例,寫入位元流之數值為[5:100,70,72,50,30]。分別以三個(或二個)算術編碼器,把符號寫碼入Nis,Kis,Jis。N和K之起初或然率模式,是按照表1之或然率模式決定,同時J的起初或然率係設定成均勻分配。基於各種幾何學資料之八等分樹狀符號統計,上述模式最適佳。把三種算術編碼器的結果合併,寫入位元流。前二個算術編碼器除通常符號外,可加一個終端符號,以不同的編碼器把已寫碼副序列分開。
在一具體例中,解碼具有如下步驟,以解壓縮位元流:讀取一位元以決定副序列K1(若有存在)之位置,讀取二進4位元,並做為十進位值x加以解碼,其中x係位元流內限 度指示器數;讀取二進12位元,並做為十進位值x,即cx至c1,加以解碼;按照所解碼限度指示器構成符號序列之截區結構。以第4圖為例,x=5,而解碼之cis為[100,70,72,50,30]。由於結束之副序列始終為J,cx必須為其下限度位置。故J3=[100,∞],"∞"意指上限度,視所解碼符號數二定。
解碼之又一步驟為,於獲得最末J副序列後,先前副序列即逐一構成。若ci>ci-1(通常單調順序),先前副序列只有一符號,則把新數值[ci-1]插入,做為先前副序列之前的副序列上限度。在此實施例中,獲得[100]和[70,99]。
若ci<ci-1(非單調情況),先前副序列為[ci-1,ci]。易言之,通常在所有實施例中,若相鄰N副序列並無其從缺值長度,邊界位置即被置換。現時副序列之邊界可以更新。在實施例中,所得限度[70,90]更新為[72,90],即可得新的副序列限度[70,72]。以具有預定起初或然率模式之三個或二個算術解碼器,把符號解壓縮。當發生一副序列之終端符號時,新的解碼器即開始作業。然後可得三個或二個系列之解碼符號,置於副序列之妥當位置。須知雖圖上所示係關於八等分樹狀壓縮,但八等分樹狀壓縮以外之他型寫碼亦可構成,正如技術專家所熟知,凡此均在本發明精神和範圍內可想而知。此外,須知圖示係特別涉及第一和第二符號集S1,S2,惟他型符號集和/或其他符號即層系(例如有1,2或3位元設定於1之符號集S3)亦可構成,此為技術專家所熟知,凡此均在本發明精神和範圍內可想而知。若要寫碼之資料在不同段內有特別不同之統計分配,此舉尤真。
雖然已圖示、說明,並指出本發明應用於較佳具體例之基本新穎特點,惟須知凡技術專家均知所述裝置和方法,就所揭示裝設之形式和細節,及其操作,可進行各種省略、替代和改變,不違本發明之精神。雖然本發明已揭示關於三維網路模式,惟技術諄諄告誡均知所述方法和裝置可應用於任何資料壓縮方法,使用四等分樹狀、八等分樹狀,或可以比 並之類似方略,尤其是(但不限於)幾何學寫碼。實施例為空間點(即具有空間座標之點),例如地圖上之點,任何三維結構上之點,諸如此類。由於空間點是以其二維或三維座標展示,而樹狀結構把點間之關係編碼,實際上即為編碼之樹,本發明可用於編碼展示葉元件間關係之任何樹狀結構,以n維度座標檢定(包含n=1,2,3,4等),尤其是模式適應性熵寫碼。表明旨在此等元件之所有組合,以實質上同樣方式進行實質上同樣功能,達成同樣結果,均在本發明範圍內。從所述一具體例之元件改換到另一具體例,亦完全在所欲和熟知範圍內。
須知本發明純以舉例方法加以說明,其細節均可改變,不違悖本發明之範圍。
說明書和(如妥當)申請專利範圍以及附圖所揭示各特點,可單獨或以任何妥當組合方式提供,其特點可妥為以硬體、軟體,或二者之組合實施。申請專利範圍如出現之參照號碼只供圖示,對申請專利範圍無限制效應。
附註
[OG00]O.Devillers,P.Gandoin.Geometric compression for interactive transmission,in:IEEE Visualization,2000,pp.319-326
[PK05]J.L.Peng,C.-C.Jay Kuo,Geometry-guided progressive lossless 3D mesh coding with octree(OT)decomposition,ACM SIGGRAPH(ACM Transactions on Graphics 24(3)),609-616,2005
0,1,2,3‧‧‧親格
10,11,12,13‧‧‧子格
1010‧‧‧序列
81-86‧‧‧子格
91,92,93‧‧‧碼字
94‧‧‧邊界位置部位
95‧‧‧實際位元流
700‧‧‧編碼裝置
751‧‧‧符號界定模組
752‧‧‧決定模組
753‧‧‧決定模組
754‧‧‧編碼模組
754A‧‧‧第一碼編碼
754B‧‧‧第二碼編碼
754C‧‧‧第三碼編碼
755‧‧‧編碼模組
800‧‧‧解碼裝置
861‧‧‧解碼模組
862‧‧‧決定模組
864‧‧‧解碼模組
864A‧‧‧第一解碼模組
864B‧‧‧第二解碼模組
864C‧‧‧第三解碼模組
866‧‧‧重構和輸出模組
866B‧‧‧檢測模組
866C‧‧‧插入模組
51‧‧‧界定二進符號之至少第一和第二符號群組
52‧‧‧決定位元流內二個或以上之第一部位J1,J2、零個或以上之第二部份K1以及二個或以上之第三部位N1,N2,N3
53‧‧‧決定位元流內之至少一接續性部份H2
54‧‧‧把位元流編碼
54A‧‧‧第一編碼步驟
54B‧‧‧第二編碼步驟
54C‧‧‧第三編碼步驟
55‧‧‧把指示位元流內第一、第二和第三部位間邊界位置之數值C1編碼
61‧‧‧起頭解碼
62‧‧‧按照該控制資訊決定位元流內至少二個或以上之第一部位J1,J2各有第一符號群組S1之接續性符號
64‧‧‧把該接續性符號解碼
64A‧‧‧使用第一符號解碼器解碼成固定長度之符號
64B‧‧‧使用第二符號解碼器解碼成固定長度之符號
64C‧‧‧使用第三符號解碼器解碼成固定長度之符號
66‧‧‧按照該控制資訊之序列順序重整順序並提供該位元流第一、第二和第三部位之解碼符號
66A‧‧‧重新排序該第一、第二和第三部位
66B‧‧‧檢測至少一對數值c3,c4代表位元流第二部份H2具有被置換單調順序之邊界位置
66C‧‧‧插入邊界位置
C1‧‧‧指示位元流第一、第二和第三部位間之邊界位置
H1‧‧‧第一部份
H2‧‧‧第二部份
J1,J2‧‧‧位元流內之第一部位
K1‧‧‧位元流內之第二部位
N1,N2,N3‧‧‧位元流內之第三部位
LN2‧‧‧第三部位N2之長度
第1圖表示二維情況下二等分樹狀幾何學寫碼原理;第2圖表示二維情況下四等分樹狀幾何學寫碼原理;第3圖表示位元流之基本結構;第4圖為代表三維網路模式之位元流例;第5圖為編碼方法之流程圖; 第6圖為解碼方法之流程圖;第7圖表示把位元流分裂為第一、第二和第三部位之方法例;第8圖表示八等分樹狀植基式三維幾何學寫碼之原理,與四等分樹狀植基式二維幾何學寫碼比較;第9圖表示位元流結構之諸例;第10圖表示位元流頭標例之結構;第11圖為位元流編碼裝置700之方塊圖;第12圖為位元流解碼裝置800之方塊圖。
C1‧‧‧指示位元流第一、第二和第三部位間之邊界位置
H1‧‧‧第一部份
H2‧‧‧第二部份
J1,J2‧‧‧位元流內之第一部位
K1‧‧‧位元流內之第二部位
N2‧‧‧位元流內之第三部位
LN2‧‧‧第三部位N2之長度

Claims (15)

  1. 一種位元流之編碼方法,包括步驟為:界定(51)二進符號之至少第一和第二符號群組,其中第一符號群組(S1)係第二符號群組(S2)之子集;決定(52)位元流內二個或以上之第一部位(J1,J2)、零個或以上之第二部位(K),和二個或以上之第三部位(N1,N2,N3),其中各第一部位有第一符號群組(S1)之至少第一預定數(Th1)接續性符號,各第二部位有第二符號群組之至少第二預定數(Th2)接續性符號,又其中位元流之其餘部份係第三部位(N1,N2,N3);決定(53)位元流內只包括第一和第三部位(J1,J2,N2)之部份(H2);編碼(54)位元流,其中該第一部位使用第一碼編碼(54A),該第二部位使用第二碼編碼(54B),而該第三部位使用第三碼編碼(54C);以及編碼(55)指示位元流內第一、第二和第三部位間邊界位置之數值(C1),其中在只包括第一和第三部位之該部份(H2)內,若第三部位(N2)有預定長度,則第一部位(J1,J2)和相鄰第三部位(N2)間邊界位置之編碼,即被跳越,若第三部位(N2)為預定長度以外之不同長度(LN2),則以隱含式編碼者。
  2. 如申請專利範圍第1項之方法,其中第一符號群組(S1)包括有一個位元設定於1而其餘位元設定於0之二進符號,第二符號群組(S2)包括有一個或二個位元設定於1而其餘位元設定於0之二進符號者。
  3. 如申請專利範圍第1或2項之方法,其中位元流代表空間資料結構之被巡訪八等分樹狀表示方式,尤其三維網路模式者。
  4. 如申請專利範圍第1-3項之任一項方法,其中編碼(54)包括基於第一符號集(Smb1)使用第一碼之第一編碼 (54A),基於第二符號集(Smb2)使用第二碼之第二編碼(54B),和基於第三符號集(Smb3)使用第三碼之第三編碼(54C),又其中第一、第二和第三編碼(54A,54B,54C)至少一部份係同時進行者。
  5. 如申請專利範圍第1-4項之任一項方法,其中解碼器控制資訊係在位元流起頭編碼,解碼器控制資訊包括指示位元流第一、第二和第三部位間邊界位置之該數值(C1)者。
  6. 如申請專利範圍第1-5項之任一項方法,其中位元流內第一、第二和第三部位之邊界位置或長度,編碼成一序列數值(cmax,...,c0),其中對於位元流第一部份(H1)和第二部份(H2)第一部位,若無邊界被跳越,代表邊界位置之數值即按單調順序編碼,又其中第一部位(J1,J2)和相鄰第三部位(N2)間邊界位置之該項隱含編碼,包括置換該第一部位(J1)之邊界順序(即下限和上限邊界)者。
  7. 如申請專利範圍第1-6項之任一項方法,其中位元流第三部位(N2)之該預定長度(LN2)係一者。
  8. 一種位元流之解碼方法,包括步驟為:從位元流起頭解碼(61)控制資訊(C1)[包括第一、第二和第三部位之長度];按照該控制資訊決定(62)位元流內至少二個或以上第一部位(J1,J2),各有第一符號群組(S1)之接續性符號;零個或以上之第二部位(K1),各有第二符號群組(S2)之接續性符號;以及二個或以上之第三部位(N1,N2,N3),各有第三符號群組(S3)之接續性符號;其中該第三部位(N1)和該零個或以上第二部位(K1)之至少其一,係在位元流之接續性第一部份(H1),而該第三部位(N2)和該至少二個第一部位(J1,J2)之至少其一,係在位元流之接續性第二部份(H2);把至少二個或以上第一部位(J1,J2)之該接續性符號,使用第一符號解碼器[基於第一符號群組(S1)],解碼(64A)成 固定長度之符號;若至少一個第二部位(K1)已決定,把零個或以上第二部位(K1)之該接續性符號,使用第一符號解碼器[基於第二符號群組(S2),其中第二符號群組(S2)包括該第一符號群組(S1)之符號和額外符號],解碼(64B)成該固定長度之符號;把該至少二個或以上第三部位(N1,N2,N3)之符號,使用第三符號解碼器[基於第三符號群組(S3)],解碼(64C)成該固定長度之符號,其中第三符號群組(S3)只包括在該第二符號群組(S2)內不包括之符號;以及按照該控制資訊,按序列順序提供(66)位元流該第一、第二和第三部位之解碼符號者。
  9. 如申請專利範圍第7項之方法,其中第一符號群組包括有一個位元設定於1而其餘位元為0之二進符號,第二符號群組包括有一個或二個位元設定於1而其餘位元為0之二進符號者。
  10. 如申請專利範圍第7或8項之方法,其中位元流代表三維網路模式之受巡訪八等分樹狀表示方式者。
  11. 如申請專利範圍第7-9項之任一項方法,其中控制資訊(C1)從位元流起頭之解碼步驟(61),包括把指示位元流內第一、第二和第三部位的邊界位置之序列數值(cmax,...,c0)解碼,其中代表位元流第一部份(H1)邊界位置之數值,呈單調順序,又其中代表位元流第二部份(H2)第一部位(J1,J2)邊界位置之數值,呈單調順序,又包括步驟為:檢測(66B)至少一對數值(c3,c4),代表位元流第二部份(H2)內之邊界位置,呈被置換之單調順序;把長度係按照該至少一對數值(c3,c4)間相差的該第一部位(J1,J2)之一,按照該數值之一,插入(66C)於邊界位置者。
  12. 如申請專利範圍第7-10項之任一項方法,其中該至少 二個或以上第一部位(J1,J2)之解碼(64A),若至少一個第二部位(K1)已決定,該零個或以上第二部位(K1)之解碼(64B),以及該二個或以上第三部位(N1,N2,N3)之解碼(64C),至少部份同時進行(至少部份時間重疊),又其中位元流第一、第二和第三部位解碼符號之提供步驟(66),包括重新排序(66A)該第一、第二和第三部位者。
  13. 一種位元流之編碼裝置(700),包括:界定模組(751),界定二進符號之至少第一和第二符號群組,其中第一符號群組(S1)係第二符號群組(S2)之子集;第一決定模組(752),決定位元流內二個或以上之第一部位(J1,J2)、零個或以上之第二部位(K1),以及二個或以上之第三部位(N1,N2,N3),其中各第一部位有第一符號群組(S1)之至少第一預定數(Th1)接續性符號,各第二部位有第二符號群組之至少第二預定數(Th2)接續性符號,又其中位元流之其餘部份係第三部位(N1,N2,N3);第二決定模組(753),決定位元流內只包括第一和第三部位(J1,J2,N2)之部份;第一編碼模組(754),以編碼位元流,其中該第一部位使用第一碼在第一副編碼器(754A)內編碼,該第二部位使用第二碼在第二副編碼器(754B)內編碼,而該第三部位使用第三碼在第三副編碼器(754C)內編碼;第二編碼模組(755),對指示位元流內第一、第二和第三部位之邊界位置的數值(C1)編碼,其中第三部位(N2)具有預定長度,則在只包括第一和第三部位之該部份(H2)內,第一部位(J1,J2)和相鄰第三部位(N2)間邊界位置之編碼,即被跳越,而若第三部位(N2)具預定長度以外之不同長度(LN2),則以隱含方式編碼者。
  14. 一種位元流之解碼裝置(800),包括:第一解碼模組(861),從位元流起頭解碼控制資訊 (C1);第一決定模組(862),按照該控制資訊,決定位元流內至少二個或以上第一部位(J1,J2),各有第一符號群組(S1)之接續性符號;零個或以上之第二部位(K1),各有第二符號群組(S2)之接續性符號;以及二個或以上之第三部位(N1,N2,N3),各有第三符號群組(S3)之接續性符號,其中該第三部位和該零個或以上第二部位(K1)之至少其一,係在位元流之接續性第一部份(H1),而該第三部位(N2)和該至少二個第一部位(J1,J2)之至少其一,係在位元流之接續性第二部份(H2);第二解碼模組(864)包括:第一解碼副模組(864A),使用第一符號解碼器,基於第一符號群組(S1),把至少二個或以上第一部位(J1,J2)之接續性符號,解碼成固定長度之符號;第二解碼副模組(864B),若至少一個第二部位(K1)已決定,使用第一符號解碼器,把零個或以上之第二部位(K1)之接續性符號,解碼成該固定長度之符號;第三解碼副模組(864C),使用第三符號解碼器[基於第三符號群組(S3)],把該二個或以上第三部位(N1,N2,N3),解碼成該固定長度之符號,其中第三符號群組(S3)只包括在該第二符號群組(S2)內不包括之符號;以及重構和輸出模組(866),按照該控制順序,以序列順序,提供位元流的該第一、第二和第三部位之解碼符號者。
  15. 如申請專利範圍第14項之裝置,其中從位元流起頭解碼控制資訊(C1)用之解碼模組(861),進行指示位元流內第一、第二和第三部位邊界位置的一序列數值(cmax,...,c0)之解碼,其中代表位元流第一部份(H1)邊界位置之數值,呈單調順序,又其中代表位元流第二部份(H2)第一部位(J1,J2)邊界位置之數值,呈單調順序,而解碼模組(861)又包括: 檢測模組(866B),檢測至少一對數值(c3,c4),代表位元流第二部份(H2)內已置換單調順序之邊界位置;插入模組(866C),把長度係按照該至少一對數值(c3,c4)間相差的該第一部位(J1,J2)之一,按照該數值之一,插入於邊界位置者。
TW101122127A 2011-07-18 2012-06-21 位元流之編碼方法和裝置以及解碼方法和裝置 TW201306495A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/077279 WO2013010317A1 (en) 2011-07-18 2011-07-18 Method for adaptive entropy coding of tree structures

Publications (1)

Publication Number Publication Date
TW201306495A true TW201306495A (zh) 2013-02-01

Family

ID=47557641

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101122127A TW201306495A (zh) 2011-07-18 2012-06-21 位元流之編碼方法和裝置以及解碼方法和裝置

Country Status (7)

Country Link
US (1) US9532056B2 (zh)
EP (1) EP2734980B1 (zh)
JP (1) JP5936687B2 (zh)
KR (1) KR101862438B1 (zh)
CN (1) CN103814396B (zh)
TW (1) TW201306495A (zh)
WO (1) WO2013010317A1 (zh)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5932051B2 (ja) 2011-11-07 2016-06-08 トムソン ライセンシングThomson Licensing 予測位置復号
CN104115496A (zh) 2012-02-09 2014-10-22 汤姆逊许可公司 基于八叉树分解的三维模型的高效压缩
US20140006536A1 (en) * 2012-06-29 2014-01-02 Intel Corporation Techniques to accelerate lossless compression
GB2563019B (en) * 2017-05-29 2021-07-28 Canon Kk Improved valence-based encoding and decoding of connectivity data in a 3D model
US11818401B2 (en) 2017-09-14 2023-11-14 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US10897269B2 (en) 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
US10861196B2 (en) 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10909725B2 (en) 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
US10699444B2 (en) * 2017-11-22 2020-06-30 Apple Inc Point cloud occupancy map compression
EP3514969B1 (en) * 2018-01-18 2021-08-04 BlackBerry Limited Methods and devices using direct coding in point cloud compression
JP7168591B2 (ja) * 2018-01-26 2022-11-09 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US10939129B2 (en) 2018-04-10 2021-03-02 Apple Inc. Point cloud compression
US11010928B2 (en) 2018-04-10 2021-05-18 Apple Inc. Adaptive distance based point cloud compression
US10909727B2 (en) 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
US10909726B2 (en) 2018-04-10 2021-02-02 Apple Inc. Point cloud compression
JP7151141B2 (ja) * 2018-04-12 2022-10-12 富士フイルムビジネスイノベーション株式会社 符号化装置、復号装置及びプログラム
WO2019235587A1 (ja) * 2018-06-08 2019-12-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
EP3816940A4 (en) * 2018-06-27 2021-09-08 Panasonic Intellectual Property Corporation of America METHOD FOR CODING THREE-DIMENSIONAL DATA, METHOD FOR DECODING THREE-DIMENSIONAL DATA, DEVICE FOR CODING THREE-DIMENSIONAL DATA AND DEVICE FOR DECODING THREE-DIMENSIONAL DATA
US11017566B1 (en) 2018-07-02 2021-05-25 Apple Inc. Point cloud compression with adaptive filtering
US11202098B2 (en) 2018-07-05 2021-12-14 Apple Inc. Point cloud compression with multi-resolution video encoding
US11012713B2 (en) 2018-07-12 2021-05-18 Apple Inc. Bit stream structure for compressed point cloud data
CN112424833A (zh) * 2018-07-13 2021-02-26 松下电器(美国)知识产权公司 三维数据编码方法、三维数据解码方法、三维数据编码装置、以及三维数据解码装置
WO2020050343A1 (ja) * 2018-09-05 2020-03-12 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
US11386524B2 (en) 2018-09-28 2022-07-12 Apple Inc. Point cloud compression image padding
US11367224B2 (en) 2018-10-02 2022-06-21 Apple Inc. Occupancy map block-to-patch information compression
US11430155B2 (en) 2018-10-05 2022-08-30 Apple Inc. Quantized depths for projection point cloud compression
GB2578769B (en) 2018-11-07 2022-07-20 Advanced Risc Mach Ltd Data processing systems
US11348284B2 (en) 2019-01-08 2022-05-31 Apple Inc. Auxiliary information signaling and reference management for projection-based point cloud compression
US10912625B2 (en) * 2019-01-23 2021-02-09 Proprio, Inc. Aligning pre-operative scan images to real-time operative images for a mediated-reality view of a surgical site
GB2583061B (en) * 2019-02-12 2023-03-15 Advanced Risc Mach Ltd Data processing systems
US11057564B2 (en) 2019-03-28 2021-07-06 Apple Inc. Multiple layer flexure for supporting a moving image sensor
CN112398484B (zh) 2019-08-15 2024-04-23 华为技术有限公司 一种编码方法及相关设备
US11627314B2 (en) 2019-09-27 2023-04-11 Apple Inc. Video-based point cloud compression with non-normative smoothing
US11562507B2 (en) 2019-09-27 2023-01-24 Apple Inc. Point cloud compression using video encoding with time consistent patches
US11538196B2 (en) 2019-10-02 2022-12-27 Apple Inc. Predictive coding for point cloud compression
US11895307B2 (en) 2019-10-04 2024-02-06 Apple Inc. Block-based predictive coding for point cloud compression
US11798196B2 (en) 2020-01-08 2023-10-24 Apple Inc. Video-based point cloud compression with predicted patches
US11625866B2 (en) 2020-01-09 2023-04-11 Apple Inc. Geometry encoding using octrees and predictive trees
US11620768B2 (en) 2020-06-24 2023-04-04 Apple Inc. Point cloud geometry compression using octrees with multiple scan orders
US11615557B2 (en) 2020-06-24 2023-03-28 Apple Inc. Point cloud compression using octrees with slicing
US12020378B2 (en) * 2020-08-18 2024-06-25 Qualcomm Incorporated Compressed geometry rendering and streaming
US11948338B1 (en) 2021-03-29 2024-04-02 Apple Inc. 3D volumetric content encoding using 2D videos and simplified 3D meshes
CN113595896B (zh) * 2021-08-05 2022-04-05 河南大学 一种基于vlc链路的混合数据中心网络的多路由通信方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6674911B1 (en) 1995-09-14 2004-01-06 William A. Pearlman N-dimensional data compression using set partitioning in hierarchical trees
KR100294927B1 (ko) 1998-08-29 2001-07-12 윤종용 점진적인 삼차원 메쉬 정보의 부호화 방법 및 그 장치
CN1102271C (zh) 1998-10-07 2003-02-26 国际商业机器公司 具有习惯用语处理功能的电子词典
CN1160918C (zh) 2000-10-21 2004-08-04 三星电子株式会社 在移动通信系统中传输分组数据
EP1246385B1 (en) 2001-03-26 2014-04-30 LG Electronics Inc. Method of transmitting or receiving data packet in packet data communication system using hybrid automatic repeat request
EP2282310B1 (en) 2002-09-04 2012-01-25 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
KR100695142B1 (ko) * 2004-03-08 2007-03-14 삼성전자주식회사 적응적 2의 n 제곱 진트리 생성방법 및 이를 이용한 3차원 체적 데이터 부호화/복호화 방법 및 장치
KR20070029756A (ko) 2004-06-02 2007-03-14 코닌클리케 필립스 일렉트로닉스 엔.브이. 인코딩 및 디코딩 장치 및 그 방법
CN100469144C (zh) * 2005-09-02 2009-03-11 上海乐金广电电子有限公司 熵编码器表格变换方法
KR101100207B1 (ko) * 2005-11-08 2011-12-28 엘지전자 주식회사 디지털 방송 시스템 및 처리 방법
US7586424B2 (en) * 2006-06-05 2009-09-08 Donald Martin Monro Data coding using an exponent and a residual
JP4893957B2 (ja) * 2006-08-07 2012-03-07 富士ゼロックス株式会社 符号化装置、復号化装置、符号化方法及びプログラム
CN1946180B (zh) * 2006-10-27 2010-05-12 北京航空航天大学 一种基于Octree的三维模型压缩编码方法
KR100969764B1 (ko) * 2008-02-13 2010-07-13 삼성전자주식회사 메쉬 모델로 구현된 3차원 데이터의 부호화 및 복호화 방법
BRPI0922846A2 (pt) * 2008-12-03 2018-01-30 Nokia Corp alternando entre modos de codificação do coeficiente dct
EP2214315A1 (en) * 2009-01-30 2010-08-04 Thomson Licensing Method and device for encoding a bit sequence
US8767823B2 (en) * 2011-03-30 2014-07-01 Industrial Technology Research Institute Method and apparatus for frame memory compression
US9035807B2 (en) * 2011-08-25 2015-05-19 Thomson Licensing Hierarchical entropy encoding and decoding
WO2013067674A1 (en) 2011-11-07 2013-05-16 Thomson Licensing Predictive position encoding
CN104115496A (zh) 2012-02-09 2014-10-22 汤姆逊许可公司 基于八叉树分解的三维模型的高效压缩
US9734595B2 (en) * 2014-09-24 2017-08-15 University of Maribor Method and apparatus for near-lossless compression and decompression of 3D meshes and point clouds

Also Published As

Publication number Publication date
JP5936687B2 (ja) 2016-06-22
EP2734980B1 (en) 2018-03-21
WO2013010317A1 (en) 2013-01-24
EP2734980A1 (en) 2014-05-28
CN103814396A (zh) 2014-05-21
US9532056B2 (en) 2016-12-27
JP2014527735A (ja) 2014-10-16
KR20140042864A (ko) 2014-04-07
KR101862438B1 (ko) 2018-05-29
CN103814396B (zh) 2017-03-08
EP2734980A4 (en) 2016-04-27
US20140185668A1 (en) 2014-07-03

Similar Documents

Publication Publication Date Title
TW201306495A (zh) 位元流之編碼方法和裝置以及解碼方法和裝置
US9035807B2 (en) Hierarchical entropy encoding and decoding
KR100845090B1 (ko) 화상 부호화 장치, 화상 복호 장치 및 그것들의 제어 방법
CN103067022B (zh) 一种整型数据无损压缩方法、解压缩方法及装置
KR20220029595A (ko) 포인트 클라우드 인코딩과 디코딩 방법, 인코더, 디코더 및 컴퓨터 저장 매체
CN108768403A (zh) 基于lzw的无损数据压缩、解压方法及lzw编码器、解码器
US20120130965A1 (en) Data compression method
CN112399181B (zh) 图像编解码的方法、装置和存储介质
US20220005229A1 (en) Point cloud attribute encoding method and device, and point cloud attribute decoding method and devcie
JP4037875B2 (ja) コンピュータグラフィックスデータ符号化装置、復号化装置、符号化方法、および、復号化方法
KR101023536B1 (ko) 데이터 무손실 압축 방법
Al-Hashemi et al. A new lossless image compression technique based on Bose, Chandhuri and Hocquengham (BCH) codes
CN104682966A (zh) 列表数据的无损压缩方法
Asolkar et al. Review of data compression and different techniques of data compression
KR100916535B1 (ko) 결정 비트 부호화/복호화 장치, 방법 및 그에 따른프로그램이 기록된 기록매체
KR20120013945A (ko) 각각의 심벌이 세 개 이상의 가능한 심벌 값 중 하나를 가질 수 있는 심벌 시퀀스들의 인코딩 및 디코딩에 대한 방법 및 장치
Sil et al. Implementation of Hybrid Wavelet Transform for Adaptive Lossless Image Compression
Durad et al. Parallel lossless image compression using MPI
JP2010103933A (ja) 符号化装置、復号装置、及び画像処理システム
Jenny et al. A modified embedded zero-tree wavelet method for medical image compression
KOCER et al. Analysing Trends and Applications in Data Compression Techniques
Saha et al. Lossless compression of JPEG and GIF files through lexical permutation sorting with Greedy Sequential Grammar Transform based compression
Argyriou DNA based image coding
Kim et al. A New Method of Lossless Universal Data Compression
CODE DOUBLE COMPRESSION OF TEST DATA USING