## Abstract

This paper presents a new phase unwrapping algorithm for wrapped phase fringes through combining a cubature information particle filter with an efficient local phase gradient estimator and an efficient quality-guided strategy based on heap-sort. The cubature information particle filter that not only is independent from noise statistics but also is not constrained by the nonlinearity of the model constructed is applied to retrieve unambiguous phase from modulus 2π wrapped fringe patterns through constructing a recursive cubature information particle filtering phase unwrapping procedure to perform simultaneously phase unwrapping and noise filtering for the first time to our knowledge, which can be expected to obtain more robust solutions from wrapped phase fringes. Phase gradient estimate is one of the key steps in almost all phase unwrapping algorithms and is directly related to the precision and the efficiency of phase unwrapping procedure. Accordingly, an efficient local phase gradient estimator that is more efficient than ones published previously is deduced to obtain phase gradient information required by the proposed algorithm, which can drastically decrease time consumption of unwrapping procedure and drastically improve the efficiency of the algorithm. The efficient quality-guided strategy based on heap-sort guarantees that the proposed algorithm efficiently unwraps wrapped pixels along the path from the high-reliance regions to the low-reliance regions of wrapped phase images. In addition, the accelerated version of the proposed algorithm is further developed through combing with reversible modulo wavelet operators to solve phase unwrapping problem of wrapped phase images in wavelet transform domain, which can reduce the amount of wrapped pixels that need to be unwrapped, and can further decrease time consumption of unwrapping procedure performing on wrapped phase images. This algorithm and its accelerated version under the frame of wavelet transform are demonstrated with various types of wrapped phase images, showing acceptable solutions.

© 2019 Optical Society of America under the terms of the OSA Open Access Publishing Agreement

## 1. Introduction

Phase unwrapping (PU) [1] retrieving unambiguous phase from wrapped fringe patterns whose phase is modulus 2π mapped into the principal interval between -π and π, is widely used in many different fields including adaptive optics, speckle imaging, digital holographic microscopy (DHM) [2], and interferometric synthetic aperture radar (InSAR) [3,4], as well as interferometic synthetic aperture sonar (InSAS) [5], etc. Many PU algorithms [6–33] have been proposed in the past few decades, and they can mainly be classified into path-following algorithms [6–17], and minimum-norm algorithms [18–21], as well as Bayesian algorithms [22–34]. The path-following algorithms route suitable paths with phase residues [6] and/or phase quality maps [1], and then perform line integration of the modulo 2π mapped wrapped phase differences along the paths routed to avoid or to degrade the error accumulation effect of erroneous pixels in the process of PU. These algorithms can usually obtain perfect solutions from the wrapped phase images with less noise and/or less phase residues or less phase discontinuity, while these methods tend to fail with high speckle noise or high residual noise or high-density phase residues [30]. The minimum-norm algorithms seek the unwrapped solutions whose local derivatives are as consistent as possible with the measured derivatives [26]. These algorithms are immune to phase noise present in wrapped pixels to certain extent, and can usually obtain smooth results from wrapped phase images, however they easily suffer large errors with the high dynamic range of the phase. Bayesian algorithms perform simultaneously PU and noise filtering through formulating the PU problem as a state estimate problem, which include extended Kalman filtering PU algorithms [22,23], unscented Kalman filtering PU algorithms [26–30], particle filtering PU algorithms [31–33], and unscented information filtering PU method [34], etc. These methods can usually obtain robust solutions from noisy wrapped phase images, but with large time consumption. Except for these algorithms mentioned above, there are still many important reports to be done in [35–46], for solving the PU problem of wrapped phase images.

In our previous work, we have proposed several PU algorithms based on unscented Kalman filter [24–27,30] and unscented information filter [34], classified into the Bayesian algorithms mentioned above. The initial versions of unscented Kalman filtering PU (UKFPU) methods were proposed through combining unscented Kalman filters (UKFs) with a local phase gradient estimator based on power spectral density (LPGE-B-PSD) [24,25], and the improved versions of the UKFPU methods were proposed through integrating the UKFs with an enhanced local phase gradient estimator based on amended matrix pencil model (LPGE-B-AMPM) [26,27,30], and then the PU algorithm based on unscented information filter was investigated in [34], and these methods have been demonstrated with some examples and can usually obtain acceptable results from various types of noisy wrapped phase images, however they are sometimes time-consuming for some applications with real-time processing requirements, like other Bayesian algorithms mentioned above, which prompts us to continuously seek better solutions for improving the accuracy and/or the efficiency of the PU procedure for wrapped fringe patterns.

