1 Introduction

A phase retrieval problem consists in reconstructing an unknown object \(f\) from a set of phaseless linear measurements. More precisely, let \(E\) be a complex vector space and \(\{L_i\}_{i\in I}\) a set of linear forms from \(E\) to \({\mathbb C}\). We are given the set of all \(\left| L_i(f)\right| ,i\in I\), for some unknown \(f\in E\) and we want to determine \(f\).

This problem can be studied under three different viewpoints:

  • Is \(f\) uniquely determined by \(\left\{ \left| L_i(f)\right| \right\} _{i\in I}\) (up to a global phase)?

  • If the answer to the previous question is positive, is the inverse application \(\left\{ \left| L_i(f)\right| \right\} _{i\in I}\rightarrow f\) “stable”? For example, is it continuous? Uniformly Lipschitz?

  • In practice, is there an efficient algorithm which recovers \(f\) from \(\left\{ \left| L_i(f)\right| \right\} _{i\in I}\)?

The most well-known example of a phase retrieval problem is the case where the \(L_i\) represent the Fourier transform. The unknown object is some compactly-supported function \(f\in L^2({\mathbb R},{\mathbb C})\) and the problem is:

$$\begin{aligned} \text{ reconstruct } f \text{ from } |\hat{f}| \end{aligned}$$

Because of its important applications in physics, this problem has been extensively studied from the 1950s. Unfortunately Refs. [1, 19] have shown that it is not solvable. Indeed, for any \(f\), there generally exists an infinite number of compactly-supported \(g\) such that \(|\hat{f}|=|\hat{g}|\).

We are interested in the problem which consists in reconstructing \(f\in L^2({\mathbb R})\) from the modulus of its wavelet transform.

A wavelet is a (sufficiently regular) function \(\psi :{\mathbb R}\rightarrow {\mathbb C}\) such that \(\int _{\mathbb R}\psi (x)dx=0\). For any \(j\in {\mathbb Z}\), we define \(\psi _j(x)=a^{-j}\psi (a^{-j}x)\), which is equivalent to \(\hat{\psi }_j(x)=\hat{\psi }(a^jx)\). The number \(a\) may be any real in \(]1;+\infty [\). The wavelet transform of a function \(f\in L^2({\mathbb R})\) is:

$$\begin{aligned} \{f\star \psi _j\}_{j\in {\mathbb Z}}\in (L^2({\mathbb R}))^{\mathbb Z}\end{aligned}$$

Our problem is then the following:

$$\begin{aligned} \text{ reconstruct } f\in L^2({\mathbb R}) \text{ from } \{|f\star \psi _j|\}_{j\in {\mathbb Z}} \end{aligned}$$
(1)

It can be seen as a collection of phase retrieval subproblems, where the linear form of each subproblem is the Fourier transform. Provided that \(\psi \) is not pathological and \(f\) is uniquely determined by \(\{f\star \psi _j\}\), the problem is indeed equivalent to:

$$\begin{aligned} \text{ reconstruct } \{\hat{f}.\hat{\psi }_j\}_{j\in {\mathbb Z}} \text{ from } \left\{ \left| \mathcal {F}\left( \hat{f}.\hat{\psi }_j\right) \right| \right\} _{j\in {\mathbb Z}} \end{aligned}$$

where \(\mathcal {F}\) is another notation for the Fourier transform.

Even if, for any given \(j\), it is impossible to reconstruct \(\hat{f}.\hat{\psi }_j\) from \(\left| \mathcal {F}\left( \hat{f}.\hat{\psi }_j\right) \right| \) only, the reconstruction (1) may be possible: the \(\hat{f}.\hat{\psi }_j\) are not independent one from the other and we can use this information for reconstruction.

We consider here the case of Cauchy wavelets. In this case, the relations between the \(\hat{f}.\hat{\psi }_j\) may be expressed in terms of holomorphic functions. This allows us to study the problem (1) with the same tools as in [1]. We show that \(f\) is uniquely determined by \(\{|f\star \psi _j|\}_{j\in {\mathbb Z}}\) and we are able to study the stability of the reconstruction. We show that, when the wavelet transform does not have too many small values, the reconstruction is stable, up to modulation of the different frequency bands by low-frequency phases.

This problem of reconstructing a signal from the modulus of its wavelet transform is interesting in practice because of its applications in audio processing.

Indeed, a common way to represent audio signals is to use the modulus of some time-frequency representation, either the short-time Fourier transform (spectrogram) or the wavelet transform (scalogram [3, 17]). Numerical results strongly indicate that the loss of phase does not induce a loss of perceptual information. Thus, some audio processing tasks can be achieved by modifying directly the modulus, without taking the phase into account, and then reconstructing a new signal from the modified modulus [4, 15], which requires to solve a phase retrieval problem.

The interest of the phase retrieval problem in the case of the wavelet transform is also theoretical.

A lot of work has been devoted to finding or characterizing systems of linear measurements whose modulus suffices to uniquely determine an unknown vector. If the underlying vector space is of finite dimension \(n\), it is known that \(4n-4\) generic linear forms are enough to guarantee the uniqueness [10]. Specific examples of such linear forms have been given by [7, 12]. References [8, 9] have constructed random measurements systems for which uniqueness holds with high probability and their reconstruction algorithm PhaseLift is guaranteed to succeed. These examples either rely on randomization techniques or have been carefully designed by means of algebraic tricks to guarantee the uniqueness of the reconstruction. By contrast, the (Cauchy) wavelet transform is a natural and deterministic system of linear measurements, for which uniqueness results can be proved.

Most of the research in phase retrieval has at first focused on the uniqueness of the reconstruction or on the algorithmic part. The question of whether the reconstruction is stable to measurement noise is more recent. References [5, 6] gave a necessary and sufficient condition for stability in the case where the unknown vector \(x\) is real but it only partially extends to the complex case. For several random measurement systems, it has been proved that, with high probability, all signals are determined by the modulus of the linear measurements, in a way which is stable to noise (see for example [8, 11]). Again, our measurement system presents the interest of being, on the contrary, totally deterministic. Moreover, to our knowledge, it is the first case where the question of stability does not have a binary answer (the reconstruction is “partially stable”) and where we are able to precisely describe the instabilities.

1.1 Outline and Results

In Sect. 2, we prove that a function is uniquely determined by the modulus of its Cauchy wavelet transform. Precisely, if \((\psi _j)_{j\in {\mathbb Z}}\) is a family of Cauchy wavelets, we have the following theorem:

Theorem

If \(f,g\in L^2({\mathbb R})\) are two functions such that \(\hat{f}(\omega )=\hat{g}(\omega )=0\) for any \(\omega <0\) and if \(|f\star \psi _j|=|g\star \psi _j|\) for all \(j\), then:

$$\begin{aligned} f=e^{i\phi }g \text{ for } \text{ some } \phi \in {\mathbb R}\end{aligned}$$

The proof uses harmonic analysis tools similar to the ones used by [1]. We also give a version of this result for finite signals. The proof is similar but easier. We show that it implies a uniqueness result for a system of \(4n-2\) linear measurements.

The condition \(\hat{f}(\omega )=\hat{g}(\omega )=0\) can seem restrictive but a very similar result holds if, instead of being analytic, \(f\) and \(g\) are real-valued, which is almost always the case in practical applications (Corollary 2.3).

Then, in Sect. 3, we prove (Theorem 3.1) that the reconstruction operator is continuous.

In Sect. 4, we explain why this operator is not uniformly continuous: there exist functions \(f,g\) such that \(||f-g||_2\not \ll ||f||_2\) and \(|f\star \psi _j|\approx |g\star \psi _j|\) for all \(j\). In the light of [6], we give simple examples of such \((f,g)\). We then describe a more general construction of pairs \((f,g)\). The principle of this construction is to multiply the wavelet transform of a fixed signal \(f\) by a “slow-varying” phase. Projecting this modified wavelet transform on the set of admissible wavelet transforms yields a new signal \(g\). For each \(j\), we have \(|f\star \psi _j|\approx |g\star \psi _j|\), but we may have \(f\not \approx g\).

In Sect. 5, we give explicit reconstruction formulas. We use them to prove a local form of stability of the reconstruction problem (Theorems 5.1 and 5.2). Our result is approximately the following:

Theorem

Let \(f,g\in L^2({\mathbb R})\) be such that \(\hat{f}(\omega )=\hat{g}(\omega )=0\) for any \(\omega <0\).

Let \(j\in {\mathbb Z},K\in {\mathbb N}^*\) be fixed.

We assume that, for each \(l=j+1,...,j+K\), we have, for all \(x\) in some interval:

$$\begin{aligned}&|f\star \psi _l(x)|\approx |g\star \psi _l(x)|\\&|f\star \psi _l(x)|, |g\star \psi _l(x)|\not \approx 0 \end{aligned}$$

Then, for some low-frequency function \(h\):

$$\begin{aligned} h.(f\star \psi _j)\approx g\star \psi _j \end{aligned}$$

This implies that, if the modulus of the Fourier transform does not have too small values, all the instabilities of the reconstruction operator are of the form described in Sect. 4.

Finally, in Sect. 6, we present an algorithm which exactly recovers a function from the modulus of its Cauchy wavelet transform (and a low-frequency component). This algorithm uses the explicit formulas derived in Sect. 5. It may fail when the wavelet transform is too close to zero at some points but otherwise it almost always succeeds. It does not get stuck into local minima, like most classical algorithms (for example [14]), and it is stable to noise.

1.2 Notations

For any \(f\in L^1({\mathbb R})\), we denote by \(\hat{f}\) or \(\mathcal {F}(f)\) the Fourier transform of \(f\):

$$\begin{aligned} \hat{f}(\omega )=\int _{\mathbb R}f(x)e^{-i\omega x}dx \quad \forall \omega \in {\mathbb R}\end{aligned}$$

We extend this definition to \(L^2\) by continuity.

We denote by \(\mathcal {F}^{-1}:L^2({\mathbb R})\rightarrow L^2({\mathbb R})\) the inverse Fourier transform and recall that, for any \(f\in L^1\cap L^2({\mathbb R})\):

$$\begin{aligned} \mathcal {F}^{-1}(f)(x)=\frac{1}{2\pi }\int _{\mathbb R}\hat{f}(\omega )e^{i\omega x}d\omega \end{aligned}$$

We denote by \(\mathbb {H}\) the Poincaré half-plane: \(\mathbb {H}=\{z\in {\mathbb C} \text{ s.t. } {\mathrm{Im}}\,z>0\}\).

2 Uniqueness of the Reconstruction for Cauchy Wavelets

2.1 Definition of the Wavelet Transform and Comparison with Fourier

The most important phase retrieval problem, which naturally arises in several physical settings, is the case of the Fourier transform:

$$\begin{aligned} \text{ reconstruct } f\in L^2({\mathbb R}) \text{ from } |\hat{f}| \end{aligned}$$

Without additional assumptions over \(f\), the reconstruction is clearly impossible: any choice of phase \(\phi :{\mathbb R}\rightarrow {\mathbb R}\) yield a signal \(g=\mathcal {F}^{-1}(|\hat{f}|e^{i\phi })\in L^2({\mathbb R})\) such that \(|\hat{g}|=|\hat{f}|\).

To avoid this problem, one may for example require that \(f\) is compactly supported. However [2, 19] showed that, even with this constraint, the reconstruction was still not possible.

More precisely, their result is the following one. If \(f\in L^2({\mathbb R})\) is a compactly supported function, then its Fourier transform \(\hat{f}\) admits a holomorphic extension \(F\) over all \({\mathbb C}\): \(F(z)=\int _{\mathbb R}f(x)e^{-izx}dx\). If \(g\in L^2({\mathbb R})\) is another compactly supported function and \(G\) is this holomorphic extension of its Fourier transform, the equality \(|\hat{f}|=|\hat{g}|\) happens to be equivalent to:

$$\begin{aligned} \forall z\in {\mathbb C},\quad F(z)\overline{F(\overline{z})}=G(z)\overline{G(\overline{z})} \end{aligned}$$

This in turn is essentially equivalent to:

$$\begin{aligned} \{z_n\}\cup \{\overline{z}_n\}=\{z'_n\}\cup \{\overline{z}'_n\} \end{aligned}$$
(2)

