Expand this Topic clickable element to expand a topic
Skip to content
Optica Publishing Group

Batch-based alternating direction methods of multipliers for Fourier ptychography

Open Access Open Access

Abstract

Fourier ptychography (FP) has been developed as a general imaging tool for various applications. However, the redundancy data has to be enforced to get a stable recovery, leading to a large dataset and a high computational cost. Based on the additive property of the optical pupils in FP recovery, we report batch-based alternating direction methods of multipliers (ADMM) for FP reconstruction. The reported scheme is performed by implementing partial updates in sub-problems of the standard ADMM. We validate the reconstruction performance using both simulated and experimental measurements. Compared with the embedded pupil function recovery (EPRY) algorithm, the proposed algorithms can converge faster and produce higher-quality images.

© 2022 Optica Publishing Group under the terms of the Optica Open Access Publishing Agreement

1. Introduction

Fourier ptychography (FP) [1] is a recently developed wide-field, high-resolution imaging technique. It aims to obtain both phase and amplitude information of a complex sample with a large space bandwidth product (SBP). Since its first demonstration, it has become a turnkey imaging tool for various applications, including quantitative phase imaging [2], digital pathology [3], cytometry [4], aberration metrology [5], far-field super-resolution imaging [6], and X-ray nanoscopy [7]. FP is inextricably linked with conventional ptychography (real-space ptychography), and the discussion of these modalities can be found in [8].

The success of iterative algorithms greatly boosts the field of ptychography. For instance, the ptychographical iterative engine (PIE) was proposed in [9] to solve the phase problem. Guizar-Sicairos and Fienup [10] proposed a nonlinear optimization algorithm for ptychography using the conjugate gradient method. Thibault et al. [11] further improved the reconstruction by jointly retrieving the sample and probe (blind ptychography) in ptychographic coherent diffractive imaging (CDI). Maiden and Rodenburg [12] also considered the blind ptychography via an extended PIE (ePIE) algorithm. Subsequently, various applications were considered, such as characterizing the hard X-ray nanobeam [13] and electron microscopy [14]. Luke [15] proposed the relaxed averaged alternating reflection algorithm, which is popular amongst the CDI regime. The proximal heterogeneous block implicit-explicit gradient method was proposed by Hesse et al. [16] for the blind ptychography problem. Maiden et al. [17] further developed different variants of ePIE combined with the momentum acceleration.

Since 2013, the development of FP has started to attract the attention of the field of CDI and evokes further interest in new algorithms. Because FP is tightly linked to conventional ptychography, numerous iterative algorithms which were originally proposed for solving conventional ptychography problems can be generalized to the FP modality. For instance, the Gerchberg-Saxton [18] method, essentially an alternating projection algorithm, can be readily adopted from conventional ptychography [9,10,12] and applied to the FP [1,19]. The Wirtinger flow algorithm was developed in [20] for the FP reconstruction. Convex optimization approach based on low-rank factorization [21] has also been proposed for FP in [22]. For faster convergence, Yeh et al. [23] reported a second-order iterative method using the Hessian matrix.

As one of the most flexible and efficient first-order optimization algorithms, the alternating direction method of multipliers (ADMM) with low update cost and easy parallel implementation has been extensively studied in imaging sciences and inverse problems [2426]. It was also applied to the conventional ptychographic imaging by Wen et al. [27] and then further extended to the blind problem by Chang et al. [28] with convergence guarantee. The standard ADMM for ptychography imaging, as reported in [28], cannot be accelerated if redundancy is sufficient. Obviously, it updates all variables in a parallel manner. In this paper we consider its variants utilizing the data redundancy to accelerate the iterative algorithm, which is essentially in a serial manner. Specifically, inspired by the block structure of FP, we propose batch-based ADMM algorithms (BADMMs) for both non-blind and blind FP problems. Numerical experiments on the simulated data demonstrate that the proposed methods can achieve faster convergence on noiseless data and has stronger robustness on noisy data, in comparison with the embedded pupil function recovery (EPRY) [19]. Moreover, compared to the flexible ADMM [29], the proposed algorithms can substantially reduce the runtime. Further tests on the experimental data are also conducted, which also demonstrates the advantage of both the convergence speed and robustness.

The rest of this article is organized as follows. In section 2, we formulate the optimization model of the FP problems. The framework of BADMMs is given in section 3. Section 4. reports a series of numerical tests on both simulated and experimental data. Finally, we give conclusions and discuss our future work in section 5.

2. Preliminary

2.1 Mathematical formula

In contrast to conventional microscopy, the only modification of FP is to add a simple LED array beneath the focus plane of the microscope. The LED array offers different plane waves to illuminate a two-dimensional (2D) object. By turning on different LED elements on the array, the detector captures a sequence of intensity-only images corresponding to those waves. Here we give a mathematical description of FP as follows. Note that the problem is defined in the frequency domain by introducing the variables $\bar u$ and $\bar w$ representing the Fourier transform of the sample and the pupil function, respectively.

Given the captured phaseless intensity $I\in \mathbb {R}^{m}$ under $K$ different angles and the pupil function $\bar {w}$ of size $\sqrt {\bar {m}}\times \sqrt {\bar {m}} (\bar {m}<m)$, the non-blind recovery problem of FP can be described as

$$\text{To find}\quad \bar{u}\in \mathbb{C}^{n} \quad s.t.\quad|\mathcal{B}(\bar{u})|^{2}=I,$$
where $\bar {u}$ denotes the spectrum of the 2D sample of size $\sqrt {n}\times \sqrt {n}$ and $|\cdot |$ stands for the element-wise absolute of a vector. The linear operator $\mathcal {B}:{\mathbb {C}}^{n}\rightarrow \mathbb {C}^{m}$ is defined as follows
$$\mathcal{B}(\bar{u}):=(\mathcal{B}_1^{T}(\bar{u}),\mathcal{B}_2^{T}(\bar{u}),\ldots,\mathcal{B}_K^{T}(\bar{u}))^{T},$$
with $\mathcal {B}_j(\bar {u}):=\mathcal {F}^{-1}(\bar {w}\circ S_j \bar {u})~\forall 1\leq j\leq K$. The operator $S_j\in \mathbb {R}^{\bar {m}\times n}$ is a binary matrix to extract a small patch of the sample in the Fourier domain corresponding to the $j$th illumination. The operator $\mathcal {F}^{-1}$ denotes the normalized discrete inverse Fourier transformation, and $\circ$ represents the element-wise product of two vectors. Note that the pupil $\bar {w}$ is usually selected as a low-pass filter named coherent transfer function (CTF) with radius of $\text {NA}\cdot 2\pi /\lambda$ (see Fig. 1(c)), where the notations $\text {NA}$ and $\lambda$ denote the numerical aperture and the wavelength, respectively.

 figure: Fig. 1.

