タグ付けされた質問 「fourier-transform」

フーリエ変換は、関数を周波数スペクトルと呼ばれるその構成周波数に分解する数学演算です。

8
フーリエ変換がなぜそれほど重要なのですか?
信号処理を議論するとき、誰もがフーリエ変換について議論します。信号処理がなぜそれほど重要であり、信号について何を教えてくれますか? デジタル信号処理にのみ適用されますか、それともアナログ信号にも適用されますか?

3
スパースフーリエ変換とは何ですか?
MITは最近、特定の種類の信号で機能する高速フーリエ変換として宣伝されている新しいアルゴリズムについて少し騒ぎ立てています。たとえば、「世界で最も重要な新興技術の1つと名付けられた高速フーリエ変換」です。MIT Technology Review誌によると: スパースフーリエ変換(SFT)と呼ばれる新しいアルゴリズムを使用すると、データストリームをFFTで可能だったよりも10〜100倍高速に処理できます。私たちが最も関心を持っている情報は非常に多くの構造を持っているため、スピードアップが起こります。音楽はランダムなノイズではありません。通常、これらの意味のある信号には、信号が取り得る可能な値の一部しかありません。これの専門用語は、情報が「スパース」であることです。SFTアルゴリズムは、考えられるすべてのデータストリームを処理することを目的としていないため、他の方法では利用できない特定のショートカットを使用できます。理論的には、スパース信号のみを処理できるアルゴリズムは、FFTよりもはるかに制限されています。しかし、「スパース性はどこにでもあります」と、電気工学およびコンピューターサイエンスの教授である共同発明者カタビは指摘します。「それは自然にある;それ」sビデオ信号; 音声信号に含まれています。」 ここで誰かがアルゴリズムが実際に何であるか、そしてそれがどこに適用可能かについてのより技術的な説明を提供できますか? 編集:いくつかのリンク: 論文:「ほぼ最適なスパースフーリエ変換」(arXiv)、Haitham Hassanieh、Piotr Indyk、Dina Katabi、Eric Price。 プロジェクトWebサイト -サンプル実装が含まれています。

6
さまざまなFT(CFT、DFT、DTFT、フーリエ級数)の最も明快で直感的な説明は何ですか?
かなり長い間これらを研究した後でも、[しばらく連絡を取り合っていない場合]それらがどのように関係しているか、またそれぞれが何を意味するのかを忘れがちです。直感的で数学的に美しい説明が出てくることを願っています。永遠に私の記憶に埋め込まれ、このスレッドは私(または他の誰か)が必要とするときはいつでもすぐにリフレッシュできるようになります。

1
サンプルの一部だけ信号を循環シフトする方法は?
シフト定理は述べています: 乗算することによって線形位相E 2 π Iバツnバツnx_n 、いくつかの整数のためのMに対応する循環シフト出力のXのK:Xのkはにより置換されてXのK-M、添字モジュロ解釈されるN(すなわち、周期的に)。e2個のπ私Nn me2π私Nnme^{\frac{2\pi i}{N}n m}バツkバツkX_kバツkバツkX_kバツk − mバツk−mX_{k-m} OK、それはうまくいきます: plot a N = 9 k = [0, 1, 2, 3, 4, 5, 6, 7, 8] plot ifft(fft(a)*exp(-1j*2*pi*3*k/N)) 予想通り、3サンプル分シフトしました。 サンプルの端数でシフトするためにこれを行うこともできると思っていましたが、試してみると、私の信号は想像上のものになり、元の信号とはまったく異なります。 plot real(ifft(fft(a)*exp(-1j*2*pi*3.5*k/N))) plot imag(ifft(fft(a)*exp(-1j*2*pi*3.5*k/N))), 'b--' 私はこれをまったく期待していませんでした。これは、3.5サンプルだけシフトされた実際のインパルスとの畳み込みに相当しませんか?それで、衝動はまだ本当でなければならず、結果はまだ本当でなければなりませんか?そして、それは多かれ少なかれ元のものと同じ形状を持っているはずですが、sincは補間されていますか?

5
離散時間フーリエ変換と離散フーリエ変換の違い
私はDTFTとDFTに関する多くの記事を読みましたが、DTFTが無限大になり、DFTがN-1までしか見えないことを除いて、両者の違いを見分けることはできません。誰が違いを説明し、何をいつ使用するのですか?ウィキは言う DFTは、離散時間フーリエ変換(DTFT)とは異なり、入力および出力シーケンスが両方とも有限です。したがって、有限領域(または周期的)離散時間関数のフーリエ解析と言われています。 唯一の違いですか? 編集: この記事では、その違いをうまく説明しています。

3
時間領域の遅延は、周波数領域にどのような影響を与えますか?
時間制限のある信号、たとえば秒だけ続く正弦波がある場合、その信号のFFTを取得すると、周波数応答が表示されます。例では、これは正弦波のメイン周波数でのスパイクになります。TTT さて、同じ時間信号を取得し、それをある時定数で遅延させてからFFTを取得すると、どのように変化しますか?FFTはその時間遅延を表すことができますか? 私は、時間遅延が表していることを認識、周波数領域の変化を、私は何実際にその決定に苦労してるの手段を。exp(−jωt)exp⁡(−jωt)\exp(-j\omega t) 実際には、周波数ドメインはさまざまな信号間の時間遅延を決定する適切な場所ですか?

3
ピッチ検出を改善するためのヒント
ユーザーがギターをチューニングできるシンプルなWebアプリを開発しています。私は信号処理の本当の初心者なので、私の質問が不適切であるかどうかを厳しく判断しないでください。 そのため、FFTアルゴリズムを使用して基本周波数を取得することができましたが、この時点でアプリケーションは何らかの形で機能しています。ただし、改善の余地があり、現在、FFTアルゴリズムに未処理のpcmを送信していますが、検出を改善する前/後のアルゴリズム/フィルターがあるかもしれないと考えていました。何か提案できますか? 私の主な問題は、特定の周波数を検出すると、その周波数が1〜2秒間表示された後、他のランダムな周波数にジャンプして、音が連続していても再び戻ってくるということです。 また、そのようなことを経験したことがある場合、他のタイプの最適化にも興味があります。

3
窓はもともとどのように考案されましたか?
一般的な種類のウィンドウ(ハミング、ハニング、カイザー、テューキーなど)を認識しています。しかし、多くの本がそれらを説明していますが、それらがどれほど正確に由来したかをほとんど教えてくれません。 ハミングウィンドウの神聖なところは何ですか?ハニングはどうですか?それらはすべてメインローブの幅とサイドローブの減衰の比率で再生されることを理解していますが、それらはどのように正確に導出されましたか? 私の質問の動機は、メインローブの幅とサイドローブのエネルギーを再生する独自のウィンドウを設計できるかどうかを把握しようとしているためです。

3
高次フィルターのカスケードバイカッドセクションはどのように機能しますか?
私は8次のIIRフィルターを実装しようとしていますが、これまで読んだすべてのアプリケーションノートと教科書には、2次のセクションとして2を超える次数のフィルターを実装するのが最善であると書かれています。tf2sosMATLABで2次セクションの係数を取得するために使用しましたが、予想どおり、4 2次セクションの6x4係数が得られました。SOSとして実装する前は、8次フィルターには7つの以前のサンプル値を保存する必要がありました(および出力値も)。ここで、2次セクションとして実装するとき、フローが入力から出力までどのように機能するか、2つの前のサンプル値のみを保存する必要がありますか?または、最初のフィルターの出力はx_in2番目のフィルターのように送られますか?
20 filters  filter-design  infinite-impulse-response  biquad  audio  image-processing  distance-metrics  algorithms  interpolation  audio  hardware  performance  sampling  computer-vision  dsp-core  music  frequency-spectrum  matlab  power-spectral-density  filter-design  ica  source-separation  fourier-transform  fourier-transform  sampling  bandpass  audio  algorithms  edge-detection  filters  computer-vision  stereo-vision  filters  finite-impulse-response  infinite-impulse-response  image-processing  blur  impulse-response  state-space  linear-systems  dft  floating-point  software-implementation  oscillator  matched-filter  digital-communications  digital-communications  deconvolution  continuous-signals  discrete-signals  transfer-function  image-processing  computer-vision  3d 

