ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

psf2otf

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

構文

OTF = psf2otf(PSF)
OTF = psf2otf(PSF,OUTSIZE)

説明

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

OTF = psf2otf(PSF,OUTSIZE) は、配列 PSF を配列 OTF に変換します。ここで、OUTSIZE は配列 OTF のサイズを指定します。OUTSIZE はどの次元でも配列 PSF のサイズより小さく設定することはできません。

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

この関数は、FFT を伴う操作を行う場合、イメージのコンボリューション/デコンボリューションで使われることに注意してください。

クラス サポート

PSF は、任意の非スパース数値配列になります。また、OTFdouble クラスです。

すべて折りたたむ

点像分布関数 (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

R2006a より前に導入

この情報は役に立ちましたか?