• No results found

II. Background

2.4 Phase Retrieval Algorithms

Dainty and Fienup detail a thorough review of several phase retrieval methods to include Newton-Raphson, gradient search, and iterative methods [7,12]. The phase retrieval problem presents itself in many applications to include optical images formed with incoherent illumination. For the application considered here, a short review of applicable phase retrieval algorithms is presented.

2.4.1 Gerchberg-Saxton Algorithm. Gerchberg and Saxton suggested iter- ating between two sets of data that are related by the Fourier Transform [15]. They suggest simultaneously recording intensity measurements in both the image and pupil

planes. The algorithm starts with an initial phase guess generated by a uniform ran- dom number generator (−π to π). The guessed phase is multiplied to the measured amplitude in the image plane and the Fourier Transform is taken mapping the data to the pupil plane. The computed phase from this operation is multiplied to the amplitude of the pupil plane data. Again, a Fourier transform is performed mapping the manipulated data set back to the image plane. The computed phase in this op- eration is applied to the amplitude of the image plane data. This iterative operation continues until operator intervention or the desired level of error is reached. Gerch- berg and Saxton demonstrated the estimate error decreases or remains constant for each iteration. This is an attractive property of the algorithm; it avoids a diverging solution.

2.4.2 Fienup’s Algorithms. Fienup details two phase retrieval algorithms descending from the work of Gerchberg and Saxton. The first, Fienup’s Error Reduc- tion method is essentially a generalized form of the Gerchberg-Saxton phase retrieval algorithm [11, 12] and is often quoted in literature. The algorithm essentially iter- ates between object and Fourier domains where known constraints are applied to the data before continuing with the next iteration. For the object domain, the object is assumed to be positive and within a known observation region, called object sup- port. In the beam-limited, LADAR application, the support region is provided by the extent of the illuminating laser beam. For the Fourier domain, the modulus of the Fourier Transform of the object field is known from the observed data. For the LADAR application considered here, this results from the square root of the Fourier Transform of the noisy (estimated) autocorrelation data. Figure 2.1 depicts a block diagram of Fienup’s Error Reduction algorithm [11].

An initial guess of the object is required for the algorithm. Without any knowl- edge of the object, the guess can be from an infinite number of choices. However, the extent of the object or support region may be known or assumed. Often, the initial guess is chosen to be the support region itself perturbed with random noise. In a

Figure 2.1: Block Diagram of Fienup’s Error Reduction Method [11]

later paper [12], Fienup proposes stopping criteria to be the squared error between the Fourier constraint and the computed Fourier Transform (similar in the object do- main for successive iterations). This algorithm is a single frame algorithm; it operates on a single autocorrelation estimate. Without stopping criteria, the algorithm runs until operator intervention or the number of chosen iterations has been exceeded.

Fienup also presents the input-output algorithm to speed convergence [11, 12]. Fienup adapts the error reduction algorithm to produce a non-linear approach where the input does not necessarily satisfy the object domain constraints. Also, the input to the algorithm at each iteration is not considered the current best estimate and can be modified. Fienup suggests multiple methods for selecting a new estimate of the object input and recommends periodically changing the selection method after several iterations. Fienup also suggests a hybrid approach where the error reduction algorithm is combined with the input-output algorithm. Although Fienup reports this as a very powerful approach, it appears ad hoc through arbitrary user intervention.

2.4.3 Schulz-Snyder Algorithm. Schulz and Snyder present a unique image recovery algorithm that operates on nth order correlations [38]. A phase retrieval algorithm is presented with n = 2. Schulz and Snyder choose to maximize a log- likelihood function of the data where a Poisson model is selected. Schulz and Snyder

acknowledge that few applications present autocorrelation data corrupted by Poisson noise; however, he states this model does enforce positivity and is similar to cases where the noise is signal dependent. For applications with signal dependent noise but unknown distribution this algorithm may be a good choice. For the application con- sidered in this paper, the autocorrelation does not exhibit Poisson noise as discussed in Chapter III. Equation 2.3 depicts the Schulz-Snyder iterative algorithm:

ok+1(x) = ok(x) 2Pxok(x) X y  ok(x + y) + ok(x − y)  eRo(y) Ro(y) , (2.3)

where ok+1 is the new estimate of the object, ok is the old estimate of the object

from the previous iteration, eRo(y) is the measured autocorrelation (observed data),

and Ro(y) is the autocorrelation formed from the old object estimate. Using notation

found within this document, the Schulz-Snyder algorithm is re-written to be

onew (x) = o old(x) 2Sold o  oold ⋆ Reo Rold o + oold ∗ RReoldo o  (x), (2.4)

where ⋆ is correlation, ∗ is convolution, onew is the new object estimate, oold is the object estimate from a previous iteration, eRo is the measured autocorrelation, Roold

is the autocorrelation formed from the old estimate of the object, and Sold

o is the

two-dimensional sum of the old object estimate.

The Schulz-Snyder algorithm also requires a support region where the object is known to exist and an initial guess. Schulz and Snyder caution against using a smooth, uniform image as the initial guess and suggest an asymmetric starting image [38]. The initial guess for the Schulz-Snyder algorithm can also be a gross starting point such as the support region perturbed with independent random variables distributed uniformly over the interval [0.99,1.01]. The Schulz-Snyder algorithm is also a single frame algorithm and no stopping criteria is provided. The Schulz-Snyder iterative

algorithm can be characterized as a gradient search method with object constraints used to aid in convergence. The initial guess (positive with support) enforces a solution only within the support region as well as object positivity.

2.4.4 Phillips’ Algorithm. Phillips presents a statistical approach to the phase retrieval problem claiming Gaussian statistics when the number of independent laser speckle patterns, K, is large [32]. While the Central Limit Theorem suggests this is true under the right conditions, Chapter III suggests this is a poor approximation for our LADAR application. From the Gaussian assumption, the log-likelihood is:

L(o) = −21(y) X y d(y) −X x o(x)o(x + y) !2 , (2.5)

where o(x) is the true object, d(y) is the average speckled autocorrelation, and σ2(y)

is the variance. An iterative maximization approach is accomplished with the k th frame data model detailed in Eqn. 2.6. Averaging the data over K number of frames is assumed to be Gaussian with a mean equal to the Idell function (Eqn. 2.2). A sample variance is computed from the K observed frames.

dk(y) = F1n

Fλz

{o(x)} 2+ nk(u)o 2 (2.6) Phillips suggests a low-resolution image as the starting point. The author found the Phillips algorithm to converge with a random guess as the starting image identical to Fienup and Schulz-Snyder. The Phillips algorithm may be implemented as a multi-frame algorithm iteratively operating on each noisy autocorrelation realization obtained after each laser pulse. Lastly, Phillips suggests a statistical based stopping criteria.

Related documents