indoor localization methods using dead reckoning and 3d map matching

12
Indoor Localization Methods Using Dead Reckoning and 3D Map Matching J. Bojja & M. Kirkko-Jaakkola & J. Collin & J. Takala Received: 29 September 2013 /Revised: 27 November 2013 /Accepted: 2 December 2013 # Springer Science+Business Media New York 2013 Abstract In order to navigate or localize in 3D space such as parking garages, we would need height information in addi- tion to 2D position. Conventionally, an altimeter is used to get the floor level/height information. We propose a novel method for three- dimensional navigation and localization of a land vehicle in a multi-storey parking-garage. The solution pre- sented in this paper uses low cost gyro and odometer sensors, combined with a 3D map by means of particle filtering and collision detection techniques to localize the vehicle in a parking garage. This eliminates the necessity of an altimeter or other additional aiding sources such as radio signalling. Altimeters have inherent dynamic influential factors such as temperature and environmental pressure affecting the altitude readings, and for radio signals we need extra infrastructure requirements. The proposed solution can be used without any such additional infrastructure devices. Other sources of infor- mation, such as WLAN signals, can be used to complement the solution if and when available. In addition we extend this proposed method to novel concept of non-stationary 3D maps, as moving maps, within which localization of a track-able object is required. We also introduce novel techniques that enable seamless navigation solution from vehicular dead reck- oning (VDR) to pedestrian dead reckoning (PDR) and vice versa to reduce user involvement. For achieving this we collect relevant measurements such as vehicle ignition status and accelerometer signal variance, and user pattern recogni- tion to select appropriate dead reckoning method. Keywords Particle filters . 3D map matching . Dead reckoning . Land vehicles . Sensor fusion . Indoor environments 1 Introduction Current navigation solutions employ one or several of the techniques based on GNSS satellites and receivers, WLAN devices, inertial sensors, altimeters, and video [1]. For clear- sky out-door navigation, GNSS alone will suffice for an accurate navigation solution. However in environments where GNSS is totally unavailable, such as underground parking garages, the location information needs to be derived from other sources such as wireless radio devices, motion sensors, and altimeters [2][3]. Using altimeters might not be feasible, as they have inherent dynamic influential factors such as temperature and environmental pressure affecting the altitude readings [4]. In this paper, we study 3D map-matching in parking garages, a scenario different from the common map-matching problem in various senses. Firstly, in parking garages, GNSS cannot be relied on due to the heavy attenuation of satellite signals when penetrating concrete structures; therefore, one has to resort to using on-board motion sensors such as the odometer of the vehicle. Secondly, vehicle heading is less constrained than on roads and streets, which poses additional challenges when a gyroscope is used for heading estimation. Thirdly, positioning in multi-storey parking garages requires the use of 3D maps and knowledge on the altitude of the vehicle. This paper proposes a method for achieving low cost and effective solution to such GNSS denied indoor multi-storey parking garage navigation. Many existing devices in the mar- ket, such as smartphones, are equipped with gyros, acceler- ometers, and all modern land vehicles (e.g., cars) have odom- eters. The speed information of the vehicle is obtained by a smart phone via a Bluetooth on-board diagnostics (OBD) reader supporting protocol version II connected to the vehicle. Given the nonholonomic constraints of vehicle motion and the initial location of the vehicle with respect to the target indoor, these sensors readings and a detailed 3D map are sufficient to J. Bojja (*) : M. Kirkko-Jaakkola : J. Collin : J. Takala Department of Pervasive Computing, Tampere University of Technology, Tampere, Finland e-mail: [email protected] J Sign Process Syst DOI 10.1007/s11265-013-0865-9

Upload: j

Post on 20-Jan-2017

219 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

Indoor Localization Methods Using Dead Reckoning and 3DMap Matching

J. Bojja & M. Kirkko-Jaakkola & J. Collin & J. Takala

Received: 29 September 2013 /Revised: 27 November 2013 /Accepted: 2 December 2013# Springer Science+Business Media New York 2013

Abstract In order to navigate or localize in 3D space such asparking garages, we would need height information in addi-tion to 2D position. Conventionally, an altimeter is used to getthe floor level/height information.We propose a novel methodfor three-dimensional navigation and localization of a landvehicle in a multi-storey parking-garage. The solution pre-sented in this paper uses low cost gyro and odometer sensors,combined with a 3D map by means of particle filtering andcollision detection techniques to localize the vehicle in aparking garage. This eliminates the necessity of an altimeteror other additional aiding sources such as radio signalling.Altimeters have inherent dynamic influential factors such astemperature and environmental pressure affecting the altitudereadings, and for radio signals we need extra infrastructurerequirements. The proposed solution can be used without anysuch additional infrastructure devices. Other sources of infor-mation, such as WLAN signals, can be used to complementthe solution if and when available. In addition we extend thisproposedmethod to novel concept of non-stationary 3Dmaps,as moving maps, within which localization of a track-ableobject is required. We also introduce novel techniques thatenable seamless navigation solution from vehicular dead reck-oning (VDR) to pedestrian dead reckoning (PDR) and viceversa to reduce user involvement. For achieving this wecollect relevant measurements such as vehicle ignition statusand accelerometer signal variance, and user pattern recogni-tion to select appropriate dead reckoning method.

Keywords Particle filters . 3Dmapmatching . Deadreckoning . Land vehicles . Sensor fusion . Indoorenvironments

1 Introduction

Current navigation solutions employ one or several of thetechniques based on GNSS satellites and receivers, WLANdevices, inertial sensors, altimeters, and video [1]. For clear-sky out-door navigation, GNSS alone will suffice for anaccurate navigation solution. However in environments whereGNSS is totally unavailable, such as underground parkinggarages, the location information needs to be derived fromother sources such as wireless radio devices, motion sensors,and altimeters [2] [3]. Using altimeters might not be feasible,as they have inherent dynamic influential factors such astemperature and environmental pressure affecting the altitudereadings [4].

