Feature Extraction for Illustrating 3D Stone Tools from Unorganized Point Clouds

Similar documents
Feature Extraction and Modification for Illustrating 3D Stone Tools from Unorganized Point Clouds

Minimum Surface Area Based Complex Hole Filling Algorithm of 3D Mesh

An Automatic Hole Filling Method of Point Cloud for 3D Scanning

Feature-Preserving Simplification of Point Cloud by Using Clustering Approach Based on Mean Curvature

A Constrained Delaunay Triangle Mesh Method for Three-Dimensional Unstructured Boundary Point Cloud

Overview. Efficient Simplification of Point-sampled Surfaces. Introduction. Introduction. Neighborhood. Local Surface Analysis

Surface Reconstruction. Gianpaolo Palma

Interactive Collision Detection for Engineering Plants based on Large-Scale Point-Clouds

A 3D Point Cloud Registration Algorithm based on Feature Points

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

Shape Control of Cubic H-Bézier Curve by Moving Control Point

Fast K-nearest neighbors searching algorithms for point clouds data of 3D scanning system 1

Progressive Surface Modeling Based On 3D Motion Sketch

Point-based Simplification Algorithm

The Law of Reflection

Moving Least Squares Multiresolution Surface Approximation

A Sketch Interpreter System with Shading and Cross Section Lines

G 2 Interpolation for Polar Surfaces

Algorithm research of 3D point cloud registration based on iterative closest point 1

Geometric Modeling. Mesh Decimation. Mesh Decimation. Applications. Copyright 2010 Gotsman, Pauly Page 1. Oversampled 3D scan data

Planar quad meshes from relative principal curvature lines

Outline. Reconstruction of 3D Meshes from Point Clouds. Motivation. Problem Statement. Applications. Challenges

The Curse of Dimensionality

DETECTION AND ROBUST ESTIMATION OF CYLINDER FEATURES IN POINT CLOUDS INTRODUCTION

Ray tracing based fast refraction method for an object seen through a cylindrical glass

Intro to Modeling Modeling in 3D

Approximation of 3D-Parametric Functions by Bicubic B-spline Functions

Fan-Meshes: A Geometric Primitive for Point-based Description of 3D Models and Scenes

Symbolic Computational Approach to Construct a 3D Torus Via Curvature

Simplification Algorithm for Airborne Point Clouds

CS 523: Computer Graphics, Spring Shape Modeling. Differential Geometry of Surfaces

Automatic Drawing for Tokyo Metro Map

04 - Normal Estimation, Curves

Geometric Modeling in Graphics

On-line Reconstruction of CAD Geometry

Kurt Mehlhorn, MPI für Informatik. Curve and Surface Reconstruction p.1/25

IDETC POINT-BASED SHAPE MONITORING OF PLATE BENDING FOR LARGE-SCALE STORAGE TANKS

Efficient 3D Crease Point Extraction from 2D Crease Pixels of Sinogram

ABSTRACT TO BE PRESENTED COMPUTATIONAL METHODS FOR ALGEBRAIC SPLINE SURFACES COMPASS II. September 14-16th, 2005

Automatic Pipeline Generation by the Sequential Segmentation and Skelton Construction of Point Cloud

Digital Geometry Processing

Occlusion Detection of Real Objects using Contour Based Stereo Matching

Deformable Mesh Model for Complex Multi-Object 3D Motion Estimation from Multi-Viewpoint Video

Finding a Best Fit Plane to Non-coplanar Point-cloud Data Using Non Linear and Linear Equations

Shape Modeling and Geometry Processing

3D Modeling Parametric Curves & Surfaces

Shape Modeling of A String And Recognition Using Distance Sensor

Irregular Vertex Editing and Pattern Design on Mesh

Outline of the presentation

Introduction to Computer Graphics

Texture Mapping using Surface Flattening via Multi-Dimensional Scaling

On-line Reconstruction of CAD Geometry

A DATA DRIVEN METHOD FOR FLAT ROOF BUILDING RECONSTRUCTION FROM LiDAR POINT CLOUDS

CS 523: Computer Graphics, Spring Differential Geometry of Surfaces

Study on Improving Accuracy for Edge Measurement Using 3D Laser Scanner

Correctness. The Powercrust Algorithm for Surface Reconstruction. Correctness. Correctness. Delaunay Triangulation. Tools - Voronoi Diagram

Robot localization method based on visual features and their geometric relationship

