Giter Club home page Giter Club logo

deeplocnet's Introduction

Radio Inertial SLAM

This branch contains the Python Simulator for Radio-Inertial Localization with support for Pytorch, Keras and ROS. The MATLAB Simulator for the same can be found on the matlab branch of this repository. The requirements for running the simulator are as follows:

Requirements

  1. Python 3.6
  2. Tensorflow/Keras or Pytorch
  3. PyLayers

Citation

If you use this work (paper or code), or draw inspiration from it, please cite the authors as follows:

@inproceedings{Dhanjal_2019,
   title={DeepLocNet: Deep Observation Classification and Ranging Bias Regression for Radio Positioning Systems},
   url={http://dx.doi.org/10.1109/IROS40897.2019.8967767},
   DOI={10.1109/iros40897.2019.8967767},
   booktitle={2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
   publisher={IEEE},
   author={Dhanjal, Sahib Singh and Ghaffari, Maani and Eustice, Ryan M.},
   year={2019},
   month=nov }

Installation

Install Anaconda 3 and proceed with installing Pylayers as per their manual. Once installed, copy and paste all the *.ini files from the assets/inis folder into the pylayers_project/ini/ directory created by the Pylayers installation script. The directory defaults to~/pylayers_project/ini/ on Ubuntu. Since pylayers can be tricky to setup, I've attached my anaconda environment in pylayers.yml. Commit 6bbd9c5 worked best for me.

Simulation

Maps

Several different environment maps have been created for testing out the implementation. Some of them are as attached below:

Defstr Layout

Map 1 Map 1 Coverage

Office Layout

Map 2 Map 2 Coverage

Home Layout

Map 3 Map 3 Coverage

2-Dimensional Environment

The blue path is the ground truth generated by the random walk algorithm, whereas the cyan one is the localized path. The red square specifies the goal location and the green square the start location. Actual positions of the access points are encoded in black, whereas those localized are encoded in red (only in Fast SLAM). The results shown below for 2D localization are in the office environment.

Experiment Algorithm Classifier Used (Y/N) Hard/Soft Classification (H/S) Localization MSE
1 Particle Filter N N/A 112.0796
2 Particle Filter Y H 9.2236
3 Particle Filter Y S 9.5589
4 Fast SLAM N N/A 139.1380
5 Fast SLAM Y H 5.8676
6 Fast SLAM Y S 5.2759

The images for all results can be found in the /assets/results/2D/ folder.The result for Fast SLAM using Hard Classification is as follows: Fast SLAM

3-Dimensional Environment

As in the previous case, the blue path is the ground truth generated by the random walk algorithm, whereas the cyan one is the localized path. Actual positions of the access points are encoded in black, whereas those localized are encoded in red (only in Fast SLAM). The results shown below for 3D localization are in the defstr environment.

Experiment Algorithm Classifier Used (Y/N) Hard/Soft Classification (H/S) Localization MSE
1 Particle Filter N N/A 134.8262
2 Particle Filter Y H 52.4851
3 Particle Filter Y S 55.9874
4 Fast SLAM N N/A 116.1535
5 Fast SLAM Y H 12.5777
6 Fast SLAM Y S 11.0179

The images for all results can be found in the /assets/results/3D/ folder.The result for Fast SLAM using Hard Classification is as follows: Fast SLAM

deeplocnet's People

Contributors

sahibdhanjal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.