Comparison of map matching algorithms with floating car data (GPS)

Similar documents
Spline Curves. Spline Curves. Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1

Georeferencing & Spatial Adjustment

Georeferencing & Spatial Adjustment 2/13/2018

The Problem. Georeferencing & Spatial Adjustment. Nature Of The Problem: For Example: Georeferencing & Spatial Adjustment 9/20/2016

The Problem. Georeferencing & Spatial Adjustment. Nature of the problem: For Example: Georeferencing & Spatial Adjustment 2/4/2014

Geometric Rectification of Remote Sensing Images

A METHOD OF MAP MATCHING FOR PERSONAL POSITIONING SYSTEMS

CS 229: Machine Learning Final Report Identifying Driving Behavior from Data

5 Classifications of Accuracy and Standards

Puzzle games (like Rubik s cube) solver

Accelerometer Gesture Recognition

Geometric Correction of Imagery

10-701/15-781, Fall 2006, Final

Comparison of integrated GPS-IMU aided by map matching and stand-alone GPS aided by map matching for urban and suburban areas

Comparison of Two Mathematical Models for the Surface Reconstruction for Deformation Analysis by Using FARO Focus 3D

Estimating Speed of Vehicle using Centroid Method in MATLAB

Software for Land Development Professionals

CLASSIFICATION FOR ROADSIDE OBJECTS BASED ON SIMULATED LASER SCANNING

University of Technology Building & Construction Department / Remote Sensing & GIS lecture

Error Simulation and Multi-Sensor Data Fusion

Cellular Imaging and Analysis

Data Preprocessing. Supervised Learning

Predicting Bus Arrivals Using One Bus Away Real-Time Data

Interpolation is a basic tool used extensively in tasks such as zooming, shrinking, rotating, and geometric corrections.

THE TOOLS OF AUTOMATED GENERALIZATION AND BUILDING GENERALIZATION IN AN ArcGIS ENVIRONMENT

Geometrical Feature Extraction Using 2D Range Scanner

Everything you did not want to know about least squares and positional tolerance! (in one hour or less) Raymond J. Hintz, PLS, PhD University of Maine

Decision Trees Dr. G. Bharadwaja Kumar VIT Chennai

Sec 6.3. Bluman, Chapter 6 1

Finite Element Analysis Prof. Dr. B. N. Rao Department of Civil Engineering Indian Institute of Technology, Madras. Lecture - 36

Where have all the cars gone? A model for determining traffic flow throughout a road network

CS5670: Computer Vision

Chapter 18. Geometric Operations

POSITIONING IN REAL-TIME PUBLIC TRANSPORT NAVIGATION

Data Mining. ❷Chapter 2 Basic Statistics. Asso.Prof.Dr. Xiao-dong Zhu. Business School, University of Shanghai for Science & Technology

3 The standard grid. N ode(0.0001,0.0004) Longitude

Development of a Test Field for the Calibration and Evaluation of Kinematic Multi Sensor Systems

FILTERING OF DIGITAL ELEVATION MODELS

Attack Resilient State Estimation for Vehicular Systems

Determinant of homography-matrix-based multiple-object recognition

SLiP. Source Line Processing

New Media in Landscape Architecture: Advanced GIS

CSE 252B: Computer Vision II

Data Mining. SPSS Clementine k-means Algorithm. Spring 2010 Instructor: Dr. Masoud Yaghini. Clementine

Feature scaling in support vector data description

PART 1. Answers module 6: 'Transformations'

CS 223B Computer Vision Problem Set 3

Combination of feature-based and geometric methods for positioning

ArcGIS Online: Using the Python API for Transportation Network Analysis. Deelesh Mandloi and Dmitry Kudinov

White Pixel Artifact. Caused by a noise spike during acquisition Spike in K-space <--> sinusoid in image space

Car tracking in tunnels

Estimating Parking Spot Occupancy

For our example, we will look at the following factors and factor levels.

Using Machine Learning to Optimize Storage Systems

