Class TargetBase

Inheritance Relationships

Derived Type

Class Documentation

class aslam::calibration::TargetBase

Represents a calibration target with known geometry.

The class is a little limiting: The target is supposed to be square such that each row has the same number of points. Points along a row are supposed to be colinear. Points along a column are supposed to be colinear.

Subclassed by aslam::calibration::TargetAprilGrid

Public Functions

ASLAM_POINTER_TYPEDEFS(TargetBase)
inline virtual ~TargetBase()
const Eigen::Matrix3Xd &points() const

Get all points from the target expressed in the target frame.

Eigen::Vector3d point(size_t point_idx) const

Get a point from the target expressed in the target frame.

double *pointMutable(size_t point_idx)

Return pointer to the i-th grid point in target frame.

Eigen::Vector3d gridPoint(size_t row_idx, size_t col_idx) const

Get a point from the target expressed in the target frame by row and column.

std::pair<size_t, size_t> pointToGridCoordinates(size_t point_idx) const

Get the grid coordinates for a point index.

size_t gridCoordinatesToPoint(size_t row_idx, size_t col_idx) const

Get the point index from the grid coordinates.

inline size_t rows() const

Number of rows in the calibration target.

inline size_t cols() const

Number of columns in the calibration target.

inline size_t size() const

Get the number of points of the full grid.

virtual double width() const

Extent of the grid in row dimension.

virtual double height() const

Extent of the grid in column dimension.

Protected Functions

TargetBase(size_t rows, size_t cols, const Eigen::Matrix3Xd &target_points)

Protected Attributes

const size_t rows_

Number of point rows in the calibration target.

const size_t cols_

Number of point columns in the calibration target.

Eigen::Matrix3Xd points_target_frame_

Grid points stored in row-major order (idx = cols * r + c).