問題タブ [sampling]

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 に答える
36 参照

java - java:sampleoutofbounds例外

サウンドファイルのノイズを減らす学校向けのプログラムを書いています。これまでのところ、私はこのコードを作成しました。これは、セット1の前にn個のサンプルを取り、セットの後にn個のサンプルを取り、2つを平均すると思います。私の問題は、2番目のforループが実行されるたびに、sampleoutofboundexceptionが発生することです。これは、探しているサンプルが見つからないことを意味していると思いますが、その理由がわかりません。

この行を実行するたびにエラーが発生し、その理由がわかりません。何か助けはありますか?ありがとうございました

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

audio - 複数のサウンドクリップをミキシングする

6つのサウンドクリップを一緒にミックスしようとしています。

各クリップが単一のギター弦の弾きであり、それらをミックスしてギターコードを生成するとします。

ここで、クリップは[-1,1]の範囲の実数の配列であり、各数は単一のサンプルです。

実装してくださいmix

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

android - Android:加速度計のサンプリングレートを上げる方法は?

現在、Java APIを使用して、要件を下回る5Hzの加速度計値を取得しています。少なくとも50Hzを達成したい。加速度計のサンプリングレートを上げる方法はありますか?

よろしく

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

python - Pythonでランダムな結果を遅延サンプリングする

パイソンの質問です。オブジェクトの大きな配列を生成していますが、これは小さなランダム サンプルを作成するだけで済みます。問題のオブジェクトを実際に生成するには時間がかかるため、生成する必要のないオブジェクトをスキップして、サンプリングされたオブジェクトのみを明示的に作成することはできないかと思います。

言い換えれば、私は今持っています

これはかなり無駄です。私はもっ​​と怠け者のようなものを好むだろう

これが機能するかどうかはわかりません。random.sample のドキュメントはあまり明確ではありませんが、xrange が非常に高速であると言及されているため、動作する可能性があると思われます。配列の作成をジェネレーターに変換するのは少し面倒なので (ジェネレーターに関する私の知識は非常にさびしいです)、これが機能するかどうかを事前に知りたいです。:)

私が見ることができる別の方法は、xrange を介してランダムなサンプルを作成し、実際にインデックスによって選択されたオブジェクトのみを生成することです。ただし、生成されるインデックスは任意で不必要であるため、これはあまりきれいではありません。また、generateHugeArray メソッドでこれをサポートするには、かなりハックなロジックが必要になります。

ボーナス ポイント: random.sample は実際にどのように機能しますか? 特に、xrange のようなジェネレーターのように、人口のサイズが事前にわからない場合、どのように機能しますか?

0 投票する
5 に答える
803 参照

math - 2つのデータセット間の補間エラーを最小限に抑える

下の図の上部には、時間の経過とともに変化する値(y軸)(x軸)が表示されます。

これが発生すると、予測できないさまざまな時間に値をサンプリングします。また、赤と青で示される2つのデータセット間でサンプリングを交互に行います。

いつでも値を計算するとき、赤と青のデータセットの両方が同様の値を返すことを期待しています。ただし、3つの小さいボックスに示されているように、これは当てはまりません。時間の経過とともに表示されると、各データセット(赤と青)の値は発散し、元の値に収束しているように見えます。

補間のエラーを示す図

最初は線形補間を使用して値を取得し、次にCatmull-Rom補間を使用してみました。前者の結果、値は互いに近づき、各データポイント間で離れてドリフトします。後者の結果、値はより近くなりますが、平均誤差は大きくなります。

誰かが(おそらく各データセットからのより多くのサンプルポイントを使用することによって)より大きな平滑化を提供する別の戦略または内挿法を提案できますか?

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

filter - ローパス FIR フィルター - 待ち時間なし

オーディオをオーバーサンプリングするために FIR フィルターを使用しています。これは単純で典型的なウィンドウ化された sinc です。つまり、切り詰められてウィンドウ化された sinc 関数です。いつものように、過去と「未来」のサンプルが機能する必要があります。実際には、これはオーディオ出力が遅延することを意味します。sinc 関数は理想的なローパス フィルターです。私の質問は、「将来の」サンプルが必要ないことを除いて、同等のものです。この関数は、ブリック ウォール IIR フィルターのインパルス応答と同じだと思います。完璧なブリック ウォール カットオフがありますが、完全な位相応答はありません。

