This commit is contained in:
2016-02-10 08:54:19 +01:00
9 changed files with 150 additions and 55 deletions

View File

@@ -3,8 +3,8 @@
DUMMY ABSTRACT. We present an indoor localisation system that integrates different sensor modalities,
namely Wi-Fi, barometer, iBeacons, step- and turn-detection for localisation of pedestrians within buildings
over multiple floors. To model the pedestrian's movement, which is constrained by walls and other obstacles,
we propose a state transition based upon random walks on graphs. \sout{This model also frees us from the burden of
frequently updating the system.}
we propose a state transition based upon random walks on graphs.
%This model also frees us from the burden of frequently updating the system.
In addition we make use of barometer information to estimate the current floor.
\commentByFrank{entweder alle sensoren nennen, oder weglassen? sonst wirkt es nicht schluessig}ds
Furthermore, we present a statistical approach to avoid the incorporation of faulty heading information caused

View File

@@ -1,4 +1,5 @@
\section{Transition Model}
\label{sec:trans}
To sample only transitions $p(\mStateVec_{t} \mid \mStateVec_{t-1})$ that are actually feasible
within the environment, we utilize a \SI{20}{\centimeter}-gridded graph

View File

@@ -60,7 +60,9 @@ Walking through a door has a lower probability than remaining on the corridor, s
This can be tackled by making such areas more likely.
Therefore, a novel approach for detecting doors using again the inverted graph and the principal component analysis (PCA) \cite{Hotelling1933} is presented within this work.
Finally, it is now possible to calculate more natural and realistic paths using the weighted graph. We introduce two different methods which make use of the given destination and thereby provide a targeted movement.
Finally, it is now possible to calculate more natural and realistic paths using the weighted graph.
We introduce two different methods which make use of the given destination and thereby provide a targeted movement.
To the best of our knowledge, our approach is the first one that uses prior navigation knowledge to increase the localisation results.

View File

@@ -8,10 +8,7 @@ require an extensive offline calibration phase. Therefore, many other systems li
are using signal strength prediction models like the log-distance model or wall-attenuation-factor model.
Additionally, the sensors noise is not always Gaussian or satisfies the central limit theorem, what makes the
usage of Kalman filters problematic \cite{sarkka2013bayesian, Nurminen2014}.
All this shows, that sensor models differ in many ways and are a subject in itself.
\commentByFrank{sagt man das so? meinst du: haben ihr eigenes forschungsgebiet?}
\commentByToni{"Sie sind ein Thema für sich". Glaub schon das man das so sagt. its own theme gibt es noch. find ich aber nicht so fresh}
A good discussion on different sensor models can be found in \cite{Yang2015}, \cite{Gu2009} or \cite{Khaleghi2013}.
However, within this work, we use simple models, configured using a handful of parameters and address their inaccuracies by harnessing prior information like the pedestrian's desired destination.
@@ -19,11 +16,8 @@ Therefore, we are not that interested in the different sensor representations bu
A widely used and easy method for modelling the movement of a pedestrian, is the prediction of a new position
by adding an approximated covered distance to the current position. In most cases, a heading serves as
walking direction. If the connection line \commentByFrank{graph? oder generell?: line-of-sight?} \commentByToni{ganz generell. deshalb nur connection line. line of sight ist ja mehr blickachse oder sichtlinie}
between the new and the old position intersects a wall, the probability for the new position is set to
zero \cite{Woodman08-PLF, Blanchert09-IFF, Koeping14-ILU}.
walking direction. If the connection line between the new and the old position intersects a wall, the probability for the new position is set to zero \cite{Woodman08-PLF, Blanchert09-IFF, Koeping14-ILU}.
However, as \cite{Nurminen13-PSI} already stated, it "gives more probability to a short step".
\commentByFrank{waende bevorzugen kurze schritte? wird das klar was hier gemeint ist?}
An additional drawback of these approaches is that for every transition an intersection-test
must be executed. This can result in a high computational complexity.
@@ -58,28 +52,21 @@ By assuming that the floorplan is given beforehand, the occupied cells can be re
The remaining cells are described by its centre and represent all free spaces in the indoor environment.
A graph is defined by using the centres as nodes and connecting direct neighbours with edges.
In order to enable floor changes, some approaches suggest to simply connect the nodes at staircases in a discrete manner \cite{}. However, as mentioned before changing the floor in a discrete does not resemble real-world conditions. Therefore, \cite{} presented a stepwise floor change based on a hexagonal gridded-graph. A similar approach is presented in the here presented approach for a square-shaped grid.
In order to enable floor changes, some approaches suggest to simply connect the nodes at staircases \cite{Ebner-15, Hilsenbeck2014}.
However, as mentioned before changing the floor in a discrete manner does not resemble real-world conditions.
Therefore, \cite{GarciaPuyol2014} presented a stepwise floor change based on a hexagonal gridded-graph.
We introduce a similar approach for square-shaped grids.
All this allows a wide range of possibilities for modelling the pedestrian's movement, while only sampling valid locations.
In virtual environments like video games and simulations, the human motion is often modelled using graphs and path finding techniques.
Here, the goal is not only to provide a shortest path, but also the least cost path, most natural path or least dangerous path.
For example \cite{Bandi2000} uses an A* algorithm to search a 3D gridded environment for the shortest path to a goal.
An additional smoothing procedure is performed to make the path more natural.
They are considering foot span, body dimensions and obstacle dimensions when determining whether an obstacle is surmountable.
However, many of those information are difficult to ascertain in real-time or mean additional effort in real-world environments.
Therefore, more realistic simulation models, mainly for evacuation simulation, are just using a simple shortest path on regular tessellated graphs \cite{Sun2011, tan2014agent}. A more costly, yet promising approach is shown by \cite{Brogan2003}. They use a data set of previous recorded walks to create a model of realistic human walking paths.
Computer Games
Evacuation Route Planning
In computer games like the sims or starcraft, intelligent npc movement is a key factor. hierbei geht es nicht nur um das umlaufen von hindernissen sondern auch um eine möglichst natürliche art der bewegung.
ansätze die dijkstra einfach zum navigieren nutzen.
ansätze aus der robotic um einen roboter von a nach b zu schicken
the idea of using navigational knowledge to simulate the human movement
Finally, it seems that currently none of the localisation system approaches are using realistic walking paths as additional source of information to provide a more targeted and robust movement. Most common systems are sampling a new state only in regard of the user's heading and speed using one of the above mentioned indoor graphs.

