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

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

3
周波数領域でエッジ検出を実行できますか?
フーリエ領域でエッジ検出アルゴリズムを実装するために、画像のFFTの高周波成分が一般にエッジに対応するという事実を利用できますか?ハイパスフィルターに画像のFFTを掛けてみました。結果の画像はエッジに対応していましたが、畳み込み行列を使用して確立されたエッジ検出ではありませんでした。では、フーリエドメインでエッジ検出を行う方法はありますか、それともまったく不可能ですか?

2
リアルタイムの人間のピッチ検出
私は生のマイク入力を分析し、プレーヤーに彼の歌がどれだけ上手かを伝える歌のゲームを実装しようとしています。それはリアルタイムで行う必要があります。 私は同じ質問をする多くのスレッドに出くわしましたが、おそらくフィールドでの経験の不足と浅い数学の背景が原因で、私はまだそれで完全に終わっていません。DSPDimension Webサイトのピッチシフトの記事に基づくアルゴリズムを実装しました:http ://www.dspdimension.com/admin/pitch-shifting-using-the-ft/ 記事で説明しているように、真の周波数と振幅を抽出しますが、これで基本周波数を見つけることはできません。私は最大の大きさでビンを取得しようとしましたが、それはより高いピッチの信号に対して正しい結果を与えるだけであり、どのオーバーサンプリング係数を使用しても問題はありません。このアプローチは完全に間違っていますか、それとも私は正しい軌道に乗っていますが、何か不足していますか? 前もって感謝します、 編集:私はピッチクラスにのみ興味があることを言及するのを忘れていたので、ファンダメンタルズが欠けていても大丈夫ですが、サンプルには強い倍音があります。 EDIT2:みんなのおかげで、魅力的なアルゴリズムのバージョンが完成しました。低ピッチ推定の問題は、入力テストによるものでした。私が音符を歌ったとき、それは正しく一致しました。また、最高のピークだけでなく、すべての高調波を検討しています。

3
ガボールモーレットウェーブレット変換と定数Q変換の違いは何ですか?
一見、定数Qフーリエ変換と複素ガボールモーレットウェーブレット変換は同じように見えます。どちらも、定数Qフィルター、ウィンドウ処理された正弦波などに基づいた時間周波数表現です。しかし、私が見落としている違いはありますか? 音楽処理用の定数Q変換ツールボックスは次のように述べています。 CQTは、周波数ビンが幾何学的に間隔を置いて配置され、すべてのビンのQファクター(帯域幅に対する中心周波数の比率)が等しい時間周波数表現を指します。 時間スケール分析は言う: つまりを中心帯域通過フィルタの一連の信号を通過さと同じであるウェーブレットモレットを用いて信号のCWT計算、であるf=5/2πaf=5/2πaf = \frac{5/2\pi}{a}定数とQ5/2π5/2π5/2\pi。

2
画像の再構成:位相とマグニチュード
図1.(c)は、MAGNITUDEスペクトルのみから再構成されたテスト画像を示しています。低頻度ピクセルの強度値は、高頻度ピクセルよりも比較的多いと言えます。 図1.(d)は、PHASEスペクトルのみから再構成されたテスト画像を示しています。高頻度(エッジ、ライン)ピクセルの強度値は、低頻度ピクセルよりも比較的多いと言えます。 強度の変化(または交換)のこの魔法の矛盾が、MAGNITUDEスペクトルのみから再構築されたテストイメージとPHASEスペクトルのみから再構築されたテストイメージの間に存在するのはなぜですか? clc; clear all; close all; i1=imread('C:\Users\Admin\Desktop\rough\Capture1.png'); i1=rgb2gray(i1); f1=fftn(i1); mag1=abs(f1); s=log(1+fftshift(f1)); phase1=angle(f1); r1=ifftshift(ifftn(mag1)); r2=ifftn(exp(1i*phase1)); figure,imshow(i1); figure,imshow(s,[]); figure,imshow(uint8(r1)); figure,imshow(r2,[]); r2=histeq(r2); r3=histeq(uint8(r2)); figure,imshow(r2); figure,imshow(r3);

