reverse engineering

Download Reverse Engineering

Post on 16-Jan-2016

59 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

Reverse Engineering. Dr. G bor Renner Geometric Modelling Laboratory, Computer and Automation Research Institute. Reverse Engineering. - PowerPoint PPT Presentation

TRANSCRIPT

  • Reverse EngineeringDr. Gbor RennerGeometric Modelling Laboratory,Computer and Automation Research Institute

    Reverse Engineering

  • Reverse Engineeringset data point CAD model measured data boundary representation (incomplete, noisy, outliers) (accurate and consistent)intelligent 3D Scanner interpret the structure of data points in order to create an appropriate computer representation allowing redesign of objects applicationsno original drawing or documentationreengineering for constructing improved productsreconstruct wooden or clay modelsincorporate, matching human surfaces, etc.

    Reverse Engineering

  • Classifying objectsconventional engineering objectsmany faces; mostly simple geometryf(x,y,z)=0, implicit surfaces:plane, cylinder, cone, sphere, torus sharp (or blended) edgesfree - form shapessmall number of faces; complex geometryr = r(u,v), piecewise parametric surfaces, smooth internal subdividing curvesartistic objects natural surfaces

    Reverse Engineering

  • Conventional engineering parts

    Reverse Engineering

  • Free-form objects

    Reverse Engineering

  • Artistic objects

    Reverse Engineering

  • Natural object

    Reverse Engineering

  • Natural objects

    Reverse Engineering

  • Natural objects

    Reverse Engineering

  • Basic Phases of RE1. data acquisition2. pre-processingtriangulation, decimationmerging multiple views3. segmentation4. surface fitting5. CAD model creation

    Reverse Engineering

  • Triangulation

    Reverse Engineering

  • Triangulation

    Reverse Engineering

  • Decimation

    Reverse Engineering

  • Merging point clouds (registration) - 1

    Reverse Engineering

  • Merging point clouds (registration) - 2FIAT

    Reverse Engineering

  • SEGMENTATION: separate subsets of data points; each point region corresponds to the pre-image of a particular face of the objectchicken and egg problemgiven the geometry, selecting point sets is easygiven the pointsets, fitting geometry is easyto resolve this we need:interactive helpiterative proceduresrestricted object classessegmentation and surface fitting are strongly coupled: hypothesis tests

    Segmentation and surface fitting

    Reverse Engineering

  • Reconstructing conventional engineering objects - 1basic assumptionsrelatively large primary surfacesplanes, cylinders, cones, spheres, torilinear extrusions and surfaces of revolutionrelatively small blends

    accurate reconstruction without user assistance

    Reverse Engineering

  • Object and decimated mesh

    Reverse Engineering

  • Reconstructing conventional engineering objects - 2the basic structure can be determined direct segmentation decompose the point cloud into regionsa sequential approach using filtersfind stable regionsdiscard unstable triangular strips, by detecting sharp edges and smooth edgessimple regionscomposite, smooth regions

    Reverse Engineering

  • Reconstructing conventional engineering objects - 3sharp edges (and edges with small blends)computed by surface-surface intersectionsmooth edges assure accuracy and tangential continuity surface/surface intersections would fail in the almost tangential situationsexplicitly created by constrained fitting of multiple geometric entities

    Reverse Engineering

  • Direct segmentation - 1basic principle1. based on a given environment compute an indicator for each point 2. based on the current filter exclude unstable portions and split the region into smaller ones3. if simple region: done4. if linear extrusion or surface of revolution: create a 2D profile5. if smooth, composite region: compute the next indicator and go to 1

    Reverse Engineering

  • Direct segmentation - 2planarity filter: detect sharp edges and small blendsdimensionality filter: separate planescylinders or cones, linear extrusions, composite conical-cylindrical regionsspheres or tori, surfaces of revolution, composite toroidal-spherical regionsdirection filter: separatecylinders, linear extrusions, composite conical regionsapex filter: separate conesaxis filter: separatespheres, tori, surfaces of revolution

    Reverse Engineering

  • Planarity filteringAngular deviationNumerical curvaturesRemove data points aroundsharp edges

    Reverse Engineering

  • Dimensionality filtering using the Gaussian sphere

    Reverse Engineering

  • Dimensionality filtering - An example.

    Reverse Engineering

  • Dimensionality filtering based on the number of points in two concentric spheres separate data points by their dimensionalityD0: planesD1: cylinders-cones-transl. surfsD2: tori-spheres-rot. surfs

    Reverse Engineering

  • Planarity and dimensionality filtering

    Reverse Engineering

  • Planarity and dimensionality filtering

    Reverse Engineering

  • Detect translational and rotational symmetries translational directionnormal vectors ni of a translational surface are perpendicular to a common direction minimise ni,d2rotational axisnormal lines of a rotational surface (li, pi) intersect a common axisi - angle between the normal line li and the plane containing the axis and the point pivarious measures, in general: a non-linear system

    Reverse Engineering

  • Computing best fit rotational axis

    Reverse Engineering

  • Conical - cylindrical regiondirection estimation detects cylinders and composite linearextrusions, rest: composite conical region

    Reverse Engineering

  • Conical composite regionfit a least squares pointto the tangent planes tocompute the apex

    Reverse Engineering

  • Toroidal - spherical regionestimate a localaxis of revolution

    if largest eigenvalue(almost) zero ->sphere

    otherwise torus orsurface of revolution

    Reverse Engineering

  • Apex and axis filtering

    Reverse Engineering

  • Surface fittinggiven a point set and a hypothesis - find the best least squares surfacesimple analytic surfaces - f(s,p) = 0s: parameter vector, p: 3D pointminimise Euclidean distances - true geometric fittingalgebraic fitting - minimise f(s,pi )2 approximate geometric fit - f / | f | faithful geometric distances (Pratt 1987, Lukcs et al., 1998): unit derivative on the surfacesequential least squaresbased on normal vector estimationsseries of linear stepsreasonably accurate, computationally efficient

    Reverse Engineering

  • Constrained fitting needed for various engineering purposes fitting smooth profile curves for linear extrusions and surfaces of revolutionrefitting elements of smooth composite regions for B-rep model buildinggood initial surface parameters from segmentationset of constraintsedge curves - explicitly computed beautify the modelresolve topological inconsistenciesrounded values, perpendicular faces, concentric axis

    Reverse Engineering

  • Constrained fitting

    Reverse Engineering

  • Constrained profilesTranslational profileRotational profile

    Reverse Engineering

  • Constrained fitting problemprimary surfaces: s Sparameter set: apoint sets: p Psindividual weight: s

    k constraint equations: {ci}find a, which minimizes f while c=0c(a) = 0Constraints: tangency, perpendicularity, concentricity, symmetry, etc..

    Reverse Engineering

  • Constrained fitting techniques standard solution: Lagrangian multipliers, n+k equations, multidimensional Newton-Raphson problem: constraints contradict or not independentpreferred solution: sequential constraint satisfaction constraints sorted by priorityc(a) = 0 and f(a) = min. is solved simultaneously by iteration

    Reverse Engineering

  • Constrained fitting - 2 linear approximation for c, quadratic for f

    in matrix form

    where

    Reverse Engineering

  • Efficient representation signed distance function

    the function to be minimized

    middle term needs to be computed only once

    Reverse Engineering

  • Fitting a circle - an examplecenter o, radius r, point pEuclidean distance function: |p - o| - rfaithful approximation:

    terms are now separated

    alternative parameters with a constraint:

    Reverse Engineering

  • Equations for constrained fitting of circlescircles (lines) - in Pratts form (1987)

    tangency constraints

    Reverse Engineering

  • Using auxiliary objects1a1b2a2b

    Reverse Engineering

  • Simple part reconstruction

    Reverse Engineering

  • Final CAD (B-rep) modelwith blends without blends

    Reverse Engineering

  • Reconstruction of free-form shapesFunctional decomposition:

    primary surfaces + featuresP0P3P4P5P6P7P8S1P10P1P2S2ST(S1,S2)Ignore area

    Reverse Engineering

  • Reconstruction of free-form shapes

    Surfacestructure

    Reverse Engineering

  • Reconstruction of free-form shapes

    Curvatureplot

    Reverse Engineering

  • Advanced Surface Fitting (BMW model)

    Reverse Engineering

  • Free form surface fittingFunctional:Initialization: data point parametersknot-distributionsmoothing weight ()F minimizationParametercorrectionKnot-insertionSmoothing weight opt.

  • Reconstructing free-form features (vrrb blend)Global surface fittingFunctional decomposition- stable regions- constrained fitting

    Reverse Engineering

  • Reconstructing free-form features(free-form step)Gl