JavaSound またはサードパーティのサウンド キャプチャ ツールでキャプチャし、ファイルに記録する場合。その後、ファイルを読み込んで変更します。Java アプリケーションで「バックグラウンド ノイズ」を除去する方法はありますか。
主人公が話している間の道路交通/空気の騒音など?
ありがとう
JavaSound またはサードパーティのサウンド キャプチャ ツールでキャプチャし、ファイルに記録する場合。その後、ファイルを読み込んで変更します。Java アプリケーションで「バックグラウンド ノイズ」を除去する方法はありますか。
主人公が話している間の道路交通/空気の騒音など?
ありがとう
バックグラウンド ノイズの除去は非常に困難です。飛行機の「ホワイト」ノイズなどの均一なノイズの場合、それらの周波数成分を除去するアルゴリズムがあります。しかし、ノイズが均一ではなく、良好な録音と性質が類似している場合 (背景で話している人、通りの騒音など)、それらを分離することは非常に困難です。これについては多くの研究が行われてきました。
少なくとも、何が良いオーディオで何が悪いオーディオかを正確に知る必要があります。たとえば、音声をキャプチャしている場合、音声を他の音から分離するための特別なオーディオ修復ソフトウェアが利用できる場合があります (例: http://www.izotope.com/products/audio/rx/ ) 。音声をステレオで録音している場合は、音声の左右の位置を分析し、左右を関連付けて非音声成分を除去することで成功する場合があります。
Re: mkb さんのコメント:
MARF (Modular Audio Recognition Framework)は、マニュアルで「ノイズ除去」について言及しています ( Audacity のノイズ除去と同様に、ノイズ プロファイル フェーズとノイズ除去フェーズの 2 フェーズを使用)...
...しかし、残念ながらまだ実装されていません。:(
非常に単純なノイズゲートの実装は難しくありません。