Main Content

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

psf2otf

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

説明

OTF = psf2otf(PSF) は、点像分布関数 (PSF) 配列の高速フーリエ変換 (FFT) を計算し、光学伝達関数配列 OTF を作成します。これは、PSF の中心のずれによる影響を受けません。

OTF = psf2otf(PSF,sz) は光学伝達関数のサイズ sz を指定します。

すべて折りたたむ

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

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

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

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

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

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

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

入力引数

すべて折りたたむ

点像分布関数。任意の次元の数値配列として指定します。

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

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

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

データ型: double

出力引数

すべて折りたたむ

光学伝達関数。サイズが sz の数値配列として返されます。

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

ヒント

  • PSF の中心のずれによって OTF が変更されていないことを確認するために、psf2otf は、sz で指定されている次元と一致するように、PSF の下側または右側を 0 でパディングします。そして、psf2otf は、中心のピクセルが (1,1) の位置になるまで PSF の上側または左側の値を巡回シフトします。

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

拡張機能

バージョン履歴

R2006a より前に導入

すべて展開する