タグ付けされた質問 「filters」

信号処理では、フィルターは、特定の周波数を選択的に選択し、他の周波数を適切なゲインのままにして、信号を変換するデバイスまたはプロセスです。

2
ビットマップアルファベベルアルゴリズム?
アルファをバンプマップとして使用して、ビットマップにベベル効果を追加するアルゴリズムを作成したいと考えています。 このようなことをどのようにすればいいですか?鏡面照明を試しましたが、ハイライトのみが得られ、シェードは得られません。 これが私が話している効果です(Photoshopを使用して作成): これらの全てを用いて行ったsize: 30px(ビットマップの輪郭からベベルの深さ)をangle 130、altitude 50。 左から右、上から下: チゼルハードベベル チゼルソフトベベル 滑らかなベベル チゼルハードでsoften: 16px-ぼやけた面取り? これらのエフェクトをそれぞれ作成しようとしていますが、基本的なベベルを作成するにはどうすればよいですか?そして、その斜面からこれらのそれぞれに到達するには何が必要ですか

1
カルマンフィルター-「派生」測定を処理する最適な方法
すなわち、状態変数として位置(p)と速度(v)があり、pの低周波測定を行うと、これは間接的にvに関する情報も提供します(pの微分なので)。そのような関係を処理する最良の方法は何ですか? A)更新手順では、pを測定したとだけ言って、vを修正するためにフィルタリングプロセスと累積状態共分散行列(P)に依存する必要がありますか? B)pの測定の更新ステップの後または前に、測定されたpと(比較的大きい)デルタ時間を使用してvの高分散予測を行う「余分な」予測ステップを作成する必要がありますか? C)更新/測定のステップで、pと vの両方を測定し、それらの相互依存性に関する情報を測定共分散行列(R)に何らかの方法でエンコードしたと言う必要がありますか? もう少し背景を説明するために、問題に遭遇した特定の状況を以下に示します。 私は物体の位置(p)を推定したいシステムで作業しており、加速度(a)を頻繁に測定し、pの頻度の低いノイズ測定を行っています。 私は現在、拡張カルマンフィルターでこれを行うコードベースで作業しています。このコードベースでは、状態変数pおよびvとして保持されます。加速度測定のたびに「予測」ステップを実行し、測定されたaとデルタ時間を使用して、新しいpとvを統合および予測します。次に、(まれな)p測定ごとに「更新」/「測定」ステップを実行します。 問題はこれです-私は時々aの高エラー測定値を取得し、それは非常に誤ったvをもたらします。明らかに、aのさらなる測定はこれを決して修正しませんが、pの測定はこれを取り除くべきです。そして、実際、これは起こるように見えます...しかし、非常にゆっくりです。 このシステムでpがvに影響する唯一の方法は、共分散行列P(つまり、上からの方法A)を介することだけであるため、これは部分的にはあると考えていました。pとvの間のこの関係に関する知識をモデルに組み込んで、pの測定がvをより速く修正するためのより良い方法があるかどうか疑問に思っていました。 ありがとう!

4
ブックの推奨事項-CでのDSPコードの作成
私は、すべての主要なDSPメソッドを実行するために、実際にCでコードを記述する方法を示すだけの良い本を探しています。 FFT。 ローパスおよびハイパスフィルター。 自己相関。 ノイズ処理。 そして、理論からCの実際のコードまで、DSPのすべての基礎。 たとえば、1000個のサンプルがありますが、そのFFTを計算し、ノイズを除去してから時間軸に戻したいと思います。 これらすべてをカバーする良いものはありますか?