In this paper, we study 3Dmap-matching in parking garages,a scenario different from the common map-matching problemin various senses. Firstly, in parking garages, GNSS cannot berelied on due to the heavy attenuation of satellite signals whenpenetrating concrete structures; therefore, one has to resort tousing on-board motion sensors such as the odometer of thevehicle. Secondly, vehicle heading is less constrained than onroads and streets, which poses additional challenges when agyroscope is used for heading estimation. Thirdly, positioninginmulti-storey parking garages requires the use of 3Dmaps andknowledge on the altitude of the vehicle.

This paper proposes a method for achieving low cost andeffective solution to such GNSS denied indoor multi-storeyparking garage navigation. Many existing devices in the mar-ket, such as smartphones, are equipped with gyros, acceler-ometers, and all modern land vehicles (e.g., cars) have odom-eters. The speed information of the vehicle is obtained by asmart phone via a Bluetooth on-board diagnostics (OBD)reader supporting protocol version II connected to the vehicle.Given the nonholonomic constraints of vehicle motion and theinitial location of the vehicle with respect to the target indoor,these sensors readings and a detailed 3D map are sufficient to

J. Bojja (*) :M. Kirkko-Jaakkola : J. Collin : J. TakalaDepartment of Pervasive Computing, Tampere University ofTechnology, Tampere, Finlande-mail: [email protected]

J Sign Process SystDOI 10.1007/s11265-013-0865-9

Page 2: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

obtain an indoor 3D positioning solution on a smartphone.This paper extends our preliminary results reported in [5].

A 3D model as depicted in Fig. 1(a), representing thestructural details of a real-world multi-storey parking garageshown in Fig. 1(b), is used as a 3D map and motion constraintin the solution which is based on particle filtering. In the filter,each particle is modelled as a separate 3D vehicle objectwhich has approximately the same horizontal and verticaldimensions as a true vehicle. This 3D vehicle object in itselfcan be used as a map within which localization is required.This enables us to localize the passengers inside movingvehicles such as trains, boats and busses, for example. Sincethese 3D maps of vehicles are moving with respect to theEarth-fixed frame wherein GNSS location is traditionallyexpressed, the term moving maps is used in this article.

The rest of the paper is organized as follows. Section 2describes the related work, Sections 3 and 4 address theparticle filtering and collision detection methods upon whichthe proposed navigation algorithm relies. Section 5 describesthe technically extended novel concepts of moving maps andseamless navigation solution. Section 6 describes the mea-surement and experimental setup for testing, and demonstrat-ing the localization approach, using real-world sensor dataobtained by driving a car in parking garages. Finally, Section 7concludes the paper.

2 Related Work

Map-matching has been studied for decades, with the firstimplementations estimating the position of a vehicle along aknown route [6]; an extensive description of the most com-mon map-matching algorithms is given in [7].

Many solutions to the 3D indoor positioning problem havebeen proposed in the literature. Wagner et al. [8] used cascad-ed Kalman filters and “road link” matching, for positioningvehicles in parking garages. In [9], Fouque et al. describes ageneric solution to multi-hypothesis map-matching usingglobal positioning on tightly integrated 3D navigable road

maps, formalized in a general Bayesian framework. Pintoet al. [10] proposes a 3D map based approach to pinpoint arobot pose, by using 3D map of the surrounding environmentand data acquired by a tilting laser range finder.

Nowadays, a popular approach is to use a particle filter(PF); they are known to be well suited for positioning prob-lems [11]. In [12], Fairfield et al. proposed a submap-based3D simultaneous localization and mapping (SLAM) known assegmented SLAM or SegSLAM, and used Cave Crawlerrobotic vehicle for obtaining speed and heading sample data,using on-board wheel based odometer and laser range mea-surement system respectively. The basic idea of segmentationis to circumvent the scale limitation inherent in SLAM. Theyapply Rao-Blackwellized particle filter for SLAM and extendit to allow particles to transition between sub maps. Kümmerleet al. [13] proposed an autonomous driving in a complexmulti-storey parking garage, using a modified vehicleequipped with multi laser range finders, a high-performanceinertial measurement unit and GPS receivers. They used a PFfor localizing (SLAM) the car in and within a 3D map of theparking garage environment by only using the laser range datafor generating the map and using the inertial data for the PFand localization. They have used 1000 particles and limitedthe speed of the vehicle to 10 km/h and an update of data at200Hz. However, the map information cannot be used as anefficient motion constraint in SLAM because the map is oneof the unknowns. Leppäkoski et al. [14] proposed a pedestriandead reckoning solution for indoor pedestrian navigation withdetailed indoor maps as a motion constraint, inertial sensors asthe primary source of information, and radio signals asassisting signals. This study showed that a very detailed 2Dmap, including even bookshelves, significantly improved thePF navigation solution in a 2D space.

3D models and map matching has been studied earlier. In[15] Andreja et al. proposed a mobile robot self-localization incomplex indoor environments using monocular vision and 3Dmodel of the environment. The captured noisy and complexvideo frames are processed for real time 2D image segmenta-tion and line extraction by using Canny edge detector and

Figure 1 Multi-storey parking garage: a 3D model and b the real world garage.

J Sign Process Syst

Page 3: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

random window randomized Hough transform (RWRHT).The extracted edges are then matched with the 3D model linesegments to localize the robot. The odometry device in therobot is used to estimate the robots pose and use it as theestimated camera pose for rendering 3D model. Then edgematching procedure is applied to adjust this assumed camerapose that is rendering the 3D scene to match with the edges ofthe captured 2D image. Ascher et al. [3] proposed a multi floorindoor pedestrian navigation, where stairs, elevators and lad-ders are used for transitioning from floor to floor. This methoduses barometer, magnetometer/compass and inertial measure-ment units as sensor data input to the algorithm and particlefilter system based on bootstrap particle filter implementation[16]. Here a 3D model of the scenario (building) is used forcompensating for the errors of the sensors such as magneticinterference causing heading errors and the accumulated er-rors of accelerometer and gyro. There are several solutionproposals for automatic map generation, such as for 2D,2.5D, and 3D maps [19–21, 28–32].

