Skip to content

Raziel90/pyfremen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyFreMEn

Fast Python implementation of the FreMEn model implemented in https://github.com/gestom/fremen

Frequency Map Enhancement (FreMEn) is a method that allows to introduce dynamics into spatial models used in the mobile robotics domain. Many of these models describe the environment by a set of discrete components with binary states. For example, cells of an occupancy grid are occupied or free, edges of a topological map are traversable or not, doors are opened or closed, rooms are vacant or occupied, landmarks are visible or occluded, etc. Typically, the state of every model component is uncertain, because it is measured indirectly by means of sensors which are affected by noise. The uncertainty is typically represented by means of a probability, that is normally considered a static variable. Thus, the probability of a particular component being in a particular state remains constant unless the state is being measured by the robot.

Frequency Map Enhancement considers the probability of each environment state as a function of time and represents it by a combination of harmonic components. The idea assumes that in populated environments, many of the observed changes are caused by humans performing their daily activities. Therefore, the environment's dynamics is naturally periodic and can be modelled by its frequency spectrum that represent a combination of harmonic functions that correspond to periodic processes influencing the environment. Such a model not only allows representation of environment dynamics over arbitrary timescales with constant memory requirements, but also prediction of future environment states. The proposed approach can be applied to many of the state-of-the-art environment models.

Installation

The only necessary dependency is numpy

pip install numpy # if using pip
conda install numpy # if using conda

This package can be installed by calling:

pip install git+https://github.com/Raziel90/pyfremen.git  

As soon as the interface is definitive it will be installable on the PyPi. The code is tested for python {2.7, 3.5, 3.6, 3.7, 3.8}

Publications


  1. T.Krajnik, J.P.Fentanes, G.Cielniak, C.Dondrup, T.Duckett: Spectral Analysis for Long-Term Robotic Mapping. ICRA 2014. bibtex --> Original Paper
  2. C.Coppola, T.Krajnik, T.Duckett, N.Bellotto: Learning temporal context for activity recognition, ECAI 2016. bibtex --> Application on Activity Recognition