(57)【要約】【課題】  エントロピー符号化された符号列の復号処理後の逆量子化処理及び逆正規化処理における計算負荷を軽減し、復号処理に要する時間を短縮する。【解決手段】  復号部１２において、シフトレジスタ２０からは、供給された符号列のうち、カウンタ２１が示す位置から最大語長分の可変長符号が切り出され、この出力値を用いて、可変長符号に対応したインデックスがインデックスＲＯＭ２２からスペクトル係数ＲＯＭ２４に供給される。スペクトル係数ＲＯＭ２４には、インデックスに相当する量子化スペクトル係数x_quantとスペクトル係数specとの対応関係を示した変換テーブルがスケールファクタsfの値毎に記憶されている。そして、サブ情報復号部１１から供給されたスケールファクタsfの値に基づいて選択された変換テーブルからインデックス位置の値が読み出され、スペクトル係数specとして出力される。【選択図】  図２
2005181354.tif 000002
【特許請求の範囲】
【請求項１】
複数の係数に対して正規化処理及び量子化処理を施した各シンボルに対して複数の可変長符号の何れかを割り当てることで符号化して得られた符号列を復号する復号装置において、
上記複数の可変長符号と、各可変長符号に対応するシンボルに対して予め逆量子化処理及び逆正規化処理を施した値とが対応付けられた変換テーブルが記憶された記憶手段と、
上記符号列から、上記変換テーブル内の上記複数の可変長符号の何れかと一致する符号列部分を探索し、探索した符号列部分と一致した可変長符号に対応付けられた値を読み出すことで、上記探索した符号列部分に対応する係数を復元する復号手段と
を備えることを特徴とする復号装置。
【請求項２】
上記変換テーブルは、上記逆正規化処理、又は上記逆量子化処理及び上記逆正規化処理に用いられるパラメータ毎に作成されていることを特徴とする請求項１記載の復号装置。
【請求項３】
上記逆正規化処理に用いられる正規化係数は、該正規化係数をｇａｉｎとし、該逆正規化処理に用いられるスケールファクタをｓｆとしたとき、以下の数１に従って求められるものであり、
【数１】
2005181354.tif 000017
上記変換テーブルは、少なくとも上記正規化係数の周期性に応じた上記ｎの値毎に作成されている
ことを特徴とする請求項１記載の復号装置。
【請求項４】
上記変換テーブルは、上記複数の可変長符号と、上記スケールファクタを上記ｎの値で除算した余りの値を上記スケールファクタと見なして各可変長符号に対応するシンボルに対して予め逆量子化処理及び逆正規化処理を施した値とが対応付けられたものであり、
上記復号手段は、上記探索した符号列部分と一致した可変長符号に対応付けられた値を読み出し、上記スケールファクタをｓｆとし、上記スケールファクタを上記ｎの値で除算した余りをｓｆ％ｎとしたとき、上記読み出した値に２＾((ｓｆ−ｓｆ％ｎ)／ｎ)を乗算することで、上記探索した符号列部分に対応する係数を復元する
ことを特徴とする請求項３記載の復号装置。
【請求項５】
複数の係数に対して正規化処理及び量子化処理を施した各シンボルに対して複数の可変長符号の何れかを割り当てることで符号化して得られた符号列を復号する復号方法において、
上記複数の可変長符号と、各可変長符号に対応するシンボルに対して予め逆量子化処理及び逆正規化処理を施した値とが対応付けられた変換テーブルを用いて、上記符号列から、該変換テーブル内の上記複数の可変長符号の何れかと一致する符号列部分を探索し、探索した符号列部分と一致した可変長符号に対応付けられた値を読み出すことで、上記探索した符号列部分に対応する係数を復元する復号工程を有する
ことを特徴とする復号方法。
【請求項６】
上記変換テーブルは、上記逆正規化処理、又は上記逆量子化処理及び上記逆正規化処理に用いられるパラメータ毎に作成されていることを特徴とする請求項５記載の復号方法。
【請求項７】
上記逆正規化処理に用いられる正規化係数は、該正規化係数をｇａｉｎとし、該逆正規化処理に用いられるスケールファクタをｓｆとしたとき、以下の数２に従って求められるものであり、
【数２】
2005181354.tif 000018
上記変換テーブルは、少なくとも上記正規化係数の周期性に応じた上記ｎの値毎に作成されている
ことを特徴とする請求項５記載の復号方法。
【請求項８】
上記変換テーブルは、上記複数の可変長符号と、上記スケールファクタを上記ｎの値で除算した余りの値を上記スケールファクタと見なして各可変長符号に対応するシンボルに対して予め逆量子化処理及び逆正規化処理を施した値とが対応付けられたものであり、
上記復号手段は、上記探索した符号列部分と一致した可変長符号に対応付けられた値を読み出し、上記スケールファクタをｓｆとし、上記スケールファクタを上記ｎの値で除算した余りをｓｆ％ｎとしたとき、上記読み出した値に２＾((ｓｆ−ｓｆ％ｎ)／ｎ)を乗算することで、上記探索した符号列部分に対応する係数を復元する
ことを特徴とする請求項７記載の復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の係数に対して正規化処理及び量子化処理を施した各シンボルに対して複数の可変長符号の何れかを割り当てることで符号化して得られた符号列を復号する復号装置及び方法に関する。
【背景技術】
【０００２】
知覚情報モデルに基づく映像や音声等のデータ圧縮では、先ず情報のモデル化によるデータ圧縮を行い、その後にエントロピー符号化を行う、という２段階の処理により高能率な圧縮を実現することが多い。このうち、１段階目の処理においては、例えば知覚不可能なロスを許容することで、より高い圧縮率を実現することができる。また、２段階目の処理においては、出現頻度の高いシンボルに対して短い符号を割り当てて符号化結果の平均符号長を短くすることで、より高い圧縮率を実現することができる。このような２段階のデータ圧縮を行う技術としては、ＩＳＯによって標準化された映像・音声の圧縮規格であるＭＰＥＧ（Moving Picture Experts Group）等の標準技術が存在し、広く使用されている。
【０００３】
ここで、人間の知覚は非線形特性を示すという特徴があるため、１段階目の処理として、対数を用いた正規化や非線形量子化が行われることが多い。このとき、正規化に用いられる対数値としては、２進数を用いた計算機で効率よく実装することを目的として、２の巾乗となるような係数が用いられることが多い。
【０００４】
２段階の処理でデータ圧縮された符号化結果を復号する場合、圧縮時の逆方向に処理を行うことになる。すなわち、先ずエントロピー符号を復号し、その後にモデル化に依存するデータの復号を行うことになる。つまり、エントロピー符号を復号した後、その復号結果に対して何らかの処理を行って最終的な出力結果を得ることとなる。
【０００５】
ところで、エントロピー符号化された符号列を効率よく復号し、シンボル値を求める手法としては、現在までに種々提案されている（例えば特許文献１参照）。
【０００６】
【特許文献１】特許第３２２９６９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ここで、上述のように２段階のデータ圧縮を行っている場合、シンボル値そのものは最終的な復号結果ではないため、その後に上記１段階目の処理に対応した処理が必要になる。しかしながら、この処理コストが高かった場合、エントロピー符号化された符号列の復号処理が十分に高能率化されても、全体として十分なパフォーマンスが得られないという問題がある。
【０００８】
上記１段階目の処理に対応した処理の例として、上述したＭＰＥＧの音声圧縮として、ＭＰＥＧ１ Layer３（以下、ＭＰ３と記す。）の規格における復号処理の抜粋を以下に示す。なお、規格の詳細な内容については、ＩＳＯ／ＭＰＥＧ標準文章「約 1.5Mbit/s のデジタル記憶媒体用映画及び音声の符号化 -- CD11172-3（オーディオ第３部）」（ISO/IECJTCI/SC29,1992）に記載されている。
【０００９】
ＭＰ３では、符号列のうち特にサブ情報といわれる、フレーム毎に特有の情報を記録する領域に含まれるグローバルゲイン等の情報からスケールファクタsfを計算し、このスケールファクタsfから以下の式（１）に従ってゲインgainを算出する。
【００１０】
【数１】
2005181354.tif 000003
【００１１】
また、同様に符号列に含まれるエントロピー符号化された周波数領域のデータから量子化スペクトル係数x_quantを求め、この量子化スペクトル係数x_quantから以下の式（２）に示すような逆非線形量子化により正規化スペクトル係数x_invquantを求める。
【００１２】
【数２】
2005181354.tif 000004
【００１３】
そして、両者を用いて以下の式（３）に従ってスペクトル係数specを計算し、このスペクトル係数specに対してさらにフィルタバンク処理等を行うことで、最終的な復号結果（音声波形等）を得ている。
【００１４】
【数３】
2005181354.tif 000005
【００１５】
このとき、ゲインgain及びゲインgainの元になるスケールファクタsfの値は、複数の正規化スペクトル係数x_invquantで共有される。なお、同一のスケールファクタsfの値を共有する周波数帯域は、スケールファクタバンドと称される。
【００１６】
このように、ＭＰ３では、エントロピー符号化されたシンボルである量子化スペクトル係数x_quantを復号する他に、スケールファクタバンド毎に式（１）に示したゲインgainの算出を行い、その後式（２）に示した非線形量子化の復号と式（３）に示した乗算とを行う必要があるのが分かる。
【００１７】
したがって、式（１）〜（３）に示した処理の処理コストが高かった場合、エントロピー符号化された符号列の復号処理が十分に高能率化されても、全体として十分なパフォーマンスが得られないことになる。
【００１８】
本発明は、このような従来の実情に鑑みて提案されたものであり、エントロピー符号化された符号列の復号処理後の逆量子化処理及び逆正規化処理における計算負荷を軽減し、復号処理に要する時間を短縮することが可能な復号装置及びその方法を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上述した目的を達成するために、本発明に係る復号装置は、複数の係数に対して正規化処理及び量子化処理を施した各シンボルに対して複数の可変長符号の何れかを割り当てることで符号化して得られた符号列を復号する復号装置において、上記複数の可変長符号と、各可変長符号に対応するシンボルに対して予め逆量子化処理及び逆正規化処理を施した値とが対応付けられた変換テーブルが記憶された記憶手段と、上記符号列から、上記変換テーブル内の上記複数の可変長符号の何れかと一致する符号列部分を探索し、探索した符号列部分と一致した可変長符号に対応付けられた値を読み出すことで、上記探索した符号列部分に対応する係数を復元する復号手段とを備えるものである。
【００２０】
また、上述した目的を達成するために、本発明に係る復号方法は、複数の係数に対して正規化処理及び量子化処理を施した各シンボルに対して複数の可変長符号の何れかを割り当てることで符号化して得られた符号列を復号する復号方法において、上記複数の可変長符号と、各可変長符号に対応するシンボルに対して予め逆量子化処理及び逆正規化処理を施した値とが対応付けられた変換テーブルを用いて、上記符号列から、該変換テーブル内の上記複数の可変長符号の何れかと一致する符号列部分を探索し、探索した符号列部分と一致した可変長符号に対応付けられた値を読み出すことで、上記探索した符号列部分に対応する係数を復元する復号工程を有するものである。
【００２１】
このような復号装置及びその方法では、符号列を復号したシンボルに対して逆量子化処理及び逆正規化処理を施す代わりに、各可変長符号に対応するシンボルに対して予め逆量子化処理及び逆正規化処理を施した値とが対応付けられた変換テーブルを用いて、符号列から切り出された符号列部分と一致した可変長符号に対応付けられた値を読み出す。
【発明の効果】
【００２２】
本発明に係る復号装置及びその方法によれば、符号列を復号したシンボルに対して逆量子化処理及び逆正規化処理を施す代わりに、各可変長符号に対応するシンボルに対して予め逆量子化処理及び逆正規化処理を施した値とが対応付けられた変換テーブルを用いて、符号列から切り出された符号列部分と一致した可変長符号に対応付けられた値を読み出すため、符号列の復号処理後の逆量子化処理及び逆正規化処理における計算負荷を軽減し、復号処理に要する時間を短縮することが可能となる。また、計算負荷の軽減に伴い、計算に必要な回路規模を小さくすることができるため、部品のコストダウンを図ることができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、高能率音声符号化技術の１つであるＭＰ３における復号器（オーディオデコーダ）に適用したものである。なお、本発明は音声データの圧縮のみならず映像データの圧縮にも適用できることは勿論である。
【００２４】
このオーディオデコーダは、周波数情報を正規化・非線形量子化した値（量子化スペクトル係数x_quant）に対して可変長符号を割り当てた符号列を復号するものであり、復号した量子化スペクトル係数x_quantに対して前述した式（１）〜（３）に相当する処理を行ってスペクトル係数specを復号する。
【００２５】
なお、ＭＰ３の規格上、スケールファクタsfとして約３６０種類、量子化スペクトル係数x_quantとして約８２００種類の値を使用することが可能であるが、以下では簡単のため、スケールファクタsfとして８種類の値（０，１，・・・，７）、量子化スペクトル係数x_quantとして４種類の値（０，１，２，３）のみが選択可能であるものとする。また、各量子化スペクトル係数x_quantには、以下の表１に示すように、１〜３ビットの可変長符号が割り当てられているものとする。
【００２６】
【表１】
2005181354.tif 000006
【００２７】
本実施の形態におけるオーディオデコーダの概略構成を図１に示す。図１に示すオーディオデコーダ１において、信号分離部１０は、入力した圧縮データ（ＭＰ３ビットストリーム）をフレーム単位で分割し、フレームの情報を量子化スペクトル係数x_quantが含まれる符号列とそれ以外のサブ情報とに分離する。信号分離部１０は、分離したサブ情報をサブ情報復号部１１に供給すると共に、量子化スペクトル係数x_quantが含まれる符号列を復号部１２に供給する。
【００２８】
サブ情報復号部１１は、サブ情報のうちスケールファクタsfの値を復号し、このスケールファクタsfを復号部１２に供給する。なお、実際のサブ情報にはスケールファクタsf以外の値も含まれるが、簡単のためここでは省略する。
【００２９】
復号部１２は、量子化スペクトル係数x_quantが含まれる符号列から量子化スペクトル係数x_quantを復号し、この量子化スペクトル係数x_quantに対して逆非線形量子化処理及び逆正規化処理を施すことによりスペクトル係数specを復元する。
【００３０】
直交変換部１３は、復元されたスペクトル係数specで構成される周波数軸上の信号を直交変換により時間軸上の信号に変換し、時間信号処理部１４は、この時間軸上の信号に対してサブ情報に基づいた変換を行い、復号済みデータ（ＰＣＭデータ）を出力する。
【００３１】
このオーディオデコーダ１のうち、復号部１２の内部構成を図２に示す。なお、この図２には、信号分離部１０及びサブ情報復号部１１についても併せて示している。図２に示すように、復号部１２は、符号列を入力する毎にシフト動作を行うシフトレジスタ２０と、外部から与えられる信号のうち次に復号を行うべき場所を記憶し、そこから外部から与えられる最大語長分のビット数を切り出すことができるようにシフトレジスタ２０を制御するためのカウンタ２１と、シフトレジスタ２０の値から後述するインデックスを出力するインデックスＲＯＭ２２と、インデックスから符号長を出力する符号長ＲＯＭ２３と、インデックス及びスケールファクタsfからスペクトル係数specを求め、このスペクトル係数specを直交変換部１３（図１）に供給するスペクトル係数ＲＯＭ２４とから構成される。
【００３２】
以下、この復号部１２においてスペクトル係数specが出力されるまでの各ブロックの動作について説明する。
【００３３】
先ず、シフトレジスタ２０は、信号分離部１０から供給された符号列のうち、カウンタ２１が示す位置から、可変長符号として最大の長さを持つもののビット数（最大語長）分、具体的には３ビット分を切り出す。簡単のため、本実施の形態では最大語長は常に３であるものとするが、この値が可変である場合には、最大語長の情報を例えばサブ情報復号部１１から与えるようにすることも可能である。
【００３４】
次に、このシフトレジスタ２０の出力値を用いてインデックスＲＯＭ２２がアクセスされる。このインデックスＲＯＭ２２の内容を以下の表２に示す。
【００３５】
【表２】
2005181354.tif 000007
【００３６】
表２に示すように、４種類の各可変長符号に対して、可変長符号をそのまま含み、且つ可変長符号の先頭ビットを最上位ビットとした３ビット（最大符号長）の符号列がとり得る全ての値に対して、同じインデックス値が割り当てられている。これにより、シフトレジスタ２０から可変長符号に対応したインデックスを取得することができる。なお、ここでは便宜上インデックスの値として量子化スペクトル係数x_quantと同じ値を使用したが、スペクトル係数ＲＯＭ２４との整合性が取れる範囲で、この値を自由に選ぶことができる。
【００３７】
続いて、インデックスＲＯＭ２２の出力を用いて符号長ＲＯＭ２３がアクセスされる。この符号長ＲＯＭ２３の内容を以下の表３に示す。
【００３８】
【表３】
2005181354.tif 000008
【００３９】
表３に示すように、４種類の各可変長符号に対応するインデックス値に対して、実際の符号長が対応付けられている。この符号長を用いてカウンタ２１の値を増加させることにより、次回の符号列の読み出し開始位置を次の可変長符号の開始位置に正しく合わせることが可能となる。
【００４０】
スペクトル係数ＲＯＭ２４は、スケールファクタsfの値毎に作成された８つの変換テーブルから構成される。スケールファクタsfの値が０，１，２，３である場合における変換テーブルを以下の表４乃至表７に示す。
【００４１】
【表４】
2005181354.tif 000009
【００４２】
【表５】
2005181354.tif 000010
【００４３】
【表６】
2005181354.tif 000011
【００４４】
【表７】
2005181354.tif 000012
【００４５】
表４乃至表７から分かるように、各変換テーブルには、それぞれスケールファクタsfがある値であった場合における、インデックスの値に相当する量子化スペクトル係数x_quantとスペクトル係数specとの対応関係が示されている。８つの変換テーブルのうち実際に使用されるものは、サブ情報復号部１１から供給されたスケールファクタsfの値を用いて選択される。そして、選択されたテーブルからインデックスの位置に記録された値が読み出され、その値がスペクトル係数specとして出力される。
【００４６】
なお、スペクトル係数ＲＯＭ２４の選択及びアクセスをソフトウェアで実装する場合には、１次元目をスケールファクタsf、２次元目をインデックスＲＯＭ２２の出力値とした２次元配列をアクセスすることによって行ってもよい。
【００４７】
復号部１２は、以上の動作を信号分離部１０からの入力が終了するまで繰り返すことにより、周波数情報を正規化・非線形量子化した値（量子化スペクトル係数x_quant）に対して可変長符号を割り当てた符号列を復号し、スペクトル係数specを求めることができる。
【００４８】
なお、実際の高能率音声符号化技術では、上述したようにスケールファクタsfの値としてより多くの種類の値が選択可能であるため、スペクトル係数ＲＯＭ２４のサイズが非常に大きなものとなってしまう。
【００４９】
そこで、実際には以下に説明するように正規化係数の周期性を利用することで、スペクトル係数ＲＯＭ２４のサイズをある程度の大きさに抑えることが可能である。
【００５０】
上述したように、通常、正規化係数としては２の巾乗となるような値が用いられるため、ゲインgainの値を２進数領域で見ると周期性をもって変化することになる。
【００５１】
すなわち、ゲインgainとスケールファクタsfとの関係は前述した式（３）のようになるが、このときスケールファクタsfを４で割った余りをｓｆ％４と表記すると、以下の式（４）のように変形することができる。
【００５２】
【数４】
2005181354.tif 000013
【００５３】
ここで、式（４）における(ｓｆ−ｓｆ％４)は常に４の倍数であるから、２＾((ｓｆ−ｓｆ％４)／４)は、常に２の整数乗の値となる。つまり、この値を掛け合わせることは２の整数乗の値を掛け合わせることに等しく、２進数を用いた計算機であれば、シフトや浮動小数点表現における指数部の操作だけで容易に実現できる計算である。
【００５４】
したがって、図２において、サブ情報の復号結果であるスケールファクタsfの値そのものをスペクトル係数ＲＯＭ２４の選択に使用するのではなく、ｓｆ％４を用いて選択するようにし、スペクトル係数ＲＯＭ２４から読み出した値をそのまま出力とせず、その出力に対して２＾((ｓｆ−ｓｆ％４)／４)倍する処理をシフト演算などを用いて行えば、計算量を大幅に増やすことなく、スペクトル係数ＲＯＭ２４のサイズを小さく保つことが可能となる。
【００５５】
以上説明したように、本実施の形態におけるオーディオデコーダ１によれば、スペクトル係数specを求める際に、最も負荷が大きい乗算、指数計算を実質的になくせるため、実行時の計算負荷を大幅に軽減することができ、復号処理に要する時間を短縮することができる。具体的には、本件発明者らによるソフトウェアでの実装において、量子化スペクトル係数x_quantからスペクトル係数specを求める部分の処理時間は、従来の方法と比較して約１／３の時間に短縮することができた。
【００５６】
また、計算負荷の軽減に伴い、計算に必要な回路規模を小さくすることができるため、例えば限られたメモリサイズでの実行が要求される組み込み機器において、より小さいメモリサイズで復号処理を行うことが可能となり、部品のコストダウンを図ることができる。
【００５７】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【００５８】
例えば、上述した実施の形態では、ＭＰ３のように、逆正規化処理の際にのみパラメータを用いるオーディオデコーダに適用した例について説明したが、ＭＰ３に限定されるものではなく、逆量子化処理及び逆正規化処理の際にパラメータを用いる他のオーディオデコーダに適用することも可能である。
【００５９】
一例として、以下のような復号処理を行うオーディオデコーダを想定する。すなわち、先ずスケールファクタsfから以下の式（５）に従ってゲインgainを算出する。
【００６０】
【数５】
2005181354.tif 000014
【００６１】
また、エントロピー符号化された周波数領域のデータから量子化スペクトル係数x_quantを求め、この量子化スペクトル係数x_quantから以下の式（６）に示すような逆非線形量子化により正規化スペクトル係数x_invquantを求める。ここで、式（６）におけるmax_quantは、量子化スペクトル係数x_quant毎の量子化ステップから求まる値である。
【００６２】
【数６】
2005181354.tif 000015
【００６３】
そして、両者を用いて以下の式（７）に従ってスペクトル係数specを計算し、このスペクトル係数specに対してさらにフィルタバンク処理等を行うことで、最終的な復号結果（音声波形等）を得る。
【００６４】
【数７】
2005181354.tif 000016
【００６５】
したがって、このようにスケールファクタsf及びmax_quantという２つのパラメータが存在するオーディオデコーダにおいては、インデックスの値に相当する量子化スペクトル係数x_quantとスペクトル係数specとの対応関係が示された変換テーブルをこれら２つのパラメータ毎にスペクトル係数ＲＯＭ２４に用意すればよい。
【００６６】
さらに、上述した実施の形態と同様に、正規化係数の周期性を利用し、図２においてサブ情報の復号結果であるスケールファクタsfの値そのものをスペクトル係数ＲＯＭ２４の選択に使用するのではなく、ｓｆ％３を用いて選択するようにし、スペクトル係数ＲＯＭ２４から読み出した値をそのまま出力とせず、その出力に対して２＾((ｓｆ−ｓｆ％３)／３)倍する処理をシフト演算などを用いて行えば、計算量を大幅に増やすことなく、スペクトル係数ＲＯＭ２４のサイズを小さく保つことが可能となる。
【図面の簡単な説明】
【００６７】
【図１】本実施の形態におけるオーディオデコーダの概略構成を示す図である。
【図２】同オーディオデコーダの復号部における内部構成を示す図である。
【符号の説明】
【００６８】
１  オーディオデコーダ、１０  信号分離部、１１  サブ情報復号部、１２  復号部、１３  直交変換部、１４  時間信号処理部、２０  シフトレジスタ、２１  カウンタ、２２  インデックスＲＯＭ、２３  符号長ＲＯＭ、２４  スペクトル係数ＲＯＭ
【図１】
2005181354.tif 000019
【図２】
2005181354.tif 000020