## 1.

## Introduction

Phase-shifting profilometry (PSP) has been used for accurate three-dimensional (3-D) measurement of objects in many applications such as biometric, entertainment, and industrial inspection, among others. An important stage in PSP is the camera–projector calibration. Thus, improved phase-shifting algorithms have been proposed. Yu et al.^{1} propose an algorithm based on interpolating absolute phase values at known features points with subpixel accuracy in the image data. A similar idea was proposed by Li et al.^{2} and used to improve the camera and projector calibration. This method, however, has only been applied when a set of feature points can be determined with high accuracy, usually the detected corners of a chessboard calibration pattern. In this paper, we propose a general strategy to enhance the accuracy of the 3-D measurement of objects using phase-shifting techniques by improving the search for correspondence. It is based on the interpolation of absolute phase values over a set of feature points in the image data. We show that for textured objects, this method produces high precision 3-D coordinates surface for the set of feature points. For textureless objects, a texture image can be projected in order to use the proposed method. The application of our method was two-fold, for improving the accuracy of the camera–projector calibration and for improving the accuracy of the phase-to-height conversion algorithm. We validate our method for real data and we compare the obtained object profiles with the traditional phase-shifting algorithm without phase interpolation.

## 2.

## Principle

The intensities of the phase-shifted^{3} images at every pixel $(x,y)$ are given by

^{4}for the phase with ${\delta}_{k}=2\pi (k-1)/N$ is given by

## (2)

$$\mathrm{\Phi}(x,y)={\mathrm{tan}}^{-1}\frac{-\sum _{k=1}^{N}{I}_{k}\mathrm{sin}\left(\frac{2\pi k}{N}\right)}{\sum _{k=1}^{N}{I}_{k}\mathrm{cos}\left(\frac{2\pi k}{N}\right)}.$$The phase $\mathrm{\Phi}$ is called the wrapped phase which is characterized by the module $2\pi $ discontinuities and a continuous phase $\mathrm{\Phi}(x,y)$ can be obtained by using a unwrapping algorithm.^{5} Zhang and Huang^{6} proposed a method for projector calibration based on absolute phase maps which can be obtained if a set of reference points are known between the camera and projector. The absolute phase is computed as ${\mathrm{\Phi}}^{\prime}(x,y)=\mathrm{\Phi}(x,y)-{\mathrm{\Phi}}_{0}$, where ${\mathrm{\Phi}}_{0}$ is the average of phase values of the set of reference points. An one-to-one correspondence between the camera and the projector pixels was obtained considering vertical and horizontal absolute phase maps, ${\mathrm{\Phi}}_{v}^{\prime}$ and ${\mathrm{\Phi}}_{h}^{\prime}$, respectively. Thus, for every camera pixel $(x,y)$, the corresponding projector pixel $({x}^{\prime},{y}^{\prime})$ is given as

## (3)

$${x}^{\prime}=\frac{p\xb7{\mathrm{\Phi}}_{h}^{\prime}(x,y)}{\pi}-\frac{H}{2},{y}^{\prime}=\frac{p\xb7{\mathrm{\Phi}}_{v}^{\prime}(x,y)}{\pi}-\frac{W}{2},$$## 3.

## Our Proposal

Our proposal consists of two main stages: camera–projector calibration and 3-D reconstruction. All steps to obtain 3-D reconstruction are shown in Fig. 1. The traditional output of the first stage is the set of intrinsic and extrinsic calibration parameters. Instead, we generate another set of calibration parameters by using the last two steps as follows. Corner detection and interpolation is the detection of corners (at subpixel accuracy) for each image of the calibration pattern in the camera. Given the list of corner positions, the corresponding projector pixels are calculated through Eq. (3) and phase interpolation.^{7} Then, camera–projector calibration^{8} is performed using this list of corners.

The second stage is the 3-D reconstruction which consists of (a) projection of six vertical and horizontal interference patterns over an object into the scene, also vertical and horizontal central lines as reference images; (b) computation of the continuous phase and absolute phase of the object; (c) detection of feature points in the captured image data of the object, that will be detailed briefly; and (d) computation of 3-D coordinates using a phase-to-height algorithm.