Our approach is to use a detailed 3D structural map of theparking garage depicted in Fig. 2(a), as a motion constraint tonavigate in 3D space using on-board motion sensors. In ourPF, we test each particle for collisions in a novel way, takinginto account the dimensions of the vehicle which improves theaccuracy of the map-matching. Instead of using altimeters orany other means for height estimation we use the ramp struc-tures of the 3D models, eliminating the necessity for external

radio navigation updates, which are a common solution as in[17] when no map information is used. We also extend theapplicability of this method for navigation in trains, buildingswith elevators etc. by introducing moving map concept. Innavigation related literature very often the research is concen-trated on a specific motion (for example driving or walking) orenvironment (indoor or outdoor) and the algorithms for thetransition phase receive little attention. In this paper, wepropose a solution for automatic switching from VDR toPDR, enabling a seamless navigation solution.

3 Particle Filtering

Particle filtering is an approximation of the Bayesian filterwhere the posterior distribution p (xn |y1,…,n,x0), with xndenoting the state vector at time step n and y1,…,n being themeasurements, is characterized by a cloud of random samples,called particles, instead of, e.g., the moments of the distribu-tion. The foremost benefit of this representation is the abilityto operate on arbitrary distributions, thus making it possible toestimate, e.g., multimodal distributions which often causedivergence of Kalman-type and other filters that assumeGaussian distributions. Particle filtering is a Monte Carlomethod and both its performance and computational complex-ity depend on the number of particles used. We use a PFvariant called the bootstrap filter [18] where the so-calledimportance distribution is chosen to be the transitional priordistribution.

Suppose we have N particles x i with nonnegative weightswi, i =1,…,N . Each particle is a state vector containing thequantities that are to be estimated; in this study, the i th particleis a 4×1 vector

xi ¼Hi

Ei

N i

Ui

264

375 ð1Þ

whereH is the heading angle, E ,N , andU denote East, North,and vertical coordinates, respectively. Particle filtering con-sists of two basic steps, i.e., prediction and updating. In theprediction phase, we draw particles from the transitional dis-tribution. Assuming that nonholonomic constraints hold, theexpected value of this distribution can be expressed as

E xin xin−1��� � ¼

Hin−1 þ ωn �Δt

Ein−1 þ cos Hi

n

� � � Vn �ΔtN i

n−1−sin Hin

� � � Vn �ΔtU i

n−1 � tan Pin

� � � Vn �Δt

2664

3775 ð2Þ

where E is the expected value operator; P is the inclinationangle of the surface on which the particle is located; Vn andωn are the measured speed and angular rate at the n th time

Figure 2 a Detailed structural model of a single floor parking garage andb virtual sensor spheres attached to a vehicle model at different placesused in collision detection.

J Sign Process Syst

Page 4: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

step, respectively; and Δt is the measurement interval. Thecovariance of the transitional distribution is determined basedon e.g., the error characteristics of the motion sensors.

In the update step, the weights of the particles are modifiedaccording to the likelihood of a measurement given the statevector. In the case of the bootstrap filter, the update is doneaccording to the simple proportion

win∝p yn

���xin� �

win−1: ð3Þ

Due to the proportionality relation, the weights need to benormalized to sum to unity after updating. This way, it isstraightforward to estimate the mean of the posterior distribu-tion as the weighted average of the particles.

In this paper, we use the 3D map as a source of measure-ment updates according to the likelihood function

p yn xin��� � ¼ 0 if the particle hit a wall

1 otherwise

�: ð4Þ

In other words, particles that collide are discarded. In thisstudy, the map update likelihood is computed by modellingeach particle as a vehicle with physical dimensions and mo-tion constraints, instead of a freely moving point mass. Thissignificantly improves the accuracy of the map-matching be-cause we can detect if one of the corners of the vehicle istouching a wall although the centre of mass is not. Section 4discusses more on this kind of modelling and about collisiondetection.

If other measurements are available; they can be incorpo-rated into the estimation process by means of additionalupdate steps with appropriate likelihood functions. It is obvi-ous that discarding colliding particles leads to a situationwhere only a small fraction of the N particles are actuallyused for the state estimation; such a cloud of particles isobviously not a good approximation of a probability distribu-tion and also causes a waste of computational resources ifzero-weighted particles are propagated. This problem can beavoided by resampling the set of particles; in this procedure, anew set of N particles is drawn from the discrete probabilitydistribution defined by the old particles and their respectiveweights, such that the newly obtained set of particles representthe same distribution as the old one, but with a full number of“alive” particles. A block diagram of the flow of the signalprocessing in the PF system is shown in Fig. 3.

4 Collision Detection

Collision detection is defined in this context as the ability tocomputationally detect if two or more objects are intersectingwith each other. In general indoor parking garages consist ofobjects such as walls, railings, ramps, floors, roofs, and pillars

that can be classified as target objects, and the vehicles whichnavigate in the garages as the source objects. Such objectmodels can be obtained by using various methods such as in[19–21] or modelled easily with computer aided designing(CAD) 3D modelling software tools such as SketchUp, and3ds Max, to reflect real-world parking garages and vehicles.The structural details of dimensions of the models play animportant role; the more accurate the approximation of themodel the better is the localization performance. The basicprinciple we have used is to make all the structural elementssuch as walls, pillars, railings and ramps as box shaped objectsand put together to form the 3D building model. Each of theseboxes would require a maximum of 8 points for representa-tion, and a simple collision detection scheme would suffice todetect collisions with such box shaped objects. There might becases where a structural element would require different formof representation other than a box shape, and this mightrequire a complex collision detection scheme. These specialcases are not relevant and essential at the moment to thecurrent research work.

With the advances in CAD, programming tools, and com-putational capabilities of microprocessors, it has become

Figure 3 Block diagram of proposed 3D navigation system depicting theflow of signal processing in PF.

J Sign Process Syst

Page 5: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