4
ウィンドウサイズを大きくせずにFFTの周波数分解能を上げることはできますか?
マルチピッチ分析にSTFTを使用したいと思います。信号に存在する部分音を検出することはほんの始まりに過ぎないことを理解しています。まだ問題があります。 「CD」周波数でサンプリングされた信号があるとしましょう44100Hz。1024サンプルのウィンドウでは、周波数ビンの解像度がになり22500Hz/512=43Hzます。これが唯一のように見分けるの高いピアノのノートには十分です C5 = 523.251HzとC#5 = 554.365。 私1024は以前はかなり大きな窓だと思っていました。しかし、そうではないかもしれませんし、通常、パーシャルを検出するために大きなウィンドウが使用されますか? ウィンドウサイズを大きくする以外の方法で周波数分解能を上げると、時間分解能が悪くなりますか?私は2つの方法を考えました: 方法1: バンドパスフィルターを使用して、信号を周波数帯域に分割します(0-11.25Hzおよびなど11.25-22.5Hz)。 元の高周波数が低周波数になるように、より高い帯域をダウンサンプリングします(2番目の帯域でも同様です11.25-22.5Hz -> 0Hz-22.5Hz)-これが可能かどうかはわかりません。 結果のビンセットを調整されたラベルで連結します。 方法2: 制限を増やしながら一連のローパスフィルターを使用します。 増加する周波数範囲でFFTを実行します。 各周波数に対して、可能な限り最適な解像度(この周波数が含まれていた最初のFFTからのビン)を使用します。 これにより、低周波数の解像度が向上しますが、音が高いほど周波数の差が大きくなるため、これは問題ないと思います。 この問題についての発言に感謝します。 ここも読んでください: ウィンドウサイズ、サンプルレートはFFTピッチ推定にどのように影響しますか? ピークピッキングの結果を改善する方法について。使ってみようと思います。
12 filters  fft  pitch  stft 

3
信号処理の「高速」変化を検出する方法
私は、コンポーネントのはんだ付け性を測定するプロジェクトに取り組んでいます。測定された信号はノイズが多い。5000ミリ秒の時点で始まる変化を認識できるように、信号をリアルタイムで処理する必要があります。 私のシステムは10ミリ秒ごとに実数値のサンプルを取得しますが、サンプリングを遅くするように調整できます。 5000ミリ秒でこのドロップを検出するにはどうすればよいですか? シグナル/ノイズ比についてどう思いますか?焦点を合わせて、より良い信号を取得する必要がありますか? すべてのメジャーの結果が異なるという問題があり、この例よりも低下が小さい場合があります。 データファイルへのリンク(プロットに使用されるものとは異なりますが、最新のシステムステータスを表示します) https://docs.google.com/open?id=0B3wRYK5WB4afV0NEMlZNRHJzVkk https://docs.google.com/open?id=0B3wRYK5WB4afZ3lIVzhubl9iV0E https://docs.google.com/open?id=0B3wRYK5WB4afUktnMmxfNHJsQmc https://docs.google.com/open?id=0B3wRYK5WB4afRmxVYjItQ09PbE0 https://docs.google.com/open?id=0B3wRYK5WB4afU3RhYUxBQzNzVDQ

3
ストップバンドフィルターが他の周波数を減衰させるのはなぜですか?
2トーン信号のコードは次のとおりです。ストップバンドを使用して高いトーンを除去し、信号をフィルター係数で畳み込んだ後、周波数領域で前(青)と後(赤)をプロットします。 。 このコードをMatlabに入れると、フィルターによって高い周波数が正常に削除されたことがはっきりとわかりますが、何らかの理由で低い周波数の振幅が半分にカットされ、フィルター係数の数を増やすと、曲線全体が平らになるほど、これが起こるのはなぜですか?そして、ストップバンドが外側に伝播しないように、どうすればそれを防ぐことができますか?画像とコードは次のとおりです。 fSampling = 8000; tSampling = 1 / fSampling; t = 0:tSampling:0.005; F0 = 1000; F1 = 3000; xt = sin(2 * pi * F0 * t)+ sin(2 * pi * F1 * t); ht = fir1(40、.25、 'stop'); yt = conv(xt、ht); fAxis = -4000:125:4000-125; xF = fft(xt、64); MagXF …
12 filters  matlab 

