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. Axes 1 with title |OTF| contains an object of type surface. Axes 2 with title Corresponding PSF contains an object of type surface.

Входные параметры

свернуть все

Оптическая передаточная функция, заданная как числовой массив любой размерности.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Поддержка комплексного числа: Да

Размер выходной функции расширения точек PSF, заданный как вектор положительных целых чисел. Размер PSF не должен превышать размер OTF в любой размерности. По умолчанию PSF - тот же размер, что и OTF.

Типы данных: double

Выходные аргументы

свернуть все

Функция расширения точек, с центром в источник, возвращается как числовой массив размера sz.

Типы данных: double
Поддержка комплексного числа: Да

Совет

  • Чтобы центрировать PSF в источник, otf2psf кругово смещает значения выходного массива вниз (или вправо) до тех пор, пока элемент (1,1) не достигнет центрального положения, затем он обрабатывает результат, чтобы соответствовать размерностям, заданным sz.

  • Эта функция используется в свертке и деконволюции изображений, когда операции включают БПФ.

Представлено до R2006a