Adaptive Extended Kalman Filter for Geo-Referencing of a TLS-based Multi-Sensor-System

Improving autonomous orchard vehicle trajectory tracking performance via slippage compensation

Image preprocessing in spatial domain

Version 1.1. COPYRIGHT 1999 Tufts University and Vernier Software. ISBN (Windows) ISBN (Macintosh)

An algorithm for Trajectories Classification

Detection and Tracking of Moving Objects Using 2.5D Motion Grids

TEPZZ 85 9Z_A_T EP A1 (19) (11) EP A1 (12) EUROPEAN PATENT APPLICATION

Lab 11: Terrain Analyses

Chapter 4. The Classification of Species and Colors of Finished Wooden Parts Using RBFNs

On Choosing the Right Coordinate Transformation Method

CS 231A Computer Vision (Fall 2012) Problem Set 3

UNIVERSITY OF OSLO. Faculty of Mathematics and Natural Sciences

GEOG 4110/5100 Advanced Remote Sensing Lecture 4

LOAM: LiDAR Odometry and Mapping in Real Time

Data Association for SLAM

Discovering Visual Hierarchy through Unsupervised Learning Haider Razvi

An Adaptive Update-Rate Control of a Phased Array Radar for Efficient Usage of Tracking Tasks

Advanced Imaging Applications on Smart-phones Convergence of General-purpose computing, Graphics acceleration, and Sensors

Math Section 4.2 Radians, Arc Length, and Area of a Sector

Motivation. Intensity Levels

Engineering Tool Development

NCSS Statistical Software

AFFINE INVARIANT CURVE MATCHING USING NORMALIZATION AND CURVATURE SCALE-SPACE. V. Giannekou, P. Tzouveli, Y. Avrithis and S.

Nonlinear State Estimation for Robotics and Computer Vision Applications: An Overview

GEOBIA for ArcGIS (presentation) Jacek Urbanski

Announcements Wednesday, August 22

Traffic Flow Prediction Based on the location of Big Data. Xijun Zhang, Zhanting Yuan

Computational Optical Imaging - Optique Numerique. -- Multiple View Geometry and Stereo --

A comparative study of the integer ambiguity validation procedures

Multi-Agents Scheduling and Routing Problem with Time Windows and Visiting Activities

Rectification Algorithm for Linear Pushbroom Image of UAV

High Performance Computing: Tools and Applications

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li.

Dijkstra's Algorithm

Feature descriptors. Alain Pagani Prof. Didier Stricker. Computer Vision: Object and People Tracking

Autonomous Navigation for Flying Robots

Visual Odometry. Features, Tracking, Essential Matrix, and RANSAC. Stephan Weiss Computer Vision Group NASA-JPL / CalTech

Lab 5: Georeferencing, Digitization, and Processing

One Factor Experiments

Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Probabilistic Methods for Kinodynamic Path Planning

Handwritten Hindi Numerals Recognition System

SUMMARY: DISTINCTIVE IMAGE FEATURES FROM SCALE- INVARIANT KEYPOINTS

Application of Geometry Rectification to Deformed Characters Recognition Liqun Wang1, a * and Honghui Fan2

SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014

High-precision, consistent EKF-based visual-inertial odometry

Transcription:

