Improving 3D reconstruction accuracy in wavelet transform profilometry by reducing shadow effects

IET Image ProcessingVolume 14, Issue 2 p. 310-317 Research ArticleFree Access Improving 3D reconstruction accuracy in wavelet transform profilometry by reducing shadow effects Claudia-Victoria López-Torres, Claudia-Victoria López-Torres Facultad de Informática, Universidad Autónoma de Querétaro, Av. de las Ciencias S/N, Juriquilla, Querétaro, MéxicoSearch for more papers by this authorSebastián Salazar Colores, Sebastián Salazar Colores orcid.org/0000-0002-6353-0864 Facultad de Informática, Universidad Autónoma de Querétaro, Av. de las Ciencias S/N, Juriquilla, Querétaro, MéxicoSearch for more papers by this authorKevin Kells, Kevin Kells orcid.org/0000-0003-1597-1179 Telfer School of Management, Centre for Business Analytics and Performance, University of Ottawa, Ottawa, CanadaSearch for more papers by this authorJesús-Carlos Pedraza-Ortega, Corresponding Author Jesús-Carlos Pedraza-Ortega caryoko@yahoo.com orcid.org/0000-0001-5125-8907 Facultad de Ingeniería, Universidad Autónoma de Querétaro, Cerro de las Campanas s/n, Querétaro, MéxicoSearch for more papers by this authorJuan-Manuel Ramos-Arreguin, Juan-Manuel Ramos-Arreguin Facultad de Ingeniería, Universidad Autónoma de Querétaro, Cerro de las Campanas s/n, Querétaro, MéxicoSearch for more papers by this author Claudia-Victoria López-Torres, Claudia-Victoria López-Torres Facultad de Informática, Universidad Autónoma de Querétaro, Av. de las Ciencias S/N, Juriquilla, Querétaro, MéxicoSearch for more papers by this authorSebastián Salazar Colores, Sebastián Salazar Colores orcid.org/0000-0002-6353-0864 Facultad de Informática, Universidad Autónoma de Querétaro, Av. de las Ciencias S/N, Juriquilla, Querétaro, MéxicoSearch for more papers by this authorKevin Kells, Kevin Kells orcid.org/0000-0003-1597-1179 Telfer School of Management, Centre for Business Analytics and Performance, University of Ottawa, Ottawa, CanadaSearch for more papers by this authorJesús-Carlos Pedraza-Ortega, Corresponding Author Jesús-Carlos Pedraza-Ortega caryoko@yahoo.com orcid.org/0000-0001-5125-8907 Facultad de Ingeniería, Universidad Autónoma de Querétaro, Cerro de las Campanas s/n, Querétaro, MéxicoSearch for more papers by this authorJuan-Manuel Ramos-Arreguin, Juan-Manuel Ramos-Arreguin Facultad de Ingeniería, Universidad Autónoma de Querétaro, Cerro de las Campanas s/n, Querétaro, MéxicoSearch for more papers by this author First published: 01 February 2020 https://doi.org/10.1049/iet-ipr.2019.0854Citations: 2AboutSectionsPDF ToolsRequest permissionExport citationAdd to favoritesTrack citation ShareShare Give accessShare full text accessShare full-text accessPlease review our Terms and Conditions of Use and check box below to share full-text version of article.I have read and accept the Wiley Online Library Terms and Conditions of UseShareable LinkUse the link below to share a full-text version of this article with your friends and colleagues. Learn more.Copy URL Share a linkShare onFacebookTwitterLinkedInRedditWechat Abstract Wavelet transform profilometry is a three-dimensional (3D) reconstruction method based on the structured light technique of fringe pattern projection, widely used because it is a non-invasive, high-performance 3D reconstruction method. The presence of shadows created by the object in the image capture process is an obstacle in obtaining accurate 3D reconstructions, as they add noise to the phase data, leading to artefacts in object reconstruction, even when using robust phase-unwrapping algorithms. Since shadows present diverse intensities and shapes, detecting and eliminating their effects are challenging tasks. This work presents a novel method to detect shadow regions and reduce their effects in 3D reconstruction. The proposed method uses coloured fringe patterns to detect the shadows and mathematical morphology to condition the outlines of the shadow regions. The shadow outline information is used to interpolate the background-plane fringe pattern onto the captured scene, where the shadows are detected. The mean squared error (MSE) of the reconstructed objects is reduced to 25% of the MSE without shadow removal, on an average, when using the Bioucas phase-unwrapping method. When using the Ghiglia phase-unwrapping method, the MSE reduction is to 8.3%, on an average, of the MSE in the shadow case. 1 Introduction There are several techniques for measuring three-dimensional (3D) surface shape, classified as contact and non-contact techniques. Since non-contact techniques are non-invasive, they have been intensively studied in recent years. In particular, the use of structured light patterns has achieved the most promising results in terms of speed and accuracy [1, 2]. Fringe projection technique (FPT), specifically, is a structured light pattern technique, which detects the surface elevation of the object to be reconstructed through the distortion of a fringe pattern [3, 4]. However, during the capture process, shadows are generated by object occlusion. These shadow regions are detected as noise, generating large errors in the accuracy of the 3D reconstruction. One of the most widely used FPP methods is called Fourier transform profilometry (FTP) [5], introduced by Takeda in 1983 [6], in which a fringe pattern is projected onto an object, and the spatial frequency of the scene is captured to obtain the object's 3D information. More recently, another technique derived from FTP was proposed called wavelet transform profilometry (WTP) [7], which improves the characterisation of non-stationary local signals. Wavelet transform is a mathematical tool that decomposes a signal into sub-signals with different resolution levels [8]. Although most research carried out using WTP is performed using grey-scale fringe patterns [9-11], there has been some research using colour fringe patterns – the approach used in this paper. For example, to obtain the height of the object, Jiang et al. [12] used the relationship between the height and the colour generated in a colour space, though no shadow detection or elimination strategy is proposed as in the present work. Skydan et al. [13] implemented a method that works in the red, green, and blue (RGB) space, projecting fringe patterns at multiple angles using multiple projectors to avoid creating shadows. The present paper proposes a method of detecting and eliminating the shadows instead. The phase-unwrapping algorithm used in [13], Herráez, was one of five different algorithms evaluated in the present paper [14]; the results using the Bioucas [15] and Ghiglia [16] algorithms were superior. In [4], the Haar wavelet analysis used the sharp variations in intensity at the shadow boundaries, together with the mean and standard deviation of fringe intensity between fringe peaks, to detect shadow boundaries, even under conditions with random noise present. However, Hani et al. [4] propose that phase unwrapping and reconstruction do not take place in shadow areas, rather than the novel approach of replacing shadow areas with background reference pixels, as proposed in the present paper. The simple, rectangular object used in [4] was not evaluated for the final reconstruction quality after phase unwrapping, while the present paper uses six non-trivial objects and presents numerical and visual results for each. In [17], two methods are proposed for shadow detection using photometric stereo; however, these involve the use of two cameras and employ pixel-intensity comparisons. No reconstruction results are presented that include shadow detection and elimination. The present paper presents qualitative and quantitative 3D reconstruction results with shadow elimination using a single camera and a single, colour fringe pattern projection (FPP). There are also moving-picture research studies focused on the detection and elimination of shadows such as [18], which uses the Daubechies complex wavelet, making use of the wavelet coefficient variation to detect shadows. In [19], a method is proposed that combines the Daubechies complex wavelet and Zernike moments as characteristics of the object, implementing an algorithm for object tracking that takes advantage of the Daubechies complex wavelet characteristics. In [20], a shadow detection method is proposed using the illumination invariance property of ratio edges under different lighting conditions. These methods provide insights into shadow detection by focusing on dynamic objects in moving pictures, though they do not involve 3D reconstruction of these objects, which is the focus of the present work. In this paper, a different method for handling 3D reconstruction is proposed using WTP, applying a colour FPP to differentiate fringe pattern minima from shadow minima, and using a super-pixel-based fast fuzzy clustering method (SFFCM) [21], together with morphological dilation, to define shadow region masks. Shadow regions are removed by replacing shadow masks with background reference pixels, improving the accuracy of the 3D reconstruction. The rest of this work is organised as follows: Section 2 gives the background. Section 3 is concerned with methods and data. Section 4 presents the results and analysis. Finally, Section 5 discusses the conclusions. 2 Background In this section, wavelets, wavelet analysis, and mother functions are explained. 2.1 Wavelet transform Wavelets are variable duration wave components that can represent local variations in the detail of an image [22]. In recent years, wavelets have been widely used in signal processing, as they can be used to work with non-stationary signals and distorted fringes to represent a signal in time and frequency simultaneously. Also, wavelets can divide a signal into sub-signals in a process denominated multi-resolution analysis. The multi-resolution analysis is the decomposition of a signal into sub-signals (smaller images) with different sizes and resolution levels. This analysis permits decomposition of the original image to obtain a low-resolution image, abstracting the finer details [22]. Wavelet analysis permits using long time intervals requiring low-frequency information and short intervals requiring high frequencies [23]. This analysis can reveal aspects of the signal such as trends, breakpoints, and discontinuities. The process of applying a wavelet transform to a signal is called analysis, and the inverse of this process, reconstructing the signal, is called synthesis. The wavelet family is derived from a function called the mother wavelet , for [24]. Hence, the mother wavelet is a prototype, which generates other wavelet functions, represented by (1)where S and are the scaling and translation parameters, respectively. Continuous wavelet transform (CWT) coefficients, as a function of scale and translation, are obtained by multiplying the signal with the scaled, shifted wavelet function, integrated over the time of the signal [25], as given by (2)where denotes complex conjugation and S and are the scaling and translation parameters, respectively. The scale and translation are the continuous parameters of the mother wavelet. These values define the wavelet family function. 3 Methods 3.1 Wavelet transform profilometry WTP is applied in the projection analysis of fringe patterns. Through this analysis, the embedded phase information is obtained, which contains the height of the object [26-29]. There are two methods to obtain phase information: the gradient phase method and the phase estimation method. Gdeisat demonstrates in [9] that the phase estimation method provides better performance for FPP including noise effects. Phase extraction is carried out line-by-line using a fringe pattern, producing a complex 2D array composed of a real part and an imaginary part [9]. 3.2 Complex Morlet wavelet The CWT is a complex value filter, which analytically separates pure signals into complex components, with a real part and an imaginary part. These components are used to obtain phase (imaginary part) and amplitude (real part) information from the signal, required to describe the location of the oscillating energy source [30] (Complex wavelets do not have negative frequency components [31].). Fig. 1 shows the real and imaginary parts of the complex Morlet wavelet. Fig. 1Open in figure viewerPowerPoint Real and imaginary parts of complex Morlet wavelet Which wavelet to select depends on the nature of the signal and the analysis required [31]. For this research, the 1D Morlet wavelet was selected, because it provides better localisation in both the spatial and frequency domains for sinusoidal signals, due to being composed of a complex sinusoidal wave and a Gaussian envelope. The definition of the 1D Morlet wavelet is as follows: (3)where is the correction term and . Equation (3) simplifies to (4)where is the normalisation factor and is the complex sine (5)and is the Gaussian normal distribution function [31]. The complex Morlet wavelet is defined by (6)where i is and is the frequency of the Morlet wavelet. For the present work, the parameters were chosen to minimise the error in 3D reconstruction following [32]. The MATLAB complex Morlet wavelet function Cmor was used with central frequency and bandwidth . 3.3 Fringe pattern projection A sinusoidal pattern of light and dark fringes is projected onto the object and the background plane. The fringes are deformed by the shape of the object, which is captured by a digital camera. The deformation provides surface depth, encoded in the phase. The fringe phase distribution provides the object's depth profile [33]. The fringe pattern can be generated in different ways. The most common method is to use computer software and a projection device, which has the advantages of flexibility, easy control, and high contrast, especially with the increasing availability of new digital light processing hardware [34]. 3.4 Fringe pattern composition Fig. 2 shows the composition of the coloured fringes fromthree components: (a) fringes in the red layer, (b) fringes in the green layer,and (c) a blue layer without fringes, resulting in (d) blue fringes. Fig. 2Open in figure viewerPowerPoint RGB sinusoidal pattern showing the (a) Red channel,(b) Green channel,(c) Blue channel, resultingin, (d) Composite RGB image with bluesinusoidal fringes The fringes are sinusoidal, as depicted. An important factor to be considered in high-quality 3D reconstruction is the shadow acquired at the time of capture. The angle of incidence of the FPP defines the shadow region. Object shape is also a factor. To optimise the capture system, it is necessary to consider the angle between the camera and projector, the density of the fringes, the number of fringes, and the hardware used. All these elements are part of the object capture system design. The greater the number of fringes projected onto the object, the higher the quality of the reconstruction, while at the same time, the number of pixels used to represent each fringe must also exceed a minimum threshold – typically >10 px per fringe – to obtain higher-quality reconstructions [35]. The number of fringes will depend on the size of the object. Therefore, there is a trade-off between the size of the object, the number of projected fringes, and the resolution of the projected fringe pattern. The angle between the projector and camera should be <90° to avoid fringe distortion, with the best results obtained at angles between 12° and 15° [35]. 3.5 Morphological grey-scale dilation The dilation of A using a flat structuring element B at the location is defined as the maximum value of the image in the window, defined by when the origin of is in [36]. Thus, the dilation in of an image A using the structuring element B is given by (7) 3.6 Super-pixel-based fast fuzzy clustering method To identify shadow regions, an SFFCM [21] was employed. This method first improves the image contours by applying what Lei et al. call a multiscale morphological gradient reconstruction operation, leading to a super-pixel image. A colour histogram is obtained for each super-pixel, and an enhanced fuzzy c-means clustering algorithm is applied using the resulting histogram colour levels. 3.7 Phase-unwrapping algorithms Phase unwrapping is the step where the absolute phase is recovered from modulo- phases measured during object imaging. The results from five different algorithms were compared and are described briefly here. The Ghiglia algorithm [16] is a global minimisation approach to phase unwrapping, whose solution uses a 2D cosine transform and its inverse, aimed at robustly handling path inconsistencies such as phase shear. The Costantini algorithm [37] uses a global minimisation approach with a novel integer-based formulation to reduce error propagation. This formulation, by taking advantage of the network structure and using an error criterion, offers highly efficient computation by recognising it as a network flow cost minimisation problem. The Bioucas algorithm [15] is another energy minimisation approach solved as an integer optimisation problem. The contribution of this method, dubbed phase unwrapping max-flow algorithm (PUMA) by the authors, lies in the use of graph-cutting techniques to frame the problem as a max-flow, min-cut problem. The Herráez algorithm [14] presents a path-following phase-unwrapping algorithm contrasted with the energy minimisation algorithms. The contribution of this method is the choice of the reliability function, which uses second differences and path selection as a function of edge reliability rather than pixel reliability. Finally, the Itoh algorithm corresponds to the implementation of the MATLAB function unwrap described by Itoh [38]. 4 Experimental results 4.1 Experimental setup Fig. 3 shows the experimental setup used to study 3D reconstructions. It consists of a projector with a pixel resolution of , used to project the colour fringe pattern onto the object, and the Leica-built, rear RGB camera of a Huawei P20 cell phone with an f/1.8 aperture and a 12 Mpx resolution (), used to capture the object of interest. The objects are ceramic, of medium size, and opaque. The experimental results were carried out on a computer with the following characteristics: Intel Core i7-5500U PC at 2.4 GHz, 16 GB RAM, Intel HD graphics 5500, and Windows 10, 64 bits. Fig. 3Open in figure viewerPowerPoint Fringe projection 4.2 Shadow generation In this research work, adjustments were made to the angle of the camera and the projector to generate different shadow sizes: minimum, typical, and maximum. The projector was placed at a distance between 42 and 55 cm from the camera. The angle between the camera and projector was varied to obtain the three shadow sizes. For the minimum shadow, the camera was placed at an angle of 9° from the projector. For the typical shadow, the angle between the camera and projector was 44°. For the maximum shadow, an angle of 70° was used between the camera and projector. 4.3 Processing steps Algorithm 1 (see Fig. 4) is used to detect and remove the shadow area, replacing it with the background fringe pattern. The algorithm is described below by line number, where letters (a)–(e) correspond to the images at the given step as depicted in Fig. 5. The input image with the shadow and the recovered image without shadow are shown in Fig. 6. Fig. 4Open in figure viewerPowerPoint Algorithm 1: the proposed method to detect and segment shadow regions. Letters (a)–(e), correspond to the images in Fig. 5 Fig. 5Open in figure viewerPowerPoint Example of shadow detection and elimination corresponding to Algorithm 1 (Fig. 4) (a) Blue channel, (b) Object detected by segmentation, used as the object mask, (c) Blue channel with the substituted object, (d) Shadow detection segmentation, used as the shadow mask, (e) Masked reference background used to substitute the shadow Fig. 6Open in figure viewerPowerPoint Input and output images from the example of shadow detection and elimination corresponding to Algorithm 1 (Fig. 4) (a) Original image depicting the fringe pattern projected onto the object, where the shadow is observed, (b) Image recovered using substitution of the shadow with the masked reference plane sections In line 1, the original three-channel image file is loaded into the programme as . The blue channel is then isolated as in line 2. Line 3 employs the SFFCM above to segment the blue channel, resulting in . A morphological dilation of is applied using a 5 px square structuring element in line 4, resulting in . In line 5, the object mask is calculated, and in line 6, the background value is extracted. The object mask is used to remove the object information in line 7, replacing it with , and resulting in . This result is then structured using SFFCM to obtain in line 8. Another mask is created in line 9, which is the shadow area mask. In line 10, , the reference background, is formed by vertically repeating the image's first horizontal row of pixels, sweeping it from the top to bottom of the image area. The choice of which row of pixels to use for this purpose can also be more sophisticated. For example, the authors experimented with choosing a row with the least standard deviation, thus representing the most likely natural background row; the results were similar in the studied cases to the simpler choice of taking the first row of pixels. In line 11, the shadow mask is used to replace only those shadow pixels with pixels obtained from the background profile to obtain , the recovered shadow area. Finally, in line 12, the recovered shadow area is overlaid onto the original image to obtain the recovered image . Once the phase and magnitude maps were obtained experimentally, five algorithms were applied for phase unwrapping: Ghiglia, Costantini, Bioucas, Herráez, and the MATLAB unwrap function using the Itoh algorithm. Of these, two were selected – Bioucas and Ghiglia – because they presented the best 3D reconstruction. The third channel, the blue, contains the illumination information, in which three levels are expected: the captured object (foreground), the backplane behind the object (background), and the shadow region if it exists. In addition to being a non-invasive technique, this method is also low cost, given the tools needed to obtain the reconstruction of the captured object. The algorithm with the best 3D reconstruction observed for the objects in these experiments was Bioucas, while the second best was Ghiglia, based on the observation of the apparent quality of the reconstructed object and the amount of noise observed in the phase map and the 3D reconstruction. Fig. 7 shows the processing steps used in this research. The first block shows the object captured with the colour fringe pattern (RGB). Selection of the area of interest is carried out as well as alignment of the fringe pattern. In the second block of the process, the shadow region is detected. Once the shadow is identified, the cross-section profile of the greatest intensity is determined. This region is detected by the difference between the colour fringes and low-intensity pixels corresponding to the shadow. WTP (1D Morlet transform) is applied in the third block, to obtain the intensity and the wrapped phase map, corresponding to the object height. In the fourth block, the different phase splitting algorithms are applied to obtain the unwrapped phase. Fig. 7Open in figure viewerPowerPoint Proposed method 4.4 Results Figs. 8-11 depict a series of experimental results using six objects. First, Fig. 9 presents results using the image without pre-processing the shadow. In Fig. 10, the shadow is removed manually before processing. Finally, Fig. 11 presents results with the shadow removed using the method proposed in this paper. Fig. 8Open in figure viewerPowerPoint Example of image composition (a)–(f) Columns in the first row show the original object with a shadow. The following three rows are the RGB channels. Both the red and green channels contain the fringe pattern information, while the blue channel contains illumination contrast information Fig. 9Open in figure viewerPowerPoint Experimental results using the images without shadow pre-processing, depicting (a) Input image with shadow, (b) Wrapped phase and the 3D unwrapped phases, (c) Using Bioucas, (d) Using Ghiglia. The objects are ‘unicorn’, ‘candy dish’, ‘cow’, ‘kitty’, ‘pitcher’, and ‘decanter’ Fig. 10Open in figure viewerPowerPoint Experimental results with manually removed shadow. Depicted are (a) Manually removed shadow, (b) Wrapped phase and the 3D unwrapped phases, (c) Using Bioucas, (d) Using Ghiglia. The objects are ‘unicorn’, ‘candy dish’, ‘cow’, ‘kitty’, ‘pitcher’, and ‘decanter’ Fig. 11Open in figure viewerPowerPoint Experimental results with the shadow removed using the method proposed in this paper. Depicted are (a) Shadow removed using the proposed method, (b) Wrapped phase and the 3D unwrapped phases, (c) Using Bioucas, (d) Using Ghiglia. The objects are ‘unicorn’, ‘candy dish’, ‘cow’, ‘kitty’, ‘pitcher’, and ‘decanter’ In Figs. 9-11, (a) depicts the image used for processing, (b) represents the wrapped phase of the object – the result of applying the complex Morlet WTP, while (c) depicts the unwrapped phase in 3D reconstruction after applying the Bioucas algorithm, and (d) depicts the unwrapped phase in 3D reconstruction after applying the Ghiglia algorithm. It can be clearly observed that the wrapped phase (phase map) of the object with shadow presents a series of artefacts (high and low frequencies) located at the zones or areas, where the shadow is present, which will have a negative effect on the overall performance of the phase-unwrapping algorithms by adding a step or jump in areas, where the surface is flat. Therefore, the 3D reconstruction will be affected by the artefacts produced by the shadows on the images. As the shadow decreases, the artefacts also decrease, and if the shadow region is detected and substituted by a reference section, the 3D reconstruction will be carried out smoothly, and the shape of the object will be obtained correctly. This effect is observed in Figs. 11c and d. 4.5 Quantitative results Tables 1 and 2 show the mean squared error (MSE) of the reconstructed objects. The reconstruction using the manually removed shadow is taken as the reference for all MSE calculations. (second column) measures the reconstruction error without shadow removal and (third column) measures the reconstruction error with the shadow removed using the proposed algorithm. The calculations in Table 1 used the Bioucas phase-unwrapping algorithm, whereas the results in Table 2 were calculated using the Ghiglia phase-unwrapping algorithm. Table 1. MSE and PSNR of the objects reconstructed with Bioucas without shadow removal ( and ) [15], and with shadow removal using the proposed method ( and ), measured using the reconstruction with the manually removed shadow as reference Object unicorn 0.19 19.2 26.4 candy dish 0.24 15.7 21.9 cow 0.078 18.5 29.6 kitty 0.046 14.8 28.2 pitcher 0.80 17.2 18.2 decanter 0.23 17.4 23.8 average 0.25 16.9 22.9 Table 2. MSE and PSNR of the objects reconstructed with Ghiglia without shadow removal ( and ) [16], and with shadow removal using the proposed method ( and ), measured using the reconstruction with the manually removed shadow as reference Object unicorn 0.015 15.1 33.4 candy dish 0.050 14.2 27.2 cow 0.14 16.2 24.7 kitty 0.039 12.8 27.0 pitcher 0.96 22.8 23.0 decanter 0.070 15.2 26.8 average 0.083 15.2 26.1 The fourth column () represents the reduction in MSE when removing the shadow with the proposed method. All cases showed a reduction in MSE when using the proposed algorithm. In the case of phase unwrapping with Bioucas, the MSE was reduced, on an average, to 25% of the MSE measured without shadow removal. In the case of phase unwrapping with Ghiglia, the MSE was reduced, on an average, to 8.3% of the MSE measured without shadow removal. The fifth and sixth columns represent the peak signal-to-noise ratio (PSNR) of the reconstructed object without shadow removal () and with the shadow removed using the proposed algorithm (). The reconstruction using the manually removed shadow is again taken as the reference. All cases showed an increase in PSNR when using the proposed algorithm. 4.6 Time performance analysis Table 3 reports the execution times in seconds for the application of WTP and the two phase-unwrapping algorithms – Bioucas and Ghiglia – for the images with shadow, , and for the images with the shadow removed using the proposed method . The additional time required to remove the shadow is included in the measurement of . Table 3. Execution times for WTP and phase unwrapping using the Bioucas and Ghiglia algorithms, comparing times for images without shadow removal and with the shadow removed using the proposed method Object Bioucas Ghiglia , s , s , s , s , s unicorn 1422.6 920.0 27.0 30.0 3.3 candy dish 729.8 285.3 28.4 31.7 3.4 cow 375.5 336.9 56.7 59.9 3.4 kitty 615.7 379.9 41.6 44.8 3.4 pitcher 290.9 247.5 55.4 47.9 3.4 decanter 281.4 182.5 30.2 29.2 3.1 average 619.3 392.0 39.9 40.6 3.3 Latter includes the time to remove the shadow using the proposed method . The average WTP and phase-unwrapping runtimes for the Bioucas algorithm were reduced from 10 min and 19.3 s without shadow removal to 6 min and 32 s with the shadow removal proposed in this paper. For the Ghiglia algorithm, the average WTP and phase-unwrapping r