Blob-Representation of Multidimensional Objects and Surfaces

Generating Tool Paths for Free-Form Pocket Machining Using z-buffer-based Voronoi Diagrams

Scanning Real World Objects without Worries 3D Reconstruction

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo

05 - Surfaces. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Daniele Panozzo

Extracting Axially Symmetric Geometry From Limited 3D Range Data

Input of Log-aesthetic Curves with a Pen Tablet

Accurately Estimating Sherd 3D Surface Geometry with Application to Pot Reconstruction 1

Fast unstructured quadrilateral mesh generation

Chapter 11 Arc Extraction and Segmentation

SUPPLEMENTARY FILE S1: 3D AIRWAY TUBE RECONSTRUCTION AND CELL-BASED MECHANICAL MODEL. RELATED TO FIGURE 1, FIGURE 7, AND STAR METHODS.

Differential Geometry: Circle Patterns (Part 1) [Discrete Conformal Mappinngs via Circle Patterns. Kharevych, Springborn and Schröder]

Fatigue Crack Growth Simulation using S-version FEM

Generating 3D Meshes from Range Data

Curves and Surfaces 1

Topics and things to know about them:

Shape from LIDAR Data. Univ. of Florida

Triangular Mesh Segmentation Based On Surface Normal

Almost Curvature Continuous Fitting of B-Spline Surfaces

Expanding gait identification methods from straight to curved trajectories

Interaction of Fluid Simulation Based on PhysX Physics Engine. Huibai Wang, Jianfei Wan, Fengquan Zhang

COMPUTER AIDED ENGINEERING DESIGN (BFF2612)

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Automatic generation of 3-d building models from multiple bounded polygons

Estimating normal vectors and curvatures by centroid weights

Chapter 11 Representation & Description

Reconstructing Surfaces Using Envelopes: Bridging the Gap between Theory and Practice

CS133 Computational Geometry

TEXTURE OVERLAY ONTO NON-RIGID SURFACE USING COMMODITY DEPTH CAMERA

Advanced Algorithms Computational Geometry Prof. Karen Daniels. Fall, 2012

Model-based segmentation and recognition from range data

Artistic Rendering of Function-based Shape Models

CS 664 Segmentation. Daniel Huttenlocher

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013

POINT CLOUDS. Berndt. Erik. When analyzing. necessary to. data and. optimize the. show suitable for,

Panoramic Image Stitching

AUTOMATIC EXTRACTION OF BUILDING FEATURES FROM TERRESTRIAL LASER SCANNING

Chapter 4. Clustering Core Atoms by Location

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

In what follows, we will focus on Voronoi diagrams in Euclidean space. Later, we will generalize to other distance spaces.

Feature Lines on Surfaces

Mathematics Standards for High School Geometry

Transcription:

Feature Extraction for Illustrating 3D Stone Tools from Unorganized Point Clouds Enkhbayar Altantsetseg 1) Yuta Muraki 2) Katsutsugu Matsuyama 2) Fumito Chiba 3) Kouichi Konno 2) 1) Graduate School of Engineering, Iwate University, Japan 2) Faculty of Engineering, Iwate University, Japan 3) Laboratory for Archaeology and Geoinformatics, LANG Co., Ltd, Japan 1),2) {bayar@lk., murakiyuta@lk., kmatsu@, konno@}cis.iwate-u.ac.jp 3) f-chiba@lang-co.jp Abstract This paper presents a method for extracting features for illustrating stone tools. Features are detected from unorganized point clouds obtained by a 3D laser scanner. The curvature of each point in the point clouds is estimated by local surface fitting algorithm and used for detecting potential feature points. Feature lines are extracted by directionally growing algorithm. The main idea of our method is to extract feature lines using principal curvatures and principal directions of the potential feature points along the axis directions and to merge all extracted lines. The detected features are modified by specific knowledge on illustrating stone tools. Keywords: feature extraction, point clouds, stone tools. 1 Introduction In this paper, we will introduce a new method to extract features of stone tools for illustrating them from unorganized point clouds obtained by a 3D laser scanner. The illustration of stone tools is important in archaeological reports, publications and study of stone tools. Stone tools used by early humans were not of a formal form and have sharp edges as well as rough surfaces such as dents and cracks on the surfaces. The illustration of stone tools requires to convey the information on manufacture, modification and usage of tools and takes a long time because of the complexity of tools. Illustrators use view-dependent and view independent lines for illustrating archeological artifacts. View dependent lines are lines dependent on viewing directions such as silhouette lines, suggestive outlines and apparent ridges. View-independent lines are lines that are not changed with respect to viewing direction such as ridge and valley lines and hatching lines. In our work, we considered only ridge and valley lines that are valuable and important candidate for the illustration. For extracting ridge and valley lines, the principal curvatures and principal directions of each point are computed by local surface fitting algorithm. Potential feature points are detected by the curvature of points. The main idea of our method is to grow feature lines along the axis directions by using the principal curvatures and principal directions of feature points. There are several techniques to extract feature lines from detected feature points. Gumhold et al. [5] and Pauly et al. [7] compute minimum spanning tree to extract feature lines. This technique is capable of extracting feature lines by connecting existing feature points. Therefore, high quality of point cloud is required to get robust and accurate result. Daniels et al. [2] projects potential feature points to the intersections of locally fitted surfaces. After smoothing projected points, poly-lines are grown through the projected points. In contrast to previous methods, our method extracts feature lines directly from potential feature points and will not require high quality of point cloud. 62