This paper presents a new PU algorithm for wrapped phase fringes through combining a cubature information particle filter with an efficient local phase gradient estimator and an efficient quality-guided strategy based on heap-sort. The cubature information particle filter (CIPF) [47–49] that is not only independent from noise statistics but also is not constrained by the nonlinearity of the model constructed, is applied to retrieve unambiguous phase from modulus 2π wrapped fringe patterns through constructing a recursive cubature information particle filtering PU (CIPFPU) procedure to perform simultaneously PU and noise filtering for the first time to our knowledge, which can be expected to obtain more robust solutions from wrapped phase fringes. Phase gradient estimate is one of the key steps in almost all PU algorithms, and it play a key role especially in the above Bayesian algorithms [22–27,30–32,34] and is directly related to the precision and the efficiency of these algorithms, accordingly, an efficient local phase gradient estimator that is far more efficient, compared with the LPGE-B-PSD [22–25] and LPGE-B-AMPM [26,27,30], is deduced to obtain phase gradient information required by the CIPFPU procedure, which can drastically decrease time consumption of unwrapping procedure and drastically improve the efficiency of the algorithm. The efficient quality-guided strategy based on heap-sort guarantees that the proposed algorithm efficiently unwraps wrapped pixels along the path from the high-reliance regions to the low-reliance regions of wrapped phase images.

The accelerated version of the proposed CIPFPU algorithm is further developed through combing with the modulo-wavelet-transform based multi-scale PU (MWT-MPU) methodology [35] to accelerate unwrapping procedure performing on wrapped phase images, where wrapped phase images are decomposed into wrapped low-pass coefficients and high-pass coefficients at every decomposition level through applying the MWT-MPU methodology to transform wrapped phase images into modulo wavelet transform (MWT) domain, and the proposed CIPFPU algorithm is only applied on a fraction of wrapped low-pass coefficients at each decomposition level, which can reduce the number of wrapped pixels that need to be unwrapped by the proposed CIPFPU algorithm, and can greatly decrease time consumption of unwrapping procedure performing on wrapped phase images. It is worth mentioning that the high-pass coefficients, i.e., the estimated phase gradients obtained with modulo Haar wavelet transform [35], are very sensitive to phase noise, and then easily suffer large errors with noisy pixels, which may degrade the accuracy of the PU procedure, and also degrades gains in speedup of the accelerated algorithm under the frame of the MWT when the signal-to-noise-ratio (SNR) of wrapped phase images degrades. Accordingly, the estimated phase gradients obtained with modulo Haar wavelet transform [35] are replaced by the new estimated phase gradients obtained with the proposed efficient local phase gradient estimator to be taken as high-pass coefficients in the accelerated CIPFPU algorithm, which is helpful to improve the accuracy of the PU procedure and to achieve robust speedup gains of the algorithm. Results obtained with synthetic data and experimental data demonstrate the effectiveness of the proposed method, and show that this new approach and its accelerated version can obtain acceptable solutions from wrapped phase images.

The remainder of this paper is organized as follows. The proposed method is described in Section 2. Section 3 shows the performances of the proposed method, with some examples from synthetic data and real data, and the comparisons with the representative methods. Finally, the conclusions are drawn in Section 4.

## 2. Proposed method

#### 2.1. Efficient local phase gradient estimator

In generally, the wrapped fringe patterns in a local region can be considered to be stable, then the unit phase slope in a local window with the size of ${\eta}_{1}\times {\eta}_{2}$, centered at pixel$(k,l)$, can be estimated as follows:

#### 2.2. The CIPFPU algorithm

The CIPFPU algorithm formulates the PU problem of wrapped fringe patterns as an optimal state estimation problem under the frame of the CIPF, and it firstly gains initial estimate of the unwrapped phase at each pixel using a cubature information filter (CIF) [47], and then obtain ultimate estimate of the unwrapped phase using a particle filter [48,49].

### 2.2.1. A1 Initial estimate using the CIF

The system equation for state variable can be written as:

**Step 1,** the predicted estimate of the state variable at pixel$(m,n)$,${x}^{-}(m,n)$and its corresponding predicted estimation error covariance${P}_{xx}^{-}(m,n)$can be calculated depending on its unwrapped neighbors as follows:

**Step 2,** the new prediction of the state variable at pixel$(m,n)$, ${\overrightarrow{x}}^{+}(m,n)$and its corresponding prediction error variance${P}_{xx}^{+}(m,n)$can be calculated as follows:

**Step 3,** the prediction error variance at pixel$(m,n)$*,${P}_{xx}^{+}(m,n)$*is adjusted by the Levenberg-Marquardt method [50,51] as follows:

**Step 4,** the information matrix at pixel$(m,n)$,$Z\left(m,n\right)$and its corresponding information state vector$z(m,n)$can be calculated as follows:

**Step 5,** the predicted observation vector at pixel$(m,n)$,${y}^{-}(m,n)$and its cross-correlation covariance${\overrightarrow{P}}_{xy}(m,n)$are calculated as follows:

**Step 6,** the information state contribution at pixel$(m,n)$, $i\left(m,n\right)$and its associated information matrix $I(m,n)$ are calculated as follows:

**Step 7,** the updated state estimate at pixel$(m,n)$,$\stackrel{\rightharpoonup}{x}\left(m,n\right)$and its corresponding covariance matrix ${\overrightarrow{P}}_{xx}(m,n)$are calculated as follows:

### 2.2.2. A2 Ultimate estimate using particle filter

Further, the ultimate estimate of the unwrapped phase can be obtained through the particle filter as follows [49]:

