depth_map_preprocessing
Static Public Member Functions | Static Protected Member Functions | List of all members
depth_map_preprocessing::Filters Class Reference

#include <Filters.hpp>

Static Public Member Functions

static void filterMinDistance (base::samples::DepthMap &laser_scan, float min_range)
 
static void filterOutliers (base::samples::DepthMap &laser_scan, double max_deviation_angle, unsigned min_neighbors=1)
 

Static Protected Member Functions

static unsigned checkPoints (const Eigen::Vector3f &origin, const Eigen::Vector3f &neighbor, double max_angle)
 

Member Function Documentation

unsigned Filters::checkPoints ( const Eigen::Vector3f &  origin,
const Eigen::Vector3f &  neighbor,
double  max_angle 
)
staticprotected

Computes the angle between the plain described by the unit vector of the origin and the vector from the origin to neighbor. If the angle is smaller or equal to max_angle returns 1, 0 otherwiese.

void Filters::filterMinDistance ( base::samples::DepthMap &  laser_scan,
float  min_range 
)
static

This method filters outliers according to a given minimum distance from the scan origin.

Parameters
laser_scaninput scan
min_rangemin range each measurement must have
void Filters::filterOutliers ( base::samples::DepthMap &  laser_scan,
double  max_deviation_angle,
unsigned  min_neighbors = 1 
)
static

This method filters outliers according to the maximum angle to each of their four direct neighbors. It aims to remove outliers which occure separated and therefore have high angles to their next neighbors. The angle is allways from the plain described by the unit vector of the current measurement and the vector from the current measurement to the neighbor measurement.

Parameters
laser_scaninput scan
max_deviation_anglethe angle to a valid neighbor must be lower than this angle. Values in range [0,0.5*PI]
min_neighborsminimum number of valid neighbors each measurement should have

The documentation for this class was generated from the following files: