(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
以下に添付図面を参照して、この発明にかかる信号処理装置の好適な実施形態を詳細に説明する。
【0011】
(第1の実施形態)
第1の実施形態の信号処理装置は、声信号および背景音信号を含んだ音響信号を声信号と背景音信号とに分離する。例えば、本実施形態の信号処理装置を音声認識の前処理として利用することにより、音声認識の認識性能を向上させることができる。また、映像視聴の際に、抽出した声信号と背景音信号の混合率を変更することで、所望の信号を聴き取りやすくすることができる。
【0012】
本実施形態の信号処理装置は、音響信号から取得した特徴量を用いて非定常性を持つ第1背景音成分を推定する。第1背景音成分を推定する際、過去の一定時間内に取得した少ない特徴量で推定した背景音基底行列を用いる。推定した第1背景音成分に加え、一定時間に推定した第1背景音成分を用いて、一定時間内の第1背景音成分を代表する代表成分を推定する。また、取得した特徴量を用いて第1声成分を推定する。推定した第1声成分と代表成分を用いて、声または背景音のスペクトルを抽出する第1フィルタを作成する。作成した第1フィルタと音響信号のスペクトルを用いて、声信号と背景音信号に分離する。
【0013】
このように、本実施形態の信号処理装置は、過去に推定した第1背景音成分を用いて推定した代表成分に基づき分離を行う。これにより、背景音スペクトルが声スペクトルに残存する問題を改善できる。
【0014】
図1は、第1の実施形態にかかる信号処理装置100の構成例を示すブロック図である。信号処理装置100は、取得部101と、算出部102と、第1背景音推定部103と、代表成分推定部104と、第1声推定部105と、第1フィルタ作成部106と、分離部107と、を備える。
【0015】
取得部101は、声信号と背景音信号を含んだ音響信号を周波数分析し、音響信号の特徴量を取得する。なお、取得部101が周波数分析等により外部装置で求められた特徴量を取得するように構成してもよい。
【0016】
算出部102は、一定時間に取得される特徴量を用いて、背景音を表す背景音基底行列を算出する。
【0017】
第1背景音推定部103は、取得した特徴量および算出された背景音基底行列を利用して、特徴量の背景音成分のうち非定常性を持つ第1背景音成分を推定する。
【0018】
代表成分推定部104は、過去を含む一定時間に取得された1以上の特徴量により推定された第1背景音成分から、一定時間内の第1背景音成分の代表成分を推定する。
【0019】
第1声推定部105は、取得した特徴量を利用して、特徴量の声成分である第1声成分を推定する。
【0020】
第1フィルタ作成部106は、推定された第1声成分と第1背景音成分の代表成分とから、声のスペクトルまたは背景音のスペクトルを抽出する第1フィルタを作成する。
【0021】
分離部107は、第1フィルタと音響信号のスペクトルとを用いて、音響信号を声信号および背景音信号に分離する。
【0022】
次に、信号処理装置100のハードウェア構成について説明する。
図2は、信号処理装置100のハードウェア構成例を示す説明図である。
【0023】
信号処理装置100は、
図2に示すような通常のコンピュータを利用したハードウェアで構成されている。信号処理装置100は、制御部201と、記憶部202と、外部記憶部203と、操作部204と、通信部205と、マイク206と、がバス207で接続された構成となっている。
【0024】
制御部201は、装置全体を制御するCPU(Central Processing Unit)等である。記憶部202は、各種データや各種プログラムを記憶するROM(Read Only Memory)やRAM(Random Access Memory)等である。外部記憶部203は、各種データや各種プログラムを記憶するHDD(Hard Disk Drive)やCD(Compact Disk)ドライブ装置等の記憶部である。操作部204は、ユーザの指示入力を受け付けるキーボードやマウスなどである。通信部205は、外部装置との通信を制御する。マイク206は、ユーザの発声などの音声を取得する。
【0025】
このようなハードウェア構成において、例えば制御部201がROM等の記憶部202や外部記憶部203に記憶された各種プログラムを実行することにより
図1に示す各構成部の機能が実現される。このように各構成部は、例えば、CPUなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。以下、各構成部の機能の詳細についてさらに説明する。
【0026】
取得部101は、マイク206に入力された音響信号を取得する。この音響信号には、人の声を表す声信号だけでなく、背景雑音や音楽などの背景音信号が含まれる。音響信号は、例えば48kHzでサンプリングされたデジタル信号である。なお、取得部101は、マイク206ではなく、外部記憶部203、または、通信部205によって接続された外部装置から音響信号を取得してもよい。
【0027】
また、取得部101は、取得した音響信号を周波数分析し、周波数に関する特徴量(ベクトル)を取得する。具体的には、音響信号を長さ2048サンプル、間隔1024サンプルのフレームに分割する。取得部101は、例えばハニング窓またはハミング窓を使用してフレームを分割する。次に、取得部101は、各時刻tのフレームから周波数に関する特徴量Ztを取得する。特徴量Ztは、各フレームの音響信号をフーリエ変換して得られるスペクトルXtだけでなく、LPCケプストラムおよびMFCCなどのケプストラム系の特徴量を用いることができる。また、異なる方式で算出された複数の特徴量を統合した特徴量を用いることもできる。
【0028】
算出部102は、例えばNMFにより、取得部101で取得された過去の複数フレームの特徴量から、背景音を表現する基底行列(背景音基底行列H2)を推定する。算出部102は、声を表現する基底行列(声基底行列H1)と、背景音基底行列H2を統合(連結)することにより、基底行列H3を求める。後述するように、声基底行列H1は、事前に求めて記憶部202や外部記憶部203に記憶しておく。算出部102は、基底行列H3と係数ベクトルUtとの積が、現在のフレームの特徴量に近似値となるような係数ベクトルUtを求める。
【0029】
なお、各フレームの特徴量がD次元のベクトルであるとき、声基底行列H1は行数D、列数Mの行列、背景音基底行列H2は行数D、列数Nの行列、係数ベクトルUtはM+N次元のベクトルとなる。
【0030】
第1背景音推定部103は、背景音基底行列H2に対応する係数ベクトルUtの要素を抽出する。上記例の場合、背景音基底行列H2に対応する係数ベクトルUtの要素とは、M+N次元の係数ベクトルUtの要素のうち、M+1次元からN次元までのN個の要素となる。すなわち、背景音基底行列H2に対応する係数ベクトル(以下、係数ベクトルUbtとする)はN次元のベクトルとなる。第1背景音推定部103は、背景音基底行列H2と、抽出した係数ベクトルUbtとの積で表現されたベクトルB1tを第1背景音成分とする。
【0031】
Dは取得した特徴量の次元数と同じになる。複数の周波数に関する特徴量を統合した特徴量を用いてもよいため、Dは任意の数(例えば32)になり得る。また、MとNは例えば32と64など任意の数に設定でき、異なる値でもよいし同じ値でもよい。
【0032】
声基底行列H1は、例えば以下のようにして求めることができる。まず、別途用意した声の音響信号から取得した複数の特徴量を、基底行列Hと係数行列Uとの積で近似する。基底行列Hと係数行列Uの導出は、基底行列Hと係数行列Uの積と、複数の特徴量で構成される行列Zとの二乗誤差を基準とした反復法により行う。
【0033】
この際、基底行列Hおよび係数行列Uの初期行列にはランダム値を用いることができる。次に、導出した基底行列Hに対して正規化等の後処理が行われ、声基底行列H1として記憶部202や外部記憶部203に記憶される。なお、係数ベクトルUtの導出は、基底行列H3は固定した状態で、声基底行列H1を求める際に行った反復法を適用すればよい。
【0034】
算出部102は、現在のフレームの時刻tが更新時刻T1を超えた際に、一定時間T2分の過去のフレームの特徴量を背景音基底行列H2の推定に用いる。ここで、更新時刻T1は一定時間T3ごとに設定してもよい。また、更新時刻T1は、雑音重畳音、音楽重畳音といった音の種類やシーンの変化を検出した時刻として設定してもよい(例えば、非特許文献2参照)。
【0035】
処理の重複を回避するため、更新時刻T1と前回の更新時刻T1’の間隔は一定時間T4(例えば1秒)以上とすることが望ましい。また、一定時間T2は、更新時刻T1と前回の更新時刻T1’に対し、T2<T1−T1’を満たせば、任意の時間を設定できる。例えば、一定時間T3=5秒、T2=0.3秒と設定できる。
【0036】
算出部102は、背景音基底行列H2の推定に反復法を適用する際、時刻t(>T1)のフレームを処理する時だけでなく、時刻(t+1)〜時刻(t+k)においても反復法を適用して背景音基底行列H2を更新できる。このとき、算出部102は、時刻(t+k)での処理後に得られた背景音基底行列H2をそれまで使用していた各フレームの背景音基底行列H2と入れ替える。これにより、背景音基底行例H2の更新に必要な計算コストを分散させることができる。各時刻に行う反復法の適用回数をr(例えば1)とすると、背景音基底行列H2の更新が完了するまでの反復法の適用回数Rはr×k回となる。なお、時刻(t+1)と時刻(t+k)の差が一定時間T4以上であれば、更新間隔となる変数kの値は、10など任意の値に設定できる。
【0037】
代表成分推定部104は、第1背景音推定部103で推定した過去の第1背景音成分B1(t−1)、B1(t−2)、・・・、B1(ts)と、現在の第1背景音成分B1tと、を用いて代表成分A1tを推定する。代表成分A1tを構成する要素はそれぞれ独立に推定される。例えば、代表成分推定部104は、過去と現在を含めた一定時間内の第1背景音成分の該当要素の中の最大値を、代表成分A1tの対応する要素とする。過去の第1背景音成分は、算出部102で新たな背景音基底行列H2が設定された時刻から推定されたものを対象とする。時刻tsは、背景音基底行列H2の更新が完了し、背景音基底行列H2の入れ替え処理が行われた時刻とする。
【0038】
従来の方法では、例えば、現在の第1背景音成分B1tを用いて音源分離に用いるフィルタが作成される。このような方法では、短い時間のサンプルで推定した背景音基底の影響により第1背景音成分B1tが実際の入力背景音に対して不足し、背景音成分を適切に取り除くことができない場合がある。
【0039】
これに対し、本実施形態では、上述のように、過去の時刻で推定された第1背景音成分の最大値を用いて代表成分を推定する。そして、代表成分も用いてフィルタを作成し、このフィルタを用いて音源分離を行う(詳細は後述)。このため、サンプルが少ないことにより第1背景音成分が実際の入力背景音に対して不足した場合であっても、不足を補い、適切に背景音声分を取り除くことができる。
【0040】
なお、代表成分の算出方法は最大値を求める方法に限られるものではない。第1背景音成分の不足を補える値であって最大値に基づいて算出される値であればどのような値を代表成分としてもよい。例えば、最大値に所定の係数を乗じた値を代表成分としてもよい。
【0041】
第1声推定部105は、第1背景音推定部103にて求めた係数ベクトルUtのうち、声基底行列H1に対応する係数ベクトルの要素を抽出する。第1声推定部105は、声基底行列H1と、抽出した係数ベクトルUvtとの積で表現されたベクトルV1tを第1声成分とする。
【0042】
第1フィルタ作成部106は、第1声成分V1tと代表成分A1tとを用いて、声スペクトルVtまたは背景音スペクトルBtを抽出するフィルタ(第1フィルタ)を作成する。まず、第1フィルタ作成部106は、第1声成分V1tと代表成分A1tとを、それぞれ第1声スペクトルV1’tと第1平均スペクトルA1’tとに変換する。例えば第1フィルタ作成部106は、取得部101にてスペクトルを特徴量に変換する変換処理の逆変換により、第1声成分V1tと代表成分A1tとを、第1声スペクトルV1’tと第1平均スペクトルA1’tとに変換する。スペクトル自体を特徴量とする場合は、変換および逆変換は不要である。
【0043】
第1フィルタ作成部106は、次に、声スペクトルVtのi番目の要素Vtiを抽出する第1フィルタFV1tiを、以下の(1)式により求める。
FV1ti=
|V1’ti|^L/(|V1’ti|^L+|A1’ti|^L)・・・(1)
【0044】
第1フィルタ作成部106は、背景音スペクトルBtのi番目の要素Btiを抽出する第1フィルタFB1tiを、以下の(2)式により求める。
FB1ti=
|A1’ti|^L/(|V1’ti|^L+|A1’ti|^L)・・・(2)
【0045】
ここで、Lはパラメータ値であり、例えば2に設定できる。なお、FV1ti=1−FB1tiの関係が成り立つため、声スペクトルVtおよび背景音スペクトルBtのいずれか一方の第1フィルタ(FV1tiまたはFB1ti)を求めればよい。
【0046】
第1フィルタ作成部106は、第1フィルタに対して、時間軸上での平滑化、および、要素間での平滑化などの後処理を実行してもよい。このように、第1声スペクトルを抽出するフィルタの作成に、代表成分推定部104で推定した代表成分を用いることで、背景音スペクトルが声スペクトルに残存する問題を改善することができる。
【0047】
分離部107は、声スペクトルの第1フィルタFV1tまたは背景音スペクトルの第1フィルタFB1tを用いて、声スペクトルVtおよび背景音スペクトルBtを抽出する。分離部107は、まず、取得部101で取得した時刻tのスペクトルXtを用いて、声スペクトルVtのi番目の要素Vtiを以下の(3)式により求める。
Vti=Xti×FV1ti・・・(3)
【0048】
次に、分離部107は、声スペクトルVtを逆フーリエ変換することで、声信号Svを求める。なお、2つのフレーム間でのオーバーラップしたサンプルの振幅値は、それぞれのフレームから逆フーリエ変換で求めた値の合計値とする。背景音信号Sbは、入力信号Sと声信号Svとの差分としてもよいし、声信号を求めた方法と同様に求めてもよい。これにより、音響信号から声信号と背景音信号とを分離することができる。すなわち、背景音の混入が少なく純度の高い声信号を聴取することができる。また、分離された声信号を後段の音声認識部(図示なし)に出力することにより、背景音信号の影響を取り除いた音声認識処理が実行できる。
【0049】
次に、このように構成された信号処理装置100による信号処理について
図3を用いて説明する。
図3は、第1の実施形態における信号処理の一例を示すフローチャートである。
【0050】
まず、取得部101は、分析対象となる音響信号の開始時刻を時刻t=0に設定する(ステップS301)。取得部101は、背景音基底行列H2の更新処理を行う更新時刻T1を設定する(ステップS302)。取得部101は、音響信号を周波数分析することにより、スペクトルXtと特徴量Ztとを取得する(ステップS303)。例えば、取得部101は、分析対象となる音響信号をフレーム単位に分割する。そして、取得部101は、時刻tに関するフレームのサンプルからスペクトルXtとスペクトルを変換した特徴量Ztとを取得する。
【0051】
算出部102は、声基底行列H1と背景音基底行列H2の初期値を設定する(ステップS304)。算出部102は、例えば、別途用意した声の音響信号から作成した基底行列の値を、声基底行列H1の初期値として設定する。算出部102は、別途用意した背景音の音響信号から作成した基底行列の値を、背景音基底行列H2の初期値としてもよいし、ランダム値を背景音基底行列H2の初期値としてもよい。
【0052】
算出部102は、学習特徴が取得できているか否かを判定する(ステップS305)。学習特徴とは、一定時間T2分の過去のフレームの特徴量である。学習特徴が取得できていない場合(ステップS305:No)、算出部102は、現在のフレーム(時刻t)の特徴量Ztを背景音基底行列H2の学習特徴として設定する(ステップS306)。
【0053】
学習特徴が取得できている場合(ステップS305:Yes)、算出部102は、背景音基底行列H2の更新が完了しているか否かを判定する(ステップS307)。更新が完了した後である場合(ステップS307:Yes)、算出部102は、現在のフレームの時刻tが更新時刻T1より大きいか否かを判定する(ステップS308)。
【0054】
更新時刻T1より大きい場合(ステップS308:Yes)、背景音基底行列H2の更新処理を再び行えるようにするため、ステップS309に進む。ステップS309では、算出部102は、背景音基底行列H2の更新に用いる学習特徴に設定している特徴をリセット(学習特徴を削除)する(ステップS309)。ステップS309を実行した後は、ステップS306に戻る。
【0055】
ステップS307で更新が完了する前である場合(ステップS307:No)、算出部102は、学習特徴を用いて、反復法に基づき背景音基底行列H2の推定を行う(ステップS310)。
【0056】
算出部102は、背景音基底行列H2の更新が完了したか否かを判定する(ステップS311)。例えば、算出部102は、背景音基底行列H2の更新を開始してから実行した反復法の適用回数が、完了までに必要とする適用回数Rに達したか否かを判定する。適用回数Rに達している場合(ステップS311:Yes)、算出部102は、背景音基底行列H2の更新処理を行う更新時刻T1を次回の更新処理を行う時刻に設定する(ステップS312)。
【0057】
ステップS311で適用回数Rに達していないと判定された場合(ステップS311:No)、ステップS306の後、ステップS312の後、および、ステップS308で時刻tが更新時刻T1以前と判定された場合(ステップS308:No)、ステップS313に進む。
【0058】
ステップS313では、算出部102は、背景音基底行列H2とステップS304で設定した声基底行列H1を用いて、現在のフレームの特徴量Ztを近似する係数ベクトルUtを導出する(ステップS313)。
【0059】
第1背景音推定部103は、係数ベクトルUtから背景音基底行列H2に対応する係数ベクトルUbtを抽出し、背景音基底行列H2と係数ベクトルUbtの積で表現されたベクトルB1tを第1背景音成分として求める(ステップS314)。
【0060】
第1声推定部105は、係数ベクトルUtから声基底行列H1に対応する係数ベクトルUvtを抽出し、声基底行列H1と係数ベクトルUvtの積で表現されたベクトルV1tを第1声成分として求める(ステップS315)。
【0061】
代表成分推定部104は、現在のフレームの時刻tにて背景音基底行列H2の更新が完了したか否かを判定する(ステップS316)。時刻tにて更新が完了していた場合(ステップS316:Yes)、代表成分推定部104は、過去成分Zpの各要素を0に設定する(ステップS317)。過去成分Zpとは、第1背景音推定部103によって過去に推定された第1背景音成分で構成される成分を表す。これにより背景音基底行列H2の入れ替え(更新)の度に過去成分が削除され、過去成分は同一の背景音基底行列H2を用いて求められたものとなる。
【0062】
ステップS317の後、および、ステップS316で時刻tにて更新が完了していなかった場合(ステップS316:No)、代表成分推定部104は、現在のフレームの第1背景音成分B1tと過去成分Zpを用いて、代表成分A1tを求める(ステップS318)。また、代表成分推定部104は、求めた代表成分A1tを過去成分Zpとして設定する。代表成分推定部104は、例えば代表成分A1tのi番目の要素A1tiを、第1背景音成分B1tのi番目の要素B1tiと過去成分Zpのi番目の要素Zpiの最大値とする。
【0063】
第1フィルタ作成部106は、第1フィルタを作成する(ステップS319)。例えば、第1フィルタ作成部106は、第1声成分V1tと代表成分A1tを、第1声スペクトルV1’tと第1平均スペクトルA1’tに変換する。そして、第1フィルタ作成部106は、変換により得られた第1声スペクトルV1’tと第1平均スペクトルA1’tを用いて、上記(1)式または(2)式により、声スペクトルVtを抽出する第1フィルタFV1tまたは背景音スペクトルBtを抽出する第1フィルタFB1tを作成する。
【0064】
分離部107は、声スペクトルの第1フィルタFV1tまたは背景音スペクトルの第1フィルタFB1tを用いて、声信号Svと背景音信号Sbを求める(ステップS320)。
【0065】
分離部107は、取得部101にて取得した音響信号の全てのフレーム(全区間)に対して、処理を行ったか否かを判定する(ステップS321)。全区間で処理を行っていなかった場合(ステップS321:No)、分離部107は、時刻tを次のフレームの時刻に更新し(ステップS322)、ステップS303に戻る。全区間で処理を行っていた場合(ステップS321:Yes)、信号処理を完了する。
【0066】
図4は、音響信号の定常性および非定常性に関する定義を示す図である。定常音(定常性の音響信号)は、平均が一定であり、分散が小さい音である。例えば、声の場合は「あー」などのような伸ばし音が定常音である。また、背景音の場合は、歓声およびエアコンの動作音などが定常音である。
【0067】
非定常音(非定常性の音響信号)は、平均が一定であり、分散が大きい音である。例えば、声の場合は話し声が非定常音である。また、背景音の場合は、音楽およびシーン切替り時の音が非定常音である。
【0068】
定常音に対し、非定常音は分散が大きい。声の大半が非定常音に分類される。
図4では、定常音および非定常音のスペクトル値の例が示されている。
【0069】
図5および
図6は、話し声と定常的な背景音が混合した音に対する分離を行った際の本実施形態による効果を説明するための図である。
図5では、入力混合音成分501が、入力背景音成分502と、第1背景音成分503とを含むことが示されている。少ないサンプルで背景音基底行列H2を推定すると、例えば
図5の矢印で示す差分504に対応する時刻では、入力背景音成分502に対して第1背景音成分503が不足する。このため、例えば第1背景音成分503を用いて作成したフィルタを用いる方法では、声に背景音が残存する場合がある。
【0070】
本実施形態では、
図6に示すように、過去の第1背景音成分を用いて推定した代表成分601を使用するため、声に背景音が残存する問題を改善できる。
【0071】
図7〜
図9は、第1の実施形態による客観評価実験の結果の一例を説明するための図である。
図7は、実験に使用した声と背景音に関する情報の例を示す。例えば、声として4種類の音源(映画2種類、アニメ1種類、ニュース1種類)を用い、背景音として20種類(クラシック、インストルメント、サウンドトラック、歓声がそれぞれ5種類)の音源を用いることが示されている。音源は、例えばそれぞれ20秒の音を用いる。
【0072】
図8および
図9に示すように、実験では、声に対して、背景音を4つの条件(SNR0、SNR5、SNR10、SNR15)のいずれかで混入した混合音を用いた。そして、この混合音を声信号と背景音信号とに分離した。それぞれの条件での平均精度を
図8および
図9に示す。なお、
図8および
図9中の従来1は、第1背景音成分503を用いて作成したフィルタで抽出した声信号の評価結果である。
【0073】
図8は、SNR改善度に基づく評価結果を示す図である。SNR改善度は、背景音の抑制精度を評価できる。評価値は、例えば非特許文献3に記載の方法を用いて求めればよい。
【0074】
図9は、PESQ改善度に基づく評価結果を示す図である。PESQは、抽出した声信号の劣化度合いを評価できる。PESQは、例えば非特許文献4に記載の方法を用いて求めればよい。
図7および
図8より、本実施形態による改善効果が確認できる。
【0075】
このように、本実施形態の信号処理装置は、過去に推定した第1背景音成分で構成される過去成分Zpを用いて推定した代表成分A1tにより声信号Svおよび背景音信号Sbを抽出する。これにより、時刻tに推定した第1背景音成分B1tが実際の入力背景音に対して不足しても、代表成分A1tを用いることにより不足分を補うことができる。その結果、声信号の抽出精度を向上させることができる。
【0076】
(第2の実施形態)
次に、第2の実施形態にかかる信号処理装置について説明する。
図10は、第2の実施形態にかかる信号処理装置200の構成の一例を示すブロック図である。
図10に示すように、信号処理装置200は、取得部101と、算出部102と、第1背景音推定部103と、代表成分推定部104と、第1声推定部105と、第1フィルタ作成部106と、第2背景音推定部401と、第2声推定部402と、第2フィルタ作成部403と、第3フィルタ作成部404と、分離部405と、を備える。
【0077】
第2の実施形態では、第2背景音推定部401、第2声推定部402、第2フィルタ作成部403、および、第3フィルタ作成部404を追加したことと、分離部405の機能が第1の実施形態と異なっている。その他の構成および機能は、第1の実施形態にかかる信号処理装置100のブロック図である
図1と同様であるので、同一符号を付し、ここでの説明は省略する。
【0078】
第2背景音推定部401は、取得部101で取得された特徴量から定常性を持つ第2背景音成分を推定する。第2声推定部402は、第1背景音推定部103で推定された第1背景音成分と第2背景音成分とから、第2声成分を推定する。第2フィルタ作成部403は、第2背景音成分と第2声成分とから、声のスペクトルまたは背景音のスペクトルを抽出する第2フィルタを作成する。第3フィルタ作成部404は、第1フィルタと第2フィルタとを統合した第3フィルタを作成する。
【0079】
分離部405は、第3フィルタと音響信号のスペクトルとを用いて、音響信号を声信号および背景音信号に分離する。
【0080】
本実施形態の信号処理装置200のハードウェアは、第1の実施形態の信号処理装置100のハードウェア構成を示す
図2と同様であるため説明を省略する。以下、本実施形態の信号処理装置200の各構成部の機能の詳細についてさらに説明する。
【0081】
第2背景音推定部401は、取得部101で取得された過去の複数フレームの特徴量を用いて第2背景音成分B2を推定する。具体的には、第2背景音推定部401は、過去の複数フレームの特徴量の平均値(平均特徴)を第2背景音成分B2として求める。なお、第2背景音成分B2を求める際に利用する特徴量は、算出部102で背景音基底行列H2の更新に用いた学習特徴を用いることができる。
【0082】
第2声推定部402は、取得部101で取得された現在のフレームの特徴量Ztと第1背景音推定部103で推定した第1背景音成分B1tと第2背景音成分B2とを用いて、第2声成分V2tを推定する。例えば、第2声推定部402は、特徴量Ztから第1背景音成分B1tと第2背景音成分B2の最大値を差し引いた成分を、第2声成分V2tとして求める。このとき、第2声成分V2tのi番目の要素V2tiは、Zti−max(B1ti,B2i)となる。
【0083】
なお、B1tiは第1背景音成分B1tのi番目の要素、B2iは第2背景音成分B2のi番目の要素である。また、max(a,b)は、値aと値bの最大値を取る関数である。このように、非定常成分を表現する第1背景音と定常成分を表現する第2背景音との両方を用いるため、定常性であるか非定常性であるかによらず、背景音を高精度に抑制して声成分を推定できる(後述の
図14、第2フィルタ効果参照)。
【0084】
第2フィルタ作成部403は、第2声推定部402で推定された第2声成分V2tと、第2背景音推定部401で推定された第2背景音成分B2と、を用いて、声スペクトルVtまたは背景音スペクトルBtを抽出するフィルタ(第2フィルタ)を作成する。第2フィルタ作成部403は、まず、第2声成分V2tと第2背景音成分B2を、第2声スペクトルV2’tと第2背景音スペクトルB2’に変換する。例えば第2フィルタ作成部403は、取得部101にてスペクトルを特徴量に変換する変換処理の逆変換により、第2声成分V2tと第2背景音成分B2を、第2声スペクトルV2’tと第2背景音スペクトルB2’に変換する。
【0085】
第2フィルタ作成部403は、次に、声スペクトルVtのi番目の要素Vtiを抽出する第2フィルタFV2tiを以下の(4)式により求める。
FV2ti=
|V2’ti|^L/(|V2’ti|^L+|B2’i|^L)・・・(4)
【0086】
また、第2フィルタ作成部403は、背景音スペクトルBtのi番目の要素Btiを抽出する第2フィルタFB2tiを以下の(5)式により求める。ここで、Lはパラメータ値であり、第1フィルタ作成部106と同様に設定できる。
FB2ti=
|B2’i|^L/(|V2’ti|^L+|B2’i|^L)・・・(5)
【0087】
第3フィルタ作成部404は、第1フィルタ作成部106で作成した第1フィルタと、第2フィルタ作成部403で作成した第2フィルタと、を用いて、声スペクトルVtまたは背景音スペクトルBtを抽出するフィルタを作成する。例えば、第3フィルタ作成部404は、声スペクトルVtのi番目の要素Vtiを抽出する第3フィルタFV3tiを、以下の(6)式により求める。
FV3ti=α×FV1ti+(1−α)×FV2ti・・・(6)
【0088】
ここでαはブレンド率である。αは、0≦α≦1の範囲で任意の値に設定すればよく、例えば0.1に設定できる。このように第3フィルタ作成部404は、第1フィルタおよび第2フィルタのαを重みとする重み付き加算により第3フィルタを作成する。なお、第3フィルタの作成方法はこれに限られるものではない。
【0089】
また、第3フィルタ作成部404は、背景音スペクトルBtのi番目の要素Btiを抽出する第3フィルタFB3tiを、以下の(7)式または(8)式により求める。
FB3ti=α×FB1ti+(1−α)×FB2ti・・・(7)
FB3ti=1−FV3ti・・・(8)
【0090】
第3フィルタ作成部404は、第1フィルタおよび第2フィルタを作成する際に用いた構成要素値を用いて第3フィルタの要素値を算出してもよい。例えば、以下の(9)式で表される変数V3ti、および、以下の(10)式で表される変数B3tiを用いて、第3フィルタFV3tiを以下の(11)式により求めてもよい。
V3ti=
α×|V1’ti|^L+(1−α)×|V2’ti|^L・・・(9)
B3ti=
α×|B1’ti|^L+(1−α)×|B2’i|^L・・・(10)
FV3ti=
|V3ti|^L/(|V3ti|^L+|B3ti|^L)・・・(11)
【0091】
声は背景音に比べ非定常性が強く、声の非定常成分を推定している第1フィルタでは、第2フィルタに比べ声成分を抽出しやすい。その結果、第3フィルタは、声成分を抽出しやすい第1フィルタの特性と、背景音の抑制精度の高い第2フィルタの特性を生かすことができ、さらに高精度な分離が可能となる(後述の
図14、第3フィルタ効果、
図15および
図16参照)。
【0092】
分離部405は、第3フィルタ作成部404で作成された、声スペクトルの第3フィルタFV3tまたは背景音スペクトルの第3フィルタFB3tを用いて、声スペクトルVtおよび背景音スペクトルBtを抽出する。分離部405は、まず、取得部101で取得した時刻tのスペクトルXtを用いて、声スペクトルVtのi番目の要素Vtiを以下の(12)式により求める。
Vti=Xti×FV1ti・・・(12)
【0093】
次に、分離部405は、声スペクトルVtを逆フーリエ変換することで、声信号Svを求める。これにより、音響信号から声信号と背景音信号を分離することができる。すなわち、背景音の混入が少なく純度の高い声信号を聴取することができる。
【0094】
次に、このように構成された信号処理装置200による信号処理について
図11を用いて説明する。
図11は、第2の実施形態における信号処理の一例を示すフローチャートである。
【0095】
ステップS301からステップS310は、第1の実施形態の
図3のフローチャートにおけるステップS301からステップS310と同様であるので同一の符号を付し説明を省略する。
【0096】
ステップS310の後、算出部102は、背景音基底行列H2の推定を開始してから実行した反復法の適用回数が、完了までに必要とする適用回数Rに達したか否かを判定する(ステップS501)。適用回数Rに達していない場合(ステップS501:No)、ステップS313に進む。適用回数Rに達している場合(ステップS501:Yes)、ステップS502に進む。
【0097】
ステップS502では、第2背景音推定部401は、背景音基底行列H2の更新に用いる学習特徴の平均値である平均特徴を第2背景音成分B2として求める(ステップS502)。ステップS502の後、ステップS312に進む。
【0098】
以下、ステップS312からS319は、第1の実施形態の
図3のフローチャートにおけるステップS312からS319と同様であるので同一の符号を付し説明を省略する。
【0099】
ステップS319の後、第2声推定部402は、取得した現在のフレームの特徴量Ztから、第1背景音成分B1tと第2背景音成分B2の最大成分を差し引いて、第2声成分V2tを求める(ステップS503)。
【0100】
第2フィルタ作成部403は、第2フィルタを作成する(ステップS504)。例えば、第2フィルタ作成部403は、第2声成分V2tと第2背景音成分B2を第2声スペクトルV2’tと第2背景音スペクトルB2’に変換する。そして、第2フィルタ作成部403は、変換により得られた第2声スペクトルV2’tと第2背景音スペクトルB2’を用いて、上記(4)式または(5)式により、声スペクトルVtを抽出する第2フィルタFV2tまたは背景音スペクトルBtを抽出する第2フィルタFB2tを作成する。
【0101】
第3フィルタ作成部404は、第1フィルタと第2フィルタをパラメータαに基づき統合し、声スペクトルVtを抽出する第3フィルタFV3tまたは背景音スペクトルBtを抽出する第3フィルタFB3tを作成する(ステップS505)。
【0102】
分離部405は、声スペクトルの第3フィルタFV3tまたは背景音スペクトルの第3フィルタFB3tを用いて、声信号Svと背景音信号Sbを求める(ステップS506)。
【0103】
以下、ステップS321およびS322は、第1の実施形態の
図3のフローチャートにおけるステップS321およびS322と同様であるので同一の符号を付し説明を省略する。
【0104】
図12から
図14は、話し声と非定常な背景音が混合した音に対する分離を行った際の本実施形態による効果を説明するための図である。
図12では、入力混合音成分1201、入力背景音成分1202、および、第2背景音成分1203のスペクトル値の例が示されている。入力混合音成分1201と入力背景音成分1202との差分が、入力声成分1211である。
【0105】
学習特徴の平均スペクトルである第2背景音成分1203では、入力背景音の非定常成分が考慮できない。このため、混合音と背景音(第2背景音成分1203)の差分で推定した声成分1221には、背景音が残存する場合がある。
図12の下部には、入力声成分1222および推定された声成分1221のスペクトル値の例が示されている。この例のように、第2背景音成分1203を用いる場合は、入力声成分1222と推定される声成分1221との差分が大きくなる(背景音が残存する)。
【0106】
一方、本実施形態では、
図13に示すように、第2声成分を推定するために加工した背景音成分1301を用いる。例えば、第2背景音成分1302と第1背景音成分1303のうち最大値を背景音成分1301として用いる。
図13の下部には、入力声成分1322および推定された第2声成分1321のスペクトル値の例が示されている。この例のように、本実施形態によれば、入力声成分1322と推定される第2声成分1321との差分を小さくすることができる。すなわち、非定常性(第1背景音成分)も考慮した背景音の抑制が実現できる。
【0107】
図14は、混合音を、第1フィルタ、第2フィルタおよび第3フィルタそれぞれで分離した場合の結果の例を示す図である。混合音は、背景音に対応するスペクトル1401と、セリフに対応するスペクトル1402と、を含んでいる。セリフに対応するスペクトル1402は可能な限り損失せずに、背景音に対応するスペクトル1401を抑制することが望ましい。
【0108】
第1フィルタのみを用いる場合、セリフの損失は少ないが(スペクトル1403)、背景音に対応するスペクトルの抑制効果は相対的に小さい。第2フィルタのみを用いる場合、背景音に対応するスペクトル1404の抑制効果は相対的に大きい。両者を考慮した第3フィルタを用いれば、セリフの損失が少なく(スペクトル1405)、背景音に対応するスペクトル1406の抑制効果も大きくすることができる。
【0109】
図15および
図16は、第2の実施形態による客観評価実験の結果の一例を説明するための図である。
図15および
図16の実験に用いた声、背景音、および混合音は
図8および
図9の客観評価実験に用いたもの(
図7)と同じである。
図15は、SNR改善度に基づく評価結果を示す図である。
図16は、PESQ改善度に基づく評価結果を示す図である。
図15および
図16により、本実施形態による改善効果が確認できる。なお、
図15および
図16中の従来2は、
図12の1221に示したように、混合音と第2背景音成分との差分から推定して求めた声信号の評価結果である。
【0110】
このように、第2の実施形態にかかる信号処理装置では、定常性のある背景音および非定常性のある背景音の両方を考慮して音響信号を分離できる。
【0111】
(第3の実施形態)
次に、第3の実施形態にかかる信号処理装置について説明する。
図17は、第3の実施形態にかかる信号処理装置300の構成の一例を示すブロック図である。
図17に示すように、信号処理装置300は、取得部101と、算出部102と、第1背景音推定部103と、代表成分推定部104と、第1声推定部105と、第1フィルタ作成部106と、第2背景音推定部401と、第2声推定部402と、第2フィルタ作成部403と、第3フィルタ作成部404と、分離部405と、混合率取得部601と、混合部602と、を備える。
【0112】
第3の実施形態では、混合率取得部601および混合率602を追加したことが第2の実施形態と異なっている。その他の構成および機能は、第2の実施形態にかかる信号処理装置200のブロック図である
図10と同様であるので、同一符号を付し、ここでの説明は省略する。
【0113】
混合率取得部601は、分離部405または外部入力から声信号および背景音信号の混合率を取得する。混合率取得部601は、分離部405で取得した信号から新たに抽出した特徴量に基づき混合率を取得する。
【0114】
例えば、混合率取得部601は、振幅の2乗値として求めたパワーの平均値に関して、声信号の方が背景音信号を上回るように混合率を設定し取得できる。または、混合率取得部601は、パワーや周波数解析で求めた特徴量の強度に応じて、声信号または背景音信号をさらに強調するように混合率を設定し取得してもよい。また、混合率取得部601は、外部入力としてユーザが設定した混合率を取得してもよい。
【0115】
混合部602は、分離部405で分離した声信号および背景音信号を、混合率取得部601で取得した混合率に従い混合し、混合信号(混合音)を生成する。
【0116】
このように、取得した混合率に応じて声信号および背景音信号を混合することで、例えばスポーツ実況に関する音声に対しては、会場の雰囲気を楽しめるように背景音の混合率を高めに設定することが可能になる。また、コンテンツのジャンルに応じて声の混合率および背景音の混合率を制御すれば、ドラマでは声を重視し、音楽では背景音を重視するといったコンテンツの特徴を強調した音声の提供が可能になる。さらに、声が聴き取りにくユーザが、背景音の混合率を下げ、声の混合率を上げる混合率を設定すれば、声が聴き取りにくいという不満を改善することも可能になり、個人の好みに対応することができる。
【0117】
以上説明したとおり、第1〜第3の実施形態によれば、声と背景音の分離性能を向上させることができる。
【0118】
第1〜第3の実施形態にかかる信号処理装置で実行されるプログラムは、記憶部202等に予め組み込まれて提供される。
【0119】
第1〜第3の実施形態にかかる信号処理装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
【0120】
さらに、第1〜第3の実施形態にかかる信号処理装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第1〜第3の実施形態にかかる信号処理装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【0121】
第1〜第3の実施形態にかかる信号処理装置で実行されるプログラムは、コンピュータを上述した信号処理装置の各部として機能させうる。このコンピュータは、CPUがコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
【0122】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。