**Step 1,** generate a set of the sample particles $\{{\stackrel{\u2322}{x}}_{(m,n)}^{i},i=1,2\cdot \cdot \cdot {N}_{s}\}$at pixel$(m,n)$by taking samples from the Gaussian distribution${\rm N}\text{(}{\stackrel{\u2322}{x}}_{\text{(}\mathrm{m},n\text{)}},{\overrightarrow{P}}_{xx}\text{(}m,n\text{))}$, where${N}_{s}$refers to the number of sample particles.

**Step 2,** calculate and normalize the weight of each particle according to its observed vector:

**Step 3,** obtain the estimate value of the state variable:

#### 2.3. Accelerated CIPFPU method

The proposed CIPFPU can further be combined with the MWT-MPU methodology [35] to accelerate unwrapping procedure performing on wrapped phase images, where the MWT-MPU methodology transforms wrapped phase images into the MWT domain and then solves the PU problem of wrapped phase images in the MWT domain, accordingly, the proposed CIPFPU procedure need only to process a fraction of original wrapped phase images, which can reduce the number of wrapped pixels that need to be unwrapped, and can greatly decrease time consumption of the unwrapping procedure performing on wrapped phase images. It is worth noting that the estimated phase gradients [35] obtained with modulo Haar wavelet transform are replaced by the new estimated phase gradients obtained with the proposed efficient local phase estimator to be taken as high-pass coefficients in this paper, which is helpful to improve the accuracy of the PU procedure and to achieve robust speedup gains of the algorithm.

The general description of the accelerated CIPFPU algorithm is as follows: first, obtain the low-pass coefficients${L}_{i}(i=0,1,2,\cdot \cdot \cdot ,N)$through performing$N$times modulo Haar wavelet transform according to the MWT-MPU methodology, and obtain the high-pass coefficients${H}_{i}(i=1,2,\cdot \cdot \cdot ,N)$through applying the proposed efficient local phase estimator to acquire phase gradient information from each decomposition level$i-1$, and then generate the aliasing masks${A}_{i}(i=0,1,2,\cdot \cdot \cdot ,N)$marking which samples of low-pass coefficients are aliased at each decomposition level$i$, according to the criterion described in the MWT-MPU methodology [35]. At each decomposition level$i$, the proposed CIPFPU algorithm is only applied on non-boundary unbiased wrapped low-pass coefficients in${L}_{i}$(i.e., non-boundary unbiased wrapped pixels in${L}_{i}$) since boundary pixels and the aliased pixels in${L}_{i}$will be masked to not be unwrapped at this decomposition level. Secondly, a waiting queue based on heap-sort (WQBHS) is created to store and sort the pixels marked as waiting pixels in the process of PU at every decomposition level. Finally, the proposed CIPFPU procedure progressively unwraps low-pass coefficients patches starting at the highest decomposition level (i.e.${L}_{N}$). It is worth noting that in fact${L}_{i}(i=0,1,2,\cdot \cdot \cdot ,N)$can be taken as two-dimensional wrapped phase image consisting of the low-pass coefficients at each decomposition level$i$, and needs to be further processed or retains unchanged at this decomposition level according to whether the pixels are aliased or boundary in the process of PU [35]. In addition, phase quality map that is used to guide unwrapping paths at every decomposition level, is phase derivative variance map of wrapped phase image consisting of the low-pass coefficients at this decomposition level in the experiments of this paper.

### 2.3.1. Main steps of accelerated CIPFPU method

### 2.3.1.1. Preprocessing stage

**STEP 1:** Obtain the low-pass coefficients${L}_{i}(i=0,1,2,\cdot \cdot \cdot ,N)$and the high-pass coefficients${H}_{i}(i=1,2,\cdot \cdot \cdot ,N)$as well as the aliasing masks${A}_{i}(i=0,1,2,\cdot \cdot \cdot ,N)$.

**STEP 2:** Generate phase quality map that is used to guide unwrapping paths at every decomposition level (i.e., Generate phase derivative variance map of wrapped phase image consisting of the low-pass coefficients at every decomposition level).

### 2.3.1.2. Unwrapping stage

Flowchart of unwrapping stage of the accelerated CIPFPU algorithm is shown in Fig. 1, and main steps of the unwrapping stage are as follows:

**STEP 1, Process on${L}_{N}$**

**STEP 1.1**: The non-boundary unbiased pixel with the smallest phase derivative variance value in${L}_{N}$is selected as beginning pixel (i.e., seed pixel) and its low-pass coefficient is taken as the unwrapped phase of the seed pixel, and then its corresponding state estimation covariance can be preset simply within the interval of (0.1,1) by the experience, and the initial estimation error covariance of the seed pixel is preset to 0.6 in the experiments of the proposed method. A WQBHS is created to store and sort the pixels marked as waiting pixels in the process of PU. The non-boundary unbiased pixels among four neighbors (i.e., up pixel, down pixel, left pixel and right pixel) that are directly connected with the seed pixel, are marked as waiting pixels to be unwrapped, and these waiting pixels are inserted into the WQBHS, respectively.

