JP2004198559A - 時系列信号の符号化方法および復号方法 - Google Patents
時系列信号の符号化方法および復号方法 Download PDFInfo
- Publication number
- JP2004198559A JP2004198559A JP2002364526A JP2002364526A JP2004198559A JP 2004198559 A JP2004198559 A JP 2004198559A JP 2002364526 A JP2002364526 A JP 2002364526A JP 2002364526 A JP2002364526 A JP 2002364526A JP 2004198559 A JP2004198559 A JP 2004198559A
- Authority
- JP
- Japan
- Prior art keywords
- sample
- data
- sample sequence
- time
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【解決手段】時系列のサンプル列で構成される時系列信号に対して、複数のチャンネルから構成される場合には、チャンネル間の差分演算を行い、差分が小さい部分についてチャンネル間差分データとして分離する(S1)。次に各チャンネルのサンプル列内に所定の長さをもつフレームを複数設定し、フレーム間の演算を行って差分が小さいフレームについてフレーム間差分データとして分離する(S2)。次に各サンプル列の信号の変化が小さい部分を信号平坦部データとして分離する(S3)。これらのデータを分離した状態で、各サンプル列の上位ビットと下位ビットを分離し(S4)、上位ビットに対して予測誤差を算出した(S5)後、可変ビット長に変換する(S6)。
【選択図】 図2
Description
【産業上の利用分野】
本発明は、音楽制作、音響データの素材保管、ロケ素材の中継など音楽制作分野、特にCDよりも品質の高い高精細オーディオ制作を行う分野、CD、DVD等のデジタル記録媒体を用いたオーディオ記録再生分野、遠隔医療における生体信号の伝送等、データの改変が嫌われる分野等において好適なデータの可逆圧縮技術に関する。
【0002】
【従来の技術】
従来より、音響信号の圧縮には様々な手法が用いられている。音響信号を圧縮して符号化する手法として、MP3(MPEG−1/Layer3)、AAC(MPEG−2/Layer3)などが実用化されている。このような圧縮符号化方式により、音響信号を小さいデータとして扱うことが可能となり、データの記録・伝送の効率化に貢献している。
【0003】
【発明が解決しようとする課題】
上述のようなMP3、AAC等はいずれもロッシー符号化方式といわれるものであり、効率的な圧縮が可能であるが、復号化にあたって、少なからず品質の劣化を伴い、原信号を完全に再現することはできない。そのため、音楽制作、素材保管、ロケ素材の中継など音楽制作分野では、これらの符号化方式を適用できず、非効率ではあるが、非圧縮で保存・伝送する方式がとられている。特に最近は高精細オーディオを扱うプロダクションが増え、素材容量が膨大になり、ワークディスクを管理する上で問題になってきている。
【0004】
上記のような問題を解決するため、本出願人は、時系列信号のサンプル列に対してチャンネル間、フレーム間の差分演算を行って、各サンプルの値を小さくした後、予測符号化を利用してデータの圧縮を行う手法について提案している。(特許文献1参照)。
【0005】
【特許文献1】
特願2002−231150号
【0006】
しかしながら、上記出願で提案した手法では、時系列信号がステレオ音響信号のように複数のチャンネルで構成されている場合、時系列の全区間に渡って差分処理を行うと、信号振幅が増大する箇所が発生し、その後に行う予測誤差を用いた符号化により、かえってデータ量が増えてしまうことがある。また、同一のチャンネルの異なる時刻におけるサンプルのまとまりであるフレーム間の相関がある場合には、フレーム同士の差分演算を行うことにより信号振幅が減少するが、予測不可能な雑音成分の割合が増大し、その後に行う予測誤差を用いた符号化により、かえってデータ量が増えてしまうことがある。これは、特に類似した振幅のパターン(いわゆる信号波形)が繰り返し生じるような信号に対して行う場合に生じ易い。また、信号レベルが同一の部分について信号平坦部として分離し、データ量を削減するようにしているが、信号レベルが同一の部分が連続する音響素材は、あまり多くないため、圧縮効果が少ない。
【0007】
そこで、これらの問題を解決するため、本発明は、類似した振幅のパターンが繰り返し発生する時系列信号に対して十分な圧縮を行うことが可能であると共に、復号時には、元の時系列信号を完全に復号することが可能な可逆圧縮方式の時系列信号の符号化方法および復号方法を提供することを課題とする。
【0008】
【課題を解決するための手段】
上記課題を解決するため、本発明では、時系列のサンプル列で構成される時系列信号に対して、前記全てのサンプル列を再現できるように情報量を圧縮する符号化方法として、前記サンプル列の中から所定の個数のサンプル列で構成されるフレームを複数個抽出し、抽出したフレーム間で相関演算を施し、フレーム間の相関が高い場合に一方のフレームのサンプル列を、各サンプルがより少ないビット数で表現されたフレーム間差分データとして、前記サンプル列から分離するフレーム間演算段階、前記分離されたフレーム間差分データ、およびフレーム間差分データの分離により残ったサンプル列を所定のフォーマットで記録する段階を実行するようにしたことを特徴とする。
【0009】
本発明によれば、時系列のサンプル列に対して、サンプル列中の相関が高い箇所を差分データとして分離して、分離した部分を少ないビット数で表現することにより、類似した振幅のパターンが繰り返し発生する時系列信号に対して十分な圧縮を行うことが可能となる。
【0010】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照して詳細に説明する。
(データの構造)
まず、本発明に係る時系列信号の符号化方法において符号化対象とする時系列信号について説明する。本実施形態では、時系列信号として音響信号を適用した場合を例にとって説明していく。図1(a)は、本発明において扱う音響信号を模式化して示した図である。図1において、左右方向は時系列方向であり、右側に行く程、時間が進むことになる。すなわち左端が開始時刻であり、右端が終端時刻となっている。図1に示した音響信号は、Ch1とCh2の2チャンネルのデータでCh1にL(左)信号、Ch2にR(右)信号が記録されたものとなっている。
【0011】
図1(a)に示したようなデジタル音響信号を得るには、まず、時系列信号であるアナログの音響信号をデジタル化する。これは、従来の一般的なPCMの手法を用い、所定のサンプリング周波数でこのアナログ音響信号をサンプリングし、振幅を所定の量子化ビット数を用いてデジタルデータに変換する処理を行えば良い。本実施形態では、サンプリング周波数44.1KHz、量子化ビット数16ビットで正負の符号を記録した場合を想定して以降説明する。サンプリング周波数44.1KHzでサンプリングすると、1秒あたり44100個のサンプルにより構成されるサンプル列ができることになる。またここでは、音響信号が複数のチャンネルからなるので、各チャンネルごとにデジタル化が行われる。
【0012】
(符号化方法)
続いて、本発明に係る時系列信号の符号化方法の概要について説明する。図2は、本発明に係る時系列信号の符号化方法の概要を示すフローチャートである。まず、図1に示したデジタル音響信号であるサンプル列に対して、チャンネル間の差分演算を行う(ステップS1)。具体的には、まず、チャンネルCh1の全区間とチャンネルCh2の全区間の、同一時刻におけるサンプルデータの差分演算を行う。その結果、差分が所定の閾値以下となるチャンネルCh2上の区間の差分データを、チャンネルCh2のサンプル列から分離し、チャンネル間差分データとして別途記録する。本実施形態では、所定の閾値として、下位4ビット以内を設定している。下位4ビット以内とは、正負の符号付で表現した場合、10進数で−8〜+7の値となる。差分演算の結果、サンプル列の値が−8〜+7の値をとる区間については、チャンネル間差分データとして記録されることになる。なお、チャンネル間差分データ内において同一の値が複数サンプル連続する場合は、連続する部分の先頭のサンプル番号と、サンプル値、および連続するサンプル数を記録することによりデータ量をさらに削減する。この場合、連続するサンプル数に代えて最後尾のサンプル番号を記録するようにしても良い。
【0013】
チャンネル間差分データが分離されたチャンネルCh2は、分離された区間以降のサンプル列を前に詰めることにより、全体のサンプル数が減ることになる。例えば、差分値が閾値以下であるサンプルが図1(b)に示す区間連続した場合、この区間が分離されることになり、チャンネルCh2のサンプル列とチャンネル間差分データは、それぞれ図1(c)に示すようになる。チャンネルCh1のサンプル数(図中左右の長さで表現)は変化がないが、チャンネルCh2のサンプル数は、分離された差分データ分だけ減少することになる。なお、図1の例では、チャンネル間差分データの分離された区間が1箇所だけであるが、現実には、多数分離されることになる。チャンネル間においてデータの圧縮を行う手法としては、全区間に渡って差分演算を行って、その差分値を一方のチャンネルのサンプル値として記録する手法もある。しかし、このような手法の場合、元の音響信号がヴォーカル音等左右均等に録音されたものであれば、圧縮効率が高いが、楽器音のように、どちらか一方のチャンネルを中心に録音されたものについては、信号振幅が大きくなり、後に行う予測符号化を用いた結果、かえってデータ量が大きくなってしまう可能性がある。そこで、本実施形態では、差分が小さい区間のみ、差分データとして分離する手法をとっている。
【0014】
続いて、チャンネル間の差分演算処理が行われた各チャンネルのサンプル列に対して、所定の区間長をもつフレームを設定して、設定されたフレーム間の演算を行う(ステップS2)。まず、各フレームを構成するサンプル列の類似度を求め、類似しているフレームを選別する。本実施形態では、フレーム長をサンプル列の開始時刻から終了時刻までの全区間に渡って固定長としている。具体的には、1フレームを256サンプルとしている。チャンネルデータ(チャンネルを構成するサンプル列)の先頭から256サンプルずつを1フレームとして抽出し、各フレームの類似度を求めていくことになる。フレーム同士の類似度とは、両信号の相関を求めることになるので、相関計算を行うための種々の手法を用いることができるが、本実施形態では、各フレームにおける256サンプルのうち、他フレームにおける対応するサンプルとの差分値の絶対値の最大値を抽出し、最大値が所定値以内に収まるフレーム対を1つの類似フレームとして選別することになる。この処理はサンプル列の全区間に渡って行われる。ここで、フレーム間演算処理によるサンプル列の変化の様子を図3(a)〜(c)に示す。なお、図3においては、図1と異なり1チャンネルしか示していないが、他のチャンネルについても同様に処理される。まず、図3(a)に示したように、固定長にフレーム化されたサンプル列は、フレームA1、A2、A3…に区分される。
【0015】
続いて、各フレームについて、差分を算出する。本実施形態では、256個の差分値が各サンプル時刻に対して得られることになる。得られた差分値の絶対値の最大値が、所定値以内であれば、そのフレームの差分処理後のサンプル列を差分データとして、各チャンネルのサンプル列から分離して記録する。例えば、図3(b)に示されるように、フレームA1とフレームA2に対して処理を行った場合、先行するフレームA1はそのままであるが、フレームA1とフレームA2の差分値の絶対値の最大値が所定値内であるため、図3(c)に示されるように、フレームA2はそのチャンネルのサンプル列から分離され、他のフレームが前に詰められることになる。このように、1フレームが分離されると、サンプル列からは256サンプル削減されることになる。分離されたフレームA2は、そのままの値で記録されるのではなく、フレームA1とフレームA2の差分データが前記最大値を表現できる最小ビット数で記録される。フレームA2の情報は削除されるが、復号時にフレームA2の情報を復元するために、フレームA1とフレームA2の各サンプルの差分値(図3中「A2−A1」と表現する)がフレーム間差分データとして分離される。
【0016】
一方、フレームA1とフレームA2の差分値の絶対値の最大値が所定値内に納まらない場合は、フレームA2の元のサンプル列をそのまま残すことになる。同様に、フレームA1とフレームA3、フレームA2とフレームA3、フレームA1とフレームA4、フレームA2とフレームA4、フレームA3とフレームA4、という具合に、後続するフレーム間に対しても同様の処理が行われる。このとき、フレームA1と類似するフレームとして削除されたフレームA2も後続するフレーム間差分処理において、元のサンプル列が参照される。また、差分演算処理の負荷を軽減するため、参照するフレーム間の距離は100フレーム以内などの制限を加える。すなわち、フレームA1と差分演算処理を行うフレームはフレームA100までとし、フレームA101以降は類似フレーム判断の対象から外す。
【0017】
上記、フレーム間差分データは、差分処理を行った2つのフレーム番号も記録することになる。ステップS2において分離されたフレーム間差分データ内において同一の値が複数サンプル連続する場合は、上記チャンネル間差分データの場合と同様に、連続する部分の先頭のサンプル番号と、サンプル値、および連続するサンプル数を記録することによりデータ量をさらに削減する。この場合、連続するサンプル数に代えて最後尾のサンプル番号を記録するようにしても良い。フレームが差分データとして分離されたサンプル列は、分離されたフレーム以降のサンプル列を前に詰めることにより、全体のサンプル数が減ることになる。
【0018】
次に、信号平坦部の処理を行う(ステップS3)。信号平坦部とは、本来同一の信号レベルが連続する部分のことをいう。特に信号レベルが「0」の無音部、および信号レベルの絶対値が最大の飽和部に現れることが多い。無音部は実際に無音であるか、音が非常に小さく記録されなかった場合に生じるが、飽和部は、信号の録音およびA/D変換の過程において生じる。無音部、飽和部またはそれ以外の同一信号レベルが連続する場合のいずれであっても、信号平坦部は、同一の信号レベルが所定の時間(所定のサンプル数)連続して記録される。このため、この部分は圧縮し易いデータになっている。本実施形態では、信号平坦部を、信号レベルが同一の値が連続する部分だけでなく、信号レベルの変化が少ない部分も含むものとする。すなわち、ステップS3においては、前のサンプル値との差分が所定値以下であるサンプルが連続する部分を、信号平坦部として抽出し、元のサンプル列から分離することになる。分離された信号平坦部内において同一の値が複数サンプル連続する部分(本来の信号平坦部)については、上記チャンネル間差分データ、フレーム差分データの場合と同様に、先頭のサンプル番号と、サンプル値、および連続するサンプル数を記録することによりデータ量をさらに削減する。この場合、連続するサンプル数に代えて最後尾のサンプル番号を記録するようにしても良い。信号平坦部が分離されたサンプル列は、分離された信号平坦部以降のサンプル列を前に詰めることにより、全体のサンプル数が減ることになる。例えば、図4(a)に網掛けで示した箇所が信号平坦部であると判断された場合、図4(b)に示すようにサンプル列からは、信号平坦部に相当する部分のサンプル列が削除されて前に詰められることになる。サンプル列から削除された信号平坦部に関する情報は、信号平坦部データとして分離されることになる。
【0019】
上記のようにして、チャンネル間の差分算出、および各チャンネルのサンプル列内の各フレームの差分算出、信号平坦部の分離によりサンプル列の削減が行われたら、残ったサンプル列を構成する各サンプルデータの上位ビットと下位ビットの分離を行う(ステップS4)。例えば、音響信号をPCMによりデジタル化する際に、量子化ビット数16でサンプリングした場合、各サンプルは16ビットで表現されている。この場合、本実施形態では、上位ビット12ビットと、下位ビット4ビットに分離する。この分離は、基本的に、A/D変換機等、音響信号をデジタル化する際に用いる回路の熱雑音を分離するために行う。そのため、熱雑音であると考えられる下位ビットを分離するのである。下位ビットとして、どの程度分離するかは、音源や利用した回路の特性によっても変化するが、通常量子化ビット数の1/4程度とすることが望ましい。したがって、ここでは、16ビットの1/4にあたる4ビットを下位ビットとして分離しているのである。
【0020】
ここで、上位ビットと下位ビットのデータ分離の様子を図5に模式的に示す。図5において、Hは上位ビットもしくは上位サンプルデータを示し、Lは下位ビットもしくは下位サンプルデータを示す。図5(a)は分離前のサンプルデータである。ステップS4における処理により、サンプルデータは、図5(b)に示す上位サンプルデータと図5(c)に示す下位サンプルデータに分離されることになる。なお、上位ビットに含まれる符号ビットは、そのまま上位サンプルデータに含まれて分離される。このようにして分離されたサンプルデータは、以降別々に処理されることになる。
【0021】
(上位サンプルの符号化)
上位サンプルデータに対しては、まず、直前の2つのサンプルを基に各サンプルの予測値と予測誤差の算出を行う(ステップS5)。ここで、予測誤差の算出手法について、図6を用いて説明する。例えば、サンプル値が図6(a)に示すような状態である場合を考えてみる。図6(a)において、横軸は時刻(サンプル番号)、縦軸は上位サンプル値x(t)である。また、各時刻における線分は、各時刻における上位サンプルx(t)の値を示している。このような状態で、時刻tのサンプルにおける予測誤差e(t)を算出する場合、直前の時刻t−1における上位サンプル値x(t−1)および2つ前の時刻t−2における上位サンプル値x(t−2)を利用して以下の〔数式1〕により算出する。
【0022】
〔数式1〕
e(t)=x(t)−2×x(t−1)+x(t−2)−e(t−1)/2
【0023】
上記〔数式1〕において、「2×x(t−1)−x(t−2)」は過去の2つのサンプルに基づく線形予測成分である。すなわち、算出された線形予測成分、および、直前のサンプルにおいて算出された予測誤差「e(t−1)/2」(誤差フィードバック成分)を用いて時刻tにおける予測誤差e(t)を算出することになる。全サンプルについて、予測誤差の算出を行い、サンプル値の代わりに予測誤差が記録される。
【0024】
これを図6(a)に示した上位サンプルを基に説明する。まず、誤差フィードバック成分を加えない状態で各予測誤差eo(t)を算出する。図6(b)に示すように、時刻tの予測誤差eo(t)を算出する場合、直前の時刻t−1における上位サンプル値x(t−1)および2つ前の時刻t−2における上位サンプル値x(t−2)を結ぶ予測線が時刻tでとる値と、時刻tにおける上位サンプル値x(t)の差分(図中太点線で示す)に基づいて予測誤差eo(t)が算出される。時刻t+1以降も同様に行って予測誤差eo(t+1)を算出する。算出された予測誤差eo(t)は、図6(c)に示すようになる。図6(a)と図6(c)を比較するとわかるように値が変動する範囲が大きく狭まり、データ圧縮に都合が良くなる。
【0025】
続いて、〔数式1〕に基づいて予測誤差eo(t)に対して直前の時刻t−1における補正が加わった予測誤差e(t−1)の50%を減算させて、誤差フィードバック処理を加えた結果が図6(d)である。図6(c)と比べると、時刻t+1およびt+2における予測誤差の低減が顕著である。逆に時刻t+3およびt+4では予測誤差が増大しているが、平均的には予測誤差が低減し、図6(a)と比較すると値が変動する範囲が更に狭まり、データ圧縮効果が向上する。
【0026】
上記ステップS5の処理により、各上位サンプルの値が元の値から予測誤差値に置き換えられることになるが、各ビット構成は固定長12ビットのままである。次に、この固定長の上位サンプル列を可変長のビット構成に変換する(ステップS6)。そのために、まず、符号反転データの挿入を行う。具体的には、サンプル値が正の値から負の値に変化する部分に符号反転データを挿入し、負の値のサンプル値をその絶対値に置きかえる。符号反転データとしては、適当なビット配列を割り当てておく。符号反転データは後の処理で異なるビット配列に変換されるため、この時点では、他のサンプル列と区別ができるビット配列であれば良い。ただし、他のサンプル列のビット数に合わせて12ビットで構成されるようにしておく。
【0027】
次に、予測誤差値で記録された上位サンプルデータをより少ないデータ量で表現するために、ビット構成の変換を行う(ステップS7)。まず、ビット構成の変換を行うために利用するルックアップテーブルの作成を行う。具体的には、まず全時刻に渡って、各サンプル値のヒストグラムを算出する。各サンプル値は上記ステップS6の処理において、全て絶対値化されているので、正負の区別なくヒストグラムを算出する。その結果、サンプル絶対値の種類が640以上となった場合、セパレータビットを2ビット固定値「00」とし、サンプル絶対値の種類が639以下となった場合、セパレータビットを1ビット固定値「0」とする。さらに、出現頻度の高いサンプル絶対値から順に、少ないビット数のビットパターンを割り当てていく。この際、割り当てるビットパターンには規則が有り、最上位ビットは必ず「1」とすると共に、セパレータビットが2ビット「00」の場合は「001」のビットパターンを含むビットパターンは禁止し、セパレータビットが1ビット「0」の場合は「01」のビットパターンを含むビットパターンは禁止する。セパレータビットが1ビット「0」、2ビット「00」の場合のルックアップテーブルの一例を図7に示す。
【0028】
上記のようにして作成されたルックアップテーブルを用いて、12ビット固定長の連続する上位サンプルデータを、可変長のビットパターンに変換していく。可変長になるため、変換後の各データの区切りを区別する必要が生じる。そのため、本実施形態では、各データ間に上述のような1ビットもしくは2ビットのセパレータビットを挿入する。セパレータビットが1ビット「0」の場合、各順位のデータを表現するのにビット配列、およびビット数は、図7(a)に示すようになる。図7(a)において、順位0位は、最もビット数が少ない1ビット「1」で表現される。図7(a)においては、変換前ビット列は省略してあるが、実際には、最も頻繁に現れる符号反転データが「1」で表現されることになる。また、各可変長ビットには、セパレータが必ず付加されるので、順位0位のデータを表現するためには、2ビットが必要となることになる。図7の例では、セパレータビットが1ビット「0」であるため、「01」のビットパターンは割り当てられないことになる。しかし、順位6位として示す「1000」のビットパターンは、可変長ビットへの変換時に、直前のビットが「0」(セパレータビット)の場合に、例外的に「101」のビットパターンに変更することができる。このとき、直前のセパレータビットとビットパターンで「0101」の配列が出現する。このビット配列「0101」は、セパレータビットを挟んで順位0位のビット配列「1」が2つ連続した場合と考えることもできる。しかし、順位0位のビット配列「1」は符号反転データが割り当てられており、符号反転データが2つ連続することは有り得ないため、復号するためのシステムは、「101」ビット配列のデータであると判断することができる。これにより、順位6位のビットパターンは、セパレータビットを合わせて、5ビットから4ビットに減らすことができる。
【0029】
また、セパレータビットが2ビット「00」の場合、各順位のデータを表現するのにビット配列、およびビット数は、図7(b)に示すようになる。図7(b)において、順位0位は、最もビット数が少ない1ビット「1」で表現される。上述のように、最も頻繁に現れる符号反転データが「1」で表現されることになる。また、各可変長ビットには、セパレータが必ず付加されるので、順位0位のデータを表現するためには、3ビットが必要となることになる。図7(b)の例では、セパレータビットが1ビット「00」であるため、「001」のビットパターンは割り当てられないことになる。しかし、順位14位として示す「10000」のビットパターンは、可変長ビットへの変換時に、直前のビットが「00」の場合に、例外的に「1001」のビットパターンに変更することができる。このとき、直前のセパレータビットとビットパターンで「001001」の配列が出現する。このビット配列「001001」は、セパレータビットを挟んで順位0位のビット配列「1」が2つ連続した場合と考えることもできる。しかし、順位0位のビット配列「1」は符号反転データが割り当てられており、符号反転データが2つ連続することは有り得ないため、復号するためのシステムは、「1001」ビット配列のデータであると判断することができる。これにより、順位14位のビットパターンは、セパレータビットを合わせて、7ビットから6ビットに減らすことができる。図8(a)(b)に、ステップS6によるデータ変換の様子を模式的に示す。図8(a)(b)はいずれもサンプル列の上位部分に対応しており、図8(a)は固定長の上位サンプルが連続して記録されている様子を示している。図8(a)に示したような上位サンプル列は、図7(a)(b)に示したルックアップテーブルを用いて図8(b)に示すように変換されることになる。
【0030】
(下位サンプルの符号化)
一方、下位サンプルデータは、そのまま連続に配置される。具体的には、上記ステップS4において分離された下位4ビットのデータが連続に配置されていくことになる。
【0031】
(符号データの記録)
以上のようにして得られた符号データは、図9に示すようになる。すなわち、上位可変長サンプル列、下位固定長サンプル列、ルックアップテーブル、信号平坦部データ、フレーム間差分データ、チャンネル間差分データとなる。このデータを記録すべき記録媒体に合わせたフォーマットで記録する。
【0032】
(復号方法)
次に、上記符号化方法により符号化された符号データを復号する方法について説明する。復号は、コンピュータおよびコンピュータに搭載される専用のソフトウェアプログラムにより実行される。復号方法の概要を図10のフローチャートに示す。
【0033】
まず、図9に示したような符号データを記録した記録媒体を、復号するための装置(コンピュータ)に読み込む。続いて、読み込んだデータのうち、ルックアップテーブルを参照することにより、上位可変長サンプル列から、固定長の上位固定長サンプル列すなわち線形予測誤差e(t)を復元してゆく(ステップS11)。これにより、図8(a)に示したような固定長サンプル列が復元される。次に、上記〔数式1〕の左辺の項と右辺第1項を交換した式に基づいて、12ビット固定長の上位サンプルデータx(t)を順次復元していく(ステップS12)。ステップS12においては、各サンプル列は12ビット固定長のままであるが、その値が変化することになる。続いて、復元した上位固定長サンプル列と下位固定長サンプル列を統合する(ステップS13)。具体的には、上位固定長サンプル列から12ビットを抽出し、下位固定長サンプル列から4ビットを抽出して順次統合する処理を行う。これにより、各サンプルが16ビットのサンプル列が復元される。
【0034】
次に、このような16ビット固定長のサンプル列に対して、平坦部データを挿入していく(ステップS14)。平坦部データの挿入は、平坦部データが有している先頭のサンプル番号を元に、サンプル列に挿入していく。これにより、図4(a)に示したようなサンプル列が復元される。
【0035】
さらに、フレーム間差分データを利用して元のフレームデータを復元し、サンプル列に対して挿入していく(ステップS15)。フレーム間差分データも、先頭のサンプル番号、および差分演算を行う対象としたフレームの情報を有しているので、これを利用して元のフレームを復元する。さらに復元したフレームを元のサンプル列の所定の位置に挿入する。例えば、図3の例では、フレーム間差分データ「A2−A1」は、自身がフレームA1との差分であるという情報を有しているので、フレームA1のサンプル列を利用してフレームA2を復元する。続いてフレーム間差分データ「A2−A1」が保有している先頭のサンプル番号を利用してサンプル列に挿入することになる。これにより、図3(b)に示したようなサンプル列が復元される。
【0036】
続いて、サンプル列に対して、チャンネル間差分データを挿入していく(ステップS16)。チャンネル間差分データは、先頭のサンプル番号、最後尾のサンプル番号、元のサンプル列のチャンネル番号(上記の例ではCh2)、参照したチャンネルのチャンネル番号(上記の例ではCh1)を有しているので、参照チャンネルのサンプル値と差分のサンプル値とを用いて、元のチャンネルのサンプル値を復元した後、元のチャンネルのサンプル列に挿入する。これにより、図1(a)(b)に示したようなサンプル列が復元される。この結果、アナログ信号をPCM化した状態のデジタル音響信号がデータの欠落無く復元されることになる。
【0037】
(実現のための具体的構成)
以上、本発明による符号化方法および復号方法について説明したが、上記符号化方法は、現実には、コンピュータ等の演算処理装置で実行される。具体的には、図2のフローチャートに示したようなステップを上記手順で実行するためのプログラムをコンピュータに搭載しておく。そして、音響信号等の時系列信号をPCM方式等でデジタル化した後、コンピュータに取り込み、ステップS1〜ステップS6の処理を行った後、符号データをデジタルデータとしてコンピュータより出力して記録媒体に記録する。出力された符号データは、復号方法にしたがって復号される。具体的には、図10のフローチャートに示したようなステップを上記手順で実行するためのプログラムをコンピュータに搭載しておく。そして、記録媒体に記録された符号データを、コンピュータに取り込み、ステップS11〜ステップS16の処理を行った後、デジタル音響信号等の時系列信号を復元して出力する。
【0038】
以上、本発明の好適な実施形態について説明したが、本発明は、上記実施形態に限定されず、種々の変形が可能である。例えば、上記実施形態では、フレーム間の演算を行うにあたり、フレーム長を固定長に設定して先頭から順次決定していったが、時系列信号の特徴からフレーム長を可変にして設定するようにしても良い。
【0039】
【発明の効果】
以上、説明したように本発明によれば、時系列のサンプル列で構成される時系列信号に対して、全てのサンプル列を再現できるように情報量を圧縮するにあたり、サンプル列の中から所定の個数のサンプル列で構成されるフレームを複数個抽出し、抽出したフレーム間で相関演算を施し、フレーム間の相関が高い場合に一方のフレームのサンプル列を、各サンプルがより少ないビット数で表現されたフレーム間差分データとしてサンプル列から分離し、分離されたフレーム間差分データ、およびフレーム間差分データの分離により残ったサンプル列を所定のフォーマットで記録するようにしたので、分離した部分を少ないビット数で表現することにより、類似した振幅のパターンが繰り返し発生する時系列信号に対して十分な圧縮を行うことが可能となるという効果を奏する。
【図面の簡単な説明】
【図1】チャンネル間の演算による差分データ分離の様子を示す図である。
【図2】本発明に係る時系列信号の符号化方法の概要を示すフローチャートである。
【図3】フレーム間の演算による差分データ分離の様子を示す図である。
【図4】平坦部データ分離の様子を示す図である。
【図5】サンプルデータの上位ビットと下位ビットの分離の様子を示す図である。
【図6】ステップS5における予測誤差算出処理の様子を示す図である。
【図7】ビット長の変換に用いるルックアップテーブルを示す図である。
【図8】上位サンプルのビット長に変換を模式的に示した図である。
【図9】本発明に係る時系列信号の符号化装置により得られる符号データを示す図である。
【図10】本発明に係る時系列信号の復号方法の概要を示すフローチャートである。
Claims (12)
- 時系列のサンプル列で構成される時系列信号に対して、前記全てのサンプル列を再現できるように情報量を圧縮する符号化方法であって、
前記サンプル列の中から所定の個数のサンプル列で構成されるフレームを複数個抽出し、抽出したフレーム間で相関演算を施し、フレーム間の相関が高い場合に一方のフレームのサンプル列を、各サンプルがより少ないビット数で表現されたフレーム間差分データとして、前記サンプル列から分離するフレーム間演算段階と、
前記分離されたフレーム間差分データ、およびフレーム間差分データの分離により残ったサンプル列を所定のフォーマットで記録する段階と、
を有することを特徴とする時系列信号の符号化方法。 - 請求項1において、
前記フレーム間演算段階の後に、
前記フレーム間差分データの分離により残ったサンプル列の中で、サンプルの値が連続して所定の範囲内に納まる区間を、各サンプルがより少ないビット数で表現された信号平坦部データとして前記サンプル列から分離する信号平坦部分離段階を有することを特徴とする時系列信号の符号化方法。 - 請求項1または請求項2において、
前記フレーム間演算段階もしくは信号平坦部分離段階の後に、
前記残ったサンプル列の各サンプルデータに対して、時間的に過去のサンプル列からの予測誤差を利用して符号化を行うようにしたサンプル符号化段階を有することを特徴とする時系列信号の符号化方法。 - 請求項3において、
前記サンプル符号化段階の前に、
前記サンプル列を構成する各ビットデータを所定のビット位置で分断し、上位ビットのサンプル列で構成される上位サンプルデータと、下位ビットのサンプル列で構成される下位サンプルデータとに分離する上下分離段階を有し、
前記サンプル符号化段階は、前記上位サンプルデータに対して、時間的に過去のサンプル列からの予測誤差を利用して符号化を行うようにすることを特徴とする時系列信号の符号化方法。 - 請求項3または請求項4において、
前記サンプル符号化段階は、
各サンプル値のいついて直前の2サンプルを用いて算出した予測誤差を新たな値として各サンプル値を更新する予測誤差算出段階と、
予測誤差値で記録された固定長の各上位サンプルデータを可変長のサンプルデータの変換するビット長変換段階と、
を有するものであることを特徴とする時系列信号の符号化方法。 - 請求項5において、
前記ビット長変換段階は、
対象ビットデータのヒストグラムに基づいて、変換されたサンプルデータの最上位ビットが1になるような最小ビット長で記述したルックアップテーブルを作成するルックアップテーブル作成段階と、
前記対象ビットデータに対して前記ルックアップテーブルを用いて変換を施すビットデータ変換手段と、
変換後のビットデータ間には所定のビット数の区分ビットデータを挿入するようにビットデータを配列するビットデータ配列段階と、
を有することを特徴とする時系列信号の符号化方法。 - 請求項1から請求項6のいずれかにおいて、
前記時系列信号が、サンプル列を有する複数のチャンネルで構成されるものであり、
前記フレーム間演算段階の前に、
チャンネル間のサンプルに所定の演算を施し、チャンネル間の相関が高い部分のサンプル列を、チャンネル間差分データとして、一方のチャンネルのサンプル列から分離するチャンネル間演算段階をさらに有することを特徴とする時系列信号の符号化方法。 - 与えられた時系列信号に対して、請求項1から請求項7のいずれかに記載の時系列信号の符号化方法により得られたデータ群を記録した記録媒体。
- 時系列信号を圧縮符号化した符号データを復号して、時系列信号の全てのサンプル列を再現する復号方法であって、
予測誤差で記録されたサンプル値から、各時刻ごとの独立したサンプル値に復元したサンプル列を得る段階と、
前記復元されたサンプル列の各サンプルを構成するビットデータと、下位ビットデータを統合する段階と、
前記統合された各サンプル列に信号平坦部データを挿入する信号平坦部挿入段階と、
フレーム間差分データを基に、元のフレームのサンプル列を復元し、前記サンプル列に挿入するフレームデータ復元段階と、
を有することを特徴とする時系列信号の復号方法。 - 請求項9において、
前記時系列信号が、サンプル列を有する複数のチャンネルで構成されるものであり、
前記フレームデータ復元段階の後に、
チャンネル間差分データを基に、元のチャンネルのサンプル列を復元し、前記サンプル列に挿入するチャンネルデータ復元段階をさらに有することを特徴とする時系列信号の復号方法。 - 時系列のサンプル列で構成される時系列信号に対して、前記全てのサンプル列を再現できるように情報量を圧縮するための符号化プログラムであって、
コンピュータに、
前記サンプル列の中から所定の個数のサンプル列で構成されるフレームを複数個抽出し、フレーム間で相関演算を施し、フレーム間の相関が高い場合に一方のフレームのサンプル列を、フレーム間差分データとして、前記サンプル列から分離するフレーム間演算段階、
前記サンプル列の中で、サンプルの値が連続して所定の範囲内に納まる区間を、信号平坦部データとして、前記サンプル列から分離する信号平坦部分離段階、
前記サンプル列を構成する各ビットデータを所定のビット位置で分断し、上位ビットのサンプル列で構成される上位サンプルデータと、下位ビットのサンプル列で構成される下位サンプルデータとに分離する上下分離段階、
前記上位サンプルデータに対しては時間的に過去のサンプル列からの予測誤差を利用して符号化を行うようにした上位サンプル符号化段階、
を実行させるためのプログラム。 - 時系列信号を圧縮符号化した符号化データを復号して、時系列信号の全てのサンプル列を再現するプログラムであって、
コンピュータに、
予測誤差で記録されたサンプル値から、各時刻ごとの独立したサンプル値に復元したサンプル列を得る段階、
前記復元された各サンプルを構成するビットデータと、下位ビットデータを統合する段階、
前記統合された各サンプル列に信号平坦部データを挿入する信号平坦部挿入段階、
フレーム間差分データを基に、元のフレームのサンプル列を復元し、前記サンプル列に挿入するフレームデータ復元段階、
を実行させるためのプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002364526A JP2004198559A (ja) | 2002-12-17 | 2002-12-17 | 時系列信号の符号化方法および復号方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002364526A JP2004198559A (ja) | 2002-12-17 | 2002-12-17 | 時系列信号の符号化方法および復号方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004198559A true JP2004198559A (ja) | 2004-07-15 |
Family
ID=32762323
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002364526A Pending JP2004198559A (ja) | 2002-12-17 | 2002-12-17 | 時系列信号の符号化方法および復号方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004198559A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2006003993A1 (ja) * | 2004-07-02 | 2006-01-12 | Nippon Telegraph And Telephone Corporation | 多チャネル信号符号化方法、その復号化方法、これらの装置、プログラム及びその記録媒体 |
| JP2006259937A (ja) * | 2005-03-15 | 2006-09-28 | Omron Corp | データ収集装置およびデータ復元装置 |
| JP2009511945A (ja) * | 2005-10-05 | 2009-03-19 | エルジー エレクトロニクス インコーポレイティド | 信号処理方法及び装置、エンコーディング及びデコーディング方法並びにそのための装置 |
| US8068569B2 (en) | 2005-10-05 | 2011-11-29 | Lg Electronics, Inc. | Method and apparatus for signal processing and encoding and decoding |
-
2002
- 2002-12-17 JP JP2002364526A patent/JP2004198559A/ja active Pending
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2006003993A1 (ja) * | 2004-07-02 | 2006-01-12 | Nippon Telegraph And Telephone Corporation | 多チャネル信号符号化方法、その復号化方法、これらの装置、プログラム及びその記録媒体 |
| US7929600B2 (en) | 2004-07-02 | 2011-04-19 | Nippon Telegraph And Telephone Corporation | Multi-channel signal encoding method, decoding method, device thereof, program, and recording medium thereof |
| JP2006259937A (ja) * | 2005-03-15 | 2006-09-28 | Omron Corp | データ収集装置およびデータ復元装置 |
| JP2009511945A (ja) * | 2005-10-05 | 2009-03-19 | エルジー エレクトロニクス インコーポレイティド | 信号処理方法及び装置、エンコーディング及びデコーディング方法並びにそのための装置 |
| US8068569B2 (en) | 2005-10-05 | 2011-11-29 | Lg Electronics, Inc. | Method and apparatus for signal processing and encoding and decoding |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100291612B1 (ko) | 데이터유니트의 오리지널시퀀스편집방법및그장치 | |
| WO2006003993A1 (ja) | 多チャネル信号符号化方法、その復号化方法、これらの装置、プログラム及びその記録媒体 | |
| JP4022504B2 (ja) | 少ない計算量で高周波数成分を復元するオーディオデコーディング方法及び装置 | |
| CN1805290B (zh) | 对多声道信号进行编码和解码的方法和设备 | |
| JP2004198559A (ja) | 時系列信号の符号化方法および復号方法 | |
| JP4357852B2 (ja) | 時系列信号の圧縮解析装置および変換装置 | |
| JP4170795B2 (ja) | 時系列信号の符号化装置および記録媒体 | |
| JP4109124B2 (ja) | 時系列信号の符号化装置 | |
| CN103325376A (zh) | 编码装置、编码方法、解码装置及解码方法 | |
| JP4139704B2 (ja) | 時系列信号の符号化装置および復号装置 | |
| JP4184817B2 (ja) | 時系列信号の符号化方法および装置 | |
| JP4139697B2 (ja) | 時系列信号の符号化方法および装置 | |
| JP4736331B2 (ja) | 音響信号の再生装置 | |
| JP2004070120A (ja) | 時系列信号の符号化装置、復号装置および記録媒体 | |
| JP4249540B2 (ja) | 時系列信号の符号化装置および記録媒体 | |
| US8626494B2 (en) | Data compression format | |
| JP2005151327A (ja) | Pcmデータ圧縮・伸長方法及び装置 | |
| JPH10106151A (ja) | サブ情報の符号化方法、記録媒体、信号再生装置および信号再生方法 | |
| JP4319895B2 (ja) | 時系列信号の符号化装置 | |
| JP2005210584A (ja) | データファイルの符号化方法 | |
| JPH11109996A (ja) | 音声符号化装置、音声符号化方法及び音声符号化情報の記録された光記録媒体並びに音声復号装置 | |
| JP3387092B2 (ja) | 音声符号化装置 | |
| JP3889738B2 (ja) | 逆量子化装置、オーディオ復号化装置、画像復号化装置、逆量子化方法および逆量子化プログラム | |
| JP3387093B2 (ja) | 音声符号化方法 | |
| JP3387094B2 (ja) | 音声符号化方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051213 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080925 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081007 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081201 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081226 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090220 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090430 |