(57)【要約】    【課題】パケットロス区間を補償し得るデータを検索するに必要な演算量を大幅に削減する。    【解決手段】データ欠落を検出するデータ欠落検出手段３と、データ欠落が検出されると、データ欠落区間の直前に存在する所定区間の波形をキーデータとし、再生済みデータ中の前記キーデータに対応する波形位置を指示する波形位置指示手段９と、それによって指示される前記再生済みデータ中の波形位置の波形と前記キーデータとの類似度を求め、その類似度に基づいて前記再生済みデータ中に前記キーデータに対する類似波形が存在するか否かを判定する類似波形判定手段１２と、類似波形が存在すると判定された場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償手段４とを有する。【選択図】        図１
2005109680.tif 000002
【特許請求の範囲】
【請求項１】
データ欠落を検出するデータ欠落検出手段と、
このデータ欠落検出手段によりデータ欠落が検出されると、このデータ欠落によって生じたデータ欠落区間の直前に存在する所定区間の波形をキーデータとし、再生済みデータ中の前記キーデータに対応する波形位置を指示する波形位置指示手段と、
この波形位置指示手段で指示される前記再生済みデータ中の波形位置の波形と前記キーデータとの類似度を求め、求められた類似度に基づいて前記再生済みデータ中に前記キーデータに対する類似波形が存在するか否かを判定する類似波形判定手段と、
この類似波形判定手段により類似波形が存在すると判定された場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償手段と、
を含むことを特徴するデータ再生装置。
【請求項２】
前記波形位置指示手段は、前記再生済みデータの波形位置を各エントリごとに記憶する波形位置記憶手段と、前記キーデータを前記波形位置記憶手段のエントリに対応するインデクス値に変換するインデクス値変換手段とを有することを特徴する請求項１記載のデータ再生装置。
【請求項３】
前記波形位置指示手段で指示される前記再生済みデータ中の波形位置の波形と前記キーデータとの類似度を求める際は、前記再生済みデータ中の波形位置の波形を含む所定長さの区間と前記キーデータを含む所定長さの区間との類似度を求めることを特徴とする請求項１または２記載のデータ再生装置。
【請求項４】
前記データ欠落区間の直前に存在する所定区間の波形に近似した少なくとも１つの近似波形を生成する近似波形生成手段を設け、前記データ欠落区間の直前に存在する所定区間の波形に加えて前記近似波形生成手段で生成された近似波形をキーデータとして用いることを特徴とする請求項１から３のいずれかに記載のデータ再生装置。
【請求項５】
前記データ欠落区間の直前に存在する所定区間の波形に加えて前記近似波形生成手段で生成された近似波形をキーデータとして用いる場合、これらそれぞれのキーデータに対して前記波形位置指示手段で指示される前記再生済みデータ中の波形と前記それぞれのキーデータとの類似度を求め、求められたそれぞれの類似度のうち最大の類似度が得られた前記再生済みデータ中の波形を類似波形とすることを特徴とする請求項４記載のデータ再生装置。
【請求項６】
データ欠落を検出するデータ欠落間検出ステップと、
このデータ欠落検出ステップによりデータ欠落が検出されると、このデータ欠落によって生じたデータ欠落区間の直前に存在する所定区間の波形をキーデータとし、再生済みデータ中の前記キーデータに対応する波形位置を指示する波形位置指示ステップと、
この波形位置指示ステップで指示される前記再生済みデータ中の波形位置の波形と前記キーデータとの類似度を求め、求められた類似度に基づいて前記再生済みデータ中に前記キーデータに対する類似波形が存在するか否かを判定する類似度判定ステップと、
この類似波形判定手段により類似波形が存在すると判定された場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償ステップと、
を含むことを特徴とするデータ再生方法。
【請求項７】
データ欠落を検出するデータ欠落検出手段と、
このデータ欠落検出手段によりデータ欠落が検出されると、このデータ欠落によって生じたデータ欠落区間の直前に存在する所定区間の周波数特性と再生済みデータの各区間の周波数特性との類似度を求め、求められた類似度に基づいて前記再生済みデータ中に前記データ欠落区間の直前に存在する所定区間の波形と類似する類似波形が存在するか否かを判定する類似波形判定手段と、
この類似波形判定手段により類似波形が存在するとされた場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償手段と、
を含むことを特徴とするデータ再生装置。
【請求項８】
データ欠落を検出するデータ欠落検出ステップと、
このデータ欠落検出ステップによりデータ欠落が検出されると、このデータ欠落によって生じたデータ欠落区間の直前に存在する所定区間の周波数特性と再生済みデータの各区間の周波数特性との類似度を求め、求められた類似度に基づいて前記再生済みデータ中に前記データ欠落区間の直前に存在する所定区間の波形と類似する類似波形が存在するか否かを判定する類似波形判定ステップと、
この類似波形判定ステップにより類似波形が存在するとされた場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償ステップと、
を含むことを特徴とするデータ再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ欠落の影響が大きいリアルタイムデータの再生に有効なデータ再生装置およびデータ再生方法に関する。
【背景技術】
【０００２】
インターネットなどのネットワーク通信は、パケット型通信であると言うこと、また、ベストエフォート型通信であることなどの特徴がある。
パケット型通信においては、通信するデータは細分化され、それに元のデータを再構成するための順序情報、宛先情報などを付加したパケットとして通信される。
また、ベストエフォート型通信においては、送信したパケットが宛先に到着するまでの遅延時間、到着する順序、また到着すること自体が保証されないと言う特徴がある。
【０００３】
非リアルタイム通信においては、たとえばＴＣＰ（トランスミッションコントロールプロトコル）などを用いて、パケットの到着を確認しつつ、必要ならばパケットの再送を行うことにより、パケットが宛先に届くことを保証することができる。しかし、パケットの通信遅延が問題となるリアルタイム通信においては、このような再送処理を用いることはできない。
【０００４】
つまり、音声などのリアルタイムデータにおいては、欠落したパケットが再送により到着したとしても、音声データの再生のタイミングに間に合わなければ、再送されてきたデータは無意味なものとなってしまうからである。そのため、このパケットロスによるデータ欠落を何らかの方法により防止するか、あるいは、その欠落したデータ部分を何らかの方法により補償する必要がある。これらは総称してパケットロス遮蔽技術と呼ばれる。
【０００５】
このパケットロス遮蔽技術は、符号化、通信、復号化のそれぞれの段階において考えることができる。これらに係わる従来技術としては、以下のようなものがある。
【０００６】
符号化段階でのパケットロス遮蔽に係わる技術としては、たとえば特開２００２−１６２９９８（特許文献１の技術という）がある。これはデータの符号化に際し、その符号化単位ごとに、そのデータが欠落した場合の最適な処理を送信側において予め定めておくものである。それにより、受信側においてデータが欠落した場合、最も高品質な補償処理を容易に行うことができる。
【０００７】
また、通信段階でのパケットロス遮蔽に係わる技術としては、たとえば特開２００２−２６１８１９（特許文献２の技術という）がある。これは、通信する複数のパケットに対して、誤り訂正のためのデータパケットを追加するものであって、受信側においてデータが欠落した場合、この誤り訂正データを用いて欠落したデータを復元することができる。
【０００８】
また、再生段階でのパケットロス遮蔽に係わる技術としては、たとえば、国際電気通信連合（ＩＴＵ）標準であるＧ．７１１のＡｐｐｅｎｄｉｘ−１（非特許文献１の技術という）や、特開平５−２０７０６４（特許文献３の技術という）がある。
【０００９】
図１１は、非特許文献１の技術の概略を示すものである。たとえば、図１１（Ａ）に示すような元データに対し、図１１（Ｂ）に示すようなデータ欠落が発生したとする。この非特許文献１の技術においては、図１１（Ｃ）に示すように、データ欠落区間の最初の１０ミリ秒の間は、その直前のデータの１周期のデータを用いて補償する。さらに、次の１０ミリ秒の間は図１１（Ｄ）、図１１（Ｅ）に示すように、直前のデータの２周期を２０％減衰させたデータを用いて補償するものである。以降はさらに減衰させたデータを用いてデータ欠落区間を補償するものである。
【００１０】
図１２は、特許文献３の技術の１つの例を概略的に示すものである。たとえば、図１２（Ａ）に示すような元データに対して、図１２（Ｂ）に示すようなデータ欠落が発生したとする。この特許文献３の技術においては、図１２（Ｃ）に示すように、データ欠落区間の直前のデータをテンプレートとして切出し、このテンプレートと類似する部分を再生済み区間の中から逐次的なパタンマッチングにより検索する。そして、類似した部分が発見された場合は、図１２（Ｄ）に示すように、それに連続するデータを用いてデータ欠落区間を補償するものである。
【特許文献１】特開２００２−１６２９９８
【特許文献２】特開２００２−２６１８１９
【特許文献３】特開平５−２０７０６４
【非特許文献１】ＩＴＵ標準Ｇ．７１１  Ａｐｐｅｎｄｉｘ−１
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、符号化段階でパケットロス遮蔽を実現する方法、たとえば、特許文献１の技術においては、現時点で広く普及している符号化方法を変更する必要があると言う問題がある。
【００１２】
また、通信段階でパケットロス遮蔽を実現する方法、たとえば、特許文献２の技術においても、現時点で広く普及している通信方法を変更する必要があると言う問題がある。また、しばしば起こるバースト誤りに対応するためには、データのインターリーブなどによる遅延の発生や、非常の多くの誤り訂正符号の付加による通信データ量の増大を引き起こすと言う問題がある。
【００１３】
なお、本発明はデータ再生装置およびデータ再生方法の発明であり、再生段階でパケット遮蔽を実現しようとするものであるため、これら特許文献１、特許文献２の技術は直接関係するものではない。
【００１４】
一方、再生段階でパケットロス遮蔽を実現する技術、たとえば、非特許文献１の技術においては、欠落直前の同じ波形を繰り返し用いることにより、再生されるデータが人工的な感じを与えると言う問題がある。これは、再生済みデータを記憶するためのメモリ量を少なくするという要求、また、計算量を少なくするという要求に起因するものである。
【００１５】
これに対し、同じく再生段階でパケットロス遮蔽を実現する技術としての特許文献３は、このメモリ量、計算量の削減についての要求への対処よりも、再生される音の自然さを目指したものである。
【００１６】
これは、直前の同一の周期信号を繰り返し用いると言うような人工的なことをせず、テンプレートに類似する部分を再生済み区間の中からパタンマッチングにより検索し、類似した部分が発見された場合は、それに連続するデータを用いて欠落した部分を補償するという方法を採用することによって、再生音の自然さの実現を可能としたものである。
【００１７】
しかし、この特許文献３の技術は高品質な再生音を得ることができるものの、ある程度大きなメモリ中に再生済みデータを記録し、その中から、欠落部分を補償し得るデータを見つける動作を行うものであることから、メモリ量もある程度の大きさが必要である。また、メモリに保存されている再生済み区間について逐次的にパタンマッチングして行くため、計算負荷も当然のことながら大きいものとなる。なお、メモリに保存されている再生済み区間が長いほど、欠落部分を補償し得るに適したデータを見つけ易くなるが、その分だけ計算量は多くなる。
【００１８】
確かに、最近ではメモリＩＣの小型かつ大容量化などが実現されており、このことを考えれば、メモリ量に対する制限は大きな問題ではないが、長い再生済みデータ区間に対する逐次的なパタンマッチング処理は大きな計算量を必要とし、より高速で高性能なＣＰＵなどを必要とする。また、それは同時に大きな電力を要求することになる。したがって、大きな計算量は供給可能な電力量に制限のある電池駆動などの携帯機器においては大きな問題となる。
【００１９】
本発明は、少ない演算量でパケットロスによるデータ欠落の補償を可能とすることで、供給可能な電力量やＣＰＵの処理の能力の制限が大きい携帯用機器に最適なデータ再生装置およびデータ再生方法を提供することを目的とする。
【課題を解決するための手段】
【００２０】
（１）本発明のデータ再生装置は、データ欠落を検出するデータ欠落検出手段と、このデータ欠落検出手段によりデータ欠落が検出されると、このデータ欠落によって生じたデータ欠落区間の直前に存在する所定区間の波形をキーデータとし、再生済みデータ中の前記キーデータに対応する波形位置を指示する波形位置指示手段と、この波形位置指示手段で指示される前記再生済みデータ中の波形位置の波形と前記キーデータとの類似度を求め、求められた類似度に基づいて前記再生済みデータ中に前記キーデータに対する類似波形が存在するか否かを判定する類似波形判定手段と、この類似波形判定手段により類似波形が存在すると判定された場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償手段とを含むことを特徴としている。
【００２１】
このように、データ欠落した区間の直前の波形をキーデータとし、そのキーデータに対応する波形が再生済みデータのどの波形位置にあるかの見当をつけて、その見当をつけた再生済みデータの波形位置の波形との類似度を求めるようにしているので、類似度を求める際、キーデータを再生済みデータの全区間に渡って、サンプリング点ごとにずらしながら逐次的な類似度計算を行う必要がなくなり、類似度を求めるための計算量を大幅に削減することができる。これによって、供給電力量やＣＰＵの処理能力に大きな制限のある携帯機器などに適したパケットロス遮蔽を実現することができる。
【００２２】
（２）前記（１）におけるデータ再生装置において、前記波形位置指示手段は、前記再生済みデータの波形位置を各エントリごとに記憶する波形位置記憶手段と、前記キーデータを前記波形位置記憶手段のエントリに対応するインデクス値に変換するインデクス値変換手段とを有している。
【００２３】
この波形位置指示手段は、いわゆるハッシュ法の考え方を用いたものであり、波形位置記憶手段はハッシュ表に対応し、インデクス変換手段はハッシュ関数に対応するものである。このようなハッシュ法の考え方を採用することによって、キーデータに対応する波形が再生済みデータの位置のどの波形位置に対応するかの見当をつけることができる。これによって、キーデータに類似する波形が再生済みデータ中のどこにあるかを見つける場合、キーデータと対応つけられた再生済みデータ中の波形との類似度を求めればよいので、再生済みデータの全区間に渡ってサンプリング点ごとにずらして逐次的に行う場合に比べて、演算量を大幅に削減することができる。
【００２４】
（３）前記（１）または（２）記載のデータ再生装置において、前記波形位置指示手段で指示される前記再生済みデータ中の波形位置の波形と前記キーデータとの類似度を求める際は、前記再生済みデータ中の波形位置の波形を含む所定長さの区間と前記キーデータを含む所定長さの区間との類似度を求めることが好ましい。
【００２５】
これによって、より適切な類似度を求めることができ、求められた類似度に基づいて類似波形が存在すると判定された場合、その類似波形に続く所定区間の波形を用いて前記データ欠落区間を補償することで、データ欠落区間を適切に補償することができる。
【００２６】
（４）前記（１）から（３）のいずれかのデータ再生装置において、前記データ欠落区間の直前に存在する所定区間の波形に近似した少なくとも１つの近似波形を生成する近似波形生成手段を設け、前記データ欠落区間の直前に存在する所定区間の波形に加えて前記近似波形生成手段で生成された近似波形をキーデータとして用いることが好ましい。
【００２７】
このように、再生済みデータから所定区間ごとに切り出された切り出し波形だけではなく、この切り出された波形に近似する少なくとも１つの近似波形もキーデータとして用いるようにしている。これによって、再生済みデータの中からデータ欠落した区間直前の波形と類似する波形を検索する際、検索漏れを少なくすることができ、データ欠落区間の補償処理を効率よく高速に行うことができる。
【００２８】
（５）前記（４）のデータ再生装置において、前記データ欠落区間の直前に存在する所定区間の波形に加えて前記近似波形生成手段で生成された近似波形をキーデータとして用いる場合、これらそれぞれのキーデータに対して前記波形位置指示手段で指示される前記再生済みデータ中の波形と前記それぞれのキーデータとの類似度を求め、求められたそれぞれの類似度のうち最大の類似度が得られた前記再生済みデータ中の波形を類似波形としている。
【００２９】
これによって、データ欠落した区間直前の波形と最も類似した波形を見つけることができ、その波形に続く波形を補償データとすることで、データ欠落区間を適切な波形で補償することができる。
【００３０】
（６）本発明のデータ再生方法は、データ欠落を検出するデータ欠落間検出ステップと、このデータ欠落検出ステップによりデータ欠落が検出されると、このデータ欠落によって生じたデータ欠落区間の直前に存在する所定区間の波形をキーデータとし、再生済みデータ中の前記キーデータに対応する波形位置を指示する波形位置指示ステップと、この波形位置指示ステップで指示される前記再生済みデータ中の波形位置の波形と前記キーデータとの類似度を求め、求められた類似度に基づいて前記再生済みデータ中に前記キーデータに対する類似波形が存在するか否かを判定する類似度判定ステップと、この類似波形判定手段により類似波形が存在すると判定された場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償ステップとを含むことを特徴としている。
【００３１】
これによっても前述の（１）と同様の効果が得られる。また、この（６）に記載のデータ再生方法においても、前記波形位置指示ステップで指示される前記再生済みデータ中の波形位置の波形と前記キーデータとの類似度を求める際は、前記再生済みデータ中の波形位置の波形を含む所定長さの区間と前記キーデータを含む所定長さの区間との類似度を求めることが好ましい。
【００３２】
また、この（６）に記載のデータ再生方法において、前記データ欠落区間の直前に存在する所定区間の波形に加えてその波形に近似した近似波形をキーデータとして用いることもできる。さらに、前記近似波形をキーデータとして用いる場合、これらそれぞれのキーデータに対して前記波形位置指示ステップで指示される前記再生済みデータ中の波形と前記それぞれのキーデータとの類似度を求め、求められたそれぞれの類似度のうち最大の類似度が得られた前記再生済みデータ中の波形を類似波形とする。
【００３３】
本発明の他方のデータ再生装置法は、データ欠落を検出するデータ欠落検出手段と、このデータ欠落検出手段によりデータ欠落が検出されると、このデータ欠落によって生じたデータ欠落区間の直前に存在する所定区間の周波数特性と再生済みデータの各区間の周波数特性との類似度を求め、求められた類似度に基づいて前記再生済みデータ中に前記データ欠落区間の直前に存在する所定区間の波形と類似する類似波形が存在するか否かを判定する類似波形判定手段と、この類似波形判定手段により類似波形が存在するとされた場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償手段とを含むことを特徴としている。
【００３４】
これは前述の（１）の発明に対し、データ欠落区間直前の所定区間のデータと再生済みデータのある位置のデータとの類似度を求める際、それぞれの周波数特性の類似度を求めるものである。
【００３５】
このように、周波数特性を求める単位としては、音声データの場合、たとえば、１０ミリ秒から３0ミリ秒（８０サンプルから２４０サンプル）程度というように比較的長い時間である。このため、処理対象となる再生済みデータの全区間について類似度判定処理を行っても、類似度判定処理に必要な演算量は、携帯機器などに用いられる処理能力の低いＣＰＵでも十分対応することができる。
【００３６】
また、処理対象となる再生済みデータの全区間に対して類似度を求めることで、切り出された波形に最も類似した波形を逃すことなく取得することができ、それによって、より一層、適切なデータ欠落区間の補償が可能となる。
【００３７】
（８）本発明の他方のデータ再生方法は、データ欠落を検出するデータ欠落検出ステップと、このデータ欠落検出ステップによりデータ欠落が検出されると、このデータ欠落によって生じたデータ欠落区間の直前に存在する所定区間の周波数特性と再生済みデータの各区間の周波数特性との類似度を求め、求められた類似度に基づいて前記再生済みデータ中に前記データ欠落区間の直前に存在する所定区間の波形と類似する類似波形が存在するか否かを判定する類似波形判定ステップと、この類似波形判定ステップにより類似波形が存在するとされた場合は、その類似波形に続く所定区間の波形で前記データ欠落区間を補償するデータ補償ステップとを含むことを特徴としている。
これによっても（７）と同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００３８】
〔実施形態１〕
図１から図８は本発明の実施形態１を説明するものである。以下にこれらの図を用いて、本発明の実施形態１を詳細に説明する。
【００３９】
図１は本発明のデータ再生装置の実施形態１のブロック図である。また、図２は実施形態１の動作を示すフローチャートである。また、この実施形態１および後に説明する実施形態２では音声データを再生する場合を例にとって説明する。なお、以下では音声データを単にデータという。
【００４０】
データ受信手段１により受信されたデータは、データ復号化手段２と、データ欠落検出手段３に送られる。このデータ欠落検出手段３でデータ欠落（以下ではパケットロスという）が検出されなければ、データ復号化手段２により復号化されたデータは、データ補償手段４の構成要素の１つである補償データ挿入手段４１を通過（補償データ挿入処理がなされずにそのまま通過）してデータ出力手段５に送られてこのデータ出力手段５から出力される。
【００４１】
また、このデータ出力手段５から出力される出力データは再生済みデータ更新手段６と波形位置更新手段７に送られ、再生済みデータ更新手段６によって再生済みデータ記憶手段８の記憶内容が更新され、波形位置更新手段７によって波形位置指示手段９の構成要素の１つである波形位置記憶手段９１の記憶内容が更新される。この再生済みデータ記憶手段８と波形位置記憶手段９１の更新処理については後述する。
【００４２】
一方、データ欠落検出手段３でパケットロスが検出された場合は、図２に示すステップＳ２以降の処理がなされる。すなわち、図２において、パケットロスが検出されたか否かの判断において（ステップＳ１）、パケットロスが検出されると、処理対象となっている受信データからそのパケットロスによるデータ欠落区間（パケットロス区間という）の直前に存在する所定区間の波形が、データ切り出し手段１０により切り出される（ステップＳ２）。
【００４３】
そして、この切り出された波形に基づいて、近似波形生成手段１１は、その切り出された波形に近似する少なくとも１つの近似波形を生成する（ステップＳ３）。このステップＳ２の波形の切り出しと、ステップＳ３の近似波形生成の処理について図３により説明する。
【００４４】
図３において、（Ａ）に示すような受信データにおける図示のハッチングを施した区間がパケットロス区間であるとすると、このパケットロス区間の直前の所定区間（図中の太線Ｃで示す）の波形がデータ切り出し手段１０により切り出される。
【００４５】
近似波形生成手段１１は、この切り出された波形Ｄ１に基づいて少なくとも１つの近似波形を生成する。なお、この図３の例では３つの近似波形Ｄ１１，Ｄ１２，Ｄ１３（図示、破線で示される波形は切り出された波形Ｄ１を示している）が生成された例が示されている。
【００４６】
このように、近似波形生成手段１１で生成された複数の近似波形とデータ切り出し手段１０で切り出された波形は、図１に示すように、キーデータとして波形位置指示手段９の構成要素の１つであるインデクス変換手段９２に与えられる。
【００４７】
波形位置指示手段９は、入力された個々のキーデータに対し、再生済みデータ記憶手段８に記憶されている再生済みデータ中の個々のキーデータに対応する波形位置を指示するものである。
【００４８】
すなわち、波形位置記憶手段９１の各エントリのデータは、再生済みデータ記憶手段８に記憶された再生済みデータの波形位置を指し示すものであり、インデクス変換手段９２は、入力された個々のキーデータに対し、波形位置記憶手段９１のエントリに対応するインデクス値に変換するもので、これらインデクス変換手段９２と波形位置記憶手段によって、あるキーデータに対応する波形が再生済みデータ中のどの波形位置に存在するかを指示するデータを得ることができる。
【００４９】
これはハッシュ法と同等の考え方であり、インデクス変換手段９２はハッシュ関数に対応するもので、個々のキーデータを構成する信号列に対するハッシュ値を求めるのと同じ考えである。また、波形位置記憶手段９１はハッシュ表であるといえる。この処理を図４によって具体的に説明する。
【００５０】
図４に示す各種波形素片は、再生済みデータ記憶手段８に記憶されている再生済みデータから可能な限り切り出されたもので、これら各波形素片をキーデータとする。そして、これらキーデータはインデクス変換手段９２によりインデクス値が計算され、このインデクス値により選択される波形位置記憶手段９１のエントリには再生済みデータ記憶手段８に記憶されている再生済みデータの波形位置を指し示すデータ（波形位置指示データという）が記述されている。
【００５１】
たとえば、キーデータＤａはインデクス変換手段９２によってインデクス値が計算され、そのインデクス値によって波形位置記憶手段９１のエントリＥｍが選択されたとする。この波形位置記憶手段９１のエントリＥｍには再生済みデータ記憶手段８中の対応する波形位置を指し示す波形位置指示データが記述されており、この波形位置指示データによって、キーデータＤａは再生済みデータ記憶手段８のある位置（たとえばＰｍの位置）の波形に対応つけることができる。
【００５２】
ただし、キーデータとなる各波形の取り得る波形の種類よりも、波形位置記憶手段９１のエントリ数の方が少ないのが一般的であり、個々のキーデータと波形位置記憶手段９１のそれぞれのエントリは１対１の対応とならないため、複数のキーデータ間で波形位置記憶手段９１のエントリが重複する場合が生じる。このため、個々のキーデータに対して波形位置記憶手段９１により指し示される波形位置指示データがそのキーデータに対して適正な波形位置とならない場合もある。
【００５３】
これはハッシュ表の衝突と同じことである。たとえば、図４において、キーデータＤｂがインデクス変換手段９２によって波形位置記憶手段９１のエントリＥｎに対応するインデクスに変換されたとする。
【００５４】
この波形位置記憶手段９１のエントリＥｎに記述された再生済みデータ記憶手段８中の波形位置を指し示す波形位置指示データは、図示の破線で示すように、再生済みデータ記憶手段８のたとえばＰｎの波形位置である。したがって、キーデータＤｂはこの波形位置Ｐｎに対応つけられる。しかし、これはキーデータＤｂに対して適切なインデクスに変換できなかった例、つまり、ハッシュ表の衝突が起こった場合であり、この例では、波形位置記憶手段９１によって指し示される波形位置Ｐｎの波形はキーデータＤｂとは明らかに異なった波形である。
【００５５】
なお、キーデータとなる波形の長さは、５から６サンプル程度が望ましい。つまり、長すぎる波形は、より多くの波形を同一のインデクスへ変換する確率が高くなり、その結果、衝突の確率も高くなるからである。逆に短すぎる波形は、のちに説明する類似度判定により、波形全体としての類似性が小さくなる確率が高くなるからである。
【００５６】
図１および図２に説明が戻る。すでに説明したように、データ欠落検出手段３によりパケットロスが検出されることによって（ステップＳ１）、データ切り出し手段１０によりパケットロス区間直前の所定区間の波形が切り出され（ステップＳ２）、この切り出された波形から近似波形の生成がなされると（ステップＳ３）、次の処理として、ステップＳ４〜Ｓ６のループ処理、すなわち、インデクス変換手段９２と波形位置記憶手段９１を用いた各キーデータの再生済みデータへの対応付け処理（図４参照）と、対応つけられた各再生済みデータ中の波形と各キーデータとの類似度計算処理が行われる。
【００５７】
具体的には、図３で説明したように、切り出された波形Ｄ１と複数（この実施形態では３つ）の近似波形Ｄ１１，Ｄ１２，Ｄ１３のうち１つを選択し、その選択された１つのキーデータに対し、波形位置記憶手段９１のエントリに対応するインデクス値をインデクス変換手段９２が計算し（ステップＳ５）、そのインデクス値により選択される波形位置記憶手段９１のエントリに記述された波形位置指示データで指示される再生済みデータの波形位置の波形（類似度計算対象波形という）と当該キーデータとの類似度を計算してその類似度を記憶する（ステップＳ６）。
【００５８】
そして、処理対象のすべてのキーデータ（切り出された波形Ｄ１とその波形Ｄ１に基づいて生成された近似波形Ｄ１１，Ｄ１２，Ｄ１３）について処理が終了したかを判定し（ステップＳ４）、処理が終了していなければ、次のキーデータについてステップＳ５，Ｓ６の処理を行う。
【００５９】
また、すべてのキーデータについて処理が終了していれば、ステップＳ６で求められた各キーデータに対する類似度のうち、最大の類似度を選択する（ステップＳ７）。そして、ステップＳ７で得られた最大の類似度が所定値以上かを判定する（ステップＳ８）。この判定の結果、最大の類似度が所定値以上であれば、その最大の類似度を有する類似度計算対象波形を類似波形とし、その類似波形に続く所定区間の再生済みデータをパケットロス区間を補償し得る補償データ区間として順次切り出し、その切り出された補償データ区間をパケットロス区間に順次コピーすることでパケットロス区間を補償する（ステップＳ９）。
【００６０】
一方、ステップＳ８において、最大の類似度が所定値未満であると判定された場合は、パケットロス区間を同程度のパワーを持つ雑音で埋める（ステップＳ１０）。また、このパケットロス区間を無音として処理することも可能である。
【００６１】
なお、上述のステップＳ６からステップＳ８の処理は類似波形判定手段１２が行うもので、ステップＳ９とステップＳ１０はデータ補償手段４の補償データ生成手段４２と補償データ挿入手段４１が行うものである。なお、類似波形判定手段１２が類似度計算を行う場合、その類似度計算を行うデータの長さは、キーデータの長さと同じである必要はない。
ところで、類似波形判定手段１２が行う類似度の計算は、
【数１】
2005109680.tif 000003
のような自乗誤差を基本としたものが考えられる。ここで、Ｘｉはキーデータを構成する要素とし、Ｙｉは再生済みデータ中の類似度計算対象波形を構成する要素とする。なお、（１）式においては、振幅の影響を除外するために、振幅の正規化を行っている。この（１）式は誤差を表すものであるため、求められたＥｒｒ（誤差）の値が小さいほど、データは類似していると言うことになる。
【００６２】
この（１）式の自乗を展開し、定数項を除外し、符号を反転させると、以下の式を得る。
【数２】
2005109680.tif 000004
【００６３】
この（２）式は（１）式と異なり、求められた値（Ｓｉｍ）が大きいほど誤差が小さいと言うことでなる。つまり、この(２)式のＳｉｍは類似度を表すものであり、この実施形態１では、この（２）式を類似度を求める式として用いる。また、この（２）式における分母のＸｉの自乗の項は類似度判定における定数となるので、
【数３】
2005109680.tif 000005
のような式を用いることも可能である。さらに、分母のＹｉの自乗の項は、キーデータに依存しない定数となるため、予め計算しておくことも可能である。
【００６４】
類似波形判定手段１２は、上述の（２）式または（３）式によって得られた類似度に基づいて、最大の類似度が得られた区間がどこであるかの判定をおこなうとともに、その最大の類似度が所定値以上か否かを判定する。
【００６５】
また、補償データ生成手段４２は、類似波形判定手段１２からの判定結果、すなわち、最大の類似度が得られた類似波形が再生済みデータ中のどこであるかの判定結果と、その最大の類似度が所定値以上か否かの判定結果を受け取る。そして、最大の類似度が所定値以上である場合には、その最大の類似度を有する類似波形に続く所定区間の波形を、パケットロス区間を補償し得る補償データ区間とし、その補償データ区間の波形に対して振幅調整を行うといった補償データ生成処理を行う。
補償データ生成手段４２によってこのような補償データ生成処理がなされると、補償データ挿入手段４１は、補償データ生成手段４２によって生成された補償データをパケットロス区間にコピーする。
【００６６】
図５は類似波形判定手段１２が行う類似波形定処理、図６は類似波形判定結果に基づいてデータ補償手段４（補償データ生成手段４２と補償データ挿入手段４１）が行うパケットロス区間の補償処理を説明するものである。なお、ここでは、キーデータは、データ切り出し手段１０によってパケットロス区間の直前から切り出された所定区間の波形のみとした場合の説明とする。すなわち、この切り出された波形から生成される近似波形については考えないものとする。
【００６７】
まず、図５において、データ切り出し手段１０によってパケットロス区間の直前から所定区間Ｃの波形の切り出しを行い、その切り出された波形Ｄ１をキーデータとする。そして、インデクス変換手段９２と波形位置記憶手段９１により、そのキーデータ（ここではキーデータＤ１とする）が再生済みデータ記憶手段８に記憶されている再生済みデータ中のどの波形位置に対応するかを示す波形位置指示データを得る。この図５の例では、キーデータＤ１は再生済みデータ記憶手段８に記憶されている再生済みデータの波形位置Ｐ１に対応する例が示されている。
【００６８】
そして、再生済みデータにおける波形位置Ｐ１に対応する波形（類似度計算対象波形）と切り出された波形（キーデータＤ１）との類似度を上述の(２)式または（３）式によって求める。
【００６９】
なお、この類似度を求める際は、上述したように、類似度を計算するデータの時間的な長さは、キーデータＤ１の長さとする必要はない。この図５の例では、キーデータＤ１より長い区間Ｔ１がキーデータＤ１側と類似度計算対象波形側それぞれに類似度判定区間として設定されている。
【００７０】
このように、類似度判定区間Ｔ１の設定がなされると、それぞれの類似度判定区間Ｔ１の類似度を上述の(２)式または（３）式によって求める。
この類似度判定処理は、実際には、切り出された波形（キーデータＤ１）だけではなく、図３で説明したように、この切り出された波形から近似波形生成手段１１で生成された複数の近似波形に対しても行われる。すなわち、近似波形生成手段１１で生成された複数の近似波形に対して、再生済みデータの中からそれぞれに類似度計算対象波形を求めて、これら複数の近似波形とそれに対応した類似度計算対象波形との間で類似度判定処理が行われる。
【００７１】
そして、切り出された波形（キーデータＤ１）とその近似波形に対して求められたそれれの類似度の中から最大の類似度を判定し、さらに、その最大の類似度が所定位置以上であるかの判定を行うが（図２のステップＳ７，Ｓ８参照）、この図５では、切り出された波形だけを考えている。
【００７２】
したがって、この切り出された波形（キーデータＤ１）とそれに対応する類似度計算対象波形の類似度、すなわち、キーデータＤ１側の類似度判定区間Ｔ１と類似度計算対象波形側の類似度判定区間Ｔ１の類似度が所定値以上であるか否かの判定がなされるものとする。そして、その判定の結果、求められた類似度が所定値以上であったとする。
【００７３】
一方、図６は図５で説明した類似波形判定結果に基づくパケットロス区間の補償処理を説明するものである。この場合、類似波形判定手段に１２よって、類似度計算対象波形を含む類似度判定区間Ｔ１の類似度が所定値以上であると判定されている。
【００７４】
したがって、その類似度判定区間Ｔ１の波形を類似波形として、この類似波形に続く波形を必要な長さだけ補償データ生成手段４２が順次切出し、補償データ挿入手段４１がパケットロス区間へ順次コピーすることにより、パケットロス区間を補償する。ただし、図６では省略しているが、前述したように、このコピーに際し、補償データ生成手段４２において振幅を調整する必要がある。
【００７５】
また仮に、類似度判定処理において、類似した区間が発見されなかった場合、すなわち、最大の類似度が所定値以上でなかった場合は、図７に示すように、パケットロス区間を同程度のパワーを持つ雑音で埋める。また、この区間を無音として処理することも可能である。
【００７６】
以上のようにしてパケットロス区間の補償が行える。このようなパケットロス区間の補償がなされると、そのパケットロス区間の補償された出力データがデータ出力手段５から出力される。そして、この出力データによって、再生済みデータ記憶手段８が再生済みデータ更新手段６によって更新され、また、波形位置記憶手段９１の記憶内容が波形位置更新手段７によって更新される。これらの更新処理手順を図８に示す。
【００７７】
この図８におけるステップＳ２１の出力データにより再生済みデータ記憶手段８の記憶内容を更新する処理は、データ出力手段５からの出力データを単純に再生済みデータに付加する処理、あるいは、その出力データでそれまでの再生済みデータを上書きする処理である。
【００７８】
また、ステップＳ２２以降の処理は、波形位置記憶手段９１の更新処理であり、まずは、データ出力手段５からの出力データにより生成可能な全てのキーデータを生成する（ステップＳ２２）。そして、ステップＳ２３〜Ｓ２５のループ処理を行う。
【００７９】
このループ処理は、生成された１つのキーデータに対応するインデクス値を計算し（ステップＳ２４）、そのインデクス位置に対応する波形位置記憶手段９１のエントリに記述されたデータ（再生済みデータ記憶手段中の波形位置を指し示す波形位置指示データ）を上述のステップＳ２１で更新された再生済みデータの当該キーデータの位置を示すデータに更新する（ステップＳ２５）という処理を、ステップＳ２２で生成されたすべてのキーデータについて行うものである。
【００８０】
このようにして、再生済みデータ記憶手段８と波形位置記憶手段９１が更新されると、次の復号化処理対象となる受信データについては、この更新された再生済みデータ記憶手段８の記憶内容と波形位置記憶手段９１の記憶内容が用いられる。なお、これら再生済みデータ記憶手段８と波形位置記憶手段９１は、データ出力手段５から出力データが出力されることによって、この図８の処理手順にしたがって逐次それぞれの記憶内容が更新される。
【００８１】
以上より明らかであるように、この実施形態１によれば、類似波形を得るための処理として、特許文献１に示す技術のような大量のパタンマッチング処理を必要とせず、近似波形生成手段１１が生成する近似波形の数をＮとすると、パケットロス区間の直前から切り出された波形を加えたＮ＋１回のパタンマッチングしか必要としない。これは、再生済みデータ記憶手段８が記憶する再生済みデータの長さによらない定数回となる。このことは、波形位置記憶手段９１のエントリ数も含め、メモリサイズを非常に大きくすることが可能であるということであり、それにより、パケットロス区間を補償するための類似波形の発見確率を、演算量を増やさずに高めることを可能にするものである。
【００８２】
〔実施形態２〕
図９は本願の実施形態２のブロック図である。また、図１０はその処理の概略のフローチャートである。
【００８３】
この実施形態２においては、類似度の判定に周波数特性を用いることが実施形態１と異なっている。図９に示す構成において、実施形態１の構成（図１参照）における近似波形生成手段１１、波形位置指示手段９（インデクス変換手段９２、波形位置記憶手段９１）、波形位置更新手段７は不要となり、その代わりとして、周波数特性計算手段２１、周波数特性更新手段２２、周波数特性記憶手段２３が設けられている。その他、この図９において、図１と同一符号を付した構成要素は図１と同じものである。
【００８４】
なお、類似波形判定手段１２は、前述の実施形態１では、波形位置指示手段９で指示される再生済みデータ中の波形とキーデータとの類似度を求め、求められた類似度に基づいて再生済みデータ中に当該キーデータに対する類似波形が存在するか否かを判定するものであったが、この実施形態２では、パケットロス区間の直前に存在する所定区間の周波数特性と再生済みデータの各区間の周波数特性との類似度を求め、求められた類似度に基づいて再生済みデータ中にパケットロス区間直前の所定区間に類似する類似波形が存在するか否かを判定するものである。
【００８５】
データ切り出し手段１０は、実施形態１と同様、データ欠落検出手段３によりパケットロスが検出されると、パケットロス区間直前の所定区間の波形を切り出すものであるが、この実施形態２では、切り出された波形から周波数特性を求めるものであるので、切り出される波形の長さは、データ復号化手段により復号化されるデータが周波数特性のパラメタを含むものであるならば、その処理単位の長さと等しくすることが望ましい。
【００８６】
たとえば、音声データであるならば、１０ミリ秒から３０ミリ秒、つまり、８０サンプルから２４０サンプル程度の長さが用いられることが多い。このように、データ復号化手段が復号化処理を行う単位データ長さと周波数特性を求める単位長さとを同じにすれば、このデータ復号化手段が復号化過程で計算する周波数特性データを流用することが可能となる。
【００８７】
また類似波形判定手段１２が周波数特性同士の類似判定を行う際に用いるパラメタは、復号化手段の多くがその中間段階として線形予測係数（ＬＰＣ係数）を求めるため、それを用いたＬＰＣケプストラム係数を用いることが望ましい。
【００８８】
このＬＰＣ係数、あるいは、ＬＰＣケプストラム係数を用いた類似度判定においては、波形の振幅、つまりパワーに係わる項が独立した係数として分離されているため、実施形態１のように、振幅差を考慮した比較を行わなくともよいと言う優位性がある。つまり、実施形態１で用いた（１）式、（２）式、（３）式において示したような自乗和の平方根のような正規化の処理は不要であり、以下の式を用いることができる。
【数４】
2005109680.tif 000006
【００８９】
ここで、Ｘｉはデータ切り出し手段１０によってパケットロス区間直前から切り出された所定区間の波形の周波数特性であり、Ｙｉは再生済みデータ中の所定区間の類似度計算対象波形の周波数特性である。なお、この（４）式の第２項は予め計算しておくことも可能である。
【００９０】
なお、携帯端末などの無線通信に一般的に用いられている分析合成系（ＣＥＬＰ系）の音声符号化技術においては、その復号化過程において、周波数特性が計算されるため、周波数特性を求めることは大きな負荷とはならない。
【００９１】
図１０はこの実施形態２の処理手順を説明するフローチャートである。図１０において、パケットロスを検出したか否かを判定し（ステップＳ３１）、パケットロスが検出されなければ、このパケットロス補償処理は行われないのでその時点でこのパケットロス補償処理は終了する。この場合は、図１におけるデータ復号化手段による通常の復号化処理に入る。
【００９２】
一方、パケットロスが検出されると、データ切り出し手段１０によって受信データから所定長さの波形が切り出され（ステップＳ３２）、切り出された波形の周波数特性を求める（ステップＳ３３）。
【００９３】
次に、ステップＳ３４，Ｓ３５により、切り出された波形の周波数特性と再生済みデータの全区間について周波数特性の類似度を計算し、求められたそれぞれの類似度を記憶する。
【００９４】
これは、再生済みデータにおける未チェック区間を１つ選択し、その選択した未チェック区間を類似度計算対象区間として、その類似度計算対象区間の周波数特性を周波数特性記憶手段２３から読み出し、この読み出された周波数特性と、切り出された所定区間の波形の周波数特性の類似度を（４）式により計算し、求められた類似度を記憶して行く処理であり、この処理を再生済みデータの全区間について行う。
【００９５】
このステップＳ３４，Ｓ３５の処理によって得られたそれぞれの類似度の中から、最大の類似度を選択し（ステップＳ３６）、その最大の類似度が所定値以上であるか否かを判定する（ステップＳ３７）。この判定の結果、最大の類似度が所定値以上であれば、その最大の類似度を有する類似度計算対象区間を類似波形とし、その類似波形に続く所定区間の再生済みデータをパケットロス区間を補償し得る補償データ区間として順次切り出し、その切り出された補償データ区間をパケットロス区間に順次コピーすることでパケットロス区間を補償する（ステップＳ３８）。
一方、ステップＳ３７による判定の結果、最大の類似度が所定値未満であれば、パケットロス区間を同程度のパワーを有する雑音で埋める（ステップＳ３９）。
【００９６】
以上説明したようにこの実施形態２では、パケットロスが検出された場合は、そのパケットロス区間の直前の所定区間の波形に対応する周波数特性と再生済みデータのそれぞれの区間に対応する周波数特性との類似度を、再生済みデ−タの全区間について計算する。
【００９７】
このように、この実施形態２では、周波数特性同士の類似度の計算は、再生済みデータ記憶手段８に記憶されている再生済みデータの全区間について行うことになるが、前述したように、周波数特性は、音声データであれば、１０ミリ秒から３０ミリ秒単位（８０サンプルから２４０サンプル単位）というように、長い区間ごとに求められている。このため、再生済みデータ記憶手段８に記憶されている再生済みデータの全区間について、それぞれの区間ごとに周波数特性同士の類似度判定処理を行っても、その類似度判定処理に必要な演算量はそれほど多くはなく、供給可能な電力量やＣＰＵの処理能力に大きな制限のある携帯機器であっても十分対応できるものとなる。
【００９８】
また、処理対象となる再生済みデータの全区間に対して類似度を求めることで、切り出された波形に最も類似した波形を逃すことなく取得することができ、それによって、より一層、適切なデータ欠落区間の補償が可能となる。
【００９９】
なお、この実施形態２においても、データ出力手段５からの出力データに基づいて、再生済みデータ記憶手段８の記憶内容が再生済みデータ更新手段によって更新される。同様に、データ出力手段５からの出力データに基づいて、周波数特性記憶手段２３の記憶内容が周波数特性更新手段によって更新される。
【図面の簡単な説明】
【０１００】
【図１】本発明のデータ再生装置の実施形態１の構成図である。
【図２】本発明の実施形態１の処理手順を説明するフローチャートである。
【図３】図１で示したデータ切り出し手段１０と近似波形生成手段１１の動作を説明する図である。
【図４】図１で示したインデクス変換手段９２と波形位置記憶手段９１によるキーデータと再生済みデータ記憶手段８に記憶された再生済みデータとの対応付けを説明する図である。
【図５】図１で示した類似波形判定手段１２の動作を説明する図である。
【図６】図１で示した補償データ生成手段４２と補償データ挿入手段４１の動作を説明する図である。
【図７】所定値以上の類似度が得られなかった場合のパケットロス区間の補償処理の一例について説明する図である。
【図８】図１で示した再生済みデータ記憶手段８と波形位置記憶手段９１の更新処理を説明するフローチャートである。
【図９】本発明のデータ再生装置の実施形態２の構成図である。
【図１０】本発明の実施形態２の処理手順を説明するフローチャートである。
【図１１】従来の技術（非特許文献１に記載の技術）のデータ欠落補償処理を説明する図である。
【図１２】従来の技術（特許文献３に記載の技術）のデータ欠落補償処理を説明する図である。
【符号の説明】
【０１０１】
３  データ欠落検出手段、４  データ補償手段、９  波形位置指示手段、１０  データ切り出し手段、１１  近似波形生成手段、１２  類似波形判定手段、４１  補償データ挿入手段、４２  補償データ生成手段、９１  波形位置記憶手段、９２  インデクス変換手段、Ｄ１  切り出された波形、Ｄ１１，Ｄ１２，Ｄ１３  近似波形、Ｔ１  類似度判定区間
【図１】
2005109680.tif 000007
【図２】
2005109680.tif 000008
【図３】
2005109680.tif 000009
【図４】
2005109680.tif 000010
【図５】
2005109680.tif 000011
【図６】
2005109680.tif 000012
【図７】
2005109680.tif 000013
【図８】
2005109680.tif 000014
【図９】
2005109680.tif 000015
【図１０】
2005109680.tif 000016
【図１１】
2005109680.tif 000017
【図１２】
2005109680.tif 000018