以下、図面を参照して本発明の好適な実施形態について詳細に説明する。なお、本発明は以下の実施形態に限定されるものではなく、本発明の実施に有利な具体例を示すにすぎない。また、以下の実施形態の中で説明されている特徴の組み合わせの全てが本発明の課題解決のために必須のものであるとは限らない。
<実施形態1>
図1において、(a)は実施形態に係る信号処理システムの構成図、(b)は音声処理装置の機能ブロック図である。図1(a)において、信号処理システムは、撮像装置1と、音声処理装置として機能する情報処理装置2とを含み、両者は通信ケーブル3により接続されている。情報処理装置2は例えばパーソナルコンピュータで実現されうる。図1(b)は情報処理装置2の機能ブロック図である。図1(b)においては、機能ブロックは四角で示され、データは角の丸い四角で示されている。
撮像装置1は、図示しない集音装置(例えばマイクロホン)を備え、ユーザの操作により映像の記録と同期して音声を収集し、映像/音声を収めたファイルを生成する。これを動画ファイルと称する。本実施形態では、映像と同期して音声を取得する例で説明を行うが、音声を取得できる機器であれば映像は必須ではない。ただし多くの場面で、音声の取得はいわゆる動画撮影において行われるので、本実施形態は映像と音声を同期して取得する例を用いて説明する。
撮像装置1で取得された動画ファイルは通信ケーブル3を介して情報処理装置2に送られる。なお、撮像装置1と情報処理装置2との間の動画ファイルのやりとりは、通信ケーブル3を用いた有線通信に限られない。かわりに、無線通信を用いてもよいし、あるいはメモリカードの移動によるものでもよい。情報処理装置2は、そこに備えられたプログラムによって、受信した動画ファイルから音声信号を分離する。この音声信号が図1(b)における入力音声10である。
周波数領域変換部20は、時間領域信号である入力音声10を、フレームごとに周波数領域信号に変換し、周波数スペクトルの時間変化を表す周波数/時間領域信号11を取得する。周波数領域変換部20の具体的な動作は図2を用いて後述する。なお、周波数/時間領域信号はスペクトログラムと呼ばれることもある。
参照位置制御部21は、取得された周波数/時間領域信号11から切り出される所定の時間幅、所定の周波数幅の参照領域を設定する。ここで、参照領域は例えばユーザが指定することも可能である。比較部22は、参照位置制御部21で設定された参照領域とサイズが等しく位置が異なる複数の比較領域の各々について、参照領域に対する類似度を算出し、これを比較結果12として出力する。比較部22の動作の詳細については図3を用いて後述する。
置換信号生成部23は、比較結果12に基づいて周波数/時間領域信号11から参照領域と置換する置換信号13を生成する。置換信号生成部23の動作の詳細については図4を用いて後述する。出力音声生成部24は、置換信号13と周波数/時間領域信号11とに基づいて、周波数領域変換部20での変換に対する逆変換を施すことで出力音声14を生成する。
次に、図2を用いて周波数領域変換部20の動作について説明する。なお、図2から図4では、白色雑音の処理方法について説明する。また、図5から図7では、短時間でパワーの強い雑音の処理方法について説明する。
図2において、(a)は雑音が存在しないときの音声信号を、(b)は(a)の信号に対して白色雑音が重畳した場合の音声信号を示す。(c)は、(a)及び(b)の信号をフレームごとに周波数領域変換するときのフレーム長及びフレームのオーバラップを模式的に示す。(d)は、(a)の信号の1フレーム区間で周波数領域変換した結果を、(e)は、(b)の信号を同フレーム区間で周波数領域変換した結果を示す。本実施形態では、ノイズレベルの高い(b)の音声信号を入力として、(a)に近い雑音が低減された音声信号を出力信号として得ることを目指す。
図2の(a)及び(b)において、横軸は時間、縦軸は信号レベルであり、マイクロホンなどの集音装置で得られた信号そのものを示している。(a)及び(b)の信号は全体で0.3秒程度の時間の信号を示している。すなわちこれらの信号は動画ファイルから得られた音声信号のごく一部を拡大した図である。(a)及び(b)を見ると分かるように、音声信号は局所的に観察すると、非常に繰り返し性が高いことが分かる。一方で、時間的な変動が大きくかつスパース(信号が存在する区間が非常に限定されている)な性質を持っている。本発明の着眼点の一つは、音声の持つ短時間での繰り返し性にある。
上記したように、周波数領域変換部20は、時間領域信号である入力音声10をフレームごとに周波数領域信号に変換して周波数スペクトルの時間変化を表す周波数/時間領域信号11を取得する。この処理の一つの方法は、短時間FFTを施すことである。必要に応じて、FFT処理の前に窓関数を掛けてもよい。図2(c)は短時間FFTを模式的に示している。図2(c)のFFTと書かれた四角の横方向の大きさは一度にFFT処理を行うデータ大きさ(フレーム長)を示している。(縦方向は物理的な意味は無い。)FFTの性質から演算を容易にするために2の累乗で適当な大きさにすればよい。図2(c)に示すように、適当に重なる領域を設けながらずらした区間を切り出す。横方向に適当なサンプル数毎ずらして切り出すがこれをずらし量と記載する。ずらし量はオーバラップ量と呼ばれることもある。
望ましいFFTデータの大きさ(図2(c)のFFTと書いた四角の横の大きさ)やずらし量(図2(c)のFFTと書いた四角の横方向のずらしサンプル数)は以下のようになる。例えば、48000Hzで音声をサンプリングしているとする。FFT後のデータの周波数分解能はサンプリング周波数とFFTデータの大きさによって決まり、(サンプリング周波数/2)/(FFTデータの大きさ/2)で計算される。例えば、FFTデータ点数を1024点にすると(48000/2)/(1024/2)=46.875Hzとなる。この周波数分解能は、音声の基本周波数(ピッチ周波数)を表現するのに十分である。また、フレームのずらし量を、音声のピッチ周期の整数倍になるように設定するとよい。図2の(a)及び(b)では、類似した波形が繰り返し現れている。ここで、例えば非特許文献1に記載されているような方法でフレームごとに音声信号のピッチ検出を行い、フレームのずらし量をその検出されたピッチ周期の整数倍に決定するとよい。このように設定することで、主被写体音の周波数/時間変換後の位相が揃った状態になる。
図2において、(d)及び(e)はそれぞれ、(c)の30で示した区間で(a)及び(b)の音声信号を周波数領域信号に変換して得た結果を示している。周波数領域変換部20は(c)に示すように時間方向にずらして処理を行う。(d)及び(e)はこの特定の時間の信号のみに着目して図示したものである。(d)及び(e)は周波数領域変換後の複素数をいわゆるボード線図の状態で図示してあり、上段は位相、下段はゲインである。また横軸は共通して周波数である。(d)はノイズレベルの低い状態での信号を示しているので、ゲインに着目すると主被写体音の特徴が明瞭に得られておりピーク31,32,33が観察される。また、(d)のノイズレベルを34で図示した。一方、(e)はノイズレベルの高い状態での信号を図示しているので、ゲインに着目すると主被写体音のピーク31,32,33は観察されるが、ノイズレベル35が高いために埋もれかかっている。このような状態は、S/Nが小さく一般的には音質が良くない状態にあると言える。
図2の(d)及び図2(e)を縦に貫くように引いた破線は同じ周波数であることを明示するための線であり、ノイズレベルが高い状態にあっても主被写体音のピークが変化することはない。また、主被写体音の成分が優勢なピーク31,32,33では位相も大きく異なる値はとらない。位相やゲインのばらつきの状態については図3を用いて後述する。
図2を用いて説明したように、周波数領域変換部20は音声信号を適当な区間で切り出して周波数変換を施すなどの方法により、入力音声を周波数及び時間の広がりをもった複素数である周波数/時間領域信号11に変換する。
図3(a)は、周波数/時間領域信号11を模式的に示したものである。図3(a)では位相を省略してゲインのみ図示している。また、図を分かりやすくするためにピークのみ示した。すなわち図3(a)の線31、32、33は図2(d)及び(e)のピーク31、32、33と対応している。図3(b)は、ある時間、周波数に着目したときの周波数/時間領域信号のデータである複素数をガウス平面に表示したものである。すなわち横軸は複素数の実数部を、縦軸は複素数の虚数部をそれぞれ示している。
図3(a)において、区間30は図2(c)の区間30と対応しており、一度のFFTで得られるデータの範囲を示す枠を示す。41は参照領域の例を、42は比較領域の例を示す。41a,41bは参照領域41内の着目する周波数/時間領域信号を示す。比較領域42内の周波数/時間領域信号42a,42bはそれぞれ、周波数/時間領域信号41a,41bに対応する。図3(b)において、50a,50bはノイズ範囲を示す円を、51は仮想的に描いた平均的な主被写体信号を、52は主被写体音の平均的な信号が存在する範囲を示す円をそれぞれ示している。
図3(a)の横軸は時間であり、縦軸は周波数である。図3(a)に点線で示した格子は1つのデータを模式的に示している。すなわち、横方向の1マスの大きさは図2で説明したずらし量をサンプリング周波数で除した大きさの時間のスケールを持っている。縦方向の1マスの大きさは、図2で説明した周波数分解能に対応している。図3(a)は実際には複素数の大きさ(ノルム)に応じた値が濃淡で表示されるのであるが、図を明瞭に示すために図2(d)及び図2(e)に示したピーク31,32,33のみ示した。
ここで、参照領域41を設定することを考える。参照領域41は雑音処理がなされる領域である。参照領域はユーザの指示により設定されうる。(処理に時間はかかるが、音声全体とすることも可能である。)参照位置制御部21は、ユーザの指示に基づき、順次、参照領域を設定する。図3(a)の例では、参照領域は5×5マスの大きさを持っているが、これに限定されない。参照位置制御部21は例えば、これを縦横方向に1マスずつずらしながら(周波数/時間をずらしながら)、ユーザが指定した範囲を覆うように参照領域を順次設定することができる。
次に、比較領域42を設定することを考える。比較領域42は参照領域41と似たブロックを選択できると都合がよい。前述したように、音声信号は局所的にみると繰り返し性が高いので、参照領域と周波数位置が同じで時間位置が異なる領域を探索することは好都合となる。別の都合のよい比較領域としては、参照領域と時間位置が同じで周波数位置が異なる領域に設けることも考えられる。例えば、楽器音等が主被写体音の場合にはきれいな調波性がみられる。調波性とは、基本波成分(ピッチ成分)とその高調波に信号エネルギが集中している特徴であり、本発明で着目するもう一つの音声信号の特徴である。きれいな調波性がみられる信号では高調波に類似する波形が観察される。ノイズが狭帯域でピーク31が近傍のみにノイズの影響がみられるような場合や図2から図4で説明している白色雑音の場合にはこのような比較領域の選び方も有効である。調波性を利用することで別の周波数の信号を活用できるので比較的短時間の音声信号から参照領域41に類似する比較領域42を選択することが可能となる。
ここで参照領域41に対して比較領域42を設定した場合を考える。このとき、参照領域41と比較領域42の類似度を以下の式で計算する。
数1においてi,jは参照領域内に設けられた時間、周波数方向のローカル座標である。N,Mは時間及び周波数方向の参照領域41、比較領域42の大きさを表し、図3(a)においてはいずれも5である。XRは参照領域の信号を、XCは比較領域の信号を示している。||はノルムを計算する演算子である。数1は比較領域42内の各部の信号に対して、参照領域41と対応する位置との差を積算していることになる。すなわち比較領域42と参照領域41が完全に同一のものであれば数1はゼロとなり、類似度が下がるに従って大きな値をとる。つまり数1は参照領域41と比較領域42の類似度を算出している。本実施形態では、比較部22によって数1の演算を行い、類似度が高いものから予め定められた数または類似度が一定の範囲にある比較領域を選択する。置換信号生成部23で用いる比較領域は1つである必要はなく、後述するように中心極限定理に従ったノイズ処理なので、類似度が高いものが得られるのであれば、多い方が望ましい。
類似度の計算を図示したものが、図3(b)である。数1の計算のうち特定のもののみ示している。図3(a)から分かるように周波数/時間領域信号41a、42aはそれぞれ、XR(1,3)、XC(1,3)に対応する。周波数/時間領域信号41b、42bはそれぞれ、XR(5,1)、XC(5,1)に対応する。この2組の信号のみを図3(b)に図示した。(数1に示すように演算はその他の組み合わせでも行われる。)ここで、ピーク31が存在するので、周波数/時間領域信号41a,42aは強い主被写体音+白色雑音となっている。一方、周波数/時間領域信号41b,42bは弱い主被写体音+白色雑音となっている。図3(b)では分かりやすくするために、周波数/時間領域信号41b,42b領域に存在する弱い主被写体音を0として図示した。(このようにしても本発明の要旨に変化はない。)
図3(b)において、数1の演算は2つのベクトルの差のノルムを積算していることになる。すなわち、ベクトル41aとベクトル42aの差のベクトルの長さ及び、ベクトル41bとベクトル42bの差のベクトルの長さが評価値になる。例えば、主被写体音が存在しないように参照領域42を設定すると、41aと42bを比較するような状態になり、そのノルムは大きくなり数1の値が大きくなる。
前述したように、ピッチ検出を行うことで、主被写体音の周波数/時間変換後の位相は揃った状態にある。そのため図3(b)に示す平面において、主被写体音は、ノイズが無いとした場合のベクトル(図3(b)では51として図示している。)を中心とした円50aの内部に存在することになる。円のいずれの場所にあるかは確率的に決定され(これが白色雑音の特徴である。)ガウス分布的に分布している。中心極限定理によると、標本平均は標本のサイズが大きくなると元の母集団の平均に近づくので、多くの類似ブロックの信号を加算すると結果的にノイズの無いベクトル51に近づいていく。これが類似ブロックを集めて平均化することで白色雑音が低減できる理由である。
ここで、位相を揃えておく効用について説明する。前述のように、本実施形態ではピッチ検出を行い、フレームのずらし量をピッチ周期の整数倍にすることで、主被写体音の周波数/時間変換後の位相を揃えている。これを行わない場合には、主被写体音はノイズの無い場合に図3(b)の円52上のいずれかの場所に存在することになる。偶然位相が一致するような比較領域も存在し、その比較領域が類似しているとして選択されるが、その確率は低くなってしまう。音声信号が十分に長ければ、予め位相を揃えなくても偶然一致する個所を探索すればよいが、その場合においても計算量やメモリ領域を多く必要とする。本実施形態に示すように位相を揃えておくことで、類似する比較領域を短時間のデータから見つけることが可能となり、計算量やメモリ領域の削減に寄与する。
同様に、主被写体音が存在しない領域41b,42bでも原点を中心とした(=これが主被写体音が存在しないことと同義)円50b内に、ベクトル41b,42bは確率的に分布した状態にある。こちらも同様に多くの類似ブロックの信号を加算すると結果的にノイズの無い状態(=ゼロベクトル)に近づいていく。
図4は、置換信号生成部23及び出力音声生成部24の動作を説明する図である。図4(a)において、41は参照領域を、42、43、44は比較領域を示す。また、42n,43n,44nは参照領域とは異なることを模式的に示している。13は置換信号生成部23で得られる置換信号を示す。図4(b)は、図2(d)及び図2(e)と同じ時間の信号に対して置換信号生成部23によって置換された後の状態を示したボード線図である。図4(b)の上段は位相、下段はゲインである。また、横軸は共通して周波数である。さらに、31、32、33は図2(d)及び図2(e)と同じ音声信号のピークを、35は図2(e)に示したノイズレベルを、36は置換信号のノイズレベルをそれぞれ示している。
図4(a)においては比較領域が模式的に3つ示されているが、3つに限定されない。比較領域の数は図3で説明したように、類似度が高いものが得られるのであれば、多い方が望ましい。参照領域41に対して類似するとして選択された比較領域42、43、44を適当な重みを付けて加算する。これを式で示すと以下のようになる。
XOは置換信号を、XRは参照領域の信号を、XCkは比較領域の信号をそれぞれ示している。また、ここまでの説明では、比較領域の数は多い方がよいとしていたが、数2では所定数Pとしている。i,j,N,Mに関しては数1と同じである。また、kは選ばれた比較領域の番号に対応しており、1〜Pの整数値をとる。XC1は1番目の比較領域、XCPはP番目の比較領域という意味である。wkはフィルタの重みである。これは、後述するように、類似度の高い順に選択される所定数の比較領域の信号に重みを付けて加重平均とする等のために用いる。
図4(a)及び数2によれば、出力される置換信号13(XO)は、参照領域41(XR)と、選択された比較領域42(XC1)、43(XC2)、44(XCP)との重み付け平均になっている。図3(b)との対応を考えると、ノイズの無い場合のベクトル51に近いベクトルを推定している。比較領域42(XC1)、43(XC2)、44(XCP)には類似度の高い順に大きな重みwkを適用することで、適当なフィルタを実現することが可能となる。このフィルタ処理(重み付け平均をとることは一種のフィルタリングとみなせる。)によって比較領域42(XC1)、43(XC2)、44(XCP)に存在する参照領域41(XR)とは異なる信号成分42n,43n,44n(この信号はノイズに由来している。)が抑制される。(確率的に発生したノイズなので中心極限定理により図3で説明したように抑制される。)
その結果、図4(b)に示すように、雑音レベルの下がった信号を得ることができる。図4(b)ではノイズレベルが35から36に改善される様子を図示した。このときの改善量は図4(a)のフィルタの特性によって決まっており、例として重みが全て等しい単純平均の場合には、平均化する信号数のルートに比例してノイズレベルに対する信号レベルが改善する。例えば、4つの信号を平均化すると√4=2なので2倍のS/Nになる。
図4(b)で示される信号が置換信号として得られるので、この信号を元の位置に戻す。(図3(a)の30で図示した枠の位置にこの信号を当てはめる。)この処理は出力音声生成部24が行う。
以上は1つの参照領域に対する処理を説明したが、ユーザにより指示された範囲に複数の参照領域を設定し、各々の参照領域に対して動作を繰り返すことができる。これにより、ノイズの低減された周波数/時間領域信号を得ることができる。最後に、出力音声生成部24が、処理後の(置換信号によって置き換えが終了した)周波数/時間領域信号に対して、周波数領域変換部20での変換処理に対する逆変換を施すことで出力音声14を得る。
以上、図2から図4を用いて白色雑音を処理する例を示した。上記例によれば、音声の局所的な繰り返し性の良さや調波性を活用することで、類似する比較領域を狭い範囲から探すことが可能である。比較領域(時間方向の長さ)のデータのみメモリ上に展開して処理すればよいので、少ないメモリ消費で高品位な雑音低減処理が実現される。
次に、図5から図7を用いて短時間に発生する音圧の強い雑音(以下「短時間雑音」という。)を処理する方法を説明する。
図5は、図2と対応する図である。ただし、雑音が存在しない場合の波形は図2(a)と同じになるので省略した。図5において、(a)は短時間雑音が重畳した場合の音声信号を示す。(b)は(a)の信号を周波数時間変換するときのフレーム長及びフレームのオーバラップを時模式的に示す。(c)は(a)の信号の短時間雑音が重畳している1フレーム区間で周波数領域変換した結果を示す。短時間雑音は、例えば撮像装置1にユーザが不意に接触した場合や、ユーザの操作(タッチ)等により発生する。この雑音の特徴は発生している時間は短いが、音圧が高く(=パワーが強い)帯域が広い。これが図5の(a)及び(c)に示されている。
図5(a)において、60は短時間雑音が発生した時間を示している。図5(a)から分かるように、短時間雑音が発生した時間60の間は主被写体音が雑音に埋もれている状態にある。図5(b)は短時間FFTのフレームを模式的に示しているが、61は雑音を含むように設定された区間を示している。図5(c)は図5(b)の61で示した区間(雑音を含む区間)で図5(a)の音声信号を周波数変換した結果を図示している。図5(c)は周波数変換後の複素数をいわゆるボード線図の状態で図示してあり、上段は位相、下段はゲインである。また横軸は共通して周波数である。図5(c)は短時間雑音を含んでいるのでゲインのデータは62のように得られる。主被写体音の特徴であるピーク31,32,33が埋もれて観察できない状態にある。この信号に対して図2から図4と同じ処理をしても望ましい雑音低減は見込めない。そこで本実施形態では、予測に基づく短時間雑音発生時間の信号の置き換えを行う。
図6(a)は、図5(a)の信号に対する周波数/時間領域信号11を模式的に示したものである。図6(a)では位相を省略してゲインのみ図示している。また、図を分かりやすくするためにピークのみ示した。すなわち図6(a)の線31、32、33は図5(c)のピーク31、32、33と対応している。短時間雑音が発生した時間60では、ピーク31、32、33は雑音に埋もれているため示されていない。対照的に、前述した図3(a)では、ピーク31、32、33の線は、30の時間でも示されている。
図6(a)において、時間60は、図5(a)の短時間雑音が発生した時間60に対応する。41は参照領域の例を、42は比較領域の例を示す。41a、41b、41cは参照領域内の着目する周波数/時間領域信号を示す。比較領域42内の周波数/時間領域信号42a、42b、42cはそれぞれ、参照領域41内の周波数/時間領域信号41a、41b、41cに対応する。図6(b)は、周波数/時間領域信号41a、41b、41c、42a、42b、42cのデータをガウス平面上に図示したものである。50a、50bはノイズ範囲を示す円をそれぞれ示している。
図6(a)において、例えばユーザの指示により、短時間雑音が発生した時間60が参照領域41として選択されたとする。短時間雑音を処理する場合は前述の指示範囲を包含するような大きさに参照領域41を設定する。すなわち図6(a)においては、短時間雑音が発生した時間60は時間方向(横方向)に2マスの大きさを持っているが、これよりも大きい参照領域を設定する。図6(a)の例では参照領域41は5×5マスなので時間方向の大きさは2よりも大きい。可能であれば、参照領域41は短時間雑音が発生した時間60がその端にならないように設定するとよい。これは予測に基づく短時間雑音発生時間の信号の置き換えにおいて、雑音の前後の双方の音声信号を参照することができるためである。これにより前方又は後方のみからの予測に比べて信頼性を高め、出力音声の品位を向上させることができる。
次に、比較領域42を設定する。比較領域は白色雑音の場合と同様に設定すればよい。さらに望ましくは、比較領域は短時間雑音の発生がない個所に設定すればよい。このとき、参照領域41に対する比較領域42の類似度を以下の式で計算する。
数1との違いは、短時間雑音が発生した時間60を類似度の評価に含めない点である。すなわち、参照領域のうち雑音を含む時間に係る領域を類似度の算出から除外する。時間60の前後の波形は短時間雑音の影響を受けず、高品位な音声信号が得られている。これは図5(a)における時間60の前後の波形が繰り返し性の高い波形となっていることからも分かる。
図6(b)は、類似度の計算と短時間雑音の関係を示している。数3の計算のうち特定のもののみ示している。図6(a)から分かるように周波数/時間領域信号41a、42aはそれぞれ、XR(1,3)、XC(1,3)に対応する。周波数/時間領域信号41b、42bはそれぞれ、XR(5,1)、XC(5,1)に対応する。周波数/時間領域信号41c、42cはそれぞれ、XR(3,3)、XC(3,3)に対応する。この3組の信号のみを図6(b)に図示した。ここで、短時間雑音の影響を受けている41cは、図5(c)に示すようにピーク31が観察されずノイズによって決まるので、ゲインは大きく位相は任意の方向にある。これが偶然雑音が無い場合のベクトル42cと類似することもあるが、一般的には図6(b)に示すように大きく異なったベクトルとなっている。つまり、|XC(3,3)-XR(3,3)|は大きな値を持つであろう。この場所を除いて短時間雑音の前後が類似する参照領域を探す。これは楽器では同じ音が続いているような個所を、人の声では同じ母音を発声しているような個所を探すことに対応する。
図6(b)は図3(b)と類似した状態を図示しているので、短時間雑音が発生した時間60と重なったベクトル41cを除いて主被写体音はノイズを図示した円50aの範囲にある。主被写体音が弱い領域は別の円50bを中心とする円の中にベクトルが存在する。つまりベクトル41cの代わりにベクトル42cを用いれば、短時間雑音が発生した箇所の信号を生成することが可能となる。(前後が似ている別の周波数、時間の波形を持ってきてはめ込むので、予測に基づく短時間雑音発生時間の信号の置き換えといういい方を使った。)
図7は、置換信号生成部23及び出力音声生成部24の動作を説明する図である。図7(a)において、41は参照領域を、42、43、44は比較領域を示す。また、42n,43n,44nは参照領域とは異なることを模式的に示している。13は置換信号生成部23で得られる置換信号を示す。図7(b)は、図5(c)と同じ時間の信号に対して置換信号生成部23によって置換された後の状態を示したボード線図である。図7(b)の上段は位相、下段はゲインである。また、横軸は共通して周波数である。さらに31、32、33は音声信号のピークを、62は短時間雑音が存在する領域で入力音声を周波数/時間変換した時のゲインを、65は置換信号のゲインをそれぞれ示している。
図7(a)においては比較領域が模式的に3つ示されているが、複数であることを示しているものであり、3つに限定されない。参照領域41に対して類似するとして選択された比較領域42、43、44を適当な重みを付けて加算する。これを式で示すと以下のようになる。
XOは置換信号を、XRは参照領域の信号を、XCkは比較領域の信号をそれぞれ示している。数4は数2と類似しているが、参照領域の信号XRを含まない点が異なっている。これは、数2の重み付け平均をとる際に参照領域の信号に掛ける重みw0を0とすることに等しい。こうして参照領域41の信号を含めないようにすることで、短時間雑音の影響がない信号を得ることができる。これは図6(b)の41cの代わりに42cを当該個所の信号として用いることに対応する。
図7(a)及び数4によれば、出力される置換信号13(XO)は、選択された比較領域42(XC1)、43(XC2)、44(XCP)の重み付け平均になっている。比較領域42(XC1)、43(XC2)、44(XCP)には類似度の高い順に大きな重みwkを適用することで、適当なフィルタを実現することが可能となる。このフィルタ処理(重み付け平均をとることは一種のフィルタリングとみなせる。)によって比較領域42(XC1)、43(XC2)、44(XCP)に存在する参照領域41(XR)とは異なる信号成分42n,43n,44n(この信号は白色雑音に由来している。)は抑制される。(確率的に発生したノイズなので中心極限定理により抑制される。)最終的には、前後の情報から推定した、最適な信号が生成される。(ここでの最適とは発生確率が高いことを言う。)
その結果、図7(b)に示すように、短時間雑音の信号62を完全に破棄して、類似する参照領域から推定された適当な信号65が生成される。図7(b)で示される信号が置換信号として得られるので、この信号を元の位置に戻す。(図6(a)の60で図示した枠の位置にこの信号を当てはめる。)この処理は出力音声生成部24が行う。
以上は1つの参照領域に対する処理を説明したが、ユーザにより指示された範囲に複数の参照領域を設定し、各々の参照領域に対して動作を繰り返すことができる。これにより、ノイズの低減された周波数/時間領域信号を得ることができる。このようにして得られた周波数/時間領域信号に対して、周波数領域変換部20での変換処理に対する逆変換を施すことで出力音声14が得られる。
以上、図5から図7を用いて短時間雑音を処理する例を示した。上記例によれば、音声の局所的な繰り返し性の良さや調波性を活用することで、類似する比較領域を狭い範囲から探すことが可能である。比較領域(時間方向の長さ)のデータのみメモリ上に展開して処理すればよいので、少ないメモリ消費で高品位な雑音低減処理が実現される。
<実施形態2>
以下の実施形態2では、ピッチ検出処理を用いて効果的に比較領域を探すことで、より少ないメモリ消費で高品位な雑音低減処理を実現する。
図8は、本実施形態における情報処理装置2の機能ブロック図である。図1(b)と同じブロックには同じ参照番号を付しその説明を省略する。図8では、図1(b)の構成に対して、入力音声10の基準ピッチを検出するピッチ検出部25が付加されている。ピッチ検出部25は、ピッチ検出結果15を周波数領域変換部20及び比較部22に出力する。
ピッチ検出結果15に基づいたFFTデータの大きさやそのずらし量は以下のようになる。例えば、48000Hzで音声をサンプリングしているとする。FFT後のデータの周波数分解能はサンプリング周波数とFFTデータの大きさによって決まり、(サンプリング周波数/2)/(FFTデータの大きさ/2)で計算される。ここで求めた周波数分解能が検出したピッチ検出結果15から求まるピッチ周波数より細かい必要がある。周波数分解能がピッチ周波数より大きい場合、周波数/時間変換によりピッチ情報を損なうことになる。類似度の算出において、ピッチを含まない信号の類似度を算出することになり、それによりピッチ成分を除去することになってしまう。そのため、ピッチ周波数を含むように周波数/時間変換を行う必要がある。例えば、FFTデータ点数を1024点にすると(48000/2)/(1024/2)=46.875Hzとなる。この周波数分解能は、音声の基本周波数(ピッチ周波数)を表現するのに十分である。また、フレームのずらし量を、音声のピッチ周期の整数倍になるように設定するとよい。図2の(a)及び(b)では、類似した波形が繰り返し現れている。ここで、例えば非特許文献1に記載されているような方法でフレームごとに音声信号のピッチ検出を行い、フレームのずらし量をその検出されたピッチ周期の整数倍に決定するとよい。このように設定することで主被写体音の必要な周波数情報を損なうことなく周波数時間変換後の位相が揃った状態にすることができる。
図3(a)の例では、参照領域は5×5マスの大きさを持っているが、本実施形態では、周波数方向の大きさを、ピッチ検出結果15に応じた幅に設定する。例えば、比較領域42の設定において、周波数幅を、基準ピッチを含みその高調波を含まない周波数幅に設定するとよい。このように設定することで、類似度の高い比較領域をより多く得ることが可能となる。また、参照領域の周波数方向の大きさをこのように設定することで、基準ピッチ及び高調波を2つ以上含むことがないため、より多く類似する比較領域42を選択することが可能となる。
また、図5(b)では短時間FFTのフレームを模式的に示したが、61は雑音を含むように設定された区間を示している。ここでも、FFTは音声信号のピッチ周波数よりも周波数分解能が細かくなるように行い、ずらし量はピッチの整数倍になるように設定するとよい。ここでも、周波数方向の大きさは、白色雑音の場合と同様に、基準ピッチを含みその高調波を含まない周波数幅に設定するとよい。
本実施形態によれば、音声のピッチに対象を絞り局所的な繰り返し性の良さや調波性を活用可能となる。そのため、類似する比較領域を狭い範囲から探すことが可能となる。比較領域(時間方向の長さ)のデータのみメモリ上に展開して処理すればよいので、少ないメモリ消費で高品位な雑音低減処理が可能である。
<実施形態3>
以下の実施形態3は、上記した実施形態2の変形例である。図9は、本実施形態における情報処理装置2の機能ブロック図である。図8と同じブロックには同じ参照番号を付しその説明を省略する。図8の構成と比較すると、図9の構成はまず、周波数領域変換部20を持たない。すなわち、本実施形態は、周波数/時間領域での信号処理ではなく、時間領域での信号処理となる。また、図9の構成は、図8の構成に対して、周波数制限部26が付加されている。
ピッチ検出部25は、例えば非特許文献1に開示されている技術等でピッチを検出する。周波数制限部26は、ピッチ検出結果15に基づいて、少なくともピッチの成分が残存するように入力音声の周波数帯域制限を行う。このように周波数帯域を限定することで、類似度の計算においてピッチの類似度が高い比較領域を選択的に得ることができる。なお、通常の場合、周波数制限部26にはカットオフ周波数可変のバンドパスフィルタを用いることができる。
参照位置制御部21は、ユーザが指定した参照位置の範囲を受け付ける。比較部22は、周波数制限部26により周波数が限定された入力信号の上記指定された参照位置の範囲に、ピッチ検出結果15に基づいた所定の時間幅の参照区間を設定する。そして、入力信号における参照区間とサイズが等しく位置が異なる複数の比較区間の各々について、参照区間に対する類似度を算出してそれを比較結果12として出力する。比較結果12は、類似度が高い(=似ている)区間がわかるような情報を含む。
次に、図10及び図11を参照して、白色雑音の処理方法について説明する。図10において、(a)は入力音声10を、(b)は周波数制限部26により周波数が限定された信号を示す。ともに横軸は時間、縦軸は信号レベルである。ここで入力音声10に対し参照区間71を設定することを考える。参照区間71は雑音低減処理対象区間であり、対応する周波数制限後の信号に対する区間を71’とする。参照区間はユーザの指示により設定される。(処理に時間はかかるが、音声全体とすることも可能である。)ユーザの指示により参照位置制御部21が指し示す範囲に順次参照区間を設定すればよい。ここで、後述するように参照区間の時間幅は、ピッチ検出結果に基づいて、ピッチよりも長くなるように設定される。この参照区間を、後述するようにピッチ長だけずらしながら、指定範囲を覆うように参照区間を順次設定する。
次に入力音声10に対し比較区間72を設定する。比較区間72は参照区間71と似たブロックを選択できると都合がよい。前述したように、音声信号は局所的にみると繰り返し性が高いので近傍の時間区間を探索することは好都合となる。対応する周波数制限後の信号に対する区間を72’とする。前述したように本実施形態においては類似度の計算を周波数制限後の信号に対して行う。参照区間71’と比較区間72’の類似度を以下の式で計算する。
数5において、iは区間内に設けられた時間方向のローカル座標である。Nは時間方向の区間長であり、データ単位の大きさを示すものであるが、対応する時間長さは前述したようにピッチ検出結果15(基準ピッチ)より長い時間幅となるようにする。X’Rは周波数制限後の参照区間の信号を、X’Cは周波数制限後の比較区間の信号をそれぞれ示している。||は絶対値を計算する演算子である。数5は比較区間72’内の信号に対して、参照区間71’と対応する信号との差を積算していることになる。すなわち比較区間72’と参照区間71’が完全に同一のものであれば数5はゼロとなり、類似度が下がるに従って大きな値をとる。つまり数5は参照区間71’と比較区間72’の類似度を算出している。本実施形態では比較部22によって数5の演算を行い、類似度が高いものからあらかじめ定められた数または類似度が一定の範囲にある比較区間を選択する。(置換信号生成部で用いる比較区間は1つである必要はなく、前述したように中心極限定理に従ったノイズ処理なので、類似度が高いものが得られるのであれば、多いほうが望ましい。)
図10(c)は、置換信号生成部23のフィルタ処理を説明する図である。本実施形態においては、類似度の算出は周波数制限後の信号において行ったが、置換信号の算出はもとの入力音声10を用いる。図10(c)において、71は入力音声10の参照区間を示す。72,73,74は入力音声10の比較区間を示す。13は置換信号生成部23で得られる置換信号を示す。図10(c)においては、比較区間が模式的に3つ示されているが、複数であることを示しているものであり、類似度が高いものが得られるのであれば、多い方が望ましい。参照区間71に対して類似するとして選択された比較区間72、73,74を適当な重みを付けて加算する。これを式で示すと以下のようになる。
SOは置換信号を、SRは参照区間の信号を、SCkは比較区間の信号を示す。なお、比較区間の数は多いほうがよいと説明したが、数5では所定数Pである。i,Nに関しては数5と同じである。また、kは選ばれた比較区間の番号に対応しており、1〜Pの整数値をとる。SC1は1番目の比較区間、SCPはP番目の比較区間という意味である。wkはフィルタの重みである。後述するように、より類似度が高いものに重みを付けて加重平均とする等のために用いる。
図10(b)及び数6によれば、出力される置換信号13(SO)は参照区間71(SR)と選択された比較区間72(SC1),73(SC2),74(SCP)の重み付け平均になっている。比較区間72(SC1),73(SC2),74(SCP)には類似度の高い順に大きな重みwkを適用することで、適当なフィルタを実現することが可能となる。このフィルタ処理(重み付け平均をとることは一種のフィルタリングとみなせる。)によって参照区間71(SR)と比較区間72(SC1)、73(SC2)、74(SCP)、とのばらつき(このばらつきはノイズに由来している)が抑制される。(確率的に発生したノイズなので中心限定定理により抑制される。)以上の動作をユーザの指示により設定される範囲に順次参照区間をずらしながら行うことで、本実施形態では周波数領域変換部を用いることなく出力信号を得る。
図11は、参照区間71の適切な時間幅の設定について説明する図である。図11において、TOは基準ピッチを示す。まず、図11(a)、(b)を用いて、参照区間の時間幅tnが基準ピッチTOより長い適切な場合を説明する。図11(a)のように、参照区間71’(1)が設定された場合、比較区間を参照区間から基準ピッチTOの整数倍だけずれた時点の近傍ΔTOから探してくると効率がよい。これは、時間TOだけずれた時点に、ノイズが取り除かれる基準ピッチの同位相信号が存在することが明らかなためである。このようなずらし量で、前述したように比較結果12を得て、置換信号13(1)を算出する。
次に、参照区間71’(1)をずらして新たな参照区間71’(2)を設定し、同様に置換信号13(2)を導くことを考える。ここで、参照区間71のずらし量ΔtRは、参照区間の時間幅tnを超えない範囲において、基準ピッチTOの整数倍のうち最も長い量に設定すると効率がよい。このように設定することで、得られる置換信号13は、互いに時間的重なりを持ち、なお且つその時間的重なりが最も短くなる。よって、これらの信号から欠落のない出力音声14を合成することができ、その際の無駄な時間重なりを避けることができる。また、参照区間内の基礎周波数信号の位相が揃うため、得られる置換信号13も位相が揃った状態で得ることができる。よって、図11(b)に示すように、複数の置換信号13(1)、13(2)間の位置合わせ処理が容易となる。
一方、参照区間の時間幅tnが周期TOより短い不適切な場合を、図11(c)、(d)を用いて説明する。参照区間に対する比較区間を探す場所が、前述と同様に基準ピッチTOの整数倍離れた時点の近傍ΔTOであることに変わりはない。前述と同様の手順で参照区間71’(1)に対応した、置換信号13(1)を得る。
次に参照区間71’(1)をずらし、新たな参照区間71’(2)を設定する。その際、時間幅tnが基準ピッチTOより長い場合と異なり、得られる置換信号13が時間的重なりを持つためには、ずらし量ΔTRを基準ピッチTOより短く設定する必要がある。その結果、それぞれの参照区間71内の基準ピッチ信号の位相はばらばらになる。よって、図11(d)に示すように、複数の置換信号13(1)、13(2)間の位置合わせ処理が困難となる。
以上によれば、少ないメモリ消費で高品位な雑音低減処理が実現される。
次に、図12を用いて、短時間雑音を処理する方法を説明する。図12は図11と対応する図である。図12(a)において、入力音声10に対して参照区間71を設定する。ユーザの指示により、短時間雑音が発生した時間が参照区間として選択されたとする。短時間雑音を処理する場合は前述の指示範囲を包含するような大きさに参照区間71を設定する。可能であれば、参照区間71は短時間雑音が発生した期間がその端にならないように設定するとよい。さらには、前後に基準ピッチを数ピッチ含むことが望ましい。これは予測に基づく短時間雑音発生時間の信号の置き換えにおいて、雑音の前後の双方の音声信号を参照することができるためである。(前後または後方のみからの予測に比べて信頼性を高め、出力信号の品位を向上させることができる。)前後に基準ピッチを数ピッチ含むように設定するために、短時間雑音が発生する時間を特定する必要がある。適当な方法で短時間雑音を検出してもよい。撮像装置1の発する駆動音の場合には、撮像装置が短時間雑音の発生時間情報を音声情報に付与し、その情報をもとにしてもよい。また、入力音声10の参照区間71に対応するように周波数制限後の信号に対しても区間71’を設定する。
次に入力音声10に対して比較区間72を設定する。比較区間は白色雑音の場合と同様に設定すればよい。さらに望ましくは、短時間雑音の発生が無い箇所に設定すればよい。また、参照区間と同様に対応する周波数制限後の信号における区間を72’と設定する。
そして、周波数制限後の信号における参照区間71’と比較区間72’の類似度を以下の式で計算する。
数5との違いは短時間雑音が発生した時間60を類似度の計算に含めない点である。前述したようにNは短時間雑音を含み、前後に基準ピッチ数ピッチ分の時間幅を持つため、その前後の波形は短時間雑音の影響を受けておらず高品位な音声信号が得られている。
図12(c)において、71は入力音声10における参照区間を示す。72,73,74は周波数制限後の信号における区間と対応する比較区間を示す。白色雑音の場合と同様、類似度の算出は周波数制限後の信号において行うが、置換信号13はもとの入力信号を用いて行われる。図12(c)においては比較区間が模式的に3つ示されているが、複数であることを示している。参照区間71に対して類似するとして選択された比較区間72、73、74を適当な重みを付けて加算する。これを式で示すと以下のようになる。
SOは置換信号を、SRは参照区間の信号を、SCkは比較区間の信号を示す。数8は数6と類似しているが、参照区間の信号SRを含まない点で異なっている。すなわち参照区間41の信号を含めないようにすることで、短時間雑音の影響がない信号を得ることができる。
図12(a)及び数8によれば、出力される置換信号13(SO)は選択された比較区間72(SC1)、73(SC2)、74(SCP)の重み付け平均になっている。比較区間72(SC1)、73(SC2)、74(SCP)には類似度の高い順に大きな重みwkを適用することで、適当なフィルタを実現することが可能となる。このフィルタ処理によって、比較区間内に存在する参照区間とは異なる信号成分が抑制される。その結果図12(c)に示すように、短時間雑音の信号を完全に破棄して、類似する参照区間から推定された適当な信号13を得ることができる。
上述の処理を指示された範囲に参照区間を設定しながら繰り返すことで、ノイズの低減された出力音声14を得る。
本実施形態によれば、処理を時間領域で行うため、実施形態2のように階調性を利用することはできない。しかし、音声の基準ピッチに対象を絞り局所的な繰り返し性の良さを利用することで、比較区間(時間方向の長さ)のデータのみメモリ上に展開して処理すればよい。したがって、少ないメモリ消費で高品位な雑音低減処理が可能となる。
<実施形態4>
上述の実施形態においては、情報処理装置2が本発明に係る音声処理装置として機能するものとして説明した。しかし、本発明は撮像装置1単体で実現することも可能である。そこで本実施形態では、本発明に係る音声処理装置の構成を含んだ撮像装置1の例を、図13を参照して説明する。図13において、(a)は撮像装置1の外観斜視図、(b)は中央断面図、(c)は電気的構成を示すブロック図である。
撮像装置1(カメラ)は、撮影レンズ102と測距部115を用いて、焦点検出を行うとともに、不図示の露出検出部を用いて適当な露光状態となる露光条件を決定する。レンズ駆動部113は、撮影光学系103の一部を駆動させて像を撮像素子106近傍に結像させるとともに適正露光を得るために絞りを動作させる。カメラシステム制御部105は、ユーザによる操作を操作検出部110に含まれるレリーズ釦の操作と同期させて撮像素子106から被写体の情報を得て、メモリ108へ記録を行う。いわゆる動画撮影については、同じくユーザによる操作を操作検出部110で検知して画像と同期して音声信号を集音装置120から取得して動画ファイルを生成する。
撮像装置1は、撮像系、画像処理系、音声処理系、記録再生系、制御系を有する。撮像系は、撮影光学系103、撮像素子106を含み、画像処理系は、画像処理部107を含む。音声処理系は、マイクロホン等の集音装置120、音声処理部130を含む。記録再生系は、メモリ108、表示部109を含み、制御系は、カメラシステム制御部105、操作検出部110、及びレンズシステム制御部112、レンズ駆動部113を含む。レンズ駆動部113は、焦点レンズ、ブレ補正レンズ、絞りなどを駆動することができる。
撮像系は、物体からの光を、撮影光学系103を介して撮像素子106の撮像面に結像する光学処理系である。エイミングなどの撮影予備動作中は、クイックリターンミラー機構114に設けられたミラーを介して、測距部115にも光束の一部が導かれる。また、制御系によって適切に撮影光学系が調整されることで、適切な光量の物体光を撮像素子106に露光するとともに、撮像素子106近傍で被写体像が結像する。画像処理部107は、内部にA/D変換器、ホワイトバランス回路、ガンマ補正回路、補間演算回路等を有しており、記録用の画像を生成することができる。画層処理部107はまた、予め定められた方法を用いて画像、動画のデータ圧縮を行う。音声処理部130は、入力された音声のデータ圧縮を行う他、本発明に係る音声処理を実行する。もっとも、音声処理部130を別途設けるのではなく、カメラシステム制御部105が本発明に係る音声処理を実行する構成としてもよい。メモリ108は、画像処理部107、音声処理部130からのデータを記憶する。
カメラシステム制御部105は、撮像の際のタイミング信号などを生成して出力する。外部操作に応動して撮像系、画像処理系、音声処理系、記録再生系をそれぞれ制御する。例えば、不図示のシャッターレリーズ釦の押下を操作検出部110が検出して、撮像素子106の駆動、画像処理部107の動作、メモリ108へのアクセスなどを制御する。さらに表示部109の各セグメントの状態を制御する。
制御系の光学系の調整動作について説明する。カメラシステム制御部105には画像処理部107及び測距部115が接続されており、撮像素子106及び測距部115からの信号を元に適切な焦点位置、絞り位置を求める。カメラシステム制御部105は、電気接点111を介してレンズシステム制御部112に指令を出し、レンズシステム制御部112はレンズ駆動部113を適切に制御する。さらにレンズシステム制御部112には不図示の手ぶれ検出センサが接続されており、手ぶれ補正を行うモードにおいては、手ぶれ検出センサの信号を基にレンズ駆動部113を介してブレ補正レンズを適切に制御する。
本実施形態においては、上述の実施形態で説明した音声処理装置の機能が、音声処理部130によって実現される。以下、ユーザの操作によって動画撮影を行う場合を考える。前述のように適当に撮影光学系103を調整して撮像素子106に結像するようにして動画撮影を開始する。動画撮影においては撮像素子106の信号を適当なフレームレートで読み出すとともに予め定められたサンプリング周波数で集音装置120から音声信号を取得する。例えば画像は24フレーム/秒で読み出し、音声は48000Hzでサンプリングする。連続して得られた画像及び音声を適当な符号化方式によって圧縮することでいわゆる動画ファイルを生成する。
ここで、動画撮影中に撮影状態が大きく変化した場合を考える。例えば明るさやピント状態が大きく変化することに対応し、ユーザが撮影中に屋内と屋外を移動したり被写体がピント方向に移動した場合などが該当する。このような場合は、適当な明るさやピント状態での撮影ができなくなるので、撮像装置1はレンズシステム制御部112に指示を出して、レンズ駆動部113により適当な結像、露光状態が維持されるように動作する。例えば明るくなった場合には絞りを絞り込み、ピントが外れた場合にピントを合わせる動作に対応する。レンズ駆動部113が動画撮影中に動作するとレンズ駆動音が発生しうる。レンズ駆動音は空気及び撮像装置1の筺体を伝播し、集音装置120で収音した音声信号に雑音として混入する。この雑音を上述の実施形態で説明した手法で除去する。例えば絞りを駆動すると一般的には短時間雑音が発生する。一方で動画に適したようなフォーカス駆動はゆっくりと(長い時間)小さい音であるが雑音が発生する。これは有色であるが、実施形態1の白色雑音と同様にして処理を行うことができる。
音声処理部130は、レンズ駆動部113が動作した時間を雑音が発生した時間として認識して、実施形態1で説明した参照領域を設定する。実施形態1においては雑音を処理すべき区間(参照領域を設定する区間)はユーザの指示に従い設定された。しかし本実施形態では、不要雑音の発生時間が分かっているので、音声処理部130が自動的に設定することができる。
一般に、撮像装置1のような機器においてはメモリ資源に限りがあり、比較領域を一度にバッファできる量が制約される場合もある。しかし本発明では、上述したように、音声の短時間での繰り返し性の良さや調波性を利用して抽出する比較領域の数を削減できるため、このように使用できるメモリ容量が制約された機器にも有利である。
<実施形態5>
実施形態5では、上述の実施形態4における音声処理部130の変形例を示す。本実施形態において、撮像装置の構成については実施形態4に係る図13を援用する。実施形態4で説明したように、撮像装置1においては、動画撮影中にレンズ駆動部113が動作するとレンズ駆動音が発生し、これが空気及び撮像装置1の筺体を伝播し、集音装置120で収音した音声信号に雑音として混入する。以下では、レンズ駆動音を「レンズ駆動雑音」という。
本実施形態において、音声処理部130は、主被写体音が適正な音圧レベルで記録されるように、被写体音に応じてオートゲインコントロール(AGC)を行う。カメラシステム制御部105は、画像処理部107及び音声処理部130でそれぞれ符号化された画像データ及び音声データから動画ファイルを生成する。この動画ファイルには、カメラシステム制御部105が発した駆動命令に基づくレンズ駆動部113の駆動タイミングとAGCの設定値が動画ファイルに同期して記録される。なお、レンズ駆動部113が駆動するタイミングにおいてAGCの値は直前の被写体音に合わせた設定値のまま固定される。
図14は、本実施形態における音声処理部130の機能ブロック図である。図1(b)と同じブロックには同じ参照番号を付している。参照位置制御部21は、レンズ駆動雑音が発生した時間、つまりカメラシステム制御部105からレンズ駆動命令が発せられレンズ駆動部113を駆動させた時間の範囲を、雑音処理する範囲(すなわち参照領域)として設定する。音圧検出部33は、周波数/時間領域信号11における音声信号の音圧を検出し、レンズ駆動雑音の音圧と本来録音をしたい被写体音との音圧差を検出する。例えば、レンズ駆動雑音を予め記憶しておき、被写体音に合わせて調整されるAGCの値をみることで、被写体音とレンズ駆動雑音の音圧差を検出することができる。比較位置制御部34は、音圧検出部33での検出結果に応じて比較領域を切り出す位置を制御する。比較位置制御部34の詳細な動作については後述する。
音声信号置換部37は、参照領域の音声信号を置換信号13で置換し、置換後周波数/時間領域信号125を生成する。周波数時間逆変換部38は、置換後周波数/時間領域信号125に対し周波数領域変換部20の逆変換を施すことで、時間領域信号である出力音声14を生成する。
次に、図15を参照して、周波数領域変換部20の動作について説明する。図15において、(a)はレンズ駆動雑音が存在しない時の音声信号を、(b)は(a)の信号に対してレンズ駆動雑音が一部に重畳した場合の音声信号を示す。(c)は、(a)及び(b)をフレームごとに周波数領域変換するときのフレーム長及びフレームのオーバラップを模式的に示す。(d)は、(a)の信号の1フレーム区間で周波数領域変換した結果を、(e)は、(b)の信号の同フレーム区間で周波数領域変換した結果を示す。
図15の(a)及び(b)において、横軸は時間、縦軸は信号レベルであり、集音装置120で得られた信号そのものを示している。(a)及び(b)の信号は全体で0.3s程度の時間の信号を示している。すなわちこれらの信号は動画ファイルから得られた音声信号のごく一部を拡大した図である。(a)を見ると分かるように、音声信号は局所的に観察すると、非常に繰り返し性が高いことが分かる。一方で、時間的な変動が大きくかつスパース(信号が存在する区間が非常に限定されている)な性質を持っている。本発明の着眼点の一つは、音声の持つ短時間での繰り返し性にある。
上述したように、周波数領域変換部20は、時間領域信号である入力音声10をフレームごとに周波数領域信号に変換して周波数/時間領域信号11を取得する。この処理の一つの方法は、短時間FFTを施すことである。必要に応じてFFT処理の前に、窓関数を掛けてもよい。図15(c)は、図2(c)と同様に、FFTにおけるフレーム間のオーバラップを表している。
図15において、(d)及び(e)はそれぞれ、(c)の40で示した区間で(a)及び(b)の音声信号を周波数変換して得た結果を示している。周波数領域変換部20は(c)に示すように時間方向にずらして処理を行う。(d)及び(e)はこの特定の時間の信号のみに着目して図示したものである。(d)及び(e)は周波数領域変換後の複素数をいわゆるボード線図の状態で図示してあり、上段は位相、下段はゲインである。また横軸は共通して周波数である。(d)はレンズ駆動雑音がない状態での(c)の区間40における音声信号を示しているので、ゲインに着目すると主被写体音の特徴が明瞭に得られておりピーク41、42、43が観察される。一方、(e)はレンズ駆動雑音が混入しているフレーム40における音声信号を示している。ここで、ゲインに注目すると主被写体音のピーク41、42、43は観察されるが、その他の位置にレンズ駆動雑音の影響が表れている。例えば、ピーク41付近の範囲45では、その帯域内で一様な雑音が混入し、ピーク以外のすそ野の部分が盛り上がっている。範囲46では、ピーク43以外にもレンズ駆動雑音における他のピークが表れている。これは、レンズ駆動雑音に特徴的な周波数成分が含まれていることを示している。一般に、白色雑音とは、全周波数帯域においてランダムな位相でほぼ一様なゲインで有するものをいうが、ここでは、注目する帯域において一様なゲインのランダムな位相の雑音を白色雑音と呼ぶ。
図15において、(b)に示すようなレンズ駆動雑音の混入では、(e)の範囲45付近の帯域である主被写体音のピーク41,42が大きく変化することはない。また、主被写体音の成分が優勢なピーク41,42では位相も大きく異なる値はとらない。
位相やゲインのばらつきの状態について、図16を用いて説明する。図16(a)は、図3、図6と同様に、周波数/時間領域信号11を模式的に示したものである。図16(a)では位相を省略してゲインのみ図示している。また、図を分かりやすくするためにピークのみ示した。すなわち図16(a)の線41、42、43は図15(d)及び(e)のピーク41、42、43と対応している。図16(b)は、ある時間、周波数に着目したときの周波数/時間領域信号のデータである複素数をガウス平面に表示したものである。すなわち横軸は複素数の実数部を、縦軸は複素数の虚数部をそれぞれ示している。
図16(a)において、区間40は、図15(c)の区間40と対応しており、一度のFFTで得られるデータの範囲を示す枠を示す。51、61は参照領域の例を、52、62は比較領域の例を示す。周波数/時間領域信号51a,51b、61a、61bは参照領域内の着目する信号を示す。周波数/時間領域信号52a、52b、62a、62bはそれぞれ、比較領域内の周波数/時間領域信号51a、51b、61a、61bに対応する信号である。図16(b)において、70a,70bはレンズ駆動雑音を含む雑音範囲を示す円を、71は仮想的に描いた平均的な主被写体信号を、72は主被写体音の平均的な信号が存在する範囲を示す円をそれぞれ示している。また、図16(c)は、図16(a)の周波数/時間領域信号61a、61b、62a、62bのデータをガウス平面上に図示したものである。
図16(a)において、範囲46はレンズ駆動雑音の特徴的な周波数を含む帯域であり、ピーク43が埋もれている。一方、フレーム40の時間における範囲46以外の範囲は、白色雑音でありピーク41,42が確認できる。
ここで、参照領域51を設定することを考える。参照領域51は雑音処理がなされる領域である。レンズ駆動部113の駆動中のフレームを含む領域が参照領域に設定される。レンズ駆動部113の駆動タイミングが検出されると、参照位置制御部21は、順次、参照領域を設定する。図16(a)の例では参照領域は5×5マスの大きさを持っているが、これに限定されない。参照位置制御部21は、これを縦横方向に1マスずつずらしながら(周波数/時間をずらしながら)所定範囲を覆うように参照領域を順次設定することができる。
比較領域52については、実施形態1と同様に設定する。参照領域51と比較領域52の類似度も、実施形態1と同様、次式により計算する。
類似度の計算の概念を図示したものが、図16(b)である。数9の計算のうち特定のもののみ示している。図16(a)から分かるように周波数/時間領域信号51a,52aはそれぞれXR(3,3)、XC(3,3)に対応する。周波数/時間領域信号51b,52bはXR(5,1)、XC(5,1)に対応する。この2組の信号のみを図16(b)に図示した。(数9に示すように演算はその他の組み合わせでも行われる。)ここで、ピーク41が存在するので、周波数/時間領域信号51a,52aは強い主被写体音と白色雑音の合成信号となっており、51aの白色雑音にはレンズ駆動雑音の低周波帯域における音圧レベルの低い雑音も含まれている。一方、周波数/時間領域信号51b,52bは弱い主被写体音とマイクの感度性能から発生する白色雑音との合成信号となっている。図16(b)では分かりやすくするために、周波数/時間領域信号51b,52b領域に存在する弱い主被写体音を0として図示した。(このようにしても本発明の要旨に変化はない。)
図16(b)において、数9の演算は2つのベクトルの差のノルムを積算していることになる。すなわち、ベクトル51aとベクトル52aの差のベクトルの長さ及び、ベクトル51bとベクトル52bの差のベクトルの長さが評価値になる。例えば、主被写体音が存在しないように参照領域52を設定すると、51aと52bを比較するような状態になり、そのノルムは大きくなり数9の値が大きくなる。
前述したように、ピッチ検出を用いることで、主被写体音の周波数/時間変換後の位相は揃った状態にある。そのため図16(b)に示す平面において、主被写体音は、ノイズが無いとした場合のベクトル(図16(b)では71として図示している。)を中心とした円70aの内部に存在することになる。円のいずれの場所にあるかは確率的に決定され(これが白色雑音の特徴である。)ガウス分布的に分布している。中心極限定理によると、標本平均は標本のサイズが大きくなると元の母集団の平均に近づくので、多くの類似ブロックの信号を加算すると結果的にノイズの無いベクトル71に近づいていく。これが類似ブロックを集めて平均化することで白色雑音が低減できる理由である。ここでは、レンズ駆動雑音が発生したフレーム40を含む領域51aについて述べた。しかし、ピーク41を含むその他の領域XR(1,3)〜XR(5,3)においてもマイクの感度性能における白色雑音は混入しているので、同様に雑音を低減して被写体音のピーク41を強調することができる。
同様に、主被写体音が存在しない領域51b,52bでも原点を中心とした(=これが主被写体音が存在しないことと同義)円70b内に、ベクトル51b,52bは確率的に分布した状態にある。こちらも同様に多くの類似ブロックの信号を加算すると結果的にノイズの無い状態(=ゼロベクトル)に近づいていく。
図17は、置換信号生成部23及び音声信号置換部37の動作を説明する図である。図17(a)において、51は参照領域を、52、53、54は比較領域を示す。また、51nはピーク41より音圧レベルの低いレンズ駆動雑音である。52n,53n,54nは参照領域とは異なることを模式的に示している。24aは置換信号生成部23で得られる置換信号を示す。図17(a)においては比較領域をが模式的に3つ示されているが、3つに限定されない。比較領域の数は、類似度が高いものが得られるのであれば、多い方が望ましい。参照領域51に対して類似するとして選択された比較領域52、53、53を適当な重みを付けて加算する。これを式で示すと以下のようになる。
XOは置換信号を、XRは参照領域の信号を、XCkは比較領域の信号をそれぞれ示している。また、ここまでの説明では、比較領域の数は多い方がよいとしていたが、数9では所定数Pとしている。i,j,N,Mに関しては数1と同じである。また、kは選ばれた比較領域の番号に対応しており、1〜Pの整数値をとる。XC1は1番目の比較領域、XCPはP番目の比較領域という意味である。wkはフィルタの重みである。これは、後述するように、類似度が高い順に選択される少なくとも1つの比較領域の信号に重みを付けて加重平均とする等のために用いる。
図17(a)及び数10によれば、出力される置換信号13(XO)は、参照領域51(XR)と、選択された比較領域52(XC1)、53(XC2)、54(XCP)の重み付け平均になっている。図16(b)との対応を考えると、ノイズの無い場合のベクトル71に近いベクトルを推定している。比較領域52(XC1)、53(XC2)、54(XCP)には類似の高い順に大きな重みwkを適用することで、適当なフィルタを実現することが可能となる。このフィルタ処理(重み付け平均をとることは一種のフィルタリングとみなせる。)によって比較領域52(XC1)、53(XC2)、54(XCP)に存在する参照領域51(XR)とは異なる信号成分52n,53n,54n(この信号はノイズに由来している。)は抑制される。(確率的に発生したノイズなので中心極限定理により図16で説明したように抑制される。)
その結果、図17(c)に示すように、雑音レベルの下がった信号を得ることができる。図15(e)との比較において、図17(c)の範囲47では、レンズ駆動雑音の低周波帯域の白色雑音のレベルが抑圧されていることがわかる。
次に、図16(c)を参照して、レンズ駆動雑音の特徴的な周波数を含む図15(e)の範囲46の周波数帯域における類似度の計算について説明する。図16(a)から分かるように、周波数/時間領域信号61a、62aはそれぞれXR(1,4)、XC(1,4)に対応する。また、周波数/時間領域信号61b,62bはそれぞれ、XR(3,4)、XC(3,4)に対応している。この2組の信号のみを図16(c)に図示した。周波数/時間領域信号61a、62a及び62bは、被写体音のピーク43が存在するので、図16(b)の周波数/時間領域信号51a、52aと同様に、強い主被写体音とマイクの感度性能による白色雑音になっている。一方、周波数/時間領域信号61bは、レンズ駆動雑音の特徴的な周波数の影響を受けているために、図16(a)に示すようにピーク43がノイズに埋もれて観察されず、ゲインは大きいまま位相は任意の方向にある。この結果、図16(c)に示すように円75aから外れたベクトルとなっている。つまり|XC(3,4)-XR(3,4)|は|XC(1,4)-XR(1,4)|より大きな値を持つであろう。ここで、参照領域61の大きさ(ブロック数)がレンズ駆動雑音混入の範囲46に対して十分大きければ、参照領域61と比較領域62との類似度の評価値は周波数/時間領域信号61bの影響をほとんど受けない。よって、上述したように参照領域51と同様に類似度を算出し、類似度の高い比較領域の信号を用いて置換信号生成部23により置換信号を生成すればよい。一方、参照領域61の大きさ(ブロック数)に対して、レンズ駆動雑音の範囲46が比較的大きい場合は、次のように類似度の評価値を求める際に、範囲46を計算から省いてもよい。参照領域61と比較領域62の類似度を次式により計算する。
数9との違いは、レンズ駆動雑音の特徴的な周波数が存在する範囲46を類似度の評価に含めない点である。
次に、図17(b)を参照して、置換信号生成部23の動作について説明する。図17(b)において、61は参照領域を、62、63、64は比較結果12で得られた比較領域を示す。61nは、参照領域61におけるレンズ駆動雑音を模式的に示す。24bは、置換信号生成部23で得られる置換信号を示す。参照領域61にはレンズ駆動雑音が範囲46に含まれるので、数10の重み付け平均をとる際に参照領域61aに掛ける重みw0を0とする。これにより、図17(c)の範囲48に示すように、レンズ駆動雑音の特徴的な周波数の帯域においても、ノイズを低減することができる。
上述の処理を、所定範囲に参照領域を設定しながら繰り返すことで、ノイズの低減された置換後周波数/時間領域信号を得ることができる。最後に、周波数時間逆変換部38が置換後周波数/時間領域信号125に対して、周波数領域変換部20の逆変換を施すことで出力音声14を得る。
次に、本本実施形態における比較領域の制御方法について図15及び図18を参照して説明する。図18において、(a)はレンズ駆動雑音が複数回発生した時の音声信号を示す。(b)は(a)を周波数領域変換を行うときのフレームの重なりの例を示す。(c)は(a)の音声信号に対する周波数/時間領域信号を示す。なお、(a)において、横軸は時間、縦軸は信号レベルを表す。また、(c)は位相を省略してゲインのみ図示した。
図18(a)の音声信号は図15(a)で示した主被写体音声と似た音声信号の範囲73、74,75を抽出したものであり、それぞれの範囲内でレンズ駆動雑音76、77、78が発生している。レンズ駆動雑音76、77、78は、同じレンズ駆動部を駆動させた時に発生したものであり、絞り駆動部を駆動させた時の雑音を例とする。上述したように、音声信号と共にレンズ駆動雑音76、77、78が発生した駆動タイミングが音声信号と同期して記録されている。範囲73、74、75において、主被写体音声は同じ音圧レベルとなっているが、上述したAGCの設定値によって各範囲で異なる値の増幅が行われている。つまり、レンズ駆動雑音はそれぞれ異なる音圧レベルとなっている。例えば、範囲74では、主被写体音が小さかったためAGCの設定値(ゲイン値)が大きくなり、その結果、レンズ駆動雑音77も増幅されて76よりも大きな音圧レベルの雑音として記録されている。一方、範囲75では主被写体音が大きかったため、AGCのゲイン値は小さくなりレンズ駆動雑音78は76よりも小さな音圧レベルで記録されている。メモリ108には、上述したように音声信号と同期してAGCの設定値の変化とレンズ駆動部113の駆動タイミングが記録されている。このAGCの設定値より、録音を目的とする主被写体音とレンズ駆動雑音の音圧レベルの差を比較することができる。図18(b)のフレーム81、82、83は、それぞれレンズ駆動雑音76、77、78が混入している周波数時間変換する時のフレームである。図18(c)において、81、82、83は、図18(b)の81、82、83と対応しており、1フレームのFFTで得られるデータの範囲を示す枠を示す。91は参照領域の例を、92、93は比較領域の候補例を示している。各レンズ駆動雑音が混入したフレーム81,82,83において、レンズ駆動雑音の音圧レベルを斜線の幅で表現している。斜線の幅が狭いほど雑音の音圧レベルが高いものとする。また、参照領域91及び比較領域92、93を含む周波数帯域85は、図15(e)で示したように、レンズ駆動雑音の特徴的な周波数の帯域を示している。
参照領域91を設定して、比較領域を設定する処理を述べる。レンズ駆動雑音を低減したい参照領域91に対して、92を比較領域として設定した場合、比較領域92では前述したようにレンズ駆動雑音の音圧レベルが大きい。このような比較領域92との類似度を算出すると、被写体音ではなくレンズ駆動雑音に類似度が大きく影響を受け、類似性が高いと判断され選択されることが考えられる。しかし、比較領域92に重みが大きく付けられ置換信号が生成されると、レンズ駆動雑音の低減効果が下がるか、場合によってはレンズ駆動雑音が増幅されてしまう。一方、93が比較領域として設定された場合、比較領域93にはレンズ駆動雑音が混入しているが、上述したようにレンズ駆動雑音の音圧レベルは小さい。そして、比較領域93の被写体音が参照領域91に対して類似しているので、類似度が高いとして選択される。置換信号生成時に比較領域93が類似度が高いと判断され選択されても、混入しているレンズ駆動雑音の音圧レベルが小さいので、置換信号はレンズ駆動雑音が低減されたものとなる。
そこで、音圧検出部33、比較位置制御部34は、以下のような処理を行う。周波数領域変換部20で周波数/時間変換されたフレームにはフレーム間でのAGC情報とレンズの駆動タイミング情報が付与されている。音圧検出部33は、音圧レベルに関連する値であるフレーム内のAGCの設定値に基づきレンズ駆動雑音が混入しているフレームのレンズ駆動雑音の音圧レベルを検出する。比較位置制御部34は、各フレームに対してレンズ駆動のタイミング情報に基づきレンズ駆動雑音が混入しているか、及びレンズ駆動雑音の音圧レベルが閾値を超えているかを判断する。そして、比較位置制御部34は、判断されたフレームを含む周波数/時間領域を比較領域として設定するか否かの判定を行う。例えば、フレーム82について、AGCの設定値が閾値より大きい場合は、比較位置制御部34は、フレーム82を含む周波数時間領域を比較領域として設定しない。一方、フレーム83について、AGCの設定が閾値より大きくない場合は、比較位置制御部34は、フレーム83を含む周波数時間領域も比較領域として設定するように制御される。また、レンズ駆動のタイミング情報よりフレーム内にレンズ駆動雑音が混入していなければ、比較位置制御部34は、そのフレームを含む周波数時間領域も比較領域として設定する。なお、閾値を0に設定すれば、レンズ駆動雑音が混入しているフレームは全て比較領域に設定されないようになる。
比較部22は、各比較領域の参照領域に対する類似度を算出しそれを比較結果12として出力する。そして、置換信号生成部23は、比較結果12に基づきレンズ駆動雑音が低減された置換信号13を生成する。音声信号置換部37は、その置換信号13でもって元の音声信号の対応する部分を置換し、これを置換後周波数/時間領域信号125として出力する。このときカメラシステム制御部105は、レンズ駆動雑音が低減された音声信号については、以後、参照領域として設定されても問題ないので、レンズ駆動のタイミング情報を書き換えてもよい。
このようにして、主被写体音とレンズ駆動雑音との音圧レベル差に応じて比較領域に設定するかを制御することで、音声信号に混入したレンズ駆動雑音を高精度に低減することができる。
以上述べたように、撮像装置による動画撮影及び録音中において、レンズ駆動時に発生するレンズ駆動雑音が録音音声信号に混入した場合でも、高品質に雑音を低減することができる。
本実施形態の雑音低減処理は、自動で、かつ、リアルタイムで実行することも可能である。例えば、動画撮影中に一定時間の音声信号をバッファリングし、レンズ駆動が発生するたびに、バッファ内の音声信号内で比較領域を設定していく。また、動画撮影終了後に、録音された音声信号の全部又は一部を比較領域として設定するようにしてもよい。比較領域を設定できる範囲が広い場合、比較部22での演算処理負荷が大きくなるが、選択される比較領域の類似度が高まる確率が上がるので、高精度な雑音低減処理を行うことができる。また、ユーザが撮影した動画・音声を視聴して、レンズ駆動雑音の低減したい範囲を参照領域として指定し、雑音低減処理を行ってもよい。また、上述したAGCの設定値についての閾値をユーザが設定できるようにしてもよい。例えば、カメラ2内の表示部109に、雑音低減レベルを大、中、小など段階的に選択できるように表示し、選択されたレベルに応じて閾値を設定することが考えられる。
また、上述の例ではレンズ駆動雑音が発生したタイミングのAGCの設定値からレンズ駆動雑音が含まれるフレームを比較領域に設定するかを判断したが、次のようにしてもよい。本実施形態のレンズ駆動雑音は、図15(e)に示すように、周波数帯域46付近に特にゲインの高い特徴的な雑音が含まれているが、その他の周波数帯域は比較的白色雑音に近くゲインの低いものである。そこで、予め記憶されたレンズ駆動雑音について周波数帯域ごとに閾値を持ち、レンズ駆動雑音の周波数に応じて比較領域として設定するかを判断してもよい。図18(c)の94は、参照領域91と同時間における低周波帯域の参照領域を示す。また、95、96はそれぞれ、領域92、93と同時刻における低周波帯域の比較領域の候補を示す。上述したように、参照領域91が設定されたとき、領域92はレンズ駆動雑音の特徴的な周波数でゲインも大きいので、比較位置制御部34において閾値より音圧レベルが大きいと判断され、比較領域として設定されないように制御される。一方、同期した時刻の違う周波数帯域を含む参照領域94が設定されたときは、レンズ駆動雑音が比較的音圧レベルが低く白色雑音に近いので、先ほどの閾値よりも低い閾値で判断される。その結果、領域95はレンズ駆動雑音が混入しているが音圧レベルが低いと判断され、比較領域として設定される。以下、同様に比較部22で類似度の比較が行われ、置換信号生成部23、音声信号置換部37、周波数時間逆変換部38を介してレンズ駆動雑音の低減処理が行われる。
本実施形態では、参照領域に含まれるレンズ駆動雑音と比較領域に設定するかどうかを判定するレンズ駆動雑音を同一の絞り駆動のものとしたが、その他のレンズ駆動部113の駆動雑音でも構わない。例えば、レンズ駆動雑音ごとに、比較位置制御部34の閾値を別々に持つことが考えられる。
<実施形態6>
以下の実施形態6は、上記した実施形態5の変形例である。図19は、本実施形態における音声処理部130の機能ブロック図である。図14と同じブロックには同じ参照番号を付しその説明を省略する。図14の構成と比較すると、図19の構成はまず、周波数領域変換部20を持たない。すなわち、本実施形態は、周波数/時間領域での信号処理ではなく、時間領域での信号処理となる。図19において、音声信号分割部39は、入力音声10から一定時間の音声を切り出し、これを分割音声信号27として出力する。
図20において、(a)はレンズ駆動雑音が発生した時の音声信号と、そこから切り出された分割音声信号の例を示す。(b)は雑音低減処理が施された後の出力音声14の例を示す。区間101、102、103は、音声信号分割部39で分割される音声信号の区間を示している。ここで、区間101は参照区間の候補、区間102、103は比較区間の候補である。また、区間101、102、103を切り出して得た分割音声信号をそれぞれ、111、112、113で示している。また、104は参照区間101で発生し低減処理が施されるレンズ駆動雑音を示している。105は比較区間候補の区間103で発生しAGCの設定値が大きいため音圧レベルの大きいレンズ駆動雑音を示している。
音声信号分割部39は、入力音声10を、図20(a)の区間101で示すように一定時間ごとに分割する。分割される時間の長さは、一般的な人の声の基本周波数の数倍程度とする。音声信号分割部39は、その後の音声信号についても時間をずらしながら分割を行い分割音声信号27を生成していく。この時の時間方向のずらし量は、取得した音声信号の基本周波数の整数倍の長さが望ましい。また、分割音声信号27にはレンズ駆動のタイミング情報及び、AGC情報が付与されている。参照位置制御部21により参照区間101が設定された時、レンズ駆動雑音を含まない区間102の分割音声信号が比較位置制御部34で全て比較区間として設定される。一方、レンズ駆動雑音が発生している区間103の分割音声信号は音圧検出部33においてAGC情報より音圧レベルが検出される。比較位置制御部34は、検出された音圧レベルが閾値を超えているかを判断し、区間103を参照区間に設定するかを判定する。区間103ではレンズ駆動雑音の音圧レベルが閾値を超えているため、比較位置制御部34は、その区間103を比較区間に設定しない。比較部22は、参照区間101と設定された各比較区間の類似度を計算する。類似度は次式により計算する。
数12において、iは参照区間内である分割音声信号の離散時間を示す。SC(i)は分割音声信号SCにおける時間i番目の値である。Mは分割された音声信号の離散時間長であり、分割時間(sec)/サンプリングレートで求められる。SRは参照区間の時間領域信号を示す。SCは比較区間の時間領域信号を示す。ここでは、参照区間と比較区間の各時間の差を積算しており、参照区間と比較区間の類似度が上がるにつれ小さい値をとり、完全に同一であれば数12は0になる。各比較区間に対して類似度を求め、類似度が高いものから予め定められた数を選択する。選択された比較結果は置換信号生成部23において、次式により算出される。
SOは置換信号を、SRは参照区間の信号を、SCkは比較区間の信号をそれぞれ示している。Pは選択された比較区間の数である。i,Mに関しては数12と同じである。またkは選ばれた比較区間の番号に対応しており、1〜Pの整数値をとる。SC1は1番目の比較区間、SCPはP番目の比較区間という意味である。wkはフィルタの重みであり、類似度が高いものに重みを付けて加重平均とする等のために用いる。数13は実施形態5の数10が2次元の信号情報で処理をしているのに対して、本実施形態では時間領域の1次元の信号で計算を行っているだけなので、詳細な説明は省略する。生成された置換信号13は音声信号置換部37において参照区間101の音声信号と置換され、出力音声14が出力される。図20(b)はレンズ駆動雑音104が低減された出力音声を示すものであり、区間106でレンズ駆動雑音が低減されていることを示している。
このように、時間領域信号に対して参照区間を設定し、レンズ駆動雑音の音圧レベルにより比較区間の設定を制御することで、高品質な雑音低減処理を行うことができる。本実施形態では、類似度を数12で示すように参照区間と比較区間の差分値の積算で求めたが、二つの相互相関係数を類似度としてもよい。相互相関係数による類似度は以下の式で計算される。
数14の記号の意味は数12と同様である。この場合、相互相関係数が高いほど類似度が高いと判断される。
<実施形態7>
実施形態7では、上述の実施形態1における情報処理装置2あるいは実施形態4における音声処理部130の変形例を示す。撮像装置の構成については実施形態4に係る図13を援用する。
人間が話しているシーンを撮影し、その動画を再生すると、混入した雑音によって人の声が聞き取りづらくなってしまう問題があり、さまざまな音質改善技術が開発されている(例えば、特許文献2)。特許文献2においては、顔が検出されると音声の増幅率の変化速度を上げる技術が提案されている。しかし、特許文献2の技術を用いて音質改善を行う場合、不自然な音声となってしまい品位が損なわれてしまうという課題がある。本実施形態はこのような課題に対処するものである。
図21は、本実施形態における音声処理部130の機能ブロック図である。図1(b)や図14と同じブロックには同じ参照番号を付している。顔検出部221は、入力画像212から人物の顔の領域を検出し、顔検出結果213を参照位置制御部21と比較位置制御部34に出力する。
図22は、顔検出結果の例を示す図である。IMG1〜IMG5は動画中の各時刻t1〜t5に記録された画像を示している。動画中の時刻t1における画像IMG1には人物は映っていない。そのため、顔検出部221は顔を検出しない。次に、時刻t2において初めて画像IMG2に人物301が映ると、顔検出部221は顔を検出し、顔検出時刻として時刻t2を記憶する。302は顔が検出されたことを示す枠であり、実際に表示される必要はない。さらに、時刻t3から時刻t4における画像IMG3から画像IMG4において人物301は映り続けており、その間、顔検出部221は顔検出時刻として時刻t3、t4を記憶する。そして、時刻t5における画像IMG5には人物は映っておらず、顔検出部221は顔を検出せず、時刻t5は顔検出時刻として記憶はされない。顔検出部221は、顔検出時刻として記憶している時刻t2、t3、t4を、顔検出結果213として出力する。
説明を図21に戻す。参照位置制御部21は、顔検出結果213に基づき、人物、とりわけ人物の顔が検出された時間を含む領域に、雑音低減処理の対象とする領域である参照領域を設定することができる。あるいは、参照位置制御部21は、実施形態1で説明したように、ユーザの指示に基づき参照領域を設定してもよい。ここで、動画撮影中に撮影状態が大きく変化した場合を考える。例えば、明るさやピント状態が大きく変化した場合である。より具体的には、ユーザが撮影中に屋内と屋外との間を移動したり、被写体がピント方向に移動した場合などである。このような場合は、レンズシステム制御部112は、適当な結像、露光状態が維持されるようレンズ駆動部113を制御する。例えば、撮影環境が明るくなった場合には絞りを絞り込み、ピントが外れた場合にはピントを合わせる動作を行う。上述したように、このようにレンズ駆動部113が動画撮影中に動作するとレンズ駆動雑音が発生する。例えば絞りを駆動すると一般的には短時間のレンズ駆動雑音が発生しうる。一方、動画に適したようなフォーカス駆動は低レベルではあるが比較的長時間にわたるレンズ駆動雑音が発生しうる。そこで、参照位置制御部21は、実施形態5で説明したように、レンズ駆動部113の駆動中のフレームを含む領域、すなわちレンズ駆動雑音が発生しうる時間帯を含む領域を参照領域として設定してもよい。
一方、比較位置制御部34は、顔検出結果213に基づいて比較領域を設定することができる。顔検出結果213を活用することで、類似する比較領域を狭い範囲から探すことが可能になる。これにより、少ないメモリ消費で高品位な雑音低減処理が可能になる。例えば、比較位置制御部34は、参照領域が顔検出時刻を含む場合、比較領域の設定範囲を顔検出時刻を含む範囲に限定する。言い換えると、人物の顔の領域が検出された時間の比較領域は、類似度の算出から除外される。参照領域が顔検出時刻を含まない場合は、比較領域の設定範囲を顔検出時刻を含まない範囲に限定する。さらに望ましくは、比較領域は短時間雑音の発生が無い個所に設定すればよい。比較部22は、例えば実施形態1で説明した数3に従い参照領域と比較領域との類似度を計算する。これ以降の処理も実施形態1と同様である。
以上のように、顔検出結果を活用することで、類似する比較領域を狭い範囲から多く抽出することが可能である。
また、本実施形態では、実施形態5のように撮像装置1単体で実現することできるし、実施形態1のように撮像装置1とは別体の、パーソナルコンピュータ等の情報処理装置で実現することもできる。
また、本実施形態では参照領域と比較領域を同一動画データ内で設定したが、異なる動画データを用いても構わない。
<実施形態8>
以下では、複数の人物が撮影されていた場合に有効な実施形態を説明する。本実施形態は実施形態7の変形例であり、撮像装置の構成については図13を援用する。図23は、本実施形態における音声処理部130の機能ブロック図である。図21と同じブロックには同じ参照番号を付している。実施形態7に係る図21との差異は、顔検出部221のかわりに、入力画像212から人物を識別する人物検出部227、及び、発声人物を特定するための開口検出部228とを備える点である。開口検出部228は、人物検出部227で検出された人物ごとに、その人物の口の状態を検出する。
図24は、人物検出部227及び開口検出部228の処理を説明する図である。IMG6〜IMG10は動画中の各時刻t6〜t10に記録された画像を示している。動画中の時刻t6における画像IMG6には人物が映っていない。そのため、時刻t6では人物検出部227は人物を検出しない。そして、時間t7における画像IMG7に初めて人物303が映ると、人物検出部227は人物を検出する。人物が検出されると、開口検出部228は人物303の口の状態を判定する。人物303が開口状態であれば、人物303の開口検出時刻として時刻t7を記憶する。時刻t8における画像IMG8では、人物303に加えて人物304が映っている。すると、人物検出部227は人物303と人物304を検出する。人物303と人物304が検出されると、開口検出部228は、人物303と人物304の口の状態をそれぞれ判定する。画像IMG8では、人物303が開口状態、人物304は閉口状態であるため、人物303の開口検出時刻として時刻t8を記憶する。時刻t9における画像IMG9においても、人物303と人物304が映っており、人物検出部227は人物303と人物304を検出する。そして、開口検出部228は人物303と人物304の口の状態を判定する。ここで、画像IMG9は画像IMG8とは異なり、人物303は閉口状態、人物304は開口状態であるため、人物304の開口検出時刻として時刻t9を記憶する。時刻t10における画像IMG10では人物304のみが映っており、人物検出部227は人物304を検出する。人物304が検出されると、開口検出部228は人物304の口の状態を判定する。人物304が開口状態であれば、人物304の開口検出時刻として時刻t10を記憶する。
本実施形態では、以上のようにして得られた、入力画像に映る人物ごとの開口検出結果217を、実施形態7における顔検出結果213と同様に扱って、参照領域及び比較領域を設定する。以上のように、複数の人物が映っている動画中においても、口の状態検出結果を活用することで、類似する比較領域を狭い範囲から多く抽出することが可能である。なお、本実施形態では映っている人物に対して自動で雑音低減処理を行ったが、ユーザが指示した特定の人物が映っている範囲だけを処理するようにしてもよい。
<他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。