説明

信号処理装置および方法、並びにプログラム

【課題】より簡単かつ確実にノイズを検出できるようにする。
【解決手段】全波整流回路51は、入力された入力信号を絶対値化し、代表値決定部52は、絶対値化された入力信号の連続するいくつかのサンプルからなる区間をブロックとして、ブロック内のサンプルのサンプル値の最大値を、そのブロックの代表値とする。平均値算出部53は、複数のブロックからなる区間をフレームとし、フレーム内のブロックの代表値の最大値と平均値を求める。判定部54は、フレームについて求めた、ブロックの代表値の最大値をブロックの代表値の平均値で除算した値が、所定の閾値以上である場合、そのフレームにクリックノイズが含まれているとする。本発明は、信号処理装置に適用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は信号処理装置および方法、並びにプログラムに関し、特に、より簡単かつ確実にノイズを検出できるようにした信号処理装置および方法、並びにプログラムに関する。
【背景技術】
【0002】
例えば、ICレコーダのような内蔵マイクロホンを利用して収音を行なう機器では、収音時にユーザが機器に触れてしまうことにより、タッチノイズと呼ばれるノイズが発生しがちである。
【0003】
特に、録音中に各種機能スイッチをクリック操作することで発生するクリックノイズは、ごく短い時間にエネルギが集中しており、収音された音声の再生時に他の音にマスクされることのない異音となるため、非常に聞き苦しい。そのため、このようなクリックノイズを検出し、低減する技術が求められている。
【0004】
例えば、クリックノイズを低減させる方法として、処理対象の信号をハイパスフィルタによりフィルタ処理し、最大値と移動平均値の割合からクリックノイズを検出する方法(例えば、特許文献1参照)や、フレーム内の最大値と最小値の差からクリックノイズを検出する方法(例えば、特許文献2参照)が提案されている。
【0005】
しかし、これらの方法では、処理対象の信号にエネルギの高い部分と、エネルギの低い部分が含まれていれば、クリックノイズだけでなく、音楽や音声(特に子音)等もクリックノイズとして誤って検出されてしまう。例えば、エネルギの高い区間がある程度長く持続するような信号もクリックノイズとして検出されてしまう。
【0006】
そこで、パルス性信号の持続長を検出し、その持続長がある程度の長さを有する場合には、その信号はクリックノイズではなく、音楽信号であると判定するクリックノイズの検出方法も提案されている(例えば、特許文献3参照)。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特公平7−105692号公報
【0008】
【特許文献2】特許第3420831号公報
【0009】
【特許文献3】特許第2702446号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、持続長を検出する方法では、クリックノイズの検出にハイパスフィルタとローパスフィルタの両方が必要となり、また、ローパスフィルタには比較的急峻な特性が要求されるため、演算量が必然的に多くなってしまう。
【0011】
本発明は、このような状況に鑑みてなされたものであり、より簡単かつ確実にノイズを検出できるようにするものである。
【課題を解決するための手段】
【0012】
本発明の一側面の信号処理装置は、音声信号を絶対値化する絶対値化手段と、絶対値化された前記音声信号の連続するいくつかのサンプルからなる区間をブロックとして、前記ブロック内のサンプルのサンプル値のうち、少なくとも最大のサンプル値を用いて、前記ブロックのサンプルのサンプル値の代表的な値を示す代表値を算出する代表値算出手段と、連続する所定数のブロックからなる区間をフレームとして、前記フレームを構成する前記ブロックの前記代表値の最大値と、前記フレームを構成する前記ブロックの前記代表値の平均値とを算出する平均値算出手段と、前記最大値と前記平均値の比に基づいて、前記フレームからクリックノイズを検出する検出手段とを備える。
【0013】
前記代表値算出手段には、前記ブロック内のサンプルのサンプル値のうち、最大のサンプル値を前記代表値とさせることができる。
【0014】
前記検出手段には、前記最大値と前記平均値の比が、予め定められた閾値以上である場合、前記フレームに前記クリックノイズが含まれているとさせることができる。
【0015】
前記検出手段には、処理対象のフレームの前記最大値および前記平均値と、前記処理対象のフレーム近傍の他のフレームの前記最大値または前記平均値とを用いさせて、前記処理対象のフレームから前記クリックノイズを検出させることができる。
【0016】
信号処理装置には、前記音声信号の前記クリックノイズが含まれるノイズ区間よりも過去側にあり、前記ノイズ区間と同じ長さの前記音声信号の区間の第1の波形を用いて、前記ノイズ区間の補間に用いる過去補間波形を生成する過去補間波形生成手段と、前記音声信号の前記ノイズ区間よりも未来側にあり、前記ノイズ区間と同じ長さの前記音声信号の区間の第2の波形を用いて、前記ノイズ区間の補間に用いる未来補間波形を生成する未来補間波形生成手段と、前記過去補間波形と前記未来補間波形とをクロスフェードして補間波形を生成する補間波形生成手段と、前記音声信号の前記ノイズ区間を前記補間波形に置き換えることで、前記クリックノイズを低減させる置換手段とをさらに設けることができる。
【0017】
信号処理装置には、処理対象のフレームから前記クリックノイズが検出された場合、前記処理対象のフレームの直前のフレームの前記代表値を閾値として、前記処理対象のフレームにおける前記最大値を前記代表値として持つ前記ブロックから過去側に、最初に前記代表値が前記閾値以下となる前記ブロックをノイズ開始ブロックとし、前記ノイズ開始ブロックの最終サンプルから過去側に、最初にゼロクロスするサンプルの位置を、前記クリックノイズの開始位置として検出するノイズ区間検出手段をさらに設けることができる。
【0018】
信号処理装置には、処理対象のフレームから前記クリックノイズが検出された場合、前記処理対象のフレームの直後のフレームの前記代表値を閾値として、前記処理対象のフレームにおける前記最大値を前記代表値として持つ前記ブロックから未来側に、最初に前記代表値が前記閾値以下となる前記ブロックをノイズ終了ブロックとし、前記ノイズ終了ブロックの先頭サンプルから未来側に、最初にゼロクロスするサンプルの位置を、前記クリックノイズの終了位置として検出するノイズ区間検出手段をさらに設けることができる。
【0019】
前記過去補間波形生成手段には、前記ノイズ区間の過去側に隣接する、前記ノイズ区間と同じ長さの前記音声信号の区間の前記第1の波形を時間反転させて前記過去補間波形を生成させ、前記未来補間波形生成手段には、前記ノイズ区間の未来側に隣接する、前記ノイズ区間と同じ長さの前記音声信号の区間の前記第2の波形を時間反転させて前記未来補間波形を生成させることができる。
【0020】
前記過去補間波形生成手段には、前記音声信号における前記ノイズ区間の過去側の端のサンプルの前後にあるサンプルのサンプル値の符号が異なる場合、前記第1の波形を時間反転させるとともにサンプルのサンプル値の符号を反転させて前記過去補間波形とさせ、前記未来補間波形生成手段には、前記音声信号における前記ノイズ区間の未来側の端のサンプルの前後にあるサンプルのサンプル値の符号が異なる場合、前記第2の波形を時間反転させるとともにサンプルのサンプル値の符号を反転させて前記未来補間波形とさせることができる。
【0021】
信号処理装置には、処理対象のフレームから前記クリックノイズが検出された場合、前記処理対象のフレームの直前のフレームの前記代表値を閾値として、前記処理対象のフレームにおける前記最大値を前記代表値として持つ前記ブロックから過去側に、最初に前記代表値が前記閾値以下となる前記ブロックの先頭サンプルの位置を、前記クリックノイズの開始位置として検出するノイズ区間検出手段をさらに設けることができる。
【0022】
信号処理装置には、処理対象のフレームから前記クリックノイズが検出された場合、前記処理対象のフレームの直後のフレームの前記代表値を閾値として、前記処理対象のフレームにおける前記最大値を前記代表値として持つ前記ブロックから未来側に、最初に前記代表値が前記閾値以下となる前記ブロックの最終サンプルの位置を、前記クリックノイズの終了位置として検出するノイズ区間検出手段をさらに設けることができる。
【0023】
前記置換手段には、さらに前記音声信号における前記ノイズ区間直前の所定の長さの隣接区間の波形と、前記音声信号における前記第1の波形の前記区間の直前にある、前記所定の長さの区間の波形とをクロスフェードさせて隣接補間波形を生成させるとともに、前記隣接区間を前記隣接補間波形に置き換えさせることができる。
【0024】
前記置換手段には、さらに前記音声信号における前記ノイズ区間直後の所定の長さの隣接区間の波形と、前記音声信号における前記第2の波形の前記区間の直後にある、前記所定の長さの区間の波形とをクロスフェードさせて隣接補間波形を生成させるとともに、前記隣接区間を前記隣接補間波形に置き換えさせることができる。
【0025】
本発明の一側面の信号処理方法またはプログラムは、音声信号を絶対値化し、絶対値化された前記音声信号の連続するいくつかのサンプルからなる区間をブロックとして、前記ブロック内のサンプルのサンプル値のうち、少なくとも最大のサンプル値を用いて、前記ブロックのサンプルのサンプル値の代表的な値を示す代表値を算出し、連続する所定数のブロックからなる区間をフレームとして、前記フレームを構成する前記ブロックの前記代表値の最大値と、前記フレームを構成する前記ブロックの前記代表値の平均値とを算出し、前記最大値と前記平均値の比に基づいて、前記フレームからクリックノイズを検出するステップを含む。
【0026】
本発明の一側面においては、音声信号が絶対値化され、絶対値化された前記音声信号の連続するいくつかのサンプルからなる区間をブロックとして、前記ブロック内のサンプルのサンプル値のうち、少なくとも最大のサンプル値が用いられて、前記ブロックのサンプルのサンプル値の代表的な値を示す代表値が算出され、連続する所定数のブロックからなる区間をフレームとして、前記フレームを構成する前記ブロックの前記代表値の最大値と、前記フレームを構成する前記ブロックの前記代表値の平均値とが算出され、前記最大値と前記平均値の比に基づいて、前記フレームからクリックノイズが検出される。
【発明の効果】
【0027】
本発明の一側面によれば、より簡単かつ確実にノイズを検出することができる。
【図面の簡単な説明】
【0028】
【図1】本発明を適用した信号処理装置の一実施の形態の構成例を示す図である。
【図2】ノイズ検出部の構成例を示す図である。
【図3】ノイズ低減部の構成例を示す図である。
【図4】ノイズ低減処理を説明するフローチャートである。
【図5】入力信号の例を示す図である。
【図6】ブロックの代表値について説明する図である。
【図7】クリックノイズの検出について説明する図である。
【図8】クリックノイズの検出について説明する図である。
【図9】クリックノイズの検出について説明する図である。
【図10】クリックノイズの検出について説明する図である。
【図11】補間波形の生成について説明する図である。
【図12】補間波形の生成について説明する図である。
【図13】補間波形の生成について説明する図である。
【図14】補間波形の生成について説明する図である。
【図15】ノイズ低減処理を説明するフローチャートである。
【図16】補間波形の生成について説明する図である。
【図17】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【0029】
以下、図面を参照して、本発明を適用した実施の形態について説明する。
【0030】
〈第1の実施の形態〉
[信号処理装置の構成]
図1は、本発明を適用した信号処理装置の一実施の形態の構成例を示す図である。
【0031】
例えば、信号処理装置11は、周囲の音声を収音し、収音された音声を再生する録音再生装置などからなる。信号処理装置11には、マイクロホン等により収音された音声信号である入力信号が入力され、信号処理装置11は、入力された入力信号からクリックノイズを検出して除去し、クリックノイズが除去された入力信号を出力信号として出力する。
【0032】
信号処理装置11は、ノイズ検出部21およびノイズ低減部22から構成され、ノイズ検出部21およびノイズ低減部22には、入力信号が入力される。
【0033】
ノイズ検出部21は、入力された入力信号から、クリックノイズが含まれている区間を検出し、その検出結果をノイズ低減部22に供給する。ここで、クリックノイズとは、信号の時間方向のごく短い区間にエネルギが集中し、周囲の他の区間と比べてエネルギ(振幅)が大きい区間の信号をいう。
【0034】
ノイズ低減部22は、ノイズ検出部21から供給されたクリックノイズの検出結果に基づいて、必要に応じて入力された入力信号からクリックノイズを除去し、その結果得られた出力信号を出力する。
【0035】
[ノイズ検出部の構成]
また、図1のノイズ検出部21は、より詳細には、図2に示すように構成される。すなわち、ノイズ検出部21は、全波整流回路51、代表値決定部52、平均値算出部53、および判定部54から構成される。
【0036】
全波整流回路51は、入力された入力信号を絶対値化し、代表値決定部52に供給する。代表値決定部52は、全波整流回路51から供給された絶対値化後の入力信号を、所定の長さの区間からなるブロックに分割するとともに、各ブロックの代表値を算出し、平均値算出部53に供給する。例えば、ブロックに含まれる入力信号のサンプルのサンプル値の最大値が、そのブロックのサンプルのサンプル値の代表的な値を示す代表値とされる。
【0037】
平均値算出部53は、入力信号における、連続する複数ブロックからなる区間をフレームとして、代表値決定部52から供給された各ブロックの代表値を用いて、フレーム内のブロックの代表値の最大値と平均値を算出し、判定部54に供給する。判定部54は、平均値算出部53から供給されたフレームの平均値と最大値の比(割合)を求めて、その比の値に基づいて、フレーム内にクリックノイズが含まれているか否かを判定し、その判定結果をクリックノイズの検出結果としてノイズ低減部22に供給する。
【0038】
[ノイズ低減部の構成]
さらに、図1のノイズ低減部22は、図3に示すように構成される。
【0039】
すなわち、ノイズ低減部22は、ノイズ区間決定部81、過去補間波形生成部82、未来補間波形生成部83、合成部84、および置換部85から構成される。ノイズ低減部22では、ノイズ区間決定部81、過去補間波形生成部82、未来補間波形生成部83、および置換部85に入力信号が入力される。
【0040】
ノイズ区間決定部81は、判定部54から供給されたクリックノイズの検出結果を用いて、入力された入力信号からクリックノイズが含まれる区間を特定し、その特定結果を過去補間波形生成部82、未来補間波形生成部83、および置換部85に供給する。なお、以下、入力信号においてクリックノイズが含まれる区間をノイズ区間とも呼ぶこととする。
【0041】
過去補間波形生成部82は、ノイズ区間決定部81から供給された特定結果と、入力された入力信号とを用いて、入力信号におけるノイズ区間よりも時間的に過去の区間を用いて、ノイズ区間の補間に用いる過去補間波形を生成し、合成部84に供給する。
【0042】
未来補間波形生成部83は、ノイズ区間決定部81から供給された特定結果と、入力された入力信号とを用いて、入力信号におけるノイズ区間よりも時間的に未来の区間を用いて、ノイズ区間の補間に用いる未来補間波形を生成し、合成部84に供給する。
【0043】
合成部84は、過去補間波形生成部82から供給された過去補間波形と、未来補間波形生成部83から供給された未来補間波形とを合成し、その結果得られた補間波形を置換部85に供給する。置換部85は、ノイズ区間決定部81から供給された特定結果を用いて、入力された入力信号のノイズ区間を、合成部84から供給された補間波形に置き換えることでクリックノイズを除去し、これにより得られた出力信号を出力する。
【0044】
[ノイズ低減処理の説明]
次に、図4のフローチャートを参照して、信号処理装置11によるノイズ低減処理について説明する。
【0045】
ステップS11において、全波整流回路51は、入力された入力信号を全波整流、すなわち絶対値化して、代表値決定部52に供給する。
【0046】
例えば、図5の上側に示す波形の入力信号が供給された場合、図中、下側に示すように、各サンプルのサンプル値の絶対値が求められ、求められた絶対値が、全波整流後のサンプルの新たなサンプル値とされる。
【0047】
なお、図中、横軸は時間を示しており、縦軸は振幅を示している。図5の例では、入力信号の図中、中央付近のサンプルのサンプル値、つまり振幅(エネルギ)が周囲の他のサンプルのサンプル値と比較して大きく突出している。すなわち、中央付近のごく短い区間において振幅が急激に変化しており、その区間の振幅のみが周囲と比べて大きくなっている。
【0048】
このように、ある時間長をもつ波形のうち、ごく短い区間のみに大きな振幅を持つ波形がクリックノイズの波形とされる。このような波形のノイズは、プチノイズやパルスノイズとも呼ばれており、非常に耳障りなノイズとなる。
【0049】
信号処理装置11では、クリックノイズの検出にあたり、入力信号の絶対値化が行なわれるが、人間の聴感においては、振幅値の符号によりクリックノイズを認知しているわけではないため、入力信号を絶対値化しても、特にクリックノイズの検出に影響はない。なお、人間の聴感では、ある短い時間において急激にパワーが大きくなり、また急激にパワーが小さくなるという、振幅の急激な変化によりクリックノイズが認知される。
【0050】
図4のフローチャートの説明に戻り、入力信号が絶対値化されると、ステップS12において、代表値決定部52は、全波整流回路51から供給された絶対値化後の入力信号をブロック化して、各ブロックの代表値を求め、平均値算出部53に供給する。
【0051】
例えば、代表値決定部52は、図6に示すように、入力信号の時間方向に連続する4つのサンプルからなる区間を1つのブロックとする。なお、図中、1つの円は入力信号の1つのサンプルを示しており、そのサンプルの縦方向の位置は、サンプル値を示している。図6の例では、入力信号は、ブロックBK1乃至ブロックBK9の9つのブロックに分割されている。代表値決定部52は、ブロックに含まれる4つのサンプルのサンプル値のうちの最大値を、そのブロックの代表値とする。
【0052】
ステップS13において、平均値算出部53は、代表値決定部52から供給された各ブロックの代表値を用いて、フレーム内のブロックの代表値の最大値と平均値を求め、判定部54に供給する。
【0053】
例えば、図6に示すように、平均値算出部53は、入力信号における、時間方向に連続する9つのブロックBK1乃至ブロックBK9からなる区間を1つのフレームとし、そのフレームを処理対象のフレームとする。そして、平均値算出部53は、フレーム内にあるブロックBK1乃至ブロックBK9の代表値の最大値と平均値を求める。
【0054】
例えば、図6の例では、フレーム内の各ブロックの代表値のうち、ブロックBK5の代表値が最も大きいので、ブロックBK5の代表値が、そのフレームの代表値の最大値PKとされている。また、各ブロックの代表値の平均値AVCは、フレーム内の全サンプルのサンプル値の平均値AVSよりも大きい値となっている。
【0055】
ステップS14において、判定部54は、平均値算出部53から供給されたフレームごとの最大値と平均値との比を求める。例えば、処理対象のフレームにおけるブロックの代表値の最大値がPKであり、そのフレームにおけるブロックの代表値の平均値がAVCであった場合、判定部54は、最大値と平均値の比RT=(PK/AVC)を算出する。
【0056】
ステップS15において、判定部54は、求めた最大値と平均値の比RTに基づいて、処理対象のフレームにクリックノイズが含まれているか否かを判定する。具体的には、求めた比RTが、予め定められた閾値th以上である場合、処理対象のフレームにクリックノイズが含まれていると判定される。
【0057】
例えば、閾値thが「3」である場合、図6の例では、最大値PKが平均値AVCの3倍以上の値となっており、このフレームには、クリックノイズが含まれていると判定される。この場合、最大値PKを持つブロックBK5にクリックノイズが含まれているはずである。
【0058】
信号処理装置11では、入力信号のサンプルのサンプル値の平均値ではなく、ブロックの代表値の平均値を用いることで、クリックノイズの検出精度の向上が図られている。
【0059】
例えば、図7の上側に示すように、いくつかのサンプルにおいて振幅(サンプル値)が大きいが、全体として振幅の平均値の小さい入力信号が入力された場合を考える。なお、図7において、縦軸は入力信号の振幅を示しており、横軸は時間を示している。
【0060】
図7の上側に示す入力信号には、急激に振幅が変化している区間があるが、その区間の周辺にも振幅が急激に変化している区間があり、この入力信号はクリックノイズとして検出されるべきではない信号、つまり通常の音楽等の音声とされるべきものである。
【0061】
このような入力信号が処理対象とされた場合、まずこの入力信号が絶対値化される。これにより、例えば、図中、下側に示す入力信号が得られる。図中、下側に示す入力信号では、ほぼ等間隔で振幅の大きいサンプルが並んでいる。
【0062】
そして、このようにして絶対値化された入力信号が、図8に示すように、複数のブロックに分割され、1フレーム分の区間に含まれるブロックの代表値の平均値と最大値とが求められる。なお、図8において、縦軸は入力信号の振幅を示しており、横軸は時間を示している。また、図中、1つの円は入力信号の1つのサンプルを示している。図8では、入力信号における9つの連続するブロックBK21乃至ブロックBK29が1つのフレームとされており、このフレームについては、ブロックの代表値の最大値PK21と、ブロックの代表値の平均値AVC21が得られている。
【0063】
ここで、クリックノイズの検出の閾値thが「3」であるとすると、この例では、最大値と平均値の比TR=(PK21/AVC21)は、閾値th「3」以上ではないため、このフレームにはクリックノイズは含まれていないと正しく判定される。
【0064】
これに対して、最大値PK21と、フレーム内の全サンプルのサンプル値の平均値AVS21との比(PK21/AVS21)は、閾値th「3」以上となっている。そのため、この比と閾値thとの比較により、処理対象のフレームにクリックノイズが含まれているか否かを判定すると、通常の音声波形がクリックノイズであると誤判定されてしまうことになる。
【0065】
このように、ブロックの代表値の平均値と、ブロックの代表値の最大値との比を用いてクリックノイズの検出を行なうことで、フレーム内全体の波形の形状(起伏)をより正確に把握することができ、より検出精度を向上させることができる。すなわち、全体の振幅の平均値は小さいが、いくつかの区間で振幅が急激に変化するような音声信号など、クリックノイズであると誤検出されやすい入力信号についても、より確実にクリックノイズであるか否かを特定することができる。
【0066】
なお、以上においては、1フレーム内のブロックの代表値の最大値と平均値とを用いて、そのフレームにクリックノイズが含まれているかを判定すると説明したが、処理対象のフレームだけでなく、そのフレーム近傍にあるフレームを用いて判定を行なってもよい。処理対象のフレームを含む複数のフレームを用いて、クリックノイズの検出を行なえば、さらにクリックノイズの検出精度を向上させることができる。
【0067】
例えば、図9に示す音声波形の信号が、入力信号として入力されたとする。なお、図中、縦軸は振幅を示しており、横軸は時間を示している。
【0068】
図9に示される音声波形は、人が「か」と発声したものを収音して得られた音声信号の波形である。このような「t」、「k」、「p」といった子音からはじまる音声の波形は、矢印A11に示すように、一旦、クリックノイズのようにパルス状に立ち上がった後、振幅のレベルが下がり、その後、矢印A12に示すようにピッチ波形が続く波形となる。
【0069】
この波形は、「か」と発声したときの音声波形であるからクリックノイズではない。ところが、例えば、処理対象のフレームに矢印A11に示す立ち上がり部分が含まれ、矢印A12に示すピッチ波形部分が含まれない場合には、1つのフレームのみを用いてクリックノイズの検出を行なうと、誤検出が生じる恐れがある。すなわち、矢印A11に示す音声の先頭の子音部分が、クリックノイズとして検出されてしまう可能性がある。
【0070】
そこで、複数フレームのブロックの代表値を用いて、クリックノイズの検出を行なえば、さらに検出精度を向上させることができる。具体的には、例えば、図9に示す音声波形の入力信号をフレーム化した結果、入力信号が図10に示すように、3つのフレームF(n)乃至フレームF(n+2)に分割されたとする。なお、図10において、縦軸は振幅を示しており、横軸は時間を示している。また、図中、1つの円は入力信号の1つのサンプルを示している。
【0071】
図10の例では、音声波形の立ち上がり部分、つまり子音部分は、フレームF(n)に含まれており、その子音部分とピッチ波形の部分との間の部分がフレームF(n+1)に含まれ、ピッチ波形の部分がフレームF(n+2)に含まれている。なお、フレームF(n)は、入力信号において他のフレームF(n+1)およびフレームF(n+2)よりも、より過去側のフレームである。
【0072】
各フレームについて、ブロックの代表値の最大値と平均値を求めた結果、フレームF(n)では、最大値PK(n)と平均値AVC(n)、フレームF(n+1)では、最大値PK(n+1)と平均値AVC(n+1)、フレームF(n+2)では、最大値PK(n+2)と平均値AVC(n+2)が得られている。
【0073】
ここで、フレームF(n)とフレームF(n+2)では、子音部分やピッチ波形の部分の影響により、最大値PK(n)と最大値PK(n+2)はある程度大きな値となっている。これに対し、フレームF(n+1)には、振幅の大きなサンプルが含まれていないため、最大値PK(n+1)は、比較的小さい値となっている。
【0074】
また、フレームF(n)とフレームF(n+1)では、全体的に振幅の大きいサンプルが少ないため、平均値AVC(n)と平均値AVC(n+1)は比較的小さい値となっている。一方、振幅の大きいピッチ波形が含まれているフレームF(n+2)では、平均値AVC(n+2)は比較的大きな値となっている。
【0075】
いま、処理対象のフレームがフレームF(n)であるとすると、例えば、判定部54は、処理対象のフレームF(n)の最大値PK(n)と、フレームF(n)乃至フレームF(n+2)の各平均値AVC(n)乃至平均値AVC(n+2)との比を求め、それらの比と閾値thとを比較する。
【0076】
そして、PK(n)/AVC(n)≧th、かつPK(n)/AVC(n+1)≧th、かつPK(n)/AVC(n+2)≧thである場合に、処理対象のフレームF(n)には、クリックノイズが含まれていると判定される。すなわち、フレームF(n)乃至フレームF(n+2)の何れの平均値の閾値倍の値よりも、最大値PK(n)が大きい場合、連続する3フレームでは、最大値PK(n)を代表値として有するブロックの部分の振幅のみが、大きく突出している可能性が高い。そのため、このような場合には、フレームF(n)にはクリックノイズが含まれているとされる。
【0077】
また例えば、PK(n)/AVC(n)≧thは成立するが、PK(n)/AVC(n+2)<thである場合には、最大値PK(n)は、フレームF(n+2)の平均的な振幅の大きさと比較して、クリックノイズとされるほど突出して大きいわけではない。そのため、このような場合には、フレームF(n)にはクリックノイズが含まれていないとされる。
【0078】
このように、処理対象のフレームの最大値と、そのフレーム近傍の他のフレームの平均値とを比較することで、よりクリックノイズの検出精度を向上させることができる。
【0079】
なお、その他、処理対象のフレームの最大値と、そのフレーム近傍の他のフレームの最大値とを比較して、クリックノイズを検出するようにしてもよい。そのような場合、例えば、処理対象のフレームF(n)の最大値PK(n)が、最大値PK(n+1)や最大値PK(n+2)と比較して、所定の値以上大きい場合などに、フレームF(n)にクリックノイズが含まれているとされる。
【0080】
図4のフローチャートの説明に戻り、ステップS15において、フレームにクリックノイズが含まれていないと判定された場合、判定部54は、処理対象のフレームにはクリックノイズが含まれていない旨の検出結果を、ノイズ区間決定部81に供給する。
【0081】
すると、ノイズ区間決定部81は、判定部54から供給された検出結果に応じて、入力信号の処理対象のフレームをそのまま出力信号として出力するように、置換部85に指示する。置換部85は、ノイズ区間決定部81の指示に従って、入力された入力信号の処理対象のフレームの区間を、そのまま出力信号として出力し、その後、処理はステップS21へと進む。
【0082】
これに対して、ステップS15において、フレームにクリックノイズが含まれていると判定された場合、判定部54は、処理対象のフレームにクリックノイズが含まれている旨の検出結果をノイズ区間決定部81に供給し、処理はステップS16に進む。
【0083】
ここで、クリックノイズが含まれている旨の検出結果には、処理対象のフレームと、その前後に隣接するフレームとについて、フレームの各ブロックの代表値、代表値の最大値、および代表値の平均値が含まれるようにされる。
【0084】
ステップS16において、ノイズ区間決定部81は、判定部54から供給されたクリックノイズの検出結果を用いて、入力された入力信号の処理対象のフレームの区間における、クリックノイズが含まれているノイズ区間を特定する。
【0085】
例えば、図11の上側に示すように、時間的に連続する3つのフレームF(n-1)乃至フレームF(n+1)の各最大値PK(n-1)乃至最大値PK(n+1)、および平均値AVC(n-1)乃至平均値AVC(n+1)が判定部54からノイズ区間決定部81に供給されたとする。また、それらのフレームF(n-1)乃至フレームF(n+1)の各ブロックの代表値も、判定部54からノイズ区間決定部81に供給されたとする。
【0086】
なお、図11において、横軸は時間を示しており、縦軸は入力信号の振幅を示している。また、フレームF(n-1)は、入力信号において他のフレームF(n)およびフレームF(n+1)よりも、より過去側のフレームである。
【0087】
図11では、フレームF(n-1)は、6つのブロックBK(n-1)-1乃至ブロックBK(n-1)-6から構成されている。同様に、フレームF(n)は、ブロックBK(n)-1乃至ブロックBK(n)-6から構成され、フレームF(n+1)は、ブロックBK(n+1)-1乃至ブロックBK(n+1)-6から構成されている。また、処理対象のフレームF(n)では、ブロックBK(n)-4が、フレームF(n)内で最大値PK(n)となる代表値を有している。なお、図11の上側において、1つの円は絶対値化された入力信号の1つのサンプルを示しており、そのサンプルの縦方向の位置は、サンプル値を示している。
【0088】
まず、ノイズ区間決定部81は、最大値PK(n)を代表値として持つブロックBK(n)-4を含むクリックノイズのノイズ区間の開始位置、つまりノイズ区間の図中、左側の端を検出する。この場合、ノイズ区間決定部81は、処理対象のフレームF(n)の過去側に隣接するフレームF(n-1)の各ブロックの代表値の平均値AVC(n-1)の値を閾値thsとして用いる。
【0089】
そして、ノイズ区間決定部81は、クリックノイズの中心であるブロックBK(n)-4から、過去方向に、ブロックの代表値が閾値ths以下となる最初のブロックを検出し、検出されたブロックをノイズ開始ブロックとする。
【0090】
例えば、図11において、ブロックBK(n)-4の過去側に隣接するブロックBK(n)-3の代表値は、閾値thsより大きいが、さらにその過去側(図中、左側)に隣接するブロックBK(n)-2の代表値は、閾値ths以下であったとする。この場合、ブロックBK(n)-4から見て、ブロックBK(n)-2が、最初に代表値が閾値ths以下となる過去側のブロックであるから、このブロックBK(n)-2がノイズ開始ブロックとされる。
【0091】
さらに、ノイズ区間決定部81は、入力された入力信号のうち、ノイズ開始ブロックであるブロックBK(n)-2に対応する区間を参照し、その区間(ブロック)の最終サンプルから過去方向に向かって、最初にゼロクロスしているサンプルを特定する。そして、特定されたサンプルの位置が、ノイズ区間の開始位置とされる。
【0092】
例えば、図11の矢印A41に示すように、入力信号のブロックBK(n)-2に対応する区間の最も新しい時刻のサンプル、つまりその区間の最終サンプルから、そのサンプルのサンプル値と符号が反対のサンプル値を持つ、最も未来側のサンプルが特定される。
【0093】
図11では、矢印A41に示されるブロックBK(n)-2に対応する入力信号の区間が処理対象とされる。なお、図中、1つの円は入力信号の1つのサンプルを示しており、そのサンプルの縦方向の位置は、サンプル値を示している。例えば、縦方向の直線の図中、上側に円があるサンプルは、正の値をサンプル値として持つサンプルを表しており、縦方向の直線の下側に円があるサンプルは、負の値をサンプル値として持つサンプルを表している。さらに、図中、横方向は時間を示しており、特に右方向が未来方向である。
【0094】
ここで、矢印A41に示される入力信号の部分のうち、図中、右端にあるサンプルSP11が、ブロックBK(n)-2に対応する入力信号の区間の最終サンプル、つまりその区間において、最も新しい時刻のサンプルである。このサンプルSP11のサンプル値は正の値となっているので、ノイズ区間の開始位置とされるサンプルは、サンプルSP11よりも過去にあるサンプル値が負の値のサンプルであって、最もサンプルSP11に近い位置にあるサンプルである。したがって、図11では、サンプルSP11の時間的に3つ前のサンプルSP12が、ノイズ区間の開始位置にあるサンプルとされる。
【0095】
このようにして、ノイズ区間の開始位置が特定されると、次にノイズ区間決定部81は、最大値PK(n)を代表値として持つブロックBK(n)-4を含むクリックノイズのノイズ区間の終了位置、つまりノイズ区間の図中、右側の端を検出する。この場合、ノイズ区間決定部81は、処理対象のフレームF(n)の未来側に隣接するフレームF(n+1)の各ブロックの代表値の平均値AVC(n+1)の値を閾値theとして用いる。
【0096】
ノイズ区間決定部81は、クリックノイズの中心であるブロックBK(n)-4から、未来方向に、ブロックの代表値が閾値the以下となる最初のブロックを検出し、検出されたブロックをノイズ終了ブロックとする。
【0097】
例えば、図11において、ブロックBK(n)-4の未来側に隣接するブロックBK(n)-5の代表値は、閾値theより大きいが、さらにその未来側(図中、右側)に隣接するブロックBK(n)-6の代表値は、閾値the以下であったとする。この場合、ブロックBK(n)-4から見て、ブロックBK(n)-6が、最初に代表値が閾値the以下となる未来側のブロックであるから、このブロックBK(n)-6がノイズ終了ブロックとされる。
【0098】
さらに、ノイズ区間決定部81は、入力された入力信号のうち、ノイズ終了ブロックであるブロックBK(n)-6に対応する区間を参照し、その区間(ブロック)の先頭サンプルから未来方向に向かって、最初にゼロクロスしているサンプルを特定する。そして、特定されたサンプルの位置が、ノイズ区間の終了位置とされる。
【0099】
例えば、図11の矢印A42に示すように、入力信号のブロックBK(n)-6に対応する区間の最も古い時刻のサンプル、つまり先頭サンプルSP21から、そのサンプルSP21のサンプル値と符号が反対のサンプル値を持つ、最も過去側のサンプルが特定される。
【0100】
図11では、矢印A42に示される入力信号の部分のうち、図中、左端にあるサンプルSP21が、ブロックBK(n)-6に対応する入力信号の区間の先頭サンプルである。このサンプルSP21のサンプル値は正の値となっているので、ノイズ区間の終了位置とされるサンプルは、サンプルSP21よりも未来側にあるサンプル値が負の値のサンプルであって、最もサンプルSP21に近い位置にあるサンプルである。したがって、図11では、サンプルSP21の次のサンプルSP22が、ノイズ区間の終了位置にあるサンプルとされる。
【0101】
以上のようにして特定された、開始位置から終了位置までの区間、すなわちサンプルSP12からサンプルSP22までの区間がノイズ区間NZとされる。なお、このノイズ区間NZの長さを、特に補間長と呼ぶこととする。
【0102】
このように、信号処理装置11では、処理対象のフレームF(n)の前後のフレームの平均値が閾値として用いられ、これらの閾値より大きい代表値を持つブロックからなる区間が、ノイズ区間NZとされる。
【0103】
例えば、処理対象のフレームF(n)の前後のフレームにクリックノイズが含まれていないとすると、フレームF(n)の前後のフレームの代表値の平均値は、入力信号におけるフレームF(n)近傍の大きい振幅の平均的な値を示している。クリックノイズ部分の各ブロックの代表値は、これらの平均値よりも大きいはずであるから、これらの平均値よりも大きい代表値を持つブロックが連続して並ぶ区間は、クリックノイズの区間となるはずである。このように、処理対象のフレームF(n)の前後のフレームの平均値を閾値として用いれば、より正確にクリックノイズの区間を特定することができる。
【0104】
なお、ノイズ区間の長さが2のべき乗の値となるように、ノイズ区間が定められるようにしてもよい。
【0105】
そのような場合、上述したノイズ開始位置からノイズ終了位置、つまりサンプルSP12からサンプルSP22までのサンプル数が2のべき乗の値であれば、サンプルSP12からサンプルSP22までの区間が、そのままノイズ区間とされる。
【0106】
一方、サンプルSP12からサンプルSP22までのサンプル数が、2のべき乗の値でない場合、サンプルSP12からサンプルSP22までのサンプル数より大きい2のべき乗の値のうち、最小の値がノイズ区間の長さとされる。例えば、サンプルSP12からサンプルSP22までのサンプル数が「368」であった場合、「368」は、2のべき乗の値ではないので、この「368」より大きく、かつ最も小さい2のべき乗の値である「512」がノイズ区間の長さとされる。
【0107】
また、ノイズ区間の長さが、2のべき乗の値とされる場合、ノイズ区間の開始位置は、サンプルSP12の位置、つまりノイズ開始ブロックの端から、最初にゼロクロスするサンプルの位置とされる。したがって、ノイズ区間の終了位置は、サンプルSP12の位置を開始位置とする、2のべき乗の値とされた長さの区間の終端にあるサンプル位置となる。
【0108】
このように、ノイズ区間の長さを、サンプルSP12からサンプルSP22までのサンプル数以上である2のべき乗の値のうち、最小の値とすることで、後段における補間処理の計算量を低減させることができる。具体的には、例えば後述するステップS19の処理、つまり過去補間波形と未来補間波形のクロスフェード時の重み計算を、掛け算とシフト演算のみで実現することができる。
【0109】
また、以上においては、ノイズ開始ブロックとノイズ終了ブロックにおいて、ブロックの端から、最初にゼロクロスするサンプルを特定することで、正確なノイズ開始位置とノイズ終了位置を特定すると説明したが、このような処理を行なわないようにしてもよい。そのような場合、例えば、ノイズ開始ブロックの先頭のサンプルがノイズ区間の開始位置とされ、ノイズ終了ブロックの最後のサンプルがノイズ区間の終了位置とされる。
【0110】
このように、ゼロクロス点の探索処理を省略し、ブロック単位での補間を行なえば、演算量を少なくし、より迅速にノイズ区間を特定することができる。この場合、ノイズ区間の開始位置と終了位置がゼロクロス点ではなくなることがあるため、ノイズ区間の補間によって多少の直流成分が発生する可能性はあるが、音質の劣化が問題となる可能性は殆どない。
【0111】
図4のフローチャートの説明に戻り、ノイズ区間NZが特定されると、ノイズ区間決定部81は、特定されたノイズ区間NZを示す情報、例えば、ノイズ区間NZの開始位置と終了位置を示す情報を、過去補間波形生成部82、未来補間波形生成部83、および置換部85に供給する。そして、その後、処理はステップS16からステップS17に進む。
【0112】
ステップS17において、過去補間波形生成部82は、ノイズ区間決定部81から供給されたノイズ区間NZを示す情報を用いて、ノイズ開始位置よりも過去の補間長のサンプルから、過去補間波形を生成し、合成部84に供給する。
【0113】
例えば、図11の矢印A43に示す波形の入力信号が入力された場合、過去補間波形生成部82は、入力信号におけるノイズ区間NZの直前の補間長の区間PRを抽出して、時間反転させることで、過去補間波形PSを生成する。
【0114】
すなわち、入力信号の区間PRは、ノイズ区間NZに対して過去側に隣接する区間、つまりノイズ区間NZの図中、左側に隣接する区間である。また、区間PRは、ノイズ区間NZと同じ長さの区間である。したがって、この区間PRの図中、右端の位置は、矢印A41に示すサンプルSP12の図中、左に隣接するサンプルの位置となる。また、過去補間波形PSは、入力信号の区間PRを時間反転させたものであるから、サンプルSP12の左側に隣接するサンプルが、過去補間波形PSの図中、左端のサンプルとなる。逆に区間PRの図中、左端のサンプルが、過去補間波形PSの右端のサンプルとなる。
【0115】
ステップS18において、未来補間波形生成部83は、ノイズ区間決定部81から供給されたノイズ区間NZを示す情報を用いて、ノイズ終了位置よりも未来の補間長のサンプルから、未来補間波形を生成し、合成部84に供給する。
【0116】
例えば、図11の矢印A43に示す波形の入力信号が入力された場合、未来補間波形生成部83は、入力信号におけるノイズ区間NZの直後の補間長の区間FRを抽出して、時間反転させることで、未来補間波形FSを生成する。
【0117】
すなわち、入力信号の区間FRは、ノイズ区間NZに対して未来側に隣接する区間、つまりノイズ区間NZの図中、右側に隣接する区間である。また、区間FRは、ノイズ区間NZと同じ長さの区間である。したがって、この区間FRの図中、左端の位置は、矢印A42に示すサンプルSP22の図中、右に隣接するサンプルの位置となる。また、未来補間波形FSは、入力信号の区間FRを時間反転させたものであるから、サンプルSP22の右側に隣接するサンプルが、未来補間波形FSの図中、右端のサンプルとなる。逆に区間FRの図中、右端のサンプルが、未来補間波形FSの左端のサンプルとなる。
【0118】
このように、入力信号におけるノイズ区間NZの前後の補間長の区間を用いて、ノイズ区間NZの補間に用いられる波形を生成することにより、補間後の入力信号におけるノイズ区間NZ近傍のパワーをほぼ同じ大きさにすることができる。これにより、違和感のない自然な波形を得ることができる。
【0119】
また、補間に用いるノイズ区間NZの前後の入力信号の区間を時間反転させることで、過去補間波形PSの最初のサンプルおよび未来補間波形FSの最後のサンプルと、入力信号におけるノイズ区間直前のサンプルおよびノイズ区間直後のサンプルとが、それぞれ元の入力信号の同じサンプルとなる。したがって、過去補間波形PSと未来補間波形FSを用いて、ノイズ区間の補間を行なえば、補間される波形と、入力信号におけるノイズ区間境界の波形との接続を、さらに自然な違和感のないものとすることができる。
【0120】
図4のフローチャートの説明に戻り、ステップS19において、合成部84は、過去補間波形生成部82から供給された過去補間波形PSと、未来補間波形生成部83から供給された未来補間波形FSとをクロスフェードし、補間波形を生成する。
【0121】
具体的には、合成部84は、過去補間波形PSの各サンプルのサンプル値に、図11の矢印A44に示す重みを乗算するとともに、未来補間波形FSの各サンプルのサンプル値に、矢印A45に示す重みを乗算し、過去補間波形PSと未来補間波形FSを合成する。
【0122】
図11の例では、過去補間波形PSの図中、左端のサンプルに乗算される重みは「1」とされ、過去補間波形PSの右端のサンプルに乗算される重みは「0」とされている。また、過去補間波形PSの各サンプルに乗算される重みは、図中、右側のサンプルの重みほど小さくなるように定められている。
【0123】
逆に、未来補間波形FSの図中、右端のサンプルに乗算される重みは「1」とされ、未来補間波形FSの左端のサンプルに乗算される重みは「0」とされている。また、未来補間波形FSの各サンプルに乗算される重みは、図中、左側のサンプルの重みほど小さくなるように定められている。
【0124】
合成部84は、このような重みが乗算された過去補間波形PSの各サンプルのサンプル値と、それらのサンプルと同じ位置にある、重みが乗算された未来補間波形FSのサンプルのサンプル値との和を求めることで、補間波形HSを生成する。例えば、過去補間波形PSの図中、右端のサンプルの重みが乗算されたサンプル値と、未来補間波形FSの右端のサンプルの重みが乗算されたサンプル値との和が、補間波形HSの右端のサンプルのサンプル値とされる。
【0125】
図4のフローチャートの説明に戻り、合成部84は、補間波形HSを生成すると、生成した補間波形HSを置換部85に供給し、処理はステップS19からステップS20へと進む。
【0126】
ステップS20において、置換部85は、ノイズ区間決定部81から供給されたノイズ区間NZを示す情報を用いて、入力された入力信号のノイズ区間NZを、合成部84から供給された補間波形HSに置き換えてクリックノイズを低減させる。
【0127】
例えば、図11の矢印A46に示す波形の入力信号が入力された場合、置換部85は、ノイズ区間NZを補間波形HSに置き換えることで、入力信号からクリックノイズを除去し、その結果得られた信号を出力信号として、後段に出力する。
【0128】
ステップS20においてノイズの除去が行なわれたか、またはステップS15において、クリックノイズが含まれていないと判定された場合、ステップS21において、信号処理装置11は、処理を終了するか否かを判定する。例えば、入力信号の全区間を対象としてクリックノイズの除去が行なわれた場合、処理を終了すると判定される。
【0129】
ステップS21において、処理を終了しないと判定された場合、処理はステップS11に戻り、上述した処理が繰り返される。すなわち、次のフレームが処理対象とされ、そのフレームについて、クリックノイズの検出と除去が行なわれる。
【0130】
これに対して、ステップS21において、処理を終了すると判定された場合、ノイズ低減処理は終了する。
【0131】
このようにして、信号処理装置11は、入力信号を複数のブロックに分割し、各ブロックの代表値を求めて、フレームを構成するブロックの代表値の平均値と最大値の比から、クリックノイズを検出する。そして、信号処理装置11は、入力信号のクリックノイズ区間を特定し、そのノイズ区間前後にある、ノイズ区間と同じ長さの区間を用いて補間波形を生成してクリックノイズの除去を行なう。
【0132】
このように、ブロックごとに代表値を算出し、複数ブロックからなるフレームにおける代表値の平均値と最大値の比を求めて、クリックノイズを検出することで、より簡単に、かつ少ない演算量で、より確実にクリックノイズを検出することができる。これにより、より確実に入力信号からクリックノイズを除去することができ、聴感上、違和感のない自然な音声を得ることができる。
【0133】
なお、より詳細には、過去補間波形または未来補間波形の生成時において、ノイズ区間の開始位置または終了位置のサンプルの前後にあるサンプルの符号が異なる場合には、補間に用いる入力信号の区間のサンプル群のサンプル値の符号が反転される。
【0134】
具体的には、例えば、図12の上側に示すように、入力信号のサンプルSP41がクリックノイズのピークとなるサンプルであり、サンプルSP42がノイズ区間の開始位置となるサンプルであるとする。
【0135】
なお、図12中、1つの円は入力信号の1つのサンプルを示しており、そのサンプルの縦方向の位置は、サンプル値を示している。例えば、縦方向の直線の図中、上側に円があるサンプルは、正の値をサンプル値として持つサンプルを表しており、縦方向の直線の下側に円があるサンプルは、負の値をサンプル値として持つサンプルを表している。さらに、図中、横方向は時間を示しており、特に右方向が未来方向である。
【0136】
図12の上側に示す入力信号では、サンプルSP42から図中、右側の部分がノイズ区間とされ、この区間が補間波形に置き換えられることになる。また、補間波形の生成に用いられる過去補間波形は、ノイズ区間の開始位置にあるサンプルSP42の左隣にあるサンプルSP43を含む、ノイズ区間よりも過去、つまり図中、左側にある区間のサンプルから生成される。
【0137】
このとき、過去補間波形生成部82は、サンプルSP42の時間的に前後にあるサンプルSP43とサンプルSP44のサンプル値の符号が同じであるか否かを判定し、過去補間波形を生成する。例えば、図12の例では、サンプルSP42の両側に隣接するサンプルSP43とサンプルSP44のサンプル値の符号は異なる。
【0138】
そこで、過去補間波形生成部82は、図中、中央に示すように、入力信号の矩形K11で囲まれる部分、つまりサンプルSP43を図中、右側の端とする補間長(ノイズ区間長)の長さの区間を切り出して時間反転する。さらに、過去補間波形生成部82は、矩形K11で囲まれる入力信号を時間反転して得られた波形の各サンプルのサンプル値の符号を反転させ、過去補間波形とする。これにより、図12の下側に示すように、矩形K12に囲まれる波形の過去補間波形が得られる。
【0139】
図12の下側では、得られた過去補間波形が、入力信号のノイズ区間と置き換えられて、矩形K11の部分の右側に配置されている。例えば、矩形K12に囲まれる過去補間波形の図中、左端のサンプルのサンプル値は、過去補間波形の生成に用いられる、矩形K11内の右端のサンプルSP43のサンプル値の符号を反転させた値である。
【0140】
このように、ノイズ区間の開始位置にあるサンプルSP42の前後のサンプルのサンプル値の符号が異なる場合、過去補間波形の生成時に、過去補間波形に用いる入力信号の区間のサンプルのサンプル値の符号が反転される。これにより、図12の下側に示すように、入力信号のノイズ区間を過去補間波形に置き換えたときに、ノイズ区間の開始位置の境界部分、すなわち入力信号と過去補間波形との接続部分が滑らかになる。その結果、過去補間波形と未来補間波形をクロスフェードして得られる補間波形を、ノイズ区間に配置した場合に、違和感のない自然な波形の信号を得ることができる。
【0141】
これに対して、例えば、図13の上側に示すように、ノイズ区間の開始位置のサンプル前後にあるサンプルのサンプル値の符号が、同じであった場合、過去補間波形生成時に、サンプル値の符号の反転は行なわれない。
【0142】
なお、図13においても、図12における場合と同様に、図中、1つの円は入力信号の1つのサンプルを示しており、横方向は時間を示している。
【0143】
図13の上側に示す例では、入力信号のサンプルSP61がクリックノイズのピークとなるサンプルであり、サンプルS62がノイズ区間の開始位置となるサンプルである。また、この入力信号では、サンプルSP62から図中、右側の部分がノイズ区間とされ、この区間が補間波形に置き換えられることになる。さらに、補間波形の生成に用いられる過去補間波形は、ノイズ区間の開始位置にあるサンプルSP62の左隣にあるサンプルSP63を含む、ノイズ区間よりも左側にある区間のサンプルから生成される。
【0144】
このとき、過去補間波形生成部82は、サンプルSP62の時間的に前後にあるサンプルSP63とサンプルSP64のサンプル値の符号が同じであるか否かを判定する。例えば、図13の例では、サンプルSP62の両側に隣接するサンプルSP63とサンプルSP64のサンプル値の符号は同じである。
【0145】
そこで、過去補間波形生成部82は、図中、中央に示すように、入力信号の矩形K31で囲まれる部分、つまりサンプルSP63を図中、右側の端とする補間長の長さの区間を切り出して時間反転し、過去補間波形とする。これにより、図13の下側に示すように、矩形K32に囲まれる波形の過去補間波形が得られる。
【0146】
図13の下側では、得られた過去補間波形が、入力信号のノイズ区間と置き換えられて、矩形K31の部分の右側に配置されている。例えば、矩形K32に囲まれる過去補間波形の図中、左端のサンプルのサンプル値は、過去補間波形の生成に用いられる、矩形K31内の右端のサンプルSP63のサンプル値である。
【0147】
このように、ノイズ区間の開始位置にあるサンプルSP62の前後のサンプルのサンプル値の符号が同じである場合、過去補間波形の生成時に、過去補間波形に用いる入力信号の区間のサンプルのサンプル値の符号の反転は行なわれない。これにより、図13の下側に示すように、入力信号のノイズ区間を過去補間波形に置き換えたときに、ノイズ区間の開始位置の境界部分、すなわち入力信号と過去補間波形との接続部分が滑らかになる。その結果、過去補間波形と未来補間波形をクロスフェードして得られる補間波形を、ノイズ区間に配置した場合に、違和感のない自然な波形の信号を得ることができる。
【0148】
なお、過去補間波形と同様に、未来補間波形生成時においても、ノイズ終了位置の前後にあるサンプルのサンプル値の符号が異なる場合には、未来補間波形に用いる各サンプルのサンプル値の符号の反転が行なわれる。
【0149】
また、以上においては、ブロック内のサンプルのサンプル値の最大値を、ブロックの代表値とすると説明したが、代表値は、ブロック内の所定の条件を満たすサンプルのサンプル値から算出するなど、どのように定めてもよい。例えば、ブロック内の全サンプルのサンプル値を重み付き加算して代表値としてもよいし、ブロック内のサンプルから、サンプル値の大きい順に所定数のサンプルを選択して、それらのサンプルのサンプル値の平均値を代表値とするようにしてもよい。
【0150】
〈第2の実施の形態〉
さらに、以上においては、ノイズ区間を補間波形で置き換えることにより、相関のような計算量コストの高い手法を利用せずに、少ない演算量で自然なクリックノイズ低減を実現する方法について説明した。ところが、この方法では、得られた出力信号を再生すると、補間波形への置き換えが行なわれたノイズ区間の端付近において、出力信号の波形が不連続であるかのような音になってしまう場合があった。
【0151】
具体的には、図14の上側の矢印A61に示す入力信号が信号処理装置11に入力され、入力信号における区間NZ31がノイズ区間(以下、ノイズ区間NZ31と称する)として検出されたとする。
【0152】
なお、図14において、横軸は時間を示しており、縦軸は入力信号の振幅を示している。また、図14中、1つの円は入力信号の1つのサンプルを示しており、そのサンプルの縦方向の位置は、サンプル値を示している。特に、縦方向の直線の図中、上側に円があるサンプルは正の値をサンプル値として持つサンプルを表しており、縦方向の直線の図中、下側に円があるサンプルは負の値をサンプル値として持つサンプルを表している。
【0153】
矢印A61に示すように、入力信号からノイズ区間NZ31が検出された場合、図4のノイズ低減処理では、入力信号におけるノイズ区間NZ31直前にある補間長の区間PR21が時間方向に反転されて、矢印A62に示すように過去補間波形が生成される。また、同様にして、入力信号におけるノイズ区間NZ31直後にある補間長の区間FR21が時間方向に反転されて、矢印A63に示すように未来補間波形が生成される。
【0154】
そして、矢印A64に示すように、入力信号のノイズ区間NZ31が、過去補間波形と未来補間波形をクロスフェードして得られた補間波形HS21に置き換えられて、クリックノイズの除去が行なわれる。
【0155】
このようなノイズ除去方法では、ノイズ区間NZ31への距離の近さに応じた重み付けを行ないながら、過去補間波形と未来補間波形とから最終的な補間波形HS21を生成することで、ノイズ区間NZ31における波形の不自然さが低減される。また、この方法は、ノイズ区間NZ31の開始位置と終了位置において、原理的にサンプル値が不連続になってしまうことがないため、明らかな違和感や異音が発生しにくい方法であるといえる。
【0156】
しかしながら、入力信号のノイズ区間NZ31の前後に低い周波数の波形が存在する場合には、出力信号のノイズ区間NZ31の前後において折り返した波形が明確に現れ、その折り返し箇所が高い周波数成分を持つ。そのため、出力信号を再生すると、結果として出力信号の波形が不連続であるかのような音になってしまう場合がある。
【0157】
図14の例では、図中、上側の矢印A61に示す入力信号における、ノイズ区間NZ31の開始位置近傍の区間E11は、低い周波数の正弦波のような波形の信号となっている。ところが、ノイズ低減後の矢印A64に示す出力信号では、ノイズ低減処理におけるノイズ区間開始位置での折り返しにより、区間E11と同じ位置にある区間E12は、高い周波数成分を持つ波形の信号となっており、本来なかった音が聞えてしまう恐れがある。
【0158】
同様に、ノイズ区間終了位置近傍の区間E13も、高い周波数成分を持つ波形の信号となっている。これは、クリックノイズを除去するにあたり、ノイズ区間開始位置とノイズ区間終了位置において考慮すべき連続性のうち、サンプル値の連続性だけが考慮されているために生じる。
【0159】
[ノイズ低減処理の説明]
そこで、出力信号の補間部分の波形がより滑らかな波形となるように、ノイズ低減処理を行うようにしてもよい。以下、図15および図16を参照して、そのような場合におけるノイズ低減処理について説明する。
【0160】
図15は、信号処理装置11により行なわれるノイズ低減処理を説明するフローチャートである。なお、図15のノイズ低減処理のステップS51乃至ステップS56においては、入力信号からノイズ区間が検出されるが、これらの処理は、図4のステップS11乃至ステップS16の処理と同様であるため、その説明は省略する。
【0161】
ステップS57において、過去補間波形生成部82は、ノイズ区間決定部81から供給されたノイズ区間を示す情報を用いて、ノイズ開始位置よりも過去の補間長のサンプルから過去補間波形を生成し、合成部84に供給する。
【0162】
例えば、図16の矢印A81に示す波形の入力信号が入力された場合、過去補間波形生成部82は、入力信号におけるノイズ区間NZ41の直前の補間長の区間PR31を抽出して、過去補間波形とする。
【0163】
なお、図16において、横軸は時間を示しており、縦軸は入力信号の振幅を示している。また、図16中、1つの円は入力信号の1つのサンプルを示しており、そのサンプルの縦方向の位置は、サンプル値を示している。特に、縦方向の直線の図中、上側に円があるサンプルは正の値をサンプル値として持つサンプルを表しており、縦方向の直線の図中、下側に円があるサンプルは負の値をサンプル値として持つサンプルを表している。
【0164】
図16の例では、過去補間波形とされる区間PR31は、図中、ノイズ区間NZ41の左側、つまり過去側に隣接する、ノイズ区間NZ41と同じ長さの区間とされている。
【0165】
ステップS58において、未来補間波形生成部83は、ノイズ区間決定部81から供給されたノイズ区間を示す情報を用いて、ノイズ終了位置よりも未来の補間長のサンプルから未来補間波形を生成し、合成部84に供給する。
【0166】
例えば、図16の矢印A81に示す波形の入力信号が入力された場合、未来補間波形生成部83は、入力信号におけるノイズ区間NZ41の直後の補間長の区間FR31を抽出して、未来補間波形とする。
【0167】
このように、図15のノイズ低減処理においては、過去補間波形および未来補間波形の生成時に、抽出された補間長のサンプルの時間反転は行なわれない。また、過去補間波形とされる区間PR31や、未来補間波形とされる区間FR31は、ノイズ区間NZ41に隣接する区間でなくてもよい。
【0168】
ステップS59において、合成部84は、過去補間波形生成部82から供給された過去補間波形と、未来補間波形生成部83から供給された未来補間波形とをクロスフェードして、補間波形を生成する。
【0169】
このステップS59では、図4のステップS19と同様の処理が行なわれる。すなわち、重みが乗算された過去補間波形と未来補間波形のサンプル値の和が求められ、得られた値が補間波形のサンプルのサンプル値とされる。
【0170】
例えば、過去補間波形の各サンプルに乗算される重みは、未来側のサンプルの重みほど小さい値とされ、最も過去側のサンプルの重みが「1」、最も未来側のサンプルの重みが「0」とされる。逆に、未来補間波形の各サンプルに乗算される重みは、未来側のサンプルの重みほど大きい値とされ、最も過去側のサンプルの重みが「0」、最も未来側のサンプルの重みが「1」とされる。
【0171】
合成部84により補間波形が生成されて置換部85に供給されると、処理はステップS59からステップS60に進む。
【0172】
ステップS60において、置換部85はノイズ区間決定部81から供給されたノイズ区間を示す情報を用いて、入力された入力信号のノイズ区間を、合成部84からの補間波形に置き換えることで、入力信号のクリックノイズを低減させる。
【0173】
例えば、図16の矢印A82に示す入力信号が入力された場合、置換部85は、ノイズ区間NZ41を補間波形HS31に置き換えることで、入力信号からクリックノイズを除去する。
【0174】
このように、単にノイズ区間NZ41を補間波形HS31に置き換えた状態では、入力信号のノイズ開始位置近傍の境界区間PS11と、ノイズ終了位置近傍の境界区間FS11において、明らかな波形の不連続(サンプル値のジャンプ)が発生している。ここで、境界区間PS11は、ノイズ開始位置を含む区間であり、境界区間FS11は、ノイズ終了位置を含む区間である。
【0175】
そこで、置換部85は、クロスフェードにより生成した新たな波形により、これらの境界区間PS11と境界区間FS11の近傍の波形の置き換えを行なって、出力信号における波形の不連続性の発生を防止する。
【0176】
すなわち、ステップS61において、置換部85は、補間波形による置き換えで得られた入力信号、つまりステップS60の処理により得られた入力信号のノイズ開始位置に隣接する区間の波形の置き換えを行なう。
【0177】
具体的には、図16の矢印A83に示すように、置換部85は、入力信号におけるノイズ開始位置に対して過去側に隣接する、所定の長さの短い区間を区間BP11とする。すなわち、区間BP11は、ノイズ区間NZ41の直前の区間である。
【0178】
次に、置換部85は、入力信号における区間BP11よりも時間的に前(過去)にある、区間BP11と同じ長さの所定区間を区間MP11とする。図16の例では、区間MP11は、過去補間波形とされる区間PR31の直前の区間とされている。
【0179】
そして、置換部85は、入力信号の区間BP11の波形と区間MP11の波形とをクロスフェードし、矢印A84に示すように、入力信号の区間BP11をクロスフェードにより得られた波形HP11に置き換えることで、波形の不連続性を解消させる。
【0180】
例えば、クロスフェード時において、区間BP11の各サンプルに乗算される重みは、未来側のサンプルの重みほど小さい値とされ、最も過去側のサンプルの重みが「1」、最も未来側のサンプルの重みが「0」とされる。逆に、区間MP11の各サンプルに乗算される重みは、未来側のサンプルの重みほど大きい値とされ、最も過去側のサンプルの重みが「0」、最も未来側のサンプルの重みが「1」とされる。
【0181】
これにより、波形HP11への置き換え後の入力信号の区間BP11近傍においては、区間MP11の終了位置近傍の波形と、区間PR31の開始位置近傍の波形とが滑らかに繋がっている状態となり、波形の不連続性が解消される。その結果、出力信号の音声を聴感上、違和感のない自然な音声とすることができる。
【0182】
具体的には、補間波形HS31の生成時において、区間PR31の図中、左端のサンプルに乗算される重みは「1」であり、区間FR31の図中、左端のサンプルに乗算される重みは「0」である。したがって、補間波形HS31の図中、左端のサンプルは、区間PR31の左端のサンプルと同じとなる。
【0183】
一方、波形HP11の生成時において、区間MP11の図中、右端のサンプルに乗算される重みは「1」であり、区間BP11の図中、右端のサンプルに乗算される重みは「0」である。したがって、波形HP11の図中、右端のサンプルは、区間MP11の右端のサンプルと同じとなる。
【0184】
このようにして得られた波形HP11が、補間波形HS31の直前に配置されると、波形HP11と補間波形HS31の境界部分では、元の入力信号において隣接していた区間MP11の右端のサンプルと、区間PR31の左端のサンプルが並ぶことになる。つまり、入力信号の区間BP11を波形HP11で置き換えることにより、ノイズ区間NZ41の開始位置近傍の波形が滑らかで自然な波形となる。
【0185】
図15のフローチャートの説明に戻り、ステップS62において、置換部85は、ステップS61の処理により得られた入力信号のノイズ終了位置に隣接する区間の波形の置き換えを行なう。
【0186】
具体的には、図16の矢印A83に示すように、置換部85は、入力信号におけるノイズ終了位置に対して未来側に隣接する、長さの短い区間を区間BF11とする。図16の例では、区間BF11は、ノイズ区間NZ41の直後の区間とされている。
【0187】
次に、置換部85は、入力信号における区間BF11よりも時間的に後(未来)にある、区間BF11と同じ長さの所定区間を区間MF11とする。図16の例では、区間MF11は、未来補間波形とされる区間FR31の直後の区間とされている。
【0188】
そして、置換部85は、入力信号の区間BF11の波形と区間MF11の波形とをクロスフェードし、矢印A84に示すように、入力信号の区間BF11をクロスフェードにより得られた波形HF11に置き換えることで、波形の不連続性を解消させる。
【0189】
例えば、クロスフェード時において、区間BF11の各サンプルに乗算される重みは、未来側のサンプルの重みほど大きい値とされ、最も過去側のサンプルの重みが「0」、最も未来側のサンプルの重みが「1」とされる。逆に、区間MF11の各サンプルに乗算される重みは、未来側のサンプルの重みほど小さい値とされ、最も過去側のサンプルの重みが「1」、最も未来側のサンプルの重みが「0」とされる。
【0190】
これにより、波形HF11への置き換え後の入力信号の区間BF11近傍においては、区間BP11の場合と同様に、区間MF11の開始位置近傍の波形と、区間FR31の終了位置近傍の波形とが滑らかに繋がっている状態となる。その結果、波形の不連続性が解消され、出力信号の音声が聴感上、違和感のない自然な音声となる。
【0191】
置換部85は、以上の処理により得られた入力信号を、出力信号として後段に出力する。
【0192】
図15のフローチャートの説明に戻り、ステップS62において波形の置き換えが行なわれたか、またはステップS55においてクリックノイズが含まれていないと判定された場合、処理はステップS63に進む。
【0193】
ステップS63において、信号処理装置11は、処理を終了するか否かを判定する。例えば、入力信号の全区間を対象としてクリックノイズの除去が行なわれた場合、処理を終了すると判定される。
【0194】
ステップS63において、処理を終了しないと判定された場合、処理はステップS51に戻り、上述した処理が繰り返される。これに対して、ステップS63において、処理を終了すると判定された場合、ノイズ低減処理は終了する。
【0195】
以上のようにして、信号処理装置11は、入力信号のノイズ区間を補間波形に置き換えた後、ノイズ区間に隣接する区間と、補間波形の生成に用いた区間に隣接する区間とから、新たな波形を生成し、ノイズ区間に隣接する区間を新たに生成した波形に置き換える。これにより、滑らかに補間波形を接続して波形の不連続性の発生を防止し、聴感上、違和感のない音声を得ることができる。
【0196】
図15のノイズ低減処理では、図4の場合と比べて若干計算量が増えるが、図15のノイズ低減処理によれば、波形の不連続性を保ったままノイズ区間の補間を行い、さらにノイズ区間の境界部分の補間を行なうので、より違和感のないノイズ低減を実現することが可能となる。
【0197】
なお、図16のノイズ区間NZ41に隣接する区間BP11と区間BF11は、ノイズ区間NZ41の長さを超えない長さの区間であれば、どのような長さの区間であってもよいが、音声に違和感が発生しない程度に、できるだけ短い長さとされることが望ましい。また、区間BP11と区間BF11は、それぞれ異なる長さの区間とされてもよい。
【0198】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0199】
図17は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【0200】
コンピュータにおいて、CPU(Central Processing Unit)301,ROM(Read Only Memory)302,RAM(Random Access Memory)303は、バス304により相互に接続されている。
【0201】
バス304には、さらに、入出力インターフェース305が接続されている。入出力インターフェース305には、キーボード、マウス、マイクロホンなどよりなる入力部306、ディスプレイ、スピーカなどよりなる出力部307、ハードディスクや不揮発性のメモリなどよりなる記録部308、ネットワークインターフェースなどよりなる通信部309、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア311を駆動するドライブ310が接続されている。
【0202】
以上のように構成されるコンピュータでは、CPU301が、例えば、記録部308に記録されているプログラムを、入出力インターフェース305及びバス304を介して、RAM303にロードして実行することにより、上述した一連の処理が行われる。
【0203】
コンピュータ(CPU301)が実行するプログラムは、例えば、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア311に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【0204】
そして、プログラムは、リムーバブルメディア311をドライブ310に装着することにより、入出力インターフェース305を介して、記録部308にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部309で受信し、記録部308にインストールすることができる。その他、プログラムは、ROM302や記録部308に、あらかじめインストールしておくことができる。
【0205】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0206】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【0207】
11 信号処理装置, 21 ノイズ検出部, 22 ノイズ低減部, 52 代表値決定部, 53 平均値算出部, 54 判定部, 81 ノイズ区間決定部, 82 過去補間波形生成部, 83 未来補間波形生成部, 84 合成部, 85 置換部

