MaLoc: a practical magnetic fingerprinting approach to indoor localization using smartphones
https://www.indooratlas.com/
MaLoc: a practical magnetic fingerprinting approach to indoor localization using smartphones |
However, tracking the location of a mobile user requires
frequent Wi-Fi scanning which is quite power hungry.
This approach is based on the hypothesis
that in an indoor setting the magnetic field is highly nonuniform,
and the magnetic field fluctuations arise from both
natural and man-made sources (e.g., steel and concrete structures
and electric systems).
The abnormalities of the magnetic
field can be used as fingerprints for indoor localization.
While this approach shares a similar idea as Wi-Fi fingerprinting,
it certainly has several advantages [2, 7, 13, 22]: 1) independent
from the Wi-Fi infrastructure; 2) more reliable than
Wi-Fi; 3) the change of magnetic field with location is quite
significant, allowing for precise positioning; 4) more power
efficient.
【the phone’s three axes (X, Y and Z).】
【particles -- samples】
Different from Wi-Fi fingerprints which combine the radio
signal strength from multiple access points, a magnetic fingerprint
is basically a 3-axis vector which consists of the magnetic
field readings along the phone’s three axes (X, Y and Z).
Studies [2, 7, 21] show that in a large indoor space the magnetic
fingerprints may not be unique. As a result, large localization
error may occur. Most of the existing work [4, 11,
12] leverage on Particle Filter (i.e., Monte Carlo Localization
or MCL) to solve this problem and improve accuracy. The
basic principle is to use random samples (also referred to as
particles, i.e., hypothesis for the user’s state such as position
and heading direction) to represent the posterior distribution
of the user’s state. Particle filter recursively re-samples a set
of particles according to a series of magnetic fingerprints and
their spatial correlations to converge to the poster distribution
of true state. The spatial correlations can be obtained through
user motion estimation. Therefore, the performance of particle
filter depends on: 1) motion estimation; 2) fingerprint
measurement and the magnetic fingerprinting model; and 3)
resampling.
【1) motion estimation; 2) fingerprint
measurement and the magnetic fingerprinting model; and 3)
resampling.】
【Monte Carlo Localization】
【phone orientation VS user orientation】
【the magnetometers on different smartphones have to be carefully calibrated】
When the phone changes its orientation, we get
different vectors. One may collect and store the magnetic
readings of all directions at any location [4, 7], which incurs
high training cost, or use coordinate transformation [12],
which is error-prone. But both measurement models result
in the work based on particle filter [4, 11, 12] typically require
the smartphone to head the same way as the user. This
is obviously not practical. Moreover, the magnetometers on
different smartphones have to be carefully calibrated before
use. Magnetometer calibration is difficult considering a large
number of smartphones. Therefore, a better measureme
【user heading VS phone heading】
The
basic principle is to use random samples (also referred to as
particles, i.e., hypothesis for the user’s state such as position
and heading direction) to represent the posterior distribution
of the user’s state.
【a fast failure detection mechanism Kidnapped Robot Problem】
Third, existing particle filter methods suffer from the wellknown
“Kidnapped Robot Problem” [24], in which the robot
may believe it knows where it is while it does not. This may
turn into a serious problem when localizing smartphones, i.e.,
it may take a long time for the particle filter to realize localization
failure, where localization errors can be arbitrary in
this period. Hence, a fast failure detection mechanism during
runtime is highly desired.
【novel】
【extracting both the horizontal and vertical components of the magnetic vector --- independent from phone orientation】
【a novel motion estimation method covering step
counting, step length estimation and user heading change estimation,
which is independent from phone orientation】
It combines a
novel magnetic fingerprinting model with the common magnetic
density fingerprinting model. The novel magnetic fingerprint
model is obtained by extracting both the horizontal
and vertical components of the magnetic vector, which has
the key features of being independent from phone orientation.
We also explore the gradient of magnetic fingerprints to avoid
calibrating different smartphone magnetometers. Secondly,
we propose a novel motion estimation method covering step
counting, step length estimation and user heading change estimation,
which is independent from phone orientation. To
minimize estimation errors and improve system robustness,
we propose a dynamic step length estimation algorithm and
a heuristic resampling algorithm. Specially, the heuristic resampling
algorithm allows smartphone for other use such as
answering a call while walking, whereas in traditional particle
filter it may arise heading offset change and introduce
large errors into heading change estimation, and hence result
in localization failure. Thirdly, we propose a localization
quality estimation method by utilizing the clustering degree
of particles. Based on this method, we design a localization
failure detection method to address global localization failure,
and our experiments show it is able to detect 92.6% of
localization failure. Finally, we develop an efficient crowdsourcing
method to collect magnetic fingerprints, aiming to
improve the existing time-consuming and labor-intensive collection
process [13].
【gradients VS variance 】
This suggests
that we can use the gradients of fingerprints instead of
raw fingerprint values to avoid calibrating different magnetometers.
【inertial -- reevaluate】
The motion model updates
each particle’s state by estimating user’s motion leveraged
on the inertial sensors. The measurement model then reevaluates
the particles’ weights.
【the
motion model, the measurement model and the resampling
model】
Essentially, the performance of a particle filter
based method completely depends on how these three models
construct.
【Gaussian noise】
, Gl~N(0, σl) and Gθ~N(0, σθ) are used to enlarge the
diversity of particles.
【step length】
The step length is different from
one user to another, and even one person’s step length may be
changed. Inaccurate step length estimation will lead to large
localization errors, resulting in localization failure, which has
been shown in the experiment in Section 9. We propose a dynamic
step length estimation algorithm to effectively solve
these uncertainties.
【resample】
resample new particles
from old ones according to the discrete probability distribution
generated by their weights.
the current particles are generated from the
last round of localization.
【Steps Counting --- counting the number of peaks or valleys may not work 】
As
shown in Fig. 5, the acceleration values are captured by a
smartphone carried in different ways, e.g., in hand, in the shirt
pocket, and in the front pant pocket. The result shows that
counting the number of peaks or valleys may not work for
all cases.
【acceleration variance -- acceleration variance 】
We set four thresholds, T u
acc, T d
acc and T u
time, T d
time, to filter
false cases.
the upper bound and lower
bound of the acceleration variance between two adjacent peak
and valley
【Dynamic Step Length Estimation】
Maybe国庆期间的中科院“步态识人”论文--有参考点
A particle with a higher
weight is more close to the true state. On the other hand,
this particle’s step length is also closer to the true step length.
Based on this theory, we design a dynamic
step length estimation algorithm. Instead of just using
lweighted as step length, we design a queue Q size of
Qsize to cache the most recent lweight.
【queue Cache】
Considering
when the user’s heading changes, his step length may
have some changes, resulting in uncertain influence on the
step length estimation. In our algorithm, we will not put this
part into the queue.
【compass --- gyroscope - angular velocity 】
Since compass does not work well in indoor environments,
gyroscope may be a better choice. The gyroscope on a
smartphone measures the angular velocity around the phone’s
x, y and z axis, respectively.
【gravity sensor --- gravity direction】
gravity sensor on smartphone to obtain
the angle changes around the gravity direction
【heuristic --- randomly samples new particles when the total
non-normalized weight decreases】
We propose a heuristic algorithm
to solve this problem, inspired by the random particle filter
[24] which randomly samples new particles when the total
non-normalized weight decreases. Our algorithm heuristically
samples parts of new particles in the resampling phase instead
of only sampling from the old particles (See Algorithm
1).
【magnetic measurement model】
Because in the measurement
phase, each particle obtains the reference fingerprint Bx,y,θ
at a location from the database according to its position (x, y)
and heading θ (not phone’s heading θp due to inaccurate compass
readings). As θ represents user’s heading, if it is not the
same as the phone’s heading θp, the magnetic field reading
on smartphone cannot map with any particle’s observation
Bx,y,θ as it should be mapped to Bx,y,θp . This may result
in localization failure. Therefore, using this type of observation
on smartphone is not practical.
We can extract both the vertical and horizontal
components of Bp and construct a new observation value
(Bh, Bv) (named HV fingerprint).
【gravity sensor reading】
the
gravity sensor reading is very precise when the user stands
still. However, noise will be introduced when the user moves,
resulting in decreasing in precision or even localization failure.
【accelerate the convergence】
In this work, we combine both the magnitude B and (Bh, Bv)
using a hybrid measurement model. The HV fingerprint has
the advantage of more uniqueness, and it makes the particle
filter converge to the right location faster. However, it is not
as stable as the magnetic magnitude fingerprint. Therefore,
we use the HV fingerprint to accelerate the convergence of
MaLoc when localization starts, and then we switch it to the
magnetic magnitude fingerprint for “tracking”.
【clustering degree】
As shown in Fig. 8, the data collector requires walking
along these lines to cover an area. On each line, we set the
starting point, the heading direction and the path length. We
then walk along this path with a slow and constant speed. In
this process, the tool application will record data captured by
the magnetic sensor on smartphone. A magnetic fingerprint
collected will be stored as < Bh, Bv > and the magnitude
can be computed from it. We simply assume the data collector
walking at a constant speed. Each magnetic fingerprint
can then be mapped with its location easily.
Eventually, we obtain a
magnetic fingerprint in every 0.1m×0.1m square.
【https://www.indooratlas.com/】
MaLoc: a practical magnetic fingerprinting approach to indoor localization using smartphones的更多相关文章
- Magnetic Fingerprinting Approach to Indoor Localization
Magnetic Fingerprinting Approach to Indoor Localization
- Task: Indoor Positioning with WiFi Signals
Task: Indoor Positioning with WiFi SignalsYou are hired by a company to design an indoor localizatio ...
- {ICIP2014}{收录论文列表}
This article come from HEREARS-L1: Learning Tuesday 10:30–12:30; Oral Session; Room: Leonard de Vinc ...
- CVPR 2015 papers
CVPR2015 Papers震撼来袭! CVPR 2015的文章可以下载了,如果链接无法下载,可以在Google上通过搜索paper名字下载(友情提示:可以使用filetype:pdf命令). Go ...
- cvpr2015papers
@http://www-cs-faculty.stanford.edu/people/karpathy/cvpr2015papers/ CVPR 2015 papers (in nicer forma ...
- Official Program for CVPR 2015
From: http://www.pamitc.org/cvpr15/program.php Official Program for CVPR 2015 Monday, June 8 8:30am ...
- Man手册--nmap
目录 nmap使用手册 附录: nmap使用手册 附录: NMAP(1) Nmap Reference Guide NMAP(1) NAME nmap - Network exploration to ...
- (转) [it-ebooks]电子书列表
[it-ebooks]电子书列表 [2014]: Learning Objective-C by Developing iPhone Games || Leverage Xcode and Obj ...
- linux内核调试指南
linux内核调试指南 一些前言 作者前言 知识从哪里来 为什么撰写本文档 为什么需要汇编级调试 ***第一部分:基础知识*** 总纲:内核世界的陷阱 源码阅读的陷阱 代码调试的陷阱 原理理解的陷阱 ...
随机推荐
- Network | CIDR
无类别(现在) 无类别域间路由(Classless Inter-Domain Routing.CIDR)是一个用于给用户分配IP地址以及在互联网上有效地路由IP数据包的对IP地址进行归类的方法. CI ...
- php 开发 错误汇总
[问题]nginx thinkphp中 除首页外全显示404 Not Found,非rewrite问题,Linux+nginx环境 [解决方案]: 1.在nginx下重新支持pathinfo模式 2. ...
- Flume NetCat Demo
准备工作: 1.apache官网下载flume 2.解压flume 3.修改flume-env.sh,配置JAVA_HOME NetCat采集Demo: 1.在conf中创建netcat-logger ...
- Linux Unix shell 编程指南学习笔记(第四部分)
第十六章 shell脚本介绍 此章节内容较为简单,跳过. 第十七章 条件測试 test命令 expr命令 test 格式 test condition 或者 [ conditio ...
- <LeetCode OJ> 257. Binary Tree Paths
257. Binary Tree Paths Total Accepted: 29282 Total Submissions: 113527 Difficulty: Easy Given a bina ...
- struts2获取前台提交的参数
CreateTime--2017年8月25日16:30:11 Author:Marydon struts2对获取前台提交参数的封装 需要导入: import java.util.Enumerati ...
- bottle的几个小坑
距离我在<web.py应用工具库:webpyext>里说要换用bottle,已经过去快两个月了--事实上在那之前我已经開始着手在换了.眼下那个用于 Backbone.js 介绍的样例程序已 ...
- MongoDB入门学习(二):MongoDB的基本概念和数据类型
上一篇讲了MongoDB的安装和管理,当中涉及到了一些概念,数据结构另一些API的调用,不知道的没关系,事实上非常easy,这篇会简介一下. 1.文档 文档是MongoDB的核心概念.多个键值对有序的 ...
- 在VS2013中打开Nuget
1.工具→NuGet程序包管理器→程序包管理控制台 2.没有的话,就去 工具→扩展和更新 搜索nuget
- sakila演示数据库安装
下载地址:https://dev.mysql.com/doc/index-other.html 安装帮助文档:https://dev.mysql.com/doc/sakila/en/sakila-in ...