feasible to represent and render such objects as softwaremodels on consumer devices. These software objects can bemoved in a 3D space and collisions can be detected.Figure 1(a) depicts our modelled garage. The modelled garagespace forms our target space and objects in it are the targetobjects while the modelled vehicle object is our source object.When this source object is moved around in the target space,its movement is restricted to be on the path way targets such asfloor, ramps and it should not go through certain other targetobjects such as walls. There arises a need to detect whensource object is hitting such restricted objects to identifyillegal moves. This is solved by collision detection methods[22]. The greater collision detection accuracy the better is theperformance. In a broader aspect of collision detection, theaccuracy should be close to100%; otherwise the particles willenter the places where they are not supposed to enter, such asunder the ramps, out of the map limits, which at times willcause the navigation algorithm to fail in providing the correctnavigation solution.

In general, an intersection between a source and a targetobject is calculated using two simple boundariesencompassing the objects, namely the bounding box and thebounding sphere. A sphere and a box intersect when any oneof the points of the sphere falls within the range of pointsforming the bounding box. A box and sphere frames wouldnot necessarily encompass the source object (vehicle model)as an exact fit. Therefore, for precise collision detection, in ourimplementation we have attached small spherical objects tothe modelled source object, at different locations as depictedin Fig. 2(b). We will call these extra objects “virtual sensors”(VS) as they work similar to real world proximity sensors indetecting if the vehicle collides with the target objects in thetarget space.

The group of such VSs form a cluster as the distancebetween them is fixed. The number of such VSs in the clusterto be attached depends on the desired precision of requiredvehicle structure for collision detection and the trade-off be-tween computational speeds and power consumed in suchcomputations. The motion constraints of the vehicle as awhole are applied using the VSs in the cluster, which struc-turally represent the physical dimension of the vehicle. Thecluster is propagated according to the probabilistic charactersdeduced by applying the collision detection logic to all thesensors in the cluster individually. The limited number of VSin the cluster will significantly reduce the complexity ofcollision detection to a mere few number of VSs in the cluster,rather than vast number of collision detection steps for all themesh vertices used to visually representing the vehicle model.In Fig. 2(b) shows the cluster of VSs, structurally represent thedimension of the vehicle.

For every movement induced by propagation logic to thesource object in the target space, the collision detection algo-rithm is applied between the source and the target objects. If a

collision is detected, an appropriate action is taken, such asdown-weighting the particle if it hits a wall or updating theposition of the vehicle according to (2). The collision detec-tion plays an important role in guiding the signal samplesalong the correct channels of the 3D map by compensatingfor the intricate and intrinsic error characteristics of the sen-sors. If the collision detection is not applied to the VDRsolution, the localization track will have large position errorand secondly it will be restricted to a single floor where thetrack starts at its initialized position, as the particles neverclimb the ramps to reach the next floors. Nevertheless tocompare this scenario with a localization track obtained byapplying collision detection (Figs. 7 and 9), we have projectedthe partial tracks on to first and the top floors as in Fig. 6. It canbe seen that the localization solution on the left side ofFig. 6(a) and (b) is not mapped on to the ramp, and inFig. 6(a) on the right side it is outside of the parking garageboundaries. Figure 6(b), the localized position of the firstparking spot is far away from the true parking spot. Theseerrors such as in Fig. 6 are compensated by applying collisiondetection and PF as shown in Figs. 7, 8 and 9. Thus thecollision detection and PF together will assist in reducing thelocalization error.

5 Technical Extensions

In this section we throw light up on the novel concepts andsolutions namely moving maps and seamless navigation so-lution. These are the technical extensions of the proposedmethod.

5.1 Moving Maps

Traditionally map-matching methods have been applied onlyto static buildings and road networks etc. However, themethods describe in this paper do not assume that the con-struction is immobile. For example, a train model can beconstructed similarly as buildings. The cluster as discussedin previous section structurally representing the shape of avehicle and along with additional sub-structural representationof obstacle objects within this vehicle shape can be used as a3D map model itself. Any object moving within this vehicle3D map model defined by the cluster dimensions can belocalized within it. This novel technique of maps within amap can be applied in the context of a large vehicle where thetracking of an object inside the vehicle is required. The vehiclecan belong to various categories such as based on air, water orground. For example a train compartment can be representedby the cluster as show in Fig. 4. The lines or edges connectingeach VS forming the cluster at respective corner vertices,forms a box shape in this context, additionally structuralshapes representing seating arrangement and the door of the

J Sign Process Syst

Page 6: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

train compartment will act as the target objects with whichcollision detection is applied. A person boarding such a traincompartment can be localized within it by applying the pro-posed methods in this paper. Since this model of the traincompartment is moving, and the localization is done withinthis train, the train compartment 3D model itself is a map andhence the proposal of the novel concept of 3D moving maps.The positioning of the train can be done using GNSS or withseparate VDR system. Another example would be an elevatorinside the building; the position of the elevator is providedexternally to the map database, and the PDR-particle filter[23] allows particles to change floors based on this informa-tion. It should be noted that PDR and VDR provide velocityobservations with respect to the moving frame, and the pro-posed method would allow integration of GNSS and deadreckoning on a moving platform. Obviously theoretical chal-lenges arise when nonlinear statistical filters are superimposedand these are left for the future work.

5.2 Seamless Navigation Solution

The originally proposed navigation system obtained speed in-formation from Bluetooth based OBD connection and headinginformation from a gyroscope included in the mobile phone.When the vehicle is parked, and the person is walking awayfrom the car, OBD cannot be used for speed measurementsanymore. To continue positioning, the system should switch toPDR and for this we need a way to detect when the user hasstarted walking away from the car. The main source of informa-tionwould be theOBD readings: is the speed non-zero, is the carignition status off or on, for example. If these observationsindicate that the person is not driving anymore, motion modeclassification algorithm [23] can be applied to check if the user iswalking. If accelerometer waveforms indicate walking motion,we can then apply PDR methods to localize the user in theparking garage and out of it to a shopping mall or to an out-doorenvironment. Figure 5 describes the extension of the proposed

Figure 4 3D structuralrepresentation of an arbitrary traincompartment. The eight virtualsensors at the corners form acluster of sensors in a box shape.

Figure 5 Flow chart describingseamless navigation solutionswitching from VDR to PDR andvice-versa.

J Sign Process Syst

Page 7: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

solution seamlessly to pedestrian localization and then back tovehicle localization. A similar 3D map and map-matching algo-rithm can be applied, but the particle size would be changed torepresent a human and to allow entering staircases and elevators.

6 Experimental Setup and Results

In this section we will discuss various test cases andimplementations that were performed to verify the proposedmethod of localization, and throw some light on tests per-formed to show the feasibility of the extended novel conceptof seamless navigation in the context of the proposed locali-zation solution.

6.1 Localization Tests

We have two different experimental setups. First we haveimplemented the solution as a laptop application prototypeand later we have implemented the solution as a smart phoneapplication. In both the cases of prototype and mobile phoneapplication, the input samples of speed and heading feed to thealgorithm are collected in two different parking garages in realtime, and used in the experiments offline. To simulate the realtime randomness of the samples in offline simulation experi-ments, additive random noise is induced in to the collecteddata samples.

We have developed a software program that loads the 3Dmodel of the garage and navigates the modelled vehicle withinit. The software used this data to compute the successivelocations, detect collisions, and move the modelled vehicleparticles to the computed locations. The current location of theparticles after the successivemoves, and information about thetarget objects with which the particle has collided duringsuccessive moves are used to take an appropriate action,e.g., adjusting the weight of a particle, or resampling whenthe count of the particles falls short.

The vehicle particle is propagated using a reference pointlocated at the centre of mass of the vehicle. The overallstructure is then defined by the virtual sensors attached aroundthe vehicle as depicted in Fig. 2(b). For checking the collisionof the vehicle with the target objects, each virtual sensor iscross-checked for an intersection with the bounding frames ofthe target objects in the target space as depicted in Fig. 2(a) andthe collision detection information is used according to (4).

The inclinations present in the multi-storey building areconsidered as ramps, and these ramps are modeled in to the 3Dparking garage model according to the respective angles ofinclination. For detecting and navigating on such ramps, atpresent we have used a straightforward and simple method.The method assumes that the slope of the ramp is knownbeforehand and that a vehicle always touches the floorsconnecting the bottom edge and top edges of the ramp. Tra-versing a ramp always takes following sequence: once a

Table 1 Specifications of the devices used to obtain the data samples for the experiments.

Product Parameter Range Sensitivity/Resolution

SCC1300-D04 MEMS sensor 1 axis gyro ±300°/s 18LSB/(°/s)

3 axis accelerometer ±6 g 650LSB/g

CarChip® Pro OBDII reader vehicle speed 0…158mph, 0…255 km/h, 0…70 m/s

0.6mph, 1 km/h, 0.3 m/s

DL-4 plus GPS Receiver Location information - Accuracy in differential mode<20 cm CEP

L1 C/A Code 6 cm RMS

L2 P(Y) Code 25 cm RMS (AS on)

L1 Carrier Phase 0.75 mm RMS (differential channel)

L2 Carrier Phase 2 mm RMS (differential channel)

Table 2 Comparision of 3D navigation solution on Lenovo X230 Laptop and Lumia 920 Mobile Phone.

Offline simulation results Accuracy oflocalization

Total time for simulationusing same sampled data

Solution time lag

50 Particles Laptop 2.5 m 1:28 min 0:02 min, 1 % of simulation time

Mobile Phone 2.5 m 1:29 min 0:02 min, 1 % of simulation time

100 Particles Laptop 2 m 1:29 min 0:01 min, 1 % of simulation time

Mobile Phone 2 m 1:33 min 0:10 min, 1 % of simulation time

500 Particles Laptop 1.5 m 1:29 min 0:03 min, 1 % of simulation time

Mobile Phone 1.5 m 7:00 min Too much time lag

J Sign Process Syst

Page 8: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

vehicle reaches the floor connecting the start (end) of a ramp,collision detection is applied with that particular ramp and thevehicle; if a collision is detected, vehicle is tilted to the angleof the ramp and the vertical and horizontal position is alteredaccording to (2) in 3D space. This process is applied until thesecond floor connecting the end (start) of the ramp is reached,after which the tilt to the vehicle is removed and the vehiclewill navigate in horizontal space. Ramp navigation can also beachieved without the knowledge of the slope of a ramp byusing collision detection logic alone or using information fromgyro measuring the tilt of the vehicle; nonetheless, we followthe approach described above.

The proposed method of localization was evaluated withsensor data obtained from field experiments. We measured thespeed and heading rates of a passenger car by driving it in twodifferent types of parking garages. First one is a seven storeyparking garage, and the second one is a three storey parkinggarage. In both these garages, a MEMS gyro [24], an OBD IIreader [25], and a differential global positioning system(DGPS) based device [26] were used to measure the headingrate, speed data, and location information respectively. Thespecifications of these devices are detailed in Table 1.

The experimental results of first type of parking garage arepresented in Table 2. This table presents a performance com-parison of the localization software system implementations onlaptop and mobile phone. In both these implementations, thespeed and heading sample data obtained as mentioned aboveare embedded into the software application and streamed with-in the application to the algorithm logic in a timed fashion so as

to simulate the real time scenario. This table indicates that byincreasing number of particles in the PF will increase theaccuracy until a threshold of accuracy is reached. On the otherhand it can be seen that a mobile phone by virtue of its lowprocessing power compared to a laptop, suffers a time lag inproviding a localization solution when large number of parti-cles are used in the PF algorithm and as such might not besuitable to use in real time scenarios in such cases.