**STEP 1.2**: First, the waiting pixel with the smallest phase derivative variance value is fetched in the WQBHS, and marked as pixel x. Then, pixel x is unwrapped by the proposed CIPFPU method, and the pixel x is removed from the WQBHS, and then non-boundary unbiased wrapped pixels among four neighbors of the pixel x are marked as waiting pixels, and are put into the WQBHS, respectively.

**STEP 1.3**: Are there any waiting pixels in the WQBHS? Yes, go into **STEP 1.2**, No, go into **STEP 2**.

**STEP 2, Process on${L}_{N-1}$**

**STEP 2.1:${L}_{N-1}$is preprocessed.**

First, the unwrapped phase of two corresponding pixels in the${L}_{N-1}$are obtained through performing regular reverse wavelet transform on the unwrapped phase of each unwrapped pixel in the${L}_{N}$and the corresponding high-pass coefficient in the${H}_{N}$. Then, a WQBHS is created to store and sort the pixels marked as waiting pixels in the process of PU at this decomposition level, and non-boundary unbiased wrapped pixels among four neighbors of each unwrapped pixel with the unwrapped phase in the${L}_{N-1}$are marked as waiting pixels, and are put into the WQBHS, respectively.

**STEP 2.2**: First, the waiting pixel with the smallest phase derivative variance value is fetched in the WQBHS and marked as pixel x. Then, pixel x is unwrapped by the proposed CIPFPU method, and the pixel x is removed from the WQBHS, and then non-boundary unbiased wrapped pixels among four neighbors of the pixel x in the${L}_{N-1}$are marked as waiting pixels, and are put into the WQBHS, respectively.

**STEP 2.3**: Are there any waiting pixels in the WQBHS? Yes, go into **STEP 2.2**, No, go into **STEP 3**.

......

**STEP N, Process on${L}_{1}$**

**STEP N.1:${L}_{1}$is preprocessed.**

First, the unwrapped phase of each unwrapped pixel in the${L}_{2}$and the corresponding high-pass coefficient in the${H}_{2}$are combined to obtain the unwrapped phase of two corresponding pixels in the${L}_{1}$through regular reverse wavelet transform. Then, a WQBHS is created to store and sort the pixels marked as waiting pixels in the process of PU at this decomposition level, and non-boundary unbiased wrapped pixels among four neighbors of each unwrapped pixel with the unwrapped phase in the${L}_{1}$are marked as waiting pixels, and are put into the WQBHS, respectively.

**STEP N.2**: First, the waiting pixel with the smallest phase derivative variance value is fetched in the WQBHS and marked as pixel x. Then, pixel x is unwrapped by the proposed CIPFPU method, and the pixel x is removed from the WQBHS, and then non-boundary unbiased wrapped pixels among four neighbors of the pixel x in the${L}_{1}$are marked as waiting pixels, and are put into the WQBHS, respectively.

**STEP N.3**: Are there any waiting pixels in the WQBHS? Yes, go into **STEP N.2**, No, go into **STEP N + 1**.

**STEP N + 1, Process on${L}_{0}$**

**STEP (N + 1).1**:${L}_{0}$**is preprocessed.**

First, the unwrapped phase of each unwrapped pixel in the${L}_{1}$and the corresponding high-pass coefficient in the${H}_{1}$are combined to obtain the unwrapped phase of two corresponding pixels in the${L}_{0}$through regular reverse wavelet transform. Then, a WQBHS is created to store and sort the pixels marked as waiting pixels in the process of PU at this decomposition level, and non-boundary wrapped pixels among four neighbors of each unwrapped pixel with the unwrapped phase in the${L}_{0}$are marked as waiting pixels, and are put into the WQBHS, respectively.

**STEP (N + 1).2**: First, the waiting pixel with the smallest phase derivative variance value is fetched in the WQBHS and marked as pixel x. Then, pixel x is unwrapped by the proposed CIPFPU method, and the pixel x is removed from the WQBHS, and then non-boundary wrapped pixels among four neighbors of the pixel x in the${L}_{0}$are marked as waiting pixels, and are put into the WQBHS, respectively.

**STEP (N + 1).3**: Are there any waiting pixels in the WQBHS? Yes, go into **STEP (N + 1).2**, No, end. it is worth mentioning that the unwrapped phase of${L}_{0}$refer to the unwrapped phase estimate of original wrapped phase images.

## 3. Experimental results and analysis