Fig. 1. Images related to synthetic experiments. (a) and (b) denote the amplitude and phase for a high-resolution synthetic 2D image with $256\times 256$ pixels, respectively. (c) represents a circular pupil with $64\times 64$ pixels. (d) is one of the captured low-resolution intensity images corresponding to the normally incident illumination with $64\times 64$ pixels.

Download Full Size | PDF

In practice, the pupil $\bar w$ cannot be exactly obtained [19] and one has to consider the blind FP problem to jointly reconstruct the spectrum of the sample and the pupil as below

$$\text{To find}\quad \bar{u}\in \mathbb{C}^{n}\quad\text{and}~\bar{w}\in \mathbb{C}^{\bar{m}} \quad s.t.\quad |\mathcal{A}(\bar{w},\bar{u})|^{2}=I,$$
where the bilinear operator $\mathcal {A}:\mathbb {C}^{\bar {m}} \times \mathbb {C}^{n}\rightarrow \mathbb {C}^{m}$ is denoted as
$$\mathcal{A}(\bar{w},\bar{u}):= (\mathcal{A}_1^{T}(\bar{w},\bar{u}),\mathcal{A}_2^{T}(\bar{w},\bar{u}),\ldots,\mathcal{A}_K^{T}(\bar{w},\bar{u}))^{T},$$
with $\mathcal {A}_j(\bar {w},\bar {u}) := \mathcal {F}^{-1}(\bar {w}\circ S_j\bar {u})~\forall 1\leq j\leq K$.

2.2 Standard ADMM

To illustrate the standard ADMM, we consider a constrained optimization problem as follows

$$\min\nolimits_{x\in\mathbb{R}^{n}} f(x)\quad s.t.\quad Ax=b,$$
where $f:\mathbb {R}^{n}\rightarrow \mathbb {R}$, $A\in \mathbb {R}^{m\times n}$ and $b\in \mathbb {R}^{m}$. The augmented Lagrangian for this problem reads
$$L_{\rho}(x,y)=f(x)+y^{T}(Ax-b)+\frac{\rho}{2}\|Ax-b\|^{2},$$
where $y\in \mathbb {R}^{m}$, $\rho >0$, $\|\cdot \|$ are the dual variable (Lagrange multiplier), the penalty parameter and the $\ell ^{2}$ norm in Euclidean space, respectively. The iterative scheme for the standard ADMM can be given as
$$\begin{aligned} x^{k+1} & =\arg\min_{x} L_{\rho}(x,y^{k}), \\ y^{k+1} & =y^{k}+\rho(Ax^{k+1}-b), \end{aligned}$$
where $k$ means the $k$th iteration.

Since ADMM is flexible as a first-order operator-splitting algorithm, it has been widely adopted for phase retrieval problems [27,28,30]. Especially in Chang et al. [28], a generalized ADMM with adaptive stepsizes was proposed with the convergence guarantee. On the other hand, the multiblock version of ADMM has also been developed. For example, Hong et al. [29] proposed a flexible ADMM algorithm for solving certain nonconvex consensus and sharing problems.

3. Proposed algorithm: BADMMs

Since the filter function in the Fourier domain is usually a circular pupil (see Fig. 1 (c)), we first discuss the non-blind recovery by assuming the pupil is known in advance. The nonlinear least squares method transforms the FP problem defined in Eq. (1) into the following constrained minimization problem with the amplitude-Gaussian metric. The problem can be written as

$$\mathrm{Model~ I:} \qquad \min\nolimits_{\bar{u},z}\frac{1}{2}\sum\nolimits_{j=1}^{K}\||z_j|-\sqrt{I_j}\|^{2}\quad s.t.\quad z_j=\mathcal{B}_j(\bar{u})~\forall 1\leq j\leq K,$$
where operations $\sqrt {\cdot }$ and $|\cdot |$ denote the element-wise square root and modulus, respectively. We introduce $z=(z^{T}_1,z^{T}_2,\ldots,z^{T}_K)^{T}$ as the auxiliary variable.

We then propose a batch-based ADMM termed BADMM to solve the above model. The augmented Lagrangian corresponding to Model I defined in Eq. (8) can be written as

$$\Gamma_{\beta}(\bar{u},z,\Lambda)=\mathcal{G}(z)+\frac{\beta}{2}\|\tilde{z}-\mathcal{B}(\bar{u})\|^{2}-\frac{1}{2\beta}\|\Lambda\|^{2},$$
where $\mathcal {G}(z):=\frac {1}{2}\sum _{j=1}^{K}\||z_{j}|-\sqrt {I_{j}}\|^{2}$, $\tilde {z}:=z+\frac {1}{\beta }\Lambda$, and $\beta$, $\Lambda :=(\Lambda ^{T}_1,\Lambda ^{T}_2,\ldots,\Lambda ^{T}_{K})^{T}\in \mathbb {C}^{m}$ are the positive parameter and the Lagrange multiplier, respectively. The augmented Lagrangian with block structure can be rewritten as
$$\Gamma_\beta(\bar u, z,\Lambda):=\sum\nolimits_j\Gamma_{\beta,j}(\bar u,z_j,\Lambda_j),$$
with $\Gamma _{\beta,j}(\bar u,z_j,\Lambda _j):=\mathcal {G}_j(z_j)+\tfrac {\beta }{2}\|\tilde z_j -\mathcal {B}_j(\bar u)\|^{2}-\tfrac {1}{2\beta }\|\Lambda _j\|^{2}$, and $\mathcal {G}_j(z_j):=\tfrac {1}{2}\||z_j|-\sqrt {I_j}\|^{2}.$ The BADMM iteratively recovers the solution in a block coordinate descent manner [31]. By introducing the random index set $\mathcal {S}^{k+1}\subseteq \{1,2,\ldots, K\}$ per iteration, BADMM transforms the original optimization problem into a series of easy-to-solve sub-problems which use a subset of all measured data. Specifically, the mathematical form is given as follows
$$\max\nolimits_{\Lambda}\min\nolimits_{\bar u,z}\sum\nolimits_{j\in\mathcal{S}^{k+1}} \Gamma_{\beta,j}(\bar u,z_j,\Lambda_j).$$