Tanzeel Ur Rehman KHAN Comparison of map matching algorithms with floating car data (GPS) Duration of the Thesis: 6 months Completion: December 2012 Tutor: Dipl.-Ing. Jürgen Schweitzer Examiner: Prof. Dr.-Ing. Volker Schwieger Background The Map matching process is to find the current vehicle location by means of digital map, as a result map matched position on the digital road network calculated from estimated position and corresponding to vehicle actual location. In a multi sensor positioning system different sensors are used like GPS, DGPS, Gyro, and odometer. Every sensor has its own error ellipse and accuracy constraints. This can be compensated by the map matching algorithms. Three kinds of inputs are used i. Positioning data (sensor data) ii. Digital map iii. Map Matching algorithm Floating Car Data can be used for basic vehicle telemetry, GPS data from the Smartphone is used as a position data and two other GPS data sets (Exemplary) are used for comparison and analysis. In this master thesis different map matching algorithms are developed in python scripting language as a script and then it can be run in Arc GIS 10 software for evaluation and analysis of the results. The first algorithm is the simplest algorithm which determines the matched coordinate to the nearest distance to the edge (street). In second algorithm velocity information is also obtained. There are two algorithms of map matching with coordinate pattern; the evaluation procedure depends upon the sensor used. Similarity (4 parameters) and affine (7 parameters) approximations are used. The aim is to find the best allocation of the position data with respect to some accuracy constraints (Residuals and standard deviation) by map matching algorithms. Comparison and evaluation of different data sets with different map matching algorithms is also the part of the research.

Software and data used. In context of floating car data, GPS data is used which is taken by smart phone. Meanwhile three exemplary data sets are used for the analysis. Which are created by own in ArcGIS software to check the accuracy and implementation of the map matching algorithms. Figure 1.GPS data (original)

Figure 2. Exemplary data sets (GPS) for analysis Another input data is prepared which is used in the process of map matching, Figure 3. Street data Stuttgart with attribute Streets are generated from the base map (open street map) and this data is stored in the shape file format. This data is needed in the process of map matching. It has different attributes as shown in the figure above. The basic goal of the master thesis is the development and implementation of map matching algorithms using positioning data from the GPS sensor and streets data. This implementation would be in the ArcGIS script language python. And the results would be an ArcGIS toolbox (in which different algorithms will be implemented in the form of script.). For each algorithm, there would be scripted in python.which is capable to implement the map matching algorithms.

ArcGIS 10 software is used to implement the python script in arc tool box.all script are made in python programing language. Methodology There are some algorithms are defined to perform map matching. How they are categorized. i. Map Matching with Nearest distance ii. Map Matching with Nearest distance with extended velocity information iii. Map Matching with similarity transformation (co-ordinate pattern) iv. Map Matching with affine transformation First algorithm is the simplest algorithm of map matching. Where GPS point data is matched to street data on the basis of minimum distance. This algorithm defines the simplest way to find the location of the vehicle on the digital map. Figure 5. Nearest distance algorithm Sometimes this algorithms matches the GPS points on the wrong street network which creates error in map matching algorithm and It is not defined a correct rout, so that, why velocity information is incorporated.

Figure 6. Velocity information Now referring the figure, these are the matched points and GPS points. It can be seen that arrow is defining the route of the vehicle normally but due to algorithm limitation (matched to the nearest distance to the edge) point B is matched to another street. So the velocity between the GPS point A and GPS point B is very high. Algorithm matches the GPS point to another nearest street edge which would be automatically on the second nearest edge. This is the correct route of the vehicle. The algorithm will choose another street edge if the difference of the both velocities is greater than the threshold. So this algorithm depends upon the velocity information. Threshold velocity can be considered from the feature class velocity which is given in the attribute table of street data. Algorithm flow chart with coordinate pattern (Similarity, Affine)

As described above all allocation method with observed coordinate s divides a measured trajectory in line elements of constant length (e.g. 1m) by interpolation and same is the case with digitized track (equidistant line segment) and constant length is one meter. Transform the m measurement points to first m reference points with the helmert transformation. Estimate the transformation parameter and standard deviation. For example in above one measurement point is selecting six map points.so for each point there will be 6 transformations and transformation parameters will be calculated separately.in every step measurement points are transformed to the reference points shifted by one line element. Store again transformation parameters and standard deviations. The shift of the

