^{*}

This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

The possibility to identify with significant accuracy the position of a vehicle in a mapping reference frame for driving directions and best-route analysis is a topic which is attracting a lot of interest from the research and development sector. To reach the objective of accurate vehicle positioning and integrate response events, it is necessary to estimate position, orientation and velocity of the system with high measurement rates. In this work we test a system which uses low-cost sensors, based on Micro Electro-Mechanical Systems (MEMS) technology, coupled with information derived from a video camera placed on a two-wheel motor vehicle (scooter). In comparison to a four-wheel vehicle; the dynamics of a two-wheel vehicle feature a higher level of complexity given that more degrees of freedom must be taken into account. For example a motorcycle can twist sideways; thus generating a roll angle. A slight pitch angle has to be considered as well; since wheel suspensions have a higher degree of motion compared to four-wheel motor vehicles. In this paper we present a method for the accurate reconstruction of the trajectory of a “Vespa” scooter; which can be used as alternative to the “classical” approach based on GPS/INS sensor integration. Position and orientation of the scooter are obtained by integrating MEMS-based orientation sensor data with digital images through a cascade of a Kalman filter and a Bayesian particle filter.

The development of electronic systems for determining the position and orientation of moving objects in real-time has been a critical research topic for the last decade. Applications vary in many fields and range from rigid frames—aerial and land-based vehicles—as well as dynamic and complex frames like a human body [

In the next sections, after an overview of the system components, the method adopted for trajectory reconstruction is described in detail. Specifically, in Section 3 we present the “Whipple model” [

The method for the motion estimation of a motorcycle proposed in this work has been tested on a “Vespa”, a common Italian scooter, which was equipped with a set of navigation sensors as shown in

The “Whipple model” [

From the geometry of the system the rate of change (^{−1}).

According to the inverted pendulum dynamics; the roll angle satisfies the following equation:

Assuming that we can measure the roll angle

Roll and pitch angles can be estimated by using the frames recorded from the videocamera, which is rigidly fixed to the motorcycle, and detecting the position in the image of the horizon line estimating slope and distance of this line from the image origin. Using the perspective projection camera model, the horizon line projected onto the image plane can be described in terms of roll and pitch angles as follows (see [_{c}. Therefore, the pitch and roll angles _{i}, I(t_{i}), in the next frame at time t_{i}+1, I(t_{i}+1), the horizon is described by the following relationship:

Linearizing

The Hough transform [

An example of such image space parametrization is shown in

Given this parameterization, points in parameter space

The steps needed to compute the rates (

Apply an edge detection to a predefined region of interest of the image;

Perform a discretization the parameter space (

Considering that each edge candidate is an infinite line segment of polar coordinates (

Through this accumulation an histogram of an image in coordinates (

From each histogram the corresponding cumulated Hough transform is derived. This transform is a modification of the Hough transform and is defined as follows:

It can be proved that if the same edges are visible at time t and t+ Δt, then for the roll angle (and similarly for the pitch angle) it holds that:

In presence of noise and considering that not all edges visible at time

Similarly, the estimate of the increment of the roll angle

After these steps, the estimates of the roll and pitch angles are computed by time integration of the rates

The key point of all navigation and tracking applications is the motion model to which bayesian recursive filters (as the particle filter [_{t} is the state vector at time _{t} the input, f_{t} the error model, y_{t} the measurements and e_{t} the measurement error. In this model, indipendent distributions are assumed for f_{t}, e_{t} and the initial state x_{0}, with known probability densities p_{et} , p_{ft} and p_{x0}, respectively, but not necessarily Gaussian.

We denote the set of available observations at time

The Bayesian solution to _{t+1}|Y_{t}), given past distribution p(x_{t}|Y_{t}). In case the noise can be modeled by indipendent, white and gaussian with zero mean probability density functions, and h(x_{t}) is a linear function, then the optimal solution is provided by the Kalman filter. Should be this condition not satisfied, an approximation of the a prior distribution p(x_{t+1}|Y_{t}) can be still provided using a Bayesian particle filter [_{t}^{i}, whose value will increase as closer to true value the related sample will be. When a new observation arrives, the particles are time updated to reflect the time of the observation. Then, a likelihood function is used to updated the weights of the particles based on the new information contained in the observation. Finally, resampling is performed to replace low weight particles with randomly perturbed copies of high weight particles. A block diagram of the particle filter is presented in

Since the computational cost of a particle filter is quite high, only an adequate minimum number of variables has been included in the dynamic model of the scooter. It was therefore chosen to neglect any movement along the z axis (e.g., “bouncing” of suspensions), and to account for position variables x and y, speed ^{i} (

ΔT is the sampling interval;

N(0, Δx^{i2}_{t}) represents the measurement noise of the X coordinate, modeled as a Gaussian function with a zero mean and standard deviation Δx^{i}_{t}. Similar assumption holds for measurement noises N(0,Δy^{i2}_{t}), N(0,Δv^{i2}_{t}) and N(0,Δψ^{i2}_{t});

_{s} the weighting term (_{s} = 1/10);

_{l}_{l}_{m}_{l}^{−1} and _{l}

In the model _{x}, ω_{y}, ω_{z}) measured by the MEMS sensor are related to the

The components of the state vector at time ^{i} of all particles ^{i}:

In order to limit the computational effort of the filter, the update of the particle weights w_{i} is not performed at every step of the algorithm, but rather when the GPS data are available from the receiver.

Three drive tests were carried out on the same track in order to evaluate the measurement repeatability, whose results for the roll angle are shown in

An example of the track reconstructed from the data received during one of the three tests is shown in

Developments of the proposed method will deal with the encoding of the Bayesian filter inside an integrated system which can be used to equip the scooter. This can lead in the future to provide even motorcycles with traction control systems. Further developments will be the inclusion in the dynamic model of the suspensions' motion along the Z axis, and also the study of the influence of the steering angle (δ) on the estimation of the roll angle. These two parameters are indeed related by the following relationship, which can be easily derived from

In this paper we have presented an alternative method for the reconstruction of the trajectory of a motorcycle (“Vespa” scooter) with respect to the “classical” approach based on GPS/INS sensor integration. In our implementation position and orientation of the scooter are obtained by integrating MEMS-based orientation sensor data with digital images through a cascade of a Kalman filter and a Bayesian particle filter. As shown, the proposed method provides quite acceptable results though its application is affected by environment conditions. Indeed the roll angle estimation based on the Hough transform requires a minimal amount of linear elements in the scene, whose absence can degrade the results achievable for the roll angle. For example a complex skyline and low contrast between the road segment and neighboring object can be problematic, even if not common.

Side view of the Vespa scooter showing the data acquisition sensors. The digital video camera was placed on the right bottom side of the motorcycle.

The inverted pendulum motorcycle model.

The parameter space (

Image points mapped into the parameter space.

(

(

(

Block diagram of the Bayesian particle filter.

Roll angle profiles resulting from the performed tests.

The estimated trajectory (dotted line) overimposed onto the GPS reference track (solid line).

Main technical specifications of Xsens MTi-G.

Static accuracy (roll/pitch) | <0.5 deg |

| |

Static accuracy (heading) | <1 deg |

| |

Dynamic accuracy | 1 deg RMS |

| |

Angular resolution | 0.05 deg |

| |

Dynamic range: | |

- Pitch | ±90deg |

- Roll/Heading | ±180 deg |

| |

Accuracy position (SPS) | 2.5 m CEP |

| |

Maximum update rate: | |

- Onboard processing | 120 Hz |

- External processing | 512 Hz |

| |

Dimensions | 58 × 58 × 33 mm (W × L × H) |

| |

Weight | 68 g |

| |

Ambient temperature (operating range) | −20 … +55 °C |

Statistics of the residual displacements btw. the GPS reference trajectory and that estimated by the particle filter shown in

Minimum | 0.042 m |

Maximum | 10.116 |

Mean | 1.033 |

Absolute mean | 3.2 m |

Standard deviation (operating range) | 2.533 m |