3D Digitization Project:
Shape from DistortionBY:
Agam A. NugrohoVanya V.Valindria
Eng Wei Yong
VIBOT 42011
Outline
Introduction Methods Procedure Tarini Method Simple Deflectometry
Result Conclusion
Introduction
3D image reconstruction main issues in computer vision.
Many technique: Shading Texture Stereoscopy Structured Light Contour
?
?
?
?
Shape from distortion reconstruct the 3D shape of the mirror from its reflected images
Aims
Obtain the relationship that is useful in 3D surface reconstruction for specular objects.
depth map
normal map
3D surface
Tarini Method
Deduce 3D shape of the target object by looking at the way it distorts patterns from a monitor.
Deflectometry
This method works by measuring a surface slope of an optical beam which is deflected by the surface.
Experiment
Devices: Monitor: DELL 14” ,
flat monitor Camera: UI-1225
LE-C. CMOS 1/3”. 752 x 480
Object : Small specular object
Camera Calibration
Bouget toolbox using checkerboardParameter Value
Focal Length fc = [ 4017.658 3145.87 ] ± [ 267.5 380.1]
Principal Point cc = [ 375.5 239.5 ] ± [ 0 0 ]
Skew alpha_c = 0 => angle of pixel axes = 90 degrees
Distortion kc = [ -0.88 -30.02 0.01 0 0 ] ± [ 1.57 134 0.03 0.01 0]
Pixel Error err = [ 2.3 1.9 ]
Generate Matte Pattern
20 40 60 80 100120
50
100
150
200
250
300
350
400
450
0 20 40 60 80 100 120 1400
50
100
150
200
250
300
1 stripe pattern
Duplicate in row and column
Generate Matte Pattern
20 40 60 80 100120
50
100
150
200
250
300
350
400
450
Vertical pattern Horizontal pattern
Diagonal 45 pattern
Diagonal 135 pattern
Project the Matte Patterns Using Specular Object
For normali-zation
Other orientation and positionsX
Matte Extraction
Using perfect mirror object
Normalization
Matte Extraction
Which stripes( y)??!
Diophantine Equations:
Change Method!!
Simple Deflectometry
Experimental Setup - Set Exposure Time
Curve from 1 line
Clipped Peak Saturation
Set Exposure Time
Exposure_time = 10.5 Pixel_clock = 30; Frame rate =
max
0 20 40 60 80 100 120 140 160 180 2000
50
100
150
200
250
Curve from 1 line
Color Calibration
Color projected by screen ≠ perceived by camera Generate Ramp Images in RGB
Red Ramp
Green Ramp Blue Ramp
Color Calibration
Project ramp images to mirror object
Red Ramp
Green Ramp Blue Ramp
Color Calibration
Response Curve for each ramp image
0 20 40 60 80 100 120 140 160 1800
20
40
60
80
100
120
140
160
0 20 40 60 80 100 1200
50
100
150
200
250
0 20 40 60 80 100 120 140 160 1800
20
40
60
80
100
120
140
160
RED Ramp Image
RED response curve : linear
Noisy response from other channels
Color Calibration
Find minimum and maximum values of perceived color values in each channel
MIN MAX
Red 17 132
Green 26 182
Blue 21 247
Color Calibration
Normalization of the linear Response Curve
0 50 100 150 200 2500
20
40
60
80
100
120
140Response Curve from Red Channel
0 50 100 150 200 2500
50
100
150
200Response Curve from Green Channel
0 50 100 150 2000
50
100
150
200
250Response Curve from Blue Channel
0 50 100 150 200 2500
50
100
150
200
250
300Normalized Response Curve - RED
0 50 100 150 2000
50
100
150
200
250
300Normalized Response Curve - GREEN
0 50 100 150 200 2500
50
100
150
200
250
300Normalized Response Cruve - BLUE
Geometrical Diagram
Mirror with various shift
• Vertical pattern with 1˚ angle increment• Obvious pattern shift observed
Θ = 0 Θ = 1
Θ = 3
Θ = 2
Θ = 4 Θ = 5
Shifted Color Curve
0 200 4000
50
100
150
200
250Theta = 0
0 200 4000
50
100
150
200
250Theta = 1
0 200 4000
50
100
150
200
250Theta = 2
0 200 4000
50
100
150
200
250Theta = 3
0 200 4000
100
200
300Theta = 4
0 200 4000
100
200
300Theta = 5
0 200 4000
100
200
300Theta = 6
0 200 4000
100
200
300Theta = 7
0 200 4000
100
200
300Theta = 8
0 200 4000
100
200
300Theta = 9
0 200 4000
100
200
300Theta = 10
0 200 4000
100
200
300Theta = 11
0 200 4000
50
100
150
200
250Theta = 12
0 200 4000
50
100
150
200
250Theta = 13
Theta Vs Shift
Shifted Color Curve
0 200 4000
50
100
150
200
250Theta = 0
0 200 4000
50
100
150
200
250Theta = 1
0 200 4000
50
100
150
200
250Theta = 2
0 200 4000
50
100
150
200
250Theta = 3
0 200 4000
100
200
300Theta = 4
0 200 4000
100
200
300Theta = 5
0 200 4000
100
200
300Theta = 6
0 200 4000
100
200
300Theta = 7
0 200 4000
100
200
300Theta = 8
0 200 4000
100
200
300Theta = 9
0 200 4000
100
200
300Theta = 10
0 200 4000
100
200
300Theta = 11
0 200 4000
50
100
150
200
250Theta = 12
0 200 4000
50
100
150
200
250Theta = 13
Θ Versus α
Angle
α
1 1.692 1.843 1.784 1.875 1.546 1.557 1.618 1.819 1.8410 1.6511 1.5312 1.6913 1.84
Angle – Shift Relationship
θ= 1o
α = 1.7 rad
δ= 97 pixels
Conclusion
3D reconstruction of specular surface can be performed using shape from distortion method
In this project, we succeed to obtain the orientation-shift relationship using the flat surface
This result will be useful for extracting the depth from the specular surface
In the future it can be extend to a more complex shiny surface 3D reconstruction.
THANK YOU….
REFERENCES
M.Tarini, et,al, 3D acquisition of mirroring objects using
striped patterns, Graphical Models 67 233–259.2005.
Hui-Liang Shen, et.al. Estimation of Optoelectronic Conversion Functions of Imaging Devices Without Using Gray Samples, Wiley Periodical. Volume 33, Number 2, April 2008.
V. Hanta. SOLUTION OF SIMPLE DIOPHANTINE EQUATIONS BY MEANS OF MATLAB. Institute of Chemical Technology, Prague.
Y. Francken. Metostructure Acquisition with Planar Illuminants.PhD Dissertation. University of Maastrich