Struct TagDetection

Struct Documentation

struct TagDetection

Public Functions

TagDetection() = default
inline TagDetection(unsigned id, bool good, code_t obs_code, code_t code, unsigned hamming_distance, unsigned num_rotations)
cv::Point2f Project(const cv::Point2f &p) const

interpolate

Parameters:

p

Returns:

void RotatePoints(const std::vector<cv::Point2f> &quad_p)
bool OverlapsTooMuch(const TagDetection &other) const

OverlapsTooMuch Determines whether two tags overlap too much.

Parameters:

other

Returns:

void ScaleTag(float scale)

ScaleTag.

Parameters:

scale

Public Members

unsigned id
bool good = false
code_t obs_code

obs_code Observed code

code_t code

code Matched code

unsigned hamming_distance

hamming_distance

unsigned num_rot

num_rotations Number of 90 degree rotations clockwise required to align the code

cv::Point2f cxy

cxy Center of tag in pixel coordinates

std::vector<cv::Point2f> p

p Position of the detection The points travel counter-clockwise around the target, alwasy starting from the same corner of the tag

float obs_perimeter

obs_perimeter length of the observed perimeter Observed perimeter excludes the inferred perimeter which is used to connect incomplete quads

cv::Matx33f H

H Homography y = Hx, y are pixel coordinates, x are tag-relative coordinates from (-1,-1) to (1, 1)