assistive-rehab
Public Member Functions | Protected Member Functions | Protected Attributes
assistive_rehab::SkeletonStd Class Reference

Basic class for skeleton standard. More...

#include <skeleton.h>

Inheritance diagram for assistive_rehab::SkeletonStd:
assistive_rehab::Skeleton

Public Member Functions

 SkeletonStd ()
 Default constructor.
 
bool update_planes () override
 Update skeleton planes. More...
 
const std::string & getType () const
 Return a reference to the type of the skeleton. More...
 
void setTag (const std::string &tag)
 Set the tag of the skeleton. More...
 
const std::string & getTag () const
 Return a reference to the tag of the skeleton. More...
 
bool setTransformation (const yarp::sig::Matrix &T)
 Set a new transformation matrix of the skeleton. More...
 
const yarp::sig::Matrix & getTransformation () const
 Retrieve the transformation matrix of the skeleton. More...
 
bool setCoronal (const yarp::sig::Vector &coronal)
 Set a new coronal plane to the skeleton. More...
 
bool setSagittal (const yarp::sig::Vector &sagittal)
 Set a new sagittal plane to the skeleton. More...
 
bool setTransverse (const yarp::sig::Vector &transverse)
 Set a new transverse plane to the skeleton. More...
 
yarp::sig::Vector getCoronal () const
 Retrieve the coronal plane of the skeleton. More...
 
yarp::sig::Vector getSagittal () const
 Retrieve the sagittal plane of the skeleton. More...
 
yarp::sig::Vector getTransverse () const
 Retrieve the transverse plane of the skeleton. More...
 
double getMaxPath () const
 Retrieve the skeleton's maximum path. More...
 
virtual yarp::os::Property toProperty ()
 Export the skeleton structure as a property. More...
 
virtual void fromProperty (const yarp::os::Property &prop)
 Import the skeleton structure from its properties. More...
 
unsigned int getNumKeyPoints () const
 Retrieve the number of keypoints of the skeleton. More...
 
int getNumFromKey (const std::string &tag) const
 Retrieve the index of the keypoint from its tag. More...
 
const KeyPointoperator[] (const std::string &tag) const
 Keypoint access. More...
 
const KeyPointoperator[] (const unsigned int i) const
 Keypoint access. More...
 
virtual void update ()
 Update skeleton.
 
virtual void update (const std::vector< yarp::sig::Vector > &ordered)
 Update skeleton from ordered list. More...
 
virtual void update (const std::vector< std::pair< std::string, yarp::sig::Vector >> &unordered)
 Update skeleton from unordered list. More...
 
virtual void update (const yarp::os::Property &prop)
 Update skeleton from properties. More...
 
virtual void update_withpixels (const std::vector< std::pair< yarp::sig::Vector, yarp::sig::Vector >> &ordered)
 Update skeleton from ordered list. More...
 
virtual void update_withpixels (const std::vector< std::pair< std::string, std::pair< yarp::sig::Vector, yarp::sig::Vector >>> &unordered)
 Update skeleton from unordered list. More...
 
virtual std::vector< yarp::sig::Vector > get_ordered () const
 Retrieve the ordered list of keypoints. More...
 
virtual std::vector< std::pair< std::string, yarp::sig::Vector > > get_unordered () const
 Retrieve the unordered list of keypoints. More...
 
virtual std::vector< std::pair< yarp::sig::Vector, yarp::sig::Vector > > get_ordered_withpixels () const
 Retrieve the ordered list of keypoints. More...
 
virtual std::vector< std::pair< std::string, std::pair< yarp::sig::Vector, yarp::sig::Vector > > > get_unordered_withpixels () const
 Retrieve the unordered list of keypoints. More...
 
void normalize (const double n=1.0)
 Normalize skeleton in order to have unitary/desired distance among keypoints. More...
 
void scale (const double s)
 Rescale skeleton. More...
 
void print (std::ostream &os=std::cout) const
 Print skeleton information.
 

Protected Member Functions

yarp::os::Property helper_toproperty (KeyPoint *k) const
 
void helper_fromproperty (yarp::os::Bottle *prop, KeyPoint *parent)
 
void helper_updatefromproperty (yarp::os::Bottle *prop)
 
void helper_normalize (KeyPoint *k, const std::vector< yarp::sig::Vector > &helperpoints, const double n)
 
void helper_scale (KeyPoint *k, const std::vector< yarp::sig::Vector > &helperpoints, const double s)
 
double helper_getmaxpath (KeyPoint *k, std::vector< bool > &visited) const
 

Protected Attributes

std::string type
 skeleton's type ("assistive_rehab::SkeletonStd")
 
std::string tag
 skeleton's tag
 
std::vector< KeyPoint * > keypoints
 vector of pointer to KeyPoint
 
std::unordered_map< std::string, KeyPoint * > tag2key
 map associating a tag to a pointer to a KeyPoint
 
std::unordered_map< KeyPoint *, unsigned int > key2id
 map associating a pointer to a KeyPoint to an index
 
yarp::sig::Matrix T
 transformation matrix
 
yarp::sig::Vector coronal
 vector containing the normal to the coronal plane
 
yarp::sig::Vector sagittal
 vector containing the normal to the sagittal plane
 
yarp::sig::Vector transverse
 vector containing the normal to the transverse plane
 

Detailed Description

Basic class for skeleton standard.

Definition at line 528 of file skeleton.h.

Member Function Documentation

◆ fromProperty()

void Skeleton::fromProperty ( const yarp::os::Property &  prop)
virtualinherited

Import the skeleton structure from its properties.

Parameters
propProperty object containing the properties of a skeleton.

Available properties are:

  • type: string containing skeleton's type ("assistive_rehab::SkeletonStd").
  • tag: string containing skeleton's tag.
  • transformation: 4 x 4 skeleton's roto-translation matrix.
  • coronal: vector containing skeleton's coronal plane.
  • sagittal: vector containing skeleton's sagittal plane.
  • transverse: vector containing skeleton's transverse plane.
  • skeleton: list containing keypoints with the following subproperties:
    • tag: string containing keypoint's tag.
    • status: string containing keypoint's status (updated or stale).
    • position: vector containing keypoint's camera coordinates x,y,z.
    • pixel: vector containing keypoint's image coordinates u,v.
    • child: list containing keypoint's child, specified as position, status, tag.

Definition at line 400 of file skeleton.cpp.

401 {
402  for (auto &k:keypoints)
403  delete k;
404 
405  keypoints.clear();
406  tag2key.clear();
407  key2id.clear();
408 
409  tag=prop.check("tag",Value("")).asString();
410  if (prop.check("transformation"))
411  {
412  if (Bottle *b=prop.find("transformation").asList())
413  b->write(T);
414  }
415  else
416  T=eye(4,4);
417 
418  coronal=sagittal=transverse=zeros(3);
419  if (prop.check("coronal"))
420  if (Bottle *b=prop.find("coronal").asList())
421  b->write(coronal);
422  if (prop.check("sagittal"))
423  if (Bottle *b=prop.find("sagittal").asList())
424  b->write(sagittal);
425  if (prop.check("transverse"))
426  if (Bottle *b=prop.find("transverse").asList())
427  b->write(transverse);
428  helper_fromproperty(prop.find("skeleton").asList(),nullptr);
429 }
yarp::sig::Matrix T
transformation matrix
Definition: skeleton.h:229
std::string tag
skeleton's tag
Definition: skeleton.h:224
std::unordered_map< KeyPoint *, unsigned int > key2id
map associating a pointer to a KeyPoint to an index
Definition: skeleton.h:227
std::vector< KeyPoint * > keypoints
vector of pointer to KeyPoint
Definition: skeleton.h:225
yarp::sig::Vector sagittal
vector containing the normal to the sagittal plane
Definition: skeleton.h:231
yarp::sig::Vector transverse
vector containing the normal to the transverse plane
Definition: skeleton.h:232
yarp::sig::Vector coronal
vector containing the normal to the coronal plane
Definition: skeleton.h:230
std::unordered_map< std::string, KeyPoint * > tag2key
map associating a tag to a pointer to a KeyPoint
Definition: skeleton.h:226

References assistive_rehab::Skeleton::coronal, assistive_rehab::Skeleton::key2id, assistive_rehab::Skeleton::keypoints, assistive_rehab::Skeleton::sagittal, assistive_rehab::Skeleton::T, assistive_rehab::Skeleton::tag, assistive_rehab::Skeleton::tag2key, and assistive_rehab::Skeleton::transverse.

◆ get_ordered()

vector< Vector > Skeleton::get_ordered ( ) const
virtualinherited

