Алгоритм Герхберга-Сакстона

Алгоритм восстановления фазы
Алгоритм Герхберга-Сакстона. FT — преобразование Фурье.

Алгоритм Герхберга–Сакстона (GS) представляет собой итеративный алгоритм восстановления фазы для восстановления фазы комплексного волнового фронта из двух измерений интенсивности, полученных в двух различных плоскостях. [1] Обычно две плоскости представляют собой плоскость изображения и плоскость дальнего поля (дифракции), а распространение волнового фронта между этими двумя плоскостями задается преобразованием Фурье . В оригинальной статье Герхберга и Сакстона рассматривались изображение и дифракционная картина образца, полученные в электронном микроскопе.

Часто необходимо знать только распределение фазы из одной из плоскостей, поскольку распределение фазы на другой плоскости можно получить, выполнив преобразование Фурье на плоскости, фаза которой известна. Хотя алгоритм GS часто используется для двумерных сигналов, он также применим и для одномерных сигналов.

Приведенный ниже псевдокод выполняет алгоритм GS для получения распределения фаз для плоскости «Источник» таким образом, чтобы ее преобразование Фурье имело распределение амплитуд плоскости «Цель».

Алгоритм Герхберга-Сакстона является одним из наиболее распространенных методов, используемых для создания компьютерных голограмм . [2]

Алгоритм псевдокода

Позволять: FT – прямое преобразование Фурье IFT – обратное преобразование Фурье i – мнимая единица, √−1 (квадратный корень из −1) exp – показательная функция (exp(x) = e x ) Цель и Источник — это плоскости амплитуды цели и источника соответственно. A, B, C и D — комплексные плоскости с той же размерностью, что и Цель и Источник. Амплитуда – Функция извлечения амплитуды: например, для комплексного z = x + iy , амплитуда( z ) = sqrt( x · x + y · y ) для действительного x амплитуда( x ) = | x | Фаза – Функция извлечения фазы: например, Фаза(z) = arctan(y / x)конец ПустьАлгоритм Герхберга–Сакстона (Источник, Цель, Полученная_Фаза ) A := IFT(Цель) пока критерий ошибки не выполняется B := Амплитуда(Источник) × exp(i × Фаза(A)) С := ФТ(В) D := Амплитуда(Цель) × exp(i × Фаза(C)) А := ИФТ(D) конец, пока Полученная_фаза = Фаза(A)

Это всего лишь один из многих способов реализации алгоритма GS. Помимо оптимизаций, другие могут начать с выполнения прямого преобразования Фурье к исходному распределению.

Смотрите также

Ссылки

  1. ^ Gerchberg, RW; Saxton, WO (1972). «Практический алгоритм определения фазы из изображений и изображений дифракционной плоскости» (PDF) . Optik . 35 : 237–246 . Архивировано из оригинала (PDF) 28 марта 2016 г.
  2. ^ Меммоло, Паскуале; Миччио, Лиза; Мерола, Франческо; Пачелло, Антонио; Эмбрионе, Валерио; Фуско, Сабато; Ферраро, Пьетро; Антонио Нетти, Паоло (1 января 2014 г.). «Исследование конкретных решений алгоритма Герхберга – Сакстона». Оптика и лазеры в технике . 52 : 206–211 . doi :10.1016/j.optlaseng.2013.06.008. ISSN  0143-8166.
  • Страницы доктора У. Оуэна Сакстона [1] Архивировано 13 июня 2008 г. на Wayback Machine , [2]
  • Заявки и публикации по восстановлению фазы от Института оптики Рочестерского университета
  • Скрипт GS на Python от Доминика Доллерера
  • Алгоритмы MATLAB GS [3], [4]
Взято с "https://en.wikipedia.org/w/index.php?title=Алгоритм_Герхберга–Сакстона&oldid=1271429564"