主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

2次元フーリエ変換

関数fft2は2次元データを周波数空間に変換します。たとえば2次元の光マスクを変換して回折パターンを明らかにすることができます。

2次元フーリエ変換

次の式は,m行n列の行列Xの離散フーリエ変換Yを定義します。

Y p + 1 + 1 j 0 1 k 0 n 1 ω j p ω n k X j + 1 k + 1

ωとωnは,次の方程式によって定義される1の複素根です。

ω e 2 π / ω n e 2 π / n

我は虚数単位,pとjは0からm - 1までのインデックス,问とkは0からn - 1までのインデックスです。XとYのインデックスは,MATLAB®の行列インデックスを反映して,この式では1シフトしています。

Xの2次元フーリエ変換を計算することは,まずXの各列の1次元変換を計算してから,結果の各行の1次元変換を行うことと等価です。つまり,コマンドfft2 (X)Y = fft(快速傅里叶变换(X))。と等価です。

2次元回折パターン

光学では,フーリエ変換を使用して,小さな開口部をもつ光マスク上への平面波の入射によって生成される回折パターンを記述できます[1]。この例では,光マスク上で関数fft2を使用して回折パターンを計算します。

小さな円形の開口部をもつ光マスクを定義する逻辑配列を作成します。

n = 2 ^ 10;掩模尺寸%M = 0 (n);我= 1:n;x = i n / 2;%面具一共有y = n / 2 i;%面具坐标(X, Y) = meshgrid (X, Y);%创建二维蒙版网格R = 10;%孔半径A = (x ^2 + y ^2 <= r ^2);半径为R的圆孔径%M (A) = 1;将光圈内的掩模元素设置为1显示亮度图像(M)%的阴谋面具图像

图中包含一个轴。轴包含图像类型的对象。

fft2を使用してマスクの2次元フーリエ変換を計算し,関数fftshiftを使用して,ゼロ周波数成分が中央に来るように出力を並べ替えます。結果の回折パターン周波数をプロットします。青は小さい振幅を示し,黄色は大きい振幅を示します。

DP = fftshift (fft2 (M));显示亮度图像(abs (DP))轴图像

图中包含一个轴。轴包含图像类型的对象。

振幅が小さい領域の詳細が強調されるように,回折パターンの2次元対数をプロットします。非常に小さい振幅は数値の丸め誤差の影響を受け,四角形のグリッドによって放射形非対称が生じています。

显示亮度图像(abs (log2 (DP)))轴图像

图中包含一个轴。轴包含图像类型的对象。

参照

《现代光学导论》。纽约:多佛,1989年。

参考

||||

関連するトピック