where the \((z_n)\) and \((z'_n)\) are the respective zeros of \(F\) and \(G\) over \({\mathbb C}\), counted with multiplicity. This means that \(F\) and \(G\) must have the same zeros, up to symmetry with respect to the real axis.

Conversely, for every choice of \(\{z'_n\}\) satisfying (2), it is possible to find a compactly supported \(g\) such that the zeroes of \(G\) are the \(z'_n\), which implies \(|\hat{f}|=|\hat{g}|\).

A similar result can be established in the case where the function \(f\in L^2({\mathbb R})\) is assumed to be identically zero on the negative real line [1] instead of compactly supported.

Let us now define the wavelet transform and compare it with the Fourier transform.

Let \(\psi \in L^1\cap L^2({\mathbb R})\) be a wavelet, that is a function such that \(\int _{\mathbb R}\psi (x)dx=0\). Let \(a>1\) be fixed; we call \(a\) the dilation factor. We define a family of wavelets by:

$$\begin{aligned} \forall x\in {\mathbb R}\quad \psi _j(x)=a^{-j}\psi (a^{-j}x) \quad \quad \Leftrightarrow \quad \quad \forall \omega \in {\mathbb R}\quad \hat{\psi }_j(\omega )=\hat{\psi }(a^j\omega ) \end{aligned}$$

The wavelet transform operator is:

$$\begin{aligned} f\in L^2({\mathbb R})\rightarrow \{f\star \psi _j\}_{j\in {\mathbb Z}}\in (L^2({\mathbb R}))^{\mathbb Z}\end{aligned}$$

This operator is unitary if the so-called Littlewood-Paley condition is satisfied:

$$\begin{aligned} \left( \underset{j}{\sum }|\hat{\psi }_j(\omega )|^2=1,\forall \omega \in {\mathbb R}\right) \quad \Rightarrow \quad \left( ||f||_2^2=\underset{j}{\sum }||f\star \psi _j||_2^2\quad \forall f\in L^2({\mathbb R})\right) \nonumber \\ \end{aligned}$$
(3)

The phase retrieval problem associated with this operator is:

$$\begin{aligned} \text{ reconstruct } f\in L^2({\mathbb R}) \text{ from } \{|f\star \psi _j|\}_{j\in {\mathbb Z}} \end{aligned}$$

This problem may or may not be well-posed, depending on which wavelet family we use.

The simplest case is the one where the wavelets are Shannon wavelets:

$$\begin{aligned} \hat{\psi }=1_{[1;a]}\Rightarrow \forall j\in {\mathbb Z},\quad \hat{\psi }_j(\omega )=1_{[a^{-j};a^{-j+1}]} \end{aligned}$$

Reconstructing \(f\) amounts to reconstruct \(\hat{f}1_{[a^{-j};a^{-j+1}]}=\hat{f}\hat{\psi }_j\) for all \(j\). For each \(j\), we have only two informations about \(\hat{f}\hat{\psi }_j\): its support is included in \([a^{-j};a^{-j+1}]\) and the modulus of its inverse Fourier transform is \(|f\star \psi _j|\). From the results of the Fourier transform case, it is not enough to determine uniquely \(\hat{f}\hat{\psi }_j\). Thus, for Shannon wavelets, the phase retrieval problem is as ill-posed as for the Fourier transform.

In this example, the problem comes from the fact that the \(\hat{\psi }_j\) have non-overlapping supports. Thus, reconstructing \(f\) is equivalent to reconstructing independently each \(f\star \psi _j\), which is not possible.

However, in general, the \(\hat{\psi }_j\) have overlapping supports and the \(f\star \psi _j\) are not independent for different values of \(j\). They satisfy the following relation:

$$\begin{aligned} (f\star \psi _j)\star \psi _k=(f\star \psi _k)\star \psi _j \quad \forall j,k\in {\mathbb Z}\end{aligned}$$
(4)

Thus, there is “redundancy” in the wavelet decomposition of \(f\). We can hope that this redundancy compensates the loss of phase of \(|f\star \psi _j|\). In the following, we show that, at least for specific wavelets, it is the case.

2.2 Uniqueness Theorem for Cauchy Wavelets

In this paragraph, we consider wavelets of the following form:

$$\begin{aligned}&\hat{\psi }(\omega )=\rho (\omega )\omega ^pe^{-\omega }1_{\omega >0}\nonumber \\&\hat{\psi }_j(\omega )=\hat{\psi }(a^j\omega ) \quad \forall \omega \in {\mathbb R}\end{aligned}$$
(5)

where \(p> 0\) and \(\rho \in L^\infty ({\mathbb R})\) is such that \(\rho (a\omega )=\rho (\omega )\) for almost every \(\omega \in {\mathbb R}\) and \(\rho (\omega )\ne 0,\forall \omega \).

The presence of \(\rho \) allows some flexibility in the choice of the family. In particular, if it is properly chosen, the Littlewood-Paley condition (3) may be satisfied. However, the proofs are the same with or without \(\rho \).

When \(\rho =1\), the wavelets of the form (5) are called Cauchy wavelets of order \(p\). Figure 1 displays an example of such wavelets. For these wavelets, the wavelet transform has the property to be a set of sections of a holomorphic function along horizontal lines.

Fig. 1
figure 1

Cauchy wavelets of order \(p=5\) for \(j=2,1,0,-1\), \(a=2\)

If \(f\in L^2({\mathbb R})\), its analytic part \(f_+\) is defined by:

$$\begin{aligned} \hat{f}_+(\omega )=2\hat{f}(\omega )1_{\omega >0} \end{aligned}$$
(6)

We define:

$$\begin{aligned} F(z)=\frac{1}{2\pi }\int _{\mathbb R}\omega ^p\hat{f}_+(\omega )e^{i\omega z}d\omega \quad \quad \forall z \text{ s.t. } {\mathrm{Im}}\,z>0 \end{aligned}$$
(7)

When \(f_+\) is sufficiently regular, \(F\) is the holomorphic extension of its \(p\)-th derivative.

For each \(y>0\), if we denote by \(F(.+iy)\) the function \(x\in {\mathbb R}\rightarrow F(x+iy)\):

$$\begin{aligned} F(.+iy)=\mathcal {F}^{-1}\left( 2\omega ^p\hat{f}(\omega )1_{\omega >0}e^{-y\omega } \right) \end{aligned}$$

Consequently, for each \(j\in {\mathbb Z}\):

$$\begin{aligned} \frac{a^{pj}}{2}F(.+ia^j)=f\star \psi _j\quad \forall j\in {\mathbb Z}\end{aligned}$$
(8)

So \(f\star \psi _j\) is the restriction of \(F\) to the horizontal line \({\mathbb R}+ia^j\). In this case, the relation (4) is equivalent to the fact that, for all \(j,k\), \(f\star \psi _j\) and \(f\star \psi _k\) are the restrictions of the same holomorphic function to the lines \({\mathbb R}+ia^j\) and \({\mathbb R}+ia^k\).

Reconstructing \(f_+\) from \(\{|f\star \psi _j|\}_{j\in {\mathbb Z}}\) now amounts to reconstruct the holomorphic function \(F:\mathbb {H}=\{z\in {\mathbb C},{\mathrm{Im}}\,z>0\}\rightarrow {\mathbb C}\) from its modulus on an infinite set of horizontal lines. Figure 2 shows these lines for \(a=2\). Our phase retrieval problem thus reduces to a harmonic analysis problem. Actually, knowing \(|F|\) on only two lines is already enough to recover \(F\) and one of the two lines may even be \({\mathbb R}\), the boundary of \(\mathbb {H}\).

Fig. 2
figure 2

Lines in \({\mathbb C}\) over which \(|F|\) is known (for \(a=2\))

Theorem 2.1

Let \(\alpha >0\) be fixed. Let \(F,G:\mathbb {H}\rightarrow {\mathbb C}\) be holomorphic functions such that, for some \(M>0\):

$$\begin{aligned} \int _{\mathbb R}|F(x+iy)|^2dx<M \quad \text{ and }\quad \int _{\mathbb R}|G(x+iy)|^2dx<M \quad \quad \forall y>0 \end{aligned}$$
(9)

We suppose that:

$$\begin{aligned}&|F(x+i\alpha )|=|G(x+i\alpha )| \text{ for } \text{ a.e. } x\in {\mathbb R}\\&\underset{y\rightarrow 0^+}{\lim }|F(x+iy)|=\underset{y\rightarrow 0^+}{\lim }|G(x+iy)| \text{ for } \text{ a.e. } x\in {\mathbb R}\end{aligned}$$

Then, for some \(\phi \in {\mathbb R}\):

$$\begin{aligned} F=e^{i\phi } G \end{aligned}$$
(10)

The proof is given in Sect. 2.4.

Corollary 2.2

We consider wavelets \((\psi _j)_{j\in {\mathbb Z}}\) of the form (5). Let \(f,g\in L^2({\mathbb R})\) be such that, for some \(j,k\in {\mathbb Z}\) with \(j\ne k\):

$$\begin{aligned} |f\star \psi _j|=|g\star \psi _j| \quad \text{ and }\quad |f\star \psi _k|=|g\star \psi _k| \end{aligned}$$
(11)

We denote by \(f_+\) and \(g_+\) the analytic parts of \(f\) and \(g\) (as defined in (6))

There exists \(\phi \in {\mathbb R}\) such that:

$$\begin{aligned} f_+=e^{i\phi } g_+ \end{aligned}$$
(12)

Proof

We may assume that \(j<k\). We define \(F\) and \(G\) as in (7), with the additional \(\rho \):

$$\begin{aligned} F(z)= & {} \frac{1}{2\pi }\int _{\mathbb R}\omega ^p\rho (\omega )\hat{f}_+(\omega )e^{i\omega z}d\omega \\ G(z)= & {} \frac{1}{2\pi }\int _{\mathbb R}\omega ^p\rho (\omega )\hat{g}_+(\omega )e^{i\omega z}d\omega \quad \forall z\in \mathbb {H}\end{aligned}$$

For each \(y>0\), \(F(.+iy)=\mathcal {F}^{-1}(2\omega ^p\rho (\omega )e^{-y\omega }1_{\omega >0}\hat{f}(\omega ))\). For \(y=a^j\) and \(y=a^k\), it implies \(F(.+ia^j)=\frac{2}{a^{jp}}f\star \psi _j\) and \(F(.+ia^k)=\frac{2}{a^{kp}}f\star \psi _k\). From (11):

$$\begin{aligned} |F(.+ia^j)|=\frac{2}{a^{pj}}|f\star \psi _j|=\frac{2}{a^{pj}}|g\star \psi _j|=|G(.+ia^j)|\\ |F(.+ia^k)|=\frac{2}{a^{pk}}|f\star \psi _k|=\frac{2}{a^{pk}}|g\star \psi _k|=|G(.+ia^k)| \end{aligned}$$

So the functions \(F(.+ia^j)\) and \(G(.+ia^j)\) coincide in modulus on two horizontal lines: \({\mathbb R}\) and \({\mathbb R}+i(a^k-a^j)\). From Theorem 2.1, they are equal up to a global phase. As \(\rho \) does not vanish, it implies that \(f_+\) and \(g_+\) are equal up to this global phase.

So that we can apply Theorem 2.1, we must verify that the condition (9) holds for \(F(.+ia^j)\) and \(G(.+ia^j)\). For any \(y>a^j\):

$$\begin{aligned} F(.+iy)&=\mathcal {F}^{-1}\left( 2\omega ^p\rho (\omega )\hat{f}(\omega )e^{-y\omega }\right) \\ \Rightarrow \quad ||F(.+iy)||_2^2&=\frac{1}{2\pi }||2\omega ^p\rho (\omega )\hat{f}(\omega )e^{-y\omega }1_{\omega \ge 0}||_2^2\\&\le \frac{1}{2\pi }||2\omega ^p\rho (\omega )\hat{f}(\omega )e^{-a^j\omega }1_{\omega \ge 0}||_2^2\\&=\left( \frac{2}{a^{jp}}\right) ^2||f\star \psi _j||_2^2 \end{aligned}$$

The same inequality holds for \(G\): the condition (9) is true for \(M=\left( \frac{2}{a^{jp}}\right) ^2||f\star \psi _j||_2^2\). \(\square \)

We have just proved that the modulus of the wavelet transform uniquely determines, up to a global phase, the analytic part of a function, that is its positive frequencies. On the contrary, as wavelets are analytic (\(\hat{\psi }_j(\omega )=0\) if \(\omega <0\)), the wavelet transform contains no information about the negative frequencies. In practice, signals are often real so negative frequencies are determined by positive ones and this latter limitation is not really important.

Corollary 2.3

Let \(f,g\in L^2({\mathbb R})\) be real-valued functions; \(f_+\) and \(g_+\) are their analytic parts. We assume that, for some \(j,k\in {\mathbb Z}\) such that \(j\ne k\):

$$\begin{aligned} |f\star \psi _j|=|g\star \psi _j|\quad \text{ and }\quad |f\star \psi _k|=|g\star \psi _k| \end{aligned}$$

Then, for some \(\phi \in {\mathbb R}\):

$$\begin{aligned} f_+=e^{i\phi }g_+\quad \Leftrightarrow \quad f={\mathrm{Re}}\,(e^{i\phi }g_+) \end{aligned}$$

Remark 2.4

Although the Corollary 2.2 holds for only two wavelets and does not require \(|f\star \psi _s|=|g\star \psi _s|\) for each \(s\in {\mathbb Z}\), the reconstruction of \(f\) from only two components, \(|f\star \psi _j|\) and \(|f\star \psi _k|\), is very unstable in practice. Indeed, \(\hat{\psi }_j\) and \(\hat{\psi }_k\) are concentrated around characteristic frequencies of order \(2^{-j}\) and \(2^{-k}\). Thus, from \(f\star \psi _j\) and \(f\star \psi _k\) (and even more so from \(|f\star \psi _j|\) and \(|f\star \psi _k|\)), reconstructing the frequencies of \(f\) which are not close to \(2^{-j}\) or \(2^{-k}\) is numerically impossible. It is an ill-conditioned deconvolution problem.

Before ending this section, let us note that, with a proof similar to the one of the Corollary 2.2, the Theorem 2.1 also implies the following result.

Corollary 2.5

Let \(\alpha >0\) be fixed. Let \(f,g\in L^2({\mathbb R})\) be such that \(\hat{f}(\omega )=\hat{g}(\omega )=0\) for every \(\omega <0\).

If \(|\hat{f}|=|\hat{g}|\) and \(|\widehat{f(t)e^{-\alpha t}}|=|\widehat{g(t)e^{-\alpha t}}|\), then, for some \(\phi \in {\mathbb R}\):

$$\begin{aligned} f=e^{i\phi } g \end{aligned}$$

This says that there is uniqueness in the phase retrieval problem associated to the masked Fourier transform, in the case where there are two masks, \(t\rightarrow 1\) and \(t\rightarrow e^{-\alpha t}\).

2.3 Discrete Case

Naturally, the functions we have to deal with in practice are generally not in \(L^2({\mathbb R})\). They are instead discrete finite signals. In this section, we explain how to switch from the continuous to the discrete finite setting. As we will see, all results derived in the continuous case have a discrete equivalent but proofs become simpler because they use polynomials instead of holomorphic functions.

Let \(f\in {\mathbb C}^n\) be a discrete function. We assume \(n\) is even. The discrete Fourier transform of \(f\) is:

$$\begin{aligned} \hat{f}[k]=\underset{s=0}{\overset{n-1}{\sum }}f[s]e^{-\frac{2\pi isk}{n}} \quad \quad \text{ for } k=-\frac{n}{2}+1,...,\frac{n}{2} \end{aligned}$$

The analytic part of \(f\) is \(f_+\in {\mathbb C}^n\) such that:

$$\begin{aligned} \hat{f}_+[k]&=0 \text{ if } -\frac{n}{2}+1\le k<0\\ \hat{f}_+[k]&=\hat{f}[k] \text{ if } k=0 \text{ or } k=\frac{n}{2}\\ \hat{f}_+[k]&=2\hat{f}[k] \text{ if } 0< k<\frac{n}{2} \end{aligned}$$

When \(f\) is real, \(f={\mathrm{Re}}\,(f_+)\).

We consider wavelets of the following form, for \(p>0\) and \(a>1\):

$$\begin{aligned} \hat{\psi }_j[k]=\rho (a^jk)(a^jk)^pe^{-a^jk}1_{k\ge 0} \quad \text{ for } \text{ all } j\in {\mathbb Z},k=-\frac{n}{2}+1,...,\frac{n}{2} \end{aligned}$$
(13)

where \(\rho :{\mathbb R}^+\rightarrow {\mathbb C}\) is such that \(\rho (ax)=\rho (x)\) for every \(x\) and \(\rho \) does not vanish.

As in the continuous case, the set \(\{|f\star \psi _j|\}_{j\in {\mathbb Z}}\) almost uniquely determines \(f_+\). Naturally, the global phase still cannot be determined. The mean value of \(f_+\) can also not be determined, because \(\hat{\psi }_j[0]=0\) for all \(j\). To determine the mean value and the global phase, we would need some additional information, for example the value of \(f\star \phi \) for some low frequency signal \(\phi \).

Theorem 2.6

(Discrete version of 2.2) Let \(f,g\in {\mathbb C}^n\) be discrete signals and \((\psi _j)_{j\in {\mathbb Z}}\) a family of wavelets of the form (13). Let \(j,l\in {\mathbb Z}\) be two distinct integers. Then:

$$\begin{aligned} |f\star \psi _j|=|g\star \psi _j| \quad \text{ and }\quad |f\star \psi _l|=|g\star \psi _l| \end{aligned}$$
(14)

if and only if, for some \(\phi \in {\mathbb R},c\in {\mathbb C}\):

$$\begin{aligned} f_+=e^{i\phi }g_++c \end{aligned}$$

Proof

We first assume \(f_+=e^{i\phi }g_++c\). Taking the Fourier transform of this equality yields:

$$\begin{aligned} \hat{f}[k]=e^{i\phi }\hat{g}[k]\quad \quad \text{ for } \text{ all } k=1,...,\frac{n}{2} \end{aligned}$$

As \(\hat{\psi }_j[k]=0\) for \(k=-\frac{n}{2}+1,...,0\):

$$\begin{aligned} \hat{f}[k]\hat{\psi }_j[k]= & {} e^{i\phi }\hat{g}[k]\hat{\psi }_j[k]\quad \quad \text{ for } \text{ all } k=-\frac{n}{2}+1,...,\frac{n}{2}\\&\Rightarrow \quad (f\star \psi _j=e^{i\phi }(g\star \psi _j)) \end{aligned}$$

So \(|f\star \psi _j|=|g\star \psi _j|\) and, similarly, \(|f\star \psi _l|=|g\star \psi _l|\).

We now suppose conversely that \(|f\star \psi _j|=|g\star \psi _j|\) and \(|f\star \psi _l|=|g\star \psi _l|\). We define:

$$\begin{aligned} F(z)=\frac{1}{n}\,\underset{k=1}{\overset{n/2}{\sum }}\hat{f}[k]\rho (k)k^pz^k\quad \quad G(z)=\frac{1}{n}\,\underset{k=1}{\overset{n/2}{\sum }}\hat{g}[k]\rho (k)k^pz^k\quad \quad \forall z\in {\mathbb C}\end{aligned}$$

These polynomials are the discrete equivalents of functions \(F\) and \(G\) used in the proof of 2.2. For all \(s=-\frac{n}{2}+1,...,\frac{n}{2}\):

$$\begin{aligned} F\left( e^{-a^j}e^{\frac{2\pi is}{n}}\right)&=\frac{1}{n}\,\underset{k=1}{\overset{n/2}{\sum }}\hat{f}[k]\rho (k)k^pe^{-a^jk}e^{\frac{2\pi iks}{n}}\\&=a^{-jp}\frac{1}{n}\,\underset{k=-n/2+1}{\overset{n/2}{\sum }}\hat{f}[k]\hat{\psi }_j[k]e^{\frac{2\pi iks}{n}}\\&=a^{-jp}\left( f\star \psi _j[s]\right) \end{aligned}$$

Similarly, \(G(e^{-a^j}e^{\frac{2\pi is}{n}})=a^{-jp}(g\star \psi _j[s])\) for all \(s=-\frac{n}{2}+1,...,\frac{n}{2}\).

Thus, \(f\star \psi _j\) and \(g\star \psi _j\) can be seen as the restrictions of \(F\) and \(G\) to the circle of radius \(e^{-a^j}\). This is similar to the continuous case, where \(f\star \psi _j\) and \(g\star \psi _j\) were the restrictions of functions \(F,G\) to horizontal lines.

The equality (14) implies:

$$\begin{aligned}&\left| F\left( e^{-a^j}e^{\frac{2\pi is}{n}}\right) \right| ^2=\left| G\left( e^{-a^j}e^{\frac{2\pi is}{n}}\right) \right| ^2 \quad \quad \text{ for } \text{ all } s=-\frac{n}{2}+1,...,\frac{n}{2}\\&\Leftrightarrow F\left( e^{-a^j}e^{\frac{2\pi is}{n}}\right) \overline{F}\left( e^{-a^j}e^{-\frac{2\pi is}{n}}\right) =G\left( e^{-a^j}e^{\frac{2\pi is}{n}}\right) \overline{G}\left( e^{-a^j}e^{-\frac{2\pi is}{n}}\right) \\&\quad \quad \text{ for } \text{ all } s=-\frac{n}{2}+1,...,\frac{n}{2} \end{aligned}$$

The functions \(z\rightarrow F(e^{-a^j}z)\overline{F}(e^{-a^j}\frac{1}{z})\) and \(z\rightarrow G(e^{-a^j}z)\overline{G}(e^{-a^j}\frac{1}{z})\) are polynomials of degree \(n-2\) (up to multiplication by \(z^{n/2-1}\)). They share \(n\) common values so they are equal. The same is true for \(l\) instead of \(j\) so:

$$\begin{aligned}&F(e^{-a^j}z)\overline{F}\left( e^{-a^j}\frac{1}{z}\right) = G(e^{-a^j}z)\overline{G}\left( e^{-a^j}\frac{1}{z}\right) \quad \quad \forall z\in {\mathbb C}\end{aligned}$$
(15)
$$\begin{aligned}&F(e^{-a^l}z)\overline{F}\left( e^{-a^l}\frac{1}{z}\right) = G(e^{-a^l}z)\overline{G}\left( e^{-a^l}\frac{1}{z}\right) \quad \quad \forall z\in {\mathbb C}\end{aligned}$$
(16)

If we show that these equalities imply \(F=e^{i\phi }G\) for some \(\phi \in {\mathbb R}\), the proof will be finished. Indeed, from the definition of \(F\) and \(G\), we will then have \(\hat{f}[k]=e^{i\phi }\hat{g}[k]\) for all \(k=1,...,\frac{n}{2}\) so \(\hat{f}_+[k]=e^{i\phi }\hat{g}_+[k]\) for all \(k\ne 0\). It implies \(f_+=e^{i\phi }g_++c\) for \(c=\frac{1}{n}\left( \hat{f}_+[0]-e^{i\phi }\hat{g}_+[0]\right) \).

It suffices to show that \(F\) and \(G\) have the same roots (with multiplicity) because then, they will be proportional and, from (15), (16), the proportionality constant must be of modulus \(1\).

For each \(z\in {\mathbb C}\), let \(\mu _F(z)\) (resp. \(\mu _G(z)\)) be the multiplicity of \(z\) as a root of \(F\) (resp. \(G\)). The polynomials of (15) are of respective degree \(n-2\mu _F(0)\) and \(n-2\mu _G(0)\) so \(\mu _F(0)=\mu _G(0)\).

For all \(z\ne 0\), the multiplicity of \(e^{a^j}z\) as a zero of (15) is:

$$\begin{aligned} \mu _F(z)+\mu _F\left( \frac{e^{-2a^j}}{\overline{z}}\right) =\mu _G(z)+\mu _G\left( \frac{e^{-2a^j}}{\overline{z}}\right) \end{aligned}$$

and the multiplicity of \(e^{2a^j-a^l}z\) as a zero of (16) is:

$$\begin{aligned} \mu _F\left( e^{2(a^j-a^l)} z\right) +\mu _F\left( \frac{e^{-2a^j}}{\overline{z}}\right) =\mu _G\left( e^{2(a^j-a^l)} z\right) +\mu _G\left( \frac{e^{-2a^j}}{\overline{z}}\right) \end{aligned}$$

Substracting this last equality to the previous one implies that, for all \(z\):

$$\begin{aligned} \mu _F(z)-\mu _G(z)=\mu _F\left( e^{2(a^j-a^l)}z\right) -\mu _G\left( e^{2(a^j-a^l)}z\right) \end{aligned}$$

By applying this equality several times, we get, for all \(n\in {\mathbb N}\):

$$\begin{aligned} \mu _F(z)-\mu _G(z)&=\mu _F\left( e^{2(a^j-a^l)}z\right) -\mu _G\left( e^{2(a^j-a^l)}z\right) \\&=\mu _F\left( e^{4(a^j-a^l)}z\right) -\mu _G\left( e^{4(a^j-a^l)}z\right) \\&=...\\&=\mu _F\left( e^{2n(a^j-a^l)}z\right) -\mu _G\left( e^{2n(a^j-a^l)}z\right) \end{aligned}$$

As \(F\) and \(G\) have a finite number of roots, \(\mu _F(e^{2n(a^j-a^l)}z)-\mu _G(e^{2n(a^j-a^l)}z)=0\) if \(n\) is large enough. So \(\mu _F(z)=\mu _G(z)\) for all \(z\in {\mathbb C}\). \(\square \)

As in Sect. 2.2, a very similar proof gives a uniqueness result for the case of the Fourier transform with masks, if the masks are well-chosen.

Theorem 2.7

(Discrete version of 2.5) Let \(\alpha >0\) be fixed. Let \(f,g\in {\mathbb C}^{2n-1}\) be two discrete signals with support in \(\{0,...,n-1\}\):

$$\begin{aligned} f[s]=g[s]=0 \text{ for } s=n,...,2n-2 \end{aligned}$$

If \(|\hat{f}|=|\hat{g}|\) and \(|\widehat{f[s]e^{-s\alpha }}|=|\widehat{g[s]e^{-s\alpha }}|\), then, for some \(\phi \in {\mathbb R}\):

$$\begin{aligned} f=e^{i\phi }g \end{aligned}$$

Remark that this theorem describes systems of \(4n-2\) linear measurements whose moduli are enough to recover each complex signal of dimension \(n\). As discussed in the introduction, it is known that \(4n-4\) generic measurements always achieve this property [10]. However, it is in general difficult to find deterministic systems for which it can be proven.

2.4 Proof of Theorem 2.1

Theorem

(2.1) Let \(\alpha >0\) be fixed. Let \(F,G:\mathbb {H}\rightarrow {\mathbb C}\) be holomorphic functions such that, for some \(M>0\):

$$\begin{aligned} \int _{\mathbb R}|F(x+iy)|^2dx<M \quad \text{ and }\quad \int _{\mathbb R}|G(x+iy)|^2dx<M \quad \quad \forall y>0 \end{aligned}$$
(9)

We suppose that:

$$\begin{aligned}&|F(x+i\alpha )|=|G(x+i\alpha )| \text{ for } \text{ a.e. } x\in {\mathbb R}\\&\underset{y\rightarrow 0^+}{\lim }|F(x+iy)|=\underset{y\rightarrow 0^+}{\lim }|G(x+iy)| \text{ for } \text{ a.e. } x\in {\mathbb R}\end{aligned}$$

Then, for some \(\phi \in {\mathbb R}\):

$$\begin{aligned} F=e^{i\phi } G \end{aligned}$$
(17)

Proof of Theorem 2.1

This demonstration relies on the ideas used by [1].

If \(F= 0\), the theorem is true: \(G\) is null over a whole line and, as \(G\) is holomorphic, \(G=0\). The same reasoning holds if \(G=0\). We now assume \(F\ne 0,G\ne 0\).

The central point of the proof is to factorize the functions \(F,F(.+i\alpha ),G,G(.+i\alpha )\) as in the following lemma. \(\square \)

Lemma 2.8

[16]Footnote 1 The function \(F\) admits the following factorization:

$$\begin{aligned} F(z)=e^{ic+i\beta z}B(z)D(z)S(z) \end{aligned}$$

Here, \(c\) and \(\beta \) are real numbers. The function \(B\) is a Blaschke product. It is formed with the zeros of \(F\) in the upper half-plane \(\mathbb {H}\). We call \((z_k)\) these zeros, counted with multiplicity, with the exception of \(i\). We call \(m\) the multiplicity of \(i\) as zero.

$$\begin{aligned} B(z)=\left( \frac{z-i}{z+i}\right) ^{m}\underset{k}{\prod }\frac{|z_k-i|}{z_k-i}\frac{|z_k+i|}{z_k+i}\frac{z-z_k}{z-\overline{z}_k} \end{aligned}$$
(18)

This product converges over \(\mathbb {H}\), which is equivalent to:

$$\begin{aligned} \underset{k}{\sum }\frac{{\mathrm{Im}}\,z_k}{1+|z_k|^2}<+\infty \end{aligned}$$
(19)

The functions \(D\) and \(S\) are defined by:

$$\begin{aligned}&D(z)=\exp \left( \frac{1}{\pi i}\int _{{\mathbb R}}\frac{1+tz}{t-z}\frac{\log |F(t)|}{1+t^2}dt\right) \end{aligned}$$
(20)
$$\begin{aligned}&S(z)=\exp \left( \frac{i}{\pi }\int _{{\mathbb R}}\frac{1+tz}{t-z}dE(t)\right) \end{aligned}$$
(21)

In the first equation, \(|F(t)|\) is the limit of \(|F|\) on \({\mathbb R}\). In the second one, \(dE\) is a positive bounded measure, singular with respect to Lebesgue measure.

Both integrals converge absolutely for any \(z\in \mathbb {H}\).

The same factorization can be applied to \(F(.+i\alpha ),G\) and \(G(.+i\alpha )\):

$$\begin{aligned} \begin{array}{ll} F(z)=e^{ic_F+i\beta _F z}B_F(z)D_F(z)S_F(z)&{} G(z)=e^{ic_G+i\beta _G z}B_G(z)D_G(z)S_G(z)\\ F(z+i\alpha )=e^{i\tilde{c}_F+i\tilde{\beta }_F z}\tilde{B}_F(z)\tilde{D}_F(z)\tilde{S}_F(z)&{} G(z+i\alpha )=e^{i\tilde{c}_G+i\tilde{\beta }_G z}\tilde{B}_G(z)\tilde{D}_G(z)\tilde{S}_G(z) \end{array} \end{aligned}$$

As \(F(.+i\alpha )\) and \(G(.+i\alpha )\) are analytic on the real line, they actually have no singular part \(S\). The proof may be found in [13, Theorem 6.3]; it is done for functions on the unit disk but also holds for functions on \(\mathbb {H}\).

$$\begin{aligned} \tilde{S}_F=\tilde{S}_G=1 \end{aligned}$$
(22)

Because \(\underset{y\rightarrow 0^+}{\lim }|F(.+iy)|=\underset{y\rightarrow 0^+}{\lim }|G(.+iy)|\) and \(|F(.+i\alpha )|=|G(.+i\alpha )|\), we have \(D_F=D_G\) and \(\tilde{D}_F=\tilde{D}_G\). We show that it implies a relation between the \(B\)’s, that is, a relation between the zeros of \(F\) and \(G\). From this relation, we will be able to prove that \(F\) and \(G\) have the same zeros and that, up to a global phase, they are equal.

For all \(z\in \mathbb {H}\):

$$\begin{aligned}&\frac{e^{ic_F+i\beta _F(z+i\alpha )}B_F(z+i\alpha )D_F(z+i\alpha )S_F(z+i\alpha )}{e^{i\tilde{c}_F+i\tilde{\beta }_F z}\tilde{B}_F(z)\tilde{D}_F(z)} =\frac{F(z+i\alpha )}{F(z+i\alpha )}=1\\&\qquad \qquad =\frac{G(z+i\alpha )}{G(z+i\alpha )}\\&\qquad \qquad =\frac{e^{ic_G+i\beta _G(z+i\alpha )}B_G(z+i\alpha )D_G(z+i\alpha )S_G(z+i\alpha )}{e^{i\tilde{c}_G+i\tilde{\beta }_G z}\tilde{B}_G(z)\tilde{D}_G(z)} \end{aligned}$$
$$\begin{aligned} \Rightarrow \quad \frac{B_F(z+i\alpha )\tilde{B}_G(z)}{B_G(z+i\alpha )\tilde{B}_F(z)} =e^{iC+iBz}\frac{S_G(z+i\alpha )}{S_F(z+i\alpha )}\\ \text{ for } \text{ some } C,B\in {\mathbb R}\nonumber \end{aligned}$$
(23)

Equality (23) holds only for \(z\in \mathbb {H}\). It is a priori not even defined for \(z\in {\mathbb C}-\mathbb {H}\). Before going on, we must show that (23) is meaningful and still valid over all \({\mathbb C}\). This is the purpose of the two following lemmas, whose proofs may be found in Appendix 1.

For \(z\in \mathbb {H}\), we denote by \(\mu _F(z)\) (resp. \(\mu _G(z)\)) the multiplicity of \(z\) as a zero of \(F\) (resp. \(G\)).

Lemma 2.9

There exists a meromorphic function \(B_w:{\mathbb C}\rightarrow {\mathbb C}\) such that:

$$\begin{aligned} B_w(z)=\frac{B_F(z+i\alpha )\tilde{B}_G(z)}{B_G(z+i\alpha )\tilde{B}_F(z)}\quad \quad \forall z\in \mathbb {H}\end{aligned}$$

Moreover, for all \(z\in \mathbb {H}\), the multiplicity of  \(\overline{z}-i\alpha \) as a pole of \(B_w\) is:

$$\begin{aligned} (\mu _F(z)-\mu _G(z))-(\mu _F(z+2i\alpha )-\mu _G(z+2i\alpha )) \end{aligned}$$
(24)

Lemma 2.10

For all \(z\in \mathbb {H}\), \(\frac{S_G(z+i\alpha )}{S_F(z+i\alpha )}=1\).

Equation (23) and the Lemmas 2.9 and 2.10 give, for all \(z\in \mathbb {H}\) and thus all \(z\in {\mathbb C}\) (because functions are meromorphic):

$$\begin{aligned} B_w(z)=e^{iC+iBz}\quad \quad \forall z\in {\mathbb C}\end{aligned}$$

The function \(e^{iC+iB z}\) has no zero nor pole so, from (24), for all \(z\in \mathbb {H}\):

$$\begin{aligned} (\mu _F(z)-\mu _G(z))-(\mu _F(z+2i\alpha )-\mu _G(z+2i\alpha )) =0 \end{aligned}$$

So if \(\mu _F(z)\ne \mu _G(z)\) for some \(z\), we may by symmetry assume that \(\mu _F(z)>\mu _G(z)\) and, in this case, for all \(n\in {\mathbb N}^*\):

$$\begin{aligned} \mu _F(z+2ni\alpha )-\mu _G(z+2ni\alpha )&=...\\&=\mu _F(z+2i\alpha )-\mu _G(z+2i\alpha )\\&=\mu _F(z)-\mu _G(z)>0 \end{aligned}$$

In particular, \(z+2ni\alpha \) is a zero of \(F\) for all \(n\in {\mathbb N}^*\). But this is impossible because, if it is the case, \(\frac{\text{ Im }(z+2ni\alpha )}{1+|z+2ni\alpha |^2}\sim \frac{1}{2n\alpha }\) and:

$$\begin{aligned} \underset{k}{\sum }\frac{{\mathrm{Im}}\,z_k}{1+|z_k|^2}=+\infty \end{aligned}$$

where the \((z_k)\) are the zeros of \(F\) over \(\mathbb {H}\). It is in contradiction with (19).

So for all \(z\in \mathbb {H}\), \(\mu _F(z)=\mu _G(z)\). This implies that \(B_F=B_G\) and \(\tilde{B}_F=\tilde{B}_G\). So, for all \(z\in \mathbb {H}\):

$$\begin{aligned} F(z+i\alpha )= & {} e^{i\tilde{c}_F+i\tilde{\beta }_Fz}\tilde{B}_F(z)\tilde{D}_F(z) =e^{i\tilde{c}_F+i\tilde{\beta }_Fz}\tilde{B}_G(z)\tilde{D}_G(z) =e^{i\gamma +i\delta z} G(z+i\alpha )\\&\text{ with } \gamma =\tilde{c}_F-\tilde{c}_G \text{ and } \delta =\tilde{\beta }_F-\tilde{\beta }_G \end{aligned}$$

The functions \(F\) and \(G\) are meromorphic over \(\mathbb {H}\) so the last equality actually holds over all \(\{z\in {\mathbb C} \text{ s.t. } {\mathrm{Im}}\,z>-\alpha \}\).

$$\begin{aligned} \left| \underset{y\rightarrow 0^+}{\lim }F(x+iy)\right|&=\left| \underset{y\rightarrow 0^+}{\lim }e^{i\gamma +i\delta (x+iy-i\alpha )} G(x+iy)\right| \\&=e^{\delta \alpha }\left| \underset{y\rightarrow 0^+}{\lim } G(x+iy)\right| \end{aligned}$$

Consequently, because \(\delta \) is real and \(\alpha \ne 0\), \(\delta =0\). So:

$$\begin{aligned} F(z)=e^{i\gamma } G(z)\quad \quad \forall z\in \mathbb {H}\end{aligned}$$

\(\square \)

3 Weak Stability of the Reconstruction

In the previous section, we proved that the operator \(U:f\rightarrow \{|f\star \psi _j|\}\) was injective, up to a global phase, for Cauchy wavelets. So we can theoretically reconstruct any function \(f\) from \(U(f)\). However, if we want the reconstruction to be possible in practice, we also need it to be stable to a small amount of noise:

$$\begin{aligned} \left( U(f_1)\approx U(f_2)\right) \quad \Rightarrow \quad \left( f_1\approx f_2\right) \end{aligned}$$

In this section, we show that it is, in some sense, the case: \(U^{-1}\) is continuous.

Contrarily to the ones of the previous section, this result is not specific to Cauchy wavelets: it holds for all reasonable wavelets, as soon as \(U\) is injective.

3.1 Definitions

As in the previous section, we consider only functions without negative frequencies:

$$\begin{aligned} L^2_+({\mathbb R})=\{f\in L^2({\mathbb R}) \text{ s.t. } \hat{f}(\omega )=0 \text{ for } \text{ a.e. } \omega <0\} \end{aligned}$$

As the reconstruction is always up to a global phase, we need to define the quotient \(L^2_+({\mathbb R})/S^1\):

$$\begin{aligned} f=g \text{ in } L^2_+({\mathbb R})/S^1 \quad \Leftrightarrow \quad f=e^{i\phi }g \text{ for } \text{ some } \phi \in {\mathbb R}\end{aligned}$$

The set \(L^2_+({\mathbb R})/S^1\) is equipped with a natural metric:

$$\begin{aligned} D_2(f,g)=\underset{\phi \in {\mathbb R}}{\inf }\,||f-e^{i\phi } g||_2 \end{aligned}$$

Remark that \(D_2(f,0)=||f||_2\).

We also define:

$$\begin{aligned}&L^2_{{\mathbb Z}}({\mathbb R})=\left\{ (h_j)_{j\in {\mathbb Z}}\in L^2({\mathbb R})^{\mathbb Z} \text{ s.t. } \underset{j}{\sum }||h_j||_2^2<+\infty \right\} \\&\left| \left| (h_j)-(h'_j) \right| \right| _2=\sqrt{\underset{j\in {\mathbb Z}}{\sum }||h_j-h'_j||_2^2}\quad \text{ for } \text{ any } (h_j),(h'_j)\in L^2_{\mathbb Z}({\mathbb R}) \end{aligned}$$

We are interested in the operator \(U\):

$$\begin{aligned} \begin{array}{lrll} U: &{}L^2_+({\mathbb R})/S^1&{}\rightarrow &{} L^2_{{\mathbb Z}}({\mathbb R})\\ &{}f&{}\rightarrow &{}(|f\star \psi _j|)_{j\in {\mathbb Z}} \end{array} \end{aligned}$$
(25)

We require two conditions over the wavelets. They must be analytic:

$$\begin{aligned} \hat{\psi }_j(\omega )=0 \text{ for } \text{ a.e. } \omega <0,j\in {\mathbb Z}\end{aligned}$$
(26)

and satisfy an approximate Littlewood-Paley inequality:

$$\begin{aligned} A\le \underset{j\in {\mathbb Z}}{\sum }|\hat{\psi }_j(\omega )|^2\le B \quad \quad \text{ for } \text{ a.e. } \omega >0,\text{ for } \text{ some } A,B>0 \end{aligned}$$
(27)

This last inequality and the fact that \(D_2(f,0)=||f||_2\) imply:

$$\begin{aligned} \forall f\in L^2_+({\mathbb R})/S^1,\quad \sqrt{A}D_2(f,0) \le ||U(f)||_2\le \sqrt{B}D_2(f,0) \end{aligned}$$
(28)

In particular, it ensures the continuity of \(U\).

3.2 Weak Stability Theorem

Theorem 3.1

We suppose that, for all \(j\in {\mathbb Z}\), \(\psi _j\in L^1({\mathbb R})\cap L^2({\mathbb R})\) and that (26) and (27) hold. We also suppose that \(U\) is injective. Then:

  1. (i)

    The image of \(U\), \(I_U=\{U(f) \text{ s.t. } f\in L^2_+({\mathbb R})/S^1\}\) is closed in \(L^2_{\mathbb Z}({\mathbb R})\).

  2. (ii)

    The application \(U^{-1}:I_U\rightarrow L^2_+({\mathbb R})/S^1\) is continuous.

Proof

What we have to prove is the following: if \((U(f_n))_{n\in {\mathbb N}}\) converges towards a limit \(v\in L^2_{\mathbb Z}({\mathbb R})\), then \(v=U(g)\) for some \(g\in L^2_+({\mathbb R})/S^1\) and \(f_n\rightarrow g\) in \(L^2_+({\mathbb R})/S^1\).

So let \((U(f_n))_{n\in {\mathbb N}}\) be a sequence of elements in \(I_U\), which converges in \(L^2_{\mathbb Z}({\mathbb R})\). Let \(v=(h_j)_{j\in {\mathbb Z}}\in L^2_{\mathbb {Z}}({\mathbb R})\) be the limit. We show that \(v\in I_U\). \(\square \)

Lemma 3.2

For all \(j\in {\mathbb Z}\), \(\{f_n\star \psi _j\}_{n\in {\mathbb N}}\) is relatively compact in \(L^2({\mathbb R})\) (that is, the closure of this set in \(L^2({\mathbb R})\) is compact).

The proof of this lemma is given in Appendix 2. It uses the Riesz–Fréchet–Kolmogorov theorem, which gives an explicit characterization of the relatively compact subsets of \(L^2({\mathbb R})\).

For every \(j\in {\mathbb Z}\), \(\{f_n\star \psi _j\}_{n\in {\mathbb N}}\) is thus included in a compact subset of \(L^2({\mathbb R})\). In a compact set, every sequence admits a convergent subsequence: there exists \(\phi :{\mathbb N}\rightarrow {\mathbb N}\) injective such that \((f_{\phi (n)}\star \psi _j)_{n\in {\mathbb N}}\) converges in \(L^2({\mathbb R})\). Actually, we can choose \(\phi \) such that \((f_{\phi (n)}\star \psi _j)_n\) converges for any \(j\) (and not only for a single one). We donote by \(l_j\) the limits.

Lemma 3.3

(Proof in Appendix 2) There exists \(g\in L^2_+({\mathbb R})\) such that \(l_j=g\star \psi _j\) for every \(j\). Moreover, \(f_{\phi (n)}\rightarrow g\) in \(L^2({\mathbb R})\).

As \(U\) is continuous, \(U(g)=\underset{n}{\lim }\,U(f_{\phi (n)})=v\). So \(v\) belongs to \(I_U\).

The \(g\) such that \(U(g)=v\) is uniquely defined in \(L^2_+({\mathbb R})/S^1\) because \(U\) is injective (it does not depend on the choice of \(\phi \)). We must now show that \(f_n\rightarrow g\).

From the Lemma 3.3, \((f_n)_n\) admits a subsequence \((f_{\phi (n)})\) which converges to \(g\). By the same reasoning, every subsequence \((f_{\psi (n)})_{n}\) of \((f_n)_n\) admits a subsequence which converges to \(g\). This implies that \((f_n)_n\) globally converges to \(g\). \(\square \)

Remark 3.4

The same demonstration gives a similar result for wavelets on \({\mathbb R}^d\), of the form \((\psi _{j,\gamma })_{j\in {\mathbb Z},\gamma \in \Gamma }\), for \(\Gamma \) a finite set of parameters.

4 The Reconstruction is Not Uniformly Continuous

Theorem 3.1 states that the operator \(U:f\rightarrow \{|f\star \psi _j|\}_{j\in {\mathbb Z}}\) has a continuous inverse \(U^{-1}\), when it is invertible. However, \(U^{-1}\) is not uniformly continuous. Indeed, for any \(\epsilon >0\), there exist \(g_1,g_2\in L^2_+({\mathbb R})/S^1\) such that:

$$\begin{aligned} ||U(g_1)-U(g_2)||<\epsilon \quad \text{ but }\quad ||g_1-g_2||\ge 1 \end{aligned}$$
(29)

In this section, we describe a way to construct such “unstable” pairs \((g_1,g_2)\): we start from any \(g_1\) and modulate each \(g_1\star \psi _j\) by a low-frequency phase. We then (approximately) invert this modified wavelet transform and obtain \(g_2\).

This construction seems to be “generic” in the sense that it includes all the instabilities that we have been able to observe in practice.

4.1 A Simple Example

To begin with, we give a simple example of instabilities and relate it to known results about the stability in general phase retrieval problems.

In phase retrieval problems with (a finite number of) real measurements, the stability of the reconstruction operator is characterized by the following theorem [5, 6].

Theorem 4.1

Let \(A\in {\mathbb R}^{m\times n}\) be a measurement matrix. For any \(S\subset \{1,...,m\}\), we denote by \(A_S\) the matrix obtained by discarding the rows of \(A\) whose indexes are not in \(S\). We call \(\lambda ^2_S\) the lower frame bound of \(A_S\), that is, the largest real number such that:

$$\begin{aligned} ||A_Sx||_2^2\ge \lambda ^2_S||x||_2^2 \quad \quad \forall x\in {\mathbb R}^n \end{aligned}$$

Then, for any \(x,y\in {\mathbb R}^n\):

$$\begin{aligned} ||\,|Ax|-|Ay|\,||_2\ge \left( \underset{S}{\min }\sqrt{\lambda ^2_S+\lambda ^2_{S^c}}\right) .\min (||x-y||_2,||x+y||_2) \end{aligned}$$

Moreover, \(\underset{S}{\min }\sqrt{\lambda ^2_S+\lambda ^2_{S^c}}\) is the optimal constant.

This theorem implies that, in the real case, the reconstruction operator has a Lipschitz constant exactly equal to \(1/\left( \underset{S}{\min }\sqrt{\lambda ^2_S+\lambda ^2_{S^c}}\right) \). In the complex case, it is only possible to prove that the Lipschitz constant is at least \(1/\left( \underset{S}{\min }\sqrt{\lambda ^2_S+\lambda ^2_{S^c}}\right) \).

Theorem 4.2

Let \(A\in {\mathbb C}^{m\times n}\) be a measurement matrix. There exist \(x,y\in {\mathbb C}^n\) such that:

$$\begin{aligned} ||\,|Ax|-|Ay|\,||_2\le \left( \underset{S}{\min }\sqrt{\lambda _S^2+\lambda _{S^c}^2}\right) .\underset{|\eta |=1}{\min }(||x-\eta y||_2) \end{aligned}$$

Consequently, if the set of measurements can be divided in two parts \(S\) and \(S^c\) such that \(\lambda _S^2\) and \(\lambda _{S^c}^2\) are very small, then the reconstruction is not stable.

Such a phenomenon occurs in the case of the wavelet transform. We define:

$$\begin{aligned} S=\{\psi _j \text{ s.t. } j\ge 0\} \text{ and } S^c=\{\psi _j \text{ s.t. } j<0\} \end{aligned}$$

Let us fix a small \(\epsilon >0\). We choose \(f_1,f_2\in L^2({\mathbb R})\) such that:

$$\begin{aligned} \hat{f}_1(x)=0 \text{ if } |x|<1/\epsilon \quad \text{ and } \quad \hat{f}_2(x)=0 \text{ if } x\notin [-\epsilon ;\epsilon ] \end{aligned}$$

For every \(\psi _j\in S\), \(f_1\star \psi _j\approx 0\) because the characteristic frequency of \(\psi _j\) is smaller than \(1\) and \(f_1\) is a very high frequency function. So:

$$\begin{aligned} |(f_1+f_2)\star \psi _j|\approx |f_2\star \psi _j|=|-f_2\star \psi _j|\approx |(f_1-f_2)\star \psi _j| \end{aligned}$$

And similarly, for \(\psi _j\in S^c\), \(f_2\star \psi _j\approx 0\) and:

$$\begin{aligned} |(f_1+f_2)\star \psi _j|\approx |f_1\star \psi _j|\approx |(f_1-f_2)\star \psi _j| \end{aligned}$$

As a consequence:

$$\begin{aligned} \{|(f_1+f_2)\star \psi _j|\}_{j\in {\mathbb Z}}\approx \{|(f_1-f_2)\star \psi _j|\}_{j\in {\mathbb Z}} \end{aligned}$$

Nevertheless, \(f_1+f_2\) and \(f_1-f_2\) may not be close in \(L^2({\mathbb R})/S^1\): \(g_1=f_1+f_2\) and \(g_2=f_1-f_2\) satisfy (29).

Figure 3 displays an example of this kind.

Fig. 3
figure 3

a Wavelet transform of \(f_1\). b Wavelet transform of \(f_2\). c Wavelet transform of \(f_1+f_2\) (solid blue) and \(f_1-f_2\) (dashed red). d Modulus of the wavelet transforms of \(f_1+f_2\) and \(f_1-f_2\); the two modulus are almost equal In each column, each graph corresponds to a specific frequency; the highest frequency is on top and the lowest one at bottom. For complex functions, only the real part is displayed (Color figure online)

4.2 A Wider Class of Instabilities

We now describe the construction of more general “unstable” pairs \((g_1,g_2)\).

Let \(g_1\in L^2({\mathbb R})\) be any function. We aim at finding \(g_2\in L^2({\mathbb R})\) such that, for all \(j\in {\mathbb Z}\):

$$\begin{aligned} (g_1\star \psi _j)e^{i\phi _j}\approx g_2\star \psi _j \end{aligned}$$
(30)

for some real functions \(\phi _j\).

In other words, we must find phases \(\phi _j\) such that \((g_1\star \psi _j)e^{i\phi _j}\) is approximately equal to the wavelet transform of some \(g_2\in L^2({\mathbb R})\). Any phases \(\phi _j(t)\) which vary slowly both in \(t\) and in \(j\) satisfy this property.

Indeed, if the \(\phi _j(t)\) vary “slowly enough”, we set:

$$\begin{aligned} g_2=\underset{j\in {\mathbb Z}}{\sum }\left( (g_1\star \psi _j)e^{i\phi _j}\right) \star \tilde{\psi }_j \end{aligned}$$

where \(\{\tilde{\psi }_j\}_{j\in {\mathbb Z}}\) are the dual wavelets associated to \(\{\psi _j\}\).

Then, for all \(k\in {\mathbb Z},t\in {\mathbb R}\):

$$\begin{aligned} g_2\star \psi _k(t)&=\underset{j\in {\mathbb Z}}{\sum }\left( (g_1\star \psi _j)e^{i\phi _j}\right) \star \tilde{\psi }_j\star \psi _k(t)\\&=\underset{j\in {\mathbb Z}}{\sum }\int _{\mathbb R}e^{i\phi _j(t-u)}(g_1\star \psi _j)(t-u)(\tilde{\psi }_j\star \psi _k)(u)\,du\\ (g_1\star \psi _k(t))e^{i\phi _k(t)}&=e^{i\phi _k(t)}\underset{j\in {\mathbb Z}}{\sum }(g_1\star \psi _j)\star (\tilde{\psi _j}\star \psi _k)(t)\\&=\underset{j\in {\mathbb Z}}{\sum }\int _{\mathbb R}e^{i\phi _k(t)}(g_1\star \psi _j)(t-u)(\tilde{\psi }_j\star \psi _k)(u)\,du \end{aligned}$$

So:

$$\begin{aligned} g_2\star \psi _k(t)-(g_1\star \psi _k(t))e^{i\phi _k(t)}= & {} \underset{j\in {\mathbb Z}}{\sum }\int _{\mathbb R}\left( e^{i\phi _j(t-u)} -e^{i\phi _k(t)}\right) (g_1\star \psi _j)\nonumber \\&(t-u)(\tilde{\psi }_j\star \psi _k)(u)\,du \end{aligned}$$
(31)

The function \(\tilde{\psi }_j\star \psi _k(u)\) is negligible if \(j\) is not of the same order as \(k\) or if \(u\) is too far away from \(0\). It means that, for some \(C\in {\mathbb N},U\in {\mathbb R}\) (which may depend on \(k\)):

$$\begin{aligned} g_2\star \psi _k(t)-(g_1\star \psi _k(t))e^{i\phi _k(t)}\approx & {} \underset{|j-k|\le C}{\sum }\int _{[-U;U]} \left( e^{i\phi _j(t-u)} -e^{i\phi _k(t)}\right) \\&\qquad (g_1\star \psi _j)(t-u)(\tilde{\psi }_j\star \psi _k)(u)\,du \end{aligned}$$

If \(\phi _j(t-u)\) does not vary much over \([k-C;k+C]\times [-U;U]\), it gives the desired relation:

$$\begin{aligned} g_2\star \psi _k(t)-(g_1\star \psi _k(t))e^{i\phi _k(t)} \approx 0 \end{aligned}$$

which is (30).

To summarize, we have described a way to construct \(g_1,g_2\in L^2({\mathbb R})\) such that \(|g_1\star \psi _j|\approx |g_2\star \psi _j|\) for all \(j\). The principle is to multiply the wavelet transform of \(g_1\) by any set of phases \(\{e^{i\phi _j(t)}\}_{j\in {\mathbb Z}}\) whose variations are slow enough in \(j\) and \(t\).

How slow the variations must be depends on \(g_1\). Indeed, at the points \((j,t)\) where \(g_1\star \psi _j(t)\) is small, the phase may vary more rapidly because, then, the presence of \(g_1\star \psi _j(t-u)\) in (31) compensates for a bigger \((e^{i\phi _j(t-u)}-e^{i\phi _k(t)})\).

All instabilities \(g_1,g_2\) that we were able to observe in practice were of the form we described: each time, the wavelet transforms of \(g_1\) and \(g_2\) were equal up to a phase whose variation was slow in \(j\) and \(t\), except at the points where \(g_1\star \psi _j\) was small.

5 Strong Stability Result

The goal of this section is to give a partial formal justification to the fact that has been non-rigorously discussed in Sect. 4.2: when two functions \(g_1,g_2\) satisfy \(|g_1\star \psi _j|\approx |g_2\star \psi _j|\) for all \(j\), then the wavelet transforms \(\{g_1\star \psi _j(t)\}_j\) and \(\{g_2\star \psi _j(t)\}_j\) are equal up to a phase whose variation is slow in \(t\) and \(j\), except eventually at the points where \(|g_1\star \psi _j(t)|\) is small.

In the whole section, we consider \(f^{(1)},f^{(2)}\) two non-zero functions. We denote by \(F^{(1)},F^{(2)}\) the holomorphic extensions defined in (7). We recall that, for all \(j\in {\mathbb Z}\):

$$\begin{aligned} f\star \psi _j(x)=\frac{a^{pj}}{2}F(x+ia^j) \quad \quad \forall x\in {\mathbb R}\end{aligned}$$
(32)

We define:

$$\begin{aligned} N_j=\underset{x\in {\mathbb R},s=1,2}{\sup }|f^{(s)}\star \psi _j(x)| \end{aligned}$$

5.1 Main Principle

From \(|f\star \psi _j|\), one can calculate \(|f\star \psi _j|^2\) and thus, from (32), \(|F(x+ia^j)|^2\), for all \(x\in {\mathbb R}\). But this last function coincides with \(G_j(z)=F(z+ia^j)\overline{F(\overline{z}+ia^j)}\) on the horizontal line \({\mathrm{Im}}\,z=0\). As \(G_j\) is holomorphic, it is uniquely determined by its values on one line. Consequently, \(G_j\) is uniquely determined from \(|f\star \psi _j|\).

Combining the functions \(G_j\) for different values of \(j\) allows to write explicit reconstruction formulas. The stability of these formulas can be studied, to obtain relations of the following form, for \(K>0\):

$$\begin{aligned} \Big (|f^{(1)}\star \psi _k|&\approx |f^{(2)}\star \psi _k|\quad \forall k\in {\mathbb Z}\Big )\\&\Rightarrow \Big ((f^{(1)}\star \psi _j)(\overline{f^{(1)}\star \psi _{j+K}}) \approx (f^{(2)}\star \psi _j)(\overline{f^{(2)}\star \psi _{j+K}})\quad \forall j\in {\mathbb Z}\Big ) \end{aligned}$$

These relations imply that, for each \(j\), the phases of \(f^{(1)}\star \psi _j\) and \(f^{(2)}\star \psi _j\) are approximately equal up to multiplication by the phase of \(\frac{\overline{f^{(1)}\star \psi _{j+K}}}{\overline{f^{(2)}\star \psi _{j+K}}}\). If \(K\) is not too small, this last phase is low-frequency, compared to the phase of \(f^{(1)}\star \psi _j\) and \(f^{(2)}\star \psi _j\).

The results we obtain are local, in the sense that if the approximate equality \(|f^{(1)}\star \psi _k|\approx |f^{(2)}\star \psi _k|\) only holds on a (large enough) interval of \({\mathbb R}\), the equality \((f^{(1)}\star \psi _j)(\overline{f^{(1)}\star \psi _{j+K}})\approx (f^{(2)}\star \psi _j)(\overline{f^{(2)}\star \psi _{j+K}})\) still holds (also on an interval of \({\mathbb R}\)).

Our main technical difficulty was to handle properly the fact that the \(G_j\)’s may have zeros (which is a problem because we need to divide by \(G_j\) in order to get reconstruction formulas). We know that, when the wavelet transform has a lot of zeros, the reconstruction becomes unstable. On the other hand, if they are only a few isolated zeros, the reconstruction is stable and this must appear in our theorems.

They are several ways to write reconstruction formulas, which give different stability results. In the dyadic case \((a=2)\), there is a relatively simple method. We present it first. Then we handle the case where \(a<2\). We do not consider the case where \(a>2\). Indeed, it has less practical interest for us. Moreover, when the value of \(a\) increases, the reconstruction becomes much less stable.

5.2 Case \(\varvec{a=2}\)

In the dyadic case, we only assume that two consecutive moduli are approximately known, on an interval of \({\mathbb R}\): \(|f\star \psi _j|\) and \(|f\star \psi _{j+1}|\). We also assume that, on this interval, the moduli are never too close to \(0\). Then we show these moduli stabily determine:

$$\begin{aligned} \frac{f\star \psi _{j+2}}{f\star \psi _{j+1}} \end{aligned}$$

Theorem 5.1

Let \(\epsilon ,c,\lambda \in ]0;1[,M>0\) be fixed, with \(c\ge \epsilon \).

We assume that, for all \(x\in [-M2^j;M2^j]\):

$$\begin{aligned}&\left| |f^{(1)}\star \psi _j(x)|^2-|f^{(2)}\star \psi _j(x)|^2\right| \le \epsilon N_j^2\\&\left| |f^{(1)}\star \psi _{j+1}(x)|^2-|f^{(2)}\star \psi _{j+1}(x)|^2\right| \le \epsilon N_{j+1}^2 \end{aligned}$$

and:

$$\begin{aligned}&|f^{(1)}\star \psi _j(x)|^2,|f^{(2)}\star \psi _j(x)|^2\ge c N_j^2\\&|f^{(1)}\star \psi _{j+1}(x)|^2,|f^{(2)}\star \psi _{j+1}(x)|^2\ge c N_{j+1}^2 \end{aligned}$$

Then, for all \(x\in [-\lambda ^2M2^j;\lambda ^2M2^j]\):

$$\begin{aligned} \left| \frac{f^{(1)}\star \psi _{j+2}}{f^{(1)}\star \psi _{j+1}}(x) -\frac{f^{(2)}\star \psi _{j+2}}{f^{(2)}\star \psi _{j+1}}(x) \right| \le \frac{A}{c}\left( \frac{N_{j-1}}{N_{j+1}}\right) ^{4/3}\epsilon ^{(1/3-\alpha _M)(4/5-\alpha _M')} \end{aligned}$$

if \(1/3-\alpha _M>0\) and \(4/5-\alpha _M'>0\), where:

  • \(A\) is a constant which depends only on \(p\).

  • \(\alpha _M,\alpha '_M\rightarrow 0\) exponentially when \(M\rightarrow +\infty \).

Principle of the proof

Here, we only give a broad outline of the proof. A rigorous one is given in the Appendix 3, with all the necessary technical details.

As explained in the paragraph 5.1, \(|f^{(1)}\star \psi _{j+1}|\) uniquely determines the values of \(z\rightarrow F^{(1)}(z+i2^{j+1})\overline{F^{(1)}(\overline{z}+i2^{j+1})}\) on the line \({\mathrm{Im}}\,z=0\). Thus, it uniquely determines all the values (because the function is holomorphic) and in particular (for \(z=x+i2^j\)):

$$\begin{aligned} F^{(1)}(x+i3.2^j)\overline{F^{(1)}(x+i2^j)}\quad \forall x\in {\mathbb R}\end{aligned}$$

Moreover, this determination is a stable operation:

$$\begin{aligned}&\Big (|f^{(1)}\star \psi _{j+1}(x)|^2\approx |f^{(2)}\star \psi _{j+1}(x)|^2\quad \forall x\in {\mathbb R}\Big )\\&\quad \Rightarrow \Big (F^{(1)}(x+i3.2^j)\overline{F^{(1)}(x+i2^j)} \approx F^{(2)}(x+i3.2^j)\overline{F^{(2)}(x+i2^j)} \quad \forall x\in {\mathbb R}\Big ) \end{aligned}$$

If we divide this last expression by \(|F^{(1)}(x+i2^j)|^2\approx |F^{(2)}(x+i2^j)|^2\) (whose values we know from \(|f\star \psi _j|^2\)):

$$\begin{aligned} \frac{F^{(1)}(x+i3.2^j)}{F^{(1)}(x+i2^j)} \approx \frac{F^{(2)}(x+i3.2^j)}{F^{(2)}(x+i2^j)} \quad \text{ for } x\in {\mathbb R}\end{aligned}$$

As previously, using the holomorphy of \(F\) allows to replace, in the last expression, the real number \(x\) by \(x+i2^j\):

$$\begin{aligned} \frac{F^{(1)}(x+i2^{j+2})}{F^{(1)}(x+i2^{j+1})} \approx \frac{F^{(2)}(x+i2^{j+2})}{F^{(2)}(x+i2^{j+1})} \quad \text{ for } x\in {\mathbb R}\end{aligned}$$

By (32), this is the same as:

$$\begin{aligned} \frac{f^{(1)}\star \psi _{j+2}}{f^{(1)}\star \psi _{j+1}} \approx \frac{f^{(2)}\star \psi _{j+2}}{f^{(2)}\star \psi _{j+1}} \end{aligned}$$

\(\square \)

From this theorem, if \(f^{(s)}\star \psi _{j+2}\) has no small values either on \([-\lambda ^2M2^j;\lambda ^2M2^j]\), then:

$$\begin{aligned} \text{ phase }(f^{(1)}\star \psi _{j+1}){-}\text{ phase }(f^{(2)}\star \psi _{j+1}) {\approx } \text{ phase }(f^{(1)}\star \psi _{j+2}){-}\text{ phase }(f^{(2)}\star \psi _{j+2}) \end{aligned}$$

If more than two consecutive components of the wavelet transform have almost the same modulus (and all these components do not come close to \(0\)), one can iterate this approximate equality. It gives:

$$\begin{aligned} \text{ phase }(f^{(1)}\star \psi _{j+1}){-}\text{ phase }(f^{(2)}\star \psi _{j+1}) {\approx } \text{ phase }(f^{(1)}\star \psi _{j+K}){-}\text{ phase }(f^{(2)}\star \psi _{j+K}) \end{aligned}$$

This holds for any \(K\in {\mathbb N}^*\) but with an approximation error that becomes larger and larger as \(K\) increases.

When \(K\) is large enough, this means that \(f^{(1)}\star \psi _{j+1}\) and \(f^{(2)}\star \psi _{j+1}\) are equal up to a low-frequency phase.

5.3 Case \(\varvec{a<2}\)

For this section, we fix:

  • \(j\in {\mathbb Z}\): the frequency of the component whose phase we want to estimate

  • \(K\in {\mathbb N}^*\) such that \(K\equiv 0[2]\): the number of components of the wavelet transform whose modulus are approximately equal

  • \(\epsilon ,\kappa \in ]0;1[\): they will control the difference between \(|f^{(1)}\star \psi _j|\) and \(|f^{(2)}\star \psi _j|\), as well as the minimal value of those functions.

  • \(M>0\): we will assume that the approximate equality between the modulus holds on \([-Ma^{j+K};Ma^{j+K}]\).

  • \(k\in {\mathbb N}^*\) such that \(a^{-k}< 2-a\): this number will control the stability with which one can derive informations about \(f\star \psi _{l-1}\) from \(|f\star \psi _l|\). Typically, for \(a\le 1.5\), we may take \(k=3\).

We define:

  • \(J\in [j+K-1;j+K]\) such that \(a^J=\frac{2}{a+1}a^{j+K}+\frac{a-1}{a+1}a^j\): we will prove that \(f^{(1)}\star \psi _j\) and \(f^{(2)}\star \psi _j\) are equal up to a phase which is concentrated around \(a^J\) in frequencies (that is, a much lower-frequency phase than the phase of \(f\star \psi _j\)).

  • \(c=1-\frac{a-1}{1-a^{-k}}\in ]0;1[\) and \(d_M=c-4\frac{e^{-\pi M/(K+2)}}{1-e^{-\pi M/(K+2)}}\), which converges exponentially to \(c\) when \(\frac{M}{K}\) goes to \(\infty \).

Theorem 5.2

We assume that \(\kappa \ge \epsilon ^{2(1-c)}\).

We assume that, for \(x\in [-Ma^{j+K};Ma^{j+K}]\) and \(l=j+1,...,j+K\):

$$\begin{aligned}&\left| |f^{(1)}\star \psi _l(x)|^2-|f^{(2)}\star \psi _l(x)|^2\right| \le \epsilon N_l^2\end{aligned}$$
(33)
$$\begin{aligned}&|f^{(1)}\star \psi _l(x)|^2,|f^{(2)}\star \psi _l(x)|^2\ge \kappa N_l^2 \end{aligned}$$
(34)

Then, for any \(x\in \left[ - \frac{M a^{j+K}}{2};\frac{ Ma^{j+K}}{2}\right] \), as soon as \(d_M<1\):

(35)

where \(C_K=\frac{6}{1-\sqrt{\kappa }}\underset{s=0}{\overset{K/2-1}{\prod }}\left( a^{p(k-1)}\frac{N_{n_s-1-k}}{N_{n_s-2}}\right) \)

As in the dyadic case \(a=2\), this theorem shows that, if two functions \(f^{(1)}\) and \(f^{(2)}\) have their wavelet transforms almost equal in moduli, then, for each \(j\), \(f^{(1)}\star \psi _j\approx f^{(2)}\star \psi _j\) up to multiplication by a low-frequency function.

In contrast to the dyadic case, we are not able to show directly that:

$$\begin{aligned} \frac{f^{(1)}\star \psi _j}{f^{(2)}\star \psi _j}\approx \frac{f^{(1)}\star \psi _{j+1}}{f^{(2)}\star \psi _{j+1}} \end{aligned}$$

Because of that, the inequality we get is less good than in the dyadic case: the bound in (35) is exponential in \(K\) instead of being proportional to \(K\).

With a slightly different method, we could have obtained a better bound, proportional to \(K\). This better bound would have been valid for any \(a>1\), but under the condition that \(f\star \psi _l\) does not come close to \(0\) for some explicit non-integer values of \(l\), which would have been rather unsatisfying because, in practice, these values of \(l\) do not seem to play a particular role.

Principle of the Proof

The full proof may be found in Appendix 4. Its principle is to show, by induction over \(s=0,...,K/2\), that:

$$\begin{aligned} (\overline{f^{(1)}\star \psi _{J_s}})\left( f^{(1)}\star \psi _{j+K-2s}\right) \approx (\overline{f^{(2)}\star \psi _{J_s}})\left( f^{(2)}\star \psi _{j+K-2s}\right) \end{aligned}$$
(36)

where \(J_s\) is an explicit number in the interval \([j+K-1;j+K]\).

For \(s=0\), we set \(J_s=j+K\) and (36) just says:

$$\begin{aligned} \left| f^{(1)}\star \psi _{j+K}\right| ^2\approx \left| f^{(2)}\star \psi _{j+K}\right| ^2 \end{aligned}$$

which is true by hypothesis.

Then, to go from \(s\) to \(s+1\), we use the fact that:

$$\begin{aligned} (\overline{f^{(1)}\star \psi _{j+K-2s}})\left( f^{(1)}\star \psi _l\right) \approx (\overline{f^{(2)}\star \psi _{j+K-2s}})\left( f^{(2)}\star \psi _l\right) \end{aligned}$$
(37)

if we choose \(l\) such that \(a^l=2a^{j+K-2s-1}-a^{j+K-2s}\): we can check that, up to multiplication by a constant, \((\overline{f^{(r)}\star \psi _{j+K-2s}})(f^{(r)}\star \psi _l)\) is the evaluation on the line \(a^{j+K-2s}-a^{j+K-2s-1}\) of the holomorphic extension of \(|f^{(r)}\star \psi _{j+K-2s-1}|^2\). The holomorphic extension is a stable transformation (in a sense that has to be made precise). As \(|f^{(1)}\star \psi _{j+K-2s-1}|^2\approx |f^{(2)}\star \psi _{j+K-2s-1}|^2\), this implies (37).

Multiplying (36) and (37) and dividing by \(|f^{(1)}\star \psi _{j+K-2s}|^2\approx |f^{(2)}\star \psi _{j+K-2s}|^2\) yields:

$$\begin{aligned} (\overline{f^{(1)}\star \psi _{J_s}})\left( f^{(1)}\star \psi _l\right) \approx (\overline{f^{(2)}\star \psi _{J_s}})\left( f^{(2)}\star \psi _l\right) \end{aligned}$$
(38)

If \(J_{s+1}\) is suitably chosen, \((f^{(r)}\star \psi _{J_{s+1}})(f^{(r)}\star \psi _{j+K-2(s+1)})\) may be seen as the restriction to a line of the holomorphic extension of \((\overline{f^{(r)}\star \psi _{J_s}})(f^{(r)}\star \psi _l)\). Because, again, taking the holomorphic extension is relatively stable, the relation (38) implies the recurrence hypothesis (36) at order \(s+1\).

For \(s=K/2\), the recurrence hypothesis is equivalent to the stated result. \(\square \)

6 Numerical Experiments

In the previous section, we proved a form of stability for the phase retrieval problem associated to the Cauchy wavelet transform. The proof implicitly relied on the existence of an explicit reconstruction algorithm. In this section, we describe a practical implementation of this algorithm and its performances.

The main goal of our numerical experiments is to investigate the issue of stability. Theorems 5.1 and 5.2 prove that the reconstruction is, in some sense, stable, at least when the wavelet transform does not have small values. Are these results confirmed by the implementation? To what extent does the presence of small values make the reconstruction unstable?

As we will see, our algorithm can fail when large parts of the wavelet transform are close to zero. In all other cases, it seems to succeed and to be stable to noise, even when the amount of noise over the wavelet transform is relatively high (\(\sim \) 10%). The presence of a small number of zeroes in the wavelet transform is not a problem.

In practical applications, the wavelet transforms of the signals of interest (mostly audio signals) always have a lot of small values. The algorithm that we present is thus mostly a theoretical tool. Without modifications, it is not intended for real applications. Nevertheless, the results it gives for audio signals are better than expected so, with some more work, it could be suited to practical applications in audio processing. This will be the subject of future work.

The code is available at http://www.di.ens.fr/~waldspurger/cauchy_phase_retrieval.html, along with examples of reconstruction for audio signals. It only handles the dyadic case \(a=2\) but could easily be extended to other values of \(a\).

6.1 Description of the Algorithm

In practice, we must restrict our wavelet transform to a finite number of components. So we only consider the \(|f\star \psi _j|\) for \(j\in \{J_{\min },...,J_{\max }\}\). To compensate for the loss of the \(|f\star \psi _j|\) with \(j>J_{\max }\), we give to our algorithm an additional information about the low-frequency, under the form of \(f\star \phi _{J_{\max }}\), where \(\hat{\phi }_{J_{\max }}\) is negligible outside an neighborhood of \(0\) of size \(\sim a^{-J_{\max }}\).

The algorithm takes as input the functions \(|f\star \psi _{J_{\min }}|,|f\star \psi _{J_{\min }+1}|,...,|f\star \psi _{J_{\max }}|,f\star \phi _{J_{\max }}\), for some unknown \(f\), and tries to reconstruct \(f\). The input functions may be contaminated by some noise. To simplify the implementation, we have assumed that the probability distribution of the noise was known.

For any real numbers \(j,k_1,k_2\) such that \(j\in {\mathbb Z}\) and \(2.a^j=a^{k_1}+a^{k_2}\), it comes from the reasoning of the previous section that \(|f\star \psi _j|\) uniquely determines \((f\star \psi _{k_1}).(\overline{f\star \psi _{k_2}})\). More precisely, we have, for all \(\omega \in {\mathbb R}\):

$$\begin{aligned} \widehat{(f\star \psi _{k_1}).(\overline{f\star \psi _{k_2}})}(\omega ) =\widehat{|f\star \psi _j|^2}(\omega )e^{(a^{k_2}-a^j)\omega }\frac{a^{k_1+k_2}}{a^{2j}} \end{aligned}$$
(39)

The algorithm begins by fixing real numbers \(k_{J_{\min }-1},k_{J_{\min }},...,k_{J_{\max }}\) such that:

$$\begin{aligned}&k_{J_{\min }-1}<J_{\min }<k_{J_{\min }}<J_{\min }+1<...<J_{\max }<k_{J_{\max }}\nonumber \\&\forall j,\quad \quad 2.a^j = a^{k_{j-1}}+a^{k_j} \end{aligned}$$
(40)

Then, for all \(j\), it applies (39) to determine \(g_j\overset{\text{ def }}{=}(f\star \psi _{k_{j-1}}).(\overline{f\star \psi _{k_j}})\). Because of the exponential function present in (39), the \(g_j\) may take arbitrarily high values in the frequency band \(\{(a^{k_2}-a^j)\omega \gg 1\}\). To avoid this, we truncate the high frequencies of \(g_j\).

The function \(f\star \psi _{k_{J_{\max }}}\) may be approximately determined from \(f\star \phi _{J_{\max }}\). From this function and the \(g_j\), the algorithm estimates all the \(f\star \psi _{k_j}\). As this estimation involves divisions by functions which may be close to zero at some points, it is usually not very accurate. In particular, the estimated set \(\{f\star \psi _{k_j}\}_j\) do not generally satisfy the constraint that it must belong to the range of the function \(f\in L^2({\mathbb R})\rightarrow \{f\star \psi _{k_j}\}_{J_{\min }-1\le j\le J_{\max }}\).

Thus, in a second step, the algorithm refines the estimation. To do this, it attempts to minimize an error function which takes into account both the fact that \((f\star \psi _{k_{j-1}}).(\overline{f\star \psi _{k_j}})\) is known for every \(j\) and the fact that \(\{f\star \psi _{k_{j-1}}\}_{J_{\min }-1\le j\le J_{\max }}\) must belong to the range of \(f\in L^2({\mathbb R})\rightarrow \{f\star \psi _{k_j}\}_{J_{\min }-1\le j\le J_{\max }}\). The minimization is performed by gradient descent, using the previously found estimations as initialization.

Finally, we deduce \(f\) from the \(f\star \psi _{k_{j-1}}\) and refine this estimation one more time by a few steps of the classical Gerchberg–Saxton algorithm [14]. This final refinement step is useful, because the Gerchberg–Saxton algorithm converges much faster than the gradient descent. According to our tests, the performances of the algorithm would be approximately the same with more gradient descent iterations and no final refinement. However, the execution time would be much longer.

The principle of the algorithm is summarized by the Pseudocode 1.

figure a

6.2 Input Signals

We study the performances of this algorithm on three classes of input signals with finite size \(n\). Figure 4 shows an example for each of these three classes.

Fig. 4
figure 4

examples of signals: a realization of a gaussian process, b sum of sinusoids, c piecewise regular

The first class contains realizations of gaussian processes with renormalized frequencies. More precisely, the signals \(f\) of this class satisfy:

$$\begin{aligned} \hat{f}[n]=\frac{X_n}{\sqrt{n+2}} \end{aligned}$$

where the \(X_n\) are independent realizations of a gaussian random variable \(X\sim \mathcal {N}(0,1)\). The normalization \(\frac{1}{\sqrt{n+2}}\) ensures that all dyadic frequency bands contain approximately the same amount of energy.

The second class consists in sums of a few sinusoids. The amplitudes, phases and frequencies of the sinusoids are randomly chosen. In each dyadic frequency band, there is approximately the same mean number of sinusoids (slightly smaller than \(1\)).

The signals of the third class are random lines extracted from real images. They usually are structured signals, with smooth regular parts and large discontinuities at a small number of points.

To study the influence of the size of the signals on the reconstruction, we perform tests for signals of size \(N=128,N=1024\) and \(N=8192\). For each \(N\), we used \(\log _2(N)-1\) Cauchy wavelets of order \(p=3\). Our low-pass filter is a gaussian function of the form \(\hat{\phi }[k]=\exp (-\alpha k^2/2)\), with \(\alpha \) independent of \(N\).

6.3 Noise

The inputs that are provided to the algorithm are not exactly \(\{|f\star \psi _j|\},f\star \phi _{J_{\max }}\) but \(\{|f\star \psi _j|+n_{\psi ,j}\},f\star \phi _{J_{\max }}+n_{\phi }\). The \(n_{\psi ,j}\) and the \(n_\phi \) represent an additive noise. In all our experiments, this noise is white and gaussian.

We measure the amplitude of the noise in relative \(l^2\)-norm:

$$\begin{aligned} \text{ relative } \text{ noise } = \frac{\sqrt{||n_\phi ||_2^2+\underset{j}{\sum }||n_{\psi ,j}||_2^2}}{\sqrt{||f\star \phi _{J_{\max }}||_2^2+\underset{j}{\sum }||f\star \psi _{j}||_2^2}} \end{aligned}$$

6.4 Results

The results are displayed on the Fig. 5.

Fig. 5
figure 5

Reconstruction results for the three considered classes of signals. Left column our algorithm. Right column alternate projections (Gerchberg–Saxton)

The x-axis displays the relative error induced by the noise over the input and the y-axis represents the reconstruction error, both over the reconstructed function and over the modulus of the wavelet transform of the reconstructed function.

For an input signal \(f\) and output \(f_{rec}\), we define the relative error between \(f\) and \(f_{rec}\) by:

$$\begin{aligned} \text{ function } \text{ error } = \frac{||f-f_{rec}||_2}{||f||_2} \end{aligned}$$

and the relative error over the modulus of the wavelet transform by:

$$\begin{aligned} \text{ modulus } \text{ error } = \frac{\sqrt{||f\star \phi _{J_{\max }}-f_{rec}\star \phi _{J_{\max }}||_2^2+\underset{j}{\sum }||\,|f\star \psi _j|-|f_{rec}\star \psi _j|\,||_2^2}}{\sqrt{||f\star \phi _{J_{\max }}||_2^2+\underset{j}{\sum }||f\star \psi _{j}||_2^2}} \end{aligned}$$

The modulus error describes the capacity of the algorithm to reconstruct a signal whose wavelet transform is close, in modulus, to the one which has been provided as input. The function error, on the other hand, quantifies the intrinsic stability of the phase retrieval problem. If the modulus error is small but the function error is large, it means that there are several functions whose wavelet transforms are almost equal in moduli and the reconstruction problem is ill-posed.

An ideal reconstruction algorithm would yield a small modulus error (that is, proportional to the noise over the input). Nevertheless, the function error could be large or small, depending on the well-posedness of the phase retrieval problem.

We expect that our algorithm may fail when the input modulus contain very small values (because the algorithm performs divisions, which become very unstable in presence of zeroes).

For almost each of the signals that we consider, there exist \(x\)’s such that \(f\star \psi _{k_j}(x)\approx 0\) but the number of such points vary greatly, depending on which class the signal belongs. As an example, the wavelet transforms of the three signals of the Fig. 4 are displayed in Fig. 6.

Fig. 6
figure 6

Wavelet transforms, in modulus, of the signals of the Fig. 4: a realization of a gaussian process, b sum of sinusoids, c piecewise regular each column represents the wavelet transform of one signal. Each graph corresponds to one frequency component of the wavelet transform. For sake of visibility, only \(4\) components are shown, although nine were used in the calculation

For gaussian signals, there are generally not many points at which the wavelet transform vanishes. The positions of these points do not seem to be correlated in either space or frequency.

For piecewise regular signals, there are more of this points but they are usually distributed in such a way that if \(f\star \psi _j(x)\approx 0\), then \(f\star \psi _k(x)\approx 0\) for all wavelets \(\psi _k\) of higher frequencies than \(\psi _j\). This repartition makes the reconstruction easier.

When the signals are sums of sinusoids, it often happens that some components of the wavelet transform are totally negligible: for some \(j\), \(f\star \psi _j(x)\approx 0\) for any \(x\). The negligible frequencies may be either high, low or intermediate.

From the results shown in Fig. 5, it is clear that the number of zeros influences the reconstruction, but also that isolated zeroes do not prevent reconstruction. The algorithm performs well on gaussian or piecewise regular signals. The distance in modulus between the wavelet transform of the reconstructed signal and of the original one is proportional to the amount of noise (and generally significantly smaller). This holds up to large levels of noise (10%). By comparison, the classical Gerchberg–Saxton algorithm is much less efficient.

However, the algorithm often fails when the input signal is a sum of sinusoids. Not surprisingly, the most difficult signals in this class are the ones for which the sinusoids are not equally distributed among frequency bands and the wavelet transform has a lot of zeroes. The relative error over the modulus of the wavelet transform is then often of several percent, even when the relative error induced by the noise is of the order of 0.1 %.

In Sect. 4, we explained why, for any function \(f\), it is generally possible to construct \(g\) such that \(f\) and \(g\) are not close but their wavelet transform have almost the same modulus. This construction holds provided that the time and frequency support of \(f\) is large enough.

Increasing the time and frequency support of \(f\) amounts here to increase the size \(N\) of the signals. Thus, we expect the function error to increase with \(N\). It is indeed the case but this effect is very weakly perceptible on gaussian signals. It is stronger on piecewise regular functions, probably because the wavelet transforms of these signals have more zeroes; their reconstruction is thus less stable.

In the case of the sums of sinusoids, because of the failure of the algorithm, we can not draw firm conclusions regarding the stability of the reconstruction. We nevertheless suspect that this class of signals is the least stable of all and that these instabilities are the cause of the incorrect behavior of our algorithm.

7 Conclusion

In this text, we have studied the phase retrieval problem in which one tries to reconstruct a function from the modulus of its Cauchy wavelet transform. We have shown that the reconstruction was unique, up to a global phase, and that the reconstruction operator was continuous but not uniformly continuous. Indeed, if we modulate the wavelet transform of a function by slow-varying phases, we can construct very different functions with almost the same wavelet transform, in modulus. Moreover, in the case where the wavelet transform does not take values too close to zero, all the instabilities of the reconstruction are of this form.

Our proofs are specific to Cauchy wavelets and cannot be extended to generic wavelets because they strongly use the link between Cauchy wavelets and holomorphic functions. Only the description of instabilities of the reconstruction operator (Sect. 4) is independent of the choice of the wavelet family (actually, it could also be extended to other time-frequency representations that the wavelet transform). However, in practice, the Cauchy wavelets do not seem to behave differently from other wavelets. We expect that the uniqueness and stability results are true for much generic wavelets than Cauchy ones but we do not know how to prove it.