明 細 書
音響信号除去装置、音響信号除去方法及び音響信号除去プログラム 技術分野
[0001] 本発明は、既に放送された番組を再放送するなど、コンテンツを再利用する際に、 コンテンツ中に混合された BGMや音声等の音響を除去する音響信号除去装置、音 響信号除去方法及び音響信号除去プログラムに関する。
背景技術
[0002] 近年の放送業界では、既に放送された番組を再放送するなど、コンテンツを再利用 する場合がある。このコンテンツの再利用に際しては、既に放送された音声や音楽が 混合している映像素材から、使用されている音楽だけを除去することで、新たな素材 として活用することができる。このように、既存の混合音響から特定の音声を減算する 技術としては、例えば特開 2000-312395号公報に開示された技術がある。
[0003] し力しながら、放送番組の音声作成時には、製作意図にあわせて周波数特性や音 量を調整する場合が多いため、音の位相が予測不能な変化をしている。このため、 単に電子的な減算処理を行ったのみでは、適切に除去することはできない。
[0004] 詳述すると、除去しょうとする音響が、例えば番組の BGMのような既知の音楽であ つても、番組作成時に、番組効果のために BGMの低音や高音の強調や減衰を行つ たり、録音'再生を繰り返したりする過程で、 BGMの周波数特性が変化している場合 もあり、単純に減算処理をすることはできない。
[0005] また、既知の音源と、混合音内における BGMの時間的な位置ずれがあり、混合音 と BGMの時刻を正確にあわせることが困難である。さらには、混合音、 BGMのそれぞ れの音量が不明であるとともに、サウンドエンジニアがフエーダー等を操作して音量 を変化させて効果をカ卩えて 、るために、各々の音量が時間経過によって変化して ヽ る場合も多い。
[0006] また、音声ファイルの一部のみ力も既知音響が除去された場合には、除去された部 分とそれ以外の部分との間で音量が変化するという問題がある。
[0007] さらには、音声と既知音響を加えた混合音の振幅は正確には、その合計にはなら
ないため、誤処理を生じるという問題がある。すなわち、同じ周波数の振幅を加えた 場合には、同じ位相であればその 2倍の振幅になるが、 180度反転した位相であれば 振幅はゼロになる。位相差が何度あるかで、混合音の振幅は異なったものとなる。
[0008] 例えば、音声と既知音響力^の振幅であった場合には、混合音の振幅は約 1. 27と なるが、実際は、 1. 0とならなければならないところ、従来の通常の解析的な計算方 法によると、混合音の振幅が 1. 27で、既知音響が 1の場合は引き算をして、音声の 振幅を 0. 27と計算してしまう。この問題のために、混合音に対して既知音響が大き な場合は過剰に引きすぎてしまい、「痩せた」音やエコーがひどくかかった音になって しまうという問題がある。
[0009] 本発明は、上記問題を解決すべくなされたものであり、混合音響中から既知の音響 を除去する際に生じる、音量の不連続や、位相のずれに基づく誤処理が派生するの を回避し、除去しょうとする音響の変化を自動的かつ高精度に予測し、適正に除去 することのできる音響信号除去装置、音響信号除去方法及び音響信号除去プロダラ ムを提供することを目的とする。
発明の開示
[0010] 上記課題を解決するために、本発明は、除去しょうとする既知音響信号から既知音 響振幅スペクトルを抽出するとともに、既知音響信号と他の音響信号とが混合されて Vヽる混合音響信号から混合音響振幅スペクトルを抽出し、混合音響信号と既知音響 信号との位相のずれ力 0から 360度の範囲で一様な確率で分布しているとして、既 知信号の除去強度を設定し、この設定に基づいて、既知音響振幅スペクトルを変換 し、混合音響振幅変換された既知音響振幅スぺ外ルを除去する。
[0011] 上記発明では、他の音響信号の振幅を所定値とし、これに対する既知音響信号の 振幅の位相差を 0から 360度の範囲で変化させて合成して得られた混合音響信号の 振幅の平均値を算出し、この平均値に対する既知音響信号の振幅の割合から、平均 値に対する他の音響信号の振幅の割合の近似値を算出し、この近似値に平均値を 積算することによって得られた他の音響信号の振幅に基づいて、既知信号の除去強 度を設定することが好ましい。
[0012] 具体的には、位相差非依存減算関数を用いて、既知信号の除去強度を設定する。
以下に、位相差非依存減算関数の導出について説明する。
[0013] 先ず、本発明では、周波数チャンネル毎に演算を行い、その周波数を f (Hz)とする と、混合音響、既知音響、除去後の音声出力 (他の音響)の信号の関係は、 「混合音響」 =「除去後の音声出力」 +「既知音響」
と表される。そして、上記の各音響は、それぞれ
[数 1]
混合音 = M &m(cot+Bn)
音声出力 = 4 sin ( + 6b)
(ここで 《 = 2 )
[0014] と表される。ここで、混合音響と、既知音響及び除去後の音声出力の関係から、
[数 2]
M sin( cot + θη) = A sm( at + θα ) + Β sm( + Ob )
M cos(Qn) (at)-\-M siii(^) cos(r^)二 (A oo (0a) + B cos(Ob)) sin(r^ ) + (A m(0a) + B sin(i¾)) cos(oot)
[0015] となる。如何なる時刻 tにおいても、上式 (数 2)は成立するため、 Sin(cot)と cos(cot)の 係数はそれぞれ等しくなる。したがって、
[数 3]
M c (Qn) = (A cos(6i -り + ^ co i ? ))
M sin(^7i ) = {Λ 8ΐη(6 ϊ ) + Β sm(d? ) )
[0016] が成立する。この関係から、以下のように、 Mは、 Aと Bと、既知音響と音声出力の位 相差( 0 a' 0 b)で表すことができる。
画
M2 = M 2 cos ' (θιη) + Μ 2 sin 2 (θιη) = (Acos(0a) + Bcos(9b))2 + (Α&ιη(θα) + B sm(eb))2
= (A
2 cos
2(6to) + 2AB
+ B
2 cos
2 ( ')) + (A
2 sm
2 ') + 2AB sm(ft/)sm( /') + B
2 sm
2 )
= (A2 c 52(0 ) + A2&m2{0 )) + (/?2 cos2(6*/') + ?2 sin 2(i /?)) + (2AB cos(<9a)cos(( /?) + 2AB 5m(ea)s (eb))
= .42(cos2(a/) + sm2(ft/)) + (cos2((¾) + sin2,) + 2^(cos(^a)cos(6l)) + sin(0 )siii(0b))
= A2 +B2 + 2AB cos(0a 0b)
M = 42 + B2 + 2AB cos , - 0b)
[M > 0)
[0017] ここで、既知音響と音声出力の位相差( Θ a- Θ b)を、位相差 θ δで置き換えると、
θδ=θα-θ?
Μ = ^jA2 +B2 + 2ΑΒ cos θδ
[0018] となる。
[0019] 本発明では、この位相差 θ δがー様な確率で発生すると考え、実際に測定される Μの値の平均値を、次式のように、 θ δを 0ラジアンから 2 πラジアンまで積分して算 出する。
[0020] 例えば、 A=l.0として、 bが様々な値を取った場合をシミュレーションすることによ り、以下のような表を得る。
[0021] ここで、
M
[0022] を正規化し、
[数 7]
Ra = A IM
Rb = B/M
[0023] とする。上記数 6からも明らかなように、 A及び Bに定数をかけると、 Nも定数倍になる ため、表 1の値を全て
M
[0024] で割っても(
[0025] の逆数倍しても)、下表のように、上記関係は維持される。
[表 2]
[0026] 本発明の除去処理では、混合音響の振幅 (M)と既知音響の振幅 (B)が取得され るため、 Bを Mで除した値である Rbを求めることができる。そこで、上記表 2に相当す るテーブルデータ、若しくはその近似式によって、 Raを求めることができる。
[0027] 次に、
[数 8]
A=Ra X M
[0028] により、他の音響の振幅 Aを求めることができる。
[0029] なお、実際の適用としては、上記 Bを 0力ら 100まで 0. 01刻みで変化させ、表の値 に対して以下のような近似式を生成し、 Mの平均値
M
[0030] から Aを算出する。
[数 9]
Rb = B IM
A = M · Ra
[0031] なお、理論上は、混合音の振幅を既知音響の振幅を上回ることはないが、実際に は、推定ミスや除去強度を 1より大きくする等により発生するため、このような場合 (Rb 力 Siより大きい場合)には、 Raを 0とする。
図面の簡単な説明
[0032] [図 1]図 1は、実施形態に係る音響信号除去システムの構成を示すブロック図である。
[図 2]図 2は、実施形態に係る音響信号除去システムの動作を示すフロー図である。
[図 3]図 3は、実施形態に係る音響信号除去方法の基本理論を示すフロー図である。
[図 4]図 4は、実施形態に係る音響信号除去方法による効果を示す説明図である。
[図 5]図 5は、実施形態に係る除去エンジンの機能ブロック図である。
[図 6]図 6は、実施形態に係る除去エンジンの動作を示すフロー図である。
[図 7]図 7は、実施形態に係るエディタの構成を示す説明図である。
[図 8]図 8は、実施形態に係るエディタのウィンドウを示す説明図である。
[図 9]図 9は、実施形態に係るエディタのウィンドウを示す説明図である。
[図 10]図 10は、実施形態に係るエディタの操作パネルを示す説明図である。
[図 11]図 11は、変更例に係るエディタの構成を示す説明図である。
[図 12]図 12は、実施形態に係るプログラムを記録したコンピュータ読み取り可能な記 録媒体を示す斜視図である。
発明を実施するための最良の形態
[0033] [音響信号除去システムの構成]
本発明の実施形態について図面を参照しながら説明する。図 1は、本実施形態に 係る音響信号除去システムの全体構成を示すブロック図である。
[0034] 図 1に示すように、本実施形態に係る音響信号除去システムは、混合音響や既知 音響を入力する入力 I/F1及び DVキヤプチヤー 2を備えて 、る。これら入力 I/F1及び DVキヤプチヤー 2から入力されたファイル(例えば、 AVIファイルや WAVファイル) は、記憶装置 5に蓄積される。入力 I/F1は、 CDプレーヤーや MDプレーヤ一等の再 生装置力も音響信号を取り込むインターフェースである。また、 DVキヤプチヤー 2は 、映像や音声が混合した混合音響信号である除去対象用の MIX音声を取り出すィ ンターフェースである。
[0035] また、音響信号除去システムは、記憶装置 5に蓄積された各種データに対して音声 データ抽出処理や音声変換処理を行う音声変換部 (PreWav/PostWav) 3及び音声 データ抽出部 (DVReMix) 4とを備えて!/、る。これら音声変換部(PreWav/PostWav) 3 及び音声データ抽出部(DVReMix) 4は、指定されたファイル (AVIファイルや WAV ファイル)を記憶装置 5から読み出し、所定の処理を施した後、処理後のファイル (W
AVファイル)を記憶装置 5に蓄積する。
[0036] 音声変換部 (PreWav) 3は、周波数変換、及びステレオカゝらモノラルの分離を行う。
すなわち、除去エンジン 100のフォーマットに合うように、 WAVファイルを左右 2チヤ ンネルに分離するとともに、サンプリングレートを 48kHzに変換し、 2つの WAVフアイ ル(出力ファイル名:左チャンネルが MIX-L.WAV、右チャンネルが MIX-R.WAV) として生成し、記憶装置 5に蓄積する。
[0037] 音声データ抽出部(DVReMix) 3は、映像データ及び音声データから構成されるコ ンテンッ力 音声データのみを抽出するモジュールであり、本実施形態では、 AVIフ アイルから音声データを WAV形式で抽出する。ここでの WAVファイルは、ステレオ 形式であり、そのサンプリングレートは DVの音声と同じ 32kHz又は 48kHzである。この 抽出された WAVファイルは、記憶装置 5に蓄積される。
[0038] そして、音響信号除去システムは、混合音響信号から既知音響信号を除去する除 去エンジン 100を備えている。この除去エンジン 100は、記憶装置 5に蓄積された各 音声ファイル (WAVファイル)を読み出し、除去したデータや除去処理に係る各種デ ータを、一時メモリ 7を介して、記憶装置 5に蓄積したり、出力 I/F8を通じて、モニタ 1 0やスピーカー 11から出力する。モニタ 10は、ユーザーインターフェース 6による操 作や処理結果を表示する GUIであるエディタ 400を表示し、スピーカー 11は、ユー ザ一インターフェース 6によるユーザー操作に基づいて、混合音響や既知音響、除 去後音響を出力する。
[0039] また、除去エンジン 100は、キーボード 6aやマウス 6b等の入力デバイスによるユー ザ一操作に基づく操作信号を、ユーザーインターフェース 6を通じて取得し、この操 作信号に基づいて、各種処理を行う。この除去エンジン 100による音響信号除去処 理については、後述する。
[0040] また、音響信号除去システムは、同期制御部 9を備えており、これにより記憶装置 5 からのデータの読み出し、除去エンジン 100による除去処理、メモリ 7や出力 I/F8に よるデータの入出力を同期させる。これにより、エディタ 400に表示される映像と、スピ 一力一 11から出力される音声を、除去エンジン 100による処理やユーザーインター フェース 6におけるユーザー操作に同期させることができる。
[0041] さらに、音響信号除去システムは、パラメータの設定に際し、そのデフォルト値をシミ ユレーシヨンにより設定し、ユーザーの作業を支援するシミュレーション部 14を備えて いる。このシミュレーション部 14は、上述した「位相非依存減算関数」により、混合音 響と既知音響の位相差が、 0度から 360度まで一様に確率分布しているとして、シミュ レーシヨンを行う。また、シミュレーション部 14は、一定振幅の単音(480Hz)を合成し て混合音として入力し、既知音響の引く量をゼロとして除去処理を行い、出力される 音量の違 、を計測し、その値が一致するようにユーザーインターフェース 6における デフォルト値を設定する。
[0042] [音響信号除去システムの動作]
以上説明した構成を有する音響信号除去システムは、以下のように動作する。図 2 は、音響信号除去システムの動作を示すフロー図である。なお、本実施形態では、 映像と音声力ステレオで記録された映像ファイル (DV)を混合音響 (MIX音声)とし、 オリジナル曲が記録された音声ファイルを既知音響とし、映像ファイル中に BGMとし て包含されている当該オリジナル曲を除去する場合を例に説明する。本実施形態お ける処理は、(1)前処理、(2)音楽除去処理、(3)後処理に大別される。以下、各処 理について詳述する。
[0043] (1)前処理
前処理では、 DVから除去対象用の MIX音声を取り出すとともに、 BGM用音声 (ォ リジナル曲)を用意する。具体的には、 DVキヤプチヤー 2から DV用のビデオ編集ソ フトを使用して動画をキヤプチヤーし(S101)、このキヤプチヤーしたファイルを、タイ プ 1の AVIファイル(出力ファイル名: MIX.AVI)として、記憶装置 5に蓄積する。
[0044] 次!、で、音声データ抽出部(DVReMix) 3〖こより、 AVIファイルから音声データを W AV形式(出力ファイル名: MIX.WAV)で抽出する(S102)。ここでの WAVファイル は、ステレオ形式であり、そのサンプリングレートは DVの音声と同じ 32kHz又は 48kHz である。この抽出された WAVファイルは、記憶装置 5に蓄積される。
[0045] その後、音声変換部(PreWav) 4により、周波数変換及び、ステレオ力もモノラルの 分離を行う(S103)。すなわち、除去エンジン 100のフォーマットに合うように、 WAV フアイルを左右 2チャンネルに分離するとともに、サンプリングレートを 48kHzに変換し
、 2つの WAVファイル(出力ファイル名:左チャンネルが MIX-L.WAV、右チャンネ ルが MIX-R.WAV)として生成し、記憶装置 5に蓄積する。また、このステップ S103 では、音声変換と同時にビデオの開始時間のオフセットを、設定ファイル (ファイル名 : MIX.time)に出力し、記憶装置 5に蓄積する。
[0046] これらステップ S101— S103と並行して、オリジナル曲の取り込みを行う(S104)。
具体的には、オリジナル曲(BGM曲)を CDなどから取り込み、 44.1kHzステレオの W AVファイル(出力ファイル名: BGM.WAV)として、記憶装置 5に蓄積する。次いで、 音声変換部 (PreWav) 3により、周波数変換、ステレオカゝらモノラルの分離を行う(S1 05)。すなわち、除去エンジン 100のフォーマットに合うように、ステップ S104で取り 込んだ WAVファイルを、左右 2チャンネルに分離し、サンプリングレートを 48kHzに変 換し 2つの WAVファイル(出力ファイル名:左チャンネルが BGM-L.WAV、右チャン ネルが BGM- R.WAV)として、記憶装置 5に蓄積する。
[0047] (2)音楽除去処理
音楽除去処理では、除去エンジン(GEQ) 100により、 MIX音声から BGM音声を除 去する(S106)。この除去後出力される音声ファイルは、左右チャンネルともにモノラ ル 48kHzの WAVファイル(出力ファイル名:左チャンネル力 ¾RASE- L.WAV、右チヤ ンネルが ERASE-R.WAV)として、メモリ 7又は記憶装置 5に蓄積される。
[0048] (3)後処理
後処理では、除去エンジン 100で除去した音声を、 DV用の音声に変換し、 DV(A VIファイル)に復元する。先ず、音声変換部(PostWav) 4が、周波数変換、及びモノ ラルからステレオへの変換を行う(S 107)。すなわち、音声変換部 4が、除去エンジン 100から出力された左右 2チャンネルの WAVファイルをステレオに合成し、必要なら ば元の DVの音声と同じサンプリングレートに変換し、 WAVファイル(ファイル名: ERASE.WAV)として、記憶装置 5に蓄積する。次いで、音声データ抽出部( DVReMix) 3が、キヤプチヤーした AVIファイル(BGM.AVI)の音声を、除去後の音 声 (ERASE.WAV)と入れ替え、除去後音響ファイル(ファイル名: ERASE.AVI)として 、記憶装置 5に蓄積する。
[0049] なお、例えば、 1回目の作業で、ステレオ放送の左音声 (L)について作業した場合
などには、この左音声に対する各種パラメータ設定データを記憶しておき、これを次 回の右音声に対する除去処理の際に呼び出し、ユーザーインターフェース 6におけ るデフォルト値として設定する。
[0050] [音響除去処理の理論]
次いで、上述した除去エンジン 100について詳述する。先ず、この除去エンジン 10
0による音響除去処理の理論について説明する。
[0051] (基本概念)
所望の音声や物音等の音響信号 s (t) (tは時間柳に、 BGM等の非定常音響信号 b (t)が混合された、混合音響信号 m (t)が観測されるものとする。
[数 10] (t) = s(i) + b(t)
[0052] ここでは、 b (t)の元となる音源の音響信号 b, (t)が既知と 、う条件下で、 m (t)が与 えられたときに、未知の s (t)を求める。例えば、人間の声や物音と共に BGMが鳴つ ているテレビ番組等の音響信号 m(t)を入力とし、その BGMの楽曲が既知でその音 響信号 b' (t)が別途用意できるときに、その BGMの音楽音響信号を用いて番組中 の BGMを除去し、人間の声や物音だけの音響信号 s (t)を得る処理を実現する。
[0053] ここで、 b (t)と b' (t)は完全には一致しないため、
[数 11]
s(t) = [t)― b{t)
[0054] の減算に相当する処理では、 b' (t)から b (t)に相当する成分を推定して、 s (t)を求 める必要がある。具体的には、既知の音響信号 b' (t)は、混合音 m (t)中では、以下 のような変形に対する補正を行うことで b (t)に相当する成分を推定する。
[0055] ·時間的な位置のずれ
混合音 m(t)中で既知の音響信号 b' (t)が鳴っている位置は先頭力 とは限らない 。そこで、既知の音響信号 b' (t)を時間軸方向にずらし、両者の相対位置を合わせ て、混合音から既知音響信号を減算する。
[0056] ,周波数特性の時間変化
混合音 m(t)中で既知の音響信号 b' (t)が鳴る際には、グラフィックイコライザ等の 影響で周波数特性が変化することが多い。例えば、低域や高域が強調'減衰される ことがある。そこで、 b' (t)の周波数特性を同様に変化させて補正し、混合音から既 知音響信号を減算する。
[0057] ,音量の時間変化
混合音 m(t)中で既知の音響信号 b' (t)が鳴る際には、混合音作成時におけるミキ サ一のフエーダー等の操作で混合比率が変更され、音量が時間変化することが多 ヽ 。そこで、 b' (t)の音量を同様に時間変化させて補正し、混合音から既知音響信号を 減算する。
[0058] 除去エンジン 100の処理の流れを図 3に示す。本実施形態においては、除去ェン ジン 100は、時間領域での波形を減算処理をせずに、時間周波数領域での振幅ス ベクトル上で減算処理を行う。音響信号 m (t) , b' (t)に対する窓関数 h (t)を用いた 時刻 tにおける短時間フーリエ変換 (STFT)Xm(co , t)、Xb(co , t)が、
Χ^ {ω, ί) = I b!{r)h(r― t)e"j ,Tdr
[0059] で定義されるとき、それらの振幅スペクトル Μ(ω , t), Β' (ω , t)は、
[0060] で抽出できる。
[0061] 本実施形態では、音響信号を標本化周波数 48kHz、量子化ビット数 16bitで A/D変 換し、窓関数 h(t)として窓幅 8192点のハユング窓を用いた STFTを、高速フーリエ変 換 (FFT)によって計算する。その際、 FFTのフレームを 480点ずつシフトするため、フレ
ームシフト時間 (1フレームシフト)は 10msとなる。このフレームシフトを、処理の時間単 位とする。なお、除去エンジン 100は、他の標本化周波数 (16kHz、 44kHz等)や窓幅 、フレームシフトにも容易に対応できるようになって 、る。
[0062] 既知音響信号除去後の所望の音響信号 s(t)の振幅スペクトル S(co, t)は、振幅ス ベクトル Μ(ω, t), Β'(ω, t)から以下のように求める。
[数 14]
n, 、 f c(w,i) [M{ j,t) - Β{υ,ί)) if (ω,ί) > Β{ω,ί)
I 0 otherwise
β(ω,ί) = a{t) g !,t) Β'{ω,ί +τ(ί))
[0063] 上記の式における各種パラメータ関数 a(t), g(co, t), r(t) , ο(ω, t)を順に説明する。
[0064] a(t)は混合音の振幅スペクトル力 既知音響信号の振幅スペクトルに相当する成分 を減算する分量を最終的に調整するための任意の形状の関数であり、通常、 a(t)≥l とする。これが大きいほど、減算量が大きくなる。
[0065] g(co , t)は、周波数特性の時間変化と音量の時間変化を補正するための関数であ り、
[数 15]
[0066] により求める。ここで、 gco(co , t)は、周波数特性の時間変化を表し、周波数特性の 変化がないときは gco(co, t) = lとなる。一方、 Μ(ω, t), Β'(ω, t)は、音量の時間変 化を表し、音量の変化がないときは定数となる。 Μ(ω, t)と Β'(ω, t)との音量差は、 基本的に gt(t)で補正される。 gr(t)は、主に g(co, t)の値を全体的に持ち上げるため の関数で、補正時の微調整に使用される。使用しない場合には、 gr(t) = 0とする。
[0067] 'r(t)は、時間的な位置のずれを補正するための関数であり、通常は定数を設定する ことで、一定のずれ幅を補正する (本実施形態では、除去エンジン 100は定数にのみ 対応している)。
[0068] · c( ω , t)は、振幅スペクトルに対するィコライジング処理及びフエーダー操作処理の ための任意の形状の関数である。 ω方向の形状により、グラフィックイコライザのよう に、既知音響信号除去後の周波数特性を調整することができる。また、 t方向の形状
により、ミキサーのボリュームフエーダー操作のように、既知音響信号除去後の音量 変化を調整することができる。使用しない場合には、 c(co, t)=lとする。なお、本実 施形態では、除去エンジン 100は、 ο(ω, t)=lにのみに対応している力 ο(ω, t)の 処理を追カ卩してもよい。
[0069] こうして求めた振幅スペクトル S(co, t)と、混合音 m(t)の位相 0 m(co, t)を用いて X 5(ω, t)を求め、それを逆フーリエ変換 (IFFT)することで、単位波形を得る。
[0070] :の単位波形を、オーバーラップアド(Overlap Add)法によって配置することにより、 既知音響信号除去後の所望の音響信号 s (t)を合成する。
[0071] (各種パラメータ関数の設定)
上記の処理を実行する際に、上記数 5及び数 6の各種パラメータ関数 a(t), g(co, t) (8ω(ω, t), gt(t), gr(t)), r(t) , c(co, t)の形状は、ユーザーが手作業で設定しても よいし、可能なものは自動推定してもよい。あるいは、自動推定後にユーザーが修正 してもよい。本実施形態では、除去エンジン 100は式 (11)、式 (12)、式 (13)の各種パラ メータ関数 g( co, t)(gco(co, t), gt(t)), r(t)の一部の形状の自動推定にのみ対応し ているため、実装されている具体的な自動推定方法を以下に述べる。
[0072] ·8(ω, t)の推定では、先ず、周波数特性の時間変化 gco (co , t)を推定し、次に、音 量の時間変化 gt(t)を推定する。ただし、 g(co, t)の推定に先立ち、 r(t)は決定されて いる必要がある。ここでは便宜上、 Β'(ω, t+r(t》を Β'(ω, t)と記述する。
[0073] 周波数特性の時間変化 gco (ω, t)の推定では、原則として、人間の声や物音だけ の音響信号 s(t)がほとんど含まれていない区間 (以下、 BGM区間と呼ぶ)を用いる。 B GM区間は、複数用いてもよい。 BGM区間では、混合音 m(t)の振幅スペクトル Μ(ω , t)は、既知の音響信号 b'(t)による BGMに相当する振幅スペクトル Β'(ω, t)に由来 の成分がほとんどとなる。そこで、周波数特性が時間変化せずに定常、すなわち、 g ω(ω, t) = g, ω(ω)と仮定できるときには、 g' ω(ω)を
[数 17]
、 ―
[0074] により推定する。ただし、 φは一つの BGM区間 (時間軸上の領域)を表し、 Ψは、 φ の集合とする。一方、周波数特性が時間変化していくときには、 gco (ω, t)の時刻 tに 近い BGM区間 から
[0075] を求め、補間 (内挿あるいは外挿)することにより gco (ω, t)を推定する。最後に、 gco( ω, t)を周波数軸方向に平滑化する。なお、平滑化幅は任意に設定でき、平滑化を しなくてちょい。
[0076] 音量の時間変化 gt(t)の推定では、 Μ(ω , t)と、周波数特性補正後の gco (ω , t) B' (ω, t)の各時刻における振幅を比較する。しかし、 Μ(ω, t)には、 Β'(ω, t)に由来の 成分以外に、 s(t)に由来の成分も含まれる。そこで、周波数軸 ωを複数の周波数帯 域 Φに分割し、各帯域 φ ( φ Ε φ)毎に
[0077] を求める (Φは φの集合を表す)。 Φとして任意の分割が適用できる力 例えば、音楽 で用いる平均律の 1オクターブ毎に分割 (対数周波数軸上で等間隔に分割)するとよ V、。そして、 gt(t)は、 min (g, t( φ , t))あるいは、数 11により推定する。
[0078] 最後に、 gt(t)を時間軸方向に平滑化する。なお、平滑化幅は任意に設定でき、平 滑ィ匕をしなくてもよい。
[0079] 'r(t)の推定では、原貝 IJとして、 BGM区間 φの集合 Ψを用いて、それらの区間におけ
る Μ(ω , t)と Β(ω , t)との対応関係の時間軸を合わせるように、 r(t)を求める。本実施 形態では、 r(t)の推定のための BGM区間の集合 Ψの要素は一つに限定され、除去 エンジン 100は、定数の r(t)のみに対応している。
[0080] 上記の g(co , t)や r(t)等の推定では、 BGM区間 φの集合 Ψを用いていた。これは、 ユーザーが手作業で指定してもよいし、以下のように自動推定してもよい。 Ψの自動 推定では、基本的に、どこか一箇所の BGM区間 φ 1を手掛力りとして、残りの BGM 区間の集合を求める。先ず、 Φ 1に基づいて、 Β(ω , t)の各種パラメータ関数を推定 して仮に決定し、そのときの φ 1の区間内における Μ(ω , t)と Β(ω , t)との振幅スぺク トル間の距離を求め、その最大値 (本実施形態では、最大値を用いたが平均値を用 いる実装も可能である)の定数倍を BGM区間判定用閾値とする。そして、全区間に 対して、 M(co , t)と Β( ω , t)との振幅スペクトル間の距離を求め、 BGM区間判定用閾 値以下の区間を検出し、新たに Ψに加える。本実施形態では、この推定は繰り返さ れないが、この推定を繰り返して Ψを求めてもよい。ここで、 Μ(ω , t)と Β(ω , t)との距 離としては、例えば、二乗平均対数スペクトル距離
[0081] が有効である。なお、最初の φ 1は、ユーザーが手作業で指定する。
[0082] (既知音響の伸縮推定)
本実施形態では、上記数 5及び 6の枠組みを拡張することにより、以下の変形に対 応することができる。
[0083] 時間軸あるいは周波数軸方向の伸縮混合音 m(t)中で既知の音響信号 b' (t)が鳴る 際には、レコード等の回転数の違いにより、時間軸あるいは周波数軸方向に伸縮さ れることがある。そこで、 b' (t)を時間軸あるいは周波数軸方向に伸縮して補正し、混 合音から既知音響信号を減算する必要がある。
[0084] これに対応するには、数 5中の第 2式を以下のように定義する。
[数 22]
B(c , t) = a(t) g(tv, t) D'(p( j), q(t) + r (t})
[0085] 上記の式におけるパラメータ関数 p ( ω )、 q (t)を説明する。
[0086] ·ρ(ω)は、周波数軸方向の伸縮を補正するための関数であり、振幅スペクトル Β'(ω , t)の周波数軸 ωを変換することで、周波数軸方向の線形'非線型な伸縮を可能に する。なお、 Β'(ω, t)は本来の ωの定義域外では 0をとり、離散化して実装する際に は適宜補間することとする。
[0087] -q(t)は、時間軸方向の伸縮を補正するための関数であり、振幅スペクトル Β'(ω , t) の時間軸 tを変換することで、時間軸方向の線形 ·非線型な伸縮を可能にする。なお 、 Β'(ω, t)は本来の tの定義域外では 0をとり、離散化して実装する際には適宜補間 することとする。 q(t)と r(t)を統合した一つの関数で表現することも可能だ力 ここでは 、 q (t)は連続的な伸縮を表す目的で設定し、 r (t)は不連続な位置のずれを表す目的 で設定することとする。
[0088] ·上記の数 13で新たに導入されたパラメータ関数 ρ(ω)、 q(t)の形状を自動推定す る方法を以下に述べる。
[0089] ·ρ ( ω )、 q (t)の推定では、 Μ(ω , t)と Β(ω , t)との距離 (例えば、対数スペクトル距離 等)が最小となるように、 ρ(ω)と q(t)を変更する。その際、 Β(ω, t) = a(t)g(co, t) B, ( ρ(ω), q(t)+r(t))の右辺のうち、 a(t)=lとし、
1. (推定途中の) ρ(ω)と q(t)を仮に固定した上で、 g(co, t)と!: (t)を推定
2. (推定途中の) g(co, t)と!: (t)を仮に固定した上で、 ρ(ω)と q(t)を推定
の二つを反復的に繰り返して、適切な ρ(ω), q(t)を推定する。これは、音響信号の 全区間に対して一度に実行せず、時間軸を分割して、区分的に行うとよい。初期値 は前後の区間の連続性を考慮して定める。また、 BGM区間 φの集合 Ψを用いて、 それらの複数の区間における Μ(ω, t)と Β(ω, t)との対応関係の時間軸を合わせる ように、 ρ(ω), q(t)を推定するとよい。なお、既知の音響信号 b' (t)の一部区間が使 われずに、飛び飛びで混ざっていたとき等には、その区間を飛ばすように r(t)が不連 続関数となるようにする。
[0090] ここで、 BGM区間 φの集合 Ψを自動推定する際に、本実施形態では、ユーザーが 最初の φ 1を手作業で指定する必要があるが、音響信号の時間軸を細力べ分割して 、それらの短い分割区間同士の対応関係を調査して求める方法もある。
[0091] (複数の既知音響信号への対応等)
本実施形態では、除去エンジン 100は、混合音響信号 m(t)の中に、既知音響信 号 b,(t)がー種類含まれている場合に対応している。 b,l (t), b'2 (t)〜b,N (t) のような複数種類の既知音響信号が含まれている場合には、 S(co, t)は、それらの振 幅スペクトル Β,1(ω, t), Β'2(ω, t)"'B,N (ω, t)と、上記数 5第 2式で求めた Bl( ω, t), Β2(ω, t)…: ΒΝ(ω, t)とを用いて、
[数 23]
_ J o(Wlt) (Μ^,ή-Σ,^ Β^ω,ί)) if Μ{ω1ί,) >∑^1Βη(ω )
ί:) = 0 otherwise;
[0092] のように求められる。その際には、 Βη (ω, t)の各種パラメータ関数は順に設定される 力 全体のバランスを取りながら、複数の Βη (ω, t)の各種パラメータ関数が平行して 設定される。
[0093] また、本実施形態では、除去エンジン 100は、モノラル信号を対象にしている力 ス テレオ信号の左右の信号を混合することによって得られるモノラル信号や、ステレオ 信号の左右の各信号も対象とすることができる。また、ステレオ信号中の音源方向を 利用して適用するように拡張してもよ 、。
[0094] (実験結果)
このような本実施形態に係る除去エンジンの実験結果を以下に示す。ここでは、音 声や物音等の音響信号 s(t)に BGM等の音響信号 b(t)が加えられている混合におい て、音響信号 m(t)が観測されたときに、 b(t)の元となる音源の音響信号 b'(t)が既知と いう条件下で、未知の s(t)を求めた。 m(t)と b'(t)が収録されたオーディオファイルを 与えると、 s(t)のオーディオファイルを得ることができる。
[0095] 人間の音声にノックグラウンドミュージック (BGM)が加えられた混合音に対して実 験した結果、その BGMの原曲の音響信号を用いて、混合音中の BGMを除去し、人 間の音声や物音が得られることを確認した。
[0096] 実験結果の例として、二人の男女の対話の BGMにクラシック音楽が鳴っている混 合音を実際に処理した結果を図 4に示す。図 4のグラフ 501及び 502に示す混合音 m(t)を入力として、図 4のグラフ 503及び 504に示す元音源の既知音響信号 b' (t)
を用いて BGM成分を除去した結果、図 4のグラフ 505及び 506に示す既知音響信 号除去後の音響信号 s(t)が得られた。
[0097] 以上から、人間の声や物音の背景に BGMが鳴っているテレビ番糸且や映画等の音 響信号を入力とすると、別途用意した BGMの音楽音響信号を用いて番組中の BG Mを除去し、人間の声や物音だけの音響信号を得ることができる。なお、 BGM除去 後の音響信号に対して、別の音楽を BGMとして付与するようにしてもよい。
[0098] [除去エンジンの構成]
以上説明した理論に基づく除去エンジン 100の構成について説明する。図 5は、除 去エンジン 100の機能を示すブロック図である。
[0099] 図 5に示すように、除去エンジン 100は、信号入力手段として、混合音響信号が入 力される混合音響入力部 101と、除去しょうとする既知音響信号を入力する既知音 響信号入力部 102とを有し、除去処理が施された音響信号の出力手段として除去後 音響信号出力部 107を有している。
[0100] また、除去エンジン 100は、入力された音響信号から振幅スペクトルを抽出する振 幅スペクトル抽出部 200を備えている。具体的に、この振幅スペクトル抽出部 200は 、データ分割部 201と、窓関数処理部 202と、フーリエ変換部 203とを備えている。
[0101] データ分割部 201は、混合音響信号を、特定の長さ(窓サイズ)の区間に分割する 。一般の音声認識等では、一区間の長さを 20ミリ秒程度とするが、音声に比べて、音 楽では同じ音が長く継続することから、本実施形態では、これよりも 10倍程度長い、 2 のべき乗である 8192サンプル(8192÷48,000=0.170約 170ミリ秒)としている。
[0102] 窓関数処理部 202は、データ分割部 201により分割された窓サイズ区間(170m秒) の音声信号データに対し、ハニング関数を掛けて、データの最初と最後の部分にお いて、なだらかにゼロに収束させる信号波形に変換する。
[0103] フーリエ変換部 203は、混合音響信号及び既知音響信号それぞれのデータをフー リエ変換して、周波数チャンネル毎の位相及び振幅スペクトルを分離して出力する。 なお、振幅スペクトルのみ力もなるデータは「時間周波数データ」として出力される。
[0104] 詳述すると、このフーリエ変換部 203は、ハユング関数処理された音声データに対 して、高速フーリエ変換 (FFT)を行う。なお、入力される音声データは実数のみで、
虚数部が含まれ、この FFTでは入出力を複素数で計算することから、 2回の窓の変換 を入力データの実部と虚部にそれぞれ行い、高速フーリエ変換し、変換後に共役関 係を使って分離して 2倍の速度向上を実現している。なお、本システムではインテル 社の Pentium4 (登録商標)プロセッサ等で利用できる SSE2命令を使用し、処理の高 速ィ匕を図っている。
[0105] そして、振幅スペクトル抽出部 200では、フーリエ変換する区間を 480サンプル (480
÷ 48,000=0.01: 10ミリ秒)単位で移動させ、窓関数処理部 202及びフーリエ変換部 2 03によるハユング窓関数の掛け算とフーリエ変換の処理を繰り返す。このようにして 10ミリセカンド毎に得られたデータから、周波数チャンネル毎に音声信号の「振幅の み」を表すデータである「時間周波数データ」を取得する。このようにして得られた周 波数チャンネルは、 0Ηζ,5.86Ηζ,11,72Ηζ, 17.57Ηζ· · ·.23,994.14Ηζというように、 ΟΗζ ( 直流)から約 5.86Hz毎に約 24kHzまでの 4096チャンネルとなる。
[0106] なお、振幅スペクトル抽出部 200は、入力された信号が混合音響信号であるときに は、混合音響信号から混合音響振幅スペクトルを抽出する混合音響振幅抽出部とし て機能し、入力された信号が除去しょうとする既知音響信号であるときには、既知音 響信号から音響振幅スペクトルを抽出する既知音響振幅抽出部として機能する。
[0107] また、除去エンジン 100は、振幅スペクトル抽出部 200から抽出された既知音響の 振幅スペクトルに基づいて、混合音響中の既知音響の変化を自動推定したり、自動 推定結果をユーザー操作により修正するパラメータ推定部 300を備えている。
[0108] このパラメータ推定部 300は、振幅スペクトル抽出部 200から抽出された「時間周波 数データ」の周波数チャンネル毎のデータに基づいて、上述した数 5及び数 6のすベ てのパラメータ関数 a(t), g( co , t) (g co ( co , t), gt(t), gr(t)) , ρ( ω ) , q( co ) , r(t) , c( ω , t)の形状を自動で推定したり、若しくはユーザーの操作で設定したりする。なお、 ユーザーは、最初力 任意の関数形状を描いて指定してもよいし、最初に先ず自動 推定をして、その結果を修正してもよい。
[0109] ノ ラメータ推定部 300は、混合音響及び既知音響のキャリブレーションを行うキヤリ ブレーシヨン部 304を備えている。このキャリブレーション部 304は、人間の声や物音 だけの音響信号 s(t)がほとんど含まれていない区間 (BGM区間)を用いて、上記数 5
及び数 6の各種パラメータ関数 g( co , t), (g co ( co , t), gt(t)) , r(t)の一部の形状の自 動推定する。
[0110] 具体的には、ユーザーの手動操作により、混合音の中で、既知音響のみが出力さ れている 1秒力も数秒の区間を選択するとともに、既知音響に対してもほぼ同じ部分 を選択する。そして、キャリブレーション部 304は、この選択された区間内で周波数チ ヤンネル毎の音量を合計して、混合音と除去音から得られる値を比較する。この区間 では混合音には既知音響のみが含まれていることから、その比が周波数特性となる。
[0111] さらに、パラメータ推定部 300は、周波数特性補正部 301と、音量変化補正部 302 と、時間位置補正部 303とを備え、これらにより (1)混合音響と既知音響の時間的な位 置ずれ、(2)既知音響の周波数特性、及び (3)既知音響の音量の時間変化を推定す る。
[0112] 周波数特性補正部 301は、周波数分布の推定を行うモジュールであり、この周波 数分布の推定に際し、振幅スペクトルに対するィコライジング処理及びフエーダー操 作処理のための任意の形状の関数である c( co , t)について、 ω方向の形状を変化さ せることにより、グラフィックイコライザのように、既知音響信号除去後の周波数特性を 調整する。
[0113] また、周波数特性補正部 301は、音声チャンネルのうち BGMの音量が小さい部分 ではノイズ等により得られる値が不安定となるため、周波数特性の平滑ィ匕を行う。
[0114] 詳述すると、推定したい各周波数チャンネルに既知音響の音がなければ推定が不 可能なことから、周波数分布の推定にあたっては既知音響に低音力 高音まで含ま れて 、る、 V、わゆる「リッチ」な部分を用いることが望ま 、。
[0115] しかしながら、 4096チャンネルといった非常に細分化されている場合には、すべて のチャンネルに音が含まれていることはむしろ不可能に近いと考えられ、また、既知 音響の音が小さぐ対して混合音側にノイズがあった場合は、割り算の結果として非 常識な推定値となることがある。
[0116] これに対して、本実施形態では、周波数分布の平滑化を行う。この平滑化は、前後 のチャンネルの平均値をとつてなめらかにすることによって実現される。本実施形態 では、このチャンネル数がエディタ 400のスライダ「スム一ジング フリーク ウェイト」
で、この値を大きくするほどなめらかにすることができる。
[0117] また、本実施形態では、別の平滑化の機構(Blur_freq_mode)力 エディタ 400のボ タン「BAFAM」により実装されている。音がない周波数チャンネルでは推定ができず 、隣接する周波数チャンネルに比べて極端に落ち込んでいる場合があるため、隣接 した周波数チャンネルと同じ値に持ち上げることにより、こうした予測不能の場合を回 避することができる。
[0118] さらに、本実施形態では、全くゼロとなる周波数チャンネルが、推定処理に影響を 及ぼすのを避けるために、エディタ 400のスライダ「シフト フリーク ウェイト」で実装 されている。
[0119] また、本実施形態に係る周波数特性補正部 301は、アナログテープレコーダーによ るヒスや各種のビート音と 、つた特定周波数の定常的な雑音を無視して、処理を行う 定常音処理機能を備えている。映像データに含まれる水平周波数 (15.75kHz)などの 定常音が混合音に含まれていると、この周辺の周波数チャンネルで大きく推定を誤 つてしまうという問題があった。すなわち、定常音は、既知音響側には全く含まれない 音であることから、周波数特性の推定を誤る原因となる。
[0120] 音量変化補正部 302は、音量の時間変化の推定と平滑化とを行う。この音量の時 間変化の推定に際しては、 c( co , t)の t方向の形状を補正することにより、ミキサーの ボリュームフエーダー操作のように、既知音響信号除去後の音量変化を調整すること ができる。
[0121] 詳述すると、時間方向の音量推定において、時刻によって混合音側があらゆる周 波数領域を含むような場合、実際より既知音響が大きいと推定をする傾向がある。こ の場合に単純に引いてしまうと、本来消すべきではない音まで引いてしまい、聴感上 は「痩せた」音になる惧れがある。
[0122] 本実施形態において音量変化補正部 302は、混合音全時間域にわたって、既知 音響の音量の時間変化を検出する。混合音には、既知音響以外に音声等の音が含 まれて!/ヽるため、混合音と周波数特性で補正した既知音響の周波数チャンネルを 1 オクターブ毎 (周波数で 2倍毎)にまとめて合計する。同じ時刻毎に比較し、既知音響 に対して混合音の大きさの比率が一番小さなものを選択する。これにより、オクターブ
毎に比べた場合、どれか一つの区間では既知音響のみになっている可能性を反映 させることができる。これをその時刻での既知音響と混合音の音量比とする。
[0123] なお、本実施形態では、グラフ表示により、ユーザーが、音量が明らかに大きくなる ことを識別し、手作業で補正して対処する。なお、この推定においては、ロバスト統計 的手法など自動的に判断する方法を採用してもよ!、。
[0124] また、音量変化補正部 302は、時間変化の推定でも平滑ィ匕を行い、時間前後の既 知音響の音量の平均値をとつてなめらかにする。この値がエディタ 400中のスライダ「 スムージングタイムウェイト」として実装されているで、この値を大きくすることによりな めらかにすることができる。
[0125] また、本実施形態では、別の平滑化の機構(Blur_time_mode)力 「BATAM」ボタン で実装している。音がない時間に推定ができず、隣接する時間に比べて極端に落ち 込んでいる場合に、隣接した時刻と同じ値に持ち上げることで、こうした予測不能の 場合を回避する。
[0126] なお、既知音響の音がない時刻には、音量をゼロと推定してしまうことから、これを 防ぐためにエディタ 400中のスライダ「シフト タイム ウェイト」を実装している。
[0127] さらに、混合音と除去後の音の音量の調整について、特定の音声ファイルの一部 のみを除去した場合には、それぞれの音量を同一に維持する必要がある。このため 、本実施形態では、シミュレーション部 14力 一定振幅の単音 (480Hz)を混合音とし て入力し、既知音響をゼロとして除去処理を行い、出力される音量と、処理前の混合 音の音量との差分を計測し、その値が一致するように音量を設定する。
[0128] 時間位置補正部 303は、混合音響の開始点と、既知音響の開始点の時間的な位 置ずれを推定するものであり、上述した関数 r(t)の定数を設定することで、一定のず れ幅を補正する。詳述すると、指定した混合音と既知音響が時間的に位置ずれして いる場合に、既知音響を混合音に対して、 1ミリ秒毎に前後に最大 100ミリ秒ずらして 、上記各補正部 301及び 302による処理を繰り返す。指定区間における混合音響と 既知音響との音量の差を求めて、この差が最小となる時刻に最も一致していると判断 し、この混合音と既知音響の時間的な位置ずれとする。
[0129] なお、本システムでは、上記手順を実行して自動推定することも、あら力じめ決めた
時間のずれを、ユーザーが指定して、自動推定しないことを選択することができる。ま た、ユーザーの耳での混合音と既知音響とを左右別々のスピーカーから出力し、これ らの音声を比較しながら聴き、ユーザーの聴覚により位置合わせをするようにしてもよ い。
[0130] さらに、除去エンジン 100は、振幅スペクトル抽出部 200によって抽出された混合 音響振幅スペクトル力 既知音響振幅スペクトルを除去する除去処理部 104と、逆フ 一リエ変換して、除去後の音響を復元する逆フーリエ変換部 105及び配置処理部 1 06を備えている。
[0131] 除去処理部 104は、既知音響をパラメータ推定部 300で生成した推定データに応 じて変換し、この変換した信号を混合音響の「時間周波数データ」から、除去する。な お、この除去にあたって本実施形態では、シミュレーション部 14による「位相非依存 減算アルゴリズム」も実装している。すなわち、本実施形態では、シミュレーション部 1 4は、上述した「位相非依存減算関数」によって、 0度から 360度まで位相が一様に確 率分布しているとして、シミュレーションを行う。除去処理部 104は、シミュレーション 部 14によるシミュレーション結果に一致させるように除去強度を自動設定する除去強 度設定部としても機能する。
[0132] 前記逆フーリエ変換部 105は、差し引き計算によって得られた「時間周波数データ 」と、混合音響信号中の位相データとから、既知音響を消した音声のみのデータを逆 フーリエ変換により復元する。具体的に、逆フーリエ変換部 105では、除去エンジン 1 00で求めた振幅スペクトル S(co , t)と、混合音 m(t)の位相 θ πι( ω , t)を用いて Xs(co , t)を求め、それを逆フーリエ変換 (IFFT)することで、単位波形を得る。
[0133] なお、ここでは、各時刻での差し引き後の周波数チャンネルデータを逆フーリエ変 換するが、このときの各チャンネルの音声の位相は、除去する前の既知音響又は混 合音響の位相と同じ値を取るようにする。この操作によって、除去前の音声の位相が 維持でき、また区間毎に「プチプチ」というノイズが発生するのを防ぐことができる。な お、 IFFTの高速ィ匕については時間周波数データを作成する場合と同じ手法を用い ている。
[0134] 配置処理部 106は、ハユング窓の幅である 170ミリセカンドの幅をもつ各時刻の音声
について、同じ幅の窓の出力をオーバーラップアド(OverlapAdd)法で重ね合わせて 、最終的に音楽が除去された音声を復元する。
[0135] [除去エンジンの動作]
上述した構成を有する除去エンジン 100は、以下のように動作する。図 6は、かかる 動作を示すフロー図である。
[0136] 同図に示すように、既知音響 (オリジナル曲)と混合音響のデータが入力されると( ステップ S301)、先ず、データ分割部 201により、混合音響信号を、特定の長さ(窓 サイズ)の区間に分割する。ここでは、 2のべき乗である 8192サンプル(8192 + 48,000=0.170約 170ミリ秒)とする。
[0137] 次いで、ステップ S302により、時間周波数データの取得を行う。具体的には、窓関 数処理部 202により、窓サイズ区間(170m秒)の音声信号データに対し、ハユング関 数を掛け(S302a)、フーリエ変換部 203により、高速フーリエ変換 (FFT)を行う(S30 2b)。そして、フーリエ変換する区間を 480サンプル(480÷48,000=0.01 : 10ミリ秒)単 位で移動し(S302c)、これらのステップ S302a— cをループ処理により繰り返す。
[0138] このようにして 10ミリセカンド毎に得られた「時間周波数データ」に対して各種パラメ ータの推定を行う。具体的には、パラメータ推定部 300において、ユーザー操作に基 づいて、混合音の中で、音楽 (BGM)のみが鳴っている 1秒力 数秒の区間(上述し た「BGM区間」)を選択してキャリブレーション(S304)を行う。オリジナル曲に対して もほぼ同じ部分を選択する。
[0139] 次に、この区間内で周波数チャンネル毎に合計して、混合音と除去音 (オリジナル 曲)から得られる値を比較し、その比力も周波数特性を取得する(S305)とともに、平 滑化を行う(S306)。
[0140] その後、混合音全時間域にわたって、 BGMの音量の時間変化を検出し、周波数 毎の混合音に対する BGMの音量比を取得し (S307)、これに基づいて、混合音中 の BGMと、オリジナル曲が時間的に位置ずれしているかを判断する(S309)。
[0141] 上記ステップ SO 1で指定した混合音中の BGMとオリジナル曲が時間的に位置ず れしている場合は、オリジナル曲を混合音に対して、 1ミリ秒毎に前後に最大 100ミリ 秒ずらして(S310)、ステップ S305—ステップ S308までの処理を繰り返す。この区
間での音量の差を求めて、この差が最小となる時刻に最も一致していると考えられる ので、それが混合音中の BGMとオリジナル曲の時間的な位置ずれとなる。
[0142] 位置ずれが補正された後、除去処理部 104では、混合音響から推定した既知音響 の差し引き演算を行い(S311)、フーリエ変換部 203において、各時刻での差し引き 後の周波数チャンネルデータを逆フーリエ変換する(S312)。このときの各チャンネ ルの音声の位相は、除去する前の混合音響中の BGMの位相と同じ値を取るように する。そして、逆フーリエ変換された各窓サイズのデータを、配置処理部において、 オーバーラップアド (OverlapAdd)法により重ね合わせて(S313)、最終的に音楽が 除去された音声を復元し、データの出力を行う(S314)。
[0143] [エディタ]
(エディタの構成)
次いで、音響信号除去システムの GUIであるエディタ 400について説明する。図 7 は、エディタ 400の画面構成を示す説明図である。
[0144] 同図に示すように、エディタ 400は、 MIXファイルの波形表示をするウィンドウ 401 、 BGMファイルの波形表示をするウィンドウ 402と、 MIXファイルのスペクトル表示を するウィンドウ 403と、 BGMファイルのスペクトル表示をするウィンドウ 404と、除去後 音声と周波数-時間特性のスペクトル表示をするウィンドウ 405と、除去強度等を表 示'操作するウィンドウ 406とを備えている。これらの各ウィンドウは、除去処理の対象 となる混合音響信号の範囲を設定する範囲設定部として、機能する。
[0145] ウィンドウ 401及びウィンドウ 402では、ミックスファイル及び BGMファイルの波形が 表示され、マウスの右ボタンを押しながら上下に移動することにより、拡大'縮小(下- 上)でき、右ボタンを押しながら左右に移動することにより左右にスクロールさせること ができる。さらに、このウィンドウ上で、左ボタンを押しながら左右に移動することにより 区間を選択することができ、選択された区間は色が変わり、選択時間の最初と最後の 時間が表示される。なお、これらの操作は、キーボードの方向キーによっても可能と なっている。
[0146] また、右端の操作ボタン 401a又は 402aを操作することにより、時間軸方向のスクロ ール、選択区間の再生'再生停止、選択区間のスペクトル表示を実行することができ
る。
[0147] ウィンドウ 403及び 404では、上記ウィンドウ 401又は 402で選択された区間にお ける、 MIXファイルや BGMファイルのスペクトル表示がなされ、上記ウィンドウ 401と 402とほぼ同様の操作を行うことができる。なお、ここでのスペクトル表示において、ス ベクトルは、その強さを 16段階の色で表示され、横軸は時間、縦軸は周波数を示す
[0148] 特に、ウィンドウ 403では、キャリブレーション処理における周波数分布の推定の際 、このウィンドウ上で、 BGMだけが聞こえる区間を選択し、「SR」ボタンを押すことに より、選択された区間の開始位置及び終了位置が、テキストボックス部 407bの「キヤリ ブレーシヨン開始時刻」 (BGMのみ区間スタート位置)、「キャリブレーション終了時刻 」(BGMのみ区間終了位置)の欄に入力される。なお、このテキストボックス部 407bへ の入力としては、数値の直接入力がある。
[0149] ウィンドウ 405は、音響信号の時間毎の周波数分布 (周波数特性や振幅)を線又は 図形で表示するとともに、周波数の信号強度 (音量)を、線又は図形を段階的に色分 けすることによりサーモグラフ形式で表示する表示部であり、ラジオボタン部 407eを チェックすることによって、図 8に示すような、除去後のスペクトル表示と周波数-時間 特性のスペクトル表示とを切り替える。図 8の表示 511は、除去後のスペクトル表示で あり、表示 512は、時間-周波数特性を正規ィ匕したスペクトル表示である。このウィン ドウ 405においても、上述したウィンドウ 401— 404と同様のマウスやキーボード操作 を行うことができる。
[0150] ウィンドウ 406では、ラジオボタン部 407dをチェックすることによって、図 9に示すよ うな、除去強度曲線 (表示 521)、周波数特性曲線 (表示 522)、時間特性曲線 (表示 523)及び時間 周波数特性 (表示 524)を切り替えて表示する。このウィンドウ 406 は、曲線を変形させることにより、対応する時間において除去される既知音響振幅ス ベクトルの信号強度などを設定する設定部として機能し、左ボタンを押しながら右方 向に移動することで、曲線を変形することができ、関数曲線を細力べ且つ任意に調整 することができる。なお、マウスを左方向に移動しても変更できないようになっている。
[0151] なお、これらの各ウィンドウには、時間軸としてタイムコードが記述されており、このタ
ィムコードでは、混合音響信号力も検出された所定周波数 (ここでは、カラーバーの 1 kHz)の音響信号終了時刻から 15秒後を 0となるように自動調整されて!、る。
[0152] また、エディタ 400は、その下部に、ファイルの表示をしたり、各種パラメータを設定 したりする左右 2つの操作パネル 407及び 408を備えている。
[0153] 左側の操作パネル 407は、 MIXファイルを表示するウィンドウ 407aと、パラメータの 設定をするテキストボックス部 407bと、チェックボックス部 407cと、ラジオボタン部 40 7d, 407eと、除去実行用のボタン 407dとが設けられている。一方、右側の操作パネ ル 408は、 BGMファイルを表示するウィンドウ 408aと、パラメータの設定をするスライ ダ部 408bとを備えている。
[0154] ウィンドウ 407a及び 408aでは、 MIXファイルや BGMファイルをここにドラッグする ことによってウィンドウ 401や 402に、 MIXファイル又は BGMファイルの波形が表示 され、ドラッグされたファイルが動画ファイルであればこのウィンドウ内に映像が表示さ れる。これらのウィンドウ 407a及び 408aの下方には、スライドバーが配置され、これ をスライドさせることによって MIXファイルの再生開始位置を変えることができる。本実 施形態において波形表示される区間は再生開始位置から 5分に設定されている。さ らにこのスライドバーの下方には、再生ボタン、再生一時停止ボタン、再生停止ボタ ン、音量調整バー、再生開始位置を数値入力するテキストボックスが配置されている
[0155] テキストボックス部 407bは、図 10 (a)に示すように、除去する BGMの除去強度の 入力欄である「ィレース ラティォ」と、周波数分布の推定のために MIXファイルの BG Mのみ区間の開始位置及び終了位置を入力する欄である「キャリブレーション開始 時刻」、「キャリブレーション終了時刻」と、 MIXファイルと BGMファイルの選択区間の 開始位置のずれを入力する欄である「ターゲットと BGMの間のオフセット」とを備えて いる。「ィレース ラティォ」では、基本の値は 1であり、 0. 1— 5までを設定することが できる。また、「ターゲットと BGMの間のオフセット」では、— 1を設定すると、 自動位置 合わせを計算するモードとなる。
[0156] チェックボックス部 407cでは、図 10 (b)に示すように、周波数分布の推定精度を向 上させるために、ユーザーが指定した区間に加えて、他の BGMだけの部分を探して
自動的に探し出してデータにカ卩える再推定モード「PEM」と、推定を誤って小さな値と なった周波数チャンネルにつ 、て、隣接するチャンネルの値力 推定して補正する 周波数ぼかしモード「BAFAM」と、推定を誤って小さな値となった時刻について、前 後の時刻の値力も推定して補正する時間軸ぼ力しモード「BATAM」とを選択できるよ うになつている。
[0157] ラジオボタン部 407dでは、図 10 (c)に示すように、択一的にチェックを入れることに より、図 9に示すような、ウィンドウ 406における EraseRatio (強度曲線)、 FreqWeight( 周波数特性曲線)、 TimeWeight (時間特性曲線)、 BGMWeight (時間-周波数特性曲 線)の表示を切り替えることができる。なお、このラジオボタン部 407dにおいて、「e」を チェックすると強度曲線力 「f」をチ ックすると周波数特性曲線力 「t」をチ ックす ると時間特性曲線力 「BGM」をチェックすると時間-周波数特性曲線力 ウィンドウ 4 06に表示され、これらの各表示上において、パラメータの再設定することができる。
[0158] ラジオボタン部 407eでは、図 10 (d)に示すように、択一的にチェックを入れることに より、図 8のグラフ 511 (a)及びグラフ 512に示すような、ウィンドウ 405〖こおける、除去 後のスペクトルと時間-周波数特性のスペクトルとの表示を切り替えることができる。す なわち、このラジオボタン部 407eにおいて、「Res」をチェックすると除去後のデータの スペクトルが、「BGM」をチェックすると時間-周波数特性のスペクトル力 ウィンドウ 4 05に表示される。
[0159] スライダ部 408bでは、バーを左右にスライドさせることによって、「シフト フリーク ウェイト」で周波数特性曲線のバイアス量を、「シフト タイム ウェイト」で時間特性曲 線のバイアス量を、「シフト グローバル ウェイト」で時間-周波数特性のバイアス量を 、 「スム一ジング タイム ウェイト」で周波数方向のスムージング幅を変更することがで きる。なお、本実施形態では、これらのパラメータを変更すると TimeWeightの設定がリ セットされる。
[0160] ボタン部 407fでは、「DEL_Music」ボタンをクリックすることにより、音楽除去処理を 実行し、「RDEL_Music」ボタンをクリックすることにより、音楽の除去後、再調整された 特性での音楽除去処理処理を実行する。
[0161] (エディタの変更例)
上述した GUIであるエディタ 400は、以下のような形態とすることができる。図 11は 、エディタ 400の変更例を示す構成図である。
[0162] この変更例に係るエディタも、上述したエディタ 400と同様に、除去エンジン 100の 一部機能を、ユーザーの操作によって呼び出して、上記数 5及び数 6のすベてのパ ラメータ関数 a(t), g(co, t) (gco (ω, t), gt(t), gr(t)), ρ(ω) , q ) , r(t) , ο(ω, t)の形状を、ユーザーが手作業で設定することができる。エディタのユーザー は、最初力も任意の関数形状を描いて指定してもよいし、最初は先ず自動推定をし て、その結果を修正してもよい。
[0163] 本エディタは、大別して、混合音響信号 m(t) 操作用のサブウィンドウ Wl、既知 音響信号 b' (t)操作用のサブウィンドウ W2、既知音響信号除去後の所望の音響信 号 s(t)操作用のサブウィンドウ W3の三つで構成されている。既知音響信号 b' ( が 複数ある場合には、切り替えスィッチ W2Sにより、サブウィンドウ W2で操作する既知 音響信号 b' (t)を切り替えることができる。
[0164] 先ず、全サブウィンドウに共通の機能を述べる。操作範囲スライダ P1は、音響信号 中のどこを現在表示しているかを表す。カーソル P2は、現在の操作対象の時間軸上 の位置を表すアイコン化(折り畳み)ボタン P3は、これを押すと一時的にそのボタンの 属するサブウィンドウが折り畳まれ、小さくなる現在操作対象以外の未使用のサブゥ インドウを隠して、狭い画面を有効活用できる。フロート化 (拡大)ボタン P4は、これを 押すと一時的にそのボタンの属するサブウィンドウが、親ウィンドウ力も切り離され (フ ロート化)、さらに拡大されて操作'編集が容易になる、フロート化 (拡大)ボタン P4し か描かれていない場合には、このボタンを押すと、それに関連づけられたサブウィン ドウがフロート化されて出現する。再生制御パネル P5には、人間が聞いて確認する ために、音響信号の再生、停止、早送り、早戻しが可能なボタン群が並んでいる。
[0165] サブウィンドウ Wl、 W2、 W3には、混合音響信号 m(t)のパワーのグラフ Elとその 振幅スペクトル Μ(ω, t)のグラフ Ε2、既知音響信号 b' (t)のパワーのグラフ E3とそ の振幅スペクトル Β' (ω, t)のグラフ Ε4、既知音響信号除去後の音響信号 s(t)のパ ヮ一のグラフ E5とその振幅スペクトル S(co, t)のグラフ E6が表示されている。各振幅 スペクトルでは、左側に濃淡で振幅が描かれ (横軸が時間軸、縦軸が周波数軸)、右
側にカーソル位置での振幅が描かれている (横軸がパワー、縦軸が周波数軸)。
[0166] 既知音響信号 b' (t)操作用のサブウィンドウ W2が操作の中心となるウィンドウであ り、数 5及び数 6のすベてのパラメータ関数 a (t), g(co, t) (gco (ω, t), gt(t), gr(t )), ρ(ω) , q(t) , r(t)の形状を、自由に設定できる。以下、各操作パネルの説明 を べる。
[0167] 1.周波数特性の時間変化の補正用操作パネル C1(E7の右側)
gco (ω, t)を表示 '操作するためのパネルで、カーソル位置の時刻 tでの gco (ω, t )が描かれている (横軸が大きさ、縦軸が周波数軸)。設定操作結果は、 g(co, の 表示パネル E7に即座に反映される。 E7には、濃淡で g(co, t)の値の大きさが描か れている (横軸が時間軸、縦軸が周波数軸)。
[0168] 2.音量の時間変化の補正用操作パネル C2(E7の下側)
gt(t)を表示 ·操作するためのパネルで、設定操作結果は、 g(co, t)の表示パネル E7に即座に反映される。
[0169] 3. g ( ω , t)の値を全体的に持ち上げるための操作パネル C3 (E7の下側)
gr(t)を表示 '操作するためのパネルで、設定操作結果は、 g ( ω , t)の表示パネル E7に即座に反映される。
[0170] 4.混合音の振幅スペクトル力 既知音響信号の振幅スペクトルに相当する成分を減 算する分量を最終的に調整するための操作パネル C4
a(t)を表示'操作するためのパネルである。
[0171] 5.周波数軸方向の伸縮を補正するための操作パネル C5
P ( ω )を表示 '操作するためのパネルである。
[0172] 6.時間軸方向の伸縮を補正するための操作パネル C6
q(t)を表示'操作するためのパネルである。
[0173] 7.時間的な位置のずれを補正するための操作パネル C7
r(t)を表示'操作するためのパネルである。
[0174] 既知音響信号除去後の音響信号 s(t)操作用のサブウィンドウ W3では、数 5中の パラメータ関数 c(co, t)の形状を、自由に設定できる。以下、各操作パネルの説明を べる。
[0175] 1.グラフィックイコライザ (GEQ)操作パネル C8 (E8の右側)
c ( ω , t)の ω方向の形状を表示操作するためのパネルで、カーソル位置の時刻 t での c ( co , t)が描かれている (横軸が大きさ、縦軸が周波数軸)。設定操作結果は、 c ( co , t)の表示パネル E8に即座に反映される。 E8には、濃淡で c ( co , t)の値の大 きさが描かれている (横軸が時間軸、縦軸が周波数軸)。
[0176] 2.ボリュームフエーダー操作パネル C9 (E8の下側)
c ( co , t)の t方向の形状を表示'操作するためのパネルで、設定操作結果は、 c ( co , t)の表示パネル E8に即座に反映される。
[0177] 本エディタでは、オーディオファイルを入出力するだけでなぐ各種パラメータ関数 の形状もファイルに入出力できるようにする。これにより、除去作業の中断'再開を可 能にする。また、ユーザーに対して高速なレスポンスを達成するために、マルチスレツ ドに基づいて GUIと信号処理、音響再生を異なるスレッドとして実装し、時間のかか る信号処理等の待ち時間を隠蔽するとよい。
[0178] [プログラムを記録したコンピュータ読み取り可能な記録媒体]
なお、上述した実施形態及びその変更例に係る音響信号除去システムは、例えば 、ユーザー端末や Webサーバ等のコンピュータや ICチップにインストールされた音響 信号除去プログラムと、コンピュータに備えられる CPU、メモリ、ハードディスク等とに よって実現される。従って、音響信号除去プログラムをインストールすることにより、上 述した各機能を有する音響信号除去装置や音響信号除去システムを容易に構築す ること及び、音響信号除去方法を実施することが可能となる。この音響信号除去プロ グラムは、例えば、通信回線を通じて配布することが可能であり、またスタンドアロー ンの計算機上で動作するノ ッケージアプリケーションとして譲渡することができる。
[0179] そして、このようなプログラムは、図 12に示すような、汎用コンピュータ 120で読み取 り可能な記録媒体 116— 119に記録することができる。具体的には、同図に示すよう な、フレキシブルディスク 116やカセットテープ 119等の磁気記録媒体、若しくは CD ROMや DVD— ROM 117等の光ディスクの他、 RAMカード 118など、種々の記録 媒体に記録することができる。
[0180] そして、このプログラムを記録したコンピュータ読み取り可能な記録媒体によれば、
汎用のコンピュータや専用コンピュータを用いて、上述した音響信号除去システムを 構築したり、音響信号除去方法を実施したりすることが可能となるとともに、プログラム の保存、運搬及びインストールを容易に行うことができる。
[0181] [実施形態における作用'効果]
以上説明した本実施形態によれば、振幅データは位相が変化してもかわらな ヽの で、位相に依存しない処理が可能となる。従って、例えば、音声と音楽が混じった番 組の音声信号から、番組作成時に使用した音楽 CD等の音のデータを使って、音楽 だけを除去することができる。すなわち、音響信号において振幅スペクトルは、位相 に依存しないため、位相が変化してもその影響を受けることなぐ混合音響信号中の 既知音響信号の周波数特性や音量変化を、適切に推定することができる。この結果 、本発明によれば、例えば、音声と音楽が混じった番組の音声信号から、番組作成 時に使用した音楽 CD等の音のデータを使って、音楽だけを的確に除去することがで きる。なお、本発明は、音楽に限らず、番組作成時に混入した背景雑音等も、雑音の みが同時に録音された音のデータを使って除去することができる。
[0182] また、本発明では、混合音響と既知音の位相差につ!ヽて、 0度から 360度まで位相 がー様に確率分布しているとして、シミュレーションを行い、このシミュレーション結果 に一致させる関数である上記「位相非依存減算関数」を用いることにより、位相差分 布の偏りによる誤処理が回避され、既知音を過剰に引きすぎたり、エコーがかかった 音になってしまうのを防止することができる。
[0183] 特に、番組音声作成時において、製作意図にあわせて周波数特性や音量が調整 され、音の位相が予測不能な変化をしている場合であっても、混合音響中における 音楽の変化を自動的且つ高精度に予測し、位相に依存せず除去することができる。
[0184] 本実施形態では、除去処理に係る音響中の範囲設定に際し、同期制御部 9により 、映像と音声とを同期させてモニタ 10及びスピーカー 11から出力するため、音楽除 去前、音楽除去後のそれぞれの音声を映像と照らし合わせて視覚的に確認しながら の操作が可能となり、作業効率を向上させることができる。
[0185] 本実施形態では、時間変化グラフを表示し、その上をユーザーがマウスでドローィ ングする直感的な操作で修正できるため、番組の各場面や再利用方法を考慮するな
どユーザーの意図に基づいて、音楽除去の効果を調節することができる。 産業上の利用の可能性
以上のように、本発明に係る音響信号除去装置は、混合音響中から、除去しようと する音響を適正に除去することができるため、コンテンツを再利用する際の音響除去 作業に対して有用である。