Open access peer-reviewed chapter

4WD Robot Posture Estimation by Radial Multi-View Visual Odometry

By Edgar Alonso Martínez-García and Luz Abril Torres-Méndez

Submitted: February 5th 2018Reviewed: May 26th 2018Published: November 5th 2018

DOI: 10.5772/intechopen.79130

Downloaded: 78

Abstract

This chapter presents a four-wheel robot’s trajectory tracking model by an extended Kalman filter (EKF) estimator for visual odometry using a divergent trinocular visual sensor. The trinocular sensor is homemade and a specific observer model was developed to measure 3D key-points by combining multi-view cameras. The observer approaches a geometric model and the key-points are used as references for estimating the robot’s displacement. The robot’s displacement is estimated by triangulation of multiple pairs of environmental 3D key-points. The four-wheel drive (4WD) robot’s inverse/direct kinematic control law is combined with the visual observer, the visual odometry model, and the EKF. The robot’s control law is used to produce experimental locomotion statistical variances and is used as a prediction model in the EKF. The proposed dead-reckoning approach models the four asynchronous drives and the four damping suspensions. This chapter presents the deductions of models, formulations and their validation, as well as the experimental results on posture state estimation comparing the four-wheel dead-reckoning model, the visual observer, and the EKF with an external global positioning reference.

Keywords

  • 4WD
  • visual odometry
  • trinocular sensor
  • EKF
  • visual observer
  • trajectory estimation

1. Introduction

Autonomous robots obtain precise information about their surroundings by deploying their sensing devices and developing perceptual tasks to accomplish useful missions. Intelligent robots require to concurrently execute multiple functions such as path planning, collision avoidance, self-localization, tasks scheduling, trajectory control, map building, environment recognition, kinematic/dynamic control, and so forth. Autonomous robots depend on multisensor fusion, which is the process of combining data from the physical sensors into a homogeneous data space.

This chapter presents robot’s visual odometry using sensor data obtained from a homemade radial multi-view device (Figure 1a). For this case, trinocular sensing is divergent; hence, an inherent problem refers to different perspectives in each camera. Besides, the partial overlap between adjacent cameras allows sharing approximately 25%of the total sensing angles, which is too reduced and limits extracting numerous relevant features for data fusion affecting to infer consistent information. Besides perspective, radial cameras yield differences of scale, skew, rotation, and lighting intensities. To cope with this problem, this chapter deduces a geometric trinocular sensor model to directly measure 3D data by combining divergent pairs, the central camera with one of the two lateral cameras (Figure 1b). The robot’s state vector (posture) is recursively estimated by a visual odometry model that triangulates multiple pairs of key-points. Thus, an EKF uses the 3D odometry model and estimates the robot’s position. The mobile robot is a four-wheel drive (4WD) modeled by a differential control law involving the four passive damping suspensions to infer accurate positions.

Figure 1.

Robot’s trinocular sensor. (a) Trinocular sensor onboard. (b) Camera’s geometric divergence (top view).

Parallel trinocular stereo systems had been deployed either to detect the ground [1], or to estimate motion [2]. There are reported works on motion estimation with binocular divergent systems [3], trinocular divergence for visual odometry [4], and divergent visual simultaneous localization and mapping (SLAM) [5]. As a difference from the active sensing modalities for localization [6], and concurrent localization and mapping with parallel multi-view [7], this chapter intends to estimate the posture of a rolling vehicle by exploiting feedback of the rich data fusion that a divergent trinocular sensor provides. Numerous visual odometry algorithms had been reported, using stereo cameras [8], matching multi-frame features [9] and 3D point cloud [10]. Some outdoor visual odometry approaches for urban [11] environments estimate motion tracking by extraction of visual feature points. There are numerous works combining the benefits of visual SLAM algorithms [12, 13, 14] with visual odometry [15], detecting geometrical features [16].

This chapter is organized into to the following sections. Section 2 deduces the sensor fusion observer modeling the trinocular system geometry. Section 3 models the 4WD direct/inverse kinematic solutions. Section 4 deduces the visual odometry formulation and EKF-based control state and estimation. Finally, conclusions are provided in Section 5.

2. Trinocular sensing model

