articol science

Upload: madalina-gabriela-herisanu

Post on 04-Feb-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/21/2019 articol science

    1/9

  • 7/21/2019 articol science

    2/9

    When the object has a known shape, for example a perfect

    plane, 3D reconstruction is not really necessary. However, laser-

    based triangulation can be used to characterize vibrations [19,20].

    These methods estimate vibrations from the relative depth varia-

    tions. A similar approach can be used with laser Doppler vibro-

    metry [21,22]. In this case, vibrations are estimated from the

    Doppler shift of the reected laser beam frequency. All these

    methods assume a static shape of the object, i.e., the shape does

    not change over time. Thus, only vibrations are responsible forvariations in measurements. When the shape of the object

    changes, these methods are not applicable.

    A known shape of the object or a known type of vibrations

    could be considered 3D reconstruction invariants. When these

    invariants do not exist these procedures to remove vibrations are

    not possible. Therefore, in order to remove vibrations new invar-

    iants need to be created.

    This work proposes a method to remove vibrations in 3D

    reconstruction based on using multiple laser stripes. When more

    than one laser stripe is used, a new invariant is created: the

    displacement from one laser stripe to the next is not dependent on

    vibrations, but only on the shape of the object. Therefore, the real

    shape of the object can be obtained without the interference of

    vibrations. However, the exact number of stripes needed depends

    on the complexity of the vibrations. When vibrations only consist

    of vertical translations, two laser stripes are required. On the other

    hand, when vibrations are a combination of vertical translations

    and rotations, three laser stripes are required. More than three

    laser stripes produce an over-determined system that delivers a

    more robust solution. In this work all these possibilities are

    analyzed and the mathematical procedures to remove vibrations

    in these cases are developed. Then, the proposed procedure is

    applied to synthetic and real data. The accuracy of the results is

    discussed with and without noisy data and compared with the

    benets of using more than two laser stripes. Results indicate that

    a laser-based 3D reconstruction method using two laser stripes

    presents a far more cost efcient solution than other approaches,

    also with similar performance.

    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 move-

    ments 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

    object with a at surface could result in an object with a wavy

    surface, as can be seen in Fig. 1. In a different scenario, it is the

    laser projector that moves and is affected by vibrations, for

    example in a robot arm. However, the result is the same but from

    a different point of view. In this work, vibrations are considered

    from the point of view of a moving object, although it would be

    equivalent from the point of view of a moving laser projector.

    The two types of vibrations affecting laser-based 3D reconstruc-

    tion methods are translations and rotations. Translations are verticalmovements of the object similar to bouncing, while rotations are

    semi-circular movements of the object around a pivot position

    similar to rocking. These vibrations occur while the object moves

    forward. The two types of vibrations can be present at the same time,

    although translations are much more common than rotations.

    The type of translations depends on the way the object is

    moved. When the object is moved using a conveyor belt, transla-

    tions can appear as random vertical movements without a pattern.

    On the other hand, semi-sinusoidal translations can appear if the

    object hits the conveyor belt periodically. When the object is not

    actually touching the ground, for example when moving a sheet of

    paper, vibrations can show a sinusoidal pattern while the object

    moves forward along a roll path, upwards and downwards.

    Fig. 2 shows the resulting effect of translations in 3D recon-

    struction when a single laser stripe is used. The gure shows a

    simplied example with one single point from a side view. In this

    case the object moves forward while it is affected by vibrations, in

    particular with translations. In t1 a new point is acquired, but its

    position not only depends on the shape of the object but also on

    the vertical translation from t0 to t1. In t2 and t3 new points are

    acquired that are used to create a reconstruction of the shape of

    the object. However, the resulting reconstruction is corrupted due

    to the vertical translations, as can be seen in the gure.

    Rotations are less common because they only occur when the

    object is held at two distant points along the length of the object,

    such as steel strips. In these cases, the movement of the object can

    be affected by rotations around a pivot position, perpendicular to

    the movement.

    The two types of vibrations can be described using a mathe-matical model based on geometric transformations. The mathe-

    matical principles are described next.

    2.1. Geometric transformations

    There are four classes of geometric transformations. These

    classes can be described in terms of those elements or quantities

    that are preserved or invariant, such as for example the distance or

    the angle. Also, they form a hierarchy of transformations, where a

    class extends the previous class.

    Rotations

    Translations

    Laser projector Camera

    3D

    reconstruction

    Movement

    of the object

    Fig. 1. General architecture for laser-based 3D reconstruction methods with one single laser stripe.

    R. Usamentiaga et al. / Optics and Lasers in Engineering 53 (2014) 515952

  • 7/21/2019 articol science

    3/9

    Isometry is the most basic class. This class of transformationpreserves the Euclidean distance. When the isometry also pre-

    serves the orientation it is called Euclidean transformation. This

    type of isometry is a composition of translation and rotation.

    Euclidean transformations model the motion of rigid objects.

    The second class of transformation is similarities. A similarity

    transformation is an isometry composed with an isotropic scaling

    (uniform scaling in all axes). This class of transformation does not

    preserve the distance, but the ratio of two lengths.

    An afne transformation is an extended version of a similarity

    transformation with an anisotropic scaling added (different scaling

    for each axis). This class of transformation preserves the ratio of

    areas and parallel lines. Angles are not preserved, so that shapes

    are skewed under the transformation.

    The fourth class is projective transformations. This class gen-eralizes an afne transformation by considering the non-linear

    effects of the projection. The projective invariant is the cross ratio

    of lengths on a line.

    These classes of geometric transformations are composed of

    simple transformations, such as translation, rotation, or reection.

    Translation is not linear in 2D, i.e., it cannot be represented with

    2 2 matrix. Thus, homogeneous coordinates are used by adding a

    third coordinate. A 2D point, P x;y, is transformed to homo-

    geneous coordinates using

    Px

    y

    !-P

    x

    y

    1

    0

    B@

    1

    CA 1

    In homogeneous coordinates, a translation can be expressedusing(2), where tx and ty are the horizontal and vertical transla-

    tions, respectively

    T

    1 0 tx

    0 1 ty

    0 0 1

    0B@

    1CA 2

    Scaling can be expressed using(3), wheresis the scaling factor,

    in this case equal for both axes

    S

    s 0 0

    0 s 0

    0 0 1

    0B@

    1CA 3

    Rotation can be expressed using (4), where

    is the rotationangle

    R

    cos sin 0

    sin cos 0

    0 0 1

    0B@

    1CA 4

    These three translations can be combined into a single matrix,

    H, using matrix multiplication (5). H represents a similarity

    transformation. Removing the scale parameter would result in

    Euclidean transformation. These combined transformations are

    applied from right to left

    H T SR

    s cos s sin tx

    s sin s cos ty

    0 0 1

    0

    B@

    1

    CA 5

    Height

    Length

    Height

    Length

    Height

    Length

    Height

    Length

    Movement

    Movement

    Movement

    Verticaltranslation

    Vertical

    translation

    Verticaltranslation

    Reconstruction

    Realshape

    t3

    t2

    t1

    t0

    Fig. 2. Effects of vibrations in laser-based 3D reconstruction with one single laser stripe.

    R. Usamentiaga et al. / Optics and Lasers in Engineering 53 (2014) 5159 53

  • 7/21/2019 articol science

    4/9

    Any point could be transformed using (6), which produces

    Eqs.(7) and (8)

    P V P-

    x

    y

    1

    0B@

    1CA

    s cos s sin tx

    s sin s cos ty

    0 0 1

    0B@

    1CA

    x

    y

    1

    0B@

    1CA 6

    xxs cos ys sin tx 7

    yxs sin ys cos ty 8

    2.2. Modeling vibrations based on geometric transformations

    Two types of vibrations affect objects while they are moved or

    transported under the laser stripe: translations and rotations.

    Translations are vertical movements of the object while it is being

    moved. This type of vibrations could be modeled using the

    translation matrix(9), where ty represents the vertical movement

    T

    1 0 0

    0 1 ty

    0 0 1

    0B@

    1CA

    9

    The other type of vibrations considered is rotations. This type ofvibrations occurs on exible objects, such as steel strips or paper

    sheets. Rotations are semi-circular movements of the object

    around a pivot position. This type of vibrations could be modeled

    using the rotation matrix using (4), where represents the

    rotation angle. However, this transformation is only valid when

    the pivot position is at the origin. When the rotation is not carried

    out around the origin but around a pivot point xp;yp, i t i s

    necessary to perform previously a translation from the pivot point

    to the origin, a rotation, and nally a translation from the origin

    back to the pivot point. The process can be expressed with a

    combination of two translations and one rotation matrix using

    R

    1 0 xp

    0 1 yp

    0 0 10B@ 1CA

    cos sin 0

    sin cos 0

    0 0 10B@ 1CA

    1 0 xp

    0 1 yp

    0 0 10B@ 1CA 10

    A particular type of vibration Vcomposed of translation and

    rotation can be modeled as a combination of(9) and(10), using

    matrix multiplication

    V RT

    cos sin xp cos tyyp sin xp

    sin cos xp sin tyyp cos yp0 0 1

    0B@

    1CA11

    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

    xx cos y sin xp cos tyyp sin xp 13

    yx sin y cos xp sin tyyp cos yp 14

    These equations create a model for vibrations that determines

    the transformation of points in space. The model is parametrized

    by four values: , xp,yp, and ty.

    3. Estimating vibrations

    The model for vibrations is based on four unknown values: ,

    xp, yp, andty. 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

    multiple laser stripes. This provides redundant information that

    can be used to estimate vibrations, and thus, to remove them.

    The proposed architecture can be seen in Fig. 3. The projections

    of the laser stripes on the object are very close. Thus, the move-

    ment of the object caused by vibrations affects the deformation of

    the laser stripes equally. When the object moves forward, a new

    image is acquired. In the new image some of the laser stripes are

    projected at the same position as the previous image. The shape of

    the object in these two images is the same; the difference is only

    caused by vibrations. Therefore, this redundant information can be

    used to estimate vibrations.

    Fig. 4 shows how two laser stripes can be used to remove

    vertical translations. Again, the gure shows a side view with one

    longitudinal line, but the idea is the same with more points. In t0two points are acquired. The vertical distance between these two

    points,P0t0and P1t0, only depends on the shape of the object.

    Later int1, after the object is moved, two new points are acquired,

    P0t1andP1t1. The pointP0t1should be in the same position as

    P1t0, but a vertical translation has modied it. The vertical

    translation can be estimated by subtracting P0t1 from P1t0.

    The resulting value, Vt1 is the vertical translation from t0 to t1.

    This vertical translation has affected P0t1 and P1t1 equally,

    therefore vibrations can be removed in P1t1 by adding Vt1,

    which results inPP1t1. Int2a new vertical translation occurs. This

    new vertical translation, Vt2, is estimated as P1t1P0t2. Now,

    vibrations inP1t2are removed by adding Vt2and alsoVt1, i.e.,PP1t2 P1t2 Vt1 Vt2. IfVt1 Vt2 is called VVt2, then

    PP1t3would be calculated asP1t3 VVt2 Vt3. For a general

    case, the position of a pointPP1tiwithout vibrations is calculated

    as P1ti VVti1 Vti. This procedure completely removes

    vertical translations, producing a perfect reconstruction of the

    shape of the object. For more complex vibrations that include

    rotations more than two laser stripes are required. The mathema-

    tical procedure is described next.

    3.1. Estimating vibrations with three or more laser stripes

    In(12) there are four unknown values: , xp, yp, and ty. These

    values dene the vibration. In order to calculate these four values

    four equations are needed. These four equations can be created

    from two points, P1 x1;y1 and P2 x2;y2, and from the

    obtained values after the vibration has transformed their positions

    and they are acquired again, P1 x

    1;y

    1 and P

    2 x

    2;y

    2. This

    means that at least three laser stripes are required, so that two

    points are measured twice, as can be seen inFig. 3. Each pair of

    points produces two equations, one for x and one fory. Therefore,

    with the two pairs of points four equations are generated.

    Gathering all values, model (15)can be written as

    x1 x

    2

    y1 y

    2

    1 1

    0

    B@

    1

    CA V

    x1 x2

    y1 y2

    1 1

    0

    B@

    1

    CA15

    Rotations

    Translations

    Laser projectors Camera

    3Dreconstruction

    Movementof the object

    Fig. 3. Improved architecture for laser-based 3D reconstruction methods.

    R. Usamentiaga et al. / Optics and Lasers in Engineering 53 (2014) 515954

  • 7/21/2019 articol science

    5/9

    The system of equations in model(15)is non-linear and cannotbe solved analytically. Therefore, it is not an appropriate model for

    fast and accurate computation. However, it can be transformed

    into a linear system by creating a set a intermediate variables. Four

    variables are created, V1, V2, V3, andV4, which correspond to

    V1 cos 16

    V2 sin 17

    V3xp cos tyyp sin xp 18

    V4 xp sin tyyp cos yp 19

    Substituting (16)(19)in (11) produces(20). Using this deni-

    tion of V, a point P x;

    y over the surface of an object withvibrationsV is transformed using (21), which produces Eqs. (22)

    and(23)

    V

    V1 V2 V3

    V2 V1 V4

    0 0 1

    0B@

    1CA 20

    P V P-

    x

    y

    1

    0B@

    1CA

    V1 V2 V3

    V2 V1 V4

    0 0 1

    0B@

    1CA

    x

    y

    1

    0B@

    1CA 21

    x V1xV2yV3 22

    y V2x V1y V4 23

    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)

    xV1yV2V3x 24

    yV1xV2V4y 25

    x y 1 0

    y x 0 1

    ! V1V2

    V3

    V4

    0BBB@

    1CCCA

    x

    y

    ! 26

    The unknown values V1, V2, V3, and V4 can be calculated withtwo points, P1 x1;y1 and P2 x2;y2, and from the obtained

    values after the vibration has transformed their positions,

    P1 x

    1;y

    1 and P

    2 x

    2;y

    2. The nal system of equations is

    shown

    x1 y1 1 0

    y1 x1 0 1

    x2 y2 1 0

    y2 x2 0 1

    0BBBB@

    1CCCCA

    V1

    V2

    V3

    V4

    0BBB@

    1CCCA

    x1y1x2y2

    0BBBB@

    1CCCCA 27

    Gathering all the unknown parameters into a column vector,

    model(27)can be rewritten as (28), where X V1; V2; V3; V4T

    AX B 28

    Height

    Length

    Height

    Length

    Height

    Length

    Height

    Length

    Movement

    Movement

    Movement

    Verticaltranslation

    Vertical

    translation

    Verticaltranslation

    ReconstructionRealshape

    t3

    t2

    t1

    t0

    Fig. 4. Removing vibrations in laser-based 3D reconstruction using multiple stripes.

    R. Usamentiaga et al. / Optics and Lasers in Engineering 53 (2014) 5159 55

  • 7/21/2019 articol science

    6/9

    The system of equations in (28)is linear and can be solved as

    XA1B 29

    When the system is solved, the unknown value can be

    determined using (30). The values of xp, yp, and ty cannot be

    calculated directly. Instead, global values for translation in both

    axes,tx andt

    y, are calculated as(31)and (32). Although the nal

    values ofxp,yp, andtyare unknown, the model for the vibrations V

    is perfectly de

    ned. Thus, the transformation of the points in spacedue to vibrations is known, and it can be reversed

    tan 1V2V1

    30

    tx V3 31

    ty V4 32

    This procedure could also be applied to estimate a similarity

    transformation. In this case the scale parameter, s, could be

    calculated as

    s

    ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiV11V

    22

    q 33

    To calculate the unknowns in the transformation matrix V, at

    least two pair of points are needed. However, more than two

    points could also be used. In this case, matrixA would have more

    rows than columns and the systems of equations in (28)cannot be

    directly solved. With the purpose of minimizing the distances, the

    least square solution for the parameter vector Xcan be computed

    by

    X ATA1ATB 34

    Solving the least square problem using (34) could lead to

    numerical instabilities[23]. In general, an orthogonal decomposi-

    tion is preferred. These methods are slower but more numerically

    stable. An alternative decomposition for X is the singular value

    decomposition (SVD)[24]. This method is the most computation-

    ally intensive, but is particularly useful if round-off errors could

    create singularity problems in matrix X.

    3.2. Estimating vibrations with only two laser stripes

    When only two laser stripes are used, translations and rota-

    tions cannot be estimated because there is only one point

    measured twice. A single point can be used to create two

    equations, which are not enough to calculate the four unknown

    values. However, this point can be used to estimate translations

    and assume that there are no rotations. In this case, vibrations can

    be modeled with a single translation matrix as follows:

    V T

    1 0 0

    0 1 ty

    0 0 1

    0B@

    1CA 35

    In order to estimate the translation with P1 x1;y1 and from

    the obtained value after the vibration has transformed its position,

    P1 x

    1;y

    1, (36)could be used

    tyy1y

    1 36

    When three or more laser stripes are used there is a possibility

    that the system of equations does not have a solution, that is, the

    coefcient matrix is singular, for example due to repeated points.

    In this case, vibrations could be estimated the same as when using

    only two laser stripes, only translations are taken into account.

    4. Results and discussion

    In order to assess the proposed procedure, several experiments

    have been carried out. First, a synthetic object was created. The

    object contains a low frequency curve at the center and highfrequency curves at the edges, as can be seen in Fig. 5(a). Different

    types of vibrations were added to the object. The resulting 3D

    reconstructions using a single laser stripe are shown in Fig. 5(b)

    (d).Fig. 5(b) shows the object with uniformly distributed random

    translations of 3% of the object height (Rand). Fig. 5(c) shows the

    object with rotations of 0.51 around the center of each prole

    (Rot). Fig. 5(c) shows the object with a combination of sinusoidal

    translations and rotations with same amplitudes as before

    (SinRot). These types of vibrations have been used because they

    are common in many applications.

    In order to test the proposed procedure, it is assumed that

    there are multiple laser stripes available for 3D reconstruction.

    When only two laser stripes are used, only translations are

    estimated and removed. The difference between the original and

    the reconstructed shape of the object is assessed with the mean

    absolute error (MAE) using(37), wheren is the number of points,

    Hi is the height at point i, and Ri is the reconstructed height at

    point i. This value is normalized using (37), where Hmax is the

    maximum height. This error value is a percentage over the

    maximum height of the object, and it is independent from the

    specic height of the object

    MAE1

    n

    n

    i 1

    HiRijj 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.

    R. Usamentiaga et al. / Optics and Lasers in Engineering 53 (2014) 515956

  • 7/21/2019 articol science

    7/9

    Error 100MAE

    Hmax38

    Table 1shows 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 applica-

    tions. 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:

    P1 5; 5 and P2 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

    P1 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 ty1.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. 7shows the error for different degrees. As can beseen, 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 2shows 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 recon-

    struction errors increase notably compared with the previous experi-

    ments. 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 reconstruc-

    tion of the shape.

    Fig. 8 shows the resulting reconstruction of the object using

    two and three laser stripes when vibrations consisting of sinusoi-dal 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:P1 5; 5,P2 5; 5:1,P

    1 4:973; 6:021

    and P2 4:973; 6:121. Vibrations are also ty1 and 0:251(around the origin). Assuming 1% error in the repeated measure-

    ment, the values of the transformed points would be

    P1 4:973; 6:081 and P

    2 4:973; 6:060. The rst point is mea-

    sured 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 P3 5; 5:2. Removing the real vibration would pro-

    vide 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

    Table 1

    Reconstruction error when using multiple stripes.

    Stripes Rand Rot Sin Rot

    2 1:9e16 2:7e06 2:7e06

    3 2:1e15 4:8e15 4:8e15

    4 9:5e14 8:0e14 8:0e14

    Fig. 6. Error maps with vibrations consisting of sinusoidal translations and rotations. (a) Using two laser stripes. (b) Using three laser stripes.

    0 10 20 30 40 50 600

    0.01

    0.02

    0.03

    0.04

    0.05

    Rotation degree

    Error

    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.

    Stripes Rand Rot Sin Rot

    2 9:7e02 1:1e01 1:1e01

    3 6:6e01 5:1e01 5:4e01

    4 3:6e01 3:3e01 4:2e01

    R. Usamentiaga et al. / Optics and Lasers in Engineering 53 (2014) 5159 57

  • 7/21/2019 articol science

    8/9

    resulting error for a different number of stripes. The error

    increases sharply from two to three stripes, and it decreases

    slowly as the number of stripes is increased. When there are a

    large number of stripes the error is low due to the improved

    robustness of the estimation of vibrations.

    The proposed procedure has been applied to real data. In this

    case, steel strips have been used. Strips are generally 2 m wide and

    10 km long. 3D reconstruction is required for quality control, such

    as atness inspection[25]. The laser source is located at the centerof the roll path making the laser plane perpendicular to the plane

    on which the strip lies. The camera is located at 451with respect to

    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 reconstruc-

    tion 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 parti-

    cular application.

    5. Conclusion

    Vibrations are a major issue for laser-based 3D reconstruction

    methods. The movement of the object caused by vibrations affects

    3D reconstruction and leads to large errors. The proposed proce-

    dure in this work is to use multiple laser stripes and estimate and

    remove vibrations from 3D reconstruction. First, vibrations aremodeled based on geometrical transformations. In particular,

    using translations and rotations, the most common types of

    vibrations. Then, a mathematical procedure to estimate vibrations

    from data is developed. Using two laser stripes, only translations

    can be estimated. Using three laser stripes, both the translations

    and the rotations can be estimated. Using more than three laser

    stripes produces an overdetermined system that delivers a more

    Fig. 8. Error maps with vibrations consisting in sinusoidal translations and

    rotations. (a) Using two laser stripes. (b) Using three laser stripes.

    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.

    2 4 6 8 10 12 14 160

    0.2

    0.4

    0.6

    0.8

    Number of stripes

    E

    rror

    Fig. 9. Error when using multiple laser stripes with noisy data.

    R. Usamentiaga et al. / Optics and Lasers in Engineering 53 (2014) 515958

  • 7/21/2019 articol science

    9/9

    robust solution. Multiple tests have been carried out to evaluate

    the performance of the proposed procedure with synthetic and

    real data.

    Experimental results show excellent performance for the pro-

    posed procedure. Using three or more laser stripes completely

    removes vibrations from the 3D reconstruction. When only two

    laser stripes are used, very low error appears in the results,

    negligible for most applications. Furthermore, when tests are

    carried out using noisy data, a laser-based 3D reconstructionsystem with only two stripes clearly outperforms systems with

    more stripes, unless many stripes are used. The reason is that

    adding noise can provoke an incorrect estimation of vibrations

    that can nally result in outliers in the reconstruction of the shape.

    A laser projector can signicantly increase the cost of a 3D

    reconstruction system. Also, using more than two laser stripes is

    only a marginal advantage in some cases. When noise is present in

    data, more than two laser stripes is a clear disadvantage, as was

    demonstrated in the tests. Therefore, unless there are very specic

    requirements, a system with only two stripes is recommended. A

    laser-based 3D reconstruction method with two laser stripes

    presents a far more cost efcient solution than others with similar

    or even better performance.

    Final tests on real data with two laser stripes indicate that the

    obtained 3D reconstruction after applying the proposed procedure

    is comparable to manual measurements, effectively removing the

    unwanted effects of vibrations on the estimated shape.

    Acknowledgments

    This work has been partially funded by the Project TIN2001-

    24903 of the Spanish National Plan for Research, Development and

    Innovation.

    References

    [1] Szeliski R. Computer vision: algorithms and applications. Springer; 2010.

    [2] Frauel Y, Tajahuerce E, Matoba O, Castro A, Javidi B. Comparison of passiveranging integral imaging and active imaging digital holography for three-dimensional object recognition. Appl Opt 2004;43(2):45262.

    [3] Tombari F, Mattoccia S, Di Stefano L, Addimanda E. Classication and evalua-tion of cost aggregation methods for stereo correspondence. In: IEEE con-ference on computer vision and pattern recognition, 2008. CVPR 2008. IEEE;2008. p. 18.

    [4] Ballan L, Cortelazzo GM. Multimodal 3D shape recovery from texture, silhou-ette and shadow information. In: Proceedings of the third internationalsymposium on 3D data processing, visualization, and transmission(3DPVT'06), 2006. p. 92430.

    [5] Salvi J, Pags J, Batlle J. Pattern codication strategies in structured light

    systems. Pattern Recognition 2004;37(4):82749.[6] Forest J, Salvi J. A review of laser scanning three-dimensional digitisers. In:

    IEEE/RSJ international conference on intelligent robots and system, vol. 1,

    2002.[7] Hongjian Y, Shiqiang Z. 3d building reconstruction from aerial CCD image and

    sparse laser sample data. Opt Lasers Eng 2006;44(6):55566.[8] Yu S-J, Sukumar SR, Koschan AF, Page DL, Abidi MA. 3d reconstruction of road

    surfaces using an integrated multi-sensory approach. Opt Lasers Eng 2007;45

    (7):80818.

    [9] Molleda J, Usamentiaga R, Garcia DF, Bulnes FG, Ema L. Shape measurement ofsteel strips using a laser-based three-dimensional reconstruction technique.

    IEEE Trans Ind Appl 2011;47(4):153644.[10] Liu Z, Sun J, Wang H, Zhang G. Simple and fast rail wear measurement method

    based on structured light. Opt Lasers Eng 2011;49(11):134351.[11] Fernandez A, Garcia R, Alvarez E, Campos AM, Garcia D, Usamentiaga R, et al.

    Low cost system for weld tracking based on articial vision. IEEE Trans Ind

    Appl 2011;47(3):115967.[12] Isheil A, Gonnet JP, Joannic D, Fontaine JF. Systematic error correction of a 3d

    laser scanning measurement device. Opt Lasers Eng 2011;49(1):1624.[13] Forest J, Salvi J, Cabruja E, Pous C. Laser stripe peak detector for 3d scanners. a

    FIR lter approach. In: Proceedings of the 17th international conference on

    pattern recognition. ICPR 2004, vol. 3. IEEE; 2004. p. 6469.[14] Schnee J, Futterlieb J. Laser line segmentation with dynamic line models. In:

    Computer analysis of images and patterns. Springer; 2011. p. 12634.[15] Usamentiaga R, Molleda J, Garcia DF. Fast and robust laser stripe extraction for

    3D reconstruction in industrial environments. Mach Vision Appl 2012;23:

    17996.

    [16] Molleda J, Usamentiaga R, Garcia D, Bulnes FG, Espina A, Dieye B, et al. Animproved 3D imaging system for dimensional quality inspection of rolled

    products in the metal industry. Comput Ind, http://dx.doi.org/10.1016/j.com

    pind.2013.05.002 , in press.[17] Pernkopf F. 3d surface acquisition and reconstruction for inspection of raw

    steel products. Comput Ind 2005;56(8):87685.[18] Usamentiaga R, Garcia DF, Molleda J, Bulnes FG, Peregrina S. Vibrations in steel

    strips: effects on atness measurement and ltering. In: 43st IAS annual

    meeting. Conference record of the 2013 IEEE industry applications conference,

    vol. 1. IEEE; 2013. p. 110.[19] Doignon C, Knittel D. A structured light vision system for out-of-plane

    vibration frequencies location of a moving web. Mach Vision Appl 2005;16

    (5):28997.[20] Maurice X, Doignon C, Knittel D. On-line vibrations characterization of a

    moving exible web with a fast structured lighting stereovision system. In:

    IEEE Instrumentation and Measurement Technology Conference Proceedings,

    2007. IMTC 2007. IEEE; 2007. p. 15.[21] Bell JR, Rothberg S. Rotational vibration measurements using laser doppler

    vibrometry: comprehensive theory and practical application. J Sound Vib2000;238(4):67390.[22] Castellini P, Martarelli M, Tomasini E. Laser doppler vibrometry: development

    of advanced solutions answering to technology's needs. Mech Syst Signal

    Process 2006;20(6):126585.[23] Bjorck A. Numerical methods for least squares problems. Soc Ind Appl Math

    1996;51.[24] Lawson CL, Hanson RJ. Solving least squares problems, vol. 161. SIAM; 1974 .[25] Molleda J, Usamentiaga R, Garcia D, Bulnes F. Real-time atness inspection of

    rolled products based on optical laser triangulation and three-dimensional

    surface reconstruction. J Electron Imaging 2010;19:031206.

    R. Usamentiaga et al. / Optics and Lasers in Engineering 53 (2014) 5159 59

    http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref1http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref1http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0015http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0015http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0015http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref7http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref7http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref7http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref7http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref7http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref10http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref10http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref10http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref10http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref10http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref12http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref12http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref12http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref12http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref12http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0025http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0025http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0025http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0025http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0030http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0030http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0030http://dx.doi.org/10.1016/j.compind.2013.05.002http://dx.doi.org/10.1016/j.compind.2013.05.002http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref17http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref17http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref17http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref17http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref17http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref23http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref23http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref23http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref24http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref24http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref25http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref24http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref23http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref23http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref22http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref21http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0040http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref19http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0035http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref17http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref17http://dx.doi.org/10.1016/j.compind.2013.05.002http://dx.doi.org/10.1016/j.compind.2013.05.002http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0030http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0030http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0030http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref15http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0025http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0025http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0020http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref12http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref12http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref11http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref10http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref10http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref9http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref8http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref7http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref7http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0015http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0015http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0015http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref5http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0010http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/othref0005http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref2http://refhub.elsevier.com/S0143-8166(13)00244-3/sbref1