0 投票する
6 に答える
7687 参照

algorithm - データ ストリームのランダムなサブセットを保持する方法は?

サーバーを流れる一連のイベントがあります。すべてを保存することは現実的ではありませんが、定期的にそれらの一部をまとめて処理できるようにしたいと考えています。だから、私が見たすべてのもののランダムサンプリングであるが、最大サイズに制限されているストリームのサブセットを保持したい.

そのため、新しいアイテムごとに、保存されたセットに追加するか、破棄するかを決定するアルゴリズムが必要です。追加した場合、すでに限界に達しているため、古いアイテムの 1 つを削除するアルゴリズムが必要です。

明らかに、制限を下回っている限り、これは簡単です (すべてを保存するだけです)。しかし、その制限を超えたら、古いアイテムや新しいアイテムに偏ることなく、適切なランダム サンプリングを維持するにはどうすればよいでしょうか?

ありがとう、

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

c - サウンド サンプルをリサンプリングする場合、どのフィルターを使用しますか?

信号 (サウンド サンプル) をあるサンプリング レートからより高いサンプリング レートにリサンプリングしようとしています。残念ながら、何らかの「エイリアシング」が発生しているように見えるため、何らかのフィルターが必要であり、私はフィルターに精通していません。これが私が思いついたものです:

新しいサンプルはオリジナルに非常に似ていますが、何らかのノイズがあります。追加する必要があるフィルターと、できればそのフィルターに関連するコードを教えてください。

オリジナルサウンド: http://www.mediafire.com/?9gnga1in52d6t4x リサンプリングサウンド: http://www.mediafire.com/?x34h7ggk8n9k8z1

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

audio - c とマイクロコントローラーを使用して、ナイキスト周波数でオーディオ トラクトをサンプリングするにはどうすればよいですか?

これは私ができる限り単純で曖昧さが少ないので、助けてください。

これにより、私がしたいことを意味します:

1) オーディオトラックを入力 (Anaglod)

2) マイクロコントローラ ADC を使用して、デジタル出力に変換します。

3) 次に、マイクロコントローラ/ボードのタイマーに、選択した間隔でデータをサンプリングさせます。

4) 「サンプリングされたオーディオ トラック」を取得するようにボードに指示し、2B のレートでサンプリングします (B は最高周波数を意味します。

F=周波数

F(Hz=1/s) Ex 100Hz = 1000 (サイクル/秒) F(s)= 1/(2f)

問題例: 1000 Hz = 最高周波数 1/2(1000hz) = 1/2000 = 5x10(-3) 秒/サイクルまたは 5 ミリ秒のサンプリング レート

5) ボードの ADC にそれを吐き戻し、アナログに変換します。したがって、出力は最初のオーディオ トラックを完全に再構成したものになります。

フーリエ解析を使用して、トラックをサンプリングする最高周波数を決定します。

ただし、理論的には簡単で簡単に聞こえますが、必要なのはこれを C でプログラムし、msp430 チップ/Experimenters ボードを使用してトラックをサンプリングすることです。

プログラミングとデバッグには Texas Instruments CCS と Octave を使用する予定です。これは私が使用する私のボードです。

質問:

Cはこれに適した言語ですか?C を使用してナイキスト周波数でタックをサンプリングする方法の例を得ることができますか? ADC コンポーネントを使用するようにボードに指示する C のコードはどれですか? また、このプロジェクトに役立つ、または同様の推奨情報があれば教えてください。

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

matlab - サンプリングされたオーディオ ファイルをオリジナルと同じ速度で再生するにはどうすればよいですか?

質問はタイトルの通りです。

n 番目ごとにポイントを取得するオーディオ信号をデシメートすると、オーディオ クリップが n 倍に高速化されます。間引きされたクリップと元のクリップの時間の長さが同じになるようにします。

これが私のコードで、ピアノの.wavを分析して間引いたものです

考えられる解決策: 新しいデシメートされたクリップは元のクリップよりも 2 倍短いため、残りの各ポイントを 2 倍にします。

2 つのクリップを並べて比較できるようにしたいだけです。

ここに音声ファイルがあります: http://www.4shared.com/audio/11xvNmkd/piano.html