21#ifndef ROLL_CALIBRATION_H
22#define ROLL_CALIBRATION_H
24#include "laser_calibration.h"
32 std::string config_path);
Abstract base class for laser calibration.
Calibrate the roll angle of a laser.
static constexpr float threshold
The threshold of the left-right difference to stop calibration.
RollCalibration(LaserInterface *laser, fawkes::tf::Transformer *tf_transformer, fawkes::NetworkConfiguration *config, std::string config_path)
Constructor.
float get_new_roll(float mean_error, float old_roll)
Compute a new roll angle based on the mean error and the old roll.
virtual void calibrate()
The actual calibration.
PointCloudPtr filter_calibration_cloud(PointCloudPtr input)
Filter the input cloud to be useful for roll calibration.
float get_lr_mean_diff()
Get the difference of the mean of z of the left and right pointclouds.
Laser360Interface Fawkes BlackBoard Interface.
Remote configuration via Fawkes net.