IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社オーディオテクニカの特許一覧

特許7461020音声信号処理装置、音声信号処理システム、音声信号処理方法、およびプログラム
<>
  • 特許-音声信号処理装置、音声信号処理システム、音声信号処理方法、およびプログラム 図1
  • 特許-音声信号処理装置、音声信号処理システム、音声信号処理方法、およびプログラム 図2
  • 特許-音声信号処理装置、音声信号処理システム、音声信号処理方法、およびプログラム 図3
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-26
(45)【発行日】2024-04-03
(54)【発明の名称】音声信号処理装置、音声信号処理システム、音声信号処理方法、およびプログラム
(51)【国際特許分類】
   G10L 25/03 20130101AFI20240327BHJP
   G10L 25/27 20130101ALI20240327BHJP
【FI】
G10L25/03
G10L25/27
【請求項の数】 7
(21)【出願番号】P 2020024213
(22)【出願日】2020-02-17
(65)【公開番号】P2021128307
(43)【公開日】2021-09-02
【審査請求日】2022-11-22
(73)【特許権者】
【識別番号】000128566
【氏名又は名称】株式会社オーディオテクニカ
(74)【代理人】
【識別番号】110004222
【氏名又は名称】弁理士法人創光国際特許事務所
(74)【代理人】
【識別番号】100166006
【弁理士】
【氏名又は名称】泉 通博
(74)【代理人】
【識別番号】100154070
【弁理士】
【氏名又は名称】久恒 京範
(74)【代理人】
【識別番号】100153280
【弁理士】
【氏名又は名称】寺川 賢祐
(72)【発明者】
【氏名】和田 存功
【審査官】山下 剛史
(56)【参考文献】
【文献】特表2017-513052(JP,A)
【文献】特開2002-14948(JP,A)
【文献】小野順貴,短時間フーリエ変換の基礎と応用,日本音響学会誌,2016年12月,72巻,12号,pp.764-769
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-99/00
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
音声信号の入力データ列に対して、処理タイミング毎にIIR方式DFTを用いて周波数データに変換する第1変換部と、
前記周波数データに窓関数を用いて窓処理を実行する窓処理部と、
前記窓処理を実行した前記周波数データに予め定められた信号処理を実行する信号処理部と、
前記信号処理を実行した前記周波数データを時間軸データ列に変換する第2変換部と
を備え
前記第2変換部は、
係数W(=e 2πj/N )と、前記信号処理を実行した前記周波数データとの積に基づいて、データ点数N個の前記周波数データから前記時間軸データ列のデータを算出し、
前記窓関数に対応して値が決定された遅延パラメータmを用いて、前記時間軸データ列のデータを算出し、
前記時間軸データ列のデータをx'(n)、前記窓関数をh(n)、前記信号処理を実行した前記周波数データをF(n)、IIR方式DFTで用いるパラメータをrとした場合に、
を用いて前記時間軸データ列のデータを算出し、
前記窓関数のデータ値を最大値で正規化した後に、前記窓関数のデータ値h(n)が0.5以上となるnの値を前記遅延パラメータmとして、前記時間軸データ列のデータを算出する、
音声信号処理装置。
【請求項2】
前記窓処理部は、前記窓関数にDFTを実行して得られた第1関数と、前記周波数データとを畳み込み処理することで、前記窓処理を実行する、請求項1に記載の音声信号処理装置。
【請求項3】
前記窓関数は、7次の三角関数の線形結合で形成されている、請求項1または2に記載の音声信号処理装置。
【請求項4】
前記遅延パラメータmは、データ点数Nに10%以上かつ30%未満の割合を乗じて整数化した値となるように設定されており、
前記窓関数は、前記窓関数のデータ値を最大値で正規化すると、先頭のデータ値h(0)およびデータ値h(N-1)が0であり、先頭から前記遅延パラメータmだけ末尾にずれた位置のデータ値h(m)が0.8以上となるように形成されている、
請求項1から3のいずれか一項に記載の音声信号処理装置。
【請求項5】
入力する音声を音声信号として出力する音声入力装置と、
前記音声入力装置が出力する音声信号に予め定められた前記信号処理を実行する、請求項1からのいずれか一項に記載の前記音声信号処理装置と
を備える、音声信号処理システム。
【請求項6】
音声信号の入力データ列に対して、処理タイミング毎にIIR方式DFTを用いて周波数データに変換するステップと、
前記周波数データに窓関数を用いて窓処理を実行するステップと、
前記窓処理を実行した前記周波数データに予め定められた信号処理を実行するステップと、
前記信号処理を実行した前記周波数データを時間軸データ列に変換するステップと
を備え
前記周波数データを時間軸データ列に変換するステップは、
係数W(=e 2πj/N )と、前記信号処理を実行した前記周波数データとの積に基づいて、データ点数N個の前記周波数データから前記時間軸データ列のデータを算出し、
前記窓関数に対応して値が決定された遅延パラメータmを用いて、前記時間軸データ列のデータを算出し、
前記時間軸データ列のデータをx'(n)、前記窓関数をh(n)、前記信号処理を実行した前記周波数データをF(n)、IIR方式DFTで用いるパラメータをrとした場合に、
を用いて前記時間軸データ列のデータを算出し、
前記窓関数のデータ値を最大値で正規化した後に、前記窓関数のデータ値h(n)が0.5以上となるnの値を前記遅延パラメータmとして、前記時間軸データ列のデータを算出する、
音声信号処理方法。
【請求項7】
コンピュータにより実行されると、前記コンピュータを請求項1からのいずれか一項に記載の前記音声信号処理装置として機能させる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声信号処理装置、音声信号処理システム、音声信号処理方法、およびプログラムに関する。
【背景技術】
【0002】
時系列に並ぶデータ列を周波数変換して、周波数領域のデータ列にしてから所定の信号処理を実行し、再び時間領域のデータ列に変換する技術が知られている。時間領域のデータ列を周波数領域のデータ列に変換する手法としては、DFT、IIR方式DFT等が知られている(例えば、非特許文献1を参照)。また、時間と共に周波数成分が変化する音声信号等を処理する場合、短時間フーリエ変換といった窓関数をオーバーラップさせつつ処理する技術が知られている(例えば、非特許文献2を参照)。
【先行技術文献】
【非特許文献】
【0003】
【文献】辻井重男,“デジタル信号処理の基礎”,電子情報通信学会,pp.99-103
【文献】小野順貴,“短時間フーリエ変換の基礎と応用”,日本音響学会誌,2016年,72巻,12号,pp.764-769
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、音声信号等を処理する場合、許容される遅延時間が0.003秒程度以下といった高い処理速度が要求されることがある。窓関数をオーバーラップさせる短時間フーリエ変換は、オーバーラップさせた時間に応じて遅延が生じてしまうため、このような高い処理速度を達成できなくなる。そこで、音声信号等をより高速に処理できる技術が望まれていた。
【0005】
そこで、本発明はこれらの点に鑑みてなされたものであり、音声信号等を周波数変換しつつ、より高速に処理できるようにすることを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の態様においては、音声信号の入力データ列に対して、処理タイミング毎にIIR方式DFTを用いて周波数データに変換する第1変換部と、前記周波数データに窓関数を用いて窓処理を実行する窓処理部と、前記窓処理を実行した前記周波数データに予め定められた信号処理を実行する信号処理部と、前記信号処理を実行した前記周波数データを時間軸データ列に変換する第2変換部とを備える、音声信号処理装置を提供する。
【0007】
前記窓処理部は、前記窓関数にDFTを実行して得られた第1関数と、前記周波数データとを畳み込み処理することで、前記窓処理を実行してもよい。
【0008】
前記窓関数は、7次の三角関数の線形結合で形成されていてもよい。
【0009】
前記第2変換部は、係数W(=e2πj/N)と、前記信号処理を実行した前記周波数データとの積に基づいて、データ点数N個の前記周波数データから前記時間軸データ列のデータを算出してもよい。
【0010】
前記第2変換部は、前記窓関数に対応して値が決定された遅延パラメータmを用いて、前記時間軸データ列のデータを算出してもよい。
【0011】
前記時間軸データ列のデータをx'(n)、前記窓関数をh(n)、前記信号処理を実行した前記周波数データをF(n)、IIR方式DFTで用いるパラメータをrとした場合に、前記第2変換部は、
を用いて前記時間軸データ列のデータを算出してもよい。
【0012】
本発明の第2の態様においては、入力する音声を音声信号として出力する音声入力装置と、前記音声入力装置が出力する音声信号に予め定められた信号処理を実行する、第1の態様の前記音声信号処理装置とを備える、音声信号処理システムを提供する。
【0013】
本発明の第3の態様においては、音声信号の入力データ列に対して、処理タイミング毎にIIR方式DFTを用いて周波数データに変換するステップと、前記周波数データに窓関数を用いて窓処理を実行するステップと、前記窓処理を実行した前記周波数データに予め定められた信号処理を実行するステップと、前記信号処理を実行した前記周波数データを時間軸データ列に変換するステップとを備える、音声信号処理方法を提供する。
【0014】
本発明の第4の態様においては、コンピュータにより実行されると、前記コンピュータを第1の態様の前記音声信号処理装置として機能させる、プログラムを提供する。
【発明の効果】
【0015】
本発明によれば、音声信号等を高速に処理できるという効果を奏する。
【図面の簡単な説明】
【0016】
図1】ハーフ・オーバーラップの概念を説明する概念図である。
図2】本実施形態に係る音声信号処理装置10の構成例を示す。
図3】本実施形態に係る窓関数の係数の一例を示す。
【発明を実施するための形態】
【0017】
従来、時系列に並ぶデータ列に窓関数を乗じ、窓関数を乗じたデータ列を周波数変換してから所定の信号処理を実行し、再び時間領域のデータ列に変換する短時間フーリエ変換が知られていた。DFT、IDFT等によって、このような時間領域から周波数領域への変換処理と、周波数領域から時間領域への変換処理との組み合わせを実行できることが知られている。なお、本実施形態において、DFT処理はFFT処理を含み、IDFT処理はIFFT処理を含むものとする。このようなDFTおよびIDFTによる信号処理では複素乗算の回数が多い。そのため、変換に係るコンピュータ資源の割合が全体のコンピュータ資源に対して大きくなり、その他の信号処理の実装を阻害することになる。
【0018】
また、窓関数は、時間領域のデータ列に周期性を持たせるために、先頭および末尾の両端の値を0にし、先頭または末尾に近づくにつれて値が0に収束するように形成されている。したがって、信号処理後の周波数データ列を時間領域のデータ列に変換しても、窓関数の両端および両端近辺に対応するデータの値は0またはほとんど0となる。そこで、例えば、オーバーラップと呼ばれているような、窓関数を予め定められた値だけシフトさせて時間領域のデータ列に適用する方法が知られている。
【0019】
図1は、ハーフ・オーバーラップの概念を説明する概念図である。図1は、横軸が時間を示し、縦軸が信号レベルを示す。ここで、1つの窓関数の時間幅をNとする。窓関数の時間幅Nは、データ点数に対応する。データ点数は、一例として、256点である。図1に示すような窓関数が時間領域のデータ列に乗じられると、窓関数の両端および両端近辺に対応するデータの値は0またはほとんど0となる。例えば、窓関数W1、窓関数W3、・・・が、窓関数の時間幅N毎に時間領域のデータ列に適用されて、乗じられると、窓関数W1および窓関数W3の間の期間Bのデータ列の値は0または0に近い値となる。
【0020】
したがって、このような期間Bのデータ列が周波数変換され、周波数変換されたデータ列から再び時間領域のデータ列が生成されると、データの値は0または0に近い値となってしまう。この場合、期間Bのデータ列を窓関数で減少した分だけ定数倍することが考えられるが、誤差が増加する。そこで、窓関数W1から時間幅Nの半分のN/2だけシフトさせた窓関数W2が更に用いられて、期間Bのデータ列を処理したデータ列を生成する処理がなされる。この場合、窓関数W1を適用した時間領域のデータ列が処理されて期間Aのデータ列が生成され、窓関数W3が適用された時間領域のデータ列が処理されて期間Cのデータ列が生成される。これにより、ハーフ・オーバーラップにおいては、期間Aから期間Cの全体の期間を処理したデータ列を誤差の増加を抑制しつつ生成できる。
【0021】
このようなオーバーラップにおいては、窓関数をオーバーラップした分だけ処理に遅延が生じる。ハーフ・オーバーラップの場合、一例として、信号のサンプリング周期を48kHzとすると、遅延時間は、(N/2)×(1/48kHz)と計算され、略0.0027秒となる。音声信号を用いた会議システム、カラオケ、ライブ音声伝送システム等においては、0.003秒程度以上の遅延が利用者に違和感を与えることが知られている。したがって、時間領域から周波数領域への変換と、周波数領域から時間領域への変換とで略0.0027秒も遅延してしまうと、他の処理を実行する時間がほとんどなくなってしまう。
【0022】
そこで、本実施形態に係る音声信号処理装置は、従来のオーバーラップを用いずに、音声信号の信号処理等をより高速に実行する。このような音声信号処理装置について、次に説明する。
【0023】
<音声信号処理装置10の構成例>
図2は、本実施形態に係る音声信号処理装置10の構成例を示す。音声信号処理装置10には、音声信号を示すデータ列が入力される。音声信号は、例えば、マイク等から出力される信号である。音声信号処理装置10は、入力されたデータ列に所定の信号処理を施してから、信号処理後の音声信号を出力する。音声信号処理装置10は、例えば、音声信号に対して、雑音の低減処理、ハウリングの低減処理等を実行する。音声信号処理装置10は、取得部100と、第1変換部110と、窓処理部120と、信号処理部130と、第2変換部140とを備える。
【0024】
取得部100は、音声信号のデータ列を取得する。取得部100は、所定の信号処理を実行するためのデータ列を取得する。取得部100は、例えば、送信器、AD変換器、記憶装置等からデータ列を取得する。また、取得部100は、ネットワーク等に接続され、データベース等に記憶されているデータ列を取得してもよい。データ列は、一例として、時系列に並ぶ複数のデータを含む。
【0025】
取得部100は、例えば、処理タイミング毎にデータ列のデータを1つずつ取得する。これに代えて、取得部100は、処理タイミング毎にデータ列のデータを予め定められた点数ずつ取得してもよい。処理タイミングは、例えば、クロック信号等に同期したタイミングである。
【0026】
第1変換部110は、音声信号の入力データ列に対して、処理タイミング毎にIIR方式DFTを用いて周波数データに変換する。IIR方式DFTは、次式の伝達関数に基づいて、入力データを周波数データに変換する。伝達関数は、例えば、N個のデータz(k=0,1,2,・・・,N-1)においてそれぞれ指定された値H(z)となる(N-1)次のz-1の多項式H(z)を、ラグランジュの内挿公式を用いて算出されている。
【数1】
【0027】
IIR方式DFTは、DFTをIIRで実現させたフィルタである。IIR方式DFTの詳細については、例えば、非特許文献1等に記載されているので、ここでは説明を省略する。なお、(数1)式において、jは虚数単位(j=-1)、rは0より大きく、1より小さい実数である。rは、IIRフィルタにおいて極が単位円の外に出て回路が不安定になってしまうことを防止するために用いられるパラメータである。
【0028】
第1変換部110は、例えば、処理タイミング毎に、入力データ列の次のデータx(n)と、データx(n)よりもN-1個過去のデータx(n-N+1)までのN-1個のデータを用いて出力したN-1個の値とに基づいて、周波数領域のデータ列を算出する。
【0029】
第1変換部110は、このようなIIR方式DFTを用いて時間領域のデータ列を周波数領域のデータ列に変換するので、一般的なDFTと比較してより少ない記憶領域と演算量で変換処理を行う。例えば、データ点数Nのデータ列をDFTする場合、複素乗算の回数にはNまたはN×logN程度の回数を必要とすることが知られている。これに対して、IIR方式DFTでは、乗算回数をN回程度に低減できる。
【0030】
なお、一般的に、DFTの窓処理は、時間領域のデータ列のN個のデータに窓関数を乗じてから、乗算後のN個のデータを用いて周波数変換する。しかしながら、IIR方式DFTは、DFTとは異なり、処理タイミング毎に、過去の出力と新たな1つのデータとを用いて周波数領域のデータ列を算出する。このように、IIR方式DFTでは、時間領域のデータ列のうち1つのデータを用いて周波数変換するため、通常の窓処理は適用できない。
【0031】
そこで、窓処理部120は、第1変換部110が変換した周波数データに窓関数を用いて窓処理を実行する。ここで、例えば、窓関数h(n)を次式のように三角関数の線形結合で表されるものとする。
【数2】
【0032】
(数2)式は、次式のように置き換えることができる。
【数3】
【0033】
次に、次式のように窓処理の離散フーリエ変換を考え、(数3)式を代入する。ここで、k=0,1,2,・・・,N-1である。また、{F(n):n=0,1,2,・・・,N-1}は、{x(n):n=0,1,2,・・・,N-1}の離散フーリエ変換である。
【数4】
【0034】
(数4)式より、時間領域のデータ列x(n)に窓関数h(n)を乗じて窓処理を施してから離散フーリエ変換した周波数領域のデータ列は、データ列x(n)および窓関数h(n)の離散フーリエ変換の畳み込みと一致する。そこで、窓処理部120は、窓関数h(n)にDFTを実行して得られた第1関数と、第1変換部110が変換した周波数データとを畳み込み処理することで、窓処理を実行する。すなわち、窓処理部120は、第1変換部110がIIR方式DFTを用いて出力した周波数データに対して、窓処理を実行する。
【0035】
ここで、窓関数の次数をMとすると、畳み込み演算の乗算回数はN×M程度であり、第1変換部110のIIR方式DFTの乗算回数との合計は、N×(M+1)程度である。したがって、Mが極端に大きな値でなければ、窓処理部120までの処理は、DFTよりも高速に実行できる。窓処理部120は、例えば、このような窓処理を処理タイミング毎に実行する。
【0036】
信号処理部130は、窓処理を実行した周波数データに予め定められた信号処理を実行する。信号処理部130は、音声信号処理装置10に入力された音声信号に施す信号処理を実行する。信号処理部130は、例えば、ノイズ低減処理、ハウリング低減処理等を実行する。窓処理部120が出力する周波数領域のデータは、時間領域のデータ列に窓関数を乗じて窓処理を施してから離散フーリエ変換した周波数領域のデータと略一致する。そのため、信号処理部130は、既知の信号処理を実行すればよい。なお、信号処理部130による既知の信号処理については、詳細な説明を省略する。
【0037】
第2変換部140は、信号処理を実行した周波数データを時間軸データ列に変換する。第2変換部140は、例えば、IDFT処理により、周波数領域のデータを時間領域のデータに変換する。IDFT処理は、既知の信号処理でよく、ここでは詳細な説明を省略する。
【0038】
以上の本実施形態に係る音声信号処理装置10は、IIR方式DFTと対応する窓処理を実行することにより、高速に周波数データに変換する。そのため、本実施形態に係る音声信号処理装置10は、遅延時間を低減させつつ音声信号等に所定の信号処理を施して出力できる。
【0039】
また、第1変換部110は、IIR方式DFTを用いて処理タイミング毎に音声信号を周波数データに変換する。そのため、後に述べるように、第2変換部140は、処理タイミング毎に変換した時間領域のデータのうち窓関数が平坦になっている部分に対応する1つのデータを採用して出力すればよい。したがって、以上の音声信号処理装置10は、時間領域のデータ列に窓関数をオーバーラップする処理をすることなく、適切に周波数データに変換しつつ所定の信号処理を実行できる。言い換えると、音声信号処理装置10は、オーバーラップによる時間遅延が生じないため、音声信号等をより高速に処理できる。
【0040】
なお、以上の音声信号処理装置10において、第2変換部140が通常のIDFT処理により、周波数データを時間軸データ列に変換する例を説明したが、これに限定されることはない。第2変換部140は、次に説明するように、より高速な変換処理を実行してもよい。
【0041】
<第2変換部140の変換処理>
ここで、離散逆フーリエ変換を示す行列[Wkm]を次式のように示す。
【数5】
【0042】
[Wkm]は、ユニタリ行列なので、単位行列をEとすると、次式が成立する。
【数6】
【0043】
ここで、信号処理部130が出力する周波数データを{F(n):n=0,1,2,・・・,N-1}とすると、第2変換部140は、F(n)の逆離散フーリエ変換を算出することになる。ここで、F(n)の逆離散フーリエ変換は、{h(n)rx’(n):n=0,1,2,・・・,N-1}と表され、次式が成立する。
【数7】
【0044】
(数7)式より、F(n)を逆離散フーリエ変換した結果のうち、m番目のデータは、次式のように表される。
【数8】
【0045】
ここで、第2変換部140は、取得部100が取得する時間領域のデータ列x(n)に対応して信号処理した時間領域のデータ列x’(n)を出力すればよい。言い換えると、第2変換部140は、F(n)を逆離散フーリエ変換した結果のうち、時間領域のデータ列x(n)に対応するデータ列x’(n)を算出できればよい。例えば、第2変換部140は、(数8)式に基づいて、次式のように、係数W(=e2πj/N)と、信号処理を実行した周波数データF(n)との積に基づいて、データ点数N個の周波数データから時間軸データ列のデータx’(m)を算出する。
【数9】
【0046】
第2変換部140は、例えば、処理タイミング毎に(数9)式を算出する。データ点数Nのデータ列をIDFTする場合、DFTと同様に、複素乗算の回数はN×logN程度が必要であることが知られている。これに対して、第2変換部140は、(数9)式を用いることにより、複素乗算の回数をN回程度に低減できる。
【0047】
(数9)式において、rは既に説明したIIR方式DFTで用いるパラメータである。また、mは窓関数に対応して値が決定された遅延パラメータである。窓関数h(n)は、入力データ列を区間Nに対応する周期的な関数とするために用いられているので、例えば、先頭h(0)または末尾h(N-1)に近づくにつれて値が0に収束するように形成されている。したがって、先頭h(0)に対応するデータx’(0)と、末尾h(N-1)に対応するデータx’(N-1)は、最も分母が小さくなり、精度が不確定になってしまう。
【0048】
したがって、第2変換部140では、窓関数の値が十分に大きくなる程度まで、mの値を大きくしてデータx’(m)を算出することが好ましい。しかしながら、mの値が大きくなると、第2変換部140がデータx’(m)を算出する処理時間が大きくなってしまうことがある。そこで、用いる窓関数に対応して、適切なmの値が予め設定されていることがより好ましい。例えば、窓関数のデータの値を最大値で正規化した場合、データ値が0.5以上となるようなmの値が設定されている。この場合、窓関数のデータの値が0.7となるようなmの値が設定されていることが望ましく、また、窓関数のデータの値が0.8となるようなmの値が設定されていることがより望ましい。
【0049】
ここで、窓処理部120は、例えば、既知の窓関数を用いてもよい。例えば、窓関数は、ガウス窓、ハン窓、ハミング窓、テューキー窓、ハニング窓、ブラックマン窓、カイザー窓等である。これらの既知の窓関数は、先頭h(0)近辺のデータの値は0に近い値であり、データの値が比較的緩やかに大きくなる関数である。そのため、適切なの値としてmは、例えば、データ点数Nの30%以上の値に設定されていた。そこで、より立ち上がりが急峻な窓関数を用いて、第2変換部140の時間軸データの算出をより高速化させてもよい。そこで、立ち上がりが急峻な窓関数の例を次に説明する。
【0050】
<窓関数の生成>
立ち上がりが急峻な窓関数の例は、7次の三角関数の線形結合で形成されている窓関数である。このような窓関数は、一例として、(数2)式で表される窓関数の係数{α:m=0,1,・・・,M-1}を次式で示すラグランジュの未定乗数法により算出できる。ここで、N=256、M=8とする。
【数10】
【0051】
(数10)式の例において、mは窓関数の水平部の開始点、N-mは窓関数の水平部の終了点、右辺第一項は水平部の最小二乗和、右辺第二項はh(0)=0、右辺第三項はh(N/2)=1、右辺第四項は27番目の値を0.8とすることを示す。(数10)式に示す係数{α:m=0,1,・・・,M-1}は、右辺を{α:m=0,1,・・・,M-1}、λ、μ、σで偏微分し、左辺=0とすることで、図3に示すように算出できる。
【0052】
以上のように、7次の三角関数の線形結合で形成されている窓関数は、例えば、データ点数256点のうち、平坦な領域の値を1、0番目の値を0、r=0.995とした場合に、27番目の値を0.8とすることができる。言い換えると、生成した窓関数は、急峻な立ち上がりを有する。この場合、例えば、(数9)式の遅延パラメータmをデータ点数Nの10%程度である30程度の値に設定することができるため、第2変換部140は、時間軸データをより高速に算出することができる。
【0053】
なお、窓関数の例として7次の三角関数の線形結合を説明したが、これに限定されることはない。窓関数は、立ち上がりが急峻で、かつ、より次数の低い窓関数であればよい。例えば、窓関数は、6次から10次までの三角関数の線形結合であってもよく、7次から9次までの三角関数の線形結合であることが望ましい。このような三角関数の線形結合であっても、既に説明したようなラグランジュの未定乗数法を用いることで、窓処理部120は、適切に算出された窓関数を用いることができる。
【0054】
以上の本実施形態に係る音声信号処理装置10は、音声信号処理システムの少なくとも一部として機能してもよい。例えば、音声信号処理装置10は、音声信号を出力する音声入力装置と音声信号処理システムを構成する。言い換えると、音声信号処理システムは、例えば、音声入力装置と、音声信号処理装置10とを備える。音声入力装置は、入力する音声を音声信号として出力する。音声入力装置は、例えば、マイクロホンである。
【0055】
音声信号処理装置10は、このような音声入力装置が出力する音声信号に予め定められた信号処理を実行する。音声信号処理装置10は、音声入力装置から無線または有線で音声信号を受信する。音声信号処理装置10は、一例として、赤外通信により音声入力装置から音声信号を受信する。このような音声信号処理システムは、カラオケ、会議システム、ライブ音声伝送システム等として機能することができる。
【0056】
以上の本実施形態に係る音声信号処理装置10では、少なくとも一部が集積回路等で構成されていることが望ましい。例えば、音声信号処理装置10は、FPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)、および/またはCPU(Central Processing Unit)を含む。
【0057】
音声信号処理装置10の少なくとも一部をコンピュータ等で構成する場合、当該音声信号処理装置10は、記憶部を含む。記憶部は、一例として、音声信号処理装置10を実現するコンピュータ等のBIOS(Basic Input Output System)等を格納するROM(Read Only Memory)、および作業領域となるRAM(Random Access Memory)を含む。また、記憶部は、OS(Operating System)、アプリケーションプログラム、および/または当該アプリケーションプログラムの実行時に参照されるデータベースを含む種々の情報を格納してよい。即ち、記憶部は、HDD(Hard Disk Drive)および/またはSSD(Solid State Drive)等の大容量記憶装置を含んでよい。
【0058】
CPU等のプロセッサは、記憶部に記憶されたプログラムを実行することによって、取得部100、第1変換部110、窓処理部120、信号処理部130、および第2変換部140として機能する。音声信号処理装置10は、GPU(Graphics Processing Unit)等を含んでもよい。
【0059】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を併せ持つ。
【符号の説明】
【0060】
10 音声信号処理装置
100 取得部
110 第1変換部
120 窓処理部
130 信号処理部
140 第2変換部
図1
図2
図3