To demonstrate the performances of the proposed method, this method will be tested on synthetic data and experimental data, and will be also compared with the representative methods including the quality-guided PU (QGPU) algorithm [1] [9] that is one of the most used methods, and the improved unscented Kalman filtering PU (IUKFPU) method [30] that is the latest development of the UKFPU methods [24–27], as well as the accelerated F2DPU (AF2DPU) algorithm [35] which is the MWT based accelerated version of the F2DPU method [10], etc. It needs to be mentioned that phase gradient information for each pixel is estimated in a local window of 5 × 5 through the efficient local phase gradient estimator proposed in the experiments of the proposed method in this paper, accordingly, boundary pixels including the first two rows and the last two rows, and the first two columns and the last two columns of wrapped phase images should be masked to not be unwrapped since phase gradient information at boundary pixels is not accurate enough. The scaling parameter$u$of Levenberg-Marquardt method in Eq. (11) is preset to 0.6 in the experiments of the proposed method in this paper. The number of sample particles in the CIPFPU method is 50, which helps the CIPFPU algorithm to obtain higher accuracy with acceptable time consumption. Similar to the proposed method, boundary pixels are masked to not be unwrapped in the experiments of the QGPU and IUKFPU as well as AF2DPU method, for accurately comparing the performances of PU algorithms, and phase derivative variance map [1] of wrapped phase images is used to guide unwrapping paths of the QGPU, IUKFPU and the proposed method in the experiments. The number of iterations in the IUKFPU method is set to zero in the experiments in this paper since the efficiency of the IUKFPU method is highest when the number of iterations is equal to zero. In addition, phase gradient information for each pixel is estimated with the LPGE-B-AMPM in a local window with the size of 5 × 5 in the IUKFPU method. The number of decomposition levels,$N$is equal to 2 in the experiments of the AF2DPU and the accelerated CIPFPU algorithm in this paper, a larger number of decomposition levels is not recommended as nearly all coefficients at the higher levels will be aliased, resulting in speed loss and precision loss of unwrapping procedure [35], the aliasing masks${A}_{i}$at every decomposition level are performed dilating within radius of 1 pixel in this experiments. More details about the selection of the number of decomposition levels and dilating of the aliasing masks can be found in [35]. All experiments are executed in the same MATLAB (R2016a) operating environments with a PC with an Intel @2.30G CPU + 8GB of RAM.

#### 3.1. Synthetic data experiments

Synthetic wrapped phase images with different SNR and different size here will be generated as standard test images since true unwrapped phase is available so that it can be compared with the phase obtained by the PU algorithms. In addition, phase values are presented in radians in all figures in this paper. Three synthetic test images are shown in Figs. 2(a)–2(f), where Figs. 2(a)–2(c) refer to the true unwrapped phase maps with the size of 512 × 512, 768 × 768, 1024 × 1024, respectively, and Figs. 2(d)–2(f) refer to their corresponding wrapped phase images, respectively. The solutions obtained through applying the QGPU, IUKFPU, AF2DPU, and the proposed method including the CIPFPU algorithm and its accelerated version to unwrap Figs. 2(d)–2(f), are shown in Figs. 3–5, respectively. The mean square root error (MSRE) values and the runtime of unwrapping procedure, obtained by applying the above methods to unwrap the noisy wrapped phase images with the different SNR, corresponding to the true unwrapped phase shown in Figs. 2(a)–2(c), are reported in Table 1 and Table 2, respectively. Here, the MSRE refers to the average of the absolute value of the difference between the true unwrapped phase and the unwrapped phase obtained with PU algorithms, and the MSRE in Table 1 and the run-time in Table 2 are averaged over 20 instances per noise level for each PU algorithm.

From Figs. 3–5, Tables 1 and 2, the following conclusions can be inferred: a) the unwrapping phase errors obtained with the above methods increase when the SNR of wrapped phase images degrades, however, the proposed CIPFPU algorithm and its accelerated version can perform better in all cases and their errors not only are far less than that of the QGPU and AF2DPU method but also are slightly less than that of the IUKFPU method; b) the run-time of the three methods including the QGPU, IUKFPU, CIPFPU method depends only on the size of wrapped phase images, and increases with the increase of the size of wrapped phase images when the quality map to guide unwrapping paths is determined; c) the time consumption of the accelerated CIPFPU algorithm depends largely on the size of wrapped phase images, and the accelerated CIPFPU algorithm can usually obtain larger gains in speedup from the wrapped phase images with the larger sizes and the higher SNR, however the run-time of the AF2DPU method depends on not only the size of wrapped phase images but also the SNR of wrapped phase images, and rapidly increases when the size of wrapped phase images increases or the SNR of wrapped phase images degrades; (d) the time consumption of the proposed CIPFPU algorithm and its accelerated version is far less than that of the QGPU and IUKFPU method in all cases, and even is also far less than that of the AF2DPU method when the SNR of the wrapped phase images is not high enough in the experiments of unwrapping for second image (768 × 768) and third image (1024 × 1024); (e) compared with the proposed CIPFPU method, the accelerated CIPFPU algorithm cannot only achieve acceptable gains in speedup, but also has higher precision for PU in all cases.

#### 3.2. Experimental data experiments

The proposed method is further tested with the experimental wrapped phase images taken from a hologram of a MEMS lens [35], and also is further compared with other algorithms including the QGPU, IUKFPU and AF2DPU method to fully demonstrate its performances. The experimental wrapped phase image is shown in Fig. 6. The results obtained through applying the QGPU, IUKFPU, AF2DPU, and the proposed CIPFPU algorithm as well as the accelerated CIPFPU algorithm to unwrap Fig. 6, are reported in Fig. 7, respectively. The runtime of above unwrapping procedure performing on the wrapped phase image shown in Fig. 6, is reported in Table 3.