NICOGRAPH International 2012, pp. 62 67 (d) (e) (f) (g) Figure 1: A process of feature line extraction. Original image of the stone knife. Detected potential feature points. Blue dots represent ridge points; red ones represent valley points. Result of ridge line extraction along the +Y axis direction. (d) Result of ridge line extraction along the Y axis direction. (e) Result of merging two line sets. (f) Extracted and merged ridge lines along ±X and ±Y axis directions, (g) Ridge (blue) and valley (red) lines Our main contributions are as follows: are projected onto tangent plane of each point and selected by angle criterion [6]. For each point pi, its selected neighbors are transformed to local coordinate system (u, v, w) whose axis directions are eigenvectors of the covariance matrix of these points. In this local coordinate system, point pi becomes (0, 0, 0) and its normal vector lies along the positive w-axis. Point pi and its selected neighbors are fitted by the following cubic polynomial [1]. We propose an accurate and simple algorithm for extracting feature lines from detected potential feature points; We modify the detected feature lines according to the specific knowledge on illustrating stone tools; 2 Feature extraction modification and w = F (u, v) = Suppose that potential feature points are the points whose maximum absolute value of the principal curvatures is greater than a user-defined threshold value σ. Additionally, the potential feature points can be divided into ridge or valley points depending on the sign of curvatures. A line reconstructed from ridge (valley) points is called a ridge line (valley line). In the first stage, potential feature points are detected. In the second stage, feature lines are extracted along the axis directions and then extracted feature lines are merged. In the next stage, feature lines are modified to illustrate stone tools. Finally, smooth curves are generated from the feature lines. 2.1 1 (k1 u2 + k2 v 2 )+ (1) 2 1 + (b0 u3 + b1 u2 v + b2 uv 2 + b3 v 3 ) 6 where k1 and k2 are principal curvatures. If pi is not umbilical point (k1 = k2 ), the two vectors t1 = (b0, b1 ), t2 = (b2, b3 ) become the principal directions of k1 and k2 along their curvature lines, respectively. The coefficients of Eq. (1) are calculated by [3]. In the next step, set of potential ridge points Pr P and set of potential valley points Pv P are created using the following formulations: Pr = {pi pi P and σ < max(k1, k2 )} Pv = {pi pi P and σ > min(k1, k2 )} (2) where σ is the user-defined threshold value. Fig. 1 shows detected potential feature points. Potential feature point detection Input of our algorithm is unorganized 3D point clouds P = {pi R3 } obtained from a laser scanner. For detecting features, M nearest neighbors for each point are detected by using KD-tree (degree = 3) and normal vector of each point is estimated by using Principal Component Analysis [4]. Then, all the neighbors 63 2.2 Feature line extraction Shape of stone tools is complex and its surface contains many sharp and smooth features. In order to robustly and accurately extract features, the ridge

