特定の画像のすべての周波数の1Dパワーヒストグラムを取得しようとしています。これまで私が行ってきたことを説明します。MATLAB:FFT2スペクトルからパワーヒストグラムを取得
- FFT2を計算し、フーリエドメインで
- それをシフトし、ために(空間領域および表示にいくつかのフィルタに
再変換を適用
- (neccessary場合、グレースケールに変換)画像を読みます
FFT2とfftshiftこの新しく作成された画像(オプション、以前のifft2入力も使用できました)
- パワースペクトル、すなわちすべてのフーリエドメイン値を計算する。
トリッキーな部分が始まる。パワーヒストグラムの場合、ある周波数のすべての値をすべての周波数に対応させる必要があります。 連続した信号では、すべての周波数に対して0〜2piを積分するだけです。
しかし、離散値との統合はできません。少なくとも、それは間違っていると思います。そして、0〜2piの積分のためには、0番目の周波数まである距離ですべての値を合計しなければなりません。 私はそれができません。なぜなら、中心からの距離を決定しなければならないからです。なぜなら、値が正方行列に位置するために失敗するからです。 もし私が有限幅のリングから値を合計するなら、私はいくつかの値を何度も選択しないでください。
多分私は間違った方向に考えているかもしれません。なぜなら、私はMATLABが比較的新しいからです。しかし、どのようにパワーヒストグラムを計算できますか?
Phreak
ありがとうございました。私はそのプロジェクトを私の目的に使ってみましたが、うまくいかなかったのです。私はそれを詳しく見ていきます。私はすべての角度にわたってヒストグラムに関して同様の問題を抱えています。つまり、0番目の周波数に由来する「くさび」の上で合計を試します。 – PhreakShow
座標が0の中心にあるメッシュグリッドを作成します。次に、X座標とY座標をメッシュグリッドから極座標に変換します。 scatteredInterpolantを使用してフィールドを取得し、特定のrとthetaステップで均等にサンプリングしてヒストグラムを取得します。 –