How to take an FFT/IFFT from an image according to logical matrix?

7 ビュー (過去 30 日間)
Iron1759
Iron1759 2021 年 1 月 31 日
編集済み: Iron1759 2021 年 2 月 2 日
Hello,
I'm having some difficulties of both taking a fourier transform from where ROI shape was drawn (i.e. logical matrix where values equal one), and then the inverse function according to same protocol, i.e. after applying mask (using CreateMask) and getting a logical matrix.
Note that I'm going to use several circle masks, which makes it impossible to simply crop the image and then apply the transformation.
Any ideas?
Thanks.
  1 件のコメント
Iron1759
Iron1759 2021 年 2 月 2 日
編集済み: Iron1759 2021 年 2 月 2 日
A thought that I had is to re-build a subset of the original image according to the mask/s applied before taking FFT, it should not be a problem.
However, what shall I do when I want to apply the inverse function with a few masks on 2D FFT?
Both the FFT & IFFT are such important procedures that it's hard to imagine that applying masks couldn't be done easily...

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

回答 (1 件)

KALYAN ACHARJYA
KALYAN ACHARJYA 2021 年 1 月 31 日
You may do the FFT or IFFT of whole image. Later apply the mask (logical Matrix) on resultant image. Let say "result" is the resultant image after FFT or IFFT
result(mask)=0;
In case on RGB Image, do the following before apply the logical matrix(mask) on the resultant image.
cat(3,mask,mask,mask)
  2 件のコメント
Iron1759
Iron1759 2021 年 1 月 31 日
Hi Kalyan,
I suppose that what you have done is to make all the pixles outside the mask from the original image to be zero.
However, I think that you can't simply take FFT from the whole image and THEN apply the mask you want, because you get redundant signals, or I missed your point?
KALYAN ACHARJYA
KALYAN ACHARJYA 2021 年 1 月 31 日
Yes, you raised a valid point. I will check it and reply to you.

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

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by