問題タブ [noise-reduction]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
641 参照

algorithm - 1秒あたり44サンプルのLPCMアレイが与えられた場合のノイズのキャンセル

LPCMデータの1秒あたり44100サンプルの配列があります。実際、私は2チャンネル分のデータを持っています。

11.61ミリ秒ごとに、約512のサンプルを取得します。

今、私はオーディオからのノイズをキャンセルする方法の指示に従いたいです

ただし、その説明は、入力が正弦波であることを前提としています。

ノイズをキャンセルするには、LPCMを正弦波に変換する必要がありますか?つまり、この手法を適用するには、LPCMでFFTを実行する必要がありますか?

その場合、結果の波形をLPCMに変換して再生できるようにするにはどうすればよいですか?

0 投票する
2 に答える
436 参照

algorithm - タイム ドメイン信号の極性を反転することで、ソース オーディオをキャンセルできますか?

時間領域の入力信号があります (つまり、1 秒あたり 14100 個の符号付き整数)。

各値の極性 (符号の有無) を逆にすると、破壊的なソース オーディオ キャンセリング信号が生成されませんか?

0 投票する
4 に答える
3366 参照

math - アクティブノイズキャンセルの背後にある理論は何ですか?

前の質問で、破壊的なノイズ信号を生成するためにソース時間領域の振幅値を単純に否定できないのはなぜですか?

ポスターの1つは、逆極性(否定)信号を生成するだけで理論的には機能するが、実際には不可能であると述べています。

だから私は尋ねています、アクティブノイズキャンセルへの(一種の半技術的な方法での)基本的なアプローチは何ですか?

第二に、なぜこのトピックに関するほとんどの文献が周波数領域にあるのですか?

0 投票する
2 に答える
1681 参照

algorithm - 音波の逆音が元の音とまったく同じように聞こえるのはなぜですか?

私はオーディオソースを持っています(私はまた質問をしているSOの別のメンバーと一緒にプロジェクトに取り組んでいます)

時間領域では、符号付き4バイト整数の44100サンプルがあります。時間領域では、各サンプルを否定します。

周波数領域では、別のユーザーが指摘してくれたように、各周波数値の実数部と虚数部を否定することにより、位相を180度シフトしました。

どちらの場合も、結果のオーディオウェーブは元のソースとまったく同じように聞こえます。これは予想されますか(おそらく、の波は本質的に同じで、逆になっているだけですか?)

スティーブ

0 投票する
2 に答える
970 参照

matlab - ノイズ減少

グレー値= 100のどこでも均一な強度の画像があり、標準偏差= 5の加法的ゼロ平均独立ガウスノイズを追加しました

ノイズの多い画像のピクセル強度の平均と標準偏差は、それぞれ 100 と 5 になると思います。

次に、ノイズの多い画像のノイズを2x2平均化マスクで減らしたいと思います。

画像のピクセル強度の平均と標準偏差に対する平均化マスクの効果は何ですか? マスクのサイズを大きくした方が良いですか?

0 投票する
1 に答える
575 参照

filtering - ノイズの多いサンプル ベクトルの周波数を取得する

私は主に、後で自分のシステム (Arduino ボード) に移植する一般的なアルゴリズムが必要ですが、他の方向で研究を続けるためのヒントさえ得られてうれしいです。

周期的な信号を表す 5 秒間をカバーする約 650 のサンプルのセットがありますが、かなりのノイズがあります。サンプルは TAOS230 光センサーからのもので、信号は血流に基づく人間の皮膚の透明度です。

実際には人間の脈拍であるメイン/ドミナント信号の周波数が必要です。サンプルは次のようになります https://www.dropbox.com/s/fw196r6yf1awhrh/untitled2.bmp

ここには、約 5k サンプルのダンプがありますhttps://www.dropbox.com/s/efwvyn5oec7ixgg/samples.txt

ありがとうございました、

アレックス

0 投票する
7 に答える
3177 参照

matlab - 処理された画像のアーティファクト