This section describes the divergent multi-view geometric model, which basically combines the data of a pair of cameras radially arranged. In addition, this section presents an algebraic analysis of the lateral cameras’ alignment and correction w.r.t. the central camera. The fundamental geometrical relationship of the system divergence was experimentally studied by deploying a homemade prototype onboard a mobile robot, see Figure 2a. Cameras with homogeneous intrinsic parameters are assumed, and cameras are mechanically fixed epipolar. The sensor model’s purpose is to determine the depth information of a point in the scene p=xyz, which is projected onto the overlapping area of a divergent pair. The proposed multi-view geometric model combines data using the central camera as the reference (Figure 1b). The focal plane in cameras A,Care perspective transformed, in order to align them epipolar and coplanar w.r.t. the central reference B. As seen in Figure 1b, a point pis projected over two focal planes, for instance, at column xCof lateral camera C, and at xBof camera B. Thus, an isosceles triangle PBCis formed. For the triangle OBC, let βbe the angle between the cameras’ centers Band C, as deployed by expression (1). Let ϕ/2be the remaining angle of OBC, where the inner angles’ total sum is π. By expressing β+ϕ=πand dropping off ϕ=πβ, we easily deduce that ϕ2=π2β2. The geometrical distance BC¯is calculated by triangulation using the law of sines, with known distance lthat converges to O. The linear distance between adjacent sensors BCcommonly oriented w.r.t. the center Ois

BC¯=lsinβsinπ2β2.E1

Figure 2.

4WD kinematics. (a) Deployed robot. (b) Damping system. (c) Robot’s view from below.

To calculate the Cartesian coordinates of p, let us state that the point pis projected through the horizontal coordinate xB, and on camera Bangle’s θB, and focal distance fBas expressed by

θB=tan1xBfBandθC=tan1xCfC.E2

The complementary angles Band Care modeled by

B=π2θB+β2andC=π2θC+β2.E3

In the triangle BCO, the angle at point pis obtained by equivalence of similar triangles P=θB+θCβ. Thus, to estimate the range of the radial system Band Cw.r.t. p, the linear distance is calculated by the law of sines:

BC¯sinP=CP¯sinBandCP¯=BC¯sinBsinP.E4

Thus, for the other cameras’ pair, similar expressions are stated

BC¯sinP=BP¯sinCandBP¯=BC¯sinCsinP.E5

Hence, the model to express depth information is given by zB=BP¯cosθB. By substituting BP¯and θB, the model is further specified by

Λ1=lsinβsinπβ2sinθBθCβ,

where,

zB=Λ1sinπ+β2θCcostan1xBfB.E6

In addition, the range between camera Cand pis defined by zC=Cp¯cosθC. Thus, substituting Cp¯and θC, we define

zC=Λ1sinπ+β2θBcostan1xCfC.E7

Using the depth models zBand zC, the distances dBand dCw.r.t. pare estimated, such that dB=zBtanθB. Hence,

dB=zBtantan1xBfBordB=zBxBfBE8

and being dC=zCtanθC, by substituting θC from expression (2) we have

dC=zCtantan1xCfCordC=zCxCfC.E9

Furthermore, the algebraic deduction along the Ycomponent for the equalities hBfB=zByBand hCfC=zCyC, w.r.t pusing distances hBand hC, is obtained by

hB=zByBfBandhC=zCyCfC,

thus the following term is stated as

Ψ=1fBlsinβsinπ2β2costan1xBfB.

Therefore, the geometry vector model for camera Bw.r.t. camera C, with substitution of the terms Ψ, zB, and zCin robot’s inertial frame R, produce the next expression:

pBCR=Ψsinπ+β2θCsinθB+θCβxByBfBE10

and the same model is enhanced for camera B, using the geometry of cameras Aand Bby

pABR=Ψsinπ+β2θAsinθA+θBβxByBfB.E11

Hence, the arbitrary point pABC3is projected onto cameras AB, or onto cameras BC. In order to express a general formula, let us define the following theorem.

Theorem 1 (Trinocular depth model). Let camera Bbe the reference for either divergent camera Aor C. A point coordinates w.r.t. camera Ais pAB=xAyAzΤ, and w.r.t. camera Cis pAC=xCyCzΤ. Hence, the general depth coordinate model for xand yfor any divergent pair is

x,yA,C=ΨxBsinπ+β2θA,CsinθA,C+θBβ,E12
for coordinate z,

zA,C=ΨfB2sinπ+β2θA,CsinθA,C+θBβ.E13

The four points shown by the three cameras may illustrate their transformation, experimentally developed at 1-m distance between the robot and the marks.

3. 4WD dead-reckoning controller

