(57)【要約】  符号化装置（１００）は、入力信号をＣＥＬＰ符号化したＣＥＬＰ符号化データを復号してＣＥＬＰ復号信号を生成するＣＥＬＰ符号化部（１０２）と、前記ＣＥＬＰ復号信号のスペクトルの振幅を第１抑圧係数を用いて抑圧した抑圧スペクトルと前記入力信号のスペクトルとを用いて変換符号化した変換符号化データを復号して復号信号スペクトルを生成し、変換符号化した周波数成分のインデックスを出力する変換符号化部（１０６）と、前記インデックスを用いて配列を形成し記憶するパルスインデックス記憶部（１０７）と、前記復号信号スペクトルと前記抑圧スペクトルとを加算したスペクトルの振幅を、第２抑圧係数と前記配列とを用いて抑圧するＣＥＬＰ成分抑圧部（１０９）とを具備する。
2013051210.tif 000002
【特許請求の範囲】
【請求項１】
入力信号に対する第１の符号化により得られた第１符号を復号して生成された第１復号信号のスペクトルを出力する第１符号化手段と、
前記第１復号信号のスペクトルの振幅を、第１の抑圧係数を用いて抑圧し、第１抑圧スペクトルを生成する第１抑圧手段と、
前記入力信号のスペクトルと前記第１抑圧スペクトルとを用いて残差スペクトルを算出する残差スペクトル算出手段と、
前記残差スペクトルを用いて第２の符号化を行うことにより得られた第２符号を復号して生成された第２復号信号のスペクトルを出力する第２符号化手段と、
前記第２符号化手段において符号化された第２符号のうち周波数インデックスを記憶したパルス位置記憶配列を出力するパルス位置記憶手段と、
前記第２復号信号のスペクトルと前記第１抑圧スペクトルとを加算して得られる加算スペクトルの振幅を、第２の抑圧係数と前記パルス位置記憶配列とを用いて抑圧し、第２抑圧スペクトルを生成する第２抑圧手段と、
を具備する符号化装置。
【請求項２】
前記第２符号化手段は、
前記残差スペクトルに対して立てられたパルスに対してパルス位置の周波数インデックスとパルスの振幅とを前記第２の符号化で符号化し、
前記パルス位置記憶手段は、
前記パルス位置記憶配列の全要素を配列初期値で初期化する初期化手段と、
前記第２の符号化で符号化されたパルス位置の周波数インデックスに従って前記パルス位置記憶配列の要素に値を格納する記憶手段と、
を具備する請求項１記載の符号化装置。
【請求項３】
前記初期化手段は、
前記パルス位置記憶配列の全要素を１で初期化する、
請求項２記載の符号化装置。
【請求項４】
前記記憶手段は、
前記第２の符号化で符号化された周波数インデックスに対応する前記パルス位置記憶配列の要素に０を格納する、
請求項２記載の符号化装置。
【請求項５】
前記第２抑圧部は、
前記パルス位置記憶配列と前記加算スペクトルとを掛け合わせて第２抑圧スペクトルを生成する、
請求項２記載の符号化装置。
【請求項６】
入力信号に対する第１の符号化により得られた第１符号を復号して生成された第１復号信号のスペクトルを出力する第１符号化ステップと、
前記第１復号信号のスペクトルの振幅を、第１の抑圧係数を用いて抑圧し、第１抑圧スペクトルを生成する第１抑圧ステップと、
前記入力信号のスペクトルと前記第１抑圧スペクトルとを用いて残差スペクトルを算出する残差スペクトル算出ステップと、
前記抑圧係数を前記第１抑圧部で用いて生成された第１抑圧スペクトルを前記残差スペクトル算出部に入力して算出された残差スペクトルを用いて第２の符号化を行うことにより得られた第２符号を復号して生成された第２復号信号のスペクトルを出力する第２符号化ステップと、
前記第２符号化部において符号化された周波数インデックスを記憶したパルス位置記憶配列を出力するパルス位置記憶ステップと、
前記第２復号信号のスペクトルと前記第１抑圧スペクトルを加算して得られる加算スペクトルの振幅を、第２の抑圧係数と前記パルス位置記憶配列とを用いて抑圧し、第２抑圧スペクトルを生成する第２抑圧スペクトルを生成する第２抑圧ステップと、
を具備する符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化装置及び符号化方法に関する。
【背景技術】
【０００２】
音声及び音楽等を、低ビットレートかつ高音質で圧縮できる符号化方式として、音声信号に適したＣＥＬＰ（Code Excited Linear Prediction）符号化方式と、音楽信号に適した変換符号化方式とを階層（レイヤ）構造にして組み合わせた符号化方式が提案されている（例えば、非特許文献１参照）。なお、以下においては、音声信号と音楽信号とを総称して音響信号と称することもある。【０００３】
この符号化方式では、符号化装置は、まず、ＣＥＬＰ符号化方式で入力信号を符号化してＣＥＬＰ符号化データを生成する。次いで、符号化装置は、入力信号とＣＥＬＰ復号信号（ＣＥＬＰ符号化データの復号結果）との残差信号（以下、ＣＥＬＰ残差信号と呼ぶ）を周波数領域に変換して得られる残差スペクトルを変換符号化することにより、高音質化を図っている。変換符号化方式としては、残差スペクトルのエネルギが大きい周波数にパルスを立てて、そのパルスの情報を符号化する方式が提案されている（非特許文献１参照）。【０００４】
しかしながら、ＣＥＬＰ符号化方式は、音声信号の符号化には適しているが、音楽信号に対しては符号化モデルが異なるので音質が悪くなる。そのため、上記符号化方式で音楽信号を符号化した場合、ＣＥＬＰ残差信号の成分が大きくなるので、変換符号化によりＣＥＬＰ残差信号（残差スペクトル）を符号化しても音質が向上しにくいという課題がある。【０００５】
この課題を解決するために、ＣＥＬＰ復号信号の周波数成分（以下、ＣＥＬＰ成分と呼ぶ）の振幅を抑圧した結果を用いて算出される残差スペクトルを変換符号化することで高音質化を図る符号化方式（ＣＥＬＰ成分抑圧方法）が提案されている（例えば、特許文献１及び非特許文献１（section 6.11.6.2）参照）。【０００６】
非特許文献１に開示されたＣＥＬＰ成分抑圧方法では、入力信号のサンプリング周波数が16kHzの場合、0.8kHz〜5.5kHzの中帯域のみでＣＥＬＰ成分の振幅の抑圧（以下、ＣＥＬＰ抑圧と呼ぶ）が行われる。ただし、非特許文献１では、符号化装置は、ＣＥＬＰ残差信号に対して変換符号化を直接行うのではなく、その前に下位レイヤにおいて別の変換符号化方式（例えば、非特許文献１（Section 6.11.6.1）参照）によってＣＥＬＰ残差信号を小さくしている。このため、符号化装置は、中帯域であっても上記別の変換符号化方式によって符号化された周波数成分に対してはＣＥＬＰ抑圧を行わない。この際、下位レイヤの変換符号化データを上位レイヤに受け渡し、各周波数成分について０以外の値を持っているかを判定している。０以外の値を持っている場合には下位レイヤにてその周波数成分に対し変換符号化が行われたと判断し、ＣＥＬＰ抑圧を行わない。値が０だった場合には下位レイヤにてその周波数成分に対し変換符号化が行われていないと判断し、ＣＥＬＰ抑圧処理を行っている。また、中帯域内のＣＥＬＰ抑圧を行わない周波数以外の他の周波数では、ＣＥＬＰ抑圧の程度（強さ）を示すＣＥＬＰ抑圧係数は一様である。【０００７】
符号化装置は、変換符号化を行う前に、ＣＥＬＰ成分（ＣＥＬＰ復号信号）と、ＣＥＬＰ抑圧係数コードブックに格納されているＣＥＬＰ抑圧係数とを乗じることでＣＥＬＰ抑圧を行ってから、入力信号とＣＥＬＰ復号信号（ＣＥＬＰ抑圧後のＣＥＬＰ復号信号）との残差スペクトルを求め、残差スペクトルを変換符号化する。【０００８】
一方、復号装置は、符号化装置から送信されるＣＥＬＰ抑圧係数を用いて、ＣＥＬＰ復号信号のＣＥＬＰ成分を抑圧し、ＣＥＬＰ成分が抑圧されたＣＥＬＰ復号信号に変換符号化の復号信号を加算する。これにより、復号装置では、ＣＥＬＰ符号化と変換符号化とを階層構造にして組み合わせた符号化を行う際のＣＥＬＰ符号化による音質の劣化を抑えた復号信号を得ることができる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許出願公開第２００９／０１１２６０７号明細書
【非特許文献】
【００１０】
【非特許文献１】Recommendation ITU-T G.718,2008年6月
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、上述したＣＥＬＰ成分抑圧方法を複数のレイヤで多段的に行う場合、下位レイヤにおいて一度でも変換符号化を行った周波数成分については上位レイヤでＣＥＬＰ抑圧を行わないため、変換符号化を行ったレイヤにおける変換符号化データの復号信号を、ＣＥＬＰ抑圧を行う全ての上位レイヤに受け渡す必要がある。この際、ＣＥＬＰ抑圧を行うレイヤが多くなるほど、上位レイヤに受け渡す下位レイヤの変換符号化データ数が増えていくために、消費するメモリ量が非常に大きくなってしまうという課題がある。【００１２】
また、下位レイヤの復号信号を上位レイヤに受け渡すという方式を採っているため、ＣＥＬＰ抑圧を行うレイヤにおいては、受け渡された下位レイヤの復号信号の全ての周波数成分について値の判定をし、ＣＥＬＰ抑圧を行うか否かを決定せざるを得ない。この方式では、ＣＥＬＰ抑圧を複数のレイヤで多段的に行う場合、値の判定をすべき復号信号の数が上位レイヤにいくほど増えてしまうため、演算量が非常に大きくなってしまうという課題がある。【００１３】
本発明の一点目の目的は、ＣＥＬＰ抑圧を複数のレイヤにおいて多段的に行う場合に、下位レイヤにおいて各周波数成分が変換符号化された際の周波数インデックス（以下、符号化パルスインデックスと呼ぶ）を記憶する配列を用意し、この配列を上位レイヤに受け渡すことで、メモリ使用量の削減を可能にする符号化装置及び符号化方法を提供することである。【００１４】
本発明の二点目の目的は、前記配列を下位レイヤから上位レイヤへと受け渡し、下位レイヤからの出力信号に前記配列を単純に掛け合わせることで、前記で述べた値の判定をせずにＣＥＬＰ抑圧を行うことによって演算量の削減を可能にする符号化装置及び符号化方法を提供することである。
【課題を解決するための手段】
【００１５】
本発明の一態様に係る符号化装置は、入力信号に対する第１の符号化により得られた第１符号を復号して生成された第１復号信号のスペクトルを出力する第１符号化手段と、前記第１復号信号のスペクトルの振幅を、第１の抑圧係数を用いて抑圧し、第１抑圧スペクトルを生成する第１抑圧手段と、前記入力信号のスペクトルと前記第１抑圧スペクトルとを用いて残差スペクトルを算出する残差スペクトル算出手段と、前記残差スペクトルを用いて第２の符号化を行うことにより得られた第２符号を復号して生成された第２復号信号のスペクトルを出力する第２符号化手段と、前記第２符号化手段において符号化された第２符号のうち周波数インデックスを記憶したパルス位置記憶配列を出力するパルス位置記憶手段と、前記第２復号信号のスペクトルと前記第１抑圧スペクトルとを加算して得られる加算スペクトルの振幅を、第２の抑圧係数と前記パルス位置記憶配列とを用いて抑圧し、第２抑圧スペクトルを生成する第２抑圧手段と、を具備する。【００１６】
本発明の一態様に係る符号化方法は、入力信号に対する第１の符号化により得られた第１符号を復号して生成された第１復号信号のスペクトルを出力する第１符号化ステップと、前記第１復号信号のスペクトルの振幅を、第１の抑圧係数を用いて抑圧し、第１抑圧スペクトルを生成する第１抑圧ステップと、前記入力信号のスペクトルと前記第１抑圧スペクトルとを用いて残差スペクトルを算出する残差スペクトル算出ステップと、前記抑圧係数を前記第１抑圧部で用いて生成された第１抑圧スペクトルを前記残差スペクトル算出部に入力して算出された残差スペクトルを用いて第２の符号化を行うことにより得られた第２符号を復号して生成された第２復号信号のスペクトルを出力する第２符号化ステップと、前記第２符号化部において符号化された周波数インデックスを記憶したパルス位置記憶配列を出力するパルス位置記憶ステップと、前記第２復号信号のスペクトルと前記第１抑圧スペクトルを加算して得られる加算スペクトルの振幅を、第２の抑圧係数と前記パルス位置記憶配列とを用いて抑圧し、第２抑圧スペクトルを生成する第２抑圧スペクトルを生成する第２抑圧ステップと、を有する。
【発明の効果】
【００１７】
本発明によれば、過去に変換符号化が行われた符号化パルスインデックスを参照する際に使用するメモリ容量と、ＣＥＬＰ成分抑圧処理にかかる演算量とを削減することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態に係る符号化装置の構成を示すブロック図
【図２】本発明の実施の形態に係る符号化パルスインデックスの抽出手順を説明するための図
【図３】本発明の実施の形態に係るパルスインデックス記憶部の構成を示すブロック図
【図４】本発明の実施の形態に係る符号化パルスインデックス記憶処理の手順を説明するためのフロー図
【発明を実施するための形態】
【００１９】
以下、本発明の各実施の形態について、図面を参照して詳細に説明する。なお、本発明に係る符号化装置として、音響符号化装置を例にとって説明する。なお、上述のように、音声信号と音楽信号とを総称して音響信号と称することとする。すなわち、音響信号は、実質的に音声信号のみ、実質的に音楽信号のみ、音声信号及び音楽信号が混在した信号、のいずれの信号をも表すものとする。
【００２０】
また、本発明に係る符号化装置は、少なくとも３つの符号化を行うレイヤを有する。以下の説明においては、符号化装置は、音声信号に適した符号化としてＣＥＬＰ符号化を、音楽信号に適した符号化として変換符号化を、それぞれ代表して用いるものとする。符号化装置は、ＣＥＬＰ符号化と変換符号化とをレイヤ構造にして組み合わせ、更に変換符号化をレイヤ構造にして組み合わせた符号化方式を用いる。
【００２１】
なお、以下の説明においては、第１の符号化としてＣＥＬＰ符号化を行うレイヤを第１レイヤ、第２の符号化として１度目の変換符号化を行うレイヤを第２レイヤ、第３の符号化として２度目の変換符号化を行うレイヤを第３レイヤと呼ぶ。
【００２２】
（実施の形態）
図１は、本発明の実施の形態１に係る符号化装置１００の主要な構成を示すブロック図である。符号化装置１００は、音声及び音楽等の入力信号を、ＣＥＬＰ符号化と変換符号化とをレイヤ構造にして組み合わせた符号化方式を用いて符号化して、符号化データを出力する。図１に示すように、符号化装置１００は、ＭＤＣＴ（Modified Discrete Cosine Transform：修正離散コサイン変換）部１０１、ＣＥＬＰ符号化部１０２、ＭＤＣＴ部１０３、ＣＥＬＰ成分抑圧部１０４、ＣＥＬＰ残差信号スペクトル算出部１０５、変換符号化部１０６、パルスインデックス記憶部１０７及び加算部１０８を具備する。ＣＥＬＰ成分抑圧部１０９〜加算部１１２の各部についてはそれぞれＣＥＬＰ成分抑圧部１０４〜加算部１０８の各部を階層的に組み合わせたものである。つまり、ここでは３層のレイヤ構造を想定しており、変換符号化を行う各レイヤにおいてＣＥＬＰ成分を抑圧する構成になっている。以下、ＣＥＬＰ符号化部１０２、及びＭＤＣＴ部１０３を第１レイヤとし、ＣＥＬＰ成分抑圧部１０４、ＣＥＬＰ残差信号スペクトル算出部１０５、変換符号化部１０６、パルスインデックス記憶部１０７及び加算部１０８を第２レイヤとし、ＣＥＬＰ成分抑圧部１０９、ＣＥＬＰ残差信号スペクトル算出部１１０、変換符号化部１１１、パルスインデックス記憶部１０７及び加算部１１２を第３レイヤとしてみなす（パルスインデックス記憶部１０７は、レイヤ２及びレイヤ３において共通して使用される）。
【００２３】
図１に示す符号化装置１００において、ＭＤＣＴ部１０１は、入力信号に対してＭＤＣＴ処理を行って入力信号スペクトルを生成する。そして、ＭＤＣＴ部１０１は、生成した入力信号スペクトルをＣＥＬＰ残差信号スペクトル算出部１０５、１１０に出力する。
【００２４】
以下、第１レイヤの各部について説明する。
【００２５】
ＣＥＬＰ符号化部１０２は、入力信号をＣＥＬＰ符号化方式により符号化してＣＥＬＰ符号化データ（第１符号）を生成する。また、ＣＥＬＰ符号化部１０２は、生成したＣＥＬＰ符号化データを復号（ローカルデコード）してＣＥＬＰ復号信号（第１復号信号）を生成する。そして、ＣＥＬＰ符号化部１０２は、ＣＥＬＰ符号化データを多重化部１１３に出力し、ＣＥＬＰ復号信号をＭＤＣＴ部１０３に出力する。
【００２６】
ＭＤＣＴ部１０３は、ＣＥＬＰ符号化部１０２から入力されるＣＥＬＰ復号信号に対してＭＤＣＴ処理を行ってＣＥＬＰ復号信号スペクトルを生成する。そして、ＭＤＣＴ部１０３は、生成したＣＥＬＰ復号信号スペクトルをＣＥＬＰ成分抑圧部１０４に出力する。
【００２７】
このように、ＣＥＬＰ符号化部１０２及びＭＤＣＴ部１０３は、入力信号に対する第１の符号化により第１符号を生成し、得られた第１符号を復号して生成された第１復号信号のスペクトルを出力することで、例えば第１符号化部として動作し、第１レイヤを構成する。
【００２８】
以下、第２レイヤの各部について説明する。
【００２９】
ＣＥＬＰ成分抑圧部１０４は、あらかじめＣＥＬＰ成分抑圧部１０４に格納されている抑圧係数候補の中から、符号化歪を最小にする最適抑圧係数を選択し、ＭＤＣＴ部１０３から入力されるＣＥＬＰ復号信号スペクトルの周波数成分毎に乗じて、ＣＥＬＰ成分抑圧スペクトルを算出する。そして、ＣＥＬＰ成分抑圧部１０４は、ＣＥＬＰ成分抑圧スペクトルをＣＥＬＰ残差信号スペクトル算出部１０５及び加算部１０８に出力する。
【００３０】
ＣＥＬＰ残差信号スペクトル算出部１０５は、ＭＤＣＴ部１０１から入力される入力信号スペクトルと、ＣＥＬＰ成分抑圧部１０４から入力されるＣＥＬＰ成分抑圧スペクトルとの差分であるＣＥＬＰ残差信号スペクトルを算出する。具体的には、ＣＥＬＰ残差信号スペクトル算出部１０５は、入力信号スペクトルからＣＥＬＰ成分抑圧スペクトルを減じることで、ＣＥＬＰ残差信号スペクトルを得る。そして、ＣＥＬＰ残差信号スペクトル算出部１０５は、ＣＥＬＰ残差信号スペクトルを、変換符号化のターゲット信号として変換符号化部１０６に出力する。
【００３１】
変換符号化部１０６は、ＣＥＬＰ残差信号スペクトル算出部１０５から入力されるＣＥＬＰ残差信号スペクトルを変換符号化により符号化して、変換符号化データ（第２符号）を生成する。変換符号化データは、少なくとも変換符号化が行われた周波数成分のインデックスデータ（符号化パルスインデックス）を含む。また、変換符号化部１０６は、生成した変換符号化データを復号（ローカルデコード）して、変換符号化復号信号スペクトル（第２復号信号）を生成する。このとき、変換符号化部１０６は、ＣＥＬＰ残差信号スペクトルと変換符号化復号信号スペクトルとの歪が小さくなるように符号化を行う。変換符号化部１０６は、ＣＥＬＰ残差信号スペクトルの振幅（エネルギ）が大きい周波数に、パルスを立てることで上記歪を小さくするように符号化を行う。そして、変換符号化部１０６は、変換符号化復号信号スペクトルを加算部１０８に、符号化パルスインデックスをパルスインデックス記憶部１０７に、変換符号化データを多重化部１１３に、それぞれ出力する。
【００３２】
パルスインデックス記憶部１０７は、変換符号化部１０６から入力される符号化パルスインデックスを、例えば、配列の形で記憶し、第３レイヤのＣＥＬＰ成分抑圧部１０９に出力する。記憶された配列の使い方の詳細は、後述する。
【００３３】
加算部１０８は、ＣＥＬＰ成分抑圧部１０４から入力されるＣＥＬＰ成分抑圧スペクトルと、変換符号化部１０６から入力される変換符号化復号信号スペクトルとを加算して復号信号スペクトルを算出し、第３レイヤのＣＥＬＰ成分抑圧部１０９に出力する。
【００３４】
ＣＥＬＰ成分抑圧部１０４〜加算部１０８の各部は、以上述べたように動作することで、例えば第２符号化部として動作し、第２レイヤを構成する。
【００３５】
以下、第３レイヤについて説明する。
【００３６】
ＣＥＬＰ成分抑圧部１０９は、あらかじめＣＥＬＰ成分抑圧部１０９に格納されている抑圧係数候補の中から符号化歪を最小にする最適抑圧係数を選択する。また、ＣＥＬＰ成分抑圧部１０９は、パルスインデックス記憶部１０７から出力された配列を用いることで、抑圧すべきＣＥＬＰ成分の周波数インデックスを判断する。そして、ＣＥＬＰ成分抑圧部１０９は、第２レイヤの加算部１０８から入力される復号信号スペクトルのうち、前記判断された周波数インデックスに対応する周波数成分のみに前記最適抑圧係数を乗じてＣＥＬＰ抑圧を行い、ＣＥＬＰ成分抑圧スペクトルを算出する。そして、ＣＥＬＰ成分抑圧部１０９は、ＣＥＬＰ成分抑圧スペクトルをＣＥＬＰ残差信号スペクトル算出部１１０及び加算部１１２に出力する。ＣＥＬＰ成分抑圧処理の詳細は後述する。
【００３７】
ＣＥＬＰ残差信号スペクトル算出部１１０は、ＭＤＣＴ部１０１から入力される入力信号スペクトルと、ＣＥＬＰ成分抑圧部１０９から入力されるＣＥＬＰ成分抑圧スペクトルとの差分であるＣＥＬＰ残差信号スペクトルを算出する。具体的には、ＣＥＬＰ残差信号スペクトル算出部１１０は、入力信号スペクトルからＣＥＬＰ成分抑圧スペクトルを減じることで、ＣＥＬＰ残差信号スペクトルを得る。そして、ＣＥＬＰ残差信号スペクトル算出部１１０は、ＣＥＬＰ残差信号スペクトルをターゲット信号として変換符号化部１１１に出力する。
【００３８】
変換符号化部１１１は、ＣＥＬＰ残差信号スペクトル算出部１１０から入力されるＣＥＬＰ残差信号スペクトルを変換符号化により符号化して、変換符号化データを生成する。変換符号化データは、少なくとも変換符号化が行われた周波数成分のインデックスデータ（符号化パルスインデックス）を含む。また、変換符号化部１１１は、生成した変換符号化データを復号（ローカルデコード）して、変換符号化復号信号スペクトルを生成する。このとき、変換符号化部１１１は、ＣＥＬＰ残差信号スペクトルと変換符号化復号信号スペクトルとの歪が小さくなるように符号化を行う。変換符号化部１１１は、ＣＥＬＰ残差信号スペクトルの振幅（エネルギ）が大きい周波数に、パルスを立てることで上記歪を小さくするように符号化を行う。そして、変換符号化部１１１は、変換符号化復号信号スペクトルを加算部１１２に、符号化パルスインデックスをパルスインデックス記憶部１０７に、変換符号化データを多重化部１１３に、それぞれ出力する。
【００３９】
パルスインデックス記憶部１０７は、変換符号化部１１１から入力される符号化パルスインデックスを、例えば、配列の形で記憶する。記憶された配列の使い方の詳細は、後述する。
【００４０】
加算部１１２は、ＣＥＬＰ成分抑圧部１０９から入力されるＣＥＬＰ成分抑圧スペクトルと、変換符号化部１１１から入力される変換符号化復号信号スペクトルとを加算して復号信号スペクトルを算出し、更に上位のレイヤへ出力する。
【００４１】
ＣＥＬＰ成分抑圧部１０９〜加算部１１２の各部は、以上述べたように動作することで、例えば第３符号化部として動作し、第３レイヤを構成する。
【００４２】
多重化部１１３は、ＣＥＬＰ符号化部１０２から入力されるＣＥＬＰ符号化データ、変換符号化部１０６、及び１１１から入力される変換符号化データを多重化して、多重化結果を符号化データとして復号装置へ送信する。
【００４３】
次に、符号化装置１００（図１）におけるパルスインデックス記憶処理の詳細について説明する。
【００４４】
まず、パルスインデックス記憶部１０７におけるパルスインデックス記憶方法の一例について説明する。
【００４５】
ＣＥＬＰ成分を抑圧する処理を行う際、下位レイヤで変換符号化が行われた周波数成分に関しては、既にその誤差が小さくなるように変換符号化が施されているために、ＣＥＬＰ抑圧を行わない。そこでＣＥＬＰ抑圧を行う前に、下位レイヤからの復号信号を参照することで過去に変換符号化が行われた周波数成分かどうかを全ての周波数成分に対して判断する方式が提案されている（例えば、非特許文献１参照）。しかしながら、上位レイヤにおいて多段的にＣＥＬＰ抑圧を行う場合には、下位レイヤから上位レイヤへ受け渡す復号信号の数が増えてしまう。また、下位レイヤからの復号信号に対し、周波数成分ごとに変換符号化が行われたかどうかを判定する必要があるので、演算量が増大してしまう。そこで、過去に変換符号化が行われた周波数成分のインデックス（符号化パルスインデックス）を記憶する仕組みを用意する。
【００４６】
図２は、ＣＥＬＰ残差信号算出部１０５から出力されたＣＥＬＰ残差信号スペクトルが変換符号化部１０６で符号化され、符号化パルスインデックスがパルスインデックス記憶部１０７へ出力される手順を示している。
【００４７】
図２では、例えばＣＥＬＰ残差信号スペクトルが２６本のパルスによって構成されている場合を例に挙げて説明している。この２６本のパルスのうち、変換符号化部１０６では、パルスの振幅（エネルギ）が大きい周波数に対して符号化が行われる。ただし、符号化されるパルス本数は常に一定ではなく、変換符号化部１０６に割り振られるビット数、あるいは、ＣＥＬＰ残差信号スペクトルのパルス振幅のばらつきによって増減する。ここで符号化されたパルスの周波数インデックス（パルスインデックス）が、パルスインデックス記憶部１０７へ出力される。
【００４８】
パルスインデックス記憶部１０７へ入力されるパルスインデックスは、例えば配列の形で記憶される。この配列は、パルスインデックス記憶部１０７すなわちメモリに記憶される。具体的な記憶方法は以下で述べる。
【００４９】
図３は、パルスインデックス記憶部１０７の構成を示すブロック図である。パルスインデックス記憶部１０７は、記憶部２０１と初期化部２０２とから構成される。記憶部２０１は、パルスの周波数インデックス（パルスインデックス）を記憶する配列Ｐを格納する。配列Ｐは、必要に応じて適宜更新される。初期化部２０２は、所定のタイミングで、記憶部２０１に格納された配列Ｐを配列初期値で初期化する。
【００５０】
図４は、パルスインデックス記憶部１０７の記憶処理の手順を示すフロー図である。
初期化部２０２は、処理対象フレーム（又はサブフレーム）における符号化処理が行われる前に、記憶部２０１に格納された配列Ｐを、次式（１）のように、全ての要素が配列初期値となるように初期化する（ＳＴ２０１０）。ここでは、配列初期値として１を用いる。これにより、ＣＥＬＰ抑圧の式が簡易な式となり、演算量が削減される。
【数１】
2013051210.tif 000003
【００５１】
ここでkは周波数成分のインデックスを表し、Lは変換符号化復号信号スペクトルの長さを表す。この初期化処理は、符号化の処理単位（通常、フレーム又はサブフレーム）について、符号化処理が行われる前の１度のみ実行される。
【００５２】
この初期化された配列Ｐに対し、記憶部２０１は、変換符号化部１０６において変換符号化が施された周波数成分のインデックス（符号化パルスインデックス）が昇順で各要素に格納された配列ｉｎｄｘ[ｊ]を用いて、配列Ｐの要素Ｐ[ｉｎｄｘ[ｊ]]の値を、次式（２）のように０で置換（更新）する（ＳＴ２０２０）。これをパルスインデックス記憶処理と呼ぶ。ここでｊは配列ｉｎｄｘのインデックスを表す。また、Ｎは配列ｉｎｄｘの長さであり、すなわち当該レイヤにおいて立てることのできるパルス本数の最大値である。
【数２】
2013051210.tif 000004
【００５３】
そして、記憶部２０１は、式（２）によりパルスインデックス記憶処理が行われた配列Ｐを上位レイヤのＣＥＬＰ成分抑圧部１０９に受け渡す。ＣＥＬＰ成分抑圧部１０９は、配列Ｐを参照することで次式（３）のようにＣＥＬＰ抑圧を行う。
【数３】
2013051210.tif 000005
【００５４】
ここで、Ｓｎはｎ番目のレイヤからの出力信号スペクトルを表し、Ｓｎ’はＳｎに対してＣＥＬＰ抑圧を行った後のＣＥＬＰ成分抑圧スペクトルを表す。ｇはＣＥＬＰ成分の抑圧係数を表し、０から１までの値を取り得る。
【００５５】
このように、ＣＥＬＰ成分抑圧部１０９は、周波数成分ごとに値を判定してＣＥＬＰ抑圧を行う必要なく、下位レイヤから受け渡された配列Ｐを、式（３）のような簡便な演算処理を行うだけでＣＥＬＰ抑圧を行うことが可能になる。
【００５６】
次に配列Ｐは、上位レイヤで変換符号化が行われた際（ここでは、変換符号化部１１１において実行）に、パルスインデックス記憶部１０７の記憶部２０１に受け渡された上位レイヤの符号化パルスインデックスｉｎｄｘ’を用いて次式（４）のように更新される（ＳＴ２０２０）。
【００５７】
配列Ｐの更新処理は、所定回数（基本的には変換符号化を行うレイヤ数）だけ行われる（ＳＴ２０３０）。
【数４】
2013051210.tif 000006
【００５８】
このように配列Ｐは、更に上位レイヤでＣＥＬＰ抑圧処理を伴う変換符号化が行われる場合に備えて更新される。つまり、変換符号化を行う複数のレイヤにおいて多段的にＣＥＬＰ抑圧を行う場合、下位レイヤで更新された配列Ｐのみを用いればよく、変換符号化が行われたすべての下位レイヤの出力信号を上位レイヤに受け渡して参照する必要がない。
【００５９】
以上、本発明の実施の形態について説明した。
【００６０】
また、上記実施の形態では、ＣＥＬＰ成分を抑圧する一例として２段階の抑圧処理を行う階層構造を用いて説明したが、これよりも多段でＣＥＬＰ成分を抑圧する方式についても本発明は実現可能であり、同様の効果が得られる。
【００６１】
また、上記実施の形態では、音声信号に適した符号化の一例としてＣＥＬＰ符号化を用いて説明したが、本発明はＡＤＰＣＭ（Adaptive Differential Pulse Code Modulation)、ＡＰＣ（Adaptive Prediction Coding)、ＡＴＣ（Adaptive Transform Coding）、ＴＣＸ（Transform Coded Excitation）等を用いても実現可能であり、同様の効果が得られる。
【００６２】
また、上記実施の形態では、音楽信号に適した符号化の一例として変換符号化を用いて説明したが、音声信号に適した符号化方式の復号信号と入力信号との残差信号を周波数領域で効率良く符号化できる方式であれば良い。このような方式として、ＦＰＣ（Factorial Pulse Coding）及びＡＶＱ（Algebraic Vector Quantization）などがあり、同様の効果を得ることができる。
【００６３】
また、上記実施の形態では、パルスインデックス記憶方法の一例として配列を導入して説明したが、ポインタなど、メモリ上に記憶された符号化パルスインデックス情報に関する論理的位置情報を保持し、インクリメント演算することによって連続的に参照することができるものにおいても、本発明は実現可能である。
【００６４】
また、上記実施の形態では、本発明をハードウェアで構成する場合を例にとって説明したが、本発明はハードウェアとの連携においてソフトウェアで実現することも可能である。
【００６５】
また、上記実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部または全てを含むように１チップ化されてもよい。ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【００６６】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路または汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Field Programmable Gate Array）又は、ＬＳＩ内部の回路セルの接続又は設定を再構成可能なリコンフィギュラブル／プロセッサを利用してもよい。
【００６７】
さらには、半導体技術の進歩または派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【００６８】
２０１１年１０月７日出願の特願２０１１−２２３０２１の日本出願に含まれる明細書、図面及び要約書の開示内容は、すべて本願に援用される。
【産業上の利用可能性】
【００６９】
本発明は、符号化の品質劣化を抑えつつ装置全体としてのメモリ量と演算量とを削減することができ、例えば、パケット通信システム、移動通信システムなどに適用できる。
【符号の説明】
【００７０】
１００  符号化装置
１０１，１０３  ＭＤＣＴ部
１０２  ＣＥＬＰ符号化部
１０４, １０９  ＣＥＬＰ成分抑圧部
１０５, １１０  ＣＥＬＰ残差信号スペクトル算出部
１０６，１１１  変換符号化部
１０７  パルスインデックス記憶部
１０８, １１２  加算部
１１３  多重化部
２０１  記憶部
２０２  初期化部
【図１】
2013051210.tif 000007
【図２】
2013051210.tif 000008
【図３】
2013051210.tif 000009
【図４】
2013051210.tif 000010
【国際調査報告】
2013051210.tif 000011
2013051210.tif 000012
2013051210.tif 000013
2013051210.tif 000014