The interpolation of feature points is taken as special step that is necessary to describe. First, an image of the object is captured onto the scene. Second, an initial set of corners is detected using a smallest univalue segment assimilating nucleus^{9} corner detector. Third, a refinement algorithm^{10} is applied to the initial set of corners, and obtain a set of corners at subpixel accuracy. Finally, the corresponding projector positions are computed for the set of detected corners using phase interpolation. With these steps, for objects with regular texture many corners are detected. However, the strategy fails to find significant set of corners in textureless objects. An alternative step, for this kind of objects is to project a texture image on the object in order to provide it with a regular texture.

## 4.

## Experimental Evaluation

In order to validate the calibration results, we compare two cases: in the first case projector images were generated to calibrate the projector and in the second case we use the detected corners in the camera calibration patterns to interpolate the corresponding corners in the projector. Table 1 shows standard deviation of the reprojection corners error (in pixel) in both $x$ and $y$ directions for the projector calibration. Row 1 in Table 1 shows the pixel error of the projector calibration using projector images, while rows 2 to 5 show the pixel errors using nearest, linear, cubic, and spline interpolation of the set of corners in the camera. We found that linear interpolation of the detected corners in the camera gives the best result for the calibration of the projector, whereas nearest interpolation of the detected corners in the camera for projector calibration gives the worst result. Figure 2 shows the reprojection corner error for the camera calibration and projector calibration using linear interpolation of the camera corners.

## Table 1

Pixel error in the x and y directions of the projector calibration.

Method | x (in pixels) | y (in pixels) |
---|---|---|

Traditional | 0.09817 | 0.14074 |

Nearest | 0.16480 | 0.19747 |

Linear | 0.08306 | 0.11522 |

Cubic | 0.08581 | 0.11739 |

Spline | 0.08695 | 0.11856 |

Figure 3(a) shows a steel plane surface on which a texture image was projected in order to provide it with a regular texture. Figure 3(b) shows the detected corners over Fig. 3(a) and Fig. 3(c) shows the detected corners at subpixel precision. Figure 3(d) shows the reconstruction profile of the plane surface using the traditional phase-shifting method and Fig. 3(e) shows the reconstruction using interpolation of feature points obtained through phase interpolation shown in Fig. 3(c). The reconstruction results shown in Figs. 3(d) and 3(e) were obtained using the calibration parameters that uses linear interpolation in Table 1. We fit an ideal plane to point clouds shown in Fig. 3(d) and Fig. 3(e) for the traditional and proposed method, respectively. Table 2 show quantitative results for both methods and in the last, nearest, linear, cubic, and spline interpolation of feature points were used. The mean, sum of squared errors (SSE), and standard deviation of the orthonormal distances of every point to the fitted plane are shown. These quantities were obtained by averaging 100 iterations of different samples of 1000 randomly chosen points. We found that the proposed method using linear interpolation of feature points has better accuracy than the traditional method, whereas using nearest-neighbor interpolation of feature points has the worst accuracy over all the cases.

## Table 2

The sum of squared errors (SSE), the mean distance, and the standard deviation of the orthogonal distances of 1000 randomly chosen points to a fitted plane are shown. The units of the results are given in millimeters.

Method | SSE | Mean distance | Std |
---|---|---|---|

Traditional | 10.449 | 0.081 | 0.049 |

Nearest | 12.937 | 0.089 | 0.061 |

Linear | 9.736 | 0.079 | 0.045 |

Cubic | 9.813 | 0.079 | 0.047 |

Spline | 9.797 | 0.079 | 0.047 |

## 5.

## Conclusions

A method is proposed to improve the accuracy of the traditional phase-shifting techniques. It is based on the detection of a set of feature points in the image space at subpixel accuracy, and phase interpolation in order to generate its corresponding projector positions. The set of feature points is computed for objects with enough texture, and for a textureless object, an image is projected over the scene. We found by experimentation that the proposed method improves the accuracy of the traditional phase-shifting technique.