Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
art ic l e i nf o
a b s t r a c t
Article history:
Received 24 June 2013
Received in revised form
15 July 2013
Accepted 6 August 2013
Available online 13 September 2013
Vibrations present a major challenge for accurate 3D reconstruction of moving objects. When the
movement of the object is affected by vibrations, the reconstruction system estimates height proles
incorrectly, which leads to major errors in the reconstructed shape of the object. This work proposes a
laser-based 3D reconstruction method that uses multiple laser stripes and produces redundant
information that can be used to estimate and remove vibrations from the nal 3D reconstruction. The
effects of vibrations on systems with a single laser stripe are analyzed, and the detailed mathematical
procedure to model and to estimate vibrations from multiple stripes is presented. Vibrations are then
removed from the reconstructed shape, providing a vibration free result. Different tests are carried out
with synthetic and real data with excellent performance. The analysis of the results indicates that a laserbased 3D reconstruction method using two laser stripes has similar or even better performance
compared with systems with more stripes. Furthermore, it presents a far more cost efcient solution.
& 2013 Elsevier Ltd. All rights reserved.
Keywords:
Vibrations
3D reconstruction
Laser triangulation
Geometric transformations
1. Introduction
3D reconstruction is one of the most widely studied and
fundamental problems in computer vision [1]. Many different
methods have been explored to acquire 3D information from
objects. These methods can be classied as active or passive [2].
Active methods use an external light source, while passive
methods are not based on any specic light source. Among passive
methods, stereo vision [3] is the most commonly used method.
Other passive methods are based on shape detection using the
shade, texture or motion of the object [4]. Active methods are
more commonly used in 3D reconstruction because they produce
better results. Structured [5] and laser light [6] are two types of
light sources used in active methods, with laser being the most
common. In laser-based 3D reconstruction methods, a laser stripe
is projected over an object. Then, the system acquires images of
the projection while the object or the laser stripe is moved
forward. The projection of the stripe is deformed according to
the shape of the object it is illuminating. Thus, using optical
triangulation it is possible to calculate 3D information about the
shape of the object.
Laser-based 3D reconstruction methods are used for many
different applications, such as buildings [7], road surface [8], steel
strips [9], train rails [10], or weld seams [11]. In these environments, where surrounding light and laser power is not fully
52
2. Modeling vibrations
Vibrations are periodic or random motion from an equilibrium
position. In the case of laser-based 3D reconstruction methods,
vibrations are an undesirable phenomenon that produces movements of the object as it moves forward. The consequences of
these vibrations are particularly harmful for 3D reconstruction
because the projection of the stripe is not only deformed due to
the shape of the object itself but also due to the movement of the
object caused by vibrations. Therefore, the 3D reconstruction of an
Laser projector
3D
reconstruction
Rotations
Movement
of the object
Translations
Fig. 1. General architecture for laser-based 3D reconstruction methods with one single laser stripe.
53
Height
t0
Length
t1
Height
Vertical
translation
Movement
Length
t2
Height
Vertical
translation
Movement
Length
t3
Height
Vertical
translation
Reconstruction
Movement
Real
shape
Length
Fig. 2. Effects of vibrations in laser-based 3D reconstruction with one single laser stripe.
x
y
0 1
x
B C
-P @ y A
54
y x s sin y s cos t y
Camera
3D
reconstruction
Rotations
Movement
of the object
Translations
11
A point P over the surface of an object with vibrations V is
transformed using (12), which produces Eqs. (13) and (14)
P V P
12
13
14
3. Estimating vibrations
The model for vibrations is based on four unknown values: ,
xp, yp, and ty. Without a priori information about the shape of the
object or about the type of vibrations it is not possible to estimate
these values. The proposed procedure in this work is to use
x1
B
@ y1
1
1
0
x1
x2
C
B
y2 A V @ y1
1
1
x2
C
y2 A
1
15
55
Height
t0
Length
t1
Height
Vertical
translation
Movement
Length
t2
Height
Vertical
translation
Movement
Length
t3
Height
Vertical
translation
Real
shape
Movement
Reconstruction
Length
16
V 2 sin
17
18
19
Substituting (16)(19) in (11) produces (20). Using this denition of V, a point P x; y over the surface of an object with
vibrations V is transformed using (21), which produces Eqs. (22)
and (23)
0
1
V 1 V 2 V 3
B
C
V1
V4 A
V @ V2
20
The unknown values in (22) and (23) are V1, V2, V3, and V4.
Thus, these equations can be transformed into (24) and (25). These
equations can be expressed in matrix form, as shown in (26)
xV 1 yV 2 V 3 x
24
yV 1 xV 2 V 4 y
25
y
V1
C
0 B
B V2 C
B
C
1 @ V3 A
V4
x
y
!
26
21
The unknown values V1, V2, V3, and V4 can be calculated with
two points, P 1 x1 ; y1 and P 2 x2 ; y2 , and from the obtained
values after the vibration has transformed their positions,
P 1 x1 ; y1 and P 2 x2 ; y2 . The nal system of equations is
shown
0 1
0
1
x1 y1 1 0 0 V 1 1
x1
B
C
C
C B
x1
0 1 CB
y
V
B
B y1
2
C B 1C
B
CB
27
CB C
C
B x2 y2 1 0 CB
@
A@ V 3 A @ x 2 A
x2
0 1
y2
y2
V4
x V 1 xV 2 y V 3
22
y V 2 x V 1 y V 4
23
AX B
0
0
1
1
V1
B C B
P V P-@ y A @ V 2
0
1
V 2
V1
0
10 1
x
CB C
V 4 A@ y A
1
1
V3
28
56
XA
29
tan
1
V2
V1
30
t x V 3
31
t y V 4
32
34
35
36
1 n
jH R j
ni1 i i
37
Fig. 5. Synthetic vibrations used for tests. (a) Real shape of the object. (b) Shape of the object after adding random translations. (c) Shape of the object after adding rotations.
(d) Shape of the object after adding sinusoidal translations and rotations.
MAE
H max
38
Table 1 shows the error when using two, three and four laser
stripes with different types of vibrations. The error in all cases is
very low. Most errors are around 1e14, which is very close to the
representation error of real numbers and it can be considered as
zero (no error). In the case of random translations, the error is null
in all cases. When rotations are added and three or more stripes
are used the error is also null. However, when only two stripes are
used the error increases. The obtained errors with two stripes are
still very low and can be considered negligible for most applications. The results show that there is no difference between only
rotations and translations plus rotations.
The obtained errors with two stripes are very low. The reason is
that estimating only translations removes most of the vibrations,
even when there are rotations. This can be clearly seen with an
example. Let us suppose there are two points with these values:
P 1 5; 5 and P 2 5; 5:1. Then, the position of these points is
measured after vibrations with ty 1 and 0:251 (around the
origin) transform the positions of the points. The result is
P 1 4:973; 6:021 and P 2 4:973; 6:121. If only one point is
used to estimate vibrations (P1 and P 1 , two laser stripes), the result
would be ty 1.021 and 0. Removing this vibration from P 2
results in a height of 5.099, that is, the error compared to P2 is
1:8e05. This error depends on the rotation and also on the
proximity of the height of P1 and P2. However, consecutive points
tend to be very close and the rotations in vibrations are low. Thus,
this indicates that for most applications two laser stripes could be
enough.
Fig. 6 shows the differences between the real object and the
reconstructed object using two and three laser stripes when
vibrations consisting of sinusoidal translations and rotations are
added. As can be seen, with two stripes errors appear at the center
and at the edges, where there are curves in the object. However,
these errors are lower than 1e05, negligible in most cases.
The error when using two laser stripes depends on the degrees
of rotation. Fig. 7 shows the error for different degrees. As can be
seen, the error increases, but the value for 601 is still low.
Moreover, 601 is an unrealistic high value in real applications.
The proposed procedure assumes that the same points in an
image are acquired again in the next image in a different laser stripe
with accuracy. However, repeatedly measuring points always incur in
measurement errors due to acquisition uncertainties and noise.
Table 2 shows the error when using two, three and four laser stripes
with different types of vibrations and when there is a 1% randomly
distributed measurement error. This measurement error is added to
the positions of the transformed points after vibrations. The reconstruction errors increase notably compared with the previous experiments. Also, there is a major difference: the results when using only
two laser stripes are better than when three or four are used. The
reason is that adding noise can provoke spurious estimations of the
vibrations. This problem nally results in outliers in the reconstruction of the shape.
Fig. 8 shows the resulting reconstruction of the object using
two and three laser stripes when vibrations consisting of sinusoidal translations and rotations are added, and with a 1% randomly
distributed measurement error. The added noise provokes errors
in the reconstruction. When using three laser stripes, outliers can
be clearly seen.
An example can be used to understand the problem with three
laser stripes and outliers. Let us suppose the same two points as in
the previous example: P 1 5; 5, P 2 5; 5:1, P 1 4:973; 6:021
and P 2 4:973; 6:121. Vibrations are also ty 1 and 0:251
(around the origin). Assuming 1% error in the repeated measurement, the values of the transformed points would be
P 1 4:973; 6:081 and P 2 4:973; 6:060. The rst point is measured 1% above and the second point is measured 1% below (worst
case scenario). These measurement errors will result in an estimation
of vibrations ty 7.13 and 1:1661, very different from the real
vibration. Let us suppose the third point affected by the same
vibrations is P 3 5; 5:2. Removing the real vibration would provide a height of 4.178, but removing the estimated vibrations would
provide a height of 9.11. Therefore, the result is an outlier.
The estimation of vibrations with noisy data can be improved
by increasing the number of laser stripes. Fig. 9 shows the
0.05
0.04
Error
Error 100
57
0.03
0.02
0.01
0
10
20
30
40
Rotation degree
50
60
Fig. 7. Error when using two laser stripes and vibrations with different degrees of
rotation.
Table 2
Reconstruction error when using multiple stripes and there is measurement
uncertainty.
Table 1
Reconstruction error when using multiple stripes.
Stripes
Rand
Rot
Sin Rot
Stripes
Rand
Rot
Sin Rot
2
3
4
1:9e16
2:1e15
9:5e14
2:7e06
4:8e15
8:0e14
2:7e06
4:8e15
8:0e14
2
3
4
9:7e02
6:6e01
3:6e01
1:1e01
5:1e01
3:3e01
1:1e01
5:4e01
4:2e01
Fig. 6. Error maps with vibrations consisting of sinusoidal translations and rotations. (a) Using two laser stripes. (b) Using three laser stripes.
58
5. Conclusion
0.8
Error
0.6
0.4
0.2
0
the laser plane, also centered over the roll path of the production
line. The camera used is a Basler A501k, which provides images of
1280 1024 pixels using a CMOS sensor at 74 frames per second
with 8 bit depth.
Vibrations in steel strips consist of high frequency vertical
translations. They have a period around 20 cm with a magnitude
of approximately 5 mm. This type of vibrations can be effectively
removed using low-pass lters. Fig. 10(a) and (c) shows two
examples of steel strips reconstructed using a single laser stripe.
As can be appreciated, the shape of the strips is corrupted by
vibrations. Shape quality metrics calculated from this reconstruction would result in large errors. Vibrations can be estimated from
data, as they are the high frequency components of the shape.
Then, the proposed procedure with two laser stripes can be
applied simulating this particular type of vibrations. Fig. 10
(b) and (d) shows the results. The proposed procedure estimates
and removes all vibrations, producing a 3D reconstruction with a
smooth surface. Manual measurements of the shape of the strips
conrm the success of the resulting 3D reconstruction.
The proposed procedure to remove vibrations using multiple
laser stripes is very likely to nd potential applications in a
number of different areas. Vibrations affect the movement of the
objects to a greater or lesser extent in any 3D reconstruction
application based on laser light. Thus, height proles extracted
with a single laser stripe will contain errors, as the reconstructed
shape will be affected by these vibrations. Therefore, the proposed
procedure provides the opportunity to calculate a much more
accurate 3D reconstruction of the object, regardless of the particular application.
8
10
Number of stripes
12
14
Fig. 9. Error when using multiple laser stripes with noisy data.
16
Fig. 10. 3D reconstruction of steel strips using the proposed procedure. (a) First strip with a single laser stripe. (b) First strip with two laser stripes. (c) Second strip with a
single laser stripe. (d) Second strip with two laser stripes.
59