Scanner 3D e Reverse Engineering

92
Reverse Engineering & Scanner 3D

Transcript of Scanner 3D e Reverse Engineering

Page 1: Scanner 3D e Reverse Engineering

Reverse Engineering & Scanner 3D

Page 2: Scanner 3D e Reverse Engineering
Page 3: Scanner 3D e Reverse Engineering

Cos'è uno scanner 3D

un dispositivo che analizza gli oggetti o gliambienti del mondo reale per collezionare datisulle loro forme o sul loro aspetto, e percostruire modelli tridimensionali digitali

Page 4: Scanner 3D e Reverse Engineering
Page 5: Scanner 3D e Reverse Engineering

Intro / storia 1

MisurarePrimi tentativi per standardizzare le misure: 2600 AC nella valledell'Indo

240 AC Erastotene stimò la circonferenza della Terra al solstiziod'estate misurando l'altezza del sole a Alexandria e Siene

1750 / 1850 Rivoluzione Industriale – la misura delle cosedivenne fondamentale

Primi metodi di misura per contatto diretto: calibri e metri

Pantografi per replicare gli oggetti

La rivoluzione c'è stata con le misure non invasive e adistanza.

Page 6: Scanner 3D e Reverse Engineering

Intro / storia 2

Laser ranging systems have been in use in a variety ofindustries for decades, with the first patented instrumentsappearing as early as the late 1980’s. 3D scanning was first applied in the Architecture,Engineering, and Construction industry in the 1990’s withthe market debut of the first integrated commercial systemsfor 3D scanning

Page 7: Scanner 3D e Reverse Engineering
Page 8: Scanner 3D e Reverse Engineering

Applicazioni / 1

A cosa serve? Quali applicazioni?

Product inspection – per vedere se un prodotto è uscito comeprevisto (si misurano parti e rilevano difetti)

Medicina – si rilevano parti in 3D per creare protesi su misura.Negl interventi la scansione è proiettata sul paziente

Product design

Page 9: Scanner 3D e Reverse Engineering

Applicazioni / 2

Edilizia – verifica che l'edificio sia uscito come previsto

Clothes fitting – misurazione del corpo – es esercito USA ha unsistema di misurazione automatico

Art historySculptures & interesting objects to look atArt: studying working techniquesArt historyCultural heritage preservationHigh-visibility project

ArchaeologyRicostruzione di parti e ricombinazione frammentiRicostruzione oggetti in 3D per evitare di toccarli

Page 10: Scanner 3D e Reverse Engineering

Applicazioni / 3

Computer graphicsCinemaGiochi (hanno un fatturato maggiore del cinema)

Robot navigation

Page 11: Scanner 3D e Reverse Engineering

Possibilità tecnologiche

ContattoSonde a contatto

TrasmissiveMagnetic Resonance Imaging (MRI)UltrasuoniRaggi XSuoni e Vibrazioni

RiflessioneOtticaNon ottica (radar e sonar)

Page 12: Scanner 3D e Reverse Engineering

Tecnologie ottiche

Immagini stereo Oggetto inquadrato da due angolature (doppia immagine)Meglio più di due per evitare ambiguitàNon vedo quello che c'è dietro

Page 13: Scanner 3D e Reverse Engineering

Tecnologie ottiche

Shape from motionDa analisi di una sequenza di immagini, ricavo l'oggetto in 3d

Shape from shadingSi evidenziano le forme illuminando l'oggetto da diversi punti

Page 14: Scanner 3D e Reverse Engineering

Tecnologie ottiche

Shape from textureSi proietta una texture nota sull'oggetto e vedendo come si

deforma si ricava la forma dell'oggetto (esempio una serie dirighe)

Page 15: Scanner 3D e Reverse Engineering

Tecnologie ottiche

Shape from focus/defocusSi determinano distanze e forme vedendo come e dove si

mette a fuoco l'immagine – la messa a fuoco dipende dalladistanza

Tempo di volo del laserOpera su grandi volumi (lati da 100m)Precisione grossolana – 5mmPer scavi archeologici, edifici, stanze

Page 16: Scanner 3D e Reverse Engineering

Tecnologie ottiche

TriangolazioneUna lama laser che scorre sull'oggettoLaser e camera posti a triangolo con l'objSe camera e laser si muovono indipedentemente, è difficile

poi ricostruire con precisione. Molti scanner hanno camera elaser fissi.

Per grandi oggetti si usano sistemi che muovono il gruppo discansione e gli fanno coprire delle piccole regioni (moto su tilt epan)

Page 17: Scanner 3D e Reverse Engineering

MakerScanner

Page 18: Scanner 3D e Reverse Engineering

Distanze e colori

Misura della distanza e nuvola di punti

Scanning systems primarily capture the physical position of atarget object, represented as a series of points (forming a “pointcloud”) typically in Cartesian coordinates (XYZ). This isaccomplished by comparing the emitted and returned light pulse,and determining the value of the target object in relation to theposition of the scanning instrument

Colori

