Skip to content

jmicahc/noise_reducers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LIDAR noise filters

This repository contains a transducer-based implementation of noise filters for processing of LIDAR data.

How To Run

  1. python tests.py to run tests
  2. python core.py to run filters on an infinite, randomly generated stream of LIDAR data.
  3. See Command Options for available options.

Command-line Options

  1. --max_range : (float) specifies low-pass signal level
  2. --min_range : (float) specifies high-pass signal level
  3. --num_measurements : (int) specifies how many measurements should be contained in each observation
  4. --scan_rate : (float) specifies the rate (secs) that the psuedo LIDAR diver will perform measurements and send them to the consuming thread.
  5. --D : specifies the size of the moving median window.
  6. --measurement_interval : An array of two floats specifying the sample space of the measurement generator (assumes uniform probability distribution).

Notes

This is not mature software. The most interesting thing about the implementation is that the processing nodes compose directly and remain totally independent of the sources, conveyances, and sinks of the processes that they modify. Thus one can apply them in an eager/pull-based collection building proceses, lazy/infinite processes, push-based coroutine processes, or indeed concurrent processes. This adds some flexability that can sometimes be useful. See filters.py for transducer implementations as python classes.

Works Cited

  1. Python transducer implemtation and coroutine appplication context is inspired by a blog post by Robert Smallshire.
  2. Threaded Code was based on Python Core documentation adn Laurent Luce's excelent blog post.

About

Some LIDAR filters.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages