説明

符号化装置および符号化方法

【課題】情報をより適切にADPCM圧縮する量子化パラメータテーブルをより高速に選択すること。
【解決手段】複数のADPCM値より多い複数の統計用ADPCM値を用いて情報を統計用符号化情報にADPCM符号化するステップS12と、その統計用符号化情報にその複数の統計用ADPCM値がそれぞれ出現する複数の出現回数を算出するステップS13と、その複数の出現回数に基づいて複数の量子化パラメータテーブルから選択された最適量子化パラメータテーブルを用いてその情報をADPCM符号化するステップS16とを備えている。このような符号化方法は、その複数の量子化パラメータテーブルを用いてその情報をADPCM符号化することにより最適量子化パラメータテーブルを選択する他の技術に比較して、最適量子化パラメータテーブルをより高速に選択することができ、その情報をより高速にADPCM符号化することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号化装置および符号化方法に関し、特に、ADPCM圧縮方式により情報を圧縮する符号化装置および符号化方法に関する。
【背景技術】
【0002】
警報機、家電、子供用おもちゃ等の音声装置を内蔵した組み込み系製品において、高効率、低負荷で処理可能な音声圧縮方式の適用が望まれている。効率的な圧縮が可能な音声圧縮方式であるADPCM圧縮方式が知られている。ADPCM圧縮方式はリアルタイム性に優れている圧縮方式であり、MP3等の音声圧縮方式と比較した場合にリアルタイム性において有利であり、様々な音声装置に適用されており、ADPCM圧縮方式による音質向上が望まれている。
【0003】
特開平11−355147号公報には、圧縮率を悪化させることなく音質を改善することができる符号化装置が開示されている。その符号化装置は、外部から供給された入力値と、所定の予測値の差分を求める差分検出手段と、該差分検出手段により求めた差分を量子化する量子化手段と、該量子化手段により量子化された差分(量子化差分)を符号化して出力する符号化手段と、所定の係数に基づいて前記量子化差分から次のサンプルの予測値を求める予測値算出手段と、所定数のサンプルからなるフレーム中のサンプルを量子化する際の量子化誤差に応じて、前記予測値算出手段の係数を設定する係数設定手段とを備えることを特徴としている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−355147号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特開平11−355147号公報には、入力された音声信号を符号化する符号化処理部が記載されている。その符号化処理部は、図1Aと図1Bとに示すフローチャートに従って動作し、1フレームすなわち入力データの10サンプル毎に、最適な係数を決定し、この係数を用いて符号化したデータに、係数を示す情報を付加して送信あるいは記録する。
【0006】
その符号化処理部は、ステップS100〜S102においてフレームをカウントするカウンタm、レジスタB、レジスタDの初期設定を行い、ステップS103において累計量子化誤差の最小値を保持する変数(εmin)の初期設定を行う。変数εminの値としては、例えば通常の符号化ではありえない大きい値(この場合では、1×1050)を設定する。
【0007】
その符号化処理部は、そして、ステップS104で10個のサンプルを入力し、続くステップS105において入力が終了したか否かを判定し、入力が終了していれば終了し、入力が終了していなければステップS106に進む。ステップS106では、係数を変化させる回数をカウントするカウンタをリセットし、続くステップS107において、その符号化処理部は、カウント値F(m)に対応するアドレスから係数を読み出し、続くステップS108でフレーム処理(1フレーム分のサンプルを符号化し、フレーム単位の累積量子化誤差εsum(m、F(m))[フローチャート中では単にε(m)として示す。]を求める処理)を実行し、ステップS109に進む。
【0008】
その符号化処理部は、ステップS109では、直前のフレーム処理によって求められた累積量子化誤差εsum(m、F(m))が誤差の最小値εminより小さいか否かを判定し、該当しなければそのままステップS112に進み、該当すればステップS110において、累積量子化誤差εsum(m、F(m))を誤差の最小値εminとし、ステップS111で最適カウント値をこのときのカウンタのカウント値F(m)とした後、ステップS112に進む。ステップS112では、カウント値を1増加させ、ステップS113に進む。
【0009】
その符号化処理部は、ステップS113では、カウント値が16以上であるか否か、すなわち、変数を順次変化させてフレーム処理を16回実行したか否かを検出し、該当すればステップS114に進み、該当しなければステップS107に戻り、ステップS107〜S112までの処理を繰り返す。
【0010】
その符号化処理部は、これにより、カウント値が1ずつ増加されながらステップS107〜S113までの処理が繰り返され、カウント値F(m)が0〜15の場合について合計で16回のフレーム処理が実行され、16通りの係数a(F(m))を用いた際の累計量子化誤差εsum(m、F(m))が算出され、この累計量子化誤差の最小値とそのときのカウント値がそれぞれ最小値εmin、最適カウント値として求められる。
【0011】
上述のように16回のフレーム処理が終了し、ステップS114に進むと、その符号化処理部は、最小値εminに基づいて、累計量子化誤差εsum(m、F(m))が最小となるカウント値F(m)を決定する。その符号化処理部は、ステップS115において、供給されたカウント値F(m)に対応する係数a(F(m))を読み出して係数として設定する。そして、ステップS116において、この係数a(F(m))を用いて再びフレーム処理を行う。この後、ステップS117においてレジスタAの値をレジスタBに転送し、ステップS118においてレジスタCの値をレジスタDに転送した後、ステップS119において、このフレーム処理において出力される符号データL(m、n)と選択された係数を示すカウント値F(m)が、多重化されて送信される。そして、ステップS120においてフレームをカウントするカウンタmの値に1が加算され、次のフレームに対して上述と同様のステップS103以降の処理が開始される。
【0012】
このような符号化によって、その符号化処理部から送信されるデータは、1サンプル当たり4ビットの符号化の場合、1フレーム分の10サンプル(40ビット)に係数を示すデータF(m)の4ビットが加わるため、1フレーム当たり44ビット、すなわち1サンプル当たり4.4ビットの情報量となる。
【0013】
このような符号化処理部は、量子化パラメータの候補値全てに対して一度ADPCM圧縮を行うため、従来技術の方法で音質の改善を図ると、ADPCM圧縮の回数が増加して処理時間がかかるという問題がある。
【0014】
本発明の課題は、情報をより高速に、かつ、より適切にADPCM符号化する符号化装置および符号化方法を提供することにある。
【課題を解決するための手段】
【0015】
以下に、発明を実施するための形態・実施例で使用される符号を括弧付きで用いて、課題を解決するための手段を記載する。この符号は、特許請求の範囲の記載と発明を実施するための形態・実施例の記載との対応を明らかにするために付加されたものであり、特許請求の範囲に記載されている発明の技術的範囲の解釈に用いてはならない。
【0016】
本発明による符号化装置(10)は、統計用ADPCM圧縮部(6)と圧縮データ統計作成部(7)と最適化パラメータテーブル選択部(11)とADPCM圧縮部(12)とを備えている。統計用ADPCM圧縮部(6)は、複数の統計用ADPCM値(22)に対応する複数の統計用量子化パラメータ(23)を用いて情報を統計用符号化情報にADPCM符号化する。その統計用符号化情報は、統計用数列を示している。その統計用数列のうちの任意の項は、複数の統計用ADPCM値(22)のうちの1つの統計用ADPCM値を示している。圧縮データ統計作成部(7)は、その統計用符号化情報に基づいて複数の統計用ADPCM値(22)に対応する複数の出現回数(38)を算出する。複数の出現回数(38)のうちの任意の統計用ADPCM値に対応する出現回数は、その統計用数列のうちのうちのその任意の統計用ADPCM値を示している項の個数を示している。最適化パラメータテーブル選択部(11)は、量子化パラメータテーブル候補格納メモリ(2)に記録されている複数の量子化パラメータテーブル(33)から最適量子化パラメータテーブルを複数の出現回数(38)に基づいて選択する。複数の量子化パラメータテーブル(33)のうちの任意の量子化パラメータテーブルは、複数のADPCM値(34)に複数の量子化パラメータ(35)を対応づけている。ADPCM圧縮部(12)は、その最適量子化パラメータテーブルを用いてその情報を符号化情報にADPCM符号化する。その符号化情報は、数列を示している。その数列のうちの任意の項は、複数のADPCM値(34)のうちの1つのADPCM値を示している。このとき、複数の統計用ADPCM値(22)は、複数のADPCM値(34)より多い。
【0017】
本発明による符号化方法は、複数の統計用ADPCM値(22)に対応する複数の統計用量子化パラメータ(23)を用いて情報を統計用符号化情報にADPCM符号化するステップと、その統計用符号化情報に基づいて複数の統計用ADPCM値(22)に対応する複数の出現回数(38)を算出するステップと、量子化パラメータテーブル候補格納メモリ(2)に記録されている複数の量子化パラメータテーブル(33)から最適量子化パラメータテーブルを複数の出現回数(38)に基づいて選択するステップと、その最適量子化パラメータテーブルを用いてその情報を符号化情報にADPCM符号化するステップとを備えている。その統計用符号化情報は、統計用数列を示している。その統計用数列のうちの任意の項は、その複数の統計用ADPCM値のうちの1つの統計用ADPCM値を示している。複数の出現回数(38)のうちの任意の統計用ADPCM値に対応する出現回数は、その統計用数列のうちのその任意の統計用ADPCM値を示している項の個数を示している。複数の量子化パラメータテーブル(33)のうちの任意の量子化パラメータテーブルは、複数のADPCM値(34)に複数の量子化パラメータ(35)を対応づけている。その符号化情報は、数列を示している。その数列のうちの任意の項は、複数のADPCM値(34)のうちの1つのADPCM値を示している。このとき、複数の統計用ADPCM値(22)は、複数のADPCM値(34)より多い。
【発明の効果】
【0018】
本発明による符号化装置および符号化方法は、複数の量子化パラメータテーブルを用いて情報を複数の符号化情報にそれぞれADPCM符号化することにより最適量子化パラメータテーブルを選択する他の技術に比較して、最適量子化パラメータテーブルをより高速に選択することができ、情報をより高速に、より適切に符号化することができる。
【図面の簡単な説明】
【0019】
【図1A】図1Aは、公知の符号化方法の前半を示すフローチャートである。
【図1B】図1Bは、公知の符号化方法の後半を示すフローチャートである。
【図2】図2は、本発明による符号化装置を示すブロック図である。
【図3】図3は、統計用量子化パラメータテーブルを示す表である。
【図4】図4は、ADPCM符号化の動作を示すフローチャートである。
【図5】図5は、量子化パラメータテーブル候補テーブルを示す表である。
【図6】図6は、統計結果テーブルを示す表である。
【図7】図7は、最適量子化パラメータテーブルを示す表である。
【図8】図8は、本発明による符号化方法を示すフローチャートである。
【発明を実施するための形態】
【0020】
図面を参照して、本発明による符号化装置の実施の形態を記載する。その符号化装置10は、図2に示されているように、統計用量子化パラメータテーブル格納メモリ1と量子化パラメータテーブル候補格納メモリ2と圧縮データ識別番号記憶メモリ3とを備えている。統計用量子化パラメータテーブル格納メモリ1は、統計用量子化パラメータテーブルが記録されている。量子化パラメータテーブル候補格納メモリ2は、量子化パラメータテーブル候補テーブルが記録されている。圧縮データ識別番号記憶メモリ3は、圧縮データと識別番号とが記録される。
【0021】
符号化装置10は、さらに、入力データ取得部5と統計用ADPCM圧縮部6と圧縮データ統計作成部7と最適量子化パラメータテーブル算出部8とを備えている。
【0022】
入力データ取得部5は、符号化装置10と異なる外部機器から音声情報を収集する。その音声情報は、音声を示し、複数のPCM値を示している。その複数のPCM値は、その音声が発生している期間を所定のサンプリング周期ごとに区切る複数の時刻に対応している。その複数のPCM値のうちのある時刻に対応するPCM値は、その音声を示す音声波形がその時刻に示すPCM値を示している。統計用ADPCM圧縮部6は、ADPCM符号化を実行することにより、入力データ取得部5により収集された音声情報に基づいて統計用符号化情報を算出する。圧縮データ統計作成部7は、統計用ADPCM圧縮部6により算出された統計用符号化情報に基づいて統計結果テーブルを算出する。最適量子化パラメータテーブル算出部8は、圧縮データ統計作成部7により算出された統計結果テーブルに基づいて最適量子化パラメータテーブルを算出する。
【0023】
符号化装置10は、さらに、最適量子化パラメータテーブル選択部11とADPCM圧縮部12と圧縮データ記憶部14とを備えている。最適量子化パラメータテーブル選択部11は、最適量子化パラメータテーブル算出部8により算出された最適量子化パラメータテーブルに基づいて、量子化パラメータテーブル候補格納メモリ2に記録されている複数の量子化パラメータテーブル候補から1つの量子化パラメータテーブルを選択する。ADPCM圧縮部12は、最適量子化パラメータテーブル選択部11により選択された量子化パラメータテーブルを参照することにより、入力データ取得部5により収集された音声情報に基づいて符号化情報を算出する。圧縮データ記憶部14は、ADPCM圧縮部12により算出された符号化情報を圧縮データ識別番号記憶メモリ3に記録する。
【0024】
図3は、統計用量子化パラメータテーブル格納メモリ1に記録されている統計用量子化パラメータテーブルを示している。その統計用量子化パラメータテーブル21は、複数の統計用ADPCM値22を複数の統計用量子化パラメータ23に対応づけている。すなわち、複数の統計用ADPCM値22のうちの任意のADPCM値は、複数の統計用量子化パラメータ23のうちの1つの統計用量子化パラメータに対応している。複数の統計用ADPCM値22は、それぞれ、0〜7の複数の整数のうちの1つの整数を示している。複数の統計用量子化パラメータ23は、それぞれ、数値を示している。複数の統計用量子化パラメータ23は、その統計用ADPCM値に関して単調に増加するように作成されている。
【0025】
図4は、統計用ADPCM圧縮部6により実行されるADPCM符号化を示している。統計用ADPCM圧縮部6は、所定の復号値初期値と所定の量子化ステップ幅初期値とを記憶している。統計用ADPCM圧縮部6は、まず、復号値にその復号値初期値を代入し、量子化ステップ幅にその量子化ステップ幅初期値を代入する。次いで、統計用ADPCM圧縮部6は、入力データ取得部5により収集された音声情報が示す複数のPCM値ごとにステップS1〜ステップS4の処理を実行することにより、複数のPCM値に対応する複数の統計用符号値を算出する。
【0026】
統計用ADPCM圧縮部6は、その複数のPCM値のうちのそのADPCM符号化に利用されていない未計算PCM値があるかどうかを判別する(ステップS1)。統計用ADPCM圧縮部6は、その未計算PCM値があるときに(ステップS1、PCM値有)、その未計算PCM値のうちの最も早い時刻に対応する対象PCM値を取得する。統計用ADPCM圧縮部6は、統計用量子化パラメータテーブル21を参照して、複数の統計用ADPCM値22に対応する複数の変化量を算出する。その複数の変化量のうちのある統計用ADPCM値に対応する変化量は、複数の統計用量子化パラメータ23のうちのその統計用ADPCM値に対応する統計用量子化パラメータにその量子化ステップ幅を乗算した積を示している。統計用ADPCM圧縮部6は、その対象PCM値からその復号値を減算した差を算出する。統計用ADPCM圧縮部6は、その複数の変化量からその差に最も近い変化量を選択し、その対象PCM値に対応する統計用符号値をその選択された変化量に基づいて算出する。その統計用符号値は、複数の統計用ADPCM値22からその選択された変化量に対応する統計用ADPCM値を示している(ステップS2)。
【0027】
統計用ADPCM圧縮部6は、その量子化ステップ幅とその統計用ADPCM値とに基づいて復号値を更新する。その更新された復号値は、更新される前の復号値にその選択された変化量を加算した和を示している(ステップS3)。
【0028】
統計用ADPCM圧縮部6は、図示されていない統計用係数テーブルを記憶している。その統計用係数テーブルは、複数の統計用ADPCM値22に複数の統計用係数を対応づけている。すなわち、複数の統計用ADPCM値22のうちの任意の統計用ADPCM値は、その複数の係数のうちの1つの係数に対応している。統計用ADPCM圧縮部6は、その統計用ADPCM値に基づいてその量子化ステップ幅を更新する。その更新された量子化ステップ幅は、更新される前の量子化ステップ幅にその複数の係数のうちのその統計用ADPCM値に対応する係数を乗算した積を示している(ステップS4)。
【0029】
統計用ADPCM圧縮部6は、その複数のPCM値ごとにステップS1〜ステップS4を実行することにより算出された複数の統計用符号値に基づいて統計用符号化情報を作成する。その統計用符号化情報は、数列を示している。その数列のうちのi番目の項は、その複数のPCM値のうちの時刻的にi番目のPCM値に基づいて算出された統計用符号値を示している。
【0030】
図5は、圧縮データ統計作成部7により算出される統計結果テーブルを示している。その統計結果テーブル37は、複数の統計用ADPCM値22に複数の出現回数38を対応づけている。すなわち、複数の統計用ADPCM値22のうちの任意の統計用ADPCM値は、複数の出現回数38のうちの1つの出現回数に対応している。複数の出現回数38のうちのある統計用ADPCM値に対応する出現回数は、統計用ADPCM圧縮部6により算出された統計用符号化情報が示す数列のうちのその統計用ADPCM値を示す項の項数を示している。
【0031】
図6は、最適量子化パラメータテーブル算出部8により算出された最適量子化パラメータテーブルを示している。その最適量子化パラメータテーブル41は、複数のADPCM値34を複数の最適量子化パラメータ43に対応づけている。すなわち、複数のADPCM値34のうちの任意のADPCM値は、複数の最適量子化パラメータ43のうちの1つの最適量子化パラメータに対応している。複数のADPCM値34は、それぞれ、0〜3の複数の整数のうちの1つの整数を示している。複数の最適量子化パラメータ43は、それぞれ、数値を示している。
【0032】
複数の最適量子化パラメータ43のうちの0に対応する最適量子化パラメータDN(0)は、適当な整数kを用いて、複数の出現回数38のうちの0〜kに対応する出現回数A(0)〜A(k)の和が複数の出現回数38の総和の1/4に等しいときに、次式:
DN(0)=(D(0)×A(0)+・・・+D(k)×A(k))/(A(0)+・・・+A(k))
により表現される。
複数の最適量子化パラメータ43のうちのある整数mに対応する最適量子化パラメータDN(m)は、複数の出現回数38のうちの0〜iに対応する出現回数A(0)〜A(i)の和が複数の出現回数38の総和のm/4に等しいときに、かつ、複数の出現回数38のうちの(i+1)〜jに対応する出現回数A(i+1)〜A(j)の和が複数の出現回数38の総和の1/4に等しいときに、次式:
DN(m)=(D(i+1)×A(i+1)+・・・+D(j)×A(j))/(A(0)+・・・+A(j))
により表現される。ここで、量子化パラメータD(m)は、複数の統計用量子化パラメータ23のうちのADPCM値mに対応する量子化パラメータを示している。出現回数A(m)は、複数の出現回数38のうちのADPCM値mに対応する出現回数を示している。
【0033】
図7は、量子化パラメータテーブル候補格納メモリ2に記録される量子化パラメータテーブル候補テーブルを示している。その量子化パラメータテーブル候補テーブル31は、複数の識別番号32を複数の量子化パラメータテーブル33に対応づけている。複数の識別番号32は、それぞれ、0〜3の複数の整数のうちの1つの整数を示している。複数の量子化パラメータテーブル33は、それぞれ、量子化パラメータテーブルを示している。
【0034】
その量子化パラメータテーブルは、複数のADPCM値34を複数の量子化パラメータ35に対応づけている。複数のADPCM値34は、それぞれ、0〜3の複数の整数のうちの1つの整数を示している。複数の量子化パラメータ35は、それぞれ、数値を示している。
【0035】
このとき、最適量子化パラメータテーブル選択部11は、最適量子化パラメータテーブル算出部8により最適量子化パラメータテーブル41が算出されたときに、複数の識別番号32に対応する複数の累計誤差を算出する。その複数の累計誤差のうちのある識別番号に対応する累計誤差は、複数のADPCM値34に対応する複数の誤差の合計を示している。その複数の誤差のうちのあるADPCM値に対応する誤差は、複数の量子化パラメータテーブル33のうちのその識別番号に対応する量子化パラメータテーブルの複数の量子化パラメータ35のうちのそのADPCM値に対応する量子化パラメータから複数の最適量子化パラメータ43のうちのそのADPCM値に対応する最適量子化パラメータを減算した差の絶対値(または平方)を示している。最適量子化パラメータテーブル選択部11は、その複数の累計誤差のうちの最小である最小累計誤差を算出する。最適量子化パラメータテーブル選択部11は、さらに、複数の識別番号32のうちのその最小累計誤差に対応する識別番号を選択する。
【0036】
ADPCM圧縮部12は、最適量子化パラメータテーブル選択部11により識別番号が選択されたときに、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33のうちのその識別番号に対応する選択量子化パラメータテーブルを用いて、図4のフローと同様であるADPCM符号化を実行する。
【0037】
すなわち、ADPCM圧縮部12は、所定の復号値初期値と所定の量子化ステップ幅初期値とを記憶している。ADPCM圧縮部12は、まず、復号値にその復号値初期値を代入し、量子化ステップ幅にその量子化ステップ幅初期値を代入する。次いで、ADPCM圧縮部12は、入力データ取得部5により収集された音声情報が示す複数のPCM値ごとにステップS1〜ステップS4の処理を実行することにより、複数のPCM値に対応する複数の符号値を算出する。
【0038】
ADPCM圧縮部12は、その複数のPCM値のうちのそのADPCM符号化に利用されていない未計算PCM値があるかどうかを判別する(ステップS1)。ADPCM圧縮部12は、その未計算PCM値があるときに(ステップS1、PCM値有)、その未計算PCM値のうちの最も早い時刻に対応する対象PCM値を取得する。ADPCM圧縮部12は、複数の量子化パラメータテーブル33のうちの最適量子化パラメータテーブル選択部11により選択された識別番号に対応する選択量子化パラメータテーブルを参照して、複数のADPCM値34に対応する複数の変化量を算出する。その複数の変化量のうちのあるADPCM値に対応する変化量は、複数の量子化パラメータ35のうちのそのADPCM値に対応する量子化パラメータにその量子化ステップ幅を乗算した積を示している。ADPCM圧縮部12は、その対象PCM値からその復号値を減算した差を算出する。ADPCM圧縮部12は、その複数の変化量からその差に最も近い変化量を選択し、その対象PCM値に対応する符号値をその選択された変化量に基づいて算出する。その符号値は、複数のADPCM値34からその選択された変化量に対応するADPCM値を示している(ステップS2)。
【0039】
ADPCM圧縮部12は、その量子化ステップ幅とそのADPCM値とに基づいて復号値を更新する。その更新された復号値は、更新される前の復号値にその選択された変化量を加算した和を示している(ステップS3)。
【0040】
ADPCM圧縮部12は、係数テーブルを記憶している。その係数テーブルは、複数のADPCM値34に複数の係数を対応づけている。すなわち、複数のADPCM値34のうちの任意のADPCM値は、その複数の係数のうちの1つの係数に対応している。ADPCM圧縮部12は、そのADPCM値に基づいてその量子化ステップ幅を更新する。その更新された量子化ステップ幅は、更新される前の量子化ステップ幅にその複数の係数のうちのそのADPCM値に対応する係数を乗算した積を示している(ステップS4)。
【0041】
ADPCM圧縮部12は、その複数のPCM値ごとにステップS1〜ステップS4を実行することにより算出された複数の符号値に基づいて符号化情報を作成する。その符号化情報は、その識別番号と数列とを示している。その数列のうちのi番目の項は、その複数のPCM値のうちの時刻的にi番目のPCM値に基づいて算出された符号値を示している。
【0042】
本発明による符号化方法の実施の形態は、符号化装置10により実行される、符号化装置10は、図8に示されているように、まず、外部機器から音声情報を収集する(ステップS11)。その音声情報は、音声を示し、複数のPCM値を示している。その複数のPCM値は、その音声が発生している期間を所定のサンプリング周期ごとに区切る複数の時刻に対応している。その複数のPCM値のうちのある時刻に対応するPCM値は、その音声を示す音声波形がその時刻に示すPCM値を示している。
【0043】
符号化装置10は、統計用量子化パラメータテーブル格納メモリ1に記録されている統計用量子化パラメータテーブル21を用いてADPCM符号化を実行することにより、その音声情報に基づいて統計用符号化情報を算出する(ステップS12)。その統計用符号化情報は、数列を示している。その数列のうちのi番目の項は、その複数のPCM値のうちの時刻的にi番目のPCM値に基づいて算出された統計用符号値を示している。
【0044】
符号化装置10は、その統計用符号化情報に基づいて統計結果テーブル37を算出する(ステップS13)。符号化装置10は、統計結果テーブル37に基づいて最適量子化パラメータテーブル41を算出する(ステップS14)。符号化装置10は、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33から最適量子化パラメータテーブル41に最も近い選択量子化パラメータテーブルを選択する。符号化装置10は、複数の識別番号32のうちのその選択量子化パラメータテーブルに対応する識別番号を選択する(ステップS15)。
【0045】
符号化装置10は、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33のうちのその識別番号に対応する選択量子化パラメータテーブルを用いてADPCM符号化を実行することにより、その音声情報に基づいて符号化情報を算出する(ステップS16)。その符号化情報は、その識別番号と数列とを示している。その数列のうちのi番目の項は、その複数のPCM値のうちの時刻的にi番目のPCM値に基づいて算出された符号値を示している。符号化装置10は、その符号化情報を圧縮データ識別番号記憶メモリ3に記録する(ステップS17)。
【0046】
このような符号化情報は、量子化パラメータテーブル候補テーブル31とその復号値初期値とその量子化ステップ幅初期値とその係数テーブルとが記録された復号化装置により復号化情報に復号化されることができる。すなわち、その復号化装置は、まず、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33からその符号化情報が示す識別番号に対応する選択量子化パラメータテーブルを選択する。その復号化装置は、復号値にその復号値初期値を代入し、量子化ステップ幅にその量子化ステップ幅初期値を代入する。
【0047】
その復号化装置は、その複数の符号値のうちの復号化に利用されていない未計算符号値があるかどうかを判別する。その復号化装置は、その未計算符号値があるときに、その未計算符号値のうちの順が早い対象符号値を取得する。その復号化装置は、その選択量子化パラメータテーブルを用いて、その対象符号値に基づいて復号値を更新する。その更新された復号値は、更新される前の復号値に変化量を加算した和を示している。その変化量は、その選択量子化パラメータテーブルの複数の量子化パラメータ35のうちのその対象符号値に対応する量子化パラメータにその量子化ステップ幅を乗算した積を示している。その復号化装置は、その対象符号値に基づいてその量子化ステップ幅を更新する。その更新された量子化ステップ幅は、更新される前の量子化ステップ幅にその係数テーブルの複数の係数のうちのその対象符号値に対応する係数を乗算した積を示している。
【0048】
その復号化装置は、その複数の符号値ごとにその復号値の更新とその量子化ステップ幅の更新とを実行することにより復号化情報を作成する。その復号化情報は、数列を示している。その数列のうちのi番目の項は、その複数の符号値のうちのi番目の符号値に基づいて更新された復号値を示している。
【0049】
このような復号化情報は、概ねその音声情報を示し、すなわち、所定のサンプリング周期ごとに区切る複数の時刻にその複数の復号値を対応づけることにより形成される音声波形が、その音声情報が示す音声を概ね示している。このような復号化情報は、さらに、複数の量子化パラメータテーブル33のうちのその選択された識別番号に対応しない量子化パラメータテーブルを用いてその音声情報からADPCM符号化された他の符号化情報から復号された他の復号化情報に比較して、その音声情報をより近似している。
【0050】
このような符号化方法によれば、符号化装置10は、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33からその音声情報を符号化することに最適である量子化パラメータテーブルをより高速に選択することができる。
【0051】
本発明による符号化方法の比較例は、量子化パラメータテーブル候補テーブル31とその復号値初期値とその量子化ステップ幅初期値とその係数テーブルとが記録された他の符号化装置により実行される。その符号化装置は、量子化パラメータテーブル候補テーブル31の複数の識別番号32に対応する複数の量子化誤差累計を算出する。その複数の量子化誤差累計のうちのある識別番号に対応する量子化誤差累計は、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33のうちのその識別番号に対応する量子化パラメータテーブルを用いてその音声情報からADPCM符号化された符号化情報に基づいて算出される。その量子化誤差累計は、その音声情報が示す複数のPCM値とその符号化情報が示す複数の符号値とから算出される。その音声情報が示す複数のPCM値に対応する複数の量子化誤差の総和を示している。その複数の量子化誤差のうちのあるPCM値に対応する量子化誤差は、その符号化情報が示す複数の符号値のうちのそのPCM値に対応する符号値からそのPCM値を減算した差の絶対値(または平方)を示している。
【0052】
その符号化装置は、その複数の量子化誤差累計のうちの最小である最小量子化誤差累計を算出し、複数の識別番号32からその最小量子化誤差累計に対応する識別番号を選択する。その符号化装置は、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33のうちのその識別番号に対応する選択量子化パラメータテーブルを用いてADPCM符号化を実行することにより、その音声情報に基づいて符号化情報を算出する。
【0053】
このような比較例の符号化方法は、ADPCM符号化を少なくとも複数の量子化パラメータテーブル33の個数だけ実行する必要がある。本発明による符号化方法は、統計用量子化パラメータテーブル21を用いた統計用ADPCM符号化と複数の量子化パラメータテーブル33のうちの1つの量子化パラメータテーブルを用いたADPCM符号化とを実行するだけであり、その比較例の符号化方法に比較して、ADPCM符号化を実行する回数をより低減することができる。このため、本発明による符号化方法は、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33からその音声情報を符号化することに最適である量子化パラメータテーブルをより高速に選択することができ、複数の量子化パラメータテーブル33のうちの最適である量子化パラメータテーブルを用いて音声情報をより高速にADPCM符号化することができる。
【0054】
なお、符号化装置10は、コンピュータにより構成されることができる。このとき、そのコンピュータは、CPUと記憶装置と入力装置と出力装置と通信装置とリムーバルメモリドライブとを備えている。そのCPUは、そのコンピュータにインストールされるコンピュータプログラムを実行することにより、その記憶装置と入力装置と出力装置と通信装置とリムーバルメモリドライブとを制御する。その記憶装置は、そのコンピュータプログラムを記録し、そのCPUにより生成される情報を一時的に記録する。その入力装置は、ユーザに操作されることにより、外部機器から情報をそのCPUに出力する。その出力装置は、そのCPUにより生成される情報を外部機器に出力する。
【0055】
その通信装置は、その通信ネットワークを介してそのCPUにより生成された情報を他のコンピュータに送信し、その通信ネットワークを介して他のコンピュータから受信された情報をそのCPUに出力する。その通信装置は、さらに、そのコンピュータにインストールされるコンピュータプログラムを他のコンピュータからダウンロードすることに利用される。そのリムーバルメモリドライブは、記録媒体が挿入されたときに、その記録媒体に記録されているデータを読み出すことに利用される。そのリムーバルメモリドライブは、さらに、コンピュータプログラムが記録されている記録媒体が挿入されたときに、そのコンピュータプログラムをそのコンピュータにインストールするときに利用される。その記録媒体としては、フラッシュメモリ、磁気ディスク(フレキシブルディスク、ハードディスク)、光ディスク(CD、DVD)が例示される。
【0056】
そのコンピュータにインストールされるコンピュータプログラムは、そのコンピュータに複数の機能をそれぞれ実現させる複数のコンピュータプログラムから形成されている。その複数の機能は、統計用量子化パラメータテーブル格納メモリ1と量子化パラメータテーブル候補格納メモリ2と圧縮データ識別番号記憶メモリ3と入力データ取得部5と統計用ADPCM圧縮部6と圧縮データ統計作成部7と最適量子化パラメータテーブル算出部8と最適量子化パラメータテーブル選択部11とADPCM圧縮部12と圧縮データ記憶部14とを含んでいる。
【0057】
このようなコンピュータは、既述の実施の形態における符号化装置10と同様にして、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33からその音声情報を符号化することに最適である量子化パラメータテーブルをより高速に選択することができ、複数の量子化パラメータテーブル33のうちの最適である量子化パラメータテーブルを用いて音声情報をより高速にADPCM符号化することができる。
【0058】
なお、符号化装置10は、複数の統計用ADPCM値22の個数と複数のADPCM値34の個数とは、それぞれ4個と8個と異なる他の個数に置換されることができる。このとき、複数の統計用ADPCM値22の個数Mは、複数のADPCM値34の個数Nより大きい。個数Mとしては、個数Nを表現するビット数より大きいビット数で表現することができる最大値が例示される。さらに、複数の最適量子化パラメータ43のうちの0に対応する最適量子化パラメータDN(0)は、適当な整数kを用いて、複数の出現回数38のうちの0〜kに対応する出現回数A(0)〜A(k)の和が複数の出現回数38の総和の1/Nに等しいときに、次式:
DN(0)=(D(0)×A(0)+・・・+D(k)×A(k))/(A(0)+・・・+A(k))
により表現される。
複数の最適量子化パラメータ43のうちのある整数mに対応する最適量子化パラメータDN(m)は、複数の出現回数38のうちの0〜iに対応する出現回数A(0)〜A(i)の和が複数の出現回数38の総和のm/Nに等しいときに、かつ、複数の出現回数38のうちの(i+1)〜jに対応する出現回数A(i+1)〜A(j)の和が複数の出現回数38の総和の1/Nに等しいときに、次式:
DN(m)=(D(i+1)×A(i+1)+・・・+D(j)×A(j))/(A(0)+・・・+A(j))
により表現される。
【0059】
さらに、複数の最適量子化パラメータ43のうちの0に対応する最適量子化パラメータDN(0)は、複数の出現回数38のうちの0〜kに対応する出現回数A(0)〜A(k)の和が複数の出現回数38の総和の1/Nより小さく、かつ、出現回数A(0)〜A(k+1)の和がその総和の1/Nより大きいときに、次式:
(D(0)×A(0)+・・・+D(k)×A(k))/(A(0)+・・・+A(k))
により表現される値より大きい値であり、かつ、次式:
(D(0)×A(0)+・・・+D(k+1)×A(k+1))/(A(0)+・・・+A(k+1))
により表現される値より小さい値である。このように、複数の出現回数38のうちのi〜jに対応する出現回数A(i)〜A(j)の和が複数の出現回数38の総和の1/Nに等しくならないときには、複数の最適量子化パラメータ43のうちのmに対応する最適量子化パラメータDN(m)は、複数の統計用量子化パラメータ23と複数の出現回数38とに基づいて、矛盾が生じないように、適当に算出される。このように複数の最適量子化パラメータ43が算出された場合でも、符号化装置10は、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33から最適である量子化パラメータテーブルを高速に選択することができ、その結果、音声情報をより高速に、より適切にADPCM符号化することができる。
【0060】
M個の統計用ADPCM値とN個のADPCM値とが適用された符号化装置は、既述の実施の形態における符号化装置10と同様にして、M個の統計用ADPCM値を用いた統計用ADPCM符号化とN個のADPCM値を用いたADPCM符号化とを実行するだけで、その音声情報を最適な符号化情報に圧縮することができる。このため、その符号化装置は、量子化パラメータテーブル候補テーブル31の複数の量子化パラメータテーブル33から最適である量子化パラメータテーブルを高速に選択することができ、その結果、音声情報をより高速に、より適切にADPCM符号化することができる。
【0061】
なお、本発明による符号化方法は、音声波形と異なる他の波形を示す情報をADPCM符号化することに利用することもできる。
【符号の説明】
【0062】
10:符号化装置
1 :統計用量子化パラメータテーブル格納メモリ
2 :量子化パラメータテーブル候補格納メモリ
3 :圧縮データ識別番号記憶メモリ
5 :入力データ取得部
6 :統計用ADPCM圧縮部
7 :圧縮データ統計作成部
8 :最適量子化パラメータテーブル算出部
11:最適量子化パラメータテーブル選択部
12:ADPCM圧縮部
14:圧縮データ記憶部
21:統計用量子化パラメータテーブル
22:複数の統計用ADPCM値
23:複数の統計用量子化パラメータ
31:量子化パラメータテーブル候補テーブル
32:複数の識別番号
33:複数の量子化パラメータテーブル
34:複数のADPCM値
35:複数の量子化パラメータ
37:統計結果テーブル
38:複数の出現回数
41:最適量子化パラメータテーブル
43:複数の最適量子化パラメータ

【特許請求の範囲】
【請求項1】
複数の統計用ADPCM値に対応する複数の統計用量子化パラメータを用いて情報を統計用符号化情報にADPCM符号化する統計用ADPCM圧縮部と、
前記統計用符号化情報に基づいて前記複数の統計用ADPCM値に対応する複数の出現回数を算出する圧縮データ統計作成部と、
量子化パラメータテーブル候補格納メモリに記録されている複数の量子化パラメータテーブルから最適量子化パラメータテーブルを前記複数の出現回数に基づいて選択する最適化パラメータテーブル選択部と、
前記最適量子化パラメータテーブルを用いて前記情報を符号化情報にADPCM符号化するADPCM圧縮部とを具備し、
前記統計用符号化情報は、統計用数列を示し、
前記統計用数列のうちの任意の項は、前記複数の統計用ADPCM値のうちの1つの統計用ADPCM値を示し、
前記複数の出現回数のうちの任意の統計用ADPCM値に対応する出現回数は、前記統計用数列のうちの前記任意の統計用ADPCM値を示す項の個数を示し、
前記複数の量子化パラメータテーブルのうちの任意の量子化パラメータテーブルは、複数のADPCM値に複数の量子化パラメータを対応づけ、
前記符号化情報は、数列を示し、
前記数列のうちの任意の項は、前記複数のADPCM値のうちの1つのADPCM値を示し、
前記複数の統計用ADPCM値は、前記複数のADPCM値より多い
符号化装置。
【請求項2】
請求項1において、
前記複数の量子化パラメータテーブルは、複数の識別情報に対応づけられて量子化パラメータテーブル候補格納メモリに記録され、
前記符号化情報は、前記複数の識別情報のうちの前記最適量子化パラメータテーブルに対応する識別情報をさらに示す
符号化装置。
【請求項3】
請求項1〜請求項2のいずれかにおいて、
前記複数の統計用量子化パラメータと前記複数の出現回数とに基づいて前記複数のADPCM値に対応する複数の最適量子化パラメータを算出する最適量子化パラメータテーブル算出部をさらに具備し、
前記最適量子化パラメータテーブルにより前記複数のADPCM値に対応づけられる複数の量子化パラメータは、前記複数の量子化パラメータテーブルのうちの前記最適量子化パラメータテーブルと異なる量子化パラメータテーブルにより前記複数のADPCM値に対応づけられる複数の量子化パラメータに比較して、前記複数の最適量子化パラメータに近い
符号化装置。
【請求項4】
請求項3において、
前記複数の最適量子化パラメータのうちの任意のADPCM値に対応する最適量子化パラメータは、分子を分母で除算した商を示し、
前記分母は、前記複数の出現回数のうちの複数のブロック統計用ADPCM値に対応する複数のブロック出現回数の総和を示し、
前記分子は、前記複数のブロック統計用ADPCM値に対応する複数のブロック項の総和を示し、
前記複数のブロック項のうちの任意のブロック統計用ADPCM値に対応するブロック項は、前記複数の統計用量子化パラメータのうちの前記任意のブロック統計用ADPCM値に対応する統計用量子化パラメータに前記複数の出現回数のうちの前記任意のブロック統計用ADPCM値に対応する出現回数を乗算した積を示し、
前記複数の統計用ADPCM値は、前記複数のブロック統計用ADPCM値が前記任意のADPCM値に対応するように、かつ、前記複数のブロック出現回数の総和が前記複数の出現回数の総和を前記複数のADPCM値の個数で除算した商に等しくなるように、前記複数のADPCM値に対応づけられる
符号化装置。
【請求項5】
複数の統計用ADPCM値に対応する複数の統計用量子化パラメータを用いて情報を統計用符号化情報にADPCM符号化するステップと、
前記統計用符号化情報に基づいて前記複数の統計用ADPCM値に対応する複数の出現回数を算出するステップと、
量子化パラメータテーブル候補格納メモリに記録されている複数の量子化パラメータテーブルから最適量子化パラメータテーブルを前記複数の出現回数に基づいて選択するステップと、
前記最適量子化パラメータテーブルを用いて前記情報を符号化情報にADPCM符号化するステップとを具備し、
前記統計用符号化情報は、統計用数列を示し、
前記統計用数列のうちの任意の項は、前記複数の統計用ADPCM値のうちの1つの統計用ADPCM値を示し、
前記複数の出現回数のうちの任意の統計用ADPCM値に対応する出現回数は、前記統計用数列のうちの前記任意の統計用ADPCM値を示す項の個数を示し、
前記複数の量子化パラメータテーブルのうちの任意の量子化パラメータテーブルは、複数のADPCM値に複数の量子化パラメータを対応づけ、
前記符号化情報は、数列を示し、
前記数列のうちの任意の項は、前記複数のADPCM値のうちの1つのADPCM値を示し、
前記複数の統計用ADPCM値は、前記複数のADPCM値より多い
符号化方法。
【請求項6】
請求項5において、
前記複数の量子化パラメータテーブルは、複数の識別情報に対応づけられて量子化パラメータテーブル候補格納メモリに記録され、
前記符号化情報は、前記複数の識別情報のうちの前記最適量子化パラメータテーブルに対応する識別情報をさらに示す
符号化方法。
【請求項7】
請求項5〜請求項6のいずれかにおいて、
前記複数の統計用量子化パラメータと前記複数の出現回数とに基づいて前記複数のADPCM値に対応する複数の最適量子化パラメータを算出するステップをさらに具備し、
前記最適量子化パラメータテーブルにより前記複数のADPCM値に対応づけられる複数の量子化パラメータは、前記複数の量子化パラメータテーブルのうちの前記最適量子化パラメータテーブルと異なる量子化パラメータテーブルにより前記複数のADPCM値に対応づけられる複数の量子化パラメータに比較して、前記複数の最適量子化パラメータに近い
符号化方法。
【請求項8】
請求項7において、
前記複数の最適量子化パラメータのうちの任意のADPCM値に対応する最適量子化パラメータは、分子を分母で除算した商を示し、
前記分母は、前記複数の出現回数のうちの複数のブロック統計用ADPCM値に対応する複数のブロック出現回数の総和を示し、
前記分子は、前記複数のブロック統計用ADPCM値に対応する複数のブロック項の総和を示し、
前記複数のブロック項のうちの任意のブロック統計用ADPCM値に対応するブロック項は、前記複数の統計用量子化パラメータのうちの前記任意のブロック統計用ADPCM値に対応する統計用量子化パラメータに前記複数の出現回数のうちの前記任意のブロック統計用ADPCM値に対応する出現回数を乗算した積を示し、
前記複数の統計用ADPCM値は、前記複数のブロック統計用ADPCM値が前記任意のADPCM値に対応するように、かつ、前記複数のブロック出現回数の総和が前記複数の出現回数の総和を前記複数のADPCM値の個数で除算した商に等しくなるように、前記複数のADPCM値に対応づけられる
符号化方法。

【図1A】
image rotate

【図1B】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate