23     _edgeLength(edgeLength),
 
   24     _averagePosition(2, 
CVVec3f(0.0f, 0.0f, 0.0f)),
 
   25     _averageRotation(2, 
SLQuat4f(0.0f, 0.0f, 0.0f, 1.0f))
 
   48     vector<CVVec3f>  translations;
 
   49     vector<SLQuat4f> rotations;
 
   50     vector<float>    weights;
 
   52     for (
size_t i = 0; i < 
arucoIDs.size(); i++)
 
   96         faceViewMatrix.
m(12, translation.
x);
 
   97         faceViewMatrix.
m(13, translation.
y);
 
   98         faceViewMatrix.
m(14, translation.
z);
 
  104         translations.emplace_back(translation.
x, translation.
y, translation.
z);
 
  105         rotations.push_back(rotation);
 
  106         weights.push_back(weight);
 
  113     if (!translations.empty())
 
  129                                    rot.
m(1), rot.
m(4), rot.
m(7), pos.val[1],
 
  130                                    rot.
m(2), rot.
m(5), rot.
m(8), pos.val[2],
 
#define PROFILE_FUNCTION()
 
void set(SLQuat4f value)
Sets the current value in the value array and builds the average.
 
Live video camera calibration class with OpenCV an OpenCV calibration.
 
Averaged< CVVec3f > _averagePosition
 
AveragedQuat4f _averageRotation
 
CVTrackedArucoCube(string calibIniPath, float edgeLength)
 
bool track(CVMat imageGray, CVMat imageBgr, CVCalibration *calib)
Tracks the all Aruco markers in the given image for the first sceneview.
 
OpenCV ArUco marker tracker class derived from CVTracked.
 
bool trackAll(CVMat imageGray, CVMat imageBgr, CVCalibration *calib, CVRect roi=CVRect(0, 0, 0, 0))
 
vector< int > arucoIDs
detected Aruco marker IDs
 
CVVMatx44f objectViewMats
object view matrices for all found markers
 
CVMatx44f _objectViewMat
view transformation matrix
 
static SLQuat4f averageQuaternion(vector< SLQuat4f > quaternions, vector< float > weights)
 
static CVVec3f averageVector(vector< CVVec3f > vectors, vector< float > weights)
 
void transpose()
Sets the transposed matrix by swaping around the main diagonal.
 
SLVec3< T > translation() const
 
void rotate(T degAng, T axisx, T axisy, T axisz)
 
SLVec3< T > axisZ() const
 
void translate(T tx, T ty, T tz=0)
 
SLMat3< T > toMat3() const
 
void fromMat3(const SLMat3< T > &m)
 
T dot(const SLVec3 &v) const
 
void set(T value)
Sets the current value in the value array and builds the average.
 
T clamp(T a, T min, T max)