As can be seen from Fig. 7 that the fringes of rewrapped phase images obtained with the QGPU and AF2DPU method are consistent with ones of original wrapped phase images shown in Fig. 6, while the QGPU and AF2DPU method can't suppress noise present in the wrapped pixels and plenty of dispersion speckle noise still appears at the fringe edges of rewrapped phase images, which may result in large errors in the unwrapped phase delivered by these two methods. It can also be deserved from Fig. 7 that not only the fringes of rewrapped phase obtained with the proposed CIPFPU algorithm and its accelerated version are consistent with ones of original wrapped phase images but also there are almost no dispersion speckle noise in the rewrapped results, which shows that the proposed CIPFPU algorithm and its accelerated version effectively remove phase noise in the wrapped phase images and better unwrap the wrapped phase images, with respect to the QGPU and AF2DPU method, however the time consumption of the proposed CIPFPU algorithm and its accelerated version is far less than that of the QGPU and AF2DPU method in the experiments of unwrapping for noisy MEMS, see Table 3. In addition, the results obtained by the IUKFPU method are similar to the ones obtained by the proposed CIPFPU method, but the time consumption of the IUKFPU method is far larger than that of the proposed CIPFPU algorithm and its accelerated version, see Fig. 7, and Table 3.

## 4. Conclusions

This paper proposes an efficient PU technique called as the CIPFPU algorithm through combining a CIPF with an efficient local phase gradient estimator and an efficient quality-guided strategy based on heap-sort. Results obtained with various types of wrapped phase images including synthetic data and experimental data demonstrate the effectiveness of the proposed CIPFPU method, and the comparisons with some representative methods including the QGPU, IUKFPU, AF2DPU method show that the proposed CIPFPU approach can obtain better solutions from wrapped fringe patterns, with acceptable time consumption. Moreover, the accelerated version of the proposed CIPFPU algorithm under the frame of the MWT is also demonstrated with various types of wrapped phase images, and can achieve acceptable gains in speedup, even with the higher precision of PU, which is helpful to provide suitable choice for real-time applications including InSAR and InSAS as well as DHM.

## Funding

National Natural Science Foundation of China (NSFC) (41661092); Guangxi Natural Science Foundation (2018GXNSFAA281196); Dean Project of Guangxi Key Laboratory of Wireless Broadband Communication and Signal Processing (GXKL06180102).

## Acknowledgments

Author would also like to thank Prof. David Blinder of Vrije Universiteit Brussel, Department of Electronics and Informatics for providing experimental wrapped phase images.

## References

**1. **D. C. Ghiglia and M. D. Pritt, *Two-Dimensional Phase Unwrapping: Theory, Algorithm, and Software* (Wiley, 1998).

**2. **S. S. Gorthi, G. Rajshekhar, and P. Rastogi, “Strain estimation in digital holographic interferometry using piecewise polynomial phase approximation based method,” Opt. Express **18**(2), 560–565 (2010). [CrossRef] [PubMed]

**3. **B. Osmanoglu, T. H. Dixon, S. Wdowinski, and E. Cabral-Cano, “On the importance of path for phase unwrapping in synthetic aperture radar interferometry,” Appl. Opt. **50**(19), 3205–3220 (2011). [CrossRef] [PubMed]

**4. **M. Zhao, L. Huang, Q. Zhang, X. Su, A. Asundi, and Q. Kemao, “Quality-guided phase unwrapping technique: comparison of quality maps and guiding strategies,” Appl. Opt. **50**(33), 6214–6224 (2011). [CrossRef] [PubMed]

**5. **H. Zhong, J. Tang, S. Zhang, and M. Chen, “An improved quality-guided phase-unwrapping algorithm based on priority queue,” IEEE Geosci. Remote Sens. Lett. **8**(2), 364–368 (2011). [CrossRef]

**6. **R. M. Goldstein, H. A. Zebker, and C. L. Werner, “Satellite radar interferometry: two-dimensional phase unwrapping,” Radio Sci. **23**(4), 713–720 (1988). [CrossRef]

**7. **J. M. Bioucas-Dias and G. Valadão, “Phase unwrapping via graph cuts,” IEEE Trans. Image Process. **16**(3), 698–709 (2007). [CrossRef] [PubMed]

**8. **D. L. Zheng and F. P. Da, “A novel algorithm for branch cut phase unwrapping,” Opt. Lasers Eng. **49**(5), 609–617 (2011). [CrossRef]

**9. **A. Asundi and Z. Wensen, “Fast phase-unwrapping algorithm based on a gray-scale mask and flood fill,” Appl. Opt. **37**(23), 5416–5420 (1998). [CrossRef] [PubMed]

**10. **M. A. Herráez, D. R. Burton, M. J. Lalor, and M. A. Gdeisat, “Fast two-dimensional phase-unwrapping algorithm based on sorting by reliability following a noncontinuous path,” Appl. Opt. **41**(35), 7437–7444 (2002). [CrossRef] [PubMed]