The experimental results related to the second type ofparking garage, without applying collision detection can beseen in Fig. 6 depicting first and top floor, and with collisiondetection can be seen in Figs. 7, 8 and 9 depicting threedifferent floor sections of the parking garage localization solu-tion. In these figures, the ramps can be observed close to the leftand right side of the box representing the walls of the parkinggarage, smooth thick (red) curve is the weighted mean of theparticles. Dots (green) represent the particle states, and smooththin (black) curve in the Fig. 9 is GPS track. The test drive fordata collection in this second type of garage was made as acontinuous sensor data sampling, starting from the first floorand ending on the 3rd floor. The car was parked at differentparking spots in different floors during this drive. The offlinesimulation was made on the laptop implementation using thecontinuous data to check the efficiency of the PF applicationon the continuous data for longer duration. Figure 9 is the topfloor section of localization results, and it shows the accuracyof the localization solution to be within 2.5 m compared to theGPS track and the parking slot markings. The GPS track got itsfirst fix when we entered the top floor (starting from left

Figure 7 Trajectories of the 3D navigation position solution on the first floor along with particle states. a all the particle states b only the states ofparticles when the vehicle was parked at the parking space.

Figure 6 Trajectories of the VDR position solution, without applying PF and collision detection. a First floor, and the track starting point is from rightbottom to left middle, b top floor and the track starting point is from top left and ending at the right most parking space.

J Sign Process Syst

Page 9: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

bottom in the Fig. 9) and initial few meters of GPS positiontrack might have slight position error, so the comparison at thefirst parking space in the Fig. 9 would appear to be more than2.5 m, but when compared with the parking space the positionsolution is within 2.5 m. Currently by using inertial sensorsdata, speed data from car OBD and just 50 particles, we wereable to achieve the accuracy of 2.5 m. The accuracy could befurther improved by increasing the number of particles in thePF algorithm.

Since we have not performed rigorous tests in regards tothe performance analysis, comparison with the past relevantresearch works may not be feasible directly, but can be ana-lytically compared based on the position error of the proposedsolution and previous related research work. In [2] the pro-posal was to use combination of RSSI based grid-data, DR-integrated and maximum likely hood estimation solutions forvehicle localization; In the absence of RSSI information fromWLAN base stations, DR was used to advance the positionestimate; the position error was measured in terms of rootmean square error, average and 95 % radius errors, and theerror values are 2.06m, 1.36m and 5.13m respectively for theDR-integrated solution which was mitigated at frequent inter-vals by RSSI based position data; and the final position errorwas mentioned to be less than the width of a parking space(2.9 m) most of the times. In [33] a PDR solution wasproposed in which foot mounted inertial sensor, PF techniqueand 2.5D map of the build was used; the position accuracywas mentioned to be within 1 m.

As a further step towards real time multi-storey parkinggarage navigation solution, in addition to mobile phone withwindows OS, we used Bluetooth enabled ELM 327 OBDIIreader to obtain speed information from the land vehicle OBDto the mobile phone in real time. For heading information wehave used gyro and accelerometer samples from the gyro andaccelerometer sensors on-board the mobile phone. Since asmart phone gyro is a 3 axis gyro and the smart phone canbe placed in a vehicle in any orientation, we need to estimatethe heading of the vehicle using this gyro data from the smartphone. For this we have implemented a heading estimatoralgorithm based on the methods presented in [27]. Our imple-mentation takes gyro and accelerometer samples as input andprovides the near correct heading information of the vehicle,irrespective of the angle in which the mobile phone is placedin the vehicle. Currently we are still working on this applica-tion to provide real time navigation solution, the details andresults of which are left for our future work.

6.2 Seamless Navigation Evaluation Tests

We have performed another experiment in order to verify thefeasibility of the proposed seamless navigation solution switchfrom VDR to PDR. Figure 10 shows the plot of the speedsamples along with the step detecting accelerometer readings.From Fig. 10, on the time line, after 130th second, we canobserve that the car speed has gone to zero and the 3D acceler-ation signal variance increases, and this clearly shows that we

Figure 8 Trajectories of the 3D navigation position solution on the second floor along with particle states. a All the particle states b only the states ofparticles when the vehicle was parked at the parking space. Track starts from left lower section and ends at left top section.

Figure 9 Trajectories of the 3D navigation position solution on the third (top) floor alongwith GPS track (smooth thin/black curve) and particle states. aAll the particle states b only the states of particles when the vehicle was parked at 4 different parking spaces. Track starts from left lower section and endsat right most parking space in the top section.

J Sign Process Syst

Page 10: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

can detect when the user might have switched from vehiclemode to the walking mode. Additionally we have used thecollected sample data set to show relevant features such as peakfrequency and its amplitude shown in Fig. 11. The peak fre-quency and amplitude are computed by taking DFT of non-overlapping 5 s window from accelerometer data. In this figure,the driving, walking and stationary mode features are clearlyseparated. Using such feature sets and pattern recognitionmethods [23], we can accurately classify the mode in which asmart phone is. This enables us to switch the localization algo-rithm seamlessly from VDR to PDR. The simulation setup andconditions for obtaining such data is similar to those presented in[23]. There are many papers already that have proposed solu-tions for PDR, such as in [14]. Additionally the proposed

method of 3D maps and collision detection in this paper canalso be applied to PDR method in order not to have significantchange in the method of localization in terms of type of mapsand collision detection logics. Nevertheless combining the VDRand PDR in to one application along with the context recogniz-ing logic would thus enable seamless navigation solution.

7 Conclusions

We have described a simple and efficient method for localiz-ing a vehicle in a multi-storey parking garage. The methoduses only gyro and odometer data, applies collision detectionand particle filtering in 3D space. Unlike most of the existing

Figure 10 Driving and walkingcontext detection using the OBDsignals from the car and theaccelerometer data from themobile.

Figure 11 Features of Driving,Walking, and Static extractedusing sample data set of speed ofthe car, and inertial sensors of thesmart phone.

J Sign Process Syst

Page 11: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

techniques, external sources, such as radio signal beacons,altimeters are not needed. The proposed solution assumes thata detailed 3D structural model of the parking garage as shownin Figs. 1(a) or 2(a) is available in addition to initial positioninformation when entering the garage. These assumptions arerealistic and practical. Our experiments show that the solutionworks with reasonable accuracy using on-board sensors andthe solution can be used to provide valuable assistance infor-mation to the driver, e.g., guidance to vacant parking spot.