5
相互相関の前のアップサンプリングは役に立ちませんか?
2つの異なるセンサーからの2つの信号が相互相関し、到着時間遅延が相互相関関数のピークの横座標から計算される単純なケースを考えます。 さらに、両方のアンテナの次元の制約と、可能な最大サンプリングレートの制約により、可能な最大遅延は、10サンプルに対応するであると仮定します。DDD 問題: これらの制約のため、計算された遅延は0〜10サンプルの整数値、つまりから変動する可能性があります。私が本当に欲しいのは、アンテナに衝突する2つの信号間の遅延の分数遅延識別であり、次元やサンプリングレートの変更はオプションではないためです。0≤D≤100≤D≤100 \le D \le 10 いくつかの考え: 当然、この場合に最初に考えるのは、相互相関を実行する前に信号をアップサンプリングすることです。しかし、私はシステムに新しい情報を実際に追加していないので、これは何らかの形で「ごまかし」だと思います。 ある意味で、アップサンプリングがいかに「ごまかし」ではないのか理解できません。はい、現在観測されている周波数情報に基づいて信号を再構築していますが、これにより、たとえばと間で信号が本当に開始された場所を知ることができますか?この情報は、信号の真の非整数遅延開始が実際にであると判断した元の信号のどこに含まれていましたか?D = 8 D = 7.751D=7D=7D=7D=8D=8D=8D=7.751D=7.751D=7.751 質問): これは本当に「不正行為」ですか? そうでない場合、この新しい「情報」はどこから来るのでしょうか? はいの場合、非整数遅延時間を推定するために他にどのようなオプションが利用可能ですか? 遅延に対するサブサンプルの回答を集めるために、相互相関の結果をアップサンプリングすることは承知していますが、これも「不正」の形ではありませんか?相互相関前のアップサンプリングと異なるのはなぜですか? 実際にアップサンプリングが「不正」ではない場合、なぜサンプリングレートを上げる必要があるのでしょうか?(低いサンプリング信号を補間するよりも、ある意味でサンプリングレートが高い方が常に良いのではないでしょうか?) その場合、非常に低いレートでサンプリングし、必要なだけ補間することができます。信号を単純に私たちの心の欲求に補間するという観点から、これはサンプルレートを「無駄」にしないでしょうか?補間には計算時間がかかり、単純に高いサンプルレートで開始するのはそうではないことを理解していますが、それが唯一の理由ですか? ありがとう。

4
遷移帯域が狭いデジタルフィルターの出力にリンギングが見られるのはなぜですか?
オーディオを使用したスペクトルマングリングタイプエフェクトの「極端な」eqを実行しています。私はレンガの壁フィルターと非常に狭い帯域通過フィルターとリジェクトフィルター(vstプラグイン)を使用しています。 。残念ながら、急勾配のeq勾配を使用する必要があります。プリリングを回避するため、最小フェーズを使用する準備ができています。 具体的には、私は疑問に思っています: 最小位相フィルターで、入力直後のインパルス応答に振動が発生する原因は何ですか? これらの振動は、急勾配スロープフィルタリングでパスバンドに追加される可聴プリおよびポスト「リンギング」音の原因ですか? 振動、したがってリンギング周波数は常に同じ周波数ですか、またはリンギング周波数は何らかの方法で入力信号に依存していますか? あなたの専門知識をありがとう。返事をお待ちしております。デール。

2
適応フィルターは何をしますか?
私はインターネット上の適応フィルターについて少し勉強しましたが、その特別なフィルターが進行するとすぐにフィルター値を更新し続けることがわかりました。入力と出力の差を見つけ、エラー関数と以前の係数を使用して新しいフィルター係数を見つけます。 しかし、これは意味がありません。常に入力と出力の差を最小化しようとします。したがって、すべての信号をそのまま渡そうとすると、どのように使用されますか。 誰もが実際のアプリケーションでどのように使用されているか説明できますか。 また、アダプティブデジタルフィルターの実装に役立つリンクを介して助けていただければ幸いです。 私の疑問を表現するのがはっきりしない場合はコメントしてください!

3
デジタルフィルターのフィルター係数は何を表していますか?
matlabのfdatoolを使用してデジタルフィルターを設計し、ツールからフィルター係数を取得しました。 問題は、4次フィルターを設計したことです。これは私に5つのフィルター値を与えました h[] = {0.1930,0.2035,0.2071,0.2035,0.1930} x[k] = Discrete time input signal 公式を使用して Output = h[k]*x[n-k]; 出力は最終的なフィルター処理された値を表しますが、結果はうまくいきますが、これらの係数がmatlabによってどのように取得され、単なる乗算(畳み込み)がサンプルの最終的なフィルター処理された応答をどのように与えるかはわかりません。 任意のリンクまたは説明が行います。フィルター係数計算の完全なバックエンド動作を知りたい。 どこかに疑問がある場合は、コメントしてください。 ありがとう:)
12 filters  matlab 

3
非EE、ソフトウェアAPIコンテキストの「ローパスフィルター」
私は経験豊富なソフトウェアエンジニアであり、スマートフォンセンサーに取り組んでいます。DSPの基本的なEEクラスを受講し、自分の知識を応用しようとしています。畳み込み、伝達関数、z変換などを理解していると思います。FIRおよびIIRフィルターについて少し知っています。 今、ソフトウェアAPIとドキュメントを読むと、時間領域のセンサーデータにLPFを適用していることがわかります。私はあなたが差分方程式を使用してそれを行うことを知っています(例えば、y [i] = y [i-1] + 2 * x [i])ここで、時間信号を(たとえば)sinc波の係数と特定のカットオフ周波数で畳み込みます。したがって、「ローパスフィルター」の口語的な使用は、私にとって十分に正確ではありません。 たとえば、Google Android APIには次のドキュメントがあります:http : //developer.android.com/reference/android/hardware/SensorEvent.html#values public void onSensorChanged(SensorEvent event) { // alpha is calculated as t / (t + dT) // with t, the low-pass filter's time-constant // and dT, the event delivery rate final float alpha = 0.8; …

3
乗算または畳み込みとしてフィルタリングを実装する方が数値的に安定ですか?
5次バターワースフィルターを使用して20,000サンプルの信号をオフラインでフィルター処理するプログラムを作成しています。FFT実装にアクセスできます。フィルタリングを実装するための2つの選択肢があるようです。 時間領域でインパルス応答で信号を畳み込む、または 周波数領域で信号にインパルス応答を乗算し、結果を逆変換する これらの方法は、理論的なFTの場合と同じです。しかし、DFTを使用して実際にそれを行うと、状況は異なると思います。方法の1つは数値的に安定していますか?他に知っておくべき問題はありますか?計算の数は重要ではありません。
12 filters 

2
入力画像にガボールフィルターを適用する
特定のスケールでGaborフィルターを適用しようとしました(ラムダとシグマの私の値によると、それは(7x7)であり、4つの方向(0、、および)を入力グレースケールイメージに変換します。π4π4\frac{\pi}{4}π2π2\frac{\pi}{2}3個のπ43π4\frac{3\pi}{4} 私のコードでは、3つのステップが実行されます。 ガボールフィルターの作成 RGB画像を読み取り、それをグレースケールに変換し、最終的に2倍に変換します。 作成したガボールを入力画像に適用します(ここでは、私のコードが真であるかどうかはわかりません。そのため、あなたの意見が必要です) 1)--------------ガボールフィルターを作成します(サイズ= 7x7および4方向) %define the five parameters theta=....; %either 0 or pi/4 or pi/2 or 3pi/4 lambda=3.5; gamma=0.3; sigma=2.8; psi=0; sigma_x = sigma; sigma_y = sigma/gamma; nstds = 5; xmax = max(abs(nstds*sigma_x*cos(theta)),abs(nstds*sigma_y*sin(theta))); xmax = ceil(max(1,xmax)); ymax = max(abs(nstds*sigma_x*sin(theta)),abs(nstds*sigma_y*cos(theta))); ymax = ceil(max(1,ymax)); xmin = -xmax; ymin = …

3
フィルター全般に関するドキュメント
この質問はすでにStackOverflowに投稿しています。私はここでより良い答えに行くための提案を得ました。 質問をより簡潔にするために、デジタルフィルターの概要に興味があります。 しかし、最初に私は誰かがこのフィルターを説明するいくつかのリソース(Androidで使用されます)を私に指摘できれば満足します: http://gitorious.org/rowboat/frameworks-base/blobs/671a6ff4be11b3e2d8eb017e0c7a78e6133fb2b8/services/sensorservice/SecondOrderLowPassFilter.cpp 私が興味を持っているのは、フィルターのパラメーターを選択する方法です。何も考えずにコピーできますが、使う前に基本的な考え方や考え方を理解しておくべきだと思います。 おかげで、 ユリウス

3
画像分析-繊維認識
私は画像分析がまったく新しいです。この画像を2値化して、繊維のみを取得する方法を知っていますか? ステップバイステップの手順は素晴らしいですが、どんなヒントも同様に高く評価されます。私はMatlab、.NETを使用でき、他のツールを利用できます。 PS:このアドレスで同じ質問を見つけることができます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.