**11. **C. De Veuster, P. Slangen, Y. Renotte, L. Berwart, and Y. Lion, “Disk-growing algorithm for phase-map unwrapping: application to speckle interferograms,” Appl. Opt. **35**(2), 240–247 (1996). [CrossRef] [PubMed]

**12. **W. Xu and I. Cumming, “A region-growing algorithm for InSAR phase unwrapping,” IEEE Trans. Geosci. Remote Sens. **37**(1), 124–134 (1999). [CrossRef]

**13. **D. Gao and F. Yin, “Mask cut optimization in two-dimensional phase unwrapping,” IEEE Geosci. Remote Sens. Lett. **9**(3), 338–342 (2012). [CrossRef]

**14. **T. J. Flynn, “Two-dimensional phase unwrapping with minimum weighted discontinuity,” J. Opt. Soc. Am. A **14**(10), 2692 (1997). [CrossRef]

**15. **G. F. Carballo and P. W. Fieguth, “Probabilistic Cost Functions for Network Flow Phase Unwrapping,” IEEE Trans. Geosci. Remote Sens. **38**(5), 2192–2201 (2000). [CrossRef]

**16. **M. Costantini, “A novel phase unwrapping method based on network programming,” IEEE Trans. Geosci. Remote Sens. **36**(3), 813–821 (1998). [CrossRef]

**17. **C. W. Chen and H. A. Zebker, “Network approaches to two-dimensional phase unwrapping: intractability and two new algorithms,” J. Opt. Soc. Am. A **17**(3), 401–414 (2000). [CrossRef] [PubMed]

**18. **D. C. Ghiglia and L. A. Romero, “Robust two-dimensional weighted and unweighted phase unwrapping that uses fast transforms and iterative methods,” J. Opt. Soc. Am. A **11**(1), 107–117 (1994). [CrossRef]

**19. **G. H. Kaufmann, G. E. Galizzi, and P. D. Ruiz, “Evaluation of a preconditioned conjugate-gradient algorithm for weighted least-squares unwrapping of digital speckle-pattern interferometry phase maps,” Appl. Opt. **37**(14), 3076–3084 (1998). [CrossRef] [PubMed]

**20. **M. D. Pritt, “Phase unwrapping by means of multigrid techniques for interferometric SAR,” IEEE Trans. Geosci. Remote Sens. **34**(3), 728–738 (1996). [CrossRef]

**21. **D. C. Ghiglia and L. A. Romero, “Minimum LP-norm two dimensional phase unwrapping,” J. Opt. Soc. Am. A **13**(10), 1999–2013 (1996). [CrossRef]

**22. **H. Nies, O. Loffeld, and R. Wang, “Phase unwrapping using 2D-Kalman filter potential and limitations,” *in**Proceedings of IEEE Conference on International Geoscience and Remote Sensing Symposium* (IEEE, 2008), paper IV1213. [CrossRef]

**23. **O. Loffeld, H. Nies, S. Knedlik, and W. Yu, “Phase unwrapping for SAR interferometry: A data fusion approach by Kalman filtering,” IEEE Trans. Geosci. Remote Sens. **46**(1), 47–58 (2008). [CrossRef]

**24. **X. Xianming and P. Yiming, “Multi-baseline phase unwrapping algorithm based on the unscented Kalman filter,” IET Radar Sonar & Navigation **5**(3), 296–304 (2011). [CrossRef]

**25. **X. M. Xie and Y. M. Pi, “Phase noise filtering and phase unwrapping method based on unscented Kalman filter,” J. Syst. Eng. Electron. **22**(3), 365–372 (2011). [CrossRef]

**26. **X. Xie and Y. Li, “Enhanced phase unwrapping algorithm based on unscented Kalman filter, enhanced phase gradient estimator, and path-following strategy,” Appl. Opt. **53**(18), 4049–4060 (2014). [CrossRef] [PubMed]

**27. **X. M. Xie and Q. N. Zeng, “Efficient and robust phase unwrapping algorithm based on unscented Kalman filter, the strategy of quantizing paths-guided map, and pixel classification strategy,” Appl. Opt. **54**(31), 9294–9307 (2015). [CrossRef] [PubMed]

**28. **R. G. Waghmare, D. Mishra, G. R. Sai Subrahmanyam, E. Banoth, and S. S. Gorthi, “Signal tracking approach for phase estimation in digital holographic interferometry,” Appl. Opt. **53**(19), 4150–4157 (2014). [CrossRef] [PubMed]

**29. **Z. Cheng, D. Liu, Y. Yang, T. Ling, X. Chen, L. Zhang, J. Bai, Y. Shen, L. Miao, and W. Huang, “Practical phase unwrapping of interferometric fringes based on unscented Kalman filter technique,” Opt. Express **23**(25), 32337–32349 (2015). [CrossRef] [PubMed]

**30. **X. Xie, “Iterated unscented Kalman filter for phase unwrapping of interferometric fringes,” Opt. Express **24**(17), 18872–18897 (2016). [CrossRef] [PubMed]