The feasibility of the method was demonstrated in twodifferent parking garages. We have also evaluated and shownthe feasibility of seamless navigation solution from VDR toPDR. We have introduced the 3D model maps representingthe vehicle model, and extended it as movingmaps, where sublocalization is required to be applied. We have currentlyimplemented the solution in a windows based smart phoneas an application and embedded sensor sample data as a sensordata feed to the algorithm. In the future, we plan to carry outmore rigorous tests, and use real time sensor data flow in to theapplication for localization algorithms, implement the VDR toPDR switching logic that is proposed in this paper, and extendthe concept to tunnels and multi-level interchanges to enableaccurate and seamless navigation services for drivers. Theapplicability of the proposed methods are not limited to ve-hicular navigation; in fact, it could be used in any indoorenvironment with a navigating object capable of measuringits ground speed and angular rate, where navigation involvesfloor to floor navigation via ramps or staircases in a multi-storey building scenario.

References

1. Chausse, F., Laneurit, J., and Chapuis, R. (2005). Vehicle localizationon a digital map using particles filtering. In Proc. IEEE IntelligentVehicles Symposium, Las Vegas, NV, 6-8 June (pp. 243-248).

2. Liu, J., Chen, R., Chen, Y., Pei, L., & Chen, L. (2012). iParking: AnIntelligent Indoor Location-Based Smartphone Parking Service.Sensors, 12(1), 14612–14629.

3. Ascher, C., Kessler, C.,Wankerl,M., & Trommer, G. G. (2010). DualIMU Indoor Navigation with particle filter based map-matching on asmartphone. In Proc. International Conference on IndoorPositioning and Indoor Navigation, Zurich, Switzerland, 15-17September.

4. Parviainen, J., Kantola, J., Collin, J. (2008). Differential barometry inpersonal navigation. Position, Location and Navigation Symposium,IEEE/ION 5-8 May. doi: 10.1109/PLANS.2008.4570051.

5. Bojja, J., Kirkko-jaakkola, M., Collin, J., & Takala, J. (2013). Indoor3d navigation and positioning of vehicles in multi-storey parkinggarages. In Proc. ICASSP 2013, Vancouver, Canada, 26–31 May(pp. 2548–2552).

6. French, R., & Lang, G. (1973). Automatic route control system. IEEETransactions on Vehicular Technology, 22(2), 36–41.

7. Gustafsson, F., Orguner, U., Schön, T. B., Skoglar, P., & Karlsson, R.

(2012). Navigation and tracking of road-bound vehicles using map

support. In A. Eskandarian (Ed.), Handbook of Intelligent Vehicles

(pp. 397–434). London: Springer.8. Wagner, J., Isert, C., Purschwitz, A., & Kistner, A. (2010). Improved

vehicle positioning for indoor navigation in parking garages throughcommercially available maps. In Proc. International Conference onIndoor Positioning and Indoor Navigation, Zurich, Switzerland, 15-17 September.

9. Fouque, C., & Bonnifait, P. (2010). Multi-hypothesis map-matchingon 3D navigable maps using raw GPS measurements. In Proc. IEEEConference on Intelligent Transportation Systems (ITSC), 2010 13thInternational, 19-22 Sept (pp.1498, 1503).

10. Pinto, M., Paulo Moreira, A., Matos, A., Sobreira, H., & Santos F.(2013). Fast 3D Map Matching Localisation Algorithm. Journal ofAutomation and Control Engineering, June. doi: 10.12720/joace.1.2.110-114.

11. Yang, N., Tian,W. F., Jin, Z. H., & Zhang, C. B. (2005). Particle filterfor sensor fusion in a land vehicle navigation system. MeasurementScience and Technology, 16(3), 677.

12. Fairfield, N., Wettergreen, D., & Kantor, G. (2010). SegmentedSLAM in three-dimensional environments. Journal of FieldRobotics, January, 27(1), 85–103.

13. Kümmerle, R., Hähnel, D., Dolgov, D., Thrun, S., & Burgard, W.(2009). Autonomous driving in a multi-level parking structure. InProc. IEEE International Conference on Robotics and Automation,Kobe, Japan, May (pp. 3395–3400).

14. Leppäkoski, H., Collin, J., & Takala, J. (2012). Pedestrian navigationbased on inertial sensors, indoor map, and WLAN signals. In Proc.IEEE International Conference on Acoustics, Speech and SignalProcessing , Kyoto, Japan, 25-30 March (pp. 1569–1572).

15. Kitanov, A.; Bisevac, S.; Petrovic, I. (2007). Mobile robot self-localization in complex indoor environments using monocular visionand 3D model. In Proc. International conference on Advanced intel-ligent mechatronics, IEEE/ASME, 4-7 Sept (pp.1,6).

16. Gordon, N., Ristic, B., & Arulampalam. S. (2004). Beyond theKalman filter: particle filters for tracking applications. ArtechHouse radar library. Artech House, Boston, Mass. [u.a.].

17. Chai, W., Chen, C., Edwan, E., Zhang, J., and Loffeld, O. (2012). INS/Wi-Fi based indoor navigation using adaptive Kalman filtering andvehicle constraints. In Proc. Workshop on Positioning Navigation andCommunication, Dresden, Germany, 15-16 March (pp. 36–41).

18. Gordon, N. J., Salmond, D. J., & Smith, A. F. M. (1993). Novelapproach to nonlinear/non-Gaussian Bayesian state estimation. Radarand Signal Processing, IEEE Proceedings-F, 140(2), 107–113.

19. Zhu, L., Hyyppä, J., Ruizhi, C., & Zhengjun, L. (2010). An approachof 3D model simplification for mobile phone based navigation appli-cation. Ubiquitous Positioning Indoor Navigation and LocationBased Service (UPINLBS), 14-15 Oct (pp.1-4).

20. Gerbaud, T., Polotski, V., & Cohen, P. (2004). Simultaneous explo-ration and 3D mapping of unstructured environments. In Proc. IEEEInternational Conference on Systems, Man and Cybernetics, 10-13Oct (pp.5333–5337).

