started working on eval-graphics ned helper methods tested some new aspects some fixes and changes added some graphics new test-floorplan many cleanups
54 lines
2.4 KiB
TeX
54 lines
2.4 KiB
TeX
\section{Floorplan/Path/whatever (RENAME)}
|
|
|
|
\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}
|
|
|