Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

otf2psf

光学伝達関数を点像分布関数に変換

説明

PSF = otf2psf(OTF) は、光学伝達関数 (OTF) の逆高速フーリエ変換を計算し、原点を中心とする点像分布関数 (PSF) を作成します。

PSF = otf2psf(OTF,sz) は出力の点像分布関数のサイズ sz を指定します。

すべて折りたたむ

点像分布関数 (PSF) を作成します。

PSF  = fspecial('gaussian',13,1);

PSF を光学伝達関数 (OTF) に変換します。

OTF  = psf2otf(PSF,[31 31]);

OTF を元の PSF に変換します。

PSF2 = otf2psf(OTF,size(PSF));

PSF と OTF をプロットします。

subplot(1,2,1)
surf(abs(OTF))
title('|OTF|');
axis square
axis tight
subplot(1,2,2)
surf(PSF2)
title('Corresponding PSF');
axis square
axis tight

Figure contains 2 axes objects. Axes object 1 with title |OTF| contains an object of type surface. Axes object 2 with title Corresponding PSF contains an object of type surface.

入力引数

すべて折りたたむ

光学伝達関数。任意の次元の数値配列として指定します。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
複素数のサポート: あり

出力の点像分布関数 PSF のサイズ。正の整数のベクトルとして指定します。PSF のサイズはどの次元でも OTF のサイズを超えてはなりません。既定の設定では、PSFOTF と同じサイズです。

データ型: double

出力引数

すべて折りたたむ

原点を中心とする点像分布関数。サイズが sz の数値配列として返されます。

データ型: double
複素数のサポート: あり

ヒント

  • 原点を PSF の中心とする場合、otf2psf は、(1,1) 要素が中心位置に設定されるように出力配列の値を巡回的にシフトさせ、sz で指定された次元と一致するように結果をトリミングします。

  • この関数は、FFT を伴う演算の場合、イメージの畳み込みと逆畳み込みに使用されます。

バージョン履歴

R2006a より前に導入