JP4138391B2 - Variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method - Google Patents

Variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method Download PDF

Info

Publication number
JP4138391B2
JP4138391B2 JP2002220369A JP2002220369A JP4138391B2 JP 4138391 B2 JP4138391 B2 JP 4138391B2 JP 2002220369 A JP2002220369 A JP 2002220369A JP 2002220369 A JP2002220369 A JP 2002220369A JP 4138391 B2 JP4138391 B2 JP 4138391B2
Authority
JP
Japan
Prior art keywords
variable length
encoding
decoding
coding
index
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2002220369A
Other languages
Japanese (ja)
Other versions
JP2004104159A (en
Inventor
和夫 杉本
稔 栄藤
悟 安達
禎篤 加藤
充 小林
博幸 山口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2002220369A priority Critical patent/JP4138391B2/en
Publication of JP2004104159A publication Critical patent/JP2004104159A/en
Application granted granted Critical
Publication of JP4138391B2 publication Critical patent/JP4138391B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法に関する。
【0002】
【従来の技術】
画像や音声などのデータは、文字データと比較して膨大な容量を有するため、従来、これらのデータを伝送及び蓄積するために高能率な符号化が行われてきた。図1は、従来技術における画像や音声などのデータ信号の伝送・蓄積方法を概略的に示す図である。図1において、画像や音声などのデータ信号は、まずAD変換器100によって、AD(Analog to Digital)変換が行われ、入力デジタルデータ系列200となる。
【0003】
続いて、入力デジタルデータ系列200は、情報源符号化器101によって情報圧縮が行われ、冗長度の低い送信圧縮データ201に符号化される。送信圧縮データ201には、通信路符号化器102により、伝送媒体あるいは記憶媒体の信頼性向上を目的とした通信路符号化が施された後に、伝送データ202として出力される。伝送データ202は、伝送媒体あるいは記憶媒体103に伝送又は記憶される。
【0004】
伝送媒体あるいは記憶媒体103に入力された伝送データ202は、通信路復号器104により通信路復号が行われて受信圧縮データ203に復号される。受信圧縮データ203は、情報源復号器105によって復号され出力デジタルデータ系列204が生成される。更に、出力デジタルデータ系列204は、DA変換器106によってDA(Digital to Analog)変換が行われた結果、画像や音声などのデータ信号が復元される。
【0005】
ここで、情報圧縮を目的とした情報源符号化器101においては、入力された情報源に関する冗長度(例えば、空間的冗長度、時間的冗長度、構造的・知識的冗長度など)が低減された符号化シンボルに変換される。この符号化シンボルには、各符号化シンボルの出現確率の偏りによって生じる冗長度を低減するために、エントロピー符号化が行われる。
【0006】
従来のエントロピー符号化としては、例えば可変長符号化がある。可変長符号化においては、符号化シンボルの出現確率に応じて、割り当てられる可変長符号の相対的な長さが異なる。すなわち、出現確率の高い符号化シンボルに対しては短い可変長符号が割り当てられ、出現確率の低い符号化シンボルに対しては長い可変長符号が割り当てられる。これにより、符号化シンボルに含まれるエントロピー的冗長度が低減される。
【0007】
図2は、可変長符号生成装置300の機能的構成を示すブロック図である。図2に示す様に、符号化対象となるシンボルのインデックス番号である符号化インデックスの入力に伴い、予め設定された可変長符号化テーブルが記憶されている可変長符号化テーブル記憶部301から可変長符号化テーブルが符号出力部302に入力される。そして、符号出力部302に入力された可変長符号化テーブルの符号化インデックスに対応する符号が可変長符号として出力される。
【0008】
また、上述の様に符号化された可変長符号は、可変長復号によって可逆的に、符号化されたシンボルのインデックス番号に復号することができる。図3は、可変長復号装置400の機能的構成を示すブロック図である。可変長復号装置400では、復号対象となる可変長符号が入力されると、予め設定された符号化側と同一の可変長符号化テーブルが記憶されている可変長符号化テーブル記憶部401から、可変長符号化テーブルがインデックス出力部402に入力される。そして、インデックス出力部402に入力された可変長符号と同一の、可変長符号化テーブルにおける符号に対応するインデックス番号が、復号インデックスとして出力される。
【0009】
ところで、符号化シンボルは、その種類やコンテキストに応じて出現確率が異なるため、それぞれの符号化シンボルの種類に応じて異なる可変長符号化テーブルを備えることによって符号化効率を高めることができる。例えば、ISO(International Organization for Standardization)のIEC(International Electrotechnical Commission)によって国際標準化されたMPEG(Moving Picture Experts Group)−4準拠の動画像符号化方式においては、DCT(Discrete Cosine Transform)係数に対応して、符号化モードに応じて異なる可変長符号化テーブルを保持することによって符号化効率を高めている。
【0010】
この反面、符号化シンボルの種類に応じて異なる可変長符号化テーブルを備えると、その可変長符号化テーブルを保持するためのメモリ容量が多くなる。このため、例えば動画像の高能率圧縮方式としてISOのIECとITU−T(International Telecommunication Union-Telecommunication sector)とが共同で標準化作業を進めているJVT(Joint Video Team)によるH.26L動画像符号化方式では、特定の符号生成規則に則って生成される構造的可変長符号(「exp-Golomb符号」と称される。)を用いることによって、可変長符号化テーブルを保持するためのメモリ容量が少量で済むようにしている。
【0011】
以下、構造的可変長符号の一例としてのGolomb符号について説明する。図4は、Golomb符号の構成を示す概念図である。図4に示す様に、Golomb符号は、ノード番号i=0,1,2,3,…により表される無限数のノードを有する。また、Golomb符号はツリー構造を有し、これら各ノードにおいて、無限数のノードを有するツリーと有限数のノードで終端するツリーBとに分岐する。
【0012】
図5は、図4に示したツリー構造を有するGolomb符号において、Golomb符号のツリーBの符号数Pと、インデックス番号とが対応付けて格納される可変長符号化テーブルを示す図である。図5では、ツリーBが無の場合(符号数P=0)、1ビット固定長符号の場合(符号数P=2)、及び2ビット固定長符号の場合(符号数P=4)を例示する。かかるGolomb符号では、ツリーBの符号数Pに応じて異なる特性を有する符号を容易に生成することができる。
【0013】
また、図6は、図4に示したツリー構造を有するGolomb符号において、ツリーBの符号数Pが2でツリーBが存在し始めるノード番号Qと、インデックス番号とが対応付けて格納される可変長符号化テーブルを示す図である。図6では、ノード番号Qがそれぞれ0,1,2の場合を例示する。かかるGolomb符号では、ツリーBが存在し始めるノード番号Qの値に応じて異なる特性を有する符号を容易に生成できる。
【0014】
また、図5及び図6に示す様に、任意のインデックス番号に対応するGolomb符号の符号長が、そのインデックス番号より大きいインデックス番号に対応するGolomb符号の符号長よりも大きくならない様に、可変長符号化テーブルを構成することができる。以下、インデックス番号が小さい程、符号長も小さくなるこの様な可変長符号を「順序正しい可変長符号」と記す。このように、構造的可変長符号は無限のシンボル数を有し、かつ異なる特性を有する可変長符号化テーブルを少ないメモリ容量で実現できる。
【0015】
【発明が解決しようとする課題】
ここで、図7は、符号化シンボル数が14の場合において、Golomb符号のツリーBの符号数Pが4、ツリーBが存在し始めるノード番号Qが0の場合の可変長符号化テーブルを示す図である。図7に示す様に、出現する符号化シンボル数が有限個に限られている場合に、従来の構造的可変長符号によって可変長符号化テーブルを構成すると、決して使用されない符号空間(例えば、図7の“1110”又は“1111”から始まる符号)が存在する。その結果、符号化効率を損するという問題点があった。
【0016】
以下、可変長符号化テーブル内の符号で全ての符号空間を隙間無く埋める可変長符号を「飽和する可変長符号」と記す。図7の可変長符号化テーブルが飽和するように修正を加えるとすれば、例えば、インデックス番号13及び14の符号に他の符号と区別できる符号を割り当てればよい。
【0017】
図8は、かかる修正が加えられた、飽和するシンボル数14の可変長符号化テーブルの一例として、インデックス番号13に符号「1110」が、インデックス番号14に符号「1111」が割り当てられた可変長符号化テーブルを示す図である。図8に示す様に、該可変長符号化テーブルは飽和するが、順序正しい可変長符号ではない。このように、飽和しかつ順序正しい有限シンボル数の可変長符号化テーブルを生成する手段が無かったため、有限数の符号化シンボルを効率よく符号化できないという問題があった。
【0018】
そこで、本発明の課題は、効率の良い可変長符復号を可能とする可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法を提供することである。
【0019】
【課題を解決するための手段】
上記課題を解決するために、本発明に係る可変長符号生成装置は、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記符号化インデックス入力手段により入力された符号化インデックスとに基づいてテーブルサイズ残量及びインデックス残量を算出し、前記テーブルサイズ残量及び前記インデックス残量に基づいて出力インデックス及び出力テーブル番号を決定する出力決定を行うと共に、前記テーブルサイズ残量及び前記インデックス残量を更新する残量更新を行い、前記インデックス残量が0になるまで前記出力決定及び残量更新を繰り返すインデックス算出手段と、前記インデックス算出手段により決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択手段と、前記テーブル選択手段により選択された符号化基本テーブルと、前記インデックス算出手段により決定された出力インデックスとに基づいて、可変長符号を出力する符号出力手段とを備える。
【0020】
本発明に係る可変長符号生成装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記有限基本テーブル記憶手段は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として記憶し、前記テーブル選択手段は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択する。
【0021】
本発明に係る可変長符号生成装置は、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成手段と、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出手段と、前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブル記憶手段または前記無限符号化テーブル生成手段から選択するテーブル選択手段と、前記テーブル選択手段により選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力手段とを備える。
【0022】
本発明に係る可変長符号生成装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記有限基本テーブル記憶手段は、特性ごとに分類された一または複数の有限基本テーブルを有限基本テーブル群として記憶し、前記無限符号化テーブル生成手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、前記インデックス算出手段は、前記符号化特性および前記テーブルサイズおよび前記符号化インデックスに基づいて、前記出力テーブル番号および出力インデックス番号を決定して出力する。
【0023】
本発明に係る可変長復号装置は、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、復号対象となる可変長符号を入力する可変長符号入力手段と、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された可変長符号とに基づいて、復号対象符号及び出力テーブル番号を決定する復号データ算出手段と、前記復号データ算出手段により決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択手段と、前記テーブル選択手段により選択された符号化基本テーブルと、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段とを備える。
【0024】
本発明に係る可変長復号装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記有限基本テーブル記憶手段は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として記憶し、前記テーブル選択手段は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択する。
【0025】
本発明に係る可変長復号装置は、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力手段と、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを復号する手段を備える有限基本テーブル復号手段と、有限インデックス数では飽和しない可変長符号化テーブルを復号する手段を備える無限符号化テーブル復号手段と、前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出手段と、前記復号データ算出手段により決定された復号対象テーブル番号に応じて、前記有限基本テーブル復号手段または前記無限符号化テーブル復号手段からテーブル復号手段を選択するテーブル復号手段選択手段と、前記テーブル復号手段選択手段により選択されたテーブル復号手段と、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段とを備える。
【0026】
本発明に係る可変長復号装置において、より好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記有限基本テーブル復号手段は、特性ごとに分類された複数の有限基本テーブル復号手段を備え、前記無限符号化テーブル復号手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号する手段を備え、前記復号データ算出手段は、前記符号化特性および前記テーブルサイズおよび前記入力可変長符号に基づいて、前記復号対象符号および前記復号対象テーブル番号を決定して出力する。
【0027】
本発明に係る可変長符号生成方法は、可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを有限基本テーブル記憶手段に記憶する有限基本テーブル記憶ステップと、前記可変長符号生成装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記符号化インデックス入力ステップにて入力された符号化インデックスとに基づいてテーブルサイズ残量及びインデックス残量を算出し、前記テーブルサイズ残量及び前記インデックス残量に基づいて出力インデックス及び出力テーブル番号を決定する出力決定を行うと共に、前記テーブルサイズ残量及び前記インデックス残量を更新する残量更新を行い、前記インデックス残量が0になるまで前記出力決定及び残量更新を繰り返すインデックス算出ステップと、前記可変長符号生成装置が、前記インデックス算出ステップにて決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択ステップと、前記可変長符号生成装置が、前記テーブル選択ステップにて選択された符号化基本テーブルと、前記インデックス算出ステップにて決定された出力インデックスとに基づいて、可変長符号を出力する符号出力ステップとを含む。
【0028】
本発明に係る可変長符号生成方法において好ましくは、前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記有限基本テーブル記憶ステップでは、前記可変長符号生成装置は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、前記テーブル選択手ステップでは、前記可変長符号生成装置は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択する。
【0029】
本発明に係る可変長符号生成方法は、可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶ステップと、前記可変長符号生成装置が、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成ステップと、前記可変長符号生成装置が、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出ステップと、前記可変長符号生成装置が、前記出力テーブル番号に対応する可変長符号化テーブルを、前記有限基本テーブル記憶ステップまたは前記無限符号化テーブル生成ステップにて選択するテーブル選択ステップと、前記可変長符号生成装置が、前記テーブル選択ステップにて選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号化出力ステップとを含む。
【0030】
本発明に係る可変長符号生成方法において好ましくは、前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記有限基本テーブル記憶ステップでは、前記可変長符号生成装置は、特性ごとに分類された一または複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、前記無限符号化テーブル生成ステップでは、前記可変長符号生成装置は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、前記インデックス算出ステップでは、前記可変長符号生成装置は、前記符号化特性および前記テーブルサイズおよび前記符号化インデックスに基づいて、前記出力テーブル番号および出力インデックス番号を決定して出力する。
【0031】
本発明に係る可変長復号方法は、可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長復号装置が、復号対象となる可変長符号を入力する可変長符号入力ステップと、前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを有限基本テーブル記憶手段に記憶する有限基本テーブル記憶ステップと、前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された可変長符号とに基づいて、復号対象符号及び出力テーブル番号を決定する復号データ算出ステップと、前記可変長復号装置が、前記復号データ算出ステップにて決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択ステップと、前記可変長復号装置が、前記テーブル選択ステップにて選択された符号化基本テーブルと、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップとを含む。
【0032】
本発明に係る可変長復号方法において好ましくは、可変長復号装置が符号化特性を入力する符号化特性入力ステップを更に含み、前記有限基本テーブル復号ステップでは、前記可変長復号装置が特性ごとに分類された複数の有限基本テーブルを復号するステップを含み、前記無限符号化テーブル復号ステップでは、前記可変長復号装置が前記符号化特性に応じて特性の異なる無限符号化テーブルを復号するステップを含み、前記復号データ算出ステップでは、前記可変長復号装置は、前記符号化特性および前記テーブルサイズおよび前記入力可変長符号に基づいて、前記復号対象符号および前記復号対象テーブル番号を決定して出力する。
【0033】
本発明に係る可変長復号方法において、前記可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長復号装置が、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力ステップと、前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを復号するステップを含む有限基本テーブル復号ステップと、前記可変長復号装置が、有限インデックス数では飽和しない可変長符号化テーブルを復号するステップを含む無限符号化テーブル復号ステップと、前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出ステップと、前記可変長復号装置が、前記復号データ算出ステップにて決定された復号対象テーブル番号に応じて、前記有限基本テーブル復号ステップまたは前記無限符号化テーブル復号ステップにてテーブル復号手段を選択するテーブル復号手段選択ステップと、前記可変長復号装置が、前記テーブル復号手段選択ステップにて選択されたテーブル復号手段と、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップとを含む。
【0034】
本発明に係る可変長復号方法において、より好ましくは、前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記有限基本テーブル記憶ステップでは、前記可変長復号装置は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、前記無限符号化テーブル生成ステップでは、前記可変長復号装置は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、前記テーブル選択ステップでは、前記可変長復号装置は、前記符号化特性に応じて、前記有限基本テーブル記憶手段に記憶されている有限基本テーブル群、又は、前記無限符号化テーブル生成ステップにて生成された無限符号化テーブルから、有限基本テーブルを選択する。
【0035】
本発明に係る可変長符号生成装置において、より好ましくは、前記インデックス算出手段は、前記残量更新前の前記インデックス残量が前記出力テーブル番号における最大インデックス番号より大きい場合には、前記出力インデックスとして前記出力テーブル番号における最大インデックス番号を出力する。
【0036】
本発明に係る可変長符号生成装置において、より好ましくは、前記テーブル選択手段は、符号化基本テーブルとして前記有限基本テーブルを選択する場合には、前記有限基本テーブルの最小インデックス番号に対応する符号の符号長が、前記無限符号化テーブル生成手段により生成される可変長符号化テーブルにおける符号間の符号長の差より大きいテーブルを選択する。
【0037】
本発明に係る可変長符号生成方法において、より好ましくは、前記インデックス算出ステップでは、前記可変長符号生成装置が、前記残量更新前の前記インデックス残量が前記出力テーブル番号における最大インデックス番号より大きい場合には、前記出力インデックスとして前記出力テーブル番号における最大インデックス番号を出力する。
【0038】
本発明に係る可変長符号生成方法において、より好ましくは、前記テーブル選択ステップでは、前記可変長符号生成装置が、符号化基本テーブルとして前記有限基本テーブルを選択する場合には、前記有限基本テーブルの最小インデックス番号に対応する符号の符号長が、前記無限符号化テーブル生成ステップにて生成される可変長符号化テーブルにおける符号間の符号長の差より大きいテーブルを選択する。
【0039】
本発明に係る可変長符号生成装置は、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、有限インデックス数で飽和する可変長符号化テーブルを生成する有限基本テーブル生成手段と、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成手段と、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出手段と、前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブル生成手段または前記無限符号化テーブル生成手段から選択するテーブル選択手段と、前記テーブル選択手段により選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力手段とを備える。
【0040】
本発明に係る可変長符号生成装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記無限符号化テーブル生成手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成する。
【0041】
本発明に係る可変長復号装置は、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力手段と、有限インデックス数で飽和する可変長符号化テーブルを復号する手段を備える有限符号化テーブル復号手段と、有限インデックス数では飽和しない可変長符号化テーブルを復号する手段を備える無限符号化テーブル復号手段と、前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出手段と、前記復号データ算出手段により決定された復号対象テーブル番号に応じて、前記有限符号化テーブル復号手段または前記無限符号化テーブル復号手段からテーブル復号手段を選択するテーブル復号手段選択手段と、前記テーブル復号手段選択手段により選択されたテーブル復号手段と、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段とを備える。
【0042】
本発明に係る可変長復号装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記無限符号化テーブル復号手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号する。
【0043】
本発明に係る可変長符号生成装置において、より好ましくは、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として記憶する符号化特性情報記憶手段と、前記符号化特性情報を出力する符号化特性情報出力手段と、前記符号化特性情報記憶手段によって記憶されている符号化特性情報に応じて、可変長符号生成を行う可変長符号生成手段とを更に備える。
【0044】
本発明に係る可変長復号装置において、より好ましくは、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として入力する符号化特性情報入力手段と、前記符号化特性情報を記憶する符号化特性情報記憶手段と、前記符号化特性情報記憶手段によって記憶されている符号化特性情報に応じて、可変長復号を行う可変長復号手段とを更に備える。
【0045】
本発明に係る可変長符号生成方法は、可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルを生成する有限基本テーブル生成ステップと、前記可変長符号生成装置が、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成ステップと、前記可変長符号生成装置が、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出ステップと、前記可変長符号生成装置が、前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブルまたは前記無限符号化テーブルから選択するテーブル選択ステップと、前記可変長符号生成装置が、前記テーブル選択ステップにて選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力ステップとを含む。
【0046】
本発明に係る可変長符号生成方法において好ましくは、前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記無限符号化テーブル生成ステップでは、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成する。
【0047】
本発明に係る可変長復号方法は、可変長復号装置が復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長復号装置が復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力ステップと、前記可変長復号装置が有限インデックス数で飽和する可変長符号化テーブルを復号するステップを含む有限符号化テーブル復号ステップと、前記可変長復号装置が有限インデックス数では飽和しない可変長符号化テーブルを復号するステップを含む無限符号化テーブル復号ステップと、前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出ステップと、前記可変長復号装置が、前記復号データ算出ステップにて決定された復号対象テーブル番号に応じて、前記有限符号化テーブル復号ステップまたは前記無限符号化テーブル復号ステップにてテーブル復号手段を選択するテーブル復号手段選択ステップと、前記可変長復号装置が、前記テーブル復号手段選択ステップにて選択されたテーブル復号手段と、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップとを含む。
【0048】
本発明に係る可変長復号方法において好ましくは、前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記無限符号化テーブル復号ステップでは、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号する。
【0049】
本発明に係る可変長符号生成方法において、より好ましくは、前記可変長符号生成装置が、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として符号化特性情報記憶手段に記憶する符号化特性情報記憶ステップと、前記可変長符号生成装置が、前記符号化特性情報を出力する符号化特性情報出力ステップと、前記可変長符号生成装置が、前記符号化特性情報記憶ステップにて記憶された符号化特性情報に応じて、可変長符号生成を行う可変長符号生成ステップとを更に含む。
【0050】
本発明に係る可変長復号方法において、より好ましくは、前記可変長復号装置が、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として入力する符号化特性情報入力ステップと、前記可変長復号装置が、前記符号化特性情報を符号化特性情報記憶手段に記憶する符号化特性情報記憶ステップと、前記可変長復号装置が、前記符号化特性情報記憶ステップにて記憶された符号化特性情報に応じて、可変長復号を行う可変長復号ステップとを更に含む。
【0051】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、前記符号化特性情報を可変長符号化して伝送する。
【0052】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長符号化することによって、前記符号化特性情報を出力する。
【0053】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として出力する。
【0054】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として出力する。
【0055】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として出力する。
【0056】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、前記符号化特性情報を可変長復号する。
【0057】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長復号することによって、前記符号化特性情報を入力する。
【0058】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として入力する。
【0059】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として入力する。
【0060】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として入力する。
【0061】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性情報を可変長符号化して伝送する。
【0062】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長符号化することによって、前記符号化特性情報を出力する。
【0063】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として出力する。
【0064】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として出力する。
【0065】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として出力する。
【0066】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性情報を可変長復号する。
【0067】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長復号することによって、前記符号化特性情報を入力する。
【0068】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として入力する。
【0069】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として入力する。
【0070】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として入力する。
【0071】
本発明に係る可変長符号生成装置において、より好ましくは、前記インデックス算出手段は、ルックアップテーブルを備え、前記ルックアップテーブルを利用して出力テーブル番号および出力インデックス番号を決定する。
【0072】
本発明に係る可変長復号装置において、より好ましくは、前記復号データ算出手段は、ルックアップテーブルを備え、前記ルックアップテーブルを利用して復号対象テーブル番号および復号対象符号を決定する。
【0073】
本発明に係る可変長符号生成方法において、より好ましくは、前記インデックス算出ステップでは、前記可変長符号生成装置は、ルックアップテーブルを利用して出力テーブル番号および出力インデックス番号を決定する。
【0074】
本発明に係る可変長復号方法において、より好ましくは、前記復号データ算出ステップでは、前記可変長復号装置では、ルックアップテーブルを利用して復号対象テーブル番号および復号対象符号を決定する。
【0075】
【発明の実施の形態】
以下、図面を参照しながら、本発明の第1及び第2の実施形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法について説明する。
【0076】
(第1の実施の形態)
まず、第1の実施の形態について説明する。
図9は、第1の実施の形態における可変長符号生成装置500の構成を概略的に示すブロック図である。図9に示す様に、可変長符号生成装置500は、インデックス算出部501とテーブル選択部502と有限基本テーブル記憶部503と符号出力部504とを備える。
【0077】
インデックス算出部501は、可変長符号生成装置500に入力されたテーブルサイズ及び符号化インデックスに基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び出力基本テーブルにおけるインデックス番号(出力インデックス)を算出する。
【0078】
テーブル選択部502は、符号化特性に応じて有限基本テーブル記憶部503に記憶されている基本テーブル群の中から使用する基本テーブル群を選択する。更に、テーブル選択部502は、選択された基本テーブル群の中から出力テーブル番号に応じて基本テーブルを選択し、後述の符号出力部504に符号化基本テーブルとして提供する。
【0079】
有限基本テーブル記憶部503には、複数の基本テーブル群a,b…が記憶されている。
符号出力部504は、出力インデックスに対応する符号を符号化基本テーブルの中から取得して、可変長符号として出力する。
【0080】
次いで、図10は、シンボル数がそれぞれ2,3,4,5,6で飽和する順序正しい可変長符号化テーブルを示す図である。すなわち、シンボル数が2のテーブルはTable2、シンボル数が3のテーブルはTable3、シンボル数が4のテーブルはTable4−1、及びTable4−2、シンボル数が5のテーブルはTable5−1、Table5−2、及びTable5−3、シンボル数が6のテーブルはTable6−1、Table6−2、Table6−3、Table6−4、及びTable6−5とする。これらのテーブルは、他のテーブルを生成するために使用されるテーブルであり、「基本テーブル」と記す。
【0081】
ここで、特性の異なる5種類のnシンボルで飽和する可変長符号化テーブルをTable(n)-a、Table(n)-b、Table(n)-c、Table(n)-d、Table(n)-eとする。これらの5種類の特性a,b,c,d,eを有する符号を生成するために使用される基本テーブルは、図11に示す様に、特性aの符号を生成するためにTable2、Table3、Table4−1、Table5−1、及びTable6−1を用いるものとし、以下、これらのテーブルを「基本テーブル群a」と記す。
【0082】
同様に、Table2、Table3、Table4−1、Table5−1、Table6−2は、基本テーブル群bとして特性bの符号生成に用いられ、Table2、Table3、Table4−1、Table5−2、Table6−3は、基本テーブル群cとして特性cの符号生成に用いられる。更に、Table2、Table3、Table4−2、Table5−2、Table6−4は、基本テーブル群dとして特性dの符号生成に用いられ、Table2、Table3、Table4−2、Table5−3、Table6−5は、基本テーブル群eとして特性eの符号生成に用いられる。
【0083】
本発明の第1の実施の形態における符号生成では、これらの飽和しかつ順序正しい基本テーブルを保持し、これらの基本テーブルの最も長い符号長を有する符号をエスケープコードとして、更に基本テーブルを付加していくことにより、よりシンボル数の多い飽和し順序正しい可変長符号化テーブルを構成することを特徴とする。
【0084】
具体的には例えば、nシンボルで飽和する(テーブルサイズ=n)特性s(符号化特性=s)のテーブルのm番目(1≦m≦n)の符号(符号化インデックス=m)を生成するためには、基本テーブル群sのテーブルを用いて、図12のフローチャートに示す手順によって可変長符号を生成する。
【0085】
まず、i=n、j=m、k=6が設定される(S11)。
続いて、iが7以上かつjが6以上であれば、Table6−sの6番目の符号が出力され(S12)、i及びjから5が減算される(S13)。また、kはiと6の内、小さい方の値に決定される。そして、iが7以上かつjが6以上である間、S12及びS13の処理が繰り返される。一方、iが7以上かつjが6以上でなければ、Tablek−sのj番目の符号が出力される(S14)。
【0086】
かかる手法により生成される符号の一例として、シンボル数n=15、特性s=a,b,c,d,eに対する可変長符号化テーブルを図13に示す。
図13に示す様に、本手法によって生成される複数種類のテーブルは、特性a,b,c,d,eの順に符号長の分布の傾きが小さくなる様に構成されている。したがって、ある符号化対象シンボルの値が推定しやすい場合には特性aに近い可変長符号化テーブルを用い、推定しにくい場合には特性eに近い可変長符号化テーブルを用いることによって、効率良く符号化することができる。
【0087】
また、図14は、本発明の第1の実施の形態における可変長復号装置600の構成を概略的に示すブロック図である。図14に示す様に、可変長復号装置600は、復号データ算出部601とテーブル選択部602と有限基本テーブル記憶部603とインデックス出力部604とを備える。
【0088】
復号データ算出部601は、可変長復号装置600に入力されたテーブルサイズ及び可変長符号に基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び基本テーブルによって復号対象となる可変長符号(復号対象符号)を出力する。
【0089】
テーブル選択部602は、有限基本テーブル記憶部603に記憶されている基本テーブル群の中から、符号化特性に応じて、使用する基本テーブル群を選択する。更に、テーブル選択部602は、その中から出力テーブル番号に応じて基本テーブルを選択し、後述のインデックス出力部604に符号化基本テーブルとして提供する。
【0090】
有限基本テーブル記憶部603には、複数の基本テーブル群a,b…が記憶されている。
インデックス出力部604は、復号対象符号と一致する符号に対するインデックス値を符号化基本テーブルの中から取得し、復号の結果得られたインデックス番号として出力する。
【0091】
復号側においても、復号対象シンボルに対する可変長符号化テーブルのシンボル数及び特性は符号化と同様の手段により前以って決定される。このため、図15のフローチャートに示す各ステップを経ることによって容易に復号可能である。
【0092】
まず、i=n、j=0に設定される(S21)。
続いて、iが7以上であり、入力された符号の最初の部分がTable6−sの6番目の符号であれば、特性sのTable6の6番目の符号分が読み飛ばされ(S22)、iから5が減算されjに5が加算される。また、kはiと6の内、小さい方の値に決定される(S23)。その結果、Table6−sの6番目の符号と一致する部分が削除される。そして、iが7以上である間、S22〜S23の処理が繰り返される。
【0093】
一方、iが7以上でなければ、特性sのTablekの符号の中から符号列の先頭に一致する符号のインデックス値pが求められ、当該符号が読み飛ばされる(S24)。そして、入力符号系列の先頭からTablek−sに一致する符号が探索され、当該符号がp番目であれば、jにpが加算され、その結果得られたjが復号された値として出力される(S25)。
【0094】
なお、本発明の第1の実施の形態では、シンボル数2〜6の基本テーブルを用いて可変長符号を生成するよう構成したが、シンボル数はこれらの値に限らず、例えばシンボル数が7や8までの全て又は一部の飽和し順序正しい可変長符号化テーブルを基本テーブルとして用いてもよい。また、それ以上のシンボル数の全て又は一部の飽和し順序正しい可変長符号化テーブルを基本テーブルとして用いてもよい。
【0095】
また、例えば、符号長の分布の偏りが最も小さくなる特性s=fを、図16のフローチャートに示す手法で導入するような構成としてもよい。すなわち、シンボル数nの特性tのテーブルのm番目の符号は、以下のステップを経て出力される。
【0096】
まず、2g≦n<2g+1を満たすgが求められる(S31)。
この結果、m≦2g+1−nであれば、gビット固定長符号のm番目の符号が出力され(S32)、符号化が終了する。一方、m>2g+1−nであれば、g+1ビット固定長符号の(m+2g+1−n)番目の符号が出力され(S33)、符号化が終了する。
【0097】
一例として、シンボル数n=15の場合の特性s=fの符号を図17に示す。なお、特性fの符号は、図18のフローチャートに示す様に以下の手順によって容易に復号することができる。
【0098】
まず、2g≦n<2g+1を満たすgが求められる(S41)。
続いて、入力符号系列の最初のgビットが固定長復号され、対応するgビット固定長符号でのインデックス番号が順位rとして求められる(S42)。r≦2g+1−nであれば、rが復号シンボルとして出力され(S43)、復号が終了する。
【0099】
r>2g+1−nであれば、j=2r−2g+1+nとされ(S44)、更に次の1ビットが1であればjに1が加算される(S45)。そして、得られたjが復号シンボルとして出力され(S46)、復号が終了する。
【0100】
以上説明した様に、本発明の第1の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法によれば、複数種類の特性を有し、かつ、有限シンボル数で飽和し順序正しい可変長符号化テーブルを構成できる。その結果、効率のよい可変長符復号が可能となる。
【0101】
(第2の実施の形態)
本発明の第2の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法は、第1の実施の形態における基本テーブル(図11参照)のように、シンボル数の少ない飽和し順序正しい1つまたは複数のテーブルと、Golomb符号などの飽和しない構造的可変長符号とを併用することを特徴とする。
【0102】
図19は、本実施の形態における可変長符号生成装置700の構成を概略的に示すブロック図である。図45は、本実施の形態の変形態様における可変長符号生成装置700の構成を概略的に示すブロック図である。図19及び図45に示す様に、可変長符号生成装置700は、インデックス算出部701とテーブル選択部702と無限符号化テーブル生成部703と有限基本テーブル記憶部704と符号出力部705とを備える。
【0103】
インデックス算出部701は、可変長符号生成装置700に入力されたテーブルサイズ及び符号化インデックスに基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び出力基本テーブルにおけるインデックス番号(出力インデックス)を算出する。
なお、インデックス算出部701は、図45に示す様に、可変長符号生成装置700に入力された符号化特性、及びテーブルサイズ及び符号化インデックスに基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び出力基本テーブルにおけるインデックス番号(出力インデックス)を算出する態様を採ることもできる。
【0104】
テーブル選択部702は、符号化特性及び出力インデックス番号に応じて有限基本テーブル記憶部704に記憶されている基本テーブル群、若しくは、無限符号化テーブル生成部703によって生成される可変長符号化テーブルから、使用する基本テーブルを選択し、後述の符号出力部705に符号化基本テーブルとして提供する。
なお、テーブル選択部702は、図45に示す様に、出力インデックス番号に応じて有限基本テーブル記憶部704に記憶されている基本テーブル群、若しくは、無限符号化テーブル生成部703によって生成される可変長符号化テーブルから、使用する基本テーブルを選択し、後述の符号出力部705に符号化基本テーブルとして提供する態様を採ることもできる。
【0105】
無限符号化テーブル生成部703は、入力される符号化特性を使用して、可変長符号化テーブルを生成する。
有限基本テーブル記憶部704には、複数の基本テーブル群a,b…が記憶されている。
符号出力部705は、符号化基本テーブルの中から出力インデックスに対応する符号を取得して、可変長符号として出力する。
【0106】
以下、その一例としてGolomb符号を用いた場合の可変長符号生成方法について説明する。図5に示したGolomb符号において、ツリーBの符号数PとツリーBが存在し始めるノード番号Qとの組み合わせ(P,Q)が、(2,2)の場合を特性aとする。更に、(2,1)の場合を特性bとし、(2,0)の場合を特性cとし、(3,0)の場合を特性d、そして、(4,0)の場合を特性eとする。これらの可変長符号化テーブルを図20に示す。
【0107】
また、図21は、本発明の第2の実施の形態における可変長符号生成方法、及び可変長復号方法において用いられる基本テーブルを示す。図21に示す様に、基本テーブルには、インデックス番号と各TableのGolomb符号とが対応付けて格納されている。また、本実施の形態において用いられる可変長符号化テーブルの特性a〜eと基本テーブルとの対応関係を図22に示す。
【0108】
ここで、Golomb符号は、飽和しない順序正しい可変長符号であるが、図23に示す様に、Golomb符号の任意のノードを基本テーブルCに置き換えることによって、飽和する可変長符号を生成することができる。但し、この置換処理だけでは、当該可変長符号化が順序正しく構成できるとは限らない。
【0109】
そこで、本発明の第2の実施の形態における符号生成では、上記Golomb符号のノードを置き換えるための基本テーブルCの最小符号長が、Golomb符号におけるツリーBの最大符号長以上になるような基本テーブルを用いることによって符号長の逆転が生じないようにして、飽和し順序正しい可変長符号化テーブルを構成することを特徴とする。
【0110】
具体的には例えば、nシンボルで飽和する特性sのテーブルのm番目の符号を生成するためには、基本テーブル群sのテーブル及び図21に示した特性sに対応するGolomb符号を用いて、図24のフローチャートに示す様に、以下の手順によって符号を生成する。
【0111】
S51では、特性sに対応するGolomb符号の係数の組み合わせ(Ps,Qs)、及びnの値から、h=(n−Qs)%Psが求められる。ここで、演算子「%」はモジュロ演算を行うことを意味する。なお、h=0の場合はh=Psとする(S52)。
【0112】
続いて、残余数LがL=h+Psと定義される(S53)。m≦n−Lである場合には、特性sに対応するGolomb符号のm番目の係数が出力され(S54)、符号化が終了する。
一方、m>n−Lである場合には、(n−L+Qs)/Ps個の符号「1」の出力(S55)に続けて、基本テーブル群sの内、シンボル数がLの基本テーブルの(m+L−n)番目の符号が出力され(S56)、符号化が終了する。このように構成した場合のシンボル数n=15の特性a〜eに対応する可変長符号化テーブルを図25に示す。
【0113】
次に、図26は、本発明の第2の実施の形態における可変長復号装置800の構成を概略的に示すブロック図である。図46は、本実施の形態の変形態様における可変長復号装置800の構成を概略的に示すブロック図である。図26及び図46に示す様に、可変長復号装置800は、復号データ算出部801とテーブル選択部802と無限符号化テーブル生成部803と有限基本テーブル記憶部804とインデックス出力部805とを備える。
【0114】
復号データ算出部801は、可変長復号装置800に入力されたテーブルサイズ及び可変長符号に基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び基本テーブルによって復号対象となる可変長符号(復号対象符号)を出力する。
なお、復号データ算出部801は、図46に示す様に、復号データ算出部801は、可変長復号装置800に入力された符号化特性、及びテーブルサイズ及び可変長符号に基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び基本テーブルによって復号対象となる可変長符号(復号対象符号)を出力する態様を採ることもできる。
【0115】
テーブル選択部802は、符号化特性及び出力インデックス番号に応じて有限基本テーブル記憶部804に記憶されている基本テーブル群、若しくは、無限符号化テーブル生成部803によって生成される可変長符号化テーブルから使用する基本テーブルを選択し、後述のインデックス出力部805に符号化基本テーブルとして提供する。
なお、テーブル選択部802は、図46に示す様に、出力テーブル番号に応じて有限基本テーブル記憶部804に記憶されている基本テーブル群、若しくは、無限符号化テーブル生成部803によって生成される可変長符号化テーブルから使用する基本テーブルを選択し、後述のインデックス出力部805に符号化基本テーブルとして提供する態様を採ることもできる。
【0116】
無限符号化テーブル生成部803は、入力される符号化特性を使用して、可変長符号化テーブルを生成する。
有限基本テーブル記憶部804には、複数の基本テーブル群a,b…が記憶されている。
【0117】
インデックス出力部805は、復号対象符号と一致する符号に対するインデックス値を符号化基本テーブルの中から取得して、復号の結果得られたインデックス番号として出力する。
【0118】
なお、この様に構成された可変長符号は、図27のフローチャートに示す様に以下の手順によって容易に復号することができる。
S61では、特性sに対応するGolomb符号の係数の組み合わせ(Ps,Qs)、及びnの値から、h=(n−Qs)%Psが求められる。ここで、演算子「%」はモジュロ演算を行うことを意味する。なお、h=0の場合はh=Psとする(S62)。
【0119】
次に、残余数LがL=h+Psと定義される(S63)。S64では、最初に続く符号「1」の数がtとされる。t≦Qs−1の場合には、j=t+1が復号シンボルとして出力され(S65)、復号が終了する。
【0120】
一方、tが(n−L+Qs)/Ps個より小さい場合には、tビット分読み飛ばされた(S66)後、t個の符号「1」に続く(Ps+1)ビットの固定長符号が復号され、その結果がuとされる(S67)。そして、(t−Qs)・Ps+uが復号シンボルとして出力されたことに伴い(S68)、復号が終了する。
【0121】
更に、tが(n−L+Qs)/Ps個以上である場合には、(n−L+Qs)/Psビット分読み飛ばされた(S69)後、(n−L+Qs)/Ps個の符号「1」に続く符号が、シンボル数Lの基本テーブルの何番目のインデックス番号に該当するかが求められ、そのインデックス番号がIとされる(S70)。そして、I+n−Lが復号シンボルとして出力されたことに伴い(S71)、復号が終了する。
【0122】
以上説明した様に、本発明の第2の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法によれば、複数種類の特性を有し、かつ、有限シンボル数で飽和し順序正しい可変長符号化テーブルを構成できる。その結果、より効率のよい可変長符復号が可能となる。
【0123】
なお、本実施の形態においては、一例として、特定のGolomb符号を用いたが、如何なるGolomb符号、あるいは他の構造的な符号であっても本発明を適用可能である。更に、シンボル数2〜8の基本テーブルを用いて可変長符号を生成するものとしたが、9以上のシンボル数を用いることができるのは勿論である。
【0124】
なお、本実施形態においては、符復号する際に残余数Lおよび連続する符号「1」の個数を演算処理により算出するものとしたが、これらの一連の演算処理は、予め用意されたルックアップテーブルを参照して行うものとしてもよい。
【0125】
すなわち、例えばnシンボルで飽和する特性cのテーブルに対して残余数Lを図41に示すルックアップテーブルを用いて容易に求めることができる。また、(n−L+Qs)/Psの値も予めルックアップテーブルを構成しておくことにより、容易に求めることができる。図42は、n=15の場合における、(n−L+Qs)/Psに対応するルックアップテーブルを示す図である。この様なルックアップテーブルを参照すれば、符復号において、より少ない演算量で同様の効果を得ることができる。
【0126】
更に、nシンボルで飽和する特性sの符号の復号を行うために、基本テーブル群sのテーブルを用いて、図43のフローチャートに示すように、以下の手順によって復号する構成としてもよい。
【0127】
まず、図43のS131では、nの値から特性sに対応する残余数Lが図41のルックアップテーブルより求められる。次に、入力された符号系列の最初に連続する符号「1」の数をカウントしてtとする(S132)。続いて、カウントtが与えられた場合に、次に符号系列より読み込むべきビット数をルックアップテーブルより求める。
【0128】
図44は、n=15の場合における、カウントtと読み込むべきビット数vを有するルックアップテーブルを示す図である。t≦(Qs−1)である場合には、tビット読み飛ばしてj=t+1が復号シンボルとして出力されたことに伴い(S133)、復号が終了する。
【0129】
次いで、t<(n−L+Qs)/Psの場合には、tビット読み飛ばし、続くvビットを読み込み(S134)、シンボル数Qsの特性eの基本テーブルの何番目のインデックス番号に該当するかが求められ、そのインデックス番号がuとされる(S135)。そして、(t−Qs)*Ps+uが復号シンボルとして出力されたことに伴い(S136)、復号が終了する。
【0130】
更に、t≧(n−L+Qs)/Psの場合には、(n−L+Qs)/Psビット読み飛ばし(S137)、続くvビットを読み込み、シンボル数Lの基本テーブルの何番目のインデックス番号に該当するかが求められ、そのインデックス番号がlとされる(S138)。そして、l+n−Lが復号シンボルとして出力されたことに伴い(S139)、復号が終了する。これにより、少ない演算量で好適な符復号処理を行うことができる。
【0131】
(第3の実施の形態)
本発明の第3の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法は、第2の実施の形態における基本テーブルの代わりに、第1の実施の形態における特性s=fに用いた有限符号化テーブルを生成および復号する手段を備える。なお、図28〜図32、図47、図48においては、既に説明した構成要素と同一の構成要素には末尾が同一の符号を付し、重複する説明は省略する。
【0132】
図28は、本実施の形態における可変長符号生成装置900の構成を概略的に示すブロック図である。図47は、本実施の形態の変形態様における可変長符号生成装置900の構成を概略的に示すブロック図である。図28及び図47に示す様に、可変長符号生成装置900は、インデックス算出部901とテーブル選択部902と無限符号化テーブル生成部903と有限符号化テーブル生成部904と符号出力部905とを備える。
【0133】
有限符号化テーブル生成部904は、第1の実施の形態における特性s=fに対する有限符号化テーブル生成手段(図16のステップS31〜S33に示した処理に対応)によって、有限シンボル数の可変長符号化テーブルを基本テーブルとしてテーブル選択部902に提供する。
【0134】
図29は、本実施の形態における可変長符号生成方法の手順を示すフローチャートである。本実施の形態における可変長符号生成方法の手順は、図24のステップS56を、以下に示すステップS86に置き換えた点において、第2の実施の形態と相違する。なお、図29のステップS81〜S85は、図24のステップS51〜S55にそれぞれ対応する。
【0135】
すなわち、ステップS86では、ステップS31〜S33に示した手順によって、シンボル数Lの有限符号化テーブルのm+L−n番目の符号が出力される。当該処理により構成されたシンボル数n=15の特性a〜eに対応する可変長符号化テーブルの一例を図30に示す。
【0136】
次に、図31は、本発明の第3の実施の形態における可変長復号装置1000の構成を概略的に示すブロック図である。図48は、本実施の形態の変形態様における可変長符号生成装置1000の構成を概略的に示すブロック図である。図31及び図48に示す様に、可変長復号装置1000は、復号データ算出部1001とテーブル選択部1002と無限符号化テーブル生成部1003と有限符号化テーブル生成部1004とインデックス出力部1005とを備える。
【0137】
有限符号化テーブル生成部1004は、第1の実施の形態における特性s=fに対する有限符号化テーブルを生成し、テーブル選択部1002に提供する。図32は、本実施の形態における可変長復号方法の手順を示すフローチャートである。本実施の形態における可変長復号方法の手順は、図27のステップS70を、以下に示すステップS101に置き換えた点において、第2の実施の形態と相違する。なお、図32のステップS91〜S100は、図27のステップS61〜S70にそれぞれ対応する。
【0138】
ステップS101では、ステップS41〜S46(図18参照)に示した手順を経て、シンボル数Lの有限符号化テーブルにおいて対応するインデックス番号Iが出力される。
【0139】
上述したように、本発明の第3の実施の形態においては、有限基本テーブルを保持する代わりに有限符号化テーブル生成手段を備えるよう構成した。したがって、本実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法によれば、より少ないメモリ量で複数種類の特性を有し、かつ、有限シンボル数で飽和し順序正しい可変長符号化テーブルを構成できる。その結果、より少ないメモリ量で、より効率のよい可変長符復号が可能となる。
【0140】
なお、本実施の形態においても、第2の実施形態と同様にルックアップテーブルを用いることによって、より少ない演算量で好適な符復号を行うことができる。
【0141】
(第4の実施の形態)
本発明の第4の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法は、複数種類の符号化対象シンボルを符号化するために、それぞれ同一または異なる符号化特性を持つ複数種類の可変長符号化テーブルを備える情報源符号化器101(図1参照)において、各可変長符号化テーブルに対する特性である符号化特性情報を出力する。また、情報源復号器105に対しては前記符号化特性情報を入力することによって、情報源符号化器101と同一の特性を持つ可変長符号化テーブルを用いて可変長復号を行う。
【0142】
図33は、本実施の形態における可変長符号生成装置1100の構成を概略的に示すブロック図である。図33に示す様に、可変長符号生成装置1100は、可変長符号生成部1101と符号化特性情報保持部1102と符号化特性情報出力部1103を備える。
【0143】
可変長符号生成部1101は、上述した第1から第3の実施の形態における可変長符号生成装置と同様に、符号化特性に応じて異なる可変長符号化テーブルを用いた可変長符号を生成すると共に、入力される符号化特性と符号化インデックスとテーブルサイズとに応じて可変長符号を出力する。
【0144】
符号化特性情報保持部1102は、複数種類の符号化対象シンボルを符号化するための複数種類の可変長符号化テーブルの符号化特性を保持し、入力される符号化対象シンボルの種類およびテーブルサイズに応じて、符号化特性を可変長符号生成部1101に提供する。
符号化特性情報出力部1103は、符号化特性情報保持部1102に保持されている符号化特性を符号化特性情報として出力する。
【0145】
図34は、本実施の形態における可変長符号生成方法の手順を示すフローチャートである。まず、符号化特性情報保持部1102に、それぞれの符号化対象シンボルに対する符号化特性を予め記録する(S111)。
【0146】
次に、符号化特性情報出力部1103は、符号化特性情報保持部1102に保持されている符号化特性を符号化特性情報として出力する。なお、符号化特性情報の出力は、図1に示した情報源符号化部101と情報源復号器105との間の可変長符号を伝送するネットワークと同一のネットワークを介して伝送してもよいし、より信頼性の高い他のネットワークを介して伝送してもよい(S102)。
【0147】
次に、それぞれの符号化対象シンボルおよびテーブルサイズに対する符号化特性が符号化特性情報保持部1102より可変長符号生成部1101に入力され、符号化対象となるシンボルの符号化インデックスおよびテーブルサイズが可変長符号生成部1101に入力され、可変長符号が生成及び出力される(S113)。
【0148】
図35は、本実施の形態における可変長復号装置1200の構成を概略的に示すブロック図である。図35に示す様に、可変長復号装置1200は、可変長復号部1201と符号化特性情報保持部1202と符号化特性情報入力部1203を備える。
【0149】
可変長復号部1201は、上述した第1から第3の実施の形態における可変長復号装置と同様に、符号化特性に応じて異なる可変長符号化テーブルを用いた可変長符号を復号すると共に、入力される符号化特性と可変長符号とテーブルサイズとに応じて復号インデックスを出力する。
【0150】
符号化特性情報保持部1202は、複数種類の符号化シンボルに対する可変長符号を復号するための複数種類の可変長符号化テーブルの符号化特性を保持し、入力される可変長符号の種類およびテーブルサイズに応じて、符号化特性を可変長復号部1201に提供する。
符号化特性情報入力部1203は、符号化特性情報保持部1202に保持されている符号化特性を符号化特性情報として入力する。
【0151】
図36は、本実施の形態における可変長復号方法の手順を示すフローチャートである。まず、符号化特性情報入力部1203に外部より符号化特性情報が入力される(S121)。次に、入力された符号化特性情報が符号化特性情報保持部1202に記録される(S122)。
【0152】
続いて、それぞれの可変長符号に対する符号化特性がテーブルサイズおよび可変長符号に応じて符号化特性情報保持部1202より可変長復号部1201に入力され、復号対象となる可変長符号およびテーブルサイズが可変長復号部1201に入力され、復号インデックスが出力される(S123)。
【0153】
以下、一例を示しながら、本実施の形態における符復号手段について、より具体的に説明する。本実施の形態では、動画像符号化において画面の動き情報および画面の明るさ情報および画面の色情報が数値化された情報を、符号化対象シンボルとして符号化する場合を想定する。すなわち、符号化対象シンボルとして、3種類のシンボルMV(例えば、画面の動き情報)、XY(例えば、画面の明るさ情報)、XC(例えば、画面の色情報)を可変長符号化することを想定する。
【0154】
ここで、画面の動き情報に対するシンボルMVは、動きの変化が大きい程大きい値を、動きの変化が小さい程小さい値をとるものとする。画面の明るさ情報に対するシンボルXYは、画面の明るさの変化が大きい程大きい値を、画面の明るさの変化が小さい程小さい値を取るものとする。画面の色情報に対するシンボルXCは、画面の色の変化が大きい程大きい値を、画面の色の変化が小さい程小さい値をとるものとする。また、可変長符復号には、第2の実施の形態において図25に示した可変長符号化テーブルを用いるものとする。
【0155】
例えば、所定の期間において、画面の動きが複雑であり、明るさの変化や色の変化が複雑でないと予め分かっている場合には、シンボルMVとしてはそれぞれの値の発生する頻度が分散し、シンボルXYおよびXCとしては小さい値の発生する頻度が高くなると考えられる。
【0156】
このような場合には、シンボルXYおよびXCに対する可変長符号化テーブルとしては、特定の値に対して特に短い符号長が割り当てられるような特性を持つもの(例えば、第2の実施形態で示した特性aまたはbの可変長符号化テーブル)を用いると共に、シンボルMVに対する可変長符号化テーブルとしては、全ての符号長が均等となる特性を持つもの(例えば、第2の実施形態で示した特性eの可変長符号化テーブル)を用いることによって、効率良く符号化できる。
【0157】
したがって、このような場合には、例えば図37に示すテーブルを参照することにより、図38に示すように、ヘッダ情報としては、シンボルMV、XY、XCに対する符号化特性PMV(例えば特性e)、PXY(例えば特性a)、PXC(例えば特性b)を用い、符号化特性情報としては固定長符号を用いて、可変長符号がまず伝送される。
【0158】
続いて、各シンボルに対応する符号化インデックスIMV(例えば10)、IXY(例えば2)、IXC(例えば1)が、それぞれの符号化特性情報に対応する可変長符号化テーブルを用いて符号化される。これにより、各々のシンボルの符号化インデックスに対応する可変長符号CMV(11001)、CXY(10)、CXC(0)が出力される。
【0159】
一方、復号側では、まずヘッダ情報として、シンボルMV、XY、XCに対する符号化特性情報の固定長符号を受信して復号することによって、各々のシンボルMV、XY、XCに対する符号化特性PMV、PXY、PXCとしての特性e、b、aがそれぞれ得られる。
【0160】
続いて、可変長符号CMVが受信されると、符号化特性PMV(特性e)に対応する可変長符号化テーブルを用いて、復号インデックスとしてIMV(=10)が復号される。その後、可変長符号CXYが受信されると、符号化特性PXY(特性a)に対応する可変長符号化テーブルを用いて、復号インデックスとしてIXY(=2)が復号される。そして、可変長符号CXCが受信されると、符号化特性PXC(特性b)に対応する可変長符号化テーブルを用いて、復号インデックスとしてIXC(=1)が復号される。
【0161】
なお、本実施の形態では、全ての符号化特性情報を伝送するものとしたが、符号化側と復号側でデフォルトの符号化特性情報を予め保持しておき、デフォルトの符号化特性と異なる符号化特性のみを伝送する構成としても勿論よい。これにより、より少ない情報伝送量で同様の効果が得られる。また、上記デフォルトの符号化特性と異なる符号化特性に対応する、デフォルトの符号化特性と使用する符号化特性との差分値を伝送することにより、更に少ない情報伝送量で同様の効果が得られる。更に、復号側に関しても同様に、上記デフォルト値と異なる符号化特性に対応する符号化特性情報を受信するものとしてもよい。
【0162】
また、本実施の形態では、一例として、符号化特性a〜eをヘッダ情報に含めて伝送するものとしたが、それぞれの可変長符号化テーブルに対応する、Golomb符号の特性を決定する2つの係数PおよびQをヘッダ情報(図6を参照)に含めて伝送してもよい。この場合には、例えば図39に示すようなPおよびQの2次元可変長符号化テーブルを備えて符号化特性情報を可変長符号化して伝送する構成を採ることによって、より効率良く同様の効果が得られる。
【0163】
また、例えば図40に示すような各可変長符号化テーブルに対する符号化特性の組み合わせを複数保持して、前記符号化特性の組み合わせ情報に符号を割り当て、符号化特性の組み合わせ情報のみをヘッダ情報として伝送する構成を採ることによっても、効率良く同様の効果が得られる。また、復号側に関しても同様に、上述した2次元可変長符号化テーブルや符号化特性の組み合わせを保持することによって、好適に復号することができる。
【0164】
上述したように、本発明の第4の実施の形態においては、可変長符復号に用いる可変長符号化テーブルの符号化特性情報を符号化側から復号側へ伝送するよう構成した。したがって、本実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法によれば、より適応性の高い可変長符復号が可能となる。
【0165】
【発明の効果】
本発明によれば、異なる特性を有し、かつ、飽和し順序正しい有限シンボル数の可変長符号化テーブルを少ないメモリ容量と簡単な演算で生成できる。その結果、効率のよい可変長符復号が可能となる。
【図面の簡単な説明】
【図1】情報の蓄積再生・伝送方法を概略的に示す図である。
【図2】従来の可変長符号生成装置の構成を示すブロック図である。
【図3】従来の可変長復号装置の構成を示すブロック図である。
【図4】 Golomb符号の構成を示す概念図である。
【図5】 Golomb符号のパラメータに応じた可変長符号化テーブルの一例を示す図である。
【図6】 Golomb符号の別のパラメータに応じた可変長符号化テーブルの一例を示す図である。
【図7】無限に続くGolomb符号の一例を示す図である。
【図8】従来の手法によってGolomb符号に修正を加えて飽和させた可変長符号化テーブルの一例を示す図である。
【図9】本発明の第1の実施の形態における可変長符号生成装置の構成を示すブロック図である。
【図10】基本テーブルの構成を示す図である。
【図11】基本テーブル群の構成を示す図である。
【図12】第1の実施の形態における可変長符号生成方法の手順を示すフローチャートである。
【図13】第1の実施の形態における可変長符号生成方法によって生成された可変長符号化テーブルの一例を示す図である。
【図14】第1の実施の形態における可変長復号装置の構成を示すブロック図である。
【図15】第1の実施の形態における可変長復号方法の手順を示すフローチャートである。
【図16】第1の実施の形態における符号長の分布の偏りが小さくなる特性の可変長符号生成方法の手順を示すフローチャートである。
【図17】第1の実施の形態における符号長の分布の偏りが小さくなる特性の可変長符号生成方法によって生成された可変長符号化テーブルの一例を示す図である。
【図18】第1の実施の形態における符号長の分布の偏りが小さくなる特性の可変長符号生成方法によって生成された符号を復号する手順を示すフローチャートである。
【図19】本発明の第2の実施の形態における可変長符号生成装置の構成を示すブロック図である。
【図20】第2の実施の形態における可変長符号生成方法において用いるGolomb符号の一例を示す図である。
【図21】第2の実施の形態における可変長符号生成方法において用いる有限基本テーブルの一例を示す図である。
【図22】第2の実施の形態における可変長符号生成方法における基本テーブル群の構成の一例を示す図である。
【図23】第2の実施の形態における可変長符号生成方法の概念を説明する図である。
【図24】第2の実施の形態における可変長符号生成方法の手順を示すフローチャートである。
【図25】第2の実施の形態における可変長符号生成方法によって生成された可変長符号化テーブルの一例を示す図である。
【図26】第2の実施の形態における可変長復号装置の構成を示すブロック図である。
【図27】第2の実施の形態における可変長復号方法の手順を示すフローチャートである。
【図28】第3の実施の形態における可変長符号生成装置の構成を示すブロック図である。
【図29】第3の実施の形態における可変長符号生成方法の手順を示すフローチャートである。
【図30】第3の実施の形態における可変長符号生成方法によって生成された可変長符号化テーブルの一例を示す図である。
【図31】第3の実施の形態における可変長復号装置の構成を示すブロック図である。
【図32】第3の実施の形態における可変長復号方法の手順を示すフローチャートである。
【図33】第4の実施の形態における可変長符号生成装置の構成を示すブロック図である。
【図34】第4の実施の形態における可変長符号生成方法の手順を示すフローチャートである。
【図35】第4の実施の形態における可変長復号装置の構成を示すブロック図である。
【図36】第4の実施の形態における可変長復号方法の手順を示すフローチャートである。
【図37】第4の実施の形態における符号化特性情報の符号化テーブルの一例を示す表である。
【図38】第4の実施の形態におけるビットストリームの構成の一例を示す図である。
【図39】第4の実施の形態の変形態様における2次元可変長符号化テーブルの一例を示す図である。
【図40】第4の実施の形態の変形態様における可変長符号化テーブルに対応する符号化特性の組み合わせの一例を示す図である。
【図41】第2の実施の形態の変形態様における、残余数Lの値を決定するためのルックアップテーブルの一例を示す図である。
【図42】第2の実施の形態の変形態様における、(n−L+Qs)/Psの値を決定するためのルックアップテーブルの一例を示す図である。
【図43】第2の実施の形態の変形態様における、ルックアップテーブルを用いた可変長復号方法の手順を示すフローチャートである。
【図44】第2の実施の形態の変形態様における、読み込むべきビット数vを決定するためのルックアップテーブルの一例を示す図である。
【図45】本発明の第2の実施の形態の変形態様における可変長符号生成装置の構成を示すブロック図である。
【図46】第2の実施の形態の変形態様における可変長復号装置の構成を示すブロック図である。
【図47】本発明の第3の実施の形態の変形態様における可変長符号生成装置の構成を示すブロック図である。
【図48】第3の実施の形態の変形態様における可変長復号装置の構成を示すブロック図である。
【符号の説明】
500…可変長符号生成装置、501…インデックス算出部、502…テーブル選択部、503…有限基本テーブル記憶部、504…符号出力部、
600…可変長復号装置、601…復号データ算出部、602…テーブル選択部、603…有限基本テーブル記憶部、604…インデックス出力部、
700…可変長符号生成装置、701…インデックス算出部、702…テーブル選択部、703…無限符号化テーブル生成部、704…有限基本テーブル記憶部、705…符号出力部、
800…可変長復号装置、801…復号データ算出部、802…テーブル選択部、803…無限符号化テーブル生成部、804…有限基本テーブル記憶部、805…インデックス出力部
900…可変長符号生成装置、901…インデックス算出部、902…テーブル選択部、903…無限符号化テーブル生成部、904…有限符号化テーブル生成部、905…符号出力部、
1000…可変長復号装置、1001…復号データ算出部、1002…テーブル選択部、1003…無限符号化テーブル生成部、1004…有限符号化テーブル生成部、1005…インデックス出力部、
1100…可変長符号生成装置、1101…可変長符号生成部、1102…符号化特性情報保持部、1103…符号化特性情報出力部、904…有限符号化テーブル生成部、905…符号出力部、
1200…可変長復号装置、1201…可変長復号部、1202…符号化特性情報保持部、1203…符号化特性情報入力部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a variable length code generation device, a variable length decoding device, a variable length code generation method, and a variable length decoding method.
[0002]
[Prior art]
Since data such as images and sounds have a huge capacity compared to character data, conventionally, highly efficient encoding has been performed to transmit and store these data. FIG. 1 is a diagram schematically showing a transmission / storage method of data signals such as images and sounds in the prior art. In FIG. 1, data signals such as images and sounds are first subjected to AD (Analog to Digital) conversion by an AD converter 100 to become an input digital data sequence 200.
[0003]
Subsequently, the input digital data sequence 200 is subjected to information compression by the information source encoder 101 and encoded into transmission compressed data 201 having a low redundancy. The transmission compressed data 201 is output as transmission data 202 after being subjected to communication path encoding for the purpose of improving the reliability of the transmission medium or storage medium by the communication path encoder 102. The transmission data 202 is transmitted or stored in the transmission medium or the storage medium 103.
[0004]
The transmission data 202 input to the transmission medium or the storage medium 103 is subjected to communication path decoding by the communication path decoder 104 and decoded into received compressed data 203. The received compressed data 203 is decoded by the information source decoder 105 to generate an output digital data sequence 204. Further, the output digital data series 204 is subjected to DA (Digital to Analog) conversion by the DA converter 106, and as a result, data signals such as images and sounds are restored.
[0005]
Here, in the information source encoder 101 for the purpose of information compression, redundancy (for example, spatial redundancy, temporal redundancy, structural / knowledge redundancy, etc.) relating to the input information source is reduced. Converted into encoded symbols. This encoded symbol is subjected to entropy encoding in order to reduce redundancy caused by bias in appearance probability of each encoded symbol.
[0006]
Conventional entropy coding includes, for example, variable length coding. In variable-length coding, the relative lengths of assigned variable-length codes differ depending on the appearance probability of coded symbols. That is, a short variable length code is assigned to a coded symbol with a high appearance probability, and a long variable length code is assigned to a coded symbol with a low appearance probability. Thereby, the entropy redundancy included in the encoded symbol is reduced.
[0007]
FIG. 2 is a block diagram illustrating a functional configuration of the variable-length code generation apparatus 300. As shown in FIG. 2, in accordance with the input of the encoding index that is the index number of the symbol to be encoded, the variable length encoding table storage unit 301 that stores a preset variable length encoding table is variable. The long coding table is input to the code output unit 302. Then, a code corresponding to the coding index of the variable length coding table input to the code output unit 302 is output as a variable length code.
[0008]
Also, the variable length code encoded as described above can be reversibly decoded into the index number of the encoded symbol by variable length decoding. FIG. 3 is a block diagram showing a functional configuration of the variable length decoding device 400. In the variable-length decoding device 400, when a variable-length code to be decoded is input, the variable-length coding table storage unit 401 that stores the same variable-length coding table as that set on the encoding side, A variable length coding table is input to the index output unit 402. Then, the same index number corresponding to the code in the variable length coding table as the variable length code input to the index output unit 402 is output as a decoding index.
[0009]
By the way, since the appearance probability of the encoded symbol differs depending on the type and context, the encoding efficiency can be improved by providing a variable length encoding table that differs depending on the type of each encoded symbol. For example, MPEG (Moving Picture Experts Group) -4 compliant moving picture coding system internationally standardized by IEC (International Electrotechnical Commission) of ISO (International Organization for Standardization) supports DCT (Discrete Cosine Transform) coefficients. Thus, the coding efficiency is improved by holding variable length coding tables that differ depending on the coding mode.
[0010]
On the other hand, if a variable-length coding table that differs depending on the type of coded symbol is provided, the memory capacity for holding the variable-length coding table increases. For this reason, for example, H.26L video code by JVT (Joint Video Team), which is standardizing work jointly by ISO IEC and ITU-T (International Telecommunication Union-Telecommunication sector) as a high-efficiency video compression method. In the coding method, a memory capacity for holding a variable-length coding table by using a structural variable-length code (referred to as “exp-Golomb code”) generated according to a specific code generation rule. Is a small amount.
[0011]
Hereinafter, a Golomb code as an example of a structural variable length code will be described. FIG. 4 is a conceptual diagram showing the configuration of the Golomb code. As shown in FIG. 4, the Golomb code has an infinite number of nodes represented by node numbers i = 0, 1, 2, 3,. Further, the Golomb code has a tree structure, and at each of these nodes, a branch is made into a tree having an infinite number of nodes and a tree B terminating at a finite number of nodes.
[0012]
FIG. 5 is a diagram showing a variable-length coding table in which the number P of codes of the tree B of the Golomb code and the index number are stored in association with the Golomb code having the tree structure shown in FIG. FIG. 5 illustrates the case where there is no tree B (the number of codes P = 0), the case of a 1-bit fixed length code (the number of codes P = 2), and the case of a 2-bit fixed length code (the number of codes P = 4). To do. With such a Golomb code, a code having different characteristics can be easily generated according to the number of codes P of the tree B.
[0013]
6 is a variable in which the node number Q in which the code number P of the tree B is 2 and the tree B starts to exist and the index number are stored in association with each other in the Golomb code having the tree structure shown in FIG. It is a figure which shows a long coding table. FIG. 6 illustrates the case where the node numbers Q are 0, 1, and 2, respectively. With such a Golomb code, a code having different characteristics can be easily generated according to the value of the node number Q at which the tree B begins to exist.
[0014]
Also, as shown in FIGS. 5 and 6, the variable length is set so that the code length of the Golomb code corresponding to an arbitrary index number does not become larger than the code length of the Golomb code corresponding to an index number larger than that index number. An encoding table can be configured. Hereinafter, such a variable length code having a smaller code number as the index number is smaller is referred to as an “ordered variable length code”. As described above, the structural variable length code has an infinite number of symbols, and a variable length coding table having different characteristics can be realized with a small memory capacity.
[0015]
[Problems to be solved by the invention]
Here, FIG. 7 shows a variable-length coding table when the number of codes P of the Golomb code tree B is 4 and the node number Q at which the tree B begins to exist is 0 when the number of encoded symbols is 14. FIG. As shown in FIG. 7, when a variable-length coding table is configured by a conventional structural variable-length code when the number of appearing encoded symbols is limited to a finite number, a code space that is never used (for example, FIG. 7 is a code starting with “1110” or “1111”. As a result, there is a problem that the encoding efficiency is impaired.
[0016]
Hereinafter, a variable length code that fills all the code spaces with a code in the variable length coding table without a gap is referred to as a “saturated variable length code”. If correction is made so that the variable length coding table of FIG. 7 is saturated, for example, codes that can be distinguished from other codes may be assigned to the codes of index numbers 13 and 14.
[0017]
FIG. 8 shows an example of a variable-length coding table with 14 symbols that has been modified, with the code number “1110” assigned to the index number 13 and the code length “1111” assigned to the index number 14. It is a figure which shows an encoding table. As shown in FIG. 8, the variable length coding table is saturated, but is not an orderly variable length code. As described above, since there is no means for generating a variable-length coding table with a finite number of symbols that is saturated and in order, there is a problem that a finite number of coded symbols cannot be efficiently encoded.
[0018]
Therefore, an object of the present invention is to provide a variable length code generation device, a variable length decoding device, a variable length code generation method, and a variable length decoding method that enable efficient variable length code decoding.
[0019]
[Means for Solving the Problems]
In order to solve the above problems, a variable-length code generation device according to the present invention includes a table size input means for inputting a table size that is the maximum index number of a symbol to be encoded, and an index of the symbol to be encoded. The coding index input means for inputting a coding index that is a number, the finite basic table storage means for storing a finite basic table that is a variable length coding table saturated with a finite number of indexes, and the table size input means. The table size remaining amount and the index remaining amount are calculated based on the table size and the encoded index input by the encoding index input means, and the output index and the index remaining amount are calculated based on the table size remaining amount and the index remaining amount. Output that determines the output table number Index calculating means for updating the table size remaining amount and the remaining index amount, and repeating the output determination and remaining amount updating until the remaining index amount becomes 0, and the index calculating According to the output table number determined by the means, the table selection means for selecting the encoding basic table from the finite basic table storage means, the encoding basic table selected by the table selection means, and the index calculation means Code output means for outputting a variable-length code based on the determined output index;
[0020]
Preferably, the variable-length code generation apparatus according to the present invention further includes coding characteristic input means for inputting coding characteristics, and the finite basic table storage means stores a plurality of finite basic tables classified for each characteristic as finite basic. The table selection unit selects a finite basic table from the finite basic table group corresponding to the encoding characteristic.
[0021]
The variable length code generation device according to the present invention inputs a table size input means for inputting a table size that is the maximum index number of a symbol to be encoded, and an encoding index that is an index number of the symbol to be encoded Coding index input means, a finite basic table storage means for storing a finite basic table that is a variable length coding table saturated with a finite number of indexes, and an infinite code that generates a variable length coding table that does not saturate with a finite index number An output table number for specifying an output basic table, which is a variable-length encoding table used for code generation, based on the table generation means, the table size and the encoding index, and output in the output basic table Determine the output index number corresponding to the code. The index calculation means for outputting, the table selection means for selecting the variable length coding table corresponding to the output table number from the finite basic table storage means or the infinite coding table generation means, and the table selection means Code output means for outputting a variable length code corresponding to the output index number of the variable length coding table.
[0022]
Preferably, the variable-length code generation device according to the present invention further includes coding characteristic input means for inputting a coding characteristic, and the finite basic table storage means stores one or a plurality of finite basic tables classified for each characteristic. Storing as a finite basic table group, the infinite encoding table generating means generates infinite encoding tables having different characteristics according to the encoding characteristics, and the index calculating means includes the encoding characteristics and the table size and Based on the coding index, the output table number and the output index number are determined and output.
[0023]
The variable length decoding device according to the present invention includes a table size input unit that inputs a table size that is a maximum index number of a symbol to be decoded, a variable length code input unit that inputs a variable length code to be decoded, and a finite number A finite basic table storage means for storing a finite basic table that is a variable length coding table saturated with the number of indexes, a table size input by the table size input means, and a variable length input by the variable length code input means A decoding data calculation means for determining a decoding target code and an output table number based on the code, and an encoding basic table from the finite basic table storage means according to the output table number determined by the decoding data calculation means. Table selection means to select, and encoding selected by the table selection means Comprising a present table, and variable length decoding based on the determined decoding target code by the decoding data calculating means, an index output means for outputting the index number.
[0024]
Preferably, the variable length decoding device according to the present invention further comprises coding characteristic input means for inputting a coding characteristic, and the finite basic table storage means stores a plurality of finite basic tables classified for each characteristic as a finite basic table. The table selection means selects a finite basic table from a finite basic table group corresponding to the encoding characteristic.
[0025]
The variable length decoding device according to the present invention includes a table size input means for inputting a table size that is the maximum index number of a symbol to be decoded, and a variable length for inputting an input variable length code that is a variable length code to be decoded. A finite basic table decoding means comprising code input means, means for decoding a finite basic table which is a variable length coding table saturated with a finite number of indexes, and means for decoding a variable length coding table which is not saturated with a finite index number A decoding target code and a decoding target table number based on the infinite encoding table decoding means, the table size input by the table size input means, and the input variable length code input by the variable length code input means. Determined and output decoded data calculation means, and determined by the decoded data calculation means A table decoding means selection means for selecting a table decoding means from the finite basic table decoding means or the infinitely encoded table decoding means according to the decoding target table number, and the table decoding selected by the table decoding means selection means And index output means for performing variable length decoding based on the decoding target code determined by the decoded data calculating means and outputting an index number.
[0026]
In the variable-length decoding device according to the present invention, more preferably, the variable length decoding device further comprises coding characteristic input means for inputting a coding characteristic, and the finite basic table decoding means includes a plurality of finite basic table decoding means classified for each characteristic. The infinite coding table decoding means comprises means for decoding an infinite coding table having different characteristics according to the coding characteristics, and the decoded data calculating means comprises the coding characteristics, the table size, and the Based on the input variable length code, the decoding target code and the decoding target table number are determined and output.
[0027]
The variable length code generation method according to the present invention includes a table size input step in which a variable length code generation device inputs a table size that is a maximum index number of a symbol to be encoded, and the variable length code generation device includes a code A coding index input step for inputting a coding index which is an index number of a symbol to be coded, and a finite basic table which is a variable length coding table in which the variable length code generator is saturated with a finite number of indexes. A finite basic table storage step for storing in a table storage means, the variable length code generation device, the table size input in the table size input step, and the encoding index input in the encoding index input step; Table size remaining and index remaining based on Calculating and determining the output index and the output table number based on the table size remaining amount and the index remaining amount, and performing the remaining amount update for updating the table size remaining amount and the index remaining amount, An index calculation step that repeats the output determination and the remaining amount update until the remaining amount of the index reaches 0, and the variable length code generation device determines whether the finite basic code is in accordance with the output table number determined in the index calculation step. A table selection step for selecting an encoding basic table from the table storage means; an encoding basic table selected by the variable length code generator in the table selection step; and an output index determined in the index calculation step. Code output to output variable length code based on And a step.
[0028]
Preferably, in the variable-length code generation method according to the present invention, the variable-length code generation device further includes an encoding characteristic input step for inputting an encoding characteristic, and in the finite basic table storage step, the variable-length code generation device Stores a plurality of finite basic tables classified for each characteristic as a finite basic table group in the finite basic table storage means, and in the table selection step, the variable-length code generation device corresponds to the encoding characteristic. A finite basic table is selected from the finite basic table group.
[0029]
The variable length code generation method according to the present invention includes a table size input step in which a variable length code generation device inputs a table size that is a maximum index number of a symbol to be encoded, and the variable length code generation device includes a code A coding index input step of inputting a coding index that is an index number of a symbol to be coded, and the variable-length code generation device stores a finite basic table that is a variable-length coding table saturated with a finite number of indexes A finite basic table storage step, an infinite encoding table generation step in which the variable length code generation device generates a variable length encoding table that is not saturated with a finite number of indexes, and the variable length code generation device includes the table size and the Variable length coding used for code generation based on coding index An output table number that identifies an output basic table that is a table, an index calculation step of determining and outputting an output index number corresponding to a code to be output in the output basic table, and the variable-length code generation device, A table selection step for selecting a variable length coding table corresponding to an output table number in the finite basic table storage step or the infinite coding table generation step, and the variable length code generation device in the table selection step. And a coding output step of outputting a variable length code corresponding to the output index number of the selected variable length coding table.
[0030]
Preferably, in the variable-length code generation method according to the present invention, the variable-length code generation device further includes an encoding characteristic input step for inputting an encoding characteristic, and in the finite basic table storage step, the variable-length code generation device Stores one or a plurality of finite basic tables classified for each characteristic as a finite basic table group in the finite basic table storage means, and in the infinite encoding table generating step, the variable length code generating device includes the code Generating an infinite encoding table having different characteristics according to encoding characteristics, and in the index calculating step, the variable length code generating device generates the output table based on the encoding characteristics, the table size, and the encoding index. Determine the number and output index number and output.
[0031]
The variable length decoding method according to the present invention includes a table size input step in which a variable length decoding device inputs a table size that is a maximum index number of a symbol to be decoded, and the variable length decoding device has a variable to be a decoding target. A variable length code input step for inputting a long code, and a finite basic table storage step in which the variable length decoding device stores a finite basic table, which is a variable length encoding table saturated with a finite number of indexes, in a finite basic table storage means; The variable length decoding apparatus determines a decoding target code and an output table number based on the table size input in the table size input step and the variable length code input in the variable length code input step. The decoded data calculating step, and the variable length decoding device is determined in the decoded data calculating step A table selection step for selecting an encoding basic table from the finite basic table storage means according to the output table number, and an encoding basic table selected by the variable length decoding device in the table selection step; An index output step of performing variable length decoding based on the decoding target code determined in the decoding data calculation step and outputting an index number.
[0032]
Preferably, the variable length decoding method according to the present invention further includes an encoding characteristic input step in which the variable length decoding apparatus inputs an encoding characteristic, and in the finite basic table decoding step, the variable length decoding apparatus is classified for each characteristic. Decoding the plurality of finite basic tables, and in the infinite coding table decoding step, the variable length decoding device includes a step of decoding an infinite coding table having different characteristics according to the coding characteristics, In the decoded data calculation step, the variable length decoding device determines and outputs the decoding target code and the decoding target table number based on the encoding characteristics, the table size, and the input variable length code.
[0033]
In the variable length decoding method according to the present invention, the variable length decoding device inputs a table size that is a maximum index number of a symbol to be decoded, and the variable length decoding device is a decoding target. A variable length code input step of inputting an input variable length code that is a variable length code, and a step of decoding a finite basic table that is a variable length coding table in which the variable length decoding device is saturated with a finite index number A table decoding step, an infinite coding table decoding step including a step in which the variable length decoding device decodes a variable length coding table that is not saturated with a finite number of indexes, and the variable length decoding device includes the table size input step. And the table size that was input and the variable length code input step A decoding data calculation step for determining and outputting a decoding target code and a decoding target table number based on the input variable length code, and a decoding target table number determined by the variable length decoding device in the decoding data calculation step And a table decoding means selection step for selecting a table decoding means in the finite basic table decoding step or the infinite coding table decoding step, and the variable length decoding device is selected in the table decoding means selection step. The table decoding means, and an index output step for performing variable length decoding based on the decoding target code determined in the decoded data calculation step and outputting an index number.
[0034]
In the variable length decoding method according to the present invention, more preferably, the variable length decoding device further includes a coding characteristic input step for inputting a coding characteristic, and in the finite basic table storage step, the variable length decoding device includes: A plurality of finite basic tables classified for each characteristic are stored in the finite basic table storage means as a finite basic table group, and in the infinite encoding table generating step, the variable length decoding device is responsive to the encoding characteristics. Infinite encoding tables having different characteristics, and in the table selection step, the variable length decoding device, depending on the encoding characteristics, the finite basic table group stored in the finite basic table storage means, or The finite basic table is selected from the infinite encoding table generated in the infinite encoding table generating step.
[0035]
In the variable-length code generation device according to the present invention, more preferably, the index calculation means uses the output index as the output index when the index remaining amount before the remaining amount update is larger than a maximum index number in the output table number. The maximum index number in the output table number is output.
[0036]
In the variable-length code generation device according to the present invention, more preferably, when the table selection unit selects the finite basic table as an encoding basic table, the table selection unit selects a code corresponding to the minimum index number of the finite basic table. A table having a code length larger than the code length difference between the codes in the variable length coding table generated by the infinite coding table generating means is selected.
[0037]
In the variable-length code generation method according to the present invention, more preferably, in the index calculation step, the variable-length code generation device causes the remaining amount of the index before the remaining amount update to be greater than a maximum index number in the output table number. In this case, the maximum index number in the output table number is output as the output index.
[0038]
In the variable-length code generation method according to the present invention, more preferably, in the table selection step, when the variable-length code generation device selects the finite basic table as an encoding basic table, A table is selected in which the code length of the code corresponding to the minimum index number is larger than the code length difference between the codes in the variable length coding table generated in the infinite coding table generating step.
[0039]
The variable length code generation device according to the present invention inputs a table size input means for inputting a table size that is the maximum index number of a symbol to be encoded, and an encoding index that is an index number of the symbol to be encoded Encoding index input means for generating, a finite basic table generating means for generating a variable length encoding table saturated with a finite number of indexes, and an infinite encoding table generating means for generating a variable length encoding table not saturated with a finite index number; , Based on the table size and the coding index, an output table number that identifies an output basic table that is a variable-length coding table used for code generation, and an output corresponding to a code to be output in the output basic table Index number to be determined and output Calculation means, table selection means for selecting a variable length coding table corresponding to the output table number from the finite basic table generation means or the infinite coding table generation means, and the variable length selected by the table selection means Code output means for outputting a variable length code corresponding to the output index number of the encoding table.
[0040]
Preferably, the variable-length code generation device according to the present invention further comprises coding characteristic input means for inputting a coding characteristic, and the infinite coding table generation means has infinite encoding with different characteristics depending on the coding characteristics. Generate a table.
[0041]
The variable length decoding device according to the present invention includes a table size input means for inputting a table size that is the maximum index number of a symbol to be decoded, and a variable length for inputting an input variable length code that is a variable length code to be decoded. Infinite coding comprising code input means, finite coding table decoding means comprising means for decoding a variable length coding table saturated with a finite number of indexes, and means for decoding variable length coding tables not saturated with a finite number of indexes Based on the table decoding means, the table size input by the table size input means, and the input variable length code input by the variable length code input means, a decoding target code and a decoding target table number are determined and output. And a decryption target table determined by the decryption data calculation unit. A table decoding means selection means for selecting a table decoding means from the finite encoding table decoding means or the infinite encoding table decoding means according to a number; a table decoding means selected by the table decoding means selection means; Index output means for performing variable length decoding based on the decoding target code determined by the decoded data calculation means and outputting an index number.
[0042]
Preferably, the variable length decoding device according to the present invention further comprises coding characteristic input means for inputting a coding characteristic, and the infinite coding table decoding means has an infinite coding table having different characteristics according to the coding characteristics. Is decrypted.
[0043]
In the variable-length code generation device according to the present invention, more preferably, encoding characteristic information storage means for storing the encoding characteristic corresponding to each variable-length encoding table as encoding characteristic information, and the encoding characteristic information Is further provided with encoding characteristic information output means for outputting, and variable length code generating means for generating variable length codes in accordance with the encoding characteristic information stored in the encoding characteristic information storage means.
[0044]
In the variable length decoding device according to the present invention, more preferably, encoding characteristic information input means for inputting the encoding characteristic corresponding to each variable length encoding table as encoding characteristic information, and the encoding characteristic information Coding characteristic information storage means for storing and variable length decoding means for performing variable length decoding according to the coding characteristic information stored in the coding characteristic information storage means are further provided.
[0045]
The variable length code generation method according to the present invention includes a table size input step in which a variable length code generation device inputs a table size that is a maximum index number of a symbol to be encoded, and the variable length code generation device includes a code A coding index input step of inputting a coding index that is an index number of a symbol to be converted, and a finite basic table generation step in which the variable length code generation device generates a variable length coding table saturated with a finite number of indexes And an infinite coding table generating step in which the variable length code generating device generates a variable length coding table that is not saturated with a finite number of indexes, and the variable length code generating device includes the table size and the coding index. Output base which is a variable length coding table used for code generation based on An output table number for specifying a table, an index calculation step for determining and outputting an output index number corresponding to a code to be output in the output basic table, and the variable-length code generation device corresponding to the output table number A table selection step for selecting a variable-length coding table to be selected from the finite basic table or the infinite coding table; and the output of the variable-length coding table selected by the variable-length code generator in the table selection step. A code output step of outputting a variable length code corresponding to the index number.
[0046]
Preferably, in the variable-length code generation method according to the present invention, the variable-length code generation device further includes an encoding characteristic input step for inputting an encoding characteristic, and the infinite encoding table generation step includes the encoding characteristic in the encoding characteristic input step. In response, an infinite encoding table having different characteristics is generated.
[0047]
The variable length decoding method according to the present invention includes a table size input step for inputting a table size that is a maximum index number of a symbol to be decoded by the variable length decoding device, and a variable length code to be decoded by the variable length decoding device. A variable length code input step for inputting an input variable length code, a finite coding table decoding step including a step for decoding the variable length coding table in which the variable length decoding device is saturated with a finite index number, and the variable length An infinite coding table decoding step including a step of decoding a variable length coding table in which the decoding device does not saturate at a finite index number, the variable length decoding device includes the table size input in the table size input step, Decoding target based on the input variable length code input in the variable length code input step Decoding data calculation step for determining and outputting a decoding target table number and the variable length decoding device according to the decoding target table number determined in the decoding data calculation step, the finite encoding table decoding step Alternatively, a table decoding means selection step for selecting a table decoding means in the infinite encoding table decoding step, a table decoding means selected by the variable length decoding device in the table decoding means selection step, and the decoded data calculation An index output step of performing variable length decoding based on the decoding target code determined in the step and outputting an index number.
[0048]
Preferably, in the variable-length decoding method according to the present invention, the variable-length decoding device further includes a coding characteristic input step for inputting a coding characteristic, and the infinite coding table decoding step corresponds to the coding characteristic. Decode an infinite encoding table with different characteristics.
[0049]
In the variable-length code generation method according to the present invention, more preferably, the variable-length code generation device stores the encoding characteristic corresponding to each variable-length encoding table as encoding characteristic information in an encoding characteristic information storage unit. An encoding characteristic information storing step to store, an encoding characteristic information output step in which the variable length code generation device outputs the encoding characteristic information, and the variable length code generation device in the encoding characteristic information storage step. And a variable-length code generation step for generating a variable-length code in accordance with the stored encoding characteristic information.
[0050]
In the variable length decoding method according to the present invention, more preferably, the variable length decoding device inputs the encoding characteristic information corresponding to each variable length encoding table as encoding characteristic information, and The variable length decoding device stores the encoding characteristic information in the encoding characteristic information storage means, and the variable length decoding device is stored in the encoding characteristic information storage step. A variable-length decoding step for performing variable-length decoding according to the encoding characteristic information.
[0051]
In the variable length code generation device according to the present invention, more preferably, the coding characteristic information output means performs variable length coding on the coding characteristic information and transmits it.
[0052]
In the variable-length code generation device according to the present invention, more preferably, the encoding characteristic information output means performs multidimensional variable-length encoding on a plurality of parameters that determine the characteristics of the variable-length encoding table, so that the code Output optimization characteristic information.
[0053]
In the variable-length code generation device according to the present invention, more preferably, the encoding characteristic information output unit outputs the encoding characteristic combination information corresponding to a plurality of variable-length encoding tables as the encoding characteristic information. .
[0054]
In the variable-length code generation device according to the present invention, more preferably, the coding characteristic information output means outputs a coding characteristic value different from a default value of the coding characteristic as the coding characteristic information.
[0055]
In the variable-length code generation device according to the present invention, more preferably, the encoding characteristic information output means outputs a difference value between a default value of the encoding characteristic and an encoding characteristic value as the encoding characteristic information.
[0056]
In the variable length decoding device according to the present invention, more preferably, the coding characteristic information input means performs variable length decoding on the coding characteristic information.
[0057]
In the variable-length decoding device according to the present invention, more preferably, the encoding characteristic information input means performs the multi-dimensional variable-length decoding on the plurality of parameters that determine the characteristics of the variable-length encoding table, thereby Enter information.
[0058]
In the variable-length decoding device according to the present invention, more preferably, the coding characteristic information input means inputs the coding characteristic combination information corresponding to a plurality of variable-length coding tables as the coding characteristic information.
[0059]
In the variable length decoding device according to the present invention, more preferably, the coding characteristic information input means inputs a coding characteristic value different from a default value of the coding characteristic as the coding characteristic information.
[0060]
In the variable length decoding device according to the present invention, more preferably, the coding characteristic information input means inputs a difference value between a default value of the coding characteristic and a coding characteristic value as the coding characteristic information.
[0061]
In the variable length code generation method according to the present invention, more preferably, in the encoding characteristic information output step, the variable length code generation device performs variable length encoding on the encoding characteristic information and transmits the encoded characteristic information.
[0062]
In the variable-length code generation method according to the present invention, more preferably, in the coding characteristic information output step, the variable-length code generation device sets a plurality of parameters for determining characteristics of the variable-length coding table as a multidimensional variable length. The encoding characteristic information is output by encoding.
[0063]
In the variable-length code generation method according to the present invention, more preferably, in the encoding characteristic information output step, the variable-length code generation device uses the encoding characteristic combination information corresponding to a plurality of variable-length encoding tables. The encoded characteristic information is output.
[0064]
In the variable-length code generation method according to the present invention, more preferably, in the encoding characteristic information output step, the variable-length code generation device sets an encoding characteristic value different from a default value of the encoding characteristic to the encoding characteristic. Output as information.
[0065]
In the variable-length code generation method according to the present invention, more preferably, in the encoding characteristic information output step, the variable-length code generation device uses a difference value between a default value of the encoding characteristic and an encoding characteristic value as the difference value. Output as coding characteristic information.
[0066]
In the variable length decoding method according to the present invention, more preferably, in the coding characteristic information input step, the variable length decoding device performs variable length decoding on the coding characteristic information.
[0067]
In the variable length decoding method according to the present invention, more preferably, in the coding characteristic information input step, the variable length decoding device performs multidimensional variable length decoding on a plurality of parameters that determine characteristics of the variable length coding table. Thus, the coding characteristic information is input.
[0068]
In the variable-length decoding method according to the present invention, more preferably, in the coding characteristic information input step, the variable-length decoding device uses the coding characteristic combination information corresponding to a plurality of variable-length coding tables as the code. Input as the conversion characteristic information.
[0069]
In the variable length decoding method according to the present invention, more preferably, in the encoding characteristic information input step, the variable length decoding device uses an encoding characteristic value different from a default value of the encoding characteristic as the encoding characteristic information. input.
[0070]
In the variable-length decoding method according to the present invention, more preferably, in the encoding characteristic information input step, the variable-length decoding device performs a difference value between a default value of the encoding characteristic and an encoding characteristic value in the encoding Enter as characteristic information.
[0071]
In the variable-length code generation device according to the present invention, more preferably, the index calculation means includes a lookup table, and determines an output table number and an output index number using the lookup table.
[0072]
In the variable length decoding device according to the present invention, more preferably, the decoded data calculation means includes a lookup table, and determines a decoding target table number and a decoding target code using the lookup table.
[0073]
In the variable length code generation method according to the present invention, more preferably, in the index calculation step, the variable length code generation apparatus determines an output table number and an output index number using a lookup table.
[0074]
In the variable length decoding method according to the present invention, more preferably, in the decoded data calculation step, the variable length decoding apparatus determines a decoding target table number and a decoding target code using a lookup table.
[0075]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, a variable-length code generation device, a variable-length decoding device, a variable-length code generation method, and a variable-length decoding method according to first and second embodiments of the present invention will be described with reference to the drawings.
[0076]
(First embodiment)
First, the first embodiment will be described.
FIG. 9 is a block diagram schematically showing the configuration of the variable-length code generation device 500 according to the first embodiment. As illustrated in FIG. 9, the variable-length code generation apparatus 500 includes an index calculation unit 501, a table selection unit 502, a finite basic table storage unit 503, and a code output unit 504.
[0077]
The index calculation unit 501 calculates an output table number indicating a basic table to be used and an index number (output index) in the output basic table based on the table size and the encoding index input to the variable length code generation device 500. To do.
[0078]
The table selection unit 502 selects a basic table group to be used from the basic table groups stored in the finite basic table storage unit 503 according to the encoding characteristics. Further, the table selection unit 502 selects a basic table from the selected basic table group according to the output table number, and provides it to the later-described code output unit 504 as an encoded basic table.
[0079]
The finite basic table storage unit 503 stores a plurality of basic table groups a, b.
The code output unit 504 acquires a code corresponding to the output index from the encoding basic table and outputs it as a variable length code.
[0080]
Next, FIG. 10 is a diagram showing an in-order variable length coding table in which the number of symbols is saturated at 2, 3, 4, 5, and 6, respectively. That is, the table with 2 symbols is Table 2, the table with 3 symbols is Table 3, the table with 4 symbols is Table 4-1, Table 4-2, and the table with 5 symbols is Table 5-1, Table 5-2. And Table 5-3, and the tables with 6 symbols are Table 6-1, Table 6-2, Table 6-3, Table 6-4, and Table 6-5. These tables are used to generate other tables, and are referred to as “basic tables”.
[0081]
Here, variable length coding tables saturated with five types of n symbols having different characteristics are shown in Table (n) -a, Table (n) -b, Table (n) -c, Table (n) -d, Table ( n) Set to -e. The basic table used to generate a code having these five types of characteristics a, b, c, d, e is shown in FIG. Table 4-1, Table 5-1, and Table 6-1 are used, and these tables are hereinafter referred to as “basic table group a”.
[0082]
Similarly, Table 2, Table 3, Table 4-1, Table 5-1, and Table 6-2 are used as the basic table group b for code generation of the characteristic b, and Table 2, Table 3, Table 4-1, Table 5-2, and Table 6-3 are The basic table group c is used for code generation of the characteristic c. Further, Table 2, Table 3, Table 4-2, Table 5-2, and Table 6-4 are used for code generation of the characteristic d as the basic table group d, and Table 2, Table 3, Table 4-2, Table 5-3, and Table 6-5 are as follows. The basic table group e is used for code generation of the characteristic e.
[0083]
In the code generation in the first embodiment of the present invention, these saturated and in-order basic tables are held, and the basic table is added with the code having the longest code length of these basic tables as an escape code. By doing so, a variable-length coding table is formed which is saturated and in order with a larger number of symbols.
[0084]
Specifically, for example, the m-th (1 ≦ m ≦ n) code (coding index = m) of the table of the characteristic s (encoding characteristic = s) saturated with n symbols is generated. For this purpose, a variable length code is generated using the table of the basic table group s by the procedure shown in the flowchart of FIG.
[0085]
First, i = n, j = m, and k = 6 are set (S11).
Subsequently, if i is 7 or more and j is 6 or more, the sixth code in Table 6-s is output (S12), and 5 is subtracted from i and j (S13). Further, k is determined to be the smaller value of i and 6. Then, while i is 7 or more and j is 6 or more, the processes of S12 and S13 are repeated. On the other hand, if i is 7 or more and j is not 6 or more, the j-th code of Tablek-s is output (S14).
[0086]
As an example of a code generated by such a method, a variable length coding table for the number of symbols n = 15 and the characteristics s = a, b, c, d, e is shown in FIG.
As shown in FIG. 13, the plurality of types of tables generated by this method are configured such that the gradient of the code length distribution becomes smaller in the order of characteristics a, b, c, d, and e. Therefore, a variable-length coding table close to characteristic a is used when the value of a certain symbol to be encoded is easy to estimate, and a variable-length coding table close to characteristic e is used when estimation is difficult. Can be encoded.
[0087]
FIG. 14 is a block diagram schematically showing the configuration of the variable length decoding device 600 according to the first embodiment of the present invention. As shown in FIG. 14, the variable length decoding device 600 includes a decoded data calculation unit 601, a table selection unit 602, a finite basic table storage unit 603, and an index output unit 604.
[0088]
Based on the table size and variable length code input to the variable length decoding device 600, the decoded data calculation unit 601 outputs an output table number indicating a basic table to be used, and a variable length code (decoding target) based on the basic table. (Target code) is output.
[0089]
The table selection unit 602 selects a basic table group to be used from the basic table groups stored in the finite basic table storage unit 603 according to the encoding characteristics. Further, the table selection unit 602 selects a basic table from among them according to the output table number, and provides it to the index output unit 604 described later as an encoded basic table.
[0090]
The finite basic table storage unit 603 stores a plurality of basic table groups a, b.
The index output unit 604 acquires an index value for a code that matches the decoding target code from the encoding basic table, and outputs it as an index number obtained as a result of decoding.
[0091]
Also on the decoding side, the number of symbols and characteristics of the variable-length coding table for the decoding target symbol are determined in advance by means similar to the coding. Therefore, it can be easily decoded through the steps shown in the flowchart of FIG.
[0092]
First, i = n and j = 0 are set (S21).
Subsequently, if i is 7 or more and the first part of the input code is the sixth code in Table 6-s, the sixth code in Table 6 of the characteristic s is skipped (S22), i 5 is subtracted from 5 and 5 is added to j. Further, k is determined to be the smaller value of i and 6 (S23). As a result, the portion that matches the sixth code in Table 6-s is deleted. And while i is 7 or more, the process of S22-S23 is repeated.
[0093]
On the other hand, if i is not 7 or more, the index value p of the code that coincides with the head of the code string is obtained from the Tablek codes of the characteristic s, and the code is skipped (S24). Then, a code matching Tablek-s is searched from the head of the input code sequence. If the code is p-th, p is added to j, and the resulting j is output as a decoded value. (S25).
[0094]
In the first embodiment of the present invention, a variable-length code is generated using a basic table having 2 to 6 symbols. However, the number of symbols is not limited to these values. Alternatively, all or part of up to 8 saturated and in-order variable length coding tables may be used as the basic table. Further, a saturated and orderly variable length coding table of all or a part of the number of symbols larger than that may be used as the basic table.
[0095]
Further, for example, a configuration may be adopted in which the characteristic s = f that minimizes the distribution of the code length distribution is introduced by the method shown in the flowchart of FIG. That is, the m-th code in the table of the characteristic t with the number of symbols n is output through the following steps.
[0096]
First, 2 g ≦ n <2 g + 1 G satisfying the above is obtained (S31).
As a result, m ≦ 2 g + 1 If -n, the m-th code of the g-bit fixed length code is output (S32), and the encoding ends. Meanwhile, m> 2 g + 1 If -n, g + 1 bit fixed length code (m + 2 g + 1 -N) The code is output (S33), and the encoding ends.
[0097]
As an example, FIG. 17 shows a sign of the characteristic s = f when the number of symbols n = 15. The sign of the characteristic f can be easily decoded by the following procedure as shown in the flowchart of FIG.
[0098]
First, 2 g ≦ n <2 g + 1 G satisfying the above is obtained (S41).
Subsequently, the first g bits of the input code sequence are fixed-length decoded, and the index number of the corresponding g-bit fixed-length code is obtained as the rank r (S42). r ≦ 2 g + 1 If -n, r is output as a decoded symbol (S43), and decoding ends.
[0099]
r> 2 g + 1 -N, j = 2r-2 g + 1 + N is set (S44), and if the next 1 bit is 1, 1 is added to j (S45). The obtained j is output as a decoded symbol (S46), and decoding ends.
[0100]
As described above, according to the variable-length code generation device, the variable-length decoding device, the variable-length code generation method, and the variable-length decoding method according to the first embodiment of the present invention, it has a plurality of types of characteristics. In addition, it is possible to construct a variable-length coding table that is saturated and in order with a finite number of symbols. As a result, efficient variable length code decoding is possible.
[0101]
(Second Embodiment)
The variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method according to the second embodiment of the present invention are as shown in the basic table (see FIG. 11) in the first embodiment. Further, one or a plurality of saturated and orderly tables having a small number of symbols and a non-saturated structural variable length code such as a Golomb code are used in combination.
[0102]
FIG. 19 is a block diagram schematically showing a configuration of a variable-length code generation apparatus 700 in the present embodiment. FIG. 45 is a block diagram schematically showing a configuration of a variable-length code generation apparatus 700 according to a modification of the present embodiment. As shown in FIGS. 19 and 45, the variable-length code generation apparatus 700 includes an index calculation unit 701, a table selection unit 702, an infinite encoding table generation unit 703, a finite basic table storage unit 704, and a code output unit 705. .
[0103]
The index calculation unit 701 calculates an output table number indicating a basic table to be used and an index number (output index) in the output basic table based on the table size and the encoding index input to the variable length code generation device 700. To do.
As shown in FIG. 45, the index calculation unit 701 outputs an output table number indicating a basic table to be used based on the coding characteristics, the table size, and the coding index input to the variable-length code generation apparatus 700. , And an index number (output index) in the output basic table may be employed.
[0104]
The table selection unit 702 is based on the basic table group stored in the finite basic table storage unit 704 or the variable length encoding table generated by the infinite encoding table generation unit 703 according to the encoding characteristics and the output index number. The basic table to be used is selected and provided to the code output unit 705 described later as an encoded basic table.
As shown in FIG. 45, the table selection unit 702 is a variable generated by the basic table group stored in the finite basic table storage unit 704 or the infinite encoding table generation unit 703 according to the output index number. It is also possible to adopt a mode in which a basic table to be used is selected from the long encoding table and provided as an encoding basic table to the code output unit 705 described later.
[0105]
The infinite encoding table generation unit 703 generates a variable length encoding table using the input encoding characteristics.
The finite basic table storage unit 704 stores a plurality of basic table groups a, b.
The code output unit 705 acquires a code corresponding to the output index from the encoding basic table and outputs it as a variable length code.
[0106]
Hereinafter, a variable length code generation method using Golomb code as an example will be described. In the Golomb code shown in FIG. 5, the combination of the code number P of the tree B and the node number Q where the tree B begins to exist (P, Q) is (2, 2) as the characteristic a. Further, the case of (2, 1) is the characteristic b, the case of (2, 0) is the characteristic c, the case of (3, 0) is the characteristic d, and the case of (4, 0) is the characteristic e. To do. These variable length coding tables are shown in FIG.
[0107]
FIG. 21 shows a basic table used in the variable-length code generation method and variable-length decoding method according to the second embodiment of the present invention. As shown in FIG. 21, the basic table stores the index number and the Golomb code of each table in association with each other. FIG. 22 shows the correspondence between the characteristics a to e of the variable length coding table used in this embodiment and the basic table.
[0108]
Here, the Golomb code is an orderly variable length code that does not saturate, but a saturated variable length code can be generated by replacing any node of the Golomb code with the basic table C as shown in FIG. it can. However, the variable length coding cannot always be configured in order only by this replacement process.
[0109]
Therefore, in the code generation in the second embodiment of the present invention, the basic table in which the minimum code length of the basic table C for replacing the node of the Golomb code is equal to or larger than the maximum code length of the tree B in the Golomb code. Is used to construct a variable-length coding table that is saturated and in order so that code length inversion does not occur.
[0110]
Specifically, for example, in order to generate the mth code of the table of the characteristic s saturated with n symbols, the table of the basic table group s and the Golomb code corresponding to the characteristic s shown in FIG. As shown in the flowchart of FIG. 24, a code is generated by the following procedure.
[0111]
In S51, the combination of the coefficients of the Golomb code corresponding to the characteristic s (P s , Q s ) And n, h = (n−Q s )% P s Is required. Here, the operator “%” means performing a modulo operation. If h = 0, h = P s (S52).
[0112]
Subsequently, the remaining number L is L = h + P s (S53). When m ≦ n−L, the m-th coefficient of the Golomb code corresponding to the characteristic s is output (S54), and the encoding ends.
On the other hand, when m> n−L, (n−L + Q s ) / P s Following the output of the code “1” (S55), the (m + L−n) th code of the basic table with the number of symbols L is output in the basic table group s (S56), and the encoding is completed. . FIG. 25 shows a variable length coding table corresponding to characteristics a to e with the number of symbols n = 15 in the case of such a configuration.
[0113]
Next, FIG. 26 is a block diagram schematically showing a configuration of a variable-length decoding device 800 in the second embodiment of the present invention. FIG. 46 is a block diagram schematically showing a configuration of a variable length decoding device 800 according to a modification of the present embodiment. As shown in FIGS. 26 and 46, the variable-length decoding apparatus 800 includes a decoded data calculation unit 801, a table selection unit 802, an infinite coding table generation unit 803, a finite basic table storage unit 804, and an index output unit 805. .
[0114]
Based on the table size and variable length code input to the variable length decoding device 800, the decoded data calculation unit 801 outputs an output table number indicating a basic table to be used, and a variable length code (decoding target) based on the basic table. (Target code) is output.
As shown in FIG. 46, the decoded data calculation unit 801 should be used based on the coding characteristics, the table size, and the variable length code input to the variable length decoding device 800. A mode of outputting an output table number indicating the basic table and a variable length code (decoding target code) to be decoded by the basic table may be employed.
[0115]
The table selection unit 802 is based on the basic table group stored in the finite basic table storage unit 804 or the variable length coding table generated by the infinite coding table generation unit 803 according to the coding characteristics and the output index number. A basic table to be used is selected and provided as an encoded basic table to an index output unit 805 described later.
46, the table selection unit 802 is a variable generated by the basic table group stored in the finite basic table storage unit 804 or the infinite encoding table generation unit 803 in accordance with the output table number. It is also possible to select a basic table to be used from the long encoding table and provide it as an encoding basic table to the index output unit 805 described later.
[0116]
The infinite encoding table generation unit 803 generates a variable length encoding table using the input encoding characteristics.
The finite basic table storage unit 804 stores a plurality of basic table groups a, b.
[0117]
The index output unit 805 acquires an index value for a code that matches the decoding target code from the encoding basic table, and outputs it as an index number obtained as a result of decoding.
[0118]
The variable length code configured as described above can be easily decoded by the following procedure as shown in the flowchart of FIG.
In S61, the combination of the coefficients of the Golomb code corresponding to the characteristic s (P s , Q s ) And n, h = (n−Q s )% P s Is required. Here, the operator “%” means performing a modulo operation. If h = 0, h = P s (S62).
[0119]
Next, the remaining number L is L = h + P s (S63). In S64, the number of the first code “1” is t. t ≦ Q s In the case of −1, j = t + 1 is output as a decoded symbol (S65), and decoding ends.
[0120]
On the other hand, t is (n−L + Q s ) / P s If the number is smaller than t, t bits are skipped (S66), and then t symbols “1” are continued (P s The +1) -bit fixed length code is decoded and the result is set to u (S67). And (tQ s ) ・ P s As + u is output as a decoded symbol (S68), decoding ends.
[0121]
Furthermore, t is (n−L + Q s ) / P s In the case of more than one, (n−L + Q s ) / P s After skipping bits (S69), (n-L + Q s ) / P s It is determined which index number in the basic table of the number L of symbols the code following the code “1” corresponds to, and the index number is set to I (S70). Then, with the output of I + n−L as a decoded symbol (S71), decoding ends.
[0122]
As described above, according to the variable length code generation device, the variable length decoding device, the variable length code generation method, and the variable length decoding method according to the second embodiment of the present invention, it has a plurality of types of characteristics. In addition, it is possible to construct a variable-length coding table that is saturated and in order with a finite number of symbols. As a result, more efficient variable length code decoding is possible.
[0123]
In the present embodiment, a specific Golomb code is used as an example, but the present invention can be applied to any Golomb code or other structural code. Furthermore, although the variable length code is generated using the basic table having 2 to 8 symbols, it is needless to say that the number of symbols of 9 or more can be used.
[0124]
In the present embodiment, the remaining number L and the number of consecutive codes “1” are calculated by calculation processing when codec is decoded. However, a series of these calculation processing is performed in advance. It may be performed with reference to a table.
[0125]
That is, for example, the remaining number L can be easily obtained for the table of the characteristic c saturated with n symbols using the lookup table shown in FIG. Further, the value of (n−L + Qs) / Ps can be easily obtained by configuring a lookup table in advance. FIG. 42 is a diagram illustrating a lookup table corresponding to (n−L + Qs) / Ps when n = 15. By referring to such a lookup table, the same effect can be obtained with a smaller amount of calculation in code decoding.
[0126]
Further, in order to decode the code having the characteristic s saturated with n symbols, the table of the basic table group s may be used for decoding according to the following procedure as shown in the flowchart of FIG.
[0127]
First, in S131 of FIG. 43, the remaining number L corresponding to the characteristic s is obtained from the value of n from the lookup table of FIG. Next, the number of codes “1” that are consecutive at the beginning of the input code sequence is counted as t (S132). Subsequently, when the count t is given, the number of bits to be read next from the code sequence is obtained from the lookup table.
[0128]
FIG. 44 is a diagram showing a look-up table having a count t and the number of bits v to be read when n = 15. If t ≦ (Qs−1), t bits are skipped and j = t + 1 is output as a decoded symbol (S133), and decoding ends.
[0129]
Next, when t <(n−L + Qs) / Ps, t bits are skipped, the subsequent v bits are read (S134), and the index number in the basic table of the characteristic e of the number of symbols Qs corresponds to. The index number is determined as u (S135). Then, (t-Qs) * Ps + u is output as a decoded symbol (S136), and decoding ends.
[0130]
Further, when t ≧ (n−L + Qs) / Ps, (n−L + Qs) / Ps bits are skipped (S137), the subsequent v bits are read, and the corresponding index number in the basic table of the number of symbols L The index number is set to l (S138). When l + n−L is output as a decoded symbol (S139), decoding ends. Thereby, a suitable codec decoding process can be performed with a small calculation amount.
[0131]
(Third embodiment)
The variable-length code generation device, variable-length decoding device, variable-length code generation method, and variable-length decoding method in the third embodiment of the present invention are the same as those in the first embodiment, instead of the basic table in the second embodiment. Means for generating and decoding a finite encoding table used for the characteristic s = f in the embodiment is provided. 28 to 32, 47, and 48, components that are the same as those already described are given the same reference numerals at the end, and redundant descriptions are omitted.
[0132]
FIG. 28 is a block diagram schematically showing a configuration of a variable-length code generation apparatus 900 according to the present embodiment. FIG. 47 is a block diagram schematically showing a configuration of a variable-length code generation apparatus 900 according to a modification of the present embodiment. As shown in FIGS. 28 and 47, the variable-length code generation apparatus 900 includes an index calculation unit 901, a table selection unit 902, an infinite encoding table generation unit 903, a finite encoding table generation unit 904, and a code output unit 905. Prepare.
[0133]
The finite encoding table generation unit 904 uses the finite encoding table generation means (corresponding to the processing shown in steps S31 to S33 in FIG. 16) for the characteristic s = f in the first embodiment to change the length of the finite symbol number. The encoding table is provided to the table selection unit 902 as a basic table.
[0134]
FIG. 29 is a flowchart illustrating the procedure of the variable-length code generation method according to the present embodiment. The procedure of the variable-length code generation method in this embodiment is different from that in the second embodiment in that step S56 in FIG. 24 is replaced with step S86 shown below. Note that steps S81 to S85 in FIG. 29 correspond to steps S51 to S55 in FIG. 24, respectively.
[0135]
That is, in step S86, the m + Lnth code of the finite encoding table with the number of symbols L is output by the procedure shown in steps S31 to S33. FIG. 30 shows an example of a variable length coding table corresponding to the characteristics a to e with the number of symbols n = 15 configured by the processing.
[0136]
FIG. 31 is a block diagram schematically showing a configuration of a variable length decoding device 1000 according to the third embodiment of the present invention. FIG. 48 is a block diagram schematically showing a configuration of a variable-length code generation apparatus 1000 according to a modification of the present embodiment. As shown in FIGS. 31 and 48, the variable-length decoding apparatus 1000 includes a decoded data calculation unit 1001, a table selection unit 1002, an infinite encoding table generation unit 1003, a finite encoding table generation unit 1004, and an index output unit 1005. Prepare.
[0137]
The finite encoding table generation unit 1004 generates a finite encoding table for the characteristic s = f in the first embodiment and provides it to the table selection unit 1002. FIG. 32 is a flowchart showing the procedure of the variable length decoding method according to the present embodiment. The procedure of the variable-length decoding method in the present embodiment is different from the second embodiment in that step S70 in FIG. 27 is replaced with step S101 shown below. Note that steps S91 to S100 in FIG. 32 correspond to steps S61 to S70 in FIG. 27, respectively.
[0138]
In step S101, through the procedure shown in steps S41 to S46 (see FIG. 18), the corresponding index number I is output in the finite encoding table with the number of symbols L.
[0139]
As described above, in the third embodiment of the present invention, a finite encoding table generating unit is provided instead of holding the finite basic table. Therefore, according to the variable-length code generation device, variable-length decoding device, variable-length code generation method, and variable-length decoding method according to the present embodiment, there are a plurality of types of characteristics with a smaller amount of memory, and finite symbols It is possible to construct a variable length coding table that is saturated in number and in order. As a result, more efficient variable-length code decoding can be performed with a smaller amount of memory.
[0140]
In the present embodiment as well, by using a lookup table as in the second embodiment, suitable codec decoding can be performed with a smaller amount of computation.
[0141]
(Fourth embodiment)
The variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method in the fourth exemplary embodiment of the present invention are the same in order to encode a plurality of types of encoding target symbols. Alternatively, the information source encoder 101 (see FIG. 1) including a plurality of types of variable length coding tables having different coding characteristics outputs coding characteristic information that is a characteristic for each variable length coding table. Also, by inputting the coding characteristic information to the information source decoder 105, variable length decoding is performed using a variable length coding table having the same characteristics as the information source encoder 101.
[0142]
FIG. 33 is a block diagram schematically showing a configuration of a variable-length code generation device 1100 in the present embodiment. As shown in FIG. 33, the variable-length code generation device 1100 includes a variable-length code generation unit 1101, an encoding characteristic information holding unit 1102, and an encoding characteristic information output unit 1103.
[0143]
The variable-length code generation unit 1101 generates a variable-length code using a variable-length coding table that differs depending on the coding characteristics, as with the variable-length code generation devices in the first to third embodiments described above. At the same time, a variable length code is output according to the input coding characteristics, coding index, and table size.
[0144]
The encoding characteristic information holding unit 1102 holds the encoding characteristics of a plurality of types of variable-length encoding tables for encoding a plurality of types of encoding target symbols, and the types and table sizes of input encoding target symbols Accordingly, the encoding characteristic is provided to the variable-length code generation unit 1101.
The coding characteristic information output unit 1103 outputs the coding characteristics held in the coding characteristic information holding unit 1102 as coding characteristic information.
[0145]
FIG. 34 is a flowchart showing the procedure of the variable length code generation method according to the present embodiment. First, the encoding characteristic for each encoding target symbol is recorded in advance in the encoding characteristic information holding unit 1102 (S111).
[0146]
Next, the coding characteristic information output unit 1103 outputs the coding characteristics held in the coding characteristic information holding unit 1102 as coding characteristic information. The output of the coding characteristic information may be transmitted through the same network as the network that transmits the variable length code between the information source coding unit 101 and the information source decoder 105 shown in FIG. Then, it may be transmitted via another network with higher reliability (S102).
[0147]
Next, the encoding characteristic for each encoding target symbol and table size is input from the encoding characteristic information holding unit 1102 to the variable length code generation unit 1101, and the encoding index and table size of the encoding target symbol are variable. The long code generation unit 1101 inputs the variable length code and outputs it (S113).
[0148]
FIG. 35 is a block diagram schematically showing a configuration of a variable length decoding device 1200 according to the present embodiment. As shown in FIG. 35, the variable-length decoding device 1200 includes a variable-length decoding unit 1201, an encoding characteristic information holding unit 1202, and an encoding characteristic information input unit 1203.
[0149]
The variable length decoding unit 1201 decodes a variable length code using a variable length coding table that differs according to the coding characteristics, similarly to the variable length decoding device in the first to third embodiments described above, A decoding index is output according to the input encoding characteristics, variable length code, and table size.
[0150]
Coding characteristic information holding section 1202 holds the coding characteristics of a plurality of types of variable length coding tables for decoding variable length codes for a plurality of types of coding symbols, and the types and tables of input variable length codes Coding characteristics are provided to the variable length decoding unit 1201 according to the size.
The coding characteristic information input unit 1203 inputs the coding characteristics held in the coding characteristic information holding unit 1202 as coding characteristic information.
[0151]
FIG. 36 is a flowchart showing the procedure of the variable length decoding method according to the present embodiment. First, encoding characteristic information is input from the outside to the encoding characteristic information input unit 1203 (S121). Next, the input coding characteristic information is recorded in the coding characteristic information holding unit 1202 (S122).
[0152]
Subsequently, the coding characteristics for each variable length code are input from the coding characteristic information holding unit 1202 to the variable length decoding unit 1201 according to the table size and variable length code, and the variable length code and table size to be decoded are The data is input to the variable length decoding unit 1201 and the decoding index is output (S123).
[0153]
Hereinafter, the codec decoding means in this Embodiment is demonstrated more concretely, showing an example. In the present embodiment, it is assumed that information in which motion information of the screen, brightness information of the screen, and color information of the screen are digitized is encoded as a coding target symbol in the moving image coding. That is, three types of symbols MV (for example, screen motion information), XY (for example, screen brightness information), and XC (for example, screen color information) are variable-length encoded as encoding target symbols. Suppose.
[0154]
Here, it is assumed that the symbol MV for the motion information on the screen has a larger value as the change in motion is larger and a smaller value as the change in motion is smaller. It is assumed that the symbol XY for the screen brightness information has a larger value as the change in the screen brightness is larger and a smaller value as the change in the screen brightness is smaller. The symbol XC for the screen color information takes a larger value as the screen color change is larger, and takes a smaller value as the screen color change is smaller. In the variable length code decoding, the variable length coding table shown in FIG. 25 in the second embodiment is used.
[0155]
For example, when it is known in advance that the movement of the screen is complicated and the change in brightness and the change in color are not complicated in a predetermined period, the frequency of occurrence of each value is dispersed as the symbol MV, It is considered that the frequency with which small values occur as the symbols XY and XC increases.
[0156]
In such a case, the variable length coding table for the symbols XY and XC has such a characteristic that a particularly short code length is assigned to a specific value (for example, shown in the second embodiment) A variable-length coding table for the characteristic a or b is used, and the variable-length coding table for the symbol MV has a characteristic in which all the code lengths are equal (for example, the characteristic shown in the second embodiment) By using the variable length coding table (e), coding can be performed efficiently.
[0157]
Therefore, in such a case, by referring to the table shown in FIG. 37, for example, as shown in FIG. 38, the header information includes coding characteristics PMV (for example, characteristic e) for symbols MV, XY, and XC, A variable-length code is first transmitted using PXY (for example, characteristic a) and PXC (for example, characteristic b) and using a fixed-length code as encoding characteristic information.
[0158]
Subsequently, encoding indexes IMV (for example, 10), IXY (for example, 2), and IXC (for example, 1) corresponding to each symbol are encoded using a variable-length encoding table corresponding to each encoding characteristic information. The As a result, variable length codes CMV (11001), CXY (10), and CXC (0) corresponding to the encoding index of each symbol are output.
[0159]
On the other hand, on the decoding side, first, as header information, a fixed-length code of encoding characteristic information for symbols MV, XY, and XC is received and decoded, thereby encoding characteristics PMV, PXY for each symbol MV, XY, and XC. , PXC characteristics e, b and a are obtained, respectively.
[0160]
Subsequently, when the variable length code CMV is received, IMV (= 10) is decoded as a decoding index using a variable length coding table corresponding to the coding characteristic PMV (characteristic e). Thereafter, when the variable length code CXY is received, IXY (= 2) is decoded as a decoding index using a variable length coding table corresponding to the coding characteristic PXY (characteristic a). When the variable length code CXC is received, IXC (= 1) is decoded as a decoding index using the variable length coding table corresponding to the coding characteristic PXC (characteristic b).
[0161]
In this embodiment, all coding characteristic information is transmitted, but default coding characteristic information is held in advance on the encoding side and the decoding side, and a code different from the default coding characteristic is stored. Of course, it is also possible to adopt a configuration in which only the conversion characteristics are transmitted. Thereby, the same effect can be obtained with a smaller amount of information transmission. Further, by transmitting a difference value between the default encoding characteristic and the encoding characteristic to be used, which corresponds to an encoding characteristic different from the default encoding characteristic, the same effect can be obtained with a smaller amount of information transmission. . Furthermore, similarly on the decoding side, it is also possible to receive coding characteristic information corresponding to a coding characteristic different from the default value.
[0162]
In this embodiment, as an example, encoding characteristics a to e are included in the header information and transmitted. However, two characteristics for determining the characteristics of the Golomb code corresponding to each variable-length encoding table are described. The coefficients P and Q may be included in the header information (see FIG. 6) for transmission. In this case, the same effect can be achieved more efficiently by adopting a configuration in which, for example, a P and Q two-dimensional variable length coding table as shown in FIG. Is obtained.
[0163]
Also, for example, a plurality of combinations of encoding characteristics for each variable length encoding table as shown in FIG. 40 are held, a code is assigned to the encoding characteristic combination information, and only the encoding characteristic combination information is used as header information. The same effect can be obtained efficiently by adopting a transmission configuration. Similarly, on the decoding side, decoding can be suitably performed by holding the above-described combination of the two-dimensional variable length coding table and the coding characteristics.
[0164]
As described above, in the fourth embodiment of the present invention, the encoding characteristic information of the variable length encoding table used for variable length code decoding is transmitted from the encoding side to the decoding side. Therefore, according to the variable-length code generation apparatus, variable-length decoding apparatus, variable-length code generation method, and variable-length decoding method in the present embodiment, variable-length code decoding with higher adaptability is possible.
[0165]
【The invention's effect】
According to the present invention, it is possible to generate a variable-length coding table having a finite number of symbols that have different characteristics and are saturated in order with a small memory capacity and a simple calculation. As a result, efficient variable length code decoding is possible.
[Brief description of the drawings]
FIG. 1 is a diagram schematically showing a method for storing and reproducing / transmitting information.
FIG. 2 is a block diagram showing a configuration of a conventional variable length code generation device.
FIG. 3 is a block diagram showing a configuration of a conventional variable length decoding device.
FIG. 4 is a conceptual diagram illustrating a configuration of a Golomb code.
FIG. 5 is a diagram illustrating an example of a variable-length coding table according to a Golomb code parameter.
FIG. 6 is a diagram illustrating an example of a variable length coding table according to another parameter of a Golomb code.
FIG. 7 is a diagram illustrating an example of an infinite Golomb code.
FIG. 8 is a diagram illustrating an example of a variable-length coding table in which a Golomb code is modified and saturated by a conventional method.
FIG. 9 is a block diagram showing a configuration of a variable-length code generation apparatus according to the first embodiment of the present invention.
FIG. 10 is a diagram illustrating a configuration of a basic table.
FIG. 11 is a diagram showing a configuration of a basic table group.
FIG. 12 is a flowchart illustrating a procedure of a variable-length code generation method according to the first embodiment.
FIG. 13 is a diagram illustrating an example of a variable-length coding table generated by the variable-length code generation method according to the first embodiment.
FIG. 14 is a block diagram showing a configuration of a variable length decoding device according to the first embodiment.
FIG. 15 is a flowchart illustrating a procedure of a variable-length decoding method according to the first embodiment.
FIG. 16 is a flowchart illustrating a procedure of a variable-length code generation method having a characteristic in which a deviation in code length distribution is reduced in the first embodiment.
FIG. 17 is a diagram illustrating an example of a variable-length coding table generated by a variable-length code generation method having a characteristic in which a deviation in code length distribution is reduced in the first embodiment.
FIG. 18 is a flowchart illustrating a procedure for decoding a code generated by a variable-length code generation method having a characteristic in which a deviation in code length distribution is reduced in the first embodiment.
FIG. 19 is a block diagram illustrating a configuration of a variable-length code generation device according to a second embodiment of the present invention.
FIG. 20 is a diagram illustrating an example of a Golomb code used in the variable length code generation method according to the second embodiment.
FIG. 21 is a diagram illustrating an example of a finite basic table used in the variable-length code generation method according to the second embodiment.
FIG. 22 is a diagram illustrating an example of a configuration of a basic table group in the variable-length code generation method according to the second embodiment.
FIG. 23 is a diagram for explaining the concept of a variable-length code generation method according to the second embodiment.
FIG. 24 is a flowchart illustrating a procedure of a variable-length code generation method according to the second embodiment.
FIG. 25 is a diagram illustrating an example of a variable-length coding table generated by the variable-length code generation method according to the second embodiment.
FIG. 26 is a block diagram showing a configuration of a variable length decoding device according to the second embodiment.
FIG. 27 is a flowchart illustrating a procedure of a variable-length decoding method according to the second embodiment.
FIG. 28 is a block diagram illustrating a configuration of a variable-length code generation device according to a third embodiment.
FIG. 29 is a flowchart illustrating a procedure of a variable-length code generation method according to the third embodiment.
FIG. 30 is a diagram illustrating an example of a variable-length coding table generated by the variable-length code generation method according to the third embodiment.
FIG. 31 is a block diagram showing a configuration of a variable length decoding device according to a third embodiment.
FIG. 32 is a flowchart illustrating a procedure of the variable length decoding method according to the third embodiment.
FIG. 33 is a block diagram illustrating a configuration of a variable-length code generation device according to a fourth embodiment.
FIG. 34 is a flowchart illustrating a procedure of a variable-length code generation method according to the fourth embodiment.
FIG. 35 is a block diagram illustrating a configuration of a variable length decoding device according to a fourth embodiment.
FIG. 36 is a flowchart illustrating a procedure of a variable length decoding method according to the fourth embodiment.
FIG. 37 is a table illustrating an example of an encoding table of encoding characteristic information according to the fourth embodiment.
FIG. 38 is a diagram illustrating an example of a bit stream configuration according to the fourth embodiment.
FIG. 39 is a diagram illustrating an example of a two-dimensional variable length coding table according to a modification of the fourth embodiment.
FIG. 40 is a diagram illustrating an example of a combination of coding characteristics corresponding to a variable-length coding table according to a modification of the fourth embodiment.
FIG. 41 is a diagram illustrating an example of a look-up table for determining the value of the remaining number L in a modification of the second embodiment.
FIG. 42 is a diagram illustrating an example of a lookup table for determining a value of (n−L + Qs) / Ps in a modification of the second embodiment.
FIG. 43 is a flowchart illustrating a procedure of a variable-length decoding method using a lookup table in a modification of the second embodiment.
FIG. 44 is a diagram illustrating an example of a lookup table for determining the number of bits to be read v in a variation of the second embodiment.
FIG. 45 is a block diagram illustrating a configuration of a variable length code generation device according to a modification of the second exemplary embodiment of the present invention.
FIG. 46 is a block diagram illustrating a configuration of a variable length decoding device according to a modification of the second embodiment.
FIG. 47 is a block diagram showing a configuration of a variable length code generation device according to a modification of the third exemplary embodiment of the present invention.
FIG. 48 is a block diagram illustrating a configuration of a variable length decoding device according to a modification of the third embodiment.
[Explanation of symbols]
500 ... variable length code generation device, 501 ... index calculation unit, 502 ... table selection unit, 503 ... finite basic table storage unit, 504 ... code output unit,
600 ... variable length decoding device, 601 ... decoded data calculation unit, 602 ... table selection unit, 603 ... finite basic table storage unit, 604 ... index output unit,
700 ... variable length code generation device, 701 ... index calculation unit, 702 ... table selection unit, 703 ... infinite coding table generation unit, 704 ... finite basic table storage unit, 705 ... code output unit,
800 ... variable length decoding device, 801 ... decoded data calculation unit, 802 ... table selection unit, 803 ... infinite coding table generation unit, 804 ... finite basic table storage unit, 805 ... index output unit
900 ... variable length code generation device, 901 ... index calculation unit, 902 ... table selection unit, 903 ... infinite encoding table generation unit, 904 ... finite encoding table generation unit, 905 ... code output unit,
DESCRIPTION OF SYMBOLS 1000 ... Variable length decoding apparatus, 1001 ... Decoded data calculation part, 1002 ... Table selection part, 1003 ... Infinite encoding table generation part, 1004 ... Finite encoding table generation part, 1005 ... Index output part,
DESCRIPTION OF SYMBOLS 1100 ... Variable length code production | generation apparatus, 1101 ... Variable length code production | generation part, 1102 ... Coding characteristic information holding part, 1103 ... Coding characteristic information output part, 904 ... Finite coding table production | generation part, 905 ... Code output part,
DESCRIPTION OF SYMBOLS 1200 ... Variable length decoding apparatus, 1201 ... Variable length decoding part, 1202 ... Coding characteristic information holding part, 1203 ... Coding characteristic information input part

Claims (56)

符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、
有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、
前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記符号化インデックス入力手段により入力された符号化インデックスとに基づいて、前記テーブルサイズから第1所定値を減算することでテーブルサイズ残量を算出すると共に前記符号化インデックスから第2所定値を減算することでインデックス残量を算出し、前記テーブルサイズ残量及び前記インデックス残量に基づいて出力インデックス及び出力テーブル番号を決定する出力決定を行うと共に、前記テーブルサイズ残量及び前記インデックス残量を更新する残量更新を行い、前記インデックス残量が0になるまで前記出力決定及び残量更新を繰り返すインデックス算出手段と、
前記インデックス算出手段により決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択手段と、
前記テーブル選択手段により選択された符号化基本テーブルと、前記インデックス算出手段により決定された出力インデックスとに基づいて、可変長符号を出力する符号出力手段と
を備えることを特徴とする可変長符号生成装置。
Table size input means for inputting a table size which is the maximum index number of the symbol to be encoded;
Coding index input means for inputting a coding index which is an index number of a symbol to be coded;
A finite basic table storage means for storing a finite basic table which is a variable length coding table saturated with a finite number of indexes;
The remaining table size is calculated by subtracting a first predetermined value from the table size based on the table size input by the table size input means and the encoding index input by the encoding index input means. At the same time, an index remaining amount is calculated by subtracting a second predetermined value from the coded index, and an output determination is performed to determine an output index and an output table number based on the table size remaining amount and the index remaining amount. Index calculation means for performing the remaining amount update for updating the table size remaining amount and the index remaining amount, and repeating the output determination and the remaining amount update until the index remaining amount becomes 0,
Table selection means for selecting an encoding basic table from the finite basic table storage means according to the output table number determined by the index calculation means;
Variable length code generation comprising: a coding basic table selected by the table selection means; and a code output means for outputting a variable length code based on the output index determined by the index calculation means. apparatus.
符号化特性を入力する符号化特性入力手段を更に備え、
前記有限基本テーブル記憶手段は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として記憶し、
前記テーブル選択手段は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択することを特徴とする請求項1に記載の可変長符号生成装置。
Coding characteristic input means for inputting the coding characteristic is further provided,
The finite basic table storage means stores a plurality of finite basic tables classified for each characteristic as a finite basic table group,
The variable length code generation device according to claim 1, wherein the table selection unit selects a finite basic table from a finite basic table group corresponding to the encoding characteristic.
符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、
有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、
有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成手段と、
前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出手段と、
前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブル記憶手段または前記無限符号化テーブル生成手段から選択するテーブル選択手段と、
前記テーブル選択手段により選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力手段と
を備えることを特徴とする可変長符号生成装置。
Table size input means for inputting a table size which is the maximum index number of the symbol to be encoded;
Coding index input means for inputting a coding index which is an index number of a symbol to be coded;
A finite basic table storage means for storing a finite basic table which is a variable length coding table saturated with a finite number of indexes;
An infinite encoding table generating means for generating a variable length encoding table that is not saturated with a finite number of indexes;
Based on the table size and the coding index, an output table number that identifies an output basic table that is a variable-length coding table used for code generation, and an output index corresponding to a code to be output in the output basic table Index calculating means for determining and outputting a number;
Table selection means for selecting a variable-length coding table corresponding to the output table number from the finite basic table storage means or the infinite coding table generation means;
A variable-length code generation apparatus comprising: code output means for outputting a variable-length code corresponding to the output index number of the variable-length coding table selected by the table selection means.
符号化特性を入力する符号化特性入力手段を更に備え、
前記有限基本テーブル記憶手段は、特性ごとに分類された一または複数の有限基本テーブルを有限基本テーブル群として記憶し、
前記無限符号化テーブル生成手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、
前記インデックス算出手段は、前記符号化特性および前記テーブルサイズおよび前記符号化インデックスに基づいて、前記出力テーブル番号および出力インデックス番号を決定して出力することを特徴とする請求項3に記載の可変長符号生成装置。
Coding characteristic input means for inputting the coding characteristic is further provided,
The finite basic table storage means stores one or a plurality of finite basic tables classified for each characteristic as a finite basic table group,
The infinite encoding table generating means generates an infinite encoding table having different characteristics according to the encoding characteristics,
The variable length according to claim 3, wherein the index calculation means determines and outputs the output table number and the output index number based on the coding characteristics, the table size, and the coding index. Code generator.
復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
復号対象となる可変長符号を入力する可変長符号入力手段と、
有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、
前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された可変長符号とに基づいて、復号対象符号及び出力テーブル番号を決定する復号データ算出手段と、
前記復号データ算出手段により決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択手段と、
前記テーブル選択手段により選択された符号化基本テーブルと、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段と
を備えることを特徴とする可変長復号装置。
Table size input means for inputting a table size which is the maximum index number of a symbol to be decoded;
Variable length code input means for inputting a variable length code to be decoded;
A finite basic table storage means for storing a finite basic table which is a variable length coding table saturated with a finite number of indexes;
Decoding data calculation means for determining a decoding target code and an output table number based on the table size input by the table size input means and the variable length code input by the variable length code input means;
Table selection means for selecting an encoding basic table from the finite basic table storage means according to the output table number determined by the decoded data calculation means;
An index output unit that performs variable length decoding based on the encoding basic table selected by the table selection unit and the decoding target code determined by the decoded data calculation unit, and outputs an index number; A variable length decoding device.
符号化特性を入力する符号化特性入力手段を更に備え、
前記有限基本テーブル記憶手段は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として記憶し、
前記テーブル選択手段は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択することを特徴とする請求項5に記載の可変長復号装置。
Coding characteristic input means for inputting the coding characteristic is further provided,
The finite basic table storage means stores a plurality of finite basic tables classified for each characteristic as a finite basic table group,
6. The variable length decoding apparatus according to claim 5, wherein the table selection unit selects a finite basic table from a finite basic table group corresponding to the encoding characteristic.
復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力手段と、
有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを復号する手段を備える有限基本テーブル復号手段と、
有限インデックス数では飽和しない可変長符号化テーブルを復号する手段を備える無限符号化テーブル復号手段と、
前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出手段と、
前記復号データ算出手段により決定された復号対象テーブル番号に応じて、前記有限基本テーブル復号手段または前記無限符号化テーブル復号手段からテーブル復号手段を選択するテーブル復号手段選択手段と、
前記テーブル復号手段選択手段により選択されたテーブル復号手段と、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段と
を備えることを特徴とする可変長復号装置。
Table size input means for inputting a table size which is the maximum index number of a symbol to be decoded;
Variable length code input means for inputting an input variable length code that is a variable length code to be decoded;
A finite basic table decoding means comprising means for decoding a finite basic table which is a variable length coding table saturated with a finite number of indexes;
Infinite coding table decoding means comprising means for decoding a variable length coding table that is not saturated with a finite number of indexes;
Decoded data calculation means for determining and outputting a decoding target code and a decoding target table number based on the table size input by the table size input means and the input variable length code input by the variable length code input means When,
Table decoding means selection means for selecting a table decoding means from the finite basic table decoding means or the infinite encoding table decoding means according to the decoding target table number determined by the decoded data calculation means;
A table decoding means selected by the table decoding means selecting means; and an index output means for performing variable length decoding based on the decoding target code determined by the decoded data calculating means and outputting an index number. A variable length decoding device.
符号化特性を入力する符号化特性入力手段を更に備え、
前記有限基本テーブル復号手段は、特性ごとに分類された複数の有限基本テーブル復号手段を備え、
前記無限符号化テーブル復号手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号する手段を備え、
前記復号データ算出手段は、前記符号化特性および前記テーブルサイズおよび前記入力可変長符号に基づいて、前記復号対象符号および前記復号対象テーブル番号を決定して出力することを特徴とする請求項7に記載の可変長復号装置。
Coding characteristic input means for inputting the coding characteristic is further provided,
The finite basic table decoding means includes a plurality of finite basic table decoding means classified for each characteristic,
The infinite encoding table decoding means comprises means for decoding an infinite encoding table having different characteristics according to the encoding characteristics;
The decoding data calculation means determines and outputs the decoding target code and the decoding target table number based on the encoding characteristics, the table size, and the input variable length code. The variable length decoding device described.
可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを有限基本テーブル記憶手段に記憶する有限基本テーブル記憶ステップと、
前記可変長符号生成装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記符号化インデックス入力ステップにて入力された符号化インデックスとに基づいて、前記テーブルサイズから第1所定値を減算することでテーブルサイズ残量を算出すると共に前記符号化インデックスから第2所定値を減算することでインデックス残量を算出し、前記テーブルサイズ残量及び前記インデックス残量に基づいて出力インデックス及び出力テーブル番号を決定する出力決定を行うと共に、前記テーブルサイズ残量及び前記インデックス残量を更新する残量更新を行い、前記インデックス残量が0になるまで前記出力決定及び残量更新を繰り返すインデックス算出ステップと、
前記可変長符号生成装置が、前記インデックス算出ステップにて決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択ステップと、
前記可変長符号生成装置が、前記テーブル選択ステップにて選択された符号化基本テーブルと、前記インデックス算出ステップにて決定された出力インデックスとに基づいて、可変長符号を出力する符号出力ステップと
を含むことを特徴とする可変長符号生成方法。
A table size input step in which the variable length code generation device inputs a table size that is the maximum index number of a symbol to be encoded;
An encoding index input step in which the variable length code generation device inputs an encoding index that is an index number of a symbol to be encoded;
A finite basic table storage step in which the variable length code generation device stores a finite basic table, which is a variable length coding table saturated with a finite number of indexes, in a finite basic table storage means;
The variable length code generation device calculates a first predetermined value from the table size based on the table size input in the table size input step and the encoding index input in the encoding index input step. A table size remaining amount is calculated by subtraction, and an index remaining amount is calculated by subtracting a second predetermined value from the encoded index, and an output index and an output based on the table size remaining amount and the index remaining amount Index calculation that performs output determination for determining the table number, updates the table size remaining amount and the remaining index amount, and repeats the output determination and remaining amount update until the remaining index amount becomes 0 Steps,
A table selection step in which the variable-length code generation device selects an encoding basic table from the finite basic table storage unit according to the output table number determined in the index calculation step;
A code output step for outputting a variable length code based on the encoding basic table selected in the table selection step and the output index determined in the index calculation step; A variable-length code generation method comprising:
前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記有限基本テーブル記憶ステップでは、前記可変長符号生成装置は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、
前記テーブル選択手ステップでは、前記可変長符号生成装置は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択することを特徴とする請求項9に記載の可変長符号生成方法。
The variable length code generation device further includes a coding characteristic input step of inputting a coding characteristic,
In the finite basic table storage step, the variable-length code generation device stores a plurality of finite basic tables classified for each characteristic as a finite basic table group in the finite basic table storage means,
The variable-length code generation method according to claim 9, wherein, in the table selection step, the variable-length code generation device selects a finite basic table from a finite basic table group corresponding to the encoding characteristic. .
可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成ステップと、
前記可変長符号生成装置が、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出ステップと、
前記可変長符号生成装置が、前記出力テーブル番号に対応する可変長符号化テーブルを、前記有限基本テーブル記憶ステップまたは前記無限符号化テーブル生成ステップにて選択するテーブル選択ステップと、
前記可変長符号生成装置が、前記テーブル選択ステップにて選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号化出力ステップと
を含むことを特徴とする可変長符号生成方法。
A table size input step in which the variable length code generation device inputs a table size that is the maximum index number of a symbol to be encoded;
An encoding index input step in which the variable length code generation device inputs an encoding index that is an index number of a symbol to be encoded;
A finite basic table storage step in which the variable length code generation device stores a finite basic table which is a variable length coding table saturated with a finite number of indexes;
An infinite coding table generating step in which the variable length code generating device generates a variable length coding table that is not saturated with a finite number of indexes;
Based on the table size and the coding index, the variable length code generation device specifies an output basic table that is a variable length coding table used for code generation, and in the basic output table, An index calculating step for determining and outputting an output index number corresponding to the code to be output; and
A table selection step in which the variable-length code generator selects a variable-length coding table corresponding to the output table number in the finite basic table storage step or the infinite coding table generation step;
The variable length code generation device includes a coding output step of outputting a variable length code corresponding to the output index number of the variable length coding table selected in the table selection step. Code generation method.
前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記有限基本テーブル記憶ステップでは、前記可変長符号生成装置は、特性ごとに分類された一または複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、
前記無限符号化テーブル生成ステップでは、前記可変長符号生成装置は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、
前記インデックス算出ステップでは、前記可変長符号生成装置は、前記符号化特性および前記テーブルサイズおよび前記符号化インデックスに基づいて、前記出力テーブル番号および出力インデックス番号を決定して出力することを特徴とする請求項11に記載の可変長符号生成方法。
The variable length code generation device further includes a coding characteristic input step of inputting a coding characteristic,
In the finite basic table storage step, the variable length code generation device stores one or more finite basic tables classified for each characteristic in the finite basic table storage means as a finite basic table group,
In the infinite encoding table generating step, the variable length code generating device generates an infinite encoding table having different characteristics according to the encoding characteristics,
In the index calculation step, the variable length code generation device determines and outputs the output table number and the output index number based on the encoding characteristics, the table size, and the encoding index. The variable length code generation method according to claim 11.
可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長復号装置が、復号対象となる可変長符号を入力する可変長符号入力ステップと、
前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを有限基本テーブル記憶手段に記憶する有限基本テーブル記憶ステップと、
前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された可変長符号とに基づいて、復号対象符号及び出力テーブル番号を決定する復号データ算出ステップと、
前記可変長復号装置が、前記復号データ算出ステップにて決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択ステップと、
前記可変長復号装置が、前記テーブル選択ステップにて選択された符号化基本テーブルと、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップと
を含むことを特徴とする可変長復号方法。
A table size input step in which the variable length decoding device inputs a table size that is a maximum index number of a symbol to be decoded;
A variable length code input step in which the variable length decoding device inputs a variable length code to be decoded; and
A finite basic table storage step in which the variable length decoding device stores a finite basic table, which is a variable length coding table saturated with a finite number of indexes, in a finite basic table storage means;
The variable length decoding device determines a decoding target code and an output table number based on the table size input in the table size input step and the variable length code input in the variable length code input step. Decrypted data calculation step;
A table selection step in which the variable-length decoding device selects an encoded basic table from the finite basic table storage unit according to the output table number determined in the decoded data calculation step;
The variable length decoding apparatus performs variable length decoding based on the encoding basic table selected in the table selection step and the decoding target code determined in the decoded data calculation step, and outputs an index number And a variable length decoding method comprising: an output step.
前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記有限基本テーブル記憶ステップでは、前記可変長復号装置は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、
前記テーブル選択ステップでは、前記可変長復号装置は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択することを特徴とする請求項13に記載の可変長復号方法。
The variable length decoding device further includes an encoding characteristic input step of inputting an encoding characteristic,
In the finite basic table storage step, the variable length decoding device stores a plurality of finite basic tables classified for each characteristic as a finite basic table group in the finite basic table storage means,
The variable length decoding method according to claim 13, wherein, in the table selection step, the variable length decoding device selects a finite basic table from a finite basic table group corresponding to the encoding characteristic.
可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長復号装置が、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力ステップと、
前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを復号するステップを含む有限基本テーブル復号ステップと、
前記可変長復号装置が、有限インデックス数では飽和しない可変長符号化テーブルを復号するステップを含む無限符号化テーブル復号ステップと、
前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出ステップと、
前記可変長復号装置が、前記復号データ算出ステップにて決定された復号対象テーブル番号に応じて、前記有限基本テーブル復号ステップまたは前記無限符号化テーブル復号ステップにてテーブル復号手段を選択するテーブル復号手段選択ステップと、
前記可変長復号装置が、前記テーブル復号手段選択ステップにて選択されたテーブル復号手段と、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップと
を含むことを特徴とする可変長復号方法
A table size input step in which the variable length decoding device inputs a table size that is a maximum index number of a symbol to be decoded;
A variable length code input step in which the variable length decoding device inputs an input variable length code that is a variable length code to be decoded; and
A finite basic table decoding step including a step in which the variable length decoding device decodes a finite basic table which is a variable length coding table saturated with a finite index number;
An infinite encoding table decoding step including the step of the variable length decoding device decoding a variable length encoding table that is not saturated with a finite number of indexes;
The variable length decoding device determines a decoding target code and a decoding target table number based on the table size input in the table size input step and the input variable length code input in the variable length code input step. A decoded data calculation step to be determined and output;
Table decoding means in which the variable length decoding device selects a table decoding means in the finite basic table decoding step or the infinite encoding table decoding step in accordance with the decoding target table number determined in the decoded data calculation step A selection step;
The variable length decoding device performs variable length decoding based on the table decoding means selected in the table decoding means selection step and the decoding target code determined in the decoded data calculation step, and outputs an index number And a variable length decoding method comprising: an index output step.
前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記有限基本テーブル復号ステップでは、前記可変長復号装置が、特性ごとに分類された複数の有限基本テーブルを復号するステップを含み、
前記無限符号化テーブル復号ステップでは、前記可変長復号装置が、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号するステップを含み、
前記復号データ算出ステップでは、前記可変長復号装置は、前記符号化特性および前記テーブルサイズおよび前記入力可変長符号に基づいて、前記復号対象符号および前記復号対象テーブル番号を決定して出力することを特徴とする請求項15に記載の可変長復号方法。
The variable length decoding device further includes an encoding characteristic input step of inputting an encoding characteristic,
In the finite basic table decoding step, the variable length decoding device includes a step of decoding a plurality of finite basic tables classified for each characteristic,
In the infinite encoding table decoding step, the variable length decoding device includes a step of decoding an infinite encoding table having different characteristics according to the encoding characteristics;
In the decoded data calculation step, the variable length decoding device determines and outputs the decoding target code and the decoding target table number based on the encoding characteristics, the table size, and the input variable length code. The variable length decoding method according to claim 15, characterized in that:
前記インデックス算出手段は、前記残量更新前の前記インデックス残量が前記出力テーブル番号における最大インデックス番号より大きい場合には、前記出力インデックスとして前記出力テーブル番号における最大インデックス番号を出力することを特徴とする請求項1又は2に記載の可変長符号生成装置。The index calculation means outputs the maximum index number in the output table number as the output index when the remaining index amount before the remaining amount update is larger than the maximum index number in the output table number. The variable length code generation device according to claim 1 or 2. 前記テーブル選択手段は、符号化基本テーブルとして前記有限基本テーブルを選択する場合には、前記有限基本テーブルの最小インデックス番号に対応する符号の符号長が、前記無限符号化テーブル生成手段により生成される可変長符号化テーブルにおける符号間の符号長の差より大きいテーブルを選択することを特徴とする請求項3又は4に記載の可変長符号生成装置。When the table selection means selects the finite basic table as the encoding basic table, the code length of the code corresponding to the minimum index number of the finite basic table is generated by the infinite encoding table generation means. The variable length code generation apparatus according to claim 3 or 4, wherein a table having a larger code length difference between codes in the variable length coding table is selected. 前記インデックス算出ステップでは、前記可変長符号生成装置が、前記残量更新前の前記インデックス残量が前記出力テーブル番号における最大インデックス番号より大きい場合には、前記出力インデックスとして前記出力テーブル番号における最大インデックス番号を出力することを特徴とする請求項9又は10に記載の可変長符号生成方法。In the index calculation step, when the variable length code generation device has the index remaining amount before the remaining amount update larger than the maximum index number in the output table number, the maximum index in the output table number is used as the output index. 11. The variable length code generation method according to claim 9, wherein a number is output. 前記テーブル選択ステップでは、前記可変長符号生成装置が、符号化基本テーブルとして前記有限基本テーブルを選択する場合には、前記有限基本テーブルの最小インデックス番号に対応する符号の符号長が、前記無限符号化テーブル生成ステップにて生成される可変長符号化テーブルにおける符号間の符号長の差より大きいテーブルを選択することを特徴とする請求項11又は12に記載の可変長符号生成方法。In the table selection step, when the variable-length code generation device selects the finite basic table as an encoding basic table, the code length of the code corresponding to the minimum index number of the finite basic table is the infinite code. The variable length code generation method according to claim 11 or 12, wherein a table having a larger code length difference between codes in the variable length coding table generated in the conversion table generation step is selected. 符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、
有限インデックス数で飽和する可変長符号化テーブルを生成する有限基本テーブル生成手段と、
有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成手段と、
前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出手段と、
前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブル生成手段または前記無限符号化テーブル生成手段から選択するテーブル選択手段と、
前記テーブル選択手段により選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力手段と
を備えることを特徴とする可変長符号生成装置。
Table size input means for inputting a table size which is the maximum index number of the symbol to be encoded;
Coding index input means for inputting a coding index which is an index number of a symbol to be coded;
A finite basic table generating means for generating a variable-length coding table saturated with a finite number of indexes;
An infinite encoding table generating means for generating a variable length encoding table that is not saturated with a finite number of indexes;
Based on the table size and the coding index, an output table number that identifies an output basic table that is a variable-length coding table used for code generation, and an output index corresponding to a code to be output in the output basic table Index calculating means for determining and outputting a number;
Table selection means for selecting a variable-length encoding table corresponding to the output table number from the finite basic table generation means or the infinite encoding table generation means;
A variable-length code generation apparatus comprising: code output means for outputting a variable-length code corresponding to the output index number of the variable-length coding table selected by the table selection means.
符号化特性を入力する符号化特性入力手段を更に備え、
前記無限符号化テーブル生成手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成することを特徴とする請求項21に記載の可変長符号生成装置。
Coding characteristic input means for inputting the coding characteristic is further provided,
The variable length code generation device according to claim 21, wherein the infinite encoding table generation unit generates an infinite encoding table having different characteristics according to the encoding characteristics.
復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力手段と、
有限インデックス数で飽和する可変長符号化テーブルを復号する手段を備える有限符号化テーブル復号手段と、
有限インデックス数では飽和しない可変長符号化テーブルを復号する手段を備える無限符号化テーブル復号手段と、
前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出手段と、
前記復号データ算出手段により決定された復号対象テーブル番号に応じて、前記有限符号化テーブル復号手段または前記無限符号化テーブル復号手段からテーブル復号手段を選択するテーブル復号手段選択手段と、
前記テーブル復号手段選択手段により選択されたテーブル復号手段と、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段と
を備えることを特徴とする可変長復号装置。
Table size input means for inputting a table size which is the maximum index number of a symbol to be decoded;
Variable length code input means for inputting an input variable length code that is a variable length code to be decoded;
A finite encoding table decoding means comprising means for decoding a variable length coding table saturated with a finite number of indexes;
Infinite coding table decoding means comprising means for decoding a variable length coding table that is not saturated with a finite number of indexes;
Decoded data calculation means for determining and outputting a decoding target code and a decoding target table number based on the table size input by the table size input means and the input variable length code input by the variable length code input means When,
Table decoding means selection means for selecting a table decoding means from the finite encoding table decoding means or the infinite encoding table decoding means according to the decoding target table number determined by the decoded data calculation means;
A table decoding means selected by the table decoding means selecting means; and an index output means for performing variable length decoding based on the decoding target code determined by the decoded data calculating means and outputting an index number. A variable length decoding device.
符号化特性を入力する符号化特性入力手段を更に備え、
前記無限符号化テーブル復号手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号することを特徴とする請求項23記載の可変長復号装置。
Coding characteristic input means for inputting the coding characteristic is further provided,
The variable length decoding device according to claim 23, wherein the infinite encoding table decoding means decodes an infinite encoding table having different characteristics according to the encoding characteristics.
それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として記憶する符号化特性情報記憶手段と、
前記符号化特性情報を出力する符号化特性情報出力手段と、
前記符号化特性情報記憶手段によって記憶されている符号化特性情報に応じて、可変長符号生成を行う可変長符号生成手段と
を更に備えることを特徴とする請求項2、4、22の何れか一項に記載の可変長符号生成装置。
Encoding characteristic information storage means for storing the encoding characteristic corresponding to each variable length encoding table as encoding characteristic information;
Encoding characteristic information output means for outputting the encoding characteristic information;
The variable length code generation means for generating a variable length code according to the encoding characteristic information stored in the encoding characteristic information storage means, further comprising: a variable length code generation means. The variable length code generation device according to one item.
それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として入力する符号化特性情報入力手段と、
前記符号化特性情報を記憶する符号化特性情報記憶手段と、
前記符号化特性情報記憶手段によって記憶されている符号化特性情報に応じて、可変長復号を行う可変長復号手段と
を更に備えることを特徴とする請求項6、8、24の何れか一項に記載の可変長復号装置。
Coding characteristic information input means for inputting the coding characteristic corresponding to each variable length coding table as coding characteristic information;
Encoding characteristic information storage means for storing the encoding characteristic information;
The variable length decoding means for performing variable length decoding according to the coding characteristic information stored in the coding characteristic information storage means, further comprising: variable length decoding means. The variable length decoding device described in 1.
可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルを生成する有限基本テーブル生成ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成ステップと、
前記可変長符号生成装置が、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出ステップと、
前記可変長符号生成装置が、前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブルまたは前記無限符号化テーブルから選択するテーブル選択ステップと、
前記可変長符号生成装置が、前記テーブル選択ステップにて選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力ステップと
を含むことを特徴とする可変長符号生成方法。
A table size input step in which the variable length code generation device inputs a table size that is the maximum index number of a symbol to be encoded;
An encoding index input step in which the variable length code generation device inputs an encoding index that is an index number of a symbol to be encoded;
The variable length code generation device generates a variable length coding table saturated with a finite number of indexes, a finite basic table generation step;
An infinite coding table generating step in which the variable length code generating device generates a variable length coding table that is not saturated with a finite number of indexes;
Based on the table size and the coding index, the variable length code generation device specifies an output basic table that is a variable length coding table used for code generation, and in the basic output table, An index calculating step for determining and outputting an output index number corresponding to the code to be output; and
A table selection step in which the variable-length code generation device selects a variable-length coding table corresponding to the output table number from the finite basic table or the infinite coding table;
The variable-length code generation device includes a code output step for outputting a variable-length code corresponding to the output index number of the variable-length coding table selected in the table selection step. Generation method.
前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記無限符号化テーブル生成ステップでは、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成することを特徴とする請求項27に記載の可変長符号生成方法。
The variable length code generation device further includes a coding characteristic input step of inputting a coding characteristic,
28. The variable length code generation method according to claim 27, wherein, in the infinite encoding table generation step, an infinite encoding table having different characteristics according to the encoding characteristics is generated.
可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長復号装置が、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力ステップと、
前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルを復号するステップを含む有限符号化テーブル復号ステップと、
前記可変長復号装置が、有限インデックス数では飽和しない可変長符号化テーブルを復号するステップを含む無限符号化テーブル復号ステップと、
前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出ステップと、
前記可変長復号装置が、前記復号データ算出ステップにて決定された復号対象テーブル番号に応じて、前記有限符号化テーブル復号ステップまたは前記無限符号化テーブル復号ステップにてテーブル復号手段を選択するテーブル復号手段選択ステップと、
前記可変長復号装置が、前記テーブル復号手段選択ステップにて選択されたテーブル復号手段と、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップと
を含むことを特徴とする可変長復号方法。
A table size input step in which the variable length decoding device inputs a table size that is a maximum index number of a symbol to be decoded;
A variable length code input step in which the variable length decoding device inputs an input variable length code that is a variable length code to be decoded; and
A finite encoding table decoding step, wherein the variable length decoding device includes a step of decoding a variable length encoding table saturated with a finite index number;
An infinite encoding table decoding step including the step of the variable length decoding device decoding a variable length encoding table that is not saturated with a finite number of indexes;
The variable length decoding device determines a decoding target code and a decoding target table number based on the table size input in the table size input step and the input variable length code input in the variable length code input step. A decoded data calculation step to be determined and output;
Table decoding in which the variable length decoding device selects a table decoding means in the finite encoding table decoding step or the infinite encoding table decoding step according to the decoding target table number determined in the decoded data calculation step Means selection step;
The variable length decoding device performs variable length decoding based on the table decoding means selected in the table decoding means selection step and the decoding target code determined in the decoded data calculation step, and outputs an index number And a variable length decoding method comprising: an index output step.
前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記無限符号化テーブル復号ステップでは、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号することを特徴とする請求項29記載の可変長復号方法。
The variable length decoding device further includes an encoding characteristic input step of inputting an encoding characteristic,
30. The variable length decoding method according to claim 29, wherein in the infinite encoding table decoding step, an infinite encoding table having different characteristics according to the encoding characteristics is decoded.
前記可変長符号生成装置が、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として符号化特性情報記憶手段に記憶する符号化特性情報記憶ステップと、
前記可変長符号生成装置が、前記符号化特性情報を出力する符号化特性情報出力ステップと、
前記可変長符号生成装置が、前記符号化特性情報記憶ステップにて記憶された符号化特性情報に応じて、可変長符号生成を行う可変長符号生成ステップと
を更に含むことを特徴とする請求項10、12、28の何れか一項に記載の可変長符号生成方法。
A coding characteristic information storage step in which the variable length code generation device stores the coding characteristics corresponding to each variable length coding table as coding characteristic information in a coding characteristic information storage unit;
The variable length code generation device outputs an encoding characteristic information output step for outputting the encoding characteristic information;
The variable length code generation device further includes a variable length code generation step for generating a variable length code according to the encoding characteristic information stored in the encoding characteristic information storage step. The variable length code generation method according to any one of 10, 12, and 28.
前記可変長復号装置が、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として入力する符号化特性情報入力ステップと、
前記可変長復号装置が、前記符号化特性情報を符号化特性情報記憶手段に記憶する符号化特性情報記憶ステップと、
前記可変長復号装置が、前記符号化特性情報記憶ステップにて記憶された符号化特性情報に応じて、可変長復号を行う可変長復号ステップと
を更に含むことを特徴とする請求項14、16、30の何れか一項に記載の可変長復号方法。
A coding characteristic information input step in which the variable length decoding device inputs the coding characteristic corresponding to each variable length coding table as coding characteristic information;
An encoding characteristic information storage step in which the variable length decoding device stores the encoding characteristic information in an encoding characteristic information storage unit;
17. The variable length decoding device further includes a variable length decoding step for performing variable length decoding according to the coding characteristic information stored in the coding characteristic information storing step. 30. The variable length decoding method according to any one of 30.
前記符号化特性情報出力手段は、前記符号化特性情報を可変長符号化して伝送することを特徴とする請求項25記載の可変長符号生成装置。26. The variable length code generation apparatus according to claim 25, wherein the coding characteristic information output means transmits the coding characteristic information after variable length coding. 前記符号化特性情報出力手段は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長符号化することによって、前記符号化特性情報を出力することを特徴とする請求項25記載の可変長符号生成装置。26. The coding characteristic information output means outputs the coding characteristic information by performing multidimensional variable length coding on a plurality of parameters for determining characteristics of a variable length coding table. Variable length code generator. 前記符号化特性情報出力手段は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として出力することを特徴とする請求項25記載の可変長符号生成装置。26. The variable length code generation device according to claim 25, wherein the coding characteristic information output means outputs the combination information of the coding characteristics corresponding to a plurality of variable length coding tables as the coding characteristic information. . 前記符号化特性情報出力手段は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として出力することを特徴とする請求項25記載の可変長符号生成装置。26. The variable length code generation apparatus according to claim 25, wherein the encoding characteristic information output means outputs an encoding characteristic value different from a default value of the encoding characteristic as the encoding characteristic information. 前記符号化特性情報出力手段は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として出力することを特徴とする請求項25記載の可変長符号生成装置。26. The variable length code generation apparatus according to claim 25, wherein the encoding characteristic information output means outputs a difference value between a default value of the encoding characteristic and an encoding characteristic value as the encoding characteristic information. 前記符号化特性情報入力手段は、前記符号化特性情報を可変長復号することを特徴とする請求項26記載の可変長復号装置。27. The variable length decoding device according to claim 26, wherein the coding characteristic information input means performs variable length decoding on the coding characteristic information. 前記符号化特性情報入力手段は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長復号することによって、前記符号化特性情報を入力することを特徴とする請求項26記載の可変長復号装置。27. The coding characteristic information input means inputs the coding characteristic information by performing multidimensional variable length decoding on a plurality of parameters for determining characteristics of a variable length coding table. Variable length decoding device. 前記符号化特性情報入力手段は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として入力することを特徴とする請求項26記載の可変長復号装置。27. The variable length decoding apparatus according to claim 26, wherein the coding characteristic information input means inputs the coding characteristic combination information corresponding to a plurality of variable length coding tables as the coding characteristic information. 前記符号化特性情報入力手段は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として入力することを特徴とする請求項26記載の可変長復号装置。27. The variable length decoding apparatus according to claim 26, wherein the coding characteristic information input means inputs a coding characteristic value different from a default value of the coding characteristic as the coding characteristic information. 前記符号化特性情報入力手段は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として入力することを特徴とする請求項26記載の可変長復号装置。27. The variable length decoding device according to claim 26, wherein the coding characteristic information input means inputs a difference value between a default value of the coding characteristic and a coding characteristic value as the coding characteristic information. 前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性情報を可変長符号化して伝送することを特徴とする請求項31記載の可変長符号生成方法。32. The variable length code generation method according to claim 31, wherein, in the encoding characteristic information output step, the variable length code generation device performs variable length encoding on the encoding characteristic information and transmits the encoded characteristic information. 前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長符号化することによって、前記符号化特性情報を出力することを特徴とする請求項31記載の可変長符号生成方法。In the encoding characteristic information output step, the variable length code generation device outputs the encoding characteristic information by performing multidimensional variable length encoding on a plurality of parameters that determine characteristics of the variable length encoding table. 32. The variable length code generation method according to claim 31, wherein: 前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として出力することを特徴とする請求項31記載の可変長符号生成方法。The encoding characteristic information output step, wherein the variable length code generation apparatus outputs combination information of the encoding characteristics corresponding to a plurality of variable length encoding tables as the encoding characteristic information. 31. The variable length code generation method according to 31. 前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として出力することを特徴とする請求項31記載の可変長符号生成方法。32. The variable according to claim 31, wherein, in the coding characteristic information output step, the variable length code generation device outputs a coding characteristic value different from a default value of the coding characteristic as the coding characteristic information. Long code generation method. 前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として出力することを特徴とする請求項31記載の可変長符号生成方法。32. In the encoding characteristic information output step, the variable length code generation device outputs a difference value between a default value of the encoding characteristic and an encoding characteristic value as the encoding characteristic information. The variable-length code generation method described. 前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性情報を可変長復号することを特徴とする請求項32記載の可変長復号方法。The variable length decoding method according to claim 32, wherein, in the coding characteristic information input step, the variable length decoding device performs variable length decoding on the coding characteristic information. 前記符号化特性情報入力ステップでは、前記可変長復号装置は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長復号することによって、前記符号化特性情報を入力することを特徴とする請求項32記載の可変長復号方法。In the encoding characteristic information input step, the variable length decoding device inputs the encoding characteristic information by performing multidimensional variable length decoding on a plurality of parameters that determine characteristics of the variable length encoding table. The variable length decoding method according to claim 32. 前記符号化特性情報入力ステップでは、前記可変長復号装置は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として入力することを特徴とする請求項32記載の可変長復号方法。33. In the encoding characteristic information input step, the variable length decoding device inputs combination information of the encoding characteristics corresponding to a plurality of variable length encoding tables as the encoding characteristic information. The variable length decoding method described. 前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として入力することを特徴とする請求項32記載の可変長復号方法。The variable length decoding apparatus according to claim 32, wherein, in the encoding characteristic information input step, the variable length decoding device inputs an encoding characteristic value different from a default value of the encoding characteristic as the encoding characteristic information. Decryption method. 前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として入力することを特徴とする請求項32記載の可変長復号方法。33. The encoding characteristic information input step, wherein the variable length decoding device inputs a difference value between a default value of the encoding characteristic and an encoding characteristic value as the encoding characteristic information. Variable length decoding method. 前記インデックス算出手段は、ルックアップテーブルを備え、前記ルックアップテーブルを利用して出力テーブル番号および出力インデックス番号を決定することを特徴とする請求項3、4、21、22の何れか一項に記載の可変長符号生成装置。The index calculation unit includes a lookup table, and determines an output table number and an output index number using the lookup table. The variable-length code generation device described. 前記復号データ算出手段は、ルックアップテーブルを備え、前記ルックアップテーブルを利用して復号対象テーブル番号および復号対象符号を決定することを特徴とする請求項7、8、23、24の何れか一項に記載の可変長復号装置。25. The decoding data calculation means includes a lookup table, and determines a decoding target table number and a decoding target code using the lookup table. The variable length decoding device according to item. 前記インデックス算出ステップでは、前記可変長符号生成装置は、ルックアップテーブルを利用して出力テーブル番号および出力インデックス番号を決定することを特徴とする請求項11、12、27、28の何れか一項に記載の可変長符号生成方法。29. The index calculation step, wherein the variable length code generator determines an output table number and an output index number using a lookup table. The variable-length code generation method described in 1. 前記復号データ算出ステップでは、前記可変長復号装置では、ルックアップテーブルを利用して復号対象テーブル番号および復号対象符号を決定することを特徴とする請求項15、16、29、30の何れか一項に記載の可変長復号方法。31. The decoding data calculation step according to claim 15, wherein the variable length decoding device determines a decoding target table number and a decoding target code using a lookup table. The variable length decoding method according to item.
JP2002220369A 2002-07-03 2002-07-29 Variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method Expired - Fee Related JP4138391B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002220369A JP4138391B2 (en) 2002-07-03 2002-07-29 Variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002195166 2002-07-03
JP2002211663 2002-07-19
JP2002220369A JP4138391B2 (en) 2002-07-03 2002-07-29 Variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method

Publications (2)

Publication Number Publication Date
JP2004104159A JP2004104159A (en) 2004-04-02
JP4138391B2 true JP4138391B2 (en) 2008-08-27

Family

ID=32303262

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002220369A Expired - Fee Related JP4138391B2 (en) 2002-07-03 2002-07-29 Variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method

Country Status (1)

Country Link
JP (1) JP4138391B2 (en)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010183595A (en) * 2004-09-22 2010-08-19 Droplet Technology Inc Multiple technique entropy coding system and method
US7782233B2 (en) 2004-10-13 2010-08-24 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding point sequences on laser binary representation
KR20060032944A (en) * 2004-10-13 2006-04-18 한국전자통신연구원 Method and apparatus for coding point sequences on laser binary representation
JP2007067869A (en) * 2005-08-31 2007-03-15 Pasuko:Kk Data coding device, method, and program
WO2010134553A1 (en) * 2009-05-20 2010-11-25 日本電信電話株式会社 Coding method, coding device, decoding method, decoding device, program, and recording medium
JP5367161B2 (en) * 2010-04-08 2013-12-11 株式会社東芝 Image encoding method, apparatus, and program
JP5649701B2 (en) * 2010-04-08 2015-01-07 株式会社東芝 Image decoding method, apparatus, and program
JP5368631B2 (en) 2010-04-08 2013-12-18 株式会社東芝 Image encoding method, apparatus, and program
JP5571229B2 (en) * 2013-06-03 2014-08-13 株式会社東芝 Image encoding method and image decoding method
JP5444497B2 (en) * 2013-09-11 2014-03-19 株式会社東芝 Image encoding method and image decoding method
JP5479648B1 (en) * 2013-12-10 2014-04-23 株式会社東芝 Image encoding method and image decoding method
JP2014131293A (en) * 2014-01-23 2014-07-10 Toshiba Corp Image encoding method and image decoding method
JP5509398B1 (en) * 2014-01-23 2014-06-04 株式会社東芝 Image encoding method and image decoding method
JP2014131295A (en) * 2014-01-23 2014-07-10 Toshiba Corp Image encoding method and image decoding method
JP5571262B2 (en) * 2014-01-23 2014-08-13 株式会社東芝 Image encoding method and image decoding method
JP5659314B1 (en) * 2014-10-01 2015-01-28 株式会社東芝 Image encoding method and image decoding method
JP2015053729A (en) * 2014-11-17 2015-03-19 株式会社東芝 Image encoding method, and image decoding method
US10171810B2 (en) 2015-06-22 2019-01-01 Cisco Technology, Inc. Transform coefficient coding using level-mode and run-mode
JP6196341B2 (en) * 2016-02-17 2017-09-13 株式会社東芝 Image encoding method and image decoding method
JP6271694B2 (en) * 2016-12-16 2018-01-31 株式会社東芝 Image encoding method and image decoding method
JP6370977B2 (en) * 2017-08-31 2018-08-08 株式会社東芝 Image encoding method and image decoding method
JP6367452B2 (en) * 2017-11-13 2018-08-01 株式会社東芝 Image encoding method and image decoding method
JP6609004B2 (en) * 2018-07-02 2019-11-20 株式会社東芝 Image encoding method and image decoding method
JP6795666B2 (en) * 2019-10-21 2020-12-02 株式会社東芝 Image coding method and image decoding method
JP6961781B2 (en) * 2019-10-21 2021-11-05 株式会社東芝 Image coding method and image decoding method
JP6980889B2 (en) * 2019-10-21 2021-12-15 株式会社東芝 Image coding method and image decoding method
JP7242811B2 (en) 2019-10-21 2023-03-20 株式会社東芝 Image encoding method and image decoding method

Also Published As

Publication number Publication date
JP2004104159A (en) 2004-04-02

Similar Documents

Publication Publication Date Title
JP4138391B2 (en) Variable length code generation device, variable length decoding device, variable length code generation method, and variable length decoding method
JP5258664B2 (en) Image coding apparatus, method and program, and image decoding apparatus, method and program
US20060017592A1 (en) Method of context adaptive binary arithmetic coding and apparatus using the same
CN101355699B (en) Data processing device
JPH09261078A (en) Data decoding method and its device
JP4442891B2 (en) Variable length coding apparatus and variable length coding method
KR100338198B1 (en) Encoder, decoder, their methods, and image processor
JP4227067B2 (en) Moving picture coding method, apparatus and program
US7333660B2 (en) Apparatus for and method of coding moving picture
US6055273A (en) Data encoding and decoding method and device of a multiple-valued information source
WO2003079692A1 (en) Hierarchical encoder and decoder
KR100989686B1 (en) A method and a device for processing bit symbols generated by a data source, a computer readable medium, a computer program element
JPH09121359A (en) Picture coding and decoding methods
JP3932244B2 (en) Image encoding / decoding method and apparatus, and recording medium recording the program
JP3491001B1 (en) Signal encoding method, signal decoding method, signal encoding device, signal decoding device, signal encoding program, and signal decoding program
Bonomini et al. Implementing an MPEG2 Video Decoder Based on TMS320C80 MVP
JP3688064B2 (en) Image compression method and image compression apparatus
JP3988582B2 (en) Encoding device and decoding device
JP3609814B2 (en) Variable length decoding method and apparatus
JP3228943B2 (en) Encoding device and decoding device, their methods and image processing device
JPH0888848A (en) Quantized pattern code book configuration method
JPH08316846A (en) Image coder, image decoder, image coding method and image decoding method
JP3766426B2 (en) Variable length coding method and apparatus
JP3609813B2 (en) Variable length coding method and apparatus
JP3866687B2 (en) Variable length coding method and apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050411

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080115

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080603

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080605

R150 Certificate of patent or registration of utility model

Ref document number: 4138391

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees