1 CERN - 19/03/2016 Claudio Bortolin CLAUDIO BORTOLIN INFN – PD / CERN.
A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini,...
Transcript of A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini,...
![Page 1: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/1.jpg)
A low cost 3D scanner based
on structured light
C. Rocchini, P. Cignoni,
C. Montani, P. Pingi, R. Scopigno
![Page 2: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/2.jpg)
Claudio Rocchini, Visual Computing Group 2
Introduction
3D Scanner
+
Software
![Page 3: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/3.jpg)
Claudio Rocchini, Visual Computing Group 3
Characteristics
• Use only consumer technology:
– Low cost hardware
– Fast technological development
• Good accuracy and resolution:
– Sufficient for Cultural Heritage acquisition
– Better than “shape from shading” or “silhouette” (but
not than laser scanner)
• Easiness of use:
– Suitable for the Cultural Heritage “people”
![Page 4: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/4.jpg)
Claudio Rocchini, Visual Computing Group 4
Stripe 3D-Scanner Scheme
1. The emitter generates a reference signal
2. The signal hits the surface
3. The sensor gets the signal position
4. The surface position is computed by triangulation
Emitter Sensor
Surface
P
a
b
![Page 5: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/5.jpg)
Claudio Rocchini, Visual Computing Group 5
Our solution A computer drives a
standard video projector
(emitter) and a consumer
digital photo camera
(sensor).
PC
Emitter Sensor
![Page 6: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/6.jpg)
Claudio Rocchini, Visual Computing Group 6
Pattern generation for laser
scanners • The laser scanner
generates a single line.
• All the points of the
line in the image are
detected by looking for
the brightest pixels.
• (The signal is time-
coded).
![Page 7: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/7.jpg)
Claudio Rocchini, Visual Computing Group 7
Pattern generation for non-laser
scanners
• A structured light scanner
generally uses a set of
stripes. The set generates
a binary code.
• The sample points are
obtained by looking for
the edges of the stripes.
• (The signal is space-
coded)
![Page 8: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/8.jpg)
Claudio Rocchini, Visual Computing Group 8
A problem with non-laser
systems: CCD White Expansion
Output Signal
Measured Signal
![Page 9: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/9.jpg)
Claudio Rocchini, Visual Computing Group 9
White Expansion: Negative
Pattern To overcome this
problem a negative
signal has to be sent
Output Signal
Measured Signal
Negative Signal
Edge Position
![Page 10: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/10.jpg)
Claudio Rocchini, Visual Computing Group 10
Our Pattern …
• …Uses Color
– Consumer video-projectors and photo-cameras
support colors.
– Color enhances the information of the signal.
• … Combines lines and stripes
– Lines for geometry detection (like laser scan)
– Stripes for space coding (like others stripe scanner).
![Page 11: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/11.jpg)
Claudio Rocchini, Visual Computing Group 11
Pattern Sample
RGB Generated
Pattern
Green Component:
Stripe Position
Blue, Red Components:
Binary Code (for the next
stripe)
![Page 12: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/12.jpg)
Claudio Rocchini, Visual Computing Group 12
Space coding
A set of binary
patterns generates
the space code.
![Page 13: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/13.jpg)
Claudio Rocchini, Visual Computing Group 13
Advantages of hybrid pattern
• More precision and robustness: line
detection overcomes edge detection.
• Generation of negative patterns is not
needed (50% of the scanning time).
• It takes advantage of the color information
(consumer devices are color devices).
![Page 14: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/14.jpg)
Claudio Rocchini, Visual Computing Group 14
Finding the line position
1. Take the signal from the
camera (green
component)
2. Select an interval using
the space coding (red-
blue)
3. Filter the signal to remove
noise (red line).
4. Compute the barycentre
of the local maximum
(with sub pixel accuracy).
![Page 15: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/15.jpg)
Claudio Rocchini, Visual Computing Group 15
The Overexposure Problem
Overexposed Signal Good Signal
Noisy Geometry
![Page 16: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/16.jpg)
Claudio Rocchini, Visual Computing Group 16
Example of sub pixel accuracy
Sampled
Points
Projected
Pattern
Photocamera
Pixel
Dimension
![Page 17: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/17.jpg)
Claudio Rocchini, Visual Computing Group 17
Computing the 3D point
Given…
• The video projector plane VP,
• The digital camera center DC,
• The sampled picture point S,
We may compute the 3D position of the real Point P by triangulation
![Page 18: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/18.jpg)
Claudio Rocchini, Visual Computing Group 18
From points to surface
At the end of the
scanning process,
points are
triangulated.
• Regular
• Curvature
Optimization
![Page 19: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/19.jpg)
Claudio Rocchini, Visual Computing Group 19
Calibrating the system • Camera Calibration
– Required just once (for given zoom and focus)
– Detects the camera parameters (focal distance, …)
• Projector Calibration
– Required just once (for given zoom and focus)
– Detects the geometry of the planes generated by the
vertical pixel lines.
• System Calibration
– Required just once per system setting
– Detects the relative position of camera and projector.
![Page 20: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/20.jpg)
Claudio Rocchini, Visual Computing Group 20
Camera Calibration
Performed by the use of
a standard method:
• Tsai library + a probe
with circular targets
and bar codes or …
• Intel CV Library + a
chessboard probe
![Page 21: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/21.jpg)
Claudio Rocchini, Visual Computing Group 21
Projector and System
Calibration (1/2) Performed by using the same
probe of the camera calibration
step:
• We first use the targets to
compute the probe position and
orientation in the camera space.
• Then, we project the stripe
pattern over the probe.
![Page 22: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/22.jpg)
Claudio Rocchini, Visual Computing Group 22
By intersecting (at least)
two lines generated from
the projector, we can
compute the projector
plane coordinate in the
camera reference system.
Projector and System
Calibration (2/2)
![Page 23: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/23.jpg)
Claudio Rocchini, Visual Computing Group 23
Color Acquisition The scanner can also acquire color information:
• by taking a picture with white pattern or…
• by taking a set of pictures using different lights for shading removal.
The geometry is aligned to the color texture by definition.
![Page 24: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/24.jpg)
Claudio Rocchini, Visual Computing Group 24
The prototype
Projector
Camera
Lighting
system
![Page 25: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/25.jpg)
Claudio Rocchini, Visual Computing Group 25
What about the accuracy of the system?
The accuracy depends on:
• The video projector quality
• The photo camera quality
• The calibration accuracy
And, mainly, on
• The scanned material (dark, shiny surfaces
are difficult to scan).
![Page 26: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/26.jpg)
Claudio Rocchini, Visual Computing Group 26
Scanner specifications
• Video projector: 1024x768 Digital Light
Processor, high contrast.
• Photo camera: consumer digital photo
camera 1800x1200 pix, USB connection.
![Page 27: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/27.jpg)
Claudio Rocchini, Visual Computing Group 27
Scanner specifications
• Field of view: 750x500 cm (at 130 cm)
• Depth of view: 130 cm to … (the video projector
can’t focusing at lower distance)
• Resolution: 512x768 points
• Accuracy (z axis) : approx. +/- 0,02 cm on white
opaque surface, (experimental measurement)
• Scan speed: 180 secs/scan (the photo camera is
very slow).
![Page 28: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/28.jpg)
Claudio Rocchini, Visual Computing Group 28
A case study: Minerva of Arezzo
Computer Control
Scanner
Statue
![Page 29: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/29.jpg)
Claudio Rocchini, Visual Computing Group 29
Results: Minerva
Ancient Greek statue of
“Minerva di Arezzo”
Florence Archeological
Museum
~170 cm high,
146 scans
![Page 30: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/30.jpg)
Claudio Rocchini, Visual Computing Group 30
Results:
Copy of Laurana Bust
(1400)
29 Scans,
1 working day
![Page 31: A low cost 3D scanner based on structured lightC. Montani, P. Pingi, R. Scopigno Claudio Rocchini, Visual Computing Group 2 Introduction 3D Scanner + Software Claudio Rocchini, Visual](https://reader034.fdocuments.in/reader034/viewer/2022042300/5ecaec54962ede43ed02e621/html5/thumbnails/31.jpg)
Claudio Rocchini, Visual Computing Group 31
Conclusions
We have presented a new 3D scanner system:
• Based on consumer technology
• It uses a line-stripe hybrid pattern that
assures greater precision and speed
• It may acquire also the color information
vcg.iei.pi.cnr.it/~rocchini