and valley lines are extracted along all axis directions (±X, ±Y, ±Z) respectively using the principal curvatures and principal directions of potential feature points. Then, all feature lines derived by all directions are merged. To extract feature lines along the axis directions, the point cloud is sliced along the X, Y and Z axis directions respectively and sets of slices D x, D y, and D z are obtained. For example, set D y = (D 1,y, D 2,y,..., D n,y ) (3) is created by slicing point cloud along the Y axis direction. D i,y is the i th slice of the set D y. The number of slices of the set depends on user defined slice thickness. Consequently, feature lines are grown along the axis directions from slice to slice. To grow feature line, potential feature points of each slice are clustered by distance based clustering and the radius r pi is computed for each point p i by Eq. (4): r pi = s i + d (4) where s i is the distance between point p i and its farthest selected neighbor, d is the slice thickness of the point cloud. Endpoint p of feature line is detected by finding maximum (minimum) curvature point of the cluster. To grow feature line from the endpoint p to the next slice, sphere with radius r p centered at the endpoint is used according to Eq. (4). The Algorithm 1 shows our technique on ridge line extraction as an examples of extraction along the +Y axis direction. Fig. 2 shows different cases for line growing process. In the case of Fig. 2, the sphere centered at point p contains three potential feature points from the next slice. Point p has the highest curvature value and the angle between its principal direction vector t and growing axis direction is less than user defined threshold angle, therefore point p is selected as a endpoint of the line, and points p and p should be connected. In the case of Fig. 2, feature point p is the point with the highest curvature for the spheres centered at points p 1 and p 2. Thus both lines will intersect at point p, which will be the endpoint of the lines as well. In Fig. 2, the cluster of the potential feature points does not contain any endpoint thus point with the highest curvature will be a new endpoint p. Fig. 1 shows the result of the ridge extraction algorithm along the +Y axis direction. There are some missing intersection points of ridge lines depending on the growing directions because our line growing technique can find only intersection point of Algorithm 1. Algorithm for extracting ridge lines along the +Y axis direction. for each slice D i,y D y find potential ridge points using Eq. (3) create clusters from potential ridge points for each cluster C j if any endpoint p not found in C j then p a point with the highest curvature end if //find a candidate point from next slice //to grow ridge line while p D i+1,y and p p r p register point curvatures end while p a point with the highest curvature if p is found β compute angle between principal direction of p and the axis Y if β < threshold angle then add [ pp ] to ridge line set p p end if end if end for end for feature lines which are growing along given the axis direction as well as cannot split feature lines. In order to find the missing intersection points and to improve the quality of the lines, the same steps are required to implement along the Y axis direction as shown in Fig. 1(d). Fig. 1(e) shows the result of ridge line can be improved by merging two line sets along +Y and Y axis directions. For example, Fig. 1 and (d) show our line extraction algorithm, with which intersection points A and B are detected along directions +Y and Y, respectively. After merging two line sets, both intersection points Figure 2: Different cases of feature line growing. 64

A and B can be illustrated on the ridge lines. Corresponding to the Y axis, the ridge line set LR y is created, by merging ridges lines extracted along +Y and Y axis directions. By repeating this process for all directions, all ridge lines can be detected as shown in Fig. 1(f). For the valley lines, overall process is the same as ridge line detection as shown in red lines in Fig. 1(g). After line extraction along all axis directions, ridge line sets LR x, LR y, LR z as well as valley line sets LV x, LV y, LV z are obtained. Therefore the final result is defined by merging these line sets. Finally, unnecessary shorter lines and branches are removed. 2.3 Feature line modification The detected feature lines are insufficient to convey information of form and manufacturing of tools. Thus, our detected lines should be modified by using the following simple rules: 1. All lines should be connected to other curves. 2. Sharp edge lines are drawn with thick lines. 3. The surface area carved last is illustrated by smooth curves at the intersection of ridge lines. segment and it is connected to the open end point of a line segment. This process will be repeated along tangent line until reach to any other feature line. If a sphere centered at the new point contains some points of the feature line, the extended line segment reaches the feature line. Radius of the sphere is given by Eq.(4). Fig. 3 shows the process of line closing. Open line segment AB is shown with red, Bezier curve and its tangent line are represented with black. Green dots represent selected points on the tangent line. The red ones are the new points found on the surface. Point C will be an end point of the line segment since the sphere centered at new point D contains point C. Fig. 3 shows the result of the closed line segment AC. If the length of a newly created line segment is longer than original one, those line segments are not used for illustration to prevent illustration error. Sharp edge To distinguish sharp edges from smooth ridge lines and valley lines, sharp edges are illustrated with thick lines. Average curvature value of the each ridge line segment is evaluated by following equation: N C(a i ) i=1 K(l) = (5) N where l is the ridge line segment with N points, K(l) is the average curvature of the line segment l, a i is the vertex of line segment l, C(a i ) is the corresponding curvature of vertex a i. By using a certain threshold value, a sharp edge can be easily determined and is illustrated with a thick line. Figure 3: Algorithm of feature line continuity. Connect lines to other curves There are a lot of open lines and line segments in the extracted lines. To separate different carved areas of a stone tool each other, it is necessary to make the edges of the area closed. In order to make closed area, all open line segments should be detected. After that, each open line segment is fitted by cubic Bezier curve and extended along the tangent vector of the Bezier curve. To extend the open line segments, the tangent line of the Bezier curve at the open end point is created. Then the point on the tangent line will be selected in a given distance from open end points. For the selected point on the tangent line, its nearest point is detected on the surface of the object. This point will be considered as a new point for extending line Figure 4: Continuity of lines at intersection point A. Line continuity at the intersection The continuity of lines at an intersection point preserves important information on stone tool manufacturing such as reduction procedure. When stone tools are illustrated, the area carved last is represented with smooth curves at intersection points. Fig. 4 shows 65