この質問は、スタックオーバーフローでのMatlabでの以前の投稿の画像処理アルゴリズムに関連しています。これは私が望んでいた結果をすでに得ています。

しかし今、私は別の問題に直面しており、プロセス画像にいくつかのアーティファクトが含まれています。私の元の画像(600枚の画像のスタック)では、アーティファクトが見当たりません。指の爪からの元の画像をご覧ください。

ここに画像の説明を入力してください

しかし、私の10の処理結果では、次の行を見ることができます。

ここに画像の説明を入力してください

彼らがどこから来たのか本当にわかりませんか?

また、それらがカメラのセンサーに属している場合、元の画像でそれらを見ることができないのはなぜですか?何か案が?

編集:

@Jonasによって提案された次のコードを追加しました。アーティファクトは減少しますが、完全に除去されるわけではありません。

@belisariusがさらに多くの画像を要求したので、スペックルパターンのある指から4つの画像をアップロードし、黒い背景サイズ(1280x1024)から4つの画像をアップロードします。

image1 image2 image3 iamge4

そして、これが黒い背景です:

blackbackground1 blackbackground2 blackbackground3

0 投票する
3 に答える
5906 参照

android - 適切なオーディオ キャプチャとノイズ リダクション

私の Android アプリケーションでは、ユーザーの音声をマイクからキャプチャしてサーバーに渡す必要があります。現在、私はMediaRecorderクラスを使用しています。ただし、現在の入力音の音量に基づいて光る効果を作りたいので、AudioStreamなどが必要なので、それは私のニーズを満たしていません。現在、私は以下を使用しています:

私は API レベル 7 を使用して書いているので、他の AudioEncoders は表示されませんが、AMR Narrow Band は表示されません。たぶんそれが私の録音で聞こえるひどいノイズの理由です.

私が直面している2番目の問題は、音質の悪さ、ノイズです。特にnoname中国語のタブレットでは本当にひどいので、それを減らしたい(キャンセル、抑制したい). 私の知る限り、多くのリソースが必要であり、最新のガジェット (特に noname の中国製タブレット) のすべてがそれを可能な限り高速に実行できるわけではないため、これはサーバー側である必要があります。サーバーで使用するプラットフォームは自由に選択できるので、ASP.NET、PHP、JSP など、サウンドを改善するのに役立つものであれば何でもかまいません。ASP.NET について言えば、NAudio というライブラリに出会いました。何らかの形で役立つかもしれません。ライブラリに組み込まれているノイズ削減ソリューションがないことはわかっていますが、それを使用した FFT と自動相関の例をいくつか見つけたので、役立つかもしれません。
正直なところ、これほど近くで音を扱ったことがなく、どこから始めればよいかわかりません。私はノイズリダクション技術、コード例について多くのことをグーグルで検索しましたが、何も見つかりませんでした. あなたたちは私の最後の希望です。
前もって感謝します。

0 投票する
1 に答える
3344 参照

database - VB.Net Datatable で特定の数の行/列の平均を見つけて配列に保存する

他の質問に助けられた後、VB.NET DataTable の一連のデータポイントで動作するノイズ削減アルゴリズムをプログラムしようとしています。yCoord基本的には、座標値 (たとえば) としきい値平滑化値 ( )の 2 つの整数をNoiseThresh取り、範囲内の値の平均を取り、(yCoord - NoiseThresh, yCoord + NoiseThresh)その数値を配列に格納します。このプロセスを列ごとに繰り返して (この例では)、最終的に平均値の 1 次元配列が得られます。私の質問は次のとおりです。

1) 今言ったことは意味がありましたか ;)、そして
2) 誰かコードを手伝ってくれませんか? データベースを扱った経験はほとんどありません。

ありがとう!

私がやろうとしていることの例:

これは大規模なデータ セット (通常の数値は yCoord=500、NoiseThresh = 50、配列の長さ = 1092) に対して実行されるため、数値を手動で入力する可能性はありません。

これが私の質問を明確にするのに役立つことを願っています!

PS: はい、// が VB.NET のコメントではないことはわかっています。