From 6e5de8e5ec9e0a13c9ae7bb1b00d20d69e6fe9bf Mon Sep 17 00:00:00 2001 From: FrankE Date: Sun, 14 Feb 2016 13:42:35 +0100 Subject: [PATCH] worked on introduction, realted-work and system --- tex/chapters/introduction.tex | 9 ++- tex/chapters/relatedwork.tex | 62 +++++++++++------- tex/chapters/system.tex | 119 +++++++++++++++++++--------------- tex/misc/functions.tex | 2 +- 4 files changed, 108 insertions(+), 84 deletions(-) diff --git a/tex/chapters/introduction.tex b/tex/chapters/introduction.tex index 6ae014c..9a9f5c7 100644 --- a/tex/chapters/introduction.tex +++ b/tex/chapters/introduction.tex @@ -37,11 +37,10 @@ The discrete model prevents the barometer's full potential. It could further be shown that a correct estimation strongly depends on the quality of $z$-transitions. To address this problem we extended the graph by adding realistic stairs, allowing a step-wise transition in the $z$-direction. -Second, the heading for modelling the pedestrian's walking behaviour is calculated between two adjacent nodes. -This restricts the transition to perform only discrete \SI{45}{\degree} turns. In most scenarios this assumption performs -well, since the... However, walking sharp turns and ... is not -\commentByToni{Ich denke hier kann Frank E. noch bissle was schreiben, oder?} -\commentByFrank{ja das werde ich noch anpassen, dass es stimmt und die probleme beschreibt} +Second, the heading for modelling the pedestrian's walking behaviour is calculated between two adjacent nodes +and restricts the transition to perform only discrete \SI{45}{\degree} turns. While this is sufficient +for most cases, minor heading changes are often ignored and the posterior distribution (after walking) +is not smoothly spread. To improve the complex problem of localising a person indoors, prior knowledge given by a navigation system can be used. Such applications are used to navigate a user to his desired destination. diff --git a/tex/chapters/relatedwork.tex b/tex/chapters/relatedwork.tex index 814d40c..ef79836 100644 --- a/tex/chapters/relatedwork.tex +++ b/tex/chapters/relatedwork.tex @@ -1,8 +1,9 @@ \section{Related Work} \label{sec:relatedWork} + Like mentioned before, most state-of-the-art systems use recursive state estimators like Kalman- and particle filters. -They differ mainly by the sensors used, their probabilistic models and how the environmental information are incorporated. +They differ mainly by the used sensors, their probabilistic models and how environmental information is incorporated. For example \cite{Li2015} recently presented an approach combining methods of pedestrian dead reckoning (PDR), \docWIFI{} fingerprinting and magnetic matching using a Kalman filter. While providing good results, fingerprinting methods require an extensive offline calibration phase. Therefore, many other systems like \cite{Fang09} or \cite{Ebner-15} @@ -12,41 +13,48 @@ usage of Kalman filters problematic \cite{sarkka2013bayesian, Nurminen2014}. All this shows, that sensor models differ in many ways and are a subject in itself. 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. -Therefore, we are not that interested in the different sensor representations but more in the state transition as well as incorporating environmental and navigational knowledge. +However, within this work, we use simple models, configured using a handful of empirically chosen parameters and +address their inaccuracies by harnessing prior information like the pedestrian's desired destination. Therefore, +instead of examining different sensors and their contribution to the localisation process, we will focus +on the state transition and how to incorporate environmental and navigational knowledge. 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 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}. +using both, a walking direction and a to-be-walked distance, starting from the previous position. +If the line-of-sight between the new and the old position intersects a wall, the probability for this +transition 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". 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. +must be executed and thus often yields a high computational complexity. These disadvantages can be avoided by using spatial models like indoor graphs. -Regarding modelling approaches, two main classes can be distinguished: symbolic and geometric spatial models \cite{Afyouni2012}. +Here, two main classes can be distinguished: symbolic and geometric spatial models \cite{Afyouni2012}. Especially geometric spatial models (coordinate-based approaches) are very popular, since they integrate metric properties to provide highly accurate location and distance information. One of the most common environmental representations in indoor localization literature is the Voronoi diagram \cite{Liao2003}. It represents the topological skeleton of the building's floorplan as an irregular tessellation of space. This drastically removes degrees of freedom from the map, what results in a low complexity. -In the work of \cite{Nurminen2014} a Voronoi diagram is used to approximate the human -movement. +In the work of \cite{Nurminen2014} a Voronoi diagram is used to approximate the human movement. It is assumed that the pedestrian can be anywhere on the topological links. The probabilities of changing to the next link are proportional to the total link lengths. -However, for highly accurate localisation and large-scale buildings, this network of one-dimensional +However, for highly accurate localisation in large-scale buildings, this network of one-dimensional curves is not suitable \cite{Afyouni2012}. -Therefore, \cite{Hilsenbeck2014} searches for large open spaces (e.g. a lobby) and extends the Voronoi diagram by adding those two-dimensional areas. -The final graph is then created by sampling nodes in regular intervals across the links and filling up the open spaces in a tessellated manner. -Similar to \cite{Ebner-15}, they provide a state transition model that selects an edge and a node -from the graph according to a sampled distance and heading. +Therefore, \cite{Hilsenbeck2014} searches for large open spaces (e.g. a lobby) and extends the Voronoi diagram +by adding those two-dimensional areas. +The final graph is then created by sampling nodes in regular intervals across the links and filling up the open +spaces in a tessellated manner. Similar to \cite{Ebner-15}, they provide a state transition model that selects +an edge and a node from the graph according to a sampled distance and heading. Nevertheless, most corridors are still represented by just one topological link. -The complexity is reduced but does not allow arbitrary movements and leads to suboptimal trajectories. -Far more flexible and variable geometric spatial models are regular tessellated approaches like grid-based models. -Those techniques are trivially implemented, but yet very powerful \cite{Afyouni2012}. -Here, a square-shaped or hexagonal grid covers the entire map. Especially in the area of simultaneous localisation and mapping (SLAM), so-called occupancy-grid approaches are very popular \cite{elfes1989using, Thrun2003}. -In an occupancy grid, a high probability is assigned to cells within accessible space, while cells occupied by obstacles or walls are less likely. -Additionally, every grid cell is able to hold some context information about the environment (e.g. elevators or stairs) or the behaviour of a pedestrian at this particular position (e.g. jumping or running). +While the complexity is reduced, it does not allow arbitrary movements and leads to suboptimal trajectories. +Far more flexible and variable geometric spatial models are regularly tessellated approaches e.g. based on grids. +Those techniques are trivially implemented, but yet very powerful. +In \cite{Afyouni2012}, a square-shaped or hexagonal grid covers the entire map. +Especially in the area of simultaneous localisation and mapping (SLAM), so-called occupancy-grid approaches are +very popular \cite{elfes1989using, Thrun2003}. +Occupancy grids assign a high probability to cells within the accessible space. +Likewise, cells occupied by obstacles or walls are less likely. +Additionally, every grid cell is able to hold some context information about the environment (e.g. elevators or stairs) +or the behaviour of a pedestrian at this particular position (e.g. jumping or running). A similar approach is presented in \cite{Li2010}, \cite{Ebner-15} and is also used within this work. By assuming that the floorplan is given beforehand, the occupied cells can be removed. @@ -60,14 +68,18 @@ 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. +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. +However, many of this information is difficult to ascertain in real-time or imply 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. -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. +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. diff --git a/tex/chapters/system.tex b/tex/chapters/system.tex index 345778e..8a2950c 100644 --- a/tex/chapters/system.tex +++ b/tex/chapters/system.tex @@ -1,59 +1,72 @@ \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 pedestrian’s 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. + 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, \mObsHeading \mStatePressure \in \R \enspace, + \end{equation} + % + where $x, y, z$ represent the position in 3D space, $\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$. + Furthermore, the state transition models the pedestrian's movement based on random walks on graphs, + described in section \ref{sec:trans}. + %It should be noted, that we also include the current observation $\mObsVec_{t}$ in it. + Differing from the usual notation, the state transition also includes the current observation $\mObsVec_{t}$. + \commentByFrank{brauchen wir hier noch das cite?} -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, \mObsSteps, \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 with respect to some fixed point in time. -For incorporating the highly different sensor types, one should refer to the process of probabilistic sensor fusion \cite{Khaleghi2013}. -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)_\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 barometer information is evaluated using $p(\vec{o}_t \mid \vec{q}_t)_\text{baro}$, 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. + 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, \mObsSteps, \mObsPressure) \enspace, + \end{equation} + % + where $\mRssiVec_\text{wifi}$ and $\mRssiVec_\text{ib}$ contain the measurements of all nearby \docAP{}s (\docAPshort{}) + and \docIBeacon{}s, respectively. $\mObsHeading$ and $\mObsSteps$ describe the relative angular change and the number + of steps detected for the pedestrian. + + Finally, $\mObsPressure$ is the relative barometric pressure with respect to some fixed point in time. + For further information on how to incorporate such highly different sensor types, + one should refer to the process of probabilistic sensor fusion \cite{Khaleghi2013}. + By assuming statistical independence of all sensors, the probability density of the state evaluation is given by + % + \begin{equation} + %\begin{split} + p(\vec{o}_t \mid \vec{q}_t) = + 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} + \enspace. + %\end{split} + \label{eq:evalBayes} + \end{equation} + % + Here, every single component refers to a probabilistic sensor model. + The barometer information is evaluated using $p(\vec{o}_t \mid \vec{q}_t)_\text{baro}$, + whereby absolute position information is given by $p(\vec{o}_t \mid \vec{q}_t)_\text{ib}$ for + \docIBeacon{}s and by $p(\vec{o}_t \mid \vec{q}_t)_\text{wifi}$ for \docWIFI{}. -It is well known that finding analytic solutions for densities is very difficult and they only exit in rare cases. -Therefore, numerical solutions like Gaussian filters or the broad class of Monte Carlo methods are deployed \cite{sarkka2013bayesian}. -Since we assume that indoor localisation is a time-sequential, non-linear and non-Gaussian process, a particle filter for approximating the posterior distribution is chosen. -Within this work the state transition $p(\mStateVec_{t} \mid \mStateVec_{t-1}, \mObsVec_{t})$ is used as proposal distribution, what is also known as CONDENSATION algorithm \cite{Isard98:CCD}. + It is well known that finding analytic solutions for densities is very difficult and only possible in rare cases. + Therefore, numerical solutions like Gaussian filters or the broad class of Monte Carlo methods are deployed \cite{sarkka2013bayesian}. + Since we assume indoor localisation to be a time-sequential, non-linear and non-Gaussian process, + a particle filter is chosen as approximation of the posterior distribution. + Within this work the state transition $p(\mStateVec_{t} \mid \mStateVec_{t-1}, \mObsVec_{t})$ is used as proposal distribution, + what is also known as CONDENSATION algorithm \cite{Isard98:CCD}. + \commentByFrank{caps? fehlt da noch was?} diff --git a/tex/misc/functions.tex b/tex/misc/functions.tex index 6237d1a..a84b6da 100644 --- a/tex/misc/functions.tex +++ b/tex/misc/functions.tex @@ -36,7 +36,7 @@ \newcommand{\mObsHeading}{\Delta\mHeading} % symbol used for the observation heading \newcommand{\mStateHeading}{\mHeading} % symbol used for the state heading -\newcommand{\mSteps}{s} +\newcommand{\mSteps}{\text{steps}} \newcommand{\mObsSteps}{\mSteps} \newcommand{\mNN}{\text{nn}}