Retrieve the ordered list of keypoints.

Returns
vector containing the ordered list of keypoints, each specified as vector containing the x,y,z camera coordinates.

Definition at line 581 of file skeleton.cpp.

582 {
583  vector<Vector> ordered;
584  for (auto &k:keypoints)
585  ordered.push_back(k->getPoint());
586  return ordered;
587 }

References assistive_rehab::KeyPoint::getPoint(), and assistive_rehab::Skeleton::keypoints.

◆ get_ordered_withpixels()

vector< pair< Vector, Vector > > Skeleton::get_ordered_withpixels ( ) const
virtualinherited

Retrieve the ordered list of keypoints.

Returns
vector containing the ordered list of keypoints, each specified as a pair of vectors with x,y,z and u,v coordinates.

Definition at line 597 of file skeleton.cpp.

598 {
599  vector<pair<Vector,Vector>> ordered;
600  for (auto &k:keypoints)
601  ordered.push_back(make_pair(k->getPoint(),k->getPixel()));
602  return ordered;
603 }

References assistive_rehab::KeyPoint::getPixel(), assistive_rehab::KeyPoint::getPoint(), and assistive_rehab::Skeleton::keypoints.

◆ get_unordered()

vector< pair< string, Vector > > Skeleton::get_unordered ( ) const
virtualinherited

Retrieve the unordered list of keypoints.

Returns
vector containing an unordered list of keypoints, each specified as pair which associates a string, containing the keypoint's tag, and a vector, containing the x,y,z camera coordinates.

Definition at line 589 of file skeleton.cpp.

590 {
591  vector<pair<string,Vector>> unordered;
592  for (auto &it:tag2key)
593  unordered.push_back(make_pair(it.first,it.second->getPoint()));
594  return unordered;
595 }

References assistive_rehab::Skeleton::tag2key.

◆ get_unordered_withpixels()

vector< pair< string, pair< Vector, Vector > > > Skeleton::get_unordered_withpixels ( ) const
virtualinherited

Retrieve the unordered list of keypoints.

Returns
vector containing an unordered list of keypoints, each specified as pair that associates a string containing the keypoint's tag to a pair of vectors of x,y,z and u,v coordinates.

Definition at line 605 of file skeleton.cpp.

606 {
607  vector<pair<string,pair<Vector,Vector>>> unordered;
608  for (auto &it:tag2key)
609  unordered.push_back(make_pair(it.first,make_pair(it.second->getPoint(),it.second->getPixel())));
610  return unordered;
611 }

References assistive_rehab::Skeleton::tag2key.

◆ getCoronal()

Vector Skeleton::getCoronal ( ) const
inherited

Retrieve the coronal plane of the skeleton.

Returns
vector containing x,y,z coordinates of the normal to skeleton's coronal plane.

Definition at line 340 of file skeleton.cpp.

341 {
342  return coronal;
343 }

References assistive_rehab::Skeleton::coronal.

◆ getMaxPath()

double Skeleton::getMaxPath ( ) const
inherited

Retrieve the skeleton's maximum path.

Returns
skeleton's maximum path.

Definition at line 355 of file skeleton.cpp.

356 {
357  Vector paths(1,0.0);
358  for (auto &k:keypoints)
359  {
360  vector<bool> visited(getNumKeyPoints(),false);
361  paths.push_back(helper_getmaxpath(k,visited));
362  }
363  return findMax(paths);
364 }
unsigned int getNumKeyPoints() const
Retrieve the number of keypoints of the skeleton.
Definition: skeleton.h:383

References assistive_rehab::Skeleton::getNumKeyPoints(), and assistive_rehab::Skeleton::keypoints.

◆ getNumFromKey()

int Skeleton::getNumFromKey ( const std::string &  tag) const
inherited

Retrieve the index of the keypoint from its tag.

Parameters
tagstring containing the keypoint's tag.
Returns
skeleton's number of keypoints.

Definition at line 431 of file skeleton.cpp.

432 {
433  auto it1=tag2key.find(tag);
434  if (it1!=tag2key.end())
435  {
436  auto it2=key2id.find(it1->second);
437  if (it2!=key2id.end())
438  return (int)it2->second;
439  }
440  return -1;
441 }

References assistive_rehab::Skeleton::key2id, assistive_rehab::Skeleton::tag, and assistive_rehab::Skeleton::tag2key.

◆ getNumKeyPoints()

unsigned int assistive_rehab::Skeleton::getNumKeyPoints ( ) const
inlineinherited

Retrieve the number of keypoints of the skeleton.

Returns
skeleton's number of keypoints.

Definition at line 383 of file skeleton.h.

383 { return (unsigned int)keypoints.size(); }

References assistive_rehab::Skeleton::keypoints.

Referenced by assistive_rehab::Skeleton::getMaxPath().

◆ getSagittal()

Vector Skeleton::getSagittal ( ) const
inherited

Retrieve the sagittal plane of the skeleton.

Returns
vector containing the x,y,z coordinates of the normal skeleton's sagittal plane.

Definition at line 345 of file skeleton.cpp.

346 {
347  return sagittal;
348 }

References assistive_rehab::Skeleton::sagittal.

◆ getTag()

const std::string& assistive_rehab::Skeleton::getTag ( ) const
inlineinherited

Return a reference to the tag of the skeleton.

Returns
reference to a string containing the skeleton's tag.

Definition at line 278 of file skeleton.h.

278 { return tag; }

References assistive_rehab::Skeleton::tag.

◆ getTransformation()

const yarp::sig::Matrix& assistive_rehab::Skeleton::getTransformation ( ) const
inlineinherited

Retrieve the transformation matrix of the skeleton.

Returns
reference to the skeleton's transformation matrix.
Note
if the transformation matrix is the identity matrix, keypoints are defined with respect to the camera.

Definition at line 291 of file skeleton.h.

291 { return T; }

References assistive_rehab::Skeleton::T.

◆ getTransverse()

Vector Skeleton::getTransverse ( ) const
inherited

Retrieve the transverse plane of the skeleton.

Returns
vector containing the x,y,z coordinates of the normal skeleton's sagittal plane.

Definition at line 350 of file skeleton.cpp.

351 {
352  return transverse;
353 }

References assistive_rehab::Skeleton::transverse.

◆ getType()

const std::string& assistive_rehab::Skeleton::getType ( ) const
inlineinherited

Return a reference to the type of the skeleton.

Returns
reference to the skeleton's type.

Definition at line 266 of file skeleton.h.

266 { return type; }
std::string type
skeleton's type ("assistive_rehab::SkeletonStd")
Definition: skeleton.h:223

References assistive_rehab::Skeleton::type.

◆ normalize()

void Skeleton::normalize ( const double  n = 1.0)
inherited

Normalize skeleton in order to have unitary/desired distance among keypoints.

Parameters
ndouble containing the normalization factor.

Definition at line 613 of file skeleton.cpp.

614 {
615  if (keypoints.size()>0)
616  {
617  vector<Vector> helperpoints;
618  for (auto &k:keypoints)
619  helperpoints.push_back(k->getPoint());
620  helper_normalize(keypoints[0],helperpoints,n);
621  }
622 }

References assistive_rehab::KeyPoint::getPoint(), and assistive_rehab::Skeleton::keypoints.

◆ operator[]() [1/2]

const KeyPoint* assistive_rehab::Skeleton::operator[] ( const std::string &  tag) const
inherited

Keypoint access.

Returns a pointer to the keypoint specified by its tag.

Parameters
tagstring containing the keypoint's tag.
Returns
a (const) pointer to the keypoint.

◆ operator[]() [2/2]

const KeyPoint * Skeleton::operator[] ( const unsigned int  i) const
inherited

Keypoint access.

Returns a pointer to the keypoint specified by its index.

Parameters
iint containing the keypoint's index.
Returns
a (const) pointer to the keypoint.

Definition at line 449 of file skeleton.cpp.

450 {
451  return (i<keypoints.size())?keypoints[i]:nullptr;
452 }

References assistive_rehab::Skeleton::keypoints.

◆ scale()

void Skeleton::scale ( const double  s)
inherited

Rescale skeleton.

Parameters
sdouble containing the scaling factor.

Definition at line 624 of file skeleton.cpp.

625 {
626  if (keypoints.size()>0)
627  {
628  vector<Vector> helperpoints;
629  for (auto &k:keypoints)
630  helperpoints.push_back(k->getPoint());
631  helper_scale(keypoints[0],helperpoints,s);
632  }
633 }

References assistive_rehab::KeyPoint::getPoint(), and assistive_rehab::Skeleton::keypoints.

◆ setCoronal()

bool Skeleton::setCoronal ( const yarp::sig::Vector &  coronal)
inherited

Set a new coronal plane to the skeleton.

Parameters
coronalvector containing the x,y,z coordinates of the normal to the desired plane.

Definition at line 307 of file skeleton.cpp.

308 {
309  if (coronal.length()>=3)
310  {
311  this->coronal=coronal.subVector(0,2);
312  return true;
313  }
314  else
315  return false;
316 }

References assistive_rehab::Skeleton::coronal.

◆ setSagittal()

bool Skeleton::setSagittal ( const yarp::sig::Vector &  sagittal)
inherited

Set a new sagittal plane to the skeleton.

Parameters
sagittalvector containing the x,y,z coordinates of the normal to the desired plane.

Definition at line 318 of file skeleton.cpp.

319 {
320  if (sagittal.length()>=3)
321  {
322  this->sagittal=sagittal.subVector(0,2);
323  return true;
324  }
325  else
326  return false;
327 }

References assistive_rehab::Skeleton::sagittal.

◆ setTag()

void assistive_rehab::Skeleton::setTag ( const std::string &  tag)
inlineinherited

Set the tag of the skeleton.

Parameters
tagstring containing the desired tag.

Definition at line 272 of file skeleton.h.

272 { this->tag=tag; }

References assistive_rehab::Skeleton::tag.

◆ setTransformation()

bool Skeleton::setTransformation ( const yarp::sig::Matrix &  T)
inherited

Set a new transformation matrix of the skeleton.

Parameters
Tmatrix containing the desired transformation.

Definition at line 296 of file skeleton.cpp.

297 {
298  if ((T.rows()>=4) || (T.cols()>=4))
299  {
300  this->T=T.submatrix(0,3,0,3);
301  return true;
302  }
303  else
304  return false;
305 }

References assistive_rehab::Skeleton::T.

◆ setTransverse()

bool Skeleton::setTransverse ( const yarp::sig::Vector &  transverse)
inherited

Set a new transverse plane to the skeleton.

Parameters
transversevector containing the x,y,z coordinates of the normal to the desired plane.

Definition at line 329 of file skeleton.cpp.

330 {
331  if (transverse.length()>=3)
332  {
333  this->transverse=transverse.subVector(0,2);
334  return true;
335  }
336  else
337  return false;
338 }

References assistive_rehab::Skeleton::transverse.

◆ toProperty()

Property Skeleton::toProperty ( )
virtualinherited

Export the skeleton structure as a property.

Returns
a Property object containing the properties of a skeleton.

Available properties are:

  • type: string containing skeleton's type ("assistive_rehab::SkeletonStd").
  • tag: string containing skeleton's tag.
  • transformation: 4 x 4 skeleton's roto-translation matrix.
  • coronal: vector containing skeleton's coronal plane.
  • sagittal: vector containing skeleton's sagittal plane.
  • transverse: vector containing skeleton's transverse plane.
  • skeleton: list containing keypoints with the following subproperties:
    • tag: string containing keypoint's tag.
    • status: string containing keypoint's status (updated or stale).
    • position: vector containing keypoint's camera coordinates x,y,z.
    • pixel: vector containing keypoint's image coordinates u,v.
    • child: list containing keypoint's child, specified as position, status, tag.

Definition at line 366 of file skeleton.cpp.

367 {
368  Property prop;
369  prop.put("type",type);
370  prop.put("tag",tag);
371 
372  Bottle transformation;
373  transformation.addList().read(T);
374  prop.put("transformation",transformation.get(0));
375 
376  Bottle plane;
377  plane.addList().read(coronal);
378  prop.put("coronal",plane.get(0));
379 
380  plane.clear();
381  plane.addList().read(sagittal);
382  prop.put("sagittal",plane.get(0));
383 
384  plane.clear();
385  plane.addList().read(transverse);
386  prop.put("transverse",plane.get(0));
387 
388  Bottle skeleton;
389  Bottle &skeleton_=skeleton.addList();
390  if (keypoints.size()>0)
391  {
392  Property p=helper_toproperty(keypoints[0]);
393  skeleton_.addList().read(p);
394  }
395  prop.put("skeleton",skeleton.get(0));
396 
397  return prop;
398 }

References assistive_rehab::Skeleton::coronal, assistive_rehab::Skeleton::keypoints, assistive_rehab::Skeleton::sagittal, assistive_rehab::Skeleton::T, assistive_rehab::Skeleton::tag, assistive_rehab::Skeleton::transverse, and assistive_rehab::Skeleton::type.

◆ update() [1/3]

virtual void assistive_rehab::Skeleton::update ( const std::vector< std::pair< std::string, yarp::sig::Vector >> &  unordered)
virtualinherited

Update skeleton from unordered list.

Parameters
unorderedvector containing an unordered list of keypoints. The single keypoint is specified as pair which associates a string, containing the keypoint's tag, and a vector, containing the x,y,z coordinates.

◆ update() [2/3]

virtual void assistive_rehab::Skeleton::update ( const std::vector< yarp::sig::Vector > &  ordered)
virtualinherited

Update skeleton from ordered list.

Parameters
orderedvector containing the ordered list of keypoints. The single keypoint is specified as vector containing the x,y,z coordinates.

◆ update() [3/3]

virtual void assistive_rehab::Skeleton::update ( const yarp::os::Property &  prop)
virtualinherited

Update skeleton from properties.

Parameters
propa Property object containing skeleton information.

Available properties are:

  • type: string containing skeleton's type ("assistive_rehab::SkeletonStd").
  • tag: string containing skeleton's tag.
  • transformation: 4 x 4 skeleton's roto-translation matrix.
  • coronal: vector containing skeleton's coronal plane.
  • sagittal: vector containing skeleton's sagittal plane.
  • transverse: vector containing skeleton's transverse plane.
  • skeleton: list containing keypoints with the following subproperties:
    • tag: string containing keypoint's tag.
    • status: string containing keypoint's status (updated or stale).
    • position: vector containing keypoint's camera coordinates x,y,z.
    • pixel: vector containing keypoint's image coordinates u,v.
    • child: list containing keypoint's child, specified as position, status, tag.

◆ update_planes()

bool SkeletonStd::update_planes ( )
overridevirtual

Update skeleton planes.

Returns
true/false on success/failure (failure occurs if not all planes are updated).

Implements assistive_rehab::Skeleton.

Definition at line 767 of file skeleton.cpp.

768 {
769  int cnt=0;
770  if (tag2key[KeyPointTag::shoulder_left]->isUpdated() &&
771  tag2key[KeyPointTag::shoulder_right]->isUpdated())
772  {
773  sagittal=tag2key[KeyPointTag::shoulder_left]->getPoint()-
774  tag2key[KeyPointTag::shoulder_right]->getPoint();
775  double n=norm(sagittal);
776  if (n>0.0)
777  sagittal/=n;
778  cnt++;
779  }
780 
781  if (tag2key[KeyPointTag::shoulder_center]->isUpdated() &&
782  tag2key[KeyPointTag::hip_center]->isUpdated())
783  {
784  transverse=tag2key[KeyPointTag::shoulder_center]->getPoint()-
785  tag2key[KeyPointTag::hip_center]->getPoint();
786  double n=norm(transverse);
787  if (n>0.0)
788  transverse/=n;
789  cnt++;
790  }
791 
792  coronal=cross(sagittal,transverse);
793  return (cnt>=2);
794 }

References assistive_rehab::Skeleton::coronal, assistive_rehab::Skeleton::sagittal, assistive_rehab::Skeleton::tag2key, and assistive_rehab::Skeleton::transverse.

◆ update_withpixels() [1/2]

virtual void assistive_rehab::Skeleton::update_withpixels ( const std::vector< std::pair< std::string, std::pair< yarp::sig::Vector, yarp::sig::Vector >>> &  unordered)
virtualinherited

Update skeleton from unordered list.

Parameters
unorderedvector containing an unordered list of keypoints. The single keypoint is specified as pair that associates a string containing the keypoint's tag to a pair of vectors contianing x,y,z and u,v coordinates.

◆ update_withpixels() [2/2]

virtual void assistive_rehab::Skeleton::update_withpixels ( const std::vector< std::pair< yarp::sig::Vector, yarp::sig::Vector >> &  ordered)
virtualinherited

Update skeleton from ordered list.

Parameters
orderedvector containing the ordered list of keypoints. The single keypoint is specified as a pair of a vector containing the x,y,z camera coordinates and a vector containing the u,v image coordinates.

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