2
言葉で説明されている逆短時間フーリエ変換アルゴリズム
順方向および逆方向の短時間フーリエ変換(STFT)が離散時間領域信号に適用されたときに何が起こっているかを概念的に理解しようとしています。Allen and Rabiner(1977)による古典的な論文とWikipediaの記事(link)を見つけました。ここにも良い記事があると思います。 Gabor変換の計算に興味がありますが、これはGaussianウィンドウを使用したSTFTに他なりません。 これは私がフォワード STFT について理解していることです: サブシーケンスは、時間領域要素から構成される、信号から選択されます。 サブシーケンスは、時間領域におけるポイントごとの乗算を用いて窓関数が乗算されます。 乗算されたサブシーケンスは、FFTを使用して周波数領域に取り込まれます。 連続する重複するサブシーケンスを選択し、上記の手順を繰り返すことにより、m行n列のマトリックスを取得します。各列は、特定の時間に計算されたサブシーケンスです。これを使用してスペクトログラムを計算できます。 ただし、逆 STFTについては、重複する分析セクションの合計について説明しています。ここで実際に何が起こっているのかを視覚化することは非常に難しいと感じています。逆 STFT を計算できるようにするために何をする必要がありますか(上記のステップバイステップ順)? フォワードSTFT 私はフォワードSTFTのために何が起こっていると思うかを示す図面を作成しました。私が理解していないのは、各サブシーケンスをどのように組み立てて元のタイムシーケンスを取り戻すかということです。誰かがこの図面を修正するか、サブシーケンスがどのように追加されるかを示す方程式を与えることができますか? 逆変換 これが逆変換について私が理解していることです。連続する各ウィンドウは、IFFTを使用して時間領域に戻されます。次に、各ウィンドウがステップサイズ分シフトされ、前のシフトの結果に追加されます。次の図は、このプロセスを示しています。合計出力は時間領域信号です。 コード例 次のMatlabコードは、合成時間領域信号を生成し、STFTプロセスをテストして、数値丸め誤差内で逆変換が順変換の双対であることを示します。ウィンドウの中心を時間領域信号の最初と最後の要素に配置できるように、信号の開始と終了にはゼロが埋め込まれます。 Allen and Rabiner(1977)によると、周波数応答を変更するために周波数ドメインで乗算が発生する場合、分析ウィンドウの長さはポイント以上でなければなりませんはフィルター応答です。長さはゼロパディングによって拡張されます。テストコードは、逆変換が順変換の双対であることを示しています。循環畳み込みを防ぐために、長さを延長する必要があります。N 0N+ N0− 1N+N0−1N + N_0 - 1N0N0N_0 % The code computes the STFT (Gabor transform) with step size = 1 % This is most useful when …

