=Paper= {{Paper |id=Vol-3097/paper31 |storemode=property |title=Evaluation of Geomagnetic Matching Algorithms for Indoor Positioning |pdfUrl=https://ceur-ws.org/Vol-3097/paper31.pdf |volume=Vol-3097 |authors=Stefan Knauth |dblpUrl=https://dblp.org/rec/conf/ipin/Knauth21 }} ==Evaluation of Geomagnetic Matching Algorithms for Indoor Positioning== https://ceur-ws.org/Vol-3097/paper31.pdf
Evaluation of Geomagnetic Matching Algorithms for
Indoor Positioning
Stefan Knauth
Faculty for Computer Sciences, Mathematics and Geomatics
HFT Stuttgart – University of Applied Sciences
Schellingstr. 21, Stuttgart, Germany


                                      Abstract
                                      Geomagnetic fingerprinting is a promising technology for supplying smartphone indoor navigation
                                      algorithms with infrastructureless and to some extent stable local position information. Geomagnetic
                                      disturbances in buildings impose a characteristic magnetic signature which can be detected by the phones
                                      magnetic sensor. A common approach is to create a database by recording reference fingerprints for
                                      example along a predefined known path. In the positioning phase, magnetic data is recorded along a
                                      certain time- or path length of the unknown path. The live data can be analyzed and compared against
                                      the prerecorded reference fingerprints. This magnetic matching procedure differs considerably from
                                      WiFi fingerprinting, where WiFi data from discrete points is compared. The main difference is that the
                                      described approach uses data recorded as time series. The matching has to consider not only the signal
                                      amplitude but also temporal- or spatial matching. In this paper several magnetic matching algorithms are
                                      evaluated for usage in an indoor positioning system. A public database is used as data source allowing
                                      comparison of the results with other works.




1. Introduction
Smartphone Indoor positioning is a technology which allows position determination with a
smartphone in indoor environments. As no reliable GNSS signals are available in buildings,
other technologies are needed. Numerous information- and communication technology groups
are performing research on the topic. WiFi RSSI (received signal strength indicator) indoor
positioning is a commonly applied approach and has been investigated since 2001 [1]. The most
widely used algorithm is RSSI fingerprinting. However there are more methods, for example
radio tomography, multilateration, centroid, proximity and more. These are a choice in cases
when no radio map is available. An advantage of Smartphone WiFi based localization is the fact
that it may be applied even if the WiFi installation has not been specifically prepared for that
use case and, for example, characteristics and positions of the WiFi access points are unknown.
The obtainable accuracy for WiFi based positioning is in the meter range for typical scenarios
[2, 3, 4], as for example observed at Indoor localization competitions like the Smartphone-based
Off-Line Indoor Location Competition at IPIN 2016 [5] or the EvAAL-ETRI 2015 competitions
on indoor localization in large environments [6].
   To enable more accurate results, data from all available sensors of a smartphone may be
employed. This includes inertial measurement data from gyro- and acceleration sensors, compass

IPIN 2021 WiP Proceedings, November 29 – December 2, 2021, Lloret de Mar, Spain
                                    © 2021 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
 CEUR
 Workshop
 Proceedings
               http://ceur-ws.org
               ISSN 1613-0073       CEUR Workshop Proceedings (CEUR-WS.org)
data, as well as barometric- and magnetic data. The obutained accuracy may then be increased
for example by Kalman filtering or application of a particle filter [7, 8, 9].
   The paper focuses on using the geomagnetic field for indoor positioning [10, 11], in particular
on the topic of geomagnetic matching along certain path [12]. An agent who wants to know
his position records a trace of the magnetic field along his route. By comparing the trace with
prerecorded traces which are stored in a database in many cases a position estimate can be
performed. Reference records may be collected by walking the possible paths and calibrate these
measurements to ground by enriching the records with true ground information at predefined
reference points. In the paper several magnetic matching algorithms are tested for applicability
in an indoor positioning system.
   In order to have a reliable data source a publicly available database was used for the analysis.
The database of the smartphone offline Track from the IPIN 2018 competition has been chosen. It
contains more than 40 training- and validation data sets each covering 5..10 minutes of walking
annotated with true ground information of 41 different ground truth points, distributed on 3
floors of the Atlantis shopping mall, Nantes, France. Also a large 20 minute evaluation data set
with about 100 true ground references is available [13, 14].


2. Magnetic fingerprinting
The north-south direction of the Earth magnetic field has been used for the compass for centuries.
The magnetic field is a vector, and a smartphone measures all 3 components of this field. The
field at a certain location is constant or at least nearly constant if considering the migration of
the magnetic poles. If one moves and changes his location on flat natural ground, the change
in magnetic field is also only weak and hardly measurable in the range of a few kilometers.
However, the field is strongly influenced by ferromagnetic materials such as iron. This leads to
the fact that in modern buildings the field is by no means constant but rather has a characteristic
location dependence, which is generated e.g. by reinforced concrete or iron girders, pipelines,
machines etc..
   If the magnetic field is measured along a defined path in a building, it generates a characteristic
measurement curve. One possible principle of position determination based on the magnetic
field works as follows: First, certain paths have to be defined in a building and the magnetic
field has to be recorded along these paths and stored in a database. These recordings are the
magnetic fingerprints. If an agent now wants to determine his position, he also measures the
magnetic field along his path. For determination of the current position, the values for the last
meters of walking, for example the last 5 meters are used. Now he searches the database for
sections in the records (the fingerprints) that match his own recording. If such a section is
found, it is likely that the agent is at the position that belongs to the end of the found section.
The procedure is referred to as geomagnetic fingerprinting [15, 16, 17].
   This method is very different from WiFi fingerprinting methods [1, 18], because with WiFi
fingerprinting the position can be determined statically at a location based on the readings
from different access points. As WiFi signals contain an identification of the transmitter, the
comparison is spatially unambiguous, similar fingerprints only occur within neighbor positions.
With magnetic Fingerprinting, there is only one access point, the earth. In order to obtain a
meaningful fingerprint, a path comprising several meters needs to be recorded. If several paths
share certain features, the matching between the magnetic fingerprints is not unambiguous,
and further information like for example WiFi positioning or PDR history has to be used for
selecting possible magnetic fingerprint candidates.
   A matching procedure for magnetic fingerprints shall deliver a likelihood measure, e.g. a
numerical value, and a displacement value e.g. a number expressing the temporal or spatial
displacement between the magnetic trace from the evaluation path and a prerecorded reference
path.
   In the following sections, referring to the magnetic field or the magnetic signal means
referring to the amplitude of the magnetic field vector. Of course, also other information like
the z-component of the field or combinations could be employed for fingerprinting. There are
two kinds of records used: In the positioning phase, the magnetic amplitude is recorded by
the agents smartphone. This record, for which the true ground positions are to be determined,
is named “evaluation trace”. The unknown path itself is referred to as the “evaluation path”.
A magnetic reference measurement along a known path, recorded during the initial mapping
phase, is referred to as reference fingerprint or “reference trace” (alias “training trace”).


3. Time to path mapping
The database comprises numerous “long reference records” which, each in different well-defined
paths, pass a subset of 41 known true ground reference points, and the passage of the points is
marked in the record. By employing a PDR positioning algorithm [19, 20] continuous position
estimates are performed for these reference records. Magnetic data is thereby mapped from
elapsed time to passed path length as well as ground position. For each 10 cm of passed path
length, a data point is generated. From each “long record”, new records are split off each time a
known true ground reference position is passed. These reference records each are cut such that
they start 40 meters before passing the reference point and end 10 meters after the reference
point. That is also the x scale on the figures presented later.
   The database comprises also a “long evaluation trace”. Also for this evaluation trace the time
when the agent passes the reference points is known. For this paper, a representative cut of the
trace has been selected to serve as base for the analysis. The cut comprises a 20 meter sequence
ending before the selected reference point. In a practical scenario, the true ground and passed
positions may not be known for an evaluation path and a relative mapping from time to passed
path length is not generally possible. Therefore in the paper, the mapping is performed by using
only the step counter and a fixed step length. This compensates for stops in the walk, but not
for different walking speeds.


4. Evaluating of methods for comparing magnetic traces
Figure 1 (a) shows 3 magnetic reference traces and one evaluation trace. All traces are high-pass
filtered to remove the constant field contribution and low-pass filtered to reduce signal noise.
The x-axis shows the route distance to a certain reference point of the database. Only those
traces aligned to the walking direction are shown. The evaluation trace has been also adjusted
                                                                                 Training and evaluation data for ref. 23                                                       Euclidian distance (train - eval) over offset




         B [micro T] (magnetic field amplitude deviation)
                                                                    (a)                                                                                               (b)
                                                                                                  1. T05-01.txt 23(15) t= 274.8                                                                                             sqsum 1
                                                                                                                                                                  7                                                         sqsum 2
                                                             1                                    2. T05-02.txt 23(15) t= 269.8                                                                                             sqsum 3
                                                                                                  3. T05-03.txt 23(15) t= 272.5
                                                                                                     4. EVALUATION.txt t= 712.9
                                                           0.5                                                                                                    6



                                                             0                                                                                                    5




                                                                                                                                                  Euklid. dist.
                                                           -0.5                                                                                                   4


                                                             -1
                                                                                                                                                                  3


                                                           -1.5
                                                                                                                                                                  2

                                                             -2

                                                              -40          -30              -20            -10               0         10                                  -2   -1.5   -1       -0.5       0     0.5    1       1.5       2
                                                                                                                                                                                            s [m] (correlation offset)
                                                                                 s [m] (route distance to reference point)

                                                                                              Convolution                                                                               Convolution Zoom

                                                                                                                      folded 1                                                                                          folded 1
                                                            80
                                                                    (c)                                               folded 2
                                                                                                                      folded 3
                                                                                                                                            90                (d)                                                       folded 2
                                                                                                                                                                                                                        folded 3
                                                            60
         Similarity (arb. units)




                                                                                                                                            80
                                                            40

                                                                                                                                            70
                                                            20

                                                             0                                                                              60

                                                           -20
                                                                                                                                            50

                                                                     -20            -10             0            10              20              -4                   -3        -2      -1             0          1         2         3       4
                                                                           s [m] (route distance to reference point)                                                       s [m] (route distance to reference point)


Figure 1: (a) Magnetic amplitude traces recorded with a smartphone. (b) Euclidean distance between 3
reference traces and the evaluation trace, over displacement. (c) convolution instead of Euclidean (d)
zoom into convolution.


as the passing time of the reference point was known. In general, the path distance between
reference and evaluation is not known but is the number to be determined. If, for example,
the path distance between evaluation and a certain reference was -3 meters (3 meters before
passing the reference point), the current position of the agent would be the position which is
annotated for -3 m in the reference track. So, by determination of the route distance between
reference and evaluation path, the unknown position can be determined.

                                                           Deviation from true position                                           Ref. 1         Ref. 2                              Ref. 3                     avg
                                                           Euclidian dist. min value                                                2.8             1.6                                 3.5
                                                           Euclidian dist. min. path [m]                                            0.5            -0.5                                -0.2                    -0.07
                                                           Convolution max. val.                                                   81.5           89.8                                65.2
                                                           Convolution max. path [m]                                                0.4            -0.6                                -0.3                    -0.17
                                                           DTW min value                                                           1.23           0.36                                2.35
                                                           DTW min path [m]                                                         0.0            -1.4                                -0.8                    -0.73
                                                           Modif. DTW min value                                                    2.46           1.16                                3.24
                                                           Modif DTW min path [m]                                                   0.6            -0.4                                -0.5                     -0.1
Table 1
Results: the “min./max. path [m]” is the magnetic positioning error.



   The distance will be determined by correlation. In 1 (b) the Euclidean distance between a
reference fingerprint and the evaluation fingerprint is shown over the fingerprint correlation
                                                                                                        original DTW fit                                                                                                                   modified DTW fit




                                                                                                                                                      B [micro T] (magnetic field amplitude deviation)
         B [micro T] (magnetic field amplitude deviation)
                                                                       0. 5
                                                                                    (a)                                         warped 1
                                                                                                                                warped 2
                                                                                                                                                                                                        0. 5
                                                                                                                                                                                                                       (d)
                                                                                                                                                                                                                                                                 warped 1
                                                                                                                                                                                                                                                                 warped 2
                                                                                                                                warped 3                                                                                                                         warped 3
                                                                         0                                                     eval. Trace                                                                0                                                     eval. Trace



                                                                       -0.5                                                                                                                             -0.5


                                                                         -1                                                                                                                               -1


                                                                       -1.5                                                                                                                             -1.5


                                                                         -2                                                                                                                               -2

                                                                              -20               -15          -10                -5                0                                                             -20               -15          -10               -5             0

        s                                                                                 s [m] (route distance to reference point)                                                                                         s [m] (route distance to reference point)

        aaaaas
        aaaaas                                                                       DTW mapping                               DTW mapping                                                                             DTW mapping                             DTW mapping

                                                                                                Ref 1                                 Ref 1                                                                                       Ref 1                                Ref 1
                                                                         5
                                                                                (b)             Ref 2
                                                                                                Ref 3          1     (c)              Ref 2
                                                                                                                                      Ref 3
                                                                                                                                                                                                         5
                                                                                                                                                                                                                 (e)              Ref 2
                                                                                                                                                                                                                                  Ref 3        1      (f)              Ref 2
                                                                                                                                                                                                                                                                       Ref 3
                                                                         0                                                                                                                               0
                                 s [m] (distance on training tracks)




                                                                                                                                                              s [m] (distance on training tracks)
                                                                         -5                                                                                                                              -5
                                                                                                               0                                                                                                                               0

                                                                       -10                                                                                                                              -10

                                                                       -15                                     -1                                                                                       -15                                    -1


                                                                       -20                                                                                                                              -20
                                                                                                               -2                                                                                                                              -2
                                                                       -25                                                                                                                              -25

                                                                       -30                                                                                                                              -30
                                                                                                               -3                                                                                                                              -3
                                                                       -35                                                                                                                              -35


                                                                              -20   -15   -10     -5    0           -5    -4    -3   -2      -1   0                                                            -20    -15   -10     -5    0          -5   -4    -3    -2   -1   0
                                                                         s [m] (distance on evaluation track)                                                                                            s [m] (distance on evaluation track)


Figure 2: (a) plain DTW matching of the reference trace with the evaluation trace. (b) plain DTW point
mapping. (c) zoom into (b). The line ends indicate the matching position. (d,e,f) show the same data as
(a,b,c), but with a modified DTW algorithm.


offset. The minimum x value indicates the path offset in meters for the best match. In the
ideal case this would be zero, as the measurements are aligned with the real time when each
of the traces passes the reference point. Practically a small misalignment may be caused by
measurement noise. Another source is the mapping of time to path length, which depends on
the accuracy of the step detection. Nevertheless, the maximum obtained displacement is 0.5 m
only, which is a reasonable accuracy.
   Figure 1 (c) and (d) (zoomed) brings the result of a convolution. As expected, the results are
quite comparable to the ones obtained by the Euclidean distance.
   Figure 2 displays the result of dynamic time warping (DTW) (see for example [15, 21]). Figures
(a) and (d) shows the warped reference curves. For (a), the standard warping algorithm is used.
Here a problem of DTW can be seen: A difference in amplitudes between the signals will lead
to a spreading of the warp in time, which can be seen as horizontal “jumps” for example at
the minimum. To avoid this strict amplitude criterion, in (d) the warping algorithm has been
modified by adding penalties to non-diagonal mappings. This forces a more natural mapping, as
it can be seen also in the mapping diagrams (b) and (c) for the non-modified case, and (e) as well
as (f) for the modified case. As it can be seen at the mapping end positions near coordinates
(0,0), the unmodified case leads to errors of nearly 2 m, in the worst case. The modified warping
stays within the 0,5 m result obtained already for Euclidean and convolution. However, the
warping should principally have the advantage of being able to well adopt to variations in the
step length (not shown here).


5. Results and Outlook
Magnetic fingerprinting has been investigated on the IPIN2018 track 3 smartphone offline
database. By mapping magnetic readings to positions respectively passed path length, magnetic
fingerprints have been constructed. It has been shown that positions may be mapped to reference
points with an accuracy of better than 0.5 meters, for an exemplary case (Table 1). Three different
approaches have been compared. It was found that Euclidean distance and convolution as well
as DTW deliver results with comparable accuracy. For DTW, a modification has been proposed
that favors diagonal mapping by introduction of penalties. However, DTW seems to be not as
stable as the others.
   The next step will be to continue the integration of the magnetic fingerprint algorithm into an
existing positioning algorithm. From the preliminary results we deduct that, at regions where
feature-carrying magnetic data is available and is close to true-ground references, an unknown
path may be matched with a spatial accuracy in the range of 1 meter or better. The positioning
phase will be fully implemented to demonstrate and evaluate its feasibility in a lab setup and
with publicly available evaluation data.


Acknowledgment
This work was funded by the Carl-Zeiss-Stiftung Stuttgart in project “SensAR” in the frame of
the programme “transfer”.


References
 [1] P. Bahl, V. N. Padmanabhan, RADAR: An in-building RF-based user location and tracking
     system, in: INFOCOM (2), 2000, pp. 775–784.
 [2] R. Berkvens, M. Weyn, H. Peremans, Localization performance quantification by condi-
     tional entropy, in: Indoor Positioning and Indoor Navigation (IPIN), 2015 International
     Conference on, 2015, pp. 1–7. doi:10.1109/IPIN.2015.7346969.
 [3] S. Knauth, M. Storz, H. Dastageeri, A. Koukofikis, N. A. Mähser-Hipp, Fingerprint calibrated
     centroid and scalar product correlation rssi positioning in large environments, in: Indoor
     Positioning and Indoor Navigation (IPIN), 2015 International Conference on, 2015, pp. 1–6.
     doi:10.1109/IPIN.2015.7346968.
 [4] A. Moreira, M. J. Nicolau, F. Meneses, A. Costa, Wi-fi fingerprinting in the real world -
     rtls@um at the evaal competition, in: Indoor Positioning and Indoor Navigation (IPIN),
     2015 International Conference on, 2015, pp. 1–10. doi:10.1109/IPIN.2015.7346967.
 [5] J. Torres-Sospedra, A. R. Jiménez, S. Knauth, A. Moreira, Y. Beer, T. Fetzer, V.-C. Ta,
     R. Montoliu, F. Seco, G. M. Mendoza-Silva, O. Belmonte, A. Koukofikis, M. J. Nicolau,
     A. Costa, F. Meneses, F. Ebner, F. Deinzer, D. Vaufreydaz, T.-K. Dao, E. Castelli, The
     smartphone-based offline indoor location competition at ipin 2016: Analysis and future
     work, Sensors 17 (2017). URL: http://www.mdpi.com/1424-8220/17/3/557. doi:10.3390/
     s17030557.
 [6] J. Torres-Sospedra, A. Moreira, S. Knauth, R. Berkvens, R. Montoliu, O. Belmonte, S. Trilles,
     M. J. Nicolau, F. Meneses, A. Costa, A. Koukofikis, M. Weyn, H. Peremans, A realistic
     evaluation of indoor positioning systems based on wi-fi fingerprinting: The 2015 evaal-etri
     competition., Journal of Ambient Intelligence and Smart Environments 9 (2017) 263–279.
     URL: http://dx.doi.org/10.3233/AIS-170421.
 [7] H. Nurminen, A. Ristimäki, S. Ali-Löytty, R. Piché, Particle filter and smoother for indoor
     localization, in: Indoor Positioning and Indoor Navigation (IPIN), 2013 International
     Conference on, 2013, pp. 1–10.
 [8] F. Ebner, T. Fetzer, F. Deinzer, L. Köping, M. Grzegorzek, Multi sensor 3d indoor localisation,
     in: Indoor Positioning and Indoor Navigation (IPIN), 2015 International Conference on,
     2015, pp. 1–11. doi:10.1109/IPIN.2015.7346772.
 [9] T. Willemsen, F. Keller, H. Sternberg, A topological approach with mems in smartphones
     based on routing-graph, in: Indoor Positioning and Indoor Navigation (IPIN), 2015 Inter-
     national Conference on, 2015, pp. 1–6. doi:10.1109/IPIN.2015.7346952.
[10] M. Kwak, C. Hamm, S. Park, T. T. Kwon, Magnetic field based indoor localization system:
     A crowdsourcing approach, in: 2019 International Conference on Indoor Positioning and
     Indoor Navigation (IPIN), 2019, pp. 1–8. doi:10.1109/IPIN.2019.8911795.
[11] B. Li, T. Gallagher, C. Rizos, A. G. Dempster, Using geomagnetic field for indoor positioning,
     Journal of Applied Geodesy 7 (2013) 299–308. URL: https://doi.org/10.1515/jag-2013-0016.
     doi:doi:10.1515/jag-2013-0016.
[12] I. Ashraf, S. Hur, Y. Park, mpilot-magnetic field strength based pedestrian indoor localiza-
     tion, Sensors 18 (2018). URL: https://www.mdpi.com/1424-8220/18/7/2283. doi:10.3390/
     s18072283.
[13] A. R. J. Ruiz, G. M. Mendoza-Silva, M. Ortiz, A. Perez-Navarro, J. Perul, F. Seco, J. Torres-
     Sospedra, Datasets and Supporting Materials for the IPIN 2018 Competition Track 3
     (Smartphone-based, off- site), 2018. URL: https://doi.org/10.5281/zenodo.2823964. doi:10.
     5281/zenodo.2823964.
[14] V. Renaudin, M. Ortiz, J. Perul, J. Torres-Sospedra, A. R. Jiménez, A. Pérez-Navarro,
     G. Martín Mendoza-Silva, F. Seco, Y. Landau, R. Marbel, B. Ben-Moshe, X. Zheng, F. Ye,
     J. Kuang, Y. Li, X. Niu, V. Landa, S. Hacohen, N. Shvalb, C. Lu, H. Uchiyama, D. Thomas,
     A. Shimada, R.-I. Taniguchi, Z. Ding, F. Xu, N. Kronenwett, B. Vladimirov, S. Lee, E. Cho,
     S. Jun, C. Lee, S. Park, Y. Lee, J. Rew, C. Park, H. Jeong, J. Han, K. Lee, W. Zhang, X. Li,
     D. Wei, Y. Zhang, S. Y. Park, C. G. Park, S. Knauth, G. Pipelidis, N. Tsiamitros, T. Lun-
     genstrass, J. P. Morales, J. Trogh, D. Plets, M. Opiela, S.-H. Fang, Y. Tsao, Y.-R. Chien,
     S.-S. Yang, S.-J. Ye, M. U. Ali, S. Hur, Y. Park, Evaluating indoor positioning systems in a
     shopping mall: The lessons learned from the ipin 2018 competition, IEEE Access 7 (2019)
     148594–148628. doi:10.1109/ACCESS.2019.2944389.
[15] K. P. Subbu, B. Gozick, R. Dantu, Locateme: Magnetic-fields-based indoor localization
     using smartphones, ACM Trans. Intell. Syst. Technol. 4 (2013) 73:1–73:27. doi:10.1145/
     2508037.2508054.
[16] P. Mirowski, T. K. Ho, Saehoon Yi, M. MacDonald, Signalslam: Simultaneous localization
     and mapping with mixed wifi, bluetooth, lte and magnetic signals, in: International
     Conference on Indoor Positioning and Indoor Navigation, 2013, pp. 1–10. doi:10.1109/
     IPIN.2013.6817853.
[17] P. Robertson, M. Frassl, M. Angermann, M. Doniec, B. J. Julian, M. Garcia Puyol, M. Khider,
     M. Lichtenstern, L. Bruno, Simultaneous localization and mapping for pedestrians us-
     ing distortions of the local magnetic field intensity in large indoor environments, in:
     International Conference on Indoor Positioning and Indoor Navigation, 2013, pp. 1–10.
     doi:10.1109/IPIN.2013.6817910.
[18] S. Knauth, 8 - study and evaluation of selected rssi-based positioning algorithms, in:
     J. Conesa, A. Pérez-Navarro, J. Torres-Sospedra, R. Montoliu (Eds.), Geographical and
     Fingerprinting Data to Create Systems for Indoor Positioning and Indoor/Outdoor Nav-
     igation, Intelligent Data-Centric Systems, Academic Press, 2019, pp. 147 – 167. URL:
     http://www.sciencedirect.com/science/article/pii/B978012813189300006X. doi:https://
     doi.org/10.1016/B978-0-12-813189-3.00006-X.
[19] S. Knauth, A. Koukofikis, Smartphone positioning in large environments by sensor data
     fusion, particle filter and fcwc, in: 2016 International Conference on Indoor Positioning
     and Indoor Navigation (IPIN), 2016, pp. 1–5. doi:10.1109/IPIN.2016.7743706.
[20] S. Knauth, Smartphone pdr positioning in large environments employing wifi, particle
     filter, and backward optimization, in: 2017 International Conference on Indoor Positioning
     and Indoor Navigation (IPIN), 2017, pp. 1–6. doi:10.1109/IPIN.2017.8115918.
[21] E. Keogh, C. A. Ratanamahatana, Exact indexing of dynamic time warping, Knowledge and
     Information Systems 7 (2005) 358–386. URL: https://doi.org/10.1007/s10115-004-0154-9.
     doi:10.1007/s10115-004-0154-9.