9
単位ステップシーケンス
この質問は私のもう1つの私の質問に関連しています。ここで、単位ステップシーケンスの離散時間フーリエ変換(DTFT)の導出を求めます。派生物の検索中に、驚くほど簡単なものを見つけました。BA Shenoiのこの本の138ページで初めて見ました。私はまた、mathematics.SEでこの答えに出くわしました。u[n]u[n]u[n] 引数は短く単純なので、便宜上ここで繰り返します。 単位ステップシーケンスは、u [ n ] = f [ n ] + 1として記述できます。 、 f[n]={ 1u[n]=f[n]+12(1)(1)u[n]=f[n]+12u[n]=f[n]+\frac12\tag{1} 明らかに、 F[N]-、F[N-1]=δ[N] の両面の両方にDTFTを適用する(3)が得られる Fを(ω)(1-E-Jω)=1 ここで、F(ω)は、f[n]のDTFTです。(4)私たちが得ます f[n]={12,n≥0−12,n&lt;0(2)(2)f[n]={12,n≥0−12,n&lt;0f[n]=\begin{cases}\frac12,\quad n\ge 0\\-\frac12,\quad n<0\end{cases}\tag{2}f[n]−f[n−1]=δ[n](3)(3)f[n]−f[n−1]=δ[n]f[n]-f[n-1]=\delta[n]\tag{3}(3)(3)(3)F(ω)(1−e−jω)=1(4)(4)F(ω)(1−e−jω)=1F(\omega)\left(1-e^{-j\omega}\right)=1\tag{4}F(ω)F(ω)F(\omega)f[n]f[n]f[n](4)(4)(4) から(5)及び(1)我々はDTFTのために取得U[N]U(ω)=F(ω)+πδ(ω)=1F(ω)=11−e−jω(5)(5)F(ω)=11−e−jωF(\omega)=\frac{1}{1-e^{-j\omega}}\tag{5}(5)(5)(5)(1)(1)(1)u[n]u[n]u[n] どこで使用したDTFT{1}=2πδ(ω)、-π≤ω&lt;π。U(ω)=F(ω)+πδ(ω)=11−e−jω+πδ(ω),−π≤ω&lt;π(6)(6)U(ω)=F(ω)+πδ(ω)=11−e−jω+πδ(ω),−π≤ω&lt;πU(\omega)=F(\omega)+\pi\delta(\omega)=\frac{1}{1-e^{-j\omega}}+\pi\delta(\omega),\quad -\pi\le\omega <\pi\tag{6}DTFT{1}=2πδ(ω)DTFT{1}=2πδ(ω)\text{DTFT}\{1\}=2\pi\delta(\omega)−π≤ω&lt;π−π≤ω&lt;π-\pi\le\omega <\pi Eq。u [ n ]の DTFTは間違いなく正しいです。ただし、派生には欠陥があります。(6)(6)(6)u[n]u[n]u[n] 問題は、上記の派生の欠陥を見つけて説明することです。 回答の前にスポイラータグを付けてください&gt;!。

3
周波数を維持しながら音楽の再生を遅くする
音楽オーディオを遅い速度で再生すると、ピッチ(周波数)が下がります。周波数を同じに保ちながら曲の再生を遅くするツールと理論はありますか?ウィンドウ化されたフーリエ変換またはウェーブレット変換を実行できると思います。ウィンドウサイズを事前に選択するか、ウェーブレットベースを動的に選択する必要があるようです。それを行うための具体的で詳細な理論と応用はありますか?

3
クロマサブサンプリング:データレートを適切に計算する方法
たとえばY'UV画像でクロマサブサンプリングを利用するときにデータレートを計算する方法を理解するのに苦労しています。 以下の計算例があります。 画像解像度:352*288 周波数:25 fps 以下のために(:4:4 4)以下のように計算例を行きます: (352px * 288px) * 3 color channels * 25 fps * 8 bit = 60 825 600 bit/s ここまでは順調ですね。 しかし、今来る(4:2:0): (352px*288px) * 1.5 color channels * 25 * 8 = 30 412 800 bit/s さて、この例を例(4:1:1)に変換しようとすると、1.5カラーチャネルの比率がどのように計算されるかを正しく理解しているかどうかわかりません。 計算の最初の推測は(4:2:0)の場合でした: 2/4*3=1.5 color channels 同様に(4:1:1)の場合、カラーチャネルの比率を次のように計算します。 1/4*3=0.75 color channels …

2
ピッチ検出における高調波製品スペクトルの制限
HPSを使用してピッチ検出アルゴリズムを作成しましたが、問題に直面しています。私は信号処理の初心者ですが、このサイトは以前から役に立ちました。 より高いピッチ(eg. &gt;C6:1046.50hz)については、HPSからガベージデータを取得し始めています。ピッチが高いほど、多くのゴミが発生します(ゴミとは、オクターブエラーや高調波ではなく、約1Hz〜20Hzの周波数を意味します) 私が経験的に観察したこと: ピッチが高くなると結果は最悪になります。ファンダメンタルズがA6程度以上の場合、ガベージデータのみを取得します。 FFTは、非常に高いピッチでも正常に機能します(細かく言うと、ピークは基本波またはその高調波のいずれかを示しますが、ガベージは示しません)。 HPSで考慮する高調波の数を減らすと、ゴミは減りますが、基本波と高調波を区別するのが難しくなります。 これが私のアルゴリズムです: -&gt;raw buffer -&gt; hann window, 16384 samples, 50% overlap -&gt; zero padding -&gt; FFT -&gt; HPS どんな助けでもありがたいです! 更新1:では、追加したいことがいくつかあります。 私が記録しているサンプルレートは44100 Hzです この振る舞いはギターではほとんど見えないが、デジタルピアノでは非常によく見えることを確認しました(同じ演奏ノートに対して) これが私のhpsアルゴリズムです、多分経験のある人が問題を見つけることができます。 int hps(float* spectrum, int spectrumSize, int harmonics) { int i, j, maxSearchIndex, maxBin; maxSearchIndex = spectrumSize/harmonics; maxBin = 1; for …

2
相互相関プロットから何が得られますか?
以下に示すように、ノイズの影響を受ける2つのオーディオ信号x(t)とy(t)があると仮定します。そして、これら2つの信号を相互相関させ、相互相関プロットを以下に示します。 この相関プロットには、約-11ミリ秒にピーク値があります。このプロットでこのピークをどのように解釈するかを理解しようとしていますか?どういう意味ですか?相関関数のフーリエ変換から何が得られるかについても教えてください。 前もって感謝します!

2
単位ステップシーケンス
教科書から、 DTFTはu[n]u[n]u[n]、 U(ω)=πδ(ω)+11−e−jω,−π≤ω&lt;π(1)(1)U(ω)=πδ(ω)+11−e−jω,−π≤ω&lt;πU(\omega)=\pi\delta(\omega)+\frac{1}{1-e^{-j\omega}},\qquad -\pi\le\omega <\pi\tag{1} ただし、多少の派生を与えるふりをするDSPの教科書を見たことはありません(1)(1)(1)。 Proakisは[1]の右側の右半分の導出(1)(1)(1)設定することにより、z=ejωz=ejωz=e^{j\omega}でZZ\mathcal{Z}の-transform u[n]u[n]u[n]、及びそれが以外有効であることを言うω=2πkω=2πk\omega=2\pi k(もちろん正しいです)。次に、ZZ\mathcal{Z}変換の極で、面積がデルタインパルスを追加する必要ππ\piがあると述べていますが、それは私にとって、他の何よりもレシピのように見えます。 オッペンハイムとシェーファー[2]この文脈での言及 完全に簡単に示すことはできませんが、このシーケンスは次のフーリエ変換で表すことができます。 相当する式が続き(1)(1)(1)ます。残念ながら、彼らは「完全に単純ではない」証明を私たちに示すのに苦労しませんでした。 私が実際に知らなかったが、証明を探しているときに見つけた本(1)(1)(1)は、BA Shenoiによるデジタル信号処理とフィルター設計の紹介です。上のページ138そこの「派生」だ(1)(1)(1)が、残念ながらそれは間違っています。「DSPパズル」の質問をして、その証明の何が悪いのかを人々に見せてもらいました。] だから私の質問は: 数学的な傾向のあるエンジニアがアクセスできる一方で、証明/導出(1)(1)(1)は健全であるか、さらには厳密である可能性がありますか?本からコピーしただけでもかまいません。とにかくこのサイトに載せておくといいと思います。 math.SEであっても、関連するものはほとんどないことに注意してください。この質問には回答がありません。1つは2つの回答を持ち、1つは間違っており(Shenoiの主張と同じ)、もう1つは「蓄積プロパティ」を使用します。 、私は満足していますが、そのプロパティを証明する必要があります。これにより、最初に戻ります(両方の証明は基本的に同じことを証明するため)。 最後のメモとして、私は証明のようなものを思いつきました(まあ、私はエンジニアです)、また数日後に回答として投稿しますが、他の公開または非公開の証明を収集させていただきますシンプルでエレガントであり、最も重要なのは、DSPエンジニアがアクセスできることです。 PS:妥当性を疑うことはありません(1)(1)(1)。1つまたはいくつかの比較的単純な証明が欲しいだけです。 [1] Proakis、JGおよびDG Manolakis、デジタル信号処理:原則、アルゴリズム、およびアプリケーション、第3版、セクション4.2.8 [2] Oppenheim、AVおよびRW Schafer、離散時間信号処理、第2版、p。54。 MarcusMüllerのコメントに触発されて、式(1 )で与えられたを示したいと思います。(1 )要件を満たしているU(ω)U(ω)U(\omega)(1)(1)(1) u[n]=u2[n]→U(ω)=12π(U⋆U)(ω)u[n]=u2[n]→U(ω)=12π(U⋆U)(ω)u[n]=u^2[n]\rightarrow U(\omega)=\frac{1}{2\pi}(U\star U)(\omega) 場合のDTFTあるU [ N ]、次いでU(ω)U(ω)U(\omega)u[n]u[n]u[n] V(ω)=11−e−jωV(ω)=11−e−jωV(\omega)=\frac{1}{1-e^{-j\omega}} のDTFTでなければなりません v[n]=12sign[n]v[n]=12sign[n]v[n]=\frac12\text{sign}[n] (ここで、記号[ 0 ] = 1を定義しますsign[0]=1sign[0]=1\text{sign}[0]=1)、なぜなら V(ω)=U(ω)−πδ(ω)⟺u[n]−12=12sign[n]V(ω)=U(ω)−πδ(ω)⟺u[n]−12=12sign[n]V(\omega)=U(\omega)-\pi\delta(\omega)\Longleftrightarrow u[n]-\frac12=\frac12\text{sign}[n] だから私たちは 12π(V⋆V)(ω)⟺(12sign[n])2=1412π(V⋆V)(ω)⟺(12sign[n])2=14\frac{1}{2\pi}(V\star V)(\omega)\Longleftrightarrow \left(\frac12\text{sign}[n]\right)^2=\frac14 …

3
ラプラス変換の直感的な解釈
それで、フーリエ変換を理解するようになりました。直感的に今、私はそれが何をするのかを明確に理解しており、すぐに数学のいくつかのクラスに従います(したがって、実際の主題です)。しかし、それから私はラプラス変換について読み続けて、そこでそれをちょっと失います。信号の瞬間は何ですか?フーリエ変換がラプラス変換の特別なケースであるのはなぜですか?ラプラス変換にどのように対処できますか? 私がこの質問をする前に、これらのソースを調べました。 システムの「インパルス応答」と「周波数応答」とはどういう意味ですか? 異なる周波数領域を区別するにはどうすればよいですか? 振幅と周波数応答 フーリエ変換がなぜそれほど重要なのですか? http://en.wikipedia.org/wiki/Laplace_transform

1
複雑なエンベロープとは正確には何ですか?
私が読んだいくつかの本でこれが何度か言及されているのを見たので、確認したい。複素包絡線は、信号の実数成分と直交成分の合計であり、絶対値は(実数)包絡線ですか?このウィキページを読みましたが、完全に理解しているとは思いません。複雑なエンベロープは、単に通過帯域信号の実数部と虚数部を組み合わせたものですか?ありがとうございました。

2
FFTのアーティファクト
最近、FFTは完全ではないことに気付きました。信号を取得してからFFTを取得してから逆FFTを実行すると、結果の出力は入力とまったく同じにはなりません。ここに私が何を意味するかを示す画像があります: 画像はかなり自明だと思います。IFFT信号は「FFT​​スペクトル」の逆変換であり、「差分」プロットはIFFT信号と元の信号の差です(IFFT-オリジナルIFFT-オリジナル\text{IFFT - Original})。 明らかに小さいのですが、いくつかのアーティファクトがあります。そもそもなぜ発生するのか知りたい。これはフーリエ変換の有限ウィンドウのためですか?または、FFTアルゴリズムの何かのためですか? 注:このプロットには32ポイントがありますが、100、1000、1024、256、および64ポイントで確認しました。同様の大きさの差(またはいずれか)には常にこの残差があります。)。10− 1610−1610^{-16}10− 1510−1510^{-15}

3
DFTのためのWikipedia方程式の実装
私は簡単なフーリエ変換の実装を書いていて、参考のためにウィキペディアのDFT方程式を見て、私が何か違うことをしていることに気づき、それについて考えた後、ウィキペディアのバージョンは間違っているに違いないと感じました。 (その方程式で)フーリエ変換すると誤ったスペクトルが返されることを通知します。n / Nん/Nn/N と 0 &lt; n &lt; N− 10&lt;ん&lt;N−10<n<N-1)、(複素平面を包み込みながら)偶数回周期的な信号は、DFT中に表示される通常のピーク(単位円を回っている間)が互いに打ち消し合うため、スペクトルがありません(偶数の場合)それらの数が表示されます)。 これを確認するために、次の画像を生成するコードをいくつか作成しました。 「方程式を使用する時間」は方程式を使用します バツf=Σn = 0N− 1バツん(cos(2 πftん)− 私は罪(2 πftん))バツf=Σん=0N−1バツん(cos⁡(2πftん)−私罪⁡(2πftん)) X_f = \sum_{n=0}^{N-1} x_n (\cos(2\pi f t_n) - i \sin(2\pi f t_n)) と ttt 時間のベクトル(つまり、時間 tんtんt_n これで バツんバツんx_nたとえば、サンプリングされました)。ft以下の関数で見つけることができます。 上でリンクされたウィキペディアの方程式は、参照用にここにコピーされます。 バツf=Σn = 0N− 1バツん(cos(2 πfんN)− 私は罪(2 πfんN))バツf=Σん=0N−1バツん(cos⁡(2πfんN)−私罪⁡(2πfんN)) X_f = \sum_{n=0}^{N-1} x_n …

1
FFT後のデータの単位は何ですか?
磁力計は、マイクロボルト(mV)単位の出力で、磁場の導関数、つまりdB / dtを測定します。サンプリングレートは128 Hzなので、2分間データを収集すると、ポイント(離散ケース)になります。これらの時系列でFFTを実行すると、変換後の振幅密度の単位はどうなりますか?2 × 60 × 128 = 153602×60×128=153602 \times 60 \times 128=15360

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