3
フーリエ法による断層再構成のこのコードの何が問題になっていますか?
私は最近、断層撮影再構成アルゴリズムで遊んでいます。私はすでに、FBP、ART、SIRT / SARTのような反復スキーム、および直線線形代数(遅い!)を使用した素晴らしい実装を持っています。 この質問はそれらのテクニックのどれについてもありません ; 「誰がそのようにするのか、代わりにいくつかのFBPコードがある」という形式の答えは、私が探しているものではありません。 このプログラムで次にやりたいことは、「セットを完了し」、いわゆる「フーリエ再構成法」を実装することでした。これについての私の理解は、1D FFTをサイノグラムの「露出」に適用し、それらを2Dフーリエ空間の放射状の「車輪のスポーク」として配置することです(これは、中央スライス定理から直接従うのが便利なことです) 、それらのポイントからその2D空間の通常のグリッドに内挿し、逆フーリエ変換して元のスキャンターゲットを復元できるようにする必要があります。 簡単に聞こえますが、元のターゲットのように見える再構築を得ることができなかったのです。 以下のPython(numpy / SciPy / Matplotlib)コードは、私がやろうとしていることを思いつくことができる最も簡潔な表現です。実行すると、次が表示されます。 図1:ターゲット 図2:ターゲットのサイノグラム 図3:FFT処理されたサイノグラムの行 図4:一番上の行は、フーリエ領域のサイノグラムの行から補間された2D FFT空間です。一番下の行は(比較のため)ターゲットの直接2D FFTです。これが、私が疑わしくなり始めた時点です。サイノグラムFFTから補間されたプロットは、ターゲットを直接2D-FFTすることによって作成されたプロットに似ていますが、まだ異なっています。 図5:図4の逆フーリエ変換。これが実際よりもターゲットとしてもう少し認識できることを望んでいました。 私が間違っていることは何ですか?フーリエ法の再構築に関する私の理解が根本的に不備なのか、コードにバグがあるのか​​はわかりません。 import math import matplotlib import matplotlib.pyplot as plt import numpy as np import scipy.interpolate import scipy.fftpack import scipy.ndimage.interpolation S=256 # Size of target, and resolution of Fourier …

1
ラプラス変換は冗長ですか?
ラプラス変換フーリエ変換ので、フーリエ変換の一般化であるラプラスのための変換である(すなわち、Sは純虚数=ゼロ実部S)。S = jはωs=jωs = j\omegassssss 通知: フーリエ変換:バツ(ω )= ∫x (t )e- J ω トンdtX(ω)=∫x(t)e−jωtdtX(\omega) = \int x(t) e^{-j\omega t} dt ラプラス変換:バツ(s )= ∫x (t )e− s tdtX(s)=∫x(t)e−stdtX(s) = \int x(t) e^{-s t} dt また、信号は、そのフーリエ変換とラプラス変換から正確に再構築できます。 再構成に必要なのはラプラス変換の一部(の部分)のみであるため、残りのラプラス変換(ℜ (s )≠ 0)は再構成には役に立たないようです...R(s)=0ℜ(s)=0\Re(s) = 0R(s)≠0ℜ(s)≠0\Re(s) \neq 0 本当ですか? また、ラプラス変換の別の部分で信号を再構成できますか(例:またはℑ (s )= 9)?R(s)=5ℜ(s)=5\Re(s)=5I(s)=9ℑ(s)=9\Im(s)=9 そして、信号のラプラス変換を計算し、ラプラス変換の1点のみを変更し、逆変換を計算するとどうなりますか。元の信号に戻りますか?

3
非対称ウィンドウを使用したFFT?
一般的な非矩形ウィンドウ関数はすべて対称に見える。FFTの前に非対称ウィンドウ関数を使用したい場合はありますか?(FFTアパーチャの片側のデータがもう一方のデータよりも少し重要である、またはノイズが少ないなど) もしそうなら、どんな種類の非対称窓関数が研究されており、それらは(より損失の多い)オフセット対称窓と比較して周波数応答にどのように影響しますか?

4
ディラックの櫛のフーリエ変換がディラックの櫛であるのはなぜですか?
これは、私には意味がありませんハイゼンベルグ不等式その状態ΔtΔωΔtΔω\Delta t\Delta \omega〜1。 したがって、時間内に完全にローカライズされたものがある場合は、周波数で完全に分散されたものが得られます。したがって、基本的な関係はF{δ(t)}=1F{δ(t)}=1\mathfrak{F}\{\delta(t)\} = 1ここで、FF\mathfrak{F}はフーリエ変換演算子です。 しかし、フーリエ変換を適用したディラックの櫛については、別のディラックの櫛を受け取ります。直感的には、別の行も取得する必要があります。 なぜこの直感は失敗するのですか?


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