added recent TeX
This commit is contained in:
@@ -1,2 +1,6 @@
|
||||
\section{Conclusion}
|
||||
|
||||
\section{Future Work}
|
||||
\commentByFrank{balance zwischen den einzelnen wahrscheinlichkeiten ist oft ein schmaler grad. wieviel turn erlauben, wieviel auf den pfad zwingen. das verbesern}
|
||||
\commentByFrank{position der APs wissen ist viel arbeit. vereinfachen durch test-walks auf vorgegebenen pfaden -> numerisch optimieren wo APs sind}
|
||||
|
||||
|
||||
@@ -9,6 +9,9 @@
|
||||
\item Vergleich zum Schluss das neue System mit dem Alten um eine schöne Conclusion der Verbesserungen einzuleiten.
|
||||
\end{itemize}
|
||||
|
||||
\commentByFrank{we start with a uniform distribution $\mStateVec_0$}
|
||||
|
||||
\commentByFrank{hinweis auf die verschiedenen geraete (smartphones) und unterschiede, wlan/baro}
|
||||
|
||||
|
||||
\commentByFrank{sensorausfall simulieren, z.b. in der mitte, oder auf einer treppe}
|
||||
@@ -23,4 +26,4 @@ mit pfad laeuft es falsch, weil die andere treppe kuerzer zum ziel ist und das w
|
||||
\commentByFrank{zu grosser einfluss vom pfad ist also kein allheilmittel.. kann, wie beim treppenhaus, auch nach hinten los gehen}
|
||||
|
||||
|
||||
\commentByFrank{path1: bad start due to nearby AP and bad parameters (path-loss too high)}
|
||||
\commentByFrank{path1: bad start due to nearby AP and bad parameters (path-loss too high): high starting errors: median better}
|
||||
|
||||
@@ -1,53 +1,4 @@
|
||||
\section{Floorplan/Path/whatever (RENAME)}
|
||||
\section{Flooplan - REMOVE}
|
||||
|
||||
\subsection{wall avoidance}
|
||||
|
||||
\begin{figure}
|
||||
\includegraphics[angle=-90, width=\columnwidth, trim=15 15 15 15]{floorplan_importance}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\subsection{door detection}
|
||||
|
||||
invert grid,
|
||||
find k-NN within inversion
|
||||
calculate centroid, covariance and eigenvalues
|
||||
when centroid OK and eigenvalues OK: is door/passage
|
||||
|
||||
\commentByFrank {
|
||||
doors serve 3 purposes:
|
||||
- reverting the downvote due to "near walls"
|
||||
- hint for a pathless-movement-model how to leave rooms
|
||||
- also detecting narrow passages (center the path)
|
||||
}
|
||||
|
||||
Doors are usually anchored between two (thin) walls and have a normed width. Examining only a limited region
|
||||
around the door, its surrounding walls describe a flat ellipse with the same center as the door itself. It is thus
|
||||
possible to detect doors within the floorplan using the PCA \todo{cite}. To describe the surroundings of a door,
|
||||
we create and inverted version of our grid whereby the contained nodes denote walls and other obstacles.
|
||||
To decide whether a node within the (non-inverted) grid belongs to a door, we use $k$-NN \todo{cite} to fetch its
|
||||
$k$ nearest neighbors within the inverted grid. If the distance \todo{equation} between the centroid of those neighbors
|
||||
and the node-in-question is above certain threshold, the node does not belong to a door. Assuming the distance was fine,
|
||||
we compare the two eigenvalues $\{e_1, e_2 \mid e_1 > e_2\}$ , determined by the PCA. If their ratio $\frac{e_1}{e_2}$ is above
|
||||
a certain threshold (flat ellipse)
|
||||
the node-in-question belongs to a door. Fig. \ref{fig:doorPCA} depicts all three cases where the node is part of a door (left),
|
||||
the distance between node and k-NN centroid is above the threshold (middle) and the ration between $e_1$ and $e_2$ is below the
|
||||
threshold (right).
|
||||
|
||||
\begin{figure}
|
||||
\includegraphics[width=\columnwidth]{door_pca}
|
||||
\caption{Detect doors within the floorplan using k-NN and PCA. While the white nodes are walkable, the black ones represent walls. The grey node is the one in question.}
|
||||
\label{fig:doorPCA}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\subsection{pathfinding}
|
||||
|
||||
\begin{figure}
|
||||
\includegraphics[angle=-90, width=\columnwidth, trim=15 15 15 15]{floorplan_paths}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}
|
||||
\includegraphics[angle=-90, width=\columnwidth, trim=15 15 15 15]{floorplan_dijkstra_heatmap}
|
||||
\end{figure}
|
||||
|
||||
|
||||
@@ -115,8 +115,8 @@
|
||||
% \vec{c} = \frac{ \sum_{v_{x,y,z} \in N'} v_{x,y,z} }{k}
|
||||
%\end{equation}
|
||||
|
||||
Assuming the distance was fine, we compare the two eigenvalues $\{e_1, e_2 \mid e_1 > e_2\}$ , determined by the PCA.
|
||||
If their ratio $\frac{e_1}{e_2}$ is above a certain threshold (flat ellipse)
|
||||
Assuming the distance was fine, we compare the two eigenvalues $\{\lambda_1, \lambda_2 \mid \lambda_1 > \lambda_2\}$ , determined by the PCA.
|
||||
If their ratio $\frac{\lambda_1}{\lambda_2}$ is above a certain threshold (flat ellipse)
|
||||
the node-in-question belongs to a door or some kind of narrow passage.
|
||||
|
||||
\begin{figure}
|
||||
@@ -141,6 +141,7 @@
|
||||
|
||||
|
||||
\subsection{path estimation}
|
||||
\label{sec:pathEstimation}
|
||||
|
||||
Based on aforementioned assumptions, the final importance for each node is
|
||||
|
||||
@@ -168,7 +169,7 @@
|
||||
\begin{split}
|
||||
\text{weight}(v_{x,y,z}, v_{x',y',z'}) =
|
||||
\frac
|
||||
{ \text{dist}(v_{x,y,z}, v_{x',y',z'}) }
|
||||
{ \| v_{x,y,z} - v_{x',y',z'} \| }
|
||||
{ \text{stretch}(\text{imp}_{x',y',z'}) }
|
||||
,
|
||||
\end{split}
|
||||
@@ -197,34 +198,76 @@
|
||||
Based on the previous calculations, we propose two approaches to incorporate the prior
|
||||
knowledge into the transiton model.
|
||||
|
||||
During every transition, the first algorithm calculates the centroid $\vec{c}$ of the current sample-set:
|
||||
\begin{equation}
|
||||
\vec{c} = \frac
|
||||
{ \sum_{\mStateVec_{t-1}} (\mState_{t-1}^x, \mState_{t-1}^y, \mState_{t-1}^z)^T }
|
||||
{N}
|
||||
\end{equation}
|
||||
This center is used as starting-point for the shortest path. As it is not necessarily part of
|
||||
the grid, its nearest-grid-neighbor is used instead.
|
||||
The resulting node already knows its way to the pedestrian's destination, but is located somewhere
|
||||
within the deviation of the sample set. After slightly advancing it by a fixed value of about \SI{5}{\meter}
|
||||
we get a new point outside of the sample-set and closer to the desired destination.
|
||||
This new reference node serves as a comparison base
|
||||
\subsubsection{Shortest Path}
|
||||
|
||||
\begin{equation}
|
||||
p(e) =
|
||||
\end{equation}
|
||||
Before every transition, the centroid $\vec{c}$ of the current sample-set is calculated:
|
||||
\todo{summe laesst sich so nicht schreiben. ideen?}
|
||||
\begin{equation}
|
||||
\vec{c} = \frac
|
||||
{ \sum_{\mStateVec_{t-1}} (\mState_{t-1}^x, \mState_{t-1}^y, \mState_{t-1}^z)^T }
|
||||
{N}
|
||||
\end{equation}
|
||||
|
||||
\newcommand{\pathRef}{v_{\hat{x},\hat{y},\hat{z}}}
|
||||
This center is used as starting-point for the shortest path. As it is not necessarily part of
|
||||
the grid, its nearest-grid-neighbor is used instead.
|
||||
The resulting node already knows its way to the pedestrian's destination, but is located somewhere
|
||||
within the deviation of the sample set. After slightly advancing it by a fixed value of about \SI{5}{\meter}
|
||||
we get a new point outside of the sample-set and closer to the desired destination.
|
||||
This new reference node $\pathRef$ serves as a comparison base:
|
||||
|
||||
\todo{bessere ideen fuer die schreibweise?}
|
||||
\begin{equation}
|
||||
\begin{split}
|
||||
p(v_{x',y',z'} \mid v_{x,y,z})
|
||||
= N(\angle [ v_{x,y,z} v_{x',y',z'} ] \mid \gHead, \sigma_\text{dev}^2) \cdot \alpha \\
|
||||
\alpha =
|
||||
\begin{cases}
|
||||
1.0 & \| v_{x',y',z'} - \pathRef \| < \| v_{x,y,z} - \pathRef \| \\
|
||||
0.2 & \text{else}
|
||||
\end{cases}
|
||||
\end{split}
|
||||
\label{eq:transShortestPath}
|
||||
\end{equation}
|
||||
|
||||
Eq. \eqref{eq:transShortestPath} combines the simple transition \refeq{eq:transSimple} with
|
||||
a second probability, downvoting all nodes that are farther away from the reference $\pathRef$
|
||||
than the previous step. Put another way: grid-steps increasing the distance to the reference
|
||||
are unlikely but not impossible.
|
||||
|
||||
|
||||
\begin{figure}
|
||||
\includegraphics[angle=-90, width=\columnwidth, trim=20 19 17 9, clip]{floorplan_dijkstra_heatmap}
|
||||
\end{figure}
|
||||
|
||||
\subsubsection{Multipath}
|
||||
|
||||
The Dijkstra calculation mentioned in \ref{sec:pathEstimation} already calculated the
|
||||
cumulative distance $\text{cdst}_{x,y,z}$ to the pedestrian's target for each vertex.
|
||||
We thus apply the same assumption as above and downvote steps not decreasing
|
||||
the distance to the destination:
|
||||
|
||||
\begin{equation}
|
||||
\begin{split}
|
||||
p(v_{x',y',z'} \mid v_{x,y,z})
|
||||
= N(\angle [ v_{x,y,z} v_{x',y',z'} ] \mid \gHead, \sigma_\text{dev}^2) \cdot \alpha \\
|
||||
\alpha =
|
||||
\begin{cases}
|
||||
1.0 & \text{cdst}_{x',y',z'} < \text{cdst}_{x,y,z} \\
|
||||
0.2 & \text{else}
|
||||
\end{cases}
|
||||
\end{split}
|
||||
\label{eq:transMultiPath}
|
||||
\end{equation}
|
||||
|
||||
Fig. \ref{fig:multiHeatMap} shows the heat-map of visited vertices after several \SI{125}{\meter}
|
||||
walks simulating slight, random heading changes.
|
||||
|
||||
\begin{figure}
|
||||
\includegraphics[angle=-90, width=\columnwidth, trim=20 19 17 9, clip]{floorplan_dijkstra_heatmap}
|
||||
\caption{Heat-Map of visited vertices after several walks using \refeq{eq:transMultiPath}}
|
||||
\label{fig:multiHeatMap}
|
||||
\end{figure}
|
||||
|
||||
|
||||
|
||||
\commentByFrank{angular-change probability as polar-plot}
|
||||
|
||||
\commentByFrank{describe the multi-path version}
|
||||
|
||||
\commentByFrank{describe the single-path version}
|
||||
\commentByFrank{exp-dist for distance to the path. more distance = less-likely}
|
||||
\commentByFrank{lambda-factor controls the allowed deviation from the shortest-path}
|
||||
|
||||
|
||||
3122
tex/gfx/grid/grid.eps
Normal file
3122
tex/gfx/grid/grid.eps
Normal file
File diff suppressed because it is too large
Load Diff
4063
tex/gfx/grid/grid.eps.dat
Normal file
4063
tex/gfx/grid/grid.eps.dat
Normal file
File diff suppressed because it is too large
Load Diff
@@ -7,4 +7,4 @@ dvips bare_conf.dvi
|
||||
|
||||
ps2pdf14 bare_conf.ps
|
||||
|
||||
atril bare_conf.pdf
|
||||
atril bare_conf.pdf&
|
||||
|
||||
@@ -31,10 +31,17 @@
|
||||
\newcommand{\mPressure}{\rho}
|
||||
\newcommand{\mObsPressure}{\mPressure_\text{rel}} % symbol for observation pressure
|
||||
\newcommand{\mStatePressure}{\hat{\mPressure}_\text{rel}} % symbol for state pressure
|
||||
|
||||
\newcommand{\mHeading}{\theta}
|
||||
\newcommand{\mObsHeading}{\Delta\mHeading} % symbol used for the observation heading
|
||||
\newcommand{\mStateHeading}{\mHeading} % symbol used for the state heading
|
||||
|
||||
\newcommand{\mSteps}{s}
|
||||
\newcommand{\mObsSteps}{\mSteps}
|
||||
|
||||
\newcommand{\mNN}{\text{nn}}
|
||||
\newcommand{\mKNN}{\text{knn}}
|
||||
|
||||
%\newcommand{\docIBeacon}{iBeacon}
|
||||
|
||||
% for equation references
|
||||
|
||||
Reference in New Issue
Block a user