determine the colour of the each point by using a camera (can bebuilt-in or seperate), which is represented by the commonly usedRGB (red, green, blue) value scale. Because scanners are opticalsystems, only what the scanner can “see” is captured,

Page 19: Scanner 3D e Reverse Engineering

Precisione, Risoluzione, Accuratezza

Risoluzione: densità della nuvola di punti

Accuratezza: differenza tra misura e valore reale

Precisione: indica la correttezza della misura (posso avere unpoint set preciso ma inaccurato – es se offset iniziale e non miaccorgo)

Peggiorano con:DistanzaSuperficie riflettenteVelocità di scansione

Si va da qualche millimetro (5 mm) fino a frazioni di millimetro(0,3 mm)

Page 20: Scanner 3D e Reverse Engineering
Page 21: Scanner 3D e Reverse Engineering

Formato file

Lo scanner raccoglie una nuvola di punti che poi è raccolta in unfile

ASTM E57 File Format (XYX I RGB) questo rappresenta lanuvola di punti

Questi formati derivano dal mondo grafico:

OBJ (con colori)

STL

VRML (con colori)

Page 22: Scanner 3D e Reverse Engineering
Page 23: Scanner 3D e Reverse Engineering
Page 24: Scanner 3D e Reverse Engineering
Page 25: Scanner 3D e Reverse Engineering

Scanner professionali

Page 26: Scanner 3D e Reverse Engineering

Makerbot Digitizer

Circa 800$

Page 27: Scanner 3D e Reverse Engineering
Page 28: Scanner 3D e Reverse Engineering

Prezzo: circa 400€

Page 29: Scanner 3D e Reverse Engineering

Uniscan

Prezzo: 4000€

Page 30: Scanner 3D e Reverse Engineering

Scanner low cost

Page 31: Scanner 3D e Reverse Engineering

David Scanner

A starter kit of the David Scanner is available for 399 €.

360 scans are possible, although the user needs to turn theobject manually between multiple scans.

The software is proprietary and runs only on Windows.

Minimal equipment is needed, such as a line laser, a camera anda calibration pattern which can be printed out.

Using the DAVID- Shapefusion software the user can manuallymerge multiple point-clouds from different scans and convertthem to a surface mesh by-hand.

Page 32: Scanner 3D e Reverse Engineering

David Scanner

Page 33: Scanner 3D e Reverse Engineering

David Scanner

Page 34: Scanner 3D e Reverse Engineering
Page 35: Scanner 3D e Reverse Engineering

Makerbot Scanner v.0

The MakerBot 3D Scanner (formerly know as Cyclops) is a 3Dscanning mounting kit for a pico projector, a webcam and aniPhone or iPod.

The mounting kit is available for 50$.

A set of additional open-source software is required (ThreePhase,PeasyCam, ControlP5, Processing).

Extensive instructions are provided on the website to perform asingle face scan.

Using Blender and MeshLab the point-clouds are transformedinto surface meshes which can then be printed on the MakerBot.

http://wiki.makerbot.com/3D-scanner

Page 36: Scanner 3D e Reverse Engineering

Makerbot Scanner v.0

Page 37: Scanner 3D e Reverse Engineering

3D Photograpy on your desk

This project requires very little hardware: a camera, a desk- lamp,a pencil and a checkerboard.

The checkerboard is used for calibration. The pencil is waved between the lamp and the object to bescanned, casting a shadow on the object.

The 3D shape of the object is extracted from the spatial andtemporal location of the observed shadow.

Several implementations of this technique are available on theproject’s website.

http://www.vision.caltech.edu/bouguetj/ICCV98/

Page 38: Scanner 3D e Reverse Engineering

FabScanner

Fabscanner http://hci.rwth-aachen.de/fabscan

Un progetto simile:

Scanner con arduino e mathlabhttp://makezine.com/projects/diy-3d-laser-scanner-using-arduino/

Page 39: Scanner 3D e Reverse Engineering

FabScanner

Page 40: Scanner 3D e Reverse Engineering

MakerScanner

Scanner con webcam fissa e laser lineare da muovere a mano

Il software è disponibile per Windows, Linux e come sorgenti.

Page 41: Scanner 3D e Reverse Engineering

MakerScanner

Page 42: Scanner 3D e Reverse Engineering
Page 43: Scanner 3D e Reverse Engineering

MakerScanner

Page 44: Scanner 3D e Reverse Engineering

I used Blender 3D to clean the pointcloud and MeshLab to create a surfacewhich we then 3D printed on a Makerbot. If you're interested you can get thepointcloud and STL files here.

Page 45: Scanner 3D e Reverse Engineering
Page 46: Scanner 3D e Reverse Engineering
Page 47: Scanner 3D e Reverse Engineering

123D Catch

Download e demo

Page 48: Scanner 3D e Reverse Engineering

123D Catch

Page 49: Scanner 3D e Reverse Engineering
Page 50: Scanner 3D e Reverse Engineering
Page 51: Scanner 3D e Reverse Engineering
Page 52: Scanner 3D e Reverse Engineering
Page 53: Scanner 3D e Reverse Engineering
Page 54: Scanner 3D e Reverse Engineering

Kinect

Kinect also includes infrared projectors and cameras which areused for depth detection, hence it could also be used to build a3D scanner.

The depth perception technology in the Kinect works best atdistances of 6-8 feet (⇡ 2m).

Thus, the Kinect is better suited for identifying ”likely humans inthe scene and the likely positions of their arms and legs.” than for precise short-range 3D scanning.

Attenzione alle versioni per: Window e XBox

Alternative: ASUS xition

SOFTWARE: KScan 3D, Skanect, FARO...

Page 55: Scanner 3D e Reverse Engineering
Page 56: Scanner 3D e Reverse Engineering
Page 57: Scanner 3D e Reverse Engineering
Page 58: Scanner 3D e Reverse Engineering
Page 59: Scanner 3D e Reverse Engineering
Page 60: Scanner 3D e Reverse Engineering
Page 61: Scanner 3D e Reverse Engineering

Skanect

Per Windows e Mac

Limitato a 5000 facce in versione free

E' molto facile da usare

Spiegazione programma e demo scansione

Page 62: Scanner 3D e Reverse Engineering
Page 63: Scanner 3D e Reverse Engineering

Riparare i modelli con Meshlab

Nuvola di punti | Riparare | Chiudere | Esportare

Page 64: Scanner 3D e Reverse Engineering

MeshLabFile → import Model

Import della tazza.obj fatta con Skanect

Movimenti:- drag dei cerchi per ruotare- CMD + drag per il PAN- zoom (rotellina mouse)

Visualizzazioni (toolbar) punti, triangoli...

IlluminazioneRender → lightening

Tasto toolbox: fill hole

Icona con i 3 assi a colori : serve per ruotare, traslare e spostare

Cancellare parti con la selezione per vertici e facce e l'appositofiltro.

Page 65: Scanner 3D e Reverse Engineering

MeshLabSemplificare facce

https://www.shapeways.com/tutorials/polygon_reduction_with_meshlab

From the menu, select Filters > Remeshing, simplification and construction > QuadraticEdge Collapse Detection.

Target number of faces: numero facce desiderate

Quality threshold: 1. Enter a value between 0 and 1 here; the higher the value the harderMeshLab tries to stick to your original model's shape.

Preserve Boundary of the Mesh: Yes. 'The simplification process tries not to destroy meshboundaries, e.g. exposed edges of the mesh are left untouched. This parameter has noeffect on watertight meshes.'

Preserve Normal: Yes. Select this to stop MeshLab from accidentally flipping the facenormals.

Planar simplification: Yes. Paolo's comment: 'Add additional simplification constraints thattry to preserve the current shape of the triangles.

Page 66: Scanner 3D e Reverse Engineering
Page 67: Scanner 3D e Reverse Engineering
Page 68: Scanner 3D e Reverse Engineering
Page 69: Scanner 3D e Reverse Engineering
Page 70: Scanner 3D e Reverse Engineering
Page 71: Scanner 3D e Reverse Engineering
Page 72: Scanner 3D e Reverse Engineering

Link dei tutorial

cleaning: http://abarry.org/makerscanner/4-makerscanner-post-processing.htmlmeshing: http://abarry.org/makerscanner/5-makerscanner-meshing.html

Page 73: Scanner 3D e Reverse Engineering

● Filters -> Normal, Curvatures and Orientation -> Compute normal forpoints set

● Filters -> Remeshing, Simplification and Reconstruction -> SurfaceReconstruction Poisson

● Filters -> Normals, Curvatures and Orientation-> Re-Orient All FacesCoherently

Page 74: Scanner 3D e Reverse Engineering

NetFabb

Programma a uso gratuito (funzioni limitate)

Si usa per lavorare sui modelli STL

Utile per: - riparare file- individuare errori- tagliare i file- ruotare e ridimensionare oggetti

Page 75: Scanner 3D e Reverse Engineering

NetFabb

Page 76: Scanner 3D e Reverse Engineering
Page 77: Scanner 3D e Reverse Engineering
Page 78: Scanner 3D e Reverse Engineering
Page 79: Scanner 3D e Reverse Engineering
Page 80: Scanner 3D e Reverse Engineering

MeshMixer

Page 81: Scanner 3D e Reverse Engineering

Editare l'stl con 123D design

Importare e aggiungere una base

Oppure scritte in svg...

Page 82: Scanner 3D e Reverse Engineering
Page 83: Scanner 3D e Reverse Engineering

Altre fonti

DICOM

Seg3d v2.1 + imagevis

Aerial - planimetry

Page 84: Scanner 3D e Reverse Engineering
Page 85: Scanner 3D e Reverse Engineering
Page 86: Scanner 3D e Reverse Engineering
Page 87: Scanner 3D e Reverse Engineering
Page 88: Scanner 3D e Reverse Engineering
Page 89: Scanner 3D e Reverse Engineering
Page 90: Scanner 3D e Reverse Engineering
Page 91: Scanner 3D e Reverse Engineering
Page 92: Scanner 3D e Reverse Engineering

Grazie!

Paolo [email protected]