【特許請求の範囲】
【請求項1】
音声信号を絶対値化する絶対値化手段と、
絶対値化された前記音声信号の連続するいくつかのサンプルからなる区間をブロックとして、前記ブロック内のサンプルのサンプル値のうち、少なくとも最大のサンプル値を用いて、前記ブロックのサンプルのサンプル値の代表的な値を示す代表値を算出する代表値算出手段と、
連続する所定数のブロックからなる区間をフレームとして、前記フレームを構成する前記ブロックの前記代表値の最大値と、前記フレームを構成する前記ブロックの前記代表値の平均値とを算出する平均値算出手段と、
前記最大値と前記平均値の比に基づいて、前記フレームからクリックノイズを検出する検出手段と
を備える信号処理装置。
【請求項2】
前記代表値算出手段は、前記ブロック内のサンプルのサンプル値のうち、最大のサンプル値を前記代表値とする
請求項1に記載の信号処理装置。
【請求項3】
前記検出手段は、前記最大値と前記平均値の比が、予め定められた閾値以上である場合、前記フレームに前記クリックノイズが含まれているとする
請求項2に記載の信号処理装置。
【請求項4】
前記検出手段は、処理対象のフレームの前記最大値および前記平均値と、前記処理対象のフレーム近傍の他のフレームの前記最大値または前記平均値とを用いて、前記処理対象のフレームから前記クリックノイズを検出する
請求項2に記載の信号処理装置。
【請求項5】
前記音声信号の前記クリックノイズが含まれるノイズ区間よりも過去側にあり、前記ノイズ区間と同じ長さの前記音声信号の区間の第1の波形を用いて、前記ノイズ区間の補間に用いる過去補間波形を生成する過去補間波形生成手段と、
前記音声信号の前記ノイズ区間よりも未来側にあり、前記ノイズ区間と同じ長さの前記音声信号の区間の第2の波形を用いて、前記ノイズ区間の補間に用いる未来補間波形を生成する未来補間波形生成手段と、
前記過去補間波形と前記未来補間波形とをクロスフェードして補間波形を生成する補間波形生成手段と、
前記音声信号の前記ノイズ区間を前記補間波形に置き換えることで、前記クリックノイズを低減させる置換手段と
をさらに備える請求項2に記載の信号処理装置。
【請求項6】
処理対象のフレームから前記クリックノイズが検出された場合、前記処理対象のフレームの直前のフレームの前記代表値を閾値として、前記処理対象のフレームにおける前記最大値を前記代表値として持つ前記ブロックから過去側に、最初に前記代表値が前記閾値以下となる前記ブロックをノイズ開始ブロックとし、前記ノイズ開始ブロックの最終サンプルから過去側に、最初にゼロクロスするサンプルの位置を、前記クリックノイズの開始位置として検出するノイズ区間検出手段をさらに備える
請求項5に記載の信号処理装置。
【請求項7】
処理対象のフレームから前記クリックノイズが検出された場合、前記処理対象のフレームの直後のフレームの前記代表値を閾値として、前記処理対象のフレームにおける前記最大値を前記代表値として持つ前記ブロックから未来側に、最初に前記代表値が前記閾値以下となる前記ブロックをノイズ終了ブロックとし、前記ノイズ終了ブロックの先頭サンプルから未来側に、最初にゼロクロスするサンプルの位置を、前記クリックノイズの終了位置として検出するノイズ区間検出手段をさらに備える
請求項5に記載の信号処理装置。
【請求項8】
前記過去補間波形生成手段は、前記ノイズ区間の過去側に隣接する、前記ノイズ区間と同じ長さの前記音声信号の区間の前記第1の波形を時間反転させて前記過去補間波形を生成し、
前記未来補間波形生成手段は、前記ノイズ区間の未来側に隣接する、前記ノイズ区間と同じ長さの前記音声信号の区間の前記第2の波形を時間反転させて前記未来補間波形を生成する
請求項5に記載の信号処理装置。
【請求項9】
前記過去補間波形生成手段は、前記音声信号における前記ノイズ区間の過去側の端のサンプルの前後にあるサンプルのサンプル値の符号が異なる場合、前記第1の波形を時間反転させるとともにサンプルのサンプル値の符号を反転させて前記過去補間波形とし、
前記未来補間波形生成手段は、前記音声信号における前記ノイズ区間の未来側の端のサンプルの前後にあるサンプルのサンプル値の符号が異なる場合、前記第2の波形を時間反転させるとともにサンプルのサンプル値の符号を反転させて前記未来補間波形とする
請求項8に記載の信号処理装置。
【請求項10】
処理対象のフレームから前記クリックノイズが検出された場合、前記処理対象のフレームの直前のフレームの前記代表値を閾値として、前記処理対象のフレームにおける前記最大値を前記代表値として持つ前記ブロックから過去側に、最初に前記代表値が前記閾値以下となる前記ブロックの先頭サンプルの位置を、前記クリックノイズの開始位置として検出するノイズ区間検出手段をさらに備える
請求項5に記載の信号処理装置。
【請求項11】
処理対象のフレームから前記クリックノイズが検出された場合、前記処理対象のフレームの直後のフレームの前記代表値を閾値として、前記処理対象のフレームにおける前記最大値を前記代表値として持つ前記ブロックから未来側に、最初に前記代表値が前記閾値以下となる前記ブロックの最終サンプルの位置を、前記クリックノイズの終了位置として検出するノイズ区間検出手段をさらに備える
請求項5に記載の信号処理装置。
【請求項12】
前記置換手段は、さらに前記音声信号における前記ノイズ区間直前の所定の長さの隣接区間の波形と、前記音声信号における前記第1の波形の前記区間の直前にある、前記所定の長さの区間の波形とをクロスフェードして隣接補間波形を生成するとともに、前記隣接区間を前記隣接補間波形に置き換える
請求項5に記載の信号処理装置。
【請求項13】
前記置換手段は、さらに前記音声信号における前記ノイズ区間直後の所定の長さの隣接区間の波形と、前記音声信号における前記第2の波形の前記区間の直後にある、前記所定の長さの区間の波形とをクロスフェードして隣接補間波形を生成するとともに、前記隣接区間を前記隣接補間波形に置き換える
請求項5に記載の信号処理装置。
【請求項14】
音声信号を絶対値化する絶対値化手段と、
絶対値化された前記音声信号の連続するいくつかのサンプルからなる区間をブロックとして、前記ブロック内のサンプルのサンプル値のうち、少なくとも最大のサンプル値を用いて、前記ブロックのサンプルのサンプル値の代表的な値を示す代表値を算出する代表値算出手段と、
連続する所定数のブロックからなる区間をフレームとして、前記フレームを構成する前記ブロックの前記代表値の最大値と、前記フレームを構成する前記ブロックの前記代表値の平均値とを算出する平均値算出手段と、
前記最大値と前記平均値の比に基づいて、前記フレームからクリックノイズを検出する検出手段と
を備える信号処理装置の信号処理方法であって、
前記絶対値化手段が前記音声信号を絶対値化し、
前記代表値算出手段が前記ブロックの前記代表値を算出し、
前記平均値算出手段が前記フレームの前記最大値と前記平均値を算出し、
前記検出手段が前記最大値と前記平均値の比に基づいて、前記フレームから前記クリックノイズを検出する
ステップを含む信号処理方法。
【請求項15】
音声信号を絶対値化し、
絶対値化された前記音声信号の連続するいくつかのサンプルからなる区間をブロックとして、前記ブロック内のサンプルのサンプル値のうち、少なくとも最大のサンプル値を用いて、前記ブロックのサンプルのサンプル値の代表的な値を示す代表値を算出し、
連続する所定数のブロックからなる区間をフレームとして、前記フレームを構成する前記ブロックの前記代表値の最大値と、前記フレームを構成する前記ブロックの前記代表値の平均値とを算出し、
前記最大値と前記平均値の比に基づいて、前記フレームからクリックノイズを検出する
ステップを含む処理をコンピュータに実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2011−237753(P2011−237753A)
【公開日】平成23年11月24日(2011.11.24)
【国際特許分類】
【出願番号】特願2010−175335(P2010−175335)
【出願日】平成22年8月4日(2010.8.4)
【出願人】(000002185)ソニー株式会社 (34,172)