NICOGRAPH International 2012, pp. 62 67 intersection point A with three ridge lines as an example. The three ridge lines separate areas S1, S2 and S3. If area S1 is carved last, S1 will be illustrated with smooth curves (see Fig. 4). It is a very important feature in stone tool illustration, but it is very hard to detect the area carved last since the broad experience of illustrators is required. Unfortunately, this problem has not been solved in our method. Our algorithm cannot detect the order of surface carving. Fig. 5 shows the results of our algorithm before and after feature line modification. Table 1: Timings (in seconds) of the implementation steps. is surface fitting, is line extraction, is line modification and (d) is overall procedure. Fig. 5 6 7 # points 18270 101588 79757 0.467 3.756 1.912 0.134 1.241 1.151 0.033 0.191 0.1671 (d) 1.622 10.55 7.711 lustrator. The experimental results show that our algorithm can detect sharp edges well. There are some differences, however, in the smooth ridge and valley lines, because the lines drawn by an illustrator look more artistic than the result of our algorithm. Figure 5: Result of feature line modification process. before modification, after modification 2.4 Line smoothing After extracting and modifying the feature lines, the Figure 6: and are results obtained from difresultant lines look zigzag. These lines are smoothed ferent parameter values, is the result drawn by a by a cubic B-spline curve fitting. To fit the lines professional illustrator. to a B-spline curve, line segments are extracted from intersections of the lines until no intersection is found in the lines. Each line segment is fitted to a B-spline curve separately. By solving the following minimization problem, control points for each B-spline curve are derived. n pi S(uk ) 2 ) (6) min( i=1 where pi is the vertex points of the line segment, S(u) is the cubic B-spline curve and uk is pre-computed parameters. We solve this problem by standard least Figure 7: is the 3D model of a tool, is the square fitting method. result of our algorithm and is the result of a professional illustrator. 3 Experimental results and Conclusion Table 1 lists the numerical results of implementation of our algorithm for the experimental point data. The experiment was performed in an Intel Core i5fig. 6 and Fig. 7 show comparison results of the il- 650 3.2 GHz machine, with 3 GB of RAM and an lustrations between our algorithm and professional il- NVIDIA GeForce GTX 570 graphics card. 66

References [1] Cazals, F., Pouget, M.: Differential topology and geometry of smooth embedded surfaces: selected topics. International Journal of Computational Geometry and Applications, 15,5, pp.511 536 (2005) [2] Daniels, II J., Ha, L. K., Ochotta, T., Silva, C.T.: Robust Smooth feature extraction from point clouds. In Proceedings of the IEEE International Conference on Shape Modeling and Applications, pp.123 136 (2007) [3] Goldfeather, J., Interrante, V.: A novel cubicorder algorithm for approximating principal direction vectors. ACM Transactions on Graphics, 23, 1, pp. 45 63 (2004) [4] Gopi, M., Krishnan, S., Silva, C.: Surface reconstruction using lower dimensional localized Delaunay triangulation. In Proceedings of the EU- ROGRAPHICS, 19, 3, pp. 467 478 (2000) [5] Gumhold, S., Wang, X., Mcleod, R.: Feature extraction from point clouds. In Proceedings of the 10th International Meshing Roundtable, pp 293 305 (2001) [6] Linsen, L.: Point cloud representation. University of Karlsruhe, Germany Technical Report, Faculty of Informatics (2001) [7] Pauly, M., Keiser, R., Gross, M.: Multi-scale feature extraction on point-sampled surfaces. Computer Graphics Forum, 22, pp. 281 289 (2003) 67