**31. **J. J. Martinez-Espla, T. Martinez-Marin, and J. M. Lopez-Sanchez, “A particle filter approach for InSAR phase filtering and unwrapping,” IEEE Trans. Geosci. Remote Sens. **47**(4), 1197–1211 (2009). [CrossRef]

**32. **X. M. Xie and Y. M. Pi, “Phase unwrapping: an unscented particle filtering approach,” Tien Tzu Hsueh Pao **9**(3), 705–709 (2011).

**33. **R. G. Waghmare, P. R. Sukumar, G. R. K. S. Subrahmanyam, R. K. Singh, and D. Mishra, “Particle-filter-based phase estimation in digital holographic interferometry,” J. Opt. Soc. Am. A **33**(3), 326–332 (2016). [CrossRef] [PubMed]

**34. **X. Xie and G. Dai, “Unscented information filtering phase unwrapping algorithm for interferometric fringe patterns,” Appl. Opt. **56**(34), 9423–9434 (2017). [CrossRef] [PubMed]

**35. **D. Blinder, H. Ottevaere, A. Munteanu, and P. Schelkens, “Efficient multiscale phase unwrapping methodology with modulo wavelet transform,” Opt. Express **24**(20), 23094–23108 (2016). [CrossRef] [PubMed]

**36. **H. Y. H. Huang, L. Tian, Z. Zhang, Y. Liu, Z. Chen, and G. Barbastathis, “Path-independent phase unwrapping using phase gradient and total-variation (TV) denoising,” Opt. Express **20**(13), 14075–14089 (2012). [CrossRef] [PubMed]

**37. **H. Y. Wang, F. F. Liu, and Q. F. Zhu, “Improvement of phase unwrapping algorithm based on image segmentation and merging,” Opt. Commun. **308**(11), 218–223 (2013). [CrossRef]

**38. **J. Langley and Q. Zhao, “Unwrapping magnetic resonance phase maps with Chebyshev polynomials,” Magn. Reson. Imaging **27**(9), 1293–1301 (2009). [CrossRef] [PubMed]

**39. **S. Yuqing, “Robust phase unwrapping by spinning iteration,” Opt. Express **15**(13), 8059–8064 (2007). [CrossRef] [PubMed]

**40. **M. Servin, F. J. Cuevas, D. Malacara, J. L. Marroquin, and R. Rodriguez-Vera, “Phase unwrapping through demodulation by use of the regularized phase-tracking technique,” Appl. Opt. **38**(10), 1934–1941 (1999). [CrossRef] [PubMed]

**41. **C. Tian, Y. Yang, D. Liu, Y. Luo, and Y. Zhuo, “Demodulation of a single complex fringe interferogram with a path-independent regularized phase-tracking technique,” Appl. Opt. **49**(2), 170–179 (2010). [CrossRef] [PubMed]

**42. **J. C. Estrada, M. Servin, and J. A. Quiroga, “Noise robust linear dynamic system for phase unwrapping and smoothing,” Opt. Express **19**(6), 5126–5133 (2011). [CrossRef] [PubMed]

**43. **M. A. Navarro, J. C. Estrada, M. Servin, J. A. Quiroga, and J. Vargas, “Fast two-dimensional simultaneous phase unwrapping and low-pass filtering,” Opt. Express **20**(3), 2556–2561 (2012). [CrossRef] [PubMed]

**44. **J. F. Weng and Y. L. Lo, “Integration of robust filters and phase unwrapping algorithms for image reconstruction of objects containing height discontinuities,” Opt. Express **20**(10), 10896–10920 (2012). [CrossRef] [PubMed]

**45. **J. F. Weng and Y. L. Lo, “Novel rotation algorithm for phase unwrapping applications,” Opt. Express **20**(15), 16838–16860 (2012). [CrossRef]

**46. **H. P. Zhong, J. S. Tang, S. Zhang, and X. B. Zhang, “A Quality-Guided and Local Minimum Discontinuity Based Phase Unwrapping Algorithm for InSAR/InSAS Interferograms,” IEEE Geosci. Remote Sens. Lett. **11**(1), 215–219 (2014). [CrossRef]

**47. **K. P. B. Chandra, D. W. Gu, and I. Postlethwaite, “Cubature Information Filter and its Applications,” Am. Control Conf. **47**(3), 3609–3614(2011).

**48. **M. S. Arulampalam, S. Maskell, N. Gordon, and T. Clapp, “A tutorial on particle filters for online nonlinear/non-Gaussian Bayesian tracking,” IEEE Trans. Signal Process. **50**(2), 174–188 (2002). [CrossRef]

**49. **X. M. Xie, “New particle filtering phase unwrapping algorithm for wrapped fringe pattern,” Opt. Lasers Eng. **116**, 55–67 (2019). [CrossRef]

**50. **J. J. Moré, “The Levenberg-Marquardt algorithm: Implementation and theory,” Lect. Notes Math. **630**, 105–116 (1978). [CrossRef]

**51. **R. L. Bellaire, E. W. Kamen, and S. M. Zabin, “New nonlinear iterated filter with applications to target tracking,” Proc. SPIE **2561**, 240–251 (1995). [CrossRef]