2-D Fast Fourier Transform FFT on a uniform data set with non-rectangular boundaries

5 ビュー (過去 30 日間)
EDic
EDic 2018 年 11 月 23 日
コメント済み: EDic 2018 年 12 月 4 日
Hi,
I would like to perform the Fast Fourier Transform (fft2) on a 2D non-rectangular space of equally spaced points. Is there a built-in function in MATLAB that can handle such a computation?
Any help is much appreciated.

採用された回答

Image Analyst
Image Analyst 2018 年 11 月 23 日
Just make it rectangular with ndgrid or griddedInterpolant()
maxX = max(x);
minX = min(x);
maxY = max(y);
minY = min(y);
% Find spacing
xSpacing = mode(x);
etc.
% Use ndgrid of griddedInterpolant to make gridded array.
% Then loop over values assigning the x and y to the proper location.
  1 件のコメント
EDic
EDic 2018 年 12 月 4 日
Image Analyst thank you for your comment. As far as I am concerned, this method will generate unwanted points outside the non-rectangular region and the FFT will then be performed on points that do not exist in reality. So, a solution might be to store my data in a logical order so that they form a rectangular 2D-array, but I don't know if that's possible.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeData Type Conversion についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by