zoukankan      html  css  js  c++  java
  • MaLoc: a practical magnetic fingerprinting approach to indoor localization using smartphones

    https://www.indooratlas.com/



    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/】
     

  • 相关阅读:
    转:哈希加密
    转: 基础哈希介绍
    ASP.NET MVC-URL路由
    Nhibnate之CreateQuery和CreateSqlQuery查询
    NHibernate.HibernateException:“Unable to locate persister for the entity named 'Domain.Entity.LeaseUser'.
    async/await中的promise返回错误reject
    python txt文件常用读写操作
    Python 第三方日志框架loguru使用
    pycharm常用设置与常用快捷键
    jmeter正则表达式
  • 原文地址:https://www.cnblogs.com/rsapaper/p/7655116.html
Copyright © 2011-2022 走看看