corresponding points is repeated until the last measuring point of the last point Comparison road matches. Similarity Transformation (4-parameter) 4 unknowns are calculated and which are the transformation parameters and Estimation is calculated with this formula 1 ( T T x= APA) APl A=Design Matrix, P=weight Matrix, l =reduce Observation 4 unknowns are calculated. After calculating estimated parameters, which are the four parameters of transformation. Now residuals can be calculated separately. And adjusted trajectories are allocated with residuals. For the best allocation of GPS points, Choose the route with the minimum standard deviation and residuals should be minimum. To check the accuracy of the transformation following formula is used. Firstly standard deviation is calculated. The invariant is with respect to the rotation σ Pt = σ x 2 + σ y 2 = 2 σ 0 2 with σ 0 2 = n i=1 v x 2 + v y 2 2 n 4 σ Pt =is the standard deviation of point.an estimate for the variance factor can be estimated Where vx and vy are the inconsistencies which are added to the original system Affine transformation (6 parameters) These are the equations X = m x (cosα)x m y (sinß)y + c Y = m x (sinα)x m y (cosß)y + f So the transformations parameters, we can discuss as follow Two translations c and f Two rotations α and ß Two scale factors m y, m x After this finally we get X + v X = a x + b y + c Y + v Y = d y + e x + f In these equations 6 parameters are given a, b, c, d, e, f

n xi X i i=1 n y i X i i=1 n X i h = A l = i=1 n x i Y i i=1 n y i Y i i=1 n Y i i=1 As a normal equation N for each shift of the corresponding points and all alternative roots can be found only once and only h vector is recalculated. That s why affine transformation computational effort is limited. And now calculation of standard deviations σ Pkt = σ x 2 + σ y 2 = 2 σ 0 2 with σ 0 2 = n i=1 v x 2 + v y 2 2 n 6 This size can be used as a criterion for choosing the best estimate of the parameters. The resulting path is the matched path with the best estimates. It means that choosing path contains the minimum standard deviation. Results These are the results for nearest neighbor map matching algorithm and also extended velocity information with exemplary and original data set. Original data is prepared and lot of noisy data is removed.

Figure 7.Velocity check before and after matching algorithm Look at the velocity between the pairs of GPS points and matched points. Choose a threshold of velocity from feature class. (30km is chosen) If the difference of velocity is exceeded from the threshold velocity then the GPS point should matched to the second minimum distance street. It is only the quality check.as velocity is calculated manually so this function can check and applied further more. Similarly for the original data, Figure 8. Matched points trajectory original data

Similarity and affine adjusted trajectories with data set 1 and data set 2.

Comparison of Simi and affine adjusted trajectories of Original data, dataset 1, data set 2

First It is calculated the norm of the residual vector and results were not good and in expamplary data set it is about 1 to 4m but in original data it was about 1.8km error. So this method was further improved in python script and finally calculated the standard deviations of the residual vector as given below. Transformations GPS data set Standard deviation (m) Dataset 1 Standard deviation (m) Affine 14.06 0.0237 0.179 similarity 4.54 0.0664 1.91 Dataset 2 Standard deviation (m) Table 1. Standard deviations of the residual vector

Conclusion and suggestions Every algorithm has its certain limits. Nearest distance both algorithms are restricted to the minimum distance of GPS point to the street. Similarity and Affine has more chances to be accurate as it has 4 and 6 degrees of freedom. In exemplary data set Affine is giving better results as compared to the similarity. In a practical data lot of complications are involved. That it contains a huge amount of points and noisy data is also incorporated that, s why error chances are high but these errors can be compensated to some preprocessing of the data. Another thing is the efficiency of the python program. Sometimes it happens program is working well but there are some errors in the data. So avoid such kind of things. It depends on the user requirement which algorithm is taken into account. Map matching results are not always perfect and mismatches sometimes to the wrong road connection so it is necessary to watch out under what circumstances map matching algorithms is performed and also incorporated accuracies of sensor and surrounding road segments. There are three main components of map matching, position data, digital map and MM algorithm, Sometimes you have to work with noisy data so it requires input data processing and it gives then precise position. Similarly digital map errors and algorithms short coming create varying levels of matching accuracy. Efforts for improving map matching accuracy can be done by increasing the accuracy of estimates and by matching these estimates with the high accuracy map.