Since the visual trinocular approach uses an exteroceptive sensor, we decided to challenge its detection and tracking capabilities with a robot having high holonomic properties. A 4WD robot’s locomotion is prone to experience frequent swift turns resulting in numerous slippages. Thus, a 4WD has to depend more on exteroceptive rather than inner measurements. Comparatively, inner 4WD odometry differs greatly from external visual measurement to infer posture. The proposed dead-reckoning system obtains speed measurements by deploying odometer readings of the four asynchronous drives (Figure 2). A 4WD system is considerably different from a conventional differential dual approach. Moreover, four passive mass-spring-damper suspensions are included in this system (Figure 2b), which varies the inter-wheel distances over time. Particularly, the robot’s 4WD and passive suspensions make the posture observations challenging.

The robot’s dead-reckoning model is fundamental to sense and control position used as feedback, providing motion description as a kinematic reference to match the visual observations when estimating the robot’s motion. The positioning and trajectory control [17], as well as the type of kinematic analysis [18] and the dynamic suspension [19] in this type of robot have been previously reported. The robot’s instantaneous speed vt(m/s) and yaw rate ωt(rad/s) depend on the four wheels’ asynchronous rolling motion, φ̇1,φ̇2,φ̇3,φ̇4. For a wheel’s encoder, the velocity model approaches measurements by high-precision numerical derivatives (central divided differences) of the rotary angle φt(rad) w.r.t. time t, such that

φ̇t=π6Rtηt+2+7ηt+1+7φt1ηt2,E14

where the wheel’s angular speed φ̇is measured through pulse detection η(dimensionless) of encoder’s resolution R(pulses/rev); thus, the robot’s instantaneous velocity is modeled by the averaged wheel speed, with wheels of nominal radius r(m)

vt=r4i=14φ̇i.E15

Further, the differential velocity v̂texpresses the lateral speeds’ difference that yields ωt. Thus, v̂tis formulated by the expression

v̂t=rφ̇1+φ̇2φ̇3φ̇4.E16

This model describes that the rotary motion of φ̇1and φ̇2contributes to robot’s +ωt(counterclockwise sense). Likewise, φ̇3and φ̇4contribute to robot’s ωt(clockwise sense). Therefore, ωtis yielded by the lateral speed component v̂tcosαi(see Figure 2b) modeled by

ωt=v̂coscosαili.E17

The previous equation expresses the conservation of angular motion, and the wheel’s contact point turns w.r.t. the robot’s center,

cosαi=W2li,E18

where for each length lithere is an asynchronous model,

l1=W2+L1+L4222,l2=W2+L2+L3222,

as well as

l3=W2+L3+L2222,l4=W2+L4+L1222.

Thus, substituting cosαiand liinto ωtand by considering both clockwise and counterclockwise motions, the robot’s angular speed is

ωt=i=12rWφ̇ili2i=34rWφ̇ili2.E19

The longitudinal contact point’s distance li(m) takes as reference the robot’s geometric center. When livaries, the contact point’s position Lichanges.

Li=dcosarcsinγi,E20

where γirepresents the vertical motion along the suspension,

γi=arcsinΔyd1.E21

From Figure 2a, the vertical motion ydis modeled assuming critical damping motion for a general spring-mass-damper system. The suspension is modeled by the following second-order homogeneous differential equation:

my¨d+κ2ẏd+κ1yd=0,E22

where the elastic spring restitution coefficient is κ1(kg/s2). The damping coefficient is κ2(kg/s). The restitution force my¨dcounteracts the vertical oscillatory damping effects. The oscillatory velocity and acceleration are denoted by ẏdand y¨d, respectively. Thus, solving the second-order differential equation as a first-order equation such that κ2ẏd=κ1yd,

yddydyd=κ1κ2tdt,E23

hence

lnyd=κ1κ2t+c,ζ=κ1κ2,E24

with integration constant c=0for analysis purpose. The suspension’s elongation derivatives as functions of time are

yd=eζt,ẏd=ζeζt,y¨d=ζ2eζt.E25

Substituting the previous expression in (22),

mζ2eζt+κ2ζeζt+κ1eζt=0,E26

and by algebraically simplifying, the characteristic equation is

ζ2+κ2mζ+κ1m=0,E27

and its analytic solution is

ζ1,2=κ22m±κ1m24κ1m22.E28

As we assume a critically damped system, κ2m2=4κ1mand there is only one real root solution, such that