View File

@@ -78,7 +78,9 @@
\subsection{Step- \& Turn-Detection}
To prevent degradation within the particle-filter \cite{??} due to downvoting of particles with increased
heading deviation, we incorporate the turn-detection as control-data \commentByToni{ich würde es jetzt nicht unbedingt controldata nennen. einfach nur das wir die observation in die transition integrieren. fertig.} directly into the transition
heading deviation, we incorporate the turn-detection as control-data
\commentByToni{ich würde es jetzt nicht unbedingt controldata nennen. einfach nur das wir die observation in die transition integrieren. fertig. für den cite oben habe ich eine sehr sehr gute quelle. der beschreibt das ganz gut. hab das bei mir in der MA so begründet: Another big disadvantage is the high possibility of sample impoverishment due to a small measurement noise. This happens since accurate observations result in high peaks of the evaluation density and therefore the importance density is not able to sample outside that peak [IB98b].}
directly into the transition
$p(\mStateVec_{t} \mid \mStateVec_{t-1}, \mObsVec_{t-1})$.
\cite{thrun?}\cite{lukas2014?} to get a more directed sampling instead of a truly random one.

View File

@@ -1,24 +1,50 @@
\section{Recursive Density Estimation}
\section{Recursive State Estimation}
We consider indoor localisation as a time-sequential, non-linear and non-Gaussian state estimation problem.
Using a recursive Bayes filter that satisfies the Markov property, the posterior distribution at time $t$ can be written as
\begin{equation}
\arraycolsep=1.2pt
\begin{array}{ll}
&p(\mStateVec_{t} \mid \mObsVec_{1:t}) \propto\\
&\underbrace{p(\mObsVec_{t} \mid \mStateVec_{t})}_{\text{evaluation}}
\int \underbrace{p(\mStateVec_{t} \mid \mStateVec_{t-1}, \mObsVec_{t})}_{\text{transition}}
\underbrace{p(\mStateVec_{t-1} \mid \mObsVec_{1:t-1})d\vec{q}_{t-1}}_{\text{recursion}} \enspace,
\end{array}
\label{equ:bayesInt}
\end{equation}
where $\mObsVec_{1:t} = \mObsVec_{1}, \mObsVec_{1}, ..., \mObsVec_{t}$ is a series of observations up to time $t$.
The hidden state $\mStateVec$ is given by
\begin{equation}
\mStateVec = (x, y, z, \mObsHeading, \mStatePressure),\enskip
x,y,z,\mStatePressure \in \R \enspace,
\end{equation}
where $x, y, z$ represent the 3D position, $\mObsHeading$ the user's heading and $\mStatePressure$ the relative pressure prediction in hectopascal (hPa).
The recursive part of the density estimation contains all information up to time $t$.
Further, the state transition models the pedestrians movement based upon random walks on graphs, which will be described in section \ref{sec:trans}.
It should be noted, that we also include the current observation $\mObsVec_{t}$ in it.
Containing all relevant sensor measurements to evaluate the current state, the observation vector is defined as follows:
\begin{equation}
\mObsVec = (\mRssiVec_\text{wifi}, \mRssiVec_\text{ib}, \mObsHeading, \mObsPressure) \enspace,
\end{equation}
where $\mRssiVec_\text{wifi}$ is the Wi-Fi and $\mRssiVec_\text{ib}$ the iBeacon signal strength vector.
The information, if a step or turn was detected, is given as a Boolean value.
\commentByToni{Wie sieht die Observation nun genau aus? Fehlt da nicht Step und Turn?}
Finally, $\mObsPressure$ is the relative barometric pressure referring to some fixed point in time.
For incorporating the highly different sensor types, one should refer to the process of probabilistic sensor fusion \cite{}.
By assuming statistical independence of all sensor models, the probability density of the state evaluation is given by
\begin{equation}
\begin{split}
&p(\vec{o}_t \mid \vec{q}_t, \vec{q}_{t-1}) = \\
&p(\vec{o}_t \mid \vec{q}_t, \vec{q}_{t-1})_\text{turn}
\,p(\vec{o}_t \mid \vec{q}_t, \vec{q}_{t-1})_\text{step} \\
&p(\vec{o}_t \mid \vec{q}_t)_\text{baro}
\,p(\vec{o}_t \mid \vec{q}_t)_\text{ib}
\,p(\vec{o}_t \mid \vec{q}_t)_\text{wifi}
\end{split} \enspace.
\label{eq:evalBayes}
\end{equation}
Here, every single component refers to a probabilistic sensor model.
The heading information is evaluated using $p(\vec{o}_t \mid \vec{q}_t, \vec{q}_{t-1})_\text{turn}$, the step length using a step detection process by $p(\vec{o}_t \mid \vec{q}_t, \vec{q}_{t-1})_\text{step}$, using $p(\vec{o}_t \mid \vec{q}_t)_\text{baro}$ the barometer evaluates the current floor, whereby absolute position information is given by $p(\vec{o}_t \mid \vec{q}_t)_\text{ib}$ for iBeacons and by $p(\vec{o}_t \mid \vec{q}_t)_\text{wifi}$ for Wi-Fi.
\commentByFrank{particle-filter wie bei lukas mit $\vec{o}_{t}$ in transition und $\vec{q}_{t-1}$ in eval??}
\commentByFrank{brauchen wir in der observation ueberhaupt noch $q_{t-1}$??}
\commentByFrank{das ist die basis fuer unser system}
\begin{equation}
p(\mStateVec_{t} \mid \langle \mObsVec \rangle_{t}) = \\
p(\mObsVec_{t} \mid \mStateVec_{t})
\int
p(\mStateVec_{t} \mid \mStateVec_{t-1}, \mObsVec_{t})
p(\mStateVec_{t-1} \mid \langle \mObsVec \rangle_{t-1}
d\mStateVec_{t-1}
\end{equation}
\begin{equation}
\mObsVec = (\mRssiVec_\text{wifi}, \mRssiVec_\text{ib}, \mObsHeading, \mObsPressure)
\end{equation}
\begin{equation}
\mStateVec = (x, y, z, \mObsHeading, \mStatePressure),\enskip
x,y,z,\mStatePressure \in \R
\end{equation}