In-Hand Scanning with Online Loop Closure
Total Page:16
File Type:pdf, Size:1020Kb
In-hand Scanning with Online Loop Closure Thibaut Weise1 Thomas Wismer1 Bastian Leibe2 Luc Van Gool1,3 1Computer Vision Laboratory 2 UMIC Research Centre 3ESAT/PSI-VISICS IBBT ETH Zurich, Switzerland RWTH Aachen, Germany KU Leuven, Belgium {weise,leibe,vangool}@vision.ee.ethz.ch [email protected] Abstract not satisfied with the result, additional scans might become necessary, making this a rather cumbersome process. We present a complete 3D in-hand scanning system that allows users to scan objects by simply turning them freely With an in-hand scanning setup [23], the user simply in front of a real-time 3D range scanner. The 3D object turns the object in front of a real-time 3D scanner, and the model is reconstructed online as a point cloud by register- 3D model of the object is reconstructed and displayed on- ing and integrating the incoming 3D patches with the online line. The user can thus directly control the coverage and 3D model. The accumulation of registration errors leads to quality of the reconstruction by turning the object appro- the well-known loop closure problem. We address this issue priately until he/she is satisfied with the result, making the already during the scanning session by distorting the object scanning process fast and intuitive. Current in-hand scan- as rigidly as possible. Scanning errors are removed by ex- ning approaches register the incoming 3D patches sequen- plicitly handling outliers. As a result of our proposed online tially [23, 15, 30], which leads to the well-known loop modeling and error handling procedure, the online model is closure problem: when performing a full scan around the of sufficiently high quality to serve as the final model. Thus, object, the accumulation of registration errors leads to an no additional post-processing is required which might lead offset at the scanning borders, resulting in visible artifacts to artifacts in the model reconstruction. We demonstrate (Fig. 1). Current approaches therefore use an additional of- our approach on several difficult real-world objects and fline optimization step to compensate for this problem and quantitatively evaluate the resulting modeling accuracy. remove accumulated artifacts. As a result, however, the on- line model is only a preview model which may well deviate from the final offline reconstructed model. Thus, an impor- 1. Introduction tant advantage of in-hand scanning systems, the direct and 3D scanning and modeling of real-world objects plays an reliable feedback, is lost. important role in many areas such as cultural heritage, ar- In this work we propose an in-hand scanning system that chitecture, and entertainment. However, 3D modeling is of- truly follows the WYSIWYG principle, yielding an online ten a time-consuming and costly process, preventing a more reconstructed model to serve as the final result. Instead of wide-spread use. In archeology, for example, only the most ignoring loop closure cases, our approach explicitly detects precious objects are typically scanned instead of the bulk of and compensates for them on-the-fly by deforming the on- the finds. In-hand scanning may alleviate that problem as it line model appropriately. As our goal is to avoid the need simplifies and speeds up the scanning process, thus reduc- for post-processing altogether, the online model needs to be ing time, cost, and man-power. accurate and robust. Our approach addresses this by han- 3D scanning generally consists of the following steps: 1) dling outliers using visibility constraints. We experimen- recording a set of 3D range scans from an object, 2) align- tally show that our online model building method is similar ing the individual surface patches, and 3) integrating these in performance to offline methods and that reconstruction surfaces into one seamless 3D mesh. In case the user is quality is visibly improved through online loop closing. 1630 2009 IEEE 12th International Conference on Computer Vision Workshops, ICCV Workshops 978-1-4244-4441-0/09/$25.00 ©2009 IEEE Related Work. Due to the vast amount of research in 3D scanning and modeling, we only discuss the work most relevant to our in-hand scanning system. A broader per- spective of the complete 3D modeling pipeline is given in [3]. For interactive applications, real-time, motion- insensitive range scanner are necessary to provide input data. Such systems have been proposed based on laser scan- ners [12, 27], time-of-flight cameras [21], and structured Figure 1. Visualization of the loop closure problem: five range light [24, 31, 18, 29, 16]. Structured-light systems have the scans of a rotating gear wheel are registered. A pairwise alignment advantage that they provide a full 2D depth map per frame error of only ±1◦ results in a considerable surface discrepancy at a higher accuracy than current time-of-flight cameras. where the model actually should close (indicated by red circles). In order to build a 3D model from depth scans, the indi- on the underlying representation. As the input data is noisy, vidual 3D surface patches need to be registered. ICP [4, 6] several measurements need to be integrated for each sur- and its variants [24, 9] are the technique of choice for this face part for accurate reconstruction. Since the input may geometric registration when an approximate alignment is also contain outliers, we need to be able to to differentiate available. For in-hand scanning systems, this is typically between true surface points and erroneous parts. Last but the case due to the high temporal resolution of the scanner. not least, the representation needs to be compact and easy The ICP registration can additionally be extended to texture to modify in order to facilitate online loop closure. [3, 30], which is however not yet used in our system. We address those requirements by quantizing the surface Interactive in-hand 3D modeling systems have recently and representing the model as a set of small oriented discs been demonstrated by [23, 15, 30]. In those systems, the or surface elements (surfels) whose size is directly depen- input depth scans are registered sequentially and are inte- dent on the scanning resolution. This quantized represen- grated into a simple preview model. Outliers are handled tation allows us to easily integrate multiple depth measure- by aggressive data pruning, but non-detected outliers will ments and to update the surface estimate when additional remain in the model. In order to remove the resulting accu- measurements become available. In addition, we collect mulation errors and loop-closure artifacts, in-hand scanning visibility statistics for each surfel to determine from which systems typically perform an offline global registration op- orientations it has been observed. This allows us to differ- timization step when all scans have been collected [22, 14, entiate between likely true surface points which have been 19]. After offline registration all input scans are integrated observed from many different directions and possible out- and converted into a seamless mesh [7, 13, 10]. liers for which this is not yet the case. In contrast, we address the loop closure problem using In the following, we describe the input data our approach an idea inspired by online loop closing methods employed is based on (Sec. 2.1) and the basic surfel representation in robotic localization and mapping [2]. As in the standard (Sec. 2.2). In order to bring the online surfel model into cor- in-hand scanning pipeline, we register depth scans sequen- respondence with the current scan, we perform rigid regis- tially to build up an online model. However, we explicitly tration with a fast ICP algorithm (Sec. 2.3). After successful try to detect loop closure cases and, once such a case has registration, the new scan is then integrated with the surfel been found, we deform the online model such that the dis- model, as described in Sec. 2.4. Sec. 3 then presents our continuous surface borders fit together and the accumulated extension to explicitly handle the loop closure problem. error is distributed over the entire online model. Many dif- 2.1. Data Acquisition ferent methods for constraint-based shape deformation have The in-hand scanning system is built on top of our real- been proposed in the past [1, 25, 26, 5]. Here, we use a time structured-light range sensor [29], running at 30 fps. graph-based space deformation method similar to [26] due This setup delivers one depth map Dt (VGA resolution) per to its efficiency and as-rigid-as-possible deformation. t u d∗ frame , containing for each pixel k a depth value k (in [27, 8] also propose a system that returns the online mm) corresponding to a 3D position p∗. model as the final result. Their approach employs implicit k Input Data Processing. Morphological operators are used surfaces for the complete modeling pipeline. In contrast to to remove small isolated geometry patches that are likely our method, however, they do not attempt to solve the loop ∗ outliers. Normals n are calculated using the method de- closure problem and do not explicitly handle outliers. k scribed in [20]. In order to penalize potentially inaccurate vertices, each depth value is assigned an input confidence 2. Online Model Building c∗ ∈ [0, 1] c∗ =0 value k , which is initialized to k at a depth In this paper, we propose an online model building ap- c∗ =1 map discontinuity, otherwise k . The confidence values proach that reconstructs a 3D model of an object from a se- are then spread out by a diffusion process [28]. Fig. 2(a) quence of depth scans. This task poses several requirements depicts an input scan colored according to confidence. 1631 2.3.