ζ=κ22m.E29

Therefore, the damping motion is analytically solved by

ydt=Aeζt,E30

where A(m) is the elongation amplitude (m) parameter for the suspension system. Moreover, in this type of robotic platform, the four asynchronous drives simultaneously produce slip/skid motions that are advantageously used to maneuver the robot. This approach proposes inferring the instantaneous Z-turn axis location xRyR. The Z-turn axis is movable in the square region bounded by the wheels’ contact point. The Z-turn axis is expressed by the first-order derivatives

ẋR=rW4vmaxφ¨1φ¨2φ¨3+φ¨4E31

and

ẏR=rL4vmaxφ¨1φ¨2+φ¨3+φ¨4.E32

There is a maximal allowable Z-turn displacement speed vmax. Hereafter, with four independent equations, the control positioning system is instantaneously computed. The robot control vector is u̇R=v̇tω̇tẋRẏR, and the control transition matrix Λthas the elements λ1=r/4, λ2i=rW/li2, λ3=rW/4vmax, and λ4=rL/4vmax. Thus, the forward kinematics solution is u̇R=ΛtΩ̇or

v̇tω̇tẋRẏR=λ1λ1λ1λ1λ21λ22λ23λ24λ3λ3λ3λ3λ4λ4λ4λ4φ¨1φ¨2φ¨3φ¨4.E33

In addition, to inversely solve this matrix system, the analytical solution represents the vector of independent control rotary variables Ω̇t=φ¨1φ¨2φ¨3φ¨4. Thus, let us define λw=λ1λ3λ4, λA=λ23λ24, λB=λ22λ21, λC=λ21λ23, λD=λ24λ22, λE=λ21+λ24, and λF=λ22λ23.

φ¨1=λ3λ4λDv̇+2λwω̇λ1λ4λAẋR+λ1λ3λFẏR2λwλ21λ22λ23+λ24,E34
φ¨2=λ3λ4λCv̇2λwω̇+λ1λ4λAẋRλ1λ3λEẏR2λwλ21λ22λ23+λ24,E35
φ¨3=λ3λ4λDv̇+2λwω̇+λ1λ4λBẋR+λ1λ3λEẏR2λwλ21λ22λ23+λ24E36

and

φ¨4=λ3λ4λCv̇2λwω̇λ1λ4λBẋRλ1λ3λFẏR2λwλ21λ22λ23+λ24.E37

The matrix form of the inverse analytical solution for all wheels’ speed under damping variations is stated as Ω̇=Λt1u̇tor

Ω̇t=λ3λ4λD2λwλG2λw2λwλGλ1λ4λA2λwλGλ1λ3λF2λwλGλ3λ4λC2λwλG2λw2λwλGλ1λ4λA2λwλGλ1λ3λE2λwλGλ3λ4λD2λwλG2λw2λwλGλ1λ4λB2λwλGλ1λ3λE2λwλGλ3λ4λC2λwλG2λw2λwλGλ1λ4λB2λwλGλ1λ3λF2λwλGv̇tω̇tẋRẏR,E38

where λG=λ21λ22λ23+λ24.

4. State estimation and feedback position control

This section formulates a deterministic geometric model for visual odometry and the state estimation by an EKF. The proposed model combines pairs of key-points at times tand t1. The robot’s displacements are deduced by inverse geometric triangulations to feed forward an EKF and estimate the robot’s posture.

In Figure 3a, the instantaneous angle αt1is formed by a pair of key-points defined by

αt1=θt1a+θt1bE39

and such key-points’ distance ct1is defined by

ct1=δt1a2+δt1b22δt1aδt1bcosαt1.E40

Figure 3.

Robot’s visual odometry. (a) Robot’s key-point pair observed at t−1. (b) Same pair observed at t. (c) Robot’s displacement Δs by triangulation of key-points pa.

The angle βt1a,bof either key-point aor bis calculated by the law of sines,

βt1a,b=arcsinδt1b,asinαt1ct1.E41

However, at time tin Figure 3b, the instantaneous angle αtis obtained by

αt=θta+θtb,E42

with the key-point’s distance ctas

ct=δta2+δtb22δtaδtbcosαt,E43

which is used to obtain the angle βta,bof the key-point aor bat actual time

βta,b=arcsinδtb,asinαtct.E44

Further, the differential angle β̂is defined by triangulation of previous and actual poses and an arbitrary 3D point pa,b(Figure 3c),

β̂=βt1a,bβta,b.E45

Proposition 1 (Triangulation odometric displacement). The robot’s displacement Δs(Figure 3c) that is inferred by triangulation of visual key-points over time is

Δs=δt1a+δta2δt1aδtacosβ̂.E46

The triangulation angle λis calculated by the law of sines,

λa,b=arcsinδta,bsinβ̂Δsa,bE47

and the orientation angle for each reference ais

ϕa,b=λa,b+π2θt1a,b,E48

which is required to know the Xdisplacement

Δx=Δsa,bcosϕa,b,E49

as well as the Ydisplacement

Δy=Δsasinϕa.E50

When obtaining numerous key-point pairs simultaneously, the total robot’s displacement is an averaged value of the displacements yielded by all key-point pairs,

Δxt=i=1nΔxinandΔyt=i=1nΔyin.E51

Therefore, without loss of generality, for state estimation, let us assume a nonlinear robot’s model state vector

xk=fxk1ukwk,E52

where the state vector is x=xyθvω, and combined with a nonstationary state transition matrix At, such that xk=Atxk1or

xk=100cosθΔt0010sinθΔt00010Δt0001000001xyθvω,E53

by developing the dot product from previous expression, we obtain

xk=xk1+vcosθΔtxk1+vsinθΔtθk1+ωΔtvω.E54

The measurement model requires the displacements that were inferred through key-point triangulation

zk=hxkvk,E55

where wkand vkare the process and measurement noise models, respectively. These are statistically independent and supposed to have a Gauss distribution with zero average value and known variance. To approximate the nonlinear robot’s measurement model, a linearized first-order approximation by the expansion of the Taylor series is used, and a linear approximation of a function is built, with slope obtained through partial derivatives by

futxt1=futxt1xt1.E56

Thus, the linearized models of the process and measurement are defined next in (54) and (55), such that

fx=fx̂+fx̂=Jxx̂E57

and

hx=hx̂+hx̂=Hxx̂.E58

In addition, the EKF’s prediction models (56) and the correction models (57) are formulated and linearized as

x̂k=fxk1uk10E59

and

Pk=AkPk1Ak+WkQk1Wk.E60

Moreover, the recursive Kalman gain for system convergence is

Kk=PkHkHkPkHk+VkRkVk1E61

and the state vector of the system is described by

x̂k=x̂k+KkzkHx¯k,E62

with covariance matrix of the system

Pk=IKkHkPk.E63

Thus, hereafter, the vector and matrix models describing the proposed robot’s system are formulated and incorporated into the conventional EKF. Let us define the robot’s pose vector x=xtytθt. The control vector is comprised of the robot’s absolute and angular speeds, uk=υω. Furthermore, the observation vector with sensor measurement zk=XpYpZp. Eventually, the process noise vector wk=wxwywθ. The measurement noise vector vk=vXpvYpvZp.

Therefore, from the displacement equation (46), which arises from exteroceptive observations, the robot’s Cartesian displacements are

Δx=Δscosθk1+λ+π2θt1aE64

and

Δy=Δssinθk1+λ+π2θt1a,E65

as well as Δθis given by

Δθ=λ+π2θt1a.E66

By substituting an averaged Cartesian displacement, one considers nkey-point observations to calculate the recursive noisy state vector xk.The Jacobian matrix Jkof the robot’s temporal matrix state transition Akxk, where xk=xk1+vcosθΔt, yk=yk1+vcosθΔt, and θk=θk1+ωΔtis stated by

J=Akxkxk1=xxxyxθxvxωyxyyyθyvyωθxθyθθθvθωvxvyvθvvvωωxωyωθωvωω=10vsinθΔtcosθΔt001vcosθΔtsinθΔt00010t0001000001.E67

Thus, a measurement is a 3D point arising from either divergent pair Eq. (10) or (11) and deployed by Proposition 1.1. Thus, the robot’s measurement vector model zincludes noise measurements. The Jacobian matrix Hof the expected state model w.r.t. measurements is defined by

H=hx==∂Δxxk1∂Δxyk1∂Δxθk1∂Δyxk1∂Δyyk1∂Δyθk1∂Δθxk1∂Δθyk1∂Δθθk1.E68

The process noise covariance matrix Qkis defined by

Qk=̇2πΣ1/2exp0.5zμΣ1zμ.E69

Let us define the nonstationary covariance matrix P,

P=σx2000σy2000σθ2,E70

the matrix diagonal variances are experimental measurements that describe the trend of the robot motion’s error.

The robot’s motion covariance matrix was obtained experimentally through 500 tests—straight motion, right turns, left turns, clockwise and counterclockwise rotations, with N=100tests for each type of motion. Exteroceptive sensing devices onboard are tied to the robot’s geometry of motion, and with their observations the robot’s posture can be estimated and therefore matched with the robot’s deterministic kinematic model. From Section 3, the inverse (38) and direct (33) models were used experimentally to obtain the following statistical covariance about the measurement model

σx2=1Ni=1Ntλ1λ1λ1λ1Ω̇dtcostrWl12rWl22rWl32rWl42Ω̇dtx¯2E71

and

σy2=1Ni=1Ntλ1λ1λ1λ1Ω̇dtsintrWl12rWl22rWl32rWl42Ω̇dty¯2,E72

as well as the robot’s yaw statistical measurement model

σθ2=1Ni=1NtrWl12rWl22rWl32rWl42Ω̇dtθ¯2.E73

Furthermore, the measurement noise covariance matrix is

Rk=σxp2000000σyp2000000σyp2000,E74

and the matrix Wkwhich is the partial derivative of the process model w.r.t. the process noise vector is

Wk=fwk=xkwxxkwyxkwθykwxykwyykwθθkwxθkwyθkwθ..E75

The matrix Vk=h/vkis the partial derivative w.r.t. the measurement noise vector,

Vk=xkvXpxkvYpxkvZpykvXpykvYpykvZp.E76

Let us summarize the 3D points pABand pBCobtained by Theorem 1.

4.1. State feedback position control

This section describes in six general steps the combined use of the visual observers and the EKF geometric odometer as a recursive feedback for the robot’s positioning control. The robot’s deterministic kinematic model conveys predictions about the robot’s geometry of motion and its observations. Therefore, the deterministic model is used to infer the robot’s motion observations implicitly by the trinocular sensor. The following formulation illustrates how the EKF and the visual odometry model are fed back for the 4WD kinematics.

4.1.1. Kalman gain

The initial estimate of Kalman gain is

kk=PkHkHkPkHkT+VkRxVkT1E77

4.1.2. Observation

From Proposition 1.1, the visual observers provide m3D key-points from Theorem 1, pAB,BC

Δsp=pt1+pt2pt1ptcosβt1βt2

The angle of each key-point por qw.r.t. to the robot in actual time is

λt=arcsinptsinβ̂Δs,

and the local angle of the robot w.r.t. the robot’s previous position is

ϕ=λt+π2θt1,

thus the inferred displacement is

xk=1m+niΔsiapcosϕia1m+niΔsiapsinϕiaλ+π2θt1a.E78

Therefore, the observation vector with Gauss noise wis

zk=Hxk+wxwywθ.E79

4.1.3. Update estimate

The update estimate is obtained by

x̂k=x̂k1+KkzkHxk1.E80

4.1.4. Update error covariance

The covariance matrix error dispersion of the system is updated

P̂k=PkKkHkPk.E81

4.1.5. Deterministic control model

Therefore, the prediction is firstly obtained through the robot’s inverse position control model, from the inverse kinematics equation, Eq. (38)

Ωt+1=Ωt+Λt1uRrefx̂k,

where, in the previous expression, uR=sθxRyR. Thus, Ω̂t=2πRΔη12πRΔη22πRΔη32πRΔη4is the vector of the wheels’ instantaneous measurements

ut+1=utΛt1Ωt+1Ω̂t.

This step converges until uRrefût<εu, where εuis the convergence error. Then, the robot’s prediction model is

x¯k=x¯k1+But+1

Bbeing a control transition matrix.

4.1.6. State prediction

It follows that state prediction is

x¯k+1=Φk+x¯k+qkE82

and the error dispersion covariance matrix is also predicted at t+1

Pk+1=Pk+A+APkΔt+APkAΣWΔt2E83

From the previous step, the estimation process repeats again, going to step one. The previous Kalman process is performed until the robot reaches the goal and the estimation error converges by numerical approximation according to xkx̂kεx.