Then for $j=1, 2, \ldots,K$, the scheme of BADMM in the $k+1$th iteration can be described as

$$\begin{cases} \text{Step 1:~} z_j^{k+1}=\left\{ \begin{array}{ll} \arg\min\nolimits_{z_j}\mathcal{G}_j(z_j)+\frac{\beta}{2}\|z_j-\hat{z}_j^{k}\|^{2} & \text{if}~j\in \mathcal{S}^{k+1}\\ z_j^{k} & \text{otherwise.} \end{array}\right.\\ \text{Step 2:~} \Lambda_j^{k+1}=\left\{ \begin{array}{ll} \Lambda_j^{k}+\beta(z_j^{k+1}-\mathcal{B}_j(\bar{u}^{k})) & \text{if}~j\in \mathcal{S}^{k+1}\\ \Lambda_j^{k} & \text{otherwise.} \end{array}\right.\\ \text{Step 3:~} \bar{u}^{k+1}=\arg\min_{\bar{u}}\frac{\beta}{2}\sum_{j\in \mathcal{S}^{k+1}}\|\tilde z_j^{k+1}-\mathcal{B}_j(\bar{u})\|^{2}+\frac{\alpha}{2}\|\bar{u}-\bar{u}^{k}\|^{2}_{M^{k}}, & \\ \end{cases}$$
where $\hat {z}_j^{k}:=\mathcal {B}_j(\bar {u}^{k})-\frac {\Lambda _j^{k}}{\beta }$, $\tilde z^{k+1}_j=z^{k+1}_j+\frac {\Lambda ^{k+1}_j}{\beta },$ $\|\cdot \|^{2}_{ M^{k}}:=\langle M^{k}\cdot,\cdot \rangle$, and $\alpha$ is a positive parameter. The matrix $M^{k}\in \mathbb {R}_+^{n\times n}$ is assumed to be diagonal and positive semidefinite [28] such that the sub-problem in Step 3 has a unique and closed-form solution. We put the derivation of the sub-problems to the Supplement 1. We emphasize that the update of per block within the random index set can be implemented in parallel in the first two steps. Finally, we summarize the iterative scheme in Algorithm 1.

Tables Icon

Algorithm 1. BADMM for Model I

For the blind recovery problem, a similar optimization problem can be written as

$$\mathrm{Model~ II:} \quad \min\nolimits_{\bar{w},\bar{u},z}\frac{1}{2}\sum\nolimits_{j=1}^{K}\||z_j|-\sqrt{I_j}\|^{2}+\mathbb{I}_{_{\mathscr{X}}}(\bar{w})\quad s.t.\quad z_j=\mathcal{A}_j(\bar{w},\bar{u})~\forall 1\leq j\leq K,$$
where $\mathbb {I}_{\mathscr{X}}(\bar {w})$ is an indicator function of the constraint set $\mathscr X:=\{v\in \mathbb {C}^{\bar m}:|v|=CTF\}$ defined as
$$\mathbb{I}_{\mathscr X}(\bar w)= \left\{ \begin{array}{ll} 0 & \text{~~~if~}\bar w\in \mathscr X\\ +\infty & \text{~~otherwise.} \end{array} \right.$$

For $j=1, 2, \ldots, K$, the scheme of BADMM for Model II in the $k+1$th iteration can be described as (for simplicity, we reuse some notations of Algorithm 1)

$$\begin{cases} \text{Step 1:~} z_j^{k+1}=\left\{ \begin{array}{ll} \arg\min_{z_j}\mathcal{G}_j(z_j)+\frac{\rho}{2}\|z_j-\hat{z}_j^{k}\|^{2} & \text{if}~j\in \mathcal{S}^{k+1}\\ z_j^{k} & \text{otherwise.} \end{array}\right.\\ \text{Step 2:~} \Lambda_j^{k+1}=\left\{ \begin{array}{ll} \Lambda^{k}_j+\rho(z_j^{k+1}-\mathcal{A}_j(\bar w^{k},\bar u^{k})) & \text{if}~j\in \mathcal{S}^{k+1}\\ \Lambda_j^{k} & \text{otherwise.} \end{array}\right.\\ \text{Step 3:~} \bar{w}^{k+1}=\mathop{\arg\min}_{\bar{w}\in \mathscr{X}}\frac{\rho}{2}\sum_{j\in \mathcal{S}^{k+1}}\|\tilde z_j^{k+1}-\mathcal{A}_j(\bar w,\bar u^{k})\|^{2}+\frac{\alpha_1}{2}\|\bar{w}-\bar{w}^{k}\|^{2}_{M_1^{k}}, & \\ \text{Step 4:~} \bar{u}^{k+1}=\mathop{\arg\min}_{\bar{u}}\frac{\rho}{2}\sum_{j\in \mathcal{S}^{k+1}}\|\tilde z^{k+1}_j-\mathcal{A}_j(\bar w^{k+1},\bar u)\|^{2}+\frac{\alpha_2}{2}\|\bar{u}-\bar{u}^{k}\|^{2} _{M_2^{k}}, & \\ \end{cases}$$
where $\hat {z}_j^{k}:=\mathcal {A}_j(\bar w^{k}, \bar u^{k})-\frac {\Lambda _j^{k}}{\rho }$, $\tilde {z}_j^{k+1}=z_j^{k+1}+\frac {\Lambda _j^{k+1}}{\rho }$, and $\rho$, $\alpha _1$, $\alpha _2$ are positive parameters. The selection strategy of these two matrices $M_1^{k}\in \mathbb {R}_+^{\bar m \times \bar m}$ and $M_2^{k} \in \mathbb {R}_+^{n\times n}$ is similar to the non-blind case. The detailed iterative scheme is summarized in Algorithm 2 (see the Supplement 1 for details).

Tables Icon

Algorithm 2. BADMM for Model II

The BADMM algorithms update variables in a batched manner (using only part of the measurement data per loop), whereas the standard ADMM needs to use all data to complete the update of all variables in each loop. We note that the standard ADMM is a special case of BADMM when the index set $\mathcal {S}^{k}$ takes the complete set per iteration. As shown in the numerical section, the BADMM outperforms the standard ADMM in terms of epoch numbers. The smaller the batch size, the fewer epochs it takes to reach the given tolerance. However, the smaller batch reduces the concurrency of calculation, since only part of the whole images or variables can be employed per iteration. Hence for practical use, one should choose a proper batch size to get optimal performance.

Based on different situations (non-blind or blind cases), we have proposed two algorithms ( Algorithm 1 and Algorithm 2). If removing the update of the pupil in Algorithm 2, it is the same as Algorithm 1. In practice, with an accurate estimate of the pupil, Algorithm 1 can work well. Otherwise, one has to optimize the pupil by Algorithm 2.

Remark 3.1. The flexible ADMM algorithm mentioned in [29] can also be used to solve the FP problem. This algorithm is flexible in the update of the original variable and the dual variable. We consider both the flexible ADMM and Algorithm 1 to solve Model I. The differences between them only exist in step 3. Specifically, step 3 of the flexible ADMM has the following form

$$\bar{u}^{k+1}=\arg\min\nolimits_{\bar{u}}\frac{\beta}{2}\sum\nolimits_{j=1}^{K}\|\tilde z_j^{k+1}-\mathcal{B}_j(\bar{u})\|^{2}+\frac{\alpha}{2}\|\bar{u}-\bar{u}^{k}\|^{2}_{M^{k}}.$$

By modifying the third and fourth steps of Algorithm 2 accordingly, we can apply the flexible ADMM to solve Model II. To compare the differences between these two algorithms, the corresponding numerical tests are conducted. See section 4.1 for details.

4. Numerical experiments

To evaluate the performance of the proposed BADMMs, we first compare it with the flexible ADMM (mentioned in the remark of section 3) on non-blind FP data and further explore the influence of the batch size. We then show the performance of BADMMs for both non-blind and blind problems and compare the performance with EPRY [19] using both clean and noisy synthetic data. The simulated data with Poisson noise is generated with a scale parameter $\eta$ to control the photon number (smaller $\eta$ denotes the stronger noise). We also show the performance of BADMM and EPRY on the experimental data. Keep the size of set $\mathcal {S}^{k}$ fixed as iterations goes, and let $L:=|\mathcal {S}^{k}|$. Denote one epoch for every $\lceil \tfrac {K}{L}\rceil$ iterations.

We conduct synthetic experiments to test the effectiveness of the proposed algorithms. We choose two images as the amplitude and phase components of the ground truth image in the spatial domain, respectively. Low-resolution intensity images with $64\times 64$ pixels are captured corresponding to different illuminations. The simulated 2D complex object with $256\times 256$ pixels is shown in Fig. 1(a-b) and the phaseless intensity data generated under normal incident illumination is depicted in Fig. 1(d). Fig. 1(c) shows the circular pupil in the frequency domain. Parameters $\rho$, $\beta$, $\alpha$, $\alpha _1$, $\alpha _2$ need to manually tune for best performance. The initial guess for the sample is generated based on the intensity measurement captured under normal incident illumination.

We introduce some general criteria to evaluate the performance of different algorithms. First, we define the residual error for the non-blind case as

$$\text{error}_1:=\frac{\sum_{j=1}^{K}\|\mathcal{B}_j(\bar{u})-\sqrt{I}_j\|_1}{\|\sqrt{I}\|_1},$$
and the blind case as
$$\text{error}_2:=\frac{\sum_{j=1}^{K}\|A_j(\bar{w},\bar{u})-\sqrt{I}_j\|_1}{\|\sqrt{I}\|_1},$$
where $\|\cdot \|_1$ denotes the $\ell _1$ norm as the sum of the absolute values of all elements. In the presence of noise, we use the signal-to-noise ratio (SNR) to measure the quality of the restored image, which is defined as follows
$$\text{SNR}(u,u_g)={-}10\log_{10} \frac{\|l^{{\star}} u-u_{g}\|^{2}}{\|l^{{\star}} u\|^{2}},$$
where $l^{\star }=\arg \min _{\{l\in \mathbb {C}:|l|=1\}}\|l u-u_g\|$ is the global phase factor. The symbols $u_g$ and $u$ are the ground-truth image and the reconstructed image, respectively. We also use $\text {SNR}(w,w_g)$ to measure image quality in the blind reconstruction, where the phase factor is generalized as $l^{\star }=\arg \min _{l\in \mathbb {C}} \|l w-w_g\|$. For the noise-free case, we stop algorithms if the residual is smaller than a given tolerance or if the maximum number of iterations reaches a given number. For tests on noisy data, we only stop algorithms when the number of iterations reaches a given number. All experiments are carried out with MATLAB R2018b on a workstation (Intel Xeon Gold 6130).

4.1 Comparison with the flexible ADMM

We first conduct the non-blind simulation test (mentioned in the remark of section 3) to demonstrate the performance of the proposed algorithm and the flexible ADMM, both using mini-batches. Set the parameters as $\alpha = 1e-3,$ $K=256,$ $\epsilon =1e-8,$ and $N=500.$ We manually adjust the parameter $\beta$ to achieve optimal results. Set $L$ to $\frac {K}{4}$ and $\frac {K}{16}$.

Fig. 2 shows how the residuals change with increasing epoch number and running time for different bath sizes ($L$). Figure 2 (a) shows that BADMM and the flexible ADMM achieve the specified accuracy in 86 and 230 epochs, respectively. The corresponding elapsed time is recorded in Fig. 2 (b) as 117.70 s and 493.07 s, respectively. Both results in Fig. 2 (a) and Fig. 2 (b) show that the proposed BADMM has faster convergence than the flexible ADMM in terms of the number of epochs and running time. At another batch size ($L=\frac {K}{16}$), the result of Fig. 2(c) and Fig. 2(d) is still consistent with the former case. Based on Fig. 2 (d), our algorithm is an order of magnitude faster than the flexible ADMM in running time.

 figure: Fig. 2.

Fig. 2. The flexible ADMM and BADMM error curves with respect to number of epochs and running time. We test the cases when $L$ is taken as $\frac {K}{4}$ and $\frac {K}{16}$, respectively. (a) and (b) are the results of the first value. (c) and (d) are the reconstruction results when $L$ is $\frac {K}{16}$.

Download Full Size | PDF

4.2 Extensive tests

We first investigate how the performance of BADMM is affected by batch size ($L$). Set the parameters $\alpha =1e-3,$ $N=1000,$ and $\beta =0.55$. We then select $L=K,K/4,K/16,K/64$, $K/256$. Fig. 3 shows the variation of the residual curves of the BADMM algorithm under different batch sizes. Inferred from Fig. 3(a), the smaller the batch size used by BADMM, the faster it converges (fewer epoch numbers). For example, the cyan dotted line ($L=K/256$) in Fig. 3(b) achieves the best performance in all curves. However, according to Fig. 3(b), this curve takes the most running time because it can only update one frame per inner loop, resulting in poor concurrency. From Fig. 3(b), we observe that the red dotted line takes 750 epochs to achieve the given accuracy, which is also the case that requires the most epochs. We further explore the performance of the red dotted line when $L$ is set to $K$. The red dotted line obtains best results when we set $\beta$ to 0.17, and it stops after 182 epochs. But there is still a big gap between this result and the result of the cyan dotted line in Fig. 3(a). Hence, a proper batch size should be adopted for optimal convergence. Empirically, we fix the batch size ($L$) as $\frac {K}{16}$ for other simulated data tests.

 figure: Fig. 3.

Fig. 3. We tested the performance of the BADMM algorithm under different batch sizes. The notation $\frac {1}{n}(n=1,4,16,64,256)$ indicates that the batch size ($L$) is equal to $\frac {K}{n}$. The residual curves of our proposed algorithm concerning the number of epochs and running time under different batch size $L$($L=K, K/4, K/16, K/64$, $K/256$) are shown in (a) and (b), respectively.

Download Full Size | PDF

Non-blind case First, we consider two non-blind cases corresponding to two different datasets with $7\times 7$ and $11\times 11$ illuminations, respectively. Set the tolerance and the maximum epoch number to be the same as the above test in section 4.1. Set the parameter $\beta =0.15,0.40$.

Figure 4 shows the corresponding amplitude and phase of the reconstructed results. Figure 4(a) shows that the results by EPRY have visible artifacts on the background, while BADMM achieves high-quality reconstructions. Figure 5 plots the residual curves of EPRY and BADMM concerning the number of epochs and running time. As shown in Fig. 5 (c-d), the proposed algorithm requires only half the epochs or running time to achieve the same accuracy by EPRY. Hence, BADMM has fast convergence and produces high-quality results, especially for low overlapping rate data ($7\times 7$ illuminations).

 figure: Fig. 4.

Fig. 4. The amplitude and phase of the reconstructed results using EPRY and BADMM. The first two columns show the results under the first set of illumination ($7\times 7$), respectively. The last two columns are the corresponding results under the second illumination set ($11\times 11$).

Download Full Size | PDF

 figure: Fig. 5.

Fig. 5. The error curves of the EPRY algorithm and the BADMM algorithm on two datasets ($7\times 7$ and $11\times 11$). The error curves of the EPRY algorithm and the BADMM algorithm with epoch and time under the first dataset are recorded in (a) and (b), respectively. (c) and (d) are the corresponding results of (a) and (b) under the second dataset.

Download Full Size | PDF

Although both algorithms can achieve satisfactory accuracy for the noiseless case in principle, the data is inevitably corrupted by noise. Therefore, we test the data contaminated with different levels of Poisson noise. The parameter $\eta$ controls the peak value from $0.05$ to $0.9$ (small $\eta$ produces strong noise). The SNR values and amplitude of the reconstructed images are shown in Table 1 and Fig. 6. Inferred from Table 1, the proposed algorithm can achieve higher SNR compared to EPRY. One also sees that the SNR gap for the two algorithms becomes smaller as the noise becomes weaker. Therefore, BADMM is more robust, especially on higher noise level data.

 figure: Fig. 6.

Fig. 6. The performance of the EPRY algorithm and the BADMM algorithm on the non-blind reconstruction problem with different noise levels. The first and second rows are the reconstructed results of EPRY and BADMM, respectively. The noise level of each column decreases gradually from left to right.

Download Full Size | PDF

Tables Icon

Table 1. The SNR values of the reconstructed image with different noise levels for the non-blind case.

Blind case Since it is practically impossible to know the pupil accurately, we have to consider the blind recovery problem. We divide the test into two parts depending on whether defocusing occurs during imaging. Similar to the non-blind case, we first report the performance of EPRY and BADMM on the clean dataset with $11\times 11$ illuminations. Both algorithms can still achieve satisfactory results even when setting the initial pupil to constant. Some amplitude images obtained at different epochs are shown in Fig. 7. As shown in Fig. 7(d) and Fig. 7(g), the quality of the image obtained by the proposed algorithm after 55 epochs is still higher than that obtained by the EPRY algorithm after 250 epochs. Therefore, one can infer that the proposed algorithm converges much faster.

 figure: Fig. 7.

Fig. 7. The amplitude of the blind reconstructed results by EPRY (first row) and BADMM (second row) at different epochs on the clean dataset.

Download Full Size | PDF

We then add Poisson noise to the data and test the performance of both algorithms. The SNR values of the reconstructed images are recorded in Table 2. Figure 8 gives corresponding amplitude images. Especially when the parameter $\eta$ value is 0.1, the SNR of the reconstructed image of the proposed algorithm is 9 dB higher than that of the EPRY algorithm, which demonstrates that BADMM can produce much higher quality results. As can be seen from Fig. 8(b-c), the reconstruction results by EPRY have visible artifacts on the cameraman’s elbow. In Fig. 8(e) ($\eta =0.9$) and Fig. 8(g) ($\eta =0.3$), we observe that the reconstructed quality of our proposed method under stronger noise is still higher than that of the EPRY algorithm under weaker noise. Hence, the proposed algorithm is more robust in the blind case compared to EPRY.

 figure: Fig. 8.

Fig. 8. Amplitude images were obtained by the blind reconstruction of the EPRY algorithm (first row) and BADMM algorithm (second row) for datasets with different noise levels. From left to right, the noise level decreases gradually.

Download Full Size | PDF

Tables Icon

Table 2. The SNR values of reconstructed images with different noise levels for the blind case.

For the second part, we test the EPRY and the BADMM algorithms on the clean dataset. To guarantee convergence, we set $N=1500$, and $\beta =0.54$. The pupil is initialized by the focusing pupil. Figure 9 shows the reconstructed amplitude and phase images. As shown in Fig. 9(a-b), EPRY fails to produce satisfactory results, even if we increase the number of iterations or increase the overlap ratio of downsampling. Therefore, the proposed BADMM has advantages in terms of reconstructed image quality.

 figure: Fig. 9.

Fig. 9. The amplitude and phase of the reconstructed results using the EPRY algorithm and the BADMM algorithm under the defocused clean dataset. (a)-(b) and (c)-(d) are the results recovered by EPRY and BADMM, respectively.

Download Full Size | PDF

4.3 Experimental data

To further explore the performance of BADMM on the experimental data, we choose a set of blood smears with 225 low-resolution images. We set the number of LEDs, the distance between adjacent LEDs, and the distance between the LED and the sample to 225, 4 mm, and 90.88 mm. We simply set the value of L to be 1 for the proposed algorithm.

The low-resolution images are arranged sequentially in a spiral-out manner. We first test the speed of the proposed algorithm. Set the $\rho,\alpha _1$, and $\alpha _2$ to 1.6,1, and 1, respectively. The reconstructed results of EPRY and BADMM are put in Fig. 10(a-d) and Fig. 10(e-h), respectively. From Fig. 10(c) and Fig. 10(f), it can be observed that the proposed algorithm can achieve satisfactory results in the tenth epoch, while the result of EPRY in the 20th epoch still contains visible ambiguous structure. Therefore, our proposed algorithm converges faster, which is consistent with the results of the simulation experiments.

 figure: Fig. 10.

Fig. 10. Speed test of algorithms on blood slices with aberration. The first and second rows show the reconstruction results of EPRY and BADMM under different epochs (3,10,20,70), respectively.

Download Full Size | PDF

We then tested the performance of both algorithms using only a portion of the entire data to simulate different LED lighting strategies. We generate two new datasets from the original data (in a spiral-out manner) by picking one image every 3 or 6 images from the center. The parameters are set as follows: $N=40$, and $\rho =1.6,0.8$. The first and second rows of Fig. 11 show the reconstructed amplitude images of EPRY and BADMM, respectively. It can be inferred from Fig. 11(a) and Fig. 11(d) that the proposed algorithm can reconstruct the image with high accuracy, while the result of EPRY is not satisfactory. It indicates that the proposed algorithm is more robust when there is some poor data interference. As shown in Fig. 11(c) and Fig. 11(f) (zooming parts of (b) and (e)), the proposed algorithm can effectively eliminate the bar artifacts. Hence, BADMM can obtain reconstruction results with higher quality.

 figure: Fig. 11.

Fig. 11. Reconstruction results on experimental datasets. The first and second rows show the reconstructed amplitude images of EPRY and BADMM, respectively. (a), (d) and (b), (e) are the reconstructed results under the dataset obtained by selecting one of every three and one of every six images, respectively. (c) and (f) show the magnified images of the regions marked with red dotted lines in (b) and (e), respectively.

Download Full Size | PDF

5. Conclusions

In this paper, we have proposed batch-based ADMM (BADMM) algorithms based on the separability of augmented Lagrangian. Extensive tests on both simulated and real data show that the proposed algorithms exhibit faster convergence on noise-free data and good noise tolerance on noisy data. Notably, the batch-based variants effectively speed up iterations in a serial manner. Despite the lack of theoretical analysis, some mathematical analysis of parallel and serial alternating projection (AP) algorithms is presented in [32]. A more insightful discussion and rigorous analysis of BADMM should be developed, and we leave it as the future work.

Funding

National Natural Science Foundation of China (11871372, 12271404, 11501413); Natural Science Foundation of Tianjin City (18JCYBJC16600); Postgraduate Innovative Research Projects of Tianjin Normal University (2022KYCX036Z).

Disclosures

The authors declare no conflicts of interest.

Data availability

Data underlying the results presented in this paper are not publicly available at this time but may be obtained from the authors upon reasonable request.

Supplemental document

See Supplement 1 for supporting content.

References

1. G. Zheng, R. Horstmeyer, and C. Yang, “Wide-field, high-resolution fourier ptychographic microscopy,” Nat. Photonics 7(9), 739–745 (2013). [CrossRef]  

2. X. Ou, R. Horstmeyer, C. Yang, and G. Zheng, “Quantitative phase imaging via fourier ptychographic microscopy,” Opt. Lett. 38(22), 4845–4848 (2013). [CrossRef]  

3. R. Horstmeyer, X. Ou, G. Zheng, P. Willems, and C. Yang, “Digital pathology with fourier ptychography,” Comput. Med. Imaging Graph. 42, 38–43 (2015). [CrossRef]  

4. A. J. Williams, J. Chung, X. Ou, G. Zheng, S. Rawal, Z. Ao, R. Datar, C. Yang, and R. J. Cote, “Fourier ptychographic microscopy for filtration-based circulating tumor cell enumeration and analysis,” J. Biomed. Opt. 19(6), 066007 (2014). [CrossRef]  

5. P. Song, S. Jiang, H. Zhang, X. Huang, Y. Zhang, and G. Zheng, “Full-field fourier ptychography (ffp): Spatially varying pupil modeling and its application for rapid field-dependent aberration metrology,” APL Photonics 4(5), 050802 (2019). [CrossRef]  

6. S. Dong, R. Horstmeyer, R. Shiradkar, K. Guo, X. Ou, Z. Bian, H. Xin, and G. Zheng, “Aperture-scanning fourier ptychography for 3d refocusing and super-resolution macroscopic imaging,” Opt. Express 22(11), 13586–13599 (2014). [CrossRef]  

7. K. Wakonig, A. Diaz, A. Bonnin, M. Stampanoni, A. Bergamaschi, J. Ihli, M. Guizar-Sicairos, and A. Menzel, “X-ray fourier ptychography,” Sci. Adv. 5(2), eaav0282 (2019). [CrossRef]  

8. G. Zheng, C. Shen, S. Jiang, P. Song, and C. Yang, “Concept, implementations and applications of fourier ptychography,” Nat. Rev. Phys. 3(3), 207–223 (2021). [CrossRef]  

9. J. M. Rodenburg and H. M. Faulkner, “A phase retrieval algorithm for shifting illumination,” Appl. Phys. Lett. 85(20), 4795–4797 (2004). [CrossRef]  

10. M. Guizar-Sicairos and J. R. Fienup, “Phase retrieval with transverse translation diversity: a nonlinear optimization approach,” Opt. Express 16(10), 7264–7278 (2008). [CrossRef]  

11. P. Thibault, M. Dierolf, O. Bunk, A. Menzel, and F. Pfeiffer, “Probe retrieval in ptychographic coherent diffractive imaging,” Ultramicroscopy 109(4), 338–343 (2009). [CrossRef]  

12. A. M. Maiden and J. M. Rodenburg, “An improved ptychographical phase retrieval algorithm for diffractive imaging,” Ultramicroscopy 109(10), 1256–1262 (2009). [CrossRef]  

13. A. Schropp, P. Boye, J. M. Feldkamp, R. Hoppe, J. Patommel, D. Samberg, S. Stephan, K. Giewekemeyer, R. N. Wilke, T. Salditt, J. Gulden, A. P. Mancuso, I. A. Vartanyants, E. Weckert, S. Schöder, M. Burghammer, and C. G. Schroer, “Hard x-ray nanobeam characterization by coherent diffraction microscopy,” Appl. Phys. Lett. 96(9), 091102 (2010). [CrossRef]  

14. F. Hüe, J. Rodenburg, A. Maiden, F. Sweeney, and P. Midgley, “Wave-front phase retrieval in transmission electron microscopy via ptychography,” Phys. Rev. B 82(12), 121415 (2010). [CrossRef]  

15. D. R. Luke, “Relaxed averaged alternating reflections for diffraction imaging,” Inverse Probl. 21(1), 37–50 (2004). [CrossRef]  

16. R. Hesse, D. R. Luke, S. Sabach, and M. K. Tam, “Proximal heterogeneous block implicit-explicit method and application to blind ptychographic diffraction imaging,” SIAM J. Imaging Sci. 8(1), 426–457 (2015). [CrossRef]  

17. A. Maiden, D. Johnson, and P. Li, “Further improvements to the ptychographical iterative engine,” Optica 4(7), 736–745 (2017). [CrossRef]  

18. R. W. Gerchberg, “Phase determination for image and diffraction plane pictures in the electron microscope,” Optik (Stuttgart) 34, 275 (1971).

19. X. Ou, G. Zheng, and C. Yang, “Embedded pupil function recovery for fourier ptychographic microscopy,” Opt. Express 22(5), 4960–4972 (2014). [CrossRef]  

20. L. Bian, J. Suo, G. Zheng, K. Guo, F. Chen, and Q. Dai, “Fourier ptychographic reconstruction using wirtinger flow optimization,” Opt. Express 23(4), 4856–4866 (2015). [CrossRef]  

21. S. Burer and R. D. Monteiro, “A nonlinear programming algorithm for solving semidefinite programs via low-rank factorization,” Math. Program. 95(2), 329–357 (2003). [CrossRef]  

22. R. Horstmeyer, R. Y. Chen, X. Ou, B. Ames, J. A. Tropp, and C. Yang, “Solving ptychography with a convex relaxation,” New J. Phys. 17(5), 053044 (2015). [CrossRef]  

23. L.-H. Yeh, J. Dong, J. Zhong, L. Tian, M. Chen, G. Tang, M. Soltanolkotabi, and L. Waller, “Experimental robustness of fourier ptychography phase retrieval algorithms,” Opt. Express 23(26), 33214–33240 (2015). [CrossRef]  

24. R. Glowinski and P. L. Tallec, Augmented Lagrangian and operator-splitting methods in nonlinear mechanics (SIAM Studies in Applied Mathematics, Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 1989).

25. C. Wu and X.-C. Tai, “Augmented Lagrangian method, dual methods and split-Bregman iterations for ROF, vectorial TV and higher order models,” SIAM J. Imaging Sci. 3(3), 300–339 (2010). [CrossRef]  

26. S. Boyd, N. Parikh, E. Chu, B. Peleato, and J. Eckstein, “Distributed optimization and statistical learning via the alternating direction method of multipliers,” Found. Trends Machine learning 3(1), 1–122 (2010). [CrossRef]  

27. Z. Wen, C. Yang, X. Liu, and S. Marchesini, “Alternating direction methods for classical and ptychographic phase retrieval,” Inverse Probl. 28(11), 115010 (2012). [CrossRef]  

28. H. Chang, P. Enfedaque, and S. Marchesini, “Blind ptychographic phase retrieval via convergent alternating direction method of multipliers,” SIAM J. Imaging Sci. 12(1), 153–185 (2019). [CrossRef]  

29. M. Hong, Z.-Q. Luo, and M. Razaviyayn, “Convergence analysis of alternating direction method of multipliers for a family of nonconvex problems,” SIAM J. Optim. 26(1), 337–364 (2016). [CrossRef]  

30. J. Liang, P. Stoica, Y. Jing, and J. Li, “Phase retrieval via the alternating direction method of multipliers,” IEEE Signal Process. Lett. 25(1), 5–9 (2017). [CrossRef]  

31. P. Tseng, “Convergence of a block coordinate descent method for nondifferentiable minimization,” J. optimization theory applications 109(3), 475–494 (2001). [CrossRef]  

32. P. Chen, A. Fannjiang, and G. Liu, “Phase retrieval with one or two diffraction patterns by alternating projections with the null initialization,” J Fourier Anal. Appl. 24(3), 719–758 (2018). [CrossRef]  

Supplementary Material (1)

NameDescription
Supplement 1       THE DERIVATION OF BADMM

Data availability

Data underlying the results presented in this paper are not publicly available at this time but may be obtained from the authors upon reasonable request.

Cited By

Optica participates in Crossref's Cited-By Linking service. Citing articles from Optica Publishing Group journals and other participating publishers are listed here.

Alert me when this article is cited.


Figures (11)

Fig. 1.
Fig. 1. Images related to synthetic experiments. (a) and (b) denote the amplitude and phase for a high-resolution synthetic 2D image with $256\times 256$ pixels, respectively. (c) represents a circular pupil with $64\times 64$ pixels. (d) is one of the captured low-resolution intensity images corresponding to the normally incident illumination with $64\times 64$ pixels.
Fig. 2.
Fig. 2. The flexible ADMM and BADMM error curves with respect to number of epochs and running time. We test the cases when $L$ is taken as $\frac {K}{4}$ and $\frac {K}{16}$, respectively. (a) and (b) are the results of the first value. (c) and (d) are the reconstruction results when $L$ is $\frac {K}{16}$.
Fig. 3.
Fig. 3. We tested the performance of the BADMM algorithm under different batch sizes. The notation $\frac {1}{n}(n=1,4,16,64,256)$ indicates that the batch size ($L$) is equal to $\frac {K}{n}$. The residual curves of our proposed algorithm concerning the number of epochs and running time under different batch size $L$($L=K, K/4, K/16, K/64$, $K/256$) are shown in (a) and (b), respectively.
Fig. 4.
Fig. 4. The amplitude and phase of the reconstructed results using EPRY and BADMM. The first two columns show the results under the first set of illumination ($7\times 7$), respectively. The last two columns are the corresponding results under the second illumination set ($11\times 11$).
Fig. 5.
Fig. 5. The error curves of the EPRY algorithm and the BADMM algorithm on two datasets ($7\times 7$ and $11\times 11$). The error curves of the EPRY algorithm and the BADMM algorithm with epoch and time under the first dataset are recorded in (a) and (b), respectively. (c) and (d) are the corresponding results of (a) and (b) under the second dataset.
Fig. 6.
Fig. 6. The performance of the EPRY algorithm and the BADMM algorithm on the non-blind reconstruction problem with different noise levels. The first and second rows are the reconstructed results of EPRY and BADMM, respectively. The noise level of each column decreases gradually from left to right.
Fig. 7.
Fig. 7. The amplitude of the blind reconstructed results by EPRY (first row) and BADMM (second row) at different epochs on the clean dataset.
Fig. 8.
Fig. 8. Amplitude images were obtained by the blind reconstruction of the EPRY algorithm (first row) and BADMM algorithm (second row) for datasets with different noise levels. From left to right, the noise level decreases gradually.
Fig. 9.
Fig. 9. The amplitude and phase of the reconstructed results using the EPRY algorithm and the BADMM algorithm under the defocused clean dataset. (a)-(b) and (c)-(d) are the results recovered by EPRY and BADMM, respectively.
Fig. 10.
Fig. 10. Speed test of algorithms on blood slices with aberration. The first and second rows show the reconstruction results of EPRY and BADMM under different epochs (3,10,20,70), respectively.
Fig. 11.
Fig. 11. Reconstruction results on experimental datasets. The first and second rows show the reconstructed amplitude images of EPRY and BADMM, respectively. (a), (d) and (b), (e) are the reconstructed results under the dataset obtained by selecting one of every three and one of every six images, respectively. (c) and (f) show the magnified images of the regions marked with red dotted lines in (b) and (e), respectively.

Tables (4)

Tables Icon

Algorithm 1. BADMM for Model I

Tables Icon

Algorithm 2. BADMM for Model II

Tables Icon

Table 1. The SNR values of the reconstructed image with different noise levels for the non-blind case.

Tables Icon

Table 2. The SNR values of reconstructed images with different noise levels for the blind case.

Equations (19)

Equations on this page are rendered with MathJax. Learn more.

To find u ¯ C n s . t . | B ( u ¯ ) | 2 = I ,
B ( u ¯ ) := ( B 1 T ( u ¯ ) , B 2 T ( u ¯ ) , , B K T ( u ¯ ) ) T ,
To find u ¯ C n and   w ¯ C m ¯ s . t . | A ( w ¯ , u ¯ ) | 2 = I ,
A ( w ¯ , u ¯ ) := ( A 1 T ( w ¯ , u ¯ ) , A 2 T ( w ¯ , u ¯ ) , , A K T ( w ¯ , u ¯ ) ) T ,
min x R n f ( x ) s . t . A x = b ,
L ρ ( x , y ) = f ( x ) + y T ( A x b ) + ρ 2 A x b 2 ,
x k + 1 = arg min x L ρ ( x , y k ) , y k + 1 = y k + ρ ( A x k + 1 b ) ,
M o d e l   I : min u ¯ , z 1 2 j = 1 K | z j | I j 2 s . t . z j = B j ( u ¯ )   1 j K ,
Γ β ( u ¯ , z , Λ ) = G ( z ) + β 2 z ~ B ( u ¯ ) 2 1 2 β Λ 2 ,
Γ β ( u ¯ , z , Λ ) := j Γ β , j ( u ¯ , z j , Λ j ) ,
max Λ min u ¯ , z j S k + 1 Γ β , j ( u ¯ , z j , Λ j ) .
{ Step 1:~ z j k + 1 = { arg min z j G j ( z j ) + β 2 z j z ^ j k 2 if   j S k + 1 z j k otherwise. Step 2:~ Λ j k + 1 = { Λ j k + β ( z j k + 1 B j ( u ¯ k ) ) if   j S k + 1 Λ j k otherwise. Step 3:~ u ¯ k + 1 = arg min u ¯ β 2 j S k + 1 z ~ j k + 1 B j ( u ¯ ) 2 + α 2 u ¯ u ¯ k M k 2 ,
M o d e l   I I : min w ¯ , u ¯ , z 1 2 j = 1 K | z j | I j 2 + I X ( w ¯ ) s . t . z j = A j ( w ¯ , u ¯ )   1 j K ,
I X ( w ¯ ) = { 0 ~~~if~ w ¯ X + ~~otherwise.
{ Step 1:~ z j k + 1 = { arg min z j G j ( z j ) + ρ 2 z j z ^ j k 2 if   j S k + 1 z j k otherwise. Step 2:~ Λ j k + 1 = { Λ j k + ρ ( z j k + 1 A j ( w ¯ k , u ¯ k ) ) if   j S k + 1 Λ j k otherwise. Step 3:~ w ¯ k + 1 = arg min w ¯ X ρ 2 j S k + 1 z ~ j k + 1 A j ( w ¯ , u ¯ k ) 2 + α 1 2 w ¯ w ¯ k M 1 k 2 , Step 4:~ u ¯ k + 1 = arg min u ¯ ρ 2 j S k + 1 z ~ j k + 1 A j ( w ¯ k + 1 , u ¯ ) 2 + α 2 2 u ¯ u ¯ k M 2 k 2 ,
u ¯ k + 1 = arg min u ¯ β 2 j = 1 K z ~ j k + 1 B j ( u ¯ ) 2 + α 2 u ¯ u ¯ k M k 2 .
error 1 := j = 1 K B j ( u ¯ ) I j 1 I 1 ,
error 2 := j = 1 K A j ( w ¯ , u ¯ ) I j 1 I 1 ,
SNR ( u , u g ) = 10 log 10 l u u g 2 l u 2 ,
Select as filters


Select Topics Cancel
© Copyright 2024 | Optica Publishing Group. All rights reserved, including rights for text and data mining and training of artificial technologies or similar technologies.