(57)【要約】【課題】有限数の符号化シンボルを効率よく符号化することである。【解決手段】本発明に係る可変長符号生成装置５００には、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズが入力される。また、符号化対象となるシンボルのインデックス番号である符号化インデックスが入力される。可変長符号生成装置５００は、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶部５０３と、テーブルサイズと符号化インデックスとに基づいて出力インデックス及び出力テーブル番号を決定するインデックス算出部５０１と、決定された出力テーブル番号に応じて有限基本テーブル記憶部５０３から符号化基本テーブルを選択するテーブル選択部５０２と、選択された符号化基本テーブルと決定された出力インデックスとに基づいて可変長符号を出力する符号出力部５０４とを備える。【選択図】　図９
2004104159.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、
有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、
前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記符号化インデックス入力手段により入力された符号化インデックスとに基づいてテーブルサイズ残量及びインデックス残量を算出し、前記テーブルサイズ残量及び前記インデックス残量に基づいて出力インデックス及び出力テーブル番号を決定する出力決定を行うと共に、前記テーブルサイズ残量及び前記インデックス残量を更新する残量更新を行い、前記インデックス残量が０になるまで前記出力決定及び残量更新を繰り返すインデックス算出手段と、
前記インデックス算出手段により決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択手段と、
前記テーブル選択手段により選択された符号化基本テーブルと、前記インデックス算出手段により決定された出力インデックスとに基づいて、可変長符号を出力する符号出力手段と
を備えることを特徴とする可変長符号生成装置。
【請求項２】
符号化特性を入力する符号化特性入力手段を更に備え、
前記有限基本テーブル記憶手段は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として記憶し、
前記テーブル選択手段は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択することを特徴とする請求項１に記載の可変長符号生成装置。
【請求項３】
符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、
有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、
有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成手段と、
前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出手段と、
前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブル記憶手段または前記無限符号化テーブル生成手段から選択するテーブル選択手段と、
前記テーブル選択手段により選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力手段と
を備えることを特徴とする可変長符号生成装置。
【請求項４】
符号化特性を入力する符号化特性入力手段を更に備え、
前記有限基本テーブル記憶手段は、特性ごとに分類された一または複数の有限基本テーブルを有限基本テーブル群として記憶し、
前記無限符号化テーブル生成手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、
前記インデックス算出手段は、前記符号化特性および前記テーブルサイズおよび前記符号化インデックスに基づいて、前記出力テーブル番号および出力インデックス番号を決定して出力することを特徴とする請求項３に記載の可変長符号生成装置。
【請求項５】
復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
復号対象となる可変長符号を入力する可変長符号入力手段と、
有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、
前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された可変長符号とに基づいて、復号対象符号及び出力テーブル番号を決定する復号データ算出手段と、
前記復号データ算出手段により決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択手段と、
前記テーブル選択手段により選択された符号化基本テーブルと、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段と
を備えることを特徴とする可変長復号装置。
【請求項６】
符号化特性を入力する符号化特性入力手段を更に備え、
前記有限基本テーブル記憶手段は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として記憶し、
前記テーブル選択手段は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択することを特徴とする請求項５に記載の可変長復号装置。
【請求項７】
復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力手段と、
有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを復号する手段を備える有限基本テーブル復号手段と、
有限インデックス数では飽和しない可変長符号化テーブルを復号する手段を備える無限符号化テーブル復号手段と、
前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出手段と、
前記復号データ算出手段により決定された復号対象テーブル番号に応じて、前記有限基本テーブル復号手段または前記無限符号化テーブル復号手段からテーブル復号手段を選択するテーブル復号手段選択手段と、
前記テーブル復号手段選択手段により選択されたテーブル復号手段と、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段と
を備えることを特徴とする可変長復号装置。
【請求項８】
符号化特性を入力する符号化特性入力手段を更に備え、
前記有限基本テーブル復号手段は、特性ごとに分類された複数の有限基本テーブル復号手段を備え、
前記無限符号化テーブル復号手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号する手段を備え、
前記復号データ算出手段は、前記符号化特性および前記テーブルサイズおよび前記入力可変長符号に基づいて、前記復号対象符号および前記復号対象テーブル番号を決定して出力することを特徴とする請求項７に記載の可変長復号装置。
【請求項９】
可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを有限基本テーブル記憶手段に記憶する有限基本テーブル記憶ステップと、
前記可変長符号生成装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記符号化インデックス入力ステップにて入力された符号化インデックスとに基づいてテーブルサイズ残量及びインデックス残量を算出し、前記テーブルサイズ残量及び前記インデックス残量に基づいて出力インデックス及び出力テーブル番号を決定する出力決定を行うと共に、前記テーブルサイズ残量及び前記インデックス残量を更新する残量更新を行い、前記インデックス残量が０になるまで前記出力決定及び残量更新を繰り返すインデックス算出ステップと、
前記可変長符号生成装置が、前記インデックス算出ステップにて決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択ステップと、
前記可変長符号生成装置が、前記テーブル選択ステップにて選択された符号化基本テーブルと、前記インデックス算出ステップにて決定された出力インデックスとに基づいて、可変長符号を出力する符号出力ステップと
を含むことを特徴とする可変長符号生成方法。
【請求項１０】
前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記有限基本テーブル記憶ステップでは、前記可変長符号生成装置は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、
前記テーブル選択手ステップでは、前記可変長符号生成装置は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択することを特徴とする請求項９に記載の可変長符号生成方法。
【請求項１１】
可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成ステップと、
前記可変長符号生成装置が、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出ステップと、
前記可変長符号生成装置が、前記出力テーブル番号に対応する可変長符号化テーブルを、前記有限基本テーブル記憶ステップまたは前記無限符号化テーブル生成ステップにて選択するテーブル選択ステップと、
前記可変長符号生成装置が、前記テーブル選択ステップにて選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号化出力ステップと
を含むことを特徴とする可変長符号生成方法。
【請求項１２】
前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記有限基本テーブル記憶ステップでは、前記可変長符号生成装置は、特性ごとに分類された一または複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、
前記無限符号化テーブル生成ステップでは、前記可変長符号生成装置は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、
前記インデックス算出ステップでは、前記可変長符号生成装置は、前記符号化特性および前記テーブルサイズおよび前記符号化インデックスに基づいて、前記出力テーブル番号および出力インデックス番号を決定して出力することを特徴とする請求項１１に記載の可変長符号生成方法。
【請求項１３】
可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長復号装置が、復号対象となる可変長符号を入力する可変長符号入力ステップと、
前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを有限基本テーブル記憶手段に記憶する有限基本テーブル記憶ステップと、
前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された可変長符号とに基づいて、復号対象符号及び出力テーブル番号を決定する復号データ算出ステップと、
前記可変長復号装置が、前記復号データ算出ステップにて決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択ステップと、
前記可変長復号装置が、前記テーブル選択ステップにて選択された符号化基本テーブルと、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップと
を含むことを特徴とする可変長復号方法。
【請求項１４】
前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記有限基本テーブル記憶ステップでは、前記可変長復号装置は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、
前記テーブル選択ステップでは、前記可変長復号装置は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択することを特徴とする請求項１３に記載の可変長復号方法。
【請求項１５】
前記可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長復号装置が、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力ステップと、
前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを復号するステップを含む有限基本テーブル復号ステップと、
前記可変長復号装置が、有限インデックス数では飽和しない可変長符号化テーブルを復号するステップを含む無限符号化テーブル復号ステップと、
前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出ステップと、
前記可変長復号装置が、前記復号データ算出ステップにて決定された復号対象テーブル番号に応じて、前記有限基本テーブル復号ステップまたは前記無限符号化テーブル復号ステップにてテーブル復号手段を選択するテーブル復号手段選択ステップと、
前記可変長復号装置が、前記テーブル復号手段選択ステップにて選択されたテーブル復号手段と、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップと
を含むことを特徴とする可変長復号装置。
【請求項１６】
前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記有限基本テーブル復号ステップでは、前記可変長復号装置が、特性ごとに分類された複数の有限基本テーブルを復号するステップを含み、
前記無限符号化テーブル復号ステップでは、前記可変長復号装置が、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号するステップを含み、
前記復号データ算出ステップでは、前記可変長復号装置は、前記符号化特性および前記テーブルサイズおよび前記入力可変長符号に基づいて、前記復号対象符号および前記復号対象テーブル番号を決定して出力することを特徴とする請求項１５に記載の可変長復号方法。
【請求項１７】
前記インデックス算出手段は、前記残量更新前の前記インデックス残量が前記出力テーブル番号における最大インデックス番号より大きい場合には、前記出力インデックスとして前記出力テーブル番号における最大インデックス番号を出力することを特徴とする請求項１又は２に記載の可変長符号生成装置。
【請求項１８】
前記テーブル選択手段は、符号化基本テーブルとして前記有限基本テーブルを選択する場合には、前記有限基本テーブルの最小インデックス番号に対応する符号の符号長が、前記無限符号化テーブル生成手段により生成される可変長符号化テーブルにおける符号間の符号長の差より大きいテーブルを選択することを特徴とする請求項３又は４に記載の可変長符号生成装置。
【請求項１９】
前記インデックス算出ステップでは、前記可変長符号生成装置が、前記残量更新前の前記インデックス残量が前記出力テーブル番号における最大インデックス番号より大きい場合には、前記出力インデックスとして前記出力テーブル番号における最大インデックス番号を出力することを特徴とする請求項９又は１０に記載の可変長符号生成方法。
【請求項２０】
前記テーブル選択ステップでは、前記可変長符号生成装置が、符号化基本テーブルとして前記有限基本テーブルを選択する場合には、前記有限基本テーブルの最小インデックス番号に対応する符号の符号長が、前記無限符号化テーブル生成ステップにて生成される可変長符号化テーブルにおける符号間の符号長の差より大きいテーブルを選択することを特徴とする請求項１１又は１２に記載の可変長符号生成方法。
【請求項２１】
符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、
有限インデックス数で飽和する可変長符号化テーブルを生成する有限基本テーブル生成手段と、
有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成手段と、
前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出手段と、
前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブル生成手段または前記無限符号化テーブル生成手段から選択するテーブル選択手段と、
前記テーブル選択手段により選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力手段と
を備えることを特徴とする可変長符号生成装置。
【請求項２２】
符号化特性を入力する符号化特性入力手段を更に備え、
前記無限符号化テーブル生成手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成することを特徴とする請求項２１に記載の可変長符号生成装置。
【請求項２３】
復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、
復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力手段と、
有限インデックス数で飽和する可変長符号化テーブルを復号する手段を備える有限符号化テーブル復号手段と、
有限インデックス数では飽和しない可変長符号化テーブルを復号する手段を備える無限符号化テーブル復号手段と、
前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出手段と、
前記復号データ算出手段により決定された復号対象テーブル番号に応じて、前記有限符号化テーブル復号手段または前記無限符号化テーブル復号手段からテーブル復号手段を選択するテーブル復号手段選択手段と、
前記テーブル復号手段選択手段により選択されたテーブル復号手段と、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段と
を備えることを特徴とする可変長復号装置。
【請求項２４】
符号化特性を入力する符号化特性入力手段を更に備え、
前記無限符号化テーブル復号手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号することを特徴とする請求項２３記載の可変長復号装置。
【請求項２５】
それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として記憶する符号化特性情報記憶手段と、
前記符号化特性情報を出力する符号化特性情報出力手段と、
前記符号化特性情報記憶手段によって記憶されている符号化特性情報に応じて、可変長符号生成を行う可変長符号生成手段と
を更に備えることを特徴とする請求項２、４、２２の何れか一項に記載の可変長符号生成装置。
【請求項２６】
それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として入力する符号化特性情報入力手段と、
前記符号化特性情報を記憶する符号化特性情報記憶手段と、
前記符号化特性情報記憶手段によって記憶されている符号化特性情報に応じて、可変長復号を行う可変長復号手段と
を更に備えることを特徴とする請求項６、８、２４の何れか一項に記載の可変長復号装置。
【請求項２７】
可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルを生成する有限基本テーブル生成ステップと、
前記可変長符号生成装置が、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成ステップと、
前記可変長符号生成装置が、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出ステップと、
前記可変長符号生成装置が、前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブルまたは前記無限符号化テーブルから選択するテーブル選択ステップと、
前記可変長符号生成装置が、前記テーブル選択ステップにて選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力ステップと
を含むことを特徴とする可変長符号生成方法。
【請求項２８】
前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記無限符号化テーブル生成ステップでは、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成することを特徴とする請求項２７に記載の可変長符号生成方法。
【請求項２９】
可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、
前記可変長復号装置が、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力ステップと、
前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルを復号するステップを含む有限符号化テーブル復号ステップと、
前記可変長復号装置が、有限インデックス数では飽和しない可変長符号化テーブルを復号するステップを含む無限符号化テーブル復号ステップと、
前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出ステップと、
前記可変長復号装置が、前記復号データ算出ステップにて決定された復号対象テーブル番号に応じて、前記有限符号化テーブル復号ステップまたは前記無限符号化テーブル復号ステップにてテーブル復号手段を選択するテーブル復号手段選択ステップと、
前記可変長復号装置が、前記テーブル復号手段選択ステップにて選択されたテーブル復号手段と、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップと
を含むことを特徴とする可変長復号方法。
【請求項３０】
前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、
前記無限符号化テーブル復号ステップでは、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号することを特徴とする請求項２９記載の可変長復号方法。
【請求項３１】
前記可変長符号生成装置が、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として符号化特性情報記憶手段に記憶する符号化特性情報記憶ステップと、
前記可変長符号生成装置が、前記符号化特性情報を出力する符号化特性情報出力ステップと、
前記可変長符号生成装置が、前記符号化特性情報記憶ステップにて記憶された符号化特性情報に応じて、可変長符号生成を行う可変長符号生成ステップと
を更に含むことを特徴とする請求項１０、１２、２８の何れか一項に記載の可変長符号生成方法。
【請求項３２】
前記可変長復号装置が、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として入力する符号化特性情報入力ステップと、
前記可変長復号装置が、前記符号化特性情報を符号化特性情報記憶手段に記憶する符号化特性情報記憶ステップと、
前記可変長復号装置が、前記符号化特性情報記憶ステップにて記憶された符号化特性情報に応じて、可変長復号を行う可変長復号ステップと
を更に含むことを特徴とする請求項１４、１６、３０の何れか一項に記載の可変長復号方法。
【請求項３３】
前記符号化特性情報出力手段は、前記符号化特性情報を可変長符号化して伝送することを特徴とする請求項２５記載の可変長符号生成装置。
【請求項３４】
前記符号化特性情報出力手段は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長符号化することによって、前記符号化特性情報を出力することを特徴とする請求項２５記載の可変長符号生成装置。
【請求項３５】
前記符号化特性情報出力手段は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として出力することを特徴とする請求項２５記載の可変長符号生成装置。
【請求項３６】
前記符号化特性情報出力手段は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として出力することを特徴とする請求項２５記載の可変長符号生成装置。
【請求項３７】
前記符号化特性情報出力手段は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として出力することを特徴とする請求項２５記載の可変長符号生成装置。
【請求項３８】
前記符号化特性情報入力手段は、前記符号化特性情報を可変長復号することを特徴とする請求項２６記載の可変長復号装置。
【請求項３９】
前記符号化特性情報入力手段は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長復号することによって、前記符号化特性情報を入力することを特徴とする請求項２６記載の可変長復号装置。
【請求項４０】
前記符号化特性情報入力手段は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として入力することを特徴とする請求項２６記載の可変長復号装置。
【請求項４１】
前記符号化特性情報入力手段は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として入力することを特徴とする請求項２６記載の可変長復号装置。
【請求項４２】
前記符号化特性情報入力手段は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として入力することを特徴とする請求項２６記載の可変長復号装置。
【請求項４３】
前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性情報を可変長符号化して伝送することを特徴とする請求項３１記載の可変長符号生成方法。
【請求項４４】
前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長符号化することによって、前記符号化特性情報を出力することを特徴とする請求項３１記載の可変長符号生成方法。
【請求項４５】
前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として出力することを特徴とする請求項３１記載の可変長符号生成方法。
【請求項４６】
前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として出力することを特徴とする請求項３１記載の可変長符号生成方法。
【請求項４７】
前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として出力することを特徴とする請求項３１記載の可変長符号生成方法。
【請求項４８】
前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性情報を可変長復号することを特徴とする請求項３２記載の可変長復号方法。
【請求項４９】
前記符号化特性情報入力ステップでは、前記可変長復号装置は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長復号することによって、前記符号化特性情報を入力することを特徴とする請求項３２記載の可変長復号方法。
【請求項５０】
前記符号化特性情報入力ステップでは、前記可変長復号装置は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として入力することを特徴とする請求項３２記載の可変長復号方法。
【請求項５１】
前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として入力することを特徴とする請求項３２記載の可変長復号方法。
【請求項５２】
前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として入力することを特徴とする請求項３２記載の可変長復号方法。
【請求項５３】
前記インデックス算出手段は、ルックアップテーブルを備え、前記ルックアップテーブルを利用して出力テーブル番号および出力インデックス番号を決定することを特徴とする請求項３、４、２１、２２の何れか一項に記載の可変長符号生成装置。
【請求項５４】
前記復号データ算出手段は、ルックアップテーブルを備え、前記ルックアップテーブルを利用して復号対象テーブル番号および復号対象符号を決定することを特徴とする請求項７、８、２３、２４の何れか一項に記載の可変長復号装置。
【請求項５５】
前記インデックス算出ステップでは、前記可変長符号生成装置は、ルックアップテーブルを利用して出力テーブル番号および出力インデックス番号を決定することを特徴とする請求項１１、１２、２７、２８の何れか一項に記載の可変長符号生成方法。
【請求項５６】
前記復号データ算出ステップでは、前記可変長復号装置では、ルックアップテーブルを利用して復号対象テーブル番号および復号対象符号を決定することを特徴とする請求項１５、１６、２９、３０の何れか一項に記載の可変長復号方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法に関する。
【０００２】
【従来の技術】
画像や音声などのデータは、文字データと比較して膨大な容量を有するため、従来、これらのデータを伝送及び蓄積するために高能率な符号化が行われてきた。図１は、従来技術における画像や音声などのデータ信号の伝送・蓄積方法を概略的に示す図である。図１において、画像や音声などのデータ信号は、まずＡＤ変換器１００によって、ＡＤ（Ａｎａｌｏｇ　ｔｏ　Ｄｉｇｉｔａｌ）変換が行われ、入力デジタルデータ系列２００となる。
【０００３】
続いて、入力デジタルデータ系列２００は、情報源符号化器１０１によって情報圧縮が行われ、冗長度の低い送信圧縮データ２０１に符号化される。送信圧縮データ２０１には、通信路符号化器１０２により、伝送媒体あるいは記憶媒体の信頼性向上を目的とした通信路符号化が施された後に、伝送データ２０２として出力される。伝送データ２０２は、伝送媒体あるいは記憶媒体１０３に伝送又は記憶される。
【０００４】
伝送媒体あるいは記憶媒体１０３に入力された伝送データ２０２は、通信路復号器１０４により通信路復号が行われて受信圧縮データ２０３に復号される。受信圧縮データ２０３は、情報源復号器１０５によって復号され出力デジタルデータ系列２０４が生成される。更に、出力デジタルデータ系列２０４は、ＤＡ変換器１０６によってＤＡ（Ｄｉｇｉｔａｌ　ｔｏ　Ａｎａｌｏｇ）変換が行われた結果、画像や音声などのデータ信号が復元される。
【０００５】
ここで、情報圧縮を目的とした情報源符号化器１０１においては、入力された情報源に関する冗長度（例えば、空間的冗長度、時間的冗長度、構造的・知識的冗長度など）が低減された符号化シンボルに変換される。この符号化シンボルには、各符号化シンボルの出現確率の偏りによって生じる冗長度を低減するために、エントロピー符号化が行われる。
【０００６】
従来のエントロピー符号化としては、例えば可変長符号化がある。可変長符号化においては、符号化シンボルの出現確率に応じて、割り当てられる可変長符号の相対的な長さが異なる。すなわち、出現確率の高い符号化シンボルに対しては短い可変長符号が割り当てられ、出現確率の低い符号化シンボルに対しては長い可変長符号が割り当てられる。これにより、符号化シンボルに含まれるエントロピー的冗長度が低減される。
【０００７】
図２は、可変長符号生成装置３００の機能的構成を示すブロック図である。図２に示す様に、符号化対象となるシンボルのインデックス番号である符号化インデックスの入力に伴い、予め設定された可変長符号化テーブルが記憶されている可変長符号化テーブル記憶部３０１から可変長符号化テーブルが符号出力部３０２に入力される。そして、符号出力部３０２に入力された可変長符号化テーブルの符号化インデックスに対応する符号が可変長符号として出力される。
【０００８】
また、上述の様に符号化された可変長符号は、可変長復号によって可逆的に、符号化されたシンボルのインデックス番号に復号することができる。図３は、可変長復号装置４００の機能的構成を示すブロック図である。可変長復号装置４００では、復号対象となる可変長符号が入力されると、予め設定された符号化側と同一の可変長符号化テーブルが記憶されている可変長符号化テーブル記憶部４０１から、可変長符号化テーブルがインデックス出力部４０２に入力される。そして、インデックス出力部４０２に入力された可変長符号と同一の、可変長符号化テーブルにおける符号に対応するインデックス番号が、復号インデックスとして出力される。
【０００９】
ところで、符号化シンボルは、その種類やコンテキストに応じて出現確率が異なるため、それぞれの符号化シンボルの種類に応じて異なる可変長符号化テーブルを備えることによって符号化効率を高めることができる。例えば、ＩＳＯ（Ｉｎｔｅｒｎａｔｉｏｎａｌ　Ｏｒｇａｎｉｚａｔｉｏｎ　ｆｏｒ　Ｓｔａｎｄａｒｄｉｚａｔｉｏｎ）のＩＥＣ（Ｉｎｔｅｒｎａｔｉｏｎａｌ　Ｅｌｅｃｔｒｏｔｅｃｈｎｉｃａｌ　Ｃｏｍｍｉｓｓｉｏｎ）によって国際標準化されたＭＰＥＧ（Ｍｏｖｉｎｇ　Ｐｉｃｔｕｒｅ　Ｅｘｐｅｒｔｓ　Ｇｒｏｕｐ）−４準拠の動画像符号化方式においては、ＤＣＴ（Ｄｉｓｃｒｅｔｅ　Ｃｏｓｉｎｅ　Ｔｒａｎｓｆｏｒｍ）係数に対応して、符号化モードに応じて異なる可変長符号化テーブルを保持することによって符号化効率を高めている。
【００１０】
この反面、符号化シンボルの種類に応じて異なる可変長符号化テーブルを備えると、その可変長符号化テーブルを保持するためのメモリ容量が多くなる。このため、例えば動画像の高能率圧縮方式としてＩＳＯのＩＥＣとＩＴＵ−Ｔ（Ｉｎｔｅｒｎａｔｉｏｎａｌ　Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ　Ｕｎｉｏｎ−Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ　ｓｅｃｔｏｒ）とが共同で標準化作業を進めているＪＶＴ（Ｊｏｉｎｔ　Ｖｉｄｅｏ　Ｔｅａｍ）によるＨ．２６Ｌ動画像符号化方式では、特定の符号生成規則に則って生成される構造的可変長符号（「ｅｘｐ−Ｇｏｌｏｍｂ符号」と称される。）を用いることによって、可変長符号化テーブルを保持するためのメモリ容量が少量で済むようにしている。
【００１１】
以下、構造的可変長符号の一例としてのＧｏｌｏｍｂ符号について説明する。図４は、Ｇｏｌｏｍｂ符号の構成を示す概念図である。図４に示す様に、Ｇｏｌｏｍｂ符号は、ノード番号ｉ＝０，１，２，３，…により表される無限数のノードを有する。また、Ｇｏｌｏｍｂ符号はツリー構造を有し、これら各ノードにおいて、無限数のノードを有するツリーと有限数のノードで終端するツリーＢとに分岐する。
【００１２】
図５は、図４に示したツリー構造を有するＧｏｌｏｍｂ符号において、Ｇｏｌｏｍｂ符号のツリーＢの符号数Ｐと、インデックス番号とが対応付けて格納される可変長符号化テーブルを示す図である。図５では、ツリーＢが無の場合（符号数Ｐ＝０）、１ビット固定長符号の場合（符号数Ｐ＝２）、及び２ビット固定長符号の場合（符号数Ｐ＝４）を例示する。かかるＧｏｌｏｍｂ符号では、ツリーＢの符号数Ｐに応じて異なる特性を有する符号を容易に生成することができる。
【００１３】
また、図６は、図４に示したツリー構造を有するＧｏｌｏｍｂ符号において、ツリーＢの符号数Ｐが２でツリーＢが存在し始めるノード番号Ｑと、インデックス番号とが対応付けて格納される可変長符号化テーブルを示す図である。図６では、ノード番号Ｑがそれぞれ０，１，２の場合を例示する。かかるＧｏｌｏｍｂ符号では、ツリーＢが存在し始めるノード番号Ｑの値に応じて異なる特性を有する符号を容易に生成できる。
【００１４】
また、図５及び図６に示す様に、任意のインデックス番号に対応するＧｏｌｏｍｂ符号の符号長が、そのインデックス番号より大きいインデックス番号に対応するＧｏｌｏｍｂ符号の符号長よりも大きくならない様に、可変長符号化テーブルを構成することができる。以下、インデックス番号が小さい程、符号長も小さくなるこの様な可変長符号を「順序正しい可変長符号」と記す。このように、構造的可変長符号は無限のシンボル数を有し、かつ異なる特性を有する可変長符号化テーブルを少ないメモリ容量で実現できる。
【００１５】
【発明が解決しようとする課題】
ここで、図７は、符号化シンボル数が１４の場合において、Ｇｏｌｏｍｂ符号のツリーＢの符号数Ｐが４、ツリーＢが存在し始めるノード番号Ｑが０の場合の可変長符号化テーブルを示す図である。図７に示す様に、出現する符号化シンボル数が有限個に限られている場合に、従来の構造的可変長符号によって可変長符号化テーブルを構成すると、決して使用されない符号空間（例えば、図７の“１１１０”又は“１１１１”から始まる符号）が存在する。その結果、符号化効率を損するという問題点があった。
【００１６】
以下、可変長符号化テーブル内の符号で全ての符号空間を隙間無く埋める可変長符号を「飽和する可変長符号」と記す。図７の可変長符号化テーブルが飽和するように修正を加えるとすれば、例えば、インデックス番号１３及び１４の符号に他の符号と区別できる符号を割り当てればよい。
【００１７】
図８は、かかる修正が加えられた、飽和するシンボル数１４の可変長符号化テーブルの一例として、インデックス番号１３に符号「１１１０」が、インデックス番号１４に符号「１１１１」が割り当てられた可変長符号化テーブルを示す図である。図８に示す様に、該可変長符号化テーブルは飽和するが、順序正しい可変長符号ではない。このように、飽和しかつ順序正しい有限シンボル数の可変長符号化テーブルを生成する手段が無かったため、有限数の符号化シンボルを効率よく符号化できないという問題があった。
【００１８】
そこで、本発明の課題は、効率の良い可変長符復号を可能とする可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法を提供することである。
【００１９】
【課題を解決するための手段】
上記課題を解決するために、本発明に係る可変長符号生成装置は、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記符号化インデックス入力手段により入力された符号化インデックスとに基づいてテーブルサイズ残量及びインデックス残量を算出し、前記テーブルサイズ残量及び前記インデックス残量に基づいて出力インデックス及び出力テーブル番号を決定する出力決定を行うと共に、前記テーブルサイズ残量及び前記インデックス残量を更新する残量更新を行い、前記インデックス残量が０になるまで前記出力決定及び残量更新を繰り返すインデックス算出手段と、前記インデックス算出手段により決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択手段と、前記テーブル選択手段により選択された符号化基本テーブルと、前記インデックス算出手段により決定された出力インデックスとに基づいて、可変長符号を出力する符号出力手段とを備える。
【００２０】
本発明に係る可変長符号生成装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記有限基本テーブル記憶手段は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として記憶し、前記テーブル選択手段は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択する。
【００２１】
本発明に係る可変長符号生成装置は、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成手段と、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出手段と、前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブル記憶手段または前記無限符号化テーブル生成手段から選択するテーブル選択手段と、前記テーブル選択手段により選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力手段とを備える。
【００２２】
本発明に係る可変長符号生成装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記有限基本テーブル記憶手段は、特性ごとに分類された一または複数の有限基本テーブルを有限基本テーブル群として記憶し、前記無限符号化テーブル生成手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、前記インデックス算出手段は、前記符号化特性および前記テーブルサイズおよび前記符号化インデックスに基づいて、前記出力テーブル番号および出力インデックス番号を決定して出力する。
【００２３】
本発明に係る可変長復号装置は、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、復号対象となる可変長符号を入力する可変長符号入力手段と、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶手段と、前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された可変長符号とに基づいて、復号対象符号及び出力テーブル番号を決定する復号データ算出手段と、前記復号データ算出手段により決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択手段と、前記テーブル選択手段により選択された符号化基本テーブルと、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段とを備える。
【００２４】
本発明に係る可変長復号装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記有限基本テーブル記憶手段は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として記憶し、前記テーブル選択手段は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択する。
【００２５】
本発明に係る可変長復号装置は、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力手段と、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを復号する手段を備える有限基本テーブル復号手段と、有限インデックス数では飽和しない可変長符号化テーブルを復号する手段を備える無限符号化テーブル復号手段と、前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出手段と、前記復号データ算出手段により決定された復号対象テーブル番号に応じて、前記有限基本テーブル復号手段または前記無限符号化テーブル復号手段からテーブル復号手段を選択するテーブル復号手段選択手段と、前記テーブル復号手段選択手段により選択されたテーブル復号手段と、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段とを備える。
【００２６】
本発明に係る可変長復号装置において、より好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記有限基本テーブル復号手段は、特性ごとに分類された複数の有限基本テーブル復号手段を備え、前記無限符号化テーブル復号手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号する手段を備え、前記復号データ算出手段は、前記符号化特性および前記テーブルサイズおよび前記入力可変長符号に基づいて、前記復号対象符号および前記復号対象テーブル番号を決定して出力する。
【００２７】
本発明に係る可変長符号生成方法は、可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを有限基本テーブル記憶手段に記憶する有限基本テーブル記憶ステップと、前記可変長符号生成装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記符号化インデックス入力ステップにて入力された符号化インデックスとに基づいてテーブルサイズ残量及びインデックス残量を算出し、前記テーブルサイズ残量及び前記インデックス残量に基づいて出力インデックス及び出力テーブル番号を決定する出力決定を行うと共に、前記テーブルサイズ残量及び前記インデックス残量を更新する残量更新を行い、前記インデックス残量が０になるまで前記出力決定及び残量更新を繰り返すインデックス算出ステップと、前記可変長符号生成装置が、前記インデックス算出ステップにて決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択ステップと、前記可変長符号生成装置が、前記テーブル選択ステップにて選択された符号化基本テーブルと、前記インデックス算出ステップにて決定された出力インデックスとに基づいて、可変長符号を出力する符号出力ステップとを含む。
【００２８】
本発明に係る可変長符号生成方法において好ましくは、前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記有限基本テーブル記憶ステップでは、前記可変長符号生成装置は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、前記テーブル選択手ステップでは、前記可変長符号生成装置は、前記符号化特性に対応する有限基本テーブル群から、有限基本テーブルを選択する。
【００２９】
本発明に係る可変長符号生成方法は、可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを記憶する有限基本テーブル記憶ステップと、前記可変長符号生成装置が、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成ステップと、前記可変長符号生成装置が、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出ステップと、前記可変長符号生成装置が、前記出力テーブル番号に対応する可変長符号化テーブルを、前記有限基本テーブル記憶ステップまたは前記無限符号化テーブル生成ステップにて選択するテーブル選択ステップと、前記可変長符号生成装置が、前記テーブル選択ステップにて選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号化出力ステップとを含む。
【００３０】
本発明に係る可変長符号生成方法において好ましくは、前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記有限基本テーブル記憶ステップでは、前記可変長符号生成装置は、特性ごとに分類された一または複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、前記無限符号化テーブル生成ステップでは、前記可変長符号生成装置は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、前記インデックス算出ステップでは、前記可変長符号生成装置は、前記符号化特性および前記テーブルサイズおよび前記符号化インデックスに基づいて、前記出力テーブル番号および出力インデックス番号を決定して出力する。
【００３１】
本発明に係る可変長復号方法は、可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長復号装置が、復号対象となる可変長符号を入力する可変長符号入力ステップと、前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを有限基本テーブル記憶手段に記憶する有限基本テーブル記憶ステップと、前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された可変長符号とに基づいて、復号対象符号及び出力テーブル番号を決定する復号データ算出ステップと、前記可変長復号装置が、前記復号データ算出ステップにて決定された出力テーブル番号に応じて、前記有限基本テーブル記憶手段から符号化基本テーブルを選択するテーブル選択ステップと、前記可変長復号装置が、前記テーブル選択ステップにて選択された符号化基本テーブルと、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップとを含む。
【００３２】
本発明に係る可変長復号方法において好ましくは、可変長復号装置が符号化特性を入力する符号化特性入力ステップを更に含み、前記有限基本テーブル復号ステップでは、前記可変長復号装置が特性ごとに分類された複数の有限基本テーブルを復号するステップを含み、前記無限符号化テーブル復号ステップでは、前記可変長復号装置が前記符号化特性に応じて特性の異なる無限符号化テーブルを復号するステップを含み、前記復号データ算出ステップでは、前記可変長復号装置は、前記符号化特性および前記テーブルサイズおよび前記入力可変長符号に基づいて、前記復号対象符号および前記復号対象テーブル番号を決定して出力する。
【００３３】
本発明に係る可変長復号方法において、前記可変長復号装置が、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長復号装置が、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力ステップと、前記可変長復号装置が、有限インデックス数で飽和する可変長符号化テーブルである有限基本テーブルを復号するステップを含む有限基本テーブル復号ステップと、前記可変長復号装置が、有限インデックス数では飽和しない可変長符号化テーブルを復号するステップを含む無限符号化テーブル復号ステップと、前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出ステップと、前記可変長復号装置が、前記復号データ算出ステップにて決定された復号対象テーブル番号に応じて、前記有限基本テーブル復号ステップまたは前記無限符号化テーブル復号ステップにてテーブル復号手段を選択するテーブル復号手段選択ステップと、前記可変長復号装置が、前記テーブル復号手段選択ステップにて選択されたテーブル復号手段と、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップとを含む。
【００３４】
本発明に係る可変長復号方法において、より好ましくは、前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記有限基本テーブル記憶ステップでは、前記可変長復号装置は、特性ごとに分類された複数の有限基本テーブルを有限基本テーブル群として前記有限基本テーブル記憶手段に記憶し、前記無限符号化テーブル生成ステップでは、前記可変長復号装置は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成し、前記テーブル選択ステップでは、前記可変長復号装置は、前記符号化特性に応じて、前記有限基本テーブル記憶手段に記憶されている有限基本テーブル群、又は、前記無限符号化テーブル生成ステップにて生成された無限符号化テーブルから、有限基本テーブルを選択する。
【００３５】
本発明に係る可変長符号生成装置において、より好ましくは、前記インデックス算出手段は、前記残量更新前の前記インデックス残量が前記出力テーブル番号における最大インデックス番号より大きい場合には、前記出力インデックスとして前記出力テーブル番号における最大インデックス番号を出力する。
【００３６】
本発明に係る可変長符号生成装置において、より好ましくは、前記テーブル選択手段は、符号化基本テーブルとして前記有限基本テーブルを選択する場合には、前記有限基本テーブルの最小インデックス番号に対応する符号の符号長が、前記無限符号化テーブル生成手段により生成される可変長符号化テーブルにおける符号間の符号長の差より大きいテーブルを選択する。
【００３７】
本発明に係る可変長符号生成方法において、より好ましくは、前記インデックス算出ステップでは、前記可変長符号生成装置が、前記残量更新前の前記インデックス残量が前記出力テーブル番号における最大インデックス番号より大きい場合には、前記出力インデックスとして前記出力テーブル番号における最大インデックス番号を出力する。
【００３８】
本発明に係る可変長符号生成方法において、より好ましくは、前記テーブル選択ステップでは、前記可変長符号生成装置が、符号化基本テーブルとして前記有限基本テーブルを選択する場合には、前記有限基本テーブルの最小インデックス番号に対応する符号の符号長が、前記無限符号化テーブル生成ステップにて生成される可変長符号化テーブルにおける符号間の符号長の差より大きいテーブルを選択する。
【００３９】
本発明に係る可変長符号生成装置は、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力手段と、有限インデックス数で飽和する可変長符号化テーブルを生成する有限基本テーブル生成手段と、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成手段と、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出手段と、前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブル生成手段または前記無限符号化テーブル生成手段から選択するテーブル選択手段と、前記テーブル選択手段により選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力手段とを備える。
【００４０】
本発明に係る可変長符号生成装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記無限符号化テーブル生成手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成する。
【００４１】
本発明に係る可変長復号装置は、復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力手段と、復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力手段と、有限インデックス数で飽和する可変長符号化テーブルを復号する手段を備える有限符号化テーブル復号手段と、有限インデックス数では飽和しない可変長符号化テーブルを復号する手段を備える無限符号化テーブル復号手段と、前記テーブルサイズ入力手段により入力されたテーブルサイズと、前記可変長符号入力手段により入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出手段と、前記復号データ算出手段により決定された復号対象テーブル番号に応じて、前記有限符号化テーブル復号手段または前記無限符号化テーブル復号手段からテーブル復号手段を選択するテーブル復号手段選択手段と、前記テーブル復号手段選択手段により選択されたテーブル復号手段と、前記復号データ算出手段により決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力手段とを備える。
【００４２】
本発明に係る可変長復号装置において好ましくは、符号化特性を入力する符号化特性入力手段を更に備え、前記無限符号化テーブル復号手段は、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号する。
【００４３】
本発明に係る可変長符号生成装置において、より好ましくは、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として記憶する符号化特性情報記憶手段と、前記符号化特性情報を出力する符号化特性情報出力手段と、前記符号化特性情報記憶手段によって記憶されている符号化特性情報に応じて、可変長符号生成を行う可変長符号生成手段とを更に備える。
【００４４】
本発明に係る可変長復号装置において、より好ましくは、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として入力する符号化特性情報入力手段と、前記符号化特性情報を記憶する符号化特性情報記憶手段と、前記符号化特性情報記憶手段によって記憶されている符号化特性情報に応じて、可変長復号を行う可変長復号手段とを更に備える。
【００４５】
本発明に係る可変長符号生成方法は、可変長符号生成装置が、符号化対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長符号生成装置が、符号化対象となるシンボルのインデックス番号である符号化インデックスを入力する符号化インデックス入力ステップと、前記可変長符号生成装置が、有限インデックス数で飽和する可変長符号化テーブルを生成する有限基本テーブル生成ステップと、前記可変長符号生成装置が、有限インデックス数で飽和しない可変長符号化テーブルを生成する無限符号化テーブル生成ステップと、前記可変長符号生成装置が、前記テーブルサイズと前記符号化インデックスとに基づいて、符号生成に用いる可変長符号化テーブルである出力基本テーブルを特定する出力テーブル番号、および、前記出力基本テーブルにおける、出力する符号に対応する出力インデックス番号を決定して出力するインデックス算出ステップと、前記可変長符号生成装置が、前記出力テーブル番号に対応する可変長符号化テーブルを前記有限基本テーブルまたは前記無限符号化テーブルから選択するテーブル選択ステップと、前記可変長符号生成装置が、前記テーブル選択ステップにて選択された可変長符号化テーブルの前記出力インデックス番号に対応する可変長符号を出力する符号出力ステップとを含む。
【００４６】
本発明に係る可変長符号生成方法において好ましくは、前記可変長符号生成装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記無限符号化テーブル生成ステップでは、前記符号化特性に応じて特性の異なる無限符号化テーブルを生成する。
【００４７】
本発明に係る可変長復号方法は、可変長復号装置が復号対象となるシンボルの最大インデックス番号であるテーブルサイズを入力するテーブルサイズ入力ステップと、前記可変長復号装置が復号対象となる可変長符号である入力可変長符号を入力する可変長符号入力ステップと、前記可変長復号装置が有限インデックス数で飽和する可変長符号化テーブルを復号するステップを含む有限符号化テーブル復号ステップと、前記可変長復号装置が有限インデックス数では飽和しない可変長符号化テーブルを復号するステップを含む無限符号化テーブル復号ステップと、前記可変長復号装置が、前記テーブルサイズ入力ステップにて入力されたテーブルサイズと、前記可変長符号入力ステップにて入力された入力可変長符号とに基づいて、復号対象符号および復号対象テーブル番号を決定して出力する復号データ算出ステップと、前記可変長復号装置が、前記復号データ算出ステップにて決定された復号対象テーブル番号に応じて、前記有限符号化テーブル復号ステップまたは前記無限符号化テーブル復号ステップにてテーブル復号手段を選択するテーブル復号手段選択ステップと、前記可変長復号装置が、前記テーブル復号手段選択ステップにて選択されたテーブル復号手段と、前記復号データ算出ステップにて決定された復号対象符号とに基づいて可変長復号し、インデックス番号を出力するインデックス出力ステップとを含む。
【００４８】
本発明に係る可変長復号方法において好ましくは、前記可変長復号装置が、符号化特性を入力する符号化特性入力ステップを更に含み、前記無限符号化テーブル復号ステップでは、前記符号化特性に応じて特性の異なる無限符号化テーブルを復号する。
【００４９】
本発明に係る可変長符号生成方法において、より好ましくは、前記可変長符号生成装置が、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として符号化特性情報記憶手段に記憶する符号化特性情報記憶ステップと、前記可変長符号生成装置が、前記符号化特性情報を出力する符号化特性情報出力ステップと、前記可変長符号生成装置が、前記符号化特性情報記憶ステップにて記憶された符号化特性情報に応じて、可変長符号生成を行う可変長符号生成ステップとを更に含む。
【００５０】
本発明に係る可変長復号方法において、より好ましくは、前記可変長復号装置が、それぞれの可変長符号化テーブルに対応する前記符号化特性を符号化特性情報として入力する符号化特性情報入力ステップと、前記可変長復号装置が、前記符号化特性情報を符号化特性情報記憶手段に記憶する符号化特性情報記憶ステップと、前記可変長復号装置が、前記符号化特性情報記憶ステップにて記憶された符号化特性情報に応じて、可変長復号を行う可変長復号ステップとを更に含む。
【００５１】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、前記符号化特性情報を可変長符号化して伝送する。
【００５２】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長符号化することによって、前記符号化特性情報を出力する。
【００５３】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として出力する。
【００５４】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として出力する。
【００５５】
本発明に係る可変長符号生成装置において、より好ましくは、前記符号化特性情報出力手段は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として出力する。
【００５６】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、前記符号化特性情報を可変長復号する。
【００５７】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長復号することによって、前記符号化特性情報を入力する。
【００５８】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として入力する。
【００５９】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として入力する。
【００６０】
本発明に係る可変長復号装置において、より好ましくは、前記符号化特性情報入力手段は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として入力する。
【００６１】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性情報を可変長符号化して伝送する。
【００６２】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長符号化することによって、前記符号化特性情報を出力する。
【００６３】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として出力する。
【００６４】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として出力する。
【００６５】
本発明に係る可変長符号生成方法において、より好ましくは、前記符号化特性情報出力ステップでは、前記可変長符号生成装置は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として出力する。
【００６６】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性情報を可変長復号する。
【００６７】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、可変長符号化テーブルの特性を決定する複数のパラメータを多次元可変長復号することによって、前記符号化特性情報を入力する。
【００６８】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、複数の可変長符号化テーブルに対応する前記符号化特性の組み合わせ情報を前記符号化特性情報として入力する。
【００６９】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性のデフォルト値と異なる符号化特性値を前記符号化特性情報として入力する。
【００７０】
本発明に係る可変長復号方法において、より好ましくは、前記符号化特性情報入力ステップでは、前記可変長復号装置は、前記符号化特性のデフォルト値と符号化特性値との差分値を前記符号化特性情報として入力する。
【００７１】
本発明に係る可変長符号生成装置において、より好ましくは、前記インデックス算出手段は、ルックアップテーブルを備え、前記ルックアップテーブルを利用して出力テーブル番号および出力インデックス番号を決定する。
【００７２】
本発明に係る可変長復号装置において、より好ましくは、前記復号データ算出手段は、ルックアップテーブルを備え、前記ルックアップテーブルを利用して復号対象テーブル番号および復号対象符号を決定する。
【００７３】
本発明に係る可変長符号生成方法において、より好ましくは、前記インデックス算出ステップでは、前記可変長符号生成装置は、ルックアップテーブルを利用して出力テーブル番号および出力インデックス番号を決定する。
【００７４】
本発明に係る可変長復号方法において、より好ましくは、前記復号データ算出ステップでは、前記可変長復号装置では、ルックアップテーブルを利用して復号対象テーブル番号および復号対象符号を決定する。
【００７５】
【発明の実施の形態】
以下、図面を参照しながら、本発明の第１及び第２の実施形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法について説明する。
【００７６】
（第１の実施の形態）
まず、第１の実施の形態について説明する。
図９は、第１の実施の形態における可変長符号生成装置５００の構成を概略的に示すブロック図である。図９に示す様に、可変長符号生成装置５００は、インデックス算出部５０１とテーブル選択部５０２と有限基本テーブル記憶部５０３と符号出力部５０４とを備える。
【００７７】
インデックス算出部５０１は、可変長符号生成装置５００に入力されたテーブルサイズ及び符号化インデックスに基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び出力基本テーブルにおけるインデックス番号（出力インデックス）を算出する。
【００７８】
テーブル選択部５０２は、符号化特性に応じて有限基本テーブル記憶部５０３に記憶されている基本テーブル群の中から使用する基本テーブル群を選択する。更に、テーブル選択部５０２は、選択された基本テーブル群の中から出力テーブル番号に応じて基本テーブルを選択し、後述の符号出力部５０４に符号化基本テーブルとして提供する。
【００７９】
有限基本テーブル記憶部５０３には、複数の基本テーブル群ａ，ｂ…が記憶されている。
符号出力部５０４は、出力インデックスに対応する符号を符号化基本テーブルの中から取得して、可変長符号として出力する。
【００８０】
次いで、図１０は、シンボル数がそれぞれ２，３，４，５，６で飽和する順序正しい可変長符号化テーブルを示す図である。すなわち、シンボル数が２のテーブルはＴａｂｌｅ２、シンボル数が３のテーブルはＴａｂｌｅ３、シンボル数が４のテーブルはＴａｂｌｅ４−１、及びＴａｂｌｅ４−２、シンボル数が５のテーブルはＴａｂｌｅ５−１、Ｔａｂｌｅ５−２、及びＴａｂｌｅ５−３、シンボル数が６のテーブルはＴａｂｌｅ６−１、Ｔａｂｌｅ６−２、Ｔａｂｌｅ６−３、Ｔａｂｌｅ６−４、及びＴａｂｌｅ６−５とする。これらのテーブルは、他のテーブルを生成するために使用されるテーブルであり、「基本テーブル」と記す。
【００８１】
ここで、特性の異なる５種類のｎシンボルで飽和する可変長符号化テーブルをＴａｂｌｅ（ｎ）−ａ、Ｔａｂｌｅ（ｎ）−ｂ、Ｔａｂｌｅ（ｎ）−ｃ、Ｔａｂｌｅ（ｎ）−ｄ、Ｔａｂｌｅ（ｎ）−ｅとする。これらの５種類の特性ａ，ｂ，ｃ，ｄ，ｅを有する符号を生成するために使用される基本テーブルは、図１１に示す様に、特性ａの符号を生成するためにＴａｂｌｅ２、Ｔａｂｌｅ３、Ｔａｂｌｅ４−１、Ｔａｂｌｅ５−１、及びＴａｂｌｅ６−１を用いるものとし、以下、これらのテーブルを「基本テーブル群ａ」と記す。
【００８２】
同様に、Ｔａｂｌｅ２、Ｔａｂｌｅ３、Ｔａｂｌｅ４−１、Ｔａｂｌｅ５−１、Ｔａｂｌｅ６−２は、基本テーブル群ｂとして特性ｂの符号生成に用いられ、Ｔａｂｌｅ２、Ｔａｂｌｅ３、Ｔａｂｌｅ４−１、Ｔａｂｌｅ５−２、Ｔａｂｌｅ６−３は、基本テーブル群ｃとして特性ｃの符号生成に用いられる。更に、Ｔａｂｌｅ２、Ｔａｂｌｅ３、Ｔａｂｌｅ４−２、Ｔａｂｌｅ５−２、Ｔａｂｌｅ６−４は、基本テーブル群ｄとして特性ｄの符号生成に用いられ、Ｔａｂｌｅ２、Ｔａｂｌｅ３、Ｔａｂｌｅ４−２、Ｔａｂｌｅ５−３、Ｔａｂｌｅ６−５は、基本テーブル群ｅとして特性ｅの符号生成に用いられる。
【００８３】
本発明の第１の実施の形態における符号生成では、これらの飽和しかつ順序正しい基本テーブルを保持し、これらの基本テーブルの最も長い符号長を有する符号をエスケープコードとして、更に基本テーブルを付加していくことにより、よりシンボル数の多い飽和し順序正しい可変長符号化テーブルを構成することを特徴とする。
【００８４】
具体的には例えば、ｎシンボルで飽和する（テーブルサイズ＝ｎ）特性ｓ（符号化特性＝ｓ）のテーブルのｍ番目（１≦ｍ≦ｎ）の符号（符号化インデックス＝ｍ）を生成するためには、基本テーブル群ｓのテーブルを用いて、図１２のフローチャートに示す手順によって可変長符号を生成する。
【００８５】
まず、ｉ＝ｎ、ｊ＝ｍ、ｋ＝６が設定される（Ｓ１１）。
続いて、ｉが７以上かつｊが６以上であれば、Ｔａｂｌｅ６−ｓの６番目の符号が出力され（Ｓ１２）、ｉ及びｊから５が減算される（Ｓ１３）。また、ｋはｉと６の内、小さい方の値に決定される。そして、ｉが７以上かつｊが６以上である間、Ｓ１２及びＳ１３の処理が繰り返される。一方、ｉが７以上かつｊが６以上でなければ、Ｔａｂｌｅｋ−ｓのｊ番目の符号が出力される（Ｓ１４）。
【００８６】
かかる手法により生成される符号の一例として、シンボル数ｎ＝１５、特性ｓ＝ａ，ｂ，ｃ，ｄ，ｅに対する可変長符号化テーブルを図１３に示す。
図１３に示す様に、本手法によって生成される複数種類のテーブルは、特性ａ，ｂ，ｃ，ｄ，ｅの順に符号長の分布の傾きが小さくなる様に構成されている。したがって、ある符号化対象シンボルの値が推定しやすい場合には特性ａに近い可変長符号化テーブルを用い、推定しにくい場合には特性ｅに近い可変長符号化テーブルを用いることによって、効率良く符号化することができる。
【００８７】
また、図１４は、本発明の第１の実施の形態における可変長復号装置６００の構成を概略的に示すブロック図である。図１４に示す様に、可変長復号装置６００は、復号データ算出部６０１とテーブル選択部６０２と有限基本テーブル記憶部６０３とインデックス出力部６０４とを備える。
【００８８】
復号データ算出部６０１は、可変長復号装置６００に入力されたテーブルサイズ及び可変長符号に基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び基本テーブルによって復号対象となる可変長符号（復号対象符号）を出力する。
【００８９】
テーブル選択部６０２は、有限基本テーブル記憶部６０３に記憶されている基本テーブル群の中から、符号化特性に応じて、使用する基本テーブル群を選択する。更に、テーブル選択部６０２は、その中から出力テーブル番号に応じて基本テーブルを選択し、後述のインデックス出力部６０４に符号化基本テーブルとして提供する。
【００９０】
有限基本テーブル記憶部６０３には、複数の基本テーブル群ａ，ｂ…が記憶されている。
インデックス出力部６０４は、復号対象符号と一致する符号に対するインデックス値を符号化基本テーブルの中から取得し、復号の結果得られたインデックス番号として出力する。
【００９１】
復号側においても、復号対象シンボルに対する可変長符号化テーブルのシンボル数及び特性は符号化と同様の手段により前以って決定される。このため、図１５のフローチャートに示す各ステップを経ることによって容易に復号可能である。
【００９２】
まず、ｉ＝ｎ、ｊ＝０に設定される（Ｓ２１）。
続いて、ｉが７以上であり、入力された符号の最初の部分がＴａｂｌｅ６−ｓの６番目の符号であれば、特性ｓのＴａｂｌｅ６の６番目の符号分が読み飛ばされ（Ｓ２２）、ｉから５が減算されｊに５が加算される。また、ｋはｉと６の内、小さい方の値に決定される（Ｓ２３）。その結果、Ｔａｂｌｅ６−ｓの６番目の符号と一致する部分が削除される。そして、ｉが７以上である間、Ｓ２２〜Ｓ２３の処理が繰り返される。
【００９３】
一方、ｉが７以上でなければ、特性ｓのＴａｂｌｅｋの符号の中から符号列の先頭に一致する符号のインデックス値ｐが求められ、当該符号が読み飛ばされる（Ｓ２４）。そして、入力符号系列の先頭からＴａｂｌｅｋ−ｓに一致する符号が探索され、当該符号がｐ番目であれば、ｊにｐが加算され、その結果得られたｊが復号された値として出力される（Ｓ２５）。
【００９４】
なお、本発明の第１の実施の形態では、シンボル数２〜６の基本テーブルを用いて可変長符号を生成するよう構成したが、シンボル数はこれらの値に限らず、例えばシンボル数が７や８までの全て又は一部の飽和し順序正しい可変長符号化テーブルを基本テーブルとして用いてもよい。また、それ以上のシンボル数の全て又は一部の飽和し順序正しい可変長符号化テーブルを基本テーブルとして用いてもよい。
【００９５】
また、例えば、符号長の分布の偏りが最も小さくなる特性ｓ＝ｆを、図１６のフローチャートに示す手法で導入するような構成としてもよい。すなわち、シンボル数ｎの特性ｔのテーブルのｍ番目の符号は、以下のステップを経て出力される。
【００９６】
まず、２ｇ≦ｎ＜２ｇ＋１を満たすｇが求められる（Ｓ３１）。
この結果、ｍ≦２ｇ＋１−ｎであれば、ｇビット固定長符号のｍ番目の符号が出力され（Ｓ３２）、符号化が終了する。一方、ｍ＞２ｇ＋１−ｎであれば、ｇ＋１ビット固定長符号の（ｍ＋２ｇ＋１−ｎ）番目の符号が出力され（Ｓ３３）、符号化が終了する。
【００９７】
一例として、シンボル数ｎ＝１５の場合の特性ｓ＝ｆの符号を図１７に示す。なお、特性ｆの符号は、図１８のフローチャートに示す様に以下の手順によって容易に復号することができる。
【００９８】
まず、２ｇ≦ｎ＜２ｇ＋１を満たすｇが求められる（Ｓ４１）。
続いて、入力符号系列の最初のｇビットが固定長復号され、対応するｇビット固定長符号でのインデックス番号が順位ｒとして求められる（Ｓ４２）。ｒ≦２ｇ＋１−ｎであれば、ｒが復号シンボルとして出力され（Ｓ４３）、復号が終了する。
【００９９】
ｒ＞２ｇ＋１−ｎであれば、ｊ＝２ｒ−２ｇ＋１＋ｎとされ（Ｓ４４）、更に次の１ビットが１であればｊに１が加算される（Ｓ４５）。そして、得られたｊが復号シンボルとして出力され（Ｓ４６）、復号が終了する。
【０１００】
以上説明した様に、本発明の第１の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法によれば、複数種類の特性を有し、かつ、有限シンボル数で飽和し順序正しい可変長符号化テーブルを構成できる。その結果、効率のよい可変長符復号が可能となる。
【０１０１】
（第２の実施の形態）
本発明の第２の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法は、第１の実施の形態における基本テーブル（図１１参照）のように、シンボル数の少ない飽和し順序正しい１つまたは複数のテーブルと、Ｇｏｌｏｍｂ符号などの飽和しない構造的可変長符号とを併用することを特徴とする。
【０１０２】
図１９は、本実施の形態における可変長符号生成装置７００の構成を概略的に示すブロック図である。図４５は、本実施の形態の変形態様における可変長符号生成装置７００の構成を概略的に示すブロック図である。図１９及び図４５に示す様に、可変長符号生成装置７００は、インデックス算出部７０１とテーブル選択部７０２と無限符号化テーブル生成部７０３と有限基本テーブル記憶部７０４と符号出力部７０５とを備える。
【０１０３】
インデックス算出部７０１は、可変長符号生成装置７００に入力されたテーブルサイズ及び符号化インデックスに基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び出力基本テーブルにおけるインデックス番号（出力インデックス）を算出する。
なお、インデックス算出部７０１は、図４５に示す様に、可変長符号生成装置７００に入力された符号化特性、及びテーブルサイズ及び符号化インデックスに基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び出力基本テーブルにおけるインデックス番号（出力インデックス）を算出する態様を採ることもできる。
【０１０４】
テーブル選択部７０２は、符号化特性及び出力インデックス番号に応じて有限基本テーブル記憶部７０４に記憶されている基本テーブル群、若しくは、無限符号化テーブル生成部７０３によって生成される可変長符号化テーブルから、使用する基本テーブルを選択し、後述の符号出力部７０５に符号化基本テーブルとして提供する。
なお、テーブル選択部７０２は、図４５に示す様に、出力インデックス番号に応じて有限基本テーブル記憶部７０４に記憶されている基本テーブル群、若しくは、無限符号化テーブル生成部７０３によって生成される可変長符号化テーブルから、使用する基本テーブルを選択し、後述の符号出力部７０５に符号化基本テーブルとして提供する態様を採ることもできる。
【０１０５】
無限符号化テーブル生成部７０３は、入力される符号化特性を使用して、可変長符号化テーブルを生成する。
有限基本テーブル記憶部７０４には、複数の基本テーブル群ａ，ｂ…が記憶されている。
符号出力部７０５は、符号化基本テーブルの中から出力インデックスに対応する符号を取得して、可変長符号として出力する。
【０１０６】
以下、その一例としてＧｏｌｏｍｂ符号を用いた場合の可変長符号生成方法について説明する。図５に示したＧｏｌｏｍｂ符号において、ツリーＢの符号数ＰとツリーＢが存在し始めるノード番号Ｑとの組み合わせ（Ｐ，Ｑ）が、（２，２）の場合を特性ａとする。更に、（２，１）の場合を特性ｂとし、（２，０）の場合を特性ｃとし、（３，０）の場合を特性ｄ、そして、（４，０）の場合を特性ｅとする。これらの可変長符号化テーブルを図２０に示す。
【０１０７】
また、図２１は、本発明の第２の実施の形態における可変長符号生成方法、及び可変長復号方法において用いられる基本テーブルを示す。図２１に示す様に、基本テーブルには、インデックス番号と各ＴａｂｌｅのＧｏｌｏｍｂ符号とが対応付けて格納されている。また、本実施の形態において用いられる可変長符号化テーブルの特性ａ〜ｅと基本テーブルとの対応関係を図２２に示す。
【０１０８】
ここで、Ｇｏｌｏｍｂ符号は、飽和しない順序正しい可変長符号であるが、図２３に示す様に、Ｇｏｌｏｍｂ符号の任意のノードを基本テーブルＣに置き換えることによって、飽和する可変長符号を生成することができる。但し、この置換処理だけでは、当該可変長符号化が順序正しく構成できるとは限らない。
【０１０９】
そこで、本発明の第２の実施の形態における符号生成では、上記Ｇｏｌｏｍｂ符号のノードを置き換えるための基本テーブルＣの最小符号長が、Ｇｏｌｏｍｂ符号におけるツリーＢの最大符号長以上になるような基本テーブルを用いることによって符号長の逆転が生じないようにして、飽和し順序正しい可変長符号化テーブルを構成することを特徴とする。
【０１１０】
具体的には例えば、ｎシンボルで飽和する特性ｓのテーブルのｍ番目の符号を生成するためには、基本テーブル群ｓのテーブル及び図２１に示した特性ｓに対応するＧｏｌｏｍｂ符号を用いて、図２４のフローチャートに示す様に、以下の手順によって符号を生成する。
【０１１１】
Ｓ５１では、特性ｓに対応するＧｏｌｏｍｂ符号の係数の組み合わせ（Ｐｓ，Ｑｓ）、及びｎの値から、ｈ＝（ｎ−Ｑｓ）％Ｐｓが求められる。ここで、演算子「％」はモジュロ演算を行うことを意味する。なお、ｈ＝０の場合はｈ＝Ｐｓとする（Ｓ５２）。
【０１１２】
続いて、残余数ＬがＬ＝ｈ＋Ｐｓと定義される（Ｓ５３）。ｍ≦ｎ−Ｌである場合には、特性ｓに対応するＧｏｌｏｍｂ符号のｍ番目の係数が出力され（Ｓ５４）、符号化が終了する。
一方、ｍ＞ｎ−Ｌである場合には、（ｎ−Ｌ＋Ｑｓ）／Ｐｓ個の符号「１」の出力（Ｓ５５）に続けて、基本テーブル群ｓの内、シンボル数がＬの基本テーブルの（ｍ＋Ｌ−ｎ）番目の符号が出力され（Ｓ５６）、符号化が終了する。このように構成した場合のシンボル数ｎ＝１５の特性ａ〜ｅに対応する可変長符号化テーブルを図２５に示す。
【０１１３】
次に、図２６は、本発明の第２の実施の形態における可変長復号装置８００の構成を概略的に示すブロック図である。図４６は、本実施の形態の変形態様における可変長復号装置８００の構成を概略的に示すブロック図である。図２６及び図４６に示す様に、可変長復号装置８００は、復号データ算出部８０１とテーブル選択部８０２と無限符号化テーブル生成部８０３と有限基本テーブル記憶部８０４とインデックス出力部８０５とを備える。
【０１１４】
復号データ算出部８０１は、可変長復号装置８００に入力されたテーブルサイズ及び可変長符号に基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び基本テーブルによって復号対象となる可変長符号（復号対象符号）を出力する。
なお、復号データ算出部８０１は、図４６に示す様に、復号データ算出部８０１は、可変長復号装置８００に入力された符号化特性、及びテーブルサイズ及び可変長符号に基づいて、使用すべき基本テーブルを示す出力テーブル番号、及び基本テーブルによって復号対象となる可変長符号（復号対象符号）を出力する態様を採ることもできる。
【０１１５】
テーブル選択部８０２は、符号化特性及び出力インデックス番号に応じて有限基本テーブル記憶部８０４に記憶されている基本テーブル群、若しくは、無限符号化テーブル生成部８０３によって生成される可変長符号化テーブルから使用する基本テーブルを選択し、後述のインデックス出力部８０５に符号化基本テーブルとして提供する。
なお、テーブル選択部８０２は、図４６に示す様に、出力テーブル番号に応じて有限基本テーブル記憶部８０４に記憶されている基本テーブル群、若しくは、無限符号化テーブル生成部８０３によって生成される可変長符号化テーブルから使用する基本テーブルを選択し、後述のインデックス出力部８０５に符号化基本テーブルとして提供する態様を採ることもできる。
【０１１６】
無限符号化テーブル生成部８０３は、入力される符号化特性を使用して、可変長符号化テーブルを生成する。
有限基本テーブル記憶部８０４には、複数の基本テーブル群ａ，ｂ…が記憶されている。
【０１１７】
インデックス出力部８０５は、復号対象符号と一致する符号に対するインデックス値を符号化基本テーブルの中から取得して、復号の結果得られたインデックス番号として出力する。
【０１１８】
なお、この様に構成された可変長符号は、図２７のフローチャートに示す様に以下の手順によって容易に復号することができる。
Ｓ６１では、特性ｓに対応するＧｏｌｏｍｂ符号の係数の組み合わせ（Ｐｓ，Ｑｓ）、及びｎの値から、ｈ＝（ｎ−Ｑｓ）％Ｐｓが求められる。ここで、演算子「％」はモジュロ演算を行うことを意味する。なお、ｈ＝０の場合はｈ＝Ｐｓとする（Ｓ６２）。
【０１１９】
次に、残余数ＬがＬ＝ｈ＋Ｐｓと定義される（Ｓ６３）。Ｓ６４では、最初に続く符号「１」の数がｔとされる。ｔ≦Ｑｓ−１の場合には、ｊ＝ｔ＋１が復号シンボルとして出力され（Ｓ６５）、復号が終了する。
【０１２０】
一方、ｔが（ｎ−Ｌ＋Ｑｓ）／Ｐｓ個より小さい場合には、ｔビット分読み飛ばされた（Ｓ６６）後、ｔ個の符号「１」に続く（Ｐｓ＋１）ビットの固定長符号が復号され、その結果がｕとされる（Ｓ６７）。そして、（ｔ−Ｑｓ）・Ｐｓ＋ｕが復号シンボルとして出力されたことに伴い（Ｓ６８）、復号が終了する。
【０１２１】
更に、ｔが（ｎ−Ｌ＋Ｑｓ）／Ｐｓ個以上である場合には、（ｎ−Ｌ＋Ｑｓ）／Ｐｓビット分読み飛ばされた（Ｓ６９）後、（ｎ−Ｌ＋Ｑｓ）／Ｐｓ個の符号「１」に続く符号が、シンボル数Ｌの基本テーブルの何番目のインデックス番号に該当するかが求められ、そのインデックス番号がＩとされる（Ｓ７０）。そして、Ｉ＋ｎ−Ｌが復号シンボルとして出力されたことに伴い（Ｓ７１）、復号が終了する。
【０１２２】
以上説明した様に、本発明の第２の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法によれば、複数種類の特性を有し、かつ、有限シンボル数で飽和し順序正しい可変長符号化テーブルを構成できる。その結果、より効率のよい可変長符復号が可能となる。
【０１２３】
なお、本実施の形態においては、一例として、特定のＧｏｌｏｍｂ符号を用いたが、如何なるＧｏｌｏｍｂ符号、あるいは他の構造的な符号であっても本発明を適用可能である。更に、シンボル数２〜８の基本テーブルを用いて可変長符号を生成するものとしたが、９以上のシンボル数を用いることができるのは勿論である。
【０１２４】
なお、本実施形態においては、符復号する際に残余数Ｌおよび連続する符号「１」の個数を演算処理により算出するものとしたが、これらの一連の演算処理は、予め用意されたルックアップテーブルを参照して行うものとしてもよい。
【０１２５】
すなわち、例えばｎシンボルで飽和する特性ｃのテーブルに対して残余数Ｌを図４１に示すルックアップテーブルを用いて容易に求めることができる。また、（ｎ−Ｌ＋Ｑｓ）／Ｐｓの値も予めルックアップテーブルを構成しておくことにより、容易に求めることができる。図４２は、ｎ＝１５の場合における、（ｎ−Ｌ＋Ｑｓ）／Ｐｓに対応するルックアップテーブルを示す図である。この様なルックアップテーブルを参照すれば、符復号において、より少ない演算量で同様の効果を得ることができる。
【０１２６】
更に、ｎシンボルで飽和する特性ｓの符号の復号を行うために、基本テーブル群ｓのテーブルを用いて、図４３のフローチャートに示すように、以下の手順によって復号する構成としてもよい。
【０１２７】
まず、図４３のＳ１３１では、ｎの値から特性ｓに対応する残余数Ｌが図４１のルックアップテーブルより求められる。次に、入力された符号系列の最初に連続する符号「１」の数をカウントしてｔとする（Ｓ１３２）。続いて、カウントｔが与えられた場合に、次に符号系列より読み込むべきビット数をルックアップテーブルより求める。
【０１２８】
図４４は、ｎ＝１５の場合における、カウントｔと読み込むべきビット数ｖを有するルックアップテーブルを示す図である。ｔ≦（Ｑｓ−１）である場合には、ｔビット読み飛ばしてｊ＝ｔ＋１が復号シンボルとして出力されたことに伴い（Ｓ１３３）、復号が終了する。
【０１２９】
次いで、ｔ＜（ｎ−Ｌ＋Ｑｓ）／Ｐｓの場合には、ｔビット読み飛ばし、続くｖビットを読み込み（Ｓ１３４）、シンボル数Ｑｓの特性ｅの基本テーブルの何番目のインデックス番号に該当するかが求められ、そのインデックス番号がｕとされる（Ｓ１３５）。そして、（ｔ−Ｑｓ）＊Ｐｓ＋ｕが復号シンボルとして出力されたことに伴い（Ｓ１３６）、復号が終了する。
【０１３０】
更に、ｔ≧（ｎ−Ｌ＋Ｑｓ）／Ｐｓの場合には、（ｎ−Ｌ＋Ｑｓ）／Ｐｓビット読み飛ばし（Ｓ１３７）、続くｖビットを読み込み、シンボル数Ｌの基本テーブルの何番目のインデックス番号に該当するかが求められ、そのインデックス番号がｌとされる（Ｓ１３８）。そして、ｌ＋ｎ−Ｌが復号シンボルとして出力されたことに伴い（Ｓ１３９）、復号が終了する。これにより、少ない演算量で好適な符復号処理を行うことができる。
【０１３１】
（第３の実施の形態）
本発明の第３の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法は、第２の実施の形態における基本テーブルの代わりに、第１の実施の形態における特性ｓ＝ｆに用いた有限符号化テーブルを生成および復号する手段を備える。なお、図２８〜図３２、図４７、図４８においては、既に説明した構成要素と同一の構成要素には末尾が同一の符号を付し、重複する説明は省略する。
【０１３２】
図２８は、本実施の形態における可変長符号生成装置９００の構成を概略的に示すブロック図である。図４７は、本実施の形態の変形態様における可変長符号生成装置９００の構成を概略的に示すブロック図である。図２８及び図４７に示す様に、可変長符号生成装置９００は、インデックス算出部９０１とテーブル選択部９０２と無限符号化テーブル生成部９０３と有限符号化テーブル生成部９０４と符号出力部９０５とを備える。
【０１３３】
有限符号化テーブル生成部９０４は、第１の実施の形態における特性ｓ＝ｆに対する有限符号化テーブル生成手段（図１６のステップＳ３１〜Ｓ３３に示した処理に対応）によって、有限シンボル数の可変長符号化テーブルを基本テーブルとしてテーブル選択部９０２に提供する。
【０１３４】
図２９は、本実施の形態における可変長符号生成方法の手順を示すフローチャートである。本実施の形態における可変長符号生成方法の手順は、図２４のステップＳ５６を、以下に示すステップＳ８６に置き換えた点において、第２の実施の形態と相違する。なお、図２９のステップＳ８１〜Ｓ８５は、図２４のステップＳ５１〜Ｓ５５にそれぞれ対応する。
【０１３５】
すなわち、ステップＳ８６では、ステップＳ３１〜Ｓ３３に示した手順によって、シンボル数Ｌの有限符号化テーブルのｍ＋Ｌ−ｎ番目の符号が出力される。当該処理により構成されたシンボル数ｎ＝１５の特性ａ〜ｅに対応する可変長符号化テーブルの一例を図３０に示す。
【０１３６】
次に、図３１は、本発明の第３の実施の形態における可変長復号装置１０００の構成を概略的に示すブロック図である。図４８は、本実施の形態の変形態様における可変長符号生成装置１０００の構成を概略的に示すブロック図である。図３１及び図４８に示す様に、可変長復号装置１０００は、復号データ算出部１００１とテーブル選択部１００２と無限符号化テーブル生成部１００３と有限符号化テーブル生成部１００４とインデックス出力部１００５とを備える。
【０１３７】
有限符号化テーブル生成部１００４は、第１の実施の形態における特性ｓ＝ｆに対する有限符号化テーブルを生成し、テーブル選択部１００２に提供する。図３２は、本実施の形態における可変長復号方法の手順を示すフローチャートである。本実施の形態における可変長復号方法の手順は、図２７のステップＳ７０を、以下に示すステップＳ１０１に置き換えた点において、第２の実施の形態と相違する。なお、図３２のステップＳ９１〜Ｓ１００は、図２７のステップＳ６１〜Ｓ７０にそれぞれ対応する。
【０１３８】
ステップＳ１０１では、ステップＳ４１〜Ｓ４６（図１８参照）に示した手順を経て、シンボル数Ｌの有限符号化テーブルにおいて対応するインデックス番号Ｉが出力される。
【０１３９】
上述したように、本発明の第３の実施の形態においては、有限基本テーブルを保持する代わりに有限符号化テーブル生成手段を備えるよう構成した。したがって、本実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法によれば、より少ないメモリ量で複数種類の特性を有し、かつ、有限シンボル数で飽和し順序正しい可変長符号化テーブルを構成できる。その結果、より少ないメモリ量で、より効率のよい可変長符復号が可能となる。
【０１４０】
なお、本実施の形態においても、第２の実施形態と同様にルックアップテーブルを用いることによって、より少ない演算量で好適な符復号を行うことができる。
【０１４１】
（第４の実施の形態）
本発明の第４の実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法は、複数種類の符号化対象シンボルを符号化するために、それぞれ同一または異なる符号化特性を持つ複数種類の可変長符号化テーブルを備える情報源符号化器１０１（図１参照）において、各可変長符号化テーブルに対する特性である符号化特性情報を出力する。また、情報源復号器１０５に対しては前記符号化特性情報を入力することによって、情報源符号化器１０１と同一の特性を持つ可変長符号化テーブルを用いて可変長復号を行う。
【０１４２】
図３３は、本実施の形態における可変長符号生成装置１１００の構成を概略的に示すブロック図である。図３３に示す様に、可変長符号生成装置１１００は、可変長符号生成部１１０１と符号化特性情報保持部１１０２と符号化特性情報出力部１１０３を備える。
【０１４３】
可変長符号生成部１１０１は、上述した第１から第３の実施の形態における可変長符号生成装置と同様に、符号化特性に応じて異なる可変長符号化テーブルを用いた可変長符号を生成すると共に、入力される符号化特性と符号化インデックスとテーブルサイズとに応じて可変長符号を出力する。
【０１４４】
符号化特性情報保持部１１０２は、複数種類の符号化対象シンボルを符号化するための複数種類の可変長符号化テーブルの符号化特性を保持し、入力される符号化対象シンボルの種類およびテーブルサイズに応じて、符号化特性を可変長符号生成部１１０１に提供する。
符号化特性情報出力部１１０３は、符号化特性情報保持部１１０２に保持されている符号化特性を符号化特性情報として出力する。
【０１４５】
図３４は、本実施の形態における可変長符号生成方法の手順を示すフローチャートである。まず、符号化特性情報保持部１１０２に、それぞれの符号化対象シンボルに対する符号化特性を予め記録する（Ｓ１１１）。
【０１４６】
次に、符号化特性情報出力部１１０３は、符号化特性情報保持部１１０２に保持されている符号化特性を符号化特性情報として出力する。なお、符号化特性情報の出力は、図１に示した情報源符号化部１０１と情報源復号器１０５との間の可変長符号を伝送するネットワークと同一のネットワークを介して伝送してもよいし、より信頼性の高い他のネットワークを介して伝送してもよい（Ｓ１０２）。
【０１４７】
次に、それぞれの符号化対象シンボルおよびテーブルサイズに対する符号化特性が符号化特性情報保持部１１０２より可変長符号生成部１１０１に入力され、符号化対象となるシンボルの符号化インデックスおよびテーブルサイズが可変長符号生成部１１０１に入力され、可変長符号が生成及び出力される（Ｓ１１３）。
【０１４８】
図３５は、本実施の形態における可変長復号装置１２００の構成を概略的に示すブロック図である。図３５に示す様に、可変長復号装置１２００は、可変長復号部１２０１と符号化特性情報保持部１２０２と符号化特性情報入力部１２０３を備える。
【０１４９】
可変長復号部１２０１は、上述した第１から第３の実施の形態における可変長復号装置と同様に、符号化特性に応じて異なる可変長符号化テーブルを用いた可変長符号を復号すると共に、入力される符号化特性と可変長符号とテーブルサイズとに応じて復号インデックスを出力する。
【０１５０】
符号化特性情報保持部１２０２は、複数種類の符号化シンボルに対する可変長符号を復号するための複数種類の可変長符号化テーブルの符号化特性を保持し、入力される可変長符号の種類およびテーブルサイズに応じて、符号化特性を可変長復号部１２０１に提供する。
符号化特性情報入力部１２０３は、符号化特性情報保持部１２０２に保持されている符号化特性を符号化特性情報として入力する。
【０１５１】
図３６は、本実施の形態における可変長復号方法の手順を示すフローチャートである。まず、符号化特性情報入力部１２０３に外部より符号化特性情報が入力される（Ｓ１２１）。次に、入力された符号化特性情報が符号化特性情報保持部１２０２に記録される（Ｓ１２２）。
【０１５２】
続いて、それぞれの可変長符号に対する符号化特性がテーブルサイズおよび可変長符号に応じて符号化特性情報保持部１２０２より可変長復号部１２０１に入力され、復号対象となる可変長符号およびテーブルサイズが可変長復号部１２０１に入力され、復号インデックスが出力される（Ｓ１２３）。
【０１５３】
以下、一例を示しながら、本実施の形態における符復号手段について、より具体的に説明する。本実施の形態では、動画像符号化において画面の動き情報および画面の明るさ情報および画面の色情報が数値化された情報を、符号化対象シンボルとして符号化する場合を想定する。すなわち、符号化対象シンボルとして、３種類のシンボルＭＶ（例えば、画面の動き情報）、ＸＹ（例えば、画面の明るさ情報）、ＸＣ（例えば、画面の色情報）を可変長符号化することを想定する。
【０１５４】
ここで、画面の動き情報に対するシンボルＭＶは、動きの変化が大きい程大きい値を、動きの変化が小さい程小さい値をとるものとする。画面の明るさ情報に対するシンボルＸＹは、画面の明るさの変化が大きい程大きい値を、画面の明るさの変化が小さい程小さい値を取るものとする。画面の色情報に対するシンボルＸＣは、画面の色の変化が大きい程大きい値を、画面の色の変化が小さい程小さい値をとるものとする。また、可変長符復号には、第２の実施の形態において図２５に示した可変長符号化テーブルを用いるものとする。
【０１５５】
例えば、所定の期間において、画面の動きが複雑であり、明るさの変化や色の変化が複雑でないと予め分かっている場合には、シンボルＭＶとしてはそれぞれの値の発生する頻度が分散し、シンボルＸＹおよびＸＣとしては小さい値の発生する頻度が高くなると考えられる。
【０１５６】
このような場合には、シンボルＸＹおよびＸＣに対する可変長符号化テーブルとしては、特定の値に対して特に短い符号長が割り当てられるような特性を持つもの（例えば、第２の実施形態で示した特性ａまたはｂの可変長符号化テーブル）を用いると共に、シンボルＭＶに対する可変長符号化テーブルとしては、全ての符号長が均等となる特性を持つもの（例えば、第２の実施形態で示した特性ｅの可変長符号化テーブル）を用いることによって、効率良く符号化できる。
【０１５７】
したがって、このような場合には、例えば図３７に示すテーブルを参照することにより、図３８に示すように、ヘッダ情報としては、シンボルＭＶ、ＸＹ、ＸＣに対する符号化特性ＰＭＶ（例えば特性ｅ）、ＰＸＹ（例えば特性ａ）、ＰＸＣ（例えば特性ｂ）を用い、符号化特性情報としては固定長符号を用いて、可変長符号がまず伝送される。
【０１５８】
続いて、各シンボルに対応する符号化インデックスＩＭＶ（例えば１０）、ＩＸＹ（例えば２）、ＩＸＣ（例えば１）が、それぞれの符号化特性情報に対応する可変長符号化テーブルを用いて符号化される。これにより、各々のシンボルの符号化インデックスに対応する可変長符号ＣＭＶ（１１００１）、ＣＸＹ（１０）、ＣＸＣ（０）が出力される。
【０１５９】
一方、復号側では、まずヘッダ情報として、シンボルＭＶ、ＸＹ、ＸＣに対する符号化特性情報の固定長符号を受信して復号することによって、各々のシンボルＭＶ、ＸＹ、ＸＣに対する符号化特性ＰＭＶ、ＰＸＹ、ＰＸＣとしての特性ｅ、ｂ、ａがそれぞれ得られる。
【０１６０】
続いて、可変長符号ＣＭＶが受信されると、符号化特性ＰＭＶ（特性ｅ）に対応する可変長符号化テーブルを用いて、復号インデックスとしてＩＭＶ（＝１０）が復号される。その後、可変長符号ＣＸＹが受信されると、符号化特性ＰＸＹ（特性ａ）に対応する可変長符号化テーブルを用いて、復号インデックスとしてＩＸＹ（＝２）が復号される。そして、可変長符号ＣＸＣが受信されると、符号化特性ＰＸＣ（特性ｂ）に対応する可変長符号化テーブルを用いて、復号インデックスとしてＩＸＣ（＝１）が復号される。
【０１６１】
なお、本実施の形態では、全ての符号化特性情報を伝送するものとしたが、符号化側と復号側でデフォルトの符号化特性情報を予め保持しておき、デフォルトの符号化特性と異なる符号化特性のみを伝送する構成としても勿論よい。これにより、より少ない情報伝送量で同様の効果が得られる。また、上記デフォルトの符号化特性と異なる符号化特性に対応する、デフォルトの符号化特性と使用する符号化特性との差分値を伝送することにより、更に少ない情報伝送量で同様の効果が得られる。更に、復号側に関しても同様に、上記デフォルト値と異なる符号化特性に対応する符号化特性情報を受信するものとしてもよい。
【０１６２】
また、本実施の形態では、一例として、符号化特性ａ〜ｅをヘッダ情報に含めて伝送するものとしたが、それぞれの可変長符号化テーブルに対応する、Ｇｏｌｏｍｂ符号の特性を決定する２つの係数ＰおよびＱをヘッダ情報（図６を参照）に含めて伝送してもよい。この場合には、例えば図３９に示すようなＰおよびＱの２次元可変長符号化テーブルを備えて符号化特性情報を可変長符号化して伝送する構成を採ることによって、より効率良く同様の効果が得られる。
【０１６３】
また、例えば図４０に示すような各可変長符号化テーブルに対する符号化特性の組み合わせを複数保持して、前記符号化特性の組み合わせ情報に符号を割り当て、符号化特性の組み合わせ情報のみをヘッダ情報として伝送する構成を採ることによっても、効率良く同様の効果が得られる。また、復号側に関しても同様に、上述した２次元可変長符号化テーブルや符号化特性の組み合わせを保持することによって、好適に復号することができる。
【０１６４】
上述したように、本発明の第４の実施の形態においては、可変長符復号に用いる可変長符号化テーブルの符号化特性情報を符号化側から復号側へ伝送するよう構成した。したがって、本実施の形態における可変長符号生成装置、可変長復号装置、可変長符号生成方法、及び可変長復号方法によれば、より適応性の高い可変長符復号が可能となる。
【０１６５】
【発明の効果】
本発明によれば、異なる特性を有し、かつ、飽和し順序正しい有限シンボル数の可変長符号化テーブルを少ないメモリ容量と簡単な演算で生成できる。その結果、効率のよい可変長符復号が可能となる。
【図面の簡単な説明】
【図１】情報の蓄積再生・伝送方法を概略的に示す図である。
【図２】従来の可変長符号生成装置の構成を示すブロック図である。
【図３】従来の可変長復号装置の構成を示すブロック図である。
【図４】Ｇｏｌｏｍｂ符号の構成を示す概念図である。
【図５】Ｇｏｌｏｍｂ符号のパラメータに応じた可変長符号化テーブルの一例を示す図である。
【図６】Ｇｏｌｏｍｂ符号の別のパラメータに応じた可変長符号化テーブルの一例を示す図である。
【図７】無限に続くＧｏｌｏｍｂ符号の一例を示す図である。
【図８】従来の手法によってＧｏｌｏｍｂ符号に修正を加えて飽和させた可変長符号化テーブルの一例を示す図である。
【図９】本発明の第１の実施の形態における可変長符号生成装置の構成を示すブロック図である。
【図１０】基本テーブルの構成を示す図である。
【図１１】基本テーブル群の構成を示す図である。
【図１２】第１の実施の形態における可変長符号生成方法の手順を示すフローチャートである。
【図１３】第１の実施の形態における可変長符号生成方法によって生成された可変長符号化テーブルの一例を示す図である。
【図１４】第１の実施の形態における可変長復号装置の構成を示すブロック図である。
【図１５】第１の実施の形態における可変長復号方法の手順を示すフローチャートである。
【図１６】第１の実施の形態における符号長の分布の偏りが小さくなる特性の可変長符号生成方法の手順を示すフローチャートである。
【図１７】第１の実施の形態における符号長の分布の偏りが小さくなる特性の可変長符号生成方法によって生成された可変長符号化テーブルの一例を示す図である。
【図１８】第１の実施の形態における符号長の分布の偏りが小さくなる特性の可変長符号生成方法によって生成された符号を復号する手順を示すフローチャートである。
【図１９】本発明の第２の実施の形態における可変長符号生成装置の構成を示すブロック図である。
【図２０】第２の実施の形態における可変長符号生成方法において用いるＧｏｌｏｍｂ符号の一例を示す図である。
【図２１】第２の実施の形態における可変長符号生成方法において用いる有限基本テーブルの一例を示す図である。
【図２２】第２の実施の形態における可変長符号生成方法における基本テーブル群の構成の一例を示す図である。
【図２３】第２の実施の形態における可変長符号生成方法の概念を説明する図である。
【図２４】第２の実施の形態における可変長符号生成方法の手順を示すフローチャートである。
【図２５】第２の実施の形態における可変長符号生成方法によって生成された可変長符号化テーブルの一例を示す図である。
【図２６】第２の実施の形態における可変長復号装置の構成を示すブロック図である。
【図２７】第２の実施の形態における可変長復号方法の手順を示すフローチャートである。
【図２８】第３の実施の形態における可変長符号生成装置の構成を示すブロック図である。
【図２９】第３の実施の形態における可変長符号生成方法の手順を示すフローチャートである。
【図３０】第３の実施の形態における可変長符号生成方法によって生成された可変長符号化テーブルの一例を示す図である。
【図３１】第３の実施の形態における可変長復号装置の構成を示すブロック図である。
【図３２】第３の実施の形態における可変長復号方法の手順を示すフローチャートである。
【図３３】第４の実施の形態における可変長符号生成装置の構成を示すブロック図である。
【図３４】第４の実施の形態における可変長符号生成方法の手順を示すフローチャートである。
【図３５】第４の実施の形態における可変長復号装置の構成を示すブロック図である。
【図３６】第４の実施の形態における可変長復号方法の手順を示すフローチャートである。
【図３７】第４の実施の形態における符号化特性情報の符号化テーブルの一例を示す表である。
【図３８】第４の実施の形態におけるビットストリームの構成の一例を示す図である。
【図３９】第４の実施の形態の変形態様における２次元可変長符号化テーブルの一例を示す図である。
【図４０】第４の実施の形態の変形態様における可変長符号化テーブルに対応する符号化特性の組み合わせの一例を示す図である。
【図４１】第２の実施の形態の変形態様における、残余数Ｌの値を決定するためのルックアップテーブルの一例を示す図である。
【図４２】第２の実施の形態の変形態様における、（ｎ−Ｌ＋Ｑｓ）／Ｐｓの値を決定するためのルックアップテーブルの一例を示す図である。
【図４３】第２の実施の形態の変形態様における、ルックアップテーブルを用いた可変長復号方法の手順を示すフローチャートである。
【図４４】第２の実施の形態の変形態様における、読み込むべきビット数ｖを決定するためのルックアップテーブルの一例を示す図である。
【図４５】本発明の第２の実施の形態の変形態様における可変長符号生成装置の構成を示すブロック図である。
【図４６】第２の実施の形態の変形態様における可変長復号装置の構成を示すブロック図である。
【図４７】本発明の第３の実施の形態の変形態様における可変長符号生成装置の構成を示すブロック図である。
【図４８】第３の実施の形態の変形態様における可変長復号装置の構成を示すブロック図である。
【符号の説明】
５００…可変長符号生成装置、５０１…インデックス算出部、５０２…テーブル選択部、５０３…有限基本テーブル記憶部、５０４…符号出力部、
６００…可変長復号装置、６０１…復号データ算出部、６０２…テーブル選択部、６０３…有限基本テーブル記憶部、６０４…インデックス出力部、
７００…可変長符号生成装置、７０１…インデックス算出部、７０２…テーブル選択部、７０３…無限符号化テーブル生成部、７０４…有限基本テーブル記憶部、７０５…符号出力部、
８００…可変長復号装置、８０１…復号データ算出部、８０２…テーブル選択部、８０３…無限符号化テーブル生成部、８０４…有限基本テーブル記憶部、８０５…インデックス出力部
９００…可変長符号生成装置、９０１…インデックス算出部、９０２…テーブル選択部、９０３…無限符号化テーブル生成部、９０４…有限符号化テーブル生成部、９０５…符号出力部、
１０００…可変長復号装置、１００１…復号データ算出部、１００２…テーブル選択部、１００３…無限符号化テーブル生成部、１００４…有限符号化テーブル生成部、１００５…インデックス出力部、
１１００…可変長符号生成装置、１１０１…可変長符号生成部、１１０２…符号化特性情報保持部、１１０３…符号化特性情報出力部、９０４…有限符号化テーブル生成部、９０５…符号出力部、
１２００…可変長復号装置、１２０１…可変長復号部、１２０２…符号化特性情報保持部、１２０３…符号化特性情報入力部
【図１】
2004104159.tif 000003
【図２】
2004104159.tif 000004
【図３】
2004104159.tif 000005
【図４】
2004104159.tif 000006
【図５】
2004104159.tif 000007
【図６】
2004104159.tif 000008
【図７】
2004104159.tif 000009
【図８】
2004104159.tif 000010
【図９】
2004104159.tif 000011
【図１０】
2004104159.tif 000012
【図１１】
2004104159.tif 000013
【図１２】
2004104159.tif 000014
【図１３】
2004104159.tif 000015
【図１４】
2004104159.tif 000016
【図１５】
2004104159.tif 000017
【図１６】
2004104159.tif 000018
【図１７】
2004104159.tif 000019
【図１８】
2004104159.tif 000020
【図１９】
2004104159.tif 000021
【図２０】
2004104159.tif 000022
【図２１】
2004104159.tif 000023
【図２２】
2004104159.tif 000024
【図２３】
2004104159.tif 000025
【図２４】
2004104159.tif 000026
【図２５】
2004104159.tif 000027
【図２６】
2004104159.tif 000028
【図２７】
2004104159.tif 000029
【図２８】
2004104159.tif 000030
【図２９】
2004104159.tif 000031
【図３０】
2004104159.tif 000032
【図３１】
2004104159.tif 000033
【図３２】
2004104159.tif 000034
【図３３】
2004104159.tif 000035
【図３４】
2004104159.tif 000036
【図３５】
2004104159.tif 000037
【図３６】
2004104159.tif 000038
【図３７】
2004104159.tif 000039
【図３８】
2004104159.tif 000040
【図３９】
2004104159.tif 000041
【図４０】
2004104159.tif 000042
【図４１】
2004104159.tif 000043
【図４２】
2004104159.tif 000044
【図４３】
2004104159.tif 000045
【図４４】
2004104159.tif 000046
【図４５】
2004104159.tif 000047
【図４６】
2004104159.tif 000048
【図４７】
2004104159.tif 000049
【図４８】
2004104159.tif 000050