Therefore, Figure 4a shows the robot’s trajectory obtained by the different comparative approaches conducted in this study. The postures measured by an external visual global reference system are the main references to be compared with. The EKF estimation was obtained by the use of Theorem 1, Proposition 1.1, and Eqs. (71)–(77). In addition, the trinocular key-points used as inputs of the visual odometry model inferred the robot’s displacements, which are shown in same Figure 4a. Furthermore, the dead-reckoning robot system was deployed to infer the robot’s postures and is also shown in Figure 4a. Raw odometry refers to the robot’s dead-reckoning kinematic model used as a mean for direct posture observation through direct kinematics (33) and inverse kinematics (38), but using direct encoder readings by (14).

Figure 4.

Positions and errors. (a) Cartesian positions. (b) Errors vs. global reference. (c) EKF’s Cartesian errors’ convergence. (d) EKF’s angle error convergence.

Figure 4b shows the dead-reckoning and the EKF Cartesian absolute errors, taken as main reference for the visual global reference system. As for the direct dead-reckoning measurements, the absolute error grows exponentially, where the position observation starts diverging before the robot reaches the third turn. As for the EKF model, the Cartesian error w.r.t. the global reference does not diverge but preserves bounded error magnitudes.

As for Figure 4c and d, the EKF’s Cartesian and angular absolute errors w.r.t. the global visual tracker are shown. In Figure 4d, the local minimums and maximums determine the Cartesian regions where the robot performed its turns.

Finally, Figure 5a shows the covariance error behavior obtained at each control loop during the EKF recursive calculations. Figure 5b is a mapping of the measured key-points registered using the state vector (posture) of a robot’s turn to illustrate the map’s divergence.

Figure 5.

Errors’ convergence behavior. (a) EKF variances over time. (b) Key-point map’s divergence using state vectors.

5. Conclusion

This chapter presented a visual odometry scheme for a trinocular divergent visual system that was combined with an EKF for visual odometry estimation. The proposed trinocular geometric model observer geometrically combined adjacent radial views. About 20%of adjacent multi-view overlapping data allowed inference of small volumes of depth information. In measuring 3D key-points, the X-axis metrical error was reported to be lower than 7 cm, with error less than 10 cm in +Ycomponent and less than 3 cm in Y(vertical). Likewise, we found an averaged Z-axis error less than 5 cm (depth). Such errors were mostly produced by the angular divergence of the object w.r.t. the central camera, rather than linear distances. Indoor experiments, measuring distances up to 10 m were developed. In addition, a set of experimental results in convergent robot’s course gave closed loops, and as the robot moved, the trinocular sensor incrementally stored environmental 3D key-points.

The robot’s trajectory was obtained by different comparative approaches conducted in this study. The postures were measured by an external visual global reference system, which was the main reference system to be compared with. The robotic platform’s kinematics was modeled in terms of a dead-reckoning approach. The direct and the inverse solutions were combined to produce a recursive linearized control model and this was used as the prediction model for EKF estimator. The dead-reckoning robot system was deployed to infer the robot’s postures using directly the four encoders’ readings, with good results obtained only for very short paths. As a comparative perspective, using only the 4WD dead-reckoning system the posture exponentially diverged.

We found bounded Cartesian error for this 4WD robot by deploying the EKF. The trinocular 3D key-points were used as inputs of the visual odometry model that inferred the robot’s displacements by geometrical triangulations.

How to cite and reference

Link to this chapter Copy to clipboard

Cite this chapter Copy to clipboard

Edgar Alonso Martínez-García and Luz Abril Torres-Méndez (November 5th 2018). 4WD Robot Posture Estimation by Radial Multi-View Visual Odometry, Applications of Mobile Robots, Efren Gorrostieta Hurtado, IntechOpen, DOI: 10.5772/intechopen.79130. Available from:

chapter statistics

78total chapter downloads

More statistics for editors and authors

Login to your personal dashboard for more detailed statistics on your publications.

Access personal reporting

Related Content

This Book

Next chapter

IntelliSoC: A System Level Design and Conception of a System- on-a-Chip (SoC) to Cognitive Agents Architecture

By Diego Ferreira, Augusto Loureiro da Costa and Wagner Luiz Alves De Oliveira

Related Book

First chapter

Kinematic Performance Measures and Optimization of Parallel Kinematics Manipulators: A Brief Review

By Abdur Rosyid, Bashar El-Khasawneh and Anas Alazzam

We are IntechOpen, the world's leading publisher of Open Access books. Built by scientists, for scientists. Our readership spans scientists, professors, researchers, librarians, and students, as well as business professionals. We share our knowledge and peer-reveiwed research papers with libraries, scientific and engineering societies, and also work with corporate R&D departments and government entities.

More about us