問題タブ [frequency-domain]

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 投票する
3 に答える
1412 参照

image-processing - フーリエ ドメイン - 理論/用語は正しいですか?

イメージ的には。

フーリエ変換は、空間を周波数 (フーリエ) ドメインに変換します。DC 値 = 正弦波 (正弦波) の平均、F(0,0)、および画像の平均輝度/グレーレベル。フーリエには複素数出力があります....[振幅と位相]または[実数と虚数]出力を取得できます。

私が得られないのは、FFT を実行したときに複素数出力が実際に表すものですか? フーリエ ドメインの画像は加重正弦波の合計であることは知っていますが、出力は実際には何を意味するのでしょうか。

空間周波数とは?定義を見ると、ピクセル値の変化率と記載されています。これはどういう意味ですか?

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

ruby - オーディオエンコードされたバイナリデータをどのように解釈しますか?

バイナリデータをサウンドにエンコードする小さなプログラムを作成しました。たとえば、次のバイナリ入力:

次のような「サウンド」が生成されます。

ここで、各文字は一定の時間単位を表します。#は、送信の開始と終了を決定するために使用される880ヘルツの正弦波を.表し、ゼロを表す無音を表し、ゼロを表すS440ヘルツの正弦波を表します。明らかに、真ん中の部分は実際にははるかに長いです。

私の質問の本質は次のとおりです。この操作をどのように逆にすることができますか?

サウンドファイルは、サウンドの簡単な再生と録音を介して受信者に送信されます。つまり、簡単な元のサウンドファイルをデコードしようとはしていません。

明らかに、私は周波数に関して記録されたデータを分析しなければなりません。しかし、どのように?フーリエ変換について少し読んだことがありますが、ここではかなり迷っています。

どこから始めればよいかわかりませんが、これは簡単なことではなく、おそらく信号処理に関するかなりの知識が必要であることを知っています。誰かが私を正しい方向に向けることができますか?

ところで:私はRubyでこれを行っています(私は知っています、それは遅いです-それは概念実証にすぎません)が、問題自体はプログラミング言語固有ではないので、どんな答えも大歓迎です。

0 投票する
0 に答える
387 参照

matlab - 空間および周波数ドメインでの画像鮮鋭化の効率、パフォーマンス、および有効性

私の質問には2つの部分があります。

最初の部分、画像のエッジをシャープにする周波数ドメイン マスクを生成する MATLAB 関数はありますか? または、を使用して空間ドメインでマスクを作成し、fspecial()それを使用して周波数ドメインにマッピングする必要がありますfft2(spatail_domain_mask)か?

2 番目の部分では、画像のエッジをシャープにする画像強調技術について考えてみましょう。この操作を空間ドメインと周波数ドメインで比較すると、どちらがより効果的ですか? どちらがより効率的ですか?そして、どちらが全体的なパフォーマンスが優れていますか?

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

matlab - Matlab でのベクトルのスペクトル エントロピーとスペクトル エネルギー

ウィンドウベースの時系列データの機能として、スペクトル エネルギーとスペクトル エントロピーを使用します。ただし、オンラインで使用されている式、特に特別なエントロピーについては少し混乱しています。

Matlab のエントロピーを使用しましたが、時系列データでは機能しません。それは私にすべてをゼロにするだけです。http://www.mathworks.nl/help/images/ref/entropy.html テスト ウィンドウ このバージョンのエントロピー結果 = 0

その後、このバージョンを使用しました。 http://www.mathworks.com/matlabcentral/fileexchange/28692-entropy テスト ウィンドウ このバージョンのエントロピー結果 = 4.3219

-sum(p.*log2(p)) データ ウィンドウに imhist を適用した後 ( p = imhist(aw1(:));) も試しました。これはオンラインヘルプから入手しました。
このバージョンのテスト ウィンドウ エントロピーの結果 = 0.0369

それらはすべて異なる値を報告しました。

スペクトル エネルギーについては、fft 係数の二乗和を使用しています。sum(abs(fft(データウィンドウ)).^2)

どの体が正しいバージョンであるかを提案してもらえますか?

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

matlab - 周波数領域と空間領域における相互相関 - テンプレート マッチング

したがって、大きな画像 A でテンプレート B を見つけようとすると、空間ドメインで次のように相互相関の最大値を見つけることでそれを行うことができます。

しかし、周波数ドメインで実行したい場合、間違った結果が得られます:

周波数領域で何が間違っているのかわかりません。fftshiftなしで試してみましたが、まだ間違っていますが、別の結果が得られます。どうすればこれを正しく行うことができますか?

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

matlab - 周波数領域での乗算による畳み込みが MATLAB で予期しない結果をもたらすのはなぜですか?

フーリエ変換を行い、それを二乗してから、逆フーリエ変換を行うことにより、矩形パルスをそれ自体で畳み込もうとしています。conv() 関数があることはわかっていますが、将来のより複雑な問題のために周波数ドメインで実行することをお勧めします。私の問題は、これを行うと、期待どおりに三角関数が生成されないことです。私が使用しているコードは以下のとおりです。

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

c# - 周波数領域の画像にガウスぼかしを適用する

ガウスぼかしを周波数領域の画像に適用することに問題があります。理由は不明ですが (おそらく何か間違ったことはしていません)、ぼやけた画像ではなく有線の画像を受け取ります。

私が段階的に行うことは次のとおりです。

  1. 画像を読み込みます。
  2. 画像を別々のチャネルに分割します。

    /li>
  3. すべてのチャンネルを複雑な画像に変換します (AForge.NET を使用)。

    /li>
  4. ガウスぼかしを適用します。

    1. 最初にカーネルを作成します(テスト目的で、カーネルのサイズは画像サイズと同じです。中央部分のみがガウス関数で計算され、残りのカーネルはre = 1 im = 0に等しくなります)。

      /li>
    2. すべてのチャネルとカーネルに FFT を適用します。

    3. すべてのチャネルの中央部分にカーネルを掛けます。

      /li>
  5. すべてのチャネルに IFFT を適用します。
  6. すべてのチャネルをビットマップに戻します (AForge.NET を使用)。

    /li>
  7. ビットマップを単一のビットマップにマージ

    /li>

その結果、画像の赤い色のぼやけたバージョンがシフトされました: link

@edit - コードにいくつかの変更を加えて質問を更新しました。