OptoInspect3D Inline
2.5
Library for measured 3D data processing

Library for Inprocess 3D Data Analysis
Noncontact optical methods of 3D digitization have replaced conventional methods in many applications. Regardless of whether the triangulation sensors operate with points, lines or planes  many millions of measured 3D data are generated in a few seconds. These data deliver a description of a digitized component's surface topography. After digitization, verification of dimensional accuracy for quality assurance tasks requires methods and algorithms that evaluate and analyze the 3D data in order, for instance, to ascertain deviations of dimensions, shape and position from a standard model. Established programs for point cloud processing that determine the desired geometric parameters manually and interactively are available for offline analysis. Systems integrated in production require rapid, automatic and integrated data evaluation, however. The OptoInspect3D Inline package for measured 3D data processing was developed for this purpose. This library was designed to support developers and application engineers that need sophisticated 3D data processing for their own applications. With it's Cinterface this library easily integrates into 3rd party software solutions. OptoInspect3D Inline provides robust and efficient methods for:
The OptoInspect3D Inline package contains:
The library provides a generic CInterface for an integration into a wide variety of applications and systems. C++ wrappers can be easily written since the style of Cinterface is based on the standard STLalgorithms with STL vectors. A simple ReadyToRun test application is provided with this package. System Requirements:

Algorithms
Bestfit Registration with 3D Point Sets The registration function makes it possible to determine the alignment of two sets of points to one another or of one set of points to a CAD model. One set of points acts as a static reference and remains unchanged. The translation and rotation are varied for the second dynamic set of points until a predefined minimum deviation between the two is obtained. This function can be used, for instance, to compare measured data with a CAD reference or a golden sample or to link the data from independent partial measurements. A point distance calculation (proximity search) can determine the degree of the data sets' congruence.
 
Bestfit Approximation of Standard Geometric Elements The specification of a component's geometric quality is usually based on standard geometric shapes, e.g. straight lines, circles, ellipses, planes, spheres, cylinders and cones, which serve as reference elements. Deviations in components, e.g. deviations in dimensions, shape and position, can be ascertained from the standard geometry's parameters or the parameters' interrelationship. Furthermore, standard geometries are employed to define component or reference coordinate systems. A standard geometry is stipulated by selecting the pertinent domains of the digitized 3D data. The latest numeric methods that minimize the deviations between the measured points and the standard geometry are employed to produce the best fit. The parameters are selectively definable. Thus, for example, the spatial position of a cylinder with a defined radius can be determined once it has been fit. An iterative bestfit automatically segments or selects the set of points belonging to the standard geometry. This eliminates interfering points and removes points from the calculation, which do not belonging to the geometry. All of the bestfit methods utilize intelligent error weighting, thus ensuring that the tolerance for interfering data is particularly high. A function that locates adjacent regions of point data can also be used to eliminate interfering data. The library provides methods with different minimization criteria, depending on the measurement task and norms required. At first the wellknown Least Squares (Gaussian) minimizer is implemented that benefits from a type of LevenbergMarquardt optimization. Furthermore, Minimum Zone (Chebyshev) problems can be solved, e.g. to compute the planarity, roundness and cylindricity or even Minimum Enclosing geometries (hull shapes) to compute ISO/DIN compliant straightness and thickness measures.
 
Distance Computation In quality assurance a frequent task is to determine the difference between measured data and given nominal data, e.g. from CAD, reference pieces or golden samples. In the case of 3D point clouds this requires the efficient computation of local neighbourhoods in order to get the distance of a point to a point cloud. The same task applies to compute the distances between a 3D point cloud and a polygonal mesh. Therefore, the library provides a set of highly efficient functionality to perform distance computations between 3D point sets and triangle meshes.
 
Analytical Geometry Metrology often requires to determine deviations between geometric elements and primitives. This module provides geometric functionality for:
 
Thinning/Homogenization Different surface topologies and scanning strategies produce sets of points of differing density and redundancy. Once the local proximity has been analyzed, a thinning function eliminates and redistributes redundant points so that the resulting set of points has a homogeneous density. Both the density and an acceptable displacement tolerance can be specified. Weighted smoothing of the points can minimize high frequency noise. Data corruption can be prevented by specifying a tolerance margin.
 
Intelligent Smoothing Depending on the measuring principle, environmental conditions, object surfaces and material properties the resulting 3d point set may contain noise. Smoothing algorithms are required that minimize high frequency noise. The library provides intelligent smoothing algorithms that are adaptive to the local curvature and preserve features at sharp corners while smoothing more in planar regions.
 
Outlier Removal and Segmentation Typically, real 3D measurement data is effected by noise and artefacts. Especially with metal items under production conditions the shininess of the surface and interfering speckles may influence the measurement. The outlier removal functions detects independent regions and segments them from each other.
 
Surface normals for pointcloud shading The visualization of an unstructured sets of 3d points benefits from artificial lighting that produces a shading depending on local surface orientation described by the surface normal vectors. Normal vectors are also used to analyze the structure of the underlying topology.
 
Surface curvatures for pointcloud analysis Surface curvatures can used to analyze the structure and distribution of the underlying topology, e.g. for edges and discontinuities. Furthermore, surface curvature can be used to adaptively apply point cloud filters in different manner for planar regions or sharp corners and edges.

Licensing and contact information
The OptoInspect3D Inline library is distributed by the software experts of scapos AG. Please get in contact with scapos AG for questions and licensing information. The software is developed and maintained by the department of measurement and testing technology of the Fraunhofer Institute for Factory Operation and Automation in Magdeburg, Germany.
scapos AG Web Pages  
Fraunhofer Institute for Factory Operation and Automation IFF Contact Dr. Dirk Berndt
Ralf WarnemÃ¼nde
Web Pages 