21. Liu, T., Carlberg, M., Chen, G., Chen, J., Kua, J., & Zakhor, A.(2010). Indoor localization and visualization using a human-operated backpack system. In Proc. International Conference onIndoor Positioning and Indoor Navigation (IPIN), 2010, 15-17 Sept(pp.1,10).

22. Akenine-Möller, T., Haines, E., & Hoffman, N. (2008). Real-TimeRendering, third edition, A.K. Peters Ltd, Natick, MA (pp. 1045).

23. Kantola, J., Perttunen, M., Leppänen, T., Collin, J., & Riekki, J.(2010). Context Awareness for GPS-Enabled Phones. In Proc. The2010 International Technical Meeting of The Institute of Navigation,San Diego, CA, January (pp. 117–124).

24. VTI SCC1300 MEMS gyro, product information. http://www.muratamems.fi/products/gyroscopes/scc1300-combined-gyroscope-and-accelerometer

J Sign Process Syst

Page 12: Indoor Localization Methods Using Dead Reckoning and 3D Map Matching

25. CarChip OBD II reader, product information. http://www.carchip.com/Products/8226.asp

26. DGPS system - NovAtel DL-4 Plus, product information. http://www.novatel.com/assets/Documents/Papers/DL4plus.pdf

27. Masakatsu. K, & Takeshi. K. (2003). Personal positioning based onwalking locomotion analysis with self-contained sensors and a wear-able camera. In Proc. of the 2nd IEEE/ACM International Symposiumon Mixed and Augmented Reality. IEEE Computer Society.

28. Chai; W., Chen; C., Edwan, E.; Zhang, J., & Loffeld, O. (2012). 2D/3D indoor navigation based on multi-sensor assisted pedestrian nav-igation in Wi-Fi environments. Ubiquitous Positioning, IndoorNavigation, and Location Based Service (UPINLBS), 3-4 Oct(pp.1,7).

29. Freyberger, F., Kampmann, P., & Schmidt, G.K. (1990).Constructing maps for indoor navigation of a mobile robotby using an active 3D range imaging device. In Proc. IEEEInternational Workshop on Intelligent Robots and Systems .‘Towards a New Frontier of Applications’, IROS’90 , (pp.143-148).

30. Donate, A., & Xiuwen, L. (2010). 3D structure estimation frommonocular video clips. In Proc. IEEE Computer SocietyConference on Computer Vision and Pattern RecognitionWorkshops, 13-18 June (pp.17–24).

31. Dryanovski, I., Morris, W., & Jizhong, X. (2010). Multi-volume occupancy grids: An efficient probabilistic 3D map-ping model for micro aerial vehicles. In Proc. IEEE/RSJInternational Conference on Intelligent Robots and Systems(IROS), 18-22 Oct (pp.1553–1559).

32. Gutmann, J.-S., Fukuchi, M., & Fujita, M. (2005). A Floor andObstacle Height Map for 3D Navigation of a Humanoid Robot. InProc. IEEE International Conference on Robotics and Automation,18-22 April (pp.1066–1071).

33. Oliver, W., & Harle, R.. (2008). Pedestrian Localisation for IndoorEnvironments. In Proc. 10th International Conference on UbiquitousComputing, 21-24 Sept (pp.114–123).

Jayaprasad Bojja (S'13) re-ceived Bachelors of Engineeringin “Computer Science and Engi-neering” from Osmania Universi-ty, Hyderabad, India in 1998.Since then he has been workingin Software Industry in differentroles , the last role beforeswitching to higher studies was,as Ext-Technical Consultant atNokia and Team lead at WiproTechnologies. He has receivedthe degree ofM.Sc. inMultimediaSignal Processing in 2011 withHonours, fromTampere Universi-

ty of Technology, Tampere, Finland. Currently he is a researcher and aPh.D. candidate at “Department of Pervasive Computing”, TampereUniversity of Technology, Finland. His professional interests includesoftware engineering, artificial Intelligence, multimedia, sensors, contextawareness, and navigation technologies.

Martti Kirkko-Jaakkola receivedhis M.Sc. and D.Sc. (Tech.) de-grees from Tampere University ofTechnology (TUT), Finland, in2008 and 2013, respectively.From 2006 to 2013 he worked asa research assistant and researcherat the Department of PervasiveComputing, TUT, including oneyear as a visiting NPI Student atthe European Space Research andTechnology Centre, Noordwijk,The Netherlands. He currentlyworks as a senior researcher atthe Finnish Geodetic Institute,

Kirkkonummi, Finland, where his research interests include precise sat-ellite positioning and low-cost MEMS sensors.

Jussi Collin received the M.Sc.and D.Sc. (Tech.) degrees fromthe Tampere University of Tech-nology, Tampere, Finland, in2001 and 2006, respectively, spe-cialized in sensor-aided personalnavigation. He is currently a Se-nior Research Fellowwith the De-partment of Pervasive Comput-ing, Tampere University of Tech-nology. His research interests in-clude statistical signal processingand novel sensor-based naviga-tion applications.

JarmoTakala received his M.Sc.(hons) degree in Electrical Engi-neering and D.Sc. (Tech.) degreein Information Technology fromTampere University of Technolo-gy, Tampere, Finland (TUT) in1987 and 1999, respectively.From 1992 to 1995, he was aResearch Scientist at VTT-Automation, Tampere, Finland.Between 1995 and 1996, he wasa Senior Research Engineer atNokia Research Center, Tampere,Finland. From 1996 to 1999, hewas a Researcher at TUT. Cur-

rently, he is Professor in Computer Engineering at TUT and Head of theDepartment of Computer Systems of TUT. His research interests includecircuit techniques, parallel architectures, and design methodologies fordigital signal processing systems. During 2007-2011 he was AssociateEditor for IEEETransactions on Signal Processing and in 2012-2013 he isthe Chair of IEEE Signal Processing Society’s Design and Implementa-tion of Signal Processing Systems Technical Committee.

J Sign Process Syst