current TeX

minor code changes
This commit is contained in:
2017-05-06 21:33:58 +02:00
parent edd41293c1
commit ea887af537
8 changed files with 69 additions and 53 deletions

View File

@@ -477,6 +477,9 @@ void plotAllWalks(Floorplan::IndoorMap* map) {
int i = 0;
for (const Walk& walk : walks) {
p->addStartIndicator(walk[0], colors[i]);
K::GnuplotSplotElementLines* line = new K::GnuplotSplotElementLines();
line->getStroke().setWidth(2);
line->getStroke().getColor().setHexStr(colors[i]);
@@ -510,11 +513,17 @@ void plotAllWalks(Floorplan::IndoorMap* map) {
p->splot.getAxisZ().setRange(K::GnuplotAxis::Range(-8, 19.5));
p->splot.getView().setCamera(74,30);
p->splot.getView().setScaleAll(3.8);
p->splot.getObjects().reOrderByZIndex();
p->plot();
p->gp.setTerminal("epslatex", K::GnuplotSize(8.6, 5.0));
// modified paper
p->splot.getView().setCamera(79,30);
p->splot.getView().setScaleAll(5.5);
p->splot.getAxisZ().setRange(K::GnuplotAxis::Range(-14, 26.0));
p->gp.setTerminal("epslatex", K::GnuplotSize(15.24, 5.08));
//p->splot.getObjects().reOrderByZIndex();
//p->plot();
p->gp.setOutput(Settings::fPathGFX + "/all_walks.tex");
p->gp.writePlotToFile(Settings::fPathGFX + "/all_walks.gp");
p->plot();
@@ -1193,7 +1202,8 @@ void compareAll() {
line3.setTitle("");
p2.splot.getKey().setVisible(true);
p2.splot.getKey().setPosition(K::GnuplotCoordinate2(0.71, 0.35, K::GnuplotCoordinateSystem::SCREEN));
p2.splot.getKey().setPosition(K::GnuplotCoordinate2(0.53, 1.0, K::GnuplotCoordinateSystem::SCREEN));
//p2.splot.getKey().setPosition(K::GnuplotCoordinate2(0.71, 0.35, K::GnuplotCoordinateSystem::SCREEN));
p2.splot.getView().setCamera(0,0);
p2.splot.getView().setScaleAll(4.0);
p2.gp.setTerminal("epslatex", K::GnuplotSize(8.3, 4.8));
@@ -1210,13 +1220,19 @@ void compareAll() {
int main(void) {
compareAll();
//Toni::run();
return 0;
Floorplan::IndoorMap* map = Floorplan::Reader::readFromFile(Settings::fMap);
//plotAllWalks(map);
compareAll();
return 0;
//testWAF();
//sleep(1);

View File

@@ -104,7 +104,7 @@
\begin{document}
\title{\docWIFI{} Optimization for Smartphone-based Indoor Localization??}
\title{On \docWIFI{} Optimizations for Smartphone-based Indoor Localization}
\author{Frank Ebner}
\author{Toni Fetzer}

View File

@@ -4,7 +4,7 @@
with increasing attention.
%
As of today, many systems will run on commodity smartphones but most of them still rely on
fingerprinting, which demands for high setup- and maintenance-times.
fingerprinting which demands for high setup- and maintenance-times.
Alternatives, such as simple signal strength prediction models, provide fast setup times,
but often do not provide the accuracy required for use-cases like indoor navigation or
location-based services.

View File

@@ -21,14 +21,14 @@
For the best accuracy, more complex signal strength propagation models
are required, which in turn demand for more reference measurements.
%
However, while using a several instances of a simple propagation model
However, while using several instances of a simple propagation model
for different regions within a building is able to decrease the estimation
error, this approach might require prior guessing of where to place those regions.
As indicated by the error plots, just using one model for every floor within the building
seems to be a viable alternative.
More complex models, that include information about walls and other obstacles, should
be able to reduce the remaining maximum error, which remains for some locations, at the cost of additional computations.
be able to reduce the maximum error, which remains for some locations, at the cost of additional computations.
Special data-structures for pre-computation combined with online interpolation might
be a viable choice for utmost accuracy that is still able to run on
a commodity smartphone in real-time.

View File

@@ -2,7 +2,7 @@
% intro
\todo{reihenfolge so jetzt klar?}
\commentByFrank{reihenfolge so jetzt klar?}
Within our experiments we will first have a look at model optimizations to reduce the error
between model predictions and real-world conditions.
Hereafter we examine the resulting accuracy when using the optimized models for localization
@@ -14,7 +14,7 @@
and two connected outdoor regions (entrance and inner courtyard),
\SI{110}{\meter} x \SI{60}{\meter} in size.
Within all \docWIFI{} observations we only consider the \docAP{}s that are permanently installed,
Within all \docWIFI{} observations, we only consider the \docAP{}s that are permanently installed
and can be identified by their well-known MAC address.
Temporal and movable transmitters like smart TVs or smartphone hotspots are ignored as they might cause estimation errors.
%
@@ -65,7 +65,7 @@
\input{gfx2/model-bboxes.tex}
\caption{
Each distinct floor-color denotes one model (7 in total) for {\em \optPerRegion{}}.
Often, more than one bounding box is needed to approximate the region's shape.
Often more than one bounding box is needed to approximate the region's shape.
}
\label{fig:modelBBoxes}
\end{subfigure}
@@ -106,7 +106,7 @@
Even though the transmitter is only \SI{5}{\meter} away from the reference
measurement (small box), the metallized windows attenuate the signal as much as \SI{50}{\meter}
of corridor (wide rectangle). The model described in section \ref{sec:sigStrengthModel} will not be able
to match such situations, due to the lack of obstacle information.
to match such situations due to the lack of obstacle information.
%
We will thus look at various optimization strategies and the error between
the resulting estimation model and our reference measurements:
@@ -141,10 +141,10 @@
\end{itemize}
\reffig{fig:wifiModelError} shows the optimization results for all strategies, which are as expected:
\reffig{fig:wifiModelError} shows the optimization results for all strategies which are as expected:
The estimation error is indirectly proportional to the number of optimized parameters.
However, while median- and average-errors are fine, maximal errors sometimes are relatively high.
As depicted in \reffig{fig:wifiModelErrorMax}, even with {\em \optPerRegion{}} some locations simply do not fit the model,
As depicted in \reffig{fig:wifiModelErrorMax}, even with {\em \optPerRegion{}}, some locations simply do not fit the model,
and thus lead to high (local) errors.
%
Looking at the optimization results for \mTXP{}, \mPLE{} and \mWAF{} supports
@@ -300,8 +300,8 @@
%sub-model with only one assigned reference measurement, where the optimized result is unable to predict values
%for the rest of the sub-model's region. \todo{versteht man das?}
Additionally we examined the impact of skipping reference measurements for difficult locations
like staircases, surrounded by steel-enforced concrete. While this slightly decreases the
Additionally we examined the impact of skipping reference measurements for difficult locations,
like staircases surrounded by steel-enforced concrete. While this slightly decreases the
estimation error for all other positions (hallway, etc.) as expected, the error within the skipped locations is dramatically
increasing (see right half of \reffig{fig:wifiNumFingerprints}). It is thus highly recommended
to also perform reference measurements for locations, that are expected to strongly deviate (signal strength)
@@ -348,7 +348,7 @@
\todo{uebergang jetzt besser?}
Having optimized several signal strength prediction models, we can now examine the resulting localization
accuracy for each one. For now, this will just cover the \docWIFI{} component itself.
accuracy for each. For now, this will just cover the \docWIFI{} component itself.
The impact of adding additional sensors and a transition model will be evaluated later.
@@ -379,9 +379,9 @@
\label{eq:bestWiFiPos}
\end{equation}
Within \refeq{eq:bestWiFiPos} $\mu_{i,\mPosVec}$ is the signal strength for \docAP{} $i$,
In \refeq{eq:bestWiFiPos} $\mu_{i,\mPosVec}$ is the signal strength for \docAP{} $i$,
installed at location $\mPosVec$, returned from the to-be-examined prediction model.
For all comparisons we use a constant uncertainty of $\sigma = \SI{8}{\decibel}$.
For all comparisons, we use a constant uncertainty of $\sigma = \SI{8}{\decibel}$.
The quality of the estimated location is determined by using the Euclidean distance between estimation
$\mPosVec^*$ and the pedestrian's ground truth position at the time the scan $\mRssiVec$
@@ -401,7 +401,7 @@
\centering
\input{gfx2/all_walks.tex}
\caption{
Overview of all conducted paths.
Overview of all conducted paths, each starting at the denoted rectangle.
Outdoor areas are marked in green.
}
\label{fig:allWalks}
@@ -455,7 +455,7 @@
The quality of the location estimation directly scales with the quality of the signal strength prediction model.
However, as discussed earlier, the maximal estimation error might increase for some setups.
%
This is either due to multimodalities, where more than one area matches the recent
Either due to multimodalities, where more than one area matches the recent
\docWIFI{} observation, or optimization yielded an overadaption where the average signal
strength prediction error is small, but the maximum error is dramatically increased for some regions.
@@ -487,7 +487,7 @@
\hspace{3mm}%hack
To reduce the amount such of misclassifications, where other locations within the building are
To reduce the amount of such misclassifications, where other locations within the building are
as likely as the pedestrian's actual location, we examined various approaches.
Unfortunately, most of which did not provide a viable enhancement under all conditions for the performed walks.
@@ -525,18 +525,18 @@
\end{itemize}
To sum up, while some situations, e.g. outdoors, could be improved,
To sum up, while some situations e.g. outdoors could be improved,
many other situations are deteriorated, especially when some transmitters are (temporarily)
attenuated by ambient conditions like concrete walls.
We therefore examined variations of the probability calculation from \refeq{eq:wifiProb}.
Despite the results show in \cite{PotentialRisks}, removing weak \docAPshort{}s from $\mRssiVec{}$
yielded similar results. While some estimations were improved, the overall error increased
Contrary to the results shown in \cite{PotentialRisks}, removing weak \docAPshort{}s from $\mRssiVec{}$
did not work out. While some estimations were improved, the overall error increased
for our walks, as there are many situations where only a handful \docAP{}s can be seen.
Removing this (valid) information will highly increase the error for such situations.
Removing this (valid) information will increase the error for such situations.
Incorporating additional knowledge provided by virtual \docAP{}s (see section \ref{sec:vap}) mitigated this issues.
If only one out of six virtual networks is observed, this observation is likely to be erroneous, no matter
However, incorporating additional knowledge provided by virtual \docAP{}s (see section \ref{sec:vap}) mitigated this issues.
If only one out of six virtual networks is seen, this observation is likely to be erroneous, no matter
what the corresponding signal strength indicates. This approach improved the location estimation especially
for areas where a transmitter was hardly seen within the reference measurements and its optimization is thus
expected to be inaccurate.
@@ -546,7 +546,7 @@
%(see figure \ref{fig:normalVsExponential}).
Due to those negative side-effects, the final localization system (\refeq{eq:recursiveDensity}) is unlikely to profit from such changes.
\todo{ueberleitung OK?}
%\todo{ueberleitung OK?}
% braucht zu viel platz
%\begin{figure}
@@ -597,7 +597,7 @@
25 times, using 5000, 7500 and 10000 particles resulting in 75 runs per walk, 975 per strategy and 5850 in total.
%
\reffig{fig:overallSystemError} depicts the cumulative error distribution per optimization strategy,
resulting from all executions for each walk conducted with the smartphone.
resulting from all executions for each conducted walk.
While most values represent the expected results (more optimization yields better results),
the values for {\em \optParamsAllAP{}} and {\em \optPerRegion{}} do not.
@@ -622,15 +622,15 @@
(metal-framed doors) the error is slightly increased and retained for some time until the density stabilizes itself.
Especially for {\em path 1}, the particle-filter often got stuck within the upper right outdoor area between both buildings
(see \reffig{fig:allWalks}). Using the empirical parameters, \SI{40}{\percent} of all runs for this path got stuck at this location.
(see \reffig{fig:final}). Using the empirical parameters, \SI{40}{\percent} of all runs for this path got stuck at this location.
{\em \optParamsAllAP{}} already reduced the risk to \SI{20}{\percent} and all other optimization strategies did not get stuck at all.
Additionally increasing the number of particles from 5000 to 10000 indicated only a minor increase in accuracy and slightly decreased
the risk of getting stuck. For battery- and performance-constrained use-cases on the smartphone 5000 thus seems to be a sufficient.
Increasing the number of particles from 5000 to 10000 indicated only a minor increase in accuracy and slightly decreased
the risk of getting stuck. For battery- and performance-constrained use-cases on the smartphone 5000 thus seems to be sufficient.
Issues while moving from the inside out, or vice versa, should also be mitigated by incorporating the smartphone's GPS sensor.
Issues while moving from the inside out or vice versa, should also be mitigated by incorporating the smartphone's GPS sensor.
However, within our testing walks, the GPS did rarely provide accurate measurements, as the outdoor-time often was too short
for the sensor to receive a valid fix. The accuracy indicated by the GPS usually was $\ge \SI{50}{\meter}$ and thus
did not provide usefull information.
did not provide useful information.
However, comparing the error results within \reffig{fig:modelPerformance} and \reffig{fig:overallSystemError}, one can
denote the positive impact of fusing multiple sensors with a transition model based on the building's
@@ -672,7 +672,7 @@
\caption{
Cumulative error distribution for each model when used within the final localization system from \refeq{eq:recursiveDensity}.
Especially {\em \optParamsAllAP{}} suffered from overadaption and thus provided worse results. Compared to just using \docWIFI{}
(\reffig{fig:modelPerformance}) the error difference between the models now is much more pronounced.
(\reffig{fig:modelPerformance}) the error difference between the models now is much more distinct.
Starting from {\em \optParamsEachAP{}} the system rarely gets stuck and provides a viable accuracy.
}
\label{fig:overallSystemError}
@@ -681,16 +681,16 @@
Finally, \reffig{fig:final} depicts all of the previously discussed improvements and issues by examining {\em path 1}
from \reffig{fig:allWalks}.
For better visibility within path- and error-plots, the non filtered estimations were smoothed using a moving average of
For better visibility within path- and error-plots, the unfiltered estimations were smoothed, using a moving average of
ten consecutive values ($\approx \SI{7}{\second}$). As can be seen, optimizing the \docWIFI{} model yields an improvement
for indoor situations, as the estimation is closer to the ground truth, and the starting position (indicated by the rectangle)
is more accurate.
For the depicted walk, the error outdoors is increased, as the likeliest position is shifted. Adding
the particle filter (\refeq{eq:recursiveDensity}) on top of the optimized model fixes this issue. What cannot be seen
within the images: while the likeliest position is deteriorated by the optimization, the likelihood of the region around
the pedestrian's ground truth actually is increased. Thus, combined with transition model and other sensors, the system
the particle filter (\refeq{eq:recursiveDensity}) on top of the optimized model, fixes this issue. What cannot be seen
within the figure: while the likeliest position is deteriorated by the optimization, the likelihood of the region around
the pedestrian's ground truth is actually increased. Thus, combined with transition model and other sensors, the system
is able to stay right on track. The filter fails for {\em \noOptEmpiric}, as one \docAPshort{} near the entry of the second
building prevents the density from entering due to a very high difference between model and real-world conditions.
building prevents the density from entering, due to a very high difference between model and real-world conditions.
\begin{figure}
\begin{subfigure}{0.49\textwidth}

View File

@@ -11,7 +11,7 @@
entering the building. Additionally, the sensor's error will sum up over
time \cite{Koeping14}.
Depending on the used fusion-method, the latter can be addressed
Depending on the used fusion-method, latter can be addressed
using a movement model for the pedestrian, that prevents unlikely movements
and locations. However, this will obviously work only to some extent and still
requires the initial position to be at least vaguely known.
@@ -36,7 +36,7 @@
using cells of $\approx \SI{2}{\meter}$ in size. This usually leads to
a very high accuracy due to actual measurements of the real situation.
However, the amount of work for the initial
setup and the maintenance when transmitters are changed or renovations take
setup and the maintenance, when transmitters are changed or renovations take
place, is very high.
Setup- and maintenance effort can be prevented by using models to predict
@@ -67,7 +67,7 @@
just empirical parameters (no setup time when transmitter positions are known) to optimized
parameters, where no prior knowledge is necessary and a few reference measurements suffice.
Despite analyzing the \docWIFI{} performance on its own, we will also have
Besides analyzing the \docWIFI{} performance on its own, we will also have
a closer look at the resulting performance-changes within a fully featured smartphone-based
indoor localization system using a movement model based on the building's floorplan,
together with various other sensors and recursive state estimation based on a particle filter.

View File

@@ -51,7 +51,7 @@
are more accurate, and mostly invariant to architectural obstacles \cite{TimeDifferenceOfArrival1, TOAAOA}.
Especially signal runtimes are unaffected by walls and thus allow for stable distance estimations, if the used components
support measuring time-delays down to a few picoseconds. This is why those techniques often need special (measurement) hardware
to estimate parameters like signal-runtime or signal-phase-shifts. Those requirements usually allow only for some use-cases.
to estimate parameters like signal-runtime or signal-phase-shifts. Those requirements only allow for a limited number of use-cases.
We therefore focus on the RSSI, that is available on each commodity smartphone, and use a

View File

@@ -51,7 +51,7 @@
to also serve for indoor purposes.
%
It predicts an \docAP{}'s signal strength
for an arbitrary location
for an arbitrary location,
%$\mPosVec{}$
given the distance $d$ between both and two environmental parameters:
The \docAPshort{}'s signal strength \mTXP{} measurable at a known distance $d_0$ (usually \SI{1}{\meter}) and
@@ -97,7 +97,7 @@
\mTXP{}, \mPLE{} and \mWAF{}.
While it is possible to use empiric values for those environmental parameters \cite{Ebner-15}, the positions are mandatory.
For many buildings, there should be floorplans that include the locations of all installed transmitters.
For many buildings there should be floorplans that include the locations of all installed transmitters.
If so, a model setup takes only several minutes to (vaguely) position the \docAPshort{}s within a virtual
map and assign some fixed, empirically chosen parameters for \mTXP{}, \mPLE{} and \mWAF{}.
Depending on the building's architecture this might already provide enough accuracy for some use-cases,
@@ -261,7 +261,7 @@
Evaluations within previous works showed, that there are many situations where the overall \docWIFI{} location estimation
is highly erroneous. Either when the signal strength prediction model does not match real-world
conditions or the received measurements are ambiguous and there is more than one location
conditions, or the received measurements are ambiguous and there is more than one location
within the building that matches those readings. Both cases can occur e.g. in areas surrounded by
concrete walls, where the model does not match the real-world conditions as those walls are not considered,
and the smartphone barely receives \docAPshort{}s due to the high attenuation.
@@ -307,12 +307,12 @@
due to environmental conditions like temperature, humidity, open/closed doors and RF interference.
Fast variations can be addressed by averaging several consecutive measurements at the expense
of a delay in time.
To prevent this delay we use the fact, that many buildings use so called virtual access points
To prevent this delay, we use the fact, that many buildings use so called virtual access points
where one physical hardware \docAP{} provides more than one virtual network to connect to.
They can usually be identified, as only the last digit of the MAC address is altered among the virtual networks.
%
As those normally share the same frequency, they are unable to transmit at the same instant in time.
When scanning for \docAPshort{}s one will thus receive several responses from the same hardware, all with
When scanning for \docAPshort{}s, one will thus receive several responses from the same hardware, all with
a very small delay (micro- to milliseconds). Such measurements may be grouped using some aggregate
function like average, median or maximum instead of using each single measurement.